0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于IP Multicast技术的远程数字音视频监控系统的解决方案

电子设计 来源:郭婷 作者:电子设计 2019-07-19 08:12 次阅读

随着计算机网络技术、多媒体技术、计算机视觉与模式识别技术的发燕尾服,一种以数字化、智能化为特点的多媒体远程数字监控系统应运而生,即基于IP的数字监控系统,实现了由传统的模拟监控到数字监控质的飞跃。与传统的模拟监控系统相比较,数字远程监控系统几个最主要的优势是:可以借助网络实现远程监控;在远程不同地点的分控中心或同个分控中心可同时调看某一个或者几个监控现场的音视频数据,从而实现分布式的音频频接入和音视频数据共享,同时,可以与监控现场人员进行对讲;可以对远程监控现场的云台、摄像机等外围设备进行控制。视频、音频的实时、分布式传输及控制指令的可靠传输是远程数字监控系统的一个关键问题。本文设计并实现了远程数字音频频监控系统,采用IP Multicast技术作为分布式音视频执着入和共享的解决方案,并针对视频、音频语音和控制数据不同的特点,对其所采用的不同传输技术进行了探讨,给出了具体实现方法。

1 系统的总体结构

远程监控系统一般包括三部分:前端监控现场、通信设备和后端分控中心。整个系统基于Client/Server(客户机/服务器)模式。总体结构如图1所示。

(1)前端监控现场由监控现场主机及一些外围设备组成。外围设备包括摄像机、电动镜头、云台、防护罩、监视器、多功能解码器及报警器。监控现场主机运行客户前端软件,实现视频、音频数据的实时采集、压缩、解压缩(音频)(视频传输 单向的,音频传输是双向的)及打包传送;对压缩的视(音)频数据进行经存储(也可在分近中心进行)。存储方式为循环存储、定时存储、手动存储及运动视频检测启动存储。接收来自分控中心的控制指令(也可在本地实施),对云台动作(上、下、左、右及自动)电动镜头的三可变(光圈、焦距和聚焦)。

(2)通信设备是指所采用的传输信道和相关设备,通信网络为LAN及WAN。

(3)后端设备由若干分控中心计算机组成。各分控计算机运行服务器端软件,接收来自前端压缩视(音)频、显示(播放);通过网络对前端云台、摄像机进行控制;采用组播技术,实现分布式视频执着入和分丰式视频共享:每个分控中心主机可以同时监控多个前端,即“一点对多点”;不同分控心也可以同时监控同一前端,即“多点对一点”。

基于IP Multicast技术的远程数字音视频监控系统的解决方案

2 网络传输模块的设计与实现

2.1 系统传输数据类型的特点及通信协议的选择

系统传输数据有:控制数据、音频、视频数据、后端分控中心通过网络向监控现场主机外围设备云台及摄像机发送控制信号,实现云台动作(上、下、左、右、自动)摄像机光圈、焦距及聚焦三可变,要求控制信号的传输准确无误;音频、视频是连续,数据量大,允许传输中存在一定的数据错误率及数据丢失率,但实时性要求很高。此外,在监控系统中,要实现音视频的分布式接入和数据共享,必须进行音视频的多点传输。样实现上述目标?首先是通信协议的选择,TCP/IP协议是广泛使用的网协议,其网络模型定义了四层(即网络接口层、网络层、传输层、应用层)网络通信协议。传输层包含两个协议:传输控制协议(TCP)和用户数据报协议(UDP)。IP是国际互联协议,位于网络层。TCP协议是面向连接的,提供可靠的流服务;UDP是无连接的,提供数据报服务;TCP采用提供确认与超时重发、滑动窗口机制等措施来保证传输的可靠性,正是这些措施增加了网络的开销。如果用TCP传输视(音)频数据,大量的数据容量引起重传。,使得网络负载大并会加大延迟;UDP协议是最简单的传输协议,不提供可靠性保证,正因为UDP协议不进行数据确认与重传国,大大提高了传输效率,具有高效快速的特点;Ipv4定义了三种IP数据包的传输:单播、广播及组播。要系统中实现视(音)频数据的多点传输,若采用单播,则同样的音、视频数据要发送多次,这样导致发送者负担重、延迟长、网络拥塞;若用广播,网络中的每个站点都将接收到数据,不管该结点否需要数据,增加了非接收者的开销;组播是一种允许一个或多个发送者(组播源)发送单一的数据包到多个接收者(一次的、同时的)的网络技术。组播源把数据包发送到特定组播组,而只有属于该组播组的地址才能接收到数据包。由于无论有多少个目的地址,在整个网络的任何一条链路上都只传送单一的数据包。因此组播提高了网络传输的效率,极大地节省了网络传输。组播方式只适用于UDP。综上所述,采用TCP/IP传输控制信号,即信令通道;采用UDP/IP传输音视频信号,即数据通道。

IP组播依赖一个特殊的地址组——“移播址”,即D类地址。范围在224.0.0.0-239.255.255.255之间(其中224.0.0.0-224.0.0.255是被保留的地址),D类地址是动态分配和恢复的瞬态地址。组播地址只能作为信宿地址使用,而不能出现在任何信源地址中。每一个组播组对应于动态分配 的一个D类地址。组播的特点:组播组的成员是动态的,主机可以任何时间加入或离开组播组,主机组中的成员在位置上和数量 旧没有限制的。

2.2 Windows下,IP组播的Winsock2实现

Windows环境下组播通信是基于WindowsSocket的。Windows Socket提供两种不同IP组播的实现方法:Windows Socket提供两种不同的IP组播的实现方法:Winsock1与Winsock2。在Windows2000平台实现VC++6.0开发工具,在本系统中实现了基于Winsock2的组播通信编程。

发送端(前端、客户端)实现步骤:

(1)加载Winsock2库,完成Winsock2的初始化:

WSAStarup(MAKEWORD(2,2),&wsaData);(2)建立本地套接字(UDP):

m_socket=WSASocke(AF_INET,SOCK_DGRAM,IPPROTO_UDP,NULL,0,WSA_FLAG_MULTIPOINT_C_LEAF

WSA_FLAG_MULTIPOINT_D_LEAF);

//组播通信具有两个层面的重要特征:控制层面和数据层面。控制层面决定一个多播组建立通信的方式,数据层面决定通信成员间数据传输的方式。每一个层面有两种形式,一种是“有限的”,另一种是“无根的”;数据报IP组播在两个层面上都是“无根”的。任一用户发送的数据都将被传送到组中所有其它成员。最后一个参数表明新创建的套接字在控制层面与数据层面都是“无根的”。

图2

可以通过setsocket函数设置套接字的属性,如地址重用,缓冲区是接收还是发送。

M_localAddr.sin_family = AF_INET;

M_localAddr.sin_port=m_iPort;//本地端口

M_localAddr..sin _addr.S_un.S_addr=m_uLocalIP;//本地IP地址;

(3)绑定(将新创建的套字节与本地插口地址进行绑定):

bind(m_socket,(PSOCKADDR)&(m_localAddr),sizeof(m_localAddr);

(4)设置生存时间(即数据包最多允许路由多少个网段):

WSAIoctl(m_socket,SIO_MULTICAST_SCOPE,//设置数据报生存时间;

&iMcastTTL,//生存时间大小;

sizeof(iMcastTTL),NULL,0,&cbRet,NULL,NULL);

(5)配置Loopback,以决定组播数据帧是否回送:

int bLoopback=FALSE;

WSAIoct(m_socket,SIO_MULTIPOINT_LOOPBACK,//允许或禁止组播数据帧回送;

&bLoopback,sizeof(bLoopback),NULL,0,&cbRet,NULL,NULL);

(6)收发数据:

在发送方(前端、客户端)响应发送的消息函数中调用下面函数:

WSASendTo (m_socket,&stWSABuf,&cbRet,0,(struct sockaddr*)&stDestAddr,//发送的目的地址;

sizeof(struct(sockaddr),NULL,NULL);

在发送方(前端、客户端)响应接收消息函数中调用下面函数:

WSARecvFrom(m_socket,&stWSABuf,1,& cbRet,&Flag,(struct sockaddr*)&stSrcAddr,//源地址;

&iLen,NULL,NULL);

(7)将组播套接字设置为异步I/O工作模式,在该套节字上接收事件为基础的网络事件通知:

WSAEventSelect(m_socket,m_hNetworkEvent,//网络事件句柄;将此套字节与该事件句柄并联在一起;

FD_WRITEFD_READ);//发生此两个事件之一,则将m_hNetworkEvent置为有信号状态;

(8)在工作线程中设置:

WSAWaitForMultipleEvent(3,//等待事件的个数);

p-》m_eventArray,//存放事件句柄的数组;

FALSE,WSA_INFINITE,FALSE);

(9)关闭组播套字节:

closesocket(m_socket);

接收端(后端、服务器端)实现步骤:

(1)-(3)与发送端(客户端)相同;

(4)调用WSAJLoinLeaf加入组播组:

SOCKET NetSock=WSAJoinLeaf(sock,//必须为组播标志进行创建,否则调用失败;

(PSOCKADDR)&(m_stDestAddr,//组播导址,与发送方的目的地址相同;

sizeof(m_stDestAddr),UNLL,NULL,NULL,NULL,

JL_BOTH));//允许接收和发送;

(5)与客户端(6)相同;(6)与客户端(7)相同;(7)与客户端(8)相同;(8)离开组播组;closesocket(NewSock);//NewSock是调用WSAoinLeaf()返回的套节字。

2.3 在监控系统中网络传输模块的设计

网络传输模块流程如图2所示。

发送端(前端监控现场主机、客户端)监控主机运行客户端程序。在主线程中,启动视同、音频两个线程分别对视频及音频进行采集,放入视(音)频缓冲区;视频在本地回放;同时,监听分控中心的连接请求,收到连接请求,TCP三次握手,建立TCP连接(信令通道);通过信令通道,向分控心发送二组组播地址及端口号(对应视频及音频,音频两个线程;分别在视(音)频线程中完成;利用Winsock2建立视(音)频数据通道(UDP)(源码前已述及);对视(音)频进行压缩编码、组播发送;音频线程接收分控中心的音频数据包,解码并播放;实现视频的单向传输和音频的双向传输。

接收端(后端分控中心、服务器端)分控中心主机运行服务器端程序,在主线程中向前端监控现场主机发出连接请求(CALL),三次握手建立TCP连接(信令通道);后端接收到组播地址及端口号后,启动视(音)频两个线程,完成;利用Winsock2建立视(音)频数据通道(UDP),加入视(音)频组播组,接收压缩视(音)频包,并解码显示(播放);其中音频线程,还要完成音频数据包解码显示(播放);其中音频线程,还要完成音频数据包的压缩、发送;实现视频的单向传输、音频的双向传输。

一个后端分控中心可同时监控12路前端视频及音频信号,在设计服务器端监控程序时,采用多线程技术,每建立一对前端监控主机与后端分控中心(服务器)的TCP连接,就开两个接收线程(一个接收视频线程;一个接收音频线程),视频线程接收视频数据包进行解压缩及回放;音频线程接收音频数据包进行解压缩及播放。对云台及摄像机的控制指令通过信令通道传输。

本系统运行在Win2000平台上,用VC++6.0开发工具开发。

在远程数字音视频监控系统的传输模块设计中,根据音频频数据传输及控制信号传输的特点,运用IP组播技术极大地减轻了网络负担,避免了资源的浪费,节省了网络带宽;利用TCP/IP协议设计了信令通道(TCP)和数据通道(UDP);运用Windows多线程机制实现了音频数据的实时、多点传输和控制信号的可靠传,提高了程序运行的效率。在该系统的基础上进行改造和扩展,可以应用到远程教学、远程医疗等多种多媒体通信;因此,远程数字音视频监控系统的设计和实现不仅具有监控方面的现实意义,而且对于许多应用都有借鉴和参考价值。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 视频监控
    +关注

    关注

    17

    文章

    1682

    浏览量

    64197
  • 计算机
    +关注

    关注

    19

    文章

    6631

    浏览量

    84378
  • 摄像机
    +关注

    关注

    3

    文章

    1418

    浏览量

    58962
收藏 人收藏

    评论

    相关推荐

    数字音视频编解码技术与标准

    数字音视频编解码技术与标准数字电视技术标准的范畴?? 信道传输技术标准– 卫星传输– 有线传输(浙大)– 地面传输(清华、上交大)?? 信源
    发表于 06-04 13:49

    数字音视频编解码技术与标准AVS

    数字音视频编解码技术与标准AVS信源编码—一个曾经被忽略的技术领域??MPEG—一把掌握在别人手里的金钥匙??AVS—可以让中国的AV产业直起腰的技术标准??AVS:JVT—一条路上的
    发表于 06-25 09:53

    数字音视频编解码技术标准AVS介绍

    的产业大潮中,AVS标准为我国构建“技术→专利→标准→芯片与软件→整机与系统制造→数字媒体运营与文化产业”的产业链条提供了难得机遇。1 标准化工作进展数字音视频编解码
    发表于 06-25 11:21

    走出“象牙塔”的AVS-中国自己的数字音视频编解码技术标准

    自主知识产权、基于我国创新技术和公开技术制定的,并达到国际先进水平的第二代数字音视频编解码开放标准;旨在为中国的音视频产业提供完整的信源编码技术
    发表于 05-05 08:56

    数字音视频

    关于数字音视频有哪些资料吗?
    发表于 03-20 15:28

    【OK210申请】音视频编解码+智能控制系统

    申请理由:酷爱嵌入式开发,操作系统开发,也热爱最前沿的科学技术,高速数字时代音视频成为主流,想在业余时间开发音视频编码产品,通过
    发表于 06-24 16:55

    远程视频监控解决方案中动态IP技术的应用是什么?

    远程视频监控解决方案中动态IP技术的应用是什么?
    发表于 05-31 06:52

    数字音视频编解码技术(AVS标准)

    数字音视频编解码技术标准AVS黄铁军数字音视频编解码标准是数字音视频产业的共性基础标准,具有巨大的产业需求。跨入新世纪以来,随着编解码技术
    发表于 08-25 12:43 63次下载

    全球数字音视频技术的专利分布

    全球数字音视频技术的专利分布谢学军一、前言1994 年推出的MPEG-2 标准在数据音视频领域是一个里程碑式的标准,它不仅仅是数学与产业最完美的结合,更重要的是引
    发表于 12-21 10:39 27次下载

    数字音视频监控系统的设计方案介绍

    远程访问能力,视频资料管理保存方便,而且可以开发升级。本文介绍了一种基于IP网络的数字视频监控系统
    的头像 发表于 11-30 09:18 2627次阅读
    <b class='flag-5'>数字音视频</b><b class='flag-5'>监控</b><b class='flag-5'>系统</b>的设计<b class='flag-5'>方案</b>介绍

    基于IP网络的数字音视频监控系统设计与实现

    关键词:监控系统 , 数字音视频 监控系统被广泛应用于保安、生产管理等需要无人值守的场合。虽然基于闭路电视的模拟
    发表于 02-22 07:39 497次阅读

    音王推出智能音视频系统整体解决方案

    作为智能化音视频整体解决方案供应商,音王携数字会议系统、智慧网络音视频系统、智慧终端工作站等
    发表于 07-04 10:25 1413次阅读

    如何衡量数字音视频系统的优劣程度?

    数字音视频系统的根本任务是存储和传播音视频信息。用户总是希望音视频系统中存储和传输的音视频信息越
    的头像 发表于 03-10 11:43 2198次阅读

    数字音视频技术有什么特点?

    随着大规模集成电路、计算机数字技术的发展,传统的影视媒体、消费类电子以及通信行业几乎全部实现数字化。数字音视频技术已成为当前最流行、使用最频
    的头像 发表于 03-11 16:05 1w次阅读

    KILOVIEW打造的音视频IP解决方案

    的一站式解决方案,千视以KiloLink及NDI技术为核心,打造一条音视频IP解决方案的生态链(Roadmap)。
    发表于 04-07 16:58 696次阅读
    KILOVIEW打造的<b class='flag-5'>音视频</b>全<b class='flag-5'>IP</b>化<b class='flag-5'>解决方案</b>