Mpeg2 capture

Mpeg2 capture

Hi All,
I am attempting to encode MPEG-2 video in sw and a have a problem.
I'm trying to build live mpeg2 capture with Blackmagik Decklink Studio 2,but I'm getting an error(can't connect pin).
Is it possible to build and what is the right way?I have Intel Media SDK version 2.0 (Gold) installed on my system.
I use Graphedit to build graph like this:

Decklink Video Capture -> Intel Media SDK MPEG-2 Encoder -> File Writer
Decklink Audio Capture ->

My Platform: Windows 7 (both 32 and 64-bit)
MB: GigaByte EP43-S3L
Processor: Intel Core 2 Quad CPU Q9550 @ 2.83GHz

Thanks in advance

6 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.


The Media SDK sample filters have only been validated with a limited set of filters. It is possible that the Decklink filter you are using is not compatible with the Media SDK filter.

Assuming that the Decklink filter outputs frame in raw format my initial guess would be that the issue you are facing has to do with incompatible color space types (e.g. RGB, YV12 etc.). Media SDK 2.0 samples only supports NV12 color space as filter input. You should be able to verify where the filter fails by building debug version of the filter and stepping through the code.

Media SDK 3.0(beta) samples filters have been extended to also support RGB and YUY2 (color formats supported by Media SDK VPP component).

Note that the the filters are samples and you are free to adapt and add functionality in any way you like.

Another thing I noted from the pipeline you describe is that you connect the Media SDK MPEG2 filter directly to a file writer. Is this the intent? Not sure that works... you may want to explore using the muxer filters that are supplied as binaries with the Media SDK package.


Thank you so much for your answer and for your help.
I took your advice and installed Intel Media SDK 3, and now I can create this graph. However,I amunable to see the video orto put itinto play, it shows only the first frame and that's all.
The same happens ifI connect HW capture with Blackmagik Decklink Studio 2, it shows only the first frame and that's all, the video doesn't play.
Where is my mistake and how can I make it work properly? Thank you in advance!


I'm sorry to say, but the use case you describe has not been validated by us so it's hard to say where it breaks down. The DirectShow sample filters are by no means full featured so it is likely your pipeline has encountered one or several filter limitations.

If you can provide me with your sample avi clip I can try to explore this a bit further to see if there is a simple solution.

Can you share some more details on the Decklink Video Capture filter (blackmagic?). What is the raw output format (MJPEG, YUY2...)? Configuration options?


Thank you for trying to help me out.

You can seeDecklink Video Capture configuration on theIntel2.jpg picture and thereyou can see what I am trying to acchieve and how to connect Decklinkto Intel Media SDK. I use PAL 10 bit 4:2:2 YUV video format.
On the other picture DeckLink+Video+Capture+Filter.jpgare all theproperties forthis filter(copied from Decklink SDK documentation).
I have a video captured from this graph, but it's 30 MB large. How can I send it to you, if you wouldlike to see the problem?
I appreciate all your help and hope to find a solution to this problem.

Thank you in advance,
Kindest regards,


Hi Dejan,

Unfortunately I do not have much feedback with regards to this issue since we do not test or have access to the Decklink solution.

However, I suspect the issue may be connected to the way color conversion is done. For this to work the AVI Decompressor filter must color convert the frames from the 10bit YUV format to either RGB32, YUY2 or NV12. Not sure how this is done or if that is supported by AVI Decompressor.

There may also be an issue related to buffer allocations. The Media SDK filter typically require the upstream filters to allocate sufficient number of surface buffers, the process for this may fail if the upstream filter does not follow the allocation request from the Media SDK filter.

In any case, to get to the bottom of your issue I suggest debugging the Media SDK filter code to better understand what is happening and to find potential operational issues. If you find something that you think is clearly wrong, or a suggestion for improvement, with the sample filters please let us know. Otherwise feel free to extend the filter functionality to your needs.


Leave a Comment

Please sign in to add a comment. Not a member? Join today