基于H.264的远程视频传输软件系统的开发
发布时间:2017-05-26 17:16
本文关键词:基于H.264的远程视频传输软件系统的开发,由笔耕文化传播整理发布。
【摘要】:如今的社会已经进入了一个信息化的社会,人们期望随时随地的,不受限制的进行信息交流,提高工作效率和经济意义。随着3G技术的日趋成熟,视频的远程监控最大可能地帮助和改善人们的生活质量。 3G视频监控系统,采用的是国内先进的3G无线数据通信,数字化图像采集、压缩、存储,智能手机图像监控和广域网络等先进技术,研发出来的一种“看得远—无线图像监控系统”。只要在有手机信号的地方,就可以随时随地通过安装在生产现场或随身携带的“无线图像监控系统终端”,将现场的实时图像通过手机无线通信网络传输到管理人员的办公电脑或手机上,通过这种方式,无论管理人员身处何地,都可随时随地通过手机或电脑上网查看生产现场的实时图像和声音,为安全生产实现“可控、在控、能控”提供了有力的保障。 无线移动视频监控系统是基于CDMA或TD-SWCDMA\3G移动通讯技术,应用在多生产现场的远程无线图像监控系统,尤其对自然环境和气候恶劣,现场有线网络布线困难的地区,可以根据现场情况和用户需求来实现远程无线实时监控。3G无线视频监控在很多场景中有着广泛的应用:例如有线网络无法到达或者有线网络价格过于昂贵的地方,比如:电力高压线路、高速公路、环境监测、森林防火、路灯、石油开采、石油输油管线、物流、运输船、防洪抢险等;人员无法接近的场所,比如:易燃易爆等危险场所、疾病传染区、其他微生物危险区等;相对不固定的被监控场所、临时布线会有成本浪费的地方,公安侦查临时布防、部队野战训练、临时活动场所、会展中心、临时建筑工地等。 远程无线视频监控系统总体上是由三个部分组成的,分别是视频采集编码终端,视频传输部分和监控中心。视频采集编码终端负责视频的采集、编码和RTP(实时传送协议)封包的工作。封包后的视频数据,再由CDMA2000无线传输模块发送出去,数据经中国电信CDMA2000公网传送,后端监控台通过接入Internet接收数据,然后对接收到的数据进行解码显示,从而达到了实时监控的目的。远程无线视频监控系统利用CDMA2000移动通信网络完成监控终端数据的无线传输,免去了监控终端现场组网的初期建设费用以及日后的网络维护费用,而后台监控中心用Internet网络接入而不用相对昂贵的3G无线网络更是节省了大量成本。 软件系统需要承载的最主要的部分是视频通信业务。考虑到实际运用的需求,,设计软件系统最终需要拥有较为良好美观的登录界面以及菜单界面;并且实现视频通信的功能,包括实现点对点,点对多点的视频监控功能。视频监控系统主要由四个部分组成,分别是:视频摄像节点、网络代理模块、视频采录与控制模块以及客户观看终端。视频监控系统中的拍摄节点多数为高精度的摄像机,其任务是负责原始视频的完整有效的采集;视频采集控制模块包括采集卡和相应的控制软件。具体流程如下:首先,将采集卡安装在主板上,主板多为嵌入式的,然后将摄像机先前采集到的原始视频数据进行压缩和解压缩,直至将其转换成H.264格式的码字和码流,返回调制给系统进行处理。在嵌入式Linux的系统上,有控制软件的运行,控制软件通过采集卡之中的驱动程序,得到压缩了之后的H.264格式的码字和码流。控制软件同时监控网络代理模块之间的连接,数据的传输以及响应,命令的传输以及响应。比如:网络代理接压缩后的码流和码字,并且对某个摄像机发出命令;在此之中网络管理模块的主要任务是:负责视频观看终端的网络连通的管理,并且控制命令的同时实现视频的传输。视频服务器系统由四部分构成:1.视频信息的采录部分;2.视频信息编解码部分;3.视频数据传输部分;4.视频信息显示部分。其中,视频信息采集模块和视频编码模块位于整个监控系统的前端,主要由Android底层系统库以及USB摄像头实现;监控系统中的中继是视频数据传输模块,其负责监控终端的视频数据与监控前段的交替工作。监控终端主要包括LCD显示模块还有电源模块,其中LCD显示模块可以实时地查看视频,电源模块能够为系统提供充足的能量供应。在实际编程实现中,视频通信包括H.264视频的采样,H.264视频的编码,视频数据的发送,视频数据的接收以及视频数据的解码和视频数据的播放;视频监控数据的接收与视频监控数据解码的播放。另外,还有登录过程等等许多的子过程。平台实现的过程其实较为复杂。因此,一个良好的总体设计是软件系统最终实现的夯实基础和坚实保证。 H.264视频传输主要运用了如下技术:ConfigSWIPandPort的作用是:设置对方的IP地址和通话端口;另一个ConfigSWIPandPort的作用是:设置本机的IP地址和数据收发端口; OpenVideoSocketSend()的作用是:打开套接口的视频发送;CloseVideoSocketSend()的作用是:关闭套接口的视频发送;OpenVideoSocketReceive()的作用是:打开视频套接口接收;CloseVideoSocketReceive()的作用是:关闭视频套接口的接收; OpenVideoSend()的作用是:打开视频发送;OpenVideoReceive()的作用是:打开视频接收;SystemIntiVideo()的作用是:系统设备初始化开启视频。在SystemIntiVideo()函数里开启了四个线程“Thread”。其中,VideoSampleThread的作用是:驱动摄像头,进行视频图像采样;VideoPlayThread的作用是:打开射频播放线程,意在接受到视频之后,将视频在电脑上播放;Depackand264DecodeThread的作用是:H.264的解码;H.264EncodeAndPackageThread的作用是:H.264的编码。
【关键词】:TCP/IP Socket套接字 H.264 MFC 多线程
【学位授予单位】:吉林大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TN919.81
【目录】:
- 摘要4-7
- Abstract7-12
- 第1章 绪论12-16
- 1.1 课题的背景和意义12
- 1.2 课题现状12-13
- 1.3 开发环境介绍13-14
- 1.3.1 VS2008 介绍13
- 1.3.2 MFC 界面编程13-14
- 1.4 课题主要工作及论文内容安排14-16
- 第2章 TCP/IP 网络中数据的传输16-22
- 2.1 TCP/IP 协议16-19
- 2.2 Socket 套接字技术19-20
- 2.2.1 Socket 技术简介19-20
- 2.2.2 Socket 套接字的类型20
- 2.3 通信数据传输流程20-21
- 2.4 本章小结21-22
- 第3章 H.264 视频压缩编码22-35
- 3.1 H.264 的档次和级别22-24
- 3.2 H.264 的核心技术24
- 3.3 H.264 解码器24-27
- 3.4 H.264 的整数 DCT 变换及 DSP 实现27-28
- 3.5 4X4 整数 DCT 变换过程28-30
- 3.6 熵编码30-33
- 3.7 帧内预测技术33-34
- 3.8 帧间预测技术34
- 3.9 码流的结构34
- 3.10 本章小结34-35
- 第4章 功能模块的编程实现35-51
- 4.1 软件系统总体设计35-36
- 4.2 主要技术与流程36-44
- 4.2.1 视频采集模块36-37
- 4.2.2 视频发送接收模块37-42
- 4.2.3 视频编解码模块42
- 4.2.4 视频播放模块42-44
- 4.3 视频登录界面44-50
- 4.4 本章小结50-51
- 结论51-53
- 参考文献53-55
- 作者简介55-56
- 致谢56
【参考文献】
中国期刊全文数据库 前6条
1 袁晓雷;魏江;张鹏;;嵌入式平台H.264软件解码器的优化[J];电视技术;2010年05期
2 倪伟,郭宝龙,陈龙潭,冯宗哲;H.264变换编码和量化算法的研究[J];计算机工程与应用;2004年03期
3 谢翠兰;郑艺玲;;基于SAD和SATD的H.264快速帧内预测算法[J];计算机工程;2008年10期
4 李丽萍;基于VC++的WinSock网络通信程序设计[J];广西右江民族师专学报;2003年06期
5 余晓晖;;移动互联网[J];数据通信;2010年02期
6 范宝德,刘惊雷,王培进;基于内存设备环境的图形快速显示技术[J];计算机系统应用;2002年10期
本文关键词:基于H.264的远程视频传输软件系统的开发,由笔耕文化传播整理发布。
本文编号:397567
本文链接:https://www.wllwen.com/guanlilunwen/huizhanguanlilunwen/397567.html
教材专著