Opened 3 days ago

Last modified 15 hours ago

#11263 new defect

[Regression] "movie" filter Closed Caption extraction gave empty output

Reported by: Selcuk Ozturk Owned by:
Priority: normal Component: avfilter
Version: git-master Keywords: movie
Cc: MasterQuestionable Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
With some files, even though the video file contains closed caption data when played in VLC, the ffmpeg srt extraction produces and empty file. This happens with the git version 20240629 and release 5.0.

However, release 4.3.2 works fine with the same input and produces correct output.

How to reproduce:

% ffmpeg -f lavfi -i movie=fox5-202410230440.ts[out+subcc] z.srt
ffmpeg version: 
5.0 and git build 20240629 by John van Sickle
built on ...

Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.

Attachments (1)

file.ts (2.2 MB ) - added by Selcuk Ozturk 3 days ago.

Change History (6)

by Selcuk Ozturk, 3 days ago

Attachment: file.ts added

comment:1 by MasterQuestionable, 2 days ago

Cc: MasterQuestionable added
Component: ffmpegavfilter
Keywords: movie added
Summary: Closed Caption extraction produces empty output[Regression] "movie" filter Closed Caption extraction gave empty output

͏    Is it really sensible..?
͏    https://ffmpeg.org/ffmpeg-filters.html#movie

͏    Why not use ordinary "-i" and ͏"-map"?
͏    Also the semantic definition of "+" in stream label names appears uncertain.
͏    (really string literal?)

comment:2 by Selcuk Ozturk, 42 hours ago

As far as I can find out, eia_608 closed captions in mpegts streams don't have their own stream. The only way to extract them is "movie=filename.ts[out+subcc]" which kind of converts them to a stream. All google searches point to this syntax. If you can give me your suggested syntax, I can try it.

comment:3 by MasterQuestionable, 33 hours ago

͏    What does it report?
͏    ffprobe -hide_banner -threads 0 -show_entries "stream=time_base:format=size" -of "flat=h=0" "fox5-202410230440.ts"

comment:4 by Selcuk Ozturk, 15 hours ago

It reports the following:

# /opt/ffmpeg-git-20240629-amd64-static/ffprobe -hide_banner -threads 0 -show_entries "stream=time_base:format=size" -of "flat=h=0" "fox5-202410230440.ts"
Input #0, mpegts, from 'fox5-202410230440.ts':

Duration: 00:05:09.64, start: 1.767033, bitrate: 152 kb/s
Program 1

Metadata:

service_name : Service01
service_provider: FFmpeg

Stream #0:0[0x100]: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(progressive), 128x72 [SAR 1:1 DAR 16:9], 59.94 fps, 59.94 tbr, 90k tbn

program.0.stream.0.time_base="1/90000"
stream.0.time_base="1/90000"
format.size="5897560"

comment:5 by Selcuk Ozturk, 15 hours ago

When I use release 4.3.2 ffprobe, I get:

# /opt/ffmpeg-4.3.2-amd64-static/ffprobe -hide_banner -threads 0 -show_entries "stream=time_base:format=size" -of "flat=h=0" "fox5-202410230440.ts"
ffmpeg-4.3.2-amd64-static/
root@mercury:~# /opt/ffmpeg-4.3.2-amd64-static/ffprobe -hide_banner -threads 0 -show_entries "stream=time_base:format=size" -of "flat=h=0" "fox5-202410230440.ts"
Input #0, mpegts, from 'fox5-202410230440.ts':

Duration: 00:05:09.64, start: 1.767033, bitrate: 152 kb/s
Program 1

Metadata:

service_name : Service01
service_provider: FFmpeg

Stream #0:0[0x100]: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(progressive), 128x72 [SAR 1:1 DAR 16:9], Closed Captions, 59.94 fps, 59.94 tbr, 90k tbn, 119.88 tbc

program.0.stream.0.time_base="1/90000"
stream.0.time_base="1/90000"
format.size="5897560"

Please note the difference of "Closed Captions" between the two versions.

Note: See TracTickets for help on using tickets.