CN112601122A - 一种基于udp的屏幕广播方法及系统 - Google Patents
一种基于udp的屏幕广播方法及系统 Download PDFInfo
- Publication number
- CN112601122A CN112601122A CN202011466999.0A CN202011466999A CN112601122A CN 112601122 A CN112601122 A CN 112601122A CN 202011466999 A CN202011466999 A CN 202011466999A CN 112601122 A CN112601122 A CN 112601122A
- Authority
- CN
- China
- Prior art keywords
- image frame
- screen
- coded data
- udp
- receiving end
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 16
- 230000005540 biological transmission Effects 0.000 claims abstract description 28
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video stream to a specific local network, e.g. a Bluetooth® network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供了屏幕广播技术领域的一种基于udp的屏幕广播方法及系统,方法包括如下步骤:步骤S10、发送端获取电脑屏幕中,待广播的实时画面的图像帧;步骤S20、发送端基于H264格式对各所述图像帧进行编码,生成编码数据;步骤S30、发送端监测当前的网络环境,基于当前的网络环境切换对应的数据传输协议,将所述编码数据发送给接收端;步骤S40、接收端基于H264格式对接收的所述编码数据进行解码,得到所述图像帧并通过屏幕进行广播。本发明的优点在于:极大的降低了屏幕广播的时延,并提升了稳定性。
Description
技术领域
本发明涉及屏幕广播技术领域,特别指一种基于udp的屏幕广播方法及系统。
背景技术
屏幕广播即把当前屏幕显示的内容共享出去,现有的屏幕广播技术通常使用h264编码技术、tcp、rtmp等传输技术,拥有传输稳定且传输质量高的优点,但是有较高延迟不适用于实时视频会议,而采用udp传输技术虽然能够解决延迟高等问题,但是udp协议在wifi网络状态下无法保持稳定传输,丢包率高。
因此,如何提供一种基于udp的屏幕广播方法及系统,实现降低屏幕广播的时延,并提升稳定性,成为一个亟待解决的问题。
发明内容
本发明要解决的技术问题,在于提供一种基于udp的屏幕广播方法及系统,实现降低屏幕广播的时延,并提升稳定性。
第一方面,本发明提供了一种基于udp的屏幕广播方法,包括如下步骤:
步骤S10、发送端获取电脑屏幕中,待广播的实时画面的图像帧;
步骤S20、发送端基于H264格式对各所述图像帧进行编码,生成编码数据;
步骤S30、发送端监测当前的网络环境,基于当前的网络环境切换对应的数据传输协议,将所述编码数据发送给接收端;
步骤S40、接收端基于H264格式对接收的所述编码数据进行解码,得到所述图像帧并通过屏幕进行广播。
进一步地,所述步骤S10具体为:
发送端通过ffmpeg接口拦截电脑系统底层传输的画面流,进而获取待广播的实时画面的yuv图像帧。
进一步地,所述步骤S20具体为:
发送端设定一阈值n,n为正整数;发送端利用H264编码器,依次将n帧的所述图像帧顺序编码成1个画面,进而生成H264格式的编码数据。
进一步地,所述步骤S30具体为:
发送端遍历本机所有的网络接口获取运行中的网络接口信息,基于所述网络接口信息判断当前的网络是否为wifi,若是,则通过udt协议将所述编码数据发送给接收端;若否,则通过udp协议将所述编码数据发送给接收端。
进一步地,所述步骤S40具体为:
接收端利用H264解码器对接收的所述编码数据进行解码,得到所述图像帧;通过openGL将所述图像帧绘制在屏幕的窗体上形成实时画面,进而进行广播。
第二方面,本发明提供了一种基于udp的屏幕广播系统,包括如下模块:
图像帧获取模块,用于发送端获取电脑屏幕中,待广播的实时画面的图像帧;
编码数据生成模块,用于发送端基于H264格式对各所述图像帧进行编码,生成编码数据;
编码数据发送模块,用于发送端监测当前的网络环境,基于当前的网络环境切换对应的数据传输协议,将所述编码数据发送给接收端;
屏幕广播模块,用于接收端基于H264格式对接收的所述编码数据进行解码,得到所述图像帧并通过屏幕进行广播。
进一步地,所述图像帧获取模块具体为:
发送端通过ffmpeg接口拦截电脑系统底层传输的画面流,进而获取待广播的实时画面的yuv图像帧。
进一步地,所述编码数据生成模块具体为:
发送端设定一阈值n,n为正整数;发送端利用H264编码器,依次将n帧的所述图像帧顺序编码成1个画面,进而生成H264格式的编码数据。
进一步地,所述编码数据发送模块具体为:
发送端遍历本机所有的网络接口获取运行中的网络接口信息,基于所述网络接口信息判断当前的网络是否为wifi,若是,则通过udt协议将所述编码数据发送给接收端;若否,则通过udp协议将所述编码数据发送给接收端。
进一步地,所述屏幕广播模块具体为:
接收端利用H264解码器对接收的所述编码数据进行解码,得到所述图像帧;通过openGL将所述图像帧绘制在屏幕的窗体上形成实时画面,进而进行广播。
本发明的优点在于:
通过H264格式对图像帧进行编码,具有较大的压缩率,降低了网络传输的压力;通过自适应选择数据传输协议,即网络为wifi时通过udt协议传输,网络为以太网时通过udp协议传输,使得不论哪种网络下都能保证传输的稳定性,降低丢包率,即最终极大的降低了屏幕广播的时延,并提升了屏幕广播的稳定性。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是本发明一种基于udp的屏幕广播方法的流程图。
图2是本发明一种基于udp的屏幕广播系统的结构示意图。
具体实施方式
本申请实施例中的技术方案,总体思路如下:采用压缩率高的H264格式对图像帧进行编码,每n帧图像帧传输一次完整画面,其余帧只传输较前一图像帧变化的部分,以达到极大的压缩率,降低网络传输压力,并通过当前的网络自适应选择对应的数据传输协议,以降低屏幕广播的时延,并提升稳定性。
请参照图1至图2所示,本发明一种基于udp的屏幕广播方法的较佳实施例,包括如下步骤:
步骤S10、发送端获取电脑屏幕中,待广播的实时画面的图像帧;所述图像帧为yuv格式;
步骤S20、发送端基于H264格式对各所述图像帧进行编码,生成编码数据;
步骤S30、发送端监测当前的网络环境,基于当前的网络环境切换对应的数据传输协议,将所述编码数据发送给接收端;
步骤S40、接收端基于H264格式对接收的所述编码数据进行解码,得到所述图像帧并通过屏幕进行广播。
所述步骤S10具体为:
发送端通过ffmpeg接口拦截电脑系统底层传输的画面流,进而获取待广播的实时画面的yuv图像帧。
所述步骤S20具体为:
发送端设定一阈值n,n为正整数;发送端利用H264编码器,依次将n帧的所述图像帧顺序编码成1个画面,进而生成H264格式的编码数据。
所述步骤S30具体为:
发送端遍历本机所有的网络接口获取运行中的网络接口信息,基于所述网络接口信息判断当前的网络是否为wifi,若是,则通过udt协议将所述编码数据基于单播发送给接收端;若否,则通过udp协议将所述编码数据基于组播发送给接收端。当网络同时存在wifi和以太网时,选择以太网进行传输,即通过udp协议进行传输。
所述步骤S40具体为:
接收端利用H264解码器对接收的所述编码数据进行解码,得到所述图像帧;通过openGL将所述图像帧绘制在屏幕的窗体上形成实时画面,进而进行广播。使用openGL进行绘制,不需要先将所述图像帧转化为rgb格式,使得图像绘制效率更高,而别的绘制方式,需要先将所述图像帧转化为rgb格式再绘制到窗体上,转化和绘制都需要耗时,变相增加了延迟,且增加了cpu的消耗。
本发明一种基于udp的屏幕广播系统的较佳实施例,包括如下模块:
图像帧获取模块,用于发送端获取电脑屏幕中,待广播的实时画面的图像帧;所述图像帧为yuv格式;
编码数据生成模块,用于发送端基于H264格式对各所述图像帧进行编码,生成编码数据;
编码数据发送模块,用于发送端监测当前的网络环境,基于当前的网络环境切换对应的数据传输协议,将所述编码数据发送给接收端;
屏幕广播模块,用于接收端基于H264格式对接收的所述编码数据进行解码,得到所述图像帧并通过屏幕进行广播。
所述图像帧获取模块具体为:
发送端通过ffmpeg接口拦截电脑系统底层传输的画面流,进而获取待广播的实时画面的yuv图像帧。
所述编码数据生成模块具体为:
发送端设定一阈值n,n为正整数;发送端利用H264编码器,依次将n帧的所述图像帧顺序编码成1个画面,进而生成H264格式的编码数据。
所述编码数据发送模块具体为:
发送端遍历本机所有的网络接口获取运行中的网络接口信息,基于所述网络接口信息判断当前的网络是否为wifi,若是,则通过udt协议将所述编码数据基于单播发送给接收端;若否,则通过udp协议将所述编码数据基于组播发送给接收端。当网络同时存在wifi和以太网时,选择以太网进行传输,即通过udp协议进行传输。
所述屏幕广播模块具体为:
接收端利用H264解码器对接收的所述编码数据进行解码,得到所述图像帧;通过openGL将所述图像帧绘制在屏幕的窗体上形成实时画面,进而进行广播。使用openGL进行绘制,不需要先将所述图像帧转化为rgb格式,使得图像绘制效率更高,而别的绘制方式,需要先将所述图像帧转化为rgb格式再绘制到窗体上,转化和绘制都需要耗时,变相增加了延迟,且增加了cpu的消耗。
综上所述,本发明的优点在于:
通过H264格式对图像帧进行编码,具有较大的压缩率,降低了网络传输的压力;通过自适应选择数据传输协议,即网络为wifi时通过udt协议传输,网络为以太网时通过udp协议传输,使得不论哪种网络下都能保证传输的稳定性,降低丢包率,即最终极大的降低了屏幕广播的时延,并提升了屏幕广播的稳定性。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (10)
1.一种基于udp的屏幕广播方法,其特征在于:包括如下步骤:
步骤S10、发送端获取电脑屏幕中,待广播的实时画面的图像帧;
步骤S20、发送端基于H264格式对各所述图像帧进行编码,生成编码数据;
步骤S30、发送端监测当前的网络环境,基于当前的网络环境切换对应的数据传输协议,将所述编码数据发送给接收端;
步骤S40、接收端基于H264格式对接收的所述编码数据进行解码,得到所述图像帧并通过屏幕进行广播。
2.如权利要求1所述的一种基于udp的屏幕广播方法,其特征在于:所述步骤S10具体为:
发送端通过ffmpeg接口拦截电脑系统底层传输的画面流,进而获取待广播的实时画面的yuv图像帧。
3.如权利要求1所述的一种基于udp的屏幕广播方法,其特征在于:所述步骤S20具体为:
发送端设定一阈值n,n为正整数;发送端利用H264编码器,依次将n帧的所述图像帧顺序编码成1个画面,进而生成H264格式的编码数据。
4.如权利要求1所述的一种基于udp的屏幕广播方法,其特征在于:所述步骤S30具体为:
发送端遍历本机所有的网络接口获取运行中的网络接口信息,基于所述网络接口信息判断当前的网络是否为wifi,若是,则通过udt协议将所述编码数据发送给接收端;若否,则通过udp协议将所述编码数据发送给接收端。
5.如权利要求1所述的一种基于udp的屏幕广播方法,其特征在于:所述步骤S40具体为:
接收端利用H264解码器对接收的所述编码数据进行解码,得到所述图像帧;通过openGL将所述图像帧绘制在屏幕的窗体上形成实时画面,进而进行广播。
6.一种基于udp的屏幕广播系统,其特征在于:包括如下模块:
图像帧获取模块,用于发送端获取电脑屏幕中,待广播的实时画面的图像帧;
编码数据生成模块,用于发送端基于H264格式对各所述图像帧进行编码,生成编码数据;
编码数据发送模块,用于发送端监测当前的网络环境,基于当前的网络环境切换对应的数据传输协议,将所述编码数据发送给接收端;
屏幕广播模块,用于接收端基于H264格式对接收的所述编码数据进行解码,得到所述图像帧并通过屏幕进行广播。
7.如权利要求6所述的一种基于udp的屏幕广播系统,其特征在于:所述图像帧获取模块具体为:
发送端通过ffmpeg接口拦截电脑系统底层传输的画面流,进而获取待广播的实时画面的yuv图像帧。
8.如权利要求6所述的一种基于udp的屏幕广播系统,其特征在于:所述编码数据生成模块具体为:
发送端设定一阈值n,n为正整数;发送端利用H264编码器,依次将n帧的所述图像帧顺序编码成1个画面,进而生成H264格式的编码数据。
9.如权利要求6所述的一种基于udp的屏幕广播系统,其特征在于:所述编码数据发送模块具体为:
发送端遍历本机所有的网络接口获取运行中的网络接口信息,基于所述网络接口信息判断当前的网络是否为wifi,若是,则通过udt协议将所述编码数据发送给接收端;若否,则通过udp协议将所述编码数据发送给接收端。
10.如权利要求6所述的一种基于udp的屏幕广播系统,其特征在于:所述屏幕广播模块具体为:
接收端利用H264解码器对接收的所述编码数据进行解码,得到所述图像帧;通过openGL将所述图像帧绘制在屏幕的窗体上形成实时画面,进而进行广播。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011466999.0A CN112601122A (zh) | 2020-12-14 | 2020-12-14 | 一种基于udp的屏幕广播方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011466999.0A CN112601122A (zh) | 2020-12-14 | 2020-12-14 | 一种基于udp的屏幕广播方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112601122A true CN112601122A (zh) | 2021-04-02 |
Family
ID=75195136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011466999.0A Pending CN112601122A (zh) | 2020-12-14 | 2020-12-14 | 一种基于udp的屏幕广播方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112601122A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101031145A (zh) * | 2006-02-13 | 2007-09-05 | 捷讯研究有限公司 | 自动网络选择方法和使用导引plmn的装置 |
CN103152378A (zh) * | 2012-12-25 | 2013-06-12 | 中国移动通信集团江西有限公司 | 一种网络数据的传输方法、系统和客户端 |
US20160198021A1 (en) * | 2015-01-02 | 2016-07-07 | Citrix Systems, Inc. | Dynamic protocol switching |
CN105828182A (zh) * | 2016-05-13 | 2016-08-03 | 北京思特奇信息技术股份有限公司 | 一种基于OpenGL渲染实时视频的方法及系统 |
CN106487906A (zh) * | 2016-11-01 | 2017-03-08 | 北京大学(天津滨海)新代信息技术研究院 | 一种情境感知的移动Web应用协议切换方法 |
US20180146249A1 (en) * | 2014-09-29 | 2018-05-24 | At&T Intellectual Property I, L.P. | Method and apparatus for distributing content in a communication network |
CN109963193A (zh) * | 2019-03-01 | 2019-07-02 | 安徽戴特教育科技有限公司 | 一种基于h264编码与负载均衡的屏幕广播系统 |
WO2020128258A1 (fr) * | 2018-12-17 | 2020-06-25 | Orange | Procédé de basculement d'une communication de tcp sur udp |
-
2020
- 2020-12-14 CN CN202011466999.0A patent/CN112601122A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101031145A (zh) * | 2006-02-13 | 2007-09-05 | 捷讯研究有限公司 | 自动网络选择方法和使用导引plmn的装置 |
CN103152378A (zh) * | 2012-12-25 | 2013-06-12 | 中国移动通信集团江西有限公司 | 一种网络数据的传输方法、系统和客户端 |
US20180146249A1 (en) * | 2014-09-29 | 2018-05-24 | At&T Intellectual Property I, L.P. | Method and apparatus for distributing content in a communication network |
US20160198021A1 (en) * | 2015-01-02 | 2016-07-07 | Citrix Systems, Inc. | Dynamic protocol switching |
CN105828182A (zh) * | 2016-05-13 | 2016-08-03 | 北京思特奇信息技术股份有限公司 | 一种基于OpenGL渲染实时视频的方法及系统 |
CN106487906A (zh) * | 2016-11-01 | 2017-03-08 | 北京大学(天津滨海)新代信息技术研究院 | 一种情境感知的移动Web应用协议切换方法 |
WO2020128258A1 (fr) * | 2018-12-17 | 2020-06-25 | Orange | Procédé de basculement d'une communication de tcp sur udp |
CN109963193A (zh) * | 2019-03-01 | 2019-07-02 | 安徽戴特教育科技有限公司 | 一种基于h264编码与负载均衡的屏幕广播系统 |
Non-Patent Citations (1)
Title |
---|
章超等: "基于改进UDT协议的实时视频传输", 《工业控制计算机》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1880550B1 (en) | Method for effectively implementing a multi-room television system | |
US6909753B2 (en) | Combined MPEG-4 FGS and modulation algorithm for wireless video transmission | |
US7502070B2 (en) | Method and apparatus for processing a data series including processing priority data | |
US10805615B2 (en) | Synchronizing video signals using cached key frames | |
CN110662114B (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN100531298C (zh) | 用于执行画中画功能的多媒体信号匹配系统和方法 | |
CN101321280A (zh) | 一种实时视频转码流媒体服务器 | |
US8571027B2 (en) | System and method for multi-rate video delivery using multicast stream | |
CA2737728A1 (en) | Low latency video encoder | |
CN101360243A (zh) | 基于反馈参考帧的视频通信系统及方法 | |
CN102595093A (zh) | 动态更改视频编码的视频通信方法及系统 | |
US20090207918A1 (en) | Method and apparatus for video transcoding | |
CN109618188B (zh) | 视频数据的编码、转发方法、装置、设备及存储介质 | |
CN102113322A (zh) | 应用可分级视频编码(svc)流的快速频道切换的方法及装置 | |
CN111147860A (zh) | 一种视频数据的解码方法及装置 | |
CN110602522A (zh) | 一种多路实时直播WebRTC流合成方法 | |
KR100818148B1 (ko) | Mpeg 및 다른 데이터 포맷에 적합한 순차적인 비디오시퀀스를 송신하기 위한 장치 및 방법 | |
JP2004064300A (ja) | 画像送信システム、画像送信装置、および画像受信装置 | |
CN103024441B (zh) | 一种移动终端播放电视节目的方法 | |
CN111093082A (zh) | 一种流媒体直播的方法及系统 | |
JP2011511554A (ja) | ビデオデータをストリーミングするための方法 | |
US11265583B2 (en) | Long-term reference for error recovery in video conferencing system | |
CN103918258A (zh) | 减少视频编码中的数据量 | |
CN112601122A (zh) | 一种基于udp的屏幕广播方法及系统 | |
CN110798705A (zh) | 一种视频图像传输方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20231103 |