summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/ffprobe.xsd2
-rw-r--r--ffprobe.c8
2 files changed, 10 insertions, 0 deletions
diff --git a/doc/ffprobe.xsd b/doc/ffprobe.xsd
index 3a4a8cce2b..13c0d02ae3 100644
--- a/doc/ffprobe.xsd
+++ b/doc/ffprobe.xsd
@@ -62,6 +62,8 @@
<!-- audio attributes -->
<xsd:attribute name="sample_fmt" type="xsd:string"/>
<xsd:attribute name="nb_samples" type="xsd:long" />
+ <xsd:attribute name="channels" type="xsd:int" />
+ <xsd:attribute name="channel_layout" type="xsd:string"/>
<!-- video attributes -->
<xsd:attribute name="width" type="xsd:long" />
diff --git a/ffprobe.c b/ffprobe.c
index e14de3be8a..f81bc3b788 100644
--- a/ffprobe.c
+++ b/ffprobe.c
@@ -1647,6 +1647,14 @@ static void show_frame(WriterContext *w, AVFrame *frame, AVStream *stream,
if (s) print_str ("sample_fmt", s);
else print_str_opt("sample_fmt", "unknown");
print_int("nb_samples", frame->nb_samples);
+ print_int("channels", av_frame_get_channels(frame));
+ if (av_frame_get_channel_layout(frame)) {
+ av_bprint_clear(&pbuf);
+ av_bprint_channel_layout(&pbuf, av_frame_get_channels(frame),
+ av_frame_get_channel_layout(frame));
+ print_str ("channel_layout", pbuf.str);
+ } else
+ print_str_opt("channel_layout", "unknown");
break;
}
show_tags(av_frame_get_metadata(frame));