summaryrefslogtreecommitdiffstats
path: root/gst/avi/gstavidemux.c
diff options
context:
space:
mode:
Diffstat (limited to 'gst/avi/gstavidemux.c')
-rw-r--r--gst/avi/gstavidemux.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c
index 40ad6f8a..bd354935 100644
--- a/gst/avi/gstavidemux.c
+++ b/gst/avi/gstavidemux.c
@@ -1057,6 +1057,14 @@ gst_avi_demux_parse_stream (GstElement * element, GstBuffer * buf)
gst_element_add_pad (GST_ELEMENT (avi), pad);
GST_LOG_OBJECT (element, "Added pad %s", gst_pad_get_name (pad));
+ if (codec_name) {
+ GstTagList *list = gst_tag_list_new ();
+
+ gst_tag_list_add (list, GST_TAG_MERGE_APPEND, tag_name, codec_name, NULL);
+ gst_element_found_tags_for_pad (GST_ELEMENT (avi), pad, list);
+ g_free (codec_name);
+ }
+
return TRUE;
fail:
@@ -1879,8 +1887,9 @@ gst_avi_demux_stream_header (GstAviDemux * avi)
sub = gst_buffer_create_sub (buf, 4, GST_BUFFER_SIZE (buf) - 4);
gst_riff_parse_info (GST_ELEMENT (avi), sub, &t);
- if (t)
- gst_tag_list_free (t);
+ if (t) {
+ gst_element_found_tags (GST_ELEMENT (avi), t);
+ }
gst_buffer_unref (buf);
}
/* gst_riff_read_chunk() has already advanced avi->offset */