aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDerek Buitenhuis <derek.buitenhuis@gmail.com>2012-09-18 16:09:46 -0400
committerDerek Buitenhuis <derek.buitenhuis@gmail.com>2012-09-18 16:38:47 -0400
commit8e2a950b297b97605e97c454363f2f8555b004f0 (patch)
tree768b4ed3490d27ec94414e5b3a99ec620f3d223c
parentb89c16e73eef30b7ce95bd455d9b419b383d9409 (diff)
downloadffmpeg-8e2a950b297b97605e97c454363f2f8555b004f0.tar.gz
ffprobe: Add a few common disposition cases
This info is crucial in knowing which stream to pick in an automated setup. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
-rw-r--r--doc/ffprobe.xsd3
-rw-r--r--ffprobe.c6
2 files changed, 9 insertions, 0 deletions
diff --git a/doc/ffprobe.xsd b/doc/ffprobe.xsd
index c9213debb3..b4887aed37 100644
--- a/doc/ffprobe.xsd
+++ b/doc/ffprobe.xsd
@@ -100,6 +100,8 @@
<xsd:attribute name="codec_tag" type="xsd:string" use="required"/>
<xsd:attribute name="codec_tag_string" type="xsd:string" use="required"/>
<xsd:attribute name="extradata" type="xsd:string" />
+ <xsd:attribute name="default" type="xsd:int" use="required"/>
+ <xsd:attribute name="forced" type="xsd:int" use="required"/>
<!-- video attributes -->
<xsd:attribute name="width" type="xsd:int"/>
@@ -110,6 +112,7 @@
<xsd:attribute name="pix_fmt" type="xsd:string"/>
<xsd:attribute name="level" type="xsd:int"/>
<xsd:attribute name="timecode" type="xsd:string"/>
+ <xsd:attribute name="attached_pic" type="xsd:int"/>
<!-- audio attributes -->
<xsd:attribute name="sample_fmt" type="xsd:string"/>
diff --git a/ffprobe.c b/ffprobe.c
index a0aee8352d..771c11d43c 100644
--- a/ffprobe.c
+++ b/ffprobe.c
@@ -1665,6 +1665,10 @@ static void show_stream(WriterContext *w, AVFormatContext *fmt_ctx, int stream_i
print_str("codec_tag_string", val_str);
print_fmt("codec_tag", "0x%04x", dec_ctx->codec_tag);
+ /* Print useful disposition */
+ print_int("default", !!(stream->disposition & AV_DISPOSITION_DEFAULT));
+ print_int("forced", !!(stream->disposition & AV_DISPOSITION_FORCED));
+
switch (dec_ctx->codec_type) {
case AVMEDIA_TYPE_VIDEO:
print_int("width", dec_ctx->width);
@@ -1693,6 +1697,8 @@ static void show_stream(WriterContext *w, AVFormatContext *fmt_ctx, int stream_i
} else {
print_str_opt("timecode", "N/A");
}
+ print_int("attached_pic",
+ !!(stream->disposition & AV_DISPOSITION_ATTACHED_PIC));
break;
case AVMEDIA_TYPE_AUDIO: