[FFmpeg-devel] [PATCH] c93: Do not needlessly use reget_buffer.
Reimar Döffinger
Reimar.Doeffinger at gmx.de
Sat Nov 5 19:07:05 CET 2011
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)) {
> av_log(avctx, AV_LOG_ERROR, "reget_buffer() failed\n");
> return -1;
> }
Forget it, the codec indeed needs both the previous and pre-previous
frames.
More information about the ffmpeg-devel
mailing list