[FFmpeg-devel] [PATCH] c93: Do not needlessly use reget_buffer.
Reimar Döffinger
Reimar.Doeffinger at gmx.de
Sat Nov 5 19:05:16 CET 2011
On Sat, Nov 05, 2011 at 06:27:27PM +0100, Michael Niedermayer wrote:
> On Sat, Nov 05, 2011 at 04:19:27PM +0100, Reimar Döffinger wrote:
> > get_buffer and release_buffer is more suitable for how this codec works
> > and can result in better performance in some playback situations.
> >
> > Signed-off-by: Reimar Döffinger <Reimar.Doeffinger at gmx.de>
> > ---
> > libavcodec/c93.c | 5 ++++-
> > 1 files changed, 4 insertions(+), 1 deletions(-)
> >
> > diff --git a/libavcodec/c93.c b/libavcodec/c93.c
> > index 1f4ed1f..2a36ed9 100644
> > --- a/libavcodec/c93.c
> > +++ b/libavcodec/c93.c
> > @@ -130,10 +130,13 @@ static int decode_frame(AVCodecContext *avctx, void *data,
> >
> > c93->currentpic ^= 1;
> >
> > + if (newpic->data[0])
> > + avctx->release_buffer(avctx, newpic);
> > +
> > newpic->reference = 1;
> > newpic->buffer_hints = FF_BUFFER_HINTS_VALID | FF_BUFFER_HINTS_PRESERVE |
> > FF_BUFFER_HINTS_REUSABLE | FF_BUFFER_HINTS_READABLE;
>
> > - if (avctx->reget_buffer(avctx, newpic)) {
> > + if (avctx->get_buffer(avctx, newpic)) {
>
> doesnt this break C93_NOOP ?
Looks like it might. But it seems strange that NOOP would be supposed to use
data from _two_ frames previously.
I guess I'll have to test a bit, unless someone knows more about the
format.
More information about the ffmpeg-devel
mailing list