filter_units
(本文一部分译自 FFmpeg 官方文档)
filter_units 滤镜可以移除数据流中的特定类型单元。该滤镜多用于分析视频码流。具体用法如:
ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=pass_types=6' OUTPUT
滤镜参数:
pass_types -- 指定需要保留的单元类型。该参数支持以 "|" 连接多个需要保留的单元类型,或者以 "-" 表示一定范围内的单元类型。如:
ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=pass_types=1-5' OUTPUT
可用于移除 H.264 码流中所有的 non-VCL Nalu。
remove_types -- 指定需要移除的单元类型。参数格式与 pass_types 相同。如:
ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=remove_types=35|38-40' OUTPUT
可用于移除 H.265 码流中所有的 AUD, SEI。
注意,该滤镜使用效果和编码标准有关。如在移除码流中的 non-VCL Nalu 时,对于 H.264 和 H.265 编码码流,所需参数组合并不相同。