CN110809168A - 视频直播处理方法、装置、终端及存储介质 - Google Patents
视频直播处理方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN110809168A CN110809168A CN201810887571.XA CN201810887571A CN110809168A CN 110809168 A CN110809168 A CN 110809168A CN 201810887571 A CN201810887571 A CN 201810887571A CN 110809168 A CN110809168 A CN 110809168A
- Authority
- CN
- China
- Prior art keywords
- video
- live
- live broadcast
- caching
- gop
- 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.)
- Withdrawn
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 claims description 49
- 102100037812 Medium-wave-sensitive opsin 1 Human genes 0.000 claims description 45
- 230000002452 interceptive effect Effects 0.000 claims description 17
- 230000003139 buffering effect Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 16
- 239000000872 buffer Substances 0.000 description 15
- 238000001514 detection method Methods 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 241000251468 Actinopterygii Species 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 235000007650 Aralia spinosa Nutrition 0.000 description 1
- 235000002566 Capsicum Nutrition 0.000 description 1
- 101000969688 Homo sapiens Macrophage-expressed gene 1 protein Proteins 0.000 description 1
- 102100021285 Macrophage-expressed gene 1 protein Human genes 0.000 description 1
- 208000025174 PANDAS Diseases 0.000 description 1
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 description 1
- 240000000220 Panda oleosa Species 0.000 description 1
- 235000016496 Panda oleosa Nutrition 0.000 description 1
- 241000282376 Panthera tigris Species 0.000 description 1
- 239000006002 Pepper Substances 0.000 description 1
- 235000016761 Piper aduncum Nutrition 0.000 description 1
- 235000017804 Piper guineense Nutrition 0.000 description 1
- 244000203593 Piper nigrum Species 0.000 description 1
- 235000008184 Piper nigrum Nutrition 0.000 description 1
- 241000949456 Zanthoxylum Species 0.000 description 1
- 244000089698 Zanthoxylum simulans Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000011324 bead Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/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/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
-
- 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/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- 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/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- 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
-
- 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/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/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例公开了一种视频直播处理方法,所述方法包括:直播第一视频;在直播所述第一视频时,缓存第二视频的视频数据;在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播所述第二视频。本发明实施例还公开了一种视频直播处理装置、终端、系统及存储介质。
Description
技术领域
本发明涉及多媒体技术领域,尤其涉及一种视频直播处理方法、装置、终端及存储介质。
背景技术
视频直播越来越受到视频用户的青睐,它满足了人们社交、猎奇,以及其它多种形式的互动内容的需求。随着互联网技术的发展,目前使用视频服务的用户往往在套餐流量上比较富余,每月剩余流量也比较多;并且,随着更高压缩比例的编码算法逐渐推出,流量不在是视频服务体验的关注重点。而现今视频服务体验的关注重点主要体现在:分辨率、初始缓冲时间以及卡顿率三个部分。其中,初始缓冲时间越短、卡顿率越低,用户体验越佳。然而,目前并未解决上述问题,导致视频服务体验太差。
发明内容
有鉴于此,本发明的主要目的在于提供一种视频直播处理方法、装置、终端及存储介质,能够至少部分解决初始缓存时间长、卡顿率高的问题。
本发明的技术方案是这样实现的:
一种视频直播处理方法,所述方法包括:
直播第一视频;
在直播所述第一视频时,缓存第二视频的视频数据;
在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播所述第二视频。
上述方案中,所述在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播所述第二视频,包括:
在检测到所述切换指令时,控制所述第一视频的直播画面从第一方向滑出显示区域;
控制所述第二视频的直播画面从所述显示区域的第二方向滑入所述显示区域;
其中,所述第二方向与所述第一方向相反或相同。
上述方案中,所述方法还包括:
检测作用于显示交互屏的滑动操作;
若检测到所述滑动操作,生成所述切换指令;
所述滑动操作的滑动方向为所述第一方向。
上述方案中,所述在直播所述第一视频时,缓存第二视频的视频数据,包括:
在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP。
上述方案中,所述在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP,包括:
在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个第一类GOP,其中,所述第一类GOP包括:I帧、B帧和P帧。
上述方案中,所述在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP,还包括:
在直播所述第一视频时,缓存至少一个第二类GOP或者至少一个第三类GOP;
所述第二类GOP相比第一类GOP缺少B帧;所述第三类GOP相比所述第一类GOP缺少B帧和P帧。
上述方案中,所述在检测到切换指令之前,还包括:
检测直播所述第一视频的时长是否超过设置的阈值;
若直播所述第一视频的时长超过所述阈值,停止所述第二视频的视频数据的缓存。
上述方案中,所述方法还包括:
确定是否满足缓存条件;
所述在直播所述第一视频时,缓存第二视频的视频数据,包括:
若满足所述缓存条件,在直播所述第一视频时缓存所述第二视频的视频数据。
上述方案中,所述确定是否满足缓存条件,包括以下至少之一:
若检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足所述缓存条件;
若检测到直播设备的当前带宽不小于接收所述第一视频和所述第二视频的视频数据所需带宽之和,确定满足所述缓存条件;
若检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件。
上述方案中,所述缓存第二视频的视频数据之前,还包括:
根据视频之间的关联关系,确定所述第二视频。
上述方案中,所述根据视频之间的关联关系,确定所述第二视频,包括:
根据在视频直播选择页面直播链接的显示位置关系,选择与所述第一视频的第一直播链接相邻的第二直播链接对应的视频为所述第二视频。
一种视频直播处理装置,所述装置包括:
视频直播模块,用于直播第一视频;还用于在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播第二视频;
缓存模块,用于在直播所述第一视频时,缓存所述第二视频的视频数据。
上述方案中,所述视频直播模块,包括:第一切换子模块和第二切换子模块;
所述第一切换子模块,用于在检测到所述切换指令时,控制所述第一视频的直播画面从第一方向滑出显示区域;
所述第二切换子模块,用于控制所述第二视频的直播画面从所述显示区域的第二方向滑入所述显示区域;
其中,所述第二方向与所述第一方向相反或相同。
上述方案中,所述视频直播模块,还包括:第一检测子模块、生成子模块;
所述第一检测子模块,用于检测作用于显示交互屏的滑动操作;
所述生成子模块,用于若检测到所述滑动操作,生成所述切换指令;
所述滑动操作的滑动方向为所述第一方向。
上述方案中,所述缓存模块,还用于在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP。
上述方案中,所述缓存模块,还用于在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个第一类GOP,其中,所述第一类GOP包括:I帧、B帧和P帧。
上述方案中,所述缓存模块,还用于在直播所述第一视频时,缓存至少一个第二类GOP或者至少一个第三类GOP;
所述第二类GOP相比第一类GOP缺少B帧;所述第三类GOP相比所述第一类GOP缺少B帧和P帧。
上述方案中,所述装置,还包括:时长检测模块
所述时长检测模块,用于检测直播所述第一视频的时长是否超过设置的阈值;
若直播所述第一视频的时长超过所述阈值,停止所述第二视频的视频数据的缓存。
上述方案中,所述装置还包括:第一确定模块;
所述第一确定模块,用于确定是否满足缓存条件;
所述缓存模块,还用于若满足所述缓存条件,在直播所述第一视频时缓存所述第二视频的视频数据。
上述方案中,所述确定是否满足缓存条件,包括:
若检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足所述缓存条件;
若检测到直播设备的当前带宽不小于接收所述第一视频和所述第二视频的视频数据所需带宽之和,确定满足所述缓存条件;
若检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件。
所述方案中,所述装置还包括:第二确定模块;
所述第二确定模块,用于根据视频之间的关联关系,确定所述第二视频。
上述方案中,所述第二确定模块,还用于根据在视频直播选择页面直播链接的显示位置关系,选择与所述第一视频的第一直播链接相邻的第二直播链接对应的视频为所述第二视频。
本发明实施例还提供了一种终端,所述终端包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器用于运行计算机程序时,实现本发明任一实施例所提供的视频直播处理方法。
本发明实施例还提供了一种视频直播处理系统,所述系统包括:终端和媒体服务器;所述终端用于实现本发明任一实施例所提供的视频直播处理方法;
所述媒体服务器用于向所述终端发送第一视频的视频数据和/或第二视频的视频数据。
本发明实施例还提供了一种计算机存储介质,所述存储介质中有计算机可执行指令,所述计算机可执行指令被处理器执行实现本发明任一实施例所提供的视频直播处理方法。
本发明实施例提供的视频直播处理方法、装置、终端及存储介质,通过在直播第一视频时,缓存第二视频的视频数据,有利于当切换到第二视频时,可以快速播放所述第二视频的视频内容。通过在检测到切换执行时,停止对所述第一视频的直播,并利用缓存的所述第二视频的视频数据直播所述第二视频,可以使得直播设备一切换到第二视频就能通过播放已预先缓存的第二视频的视频数据,从而相对于没有预先缓冲直接切换导致的没有时间来得及进行视频数据的获取导致的黑屏等播放异常状态,相比于没有预先缓存直接切换需要将近1s才能看到画面具备更短的时间,显示屏幕可以以更短的时间切换到第二视频的显示画面,视频直播的切换速率更快且切换效率更高。另外,本发明实施例提供的方法还降低非首次直播视频的首次出现画面所需的时长,降低整个直播过程的卡顿率,给用户带来更好的视频直播的体验。
附图说明
图1为本发明一实施例中缓存视频数据的流程示意图;
图2为本发明视频直播处理方法实施例一、二、三、四、五的流程示意图;
图3为本发明视频直播处理方法实施例六的流程示意图;
图4为本发明视频直播处理方法实施例七的流程示意图;
图5为本发明视频直播处理方法实施例八的流程示意图;
图6为本发明视频直播处理方法实施例九的流程示意图;
图7为本发明视频直播处理方法实施例十的流程示意图;
图8为本发明视频直播处理方法实施例十一的流程示意图;
图9为本发明一实施例中视频直播处理装置结构示意图;
图10为本发明一实施例中视频直播处理装置的硬件结构示意图;
图11为本发明一实施例中视频直播处理系统结构示意图。
具体实施方式
本发明实例提供的视频直播处理方法,主要应用于视频直播领域,目前视频直播的系统,包括:媒体服务器和终端,其中,终端上装有直播视频软件APP,例如,可以是映客直播软件、花椒直播软件、虎牙直播软件、斗鱼直播软件、直播吧软件、风云直播软件,等等;所述终端可以是手机、iPad、PC、或者其它电子设备。本发明的实现、功能特点及优点将结合实施例,参照附图做进一步说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,提供了一种预先缓存视频数据的缓存流程的方法,推流设备将视频流推到媒体服务器,媒体服务器再转发给其它媒体服务器或者直接转发给终端APP,由终端APP解码输出。对于直播平台,则有很多的直播推流设备将各主播的直播视频推到媒体服务器,终端APP用户根据个人喜好挑选喜欢的主播和内容长时间观看。过一段时间,用户可能会继续连续更换视频内容寻找更喜欢的内容。在切换过程中用户往往是通过滑动显示交互屏来更换下一个视频。
在一些实施例中,视频直播是将现场的信号(例如摄像机)、电视信号(如电视节目、录像带)等实时采集编码成标准流式数据进行管理、分类等传送到服务器上由页面形式发布出去,供终端用户实时观看现场节目或电视节目。其具体的实现过程是:当用户发出直播请求时,该服务器就会根据直播信息,将该直播频道的播放地址告诉用户,用户根据该地址加入对应的组播组,即可接收到该直播频道的码流了。
视频直播是在视频点播的基础上演变而来。
视频点播是根据终端用户的要求播放节目,其具体的实现过程是:当终端用户发出点播请求时,流媒体服务器系统就会根据点播信息,将存放在片源库中的节目信息检索出来,以音频流和视频流文件,通过网络传输给用户终端以播放。
在一些实施例中,由于视频直播是实时采集流媒体以进行播放,对于视频直播的下载方式来说,其可以只需要缓存即将播放的一部分视频内容,下载视频内容时间短,保留时间短;而由于视频点播必须要把节目下载到本地缓存中才能播放,因而往往需要大量下载需要播放的视频内容,从而往往需要大量的存储资源。
在一些实施例中,视频直播中的视频数据并非预先采集,而是边采集边播放的;而视频点播一般是预先采集好了视频,并存储在视频服务器中或者视频数据库中,当点播该视频时,该视频的视频数据已经完整的完成采集,播放终端可以直接获取到整个完整视频的视频数据。
实施例一
如图2所示,本发明实施例提供了一种直播视频处理方法,该方法包括以下步骤。
步骤101,直播第一视频;
可选地,触控终端的交互显示屏进入直播APP页面,点击进入第一视频,直播第一视频。
这里,在进行直播第一视频时,终端向媒体服务器发送拉取第一视频的视频数据的请求;终端接收到第一视频的视频数据后,终端APP解码第一视频的视频数据,使第一视频的视频内容呈现在显示交互屏上。
这里,所述第一视频的视频数据具体为视频流。
步骤103,在直播所述第一视频时,缓存第二视频的视频数据;
可选地,终端在直播所述第一视频时,终端还向媒体服务器发送拉取第二视频的视频数据的请求,如此,媒体服务器基于该请求向终端发送所述第二视频的视频数据;终端就可以缓存所述第二视频的视频数据。
若所述第二视频是基于流媒体协议(例如,实时流媒体协议(RTP)、实时传输控制协议(RTCP))传输的,则第二视频的视频数据对应有包含有图像数据的视频流和包含有音频数据的音频流。
如此,在缓存所述第二视频的视频数据时可包括:缓存所述视频流数据、或者,缓存所述视频流数据和所述音频流数据。所述视频数据可包括:图像数据和音频数据;通常一个视频帧的图像数据的数据量远远大于音频数据的数据量。在步骤103中所述缓存第二视频的视频数包括:至少缓存所述第二视频的图像数据,由于音频数据的数据量小,切换到直播第二视频时,终端也可以及时的从媒体服务器请求到音频数据进行直播。
在另一些实施例中,所述103中缓存第二视频的视频数据可包括:同步缓存视频数据的图像数据和音频数据。如此,切换到直播第二视频时,直接基于已缓存的图像数据和音频数据进行直播即可。
步骤105,在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播所述第二视频。
可选地,终端在检测到切换执行时,停止对所述第一视频的直播;切换到直播所述第二视频;且在本发明实施例中,所述直播第二视频是直接利用已缓存的所述第二视频的视频数据开始第二视频的直播;而无需临时获取第二视频的视频信息,并基于视频信息开始缓冲第二视频的视频数据,在缓存到第二视频的视频数据之后才开始直播,显然提升了直播切换的效率,并减少了直播切换过程中的卡顿、黑屏等播放异常现象。
这里,需要说明的是,所述第一视频和所述第二视频并不只表征有两个视频,可以表征不断更换直播视频的多个直播视频;所述在检测到切换指令时,执行从一个直播视频切换到另一个直播视频,并不只表征两个直播视频之间的切换,而是表征在整个直播切换过程中,用户可能观看的多个直播视频之间的切换。
例如,可能是观看A主播的直播视频时,缓存下一个B主播的直播视频,过一段时间,在用户观看B主播的直播视频时,缓存下一个C主播的直播视频。
又例如,可以是用户连续不断的从A主播-B主播-C主播-D主播-……的直播视频之间切换;在播放A主播的直播视频时,缓存B主播的直播视频的视频数据;当检测到切换指令时,停止A主播的直播视频的直播,并利用缓存的B主播的直播视频的视频数据进行直播,并缓存C主播的直播视频的视频数据;当检测到切换指令时,停止B主播的直播视频的直播,并利用缓存的C主播的直播视频的视频数据进行直播,并缓存D主播的直播视频的视频数据;当检测到切换执行令时,停止D主播的直播视频的视频数据……,以此类推,直到选定感兴趣的直播视频进行长时间的视频直播。
需要说明的是,本实施例中在视频直播的过程中,用户在寻找喜欢的频道或节目时,通过在直播第一视频的时候缓存第二视频的视频数据,使得当检测到切换指令,切换到第二视频进行直播时,可以利用已经缓存的第二视频的视频数据进行直播,如此,避免了由于从随机时间点接入直播视频而带来的“黑屏”状态或者无节目状态;并且,可以实现在用户不断切换直播视频的过程时,使得用户在极短的时间内观看到切入的直播视频,降低了直播视频的首次出现画面的等待时间,实现了比秒开更好的效果;并且,由于在整个切换过程中,在播放前一个视频时会缓存下一个视频的视频数据,因而也克服了直播过程中由于不断切换给用户带来的卡顿感。
实施例二
基于上述实施例一,如图2所示,上述步骤105,还包括:
在检测到所述切换指令时,控制所述第一视频的直播画面从第一方向滑出显示区域;
控制所述第二视频的直播画面从所述显示区域的第二方向滑入所述显示区域;
其中,所述第二方向与所述第一方向相反或相同。
这里,所述检测到所述切换指令,可以为:根据用户的操作,检测到接收生成的切换指令。
这里,可以是通过手指或者其它触控物滑动交互显示屏,以控制所述第一视频的直播画面从第一方向滑出显示区域,和/或,以控制所述第二视频的直播画面从所述显示区域的第二方向划入所述显示区域;其中,所述第一方向和第二方向可以是平行于显示区域横轴的方向,也可以是平行于显示区域纵轴的方向;还可以是任一方位的方向,只要不影响控制将第一视频的直播画面从滑出显示区域、且不影响的控制将所述第二视频的直播画面从所述显示区域滑进即可;所述第一方向与所述第二方向可以为相反的方向或相同。
所述横轴方向可为显示屏的长边所在的方向;所述纵轴方向可为显示屏的短边所在的方向。
这里,在检测到所述切换指令时,根据所述切换指令,还可以是执行退出第一视频直播到直播APP的主页,滚动交互显示屏以从第一视频切换到第二视频,触控进入第二视频以直播第二视频的操作。
在一些实施例中,所述切换指令可为滑动操作对应的滑动操作指令,还可以是通过语音采集的语音指令,或者,从其他电子设备接收的控制指令,例如,从鼠标或者远程控制设备接收的切换指令。
进一步地,所述步骤105,还包括:
检测作用于显示交互屏的滑动操作;
若检测到所述滑动操作,生成所述切换指令;
所述滑动操作的滑动方向为所述第一方向。
可选地,终端检测用户作用于显示交互屏的滑动操作,所述滑动操作的方向可以为所述第一方向,也可以是与第一方向相反的方向;若检测到所述滑动操作,则生成切换指令。
若滑动操作的方向与第一方向相同,如此,与用户的操作惯性相同,可以提升用户体验。
实施例三
基于上述实施例一,如图2所示,上述步骤103,还包括:
在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP。
所述当前时刻可以理解为:当前时刻点。在播放第一视频的任意一个播放当前时刻点。
这里,缓存视频数据可包括:缓存视频流的数据内容。而视频流包括视频帧的集合,以MPEG1、MPEG2、MPEG4和H.264等为例,其是包括画面组(Group of Picture,GOP)集合的视频流。
在一些实施例中,在直播第一视频时,为第二视频预先分配一个缓存空间,该缓存空间至少可以容纳第二视频的一个GOP;在一些实施例中,所述缓存空间的容量可以至少缓存两个或两个以上的GOP。
所述缓存第二视频当前时刻直播的至少一个GOP,可以将当前从网络侧下载的第二视频的GOP写入到所述缓存空间,若缓存空间已经写满,则直接替换距离当前时刻较远的历史时刻缓存的GOP。例如,在所述缓存空间内建立有缓存队列,该缓存队列可为先进先出队列(First In First Out,FIFO),如此,向队列尾部写入一个GOP,则在FIFO的头部先弹出一个GOP。采用这种方式进行第二视频的缓存,一方面不用占用大量的缓存空间,节省了播放终端的缓存容量;另一方面,可以及时的丢弃历史时刻缓存的GOP,减少由于切换错误,切换到直播第二视频时,进入直播选择的GOP不正确(例如,选择了历史时刻的GOP进行当前时刻的直播)的现象,且减少从历史时刻的GOP跳转到下一时刻的GOP导致的直播跳跃不连续的现象,故通过缓存空间的专门设定还提升了第二视频的直播效果。
请再次参考图1,在用户打开A主播的视频内容进行观看时,可以通过预先缓存下一个相邻直播视频B主播的1个GOP或者1个以上GOP集合,将其存放在终端的本地缓存中。如果用户此时切换视频内容,终端APP可以直接读取缓存中的GOP或GOP集合进行播放,继续下载B主播的其余的视频帧,同时,预先缓存下载直播视频C主播一个或者一个以上GOP存放在本地缓存中,等待用户进行切换。
这里,所述GOP包括:I帧、P帧、B帧;其中,
I帧,为关键帧,通常是每一个GOP的第一个帧,其能够保留一副完整的画面,解码时只需要本帧数据就可以完成解码;
P帧,为前向预测帧,P帧能够保留这一帧与前面一帧的差别,因此在解码时,P帧依赖前一个P帧/I帧;
B帧,为双向预测帧,B帧能够保留这一帧与前后帧的差别,因此在解码时,B帧依赖前一个P帧/I帧和后一个P帧;B帧不是参考帧,不会造成解码错误的扩散。
在一些实施例中,对于视频点播来讲,其视频文件都是从0秒开始的,而从0秒开始的第一帧是关键帧I帧,因而当用户点击进入点播视频时,其不存在由于进入P帧或B帧而引起的“黑屏”,看到是有画面的视频内容。而对于视频直播来讲,其是在一个随机的时间点接到这个视频流进行播放,而接入的这个时间点的帧可能是I帧,也有可能是P帧或者B帧。而当这个时间点接进去的是P帧或者B帧,这会使的显示交互屏出现“黑屏”状态。因此,需等到下一个关键帧I帧到来时,才能开始出现有画面的视频内容。
需要说明的是,本实施例通过在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP,当切换直播第二视频时,可以避免直接从时间点P帧或者B帧进入直播视频的可能性;使得进入直播第二视频时,可以通过播放已经预先缓存的GOP,从而使得直播可以从I帧的时间点接入播放,从而使得显示交互屏不会出现“黑屏”状态或者无节目状态,从而避免了在切换过程的“黑屏”或者出现卡顿的问题。
如此,可以使得用户在不断切换直播视频时,避免了首次出现播放画面所需的时间过长的问题;并且,如果缓存的GOP的总间隔时间超过前后关键帧I帧之间的时长,可以实现直播视频切换过程的完全无缝连接播放。
实施例四
基于上述实施例三,如图2所示,所述步骤103还包括:在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个第一类GOP,其中,所述第一类GOP包括:I帧、B帧和P帧。
这里,当终端连接的网络为WIFI或者有线网络时,或者,当用户配置为缓存第一类GOP集合时,或者对网络的流量没有限制的其它情况时,终端缓存所述第二视频当前时刻直播的至少一个第一类GOP。
如此,本实施例可以在降低用户不断切换带来的卡顿感时,还能观看到清晰的画面。
实施例五
基于上述实施例三,如图2所示,所述步骤103还包括:在直播所述第一视频时,缓存至少一个第二类GOP或者至少一个第三类GOP;
所述第二类GOP相比第一类GOP缺少B帧;所述第三类GOP相比所述第一类GOP缺少B帧和P帧。
这里,缓存丢掉B帧,或者丢掉P帧和B帧的GOP,可在终端请求缓存的第二视频的GOP时,携带缓存视频流类型为主动丢帧模式的指示标识;其中,可选的丢帧类型包括:丢掉B帧,或者丢掉P帧和B帧的类型。
在一些实施例中,在基于GOP结构的视频编码标准中,每个GOP必须以一个I帧开始,其后紧随着一系列P帧和B帧。由于I帧为帧内独立解码,解码时不需要参考其它帧,就能解码出完整的画面;而P帧由于为前向预测编码,解码时需要参考位于它之前的I帧或P帧;而B帧为双向预测解码,解码时需要参考位于它前后两侧的I帧或P帧;当决定丢某个帧时,该GOP中所有直接或间接依赖于该帧的其它帧都必须被丢弃,否者会导致解码器错误或失败。
根据上述丢帧原则和帧间依赖关系,每个B帧都可以随机丢弃;当丢弃一个P帧时,当前GOP中按解码顺序位于该P帧之后的所有其它P帧和B帧都应该丢弃;当丢弃一个I帧时,当前GOP中所有帧的也都应该丢弃。
因而如果丢掉B帧,只保留I帧和P帧,则画面的清晰度受到一定的影响,但是对感官的影响并不显著;如果丢掉P帧,则B帧也不能解码,所以丢掉P帧的同时,B帧也会丢掉,此时一个GOP只有I帧,如果一个GOP间隔为2S,则可以每2S看到实时的动态的图片。
如此,如果丢掉B帧,则所述切换到直播第二视频时,开始播放时刻的画面清晰度会受到一定的影响,但是,画面的完整度并没有受到影响;同时,还可以部分解决流量的问题。如果丢掉P帧和B帧,此种情况,虽然画面的清晰度也同样受到影响,但是仍然能观看到的是单个GOP时间为间隔的实时的动态的图片,如果单个GOP的时间比较足够小,小于人眼的反映时间,还是可以看到连续的视频播放画面。
需要说明的是,在直播所述第一视频时,如果缓存第二视频的视频数据为不完整的GOP,比如,丢掉B帧或者丢掉P帧和B帧的GOP,在切换到直播第二视频时,不影响其重新缓存完整的其它GOP。因而,对直播第二视频时,即使在上述步骤103中是缓存的不完整的GOP的视频流,也不影响后续缓存所述第二视频的完整的GOP的视频流,从而直播所述第二视频的视频内容。并且,由于在切换到第二视频时后比较短的时间内,便即可重新缓存完整的GOP集合,因而在用户感受方面,即使一小段时间内是播放丢掉B帧或P帧和B帧的GOP的视频内容,也不影响用户观看的整个视频的直观感受。如此,可以大大节省流量,对于一些限制流量的电子设备用户,可以大大提高用户观看视频直播的体验。
实施例六
基于上述实施例三,如图3所示,所述步骤105之前,还包括步骤104:检测直播所述第一视频的时长是否超过设置的阈值;
若直播所述第一视频的时长超过所述阈值,停止所述第二视频的视频数据的缓存。
可选地,检测直播所述第一视频的时长是否超过设置的阈值,可以在直播第一视频开始时刻,设置启动一定时器,以记录直播第一视频的时长;当终端直播所述第一视频的时长超过设置的阈值时间时,则终端停止对所述第二视频的视频数据的缓存。
这里,所述设置的阈值,可以根据用户以往浏览直播视频的历史记录,停留在直播视频的时长而设定;例如,用户停留在A主播的直播视频超过30s可认为用户对A主播的直播视频感兴趣,从而会长时间停留在A主播的直播视频的页面,如此,可所设置的阈值可以为30s;不同的用户,所设置的阈值时间可以是不同;同一用户对应不同类型的直播视频,所设置的阈值时间也可以是不同。
这里,从一直播视频切换到直播另一直播视频时,都需重新设置定时器的阈值时间,所设置的阈值时间,可以是与上个阈值相同或者不同的阈值时长。例如,对于A主播的直播视频,设置定时器的阈值时间为30s;对于B主播的直播视频,设置的定时器的阈值时间可以为15s。当终端APP从A主播的直播视频切换到B主播的直播视频,则从直播B主播的直播视频的开始时刻,从0开始计时,所设置的阈值时间为15s。
需要说明的是,本实施例中,检测直播所述第一视频的时长是否超过设置的阈值,来推断用户是否对所述第一视频的内容是否感兴趣,从而确定是否会长时间停留在所述第一视频,观看所述第一视频的视频内容。若当确定停留时间是超过设定的阈值时间时,则确定用户会长时间停留在所述第一视频,如此,短时间内不会切换到第二视频,通过停止对第二视频的视频数据的缓存,可以节省缓存空间;并且,由于不需要执行同步缓存第二视频的视频数据,还能降低终端设备电量的耗损,从而达到节省电能的目的。
实施例七
基于上述实施例一,如图4所示,在步骤103之前,还包括步骤102,确定是否满足缓存条件;
具体地,终端确定是否满足缓存条件。
所述步骤103包括:若满足所述缓存条件,在直播所述第一视频时缓存所述第二视频的视频数据。
进一步地,所述步骤102中确定是否满足缓存条件,包括以下至少之一:
场景一、若检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足所述缓存条件;
场景二、若检测到直播设备的当前带宽不小于接收所述第一视频和所述第二视频的视频数据所需带宽之和,确定满足所述缓存条件;
场景三、若检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件;
场景四、若所述直播设备的配置数据指示缓存所述第二视频,确定满足所述缓存条件;
场景五、若所述直播设备的配置数据指示缓存所述第二视频且检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足缓存条件;
场景六、若所述直播设备的配置数据指示缓存所述第二视频且检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件。
这里,所述直播设备为终端,可以是台式电脑、智能手机、平板电脑,或者其他电子设备;所述直播设备为进行视频直播的电子设备。
需要说明的是,对于场景一、若检测到直播设备的当前带宽大于接收第一视频的视频数据所需的带宽时,可以确定所述直播设备的带宽可以缓存第一视频的视频数据前提下,还至少有多余的一部分带宽可以进行第二视频的视频数据的缓存。
对于场景二,若检测到所述直播设备的当前带宽不小于接收所述第一视频和所述第二视频的视频数据所需带宽之和时,可以确定所述直播设备有足够的带宽进行第一视频和第二视频的视频数据的缓存。
对于场景三,若检测到所述直播设备当前连接的网络为预定类型网络时,确定所述直播设备有足够的带宽进行第一视频和第二视频的视频数据的缓存。
对于场景四,若所述直播设备的配置数据指示缓存所述第二视频时,确定所述直播设备的带宽可以缓存第一视频的视频数据的前提下,还可以至少缓存第二视频的视频数据。
对于场景五,若所述直播设备的配置数据执行缓存所述第二视频且检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定所述直播设备的带宽可以缓存第一视频的视频数据前提下,还至少有多余的一部分带宽可以进行第二视频的视频数据的缓存。
对于场景六,若所述直播设备的配置数据指示缓存所述第二视频且检测到所述直播设备当前连接的网络为预定类型网络,确定所述直播设备的带宽可以缓存所述第一视频的视频数据前提下,可以至少缓存第二视频的视频数据。
需要说明的是,本实施例可以根据直播设备的带宽是否满足条件的情况,实现是否对下一个直播视频的视频数据进行预先缓存。
实施例八
基于实施例一,如图5所示,在步骤103之前,还包括步骤106,根据视频之间的关联关系,确定所述第二视频。
进一步地,所述步骤106,还包括:
根据在视频直播选择页面直播链接的显示位置关系,选择与所述第一视频的第一直播链接相邻的第二直播链接对应的视频为所述第二视频。
需要说明的是,在另一个实施例中,所述根据视频之间的关联关系,确定所述第二视频,还可以是:根据交互显示屏上直播视频的主页的显示位置关系,选择与第一视频的主页相邻或者邻近直播视频主页对应的直播视频为第二视频。
在另一实施例中,所述根据视频之间的关联关系,确定所述第二视频,还可以是:根据在视频直播选择页面直播链接的显示位置关系,选择与所述第一视频的第一直播连接相隔一个或一个以上的直播链接的第三直播链接对应的视频为所述第二视频。
实施例九
为了进一步解释说明,本发明还提出了一种视频直播处理方法,所述方法主要是针对终端接收第一类GOP的情景;所述第一类GOP为完整的GOP,所述第一类GOP包括:I帧、P帧和B帧;如图6所示,所述方法包括以下步骤。
步骤S001:选取直播视频A;并设置定时器T1;
可选地,启动终端设备;点击进入终端APP页面;点击选择终端APP中直播视频类别中的某一个直播视频A;在终端APP设置定时器,所述定时器设置为从终端APP直播A的开始时刻开始计时,设置的阈值时间为T1;其中,所述终端APP为进行视频直播的应用程序,例如可以是映客直播软件、花椒直播软件、虎牙直播软件、斗鱼直播软件,等等
这里,通过设置定时器的阈值时间,可以根据终端APP后续在A视频上直播停留的时长,来判断用户是否可能长时间直播视频A。
步骤S002:发送拉取A媒体流的请求;
可选地,终端APP向媒体服务器发送拉取A媒体流的请求。
步骤S003:推送A媒体流;
可选地,媒体服务器向终端APP推送A媒体流;所述媒体流可以理解为上述实施例一中的视频数据,所述媒体流包括:视频流和音频流。
步骤S004:直播A媒体流;
可选地,终端APP接收到媒体服务器发送的A媒体流后,终端APP解码A媒体流。
步骤S005:发送拉取相邻B媒体流的请求;
可选地,在终端APP正常播放A媒体流的同时,终端APP向媒体服务器发送拉取与视频A的直播链接相邻的第二直播连接对应的视频B的媒体流的请求;终端APP检测到当前接入的网络为WIFI或者有线网络,或者,用户配置为预先缓存第一类GOP时,则向媒体服务器发送拉取包括第一类GOP的媒体流的请求。
这里,所述第一类GOP,包括:I帧、B帧和P帧。
步骤S006:推送B媒体流;
可选地,媒体服务器接收终端APP发送的请求后,媒体服务器向终端APP推送B媒体流;所述B媒体流包括:B视频流和B音频流。
这里,推送的媒体流中的GOP为第一类GOP。
步骤S007:保存B媒体流的1个或N个GOP;
可选地,将B媒体流中的1个或N个第一类GOP缓存在终端的本地缓存中;其中,所述N为大于1的自然数。
步骤S008:接收切换指令,控制直播B媒体流;并重设T1定时器;
可选地,终端检测直播A媒体流的时长;若在直播A媒体流的时长小于T1之前,终端接收到切换指令,则终端APP根据切换指令,控制直播B媒体流;并且,终端重新设置定时器的时间;所述定时器设置为从直播B媒体流的开始时刻开始计时,阈值时间为T1。
这里,所述根据切换指令以控制直播B媒体流,可以是通过在终端APP的直播显示区域执行滑动操作,切换到视频B以直播B媒体流;或者,可以是执行其它操作以切换到视频B直播B媒体流。
这里,重新设置定时器的时间可以与T1不同。
步骤S009:播放缓存的B媒体流的1个或者N个GOP;
可选地,终端判断本地缓存空间中是否存在B媒体流;如果存在,终端APP播放本地缓存空间中缓存的B媒体流;具体地,播放缓存的B媒体流的1个第一类GOP或N个第一类GOP集合。
步骤S010:发送继续拉取B媒体流的请求;
可选地,终端APP向媒体服务器发送继续拉取B媒体流的请求;其中,可以是发送未缓存的B媒体流的第一类GOP的请求;或者,发送未缓存的B媒体流的第一类GOP以及发送已缓存在本地缓存空间但未开始播放的B媒体流的第一类GOP。
步骤S011:继续推送B媒体流;
可选地,媒体服务器向终端APP继续推送B媒体流;终端APP接收到B媒体流后,解码B媒体流;将解码后的B被媒体流正常显示以进行视频B的正常直播;所述B媒体流包括:B视频流和B音频流,所述B媒体流包括第一类GOP集合。
步骤S012:发送拉取相邻C媒体流的请求;
可选地,在正常播放B媒体流的同时,终端APP向媒体服务器发送拉取与视频B的直播链接相邻的第三直播连接对应的视频C的媒体流的请求;终端APP检测到当前接入的网络为WIFI或者有线网络,或者,用户配置为预先缓存第一类GOP时,则向媒体服务器发送拉取第一类GOP的请求。
这里,所述第一类GOP包括:I帧、B帧和P帧。
步骤S013:推送C媒体流;
可选地,媒体服务器接收终端APP发送的请求后,媒体服务器向终端APP推送C媒体流;所述C媒体流包括:C视频流和C音频流,所述C视频流为包括1个或N个第一类GOP的视频流。
步骤S014:保存C媒体流的1个或N个GOP;
可选地,将C视频流的1个第一类GOP或N个第一类GOP集合缓存在本地缓存中;其中,所述N为大于1的自然数。
步骤S015:不再更换视频;
可选地,终端APP持续直播B媒体流。
这里,终端APP持续直播B媒体流,说明终端用户对视频B感兴趣。
步骤S016:检测到T1时间超时;
可选地,终端检测到终端APP持续直播B媒体流的时长超过定时器的阈值时间T1。
步骤S017,发送停止推送C的媒体流的请求,并断开连接;
可选地,当终端APP直播B媒体流的时长超过时间T1,终端APP向媒体服务发送停止推送C媒体流的请求;并通过断开终端APP与媒体服务器之间的传输协议来停止接收C媒体流。
步骤S018,清除C的媒体流的缓存。
可选地,终端将缓存空间中C媒体流清除。
需要说明的是,本实施例中在视频直播的过程中,用户在寻找喜欢的频道或者节目时,可通过滑动连续不断的切换直播视频;通过在播放A视频时预先缓存B视频的媒体流的一个GOP或N个GOP集合,通过播放B视频的媒体流时预先缓存C视频的媒体流的一个GOP或N个GOP集合,可以避免由于切换而引起的“黑屏”状态或者无节目状态,可以实现在除了首个直播的视频A外,其它直播的视频的首次出现画面的等待时间短,实现比秒开的时间短。
如此,本实施例极大的降低了卡顿率,使得整个直播过程都能呈现有画面的状态,极大提高了用户的满意度。
需要说明的是,本实施例中在播放一个直播视频的同时,缓存下一个直播视频时都是缓存的第一类GOP,由于第一类GOP为完整的帧集合,包括I帧、B帧和P帧,因而在直播切换直播视频时,可以使得用户观看到完整帧率的视频内容,因而能观看到非常清晰的画面,更加增加了用户的满意度。
实施例十
为了进一步解释说明,本发明还提出了一种视频直播处理方法,所述方法主要是针对终端接收第二类GOP/第三类GOP的情景;所述第二类GOP相比第一类GOP丢弃B帧,所述第二类GOP相比第一类GOP丢弃B帧和P帧;如图7所示,所述方法包括以下步骤。
步骤S201:选取直播视频A;并设置定时器T1;
可选地,启动终端设备;点击进入终端APP页面;点击选择终端APP中直播视频类别中的某一个直播视频A;在终端APP设置定时器,所述定时器设置为从终端APP直播A的开始时刻开始计时,设置的阈值时间为T1;其中,所述终端APP为进行视频直播的应用程序,例如可以是陌陌直播软件、花椒直播软件、虎牙直播软件、斗鱼直播软件、直播吧软件,等等
这里,通过设置定时器的阈值时间,可以根据终端APP后续在A视频上直播停留的时长,来判断用户是否可能长时间直播视频A。
步骤S202:发送拉取A媒体流的请求;
可选地,终端APP向媒体服务器发送拉取A媒体流的请求。
步骤S203:推送A媒体流;
可选地,媒体服务器向终端APP推送A媒体流;所述A媒体流包括:A视频流和A音频流。
步骤S204:直播A媒体流;
可选地,终端APP接收到媒体服务器发送的A媒体流后,终端APP解码A媒体流。
步骤S205:发送拉取相邻B媒体流的请求;所述请求中携带丢帧的指示标识;
可选地,在终端APP正常播放A媒体流的同时,终端APP向媒体服务器发送拉取与视频A的直播链接相邻的第二直播连接对应的视频B的媒体流的请求;并在所述请求中携带丢帧的指示标识,所述丢帧的指示标识为:丢掉B帧的指示标识,或者,丢掉B帧和P帧的指示标识。
这里,需要说明的是,所述请求中携带丢帧的指示标识,实际上,请求的是拉取不完整的GOP;例如,在一实施例中,携带丢掉B帧的指示标识的请求,则为拉取第二类GOP;在另一实施例中,携带丢掉B帧和P帧的指示标识的请求,则为拉取第三类GOP;其中,所述第二类GOP包括:P帧和I帧;所述第三类GOP包括:I帧。
在另一实施例中,所述请求中可携带丢掉B帧的指示标识,和丢掉P帧和B帧的指示标识。例如,在所述拉取相邻B媒体流的请求中携带当前时刻最近的第1个GOP为丢掉B帧的指示标识,和携带当前时刻最近的第2个至第5个GOP为丢掉B帧和P帧的指示标识。
在另一实施例中,还可以是,在所述拉取相邻B媒体流的请求中携带当前时刻最近第1个至第3个GOP为丢掉B帧和P帧的指示标识,和携带当前时刻最近的第4个GOP为丢掉B帧的指示标识,和携带当前时刻最近的第5个GOP为完整的GOP的指示标识。
步骤S206:推送B媒体流;
可选地,媒体服务器接收终端APP发送的请求后,媒体服务器向终端APP推送B媒体流;所述B媒体流包括:B视频流和B音频流;所述B视频流为包括1个第二类/第三类GOP或N个第二类/第三类GOP集合的视频流。
这里,需要说明的是,虽然推送B视频流为不完整的GOP,比如第二类GOP或第三类GOP;但是,所述B视频流对应的音频流并不丢帧,推送的给终端APP的音频流不变。
这里,需要说明是,可以控制推送B视频流为第二类GOP和第三类GOP的集合;对应地,所述请求中可携带丢掉B帧指示,和丢掉P帧和B帧的指示。
步骤S207:保存B媒体流的1个或N个GOP;
可选地,将B媒体流的1个或N个第二类/第三类GOP缓存在终端的本地缓存中;其中,所述N为大于1的自然数。
步骤S208:接收切换指令,控制直播B媒体流;并重设T1定时器;
可选地,终端检测直播A媒体流的时长;若在直播A媒体流的时长小于T1之前,终端接收到切换指令,则终端APP根据切换指令,控制直播B媒体流;并且,终端重新设置定时器的时间;所述定时器设置为从直播B媒体流的开始时刻开始计时,阈值时间为T1。
这里,所述根据切换指令以控制直播B媒体流,可以是通过在终端APP的直播显示区域执行滑动操作,切换到视频B以直播B媒体流;或者,可以是执行其它操作以切换到视频B直播B媒体流。
这里,重新设置定时器的时间可以与T1不同。
步骤S209:播放缓存的B媒体流的1个或N个GOP;
可选地,终端判断本地缓存空间中是否存在B媒体流;如果存在,终端APP播放本地缓存空间中缓存的B媒体流;具体地,播放缓存的B媒体流的1个或N个GOP;所述播放缓存的B媒体流的1个或N个GOP的GOP类型为第二类/第三类GOP。
步骤S210:发送继续拉取B媒体流的请求;
可选地,终端APP向媒体服务器发送继续拉取B媒体流的请求;其中,可以是发送未缓存的B媒体流的第一类GOP的请求;或者,发送未缓存的B媒体流的第一类GOP和发送已缓存在本地缓存空间但未开始播放的B媒体流的第一GOP。
需要说明的是,如此,在所述步骤S210中,由于此时已经开始直播B视频流,因而可拉取B媒体流第一类GOP或N个GOP集合,可正常播放B媒体流,使得视频画面更加清晰;并且,还可以将之前缓存的但并未播放的第二类/第三类GOP清除,拉取缓存第一类GOP。
步骤S211:继续推送B媒体流;
可选地,媒体服务器向终端APP继续推送B媒体流;终端APP接收到B媒体流后,解码B媒体流;将解码后的B被媒体流正常显示以进行视频B的正常直播;所述B媒体流包括:B视频流和B音频流,所述B视频流为包括第一类GOP集合的视频流。
步骤S212:发送拉取相邻C媒体流的请求;所述请求中携带丢帧的指示标识;
可选地,在正常播放B媒体流的同时,终端APP向媒体服务器发送拉取与视频B的直播链接相邻的第三直播连接对应的视频C的媒体流的请求;并在所述请求中携带丢帧的指示标识,所述丢帧的指示标识为:丢掉B帧的指示标识,或者,丢掉B帧和P帧的指示标识。
这里,需要说明的是,所述请求中所述请求中携带丢帧的指示标识,实际上,请求的是拉取不完整的GOP;例如,在一实施例中,携带丢掉B帧的指示标识的请求,则为拉取第二类GOP;在另一实施例中,携带丢掉B帧和P帧的指示标识的请求,则为拉取第三类GOP;其中,所述第二类GOP包括:P帧和I帧;所述第三类GOP包括:I帧。
步骤S213:推送C媒体流;
可选地,媒体服务器接收终端APP发送的请求后,媒体服务器向终端APP推送C媒体流;所述C媒体流包括:C视频流和C音频流,所述C视频流为包括1个第二类/第三类GOP或N个第二类/第三类GOP集合的视频流。
这里,需要说明的是,所述推送C媒体流中的C音频流给终端APP时并不丢帧。
步骤S214:保存C媒体流的1个或N个GOP;
可选地,将C媒体流的1个第二类/第三类GOP或N个第二类/第三类GOP集合缓存在本地缓存中;其中,所述N为大于1的自然数。
步骤S215:不再更换视频;
可选地,终端APP持续直播B媒体流。
这里,终端APP持续直播B媒体流,说明终端用户对视频B感兴趣。
步骤S216:检测到T1时间超时;
可选地,终端检测到终端APP持续直播B媒体流的时长超过定时器的阈值时间T1。
步骤S217,发送停止推送C的媒体流的请求,并断开连接;
可选地,当终端APP直播B媒体流的时长超过时间T1,终端APP向媒体服务发送停止推送C媒体流的请求;并通过断开终端APP与媒体服务器之间的传输协议来停止接收C媒体流。
步骤S218,清除C的媒体流的缓存。
可选地,终端将缓存空间中C媒体流清除。
需要说明的是,本实施例中在视频直播的过程中,用户在寻找喜欢的频道或者节目时,可通过滑动连续不断的切换直播视频;通过在播放A视频时预先缓存B视频的媒体流的一个或N个GOP,通过播放B视频的媒体流时预先缓存C视频的媒体流的一个或N个GOP,可以避免由于切换而引起的“黑屏”状态或者无节目状态,可以实现在除了首个直播的视频A外,其它直播的视频的首次出现画面的等待时间短,实现比秒开的时间短。如此,本实施例极大的降低了卡顿率,使得整个直播过程都能呈现有画面的状态,极大提高了用户的满意度。
需要说明的是,本实施例中,通过音视频预先缓存链接相邻的视频流的第二类/第三类GOP,以达到切换过程的快速播放;当用户切换到链接相邻的下一个直播视频时,可以根据不同的网络条件,使用户观看到低帧率的视频内容,使得可以以牺牲画面的清晰度换取节省流量;等到播放连接相邻的下一个直播视频的一段时间后,可以再次观看完整帧率的视频内容,画面清晰度得到恢复。如此,本实施例中,可以根据终端设备的流量套餐情况,设定独特的预先缓存下一个直播视频的媒体流的场景,可以丢掉B帧或者P、B帧以达到视频切换时的视频快速播放。
实施例十一
为了进一步解释说明,本发明还提出了一种视频直播处理方法,所述方法主要针对通过判断直播设备的带宽不满足预先缓存条件时,不进行预先缓存的情景。如图8所示,所述方法包括以下步骤。
步骤S301:选取直播视频A;
可选地,启动终端设备;点击进入终端APP页面;点击选择终端APP中直播视频类别中的某一个直播视频A;其中,所述终端APP为进行视频直播的应用程序,例如可以是熊猫直播、CC直播、触手、龙珠直播,等等
步骤S302:判断带宽不足,不进行预先缓存下一个视频的媒体流;
可选地,检测到直播设备的当前带宽小于接收所述A视频的媒体流和一下个视频B的媒体流所需的带宽,或者,终端检测到直播设备的配置数据指示不预先缓存下一个视频的媒体流时,终端不进行预先缓存下一个视频的媒体流的操作。
这里,所述下一个视频B为视频A的第一直播链接相邻的第二直播连接赌赢的视频;或者,所述下一个视频B为显示交互屏上与视频A的主页相邻或者邻近的视频。
步骤S303:发送拉取A媒体流的请求;
可选地,终端APP向媒体服务器发送拉取A媒体流的请求。
这里,所述媒体流包括一系列GOP;所述GOP为第一类GOP。
步骤S304:推送A媒体流;
可选地,媒体服务器向终端APP推送A媒体流;所述A媒体流包括:A视频流和A音频流。
步骤S305:直播A媒体流;
可选地,终端APP接收到媒体服务器发送的A媒体流后,终端APP解码A媒体流;终端APP直播A媒体流。
需要说明的是,本实施例中,还可以根据直播设备的带宽情况,判断是否执行预先缓存下一个视频的媒体流的操作,如此,本实施例可以使得当直播设备的带宽不足时,不进行预先缓存下一个视频的媒体流的操作。
这里需要指出的是:以下视频直播处理装置项的描述,与上述视频直播处理方法描述是类似的,同方法的有益效果描述,不做赘述。对于本发明视频直播处理装置实施例中未披露的技术细节,请参照本发明视频直播控制方法实施例的描述。
本发明实施例还提出了一种视频直播装置,请参阅图9,所述装置包括:视频直播模块21和缓存模块22;其中,
所述视频直播模块21,用于直播第一视频;还用于在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播第二视频;
所述缓存模块22,用于在直播所述第一视频时,缓存所述第二视频的视频数据。
可选地,所述视频直播模块21,还包括:第一切换子模块211和第二切换子模块212;其中,
所述第一切换子模块211,用于在检测到所述切换指令时,控制所述第一视频的直播画面从第一方向滑出显示区域;
所述第二切换子模块212,用于控制所述第二视频的直播画面从所述显示区域的第二方向滑入所述显示区域;
其中,所述第二方向与所述第一方向相反或相同。
可选地,所述视频直播模块21,还包括:第一检测子模块213和生成子模块214;其中,
所述第一检测子模块213,用于检测作用于显示交互屏的滑动操作;
所述生成子模块214,用于若检测到所述滑动操作,生成所述切换指令;
所述滑动操作的滑动方向为所述第一方向。
可选地,所述缓存模块22,还用于在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP。
可选地,所述缓存模块22,还用于在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个第一类GOP,其中,所述第一类GOP包括:I帧、B帧和P帧。
可选地,所述缓存模块22,还用于在直播所述第一视频时,缓存至少一个第二类GOP或者至少一个第三类GOP;
所述第二类GOP相比第一类GOP缺少B帧;所述第三类GOP相比所述第一类GOP缺少B帧和P帧。
可选地,所述装置还包括:时长检测模块23;其中,
所述时长检测模块23,用于检测直播所述第一视频的时长是否超过设置的阈值;
若直播所述第一视频的时长超过所述阈值,停止所述第二视频的视频数据的缓存。
可选地,所述装置还包括:第一确定模块24;其中,
所述第一确定模块24,用于确定是否满足缓存条件;
所述缓存模块,还用于若满足所述缓存条件,在直播所述第一视频时缓存所述第二视频的视频数据。
可选地,所述确定是否满足缓存条件,包括:
若检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足所述缓存条件;
若检测到直播设备的当前带宽不小于接收所述第一视频和所述第二视频的视频数据所需带宽之和,确定满足所述缓存条件;
若检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件。
可选地,所述装置还包括:第二确定模块25;其中,
所述第二确定模块25,用于根据视频之间的关联关系,确定所述第二视频。
可选地,所述第二确定模块25,还用于根据在视频直播选择页面直播链接的显示位置关系,选择与所述第一视频的第一直播链接相邻的第二直播链接对应的视频为所述第二视频。
本发明一实施例还公开了一种终端,如图10所示,所述终端包括处理器31和用于存储能够在处理器上运行的计算机程序的存储器32;其中,所述处理器用于运行计算机程序时,实现本发明任一实施例所提供的视频直播处理方法。
在一些实施例中,本发明实施例中的存储器32可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本文描述的系统和方法的存储器32旨在包括但不限于这些和任意其它适合类型的存储器。
而处理器31可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器31中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器31可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器32,处理器31读取存储器32中的信息,结合其硬件完成上述方法的步骤。
在一些实施例中,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital SignalProcessing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(ProgrammableLogic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
本发明实施例还提供了一种视频直播处理系统,所述系统如图11所示,包括:终端41和媒体服务器42;其中,所述终端41用于实现本发明任一实施例所提供的视频直播处理方法;所述媒体服务器42用于向所述终端41发送第一视频的视频数据和/或第二视频的视频数据。
本发明又一实施例还提供了一种计算机存储介质,该计算机可读存储介质存储有可执行程序,所述可执行程序被处理器31执行时,可实现图片处理配方法的以下步骤:
直播第一视频;
在直播所述第一视频时,缓存第二视频的视频数据;
在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播所述第二视频。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
在检测到所述切换指令时,控制所述第一视频的直播画面从第一方向滑出显示区域;
控制所述第二视频的直播画面从所述显示区域的第二方向滑入所述显示区域;
其中,所述第二方向与所述第一方向相反或相同。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
检测作用于显示交互屏的滑动操作;
若检测到所述滑动操作,生成所述切换指令;
所述滑动操作的滑动方向为所述第一方向。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个第一类GOP,其中,所述第一类GOP包括:I帧、B帧和P帧。可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
在直播所述第一视频时,缓存至少一个第二类GOP或者至少一个第三类GOP;
所述第二类GOP相比第一类GOP缺少B帧;所述第三类GOP相比所述第一类GOP缺少B帧和P帧。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
检测直播所述第一视频的时长是否超过设置的阈值;
若直播所述第一视频的时长超过所述阈值,停止所述第二视频的视频数据的缓存。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
确定是否满足缓存条件;
所述在直播所述第一视频时,缓存第二视频的视频数据,包括:
若满足所述缓存条件,在直播所述第一视频时缓存所述第二视频的视频数据。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤至少之一:
若检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足所述缓存条件;
若检测到直播设备的当前带宽不小于接收所述第一视频和所述第二视频的视频数据所需带宽之和,确定满足所述缓存条件;
若检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
根据视频之间的关联关系,确定所述第二视频。
可选地,所述可执行程序被处理器31执行时,还用以实现以下步骤:
根据在视频直播选择页面直播链接的显示位置关系,选择与所述第一视频的第一直播链接相邻的第二直播链接对应的视频为所述第二视频。
在一些实施例中,所述计算机存储介质可以包括:U盘、移动硬盘、只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种视频直播处理方法,其特征在于,所述方法包括:
直播第一视频;
在直播所述第一视频时,缓存第二视频的视频数据;
在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播所述第二视频。
2.根据权利要求1所述的方法,其特征在于,所述在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播所述第二视频,包括:
在检测到所述切换指令时,控制所述第一视频的直播画面从第一方向滑出显示区域;
控制所述第二视频的直播画面从所述显示区域的第二方向滑入所述显示区域;
其中,所述第二方向与所述第一方向相反或相同。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
检测作用于显示交互屏的滑动操作;
若检测到所述滑动操作,生成所述切换指令;
所述滑动操作的滑动方向为所述第一方向。
4.根据权利要求1所述的方法,其特征在于,所述在直播所述第一视频时,缓存第二视频的视频数据,包括:
在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP。
5.根据权利要求4所述的方法,其特征在于,所述在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP,包括:
在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个第一类GOP,其中,所述第一类GOP包括:I帧、B帧和P帧。
6.根据权利要求4所述的方法,其特征在于,所述在直播所述第一视频时,缓存所述第二视频当前时刻直播的至少一个画面组GOP,还包括:
在直播所述第一视频时,缓存至少一个第二类GOP或者至少一个第三类GOP;
所述第二类GOP相比第一类GOP缺少B帧;所述第三类GOP相比所述第一类GOP缺少B帧和P帧。
7.根据权利要求1所述的方法,其特征在于,所述在检测到切换指令之前,还包括:
检测直播所述第一视频的时长是否超过设置的阈值;
若直播所述第一视频的时长超过所述阈值,停止所述第二视频的视频数据的缓存。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定是否满足缓存条件;
所述在直播所述第一视频时,缓存第二视频的视频数据,包括:
若满足所述缓存条件,在直播所述第一视频时缓存所述第二视频的视频数据。
9.根据权利要求8所述的方法,其特征在于,所述确定是否满足缓存条件,包括以下至少之一:
若检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足所述缓存条件;
若检测到直播设备的当前带宽不小于接收所述第一视频和所述第二视频的视频数据所需带宽之和,确定满足所述缓存条件;
若检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频,确定满足所述缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到直播设备的当前带宽大于接收所述第一视频的视频数据所需的带宽,确定满足缓存条件;
若所述直播设备的配置数据指示缓存所述第二视频且检测到所述直播设备当前连接的网络为预定类型网络,确定满足所述缓存条件。
10.根据权利要求1所述的方法,其特征在于,所述缓存第二视频的视频数据之前,还包括:
根据视频之间的关联关系,确定所述第二视频。
11.根据权利要求10所述的方法,其特征在于,所述根据视频之间的关联关系,确定所述第二视频,包括:
根据在视频直播选择页面直播链接的显示位置关系,选择与所述第一视频的第一直播链接相邻的第二直播链接对应的视频为所述第二视频。
12.一种视频直播处理装置,其特征在于,所述装置包括:
视频直播模块,用于直播第一视频;还用于在检测到切换指令时,停止所述第一视频的直播,并利用缓存的所述视频数据直播第二视频;
缓存模块,用于在直播所述第一视频时,缓存所述第二视频的视频数据。
13.一种终端,其特征在于,所述终端包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器用于运行计算机程序时,实现权利要求1-11任一项所述视频直播处理方法。
14.一种存储介质,所述存储介质中有计算机可执行指令,其特征在于,所述计算机可执行指令被处理器执行实现权利要求1-11任一项所述视频直播处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810887571.XA CN110809168A (zh) | 2018-08-06 | 2018-08-06 | 视频直播处理方法、装置、终端及存储介质 |
PCT/CN2019/099343 WO2020029935A1 (zh) | 2018-08-06 | 2019-08-06 | 视频直播处理方法、装置及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810887571.XA CN110809168A (zh) | 2018-08-06 | 2018-08-06 | 视频直播处理方法、装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110809168A true CN110809168A (zh) | 2020-02-18 |
Family
ID=69413400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810887571.XA Withdrawn CN110809168A (zh) | 2018-08-06 | 2018-08-06 | 视频直播处理方法、装置、终端及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110809168A (zh) |
WO (1) | WO2020029935A1 (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111866433A (zh) * | 2020-07-31 | 2020-10-30 | 腾讯科技(深圳)有限公司 | 视频源切换方法、播放方法、装置、设备和存储介质 |
CN111935507A (zh) * | 2020-08-19 | 2020-11-13 | 上海连尚网络科技有限公司 | 视频切换方法和设备 |
CN112822505A (zh) * | 2020-12-31 | 2021-05-18 | 杭州星犀科技有限公司 | 音视频丢帧方法、装置、系统、存储介质和计算机设备 |
CN113382196A (zh) * | 2020-02-25 | 2021-09-10 | 杭州海康消防科技有限公司 | 一种场景切换方法、系统、装置及视频综合处理平台 |
CN113973233A (zh) * | 2021-10-22 | 2022-01-25 | 深圳小湃科技有限公司 | 多平台影片切换播放的优化方法、装置、设备及存储介质 |
CN114173183A (zh) * | 2021-09-26 | 2022-03-11 | 荣耀终端有限公司 | 投屏方法和电子设备 |
CN114615540A (zh) * | 2022-05-11 | 2022-06-10 | 北京搜狐新动力信息技术有限公司 | 视频分辨率的切换方法、装置、存储介质及设备 |
CN114866787A (zh) * | 2022-07-04 | 2022-08-05 | 深圳市必提教育科技有限公司 | 一种直播实现方法及系统 |
CN115499697A (zh) * | 2021-06-17 | 2022-12-20 | 福建省天奕网络科技有限公司 | 一种视频轮播切换方法及终端 |
WO2023029821A1 (zh) * | 2021-09-01 | 2023-03-09 | 北京字跳网络技术有限公司 | 视频缓存播放方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047838A (zh) * | 2006-03-27 | 2007-10-03 | 中兴通讯股份有限公司 | 一种减少直播频道切换响应时间的方法 |
CN101132521A (zh) * | 2007-09-25 | 2008-02-27 | 华为技术有限公司 | 一种实现iptv频道切换的方法和装置 |
CN101909160A (zh) * | 2009-12-17 | 2010-12-08 | 新奥特(北京)视频技术有限公司 | 一种网络视频直播中的播控切换方法及装置 |
CN104378685A (zh) * | 2014-11-17 | 2015-02-25 | 天脉聚源(北京)传媒科技有限公司 | 一种视频切换的方法及装置 |
CN105472443A (zh) * | 2016-01-13 | 2016-04-06 | 杭州当贝网络科技有限公司 | 一种直播源控制方法及系统 |
CN106658162A (zh) * | 2015-11-03 | 2017-05-10 | 中兴通讯股份有限公司 | 一种换台方法、装置及机顶盒 |
CN106658155A (zh) * | 2016-12-29 | 2017-05-10 | 深圳Tcl数字技术有限公司 | 播放器切换播放方法及装置 |
CN107645671A (zh) * | 2016-07-22 | 2018-01-30 | 南京中兴新软件有限责任公司 | 节目切换方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106375836A (zh) * | 2016-09-27 | 2017-02-01 | 广东小天才科技有限公司 | 一种视频的分辨率切换方法及装置 |
CN106792120B (zh) * | 2017-02-07 | 2020-06-16 | 海信视像科技股份有限公司 | 视频画面的显示方法、装置和终端 |
CN107547940B (zh) * | 2017-09-13 | 2019-11-12 | 广州酷狗计算机科技有限公司 | 视频播放处理方法、设备及计算机可读存储介质 |
-
2018
- 2018-08-06 CN CN201810887571.XA patent/CN110809168A/zh not_active Withdrawn
-
2019
- 2019-08-06 WO PCT/CN2019/099343 patent/WO2020029935A1/zh active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047838A (zh) * | 2006-03-27 | 2007-10-03 | 中兴通讯股份有限公司 | 一种减少直播频道切换响应时间的方法 |
CN101132521A (zh) * | 2007-09-25 | 2008-02-27 | 华为技术有限公司 | 一种实现iptv频道切换的方法和装置 |
CN101909160A (zh) * | 2009-12-17 | 2010-12-08 | 新奥特(北京)视频技术有限公司 | 一种网络视频直播中的播控切换方法及装置 |
CN104378685A (zh) * | 2014-11-17 | 2015-02-25 | 天脉聚源(北京)传媒科技有限公司 | 一种视频切换的方法及装置 |
CN106658162A (zh) * | 2015-11-03 | 2017-05-10 | 中兴通讯股份有限公司 | 一种换台方法、装置及机顶盒 |
CN105472443A (zh) * | 2016-01-13 | 2016-04-06 | 杭州当贝网络科技有限公司 | 一种直播源控制方法及系统 |
CN107645671A (zh) * | 2016-07-22 | 2018-01-30 | 南京中兴新软件有限责任公司 | 节目切换方法及装置 |
CN106658155A (zh) * | 2016-12-29 | 2017-05-10 | 深圳Tcl数字技术有限公司 | 播放器切换播放方法及装置 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113382196B (zh) * | 2020-02-25 | 2022-06-03 | 杭州海康消防科技有限公司 | 一种场景切换方法、系统、装置及视频综合处理平台 |
CN113382196A (zh) * | 2020-02-25 | 2021-09-10 | 杭州海康消防科技有限公司 | 一种场景切换方法、系统、装置及视频综合处理平台 |
CN111866433A (zh) * | 2020-07-31 | 2020-10-30 | 腾讯科技(深圳)有限公司 | 视频源切换方法、播放方法、装置、设备和存储介质 |
CN111935507A (zh) * | 2020-08-19 | 2020-11-13 | 上海连尚网络科技有限公司 | 视频切换方法和设备 |
CN112822505B (zh) * | 2020-12-31 | 2023-03-03 | 杭州星犀科技有限公司 | 音视频丢帧方法、装置、系统、存储介质和计算机设备 |
CN112822505A (zh) * | 2020-12-31 | 2021-05-18 | 杭州星犀科技有限公司 | 音视频丢帧方法、装置、系统、存储介质和计算机设备 |
CN115499697B (zh) * | 2021-06-17 | 2023-07-07 | 福建省天奕网络科技有限公司 | 一种视频轮播切换方法及终端 |
CN115499697A (zh) * | 2021-06-17 | 2022-12-20 | 福建省天奕网络科技有限公司 | 一种视频轮播切换方法及终端 |
WO2023029821A1 (zh) * | 2021-09-01 | 2023-03-09 | 北京字跳网络技术有限公司 | 视频缓存播放方法、装置、电子设备及存储介质 |
CN114173183A (zh) * | 2021-09-26 | 2022-03-11 | 荣耀终端有限公司 | 投屏方法和电子设备 |
CN113973233A (zh) * | 2021-10-22 | 2022-01-25 | 深圳小湃科技有限公司 | 多平台影片切换播放的优化方法、装置、设备及存储介质 |
CN114615540A (zh) * | 2022-05-11 | 2022-06-10 | 北京搜狐新动力信息技术有限公司 | 视频分辨率的切换方法、装置、存储介质及设备 |
CN114866787A (zh) * | 2022-07-04 | 2022-08-05 | 深圳市必提教育科技有限公司 | 一种直播实现方法及系统 |
CN114866787B (zh) * | 2022-07-04 | 2022-09-23 | 深圳市必提教育科技有限公司 | 一种直播实现方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2020029935A1 (zh) | 2020-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110809168A (zh) | 视频直播处理方法、装置、终端及存储介质 | |
CN110248204B (zh) | 一种直播缓存的处理方法、装置、设备和存储介质 | |
US10720188B2 (en) | Systems and methods of thumbnail generation | |
CN111052754B (zh) | 将空间元素的帧流传输到客户端装置 | |
KR101500892B1 (ko) | 적응 스트리밍을 위한 가변 비트 비디오 스트림들 | |
US8542705B2 (en) | Key frame detection and synchronization | |
CN109328384B (zh) | 用于在特技播放模式中提供可变速度的系统和方法 | |
US8781305B2 (en) | Media streaming with smooth fast-forward and rewind | |
US20100211690A1 (en) | Block partitioning for a data stream | |
TWI571116B (zh) | 數位視訊串流中的特技播放 | |
EP3560205B1 (en) | Synchronizing processing between streams | |
US9894366B2 (en) | Variant and buffer handling for adaptive bitrate streaming | |
CN111601136B (zh) | 一种视频数据处理方法、装置、计算机设备及存储介质 | |
CN110267100B (zh) | Flv视频的码率切换方法、装置、电子设备及存储介质 | |
CN110636346A (zh) | 一种码率自适应切换方法、装置、电子设备及存储介质 | |
GB2500746A (en) | Obtaining video playlist based on address in received broadcast video data, the playlist in turn containing location information for stored transport stream | |
CN105187895B (zh) | 针对移动平台硬件加速播放视频的数据缓存方法及系统 | |
JP2015515776A (ja) | 適応性のあるトリックプレイストリーミング | |
US10616652B2 (en) | Playback method and electronic device using the same | |
CN110582012B (zh) | 视频切换方法、视频处理方法、装置及存储介质 | |
CN107438202A (zh) | 一种实现码率切换的方法及装置 | |
CN112672163B (zh) | 用于分段流动性的代码转换器调节 | |
CN113949893A (zh) | 直播处理方法、装置、电子设备及可读存储介质 | |
CN111866526A (zh) | 一种直播业务处理方法和装置 | |
WO2015117291A1 (zh) | 网络电视节目切换方法、装置和电视系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200218 |