Media (Intel® oneAPI 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 sign-in experience has changed to support enhanced security controls. If you sign in, click here for more information.
3001 Discussions

mfxBitstream* accessed after call return from DecodeFrameAsync?

celli4
New Contributor I
175 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
175 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
Reply