In graph2dot, print more specific audio information for audio links.
authorStefano Sabatini <stefano.sabatini-lala@poste.it>
Sun, 13 Feb 2011 21:50:47 +0000 (22:50 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 18 Feb 2011 18:52:25 +0000 (19:52 +0100)
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 009026efb1e3b3a5f05fd9934019a6300b25f364)

tools/graph2dot.c

index 5e0da9a..b67e597 100644 (file)
@@ -22,6 +22,7 @@
 
 #undef HAVE_AV_CONFIG_H
 #include "libavutil/pixdesc.h"
+#include "libavutil/audioconvert.h"
 #include "libavfilter/avfiltergraph.h"
 
 static void usage(void)
@@ -67,10 +68,18 @@ static void print_digraph(FILE *outfile, AVFilterGraph *graph)
                          dst_filter_ctx->filter->name);
 
                 fprintf(outfile, "\"%s\" -> \"%s\"", filter_ctx_label, dst_filter_ctx_label);
-                fprintf(outfile, " [ label= \"fmt:%s w:%d h:%d tb:%d/%d\" ];\n",
-                        link->type == AVMEDIA_TYPE_VIDEO ? av_pix_fmt_descriptors[link->format].name :
-                        link->type == AVMEDIA_TYPE_AUDIO ? av_get_sample_fmt_name(link->format) : "unknown",
-                        link->w, link->h, link->time_base.num, link->time_base.den);
+                if (link->type == AVMEDIA_TYPE_VIDEO) {
+                    fprintf(outfile, " [ label= \"fmt:%s w:%d h:%d tb:%d/%d\" ]",
+                            av_pix_fmt_descriptors[link->format].name,
+                            link->w, link->h, link->time_base.num, link->time_base.den);
+                } else if (link->type == AVMEDIA_TYPE_AUDIO) {
+                    char buf[255];
+                    av_get_channel_layout_string(buf, sizeof(buf), -1, link->channel_layout);
+                    fprintf(outfile, " [ label= \"fmt:%s sr:%"PRId64" cl:%s\" ]",
+                            av_get_sample_fmt_name(link->format),
+                            link->sample_rate, buf);
+                }
+                fprintf(outfile, ";\n");
             }
         }
     }