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.

H.264 Decoder problem with SD 576i(726 x 288) streams

Hi ,

I am facing problem while decoding SD H.264 Main profile with 50fps, I get return value as 4 from the function

"Vdec2_process" and the bufferes send to display detected as zero, it means the initial priming is not done.

But it works for the streams having SD h.264 MP with 25fps.

So could some plz tell me that the HP h264 deocder will decode SD MP h.264 with 50 fps frame rate?

Environment:

H.264 HP Decoder version v01.10.03 on DM6467T  with dvsdk version dvsdk_3_10_00_16.

Regards,

Sreeni.

 

  • Hi Sreeni,

    Usually frame rate has been not taken into acount with the decoders for functional, hence it should not create any problem for mp stream at 50fps. Please check is there any time constraint in your system or whether the stream is valid. You can also share the stream to verify at our end.

    Regards,

    Mahantesh

  • 1581.receiver.txt

    Hi Mahantesh,

    Thaks for u r reply PFA h.264 file.

    This is Sreeni from Patni, you might have remembered me (we had discussions with Patni on codecs).

    When I tried the file on Mplayer and with ffmpeg it plays but when I tried with our decoder it gives return value as 4 and demo application exits.

    Could you please let me know if it works at your end.

    Regards,

    Sreeni.

     

     

     

     

  •  

    Hi Mahantesh,

    Did you get the .264 file which i had shared yesterday?  Plz change the extn to .264.

    Plz let me know if you face any problem while getting the file.

    Regards,

    Sreeni.

     

  • Hi Sreeni,

    The stream you have shared is valid or errorneous one, because the VLC player is unable to play the stream. Also can you please mention the complete build version of the codec lib you are using, this will be present in codec release notes.

    Regards,

    Mahantesh

     

  • Hi Mahantesh,

    The stream can be played on Mplayer and also with ffplay but not with vlc player(not sure why?).

    PFA single program ts file which has h.264 video and aac audio streams8473.France.txt.

    The complete build version from release notes :

    H264 Decoder Version 01.10.04   Build ID: 01.10.04.00  and it  has been validated on the following ,

     

     

    DM6467 EVM

    Code Composer Studio version 3.3.49

    Code Generation Tool version 6.0.8

    Codec Engine (CE) version 2.10.01 (or newer)

    XDAIS verr newer)

    -DSP/BIOS TM version 5.31 and  HDVICP Library version 1.01.017.

    Regards,

    Sreeni.

     

  • Hi Mahantesh,

    PFA h.264 file which is extracted from ffmpeg from TS and which plays with ffplay and mplayer.

    Please let me know if anything else you required from me.4846.france.txt

    Regards,

    Sreeni.

     

     

     

  • Hi Sreeni,

    I am able to run the stream you have shared first time on DVSDK using the same h264 decoder lib version "01.10.04.00". Its an erroneous stream, where slice data has been lost including start code of the NAL, hence the output is corrupted. But, still decoder is able to sync and conceal it and decoded the complete stream by returning appropriate error codes like 0x41 - indicates loss of slice data and some time 0x46 - indicates loss in bit stream that with MMCO picture management info. To check this codec extended error codes at your end you can verify content of the following variable,

    outArgs.viddecOutArgs.decodedBufs.extendedError 

    This behavior I have observed on both CCS and DVSDK/DVTB setup.

    In your set up, the DVSDK might return 4 based on the codec return value (-1 for error case) or codec extended error code (i.e 0x41 and 0x46).

    Can you please verify the above at your end as well. And also does the decoder stops decoding at your end, as it looks the stream is severely corrupted?

    Regards,

    Mahantesh

     

  • Hi  Mahantesh,

    I have verified the stream here and decoder returns 4 (-1 error case).

    When open the file in hex editor we can see NAL untis start code prefix  and sometimes I do observe that the decoder returns 0 and 3.

    8686.video_50fps.txtStill the decoder could not able to decode enough buffers to send to Display and running out of allocated buffers.

    Could you please verify the stream I am uploading and which is captured from tsif hardware pid filters and verified that no pkt drops.

    If possible could you plz try extracting video from TS fil which I had shared with you, so that you could get video stream without errors.

    Regards,

    Sreeni.

     

     

     

     

     

  • Hi Mahantesh,

    When the decoder returns 3 (Dmai_FIRSTFIELD) it means it processed only first field in this case we were not getting new out buffer for decoder but we were incrementing buf inex

    in TI demo application. with the change not to increment buf index when the decoder returns 3 and we can feed number of bufferes requiredfor decoder and it is working now.

    I want to know one thing that while priming data to decoder , we do get required number of buffers from decoder based on processed buffer and It is observed that the number of buffers required for every stream (ex :SD h.264 17 buffers , HD h.264 15 buffers and mpeg2) changes. Why the decoder required those many number of buffers to prepare 1 display buffer?

    Do we have any max count which any decoder required to prepare display buffer?

    Regards,

    Sreeni.

     

     

  • Thanks Sreeni for your updates,

    In H264, decoder can refer back up to 16 frames to decode current frame and this is depends upon the profile and max level it supports. Hence decoder can request those many number of buffers. Please refer codec user guide for more information on this (section: 3.2.3)

    Regards,

    Mahantesh