CN107566795A - 一种提高实时画面流畅度的方法、装置及*** - Google Patents
一种提高实时画面流畅度的方法、装置及*** Download PDFInfo
- Publication number
- CN107566795A CN107566795A CN201710786940.1A CN201710786940A CN107566795A CN 107566795 A CN107566795 A CN 107566795A CN 201710786940 A CN201710786940 A CN 201710786940A CN 107566795 A CN107566795 A CN 107566795A
- Authority
- CN
- China
- Prior art keywords
- gop
- delay time
- module
- receiving
- time
- 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
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种提高实时画面流畅度的方法、装置及***,用以解决现有技术中存在的网络环境较差导致实时画面流畅性较差问题。所述方法具体包括:接收端接收发送端发送的第一图像组GOP,并确定所述第一GOP的延迟时间;所述接收端基于所述第一GOP的延迟时间预测第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;所述接收端将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。
Description
技术领域
本发明涉及无线通信技术领域,特别涉及一种提高实时画面流畅度的方法、装置及***。
背景技术
视频监控是安全防范***的重要组成部分,视频监控的基本业务功能是提供实时监视的手段,并将被监视画面的视频数据通过网络发送至客户端。
视频数据通过网络传回客户端,主机可对图像进行实时观看、录入、回放、调出及存储等操作。从而实现视频监控。然而,当网络环境较差时,会导致视频数据的传送速率很慢,甚至会出现传送失败的问题,而使得监控侧的视频画面卡顿甚至画面停滞,无法保证视频画面的流畅性,影响用户体验效果。
发明内容
本发明实施例提供一种提高实时画面流畅度的方法、装置及***,用以解决现有技术中存在的网络环境较差导致实时画面流畅性较差问题。
第一方面,本发明实施例提供了一种提高实时画面流畅度的方法,包括:
接收端接收发送端发送的第一图像组GOP,并确定所述第一GOP的延迟时间;
所述接收端基于所述第一GOP的延迟时间预测第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;
所述接收端将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。
本发明实施例中接收端接收发送端发送的图像组GOP,并确定所述GOP的延迟时间。然后所述接收端基于所述GOP的延迟时间预测第二GOP的延迟时间,并将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。本发明实施例中通过预测未来一个GOP的延迟时间来确定实时画面是否存在卡顿的风险,从而在确定存在卡顿风险时及时对GOP的分辨率和/或帧率进行调整,进而保证实时画面的流畅性,提升用户体验效果。
结合第一方面,在第一方面的第一种可能的实施方式中,接收端确定所述第一GOP的延迟时间,包括:
所述接收端确定接收所述第一GOP时所占用的第一时长,以及根据所述第一GOP中第一个视频帧携带的时间戳和最后一个视频帧携带的时间戳确定第二时长;
所述接收端将所述第一时长与所述第二时长之间的差值作为所述第一GOP的延迟时间。
结合第一方面,在第一方面的第二种可能的实施方式中,所述接收端通过如下公式预测所述第二GOP的延迟时间:
其中,ΔT′为预测的所述第二GOP的延迟时间;ΔTi为所述接收端连续接收到的N个GOP中第i个GOP的延迟时间,N为大于或等于1的正整数;wi为所述第i个GOP对应的权重值,并且
结合第一方面,在第一方面的第三种可能的实施方式中,在接收端确定所述第一GOP的延迟时间之前,所述方法还包括:
所述接收端确定所述第一GOP包括的视频帧的序列号连续。
结合第一方面或第一方面的第一种可能的实施方式至第三种可能的实施方式中的任一种,在第一方面的第四种可能的实施方式中,在接收端接收发送端发送的第一图像组GOP之后,所述方法还包括:
所述接收端确定所述第一GOP包括的视频帧的序列号不连续,并确定所述第一GOP包括的视频帧的序列号中缺失的序列号;
所述接收端将所述缺失的序列号发送给所述发送端。
第二方面,本发明实施例提供了一种提高实时画面流畅度的方法,包括:
发送端向接收端发送第一图像组GOP;
所述发送端接收所述接收端发送的预测延迟时间;所述预测延迟时间为所述接收端基于所述第一GOP的延迟时间所预测的第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;
在确定所述预测延迟时间大于预设阈值时,所述发送端基于所述预测延迟时间降低所述第二GOP的分辨率和/或帧率。
结合第二方面,在第二方面的第一种可能的实施方式中,在发送端向接收端发送第一图像组GOP之后,所述方法还包括:
所述发送端接收所述接收端发送的缺失序列号;所述缺失序列号为到达所述接收端的所述第一GOP中所包括的视频帧的序列号中所缺失的序列号;
所述发送端在确定所述第一GOP包括的视频帧的序列号中存在所述缺失序列号时,降低所述第二GOP的分辨率和/或帧率。
结合第二方面或第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,在发送端接收所述接收端发送的预测延迟时间之后,所述方法还包括:
所述发送端在确定连续接收到的M个预测延迟时间均小于或等于所述预设阈值时,提高所述第二GOP的分辨率和/或帧率;所述M为大于或等于1的正整数。
第三方面,本发明实施例提供了一种提高实时画面流畅度的装置,所述装置应用于接收端,所述装置包括:
接收模块,用于接收发送端发送的第一图像组GOP;
确定模块,用于确定所述接收模块接收的所述第一GOP的延迟时间;
预测模块,用于基于所述确定模块确定的所述第一GOP的延迟时间预测第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;
发送模块,用于将所述预测模块预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。
结合第三方面,在第三方面的第一种可能的实施方式中,所述确定模块,具体用于:
确定接收所述第一GOP时所占用的第一时长,以及根据所述第一GOP中第一个视频帧携带的时间戳和最后一个视频帧携带的时间戳确定第二时长;
将所述第一时长与所述第二时长之间的差值作为所述第一GOP的延迟时间。
结合第三方面,在第三方面的第二种可能的实施方式中,所述预测模块通过如下公式预测所述第二GOP的延迟时间:
其中,ΔT′为预测的所述第二GOP的延迟时间;ΔTi为所述接收模块连续接收到的N个GOP中第i个GOP的延迟时间,N为大于或等于1的正整数;wi为所述第i个GOP对应的权重值,并且
结合第三方面,在第三方面的第三种可能的实施方式中,所述确定模块,还用于:
在确定所述接收模块接收的所述第一GOP的延迟时间之前,确定所述第一GOP包括的视频帧的序列号连续。
结合第三方面或第三方面的第一种可能的实施方式至第三种可能的实施方式中的任一种,在第三方面的第四种可能的实施方式中,所述确定模块,还用于:
在所述接收模块接收发送端发送的第一图像组GOP之后,确定所述第一GOP包括的视频帧的序列号不连续,并确定所述第一GOP包括的视频帧的序列号中缺失的序列号;
所述发送模块,还用于:
将所述确定模块确定的所述缺失的序列号发送给所述发送端。
第四方面,本发明实施例提供了一种提高实时画面流畅度的装置,所述装置应用于发送端,所述装置包括:
发送模块,用于向接收端发送第一图像组GOP;
接收模块,用于在所述发送模块发送所述第一GOP之后,接收所述接收端发送的预测延迟时间;所述预测延迟时间为所述接收端基于所述第一GOP的延迟时间所预测的第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;
确定模块,用于确定所述接收模块接收的所述预测延迟时间大于预设阈值;
调整模块,用于在所述确定模块确定所述预测延迟时间大于预设阈值时,基于所述接收模块接收的所述预测延迟时间降低所述第二GOP的分辨率和/或帧率。
结合第四方面,在第四方面的第一种可能的实施方式中,所述接收模块,还用于:
在所述发送模块向接收端发送第一图像组GOP之后,接收所述接收端发送的缺失序列号;所述缺失序列号为到达所述接收端的所述第一GOP中所包括的视频帧的序列号中所缺失的序列号;
所述确定模块,还用于:
确定所述第一GOP包括的视频帧的序列号中存在所述接收模块接收的所述缺失序列号;
所述调整模块,还用于:
在所述确定模块确定所述第一GOP包括的视频帧的序列号中存在所述缺失序列号时,降低所述第二GOP的分辨率和/或帧率。
结合第四方面或第四方面的第一种可能的实施方式,在第四方面的第二种可能的实施方式中,所述确定模块,还用于:
在所述接收模块接收所述接收端发送的预测延迟时间之后,确定所述接收模块连续接收到的M个预测延迟时间均小于或等于所述预设阈值;
所述调整模块,还用于:
在所述确定模块确定所述接收模块连续接收到的M个预测延迟时间均小于或等于所述预设阈值时,提高所述第二GOP的分辨率和/或帧率;所述M为大于或等于1的正整数。
第五方面,本发明实施例提供了一种提高实时画面流畅度的***,包括:
如第三方面或者第三方面的任一种可能的实施方式中所述的接收端;
如第四方面或者第四方面的任一种可能的实施方式中所述的发送端。
本发明实施例中接收端接收发送端发送的图像组GOP,并确定所述GOP的延迟时间。然后所述接收端基于所述GOP的延迟时间预测第二GOP的延迟时间,并将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。本发明实施例中通过预测未来一个GOP的延迟时间来确定实时画面是否存在卡顿的风险,从而在确定存在卡顿风险时及时对GOP的分辨率和/或帧率进行调整,进而保证实时画面的流畅性,提升用户体验效果。
附图说明
图1为本发明实施例提供的一种提高实时画面流畅度方法的流程示意图;
图2为本发明实施例提供的另一种提高实时画面流畅度方法的流程示意图;
图3为本发明实施例提供的一种提高实时画面流畅度装置的结构示意图;
图4为本发明实施例提供的一种提高实时画面流畅度装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供一种提高实时画面流畅度的方法、装置及***,用以解决现有技术中存在的网络环境较差导致实时画面流畅性较差问题。其中,方法和装置是基于同一发明构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。
本发明实施例可以应用的场景包括但不限于:实时监控、视屏通话、视频会议等。
为了使得本发明的实施例更容易被理解,下面,首先对本发明的实施例中涉及的一些描述加以说明,这些说明不应视为对本发明所要求的保护范围的限定。
视频图像是由多个连续的图片组成,每一张图片即为一个视频帧。帧是组成视频图像的基本单位。视频帧通常分为三类:I帧、B帧、P帧。
I帧为视频图像中的关键帧。I帧是一个全帧压缩的编码帧。对I帧进行解码时不需要参考其他视频帧。
B帧为双向预测编码帧。B帧记录的是本帧与之前的视频帧以及之后的视频帧的差别。对B帧进行解码时,不仅要参考之前的视频帧,还要参考之后的视频帧。
P帧为前向预测编码帧。P帧记录的是本帧与之前的视频帧的差别。对P帧进行解码时需要参考之前的视频帧。
图像组(英文:Group of Pictures,简称:GOP)为一组连续的画面,由一个I帧和若干个B/P帧。
需要说明的是,在本发明实施例的描述中,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。同时,应当理解,在本发明实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
下面结合附图对本发明实施例所提供的方案作具体说明。
参阅图1所示,为本发明实施例提供的一种提高实时画面流畅度的方法的流程图,所述方法具体可以包括如下:
S101,接收端接收发送端发送的第一图像组GOP。执行完步骤S101之后,执行步骤S102。
S102,所述接收端确定所述第一GOP的延迟时间。执行完步骤S102之后,执行步骤S103。
S103,所述接收端基于所述第一GOP的延迟时间预测第二GOP的延迟时间。执行完步骤S103之后,执行步骤S104。
其中,所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP。
S104,所述接收端将预测的所述延迟时间发送给所述发送端。
从而所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。
本发明实施例中接收端接收发送端发送的图像组GOP,并确定所述GOP的延迟时间。然后所述接收端基于所述GOP的延迟时间预测第二GOP的延迟时间,并将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。本发明实施例中通过预测未来一个GOP的延迟时间来确定实时画面是否存在卡顿的风险,从而在确定存在卡顿风险时及时对GOP的分辨率和/或帧率进行调整,进而保证实时画面的流畅性,提升用户体验效果。
可选的,在执行步骤S101,接收端接收发送端发送的第一图像组GOP之后,执行步骤S102,接收端确定所述第一GOP的延迟时间之前,执行步骤S101a。
S101a,所述接收端确定所述第一GOP包括的视频帧的序列号是否连续。若是,执行步骤S102;若否,执行步骤S105。
S105,所述接收端确定所述第一GOP包括的视频帧的序列号中缺失的序列号,并将所述缺失的序列号发送给所述发送端。
从而,所述发送端在接收到所述缺失的序列号后,在确定所述第一GOP包括的视频帧的序列号中存在所述缺失序列号时,降低所述第二GOP的分辨率和/或帧率。
具体的,所述发送端在确定所述第一GOP包括的视频帧的序列号中存在所述缺失序列号时,当所述第二GOP的分辨率大于预设分辨率时,所述发送端降低所述第二GOP的分辨率;当所述第二GOP的分辨率小于或等于预设分辨率时,所述发送端降低所述第二GOP的帧率。需要说明的是,所述第二GOP经过降低后的分辨率应大于或等于预设分辨率,经过降低后的帧率应大于或等于预设帧率。
其中,所述预设分辨率可以为发送端支持的最低分辨率。所述预设帧率可以为发送端支持的最低帧率,也可以为能够保证人眼看到连贯图像的最低帧率(例如,当帧率小于10fps时,人眼看到的不再是连贯的图像而是一张张图片,则预设帧率为10fps),预设帧率可以根据实际场景具体确定。
在一种可能的实现方式中,步骤S102,所述接收端确定所述第一GOP的延迟时间,具体可以通过如下方式实现:
A1,所述接收端确定接收所述第一GOP时所占用的第一时长,以及根据所述第一GOP中第一个视频帧携带的时间戳和最后一个视频帧携带的时间戳确定第二时长。
具体的,接收端通过如下方式确定接收所述第一GOP时所占用的第一时长:
接收端记录接收到所述第一GOP的第一帧(即所述第一GOP的I帧)的时间t1′,以及接收到所述第一GOP的最后一帧(所述最后一帧为P帧或B帧)的时间t′n。则接收端接收所述第一GOP时所占用的第一时长Δt′即为:(t′n-t1′)。
所述第一GOP的每一个视频帧中均携带时间戳,其中,时间戳为该视频帧的采样时间,则接收端通过如下方式确定第二时长:
接收端确定所述第一GOP的第一帧中携带(即所述第一GOP的I帧)的时间戳t1,以及所述第一GOP的最后一帧中携带的时间戳tn。则第二时长Δt即为:(tn-t1)。
时间戳表示一个时间点,视频帧在该时间点处于已经过编码处理的状态。
A2,所述接收端将所述第一时长与所述第二时长之间的差值作为所述第一GOP的延迟时间。
即,所述第一GOP的延迟时间ΔT为Δt′-Δt。
在一种可能的实现方式中,步骤S103,所述接收端基于所述第一GOP的延迟时间预测第二GOP的延迟时间,可以通过如下方式实现:
所述接收端通过如下公式预测所述第二GOP的延迟时间:
其中,ΔT′为预测的所述第二GOP的延迟时间;ΔTi为所述接收端连续接收到的N个GOP中第i个GOP的延迟时间,N为大于或等于1的正整数;wi为所述第i个GOP对应的权重值,并且
需要说明的是,由于越靠近当前时间的GOP,它的延迟时间对所述第二GOP的延迟时间的预测越有影响力,因此对应的权重应该越大;反之,影响力越小,对应的权重应该越小。具体的,每个GOP对应的权重值可通过经验法或试算法确定出。以N为3为例,按照时间先后顺序,三个GOP的延迟时间依次为△T1,△T2,△T3,三个GOP的权重值依次为w1,w2,w3,且w1+w2+w3=1,w1<w2<w3。则预测得到的所述第二GOP的延迟时间为ΔT′=w1×ΔT1+w2×ΔT2+w3×ΔT3。
可选的,在执行完步骤S104,所述接收端将预测的所述延迟时间发送给所述发送端之后,执行步骤S106。
S106,发送端接收接收端发送的预测的所述延迟时间,并判断预测的所述延迟时间是否大于预设阈值;若是,执行步骤S107;若否,执行步骤S110。
当接收端有多个时,每个接收端均将预测的所述第二GOP的延迟时间发送给发送端,从而发送端在接收到各个接收端发送的预测的所述第二GOP的延迟时间后,确定所有接收端发送的延迟时间的平均值,然后将所述平均值作为第二GOP的预测的延迟时间,之后判断预测的延迟时间是否大于预设阈值。
S107,发送端判断第二GOP的分辨率是否大于预设分辨率;若是,执行步骤S108;若否,执行步骤S109。
S108,发送端根据预测的所述延迟时间将第二GOP降低对应等级的分辨率。
需要说明的是,第二GOP经过降低后的分辨率应大于或等于预设分辨率。
S109,发送端降低第二GOP的帧率。
需要说明的是,所述第二GOP经过降低后的帧率应大于或等于预设帧率。
S110,所述发送端在确定连续接收到的M个预测延迟时间均小于或等于所述预设阈值时,提高所述第二GOP的分辨率和/或帧率。
所述M为大于或等于1的正整数,所述M可以根据经验确定。
本发明实施例中接收端接收发送端发送的图像组GOP,并确定所述GOP的延迟时间。然后所述接收端基于所述GOP的延迟时间预测第二GOP的延迟时间,并将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。本发明实施例中通过预测未来一个GOP的延迟时间来确定实时画面是否存在卡顿的风险,从而在确定存在卡顿风险时及时对GOP的分辨率和/或帧率进行调整,进而保证实时画面的流畅性,提升用户体验效果。
参阅图2所示,为本发明实施例提供的另一种提高实时画面流畅度的方法的流程图,所述方法具体可以包括如下:
S201,发送端向接收端发送第一图像组GOP。
S202,所述发送端接收所述接收端发送的预测延迟时间。
其中,所述预测延迟时间为所述接收端基于所述第一GOP的延迟时间所预测的第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP。
S203,在确定所述预测延迟时间大于预设阈值时,所述发送端基于所述预测延迟时间降低所述第二GOP的分辨率和/或帧率。
可选的,在发送端向接收端发送第一图像组GOP之后,所述方法还包括:
所述发送端接收所述接收端发送的缺失序列号;所述缺失序列号为到达所述接收端的所述第一GOP中所包括的视频帧的序列号中所缺失的序列号;
所述发送端在确定所述第一GOP包括的视频帧的序列号中存在所述缺失序列号时,降低所述第二GOP的分辨率和/或帧率。
可选的,在发送端接收所述接收端发送的预测延迟时间之后,所述方法还包括:
所述发送端在确定连续接收到的M个预测延迟时间均小于或等于所述预设阈值时,提高所述第二GOP的分辨率和/或帧率;所述M为大于或等于1的正整数。
本发明实施例中接收端接收发送端发送的图像组GOP,并确定所述GOP的延迟时间。然后所述接收端基于所述GOP的延迟时间预测第二GOP的延迟时间,并将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。本发明实施例中通过预测未来一个GOP的延迟时间来确定实时画面是否存在卡顿的风险,从而在确定存在卡顿风险时及时对GOP的分辨率和/或帧率进行调整,进而保证实时画面的流畅性,提升用户体验效果。
基于与图1对应的方法实施例的同一发明构思,本发明实施例提供一种提高实时画面流畅度的装置30,所述装置可以应用于接收端,该装置的结构示意图如图3所示,包括接收模块31,确定模块32、预测模块33以及发送模块34,其中:
接收模块31,用于接收发送端发送的第一图像组GOP。
确定模块32,用于确定所述接收模块31接收的所述第一GOP的延迟时间。
预测模块33,用于基于所述确定模块32确定的所述第一GOP的延迟时间预测第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP。
发送模块34,用于将所述预测模块33预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。
可选的,所述确定模块32,具体用于:确定接收所述第一GOP时所占用的第一时长,以及根据所述第一GOP中第一个视频帧的时间戳以及最后一个视频帧的时间戳确定第二时长;将所述第一时长与所述第二时长之间的差值作为所述第一GOP的延迟时间。
可选的,所述预测模块33通过如下公式预测所述第二GOP的延迟时间:
其中,ΔT′为预测的所述第二GOP的延迟时间;ΔTi为所述接收模块31连续接收到的N个GOP中第i个GOP的延迟时间,N为大于或等于1的正整数;wi为所述第i个GOP对应的权重值,并且
可选的,所述确定模块32,还用于:在确定所述接收模块31接收的所述第一GOP的延迟时间之前,确定所述第一GOP包括的视频帧的序列号连续。
可选的,所述确定模块32,还用于:在所述接收模块31接收发送端发送的第一图像组GOP之后,确定所述第一GOP包括的视频帧的序列号不连续,并确定所述第一GOP包括的视频帧的序列号中缺失的序列号;所述发送模块34,还用于:将所述确定模块32确定的所述缺失的序列号发送给所述发送端。
基于与图2对应的方法实施例的同一发明构思,本发明实施例提供一种提高实时画面流畅度的装置40,所述装置可以应用于发送端,该装置的结构示意图如图4所示,包括发送模块41,接收模块42、确定模块43以及调整模块44,其中:
发送模块41,用于向接收端发送第一图像组GOP。
接收模块42,用于在所述发送模块41发送所述第一GOP之后,接收所述接收端发送的预测延迟时间;所述预测延迟时间为所述接收端基于所述第一GOP的延迟时间所预测的第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP。
确定模块43,用于确定所述接收模块42接收的所述预测延迟时间大于预设阈值。
调整模块44,用于在所述确定模块43确定所述预测延迟时间大于预设阈值时,基于所述接收模块42接收的所述预测延迟时间降低所述第二GOP的分辨率和/或帧率。
可选的,所述接收模块42,还用于:在所述发送模块向接收端发送第一图像组GOP之后,接收所述接收端发送的缺失序列号;所述缺失序列号为到达所述接收端的所述第一GOP中所包括的视频帧的序列号中所缺失的序列号;
所述确定模块43,还用于:确定所述第一GOP包括的视频帧的序列号中存在所述接收模块42接收的所述缺失序列号;
所述调整模块44,还用于:在所述确定模块43确定所述第一GOP包括的视频帧的序列号中存在所述缺失序列号时,降低所述第二GOP的分辨率和/或帧率。
可选的,所述确定模块43,还用于:在所述接收模块42接收所述接收端发送的预测延迟时间之后,确定所述接收模块42连续接收到的M个预测延迟时间均小于或等于所述预设阈值;
所述调整模块44,还用于:在所述确定模块43确定所述接收模块42连续接收到的M个预测延迟时间均小于或等于所述预设阈值时,提高所述第二GOP的分辨率和/或帧率;所述M为大于或等于1的正整数。
基于与图1对应的方法实施例的同一发明构思,本发明实施例提供一种提高实时画面流畅度的***,其特征在于,包括接收端以及发送端,其中:
接收端,用于执行图1所示的方法实施例对应的方法。
发送端,用于执行图2所示的方法实施例对应的方法。
本发明实施例中接收端接收发送端发送的图像组GOP,并确定所述GOP的延迟时间。然后所述接收端基于所述GOP的延迟时间预测第二GOP的延迟时间,并将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。本发明实施例中通过预测未来一个GOP的延迟时间来确定实时画面是否存在卡顿的风险,从而在确定存在卡顿风险时及时对GOP的分辨率和/或帧率进行调整,进而保证实时画面的流畅性,提升用户体验效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (17)
1.一种提高实时画面流畅度的方法,其特征在于,包括:
接收端接收发送端发送的第一图像组GOP,并确定所述第一GOP的延迟时间;
所述接收端基于所述第一GOP的延迟时间预测第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;
所述接收端将预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。
2.如权利要求1所述的方法,其特征在于,接收端确定所述第一GOP的延迟时间,包括:
所述接收端确定接收所述第一GOP时所占用的第一时长,以及根据所述第一GOP中第一个视频帧携带的时间戳和最后一个视频帧携带的时间戳确定第二时长;
所述接收端将所述第一时长与所述第二时长之间的差值作为所述第一GOP的延迟时间。
3.如权利要求1所述的方法,其特征在于,所述接收端通过如下公式预测所述第二GOP的延迟时间:
<mrow>
<msup>
<mi>&Delta;T</mi>
<mo>&prime;</mo>
</msup>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msub>
<mi>w</mi>
<mi>i</mi>
</msub>
<mo>&times;</mo>
<msub>
<mi>&Delta;T</mi>
<mi>i</mi>
</msub>
<mo>;</mo>
</mrow>
其中,ΔT′为预测的所述第二GOP的延迟时间;ΔTi为所述接收端连续接收到的N个GOP中第i个GOP的延迟时间,N为大于或等于1的正整数;wi为所述第i个GOP对应的权重值,并且
4.如权利要求1所述的方法,其特征在于,在接收端确定所述第一GOP的延迟时间之前,所述方法还包括:
所述接收端确定所述第一GOP包括的视频帧的序列号连续。
5.如权利要求1至4任一项所述的方法,其特征在于,在接收端接收发送端发送的第一图像组GOP之后,所述方法还包括:
所述接收端确定所述第一GOP包括的视频帧的序列号不连续,并确定所述第一GOP包括的视频帧的序列号中缺失的序列号;
所述接收端将所述缺失的序列号发送给所述发送端。
6.一种提高实时画面流畅度的方法,其特征在于,包括:
发送端向接收端发送第一图像组GOP;
所述发送端接收所述接收端发送的预测延迟时间;所述预测延迟时间为所述接收端基于所述第一GOP的延迟时间所预测的第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;
在确定所述预测延迟时间大于预设阈值时,所述发送端基于所述预测延迟时间降低所述第二GOP的分辨率和/或帧率。
7.如权利要求6所述的方法,其特征在于,在发送端向接收端发送第一图像组GOP之后,所述方法还包括:
所述发送端接收所述接收端发送的缺失序列号;所述缺失序列号为到达所述接收端的所述第一GOP中所包括的视频帧的序列号中所缺失的序列号;
所述发送端在确定所述第一GOP包括的视频帧的序列号中存在所述缺失序列号时,降低所述第二GOP的分辨率和/或帧率。
8.如权利要求6或7所述的方法,其特征在于,在发送端接收所述接收端发送的预测延迟时间之后,所述方法还包括:
所述发送端在确定连续接收到的M个预测延迟时间均小于或等于所述预设阈值时,提高所述第二GOP的分辨率和/或帧率;所述M为大于或等于1的正整数。
9.一种提高实时画面流畅度的装置,其特征在于,所述装置应用于接收端,所述装置包括:
接收模块,用于接收发送端发送的第一图像组GOP;
确定模块,用于确定所述接收模块接收的所述第一GOP的延迟时间;
预测模块,用于基于所述确定模块确定的所述第一GOP的延迟时间预测第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;
发送模块,用于将所述预测模块预测的所述延迟时间发送给所述发送端,使得所述发送端基于预测的所述延迟时间降低所述第二GOP的分辨率和/或帧率。
10.如权利要求9所述的装置,其特征在于,所述确定模块,具体用于:
确定接收所述第一GOP时所占用的第一时长,以及根据所述第一GOP中第一个视频帧携带的时间戳和最后一个视频帧携带的时间戳确定第二时长;
将所述第一时长与所述第二时长之间的差值作为所述第一GOP的延迟时间。
11.如权利要求9所述的装置,其特征在于,所述预测模块通过如下公式预测所述第二GOP的延迟时间:
<mrow>
<msup>
<mi>&Delta;T</mi>
<mo>&prime;</mo>
</msup>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msub>
<mi>w</mi>
<mi>i</mi>
</msub>
<mo>&times;</mo>
<msub>
<mi>&Delta;T</mi>
<mi>i</mi>
</msub>
<mo>;</mo>
</mrow>
其中,ΔT′为预测的所述第二GOP的延迟时间;ΔTi为所述接收模块连续接收到的N个GOP中第i个GOP的延迟时间,N为大于或等于1的正整数;wi为所述第i个GOP对应的权重值,并且
12.如权利要求9所述的装置,其特征在于,所述确定模块,还用于:
在确定所述接收模块接收的所述第一GOP的延迟时间之前,确定所述第一GOP包括的视频帧的序列号连续。
13.如权利要求9至12任一项所述的装置,其特征在于,所述确定模块,还用于:
在所述接收模块接收发送端发送的第一图像组GOP之后,确定所述第一GOP包括的视频帧的序列号不连续,并确定所述第一GOP包括的视频帧的序列号中缺失的序列号;
所述发送模块,还用于:
将所述确定模块确定的所述缺失的序列号发送给所述发送端。
14.一种提高实时画面流畅度的装置,其特征在于,所述装置应用于发送端,所述装置包括:
发送模块,用于向接收端发送第一图像组GOP;
接收模块,用于在所述发送模块发送所述第一GOP之后,接收所述接收端发送的预测延迟时间;所述预测延迟时间为所述接收端基于所述第一GOP的延迟时间所预测的第二GOP的延迟时间;所述第二GOP为所述发送端在发送完所述第一GOP后下一次要发送的GOP;
确定模块,用于确定所述接收模块接收的所述预测延迟时间大于预设阈值;
调整模块,用于在所述确定模块确定所述预测延迟时间大于预设阈值时,基于所述接收模块接收的所述预测延迟时间降低所述第二GOP的分辨率和/或帧率。
15.如权利要求14所述的装置,其特征在于,所述接收模块,还用于:
在所述发送模块向接收端发送第一图像组GOP之后,接收所述接收端发送的缺失序列号;所述缺失序列号为到达所述接收端的所述第一GOP中所包括的视频帧的序列号中所缺失的序列号;
所述确定模块,还用于:
确定所述第一GOP包括的视频帧的序列号中存在所述接收模块接收的所述缺失序列号;
所述调整模块,还用于:
在所述确定模块确定所述第一GOP包括的视频帧的序列号中存在所述缺失序列号时,降低所述第二GOP的分辨率和/或帧率。
16.如权利要求14或15所述的装置,其特征在于,所述确定模块,还用于:
在所述接收模块接收所述接收端发送的预测延迟时间之后,确定所述接收模块连续接收到的M个预测延迟时间均小于或等于所述预设阈值;
所述调整模块,还用于:
在所述确定模块确定所述接收模块连续接收到的M个预测延迟时间均小于或等于所述预设阈值时,提高所述第二GOP的分辨率和/或帧率;所述M为大于或等于1的正整数。
17.一种提高实时画面流畅度的***,其特征在于,包括:
如权利要求9至13任一项所述的接收端;
如权利要求14至16任一项所述的发送端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710786940.1A CN107566795B (zh) | 2017-09-04 | 2017-09-04 | 一种提高实时画面流畅度的方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710786940.1A CN107566795B (zh) | 2017-09-04 | 2017-09-04 | 一种提高实时画面流畅度的方法、装置及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107566795A true CN107566795A (zh) | 2018-01-09 |
CN107566795B CN107566795B (zh) | 2019-11-19 |
Family
ID=60978908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710786940.1A Active CN107566795B (zh) | 2017-09-04 | 2017-09-04 | 一种提高实时画面流畅度的方法、装置及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107566795B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120933A (zh) * | 2018-10-11 | 2019-01-01 | 广州酷狗计算机科技有限公司 | 动态调整码率的方法、装置、设备及存储介质 |
CN110366003A (zh) * | 2019-06-24 | 2019-10-22 | 北京大米科技有限公司 | 视频数据的抗抖动处理方法、装置、电子设备和存储介质 |
CN110740284A (zh) * | 2019-10-30 | 2020-01-31 | 中电福富信息科技有限公司 | 一种基于网络状况调节手机视频通话动态码率的方法 |
CN113068001A (zh) * | 2019-12-16 | 2021-07-02 | 浙江宇视科技有限公司 | 基于级联摄像机的数据处理方法、装置、设备和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004048597A (ja) * | 2002-07-15 | 2004-02-12 | Sony Corp | 画像データ再生装置及び方法 |
CN102752212A (zh) * | 2012-07-12 | 2012-10-24 | 苏州阔地网络科技有限公司 | 一种传输速率控制方法及*** |
CN105791735A (zh) * | 2014-12-24 | 2016-07-20 | 中国电信股份有限公司 | 用于视频通话码流动态调整的方法和*** |
-
2017
- 2017-09-04 CN CN201710786940.1A patent/CN107566795B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004048597A (ja) * | 2002-07-15 | 2004-02-12 | Sony Corp | 画像データ再生装置及び方法 |
CN102752212A (zh) * | 2012-07-12 | 2012-10-24 | 苏州阔地网络科技有限公司 | 一种传输速率控制方法及*** |
CN105791735A (zh) * | 2014-12-24 | 2016-07-20 | 中国电信股份有限公司 | 用于视频通话码流动态调整的方法和*** |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120933A (zh) * | 2018-10-11 | 2019-01-01 | 广州酷狗计算机科技有限公司 | 动态调整码率的方法、装置、设备及存储介质 |
CN110366003A (zh) * | 2019-06-24 | 2019-10-22 | 北京大米科技有限公司 | 视频数据的抗抖动处理方法、装置、电子设备和存储介质 |
CN110740284A (zh) * | 2019-10-30 | 2020-01-31 | 中电福富信息科技有限公司 | 一种基于网络状况调节手机视频通话动态码率的方法 |
CN113068001A (zh) * | 2019-12-16 | 2021-07-02 | 浙江宇视科技有限公司 | 基于级联摄像机的数据处理方法、装置、设备和介质 |
CN113068001B (zh) * | 2019-12-16 | 2022-10-04 | 浙江宇视科技有限公司 | 基于级联摄像机的数据处理方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107566795B (zh) | 2019-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3606050B1 (en) | Video frame coding method, terminal, and storage medium | |
CN107566795A (zh) | 一种提高实时画面流畅度的方法、装置及*** | |
WO2016131223A1 (zh) | 一种视频帧丢帧方法及视频发送装置 | |
US8666042B2 (en) | Techniques for performing key frame requests in media servers and endpoint devices | |
CN106817585B (zh) | 一种利用长期参考帧的视频编码方法、电子设备和*** | |
US9264737B2 (en) | Error resilient transmission of random access frames and global coding parameters | |
CN110708570B (zh) | 视频的编码码率确定方法、装置、设备及存储介质 | |
CN110996035B (zh) | 信息发送方法及装置 | |
CN111093083A (zh) | 数据传输方法及装置 | |
KR101539812B1 (ko) | 동화상 데이터의 배신 방법 | |
CN111641804A (zh) | 视频数据处理方法和装置、终端、摄像头及视频会议*** | |
CN108924485B (zh) | 客户端实时视频流中断处理方法及***、监控*** | |
CN115396702B (zh) | 视频发送方法、装置、电子设备及存储介质 | |
US20120106632A1 (en) | Method and apparatus for error resilient long term referencing block refresh | |
CN104053002A (zh) | 视频解码方法和视频解码装置 | |
JP2007208552A (ja) | 動画像復号装置 | |
US8681860B2 (en) | Moving picture compression apparatus and method of controlling operation of same | |
US8904024B2 (en) | System and method for low delay fast update for video streaming | |
CN117336534A (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN107734278B (zh) | 一种视频回放方法及相关装置 | |
CN112533029B (zh) | 一种视频分时传输方法、摄像装置、***和存储介质 | |
CN114679570A (zh) | 视频传输方法和装置、存储介质及电子装置 | |
CN116962613A (zh) | 数据传输方法及装置、计算机设备、存储介质 | |
US20090138933A1 (en) | Use of a Feedback Channel for Image Broadcasting | |
US9451288B2 (en) | Inferred key frames for fast initiation of video coding sessions |
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 |