Opened 3 months ago

Closed 3 months ago

Last modified 3 months ago

#7822 closed defect (invalid)

x264 possible encoding error with png source since N-93471-gf8fa8bbf22

Reported by: JouMxyzptlk Owned by:
Priority: normal Component: undetermined
Version: unspecified Keywords: libx264
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:

Last working build:
ffmpeg-20190325-6e42021-win64-static.zip

Up to now everything from ffmpeg-20190328-f8fa8bb-win64-static.zip and later produces those errors.
Mplayer Home Cinema shows the error. ffdshow shows the error as well. avidemux (latest build) does not show the decoding error, I can stream-copy, but the resulting video still shows that error.
Tested with Ryzen 7 2700X on Windows 10 x64 1809 (latest updates) and on i7-4960X on Server 2019 with latest updates: Same result although quite different hardware.
Other CPU load does not matter, I/O load does not matter as well.

Reproduce:
Get test input data from from: http://www.joumxyzptlk.de/tmp/ffmpeg/testdata-4k.7z

For comparison: Correct result with ffmpeg-20190325-6e42021-win64-static.zip
http://www.joumxyzptlk.de/tmp/ffmpeg/ffmpeg-h264-last-working-version-N-93139-ga9452fe6dc.mkv

C:\Users\Jou>C:\prog\ffmpeg\bin\ffmpeg.exe -framerate 25 -i "D:\tmp\testdata-4k\%06d.png" -vcodec libx264 -preset:v veryslow -tune:v Animation -crf 20 "D:\tmp\ffmpeg-h264-last-working-version.mkv"
ffmpeg version N-93139-ga9452fe6dc Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 8.2.1 (GCC) 20190212
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt
  libavutil      56. 26.100 / 56. 26.100
  libavcodec     58. 47.102 / 58. 47.102
  libavformat    58. 26.101 / 58. 26.101
  libavdevice    58.  6.101 / 58.  6.101
  libavfilter     7. 48.100 /  7. 48.100
  libswscale      5.  4.100 /  5.  4.100
  libswresample   3.  4.100 /  3.  4.100
  libpostproc    55.  4.100 / 55.  4.100
Input #0, image2, from 'D:\tmp\testdata-4k\%06d.png':
  Duration: 00:00:03.96, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: png, rgb24(pc), 3840x2160, 25 fps, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (png (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 000001b01b341440] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 000001b01b341440] profile High 4:4:4 Predictive, level 6.0, 4:4:4, 8-bit
[libx264 @ 000001b01b341440] 264 - core 157 r2935 545de2f - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=16 deblock=1:1:1 analyse=0x1:0x131 me=umh subme=10 psy=1 psy_rd=0.40:0.00 mixed_ref=1 me_range=24 chroma_me=1 trellis=2 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=24 lookahead_threads=6 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=10 b_pyramid=2 b_adapt=2 b_bias=0 direct=3 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=60 rc=crf mbtree=1 crf=20.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:0.60
Output #0, matroska, to 'D:\tmp\ffmpeg-h264-last-working-version.mkv':
  Metadata:
    encoder         : Lavf58.26.101
    Stream #0:0: Video: h264 (libx264) (H264 / 0x34363248), yuv444p, 3840x2160, q=-1--1, 25 fps, 1k tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.47.102 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
frame=   99 fps=3.4 q=-1.0 Lsize=    1973kB time=00:00:03.84 bitrate=4207.6kbits/s speed=0.133x
video:1971kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.077132%
[libx264 @ 000001b01b341440] frame I:2     Avg QP:11.80  size: 46632
[libx264 @ 000001b01b341440] frame P:34    Avg QP:19.31  size: 42079
[libx264 @ 000001b01b341440] frame B:63    Avg QP:18.53  size:  7841
[libx264 @ 000001b01b341440] consecutive B-frames: 12.1% 16.2% 27.3%  8.1% 10.1%  0.0%  7.1%  8.1%  0.0%  0.0% 11.1%
[libx264 @ 000001b01b341440] mb I  I16..4: 93.8%  0.0%  6.2%
[libx264 @ 000001b01b341440] mb P  I16..4: 40.0%  0.0%  3.9%  P16..4:  8.6%  0.8%  0.5%  0.0%  0.0%    skip:46.1%
[libx264 @ 000001b01b341440] mb B  I16..4:  3.4%  0.0%  0.2%  B16..8: 10.9%  0.4%  0.1%  direct: 0.2%  skip:84.7%  L0:48.6% L1:48.2% BI: 3.2%
[libx264 @ 000001b01b341440] direct mvs  spatial:69.8% temporal:30.2%
[libx264 @ 000001b01b341440] coded y,u,v intra: 5.1% 1.5% 1.8% inter: 0.6% 0.2% 0.2%
[libx264 @ 000001b01b341440] i16 v,h,dc,p: 62% 16%  7% 15%
[libx264 @ 000001b01b341440] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 23% 10% 34%  7%  6%  6%  4%  6%  5%
[libx264 @ 000001b01b341440] Weighted P-Frames: Y:17.6% UV:14.7%
[libx264 @ 000001b01b341440] ref P L0: 60.4%  8.0% 20.2%  5.2%  3.1%  1.5%  1.2%  0.3%  0.1%  0.1%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%
[libx264 @ 000001b01b341440] ref B L0: 88.6%  7.9%  2.5%  0.7%  0.2%  0.1%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%
[libx264 @ 000001b01b341440] ref B L1: 98.4%  1.6%
[libx264 @ 000001b01b341440] kb/s:4076.61

Wrong result with ffmpeg-20190328-f8fa8bb-win64-static.zip
http://www.joumxyzptlk.de/tmp/ffmpeg/ffmpeg-h264-buggy-version-N-93471-gf8fa8bbf22.mkv

C:\Users\Jou>C:\prog\ffmpeg\bin\ffmpeg.exe -framerate 25 -i "D:\tmp\testdata-4k\%06d.png" -vcodec libx264 -preset:v veryslow -tune:v Animation -crf 20 "D:\tmp\ffmpeg-h264-buggy-version.mkv"
ffmpeg version N-93471-gf8fa8bbf22 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 8.2.1 (GCC) 20190212
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt
  libavutil      56. 26.100 / 56. 26.100
  libavcodec     58. 47.105 / 58. 47.105
  libavformat    58. 26.101 / 58. 26.101
  libavdevice    58.  7.100 / 58.  7.100
  libavfilter     7. 48.100 /  7. 48.100
  libswscale      5.  4.100 /  5.  4.100
  libswresample   3.  4.100 /  3.  4.100
  libpostproc    55.  4.100 / 55.  4.100
Input #0, image2, from 'D:\tmp\testdata-4k\%06d.png':
  Duration: 00:00:03.96, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: png, rgb24(pc), 3840x2160, 25 fps, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (png (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 000001c8bc421280] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 000001c8bc421280] profile High 4:4:4 Predictive, level 6.0, 4:4:4, 8-bit
[libx264 @ 000001c8bc421280] 264 - core 157 r2969 d4099dd - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - http://www.videolan.org/x264.html - options: cabac=1 ref=16 deblock=1:1:1 analyse=0x3:0x133 me=umh subme=10 psy=1 psy_rd=0.40:0.00 mixed_ref=1 me_range=24 chroma_me=1 trellis=2 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=24 lookahead_threads=6 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=10 b_pyramid=2 b_adapt=2 b_bias=0 direct=3 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=60 rc=crf mbtree=1 crf=20.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:0.60
Output #0, matroska, to 'D:\tmp\ffmpeg-h264-buggy-version.mkv':
  Metadata:
    encoder         : Lavf58.26.101
    Stream #0:0: Video: h264 (libx264) (H264 / 0x34363248), yuv444p, 3840x2160, q=-1--1, 25 fps, 1k tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.47.105 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
frame=   99 fps=3.2 q=-1.0 Lsize=    1934kB time=00:00:03.84 bitrate=4125.4kbits/s speed=0.124x
video:1933kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.078670%
[libx264 @ 000001c8bc421280] frame I:2     Avg QP:14.10  size: 46211
[libx264 @ 000001c8bc421280] frame P:34    Avg QP:21.03  size: 41315
[libx264 @ 000001c8bc421280] frame B:63    Avg QP:19.11  size:  7640
[libx264 @ 000001c8bc421280] consecutive B-frames: 12.1% 16.2% 27.3%  8.1% 10.1%  0.0%  7.1%  8.1%  0.0%  0.0% 11.1%
[libx264 @ 000001c8bc421280] mb I  I16..4: 18.5% 80.1%  1.4%
[libx264 @ 000001c8bc421280] mb P  I16..4: 16.5% 25.9%  0.9%  P16..4:  9.2%  0.8%  0.5%  0.0%  0.0%    skip:46.2%
[libx264 @ 000001c8bc421280] mb B  I16..4:  1.7%  1.4%  0.0%  B16..8: 10.8%  0.5%  0.1%  direct: 0.2%  skip:85.3%  L0:48.8% L1:47.4% BI: 3.8%
[libx264 @ 000001c8bc421280] 8x8 transform intra:60.4% inter:87.9%
[libx264 @ 000001c8bc421280] direct mvs  spatial:69.8% temporal:30.2%
[libx264 @ 000001c8bc421280] coded y,u,v intra: 7.5% 3.4% 3.8% inter: 0.9% 0.7% 0.7%
[libx264 @ 000001c8bc421280] i16 v,h,dc,p: 43% 22%  8% 27%
[libx264 @ 000001c8bc421280] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 37% 11% 37%  3%  3%  3%  2%  2%  2%
[libx264 @ 000001c8bc421280] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 31% 14% 15%  6%  9%  8%  5%  6%  5%
[libx264 @ 000001c8bc421280] Weighted P-Frames: Y:17.6% UV:14.7%
[libx264 @ 000001c8bc421280] ref P L0: 61.8%  8.1% 19.0%  5.1%  2.8%  1.5%  1.2%  0.3%  0.1%  0.1%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%
[libx264 @ 000001c8bc421280] ref B L0: 88.4%  7.8%  2.5%  0.7%  0.3%  0.1%  0.1%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%
[libx264 @ 000001c8bc421280] ref B L1: 98.4%  1.6%
[libx264 @ 000001c8bc421280] kb/s:3996.87

Same error with "build of today" ffmpeg-20190402-6aeaac3-win64-static.zip
http://www.joumxyzptlk.de/tmp/ffmpeg/ffmpeg-h264-buggy-version-2019-02-04-N-93515-g6aeaac3e1c.mkv

C:\Users\Jou>C:\prog\ffmpeg\bin\ffmpeg.exe -framerate 25 -i "D:\tmp\testdata-4k\%06d.png" -vcodec libx264 -preset:v veryslow -tune:v Animation -crf 20 "D:\tmp\ffmpeg-h264-last-working-version.mkv"
ffmpeg version N-93139-ga9452fe6dc Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 8.2.1 (GCC) 20190212
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt
  libavutil      56. 26.100 / 56. 26.100
  libavcodec     58. 47.102 / 58. 47.102
  libavformat    58. 26.101 / 58. 26.101
  libavdevice    58.  6.101 / 58.  6.101
  libavfilter     7. 48.100 /  7. 48.100
  libswscale      5.  4.100 /  5.  4.100
  libswresample   3.  4.100 /  3.  4.100
  libpostproc    55.  4.100 / 55.  4.100
Input #0, image2, from 'D:\tmp\testdata-4k\%06d.png':
  Duration: 00:00:03.96, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: png, rgb24(pc), 3840x2160, 25 fps, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (png (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 000001b01b341440] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 000001b01b341440] profile High 4:4:4 Predictive, level 6.0, 4:4:4, 8-bit
[libx264 @ 000001b01b341440] 264 - core 157 r2935 545de2f - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=16 deblock=1:1:1 analyse=0x1:0x131 me=umh subme=10 psy=1 psy_rd=0.40:0.00 mixed_ref=1 me_range=24 chroma_me=1 trellis=2 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=24 lookahead_threads=6 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=10 b_pyramid=2 b_adapt=2 b_bias=0 direct=3 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=60 rc=crf mbtree=1 crf=20.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:0.60
Output #0, matroska, to 'D:\tmp\ffmpeg-h264-last-working-version.mkv':
  Metadata:
    encoder         : Lavf58.26.101
    Stream #0:0: Video: h264 (libx264) (H264 / 0x34363248), yuv444p, 3840x2160, q=-1--1, 25 fps, 1k tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.47.102 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
frame=   99 fps=3.4 q=-1.0 Lsize=    1973kB time=00:00:03.84 bitrate=4207.6kbits/s speed=0.133x
video:1971kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.077132%
[libx264 @ 000001b01b341440] frame I:2     Avg QP:11.80  size: 46632
[libx264 @ 000001b01b341440] frame P:34    Avg QP:19.31  size: 42079
[libx264 @ 000001b01b341440] frame B:63    Avg QP:18.53  size:  7841
[libx264 @ 000001b01b341440] consecutive B-frames: 12.1% 16.2% 27.3%  8.1% 10.1%  0.0%  7.1%  8.1%  0.0%  0.0% 11.1%
[libx264 @ 000001b01b341440] mb I  I16..4: 93.8%  0.0%  6.2%
[libx264 @ 000001b01b341440] mb P  I16..4: 40.0%  0.0%  3.9%  P16..4:  8.6%  0.8%  0.5%  0.0%  0.0%    skip:46.1%
[libx264 @ 000001b01b341440] mb B  I16..4:  3.4%  0.0%  0.2%  B16..8: 10.9%  0.4%  0.1%  direct: 0.2%  skip:84.7%  L0:48.6% L1:48.2% BI: 3.2%
[libx264 @ 000001b01b341440] direct mvs  spatial:69.8% temporal:30.2%
[libx264 @ 000001b01b341440] coded y,u,v intra: 5.1% 1.5% 1.8% inter: 0.6% 0.2% 0.2%
[libx264 @ 000001b01b341440] i16 v,h,dc,p: 62% 16%  7% 15%
[libx264 @ 000001b01b341440] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 23% 10% 34%  7%  6%  6%  4%  6%  5%
[libx264 @ 000001b01b341440] Weighted P-Frames: Y:17.6% UV:14.7%
[libx264 @ 000001b01b341440] ref P L0: 60.4%  8.0% 20.2%  5.2%  3.1%  1.5%  1.2%  0.3%  0.1%  0.1%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%
[libx264 @ 000001b01b341440] ref B L0: 88.6%  7.9%  2.5%  0.7%  0.2%  0.1%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%  0.0%
[libx264 @ 000001b01b341440] ref B L1: 98.4%  1.6%
[libx264 @ 000001b01b341440] kb/s:4076.61

Attachments (1)

ffmpeg-h264-buggy-version-2019-02-04-N-93515-g6aeaac3e1c.jpg (226.0 KB) - added by JouMxyzptlk 3 months ago.
Screenshot from MPC Home Cinema

Download all attachments as: .zip

Change History (4)

Changed 3 months ago by JouMxyzptlk

Screenshot from MPC Home Cinema

comment:1 Changed 3 months ago by JouMxyzptlk

Correction:
Last working build is ffmpeg-20190217-a9452fe-win64-static.zip, N-93139-ga9452fe6dc.
Error appears since ffmpeg-20190325-6e42021-win64-static.zip, N-93461-g6e42021128.

comment:2 Changed 3 months ago by cehoyos

  • Keywords libx264 added; x264 removed
  • Resolution set to invalid
  • Status changed from new to closed

comment:3 Changed 3 months ago by JouMxyzptlk

Thank you for that information!
That explains why the newer version also creates slightly smaller files. Can't wait for the updates of the other decoders.

Note: See TracTickets for help on using tickets.