[FFmpeg-devel] [PATCH v2] doc/bitstream_filters: add filter_units practical examples for removing closed captions

Mark Thompson sw at jkqxz.net
Mon Dec 11 22:27:40 EET 2023


On 11/12/2023 16:33, Marth64 wrote:
> Added v2 label and signed off as per proper procedure.
> 
> Signed-off-by: Marth64 <marth64 at proxyid.net>
> ---
>   doc/bitstream_filters.texi | 18 ++++++++++++++++++
>   1 file changed, 18 insertions(+)
> 
> diff --git a/doc/bitstream_filters.texi b/doc/bitstream_filters.texi
> index dc4f85bac0..7c36c5346d 100644
> --- a/doc/bitstream_filters.texi
> +++ b/doc/bitstream_filters.texi
> @@ -213,6 +213,24 @@ To remove all AUDs, SEI and filler from an H.265 stream:
>   ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=remove_types=35|38-40' OUTPUT
>   @end example
>   
> +SEI messages are commonly used to contain Closed Captions as well as other metadata such as dynamic HDR.
> +This filter can be used to remove the SEI messages if desired.
> +
> +To remove SEI messages (including CC) from a MPEG-2 stream:
> + at example
> +ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=remove_types=178' OUTPUT
> + at end example

MPEG-2 doesn't call these SEI, it is simply "user data".

> +
> +To remove SEI messages (including CC) from a H264 stream:
> + at example
> +ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=remove_types=6' OUTPUT
> + at end example
> +
> +To remove SEI messages (including CC and dynamic HDR) from a HEVC stream:
> + at example
> +ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=remove_types=39' OUTPUT
> + at end example

Are closed captions allowed in suffix SEI as well?  T.35 messages are certainly allowed there.

(I'm mildly inclined to think that a more specific bitstream filter able to mess with the SEI types would be more useful?  This approach feels like it has a lot of collateral damage.)

Thanks,

- Mark


More information about the ffmpeg-devel mailing list