CN108900856A - 一种视频帧率预测方法、装置及设备 - Google Patents
一种视频帧率预测方法、装置及设备 Download PDFInfo
- Publication number
- CN108900856A CN108900856A CN201810833031.3A CN201810833031A CN108900856A CN 108900856 A CN108900856 A CN 108900856A CN 201810833031 A CN201810833031 A CN 201810833031A CN 108900856 A CN108900856 A CN 108900856A
- Authority
- CN
- China
- Prior art keywords
- frame per
- video
- vector
- frame rate
- acquisition
- 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
Links
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/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- 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
Abstract
本发明提供了一种视频帧率预测方法、装置及设备,所述方法包括:获取预设采集时间段内的视频相关信息;根据所述视频相关信息得到帧率向量和帧率关联向量;利用所述帧率向量和帧率关联向量训练得到模型参数;发送所述模型参数,使客户端采集当前时刻对应的目标关联向量,并根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。本发明通过视频帧率的预测,预知视频的卡顿情况,从而能够对预测到的卡顿情况提前采取优化措施,保证视频播放的顺畅。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种视频帧率预测方法、装置及设备。
背景技术
移动终端(例如智能手机、笔记本电脑、平板电脑等)的迅速发展,使得移动终端已经成为人们生活中一个重要的组成部分,用户可以使用智能手机、平板电脑等移动终端来听音乐、玩游戏、观看视频或是网络直播等等,以减轻现代快节奏生活所带来的压力。
其中,网络直播是不同用户在同一时刻透过网络系统在交流平台实现直播互动的一种娱乐方式。由于直播服务器每时每刻都会接入并处理大量的主播端设备发送的直播视频流;大量的视频数据流会导致各主播端设备在上传直播视频流时传输太慢,进而出现画面卡滞的情况,这样再从主播端设备传输至观众端设备时,又会进一步影响观众端设备的观看网络直播的质量。
现有技术中,当直播发生卡顿时,是主播客户端通过改变视频的编码参数或者降低视频的分辨率以降低视频的码率,使得传输和编解码的数据都减少来恢复主播客户端直播以及观众客户端观看的流畅。可见,现有方案在卡顿发生的时候才采取恢复流畅度的措施,这使得用户在措施生效前一直观看卡顿的视频,影响用户体验。
所以,需要提供一种更有效解决视频卡顿的方案,以提高用户的观看感受。
发明内容
为了解决现有技术中的问题,本发明提供了一种视频帧率预测方法、装置及设备,具体地:
一方面提供了一种视频帧率预测方法,所述方法包括:
获取预设采集时间段内的视频相关信息;
根据所述视频相关信息得到帧率向量和帧率关联向量;
利用所述帧率向量和帧率关联向量训练得到模型参数;
发送所述模型参数,使客户端采集当前时刻对应的目标关联向量,并根据所述目标关联向量和接收到的模型参数,得到预测视频帧率
另一方面提供了一种视频帧率预测方法,所述方法包括:
获取根据帧率向量和帧率关联向量训练得到的模型参数,所述帧率向量和帧率关联向量是由采集时间段内采集的视频相关信息得到的;
采集当前时刻对应的目标关联向量;
根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
另一方面提供了一种视频帧率预测装置,所述装置包括:
视频信息获取模块,用于获取预设采集时间段内的视频相关信息;
训练向量得到模块,用于根据所述视频相关信息得到帧率向量和帧率关联向量;
模型参数得到模块,用于利用所述帧率向量和帧率关联向量训练得到模型参数;
预测帧率得到模块,用于发送所述模型参数,使客户端采集当前时刻对应的目标关联向量,并根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
另一方面提供了一种视频帧率预测装置,所述装置包括:
训练数据得到模块,用于获取根据帧率向量和帧率关联向量训练得到的模型参数,所述帧率向量和帧率关联向量是由采集时间段内采集的视频相关信息得到的;
目标数据采集模块,用于采集当前时刻对应的目标关联向量;
预测视频帧率得到模块,用于根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
另一方面提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述任一方面所述的视频帧率预测方法。
另一方面提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述任一方面所述的视频帧率预测方法。
本发明提供的一种视频帧率预测方法、装置及设备,具有的有益效果为:
本发明服务器根据设定的数据采集时间段,获取到预训练数据(帧率向量和帧率关联向量);利用训练数据对模型进行训练,得到对应的模型参数,并将所述模型参数发送给客户端;进一步根据当前时刻的视频信息对应的目标关联向量,以及接收到的模型参数,得到对之后视频进行预测的视频帧率。本发明能够通过对待播放视频的视频帧率的预测,提前预知视频播放过程中的可能出现的卡顿情况,从而能够对预测到的卡顿情况提前采取优化措施,进而保证视频播放的顺畅。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本发明实施例提供的直播场景下实施环境的示意图;
图2是本发明实施例提供的一种视频帧率预测方法流程图;
图3是本发明实施例提供的获取预设采集时间段内的视频相关信息步骤的流程图;
图4是本发明实施例提供的根据所述视频相关信息得到帧率向量和帧率关联向量步骤的流程图;
图5是本发明实施例利用帧率向量和帧率关联向量进行模型训练的训练示意图;
图6是本发明实施例提供的另一种视频帧率预测方法流程图;
图7是本发明实施例提供的另一种视频帧率预测方法流程图;
图8是本发明实施例提供的预测流程示意图;
图9是本发明实施例提供的另一种视频帧率预测方法流程图;
图10是本发明实施例提供的一种视频帧率预测装置框图;
图11是本发明实施例提供的视频信息获取模块的组成示意图;
图12是本发明实施例提供的训练向量得到模块的组成示意图;
图13是本发明实施例提供的另一种视频帧率预测装置框图;
图14是本发明实施例提供的另一种视频帧率预测装置框图;
图15是本发明实施例提供的另一种视频帧率预测装置框图;
图16是本发明实施例提供的另一种视频帧率预测方法时序图;
图17是本发明实施例提供的一种视频帧率预测设备的示意图;
图18是本发明实施例提供的另一种视频帧率预测设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够包含在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
一般场景下,观众在观看视频时会因网络原因或其他原因出现卡顿的情形,影响用户的观看体验;不过对于一般的视频流,用户可以通过几秒钟的缓冲之后继续欣赏到想看的视频。但是,对于直播场景下,因为观众或是主播都要求与对方进行时时互动,或是,观众希望时时观看到现场比赛的进展情况;若这中间出现了卡顿,就切断了这种时时的连接,影响观众的互动或欣赏感受,严重时大量的观众取消关注,将会导致主播或公众号掉粉。
现有的针对直播场景的卡顿,一般是通过主播客户端改变视频的编码参数或者降低视频的分辨率以降低视频的码率,使得传输和编解码的数据都减少来恢复直播的流畅。比如,腾讯体育直播等直播平台(主播客户端)在视频发生卡顿的时候会主动切换到低分辨率,或者在观众客户端提示用户切换到低分辨率下观看以保证视频的流畅。也就是说,在卡顿(视频流的帧率小于一定的数值)发生时才采取恢复流畅度的措施,而在措施生效前用户观看到的仍然是卡顿的视频,这明显影响用户体验。因而,本发明提出了一种视频帧率预测方案,能够应用至一般视频播放场景下,尤其是直播视频场景的应用。具体地,本发明提出了一种使用机器学习对视频卡顿现象进行预测的方法,主要包括训练阶段和预测阶段。
其中,如果是视频播放场景下,则涉及到客户端和服务器;如果针对直播场景的话,则具体涉及到主播客户端、服务器和观众客户端。
如图1所示,其示出了直播场景下的实施环境的示意图;该实施环境包括:服务器02、与该服务器02进行信息通信的终端01以及终端03。其中,终端01和终端03均可以为手机、平板电脑、膝上型便携获取机、PAD或台式获取机等等。终端01和终端03中均运行有客户端,该客户端可以是具有视频录制和播放功能的客户端,或是相同类型的应用客户端等等。服务器02可以是一台服务器,也可以是由若干台服务器组成的服务器集群,或者是一个云获取服务中心。服务器02通过网络与终端01建立通信连接。
具体地,本方案的训练阶段是主播客户端采集训练数据(帧率向量和帧率关联向量)上报给服务器,服务器通过训练数据训练机器学习模型;本方案的预测阶段是主播客户端根据训练得到的模型参数,以及采集的当前的目标数据,对将来某个时刻是否发生卡顿进行预测,并对预测发生卡顿的情况提前采取优化措施,之后在将相应的传输视频发送给观众客户端时,就能够保证直播的流畅。
具体地,本说明书实施例提供了一种视频帧率预测方法,如图2所示,所述方法可以包括:
S202.获取预设采集时间段内的视频相关信息;
本实施例中的采集时间段为用于进行视频信息采集的时间段,属于所述视频之前已播放的时间区段;也就是说,本实施例中服务器从对应视频客户端已播放的视频信息中进行模型训练数据的获取。
其中,本实施例所述的客户端包括多个采集节点,每个采集节点具有对应的需要被采集的数据。所述采集时间段可以根据用户的需求进行适应性的调整;优选地,可以选取视频中的5min时长作为本实施例的采集时间段,以获取这在5min内的视频相关信息,进而得到训练数据。
一种具体的实施方式中,步骤S202获取预设采集时间段内的视频相关信息,如图3所示,可以包括:
S402.将数据采集程序以打桩的方式嵌入所述客户端对应的采集节点;
S404.设定第一时间间隔;
S406.根据所述采集时间段和所述第一时间间隔,得到多个采集时刻;
S408.在每个采集时刻使所述采集节点进行对应信息的获取,得到视频相关信息;所述视频相关信息包括帧率数据和帧率关联数据。
所述采集节点为,对应客户端中处理或存储与视频相关信息相关联的数据的模块。
其中,若应用在直播视频场景下,也就是将数据采集程序以打桩的方式嵌入所述主播客户端,在所述主播客户端的各个直播节点以一定的时间间隔进行数据的采集。具体地,所述直播节点可以包括播放器回调模块、动画播放模块、摄像头数据回调模块、网络状态监听模块等;则对应地,各个模块进行数据的采集可以包括:
将采集程序嵌入播放器回调代码中,获取视频帧率;
将采集程序嵌入动画播放的代码中,采集当前是否播放动画;
将采集程序嵌入摄像头数据回调的代码中,获取图像采集分辨率与采集帧率;
将采集程序嵌入网络状态监听的代码中,获取当前的网络状态等等。
具体地,在客户端所有采集节点得到的信息综合为所述视频相关信息;之后服务器从所述客户端获取到所述视频相关信息。详细地,所述视频相关信息可以包括视频帧率信息、图像信息、后台业务信息、网络信息、终端信息等等。
S204.根据所述视频相关信息得到帧率向量和帧率关联向量;
具体地,步骤S204根据所述视频相关信息得到帧率向量和帧率关联向量,如图4所示,可以包括:
S602.删除第一个采集时刻的帧率数据,由剩余的帧率数据得到所述帧率向量;
S604.删除最后一个采集时刻的帧率关联数据,由剩余的帧率关联数据得到所述帧率关联向量。
对应地,服务器在获取到所述视频相关信息之后,对所述视频相关信息进行处理,以得到进行模型训练的训练数据。其中,用于进行模型训练的帧率向量为输出端训练向量,包括采集时间段内的视频帧率信息。用于进行模型训练的帧率关联向量为输入端训练向量,可以包括采集时间段内的图像信息、网络信息、后台业务信息、终端信息。
详细地,每个采集时刻下的图像信息可以包括图像采集分辨率、图像采集帧率、编码类型、编码分辨率等等;每个采集时刻下的网络信息可以包括网络状态、丢包率、延时、码率等等;每个采集时刻下的终端信息可以包括CPU型号、CPU主频、CPU占用率、已使用内存、剩余内存等等。
一般地,CPU型号和CPU主频是固定的,图像采集分辨率、编码类型和编码分辨率是不变的;其它参数属于在相应数据范围内波动的参数;所以,在不同的采集时刻可以采集到不同的信息。
需要说明的是,对于图像采集分辨率、编码类型和编码分辨率,也可以在预测到视频帧率小于门限帧率的情况下,根据需求进行更改,以进行帧率的优化。
其中,若应用在直播场景下,则每个采集时刻下的后台业务信息可以包括在终端界面上显示的,用于美化主播或是用于主播与观众进行互动的界面展示信息,比如点赞动画、礼物动画、评论动画;或者,美容、滤镜、贴纸等等。
本实施例中为了预测之后待播放视频的视频帧率,选取第一个采集时刻到倒数第二个采集时刻的帧率关联数据作为训练数据,构成输入端训练向量;选取第二个采集时刻到最后一个采集时刻的帧率数据作为训练数据,构成输出端训练向量;进一步利用所述输出端训练数据和输入端训练数据进行模型的训练,得到模型参数,进而得到能够进行下一时刻视频帧率预测的预测帧率模型。
另一种具体的实施方式中,步骤S202获取预设采集时间段内的视频相关信息,可以包括:
将数据采集程序以打桩的方式嵌入所述客户端对应的采集节点;
设定第二时间间隔;
根据所述采集时间段和所述第二时间间隔,得到多个采集时刻;
在每个采集时刻,使所述采集节点进行帧率关联数据的获取。
具体地,根据设定的第一时间间隔和采集时间段进行训练数据的获取;具体是在该采集时间段的每个采集时刻进行输入端训练数据的获取。
进一步地,S202获取预设采集时间段内的视频相关信息,还可以包括:
利用所述第二时间间隔,将所述采集时间段进行推移,得到新的采集时间段;
根据新的采集时间段和所述第二时间间隔,使所述采集节点进行帧率数据的获取。
具体地,在本实施例中,将采集时间段以设定的第一时间间隔为基准进行推移,得到新的采集时间段;在该新的采集时间段内进行输出端训练数据的获取。
需要说明的是,本说明中的第二时间间隔,以及本说明书中的第一时间间隔能够根据需求进行调整,并不限定为某一个数值。并且,本说明书中输出端训练向量对应的时间段,相比较所述输入端训练向量对应的时间段要延后,以训练得到能够进行之后视频帧率预测的模型。
进一步地,步骤S204根据所述视频相关信息得到帧率向量和帧率关联向量,可以包括:
由所有的帧率关联数据得到所述帧率关联向量;
由所有的帧率数据得到所述帧率向量。
利用本实施例中得到的多个输入端训练数据组成训练向量,得到输入端训练向量;利用本实施例中得到的多个输出端训练数据组成训练向量,得到输出端训练向量。
S206.利用所述帧率向量和帧率关联向量训练得到模型参数;
具体地,步骤S206利用所述帧率向量和帧率关联向量训练得到模型参数,可以包括:
将所述帧率向量作为输出端训练向量,将所述帧率关联向量作为输入端训练向量;
利用所述输出端训练向量和输入端训练向量进行模型训练,得到所述模型参数。
详细地,在训练阶段,服务器从客户端获取到用于进行模型训练的数据,根据对应的数据得到相应的训练向量;服务器利用所述输入端训练向量和输出端训练向量,对机器学习模型进行训练,得到用于进行帧率预测的预测模型。
其中对于具体的逻辑回归模型来说,所述模型参数可以包括权重向量和偏移向量;对于有些其他可利用的模型来说,所述模型参数可以只包括权重向量。
其中,本说明书中可使用的用于模型训练的机器学习模型可以包括逻辑回归、树回归等具备预测能力的回归模型;最后得到训练后的帧率预测模型,对应地得到。
详细地,本说明书中使用X表示输入端训练向量(帧率关联向量),Δt表示第一时间间隔,对应地采集时间段为n*Δt;xindex,t代表第t时刻下的输入端训练数据(帧率关联数据),则输入端训练向量X为:
X=[xindex,t-n·Δt…xindex,t-2·Δt xindex,t·Δt]
本说明书中使用Y表示输出端训练向量(帧率向量),yt代表第t时刻下的输出端训练数据(帧率数据);则输出端训练向量Y为:
Y=[yt-(n-1)·Δt…yt-Δt yt]
则对应地得到如图5所示的训练示意图;其中,对于Y=f(X)来说,f是将输入端训练向量X映射到输出端训练向量Y的函数,也即是采用的机器学习模型。
以逻辑回归模型为例:模型训练的过程主要是根据模型函数Y=W·X+B,以及根据采集数据得到的训练向量X和Y进行训练,进而得到权重向量W和偏移向量B。具体地,模型函数Y=W·X+B可以表示为式(1)所示。
其中,g表示softmax函数,属于在多分类过程中将多个神经元的输出映射到(0,1)区间内(可以看成概率)的分类方式;假设我们有一个数组V,Vi表示V中的第i个元素,Vj表示V中的第j个元素,那么这个元素的softmax值就是
S208.发送所述模型参数,使客户端采集当前时刻对应的目标关联向量,并根据所述目标关联向量和接收到的模型参数,得到预测视频帧率;
其中,服务器将得到的模型参数发送给客户端,使得客户端接收到所述模型参数。或者是,程序人员将训练阶段输出的模型参数在对应的视频应用程序中编程实现,以使得所述客户端得到对应的模型参数。
进一步地,所述客户端采集当前时刻的目标帧率关联数据,并将采集到的目标帧率关联数据封装成目标关联向量Xt。之后,将目标关联向量Xt输入到模型f中,输出yt+Δt,其中yt+Δt也就是预测得到的将来时刻的视频帧率;可以用于预测下一Δt时刻的视频卡顿情况,也可以用于预测之后的n*Δt时刻视频卡顿情况,其中,可预测的时刻也并不限于属于Δt的n倍。
其中,以逻辑回归为例,预测的过程主要是根据模型参数(权重向量和偏移向量)以及目标关联向量Xt,求解式(2)的值yt+Δt;
yt+Δt=W·Xt+B=[w0 w1 … wn]·[x0,t x1,t … xn,t]+B (2)
其中,所述目标关联向量可以包括当前时刻的第二图像信息、第二网络信息、第二后台业务信息、第二终端信息。详细地,第二图像信息可以包括当前时刻的图像采集分辨率、图像采集帧率、编码类型、编码分辨率等等;第二网络信息可以包括当前时刻的网络状态、丢包率、延时、码率等等;第二终端信息可以包括当前时刻的CPU占用率、已使用内存、剩余内存等等,其中终端信息中还可以包括CPU型号、CPU主频等。
其中,若应用在直播场景下,所述第二后台业务信息可以包括点赞动画、礼物动画、评论动画;或者,美容、滤镜、贴纸等等。
需要说明的是,本实施例中,除了采用逻辑回归、树回归等具备预测能力的回归模型外,也可采用深度学习模型进行训练,实现视频帧率的预测。
本说明书实施例提供了一种视频帧率预测方法,如图6所示,所述方法包括:
S802.获取根据帧率向量和帧率关联向量训练得到的模型参数,所述帧率向量和帧率关联向量是由采集时间段内采集的视频相关信息得到的;
具体地,步骤S802中,客户端从服务器获取到训练得到的模型参数;其中,所述模型参数是服务器根据帧率向量和帧率关联向量训练得到的;进一步地,所述帧率向量和帧率关联向量是服务器根据从客户端采集到的视频相关信息得到的。
其中,所述视频相关信息包括多个帧率数据和帧率关联数据;所述帧率关联数据包括采集时间段内的图像信息、网络信息、后台业务信息、终端信息等等。
S804.采集当前时刻对应的目标关联向量;
具体地,客户端采集当前时刻的目标关联数据,以进行后续视频的帧率预测;其中,所述目标关联数据可以包括当前时刻的图像信息、网络信息、后台业务信息、终端信息等等。
S806.根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
具体地,客户端根据采集到的目标关联向量,以及从服务器接收到的模型参数,得到预测视频帧率。具体地:
其中,以逻辑回归模型为例,预测的过程主要是根据模型参数(权重向量和偏移向量)和目标关联向量Xt,求解下式的值yt+Δt;
yt+Δt=W·Xt+B=[w0 w1 … wn]·[x0,t x1,t … xn,t]+B
需要说明的是,不同的模型具有各自的模型函数,客户端根据目标关联向量、模型参数,以及对应模型的模型函数,得到相应的预测视频帧率。
一种可行的实施方式中,如图7所示,所述方法进一步地还可以包括:
S808.将所述预测视频帧率与门限帧率进行比对;
S810.在所述预测视频帧率小于所述门限帧率时,对所述预测视频帧率进行优化;
S812.发送优化后的视频帧率对应的视频信息。
如果本实施例中预测得到的视频帧率对应为下一Δt时刻的视频帧率,则涉及到的预测流程如图8所示;具体地,本实施例在得到预测的视频帧率yt+Δt之后,根据yt+Δt是否小于卡顿门限值(门限帧率)ythreshold,来判断是否在下一Δt时刻时视频是否会发生卡顿;如果发生卡顿则所述客户端提前采取优化措施;对于直播场景来说,主播客户端进行视频帧率的比对,在所述预测视频帧率小于所述门限帧率时,对所述预测视频帧率进行优化,之后,所述主播客户端将优化后的视频帧率对应的视频信息发送给服务器,进一步地,所述服务器将该视频信息观众客户端,使观众客户端欣赏到顺畅的视频内容。其中,对于普通直播,低于8帧会有明显的卡顿感,可以设置所述卡顿门限值ythreshold为8帧每秒(fps)。
其中,所述客户端对预测得到的视频帧率,可以通过分级优化的方式进行处理,优化方法可以包括:
第一级:调整编码器的编码配置;具体可以包括增大QP(量化参数)、降低编码码率等等;
第二级:降低编码器的编码分辨率;
第三级:降低摄像头采集分辨率。
本实施例中客户端通过逐级优化的方式提升了视频帧率;则在直播场景下主播客户端将优化的视频帧率对应的视频信息发送给服务器,服务器接收到的视频信息的视频帧率也就比较高;进一步地,服务器将该视频转发给观众客户端时,观众客户端接收到的视频信息的视频帧率也就比较高;使得能够在尽量保证视频清晰度的前提下能够提前进行卡顿的优化,也就是能够在到达Δt时刻时提升视频的流畅度;提升了观众客户端的体验感受度。
其中,若应用在直播视频场景下,不仅能够通过在主播客户端上进行上述分级优化的措施,以解决直播卡顿的情况;还可以通过获取在主播客户端上的设置操作来进一步优化直播卡顿;比如同意关闭消耗系统资源的后台功能,包括关闭点赞动画、评论动画、美容、滤镜、贴纸等后台功能;并且,主播端视频流畅度提高了,则整个视频流的流畅度都得到提高。
在一种可行的实施方式中,如图9所示,所述方法还可以包括:
S1002.在预测得到的视频帧率不小于门限帧率时,进行第一时间的累计;
S1004.在累计的第一时间长度达到门限时长时,设定在第一暂停时长之后进行视频帧率的预测;
S1006.在再次进行视频帧率预测后,累计的第二时间长度同样达到所述门限时长时,设定在第二暂停时长之后进行视频帧率的预测。
具体地,若预测得到的预测视频帧率大于等于门限帧率,则视频播放到该时刻时是不发生卡顿的,此时开始进行不发生卡段时间长度的累计;如果累计得到的时间长度达到门限时长(比如1min),则说明此时的视频播放情况比较舒畅,则设定服务器暂停帧率的预测,在暂停时长(比如隔3min)之后再进行视频帧率的预测。
进一步地,在暂停时长结束后,再次开启视频帧率的预测,这一次预测得到的视频帧率大于小于门限帧率的连续时长(第二时间长度),同样达到了门限时长,则说明此时的视频播放情况非常舒畅,则设定服务器再次暂停帧率的预测,在第二暂停时长(比如隔10min)之后再进行视频帧率的预测。
需要说明的是,若预测得到的视频帧率间断性的满足小于门限帧率,也就是中间可能发生卡顿,则仍然进行视频帧率的预测,直到满足上述暂停预测的情形。
本发明能够基于采集的帧率向量和帧率关联向量作为训练数据,在服务器进行训练得到帧率预测模型、对应的模型参数,进一步服务器将所述模型参数发送给客户端(例如直播场景下的主播客户端),使得所述客户端利用所述模型参数和当前时刻的目标关联向量,进行之后视频的帧率的预测;可见,本发明能够对将来某个时刻的视频是否发生卡顿进行预测,并能够进一步对预测到发生卡顿的情况提前采取优化措施,保证视频的流畅。
并且,本实施例中还能够对预测帧率不小于所述门限帧率的情况进行时长累计,进一步能够在判断表明当前阶段视频运行顺畅的情况下,进行预测过程的暂停,从而减轻客户端(例如直播场景下的主播客户端)的处理负担,提升后续视频帧率预测的效率。
本说明书实施例提供了一种视频帧率预测装置,如图10所示,所述装置包括:
视频信息获取模块202,用于获取预设采集时间段内的视频相关信息;
训练向量得到模块204,用于根据所述视频相关信息得到帧率向量和帧率关联向量;
模型参数得到模块206,用于利用所述帧率向量和帧率关联向量训练得到模型参数;
预测帧率得到模块208,用于发送所述模型参数,使客户端采集当前时刻对应的目标关联向量,并根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
一种具体的实施方式中,所述视频信息获取模块202,如图11所示,包括:
采集程序嵌入单元402,用于将数据采集程序以打桩的方式嵌入所述客户端对应的采集节点;
第一时间间隔设定单元404,用于设定第一时间间隔;
采集时刻得到单元406,用于根据所述采集时间段和所述第一时间间隔,得到多个采集时刻;
视频信息得到单元408,用于在每个采集时刻使所述采集节点进行对应信息的获取,得到视频相关信息;所述视频相关信息包括帧率数据和帧率关联数据。
一种具体的实施方式中,所述训练向量得到模块204,如图12所示,包括:
帧率向量得到单元602,用于删除第一个采集时刻的帧率数据,由剩余的帧率数据得到所述帧率向量;
帧率关联向量得到单元604,用于删除最后一个采集时刻的帧率关联数据,由剩余的帧率关联数据得到所述帧率关联向量。
一种具体的实施方式中,所述模型参数得到模块,可以包括:
训练向量确定模块,用于将训练向量将所述帧率向量作为输出端训练向量,将所述帧率关联向量作为输入端训练向量;
模型参数得到模块,用于利用所述输出端训练向量和输入端训练向量进行模型训练,得到所述模型参数。
本说明书实施例提供了一种视频帧率预测装置,如图13所示,所述装置包括:
训练数据得到模块802,用于获取根据帧率向量和帧率关联向量训练得到的模型参数,所述帧率向量和帧率关联向量是由采集时间段内采集的视频相关信息得到的;
目标数据采集模块804,用于采集当前时刻对应的目标关联向量;
预测视频帧率得到模块806,用于根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
进一步的实施方式中,如图14所示,所述装置还包括:
帧率比对模块808,用于将所述预测视频帧率与门限帧率进行比对;
帧率优化模块810,用于在所述预测视频帧率小于所述门限帧率时,对所述预测视频帧率进行优化;
视频帧率发送模块812,用于发送优化后的视频帧率。
进一步的实施方式中,如图15所示,所述装置还包括:
时间累计模块1002,用于在预测得到的视频帧率不小于门限帧率时,进行第一时间的累计;
第一暂停模块1004,用于在累计的第一时间长度达到门限时长时,设定在第一暂停时长之后进行视频帧率的预测;
第二暂停模块1006,用于在再次进行视频帧率预测后,累计的第二时间长度同样达到所述门限时长时,设定在第二暂停时长之后进行视频帧率的预测。
需要说明的是,所述装置实施例具有与所述方法实施例相同的发明构思。
本实施例提供了一种视频帧率预测方法,所述方法涉及到主播端、服务器和观众端;具体地,如图16所示,主播端、服务器和客户端进行的交互过程主要包括:
服务器获取采集时间段内客户端的视频相关信息;
服务器根据所述视频相关信息得到帧率向量和帧率关联向量;
服务器利用所述帧率向量和帧率关联向量训练得到模型参数;
服务器将所述模型参数发送给主播端;
主播端采集当前时刻对应的目标关联向量;
主播端根据所述目标关联向量和接收到的模型参数,得到预测视频帧率;
一种可行的交互过程中,还可以包括:
主播端将所述预测视频帧率与门限帧率进行比对,并在所述预测视频帧率小于所述门限帧率时,对所述预测视频帧率进行优化;
主播端将优化后的视频帧率对应的视频信息发送给服务器;
服务器将所述视频信息转发给观众端。
本说明书实施例提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方法实施例所述的视频帧率预测方法。
具体地,本说明书实施例还提供了一种视频帧率预测设备的示意图,请参考图17。该设备用于实施上述实施例中提供的视频帧率预测方法。具体来讲:
所述服务器2000包括中央处理单元(CPU)2001、包括随机存取存储器(RAM)2002和只读存储器(ROM)2003的系统存储器2004,以及连接系统存储器2004和中央处理单元2001的系统总线2005。所述服务器2000还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)2006,和用于存储操作系统2013、应用程序2014和其他程序模块2015的大容量存储设备2007。
所述基本输入/输出系统2006包括有用于显示信息的显示器2008和用于用户输入信息的诸如鼠标、键盘之类的输入设备2009。其中所述显示器2008和输入设备2009都通过连接到系统总线2005的输入输出控制器2010连接到中央处理单元2001。所述基本输入/输出系统2006还可以包括输入输出控制器2010以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器2010还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备2007通过连接到系统总线2005的大容量存储控制器(未示出)连接到中央处理单元2001。所述大容量存储设备2007及其相关联的计算机可读介质为服务器2000提供非易失性存储。也就是说,所述大容量存储设备2007可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器2004和大容量存储设备2007可以统称为存储器。
根据本发明的各种实施例,所述服务器2000还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器2000可以通过连接在所述系统总线2005上的网络接口单元2011连接到网络2012,或者说,也可以使用网络接口单元2011来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行;上述一个或者一个以上程序包含用于执行上述后台服务器侧的方法的指令。
本说明书实施例还提供了另一种视频帧率预测设备的结构示意图,如图18所示,该设备可以用于实施上述方法实施例中提供的视频帧率预测方法。具体来讲:
所述设备可以包括RF(Radio Frequency,射频)电路1210、包括有一个或一个以上计算机可读存储介质的存储器1220、输入单元1230、显示单元1240、传感器1250、音频电路1260、WiFi(wireless fidelity,无线保真)模块1270、包括有一个或者一个以上处理核心的处理器1280、以及电源1290等部件。本领域技术人员可以理解,图18中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路1210可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器1280处理;另外,将涉及上行的数据发送给基站。通常,RF电路1210包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low NoiseAmplifier,低噪声放大器)、双工器等。此外,RF电路1210还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(CodeDivision Multiple Access,码分多址)、WCDMA(Wideband Code Division MultipleAccess,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(ShortMessaging Service,短消息服务)等。
存储器1220可用于存储软件程序以及模块,处理器1280通过运行存储在存储器1220的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器1220可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据所述设备的使用所创建的数据等。此外,存储器1220可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器1220还可以包括存储器控制器,以提供处理器1280和输入单元1230对存储器1220的访问。
输入单元1230可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元1230可包括触敏表面1231以及其他输入设备1232。触敏表面1231,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面1231上或在触敏表面1231附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面1231可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1280,并能接收处理器1280发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面1231。除了触敏表面1231,输入单元1230还可以包括其他输入设备1232。具体地,其他输入设备1232可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1240可用于显示由用户输入的信息或提供给用户的信息以及所述设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元1240可包括显示面板1241,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板1241。进一步的,触敏表面1231可覆盖显示面板1241,当触敏表面1231检测到在其上或附近的触摸操作后,传送给处理器1280以确定触摸事件的类型,随后处理器1280根据触摸事件的类型在显示面板1241上提供相应的视觉输出。其中,触敏表面1231与显示面板1241可以两个独立的部件来实现输入和输入功能,但是在某些实施例中,也可以将触敏表面1231与显示面板1241集成而实现输入和输出功能。
所述设备还可包括至少一种传感器1250,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1241的亮度,接近传感器可在所述设备移动到耳边时,关闭显示面板1241和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别设备姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于所述设备还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1260、扬声器1261,传声器1262可提供用户与所述设备之间的音频接口。音频电路1260可将接收到的音频数据转换后的电信号,传输到扬声器1261,由扬声器1261转换为声音信号输出;另一方面,传声器1262将收集的声音信号转换为电信号,由音频电路1260接收后转换为音频数据,再将音频数据输出处理器1280处理后,经RF电路1210以发送给比如另一设备,或者将音频数据输出至存储器1220以便进一步处理。音频电路1260还可能包括耳塞插孔,以提供外设耳机与所述设备的通信。
WiFi属于短距离无线传输技术,所述设备通过WiFi模块1270可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图18示出了WiFi模块1270,但是可以理解的是,其并不属于所述设备的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1280是所述设备的控制中心,利用各种接口和线路连接整个设备的各个部分,通过运行或执行存储在存储器1220内的软件程序和/或模块,以及调用存储在存储器1220内的数据,执行所述设备的各种功能和处理数据,从而对设备进行整体监控。可选的,处理器1280可包括一个或多个处理核心;优选的,处理器1280可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1280中。
所述设备还包括给各个部件供电的电源1290(比如电池),优选的,电源可以通过电源管理系统与处理器1280逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源1290还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,所述设备还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,设备的显示单元是触摸屏显示器,设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行本发明中方法实施例中的指令。
本说明书实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述方法实施例任一所述的视频帧率预测方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络设备中的至少一个网络设备。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是:上述本说明书实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种视频帧率预测方法,其特征在于,所述方法包括:
获取预设采集时间段内的视频相关信息;
根据所述视频相关信息得到帧率向量和帧率关联向量;
利用所述帧率向量和帧率关联向量训练得到模型参数;
发送所述模型参数,使客户端采集当前时刻对应的目标关联向量,并根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
2.根据权利要求1所述的视频帧率预测方法,其特征在于,所述获取预设采集时间段内的视频相关信息,包括:
将数据采集程序以打桩的方式嵌入所述客户端对应的采集节点;
设定第一时间间隔;
根据所述采集时间段和所述第一时间间隔,得到多个采集时刻;
在每个采集时刻使所述采集节点进行对应信息的获取,得到视频相关信息;所述视频相关信息包括帧率数据和帧率关联数据。
3.根据权利要求2所述的视频帧率预测方法,其特征在于,所述根据所述视频相关信息得到帧率向量和帧率关联向量,包括:
删除第一个采集时刻的帧率数据,由剩余的帧率数据得到所述帧率向量;
删除最后一个采集时刻的帧率关联数据,由剩余的帧率关联数据得到所述帧率关联向量。
4.根据权利要求1所述的视频帧率预测方法,其特征在于,
所述帧率向量包括采集时间段内的视频帧率信息;所述帧率关联向量包括采集时间段内的图像信息、网络信息、后台业务信息、终端信息;
所述目标关联向量包括当前时刻的第二图像信息、第二网络信息、第二后台业务信息、第二终端信息。
5.根据权利要求1所述的视频帧率预测方法,其特征在于,所述利用所述帧率向量和帧率关联向量训练得到模型参数,包括:
将所述帧率向量作为输出端训练向量,将所述帧率关联向量作为输入端训练向量;
利用所述输出端训练向量和输入端训练向量进行模型训练,得到所述模型参数。
6.一种视频帧率预测方法,其特征在于,所述方法包括:
获取根据帧率向量和帧率关联向量训练得到的模型参数,所述帧率向量和帧率关联向量是由采集时间段内采集的视频相关信息得到的;
采集当前时刻对应的目标关联向量;
根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
7.根据权利要求6所述的视频帧率预测方法,其特征在于,所述方法还包括:
将所述预测视频帧率与门限帧率进行比对;
在所述预测视频帧率小于所述门限帧率时,对所述预测视频帧率进行优化;
发送优化后的视频帧率对应的视频信息。
8.根据权利要求6所述的视频帧率预测方法,其特征在于,所述方法还包括:
在预测得到的视频帧率不小于门限帧率时,进行第一时间的累计;
在累计的第一时间长度达到门限时长时,设定在第一暂停时长之后进行视频帧率的预测;
在再次进行视频帧率预测后,累计的第二时间长度同样达到所述门限时长时,设定在第二暂停时长之后进行视频帧率的预测。
9.一种视频帧率预测装置,其特征在于,所述装置包括:
视频信息获取模块,用于获取预设采集时间段内的视频相关信息;
训练向量得到模块,用于根据所述视频相关信息得到帧率向量和帧率关联向量;
模型参数得到模块,用于利用所述帧率向量和帧率关联向量训练得到模型参数;
预测帧率得到模块,用于发送所述模型参数,使客户端采集当前时刻对应的目标关联向量,并根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
10.根据权利要求9所述的视频帧率预测装置,其特征在于,所述视频信息获取模块,包括:
采集程序嵌入单元,用于将数据采集程序以打桩的方式嵌入所述客户端对应的采集节点;
第一时间间隔设定单元,用于设定第一时间间隔;
采集时刻得到单元,用于根据所述采集时间段和所述第一时间间隔,得到多个采集时刻;
视频信息得到单元,用于在每个采集时刻使所述采集节点进行对应信息的获取,得到视频相关信息;所述视频相关信息包括帧率数据和帧率关联数据。
11.根据权利要求10所述的视频帧率预测装置,其特征在于,所述训练向量得到模块,包括:
帧率向量得到单元,用于删除第一个采集时刻的帧率数据,由剩余的帧率数据得到所述帧率向量;
帧率关联向量得到单元,用于删除最后一个采集时刻的帧率关联数据,由剩余的帧率关联数据得到所述帧率关联向量。
12.一种视频帧率预测装置,其特征在于,所述装置包括:
训练数据得到模块,用于获取根据帧率向量和帧率关联向量训练得到的模型参数,所述帧率向量和帧率关联向量是由采集时间段内采集的视频相关信息得到的;
目标数据采集模块,用于采集当前时刻对应的目标关联向量;
预测视频帧率得到模块,用于根据所述目标关联向量和接收到的模型参数,得到预测视频帧率。
13.根据权利要求12所述的视频帧率预测装置,其特征在于,所述装置还包括:
帧率比对模块,用于将所述预测视频帧率与门限帧率进行比对;
帧率优化模块,用于在所述预测视频帧率小于所述门限帧率时,对所述预测视频帧率进行优化;
视频帧率发送模块,用于发送优化后的视频帧率对应的视频信息。
14.根据权利要求12所述的视频帧率预测装置,其特征在于,所述装置还包括:
时间累计模块,用于在预测得到的视频帧率不小于门限帧率时,进行第一时间的累计;
第一暂停模块,用于在累计的第一时间长度达到门限时长时,设定在第一暂停时长之后进行视频帧率的预测;
第二暂停模块,用于在再次进行视频帧率预测后,累计的第二时间长度同样达到所述门限时长时,设定在第二暂停时长之后进行视频帧率的预测。
15.一种设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至5任一所述的视频帧率预测方法,或者如权利要求6至8任一所述的视频帧率预测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810833031.3A CN108900856B (zh) | 2018-07-26 | 2018-07-26 | 一种视频帧率预测方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810833031.3A CN108900856B (zh) | 2018-07-26 | 2018-07-26 | 一种视频帧率预测方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108900856A true CN108900856A (zh) | 2018-11-27 |
CN108900856B CN108900856B (zh) | 2020-04-28 |
Family
ID=64351726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810833031.3A Active CN108900856B (zh) | 2018-07-26 | 2018-07-26 | 一种视频帧率预测方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108900856B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110339567A (zh) * | 2019-07-17 | 2019-10-18 | 三星电子(中国)研发中心 | 系统资源配置、场景预测模型训练方法和装置 |
CN111327865A (zh) * | 2019-11-05 | 2020-06-23 | 杭州海康威视系统技术有限公司 | 视频传输方法、装置及设备 |
CN111866058A (zh) * | 2020-05-25 | 2020-10-30 | 西安万像电子科技有限公司 | 数据处理方法及系统 |
CN112511482A (zh) * | 2019-09-16 | 2021-03-16 | 华为技术有限公司 | 媒体数据传输方法、装置及系统 |
CN112604286A (zh) * | 2020-12-29 | 2021-04-06 | 珠海金山网络游戏科技有限公司 | 一种游戏技能同步执行方法及装置 |
CN112835641A (zh) * | 2021-02-02 | 2021-05-25 | 上海臣星软件技术有限公司 | 应用程序运行功能的配置方法和装置 |
CN113301398A (zh) * | 2020-07-27 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 信息处理方法及系统、服务端设备、客户端设备 |
CN113395512A (zh) * | 2021-05-27 | 2021-09-14 | 北京达佳互联信息技术有限公司 | 卡顿检测方法、装置、卡顿检测服务器及存储介质 |
CN114339402A (zh) * | 2021-12-31 | 2022-04-12 | 北京字节跳动网络技术有限公司 | 视频播放完成率预测方法、装置、介质及电子设备 |
CN114401447A (zh) * | 2021-12-20 | 2022-04-26 | 北京字节跳动网络技术有限公司 | 一种视频卡顿预测方法、装置、设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010032229A1 (en) * | 2008-09-22 | 2010-03-25 | France Telecom | Frame rate up conversion method and system |
CN105430532A (zh) * | 2015-11-18 | 2016-03-23 | 南京创维信息技术研究院有限公司 | 一种视频数据传输自适应调整的控制方法及其系统 |
CN106937115A (zh) * | 2017-03-02 | 2017-07-07 | 杭州当虹科技有限公司 | 在视频编码中对比特数预测器进行比特数训练的方法 |
CN107547154A (zh) * | 2016-06-23 | 2018-01-05 | 华为技术有限公司 | 一种建立视频流量预测模型的方法及装置 |
CN108305296A (zh) * | 2017-08-30 | 2018-07-20 | 深圳市腾讯计算机系统有限公司 | 图像描述生成方法、模型训练方法、设备和存储介质 |
-
2018
- 2018-07-26 CN CN201810833031.3A patent/CN108900856B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010032229A1 (en) * | 2008-09-22 | 2010-03-25 | France Telecom | Frame rate up conversion method and system |
CN105430532A (zh) * | 2015-11-18 | 2016-03-23 | 南京创维信息技术研究院有限公司 | 一种视频数据传输自适应调整的控制方法及其系统 |
CN107547154A (zh) * | 2016-06-23 | 2018-01-05 | 华为技术有限公司 | 一种建立视频流量预测模型的方法及装置 |
CN106937115A (zh) * | 2017-03-02 | 2017-07-07 | 杭州当虹科技有限公司 | 在视频编码中对比特数预测器进行比特数训练的方法 |
CN108305296A (zh) * | 2017-08-30 | 2018-07-20 | 深圳市腾讯计算机系统有限公司 | 图像描述生成方法、模型训练方法、设备和存储介质 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110339567A (zh) * | 2019-07-17 | 2019-10-18 | 三星电子(中国)研发中心 | 系统资源配置、场景预测模型训练方法和装置 |
CN112511482A (zh) * | 2019-09-16 | 2021-03-16 | 华为技术有限公司 | 媒体数据传输方法、装置及系统 |
CN111327865A (zh) * | 2019-11-05 | 2020-06-23 | 杭州海康威视系统技术有限公司 | 视频传输方法、装置及设备 |
CN111327865B (zh) * | 2019-11-05 | 2021-12-28 | 杭州海康威视系统技术有限公司 | 视频传输方法、装置及设备 |
CN111866058A (zh) * | 2020-05-25 | 2020-10-30 | 西安万像电子科技有限公司 | 数据处理方法及系统 |
CN111866058B (zh) * | 2020-05-25 | 2024-02-27 | 西安万像电子科技有限公司 | 数据处理方法及系统 |
CN113301398A (zh) * | 2020-07-27 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 信息处理方法及系统、服务端设备、客户端设备 |
CN113301398B (zh) * | 2020-07-27 | 2022-12-02 | 阿里巴巴集团控股有限公司 | 信息处理方法及系统、服务端设备、客户端设备 |
CN112604286B (zh) * | 2020-12-29 | 2022-12-13 | 珠海金山数字网络科技有限公司 | 一种游戏技能同步执行方法及装置 |
CN112604286A (zh) * | 2020-12-29 | 2021-04-06 | 珠海金山网络游戏科技有限公司 | 一种游戏技能同步执行方法及装置 |
CN112835641A (zh) * | 2021-02-02 | 2021-05-25 | 上海臣星软件技术有限公司 | 应用程序运行功能的配置方法和装置 |
CN113395512A (zh) * | 2021-05-27 | 2021-09-14 | 北京达佳互联信息技术有限公司 | 卡顿检测方法、装置、卡顿检测服务器及存储介质 |
CN114401447A (zh) * | 2021-12-20 | 2022-04-26 | 北京字节跳动网络技术有限公司 | 一种视频卡顿预测方法、装置、设备和介质 |
CN114339402A (zh) * | 2021-12-31 | 2022-04-12 | 北京字节跳动网络技术有限公司 | 视频播放完成率预测方法、装置、介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108900856B (zh) | 2020-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108900856A (zh) | 一种视频帧率预测方法、装置及设备 | |
CN105187930B (zh) | 基于视频直播的互动方法及装置 | |
CN105338368B (zh) | 一种视频的直播流转点播数据的方法、装置及系统 | |
US9924205B2 (en) | Video remote-commentary synchronization method and system, and terminal device | |
CN104822090B (zh) | 视频播放的方法、装置和系统 | |
CN104967902B (zh) | 视频分享方法、装置及系统 | |
CN108877741A (zh) | 一种屏幕亮度调节方法及终端设备 | |
CN106791958A (zh) | 位置标记信息生成方法及装置 | |
CN104469143A (zh) | 视频分享方法及装置 | |
CN109547644A (zh) | 一种信息显示方法及终端 | |
CN108255382A (zh) | 一种悬浮菜单内容推荐方法及装置 | |
CN109831689A (zh) | 一种数据缓冲方法及移动终端 | |
CN110248245A (zh) | 一种视频定位方法、装置、移动终端及存储介质 | |
CN107635110A (zh) | 一种视频截图方法及终端 | |
CN104036536A (zh) | 一种定格动画的生成方法和装置 | |
CN109168038A (zh) | 一种资源的处理方法、装置及设备 | |
CN108391123A (zh) | 一种生成视频的方法及终端 | |
CN105516784A (zh) | 虚拟物品显示方法及装置 | |
CN103458286A (zh) | 一种进行电视频道切换的方法和装置 | |
CN109816679A (zh) | 一种图片处理方法及终端设备 | |
CN108519847A (zh) | 一种录屏方法及终端 | |
CN108810226A (zh) | 一种电量预警方法及移动终端 | |
CN108401179B (zh) | 一种基于虚拟物品的动画播放方法、装置和移动终端 | |
CN108009031A (zh) | 一种应用程序的控制方法及移动终端 | |
CN108744495A (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 |