CN113747181A - 基于远程桌面的网络直播方法、直播系统及电子设备 - Google Patents

基于远程桌面的网络直播方法、直播系统及电子设备 Download PDF

Info

Publication number
CN113747181A
CN113747181A CN202010785058.7A CN202010785058A CN113747181A CN 113747181 A CN113747181 A CN 113747181A CN 202010785058 A CN202010785058 A CN 202010785058A CN 113747181 A CN113747181 A CN 113747181A
Authority
CN
China
Prior art keywords
server
remote desktop
stream
anchor
audio
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
Application number
CN202010785058.7A
Other languages
English (en)
Inventor
万安庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Dalong Information Technology Co Ltd
Original Assignee
Shanghai Dalong Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Dalong Information Technology Co Ltd filed Critical Shanghai Dalong Information Technology Co Ltd
Priority to CN202010785058.7A priority Critical patent/CN113747181A/zh
Publication of CN113747181A publication Critical patent/CN113747181A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23103Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4781Games
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/64Addressing
    • H04N21/6402Address allocation for clients

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供基于远程桌面的网络直播技术,从而降低主播终端对硬件配置的高要求。中控服务器:在接收由主播终端发送的请求时,向主播终端返回可用的远程桌面服务器的标识信息,以供主播终端根据标识信息与远程桌面服务器建立连接,并将主播音视频数据发送至远程桌面服务器进行处理;将推流地址提供至远程桌面服务器,以使远程桌面服务器将处理后的主播音视频数据推流至推拉流与转码服务器,以供推拉流与转码服务器将接收到的主播音视频数据进行处理;在接收由观众终端发送的观看请求时,向观众终端返回拉流地址,以供观众终端通过拉流地址访问CDN节点进而向推拉流与转码服务器拉流,以获取经推拉流与转码服务器处理后的音视频流并解码播放。

Description

基于远程桌面的网络直播方法、直播系统及电子设备
技术领域
本发明涉及网络直播技术领域,特别是涉及基于远程桌面的网络直播方法、直播系统及电子设备。
背景技术
当前,网络直播带货、体育赛事直播、游戏直播等火爆异常,主播通过屏幕分享以及语音与观众进行互动。目前的网络直播技术方案为通过运行PC端上的程序或智能移动设备上的应用程序,利用机器的GPU、CPU等性能负责屏幕画面和语音的捕获、编码等,之后再经直播处理的一系列步骤分发给各观众。因此,传统的网络直播方式对于主播的机器配置要求较高,性能差的设备会出现卡顿等现象,而对于游戏直播来说,这类问题往往是致命的。另对于传统端游,主播可通过电脑,再配合其他设备进行直播分享互动,但主播在有事外出时,一般都会停播,此时对于观众的黏性会产生一定影响。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供基于远程桌面的网络直播方法、直播系统及电子设备,主播只需在直播设备(智能手机、平板电脑、笔记本电脑、台式机等)上安装一款应用,便可与众多观众进行音视频分享与互动,从而获得与传统直播技术类似的效果,主播再也无需受到直播时间、空间及硬件配置的限制。
为实现上述目的及其他相关目的,本发明提供一种基于远程桌面的网络直播方法,包括:中控服务器在接收由主播终端发送的请求时,向所述主播终端返回可用的远程桌面服务器的标识信息,以供所述主播终端根据所述标识信息与所述远程桌面服务器建立连接,并将主播音视频数据发送至所述远程桌面服务器进行处理;所述中控服务器将推流地址提供至所述远程桌面服务器,以使所述远程桌面服务器将处理后的主播音视频数据推流至推拉流与转码服务器,以供所述推拉流与转码服务器将接收到的主播音视频数据进行处理;所述中控服务器在接收由观众终端发送的观看请求时,向所述观众终端返回拉流地址,以供所述观众终端通过所述拉流地址访问CDN节点进而向所述推拉流与转码服务器拉流,以获取经所述推拉流与转码服务器处理后的音视频流并解码播放。
于本发明一实施例中,所述远程桌面服务器包括:虚拟机或物理服务器;所述中控服务器在各所述虚拟机或物理服务器开机重启完成后,接收并存储各所述虚拟机或物理服务器的标识信息。
于本发明一实施例中,每一所述推拉流与转码服务器为若干所述远程桌面服务器提供服务;所述中控服务器根据各所述推拉流与转码服务器的负载情况选择为各所述远程桌面服务器提供服务的推拉流与转码服务器。
于本发明一实施例中,所述远程桌面服务器通过调用系统设备api对系统声音进行捕获,一方面单独对所述系统声音进行编码封装发送给所述主播终端,以供其进行解码播放,另一方面根据主播所选择的与观众的互动场景确定是否对所述系统声音和所述音频数据进行合流与编码。
于本发明一实施例中,所述远程桌面服务器通过调用系统设备api对远程桌面图像进行捕获,一方面单独对所述远程桌面图像进行编码封装发送给所述主播终端,以供其进行解码渲染播放,另一方面根据所述主播终端采集的主播头像窗口对观众的显示方式确定是否将所述远程桌面图像与所述主播终端采集到的图像数据进行合流与编码。
于本发明一实施例中,所述远程桌面服务器将编码后的音频数据和视频数据一起进行封装,通过实时消息传输协议推流至所述推拉流与转码服务器;CDN节点通过所述实时消息传输协议向所述推拉流与转码服务器进行拉流。
于本发明一实施例中,所述推拉流与转码服务器对接收到的主播音视频数据进行处理,包括:对接收到的主播音视频数据进行解封装并将视频数据转码成不同层级码率的主播视频数据并编码,音频数据不做处理;将音频数据和按不同层级码率解码后的视频数据重新封装。
为实现上述目的及其他相关目的,本发明提供一种电子设备,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于加载执行所述计算机程序,以使所述电子设备:在接收由主播终端发送的请求时,向所述主播终端返回可用的远程桌面服务器的标识信息,以供所述主播终端根据所述标识信息与所述远程桌面服务器建立连接,并将主播音视频数据发送至所述远程桌面服务器进行处理;将推流地址提供至所述远程桌面服务器,以使所述远程桌面服务器将处理后的主播音视频数据推流至推拉流与转码服务器,以供所述推拉流与转码服务器将接收到的主播音视频数据进行处理;在接收由观众终端发送的观看请求时,向所述观众终端返回拉流地址,以供所述观众终端通过所述拉流地址访问CDN节点进而向所述推拉流与转码服务器拉流,以获取经所述推拉流与转码服务器处理后的音视频流并解码播放。
为实现上述目的及其他相关目的,本发明提供一种基于远程桌面的网络直播系统,包括中控服务器及与所述中控服务器通信连接的:若干远程桌面服务器、若干推拉流与转码服务器,以及与若干所述推拉流与转码服务器通信连接的CDN节点;其中,所述中控服务器在接收由主播终端发送的请求时,向所述主播终端返回可用的远程桌面服务器的标识信息,以供所述主播终端根据所述标识信息与所述远程桌面服务器建立连接,并将主播音视频数据发送至所述远程桌面服务器进行处理;所述中控服务器将推流地址提供至所述远程桌面服务器,以使所述远程桌面服务器将处理后的主播音视频数据推流至推拉流与转码服务器,以供所述推拉流与转码服务器将接收到的主播音视频数据进行处理;所述中控服务器在接收由观众终端发送的观看请求时,向所述观众终端返回拉流地址,以供所述观众终端通过所述拉流地址访问CDN节点进而向所述推拉流与转码服务器拉流,以获取经所述推拉流与转码服务器处理后的音视频流并解码播放。
于本发明一实施例中,所述远程桌面服务器通过调用系统设备api对系统声音进行捕获,一方面单独对所述系统声音进行编码封装发送给所述主播终端,以供其进行解码播放,另一方面根据主播所选择的与观众的互动场景确定是否对所述系统声音和所述音频数据进行合流与编码;所述远程桌面服务器通过调用系统设备api对远程桌面图像进行捕获,一方面单独对所述远程桌面图像进行编码封装发送给所述主播终端,以供其进行解码渲染播放,另一方面根据所述主播终端采集的主播头像窗口对观众的显示方式确定是否将所述远程桌面图像与所述主播终端采集到的图像数据进行合流与编码;所述远程桌面服务器将编码后的音频数据和视频数据一起进行封装,通过实时消息传输协议推流至所述推拉流与转码服务器;CDN节点通过所述实时消息传输协议向所述推拉流与转码服务器进行拉流。
如上所述,本发明的基于远程桌面的网络直播方法、直播系统及电子设备,主播使用包括智能手机、平板等系列设备登录远程桌面应用程序,连接进入远程桌面进行使用,包括玩游戏,冲浪、陪聊或其他;主播使用的本地设备进行语音和图像的采集并发送给远程桌面服务器;远程桌面服务器对输入的语音及系统语音和图像进行捕获、处理、编码、封装、推流;推拉流及转码服务器将接收到的音视频数据解封装并按各不同层级的码率对视频转码再重新编码封装;观众通过其本地设备(包括但不限于智能手机、平板、笔记本电脑、台式电脑)经过安装的直播应用程序获取拉流地址;观众本地播放器通过拉流地址访问CDN节点进而向推流及转码服务器拉流,从而获取音视频流进行解码播放。
本发明具有以下有益效果:主播通过各类型智能设备能随时随地基于远程电脑桌面进行直播,无需在设备中安装各种类型应用程序,不占用手机内存及性能,只需一个远程桌面控制app或web应用,便可以登录远端桌面进行任意合法内容(包括电脑游戏)的直播,且不会由于本地设备性能不足导致卡顿等现象,可获得与电脑终端直播同样的效果,实现一对多的视频分享与互动;观众终端可以支持不同码率,适应不同网络和机型,满足支持多种格式以及不同的延时的需求。
附图说明
图1显示为本发明一实施例中的基于远程桌面的网络直播系统的架构图。
图2显示为本发明一实施例中的基于远程桌面的网络直播方法的流程图。
图3显示为本发明一实施例中的电子设备的结构图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
如图1所示,显示为本发明的基于远程桌面的网络直播系统于一实施例中的架构图。在本实施例中,基于远程桌面的网络直播系统包括:中控服务器及与所述中控服务器通信连接的远程桌面服务器、推拉流与转码服务器,以及与所述推拉流与转码服务器通信连接的CDN节点。所述远程桌面服务器优选为虚拟机,还可以是物理服务器,所述远程桌面服务器的数量为多个、所述推拉流与转码服务器的数量为多个,所述CDN节点的数量为多个,且一台推拉流与转码服务器为多台远程桌面服务器提供服务。
主播终端和观众终端各自通过安装的远程桌面控制app或web应用与中控服务器建立通信连接,主播终端进而与中控服务器为其提供的远程桌面服务器建立连接,以基于远程桌面服务器提供的远程云桌面进行网络直播,从而在不受主播终端硬件配置限制、直播时间地点限制的情况下,实现与利用传统高配设备直播同样的直播效果。
本领域技术人员应当理解,图1实施例中的推拉流与转码服务器的划分仅仅是一种逻辑功能的划分,实际实现时本实施例的推拉流与转码服务器可以由一台服务器设备来实现,还可以通过由多台服务器设备构成的服务器组来实现,如推流服务器、拉流服务器及转码服务器的组合,本发明对此不做限定。
如图2所示,显示为本发明的基于远程桌面的网络直播方法于一实施例中的流程图。本实施例的方法由图1所示的中控服务器执行,包括以下步骤:
S21:在接收由主播终端发送的请求时,向所述主播终端返回可用的远程桌面服务器的标识信息,以供所述主播终端根据所述标识信息与所述远程桌面服务器建立连接,并将主播音视频数据发送至所述远程桌面服务器进行处理。
具体地,主播使用本地智能设备即主播终端登录远程桌面应用程序(APP或web)申请连接使用远程云桌面进行直播,中控服务器验证该主播的用户信息,向其返回一台可用的远程桌面服务器。主播在进入远程桌面应用程序时需登录账号(未使用过用户需注册账号),在通过中央控制服务器(简称中控)验证该用户的合法性进入应用后,主播选择一种服务申请链接(如体验服、低配服、高配服等)使用。
需要说明的是,此前,远程桌面服务器在开机重启完成后会将其ip、端口以及基于设备信息及当前时间计算生成的key通过管理节点提交至中控,中控在接收到主播的请求时分配一台远程桌面服务器并将其标识(包括ip、端口、key)和推流地址发送给主播终端,主播终端的远程桌面连接应用程序凭该远程桌面服务器的标识与其进行握手、建立连接,并将推流地址发送给远程桌面服务器。
另外,主播终端连接远程桌面服务器后进行游戏、冲浪、陪聊等,主播终端将采集到的主播语音信息以及图像信息发送至远程桌面服务器。
详细而言,主播终端在连接进入中控分配的远程桌面服务器后,主播终端会显示该远程桌面服务器提供的远程云桌面,主播可以通过主播终端进行一系列的操作,例如游戏、陪聊等,主播在此过程中可以向主播终端输入语音以及打开主播设备的摄像头(手机、平板设备本身具备摄像头,台式机则需要购买摄像头装置)进行主播端实况的直播。主播可以在主播终端上调整设置摄像头窗口的大小、位置并可以选择对其进行隐藏,主播终端在此过程中采集主播输入的语音信息以及通过本地设备摄像头采集到的图像信息(包括大小、位置信息)发送至该远程桌面服务器。
S22:将推流地址提供至所述远程桌面服务器,以使所述远程桌面服务器将处理后的主播音视频数据推流至推拉流与转码服务器,以供所述推拉流与转码服务器将接收到的主播音视频数据进行处理。
具体地,推流地址也即所述推拉流与转码服务器的地址信息,中控在保持各推流服务负载均衡的情况下,根据各推流服务的负载情况,选择一台负载相对较轻的推拉流与转码服务器,并将其地址发送给主播终端,再由该主播终端发送至该远程桌面服务器。
在一实施例中,所述远程桌面服务器通过调用系统设备api(即远程桌面服务器的api)对系统声音进行捕获,一方面单独对所述系统声音进行编码封装发送给所述主播终端,以供其进行解码播放,另一方面根据主播所选择的与观众的互动场景确定是否对所述系统声音和所述音频数据进行合流与编码。
详细而言,远程桌面服务器通过建立虚拟麦克风,并将接收到主播语音输入至该虚拟麦克风后用于开黑。远程桌面服务器通过调用系统设备api对系统声音进行捕获,一方面单独对系统声音进行编码封装发送给主播终端,以供其进行解码处理,另一方面根据主播所选择的与观众的互动场景来确定是否对接收到的主播语音以及捕获的系统声音进行合流,具体如下:
1、主播选择与队友开黑的同时与观众进行沟通,或者主播选择不与队友开黑与观众进行沟通(“开黑”是一个游戏用语,是指玩游戏时可以语音或者面对面交流):远程桌面服务器在驱动层创建虚拟麦克风并将采集到的音频信息(如PCM格式)输入到虚拟麦克风,用于主播开黑等情况;另一方面对捕获到的系统音频以及接收到的主播终端采集的音频信息进行合流(即将两种音频的波纹合成一个波纹)编码,以进行后续的推流,音频编码格式可以为AAC(音质好、存储小,普及率高),也可以为G.711μ、Opus等;
2、主播选择开黑但不与观众进行沟通:远程桌面服务器在驱动层创建虚拟麦克风并将采集到的音频信息(如PCM格式)输入到虚拟麦克风,用于主播开黑等情况;另一方面对捕获到的系统音频单独进行编码封装,而不对接收到的主播终端采集的音频信息和系统音频进行合流编码封装等操作;
3、主播选择不开启语音:主播终端无需进行主播语音信息采集,远程桌面服务器既不需要在驱动层创建虚拟麦克风,只需对捕获到的系统音频进行编码以反馈给主播终端,并在编码后与视频信息进行封装推流。
在一实施例中,所述远程桌面服务器通过调用系统设备api对远程桌面图像进行捕获,并根据所述主播终端采集的主播头像窗口对观众的显示方式确定是否将所述远程桌面图像与所述主播终端采集到的图像数据进行合流与编码。
详细而言,远程桌面服务器通过调用系统api分别对远程桌面图像进行捕获,后根据主播选择对本地头像视频是否隐藏来选择图像处理方式:
1、主播在主播终端中选择隐藏本地头像窗口但在观众端显示:一方面远程桌面服务器直接对捕获的图像进行编码封装发送给主播终端,以供主播终端进行解码渲染;另一方面在接收到主播终端本地摄像头采集到的图像信息时,将该图像信息与实时捕获的桌面图像进行合流(即将接收到的摄像头图像信息通过纹理裁剪粘贴到远程桌面图像的特定位置、特定大小的视频框中,位置大小与主播在主播终端上摄像头窗口位置大小相对应),并将其压缩编码,与音频一起封装后进行推流,视频编码格式为H.264(普及性高、兼容性好、编码最快),也可以为H.265、MPEG-4等;
2、主播选择在本地和观众端都显示主播头像窗口:远程桌面服务器在接收到主播本地摄像头采集到的图像信息时,将该图像信息与实时捕获的桌面图像进行合流(即将接收到的主播终端摄像头图像信息通过纹理裁剪粘贴到远程桌面图像的特定位置、特定大小的视频框中,位置大小与主播在主播终端上摄像头窗口位置大小相对应),并将其压缩编码,视频编码格式为H.264(普及性高、兼容性好、编码最快),也可以为H.265、MPEG-4等,编码后的视频信息一方面封装发送给主播终端,以供客户端进行解码渲染,一方面与音频一起封装后进行推流;
3、主播选择在本地和观众端都隐藏头像窗口(或直接不开启摄像头):远程桌面服务器直接对捕获的图像进行编码,一方面封装后发送给主播终端,以供主播终端进行解码渲染,一方面与音频一起封装后进行推流,视频编码格式为H.264(普及性高、兼容性好、编码最快),也可以为H.265、MPEG-4等;
4、主播选择在本地显示头像窗口但在观众端隐藏(通常此类并无实施必要):远程桌面服务器直接对捕获的图像进行编码,一方面封装后发送给主播终端,主播终端在接收到图像信息后对其进行解码,一方面与音频一起封装后进行推流,视频编码格式为H.264(普及性高、兼容性好、编码最快),也可以为H.265、MPEG-4等。
承接上述,远程桌面服务器通过中控给出的推流地址将音视频数据包进行推流;推拉流与转码服务器将接收到的音视频数据解封装并按各不同层级的码率对视频转码并重新编码封装。
详细而言,远程桌面服务器对编码后的音、视频信息一起进行封装,封装的格式可以为FLV,并依据主播终端发送的推流地址采用RTMP协议(实时消息传送协议)推流到推拉流与转码服务器。RTMP是Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传输开发的开放协议,该协议建立在TCP协议或者轮询HTTP协议之上。RTMP协议就像一个用来装数据包的容器,这些数据既可以是AMF格式的数据,也可是FLV中的音视频数据。
推拉流与转码服务器在接收到音视频数据包后进行解封装,并按照不同层级的码率对视频解码后转码编码,并将不同码率的视频包与音频包进行再封装,另对于解压缩后的音频包保留一份以满足观众对于只聆听主播声音的需求。于此,转码的原因在于:在远程桌面服务器进行数据处理发送时都是按照同一标准进行处理,而若将此数据包直接让cdn边缘服务器分发时,会导致很多用户无法达到最好的观看效果,此时通过推拉流与转码服务器将视频码流转换成几个不同层级的码流,可以适应不同的网络带宽、不同的用户需求等,音频数据一般无需做特殊处理。
S23:在接收由观众终端发送的观看请求时,向所述观众终端返回拉流地址,以供所述观众终端通过所述拉流地址访问CDN节点进而向所述推拉流与转码服务器拉流,以获取经所述推拉流与转码服务器处理后的音视频流并解码播放。
详细而言,观众通过观众终端,包括但不限于智能手机、平板、笔记本电脑、台式电脑经过安装的远程桌面直播应用程序获取拉流地址;观众通过远程桌面直播应用程序向中控递交观看请求,中控在验证其账号的合法性后向其返回拉流地址。
观众终端本地播放器通过拉流地址访问CDN节点进而向推拉流与转码服务器拉流,获取音视频流进行解码播放。观众的远程桌面直播应用在接收到拉流地址后,进而连接到CDN节点通过HLS、HTTP、RTMP协议进行拉流,CDN节点向推拉流与转码服务器通过RTMP协议进行拉流。观众可以在向中控观看直播请求时同时发送对于清晰度、帧数等需求,中控返回的拉流地址包含中控根据一定的算法参照用户带宽计算出符合观众需求的码率(码率与分辨率、帧数、清晰度相互影响);或者在访问CDN节点时通过发送不同的参数以便拉取的视频流为最佳对应码率的视频流,如此观众可以观看多种清晰度(例如480p、720p等)的视频,并支持多人同时访问观看,实现一对多的分享互动。
另外,若只想听主播声音的直播,观众可以收到拉流地址后访问CDN节点时发送只听声音的需求,以便只向推拉流与转码服务器拉取单独的音频流,如此观众可以将应用挂载后台而只听取主播的声音。
参阅图3,本实施例提供一种电子设备,对应于图1所示的中控服务器。该电子设备可以是台式机、便携式电脑、智能手机等设备。详细的,该电子设备至少包括通过总线连接的:存储器、处理器,其中,存储器用于存储计算机程序,处理器用于执行存储器存储的计算机程序,以执行图2所介绍的步骤。
上述提到的系统总线可以是外设部件互连标准(Peripheral PomponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(Random Access Memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
综上,本发明的基于远程桌面的网络直播方法、直播系统及电子设备,基于远程桌面进行网络直播,降低了主播终端对硬件配置的高要求,提高了网络直播的用户体验,有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (10)

1.一种基于远程桌面的网络直播方法,其特征在于,包括:
中控服务器在接收由主播终端发送的请求时,向所述主播终端返回可用的远程桌面服务器的标识信息,以供所述主播终端根据所述标识信息与所述远程桌面服务器建立连接,并将主播音视频数据发送至所述远程桌面服务器进行处理;
所述中控服务器将推流地址提供至所述远程桌面服务器,以使所述远程桌面服务器将处理后的主播音视频数据推流至推拉流与转码服务器,以供所述推拉流与转码服务器将接收到的主播音视频数据进行处理;
所述中控服务器在接收由观众终端发送的观看请求时,向所述观众终端返回拉流地址,以供所述观众终端通过所述拉流地址访问CDN节点进而向所述推拉流与转码服务器拉流,以获取经所述推拉流与转码服务器处理后的音视频流并解码播放。
2.根据权利要求1所述的方法,其特征在于,所述远程桌面服务器包括:虚拟机或物理服务器;所述中控服务器在各所述虚拟机或物理服务器开机重启完成后,接收并存储各所述虚拟机或物理服务器的标识信息。
3.根据权利要求1所述的方法,其特征在于,每一所述推拉流与转码服务器为若干所述远程桌面服务器提供服务;所述中控服务器根据各所述推拉流与转码服务器的负载情况选择为各所述远程桌面服务器提供服务的推拉流与转码服务器。
4.根据权利要求1所述的方法,其特征在于,所述远程桌面服务器通过调用系统设备api对系统声音进行捕获,一方面单独对所述系统声音进行编码封装发送给所述主播终端,以供其进行解码播放,另一方面根据主播所选择的与观众的互动场景确定是否对所述系统声音和所述音频数据进行合流与编码。
5.根据权利要求1所述的方法,其特征在于,所述远程桌面服务器通过调用系统设备api对远程桌面图像进行捕获,一方面单独对所述远程桌面图像进行编码封装发送给所述主播终端,以供其进行解码渲染播放,另一方面根据所述主播终端采集的主播头像窗口对观众的显示方式确定是否将所述远程桌面图像与所述主播终端采集到的图像数据进行合流与编码。
6.根据权利要求4或5所述的方法,其特征在于,所述远程桌面服务器将编码后的音频数据和视频数据一起进行封装,通过实时消息传输协议推流至所述推拉流与转码服务器;CDN节点通过所述实时消息传输协议向所述推拉流与转码服务器进行拉流。
7.根据权利要求1所述的方法,其特征在于,所述推拉流与转码服务器对接收到的主播音视频数据进行处理,包括:
对接收到的主播音视频数据进行解封装并将视频数据转码成不同层级码率的主播视频数据并编码,音频数据不做处理;
将音频数据和按不同层级码率解码后的视频数据重新封装。
8.一种电子设备,其特征在于,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于加载执行所述计算机程序,以使所述电子设备:
在接收由主播终端发送的请求时,向所述主播终端返回可用的远程桌面服务器的标识信息,以供所述主播终端根据所述标识信息与所述远程桌面服务器建立连接,并将主播音视频数据发送至所述远程桌面服务器进行处理;
将推流地址提供至所述远程桌面服务器,以使所述远程桌面服务器将处理后的主播音视频数据推流至推拉流与转码服务器,以供所述推拉流与转码服务器将接收到的主播音视频数据进行处理;
在接收由观众终端发送的观看请求时,向所述观众终端返回拉流地址,以供所述观众终端通过所述拉流地址访问CDN节点进而向所述推拉流与转码服务器拉流,以获取经所述推拉流与转码服务器处理后的音视频流并解码播放。
9.一种基于远程桌面的网络直播系统,其特征在于,包括中控服务器及与所述中控服务器通信连接的:若干远程桌面服务器、若干推拉流与转码服务器,以及与若干所述推拉流与转码服务器通信连接的CDN节点;其中,
所述中控服务器在接收由主播终端发送的请求时,向所述主播终端返回可用的远程桌面服务器的标识信息,以供所述主播终端根据所述标识信息与所述远程桌面服务器建立连接,并将主播音视频数据发送至所述远程桌面服务器进行处理;
所述中控服务器将推流地址提供至所述远程桌面服务器,以使所述远程桌面服务器将处理后的主播音视频数据推流至推拉流与转码服务器,以供所述推拉流与转码服务器将接收到的主播音视频数据进行处理;
所述中控服务器在接收由观众终端发送的观看请求时,向所述观众终端返回拉流地址,以供所述观众终端通过所述拉流地址访问CDN节点进而向所述推拉流与转码服务器拉流,以获取经所述推拉流与转码服务器处理后的音视频流并解码播放。
10.根据权利要求9所述的系统,其特征在于,
所述远程桌面服务器通过调用系统设备api对系统声音进行捕获,一方面单独对所述系统声音进行编码封装发送给所述主播终端,以供其进行解码播放,另一方面根据主播所选择的与观众的互动场景确定是否对所述系统声音和所述音频数据进行合流与编码;
所述远程桌面服务器通过调用系统设备api对远程桌面图像进行捕获,一方面单独对所述远程桌面图像进行编码封装发送给所述主播终端,以供其进行解码渲染播放,另一方面根据所述主播终端采集的主播头像窗口对观众的显示方式确定是否将所述远程桌面图像与所述主播终端采集到的图像数据进行合流与编码;
所述远程桌面服务器将编码后的音频数据和视频数据一起进行封装,通过实时消息传输协议推流至所述推拉流与转码服务器;CDN节点通过所述实时消息传输协议向所述推拉流与转码服务器进行拉流。
CN202010785058.7A 2020-08-06 2020-08-06 基于远程桌面的网络直播方法、直播系统及电子设备 Pending CN113747181A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010785058.7A CN113747181A (zh) 2020-08-06 2020-08-06 基于远程桌面的网络直播方法、直播系统及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010785058.7A CN113747181A (zh) 2020-08-06 2020-08-06 基于远程桌面的网络直播方法、直播系统及电子设备

Publications (1)

Publication Number Publication Date
CN113747181A true CN113747181A (zh) 2021-12-03

Family

ID=78728014

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010785058.7A Pending CN113747181A (zh) 2020-08-06 2020-08-06 基于远程桌面的网络直播方法、直播系统及电子设备

Country Status (1)

Country Link
CN (1) CN113747181A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115022676A (zh) * 2022-04-01 2022-09-06 重庆创通联达智能技术有限公司 视频流的推送方法、装置、电子设备及可读介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104754366A (zh) * 2015-03-03 2015-07-01 腾讯科技(深圳)有限公司 音视频文件直播方法、装置和系统
CN105791958A (zh) * 2016-04-22 2016-07-20 北京小米移动软件有限公司 游戏直播方法及装置
CN106331733A (zh) * 2016-09-28 2017-01-11 广东科学技术职业学院 一种桌面云终端音视频数据实时处理方法及系统
CN108960773A (zh) * 2018-06-28 2018-12-07 腾讯科技(深圳)有限公司 业务管理方法、计算机设备和存储介质
CN109495771A (zh) * 2015-11-27 2019-03-19 北京奇虎科技有限公司 一种实现网络直播的方法和服务器
CN110213601A (zh) * 2019-04-30 2019-09-06 大鱼互联科技(深圳)有限公司 一种基于云游戏的直播系统及直播方法、直播互动方法
CN110536146A (zh) * 2019-08-19 2019-12-03 广州点云科技有限公司 一种基于云游戏的直播开播方法、装置以及存储介质
CN111225230A (zh) * 2020-02-20 2020-06-02 腾讯科技(深圳)有限公司 一种网络直播数据的管理方法以及相关装置
CN111314724A (zh) * 2020-02-18 2020-06-19 华为技术有限公司 云游戏直播方法和装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104754366A (zh) * 2015-03-03 2015-07-01 腾讯科技(深圳)有限公司 音视频文件直播方法、装置和系统
CN109495771A (zh) * 2015-11-27 2019-03-19 北京奇虎科技有限公司 一种实现网络直播的方法和服务器
CN105791958A (zh) * 2016-04-22 2016-07-20 北京小米移动软件有限公司 游戏直播方法及装置
CN106331733A (zh) * 2016-09-28 2017-01-11 广东科学技术职业学院 一种桌面云终端音视频数据实时处理方法及系统
CN108960773A (zh) * 2018-06-28 2018-12-07 腾讯科技(深圳)有限公司 业务管理方法、计算机设备和存储介质
CN110213601A (zh) * 2019-04-30 2019-09-06 大鱼互联科技(深圳)有限公司 一种基于云游戏的直播系统及直播方法、直播互动方法
CN110536146A (zh) * 2019-08-19 2019-12-03 广州点云科技有限公司 一种基于云游戏的直播开播方法、装置以及存储介质
CN111314724A (zh) * 2020-02-18 2020-06-19 华为技术有限公司 云游戏直播方法和装置
CN111225230A (zh) * 2020-02-20 2020-06-02 腾讯科技(深圳)有限公司 一种网络直播数据的管理方法以及相关装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115022676A (zh) * 2022-04-01 2022-09-06 重庆创通联达智能技术有限公司 视频流的推送方法、装置、电子设备及可读介质
CN115022676B (zh) * 2022-04-01 2024-02-13 重庆创通联达智能技术有限公司 视频流的推送方法、装置、电子设备及可读介质

Similar Documents

Publication Publication Date Title
EP3562163B1 (en) Audio-video synthesis method and system
CN107846633B (zh) 一种直播方法及系统
US10250664B2 (en) Placeshifting live encoded video faster than real time
US9350780B2 (en) Insertion of graphic overlays into a stream
CN112019927B (zh) 视频直播方法、连麦设备、直播系统及存储介质
US7720986B2 (en) Method and system for media adaption
CN105577819B (zh) 一种虚拟化桌面的分享系统、分享方法以及分享装置
CN110267064B (zh) 音频播放状态处理方法、装置、设备及存储介质
CN103179431A (zh) Vdi环境下音视频重定向转码分离方法
CN112565802B (zh) 直播交互方法、系统、服务器及存储介质
US20190116215A1 (en) System and methods for cloud storage direct streaming
CN111355976A (zh) 一种基于hevc标准的视频直播方法及系统
US11128739B2 (en) Network-edge-deployed transcoding methods and systems for just-in-time transcoding of media data
CN112423013B (zh) 在线互动方法、客户端、服务器、计算设备和存储介质
CN112261421B (zh) 虚拟现实的显示方法、装置、电子设备及存储介质
CN108494792A (zh) 一种flash播放器播放hls视频流的转换系统及其工作方法
CN113766251A (zh) 直播连麦的处理方法、系统、服务器及存储介质
CN103716681A (zh) 一种码流切换方法及电子设备
CN111510720A (zh) 实时流媒体数据的传输方法、电子装置及服务器
JP2002118831A (ja) マルチメディア視聴方法および装置
EP3316546B1 (en) Multimedia information live method and system, collecting device and standardization server
CN113747181A (zh) 基于远程桌面的网络直播方法、直播系统及电子设备
Wang et al. A study of live video streaming system for mobile devices
CN114554277B (zh) 多媒体的处理方法、装置、服务器及计算机可读存储介质
CN115134664A (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