CN113038287A - 多人视频直播业务实现方法、装置、计算机设备 - Google Patents
多人视频直播业务实现方法、装置、计算机设备 Download PDFInfo
- Publication number
- CN113038287A CN113038287A CN201911251118.0A CN201911251118A CN113038287A CN 113038287 A CN113038287 A CN 113038287A CN 201911251118 A CN201911251118 A CN 201911251118A CN 113038287 A CN113038287 A CN 113038287A
- Authority
- CN
- China
- Prior art keywords
- video
- live
- frame
- live broadcast
- synthesized
- 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.)
- Granted
Links
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/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling 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/2365—Multiplexing of several video streams
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/23418—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2668—Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
-
- 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44016—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
Abstract
本发明公开了一种多人视频直播业务实现方法、装置、计算机设备及可读存储介质,属于视频处理技术领域。本发明的多人视频直播业务实现方法包括:获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频;将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流;将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。本发明可以增加直播成员的交互方式,提升用户体验。
Description
技术领域
本发明涉及视频处理技术领域,尤其涉及一种多人视频直播业务实现方法、装置、计算机设备。
背景技术
随着直播行业的快速发展,越来越多的用户喜爱观看直播。目前,直播群中的各个观看直播的用户的沟通方式仅限于在直播间中发送文字信息(即弹幕)进行交流,不能观看到其他用户的直播视频,从而使得各个直播用户之间的交互方式比较单一,造成用户的使用体验较差。
发明内容
有鉴于此,现提供一种多人视频直播业务实现方法、装置、计算机设备及计算机可读存储介质,以解决现有方法在进行视频直播时,不能观看到其他用户的直播视频的问题。
本发明提供了一种多人视频直播业务实现方法,包括:
获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频,其中,所述第一视频包括通过所述直播主播的第一摄像装置采集到的实时画面,所述第二视频包括所述直播主播观看的视频,所述第三视频包括通过所述其他直播成员的第二摄像装置采集到的实时画面;
将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流,其中,所述多人直播视频流中的每一帧画面均包含所述第一视频中的帧画面、所述第二视频中的帧画面、以及所述其他直播成员的第三视频中的帧画面;
将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。
可选地,在进行拼接时,通过检测线程对所述第一视频以及所述其他直播成员的第三视频进行人脸检测,并在检测到人脸后,通过渲染线程对检测到的人脸区域进行渲染。
可选地,所述第二视频的视频类型为变装类视频,对所述多人直播视频流中的每一帧画面的合成包括:
判断所述第二视频中的第二待合成视频帧对应的时间戳是否为预设时间戳;
若是,则对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行人脸检测;
在检测到人脸后,在检测到的人脸上添加预设的贴纸特效,以得到包含贴纸特效的待合成视频帧,其中,对未检测到人脸的待合成视频帧不添加贴纸特效;
将所述第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
可选地,所述第二视频的视频类型为挑战类视频,对所述多人直播视频流中的每一帧画面的合成包括:
对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行表情识别;
在识别出预设表情时,在识别出预设表情的待合成视频帧中添加预设的贴纸特效,其中,对未识别出预设表情的待合成视频帧不添加贴纸特效;
将所述第二视频中的第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
可选地,所述第二视频的视频类型为猜剧情类视频,对所述多人直播视频流中的每一帧画面的合成包括::
检测是否接收到所述直播群中的任一直播成员发送的剧情猜测消息;
若是,则将所述剧情猜测消息添加至第二视频中的第二待合成视频帧中;
将包含所述剧情猜测消息的第二待合成视频帧与所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
可选地,所述多人视频直播业务实现方法还包括:
将所述多人直播视频流分发至CDN网络中。
可选地,所述多人视频直播业务实现方法还包括:
对所述多人直播视频流进行降码率处理。
本发明还提供了一种多人视频直播业务实现装置,包括:
获取模块,用于获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频,其中,所述第一视频包括通过所述直播主播的第一摄像装置采集到的实时画面,所述第二视频包括所述直播主播观看的视频,所述第三视频包括通过所述其他直播成员的第二摄像装置采集到的实时画面;
拼接模块,用于将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流,其中,所述多人直播视频流中的每一帧画面均包含所述第一视频中的帧画面、所述第二视频中的帧画面、以及所述其他直播成员的第三视频中的帧画面;
发送模块,用于将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。
本发明还提供了一种计算机设备,所述计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
上述技术方案的有益效果:
本发明实施例中,通过获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频;将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流;将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。本发明实施例中的多人视频直播业务实现方法,各个直播成员可以在其直播客户端的显示界面上观看到所有直播成员的直播视频画面,并且还可以共同与直播主播同时观看视频,从而可以增加直播成员的交互方式,提升用户体验。
附图说明
图1为本发明所述多人视频直播业务实现的系统框架图的一种实施例的框架图;
图2为本发明所述的多人视频直播业务实现方法的一种实施例的流程图;
图3为本发明一实施方式中对所述多人直播视频流中的每一帧画面的合成的步骤细化流程图;
图4为本发明一实施方式中进行拼接后得到的多人直播流中的帧画面的示意图;
图5为本发明另一实施方式中进行拼接后得到的多人直播流中的帧画面的示意图;
图6为本发明另一实施方式中对所述多人直播视频流中的每一帧画面的合成的步骤细化流程图;
图7为本发明另一实施方式中进行拼接后得到的多人直播流中的帧画面的示意图;
图8为本发明另一实施方式中对所述多人直播视频流中的每一帧画面的合成的步骤细化流程图;
图9为本发明另一实施方式中进行拼接后得到的多人直播流中的帧画面的示意图;
图10为本发明所述的多人视频直播业务实现方法的另一种实施例的流程图;
图11为本发明所述的多人视频直播业务实现方法的另一种实施例的流程图;
图12为本发明所述的多人视频直播业务实现装置的一种实施例的模块图;
图13为本发明实施例提供的执行多人视频直播业务实现方法的计算机设备的硬件结构示意图。
具体实施方式
以下结合附图与具体实施例进一步阐述本发明的优点。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在本发明的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本发明及区别每一步骤,因此不能理解为对本发明的限制。
图1示意性示出了根据本申请实施例的多人视频直播业务实现方法的应用环境示意图。在示例性的实施例中,该应用环境的系统可包括直播主播终端10、直播参与者(即直播群中除主播直播之外的直播成员)终端20、服务器30。其中,直播主播终端10、直播参与者终端20与服务器30形成无线或有线连接,且直播主播终端10、直播参与者终端20上具有相应的应用客户端或网页客户端,直播主播终端10、直播参与者终端2通过应用客户端或网页客户端将直播视频流上传至服务器30,从而可以触发服务器30执行多人视频直播业务实现方法。其中,直播主播终端10、直播参与者终端20可以为PC、手机、iPAD,平板电脑、笔记本电脑、个人数字助理等。
参阅图2,其为本发明一实施例的多人视频直播业务实现方法的流程示意图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。下面以服务器为执行主体进行示例性描述,从图中可以看出,本实施例中所提供的多人视频直播业务实现方法包括:
步骤S20、获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频,其中,所述第一视频包括通过所述直播主播的第一摄像装置采集到的实时画面,所述第二视频包括所述直播主播观看的视频,所述第三视频包括通过所述其他直播成员的第二摄像装置采集到的实时画面。
具体地,本发明实施例在进行多人直播业务时,直播主播以及直播群中除直播主播之外的各个直播成员分别通过其直播客户端将直播视频流上传至服务器。
其中,第一摄像装置可以为直播主播终端内置的摄像装置(比如摄像头),也可以为直播主播终端外接的摄像装置,通过该第一摄像装置可以采集到第一视频,该第一视频为直播主播当前的直播画面,即为通过该第一摄像装置采集的实时画面。优选地,该第一视频包括直播主播的人脸。所述直播主播观看的第二视频为直播主播通过直播主播终端播放的想同其他直播成员共同观看的视频,该视频可以为本地视频,也可以为网络视频。该第二视频的类型可以为多种,比如为变装类视频,挑战类视频、猜剧情类视频等。第二摄像装置可以为直播参与者(所述其他直播成员)终端内置的摄像装置(比如摄像头),也可以为直播参与者终端外接的摄像装置,通过该第二摄像装置可以采集到第三视频,该第三视频为直播参与者当前的直播画面,即通过该第二摄像装置采集到的实时画面。优选地,该第三视频包括直播参与者的人脸。
需要说明的是,本发明实施例在进行多人直播业务之前,需要先通过直播主播创建直播群,以供多个直播参与者加入到该直播群中。在多个直播参与者加入到该直播群之后,该直播主播可以进行多人直播业务。
步骤S21,将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流,其中,所述多人直播视频流中的每一帧画面均包含所述第一视频中的帧画面、所述第二视频中的帧画面、以及所述其他直播成员的第三视频中的帧画面。
具体地,在进行拼接时,是一帧一帧进行的,首先,获取第一视频、第二视频以及其他直播成员的第三视频中的第一帧画面,然后将获取到的各个第一帧画面进行拼接以得到多人直播视频流中的第一帧画面。也就是说,合成后的多人直播视频流中的第一帧画面包括各个直播成员的直播视频帧画面,这样,每个直播成员即可在直播客户端的显示界面中看到各个直播成员的直播画面。
在一实施方式中,在进行拼接时,可以根据直播成员的数量将合成得到的多人直播视频流中的帧画面分成与所述直播成员的数量相对应的显示块,比如,直播群中具有6个直播成员,则可以将多人直播视频流中的帧画面分成7块,其中6块帧画面用于显示直播成员的视频帧,另一块帧画面则用于显示直播主播观看的视频的帧画面,每个直播成员观看多人直播视频流的效果即是在直播客户端的显示界面上看到6个直播成员的直播画面,以及看到直播主播观看的视频的帧画面。
需要说明的是,在完成多人直播视频流中的第一帧画面的合成后,继续获取第一视频、第二视频以及其他直播成员的第三视频中的第二帧画面,然后将获取到的各个第二帧画面进行拼接以得到多人直播视频流中的第二帧画面。以此类推,直到完成多人直播视频流中的所有帧画面的合成。
在本发明一实施方式中,为了使得各个直播成员在观看的多人直播视频流时,不会产生视频卡顿的效果,可以在进行拼接时,通过检测线程对第一视频以及所述其他直播成员的第三视频进行人脸检测,并在检测到人脸之后,通过渲染线程对检测到的人脸区域进行渲染。本发明实施例中相对于现有技术采用一个线程进行视频的合成处理,采用多线程进行视频的合成处理,可以节省视频的合成时间,进而可以在观看多人直播视频流时产生视频卡顿。
需要说明的是,在本发明其他实施方式中,在进行拼接时,也可以采用更多的线程对待合成的视频帧进行处理,以得到多人直播视频流。
示例性的,在一实施方式中,参照图3,所述第二视频的视频类型为变装类视频,对所述多人直播视频流中的每一帧画面的合成包括:
步骤S30,判断所述第二视频中的第二待合成视频帧对应的时间戳是否为预设时间戳。
具体地,在第二视频的视频类型为变装类视频时,在对所述多人直播视频流中的每一帧画面的合成过程中,首先需要判断所述第二视频中的第二待合成视频帧对应的时间戳是否为预设的时间戳。在本实施例中,可以通过直接获取该第二待合成视频帧中的时间戳信息,然后将获取到的时间戳信息与预设时间戳进行比较的方式来判定第二待合成视频帧对应的时间戳与预设时间戳是否相同。在本发明实施例中,所述预设时间戳可以为直播主播预先设定的一个或多个时间点,也可以为系统预先默认设定的一个或者多个时间点,在本发明实施方式中不作限定。
其中,变装类视频指的是直播用户在观看该类视频时,在观看到视频播放到特定时间点时,服务器会为各个直播用户添加对应的贴纸特效,从而实现变装。
需要说明的是,所述第二待合成视频帧为所述第二视频中的当前待合成视频帧,比如,当前正在合成多人视频直播流中的第一帧画面,则所述第二待合成视频帧即为所述第二视频中的第一帧画面;又比如,当前正在合成多人视频直播流中的第三帧画面,则所述第二待合成视频帧即为所述第二视频中的第三帧画面。
步骤S31,若是,则对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行人脸检测。
具体地,在判定出所述第二待合成视频对应的时间戳为预设时间戳时,则可以采用人脸识别模型对第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行人脸检测,其中,所述人脸识别模型为现有的用于检测人脸的模型,在本实施了中不再赘述。
需要说明的是,所述第一待合成视频帧、所述第三待合成视频帧依次为所述第一视频中的当前待合成视频帧、所述第三视频中的当前待合成视频帧,比如,当前正在合成多人视频直播流中的第一帧画面,则所述第一待合成视频帧即为所述第一视频中的第一帧画面,所述第三待合成视频帧即为所述第三视频中的第一帧画面;又比如,当前正在合成多人视频直播流中的第三帧画面,则所述第一待合成视频帧即为所述第一视频中的第三帧画面,所述第三待合成视频帧即为所述第三视频中的第三帧画面。
在本发明实施例中,在判定出所述第二待合成视频对应的时间戳不为预设时间戳时,则可以直接进行视频帧的合成,而不用进行人脸检测出来。
步骤S32,在检测到人脸后,在检测到的人脸上添加预设的贴纸特效,以得到包含贴纸特效的待合成视频帧,其中,对未检测到人脸的待合成视频帧不添加贴纸特效。
具体地,所述贴纸特效可以为预先设定的美妆贴纸、眼影、手势特效、趣味变装特效等。
需要说明的是,本发明实施例中,在添加贴纸特效时,可以在各个直播成员的人脸上添加相同的贴纸特效,也可以在各个直播成员的人脸上添加不同的贴纸特效,或者也可以仅仅在某一个或多个直播成员的人脸上添加贴纸特效,在本实施例中不作限定。
步骤S33,将所述第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
具体地,在完成贴纸特效的添加之后,即可以将所述第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接合成,以得到所述多人直播视频流中帧画面。示例性的,进行拼接后得到的多人直播流中的帧画面如图4或5所示,其中,图4为仅仅对一个直播用户进行添加贴纸特效后的合成帧画面的示意图,图5为对所有直播用户都进行添加贴纸特效后的合成帧画面的示意图。
本实施例中,通过在判定出主播直播观看的第二视频中的当前待合成视频帧对应的时间戳为预设时间戳时,在直播用户的人脸上添加预设的贴纸特效,从而可以使得直播用户在共同观看视频时,具有更大的观看兴趣,提高用户的使用体验。
在另一实施方式中,参照图6,所述第二视频的视频类型为挑战类视频,对所述多人直播视频流中的每一帧画面的合成包括:
步骤S40,对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行表情识别。
具体地,在第二视频的视频类型为挑战类视频时,在对所述多人直播视频流中的每一帧画面的合成过程中,首先需要对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行表情识别。在本发明实施例中,可以采用表情识别模型对所述第一待合成视频帧、其他直播成员的所述第三待合成视频帧进行表情识别,其中,该表情识别模型可以采用现有的用于识别表情的模型,在本实施例中不再赘述。
其中,所述挑战类视频指的是直播用户在观看该类视频时,各个直播用户可以进行挑战PK,比如,当该挑战类视频为搞笑类挑战视频时,直播用户之间可以挑战看谁先笑,当用户笑时,该用户即被淘汰;又比如,当该挑战类视频为悲伤类挑战视频时,直播用户之间可以挑战看谁先流眼泪,当用户流眼泪时,该用户即被淘汰。
需要说明的是,在本实例中,所述第一待合成视频帧、所述第三待合成视频帧依次为所述第一视频中的当前待合成视频帧、所述第三视频中的当前待合成视频帧,比如,当前正在合成多人视频直播流中的第一帧画面,则所述第一待合成视频帧即为所述第一视频中的第一帧画面,所述第三待合成视频帧即为所述第三视频中的第一帧画面;又比如,当前正在合成多人视频直播流中的第三帧画面,则所述第一待合成视频帧即为所述第一视频中的第三帧画面,所述第三待合成视频帧即为所述第三视频中的第三帧画面。
步骤S41,在识别出预设表情时,在识别出预设表情的待合成视频帧中添加预设的贴纸特效,其中,对未识别出预设表情的待合成视频帧不添加贴纸特效。
具体地,所述预设表情为预先设定的表情,比如笑脸表情,或者哭脸表情等。所述贴纸特效可以为预先设定的用于表明直播用户挑战失败的贴纸特效,比如为“out”。
步骤S42,将所述第二视频中的第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
具体地,在完成贴纸特效的添加之后,即可以将所述第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接合成,以得到所述多人直播视频流中帧画面。示例性的,进行拼接后得到的多人直播流中的帧画面如图7所示。
需要说明的是,所述第二待合成视频帧为所述第二视频中的当前待合成视频帧,比如,当前正在合成多人视频直播流中的第一帧画面,则所述第二待合成视频帧即为所述第二视频中的第一帧画面;又比如,当前正在合成多人视频直播流中的第三帧画面,则所述第二待合成视频帧即为所述第二视频中的第三帧画面。
本实施例中,通过在主播直播观看的第二视频为挑战类视频时,各个直播用户之间可以进行挑战,从而可以提升直播用户观看视频的乐趣,进而提升用户体验。
在另一实施方式中,参照图8,所述第二视频的视频类型为猜剧情类视频,对所述多人直播视频流中的每一帧画面的合成包括:
步骤S50,检测是否接收所述直播群中的任一直播成员发送的剧情猜测消息。
具体地,在第二视频的视频类型为猜剧情类视频时,在对所述多人直播视频流中的每一帧画面的合成过程中,首先需要检测是否接收到为直播群中的任一个直播成员发送的剧情猜测消息,即各个直播成员在共同观看视频时,其中,任意一个直播成员可以发出剧情猜测消息,以供各个直播成员对该共同观看视频的剧情走向进行猜测。比如,直播成员在观看一个煎鸡蛋的猜剧情视频时,在直播成员观看的过程中,直播人员可以发起一个剧情猜测消息,以让各个直播成员猜测视频中的煎鸡蛋的用户共用了几个鸡蛋。其中,该剧情猜测消息可以为一个包含候选答案的消息,也可以为不包含候选答案的消息,只包括猜测问题。
步骤S51,若是,则将所述剧情猜测消息添加至第二视频中的第二待合成视频帧中。
具体地,在接收到某一个直播成员发送的剧情猜测消息时,即可以将该剧情猜测消息添加至第二视频中的第二待合成视频帧中。
在本发明实施例中,在未接收到直播群中的任一直播成员发送的剧情猜测消息时,则可以直接进行多人直播视频流中的视频帧的合成。
需要说明的是,所述第二待合成视频帧为所述第二视频中的当前待合成视频帧,比如,当前正在合成多人视频直播流中的第一帧画面,则所述第二待合成视频帧即为所述第二视频中的第一帧画面;又比如,当前正在合成多人视频直播流中的第三帧画面,则所述第二待合成视频帧即为所述第二视频中的第三帧画面。
步骤S52,将包含所述剧情猜测消息的第二待合成视频帧与所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
具体地,在完成剧情猜测消息的添加之后,即可以将包含所述剧情猜测消息的第二待合成视频帧与所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行拼接合成,以得到所述多人直播视频流中帧画面。示例性的,进行拼接拼接后得到的多人直播流中的帧画面如图9所示。
需要说明的是,所述第一待合成视频帧、所述第三待合成视频帧依次为所述第一视频中的当前待合成视频帧、所述第三视频中的当前待合成视频帧,比如,当前正在合成多人视频直播流中的第一帧画面,则所述第一待合成视频帧即为所述第一视频中的第一帧画面,所述第三待合成视频帧即为所述第三视频中的第一帧画面;又比如,当前正在合成多人视频直播流中的第三帧画面,则所述第一待合成视频帧即为所述第一视频中的第三帧画面,所述第三待合成视频帧即为所述第三视频中的第三帧画面。
本实施例中,通过在主播直播观看的第二视频为猜剧情类视频时,任意一个直播成员可以发送剧情猜测消息,以让直播成员进行剧情走向的猜测,从而增加直播成员之间的互动,进而提升用户体验。
步骤S22,将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。
具体地,所述各个直播成员包括所述直播主播以及直播群中除所述直播主播之外的其他直播成员。
本发明实施例中,在合成多人直播视频流后,立即将该多人直播视频流发送至各个直播成员对应的直播客户端中,以便各个直播成员可以观看到同时包含各个直播成员的视频画面以及直播主播观看的视频画面。
本发明实施例中,通过获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频;将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流;将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。本发明实施例中的多人视频直播业务实现方法,各个直播成员可以在其直播客户端的显示界面上观看到所有直播成员的直播视频画面,并且还可以共同与直播主播同时观看视频,从而可以增加直播成员的交互方式,提升用户体验。
进一步地,参阅图10,其为本发明另一实施例的多人视频直播业务实现方法的流程示意图,从图中可以看出,本实施例中所提供的多人视频直播业务实现方法包括:
步骤S60,获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频,其中,所述第一视频包括通过所述直播主播的第一摄像装置采集到的实时画面,所述第二视频包括所述直播主播观看的视频,所述第三视频包括通过所述其他直播成员的第二摄像装置采集到的实时画面。
步骤S61,将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流,其中,所述多人直播视频流中的每一帧画面均包含所述第一视频中的帧画面、所述第二视频中的帧画面、以及所述其他直播成员的第三视频中的帧画面。
步骤S62,将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。
具体地,上述步骤S60-S62与上述实施例中的步骤S20-S22相同,在本实施例中不再赘述。
步骤S63,将所述多人直播视频流分发至CDN网络中。
具体地,在得到多人直播视频流之后,为了让其他用户也可以观看到该多人直播视频流,可以将该多人直播视频流分发至CDN网络(Content Delivery Network,内容分发网络)中。这样,其他用户即可以根据自己的需求从CDN网络中下载其喜欢观看的类型的多人直播视频流进行播放观看。
本发明实施例通过将多人直播视频流分发至CDN网络中,从而使得其他用户也可以根据需求从CDN网络中下载该直播视频流进行播放观看,从而可以扩充用户可以观看的视频的种类。
进一步地,参阅图11,其为本发明另一实施例的多人视频直播业务实现方法的流程示意图,从图中可以看出,本实施例中所提供的多人视频直播业务实现方法包括:
步骤S70,获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频,其中,所述第一视频包括通过所述直播主播的第一摄像装置采集到的实时画面,所述第二视频包括所述直播主播观看的视频,所述第三视频包括通过所述其他直播成员的第二摄像装置采集到的实时画面。
步骤S71,将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流,其中,所述多人直播视频流中的每一帧画面均包含所述第一视频中的帧画面、所述第二视频中的帧画面、以及所述其他直播成员的第三视频中的帧画面。
步骤S72,对所述多人直播视频流进行降码率处理。
具体地,为了使得各个直播成员在观看的多人直播视频流时,不会产生视频卡顿的效果,可以在多人直播视频流发送至各个直播成员对应的直播客户端前,对多人直播视频流进行降码率处理,从而减少多人直播视频流对网络资源的占用。这里的码率即是比特率,是指每秒传送的比特数,比特率越高,传送数据速度越快。
步骤S73,将经过降码率处理后的多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。
本发明实施例中,通过对多人直播视频流进行降码率处理,从而可以减少发送至各个直播成员对应的直播客户端的耗时,进而可以获得更好的直播效果。
参阅图12所示,是本发明多人视频直播业务实现装置800一实施例的程序模块图。
本实施例中,所述多人视频直播业务实现装置800包括一系列的存储于存储器上的计算机程序指令,当该计算机程序指令被处理器执行时,可以实现本发明各实施例的多人视频直播业务实现功能。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,多人视频直播业务实现装置800可以被划分为一个或多个模块。例如,在图7中,所述多人视频直播业务实现装置800可以被分割成获取模块801、拼接模块802及发送模块803。其中:
获取模块801,用于获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频,其中,所述第一视频包括通过第一摄像装置采集到的视频,所述第二视频包括所述直播主播观看的视频,所述第三视频包括通过第二摄像装置采集到的视频。
具体地,本发明实施例在进行多人直播业务时,直播主播以及直播群中除直播主播之外的各个直播成员分别通过其直播客户端将直播视频流上传至服务器。
其中,第一摄像装置可以为直播主播终端内置的摄像装置(比如摄像头),也可以为直播主播终端外接的摄像装置,通过该第一摄像装置可以采集到第一视频,该第一视频为直播主播当前的直播画面,即为通过该第一摄像装置采集的实时画面。优选地,该第一视频包括直播主播的人脸。所述直播主播观看的第二视频为直播主播通过直播主播终端播放的想同其他直播成员共同观看的视频,该视频可以为本地视频,也可以为网络视频。该第二视频的类型可以为多种,比如为变装类视频,挑战类视频、猜剧情类视频等。第二摄像装置可以为直播参与者(所述其他直播成员)终端内置的摄像装置(比如摄像头),也可以为直播参与者终端外接的摄像装置,通过该第二摄像装置可以采集到第三视频,该第三视频为直播参与者当前的直播画面,即通过该第二摄像装置采集到的实时画面。优选地,该第三视频包括直播参与者的人脸。
需要说明的是,本发明实施例在进行多人直播业务之前,需要先通过直播主播创建直播群,以供多个直播参与者加入到该直播群中。在多个直播参与者加入到该直播群之后,该直播主播可以进行多人直播业务。
所述拼接模块802,用于将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流,其中,所述多人直播视频流中的每一帧画面均包含所述第一视频中的帧画面、所述第二视频中的帧画面、以及所述其他直播成员的第三视频中的帧画面。
具体地,在进行拼接时,是一帧一帧进行的,首先,获取第一视频、第二视频以及其他直播成员的第三视频中的第一帧画面,然后将获取到的各个第一帧画面进行拼接以得到多人直播视频流中的第一帧画面。也就是说,合成后的多人直播视频流中的第一帧画面包括各个直播成员的直播视频帧画面,这样,每个直播成员即可在直播客户端的显示界面中看到各个直播成员的直播画面。
在一实施方式中,在进行拼接时,可以根据直播成员的数量将合成得到的多人直播视频流中的帧画面分成与所述直播成员的数量相对应的显示块,比如,直播群中具有6个直播成员,则可以将多人直播视频流中的帧画面分成7块,其中6块帧画面用于显示直播成员的视频帧,另一块帧画面则用于显示直播主播观看的视频的帧画面,每个直播成员观看多人直播视频流的效果即是在直播客户端的显示界面上看到6个直播成员的直播画面,以及看到直播主播观看的视频的帧画面。
需要说明的是,在完成多人直播视频流中的第一帧画面的合成后,继续获取第一视频、第二视频以及其他直播成员的第三视频中的第二帧画面,然后将获取到的各个第二帧画面进行拼接以得到多人直播视频流中的第二帧画面。以此类推,直到完成多人直播视频流中的所有帧画面的合成。
在本发明一实施方式中,为了使得各个直播成员在观看的多人直播视频流时,不会产生视频卡顿的效果,可以在进行拼接时,通过检测线程对第一视频以及所述其他直播成员的第三视频进行人脸检测,并在检测到人脸之后,通过渲染线程对检测到的人脸区域进行渲染。本发明实施例中相对于现有技术采用一个线程进行视频的合成处理,采用多线程进行视频的合成处理,可以节省视频的合成时间,进而可以在观看多人直播视频流时产生视频卡顿。
需要说明的是,在本发明其他实施方式中,在进行拼接时,也可以采用更多的线程对待合成的视频帧进行处理,以得到多人直播视频流。
示例性的,在一实施方式中,所述第二视频的视频类型为变装类视频,所述拼接模块802,还用于判断所述第二视频中的第二待合成视频帧对应的时间戳是否为预设时间戳。
具体地,在第二视频的视频类型为变装类视频时,在对所述多人直播视频流中的每一帧画面的合成过程中,首先需要判断所述第二视频中的第二待合成视频帧对应的时间戳是否为预设的时间戳。在本实施例中,可以通过直接获取该第二待合成视频帧中的时间戳信息,然后将获取到的时间戳信息与预设时间戳进行比较的方式来判定第二待合成视频帧对应的时间戳与预设时间戳是否相同。在本发明实施例中,所述预设时间戳可以为直播主播预先设定的一个或多个时间点,也可以为系统预先默认设定的一个或者多个时间点,在本发明实施方式中不作限定。
其中,变装类视频指的是直播用户在观看该类视频时,在观看到视频播放到特定时间点时,服务器会为各个直播用户添加对应的贴纸特效,从而实现变装。
需要说明的是,所述第二待合成视频帧为所述第二视频中的当前待合成视频帧,比如,当前正在合成多人视频直播流中的第一帧画面,则所述第二待合成视频帧即为所述第二视频中的第一帧画面;又比如,当前正在合成多人视频直播流中的第三帧画面,则所述第二待合成视频帧即为所述第二视频中的第三帧画面。
所述拼接模块802,还用于若所述第二视频中的第二待合成视频帧对应的时间戳为所述预设时间戳,则对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行人脸检测。
具体地,在判定出所述第二待合成视频对应的时间戳为预设时间戳时,则可以采用人脸识别模型对第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行人脸检测,其中,所述人脸识别模型为现有的用于检测人脸的模型,在本实施了中不再赘述。
需要说明的是,所述第一待合成视频帧、所述第三待合成视频帧依次为所述第一视频中的当前待合成视频帧、所述第三视频中的当前待合成视频帧,比如,当前正在合成多人视频直播流中的第一帧画面,则所述第一待合成视频帧即为所述第一视频中的第一帧画面,所述第三待合成视频帧即为所述第三视频中的第一帧画面;又比如,当前正在合成多人视频直播流中的第三帧画面,则所述第一待合成视频帧即为所述第一视频中的第三帧画面,所述第三待合成视频帧即为所述第三视频中的第三帧画面。
在本发明实施例中,在判定出所述第二待合成视频对应的时间戳不为预设时间戳时,则可以直接进行视频帧的合成,而不用进行人脸检测出来。
所述拼接模块802,还用于在检测到人脸后,在检测到的人脸上添加预设的贴纸特效,以得到包含贴纸特效的待合成视频帧,其中,对未检测到人脸的待合成视频帧不添加贴纸特效。
具体地,所述贴纸特效可以为预先设定的美妆贴纸、眼影、手势特效、趣味变装特效等。
需要说明的是,本发明实施例中,在添加贴纸特效时,可以在各个直播成员的人脸上添加相同的贴纸特效,也可以在各个直播成员的人脸上添加不同的贴纸特效,或者也可以仅仅在某一个或多个直播成员的人脸上添加贴纸特效,在本实施例中不作限定。
所述拼接模块802,还用于将所述第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
具体地,在完成贴纸特效的添加之后,即可以将所述第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接合成,以得到所述多人直播视频流中帧画面。示例性的,进行拼接后得到的多人直播流中的帧画面如图4或5所示,其中,图4为仅仅对一个直播用户进行添加贴纸特效后的合成帧画面的示意图,图5为对所有直播用户都进行添加贴纸特效后的合成帧画面的示意图。
本实施例中,通过在判定出主播直播观看的第二视频中的当前待合成视频帧对应的时间戳为预设时间戳时,在直播用户的人脸上添加预设的贴纸特效,从而可以使得直播用户在共同观看视频时,具有更大的观看兴趣,提高用户的使用体验。
在另一实施方式中,所述第二视频的视频类型为挑战类视频,所述拼接模块802,还用于对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行表情识别。
具体地,在第二视频的视频类型为挑战类视频时,在对所述多人直播视频流中的每一帧画面的合成过程中,首先需要对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行表情识别。在本发明实施例中,可以采用表情识别模型对所述第一待合成视频帧、其他直播成员的所述第三待合成视频帧进行表情识别,其中,该表情识别模型可以采用现有的用于识别表情的模型,在本实施例中不再赘述。
其中,所述挑战类视频指的是直播用户在观看该类视频时,各个直播用户可以进行挑战PK,比如,当该挑战类视频为搞笑类挑战视频时,直播用户之间可以挑战看谁先笑,当用户笑时,该用户即被淘汰;又比如,当该挑战类视频为悲伤类挑战视频时,直播用户之间可以挑战看谁先流眼泪,当用户流眼泪时,该用户即被淘汰。
所述拼接模块802,还用于在识别出预设表情时,在识别出预设表情的待合成视频帧中添加预设的贴纸特效,其中,对未识别出预设表情的待合成视频帧不添加贴纸特效。
具体地,所述预设表情为预先设定的表情,比如笑脸表情,或者哭脸表情等。所述贴纸特效可以为预先设定的用于表明直播用户挑战失败的贴纸特效,比如为“out”。
所述拼接模块802,还用于将所述第二视频中的第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
具体地,在完成贴纸特效的添加之后,即可以将所述第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接合成,以得到所述多人直播视频流中帧画面。示例性的,进行拼接后得到的多人直播流中的帧画面如图7所示。
本实施例中,通过在主播直播观看的第二视频为挑战类视频时,各个直播用户之间可以进行挑战,从而可以提升直播用户观看视频的乐趣,进而提升用户体验。
在另一实施方式中,所述第二视频的视频类型为猜剧情类视频,所述拼接模块802,还用于检测是否接收所述直播群中的任一直播成员发送的剧情猜测消息。
具体地,在第二视频的视频类型为猜剧情类视频时,在对所述多人直播视频流中的每一帧画面的合成过程中,首先需要检测是否接收到为直播群中的任一个直播成员发送的剧情猜测消息,即各个直播成员在共同观看视频时,其中,任意一个直播成员可以发出剧情猜测消息,以供各个直播成员对该共同观看视频的剧情走向进行猜测。比如,直播成员在观看一个煎鸡蛋的猜剧情视频时,在直播成员观看的过程中,直播人员可以发起一个剧情猜测消息,以让各个直播成员猜测视频中的煎鸡蛋的用户共用了几个鸡蛋。其中,该剧情猜测消息可以为一个包含候选答案的消息,也可以为不包含候选答案的消息,只包括猜测问题。
所述拼接模块802,还用于若接收到所述直播群中的任一直播成员发送的剧情猜测消息,则将所述剧情猜测消息添加至第二视频中的第二待合成视频帧中。
具体地,在接收到某一个直播成员发送的剧情猜测消息时,即可以将该剧情猜测消息添加至第二视频中的第二待合成视频帧中。
在本发明实施例中,在未接收到直播群中的任一直播成员发送的剧情猜测消息时,则可以直接进行多人直播视频流中的视频帧的合成。
所述拼接模块802,还用于将包含所述剧情猜测消息的第二待合成视频帧与所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
具体地,在完成剧情猜测消息的添加之后,即可以将包含所述剧情猜测消息的第二待合成视频帧与所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行拼接合成,以得到所述多人直播视频流中帧画面。示例性的,进行拼接后得到的多人直播流中的帧画面如图9所示。
本实施例中,通过在主播直播观看的第二视频为猜剧情类视频时,任意一个直播成员可以发送剧情猜测消息,以让直播成员进行剧情走向的猜测,从而增加直播成员之间的互动,进而提升用户体验。
发送模块803,用于将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。
具体地,所述各个直播成员包括所述直播主播以及直播群中除所述直播主播之外的其他直播成员。
本发明实施例中,在合成多人直播视频流后,立即将该多人直播视频流发送至各个直播成员对应的直播客户端中,以便各个直播成员可以观看到同时包含各个直播成员的视频画面以及直播主播观看的视频画面。
本发明实施例中,通过获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频;将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流;将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。本发明实施例中的多人视频直播业务实现方法,各个直播成员可以在其直播客户端的显示界面上观看到所有直播成员的直播视频画面,并且还可以共同与直播主播同时观看视频,从而可以增加直播成员的交互方式,提升用户体验。
进一步地,在一实施方式中,所述多人视频直播业务实现装置800还包括分发模块。
所述分发模块,用于将所述多人直播视频流分发至CDN网络中。
具体地,在得到多人直播视频流之后,为了让其他用户也可以观看到该多人直播视频流,可以将该多人直播视频流分发至CDN网络(Content Delivery Network,内容分发网络)中。这样,其他用户即可以根据自己的需求从CDN网络中下载其喜欢观看的类型的多人直播视频流进行播放观看。
本发明实施例通过将多人直播视频流分发至CDN网络中,从而使得其他用户也可以根据需求从CDN网络中下载该直播视频流进行播放观看,从而可以扩充用户可以观看的视频的种类。
进一步地,在另一实施方式中,所述多人视频直播业务实现装置800还包括处理模块。
所述处理模块,用于对所述多人直播视频流进行降码率处理。
具体地,为了使得各个直播成员在观看的多人直播视频流时,不会产生视频卡顿的效果,可以在多人直播视频流发送至各个直播成员对应的直播客户端前,对多人直播视频流进行降码率处理,从而减少多人直播视频流对网络资源的占用。这里的码率即是比特率,是指每秒传送的比特数,比特率越高,传送数据速度越快。
本发明实施例中,通过对多人直播视频流进行降码率处理,从而可以减少发送至各个直播成员对应的直播客户端的耗时,进而可以获得更好的直播效果。
图13示意性示出了根据本申请实施例的适于实现多人视频直播业务实现方法的计算机设备2的硬件架构示意图。本实施例中,计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图13所示,计算机设备2至少包括但不限于:可通过系统总线相互通信链接存储器901、处理器902、网络接口903。其中:
存储器901至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器901可以是计算机设备2的内部存储模块,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器901也可以是计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(SmartMedia Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,存储器901还可以既包括计算机设备2的内部存储模块也包括其外部存储设备。本实施例中,存储器901通常用于存储安装于计算机设备2的操作系统和各类应用软件,例如多人视频直播业务实现方法的程序代码等。此外,存储器901还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器902在一些实施例中可以是中央处理器(Central Processing Unit,简称为CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器902通常用于控制计算机设备2的总体操作,例如执行与计算机设备2进行数据交互或者通信相关的控制和处理等。本实施例中,处理器902用于运行存储器901中存储的程序代码或者处理数据。
网络接口903可包括无线网络接口或有线网络接口,该网络接口903通常用于在计算机设备2与其他计算机设备之间建立通信链接。例如,网络接口903用于通过网络将计算机设备2与外部终端相连,在计算机设备2与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(GlobalSystem of Mobile communication,简称为GSM)、宽带码分多址(Wideband Code DivisionMultiple Access,简称为WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图13仅示出了具有部件901~903的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器901中的多人视频直播业务实现方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器902)所执行,以完成本发明。
本申请实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的多人视频直播业务实现方法的步骤。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中的多人视频直播业务实现方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到至少两个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种多人视频直播业务实现方法,其特征在于,包括:
获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频,其中,所述第一视频包括通过所述直播主播的第一摄像装置采集到的实时画面,所述第二视频包括所述直播主播观看的视频,所述第三视频包括通过所述其他直播成员的第二摄像装置采集到的实时画面;
将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流,其中,所述多人直播视频流中的每一帧画面均包含所述第一视频中的帧画面、所述第二视频中的帧画面、以及所述其他直播成员的第三视频中的帧画面;
将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。
2.根据权利要求1所述的多人视频直播业务实现方法,其特征在于,在进行拼接时,通过检测线程对所述第一视频以及所述其他直播成员的第三视频进行人脸检测,并在检测到人脸后,通过渲染线程对检测到的人脸区域进行渲染。
3.根据权利要求1所述的多人视频直播业务实现方法,其特征在于,所述第二视频的视频类型为变装类视频,对所述多人直播视频流中的每一帧画面的合成包括:
判断所述第二视频中的第二待合成视频帧对应的时间戳是否为预设时间戳;
若是,则对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行人脸检测;
在检测到人脸后,在检测到的人脸上添加预设的贴纸特效,以得到包含贴纸特效的待合成视频帧,其中,对未检测到人脸的待合成视频帧不添加贴纸特效;
将所述第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
4.根据权利要求1所述的多人视频直播业务实现方法,其特征在于,所述第二视频的视频类型为挑战类视频,对所述多人直播视频流中的每一帧画面的合成包括:
对所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行表情识别;
在识别出预设表情时,在识别出预设表情的待合成视频帧中添加预设的贴纸特效,其中,对未识别出预设表情的待合成视频帧不添加贴纸特效;
将所述第二视频中的第二待合成视频帧与包含所述贴纸特效的待合成视频帧以及不包含贴纸特效的待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
5.根据权利要求1所述的多人视频直播业务实现方法,其特征在于,所述第二视频的视频类型为猜剧情类视频,对所述多人直播视频流中的每一帧画面的合成包括::
检测是否接收到所述直播群中的任一直播成员发送的剧情猜测消息;
若是,则将所述剧情猜测消息添加至第二视频中的第二待合成视频帧中;
将包含所述剧情猜测消息的第二待合成视频帧与所述第一视频中的第一待合成视频帧、所述其他直播成员的第三视频中的第三待合成视频帧进行拼接,以得到所述多人直播视频流中帧画面。
6.根据权利要求1至6任一项所述的多人视频直播业务实现方法,其特征在于,所述多人视频直播业务实现方法还包括:
将所述多人直播视频流分发至CDN网络中。
7.根据权利要求1至6任一项所述的多人视频直播业务实现方法,其特征在于,所述多人视频直播业务实现方法还包括:
对所述多人直播视频流进行降码率处理。
8.一种多人视频直播业务实现装置,其特征在于,包括:
获取模块,用于获取直播主播的第一视频与第二视频,以及获取直播群中除所述直播主播之外的其他直播成员的第三视频,其中,所述第一视频包括通过所述直播主播的第一摄像装置采集到的实时画面,所述第二视频包括所述直播主播观看的视频,所述第三视频包括通过所述其他直播成员的第二摄像装置采集到的实时画面;
拼接模块,用于将所述第一视频、第二视频、以及所述其他直播成员的第三视频进行拼接,以得到多人直播视频流,其中,所述多人直播视频流中的每一帧画面均包含所述第一视频中的帧画面、所述第二视频中的帧画面、以及所述其他直播成员的第三视频中的帧画面;
发送模块,用于将所述多人直播视频流发送至各个直播成员对应的直播客户端中,以供所述各个直播成员观看。
9.一种计算机设备,所述计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的多人视频直播业务实现方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至7任一项所述的多人视频直播业务实现方法的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911251118.0A CN113038287B (zh) | 2019-12-09 | 2019-12-09 | 多人视频直播业务实现方法、装置、计算机设备 |
US17/783,630 US11889132B2 (en) | 2019-12-09 | 2020-08-18 | Method and apparatus for implementing multi-person video live-streaming service, and computer device |
PCT/CN2020/109869 WO2021114708A1 (zh) | 2019-12-09 | 2020-08-18 | 多人视频直播业务实现方法、装置、计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911251118.0A CN113038287B (zh) | 2019-12-09 | 2019-12-09 | 多人视频直播业务实现方法、装置、计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113038287A true CN113038287A (zh) | 2021-06-25 |
CN113038287B CN113038287B (zh) | 2022-04-01 |
Family
ID=76329457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911251118.0A Active CN113038287B (zh) | 2019-12-09 | 2019-12-09 | 多人视频直播业务实现方法、装置、计算机设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11889132B2 (zh) |
CN (1) | CN113038287B (zh) |
WO (1) | WO2021114708A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113705368A (zh) * | 2021-08-09 | 2021-11-26 | 上海幻电信息科技有限公司 | 人脸表情迁移方法、装置以及计算机设备 |
CN113949891A (zh) * | 2021-10-13 | 2022-01-18 | 咪咕文化科技有限公司 | 一种视频处理方法、装置、服务端及客户端 |
CN114125485A (zh) * | 2021-11-30 | 2022-03-01 | 北京字跳网络技术有限公司 | 图像处理方法、装置、设备及介质 |
CN115396716A (zh) * | 2022-08-23 | 2022-11-25 | 北京字跳网络技术有限公司 | 一种直播视频处理方法、装置、设备及介质 |
CN114125485B (zh) * | 2021-11-30 | 2024-04-30 | 北京字跳网络技术有限公司 | 图像处理方法、装置、设备及介质 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115834923A (zh) * | 2021-09-16 | 2023-03-21 | 艾锐势企业有限责任公司 | 用于视频内容处理的网络设备、系统和方法 |
CN114827664B (zh) * | 2022-04-27 | 2023-10-20 | 咪咕文化科技有限公司 | 多路直播混流方法、服务器、终端设备、系统及存储介质 |
WO2023245846A1 (zh) * | 2022-06-21 | 2023-12-28 | 喻荣先 | 移动终端真实内容解析、内置反诈和欺诈判断系统及方法 |
CN116437157A (zh) * | 2023-06-12 | 2023-07-14 | 北京达佳互联信息技术有限公司 | 直播数据显示方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105491393A (zh) * | 2015-12-02 | 2016-04-13 | 北京暴风科技股份有限公司 | 多人视频直播业务的实现方法 |
CN105791958A (zh) * | 2016-04-22 | 2016-07-20 | 北京小米移动软件有限公司 | 游戏直播方法及装置 |
CN107105315A (zh) * | 2017-05-11 | 2017-08-29 | 广州华多网络科技有限公司 | 直播方法、主播客户端的直播方法、主播客户端及设备 |
CN108235044A (zh) * | 2017-12-29 | 2018-06-29 | 北京密境和风科技有限公司 | 一种实现多人直播的方法、装置和服务器 |
CN108259989A (zh) * | 2018-01-19 | 2018-07-06 | 广州华多网络科技有限公司 | 视频直播的方法、计算机可读存储介质和终端设备 |
WO2019118890A1 (en) * | 2017-12-14 | 2019-06-20 | Hivecast, Llc | Method and system for cloud video stitching |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2517469A4 (en) * | 2009-12-22 | 2014-01-15 | Vidyo Inc | SYSTEM AND METHOD FOR INTERACTIVE SYNCHRONIZED VIDEO VISUALIZATION |
US20110306325A1 (en) | 2010-06-10 | 2011-12-15 | Rajesh Gutta | Streaming video/audio from mobile phone to any device |
CN106162221A (zh) | 2015-03-23 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 直播视频的合成方法、装置及系统 |
US10701020B2 (en) * | 2015-03-31 | 2020-06-30 | Facebook, Inc. | Multi-user media presentation system |
CN106341695B (zh) | 2016-08-31 | 2020-08-11 | 腾讯数码(天津)有限公司 | 直播间互动方法、装置及系统 |
CN106954100A (zh) | 2017-03-13 | 2017-07-14 | 网宿科技股份有限公司 | 直播方法及系统、连麦管理服务器 |
-
2019
- 2019-12-09 CN CN201911251118.0A patent/CN113038287B/zh active Active
-
2020
- 2020-08-18 WO PCT/CN2020/109869 patent/WO2021114708A1/zh active Application Filing
- 2020-08-18 US US17/783,630 patent/US11889132B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105491393A (zh) * | 2015-12-02 | 2016-04-13 | 北京暴风科技股份有限公司 | 多人视频直播业务的实现方法 |
CN105791958A (zh) * | 2016-04-22 | 2016-07-20 | 北京小米移动软件有限公司 | 游戏直播方法及装置 |
CN107105315A (zh) * | 2017-05-11 | 2017-08-29 | 广州华多网络科技有限公司 | 直播方法、主播客户端的直播方法、主播客户端及设备 |
WO2019118890A1 (en) * | 2017-12-14 | 2019-06-20 | Hivecast, Llc | Method and system for cloud video stitching |
CN108235044A (zh) * | 2017-12-29 | 2018-06-29 | 北京密境和风科技有限公司 | 一种实现多人直播的方法、装置和服务器 |
CN108259989A (zh) * | 2018-01-19 | 2018-07-06 | 广州华多网络科技有限公司 | 视频直播的方法、计算机可读存储介质和终端设备 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113705368A (zh) * | 2021-08-09 | 2021-11-26 | 上海幻电信息科技有限公司 | 人脸表情迁移方法、装置以及计算机设备 |
CN113949891A (zh) * | 2021-10-13 | 2022-01-18 | 咪咕文化科技有限公司 | 一种视频处理方法、装置、服务端及客户端 |
CN113949891B (zh) * | 2021-10-13 | 2023-12-08 | 咪咕文化科技有限公司 | 一种视频处理方法、装置、服务端及客户端 |
CN114125485A (zh) * | 2021-11-30 | 2022-03-01 | 北京字跳网络技术有限公司 | 图像处理方法、装置、设备及介质 |
CN114125485B (zh) * | 2021-11-30 | 2024-04-30 | 北京字跳网络技术有限公司 | 图像处理方法、装置、设备及介质 |
CN115396716A (zh) * | 2022-08-23 | 2022-11-25 | 北京字跳网络技术有限公司 | 一种直播视频处理方法、装置、设备及介质 |
CN115396716B (zh) * | 2022-08-23 | 2024-01-26 | 北京字跳网络技术有限公司 | 一种直播视频处理方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021114708A1 (zh) | 2021-06-17 |
CN113038287B (zh) | 2022-04-01 |
US11889132B2 (en) | 2024-01-30 |
US20230011255A1 (en) | 2023-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113038287B (zh) | 多人视频直播业务实现方法、装置、计算机设备 | |
US10044849B2 (en) | Scalable avatar messaging | |
CN109091861B (zh) | 游戏中的交互控制方法、电子设备及存储介质 | |
US20140192136A1 (en) | Video chatting method and system | |
CN109309842B (zh) | 直播数据处理方法和装置、计算机设备和存储介质 | |
CN106576158A (zh) | 沉浸式视频 | |
US11524229B2 (en) | Methods, systems, and media for enhancing multiplayer game sessions with asymmetric information | |
CN114095744B (zh) | 视频直播方法、装置、电子设备及可读存储介质 | |
CN110876078B (zh) | 动画图片的处理方法、装置、存储介质和处理器 | |
CN112527115A (zh) | 用户形象生成方法、相关装置及计算机程序产品 | |
JP6379107B2 (ja) | 情報処理装置並びにその制御方法、及びプログラム | |
CN108174267A (zh) | 直播中互动信息的发送装置、方法及计算机可读存储介质 | |
CN114245228A (zh) | 页面链接投放方法、装置及电子设备 | |
CN109525852B (zh) | 直播视频流处理方法、装置、系统及计算机可读存储介质 | |
CN113038185B (zh) | 弹幕处理方法及装置 | |
CN113824983A (zh) | 数据匹配方法、装置、设备及计算机可读存储介质 | |
CN110415318B (zh) | 图像处理方法和装置 | |
CN111954041A (zh) | 一种视频加载方法、计算机设备及可读存储介质 | |
CN105992055A (zh) | 一种视频解码的方法及装置 | |
CN111918112B (zh) | 一种视频优化的方法、装置、存储介质及终端 | |
CN109999490B (zh) | 一种降低联网云应用延迟的方法及系统 | |
CN107004018B (zh) | 数据处理方法及装置 | |
CN107424620B (zh) | 一种音频解码方法和装置 | |
CN114095785A (zh) | 视频播放方法、装置及计算机设备 | |
US20240137619A1 (en) | Bullet-screen comment display |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |