From 823a758543e2b1052cdcff22d02d396f4e0792f9 Mon Sep 17 00:00:00 2001 From: Aman Gupta Date: Tue, 6 Mar 2018 13:14:51 -0800 Subject: [PATCH] avcodec/mediacodecdec: add more trace logging of input/output buffers Signed-off-by: Aman Gupta Signed-off-by: Matthieu Bouron --- libavcodec/mediacodec.c | 3 +++ libavcodec/mediacodecdec_common.c | 8 ++++++-- libavcodec/mediacodecdec_common.h | 1 + 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/libavcodec/mediacodec.c b/libavcodec/mediacodec.c index bf1b7477f1..3ddd303c97 100644 --- a/libavcodec/mediacodec.c +++ b/libavcodec/mediacodec.c @@ -92,6 +92,9 @@ int av_mediacodec_release_buffer(AVMediaCodecBuffer *buffer, int render) int released = atomic_fetch_add(&buffer->released, 1); if (!released && (ctx->delay_flush || buffer->serial == atomic_load(&ctx->serial))) { + av_log(ctx->avctx, AV_LOG_TRACE, + "Releasing output buffer %zd ts=%"PRId64" render=%d\n", + buffer->index, buffer->pts, render); return ff_AMediaCodec_releaseOutputBuffer(ctx->codec, buffer->index, render); } diff --git a/libavcodec/mediacodecdec_common.c b/libavcodec/mediacodecdec_common.c index 693524abd6..5064809cf6 100644 --- a/libavcodec/mediacodecdec_common.c +++ b/libavcodec/mediacodecdec_common.c @@ -452,6 +452,7 @@ int ff_mediacodec_dec_init(AVCodecContext *avctx, MediaCodecDecContext *s, AV_PIX_FMT_NONE, }; + s->avctx = avctx; atomic_init(&s->refcount, 1); atomic_init(&s->serial, 1); @@ -598,8 +599,8 @@ int ff_mediacodec_dec_send(AVCodecContext *avctx, MediaCodecDecContext *s, return AVERROR_EXTERNAL; } - av_log(avctx, AV_LOG_TRACE, "Queued input buffer %zd" - " size=%zd ts=%" PRIi64 "\n", index, size, pts); + av_log(avctx, AV_LOG_TRACE, + "Queued input buffer %zd size=%zd ts=%"PRIi64"\n", index, size, pts); s->draining = 1; break; @@ -619,6 +620,9 @@ int ff_mediacodec_dec_send(AVCodecContext *avctx, MediaCodecDecContext *s, av_log(avctx, AV_LOG_ERROR, "Failed to queue input buffer (status = %d)\n", status); return AVERROR_EXTERNAL; } + + av_log(avctx, AV_LOG_TRACE, + "Queued input buffer %zd size=%zd ts=%"PRIi64"\n", index, size, pts); } } diff --git a/libavcodec/mediacodecdec_common.h b/libavcodec/mediacodecdec_common.h index afb98ffed9..3fd2412a65 100644 --- a/libavcodec/mediacodecdec_common.h +++ b/libavcodec/mediacodecdec_common.h @@ -36,6 +36,7 @@ typedef struct MediaCodecDecContext { + AVCodecContext *avctx; atomic_int refcount; char *codec_name;