[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