您的位置:首页 > 运维架构 > Linux

基于嵌入式Linux的视频采集系统11----系统运行与测试

2012-04-12 22:03 661 查看
本文来自:
http://blog.chinaunix.net/uid-23093301-id-86400.html
本课题基于嵌入式Linux实现的嵌入式视频采集程序名称为app_cap,相应的PC端实现的视频实时显示程序为app_mpeg。S3C2440开发板上的LCD分辨率为320*240。本课题设定嵌入式端的IP为192.168.1.6,相应的PC端IP设定为192.168.1.180。

S3C2440开发板及摄像头截图如图所示:



嵌入式端视频采集程序运行与测试

● 测试USB摄像头驱动程序

嵌入式端,启动嵌入式Linux操作系统,将USB摄像头接入S3C2440上,通过dmesg命令得到如下信息:

#dmesg

usb 1-1: new full speed USB device using s3c2410-ohci and address 2

usb 1-1: New USB device found, idVendor=0ac8, idProduct=3313

usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0

usb 1-1: Product: Topspeed USB 2.0 Camera.

usb 1-1: Manufacturer: Topspeed Corp.

usb 1-1: configuration #1 chosen from 1 choice

上面的信息种可以清晰的看到USB摄像头的品牌Topspeed USB 2.0 Camera,说明UVC驱动程序已经正确识别了USB摄像头设备。Linux操作系统生成了设备文件/dev/vidoe0,也充分说明了设备驱动程序已经正确工作。

● 测试MiniGUI的视频显示

进入嵌入式Linux,运行视频采集程序app_cap,S3C2440的LCD上成功显示了视频图像。其运行时截图如图所示:



● RTP服务测试

嵌入式端视频采集程序app_cap的总体运行信息如图所示:



当有PC端开始通过RTP协议与嵌入端进行通信时,嵌入式端会将PC端加入到RTP组播列表中,PC端便可以接收嵌入式端以RTP打包的视频数据。当PC端第一次与嵌入式端进行通信时,嵌入式端打印如下信息:

Adding destination 192.168.1.180:5000

当PC端视频显示程序关闭时,嵌入式端会将PC端从RTP组播列表中删除。嵌入式端会打印如下信息:

Deleting destination 192.168.1.180:5000

5.2 PC端视频监控程序运行与测试

确保嵌入式视频采集程序已经工作,将S3C2440与PC网络互通,运行PC端监控程序app_mpeg

#./app_mpeg

视频图像通过SDL窗口显示出来,视频流畅清晰,且非常稳定。

PC端实时视频显示截图如所示:



连续使其运行5分钟,关闭视频显示窗口,目录下生成俩个视频文件target.avi和target.mp4。target.avi为未经压缩的原始视频流数据,target.mp4为压缩编码保存的视频文件,经比较,MP4文件小于原始数据的1/3,并且利用暴风影音播放此MP4文件,视频质量几乎是无任何损失。其文件大小比较如下:

[root@localhost make_mpeg]# ls -lh target.avi target.mp4

-rw-r--r-- 1 root root 36M 06-13 11:51 target.avi

-rw-r--r-- 1 root root 10M 06-13 11:51 target.mp4

利用播放器回放两个视频文件,二者拥有相同的视频质量。其运行时截图如图所示:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: