[FFmpeg-trac] #11164(avcodec:closed): visual macroblock error with mpeg2video encoding

FFmpeg trac at avcodec.org
Wed May 28 20:25:30 EEST 2025


#11164: visual macroblock error with mpeg2video encoding
------------------------------------+--------------------------------------
             Reporter:  dave rice   |                    Owner:  (none)
                 Type:  defect      |                   Status:  closed
             Priority:  normal      |                Component:  avcodec
              Version:  6.1.1       |               Resolution:  worksforme
             Keywords:  mpeg2video  |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+--------------------------------------
Comment (by dave rice):

 Thanks @mkver. I tried again, I'm using ffmpeg 7

 ```
 ffmpeg -y -i input_that_creates_visual_error_with_ffmpeg6_but_not_5.mp4
 -c:v mpeg2video -non_linear_quant 1 -qmin 1 -pix_fmt yuv422p -vtag xd5b
 -q:v 1 -qmax 8 good.mov
 ffmpeg version 7.1.1 Copyright (c) 2000-2025 the FFmpeg developers
   built with Apple clang version 16.0.0 (clang-1600.0.26.6)
   configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.1.1_2 --enable-
 shared --enable-pthreads --enable-version3 --cc=clang --host-cflags=
 --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-
 gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-
 libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame
 --enable-libopus --enable-librav1e --enable-librist --enable-librubberband
 --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1
 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-
 libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-
 libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma
 --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-
 libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-
 libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-
 libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox
 --enable-audiotoolbox --enable-neon
   libavutil      59. 39.100 / 59. 39.100
   libavcodec     61. 19.101 / 61. 19.101
   libavformat    61.  7.100 / 61.  7.100
   libavdevice    61.  3.100 / 61.  3.100
   libavfilter    10.  4.100 / 10.  4.100
   libswscale      8.  3.100 /  8.  3.100
   libswresample   5.  3.100 /  5.  3.100
   libpostproc    58.  3.100 / 58.  3.100
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
 'input_that_creates_visual_error_with_ffmpeg6_but_not_5.mp4':
   Metadata:
     major_brand     : isom
     minor_version   : 512
     compatible_brands: isomiso2avc1mp41
     encoder         : Lavf59.27.100
   Duration: 00:00:02.04, start: 0.000000, bitrate: 5301 kb/s
   Stream #0:0[0x1](eng): Video: h264 (Main) (avc1 / 0x31637661),
 yuv420p(tv, bt709, progressive), 1920x1080, 2982 kb/s, 23.98 fps, 23.98
 tbr, 24k tbn (default)
       Metadata:
         handler_name    : ?Mainconcept Video Media Handler
         vendor_id       : [0][0][0][0]
         encoder         : AVC Coding
 Stream mapping:
   Stream #0:0 -> #0:0 (h264 (native) -> mpeg2video (native))
 Press [q] to stop, [?] for help
 Output #0, mov, to 'good.mov':
   Metadata:
     major_brand     : isom
     minor_version   : 512
     compatible_brands: isomiso2avc1mp41
     encoder         : Lavf61.7.100
   Stream #0:0(eng): Video: mpeg2video (4:2:2) (xd5b / 0x62356478),
 yuv422p(tv, bt709, progressive), 1920x1080, q=2-31, 200 kb/s, 23.98 fps,
 24k tbn (default)
       Metadata:
         handler_name    : ?Mainconcept Video Media Handler
         vendor_id       : [0][0][0][0]
         encoder         : Lavc61.19.101 mpeg2video
       Side data:
         cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
 [out#0/mov @ 0x600003bb83c0] video:5348KiB audio:0KiB subtitle:0KiB other
 streams:0KiB global headers:0KiB muxing overhead: 0.019850%
 frame=   49 fps=0.0 q=1.0 Lsize=    5349KiB time=00:00:02.00
 bitrate=21886.2kbits/s speed=  11x
 ```

 In the output, I'm looking at the frame of 00:00:00.542: in the top line
 of text the tops of the letters seem to have black boxes over them. On
 line 3 the word "Executive" has parts obscured. The word "Head" on line 2
 has an odd white blocks in the lower right corner of the "H". The next
 frame is similar. At frame 1.293 the word "Head" again has odd shapes to
 it.

 When I compare to the frames in the source they look very different.
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/11164#comment:5>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list