在实际开发中,码率控制的需求还是比较多, 码率控制主要有以下几种:
1、CQP(Constant Quantization Parameter )
特点:
值越大,压缩率越大,质量越低。使用方法(虽然这里使用的是命令行的形式,但在编写代码时也有参考价值)。
ffmpeg -i <input> -c:v libx264 -qp 23 <output>
ffmpeg -i <input> -c:v libx265 -x265-params qp=23 <output>
仅适用于视频编码研究,除非确切知道自己在做什么,否则不要使用这种模式。
2、ABR(Average Bitrate)。使用方法:
fmpeg -i <input> -c:v libx264 -b:v 1M <output>
ffmpeg -i <input> -c:v libx265 -b:v 1M <output>
ffmpeg -i <input> -c:v libvpx-vp9 -b:v 1M <output>
避免使用这种模式!x264 开发者甚至说永远不要用它,因为质量不可控。
3、CBR(Constant BitRate)
使用:
ffmpeg -i <input> -c:v libx264 -x264-params "nal-hrd=cbr:f