【网学提醒】:本文主要为网上学习者提供基于DirectShow的视频监控系统,希望对需要基于DirectShow的视频监控系统网友有所帮助,学习一下吧!
资料包括: 论文(58页21352字) 源码 图纸
说明:摘要:近年来,随着计算机网络,多媒体技术的快速发展,传统的视频监控系统正在向着网络视频监控系统的方向发展。
本文阐述了基于DirectShow视频监控系统的分析、设计与实现,重点讨论了以DirectShow技术来实现的,在C/S(Client/Server)模式下实时传输并播放视频的局域网视频监控系统。
本文从以下方面进行论述:
(1)简单介绍了视频监控技术发展的概况与目前的形势。
(2)就系统的开发环境和涉及的关键技术进行了探讨并提出了解决方案。
(3)详细阐述了系统的设计与实现。首先阐述了基于C/S模式的服务端、客户端的设计构架;通过讲述COM组件技术作为应用DirectShow视频技术开发应用程序的基础,最后引出DirectShow视频技术的工作原理和编程实现。
关键词:COM组件 DirectShow 多线程技术 TCP/UDP协议
Abstract:In recent years, with the fast development of computer network, the Multimedia, the tradition video surveillance system is gradually becoming network video surveillance system.
This paper describes the analysis, design and implementation of video surveillance system based on directshow, focusing on real-time transmission and play LAN video surveillance system in the C/S (Client/Server).
This paper discusses the following areas:
(1)It gives a briefing on the development of video surveillance technology and an overview of the current situation.
(2)It discusses the development environment and the key technology and proposed solutions.
(3)It elaborates on the design and implementation. Firstly, it discusses the design framework of server and client based on C/S. By describing COM theory as the basis of programming DirectShow application, it finally educes the principle and programming methods of DirectShow video technology.
Key words:COM; DirectShow; Multithread; TCP/UDP
1 绪论
1.1 视频监控系统的国内外现状
由于历史及观念上的原因,我国大陆的安防产业较发达国家晚二三十年。但是近年来,随着我国经济的快速发展、人民物质生活水平的提高和消费观念的改变,安防从过去提倡人防发展为以技防为主、人防为辅,并成为现代管理的重要手段。在2000年11月的安防产品展示会上,来自国内外的上百家厂商展出了各种产品和系统。据权威部门统计,1998年全国监控系统的市场总额为650亿元,近年来一直以每年15%至30%的速度快速增长,我国的监控行业正面临着良好的发展机遇。
目录:1 绪论1
1.1 视频监控系统的国内外现状1
1.2 本论文的研究背景与实际意义1
1.3 视频监控的发展历程2
1.4 视频监控系统的应用4
1.5 论文主要研究内容5
2 开发环境简介5
2.1 开发平台及工具的选择5
2.2 面向对象的编程思想6
2.3 多线程技术7
3 开发实现系统的技术7
3.1 WinSock编程机制7
3.1.1 基于TCP协议的WinSock编程8
3.1.2 基于UDP协议的WinSock编程10
3.2 COM成组件技术与DirectShow视频技术11
3.2.1 COM组件技术11
3.2.2 DirectShow视频技术14
4 系统构成与功能模块设计17
4.1 系统架构与功能设计17
4.1.1 服务端架构与功能设计18
4.1.2 客户端架构与功能设计19
4.2 网络传输架构19
4.3 系统通信模块设计原理20
4.3.1 控制信道设计原理20
4.3.2 数据信道设计原理21
5 系统终端软件设计与实现22
5.1 系统的类层次结构22
5.2 系统的实现原理26
5.3 服务端软件的设计与实现28
5.3.1 基于DirectShow视频采集模块设计与实现28
5.3.2 角色控制的实现32
5.3.3 服务端与客户端之间通讯模块的实现33
5.3.4 开发网络发送Filter35
5.3.5 开发网络接收Filter36
5.4 客户端软件的设计与实现36
6 系统实验测试与总结38
6.1 系统实验测试38
6.2 总结与展望45
7 结束语46
参 考 文 献47
英 文 摘 要48
致 谢49
仲恺农业工程学院毕业设计成绩评定表50
图 目 录
图1 DVR系统结构图3
图2 应用
程序和WinSock的关系图8
图3 TCP客户端与TCP服务端进行连接的步骤9
图4 数据报套接字应用
程序时序图11
图5 接口、对象和类厂的图例11
图6 C++代码表示COM组件12
图7 MyObject组件对象示意图12
图8 接口IUnknow的3个函数13
图9 类厂与COM组件对象的关系13
图10 COM对象创建过程示意图14
图11 3种Filter类型15
图12 DirectShow系统(源自DirectX SDK9.0)16
图13 开发DirectShow应用
程序过程(源自DirectX SDK9.0)17
图14 系统总体架构17
图15 系统服务端软件结构18
图16 服务端功能模块19
图17 客户端功能模块19
图18 控制信道设计原理21
图19 数据信道设计原理21
图20 系统的类层次结构23
图21 系统的类继承结构24
图22 构建发送和接收视频数据的FilterGraph26
图23 AVMontitor
程序的交互流程27
图24 视频采集卡在GraphEdit下的示意图28
图25 视频采集模块软件流程图29
图26 设备枚举流程图(源自DirectX SDK帮助文档29
图27 视频采集预览的数据流向图31
图28 视频采集预览图32
图28 服务端通信模块结构图34
图29 选择作为客户端的情况37
图30 向服务端发出连接请38
图31 服务端选择角色窗口39
图32 服务端预览视频窗口40
图33 服务端等待接收来自客户端的视频数据41
图34 服务端接收并实时播放视频数据42
图35 客户端选择角色窗口43
图36 客户端预览视频窗口43
图37 客户端向服务端发出连接请求44
图38 客户端等待接收来自服务端的视频数据44
图39 客户端接收并实时播放来自服务端的视频数据45
参考文献: 李波. 数字视频监控系统: 多一双眼睛看世界[N].科技日报, 2001(11) .
中国公共安全网[EB/OL]. http://www.cps.com.cn.
查辉等.基于蓝牙的连续媒体实时传输技术的研究[J]. 小型微型
计算机,2004.25/3 :422-425.
刘富强. 数字视频监控系统开发及应用[M].北京:机械上业出版社, 2003. 3.
吕风剪. C++语言
程序设计[M].北京: 电子工业出版社, 2001, 4.
侯捷.深入浅出MFC[M].湖北:华中科技大学出版社.
Namir Clement Shammas著.王国印,张赤红译.Visual C++使用指南[M].北京:清华大学出版社, 1995.
黄晓东, 黄成华, 吴劲松. 基于网络的视频监控技术及应用[J].煤矿自动化. 2001(6): 32-33.
[美]W.Rictiard Stevens.TCP/IP详解卷协议[M].北京:机械工业出版社.
[美]Dale Ragerson.COM技术内幕—微软组件对象模型[M].北京:清华大学出版社.
陆其明. DirectShow实务精选[M].北京:科学出版社, 2004.7.
Time创作室著. 极速建站典型应用技巧[M].北京:人民邮电出版社, 2004.1.
莫宁, 俞宁. 局域网视频数据传输的应用研究[J].工业控制
计算机.2002, 12(3):14-16.
张敬辕, 谢剑英.基于Internet的实时视频信号传输研究进展[J].通信学报.2001, 22(7): 92-99.
[15] 陈坚, 陈伟等编著. Visual C++网络高级编程[M].北京:人民邮电出版社, 2001.8.
[16] 王生祥, 侯山峰, 高稚允.视频媒体实时捕获和预览系统的研究[J].北京理工大学学报. 2002, 22(4): 493-495.
[17] Richard C.Leinecker, Jamie Nye著.廖安棣,傅曹寿,郑寅坤等译. Visual C++开发工具实用指南[M].北京:机械工业出版社1998.
[18] Greg P. Bulette著.廖铮译.TCP/IP MCSE学习指南[M].北京:清华大学出版社.
作者点评:基于DirectShow的视频监控系统
随着NGN, 3G等新一代网络通信技术的迅速发展,以及现今接入网技术的越发成熟,人们对高宽带的需求趋于普及化,网络视频通信也越来越普遍化。对安防监控领域来说,视频信号能否走进Internet、走进网络己成为衡量安防监控方案提供商的技术含量标准之一。考虑到现今阶段安防视频监控的中低端应用领域,DVR技术方案占的比例依然很重;而对于未来,低成本的DVR技术不会马上被NVS技术取代。因此,研究在原有DVR基础上,开发通用型的网络视频监控系统具有一定的现实意义。正因为这一点,经过一个月对视频监控领域的理论研究与技术实践,了解到已经有不少的企业进行通用型的DVR网络视频监控系统的开发工作并提供技术方案。至于通用型的解释就是从软件角度出发,开发可以适应大多数类型的DVR网络视频监控系统软件。由于本人水平有限,只是针对通用型的局域网视频监控系统进行研究开发。
在开展系统具体设计和实现之前,经一番查找局域网视频监控开发的相关
资料,并结合自身实际条件,研究选定Microsoft的多媒体开发包DirectX SDK作为开发的基本平台之一。另一方面,本人认为Windows系统平台下实现C/S模式的实时视频通信是开发通用型局域网视频监控系统的重点与难点。对此,在进行该系统的设计与实现过程中,本人将大部分精力集中对实时视频通信的开发研究之中。在设计和开发过程中按照C/S模式下控制模块以UDP传输和数据通信模块的视频以TCP传输,经调试最终达到了视频可以同时传输和播放的预期设计目标。