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
Announcements
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.

Cannot drain last MVC frame from decoder

SDeut
Beginner
403 Views

I'm trying to drain the last pair of stereo frames from the MVC decoder. According to the documentation I do:

At the end of the bitstream, the application continuously calls the MFXVideoDECODE_DecodeFrameAsync function with a NULL bitstream pointer to drain any remaining frames cached within the Intel Media SDK decoder, until the function returns MFX_ERR_MORE_DATA.

This works fine for a number of buffered AVC/MVC frame pairs, but not for the last pair. I get view 0, and afterwards error MFX_ERR_MODE_DATA which seems to tell me that no more frames are buffered and so view 1 is missing.

Input data are valid AVC/MVC frames, the two last frames (view 0/1) are each terminated by end of sequence 00 00 01 0A.

Is this a bug or am I missing something?

0 Kudos
3 Replies
Markus_Pingel
New Contributor I
403 Views
I had exactly the same problem. I am not sure if it is a bug, but you get both views of the last frame if you remove the end of sequence from the input stream.
0 Kudos
Eric_S_Intel
Employee
403 Views
Sorry for the delay folks. We are a bit short staffed this week. I've added this to the queue to be investigated. Thanks for the workaround Markus. I'll let you guys know if we determine it to be a bug or not. -Eric
0 Kudos
SDeut
Beginner
403 Views
Many thanks to Mr. Pingel, this seems to be the solution. Maybe this is indeed no bug. My source is a SONY Cam file which features a transport stream with separate AVC and MVC sub streams. So it seems to be correct that each stream is seperately terminated by "end of sequence". If I combine those streams to a single elementary stream it seems also correct that the decoder stops after the first EOS and misses the last MVC frame. So the conclusion may be that manual removing of the first EOS in AVC is the only solution here..
0 Kudos
Reply