Community
cancel
Showing results for 
Search instead for 
Did you mean: 
nbkjbo
Beginner
181 Views

about session::SyncOperation, A trick?

Jump to solution
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
181 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
181 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
181 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
182 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