diff options
author | Thiago Santos <thiago.sousa.santos@collabora.co.uk> | 2010-01-11 10:51:18 -0300 |
---|---|---|
committer | Thiago Santos <thiago.sousa.santos@collabora.co.uk> | 2010-01-11 11:01:10 -0300 |
commit | 7cfe3643dbfd4440cbb6c55f99b4abfda85f8082 (patch) | |
tree | f09ed845c95ec2b07c03da513461536fa78fd4c6 /gst/audioparsers/gstaacparse.c | |
parent | 5b8b363310cae46e63c6bebfae0bf24da9e1d92e (diff) | |
download | gstreamer-plugins-bad-7cfe3643dbfd4440cbb6c55f99b4abfda85f8082.tar.gz |
aacparse: Add stream-format to output caps
Adds stream-format field to output caps
Diffstat (limited to 'gst/audioparsers/gstaacparse.c')
-rw-r--r-- | gst/audioparsers/gstaacparse.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gst/audioparsers/gstaacparse.c b/gst/audioparsers/gstaacparse.c index e48f818c1..545c93724 100644 --- a/gst/audioparsers/gstaacparse.c +++ b/gst/audioparsers/gstaacparse.c @@ -210,6 +210,7 @@ gst_aacparse_set_src_caps (GstAacParse * aacparse, GstCaps * sink_caps) GstStructure *s; GstCaps *src_caps = NULL; gboolean res = FALSE; + const gchar *stream_format; GST_DEBUG_OBJECT (aacparse, "sink caps: %" GST_PTR_FORMAT, sink_caps); if (sink_caps) @@ -220,11 +221,27 @@ gst_aacparse_set_src_caps (GstAacParse * aacparse, GstCaps * sink_caps) gst_caps_set_simple (src_caps, "framed", G_TYPE_BOOLEAN, TRUE, "mpegversion", G_TYPE_INT, aacparse->mpegversion, NULL); + switch (aacparse->header_type) { + case DSPAAC_HEADER_NONE: + stream_format = "none"; + break; + case DSPAAC_HEADER_ADTS: + stream_format = "adts"; + break; + case DSPAAC_HEADER_ADIF: + stream_format = "adif"; + break; + default: + stream_format = NULL; + } + s = gst_caps_get_structure (src_caps, 0); if (!gst_structure_has_field (s, "rate") && aacparse->sample_rate > 0) gst_structure_set (s, "rate", G_TYPE_INT, aacparse->sample_rate, NULL); if (!gst_structure_has_field (s, "channels") && aacparse->channels > 0) gst_structure_set (s, "channels", G_TYPE_INT, aacparse->channels, NULL); + if (!gst_structure_has_field (s, "stream-format") && stream_format) + gst_structure_set (s, "stream-format", G_TYPE_STRING, stream_format, NULL); GST_DEBUG_OBJECT (aacparse, "setting src caps: %" GST_PTR_FORMAT, src_caps); |