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.

decode bitstreams problem



Dear all:


When I decode the bitstream, the image that we can see on display is not correct , but decoder does not return error s!!!

thanks a lots

best regards   

  • Are you using DVR RDK ? If yes share the bitstream and image showing the issue

  • Dear Badri

    thanks for replying! We use DVR RDK3.0  and image source we dumped:

    https://www.dropbox.com/s/1tnf6mjg89x8ne9/encoded2.264?m

  • What is the issue you are seeing. I ran with DVR RDK 4.0 using the decode display demo and don't see any issue.

    The following frames are reported to be in error:

    [m3video] 1527173:DECLINK::links_m3video/iva_dec/decLink_h264.c:[380]::INTERNAL ERROR:-1
     [m3video] ALGPROCESS FAILED:STATUS
     [m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
     [m3video] Sequence called number 275
     [m3video] 1527208:DECLINK::links_m3video/iva_dec/decLink_h264.c:[380]::INTERNAL ERROR:-1
     [m3video] ALGPROCESS FAILED:STATUS
     [m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
     [m3video] Sequence called number 277
     [m3video] 1534606:DECLINK::links_m3video/iva_dec/decLink_h264.c:[380]::INTERNAL ERROR:-1
     [m3video] ALGPROCESS FAILED:STATUS
     [m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
     [m3video] Sequence called number 500
     [m3video] 1568306:DECLINK::links_m3video/iva_dec/decLink_h264.c:[380]::INTERNAL ERROR:-1
     [m3video] ALGPROCESS FAILED:STATUS
     [m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
     [m3video] Sequence called number 1519
     [m3video] 1579706:DECLINK::links_m3video/iva_dec/decLink_h264.c:[380]::INTERNAL ERROR:-1
     [m3video] ALGPROCESS FAILED:STATUS
     [m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
     [m3video] Sequence called number 1865

     

    Since the sequence large continuous sequence of P frames the erros start accumulating and you start seeing artifacts. The artifacts get cleared at the next I-frame. This is the same behavior seen with PC player like Elecard stream analyzer also.

  • Dear Badri:

    I am usng decoder codec version "REL.500.V.H264AVC.D.HP.IVAHD.02.00.08.00"

    what is the version for decoder codec in DVR RDK 4.0 ???

    Thanks a lots for your replying

    best regards

  • DVR RDK also uses H264 decoder version REL.500.V.H264AVC.D.HP.IVAHD.02.00.08.00. As I mentioned this issue is with the stream and not with the decoder. You will see the same behavior in any h264 decoder

  • Dear Badri:

    I ran my usecase "DEC->SWMS->DISPLAY" on three version DVR RDK 3.0 , DVR RDK3.5 , DVR RDK4.0 

    and it is not correct at first and after 22 minutes  about on display but decoder does not return error!!!!  

    our bitstreams is below: https://www.dropbox.com/s/hcnk5d4w4la77zk/DecIn0000.264?m 

    The problem  or issue will be  obvious after decoding about 22 minutes!!  the image is not correct but decoder does not return error after about 22 minutes

    thanks a lots

     
    best regars  

  • Dear Badri,

       I agree it is a bitstream problem and I expect your codec can return errors. As the bitsrteam in https://www.dropbox.com/s/hcnk5d4w4la77zk/DecIn0000.264?m ,

       We hope your decoder could return error around 22minutes.

    Sincerely,

    Frank

     

  • When you say decoder does not report error do you mean application event callback is not happening or decode error is not printed on console ?

  • Hi, Badri 

            I mean that the decoder is using  codes below:      

            processList.processParams[processList.numEntries].handle = handle;
            processList.processParams[processList.numEntries].inBufs = inputBufDesc;
            processList.processParams[processList.numEntries].outBufs = outputBufDesc;
            processList.processParams[processList.numEntries].inArgs = (IVIDDEC3_InArgs *)inArgs;
            processList.processParams[processList.numEntries].outArgs =  (IVIDDEC3_OutArgs *)outArgs;
                                                           
            multiError = handle->fxns->processMulti(&processList);

            then, outArgs->viddec3OutArgs.extendedError  doesn't report any error when the bitstream is not correct.

    thanks a lots

    best regards

  • Dear Badri,

         Decode error is not printed on console. We already put the stream on the https://www.dropbox.com/s/hcnk5d4w4la77zk/DecIn0000.264?m .

    Could you reproduce this problem on your site? And lets us know when could solve it.

     

    Thanks a lot,

    Frank

  • The stream is only 20 mins in duration. If you are seeing issue after 22 mins it means the file has wrapped around and this is a demo app issue not a decoder issue.If extendedError for a processCall is not populated it means no errors were encountered during the decode of the frame.