论文部分内容阅读
近年来,电子、通信、计算机等技术的发展推动了网络的普及和嵌入式技术的发展,对人们的学习、工作、生活产生了广泛而深远的影响。随着网络通信技术、多媒体技术和嵌入式技术的提高,基于嵌入式的视频传输系统在安防、交通、工业控制等领域得到了广泛的应用。传统的视频传输系统大多依赖于有线网络,系统结构复杂,成本高且灵活性差。由于无线通信技术的发展,无线网络传输速率的不断提高,无线视频传输系统打破了传统有线视频传输系统的局限。基于Linux平台的无线视频传输系统以应用为中心,集无线网络通信技术、嵌入式技术以及多媒体技术等多种技术于一身,相较于传统有线视频传输系统,突出组网方便、维护简单、实用性强、价格相对较低等优势,具有较高的理论研究意义和实际应用价值,受到了越来越多人们的关注。本文设计并实现了一个基于Linux平台的无线视频传输系统。该系统以ARM9微处理器为核心硬件,以高效、开源的嵌入式Linux操作系统为软件平台,以USB无线网卡为视频传输模块。论文首先介绍了视频传输系统的现状和今后的发展趋势,结合本文的应用需求设计系统总体方案,接着介绍了系统的硬件结构和软件结构,并完成系统软硬件资源的选型。在硬件平台上进行软件平台的搭建,建立了交叉开发环境,完成了嵌入式Linux操作系统的移植、USB无线网卡以及基于V4L2的CMOS摄像头驱动的移植。本文重点研究了系统功能的实现,详细分析了视频传输系统服务器端的应用程序的功能并对其进行实现。服务器端主要包括视频数据的采集、压缩和网络传输,其中视频采集模块采用Linux内核提供的V4L2接口,利用mmap()内存映射方式对视频数据进行读取,提高了视频数据的采集效率;视频数据压缩通过调用Linux系统中提供的libjpeg库函数write_jpeg转换成JPEG格式;视频图像的网络传输采用TCP/IP协议进行实时传输。本系统同时采用了C/S和B/S两种模式完成了视频显示,采用服务器端移植嵌入式Web服务器Boa和视频服务器MJPG-streamer的方法来实现。最后,对设计的系统进行了测试。从测试效果来看,系统能够实现视频数据的采集、压缩、实时无线网络传输和视频的显示,运行稳定可靠,满足系统的设计要求及目标。