- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear all,
I have a working Media SDK decoder, I can successfully decode frames with very good performance and latency. Until now I have used MFX_IMPL_HARDWARE_ANY for session initialization, which worked as expected. Now I had the idea to also test the MFX_IMPL_SOFTWARE option to see the performance of the software implementation. But when using the MFX_IMPL_SOFTWARE option, after a successful call to DecodeHeader, all calls to DecodeFrameAsync return MFX_ERR_MORE_SURFACE. I am using AsyncDepth = 1 and IOPattern = MFX_IOPATTERN_OUT_SYSTEM_MEMORY for my mfxVideoParam structure. The obvious difference I saw between hardware and software implementation was that after a call to QueryIOSurf, the hardware implementation suggested to allocate 1 frame, the software implementation suggested 18 (through mfxFrameAllocRequest.NumFrameSuggested). In my code I use a minimalistic way of allocating the surfaces, exactly as demonstrated for example here https://software.intel.com/sites/default/files/managed/60/21/simple_decode.cpp
What can be the cause for the software implementation to break my decoder? Should additional information be needed, I will be glad to provide more details.
Thank you very much.
Alex
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Alex - I tried to reproduce your issue (of SW impl breaking the decoder), but was not able to. Can you send more details on your system, error, input etc., - use this forum to see what details we need. https://software.intel.com/en-us/forums/topic/531083
Note: You seem to be working with an older version of the tutorials. There are updated tutorials here for use http://software.intel.com/sites/default/files/mediasdk-tutorials-0.0.3.zip
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Alex - I tried to reproduce your issue (of SW impl breaking the decoder), but was not able to. Can you send more details on your system, error, input etc., - use this forum to see what details we need. https://software.intel.com/en-us/forums/topic/531083
Note: You seem to be working with an older version of the tutorials. There are updated tutorials here for use http://software.intel.com/sites/default/files/mediasdk-tutorials-0.0.3.zip
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
thanks for the updated tutorials. After reviewing some of them, I figured out that I was not handling MFX_ERR_MORE_SURFACE properly in my code. Since the "hardware implementation" did not require more than 1 frame surface (mfxFrameAllocRequest.NumFrameSuggested) the error was not obvious to me and the decoder was working fine. Now I've fixed the code so that the software implementation works as well.
Sorry for wasting your time here.
Alex
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Alex - Glad you fixed the issue. No time waste at all - good to know about the limitations or gaps in our products.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page