一种播放直播视频的方法、装置和系统与流程

文档序号:11437605阅读:191来源:国知局
一种播放直播视频的方法、装置和系统与流程

本公开是关于互联网技术领域,尤其是关于一种播放直播视频的方法、装置和系统。



背景技术:

随着互联网技术的发展,手机、计算机等终端得到了广泛的应用,相应的终端上的应用程序的种类越来越多、功能越来越丰富。网络直播应用程序即是一种很常用的应用程序。

观众可以通过网络直播应用程序观看某直播间的直播视频。观众可以通过点击网络直播应用程序中的直播间标识列表中的某直播间标识,触发终端显示某直播间的直播界面,并可以触发终端向服务器获取该直播间的直播视频。其中,终端和服务器往往采用rtmp(realtimemessagingprotocol,实时消息传输协议)传输直播视频,该协议下,观众点击网络直播应用程序中的直播间标识列表中的某直播间标识后,终端往往会与服务器依次完成三次握手操作和目标操作(目标操作包括连接服务器子应用操作、创建媒体流操作和播放媒体流操作),之后,服务器可以向终端发送直播视频。具体的,终端与服务器完成三次握手操作后,可以依次向服务器发送目标操作对应的目标指令(即连接服务器子应用指令、创建媒体流指令和播放媒体流指令),每当向服务器发送一个目标指令后,终端可以等待服务器的响应,得到该目标指令的正确响应后,终端再向服务器发送下一个目标指令,直至目标指令发送完成,即终端采用等停模式依次发送每个目标指令。

在实现本公开的过程中,发明人发现至少存在以下问题:

基于上述终端和服务器基于rtmp协议传输直播视频的处理方式,用户点击某直播间标识后,终端与服务器之间需要完成三次握手操作,然后,需要按照等停模式依次完成目标操作后方可收到服务器发送的直播视频,从而,导致终端获取直播视频的时长较长。



技术实现要素:

为了克服相关技术中存在的终端获取直播视频的时长较长的问题,本公开提供了一种播放直播视频的方法、装置和系统。所述技术方案如下:

根据本公开实施例的第一方面,提供了一种播放直播视频的方法,所述方法包括:

当接收到目标直播间的直播视频获取指令时,向服务器发送目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令;

接收所述服务器发送的所述目标直播间对应的直播视频;

播放所述直播视频。

可选的,所述直播视频获取请求还携带有协议版本标识。

可选的,所述方法还包括:

接收所述服务器发送的对应所述目标指令的响应信息;

所述播放所述直播视频,包括:

如果对应所述目标指令的响应信息正确,则播放所述直播视频。

根据本公开实施例的第二方面,提供了一种播放直播视频的方法,所述方法包括:

接收终端发送的目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令;

执行对应所述目标指令的处理,如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

可选的,所述直播视频获取请求还携带有协议版本标识;

所述执行对应所述目标指令的处理,包括:

如果所述直播视频获取请求中携带的协议版本标识为目标版本标识,则执行对应所述目标指令的处理。

可选的,所述如果执行成功,则向所述终端发送所述目标直播间对应的直播视频,包括:

如果执行成功,则向所述终端发送对应所述目标指令的响应信息,并向所述终端发送所述目标直播间对应的直播视频。

可选的,所述方法还包括:

如果执行失败,则向所述终端发送对应所述目标指令的失败通知。

可选的,所述执行对应所述目标指令的处理,如果执行成功,则向所述终端发送所述目标直播间对应的直播视频,包括:

执行对应所述connect指令的处理,如果执行成功,则执行对应所述creatstream指令的处理,如果执行成功,则执行对应所述play指令的处理,如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

根据本公开实施例的第三方面,提供了一种终端,所述终端包括:

发送模块,用于当接收到目标直播间的直播视频获取指令时,向服务器发送目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令;

接收模块,用于接收所述服务器发送的所述目标直播间对应的直播视频;

播放模块,用于播放所述直播视频。

可选的,所述直播视频获取请求还携带有协议版本标识。

可选的,所述接收模块,还用于:

接收所述服务器发送的对应所述目标指令的响应信息;

所述播放模块,用于:

如果对应所述目标指令的响应信息正确,则播放所述直播视频。

根据本公开实施例的第四方面,提供了一种服务器,所述服务器包括:

接收模块,用于接收终端发送的目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令;

执行模块,用于执行对应所述目标指令的处理;

发送模块,用于如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

可选的,所述直播视频获取请求还携带有协议版本标识;

所述执行模块,用于:

如果所述直播视频获取请求中携带的协议版本标识为目标版本标识,则执行对应所述目标指令的处理。

可选的,所述发送模块,用于:

如果执行成功,则向所述终端发送对应所述目标指令的响应信息,并向所述终端发送所述目标直播间对应的直播视频。

可选的,所述发送模块,还用于:

如果执行失败,则向所述终端发送对应所述目标指令的失败通知。

可选的,所述执行模块,用于:

执行对应所述connect指令的处理,如果执行成功,则执行对应所述creatstream指令的处理,如果执行成功,则执行对应所述play指令的处理;

所述发送模块,用于:

如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

根据本公开实施例的第五方面,提供了一种播放直播视频的系统,所述系统包括终端和服务器,其中:

所述终端,如第三方面所述的终端;

所述服务器,如第四方面所述的服务器。

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

本公开实施例中,当接收到用户输入的目标直播间的直播视频获取指令后,终端可以向服务器发送携带有connect指令、creatstream指令和play指令的直播视频获取请求,服务器接收到直播视频获取请求后,可以获取其中的connect指令、creatstream指令和play指令,并可以执行对应的处理,如果执行成功,则可以向终端发送直播视频。这样,终端可以一次性将connect指令、creatstream指令和play指令发送至服务器,服务器可以一次性执行对应的处理,无需终端采用等停模式发送上述指令,从而,可以缩短终端接收到目标直播间的直播视频获取指令后的等待时长,即可以缩短终端获取直播视频的时长。

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

附图说明

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

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

图2是根据一示例性实施例示出的一种系统框架示意图;

图3是根据一示例性实施例示出的一种终端的结构示意图;

图4是根据一示例性实施例示出的一种服务器的结构示意图;

图5是根据一示例性实施例示出的一种终端的结构示意图;

图6是根据一示例性实施例示出的一种服务器的结构示意图。

通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。

具体实施方式

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

本公开一示例性实施例提供了一种播放直播视频的方法,该方法可以由终端和服务器共同实现,其中,终端可以是具有网络直播功能的终端,比如可以是安装有网络直播应用程序的终端,也可以是能够通过浏览器打开网页应用程序的终端,服务器可以是网络直播功能的后台服务器。该终端中可以设置有处理器、收发器和显示器、扬声器,处理器可以用于获取直播视频的相关处理,收发器可以用于接收和发送数据,显示器可以用于显示直播视频中的图像画面,扬声器可以用于播放直播视频中的音频数据。服务器中可以设置有处理器、处理器,处理器可以用于执行对应目标指令的处理,收发器可以用于发送和接收数据。

下面将结合实施方式,对图1所示的处理流程进行详细的说明,内容可以如下:

在步骤101中,当接收到目标直播间的直播视频获取指令时,终端向服务器发送目标直播间的直播视频获取请求,其中,直播视频获取请求中携带有目标指令,目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令。

在实施中,终端中可以安装有网络直播应用程序或者通过浏览器运行网页应用程序(其中,网页应用程序可以通过flash(闪客)播放直播视频),用户想要观看某直播间的直播视频时,可以通过网络直播应用程序中的直播间标识列表中,选择该直播间(可称为目标直播间)的直播间标识。当用户选择目标直播间的直播间标识后,可以触发终端接收到用户输入的目标直播间的直播视频获取指令,进而,终端可以基于修改后的rtmp(realtimemessagingprotocol,实时消息传输协议)向服务器获取目标直播间的直播视频。具体的,当接收到用户输入的目标直播间的直播视频获取指令时,终端即可向服务器发送目标直播间的直播视频获取请求,如图2所示,无需再次与服务器进行三次握手的操作,其中,直播视频获取请求中可以携带有connect指令、creatstream指令和play指令(connect指令、creatstream指令和play指令可以称为目标指令)。也就是说,修改后的rtmp,终端接收到用户输入的目标直播间的直播视频获取指令时,无需采用等停模式一次向服务器发送connect指令、creatstream指令和play指令,而是一次性将connect指令、creatstream指令和play指令发送至服务器。其中,play指令中携带的流标识可以是1。

可选的,终端向服务器发送的直播视频获取请求中还可以携带有协议版本标识。

在实施中,修改后的rtmp可以具有特定的协议版本标识,其中,该特定的协议版本标识可以区别于现有的正在使用的rtmp的协议版本标识,例如,修改后的rtmp的协议版本标识可以是区别于现有的正在使用的rtmp的协议版本标识的特定数字(比如可以是1),也可以是特定数字与魔法码magiccode(比如可以是0x2112ffeeeeff2112)的组合。

在步骤102中,服务器接收终端发送的目标直播间的直播视频获取请求,其中,直播视频获取请求中携带有目标指令,目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令。

在实施中,终端向服务器发送携带有connect指令、creatstream指令和play指令的直播视频获取请求后,服务器可以接收终端发送的直播视频获取请求,并对其进行解析,获取其中携带的connect指令、creatstream指令和play指令。

在步骤103中,服务器执行对应目标指令的处理,如果执行成功,则向终端发送目标直播间对应的直播视频。

在实施中,服务器获取到终端发送的connect指令、creatstream指令和play指令后,可以分别执行对应connect指令、creatstream指令和play指令的处理,如果上述三个指令对应的处理都执行成功,则服务器可以向终端发送目标直播间对应的直播视频。

可选的,针对直播视频获取请求中携带有协议版本标识的情况,服务器接收到直播视频获取请求后的处理可以如下:如果直播视频获取请求中携带的协议版本标识为目标版本标识,则执行对应目标指令的处理。

在实施中,服务器获取到直播视频获取请求中携带的协议版本标识后,可以判断直播视频获取请求中携带的协议版本标识是否为预设的目标版本标识(其中,预设的目标版本标识即是本方案提供的修改后的rtmp的协议版本标识),如果直播视频获取请求中携带的协议版本标识为目标版本标识,则服务器可以执行对应目标指令的处理,否则,服务器可以执行预设的现有的标准rtmp下的处理过程。这样,服务器既可以支持现有的标准rtmp下的处理过程,也可以支持本方案提供的修改后的rtmp下的处理过程。针对目标协议版本标识为特定数字与魔法码组合的情况,服务器接收到直播视频获取请求后,然后可以判断第一预设位置上的信息(比如第一个字节上的信息)是否为目标数字(比如1),如果不是,则可以执行现有的标准rtmp下的处理过程,如果是,则可以继续判断第二预设位置上的信息(比如第二至九个字节上的信息)是否为目标魔法码,如果是,则可以执行对应目标指令的处理,如果不是,则可以执行现有的标准rtmp下的处理过程。

可选的,服务器对目标指令对应的处理执行成功后,还可以向终端发送响应信息,相应的,步骤103的处理过程可以如下:如果执行成功,则向终端发送对应目标指令的响应信息,并向终端发送目标直播间对应的直播视频。

在实施中,服务器对上述三个指令对应的处理执行成功后,可以向终端发送对应目标指令的响应信息,即可以向终端发送分别对应connect指令、creatstream指令和play指令的响应信息(其中,上述三个指令对应的响应信息可以是同时发送至终端的),发送响应信息后,可以向终端发送目标直播间对应的直播视频。

可选的,当服务器对上述三个指令中的任一指令对应的处理执行失败后,还可以向终端发送失败通知,相应的,处理过程可以如下:如果执行失败,则向终端发送对应目标指令的失败通知。

在实施中,服务器可以依次执行connect指令、creatstream指令和play指令,即服务器接收到直播视频获取请求后,可以先执行对应connect指令的处理,若执行失败,可以不再执行对应creatstream指令和play指令的处理,直接向终端发送对应目标指令(即connect指令)的失败通知并关闭网络连接,若执行成功,则可以继续执行对应creatstream指令的处理,若执行失败,可以不再执行对应play指令的处理,直接向终端发送对应目标指令(即creatstream指令)的失败通知并关闭网络连接,若执行成功,则可以继续执行对应play指令的处理,如果执行成功,则可以向终端发送目标直播间的直播视频,和对应目标指令的响应信息,若执行失败,可以向终端发送对应目标指令(即play指令)的失败通知并关闭网络连接,其中,失败通知中可以携带有失败错误码。

相应的,终端可以接收服务器发送的失败通知。接收到失败通知后,终端可以按照现有的rtmp下的处理过程,再次向服务器获取目标直播间的直播视频。

在步骤104中,终端接收服务器发送的目标直播间对应的直播视频。

在实施中,服务器向终端发送目标直播间对应的直播视频后,终端可以接收服务器发送的直播视频。

在步骤105中,终端播放直播视频。

在实施中,终端接收到直播视频后,可以对直播视频进行播放。

可选的,针对服务器向终端发送响应信息的情况,终端还可以进行如下处理:接收服务器发送的对应目标指令的响应信息。相应的,步骤105的处理过程可以如下:如果对应目标指令的响应信息正确,则播放直播视频。

在实施中,服务器向终端发送对应目标指令的响应信息后,终端可以接收终端发送的响应信息,并可以判断对应目标指令的响应信息是否正确(例如,终端中可以预先存储有目标指令对应的正确响应信息,接收到服务器发送的响应信息后,可以将接收到的响应信息与预先存储的正确响应信息作比较,如果相同,则可以判定服务器发送的响应信息正确,否则,可判定为错位),如果对应目标指令的响应信息正确,则可以播放直播视频,其中,终端接收到的直播视频可以放在缓存中,如果对应目标指令的响应信息正确,则可以播放存储在缓存中的直播视频。如果对应目标指令的响应信息错误,则终端可以关闭已建立的网络连接,按照现有的rtmp下的处理过程,再次向服务器获取目标直播间的直播视频。

另外,终端接收到服务器发送的直播视频后,还可以对直播视频的格式进行转换。具体的,服务器向终端发送的直播视频可以是rtmp格式的直播视频数据包,终端接收到rtmp格式的直播视频数据包后,可以对其进行解封装,提取出时间戳、视频数据,然后,可以按照flv(flashvideo,流媒体)格式将提取出的时间戳、视频数据封装成flv格式,并可以将flv格式的直播视频发送至netstream(其中,netstream是一种组件名称)组件,netstream对flv格式的直播视频经过一定处理后,可以将处理后的flv格式的直播视频发送至与netstream关联的video(其中,video是一种组件名称)组件,最后,video组件可以对视频数据进行播放。其中,如果对应目标指令的响应信息错误,则可以通过netconnection(其中,netconnection是一种组件名称)组件按照现有的标准rtmp下的处理过程与服务器建立通信,成功建立后,可以将netconnection组件与netstream组件关联。

本公开实施例中,当接收到用户输入的目标直播间的直播视频获取指令后,终端可以向服务器发送携带有connect指令、creatstream指令和play指令的直播视频获取请求,服务器接收到直播视频获取请求后,可以获取其中的connect指令、creatstream指令和play指令,并可以执行对应的处理,如果执行成功,则可以向终端发送直播视频。这样,终端可以一次性将connect指令、creatstream指令和play指令发送至服务器,服务器可以一次性执行对应的处理,无需终端采用等停模式发送上述指令,从而,可以缩短终端接收到目标直播间的直播视频获取指令后的等待时长,即可以缩短终端获取直播视频的时长。

本公开又一示例性实施例提供了一种终端,如图3所示,该终端包括:

发送模块310,用于当接收到目标直播间的直播视频获取指令时,向服务器发送目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令;

接收模块320,用于接收所述服务器发送的所述目标直播间对应的直播视频;

播放模块330,用于播放所述直播视频。

可选的,所述直播视频获取请求还携带有协议版本标识。

可选的,所述接收模块320,还用于:

接收所述服务器发送的对应所述目标指令的响应信息;

所述播放模块330,用于:

如果对应所述目标指令的响应信息正确,则播放所述直播视频。

基于相同的技术构思,本公开又一示例性实施例提供了一种服务器,如图4所示,该服务器包括:

接收模块410,用于接收终端发送的目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令;

执行模块420,用于执行对应所述目标指令的处理;

发送模块430,用于如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

可选的,所述直播视频获取请求还携带有协议版本标识;

所述执行模块420,用于:

如果所述直播视频获取请求中携带的协议版本标识为目标版本标识,则执行对应所述目标指令的处理。

可选的,所述发送模块430,用于:

如果执行成功,则向所述终端发送对应所述目标指令的响应信息,并向所述终端发送所述目标直播间对应的直播视频。

可选的,所述发送模块430,还用于:

如果执行失败,则向所述终端发送对应所述目标指令的失败通知。

可选的,所述执行模块420,用于:

执行对应所述connect指令的处理,如果执行成功,则执行对应所述creatstream指令的处理,如果执行成功,则执行对应所述play指令的处理;

所述发送模块430,用于:

如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

可选的,所述发送模块430,还用于:

如果对对应所述connect指令的处理执行失败,则向终端发送对应所述connect指令的失败通知并关闭网络连接,如果对对应所述creatstream指令的处理执行失败,则向终端发送对应所述creatstream指令的失败通知并关闭网络连接,如果对对应所述play指令的处理执行失败,则向终端发送对应所述play指令的失败通知并关闭网络连接。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本公开实施例中,当接收到用户输入的目标直播间的直播视频获取指令后,终端可以向服务器发送携带有connect指令、creatstream指令和play指令的直播视频获取请求,服务器接收到直播视频获取请求后,可以获取其中的connect指令、creatstream指令和play指令,并可以执行对应的处理,如果执行成功,则可以向终端发送直播视频。这样,终端可以一次性将connect指令、creatstream指令和play指令发送至服务器,服务器可以一次性执行对应的处理,无需终端采用等停模式发送上述指令,从而,可以缩短终端接收到目标直播间的直播视频获取指令后的等待时长,即可以缩短终端获取直播视频的时长。

需要说明的是:上述实施例提供的播放直播视频的装置在播放直播视频时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的播放直播视频的装置与播放直播视频的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本公开再一示例性实施例示出了一种播放直播视频的系统,所述系统包括终端和服务器,其中:

所述终端,用于当接收到目标直播间的直播视频获取指令时,向服务器发送目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令,接收所述服务器发送的所述目标直播间对应的直播视频,播放所述直播视频;

所述服务器,用于接收终端发送的目标直播间的直播视频获取请求,执行对应所述目标指令的处理,如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

本公开实施例中,当接收到用户输入的目标直播间的直播视频获取指令后,终端可以向服务器发送携带有connect指令、creatstream指令和play指令的直播视频获取请求,服务器接收到直播视频获取请求后,可以获取其中的connect指令、creatstream指令和play指令,并可以执行对应的处理,如果执行成功,则可以向终端发送直播视频。这样,终端可以一次性将connect指令、creatstream指令和play指令发送至服务器,服务器可以一次性执行对应的处理,无需终端采用等停模式发送上述指令,从而,可以缩短终端接收到目标直播间的直播视频获取指令后的等待时长,即可以缩短终端获取直播视频的时长。

本公开再一示例性实施例示出了一种终端的结构示意图。该终端可以是手机、个人电脑等。

参照图5,终端500可以包括以下一个或多个组件:处理组件502,存储器504,电源组件506,多媒体组件508,音频组件510,输入/输出(i/o)的接口512,传感器组件514,以及通信组件516。

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

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

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

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

音频组件510被配置为输出和/或输入音频信号。例如,音频组件510包括一个麦克风(mic),当音频输出设备500处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器504或经由通信组件516发送。

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

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

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

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

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

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

当接收到目标直播间的直播视频获取指令时,向服务器发送目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令;

接收所述服务器发送的所述目标直播间对应的直播视频;

播放所述直播视频。

可选的,所述直播视频获取请求还携带有协议版本标识。

可选的,所述方法还包括:

接收所述服务器发送的对应所述目标指令的响应信息;

所述播放所述直播视频,包括:

如果对应所述目标指令的响应信息正确,则播放所述直播视频。

本公开实施例中,当接收到用户输入的目标直播间的直播视频获取指令后,终端可以向服务器发送携带有connect指令、creatstream指令和play指令的直播视频获取请求,服务器接收到直播视频获取请求后,可以获取其中的connect指令、creatstream指令和play指令,并可以执行对应的处理,如果执行成功,则可以向终端发送直播视频。这样,终端可以一次性将connect指令、creatstream指令和play指令发送至服务器,服务器可以一次性执行对应的处理,无需终端采用等停模式发送上述指令,从而,可以缩短终端接收到目标直播间的直播视频获取指令后的等待时长,即可以缩短终端获取直播视频的时长。

图6是根据一示例性实施例示出的一种播放直播视频的装置1900的框图。例如,装置1900可以被提供为一服务器。参照图6,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理部件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述播放直播视频的方法。

装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(i/o)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。

装置1900可以包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:

接收终端发送的目标直播间的直播视频获取请求,其中,所述直播视频获取请求中携带有目标指令,所述目标指令包括连接服务器子应用connect指令、创建媒体流creatstream指令和播放媒体流play指令;

执行对应所述目标指令的处理,如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

可选的,所述直播视频获取请求还携带有协议版本标识;

所述执行对应所述目标指令的处理,包括:

如果所述直播视频获取请求中携带的协议版本标识为目标版本标识,则执行对应所述目标指令的处理。

可选的,所述如果执行成功,则向所述终端发送所述目标直播间对应的直播视频,包括:

如果执行成功,则向所述终端发送对应所述目标指令的响应信息,并向所述终端发送所述目标直播间对应的直播视频。

可选的,所述方法还包括:

如果执行失败,则向所述终端发送对应所述目标指令的失败通知。

可选的,所述执行对应所述目标指令的处理,如果执行成功,则向所述终端发送所述目标直播间对应的直播视频,包括:

执行对应所述connect指令的处理,如果执行成功,则执行对应所述creatstream指令的处理,如果执行成功,则执行对应所述play指令的处理,如果执行成功,则向所述终端发送所述目标直播间对应的直播视频。

可选的,如果对对应所述connect指令的处理执行失败,则向终端发送对应所述connect指令的失败通知并关闭网络连接,如果对对应所述creatstream指令的处理执行失败,则向终端发送对应所述creatstream指令的失败通知并关闭网络连接,如果对对应所述play指令的处理执行失败,则向终端发送对应所述play指令的失败通知并关闭网络连接。

本公开实施例中,当接收到用户输入的目标直播间的直播视频获取指令后,终端可以向服务器发送携带有connect指令、creatstream指令和play指令的直播视频获取请求,服务器接收到直播视频获取请求后,可以获取其中的connect指令、creatstream指令和play指令,并可以执行对应的处理,如果执行成功,则可以向终端发送直播视频。这样,终端可以一次性将connect指令、creatstream指令和play指令发送至服务器,服务器可以一次性执行对应的处理,无需终端采用等停模式发送上述指令,从而,可以缩短终端接收到目标直播间的直播视频获取指令后的等待时长,即可以缩短终端获取直播视频的时长。

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

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

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