[x264-devel] x264 generates non-deterministic output with multithreads and vbv mode
Zhi Li
zli at netflix.com
Fri Apr 17 18:48:44 CEST 2015
Dear developers,
I have found that when the number of threads is more than one, and vbv
mode is turned on (by setting vbv-maxrate and vbv-bufsize), the output
is not bit-exact every time the encoding is run. For example:
x264 --frames 48 --input-res 576x324 --threads 2 --vbv-maxrate 563
--vbv-bufsize 750 --bitrate 375 --output "output.264" "input.yuv"
generates non-deterministic output, whereas both
x264 --frames 48 --input-res 576x324 --threads 1 --vbv-maxrate 563
--vbv-bufsize 750 --bitrate 375 --output "output.264" "input.yuv"
x264 --frames 48 --input-res 576x324 --threads 2 --bitrate 375
--output "output.264" "input.yuv"
generate deterministic output.
By running some post-encode verification, I find that sometimes the
non-deterministic output can differ by 2 dB in frame PSNR.
environment: Ubuntu 14.04 LTS
version: x264 0.142.x
built on Apr 16 2015, gcc: 4.8.2
configuration: --bit-depth=8 --chroma-format=all
Any suggestions or fixes will be greatly appreciated.
Best,
Zhi Li
More information about the x264-devel
mailing list