[FFmpeg-cvslog] avcodec/mediacodecdec: add more trace logging of input/output buffers
Aman Gupta
git at videolan.org
Thu Mar 8 02:23:28 EET 2018
ffmpeg | branch: master | Aman Gupta <aman at tmm1.net> | Tue Mar 6 13:14:51 2018 -0800| [823a758543e2b1052cdcff22d02d396f4e0792f9] | committer: Aman Gupta
avcodec/mediacodecdec: add more trace logging of input/output buffers
Signed-off-by: Aman Gupta <aman at tmm1.net>
Signed-off-by: Matthieu Bouron <matthieu.bouron at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=823a758543e2b1052cdcff22d02d396f4e0792f9
---
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;
More information about the ffmpeg-cvslog
mailing list