This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Decoder fails with non starting I-frame

Guru 20755 points

Hello,

I would please like to ask the following question, it is issue I had for a long time now, and fixed it with a workaround.

If I record file without the starting it with I-frame, than trying to decode-display the file result in errors and eventually nothing is displayed:

[m3video] 58864:DECLINK::links_m3video/iva_dec/decLink_h264.c:[378]::INTERNAL ERROR:-1

I "fixed" it by waiting to the first I-frame, and only then starting to fill into the file (so that file always start with I-frame).

This workaround is problematic because the decode-display should handle also stream which does not begin with I-frame, especially if it comes from network.

I would like to ask how I can handle this issue properly ?

This is a link for the test file with non I-frame at the beginning:

Thank you!

Ran

  • Hi Ran,

    TI Decoder certainly handles the stream starting with P/B frames. Decoder will ignores frames till it gets IDR frames. Once It receives IDR frame(IDR will have imp params like Video resolution, ref frame info etc) decoder will start decoding video frames properly. IDR frame is must to have proper decoding.

    In your attached stream decoder will consume(or ignores) 0x29DB6 bytes before it gives proper output. 

    Thanks,

    Veeranna

  • Hi,

    I've noticed that if the decoding starts with first I-frame, then it is also OK. 

    Does is make sense (as far as I know, I-frame does not imply IDR) ?

    Thank you for the time,

    Ran

  • Hi Ran,
    In some cases decoder can give proper output if it has I frame, but not all cases. to handle all types of stream decoding IDR is must.

    Thanks,
    Veeranna