CN103092623B - 一种基于多表面显示截获的变化数据的方法 - Google Patents
一种基于多表面显示截获的变化数据的方法 Download PDFInfo
- Publication number
- CN103092623B CN103092623B CN201310026075.2A CN201310026075A CN103092623B CN 103092623 B CN103092623 B CN 103092623B CN 201310026075 A CN201310026075 A CN 201310026075A CN 103092623 B CN103092623 B CN 103092623B
- Authority
- CN
- China
- Prior art keywords
- data
- display device
- intercepting
- capturing
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Digital Computer Display Output (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明提供一种基于多表面显示截获的变化数据的方法,通过虚拟显示设备视频小端口驱动程序在系统中创建多个虚拟显示设备,并动态切换物理显示设备到虚拟显示设备,然后在虚拟显示设备驱动程序的图形设备接口中完成对GDI数据的截获,在虚拟显示设备驱动程序的设备表面上完成对DirectX数据的截获。这样只获取计算机屏幕变化部分的数据,有效的减少了数据量;通过创建多个显示设备,可以支持多显的情况;通过对多表面的支持,相对其他截获方式有效的提高了系统的性能;对GDI和DirectX数据的截获同在虚拟设备显示驱动程序中完成,截获的数据完整高效;虚拟显示设备可以很好的解决截获数据的安全性问题。
Description
技术领域
本发明涉及计算机通讯设备技术领域,尤其涉及一种基于多表面显示截获的变化数据的方法。
背景技术
现有技术中计算机系统中包含有计算机屏幕显示数据模块、图形设备接口引擎/多媒体编程接口模块、物理显示设备驱动程序、物理显示设备视频小端口驱动程序、计算机屏幕;请参阅图1,该计算机屏幕显示数据模块:接收通过计算机的交互操作或其他方式产生的将要在计算机屏幕上显示的数据;该图形设备接口引擎/多媒体编程接口模块(GDIEngine/DirectX模块):是计算机Windows操作系统的一部分,负责调用第三方提供的驱动程序,以传递显示数据给第三方驱动程序;所述物理显示设备驱动程序:是计算机系统原有的物理显示设备驱动程序,负责驱动计算机的物理显示设备;物理显示设备视频小端口驱动程序:计算机系统原有的物理显示设备视频小端口驱动程序,可以创建小端口的物理显示设备;计算机屏幕:用于最终展示的计算机操作系统界面。
在越来越多的实时远程应用中有着对计算机屏幕数据截获的需求,现有的数据截获技术有如下:
1、在用户态通过对整个计算机屏幕定时截图,来获取屏幕数据,这种方式由于获取的数据是整个计算机屏幕,但计算机屏幕的变化经常只是屏幕的一部分,所以会导致获取的数据量巨大,不利于保存和传输。
2、在用户态对系统中存在的每个应用程序进行挂钩,以截获计算机屏幕上的应用程序变化的部分,这种方式需要挂接到每个应用程序,所以实现起来十分复杂,而且计算机图形系统的数据量很大,这种方式会导致占用大量的系统资源,拖慢整个系统的运行。
3、使用windows推荐的Mirror(镜像)驱动来获取显示数据,这种方式不支持DirectX的应用,所以无法获取DirectX的数据,且该方式下,没有发生变化的数据还是会继续发送到原来的显卡上面,继续在桌面上显示,一些远程桌面访问等应用场合下会产生安全性问题。所以需要一种方法,能高性能、少数据量、完整的截获包括多显在内的显示数据,且出于安全考虑,截获显示数据后,不再让没发生变化的数据在原计算机屏幕上显示出来,即进行屏蔽未发生变化的数据。
发明内容
本发明要解决的技术问题,在于提供一种基于多表面显示截获的变化数据的方法,其只获取计算机屏幕变化部分的数据,有效的减少了数据量;通过创建多个显示设备,可以支持多显的情况;通过对多表面的支持,相对其他截获方式有效的提高了系统的性能,且截获的数据完整高效。
本发明是这样实现的:一种基于多表面显示截获的变化数据的方法,包括如下步骤:
步骤1、在计算机系统启动过程中,建立虚拟显示设备视频小端口驱动程序、动态切换显示设备模块、虚拟显示设备驱动程序、以及处理数据模块;
步骤2、计算机系统启动中加载虚拟显示设备视频小端口驱动程序,该虚拟显示设备视频小端口驱动程序根据当前计算机屏幕的个数来创建对应的虚拟显示设备,并创建一数据通道;该数据通道负责对所述变化数据进行优化和压缩;
步骤3、系统启动成功后,所述动态切换显示设备模块通过枚举计算机系统所拥有的显示设备,当计算机的显示设备屏幕显示数据发生变化,则动态地将计算机系统的物理显示设备切换到各个虚拟显示设备上;
步骤4、所述动态切换显示设备模块完成操作后,计算机的屏幕显示数据模块会将变化数据通过计算机的图形设备接口引擎/多媒体编程接口模块发送给虚拟显示设备驱动程序,该变化数据不再发送到计算机的物理显示设备驱动程序中;
步骤5、所述虚拟显示设备驱动程序针对变化数据的不同数据类型进行分别截获,并发送给所述数据通道;
步骤6、数据通道对所述截获的变化数据进行优化和压缩后发送给所述处理数据模块;
步骤7、所述处理数据模块接收变化数据,进行处理后在多个虚拟显示设备上进行显示,并将计算机系统的显示设备从虚拟显示设备切换到物理显示设备。
本发明具有如下优点:本发明通过虚拟显示设备来截获计算机屏幕的显示数据,只获取计算机屏幕变化部分的数据,有效的减少了数据量;通过创建多个显示设备,可以支持多显的情况;通过对多表面的支持,相对其他截获方式有效的提高了系统的性能;对GDI和DirectX数据的截获同在虚拟设备显示驱动中完成,截获的数据完整高效;虚拟显示设备可以完好的解决截获数据的安全性问题。
附图说明
图1为现有技术中计算机系统中部分组件的结构框架图。
图2为本发明中计算机系统的结构框架图。
具体实施方式
请参阅图2所示,本发明的一种基于多表面显示截获的变化数据的方法,包括如下步骤:
步骤1、在计算机系统启动过程中,建立虚拟显示设备视频小端口驱动程序、动态切换显示设备模块、虚拟显示设备驱动程序、以及处理数据模块;
步骤2、计算机系统启动中加载虚拟显示设备视频小端口驱动程序,该虚拟显示设备视频小端口驱动程序根据当前计算机屏幕的个数来创建对应的虚拟显示设备,以支持多表面的显示,并创建一数据通道;该数据通道负责对所述变化数据进行优化和压缩;
步骤3、系统启动成功后,所述动态切换显示设备模块通过枚举计算机系统所拥有的显示设备,当计算机的显示设备屏幕显示数据发生变化,则动态地将计算机系统的物理显示设备切换到各个虚拟显示设备上;
步骤4、所述动态切换显示设备模块完成操作后,计算机的屏幕显示数据模块会将变化数据通过计算机的图形设备接口引擎/多媒体编程接口模块发送给虚拟显示设备驱动程序,该变化数据不再发送到计算机的物理显示设备驱动程序中;
步骤5、所述虚拟显示设备驱动程序针对变化数据的不同数据类型进行分别截获,并发送给所述数据通道;具体为:所述不同数据类型包括GDI显示数据和DirectX显示数据,对于GDI显示数据,计算机的图形设备接口引擎/多媒体编程接口模块会调用该虚拟显示设备驱动程序的图形设备接口,GDI显示数据从图形设备接口中直接截获,将截获的GDI显示数据发送给数据通道;对于DirectX显示数据,计算机的图形设备接口引擎/多媒体编程接口模块会调用该虚拟显示设备驱动程序的DirectX接口,该接口会将DirectX显示数据解码并绘制到计算机的显示屏表面上,再从显示表屏面中截获数据,将截获的DirectX显示数据发送给数据通道;
步骤6、数据通道对所述截获的变化数据进行优化和压缩后发送给所述处理数据模块;
步骤7、所述处理数据模块接收变化数据,进行处理后在多个虚拟显示设备上进行显示,并将计算机系统的显示设备从虚拟显示设备切换到物理显示设备。
其中,所述数据通道对所述变化数据进行优化和压缩,是将所述GDI显示数据和DirectX显示数据均进行区分为矢量数据和位图数据后分别进行优化和压缩的。
所述虚拟显示设备视频小端口驱动程序:用于根据当前计算机屏幕的个数来创建对应的虚拟显示设备,以支持多表面的显示,并创建一数据通道;该数据通道负责对所述变化数据进行优化和压缩。
所述动态切换显示设备模块:用于通过枚举计算机系统所拥有的显示设备,当计算机的显示设备屏幕显示数据发生变化,则动态地将计算机系统的物理显示设备切换到各个虚拟显示设备上。
所述虚拟显示设备驱动程序:用于针对变化数据的不同数据类型进行分别截获,并发送给所述数据通道。
所述处理数据模块:接收变化数据,并进行处理在多个虚拟显示设备上进行显示,并将计算机系统的显示设备从虚拟显示设备切换到物理显示设备。
总之,本发明通过虚拟显示设备来截获计算机屏幕的显示数据,只获取计算机屏幕变化部分的数据,有效的减少了数据量;通过创建多个显示设备,可以支持多显的情况;通过对多表面的支持,相对其他截获方式有效的提高了系统的性能;对GDI和DirectX数据的截获同在虚拟设备显示驱动中完成,截获的数据完整高效;虚拟显示设备可以完好的解决截获数据的安全性问题。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (3)
1.一种基于多表面显示截获的变化数据的方法,其特征在于,包括如下步骤:
步骤1、在计算机系统启动过程中,建立虚拟显示设备视频小端口驱动程序、动态切换显示设备模块、虚拟显示设备驱动程序、以及处理数据模块;
步骤2、计算机系统启动中加载虚拟显示设备视频小端口驱动程序,该虚拟显示设备视频小端口驱动程序根据当前计算机屏幕的个数来创建对应的虚拟显示设备,并创建一数据通道;该数据通道负责对所述变化数据进行优化和压缩;
步骤3、系统启动成功后,所述动态切换显示设备模块通过枚举计算机系统所拥有的物理显示设备,当计算机的物理显示设备屏幕显示数据发生变化,则动态地将计算机系统的物理显示设备切换到各个虚拟显示设备上;
步骤4、所述动态切换显示设备模块完成操作后,计算机的屏幕显示数据模块会将变化数据通过计算机的图形设备接口引擎/多媒体编程接口模块发送给虚拟显示设备驱动程序,该变化数据不再发送到计算机的物理显示设备驱动程序中;
步骤5、所述虚拟显示设备驱动程序针对变化数据的不同数据类型进行分别截获,并发送给所述数据通道;
步骤6、数据通道对所述截获的变化数据进行优化和压缩后发送给所述处理数据模块;
步骤7、所述处理数据模块接收变化数据,进行处理后在多个虚拟显示设备上进行显示,并将计算机系统的显示设备从虚拟显示设备切换到物理显示设备。
2.根据权利要求1所述的一种基于多表面显示截获的变化数据的方法,其特征在于:所述步骤5具体为:所述不同数据类型包括GDI显示数据和DirectX显示数据,对于GDI显示数据,计算机的图形设备接口引擎/多媒体编程接口模块会调用该虚拟显示设备驱动程序的图形设备接口,GDI显示数据从图形设备接口中直接截获,将截获的GDI显示数据发送给数据通道;对于DirectX显示数据,计算机的图形设备接口引擎/多媒体编程接口模块会调用该虚拟显示设备驱动程序的DirectX接口,该DirectX接口会将DirectX显示数据解码并绘制到计算机的显示屏表面上,再从显示屏表面中截获数据,将截获的DirectX显示数据发送给数据通道。
3.根据权利要求2所述的一种基于多表面显示截获的变化数据的方法,其特征在于:所述数据通道对所述变化数据进行优化和压缩,是将所述GDI显示数据和DirectX显示数据均进行区分为矢量数据和位图数据后分别进行优化和压缩的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310026075.2A CN103092623B (zh) | 2013-01-18 | 2013-01-18 | 一种基于多表面显示截获的变化数据的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310026075.2A CN103092623B (zh) | 2013-01-18 | 2013-01-18 | 一种基于多表面显示截获的变化数据的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103092623A CN103092623A (zh) | 2013-05-08 |
CN103092623B true CN103092623B (zh) | 2016-05-18 |
Family
ID=48205234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310026075.2A Active CN103092623B (zh) | 2013-01-18 | 2013-01-18 | 一种基于多表面显示截获的变化数据的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103092623B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104699543B (zh) * | 2015-03-27 | 2017-12-05 | 福州大学 | 基于Windows显示体系下与小端口驱动通信方法 |
CN115185594B (zh) * | 2022-09-06 | 2023-01-06 | 湖北芯擎科技有限公司 | 基于虚拟显示的数据交互方法、装置、电子设备及介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100337190C (zh) * | 2005-09-22 | 2007-09-12 | 北京网梯科技发展有限公司 | 在远端计算机上将本地计算机显示内容显示回放的方法 |
CN101105746B (zh) * | 2006-07-14 | 2010-05-12 | 联想(北京)有限公司 | 采用过滤驱动获取图形设备接口调用的方法 |
US8266637B2 (en) * | 2008-03-03 | 2012-09-11 | Microsoft Corporation | Privacy modes in a remote desktop environment |
CN101609401B (zh) * | 2009-07-02 | 2012-05-02 | 深圳市万兴软件有限公司 | 一种无干扰屏幕录制方法和系统 |
CN102508695A (zh) * | 2011-10-14 | 2012-06-20 | 深圳市京华科讯科技有限公司 | 一种屏幕虚拟化的方法及系统 |
-
2013
- 2013-01-18 CN CN201310026075.2A patent/CN103092623B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103092623A (zh) | 2013-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2922867C (en) | Desktop-cloud-based media control method and device | |
US9088749B2 (en) | Method, apparatus and system for mobile terminal to remotely control television | |
CN102521020B (zh) | 用于移动终端的应用屏幕截图方法和装置 | |
EP3040804B1 (en) | Electronic device for controlling power and method therefor | |
CN105045485A (zh) | 一种屏幕截图方法及移动终端 | |
CN105874807B (zh) | 用于在电视设备上对Web内容远程渲染的方法、系统和介质 | |
KR20140035707A (ko) | 가상화 시스템 및 가상화 서비스 제공방법 | |
CN105677265A (zh) | 一种显示方法及终端 | |
US20140108940A1 (en) | Method and system of remote communication over a network | |
US20220058771A1 (en) | Image Processing Method in Remote Control, Device, Apparatus and Program Product | |
TWI709331B (zh) | 經由多視圖壓縮/解壓縮減少記憶體頻寬的系統與方法 | |
CN103164227B (zh) | 一种窗口图像的采集方法及装置 | |
CN104067627A (zh) | 一种视频重定向的方法、装置、系统及计算机可读介质 | |
CN103092623B (zh) | 一种基于多表面显示截获的变化数据的方法 | |
CN113655975A (zh) | 图像显示方法、装置、电子设备和介质 | |
CN113835657A (zh) | 显示方法及电子设备 | |
CN104768072A (zh) | 一种电视盒子及基于电视盒子的电视用户界面操控方法 | |
KR102164686B1 (ko) | 타일 영상의 영상 처리 방법 및 장치 | |
CN108132767B (zh) | 应用窗口预览方法和系统 | |
CN103294193A (zh) | 多终端互动的方法、装置和系统 | |
EP2693426A1 (en) | Display apparatus, image post-processing apparatus and method for image post-processing of contents | |
US9911175B2 (en) | Modification of graphical command tokens | |
CN110990109B (zh) | 一种拼接屏回显方法、终端、系统及存储介质 | |
CN106851380A (zh) | 一种基于智能电视的信息处理方法和装置 | |
WO2020011066A1 (zh) | 终端的显示方法和装置、终端及可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |