[FFmpeg-user] ffprobe closed_captions json output not set while text output is set

Pieter Viljoen pieter at viljoen.com
Wed Mar 16 04:54:11 EET 2022


I would like to add the ability to detect and remove closed captions from
video streams using ffmpeg, in an open source tool I maintain that cleans
up media files for direct play on Plex, Emby, Jellyfin, etc.:
https://github.com/ptr727/PlexCleaner

When I run ffprobe in JSON output mode, it is not setting the
"closed_captions" attribute.
When I run ffprobe in default output mode, it does correctly identify
closed captions in video streams and prints "Closed Captions" in the stream
descriptor.

I am confused why default output mode does detect closed captions but JSON
output mode does not.

Details of the problem is described where I asked for help on reddit and
videohelp:
https://www.reddit.com/r/ffmpeg/comments/tcnhto/how_to_detect_closed_captions_in_video_stream/
https://forum.videohelp.com/threads/405123-Detect-embedded-closed-captions-in-video-stream-using-ffprobe-json-output

I did not get any help, but after lots of googling I did find an abandoned
patch that describes exactly the problem I am experiencing:
https://patchwork.ffmpeg.org/project/ffmpeg/patch/MN2PR04MB59815313285AA685E37D09AEBAB09@MN2PR04MB5981.namprd04.prod.outlook.com/
https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=&submitter=&state=*&q=closed_captions&archive=both&delegate=
https://www.mail-archive.com/ffmpeg-devel@ffmpeg.org/msg126211.html

The proposed patch seemed trivial, but I do not understand the nuances of
the objections.

I'd like the patch to be please re-considered, or an alternative proposed
that allows ffprobe's JSON output to return correct closed_captions values.

P.s. Apologies for trying and failing at asking for help on IRC.

---
Pieter


More information about the ffmpeg-user mailing list