新闻中心

EEPW首页 > 模拟技术 > 设计应用 > 3G视频监控系统中关键技术的研究与实现

3G视频监控系统中关键技术的研究与实现

作者:时间:2011-12-21来源:网络收藏

摘要:描述了基于3G标准的无线视频的研究与实现方案,主要包括基于H.264的双码流模块、多线程、RTP打包等,它不仅具有传统稳定性高、实时性好、免布线等优点,而且用户可以随时随地通过3G网络进行视频监控和视频图像录制。测试结果表明,各模块都达到预期指标,3G无线环境下可进行实时视频浏览,视频质量与有线局域网相比相差不大。
关键词:视频监控;3G网络;双码流;RTP

0 引言
经过多年的发展,视频监控技术已由早期模拟设备为主的第一代视频发展到目前的数字视频监控,人们已不再满足于传统的监控系统。随着3G技术难点的突破以及3G网络的发展,使3G无线视频监控的实现成为了可能。在此背景下提出了一个基于3G标准的无线视频监控系统的设计方案并实现了基本功能,本文着重介绍该系统的实现方法,包括双码流模块、多线程通信、RTP封装及改进,最后讨论了无线网络视频传输健壮性的问题以及解决方案。

1 双码流技术的实现
目前,困扰中国网络视频监控市场发展的主要因素就是缺乏良好的网络基础环境,而双码流正是针对这一问题提出的解决方案,它是对安防行业的一次提速。
双码流,即在视频编码端中同时存在两种码流。双码流是通过在编码端采用两种格式或两个不同的分辨率分别进行编码来实现的。该监控系统基于DM365硬件开发平台,由于DM365开发板属于DAVINCI系列,必须深入研究DM365应用层调用具体算法的结构,如图1所示。由图中可知,应用层调用的接口是DMAI(DaVinci Multimedia Application Interface),它是DSP提供给ARM端应用程序的调用接口。DMAI是各种模块集合,应用程序可以从中选择模块来使用。此外DMAI提供了源码,便于修改使用,以满足应用要求。DMAI里面有各种接口实现方式,修改DMAI接口具体实现使其满足双码流。

本文引用地址:http://www.eepw.com.cn/article/187074.htm

a.jpg


首先将DM365中两个编码通道全部使能,保证了开发板对双码流的支持,然后,在应用程序中采集两路的数据,分别调用DMAI中的编码函数Vencl_create,进而对两路数据进行两次编码,这样就得到两路不同分辨率大小的编码数据流。本文实现了一路D1,一路是CIF大小(用于传输)的码流,并且都达到20帧的速率,可以保证视频流质量。它在现有网络瓶颈下兼顾了图像质量和传输实时性,可以突破网络瓶颈,根据网络带宽灵活选择码流格式,达到本地高清存储,同时保证一定远程监控质量的低码流网络传输。

2 多线程技术在3G无线视频监控中的应用
由于视频图像传输需要做到实时性和良好的传输质量,而系统需求的功能又比较复杂,包括视频数据采集、视频编码、RTP打包发送、视频数据流保存等工作,而它们的流程又不是简单的顺序执行,所以这里引入了多线程。
本论文提出的方案中包括Capture,Video和Writer三个主要线程,分别完成原始数据YUV数据的采集、H.264数据压缩、视频数据的写文件,而在视频采集线程中加入了异常检测模块(该模块利用原始数据进行检测异常),在视频数据压缩线程中采用了双码流技术,并将CIF分辨率的压缩数据进行RTP协议封装,在Writer线程中实现了以时间为文件名的保存方式并将其保存到SD卡中。在此基础上实现设防、拆防、异常检测、客户端与监控端通信,又引入了两个线程,分别完成等待电话、客户端与监控端的SOCKET通信完成命令传输功能。整个线程结构与通信方式如图2所示。

b.jpg


采用了pipe管道进行线程间通信,且设置为阻塞模式,整个流程即Capture线程得到数据,将地址送给Video线程,Video线程经过H.264视频压缩把DI分辨率的地址送给Writer,而CIF分辨率根据发送标记来确定是否发送,Writer线程完成写文件操作后,将buffer指针返回,完成一帧采集、编码、发送、保存等工作,如此反复循环。而其他线程通信则采用全局变量来进行传输标记位,而无需使用FIFO,降低了实现复杂度。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭