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.

dm8168 dvr_rdk4.0 解码H264 报错

dm8168 dvr_rdk4.0 解码H264 报错, 数据流是网络摄像头出来的rtsp,用的是ffmpeg读取的数据, 附件有两段直接保存在本地的码流,一个是正常解码的,一个是解码报错的(现象是花屏),看了一下错误码应该说是数据的错误,不知道跟rtsp流有没有关系,报错信息如下:

[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 1 Error: 0x2000a00
[m3video] Sequence called number 123
[m3video] 609168:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 1 Error: 0x2000a00
[m3video] Sequence called number 135
[m3video] 609412:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 1 Error: 0x2000a00
[m3video] Sequence called number 136
[m3video] 611177:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
[m3video] Sequence called number 195
[m3video] 611287:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0xa10
[m3video] Sequence called number 196
[m3video] 611576:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 1 Error: 0x2000a00
[m3video] Sequence called number 189
[m3video] 612249:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
[m3video] Sequence called number 223
[m3video] 613177:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
[m3video] Sequence called number 251
[m3video] 613179:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 1 Error: 0x2000a00
[m3video] Sequence called number 237
[m3video] 613682:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
[m3video] Sequence called number 252
[m3video] 614174:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
[m3video] Sequence called number 267
[m3video] 614188:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 1 Error: 0x2000a00
[m3video] Sequence called number 238
[m3video] 614227:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
[m3video] Sequence called number 268
[m3video] 615175:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1
[m3video] ALGPROCESS FAILED:STATUS
[m3video] outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x2000a00
[m3video] Sequence called number 297
[m3video] 615196:DECLINK::links_m3video/iva_dec/decLink_h264.c:[379]::INTERNAL ERROR:-1

video.rar
  • 你好;

             这个报错信息是一种在打印的吗? 没有停过吗?

  • ternence hsu

    是的 ,一直在打印

  • 你好;

            H264 的数据 是一帧一帧拆开后 送入解码器的吗?

  • ternence hsu

    我是用的ffmpeg去读的rtsp流,用的是av_read_frame(m_format_ctx, &packet)读取的packet.data / packet.size ,然后送入解码的 。

    刚才观察了一下,一直打印错误信息过一段时间vpss.txt 就没有打印任何信息了,好像是处理器挂掉了。

  •  av_read_frame 正常获取的数据就1帧视频了,你再确定一下,送入解码器的这帧视频的前面6字节打印一下,确认一下。是不是0x00 0x00 0x00 0x01 0x67 0x4D ?

  • ternence hsu 

    不是的, 下面是程序运行开始我打印出来的前8个字节, 第一帧总是有两个连续起始码,这个跟正常的码流好像不一样的,后面观察了一下基本都是0x00 0x00 0x01 0x41和0x00 0x00 0x01 0x67开始的

    pData:0x00 0x00 0x00 0x01 0x00 0x00 0x00 0x01
    pData:0x00 0x00 0x01 0x41 0x9b 0x11 0x27 0xc8
    pData:0x00 0x00 0x01 0x41 0x9b 0x21 0x27 0x85
    pData:0x00 0x00 0x01 0x41 0x9b 0x31 0x5f 0xc5
    pData:0x00 0x00 0x01 0x41 0x9b 0x41 0x5f 0xb9
    pData:0x00 0x00 0x01 0x41 0x9b 0x51 0x5f 0xc3
    pData:0x00 0x00 0x01 0x41 0x9b 0x61 0x5f 0x76
    pData:0x00 0x00 0x01 0x41 0x9b 0x71 0x27 0xc6
    pData:0x00 0x00 0x01 0x41 0x9b 0x81 0x27 0xc6
    pData:0x00 0x00 0x01 0x41 0x9b 0x91 0x27 0xb2
    pData:0x00 0x00 0x01 0x41 0x9b 0xa1 0x27 0xcf
    pData:0x00 0x00 0x01 0x41 0x9b 0xb1 0x27 0xc7
    pData:0x00 0x00 0x01 0x41 0x9b 0xc1 0x5f 0xc3
    pData:0x00 0x00 0x01 0x41 0x9b 0xd1 0x37 0xf6
    pData:0x00 0x00 0x01 0x67 0x64 0x00 0x28 0xac
    pData:0x00 0x00 0x01 0x41 0x9a 0x11 0xff 0xfe
    pData:0x00 0x00 0x01 0x41 0x9a 0x21 0x37 0xd0
    pData:0x00 0x00 0x01 0x41 0x9a 0x31 0x37 0xd0
    pData:0x00 0x00 0x01 0x41 0x9a 0x41 0x27 0xfe
    pData:0x00 0x00 0x01 0x41 0x9a 0x51 0x37 0xfe
    pData:0x00 0x00 0x01 0x41 0x9a 0x61 0x37 0xd0
    pData:0x00 0x00 0x01 0x41 0x9a 0x71 0x11 0xc9
    pData:0x00 0x00 0x01 0x41 0x9a 0x81 0x11 0x95
    pData:0x00 0x00 0x01 0x41 0x9a 0x91 0x15 0x41
    pData:0x00 0x00 0x01 0x41 0x9a 0xa1 0x11 0x43
    pData:0x00 0x00 0x01 0x41 0x9a 0xb1 0x37 0x8d
    pData:0x00 0x00 0x01 0x41 0x9a 0xc1 0x37 0xd0
    pData:0x00 0x00 0x01 0x41 0x9a 0xd1 0x11 0x5c
    pData:0x00 0x00 0x01 0x41 0x9a 0xe1 0x11 0xd5
    pData:0x00 0x00 0x01 0x41 0x9a 0xf1 0x15 0x2e
    pData:0x00 0x00 0x01 0x41 0x9b 0x01 0x11 0x9e
    pData:0x00 0x00 0x01 0x41 0x9b 0x11 0x11 0x23
    pData:0x00 0x00 0x01 0x41 0x9b 0x21 0x11 0xd6
    pData:0x00 0x00 0x01 0x41 0x9b 0x31 0x11 0xb2
    pData:0x00 0x00 0x01 0x41 0x9b 0x41 0x11 0x9b
    pData:0x00 0x00 0x01 0x41 0x9b 0x51 0x11 0x95
    pData:0x00 0x00 0x01 0x41 0x9b 0x61 0x11 0xd5
    pData:0x00 0x00 0x01 0x41 0x9b 0x71 0x15 0xd7
    pData:0x00 0x00 0x01 0x41 0x9b 0x81 0x11 0x8f
    pData:0x00 0x00 0x01 0x41 0x9b 0x91 0x11 0x12
    pData:0x00 0x00 0x01 0x41 0x9b 0xa1 0x37 0xb6
    pData:0x00 0x00 0x01 0x41 0x9b 0xb1 0x11 0x6d
    pData:0x00 0x00 0x01 0x41 0x9b 0xc1 0x37 0xd0
    pData:0x00 0x00 0x01 0x41 0x9b 0xd1 0x37 0x49
    pData:0x00 0x00 0x01 0x67 0x64 0x00 0x28 0xac
    pData:0x00 0x00 0x01 0x41 0x9a 0x11 0x27 0x26
    pData:0x00 0x00 0x01 0x41 0x9a 0x21 0x5f 0x74
    pData:0x00 0x00 0x01 0x41 0x9a 0x31 0x27 0x5f
    pData:0x00 0x00 0x01 0x41 0x9a 0x41 0x27 0xb2
    pData:0x00 0x00 0x01 0x41 0x9a 0x51 0x37 0x2c
    pData:0x00 0x00 0x01 0x41 0x9a 0x61 0x27 0xbe
    pData:0x00 0x00 0x01 0x41 0x9a 0x71 0x37 0x83
    pData:0x00 0x00 0x01 0x41 0x9a 0x81 0x27 0x84
    pData:0x00 0x00 0x01 0x41 0x9a 0x91 0x27 0x46
    pData:0x00 0x00 0x01 0x41 0x9a 0xa1 0x27 0x8f
    pData:0x00 0x00 0x01 0x41 0x9a 0xb1 0x37 0x20
    pData:0x00 0x00 0x01 0x41 0x9a 0xc1 0x37 0xc2
    pData:0x00 0x00 0x01 0x41 0x9a 0xd1 0x27 0xc4
    pData:0x00 0x00 0x01 0x41 0x9a 0xe1 0x37 0x49
    pData:0x00 0x00 0x01 0x41 0x9a 0xf1 0x27 0xec
    pData:0x00 0x00 0x01 0x41 0x9b 0x01 0x27 0x26
    pData:0x00 0x00 0x01 0x41 0x9b 0x11 0x27 0xf6
    pData:0x00 0x00 0x01 0x41 0x9b 0x21 0x5f 0x74
    pData:0x00 0x00 0x01 0x41 0x9b 0x31 0x5f 0x76
    pData:0x00 0x00 0x01 0x41 0x9b 0x41 0x27 0xc9
    pData:0x00 0x00 0x01 0x41 0x9b 0x51 0x27 0x83
    pData:0x00 0x00 0x01 0x41 0x9b 0x61 0x27 0x83
    pData:0x00 0x00 0x01 0x41 0x9b 0x71 0x27 0x84
    pData:0x00 0x00 0x01 0x41 0x9b 0x81 0x5f 0x74
    pData:0x00 0x00 0x01 0x41 0x9b 0x91 0x5f 0xc5
    pData:0x00 0x00 0x01 0x41 0x9b 0xa1 0x5f 0xba
    pData:0x00 0x00 0x01 0x41 0x9b 0xb1 0xff 0xa6
    pData:0x00 0x00 0x01 0x41 0x9b 0xc1 0x27 0x08
    pData:0x00 0x00 0x01 0x41 0x9b 0xd1 0x5f 0x4e
    pData:0x00 0x00 0x01 0x67 0x64 0x00 0x28 0xac
    pData:0x00 0x00 0x01 0x41 0x9a 0x11 0xff 0xc6
    pData:0x00 0x00 0x01 0x41 0x9a 0x21 0xff 0x00
    pData:0x00 0x00 0x01 0x41 0x9a 0x31 0xff 0x51
    pData:0x00 0x00 0x01 0x41 0x9a 0x41 0xff 0x7b

  • 你解码的图像画面出来了吗,可以看到吗?

  • 画面有,可以看到,就是会有花屏

  • jarman zhou 说:

    画面有,可以看到,就是会有花屏

    我看你数据流的时候,发现你的视频数据有丢包,不知道你是用的什么网络环境,你试试码率低一点会不会好一点;

    另外解码测试,先测试本地视频的解码,这个有demo参考的。

  • ternence hsu

    解码应该是没有问题的,我尝试过本地文件,还有其他几款摄像头的rtsp流都是没有问题的。

    我用VLC取这个rtsp流画面是没有花屏的,VLC和rdk运行在同样的网络环境下的,不知道是不是这个编码出来的码流与其他摄像头的有什么不同的原因

  • 你试试用baseline profile 的视频流试一下

  • dec link 的那段代码可以贴出来看一下吗?

  • ternence hsu

    dec相关参数设置如下:

    decPrm.chCreateParams[ch].format = IVIDEO_H264HP;
    decPrm.chCreateParams[ch].profile = IH264VDEC_PROFILE_ANY;
    decPrm.chCreateParams[ch].targetMaxWidth = 1920; 
    decPrm.chCreateParams[ch].targetMaxHeight = 1080;
    decPrm.chCreateParams[ch].fieldMergeDecodeEnable = FALSE;
    decPrm.chCreateParams[ch].numBufPerCh = 6;
    decPrm.chCreateParams[ch].dpbBufSizeInFrames = IH264VDEC_DPB_NUMFRAMES_AUTO;
    decPrm.chCreateParams[ch].defaultDynamicParams.targetFrameRate = 30;
    decPrm.chCreateParams[ch].defaultDynamicParams.targetBitRate = bitrate;

  • ternence hsu 

    我试过了用baseline profile,将dec link参数修改为

    decPrm.chCreateParams[ch].profile  = IH264VDEC_PROFILE_BASELINE;仍会出现同样的错误