[FFmpeg-devel] [PATCH] lavf/tee: add support for bitstream filtering

Stefano Sabatini stefasab at gmail.com
Thu Aug 1 18:32:59 CEST 2013


On date Thursday 2013-08-01 14:36:21 +0200, Nicolas George encoded:
> Le tridi 13 thermidor, an CCXXI, Stefano Sabatini a écrit :
> > Changed to:
> > dumo_extra+a,mp4toannexb+v.
> 
> I believe you missed my point: I meant:
> 
> bsfs:a=dump_extra,bsfs:v=mp4toannexb
> 
> But I realize that it is not possible as ':' is not an authorized option
> character. "bsfs.a=dump_extra" would be possible, though.

The problem is that such mechanism is awkward implementation-wise, I'd
need to iterate the options and match all the options which look like
bsfs.SPEC, store them and then open the filters after the various
streams have been opened.

One problem is that you need to specify the option multiple times, for
example:
bsf.a=dump_extra:bsf.v=mp4toannexb

with my proposed syntax:
bsfs=dump_extra+a,mp4annexb+v

which is shorter and IMO at least as much as readable, the only
advantage of your syntax is that it *resembles* specific ffmpeg
syntax, which I consider a marginal gain in this case.

The other problem is that once the dictionary has been parsed, you
lose the order of application of the filters, which could be
practically relevant.

(Note also that my syntax can be easily extended in case the need
arise to support filter arguments: filter+spec=args).

What we need is a specification format to set a sequence of bitstream
filters, each one of which can be applied to a selected subset of
streams. If such specification is not exploded in multiple options,
that's better from my point of view.

[...]
-- 
FFmpeg = Foolish & Fast Murdering Patchable Exxagerate Gymnast


More information about the ffmpeg-devel mailing list