谷动谷力

 找回密码
 立即注册
查看: 823|回复: 0
打印 上一主题 下一主题
收起左侧

嵌入式音视频开发过程中如何控制码率?

[复制链接]
跳转到指定楼层
楼主
发表于 2023-5-22 23:38:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
嵌入式音视频开发过程中如何控制码率?

码率控制的意义

在音视频领域,码率控制模式有着举足轻重的地位。那什么是码率控制?码率控制是指通过调节图像的压缩比例,从而决定输出编码码率的过程。


H264有多少种码率控制模式

H264码率控制模式分别有:CBR、VBR、AVBR三种经典的模式。下面,我们就来看看这三种模式有什么区别:

  • CBR码率控制模式

CBR指的是固定编码控制模式:它指的是以恒定编码比特率进行压缩操作,当有运动时刻发生的时候,由于码率保持着恒定变化。所以,大部分情况下只能通过增大QP数值来调节画面质量,而当运动画面变多时图像质量变差。当场景从运动画面切换到静止画面的时候,图像质量变差。所以这种算法是优先考虑节省码率(带宽),而牺牲画面质量。

  • VBR控制模式

VBR指的是动态编码控制模式,它的最大特点是码率的变化是随着画面质量的变化而变化。比方说在运动的时刻码率会变高,从而马赛克和花屏的现象会减少。这种码率控制模式的最大优点就是以画面质量为最优先考虑,在处理一些复杂画面的时候,会大幅度提高码率解决画质问题。但是其缺点也很明显,就是它的码率不能以恒定的值进行处理,所以会大幅度消耗码率。

VBR调节一般由四个编码参数决定:
1)maxbitrate
2)minqp
3)maxqp
4)changepos
其中maxqp和minqp主要是调节画面质量的参数范围,而maxbitrate主要用于计算单位时间内最大的编码码率,changepos是用于调整qp码率的基准。
若编码的码率大于最大码率 * ChangePos的时候,图像的QP值会逐步向maxqp范围调整,若图像的qp值大于等于maxqp的时候,qp调节的值将会达到最大值。若编码的码率小于于最大码率 * ChangePos的时候,图像的QP值会逐步向minqp范围调整,若图像的qp值达到了minqp的时候,qp调节的值将会达到最大值。而此时,图像质量是最好的。
  • AVBR控制模式

AVBR指的是可变码率控制。这种码率控制模式的特点是,它会自动检测当前编码的图像是静止画面还是运动画面。若是运动画面,AVBR模式会提高码率去大大改善当前的画面质量,而当检测到静止画面的时候。AVBR会主动降低码率来节省带宽。

这种模式的最大特点是,它会根据最大码率和最小码率之间进行调整。所以,AVBR综合了CBR和VBR的优势,在运动模式下能够提高码率来保证画面质量的平稳,而在静止画面下会保带宽。

在AVBR模式下有三个参数来表示码率的变化,分别是:1)maxbitrate2)changepos3)minstillpercent在运动场景下,最大码率就等于maxbitrate,而在静止模式下最小码率就等于maxbitrate * changepos * minstillpercent。
来源:txp玩Linux

+10
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|深圳市光明谷科技有限公司|光明谷商城|Sunshine Silicon Corpporation ( 粤ICP备14060730号|Sitemap

GMT+8, 2024-12-27 23:38 , Processed in 0.114762 second(s), 39 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表