视频传输系统的制作方法

文档序号:31603388发布日期:2022-09-21 09:40阅读:46来源:国知局
视频传输系统的制作方法

1.本技术涉及视频技术领域,特别是涉及一种视频传输系统。


背景技术:

2.随着无线网络技术以及视频技术的发展,视频播放应用的使用也越来越普遍。视频编码端通常通过视频平台端向视频播放端转发视频,因而视频编码端与视频平台端之间形成了上行网络,视频播放端与视频平台端之间形成了下行网络。然而视频编码端无法感知下行网络的网络质量以及播放端的视频播放质量,视频播放端也无法感知上行网络的网络质量,使得视频编码端和视频播放端的感知隔离,导致两者码流调整策略配合较差,从而导致视频业务整体的播放体验较差,易出现播放卡顿和录像缺失等问题。
3.因此,如何提供一种视频传输系统,以提升视频播放质量,是本技术亟需解决的问题。


技术实现要素:

4.本发明实施例提供了一种视频传输系统,用以改进视频的码流调整策略,以提升视频播放质量,从而有效提升用户体验。
5.本技术提供了一视频传输系统,包括编码端、平台端以及播放端,其中:所述编码端用于获取第一信息,所述第一信息包括编码端在预设时长内的视频帧发送信息,并将所述第一信息发送给所述播放端;所述播放端用于接收所述第一信息,并获取第二信息,所述第二信息包括所述播放端在所述预设时长内的视频帧接收信息和/或视频帧播放缓存信息;还用于基于所述第一信息和所述第二信息,确定在所述预设时长内的网络拥塞情况;和/或,基于所述第二信息,确定在所述预设时长内的视频帧播放情况;并将所述网络拥塞情况和/或视频帧播放情况发送给所述平台端;所述平台端用于接收所述网络拥塞情况和/或视频帧播放情况,并基于所述网络拥塞情况和/或视频帧播放情况,确定码流调整策略;所述平台端还用于向所述编码端以及播放端发送所述码流调整策略,所述码流调整策略用于对码流进行调整。
6.在其中一个实施例中,所述基于所述第一信息和所述第二信息,确定在所述预设时长内的网络拥塞情况,包括:基于所述第一信息和所述第二信息,确定第一网络状态和/或第二网络状态;其中,所述第一网络状态与视频帧丢帧率关联,所述第二网络状态与视频帧时延关联;基于所述第一网络状态和/或所述第二网络状态,确定所述网络拥塞情况。
7.在其中一个实施例中,所述视频发送信息包括视频帧发送数目,所述视频接收信息包括视频帧接收数目;基于所述第一信息和所述第二信息,确定第一网络状态,包括:基于所述视频帧发送数目和所述视频帧接收数目,确定所述预设时长内的视频帧
丢帧率;若所述视频帧丢帧率大于第一阈值,则确定所述第一网络状态为过载状态;或者,若所述视频帧丢帧率为第二阈值,则确定所述第一网络状态为正常状态;或者,若所述视频帧丢帧率大于等于第二阈值且小于第一阈值,则确定所述第一网络状态为低载状态。
8.在其中一个实施例中,所述视频发送信息包括视频帧发送间隔,所述视频接收信息包括视频帧接收间隔;基于所述第一信息和所述第二信息,确定第二网络状态,包括:基于视频帧发送间隔和视频帧接收间隔,确定所述预设时长内的视频帧时延的变化趋势;若所述视频帧时延的变化趋势的量化值大于第三阈值,且在所述预设时长内网络带宽的过载次数超出第四阈值和/或所述网络带宽的过载时长超出第五阈值,则确定所述第二网络状态为过载状态;或者,若所述视频帧时延的变化趋势的量化值小于第六阈值,则确定第二网络状态为低载状态;或者,若所述视频帧时延的变化趋势的量化值小于等于第三阈值且大于等于第六阈值,且在所述预设时长内网络带宽的正常次数超出第七阈值和/或所述网络带宽的正常时长超出第八阈值,则确定第二网络状态为正常状态。
9.在其中一个实施例中,所述第三阈值和所述第六阈值是根据所述视频帧时延的变化趋势的量化值与所述第三阈值或所述第六阈值的差值的绝对值动态调整的。
10.在其中一个实施例中,基于所述第一网络状态和/或所述第二网络状态,确定所述网络拥塞情况,包括:所述第一网络状态和/或所述第二网络状态为过载状态,则确定所述预设时长内的网络带宽处于过载状态;所述第一网络状态和所述第二网络状态均为正常状态,则确定所述预设时长内的网络带宽处于正常状态;所述第一网络状态为正常状态,所述第二网络状态为低载状态,则确定所述预设时长内的网络带宽处于低载状态。
11.在其中一个实施例中,所述视频接收信息包括视频帧接收间隔,所述视频播放缓存信息包括视频帧缓存时间;基于所述第二信息,确定在所述预设时长内的视频帧播放情况,包括:根据所述视频帧接收间隔和所述视频帧缓存时间,确定所述预设时长内的帧播放抖动时间;若帧播放抖动时间小于等于第九阈值,则确定在所述预设时长内视频播放未卡顿;或者,若帧播放抖动时间大于第九阈值,则确定在所述预设时长内视频播放卡顿。
12.在其中一个实施例中,所述视频接收信息包括视频帧接收间隔,所述视频播放缓存信息包括视频帧缓存时间;基于所述第二信息,确定在所述预设时长内的视频帧播放情况,包括:根据所述视频帧接收间隔和所述视频帧缓存时间,统计所述预设时长内的帧播放抖动次数;若帧播放抖动次数小于等于第十阈值,则确定在所述预设时长内视频播放未卡
顿;或者,若帧播放抖动次数大于第十阈值,则确定在所述预设时长内视频播放卡顿。
13.在其中一个实施例中,接收所述网络拥塞情况和/或视频帧播放情况,并基于所述网络拥塞情况和/或视频帧播放情况,确定码流调整策略包括:在所述预设时长内视频播放卡顿和/或网络带宽处于过载状态时,所述码流调整策略用于指示所述播放端下调码流;或者,在所述预设时长内视频播放未卡顿且网络带宽处于正常状态时,所述码流调整策略用于指示所述播放端上调码流。
14.在其中一个实施例中,所述平台端包括视频传输监测模块以及动态码率平衡模块,其中:所述编码端还用于将上行网络传输带宽信息发送给所述平台端;所述播放端还用于将下行网络传输带宽信息发送给所述平台端;所述视频传输监测模块用于接收所述上行网络传输带宽信息以及下行网络传输带宽信息;所述视频传输监测模块还用于确定基于所述上行网络传输带宽信息、下行网络传输带宽信息、所述网络拥塞情况和/或视频帧播放情况,确定码流调整策略,并将所述码流调整策略发送给所述动态码率平衡模块;若所述码流调整策略为下调码流,则所述动态码率平衡模块用于基于所述码流调整策略控制所述播放端降低播放速率,并增大所述播放端的接收缓存模块的容量;所述动态码率平衡模块还用于控制所述编码端增大发送缓存模块的容量,并降低编码码率。
15.在其中一个实施例中,若所述码流调整策略为上调码流,且所述动态码率平衡模块向所述编码端以及播放端发送过下调码流的码流调整策略,则所述动态码率平衡模块还用于基于所述下行网络传输带宽信息确定第一延时时间;若所述第一延时时间大于预设阈值,则所述动态码率平衡模块用于基于所述码流调整策略控制所述播放端提高播放速率;若所述第一延时时间小于预设阈值,则所述动态码率平衡模块用于将所述播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量还原为初始状态。
16.在其中一个实施例中,所述平台端包括视频传输监测模块以及关键帧错峰模块,其中:所述视频传输监测模块用于基于所述第一信息和第二信息确定是否存在关键帧碰撞;若存在关键帧碰撞,则确定关键帧错峰策略,并将所述关键帧错峰策略发送给所述关键帧错峰模块;所述关键帧错峰模块向所述编码端以及播放端发送所述关键帧错峰策略。
17.在其中一个实施例中,若存在关键帧碰撞,则所述关键帧错峰模块用于控制所述播放端降低播放速率,并增大所述播放端的接收缓存模块的容量;所述关键帧错峰模块还用于控制所述编码端增大发送缓存模块的容量,并在预设时间后调整关键帧生成时序。
18.在其中一个实施例中,所述播放端还用于将下行网络传输带宽信息发送给所述平
台端,在所述关键帧错峰模块向所述编码端以及播放端发送所述关键帧错峰策略之后,所述关键帧错峰模块还用于基于所述下行网络传输带宽信息确定第二延时时间;若所述第二延时时间大于预设阈值,则所述关键帧错峰模块用于控制所述播放端提高播放速率;若所述第二延时时间小于预设阈值,则所述关键帧错峰模块用于将所述播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量还原为初始状态。
19.上述视频传输系统,包括编码端、平台端以及播放端,其中:所述编码端用于获取第一信息,所述第一信息包括编码端在预设时长内的视频帧发送信息,并将所述第一信息发送给所述播放端;所述播放端用于接收所述第一信息,并获取第二信息,所述第二信息包括所述播放端在所述预设时长内的视频帧接收信息和/或视频帧播放缓存信息;还用于基于所述第一信息和所述第二信息,确定在所述预设时长内的网络拥塞情况;和/或,基于所述第二信息,确定在所述预设时长内的视频帧播放情况;并将所述网络拥塞情况和/或视频帧播放情况发送给所述平台端;所述平台端用于接收所述网络拥塞情况和/或视频帧播放情况,并基于所述网络拥塞情况和/或视频帧播放情况,确定码流调整策略;所述平台端还用于向所述编码端以及播放端发送所述码流调整策略,所述码流调整策略用于对码流进行调整。
20.在本技术实施例中,播放端通过结合自身在预设时长内的视频帧接收信息和/或视频帧播放缓存信息、以及编码端在预设时长内的视频帧发送信息,确定在所述预设时长内的网络拥塞情况和/或视频帧播放情况;平台端基于视频帧播放情况和/或网络拥塞情况,确定码流调整策略,并发送至编码端以及播放端;进而编码端以及播放端可以基于码流调整策略,对码流进行调整。通过平台端对编码端以及播放端的码流进行协调控制,保证视频编码、视频解码以及视频传输的端到端匹配,提高了视频传输和播放的质量。
附图说明
21.图1为本技术实施例适用的系统架构图;图2为本技术实施例提供的视频码流调整方法的流程示意图;图3为本技术实施例提供的确定第一网络状态的流程示意图;图4为本技术实施例提供的确定第二网络状态的流程示意图;图5为本技术实施例提供的视频帧间隔时延拥塞检测的原理示意图;图6为本技术实施例提供的结合第一网络状态和第二网络状态确定网络拥塞情况的流程示意图;图7为本技术实施例提供的视频卡顿检测的流程示意图;图8为本技术实施例提供的确定码流调整策略的流程示意图;图9为本技术实施例提供的视频传输系统的示意图;图10为本技术实施例提供的码流调整策略的执行流程示意图;图11为本技术实施例提供的多码流调整方法的流程示意图;图12为本技术实施例提供的视频流的示意图;图13为本技术实施例提供的视频流的示意图;图14为本技术实施例提供的关键帧错峰方法的流程示意图;
图15为本技术实施例提供的多码流调整方法的流程示意图;图16为本技术实施例提供的视频流的示意图;图17为本技术实施例提供的视频流的示意图。
具体实施方式
22.下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
23.首先,结合具体的附图介绍一下本技术实施例适用的系统架构图。
24.图1示出了本技术实施例适用的一种系统架构图,该系统包括播放端、编码端和平台端。其中,编码端与平台端可以通过无线网络连接,进而编码端可以通过平台端向播放端转发视频,形成了上行网络侧;播放端和平台端之间可以通过有线网络或无线网络连接,进而平台端可以向播放端下发视频,形成了下行网络侧。
25.应理解,播放端可以手机、解码墙、智能电视、电脑等具备显示能力的设备,本技术实施例不作具体的限制。编码端为具备视频编码能力、码流调整能力的设备,例如移动监控设备,本技术实施例不作具体的限制。
26.在本技术实施例中,编码端用于获取第一信息,第一信息包括编码端在预设时长内的视频帧发送信息,并将第一信息发送给播放端;播放端用于接收第一信息,并获取第二信息,第二信息包括播放端在预设时长内的视频帧接收信息和/或视频帧播放缓存信息;还用于基于第一信息和第二信息,确定在预设时长内的网络拥塞情况;和/或,基于第二信息,确定在预设时长内的视频帧播放情况;并将网络拥塞情况和/或视频帧播放情况发送给平台端;平台端用于接收网络拥塞情况和/或视频帧播放情况,并基于网络拥塞情况和/或视频帧播放情况,确定码流调整策略;平台端还用于向编码端以及播放端发送码流调整策略,码流调整策略用于对码流进行调整。如此,通过平台端对编码端以及播放端的码流进行协调控制,保证视频编码、视频解码以及视频传输的端到端匹配,提高了视频传输和播放的质量。
27.图2为本发明实施例提供的一种视频码流调整方法的流程示意图,该方法的执行主体以播放端(即图1的播放端)和编码端(即图1的编码端)为例,该过程包括以下步骤:s301:编码端发送第一信息。相应的,播放端接收第一信息。
28.其中,第一信息包括编码端在预设时长内的视频帧发送信息。本技术实施例中,视频帧发送信息包括但不限于视频帧发送数目、视频帧编码数目、视频帧发送时间、视频帧编码时间、帧类型、帧序号、视频帧发送耗时。
29.具体的,编码端获取第一信息后,将第一信息发送至平台端,由平台端将第一信息转发至播放端;或者,编码端获取第一信息后,通过编码端与播放端之间的传输通道直接将第一信息发送至播放端。
30.s302:播放端获取第二信息。
31.其中,第二信息包括播放端在预设时长内的视频帧接收信息和/或视频帧播放缓存信息。本技术实施例中,视频帧接收信息包括但不限于视频帧接收数目、视频帧接收时间、帧类型、帧序号,视频帧播放缓存信息包括但不限于视频帧缓存数目、视频帧播放数目、
帧类型、帧序号。
32.s303:播放端基于第一信息和第二信息,确定在预设时长内的网络拥塞情况;和/或,基于第二信息,确定在预设时长内的视频帧播放情况。
33.需要说明的是,本技术实施例中确定网络拥塞情况的实施方式有多种,包括但不限于以下方式:实施方式1,播放端基于第一信息和第二信息,确定第一网络状态;基于第一网络状态,确定网络拥塞情况。
34.在一种可能的实施方式中,第一网络状态可以与视频帧丢帧率关联,若上述视频发送信息包括视频帧发送数目,视频接收信息包括视频帧接收数目;播放端可以基于视频帧发送数目和视频帧接收数目,确定预设时长内的视频帧丢帧率;若视频帧丢帧率大于第一阈值,则确定第一网络状态为过载状态;或者,若视频帧丢帧率为第二阈值,则确定第一网络状态为正常状态;或者,若视频帧丢帧率大于等于第二阈值且小于第一阈值,则确定第一网络状态为低载状态。其中,在视频帧发送数目包括编码输入视频帧数目时,预设时长内的视频帧丢帧率loss=(编码输入视频帧数目-视频接收帧数目)/编码输入视频帧数目。
35.可以理解的是,“过载状态”是指网络带宽不足的状态,“正常状态”是指网络带宽正常使用的状态,“低载状态”是指网络带宽存在一定负荷的状态。相应的,第一网络状态为过载状态时,网络拥塞情况为网络带宽不足;第一网络状态为正常状态时,网络拥塞情况为网络带宽充足;第一网络状态为低载状态时,网络拥塞情况为网络带宽略微不足。
36.示例性的,请参见图3,第一阈值以10%为例,第二阈值以0为例,预设时长以5分钟为例。若编码输入视频帧数目为100帧,视频帧接收数目为50,则5分钟内的视频帧丢帧率loss=(编码输入视频帧数目-视频接收帧数目)/编码输入视频帧数目=(100-50)/100=50%,视频帧丢帧率loss大于10%,则确定第一网络状态为过载状态,即网络带宽不足;或者,若编码输入视频帧数目为100帧,视频帧接收数目为100,则5分钟内的视频帧丢帧率loss=(编码输入视频帧数目-视频接收帧数目)/编码输入视频帧数目=(100-100)/100=0,视频帧丢帧率loss为0,则确定第一网络状态为正常状态,即网络带宽充足;或者,若编码输入视频帧数目为100帧,视频帧接收数目为95,则5分钟内的视频帧丢帧率loss=(编码输入视频帧数目-视频接收帧数目)/编码输入视频帧数目=(100-95)/100=5%,视频帧丢帧率loss5%大于0且小于10%,则确定第一网络状态为低载状态,即网络带宽存在部分负载。
37.实施方式2,编码端基于第一信息和第二信息,确定第二网络状态,并基于第二网络状态,确定网络拥塞情况。
38.请参见图4,在一种可能的实施方式中,第二网络状态与视频帧时延关联;上述视频发送信息包括视频帧发送间隔,视频接收信息包括视频帧接收间隔;播放端基于第一信息和第二信息,确定第二网络状态的过程,包括以下步骤:s501:基于视频帧发送间隔和视频帧接收间隔,确定预设时长内的视频帧时延的变化趋势的量化值。
39.进一步的,基于视频帧发送间隔和视频帧接收间隔,确定预设时长内的视频帧时延的变化趋势的量化值,包括:s5011:基于视频帧发送间隔和视频帧接收间隔,确定视频帧间隔时延梯度值。
40.示例性的,视频帧间隔延迟梯度值(delta_ms)=视频帧接收间隔(recv_delta_
ms)-视频帧发送间隔send_delta_ms。
41.s5012:根据预设时长内的视频帧间隔时延梯度值确定视频帧时延的变化趋势的量化值。
42.其中,基于视频帧组延迟梯度拥塞检测算法检测原理如图5所示,编码端持续将视频帧发送给播放端。其中,frame(i)代表第i个视频帧组,frame(i-1)代表第i-1个视频帧组,frame(i+1)代表第i+1个视频帧组,每个视频帧组包含多个视频帧,比如将连续的视频帧按照3个1组进行划分,分为第1组,第2组,
……
,第i-1组,第i组。t(i)代表视频帧组i的最后一个帧的到达时间,t(i-1)代表视频帧组i-1的最后一个帧的到达时间,t(i)代表视频帧组i最后一个帧的发送时间,t(i-1)代表视频帧组i-1最后一个帧的发送时间。两个帧组之间的延迟变化d(i)满足如下公式:d(i)=(t(i)

t(i-1))

(t(i)

t(i-1));其中,d(i)为0,则网络没有拥塞,d(i)大于0则网络存在拥塞,d(i)小于0则网络拥塞正在恢复。
43.进一步的,播放端可以结合一次指数平滑预测算法和最小二乘线性回归算法,将预设时长内的视频帧间隔延迟梯度值进行累加、平滑和线性回归,得到视频帧时延的变化趋势的量化值,并通过该变化趋势的量化值表征网络的拥塞程度。
44.s502:基于视频帧时延的变化趋势的量化值,确定第二网络状态。
45.其中,播放端可以将视频帧时延的变化趋势的量化值与预设阈值相比较,确定第二网络状态;若视频帧时延的变化趋势的量化值大于第三阈值,且在预设时长内网络带宽的过载次数超出第四阈值和/或网络带宽的过载时长超出第五阈值,则确定第二网络状态为过载状态;或者,若视频帧时延的变化趋势的量化值小于第六阈值,则确定第二网络状态为低载状态;或者,若视频帧时延的变化趋势的量化值小于等于第三阈值且大于等于第六阈值,且在预设时长内网络带宽的正常次数超出第七阈值和/或网络带宽的正常时长超出第八阈值,则确定第二网络状态为正常状态。
46.示例1,预设时长以5分钟为例,第三阈值以10%为例,第四阈值以2次为例,第五阈值以1分钟为例。例如,若视频帧时延的变化趋势的量化值为15%,5分钟内网络带宽的过载次数为3次,网络带宽的过载时长为4分钟,则视频帧时延的变化趋势的量化值大于第三阈值,且在5分钟内网络带宽的过载次数超出第四阈值以及网络带宽的过载时长超出第五阈值,则确定第二网络状态为过载状态;又例如,若视频帧时延的变化趋势的量化值为15%,5分钟内网络带宽的过载次数为3次,则视频帧时延的变化趋势的量化值大于第三阈值,且在5分钟内网络带宽的过载次数超出第四阈值,则确定第二网络状态为过载状态;再例如,若视频帧时延的变化趋势的量化值为15%,网络带宽的过载时长为4分钟,则视频帧时延的变化趋势的量化值大于第三阈值,且在5分钟内网络带宽的过载时长超出第五阈值,则确定第二网络状态为过载状态。
47.示例2,预设时长以5分钟为例,第六阈值以5%为例。若视频帧时延的变化趋势的量化值1%,则视频帧时延的变化趋势的量化值小于第六阈值,则确定第二网络状态为低载状态。
48.示例3,预设时长以5分钟为例,第三阈值以10%为例,第四阈值以2次为例,第五阈值以1分钟为例,第六阈值以5%为例,第七阈值以50次为例,第八阈值以3分钟为例。例如,若
视频帧时延的变化趋势的量化值为8%,5分钟内网络带宽的正常次数为55次,网络带宽的正常时长为4分钟,则视频帧时延的变化趋势的量化值小于第三阈值且大于第六阈值,且在5分钟内网络带宽的正常次数超出第七阈值和/或网络带宽的正常时长超出第八阈值,则确定第二网络状态为正常状态。又例如,若视频帧时延的变化趋势的量化值为8%,5分钟内网络带宽的正常次数为55次,则视频帧时延的变化趋势的量化值小于第三阈值且大于第六阈值,且在5分钟内网络带宽的正常次数超出第七阈值,则确定第二网络状态为正常状态。又例如,若视频帧时延的变化趋势的量化值为8%,网络带宽的正常时长为4分钟,则视频帧时延的变化趋势的量化值小于第三阈值且大于第六阈值,且在5分钟内网络带宽的正常时长超出第八阈值,则确定第二网络状态为正常状态。
49.相应的,第二网络状态为过载状态时,网络拥塞情况为网络带宽不足;第二网络状态为正常状态时,网络拥塞情况为网络带宽充足;第二网络状态为低载状态时,网络拥塞情况为网络带宽略微不足。
50.可选的,播放端确定第二网络状态之后,还可以执行s503:根据视频帧时延的变化趋势的量化值与第三阈值或第六阈值的差值的绝对值动态调整上述第三阈值和第六阈值。如此,使得基于视频帧时延的网络拥塞检测方法可以适用于不同的应用场景。
51.其中,s503具体包括如下步骤:s5031:确定视频帧时延变化值的变化趋势的量化值trend与动态阈值threshold_的差值的绝对值trend_deta。
52.s5032:根据差值的绝对值trend_deta,确定动态阈值的调整值。
53.示例性的,可以根据如下公式,确定动态阈值的调整值。
54.deta=k*(trend_deta-threshold_)*deta_t;其中,deta为阈值调整值,k为调整因子,trend_deta为视频帧时延变化值的变化趋势的量化值trend与动态阈值threshold_的差值的绝对值,deta_t为上一次动态阈值更新的时间差。其中,deta_t》=100毫秒。
55.其中,调整因子k是根据变化趋势的量化值trend与动态阈值threshold_的差值绝对值trend_deta确定的。例如,trend_deta《threshold_,则调整因子k=上调系数kup(即增大k);trend_deta》=threshold_,则调整因子k=下调系数kdown(即减小k)。
56.s5033:根据动态阈值的调整值,更新动态阈值。
57.应理解,动态阈值是指上述第三阈值和第六阈值。
58.实施方式3,播放端基于第一信息和第二信息,确定第一网络状态和第二网络状态;基于第一网络状态和第二网络状态,确定网络拥塞情况。
59.请参见图6,播放端基于第一网络状态和第二网络状态,确定网络拥塞情况的过程可以是:播放端获取第一网络状态和第二网络状态,在确定第一网络状态和/或第二网络状态为过载状态时,则确定预设时长内的网络带宽处于过载状态;或者,在确定第一网络状态和第二网络状态均为正常状态时,则确定预设时长内的网络带宽处于正常状态;或者,在确定第一网络状态为低载状态,第二网络状态为正常状态时,则确定预设时长内的网络带宽处于低载状态。其中确定第一网络状态和第二网络状态的具体的实施方式,请参见前文关于实施方式1和实施方式2的描述,这里不再赘述。
60.示例性的,预设时长以5分钟为例,在5分钟内第一网络状态和/或第二网络状态为过载状态时,则确定5分钟内的网络带宽处于过载状态;或者,在5分钟内第一网络状态和第
二网络状态均为正常状态时,则确定5分钟内的网络带宽处于正常状态;或者,在确定第一网络状态为正常状态,第二网络状态为低载状态时,则确定5分钟内的网络带宽处于低载状态。
61.需要说明的是,播放端基于第二信息,确定在预设时长内的视频帧播放情况,有多种实施方式,包括但不限于以下实施方式:实施方式1,视频接收信息包括视频帧接收间隔,视频播放缓存信息包括视频帧缓存时间;播放端基于第二信息,确定在预设时长内的视频帧播放情况,包括:根据视频帧接收间隔和视频帧缓存时间,确定预设时长内的帧播放抖动时间;若帧播放抖动时间小于等于第九阈值,则确定在预设时长内视频播放未卡顿;或者,若帧播放抖动时间大于第九阈值,则确定在预设时长内视频播放卡顿。其中,帧播放抖动时间(jitter time)=视频帧缓存时间(buffer time)-视频帧接收间隔(interval)。
62.示例性的,第九阈值为2s,视频帧缓存时间(buffer time)为1s,视频帧接收间隔(interval)为0.6s。帧播放抖动时间(jitter time)=视频帧缓存时间(buffer time)-视频帧接收间隔(interval)=0.4s,则帧播放抖动时间小于第九阈值,则确定在预设时长内视频播放未卡顿。
63.实施方式2,视频接收信息包括视频帧接收间隔,视频播放缓存信息包括视频帧缓存时间;播放端基于第二信息,确定在预设时长内的视频帧播放情况,包括:根据视频帧接收间隔和视频帧缓存时间,统计预设时长内的帧播放抖动次数;若帧播放抖动次数小于等于第十阈值,则确定在预设时长内视频播放未卡顿;或者,若帧播放抖动次数大于第十阈值,则确定在预设时长内视频播放卡顿。
64.示例性的,第十阈值为3次,5分钟内的帧播放抖动次数未4次,则帧播放抖动次数大于第十阈值,则确定在5分钟内视频播放卡顿。
65.实施方式3,请参见图7,播放端获取第二信息(即视频帧缓存时间(buffer time)和视频帧接收间隔(interval))之后,确定帧播放抖动时间(jitter time),帧播放抖动时间(jitter time)小于预设阈值,则确定视频播放卡顿;进一步,统计预设时长内的帧播放抖动次数,在帧播放抖动次数大于第十阈值时,才认为在预设时长内视频播放卡顿。或者,统计预设时长内的帧播放抖动时长,在帧播放抖动时长大于第九阈值时,才认为在预设时长内视频播放卡顿,停止取流。如此,使得视频卡顿检测更灵活。
66.s304:平台端基于视频帧播放情况和/或网络拥塞情况,确定码流调整策略。
67.请参见图8,在一种可能的实施方式中,平台端基于视频帧播放情况和/或网络拥塞情况,确定码流调整策略的过程可以是:获取视频帧播放情况和网络拥塞情况,在预设时长内视频播放卡顿和/或网络带宽处于过载状态时,码流调整策略用于指示编码端下调码流;或者,在预设时长内视频播放未卡顿且网络带宽处于正常状态时,码流调整策略用于指示编码端上调码流;或者,在预设时长内视频播放未卡顿且网络带宽处于低载状态时,码流调整策略指示码流不变。可以理解的,图8中的实施方式仅仅作为一个示例,本发明中码流调整策略可基于实际场景需求进行设置,而不局限于上述视频播放情况和网络拥塞情况与码流调整策略的对应关系。
68.s305:平台端向编码端以及播放端发送码流调整策略。相应的,编码端以及播放端接收码流调整策略。
69.s306:编码端以及播放端基于码流调整策略对码流进行调整。
70.示例性的,码流调整策略指示编码端下调码流,则编码端下调码流,例如将码流从2m降低为1m。若码流调整策略指示编码端上调码流,则编码端上调码流,例如将码流从1m降低为2m。
71.在另一个实施例中,平台端包括视频传输监测模块以及动态码率平衡模块,其中:编码端还用于将上行网络传输带宽信息发送给平台端;播放端还用于将下行网络传输带宽信息发送给平台端;视频传输监测模块用于接收上行网络传输带宽信息以及下行网络传输带宽信息;视频传输监测模块还用于确定基于上行网络传输带宽信息、下行网络传输带宽信息、网络拥塞情况和/或视频帧播放情况,确定码流调整策略,并将码流调整策略发送给动态码率平衡模块;若码流调整策略为下调码流,则动态码率平衡模块用于基于码流调整策略控制播放端降低播放速率,并增大播放端的接收缓存模块的容量;动态码率平衡模块还用于控制编码端增大发送缓存模块的容量,并降低编码码率。
72.示例性地,在5g/4g/wi-fi等无线环境下,大规模网络摄像机等编码端通过无线网络接入到平台端(包括云平台、nvr、evs等),通过平台端对视频进行存储,以及转发给播放端进行实时视频播放。当网络受环境干扰时,往往会发生视频编码、视频解码与视频传输不匹配的问题,网络带宽出现较大波动,导致视频整体的传输效率较低,易出现播放卡顿和录像缺失等问题,导致用户视频体验差。
73.具体的,由于视频需要经过平台端接入进行转发,视频编码端无法感知用户下行视频传输质量和视频播放质量,视频播放端也无法感知视频编码端上行视频传输质量,造成视频编码端和视频解码端的感知隔离,视频生产、视频消费和视频传输完全不匹配,三者之间的策略配合较差。当网络带宽出现波动(比如下行传输网络带宽不足)时,视频编码端无法感知,依然按照原始编码速率生产视频,视频传输不及时,会导致视频解码端出现播放卡顿、花屏等问题。
74.示例性地,本实施例中的平台端中设有视频传输监测模块以及动态码率平衡模块,视频传输监测模块用于对编码端到播放端的网络传输质量进行检测,动态码率平衡模块用于对上行传输网络以及下行传输网络进行码流调节。具体的,视频传输检测模块获取上行网络传输带宽信息以及下行网络传输带宽信息,基于上行网络传输带宽信息、下行网络传输带宽信息、网络拥塞信息以及视频帧播放情况确定视频传输系统的视频传输和播放质量,进而制定相应的码流调整策略并发送至动态码流平衡模块。动态码流平衡模块确定接收的码流调整策略是否为下调码流,若是,则控制播放端降低播放速率、增大播放端的接收缓存模块的容量、控制编码端增大发送缓存模块的容量以及降低编码码率。
75.请参阅图9,图9为本技术实施例提供的视频传输系统的示意图。
76.示例性地,编码端和播放端通过流媒体接入和传输等协议接入到平台端,使得编码端的编码码流能够通过平台端转发给播放端进行解码播放。具体步骤如下:步骤1:编码端的上行带宽探测模块上报当前的上行网络传输带宽信息以及视频帧发送信息。其中,视频帧发送信息包括帧编码时间、帧类型、帧序号、帧发送耗时等。具体的,上行网络传输带宽信息反馈至平台端的视频传输监测模块,视频帧发送信息直接反馈至播放端。
77.步骤2:播放端根据编码端反馈的视频帧发送信息、视频帧接收信息以及视频播放
缓存信息,通过视频解码模块和反馈带宽评估模块分别对当前码流的播放质量和网络传输质量进行检测评估,得到视频帧播放情况和网络拥塞情况,并将视频帧播放情况、网络拥塞情况以及探测得到的下行网络传输带宽信息反馈至平台端的视频传输监测模块。
78.步骤3:平台端的视频传输监测模块接收上述上行网络传输带宽信息、下行网络传输带宽信息、网络拥塞情况以及视频帧播放情况,并基于以上信息进行视频流量均值过载检测。当视频传输网络无法承载当前编码视频的传输时,平台端的视频传输监测模块指定码流调整策略,并将上述码流调整策略发送至动态码率平衡模块。
79.具体的,平台端的视频传输监测模块基于视频帧播放情况获取播放端的当前播放平滑状态,并基于上行网络传输带宽信息、下行网络传输带宽信息以及网络拥塞情况确定系统编码端到播放端的当前网络带宽状态。若监测到播放平滑状态卡顿,或者网络带宽状态处于过载状态,则向动态码率平衡模块输出码流下调的码流调整策略;当监测到播放平滑状态流畅,并且网络带宽状态处于正常状态,则向动态码率平衡模块输出码流上调的码流调整策略;当监测到播放平滑状态流畅,并且网络带宽状态处于低载状态,则向动态码率平衡模块输出码流不变的码流调整策略,动态码率平衡模块基于上述码流调整策略对码流进行调整。当完成上述流程后,确定是否需要停止对码流进行监测,若是则结束码流调整进程。
80.步骤4:动态码流平衡模块接收码流调整策略,并基于码流调整策略对编码端和设备端的码流以及缓存进行调节。具体的,若码流调整策略为下调码流,则动态码率平衡模块用于基于码流调整策略控制播放端降低播放速率,并增大播放端的接收缓存模块的容量;动态码率平衡模块还用于控制编码端增大发送缓存模块的容量,并降低编码码率。
81.请参阅图10,图10为本技术实施例提供的码流调整策略的执行流程示意图。
82.在其中一个具体实施例中,若码流调整策略为下调码流,上述步骤4具体包括:步骤1:基于上行网络传输带宽信息以及下行网络传输带宽信息,确定上行网络传输带宽以及下行网络传输带宽的较小值bi;步骤2:动态码率平衡模块执行码流下调的码流调整策略,降低播放端视频解码模块的播放速率,以正常播放速率的α倍进行慢速播放,其中α值的大小可基于实际场景的需求进行设置,优选的α∈[0.8, 1];步骤3:动态码率平衡模块增大播放端的接收缓存模块的缓存容量,例如,引入接收视频延时数据,通过流量峰值平衡技术计算需要增大的缓存容量;步骤4:动态码率平衡模块增大编码端的发送缓存模块的缓存容量,例如,引入发送视频延时数据,通过流量峰值平衡技术计算需要增大的缓存容量;步骤5:等待一定的时间后,动态码流平衡模块通知编码端降低编码码率,控制编码端以新的码率bt进行编码,其中bt=bi*γ,γ值的大小可基于实际场景的需求进行设置,优选的γ∈[0.5, 0.8]。
[0083]
本实施例中平台端的视频传输监测模块根据上行网络传输带宽信息、下行网络传输带宽信息、网络拥塞情况和/或视频帧播放情况,确定码流调整策略,并将码流调整策略发送给动态码率平衡模块;动态码流平衡模块基于码率调整策略控制播放端降低播放速率、增大播放端的接收缓存模块的容量、控制编码端增大发送缓存模块的容量以及降低编码端的编码码率,通过降低播放端播放速率以及编码端的编码码流以平衡上行网络和下行
网络的带宽,并通过增大接收缓存模块以及发送缓存模块的容量以对视频数据进行动态存储,从而保证视频编码码率、视频解码播放与视频传输端到端匹配,且匹配过程中视频传输和视频播放过程不会丢失数据,从而提高了视频传输系统的稳定性和视频播放的流畅性,进而提高了用户体验。
[0084]
在另一个实施例中,若码流调整策略为上调码流,且动态码率平衡模块向编码端以及播放端发送过下调码流的码流调整策略,则动态码率平衡模块还用于基于下行网络传输带宽信息确定第一延时时间;若第一延时时间大于预设阈值,则动态码率平衡模块用于基于码流调整策略控制播放端提高播放速率;若第一延时时间小于预设阈值,则动态码率平衡模块用于将播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量还原为初始状态。
[0085]
示例性地,动态码率平衡模块向编码端以及播放端发送过下调码流的码流调整策略后,若码流调整策略为上调码流,则继续基于码流调整策略对编码端和设备端的码流以及缓存进行调节,包括:基于下行网络传输带宽信息确定第一延时时间,第一延时时间即为播放端的接收缓存模块的视频缓冲延时时间。将该第一延时时间与预设阈值进行比对,若大于预设阈值,则表明视频缓冲延时过大,通过动态码流平衡模块控制播放端提高播放速度,以降低视频缓冲延时时间;当第一延时时间小于预设阈值,则表明视频缓冲延时正常,此时可以将播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量恢复正常。
[0086]
在其中一个具体实施例中,如图10所示,上述步骤包括:步骤1:动态码率平衡模块基于下行网络传输带宽信息计算播放端接收缓存模块的视频缓冲延时td,即第一延时时间,并将视频缓冲延时td与预设阈值ts2进行比较以确定视频缓冲延时是否过大;步骤2:若视频缓冲延时td大于预设阈值ts2,则视频缓冲延时过大,动态码率平衡模块需要提升播放端视频解码模块的播放速率,以正常播放速度的β倍进行播放,β值可基于实际场景的需求进行设置,优选的β∈[1,1.2];步骤3:若视频缓冲延时td小于预设阈值ts2,则表明视频缓冲延时正常,动态码率平衡模块恢复播放端视频解码模块的播放速率;步骤4:若播放端的接收缓存模块的缓存没有恢复为默认值,则逐步减少接收缓存模块的缓存;步骤5:若编码端的发送缓存模块的缓存没有恢复为默认值,则逐步减小发送缓存模块的缓存。
[0087]
请参阅图11,图11为本技术实施例提供的多码流调整方法的流程示意图。
[0088]
可选的,若存在多个编码端设备的多个码流需要进行码率平衡处理时,需要确定优先进行码率平衡操作的码流,具体步骤如下:步骤1:平台端确定当前视频流量均值过载的码流数目m;步骤2:若视频流量均值过载的码流数目m超过1,从上述m个码流中选择上行网络传输带宽与编码码率比值最小的码流,例如码流1的上行网络传输带宽为10mbps,视频编码码率为5mbps,比值为2,码流2的上行网络传输带宽为9mbps,视频编码码率为3mbps,比值为3,则选择码流1优先进行码率平衡操作;或者,基于流量峰值平衡技术选择优先级更高的码流进行码率平衡操作;
步骤3:按照单个码流的码率平衡处理流程对选取的码流进行码率调整。
[0089]
本实施例若码流调整策略为上调码流,且动态码率平衡模块向编码端以及播放端发送过下调码流的码流调整策略,则通过第一延时时间的大小确定是否恢复播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量,从而在视频编码码率、视频解码播放与视频传输端到端匹配的状况下,及时恢复视频传输质量以及播放质量,进而提高了用户的观看体验。
[0090]
在另一个实施例中,平台端包括视频传输监测模块以及关键帧错峰模块,其中:视频传输监测模块用于基于第一信息和第二信息确定是否存在关键帧碰撞;若存在关键帧碰撞,则确定关键帧错峰策略,并将关键帧错峰策略发送给关键帧错峰模块;关键帧错峰模块向编码端以及播放端发送关键帧错峰策略。
[0091]
请参阅图12-图13,图12-图13为本技术实施例提供的视频流的示意图。
[0092]
示例性地,图12-图13中横坐标表示时间,单位为毫秒(ms),纵坐标表示码流,单位为每毫秒内的字节量(kbyte/ms)。编码端实时以一定的频率和周期发送视频帧,如图12所示,其中视频关键i帧要比普通p帧数据量大很多(通常10倍以上)。网络中的流量特征以fps=25、gop=50的视频为例,每40ms产生一个视频帧,每25*50*40=2000毫秒产生一个关键i帧。当多个编码端同时发送视频帧时,编码端设备越多,越容易出现同一时间点有多台编码端设备发送i帧的情况(i帧碰撞)。当发生i帧碰撞时,在网络中往往会出现短时间内大量数据量突发,从而造成数据拥塞、画面数据拥塞、画面时延增大以及卡顿等情况,在5g/4g无线网络环境下尤为明显。如图13所示,图13为两台编码端设备发生i帧碰撞时的视频流的示意图。
[0093]
示例性地,平台端还包括视频传输监测模块以及关键帧错峰模块,视频传输监测模块基于第一信息中的视频帧发送信息,以及第二信息中的视频帧接收信息,确定关键帧的时序分布状况,进而确定是否存在关键帧碰撞。若存在关键帧碰撞,则视频传输监测模块基于关键帧碰撞状况确定关键帧错峰策略,并将关键帧错峰策略发送至关键帧错峰模块。关键帧错峰模块接收关键帧错峰策略后,控制编码端以及播放端执行该错峰策略。
[0094]
在其中一个具体实施例中,在进行关键帧碰撞检测前,平台端的缓存中已经保存有第一信息以及第二信息,以用于检测分析,例如,平台端在对第一信息以及第二信息进行转发的同时将第一信息以及第二信息保存至缓存,或者在编码端以及播放端各自获取第一信息以及第二信息后直接发送至平台端,以用于平台端的保存;在另一个具体实施例中,在进行关键帧碰撞检测时,平台端实时请求编码端以及播放端发送第一信息以及第二信息,以用于检测分析。
[0095]
可选的,在关键帧错峰过程中,平台端的动态缓存平衡模块提前控制播放端的解码调节模块(调整接收缓存模块的容量大小和视频解码模块的播放速率),并提前控制编码端的编码调节模块(调整发送缓存模块的容量大小),从而保持关键帧在流量错峰的过程中,播放端能够流畅的播放视频。
[0096]
本实施例中视频传输监测模块基于第一信息和第二信息确定是否存在关键帧碰撞,在存在关键帧碰撞时确定关键帧错峰策略,关键帧错峰模块基于该关键帧错峰策略控制编码端以及播放端进行错峰,从而降低了从编码端到播放端的流量峰值,以平衡上行网络和下行网络的带宽,保证了从编码端到播放端流量的稳定性,提高了带宽的利用率,并且
在调整过程中在不丢失视频数据的前提下,视频传输和视频播放的流畅性不受影响,从而避免了关键帧错峰时的画面卡段,保证了视频传输和播放的质量。
[0097]
在另一个实施例中,若存在关键帧碰撞,则关键帧错峰模块用于控制播放端降低播放速率,并增大播放端的接收缓存模块的容量;关键帧错峰模块还用于控制编码端增大发送缓存模块的容量,并在预设时间后调整关键帧生成时序。
[0098]
示例性地,在存在关键帧碰撞的情况下,关键帧错峰模块控制编码端以及播放端执行关键帧错峰策略,具体包括:控制播放端降低播放速率、增大播放端的接收缓存模块的容量、控制编码端增大发送缓存模块的容量以及在预设时间后调整关键帧生成时序。
[0099]
请参阅图14,图14为本技术实施例提供的关键帧错峰方法的流程示意图。
[0100]
在其中一个具体实施例中,关键帧错峰方法包括:步骤1:播放端将下行网络传输带宽信息发送至平台端,平台端视频传输监测模块进行i帧流量峰值叠加检测,确定当前码流的i帧和上个码流的i帧的接收时间间隔ti,通过判断接收时间间隔ti与预设阈值ts1来确定是否发生i帧流量峰值叠加;步骤2:若接收时间间隔ti小于预设阈值ts1,则表明发生i帧流量峰值叠加,降低播放端视频解码模块的播放速率,以正常播放速度的α倍进行播放,其中优选的α∈[0.8, 1],此时的减速播放人眼感知不明显;步骤3:关键帧错峰模块增大播放端的接收缓存模块的容量,通过引入接收视频延时数据,计算需要增加的缓存容量大小;步骤4:关键帧错峰模块增大编码端的发送缓存模块的容量,通过引入发送视频延时数据,计算需要增加的缓存容量大小;步骤5:等待预设时间后,关键帧错峰模块通知编码端调整当前码流的i帧生成时序,要求编码端在当前时刻重新生成i帧,并按照指定视频gop周期进行视频编码。
[0101]
本实施例通过关键帧错峰模块控制编码端以及播放端进行关键帧错峰,在错峰过程中对播放端的播放速率以及接收缓存模块的容量等进行调整,以保证视频编码码率、视频解码播放与视频传输端到端匹配,从而保证了关键帧错峰过程中视频端视频播放的稳定性。
[0102]
在另一个实施例中,播放端还用于将下行网络传输带宽信息发送给平台端,在关键帧错峰模块向编码端以及播放端发送关键帧错峰策略之后,关键帧错峰模块还用于基于下行网络传输带宽信息确定第二延时时间;若第二延时时间大于预设阈值,则关键帧错峰模块用于控制播放端提高播放速率;若第二延时时间小于预设阈值,则关键帧错峰模块用于将播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量还原为初始状态。
[0103]
示例性地,在关键帧错峰模块向编码器以及播放端发送关键帧错峰策略并执行完错峰策略后,播放端将下行网络传输带宽信息发送至平台端,平台端基于下行网络传输带宽信息确定播放端接收缓存模块的视频缓冲延时,即第二延时时间;将第二延时时间与预设阈值进行比较,若大于预设阈值,则表明视频缓冲延时过高,此时关键帧错峰模块控制播放端提高播放速度,以减小视频缓冲延时;若小于预设阈值,则表明此时播放端的视频缓冲延时正常,将播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量还原为初始状态。
[0104]
在其中一个具体实施例中,图14所示,完成i帧流量峰值错开后,关键帧错峰方法
还包括:步骤1:关键帧错峰模块计算播放端接收缓存模块的视频缓冲延时td,即第二延时时间,并将视频缓冲延时td与预设阈值ts2进行比较;步骤2:若视频缓冲延时td大于预设阈值ts2,则表明视频延时较大,需要提高播放端视频解码模块的播放速率,以正常速度的β倍进行播放,其中优选的β∈[1, 1.2],此时加速播放人眼感知不明显;步骤3:若视频缓冲延时td小于预设阈值ts2,则表明视频延时正常,分别恢复播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量。
[0105]
请参阅图15,图15为本技术实施例提供的多码流调整方法的流程示意图。
[0106]
可选的,若存在多个码流需要进行i帧流量峰值平衡处理,需要先确定优先进行平衡处理的码流。具体步骤如下:步骤1:平台端确定存在i帧流量峰值叠加的码流数目n;步骤2:对于 i帧流量峰值叠加的码流数目n超过1的,从i帧峰值叠加的多个码流中选择码流调整策略评估为码流下调的码流作为第一优先调整码流,码流调整策略评估为码流不变的码流作为第二优先调整码流,码流调整策略评估为码流上调的码流作为第三优先调整码流;如果每个优先级内还有多个码流需要进行调整,则选择上行网络传输带宽和编码码率比值较小的码流作为优先进行调整的码流;比如第一优先调整的码流有码流1和码流2,码流1的上行网络传输带宽为10mbps,编码码率为5mpbs,比值为2,码流2的上行网络传输带宽为9mbps,编码码率为3mpbs,比值为3,则选取码流1优先进行调整;步骤3:按照单个码流的i帧流量峰值平衡处理流程对选取的码流进行i帧时序调整。
[0107]
请参阅图16-图17,图16-图17为本技术实施例提供的视频流的示意图。
[0108]
如图16-图17所示,其中横坐标表示时间,单位为秒(s),纵坐标表示码流,单位为位翻转量/100毫秒(bits/100ms)。编码端包括8台编码端设备。通过本实施例的关键帧错峰调整方法,将i帧碰撞时的流量峰值94mbps下降为错峰后的流量峰值53mbps,流量峰值下降了43.6%。
[0109]
本实施例在执行关键帧错峰策略后,还通过第二延时时间对播放端的播放速率、接收缓存模块的容量以及发送缓存模块的容量进行调整,降低了关键帧重合时的流量峰值,缓解了网络拥塞的情形,进而提高了带宽利用率。
[0110]
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0111]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申
请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0112]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0113]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1