[FFmpeg-cvslog] r17686 - trunk/libavformat/r3d.c
Aurelien Jacobs
aurel
Sun Mar 1 23:48:08 CET 2009
Baptiste Coudurier wrote:
> Hi,
>
> On 3/1/2009 7:28 AM, aurel wrote:
> > Author: aurel
> > Date: Sun Mar 1 16:28:56 2009
> > New Revision: 17686
> >
> > Log:
> > use new metadata API in r3d demuxer
> >
> > Modified:
> > trunk/libavformat/r3d.c
> >
> > Modified: trunk/libavformat/r3d.c
> > ==============================================================================
> > --- trunk/libavformat/r3d.c Sun Mar 1 15:56:27 2009 (r17685)
> > +++ trunk/libavformat/r3d.c Sun Mar 1 16:28:56 2009 (r17686)
> > @@ -51,6 +51,7 @@ static int read_atom(AVFormatContext *s,
> > static int r3d_read_red1(AVFormatContext *s)
> > {
> > AVStream *st = av_new_stream(s, 0);
> > + char filename[258];
> > int tmp, tmp2;
> >
> > if (!st)
> > @@ -92,12 +93,11 @@ static int r3d_read_red1(AVFormatContext
> > av_set_pts_info(ast, 32, 1, st->time_base.den);
> > }
> >
> > - st->filename = av_mallocz(258);
> > - if (!st->filename)
> > - return AVERROR(ENOMEM);
> > - get_buffer(s->pb, st->filename, 257);
> > + get_buffer(s->pb, filename, 257);
> > + filename[sizeof(filename)-1] = 0;
> > + av_metadata_set(&st->metadata, "filename", filename);
> >
> > - dprintf(s, "filename %s\n", st->filename);
> > + dprintf(s, "filename %s\n", filename);
> > dprintf(s, "resolution %dx%d\n", st->codec->width, st->codec->height);
> > dprintf(s, "timescale %d\n", st->time_base.den);
> > dprintf(s, "frame rate %d/%d\n",
>
> Wouldn't it be more convenient to be able to av_metadata_set using
> uint8_t *, avoiding memcpy/strdup ?
Could you be more specific ? I don't get what you mean. This is exactly
how av_metadata_set() works right now.
Or maybe you mean using av_metadata_set() with a ByteIOContext* ?
And if so, should it read a fixed amount of bytes (eventually adding
trailing 0) or should it read until it find a 0 ? In the last case,
it wouldn't avoid a memcpy. And in the first case, I think it would
anyway handle only a very limited subset of the av_metadata_set()
use case.
Aurel
More information about the ffmpeg-cvslog
mailing list