CN112752109B - 视频播放控制方法和系统 - Google Patents
视频播放控制方法和系统 Download PDFInfo
- Publication number
- CN112752109B CN112752109B CN201911046202.9A CN201911046202A CN112752109B CN 112752109 B CN112752109 B CN 112752109B CN 201911046202 A CN201911046202 A CN 201911046202A CN 112752109 B CN112752109 B CN 112752109B
- Authority
- CN
- China
- Prior art keywords
- live broadcast
- video
- data
- live
- video playing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 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/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
-
- 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
Abstract
本申请实施例提供了一种视频播放控制方法,所述方法包括:根据用户指令向服务器发送的直播请求;接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数;播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度。本申请实施例还提供了视频播放控制系统、计算机设备和计算机可读存储介质。本申请实施例提供的技术方案,可以在发生直播延时的情况下,减少主播终端的视频推送和观众终端的视频播放之间的时间差,使得主播与观众之间互动可以得到及时的反馈,以提升视频直播的直播效果。
Description
技术领域
本申请实施例涉及计算机领域,尤其涉及一种视频播放控制方法、系统、设备及计算机可读存储介质。
背景技术
随着互联网业务的发展,视频直播越来越受到观众的喜爱;主播可以通过互联网在网站上建立视频直播间,向该视频直播间中的观众进行直播,观众可以看到视频直播间中的主播视频,并听到其声音,还可以通过发弹幕或刷礼物的方式与主播进行互动等。但是,主播终端输出视频数据的时间与观众终端播放该视频数据的时间可能并不同步,即存在一定的播放延时,例如,在网络稳定差的情况下,观众终端容易发生直播画面卡顿从而进一步拉长播放延时的时间长度,使得主播与观众之间互动得不到及时的反馈,降低了视频直播的直播效果。
因此,如何提升主播终端输出视频数据的时间与观众终端播放该视频数据的时间的同步性,即减少主播端的视频推送和观众终端的视频播放之间的时间差,成为了当前要解决的技术问题之一。
发明内容
本申请实施例的目的是提供一种视频播放控制方法、系统、计算机设备及计算机可读存储介质,用于解决主播终端输出视频数据的时间与观众终端播放该视频数据的时间的同步性差的技术问题。
本申请实施例的一个方面提供了一种视频播放控制方法,根据用户指令向服务器发送的直播请求;接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数;及播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度。
可选的,所述直播请求包括目标直播频道的频道标识,所述频道标识用于指示所述服务器返回与所述目标直播频道适配的配置参数。
可选的,所述配置参数是所述服务器根据直播场景的类型所决定的。
可选的,播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度,包括:将所述直播数据缓存到数据缓冲区;播放所述数据缓冲区中的直播数据,并以预定频率检测所述数据缓冲区中的未播放的直播数据的数据大小;根据所述配置参数和所述将所述未播放的直播数据的数据大小,控制视频播放速度。
可选的,根据所述配置参数和所述将所述未播放的直播数据的数据大小,控制视频播放速度,包括:根据所述未播放的直播数据的数据大小确定直播延迟时长;计算所述直播延迟时长与所述配置参数之间的目标比值;及根据所述目标比值将所述视频播放速度从第一视频播放速度调整为第二视频播放速度。
可选的,当所述目标比值大于第一数值时,所述第二视频播放速度为默认视频播放速度的第一倍数;当所述目标比值大于第二数值且小于所述第一数值时,所述第二视频播放速度为默认视频播放速度的第二倍数;其中,所述第一数值>第二数值>1,第一倍数>第二倍数>1。
可选的,第二视频播放速度为默认视频播放速度的1~1.1之间。
本申请实施例的一个方面又提供了一种视频播放控制系统,包括:请求模块,用于根据用户指令向服务器发送的直播请求;接收模块,用于接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数;及播放模块,用于播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度。
本申请实施例的一个方面又提供了一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时用于实现上述的视频播放控制方法的步骤。
本申请实施例的一个方面又提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上述的视频播放控制方法的步骤。
本申请实施例提供的视频播放控制方法、系统、设备及计算机可读存储介质,根据配置参数及所述直播数据中的未播放的直播数据控制视频播放速度,可以在发生直播延时的情况下,减少主播终端的视频推送和观众终端的视频播放之间的时间差,使得主播与观众之间互动可以得到及时的反馈,以提升视频直播的直播效果。
附图说明
图1示意性示出了根据本申请实施例的环境应用示意图;
图2示意性示出了根据本申请实施例一的视频播放控制方法的流程图;
图3示意性示出了根据本申请实施例二的视频播放控制方法的流程图;
图4示意性示出了步骤S404的具体流程图;
图5示意性示出了步骤S404的具体流程图;
图6示意性示出了根据本申请实施例二的视频播放控制方法的流程图;
图7示意性示出了根据本申请实施例三的视频播放控制系统的框图;以及
图8示意性示出了根据本申请实施例四的适于实现视频播放控制方法的计算机设备的硬件架构示意图。
具体实施方式
为了使本申请实施例的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请实施例进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请实施例,并不用于限定本申请实施例。基于本申请实施例中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请实施例保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
图1示意性示出了根据本申请实施例的环境应用示意图。在示例性的实施例中,提供商网络20可以通过一个或多个网络30连接多个观众终端40,提供商网络20还可以通过一个或多个网络50连接多个主播终端60。
在示例性的实施例中,源服务器70可以实现为提供商网络20的一部分。在其他实施例中,源服务器70可以由提供商网络20的服务提供商之外的单独服务提供商管理。
源服务器70可以包括内容流服务,例如因特网协议视频流服务。内容流服务可以被配置为经由各种传输技术来分发内容。源服务器70可以被配置为提供内容,诸如主播终端60提供的视频,音频,文本数据,其组合和/或类似物。内容可以包括内容流(例如,视频流,音频流,信息流),内容文件(例如,视频文件,音频文件,文本文件)和/或其他数据。
提供商网络20可以位于数据中心,例如单个房屋,或者分布在不同的地理位置(例如,在几个房屋)。提供商网络20可以通过一个或多个网络30提供服务以及通过一个或多个网络50提供服务。网络30或网络50包括各种网络设备,例如路由器,交换机,多路复用器,集线器,调制解调器,网桥,中继器,防火墙,代理设备和/或类似。网络30或网络50可以包括物理链路,例如同轴电缆链路,双绞线电缆链路,光纤链路,它们的组合和/或类似物。网络30或网络40可以包括无线链路,例如蜂窝链路,卫星链路,Wi-Fi链路和/或类似物。
提供商网络20还可以包括多个CDN服务器80。每个CDN服务器80可以被配置为提供各种服务的处理,例如,存储源服务器70提供的内容,并将这些内容分发给观众终端40。
多个观众终端40或多个主播终端60可以被配置为访问提供商网络20的内容和服务。多个观众终端40或多个主播终端60可以包括任何类型的计算设备,诸如移动设备,平板设备,膝上型计算机,计算站,智能设备(例如,智能服装,智能手表,智能扬声器,智能眼镜),虚拟现实耳机,游戏设备,机顶盒,数字流设备,机器人,车载终端,智能电视,电视盒等。
多个观众终端40可以与一个或多个用户相关联。单个用户可以使用多个观众终端40中的一个或多个来访问提供商网络20。多个观众终端40可以行进到各种位置并使用不同的网络来访问提供商网络20。
示例性的,观众终端40可以向用户输出(例如,显示或呈现)内容。内容可以包括视频、音频、评论、文本数据、广告和/或类似物。
多个主播终端60可以与一个或多个用户相关联。单个用户可以使用多个主播终端60中的一个或多个来访问提供商网络20。多个主播终端60可以行进到各种位置并使用不同的网络来访问提供商网络20。
示例性的,主播终端60可以提供主播接口,主播可以通过该主播接口输入音视频等信息,不难理解,这些音视频信息可以上传至提供商网络20并经由提供商网络20分发给观众终端40。另外,主播终端60还可以向主播输出(例如,显示或呈现)内容。内容可以包括视频、音频、评论、文本数据、虚拟礼物和/或类似物。
上述主播终端60、观众终端40、源服务器70或CDN服务器80等可以分别由一个或多个计算机设备2实现。不难理解,计算机设备2可以用于执行本文描述的计算机的任何方面。
实施例一
图2示意性示出了根据本申请实施例一的视频播放控制方法的流程图。本实施例可以被执行在计算机设备(作为观众终端)2中。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。
如图2所示,该视频播放控制方法可以包括步骤S200~S204,其中:
步骤S200,根据用户指令向服务器发送直播请求。
在示例性的实施例中,计算机设备2可以配置有用于接收所述用户指令的输入接口,如触控屏幕、实体键盘或外围控制器等。其中,所述用户指令是指用户通过输入终端发出的实时播放/直播请求信息。例如,当检测到用户通过所述输入接口选择进入直播间A,计算机设备2向服务器(如,提供商网络2中的源服务器70)发送收看直播间A的直播请求。
步骤S202,接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数。
所述服务器(如,提供商网络2中的源服务器70)接收所述计算机设备2提供的所述直播请求,基于所述直播请求推送相应的直播数据,并将配置参数下发给计算机设备2。在一些实施例中,配置参数可以先于直播数据下发给计算机设备2。所述配置参数可以为用于评估直播状态的阈值或参考值,所谓直播状态可以指直播延时状态,即可以将配置参数作为参考值来评估直播延时的延迟程度。例如,所述配置参数是以时间为单位的一个阈值。不难理解,直播延时是有多种因素构成的,不同直播间所面临的因素各不相同。因此,在一些实施例中,不同的直播间可以有不同的配置参数,因此,服务器可能根据观众选择的直播间来反馈相应的配置参数。所述配置参数是所述服务器根据直播场景的类型所决定的,例如体育赛事直播、倒计时直播等实时性要求高的直播场景,该配置参数可以设置一个较小的数值;对于实时性要求不高的直播场景,该配置参数可以设置一个较大的数值。
可以有多种途径得到配置参数,例如以下途径:服务器可以通过测试一段时间内各个直播间的直播情况,来为各个直播间设置不同的配置参数;也可以在线收集各个直播间的一些网络参数,根据这个网络参数来调整各个直播间的配置参数。
为了更加清晰,以计算机设备2将用于收看直播间A的直播请求发送至源服务器70为例进行说明:计算机设备2将该送收看直播间A的直播请求发送给源服务器70,源服务器70接收到该收看直播间A的直播请求之后,会通过与计算机设备2最近的CDN服务器将当前时间节点及后续接收到的直播数据持续的推送给所述计算机设备2。
步骤S204,播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度。
所述未播放的直播数据为计算机设备2已经接收但还未播放的直播数据;在播放所述直播数据期间,会根据所述配置参数及未播放的直播数据控制视频播放速度。
不难理解,本申请实施例在于根据所述配置参数与未播放的直播数据进行对比,根据对比结果对直播视频的播放速度进行调控,所述播放速度的调控可以在视频直播不跳帧(跳帧可以加快视频播放,但是会出现视频画面不连贯的问题)的状态下,加快直播视频播放速度,避免了所述未播放的直播数据越积越多,减少了主播终端的视频推送和用户终端的视频接收之间的时间差,使得主播与观众之间互动可以得到及时的反馈,提升视频直播时主播与观众的有效沟通次数与有效互动次数,以及提高直播气氛。
实施例二
图3示意性示出了根据本申请实施例二的视频播放控制方法的流程图。
如图3所示,该视频播放控制方法可以包括步骤S300~S304,其中:
步骤S300,根据用户指令向服务器发送的直播请求。
其中,所述直播请求包括目标直播频道的频道标识,所述频道标识用于指示所述服务器返回与所述目标直播频道适配的配置参数。
在示例性的实施例中,计算机设备2根据用户指令向服务器发送直播请求携带有目标直播频道(诸如,目标直播间,视频聊天对象)的频道标识,所述服务器可以通过所述频道标识确定所述直播请求对应的目标直播频道,并根据所述目标直播频道确定配置在服务器中的配置参数,并按照所述直播请求路线将所述配置参数发送到计算机设备2。
步骤S302,接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数。
所述配置参数是所述服务器根据直播场景的类型所决定的,例如体育赛事直播、倒计时直播等实时性要求高的直播场景,该配置参数可以设置一个较小的数值;对于实时性要求不高的直播场景,该配置参数可以设置一个较大的数值。
对于实时性要求不高的直播场景,所述配置参数还可以是所述服务器根据多个网络参数决定的,所述多个网络参数包括所述目标直播频道对应的网络传输质量和/或所述服务器的运行状况。在示例性的实施例中,所述配置参数可以根据对应的直播间的多个网络因素进行配置,例如直播间的网络自身问题,如:带宽和传输距离、网络抖动和拥塞控制、服务端的GOP(Group of picture关键帧的周期)缓存、各个环节的缓冲区、HLS(HTTP LiveStreaming流媒体网络传输)协议的切片大小和数据处理性能等网络因素;所述配置参数还可以根据传输直播视频的多个因素进行配置,如:视频美颜、视频剪裁拉伸、视频编码解码和视频渲染等因素。
步骤S304,将所述直播数据缓存到数据缓冲区。
所述数据缓冲区用于暂存服务器推送的直播数据,以供读取,其中,所述数据缓冲区还起到抵抗网络抖动、抵抗解码抖动、避免被动丢帧导致花屏的作用,使得实现直播视频达到音画同步的效果以及抵抗渲染抖动的效果。
步骤S306,播放所述数据缓冲区中的直播数据,并以预定频率检测所述数据缓冲区中的未播放的直播数据的数据大小。
将所述直播数据进行解协议、解封装、解码(视、音频解码)和音画同步等操作后输入到至视频播放终端设备进行视频播放,并以预定频率对所述数据缓冲区中的未播放的直播数据进行检测,以得到所述缓冲区中的未播放的直播数据的数据大小。其中,所述预定频率可以根据不同的应用场景进行动态设定,例如,在网络直播、视频聊天等场景中,所述预定频率可以是1次/秒,若是体育赛事直播等高实时直播场景中,所述预定频率可以是0.1次/秒。
步骤S308,根据所述配置参数和所述将所述未播放的直播数据的数据大小,控制视频播放速度。
根据所述未播放的直播数据的数据大小与所述视频播放终端设备预先约定的协议,控制所述视频播放终端设备播放所述直播视频。
如图4所示,所述步骤S308可以包括步骤S400~S404,其中:步骤S400,根据所述未播放的直播数据的数据大小确定直播延迟时长。步骤S402,计算所述直播延迟时长与所述配置参数之间的目标比值。步骤S404,根据所述目标比值将所述视频播放速度从第一视频播放速度调整为第二视频播放速度。
示例性的,将所述未播放的直播数据进行解协议、解封装、解码(视、音频解码)等步骤,以得到所述未播放的直播数据对应的直播视频的直播延迟时长。通过计算所述直播延迟时长与所述配置参数之间的比值,以得到目标比值。所述目标比值为所述直播延迟时长与所述配置参数之间的比值。根据所述目标比值控制所述视频播放终端设备,对当前视频播放数据进行调控。
如图5所示,根据所述目标比值将所述视频播放速度从第一视频播放速度调整为第二视频播放速度,其中:当所述目标比值大于第一数值时,所述第二视频播放速度为默认视频播放速度的第一倍数。当所述目标比值大于第二数值且小于所述第一数值时,所述第二视频播放速度为默认视频播放速度的第二倍数。其中,所述第一数值>第二数值>1,第一倍数>第二倍数>1。
示例性的,所述第一数值可以配置2,即所述直播延迟时长为所述配置参数的2倍,启动1.1倍速播放,第一倍数可以配置1.1倍;所述第二数值可以配置1.5,即所述直播延迟时长为所述配置参数的1.5倍,启动1.05倍速播放,第二倍数可以配置1.05倍。
在示例性的实施例中,第二视频播放速度为默认视频播放速度的1~1.1之间,以确保在观众无感知的前提下,实施视频播放数据调整策略。需要注意的是,所述默认视频播放速度可以为主播终端的视频录制速度等。
本实施例适应于在多种场景下实施无感知追帧技术,如适应于网络直播、视频聊天等场景中,也适应于体育赛事直播等高实时直播场景中。所谓无感知追帧技术,即本实施例所述的视频播放控制方法,在播放延时的情况下,通过不断地调整后续视频数据的播放速度(即,后续帧的帧率),来逐步缩小主播终端的视频推送和观众终端的视频播放之间的时间差,并最终实现主播终端和观众终端的画面基本同步。
以体育赛事直播为例,其具有高实时性的要求,同时需要确保画面的连续性,当出现播放卡顿的情形出现时,如果按照默认速度继续播放,会使主播终端(现场摄影设备)和观众终端的画面始终出现一个因卡顿导致的较大的时间差,如果丢掉一些帧来实现画面同步,无疑会丢失一些画面。而采用本实施例所述的方法,则二者可以兼得,当出现播放卡顿的情形出现时,则实施追帧技术,即根据直播数据中的未播放的直播数据和配置参数,不断地来调整未播放的直播数据的播放速度(以帧为单位,则是不断地调整帧率),从而在确认播放每一帧的同时,逐步缩小主播终端和观众终端之间的时间差,并最终实现二者的画面基本同步。
另外,本发明人发现,对默认播放速度进行±10%以内的微调,基本不会被人眼所感知,因此,为进一步提升播放速度稳定性,可以不断地调整帧率,并将上调幅度维持在10%以内。当然,该10%并不用于限制本实施例。例如,如果对实时性具有更高要求,则可以上调帧率的上调幅度,进一步提高追帧效率,以尽快实现主播终端和观众终端之间的画面同步。
如图6所示,观众终端开启直播APP并进入体育直播频道,接收源服务器提供的关联于该体育直播频道的配置参数,以及进行视频拉流以从CDN服务器中获取该体育直播频道的视频数据,并将视频拉流得到的直播数据写入到数据缓冲区中;以预设频率获取数据缓冲区中未播放的直播数据对应的直播延迟时长;计算直播延迟时长与配置参数之间的目标比值,并根据所述目标比值确实是否对未播放的直播数据进行追帧操作。
实施例三
图7示意性示出了根据本申请实施例三的视频播放控制系统的框图,该视频播放控制系统可以被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本申请实施例。本申请实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,以下描述将具体介绍本实施例各程序模块的功能。
如图7所示,该视频播放控制系统600可以包括请求模块610、接收模块620和播放模块630,其中:
请求模块610,用于根据用户指令向服务器发送的直播请求。
在示例性的实施例中,请求模块610,还用于:根据用户指令向服务器发送的直播请求,所述直播请求包括目标直播频道的频道标识,所述频道标识用于指示所述服务器返回所述目标直播频道对应的配置参数。
接收模块620,用于接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数。
在示例性的实施例中,接收模块620,还用于:接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数;所述配置参数是所述服务器根据直播场景的类型所决定的。
播放模块630,用于播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度。
在示例性的实施例中,播放模块630,还用于:播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度,包括:将所述直播数据缓存到数据缓冲区;播放所述数据缓冲区中的直播数据,并以预定频率检测所述数据缓冲区中的未播放的直播数据的数据大小;根据所述配置参数和所述将所述未播放的直播数据的数据大小,控制视频播放速度。
在示例性的实施例中,播放模块630,还用于:根据所述配置参数和所述将所述未播放的直播数据的数据大小,控制视频播放速度,包括:根据所述未播放的直播数据的数据大小确定直播延迟时长;计算所述直播延迟时长与所述配置参数之间的目标比值;及根据所述目标比值将所述视频播放速度从第一视频播放速度调整为第二视频播放速度。
在示例性的实施例中,播放模块630,还用于:根据所述目标比值将所述视频播放速度从第一视频播放速度调整为第二视频播放速度,当所述目标比值大于第一数值时,所述第二视频播放速度为默认视频播放速度的第一倍数;当所述目标比值大于第二数值且小于所述第一数值时,所述第二视频播放速度为默认视频播放速度的第二倍数;其中,所述第一数值>第二数值>1,第一倍数>第二倍数>1。
在示例性的实施例中,播放模块630,还用于:根据所述目标比值将所述视频播放速度从第一视频播放速度调整为第二视频播放速度,当所述目标比值大于第一数值时,所述第二视频播放速度为默认视频播放速度的第一倍数;当所述目标比值大于第二数值且小于所述第一数值时,所述第二视频播放速度为默认视频播放速度的第二倍数;其中,所述第一数值>第二数值>1,第一倍数>第二倍数>1,第二视频播放速度为默认视频播放速度的1~1.1之间。
实施例四
图8示意性示出了根据本申请实施例四的适于实现视频播放控制方法的计算机设备的硬件架构示意图。本实施例中,计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是移动设备,平板设备,膝上型计算机、游戏设备、机顶盒、数字流设备、智能电视、电视盒、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集合群)等。如图7所示,计算机设备2至少包括但不限于:可通过系统总线相互通信链接存储器710、处理器720、网络接口730。其中:
存储器710至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器710可以是计算机设备2的内部存储模块,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器710也可以是计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(SmartMedia Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,存储器710还可以既包括计算机设备2的内部存储模块也包括其外部存储设备。本实施例中,存储器710通常用于存储安装于计算机设备2的操作系统和各类应用软件,例如视频播放控制方法的程序代码等。此外,存储器710还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器720在一些实施例中可以是中央处理器(Central Processing Unit,简称为CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器720通常用于控制计算机设备2的总体操作,例如执行与计算机设备2进行数据交互或者通信相关的控制和处理等。本实施例中,处理器720用于运行存储器710中存储的程序代码或者处理数据。
网络接口730可包括无线网络接口或有线网络接口,该网络接口730通常用于在计算机设备2与其他计算机设备之间建立通信链接。例如,网络接口730用于通过网络将计算机设备2与外部终端相连,在计算机设备2与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(GlobalSystem of Mobile communication,简称为GSM)、宽带码分多址(Wideband Code DivisionMultiple Access,简称为WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图8仅示出了具有部件710-730的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器710中的视频播放控制方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器720)所执行,以完成本发明。
实施例五
本实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的视频播放控制方法的步骤。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中的视频播放控制方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集合中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集合成电路模块,或者将它们中的多个模块或步骤制作成单个集合成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种视频播放控制方法,其特征在于,所述方法包括:
根据用户指令向服务器发送直播请求;
接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数,所述配置参数是所述服务器根据直播场景的类型所决定的;及
播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度:根据所述配置参数与未播放的直播数据进行对比,得到对比结果;通过所述对比结果不断地调整后续视频数据的播放速度,缩小主播终端的视频推送和观众终端的视频播放之间的时间差。
2.根据权利要求1所述的视频播放控制方法,其特征在于,所述直播请求包括目标直播频道的频道标识,所述频道标识用于指示所述服务器返回与所述目标直播频道适配的配置参数。
3.根据权利要求1所述的视频播放控制方法,其特征在于,播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度,包括:
将所述直播数据缓存到数据缓冲区;
播放所述数据缓冲区中的直播数据,并以预定频率检测所述数据缓冲区中的未播放的直播数据的数据大小;
根据所述配置参数和所述将所述未播放的直播数据的数据大小,控制视频播放速度。
4.根据权利要求3所述的视频播放控制方法,其特征在于,根据所述配置参数和所述将所述未播放的直播数据的数据大小,控制视频播放速度,包括:
根据所述未播放的直播数据的数据大小确定直播延迟时长;
计算所述直播延迟时长与所述配置参数之间的目标比值;及
根据所述目标比值将所述视频播放速度从第一视频播放速度调整为第二视频播放速度。
5.根据权利要求4所述的视频播放控制方法,其特征在于:
当所述目标比值大于第一数值时,所述第二视频播放速度为默认视频播放速度的第一倍数;
当所述目标比值大于第二数值且小于所述第一数值时,所述第二视频播放速度为默认视频播放速度的第二倍数;
其中,所述第一数值>第二数值>1,第一倍数>第二倍数>1。
6.根据权利要求4所述的视频播放控制方法,其特征在于,第二视频播放速度为默认视频播放速度的1~1.1之间。
7.一种视频播放控制系统,其特征在于,包括:
请求模块,用于根据用户指令向服务器发送的直播请求;
接收模块,用于接收所述服务器根据所述直播请求推送的直播数据以及用于评估直播状态的配置参数,所述配置参数是所述服务器根据直播场景的类型所决定的;及
播放模块,用于播放所述直播数据,并根据所述配置参数及所述直播数据中的未播放的直播数据控制视频播放速度:根据所述配置参数与未播放的直播数据进行对比,得到对比结果;通过所述对比结果不断地调整后续视频数据的播放速度,缩小主播终端的视频推送和观众终端的视频播放之间的时间差。
8.一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时用于实现权利要求1~6中任一项所述的视频播放控制方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如权利要求1~6中任一项所述的视频播放控制方法的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911046202.9A CN112752109B (zh) | 2019-10-30 | 2019-10-30 | 视频播放控制方法和系统 |
PCT/CN2020/109836 WO2021082642A1 (zh) | 2019-10-30 | 2020-08-18 | 视频播放控制方法和系统 |
US17/773,597 US11863841B2 (en) | 2019-10-30 | 2020-08-18 | Video playing control method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911046202.9A CN112752109B (zh) | 2019-10-30 | 2019-10-30 | 视频播放控制方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112752109A CN112752109A (zh) | 2021-05-04 |
CN112752109B true CN112752109B (zh) | 2022-05-17 |
Family
ID=75640693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911046202.9A Active CN112752109B (zh) | 2019-10-30 | 2019-10-30 | 视频播放控制方法和系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11863841B2 (zh) |
CN (1) | CN112752109B (zh) |
WO (1) | WO2021082642A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112291629B (zh) * | 2020-03-27 | 2022-08-23 | 北京字节跳动网络技术有限公司 | 交互方法、装置、电子设备和可读介质 |
CN114615510B (zh) * | 2020-12-08 | 2024-04-02 | 抖音视界有限公司 | 直播界面显示方法及设备 |
CN114363710A (zh) * | 2022-01-04 | 2022-04-15 | 上海哔哩哔哩科技有限公司 | 基于时移加速的直播观看方法及装置 |
CN114979091B (zh) * | 2022-07-28 | 2022-11-11 | 腾讯科技(深圳)有限公司 | 一种数据传输的方法、相关装置、设备以及存储介质 |
CN117221617A (zh) * | 2023-09-28 | 2023-12-12 | 杭州星犀科技有限公司 | 直播推流系统、方法及计算机存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101651665A (zh) * | 2008-08-14 | 2010-02-17 | 华为技术有限公司 | 一种实现媒体资源播放状态检测的控制方法、装置及系统 |
CN105872576A (zh) * | 2016-04-25 | 2016-08-17 | 乐视控股(北京)有限公司 | 一种视频播放方法和装置 |
CN106331766A (zh) * | 2016-08-31 | 2017-01-11 | 网宿科技股份有限公司 | 视频文件的播放方法和装置 |
CN107396171A (zh) * | 2017-07-24 | 2017-11-24 | 广州酷狗计算机科技有限公司 | 网络直播方法、装置和存储介质 |
CN108235136A (zh) * | 2018-03-15 | 2018-06-29 | 青岛海信传媒网络技术有限公司 | 一种数据播放方法及终端设备 |
CN109194975A (zh) * | 2018-11-02 | 2019-01-11 | 深圳市云威物联科技有限公司 | 音视频直播追流方法及装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140033073A1 (en) * | 2008-10-01 | 2014-01-30 | Nigel Pegg | Time-shifted collaboration playback |
CN101552909A (zh) * | 2009-04-28 | 2009-10-07 | 山东大学 | 基于无线视频监控的帧率控制方法 |
CN102271280A (zh) * | 2011-07-20 | 2011-12-07 | 宝利微电子系统控股公司 | 一种数字音视频变速播放的方法和装置 |
TWI520590B (zh) * | 2012-12-17 | 2016-02-01 | 財團法人工業技術研究院 | 影音串流傳輸方法、影音裝置以及影音提供裝置 |
CN103916716B (zh) * | 2013-01-08 | 2017-06-20 | 北京信威通信技术股份有限公司 | 一种无线网络下视频实时传输的码率平滑方法 |
CN104079955B (zh) * | 2013-03-26 | 2017-12-15 | 华为技术有限公司 | 越顶ott直播的方法、装置及系统 |
CN103338393A (zh) * | 2013-06-13 | 2013-10-02 | 西安交通大学 | 一种hspa系统下用户体验驱动的视频码率选择方法 |
US10231024B2 (en) * | 2013-09-12 | 2019-03-12 | Blizzard Entertainment, Inc. | Selectively incorporating feedback from a remote audience |
US20150234571A1 (en) | 2014-02-17 | 2015-08-20 | Microsoft Corporation | Re-performing demonstrations during live presentations |
US9838455B2 (en) * | 2014-09-19 | 2017-12-05 | Mobitv, Inc. | Fast encoding of live streaming media content |
CN106899863B (zh) * | 2016-06-28 | 2019-10-25 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
CN107205160A (zh) * | 2017-06-27 | 2017-09-26 | 青岛海信电器股份有限公司 | 一种针对服务器下发的视频的播放方法及装置 |
CN110351595B (zh) * | 2019-07-17 | 2023-08-18 | 北京百度网讯科技有限公司 | 一种缓冲处理方法、装置、设备和计算机存储介质 |
-
2019
- 2019-10-30 CN CN201911046202.9A patent/CN112752109B/zh active Active
-
2020
- 2020-08-18 US US17/773,597 patent/US11863841B2/en active Active
- 2020-08-18 WO PCT/CN2020/109836 patent/WO2021082642A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101651665A (zh) * | 2008-08-14 | 2010-02-17 | 华为技术有限公司 | 一种实现媒体资源播放状态检测的控制方法、装置及系统 |
CN105872576A (zh) * | 2016-04-25 | 2016-08-17 | 乐视控股(北京)有限公司 | 一种视频播放方法和装置 |
CN106331766A (zh) * | 2016-08-31 | 2017-01-11 | 网宿科技股份有限公司 | 视频文件的播放方法和装置 |
CN107396171A (zh) * | 2017-07-24 | 2017-11-24 | 广州酷狗计算机科技有限公司 | 网络直播方法、装置和存储介质 |
CN108235136A (zh) * | 2018-03-15 | 2018-06-29 | 青岛海信传媒网络技术有限公司 | 一种数据播放方法及终端设备 |
CN109194975A (zh) * | 2018-11-02 | 2019-01-11 | 深圳市云威物联科技有限公司 | 音视频直播追流方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20220385989A1 (en) | 2022-12-01 |
WO2021082642A1 (zh) | 2021-05-06 |
CN112752109A (zh) | 2021-05-04 |
US11863841B2 (en) | 2024-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112752109B (zh) | 视频播放控制方法和系统 | |
US10547850B2 (en) | Audio splitting with codec-enforced frame sizes | |
CN109565620B (zh) | 计算设备、用于生成和接收低延迟视频流的方法 | |
CN102752642B (zh) | 一种基于ip网络的多终端视频同步播放的方法及系统 | |
US10530825B2 (en) | Catching up to the live playhead in live streaming | |
US10638180B1 (en) | Media timeline management | |
CN108881931B (zh) | 一种数据缓冲方法及网络设备 | |
CN106789976A (zh) | 媒体文件的播放方法、服务端、客户端及系统 | |
JP5140952B2 (ja) | コンテンツ配信システム、コンテンツ配信サーバ、コンテンツ再生端末、プログラム、コンテンツ配信方法 | |
CN114501052B (zh) | 直播数据处理方法、云平台、计算机设备和存储介质 | |
CN112383794B (zh) | 直播方法、直播系统、服务器和计算机存储介质 | |
CN114245153A (zh) | 切片方法、装置、设备及可读存储介质 | |
CN111107387B (zh) | 视频转码方法、装置及计算机存储介质 | |
CN109194975B (zh) | 音视频直播追流方法及装置 | |
CN112383795B (zh) | 一种视频同步播放系统 | |
CN108632681B (zh) | 播放媒体流的方法、服务器及终端 | |
CN114461423A (zh) | 一种多媒体流处理方法、设备、存储介质及程序产品 | |
KR102051985B1 (ko) | 이질적인 네트워킹 환경들에서 미디어 렌더링의 동기화 | |
US11856242B1 (en) | Synchronization of content during live video stream | |
CN113612728B (zh) | 流媒体播放方法、传输设备和系统 | |
CN113923468B (zh) | 直播控制方法、装置、存储介质和电子设备 | |
US10893331B1 (en) | Subtitle processing for devices with limited memory | |
CN117676181A (zh) | 延迟直播的方法和装置 | |
CN117793393A (zh) | 分屏直播方法和装置 | |
CN117768687A (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 |