(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202211138858.5
(22)申请日 2022.09.19
(71)申请人 深圳软牛科技有限公司
地址 518000 广东省深圳市宝安区新 安街
道海旺社区兴业路1100号金利通金融
中心大厦2栋13 01-1310
(72)发明人 谭志文
(74)专利代理 机构 深圳市精英专利事务所
44242
专利代理师 巫苑明
(51)Int.Cl.
G06F 9/451(2018.01)
H04L 69/16(2022.01)
H04N 5/268(2006.01)
H04N 5/765(2006.01)
(54)发明名称
一种基于windows的共享桌面屏幕方法、 装
置及相关介质
(57)摘要
本发明公开了一种基于windows的共享桌面
屏幕方法、 装置及相关介质, 该方法包括: 在共享
桌面屏幕类中创建滤镜管理器, 再添加待预设的
屏幕截图源滤镜和H264视频编码滤镜并设置相
关参数; 分别查找并创建屏幕截图源滤镜、 H264
视频编码滤镜、 数据采集滤镜和空渲染滤镜, 并
将四个对应的滤镜添加到所述滤镜管理器中; 最
后利用网络通讯协议发送所述H264视频数据至
客户端进行桌面屏幕共享。 本发明采用H2 64视频
编码滤镜的视频编码方式, 占用内存小, 网络通
讯时发送数据速度非常快, 在局域网中共享桌面
屏幕到大量的终端设备上延 迟率非常低, 能够实
现共享桌面画面实时同步。
权利要求书2页 说明书9页 附图3页
CN 115543502 A
2022.12.30
CN 115543502 A
1.一种基于w indows的共享 桌面屏幕方法, 其特 征在于, 包括:
创建共享 桌面屏幕类, 并在所述共享 桌面屏幕类中创建滤镜管理器;
添加待预设的屏幕截图源滤镜和H264视频编码滤镜, 通过注册表预设所述屏幕截图源
滤镜和H264视频编码滤镜的参数; 其中, H264视频编码滤镜的参数包括 I帧的发送间隔;
通过DirectShow API中的ICreateDevEnum接口, 枚举注册在windows操作系统中的所
有滤镜, 分别查找并创建屏幕截图源滤镜和H264视频编码滤镜, 并将所述屏幕截图源滤镜
和H264视频编码滤镜添加到所述滤镜管理器中; 其中, 所述屏幕截图源滤镜的输出与所述
H264视频编码滤镜的输入连接, 所述H264视频编码滤镜用于接收所述屏幕截图源 滤镜捕获
的屏幕截图数据, 并将 捕获的屏幕 截图数据编码成H264视频 数据;
分别查找并创建数据采集滤镜和空渲染滤镜, 并将所述数据采集滤镜和空渲染滤镜添
加到所述滤镜管理器中; 其中, 所述H264视频编码滤镜的输出与所述数据采集滤镜的输入
连接, 所述数据采集滤镜的输出与所述空渲染滤镜的输入连接; 所述数据采集滤镜用于接
收所述H264视频编码滤镜 输出的所述H264视频 数据, 并输入到所述空渲染滤镜中;
通过所述滤镜管理器依次连接所述屏幕截图源滤镜、 H264视频编码滤镜、 数据采集滤
镜、 空渲染滤镜, 并通过所述滤镜管理器中的IMediaControl接口来调用Run方法, 开始推送
所述屏幕截图数据; 所述数据采集滤镜还用于回调拷贝所述H264视频数据, 利用网络通讯
协议发送所述H264视频 数据至客户端 进行桌面屏幕共享。
2.根据权利要求1所述的基于windows的共享桌面屏幕方法, 其特征在于, 在所述通过
DirectShow API中的ICreateDevEnum接口, 枚举注册在windows操作系统中的所有滤镜之
前, 所述共享 桌面屏幕方法还 包括:
将所述DirectSho w API封装为COM API接口。
3.根据权利要求1所述的基于windows的共享桌面屏幕方法, 其特征在于, 所述共享桌
面屏幕类继承所述数据采集滤镜的回调ISampleGrab berCB接口。
4.根据权利要求1所述的基于windows的共享桌面屏幕方法, 其特征在于, 所述滤镜管
理器通过IFilterGraph2 COM接口添加滤镜、 连接滤镜、 控制滤镜的播放、 暂停和停止; 其
中, 控制滤镜的播 放、 暂停和停止的步骤 包括:
创建所述滤镜管理器的实例, 将所述IFilterGraph2 COM接口强制转换为
IMediaCo ntrol COM接口, 以控制滤镜的播 放、 暂停和停止的步骤。
5.根据权利要求1所述的基于windows的共享桌面屏幕方法, 其特征在于, 所述数据采
集滤镜接收所述H264视频编码滤镜 输出的所述H264视频 数据的步骤, 包括:
在所述数据采集滤镜中获取ISampleGrab ber接口;
通过所述ISampleGrab ber接口设置如下属性:
通过调用SetOneShot(false)方法实现采集所述H264视频 数据后不暂停;
通过调用SetBufferSamples(false)方法实现采集所述H264视频数据后不复制缓冲
区;
通过调用SetCallback(this,1)方法实现采集所述H264视频数据后通过回调函数抛
出; 其中this代 表所述共享 桌面屏幕类, 1代 表使用ISampleGrab berCB接口中的一个方法。
6.根据权利要求1所述的基于windows的共享桌面屏幕方法, 其特征在于, 所述回调拷
贝所述H264视频数据, 利用网络通讯协 议发送所述H264视频数据至客户端进 行桌面屏幕共权 利 要 求 书 1/2 页
2
CN 115543502 A
2享, 包括:
通过BufferCB回调方法接收所述H264视频数据, 对所述H264视频数据进行拷贝, 通过
异步回调抛 出所述H264视频 数据。
7.根据权利要求6所述的基于windows的共享桌面屏幕方法, 其特征在于, 所述通过异
步回调抛 出所述H264视频 数据, 包括:
通过TCP网络通讯协议或UD P网络通讯协议将拷贝的所述H264视频 数据发送到客户端。
8.一种基于w indows的共享 桌面屏幕装置, 其特 征在于, 包括:
创建管理单元, 用于创建共享桌面屏幕类, 并在所述共享桌面屏幕类中创建滤镜管理
器, 所述滤镜管理器通过IFi lterGraph2 COM接口添加滤镜和连接滤镜;
预设滤镜单元, 用于添加待预设的屏幕截图源滤镜和H264视频编码滤镜, 通过注册表
预设所述待预设 的屏幕截图源滤镜和 H264视频编码滤镜的参数; 其中, H264视频编码滤镜
的参数包括 I帧的发送间隔;
第一处理单元, 用于通过DirectShow API中的ICreateDevEnum接口, 枚举注册在
windows操作系统中的所有滤镜, 分别查找并创建屏幕截图源 滤镜和H264视频编码滤镜, 并
将所述屏幕截图源滤镜和H264视频编码滤镜添加到所述滤镜管理器中; 其中, 所述屏幕截
图源滤镜的输出与所述H264视频编码滤镜的输入连接, 所述H264视频编码滤镜用于接收所
述屏幕截图源滤镜捕获的屏幕 截图数据, 并将 捕获的屏幕 截图数据编码成H264视频 数据;
第二处理单元, 用于分别查找并创建数据采集滤镜和 空渲染滤镜, 并将所述数据采集
滤镜和空渲染滤镜添加到所述滤镜管理器中; 其中, 所述H264视频编码滤镜的输出与所述
数据采集滤镜的输入连接, 所述数据采集滤镜的输出与所述空渲染滤镜的输入连接; 所述
数据采集滤镜用于接收所述H264视频编码滤镜输出的所述H264视频数据, 并输入到所述空
渲染滤镜中;
数据输出单元, 用于通过所述滤镜管理器依次连接所述屏幕截图源滤镜、 H264视频编
码滤镜、 数据采集滤镜、 空渲染滤镜, 并通过所述滤镜管理器中的IMediaControl接口来调
用Run方法, 开始推送所述屏幕截图数据; 所述数据采集滤镜还用于回调拷贝 所述H264视频
数据, 利用网络通讯协议发送所述H264视频 数据至客户端 进行桌面屏幕共享。
9.一种计算机设备, 其特征在于, 包括存储器、 处理器及存储在所述存储器上并可在所
述处理器上运行的计算机程序, 所述处理器执行所述计算机程序时实现如权利要求 1至7任
一项所述的基于w indows的共享 桌面屏幕方法。
10.一种计算机可读存储介质, 其特征在于, 所述计算机可读存储介质上存储有计算机
程序, 所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的基于windows的
共享桌面屏幕方法。权 利 要 求 书 2/2 页
3
CN 115543502 A
3
专利 一种基于windows的共享桌面屏幕方法、装置及相关介质
文档预览
中文文档
15 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共15页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 17:06:35上传分享