Media (Intel® oneAPI Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools from Intel. This includes Intel® oneAPI Video Processing Library and Intel® Media SDK.
Announcements
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!

about session::SyncOperation, A trick?

nbkjbo
Beginner
230 Views
hi, everybody, I found that if i successfully decode a h264 frame, and i DO NOT use session.SyncOperation(...), intel media sdk works well, and the performance is more fast.

SO, when can i do not use session.SyncOperation, the situration is ?

Another question is how can I get media sdk 2.0 gold release?
0 Kudos
1 Solution
Eric_S_Intel
Employee
230 Views

I wouldnt consider that safe. The function MFXVideoDecode_DecodeFrameAync is asynchronous. Thus, its up to the application to not do anything with a frame that's being decoded until its complete and free from the decoder. Some may be held and used for reference fields thats what sync is for to guarantee you are not thrashing the frames before they are complete. Use it, the performance is nil in your usage model.

-Eric

View solution in original post

3 Replies
Eric_S_Intel
Employee
230 Views

Hi nbkjbo,

Theres a good explanation about how you can take advantage of the asynchronous execution mechanism of the Media SDK to achieve maximum speed in Appendix C: Performance optimization. In short, multiple frames are sent into the pipeline and sync operations are only performed at the end of Encode. Check it out, let us know if you have further questions.

The Media SDK 2.0 Gold should be posted to the web shortly. We are working with the web team to format the pages, get the links working, etc.

Eric

nbkjbo
Beginner
230 Views

Hi Eric,
thank you for replying.

If I only use intel sdk for decoding, NO vpp, NO encoding,and I do not use Sync operation, is it safe? I read the Appendix C, and I think it is safe, it that right?


Eric_S_Intel
Employee
231 Views

I wouldnt consider that safe. The function MFXVideoDecode_DecodeFrameAync is asynchronous. Thus, its up to the application to not do anything with a frame that's being decoded until its complete and free from the decoder. Some may be held and used for reference fields thats what sync is for to guarantee you are not thrashing the frames before they are complete. Use it, the performance is nil in your usage model.

-Eric

View solution in original post

Reply