Opened 4 months ago

Last modified 7 weeks ago

#11101 new defect

[EIA-608] Data ignored due to columns exceeding screen width AND weird character

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

Description (last modified by superbonaci)

Summary of the bug:
Extract embedded subtitles, 1 track, to srt.

How to reproduce:

% ffmpeg -f lavfi -i "movie=600_1080p60.ts[out0+subcc]" -map s 600_1080p60.srt
ffmpeg version 7.0.1 Copyright (c) 2000-2024 the FFmpeg developers
  built with Apple clang version 15.0.0 (clang-1500.3.9.4)
  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.0.1 --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.  8.100 / 59.  8.100
  libavcodec     61.  3.100 / 61.  3.100
  libavformat    61.  1.100 / 61.  1.100
  libavdevice    61.  1.100 / 61.  1.100
  libavfilter    10.  1.100 / 10.  1.100
  libswscale      8.  1.100 /  8.  1.100
  libswresample   5.  1.100 /  5.  1.100
  libpostproc    58.  1.100 / 58.  1.100
Input #0, lavfi, from 'movie=600_1080p60.ts[out0+subcc]':
  Duration: N/A, start: 6117.377000, bitrate: N/A
  Stream #0:0: Video: wrapped_avframe, yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 60 fps, 60 tbr, 90k tbn
  Stream #0:1: Subtitle: eia_608 (cc_dec)
Stream mapping:
  Stream #0:1 -> #0:0 (eia_608 (cc_dec) -> subrip (srt))
Press [q] to stop, [?] for help
Output #0, srt, to '600_1080p60.srt':
  Metadata:
    encoder         : Lavf61.1.100
  Stream #0:0: Subtitle: subrip
      Metadata:
        encoder         : Lavc61.3.100 srt
[Closed Captions Decoder @ 0x121086a00] Data ignored due to columns exceeding screen width
[out#0/srt @ 0x6000025fc000] video:0KiB audio:0KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 36.657682%
size=       0KiB time=00:00:06.33 bitrate=   0.6kbits/s speed=15.5x

Attachments (1)

600_1080p60.srt (507 bytes ) - added by superbonaci 4 months ago.

Download all attachments as: .zip

Change History (6)

comment:1 by superbonaci, 4 months ago

Subs extracted 600_1080p60.srt:

1
00:00:00,000 --> 00:00:00,266
<font face="Monospace">{\an7}so very big</font>

2
00:00:00,266 --> 00:00:02,133
<font face="Monospace">{\an7}\hso very big
congratulations to papa plot and</font>

3
00:00:02,133 --> 00:00:04,066
<font face="Monospace">{\an7}congratulations to papa plot and
their community for winning █k7</font>

4
00:00:04,066 --> 00:00:06,333
<font face="Monospace">{\an7}congratulations to papa plot and
their community for winning █k7
million in a TV contest through</font>
Last edited 4 months ago by superbonaci (previous) (diff)

comment:2 by superbonaci, 4 months ago

Version 1, edited 4 months ago by superbonaci (previous) (next) (diff)

comment:3 by superbonaci, 4 months ago

Description: modified (diff)

by superbonaci, 4 months ago

Attachment: 600_1080p60.srt added

comment:4 by superbonaci, 4 months ago

Description: modified (diff)

comment:5 by Trent, 7 weeks ago

I've been able to duplicate this with captures from ATSC broadcasts of mpeg2 video with eia_608 captions.

I tested a number of ffmpeg versions and this worked correctly in ffmpeg 4.3.8.
In 4.4.0 and later, it fails.

There's a stream of "Data ignored due to columns exceeding screen width" errors. The CC data is incorrectly decoded to be the same two character (one line worth), repeating.

Another thing is that sometimes the original MPEG-TS capture will decode correctly. But if it is remuxed into a mp4, using "-c copy", then trying to decode captions from that mp4 will fail. Decoding with ffmpeg 4.3.8 or earlier still works.

Note: See TracTickets for help on using tickets.