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.
3056 Discussions

mfxBitstream* accessed after call return from DecodeFrameAsync?

celli4
New Contributor I
307 Views

As background, the signature for decode frame async is:   mfxStatus MFXVideoDECODE_DecodeFrameAsync(mfxSession session,mfxBitstream *bs, mfxFrameSurface1 *surface_work, mfxFrameSurface1**surface_out, mfxSyncPoint *syncp);

When calling MFXVideoDECODE_DecodeFrameAsync(...), I am curious if the SDK accesses the mfxBitstream data structure post return from the call?

So, my question is:

1. Does the IMSDK access 'mfxBitstream *bs' excusivley before return from MFXVideoDECODE_DecodeFrameAsync() ?

or

2. Does the IMSDK access 'mfxBitstream *bs' after  return from MFXVideoDECODE_DecodeFrameAsync() ?

I suppose I could assume this  parameters is accessed asyncronously up until the Sync operation, but it would be nice to know if that buffer space can be reused immediately after the return from the call.

Thanks,

Cameron

0 Kudos
1 Reply
Petter_L_Intel
Employee
307 Views
Hi Cameron, For decode you can safely reuse/change the bitstream container after calling DecodeFrameAsync (before calling SyncOperation). MediaSDK stores the data read from the bit stream container internally before DecodeFrameAsync returns. Regards, Petter
0 Kudos
Reply