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

网络不好情况下的H.264编码问题

Dear all,

        最近对我们做的摄像机进行测试,网络情况不好的情况下使用live555丢包还是比较严重,请问下大家有没有什么好的解决方法。

        因为rtsp这块没有丢包重传的机制,而rtcp的反馈间隔也不宜过短,所以也无法及时的调整,感觉想要进一步提升网络传输性能这块没有太大的提升空间。我想着是从编解码部分着手做一下,最终还是想通过I帧间隔来搞定这件事情,但是发现不管I帧间隔调大还是调小好像都不是好的解决方法,太长的话如果I帧丢失了数据,那么画面会花相当长的时间,如果I帧间隔太短的话,画面又感觉很卡。我也抓了一些其他厂家的包看了看,发现效果好的那些,I帧间隔都是不固定的,比如画面中如果没有什么移动物体,那么I帧间隔就60,如果运动物体比较多,那么I真间隔就变短,甚至出现相邻帧都是I帧,不过这个时候I帧的size比较小,请问下大家有没有知道这是怎么调整的?

Eason Wang:

你可以调整码率看看。  芯片指的是哪一颗

Philip Feng:

回复 Eason Wang:

8127和36x都有这个问题,使用私有协议没问题,我现在在修改live555代码,想将rtcp的反馈中的丢包率计算出来,然后根据丢包率来丢掉一定数量的P帧

Philip Feng:

回复 Eason Wang:

您好,我现在已经修改了live555的代码,用rtcp计算出了丢包率,然后我在网络不好的情况下试图丢掉一些P帧,但是我发现丢掉P帧也会引起花屏,看网上资料说H.264的NAL头部有个NRI,这个标志位的值越小表示越不重要,可以丢弃,但是我但因发现所有的P帧的NRI的值都是3,也就是说都很重要,请问我需要如何调整下编码参数,可以让H.264的编码器给我产生一些可以丢弃的P帧而对显示不会有太大的影响?

kooking:

回复 Philip Feng:

live555里的bufferSize设置大一些会不会有改善,不过会加大延迟

Philip Feng:

回复 kooking:

我修改过,应该对TCP协议的传输会好点,但是UDP应该没有什么作用,毕竟UDP发送的时候是不需要缓冲的

赞(0)
未经允许不得转载:TI中文支持网 » 网络不好情况下的H.264编码问题
分享到: 更多 (0)