H.264编码配置文件是否会影响编码性能?

时间:2017-11-03 03:06:03

标签: video video-encoding x264

我想使用尽可能少的CPU和内存\磁盘I \ O来实时编码,保持低CRF(目前为14)。将编码配置文件从Baseline更改为其他会影响编码CPU使用情况吗?

我目前的设置是:

个人资料\级别:Baseline@L5.2

分辨率和帧速率:1920x1080 @ ~144.001 FPS(可变帧速率模式)

平均整体数据速率:174 mbit \ s(音频为~320kbit \ s VBR AAC)

x264设置:cabac = 0 / ref = 1 / deblock = 0:0:0 / analyze = 0:0 / me = dia / subme = 0 / psy = 1 / psy_rd = 1.00:0.00 / mixed_ref = 0 / me_range = 16 / chroma_me = 1 / trellis = 0 / 8x8dct = 0 / cqm = 0 / deadzone = 21,11 / fast_pskip = 1 / chroma_qp_offset = 0 / threads = 24 / lookahead_threads = 4 / sliced_threads = 0 / nr = 0 / decimate = 1 / interlaced = 0 / bluray_compat = 0 / constrained_intra = 0 / bframes = 0 / weightp = 0 / keyint = 250 / keyint_min = 25 / scenecut = 0 / intra_refresh = 0 / rc = crf / mbtree = 0 / crf = 14.0 / qcomp = 0.60 / qpmin = 0 / qpmax = 69 / qpstep = 4 / ip_ratio = 1.40 / aq = 0

1 个答案:

答案 0 :(得分:0)

不同的编码格式,参数和配置文件等肯定会影响CPU - 它们涉及以不同方式完成不同的工作或相同的工作。

不幸的是,我认为你会发现你必须权衡质量,CPU和存储,并决定哪个对你来说最重要的是减少或保存。

作为给定质量级别的一般规则,假设您使用的是最新的编解码器,那些产生较小文件或较低比特率的编解码器需要做更多的工作来实现这一点,因此将在两者上使用更多的CPU编码和解码方面。同样,如果你想减少CPU,你可能会有更大的文件或比特流。

要回答关于配置文件的特定问题,h.264的基线编码将不使用B帧。

B帧是作为增量存储或流传输到前后帧的帧。如果使用B帧,编码器和决策器通常需要做更多工作,因此您使用基线时使用低CPU方法,但对于给定的质量级别,您的视频端将更大。

如果您切换到使用B帧(以及其他额外压缩'技巧')的配置文件(例如高),那么您的视频将会更小,但需要更多CPU进行编码和解码。