当前位置: 技术问答>linux和unix
多路播放器的问题,问题解决了补加100分,请各位大哥指教
来源: 互联网 发布时间:2016-07-06
本文导语: 小弟目前再搞一个ARM上的播放器,要求是同时处理多路视频数据,数据来源摄像头,或者服务器,不可以修改服务器代码; 目前的情况是如果先将数据存在文件中再多路播放效果很好,但是最后要的是实时数据,而...
小弟目前再搞一个ARM上的播放器,要求是同时处理多路视频数据,数据来源摄像头,或者服务器,不可以修改服务器代码;
目前的情况是如果先将数据存在文件中再多路播放效果很好,但是最后要的是实时数据,而现在要播放实时数据会有花屏;
请各位指点,小弟可以贴一些需要分析的代码
目前的情况是如果先将数据存在文件中再多路播放效果很好,但是最后要的是实时数据,而现在要播放实时数据会有花屏;
请各位指点,小弟可以贴一些需要分析的代码
|
这个基本上就可以认为是数据传送方面的问题了。
视频头一般不会造成这方面的困扰。
但网络这样太正常了。
视频头一般不会造成这方面的困扰。
但网络这样太正常了。
|
先分析一些应用场景,在此基础上简单测试一下,看看哪些场景会造成花屏,这样应该有助于问题定位
|
实时不要求太严格的话可以先用缓冲区缓冲一下数据,但是如果你的网速小于视频播放的码流速度,最后可能还会卡会花屏的。或者看能不能控制一下播放的速度。
|
可以用个环形链表,得到的视频数据放在尾部,播放的时候从头取数据,当得到视频数据后,先分配一个struct a指针,然后根据视频数据的长度给该buffer动态分配一块内存,从链表头去数据后,链表头指针指向第二个,然后原来的头指针中的buffer内存释放掉。每个buffer的内存区域不是连续的,这个不用去管它。
|
用网络传输还要求实时。。。
明显加缓冲嘛
明显加缓冲嘛