视频直播方法、装置和系统与流程

文档序号:11254361
视频直播方法、装置和系统与流程

本公开涉及视频直播技术领域,尤其涉及一种视频直播方法、装置和系统。



背景技术:

随着移动终端设备技术、无线网络技术和直播技术的发展,依托于上述三种技术的手机直播平台也吸引了越来越多的厂商的目光。

常见的直播方式包括如下两种:第一种方式,一个直播间只有一个主播。直播时,主播通过直播终端将直播帐号信息发送给直播平台,在通过直播平台认证后,直播终端将采集到的视频流通过该帐号传输到直播平台,由直播平台通过该直播帐号对应的直播间输出给观众。第二种方式,一个直播间有多个主播,例如YY语音中的直播频道。直播时,各个主播均通过直播平台认证后进入该直播频道,在不同的时段,不同的主播对应的直播终端采集视频流传输到直播平台,由直播平台通过该直播频道输出给观众。

对于上述两种直播方式,当所有主播停止直播时,该直播间都将会没有直播画面,不能满足观众的长时间观看需求。



技术实现要素:

为克服相关技术中传统的设置在直播现场的导播台设备造成的直播成本高、不易于移动且造成操作人员操作不易的问题,本公开提供一种视频直播方法、装置和系统。

根据本公开实施例的第一方面,提供一种视频直播方法,所述方法包括:云端设备接收第一终端设备发送的第一直播视频流;将所述第一直播视频流在第一直播间输出;当所述云端设备检测到触发事件时,获取所述第一直播间关联的第二直播间正在输出的第二直播视频流;将获取到的所述第二直播视频流在所述第一直播间输出。

本公开提供的视频直播方法可以在云端设备检测到触发事件时,获取第一直播间关联的直播间的直播视频流,然后从获取到的关联直播间的直播视频流中选择一路直播视频流进行输出,从而保证在突发情况下,例如主播停播等情况,该第一直播间仍然有直播视频流输出,实现第一直播间的轮播,从而能满足观众的长时间观看需求。

在本公开的一种实现方式中,所述云端设备接收第一终端设备发送的第一直播视频流,包括:所述云端设备接收第一终端设备采用第一帐号发送的第一直播视频流,所述第一帐号与所述第一直播间相对应。

在本公开的另一种实现方式中,所述获取所述第一直播间关联的第二直播间正在输出的第二直播视频流,包括:从所述第一直播间关联的所有直播间中确定第二直播间,并获取所述第二直播间正在输出的所述第二直播视频流;或者,获取所述第一直播间关联的所有直播间正在输出的视频流,从获取到的视频流中确定所述第二直播视频流。

在该实现方式中,提供了两种第二直播视频流的获取方式,第一种方式中先确定第二直播间,再获取第二直播间输出的第二直播视频流,可以尽量少的获取视频流,节省资源。第二种方式中,先获取第一直播间关联的所有第二直播间的视频流,然后再从获取到的视频流中确定第二直播视频流,可以通过视频的码率选择第二直播视频,提高直播画面质量。

在本公开的另一种实现方式中,所述触发事件包括切换指令、设定事件和突发事件中的至少一种;所述设定事件包括时间达到设定时间点,或者当前输出的直播视频流的输出时间达到预定时长;所述突发事件包括当前输出的直播视频流的码率小于或等于阈值。

在该实现方式中,触发事件可以包括但不限于上述三种实现方式,采用上述三种实现方式,既能实现直播视频流的定时切换,也能应对直播视频流突发中断等故障,还能按照主播操作进行切换。

在本公开的另一种实现方式中,当所述触发事件为切换指令时,所述获取所述第一直播间关联的第二直播间正在输出的第二直播视频流,包括:获取所述切换指令中第二直播间的标识;获取所述切换指令中第二直播间的标识对应的直播间的视频流。

在该实现方式中,直接根据主播确定的第二直播间的标识进行视频流切换,无需云端设备选择。

在本公开的另一种实现方式中,所述方法还包括:将所述第一直播间与所述第二直播间关联。

在本公开的另一种实现方式中,获取所述第一终端设备发送的关联请求,所述关联请求包括所述第二直播间的标识;将所述关联请求发送至第二终端设备,所述第二终端设备通过第二账号接收所述关联请求,所述第二账号与所述第二直播间相对应;接收所述第二终端设备采用所述第二账号发送的应答消息;当所述应答消息为确认消息时,将所述第一直播间与所述第二直播间关联。

在上述两种实现方式中,云端设备完成第一直播间和第二直播间的关联,使得后续第一直播间检测到触发事件时,可以切换到第二直播间输出的视频流进行输出。且在上述关联过程中,需要第二直播间对应的第二帐号进行确认,实现了视频流的授权使用。

在本公开的另一种实现方式中,所述方法还包括:获取直播设置信息,所述直播设置信息用于设置所述第二直播视频流选择方案和所述触发事件中的至少一个,所述第二直播视频流选择方案被提供给所述云端设备,以使所述云端设备根据所述第二直播视频流选择方案确定所述第二直播视频流;根据所述直播设置信息设置所述第二直播视频流选择方案和所述触发事件中的至少一个。

在该实现方式中,通过获取用户输入的直播设置信息进行第二直播视频流选择方案和所述设定的触发事件中的至少一个的设置,使得云端设备对第一直播间输出的视频流的选择符合需求。

根据本公开实施例的第二方面,提供一种视频直播装置,所述装置包括:接收单元,用于接收第一终端设备发送的第一直播视频流;输出单元,用于将所述第一直播视频流在第一直播间输出;获取单元,用于当所述云端设备检测到触发事件时,获取所述第一直播间关联的第二直播间正在输出的第二直播视频流;所述输出单元,还用于将获取到的所述第二直播视频流在所述第一直播间输出。

在本公开的一种实现方式中,所述接收单元,用于接收第一终端设备采用第一帐号发送的第一直播视频流,所述第一帐号与所述第一直播间相对应。

在本公开的另一种实现方式中,所述获取单元,用于从所述第一直播间关联的所有直播间中确定第二直播间,并获取所述第二直播间正在输出的所述第二直播视频流;或者,获取所述第一直播间关联的所有直播间正在输出的视频流,从获取到的视频流中确定所述第二直播视频流。

在本公开的另一种实现方式中,所述触发事件包括切换指令、设定事件和突发事件中的至少一种;所述设定事件包括时间达到设定时间点,或者当前输出的直播视频流的输出时间达到预定时长;所述突发事件包括当前输出的直播视频流的码率小于或等于阈值。

在本公开的另一种实现方式中,当所述触发事件为切换指令时,所述获取单元,用于获取所述切换指令中第二直播间的标识;获取所述切换指令中第二直播间的标识对应的直播间的视频流。

在本公开的另一种实现方式中,所述装置还包括:关联单元,用于将所述第一直播间与所述第二直播间关联。

在本公开的另一种实现方式中,所述关联单元,用于获取所述第一终端设备发送的关联请求,所述关联请求包括所述第二直播间的标识;将所述关联请求发送至第二终端设备,所述第二终端设备通过第二账号接收所述关联请求,所述第二账号与所述第二直播间相对应;接收所述第二终端设备采用所述第二账号发送的应答消息

在本公开的另一种实现方式中,所述装置还包括:设置单元,用于获取直播设置信息,所述直播设置信息用于设置所述第二直播视频流选择方案和所述触发事件中的至少一个,所述第二直播视频流选择方案被提供给所述云端设备,以使所述云端设备根据所述第二直播视频流选择方案确定所述第二直播视频流;根据所述直播设置信息设置所述第二直播视频流选择方案和所述触发事件中的至少一个。

根据本公开实施例的第三方面,提供一种视频直播装置,所述视频直播装置包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如第一方面任一实现方式所述的视频直播方法。

根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如第一方面任一实现方式所述的视频直播方法。

根据本公开实施例的第五方面,提供一种视频直播系统,所述系统包括:终端设备和云端设备,所述云端设备包括如第二方面任一实现方式所述的视频直播装置。

本公开的实施例提供的技术方案可以包括以下有益效果:

本公开提供的视频直播方法可以在云端设备检测到触发事件时,获取第一直播间关联的直播间的直播视频流,然后从获取到的关联直播间的直播视频流中选择一路直播视频流进行输出,从而保证在突发情况下,例如主播停播等情况,该第一直播间仍然有直播视频流输出,实现第一直播间的轮播,从而能满足观众的长时间观看需求。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是根据一示例性实施例示出的一种应用场景示意图;

图2A是根据一示例性实施例示出的一种视频直播方法的流程图;

图2B是根据一示例性实施例示出的另一种视频直播方法的流程图;

图2C是本公开提供的一种导播台界面的示意图;

图3是根据一示例性实施例示出的一种视频直播装置的框图;

图4是根据一示例性实施例示出的一种云端设备的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

为了便于理解,下面先对本公开实施例的应用场景进行说明。本公开实施例提供了如下应用场景:

图1是根据一示例性实施例示出的一种应用场景的示意图,如图1所示,该应用场景包括多个终端设备100、云端设备200和用户设备300,其中,多个终端设备100中的每个终端设备分别对应一个直播间,且多个终端设备100对应的直播间各不相同,其中,直播间是指用于输出直播画面的网页或者软件界面。终端设备100包括布置在直播现场的现场采集设备101和现场终端设备102,云端设备200包括云端导播台201和云端转码设备202。现场采集设备101完成直播视频流的采集,然后由现场终端设备102将这直播视频流传输给云端设备200。云端设备200用于执行本公开实施例提供的视频直播方法,该方法的详细执行过程参见后文方法实施例。

其中,直播视频流用于传输从直播现场采集到的视频数据。

现场采集设备101既可以只包括摄像设备,该摄像设备具有视频录制和现场收音功能,例如摄像机。现场采集设备也可以同时包括摄像设备和录音设备,摄像设备用于视频录制,录音设备用于现场收音,例如摄像设备可以是摄像机,录音设备可以是收音器,再例如摄像设备可以是摄像头,录音设备可以是麦克风。

其中,现场是指直播现场,包括但不限于个人主播直播现场,以及活动、比赛、文艺节目现场等。现场采集设备的类型也与直播现场的类型相关,大型直播现场通常采用摄像头和收音器,个人直播现场通常采用摄像头和麦克风。

终端设备100也即主播端设备,现场终端设备102可以为终端设备,例如个人电脑、移动终端等。云端导播台201和云端转码设备202可以集成在同一设备上。用户设备300也即观众端设备,具体可以是个人电脑、移动终端等终端设备。当然在特殊情况下,主播为了检验直播正常,可能会采用终端设备100收看自己的直播,此时终端设备也是用户设备。

值得说明的是,这里的云端设备200属于直播平台,能够获取不同的直播间输出的直播视频流。

图2A是根据一示例性实施例示出的一种视频直播方法,如图2A所示,该方法包括以下步骤。

在步骤S11中,云端设备接收第一终端设备发送的第一直播视频流。

在步骤S12中,将第一直播视频流在第一直播间输出。

其中,将第一直播视频流在第一直播间输出是指,将第一直播视频流输出到第一直播间所在地址,使得用户设备能够通过第一直播间的地址(如统一资源定位符(Uniform Resource Locator,URL))获取到该直播视频流。

在步骤S13中,当云端设备检测到触发事件时,获取第一直播间关联的第二直播间正在输出的第二直播视频流。

其中,第一直播间关联的第二直播间是指,第一直播间和第二直播间之间存在关联关系,从而第一直播间能够获取到第二直播间的直播视频流,进而使得第二直播间的直播视频流能够同时在第一直播间和第二直播间输出。

在步骤S14中,将获取到的第二直播视频流在第一直播间输出。

此时,第二直播视频流同时在第一直播间和第二直播间播出。

本公开提供的视频直播方法可以在云端设备检测到触发事件时,获取第一直播间关联的直播间的直播视频流,然后从获取到的关联直播间的直播视频流中选择一路直播视频流进行输出,从而保证在突发情况下,例如主播停播等情况,该第一直播间仍然有直播视频流输出,实现第一直播间的轮播,从而能满足观众的长时间观看需求。

图2B是根据一示例性实施例示出的一种视频直播方法,如图2B所示,该方法包括以下步骤。

在步骤S21中,第一终端设备获取现场采集到的第一直播视频流。

其中,第一终端设备为设置在直播现场的设备,通常包括现场采集设备和现场终端设备。

在本公开实施例中,第一终端设备获取现场采集到的第一直播视频流,包括:

现场采集设备采集现场的画面和音频,形成第一直播视频流;现场终端设备接收现场采集设备传输的第一直播视频流。

在该过程中,现场终端设备还需要对第一直播视频流进行编码、压缩、加密等操作。

在步骤S22中,第一终端设备将获取到的第一直播视频流传输到云端设备。

实现时,步骤S22可以包括:采用第一帐号将第一直播视频流传输到云端设备,第一帐号与第一直播间相对应。

上述传输第一直播视频流到云端的动作由现场终端设备执行,现场终端设备与现场采集设备直接相连,从而实现将现场采集设备采集到的第一直播视频流传输到云端设备。例如,现场终端设备可以为计算机,该计算机与前述摄像头及麦克风连接,实现第一直播视频流的传输。

进一步地,采用第一帐号将第一直播视频流传输到云端设备是指:现场终端设备采用上述第一帐号登陆云端设备,在登陆云端设备后,将第一直播视频流传输到云端设备;具体实现过程可以包括:将第一帐号以及对应的密码发送到云端设备;在第一帐号以及对应的密码通过云端设备验证后,将第一直播视频流传输到云端设备。在此过程中,云端设备需要对第一终端设备发送的帐号以及对应的密码进行认证,更进一步地,由于云端导播台和云端转码设备可能不具有认证功能,所以该云端设备还可以包括一个服务器,用于对第一终端设备进行认证,在第一直播视频流传输前,先由该服务器进行第一终端设备的认证。

在本公开实施例中,第一终端设备可以获取用户通过网页或者客户端输入的第一帐号和密码,然后将第一帐号和密码发送给云端设备。

在步骤S23中,云端设备接收第一终端设备发送的第一直播视频流。

其中,云端设备接收第一终端设备发送的第一直播视频流,包括:

云端设备接收第一终端设备采用第一帐号发送的第一直播视频流。

在该过程中,云端设备还需要对第一直播视频流进行解密、解压、解码等操作。

在步骤S24中,云端设备将第一直播视频流在第一直播间输出。

在该步骤中,云端设备先对第一直播视频流进行转码,然后将转码后的第一直播视频流在第一直播间输出。

其中,直播视频流的转码可以是从摄像机视频格式(例如AVI格式)转换为网站或手机应用播放的视频格式(例如H.263/H.264/Flash/等)。

进一步地,云端转码设备可以采用快进动态图像专家组(Fast Forward Moving Picture Experts Group,ffmpeg)框架实现对直播视频流进行音视频转码和处理服务,然后进行输出。

在步骤S25中,当云端设备检测到触发事件时,云端设备获取第一直播间关联的第二直播间正在输出的第二直播视频流。

在本公开实施例中,第二直播间输出的第二直播视频流由第二终端设备提供。第二终端设备提供第二直播视频流的过程与第一终端设备提供第一直播视频流的过程相同。

在该步骤中,获取第一直播间关联的第二直播间正在输出的第二直播视频流可以包括下述两种方式:第一种实现方式,从第一直播间关联的所有直播间中确定第二直播间,并获取第二直播间正在输出的第二直播视频流;第二种实现方式,获取第一直播间关联的所有直播间正在输出的视频流,从获取到的视频流中确定第二直播视频流。

在第一种实现方式中,从第一直播间关联的所有直播间中确定第二直播间可以有如下两种方式:第一种方式,根据直播间的标识(如数字号码)选择预定标识的直播间作为第二直播间。预定标识可以采用如下方式确定:获取预定标识列表,按照顺序选取预定标识列表中的标识作为预定标识。其中,按照顺序选择是指,按照顺序从前往后选择第一个正在直播的直播间的标识。第二种方式,确定当前正在直播的直播间,从当前正在直播的直播间中随机选一直播间作为第二直播间。上述两种方式都是选取正在直播的直播间,避免选取直播间后不能获取到直播视频流。其中,云端设备通过检测是否有直播视频流通过某一直播间输出来确定该直播间是否正在直播。

在第二种实现方式中,从获取到的视频流中确定第二直播视频流可以有多种方式,例如:

第一种,选择预定编号的直播视频流。预定编号可以采用如下方式确定:获取预定编号列表,按照顺序选取预定编号列表中的编号作为预定编号。其中,按照顺序选择是指,选择正在直播的视频流中处于该预定编号列表最前的一个视频流的编号。其中,直播视频流的编号可以由终端设备进行设定,此时终端设备在传输直播视频流时携带该编号。或者,直播视频流的编号也可以由云端设备进行设定。

第二种,根据直播视频流的码率,选择获取到的直播视频流中码率最高的直播视频流。这里的码率是指现场采集设备将直播视频流传输到云端设备时,各个直播视频流的码率,直播视频流的码率为视频传输时单位时间传送的数据位数,因此,直播视频流传输的码率越高,画面质量也就越好,所以可以选择传输码率最高的直播视频流。这样可以保证观众的观看体验。进一步地,在根据直播视频流的码率选择直播视频流时,既可以根据实时码率进行直播视频流的选择,也可以根据一段时间内的平均码率选择直播视频流。

第三种,从获取到的直播视频流中随机选取一路直播视频流。这种选择方式可以增加观众的新鲜感,避免每次采用相同的直播视频流进行切换。

其中,触发事件包括切换指令、设定事件和突发事件中的至少一种。

其中,切换指令由终端设备传输给云端设备,该切换指令可以由主播输入,用于将当前第一直播间输出的第一直播视频流切换为第二直播视频流,具体地,云端设备可以提供一切换界面,该界面可以为网页或软件界面,获取用户通过该切换界面输入的切换指令。当触发事件为切换指令时,获取第一直播间关联的第二直播间正在输出的第二直播视频流可以包括:获取切换指令中第二直播间的标识;获取切换指令中第二直播间的标识对应的直播间的视频流。

其中,设定事件可以包括时间达到设定时间点,或者当前输出的直播视频流的输出时间达到预定时长。例如,设定时间点可以是每个整点,步骤S25则可以包括在每个整点进行直播视频流的切换;预定时长可以为一个小时,步骤S26则可以包括在当前直播视频流(如第一直播视频流)的输出达到一个小时时,进行直播视频流的切换。其中,突发事件可以包括当前输出的直播视频流的码率小于或等于阈值。例如阈值可以为0,则当当前直播视频流的码率为0时,切换直播视频流。

在本公开实施例中,当检测到不同的触发事件时,可以采用不同的方式选择第二直播视频流,也可以采用相同的方式选择第二直播视频流。例如,触发事件为时间达到设定时间点,或者当前输出的直播视频流的输出时间达到预定时长时,选择直播视频流时的方式可以为根据直播视频流的编号进行选取;触发事件为当前输出的直播视频流的码率小于或等于阈值时,选择直播视频流时的方式可以为在获取到的直播视频流中选择码率最高的直播视频流;再例如,触发事件为任意一种时,选择直播视频流时的方式均为在获取到的直播视频流中选择码率最高的直播视频流。

进一步地,该方法还可以包括:云端设备将第一直播间与第二直播间关联。

在一种实现方式中,将第一直播间与第二直播间关联,可以包括:获取第一终端设备发送的关联请求,关联请求包括第二直播间的标识;将第一直播间与第二直播间关联。例如,第二直播间可以为官方(直播平台)直播间,这部分直播间不需要授权,任何直播间均能采用其直播视频流进行直播,此时,只要关联请求请求关联的直播间为第二直播间,则无需授权过程,直接进行关联。

在上述过程中,关联后的第一直播间和第二直播间的标识可以记录在直播间关联表中,便于后续使用。

在另一种实现方式中,将第一直播间与第二直播间关联,可以包括:获取第一终端设备发送的关联请求,关联请求包括第二直播间的标识;将关联请求发送至第二终端设备,第二终端设备通过第二账号接收关联请求,第二账号与第二直播间相对应;接收第二终端设备采用第二账号发送的应答消息;当应答消息为确认消息时,将第一直播间与第二直播间关联。当应答消息为拒绝消息时,不将第一直播间与第二直播间关联。这种实现方式需第二直播间对应的帐号进行确认,能够保证第二直播间的主播权利。

进一步地,该方法还可以包括:

获取直播设置信息,直播设置信息用于设置第二直播视频流选择方案和触发事件中的至少一个,第二直播视频流选择方案被提供给云端设备,以使云端设备根据第二直播视频流选择方案确定第二直播视频流;根据直播设置信息设置第二直播视频流选择方案和触发事件中的至少一个。

这里获取直播设置信息可以是采用如下方式:云端设备提供一导播台界面,并获取用户通过导播台界面输入的直播设置信息。这里的导播台界面,既可以是一导播台网页的界面,也可以是一导播台软件的界面。

图2C是本公开提供的一种导播台界面的示意图,参见图2C,该导播台界面(可以和前文的切换界面为采用同一界面)可以提供一第二直播视频流选择方案(后文简称直播视频流选择方案)界面1A,直播视频流选择方案界面1A包括选择按钮1a,以及对应的参数选择框1b。例如,直播视频流选择方案的按钮可以包括两个第二直播间选择按钮(对应前文从第一直播间关联的所有直播间中确定第二直播间的两种方式)和三个第二直播视频流选择按钮(对应前文从获取到的视频流中确定第二直播视频流的三种方式)。用户点击不同的按钮1a会在1b显示对应的参数选择框,以供用户输入。例如,在根据编号选择第二直播视频流时,用户可以在参数选择框内设置预定编号列表。在随机选择第二直播视频流时,用户可以在参数选择框内设置随机直播视频流的范围,例如在编号1-4的直播视频流内进行随机等。

为了方便设置,还可以在该导播台界面上同时播放第一直播间关联的所有直播间正在输出的直播视频流,也即通过导播台界面同时输出这些直播视频流,这样用户在输入直播视频流的编号时,可以对照直播视频流的画面,参见图2C,该导播台界面包括视频输出界面3A,界面3A包括多路直播视频流的显示框(以及对应编号),通过该界面3A可以看到对应的直播视频流,便于用户选择。另外,这种设置使得编号设置除了可以是输入对应的编号,还可以是点击对应的直播视频流的播放画面,从而便于选择,例如用户要在某个选框输入编号2时,可以不通过键盘输入,而是点击编号2的视频流画面来实现。

该导播台界面可以提供一设定的触发事件设置界面2A,该触发事件设置界面2A包括选择按钮2a以及对应设定的触发事件的参数选择框2b,选择按钮2a以及参数选择框2b的设计可以参照选择按钮1a以及参数选择框1b。例如,选择设定的触发事件的按钮可以包括三个,分别对应前述三种设定的触发事件。在根据设定时间点进行直播视频流的切换时,用户可以设置对应的时间点;在直播视频流输出的时间达到预定时长后,进行直播视频流的切换时,用户可以设置预定时长的长度;在当前输出的直播视频流的码率小于或等于阈值时,进行直播视频流的切换时,用户可以设置码率的阈值。

进一步地,当该导播台界面为一网页时,该网页可以设置在前述登陆网页之后,即用户登陆成功后进入该设置网页,保证安全性能,同时能够让用户随时随地的进行设置。

另外,在本公开实施例中,云端设备还可以对第一直播视频流和其他关联直播间输出的视频流进行实时监控,并在直播视频流故障时输出告警信息。

例如,云端设备可以检测各路直播视频流的码率,当该码率低于设定值时,认为该路直播视频流故障,将告警信息发送到对应的用户,比如向用户发送电子邮件、短信等进行告警。

在步骤S26中,云端设备将获取到的第二直播视频流在第一直播间输出。

在步骤中,云端设备在第一直播间输出第二直播视频流的方式与步骤S24中输出第一直播视频流的方式相同。

进一步地,该方法还可以包括:当选择出的第二直播视频流在第一直播间进行输出的过程中,再次检测到触发事件时,则重新获取第一直播间关联的另一第二直播间正在输出的第二直播视频流,并将重新获取到的第二直播视频流在第一直播间输出,重新获取第二直播视频流的方式与前文相同,在此不再赘述。

进一步地,该方法还可以包括:云端设备接收恢复指令;响应于该恢复指令,重新在第一直播间输出第一直播视频流,该恢复指令产生的方式与切换指令相同,且该恢复指令可以与切换指令在相同的界面产生。

本公开提供的视频直播方法可以在云端设备检测到触发事件时,获取第一直播间关联的直播间的直播视频流,然后从获取到的关联直播间的直播视频流中选择一路直播视频流进行输出,从而保证在突发情况下,例如主播停播等情况,该第一直播间仍然有直播视频流输出,实现第一直播间的轮播,从而能满足观众的长时间观看需求。

图3是根据一示例性实施例示出的一种视频直播装置的框图,参照图3,该装置包括:接收单元310、输出单元320和获取单元330。

其中,接收单元310,用于接收第一终端设备发送的第一直播视频流;输出单元320,用于将第一直播视频流在第一直播间输出;获取单元330,用于当云端设备检测到触发事件时,获取第一直播间关联的第二直播间正在输出的第二直播视频流;输出单元320,还用于将获取到的第二直播视频流在第一直播间输出。

接收单元310接收第一终端设备发送的第一直播视频流的方式可以参见步骤S23;输出单元320将第一直播视频流在第一直播间输出的方式可以参见步骤S24;获取单元330获取第一直播间关联的第二直播间正在输出的第二直播视频流的方式可以参见步骤S25;输出单元320将获取到的第二直播视频流在第一直播间输出的方式可以参见步骤S26,在此省略详细描述。

可选地,该装置还可以包括:关联单元340,用于将第一直播间与第二直播间关联。关联单元340将第一直播间与第二直播间关联的方式可以参见步骤S25。

可选地,该装置还可以包括:设置单元350,用于获取直播设置信息,直播设置信息用于设置第二直播视频流选择方案和触发事件中的至少一个,第二直播视频流选择方案被提供给云端设备,以使云端设备根据第二直播视频流选择方案确定第二直播视频流;根据直播设置信息设置第二直播视频流选择方案和触发事件中的至少一个。设置单元350设置第二直播视频流选择方案和触发事件中的至少一个的方式可以参见步骤S25。

本公开提供的视频直播方法可以在云端设备检测到触发事件时,获取第一直播间关联的直播间的直播视频流,然后从获取到的关联直播间的直播视频流中选择一路直播视频流进行输出,从而保证在突发情况下,例如主播停播等情况,该第一直播间仍然有直播视频流输出,实现第一直播间的轮播,从而能满足观众的长时间观看需求。

图4是根据一示例性实施例示出的一种云端设备1900的框图。例如,云端设备1900可以被提供为一集成有导播和转码功能的设备。参照图4,云端设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行视频直播方法,方法包括:

接收第一终端设备发送的第一直播视频流;

将第一直播视频流在第一直播间输出;

当云端设备检测到触发事件时,获取第一直播间关联的第二直播间正在输出的第二直播视频流;

将获取到的第二直播视频流在第一直播间输出。

在本公开的一种实现方式中,云端设备接收第一终端设备发送的第一直播视频流,包括:

云端设备接收第一终端设备采用第一帐号发送的第一直播视频流,第一帐号与第一直播间相对应。

在本公开的另一种实现方式中,获取第一直播间关联的第二直播间正在输出的第二直播视频流,包括:

从第一直播间关联的所有直播间中确定第二直播间,并获取第二直播间正在输出的第二直播视频流;或者,

获取第一直播间关联的所有直播间正在输出的视频流,从获取到的视频流中确定第二直播视频流。

在本公开的另一种实现方式中,触发事件包括切换指令、设定事件和突发事件中的至少一种;

设定事件包括时间达到设定时间点,或者当前输出的直播视频流的输出时间达到预定时长;突发事件包括当前输出的直播视频流的码率小于或等于阈值。

在本公开的另一种实现方式中,当触发事件为切换指令时,获取第一直播间关联的第二直播间正在输出的第二直播视频流,包括:

获取切换指令中第二直播间的标识;

获取切换指令中第二直播间的标识对应的直播间的视频流。

在本公开的另一种实现方式中,方法还包括:

将第一直播间与第二直播间关联。

在本公开的另一种实现方式中,将第一直播间与第二直播间关联,包括:

获取第一终端设备发送的关联请求,关联请求包括第二直播间的标识;

将关联请求发送至第二终端设备,第二终端设备通过第二账号接收关联请求,第二账号与第二直播间相对应;

接收第二终端设备采用第二账号发送的应答消息;

当应答消息为确认消息时,将第一直播间与第二直播间关联。

在本公开的另一种实现方式中,方法还包括:

获取直播设置信息,直播设置信息用于设置第二直播视频流选择方案和触发事件中的至少一个,第二直播视频流选择方案被提供给云端设备,以使云端设备根据第二直播视频流选择方案确定第二直播视频流;

根据直播设置信息设置第二直播视频流选择方案和触发事件中的至少一个。

装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(I/O)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。

本公开实施例还提供一种视频直播系统,该系统包括:终端设备和云端设备,云端设备包括如图3所示的视频直播装置。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1