首页 理论教育 嵌入式视频服务器的实例

嵌入式视频服务器的实例

时间:2023-10-31 理论教育 版权反馈
【摘要】:图15-4 嵌入式视频服务器流程图视频采集部分主要采用的是Linux中的视频子系统Video4Linux。Video4Linux是Linux内核里支持视频设备的一组API。Video4Linux向虚拟文件系统注册视频设备文件,应用程序通过操纵视频设备文件来实现对视频设备的访问。通过驱动程序本身就可以实现对Z-Star301摄像头采集到的图像进行硬件压缩,直接输出JPEG的二进制位流,从而减轻视频服务器的压力。本文使用的是开源的针对嵌入式设计的网络视频服务器Servfox,可以从这里http://mxhaard.free.fr/spca50x/embedded/Servfox获取。1)首先解压缩servfox-R1_1_3.tar.gz。

嵌入式视频服务器的实例

嵌入式视频服务器主要完成了对视频的采集、压缩编码和传输。嵌入式视频服务器流程图如图15-4所示。

978-7-111-33316-6-Chapter15-8.jpg

图15-4 嵌入式视频服务器流程图

视频采集部分主要采用的是Linux中的视频子系统Video4Linux。Video4Linux是Linux内核里支持视频设备的一组API。视频应用程序通过标准的系统调用就可操纵各种不同的视频捕获设备。Video4Linux向虚拟文件系统注册视频设备文件,应用程序通过操纵视频设备文件来实现对视频设备的访问。主要有两种方法:内存映射和直接从设备读取。

本文使用的是Gspca/Spca5xx摄像头驱动程序。通过驱动程序本身就可以实现对Z-Star301摄像头采集到的图像进行硬件压缩,直接输出JPEG的二进制位流,从而减轻视频服务器的压力

无线网络视频传输部分采用LinuxSocket和多线程技术。通过无线网卡将采集到的一帧帧的JPEG二进制位流发送到远程客户端。

本文使用的是开源的针对嵌入式设计的网络视频服务器Servfox,可以从这里http://mxhaard.free.fr/spca50x/embedded/Servfox获取。

1)首先解压缩servfox-R1_1_3.tar.gz。(www.xing528.com)

2)指定Makefile文件。

978-7-111-33316-6-Chapter15-9.jpg

3)执行make进行编译,然后通过arm-linux-strip去掉servfox调试信息以减少程序体积。

978-7-111-33316-6-Chapter15-10.jpg

4)编写servfox的启动脚本。

978-7-111-33316-6-Chapter15-11.jpg

978-7-111-33316-6-Chapter15-12.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈