使用dvr4.00或者dvr4.01的解码库,若GOP包含B帧,解码库是否支持?若支持,有哪些地方需要注意?
目前我解码出来的视频,有抖动现象,怀疑是由于存在B帧导致。
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.
使用dvr4.00或者dvr4.01的解码库,若GOP包含B帧,解码库是否支持?若支持,有哪些地方需要注意?
目前我解码出来的视频,有抖动现象,怀疑是由于存在B帧导致。
Long Yun,
4.01可以支持的,但是如果B fram的码流的参考帧个数不同,可能需要调整下面的参数。
displayDelay = Max display delay for the channel to be set for decoder
numBufPerCh = Number of decoder output buffer for the channel
Chris Meng,
应该是displayDelay和dpbBufSizeInFrames这两个参数吧。我修改了这两个,mpeg2的解码抖动已经好了,但是h264的解码还是存在问题。不同的值我都试过了。请问还有别的需要注意的地方吗?
ternence hsu ,
你好。有问题的视频文件,不是dm8168编码出来的,dm8168编码出来的重新解码是正常的。
yun long1 说:Chris Meng,
应该是displayDelay和dpbBufSizeInFrames这两个参数吧。我修改了这两个,mpeg2的解码抖动已经好了,但是h264的解码还是存在问题。不同的值我都试过了。请问还有别的需要注意的地方吗?
请问你解码的h264码流的参考帧有几个,你是如何修改代码的?
Long Yu,
你能否上传一个你测试的h264码流么? 我可以尝试一下。
我这里修改相关参数,参考帧为16的码流都可以正常解码(基于DVR RDK4.01)。
Chris Meng
视频有40多M, 超过附件的限制大小了。我上传到百度云了,链接如下,你可以下载帮忙试下吗? 感谢。
链接:http://pan.baidu.com/s/1o7R6q3w 密码:073s
见附件,我分成了三个视频。下载完成后,需要把".123"后缀去掉,再解压。
另外,rdk4.00版本,也可以支持h264 B帧解码吧?
Long Yun,
我这里解码的时候,一直打印下面的错误,看起来是你提供的码流没有正确提供pps/pps的头信息,你能否确认一下?你哪里解码没有下面的错误么?
outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x1421
Chris Meng ,
你是使用ffmpeg去读取视频帧的吗?若是,读取视频帧时,前面4个字节是帧的长度信息,需要替换成nalu 头,把长度替换成“00 00 00 01”。如没做这操作,是会有那错误提示的。
Long Yun,
我使用的是dvr rdk里面自带的dec+display的例子。你能否修改一下码流?最开始的帧也是错误的,你能否去掉前面的几帧数据?