Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Devlist Archive <devlist@rlb.org>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] Captions SCC
Date: Fri, 7 Feb 2025 11:31:21 -0800
Message-ID: <CANJxsBk-OeWEJ1EmTDSL+b4r2k=WN7pXhLfHxkL=3APcdq9ZhQ@mail.gmail.com> (raw)
In-Reply-To: <CAHGibzHRmgTf206rJyQtsWDo3Lk_mVtOr1tmyaLGg=FEgnVbuA@mail.gmail.com>

>
> The cc_fifo mechanism is actually implemented within the various
> filters which change the framerate (deinterlacing, framerate
> conversion, interlacing), so no extra command line arguments are
> required.  There are some edge cases though that don't properly handle
> it, and those mainly relate to cases such as the captions crossing
> back/forth between SEI and dedicated caption tracks (e.g. MP4 with a
> caption track, the subcc output, etc).
>

Ok, based on this information I am going to make a bug report ticket for
the particular type of mp4 files I am using because while some caption data
is passed, it is garbled and the transcoding process is producing errors.
I was not aware that some work had been done to try to solve the frame rate
conversion issue already as the behaviour of ffmpeg implies that it doesn't
try to compensate for those changes for the file types I am working with.
There are also bugs in the subcc function that seem to be affecting display
time and other metadata.

I assume that it would be more efficient and better to fix the existing 608
only data path before trying to expand things to include 708?

Zach

On Fri, Feb 7, 2025 at 11:03 AM Devin Heitmueller <
devin.heitmueller@ltnglobal.com> wrote:

> On Fri, Feb 7, 2025 at 1:32 PM Devlist Archive <devlist@rlb.org> wrote:
> > That is good to hear, FYI any time 708 captions present in a DTVCC video
> > stream there also must be 608 captions wrapped in that stream for legal
> > compliance and backwards compatibility with older downstream equipment
> > that downscales to SD.  Typically files come in with both 608 and 708
> > streams, but sometimes there will only be a 608 stream.  Regulations only
> > require 608, but 708 support is ideal.
>
> Yeah, almost everybody ignores the 708 data, and in fact in most cases
> the content is authored in 608 and then upconverted to 708 (i.e. so
> you don't get any of the benefits of 708).  It's unfortunate how that
> turned out, but it's largely related to economics for the content
> providers.
>
> I considered adding a c708 AVPacket format which preserves the 708
> data, but never got around to it.  Even the MCC demuxer in ffmpeg
> right now only uses the 608 tuples and throws away the 708 data.  It's
> kind of a mess.
>
> > I noticed that either the RCWT or ccextractor scc process is also messing
> > with the display duration of the captions, so that is not a currently
> > functional workflow for me.  Probably has something to do with the
> > processing subcc is doing.  At least that workflow makes a more accurate
> > scc file than what is produced when using ffmpeg's ability to write the
> > .scc file directly.
> >
> > The functions on my wish list are full 708/608 support for extraction and
> > embedding to/from mcc and preserving 708/608 during frame rate conversion
> > and transcoding with ffmpeg.  I have been pleased to see that transcoding
> > now works with standard commands, but frame rate conversion using normal
> > commands does not automatically invoke the cc_fifo mechanism or
> cc_repack.
> > It would seem that captions should be handled correctly automatically and
> > not need special filter commands to preserve them.  The captions I work
> > with are basically user data captions but in an mp4 file according to
> SCTE
> > 128 / DTVCC Transport.
>
> The cc_fifo mechanism is actually implemented within the various
> filters which change the framerate (deinterlacing, framerate
> conversion, interlacing), so no extra command line arguments are
> required.  There are some edge cases though that don't properly handle
> it, and those mainly relate to cases such as the captions crossing
> back/forth between SEI and dedicated caption tracks (e.g. MP4 with a
> caption track, the subcc output, etc).
>
> The cc_repack filter itself should almost never be actually used.
> It's there mainly to deal with certain broken streams to regenerate
> the padding in a conformant manner (e.g. deals with cases where an
> incorrect amount of padding is in the source stream, the 608 tuples
> violate the interleaving rules, etc).
>
> Devin
>
> --
> Devin Heitmueller, Senior Software Engineer
> LTN Global Communications
> o: +1 (301) 363-1001
> w: https://ltnglobal.com  e: devin.heitmueller@ltnglobal.com
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
>
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

  reply	other threads:[~2025-02-07 19:31 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-06 10:19 Devlist Archive
2025-02-06 12:57 ` Jack Lau
2025-02-07  5:12   ` Devlist Archive
2025-02-07  7:48     ` Soft Works
2025-02-07  7:58       ` Jack Lau
2025-02-07  8:16         ` Soft Works
2025-02-07  8:26           ` Jack Lau
2025-02-07  9:11             ` Soft Works
2025-02-07  9:44               ` Jack Lau
2025-02-07 15:38                 ` Marth64
2025-02-07 16:05                   ` Devlist Archive
2025-02-07 16:18                     ` Marth64
2025-02-07 16:37                       ` Marth64
2025-02-07 16:42                         ` Devlist Archive
2025-02-07 18:05                           ` Devin Heitmueller
2025-02-07 18:32                             ` Devlist Archive
2025-02-07 19:03                               ` Devin Heitmueller
2025-02-07 19:31                                 ` Devlist Archive [this message]
2025-02-07 19:44                                   ` Soft Works
2025-02-07 19:51                                     ` Devlist Archive
2025-02-07 19:55                                       ` Devin Heitmueller
2025-02-07 19:56                                         ` Devin Heitmueller
2025-02-07 19:56                                       ` Soft Works
2025-02-07 20:20                                         ` Devlist Archive
2025-02-07 19:52                                   ` Devin Heitmueller
2025-02-07 19:54                                     ` Devlist Archive
2025-02-07 17:37                 ` Rémi Denis-Courmont
2025-02-07 17:31           ` Rémi Denis-Courmont
2025-02-07 17:47             ` Soft Works
2025-02-07 18:36       ` Tom Vaughan
2025-02-07 18:54         ` Soft Works
2025-02-07 20:09           ` Tom Vaughan
2025-02-07 20:49             ` Devlist Archive
2025-02-07 20:58               ` Soft Works
2025-02-07 21:05                 ` Devlist Archive
2025-02-07 21:08                 ` Devin Heitmueller
2025-02-07 22:02                   ` Marth64
2025-02-07 22:18                     ` Marth64

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CANJxsBk-OeWEJ1EmTDSL+b4r2k=WN7pXhLfHxkL=3APcdq9ZhQ@mail.gmail.com' \
    --to=devlist@rlb.org \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git