Hi I have a problem,
When I using Intel GPU decode H264 stream it always return fail, But it is OK when using FFmpeg decode.
I have updated two streams, one it can decode sucessfully by FFmpeg and Intel GPU, the other one it can only decode sucessfully on FFmpeg.
My computer system is "Intel Core i5-4590 CPU 8G ram , windows 8.1"
Intel_GPU_Decode_Fail_FFmpeg_Decode_OK.264 => Intel GPU decode Fail, FFmpeg decode OK
Intel_GPU_Decode_OK_FFmpeg_Decode_OK.264 => Intel GPU decode OK, FFmpeg decode OK
thank you for your help,
Yes, this is not the file issue.
This is what we knew:
DecodeFrameAsync() returns MFX_WRN_VIDEO_PARAM_CHANGED 6 times (after each call it consumes part of loaded bitstream) and does not return syncPoint.
After 7th call it returns MFX_ERR_MORE_DATA (because stream data is finished, there's only 3 bytes left). Sample tries to load data from file, but there's no more data.
So this is more likely the decoder issue when parsing the data, a bug was submitted. I will update the status when there is a result.
The file has the following issues:
The value of [SliceHeader :: idr_pic_id = 65592] exeeds maximum allowed by spec.
ITU-T H.264 <7.4.3 Slice header semantics> says:
The value of idr_pic_id shall be in the range of 0 to 65535, inclusive.
Decoder waits incoming IDR to start decoding but all of these IDRs are affected by the same error and skipped as invalid
Does this solved your problem?