summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-30 10:25:45 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-30 11:49:42 +0100
commit9ce0818c7d6fda2c77453e5566a1a4acb5a723df (patch)
tree70e6880d358a613bf03a33d098a7e138ed3372c9
parentba33f4fd7d605e4880b313064555c078e325defb (diff)
decodebin: Don't add a children to a decode group twice
This can happen if a demuxer does not provide fixed caps from the beginning but only sets them later.
-rw-r--r--gst/playback/gstdecodebin2.c2
-rw-r--r--win32/common/libgstvideo.def4
2 files changed, 5 insertions, 1 deletions
diff --git a/gst/playback/gstdecodebin2.c b/gst/playback/gstdecodebin2.c
index e69750472..672c168ac 100644
--- a/gst/playback/gstdecodebin2.c
+++ b/gst/playback/gstdecodebin2.c
@@ -1433,7 +1433,7 @@ analyze_new_pad (GstDecodeBin * dbin, GstElement * src, GstPad * pad,
* start a new chain for it */
CHAIN_MUTEX_LOCK (oldchain);
group = gst_decode_chain_get_current_group (chain);
- if (group) {
+ if (group && !g_list_find (group->children, chain)) {
chain = gst_decode_chain_new (dbin, group, pad);
group->children = g_list_prepend (group->children, chain);
}
diff --git a/win32/common/libgstvideo.def b/win32/common/libgstvideo.def
index 3a9f630bd..e0008ee97 100644
--- a/win32/common/libgstvideo.def
+++ b/win32/common/libgstvideo.def
@@ -1,5 +1,6 @@
EXPORTS
_gst_video_decoder_error
+ gst_buffer_add_video_gl_texture_upload_meta
gst_buffer_add_video_meta
gst_buffer_add_video_meta_full
gst_buffer_add_video_overlay_composition_meta
@@ -137,6 +138,9 @@ EXPORTS
gst_video_frame_map
gst_video_frame_map_id
gst_video_frame_unmap
+ gst_video_gl_texture_upload_meta_api_get_type
+ gst_video_gl_texture_upload_meta_get_info
+ gst_video_gl_texture_upload_meta_upload
gst_video_info_align
gst_video_info_convert
gst_video_info_from_caps