TI中文支持网
TI专业的中文技术问题搜集分享网站

dm8168 decode problem

when i use dm8168 to decode rtp stream, it does not work well. sometimes it will display green screen.

i am sure that deocode id and swms id is correct.

anybody get this problem?

bin li2:

the flow is like this:

1.put video frame data to decode , using Vdec_putBitstreamBuffer, and the buffer alloc and read ,i am sure is right.

2.call Vdis_setMosaicParams to set the layout mode by myself, only display decode frames.

3.change layoutmode ,only display the capture data

4. do step 2

somtimes we got problem here, green screen will appear

i dont know why.i need your help . thank you!

Chris Meng:

回复 bin li2:

你好,

1。请确认是否会rtsp传输的特定码流有关?如果和特定码流有关,可以例如DVR RDK里面的解码显示例子复现。如果能复现,请提供相关码流。

2. 如果无关,能否写一个抓rtsp流的程序,能够捕获出问题时候的码流,再离线解码,看问题是否能复现

bin li2:

回复 Chris Meng:

和码流没有关系的,因为我后来规避了一下这个码流相关性,我只送入固定的一帧黑屏的数据,带spspps(是H264的)。

问题同样会出现。

另外打印ti_vdec.c内部的一些参数,channel等信息,绿屏和正常的打印都是一致的。

所以我确认和码流无关,要么是我解码的link设置有问题,要么是本身的bug?多跑几次就这样了?

 

我做的工作实际就是一个简单的终端,和对端进行对呼。呼几次,就会出现绿屏,且无法恢复。只能重启机器。

 

bin li2:

回复 bin li2:

相当于反复的去打开解码器,关闭解码器。并且在打开解码器的时候,显示解码器的图像。

Chris Meng:

回复 bin li2:

你好,

1. 离线方式能复现问题么?也就是你自己做一个机制本地解码显示。

2.能否评估一下是否需要不停的打开/关闭解码器?在未收到解码数据的时候,link是可以被hold住,而显示是显示最新的一帧数据的。显示的内容,你也是可以修改的。

bin li2:

回复 Chris Meng:

离线方式还没有去尝试,因为和现有的流程不是完全一致。不过最后如果没有办法,只能去尝试了。

打开解码器的时候,显示还是显示的本地画面,而不是解码器的画面,直到解码器收到key frame并且正常解码之后,才会更改显示内容,改为显示解码器的内容。

再请教个题外话:解码器没有解码数据的时候,link被hold住,这个时候怎么修改显示内容啊,不会是修改成显示其他的link吧?。

bin li2:

回复 bin li2:

最新测试效果

我解码器打开之后不关闭,其他操作和上述一样

不会出现绿屏。

可能是关闭解码器再打开,是不是频繁了有问题?还是时序上有控制?需要delay什么的?

赞(0)
未经允许不得转载:TI中文支持网 » dm8168 decode problem
分享到: 更多 (0)