- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The picture below is an I-frame (333 frame) of H264 stream from our IP camera. Its h264 stream size is 141KB. The h264 stream sizes of its previous and later I-frames are 87KB and 147KB, respectively. Their results from DecodeFrameAsynclook good. But it looks like broken. Several other I-frames (frame 163, 223, 333, 423, and 593 in a short video which only includes 635 frames) have the similar situation. Does anyone know what reasons are and how to fix the problem? DoesDecodeFrameAsync return some warning to this case?
Thanks
Jiuxiang
Link Copied
6 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Juixiang,
Let me first confirm that I understand your setup correctly. Is the IP camera delivering an H.264 stream that you are trying to decode using Media SDK? Is your code based on DirectShow filters or the console samples?
If possible it would be great if you could share the input H.264 stream so that we can examine it on our side.
DecodeFrameAsync does give access to "Corrupted" flag for decoded frames, to indicate potential frame corruptions, but unfortunately this feature does not work appropriately. This will be addressed in future revisions of Intel HW and drivers.
Regards,
Let me first confirm that I understand your setup correctly. Is the IP camera delivering an H.264 stream that you are trying to decode using Media SDK? Is your code based on DirectShow filters or the console samples?
If possible it would be great if you could share the input H.264 stream so that we can examine it on our side.
DecodeFrameAsync does give access to "Corrupted" flag for decoded frames, to indicate potential frame corruptions, but unfortunately this feature does not work appropriately. This will be addressed in future revisions of Intel HW and drivers.
Regards,
Petter
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Petter,
I am using Media SDKDecodeFrameAsync to decodean H264 stream from the IP camera, NOT DirectShow filters. I can share the input H264 stream, could you tell me a way to send you the stream?
Thanks a lot.
Jiuxiang
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Jiuxiang,
You can share the stream using this forum via the "Add Files" button when replying to a post. Alternatively, you can use the Intel "blind" FTP as described here:http://software.intel.com/en-us/forums/showpost.php?p=176987
Regards,
You can share the stream using this forum via the "Add Files" button when replying to a post. Alternatively, you can use the Intel "blind" FTP as described here:http://software.intel.com/en-us/forums/showpost.php?p=176987
Regards,
Petter
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
h264stream10.h264
Hi Petter,
The above is the H264 stream file which broken I-Frame are listed in my post above. Could you let me know DecodeFrameAsync can detect the flag on the frames?
Thanks.
Jiuxiang
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Juixiang,
Thanks for providing the stream. I observe many encoding errors in the provided stream such as the I frame corruptions you referred to but also other corruptions. The stream error are not only seen when trying to decode the stream using Media SDK but also with all other SW decoders I tried.
I would suggest working with the camera developer to determine how to resolve the issues with the H.264 encoder embedded in the camera.
Regarding detection of frame corruption using Media SDK. Please refer to the manual and search for the Corrupted parameter in the mfxFrameData structure. This parameter will provide (if detected) some frame corruption details for broken frames. But please be aware that there are some known Media SDK/driver issues with frame corruption detection, this may not always work.
Regards,
Thanks for providing the stream. I observe many encoding errors in the provided stream such as the I frame corruptions you referred to but also other corruptions. The stream error are not only seen when trying to decode the stream using Media SDK but also with all other SW decoders I tried.
I would suggest working with the camera developer to determine how to resolve the issues with the H.264 encoder embedded in the camera.
Regarding detection of frame corruption using Media SDK. Please refer to the manual and search for the Corrupted parameter in the mfxFrameData structure. This parameter will provide (if detected) some frame corruption details for broken frames. But please be aware that there are some known Media SDK/driver issues with frame corruption detection, this may not always work.
Regards,
Petter
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Petter,
Thank you for your testing. I will work with camera developer to improve this encoder issue. But some corruptions are due to data losing (e.g. network), we can not always assume that data is correct. I want to set up a warning if decoder finds a corruption happens.
Your reply is really helpful. I will work mfxFrameData first
Thank you again
Jiuxiang
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page