[FFmpeg-soc] [soc]: r284 - in libavfilter: . TODO avfilter.c avfilter.h
Bobby Bingham
uhmmmm at gmail.com
Sat Jun 30 18:16:02 CEST 2007
On Fri, 29 Jun 2007 23:11:10 +0200
Michael Niedermayer <michaelni at gmx.at> wrote:
> Hi
>
> On Fri, Jun 29, 2007 at 07:03:03PM +0200, koorogi wrote:
> > Author: koorogi
> > Date: Fri Jun 29 19:03:03 2007
> > New Revision: 284
> >
> > Log:
> > Initial stab at an API
>
> [...]
>
> > + ref->data[0] = pic->data[0];
> > + ref->data[1] = pic->data[1];
> > + ref->data[2] = pic->data[2];
> > + ref->data[3] = pic->data[3];
>
> memcpy()
fixed
>
>
> [...]
>
> > +/**
> > + * A reference to an AVFilterPic. Since filters can manipulate
> > the origin of
> > + * a picture to, for example, crop image without any memcpy, the
> > picture origin
> > + * and dimensions are per-reference properties.
> > + *
> > + * TODO: add pts, and anything necessary for frame reordering
> > + */
> > +typedef struct AVFilterPicRef
> > +{
> > + AVFilterPic *pic;
> > + uint8_t *data[4];
> > + int w, h;
> > +
> > + int perms; ///< permissions
> > +#define AV_PERM_READ 0x01 ///< can read from the buffer
> > +#define AV_PERM_WRITE 0x02 ///< can write to the buffer
> > +#define AV_PERM_PRESERVE 0x04 ///< nobody else can overwrite the
> > buffer +#define AV_PERM_REUSE 0x08 ///< can output the buffer
> > multiple times +} AVFilterPicRef;
>
> linesize should be per reference too, its usefull for frame<->field
> filters that is a interlaced frame as input can be converted to just
> one of the 2 fields by (data[*]+= linesize[*];) linesize[*]*=2;
> height/=2;
>
> also linesize *= -1; is nice for a vertical flip
fixed
>
> [...]
>
--
Bobby Bingham
このメールは再利用されたバイトでできている。
More information about the FFmpeg-soc
mailing list