CN112511884B - 一种音视频流的混流控制方法、系统和存储介质 - Google Patents

一种音视频流的混流控制方法、系统和存储介质 Download PDF

Info

Publication number
CN112511884B
CN112511884B CN201910871819.8A CN201910871819A CN112511884B CN 112511884 B CN112511884 B CN 112511884B CN 201910871819 A CN201910871819 A CN 201910871819A CN 112511884 B CN112511884 B CN 112511884B
Authority
CN
China
Prior art keywords
mixed
audio
stream
user
service module
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
Application number
CN201910871819.8A
Other languages
English (en)
Other versions
CN112511884A (zh
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.)
Jiangsu Huaiye Information Technology Co ltd
Original Assignee
Jiangsu Huaiye 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 Jiangsu Huaiye Information Technology Co ltd filed Critical Jiangsu Huaiye Information Technology Co ltd
Priority to CN201910871819.8A priority Critical patent/CN112511884B/zh
Publication of CN112511884A publication Critical patent/CN112511884A/zh
Application granted granted Critical
Publication of CN112511884B publication Critical patent/CN112511884B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • 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
    • 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/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • 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/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例公开了一种音视频流的混流控制方法、系统和存储介质,该方法包括:控制服务模块在接收到用户的客户端发送的混流房间进入请求消息时,根据混流房间进入请求消息确定用户混流信息,并将用户混流信息存储至预设缓存单元中;控制服务模块在接收到客户端发送的音视频流发布请求消息时,将生成的音视频流标识存储至预设缓存单元中,并向混流服务模块发送音视频流接收消息,以使混流服务模块接收客户端发布的音视频流;控制服务模块在混流服务模块均接收到混流房间中的每个用户的客户端发布的音视频流时,向混流服务模块发送混流开始消息,以使混流服务模块将各个音视频流进行混流操作,从而实现了逻辑拆分和业务解耦,提高资源利用率。

Description

一种音视频流的混流控制方法、系统和存储介质
技术领域
本发明实施例涉及计算机技术,尤其涉及一种音视频流的混流控制方法、系统和存储介质。
背景技术
随着计算机技术的快速发展,应用程序不断地进行优化升级,以提高应用程序的趣味性,满足用户日益增长的需求。比如,在直播网络平台中,可以将两个主播产生的音视频流进行混流,以便在客户端的显示界面中同时显示两个主播的视频画面,使得用户可以同时观看两个主播的直播内容。
现有技术中,往往是在同一个服务模块中进行音视频流的消息处理操作和混流操作,使得两者操作的业务耦合度较高,逻辑复杂,降低了混流效率,并且不便于独立地进行资源合理部署和研发,从而降低了资源利用率。
发明内容
本发明实施例提供了一种音视频流的混流控制方法、系统和存储介质,以对音视频流的消息处理操作和混流操作进行逻辑拆分和业务解耦,降低了模块部署复杂程度,从而提高了混流效率和资源利用率。
第一方面,本发明实施例提供了一种音视频流的混流控制方法,包括:
控制服务模块在接收到用户的客户端发送的混流房间进入请求消息时,根据所述混流房间进入请求消息确定用户混流信息,并将所述用户混流信息存储至预设缓存单元中,其中,混流房间包括至少两个所述用户;
所述控制服务模块在接收到所述客户端发送的音视频流发布请求消息时,根据所述音视频流发布请求消息,将生成的音视频流标识存储至所述预设缓存单元中,并向混流服务模块发送音视频流接收消息,以使所述混流服务模块接收所述客户端发布的音视频流;
所述控制服务模块在所述混流服务模块均接收到所述混流房间中的每个用户的客户端发布的音视频流时,根据每个所述音视频流对应的音视频流标识,向所述混流服务模块发送混流开始消息,以使所述混流服务模块将各个所述音视频流进行混流操作,获得混流后的目标音视频流。
第二方面,本发明实施例还提供了一种音视频流的混流控制系统,其特征在于,所述系统包括控制服务模块、混流服务模块和至少两个客户端;
其中,所述控制服务模块用于:在接收到每个用户的客户端发送的混流房间进入请求消息时,根据所述混流房间进入请求消息确定用户混流信息,并将所述用户混流信息存储至预设缓存单元中,其中,混流房间包括至少两个所述用户;在接收到所述客户端发送的音视频流发布请求消息时,根据所述音视频流发布请求消息,将生成的音视频流标识存储至所述预设缓存单元中,并向混流服务模块发送音视频流接收消息,以使所述混流服务模块接收所述客户端发布的音视频流;在所述混流服务模块均接收到所述混流房间中的每个用户的客户端发布的音视频流时,根据每个所述音视频流对应的音视频流标识,向所述混流服务模块发送混流开始消息,以使所述混流服务模块将各个所述音视频流进行混流操作,获得混流后的目标音视频流。
第三方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的音视频流的混流控制方法。
本发明实施例通过利用两个独立的控制服务模块和混流服务模块来分别负责对混流消息的处理操作和对多个音视频流的混流操作,实现了音视频流的消息处理操作和混流操作的逻辑拆分和业务解耦,使得业务逻辑更加清晰,降低了模块部署复杂程度。控制服务模块可以利用预设缓存单元维护同一混流房间中的用户混流数据,从而保证混流服务模块可以同时对多个混流房间进行音视频流的混流操作,并且可以通过部署不同数量的控制服务模块和混流服务模块来支撑对大量混流房间进行音视频流的混流控制,从而提高了混流效率和资源利用率。
附图说明
图1是本发明实施例一提供的一种音视频流的混流控制方法的流程图;
图2是本发明实施例二提供的一种音视频流的混流控制方法的流程图;
图3是本发明实施例二所涉及的一种对两个用户进行混流控制的示例。
图4是本发明实施例三提供的一种音视频流的混流控制系统的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种音视频流的混流控制方法的流程图,本实施例可适用于对至少两个用户发布的音视频流进行混流控制的情况,尤其可以用于直播网络平台中对至少两个主播发布的音视频流进行混流控制的场景。该方法可以由控制服务模块来执行,该模块可以由软件和/或硬件的方式来实现,可以集成于服务器中。该方法具体包括以下步骤:
S110、控制服务模块在接收到用户的客户端发送的混流房间进入请求消息时,根据混流房间进入请求消息确定用户混流信息,并将用户混流信息存储至预设缓存单元中,其中,混流房间包括至少两个用户。
其中,控制服务模块可以是指对混流消息进行处理,以控制混流操作的模块。混流服务模块可以是指对混流房间中的每个用户发布的音视频流进行混流的模块。需要说明的是,控制服务模块和混流服务模块可以集成在同一个服务器中,也可以集成在不同的服务器中,便于资源的合理部署。控制服务模块和混流服务模块的数量可以不同,其具体数量可以基于业务场景需求预先进行设置。
其中,混流房间进入请求消息可以是指用户申请进入某个混流房间的信令。混流房间进入请求消息可以包括但不限于混流房间标识、用户标识和用户身份。其中,用户身份可以包括主动邀请和被动邀请。混流房间标识可以是在某个用户邀请其他用户的过程中自动分配的房间标识,也可以是指主动邀请的用户所对应的用户标识。预设缓存单元可以是指控制服务模块中预先设置的,用于存储每个混流房间对应的各个用户混流信息。用户混流信息可以包括但不限于混流房间标识、用户标识、用户混流状态、用户身份、加入混流房间的时间戳、用户发布的音视频流标识和用户订阅的音视频流标识中的至少一种。用户混流状态可以包括已加入房间状态、已发布流状态、已订阅流状态和已混流状态。每个用户混流状态可以利用预设状态标识进行表征,以便节省存储空间。比如,利用数字“1”表征已加入房间状态。
具体地,当至少两个用户需要将各自发布的音视频流进行混流时,某个用户可以通过邀请服务模块向其他用户的发送混流邀请信息,此时该用户的用户身份为主动邀请,其他用户的用户身份为被动邀请。当其他用户同意进行混流时,可以向该用户发送邀请同意消息,并根据接收的混流邀请信息中的混流房间标识生成混流房间进入请求消息。该用户接收到邀请同意消息时,可以根据预先确定的混流房间标识生成混流房间进入请求消息,从而使得每个用户的客户端可以向控制服务模块发送进入同一个混流房间的混流房间进入请求消息。需要说明的是,每个用户发送的混流房间进入请求消息可以是同步的,也可以是不同步的。对于控制服务模块接收到的每个用户的客户端发送的混流房间进入请求消息而言,可以对接收的混流房间进入请求消息进行解析,确定出相应的用户混流消息,并将该用户混流消息存储至预设缓存单元中,以使同一个混流房间对应的各个用户混流消息存储至同一位置处。
示例性地,预设缓存单元的数据结构可以为两层嵌套式的键值对MAP结构,其中,外层键值对中的键位置用于存储混流房间标识;外层键值对中的值位置用于存储至少一个内层键值对的信息;每个内层键值对中的键位置用于存储用户标识;内层键值对中的值位置用于存储用户混流数据。其中,用户混流数据可以包括但不限于用户标识、用户混流状态、用户身份、加入混流房间的时间戳、用户发布的音视频流标识和用户订阅的音视频流标识中的至少一种。
相应地,根据混流房间进入请求消息确定用户混流信息,可以包括:对混流房间进入请求消息进行解析,获得用户对应的混流房间标识、用户标识和用户身份;将接收到混流房间进入请求消息的当前时刻确定为加入混流房间的时间戳,并将用户对应的用户混流状态确定为已加入房间状态。
具体地,在将用户混流信息存储至预设缓存单元中,可以先将用户混流信息中的混流房间标识与预设缓存单元中的每个外层键值对信息中的键信息进行匹配,以确定预设缓存单元中是否已存储有该混流房间标识,若匹配成功,则表明该混流房间对应的缓存位置已经创建,此时可以直接将用户混流信息中的用户标识、用户混流状态、用户身份和加入混流房间的时间戳作为一个内层键值对信息,存储至匹配成功的外层键值对中的值位置处。若均匹配失败,则创建该混流房间对应的两层嵌套式的键值对MAP结构,并将用户混流信息存储至新创建的两层嵌套式的键值对结构中,从而可以将同一个混流房间对应的用户混流信息存储至同一个外层键值对中。需要说明的是,每个外层键值对所包含的内层键值对的数量与混流房间所包含的用户数量相等。
示例性地,控制服务模块在将用户混流信息存储至预设缓存单元中之后,还可以向用户的客户端发送混流房间进入成功消息,以通知客户端成功加入混流房间中。
示例性地,控制服务模块可以实时检测预设时间内同一混流房间中的用户数量,当用户数量只有一个时,则表明其他用户未成功加入混流房间,此时可以将预设缓存单元中存储的该混流房间对应的用户混流信息进行删除,以停止后续的混流操作,节省资源和存储空间。
S120、控制服务模块在接收到客户端发送的音视频流发布请求消息时,根据音视频流发布请求消息,将生成的音视频流标识存储至预设缓存单元中,并向混流服务模块发送音视频流接收消息,以使混流服务模块接收客户端发布的音视频流。
其中,音视频流发布请求消息可以是指向混流服务模块请求发布音视频流的信令。音视频流发布请求消息可以包括但不限于混流房间标识和用户标识。音视频流标识可以是基于不同用户发送的音视频流发布请求消息实时生成的。
具体地,用户的客户端可以在接收到控制服务模块发送的混流房间进入成功消息时,向控制服务模块发送音视频流发布请求消息,以通过控制服务模块建立客户端与混流服务模块之间的发布通道,从而混流服务模块可以通过该发布通道接收客户端发布的音视频流。
示例性地,控制服务模块可以预先设置一个用于生成音视频流标识的全局变量StreamIDIdx,当每生成一次音视频流标识,全局变量StreamIDIdx便累加1。例如,当接收到某个用户的客户端发送的音视频流发布请求消息时,将当前的全局变量的数值作为该用户发布的音视频流所对应的音视频流标识,然后将全局变量累加1,以更新全局变量的数值。本实施例可以根据音视频流发布请求消息中的混流房间标识和用户标识确定出预设缓存单元中用于存储该用户的用户混流数据所对应的目标位置,比如预设缓存单元中外层键信息为该混流房间标识,且内层键信息为该用户标识时所对应的内层值位置。通过将生成的音视频流标识存储至预设缓存单元中该用户对应的目标位置处,以便后续可以从预设缓存单元中获得该用户对应的音视频流标识。
示例性地,控制服务模块可以根据音视频流发布请求消息中的客户端协议信息,检测客户端与混流服务模块是否满足连通条件,若是,则建立客户端与混流服务模块之间的发布通道,并向客户端发送音视频流发布成功消息,以及向混流服务模块发送音视频接收消息,以通知客户端通过该发布通道开始发布音视频流以及通知混流服务模块通过该发布通道开始接收所发布的音视频流。
需要说明的是,控制服务模块在向混流服务模块发送音视频流接收消息时,可以将预设缓存单元中存储的该用户对应的用户混流状态从已加入房间状态更新为已发布流状态,以便存储每个用户的当前用户混流状态,实现用户混流状态的动态维护。
S130、控制服务模块在混流服务模块均接收到混流房间中的每个用户的客户端发布的音视频流时,根据每个音视频流对应的音视频流标识,向混流服务模块发送混流开始消息,以使混流服务模块将各个音视频流进行混流操作,获得混流后的目标音视频流。
其中,混流操作可以是指将至少两路音视频流进行混合拼接为一路目标音视频流的操作。客户端通过显示目标音视频流,便可使得用户同时观看到混流房间中的各个用户的视频内容。
具体地,控制服务模块可以基于预设缓存单元中存储的每个混流房间中的各个用户混流状态,实时检测混流房间中的每个用户是否均成功发布了音视频流至混流服务模块中,即实时检测混流服务模块是否均接收到混流房间中的每个用户的客户端发布的音视频流。例如,若预设缓存单元中存储的某个混流房间中的每个用户的用户混流状态为已发布流状态,则表明混流服务模块均接收到了该混流房间中的每个用户的客户端发布的音视频流,此时可以向混流服务模块发送混流开始消息,以便通知混流服务模块开始进行混流操作,获得混流后的目标音视频流。
示例性地,将各个音视频流进行混流操作,获得混流后的目标音视频流,可以包括:对每个音视频流进行解码,并基于预设布局方式,将每个解码后的音视频流进行混合拼接为一个混合音视频流;基于预设格式对混合音视频流进行编码,并将编码后的混合音视频流确定为混流后的目标音视频流。其中,预设格式可以是指RTMP(Real Time MessagingProtocol,实时消息传输协议)所支持的格式,比如H.264(数字视频压缩格式)、AAC(Advanced Audio Coding,高级音频编码)格式。
示例性地,在获得混流后的目标音视频流之后,还可以包括:混流服务模块将目标音视频流推送至内容分发网络,以使除混流房间之外的其他用户通过内容分发网络获取目标音视频流。
具体地,混流服务模块可以将混流后的目标音视频流通过RTMP协议推送至内容分发网络(Content Delivery Network,CDN)中,从而除混流房间之外的其他用户的客户端可以从内容分发网络中获得目标音视频流,使得除混流房间之外的其他用户也可以观看到混流后的视频内容。
本实施例的技术方案,通过利用两个独立的控制服务模块和混流服务模块来分别负责对混流消息的处理操作和对多个音视频流的混流操作,实现了音视频流的消息处理操作和混流操作的逻辑拆分和业务解耦,使得业务逻辑更加清晰,降低了模块部署复杂程度。控制服务模块可以利用预设缓存单元维护同一混流房间中的用户混流数据,从而保证混流服务模块可以同时对多个混流房间进行音视频流的混流操作,并且可以通过部署不同数量的控制服务模块和混流服务模块来支撑对大量混流房间进行音视频流的混流控制,从而提高了混流效率和资源利用率。
在上述技术方案的基础上,在S110之前,还可以包括:客户端若检测到用户的用户身份为主动邀请,则将用户的用户标识作为混流房间标识;客户端若检测到用户的用户身份为被动邀请,则将预先获取的用户身份为主动邀请的用户标识作为混流房间标识;客户端根据用户对应的混流房间标识、用户标识和用户身份生成混流房间进入请求消息,并将混流房间进入请求消息发送至控制服务模块中。本实施例通过将用户身份为主动邀请的用户标识直接作为混流房间标识,可以进一步简化操作,提高混流效率。
在上述技术方案的基础上,在S110中的控制服务模块在将用户混流信息存储至预设缓存单元中之后,还可以包括:控制服务模块向客户端发送混流房间进入成功消息,并检测第二预设时间内是否接收到客户端发送的音视频流发布请求消息;若否,则将预设缓存单元中存储的用户混流信息进行删除。其中,第二预设时间可以是指等待用户分布音视频的最大时长。例如,第二预设时间可以为10秒。
具体地,当控制服务模块向客户端发送混流房间进入成功消息时,表明用户加入混流房间成功,此时可以检测在第二预设时间内是否接收到客户端发送的音视频流发布请求消息,若是,则继续进行后续的混流操作,若否,则表明用户的客户端出现异常,此时可以停止后续的混流操作,并将预设缓存单元中存储的该混流房间内的每个用户混流信息进行删除,销毁混流房间,从而可以避免长时间等待,节省资源和存储空间。
实施例二
图2为本发明实施例二提供的一种音视频流的混流控制方法的流程图,本实施例在上述实施例的基础上,对混流房间中的任意一个用户(即当前用户)的音视频流订阅控制方式进行了详细描述。其中与上述实施例相同或相应的术语的解释在此不再赘述。
参见图2,本实施例提供的音视频流的混流控制方法具体包括以下步骤:
S210、控制服务模块在接收到当前用户的当前客户端发送的混流房间进入请求消息时,根据混流房间进入请求消息确定当前用户混流信息,并将当前用户混流信息存储至预设缓存单元中。
其中,针对某个混流房间而言,可以将该混流房间中的任意一个用户作为当前用户。当前客户端可以是指当前用户所使用的客户端。
S220、控制服务模块在接收到当前客户端发送的当前音视频流发布请求消息时,根据当前音视频流发布请求消息,将生成的当前用户对应的第一音视频流标识存储至预设缓存单元中。
其中,第一音视频流标识可以是指第一音视频流所对应的音视频流标识,第一音视频流可以是指当前客户端发布的音视频流。
S230、控制服务模块向混流服务模块发送音视频流接收消息,以使混流服务模块接收当前用户的当前客户端发布的第一音视频流。
S240、控制服务模块获取混流房间中除当前用户之外的其他用户对应的第二音视频流标识。
其中,第二音视频流标识可以是指该混流房间中除了当前用户之外的其他任一用户的客户端发布的音视频流所对应的音视频流标识。
具体地,若当前用户相比于混流房间中的其他用户而言是后加入混流房间中的用户,则表明预设缓存单元中已经存储有针对其他用户生成的第二音视频流标识,此时可以基于混流房间标识,从预设缓存单元中获得其他用户的第二音视频流标识。若当前用户是最先加入混流房间中的用户,则表明当前还未生产混流房间中其他用户对应的第二音视频流标识,此时可以等待第二音视频流标识的生成,以便获得第二音视频流标识。本实施例可以将获得的第二音视频流标识作为用户订阅的音视频流标识,存储至预设缓存单元中当前用户对应的目标位置处,以便记录每个用户的订阅情况。
需要说明的是,此处不限定步骤S240执行时的执行顺序。比如步骤S240可以在步骤S230之后顺序执行,也可以在步骤S230之前执行,还可以与S230同时执行。
S250、控制服务模块将第二音视频流标识发送至当前用户的当前客户端,以使当前客户端根据第二音视频流标识生成音视频流订阅请求消息。
其中,音视频流订阅请求消息可以是指请求订阅其他用户发布的音视频流的信令,以便获得其他用户发布的音视频流。
具体地,控制服务模块在接收到当前客户端发送的混流房间进入请求消息或者音视频流发布请求消息后,会向当前客户端返回一个混流房间进入响应消息或者音视频流发布响应消息,比如混流房间进入成功消息或者音视频流发布成功消息。若控制服务模块在发送混流房间进入响应消息或者音视频流发布请求消息之前,获得了第二音视频流标识,则表明混流服务模块当前已经接收到了其他用户发布的第二音视频流,可以进行订阅,此时可以将第二音视频流标识添加至混流房间进入响应消息或者音视频流发布响应消息中,从而可以通过向当前客户端发送携带有第二音视频流标识的混流房间进入响应消息或者音视频流发布响应消息的方式,将第二音视频流标识发送至当前客户端中,以通知当前客户端可以订阅第二音视频流标识对应的第二音视频流。若控制服务模块在发送当前音视频流发布响应消息之后,获得了第二音视频流标识,则控制服务模块可以单独向当前客户端发送一个携带有第二音视频流标识的订阅通知消息,从而当前客户端可以根据接收的订阅通知消息获得待订阅的第二音视频流标识,并根据该第二音视频流标识生成音视频流订阅请求消息。
需要说明的是,若该混流房间除当前用户之外仅存在一个其他用户,则可以只需获得该其他用户对应的第二音视频流标识,以便当前用户可以订阅对方的音视频流。若该混流房间除当前用户之外存在至少两个其他用户,则需要逐个获得每个其他用户对应的第二音视频流标识,以使当前用户可以订阅每个其他用户发布的音视频流。
S260、控制服务模块在接收到当前客户端发送的音视频流订阅请求消息时,向混流服务模块发送音视频流推送消息,以使混流服务模块将接收的第二音视频流标识对应的第二音视频流发送至当前客户端中,使得当前客户端将混流房间中的每个用户发布的音视频流进行混合显示。
具体地,控制服务模块可以根据音视频流订阅请求消息,建立客户端与混流服务模块之间的订阅通道,使得混流服务模块可以通过该订阅通道向当前客户端发送第二音视频流。控制服务模块在建立订阅通道后,可以向当前客户端发送音视频流订阅成功消息,以便通知当前客户端可以开始接收混流服务模块发送的第二音视频流。同时,控制服务模块可以根据音视频流订阅请求消息中的第二音视频流标识生成音视频流推送消息,并将该音视频推送消息发送至混流服务模块中,使得混流服务模块可以根据音视频推送消息中的第二音视频流标识,将第二音视频流标识对应的第二音视频流开始推送至当前客户端中。在当前客户端接收到其他用户发布的第二音视频流时,可以基于预设显示布局方式,将自身发布的第一音视频流和每个其他用户发布的第二音视频流进行混合显示在显示界面中,比如,若混流房间包括两个用户,则将显示界面一分为二,获得两个显示子界面,在每个显示子界面中显示一个音视频流,从而达到混合显示的效果,使得混流房间中的每个用户均可以看到其他所有用户的视频画面。
需要说明的是,控制服务模块在向混流服务模块发送音视频流推送消息时,可以将预设缓存单元中存储的当前用户对应的用户混流状态从已发布流状态更新为已订阅流状态,以便存储每个用户的当前用户混流状态,实现用户混流状态的动态维护。
S270、控制服务模块在混流服务模块均接收到混流房间中的每个用户的客户端发布的音视频流时,根据每个音视频流对应的音视频流标识,向混流服务模块发送混流开始消息,以使混流服务模块将各个音视频流进行混流操作,获得混流后的目标音视频流。
示例性地,控制服务模块在向混流服务模块发送混流开始消息之后,还可以包括:检测第一预设时间内是否均接收到混流房间中的每个用户的客户端发送的音视频流订阅请求消息;若否,则向混流服务模块发送混流停止消息,以停止混流服务模块中的混流操作,并删除预设缓存单元存储的混流房间对应的各个用户混流信息。
具体地,可以基于预设缓存单元中存储的混流房间中的各个用户混流状态,实时检测混流房间中的每个用户是否均成功订阅了第二音视频流,即实时检测是否均接收到混流房间中的每个用户的客户端发布的音视频流订阅请求消息。例如,若预设缓存单元中存储的某个混流房间中的每个用户的用户混流状态为已订阅流状态,则表明控制服务模块均接收到了该混流房间中的每个用户的客户端发送的音视频流订阅请求消息,此时可以继续进行混流操作;若预设缓存单元中存储的某个混流房间中的每个用户的用户混流状态并不是已订阅流状态,则表明存在异常状态的用户,此时可以向混流服务模块发送混流停止消息,停止混流服务模块中的混流操作,同时也删除预设缓存单元存储的该混流房间对应的各个用户混流信息,从而可以避免只有混流房间之外的用户可以看到混流画面,以及节省资源和存储空间。
示例性地,本实施例中混流服务模块也可以将目标音视频流推送至内容分发网络,以使除混流房间之外的其他用户通过内容分发网络获取目标音视频流,从而使得混流房间内的每个用户以及混流房间外的每个用户均可以看到混流后的视频画面,比如可以使得混流房间内的每个主播以及混流房间外的每个观众均可以同时观看到多个主播的视频画面,大大提升了直播的趣味性。
本实施例的技术方案,通过控制服务模块向当前用户发送其他用户发布的第二音视频流标识,使得当前用户可以通过向控制服务模块发送音视频流订阅请求消息的方式,接收其他用户发布的第二音视频流,从而可以在当前客户端的显示界面上显示出混流房间内的各个用户的音视频流,降低了用户音视频混合显示的实现复杂度。
在上述技术方案的基础上,图3给出了一种对两个用户进行混流控制的示例。当第一用户邀请第二用户进行音视频流混合显示时,第一用户的第一客户端根据第一用户标识生成邀请消息,并将邀请消息通过邀请服务模块发送至第二用户的第二客户端,第二用户若同意进行混合显示,则向第一用户的第一客户端发送邀请同意消息。第一客户端接收到邀请同意消息时,可以将第一用户标识作为混流房间标识生成第一混流房间进入请求消息。第二客户端可以将邀请消息中的第一用户标识作为混流房间标识生成第二混流房间进入请求消息。如图3所示,对两个用户进行混流控制的过程可以包括如下步骤:
S310、第一客户端向控制服务模块发送第一混流房间进入请求消息。控制服务模块根据第一混流房间进入请求消息确定第一用户混流信息,并将第一用户混流信息存储至预设缓存单元中,并向第一客户端发送第一混流房间进入响应消息。
S320、第一客户端在接收到第一混流房间进入响应消息为混流房间进入成功消息时,向控制服务模块发送第一音视频流发布请求消息,控制服务模块根据第一音视频流发布请求消息生成对应的第三音视频流标识,并将第三音视频流标识存储至预设缓存单元中,并向第一客户端发送第一音视频流发布响应消息,以及向混流服务模块发送音视频流接收消息,以使混流服务模块接收第一客户端发布的第三音视频流。
S330、第二客户端向控制服务模块发送第二混流房间进入请求消息。控制服务模块根据第二混流房间进入请求消息确定第二用户混流信息,并将第二用户混流信息存储至预设缓存单元中,并将第三音视频流标识添加至第二混流房间进入响应消息中,向第二客户端发送携带有第三音视频流标识的第二混流房间进入响应消息,以使第二客户端获得第三音视频流标识。
S340、第二客户端在接收到第二混流房间进入响应消息为混流房间进入成功消息时,向控制服务模块发送第二音视频流发布请求消息,控制服务模块根据第二音视频流发布请求消息生成对应的第四音视频流标识,并将第四音视频流标识存储至预设缓存单元中,并向第二客户端发送第二音视频流发布响应消息,以及向混流服务模块发送音视频流接收消息,以使混流服务模块接收第二客户端发布的第四音视频流。
S350、控制服务模块根据第四音视频流标识生成订阅通知消息,并将该订阅通知消息发送至第一客户端,使得第一客户端获得第四音视频流标识。
S360、第一客户端根据第四音视频流标识生成第一音视频流订阅请求消息,并将第一音视频流订阅请求消息发送至控制服务模块,控制服务模块可以根据第四音视频流标识向混流服务模块发送音视频流推送消息,以使混流服务模块将接收的第四音视频流标识对应的第四音视频流发送第一客户端中,以及控制服务模块向第一客户端发送第一音视频流订阅响应消息。
S370、第二客户端根据第三音视频流标识生成第二音视频流订阅请求消息,并将第二音视频流订阅请求消息发送至控制服务模块,控制服务模块可以根据第三音视频流标识向混流服务模块发送音视频流推送消息,以使混流服务模块将接收的第三音视频流标识对应的第三音视频流发送第二客户端中,以及控制服务模块向第二客户端发送第二音视频流订阅响应消息。
S380、控制服务模块在检测到混流服务模块均接收到第三音视频流和第四音视频时,向混流服务模块发送混流开始消息,以使混流服务模块将第三音视频流和第四音视频进行混流操作,获得混流后的目标音视频流;混流服务模块可以将目标音视频流推送至内容分发网络,以使除混流房间之外的其他用户可以通过内容分发网络获取目标音视频流,从而使得其他用户也可以同时观看到混流房间内的每个用户的视频画面。
需要说明的是,本实施例并不限定上述步骤S310-S380的执行顺序,只要满足每个步骤的执行触发条件便可进行执行,上述流程的执行顺序仅是给出的一种实现方式。
以下是本发明实施例提供的音视频流的混流控制系统的实施例,该系统与上述各实施例的音视频流的混流控制方法属于同一个发明构思,在音视频流的混流控制系统的实施例中未详尽描述的细节内容,可以参考上述音视频流的混流控制方法的实施例。
实施例三
图4为本发明实施例三提供的一种音视频流的混流控制系统的结构示意图,系统包括控制服务模块410、混流服务模块420和至少两个客户端430。其中,每个客户端均与控制服务模块进行通信连接,混流服务模块与控制服务模块进行通信连接。
其中,控制服务模块410用于:在接收到每个用户的客户端发送的混流房间进入请求消息时,根据混流房间进入请求消息确定用户混流信息,并将用户混流信息存储至预设缓存单元中,其中,混流房间包括至少两个用户;在接收到客户端发送的音视频流发布请求消息时,根据音视频流发布请求消息,将生成的音视频流标识存储至预设缓存单元中,并向混流服务模块发送音视频流接收消息,以使混流服务模块接收客户端发布的音视频流;在混流服务模块均接收到混流房间中的每个用户的客户端发布的音视频流时,根据每个音视频流对应的音视频流标识,向混流服务模块发送混流开始消息,以使混流服务模块将各个音视频流进行混流操作,获得混流后的目标音视频流。
可选地,混流服务模块420还用于:在获得混流后的目标音视频流之后,将目标音视频流推送至内容分发网络,以使除混流房间之外的其他用户通过内容分发网络获取目标音视频流。
可选地,控制服务模块410还用于:
在将当前用户对应的第一音视频流标识存储至预设缓存单元后,获取混流房间中除当前用户之外的其他用户对应的第二音视频流标识;将第二音视频流标识发送至当前用户的当前客户端,以使当前客户端根据第二音视频流标识生成音视频流订阅请求消息;在接收到当前客户端发送的音视频流订阅请求消息时,向混流服务模块发送音视频流推送消息,以使混流服务模块将接收的第二音视频流标识对应的第二音视频流发送至当前客户端中,使得当前客户端将混流房间中的每个用户发布的音视频流进行混合显示。
可选地,控制服务模块410还用于:在向混流服务模块发送混流开始消息之后,检测第一预设时间内是否均接收到混流房间中的每个用户的客户端发送的音视频流订阅请求消息;若否,则向混流服务模块发送混流停止消息,以停止混流服务模块中的混流操作,并删除预设缓存单元存储的混流房间对应的各个用户混流信息。
可选地,客户端430用于:若检测到用户的用户身份为主动邀请,则将用户的用户标识作为混流房间标识;若检测到用户的用户身份为被动邀请,则将预先获取的用户身份为主动邀请的用户标识作为混流房间标识;根据用户对应的混流房间标识、用户标识和用户身份生成混流房间进入请求消息,并将混流房间进入请求消息发送至控制服务模块中。
可选地,预设缓存单元的数据结构为两层嵌套式的键值对MAP结构,其中,外层键值对中的键位置用于存储混流房间标识;外层键值对中的值位置用于存储至少一个内层键值对的信息;每个内层键值对中的键位置用于存储用户标识;内层键值对中的值位置用于存储用户混流数据。
可选地,用户混流数据包括用户标识、用户混流状态、用户身份、加入混流房间的时间戳、用户发布的音视频流标识和用户订阅的音视频流标识中的至少一种;其中,用户混流状态包括已加入房间状态、已发布流状态、已订阅流状态和已混流状态;用户身份包括主动邀请和被动邀请。
可选地,控制服务模块410还用于:在将用户混流信息存储至预设缓存单元中之后,向客户端发送混流房间进入成功消息,并检测第二预设时间内是否接收到客户端发送的音视频流发布请求消息;若否,则将预设缓存单元中存储的用户混流信息进行删除。
本发明实施例所提供的音视频流的混流控制系统可执行本发明任意实施例所提供的音视频流的混流控制方法,具备执行音视频流的混流控制方法相应的功能模块和有益效果。
实施例四
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的音视频流的混流控制方法步骤,该方法包括:
控制服务模块在接收到用户的客户端发送的混流房间进入请求消息时,根据混流房间进入请求消息确定用户混流信息,并将用户混流信息存储至预设缓存单元中,其中,混流房间包括至少两个用户;
控制服务模块在接收到客户端发送的音视频流发布请求消息时,根据音视频流发布请求消息,将生成的音视频流标识存储至预设缓存单元中,并向混流服务模块发送音视频流接收消息,以使混流服务模块接收客户端发布的音视频流;
控制服务模块在混流服务模块均接收到混流房间中的每个用户的客户端发布的音视频流时,根据每个音视频流对应的音视频流标识,向混流服务模块发送混流开始消息,以使混流服务模块将各个音视频流进行混流操作,获得混流后的目标音视频流。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (9)

1.一种音视频流的混流控制方法,其特征在于,包括:
控制服务模块在接收到用户的客户端发送的混流房间进入请求消息时,根据所述混流房间进入请求消息确定用户混流信息,并将所述用户混流信息存储至预设缓存单元中,其中,混流房间包括至少两个所述用户;
所述控制服务模块在接收到所述客户端发送的音视频流发布请求消息时,根据所述音视频流发布请求消息,将生成的音视频流标识存储至所述预设缓存单元中,并向混流服务模块发送音视频流接收消息,以使所述混流服务模块接收所述客户端发布的音视频流;
所述控制服务模块在所述混流服务模块均接收到所述混流房间中的每个用户的客户端发布的音视频流时,根据每个所述音视频流对应的音视频流标识,向所述混流服务模块发送混流开始消息,以使所述混流服务模块将各个所述音视频流进行混流操作,获得混流后的目标音视频流;
所述预设缓存单元是控制服务模块预先设置,用于存储混流房间对应的各个用户混流信息;
所述控制服务模块在将所述用户混流信息存储至预设缓存单元中之后,还包括:
所述控制服务模块向所述客户端发送混流房间进入成功消息,并检测第二预设时间内是否接收到所述客户端发送的音视频流发布请求消息;
若否,则将所述预设缓存单元中存储的用户混流信息进行删除。
2.根据权利要求1所述的方法,其特征在于,在获得混流后的目标音视频流之后,还包括:
所述混流服务模块将所述目标音视频流推送至内容分发网络,以使除所述混流房间之外的其他用户通过所述内容分发网络获取所述目标音视频流。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述控制服务模块在将当前用户对应的第一音视频流标识存储至预设缓存单元后,获取所述混流房间中除所述当前用户之外的其他用户对应的第二音视频流标识;
所述控制服务模块将所述第二音视频流标识发送至所述当前用户的当前客户端,以使所述当前客户端根据所述第二音视频流标识生成音视频流订阅请求消息;
所述控制服务模块在接收到所述当前客户端发送的音视频流订阅请求消息时,向所述混流服务模块发送音视频流推送消息,以使所述混流服务模块将接收的所述第二音视频流标识对应的第二音视频流发送至所述当前客户端中,使得所述当前客户端将所述混流房间中的每个用户发布的音视频流进行混合显示。
4.根据权利要求3所述的方法,其特征在于,在向所述混流服务模块发送混流开始消息之后,还包括:
所述控制服务模块检测第一预设时间内是否均接收到所述混流房间中的每个用户的客户端发送的音视频流订阅请求消息;
若否,则向所述混流服务模块发送混流停止消息,以停止所述混流服务模块中的混流操作,并删除所述预设缓存单元存储的所述混流房间对应的各个用户混流信息。
5.根据权利要求1所述的方法,其特征在于,控制服务模块在接收到用户的客户端发送的混流房间进入请求消息之前,还包括:
所述客户端若检测到所述用户的用户身份为主动邀请,则将所述用户的用户标识作为混流房间标识;
所述客户端若检测到所述用户的用户身份为被动邀请,则将预先获取的用户身份为主动邀请的用户标识作为混流房间标识;
所述客户端根据所述用户对应的混流房间标识、用户标识和用户身份生成混流房间进入请求消息,并将所述混流房间进入请求消息发送至所述控制服务模块中。
6.根据权利要求1所述的方法,其特征在于,所述预设缓存单元的数据结构为两层嵌套式的键值对MAP结构,其中,外层键值对中的键位置用于存储混流房间标识;所述外层键值对中的值位置用于存储至少一个内层键值对的信息;每个内层键值对中的键位置用于存储用户标识;所述内层键值对中的值位置用于存储用户混流数据。
7.根据权利要求6所述的方法,其特征在于,所述用户混流数据包括用户标识、用户混流状态、用户身份、加入混流房间的时间戳、用户发布的音视频流标识和用户订阅的音视频流标识中的至少一种;
其中,所述用户混流状态包括已加入房间状态、已发布流状态、已订阅流状态和已混流状态;所述用户身份包括主动邀请和被动邀请。
8.一种音视频流的混流控制系统,其特征在于,所述系统包括控制服务模块、混流服务模块和至少两个客户端;
其中,所述控制服务模块用于:在接收到每个用户的客户端发送的混流房间进入请求消息时,根据所述混流房间进入请求消息确定用户混流信息,并将所述用户混流信息存储至预设缓存单元中,其中,混流房间包括至少两个所述用户;在接收到所述客户端发送的音视频流发布请求消息时,根据所述音视频流发布请求消息,将生成的音视频流标识存储至所述预设缓存单元中,并向混流服务模块发送音视频流接收消息,以使所述混流服务模块接收所述客户端发布的音视频流;在所述混流服务模块均接收到所述混流房间中的每个用户的客户端发布的音视频流时,根据每个所述音视频流对应的音视频流标识,向所述混流服务模块发送混流开始消息,以使所述混流服务模块将各个所述音视频流进行混流操作,获得混流后的目标音视频流;所述预设缓存单元是控制服务模块预先设置,用于存储混流房间对应的各个用户混流信息;还用于:在将用户混流信息存储至预设缓存单元中之后,向客户端发送混流房间进入成功消息,并检测第二预设时间内是否接收到客户端发送的音视频流发布请求消息;若否,则将预设缓存单元中存储的用户混流信息进行删除。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的音视频流的混流控制方法。
CN201910871819.8A 2019-09-16 2019-09-16 一种音视频流的混流控制方法、系统和存储介质 Active CN112511884B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910871819.8A CN112511884B (zh) 2019-09-16 2019-09-16 一种音视频流的混流控制方法、系统和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910871819.8A CN112511884B (zh) 2019-09-16 2019-09-16 一种音视频流的混流控制方法、系统和存储介质

Publications (2)

Publication Number Publication Date
CN112511884A CN112511884A (zh) 2021-03-16
CN112511884B true CN112511884B (zh) 2023-11-03

Family

ID=74923889

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910871819.8A Active CN112511884B (zh) 2019-09-16 2019-09-16 一种音视频流的混流控制方法、系统和存储介质

Country Status (1)

Country Link
CN (1) CN112511884B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114979697B (zh) * 2022-07-29 2022-09-30 北京云中融信网络科技有限公司 一种用于解耦信令服务器和音视频服务器的系统和方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104717552A (zh) * 2015-03-31 2015-06-17 北京奇艺世纪科技有限公司 一种用于直播的音视频的发布方法及装置
WO2017071566A1 (zh) * 2015-10-26 2017-05-04 中兴通讯股份有限公司 网络视频播放方法和系统及用户终端、家庭流服务节点
CN108259948A (zh) * 2018-03-30 2018-07-06 武汉斗鱼网络科技有限公司 一种直播音视频的播放方法、装置、计算机及存储介质
CN109391851A (zh) * 2018-01-09 2019-02-26 深圳市珍爱网信息技术有限公司 视频直播方法、装置、计算机设备和存储介质
CN109587450A (zh) * 2018-12-20 2019-04-05 北京明朝万达科技股份有限公司 视频数据传输方法和系统
WO2019075581A1 (en) * 2017-10-19 2019-04-25 Lazar Entertainment Inc. SYSTEMS AND METHODS FOR LIVE MULTIMEDIA STREAM BROADCAST
CN109977139A (zh) * 2019-03-18 2019-07-05 京东数字科技控股有限公司 基于类结构化查询语句的数据处理方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104717552A (zh) * 2015-03-31 2015-06-17 北京奇艺世纪科技有限公司 一种用于直播的音视频的发布方法及装置
WO2017071566A1 (zh) * 2015-10-26 2017-05-04 中兴通讯股份有限公司 网络视频播放方法和系统及用户终端、家庭流服务节点
WO2019075581A1 (en) * 2017-10-19 2019-04-25 Lazar Entertainment Inc. SYSTEMS AND METHODS FOR LIVE MULTIMEDIA STREAM BROADCAST
CN109391851A (zh) * 2018-01-09 2019-02-26 深圳市珍爱网信息技术有限公司 视频直播方法、装置、计算机设备和存储介质
CN108259948A (zh) * 2018-03-30 2018-07-06 武汉斗鱼网络科技有限公司 一种直播音视频的播放方法、装置、计算机及存储介质
CN109587450A (zh) * 2018-12-20 2019-04-05 北京明朝万达科技股份有限公司 视频数据传输方法和系统
CN109977139A (zh) * 2019-03-18 2019-07-05 京东数字科技控股有限公司 基于类结构化查询语句的数据处理方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于WebRTC的远程教育系统的设计与实现;李庆建;《硕士论文电子期刊》;20190915;其正文第1页-第60页最后一行 *

Also Published As

Publication number Publication date
CN112511884A (zh) 2021-03-16

Similar Documents

Publication Publication Date Title
US9807143B2 (en) Systems and methods for event routing and correlation
US9621958B2 (en) Deferred, on-demand loading of user presence within a real-time collaborative service
CN112511783A (zh) 音视频流的混合显示方法、装置、服务器和存储介质
CN110324655B (zh) 一种直播间客户端的连线方法、装置、设备及存储介质
US10038664B2 (en) Terminal status subscription method, apparatus, and system
JP7490124B2 (ja) インタラクション方法、装置及び電子機器
CN112104884A (zh) 消息推送方法、装置及电子设备
JP2023518780A (ja) インタラクション方法、装置及び電子機器
CN113542337B (zh) 信息共享方法、装置、电子设备及存储介质
CN112291502A (zh) 信息交互方法、装置、系统和电子设备
CN113926185A (zh) 一种数据处理方法、装置、设备及存储介质
CN112511884B (zh) 一种音视频流的混流控制方法、系统和存储介质
CN108668151B (zh) 音视频交互方法及装置
CN108668140B (zh) 音视频交互状态同步方法及装置
CN113115065B (zh) 一种基于直播的数据处理方法及装置
CN112866622B (zh) 信息处理方法、装置、服务器、存储介质和系统
CN115802007A (zh) 基于rtsp协议的监控系统控制方法、设备及可读存储介质
CN113055636B (zh) 一种数据处理方法及会议系统
CN112291573B (zh) 直播流推送方法、装置、电子设备和计算机可读介质
CN110138574B (zh) 群管理方法、装置、电子设备及可读存储介质
WO2023197897A1 (zh) 直播音视频流的处理方法、装置、设备及介质
US11870830B1 (en) Embedded streaming content management
US11778011B2 (en) Live streaming architecture with server-side stream mixing
CN114554230B (zh) 连麦状态处理方法、装置、终端、计算机设备及存储介质
KR101174061B1 (ko) 참여형 방송 서비스 제공 방법 및 장치

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
TA01 Transfer of patent application right

Effective date of registration: 20231007

Address after: 213000 No. 11 Qingyang North Road, Tianning District, Changzhou City, Jiangsu Province

Applicant after: Jiangsu huaiye Information Technology Co.,Ltd.

Address before: 11 / F, building B1, software industry phase 4.1, No.1, Software Park East Road, Donghu Development Zone, Wuhan City, Hubei Province 430070

Applicant before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant