CN113259660A - 基于动态编码帧的视频压缩传输方法、装置、设备及介质 - Google Patents
基于动态编码帧的视频压缩传输方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN113259660A CN113259660A CN202110650703.9A CN202110650703A CN113259660A CN 113259660 A CN113259660 A CN 113259660A CN 202110650703 A CN202110650703 A CN 202110650703A CN 113259660 A CN113259660 A CN 113259660A
- Authority
- CN
- China
- Prior art keywords
- video data
- video
- coding
- coding mode
- instruction
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 101
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000006835 compression Effects 0.000 title claims abstract description 23
- 238000007906 compression Methods 0.000 title claims abstract description 23
- 230000002159 abnormal effect Effects 0.000 claims abstract description 12
- 238000012544 monitoring process Methods 0.000 claims abstract description 11
- 238000012360 testing method Methods 0.000 claims description 58
- 238000005070 sampling Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 11
- 230000008569 process Effects 0.000 abstract description 10
- 238000012545 processing Methods 0.000 abstract description 7
- 230000008859 change Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000474 nursing effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明属于视频数据处理技术领域,解决了现有技术中通过网络不佳时视频画面质量不佳,所导致用户体验效果差的技术问题,提供了一种基于动态编码帧的视频压缩传输方法、装置、设备及介质。该方法包括:对第一编码方式编码的视频数据进行解码,当解码成功后;采用第二编码方式对视频数据编码后传输;对第二编码方式编码的视频数据进行监督,若存在数据异常,则采用第一编码方式对视频数据编码后传输;重复上述过程,直至视频结束;其中,第一编码方式的关键帧间隔时间小于第二编码方式的关键帧间隔时间。采用该方法根据视频实时情况,利用动态编码方式对视频数据选择合适的视频编码方式进行编码,可以保证视频流畅性和用户体验效果。
Description
技术领域
本发明涉及视频数据处理技术领域,尤其涉及基于动态编码帧的视频压缩传输方法、装置、设备及介质。
背景技术
随着视频技术的发展,市面上已有通过移动端实时查看摄像头终端采集的实时画面,从而掌握摄像头监控区域的目标对象的活动情况;这一技术在老人、婴幼儿看护中有着十分重要的意义,可以提高婴幼儿、老人看护的看护效率,在移动端查看摄像头终端的实时画面的具体过程是,摄像头终端将采集的实时画面以图像帧的形式进行缓存,形成视频流;完整的视频流包括多个I帧和多个P帧,I帧为关键帧,P帧为普通帧帧。
现有技术中,在移动端与摄像头端建立视频通信后,开始进行视频数据的传输,视频的质量与网络带宽息息相关,若网络好,则可以选择较高码率进行视频数据传输,此时视频画面质量高;若网络不好则只能选择合适的码率进行视频数据传输,此时视频画面质量低,然后随着人们对视频画面质量的要求越来越高,画面质量不佳时,会严重影响用户体验效果。
发明内容
有鉴于此,本发明实施例提供了一种基于动态编码帧的视频压缩传输方法、装置、设备及介质,用以解决现有技术中通过网络不佳时视频画面质量不佳,所导致用户体验效果差的技术问题。
本发明采用的技术方案是:
本发明提供了一种基于动态编码帧的视频压缩传输方法,所述方法包括:
对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令;
根据所述第一编码指令,采用第二编码方式对视频数据编码后传输;
对传输的利用所述第二编码方式编码的视频数据进行监督,若存在数据异常,则输出第二编码指令;
根据所述第二编码指令,采用第一编码方式对视频数据编码后传输;
重复对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令至根据所述第二编码指令,采用第一编码方式对视频数据编码后传输,直至视频结束;
其中,第一编码方式编码的视频数据的关键帧间隔时间小于第二编码方式编码的视频数据的关键帧间隔时间。
优选地,所述对传输的利用所述第二编码方式编码的视频数据进行监督的参数至少包括以下之一:视频数据解码结果、视频数据完整性、视频数据收发的延迟信息。
优选地,所述对传输的利用所述第二编码方式编码的视频数据进行监督,若存在数据异常,则输出第二编码指令包括:
实时获取视频数据的各帧图像的接收时间;
将所述第一延迟时长与预设的延迟阈值进行对比,若所述第一延迟时长大于所述延迟阈值,则输出第二编码指令;
其中,n为图像帧数量,St为第n帧图像的接收速度,T为接收n帧图像所需的总时间,Bi为第i帧图像的数据大小,St+1为第n+1帧图像的接收预测速度,St-1为第n-1帧图像的接收速度,∂为视频数据传输的平滑抖动系数,0<∂<1,T'为第一延迟时间,β为缓冲分配系数,0<β<1,Ms为视频数据发送端的剩余缓冲区容量,MR为视频数据接收端的剩余缓冲区容量。
优选地,所述将所述第一延迟时长与预设的延迟阈值进行对比,若所述第一延迟时长大于所述延迟阈值,则输出第二编码指令包括:
获取与视频数据中各帧图像对应的各所述第一延迟时长;
根据各所述第一延迟时长,建立数据收发延迟曲线;
根据所述数据收发延迟曲线,对所述数据收发曲线上相邻取样点的斜率递变方向进行统计,输出延迟持续增加对应的正向统计次数;
将所述正向统计次数与预设的延迟增加的阈值次数对比,若所述正向统计次数大于等于所述阈值次数,则输出第二编码指令。
优选地,在所述对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令之前还包括:
发出视频请求指令;
根据所述视频请求指令,建立视频连接;
在视频连接成功后,进行视频输出传输的码率测试,输出可靠传输码率;
以所述可靠传输码率,按所述第一编码方式进行视频数据传输。
优选地,所述在视频连接成功后,进行视频输出传输的码率测试,输出可靠传输码率包括:
获取用于码率测试的多个测试码率;
依次以各所述测试码率传输视频数据,得到与各所述测试码率一一对应的测试视频数据;
分析各所述测试数据的上传速度和下载速度,得到与各所述测试码率一一对应的数据收发的第二延迟时长;
对比各所述第二延迟时长,输出与符合要求的数据收发延迟时长对应的测试码率作为所述可靠传输码率。
优选地,若用户此时上网的流量类型为移动流量,所述对比各所述第二延迟时长,输出与符合要求的数据收发延迟时长对应的测试码率作为所述可靠传输码率包括:
获取用户可使用移动流量总量和剩余流量占所述移动总流量对应的可用流量比例;
根据所述移动总流量和所述可用流量比例,从多个符合要求的测试码率确定出所述可靠传输码率。
本发明还提供了一种基于动态编码帧的视频压缩传输装置,包括:
第一编码指令模块:用于对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令;
第二数据编码模块:用于根据所述第一编码指令,采用第二编码方式对视频数据编码后传输;
第二编码指令模块:用于对传输的利用所述第二编码方式编码的视频数据进行监督,若存在数据异常,则输出第二编码指令;
第一数据编码模块:用于根据所述第二编码指令,采用第一编码方式对视频数据编码后传输;
数据循环编码模块:用于重复对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令至根据所述第二编码指令,采用第一编码方式对视频数据编码后传输,直至视频结束;
其中,第一编码方式编码的视频数据的关键帧间隔时间小于第二编码方式编码的视频数据的关键帧间隔时间。
本发明还提供了一种电子设备,包括:至少一个处理器、至少一个存储器以及存储在所述存储器中的计算机程序指令,当所述计算机程序指令被所述处理器执行时实现上述任一项所述的方法。
本发明还提供了一种介质,其上存储有计算机程序指令,当所述计算机程序指令被处理器执行时实现上述任一项所述的方法。
综上所述,本发明的有益效果如下:
本发明提供的一种基于动态编码帧的视频压缩传输方法、装置、设备及介质,视频数据传输过程中,在网络不稳定等异常情况时,选择第一编码方式对视频数据进行编码传输,保证视频正常进行,当网络稳定后,选择第二编码方式对视频数据进行编码传输,从而提高视频清晰度;根据实际网络波动引起视频质量变化,利用动态编码方式对视频数据选择合适的视频编码方式进行编码,可以保证用户视频流畅性和提高用户体验效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,这些均在本发明的保护范围内。
图1为本发明实施例1中基于动态编码帧的视频压缩传输方法的流程示意图;
图2为本发明实施例1中获取第二编码指令的流程示意图;
图3为本发明实施例1中获取第二编码指令条件的流程示意图;
图4为本发明实施例1中视频数据收发延迟的时间曲线的结构示意图;
图5为本发明实施例1中获取视频数据传输的可靠码率的流程示意图;
图6为本发明实施例1中对测试码率筛选可靠传输码率的流程示意图;
图7为本发明实施例1中针对流量类型筛选可靠传输码率的流程示意图;
图8为本发明实施例2中基于动态编码帧的视频压缩传输装置的结构示意图;
图9为本发明实施例3中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。在本发明的描述中,需要理解的是,术语“中心”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。如果不冲突,本发明施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。
实施方式一
实施例1
请参见图1,图1为本发明实施例1中一种基于动态编码帧的视频压缩传输方法的流程示意图,所述方法包括:
S1:对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令;
具体的,当用户App端与摄像头终端建立起视频数据传输后,根据当前网络情况确定可靠的视频数据传输码率,在确定可靠传输码率后,先以第一编码方式对摄像头终端产生的视频数据进行编码后传输,在用户App端对第一编码方式编码的视频数据进行解码,当解码完成,即正常出图后,产生第一编码指令反馈至摄像头终端,该第一编码指令用于指导视频终端开始采用第二编码方式进行视频数据编码;在接收到第一编码指令后,表明所建立的视频连接可以进行稳定视频数据传输,此时摄像头终端在完成当前关键帧对应的视频数据包的编码后,从下一个关键帧开始以第二编码方式进行后续实时视频数据编码。
S2:根据所述第一编码指令,采用第二编码方式对视频数据编码后传输;
具体的,当接收到第一编码指令后,摄像头终端调整视频数据的编码方式,开始以第二编码方式编码后续的实时视频数据。
S3:对传输的利用所述第二编码方式编码的视频数据进行监督,若存在数据异常,则输出第二编码指令;
具体的,在以第二编码方式编码的视频数据的传输过程中,对传输的视频数据进行监督,防止视频数据异常,若发现视频数据异常,则产生第二编码指令,第二编码指令用于指导视频终端开始采用第一编码方式进行视频数据编码。
在一实施例中,所述对传输的利用所述第二编码方式编码的视频数据进行监督的参数至少包括以下之一:视频数据解码结果、视频数据完整性、视频数据收发的延迟信息。
在一实施例中,请参见图2,在对视频数据收发的延迟信息监督中,所述S3包括:
S31:实时获取视频数据的各帧图像的接收时间;
具体的,将视频数据的各帧图像记为F1、F2、…Fn;各帧图像的大小记为B1、B2、…Bn;App端接收到各帧图像的接收时间为T1、T2、…Tn;其中,n为在统计各图像帧对应的统计窗口所包含的图像帧数量,如:统计窗口为包含的图像帧数量为20帧,参与统计的图像帧数量为20帧,当从第5帧开始统计时,统计窗口内的图像帧为第5帧至第25帧,当随着视频数据不断传输,统计窗口内的具体图像帧发生变化,但图像帧总数量不变,如:在第26帧图像接收完成后,此时统计窗口内的图像帧为第6帧图像至第26帧图像,Fn为第n帧图像,Bn为第n帧图像的数据大小,Tn为第n帧图像的接收时间,n为正整数,且n为视频帧率的整数倍。
具体的,根据当前图像帧和前一图像帧的接收速度,由公式可以预测下一图像帧的接收预测速度,其中,St+1为第n+1帧图像的接收预测速度,St-1为第n-1帧图像的接收速度,∂为视频数据传输的平滑抖动系数,0<∂<1。
具体的,根据下一图像帧的接收预测速度,由公式计算得到各帧图像接收的第一延迟时长,其中,T'为第一延迟时间,β为缓冲分配系数,Ms为视频数据发送端的剩余缓冲区容量,MR为视频数据接收端的剩余缓冲区容量。发送端的剩余缓冲区容量是通过接收的图像帧所带的标签信息直接获取。接收端的剩余缓冲区容量在接收端直接获取。
S35:将所述第一延迟时长与预设的延迟阈值进行对比,若所述第一延迟时长大于所述延迟阈值,则输出第二编码指令。
具体的,根据接收端和发送端的剩余缓冲区容量,得到以当前图像帧的接收速度预测下一图像帧的预测接收速度,可以估算在此状态下缓冲区容量会在一定时间内用尽;因此在此基础上,设置一个接受预测速度对应的耗尽时间的阈值,记为延迟阈值;当某一待接受的图像帧的接受预测速度对于的第一延迟时长大于延迟阈值时,则输出第二编码指令,根据第一编码指令,产生视频数据的设备终端开始以第二编码方式编码视频数据。
在一实施例中,延迟阈值=τ*T,其中,τ为数据传输的时延抖动系数,T为接收n帧图像所需的总时间。
具体的,通过统计的各帧图像的接收时间差异,因此T为一动态值,使得第二编码指令的生成是动态变化的,优化第二编码指令的产生,提高视频质量。
在一实施例中,请参见图3,所述S35包括:
S351:获取与视频数据中各帧图像对应的各所述第一延迟时长;
S352:根据各所述第一延迟时长,建立数据收发延迟曲线;
具体的,请参见图4,图4的数据收发延迟曲线是由各图像帧一一对应的第一延迟时长作为各取样点构成的曲线,取样点a、b、c、d、e、f、g、h和j分别对应第1帧至第9帧对应的延迟取样点,记点a和点b对应的斜率为k1、点b和点c对应的斜率为k2、点c和点d对应的斜率为k3、点d和点e对应的斜率为k4、点e和点f对应的斜率为k5、点f和点g对应的斜率为k6、点g和点h对应的斜率为k7、点h和点j对应的斜率为k8;由图4可知,k1、k2、k3和k4对应的斜率为正,k6、k7和k8对应的斜率为负,k5斜率为0。
S353:根据所述数据收发延迟曲线,对所述数据收发曲线上相邻取样点的斜率递变方向进行统计,输出延迟持续增加对应的正向统计次数;
具体的,计算所有相邻图像帧对应的取样点的斜率,依次统计各斜率的正负,从而得到各图像帧传输的延迟变化情况;统计方式为:从第一个正斜率开始一次统计,一个正斜率进行计数加1,遇负斜率时,本次统计结束,在下一个正斜率开始下一次统计;因为是对正斜率的次数进行统计,可以快速得出在这一统计过程中,延迟为持续增加;因此记为正向统计;请参见图4,从k1开始统计,当统计到k6时,k6为负斜率,本次正向统计结束,本次的正向统计计数为5,开始下一次计数。
S354:将所述正向统计次数与预设的延迟增加的阈值次数对比,若所述正向统计次数大于等于所述阈值次数,则输出第二编码指令。
具体的,在统计过程中,将正向统计次数实时与阈值次数比较,当正向统计次数等于阈值次数时,则产生第二编码指令,采用第一编码方式编码后续视频数据,请参见图4,若阈值次数小于等于5次,k1对应的正向统计次数为6,统计次数大于阈值次数,则产生第二编码指令,从而将视频数据的编码方式改为第一编码方式;使得相邻关键帧之间的普通帧减少,从而减小视频画面的细节,以便网络能够保证视频的正常进行。
S4:根据所述第二编码指令,采用第一编码方式对视频数据编码后传输;
具体的,当检测到视频数据出现延迟、画面卡顿、数据丢失等异常情况时,通过第二编码指令,摄像头终端采用第一编码方式编码新产生的视频数据进行传输。
S5:重复S1至S4,直至视频结束;
具体的,不断的在第一编码方式和第二编码方式之间切换视频数据的编码方式,直至视频结束,实现视频时,视频数据的动态编码。
其中,第一编码方式编码的视频数据的关键帧间隔时间小于第二编码方式编码的视频数据的关键帧间隔时间。
具体的,视频数据的基本数据主要体现在关键帧中,视频数据的细节是由普通帧体现,当在视频数据传输异常时,选择第一编码方式编码视频数据;当视频数据传输正常后,采用第二编码方式编码视频数据,第一编码方式和第二编码方式的视频帧率相同,第二编码方式的关键帧对应的普通帧比第一编码方式的关键帧对应的普通帧多,采用第一编码方式编码的视频数据可以保证视频的正常进行,采用第二编码方式编码的视频数据可以提高画面的清晰度,采用第一编码方式编码的视频数据可以保证视频的正常进行;如视频帧率为20帧/秒,第一编码方式为每秒包括1个关键帧和该关键帧后的19个普通帧,第二编码方式为每4秒包括1个关键帧和该关键帧后的79个普通帧。
需要说明的是:关键帧也叫I帧,普通帧包括P帧和/或B帧。
在一实施例中,所述第一编码方式的视频帧率与所述第二编码方式的视频帧率相同。
在一实施例中,请参见图5,在所述S1之前还包括:
S01:发出视频请求指令;
S02:根据所述视频请求指令,建立视频连接;
S03:在视频连接成功后,进行视频输出传输的码率测试,输出可靠传输码率;
具体的,当用户需要从非关键帧查看摄像头端的实时视频时,发出视频请求,在非关键帧与摄像头终端建立视频连接后,通过发送测试数据来测试当前网络延时情况,根据延时情况调整视频码率,得到当前视频数据传输的可靠传输码率。
在一实施例中,请参见图6,所述S03包括:
S031:获取用于码率测试的多个测试码率;
具体的,在摄像头出厂前,在摄像头的处理器中预设多个视频数据传输的码率,以便用户与摄像头建立视频后,进行传输码率测试,从而确定本次视频的可靠传输码率。
S032:依次以各所述测试码率传输视频数据,得到与各所述测试码率一一对应的测试视频数据;
S033:分析各所述测试数据的上传速度和下载速度,得到与各所述测试码率一一对应的数据收发的第二延迟时长;
具体的,以各测试码率分别传输测试视频数据,获取各测试码率对应的视频数据的上传速度和下载速度,从而确定与各测试码率对应的延迟时长,记为第二延迟时长。
S034:对比各所述第二延迟时长,输出与符合要求的数据收发延迟时长对应的测试码率作为所述可靠传输码率。
具体的,比较各测试码率对应的第二延迟时长,将符合要求的延迟时长对应的测试码率作为可靠传输码率,进一步的,若存在多个可靠传输码率,可以根据用户此时选用的网络类型进行选择,或者根据用户历史网络进行选择;如用户采用为移动数据进行视频时,可以选择符合要求的低码率作为可靠码率,避免采用高清画质导致移动流量使用过快,导致用户后期移动流量不足,影响用户体验。
在一实施例中,若存在多个符合要求的测试码率,则根据用户此时上网的流量类型选择可靠传输码率。
具体的,流量类型至少包括以下之一:移动流量、热点提供的流量、wifi流量,当用户使用非wifi流量上网时,选择符合要求的低码率作为可靠传输码率,当用户使用wifi流量上网时,选择符合要求的高码率作为可靠传输码率。
在一实施例中,若用户此时上网的流量类型为移动流量,所述S034包括:
S0341:获取用户可使用移动流量总量和剩余流量占所述移动总流量对应的可用流量比例;
S0342:根据所述移动总流量和所述可用流量比例,从多个符合要求的测试码率确定出所述可靠传输码率。
具体的,当用户采用移动流量上网时,分析用户此时移动套餐剩余的流量总量以及剩余流量的比例,若流量总量和/或可用流量比例不足,则选用低码率进行视频数据传输,进一步的,在视频传输过程中或开始传输前,若流量超过可用流量总量,进行提示,避免用户因为误操作造成流量浪费,提高用户体验效果。
S04:以所述可靠传输码率,按所述第一编码方式进行视频数据传输。
具体的,在确定视频数据的可靠传输码率后,在初始阶段,以第一编码方式编码视频数据,并且将编码后的视频数据以可靠传输码率传输。
采用本实施例的基于动态编码帧的视频压缩传输方法,视频数据传输过程中,在网络不稳定等异常情况时,选择第一编码方式对视频数据进行编码传输,保证视频正常进行,当网络稳定后,选择第二编码方式对视频数据进行编码传输,从而提高视频清晰度;根据实际网络波动引起视频质量变化,利用动态编码方式对视频数据选择合适的视频编码方式进行编码,可以保证用户视频流畅性和提高用户体验效果。
实施例2
请参见图7,图7为本发明实施例2中基于动态编码帧的视频压缩传输装置的结构示意图,实施例2是基于实施例1的基于动态编码帧的视频压缩传输方法对应还提供了一种基于基于动态编码帧的视频压缩传输装置,该装置包括:
第一编码指令模块:用于对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令;
第二数据编码模块:用于根据所述第一编码指令,采用第二编码方式对视频数据编码后传输;
第二编码指令模块:用于对传输的利用所述第二编码方式编码的视频数据进行监督,若存在数据异常,则输出第二编码指令;
第一数据编码模块:用于根据所述第二编码指令,采用第一编码方式对视频数据编码后传输;
数据循环编码模块:用于重复对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令至根据所述第二编码指令,采用第一编码方式对视频数据编码后传输,直至视频结束;
其中,第一编码方式编码的视频数据的关键帧间隔时间小于第二编码方式编码的视频数据的关键帧间隔时间。
采用本实施例的基于动态编码帧的视频压缩传输装置,视频数据传输过程中,在网络不稳定等异常情况时,选择第一编码方式对视频数据进行编码传输,保证视频正常进行,当网络稳定后,选择第二编码方式对视频数据进行编码传输,从而提高视频清晰度;根据实际网络波动引起视频质量变化,利用动态编码方式对视频数据选择合适的视频编码方式进行编码,可以保证用户视频流畅性和提高用户体验效果。
在一实施例中,所述对传输的利用所述第二编码方式编码的视频数据进行监督的参数至少包括以下之一:视频数据解码结果、视频数据完整性、视频数据收发的延迟信息。
在一实施例中,所述第二编码指令模块包括:
时长收发单元:实时获取视频数据的各帧图像的接收时间;
第二编码指令单元:将所述第一延迟时长与预设的延迟阈值进行对比,若所述第一延迟时长大于所述延迟阈值,则输出第二编码指令;
其中,n为图像帧数量,St为第n帧图像的接收速度,T为接收n帧图像所需的总时间,Bi为第i帧图像的数据大小,St+1为第n+1帧图像的接收预测速度,St-1为第n-1帧图像的接收速度,∂为视频数据传输的平滑抖动系数,0<∂<1,T'为第一延迟时间,β为缓冲分配系数,0<β<1,Ms为视频数据发送端的剩余缓冲区容量,MR为视频数据接收端的剩余缓冲区容量。
在一实施例中,所述第二指令单元包括:
延迟获取单元:获取与视频数据中各帧图像对应的各所述第一延迟时长;
延迟曲线单元:根据各所述第一延迟时长,建立数据收发延迟曲线;
延迟统计单元:根据所述数据收发延迟曲线,对所述数据收发曲线上相邻取样点的斜率递变方向进行统计,输出延迟持续增加对应的正向统计次数;
延迟处理单元:将所述正向统计次数与预设的延迟增加的阈值次数对比,若所述正向统计次数大于等于所述阈值次数,则输出第二编码指令。
在一实施例中,第一编码指令模块还包括:
视频请求单元:发出视频请求指令;
视频连接单元:根据所述视频请求指令,建立视频连接;
码率测试单元:在视频连接成功后,进行视频输出传输的码率测试,输出可靠传输码率;
视频初次解码单元:以所述可靠传输码率,按所述第一编码方式进行视频数据传输。
在一实施例中,所述码率测试单元包括:
测试码率单元:获取用于码率测试的多个测试码率;
测试数据处理单元:依次以各所述测试码率传输视频数据,得到与各所述测试码率一一对应的测试视频数据;
网速分析单元:分析各所述测试数据的上传速度和下载速度,得到与各所述测试码率一一对应的数据收发的第二延迟时长;
可靠码率单元:对比各所述第二延迟时长,输出与符合要求的数据收发延迟时长对应的测试码率作为所述可靠传输码率。
在一实施例中,若用户此时上网的流量类型为移动流量,所述可靠码率单元包括:
流量数据单元:获取用户可使用移动流量总量和剩余流量占所述移动总流量对应的可用流量比例;
流量数据处理单元:根据所述移动总流量和所述可用流量比例,从多个符合要求的测试码率确定出所述可靠传输码率。
采用本实施例的基于动态编码帧的视频压缩传输装置,视频数据传输过程中,在网络不稳定等异常情况时,选择第一编码方式对视频数据进行编码传输,保证视频正常进行,当网络稳定后,选择第二编码方式对视频数据进行编码传输,从而提高视频清晰度;根据实际网络波动引起视频质量变化,利用动态编码方式对视频数据选择合适的视频编码方式进行编码,可以保证用户视频流畅性和提高用户体验效果。
实施例3
本发明提供了一种电子设备和介质,如图8所示,包括至少一个处理器、至少一个存储器以及存储在所述存储器中的计算机程序指令。
具体地,上述处理器可以包括中央处理器(CPU),或者特定集成电路(ApplicationSpecific Integrated Circuit,ASIC),或者可以被配置成实施本发明实施例的一个或多个集成电路,电子设备至少包括以下之一:摄像头、具有摄像头的移动设备、具有摄像头的穿戴设备。
存储器可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器可在数据处理装置的内部或外部。在特定实施例中,存储器是非易失性固态存储器。在特定实施例中,存储器包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
处理器通过读取并执行存储器中存储的计算机程序指令,以实现上述实施例方式一中任意一种基于动态编码帧的视频压缩传输方法。
在一个示例中,电子设备还可包括通信接口和总线。其中,处理器、存储器、通信接口通过总线连接并完成相互间的通信。
通信接口,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。
总线包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
综上所述,本发明实施例提供了一种基于动态编码帧的视频压缩传输方法、装置、设备及介质。视频数据传输过程中,在网络不稳定等异常情况时,选择第一编码方式对视频数据进行编码传输,保证视频正常进行,当网络稳定后,选择第二编码方式对视频数据进行编码传输,从而提高视频清晰度;根据实际网络波动引起视频质量变化,利用动态编码方式对视频数据选择合适的视频编码方式进行编码,可以保证用户视频流畅性和提高用户体验效果。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种基于动态编码帧的视频压缩传输方法,其特征在于,所述方法包括:
对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令;
根据所述第一编码指令,采用第二编码方式对视频数据编码后传输;
对传输的利用所述第二编码方式编码的视频数据进行监督,若存在数据异常,则输出第二编码指令;
根据所述第二编码指令,采用第一编码方式对视频数据编码后传输;
重复对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令至根据所述第二编码指令,采用第一编码方式对视频数据编码后传输,直至视频结束;
其中,第一编码方式编码的视频数据的关键帧间隔时间小于第二编码方式编码的视频数据的关键帧间隔时间。
2.根据权利要求1所述的基于动态编码帧的视频压缩传输方法,其特征在于,所述对传输的利用所述第二编码方式编码的视频数据进行监督的参数至少包括以下之一:视频数据解码结果、视频数据完整性、视频数据收发的延迟信息。
3.根据权利要求2所述的基于动态编码帧的视频压缩传输方法,其特征在于,所述对传输的利用所述第二编码方式编码的视频数据进行监督,若存在数据异常,则输出第二编码指令包括:
实时获取视频数据的各帧图像的接收时间;
将所述第一延迟时长与预设的延迟阈值进行对比,若所述第一延迟时长大于所述延迟阈值,则输出第二编码指令;
其中,n为图像帧数量,St为第n帧图像的接收速度,T为接收n帧图像所需的总时间,Bi为第i帧图像的数据大小,St+1为第n+1帧图像的接收预测速度,St-1为第n-1帧图像的接收速度,∂为视频数据传输的平滑抖动系数,0<∂<1,T'为第一延迟时间,β为缓冲分配系数,0<β<1,Ms为视频数据发送端的剩余缓冲区容量,MR为视频数据接收端的剩余缓冲区容量。
4.根据权利要求3所述的基于动态编码帧的视频压缩传输方法,其特征在于,所述将所述第一延迟时长与预设的延迟阈值进行对比,若所述第一延迟时长大于所述延迟阈值,则输出第二编码指令包括:
获取与视频数据中各帧图像对应的各所述第一延迟时长;
根据各所述第一延迟时长,建立数据收发延迟曲线;
根据所述数据收发延迟曲线,对所述数据收发曲线上相邻取样点的斜率递变方向进行统计,输出延迟持续增加对应的正向统计次数;
将所述正向统计次数与预设的延迟增加的阈值次数对比,若所述正向统计次数大于等于所述阈值次数,则输出第二编码指令。
5.根据权利要求1至4任一项所述的基于动态编码帧的视频压缩传输方法,其特征在于,在所述对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令之前还包括:
发出视频请求指令;
根据所述视频请求指令,建立视频连接;
在视频连接成功后,进行视频输出传输的码率测试,输出可靠传输码率;
以所述可靠传输码率,按所述第一编码方式进行视频数据传输。
6.根据权利要求5所述的基于动态编码帧的视频压缩传输方法,其特征在于,所述在视频连接成功后,进行视频输出传输的码率测试,输出可靠传输码率包括:
获取用于码率测试的多个测试码率;
依次以各所述测试码率传输视频数据,得到与各所述测试码率一一对应的测试视频数据;
分析各所述测试数据的上传速度和下载速度,得到与各所述测试码率一一对应的数据收发的第二延迟时长;
对比各所述第二延迟时长,输出与符合要求的数据收发延迟时长对应的测试码率作为所述可靠传输码率。
7.根据权利要求6所述的基于动态编码帧的视频压缩传输方法,其特征在于,若用户此时上网的流量类型为移动流量,所述对比各所述第二延迟时长,输出与符合要求的数据收发延迟时长对应的测试码率作为所述可靠传输码率包括:
获取用户可使用移动流量总量和剩余流量占所述移动总流量对应的可用流量比例;
根据所述移动总流量和所述可用流量比例,从多个符合要求的测试码率确定出所述可靠传输码率。
8.一种基于动态编码帧的视频压缩传输装置,其特征在于,包括:
第一编码指令模块:用于对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令;
第二数据编码模块:用于根据所述第一编码指令,采用第二编码方式对视频数据编码后传输;
第二编码指令模块:用于对传输的利用所述第二编码方式编码的视频数据进行监督,若存在数据异常,则输出第二编码指令;
第一数据编码模块:用于根据所述第二编码指令,采用第一编码方式对视频数据编码后传输;
数据循环编码模块:用于重复对传输的利用第一编码方式编码的视频数据进行解码,当解码成功后,输出第一编码指令至根据所述第二编码指令,采用第一编码方式对视频数据编码后传输,直至视频结束;
其中,第一编码方式编码的视频数据的关键帧间隔时间小于第二编码方式编码的视频数据的关键帧间隔时间。
9.一种电子设备,其特征在于,包括:至少一个处理器、至少一个存储器以及存储在所述存储器中的计算机程序指令,当所述计算机程序指令被所述处理器执行时实现如权利要求1-7中任一项所述的方法。
10.一种介质,其上存储有计算机程序指令,其特征在于,当所述计算机程序指令被处理器执行时实现如权利要求1-7中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110650703.9A CN113259660B (zh) | 2021-06-11 | 2021-06-11 | 基于动态编码帧的视频压缩传输方法、装置、设备及介质 |
CN202111124897.5A CN113873235A (zh) | 2021-06-11 | 2021-06-11 | 自适应网络视频传输方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110650703.9A CN113259660B (zh) | 2021-06-11 | 2021-06-11 | 基于动态编码帧的视频压缩传输方法、装置、设备及介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111124897.5A Division CN113873235A (zh) | 2021-06-11 | 2021-06-11 | 自适应网络视频传输方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113259660A true CN113259660A (zh) | 2021-08-13 |
CN113259660B CN113259660B (zh) | 2021-10-29 |
Family
ID=77187508
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111124897.5A Pending CN113873235A (zh) | 2021-06-11 | 2021-06-11 | 自适应网络视频传输方法、装置、设备及介质 |
CN202110650703.9A Active CN113259660B (zh) | 2021-06-11 | 2021-06-11 | 基于动态编码帧的视频压缩传输方法、装置、设备及介质 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111124897.5A Pending CN113873235A (zh) | 2021-06-11 | 2021-06-11 | 自适应网络视频传输方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN113873235A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116193164A (zh) * | 2022-12-14 | 2023-05-30 | 中用科技有限公司 | 紧密集成传输协议和编解码器的视频传输方法及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115002544A (zh) * | 2022-06-17 | 2022-09-02 | 中国电信股份有限公司 | 视频播放方法、装置、非易失性存储介质及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110505454A (zh) * | 2019-08-29 | 2019-11-26 | 西安电子科技大学 | 基于场景模式与用户感知需求的视频供给系统与方法 |
CN111327864A (zh) * | 2018-12-17 | 2020-06-23 | 中移(杭州)信息技术有限公司 | 一种视频通话控制方法、装置、终端设备及存储介质 |
US20210014539A1 (en) * | 2018-03-30 | 2021-01-14 | Intel Corporation | Dynamic video encoding and view adaptation in wireless computing environments |
CN112543366A (zh) * | 2020-12-02 | 2021-03-23 | 北京五八信息技术有限公司 | 一种视频的播放方法和装置 |
CN112887754A (zh) * | 2021-04-28 | 2021-06-01 | 武汉星巡智能科技有限公司 | 基于实时网络的视频数据处理方法、装置、设备及介质 |
CN112911377A (zh) * | 2021-02-01 | 2021-06-04 | 华录智达科技股份有限公司 | 一种视频播放和缓存间适配系统及算法 |
-
2021
- 2021-06-11 CN CN202111124897.5A patent/CN113873235A/zh active Pending
- 2021-06-11 CN CN202110650703.9A patent/CN113259660B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210014539A1 (en) * | 2018-03-30 | 2021-01-14 | Intel Corporation | Dynamic video encoding and view adaptation in wireless computing environments |
CN111327864A (zh) * | 2018-12-17 | 2020-06-23 | 中移(杭州)信息技术有限公司 | 一种视频通话控制方法、装置、终端设备及存储介质 |
CN110505454A (zh) * | 2019-08-29 | 2019-11-26 | 西安电子科技大学 | 基于场景模式与用户感知需求的视频供给系统与方法 |
CN112543366A (zh) * | 2020-12-02 | 2021-03-23 | 北京五八信息技术有限公司 | 一种视频的播放方法和装置 |
CN112911377A (zh) * | 2021-02-01 | 2021-06-04 | 华录智达科技股份有限公司 | 一种视频播放和缓存间适配系统及算法 |
CN112887754A (zh) * | 2021-04-28 | 2021-06-01 | 武汉星巡智能科技有限公司 | 基于实时网络的视频数据处理方法、装置、设备及介质 |
Non-Patent Citations (2)
Title |
---|
E.B. GEORGE: ""Variable frame rate parameter encoding via adaptive frame selection using dynamic programming"", 《1996 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING CONFERENCE PROCEEDINGS》 * |
丰洪才等: "视频传输自适应网络带宽控制策略的研究", 《计算机测量与控制》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116193164A (zh) * | 2022-12-14 | 2023-05-30 | 中用科技有限公司 | 紧密集成传输协议和编解码器的视频传输方法及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113873235A (zh) | 2021-12-31 |
CN113259660B (zh) | 2021-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113259660B (zh) | 基于动态编码帧的视频压缩传输方法、装置、设备及介质 | |
Fouladi et al. | Salsify:{Low-Latency} network video through tighter integration between a video codec and a transport protocol | |
CN112887754B (zh) | 基于实时网络的视频数据处理方法、装置、设备及介质 | |
CN111836079B (zh) | 一种视频码流的传输方法及装置 | |
JP5302342B2 (ja) | ビデオ符号ストリームの品質を評価する方法、装置およびシステム | |
CN104125429B (zh) | 视频数据传输的调节方法及装置 | |
US20110085602A1 (en) | Video Communication System, Device and Method Based on Feedback Reference Frames | |
CN110248189B (zh) | 一种视频质量预测方法、装置、介质和电子设备 | |
CN109729437B (zh) | 流媒体自适应传输方法、终端和系统 | |
KR20150048775A (ko) | 무선 네트워크 상의 적응적 레이트 멀티미디어 통신을 위한 디바이스 및 방법 | |
CN110312150B (zh) | 一种视频帧传输方法、系统及服务器 | |
CN111093083B (zh) | 数据传输方法及装置 | |
CN111263192A (zh) | 视频处理方法及相关设备 | |
CN104754339B (zh) | I帧调整方法、装置及系统 | |
CN104427405B (zh) | 用于发送编码视频流的装置及其发送方法 | |
CN102369732B (zh) | 视频流传输 | |
CN111447451A (zh) | 图像编码、解码方法及装置 | |
CN118158418A (zh) | 视频编码方法及相关装置 | |
US20110176742A1 (en) | Image processing apparatus and image processing method | |
CN101754001B (zh) | 视频数据优先级确定方法、装置和系统 | |
WO2021182506A1 (ja) | 通信制御システムおよび通信制御方法 | |
CN106254873B (zh) | 一种视频编码方法及视频编码装置 | |
CN103929654B (zh) | 一种图像数据处理方法及装置 | |
CN111510703B (zh) | 一种视频播放方法、装置及系统 | |
Ren et al. | Improving quality of experience for mobile broadcasters in personalized live video streaming |
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 | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: Video compression transmission method, device, equipment, and medium based on dynamic encoded frames Granted publication date: 20211029 Pledgee: CITIC Bank Limited by Share Ltd. Ningbo branch Pledgor: Ningbo Xingxun Intelligent Technology Co.,Ltd. Registration number: Y2024980012229 |