第十部分 -- 开发板测试
前几天已经分别将nginx和ffmpeg移植到了开发板上面,但是还是没有进行任何的测试并不知道移植后的效果如何。
今天分别做了两个测试,证明移植的结果是可用的。
1、测试ffmpeg
对于nginx的测试在移植完成后就已经进行过了,当然就是简单的能够显示nginx欢迎界面而已,但是对我来讲,nginx能用就行,并没有对他进行深一步的测试。
但是对于ffmpeg不测试下总感觉不放心,虽然移植时运行显示可以,但是还不知道它能不能工作,所以首先用它进行了视频格式转换的测试。
测试很简单,将sd卡中的一个.264文件转换成mp4格式:
[email protected]:/sdcard/Movies # cd /data/misc/ffmpeg/ [email protected]:/data/misc/ffmpeg # ll -rwxrwxrwx root root 9145536 2015-03-10 10:48 ffmpeg-android <pre name="code" class="plain">[email protected]:/data/misc/ffmpeg #./ffmpeg-android -i /sdcard/Movies/test.264 /sdcard/Movies/output.mp4
<pre name="code" class="plain">[email protected]:/data/misc/ffmpeg # cd /sdcard/Movies/ [email protected]:/sdcard/Movies # ll -rw-rw-r-- root sdcard_rw 4473874 2015-03-12 23:51 output.mp4 -rw-rw-r-- root sdcard_rw 6193066 2015-01-16 14:22 test.264
结果成功将将sd卡中test.264文件转换成output.mp4格式。
我还尝试过将.264文件还原成.yuv格式,结果震惊了:
上述的test.264大小为6.2M,转换成.yuv格式之后大小为1.6G,着实吃了一惊。这压缩的太厉害了。
2、测试流媒体服务器工作情况
最关键的地方到了,成败在此一举阿。
(1)开启nginx
[email protected]:/data/misc/nginx-rtmp/sbin #./nginx -p /data/misc/nginx-rtmp -c conf/nginx.conf
(2)ffmpeg推流到nginx
[email protected]:/data/misc/ffmpeg #./ffmpeg-android -i rtsp://admin:[email protected] -vcodec copy -acodec copy -s 640x480 -f flv rtmp://192.168.1.88:1935/hls/test2
结果:
程序成功运行,但是存在问题如上图所示,暂时还不知道怎么回事并没有对监控视频获取产生影响,在chrom浏览器中输入地址
http://192.168.1.88:80/hls/test2.m3u8
可以成功显示出监控视频。
我的摄像机和开发板是用网线直接连接起来的,开发板搭载android系统,使用上面的chrom浏览器播放监控视频:
经过一段时间的测试:延时比在pc机上面测试时要多一点,延时大约在35s左右。这可能会与开发板性能有关系。
3、总结
到今天为止,终于在arm板上搭建成功了支持hls的流媒体服务器,总结一句话:
~~~~移植真蛋疼~~~~
时间: 2024-10-16 13:12:26