Commit graph

2493 commits

Author SHA1 Message Date
Ronald S. Bultje
6af3cb71c8 gst/gstelement.c: Use g_error_new_literal because error text may have percentage signs in it. Fixes #160019.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/gstelement.c: (gst_element_error_full):
Use g_error_new_literal because error text may have
percentage signs in it. Fixes #160019.
2004-12-01 09:44:22 +00:00
Benjamin Otte
802e18724d gst/elements/gstbufferstore.c: don't try to make subbuffers bigger than they can be. (fixes #159970)
Original commit message from CVS:
* gst/elements/gstbufferstore.c:
(gst_buffer_store_add_buffer_func):
don't try to make subbuffers bigger than they can be. (fixes
#159970)
2004-11-30 23:45:36 +00:00
Ronald S. Bultje
8d61d9045d gst/: Deprecate _type_is_fixed, use _value_is_fixed instead, since the fixedness depends on the content.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_is_fixed_foreach):
* gst/gstpad.c: (_gst_pad_default_fixate_value),
(_gst_pad_default_fixate_foreach):
* gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
* gst/gstvalue.h:
Deprecate _type_is_fixed, use _value_is_fixed instead, since
in some cases (arrays), the fixedness depends on the content.
* gst/gstqueue.c: (gst_queue_handle_src_query):
Check for availability before doing something.
2004-11-29 17:02:09 +00:00
Benjamin Otte
a9bad8aa6e gst/gstelement.c: simplify
Original commit message from CVS:
* gst/gstelement.c: (gst_element_negotiate_pads):
simplify
* gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
(gst_value_serialize_string), (gst_value_deserialize_string):
add unwrapping of previously wrapped strings. Fix bug in wrapping
while at it.
* testsuite/caps/value_serialize.c: (test1),
(test_string_serialization), (test_string_deserialization), (main):
add tests for string (de)serialization
2004-11-28 18:02:48 +00:00
Wim Taymans
12a0211728 gst/gstthread.c: Ref the thread object in the GThread mainloop. Break out of the thread mainloop if it holds the last...
Original commit message from CVS:
* gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
(gst_thread_child_state_change), (gst_thread_main_loop):
Ref the thread object in the GThread mainloop. Break out of the
thread mainloop if it holds the last ref. This properly exits
the threads when disposing the thread from its own context. It
also avoids possible deadlocks in the dispose function.
2004-11-25 12:46:50 +00:00
Martin Soto
6c376ecbf5 gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when it is necessary to wait.
Original commit message from CVS:
2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
it is necessary to wait.
2004-11-24 18:54:35 +00:00
Martin Soto
709bfe8a23 gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
Original commit message from CVS:
2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
(gst_queue_link_src): Allow for renegotiating the caps of the sink
pad. The queue will now wait until it is empty and forward the new
caps to the source.
* gst/gstbin.c (gst_bin_set_element_sched)
(gst_bin_unset_element_sched): Make sure that all elements and
links are registered and unregistered with the scheduler exactly
once. This elaborates on a fix by Benjamin Otte, but
guarantees that decoupled elements are also registered.
2004-11-22 23:50:37 +00:00
Thomas Vander Stichele
4a2df81cce docs/manual/quotes.xml: add a quote
Original commit message from CVS:
* docs/manual/quotes.xml:
add a quote
* configure.ac:
* gst/gst.c:
* gst/gstinfo.c:
add LIBDIR and move init message higher up so it's at the start
2004-11-11 15:40:00 +00:00
Christian Schaller
4f8aa88b14 fix build after commit of fair :)
Original commit message from CVS:
fix build after commit of fair :)
2004-11-08 18:51:12 +00:00
Christophe Fergeau
93f541efef gst/elements/: Subtract size of internally stored data from position queries.
Original commit message from CVS:
* gst/elements/gstfakesink.c: (gst_fakesink_class_init):
* gst/elements/gstidentity.c: (gst_identity_class_init):
Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
<teuf@gnome.org> (#157263).
* gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
(gst_type_find_handle_src_query):
Subtract size of internally stored data from position queries.
2004-11-08 15:45:31 +00:00
Martin Soto
7bf7d80452 gst/gstpad.c (gst_pad_collectv): Fix the return line.
Original commit message from CVS:
2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/gstpad.c (gst_pad_collectv): Fix the return line.
(gst_pad_collect_valist): Fix gst_pad_collect_array
invocation. Apparently this functions were never tested.
2004-11-07 20:10:18 +00:00
Martin Soto
727725d959 gst/schedulers/: New cothread based scheduler: Fair scheduler.
Original commit message from CVS:
2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/schedulers/fairscheduler.c:
* gst/schedulers/faircothreads.c:
* gst/schedulers/faircothreads.h:
New cothread based scheduler: Fair scheduler.
* gst/schedulers/gthread-cothreads.h:
Add the standard #if around the whole file.
Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
compilation of the functions defined in this file. This is
necessary to be able to use this file as a normal header.
* gst/schedulers/Makefile.am: Add compiling support for fair
scheduler.
* docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
scheduler cothreads layer from documentation generation.
2004-11-07 19:31:39 +00:00
Ronald S. Bultje
a358d1c135 gst/autoplug/gstspideridentity.c: Don't crash if that function is not implemented.
Original commit message from CVS:
* gst/autoplug/gstspideridentity.c:
(gst_spider_identity_sink_loop_type_finding):
Don't crash if that function is not implemented.
2004-11-07 17:16:31 +00:00
Ronald S. Bultje
79b77446d8 docs/pwg/: Typo fixes.
Original commit message from CVS:
* docs/pwg/advanced-scheduling.xml:
* docs/pwg/advanced-tagging.xml:
* docs/pwg/advanced-types.xml:
* docs/pwg/building-boiler.xml:
* docs/pwg/building-chainfn.xml:
* docs/pwg/building-signals.xml:
* docs/pwg/building-state.xml:
* docs/pwg/building-testapp.xml:
* docs/pwg/intro-basics.xml:
* docs/pwg/other-manager.xml:
* docs/pwg/other-source.xml:
Typo fixes.
* docs/pwg/other-manager.xml:
Add some first content. No example code yet.
* gst/elements/gstfilesink.c: (gst_filesink_handle_event):
Remove double newlines.
2004-11-06 10:28:07 +00:00
Wim Taymans
df7f3e4161 Added testcase for schduler segfault.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (add_to_group),
(remove_from_group), (normalize_group), (group_migrate_connected),
(gst_opt_scheduler_iterate):
* testsuite/schedulers/.cvsignore:
* testsuite/schedulers/Makefile.am:
* testsuite/schedulers/queue_link.c: (main):
Added testcase for schduler segfault.
Fix scheduler segfault when removing a decoupled
entry point as the last element from a group.
2004-11-04 11:03:48 +00:00
Christophe Fergeau
a1892cc3a3 gst/gstmarshal.list: add missing marshaller, fixes build
Original commit message from CVS:
2004-11-03  Christophe Fergeau  <teuf@gnome.org>

* gst/gstmarshal.list: add missing marshaller, fixes build
2004-11-03 21:01:44 +00:00
Christophe Fergeau
074dc0340c gst/elements/: more
Original commit message from CVS:
2004-11-03  Christophe Fergeau  <teuf@gnome.org>

* gst/elements/gstfakesink.c: (gst_fakesink_class_init):
* gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
POINTER=>BOXED changes to marshal GstBuffers
2004-11-03 18:01:29 +00:00
Christophe Fergeau
e3b6aa4916 gst/elements/gstidentity.c: GstBuffer is a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
Original commit message from CVS:
2004-11-03  Christophe Fergeau  <teuf@gnome.org>

* gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is
a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
2004-11-03 17:45:02 +00:00
Stefan Kost
e56b667c00 added some more docs, removed two obsolete defines
Original commit message from CVS:
added some more docs, removed two obsolete defines
2004-11-03 09:21:01 +00:00
Wim Taymans
6d42edd550 gst/: Aplied part of patch #157127: Cleanup of issues reported by sparse.
Original commit message from CVS:
reviewed by: Wim Taymans, Ronald Bultje.

* gst/cothreads.c: (cothread_create):
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
(gst_bin_child_state_change_func):
* gst/gstbuffer.c: (gst_buffer_span):
* gst/gstelement.c: (gst_element_get_index),
(gst_element_get_event_masks), (gst_element_get_query_types),
(gst_element_get_formats):
* gst/gsterror.c: (_gst_core_errors_init),
(_gst_library_errors_init), (_gst_resource_errors_init),
(_gst_stream_errors_init):
* gst/gstobject.c: (gst_object_default_deep_notify):
* gst/gstpad.c: (gst_pad_get_event_masks),
(gst_pad_get_internal_links_default):
* gst/gstplugin.c: (gst_plugin_register_func),
(gst_plugin_get_module):
* gst/gststructure.c: (gst_structure_get_string),
(gst_structure_get_abbrs), (gst_structure_from_abbr),
(gst_structure_to_abbr):
* gst/gstutils.c: (gst_print_element_args):
* gst/schedulers/gstoptimalscheduler.c: (add_to_group),
(setup_group_scheduler), (gst_opt_scheduler_iterate):
Aplied part of patch #157127: Cleanup of issues reported by
sparse.
Also do not try to use cothreads when there is no cothread
context yet.
2004-11-02 15:02:12 +00:00
Wim Taymans
6a110e062f gst/schedulers/gstoptimalscheduler.c: Aplied patch #154061. Running a pipeline in which an element calls GST_ELEMENT_...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (add_to_group),
(gst_opt_scheduler_iterate):
Aplied patch #154061. Running a pipeline in which an element
calls GST_ELEMENT_ERROR in the chain function, the opt
scheduler doesn't unref the chain so it never gets freed.
2004-11-02 13:08:41 +00:00
Wim Taymans
824c331e32 gst/gststructure.c: Remove that ugly if-then thing in the code that converts between strings and types.
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_get_abbrs),
(gst_structure_from_abbr), (gst_structure_to_abbr):
Remove that ugly if-then thing in the code that converts
between strings and types.
2004-11-02 12:39:27 +00:00
Wim Taymans
3207eb2f42 gst/gstscheduler.c: Aplied clock distribution patch, this should fix bug #148787.
Original commit message from CVS:
* gst/gstscheduler.c: (gst_scheduler_add_element),
(gst_scheduler_remove_element), (gst_scheduler_state_transition):
Aplied clock distribution patch, this should fix bug
#148787.
2004-11-02 12:33:24 +00:00
Wim Taymans
3cf9fdfcb7 Since parse can do 'element name=a:b' make 'a:b.' work as well.
Original commit message from CVS:
* gst/parse/parse.l:
* testsuite/parse/parse1.c: (main):
Since parse can do 'element name=a:b' make 'a:b.' work as
well.
Added testcase to verify fix.
2004-10-19 09:38:20 +00:00
Stefan Kost
e719825726 more api documentation better error signaling and logging
Original commit message from CVS:
more api documentation
better error signaling and logging
2004-10-13 13:03:25 +00:00
Ronald S. Bultje
c36f2f830a gst/gstqueue.c: Subtract current queue contents from position queries.
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
Subtract current queue contents from position queries.
2004-10-11 13:14:03 +00:00
Johan Dahlin
970da8b0f9 gst/gsturi.c (gst_uri_get_location): unescape string escape string.
Original commit message from CVS:
* gst/gsturi.c (gst_uri_get_location): unescape string
(gst_uri_construct): escape string.
2004-10-11 09:44:05 +00:00
Benjamin Otte
bedb0bef2b gst/gstpad.c: allow renegotiation of unconnected pads (as inside spider). Simply return OK if unconnected - mimic try...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
(gst_pad_try_set_caps_nonfixed):
allow renegotiation of unconnected pads (as inside spider). Simply
return OK if unconnected - mimic try_set_caps there.
2004-10-11 05:23:40 +00:00
Ronald S. Bultje
1a8ff9d37b gst/gstbin.c: Add missing break.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_sync_children_state):
Add missing break.
2004-10-09 13:11:46 +00:00
Zaheer Abbas Merali
852fb1eaf2 gst/elements/gstfakesrc.c: Set element to EOS before sending EOS event
Original commit message from CVS:
2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* gst/elements/gstfakesrc.c: (gst_fakesrc_get):
Set element to EOS before sending EOS event
2004-10-09 12:43:26 +00:00
Wim Taymans
b2db2cd1c8 gst/elements/gsttypefindelement.c: Handle EOS events when doing the transition from typefind to data passing. This sh...
Original commit message from CVS:
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_handle_event):
Handle EOS events when doing the transition from
typefind to data passing. This should fix the
infinite loops in short files.
2004-10-08 09:36:50 +00:00
Wim Taymans
625722ecdc gst/gstthread.c: Make sure no iteration happens while performing the state change as it could mess up the internal co...
Original commit message from CVS:
* gst/gstthread.c: (gst_thread_change_state),
(gst_thread_child_state_change):
Make sure no iteration happens while performing
the state change as it could mess up the internal
consistency of the thread state.
2004-10-07 18:34:57 +00:00
Wim Taymans
c43a7670f0 gst/gstthread.c: Do not try to grab the iterate lock in the state change method when we are in the same thread as the...
Original commit message from CVS:
* gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
(gst_thread_change_state), (gst_thread_child_state_change):
Do not try to grab the iterate lock in the state change method
when we are in the same thread as the iterate or else we
could deadlock. Some other cleanups.
2004-10-07 17:41:40 +00:00
Wim Taymans
87835a9628 gst/elements/gsttypefindelement.c: Push the buffer store instead of clearing it in case that the stream is not seekable.
Original commit message from CVS:
* gst/elements/gsttypefindelement.c: (stop_typefinding):
Push the buffer store instead of clearing it in case that
the stream is not seekable.
2004-10-06 11:59:01 +00:00
Wim Taymans
031d317274 gst/gstthread.c: Lock the iteration and the state change so that automatic negotiation and fixation does not happen a...
Original commit message from CVS:
* gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
(gst_thread_main_loop):
Lock the iteration and the state change so that automatic
negotiation and fixation does not happen at the same time
as the in stream negotiation.
2004-10-06 09:42:27 +00:00
Thomas Vander Stichele
c06e12f42f configure.ac
Original commit message from CVS:
configure.ac
2004-10-05 08:52:37 +00:00
Thomas Vander Stichele
e45b8c2be6 fix typefind discont handling, #153657
Original commit message from CVS:
fix typefind discont handling, #153657
2004-09-26 17:48:05 +00:00
Thomas Vander Stichele
3cd8266b12 revert preferred caps
Original commit message from CVS:
revert preferred caps
2004-09-26 17:35:08 +00:00
Ronald S. Bultje
bd2d8d6e6a gst/gstelement.c: Well, actually, I was about to remove this insane assert when
Original commit message from CVS:
* gst/gstelement.c: (gst_element_change_state):
Well, actually, I was about to remove this insane assert when
I noticed Wim already did that. A warning is nice so we can
fix actual ugs (using --g-fatal-warnings and backtraces), so
I added that instead.
2004-09-06 18:47:14 +00:00
Wim Taymans
5905655ead Reworked the GstThread implementation, make more operations threadsafe and more reliable.
Original commit message from CVS:
* gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
(gst_thread_change_state), (gst_thread_child_state_change),
(gst_thread_main_loop):
* gst/gstthread.h:
* testsuite/threads/Makefile.am:
* testsuite/threads/queue.c:
* testsuite/threads/thread.c: (construct_pipeline), (change_state),
(main):
* testsuite/threads/threadc.c: (construct_pipeline):
* testsuite/threads/threadd.c: (main):
* testsuite/threads/threade.c: (main):
* testsuite/threads/threadf.c:
Reworked the GstThread implementation, make more operations
threadsafe and more reliable.
Moved testcases from the failing to the working list.
2004-09-06 15:57:11 +00:00
Wim Taymans
6e89c000bb gst/gstelement.c: Added extra refcounting around various places.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
(gst_element_threadsafe_properties_post_run),
(gst_element_set_state), (gst_element_change_state):
Added extra refcounting around various places.
2004-09-06 15:14:01 +00:00
Wim Taymans
c23fde0c51 gst/gstpad.c: Fix debug info.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_link_call_link_functions):
Fix debug info.
2004-09-06 15:02:48 +00:00
Wim Taymans
6ff129d07d gst/schedulers/gstoptimalscheduler.c: Some more debug info.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (add_to_group),
(remove_from_group):
Some more debug info.
2004-09-06 14:55:57 +00:00
Wim Taymans
5d2684999f gst/elements/: Added datarate properties to limit the datarate.
Original commit message from CVS:
* gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
(gst_fakesrc_init), (gst_fakesrc_set_clock),
(gst_fakesrc_set_property), (gst_fakesrc_get_property),
(gst_fakesrc_get), (gst_fakesrc_change_state):
* gst/elements/gstfakesrc.h:
* gst/elements/gstidentity.c: (gst_identity_class_init),
(gst_identity_init), (gst_identity_chain),
(gst_identity_set_property), (gst_identity_get_property),
(gst_identity_change_state):
* gst/elements/gstidentity.h:
Added datarate properties to limit the datarate.
2004-09-03 11:40:35 +00:00
Stefan Kost
b78ef6baa1 added better error reporting for plugin loading
Original commit message from CVS:
added better error reporting for plugin loading
2004-09-02 16:39:14 +00:00
Stefan Kost
b32ebdaabe added documentation to many items moved the GST_TYPE_XXX one to the Standart section, as they do not need docs
Original commit message from CVS:
added documentation to many items
moved the GST_TYPE_XXX one to the Standart section, as they do not need docs
2004-09-02 14:24:22 +00:00
Stefan Kost
978c272fa3 moved docs to sgml files added first batch of docs provided by ronald
Original commit message from CVS:
moved docs to sgml files
added first batch of docs provided by ronald
2004-08-31 17:14:03 +00:00
Stefan Kost
e5626fe81a andanother type fix of mine :-(
Original commit message from CVS:
andanother type fix of mine :-(
2004-08-31 16:15:38 +00:00
Stefan Kost
8aeee68ea1 added docs for GST_PLUGIN_DEFINE and GST_PLUGIN_DEFINE_STATIC
Original commit message from CVS:
added docs for GST_PLUGIN_DEFINE and GST_PLUGIN_DEFINE_STATIC
2004-08-31 14:40:34 +00:00
Benjamin Otte
ef46525f83 gst/autoplug/gstspider.c: don't set a rank. We don't want to autoplug by inserting spiders.
Original commit message from CVS:
* gst/autoplug/gstspider.c: (plugin_init):
don't set a rank. We don't want to autoplug by inserting spiders.
2004-08-25 14:25:55 +00:00
Benjamin Otte
fb9387cb91 gst/autoplug/gstspider.c: add a template for spider's sink
Original commit message from CVS:
* gst/autoplug/gstspider.c: (gst_spider_class_init),
(gst_spider_identity_plug):
add a template for spider's sink
* gst/gst.c: (gst_register_core_elements):
queue's rank should be NULL, we don't want spider to add it.
2004-08-22 13:00:46 +00:00
David Schleef
aa6049eb61 docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
Original commit message from CVS:
* docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
* docs/libs/Makefile.am: same
* docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
* docs/random/ds/0.9-planning: random additions
* docs/random/ds/0.9-suggested-changes: same
* gst/gstxml.h: remove vestigal GstXMLNs definition
Preferred caps: (#147789)
* docs/gst/gstreamer-sections.txt: Add symbols
* docs/gst/tmpl/gstcaps.sgml: Add symbols
* gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
(gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
(gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
(gst_caps_get_preferred), (gst_caps_set_preferred),
(gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
(gst_caps_use_preferred): Handle caps preferences
* gst/gstcaps.h: Add caps preferences
* gst/gstpad.c: (gst_pad_link_get_preferred),
(gst_pad_link_fixate), (gst_pad_link_call_link_functions),
(gst_pad_renegotiate), (gst_pad_guess_preferred),
(gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
negotiation.
2004-08-18 21:46:55 +00:00
Benjamin Otte
7fb1f1901f gst/: s/gst_pad_new/&_from_template/ register pad templates in the base_init function add static pad template definit...
Original commit message from CVS:
* gst/autoplug/gstspideridentity.c:
(gst_spider_identity_request_new_pad):
* gst/elements/gstaggregator.c: (gst_aggregator_base_init),
(gst_aggregator_init):
* gst/elements/gstfakesink.c: (gst_fakesink_base_init),
(gst_fakesink_init):
* gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
(gst_fakesrc_init):
* gst/elements/gstfdsink.c: (gst_fdsink_base_init),
(gst_fdsink_init):
* gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
* gst/elements/gstfilesink.c: (gst_filesink_base_init),
(gst_filesink_init):
* gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
(gst_filesrc_init):
* gst/elements/gstidentity.c: (gst_identity_base_init),
(gst_identity_init):
* gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
(gst_multifilesrc_init):
* gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
(gst_pipefilter_init):
* gst/elements/gststatistics.c: (gst_statistics_base_init),
(gst_statistics_init):
* gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
* gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
s/gst_pad_new/&_from_template/
register pad templates in the base_init function
add static pad template definitions
2004-08-17 14:11:23 +00:00
Thomas Vander Stichele
38ca60f6fe fix memleaks - #150001
Original commit message from CVS:
fix memleaks - #150001
2004-08-17 09:16:42 +00:00
Thomas Vander Stichele
cfcd3502a9 fix for #150242
Original commit message from CVS:
fix for #150242
2004-08-16 10:35:36 +00:00
Thomas Vander Stichele
2797299404 small fixes before release
Original commit message from CVS:
small fixes before release
2004-08-13 13:31:22 +00:00
Thomas Vander Stichele
9d89e287ff add flag, reorder GstBuffer docs
Original commit message from CVS:
add flag, reorder GstBuffer docs
2004-08-12 10:56:40 +00:00
Benjamin Otte
3d53a08118 gst/elements/gstfilesrc.c: work with non-regular files that can be mmapped (like /dev/zero)
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
work with non-regular files that can be mmapped (like /dev/zero)
* gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
get rid of typefinds that require a seek when we can't seek instead
of trying them over and over again
* tools/gst-launch.c: (idle_func), (error_cb), (main):
return non-zero failure value when the pipeline was interrupted or
an error occurred
2004-08-12 09:12:13 +00:00
Steve Lhomme
6730b41a8c fix a possible memory leak under Windows
Original commit message from CVS:
fix a possible memory leak under Windows
2004-08-11 18:56:39 +00:00
Benjamin Otte
6e15cb6ce9 add gst_scheduler_register shortcut similar to gst_element_register
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstscheduler.c: (gst_scheduler_register):
* gst/gstscheduler.h:
add gst_scheduler_register shortcut similar to gst_element_register
* gst/schedulers/entryscheduler.c: (plugin_init):
* gst/schedulers/gstbasicscheduler.c: (plugin_init):
* gst/schedulers/gstoptimalscheduler.c: (plugin_init):
use it
2004-08-11 09:54:52 +00:00
Steve Lhomme
6bf163742a fix a memory leak that occured under Windows
Original commit message from CVS:
fix a memory leak that occured under Windows
2004-08-10 19:23:53 +00:00
Colin Walters
0eadb80815 gst/registries/gstxmlregistry.c (gst_xml_registry_open_func): Don't use O_EXCL to open temporary registry. It will p...
Original commit message from CVS:
2004-08-10  Colin Walters  <walters@redhat.com>

* gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
Don't use O_EXCL to open temporary registry.  It will prevent
registry creation if a temporary one already exists, which
is unnecessary.
2004-08-10 17:28:19 +00:00
Steve Lhomme
18cd9394c0 export gst_type_XXX for windows DLLs enable NLS again, push the version number for the coming 0.8.5 release
Original commit message from CVS:
export gst_type_XXX for windows DLLs
enable NLS again, push the version number for the coming 0.8.5 release
2004-08-09 21:11:39 +00:00
Thomas Vander Stichele
b31eed4b70 docs/faq/gst-uninstalled: fix PKG_CONFIG_PATH and PYTHONPATH
Original commit message from CVS:
* docs/faq/gst-uninstalled:
fix PKG_CONFIG_PATH and PYTHONPATH
* gst/schedulers/Makefile.am:
cleanup
* libs/gst/bytestream/bytestream.c:
remove newline
* po/LINGUAS:
* po/sq.po:
adding Albanian translation (Laurent Dhima)
* po/cs.po:
updated
2004-08-09 09:20:06 +00:00
Benjamin Otte
ce7ad83f64 gst/gststructure.c: add gst_structure_id_empty_new_with_size to allow preallocating value array sizes. Use this in gs...
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_id_empty_new_with_size),
(gst_structure_id_empty_new), (gst_structure_empty_new),
(gst_structure_copy):
add gst_structure_id_empty_new_with_size to allow preallocating
value array sizes. Use this in gst_structure_copy to get rid of
reallocs.
don't do quark=>string=>quark when copying structures
2004-08-04 12:39:12 +00:00
Benjamin Otte
f1472b4ed2 gst/schedulers/entryscheduler.c: fix for GST_DISABLE_DEBUG
Original commit message from CVS:
* gst/schedulers/entryscheduler.c:
(gst_entry_scheduler_remove_element):
fix for GST_DISABLE_DEBUG
* tools/gst-launch.c: (print_tag):
fixes for G_DISABLE_ASSERT
2004-08-03 14:29:31 +00:00
Benjamin Otte
afc9c06eb5 gst/gst.c: fix for G_DISABLE_ASSERT
Original commit message from CVS:
* gst/gst.c: (gst_register_core_elements):
fix for G_DISABLE_ASSERT
* gst/gstinfo.c: (__gst_in_valgrind):
add for GST_DISABLE_DEBUG
2004-08-03 12:40:47 +00:00
Benjamin Otte
f8f2f5a58d gst/parse/parse.l: fix for G_DISABLE_ASSERT
Original commit message from CVS:
* gst/parse/parse.l:
fix for G_DISABLE_ASSERT
2004-08-03 10:24:39 +00:00
Wim Taymans
2bb8691df2 gst/: Backported some debug logging from a reverted patch
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_get_type),
(gst_bin_child_state_change_func):
* gst/gstthread.c: (gst_thread_change_state):
Backported some debug logging from a reverted patch
Don't try to destroy the thread twice. Added some more
debugging in GstThread. Unlock and signal even if we
are in the thread context.
2004-08-03 09:51:37 +00:00
David Schleef
6ef8f673c9 gst/gstatomic_impl.h: Enable atomic code for x86_64
Original commit message from CVS:
* gst/gstatomic_impl.h: Enable atomic code for x86_64
2004-07-30 23:32:52 +00:00
Thomas Vander Stichele
8f0fda26d0 revert state change changes as agreed so we can rework them gradually
Original commit message from CVS:
revert state change changes as agreed so we can rework them gradually
2004-07-29 20:33:49 +00:00
Thomas Vander Stichele
2ed6c06492 fix instances in core before making this an error
Original commit message from CVS:
fix instances in core before making this an error
2004-07-29 20:26:32 +00:00
Benjamin Otte
6788d167d6 gst/elements/gstfilesrc.c: make seek events to before start/after end of file not fail, but seek to start/end instead
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
(gst_filesrc_srcpad_event):
make seek events to before start/after end of file not fail, but
seek to start/end instead
* testsuite/caps/fraction-convert.c: (check_from_double_convert):
add more output
2004-07-29 15:34:25 +00:00
Benjamin Otte
2bd5f3ad46 gst/gstpad.c: check that caps are fixed
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_explicit_caps):
check that caps are fixed
* gst/gstpad.c: (gst_pad_template_new):
don't try to simplify caps, costs too much time on gst_init
* gst/gstplugin.c: (gst_plugin_add_feature):
G_ERROR if features are added twice
* gst/gsttypefind.c: (gst_type_find_register):
* gst/gstelementfactory.c: (gst_element_register):
don't add features twice
* docs/random/ds/0.9-suggested-changes:
add note about possible gst_init optimization
2004-07-29 15:29:37 +00:00
Brian Cameron
c0aa2ff498 Correcting some debug messages so that they don't core dump on Solaris by passing in NULL values as strings.
Original commit message from CVS:
Correcting some debug messages so that they don't core dump on Solaris
by passing in NULL values as strings.
2004-07-28 20:12:49 +00:00
David I. Lehn
3030cec8b5 Fix binary compatibility with 0.8.{0-3}. Closes bug 148692.
Original commit message from CVS:
Fix binary compatibility with 0.8.{0-3}.  Closes bug 148692.
2004-07-28 15:28:18 +00:00
Wim Taymans
f200c14dff gst/: Make sure that a bin state change tries to keep the children in sync.
Original commit message from CVS:
* gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
* gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
Make sure that a bin state change tries to keep the children
in sync.
Added debug logging to the thread.
2004-07-28 10:15:08 +00:00
Wim Taymans
36b41f4666 Added transform functions between double and fraction.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_transform_double_fraction),
(gst_value_transform_fraction_double), (_gst_value_initialize):
* testsuite/caps/Makefile.am:
* testsuite/caps/fraction-convert.c: (check_from_double_convert),
(check_from_fraction_convert), (transform_test), (main):
Added transform functions between double and fraction.
Added testcase to verify transforms
2004-07-27 16:45:30 +00:00
Thomas Vander Stichele
d09834dc6f #148497
Original commit message from CVS:
#148497
2004-07-26 18:23:12 +00:00
Stefan Kost
526a406c2e corrected the comment about the struct poptOption workaround
Original commit message from CVS:
corrected the comment about the struct poptOption workaround
2004-07-26 17:45:10 +00:00
Stefan Kost
e4c86da4f5 fixed all double <TITLE> elements in sections.txt added missing <TITLE> elements in sections.txt
Original commit message from CVS:
fixed all double <TITLE> elements in sections.txt
added missing <TITLE> elements in sections.txt
2004-07-26 16:34:35 +00:00
Thomas Vander Stichele
8a374ddd88 improve some debug statements
Original commit message from CVS:
improve some debug statements
2004-07-26 12:05:41 +00:00
Benjamin Otte
1a8f31e577 gst/autoplug/gstspideridentity.c: don't delay links on the sink elements, it causes unnegotiated links.
Original commit message from CVS:
* gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
don't delay links on the sink elements, it causes unnegotiated
links.
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_base_init):
add our padtemplates, we indeed do have some.
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_handle_event),
(gst_type_find_element_chain):
don't push data when typefinding failed.
* gst/gstpad.c: (gst_pad_link_fixate):
check that no fixate function returns empty caps.
* gst/gstpad.c: (gst_pad_push):
check that the link is negotiated before data gets pushed.
* tools/gst-register.c: (main):
don't assert (fixes #148283)
2004-07-25 15:01:52 +00:00
Steve Lhomme
00260c591c remove unused .def files and export symbols using GST_PLUGIN_DEFINE
Original commit message from CVS:
remove unused .def files and export symbols using GST_PLUGIN_DEFINE
2004-07-25 11:07:03 +00:00
Steve Lhomme
2a189c2214 Disable NLS for now literaly export GST_CAT_DEFAULT
Original commit message from CVS:
Disable NLS for now
literaly export GST_CAT_DEFAULT
2004-07-24 16:07:01 +00:00
Steve Lhomme
d5ae66ef70 removing the file doesn't seem to be a good idea on Linux
Original commit message from CVS:
removing the file doesn't seem to be a good idea on Linux
2004-07-24 11:48:26 +00:00
Steve Lhomme
afef72241b Remove the registry before applying the new TMP file (for Windows)
Original commit message from CVS:
Remove the registry before applying the new TMP file (for Windows)
2004-07-24 10:43:57 +00:00
Zaheer Abbas Merali
13905b113e gst/elements/gstmultifilesrc.*: Added newmedia property so it generates newmedia events between each file when proper...
Original commit message from CVS:
2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
(gst_multifilesrc_init), (gst_multifilesrc_set_property),
(gst_multifilesrc_get_property), (gst_multifilesrc_get):
* gst/elements/gstmultifilesrc.h:
Added newmedia property so it generates newmedia events between each
file when property is set, as well as fixed eos handling
2004-07-23 13:09:27 +00:00
David Schleef
4fa4267105 gst/gststructure.c: Set type field correctly.
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_id_empty_new),
(gst_structure_empty_new):  Set type field correctly.
* gst/gststructure.h: Check type field correctly.
* testsuite/caps/Makefile.am:
* testsuite/caps/structure.c: (test1), (main): Add a very small
test for structures.
2004-07-23 00:12:57 +00:00
Benjamin Otte
9574c7851f gst/gstelementfactory.c: set the factory in the class struct, so gst_element_get_factory actually works
Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_register):
set the factory in the class struct, so gst_element_get_factory
actually works
* gst/parse/grammar.y:
set element to playing when it gets unlocked as we can't rely on the
bin state - all elements in the bin state might still be locked in
NULL)
2004-07-22 16:14:56 +00:00
Benjamin Otte
66786dc6f9 gst/gstelement.c: make this a static function
Original commit message from CVS:
* gst/gstelement.c: (gst_element_set_state_func):
make this a static function
2004-07-22 11:21:54 +00:00
Wim Taymans
d5f0f798ac gst/schedulers/gstoptimalscheduler.c: fix 147894-2 and the group_link problem.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
(gst_opt_scheduler_pad_link):
fix 147894-2 and the group_link problem.
2004-07-22 09:43:40 +00:00
Benjamin Otte
228cef489a keep this up to date, since I seem to be the only one who cares about not missing files on commits
Original commit message from CVS:
* gst/.cvsignore:
* gst/autoplug/.cvsignore:
* gst/elements/.cvsignore:
* gst/indexers/.cvsignore:
* libs/gst/bytestream/.cvsignore:
* libs/gst/control/.cvsignore:
* libs/gst/getbits/.cvsignore:
* testsuite/states/.cvsignore:
* testsuite/threads/.cvsignore:
keep this up to date, since I seem to be the only one who cares
about not missing files on commits
2004-07-21 21:37:31 +00:00
Benjamin Otte
28bf20507e gst/gstbin.c: make state changes work correctly and reentrant (so removing elements from bins during state changes of...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
(gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
(gst_bin_child_state_change_func), (set_kid_state_func),
(gst_bin_set_state), (gst_bin_change_state_norecurse):
make state changes work correctly and reentrant (so removing
elements from bins during state changes of bins doesn't cause
segfaults or even wrong states)
add debugging category and debugging output to print children states
* gst/gstbin.c: (gst_bin_dispose):
add some assertion checks
* gst/gstbin.h:
* gst/gstbin.c: (gst_bin_sync_children_state):
deprecate this function - it just does gst_bin_set_state (bin,
GST_STATE (bin))
* testsuite/threads/queue.c: (main):
don't use gst_bin_sync_children_state anymore
* testsuite/states/Makefile.am:
* testsuite/states/bin.c:
test that the state changes of bins work as expected
* gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
some adjustments to change states correctly, too
* gst/gstthread.c: (gst_thread_change_state):
don't enable/disable "threadsafe" properties, they're unused and
cause random segfaults
* testsuite/threads/Makefile.am:
the queue check randomly passes now, ignore it
2004-07-21 21:28:58 +00:00
Benjamin Otte
d8c591b902 gst/gstpad.c: check if data is NULL before outputting debug info. (fixes #145100)
Original commit message from CVS:
* gst/gstpad.c:
check if data is NULL before outputting debug info. (fixes #145100)
2004-07-21 21:20:10 +00:00
Benjamin Otte
04ec1a2ad9 gst/schedulers/entryscheduler.c: reset the state when the cothread starts, so we don't get assertion failures on rest...
Original commit message from CVS:
* gst/schedulers/entryscheduler.c:
(gst_entry_scheduler_loop_wrapper),
(gst_entry_scheduler_chain_wrapper),
(gst_entry_scheduler_get_wrapper):
reset the state when the cothread starts, so we don't get assertion
failures on restarting of cothreads
2004-07-21 19:41:52 +00:00
Stefan Kost
21e56edfbc put symbols in the sections.txt into the right sections (so that we dont get wrong undocumented symbols) added TITLE ...
Original commit message from CVS:
put symbols in the sections.txt into the right sections (so that we dont get wrong undocumented symbols)
added TITLE tags where they were missing
fixed section names so that gtk-doc introspection works
fixed typos in api docs and docbook docs
added some thoughts about new interfaces (to personal notes)
2004-07-21 11:32:09 +00:00
Benjamin Otte
e5a3b3f338 gst/gstelement.c: use correct sinkpad, if only sinkpad is specified, but not srcpad (fixes #147889)
Original commit message from CVS:
* gst/gstelement.c: (gst_element_link_pads_filtered):
use correct sinkpad, if only sinkpad is specified, but not srcpad
(fixes #147889)
* gst/gstelement.c: (gst_element_set_state_func),
(gst_element_change_state): ref/unref the element, signal handlers
could get rid of the element otherwise
2004-07-20 19:54:20 +00:00
Ronald S. Bultje
8b895dadce docs/random/ds/0.9-suggested-changes: Make note about renaming fixed-list to array.
Original commit message from CVS:
* docs/random/ds/0.9-suggested-changes:
Make note about renaming fixed-list to array.
* gst/gstvalue.c: (gst_value_intersect_fixed_list),
(_gst_value_initialize):
Add array intersections.
* testsuite/caps/intersect2.c: (main):
Add test for array intersections.
2004-07-20 19:35:15 +00:00
Thomas Vander Stichele
050631f63b fix for #142813 - deadlock in opt
Original commit message from CVS:
fix for #142813 - deadlock in opt
2004-07-20 10:57:38 +00:00
Thomas Vander Stichele
add97dd1ce fix for #147819 (Add some checks in the opt scheduler)
Original commit message from CVS:
fix for #147819 (Add some checks in the opt scheduler)
2004-07-20 10:40:09 +00:00
Thomas Vander Stichele
f8e7ca6ea9 fix for 147929: [PATCH] running gst-register in non-utf8 locale can cause invalid registry
Original commit message from CVS:
fix for 147929: [PATCH] running gst-register in non-utf8 locale can cause invalid registry
2004-07-20 10:18:48 +00:00
Thomas Vander Stichele
b515b8a729 fix for #147894 (opt scheduler decoupled elements mismanagement)
Original commit message from CVS:
fix for #147894 (opt scheduler decoupled elements mismanagement)
2004-07-20 09:55:13 +00:00
Wim Taymans
74060a4ff6 gst/schedulers/gstoptimalscheduler.c: Call group_inc_link with the proper src->sink ordering -- break this, and we br...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
(create_chain), (destroy_chain), (create_group), (destroy_group),
(add_to_group), (merge_groups), (group_elements), (group_inc_link),
(group_dec_link), (gst_opt_scheduler_pad_link),
(group_inc_links_for_element), (group_migrate_connected):
Call group_inc_link with the proper src->sink ordering --
break this, and we break sort_chain. patch from wingo for bug
147713.
Partially revert patch 1.89. When adding a loop based element to
the scheduler, the links to other groups are automatically followed
and incremented. This should not happen because the bin will call
pad_link explicitly for those connection, resulting in them counted
twice. Results in assertion failure on pipeline cleanup.
2004-07-16 16:02:12 +00:00
Thomas Vander Stichele
37960c1b39 fix #147707 blocker
Original commit message from CVS:
fix #147707 blocker
2004-07-16 13:31:28 +00:00
Benjamin Otte
ae7fb01363 gst/gstvalue.c: use ints and return ints, fractions only use ints, too, so this avoids accidently casting multiplicat...
Original commit message from CVS:
* gst/gstvalue.c: (gst_greatest_common_divisor):
use ints and return ints, fractions only use ints, too, so this
avoids accidently casting multiplications to unsigned
(gst_value_lcopy_fraction): it's ints, not uint32
(gst_value_set_fraction): disallow minint, multiplying and negation
are broken with it
(gst_value_fraction_multiply): fix to make large numbers work and get
rid of the assumption that the multiplication of two ints fits an
int64 - dunno if that's true for all systems
* testsuite/caps/Makefile.am:
* testsuite/caps/fraction-multiply-and-zero.c:
(check_multiplication), (check_equal), (zero_test), (main):
add tests for all the stuff above
* testsuite/caps/value_compare.c: (test1):
fix comment
* tests/.cvsignore:
* testsuite/caps/.cvsignore:
* testsuite/debug/.cvsignore:
* testsuite/dlopen/.cvsignore:
* testsuite/states/.cvsignore:
get up to date
2004-07-16 01:16:53 +00:00
Thomas Vander Stichele
76f329603c adding GstFraction GValue type
Original commit message from CVS:
adding GstFraction GValue type
2004-07-15 20:27:20 +00:00
Thomas Vander Stichele
1c5150d393 debugging additions and style cleanups
Original commit message from CVS:
debugging additions and style cleanups
2004-07-15 16:20:50 +00:00
Benjamin Otte
ae23ffba6f gst/gstelement.h: Don't GST_ERROR_OBJECT smpty strings - Solaris doesn't like NULL strings.
Original commit message from CVS:
* gst/gstelement.h:
Don't GST_ERROR_OBJECT smpty strings - Solaris doesn't like NULL
strings.
* gst/gstelement.c (gst_element_class_init):
GError's are boxed, not objects
* gst/gstmarshal.list:
update list for the fixed error signal
2004-07-15 02:26:48 +00:00
Andy Wingo
d6443170cf gst/gsttag.c: Add a tag merge func for pointers. The header was there all along, but the function wasn't. (guile-gstr...
Original commit message from CVS:
2004-07-14  Andy Wingo  <wingo@pobox.com>

* gst/gsttag.c: Add a tag merge func for pointers. The header was
there all along, but the function wasn't. (guile-gstreamer's build
system uses the address of the function -- I wasn't actually
trying to use this.)

2004-07-13  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
as gst_pad_proxy_pad_link) just link to every other pad when they
are called. In the case where the graph has cycles, this will mean
that a call to try_set_caps will recurse. Allow this recursion
and return OK, while we wait for the first try_set_caps to give a
proper return value.
(gst_pad_link_call_link_functions): Since this function is the
only one to set the NEGOTIATING flag on a pad, if the flag is set
it means that the link functions have indirectly recursed. If this
happens, error out to avoid infinite recursion and an eventual
SEGV.
(gst_real_pad_class_init): Remove a crufty GtkObject comment.
(gst_pad_proxy_getcaps): Intersect the result with the template
caps to ensure that the return value is valid.

2004-07-11  Andy Wingo  <wingo@pobox.com>

* gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
one refcount, the calling function is the owner of the buffer.
2004-07-14 15:28:51 +00:00
Wim Taymans
99c3c397ca gst/schedulers/gstoptimalscheduler.c: Fix stupid warning when an element is to be migrated but is already migrated.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
(gst_opt_scheduler_pad_link), (group_migrate_connected):
Fix stupid warning when an element is to be migrated but
is already migrated.
2004-07-14 15:10:09 +00:00
Wim Taymans
d7ec4cb787 gst/schedulers/gstoptimalscheduler.c: Make sure that a single non-loop-based element does not end up in a group. This...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
(gst_opt_scheduler_pad_link), (group_migrate_connected):
Make sure that a single non-loop-based element does not
end up in a group. This fixes the testsuite again.
2004-07-14 14:52:49 +00:00
Wim Taymans
b997eae215 gst/schedulers/gstoptimalscheduler.c: move isolated groups to a new chain.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (create_group),
(add_to_group), (merge_groups), (schedule_group),
(gst_opt_scheduler_get_wrapper), (group_elements),
(group_dec_link), (gst_opt_scheduler_pad_link),
(group_migrate_connected), (gst_opt_scheduler_pad_unlink),
(gst_opt_scheduler_iterate):
move isolated groups to a new chain.
Emit a warning instead of segfaulting in some error cases.
Fix a bug where the link count between groups was not calculated
correctly. Fixes #144510.
2004-07-14 14:25:04 +00:00
Steve Lhomme
9b99ef6164 Handle binary files under Windows OK
Original commit message from CVS:
Handle binary files under Windows OK
2004-07-13 17:35:50 +00:00
Benjamin Otte
f71ec9df53 compatibility fixes for Solaris 8/gcc 2.95
Original commit message from CVS:
compatibility fixes for Solaris 8/gcc 2.95
* configure.ac:
include libintl libs in LDFLAGS
* gstvalue.c (gst_value_deserialize_buffer):
cast isxdigit stuff to int to silence compiler warning
2004-07-13 14:17:01 +00:00
Benjamin Otte
f1d9a4c380 gst/gsttypes.h: get rid of GST_O_READONLY, GST_FILE_MODE_READ and
Original commit message from CVS:
* gst/gsttypes.h:
get rid of GST_O_READONLY, GST_FILE_MODE_READ and
GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
just causes support madness
* gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
make it work without this
* gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
(gst_file_index_commit):
glib IO channels don't want binary mode
* testsuite/bytestream/filepadsink.c: (main):
* testsuite/bytestream/test1.c: (read_param_file):
use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
2004-07-12 21:57:35 +00:00
Benjamin Otte
d77dbaac2f gst/gstelement.c: virutalize gst_element_set_state, use set_state member in class struct that was already added in 0....
Original commit message from CVS:
* gst/gstelement.c: (gst_element_class_init),
(gst_element_set_state), (gst_element_set_state_func):
virutalize gst_element_set_state, use set_state member in class
struct that was already added in 0.7 for this.
* gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func),
(gst_bin_change_state):
make gst_bin_foreach works similar to other foreach functions, plug
memleaks in it. Make functions using it work with the new approach.
Document gst_bin_foreach, so it can be exported if we want to
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
use virtualized set_state to make set_state on bins set the state of
all its children.
2004-07-12 21:27:11 +00:00
Benjamin Otte
2ab9d39848 configure.ac: require valgrind >= 2.1 (fixes Gentoo bug 53967, see http://bugs.gentoo.org/show_bug.cgi?id=53967)
Original commit message from CVS:
* configure.ac:
require valgrind >= 2.1 (fixes Gentoo bug 53967, see
http://bugs.gentoo.org/show_bug.cgi?id=53967)
* gst/gstpad.c: (gst_pad_alloc_buffer):
allow buffer_alloc functions to return NULL and allocate a normal
buffer in that case
2004-07-12 21:20:40 +00:00
Steve Lhomme
fb7d3a201c Handle binary files under Windows
Original commit message from CVS:
Handle binary files under Windows
2004-07-12 20:24:45 +00:00
Steve Lhomme
766d02d57a fix i18n under Windows and a C syntax error
Original commit message from CVS:
fix i18n under Windows and a C syntax error
2004-07-12 19:32:30 +00:00
Thomas Vander Stichele
14e4ff51de set PENDING on bin correctly for special case. fixes testsuite again.
Original commit message from CVS:
set PENDING on bin correctly for special case. fixes testsuite again.
2004-07-12 10:03:04 +00:00
Benjamin Otte
9b9a151d43 gst/gstclock.h: GST_SECOND shouldn't cause a conversion to unsigned.
Original commit message from CVS:
* gst/gstclock.h:
GST_SECOND shouldn't cause a conversion to unsigned.
* testsuite/clock/.cvsignore:
* testsuite/clock/Makefile.am:
* testsuite/clock/signedness.c: (main):
make sure it never will again
2004-07-11 18:19:54 +00:00
Andy Wingo
db1987c472 gst/gstbin.c (gst_bin_add_func): If we're adding an element whose state is higher than the bin state, raise the bin s...
Original commit message from CVS:
2004-07-11  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (gst_bin_add_func): If we're adding an element
whose state is higher than the bin state, raise the bin state to
ensure that bin state := highest child state.
2004-07-11 12:16:29 +00:00
Andy Wingo
799ee9420c gst/gstbin.c (gst_bin_foreach): New static function. Calls a procedure on the children of a bin. Assumes that the pro...
Original commit message from CVS:
2004-07-11  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (gst_bin_foreach): New static function. Calls a
procedure on the children of a bin. Assumes that the procedure can
change the set of children.
(set_kid_state_func): New static function.
(gst_bin_change_state): Use gst_bin_foreach to call
set_kid_state_func. Fixes a bug: if a child had a state-change
handler that removes it from the bin, there would be a segfault.
Hopefully it should also work in the case where the state-change
handler on one child adds or removes other children. In any case,
fixes should go to gst_bin_foreach.
2004-07-11 11:11:37 +00:00
Thomas Vander Stichele
0ce552665c fix for last plugins release
Original commit message from CVS:
fix for last plugins release
2004-07-10 16:31:54 +00:00
Wim Taymans
31b478533c gst/: Since remove is virtual in GstBin we must not assume the elements GList to have anothing usefull.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
* gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
(gst_thread_main_loop):
Since remove is virtual in GstBin we must not assume the
elements GList to have anothing usefull.
Add some more logging to GstThread and be a bit more paranoid
when resetting the scheduler.
Set the state of the bin to NULL before removing the children.
2004-07-09 15:03:51 +00:00
Thomas Vander Stichele
16ff395986 debugging fixes
Original commit message from CVS:
debugging fixes
2004-07-09 13:33:20 +00:00
Thomas Vander Stichele
b645d7ab8c fixes 123774 - setting state on a bin should set state on children as well
Original commit message from CVS:
fixes 123774 - setting state on a bin should set state on children as well
2004-07-09 13:26:12 +00:00
Thomas Vander Stichele
683546fcb5 clean up debugging. change to finalize to free all resources
Original commit message from CVS:
clean up debugging. change to finalize to free all resources
2004-07-09 11:23:55 +00:00
Thomas Vander Stichele
ac9d8868a5 catch wrong state changes in element base class
Original commit message from CVS:
catch wrong state changes in element base class
2004-07-09 11:20:59 +00:00
Thomas Vander Stichele
c309ad76fb cleanup
Original commit message from CVS:
cleanup
2004-07-09 11:00:06 +00:00
Thomas Vander Stichele
0b685fac13 debug
Original commit message from CVS:
debug
2004-07-09 08:45:18 +00:00
Wim Taymans
19fac086bf gst/schedulers/gstoptimalscheduler.c: Do not try to migrate decoupled elements to a new group since they are not adde...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c:
(gst_opt_scheduler_pad_link), (group_elements_set_visited),
(element_get_reachables_func), (element_get_reachables),
(debug_element), (rechain_group), (group_migrate_connected),
(gst_opt_scheduler_pad_unlink):
Do not try to migrate decoupled elements to a new group since
they are not added to groups.
2004-07-09 08:25:42 +00:00
Benjamin Otte
87de7f9dcc gst/gstelement.c: make reentrant (= allow removing elements in error handler)
Original commit message from CVS:
* gst/gstelement.c: (gst_element_error_func):
make reentrant (= allow removing elements in error handler)
2004-07-08 21:25:42 +00:00
Thomas Vander Stichele
6595422e32 don't send events below PAUSED on parent
Original commit message from CVS:
don't send events below PAUSED on parent
2004-07-08 16:38:49 +00:00
Wim Taymans
40a0fb9794 Implemented group splitting and rechaining.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c:
(chain_recursively_migrate_group), (create_group),
(schedule_group), (gst_opt_scheduler_pad_link),
(group_elements_set_visited), (element_get_reachables_func),
(element_get_reachables), (group_can_reach_group), (debug_element),
(rechain_group), (group_migrate_connected),
(gst_opt_scheduler_pad_unlink):
* testsuite/schedulers/Makefile.am:
Implemented group splitting and rechaining.
Fixes 143777 and 143777-2 in the testsuite.
2004-07-08 15:24:20 +00:00
Thomas Vander Stichele
e7a32237d4 gst/autoplug/gstspideridentity.c: extra debugging
Original commit message from CVS:
* gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
extra debugging
* gst/gstevent.h:
* gst/gstinfo.c: (gst_debug_log_default):
print time nicely.  add thread pointer until someone figures out
a completely portable way of getting at thread id's.
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
(_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
(gst_pad_call_chain_function):
extra debugging
* gst/schedulers/gstoptimalscheduler.c:
(get_group_schedule_function), (loop_group_schedule_function),
(gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
(pad_clear_queued), (gst_opt_scheduler_iterate):
rename BUFPEN and friends to DATAPEN since that's what they are.
2004-07-08 13:49:14 +00:00
Thomas Vander Stichele
56e7e557ae debugging fixes
Original commit message from CVS:
debugging fixes
2004-07-07 16:50:30 +00:00
Thomas Vander Stichele
ccd846b74a debug fix
Original commit message from CVS:
debug fix
2004-07-07 15:06:26 +00:00
Thomas Vander Stichele
d1e3457acf debug fix
Original commit message from CVS:
debug fix
2004-07-07 15:04:44 +00:00
Thomas Vander Stichele
d4ac2d54be debugging and cleanups
Original commit message from CVS:
debugging and cleanups
2004-07-07 14:15:28 +00:00
Ronald S. Bultje
938884918c Fix enum serialization, deserialization, comparison in caps, add a test to ensure that this continues working in the ...
Original commit message from CVS:
* configure.ac:
* gst/gstvalue.c: (gst_value_compare_enum),
(gst_value_serialize_enum), (gst_value_deserialize_enum),
(gst_value_can_compare), (gst_value_compare):
* testsuite/Makefile.am:
Fix enum serialization, deserialization, comparison in caps, add
a test to ensure that this continues working in the future.
2004-07-07 04:22:28 +00:00
David Schleef
1c8590f341 gst/gstcaps.c: Fix memleak.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
Fix memleak.
2004-07-06 22:33:04 +00:00
Thomas Vander Stichele
c0f5312554 rebuild registry only for newer plugins. fixes #145520
Original commit message from CVS:
rebuild registry only for newer plugins.  fixes #145520
2004-07-06 17:55:25 +00:00
Thomas Vander Stichele
fbf80ae696 fix spider memleaks #137863
Original commit message from CVS:
fix spider memleaks #137863
2004-07-06 12:00:53 +00:00
Thomas Vander Stichele
915be2e2c7 fix SIGBUS on opt, #145338
Original commit message from CVS:
fix SIGBUS on opt, #145338
2004-07-06 11:44:26 +00:00
Thomas Vander Stichele
b3331d4771 clean up clock lifecycle. fixes #109831
Original commit message from CVS:
clean up clock lifecycle.  fixes #109831
2004-07-06 11:21:34 +00:00
Thomas Vander Stichele
b518d9efc0 chain bin restore to parent method
Original commit message from CVS:
chain bin restore to parent method
2004-07-04 10:26:24 +00:00
David Schleef
6a99b71662 gst/gstcaps.c: Actually do something in these functions, like before the big caps change. (bug #145137)
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
Actually do something in these functions, like before the big
caps change.  (bug #145137)
2004-07-03 23:49:51 +00:00
Thomas Vander Stichele
d707aa6316 more debug info
Original commit message from CVS:
more debug info
2004-07-03 15:30:19 +00:00
David Schleef
f2dcf4e048 gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
Original commit message from CVS:
* gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
* gst/gstobject.h:
* gst/gstparse.h:
* gst/gsttrace.h:
* gst/gstxml.h:
2004-07-03 04:59:12 +00:00
Thomas Vander Stichele
074bcabf93 revert until fixed
Original commit message from CVS:
revert until fixed
2004-07-02 14:01:04 +00:00
Benjamin Otte
ef97ba69b4 gst/gstpad.c: check that pads that get linked belong to the same manager. The old code allowed linking elements befor...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_check_schedulers),
(gst_pad_can_link_filtered), (gst_pad_link_filtered),
(gst_pad_link_prepare):
check that pads that get linked belong to the same manager. The old
code allowed linking elements before putting them into bins, so it
worked to link them and then put them in different threads, which
lead to weird behaviour.
Since this effectively disallows linking elements before putting
them in a bin, some applications might not work after this and error
out. If these applications are too critical, we might need to revert
that patch. Please test this before the next release...
2004-07-02 03:24:08 +00:00
Benjamin Otte
968c817c26 gst/gstpad.c: throw an error if the getcaps function does not return a subset of the template caps.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_get_caps):
throw an error if the getcaps function does not return a subset of
the template caps.
* libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
make disconts without position info an error in debugging
* tests/spidey_bench.c: (handoff), (main):
don't count first try when averaging
2004-06-29 00:34:38 +00:00
Thomas Vander Stichele
f683e73dc6 figure out problem with dynamic
Original commit message from CVS:
figure out problem with dynamic
2004-06-26 16:58:17 +00:00
Wim Taymans
45549aabb2 gst/elements/: Removed multifdsink, moved it to plugins.
Original commit message from CVS:
* gst/elements/Makefile.am:
* gst/elements/gstelements.c:
* gst/elements/gstmultifdsink.c:
* gst/elements/gstmultifdsink.h:
Removed multifdsink, moved it to plugins.
2004-06-26 15:38:11 +00:00
Thomas Vander Stichele
0b17785211 check stream
Original commit message from CVS:
check stream
2004-06-26 13:08:03 +00:00
Thomas Vander Stichele
b5051d23dd print offset_end
Original commit message from CVS:
print offset_end
2004-06-25 12:46:40 +00:00
Wim Taymans
f077afa0b2 gst/elements/: Added an element that writes to multiple filedescriptors at once.
Original commit message from CVS:
* gst/elements/Makefile.am:
* gst/elements/gstelements.c:
* gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
(gst_multifdsink_class_init), (gst_multifdsink_init),
(gst_multifdsink_add), (gst_multifdsink_remove),
(gst_multifdsink_clear), (gst_multifdsink_chain),
(gst_multifdsink_set_property), (gst_multifdsink_get_property):
* gst/elements/gstmultifdsink.h:
Added an element that writes to multiple filedescriptors at once.
2004-06-24 17:05:04 +00:00
Benjamin Otte
2c2a7a3847 gst/parse/grammar.y: don't try to link elements before they have been added to bins
Original commit message from CVS:
* gst/parse/grammar.y:
don't try to link elements before they have been added to bins
2004-06-24 03:51:02 +00:00
Benjamin Otte
86a748f0e6 gst/gstelement.h: remove define that referenced a nonexisting GstElement struct member
Original commit message from CVS:
* gst/gstelement.h:
remove define that referenced a nonexisting GstElement struct member
2004-06-22 03:08:56 +00:00
Benjamin Otte
e242dece5b gst/gstdata.c: whoops, return values were wrong, so writable data was marked as non-writable and vice versa. (fixes #...
Original commit message from CVS:
* gst/gstdata.c: (gst_data_is_writable):
whoops, return values were wrong, so writable data was marked as
non-writable and vice versa. (fixes #143953, spotted by Francis
Labonte)
Shows how rarely we need to copy data ;)
2004-06-20 20:49:32 +00:00
Benjamin Otte
94821aea61 gst/gstpad.c: check for if we were unlinked while inside the chainfunction (fixes entrygthread having issues with #14...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_call_chain_function):
check for if we were unlinked while inside the chainfunction (fixes
entrygthread having issues with #143777)
* testsuite/schedulers/143777.c: (main):
* testsuite/schedulers/Makefile.am:
add a test for that fix
2004-06-20 19:42:58 +00:00
Benjamin Otte
02c304efb9 gst/gstvalue.c: test that start is smaller then end
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_set_int_range):
test that start is smaller then end
* libs/gst/bytestream/Makefile.am:
* libs/gst/bytestream/filepad.c:
* libs/gst/bytestream/filepad.h:
add GstFilePad - a pad that behaves like a FILE*
* testsuite/bytestream/.cvsignore:
* testsuite/bytestream/Makefile.am:
* testsuite/bytestream/filepadsink.c:
test for the GstFilePad
2004-06-20 17:05:40 +00:00
Thomas Vander Stichele
6f0d62ebdd add sync to identity
Original commit message from CVS:
add sync to identity
2004-06-18 14:05:55 +00:00
Benjamin Otte
3183fa7060 gst/gstelementfactory.c: make the freakin "elementfactory bla has no type" message more useful. So we actually can do...
Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_factory_create):
make the freakin "elementfactory bla has no type" message more
useful. So we actually can do something when someone shows up
complaining about it.
2004-06-16 21:06:50 +00:00
David Schleef
4a26e6f2c7 gst/gstcpu.c: Fix problem when using
Original commit message from CVS:
* gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
-fomit-frame-pointer.  Appears to generate correct code in
other cases as well.
2004-06-14 18:15:23 +00:00
Thomas Vander Stichele
5c28fc6fce more clarification
Original commit message from CVS:
more clarification
2004-06-14 17:06:33 +00:00
Thomas Vander Stichele
659ebcc92c fix docstring of get_time
Original commit message from CVS:
fix docstring of get_time
2004-06-14 16:55:28 +00:00
Steve Lhomme
395faf9c06 rename GSTREAMER_EXPORT to GST_EXPORT
Original commit message from CVS:
rename GSTREAMER_EXPORT to GST_EXPORT
2004-06-13 10:04:12 +00:00
Steve Lhomme
30128f9b16 Somehow a clean fix to the semi-private export
Original commit message from CVS:
Somehow a clean fix to the semi-private export
2004-06-12 13:45:17 +00:00
Steve Lhomme
f4f4c913f1 Fix the missing "extern"
Original commit message from CVS:
Fix the missing "extern"
2004-06-12 12:50:24 +00:00
Steve Lhomme
2871454788 More code in debug builds to have logging capabilities
Original commit message from CVS:
More code in debug builds to have logging capabilities
2004-06-12 11:31:49 +00:00
Steve Lhomme
f50188b8a0 Fix a bug to enable/disable DEBUG under MSVC
Original commit message from CVS:
Fix a bug to enable/disable DEBUG under MSVC
2004-06-12 10:51:35 +00:00
Steve Lhomme
6029771ed5 Enable NLS under Windows
Original commit message from CVS:
Enable NLS under Windows
2004-06-12 10:45:54 +00:00
Thomas Vander Stichele
a45f193207 use ->length
Original commit message from CVS:
use ->length
2004-06-11 23:46:32 +00:00
Thomas Vander Stichele
e5c9a61a6b fix queue event code
Original commit message from CVS:
fix queue event code
2004-06-11 15:18:58 +00:00
Johan Dahlin
b748b61e9f gst/gst.c (gst_init_check_with_popt_table): Do not fail on errors, like gtk. It makes it more useful in bindings.
Original commit message from CVS:
* gst/gst.c (gst_init_check_with_popt_table): Do not fail on
errors, like gtk. It makes it more useful in bindings.
2004-06-10 11:23:42 +00:00
Johan Dahlin
aea04009d0 gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge the flags from the buffer we're copying.
Original commit message from CVS:
* gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
the flags from the buffer we're copying.
2004-06-09 16:04:37 +00:00
Wim Taymans
9ed520d4e2 gst/elements/: Print more buffer info in fakesink.
Original commit message from CVS:
* gst/elements/gstfakesink.c: (gst_fakesink_chain):
* gst/elements/gstidentity.c: (gst_identity_init),
(gst_identity_chain):
Print more buffer info in fakesink.
Make identity output similar to fakesink.
2004-06-09 14:19:50 +00:00
Benjamin Otte
4e4b651999 gst/gstelement.c: add failure check
Original commit message from CVS:
* gst/gstelement.c: (gst_element_set_time_delay):
add failure check
* gst/gstinfo.h:
put brackets around macro arguments of GST_TIME_ARGS, add note to
move it to correct header in 0.9
2004-06-07 01:01:04 +00:00
Benjamin Otte
2b74c4fbb2 gst/indexers/gstfileindex.c: make debugging use a default category
Original commit message from CVS:
* gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
(gst_file_index_load), (_file_index_id_save_entries),
(gst_file_index_commit), (gst_file_index_add_association),
(gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
(gst_file_index_plugin_init):
make debugging use a default category
2004-06-06 23:39:39 +00:00
Benjamin Otte
eb9087b14b gst/elements/gstfdsrc.c: reset offset counter when going READY => PAUSED. (fixes #142903)
Original commit message from CVS:
reviewed by Benjamin Otte  <otte@gnome.org>
* gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
(gst_fdsrc_change_state):
reset offset counter when going READY => PAUSED. (fixes #142903)
2004-06-06 21:11:51 +00:00
Benjamin Otte
60de88e46c gst/registries/gstxmlregistry.c: don't rely on g_dir_open to figure out if a file is a directory, use explicit G_TEST...
Original commit message from CVS:
reviewed by Benjamin Otte  <otte@gnome.org>
* gst/registries/gstxmlregistry.c:
(gst_xml_registry_rebuild_recurse):
don't rely on g_dir_open to figure out if a file is a directory, use
explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
directories. (fixes #142850)
2004-06-06 20:40:29 +00:00
Sebastien Cote
502660a784 fix copyright in header and typo in debugging category name
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
* libs/gst/bytestream/adapter.c:
* libs/gst/bytestream/adapter.h:
fix copyright in header and typo in debugging category name
2004-06-06 19:44:19 +00:00
Thomas Vander Stichele
5729f3b2a3 put back GST_CAT_DATAFLOW
Original commit message from CVS:
put back GST_CAT_DATAFLOW
2004-06-05 12:19:27 +00:00
Thomas Vander Stichele
7e0eba5ee0 add GST_DEBUG detection
Original commit message from CVS:
add GST_DEBUG detection
2004-06-03 16:50:50 +00:00
Stéphane Loeuillet
55cd61de48 - removing some trailing commas in enums to please C90 only compilers (AIX, Forte, ...) ('should' fix #143290) should...
Original commit message from CVS:
- removing some trailing commas in enums to please C90 only compilers (AIX, Forte, ...)
('should' fix #143290)

should/could we compile gst with -ansi -pedantic to catch those in the build-bots ?
2004-05-28 05:01:05 +00:00
Wim Taymans
b8ff3d3d63 gst/schedulers/gstoptimalscheduler.c: Don't try to follow the pad connections with other groups when a loop based ele...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
(chain_group_set_enabled), (create_group), (add_to_group),
(merge_groups), (setup_group_scheduler), (group_elements),
(gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
Don't try to follow the pad connections with other groups
when a loop based element is added to the scheduler because
the bin will inform the scheduler about the pad links a little
later.
2004-05-27 15:38:49 +00:00
Wim Taymans
d738f23c6a gst/schedulers/gstoptimalscheduler.c: Elements without a group can do a state change as well, just wait with the setu...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
(remove_from_chain), (chain_group_set_enabled),
(setup_group_scheduler), (group_element_set_enabled),
(gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
(gst_opt_scheduler_show):
Elements without a group can do a state change as well, just wait
with the setup of the scheduling function when it is added to a
chain.
2004-05-27 11:29:18 +00:00
Wim Taymans
6187bf80e7 gst/schedulers/gstoptimalscheduler.c: Fixes to maintain internal consistency of the scheduler data structures.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
(remove_from_chain), (chain_group_set_enabled), (add_to_group),
(merge_groups), (setup_group_scheduler),
(group_inc_links_for_element), (gst_opt_scheduler_iterate),
(gst_opt_scheduler_show):
Fixes to maintain internal consistency of the scheduler data
structures.
- adding an enabled group to a chain should increment the
number of enabled elements in that chain.
- removing an enabled group from a chain could disable the
chain.
- removing a disabled group from a chain could enable the
chain.
- add g_assert when internal inconsistency is detected.
- adding an element to a group could increase the number of
links this group has with other groups.
- merging two groups also merges the chains.
- also show group links in the _show method.

Please report regressions ASAP, so I can fix them.
2004-05-27 09:33:29 +00:00
Benjamin Otte
7193393c18 gst/gstcaps.c: don't print error messages when there is no error
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_structure_simplify):
don't print error messages when there is no error
* gst/gstvalue.c: (gst_value_compare_int_range):
compare the second value, too
* testsuite/caps/Makefile.am:
* testsuite/caps/random.c: (assert_on_error), (main):
add tests to make sure the two things above are checked for
2004-05-25 19:52:02 +00:00
David Schleef
b3dda2995f gst/registries/gstxmlregistry.c: Fix warning on OS X. (bug #142957)
Original commit message from CVS:
* gst/registries/gstxmlregistry.c:
(gst_xml_registry_parse_padtemplate): Fix warning on OS X.
(bug #142957)
2004-05-22 20:46:25 +00:00
Johan Dahlin
9afd2f70ab gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with __GNUC__, patch from Brian Cameron, fixes bug #142804
Original commit message from CVS:
* gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
__GNUC__, patch from Brian Cameron, fixes bug #142804
2004-05-21 14:48:04 +00:00
David Schleef
854a9d8132 gst/gstindex.c: Fix overflows in comparison code. (bug #142819)
Original commit message from CVS:
* gst/gstindex.c: (gst_index_compare_func): Fix overflows in
comparison code.  (bug #142819)
2004-05-20 19:32:34 +00:00
Wim Taymans
4dd1a6b173 gst/gstbuffer.*: Added Comment to a flag. copy relevant flags in _buffer_copy.
Original commit message from CVS:
* gst/gstbuffer.c: (gst_buffer_default_copy):
* gst/gstbuffer.h:
Added Comment to a flag.
copy relevant flags in _buffer_copy.
2004-05-20 17:44:03 +00:00
Thomas Vander Stichele
3e4573c20e add IN_CAPS buffer flag; add GST_TYPE_FIXED_LIST + functions
Original commit message from CVS:
add IN_CAPS buffer flag; add GST_TYPE_FIXED_LIST + functions
2004-05-20 17:03:02 +00:00
Thomas Vander Stichele
120f0271ac next time someone tells me to use the gst macros because they are better, they'd better be correct, damnit
Original commit message from CVS:
next time someone tells me to use the gst macros because they are better, they'd better be correct, damnit
2004-05-20 14:01:45 +00:00
Benjamin Otte
182b3195cd gst/gstvalue.c: fix int variable deserialization and add a helper so we can actually debug this.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_deserialize_int_helper):
fix int variable deserialization and add a helper so we can actually
debug this.
2004-05-19 14:20:46 +00:00
Benjamin Otte
05c2afa7f9 gst/gstbin.c: don't
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
don't
* gst/schedulers/entryscheduler.c: (safe_cothread_switch),
(safe_cothread_destroy),
(gst_entry_scheduler_remove_all_cothreads),
(gst_entry_scheduler_reset), (_remove_cothread),
(gst_entry_scheduler_state_transition):
hold off cothread destruction if we're not in main cothread
* configure.ac:
* testsuite/Makefile.am:
add new test dir
* testsuite/schedulers/.cvsignore:
* testsuite/schedulers/Makefile.am:
add tests
* testsuite/schedulers/relink.c: (cb_handoff), (main):
check relinking and adding/removing elements from a running pipeline
* testsuite/schedulers/unlink.c: (cb_handoff), (main):
check unlinking in a running pipeline
* testsuite/schedulers/unref.c: (cb_handoff), (main):
check unreffing a running pipeline
* testsuite/schedulers/useless_iteration.c: (main):
check iterating a pipeline that contains running threads works
2004-05-18 21:18:43 +00:00