CN114760472B - 一种基于条带i帧均衡编解码***及其方法 - Google Patents
一种基于条带i帧均衡编解码***及其方法 Download PDFInfo
- Publication number
- CN114760472B CN114760472B CN202210274463.1A CN202210274463A CN114760472B CN 114760472 B CN114760472 B CN 114760472B CN 202210274463 A CN202210274463 A CN 202210274463A CN 114760472 B CN114760472 B CN 114760472B
- Authority
- CN
- China
- Prior art keywords
- frame
- module
- stripe
- value
- video
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- 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/124—Quantisation
-
- 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/146—Data rate or code amount at the encoder output
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种基于条带I帧均衡编解码***及其方法,该方法把时间进行条带切片,让视频源在条带不同切片发送从而避免网络峰值,同时检测网络品质不佳时通过减低图像编码量化QP最大值减少网络带宽,减少视频卡顿,当出现视频源处理细节较多导致帧组的导致实际图像质量差的情况时,通过网络量化估计值判断网络有余量,通过减低图像编码量化QP最大值,来实现对该视频源的图像画质提升,对于视频复制流通过显示端的网络量化估计值,判断显示端接收不佳时,对复制流进行条带切片重分配,让同视频源的复制流实现I帧发送错位,避免网络峰值,提升传输品质。
Description
技术领域
本发明涉及视频编解码领域,具体涉及一种基于条带I帧均衡编解码***及其方法。
背景技术
随着移动互联网技术的蓬勃发展,视频已无处不在,视频的传输、存储也面临着巨大的挑战,视频编解码,将是保证用户高品质视频体验的重要技术,视频编解码技术的主要作用,是在可用的计算资源内,追求尽可能高的视频重建质量和尽可能高的压缩比,以达到带宽和存储容量的要求。视频编解码中I帧为帧内编码帧,P帧为前向预测编码在帧,通过将图像序列中前面已编码帧的时间冗余信息去充分去除压缩传输数据量的编码图像,也成为预测帧,视频编码I帧大小远大于P帧大小,视频源在中转分发时,多路视频在同时I帧发送时容易导致网络过载,因此需要一种方法错开I帧发送时间点来提升网络健壮性;
发明内容
本发明的目的在于提供一种基于条带I帧均衡编解码***及其方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于条带I帧均衡编解码***,包括:视频源帧产生模块1,视频源条带编码发送模块2,条带媒体接收模块3,图像QP监测模块4,条带网络品质检查模块5,条带接收调整模块6,条带中转调整模块7,条带媒体发送模块8,显示端网络品质检查模块9,显示端媒体接收模块10,显示端解码渲染模块11;
视频源帧产生模块1:视频源帧产生模块1接收视频源条带编码发送模块2的视频帧产生时间间隔,按照该时间间隔产生YUV视频帧数据;
视频源条带编码发送模块2:视频源条带编码发送模块2接收视频源帧产生模块1的YUV视频帧数据,接收条带接收调整模块6的视频条带调整信息,对YUV视频帧数据进行编码压缩;视频源条带编码发送模块2计算P帧间分片数*分片时长得到视频帧产生时间间隔,把视频帧产生时间间隔发送给视频源帧产生模块1,视频源条带编码发送模块2计算I帧产生UTC时间戳值为I帧产生分片序号*分片时长,视频源条带编码发送模块2得到下个P帧的序号为I帧产生分片序号+P帧间分片数,视频源条带编码发送模块2通过累加P帧间分片数依次可以计算出所有P帧的序号,视频源条带编码发送模块2得到下个I帧序号为I帧产生分片序号+I帧间分片数,视频源条带编码发送模块2通过累加I帧间分片数可以得到所有I帧的序号,当产生I帧的序号与P帧的序号相同时,该时间分片只产生I帧,视频源条带编码发送模块2根据I帧与P帧产生UTC时间戳值的YUV视频帧数据按照图像编码量化QP最大值编码为视频压缩帧,对其按照大小分包并标识序号,将分包、分包序号与时间分片序号发送给条带媒体接收模块3;
条带媒体接收模块3:条带媒体接收模块3接收视频源条带编码发送模块2的视频压缩帧的分包与分包序号,条带媒体接收模块3计算帧组丢包率,帧组为一个I帧以及参考的P帧,条带媒体接收模块3计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长,条带媒体接收模块3把帧组丢包率和帧组最大帧接收时长发送给条带网络品质检查模块5,条带媒体接收模块3把帧组的视频帧分包数据发送给图像QP监测模块4,条带媒体接收模块3将视频帧分包、分包序号与分片序号发送给条带媒体发送模块8;
图像QP监测模块4:图像QP监测模块4接收条带媒体接收模块3的帧组的视频帧分包数据,图像QP监测模块4把帧组的视频帧分包合并为视频帧;图像QP监测模块4对视频帧的所有宏块获取QP量化值,并取平均值得到过视频帧QP量化值,图像QP监测模块4把对帧组的所有视频帧的QP量化值得到帧组的QP量化值,图像QP监测模块4把帧组的QP量化值发送条带接收调整模块6;
条带网络品质检查模块5:条带网络品质检查模块5接收帧组丢包率与帧组最大帧接收时长;条带网络品质检查模块5计算该视频源的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+帧组最大帧接收时长-基准值的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率,条带网络品质检查模块5对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断,条带网络品质检查模块5把网络量化估计值发送给条带接收调整模块6;
条带接收调整模块6:条带接收调整模块6接收条带网络品质检查模块5的网络量化估计值,条带接收调整模块6接收图像QP监测模块4的帧组的QP量化值,条带接收调整模块6判断帧组的QP量化值大与门限阀值,条带接收调整模块6把视频源的图像编码量化QP最大值减少一个调整值,当视频源处理细节较多导致帧组的QP量化值过高,从而导致实际图像质量差的情况下,判断视频源条带编码发送模块2到条带媒体接收模块3的网络量化估计值小于下限阀值,通过减低图像编码量化QP最大值,来实现对该视频源的图像画质提升,条带接收调整模块6把调整后所有视频源,进行I帧的条带分配,条带接收调整模块6使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,条带接收调整模块6取当前视频帧调整周期,条带接收调整模块6依次对所有视频源分配处理,条带接收调整模块6依次把每个视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,发送给视频源条带编码发送模块2,条带接收调整模块6把所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值发送给条带中转调整模块7;
条带中转调整模块7:条带中转调整模块7接收条带接收调整模块6所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,按照条带接收调整模块6的方法生成调整周期以及每个调整分片流量预计值,当一个视频源被多个显示端查看时,则在I帧产生分片序号的分片的流量预计值自加视频源的I帧流量预计值,按照条带接收调整模块6的方法找到所有P帧分片,所有P帧分片的流量预计值自加视频源的P帧流量预计值,视频源的显示端中转流的I帧中转分片序号为I帧产生分片序号,条带中转调整模块7对复制流优先使用视频源的条带分片,保证视频传输时延,当条带中转调整模块7接收到显示网络品质检测模块9的网络量化估计值,判断显示的网络量化估计值大于阀值,则认为复制流不佳,进行复制流进行重新调整,条带接收调整模块6把调整周期的分片,为该视频源I帧分片的流量预计值自减视频源的I帧流量预计值,为该视频源P帧分片的流量预计值自减视频源的P帧流量预计值,条带中转调整模块7给视频源的复制流在调整周期上寻找流量预计值最低的分片,作为视频源的复制流的I帧中转分片序号,该分片的流量预计值自加视频源的I帧流量预计值,条带中转调整模块7按照条带接收调整模块6的方法找到所有P帧分片,所有复制流的P帧分片的流量预计值自加视频源的P帧流量预计值,条带中转调整模块7把视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数发送给条带媒体发送模块8;
条带媒体发送模块8:条带媒体发送模块8接收条带媒体接收模块3视频帧分包与分包序号与分片序号,条带媒体发送模块8接收条带中转调整模块7的视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数,条带媒体发送模块8计算中转偏差值,条带媒体发送模块8发送视频帧分包与分包序号给显示端媒体接收模块10;
显示端网络品质检查模块9:显示端网络品质检查模块9接收显示端媒体接收模块10的帧组丢包率与帧组最大帧接收时长,计算该中转流的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+帧组最大帧接收时长-基准值的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率,显示端网络品质检查模块9对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断,显示端网络品质检查模块9把网络量化估计值发条带中转调整模块7;
显示端媒体接收模块10:接收条带媒体发送模块8的视频帧分包与分包序号,显示端媒体接收模块10通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧,条带媒显示端媒体接收模块10计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长,显示端媒体接收模块10把帧组丢包率与帧组最大帧接收时长发送给显示端网络品质检查模块9,显示端媒体接收模块10把视频帧分包发送显示端解码渲染模块11;
显示端解码渲染模块11:显示端解码渲染模块11接收显示端媒体接收模块10的视频帧分包,合并视频帧,并解码渲染显示。
优选地,视频条带调整信息包含按时间分片调整条带信息,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,视频条带调整信息包含分片时长I帧产生分片序号,P帧间分片数,I帧间分片数,以及图像编码量化QP最大值。
优选地,条带媒体接收模块3通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,通过帧组分包丢失数/帧组分包总数得到帧组丢包率。
优选地,接收帧组丢包率越大说明网络差,可能是网络干扰丢包,也可能是网络过载,帧组最大帧接收时长越大说明网络过载,帧组最大帧接收时长越小说明网络欠载,判断两个网络品质需要融合帧组丢包率与帧组最大帧接收时长越大。
优选地,当网络量化估计值大于上限阀值时,条带接收调整模块6把该视频源的图像编码量化QP最大值累加一个调整值,图像编码量化QP最大值越大图像质量越差码流越小,当视频源条带编码发送模块2到条带媒体接收模块3网络品质不佳时通过减低图像编码量化QP最大值减少网络带宽,减少视频卡顿。
优选地,调整周期起始分片序号等于当前时刻的时间分片序号/I帧间分片数取整后再乘以I帧间分片数,当调整周期起始分片序号小于当前时刻的时间分片序号时,则加上I帧间分片数,调整周期结束序号为调整周期起始分片序号+I帧间分片数-1。
优选地,条带接收调整模块6给视频源在调整周期上寻找流量预计值最低的分片,把该分片的分片序号分配给该视频源,该视频源的I帧产生分片序号,调整周期的每个分片的流量预计值的初始值为0,调整视频源的I帧产生分片序号对应分片,则该分片的新的流量预计值等于分片当前流量预计值+视频源的I帧流量预计值,视频源的I帧流量预计值为10*50-视频源的QP最大值*50-视频源的QP最大值,视频源的QP的最大值为50,I与P帧码流比例为10/1,根据的I帧产生分片序号与视频源的P帧间分片数计算在调整周期的所有P帧分片,I帧产生分片序号+P帧间分片数得到得到P帧的分片序号,P帧的分片序号+P帧间分片数得到下一个P帧分片序号,当下一个P帧分片序号大于调整周期结束序号时,则下一个P帧分片序号自减I帧间分片数,一直到P帧片序号与I帧产生分片序号相同,表示找到所有P帧的分片,P帧的分片的流量预计值等于分片当前流量预计值+视频源的P帧流量预计值,视频源的P帧流量预计值为50-视频源的QP最大值*50-视频源的QP最大值。
优选地,中转偏差值为I帧中转分片序号-I帧产生分片序号,当中转偏差值小于零时,中转偏差值须加上I帧间分片数,中转偏差值加上网络延时偏差值,得到最终的中转偏差值,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,对每个时间分片,判断是否为视频源与显示端的中转流的发送分片,分片序号符合I帧中转分片序号+N*P帧间分片数,N为整体,中转流处于发送分片时,视频帧分包的分片序号+中转偏差值小于等于分片序号。
本发明还提供一种基于条带I帧均衡编解码方法,包括如下步骤,
S2、视频源条带编码发送模块2接收条带接收调整模块6调整视频编码,
S21、视频源条带编码发送模块2接收视频源帧产生模块1的YUV视频帧数据;
S22、视频源条带编码发送模块2接收条带接收调整模块6的视频条带调整信息,进行对YUV视频帧数据进行编码压缩;
S23、视频源条带编码发送模块2计算P帧间分片数*分片时长得到视频帧产生时间间隔,把视频帧产生时间间隔发送给视频源帧产生模块1;
S24、视频源条带编码发送模块2计算I帧产生UTC时间戳值为I帧产生分片序号*分片时长,视频源条带编码发送模块2得到下个P帧的序号为I帧产生分片序号+P帧间分片数,视频源条带编码发送模块2通过累加P帧间分片数依次可以计算出所有P帧的分片序号;
S25、视频源条带编码发送模块2得到下个I帧序号为I帧产生分片序号+I帧间分片数,视频源条带编码发送模块2通过累加I帧间分片数可以得到所有I帧的序号,当产生I帧的序号与P帧的序号相同时,该时间分片只产生I帧;
S26、视频源条带编码发送模块2根据I帧与P帧产生UTC时间戳值的YUV视频帧数据按照图像编码量化QP最大值进行编码成为视频压缩帧,视频源条带编码发送模块2对视频压缩帧按照固定大小分包并标识序号,分包、分包序号与分片序号发送给条带媒体接收模块3;
S3、条带媒体接收模块3接收视频帧处理,
S31、条带媒体接收模块3接收视频源条带编码发送模块2的视频压缩帧的分包与分包序号;
S32、条带媒体接收模块3通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧;
S33、条带媒体接收模块3计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长;
S34、条带媒体接收模块3把帧组丢包率和帧组最大帧接收时长发送给条带网络品质检查模块5;
S35、条带媒体接收模块3把帧组的视频帧分包发送给图像QP监测模块4,图像QP监测模块4把帧组的视频帧分包合并为视频帧;
S36、条带媒体接收模块3将视频帧分包、分包序号与分片序号发送给条带媒体发送模块8;
S4、图像QP监测模块4生成帧组QP值,
S41、图像QP监测模块4接收条带媒体接收模块3的帧组的视频帧分包数据,图像QP监测模块4把帧组的视频帧分包合并为视频帧;
S42、图像QP监测模块4对视频帧的所有宏块获取QP量化值,并取平均值得到过视频帧QP量化值;
S43、图像QP监测模块4把对帧组的所有视频帧的QP量化值得到帧组的QP量化值;
S44、图像QP监测模块4把帧组的QP量化值发送给条带接收调整模块6;
S5、条带网络品质检查模块5生成网络量化估计值,
S51、条带网络品质检查模块5接收帧组丢包率与帧组最大帧接收时长;
S52、条带网络品质检查模块5计算该视频源的量化参考值;
S53、条带网络品质检查模块5对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断;
S54、条带网络品质检查模块5把网络量化估计值发送给条带接收调整模块6;
S6、条带接收调整模块6结合网络量化估计值与帧组的QP量化值,调节调整视频源的编码,
S7、条带中转调整模块7调整中转发送策略,
S8、条带媒体发送模块8按条带中转调整模块7策略发送视频帧,
S81、条带媒体发送模块8接收条带媒体接收模块3视频帧分包、分包序号与分片序号;
S82、条带媒体发送模块8接收条带中转调整模块7的视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数;
S83、条带媒体发送模块8计算中转偏差值,为I帧中转分片序号-I帧产生分片序号,当中转偏差值小于零时,中转偏差值加上I帧间分片数,中转偏差值加上网络延时偏差值,得到最终的中转偏差值;
S84、时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,对每个时间分片,判断是否为视频源与显示端的中转流的发送分片,分片序号符合I帧中转分片序号+N*P帧间分片数,N为整体;
S85、当中转流处于发送分片时,中转流的视频帧分包的分片序号+中转偏差值小于等于分片序号;
S86、条带媒体发送模块8发送视频帧分包与分包序号给显示端媒体接收模块10;
S9、显示端媒体接收模块10接收条带媒体发送模块8的视频帧分包与分包序号处理,
S10、显示端网络品质检查模块9生成网络量化估计值;
S11、显示端解码渲染模块11接收显示端媒体接收模块10的视频帧分包,合并视频帧,并解码渲染显示。
优选地,所述S6包括以下步骤:
S61、条带接收调整模块6接收条带网络品质检查模块5的网络量化估计值;
S62、条带接收调整模块6接收图像QP监测模块4的帧组的QP量化值;
S63、当网络量化估计值大于上限阀值时,条带接收调整模块6把该视频源的图像编码量化QP最大值累加一个调整值,图像编码量化QP最大值越大图像质量越差码流越小,当视频源条带编码发送模块2到条带媒体接收模块3网络品质不佳时通过减低图像编码量化QP最大值减少网络带宽,减少视频卡顿;
S64、条带接收调整模块6判断帧组的QP量化值大与门限阀值,条带接收调整模块6把视频源的图像编码量化QP最大值减少一个调整值,当视频源处理细节较多导致帧组的QP量化值过高,从而导致实际图像质量差的情况下,判断视频源条带编码发送模块2到条带媒体接收模块3的网络量化估计值小于下限阀值,通过减低图像编码量化QP最大值,来实现对该视频源的图像画质提升;
S65、条带接收调整模块6把调整后所有视频源,进行I帧的条带分配,条带接收调整模块6使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长;
S66、条带接收调整模块6取当前视频帧调整周期,调整周期起始分片序号等于当前时刻的时间分片序号/I帧间分片数取整后再乘以I帧间分片数,当调整周期起始分片序号小于当前时刻的时间分片序号时,则加上I帧间分片数,调整周期结束序号为调整周期起始分片序号+I帧间分片数-1;
S67、条带接收调整模块6依次对所有视频源分配处理,条带接收调整模块6给视频源在调整周期上寻找流量预计值最低的分片,把该分片的分片序号分配给该视频源,该视频源的I帧产生分片序号;
S68、条带接收调整模块6依次把每个视频源的I帧产生分片序号、I帧间分片数,P帧间分片数,图像编码量化QP最大值,发送给视频源条带编码发送模块2;
S69、条带接收调整模块6把所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值发送给条带中转调整模块7。
优选地,所述S7包括以下步骤:
S71、条带中转调整模块7接收条带接收调整模块6所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,按照条带接收调整模块6根据I帧产生分片序号与I帧间分片数的方法生成调整周期以及每个调整分片流量预计值;
S72、当一个视频源被多个显示端查看时,则在I帧产生分片序号的分片的流量预计值自加视频源的I帧流量预计值,按照条带接收调整模块6的方法找到所有P帧分片,所有P帧分片的流量预计值自加视频源的P帧流量预计值,视频源的显示端中转流的I帧中转分片序号为I帧产生分片序号;
S73、条带中转调整模块7对复制流优先使用视频源的条带分片,保证视频传输时延,当条带中转调整模块7接收到显示网络品质检测模块9的网络量化估计值,判断显示的网络量化估计值大于阀值,则认为复制流不佳,进行复制流进行重新调整;
S74、条带接收调整模块6把调整周期的分片,为该视频源I帧分片的流量预计值自减视频源的I帧流量预计值,为该视频源P帧分片的流量预计值自减视频源的P帧流量预计值;
S75、条带中转调整模块7给视频源的复制流在调整周期上寻找流量预计值最低的分片,作为视频源的复制流的I帧中转分片序号,该分片的流量预计值自加视频源的I帧流量预计值;
S76、条带中转调整模块7按照条带接收调整模块6的方法找到所有P帧分片,所有复制流的P帧分片的流量预计值自加视频源的P帧流量预计值;
S77、条带中转调整模块7把视频源到显示端的流的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数发送给条带媒体发送模块8。
优选地,所述S9包括以下步骤:
S91、显示端媒体接收模块10通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧;
S92、显示端媒体接收模块10计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长;
S93、显示端媒体接收模块10把帧组丢包率与帧组最大帧接收时长发送给显示端网络品质检查模块9;
S94、显示端媒体接收模块10把视频帧分包发送给显示端解码渲染模块11。
优选地,所述S10包括以下步骤:
S101、显示端网络品质检查模块9接收显示端媒体接收模块10的帧组丢包率与帧组最大帧接收时长,计算该中转流的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+帧组最大帧接收时长-基准值的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率;
S102、显示端网络品质检查模块9对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断;
S103、显示端网络品质检查模块9把网络量化估计值发条带中转调整模块7。
优选地,S1中视频条带调整信息包含按时间分片调整条带信息,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长。视频条带调整信息包含分片时长I帧产生分片序号,P帧间分片数,I帧间分片数,以及图像编码量化QP最大值。
优选地,S52中当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+帧组最大帧接收时长-基准值的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率。
优选地,S67中调整周期的每个分片的流量预计值的初始值为0,调整视频源的I帧产生分片序号对应分片,则该分片的新的流量预计值等于分片当前流量预计值+视频源的I帧流量预计值;视频源的I帧流量预计值为10*50-视频源的QP最大值*50-视频源的QP最大值,视频源的QP的最大值为50,I与P帧码流比例为10/1,根据的I帧产生分片序号与视频源的P帧间分片数计算在调整周期的所有P帧分片,I帧产生分片序号+P帧间分片数得到P帧的分片序号,P帧的分片序号+P帧间分片数得到下一个P帧分片序号,当下一个P帧分片序号大于调整周期结束序号时,则下一个P帧分片序号自减I帧间分片数,一直到P帧片序号与I帧产生分片序号相同,表示找到所有P帧的分片,P帧的分片的流量预计值等于分片当前流量预计值+视频源的P帧流量预计值;视频源的P帧流量预计值为50-视频源的QP最大值*50-视频源的QP最大值。
与现有技术相比,本发明的有益效果为:
采用本发明的技术方案,把时间进行条带切片,让视频源在条带不同切片发送从而避免网络峰值,同时检测网络品质不佳时通过减低图像编码量化QP最大值减少网络带宽,减少视频卡顿。
当出现视频源处理细节较多导致帧组的导致实际图像质量差的情况时,通过网络量化估计值判断网络有余量,通过减低图像编码量化QP最大值,来实现对该视频源的图像画质提升。
对于视频复制流通过显示端的网络量化估计值,判断显示端接收不佳时,对复制流进行条带切片重分配,让同视频源的复制流实现I帧发送错位,避免网络峰值,提升传输品质。
附图说明
图1为本发明的功能框架示意图;
图中数字标注:视频源帧产生模块1,视频源条带编码发送模块2,条带媒体接收模块3,图像QP监测模块4,条带网络品质检查模块5,条带接收调整模块6,条带中转调整模块7,条带媒体发送模块8,显示端网络品质检查模块9,显示端媒体接收模块10,显示端解码渲染模块11。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明提供一种技术方案:一种基于条带I帧均衡编解码***,包括:
视频源帧产生模块1,视频源条带编码发送模块2,条带媒体接收模块3,图像QP监测模块4,条带网络品质检查模块5,条带接收调整模块6,条带中转调整模块7,条带媒体发送模块8,显示端网络品质检查模块9,显示端媒体接收模块10,显示端解码渲染模块11;
视频源帧产生模块1:视频源帧产生模块1接收视频源条带编码发送模块2的视频帧产生时间间隔,按照该时间间隔产生YUV视频帧数据;
视频源条带编码发送模块2:视频源条带编码发送模块2接收视频源帧产生模块1的YUV视频帧数据,接收条带接收调整模块6的视频条带调整信息,对YUV视频帧数据进行编码压缩;视频源条带编码发送模块2计算P帧间分片数*分片时长得到视频帧产生时间间隔,把视频帧产生时间间隔发送给视频源帧产生模块1,视频源条带编码发送模块2计算I帧产生UTC时间戳值为I帧产生分片序号*分片时长,视频源条带编码发送模块2得到下个P帧的序号为I帧产生分片序号+P帧间分片数,视频源条带编码发送模块2通过累加P帧间分片数依次可以计算出所有P帧的序号,视频源条带编码发送模块2得到下个I帧序号为I帧产生分片序号+I帧间分片数,视频源条带编码发送模块2通过累加I帧间分片数可以得到所有I帧的序号,当产生I帧的序号与P帧的序号相同时,该时间分片只产生I帧,视频源条带编码发送模块2根据I帧与P帧产生UTC时间戳值的YUV视频帧数据按照图像编码量化QP最大值编码为视频压缩帧,对其按照大小分包并标识序号,将分包、分包序号与时间分片序号发送给条带媒体接收模块3;
条带媒体接收模块3:条带媒体接收模块3接收视频源条带编码发送模块2的视频压缩帧的分包与分包序号,条带媒体接收模块3计算帧组丢包率,帧组为一个I帧以及参考的P帧,条带媒体接收模块3计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长,条带媒体接收模块3把帧组丢包率和帧组最大帧接收时长发送给条带网络品质检查模块5,条带媒体接收模块3把帧组的视频帧分包数据发送给图像QP监测模块4,条带媒体接收模块3将视频帧分包、分包序号与分片序号发送给条带媒体发送模块8;
图像QP监测模块4:图像QP监测模块4接收条带媒体接收模块3的帧组的视频帧分包数据,图像QP监测模块4把帧组的视频帧分包合并为视频帧;图像QP监测模块4对视频帧的所有宏块获取QP量化值,并取平均值得到过视频帧QP量化值,图像QP监测模块4把对帧组的所有视频帧的QP量化值得到帧组的QP量化值,图像QP监测模块4把帧组的QP量化值发送条带接收调整模块6;
条带网络品质检查模块5:条带网络品质检查模块5接收帧组丢包率与帧组最大帧接收时长;条带网络品质检查模块5计算该视频源的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+帧组最大帧接收时长-基准值的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率,条带网络品质检查模块5对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断,条带网络品质检查模块5把网络量化估计值发送给条带接收调整模块6;
条带接收调整模块6:条带接收调整模块6接收条带网络品质检查模块5的网络量化估计值,条带接收调整模块6接收图像QP监测模块4的帧组的QP量化值,条带接收调整模块6判断帧组的QP量化值大与门限阀值,条带接收调整模块6把视频源的图像编码量化QP最大值减少一个调整值,当视频源处理细节较多导致帧组的QP量化值过高,从而导致实际图像质量差的情况下,判断视频源条带编码发送模块2到条带媒体接收模块3的网络量化估计值小于下限阀值,通过减低图像编码量化QP最大值,来实现对该视频源的图像画质提升,条带接收调整模块6把调整后所有视频源,进行I帧的条带分配,条带接收调整模块6使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,条带接收调整模块6取当前视频帧调整周期,条带接收调整模块6依次对所有视频源分配处理,条带接收调整模块6依次把每个视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,发送给视频源条带编码发送模块2,条带接收调整模块6把所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值发送给条带中转调整模块7;
条带中转调整模块7:条带中转调整模块7接收条带接收调整模块6所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,按照条带接收调整模块6的方法生成调整周期以及每个调整分片流量预计值,当一个视频源被多个显示端查看时,则在I帧产生分片序号的分片的流量预计值自加视频源的I帧流量预计值,按照条带接收调整模块6的方法找到所有P帧分片,所有P帧分片的流量预计值自加视频源的P帧流量预计值,视频源的显示端中转流的I帧中转分片序号为I帧产生分片序号,条带中转调整模块7对复制流优先使用视频源的条带分片,保证视频传输时延,当条带中转调整模块7接收到显示网络品质检测模块9的网络量化估计值,判断显示的网络量化估计值大于阀值,则认为复制流不佳,进行复制流进行重新调整,条带接收调整模块6把调整周期的分片,为该视频源I帧分片的流量预计值自减视频源的I帧流量预计值,为该视频源P帧分片的流量预计值自减视频源的P帧流量预计值,条带中转调整模块7给视频源的复制流在调整周期上寻找流量预计值最低的分片,作为视频源的复制流的I帧中转分片序号,该分片的流量预计值自加视频源的I帧流量预计值,条带中转调整模块7按照条带接收调整模块6的方法找到所有P帧分片,所有复制流的P帧分片的流量预计值自加视频源的P帧流量预计值,条带中转调整模块7把视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数发送给条带媒体发送模块8;
条带媒体发送模块8:条带媒体发送模块8接收条带媒体接收模块3视频帧分包与分包序号与分片序号,条带媒体发送模块8接收条带中转调整模块7的视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数,条带媒体发送模块8计算中转偏差值,条带媒体发送模块8发送视频帧分包与分包序号给显示端媒体接收模块10;
显示端网络品质检查模块9:显示端网络品质检查模块9接收显示端媒体接收模块10的帧组丢包率与帧组最大帧接收时长,计算该中转流的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+帧组最大帧接收时长-基准值的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率,显示端网络品质检查模块9对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断,显示端网络品质检查模块9把网络量化估计值发条带中转调整模块7;
显示端媒体接收模块10:接收条带媒体发送模块8的视频帧分包与分包序号,显示端媒体接收模块10通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧,条带媒显示端媒体接收模块10计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长,显示端媒体接收模块10把帧组丢包率与帧组最大帧接收时长发送给显示端网络品质检查模块9,显示端媒体接收模块10把视频帧分包发送显示端解码渲染模块11;
显示端解码渲染模块11:显示端解码渲染模块11接收显示端媒体接收模块10的视频帧分包,合并视频帧,并解码渲染显示。
视频条带调整信息包含按时间分片调整条带信息,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,视频条带调整信息包含分片时长I帧产生分片序号,P帧间分片数,I帧间分片数,以及图像编码量化QP最大值。
条带媒体接收模块3通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,通过帧组分包丢失数/帧组分包总数得到帧组丢包率。
接收帧组丢包率越大说明网络差,可能是网络干扰丢包,也可能是网络过载,帧组最大帧接收时长越大说明网络过载,帧组最大帧接收时长越小说明网络欠载,判断两个网络品质需要融合帧组丢包率与帧组最大帧接收时长越大。
当网络量化估计值大于上限阀值时,条带接收调整模块6把该视频源的图像编码量化QP最大值累加一个调整值,图像编码量化QP最大值越大图像质量越差码流越小,当视频源条带编码发送模块2到条带媒体接收模块3网络品质不佳时通过减低图像编码量化QP最大值减少网络带宽,减少视频卡顿。
调整周期起始分片序号等于当前时刻的时间分片序号/I帧间分片数取整后再乘以I帧间分片数,当调整周期起始分片序号小于当前时刻的时间分片序号时,则加上I帧间分片数,调整周期结束序号为调整周期起始分片序号+I帧间分片数-1。
条带接收调整模块6给视频源在调整周期上寻找流量预计值最低的分片,把该分片的分片序号分配给该视频源,该视频源的I帧产生分片序号,调整周期的每个分片的流量预计值的初始值为0,调整视频源的I帧产生分片序号对应分片,则该分片的新的流量预计值等于分片当前流量预计值+视频源的I帧流量预计值,视频源的I帧流量预计值为10*50-视频源的QP最大值*50-视频源的QP最大值,视频源的QP的最大值为50,I与P帧码流比例为10/1,根据的I帧产生分片序号与视频源的P帧间分片数计算在调整周期的所有P帧分片,I帧产生分片序号+P帧间分片数得到得到P帧的分片序号,P帧的分片序号+P帧间分片数得到下一个P帧分片序号,当下一个P帧分片序号大于调整周期结束序号时,则下一个P帧分片序号自减I帧间分片数,一直到P帧片序号与I帧产生分片序号相同,表示找到所有P帧的分片,P帧的分片的流量预计值等于分片当前流量预计值+视频源的P帧流量预计值,视频源的P帧流量预计值为50-视频源的QP最大值*50-视频源的QP最大值。
中转偏差值为I帧中转分片序号-I帧产生分片序号,当中转偏差值小于零时,中转偏差值须加上I帧间分片数,中转偏差值加上网络延时偏差值,得到最终的中转偏差值,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,对每个时间分片,判断是否为视频源与显示端的中转流的发送分片,分片序号符合I帧中转分片序号+N*P帧间分片数,N为整体,中转流处于发送分片时,视频帧分包的分片序号+中转偏差值小于等于分片序号。
本发明还提供一种基于条带I帧均衡编解码方法,包括如下步骤:
S2、视频源条带编码发送模块2接收条带接收调整模块6调整视频编码,
S21、视频源条带编码发送模块2接收视频源帧产生模块1的YUV视频帧数据;
S22、视频源条带编码发送模块2接收条带接收调整模块6的视频条带调整信息,进行对YUV视频帧数据进行编码压缩;
S23、视频源条带编码发送模块2计算P帧间分片数*分片时长得到视频帧产生时间间隔,把视频帧产生时间间隔发送给视频源帧产生模块1;
S24、视频源条带编码发送模块2计算I帧产生UTC时间戳值为I帧产生分片序号*分片时长,视频源条带编码发送模块2得到下个P帧的序号为I帧产生分片序号+P帧间分片数,视频源条带编码发送模块2通过累加P帧间分片数依次可以计算出所有P帧的分片序号;
S25、视频源条带编码发送模块2得到下个I帧序号为I帧产生分片序号+I帧间分片数,视频源条带编码发送模块2通过累加I帧间分片数可以得到所有I帧的序号,当产生I帧的序号与P帧的序号相同时,该时间分片只产生I帧;
S26、视频源条带编码发送模块2根据I帧与P帧产生UTC时间戳值的YUV视频帧数据按照图像编码量化QP最大值进行编码成为视频压缩帧,视频源条带编码发送模块2对视频压缩帧按照固定大小分包并标识序号,分包、分包序号与分片序号发送给条带媒体接收模块3;S3、条带媒体接收模块3接收视频帧处理,
S31、条带媒体接收模块3接收视频源条带编码发送模块2的视频压缩帧的分包与分包序号;
S32、条带媒体接收模块3通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧;
S33、条带媒体接收模块3计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长;
S34、条带媒体接收模块3把帧组丢包率和帧组最大帧接收时长发送给条带网络品质检查模块5;
S35、条带媒体接收模块3把帧组的视频帧分包发送给图像QP监测模块4,图像QP监测模块4把帧组的视频帧分包合并为视频帧;
S36、条带媒体接收模块3将视频帧分包、分包序号与分片序号发送给条带媒体发送模块8;
S4、图像QP监测模块4生成帧组QP值,
S41、图像QP监测模块4接收条带媒体接收模块3的帧组的视频帧分包数据,图像QP监测模块4把帧组的视频帧分包合并为视频帧;
S42、图像QP监测模块4对视频帧的所有宏块获取QP量化值,并取平均值得到过视频帧QP量化值;
S43、图像QP监测模块4把对帧组的所有视频帧的QP量化值得到帧组的QP量化值;
S44、图像QP监测模块4把帧组的QP量化值发送给条带接收调整模块6;
S5、条带网络品质检查模块5生成网络量化估计值,
S51、条带网络品质检查模块5接收帧组丢包率与帧组最大帧接收时长;
S52、条带网络品质检查模块5计算该视频源的量化参考值;
S53、条带网络品质检查模块5对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断;
S54、条带网络品质检查模块5把网络量化估计值发送给条带接收调整模块6;
S6、条带接收调整模块6结合网络量化估计值与帧组的QP量化值,调节调整视频源的编码,
S7、条带中转调整模块7调整中转发送策略,
S8、条带媒体发送模块8按条带中转调整模块7策略发送视频帧,
S81、条带媒体发送模块8接收条带媒体接收模块3视频帧分包、分包序号与分片序号;
S82、条带媒体发送模块8接收条带中转调整模块7的视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数;
S83、条带媒体发送模块8计算中转偏差值,为I帧中转分片序号-I帧产生分片序号,当中转偏差值小于零时,中转偏差值加上I帧间分片数,中转偏差值加上网络延时偏差值,得到最终的中转偏差值;
S84、时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,对每个时间分片,判断是否为视频源与显示端的中转流的发送分片,分片序号符合I帧中转分片序号+N*P帧间分片数,N为整体;
S85、当中转流处于发送分片时,中转流的视频帧分包的分片序号+中转偏差值小于等于分片序号;
S86、条带媒体发送模块8发送视频帧分包与分包序号给显示端媒体接收模块10;
S9、显示端媒体接收模块10接收条带媒体发送模块8的视频帧分包与分包序号处理,
S10、显示端网络品质检查模块9生成网络量化估计值;
S11、显示端解码渲染模块11接收显示端媒体接收模块10的视频帧分包,合并视频帧,并解码渲染显示。
所述S6包括以下步骤:
S61、条带接收调整模块6接收条带网络品质检查模块5的网络量化估计值;
S62、条带接收调整模块6接收图像QP监测模块4的帧组的QP量化值;
S63、当网络量化估计值大于上限阀值时,条带接收调整模块6把该视频源的图像编码量化QP最大值累加一个调整值,图像编码量化QP最大值越大图像质量越差码流越小,当视频源条带编码发送模块2到条带媒体接收模块3网络品质不佳时通过减低图像编码量化QP最大值减少网络带宽,减少视频卡顿;
S64、条带接收调整模块6判断帧组的QP量化值大与门限阀值,条带接收调整模块6把视频源的图像编码量化QP最大值减少一个调整值,当视频源处理细节较多导致帧组的QP量化值过高,从而导致实际图像质量差的情况下,判断视频源条带编码发送模块2到条带媒体接收模块3的网络量化估计值小于下限阀值,通过减低图像编码量化QP最大值,来实现对该视频源的图像画质提升;
S65、条带接收调整模块6把调整后所有视频源,进行I帧的条带分配,条带接收调整模块6使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长;
S66、条带接收调整模块6取当前视频帧调整周期,调整周期起始分片序号等于当前时刻的时间分片序号/I帧间分片数取整后再乘以I帧间分片数,当调整周期起始分片序号小于当前时刻的时间分片序号时,则加上I帧间分片数,调整周期结束序号为调整周期起始分片序号+I帧间分片数-1;
S67、条带接收调整模块6依次对所有视频源分配处理,条带接收调整模块6给视频源在调整周期上寻找流量预计值最低的分片,把该分片的分片序号分配给该视频源,该视频源的I帧产生分片序号;
S68、条带接收调整模块6依次把每个视频源的I帧产生分片序号、I帧间分片数,P帧间分片数,图像编码量化QP最大值,发送给视频源条带编码发送模块2;
S69、条带接收调整模块6把所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值发送给条带中转调整模块7。
所述S7包括以下步骤:
S71、条带中转调整模块7接收条带接收调整模块6所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,按照条带接收调整模块6根据I帧产生分片序号与I帧间分片数的方法生成调整周期以及每个调整分片流量预计值;
S72、当一个视频源被多个显示端查看时,则在I帧产生分片序号的分片的流量预计值自加视频源的I帧流量预计值,按照条带接收调整模块6的方法找到所有P帧分片,所有P帧分片的流量预计值自加视频源的P帧流量预计值,视频源的显示端中转流的I帧中转分片序号为I帧产生分片序号;
S73、条带中转调整模块7对复制流优先使用视频源的条带分片,保证视频传输时延,当条带中转调整模块7接收到显示网络品质检测模块9的网络量化估计值,判断显示的网络量化估计值大于阀值,则认为复制流不佳,进行复制流进行重新调整;
S74、条带接收调整模块6把调整周期的分片,为该视频源I帧分片的流量预计值自减视频源的I帧流量预计值,为该视频源P帧分片的流量预计值自减视频源的P帧流量预计值;
S75、条带中转调整模块7给视频源的复制流在调整周期上寻找流量预计值最低的分片,作为视频源的复制流的I帧中转分片序号,该分片的流量预计值自加视频源的I帧流量预计值;
S76、条带中转调整模块7按照条带接收调整模块6的方法找到所有P帧分片,所有复制流的P帧分片的流量预计值自加视频源的P帧流量预计值;
S77、条带中转调整模块7把视频源到显示端的流的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数发送给条带媒体发送模块8。
所述S9包括以下步骤:
S91、显示端媒体接收模块10通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧;
S92、显示端媒体接收模块10计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长;
S93、显示端媒体接收模块10把帧组丢包率与帧组最大帧接收时长发送给显示端网络品质检查模块9;
S94、显示端媒体接收模块10把视频帧分包发送给显示端解码渲染模块11。
所述S10包括以下步骤:
S101、显示端网络品质检查模块9接收显示端媒体接收模块10的帧组丢包率与帧组最大帧接收时长,计算该中转流的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+帧组最大帧接收时长-基准值的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率;
S102、显示端网络品质检查模块9对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断;
S103、显示端网络品质检查模块9把网络量化估计值发条带中转调整模块7。
S1中视频条带调整信息包含按时间分片调整条带信息,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长。视频条带调整信息包含分片时长I帧产生分片序号,P帧间分片数,I帧间分片数,以及图像编码量化QP最大值。
S52中当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+帧组最大帧接收时长-基准值的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率。
S67中调整周期的每个分片的流量预计值的初始值为0,调整视频源的I帧产生分片序号对应分片,则该分片的新的流量预计值等于分片当前流量预计值+视频源的I帧流量预计值;视频源的I帧流量预计值为10*50-视频源的QP最大值*50-视频源的QP最大值,视频源的QP的最大值为50,I与P帧码流比例为10/1,根据的I帧产生分片序号与视频源的P帧间分片数计算在调整周期的所有P帧分片,I帧产生分片序号+P帧间分片数得到P帧的分片序号,P帧的分片序号+P帧间分片数得到下一个P帧分片序号,当下一个P帧分片序号大于调整周期结束序号时,则下一个P帧分片序号自减I帧间分片数,一直到P帧片序号与I帧产生分片序号相同,表示找到所有P帧的分片,P帧的分片的流量预计值等于分片当前流量预计值+视频源的P帧流量预计值;视频源的P帧流量预计值为50-视频源的QP最大值*50-视频源的QP最大值。
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (9)
1.一种基于条带I帧均衡编解码***,其特征在于,包括
视频源帧产生模块(1),视频源条带编码发送模块(2),条带媒体接收模块(3),图像QP监测模块(4),条带网络品质检查模块(5),条带接收调整模块(6),条带中转调整模块(7),条带媒体发送模块(8),显示端网络品质检查模块(9),显示端媒体接收模块(10),显示端解码渲染模块(11);
视频源帧产生模块(1):视频源帧产生模块(1)接收视频源条带编码发送模块(2)的视频帧产生时间间隔,按照该时间间隔产生YUV视频帧数据;
视频源条带编码发送模块(2):视频源条带编码发送模块(2)接收视频源帧产生模块(1)的YUV视频帧数据,接收条带接收调整模块(6)的视频条带调整信息,对YUV视频帧数据进行编码压缩;视频条带调整信息包含按时间分片调整条带信息,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,视频条带调整信息包含分片时长I帧产生分片序号,P帧间分片数,I帧间分片数,以及图像编码量化QP最大值;
视频源条带编码发送模块(2)计算P帧间分片数*分片时长得到视频帧产生时间间隔,把视频帧产生时间间隔发送给视频源帧产生模块(1),视频源条带编码发送模块(2)计算I帧产生UTC时间戳值为I帧产生分片序号*分片时长,视频源条带编码发送模块(2)得到下个P帧的序号为I帧产生分片序号+P帧间分片数,视频源条带编码发送模块(2)通过累加P帧间分片数依次可以计算出所有P帧的序号,视频源条带编码发送模块(2)得到下个I帧序号为I帧产生分片序号+I帧间分片数,视频源条带编码发送模块(2)通过累加I帧间分片数可以得到所有I帧的序号,当产生I帧的序号与P帧的序号相同时,该时间分片只产生I帧,视频源条带编码发送模块(2)根据I帧与P帧产生UTC时间戳值的YUV视频帧数据按照图像编码量化QP最大值编码为视频压缩帧,对其按照大小分包并标识序号,将分包、分包序号与时间分片序号发送给条带媒体接收模块(3);
条带媒体接收模块(3):条带媒体接收模块(3)接收视频源条带编码发送模块(2)的视频压缩帧的分包与分包序号,条带媒体接收模块(3)计算帧组丢包率,帧组为一个I帧以及参考的P帧,条带媒体接收模块(3)计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长,条带媒体接收模块(3)把帧组丢包率和帧组最大帧接收时长发送给条带网络品质检查模块(5),条带媒体接收模块(3)把帧组的视频帧分包数据发送给图像QP监测模块(4),条带媒体接收模块(3)将视频帧分包、分包序号与分片序号发送给条带媒体发送模块(8);
图像QP监测模块(4):图像QP监测模块(4)接收条带媒体接收模块(3)的帧组的视频帧分包数据,图像QP监测模块(4)把帧组的视频帧分包合并为视频帧;图像QP监测模块(4)对视频帧的所有宏块获取QP量化值,并取平均值得到过视频帧QP量化值,图像QP监测模块(4)把对帧组的所有视频帧的QP量化值得到帧组的QP量化值,图像QP监测模块(4)把帧组的QP量化值发送条带接收调整模块(6);
条带网络品质检查模块(5):条带网络品质检查模块(5)接收帧组丢包率与帧组最大帧接收时长;条带网络品质检查模块(5)计算该视频源的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+(帧组最大帧接收时长-基准值)的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率,条带网络品质检查模块(5)对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断,条带网络品质检查模块(5)把网络量化估计值发送给条带接收调整模块(6);
条带接收调整模块(6):条带接收调整模块(6)接收条带网络品质检查模块(5)的网络量化估计值,条带接收调整模块(6)接收图像QP监测模块(4)的帧组的QP量化值,条带接收调整模块(6)判断帧组的QP量化值大与门限阀值,条带接收调整模块(6)把视频源的图像编码量化QP最大值减少一个调整值,当视频源处理细节较多导致帧组的QP量化值过高,从而导致实际图像质量差的情况下,判断视频源条带编码发送模块(2)到条带媒体接收模块(3)的网络量化估计值小于下限阀值,通过减低图像编码量化QP最大值,来实现对该视频源的图像画质提升,条带接收调整模块(6)把调整后所有视频源,进行I帧的条带分配,条带接收调整模块(6)使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,条带接收调整模块(6)取当前视频帧调整周期,条带接收调整模块(6)依次对所有视频源分配处理,条带接收调整模块(6)依次把每个视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,发送给视频源条带编码发送模块(2),条带接收调整模块(6)把所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值发送给条带中转调整模块(7);
条带中转调整模块(7):条带中转调整模块(7)接收条带接收调整模块(6)所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,按照条带接收调整模块(6)的方法生成调整周期以及每个调整分片流量预计值,当一个视频源被多个显示端查看时,则在I帧产生分片序号的分片的流量预计值自加视频源的I帧流量预计值,按照条带接收调整模块(6)的方法找到所有P帧分片,所有P帧分片的流量预计值自加视频源的P帧流量预计值,视频源的显示端中转流的I帧中转分片序号为I帧产生分片序号,条带中转调整模块(7)对复制流优先使用视频源的条带分片,保证视频传输时延,当条带中转调整模块(7)接收到显示网络品质检测模块(9)的网络量化估计值,判断显示的网络量化估计值大于阀值,则认为复制流不佳,进行复制流进行重新调整,条带接收调整模块(6)把调整周期的分片,为该视频源I帧分片的流量预计值自减视频源的I帧流量预计值,为该视频源P帧分片的流量预计值自减视频源的P帧流量预计值,条带中转调整模块(7)给视频源的复制流在调整周期上寻找流量预计值最低的分片,作为视频源的复制流的I帧中转分片序号,该分片的流量预计值自加视频源的I帧流量预计值,条带中转调整模块(7)按照条带接收调整模块(6)的方法找到所有P帧分片,所有复制流的P帧分片的流量预计值自加视频源的P帧流量预计值,条带中转调整模块(7)把视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数发送给条带媒体发送模块(8);
条带媒体发送模块(8):条带媒体发送模块(8)接收条带媒体接收模块(3)视频帧分包与分包序号与分片序号,条带媒体发送模块(8)接收条带中转调整模块(7)的视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数,条带媒体发送模块(8)计算中转偏差值,条带媒体发送模块(8)发送视频帧分包与分包序号给显示端媒体接收模块(10);
显示端网络品质检查模块(9):显示端网络品质检查模块(9)接收显示端媒体接收模块(10)的帧组丢包率与帧组最大帧接收时长,计算该中转流的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+(帧组最大帧接收时长-基准值)的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率,显示端网络品质检查模块(9)对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断,显示端网络品质检查模块(9)把网络量化估计值发条带中转调整模块(7);
显示端媒体接收模块(10):接收条带媒体发送模块(8)的视频帧分包与分包序号,显示端媒体接收模块(10)通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧,条带媒显示端媒体接收模块(10)计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长,显示端媒体接收模块(10)把帧组丢包率与帧组最大帧接收时长发送给显示端网络品质检查模块(9),显示端媒体接收模块(10)把视频帧分包发送显示端解码渲染模块(11);
显示端解码渲染模块(11):显示端解码渲染模块(11)接收显示端媒体接收模块(10)的视频帧分包,合并视频帧,并解码渲染显示。
2.根据权利要求1所述的一种基于条带I帧均衡编解码***,其特征在于,条带媒体接收模块(3)通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,通过帧组分包丢失数/帧组分包总数得到帧组丢包率。
3.根据权利要求1所述的一种基于条带I帧均衡编解码***,其特征在于,接收帧组丢包率越大说明网络差,可能是网络干扰丢包,也可能是网络过载,帧组最大帧接收时长越大说明网络过载,帧组最大帧接收时长越小说明网络欠载,判断两个网络品质需要融合帧组丢包率与帧组最大帧接收时长越大。
4.根据权利要求1所述的一种基于条带I帧均衡编解码***,其特征在于,当网络量化估计值大于上限阀值时,条带接收调整模块(6)把该视频源的图像编码量化QP最大值累加一个调整值,图像编码量化QP最大值越大图像质量越差码流越小,当视频源条带编码发送模块(2)到条带媒体接收模块(3)网络品质不佳时通过减低图像编码量化QP最大值减少网络带宽,减少视频卡顿。
5.根据权利要求1所述的一种基于条带I帧均衡编解码***,其特征在于,调整周期起始分片序号等于当前时刻的时间分片序号/I帧间分片数取整后再乘以I帧间分片数,当调整周期起始分片序号小于当前时刻的时间分片序号时,则加上I帧间分片数,调整周期结束序号为调整周期起始分片序号+I帧间分片数-1。
6.根据权利要求1所述的一种基于条带I帧均衡编解码***,其特征在于,条带接收调整模块(6)给视频源在调整周期上寻找流量预计值最低的分片,把该分片的分片序号分配给该视频源,该视频源的I帧产生分片序号,调整周期的每个分片的流量预计值的初始值为0,调整视频源的I帧产生分片序号对应分片,则该分片的新的流量预计值等于分片当前流量预计值+视频源的I帧流量预计值,视频源的I帧流量预计值为10*(50-视频源的QP最大值)*(50-视频源的QP最大值),视频源的QP的最大值为50,I与P帧码流比例为10/1,根据的I帧产生分片序号与视频源的P帧间分片数计算在调整周期的所有P帧分片,I帧产生分片序号+P帧间分片数得到得到P帧的分片序号,P帧的分片序号+P帧间分片数得到下一个P帧分片序号,当下一个P帧分片序号大于调整周期结束序号时,则下一个P帧分片序号自减I帧间分片数,一直到P帧片序号与I帧产生分片序号相同,表示找到所有P帧的分片,P帧的分片的流量预计值等于分片当前流量预计值+视频源的P帧流量预计值,视频源的P帧流量预计值为(50-视频源的QP最大值)*(50-视频源的QP最大值)。
7.根据权利要求1所述的一种基于条带I帧均衡编解码***,其特征在于,中转偏差值为I帧中转分片序号-I帧产生分片序号,当中转偏差值小于零时,中转偏差值须加上I帧间分片数,中转偏差值加上网络延时偏差值,得到最终的中转偏差值,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,对每个时间分片,判断是否为视频源与显示端的中转流的发送分片,分片序号符合I帧中转分片序号+N*P帧间分片数,N为整体,中转流处于发送分片时,视频帧分包的分片序号+中转偏差值小于等于分片序号。
8.一种基于权利要求1所述的基于条带I帧均衡编解码***的编解码方法,包括如下步骤:
S2、视频源条带编码发送模块(2)接收条带接收调整模块(6)调整视频编码,
S21、视频源条带编码发送模块(2)接收视频源帧产生模块(1)的YUV视频帧数据;
S22、视频源条带编码发送模块(2)接收条带接收调整模块(6)的视频条带调整信息,进行对YUV视频帧数据进行编码压缩;视频条带调整信息包含按时间分片调整条带信息,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,视频条带调整信息包含分片时长I帧产生分片序号,P帧间分片数,I帧间分片数,以及图像编码量化QP最大值;
S23、视频源条带编码发送模块(2)计算P帧间分片数*分片时长得到视频帧产生时间间隔,把视频帧产生时间间隔发送给视频源帧产生模块(1);
S24、视频源条带编码发送模块(2)计算I帧产生UTC时间戳值为I帧产生分片序号*分片时长,视频源条带编码发送模块(2)得到下个P帧的序号为I帧产生分片序号+P帧间分片数,视频源条带编码发送模块(2)通过累加P帧间分片数依次可以计算出所有P帧的分片序号;
S25、视频源条带编码发送模块(2)得到下个I帧序号为I帧产生分片序号+I帧间分片数,视频源条带编码发送模块(2)通过累加I帧间分片数可以得到所有I帧的序号,当产生I帧的序号与P帧的序号相同时,该时间分片只产生I帧;
S26、视频源条带编码发送模块(2)根据I帧与P帧产生UTC时间戳值的YUV视频帧数据按照图像编码量化QP最大值进行编码成为视频压缩帧,视频源条带编码发送模块(2)对视频压缩帧按照固定大小分包并标识序号,分包、分包序号与分片序号发送给条带媒体接收模块(3);
S3、条带媒体接收模块(3)接收视频帧处理,
S31、条带媒体接收模块(3)接收视频源条带编码发送模块(2)的视频压缩帧的分包与分包序号;
S32、条带媒体接收模块(3)通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧;
S33、条带媒体接收模块(3)计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长;
S34、条带媒体接收模块(3)把帧组丢包率和帧组最大帧接收时长发送给条带网络品质检查模块(5);
S35、条带媒体接收模块(3)把帧组的视频帧分包发送给图像QP监测模块(4),图像QP监测模块(4)把帧组的视频帧分包合并为视频帧;
S36、条带媒体接收模块(3)将视频帧分包、分包序号与分片序号发送给条带媒体发送模块(8);
S4、图像QP监测模块(4)生成帧组QP值,
S41、图像QP监测模块(4)接收条带媒体接收模块(3)的帧组的视频帧分包数据,图像QP监测模块(4)把帧组的视频帧分包合并为视频帧;
S42、图像QP监测模块(4)对视频帧的所有宏块获取QP量化值,并取平均值得到过视频帧QP量化值;
S43、图像QP监测模块(4)把对帧组的所有视频帧的QP量化值得到帧组的QP量化值;
S44、图像QP监测模块(4)把帧组的QP量化值发送给条带接收调整模块(6);
S5、条带网络品质检查模块(5)生成网络量化估计值,
S51、条带网络品质检查模块(5)接收帧组丢包率与帧组最大帧接收时长;
S52、条带网络品质检查模块(5)计算该视频源的量化参考值;
S53、条带网络品质检查模块(5)对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断;
S54、条带网络品质检查模块(5)把网络量化估计值发送给条带接收调整模块(6);
S6、条带接收调整模块(6)结合网络量化估计值与帧组的QP量化值,调节调整视频源的编码,
S7、条带中转调整模块(7)调整中转发送策略,
S8、条带媒体发送模块(8)按条带中转调整模块(7)策略发送视频帧,
S81、条带媒体发送模块(8)接收条带媒体接收模块(3)视频帧分包、分包序号与分片序号;
S82、条带媒体发送模块(8)接收条带中转调整模块(7)的视频源到显示端的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数;
S83、条带媒体发送模块(8)计算中转偏差值,为I帧中转分片序号-I帧产生分片序号,当中转偏差值小于零时,中转偏差值加上I帧间分片数,中转偏差值加上网络延时偏差值,得到最终的中转偏差值;
S84、时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长,对每个时间分片,判断是否为视频源与显示端的中转流的发送分片,分片序号符合I帧中转分片序号+N*P帧间分片数,N为整体;
S85、当中转流处于发送分片时,中转流的视频帧分包的分片序号+中转偏差值小于等于分片序号;
S86、条带媒体发送模块(8)发送视频帧分包与分包序号给显示端媒体接收模块(10);
S9、显示端媒体接收模块(10)接收条带媒体发送模块(8)的视频帧分包与分包序号处理,
S10、显示端网络品质检查模块(9)生成网络量化估计值;
S11、显示端解码渲染模块(11)接收显示端媒体接收模块(10)的视频帧分包,合并视频帧,并解码渲染显示。
9.根据权利要求8所述的一种基于条带I帧均衡编解码方法,其特征在于,所述S6包括以下步骤:
S61、条带接收调整模块(6)接收条带网络品质检查模块(5)的网络量化估计值;
S62、条带接收调整模块(6)接收图像QP监测模块(4)的帧组的QP量化值;
S63、当网络量化估计值大于上限阀值时,条带接收调整模块(6)把该视频源的图像编码量化QP最大值累加一个调整值,图像编码量化QP最大值越大图像质量越差码流越小,当视频源条带编码发送模块(2)到条带媒体接收模块(3)网络品质不佳时通过减低图像编码量化QP最大值减少网络带宽,减少视频卡顿;
S64、条带接收调整模块(6)判断帧组的QP量化值大与门限阀值,条带接收调整模块(6)把视频源的图像编码量化QP最大值减少一个调整值,当视频源处理细节较多导致帧组的QP量化值过高,从而导致实际图像质量差的情况下,判断视频源条带编码发送模块(2)到条带媒体接收模块(3)的网络量化估计值小于下限阀值,通过减低图像编码量化QP最大值,来实现对该视频源的图像画质提升;
S65、条带接收调整模块(6)把调整后所有视频源,进行I帧的条带分配,条带接收调整模块(6)使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长;
S66、条带接收调整模块(6)取当前视频帧调整周期,调整周期起始分片序号等于当前时刻的时间分片序号/I帧间分片数取整后再乘以I帧间分片数,当调整周期起始分片序号小于当前时刻的时间分片序号时,则加上I帧间分片数,调整周期结束序号为调整周期起始分片序号+I帧间分片数-1;
S67、条带接收调整模块(6)依次对所有视频源分配处理,条带接收调整模块(6)给视频源在调整周期上寻找流量预计值最低的分片,把该分片的分片序号分配给该视频源,该视频源的I帧产生分片序号;
S68、条带接收调整模块(6)依次把每个视频源的I帧产生分片序号、I帧间分片数,P帧间分片数,图像编码量化QP最大值,发送给视频源条带编码发送模块(2);
S69、条带接收调整模块(6)把所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值发送给条带中转调整模块(7);
所述S7包括以下步骤:
S71、条带中转调整模块(7)接收条带接收调整模块(6)所有视频源的I帧产生分片序号,I帧间分片数,P帧间分片数,图像编码量化QP最大值,按照条带接收调整模块(6)根据I帧产生分片序号与I帧间分片数的方法生成调整周期以及每个调整分片流量预计值;
S72、当一个视频源被多个显示端查看时,则在I帧产生分片序号的分片的流量预计值自加视频源的I帧流量预计值,按照条带接收调整模块(6)的方法找到所有P帧分片,所有P帧分片的流量预计值自加视频源的P帧流量预计值,视频源的显示端中转流的I帧中转分片序号为I帧产生分片序号;
S73、条带中转调整模块(7)对复制流优先使用视频源的条带分片,保证视频传输时延,当条带中转调整模块(7)接收到显示网络品质检测模块(9)的网络量化估计值,判断显示的网络量化估计值大于阀值,则认为复制流不佳,进行复制流进行重新调整;
S74、条带接收调整模块(6)把调整周期的分片,为该视频源I帧分片的流量预计值自减视频源的I帧流量预计值,为该视频源P帧分片的流量预计值自减视频源的P帧流量预计值;
S75、条带中转调整模块(7)给视频源的复制流在调整周期上寻找流量预计值最低的分片,作为视频源的复制流的I帧中转分片序号,该分片的流量预计值自加视频源的I帧流量预计值;
S76、条带中转调整模块(7)按照条带接收调整模块(6)的方法找到所有P帧分片,所有复制流的P帧分片的流量预计值自加视频源的P帧流量预计值;
S77、条带中转调整模块(7)把视频源到显示端的流的I帧产生分片序号,I帧中转分片序号,I帧间分片数,P帧间分片数发送给条带媒体发送模块(8);
所述S9包括以下步骤:
S91、显示端媒体接收模块(10)通过统计帧组的分包数,得到帧组分包总数,通过统计帧组的分包数缺失分包序号确定帧组分包丢失数,帧组丢包率为帧组分包丢失数/帧组分包总数,帧组为一个I帧以及参考的P帧;
S92、显示端媒体接收模块(10)计算帧组的每个帧的最后分包与首个分包的接收时间差,得到帧接收时差,取最大值为帧组最大帧接收时长;
S93、显示端媒体接收模块(10)把帧组丢包率与帧组最大帧接收时长发送给显示端网络品质检查模块(9);
S94、显示端媒体接收模块(10)把视频帧分包发送给显示端解码渲染模块(11);
所述S10包括以下步骤:
S101、显示端网络品质检查模块(9)接收显示端媒体接收模块(10)的帧组丢包率与帧组最大帧接收时长,计算该中转流的量化参考值,当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+(帧组最大帧接收时长-基准值)的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率;
S102、显示端网络品质检查模块(9)对量化参考值使用卡尔曼滤波器生成网络量化估计值,避免少量网络抖动误差对网络品质判断;
S103、显示端网络品质检查模块(9)把网络量化估计值发条带中转调整模块(7);
S1中视频条带调整信息包含按时间分片调整条带信息,时间分片使用分片时长对UTC时间戳进行分片,每个时间分片序号为UTC时间戳的毫秒值/分片时长;视频条带调整信息包含分片时长I帧产生分片序号,P帧间分片数,I帧间分片数,以及图像编码量化QP最大值;
S52中当帧组最大帧接收时长大于基准值,量化参考值为帧组丢包率的平方值+(帧组最大帧接收时长-基准值)的平方值的和的开根值,当帧组最大帧接收时长小于基准值,量化参考值为帧组丢包率;
S67中调整周期的每个分片的流量预计值的初始值为0,调整视频源的I帧产生分片序号对应分片,则该分片的新的流量预计值等于分片当前流量预计值+视频源的I帧流量预计值;视频源的I帧流量预计值为10*(50-视频源的QP最大值)*(50-视频源的QP最大值),视频源的QP的最大值为50,I与P帧码流比例为10/1,根据的I帧产生分片序号与视频源的P帧间分片数计算在调整周期的所有P帧分片,I帧产生分片序号+P帧间分片数得到P帧的分片序号,P帧的分片序号+P帧间分片数得到下一个P帧分片序号,当下一个P帧分片序号大于调整周期结束序号时,则下一个P帧分片序号自减I帧间分片数,一直到P帧片序号与I帧产生分片序号相同,表示找到所有P帧的分片,P帧的分片的流量预计值等于分片当前流量预计值+视频源的P帧流量预计值;视频源的P帧流量预计值为(50-视频源的QP最大值)*(50-视频源的QP最大值)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210274463.1A CN114760472B (zh) | 2022-03-21 | 2022-03-21 | 一种基于条带i帧均衡编解码***及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210274463.1A CN114760472B (zh) | 2022-03-21 | 2022-03-21 | 一种基于条带i帧均衡编解码***及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114760472A CN114760472A (zh) | 2022-07-15 |
CN114760472B true CN114760472B (zh) | 2023-05-12 |
Family
ID=82327574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210274463.1A Active CN114760472B (zh) | 2022-03-21 | 2022-03-21 | 一种基于条带i帧均衡编解码***及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114760472B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881947A (zh) * | 2017-05-15 | 2018-11-23 | 阿里巴巴集团控股有限公司 | 一种直播流的侵权检测方法及装置 |
WO2019080022A1 (zh) * | 2017-10-26 | 2019-05-02 | 天彩电子(深圳)有限公司 | 网络视频流传输拥塞控制方法及装置 |
CN113259661A (zh) * | 2020-02-12 | 2021-08-13 | 腾讯美国有限责任公司 | 视频解码的方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5072893B2 (ja) * | 2009-03-25 | 2012-11-14 | 株式会社東芝 | 画像符号化方法および画像復号化方法 |
US20160205398A1 (en) * | 2015-01-08 | 2016-07-14 | Magnum Semiconductor, Inc. | Apparatuses and methods for efficient random noise encoding |
-
2022
- 2022-03-21 CN CN202210274463.1A patent/CN114760472B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881947A (zh) * | 2017-05-15 | 2018-11-23 | 阿里巴巴集团控股有限公司 | 一种直播流的侵权检测方法及装置 |
WO2019080022A1 (zh) * | 2017-10-26 | 2019-05-02 | 天彩电子(深圳)有限公司 | 网络视频流传输拥塞控制方法及装置 |
CN113259661A (zh) * | 2020-02-12 | 2021-08-13 | 腾讯美国有限责任公司 | 视频解码的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114760472A (zh) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8503538B2 (en) | Method, apparatus, system, and program for content encoding, content distribution, and content reception | |
Fukunaga et al. | Error resilient video coding by dynamic replacing of reference pictures | |
US8566662B2 (en) | Transmission apparatus, receiving apparatus, and method | |
CN103795996B (zh) | 3d视频传递方法和设备 | |
CN104219539A (zh) | 一种基于td-lte信道检测的视频编码与传输的方法 | |
US9247448B2 (en) | Device and method for adaptive rate multimedia communications on a wireless network | |
RU2009116472A (ru) | Динамическая модификация свойств видео | |
CN101909208A (zh) | 一种适用于cdma2000的视频无线传输控制方法 | |
WO2011038694A1 (zh) | 视频数据传输处理、发送处理方法、装置和网络*** | |
WO2014035833A2 (en) | Device and method for adaptive rate multimedia communications on a wireless network | |
CN100558028C (zh) | 一种实现纠错的方法及***以及一种实现纠错的接入设备 | |
CN103338412A (zh) | 结合无线自适应调制与编码的自适应视频编码*** | |
CN102256183A (zh) | 基于移动通信网络的视音频信号实时传输方法 | |
CN103024400A (zh) | 基于网络的视频压缩容错传输方法及*** | |
US11109022B2 (en) | Transmitter communication device and method for transmitting video data | |
CN108429921B (zh) | 一种视频编解码方法及装置 | |
KR101443061B1 (ko) | 패킷 손실에 강인한 애드혹 멀티미디어 그룹통신 단말 및 그 동작방법 | |
CN114760472B (zh) | 一种基于条带i帧均衡编解码***及其方法 | |
CN101296166B (zh) | 基于索引的多媒体数据的测量方法 | |
JP2011172153A (ja) | メディア符号化伝送装置 | |
CN101754001B (zh) | 视频数据优先级确定方法、装置和*** | |
Nunome | The effect of MMT AL-FEC on QoE of error-concealed video streaming | |
WO2004112420A1 (ja) | メディア信号の受信装置、送信装置及び送受信システム | |
KR20100107547A (ko) | 스트리밍 시스템의 트래픽 제어 방법 및 그 장치 | |
KR100916312B1 (ko) | 적응적 가중 오류 정정 부호화 및 다중 표현열 부호화를사용한 비디오 전송 장치 및 그 방법 |
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 |