[FFmpeg-devel] [PATCH 3/3] Export metadata in the generic format.
Anton Khirnov
anton
Wed Oct 13 07:27:48 CEST 2010
On Tue, Oct 12, 2010 at 11:54:12PM +0200, Aurelien Jacobs wrote:
> On Tue, Oct 12, 2010 at 09:37:32PM +0200, Anton Khirnov wrote:
> > On Tue, Oct 12, 2010 at 09:12:31PM +0200, Michael Niedermayer wrote:
> > > On Tue, Oct 12, 2010 at 07:35:17PM +0200, Anton Khirnov wrote:
> > > > On Mon, Oct 11, 2010 at 10:33:21PM +0200, Michael Niedermayer wrote:
> > > > > On Tue, Oct 05, 2010 at 07:57:06PM +0200, Anton Khirnov wrote:
> > > > >
> > > > > thats a strange place for it one would expect it at the end of the header
> > > > > reading code
> > > > >
> > > > >
> > > > [...]
> > > > >
> > > > > same as asf odd place, there could be multipl info tags
> > > > > and the same applies to other changes too
> > > > >
> > > > Better now?
> > > >
> > > > I've also removed the conv tables from (de)muxers completely instead of
> > > > just ifdefing them, since NULL is also a perfeclty valid conv table.
> > > [...]
> > > > diff --git a/libavformat/metadata.c b/libavformat/metadata.c
> > > > index 8fc1771..713304b 100644
> > > > --- a/libavformat/metadata.c
> > > > +++ b/libavformat/metadata.c
> > > > @@ -140,8 +140,8 @@ void metadata_conv(AVMetadata **pm, const AVMetadataConv *d_conv,
> > > > *pm = dst;
> > > > }
> > > >
> > > > -void av_metadata_conv(AVFormatContext *ctx, const AVMetadataConv *d_conv,
> > > > - const AVMetadataConv *s_conv)
> > > > +void metadata_conv_ctx(AVFormatContext *ctx, const AVMetadataConv *d_conv,
> > >
> > > ff_ prefix
> > done
> >
> > i guess metadata_conv() should get a ff_ prefix too, i'll send a patch
> > for this later
>
> Sure ! Patch welcome.
>
> > [...]
> > @@ -147,7 +146,9 @@ typedef struct {
> > }AVMetadataTag;
> >
> > typedef struct AVMetadata AVMetadata;
> > +#if FF_API_OLD_METADATA
> > typedef struct AVMetadataConv AVMetadataConv;
> > +#endif
>
> AFAICT this typedef is still used with the new API (but don't need to be
> public anymore). Did you tried to compile with:
> --extra-cflags=-DFF_API_OLD_METADATA=0
fixed
>
> > [...]
> > @@ -152,3 +152,9 @@ void av_metadata_conv(AVFormatContext *ctx, const AVMetadataConv *d_conv,
> > for (i=0; i<ctx->nb_programs; i++)
> > metadata_conv(&ctx->programs[i]->metadata, d_conv, s_conv);
> > }
> > +
> > +void av_metadata_conv(AVFormatContext *ctx, const AVMetadataConv *d_conv,
> > + const AVMetadataConv *s_conv)
> > +{
> > + return;
> > +}
>
> Should be inside #if FF_API_OLD_METADATA.
>
fixed
> Overall, I have a slightly bad feeling about exporting normalized
> metadata tag instead of the native one, but I don't have any objective
> reason for this, just a feeling. So if everyone is happy with this, I
> won't object.
>
Well it seems to be the simplest solution. And in all the time the new
metadata API existed i didn't see any program use the native tags.
--
Anton Khirnov
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Export-metadata-in-the-generic-format.patch
Type: text/x-diff
Size: 17827 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20101013/b074b0eb/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20101013/b074b0eb/attachment.pgp>
More information about the ffmpeg-devel
mailing list