CN111479122B - 视频播放方法、装置、设备及存储介质 - Google Patents
视频播放方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111479122B CN111479122B CN202010284476.8A CN202010284476A CN111479122B CN 111479122 B CN111479122 B CN 111479122B CN 202010284476 A CN202010284476 A CN 202010284476A CN 111479122 B CN111479122 B CN 111479122B
- Authority
- CN
- China
- Prior art keywords
- playing
- code stream
- server
- target
- terminal
- 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
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/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/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/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47217—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
- H04N21/6437—Real-time Transport Protocol [RTP]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请提供一种视频播放方法、装置、设备及存储介质。该方法包括:在从服务器接收第一码流并播放过程中,接收用户发送的目标播放指令,所述目标播放指令用于指示待播放视频的目标播放位置,所述目标播放位置与当前播放位置不同;向服务器发送跳转播放请求,所述跳转播放请求用于请求所述服务器发送从所述目标播放位置开始的第二码流;接收所述服务器发送的所述第二码流并播放。该方法避免了视频跳转播放时的卡顿或黑屏,提高了用户体验。
Description
技术领域
本申请涉及流媒体技术,尤其涉及一种视频播放方法、装置、设备及存储介质。
背景技术
目前,在电视终端中广泛采用流媒体的方式进行视频播放,将视频文件存放在流媒体服务器上,通过流媒体服务将视频文件转化成流的方式发送给电视终端,从而再电视终端实现视频的边下边看。
随着用户需求的逐渐提高,在电视应用中通常希望能够对流媒体播放进行快速定位,即,将视频从当前播放位置拖动到另一位置进行播放。由于电视终端与服务器之间通过实时流传输协议(Real Time Streaming Protocol,RTSP)进行流媒体播放,而在RTSP协议中,电视终端只能在初始与服务器建立连接并发送播放命令时将开始播放位置信息发送给服务器,而一旦开始播放后,若需要从新的位置开始播放,则电视终端只能关闭当前的连接,并重新与服务器建立连接,再将新的播放位置信息通过播放命令发送给服务器。
由于上述过程中电视终端与服务器需要关闭当前连接并重建连接,导致用户拖动播放位置时会产生较长的卡顿或黑屏等现象,给用户带来很差的观看体验。
发明内容
本申请提供一种视频播放方法、装置、设备及存储介质,避免了用户在视频播放过程中拖动播放位置时的卡顿或黑屏,提高了用户观看体验。
第一方面,本申请提供一种视频播放方法,包括:
在从服务器接收第一码流并播放过程中,接收用户发送的目标播放指令,所述目标播放指令用于指示待播放视频的目标播放位置,所述目标播放位置与当前播放位置不同;
向服务器发送跳转播放请求,所述跳转播放请求用于请求所述服务器发送从所述目标播放位置开始的第二码流;
接收所述服务器发送的所述第二码流并播放。
可选的,所述向服务器发送跳转播放请求,包括:
确定所述目标播放位置在所述待播放视频中对应的相对时间;
向所述服务器发送跳转播放请求,所述跳转播放请求中包括所述相对时间。
可选的,所述第二码流中包括指示数据包,所述指示数据包用于指示电视终端停止播放所述第一码流并开始播放所述第二码流。
可选的,所述指示数据包为一个数据包,或者连续的多个数据包。
可选的,所述目标播放指令为所述用户对视频进度条的拖动操作;或者,为用户在所述视频进度条上所述目标播放位置的点击操作。
第二方面,本申请提供一种视频播放方法,包括:
在向电视终端发送第一码流的过程中,接收所述电视终端发送的跳转播放请求,所述跳转播放请求用于请求服务器发送从待播放视频的目标播放位置开始的第二码流;
向所述电视终端发送所述第二码流。
可选的,所述向所述电视终端发送所述第二码流,包括:
确定所述目标播放位置对应的目标媒体数据;
向所述电视终端发送包括所述目标媒体数据以及所述目标媒体数据之后的媒体数据的第二码流。
可选的,所述跳转播放请求中包括所述目标播放位置在所述待播放视频中对应的相对时间;
所述确定所述目标播放位置对应的目标媒体数据,包括:
根据所述相对时间,确定所述目标播放位置对应的目标媒体数据。
可选的,所述第二码流中包括指示数据包,所述指示数据包用于指示所述电视终端停止播放所述第一码流并开始播放所述第二码流。
可选的,所述指示数据包为一个数据包,或者连续的多个数据包。
第三方面,本申请提供一种视频播放装置,包括:
接收模块,用于在从服务器接收第一码流并播放过程中,接收用户发送的目标播放指令,所述目标播放指令用于指示待播放视频的目标播放位置,所述目标播放位置与当前播放位置不同;
发送模块,用于向服务器发送跳转播放请求,所述跳转播放请求用于请求所述服务器发送从所述目标播放位置开始的第二码流;
接收模块还用于,接收所述服务器发送的所述第二码流并播放。
可选的,所述发送模块用于:
确定所述目标播放位置在所述待播放视频中对应的相对时间;
向所述服务器发送跳转播放请求,所述跳转播放请求中包括所述相对时间。
可选的,所述第二码流中包括指示数据包,所述指示数据包用于指示电视终端停止播放所述第一码流并开始播放所述第二码流。
可选的,所述指示数据包为一个数据包,或者连续的多个数据包。
可选的,所述目标播放指令为所述用户对视频进度条的拖动操作;或者,为用户在所述视频进度条上所述目标播放位置的点击操作。
第四方面,本申请提供一种视频播放装置,包括:
接收模块,用于在向电视终端发送第一码流的过程中,接收所述电视终端发送的跳转播放请求,所述跳转播放请求用于请求服务器发送从待播放视频的目标播放位置开始的第二码流;
发送模块,用于向所述电视终端发送所述第二码流。
可选的,所述发送模块用于:
确定所述目标播放位置对应的目标媒体数据;
向所述电视终端发送包括所述目标媒体数据以及所述目标媒体数据之后的媒体数据的第二码流。
可选的,所述跳转播放请求中包括所述目标播放位置在所述待播放视频中对应的相对时间;
所述发送模块用于:
根据所述相对时间,确定所述目标播放位置对应的目标媒体数据。
可选的,所述第二码流中包括指示数据包,所述指示数据包用于指示所述电视终端停止播放所述第一码流并开始播放所述第二码流。
可选的,所述指示数据包为一个数据包,或者连续的多个数据包。
第五方面,本申请提供一种电视终端,包括:存储器、处理器、收发器和显示器;
所述存储器用于存储计算机程序;
所述处理器用于在所述计算机程序执行时,实现如上述第一方面中任一项所述的方法。
第六方面,本申请提供一种服务器,包括:存储器、处理器和收发器;
所述存储器用于存储计算机程序;
所述处理器用于在所述计算机程序执行时,实现如上述第二方面中任一项所述的方法。
第七方面,本申请提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现第一方面或第二方面中任一项所述的方法。
本申请视频播放方法、装置、设备及存储介质,该方法中电视终端在从服务器接收第一码流并播放过程中,接收到用户发送的目标播放指令,则直接向服务器发送跳转播放请求,以请求服务器发送目标播放位置开始的第二码流,并在接收到服务器发送的第二码流后,停止播放第一码流并播放第二码流。在这个过程中电视终端和服务器之间的连接没有中断,电视终端在接收到第二码流之前仍能持续接收第一码流,从而能够在用户拖动视频的播放位置时不会停止视频播放,实现视频的无缝切换,避免了卡顿或黑屏的现象,提高了用户体验。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种视频播放方法的应用场景示意图;
图2为RTSP协议中客户端与服务端的交互流程图;
图3为本申请提供的一种视频播放方法的流程示意图一;
图4为本申请提供的一种电视终端与服务器的交互流程图;
图5为本申请提供的一种视频播放方法的流程示意图二;
图6为本申请提供的一种指示数据的数据包示意图;
图7为本申请提供的一种视频播放装置的结构示意图一;
图8为本申请提供的一种视频播放装置的结构示意图二;
图9为本申请提供的一种电视终端的结构示意图;
图10为本申请提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的视频播放方法应用于电视终端的视频播放中,用户通过电视终端观看视频时,常常需要从当前播放位置跳转到另一位置进行播放。示例的,如图1中所示,用户通过电视终端观看一部电影,当观看至A点的播放位置时,用户想要快进观看,于是将进度条拖动至B点的播放位置,从B点的继续观看。
以下首先对电视终端和提供视频媒体数据的服务器之间的交互过程进行说明。目前,电视终端与服务器之间采用RTSP协议进行流媒体播放。RTSP协议中电视终端即客户端,与服务器即服务端的标准交互过程如图2中所示,其中包括了6个标准的请求与响应过程。
1、电视终端向服务器发送可选方法请求(OPTION request),用于询问服务端有哪些方法可用,服务器在可选方法响应(OPTION response)中提供的所有可用方法。
2、电视终端向服务器发送描述请求(DESCRIBE request),要求得到服务器提供的媒体初始化描述信息,服务器在描述响应中(DESCRIBE response)回应媒体初始化描述信息,主要是描述会话协议(Session Description Protocol,SDP)信息。
3、电视终端向服务器发送设置请求(SETUP request),用于设置会话的属性以及传输模式,并提醒服务器建立会话。服务器通过设置响应(SETUP response)与电视终端建立会话,并返回会话标识符以及会话相关信息。
4、电视终端向服务器发送播放请求(PLAY request)以请求媒体数据。服务器通过播放响应(PLAY response)回应该请求的信息。
5、服务器向电视终端发送流媒体数据。
6、电视终端向服务器发送关闭请求(TEARDOWN request)以请求关闭会话,服务器通过关闭响应(TEARDOWN response)回应该关闭请求。
在上述过程中,电视终端通过OPTION、DESCRIBE和SETUP命令与服务器建立连接,并在建立连接后通过PLAY命令将初始播放位置信息发送给服务器,从而服务器按照该初始播放位置信息的指示向电视终端发送相应的码流。
一旦电视终端开始播放后,若需要从新的位置开始播放,则电视终端需要与服务器建立新的连接,即,电视终端将当前连接关闭后,再次执行上述的OPTION、DESCRIBE和SETUP命令与服务器建立新的连接,之后再将新的播放位置信息通过PLAY命令发送给服务器,以使服务器按照新的播放位置信息的指示向电视终端发送相应的新的码流。电视终端与服务器关闭当前连接并重建新的连接的过程,会导致用户在视频观看过程中拖动播放位置时产生较长的卡顿或黑屏,给用户带来很差的观看体验。
为了解决上述问题,本申请的视频播放方法中提出,在视频观看过程中,若用户操作从当前播放位置跳转至新的播放位置,电视终端与服务器当前的连接继续保持,并且电视终端通过当前的连接将新的播放位置信息发送给服务器,请求服务器发送新的播放位置处开始的码流。这样,电视终端能够在保持当前连接没有中断的状态下接收到新的码流并开始播放,从而避免了跳转播放位置时产生卡顿或黑屏。以下结合具体实施例对本申请的视频播放方法进行说明。
图3为本申请提供的一种视频播放方法的流程示意图一。如图3所示,本实施例的方法包括:
S301、电视终端在从服务器接收第一码流并播放过程中,接收用户发送的目标播放指令。
其中,目标播放指令用于指示待播放视频的目标播放位置,目标播放位置与当前播放位置不同。
本实施例中的第一码流是电视终端当前播放的码流,第一码流可以是电视终端与服务器建立连接并向服务器请求播放后接收到的服务器发送的码流。示例的,用户通过电视终端选择一部电影并点击播放,则电视终端与服务器建立连接并向服务器发送播放请求,该播放请求中的播放位置信息为电影的起始位置,则服务器在接收到播放请求后,向电视终端发送从电影起始位置开始的第一码流,电视终端在接收到第一码流后进行播放。可以理解的是,电视终端与服务器建立连接并向服务器发送播放请求,以及服务器向电视终端发送第一码流的过程,可以是如图2中所示的电视终端通过OPTION、DESCRIBE、SETUP和PLAY命令与服务器交互的过程。
目标播放指令可以是用户对视频进度条的拖动操作,或者,是用户在视频进度条上目标播放位置的点击操作。用户在观看过程中想要从当前播放位置快进或快退到另一播放位置,即跳转到一个目标播放位置,则用户可以通过操作遥控器、鼠标或者通过屏幕触摸的方式来拖动操作视频进度条或者在视频进度条上目标播放位置进行点击操作来向电视终端发送目标播放指令。
S302、电视终端向服务器发送跳转播放请求。
其中,跳转播放请求用于请求服务器发送从目标播放位置开始的第二码流。
电视终端在接收到用户发送的目标播放指令后,向服务器发送跳转播放请求。需要说明的是,在电视终端向服务器发送跳转播放请求时,电视终端与服务器之间发送第一码流的连接仍然保持,服务器仍然向电视终端发送第一码流。即,终端设备接收到目标播放指令后,不需要断开当前与服务器的连接,而时在当前的连接下请求服务器发送从目标播放位置开始的第二码流。
本步骤中的送跳转播放请求可以是在RTSP协议中新增的一个客户端与服务端的交互过程。示例的,如图4中所示,电视终端通过OPTION、DESCRIBE、SETUP和PLAY命令与服务器建立连接并接收第一码流,之后,电视终端接收到用户发送的目标播放指令,则通过跳转播放请求(SEEK request)向服务器请求目标播放位置开始的第二码流。跳转播放请求也可以称为定位请求,本实施例对此不作限定。
S303、服务器向电视终端发送第二码流。
服务器接收到电视终端发送的跳转播放请求后,根据跳转播放请求中所包括的目标播放位置的信息确定对应的码流,也就是确定从目标播放位置开始的第二码流,并向电视终端发送第二码流。可选的,服务器先确定目标播放位置对应的目标媒体数据,再向电视终端发送包括目标媒体数据以及目标媒体数据之后的媒体数据的第二码流。与S302中相应的,如图4所示,服务器通过跳转播放响应(SEEK response)回应电视终端的请求,并开始向电视终端发送第二码流。
S304、电视终端播放第二码流。
电视终端接收到服务器发送的第二码流后,将先前接收的第一码流丢弃,对第二码流进行解析、解码、同步、显示、输出等处理,以播放目标播放位置开始的视频。
本实施例提供的视频播放方法,电视终端在从服务器接收第一码流并播放过程中,接收到用户发送的目标播放指令,则直接向服务器发送跳转播放请求,以请求服务器发送目标播放位置开始的第二码流,并在接收到服务器发送的第二码流后,停止播放第一码流并播放第二码流。在这个过程中电视终端和服务器之间的连接没有中断,电视终端在接收到第二码流之前仍能持续接收第一码流,从而能够在用户拖动视频的播放位置时不会停止视频播放,实现视频的无缝切换,避免了卡顿或黑屏的现象,提高了用户体验。
在上述实施例中S302和S303说明了电视终端在接收到用户发送的目标播放指令后,向服务器发送跳转播放请求,以及服务器根据跳转播放请求向电视终端发送目标播放位置开始的第二码流。以下再结合另一实施例对S302中电视终端发送跳转播放请求以及S303中服务器向电视终端发送第二码流做进一步说明。
图5为本申请提供的一种视频播放方法的流程示意图二。如图5所示,本实施例的方法包括:
S501、电视终端在从服务器接收第一码流并播放过程中,接收用户发送的目标播放指令。
其中,目标播放指令用于指示待播放视频的目标播放位置,目标播放位置与当前播放位置不同。
本步骤与图3所示实施例中的S301类似,此处不再赘述。
S502、电视终端确定目标播放位置在待播放视频中对应的相对时间。
待播放视频的媒体数据中具有时间戳,电视终端播放待播放视频时是根据时间来确定媒体数据的数据包播放顺序的。待播放视频的每个播放位置具有一个相对时间,显然,待播放视频开始位置的相对时间为0,每个播放位置的相对时间是这个播放位置相对于待播放视频开始位置的相对时间。电视终端在接收到目标播放指令后,确定目标播放指令中的目标播放位置相对于待播放视频开始位置的相对时间。
S503、电视终端向服务器发送跳转播放请求,跳转播放请求中包括相对时间。
电视终端向服务器发送跳转播放请求时,将目标播放位置对应的相对时间携带在跳转播放请求中,从而请求服务器发送该相对时间之后的视频码流,也就是目标播放位置开始的第二码流。
示例的,电视终端向服务器发送的跳转播放请求如下:
SEEK rtsp://example.com/media.mp4 RTSP/1.0
CSeq:4
Range:npt=5-20
Session:12345678
其中,Range字段中携带了目标播放位置的相对时间,即RTSP协议中的正常播放时间(normal play time,npt),示例中npt=5-20,其中5表示目标播放位置对应的相对时间,20为待播放视频的结束位置的相对时间。可以理解的是,待播放视频的结束位置的相对时间是可选的,即,Range字段中仅携带目标播放位置对应的相对时间。
S504、服务器根据相对时间确定目标播放位置对应的目标媒体数据。
服务器接收到跳转播放请求后,根据跳转播放请求中所携带的相对时间,以及待播放视频的媒体数据中的时间戳,在待播放视频的媒体数据中找到该相对时间所对应的目标媒体数据。由于目标播放位置与该相对时间对应,该目标媒体数据也就是目标播放位置所对应的媒体数据。
S505、服务器向电视终端发送包括目标媒体数据以及目标媒体数据之后的媒体数据的第二码流。
在确定了目标播放位置对应的目标媒体数据后,服务器向电视终端发送跳转播放相应,并开始向电视终端发送该目标媒体数据以及目标媒体数据之后的媒体数据,即从目标播放位置开始的第二码流。显然,第二码流与第一码流是通过同一个会话连接发送的。
示例的,服务器向电视终端回应的跳转播放响应如下:
RTSP/1.0 200OK
CSeq:4
Session:12345678
RTP-Info:url=rtsp://example.com/media.mp4/streamid=0;seq=9810092;rtptime=3450012
S506、电视终端播放第二码流。
本步骤与图3所示实施例中的S304类似,此处不再赘述。
本实施例中,电视终端在接收到用户发送的目标播放指令,根据目标播放指令中的目标播放位置确定出该目标播放位置对应的相对时间,并将该相对时间发送给服务器,使得服务器在接收到请求后能够快速定位到该相对时间对应的目标媒体数据,并向电视终端发送目标媒体数据之后的码流,提高了服务器的处理速度,使得跳转播放位置的场景下视频画面能够快速无缝地切换。
上述实施例中说明了电视终端接收到第二码流后就停止播放第一码流并开始播放第二码流。而为了使电视终端能够确定要在接收第二码流时立即停止播放第一码流并开始播放第二码流,服务器在向电视终端发送的第二码流中包括了用于指示电视终端停止播放第一码流并开始播放第二码流的指示数据包。电视终端在接收到指示数据包即可确定接收到的第二码流是一个新的码流,即可停止播放第一码流并开始播放该第二码流。
示例的,指示数据包可以是一个扩展的实时传输协议(Real-time TransportProtocol,RTP)专用包,以与普通数据包进行区分。如图6所示,一个RTP头部包括12字节,其中后8个字节后时间戳和同步信源(synchronization source,SSRC),在RTP专用包中将12字节的RTP头部中后8个字节的时间戳和SSRC全部变为0,用该RTP专用包表示一个新的码流开始发送。电视终端接收到这样的RTP专用包即可确定该码流为一个新的码流。可选的,指示数据包可以为一个数据包,或者为了保证电视终端能够接收到指示数据包,提高可靠性,指示数据包可以为连续的多个数据包。
图7为本申请提供的一种视频播放装置的结构示意图一。如图7所示,视频播放装置70包括:
接收模块701,用于在从服务器接收第一码流并播放过程中,接收用户发送的目标播放指令,目标播放指令用于指示待播放视频的目标播放位置,目标播放位置与当前播放位置不同;
发送模块702,用于向服务器发送跳转播放请求,跳转播放请求用于请求服务器发送从目标播放位置开始的第二码流;
接收模块701还用于,接收服务器发送的第二码流并播放。
可选的,发送模块702用于:
确定目标播放位置在待播放视频中对应的相对时间;
向服务器发送跳转播放请求,跳转播放请求中包括相对时间。
可选的,第二码流中包括指示数据包,指示数据包用于指示电视终端停止播放第一码流并开始播放第二码流。
可选的,指示数据包为一个数据包,或者连续的多个数据包。
可选的,目标播放指令为用户对视频进度条的拖动操作;或者,为用户在视频进度条上目标播放位置的点击操作。
本实施例的装置,可以用于执行图3或图5所示方法实施例中电视终端执行的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本申请提供的一种视频播放装置的结构示意图二。如图8所示,视频播放装置80包括:
接收模块801,用于在向电视终端发送第一码流的过程中,接收电视终端发送的跳转播放请求,跳转播放请求用于请求服务器发送从待播放视频的目标播放位置开始的第二码流;
发送模块802,用于向电视终端发送第二码流。
可选的,发送模块802用于:
确定目标播放位置对应的目标媒体数据;
向电视终端发送包括目标媒体数据以及目标媒体数据之后的媒体数据的第二码流。
可选的,跳转播放请求中包括目标播放位置在待播放视频中对应的相对时间;
发送模块802用于:
根据相对时间,确定目标播放位置对应的目标媒体数据。
可选的,第二码流中包括指示数据包,指示数据包用于指示电视终端停止播放第一码流并开始播放第二码流。
可选的,指示数据包为一个数据包,或者连续的多个数据包。
本实施例的装置,可以用于执行图3或图5所示方法实施例中服务器执行的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9为本申请提供的一种电视终端的结构示意图。如图9所示,电视终端90,包括:存储器901、处理器902、收发器903和显示器904;可选的,存储器901、处理器902、收发器903和显示器904可以通过总线连接。
存储器901用于存储计算机程序;
处理器902用于在计算机程序执行时,实现如上述图3或图5所示实施例中电视终端所执行的方法。
图10为本申请提供的一种服务器的结构示意图。如图10所示,服务器100,包括:存储器1001、处理器1002和收发器1003;可选的,存储器1001、处理器1002和收发器1003可以通过总线连接。
存储器1001用于存储计算机程序;
处理器1002用于在计算机程序执行时,实现如上述图3或图5所示实施例中服务器所执行的方法。
本申请还提供一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时,实现图3或图5所示实施例中电视终端或服务器所执行的方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (9)
1.一种视频播放方法,其特征在于,包括:
终端在从服务器接收第一码流并播放过程中,接收用户发送的目标播放指令;所述第一码流是所述终端通过可选方法、描述、设置和播放命令与所述服务器建立第一连接,并向服务器请求播放后接收到的所述服务器发送的码流;所述目标播放指令用于指示待播放视频的目标播放位置,所述目标播放位置与当前播放位置不同;
所述终端确定所述目标播放位置在所述待播放视频中对应的相对时间;
在所述第一连接下,所述终端向服务器发送跳转播放请求,所述跳转播放请求中包括所述相对时间;所述跳转播放请求用于请求所述服务器发送从所述目标播放位置开始的第二码流;其中,在终端向服务器发送所述跳转播放请求时,所述终端与服务器之间发送第一码流的第一连接仍然保持;
终端接收所述服务器发送的所述第二码流并播放;所述第二码流中包括指示数据包,所述指示数据包用于指示终端停止播放所述第一码流并开始播放所述第二码流;所述指示数据包为一个数据包,或者连续的多个数据包;所述第二码流与所述第一码流是通过同一个会话连接发送的;
所述目标播放指令为所述用户对视频进度条的拖动操作。
2.一种视频播放方法,其特征在于,包括:
服务器在向终端发送第一码流的过程中,接收所述终端发送的跳转播放请求;所述第一码流是所述终端通过可选方法、描述、设置和播放命令与所述服务器建立第一连接并向服务器请求播放后接收到的所述服务器发送的码流;所述跳转播放请求用于请求服务器发送从待播放视频的目标播放位置开始的第二码流;所述跳转播放请求是在第一连接下由所述终端发送的;所述跳转播放请求中包括所述目标播放位置在所述待播放视频中对应的相对时间;所述目标播放位置为用户对视频条进度拖动后的位置;其中,在终端向服务器发送所述跳转播放请求时,所述终端与服务器之间发送第一码流的第一连接仍然保持;
所述服务器向所述终端发送所述第二码流;所述第二码流中包括指示数据包,所述指示数据包用于指示所述终端停止播放所述第一码流并开始播放所述第二码流;所述指示数据包为一个数据包,或者连续的多个数据包;所述第二码流与所述第一码流是通过同一个会话连接发送的。
3.根据权利要求2所述的方法,其特征在于,所述向所述终端发送所述第二码流,包括:
根据所述相对时间,确定所述目标播放位置对应的目标媒体数据;向所述终端发送包括所述目标媒体数据以及所述目标媒体数据之后的媒体数据的第二码流。
4.一种视频播放装置,设置于终端,其特征在于,包括:
接收模块,用于在从服务器接收第一码流并播放过程中,接收用户发送的目标播放指令;所述第一码流是所述终端通过可选方法、描述、设置和播放命令与所述服务器建立第一连接并向服务器请求播放后接收到的所述服务器发送的码流;所述目标播放指令用于指示待播放视频的目标播放位置,所述目标播放位置与当前播放位置不同;
发送模块,用于确定所述目标播放位置在所述待播放视频中对应的相对时间;
在所述第一连接下,向服务器发送跳转播放请求,所述跳转播放请求中包括所述相对时间;
所述跳转播放请求用于请求所述服务器发送从所述目标播放位置开始的第二码流;其中,在终端向服务器发送所述跳转播放请求时,所述终端与服务器之间发送第一码流的第一连接仍然保持;
接收模块还用于,接收所述服务器发送的所述第二码流并播放;所述第二码流中包括指示数据包,所述指示数据包用于指示终端停止播放所述第一码流并开始播放所述第二码流;所述指示数据包为一个数据包,或者连续的多个数据包;所述第二码流与所述第一码流是通过同一个会话连接发送的;
所述目标播放指令为所述用户对视频进度条拖动操作。
5.一种视频播放装置,设置于服务器,其特征在于,包括:
接收模块,用于在向终端发送第一码流的过程中,接收所述终端发送的跳转播放请求;所述第一码流是所述终端通过OPTION、DESCRIBE、SETUP和PLAY命令与所述服务器建立第一连接并向服务器请求播放后接收到的所述服务器发送的码流;所述跳转播放请求用于请求服务器发送从待播放视频的目标播放位置开始的第二码流;所述跳转播放请求是在所述第一连接下由所述终端发送的;所述跳转播放请求中包括所述目标播放位置在所述待播放视频中对应的相对时间;所述目标播放位置为用户对视频条进度拖动后的位置;其中,在终端向服务器发送所述跳转播放请求时,所述终端与服务器之间发送第一码流的第一连接仍然保持;
发送模块,用于向所述终端发送所述第二码流;所述第二码流中包括指示数据包,所述指示数据包用于指示所述终端停止播放所述第一码流并开始播放所述第二码流;所述指示数据包为一个数据包,或者连续的多个数据包;所述第二码流与所述第一码流是通过同一个会话连接发送的。
6.根据权利要求5所述的装置 ,其特征在于,所述发送模块用于:
根据所述相对时间,确定所述目标播放位置对应的目标媒体数据;
向所述终端发送包括所述目标媒体数据以及所述目标媒体数据之后的媒体数据的第二码流。
7.一种终端,其特征在于,包括:存储器、处理器、收发器和显示器;
所述存储器用于存储计算机程序;
所述处理器用于在所述计算机程序执行时,实现如上述权利要求1所述的方法。
8.一种服务器,其特征在于,包括:存储器、处理器和收发器;
所述存储器用于存储计算机程序;
所述处理器用于在所述计算机程序执行时,实现如上述权利要求2-3中任一项所述的方法。
9.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1或2-3中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010284476.8A CN111479122B (zh) | 2020-04-13 | 2020-04-13 | 视频播放方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010284476.8A CN111479122B (zh) | 2020-04-13 | 2020-04-13 | 视频播放方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111479122A CN111479122A (zh) | 2020-07-31 |
CN111479122B true CN111479122B (zh) | 2022-12-06 |
Family
ID=71752192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010284476.8A Active CN111479122B (zh) | 2020-04-13 | 2020-04-13 | 视频播放方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111479122B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112887795B (zh) * | 2021-01-26 | 2023-04-21 | 脸萌有限公司 | 视频播放方法、装置、设备和介质 |
CN116361252A (zh) * | 2023-03-09 | 2023-06-30 | 北京百度网讯科技有限公司 | 数据存储和访问方法、装置、设备及介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104618690A (zh) * | 2015-01-29 | 2015-05-13 | 广东迅通科技股份有限公司 | 一种高清视频实时点播和历史回放的方法及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101714977B (zh) * | 2007-04-13 | 2014-03-12 | 华为技术有限公司 | 流媒体更改播放媒体的方法、系统及装置 |
US7921222B2 (en) * | 2008-05-06 | 2011-04-05 | Vantrix Corporation | Method and system for fast channel switching using standard RTSP messages |
CN102036058B (zh) * | 2010-12-20 | 2014-07-02 | 南京中兴新软件有限责任公司 | 视频监控系统中视频切换的方法、服务器、终端及系统 |
CN109218257A (zh) * | 2017-06-30 | 2019-01-15 | 中国电信股份有限公司 | 流媒体播放方法、系统、服务器和用于流媒体播放的装置 |
CN109348251B (zh) * | 2018-10-08 | 2021-05-11 | 腾讯科技(深圳)有限公司 | 用于视频播放的方法、装置、计算机可读介质及电子设备 |
CN110708602B (zh) * | 2019-10-15 | 2022-08-19 | 北京字节跳动网络技术有限公司 | 视频启动方法、装置、电子设备及存储介质 |
-
2020
- 2020-04-13 CN CN202010284476.8A patent/CN111479122B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104618690A (zh) * | 2015-01-29 | 2015-05-13 | 广东迅通科技股份有限公司 | 一种高清视频实时点播和历史回放的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111479122A (zh) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10516757B2 (en) | Server-side scheduling for media transmissions | |
US8117323B2 (en) | Method and system for fast channel switching using standard RTSP messages | |
US11412021B2 (en) | Method and device for media streaming between server and client using RTP/RTSP standard protocol | |
US11838563B2 (en) | Switching between transmitting a preauthored video frame and a composited video frame | |
US10666699B2 (en) | Live edge detection during video playback | |
US9549000B2 (en) | Streaming media from a server delivering individualized content streams to clients | |
EP3113500B1 (en) | Method and device for displaying application data in wireless communication system | |
EP3203754A1 (en) | Method and system for realizing streaming media data seamlessly connecting in intelligent home | |
EP3560205B1 (en) | Synchronizing processing between streams | |
US8230468B2 (en) | Dynamically creating trick files to hide latency in streaming networks | |
CN111479122B (zh) | 视频播放方法、装置、设备及存储介质 | |
WO2010075743A1 (zh) | 一种网络电视显示时间的方法及设备 | |
KR20140007896A (ko) | 중지된 미디어를 재개하기 위한 방법 및 장치 | |
WO2010057391A1 (zh) | 一种流媒体播放控制方法、设备及系统 | |
EP3089459B1 (en) | Apparatus and method for implementing video-on-demand quick switching among multiple screens | |
US11973634B1 (en) | Detecting hardware issue | |
JP2014072651A (ja) | 映像コンテンツ配信装置 | |
KR102654716B1 (ko) | 요청된 영상 재생시점에 따라 영상을 재생하는 방법 및 그 장치 | |
CN115604496A (zh) | 一种显示设备、直播切台方法及存储介质 | |
EP2645671A1 (en) | Switching the playing out of information content beween end-user devices | |
CN117294885A (zh) | 一种显示设备和服务设备 | |
JP2014072650A (ja) | 映像コンテンツ配信装置 |
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 |