[Ffmpeg-devel] Patch add function to read record time in dv video
Rich Felker
dalias
Sun Sep 4 17:59:10 CEST 2005
On Sun, Sep 04, 2005 at 09:18:06AM -0600, Fred Rothganger wrote:
> Michael Niedermayer wrote:
>
> >patch looks ok, roman, do you agree with that? IIRC we had some
> >disagreements in the past about how to pass this info around
> >
> >
>
> Not to be too self-critical, but I think this is a pretty hacky way
> to do it. A nice way might be to put metadata in a name-value list
> attached to some appropriate structure, or perhaps have a standard
> function for probing metadata. For example:
>
> AVInputFormat {
> ...
> int (*metadata)(AVFormatContext *, char * name, void * value, int *
> size);
> ...
> }
>
> The semantics of the names would be defined by the individual format,
> but there would be a lot of commonality between codecs. The value would
> be an arbitrary structure, but well-defined for the given name. For
> example, it could be a null terminated string or a time structure, etc.
> "size" would be the size of the structure.
>
> The function would return metadata in the following priority order:
> * Relative to the most recently decoded frame
> * Relative to the container as a whole
>
> If there are multiple streams and we want to be stream specific, a
> metadata function could be added to AVCodec as well, or perhaps stream
> could be one of the parameters of the function.
>
> This approach could replace some of the metadata currently hard-coded
> into AVFormatContext, such as title, author, copyright, etc. For
> writing such values to a stream, a metadata function can be added to
> AVOutputFormat.
Agree totally. Except I would prefer that it not be connected with
codecs at all, just demuxers/streams.
Rich
More information about the ffmpeg-devel
mailing list