[FFmpeg-devel] [PATCH v2 1/3] avfilter/avfilter: Don't use AVFrame.channel_layout

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Mon Sep 12 19:05:27 EEST 2022


Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 libavfilter/avfilter.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index 965f5d0f63..bde41637dd 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -21,6 +21,7 @@
 
 #include "libavutil/avassert.h"
 #include "libavutil/avstring.h"
+#include "libavutil/bprint.h"
 #include "libavutil/buffer.h"
 #include "libavutil/channel_layout.h"
 #include "libavutil/common.h"
@@ -45,6 +46,7 @@
 
 static void tlog_ref(void *ctx, AVFrame *ref, int end)
 {
+#ifdef TRACE
     ff_tlog(ctx,
             "ref[%p buf:%p data:%p linesize[%d, %d, %d, %d] pts:%"PRId64" pos:%"PRId64,
             ref, ref->buf, ref->data[0],
@@ -61,13 +63,19 @@ static void tlog_ref(void *ctx, AVFrame *ref, int end)
                 av_get_picture_type_char(ref->pict_type));
     }
     if (ref->nb_samples) {
-        ff_tlog(ctx, " cl:%"PRId64"d n:%d r:%d",
-                ref->channel_layout,
+        AVBPrint bprint;
+
+        av_bprint_init(&bprint, 1, AV_BPRINT_SIZE_UNLIMITED);
+        av_channel_layout_describe_bprint(&ref->ch_layout, &bprint);
+        ff_tlog(ctx, " cl:%s n:%d r:%d",
+                bprint.str,
                 ref->nb_samples,
                 ref->sample_rate);
+        av_bprint_finalize(&bprint, NULL);
     }
 
     ff_tlog(ctx, "]%s", end ? "\n" : "");
+#endif
 }
 
 void ff_command_queue_pop(AVFilterContext *filter)
-- 
2.34.1



More information about the ffmpeg-devel mailing list