当前位置: 代码迷 >> 多媒体/流媒体开发 >> live555的性能不给力解决思路
  详细解决方案

live555的性能不给力解决思路

热度:6622   发布时间:2013-02-26 00:00:00.0
live555的性能不给力
我在开发板上移植了live555MediaServer,可以实现正常的传输。但似乎性能很不高,当进行16路D1的数据传输时,系统从硬盘上读取视频文件,CPU的idle时间几乎为0,以下是我用top命令看到的系统性能:
Live555MediaServer 进程占用CPU-- 50%

用户态时间:  17%
内核态时间:  23%
idle时间: 0%
io时间 : 50%

如此,还没运行其他应用,CPU就已经被全部占满了,显然无法工作。

各位帮帮忙,告诉我有没有改进的方法(代码最好),或者其他的替代live555的方案(除了gstreamer)
------解决方案--------------------------------------------------------
提高硬盘IO的效率,你不妨做个测试,只是硬盘读取38M数据看看占用多少cpu。

如果确认是IO的问题,不妨尝试采用dio来提高读取的效率。

------解决方案--------------------------------------------------------
可参考 基于Linux的Socket网络编程的性能优化。 我以前就对live555的接收模块做了优化,CPU占用小30%。