低带宽占用的高清摄像头映射方法

文档序号:7891445阅读:241来源:国知局
专利名称:低带宽占用的高清摄像头映射方法
低带宽占用的高清摄像头映射方法
技术领域
本发明涉及计算机通讯技术领域,尤其涉及一种低带宽占用的高清摄像头映射方法。
背景技术
在Windows终端服务器及虚拟桌面环境(VDI)下,服务器端的应用程序是不能直接访问客户端的摄像头设备。目前摄像头映射(即接插于终端本地的摄像头,与数据中心的虚拟桌面侧的虚拟摄像头,建立映射关系。用户登陆虚拟桌面,操作虚拟设备就如同使用身边的实务设备效果一样。),可以使用USB映射方法实现,但是这一种实现方式存在有以下缺点I) USB映射方法作为一种通用的USB设备映射方法,无法对摄像头这种设备做特别的优化。随着虚拟化运用的普及,VDI运用的推广,人们对清晰度的要求越来越高。而使用传统的USB映射的方法映射摄像头时,由于其对网络带宽较高的要求,无法满足高清的视频应用,例如视频会议等。并且在高分辨率环境下使用摄像头时的影像会出现暂时缺失现象。2)不能使原本不支持拍照接口的摄像头设备支持拍照功能。现有技术中提供了一种“网吧视频监控和实名拍照系统”,见公开号为 “CN101005611”,
公开日为“2007. 07. 25”的中国专利,该系统,包括有服务器端、至少一个客户端,及与客户端连接的摄像头,其特征点在于所述客户端包括视频采集模块,用于从摄像头获得网吧内的视频数据;拍照模块,用于在用户在成功登录网吧实名系统后,接收实名系统接口模块的指令,对用户进行拍照,所述指令包含有用户的网号;数据处理模块, 用于将视频采集模块所采集的视频数据进行编码处理及对拍照模块所采集的照片进行压缩处理;数据传输模块,用于将所述编码后视频数据及压缩后的照片信息发送给服务器端; 所述服务器端包括数据传输模块,用于接受来自客户端的编码后的视频数据及照片信息; 数据存储模块,用于存储所述视频数据及照片信息,每一照片信息与一网号相对应;数据处理模块,用于对所述视频数据进行解码,对所述照片信息进行解压缩视频回放模块,用于播放所述经数据处理模块解码的视频数据;照片查看模块,用于显示所述经数据处理模块解压缩的与一网号对应的照片。该发明可实现对网吧的实时的监控,及对网民进行拍照,这样当上网用户有异常行为时,公安机关可以通过保存下来的照片获得更完整的上网人员信息,大大提高办案效率。但该发明是为了将数据保存为视频文件而采集数据,其并未虚拟出一摄像头,供第三方的其他应用程序使用;且该发明是针对PC机操作系统下实现对网吧的实时的监控;并非在Windows终端服务及虚拟桌面环境(VDI)下实现对网吧的实时的监控。

发明内容本发明要解决的技术问题,在于提供一种低带宽占用的高清摄像头映射方法,在虚拟桌面环境中实现了高分辨率、低带宽占用的摄像头映射。
本发明是这样实现的一种低带宽占用的高清摄像头映射方法,所述方法需提供客户端、服务器端以及与客户端连接的摄像头,包括如下步骤步骤10、在所述客户端建立摄像头客户端模块,且在所述服务器端建立摄像头服务器端模块、虚拟摄像头以及操作虚拟摄像头的应用程序;所述摄像头客户端模块用于获取所述摄像头上的视频数据、图像数据,且控制摄像头的操作;所述摄像头服务器端模块用于传送视频数据、图像数据,且为所述摄像头分配一所述虚拟摄像头并支持服务器多用户模式与不同用户的虚拟摄像头通信;所述虚拟摄像头用于提供视频数据、图像数据,处理摄像头控制指令,且支持服务器多用户环境下使用虚拟摄像头;所述应用程序使用所述虚拟摄像头展示视频数据或图像数据;步骤20、所述摄像头客户端模块获取所述摄像头得到的图像数据或视频数据后, 将图像数据或视频数据进行压缩处理并封装成报文通过服务器端的虚拟通道将报文传送给所述摄像头服务器端模块;步骤30、所述摄像头服务器端模块为所述摄像头分配所述虚拟摄像头并通过虚拟通道获取报文将获取的报文写入所述分配的虚拟摄像头中;步骤40、所述虚拟摄像头将报文还原为初始的视频数据或者图像数据;步骤50、所述应用程序通过虚拟摄像头将步骤40的视频数据或者图像数据进行展示。本发明具有如下优点本发明在所述客户端建立摄像头客户端模块,且在所述服务器端建立摄像头服务器端模块、虚拟摄像头以及操作虚拟摄像头的应用程序;所述摄像头客户端模块用于获取所述摄像头上的视频数据、图像数据,且控制摄像头的操作;所述摄像头服务器端模块用于传送视频数据、图像数据,且为所述摄像头分配一所述虚拟摄像头并支持服务器多用户模式与不同用户的虚拟摄像头通信;所述虚拟摄像头用于提供视频数据、图像数据,处理摄像头控制指令,且支持服务器多用户环境下使用虚拟摄像头;所述应用程序使用所述虚拟摄像头展示视频数据或图像数据;通过各模块的协作,在Windows终端服务以及虚拟桌面环境下实现1、用户可以无缝地使用本地的摄像头设备。2、为用户提供高质量、低带宽占用的摄像头映射。3、提高用户的体现。

图I为本发明实施例一的方法流程示意图。图2为本发明实施例一的方法原理框图。图3为本发明实施例二的方法原理框图。
具体实施方式如图I和图2所示,本发明的实施例一的低带宽占用的高清摄像头映射方法,所述方法需提供客户端、服务器端以及与客户端连接的摄像头,包括如下步骤步骤10、在所述客户端建立摄像头客户端模块,且在所述服务器端建立摄像头服务器端模块、虚拟摄像头以及操作虚拟摄像头的应用程序;所述摄像头客户端模块用于获取所述摄像头上的视频数据、图像数据,且控制摄像头的操作;所述摄像头服务器端模块用于传送视频数据、图像数据,且为所述摄像头分配一所述虚拟摄像头并支持服务器多用户模式与不同用户的虚拟摄像头通信;所述虚拟摄像头用于提供视频数据、图像数据,处理摄像头控制指令,且支持服务器多用户环境下使用虚拟摄像头;所述应用程序使用所述虚拟摄像头展示视频数据或图像数据;步骤20、所述摄像头客户端模块获取所述摄像头得到的图像数据或视频数据后, 将图像数据或视频数据进行压缩处理并封装成报文通过服务器端的虚拟通道将报文传送给所述摄像头服务器端模块;所述封装的报文的格式为报文类型、报文长度、报文数据的三个字段;步骤30、所述摄像头服务器端模块为所述摄像头分配所述虚拟摄像头并通过虚拟通道获取报文将获取的报文写入所述分配的虚拟摄像头中;步骤40、所述虚拟摄像头将报文还原为初始的视频数据或者图像数据;步骤50、所述应用程序通过虚拟摄像头将步骤40的视频数据或者图像数据进行展示。步骤60、所述应用程序能控制摄像头完成一些操作;所述操作包括设置摄像头分辨率、设置摄像头采样率;具体为所述应用程序向所述虚拟摄像头发送摄像头控制指令, 所述控制指令包括设置摄像头分辨率指令、设置摄像头采样率指令,虚拟摄像头接收到控制指令后转发给所述摄像头服务器端模块;所述摄像头客户端模块通过虚拟通道接收摄像头服务器端模块的控制指令,并对本地的摄像头进行参数设置。其中所述摄像头可以为普通USB摄像头。摄像头客户端模块a.视频获取从客户端本地的摄像头上获取视频数据,然后压缩原始的视频数据,最后封装成为报文,通过服务器端的虚拟通道将报文传送给摄像头服务器端模块。b.图像获取从客户端本地的摄像头上获取图像数据,然后压缩原始的图像数据,最后封装成为报文,通过服务器端的虚拟通道将报文传送给摄像头服务器端模块; 其中对于不能支持图像拍摄的摄像头设备需模拟出图像的拍摄接口。c.摄像头控制通过虚拟通道接收摄像头服务器端模块的控制指令,来对本地的摄像头进行参数设置。摄像头服务器端模块a.传送视频数据通过虚拟通道获取到摄像头客户端模块上传的视频数据,然后将视频数据写入到虚拟摄像头。b.传送图像数据通过虚拟通道获取到摄像头客户端模块上传的图像数据,然后将图像数据写入到虚拟摄像头。c.支持 Terminal Server (服务器)多用户模式,能够与不同用户的虚拟摄像头进行通信。虚拟摄像头a.提供视频数据从摄像头服务器端模块获取处理后的视频数据, 然后将数据还原为原始的视频数据。b.提供图像数据从摄像头服务器端模块获取处理后的图像数据,然后将数据还原为原始的图像数据。c.处理摄像头控制信息应用程序将摄像头的控制指令发送给虚拟摄像头,指令包括设置摄像头分辨率,设置摄像头采样率,并通过摄像头服务器端模块转发最终将控制指令传送至摄像头客户端模块。d.用户态的虚拟摄像头驱动,能够在Terminal Server多用户环境下使用虚拟摄像头。操作虚拟摄像头的应用程序可以为第三方的应用程序,其目的是使用虚拟的摄像头完成视频或者是拍照功能,如QQ、MSN、SKYPE等附带摄像头操作的软件;a.控制摄像头操作,包括设置摄像头分辨率,设置摄像头采样率等操作。b.从虚拟摄像头获取数据并展示,包括视频数据与图像数据。如图3所示,为本发明实施例二的方法原理框图。所述方法提供与客户端连接的复数个摄像头,在所述客户端建立复数个摄像头客户端模块,且所述服务器端建立一摄像头服务器端模块、复数个虚拟摄像头以及复数个操作虚拟摄像头的应用程序;则一个摄像头对应一摄像头客户端模块,所述摄像头服务器端模块为各个摄像头分配一虚拟摄像头, 各个应用程序分别控制一虚拟摄像头;各个摄像头客户端模块获取对应的摄像头得到的图像数据或视频数据后,将图像数据或视频数据进行压缩处理并封装成报文通过服务器端的虚拟通道将报文传送给所述摄像头服务器端模块;摄像头服务器端模块为各个摄像头分配一虚拟摄像头并通过虚拟通道获取对应的报文将获取的报文写入分配的对应虚拟摄像头中;各个虚拟摄像头将得到的报文还原为初始的视频数据或者图像数据;各个应用程序通过控制对应的虚拟摄像头将视频数据或者图像数据进行展示。本发明通过摄像头、摄像头客户端模块、摄像头服务器端模块、虚拟摄像头、操作虚拟摄像头的应用程序各模块的协作,在Windows终端服务以及虚拟桌面环境下实现了 I)在虚拟桌面环境中,映射终端本地的摄像头时,通过将原始的摄像头数据封装并压缩为视频流,来达到降低带宽占用。2)使用本地摄像头客户端模块获取摄像头数据,上传至服务器端,最终在服务器端中虚拟出摄像头设备的摄像头映射模式。3)为用户提供高质量、高分辨率的摄像头映射。4)通过虚拟出用户态的摄像头,来支持Terminal Server多用户应用环境。以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
权利要求
1.一种低带宽占用的高清摄像头映射方法,所述方法需提供客户端、服务器端以及与客户端连接的摄像头,其特征在于包括如下步骤步骤10、在所述客户端建立摄像头客户端模块,且在所述服务器端建立摄像头服务器端模块、虚拟摄像头以及操作虚拟摄像头的应用程序;所述摄像头客户端模块用于获取所述摄像头上的视频数据、图像数据,且控制摄像头的操作;所述摄像头服务器端模块用于传送视频数据、图像数据,且为所述摄像头分配一所述虚拟摄像头并支持服务器多用户模式与不同用户的虚拟摄像头通信;所述虚拟摄像头用于提供视频数据、图像数据,处理摄像头控制指令,且支持服务器多用户环境下使用虚拟摄像头;所述应用程序使用所述虚拟摄像头展示视频数据或图像数据;步骤20、所述摄像头客户端模块获取所述摄像头得到的图像数据或视频数据后,将图像数据或视频数据进行压缩处理并封装成报文通过服务器端的虚拟通道将报文传送给所述摄像头服务器端模块;步骤30、所述摄像头服务器端模块为所述摄像头分配所述虚拟摄像头并通过虚拟通道获取报文将获取的报文写入所述分配的虚拟摄像头中;步骤40、所述虚拟摄像头将报文还原为初始的视频数据或者图像数据;步骤50、所述应用程序通过虚拟摄像头将步骤40的视频数据或者图像数据进行展示。
2.根据权利要求I所述的低带宽占用的高清摄像头映射方法,其特征在于所述步骤 50之后进一步包括步骤60、所述应用程序能控制摄像头完成一些操作;所述操作包括设置摄像头分辨率、设置摄像头采样率;具体为所述应用程序向所述虚拟摄像头发送摄像头控制指令,所述控制指令包括设置摄像头分辨率指令、设置摄像头采样率指令,虚拟摄像头接收到控制指令后转发给所述摄像头服务器端模块;所述摄像头客户端模块通过虚拟通道接收摄像头服务器端模块的控制指令,并对本地的摄像头进行参数设置。
3.根据权利要求I或2所述的低带宽占用的高清摄像头映射方法,其特征在于所述方法提供与客户端连接的复数个摄像头,在所述客户端建立复数个摄像头客户端模块,且所述服务器端建立一摄像头服务器端模块、复数个虚拟摄像头以及复数个操作虚拟摄像头的应用程序;则一个摄像头对应一摄像头客户端模块,所述摄像头服务器端模块为各个摄像头分配一虚拟摄像头,各个应用程序分别控制一虚拟摄像头;各个摄像头客户端模块获取对应的摄像头得到的图像数据或视频数据后,将图像数据或视频数据进行压缩处理并封装成报文通过服务器端的虚拟通道将报文传送给所述摄像头服务器端模块;摄像头服务器端模块为各个摄像头分配一虚拟摄像头并通过虚拟通道获取对应的报文将获取的报文写入分配的对应虚拟摄像头中;各个虚拟摄像头将得到的报文还原为初始的视频数据或者图像数据;各个应用程序通过控制对应的虚拟摄像头将视频数据或者图像数据进行展示。
全文摘要
本发明提供一种低带宽占用的高清摄像头映射方法,包括1、在客户端建立摄像头客户端模块,在服务器端建立摄像头服务器端模块、虚拟摄像头以及应用程序;2、摄像头客户端模块获取摄像头得到的图像数据或视频数据后,将图像数据或视频数据进行压缩处理并封装成报文通过虚拟通道将报文传送给摄像头服务器端模块;3、摄像头服务器端模块为摄像头分配虚拟摄像头并通过虚拟通道获取报文并将报文写入分配的虚拟摄像头中;4、虚拟摄像头将报文还原为初始的视频数据或者图像数据;5、应用程序通过虚拟摄像头将视频数据或者图像数据进行展示。本发明在虚拟化桌面环境中,将虚拟摄像头映射到本地的摄像头,实现高分辨率、低带宽占用的摄像头映射。
文档编号H04N7/24GK102611878SQ20121006567
公开日2012年7月25日 申请日期2012年1月13日 优先权日2012年1月13日
发明者张辉 申请人:福建升腾资讯有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1