CN111479171B - Web播放不同视频源间的伪无缝切换方法、装置及介质 - Google Patents
Web播放不同视频源间的伪无缝切换方法、装置及介质 Download PDFInfo
- Publication number
- CN111479171B CN111479171B CN201910061516.XA CN201910061516A CN111479171B CN 111479171 B CN111479171 B CN 111479171B CN 201910061516 A CN201910061516 A CN 201910061516A CN 111479171 B CN111479171 B CN 111479171B
- Authority
- CN
- China
- Prior art keywords
- video source
- web browser
- video
- playing
- data
- 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/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/4782—Web browsing, e.g. WebTV
-
- 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 or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- 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/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- 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/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
-
- 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/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- 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/4302—Content synchronisation processes, e.g. decoder synchronisation
-
- 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 or rendering scenes according to encoded video stream scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
-
- 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 or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440263—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
-
- 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/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44204—Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched
-
- 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/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4622—Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明涉及一种Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质,属于互联网技术领域。本发明的Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质,该方法中,当需要切换视频源时,Web浏览器首先建立目标视频源播放实例;并根据原视频源播放状态及网络状态确定二者的同步时间;当经过该同步时间后,Web浏览器切换到目标视频源播放实例,完成各视频源之间实现无缝切换,从而可有效避免播放过程中产生卡顿,大幅提高用户体验。且本发明的Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质,其实现方式简便,应用成本低廉,应用范围也相当广泛。
Description
技术领域
本发明涉及互联网技术领域,特别涉及网络视频技术领域,具体是指一种Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质。
背景技术
视频网站是目前颇受欢迎的内容网站。通过Web浏览器是访问视频网站的主要形式之一。目前网络常用的视频源格式有dash格式、flv格式和mp4格式三种不同的视频源格式。其用户体验最好的是dash格式,其次依序是flv格式和mp4格式。因为不同浏览器平台对于视频源格式的支持程度问题,有些浏览器的可用性则恰恰相反,例如mp4格式优于flv格式,最不支持的反而是dash格式。
在实际使用中,根据不同的网络状态或用户观看的需要,通常需要切换分辨率,而不同分辨率往往需要切换视频源格式。在gop(group of picture)没有对齐的情况下不同的视频源格式之间无法进行直接的清晰度切换,只有dash格式自身能够进行无缝切换。dash格式切换线程如图3所示。
因此,如何提供一种各视频源之间的无缝切换方法,避免播放过程中产生卡顿,提高用户体验,成为本领域亟待解决的问题。
发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种可在各视频源之间实现无缝切换,避免播放过程中产生卡顿,提高用户体验的Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质。
为了实现上述的目的,本发明的Web播放不同视频源之间的伪无缝切换方法包括以下步骤:
(1)Web浏览器播放一个视频的第一视频源;
(2)所述的Web浏览器接收切换视频源指令;
(3)所述的Web浏览器建立所述视频的第二视频源播放实例;
(4)所述的Web浏览器根据所述的第一视频源播放状态及所述的第二视频源播放实例运行状态确定同步时间;
(5)当经过所述的同步时间后,所述的Web浏览器切换到所述的第二视频源播放实例,并停止播放所述的第一视频源。
该Web播放不同视频源之间的伪无缝切换方法中,所述的第一视频源和所述的第二视频源为dash格式、flv格式和mp4格式中任意一种。
该Web播放不同视频源之间的伪无缝切换方法中,所述的步骤(4)具体包括以下步骤:
(41)根据下式判断所述的Web浏览器的带宽是否充足,且第一视频源剩余缓冲长度较长,
B2/8×L/S×N+T≤F
其中,B2为第二视频源总平均码率;L为第二视频源获取视频数据至能够播放状态所需的数据长度;S为所述的Web浏览器获取数据的速度;N为获取数据速度安全值;T为所述的Web浏览器开始获取数据所需时间;F为第一视频源剩余缓冲长度;
若是,则确定所述的同步时间为:B2/8×L/S×N+T;
若否,则进入步骤(42);
(42)根据下式判断所述的Web浏览器的带宽是否充足,且第一视频源剩余缓冲长度较短,
B2/8×L/S×N+T>F
且
(B2+B1)/8≤S/N2
其中,B1为第一视频源总平均码率;N2为所述的Web浏览器通过获取两个视频源数据的速度安全值;
若是,则确定所述的同步时间为:(B2+B1)/8×L/S×N+T;
若否,则进入步骤(43);
(43)确定所述的同步时间为:B2/8×L/S×N+T。
该Web播放不同视频源之间的伪无缝切换方法中,所述的步骤(2)具体为:
所述的Web浏览器实时第一视频源播放状态,根据检测结果自动生成切换视频源指令。
该Web播放不同视频源之间的伪无缝切换方法中,所述的步骤(2)具体为:
所述的Web浏览器接收到的用户操作生成相应的切换视频源指令。
本发明还提供一种Web播放不同视频源之间的伪无缝切换方法,该方法包括以下步骤:
(A)Web浏览器从服务器获取一个视频的第一视频源,并播放;
(B)所述的Web浏览器接收切换视频源指令;
(C)所述的Web浏览器从所述的服务器获取该视频的第二视频源,并建立第二视频源播放实例;
(D)所述的Web浏览器根据所述的第一视频源播放状态及所述的Web浏览器与所述的服务器之间的网络状态确定同步时间;
(E)当经过所述的同步时间后,所述的Web浏览器切换到所述的第二视频源播放实例,并停止播放所述的第一视频源。
该Web播放不同视频源之间的伪无缝切换方法中,所述的第一视频源和所述的第二视频源为dash格式、flv格式和mp4格式中任意一种。
该Web播放不同视频源之间的伪无缝切换方法中,所述的步骤(D)具体包括以下步骤:
(D1)根据下式判断所述的Web浏览器与所述服务器之间的网速是否充足,且第一视频源剩余缓冲长度较长,
B2/8×L/S×N+T≤F
其中,B2为第二视频源总平均码率;L为第二视频源获取视频数据至能够播放状态所需的数据长度;S为所述的Web浏览器获取数据的速度;N为获取数据速度安全值;T为所述的Web浏览器开始获取数据所需时间;F为第一视频源剩余缓冲长度;
若是,则确定所述的同步时间为:B2/8×L/S×N+T;
若否,则进入步骤(D2);
(D2)根据下式判断所述的Web浏览器与所述服务器之间的网速是否充足,且第一视频源剩余缓冲长度较短,
B2/8×L/S×N+T>F
且
(B2+B1)/8≤S/N2
其中,B1为第一视频源总平均码率;N2为所述的Web浏览器通过获取两个视频源数据的速度安全值;
若是,则确定所述的同步时间为:(B2+B1)/8×L/S×N+T;
若否,则进入步骤(D3);
(D3)确定所述的同步时间为:B2/8×L/S×N+T。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现上述的Web播放不同视频源之间的伪无缝切换方法。
本发明还提供一种Web播放不同视频源之间的伪无缝切换装置,其包括处理器和存储器,所述的存储器上存储有计算机程序,其特征在于,该计算机程序被所述的处理器执行时,实现上述的Web播放不同视频源之间的伪无缝切换方法。
采用了该发明的Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质,该方法中,当需要切换视频源时,Web浏览器首先建立目标视频源播放实例;并根据原视频源播放状态及网络状态确定二者的同步时间;当经过该同步时间后,Web浏览器切换到目标视频源播放实例,完成各视频源之间实现无缝切换,从而可有效避免播放过程中产生卡顿,大幅提高用户体验。且本发明的Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质,其实现方式简便,应用成本低廉,应用范围也相当广泛。
附图说明
图1为本发明的Web播放不同视频源之间的伪无缝切换方法的一种实施方式的步骤流程图。
图2为本发明的Web播放不同视频源之间的伪无缝切换方法的一种实施方式的步骤流程图。
图3为dash格式视频无缝切换线程示意图。
图4为本发明的Web播放不同视频源之间的伪无缝切换方法在第一种状态下的无缝切换线程示意图。
图5为本发明的Web播放不同视频源之间的伪无缝切换方法在第二种状态下的无缝切换线程示意图。
图6为本发明的Web播放不同视频源之间的伪无缝切换方法在第三种状态下的无缝切换线程示意图。
具体实施方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
请参阅图1所示,为本发明的Web播放不同视频源之间的伪无缝切换方法的一种实施方式的步骤流程图。
在一种实施方式中,该Web播放不同视频源之间的伪无缝切换方法包括以下步骤:
(1)Web浏览器播放一个视频的第一视频源;
(2)所述的Web浏览器接收切换视频源指令;
(3)所述的Web浏览器建立所述视频的第二视频源播放实例;
(4)所述的Web浏览器根据所述的第一视频源播放状态及所述的第二视频源播放实例运行状态确定同步时间;
(5)当经过所述的同步时间后,所述的Web浏览器切换到所述的第二视频源播放实例,并停止播放所述的第一视频源。
所述的第一视频源和所述的第二视频源为dash格式、flv格式和mp4格式中任意一种。
在优选的实施方式中,所述的步骤(4)具体包括以下步骤:
(41)根据下式判断所述的Web浏览器的带宽是否充足,且第一视频源剩余缓冲长度较长,
B2/8×L/S×N+T≤F
其中,B2为第二视频源总平均码率;L为第二视频源获取视频数据至能够播放状态所需的数据长度;S为所述的Web浏览器获取数据的速度;N为获取数据速度安全值;T为所述的Web浏览器开始获取数据所需时间;F为第一视频源剩余缓冲长度;
若是,则确定所述的同步时间为:B2/8×L/S×N+T;
若否,则进入步骤(42);
(42)根据下式判断所述的Web浏览器的带宽是否充足,且第一视频源剩余缓冲长度较短,
B2/8×L/S×N+T>F
且
(B2+B1)/8≤S/N2
其中,B1为第一视频源总平均码率;N2为所述的Web浏览器通过获取两个视频源数据的速度安全值;
若是,则确定所述的同步时间为:(B2+B1)/8×L/S×N+T;
若否,则进入步骤(43);
(43)确定所述的同步时间为:B2/8×L/S×N+T。
在更有选的实施方式中,所述的步骤(2)可以为:
所述的Web浏览器实时第一视频源播放状态,根据检测结果自动生成切换视频源指令。以实现视频源(分辨率)的自动切换。
或者,所述的步骤(2)也可以为:
所述的Web浏览器接收到的用户操作生成相应的切换视频源指令。以实现视频源(分辨率)的手动切换。
本发明还提供一种Web播放不同视频源之间的伪无缝切换方法,在一种实施方式中,如图2所示,包括以下步骤:
(A)Web浏览器从服务器获取一个视频的第一视频源,并播放;
(B)所述的Web浏览器接收切换视频源指令;
(C)所述的Web浏览器从所述的服务器获取该视频的第二视频源,并建立第二视频源播放实例;
(D)所述的Web浏览器根据所述的第一视频源播放状态及所述的Web浏览器与所述的服务器之间的网络状态确定同步时间;
(E)当经过所述的同步时间后,所述的Web浏览器切换到所述的第二视频源播放实例,并停止播放所述的第一视频源。
其中,所述的第一视频源和所述的第二视频源为dash格式、flv格式和mp4格式中任意一种。
在优选的实施方式中,所述的步骤(D)具体包括以下步骤:
(D1)根据下式判断所述的Web浏览器与所述服务器之间的网速是否充足,且第一视频源剩余缓冲长度较长,
B2/8×L/S×N+T≤F
其中,B2为第二视频源总平均码率;L为第二视频源获取视频数据至能够播放状态所需的数据长度;S为所述的Web浏览器获取数据的速度;N为获取数据速度安全值;T为所述的Web浏览器开始获取数据所需时间;F为第一视频源剩余缓冲长度;
若是,则确定所述的同步时间为:B2/8×L/S×N+T;
若否,则进入步骤(D2);
(D2)根据下式判断所述的Web浏览器与所述服务器之间的网速是否充足,且第一视频源剩余缓冲长度较短,
B2/8×L/S×N+T>F
且
(B2+B1)/8≤S/N2
其中,B1为第一视频源总平均码率;N2为所述的Web浏览器通过获取两个视频源数据的速度安全值;
若是,则确定所述的同步时间为:(B2+B1)/8×L/S×N+T;
若否,则进入步骤(D3);
(D3)确定所述的同步时间为:B2/8×L/S×N+T。
本发明还提供一种Web播放不同视频源之间的伪无缝切换装置和一种计算机可读存储介质,该装置包括处理器和存储器。所述的存储器即为所述的计算机可读存储介质,其上存储有计算机程序。该计算机程序被所述的处理器执行时,实现上述实施方式所述的Web播放不同视频源之间的伪无缝切换方法。
在实际应用中,本发明的Web播放不同视频源之间的伪无缝切换方法的流程通过以下实施例说明。
实施例1
用户的网速支持进行无缝切换,且第一视频源剩余部分支持用户把新视频源拉流(下载目标视频源数据)到足够播放的数据后进行播放(即只需要下载新视频源数据)。
即,用户网速充足,且原视频剩余缓冲长度很长。
则B2/8×L/S×N+T≤F,切换时间则为B2/8×L/S×N+T。
以用户从1080P分辨率切换到720P分辨率为例,
1.原视频总平均码率(音频+视频)B1(kbps)=2000
2.新视频总平均码率(音频+视频)B2(kbps)=4000
3.原视频剩余缓冲长度F(s)=5
4.用户平均下载速度S(k/s)=600
5.用户平均建联时间T(s)=0.2
6.安全值(防止达不到平均下载速度设置的均值)N=1.5
7.新视频流拉到足够播放的数据长度L(s)=2
B2/8×L/S×N+T≤F
4000/8×2/600×1.5+0.2=2.6<5,满足上述要求。
无缝切换线程如图4所示,无缝切换时间是在新视频开始拉流后2.6s左右(以实际完成状态为准)完成切换,使用无缝切换控制逻辑。
该状态下,用户网速充足,且原视频剩余缓冲长度很大,这时支持进行无缝切换,且剩余部分支持用户把新流拉到足够播放的数据后进行播放。
实施例2
用户的网速支持进行无缝切换,但可能需要准备一段时间,即需要同时拉两路流的无缝切换(需要同时下载原视频源数据和目标视频源数据)。
常见的场景是用户网速充足,相近的两路清晰度间互相切换,但原视频剩余缓冲长度很小。则满足条件B2/8×L/S×N+T>F且(B2+B1)/8≤S/N2同步时间为:(B2+B1)/8×L/S×N+T;
以用户从720P分辨率切换至1080P60分辨率为例,网速充足,但原视频源缓冲区不足。
1.原视频总平均码率(音频+视频)B1(kbps)=1000
2.新视频总平均码率(音频+视频)B2(kbps)=4000
3.原视频剩余缓冲长度F(s)=1
4.用户平均下载速度S(k/s)=1000
5.用户平均建联时间T(s)=0.2
6.下载安全值(防止达不到平均下载速度设置的均值)N=1.5
7.双拉流安全值(有的情况速度足够拉两路流但可能很慢,也需要控制)N2=1.2
8.新视频流拉到足够播放的数据长度L(s)=2
B2/8×L/S×N+T>F
4000/8×2/1000×1.5+0.2=1.7>1
且(B2+B1)/8≤S/N2
(4000+1000)/8=625<833
则无缝切换时间为:
(B2+B1)/8×L/S×N+T
(4000+1000)/8×2/1000×1.5+0.2=2.075
则无缝切换线程如图5所示,在开始双路拉流播放约2.075s后可以进行无缝切换。
该状态下用户网速充足,相近的两路清晰度间互相切换,但原视频剩余缓冲长度很小,因此可以支持进行无缝切换,但可能需要准备一段时间(同时拉两路流的无缝切换)。
实施例3
用户的网速不支持进行无缝切换,即无法进行无缝切换。
常见的场景是由低清晰度切换到高清晰度,但用户的下载速度和剩余缓冲长度不足以支撑无缝切换的条件,这时候只能不采用无缝切换。
其条件为B2/8×L/S×N+T>F且(B2+B1)/8>S/N2,卡顿切换时间为B2/8×L/S×N+T
以用户从流畅清晰度切换至1080P清晰度为例,
1.原视频总平均码率(音频+视频)B1(kbps)=400
2.新视频总平均码率(音频+视频)B2(kbps)=4000
3.原视频剩余缓冲长度F(s)=2
4.用户平均下载速度S(k/s)=200
5.用户平均建联时间T(s)=0.2
6.安全值(防止达不到平均下载速度设置的均值)N=1.5
7.双拉流安全值(有的情况速度足够拉两路流但可能很慢,也需要控制)N2=1.2
8.新视频流拉到足够播放的数据长度L(s)=2
B2/8×L/S×N+T>F
4000/8*2/200*1.5+0.2=7.7>2
(B2+B1)/8>S/N2
(4000+400)/8=550>200/1.2=166
缓冲切换耗时为B2/8×L/S×N+T=7.7s,则切换线程如图6所示,需要卡顿大约7.7s后才能切到1080P的清晰度。
该状态下,用户的网速不支持进行无缝切换。常见的场景是由低清晰度切换到高清晰度,但用户的下载速度和剩余缓冲长度不足以支撑无缝切换的条件,这时候只能不采用无缝切换,会停止低清晰度的拉流并一直等待,直到高清晰度的流完成。
实际使用过程中,需要依次判断是否满足上述实施例,即尽量能够满足实施例1的条件,仅需直接下周目标视频源数据科技完成无缝切换。
采用了该发明的Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质,该方法中,当需要切换视频源时,Web浏览器首先建立目标视频源播放实例;并根据原视频源播放状态及网络状态确定二者的同步时间;当经过该同步时间后,Web浏览器切换到目标视频源播放实例,完成各视频源之间实现无缝切换,从而可有效避免播放过程中产生卡顿,大幅提高用户体验。且本发明的Web播放不同视频源之间的伪无缝切换方法、装置及计算机可读介质,其实现方式简便,应用成本低廉,应用范围也相当广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
Claims (10)
1.一种Web播放不同视频源之间的伪无缝切换方法,其特征在于,包括以下步骤:
(1)Web浏览器播放一个视频的第一视频源;
(2)所述Web浏览器接收切换视频源指令;
(3)所述Web浏览器建立所述视频的第二视频源播放实例;
(4)所述Web浏览器根据所述第一视频源播放状态及所述第二视频源播放实例运行状态确定同步时间,
当Web浏览器的带宽充足,且第一视频源剩余缓冲长度不足的情况下,根据第一视频源总平均码率、第二视频源总平均码率以及Web浏览器同时获取第一视频源和第二视频源数据的速度确定同步时间;
而当Web浏览器的带宽充足,且第一视频源剩余缓冲长度充足,或者当Web浏览器的带宽不足情况下,则根据第二视频源总平均码率以及Web浏览器获取第二视频源数据的速度确定同步时间;
(5)当经过所述同步时间后,所述Web浏览器切换到所述第二视频源播放实例,并停止播放所述第一视频源。
2.根据权利要求1所述的Web播放不同视频源之间的伪无缝切换方法,其特征在于,所述第一视频源和所述第二视频源为dash格式、flv格式和mp4格式中任意一种。
3.根据权利要求1所述的Web播放不同视频源之间的伪无缝切换方法,其特征在于,所述步骤(4)具体包括以下步骤:
(41)根据下式判断所述Web浏览器的带宽是否充足,且第一视频源剩余缓冲长度充足,
B2/8×L/S×N+T≤F
其中,B2为第二视频源总平均码率;L为第二视频源获取视频数据至能够播放状态所需的数据长度;S为所述Web浏览器获取数据的速度;N为获取数据速度安全值;T为所述Web浏览器开始获取数据所需时间;F为第一视频源剩余缓冲长度;
若是,则确定所述同步时间为:B2/8×L/S×N+T;
若否,则进入步骤(42);
(42)根据下式判断所述Web浏览器的带宽是否充足,且第一视频源剩余缓冲长度不足,
B2/8×L/S×N+T > F
且
(B2+B1)/8≤S/N2
其中,B1为第一视频源总平均码率;N2为所述Web浏览器通过获取两个视频源数据的速度安全值;
若是,则确定所述同步时间为:(B2+B1)/8×L/S×N+T;
若否,则进入步骤(43);
(43)确定所述同步时间为:B2/8×L/S×N+T。
4.根据权利要求1所述的Web播放不同视频源之间的伪无缝切换方法,其特征在于,所述步骤(2)具体为:
所述Web浏览器实时检测第一视频源播放状态,根据检测结果自动生成切换视频源指令。
5.根据权利要求1所述的Web播放不同视频源之间的伪无缝切换方法,其特征在于,所述步骤(2)具体为:
所述Web浏览器根据接收到的用户操作生成相应的切换视频源指令。
6.一种Web播放不同视频源之间的伪无缝切换方法,其特征在于,包括以下步骤:
(A)Web浏览器从服务器获取一个视频的第一视频源,并播放;
(B)所述Web浏览器接收切换视频源指令;
(C)所述Web浏览器从所述服务器获取该视频的第二视频源,并建立第二视频源播放实例;
(D)所述Web浏览器根据所述第一视频源播放状态及所述Web浏览器与所述服务器之间的网络状态确定同步时间,当Web浏览器的带宽充足,且第一视频源剩余缓冲长度不足的情况下,根据第一视频源总平均码率、第二视频源总平均码率以及Web浏览器同时获取第一视频源和第二视频源数据的速度确定同步时间;而当Web浏览器的带宽充足,且第一视频源剩余缓冲长度充足,或者当Web浏览器的带宽不足情况下,则根据第二视频源总平均码率以及Web浏览器获取第二视频源数据的速度确定同步时间;
(E)当经过所述同步时间后,所述Web浏览器切换到所述第二视频源播放实例,并停止播放所述第一视频源。
7.根据权利要求6所述的Web播放不同视频源之间的伪无缝切换方法,其特征在于,所述第一视频源和所述第二视频源为dash格式、flv格式和mp4格式中任意一种。
8.根据权利要求6所述的Web播放不同视频源之间的伪无缝切换方法,其特征在于,所述步骤(D)具体包括以下步骤:
(D1)根据下式判断所述Web浏览器与所述服务器之间的网速是否充足,且第一视频源剩余缓冲长度充足,
B2/8×L/S×N+T≤F
其中,B2为第二视频源总平均码率;L为第二视频源获取视频数据至能够播放状态所需的数据长度;S为所述Web浏览器获取数据的速度;N为获取数据速度安全值;T为所述Web浏览器开始获取数据所需时间;F为第一视频源剩余缓冲长度;
若是,则确定所述同步时间为:B2/8×L/S×N+T;
若否,则进入步骤(D2);
(D2)根据下式判断所述Web浏览器与所述服务器之间的网速是否充足,且第一视频源剩余缓冲长度不足,
B2/8×L/S×N+T > F
且
(B2+B1)/8≤S/N2
其中,B1为第一视频源总平均码率;N2为所述Web浏览器通过获取两个视频源数据的速度安全值;
若是,则确定所述同步时间为:(B2+B1)/8×L/S×N+T;
若否,则进入步骤(D3);
(D3)确定所述同步时间为:B2/8×L/S×N+T。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现权利要求1至8中任一项所述Web播放不同视频源之间的伪无缝切换方法。
10.一种Web播放不同视频源之间的伪无缝切换装置,其包括处理器和存储器,所述存储器上存储有计算机程序,其特征在于,该计算机程序被所述处理器执行时,实现权利要求1至8中任一项所述Web播放不同视频源之间的伪无缝切换方法。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910061516.XA CN111479171B (zh) | 2019-01-23 | 2019-01-23 | Web播放不同视频源间的伪无缝切换方法、装置及介质 |
| US17/425,090 US11589119B2 (en) | 2019-01-23 | 2019-12-16 | Pseudo seamless switching method, device and media for web playing different video sources |
| PCT/CN2019/125523 WO2020151399A1 (zh) | 2019-01-23 | 2019-12-16 | Web播放不同视频源间的伪无缝切换方法、装置及介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910061516.XA CN111479171B (zh) | 2019-01-23 | 2019-01-23 | Web播放不同视频源间的伪无缝切换方法、装置及介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111479171A CN111479171A (zh) | 2020-07-31 |
| CN111479171B true CN111479171B (zh) | 2022-05-20 |
Family
ID=71736681
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910061516.XA Active CN111479171B (zh) | 2019-01-23 | 2019-01-23 | Web播放不同视频源间的伪无缝切换方法、装置及介质 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11589119B2 (zh) |
| CN (1) | CN111479171B (zh) |
| WO (1) | WO2020151399A1 (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112911335B (zh) * | 2021-02-03 | 2022-05-27 | 烽火通信科技股份有限公司 | 一种基于视频编码的服务调度方法、视频服务器和机顶盒 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102291599A (zh) * | 2011-05-07 | 2011-12-21 | 董友球 | 网络视频播放方法及网络视频播放装置 |
| CN102905188A (zh) * | 2012-11-01 | 2013-01-30 | 北京奇艺世纪科技有限公司 | 一种视频码流切换方法及装置 |
| CN103997680A (zh) * | 2014-06-06 | 2014-08-20 | 北京奇艺世纪科技有限公司 | 一种视频码流的切换方法及装置 |
| CN104219579A (zh) * | 2014-08-20 | 2014-12-17 | 北京奇艺世纪科技有限公司 | 一种视频切换方法和装置 |
| CN106375836A (zh) * | 2016-09-27 | 2017-02-01 | 广东小天才科技有限公司 | 一种视频的分辨率切换方法及装置 |
| CN108055250A (zh) * | 2017-12-01 | 2018-05-18 | 暴风集团股份有限公司 | 视频播放装置、方法及终端 |
| CN109246462A (zh) * | 2018-10-11 | 2019-01-18 | 苏宁易购集团股份有限公司 | 一种视频流无缝切换方法及装置 |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5982436A (en) * | 1997-03-28 | 1999-11-09 | Philips Electronics North America Corp. | Method for seamless splicing in a video encoder |
| US20020133247A1 (en) * | 2000-11-11 | 2002-09-19 | Smith Robert D. | System and method for seamlessly switching between media streams |
| JP4208079B2 (ja) * | 2004-05-14 | 2009-01-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データベースサーバ、プログラム、記録媒体、及び制御方法 |
| TWI324305B (en) * | 2006-06-14 | 2010-05-01 | Via Tech Inc | Embedded system and related buffer size determining method thereof |
| US20080141317A1 (en) * | 2006-12-06 | 2008-06-12 | Guideworks, Llc | Systems and methods for media source selection and toggling |
| US10567489B2 (en) * | 2013-03-15 | 2020-02-18 | Time Warner Cable Enterprises Llc | System and method for seamless switching between data streams |
| CN103533437A (zh) | 2013-10-30 | 2014-01-22 | 乐视致新电子科技(天津)有限公司 | 一种智能电视的频道切换方法及装置 |
| CN105791987B (zh) | 2014-12-23 | 2018-11-02 | 深圳Tcl数字技术有限公司 | 媒体数据播放的方法及终端 |
| CN104768062B (zh) | 2015-04-01 | 2018-07-24 | 西藏阅维信息科技有限公司 | 实时视频流的无缝切换方法 |
| CN104967884B (zh) * | 2015-04-17 | 2018-01-26 | 北京奇艺世纪科技有限公司 | 一种码流切换方法和装置 |
| US11057446B2 (en) * | 2015-05-14 | 2021-07-06 | Bright Data Ltd. | System and method for streaming content from multiple servers |
| CN105916008A (zh) | 2015-12-15 | 2016-08-31 | 乐视网信息技术(北京)股份有限公司 | 一种视频缓冲方法及装置 |
| WO2017117266A1 (en) * | 2015-12-29 | 2017-07-06 | Echostar Technologies L.L.C | Dynamic content delivery routing and related methods and systems |
| US9843825B1 (en) | 2016-06-10 | 2017-12-12 | Apple Inc. | Distributed and synchronized media switching |
| US20190387271A1 (en) * | 2017-01-30 | 2019-12-19 | Sony Corporation | Image processing apparatus, image processing method, and program |
| US10779042B1 (en) * | 2019-01-07 | 2020-09-15 | Alphonso Inc. | Automatically generated personalized media channel |
| US10965986B2 (en) * | 2019-05-20 | 2021-03-30 | Rovi Guides, Inc. | Systems and methods for switching content providers to maintain streaming experience |
-
2019
- 2019-01-23 CN CN201910061516.XA patent/CN111479171B/zh active Active
- 2019-12-16 WO PCT/CN2019/125523 patent/WO2020151399A1/zh not_active Ceased
- 2019-12-16 US US17/425,090 patent/US11589119B2/en active Active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102291599A (zh) * | 2011-05-07 | 2011-12-21 | 董友球 | 网络视频播放方法及网络视频播放装置 |
| CN102905188A (zh) * | 2012-11-01 | 2013-01-30 | 北京奇艺世纪科技有限公司 | 一种视频码流切换方法及装置 |
| CN103997680A (zh) * | 2014-06-06 | 2014-08-20 | 北京奇艺世纪科技有限公司 | 一种视频码流的切换方法及装置 |
| CN104219579A (zh) * | 2014-08-20 | 2014-12-17 | 北京奇艺世纪科技有限公司 | 一种视频切换方法和装置 |
| CN106375836A (zh) * | 2016-09-27 | 2017-02-01 | 广东小天才科技有限公司 | 一种视频的分辨率切换方法及装置 |
| CN108055250A (zh) * | 2017-12-01 | 2018-05-18 | 暴风集团股份有限公司 | 视频播放装置、方法及终端 |
| CN109246462A (zh) * | 2018-10-11 | 2019-01-18 | 苏宁易购集团股份有限公司 | 一种视频流无缝切换方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111479171A (zh) | 2020-07-31 |
| WO2020151399A1 (zh) | 2020-07-30 |
| US11589119B2 (en) | 2023-02-21 |
| US20220109915A1 (en) | 2022-04-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110636346B (zh) | 一种码率自适应切换方法、装置、电子设备及存储介质 | |
| CN102177691B (zh) | 减少媒体流延迟的系统和方法 | |
| US9204203B2 (en) | Reduction of latency in video distribution networks using adaptive bit rates | |
| CN104125482B (zh) | 一种流媒体播放方法及装置 | |
| US11930246B2 (en) | Seamless switching method, device and storage medium of software and hardware decoding resolution | |
| US20180103296A1 (en) | Method and apparatus for video playing processing and television | |
| US11917271B2 (en) | Techniques for advancing playback of interactive media titles in response to user selections | |
| TWI735476B (zh) | 視聽接收裝置及其快速變換頻道之方法 | |
| CN102291599A (zh) | 网络视频播放方法及网络视频播放装置 | |
| JP2021040342A (ja) | トリックプレイ再生の間にオーディオコンテンツを提供するためのシステムおよび方法 | |
| CN105721921A (zh) | 一种多窗口视频解码器的自适应选择方法 | |
| TWI390980B (zh) | A content reproduction apparatus, a content reproduction method, a content reproduction program, and a content reproduction system | |
| US9872054B2 (en) | Presentation of a multi-frame segment of video content | |
| CN111479171B (zh) | Web播放不同视频源间的伪无缝切换方法、装置及介质 | |
| US20160309210A1 (en) | Video playback method, apparatus and intelligent terminal | |
| CN118250507A (zh) | 显示设备和视频帧处理方法 | |
| CN111479122B (zh) | 视频播放方法、装置、设备及存储介质 | |
| US9215267B2 (en) | Adaptive streaming for content playback | |
| JP4649530B1 (ja) | 再生装置及び再生方法 | |
| CN101552684B (zh) | 实时流媒体协议会话状态控制的方法、装置和系统 | |
| US20250175654A1 (en) | Live broadcast device and related live broadcast method | |
| CA3128407C (en) | Techniques for advancing playback of interactive media titles in response to user selections | |
| JP5479311B2 (ja) | 再生装置及び再生方法 | |
| EP3116232A1 (en) | Method and device for accelerating channel changes in a video decoding device |
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 |