P9 视频码率及其码率控制方式

本文介绍了在瑞芯微开发板上使用嵌入式音视频编码的VIVENC和AIAENC模块,详细讲解了CBR、VBR和AVBR三种码率控制方式,包括它们的工作原理、结构体和适用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言 

                             

从本章开始我们将要学习嵌入式音视频的学习了 ,使用的瑞芯微的开发板

🎬 个人主页:@ChenPi

🐻推荐专栏1: 《C++_@ChenPi的博客-CSDN博客》✨✨✨ 

🔥 推荐专栏2: 《Linux C应用编程(概念类)_@ChenPi的博客-CSDN博客》✨✨✨

🛸推荐专栏3:《嵌入式音视频_@ChenPi的博客-CSDN博客
🌺本篇简介  :本章主要讲解VI VENC模块和AI AENC模块的初始化及具体函数详解

01 什么是码率?

视频码率指的是数据传输单位数,也是指每秒钟传输的视频数据位数,单位是kbps千位/s。

通常来说码率越大,视频的精度越高。编码出来的视频文件,则会越接近原始YUV文件。

通常码率和分辨率息息相关。下面这张图就是分辨率和码率的关系

02 什么是码率控制方式?

码率控制指的是利用编码中的一些特殊手段控制图像的压缩比例,使其画面质量在不同的场景中保持一个最优的状态。

RV1126的码率控制方式,总共分为三种:

  1. CBR固定码率控制模式
  2. VBR可变码率控制模式
  3. AVBR码率控制模式。

2. 1. CBR控制码率详解

CBR指的是固定比特率,它指的是在统计时间内编码码率处于平稳状态。

这种方式的特点是码率调节会相对比较缓慢,它不会跟着图像的质量的波动去改变码率。

CBR控制模式一般用于网络流媒体视频编码。

  1. CBR的优点在于压缩速度非常快,并且码率很平稳不会出现码率跳变的情况。
  2. 但缺点也很明显,就是它不会根据画面的波动对码率进行节省,这样的话会导致每秒空间的浪费。在RV1126的API里面,CBR一般用平均比特率去表示。

从上图我们可以看出来,在RV1126的API里面。用

  • VENC_H264_CBR_S(H264的CBR控制模式)
  • VENC_MJPEG_CBR_S(MJPEG的CBR控制模式)
  • VENC_H265_CBR_S(H265的C
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@ChenPi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值