预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

流媒体技术在视频监控中的应用摘要:基于流媒体技术的视频监控可以利用网络来传输音视频数据极大地促进和扩展视频监控的发展和应用范围。该流媒体系统是基于ARM9处理器内核和嵌入式Linux操作系统介绍了系统基本组成单元及其实现的功能对Linux的网络通信协议和使用的流媒体协议做了必要的阐述。经过试验论证获得了良好的效果。该流媒体系统既小巧、又功能强大且易于移植。经理论和实践证明在利用网络实现视频监控的应用中该设计具有较高的应用价值。关键词:流媒体;线程;嵌入式Linux;视频监控中图分类号:TP393文献标识码:A引言视频监控是光电行业的一个重要领域随着通信技术和多媒体技术的发展嵌入式视频监控摄像系统得到了广泛的应用人们对视频监控的要求和质量也越来越高。因此视频监控摄像系统呈现出数字化、网络化两个主要特点。尤其近年来流媒体技术的发展更加促进了实时视频摄像的发展。嵌入式技术是先进的计算机技术、超大规模集成电路、软件技术和各个行业相关应用相结合的产物。嵌入式系统是以应用为中心软硬件可剪裁能适应应用系统对功能、可靠性、成本、体积、功耗等综合性要求较高的专用计算机系统。嵌入式系统是相对于通用计算机系统而提出的。嵌入式系统也是一种软硬件混合系统。嵌入式操作系统采用Linux操作系统Linux系统源码开放内核功能强大多任务易于裁剪通信功能完善具有良好的开发工具和环境。基于嵌入式流媒体系统体积小、价格便宜、功耗低尤其是实时性效果好所以得到了广泛的应用[1-3]。1系统硬件结构图1所示为流媒体服务器系统硬件设计平台ARM选用海思公司的HI3511HI3511是基于ARM926EJ内核的32位RISC的处理器具有标准32位ARM指令集和16位THUMB指令集。HI3511集成了丰富的外围部件主要有外部总线接口EBI、USB2.0接口、以太网10/100MMAC接口用来仿真和烧写程序用的J-TAG接口、以及音视频输入输出接口等接口。其硬件结构见图1。HI3511片内还集成了及协同视频硬件加速引擎。使得HI3511成为高性能通信媒体处理器具有高集成、可编程、支持H.264和MJPEG-4等多协议广泛应用于实时视频通信领域其中H264MainProfile算法极大地提高了视频质量并且能够提供灵活的场编码或帧编码视频处理单元还支持双码流编码处理器足以满足视频监控的相关要求。流媒体技术是把连续得到媒体信息经过压缩后放到网络服务器上这样客户就可使实现边下载边观看而不需要将整个媒体文件全部下载完毕所以流媒体技术非常适合现场事件可以随机访问和快进或后退观看内容[6]。流媒体实时传输方式分实时流式传输和顺寻流式传输两种。实时流式传输可以保证媒体信号与网络连接相匹配使媒体信息可以被实时看到而且实时传输允许对媒体进行更多的控制要比HTTP服务器复杂。顺寻流式传输是顺序下载但客户只能观看已下载的部分顺序流式传输可以使用HTTP服务器比实时流式传输要简单。3流媒体系统软件设计因为系统的关键就是流媒体服务器所以这里也主要介绍与服务器有关的RTSP模块、RTP模块和用户界面的线程实现这里首先介绍一下Linux的网络通信过程[7]。3.1Linux的网络通信Linux中网络通信是通过Socket套接字来实现它是一种特殊的文件描述符由于Linux的设备无关性可以看做普通的文件描述符来操作通过向描述符读写来实现网络通信。Socket使用的是C/S模式常见的Socket有流式Socket、数据报Socket和原始Socket三种类型。套接字编程采用C/S模式即由客户端向服务器进程发出请求服务器进程执行被请求任务并将响应结果返回给客户端。套接字函数包括:Socket()、Bind()、Listen()、Accept()、Send()、Recv()、Close()等。基本流程见图3。其基本过程是Socket()函数创建一个用于通信的套接字并分配一个绑定端口号Listen()函数是套接字成为一个监听套接字调用Accept()来启用套接字此后程序就可以等待客户端的连接并处理其请求。客户端也建立一个Socket返回描述符。配置端口号和IP地址向服务器发送连接请求并接受服务器发回的确认连接信息。通信结束后关闭双方的Socket。3.2流媒体协议介绍3.2.1实时流协议(real-timestreammingprotocolRTSP)RTSP定义了一对多程序如何有效通过IP网络控制多媒体数据。RTSP是应用层协议有很大的灵活性可以用在多种操作系统上