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

文档序号:11292606阅读:208来源:国知局
视频直播方法、装置和系统与流程

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



背景技术:

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

目前,为了让用户可以通过手机直播能够看到更多更好的直播内容,通常会在直播现场布置专业的导播台设备,该导播台设备接收现场采集设备采集到的多个角度的现场画面,并从中选择一路画面进行输出。然而,采用该导播台设备进行直播存在以下问题:

直播成本高。导播台设备的价格通常在几万至几十万以上,如果由主播或直播单位自己提供,势必造成直播成本过高。

不能满足移动直播的需求。导播台设备非常笨重,占地面积大,并且需要连接各种线材,同时要安排专门的导播场地,导致导播台设备移动不便,无法应用在移动直播等领域。

操作不易。导播台设备和现场采集设备之间往往通过线缆连接,需要操作人员现场操作,给操作人员的操作带来了局限性。



技术实现要素:

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

根据本公开实施例的第一方面,提供一种视频直播方法,所述方法包括:云端设备接收至少一个终端设备发送的多路视频流,所述多路视频流用于传输从直播现场采集到的视频数据;从所述多路视频流中选择一路视频流作为直播流;输出所述直播流。

本公开提供的视频直播方法可以由云端设备接收终端设备发送的多路视频流同时传输到云端,由云端设备从这多路视频流选择选择一路视频流作为直播流进行输出,实现了多画面的选择播出;另外,在上述直播过程中,多画面选择播出的实现由云端设备完成,不需要主播或者直播单位自己提供导播台设备,不但降低了直播的成本,而且将多路视频流传输到云端,由云端设备选择播出,所以即使直播现场移动,仍然能够实现从多路视频流中选择直播流,因此能够满足移动直播的需求,另外云端设备无需现场操作,解决了导播台设备操作不易的问题。

在本公开的一种实现方式中,所述云端设备接收至少一个终端设备发送的多路视频流,包括:所述云端设备接收至少一个终端设备采用同一帐号发送的多路视频流。

在该实现方式中,前述多路视频流是采用同一帐号发送的视频流,这样可以将多路视频流关联起来。

在本公开的另一种实现方式中,所述从所述多路视频流中选择一路视频流作为直播流,包括:根据接收到的所述多路视频流的编号选择预定编号的视频流作为直播流;或者,根据接收到的所述多路视频流的码率,选择所述多路视频流中码率最高的视频流作为直播流;或者,从接收到的所述多路视频流中随机选取一路视频流作为直播流。

在该实现方式中,提供了三种直播流的选择方式,第一种方式中视频流的编号可以与各路视频流的拍摄视角对应或者与各路视频流的直播现场对应,采用预定编号的视频流作为直播流,能够使直播一开始观众对舞台以及直播内容能够产生快速的认识,从而方便后面的切换。第二种方式中,由于视频流传输的码率越高,画面质量也就越好,所以直播流可以选择传输码率最高的视频流。这样可以保证观众的观看体验。第三种方式中,从多路视频流中随机选取一路视频流作为直播流,这种选择方式可以增加观众的新鲜感,避免每次采用相同的视频流开始直播。另外,上述三种方式均是自动选择直播流,无需主播操作,解决了主播操作不易的问题。

在本公开的另一种实现方式中,所述方法还包括:当所述云端设备检测到设定的触发事件时,从所述多路视频流中选择一路新的视频流作为所述直播流。

在该实现方式中,云端设备能够发挥云端强大的计算能力,对导播台的所有视频流进行监控。当遇到提前设置好的触发条件时,自动完成直播流的切换,以节省人力和应对突发事件。

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

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

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

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

在本公开的另一种实现方式中,所述获取直播设置信息,包括:获取用户通过导播台界面输入的所述直播设置信息。

在该实现方式中,云端设备通过提供一导播台界面(网页或软件界面)获取直播设置信息,方便简洁。

在本公开的另一种实现方式中,所述方法还包括:通过所述导播台界面同时输出所述多路视频流。

在该实现方式中,云端设备通过导播台界面同时输出所述多路视频流,使得用户在输入直播设置信息时能够看到各路视频流的画面,方便操作。

根据本公开实施例的第二方面,提供一种视频直播方法,所述方法包括:终端设备获取直播现场采集到的至少一路视频流;将所述至少一路视频流传输到云端设备,以使所述云端设备从多路视频流中选择一路视频流作为直播流进行输出,所述多路视频流包括所述至少一路视频流。

本公开提供的视频直播方法可以将直播现场采集到的视频流传输到云端,由云端设备进行导播(选择输出的视频流),无需硬件导播台,解决了现有技术中采用硬件导播台所产生的问题。通过云端设备,解决使用硬件导播台的成本高、移动不便和操作不易等问题。

在本公开的一种实现方式中,所述将所述至少一路视频流传输到云端设备,包括:采用设定帐号将所述至少一路视频流传输到云端设备。

在本公开的另一种实现方式中,所述采用设定帐号将所述至少一路视频流传输到云端设备,包括:将所述设定帐号以及对应的密码发送到云端设备;在所述设定帐号以及对应的密码通过所述云端设备验证后,将所述至少一路视频流传输到云端设备。

在上述两个实现方式中,终端设备通过设定帐号向云端发送视频流,这样能够保证视频流之间的关联,在后续输出时也是对应同一个帐号。

根据本公开实施例的第三方面,提供一种视频直播装置,所述装置包括:接收单元,用于接收至少一个终端设备发送的多路视频流,所述多路视频流用于传输从直播现场采集到的视频数据;选择单元,用于从所述多路视频流中选择一路视频流作为直播流;输出单元,用于输出所述直播流。

在本公开的一种实现方式中,所述接收单元,接收至少一个终端设备采用同一帐号发送的多路视频流。

在本公开的另一种实现方式中,所述选择单元,用于根据接收到的所述多路视频流的编号选择预定编号的视频流作为直播流;或者,根据接收到的所述多路视频流的码率,选择所述多路视频流中码率最高的视频流作为直播流;或者,从接收到的所述多路视频流中随机选取一路视频流作为直播流。

在本公开的另一种实现方式中,所述装置还包括:切换单元,用于当检测到设定的触发事件时,从所述多路视频流中选择一路新的视频流作为所述直播流。

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

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

在本公开的另一种实现方式中,所述设置单元,用于获取用户通过导播台界面输入的所述直播设置信息。

在本公开的另一种实现方式中,所述输出单元,还用于通过所述导播台界面同时输出所述多路视频流。

根据本公开实施例的第四方面,提供一种视频直播装置,所述装置包括:获取单元,用于获取直播现场采集到的至少一路视频流;传输单元,用于将所述至少一路视频流传输到云端设备,以使所述云端设备从多路视频流中选择一路视频流作为直播流进行输出,所述多路视频流包括所述至少一路视频流。

在本公开的一种实现方式中,所述传输单元,用于采用设定帐号将所述至少一路视频流传输到云端设备。

在本公开的另一种实现方式中,所述传输单元,用于将所述设定帐号以及对应的密码发送到云端设备;在所述设定帐号以及对应的密码通过所述云端设备验证后,将所述至少一路视频流传输到云端设备。

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

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

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

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

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

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

本公开提供的视频直播方法可以由云端设备接收终端设备发送的多路视频流同时传输到云端,由云端设备从这多路视频流选择选择一路视频流作为直播流进行输出,实现了多画面的选择播出;另外,在上述直播过程中,多画面选择播出的实现由云端设备完成,不需要主播或者直播单位自己提供导播台设备,不但降低了直播的成本,而且将多路视频流传输到云端,由云端设备选择播出,所以即使直播现场移动,仍然能够实现从多路视频流中选择直播流,因此能够满足移动直播的需求,另外云端设备无需现场操作,解决了导播台设备操作不易的问题。

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

附图说明

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

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

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

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

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

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

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

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

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

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

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

具体实施方式

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

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

图1a是根据一示例性实施例示出的一种应用场景的示意图,如图1a所示,该应用场景包括终端设备100、云端设备200和用户设备300,其中,终端设备100包括布置在直播现场的现场采集设备101和现场终端设备102,云端设备200包括云端导播台201和云端转码设备202。现场采集设备101完成多路视频流的采集,然后由现场终端设备102将这多路视频流传输给云端设备200。云端设备200中的云端导播台201选择其中一路视频流作为直播流,输出给用户设备300。具体各个步骤的详细执行过程参见后文方法实施例。

其中,视频流用于传输视频数据,直播流是作为直播输出的视频流。

其中,终端设备100中的现场采集设备101可以有多台,多台现场采集设备101实现多个角度的拍摄,从而得到多个角度的视频画面,形成多路视频流。

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

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

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

值得说明的是,在云端转码设备202和用户设备300中间还可能存在其他设备,例如直播平台服务器,如果这里的云端设备200属于直播平台,那么这里可以直接由云端转码设备202传输给用户设备300即可,如果这里的云端设备200为直播平台和用户设备之外的第三方,那么由云端转码设备202输出的视频流需要先传输给直播平台服务器,由直播平台的服务器输出给用户设备。

图1b是根据一示例性实施例示出的另一种应用场景的示意图,如图1b所示,该应用场景包括与图1a所示的应用场景的区别在于,该应用场景包括至少两个终端设备100,多个终端设备100分布在不同的地点。每个终端设备100完成至少一路视频流的采集和上传,云端设备200接收这至少两个终端设备100上传的视频流,从而得到多路视频流。云端设备200从这多路视频流中选择其中一路视频流作为直播流,输出给用户设备300。

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

在步骤s11中,云端设备接收至少一个终端设备发送的多路视频流,多路视频流用于传输从直播现场采集到的视频数据。

在该步骤中,云端设备既可以是接收一个终端设备发送的多路视频流;也可以是接收两个或多个终端设备发送的多路视频流,在这种情况下,每个终端设备发送一路、两路或多路视频流,从而得到多路视频流。

在步骤s12中,从多路视频流中选择一路视频流作为直播流。

云端设备从接收到的这多路视频流中选择一路输出给用户设备。

在步骤s13中,输出直播流。

也即将直播流输出给用户设备。

本公开提供的视频直播方法可以由云端设备接收终端设备发送的多路视频流同时传输到云端,由云端设备从这多路视频流选择选择一路视频流作为直播流进行输出,实现了多画面的选择播出;另外,在上述直播过程中,多画面选择播出的实现由云端设备完成,不需要主播或者直播单位自己提供导播台设备,不但降低了直播的成本,而且将多路视频流传输到云端,由云端设备选择播出,所以即使直播现场移动,仍然能够实现从多路视频流中选择直播流,因此能够满足移动直播的需求,另外云端设备无需现场操作,解决了导播台设备操作不易的问题。

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

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

在步骤s22中,将至少一路视频流传输到云端设备,以使云端设备从多路视频流中选择一路视频流作为直播流进行输出,多路视频流包括至少一路视频流。

本公开提供的视频直播方法可以由云端设备接收终端设备发送的多路视频流同时传输到云端,由云端设备从这多路视频流选择选择一路视频流作为直播流进行输出,实现了多画面的选择播出;另外,在上述直播过程中,多画面选择播出的实现由云端设备完成,不需要主播或者直播单位自己提供导播台设备,不但降低了直播的成本,而且将多路视频流传输到云端,由云端设备选择播出,所以即使直播现场移动,仍然能够实现从多路视频流中选择直播流,因此能够满足移动直播的需求,另外云端设备无需现场操作,解决了导播台设备操作不易的问题。

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

在步骤s31中,终端设备获取现场采集到的至少一路视频流。

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

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

现场采集设备采集现场的画面和音频,形成至少一路视频流;现场终端设备接收现场采集设备传输的至少一路视频流。这里现场采集设备采集的视频流为至少一路,当采集的视频流多于一路时,这些视频流为现场采集设备从不同角度拍摄直播现场得到的。

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

在步骤s32中,终端设备将获取到的至少一路视频流传输到云端设备。

实现时,步骤s32可以包括:采用设定帐号将至少一路视频流传输到云端设备。

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

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

这里的设定帐号与云端设备向用户设备输出直播流时所使用的帐号对应,例如是相同的帐号。云端设备向用户设备输出直播流时所使用的帐号也即主播帐号。例如,设定帐号可以与主播帐号相同,或者在云端设备内存储一个设定帐号和主播帐号的对应表,在输出由设定帐号发送的多路视频流中选择出的直播流时,采用该设定帐号在对应表中对应的主播帐号进行输出。

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

在步骤s33中,云端设备接收至少一个终端设备发送的多路视频流,多路视频流用于传输从直播现场采集到的视频数据。

多路视频流为同一直播现场采集到的多路视频流或者不同直播现场采集到的多路视频流。

在该步骤中,云端设备既可以是接收一个终端设备发送的多路视频流;也可以是接收两个或多个终端设备发送的多路视频流,在这种情况下,每个终端设备发送一路、两路或多路视频流,从而得到多路视频流。

其中,云端设备接收至少一个终端设备发送的多路视频流,包括:

云端设备接收至少一个终端设备采用同一帐号(前述设定帐号)发送的多路视频流。

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

在步骤s34中,云端设备从多路视频流中选择一路视频流作为直播流。

在本公开实施例中,由于云端设备能够同时接收到多路视频流,所以云端设备需要选择一路作为直播流进行转发推送,保证观众能够正常收看直播。

其中,步骤s34可以有多种方式:

第一种方式,根据接收到的多路视频流的编号选择预定编号的视频流作为直播流。预定编号可以采用如下方式确定:获取预定编号列表,按照顺序选取预定编号列表中的编号作为预定编号。其中,按照顺序选择是指,选择预定编号列表中当前的直播流编号之后的一个视频流的编号,而当前为第一次选择编号时,则选择预定编号列表中的第一个视频流的编号。也就是说,步骤s34既可以是第一次选择视频流作为直播流进行输出,也可以是对直播流进行切换。

例如云端设备能够接收到编号为1-5的5路视频流,预定编号列表可以为1、4、3、2、5,此时,云端设备可以选择编号为1的视频流作为直播流。

其中,视频流的编号可以由终端设备进行设定,此时终端设备在传输视频流时携带该编号。对于同一直播现场传输的多路视频流而言,视频流的编号可以与各路视频流的拍摄视角对应,例如按照编号从1到5,各路视频流的拍摄视角依次为舞台的正前方、左前方、右前方、后方和上方。编号为1的视频流的视角为主视角,将编号为1的视频流作为列表的第一个,能够使直播一开始观众能够从舞台的正前方观看到整个现场,对舞台以及直播内容能够产生初步认识,从而方便后面的视角切换。对于不同直播现场传输的多路视频流而言,视频流的编号可以与各个直播现场对应,当存在多个直播现场,且一个现场存在多个视频流时,还可以采用现场编号和视角编号的组合作为视频流的编号,例如现场1正前方、现场2上方等。

其中,视频流的编号也可以由云端设备进行设定,此时可以在事先设置画面合成方案时,显示视频流的画面以及对应的编号,便于用户进行设置,详见后文。

第二种方式,根据接收到的多路视频流的码率,选择多路视频流中码率最高的视频流作为直播流。这里的码率是指现场采集设备将视频流传输到云端设备时,各个视频流的码率,视频流的码率为视频传输时单位时间传送的数据位数,因此,视频流传输的码率越高,画面质量也就越好,所以直播流可以选择传输码率最高的视频流。这样可以保证观众的观看体验。

进一步地,在根据视频流的码率选择直播流时,既可以根据实时码率进行直播流的选择,也可以根据一段时间内的平均码率选择直播流。

第三种方式,从多路视频流中随机选取一路视频流作为直播流。这种选择方式可以增加观众的新鲜感,避免每次采用相同的视频流开始直播。

在该步骤中,选择直播流的动作由云端导播台执行。

在步骤s35中,云端设备输出直播流。

也即将选出的直播流输出给用户设备,其中输出直播流包括对直播流进行转码和输出两个步骤。

在该步骤中,直播流的转码动作由云端转码设备执行。

实现时,步骤s35可以包括以下实现方式:第一种实现方式,对直播流进行转码;将转码后的直播流输出给用户设备。第二种实现方式,对接收到的多路视频流均进行转码;将转码后的直播流输出给用户设备。

而第一种实现方式又可以有如下两种情况,第一种情况:云端导播台在选择出直播流后,将该视频流输出到云端转码设备;云端转码设备对该直播流进行转码并输出。第二种情况:云端导播台将多路视频流均输出到云端转码设备,同时将直播流的编号通知给云端转码设备;云端转码设备同时对这多路视频流进行转码,并输出转码后的直播流。

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

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

在步骤s36中,当云端设备检测到设定的触发事件时,云端设备从多路视频流中选择一路新的视频流作为直播流。

在该步骤中,当云端设备检测到设定的触发事件时,云端设备确定设定的触发事件发生时输出的直播流(视频流),然后在接收到的视频流中其他视频流(除设定的触发事件发生时输出的视频流)中选择直播流。

其中,云端设备选择新的直播流时的方式(步骤s36)和选择直播流时的方式(步骤s34)可以相同,也可以不同。

例如,选择直播流时的方式为预定编号时,选择新的直播流时的方式可以为选取编号在设定的触发事件发生时输出的直播流的编号后一位的视频流进行输出。选择直播流时的方式为选择多路视频流中码率最高的视频流作为直播流时,选择新的直播流时的方式可以为在接收到的视频流中其他视频流中选择码率最高的视频流作为直播流。选择直播流时的方式为随机选取一路视频流作为直播流时,选择新的直播流时的方式可以为在接收到的视频流中其他视频流中选择码率最高的视频流作为直播流。选择直播流时的方式为选择多路视频流中码率最高的视频流作为直播流时,选择新的直播流时的方式可以为在接收到的视频流中其他视频流中随机选取一路视频流作为直播流。需要说明的是,这里新的直播流是相对于前一次的直播流而言。

更进一步地,该方法还可以包括:记录各个视频流作为直播视频流的时间,可以包括视频流作为直播流的开始时间和结束时间;当视频流作为直播流结束的时间到当前时间之间的时长超过预定时长时,可以重新作为直播流的候选,能够通过上述直播流选择方案选择而重新成为直播流。

这里的设定的触发事件可以包括设定事件和突发事件中的至少一种。其中,设定事件可以包括时间达到设定时间点,或者当前输出的直播流的输出时间达到预定时长。例如,设定时间点可以是每个整点,步骤s36则可以包括在每个整点进行直播流的切换;预定时长可以为一个小时,步骤s36则可以包括在当前直播流的输出达到一个小时时,进行直播流的切换。其中,突发事件可以包括当前输出的直播流的码率小于或等于阈值。例如阈值可以为0,则当当前直播流的码率为0时,切换直播流。

在本公开实施例中,当检测到不同的设定的触发事件时,可以采用不同的方式选择新的直播流。例如,触发事件为时间达到设定时间点,或者当前输出的直播流的输出时间达到预定时长时,选择新的直播流时的方式可以为选取编号在设定的触发事件发生时输出的直播流的编号后一位的视频流进行输出;触发事件为当前输出的直播流的码率小于或等于阈值时,选择新的直播流时的方式可以为在接收到的视频流中其他视频流中选择码率最高的视频流作为直播流。

在本公开实施例中,视频流选择方案和设定的触发事件均可以进行事先设置。其过程可以采用如下方式:

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

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

图2d是本公开提供的一种导播台界面的示意图,参见图2d,该导播台界面可以提供一视频流选择方案界面1a,视频流选择方案界面1a包括选择按钮1a,以及对应的参数选择框1b。例如,视频流选择方案的按钮可以包括三个,分别对应前述三种方案,用户点击不同的按钮1a会在1b显示对应的参数选择框,以供用户输入。在根据编号选择直播流时,用户可以在参数选择框内设置预定编号列表。在随机选择直播流时,用户可以在参数选择框内设置随机视频流的范围,例如在编号1-4的视频流内进行随机等。

为了方便设置,还可以在该导播台界面上同时播放这多路视频流,也即通过导播台界面同时输出多路视频流,这样用户在输入视频流的编号时,可以对照视频流的画面,参见图2d,该导播台界面包括视频输出界面3a,界面3a包括多路视频流的显示框(以及对应编号),通过该界面3a可以看到对应的视频流,便于用户选择。另外,这种设置使得编号设置除了可以是输入对应的编号,还可以是点击对应的视频流的播放画面,从而便于选择。

其中,在该导播台界面上同时播放这多路视频流可以与步骤s35的第二种实现方式关联:对接收到的多路视频流均进行转码;将转码后的多路视频流通过该导播台界面进行输出。由于该过程中多路视频流的转码可以和步骤s35一起执行,并且在此过程中只需要用户能够对各路视频流的内容有大致印象,而考虑到传输时的资源消耗,所以可以在转码时降低其他路视频流(多路视频流中除直播流外的视频流)的清晰度(也即直播流的清晰度大于其他路视频流),从而减小传输资源消耗。

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

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

另外,在本公开实施例中,云端设备还可以对这多路视频流进行实时监控,并在视频流故障时输出告警信息。

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

本公开提供的视频直播方法可以由云端设备接收终端设备发送的多路视频流同时传输到云端,由云端设备从这多路视频流选择选择一路视频流作为直播流进行输出,实现了多画面的选择播出;另外,在上述直播过程中,多画面选择播出的实现由云端设备完成,不需要主播或者直播单位自己提供导播台设备,不但降低了直播的成本,而且将多路视频流传输到云端,由云端设备选择播出,所以即使直播现场移动,仍然能够实现从多路视频流中选择直播流,因此能够满足移动直播的需求,另外云端设备无需现场操作,解决了导播台设备操作不易的问题。

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

其中,接收单元310,用于接收至少一个终端设备发送的多路视频流,多路视频流用于传输从直播现场采集到的视频数据;选择单元320,用于从多路视频流中选择一路视频流作为直播流;输出单元330用于输出直播流。

接收单元310接收至少一个终端设备发送的多路视频流的方式可以参见步骤s33;选择单元320从多路视频流中选择一路视频流作为直播流的方式可以参见步骤s34;输出单元330输出直播流的方式可以参见步骤s35,在此省略详细描述。

可选地,该装置还可以包括:切换单元340,用于当云端设备检测到设定的触发事件时,从多路视频流中选择一路新的视频流作为直播流。切换单元340从多路视频流中选择一路新的视频流作为直播流的方式可以参见步骤s36。

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

本公开提供的视频直播方法可以由云端设备接收终端设备发送的多路视频流同时传输到云端,由云端设备从这多路视频流选择选择一路视频流作为直播流进行输出,实现了多画面的选择播出;另外,在上述直播过程中,多画面选择播出的实现由云端设备完成,不需要主播或者直播单位自己提供导播台设备,不但降低了直播的成本,而且将多路视频流传输到云端,由云端设备选择播出,所以即使直播现场移动,仍然能够实现从多路视频流中选择直播流,因此能够满足移动直播的需求,另外云端设备无需现场操作,解决了导播台设备操作不易的问题。

图4是根据一示例性实施例示出的一种视频直播装置的框图,参照图4,该装置包括:获取单元410和传输单元420。

其中,获取单元410,用于获取直播现场采集到的至少一路视频流;传输单元420,用于将所述至少一路视频流传输到云端设备,以使云端设备从多路视频流中选择一路视频流作为直播流进行输出,多路视频流包括至少一路视频流。

获取单元410获取直播现场采集到的至少一路视频流的方式可以参见步骤s31;传输单元420将至少一路视频流传输到云端设备的方式可以参见步骤s32,在此省略详细描述。

本公开提供的视频直播方法可以由云端设备接收终端设备发送的多路视频流同时传输到云端,由云端设备从这多路视频流选择选择一路视频流作为直播流进行输出,实现了多画面的选择播出;另外,在上述直播过程中,多画面选择播出的实现由云端设备完成,不需要主播或者直播单位自己提供导播台设备,不但降低了直播的成本,而且将多路视频流传输到云端,由云端设备选择播出,所以即使直播现场移动,仍然能够实现从多路视频流中选择直播流,因此能够满足移动直播的需求,另外云端设备无需现场操作,解决了导播台设备操作不易的问题。

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

接收至少一个终端设备发送的多路视频流,多路视频流用于传输从直播现场采集到的视频数据;

从多路视频流中选择一路视频流作为直播流;

输出直播流。

在本公开的一种实现方式中,接收至少一个终端设备发送的多路视频流,包括:

接收至少一个终端设备采用同一帐号发送的多路视频流。

在本公开的另一种实现方式中,从多路视频流中选择一路视频流作为直播流,包括:

根据接收到的多路视频流的编号选择预定编号的视频流作为直播流;或者,

根据接收到的多路视频流的码率,选择多路视频流中码率最高的视频流作为直播流;或者,

从接收到的多路视频流中随机选取一路视频流作为直播流。

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

当云端设备检测到设定的触发事件时,从多路视频流中选择一路新的视频流作为直播流。

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

设定事件包括时间达到设定时间点,或者当前输出的直播流的输出时间达到预定时长;

突发事件包括当前输出的直播流的码率小于或等于阈值。

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

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

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

在本公开的另一种实现方式中,获取直播设置信息包括:

获取用户通过导播台界面输入的直播设置信息。

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

通过导播台界面同时输出多路视频流。

图6是根据一示例性实施例示出的一种终端设备600的框图。例如,终端设备600可以是计算机、移动终端等。

参照图6,终端设备600可以包括以下一个或多个组件:处理组件602,存储器604,电力组件606,多媒体组件608,音频组件610,输入/输出(i/o)的接口612,传感器组件614,以及通信组件616。

处理组件602通常控制终端设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。

存储器604被配置为存储各种类型的数据以支持在终端设备600的操作。这些数据的示例包括用于在终端设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。

电力组件606为终端设备600的各种组件提供电力。电力组件606可以包括电源管理系统,一个或多个电源,及其他与为终端设备600生成、管理和分配电力相关联的组件。

多媒体组件608包括在所述终端设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当终端设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(mic),当终端设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。

i/o接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件614包括一个或多个传感器,用于为终端设备600提供各个方面的状态评估。例如,传感器组件614可以检测到设备600的打开/关闭状态,组件的相对定位,例如所述组件为终端设备600的显示器和小键盘,传感器组件614还可以检测终端设备600或终端设备600一个组件的位置改变,用户与终端设备600接触的存在或不存在,终端设备600方位或加速/减速和终端设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件616被配置为便于终端设备600和其他设备之间有线或无线方式的通信。终端设备600可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。

在示例性实施例中,终端设备600可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由终端设备600的处理器620执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种视频直播方法,所述方法包括:

获取直播现场采集到的至少一路视频流;

将至少一路视频流传输到云端设备,以使云端设备从多路视频流中选择一路视频流作为直播流进行输出,多路视频流包括至少一路视频流。

在本公开的一种实现方式中,将至少一路视频流传输到云端设备,包括:

采用设定帐号将至少一路视频流传输到云端设备。

在本公开的另一种实现方式中,采用设定帐号将至少一路视频流传输到云端设备,包括:

将设定帐号以及对应的密码发送到云端设备;

在设定帐号以及对应的密码通过云端设备验证后,将至少一路视频流传输到云端设备。

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

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

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

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