CN108769727A - 一种直播视频预加载方法及装置 - Google Patents

一种直播视频预加载方法及装置 Download PDF

Info

Publication number
CN108769727A
CN108769727A CN201810620710.2A CN201810620710A CN108769727A CN 108769727 A CN108769727 A CN 108769727A CN 201810620710 A CN201810620710 A CN 201810620710A CN 108769727 A CN108769727 A CN 108769727A
Authority
CN
China
Prior art keywords
direct broadcasting
broadcasting room
live
short
room entrance
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.)
Granted
Application number
CN201810620710.2A
Other languages
English (en)
Other versions
CN108769727B (zh
Inventor
吴金贵
傅峰
傅一峰
彭瑾龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201810620710.2A priority Critical patent/CN108769727B/zh
Publication of CN108769727A publication Critical patent/CN108769727A/zh
Application granted granted Critical
Publication of CN108769727B publication Critical patent/CN108769727B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/44Processing 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/44004Processing 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control 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

一种直播视频预加载方法及装置
技术领域
本申请涉及互联网领域,具体涉及一种直播视频预加载方法及装置。
背景技术
随着互联网技术的发展,人们使用网络观看直播已经逐渐得到普及化。人们在观看直播视频的时候,往往发现,直播平台对于直播间直播视频的加载时间过长,首次打开直播间观看视频的用户通常需要等待数秒才能观看到直播画面。这种现象在用户网速较差时尤为显著。
直播间视频初始化加载速度过慢的原因主要是,当用户端检测到触发进入直播间观看视频的操作后,用户端需要首先向服务端请求直播流地址;然后,在用户端从服务端获取到该直播间的直播流地址后,还需要对直播流进行复杂的处理,用户才能在用户端观看到由直播流转换而成的直播视频。这种获取直播流地址的方式影响了直播视频的呈现速度,进而影响用户的观看体验。
发明内容
为解决上述问题,本申请提供了一种直播视频预加载方法及装置,具体技术方案如下:
第一方面,本申请提供了一种直播视频预加载方法,所述方法包括:
响应于预设第一操作,用户端从服务端获取当前页面上的各个直播间入口分别对应的直播流地址,并将各个直播间入口与直播流地址的对应关系存储于本地;
所述用户端根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频,并将各个直播间入口与短视频的对应关系存储于本地;
当所述用户端检测到任一直播间入口被触发时,在本地获取与所述直播间入口具有对应关系的直播流地址和短视频;
所述用户端播放所述短视频,并在播放所述短视频的过程中,根据所述直播流地址预加载所述直播间入口对应的直播视频;
当所述直播视频预加载完成时,停止播放所述短视频,并开始播放所述直播视频。
可选的,所述用户端根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频,包括:
所述用户端根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取各个直播间入口分别对应的短视频,并利用本次获取到的各个直播间入口分别对应的短视频更新上一次获取到的各个直播间入口分别对应的短视频。
可选的,所述用户端根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取各个直播间入口分别对应的短视频,包括:
所述用户端根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取任一直播间入口对应的直播流的图像帧;并将首次获取到的预设类型帧作为所述直播间入口对应的短视频的首帧,将所述直播间入口对应的直播流的图像帧中除所述首帧之外的其他图像帧作为所述直播间入口对应的短视频的非首帧图像帧;所述预设类型帧为能够进行独立解码的图像帧;
根据所述首帧以及所述非首帧图像帧生成短视频。
可选的,在所述停止播放所述短视频之前,所述方法还包括:
所述用户端与所述服务端之间建立所述直播间入口对应的直播视频的播放连接。
可选的,所述用户端播放所述短视频,包括:
所述用户端根据当前网络状况调整所述短视频的播放速率;并以调整后的播放速率播放所述短视频。
第二方面,本申请还提供了一种直播视频预加载装置,所述装置包括:
第一获取单元,用于响应于预设第一操作,从服务端获取当前页面上的各个直播间入口分别对应的直播流地址;
第二获取单元,用于根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频;
存储单元,用于存储各个直播间入口与直播流地址的对应关系,以及各个直播间入口与短视频的对应关系;
检测单元,用于检测所述当前页面上是否有直播间入口被触发;
第三获取单元,用于当所述检测单元检测到任一直播间入口被触发时,在所述存储单元获取与所述直播间入口具有对应关系的直播流地址和短视频;
播放单元,用于播放所述短视频,并在播放所述短视频的过程中,根据所述直播流地址预加载所述直播间入口对应的直播视频;当所述直播视频预加载完成时,停止播放所述短视频,并开始播放所述直播视频。
可选的,所述第二获取单元,具体用于根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取各个直播间入口分别对应的短视频,并利用本次获取到的各个直播间入口分别对应的短视频更新上一次获取到的各个直播间入口分别对应的短视频。
可选的,所述第二获取单元,包括:
图像帧获取子单元,用于根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取任一直播间入口对应的直播流的图像帧;并将首次获取到的预设类型帧作为所述直播间入口对应的短视频的首帧,将所述直播间入口对应的直播流的图像帧中除所述首帧之外的其他图像帧作为所述直播间入口对应的短视频的非首帧图像帧;所述预设类型帧为能够进行独立解码的图像帧;
短视频生成子单元,用于根据所述首帧以及所述非首帧图像帧生成短视频。
可选的,所述装置还包括:
连接建立单元,用于在所述播放单元停止播放所述短视频之前,与所述服务端之间建立所述直播间入口对应的直播视频的播放连接。
可选的,所述播放单元包括:
速率调整子单元,用于根据当前网络状况调整所述短视频的播放速率;
短视频播放子单元,用于以所述速率调整子单元调整后的播放速率播放所述短视频。
本申请提供的直播视频预加载方法中,首先,用户端响应于预设第一操作从服务端获取当前页面上的各个直播间入口分别对应的直播流地址,并将各个直播间入口与直播流地址的对应关系存储于本地;然后,用户端根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频,并将各个直播间入口与短视频的对应关系存储于本地;当用户端检测到任一直播间入口被触发时,在本地获取与直播间入口具有对应关系的直播流地址和短视频;当用户进入直播间后,用户端播放所述短视频,并在播放所述短视频的过程中,根据所述直播流地址预加载所述直播间入口对应的直播视频;当所述直播视频预加载完成时,停止播放所述短视频,并开始播放所述直播视频。
本申请提供的直播视频预加载方法,由于在用户端检测直播间入口被触发之前,预先获取到直播流视频地址,因而,节省了直播间入口被触发后用户端再向服务端请求直播流地址的时间,进而节省了直播视频的预加载时间。此外,在直播视频加载完成之前,用户端播放本地缓存的直播间入口对应的短视频,缩短了在直播流传输和直播流解码过程中,用户等待直播间视频画面呈现的时间,因而,利用这种直播视频预加载方法,用户可以在触发进入直播间的操作后很快看到视频画面,提升了用户的体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的直播视频预加载方法在实际应用中的场景示例图;
图2为本申请实施例一提供的直播视频预加载方法的流程图;
图3为本申请实施例二提供的直播视频预加载方法的流程图;
图4为本申请实施例提供的直播视频预加载装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
由于现有技术中,当用户端检测到触发进入直播间观看视频的操作后,用户端需要首先向服务端请求直播流地址;然后,在用户端从服务端获取到该直播间的直播流地址后,还需要对直播流进行复杂的处理,用户才能在用户端观看到由直播流转换而成的直播视频,因而导致直播平台对于直播间视频的加载时间过长。首次打开直播间的用户通常需要等待数秒才能观看到直播画面,进而影响了用户观看直播视频的体验度。
为了解决上述问题,可以应用预加载关键帧的方法,改善直播间初始化延时的现象。关键帧可以理解为视频画面中关键动作,当用户进入直播间时,用户端最先对关键帧进行预加载,生成视频画面呈现给用户,再通过特定算法进行追帧和丢帧,加快用户端播放和主播端直播的同步。然而,这种方法虽然在一定程度上减少延时,但是视频存在初始若干视频画面播放不流畅的问题。
有鉴于此,本申请实施例提出了一种直播视频预加载方法。为了便于理解本申请提供的技术方案,下面先对本申请在实际中的应用场景进行介绍。参见图1,为本申请在实际应用中的场景示例图。如图1所示,本申请实施例提供的直播视频预加载方法可以应用于包括用户端101、主播端102和服务端103的场景中。其中,用户端101是指能够为用户播放直播视频的终端设备,例如能够安装和运行直播平台应用程序(英文:Application,缩写:APP)的智能手机、平板电脑等移动终端,能够安装和运行直播平台客户端的个人计算机,及可以通过浏览器页面直接向用户提供直播视频观看功能的终端设备等;主播端102是指能够为主播提供视频直播功能的终端设备,主播端102能够安装和运行用户端101直播平台所对应的直播工具;服务端103是指能够与用户端101和主播端102通信,并为用户端101和主播端102提供数据支持的服务设备,服务端103可以为一个终端提供服务,也可以同时为多个终端提供服务。
基于上述应用场景,以用户端101为安装有直播平台APP的智能手机、主播端102为安装有直播工具的个人电脑为例,对本申请提供的直播视频预加载方法的实际应用过程进行简要说明。主播端102直播视频的同时,用户端101运行的直播平台APP的页面上呈现出主播端102对应的直播间入口。首先,用户端101响应于预设第一操作从服务端103获取当前页面上的各个直播间入口分别对应的直播流地址,并将各个直播间入口与直播流地址的对应关系存储于本地;然后,用户端101根据各个直播间入口分别对应的直播流地址,从服务端获取各个直播间入口分别对应的短视频,并将各个直播间入口与短视频的对应关系存储于本地;当用户端101检测到任一直播间入口被触发时,在本地获取与直播间入口具有对应关系的直播流地址和短视频;用户端101播放短视频,并在播放短视频的过程中,根据直播流地址预加载直播间入口对应的直播视频;当直播视频预加载完成时,停止播放短视频,并开始播放直播视频。
在上述应用过程中,由于在用户端检测直播间入口被触发之前,预先获取到直播流视频地址,因而,节省了直播间入口被触发后用户端再向服务端请求直播流地址的时间,进而节省了直播视频的预加载时间。此外,在播放直播视频之前,用户端播放本地缓存的直播间入口对应的短视频,缩短了在直播流传输和直播流解码过程中,用户等待直播间视频画面呈现的时间,因而,利用本申请提供的直播视频预加载方法,用户可以在触发进入直播间的操作后很快看到视频画面,提升了用户的体验。
基于以上应用场景,本申请还提供了一种直播视频预加载方法实施例一,以下将结合附图2对方法实施例一进行详细说明。
实施例一
本实施例提供了一种直播视频预加载方法,该方法流程图如图2所示,包括:
S201:响应于预设第一操作,用户端从服务端获取当前页面上的各个直播间入口分别对应的直播流地址,并将各个直播间入口与直播流地址的对应关系存储于本地。
在用户进入某直播间观看视频之前,通常需要在直播间列表页面浏览各直播间入口,或利用关键字词搜索出特定主播或特定直播主题的直播间列表并呈现在搜索结果页面上,进而用户可以选择感兴趣的直播间进入观看。通常情况下,用户端的列表页面上会呈现少数几个直播间入口,直播间入口可以包括主播自定义的直播图片作为封面并配合主播自定义的直播主题的形式,用以吸引用户观看。
预设第一操作,作为S201的执行条件,可以是该用户端启动后首次打开直播间列表页面,也可以是用户端打开搜索结果页面,也可以是页面切换或滚动后,呈现的直播间入口发生变化,且变化后页面呈现时间超过预设时间等。此处所说的预设时间可以由用户通过用户端设置,也可以由用户端开发方设置,例如1秒,2秒等,对预设时间不做特殊限制。某变化后页面呈现时间超过预设时间,可以理解为用户受该页面中直播间入口吸引,进入其中某直播间观看直播视频的意愿较强。
不同于用户触发直播间入口后,用户端再向服务端请求直播流地址的现有实现方式,本实施例提供的直播视频预加载方法中,用户端响应于预设第一操作,随即向服务端获取当前页面上的各个直播间入口分别对应的直播流地址,并将各个直播间入口与直播流地址的对应关系存储于本地,例如存储到一个哈希表中,以备后续使用。需要注意的是,当预设第一操作为页面切换或滚动后,呈现的直播间入口发生变化,且变化后页面呈现时间超过预设时间时,本地存储直播间入口与直播流地址的对应关系的哈希表,也要进行相应的更新。
S202:用户端根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频,并将各个直播间入口与短视频的对应关系存储于本地。
S203:当用户端检测到任一直播间入口被触发时,在本地获取与直播间入口具有对应关系的直播流地址和短视频。
一方面,由于本地已经存储有被触发的直播间入口所在页面中,各个直播间入口与直播流地址的对应关系,因而,用户端可以根据该对应关系,获取所触发的直播间入口对应的直播流地址。例如,根据所触发的该直播间入口的索引,直接从本地存储的哈希表中获得直播流地址,这样可以有效节省用户端向服务端请求直播流地址的时间,进而加快了用户端获得直播流的速度。
另一方面,此处所说的直播间入口对应的短视频,是用户端根据S101中本地存储的对应关系中的直播流地址,预先从服务端获取并存储于本地的,因此在检测到任一直播间入口被触发后,可以从本地获取该直播间入口对应的短视频。获取到的短视频用于,在用户端对直播视频预加载完成之前播放,以在视觉感官上缩短用户对直播视频播放的等待时间。作为示例,直播间入口对应的短视频可以是用户端对直播视频预加载完成和播放之前,在先发生的主播端本次直播内容的部分片段;作为另一种示例,直播间入口对应的短视频还可以是主播端预先录制并上传于服务端的,该短视频与直播间入口对应的直播流地址相关联,该示例的一种优选实现方式是,主播端录制的短视频内容与本次直播内容具有相关性。
S204:用户端播放短视频,并在播放短视频的过程中,根据直播流地址预加载直播间入口对应的直播视频。
直播流传输和直播流解码是直播视频预加载的主要时间消耗。当用户的注意力集中于用户端正在播放短视频的同时,用户端在该段时间根据从本地获取的直播流地址对直播视频进行预加载,不但避免了现有技术中用户对直播间视频画面枯燥的等待,并且提高了用户端对时间的利用率。
鉴于短视频在本实施例中的作用,作为一种优选的示例,短视频的时间长度可与直播视频的预加载时间长度相当,或略大于直播视频的预加载时间长度。这是由于,若短视频的时间长度小于直播视频的预加载时间长度,则当短视频播放结束之时,直播视频仍未完成预加载,进而,直播视频的预加载时间与短视频时间长度的差值会导致用户还需等待直播视频的播放。
S205:当直播视频预加载完成时,停止播放短视频,并开始播放直播视频。
当直播视频预加载完成时,即可从用于缓冲的短视频的播放切换至直播间入口对应的直播视频的播放,直播视频是由实时视频流转换而成的。
由于本方法实施例中,用户端在检测到直播间入口被触发之前,预先获取到直播流视频地址,因而,节省了直播间入口被触发后用户端再向服务端请求直播流地址的时间,进而节省了直播视频的预加载时间。此外,在播放直播视频之前,用户端播放本地缓存的直播间入口对应的短视频,缩短了在直播流传输和直播流解码过程中,用户等待直播间视频画面呈现的时间,因而,利用这种直播视频预加载方法,用户可以在触发进入直播间的操作后很快看到视频画面,提升了用户的体验。
另外,为了使上述实施例中,用户端播放的短视频和直播视频预加载完成时播放的直播视频衔接程度良好,播放内容不会有明显的跳跃,为此,本申请实施例二提供了直播视频预加载方法以克服该问题。
实施例二
参见图3,是本申请实施例二提供的直播视频预加载方法的流程示意图。该方法包括:
S301:响应于预设第一操作,用户端从服务端获取当前页面上的各个直播间入口分别对应的直播流地址,并将各个直播间入口与直播流地址的对应关系存储于本地。
S302:用户端根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频,并将各个直播间入口与短视频的对应关系存储于本地。
S303:用户端根据各个直播间入口分别对应的直播流地址,以预设频率从服务端获取各个直播间入口分别对应的短视频。
在本实施例中,作为示例,直播间入口对应的短视频是用户端对直播视频预加载完成和播放之前,在先发生的主播端本次直播内容的部分片段。举例而言,设定预设频率为2秒/次,即每隔2秒钟,用户端从服务端获取当前页面上各个直播间入口对应的短视频。
具体地,S303包括:
S303a:用户端根据各个直播间入口分别对应的直播流地址,以预设频率从服务端获取当前页面上任一直播间入口对应的直播流的图像帧;并将首次获取到的预设类型帧作为该直播间入口对应的短视频的首帧,将该直播间入口对应的直播流的图像帧中除所述首帧之外的其他图像帧作为该直播间入口对应的短视频的非首帧图像帧。
这里所说的预设类型帧是指,能够进行独立解码的图像帧。作为示例,直播流中的图像帧分为I帧、P帧、B帧,其中只有I帧不需要参考其他画面,可以进行独立解码,且I帧可以作为P帧和B帧的参考帧,因此,可以将I帧作为预设类型帧。若用户端在获得第一个I帧之前获得的帧是P帧或B帧这类非预设类型帧,则直接舍去,直到用户端获得了第一个I帧后,才开始将该帧和该帧后的所有帧传入解码器进行处理。假如从建立直播流开始,首先获得的帧不是I帧,那么在第一个I帧出现之前获得的所有帧都是无效帧,因为没有I帧作为参考,P帧及B帧都是无法正确解码的,无效帧解码出来会得到黑屏或花屏等无效信息,既浪费了解码所需要的资源和时间,又影响了用户体验。
S303b:根据首帧以及非首帧图像帧生成短视频。
在本实施例中,建立好直播流传输连接后,将首次获取到的预设类型帧作为短视频的首帧,有利于实现后续各帧的正确解码。根据首帧以及其后的图像帧所生成的短视频,在播放过程中不会呈现黑屏或花屏等问题,避免了解码资源和解码时间的浪费。
S304:用户端利用本次获取到的各个直播间入口分别对应的短视频更新上一次获取到的各个直播间入口分别对应的短视频。
由于用户端根据本地存储的对应关系中的直播流地址,可以预先从服务端获取直播间入口对应的短视频,并存储于本地。利用步骤S303中按照预设频率获取的最新短视频来替换本地缓存的短视频,例如每隔2秒,将最新获取的由直播流转换的短视频保存到本地,并将上一个2秒保存的所有短视频删掉。由此,可以提升后续用户端播放的本地短视频和直播视频预加载完成时播放的直播视频的衔接质量,减缓直播内容的跳跃性。
S305:当用户端检测到任一直播间入口被触发时,在本地获取与直播间入口具有对应关系的直播流地址和短视频。
S306:用户端播放短视频,并在播放短视频的过程中,根据直播流地址预加载直播间入口对应的直播视频。
可选的,为避免资源的占用和浪费,在本实施例中,当用户端检测到某直播间入口被触发后,用户端将不再获取原直播间列表页面上呈现的所有直播间入口对应的直播流,而仅预加载该直播间的直播流。
当用户进入所选的直播间后,用户端直接播放本地缓存的该直播间入口对应的短视频,该短视频即为用户按照预设频率根据本地直播流地址从客户端获取的最新短视频资源。这样,用户进入直播间后,无需等待即可看到视频画面。
由于在用户进入某一特定直播间时,直播流地址已经预加载完成,此时,加载直播间入口对应的直播视频的主要时间消耗就是用于直播流传输和直播流解码的时间。在实施例一中曾提及,直播间入口对应的短视频用于在用户端对直播视频预加载完成之前播放,以在视觉感官上缩短用户对直播视频播放的等待时间,因此,短视频的时间长度需要与直播视频的预加载时间长度相当,或略大于直播视频的预加载时间长度,以避免在直播视频预加载完成之前短视频播放结束。
举例来说,若按照预设频率每次获取的短视频时长为2秒,按照目前的RTMP传输技术和实时拉流解码技术,在网速良好的情况下,直播流传输和直播流解码这两部分所消耗的总时间达到2秒以内,若短视频的时长大于2秒,则在短视频播放结束之前,便可如后续步骤S306,播放实时视频流,即直播视频。
但如果用户当时的网速较差,则会导致直播流传输的时间会较长,直播流传输的时间和直播流解码的时间之和超过短视频总时长2秒,这时需要根据用户当前环境下的网络延时对短视频播放速率进行调整,使得短视频的播放总耗时为短视频原时长2秒与网络延时时间之和,这样就保证了在短视频结束之前切换到实时视频流进行直播视频播放的可能性。
故可选的,在本实施例的步骤S306中,用户端播放短视频,具体包括:
S306a:用户端根据当前网络状况调整短视频的播放速率;
S306b:以调整后的播放速率播放短视频。
S307:当直播视频预加载完成时,停止播放短视频,并开始播放直播视频。
可选的,步骤S307停止播放短视频之前,本实施例提供的直播视频预加载方法还包括:
在所述停止播放所述短视频之前,用户端与服务端之间建立该直播间入口对应的直播视频的播放连接,保证了加载完成的直播视屏能够基于建立的播放连接直接播放。
在本申请提供的直播视频预加载方法实施例二中,区别于实施例一,用户端以预设频率从服务端获取任一直播间入口对应的直播流的图像帧,并将首次获取到的预设类型帧作为直播间入口对应的短视频的首帧,将该直播间入口对应的直播流的图像帧中除首帧之外的其他图像帧作为该直播间入口对应的短视频的非首帧图像帧,再根据首帧以及非首帧图像帧生成短视频;用户端利用本次获取到的各个直播间入口分别对应的短视频更新上一次获取到的各个直播间入口分别对应的短视频。进而,当用户端检测到任一直播间入口被触发时,用户端能够从本地获取并播放的短视频为进入直播间之前,用户端根据直播流地址从客户端获取的最新视频资源,能够与直播视频预加载完成时播放的直播视频衔接程度良好,播放内容不会有明显的跳跃。此外,用户端根据当前网络状况调整短视频的播放速率,以调整后的播放速率播放短视频。故,避免了由于网速不佳、网络延时造成的直播流传输及直播流解码总时间相对短视频总时长过长,致使播放完成预加载的直播视频之前,短视频的播放提前结束影响视频画面观看体验的问题。
基于本申请提供的直播视频预加载方法实施例,相应地,本申请还提供了直播视频预加载装置实施例。下面结合附图4,对本申请提供的直播视频预加载装置的具体实施方式进行介绍。
参见图4,是本申请实施例提供的直播视频预加载装置的结构示意图,该装置包括:
第一获取单元410,用于响应于预设第一操作,从服务端获取当前页面上的各个直播间入口分别对应的直播流地址;
第二获取单元420,用于根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频;
存储单元430,用于存储各个直播间入口与直播流地址的对应关系,以及各个直播间入口与短视频的对应关系;
检测单元440,用于检测当前页面上是否有直播间入口被触发;
第三获取单元450,用于当检测单元440检测到任一直播间入口被触发时,在存储单元430获取与直播间入口具有对应关系的直播流地址和短视频;
播放单元460,用于播放短视频,并在播放短视频的过程中,根据直播流地址预加载直播间入口对应的直播视频;当直播视频预加载完成时,停止播放短视频,并开始播放直播视频。
为避免因网速原因致使直播视频预加载时间过长,预加载时间大于短视频的时间长度,因而,播放单元460可具体包括:
速率调整子单元461,用于根据当前网络状况调整短视频的播放速率;
短视频播放子单元462,用于以速率调整子单元调整后的播放速率播放短视频。
可选的,为提升后续用户端播放的本地短视频和直播视频预加载完成时播放的直播视频的衔接质量,减缓直播内容的跳跃性,所述第二获取单元420,具体用于根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取各个直播间入口分别对应的短视频,并利用本次获取到的各个直播间入口分别对应的短视频更新上一次获取到的各个直播间入口分别对应的短视频。
可选的,第二获取单元420具体包括:
图像帧获取子单元,用于根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取任一直播间入口对应的直播流的图像帧;并将首次获取到的预设类型帧作为所述直播间入口对应的短视频的首帧,将所述直播间入口对应的直播流的图像帧中除所述首帧之外的其他图像帧作为所述直播间入口对应的短视频的非首帧图像帧;所述预设类型帧为能够进行独立解码的图像帧;
短视频生成子单元,用于根据首帧以及非首帧图像帧生成短视频;
可选的,该装置还包括:
连接建立单元470,用于在播放单元460停止播放短视频之前,与所述服务端之间建立直播间入口对应的直播视频的播放连接。
以上为本申请提供的一种直播视频预加载装置实施例。在该装置实施例中,由于在检测单元检测到当前页面上有直播间入口被触发之前,存储单元响应于预设第一操作,从服务端先获取到当前页面上的各个直播间入口分别对应的直播流地址,并存储各个直播间入口与直播流地址的对应关系,因而,节省了直播间入口被触发后再向服务端请求直播流地址的时间,进而节省了直播视频的预加载时间。此外,在播放单元播放直播视频之前,播放缓存于存储单元的直播间入口对应的短视频,缩短了在直播流传输和直播流解码过程中,用户等待直播间视频画面呈现的时间,因而,利用这种直播视频预加载方法,用户可以在触发进入直播间的操作后很快看到视频画面,提升了用户的体验。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请实施例所提供的一种直播视频预加载方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种直播视频预加载方法,其特征在于,所述方法包括:
响应于预设第一操作,用户端从服务端获取当前页面上的各个直播间入口分别对应的直播流地址,并将各个直播间入口与直播流地址的对应关系存储于本地;
所述用户端根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频,并将各个直播间入口与短视频的对应关系存储于本地;
当所述用户端检测到任一直播间入口被触发时,在本地获取与所述直播间入口具有对应关系的直播流地址和短视频;
所述用户端播放所述短视频,并在播放所述短视频的过程中,根据所述直播流地址预加载所述直播间入口对应的直播视频;
当所述直播视频预加载完成时,停止播放所述短视频,并开始播放所述直播视频。
2.根据权利要求1所述的方法,其特征在于,所述用户端根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频,包括:
所述用户端根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取各个直播间入口分别对应的短视频,并利用本次获取到的各个直播间入口分别对应的短视频更新上一次获取到的各个直播间入口分别对应的短视频。
3.根据权利要求2所述的方法,其特征在于,所述用户端根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取各个直播间入口分别对应的短视频,包括:
所述用户端根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取任一直播间入口对应的直播流的图像帧;并将首次获取到的预设类型帧作为所述直播间入口对应的短视频的首帧,将所述直播间入口对应的直播流的图像帧中除所述首帧之外的其他图像帧作为所述直播间入口对应的短视频的非首帧图像帧;所述预设类型帧为能够进行独立解码的图像帧;
根据所述首帧以及所述非首帧图像帧生成短视频。
4.根据权利要求1所述的方法,其特征在于,在所述停止播放所述短视频之前,所述方法还包括:
所述用户端与所述服务端之间建立所述直播间入口对应的直播视频的播放连接。
5.根据权利要求1所述的方法,其特征在于,所述用户端播放所述短视频,包括:
所述用户端根据当前网络状况调整所述短视频的播放速率;并以调整后的播放速率播放所述短视频。
6.一种直播视频预加载装置,其特征在于,所述装置包括:
第一获取单元,用于响应于预设第一操作,从服务端获取当前页面上的各个直播间入口分别对应的直播流地址;
第二获取单元,用于根据各个直播间入口分别对应的直播流地址,从所述服务端获取各个直播间入口分别对应的短视频;
存储单元,用于存储各个直播间入口与直播流地址的对应关系,以及各个直播间入口与短视频的对应关系;
检测单元,用于检测所述当前页面上是否有直播间入口被触发;
第三获取单元,用于当所述检测单元检测到任一直播间入口被触发时,在所述存储单元获取与所述直播间入口具有对应关系的直播流地址和短视频;
播放单元,用于播放所述短视频,并在播放所述短视频的过程中,根据所述直播流地址预加载所述直播间入口对应的直播视频;当所述直播视频预加载完成时,停止播放所述短视频,并开始播放所述直播视频。
7.根据权利要求6所述的装置,其特征在于,所述第二获取单元,具体用于根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取各个直播间入口分别对应的短视频,并利用本次获取到的各个直播间入口分别对应的短视频更新上一次获取到的各个直播间入口分别对应的短视频。
8.根据权利要求7所述的装置,其特征在于,所述第二获取单元,包括:
图像帧获取子单元,用于根据各个直播间入口分别对应的直播流地址,以预设频率从所述服务端获取任一直播间入口对应的直播流的图像帧;并将首次获取到的预设类型帧作为所述直播间入口对应的短视频的首帧,将所述直播间入口对应的直播流的图像帧中除所述首帧之外的其他图像帧作为所述直播间入口对应的短视频的非首帧图像帧;所述预设类型帧为能够进行独立解码的图像帧;
短视频生成子单元,用于根据所述首帧以及所述非首帧图像帧生成短视频。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
连接建立单元,用于在所述播放单元停止播放所述短视频之前,与所述服务端之间建立所述直播间入口对应的直播视频的播放连接。
10.根据权利要求6所述的装置,其特征在于,所述播放单元包括:
速率调整子单元,用于根据当前网络状况调整所述短视频的播放速率;
短视频播放子单元,用于以所述速率调整子单元调整后的播放速率播放所述短视频。
CN201810620710.2A 2018-06-15 2018-06-15 一种直播视频预加载方法及装置 Active CN108769727B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810620710.2A CN108769727B (zh) 2018-06-15 2018-06-15 一种直播视频预加载方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810620710.2A CN108769727B (zh) 2018-06-15 2018-06-15 一种直播视频预加载方法及装置

Publications (2)

Publication Number Publication Date
CN108769727A true CN108769727A (zh) 2018-11-06
CN108769727B CN108769727B (zh) 2021-12-21

Family

ID=63978196

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810620710.2A Active CN108769727B (zh) 2018-06-15 2018-06-15 一种直播视频预加载方法及装置

Country Status (1)

Country Link
CN (1) CN108769727B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110213600A (zh) * 2019-04-29 2019-09-06 网易(杭州)网络有限公司 视频直播方法、装置及设备
CN110267053A (zh) * 2019-06-27 2019-09-20 广州酷狗计算机科技有限公司 直播方法、装置及系统
CN110536144A (zh) * 2019-07-31 2019-12-03 腾讯科技(深圳)有限公司 一种直播处理方法、装置及存储介质
CN112243155A (zh) * 2019-07-16 2021-01-19 腾讯科技(深圳)有限公司 一种直播的处理方法及装置
CN112702624A (zh) * 2020-12-22 2021-04-23 山东鲁能软件技术有限公司 一种短视频播放效率的优化方法、系统、介质及设备
CN112770124A (zh) * 2020-12-22 2021-05-07 Oppo广东移动通信有限公司 进入直播间的方法及装置、存储介质和电子设备
CN113038237A (zh) * 2021-03-17 2021-06-25 百度(中国)有限公司 直播信息处理方法、装置、设备及存储介质
CN113596568A (zh) * 2021-07-01 2021-11-02 广州虎牙科技有限公司 视频播放方法、装置、智能终端及计算机可读存储介质
CN113660505A (zh) * 2021-08-31 2021-11-16 天津泰讯视动科技有限责任公司 基于超高清导播直播一体机的导播方法、控制器及系统
CN114339296A (zh) * 2022-03-02 2022-04-12 阿里巴巴(中国)有限公司 传输媒体流的方法、装置以及媒体系统
CN114449299A (zh) * 2021-12-30 2022-05-06 广州盖盟达工业品有限公司 一种商品直播处理方法、装置、终端设备及存储介质
CN114791964A (zh) * 2022-03-24 2022-07-26 北京城市网邻信息技术有限公司 房屋装修视频的处理方法、装置、电子设备及存储介质
CN114827646A (zh) * 2022-03-23 2022-07-29 百果园技术(新加坡)有限公司 视频流中预加载直播间方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130219442A1 (en) * 2009-03-23 2013-08-22 Conviva Inc. Switching content
CN104539977A (zh) * 2014-12-17 2015-04-22 广州酷狗计算机科技有限公司 直播预览方法及装置
CN104768033A (zh) * 2015-04-15 2015-07-08 广州市汉融软件有限公司 一种基于预加载的网络电视频道快速切换方法及系统
CN104902344A (zh) * 2015-06-17 2015-09-09 天津通信广播集团有限公司 一种获取电视节目短视频并通过网络共享的系统及方法
CN106131656A (zh) * 2016-06-28 2016-11-16 武汉斗鱼网络科技有限公司 一种用于视频直播间准实时截图的系统及方法
CN106385594A (zh) * 2016-09-18 2017-02-08 深圳市青柠互动科技开发有限公司 一种优化视频直播服务的方法
CN107888968A (zh) * 2017-11-21 2018-04-06 广州酷狗计算机科技有限公司 直播视频的播放方法、装置及计算机存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130219442A1 (en) * 2009-03-23 2013-08-22 Conviva Inc. Switching content
CN104539977A (zh) * 2014-12-17 2015-04-22 广州酷狗计算机科技有限公司 直播预览方法及装置
CN104768033A (zh) * 2015-04-15 2015-07-08 广州市汉融软件有限公司 一种基于预加载的网络电视频道快速切换方法及系统
CN104902344A (zh) * 2015-06-17 2015-09-09 天津通信广播集团有限公司 一种获取电视节目短视频并通过网络共享的系统及方法
CN106131656A (zh) * 2016-06-28 2016-11-16 武汉斗鱼网络科技有限公司 一种用于视频直播间准实时截图的系统及方法
CN106385594A (zh) * 2016-09-18 2017-02-08 深圳市青柠互动科技开发有限公司 一种优化视频直播服务的方法
CN107888968A (zh) * 2017-11-21 2018-04-06 广州酷狗计算机科技有限公司 直播视频的播放方法、装置及计算机存储介质

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110213600A (zh) * 2019-04-29 2019-09-06 网易(杭州)网络有限公司 视频直播方法、装置及设备
CN110267053A (zh) * 2019-06-27 2019-09-20 广州酷狗计算机科技有限公司 直播方法、装置及系统
CN112243155B (zh) * 2019-07-16 2022-09-30 腾讯科技(深圳)有限公司 一种直播的处理方法及装置
CN112243155A (zh) * 2019-07-16 2021-01-19 腾讯科技(深圳)有限公司 一种直播的处理方法及装置
CN110536144A (zh) * 2019-07-31 2019-12-03 腾讯科技(深圳)有限公司 一种直播处理方法、装置及存储介质
CN110536144B (zh) * 2019-07-31 2021-09-07 腾讯科技(深圳)有限公司 一种直播处理方法、装置及存储介质
CN112702624A (zh) * 2020-12-22 2021-04-23 山东鲁能软件技术有限公司 一种短视频播放效率的优化方法、系统、介质及设备
CN112770124A (zh) * 2020-12-22 2021-05-07 Oppo广东移动通信有限公司 进入直播间的方法及装置、存储介质和电子设备
CN112770124B (zh) * 2020-12-22 2023-10-31 Oppo广东移动通信有限公司 进入直播间的方法及装置、存储介质和电子设备
JP2022145503A (ja) * 2021-03-17 2022-10-04 バイドゥ (チャイナ) カンパニー リミテッド ライブ配信情報処理方法、装置、電子デバイス、記憶媒体及びプログラム
CN113038237A (zh) * 2021-03-17 2021-06-25 百度(中国)有限公司 直播信息处理方法、装置、设备及存储介质
US12028558B2 (en) 2021-03-17 2024-07-02 Baidu (China) Co., Ltd. Method for processing live broadcast information, electronic device and storage medium
CN113596568A (zh) * 2021-07-01 2021-11-02 广州虎牙科技有限公司 视频播放方法、装置、智能终端及计算机可读存储介质
CN113596568B (zh) * 2021-07-01 2023-10-17 广州虎牙科技有限公司 视频播放方法、装置、智能终端及计算机可读存储介质
CN113660505A (zh) * 2021-08-31 2021-11-16 天津泰讯视动科技有限责任公司 基于超高清导播直播一体机的导播方法、控制器及系统
CN113660505B (zh) * 2021-08-31 2024-03-22 天津泰讯视动科技有限责任公司 基于超高清导播直播一体机的导播方法、控制器及系统
CN114449299A (zh) * 2021-12-30 2022-05-06 广州盖盟达工业品有限公司 一种商品直播处理方法、装置、终端设备及存储介质
CN114339296A (zh) * 2022-03-02 2022-04-12 阿里巴巴(中国)有限公司 传输媒体流的方法、装置以及媒体系统
CN114827646A (zh) * 2022-03-23 2022-07-29 百果园技术(新加坡)有限公司 视频流中预加载直播间方法、装置、设备及存储介质
WO2023179401A1 (zh) * 2022-03-23 2023-09-28 百果园技术(新加坡)有限公司 视频流中预加载直播间方法、装置、设备及存储介质
CN114827646B (zh) * 2022-03-23 2023-12-12 百果园技术(新加坡)有限公司 视频流中预加载直播间方法、装置、设备及存储介质
CN114791964A (zh) * 2022-03-24 2022-07-26 北京城市网邻信息技术有限公司 房屋装修视频的处理方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN108769727B (zh) 2021-12-21

Similar Documents

Publication Publication Date Title
CN108769727A (zh) 一种直播视频预加载方法及装置
US20220182720A1 (en) Reception apparatus, reception method, and program
JP7271856B2 (ja) ネットワーク遅延がある環境での遠隔クラウドベースのビデオ制作システム
CN105187895B (zh) 针对移动平台硬件加速播放视频的数据缓存方法及系统
JP2013009358A (ja) 放送通信連携受信装置
CN102802075A (zh) 一种在线播放缓冲系统和方法
JP2004529588A (ja) 同期配信のウェブコンテンツを有する放送番組の時間シフト方法および装置
CN104202652B (zh) 一种电视机机顶盒的播放控制方法及机顶盒
CN111372138A (zh) 一种播放器端的直播低延迟技术方案
RU2502208C2 (ru) Способ и устройство для записи и воспроизведения программ, а также телевизионная приставка
CN101616314A (zh) 一种画面信息显示方法、装置以及显示设备
CN106162332A (zh) 一种电视播放控制方法及装置
CN108810580A (zh) 媒体内容推送方法及装置
CN105227987B (zh) 同步播放方法和系统
EP3080997B1 (en) Method and system for synchronizing media streams
JP4384833B2 (ja) 映像録画及び再生
JP5997500B2 (ja) 放送通信連携受信装置
WO2013123723A1 (zh) 数字电视节目相关信息搜索方法及数字电视接收终端
JP2007074158A (ja) 再生システム及び同システムを利用した再生方法
CN103428581B (zh) 电视节目播放方法及播放装置
CN104639970A (zh) 视频串流处理装置及其录制特定视频片段的方法
CN112019858A (zh) 一种视频播放方法、装置、计算机设备和存储介质
CN114339326B (zh) 基于视频播放的声画同步方法、装置和系统
JP2009105885A (ja) 配信動画中に外部情報を再生するシステムおよび方法
CN114765695A (zh) 一种直播数据处理方法、装置、设备及介质

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