Commit graph

3 commits

Author SHA1 Message Date
Edward Hervey
bc3baaa7c4 plugins/elements/gstmultiqueue.c: Remove previous hack of unsetting the flushing flag for the source pad instead of a...
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c:
(gst_multi_queue_src_activate_push), (gst_single_queue_new):
Remove previous hack of unsetting the flushing flag for the source pad
instead of activating it. Instead, fix the source pad activate function
so that it no longer depends on having a parent set or not.
2007-01-22 16:00:39 +00:00
Edward Hervey
4e07e925a5 plugins/elements/gstmultiqueue.c: When dynamically creating single queues, activate sinkpad before adding it.
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (gst_single_queue_new):
When dynamically creating single queues, activate sinkpad before adding
it.
We should be doing the same thing for the source pad, but we can't
since it would call a method which needs the parent to be set in order
to work propertly. Instead of activating the source pad, we just unset
the flushing flag, which is the minimal requirement for adding a pad
to an element in a state greater than READY.
2007-01-17 14:33:39 +00:00
Edward Hervey
fdb51251dd libs/gst/base/: New GstDataQueue object for threadsafe queueing. Most useful for elements that need some queueing fun...
Original commit message from CVS:
* libs/gst/base/Makefile.am:
* libs/gst/base/gstdataqueue.c: (gst_data_queue_get_type),
(gst_data_queue_base_init), (gst_data_queue_class_init),
(gst_data_queue_init), (gst_data_queue_new),
(gst_data_queue_cleanup), (gst_data_queue_finalize),
(gst_data_queue_locked_flush), (gst_data_queue_locked_is_empty),
(gst_data_queue_locked_is_full), (gst_data_queue_flush),
(gst_data_queue_is_empty), (gst_data_queue_is_full),
(gst_data_queue_set_flushing), (gst_data_queue_push),
(gst_data_queue_pop), (gst_data_queue_drop_head),
(gst_data_queue_set_property), (gst_data_queue_get_property):
* libs/gst/base/gstdataqueue.h:
New GstDataQueue object for threadsafe queueing. Most useful for
elements that need some queueing functionnality.
* docs/libs/gstreamer-libs-docs.sgml:
* docs/libs/gstreamer-libs-sections.txt:
Insert documentation for GstDataQueue
* plugins/elements/Makefile.am:
* plugins/elements/gstelements.c:
* plugins/elements/gstmultiqueue.c: (gst_multi_queue_base_init),
(gst_multi_queue_class_init), (gst_multi_queue_init),
(gst_multi_queue_finalize), (gst_multi_queue_set_property),
(gst_multi_queue_get_property), (gst_multi_queue_request_new_pad),
(gst_multi_queue_release_pad), (gst_single_queue_push_one),
(gst_multi_queue_item_destroy), (gst_multi_queue_item_new),
(gst_multi_queue_loop), (gst_multi_queue_chain),
(gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
(gst_multi_queue_getcaps), (gst_multi_queue_bufferalloc),
(gst_multi_queue_src_activate_push), (gst_multi_queue_acceptcaps),
(gst_multi_queue_src_event), (gst_multi_queue_src_query),
(wake_up_next_non_linked), (compute_next_non_linked),
(single_queue_overrun_cb), (single_queue_underrun_cb),
(single_queue_check_full), (gst_single_queue_new):
* plugins/elements/gstmultiqueue.h:
New multiqueue element, using GstDataQueue. Used for queuing multiple
streams.
Closes #344639 and #347785
2006-11-28 12:07:06 +00:00