Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

DECODE and VPP interaction



I am a bit puzzled by interactions between DECODE and VIDEO parts in the Intel Media SDK. I manage to decode properly a video stream, and I would like to add deinterlacing support.

To decode, I call these functions :





I try progressively to configure vpp in and out params. Just copying mfx.FrameInfo structure into vpp.In and vpp.Out in video params makes MFXVideoDECODE_Query fail (MFX_ERR_UNSUPPORTED). Am I supposed to handle VPP initializations after intializing DECODE structures ? Is there a specific order ? Why does the decoder look in vpp parts of the parameters structure ?


0 Kudos
1 Reply
You'll need to setup some of the output fields, sometimes the input fields as well. At a minimum, the PicStruct of the output frame should be progressive, this triggers deinterlacing if the input is marked as interlaced. You can set the output frame rate to double that of the source in order to receive all the frames from the deinterlacer (useful for high quality playback, less for transcoding). Note that soft telecine is not supported and you'll have to do it yourself. I've implemented VPP into my own open source project (Intel QuickSync Decoder). You can use the source code for reference on how to use VPP and you'll might want to look at the decode code as well. You can download or view sources from Both FFDShow and LAV filters use this decoder internally so you can use them as well.
0 Kudos