[发明专利]一种适用于实时视频传输的H.264帧级码率控制方法有效
申请号: | 202011578379.6 | 申请日: | 2020-12-28 |
公开(公告)号: | CN112788335B | 公开(公告)日: | 2023-03-10 |
发明(设计)人: | 陈洪泉;李岩;李娇 | 申请(专利权)人: | 平行云科技(北京)有限公司 |
主分类号: | H04N19/124 | 分类号: | H04N19/124;H04N19/146;H04N19/176;H04N19/527 |
代理公司: | 北京金宏来专利代理事务所(特殊普通合伙) 11641 | 代理人: | 陆华 |
地址: | 100085 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 适用于 实时 视频 传输 264 帧级码率 控制 方法 | ||
1.一种适用于实时视频传输的H.264帧级码率控制方法,其特征在于,包括:
步骤1:基于视频的运动速度计算当前的目标帧率;
所述基于视频的运动速度计算当前的目标帧率的方法为:
步骤1.1:预先设定视频的最小帧率fpsmin和最大帧率fpsmax、最大运动速度vmax;采集视频帧,基于某个预先设定好的量化参数对视频进行预先编码,获得宏块的平均运动向量(mvx,mvy);
步骤1.2:根据所述平均运动向量计算宏块的平均运动距离:
步骤1.3:根据当前帧和上一帧的时间差t,计算宏块的平均运动速度v=dis/t和归一化的运动速度vn=v/vmax;
步骤1.4:根据公式来计算当前的目标帧率fpst,其中p为幂指数;
步骤2:根据所述目标帧率确定适用于全局运动视频的编码量化参数;或者根据所述目标帧率确定适用于局部运动视频的编码量化参数;
所述根据所述目标帧率确定适用于全局运动视频的编码量化参数的具体步骤为:
步骤2.1-1:基于所述目标帧率fpst,根据网络调速器的调速周期intervalpace和一个调速周期发送字节数bytespace预测下一帧编码后的目标尺寸sizet,预测公式为sizet=1000×bytespace÷fpst÷intervalpace;
步骤2.1-2:基于上一帧编码的实际量化参数qplast来对当前帧进行预编码,获得预编码后的绝对变换差和satdpre以及预编码后的帧大小sizepre;
步骤2.1-3:判断预编码后的帧大小sizepre和目标编码帧大小sizet的关系,如果预编码后的帧大小大于目标编码帧大小,则转向步骤2.1-4,否则,转向步骤2.1-5;
步骤2.1-4:根据公式size=αqp×satd÷qpstep来预测量化参数qp分别为qplast+1,qplast+2,…,qplast+Δqp时对当前帧进行编码后的编码帧大小,得到sizelast+1,sizelast+2,…,sizelast+Δqp,其中qpstep=2.0(qp-4)÷6.0,αqp是相应的量化参数对应的系数,Δqp为预先确定的量化参数变化范围;并计算预编码后的帧大小和目标编码帧大小之差的绝对值Δs0=|sizepre-sizet|,Δs1=|sizelast+1-sizet|,…,Δsqp=|sizelast+Δqp-sizet|;取绝对差值最小者对应的量化参数qpsmin为对当前帧实际编码的量化参数;
步骤2.1-5:根据公式size=αqp×satd÷qpstep来预测量化参数qp分别为qplast-1,qplast-2,…,qplast-Δqp时对当前帧进行编码后的编码帧大小,得到sizelast-1,sizelast-2,…,sizelast-Δqp,并计算预编码后的帧大小和目标编码帧大小差的绝对值Δs0=|sizepre-sizet|,Δs1=|sizelast-1-sizet|,…,Δsqp=|sizelast-Δqp-sizet|;取绝对差值最小者对应的量化参数qpsmin为对当前帧实际编码的量化参数;
所述根据所述目标帧率确定适用于局部运动视频的编码量化参数的具体步骤为:
步骤2.2-1:利用与上一帧编码同样的量化参数qppre来对当前帧进行预先编码,得到预编码后的帧大小sizepre;
步骤2.2-2:基于公式sizet=1000×bytespace÷fpst÷intervalpace来计算当前帧的目标编码大小sizet,intervalpace为网络调速器的调速周期,bytespace为一个调速周期发送字节数;
步骤2.2-3:如果预编码后的帧大小sizepre和目标编码大小sizet之间的关系满足|sizepre-sizet|≤0.08×sizet,则把预编码结果作为对当前帧实际编码的结果,否则转到步骤2.2-4;
步骤2.2-4:如果sizepre>2×sizet,则量化参数取值为min(qppre+Δqp,qpmax),Δqp为预先确定的量化参数变化范围,qpmax为对应用进行视频编码的最大量化参数,否则,转到步骤2.2-5;
步骤2.2-5:如果sizetsizepre,则对当前帧的编码量化参数取值为max(qppre-1,qpmin),否则量化参数取值为min(qppre+1,qpmax),qpmin为对应用进行视频编码的最小量化参数;
步骤3:利用步骤2得到的编码量化参数来控制编码器进行编码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平行云科技(北京)有限公司,未经平行云科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011578379.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:安全钻孔装置
- 下一篇:一种水相变的探测方法