MediaCoder H.264使用笔记

因为最近在玩Vlog,为了在有限码率下压出极限的画质,去研究了一会儿MediaCoder。

软编 > 硬编

硬编质量:NVENC > Quick Sync Video > Advanced Media Framework

码率模式:

1. 平均码率模式; ABR

2. 固定质量模式; CRF

3. 恒定码率模式; CBR

4. 恒定量化参数; QP

5. 2次编码模式; 2 Pass

6. 3次编码模式; 3 Pass

 

视频格式(编码格式):

常用格式:H.264、HEVC、VP8、VP9

Bilibili限制上次文件编码格式为H.264

 

容器(文件后缀):

常用容器:MP4、MKV、AVI、WebM、Flv

推荐容器:MKV,对于编码格式兼容度高,同时拥有EDC纠错可以播放不完整视频,同样支持多音轨,支持软字幕。

备注:Adobe Premiere不支持MKV容器

 

复制视屏流:

当勾选参数时,MediaCoder不会对原始视频进行转换,而是直接无损提取。

 

编码器:

MediaCoder对视频编码时所使用的编码器。如果对于画质没有最求而更在于时间时,可以选择GPU编码器。

注意:在已知需要转的格式有对应的独立编码器的情况下,最好使用专用的编码器,比如H.264使用X264编码器/HEVC使用X265编码器,可以避免很多坑。如果不知道对应格式的编码器时,也请使用FFMpeg而不是自动。

 

来源(解码器):

MediaCoder对原视屏解码时所使用的解码方式。

注意:请不要使用自动,而是FFmpeg,MediaCoder在遇到解码器无法解码时,并不会抛出错误。

 

x264编码器选项参数:

规格(Profile):压缩时使用规格模式。

级别(Level):表示编、解码等级

移动设备兼容性:

预设:

x264预留预设,不做多解释,选择Custom

运动估算模式(–me):对全像素块动态预测搜索的方式

Diamond:菱形搜索;

Hexagonal:正六边形搜索;

Uneven Multi-Hexagon:可变半径六边形搜索;

Exhaustive:全面搜索;

Hadamard Exhaustive:用Hadamard方式进行全面搜索,比Exhaustive更慢。

推荐:选择Uneven Multi-Hexagon

注意:建议设为Uneven Multi-Hexagon;Exhaustive和Hadamard Exhaustive实在太慢了,而且画面质量提高极不明显。除非你不怕浪费时间且追求高质量画面的骨灰级玩家并且很相信自己机器配置那么就选Hadamard Exhaustive吧!

范围(–merange):运动估算半径4-64,计算机对像素块进行预测搜索的半径。

推荐:16

参考帧数(–ref):最大参考帧数,范围0-16。该参数对质量和压缩比都有提高。

推荐:7

子像素优化(–subme):–subme:动态预测和分区方式,可选项1-11

1:QPel SAD 1 iteration;

用全像素块进行动态搜索,对每个块再用快速模式进行四分之一像素块精确搜索;

2:QPel SATD 2 iterations

用半像素块进行动态搜索,对每个块再用快速模式进行四分之一像素块精确搜索

3:HPel on MB then QPel

用半像素块进行动态搜索,对每个块再用质量模式进行四分之一像素块精确搜索

4:Always QPel

用快速模式进行四分之一像素块精确搜索

5:Multi QPel + bime

用质量模式进行四分之一像素块精确搜索

6:RD on I/P frames

进行I、P帧像素块的速率失真最优化(rdo)

7:RD on all frames

进行全部帧像素块的速率失真最优化

8:RD refinement on I/P frames

进行I、P帧运动矢量及块内部的速率失真最优化

9:RD refinement on all frames

进行全部帧运动矢量及块内部的速率失真最优化

10:QP-RD (requires –trellis=2, –aq-mode > 0)QP-RD(Requires trellis=2, aq-mode(Adaptive Quantization Mode )>0 )

11:Full RD(No early termination)

无区别完全优化

优化:对特定视频进行算法优化。

使用Normal就好

B帧数(–bframes):在I帧与P帧之间可插入B帧数量的最大值,范围0-16。

推荐:5

 

Comments

  1. 好耶,更新了。

发表评论

Your email address will not be published / Required fields are marked *