Commit graph

3588 commits

Author SHA1 Message Date
Ronald S. Bultje
4795d25721 gst/base/gstbasetransform.c: Make debugging actually useful.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
(gst_base_transform_configure_caps), (gst_base_transform_setcaps),
(gst_base_transform_get_size), (gst_base_transform_handle_buffer):
Make debugging actually useful.
2005-07-27 15:05:45 +00:00
Ronald S. Bultje
8de129adc4 gst/gstpad.c: Implement default fixation once again, so that gst_pad_fixate() actually does anything at all. This pro...
Original commit message from CVS:
* gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
(gst_pad_fixate_caps):
Implement default fixation once again, so that gst_pad_fixate()
actually does anything at all. This probably needs to be some
sort of a last resort, and use profile-based fixation first, but
since that doesn't exist yet, this is the best we have. Fixes
visualization in Totem.
2005-07-25 12:31:08 +00:00
Wim Taymans
9f06376bab docs/design/part-events.txt: Small update.
Original commit message from CVS:
* docs/design/part-events.txt:
Small update.

* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_do_sync), (gst_base_sink_activate_push),
(gst_base_sink_activate_pull):
Some more comments.

* gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
(gst_fake_src_create):
Fix handoff marshall.

* gst/elements/gstidentity.c: (gst_identity_class_init),
(gst_identity_transform_ip):
We're a real inplace element.

* gst/gstbus.c: (gst_bus_post):
Added some comments.

* tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
* tests/muxing/case1.c: (main):
* tests/sched/dynamic-pipeline.c: (main):
* tests/sched/interrupt1.c: (main):
* tests/sched/interrupt2.c: (main):
* tests/sched/interrupt3.c: (main):
* tests/sched/runxml.c: (main):
* tests/sched/sched-stress.c: (main):
* tests/seeking/seeking1.c: (event_received), (main):
* tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
(main):
* tests/threadstate/threadstate3.c: (main):
* tests/threadstate/threadstate4.c: (main):
* tests/threadstate/threadstate5.c: (main):
Fix the tests.
2005-07-22 11:47:10 +00:00
Wim Taymans
030ff93e82 docs/design/part-seeking.txt: Some small additions.
Original commit message from CVS:
* docs/design/part-seeking.txt:
Some small additions.

* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_get_times), (gst_base_sink_do_sync),
(gst_base_sink_activate_push), (gst_base_sink_activate_pull):
* gst/base/gstbasesink.h:
discont values are gint64, handle the math correctly.

* gst/base/gstbasesrc.c: (gst_base_src_loop):
Make the basesrc report error if the source pad is not linked.

* gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
(gst_queue_loop), (gst_queue_handle_src_query),
(gst_queue_src_activate_push):
Make queue collect data even if the srcpad is not linked.
Start pushing out data as soon as it is linked.

* gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
* gst/gstutils.h:
Added gst_flow_get_name() to ease error reporting.
2005-07-21 17:22:13 +00:00
Wim Taymans
e261956ca6 gst/gstmessage.*: Added a bunch of messages for advanced seeking.
Original commit message from CVS:
* gst/gstmessage.c: (gst_message_new_segment_start),
(gst_message_new_segment_done), (gst_message_parse_segment_start),
(gst_message_parse_segment_done):
* gst/gstmessage.h:
Added a bunch of messages for advanced seeking.

* gst/parse/grammar.y:
* libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
(gst_dpman_state_changed):
Fix some new-pad -> pad-added signals
2005-07-20 18:02:13 +00:00
Ronald S. Bultje
3f62c7db23 GstElement::new-pad -> pad-added, GstElement::state-change -> state-changed, GstValueFixedList -> GstValueArray, add ...
Original commit message from CVS:
* docs/manual/advanced-autoplugging.xml:
* docs/manual/basics-helloworld.xml:
* docs/manual/basics-pads.xml:
* docs/random/ds/0.9-suggested-changes:
* gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
* gst/gstelement.h:
* gst/gstevent.h:
* gst/gstformat.h:
* gst/gstquery.h:
* gst/gststructure.c: (gst_structure_value_get_generic_type),
(gst_structure_parse_array), (gst_structure_parse_value):
* gst/gstvalue.c: (gst_type_is_fixed),
(gst_value_list_prepend_value), (gst_value_list_append_value),
(gst_value_list_get_size), (gst_value_list_get_value),
(gst_value_transform_array_string), (gst_value_serialize_array),
(gst_value_deserialize_array), (gst_value_intersect_array),
(gst_value_is_fixed), (_gst_value_initialize):
* gst/gstvalue.h:
GstElement::new-pad -> pad-added, GstElement::state-change ->
state-changed, GstValueFixedList -> GstValueArray, add format and
flags as their own arguments in gst_element_seek() (should improve
"bindeability"), remove function generators since they don't work
under a whole bunch of compilers (they were deprecated already
anyway).
2005-07-20 17:16:44 +00:00
Ronald S. Bultje
e333ec54c0 gst/gstinfo.*: Fix illegal cast on some platforms (#309253).
Original commit message from CVS:
* gst/gstinfo.c: (_gst_debug_nameof_funcptr),
(_gst_debug_register_funcptr):
* gst/gstinfo.h:
Fix illegal cast on some platforms (#309253).
2005-07-20 16:20:39 +00:00
Ronald S. Bultje
3b19336fcc gst/gstmessage.*: Add _new_custom, make _new_application a macro to _new_custom.
Original commit message from CVS:
* gst/gstmessage.c: (gst_message_new_custom):
* gst/gstmessage.h:
Add _new_custom, make _new_application a macro to _new_custom.
2005-07-20 11:35:18 +00:00
Wim Taymans
f73fb55d1e gst/base/gstbasesrc.*: Add a gboolean to decide when to push out a discont.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_init),
(gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
* gst/base/gstbasesrc.h:
Add a gboolean to decide when to push out a discont.

* gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
(gst_queue_loop), (gst_queue_handle_src_query),
(gst_queue_sink_activate_push), (gst_queue_src_activate_push),
(gst_queue_set_property), (gst_queue_get_property):
Some cleanups.

* tests/threadstate/threadstate1.c: (main):
Make a thread test compile and run... very silly..
2005-07-20 10:58:10 +00:00
Wim Taymans
f529a0bafc gst/gstqueue.*: Propagate GstFlowReturn more intelligently upstream and output an ERROR/EOS when streaming stopped du...
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
(gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
(gst_queue_handle_src_query), (gst_queue_sink_activate_push),
(gst_queue_src_activate_push), (gst_queue_change_state),
(gst_queue_get_property):
* gst/gstqueue.h:
Propagate GstFlowReturn more intelligently upstream and output
an ERROR/EOS when streaming stopped due to fatal error.
2005-07-19 17:46:37 +00:00
Wim Taymans
737969ce5b gst/base/gstbasesrc.c: Make sure we never call the create function is we got deactivated.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_get_range):
Make sure we never call the create function is we
got deactivated.
2005-07-19 13:43:50 +00:00
Andy Wingo
1d2f26f522 gst/parse/parse.l: Attempt to solve bug #172815.
Original commit message from CVS:
2005-07-19  Andy Wingo  <wingo@pobox.com>

* gst/parse/parse.l: Attempt to solve bug #172815.
2005-07-19 10:40:49 +00:00
Wim Taymans
99a3a0a6c0 Small docs updates.
Original commit message from CVS:
* docs/design/part-clocks.txt:
* docs/design/part-events.txt:
* gst/base/gstbasesrc.c: (gst_base_src_do_seek):
Small docs updates.
Only update the seeking values when we are not
busy streaming.
2005-07-19 09:19:06 +00:00
Jan Schmidt
690e87b1fd Oops, ignore the result of gst_pad_push_event here.
Original commit message from CVS:
Oops, ignore the result of gst_pad_push_event here.
2005-07-18 17:43:52 +00:00
Jan Schmidt
518e590f8b gst/base/gstbasesrc.c: Send discont event from the loop function, as pads aren't activated yet in the activate_push h...
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_loop),
(gst_base_src_activate_push):
Send discont event from the loop function, as pads
aren't activated yet in the activate_push handler.

* gst/gstbin.c: (bin_bus_handler):
Don't leak element name.
2005-07-18 17:12:36 +00:00
Wim Taymans
e1aeec6d77 Removed plugable schedulers.
Original commit message from CVS:
Removed plugable schedulers.
Removed Scheduler/Manager from elements.
Removed gsttypes.h, rearranged includes.
Removed dependency pad<->element, element<>pipeline, and
various others,  fix includes.
implement gst_pad_get_parent() with gst_object_get_parent()
Make GstTask sefcontained.
Fix _get_state() on GstBin, it did not return ASYNC with a 0
timeout.
Fix endless loop in iterator_fold_with_resync.
2005-07-18 12:49:53 +00:00
Wim Taymans
fba0bf771b gst/: Remove old file.
Original commit message from CVS:
* gst/Makefile.am:
* gst/gstarch.h:
Remove old file.
2005-07-18 09:22:55 +00:00
Wim Taymans
5ebba480f0 gst/Makefile.am: No more cothreads.h
Original commit message from CVS:
* gst/Makefile.am:
No more cothreads.h
2005-07-18 08:51:31 +00:00
Wim Taymans
d454303dfe gst/cothreads.*: Let's remove these.
Original commit message from CVS:
* gst/cothreads.c:
* gst/cothreads.h:
Let's remove these.
2005-07-18 08:43:27 +00:00
Wim Taymans
2b1ce5f29e docs/design/: Some more docs in the works.
Original commit message from CVS:
* docs/design/part-dynamic.txt:
* docs/design/part-events.txt:
* docs/design/part-seeking.txt:
Some more docs in the works.

* gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
(gst_base_transform_getcaps), (gst_base_transform_configure_caps),
(gst_base_transform_setcaps), (gst_base_transform_get_size),
(gst_base_transform_buffer_alloc), (gst_base_transform_event),
(gst_base_transform_handle_buffer),
(gst_base_transform_sink_activate_push),
(gst_base_transform_src_activate_pull),
(gst_base_transform_set_passthrough),
(gst_base_transform_is_passthrough):
Refcounting fixes.

* gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
Cleanups.

* gst/gstevent.c: (gst_event_finalize):
Set SRC to NULL.

* gst/gstutils.c: (gst_element_unlink),
(gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
(gst_pad_proxy_setcaps):
* gst/gstutils.h:
Add _get_parent_element() to get a pads parent as an element.
2005-07-18 08:28:48 +00:00
Wim Taymans
56453e01b9 gst/base/gstbasesink.c: Refcounting fixes.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
(gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
(gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
(gst_base_sink_event), (gst_base_sink_do_sync),
(gst_base_sink_chain), (gst_base_sink_loop),
(gst_base_sink_deactivate), (gst_base_sink_activate_push),
(gst_base_sink_activate_pull), (gst_base_sink_change_state):
Refcounting fixes.
Fix logic for returning ASYNC when not prerolled.
2005-07-17 22:26:02 +00:00
Wim Taymans
e5c9ef1341 gst/gstqueue.c: Fix nasty refcount bug.
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_handle_sink_event):
Fix nasty refcount bug.
2005-07-17 22:22:52 +00:00
Philippe Kalaf
cb5b884215 Moved fdsrc to gst-plugins.
Original commit message from CVS:
Moved fdsrc to gst-plugins.
2005-07-16 19:25:41 +00:00
Philippe Kalaf
4b888578a0 gst/elements/gstfdsrc.c gst/elements/gstfdsrc.h gst/elements/gstelements.c gst/elements/Makefile.am
Original commit message from CVS:
2005-07-16 Philippe Khalaf <burger@speedy.org>
* gst/elements/gstfdsrc.c
* gst/elements/gstfdsrc.h
* gst/elements/gstelements.c
* gst/elements/Makefile.am
Ported fdsrc to 0.9.
2005-07-16 15:41:04 +00:00
Wim Taymans
11bc479656 gst/base/gstbasesink.c: Fix compile error.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_do_sync):
Fix compile error.
2005-07-16 14:52:15 +00:00
Wim Taymans
d5be929bf8 gst/base/gstbasesink.*: Store and use discont values when syncing buffers as described in design docs.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_event), (gst_base_sink_get_times),
(gst_base_sink_do_sync), (gst_base_sink_change_state):
* gst/base/gstbasesink.h:
Store and use discont values when syncing buffers as described
in design docs.

* gst/base/gstbasesrc.c: (gst_base_src_send_discont),
(gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
(gst_base_src_activate_push):
Push discont event when starting.

* gst/elements/gstidentity.c: (gst_identity_transform):
Small cleanups.

* gst/gstbin.c: (gst_bin_change_state):
Small cleanups in base_time  distribution.

* gst/gstelement.c: (gst_element_set_base_time),
(gst_element_get_base_time), (gst_element_change_state):
* gst/gstelement.h:
Added methods for the base_time of the element.
Some MT fixes.

* gst/gstpipeline.c: (gst_pipeline_send_event),
(gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
(gst_pipeline_get_last_stream_time):
* gst/gstpipeline.h:
MT fixes.
Handle seeking as described in design doc, remove stream_time
hack.
Cleanups clock and stream_time selection code. Added accessors
for the stream_time.
2005-07-16 14:41:25 +00:00
Andy Wingo
d3ffeea70a gst/gsterror.c (_gst_core_errors_init): Use the magic word..
Original commit message from CVS:
2005-07-16  Andy Wingo  <wingo@pobox.com>

* gst/gsterror.c (_gst_core_errors_init): Use the magic word..
2005-07-16 14:06:21 +00:00
Wim Taymans
f89689b7e6 check/gst/gstbin.c: Make elements silent as the deep_notify refs the parent, which might make the test fail.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
Make elements silent as the deep_notify refs the
parent, which might make the test fail.

* gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
Don't hold the lock for too long.
2005-07-16 13:50:37 +00:00
Tim-Philipp Müller
d34751b8c2 gst/base/gstbasesrc.c: Don't unref the caps we passed to gst_caps_make_writable() after passing them. gst_caps_make_w...
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
Don't unref the caps we passed to gst_caps_make_writable() after
passing them. gst_caps_make_writable() will do that for us.
2005-07-16 12:33:13 +00:00
Andy Wingo
1ac0654d11 gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro (#157311).
Original commit message from CVS:
2005-07-15  Andy Wingo  <wingo@pobox.com>

* gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
(#157311).
2005-07-15 16:10:41 +00:00
Andy Wingo
096d369bb3 gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our own marshalling function for the handoff signal. Pro...
Original commit message from CVS:
2005-07-15  Andy Wingo  <wingo@pobox.com>

* gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
own marshalling function for the handoff signal. Properly type the
buffer as a buffer. Fixes some warnings. Should do a more general
solution.
(gst_identity_class_init): Plug into the right marshaller.
2005-07-15 14:59:22 +00:00
Andy Wingo
ad1970eae2 tools/gst-typefind.c: Update, add copyright block.
Original commit message from CVS:
2005-07-15  Andy Wingo  <wingo@pobox.com>

* tools/gst-typefind.c: Update, add copyright block.

* gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
Normalize and truncate caps before fixation.

* gst/gstcaps.h:
* gst/gstcaps.c (gst_caps_truncate): New function, destructively
discards all but the first structure from its argument.
2005-07-15 11:04:18 +00:00
Wim Taymans
7f4581d977 gst/base/gstbasetransform.*: Make passthrough work using the bufferpools.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_init),
(gst_base_transform_transform_caps), (gst_base_transform_getcaps),
(gst_base_transform_configure_caps), (gst_base_transform_setcaps),
(gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
(gst_base_transform_handle_buffer), (gst_base_transform_getrange),
(gst_base_transform_chain), (gst_base_transform_change_state),
(gst_base_transform_set_passthrough),
(gst_base_transform_is_passthrough):
* gst/base/gstbasetransform.h:
Make passthrough work using the bufferpools.
Changed API a bit, subclasses have to write into a buffer
provided by the base class.
More debug info in nego functions.

* gst/elements/gstidentity.c: (gst_identity_init),
(gst_identity_transform):
Port to new base class.
2005-07-15 10:41:32 +00:00
Wim Taymans
a8d8310819 Totally dump messages in -launch with the -m option.
Original commit message from CVS:
* gst/gstmessage.c: (gst_message_new_state_changed):
* tools/gst-launch.c: (event_loop), (main):
Totally dump messages in -launch with the -m option.
Fix message name for State messages,
2005-07-15 10:30:49 +00:00
Wim Taymans
40a158fa44 gst/base/gstbasesrc.c: Post error messages on errors.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_loop):
Post error messages on errors.
2005-07-14 18:45:51 +00:00
Wim Taymans
9ace74670e gst/gstcaps.c: Remove debug info.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_do_simplify):
Remove debug info.

* gst/gsterror.h:
Define error for stream stopped.

* gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
(gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
Do proper return values.

* gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
(gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
(gst_pad_get_range):
Better return values.

* gst/gstpad.h:
Reorganise return values, add macro to check for fatal errors.

* gst/gstqueue.c: (gst_queue_chain):
Return proper GstFlowReturn values,
2005-07-14 18:10:04 +00:00
Thomas Vander Stichele
259dec97fd more autistic cleanliness in functions/names/defines
Original commit message from CVS:
more autistic cleanliness in functions/names/defines
2005-07-14 09:35:12 +00:00
Thomas Vander Stichele
2ad8bc5a02 fix debug ifdef
Original commit message from CVS:
fix debug ifdef
2005-07-13 18:29:41 +00:00
Andy Wingo
9cb62f69e3 gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the source couldn't negotiate.
Original commit message from CVS:
2005-07-13  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
source couldn't negotiate.
2005-07-13 16:26:07 +00:00
Wim Taymans
f7c0c25d58 gst/base/gstbasetransform.c: Added more debug info in the negotiate process.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
Added more debug info in the negotiate process.

* gst/gstmessage.h:
Prepare for segment playback.

* gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
Better debugging.

* gst/gstutils.c:
Some more docs.

* tools/gst-launch.c: (main):
NULL pipeline on errors.
2005-07-12 17:17:34 +00:00
Andy Wingo
c09555552a gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or not it comes from a malloc region. Make sure our copy ...
Original commit message from CVS:
2005-07-12  Andy Wingo  <wingo@pobox.com>

* gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
not it comes from a malloc region. Make sure our copy gets freed.
2005-07-12 17:04:41 +00:00
Thomas Vander Stichele
232b0ba690 fix refcounting of warning and error messages
Original commit message from CVS:
fix refcounting of warning and error messages
2005-07-12 16:28:36 +00:00
Thomas Vander Stichele
b7e7148a4c check/Makefile.am: instate more valgrindable tests
Original commit message from CVS:
2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>

* check/Makefile.am:
instate more valgrindable tests
* check/elements/gstfakesrc.c: (chain_func), (event_func),
(GST_START_TEST), (fakesrc_suite):
* check/gst/gstpad.c: (GST_START_TEST):
* check/gst/gststructure.c: (GST_START_TEST):
fix test leaks
* docs/gst/tmpl/gstminiobject.sgml:
* gst/gstpad.c: (gst_pad_finalize):
fix the static mutex leak
2005-07-12 09:41:00 +00:00
Thomas Vander Stichele
0794b693d9 check/Makefile.am: add two more tests for valgrinding
Original commit message from CVS:
* check/Makefile.am:
add two more tests for valgrinding
* check/gst/gstvalue.c: (GST_START_TEST):
test refcount of deserialized buffer, found a leak
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* docs/gst/gstreamer.types:
* docs/gst/tmpl/gstminiobject.sgml:
add miniobject to docs
* gst/gstminiobject.c:
add some docs
* gst/gstvalue.c: (gst_value_deserialize_buffer),
(gst_string_unwrap):
fix a hard-to-find invalid write for one of the tests
fix a leak for deserialized buffers
2005-07-11 18:41:49 +00:00
Thomas Vander Stichele
a59215bb4e valgrind unit tests as check-local; add gst_deinit
Original commit message from CVS:
valgrind unit tests as check-local; add gst_deinit
2005-07-11 15:10:40 +00:00
Thomas Vander Stichele
aff85422dc add num-buffers property to basesrc
Original commit message from CVS:
add num-buffers property to basesrc
2005-07-11 15:06:27 +00:00
Thomas Vander Stichele
82596fea62 more macro splitting
Original commit message from CVS:
more macro splitting
2005-07-10 12:03:13 +00:00
Thomas Vander Stichele
3127459e22 gst/gstelement.c: add debug
Original commit message from CVS:

* gst/gstelement.c: (gst_element_get_bus):
add debug
* tools/gst-launch.c: (check_intr), (event_loop):
fix bus leaks
2005-07-10 00:07:51 +00:00
Thomas Vander Stichele
7d8c811095 fix caps leak in both cases
Original commit message from CVS:
fix caps leak in both cases
2005-07-09 23:52:07 +00:00
Thomas Vander Stichele
351230b554 duh, remove unused var
Original commit message from CVS:
duh, remove unused var
2005-07-09 23:48:45 +00:00
Thomas Vander Stichele
84caeeb557 fix a caps leak
Original commit message from CVS:
fix a caps leak
2005-07-09 23:47:23 +00:00
Thomas Vander Stichele
51bfa5c30b gst/base/gstbasesrc.c: add finalize method and clean up properly
Original commit message from CVS:

* gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_finalize):
add finalize method and clean up properly
* gst/gstpipeline.c: (gst_pipeline_dispose):
add debug
2005-07-09 23:33:24 +00:00
Thomas Vander Stichele
3f768e81e7 don't get src for all messages; only for eos
Original commit message from CVS:
don't get src for all messages; only for eos
2005-07-09 23:15:27 +00:00
Thomas Vander Stichele
fe31300609 check/gst/gstbin.c: add more things to check
Original commit message from CVS:

* check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
(gst_bin_suite):
add more things to check
* gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
* gst/gstelement.c:
more debug
2005-07-09 22:54:28 +00:00
Thomas Vander Stichele
48464956ca check/gst/gstbin.c: add test for state change message on a bin
Original commit message from CVS:

* check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
add test for state change message on a bin
* check/gst/gstelement.c: (START_TEST), (gst_element_suite):
add another test
* gst/gstbin.c: (gst_bin_init):
* gst/gstbus.c: (gst_bus_init), (gst_bus_post):
* gst/gstelement.c: (gst_element_post_message),
(gst_element_set_state):
* gst/gstelementfactory.c: (gst_element_factory_create):
* gst/gstmessage.c: (gst_message_new):
* gst/gstscheduler.c:
various debugging additions and cleanups
2005-07-09 15:18:53 +00:00
Thomas Vander Stichele
240c8e10cf adding tests for elements
Original commit message from CVS:
adding tests for elements
2005-07-08 16:41:45 +00:00
Thomas Vander Stichele
f3d8a28662 gst/registries/gstlibxmlregistry.c: plug more leaks. A simple gst_init() now is leakfree, yay.
Original commit message from CVS:

* gst/registries/gstlibxmlregistry.c: (load_feature):
plug more leaks.  A simple gst_init() now is leakfree, yay.
2005-07-08 16:16:29 +00:00
Thomas Vander Stichele
c527fd8dad plug another memleak in registry loading - I have NO idea why this was returning a GstPlugin
Original commit message from CVS:
plug another memleak in registry loading - I have NO idea why this was returning a GstPlugin
2005-07-08 16:08:16 +00:00
Thomas Vander Stichele
34445bec34 I need to learn to stop doing this
Original commit message from CVS:
I need to learn to stop doing this
2005-07-08 14:50:44 +00:00
Thomas Vander Stichele
f627c78fa6 configure.ac: make GST_ERROR_CFLAGS overridable and re-enable Werror
Original commit message from CVS:
* configure.ac:
make GST_ERROR_CFLAGS overridable and re-enable Werror
* docs/faq/cvs.xml:
add a note about error CFLAGS
* docs/gst/tmpl/gstfakesrc.sgml:
* gst/elements/gstfakesrc.c:
comment out some unused code
* gst/gst.c: (split_and_iterate):
* gst/registries/gstlibxmlregistry.c: (load_pad_template),
(load_feature):
plug some memleaks
2005-07-08 14:01:31 +00:00
Wim Taymans
adf701a8cc gst/schedulers/threadscheduler.c: Unlock the STREAM_LOCK completely.
Original commit message from CVS:
* gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
(gst_thread_scheduler_dispose):
Unlock the STREAM_LOCK completely.
2005-07-07 14:01:47 +00:00
Thomas Vander Stichele
48cef19743 adding an element test
Original commit message from CVS:
adding an element test
2005-07-07 11:59:37 +00:00
Andy Wingo
a1457cff29 gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating debug message.
Original commit message from CVS:
2005-07-07  Andy Wingo  <wingo@pobox.com>

* gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
debug message.
2005-07-07 11:09:32 +00:00
Wim Taymans
b9880f8a26 gst/gstquery.*: Remove old types
Original commit message from CVS:
* gst/gstquery.c:
* gst/gstquery.h:
Remove old types
2005-07-07 08:43:17 +00:00
Wim Taymans
c985c341ab gst/base/gstbasesrc.c: Allow subclasses to implement their own negotiation.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_get_range),
(gst_base_src_default_negotiate), (gst_base_src_negotiate):
Allow subclasses to implement their own negotiation.
2005-07-07 08:16:54 +00:00
Jan Schmidt
ba5cecf321 examples/: Update a couple of the examples to work again.
Original commit message from CVS:
* examples/Makefile.am:
* examples/helloworld/helloworld.c: (event_loop), (main):
* examples/queue/queue.c: (event_loop), (main):
* examples/queue2/queue2.c: (main):
Update a couple of the examples to work again.

* gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
(gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
Spelling corrections and extra debug.

* gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
(gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
(gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
* gst/gstbin.h:
* gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
(gst_pipeline_change_state):
* gst/gstpipeline.h:
Move the bus handler for children to the GstBin, and create a
separate bus for receiving messages from children to the one the
bus sends 'upwards' on.
2005-07-06 16:22:47 +00:00
Wim Taymans
03aa950f7d gst/base/: Make basesrc negotiate.
Original commit message from CVS:
* gst/base/README:
* gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
(gst_base_sink_handle_object), (gst_base_sink_loop),
(gst_base_sink_change_state):
* gst/base/gstbasesink.h:
* gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_init), (gst_base_src_setcaps),
(gst_base_src_getcaps), (gst_base_src_loop),
(gst_base_src_default_negotiate), (gst_base_src_negotiate),
(gst_base_src_start), (gst_base_src_change_state):
* gst/base/gstbasesrc.h:
Make basesrc negotiate.
Handle the case where preroll fails in basesink.
Update README.
2005-07-06 13:25:26 +00:00
Wim Taymans
7ce828ba3a gst/gstpad.c: Implement the fixate function.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
Implement the fixate function.
Clean up acceptcaps.
2005-07-06 13:20:47 +00:00
Thomas Vander Stichele
b9f6a4d4ee if pad has no parent, return NULL as list of internal links
Original commit message from CVS:

* check/gst/gstpad.c:
* check/gstcheck.c:
* gst/gstpad.c: (gst_pad_get_internal_links_default):
if pad has no parent, return NULL as list of internal links
2005-07-06 11:31:57 +00:00
Andy Wingo
0675bff0fc gst/: s/BASESRC/BASE_SRC/g.
Original commit message from CVS:
2005-07-05  Andy Wingo  <wingo@pobox.com>

* gst/elements/gstfilesrc.c:
* gst/elements/gstfakesrc.c:
* gst/base/gstpushsrc.c:
* gst/base/gstbasesrc.h:
* gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
2005-07-05 16:38:13 +00:00
Andy Wingo
82a5239bfe gst/elements, testsuite: Null if we got it...
Original commit message from CVS:
2005-07-05  Andy Wingo  <wingo@pobox.com>

* gst/elements, testsuite: Null if we got it...
2005-07-05 10:58:21 +00:00
Andy Wingo
fd980b9f72 gst/base/gstbasetransform.c (gst_base_transform_setcaps): Default to returning TRUE for the case when tranform_caps r...
Original commit message from CVS:
2005-07-05  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasetransform.c (gst_base_transform_setcaps):
Default to returning TRUE for the case when tranform_caps returns
a fixed caps, like for identity or volume.
2005-07-05 09:35:22 +00:00
Andy Wingo
83a7075f8a check/: Application message API change.
Original commit message from CVS:
2005-07-05  Andy Wingo  <wingo@pobox.com>

* check/gst/gstbus.c (pound_bus_with_messages):
* check/gst/gstmessage.c (START_TEST):
* check/pipelines/simple_launch_lines.c (got_handoff): Application
message API change.

* gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
logic weaks here: always run transform_caps, trying passthrough
operation only if the original caps intersects with the transform.

* gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
source and sink caps.

* gst/base/gstbasetransform.c (gst_base_transform_getcaps):
Intersect the peer caps with the pad template before going into
transform_caps.
(gst_base_transform_transform_caps): More debugging.

* gst/gstmessage.h (gst_message_new_application): Take a GstObject
src argument.
2005-07-05 08:47:40 +00:00
Edward Hervey
e3141fc8f5 gst/gstutils.*: now returns the signal id for better wrapping in bindings.
Original commit message from CVS:
* gst/gstutils.c:
* gst/gstutils.h:
(gst_pad_add_*_probe): now returns the signal id for better wrapping
in bindings.
2005-07-04 15:08:30 +00:00
Andy Wingo
c1d34b8acf tests/network-clock.scm: Commentary update.
Original commit message from CVS:
2005-07-01  Andy Wingo  <wingo@pobox.com>

* tests/network-clock.scm: Commentary update.

* gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
Didn't really make sense, not implementable with basetransform,
etc.
(gst_identity_transform): Unref inbuf via make_writable. Feeble
attempt at implementing the sync property, needs an unlock method.

* gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
New func, by default returns the same caps (the identity
transformation).
(gst_base_transform_getcaps): Uses transform_caps to return
something sensible.
(gst_base_transform_setcaps): Complicated logic to get caps on
both pads, even if they are different, and to call set_caps once
for every time both pads get their caps set.
(gst_base_transform_handle_buffer): Give the ref to the transform
function. Allows in-place modification of the buffer.

* gst/base/gstbasetransform.h (transform_caps): New class method.
Given caps on one side, what can I do on the other.
(set_caps): Take two caps, one for each side of the element.

* gst/gstpad.h:
* gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
caps in place. This is safe because we can check the mutability of
the caps, and a good idea because fixate functions are just called
as a matter of last resort. (Not actually implemented.)
(gst_pad_set_caps): If the caps we're setting is actually the same
as the existing pad caps, just update the pointer without calling
setcaps. Assert that caps is either NULL or fixed, as per the
docs.

* gst/gstghostpad.c: Update for fixate changes.
2005-07-01 16:46:59 +00:00
Jan Schmidt
e762446852 gst/gstpad.c: Put the mini_object into GValue as a mini_object, not a gpointer.
Original commit message from CVS:
2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>

* gst/gstpad.c: (gst_pad_emit_have_data_signal):
Put the mini_object into GValue as a mini_object,
not a gpointer.
2005-07-01 14:36:12 +00:00
Thomas Vander Stichele
4507397788 debug disable fixes
Original commit message from CVS:
debug disable fixes
2005-06-30 12:26:26 +00:00
Wim Taymans
4dd878f93b Added CHANGES-0.9 doc, updated status of other docs.
Original commit message from CVS:
* CHANGES-0.9:
* docs/design/draft-ghostpads.txt:
* docs/design/draft-push-pull.txt:
* docs/design/draft-query.txt:
* docs/design/part-TODO.txt:
* docs/design/part-query.txt:
Added CHANGES-0.9 doc, updated status of other docs.

* gst/gstquery.h:
Remove "hmm" macro
2005-06-30 12:18:19 +00:00
Wim Taymans
6a6a717235 gst/base/gstbasesink.*: Some tweaks, only EOS and a buffer complete a preroll.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
(gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
(gst_base_sink_change_state):
* gst/base/gstbasesink.h:
Some tweaks, only EOS and a buffer complete a preroll.
2005-06-30 12:14:47 +00:00
Andy Wingo
6da6bc4530 gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy activate_push down to the internal pad as well.
Original commit message from CVS:
2005-06-30  Andy Wingo  <wingo@pobox.com>

* gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
activate_push down to the internal pad as well.
2005-06-30 11:39:34 +00:00
Ronald S. Bultje
6c8dc39ee4 gst/gsttaginterface.c: Some documentation fixes (#307394 and #307397).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/gsttaginterface.c:
Some documentation fixes (#307394 and #307397).
2005-06-30 10:59:34 +00:00
Ronald S. Bultje
f05cd57bf2 gst/gstvalue.c: Fix memleak (#309125).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/gstvalue.c: (gst_value_intersect_list):
Fix memleak (#309125).
2005-06-30 10:10:00 +00:00
Wim Taymans
a578cfd009 gst/gstbin.c: Lame attempt at making the state change function a bit more readable.
Original commit message from CVS:
* gst/gstbin.c: (clear_queue), (remove_all_from_queue),
(gst_bin_change_state):
Lame attempt at making the state change function a bit
more readable.
2005-06-30 09:41:15 +00:00
Wim Taymans
092745b46d gst/: Removed atomic operations, use existing LOCK.
Original commit message from CVS:
* gst/gstpad.c: (_gst_do_pass_data_accumulator),
(default_have_data), (gst_pad_class_init), (gst_pad_init),
(gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
(gst_pad_check_pull_range), (gst_pad_get_range),
(gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
* gst/gstpad.h:
* gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
(gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
(gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
(gst_pad_remove_buffer_probe):
Removed atomic operations, use existing LOCK.
Move exception handling out of main code path.
2005-06-30 09:23:54 +00:00
Ronald S. Bultje
a220106c57 gst/gstpad.c: Fix accumulator, add default value by using _emitv() instead of _emit() for signal emission.
Original commit message from CVS:
* gst/gstpad.c: (_gst_do_pass_data_accumulator),
(silly_return_true_function), (gst_pad_class_init),
(gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
(gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
(gst_pad_send_event):
Fix accumulator, add default value by using _emitv() instead
of _emit() for signal emission.
2005-06-29 19:20:07 +00:00
Ronald S. Bultje
af3acddad9 Add probe example.
Original commit message from CVS:
* docs/manual/advanced-dataaccess.xml:
* examples/manual/Makefile.am:
Add probe example.
* gst/gstpad.c: (_gst_do_pass_data_accumulator):
Make work (??).
2005-06-29 16:57:59 +00:00
Thomas Vander Stichele
faf3c9d652 fix for ppc, hopefully
Original commit message from CVS:
fix for ppc, hopefully
2005-06-29 16:45:58 +00:00
Tim-Philipp Müller
38565eafdb gst/elements/gstfilesink.c: Simplify code so that we don't have to handle short writes and return GST_FLOW_ERROR if a...
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_filesink_render):
Simplify code so that we don't have to handle short
writes and return GST_FLOW_ERROR if an error occured.
2005-06-29 16:11:12 +00:00
Ronald S. Bultje
d13478b357 Remove old probes, add new g-signal-based probes and some utility functions.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/gstpad.sgml:
* docs/gst/tmpl/gstprobe.sgml:
* gst/Makefile.am:
* gst/gstpad.c: (_gst_do_pass_data_accumulator),
(gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
(gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
(gst_pad_push_event), (gst_pad_send_event):
* gst/gstpad.h:
* gst/gstutils.c: (gst_pad_add_data_probe),
(gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
(gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
(gst_pad_remove_buffer_probe):
* gst/gstutils.h:
Remove old probes, add new g-signal-based probes and some utility
functions.
2005-06-29 15:51:25 +00:00
Edward Hervey
6aa149a930 gst/: Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added the definition to the header file.
Original commit message from CVS:
* gst/gstelementfactory.c:
* gst/gstutils.h:
* gst/gstutils.c:
Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
the definition to the header file.
2005-06-29 15:17:25 +00:00
Thomas Vander Stichele
80717cb5d1 logic was reversed, duh
Original commit message from CVS:
logic was reversed, duh
2005-06-29 12:40:39 +00:00
Thomas Vander Stichele
a30e9069d1 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will only scan the GST_PLUGIN_PATH locations, and not add system...
Original commit message from CVS:

* check/Makefile.am:
* gst/gst.c: (add_path_func), (init_pre):
* gst/gstregistry.c: (gst_registry_add_path):
add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
only scan the GST_PLUGIN_PATH locations, and not add
system locations
2005-06-29 12:25:05 +00:00
Thomas Vander Stichele
bd728f0b2c doc fixes
Original commit message from CVS:
doc fixes
2005-06-29 12:23:35 +00:00
Wim Taymans
06ab4b7831 gst/base/gstbasesink.c: Small debug line.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_change_state):
Small debug line.

* gst/gstclock.h:
map SIGNAL and BROADCAST to the right function.

* gst/gstobject.h:
Remove redundant braces.

* gst/gstpad.c: (gst_pad_set_caps):
Don't call setcaps function when reseting caps to NULL.

* gst/gstsystemclock.c: (gst_system_clock_dispose),
(gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
(gst_system_clock_id_unschedule):
Use BROADCAST as this is what we do.
2005-06-29 11:10:44 +00:00
Wim Taymans
a34bc0bd60 gst/base/gstbasesink.c: We are actually prerolling before commiting the state change.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
We are actually prerolling before commiting the state
change.
2005-06-29 10:24:08 +00:00
Wim Taymans
bd72354e9a gst/gstbus.c: Add debugging messages.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
(gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
(gst_bus_source_dispatch):
Add debugging messages.
Make internal methods static.
Handle the case where the bus is flushed in the handler.

* gst/gstelement.c: (gst_element_get_bus):
Fix refcount in _get_bus();

* gst/gstpipeline.c: (gst_pipeline_change_state),
(gst_pipeline_get_clock_func):
Clock refcounting fixes.
Handle the case where preroll timed out more gracefully.

* gst/gstsystemclock.c: (gst_system_clock_dispose):
Clean up the internal thread in dispose. This is needed
for subclasses that actually get disposed.

* gst/schedulers/threadscheduler.c:
(gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
(gst_thread_scheduler_dispose):
Free thread pool in dispose.
2005-06-28 19:45:26 +00:00
Wim Taymans
d0616cd459 gst/gstghostpad.c: Correctly proxy the check_pull_range function.
Original commit message from CVS:
* gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
(gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
(gst_proxy_pad_do_fixatecaps):
Correctly proxy the check_pull_range function.
2005-06-28 13:40:12 +00:00
Thomas Vander Stichele
e65ae0c3c8 fix fake elements too
Original commit message from CVS:
fix fake elements too
2005-06-28 12:45:21 +00:00
Thomas Vander Stichele
f0e5bb0a33 did s/bases(rc/ink)_/base_s(rc/ink)_/; wim wants to remove base completely, but that's for later
Original commit message from CVS:
did s/bases(rc/ink)_/base_s(rc/ink)_/; wim wants to remove base completely, but that's for later
2005-06-28 12:01:49 +00:00
Wim Taymans
de3be844ec gst/: The deprecated pad loop function is removed now.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
(gst_basesink_preroll_queue_flush):
* gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
* gst/elements/gsttee.c: (gst_tee_update_pad_functions):
* gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
(gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
(gst_proxy_pad_set_property):
* gst/gstpad.c:
* gst/gstpad.h:
* gst/gstqueue.c: (gst_queue_init):
The deprecated pad loop function is removed now.
2005-06-28 11:36:43 +00:00
Wim Taymans
7dc174d140 gst/base/gstbasesink.c: Flushing the preroll queue always needs to unlock the waiters.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
(gst_basesink_event), (gst_basesink_deactivate):
Flushing the preroll queue always needs to unlock the waiters.
2005-06-28 11:02:18 +00:00
Edward Hervey
2e75d2ae7e gst/gstpipeline.c: Wheen a seek was successful on a pipeline, set the stream_time to the seek offset in order to have...
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_send_event):
Wheen a seek was successful on a pipeline, set the stream_time to the
seek offset in order to have a synchronized stream_time.
2005-06-28 10:45:48 +00:00
Wim Taymans
57d529de3a gst/gstghostpad.c: Call wrapper function instead of just calling the function pointers. This takes care of any lockin...
Original commit message from CVS:
* gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
(gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
(gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
(gst_proxy_pad_do_fixatecaps):
Call wrapper function instead of just calling the function
pointers. This takes care of any locking and whatmore.
2005-06-28 10:37:24 +00:00
Wim Taymans
9a6500143f gst/gstpad.*: CONNECTED -> LINKED.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
(gst_pad_pull_range):
* gst/gstpad.h:
CONNECTED -> LINKED.
2005-06-28 10:28:31 +00:00
Andy Wingo
f8e79bdf86 *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large source-munging commit!!!
Original commit message from CVS:
2005-06-28  Andy Wingo  <wingo@pobox.com>

* *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
source-munging commit!!!
2005-06-28 09:59:01 +00:00
Andy Wingo
5016035bc6 gst/gstobject.c (gst_object_unref, gst_object_ref)
Original commit message from CVS:
2005-06-28  Andy Wingo  <wingo@pobox.com>

* gst/gstobject.c (gst_object_unref, gst_object_ref)
(gst_object_sink): Take gpointer arguments, not GstObject --
avoids casts. Like GLib.
2005-06-28 09:17:14 +00:00
Andy Wingo
1b02b1d741 gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy activate.
Original commit message from CVS:
2005-06-28  Andy Wingo  <wingo@pobox.com>

* gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
activate.
2005-06-28 08:41:43 +00:00
Andy Wingo
7fda2039b3 shut up gcc3
Original commit message from CVS:
shut up gcc3
2005-06-27 18:39:41 +00:00
Andy Wingo
f2cf753b17 gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any remaining buffer.
Original commit message from CVS:
2005-06-27  Andy Wingo  <wingo@pobox.com>

* gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
remaining buffer.

* gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
returns a sorted copy of the trace list.
(gst_alloc_trace_print_live): New API, only prints traces with
live objects. Sort the list.
(gst_alloc_trace_print_all): Sort the list.
(gst_alloc_trace_print): Align columns.

* gst/elements/gstttypefindelement.c:
* gst/elements/gsttee.c:
* gst/base/gstbasesrc.c:
* gst/base/gstbasesink.c:
* gst/base/gstbasetransform.c:
* gst/gstqueue.c: Adapt for pad activation changes.

* gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
sched.
(gst_pipeline_dispose): Drop ref on sched.

* gst/gstpad.c (gst_pad_init): Set the default activate func.
(gst_pad_activate_default): Push mode by default.
(pre_activate_switch, post_activate_switch): New stubs, things to
do before and after switching activation modes on pads.
(gst_pad_set_active): Take a boolean and not a mode, dispatch to
the pad's activate function to choose which mode to activate.
Shortcut on deactivation and call the right function directly.
(gst_pad_activate_pull): New API, (de)activates a pad in pull
mode.
(gst_pad_activate_push): New API, same for push mode.
(gst_pad_set_activate_function)
(gst_pad_set_activatepull_function)
(gst_pad_set_activatepush_function): Setters for new API.

* gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
Trace all miniobjects.
(gst_mini_object_make_writable): Unref the arg if we copy, like
gst_caps_make_writable.

* gst/gstmessage.c (_gst_message_initialize): No trace init.

* gst/gstghostpad.c (gst_proxy_pad_do_activate)
(gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
Adapt for new pad API.

* gst/gstevent.c (_gst_event_initialize): Don't initialize trace.

* gst/gstelement.h:
* gst/gstelement.c (gst_element_iterate_src_pads)
(gst_element_iterate_sink_pads): New API functions.

* gst/gstelement.c (iterator_fold_with_resync): New utility,
should fold into gstiterator.c in some form.
(gst_element_pads_activate): Simplified via use of fold and
delegation of decisions to gstpad->activate.

* gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
help in debugging.

* gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
class once in init, like gstmessage. Didn't run into this issue
but it seems correct. Don't initialize a trace, gstminiobject does
that.

* check/pipelines/simple_launch_lines.c (test_stop_from_app): New
test, runs fakesrc ! fakesink, stopping on ::handoff via a message
to the bus.
(assert_live_count): New util function, uses alloc traces to check
cleanup.

* check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
To be modified when unlink drops the internal pad.
2005-06-27 18:35:05 +00:00
Wim Taymans
adbd17c378 gst/gstbin.c: Cleanup the get_state() function a little, make sure it iterates the same set of elements.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
(gst_bin_change_state):
Cleanup the get_state() function a little, make sure it
iterates the same set of elements.
Added stub iterate_state_order().
2005-06-27 18:11:24 +00:00
Thomas Vander Stichele
0b44c713a7 adding basetransform and iterator docs
Original commit message from CVS:
adding basetransform and iterator docs
2005-06-27 14:40:09 +00:00
Thomas Vander Stichele
012d4ec9de more doc and whitespace fixes
Original commit message from CVS:
more doc and whitespace fixes
2005-06-27 08:16:51 +00:00
Wim Taymans
2d63826a90 gst/gstghostpad.c: At least get the chain function correct, needs more fixing.
Original commit message from CVS:
* gst/gstghostpad.c: (gst_proxy_pad_do_chain):
At least get the chain function correct, needs more
fixing.
2005-06-25 19:53:02 +00:00
Wim Taymans
97194517fe gst/: Right, two problems here: ghostpads don't take locks and glib _rec_mutex_lock_full() with depth==0 still locks.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
(gst_basesink_handle_object), (gst_basesink_event),
(gst_basesink_do_sync), (gst_basesink_handle_event),
(gst_basesink_change_state):
* gst/gsttask.h:
Right, two problems here: ghostpads don't take locks and
glib _rec_mutex_lock_full() with depth==0 still locks.
Catch illegal locking and g_warn them.
2005-06-25 19:37:59 +00:00
Wim Taymans
613dc3d631 gst/: Unlock STREAM_LOCK whatever the recursion was.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
(gst_basesink_handle_object), (gst_basesink_event),
(gst_basesink_do_sync), (gst_basesink_handle_event),
(gst_basesink_change_state):
* gst/gstpad.h:
Unlock STREAM_LOCK whatever the recursion was.
2005-06-25 19:09:28 +00:00
Wim Taymans
8303454db7 gst/base/gstbasesink.c: Reworked the base sink, handle event and buffer serialisation correctly and removed possible ...
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_set_property),
(gst_basesink_preroll_queue_empty),
(gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
(gst_basesink_event), (gst_basesink_do_sync),
(gst_basesink_handle_event), (gst_basesink_handle_buffer),
(gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
(gst_basesink_change_state):
Reworked the base sink, handle event and buffer serialisation
correctly and removed possible deadlock.
Handle EOS correctly.
2005-06-25 17:54:58 +00:00
Wim Taymans
4e9438da9f Allow elements to post EOS in the state change function.
Original commit message from CVS:
* gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
(gst_pipeline_change_state):
* tools/gst-launch.c: (check_intr), (event_loop), (main):
Allow elements to post EOS in the state change function.
Fix up -launch, make it exit the poll loop when the
pipeline actually changed state.
Fix up warning parsing in -launch.
2005-06-25 17:51:12 +00:00
Wim Taymans
f4f2cadeb5 gst/elements/gsttee.c: Core takes STREAM_LOCK for us now.
Original commit message from CVS:
* gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
(gst_tee_sink_activate):
Core takes STREAM_LOCK for us now.
2005-06-25 17:44:39 +00:00
Wim Taymans
2169b1a5d8 gst/: Keep track of current target state while performing a state change so that subclasses can do something interest...
Original commit message from CVS:
* gst/gstelement.c: (gst_element_get_state_func),
(gst_element_set_state):
* gst/gstelement.h:
* gst/gstmessage.c: (gst_message_parse_error),
(gst_message_parse_warning):
Keep track of current target state while performing a state
change so that subclasses can do something interesting.
Fix parsing of warning/error messages when GError is NULL.
2005-06-25 17:42:17 +00:00
Thomas Vander Stichele
87d6d3143b start pulling in base classes and elements for docs
Original commit message from CVS:
start pulling in base classes and elements for docs
2005-06-24 18:16:14 +00:00
Wim Taymans
52a445a41d gst/gstelement.c: When the state did not change, also report NO_PREROLL when it matters.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_get_state_func),
(gst_element_set_state), (gst_element_change_state):
When the state did not change, also report NO_PREROLL
when it matters.
2005-06-23 17:11:49 +00:00
Wim Taymans
d56ab76d57 gst/: No unsafe task pausing please.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_event_default):
* gst/gstqueue.c: (gst_queue_loop):
No unsafe task pausing please.
2005-06-23 17:09:21 +00:00
Wim Taymans
830a0368b4 gst/schedulers/threadscheduler.c: Ref the task before pushing it on the threadpool. This makes sure that we have a re...
Original commit message from CVS:
* gst/schedulers/threadscheduler.c:
(gst_thread_scheduler_task_start),
(gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
Ref the task before pushing it on the threadpool. This
makes sure that we have a ref when the threadfunction is
actually called.
2005-06-23 17:07:08 +00:00
Andy Wingo
09ab1d8fb2 gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the offset is greater than the file's size.
Original commit message from CVS:
2005-06-23  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
offset is greater than the file's size.
2005-06-23 15:26:09 +00:00
Andy Wingo
cc2d216e88 gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
Original commit message from CVS:
2005-06-23  Andy Wingo  <wingo@pobox.com>

* gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
(GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
* gst/gstobject.c (gst_object_class_init): Make the class lock
recursive. Wim won't let me drop deep_notify. Decodebin works
again, whoopdy doo.
2005-06-23 15:04:48 +00:00
Andy Wingo
57bfdb30e4 gst/gstghostpad.c (on_int_notify): Catches notify::caps on the internal pad, and hacks accordingly. Doesn't do it on ...
Original commit message from CVS:
2005-06-23  Andy Wingo  <wingo@pobox.com>

* gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
internal pad, and hacks accordingly. Doesn't do it on the target
pad because we change its caps. Probably catches all cases of
interest tho.
(gst_ghost_pad_set_property): Connect to notify::caps as
appropritate.
2005-06-23 14:18:15 +00:00
Jan Schmidt
8bd306b791 gst/elements/gsttypefindelement.c: Don't restart typefinding on a discont.
Original commit message from CVS:
2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>

* gst/elements/gsttypefindelement.c:
(gst_type_find_element_handle_event):
Don't restart typefinding on a discont.
* gst/gstelement.c: (gst_element_set_state):
Debug spelling fix.
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
Allow changing mode of an active pad.
Debug output fixes.
* gst/registries/gstlibxmlregistry.c: (load_feature):
Don't cast a static pad template to a normal pad template.
2005-06-23 11:43:39 +00:00
Thomas Vander Stichele
e6b233bb4d remove gst_strtoll completely, since it didn't actually do anything more than what g_ascii_strtoull already does.
Original commit message from CVS:
* check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
* gst/gstvalue.c: (gst_value_deserialize_int_helper):
remove gst_strtoll completely, since it didn't actually do
anything more than what g_ascii_strtoull already does.
check for range errors when deserializing
do a cast for the unsigned cases; but further fixing needs
a decision on what the interpretation of "(int)" and
deserialization should be for values that fall outside the
type's boundaries (ie, refuse, or interpret as casting)
2005-06-23 11:25:29 +00:00
Wim Taymans
1cda8197e9 Added support for live sources and other elements that cannot do preroll.
Original commit message from CVS:
Added support for live sources and other elements that
cannot do preroll.
Updated design docs, added live-source design doc.
Implemented live source functionality in basesrc
Fix error condition in _bin_get_state()
Implement live source handling in -launch.
Added check for live sources.
Fixed case in GstBin where elements were changed state
multiple times.
2005-06-23 10:37:09 +00:00
Andy Wingo
678bb923f1 commit the file
Original commit message from CVS:
commit the file
2005-06-23 09:41:41 +00:00
Andy Wingo
ee38ed3c9d gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full gst_pad_set_caps on the target, not just its setcaps() fu...
Original commit message from CVS:
2005-06-23  Andy Wingo  <wingo@pobox.com>

* gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
gst_pad_set_caps on the target, not just its setcaps() function.
2005-06-23 09:28:27 +00:00
Thomas Vander Stichele
c3efeeb64c check/: copy over from 0.8, and add two with bitmasks specified with (int) 0xFF...
Original commit message from CVS:
* check/Makefile.am:
* check/gst/capslist.h:
copy over from 0.8, and add two with bitmasks specified with
(int) 0xFF...
* check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
add test to parse everything from capslist.h
* check/gst/gststructure.c: (START_TEST), (gst_value_suite),
(main):
add test for structure deserialization
* check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
add tests for deserialization of strings to int types
* gst/gststructure.c: (gst_structure_nth_field_name):
* gst/gststructure.h:
add a way to get the name of a field referenced by index
* gst/gstvalue.c: (gst_value_deserialize_int_helper):
instead of checking if the resulting long long lies between
min and max, we check if the long long would fit into
a number of bytes for the final type.
This fixes cases where a string represents 2^32 - 1, which
when cast to int would be the (valid) -1, but is bigger than
G_MAXINT
2005-06-22 19:22:34 +00:00
Thomas Vander Stichele
8952d2c571 add a log line for type deserialization
Original commit message from CVS:
add a log line for type deserialization
2005-06-22 11:02:57 +00:00
Thomas Vander Stichele
bdc643ddb9 return long long, not int, so gint64 deserialization actually works. Is there any flag that makes the compiler check...
Original commit message from CVS:

* check/gst/gstvalue.c: (START_TEST):
* gst/gstvalue.c: (gst_value_deserialize):
return long long, not int, so gint64 deserialization actually
works.  Is there any flag that makes the compiler check this ?
Fixes #308559
2005-06-22 10:52:18 +00:00
Wim Taymans
202c113397 gst/gstbuffer.h: Added convenience macros for setting buffers in GValue.
Original commit message from CVS:
* gst/gstbuffer.h:
Added convenience macros for setting buffers in GValue.
2005-06-22 09:55:16 +00:00
Wim Taymans
5d66b9af57 gst/gstpad.c: Small doc updates.
Original commit message from CVS:
* gst/gstpad.c:
Small doc updates.

* gst/gstvalue.c: (gst_value_compare_buffer),
(gst_value_serialize_buffer), (gst_value_deserialize_buffer),
(gst_value_compare_flags), (gst_value_serialize_flags),
(gst_value_deserialize_flags), (_gst_value_initialize):
Fix serialisation of buffers, they are not boxed types anymore
2005-06-20 15:18:17 +00:00
Andy Wingo
3468457954 gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock if its socks fill with rocks.
Original commit message from CVS:
2005-06-20  Andy Wingo  <wingo@pobox.com>

* gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
if its socks fill with rocks.
(gst_system_clock_obtain): Set the name on object construction.
Avoid double-checked locking.
2005-06-20 11:41:17 +00:00
Tim-Philipp Müller
5910c2f938 gst/gsturi.c: Fix potential endless loop.
Original commit message from CVS:
* gst/gsturi.c: (gst_element_make_from_uri):
Fix potential endless loop.
2005-06-20 11:32:14 +00:00
Thomas Vander Stichele
d10d12dbcb check/Makefile.am: add gsttag
Original commit message from CVS:

* check/Makefile.am:
add gsttag
* check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
(main):
move over from testsuite dir and clean up
* configure.ac:
* gst/gsttag.c:
* testsuite/Makefile.am:
* testsuite/tags/.cvsignore:
* testsuite/tags/Makefile.am:
* testsuite/tags/merge.c:
remove testsuite/tags
2005-06-19 11:32:42 +00:00
Thomas Vander Stichele
0944ac134b some more docs cleanup
Original commit message from CVS:
some more docs cleanup
2005-06-19 10:54:12 +00:00
Thomas Vander Stichele
4ae0c46b63 check/gstcheck.h: add macros for checking refcounts on objects and caps
Original commit message from CVS:

* check/gstcheck.h:
add macros for checking refcounts on objects and caps
* check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
add some more unit tests
* gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
(gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
fix leaked refcounts (I hope :)) so unittest works
* gst/gstpad.h:
whitespace removal
2005-06-19 00:52:31 +00:00
Andy Wingo
355499790b gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus assert; it's always possible that the pad gets deactivated ...
Original commit message from CVS:
2005-06-17  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
assert; it's always possible that the pad gets deactivated in
between the checks in gstpad.c and the implementation. Rely on
finish_preroll() to return a FLUSHING or similar instead of on the
assert.
2005-06-17 11:58:48 +00:00
Andy Wingo
d47ea57975 gst/base/gstbasesink.c (gst_basesink_event): Only wait for the clock and post an EOS message if we come out of finish...
Original commit message from CVS:
2005-06-17  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
clock and post an EOS message if we come out of finish_preroll in
the playing state.
2005-06-17 11:33:27 +00:00
Thomas Vander Stichele
d85fc27ecb ignore more
Original commit message from CVS:
ignore more
2005-06-17 09:32:19 +00:00
Thomas Vander Stichele
dd9cc6adb7 ignore more
Original commit message from CVS:
ignore more
2005-06-17 09:12:33 +00:00
Thomas Vander Stichele
8a3824efac ignore more; fix README
Original commit message from CVS:
ignore more; fix README
2005-06-17 08:59:41 +00:00
David Schleef
6dbed89c01 gst/elements/gstcapsfilter.c: Allow NULL as possible value for filter_caps property, indicating GST_CAPS_ANY.
Original commit message from CVS:
* gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
(gst_capsfilter_set_property): Allow NULL as possible value
for filter_caps property, indicating GST_CAPS_ANY.
2005-06-16 17:50:16 +00:00
Thomas Vander Stichele
013b77e072 gst/elements/gstfakesrc.c: fix debug output
Original commit message from CVS:

* gst/elements/gstfakesrc.c: (gst_fakesrc_create):
fix debug output
* gst/schedulers/Makefile.am:
use libgst prefix
* gstreamer.spec.in:
fix spec for it
2005-06-09 13:33:00 +00:00
Andy Wingo
4b908e33e0 gst/gstutils.c: RPAD fixes all around.
Original commit message from CVS:
2005-06-08  Andy Wingo  <wingo@pobox.com>

* gst/gstutils.c: RPAD fixes all around.
(gst_element_link_pads): Refcounting fixes.

* tools/gst-inspect.c:
* tools/gst-xmlinspect.c:
* parse/grammar.y:
* gst/base/gsttypefindhelper.c:
* gst/base/gstbasesink.c:
* gst/gstqueue.c: RPAD fixes.

* gst/gstghostpad.h:
* gst/gstghostpad.c: New ghost pad implementation as full proxy
pads. The tricky thing is they provide both source and sink
interfaces, since they proxy the internal pad for the external
pad, and vice versa. Implement with lower-level ProxyPad objects,
with the interior proxy pad as a child of the exterior ghost pad.
Should write a doc on this.

* gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
(gst_pad_set_name, gst_pad_set_parent): Macros removed, use
gst_object API.

* gst/gstpad.c: Big changes. No more stub base GstPad, now all
pads are real pads. No ghost pads in this file. Not documenting
the myriad s/RPAD/PAD/ and REALIZE fixes.
(gst_pad_class_init): Add properties for "direction" and
"template". Both are construct-only, so they can't change during
the life of the pad. Fixes properly deriving from GstPad.
(gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
derived objects, just set properties when creating the objects via
g_object_new.
(gst_pad_get_parent): Implement as a function, return NULL if the
parent is not an element.
(gst_pad_get_real_parent, gst_pad_add_ghost_pad)
(gst_pad_remove_ghost_pad, gst_pad_realize): Removed.

* gst/gstobject.c (gst_object_class_init): Make name a construct
property. Don't set it in the object init.

* gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
with UNKNOWN direction.
(gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
(gst_element_remove_pad): Remove ghost-pad special cases.
(gst_element_pads_activate): Remove rpad cruft.

* gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
catch the pad's-parent-not-an-element case.

* gst/gst.h: Include gstghostpad.h.

* gst/gst.c (init_post): No more real, ghost pads.

* gst/Makefile.am: Add gstghostpad.[ch].

* check/Makefile.am:
* check/gst/gstbin.c:
* check/gst/gstghostpad.c (test_ghost_pads): Check that linking
into a bin creates ghost pads, and that the refcounts are right.
Partly moved from gstbin.c.
2005-06-08 22:16:27 +00:00
Thomas Vander Stichele
d282f08209 add a 'plugins' dir to the PLUGIN_PATH in the uninstalled script to drop random other plugin-having projects in
Original commit message from CVS:
add a 'plugins' dir to the PLUGIN_PATH in the uninstalled script to drop random other plugin-having projects in
2005-06-08 13:42:52 +00:00
Thomas Vander Stichele
c87c44b07f OBJECT acts on obj not caps
Original commit message from CVS:
OBJECT acts on obj not caps
2005-06-08 13:41:31 +00:00
Thomas Vander Stichele
41a8de905b add a debug line
Original commit message from CVS:
add a debug line
2005-06-08 13:41:05 +00:00
Thomas Vander Stichele
1ffd2bc0ce white space fixes
Original commit message from CVS:
white space fixes
2005-06-08 13:40:46 +00:00
Jan Schmidt
c9f30f98b7 gst/elements/gstcapsfilter.c: Free existing caps if the capsfilter changes. Add a FIXME about setting those caps on t...
Original commit message from CVS:
* gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
Free existing caps if the capsfilter changes. Add a FIXME about
setting those caps on the pads.

* gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
Before adding a ghost pad to a parent bin, check that there isn't
already one for the element on the bin. Prevents infinite recursion
when using decodebin in parse pipelines. Andy says he'll rewrite the
way this works anyway, so ignore the hack.
2005-06-02 15:45:16 +00:00
Andy Wingo
26a1c2c663 gst/elements/gsttypefindelement.c (do_pull_typefind): Query the file size, pass it on to the type find helper.
Original commit message from CVS:
2005-06-02  Andy Wingo  <wingo@pobox.com>

* gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
file size, pass it on to the type find helper.

* gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
segment_start and segment_end properly according to the seek
method. Segment_end is still a bit flaky because offset can be
negative for CUR and END cases, but it takes -1 as an "unset"
value.
2005-06-02 11:12:34 +00:00
Wim Taymans
d3edbe1718 gst/: Bufferalloc: return GstFlowReturn to more accuratly report why allocation failed.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
(gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
(gst_basesink_activate):
* gst/base/gstbasesink.h:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
(gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
(gst_pad_query), (gst_pad_start_task):
* gst/gstpad.h:
* gst/gstqueue.c: (gst_queue_bufferalloc),
(gst_queue_handle_sink_event), (gst_queue_chain):
Bufferalloc: return GstFlowReturn to more accuratly report
why allocation failed.
2005-06-02 09:42:02 +00:00
Wim Taymans
5c026ec0db gst/gstpipeline.c: Take snapshot of state without blocking.
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_send_event):
Take snapshot of state without blocking.
2005-06-02 09:39:21 +00:00
Wim Taymans
fcc76e3d07 gst/elements/gstidentity.c: Protect last_message property as it is accessed from multiple threads.
Original commit message from CVS:
* gst/elements/gstidentity.c: (gst_identity_event),
(gst_identity_transform), (gst_identity_get_property):
Protect last_message property as it is accessed from
multiple threads.
2005-05-30 16:28:41 +00:00
Wim Taymans
8d0a4e1d4f gst/gstelement.c: Slicker pad activation code.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_init),
(gst_element_pads_activate), (gst_element_change_state):
Slicker pad activation code.
2005-05-30 15:53:04 +00:00
Wim Taymans
e1b5b74857 gst/: Move elementfactory methods to separate .h file.
Original commit message from CVS:
* gst/Makefile.am:
* gst/gstelement.h:
* gst/gstelementfactory.h:
* gst/gsttypes.h:
Move elementfactory methods to separate .h file.
2005-05-30 15:51:40 +00:00
Wim Taymans
99d49f2c43 Small typo fixes, doc updates.
Original commit message from CVS:
* docs/design/part-overview.txt:
* gst/gstsystemclock.h:
Small typo fixes, doc updates.
2005-05-30 15:48:45 +00:00
Wim Taymans
248dce3e13 gst/gst.c: Remove cpu-opt flag.
Original commit message from CVS:
* gst/gst.c: (gst_init_get_popt_table), (init_post),
(init_popt_callback):
Remove cpu-opt flag.
2005-05-30 15:46:15 +00:00
Wim Taymans
a86feaf099 gst/gstbuffer.*: Avoid typechecking in places where not needed.
Original commit message from CVS:
* gst/gstbuffer.c: (gst_subbuffer_finalize),
(gst_buffer_create_sub), (gst_buffer_is_span_fast):
* gst/gstbuffer.h:
Avoid typechecking in places where not needed.
Added accessor for malloc_data.
2005-05-30 15:44:50 +00:00
Wim Taymans
0e1ad862de gst/gstpad.c: Propagate errors from _set_caps() in configure_src/sink functions instead of returning TRUE.
Original commit message from CVS:
* gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
(gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
(gst_pad_configure_sink), (gst_pad_configure_src),
(gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
(gst_pad_start_task):
Propagate errors from _set_caps() in configure_src/sink
functions instead of returning TRUE.
FLUSH events can travel up and downstream
2005-05-30 15:41:54 +00:00
Wim Taymans
be66bb03b4 gst/base/gstbasesink.c: Handle EOS in preroll.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
(gst_basesink_activate):
Handle EOS in preroll.
2005-05-30 15:36:09 +00:00
Wim Taymans
148057fa10 gst/gstqueue.c: Remove old pieces of code
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
(gst_queue_loop), (gst_queue_handle_src_event):
Remove old pieces of code
Flushing the queue in an upstream event is a very bad idea.
2005-05-30 15:34:13 +00:00
Andy Wingo
1457b69cb7 gst/gstminiobject.c (gst_value_mini_object_collect): Use gst_value_set_mini_object so as to add a ref on the object (...
Original commit message from CVS:
2005-05-26  Andy Wingo  <wingo@pobox.com>

* gst/gstminiobject.c (gst_value_mini_object_collect): Use
gst_value_set_mini_object so as to add a ref on the object (which
will be removed when the value is unset).

* gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
arg type in ::handoff.

* gst/gstelement.c (gst_element_change_state): Also deactivate
pads in READY->NULL, just in case the element didn't make it to
PAUSED. Wingo tested, Wim approved.
2005-05-27 09:27:35 +00:00
Wim Taymans
61167c9097 gst/gstpad.c: A flushing pad cannot be used to alloc_buffer from.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
(gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
(gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
A flushing pad cannot be used to alloc_buffer from.
2005-05-26 10:50:12 +00:00
Wim Taymans
ea2dd0057c gst/gstbus.*: Implement a real GSource and use g_main_context_wakeup() to signal new messages instead of the socketpair.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
(gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
(gst_bus_source_dispatch), (gst_bus_source_finalize),
(gst_bus_create_watch), (gst_bus_add_watch_full):
* gst/gstbus.h:
Implement a real GSource and use g_main_context_wakeup() to
signal new messages instead of the socketpair.
2005-05-26 10:48:53 +00:00
Wim Taymans
56d9730d20 gst/: Fix state changes for non sinks. We now change sinks, then elements with unconnected srcpads, then the rest.
Original commit message from CVS:
* gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
(bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
(gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
(gst_pad_send_event), (gst_pad_start_task):
* gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
(gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
(gst_queue_sink_activate), (gst_queue_src_activate),
(gst_queue_change_state):
* gst/gstqueue.h:
Fix state changes for non sinks. We now change sinks, then elements
with unconnected srcpads, then the rest.
More efficient queue unlocking in flush and state changes.
Set the pad activate mode even if it does not have an activate
function.
2005-05-25 19:33:39 +00:00
Ronald S. Bultje
c6d2acd587 happify buildbot
Original commit message from CVS:
happify buildbot
2005-05-25 16:09:34 +00:00
Ronald S. Bultje
f0ed41684a gst/base/gstbasesrc.c: Don't go in pull mode for non-seekable sources.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_basesrc_activate):
Don't go in pull mode for non-seekable sources.
* gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
(gst_type_find_element_dispose), (gst_type_find_handle_src_query),
(free_entry), (stop_typefinding),
(gst_type_find_element_handle_event), (find_peek),
(gst_type_find_element_chain), (do_pull_typefind),
(gst_type_find_element_change_state):
Allow typefinding (w/o seeking) in push-mode, simplified version
of what was in 0.8.
* gst/gstutils.c: (gst_buffer_join):
* gst/gstutils.h:
gst_buffer_join() from 0.8.
2005-05-25 15:57:57 +00:00
Wim Taymans
25576cb626 gst/gstpad.c: Disable attempt at mode switching until it is figured out.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
(gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
(gst_pad_send_event), (gst_pad_start_task):
Disable attempt at mode switching until it is figured out.
2005-05-25 13:59:18 +00:00
Wim Taymans
add280cd10 gst/: Implement gst_pad_pause/start/stop_task(), take STREAM lock in task function.
Original commit message from CVS:
* gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
* gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
(gst_basesink_finish_preroll), (gst_basesink_chain),
(gst_basesink_loop), (gst_basesink_activate),
(gst_basesink_change_state):
* gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
(gst_basesrc_get_range), (gst_basesrc_loop),
(gst_basesrc_activate):
* gst/elements/gsttee.c: (gst_tee_sink_activate):
* gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
(gst_real_pad_init), (gst_real_pad_set_property),
(gst_real_pad_get_property), (gst_pad_set_active),
(gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
(gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
(gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
(gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
(gst_pad_event_default_dispatch), (gst_pad_event_default),
(gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
(gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
(gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
(gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
(gst_pad_stop_task):
* gst/gstpad.h:
* gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
(gst_queue_loop), (gst_queue_src_activate):
* gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
(gst_task_get_state):
* gst/gsttask.h:
* gst/schedulers/threadscheduler.c:
(gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
Implement gst_pad_pause/start/stop_task(), take STREAM lock
in task function.
Remove ACTIVE pad flag, use FLUSHING everywhere
Added _pad_chain(), _pad_get_range() to call chain/getrange
functions.
Add locks around IS_FLUSHING when reading.
Take STREAM lock in chain(), get_range() functions so plugins
don't need to take it anymore.
2005-05-25 11:50:11 +00:00
David Schleef
4c9d07cf22 gst/gstminiobject.*: Add GValue set/get functions.
Original commit message from CVS:
* gst/gstminiobject.c: (gst_value_set_mini_object),
(gst_value_take_mini_object), (gst_value_get_mini_object):
* gst/gstminiobject.h: Add GValue set/get functions.
2005-05-19 19:41:12 +00:00
Wim Taymans
fbe9b20d09 gst/: Make subbufer unref the parent in finalize. some more debugging info.
Original commit message from CVS:
* gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
(gst_subbuffer_class_init), (gst_subbuffer_finalize),
(gst_subbuffer_init), (gst_buffer_is_span_fast):
* gst/gstbuffer.h:
* gst/gstbus.c: (gst_bus_post):
* gst/gstelement.c: (gst_element_get_random_pad):
* gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
Make subbufer unref the parent in finalize.
some more debugging info.
2005-05-19 16:26:50 +00:00
Wim Taymans
637c74bdb8 gst/base/gstbasesink.c: Don't free preroll queue too early.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_class_init),
(gst_basesink_init), (gst_basesink_finalize),
(gst_basesink_activate), (gst_basesink_change_state):
Don't free preroll queue too early.
2005-05-19 16:23:04 +00:00
Ronald S. Bultje
1b2ade5361 gst/: Hi, I'm outdated. Please shoot me.
Original commit message from CVS:
* gst/Makefile.am:
* gst/ROADMAP:
Hi, I'm outdated. Please shoot me.
2005-05-19 14:52:16 +00:00
Ronald S. Bultje
9909bf96dc gst/gstpipeline.c: Do not access variables after they have been deleted.
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_send_event):
Do not access variables after they have been deleted.
2005-05-19 12:07:35 +00:00
Wim Taymans
0dd4810c73 gst/gstbuffer.c: Port _span() functions to new subbuffers.
Original commit message from CVS:
* gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
Port _span() functions to new subbuffers.
2005-05-18 17:35:23 +00:00
Ronald S. Bultje
f704550b84 gst/gstbin.c: Fix clock settery in bins when adding kids after the clock has been selected.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_add_func):
Fix clock settery in bins when adding kids after the clock has
been selected.
2005-05-18 13:49:08 +00:00
Ronald S. Bultje
ca6017610d gst/elements/gstidentity.c: Workaround until signals support GstMiniObject.
Original commit message from CVS:
* gst/elements/gstidentity.c: (gst_identity_class_init):
Workaround until signals support GstMiniObject.
2005-05-18 13:23:24 +00:00
Jan Schmidt
ea9c819e6e gst/gstbuffer.c: Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
Original commit message from CVS:

* gst/gstbuffer.c:
Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2005-05-18 11:34:45 +00:00
Wim Taymans
8074f6687d gst/base/: Ported and added adapter to the base classes.
Original commit message from CVS:
* gst/base/Makefile.am:
* gst/base/gstadapter.c: (gst_adapter_base_init),
(gst_adapter_class_init), (gst_adapter_init),
(gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
(gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
(gst_adapter_flush), (gst_adapter_available),
(gst_adapter_available_fast):
* gst/base/gstadapter.h:
Ported and added adapter to the base classes.
2005-05-18 09:55:43 +00:00
Thomas Vander Stichele
cb9388c96e gst/: Make sure the class is reffed/unreffed once before threads can be used. Fixes #304551.
Original commit message from CVS:

* gst/gst.c:
* gst/gstmessage.c:
Make sure the class is reffed/unreffed once before threads can be
used.  Fixes #304551.
2005-05-17 17:50:41 +00:00
Wim Taymans
576b2181d8 gst/: Don't queue buffers in basesink when we are flushing.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
(gst_basesink_chain_unlocked), (gst_basesink_activate):
* gst/gstminiobject.c: (gst_mini_object_get_type),
(gst_mini_object_free):
* gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
(gst_pad_push), (gst_pad_push_event):
* gst/gstqueue.c: (gst_queue_change_state):
Don't queue buffers in basesink when we are flushing.
Unref buffer when flushing in basesink.
Flush queue when going to READY
Unref buffer when _push() returns an error.
Don't free MiniObject instance when refcount is incremented
in _finalize() so that we can recover objects.
2005-05-17 17:37:43 +00:00
Wim Taymans
8b61f54757 gst/: Clear queue when going to READY.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
(gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
* gst/gstqueue.c: (gst_queue_change_state):
Clear queue when going to READY.
Remove IN_SETCAPS flag too.
2005-05-17 14:11:32 +00:00
Tim-Philipp Müller
7fa9d7eb65 gst/base/gstbasesrc.c: Remove implicit cast from gboolean to GstElementStateReturn; make sure we still return failure...
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_basesrc_change_state):
Remove implicit cast from gboolean to GstElementStateReturn;
make sure we still return failure in paused => ready case if
the parent class fails to change state and our own stop
vfunc succeeds.
2005-05-17 14:01:51 +00:00
Andy Wingo
04312000d0 gst/gstbin.c (sink_iterator_filter): Err... um...
Original commit message from CVS:
2005-05-16  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (sink_iterator_filter): Err... um...

* check/gst/gstbin.c (test_ghost_pads): New test for the
ghosting-if-elements-not-in-same-bin behavior.
2005-05-16 21:17:14 +00:00
David Schleef
b52ba4751a gst/gstminiobject.c: Use g_atomic_int_get() instead of accessing refcount directly.
Original commit message from CVS:
* gst/gstminiobject.c: Use g_atomic_int_get() instead of
accessing refcount directly.
2005-05-16 21:05:21 +00:00
David Schleef
e134f7f75b check/Makefile.am: remove GstData checks
Original commit message from CVS:
* check/Makefile.am: remove GstData checks
* check/gst-libs/gdp.c: (START_TEST): fix for API changes
* gst/Makefile.am: add miniobject, remove data
* gst/gst.h: add miniobject, remove data
* gst/gstdata.c: remove
* gst/gstdata.h: remove
* gst/gstdata_private.h: remove
* gst/gsttypes.h: remove GstEvent and GstMessage
* gst/gstelement.c: (gst_element_post_message): fix for API changes
* gst/gstmarshal.list: change BOXED -> OBJECT
Implement GstMiniObject.
* gst/gstminiobject.c:
* gst/gstminiobject.h:
Modify to be subclasses of GstMiniObject.
* gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
(gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
(gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
(gst_subbuffer_get_type), (gst_subbuffer_init),
(gst_buffer_create_sub), (gst_buffer_is_span_fast),
(gst_buffer_span):
* gst/gstbuffer.h:
* gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
(gst_event_class_init), (gst_event_init), (gst_event_finalize),
(_gst_event_copy), (gst_event_new):
* gst/gstevent.h:
* gst/gstmessage.c: (_gst_message_initialize),
(gst_message_get_type), (gst_message_class_init),
(gst_message_init), (gst_message_finalize), (_gst_message_copy),
(gst_message_new), (gst_message_new_error),
(gst_message_new_warning), (gst_message_new_tag),
(gst_message_new_state_changed), (gst_message_new_application):
* gst/gstmessage.h:
* gst/gstprobe.c: (gst_probe_perform),
(gst_probe_dispatcher_dispatch):
* gst/gstprobe.h:
* gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
(gst_query_class_init), (gst_query_finalize), (gst_query_init),
(_gst_query_copy), (gst_query_new):
Update elements for GstData -> GstMiniObject changes
* gst/gstquery.h:
* gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
(gst_queue_chain), (gst_queue_loop):
* gst/elements/gstbufferstore.c:
(gst_buffer_store_add_buffer_func),
(gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
* gst/elements/gstfakesink.c: (gst_fakesink_class_init),
(gst_fakesink_render):
* gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
* gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
(gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
(gst_mmap_buffer_finalize), (gst_filesrc_map_region),
(gst_filesrc_create_read):
* gst/elements/gstidentity.c: (gst_identity_class_init):
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_src_event), (free_entry_buffers),
(gst_type_find_element_handle_event):
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer):
* libs/gst/dataprotocol/dataprotocol.h:
* libs/gst/dataprotocol/dp-private.h:
2005-05-16 20:21:55 +00:00
David Schleef
735061ecc6 gst/elements/gstelements.c: Don't include headers that were just removed.
Original commit message from CVS:
* gst/elements/gstelements.c: Don't include headers that were
just removed.
2005-05-15 23:18:40 +00:00
David Schleef
abb59b9e80 gst/elements/Makefile.am: Remove some elements that don't need to be in the core (or even exist at all).
Original commit message from CVS:
* gst/elements/Makefile.am: Remove some elements that don't
need to be in the core (or even exist at all).
* gst/elements/gstaggregator.c:
* gst/elements/gstaggregator.h:
* gst/elements/gstmd5sink.c:
* gst/elements/gstmd5sink.h:
* gst/elements/gstmultifilesrc.c:
* gst/elements/gstmultifilesrc.h:
* gst/elements/gstpipefilter.c:
* gst/elements/gstpipefilter.h:
* gst/elements/gstshaper.c:
* gst/elements/gstshaper.h:
* gst/elements/gststatistics.c:
* gst/elements/gststatistics.h:
* po/POTFILES.in: Remove above files.
2005-05-15 23:16:29 +00:00
Andy Wingo
ab5ba6271c gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter so as to get the refs right.
Original commit message from CVS:
2005-05-14  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
so as to get the refs right.
(sink_iterator_filter): New function, wraps bin_element_is_sink,
unreffing objects that don't pass the filter.
2005-05-14 18:01:12 +00:00
Andy Wingo
4765634c62 gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after gst_element_set_bus.
Original commit message from CVS:
2005-05-14  Andy Wingo  <wingo@pobox.com>

* gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
gst_element_set_bus.
(gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
normal cases, this will destroy the bus.

* gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
object.
2005-05-14 17:12:11 +00:00
Andy Wingo
c967174c17 gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin has no sinks.
Original commit message from CVS:
2005-05-14  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
has no sinks.
2005-05-14 15:54:49 +00:00
Andy Wingo
79d4977020 gst/gstutils.c (gst_element_link_pads): Instead of calling gst_pad_link, call pad_link_maybe_ghosting,
Original commit message from CVS:
2005-05-13  Andy Wingo  <wingo@pobox.com>

* gst/gstutils.c (gst_element_link_pads): Instead of calling
gst_pad_link, call pad_link_maybe_ghosting,
(pad_link_maybe_ghosting): Links pads, making sure that the
elements being linked are in the same bin.
(find_common_root, object_has_ancestor, ghost_up, remove_pad):
Helpers for pad_link_maybe_ghosting.
2005-05-14 15:32:36 +00:00
Wim Taymans
1c4ea6213b gst/: Identify sinks by their flag to avoid overly complicated checks (fow now).
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_init),
(gst_basesink_activate):
* gst/base/gstbasesrc.c: (gst_basesrc_unlock),
(gst_basesrc_is_seekable):
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
(bin_element_is_sink), (gst_bin_change_state):
* gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
* gst/gstelement.h:
Identify sinks by their flag to avoid overly complicated
checks (fow now).
Do state changes even for elements not reachable from the
sinks.
BaseSink is a sink now :)
Some more debugging info in the basesrc.
2005-05-12 19:45:44 +00:00
Ronald S. Bultje
e4c1ba46c8 gst/gstbin.c: Implement _query on a bin, similar to _send_event.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
Implement _query on a bin, similar to _send_event.
2005-05-12 15:09:17 +00:00
Tim-Philipp Müller
7eb36ed16f gst/base/gstbasesrc.c: Discont event offset format should be GST_FORMAT_BYTES, not GST_FORMAT_TIME.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
Discont event offset format should be GST_FORMAT_BYTES,
not GST_FORMAT_TIME.
2005-05-12 13:59:58 +00:00
Wim Taymans
8694ff47b4 gst/gstbin.c: Same fix as Ronald's but without the signal.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
Same fix as Ronald's but without the signal.
2005-05-12 13:18:14 +00:00
Ronald S. Bultje
e5f4d65005 gst/gstutils.c: No, an element is not a pad.
Original commit message from CVS:
* gst/gstutils.c: (gst_element_query_position):
No, an element is not a pad.
2005-05-12 12:27:07 +00:00
Ronald S. Bultje
e805d1b78b gst/gstbin.c: If a child is removed from a bin while we remove the child from the bin and while we're retrieving its ...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
(gst_bin_get_state):
If a child is removed from a bin while we remove the child from
the bin and while we're retrieving its state, signal this to the
get_state function so we abort the wait (instead of waiting for
a timeout) and can immediately re-iterate over all other elements.
2005-05-12 12:17:23 +00:00
Wim Taymans
88d6683316 gst/base/: Added is_seekable to BaseSrc
Original commit message from CVS:
* gst/base/Makefile.am:
* gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
(gst_basesrc_start):
* gst/base/gstbasesrc.h:
* gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
(gst_pushsrc_base_init), (gst_pushsrc_class_init),
(gst_pushsrc_init), (gst_pushsrc_create):
* gst/base/gstpushsrc.h:
Added is_seekable to BaseSrc
Added simple PushSrc.
2005-05-12 10:43:14 +00:00
Wim Taymans
c9aaf4663f gst/: Fix refcounting in utils function.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
* gst/gstutils.c: (gst_element_get_compatible_pad_template),
(gst_element_link_pads), (gst_element_query_position),
(gst_element_query_convert), (intersect_caps_func),
(gst_pad_query_position), (gst_pad_query_convert):
Fix refcounting in utils function.
No point in trying to activate a pad when it's added, it could
be added from the state change function and then we deadlock, the
element has to decide what to do.
2005-05-11 09:21:24 +00:00
Andy Wingo
e44beb9f04 gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
Original commit message from CVS:
2005-05-10  Andy Wingo  <wingo@pobox.com>

* gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
*all* the arguments.

* gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
stream lock if it's a FLUSH_DONE; normal flushes don't get the
lock (according to the docs -- if this is wrong change the docs).

* gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
flush messages in the NULL state.

* gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
message immediately and return.
(gst_bus_set_flushing): New function. If a bus is flushing, it
flushes out any queued messages and immediately unrefs new
messages. This is so when an element goes to NULL, all of the
unhandled messages coming from it can be freed, and their
references to the element dropped. In other words: message source
ref considered harmful :P

* gst/gstbin.c (gst_bin_change_state): Unref peer element when
we're finished with it.

* gst/gstmessage.c (gst_message_new_state_changed):
2005-05-11 03:37:10 +00:00
Wim Taymans
ee4cf984cf remove stupid printf
Original commit message from CVS:
remove stupid printf
2005-05-10 14:51:49 +00:00
Wim Taymans
33992f775b gst/gstvalue.c: Added flags serialize/deserialize/compare code.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_compare_flags),
(gst_value_serialize_flags), (gst_value_deserialize_flags),
(_gst_value_initialize):
Added flags serialize/deserialize/compare code.
2005-05-10 14:50:55 +00:00
Andy Wingo
b594010249 gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps): Intersect the peer's caps with our caps.
Original commit message from CVS:
2005-05-09  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
Intersect the peer's caps with our caps.
2005-05-09 21:37:54 +00:00
Ronald S. Bultje
5b9c84091d gst/: Handle negative offsets better. Fixes decodebin.
Original commit message from CVS:
* gst/base/gsttypefindhelper.c: (helper_find_peek):
* gst/elements/gsttypefindelement.c: (find_peek):
Handle negative offsets better. Fixes decodebin.
2005-05-09 15:54:26 +00:00
Wim Taymans
e70ec7b807 gst/: Implement accept_caps.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
(gst_base_transform_event):
* gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
Implement accept_caps.
Fix silly lock/unlock mismatch in base class.
2005-05-09 14:47:15 +00:00
Wim Taymans
8df6cd7243 Remove old query functions. Ported old code.
Original commit message from CVS:
Remove old query functions. Ported old code.
Added position/convert helper functions to gstutils.
Reordered gstpad.c code, grouping relevant things.
Remove gst_message_new(), always need to speficy a specific
message.
2005-05-09 10:53:13 +00:00
Andy Wingo
328ddd7363 gst/gstiterator.h: Add some includes.
Original commit message from CVS:
2005-05-09  Andy Wingo  <wingo@pobox.com>

* gst/gstiterator.h: Add some includes.

* gst/gstqueryutils.h: Include more headers.

* gst/gstpad.h:
* gst/gstpad.c (gst_pad_query_position): New routine, replaces
some uses of gst_pad_query.

* gst/gstqueryutils.c: Build fixes. Make parse functions ignore
NULL out parameters.
(gst_query_new_position): New proc, allocates a new position
query.

* gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
gstqueryutils.c to the build.

* gst/gststructure.c (gst_structure_set_valist): Implement with
the generic G_VALUE_COLLECT.
2005-05-09 06:21:10 +00:00
Edward Hervey
01162bee21 gst/Makefile.am: Added gstqueryutils.h to the list of headers to install, that was a 'nachty' move wingo :)
Original commit message from CVS:
* gst/Makefile.am: (gst_headers):
Added gstqueryutils.h to the list of headers to install, that was
a 'nachty' move wingo :)
2005-05-08 17:07:05 +00:00
Andy Wingo
8970bda4ba gst/gstquery.h
Original commit message from CVS:
2005-05-06  Andy Wingo  <wingo@pobox.com>

* gst/gstquery.h
* gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
GstData, init a memchunk.
(standard_definitions): Add a few query types, deprecate a few.
(gst_query_get_type): New proc.
(_gst_query_copy, _gst_query_free, gst_query_new): GstData
implementation.
(gst_query_new_application, gst_query_get_structure): New public
procs.

* docs/design/draft-query.txt: Removed LINKS from the query types,
because all the rest can be dispatched to other pads -- seemed
ugly to have a query that couldn't be dispatched. internal_links
is fine as a pad method.

* gst/gstpad.h: Add query2 as a pad method, add the new functions
in gstpad.c, but maintain binary compatibility for the moment.
Will fix before 0.9 is out.

* gst/gstqueryutils.c:
* gst/gstqueryutils.h: New files, implement 3 methods for each
query type: parse_query, parse_response, and set. Probably need an
allocator as well.

* gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.

* gst/elements/gstfilesink.c (gst_filesink_query2):
* gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
query_types, and formats methods.

* gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
(gst_pad_set_query2_function): New functions.
(gst_real_pad_init): Set query2_default as the default query2
function. Basically just dispatches to internally linked pads.

Needs review!

* gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
without using the atomic operations. Only one thread can possibly
be accessing the data at this point. Changed so as to avoid
gst_atomic operations.
2005-05-06 21:41:22 +00:00
Wim Taymans
1185aabed9 gst/gstpad.c: Also set caps if we use the fallback buffer alloc.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
Also set caps if we use the fallback buffer alloc.
2005-05-06 19:50:23 +00:00
Wim Taymans
d7b231e6d1 gst/: Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
* gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
* gst/gstpad.c: (gst_pad_peer_get_caps):
* gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
(gst_queue_bufferalloc), (gst_queue_handle_sink_event),
(gst_queue_src_activate), (gst_queue_change_state):
* gst/gstqueue.h:
* gst/gstutils.c: (gst_element_get_compatible_pad_template),
(intersect_caps_func):
Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
Some fixes for the peer_get_caps() change.
2005-05-06 17:10:49 +00:00
Wim Taymans
92dd87a8c5 gst/base/gstbasesink.c: Actually do something with error codes returned from the push functions.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
(gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
(gst_basesink_activate):
Actually do something with error codes returned from the push
functions.
2005-05-06 16:19:59 +00:00
Wim Taymans
c11c932f88 Some more documentation.
Original commit message from CVS:
* docs/design/part-element-sink.txt:
* docs/design/part-element-source.txt:
* gst/base/gstbasesink.c: (gst_basesink_class_init),
(gst_basesink_event), (gst_basesink_activate):
* gst/base/gstbasesink.h:
* gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
(gst_basesrc_activate):
* gst/base/gstbasesrc.h:
* gst/gstelement.c: (gst_element_pads_activate):
Some more documentation.
Fixed scheduling decision in _pads_activate().
2005-05-06 08:25:19 +00:00
Andy Wingo
e33d96ba60 final cruft fixage
Original commit message from CVS:
final cruft fixage
2005-05-05 21:59:53 +00:00
Andy Wingo
89858fc1b7 cruft removal
Original commit message from CVS:
cruft removal
2005-05-05 21:45:54 +00:00
Andy Wingo
57183c39dc revert cruft
Original commit message from CVS:
revert cruft
2005-05-05 21:42:24 +00:00
Andy Wingo
e19563e43e revert accidental commit of cruft -- doh
Original commit message from CVS:
revert accidental commit of cruft -- doh
2005-05-05 21:37:34 +00:00
Wim Taymans
113250d274 gst/: Added object to help in making collect pad based elements.
Original commit message from CVS:
* gst/base/Makefile.am:
* gst/base/gstbasesink.h:
* gst/base/gstbasesrc.c: (gst_basesrc_init),
(gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
* gst/base/gstcollectpads.c: (gst_collectpads_get_type),
(gst_collectpads_class_init), (gst_collectpads_init),
(gst_collectpads_finalize), (gst_collectpads_new),
(gst_collectpads_set_function), (gst_collectpads_add_pad),
(find_pad), (gst_collectpads_remove_pad),
(gst_collectpads_is_active), (gst_collectpads_collect),
(gst_collectpads_collect_range), (gst_collectpads_start),
(gst_collectpads_stop), (gst_collectpads_peek),
(gst_collectpads_pop), (gst_collectpads_available),
(gst_collectpads_read), (gst_collectpads_flush),
(gst_collectpads_chain):
* gst/base/gstcollectpads.h:
* gst/elements/Makefile.am:
* gst/elements/gstelements.c:
* gst/elements/gstfakesink.c: (gst_fakesink_class_init),
(gst_fakesink_get_times), (gst_fakesink_event),
(gst_fakesink_preroll), (gst_fakesink_render):
* gst/elements/gstfilesink.c: (gst_filesink_class_init),
(gst_filesink_init), (gst_filesink_set_location),
(gst_filesink_open_file), (gst_filesink_close_file),
(gst_filesink_pad_query), (gst_filesink_event),
(gst_filesink_render), (gst_filesink_change_state):
* gst/elements/gstfilesink.h:
Added object to help in making collect pad based elements.
Ported filesink.
Make event function in sink baseclass return gboolean.
2005-05-05 09:31:59 +00:00
Wim Taymans
d2bf92842c gst/: Fix name lookup in GstBin.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_send_event), (compare_name),
(gst_bin_get_by_name):
* gst/gstbuffer.h:
* gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
(gst_clock_finalize):
* gst/gstdata.c: (gst_data_replace):
* gst/gstdata.h:
* gst/gstelement.c: (gst_element_request_pad),
(gst_element_pads_activate):
* gst/gstobject.c: (gst_object_init), (gst_object_ref),
(gst_object_unref):
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
(gst_pad_set_checkgetrange_function),
(gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
(gst_pad_check_pull_range), (gst_pad_pull_range),
(gst_static_pad_template_get_caps), (gst_pad_start_task),
(gst_pad_pause_task), (gst_pad_stop_task):
* gst/gstutils.c: (gst_element_get_compatible_pad_template),
(gst_element_request_pad), (gst_pad_proxy_getcaps):
Fix name lookup in GstBin.
Added _data_replace() function and _buffer_replace()
Use finalize method to clean up clock.
Fix refcounting on request pads.
Fix pad schedule mode error.
Some more object refcounting debug info,
2005-05-05 09:28:01 +00:00
Andy Wingo
b4d7be2014 GCC 4 fixen.
Original commit message from CVS:
2005-05-04  Andy Wingo <wingo@pobox.com>

* check/Makefile.am:
* docs/gst/tmpl/gstatomic.sgml:
* docs/gst/tmpl/gstplugin.sgml:
* gst/base/gstbasesink.c: (gst_basesink_activate):
* gst/base/gstbasesrc.c: (gst_basesrc_class_init),
(gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
(gst_basesrc_query), (gst_basesrc_set_property),
(gst_basesrc_get_property), (gst_basesrc_check_get_range),
(gst_basesrc_activate):
* gst/base/gstbasesrc.h:
* gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
(gst_base_transform_src_activate):
* gst/elements/gstelements.c:
* gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
(gst_fakesrc_set_property), (gst_fakesrc_get_property):
* gst/elements/gsttee.c: (gst_tee_sink_activate):
* gst/elements/gsttypefindelement.c: (find_element_get_length),
(gst_type_find_element_checkgetrange),
(gst_type_find_element_activate):
* gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
* gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
(gst_caps_load_thyself):
* gst/gstelement.c: (gst_element_pads_activate),
(gst_element_save_thyself), (gst_element_restore_thyself):
* gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
(gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
* gst/gstpad.h:
* gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
(gst_xml_parse_file), (gst_xml_parse_memory),
(gst_xml_get_element), (gst_xml_make_element):
* gst/indexers/gstfileindex.c: (gst_file_index_load),
(_file_index_id_save_xml), (gst_file_index_commit):
* gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
(read_enum), (load_pad_template), (load_feature), (load_plugin),
(load_paths):
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
(gst_dp_packet_from_event), (gst_dp_caps_from_packet):
* tools/gst-complete.c: (main):
* tools/gst-compprep.c: (main):
* tools/gst-inspect.c: (print_element_properties_info):
* tools/gst-launch.c: (xmllaunch_parse_cmdline):
* tools/gst-xmlinspect.c: (print_element_properties):
GCC 4 fixen.
2005-05-04 21:29:44 +00:00
Thomas Vander Stichele
5aed75335c gst/gstplugin.c: apply patch from #172526 to make register work on MacOSX
Original commit message from CVS:

* gst/gstplugin.c: (gst_plugin_check_module),
(gst_plugin_check_file), (gst_plugin_load_file):
apply patch from #172526 to make register work on MacOSX
2005-05-03 12:46:47 +00:00
Thomas Vander Stichele
8f87745592 merges from 0.8 for 64 bit issues
Original commit message from CVS:
merges from 0.8 for 64 bit issues
2005-05-02 15:20:30 +00:00
Wim Taymans
0757f3df2e Added draft for new query API.
Original commit message from CVS:
* docs/design/draft-push-pull.txt:
* docs/design/draft-query.txt:
* gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
(gst_basesrc_start):
Added draft for new query API.
Added draft for better selecting scheduling methods.
Make basesrc ignore length if the subclass does not support
it.
2005-05-02 13:55:21 +00:00
Thomas Vander Stichele
82bb4f0093 automake 1.5 fixes
Original commit message from CVS:
automake 1.5 fixes
2005-05-02 11:54:32 +00:00
Thomas Vander Stichele
d3f4ae10f2 possible fixes for automake-1.5
Original commit message from CVS:
possible fixes for automake-1.5
2005-05-02 11:47:17 +00:00
Wim Taymans
71359c38a0 gst/: Better debugging of clocking info.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_base_init),
(gst_basesink_pad_getcaps), (gst_basesink_init),
(gst_basesink_do_sync):
* gst/gstclock.c: (gst_clock_entry_new):
* gst/gstevent.c: (gst_event_discont_get_value):
* gst/gstpipeline.c: (pipeline_bus_handler),
(gst_pipeline_change_state):
* gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
Better debugging of clocking info.
Allow NULL values when getting discont values.
2005-04-28 16:28:28 +00:00
Wim Taymans
d68914ad64 gst/gsttrashstack.h: Ooohh. a nasty one! After having a failed pop() from the stack, it's possible that the stack is ...
Original commit message from CVS:
* gst/gsttrashstack.h:
Ooohh. a nasty one! After having a failed pop() from the stack,
it's possible that the stack is empty. In that case, don't
follow the NULL pointer.
2005-04-26 18:07:45 +00:00
Wim Taymans
50b44cdd16 gst/: Remove gst_library_load as it does more harm than good with the new g_module flags.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
(gst_pad_set_checkgetrange_function),
(gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
(gst_pad_check_pull_range), (gst_pad_pull_range),
(gst_static_pad_template_get_caps), (gst_pad_start_task),
(gst_pad_pause_task), (gst_pad_stop_task):
* gst/gstplugin.c: (gst_plugin_load):
* gst/gstplugin.h:
Remove gst_library_load as it does more harm than good with
the new g_module flags.
Revert bogus caps template check in pad linking, pad caps
are important when linking not the template, which is more
general than the current caps.
2005-04-25 13:00:47 +00:00
Ronald S. Bultje
778981a34e gst/autoplug/: Die, spider, die.
Original commit message from CVS:
* gst/autoplug/.cvsignore:
* gst/autoplug/Makefile.am:
* gst/autoplug/gstsearchfuncs.c:
* gst/autoplug/gstsearchfuncs.h:
* gst/autoplug/gstspider.c:
* gst/autoplug/gstspider.h:
* gst/autoplug/gstspideridentity.c:
* gst/autoplug/gstspideridentity.h:
* gst/autoplug/spidertest.c:
Die, spider, die.
2005-04-25 09:51:06 +00:00
Wim Taymans
f494f49acd gst/gstpad.*: Added stubs for unimplemented functions.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
(gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
(gst_pad_pull_range), (gst_static_pad_template_get_caps),
(gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
* gst/gstpad.h:
Added stubs for unimplemented functions.
2005-04-25 09:45:35 +00:00
David Schleef
4956e9d512 gst/gstpad.h: Disable some unimplemented functions. Wim, please fix.
Original commit message from CVS:
* gst/gstpad.h: Disable some unimplemented functions.  Wim,
please fix.
2005-04-24 23:53:06 +00:00
David Schleef
46e13eb5e2 Convert everything from GstAtomicInt to g_atomic_int_*, and remove gstatomic.
Original commit message from CVS:
Convert everything from GstAtomicInt to g_atomic_int_*, and
remove gstatomic.
* gst/Makefile.am:
* gst/gstatomic.c:
* gst/gstatomic.h:
* gst/gstatomic_impl.h:
* gst/gstbuffer.c:
* gst/gstcaps.c:
* gst/gstcaps.h:
* gst/gstclock.c:
* gst/gstclock.h:
* gst/gstdata.c:
* gst/gstdata.h:
* gst/gstdata_private.h:
* gst/gstevent.c:
* gst/gstinfo.c:
* gst/gstinfo.h:
* gst/gstmessage.c:
* gst/gstobject.c:
* gst/gstobject.h:
* gst/gststructure.c:
* gst/gststructure.h:
* gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
* gst/gstutils.h:
2005-04-24 22:49:45 +00:00
David Schleef
01c25dc75f check/gst/gstpad.c: Oh yeah, it's always nice to make the regressions tests work. Remove some code that is no longer...
Original commit message from CVS:
* check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
make the regressions tests work.  Remove some code that is no
longer true.
* gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
Disable warning for pads without templates.
2005-04-24 22:44:13 +00:00
David Schleef
65dd8e9726 gst/gstpad.c: Remove handling of filtered caps. Fix/merge functions that handle filtered links.
Original commit message from CVS:
* gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
functions that handle filtered links.
* gst/gstpad.h: Remove 'appfilter' field and prototypes of
removed functions.
* gst/gstutils.c: Fix/remove utility functions that handle
filtered caps.
* gst/gstutils.h:
* gst/gstvalue.c: Add serialization/deserialization of caps
* gst/parse/grammar.y: Ignore filtered caps when linking.  This
requires fixing so that the filter caps notation creates
a capsfilter element and sets the filter_caps property.  I
think everyone probably wants to keep the shorthand notation.
* docs/gst/tmpl/gstelement.sgml: updates for API changes.
* docs/gst/tmpl/gstpad.sgml:
* gst/elements/gstelements.c: Register capsfilter element.
* gst/Makefile.am: fix spacing
* docs/random/ds/0.9-suggested-changes: random
2005-04-24 21:16:45 +00:00
David Schleef
9dfa6cd089 gst/elements/: New element that acts like an identity, but filters caps. Will eventually replace filtered caps in pa...
Original commit message from CVS:
* gst/elements/Makefile.am:
* gst/elements/gstcapsfilter.c: New element that acts like an
identity, but filters caps.  Will eventually replace filtered
caps in pad linking.
* gst/gstutils.c: (gst_element_create_all_pads): New function
to create all the ALWAYS pads that are registered with an
element class.  This functionality should eventually be
merged in with GstElement initialization.
* gst/gstutils.h:
* testsuite/trigger/README: part of trigger test code that should
have been checked in a long time ago.
2005-04-23 23:29:47 +00:00
David Schleef
7e89cbf5ba gst/Makefile.am: Remove as-libtool stuff. It's likely not and hard to carry around.
Original commit message from CVS:
* gst/Makefile.am: Remove as-libtool stuff.  It's likely not
needed with new versions of libtool (nobody will confirm this),
and hard to carry around.
* gst/autoplug/Makefile.am:
* gst/base/Makefile.am:
* gst/elements/Makefile.am:
* gst/indexers/Makefile.am:
* gst/schedulers/Makefile.am:
* libs/gst/bytestream/Makefile.am:
* libs/gst/control/Makefile.am:
* libs/gst/dataprotocol/Makefile.am:
* libs/gst/getbits/Makefile.am:
2005-04-23 23:25:08 +00:00
Wim Taymans
f059bb2c54 gst/: Use parent refcount in GstMessage to ensure GstStructure consistency.
Original commit message from CVS:
* gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
(gst_message_new), (gst_message_new_error),
(gst_message_new_warning), (gst_message_new_tag),
(gst_message_new_state_changed), (gst_message_new_application),
(gst_message_get_structure):
* gst/gstmessage.h:
* gst/gststructure.c: (gst_structure_set_parent_refcount),
(gst_structure_copy_conditional):
Use parent refcount in GstMessage to ensure GstStructure
consistency.
Cleaned up headers a bit.
2005-04-21 09:33:31 +00:00
Wim Taymans
ee13415b38 gst/: Make gst_caps_replace() work like other _replace() functions.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_basesink_base_init),
(gst_basesink_pad_getcaps), (gst_basesink_init),
(gst_basesink_chain_unlocked):
* gst/base/gsttypefindhelper.c: (helper_find_suggest),
(gst_type_find_helper):
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_have_type), (gst_type_find_element_init),
(stop_typefinding), (gst_type_find_element_handle_event),
(find_suggest), (gst_type_find_element_chain),
(gst_type_find_element_checkgetrange),
(gst_type_find_element_getrange), (do_typefind),
(gst_type_find_element_activate):
* gst/gstbuffer.c: (_gst_buffer_sub_free),
(gst_buffer_default_free), (gst_buffer_default_copy),
(gst_buffer_set_caps):
* gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
(gst_caps_replace):
* gst/gstmessage.c: (gst_message_new),
(gst_message_new_state_changed):
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
(gst_pad_set_checkgetrange_function),
(gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
(gst_pad_set_caps), (gst_pad_check_pull_range),
(gst_pad_pull_range), (gst_static_pad_template_get_caps):
* gst/gstpad.h:
* gst/gsttypefind.c: (gst_type_find_register):
Make gst_caps_replace() work like other _replace() functions.
Use _caps_replace() where possible.
Make sure _message_new() initialises its field.
Add gst_static_pad_template_get_caps()
2005-04-20 09:10:42 +00:00
Andy Wingo
0aec4592b9 gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
Original commit message from CVS:
2005-04-18  Andy Wingo  <wingo@pobox.com>

* gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
2005-04-18 08:53:02 +00:00
Andy Wingo
a8259f46f5 gst/base/gstbasesrc.c (gst_basesrc_set_property)
Original commit message from CVS:
2005-04-18  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesrc.c (gst_basesrc_set_property)
(gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
to PROP_....
2005-04-18 08:24:30 +00:00
Ronald S. Bultje
560d0ba1de Use libxml2 for registry parsing, use staticpadtemplates in elementfactories. Makes gst_init() +/- 10x faster.
Original commit message from CVS:
* docs/gst/tmpl/gstelementfactory.sgml:
* gst/gstelement.h:
* gst/gstelementfactory.c: (gst_element_factory_init),
(gst_element_factory_cleanup), (gst_element_register),
(__gst_element_factory_add_static_pad_template),
(gst_element_factory_get_static_pad_templates),
(gst_element_factory_can_src_caps),
(gst_element_factory_can_sink_caps):
* gst/registries/Makefile.am:
* gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
(gst_xml_registry_class_init), (gst_xml_registry_init),
(gst_xml_registry_new), (gst_xml_registry_set_property),
(gst_xml_registry_get_property), (get_time), (make_dir),
(gst_xml_registry_get_perms_func),
(plugin_times_older_than_recurse), (plugin_times_older_than),
(gst_xml_registry_open_func), (gst_xml_registry_load_func),
(gst_xml_registry_save_func), (gst_xml_registry_close_func),
(add_to_char_array), (read_string), (read_uint), (read_enum),
(load_pad_template), (load_feature), (load_plugin), (load_paths),
(gst_xml_registry_load), (gst_xml_registry_load_plugin),
(gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
(gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
(gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
(gst_xml_registry_rebuild):
* gst/registries/gstlibxmlregistry.h:
* tools/gst-compprep.c: (main):
* tools/gst-inspect.c: (print_pad_templates_info):
* tools/gst-xmlinspect.c: (print_element_info):
Use libxml2 for registry parsing, use staticpadtemplates in
elementfactories. Makes gst_init() +/- 10x faster.
2005-04-12 15:00:30 +00:00
Wim Taymans
499659f65f Added typefind helper.
Original commit message from CVS:
Added typefind helper.
Small preroll fix in the base sink.
Disable typefind code in basesrc.
Crude port of typefindelement.
Fakesrc cleanups.
2005-04-12 10:52:55 +00:00
Thomas Vander Stichele
5da40820c5 work with debug disabled
Original commit message from CVS:
work with debug disabled
2005-04-10 21:42:32 +00:00
Thomas Vander Stichele
c6957f0e92 work with debug disabled
Original commit message from CVS:
work with debug disabled
2005-04-10 20:29:44 +00:00
Wim Taymans
aa00eb872d gst/: More work on the generic source base class, implement seeking, query.
Original commit message from CVS:
* gst/base/README:
* gst/base/gstbasesrc.c: (gst_basesrc_get_type),
(gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
(gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
(gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
(gst_basesrc_check_get_range), (gst_basesrc_loop),
(gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
(gst_basesrc_stop), (gst_basesrc_activate),
(gst_basesrc_change_state), (basesrc_find_peek),
(basesrc_find_suggest), (gst_basesrc_type_find):
* gst/base/gstbasesrc.h:
* gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
(gst_filesrc_class_init), (gst_filesrc_init),
(gst_filesrc_finalize), (gst_filesrc_set_location),
(gst_filesrc_set_property), (gst_filesrc_get_property),
(gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
(gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
(gst_filesrc_create_read), (gst_filesrc_create),
(gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
* gst/elements/gstfilesrc.h:
* gst/gstelement.c: (gst_element_get_state_func),
(gst_element_lost_state), (gst_element_pads_activate):
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
(gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
(gst_pad_pull_range):
* gst/gstpad.h:
More work on the generic source base class, implement seeking,
query.
Make filesrc extend the base source class.
Added gst_pad_set_checkgetrange_function to GstPad.
2005-04-06 17:30:48 +00:00
Andy Wingo
4c712824b9 pkgconfig/: New files.
Original commit message from CVS:
2005-04-06  Andy Wingo  <wingo@pobox.com>

* pkgconfig/gstreamer-base.pc.in:
* pkgconfig/gstreamer-base-uninstalled.pc.in: New files.

* pkgconfig/Makefile.am:
* configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2005-04-06 11:08:07 +00:00
Wim Taymans
8cf38d3d3a gst/: Made base source class, make fakesrc extend it.
Original commit message from CVS:
* gst/base/Makefile.am:
* gst/base/README:
* gst/base/gstbasesink.c: (gst_basesink_base_init),
(gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
(gst_basesink_pad_buffer_alloc), (gst_basesink_init),
(gst_basesink_do_sync), (gst_basesink_chain_unlocked):
* gst/base/gstbasesrc.c: (gst_basesrc_get_type),
(gst_basesrc_base_init), (gst_basesrc_class_init),
(gst_basesrc_init), (gst_basesrc_get_formats),
(gst_basesrc_get_query_types), (gst_basesrc_query),
(gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
(gst_basesrc_set_property), (gst_basesrc_get_property),
(gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
(gst_basesrc_loop), (gst_basesrc_activate),
(gst_basesrc_change_state):
* gst/base/gstbasesrc.h:
* gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
(gst_fakesrc_class_init), (gst_fakesrc_init),
(gst_fakesrc_event_handler), (gst_fakesrc_set_property),
(gst_fakesrc_get_property), (gst_fakesrc_create):
* gst/elements/gstfakesrc.h:
* gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
(gst_filesrc_open_file), (gst_filesrc_loop),
(gst_filesrc_activate), (filesrc_find_peek),
(gst_filesrc_type_find):
Made base source class, make fakesrc extend it.
Add comments to basesink class.
Some filesrc cleanup.
2005-04-05 08:44:20 +00:00
David Schleef
fa948192ac gst/gstplugin.c: Switch to using G_MODULE_BIND_LOCAL, which means plugins are now expected to link against libgstreamer.
Original commit message from CVS:
* gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
expected to link against libgstreamer.
* gst/base/Makefile.am: link against libgstreamer
* gst/elements/Makefile.am: same
2005-04-01 02:41:35 +00:00
Andy Wingo
123bfb04b3 tests/instantiate/: Add test to test speed of caps copy and free.
Original commit message from CVS:
2005-03-31  Andy Wingo  <wingo@pobox.com>

* tests/instantiate/Makefile.am:
* tests/instantiate/caps.c: Add test to test speed of caps copy
and free.

* tests/memchunk/gmemchunktest.c (main): Use alloc only on the
GMemChunk to be fair.

* gst/gsttrashstack.h: Remove warning about using the fallback
trash stack implementation, it's still faster than malloc.
2005-03-31 15:00:11 +00:00
Wim Taymans
96d17a3410 gst/: Added start/stop methods to transform base class so subclasses don't need to deal with state changes even.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_base_init),
(gst_base_transform_class_init), (gst_base_transform_init),
(gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
(gst_base_transform_get_property),
(gst_base_transform_sink_activate),
(gst_base_transform_src_activate),
(gst_base_transform_change_state):
* gst/base/gstbasetransform.h:
* gst/elements/gstidentity.c: (gst_identity_class_init),
(gst_identity_event), (gst_identity_check_perfect),
(gst_identity_transform), (gst_identity_start),
(gst_identity_stop):
Added start/stop methods to transform base class so subclasses
don't need to deal with state changes even.
2005-03-31 10:10:55 +00:00
Wim Taymans
3cfdcab18b gst/: Added rate to the discont event to prepare for variable speed and reverse playback.
Original commit message from CVS:
* gst/gstevent.c: (gst_event_new_discontinuous_valist),
(gst_event_new_discontinuous), (gst_event_discont_get_value):
* gst/gstevent.h:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
(gst_pad_pull_range):
Added rate to the discont event to prepare for variable speed
and reverse playback.
2005-03-31 09:46:28 +00:00
Wim Taymans
bb1be5f509 gst/: Simplify pad activation.
Original commit message from CVS:
* gst/base/Makefile.am:
* gst/base/README:
* gst/base/gstbasesink.c: (gst_basesink_get_type),
(gst_basesink_base_init), (gst_basesink_class_init),
(gst_basesink_pad_getcaps), (gst_basesink_init),
(gst_basesink_activate), (gst_basesink_change_state):
* gst/base/gstbasesink.h:
* gst/base/gstbasetransform.c: (gst_base_transform_get_type),
(gst_base_transform_base_init), (gst_base_transform_finalize),
(gst_base_transform_class_init), (gst_base_transform_init),
(gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
(gst_base_transform_event), (gst_base_transform_getrange),
(gst_base_transform_chain), (gst_base_transform_handle_buffer),
(gst_base_transform_set_property),
(gst_base_transform_get_property),
(gst_base_transform_sink_activate),
(gst_base_transform_src_activate),
(gst_base_transform_change_state):
* gst/base/gstbasetransform.h:
* gst/elements/gstidentity.c: (gst_identity_finalize),
(gst_identity_class_init), (gst_identity_init),
(gst_identity_event), (gst_identity_check_perfect),
(gst_identity_transform), (gst_identity_set_property),
(gst_identity_get_property), (gst_identity_change_state):
* gst/elements/gstidentity.h:
* gst/gstelement.c: (gst_element_get_state_func),
(gst_element_lost_state), (gst_element_pads_activate):
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
(gst_pad_check_pull_range), (gst_pad_pull_range):
* gst/gstpad.h:
Simplify pad activation.
Added function to check if pull_range can be performed.
Error out when pulling inactive or flushing pads.
Removed const from refcounted types as it does not make sense.
Simplify pad templates in basesink
Added base class for simple 1-to-1 transforms.
Make identity subclass the base transform.
2005-03-29 16:18:12 +00:00
Andy Wingo
a7ad017d05 docs/: Dist the overrides files.
Original commit message from CVS:
2005-03-29  Andy Wingo  <wingo@pobox.com>

* docs/gst/Makefile.am:
* docs/libs/Makefile.am: Dist the overrides files.

* check/Makefile.am (clean-local): Remove .libs directories.

* gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
elements to EXTRA_DIST, so po/ files are happy.
2005-03-29 14:12:48 +00:00
Andy Wingo
498ae2c79f po/, docs/gst/: Commit automatic changes to docs and po files.
Original commit message from CVS:
2005-03-29  Andy Wingo  <wingo@pobox.com>

* po/, docs/gst/: Commit automatic changes to docs and po files.

* gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
the versioned libgstbase.

* check/Makefile.am: Depend on an unversioned gst-register, seems
to make autoconf happier.

* gst/base/Makefile.am: Make libgstbase a versioned lib.
2005-03-29 10:55:39 +00:00
Wim Taymans
326d36b8d8 Added state change code.
Original commit message from CVS:
Added state change code.
Added/updated docs.
Added sink base class, make fakesink extend the base class.
Small cleanups in GstPipeline.
2005-03-28 14:54:33 +00:00
David Schleef
a7abc22271 gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality is broken and should be implemented in a different li...
Original commit message from CVS:
* gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
is broken and should be implemented in a different library.
* gst/gst.c: (init_post): don't call _gst_cpu_initialize()
* gst/gst.h: remove gstcpu.h
* gst/gstcpu.c: remove
* gst/gstcpu.h: remove
* gst/Makefile.am.future: Remove this file.  It's ancient.
2005-03-26 22:07:53 +00:00
Ronald S. Bultje
8eb4bb6a51 gst/gstbin.c: Add default event/set_manager handlers. The set_manager handler takes care that the manager is distribu...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
(gst_bin_send_event):
Add default event/set_manager handlers. The set_manager handler
takes care that the manager is distributed over kids that were
already in the bin before the manager was set. The event handler
is a utility virtual function that sends the event over all sinks,
so that gst_element_send_event (bin, event); has the expected
behaviour.
* gst/gstpad.c: (gst_pad_event_default):
Re-install default event handling for discontinuities, so that
seeking works without requiring hacks in applications or extra
code in sinks.
* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_send_event):
Half hack, half utility: set a pipeline to PAUSED for seek events,
since that is the only way we can guarantee a/v sync. Means that
you can do gst_element_seek (pipeline, method, pos); on a pipeline
and it "just works".
2005-03-25 09:57:42 +00:00
Ronald S. Bultje
f96e2fabad gst/gstpipeline.c: Lock/unlock mismatch.
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_use_clock):
Lock/unlock mismatch.
2005-03-25 09:35:01 +00:00
Wim Taymans
9051371877 Activated more tests.
Original commit message from CVS:
* check/Makefile.am:
* check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
* gst/gststructure.c: (gst_structure_set_valist),
(gst_structure_copy_conditional):
Activated more tests.
Added message test.
Added G_TYPE_POINTER to GstStructure.
2005-03-22 14:23:49 +00:00
Wim Taymans
fc0bf09d96 Docs updates
Original commit message from CVS:
* docs/design/part-TODO.txt:
* docs/design/part-events.txt:
* docs/design/part-gstbin.txt:
* docs/design/part-gstbus.txt:
* docs/design/part-gstpipeline.txt:
* docs/design/part-messages.txt:
* gst/gstbus.c:
* gst/gstmessage.c:
Docs updates
2005-03-22 11:32:59 +00:00
Wim Taymans
a032f72b14 gst/gstbus.c: Fix copy-and-paste error.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_post):
Fix copy-and-paste error.
2005-03-21 18:17:57 +00:00
Wim Taymans
c2f41a8906 Next big merge.
Original commit message from CVS:
Next big merge.
Added GstBus for mainloop integration.
Added GstMessage for sending notifications on the bus.
Added GstTask as an abstraction for pipeline entry points.
Removed GstThread.
Removed Schedulers.
Simplified GstQueue for multithreaded core.
Made _link threadsafe, removed old capsnego.
Added STREAM_LOCK and PREROLL_LOCK in GstPad.
Added pad blocking functions.
Reworked scheduling functions in GstPad to prepare for
scheduling updates soon.
Moved events out of data stream.
Simplified GstEvent types.
Added return values to push/pull.
Removed clocking from GstElement.
Added prototypes for state change function for next merge.
Removed iterate from bins and state change management.
Fixed some elements, disabled others for now.
Fixed -inspect and -launch.
Added check for GstBus.
2005-03-21 17:34:02 +00:00
Wim Taymans
007cff6d75 Doc updates.
Original commit message from CVS:
* docs/design/part-MT-refcounting.txt:
* docs/design/part-clocks.txt:
* docs/design/part-gstelement.txt:
* docs/design/part-gstobject.txt:
* docs/design/part-standards.txt:
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
(gst_bin_remove_func), (gst_bin_remove):
* gst/gstbin.h:
* gst/gstbuffer.c:
* gst/gstcaps.h:
* testsuite/clock/clock1.c: (main):
* testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
(main):
* testsuite/dlopen/loadgst.c: (do_test):
* testsuite/refcounting/bin.c: (add_remove_test1),
(add_remove_test2), (main):
* testsuite/refcounting/element.c: (main):
* testsuite/refcounting/element_pad.c: (main):
* testsuite/refcounting/pad.c: (main):
* tools/gst-launch.c: (sigint_handler_sighandler):
* tools/gst-typefind.c: (main):
Doc updates.
Added doc about clock.
removed gst_bin_iterate_recurse_up(), marked methods
for removal.
Fix more testsuites.
2005-03-10 12:51:45 +00:00
Wim Taymans
e82e7b604a Fix _pad_get_direction wrt ghostpads.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_get_direction),
(_gst_pad_default_fixate_foreach), (gst_pad_collectv),
(gst_pad_collect_valist):
* testsuite/bins/interface.c: (main):
* testsuite/caps/audioscale.c: (test_caps):
* testsuite/caps/caps.c: (test1), (test2), (test3):
* testsuite/caps/deserialize.c: (main):
* testsuite/caps/enumcaps.c: (main):
* testsuite/caps/filtercaps.c: (main):
* testsuite/caps/intersect2.c: (main):
* testsuite/caps/random.c: (main):
* testsuite/caps/renegotiate.c: (my_fixate), (main):
* testsuite/caps/sets.c: (check_caps):
* testsuite/caps/simplify.c: (check_caps), (main):
* testsuite/caps/subtract.c: (check_caps):
Fix _pad_get_direction wrt ghostpads.
Fix caps testsuite.
2005-03-09 17:28:52 +00:00
Wim Taymans
6cacf76cd9 Added GstBin test.
Original commit message from CVS:
Added GstBin test.
Added GstSystemClock test.
Implemented clock distribution code in GstBin.
Implemented iterate sinks method for future use.
Rearranged gstelement.h
Fix GstIterator comparison bug.
Moved some code to GstPipeline, mostly clocking related.
2005-03-09 16:10:59 +00:00
Wim Taymans
c6a7adc9d4 Bump version number, we're now 0.9.0
Original commit message from CVS:
* configure.ac:
* gst/gst_private.h:
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
(gst_bin_remove_func), (gst_bin_remove),
(gst_bin_get_by_name_recurse_up):
* gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
(gst_clock_id_compare_func), (gst_clock_id_wait),
(gst_clock_id_wait_async), (gst_clock_init),
(gst_clock_adjust_unlocked), (gst_clock_get_time):
* gst/gstelement.h:
* gst/gstinfo.c: (_gst_debug_init):
* gst/gstobject.h:
* gst/gstpad.c: (_gst_pad_default_fixate_foreach),
(gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
* gst/gstpad.h:
Bump version number, we're now 0.9.0
Add future debugging category.
Fix NULL _unref() in _get_by_name_recurse_up
Rearrange gstpad.h.
Update some docs.
2005-03-09 11:08:18 +00:00
Wim Taymans
9e24b85a9d Remove threadsafe properties. Fix elements because GObject complains when installing a property before declaring a se...
Original commit message from CVS:
Remove threadsafe properties. Fix elements because GObject
complains when installing a property before declaring a
set/get_property handler.
Rearrange gstelement.h file, use STATE macros for state locks.
Free mutexes in the finalize method instead of dispose.
2005-03-08 17:42:29 +00:00
Wim Taymans
1c9569392f Added parentage check.
Original commit message from CVS:
* check/gst/gstobject.c: (START_TEST), (gst_object_suite):
* gst/gstthread.c: (gst_thread_release_children_locks):
Added parentage check.
Fix build og GstThread again.
2005-03-08 15:57:15 +00:00
Wim Taymans
b338085a29 Docs updates, clean up some headers.
Original commit message from CVS:
* docs/design/part-MT-refcounting.txt:
* docs/design/part-conventions.txt:
* docs/design/part-gstobject.txt:
* docs/design/part-relations.txt:
* docs/design/part-standards.txt:
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
(gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
(gst_bin_get_by_name), (gst_bin_get_by_interface),
(gst_bin_iterate_all_by_interface):
* gst/gstbuffer.h:
* gst/gstclock.h:
* gst/gstelement.c: (gst_element_class_init),
(gst_element_change_state), (gst_element_set_loop_function):
* gst/gstelement.h:
* gst/gstiterator.c:
* gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
(gst_object_unref), (gst_object_sink), (gst_object_dispose),
(gst_object_dispatch_properties_changed), (gst_object_set_name),
(gst_object_set_parent), (gst_object_unparent),
(gst_object_check_uniqueness):
* gst/gstobject.h:
Docs updates, clean up some headers.
Free iterators in GstBin.
GstObject is now looking good.
2005-03-08 14:38:06 +00:00
Wim Taymans
8227d5503b gst/gstiterator.*: Added missing files.
Original commit message from CVS:
* gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
(gst_list_iterator_next), (gst_list_iterator_resync),
(gst_list_iterator_free), (gst_iterator_new_list),
(gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
(gst_iterator_free), (gst_iterator_push), (filter_next),
(filter_resync), (filter_uninit), (filter_free),
(gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
(gst_iterator_foreach), (find_custom_fold_func),
(gst_iterator_find_custom):
* gst/gstiterator.h:
Added missing files.
2005-03-07 18:29:36 +00:00
Wim Taymans
c47dc4d853 First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor...
Original commit message from CVS:
First THREADED backport attempt, focusing on adding locks and
making sure the API is threadsafe. Needs more work. More docs
follow this week.
2005-03-07 18:27:42 +00:00
Thomas Vander Stichele
d5e9b91e0a another no-debug build fix
Original commit message from CVS:
another no-debug build fix
2005-02-25 00:10:05 +00:00
Thomas Vander Stichele
a32a305d1a disable debug build fix
Original commit message from CVS:
disable debug build fix
2005-02-24 23:41:57 +00:00
Thomas Vander Stichele
b02973d212 one more fix
Original commit message from CVS:
one more fix
2005-02-23 15:14:01 +00:00
Thomas Vander Stichele
b9adc22e24 compile with debug disabled
Original commit message from CVS:
compile with debug disabled
2005-02-23 15:06:36 +00:00
Benjamin Otte
232f295af3 gst/: name objects by default, not in gst_element_factory_create. Allows using elements created with g_object_new. (f...
Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_factory_create):
* gst/gstobject.c: (gst_object_init),
(gst_object_set_name_default), (gst_object_set_name):
name objects by default, not in gst_element_factory_create. Allows
using elements created with g_object_new. (fixes #167283)
2005-02-19 13:02:45 +00:00
Benjamin Otte
70fd76df4f gst/gstinfo.c: make the time that debugging functions print relative to when gst_init was called
Original commit message from CVS:
* gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
make the time that debugging functions print relative to when
gst_init was called
2005-02-19 12:59:45 +00:00
Tim-Philipp Müller
a255e65538 Fix inline docs: tag setter vararg functions are NULL-termianted, GST_TAG_INVALID doesn't exist any more
Original commit message from CVS:
Fix inline docs: tag setter vararg functions are NULL-termianted, GST_TAG_INVALID doesn't exist any more
2005-02-18 20:30:21 +00:00
Thomas Vander Stichele
e3f758f424 flesh out error descriptions
Original commit message from CVS:
flesh out error descriptions
2005-02-11 09:58:31 +00:00
Ronald S. Bultje
6a56e3080d gst/gstthread.c: Implement state-change error handling (#166073).
Original commit message from CVS:
* gst/gstthread.c: (gst_thread_change_state):
Implement state-change error handling (#166073).
2005-02-08 14:04:31 +00:00
Ronald S. Bultje
eb3c38de8c gst/gstqueue.c: Release interrupt after handling (#166250).
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
Release interrupt after handling (#166250).
2005-02-08 13:50:44 +00:00
Thomas Vander Stichele
0080630b1a unref data when probe function returns FALSE. Fixes #166362
Original commit message from CVS:
unref data when probe function returns FALSE.  Fixes #166362
2005-02-07 15:39:40 +00:00
Ronald S. Bultje
01a7744a76 gst/gst.c: Fix typo (#166269).
Original commit message from CVS:
* gst/gst.c: (gst_init_get_popt_table):
Fix typo (#166269).
2005-02-05 23:10:05 +00:00
Andy Wingo
b99693171e gst/gstelement.c (gst_element_get_compatible_pad_template): Fix the debugging on whether the caps are compatible.
Original commit message from CVS:
2005-02-04  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
the debugging on whether the caps are compatible.
2005-02-04 15:36:37 +00:00
Wim Taymans
186d11b516 gst/schedulers/gstoptimalscheduler.c: Remove some FIXMEs after analysing and commenting why they are not issues.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
(schedule_chain), (get_invalid_call), (chain_invalid_call),
(loop_group_schedule_function), (gst_opt_scheduler_iterate):
Remove some FIXMEs after analysing and commenting why they
are not issues.
2005-02-02 16:15:18 +00:00
Wim Taymans
f8114cc178 gst/schedulers/gstoptimalscheduler.c: Added lock to protect scheduler data structures.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c:
(gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
(gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
(get_invalid_call), (chain_invalid_call),
(get_group_schedule_function), (loop_group_schedule_function),
(gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
(gst_opt_scheduler_state_transition),
(gst_opt_scheduler_add_element),
(gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
(gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
(gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
(gst_opt_scheduler_show):
Added lock to protect scheduler data structures.
2005-02-02 15:31:06 +00:00
Ronald S. Bultje
34d1219213 gst/schedulers/gstoptimalscheduler.c: Try to work with the threading mess that queue_link is.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c:
(get_group_schedule_function):
Try to work with the threading mess that queue_link is.
2005-02-01 00:38:05 +00:00
Ronald S. Bultje
6a4b9177e4 gst/gstbin.c: Explicitely make an element release locks in a group when being remove from a bin.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_remove_func):
Explicitely make an element release locks in a group when being
remove from a bin.
* gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
If there's no scheduler, always return immediately (similar to
gst_element_interrupt).
2005-01-31 23:21:52 +00:00
Ronald S. Bultje
77bf6d8c0f gst/gstbin.c: Remove a piece of code that could never be reached.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_child_state_change_func):
Remove a piece of code that could never be reached.
* docs/gst/gstreamer-sections.txt:
* gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
(gst_pad_call_get_function):
* gst/gstpad.h:
* testsuite/pad/Makefile.am:
Fix #150546, enable tests.
2005-01-31 17:39:31 +00:00
Ronald S. Bultje
d8d03b6b98 docs/pwg/advanced-types.xml: Fix description for buffer-frames=0.
Original commit message from CVS:
* docs/pwg/advanced-types.xml:
Fix description for buffer-frames=0.
* docs/gst/tmpl/gstbin.sgml:
* gst/gstbin.c: (gst_bin_child_state_change_func),
(gst_bin_change_state), (gst_bin_change_state_norecurse):
* gst/gstbin.h:
* testsuite/threads/Makefile.am:
* testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
(cb_state), (cb_play), (main):
Fix non-recursive state changes to *really* change the state
of the object, and not just call parent_class->state_change.
Fix a lot of lockups caused by this. Fixes #132775. Add test
for the problem. Also enable test to show #142588 (fixed).
* gst/gstthread.c: (gst_thread_change_state),
(gst_thread_child_state_change):
Don't exit the thread if we go to NULL and are inside thread
context. Instead, return control to the main thread context
and exit from there.
* gst/gstelement.c: (gst_element_disable_threadsafe_properties):
Don't unset virtual functions, since those may still be used.
That's not necessarily correct, but suffices for now.
* configure.ac:
* testsuite/Makefile.am:
* testsuite/pad/Makefile.am:
* testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
(gst_test_sink_base_init), (gst_test_sink_chain),
(gst_test_sink_init), (main):
* testsuite/pad/getnopush.c: (gst_test_src_class_init),
(gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
(main):
* testsuite/pad/link.c: (gst_test_element_class_init),
(gst_test_element_base_init), (gst_test_src_get),
(gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
(gst_test_filter_loop), (gst_test_filter_init),
(gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
(cb_error), (main):
Add tests to show #150546. Pass, but should fail (currently
disabled from the testsuite).
* gst/gstscheduler.c: (gst_scheduler_dispose):
Dereference child schedulers on dispose (#94464).
* testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
Fix typo.
* testsuite/threads/thread.c: (main):
Add more debug.
2005-01-31 15:51:19 +00:00
Ronald S. Bultje
f861881c6c gst/gstpad.c: Oops, revert previous commit, broke testsuite...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_push):
Oops, revert previous commit, broke testsuite...
2005-01-29 17:32:15 +00:00
Ronald S. Bultje
d8e67497f9 gst/gstpad.c: Add check that the pad on which the push is performed is not a get-based pad (#150546).
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_push):
Add check that the pad on which the push is performed is not a
get-based pad (#150546).
2005-01-29 13:38:44 +00:00
Ronald S. Bultje
5adea0d2f9 gst/elements/gsttypefindelement.c: Fix buffer pushing if stream EOSes during typefinding.
Original commit message from CVS:
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_handle_event):
Fix buffer pushing if stream EOSes during typefinding.
2005-01-28 10:12:07 +00:00
Ronald S. Bultje
c1f7b619d3 gst/gstvalue.c: Allow NULL-strings as argument (#165365).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/gstvalue.c: (gst_string_wrap):
Allow NULL-strings as argument (#165365).
2005-01-28 09:37:41 +00:00
Ronald S. Bultje
a410bdd96f gst/schedulers/faircothreads.c: Fix build without debug enabled.
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/schedulers/faircothreads.c:
(gst_fair_scheduler_cothread_queue_show):
Fix build without debug enabled.
2005-01-27 10:00:00 +00:00
Stefan Kost
c44852739c install style.css along with docs fixing incomplete docs
Original commit message from CVS:
install style.css along with docs
fixing incomplete docs
2005-01-24 17:04:08 +00:00
Tim-Philipp Müller
6c51a29b9a Don't unref seek event twice in case where fflush() fails
Original commit message from CVS:
Don't unref seek event twice in case where fflush() fails
2005-01-24 11:04:37 +00:00
Stefan Kost
ca511598f4 added params for deprecation guards documented some more enums
Original commit message from CVS:
added params for deprecation guards
documented some more enums
2005-01-21 17:52:50 +00:00
Jan Schmidt
04b470bd86 gst/autoplug/gstspideridentity.c: Cosmetic fix - spider_find_peek should be static
Original commit message from CVS:
* gst/autoplug/gstspideridentity.c:
Cosmetic fix - spider_find_peek should be static
* gst/parse/parse.l:
Applying fix for #164261
2005-01-18 15:39:14 +00:00
Stefan Kost
34592a842b added docs for the TAG defines
Original commit message from CVS:
added docs for the TAG defines
2005-01-18 14:15:30 +00:00
Ronald S. Bultje
defab93002 gst/schedulers/gstoptimalscheduler.c: Only unref entry if there is an entry.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (schedule_group):
Only unref entry if there is an entry.
2005-01-18 11:29:12 +00:00
Wim Taymans
c6b82b338b gst/schedulers/gstoptimalscheduler.c: Also ref/unref decoupled elements before iterating the group since they are not...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (add_to_group),
(remove_from_group), (schedule_group), (normalize_group),
(gst_opt_scheduler_iterate):
Also ref/unref decoupled elements before iterating the
group since they are not added to the list of elements.
2005-01-17 16:30:42 +00:00
Ronald S. Bultje
7c82638d25 docs/: by Steve Baker
Original commit message from CVS:
* docs/pwg/advanced-types.xml:
* docs/random/mimetypes:
Add documentation on libsndfile types (#163309), by Steve Baker
<steve@stevebaker.org>.
* gst/gstelement.c: (gst_element_release_request_pad):
If an element has no explicit function, just remove the pad.
2005-01-17 13:48:13 +00:00
Ronald S. Bultje
d4fec072e7 gst/registries/gstxmlregistry.c: Fix memleak (#163801).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
Fix memleak (#163801).
2005-01-17 12:53:37 +00:00
Ronald S. Bultje
c0ea459eae gst/elements/gsttee.c: I think this is actually moer correct...
Original commit message from CVS:
* gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
I think this is actually moer correct...
2005-01-17 10:12:40 +00:00
Ronald S. Bultje
7e75b2b0f0 gst/gstprobe.c: Another workaround for memory access while destroyed in callback.
Original commit message from CVS:
* gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
Another workaround for memory access while destroyed in callback.
Please, someone with refcount knowledge, have a look at this.
2005-01-16 14:36:58 +00:00
Ronald S. Bultje
e1f61a002b gst/elements/gsttee.c: Fix negotiation.
Original commit message from CVS:
* gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
(gst_tee_request_new_pad):
Fix negotiation.
2005-01-14 17:23:59 +00:00
Thomas Vander Stichele
3b69e254c4 doh, wrong patch
Original commit message from CVS:
doh, wrong patch
2005-01-13 16:50:49 +00:00
Thomas Vander Stichele
805ecd1f81 gst/: allow probes to work on ghost pads by realizing the pad probe debugging
Original commit message from CVS:

* gst/gstpad.h:
* gst/gstprobe.c:
allow probes to work on ghost pads by realizing the pad
probe debugging
2005-01-13 15:29:40 +00:00
Ronald S. Bultje
28f58530fe Add gst_pad_set_active_recursive().
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/gstpad.sgml:
* gst/gstpad.c: (gst_pad_set_active_recursive):
* gst/gstpad.h:
Add gst_pad_set_active_recursive().
2005-01-11 00:40:13 +00:00
Thomas Vander Stichele
b848c8be0a docs/random/release: updates
Original commit message from CVS:
* docs/random/release:
updates
* gst/gst_private.h:
* gst/gstinfo.c:
* gst/gstobject.c:
move deep_notify logging to a new category
* gst/gstprobe.c:
* gst/gstprobe.h:
add stuff so bindings can wrap probes
2005-01-10 17:23:42 +00:00
Stéphane Loeuillet
a9713ad5da gst/gstplugin.c: Fix plugin loading if plugin/lib was already loaded. Fixes #163383
Original commit message from CVS:
* gst/gstplugin.c: (gst_plugin_load):
Fix plugin loading if plugin/lib was already loaded. Fixes
#163383
2005-01-09 13:37:33 +00:00
Ronald S. Bultje
1ffedb43a3 gst/gstpluginfeature.c: Protect plugin loading by a mutex so it's threadsafe. Fixes #163234.
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
Protect plugin loading by a mutex so it's threadsafe. Fixes
#163234.
2005-01-09 01:35:01 +00:00
Ronald S. Bultje
58efb5a941 gst/gstevent.c: Reference source object when copying events, since it'll be dereferenced on event dereferencing as well.
Original commit message from CVS:
* gst/gstevent.c: (_gst_event_copy):
Reference source object when copying events, since it'll be
dereferenced on event dereferencing as well.
2005-01-08 21:33:03 +00:00
Ronald S. Bultje
66d5da4f17 Add two new functions for filler events (which are used to synchronize streams if one of them is not having any data ...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/gstevent.sgml:
* gst/gstevent.c: (gst_event_new_filler_stamped),
(gst_event_filler_get_duration):
* gst/gstevent.h:
Add two new functions for filler events (which are used to
synchronize streams if one of them is not having any data
for a while) without interrupting the actual data-stream.
Basically a no-op.
* gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
(gst_queue_link_sink), (gst_queue_link_src),
(gst_queue_change_state):
Allow for renegotiation while filled. Required for stream
switching while playing.
2005-01-08 18:10:50 +00:00
Benjamin Otte
ba4b71e86a gst/gstelement.c: fix up g_return_if_fail's
Original commit message from CVS:
* gst/gstelement.c: (gst_element_link_many):
fix up g_return_if_fail's
* po/LINGUAS:
* po/de.po:
add German translation, that was somehow not included
2005-01-08 17:38:39 +00:00
Ronald S. Bultje
374b65ad37 gst/gstprobe.c: Check for existence of probe after performing the probe before re-accessing it to prevent segfaults c...
Original commit message from CVS:
* gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
Check for existence of probe after performing the probe before
re-accessing it to prevent segfaults caused by removal of the
probe in the callback.
2005-01-07 16:40:38 +00:00
David Schleef
e76390343f gst/gstvalue.h: Mark _gst_reserved[] as private
Original commit message from CVS:
* gst/gstvalue.h: Mark _gst_reserved[] as private
2005-01-06 01:08:23 +00:00
David Schleef
8508c23248 gst/gstvalue.c: Fix doc build problem.
Original commit message from CVS:
* gst/gstvalue.c: Fix doc build problem.
2005-01-06 00:45:04 +00:00
David Schleef
b7f6134053 gst/gstvalue.c: Add some documentation
Original commit message from CVS:
* gst/gstvalue.c: Add some documentation
2005-01-05 23:21:18 +00:00
Stefan Kost
35441095b2 another shell oneliner for empty return value docs more doc fixes (parameters and return values)
Original commit message from CVS:
another shell oneliner for empty return value docs
more doc fixes (parameters and return values)
2005-01-05 13:17:28 +00:00
Ronald S. Bultje
d742d805d4 gst/: Fix macro's for Mingw (fixes #162276).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/gstregistry.h:
* gst/registries/gstxmlregistry.c:
Fix macro's for Mingw (fixes #162276).
2005-01-05 11:15:04 +00:00
Stefan Kost
e2de071d42 quick shell oneliner to find undocumented members in docs/README more enumtypes cleanup activated documentation comme...
Original commit message from CVS:
quick shell oneliner to find undocumented members in docs/README
more enumtypes cleanup
activated documentation comments, now someone needs to document the enums :(
2005-01-04 18:13:51 +00:00
Stéphane Loeuillet
f04595fbf1 gst/gstplugin.c: document gst_library_load a bit more (riff special case + return value if already loaded)
Original commit message from CVS:
* gst/gstplugin.c:
document gst_library_load a bit more (riff special case + return value if already loaded)
* testsuite/bytestream/filepadsink.c:
plugin name is 'gstbytestream', not 'bytestream'
2004-12-27 15:09:19 +00:00
Thomas Vander Stichele
d5e4273820 Fix for #159852 - make iterate emission threadsafe
Original commit message from CVS:
Fix for #159852 - make iterate emission threadsafe
2004-12-21 11:16:32 +00:00
Benjamin Otte
5f22a8a6d7 gst/gstvalue.c: use deprecated g_value_set_string_take_ownership to keep compatible with glib 2.2
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_deserialize_string):
use deprecated g_value_set_string_take_ownership to keep compatible
with glib 2.2
2004-12-17 03:58:13 +00:00
Benjamin Otte
bdc0432ec6 gst/gstvalue.c: revert last patch, only dom a g_utf8_validate now before accepting the string - caps parsing strips "...
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_deserialize_string):
revert last patch, only dom a g_utf8_validate now before accepting
the string - caps parsing strips " from strings so we can't rely on
them
* testsuite/caps/value_serialize.c: (test_string_deserialization):
disable a test that tested the above and comment it
2004-12-17 02:52:24 +00:00
Ronald S. Bultje
df7ac68e78 gst/gstpad.c: Do query on realized pad, similar to how convert/send_event handle this. Also makes sense, since this p...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_query):
Do query on realized pad, similar to how convert/send_event handle
this. Also makes sense, since this pad belongs to the function to
which this query will be sent. Fixes #158163.
2004-12-16 23:44:34 +00:00
Benjamin Otte
0c11c636bd gst/gstvalue.c: check that a simple string that gets deserialized does not contain invalid characters
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_deserialize_string):
check that a simple string that gets deserialized does not contain
invalid characters
* testsuite/caps/value_serialize.c: (test_string_deserialization):
remove a test that tested a wring behaviour
2004-12-16 20:56:52 +00:00
Ronald S. Bultje
a5075440e6 gst/gstelementfactory.c: Fix compile failure if compiling without libxml2 support (#149936).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/gstelementfactory.c: (gst_element_factory_create):
Fix compile failure if compiling without libxml2 support (#149936).
2004-12-16 10:40:05 +00:00
Wim Taymans
d960f7f99e gst/schedulers/gstoptimalscheduler.c: Fix bug where a flag was not updated on a decoupled entry point because we were...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (add_to_group),
(remove_from_group), (group_elements_set_visited),
(normalize_group), (gst_opt_scheduler_iterate):
Fix bug where a flag was not updated on a decoupled entry point
because we were just checking the group element list and decoupled
elements are not in that list..
2004-12-15 10:34:29 +00:00
David Schleef
7569c4e6ee gst/gstpad.c: Allow caps to be NULL (bug #160220).
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
be NULL (bug #160220).
2004-12-14 06:25:25 +00:00
Ronald S. Bultje
775fdce96e gst/gstqueue.c: Check for availability again.
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_handle_src_query):
Check for availability again.
2004-12-09 16:13:18 +00:00
Ronald S. Bultje
563aa73f77 gst/gstcaps.c: Simple caps go first. This has the nice side-effect of fixing an obscure warning.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_compare_structures):
Simple caps go first. This has the nice side-effect of fixing an
obscure warning.
2004-12-09 15:32:17 +00:00
Ronald S. Bultje
de305e8e62 gst/gstversion.h.in: Protect header.
Original commit message from CVS:
* gst/gstversion.h.in:
Protect header.
2004-12-09 13:37:18 +00:00
Ronald S. Bultje
474d0415aa gst/schedulers/gstoptimalscheduler.c: When we're recursing into a chain run, only run the directly related group, not...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c:
(gst_opt_scheduler_schedule_run_queue), (schedule_chain),
(gst_opt_scheduler_get_wrapper):
When we're recursing into a chain run, only run the directly
related group, not all queued ones. This will fix a possible
deadlock in chains with more than two groups.
2004-12-09 11:48:28 +00:00
Thomas Vander Stichele
6688e2fd48 add accessor for version field
Original commit message from CVS:
add accessor for version field
2004-12-07 18:50:39 +00:00
Ronald S. Bultje
8291c44aa1 gst/gstpad.c: GST_RPAD_* will only operate on a RealPad (it casts the pointer, it doesn't actually check the contents...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_is_negotiated),
(gst_pad_get_negotiated_caps):
GST_RPAD_* will only operate on a RealPad (it casts the pointer,
it doesn't actually check the contents), so be sure to hand it
a RealPad else we'll crash.
2004-12-03 13:24:15 +00:00
Wim Taymans
d6e66eee73 gst/gstqueue.c: Reverted to 1.110 until this makes the testsuite and various apps work.
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
(gst_queue_link), (gst_queue_handle_src_query):
Reverted to 1.110 until this makes the testsuite and various
apps work.
2004-12-03 11:24:01 +00:00
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
Wim Taymans
49342d34fc gst/schedulers/gstoptimalscheduler.c: Fixed an error introduced with patch for 1.63. When setting a get based element...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
(setup_group_scheduler), (gst_opt_scheduler_pad_link):
Fixed an error introduced with patch for 1.63. When setting
a get based element as the entry point in a group, make sure
to mark the group as GET based.
2004-05-18 17:03:41 +00:00
Wim Taymans
53dc1b170e gst/schedulers/gstoptimalscheduler.c: Added some more debug info and fixed a bug where the group type was set to LOOP...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (create_group),
(setup_group_scheduler), (loop_group_schedule_function),
(gst_opt_scheduler_pad_link):
Added some more debug info and fixed a bug where the group
type was set to LOOP but it was in fact unknown.
2004-05-18 16:44:44 +00:00
Benjamin Otte
03e5b961dc gst/schedulers/entryscheduler.c: make resetting scheduler work twice in a row
Original commit message from CVS:
* gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
make resetting scheduler work twice in a row
2004-05-18 01:47:33 +00:00
Benjamin Otte
463361defb gst/gstvalue.c: add serialization and comparison functions for long, int64, enum and float values
Original commit message from CVS:
* gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
(CREATE_USERIALIZATION), (_gst_value_initialize),
(gst_value_compare_float), (gst_value_serialize_float),
(gst_value_deserialize_float), (gst_value_compare_enum),
(gst_value_serialize_enum), (gst_value_deserialize_enum):
add serialization and comparison functions for long, int64, enum and
float values
* gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
use best serialization function in type hierarchy instead of only a
matching one. This is required for enums to work.
* gst/parse/grammar.y:
use gst_caps_deserialize
* testsuite/parse/Makefile.am:
parse1 now works
* testsuite/parse/parse1.c: (main):
remove aggregator check, aggregator is broken, this test works now
but fails because of bug #138012
* testsuite/parse/parse2.c: (main):
s/xvideosink/xvimagesink - this test looks a lot like we should
disable it
2004-05-18 01:36:14 +00:00
Stefan Kost
9fa85fa424 backed out the change of gst.h added some comment about building docs to README
Original commit message from CVS:
backed out the change of gst.h
added some comment about building docs to README
2004-05-14 15:17:30 +00:00
Stefan Kost
8178973c41 enabled gobject hierarchy in the gtk-doc enabled the GstQueue class in the gtk-doc added a few missing symbols so tha...
Original commit message from CVS:
enabled gobject hierarchy in the gtk-doc
enabled the GstQueue class in the gtk-doc
added a few missing symbols so that the hierachy works
2004-05-14 14:00:04 +00:00
Benjamin Otte
5d353409c2 gst/gstelement.c: whoops, store the signal id correctly
Original commit message from CVS:
* gst/gstelement.c: (gst_element_class_init):
whoops, store the signal id correctly
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_chain_wrapper):
detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
chain function isn't linked
2004-05-13 15:07:56 +00:00
Jan Schmidt
7dcd6a0533 configure.ac: Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file support until we decide where the fla...
Original commit message from CVS:
* configure.ac:
Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
support until we decide where the flags should be used
* gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
* gst/gstpad.c: (gst_pad_link_call_link_functions):
Output refused caps in the debug info
2004-05-13 12:06:11 +00:00
Thomas Vander Stichele
0cdc821508 gst/elements/gstidentity.c: add duration debug
Original commit message from CVS:
* gst/elements/gstidentity.c: (gst_identity_chain):
add duration debug
* gst/gstinfo.c: (gst_debug_log_default):
add timestamp
2004-05-13 10:10:31 +00:00
Benjamin Otte
953f54c5ce gst/gstpipeline.c: call gst_scheduler_reset on dispose (fixes #141416)
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_dispose),
(gst_pipeline_change_state):
call gst_scheduler_reset on dispose (fixes #141416)
2004-05-12 23:43:03 +00:00
Benjamin Otte
ac83b103a1 gst/elements/gstfilesrc.c: compute mapsize correctly
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
compute mapsize correctly
* gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
use correct datatypes when calling a varargs function
* gst/elements/gsttypefindelement.c: (stop_typefinding):
push a DISCONT event as first thing
* gst/gst_private.h:
* gst/gstinfo.c: (_gst_debug_init):
remove GST_DATAFLOW debugging category
* gst/gstbin.c: (gst_bin_iterate):
use GST_SCHEDULING category
* gst/gstpad.c: (gst_pad_get_type), (_invent_event),
(gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
(gst_pad_call_get_function):
add GST_DATAFLOW to easily track flow of buffers or events.
* gst/gstqueue.c: (gst_queue_get_type),
(gst_queue_handle_pending_events), (gst_queue_chain),
(gst_queue_get), (gst_queue_handle_src_event):
use own static debugging category GST_DATAFLOW for dataflow,
use DEBUG category for showing which path events go, use LOG
category for buffers.
2004-05-11 16:20:41 +00:00
David Schleef
eb8249f544 docs/gst/Makefile.am: Dear gtk-doc, please print out the unused symbols, because otherwise we don't know what they ar...
Original commit message from CVS:
* docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
symbols, because otherwise we don't know what they are.  Thanks,
the GStreamer team.
* gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
2004-05-11 03:05:00 +00:00
David Schleef
037c9d2b34 gst/gstinfo.h: Add missing inline function.
Original commit message from CVS:
* gst/gstinfo.h: Add missing inline function.
* gst/gsttrace.c: add include
* gst/parse/grammar.y: remove unused code
* gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
more portable.
* tools/gst-register.c: wrap unistd.h
More additions/fixes from Steve for the MSVC build.
* win32/GStreamer.vcproj:
* win32/Makefile:
* win32/Makefile.inspect:
* win32/Makefile.launch:
* win32/Makefile.register:
* win32/README.txt:
* win32/gst-inspect.vcproj:
* win32/gst-launch.vcproj:
* win32/gst-register.vcproj:
* win32/gstbytestream.def:
* win32/gstbytestream.vcproj:
* win32/gstconfig.h:
* win32/gstelements.def:
* win32/gstelements.vcproj:
* win32/gstenumtypes.c:
* win32/gstenumtypes.h:
* win32/gstoptimalscheduler.def:
* win32/gstoptimalscheduler.vcproj:
* win32/gstreamer.def:
* win32/gstspider.def:
* win32/gstspider.vcproj:
* win32/gstversion.h:
* win32/msvc71.sln:
2004-05-10 18:07:24 +00:00
Benjamin Otte
aafaa5b7e2 gst/gstelement.*: add gst_element_no_more_pads and the "no-more-pads" signal
Original commit message from CVS:
* gst/gstelement.c: (gst_element_class_init),
(gst_element_no_more_pads):
* gst/gstelement.h:
add gst_element_no_more_pads and the "no-more-pads" signal
2004-05-10 16:48:44 +00:00
Benjamin Otte
a68e369765 gst/gstregistry.c: refuse to add plugins when a plugin with same name is already registered. Fixes a bunch of "How to...
Original commit message from CVS:
* gst/gstregistry.c: (gst_registry_add_plugin):
refuse to add plugins when a plugin with same name is already
registered. Fixes a bunch of "How to remove plugins?" issues.
May lead to other problems though, let's test
2004-05-10 00:35:59 +00:00
Thomas Vander Stichele
1512ad8d3d don't break distcheck
Original commit message from CVS:
don't break distcheck
2004-05-09 15:00:15 +00:00
Benjamin Otte
a6c45e0b76 gst/gstpad.c: really reduce the set of caps
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_proxy_fixate):
really reduce the set of caps
2004-05-08 18:27:11 +00:00
Benjamin Otte
d83895c446 gst/gstpad.c: mark links as unengaged when unnegotiating instead of deactivating.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
mark links as unengaged when unnegotiating instead of deactivating.
This way pads aren't marked as unengaged when going PLAYING=>PAUSED
2004-05-08 14:50:12 +00:00
Thomas Vander Stichele
ca223e73e8 add a dependency so it triggers a marshal code rebuild
Original commit message from CVS:
add a dependency so it triggers a marshal code rebuild
2004-05-08 12:06:22 +00:00
David Schleef
ca7539c40e Changes to handle compilers that don't have variadic macro support. In particular, glib headers define some inlines ...
Original commit message from CVS:
Changes to handle compilers that don't have variadic macro
support.  In particular, glib headers define some inlines
that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
builds.
* gst/Makefile.am:
* gst/cothreads.c:
* gst/elements/gstfdsink.c:
* gst/elements/gstfdsrc.c:
* gst/elements/gstfilesink.c:
* gst/elements/gstfilesrc.c:
* gst/gst_private.h:
* gst/gstatomic.c:
* gst/gstcaps.c: (gst_caps_append):
* gst/gstcpu.c: (gst_cpuid_i386):
* gst/gstelement.c:
* gst/gsterror.c:
* gst/gstfilter.c:
* gst/gstinfo.h:
* gst/gstprobe.c:
* gst/gstquery.c:
* gst/gstregistry.c:
* gst/gststructure.c:
* gst/gsttaginterface.c:
* gst/gsttrace.c: (gst_trace_new):
* gst/gsttrashstack.c:
* gst/gsturi.c:
* gst/gstvalue.c:
* gst/parse/grammar.y:
* gst/parse/parse.l:
* tools/gst-inspect.c: (main):
* tools/gst-launch.c: (main):
* tools/gst-xmlinspect.c: (PUT_STRING):
2004-05-07 02:36:28 +00:00
Benjamin Otte
f9bafab28f gst/elements/gstfilesrc.*: send NEW_MEDIA events correctly
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_get),
(gst_filesrc_change_state), (gst_filesrc_srcpad_event):
* gst/elements/gstfilesrc.h:
send NEW_MEDIA events correctly
* gst/elements/gsttypefindelement.c: (start_typefinding),
(gst_type_find_element_handle_event):
restart typefinding when we get a NEW_MEDIA event
* gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
(gst_bin_dispose):
don't die when someone removes elements in callbacks
* gst/gstelement.c: (gst_element_change_state):
improve debugging
* gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
we need a NEW_MEDIA event to engage a link
* gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
don't g_print debugging stuff
* testsuite/caps/simplify.c: (check_caps):
2004-05-06 21:40:55 +00:00
Thomas Vander Stichele
c87049e9e2 put offending pipeline in error
Original commit message from CVS:
put offending pipeline in error
2004-05-06 17:09:10 +00:00
Benjamin Otte
2f043c0996 gst/parse/grammar.y: use GST_ERROR instead of g_warning, and always throw a GST_ERROR
Original commit message from CVS:
* gst/parse/grammar.y:
use GST_ERROR instead of g_warning, and always throw a GST_ERROR
2004-05-04 20:07:38 +00:00
Benjamin Otte
2696ee9c90 gst/parse/grammar.y: fix assert to not trigger when there's no error argument
Original commit message from CVS:
* gst/parse/grammar.y:
fix assert to not trigger when there's no error argument
* gst/parse/parse.l:
fix definition of caps to allow more than two structures
* testsuite/caps/Makefile.am:
* testsuite/caps/renegotiate.c: (main):
it's sinesrc and works in that case
2004-05-04 17:00:11 +00:00
Wim Taymans
656cee1af5 gst/schedulers/gstoptimalscheduler.c: when removing an element from a group, we always need to decrement the link cou...
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
(group_dec_link), (gst_opt_scheduler_pad_unlink):
when removing an element from a group, we always need to
decrement the link count that this group had with other
groups through the element.
added an extra assert to catch inconsistencies when decrementing
the link count.
2004-05-04 16:43:49 +00:00
Thomas Vander Stichele
12bcaf9b04 some debugging
Original commit message from CVS:
some debugging
2004-05-04 14:15:37 +00:00
Thomas Vander Stichele
e7b9201555 reorganize C/LIB flags add gst_info to gstcompat.h
Original commit message from CVS:
reorganize C/LIB flags
add gst_info to gstcompat.h
2004-05-04 12:38:36 +00:00
Thomas Vander Stichele
fde9163f1e removed
Original commit message from CVS:
removed
2004-05-03 16:16:08 +00:00
Thomas Vander Stichele
f55a8091a6 remove gst_info remove gstlog.h, fold back to gstinfo.h update translations
Original commit message from CVS:
remove gst_info
remove gstlog.h, fold back to gstinfo.h
update translations
2004-05-03 16:03:24 +00:00
Benjamin Otte
7862a749d6 gst/gstbin.c: better debugging
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_dispose):
better debugging
2004-05-03 14:45:38 +00:00
Johan Dahlin
f9329d93f7 gst/schedulers/gstoptimalscheduler.c
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c
(gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
really is a GstElement. Avoids critical when running gst-launch -v
and a oggdemux/decoding pipeline.
2004-05-03 14:11:26 +00:00
Thomas Vander Stichele
1cc1827392 gst/gsterror.h: include the headers needed for declarations used in this header
Original commit message from CVS:
* gst/gsterror.h:
include the headers needed for declarations used in this header
2004-04-30 17:57:41 +00:00
Benjamin Otte
4a343d6a9d gst/schedulers/gthread-cothreads.h: free allocated data for main cothread, too when destroying context (fixes #141417)
Original commit message from CVS:
reviewed by Benjamin Otte  <otte@gnome.org>
* gst/schedulers/gthread-cothreads.h:
free allocated data for main cothread, too when destroying context
(fixes #141417)
2004-04-30 02:16:29 +00:00
Sebastien Cote
72a12f0e86 gst/elements/gstfilesink.c: Patch from Sebastien Cote to fix leakage of events. (bug #141414)
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_filesink_handle_event):
Patch from Sebastien Cote to fix leakage of events. (bug #141414)
2004-04-29 22:12:35 +00:00
Thomas Vander Stichele
a1b6e4c148 fix build and small issues
Original commit message from CVS:
fix build and small issues
2004-04-29 10:16:11 +00:00
Benjamin Otte
ab8fc54334 gst/: remove useless _gst_progname stuff
Original commit message from CVS:
* gst/gst.c: (init_post):
* gst/gstinfo.c:
remove useless _gst_progname stuff
* tools/gst-inspect.c: (print_field), (print_caps):
improve caps output
2004-04-29 01:44:13 +00:00
David Schleef
7f6d9dcadf Disable parsing of a lot of files that aren't part of the exported API. Move corresponding template files to old/, w...
Original commit message from CVS:
Disable parsing of a lot of files that aren't part of the
exported API.  Move corresponding template files to old/,
waiting for removal when they don't contain anything
interesting.
* docs/gst/Makefile.am:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/cothreads.sgml:
* docs/gst/tmpl/cothreads_compat.sgml:
* docs/gst/tmpl/gettext.sgml:
* docs/gst/tmpl/gobject2gtk.sgml:
* docs/gst/tmpl/grammar.tab.sgml:
* docs/gst/tmpl/gst-i18n-app.sgml:
* docs/gst/tmpl/gst-i18n-lib.sgml:
* docs/gst/tmpl/gst_private.sgml:
* docs/gst/tmpl/gstaggregator.sgml:
* docs/gst/tmpl/gstarch.sgml:
* docs/gst/tmpl/gstatomic_impl.sgml:
* docs/gst/tmpl/gstbufferstore.sgml:
* docs/gst/tmpl/gstdata_private.sgml:
* docs/gst/tmpl/gstdisksink.sgml:
* docs/gst/tmpl/gstdisksrc.sgml:
* docs/gst/tmpl/gstelementfactory.sgml:
* docs/gst/tmpl/gstextratypes.sgml:
* docs/gst/tmpl/gstfakesink.sgml:
* docs/gst/tmpl/gstfakesrc.sgml:
* docs/gst/tmpl/gstfdsink.sgml:
* docs/gst/tmpl/gstfdsrc.sgml:
* docs/gst/tmpl/gstfilesink.sgml:
* docs/gst/tmpl/gstfilesrc.sgml:
* docs/gst/tmpl/gsthttpsrc.sgml:
* docs/gst/tmpl/gstidentity.sgml:
* docs/gst/tmpl/gstindexfactory.sgml:
* docs/gst/tmpl/gstmarshal.sgml:
* docs/gst/tmpl/gstmd5sink.sgml:
* docs/gst/tmpl/gstmultidisksrc.sgml:
* docs/gst/tmpl/gstmultifilesrc.sgml:
* docs/gst/tmpl/gstpadtemplate.sgml:
* docs/gst/tmpl/gstpipefilter.sgml:
* docs/gst/tmpl/gstschedulerfactory.sgml:
* docs/gst/tmpl/gstsearchfuncs.sgml:
* docs/gst/tmpl/gstshaper.sgml:
* docs/gst/tmpl/gstspider.sgml:
* docs/gst/tmpl/gstspideridentity.sgml:
* docs/gst/tmpl/gststatistics.sgml:
* docs/gst/tmpl/gsttee.sgml:
* docs/gst/tmpl/gsttimecache.sgml:
* docs/gst/tmpl/gsttypefind.sgml:
* docs/gst/tmpl/gsttypefindfactory.sgml:
* docs/gst/tmpl/gstxmlregistry.sgml:
* docs/gst/tmpl/gthread-cothreads.sgml:
* docs/gst/tmpl/old/cothreads.sgml:
* docs/gst/tmpl/old/cothreads_compat.sgml:
* docs/gst/tmpl/old/gettext.sgml:
* docs/gst/tmpl/old/gobject2gtk.sgml:
* docs/gst/tmpl/old/grammar.tab.sgml:
* docs/gst/tmpl/old/gst-i18n-app.sgml:
* docs/gst/tmpl/old/gst-i18n-lib.sgml:
* docs/gst/tmpl/old/gst_private.sgml:
* docs/gst/tmpl/old/gstaggregator.sgml:
* docs/gst/tmpl/old/gstarch.sgml:
* docs/gst/tmpl/old/gstatomic_impl.sgml:
* docs/gst/tmpl/old/gstbufferstore.sgml:
* docs/gst/tmpl/old/gstdata_private.sgml:
* docs/gst/tmpl/old/gstdisksink.sgml:
* docs/gst/tmpl/old/gstdisksrc.sgml:
* docs/gst/tmpl/old/gstelementfactory.sgml:
* docs/gst/tmpl/old/gstextratypes.sgml:
* docs/gst/tmpl/old/gstfakesink.sgml:
* docs/gst/tmpl/old/gstfakesrc.sgml:
* docs/gst/tmpl/old/gstfdsink.sgml:
* docs/gst/tmpl/old/gstfdsrc.sgml:
* docs/gst/tmpl/old/gstfilesink.sgml:
* docs/gst/tmpl/old/gstfilesrc.sgml:
* docs/gst/tmpl/old/gsthttpsrc.sgml:
* docs/gst/tmpl/old/gstidentity.sgml:
* docs/gst/tmpl/old/gstindexfactory.sgml:
* docs/gst/tmpl/old/gstmarshal.sgml:
* docs/gst/tmpl/old/gstmd5sink.sgml:
* docs/gst/tmpl/old/gstmultidisksrc.sgml:
* docs/gst/tmpl/old/gstmultifilesrc.sgml:
* docs/gst/tmpl/old/gstpadtemplate.sgml:
* docs/gst/tmpl/old/gstpipefilter.sgml:
* docs/gst/tmpl/old/gstschedulerfactory.sgml:
* docs/gst/tmpl/old/gstsearchfuncs.sgml:
* docs/gst/tmpl/old/gstshaper.sgml:
* docs/gst/tmpl/old/gstspider.sgml:
* docs/gst/tmpl/old/gstspideridentity.sgml:
* docs/gst/tmpl/old/gststatistics.sgml:
* docs/gst/tmpl/old/gsttee.sgml:
* docs/gst/tmpl/old/gsttimecache.sgml:
* docs/gst/tmpl/old/gsttypefindfactory.sgml:
* docs/gst/tmpl/old/gstxmlregistry.sgml:
* docs/gst/tmpl/old/gthread-cothreads.sgml:
* docs/gst/tmpl/old/types.sgml:
* docs/gst/tmpl/types.sgml:
Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
gtkdoc-scan doesn't like files with the same name in different
directories.
* gst/elements/Makefile.am:
* gst/elements/gstelements.c:
* gst/elements/gsttypefind.c:
* gst/elements/gsttypefind.h:
* gst/elements/gsttypefindelement.c:
* gst/elements/gsttypefindelement.h:
2004-04-29 00:32:28 +00:00
David Schleef
a2a974bfae A bunch of portability fixes, derived from Steve Lhomme's MSVC
Original commit message from CVS:
A bunch of portability fixes, derived from Steve Lhomme's MSVC
patch (bug #141317):
* gst/gst-i18n-lib.h: Allow disabling gettext.
* gst/gstatomic_impl.h: disable warning when it's dumb.
* gst/gstclock.c: fix include
* gst/gstcompat.h: fix variadic macro
* gst/gstinfo.c: fix include
* gst/gstmacros.h: add defines for inlines on MSVC
* gst/gstplugin.c: fix includes
* gst/gstregistry.c: fix includes
* gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
* gst/gstsystemclock.c: fix include
* gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
* gst/registries/gstxmlregistry.c:
(gst_xml_registry_parse_element_factory): fix use of non-portable
functions
* libs/gst/control/dparam.h: Remove trailing comma in enum definition
* libs/gst/control/dparammanager.h: same
2004-04-28 23:26:06 +00:00
David Schleef
5f370a6455 gst/gstcaps.c: Patch from Tim-Philipp Müller to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
(gst_caps_append), (gst_caps_append_structure),
(gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
(gst_caps_set_simple), (gst_caps_set_simple_valist),
(gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
(gst_caps_is_fixed), (gst_caps_is_always_compatible),
(gst_caps_intersect), (gst_caps_normalize),
(gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
* gst/gstcaps.h: use GST_IS_CAPS().
2004-04-28 20:19:46 +00:00
David Schleef
1234b1126b gst/gstcpu.c: Don't clobber ebx in inline assembly. gcc doesn't handle it correctly. (bug #141083)
Original commit message from CVS:
* gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
assembly.  gcc doesn't handle it correctly. (bug #141083)
* gst/gsttrashstack.h: same
2004-04-26 20:04:22 +00:00
Benjamin Otte
a4c2564b60 gst/gstelement.c: fix assertion to do an int comparison
Original commit message from CVS:
* gst/gstelement.c: (gst_element_change_state):
fix assertion to do an int comparison
2004-04-25 20:28:21 +00:00
Benjamin Otte
d0c08ccb19 gst/elements/gstfilesrc.c: better debugging output on error
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
better debugging output on error
2004-04-25 18:24:02 +00:00
Benjamin Otte
3d021d552f gst/gstcaps.c: fix memleak
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_subtract):
fix memleak
2004-04-25 17:46:30 +00:00
Benjamin Otte
6eb8a092a4 gst/gstvalue.c: add comparison function for buffers
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_compare_buffer),
(_gst_value_initialize):
add comparison function for buffers
2004-04-23 01:20:59 +00:00
Benjamin Otte
3b2cc105c3 gst/gstcaps.c: call gst_caps_is_subset
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_is_always_compatible):
call gst_caps_is_subset
2004-04-23 00:04:50 +00:00
Benjamin Otte
2792a59df4 gst/gstcaps.c: add documentation
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal),
(gst_caps_is_subset):
add documentation
2004-04-23 00:00:25 +00:00
Benjamin Otte
bb1302b533 gst/gstcaps.c: fix simplifying and subtracting not working correctly with optional properties solve assorted problems...
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_structure_subtract_field),
(gst_caps_structure_subtract), (gst_caps_subtract),
(gst_caps_structure_figure_out_union),
(gst_caps_structure_simplify), (gst_caps_do_simplify):
fix simplifying and subtracting not working correctly with optional
properties
solve assorted problems that make it now simplify ebven more
* docs/gst/tmpl/gstcaps.sgml:
* gst/gstcaps.h:
make gst_caps_do_simplify return a bool to indicate if it simplified
* testsuite/caps/simplify.c: (main):
add more checks. The tests is quite a bit useless right now because
the core is heavily simplifying itself.
* testsuite/caps/caps.h:
fix caps to contain all optional properties
2004-04-22 23:50:46 +00:00
Benjamin Otte
1c0dbd87b9 docs/gst/tmpl/: update for recent API changes
Original commit message from CVS:
* docs/gst/tmpl/gstcaps.sgml:
* docs/gst/tmpl/gstfilesrc.sgml:
* docs/gst/tmpl/gststructure.sgml:
* docs/gst/tmpl/gstvalue.sgml:
update for recent API changes
* gst/gstcaps.c: (gst_caps_do_simplify):
fix to stop trying with a freed structure
* gst/gstpad.c: (gst_pad_link_fixate):
simplify caps
* gst/gstpad.c: (gst_pad_template_get_caps_by_name):
remove C++ comment
* gst/gstpad.h:
deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
* gst/gststructure.c: (gst_structure_value_get_generic_type),
(gst_structure_to_string):
keep the correct type when using lists of ranges
* gst/gstvalue.c: (gst_value_list_prepend_value),
(gst_value_list_append_value):
copy the value before adding to the list (d'oh)
* gst/gstvalue.c: (gst_value_subtract_int_range_int),
(gst_value_subtract_int_range_int_range):
handle overflows correctly
* gst/gstvalue.c: (gst_value_subtract_from_list):
fix memleak
* testsuite/caps/caps.h:
add a caps that caused segfaults
2004-04-22 16:39:23 +00:00
Benjamin Otte
d65cd5dc7d gst/gstcaps.c: allow subtracting ANY and EMPTY from ANY caps
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_subtract):
allow subtracting ANY and EMPTY from ANY caps
2004-04-22 04:41:19 +00:00
Benjamin Otte
ef64b87987 gst/gstcaps.c: only simplify in functions that create new caps. Simplifying in gst_caps_append breaks tests.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
(gst_caps_union):
only simplify in functions that create new caps. Simplifying in
gst_caps_append breaks tests.
2004-04-22 04:29:18 +00:00
Benjamin Otte
a79d06fe59 gst/gstcaps.c: unset GValue after use
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_structure_simplify):
unset GValue after use
* gst/gstcaps.c: (gst_caps_append),
* gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
use gst_caps_simplify (reduces registry size by 30%)
* gst/gstpad.c: (gst_pad_template_new):
don't allow NULL caps
2004-04-22 03:34:43 +00:00
Benjamin Otte
03a9d6a747 docs/gst/gstreamer-sections.txt: add gst_caps_do_simplify
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
add gst_caps_do_simplify
* gst/gstcaps.c:
add documentation for gst_caps_do_simplify
* gst/gstvalue.h:
fix typo in gst_value_register_subtract_func declaration for gst-doc
2004-04-22 02:43:57 +00:00
Benjamin Otte
d7c64c071b gst/gstcaps.c: fix bug when converting from empty string.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_from_string_inplace):
fix bug when converting from empty string.
* gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
(gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
use gst_caps_new_empty to allocate a new caps. Only that function
allocates memory for caps now.
* gst/gstcaps.c: (gst_caps_remove_and_get_structure),
(gst_caps_remove_structure):
add ability to remove one structure (but not to header yet)
* gst/gstcaps.c: (gst_caps_compare_structures),
(gst_caps_simplify), (gst_caps_structure_figure_out_union),
(gst_caps_structure_simplify), (gst_caps_do_simplify),
* gst/gstcaps.h:
add gst_caps_do_simplify that tries to simplify a caps in place.
Deprecate old gst_caps_simplify function.
* testsuite/caps/caps.h:
add caps.h containing a common set of caps to test against.
* testsuite/caps/sets.c: (check_caps), (main):
use it.
* testsuite/caps/.cvsignore:
* testsuite/caps/Makefile.am:
* testsuite/caps/simplify.c: (check_caps), (main):
add test to check correctness and efficency of caps simplification.
2004-04-22 02:35:13 +00:00
Benjamin Otte
15e8b2cfc7 gst/gstparse.c: Free the GString used in _gst_parse_escape()
Original commit message from CVS:
reviewed by Benjamin Otte  <otte@gnome.org>
* gst/gstparse.c: (_gst_parse_escape):
Free the GString used in _gst_parse_escape()
2004-04-21 22:56:59 +00:00
Benjamin Otte
a3cb86522a gst/gstpad.c: refuse to link if the link is not possible
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_link_negotiate):
refuse to link if the link is not possible
* configure.ac:
* testsuite/Makefile.am:
* testsuite/negotiation/.cvsignore:
* testsuite/negotiation/Makefile.am:
* testsuite/negotiation/pad_link.c: (main):
add test that checks the above behaviour
2004-04-21 19:12:51 +00:00
Thomas Vander Stichele
48e3fbd44f support nonregular files (#140734)
Original commit message from CVS:
support nonregular files (#140734)
2004-04-21 14:51:27 +00:00
Thomas Vander Stichele
e40680565f fixing typos
Original commit message from CVS:
fixing typos
2004-04-21 10:06:37 +00:00
Benjamin Otte
681588c843 more uninitialized variables - and no, I won't use -O2
Original commit message from CVS:
more uninitialized variables - and no, I won't use -O2
2004-04-21 04:18:17 +00:00
Benjamin Otte
0626bb1c6f bleargh - uninitialized variables
Original commit message from CVS:
bleargh - uninitialized variables
2004-04-21 04:13:20 +00:00
Benjamin Otte
6d8c433fa8 gst/gstpad.c: add sophisticated error checking code to see if fixation functions did their fixation right
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_link_fixate):
add sophisticated error checking code to see if fixation functions
did their fixation right
2004-04-21 04:08:19 +00:00
Benjamin Otte
614b4d1627 gst/gstcaps.c: check for ANY caps before appending/unioning
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
check for ANY caps before appending/unioning
* gst/gstcaps.c: (gst_caps_is_subset),
(gst_caps_is_equal), (gst_caps_structure_subtract_field),
(gst_caps_structure_subtract), (gst_caps_subtract):
* gst/gstcaps.h:
add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
the API. deprecate gst_caps_is_equal_fixed
* gst/gstpad.c: (gst_pad_try_set_caps):
* gst/gstqueue.c: (gst_queue_link):
s/gst_caps_is_equal_fixed/gst_caps_is_equal/
* gst/gststructure.c: (gst_structure_get_name_id):
* gst/gststructure.h:
add function gst_structure_get_name_id
* gst/gstvalue.c: (gst_value_subtract_int_int_range),
(gst_value_create_new_range), (gst_value_subtract_int_range_int),
(gst_value_subtract_int_range_int_range),
(gst_value_subtract_double_double_range),
(gst_value_subtract_double_range_double),
(gst_value_subtract_double_range_double_range),
(gst_value_subtract_from_list), (gst_value_subtract_list),
(gst_value_can_intersect), (gst_value_subtract),
(gst_value_can_subtract), (gst_value_register_subtract_func),
(_gst_value_initialize):
* gst/gstvalue.h:
add support for subtracting values from each other. Note that
subtracting means subtracting as in set theory. Required for caps
stuff above.
* testsuite/caps/.cvsignore:
* testsuite/caps/Makefile.am:
* testsuite/caps/erathostenes.c: (erathostenes), (main):
* testsuite/caps/sets.c: (check_caps), (main):
* testsuite/caps/subtract.c: (check_caps), (main):
add tests for subtraction and equality code.
2004-04-21 03:25:13 +00:00
David Schleef
bdb8c10b5c gst/autoplug/Makefile.am: Fix some little buglets in last checkin.
Original commit message from CVS:
* gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
* gst/indexers/Makefile.am:
* gst/schedulers/Makefile.am:
* libs/gst/bytestream/Makefile.am:
* libs/gst/control/Makefile.am:
* libs/gst/getbits/Makefile.am:
2004-04-21 02:43:55 +00:00
David Schleef
828252e0f2 common/as-libtool.mak: Fine-tune DLL building.
Original commit message from CVS:
* common/as-libtool.mak: Fine-tune DLL building.
* configure.ac: Link plugins against libgstreamer.  Define plugindir
(like gst-plugins)
* examples/plugins/Makefile.am: remove plugindir
* gst/autoplug/Makefile.am: DLL building fixes
* gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
Windows.
* gst/elements/gstelements.c: Conditionally disable pipefilter.
* gst/indexers/Makefile.am: DLL building fixes
* gst/schedulers/Makefile.am: DLL building fixes.
* libs/gst/bytestream/Makefile.am: DLL building fixes.
* libs/gst/control/Makefile.am: same
* libs/gst/getbits/Makefile.am: same
* testsuite/Makefile.am: New dlopen directory
* testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
when dlopened.
* testsuite/dlopen/dlopen_gst.c: (main): same
* testsuite/dlopen/loadgst.c: (do_test): same
2004-04-20 22:22:01 +00:00
Sebastien Cote
5453269a0e gst/parse/grammar.y: Apply patch from Sebastien Cote
Original commit message from CVS:
* gst/parse/grammar.y:  Apply patch from Sebastien Cote
<sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
2004-04-20 19:40:05 +00:00
Thomas Vander Stichele
2365399bd7 use GST_TIME_*
Original commit message from CVS:
use GST_TIME_*
2004-04-20 16:42:25 +00:00
Thomas Vander Stichele
5a322ed432 making _set_property warn on unknown properties use GST_TIME_FORMAT for timestamp/duration
Original commit message from CVS:

making _set_property warn on unknown properties
use GST_TIME_FORMAT for timestamp/duration
2004-04-20 16:25:41 +00:00
Benjamin Otte
d138a1b78e gst/autoplug/gstspider.c: improve debugging messages
Original commit message from CVS:
* gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
(gst_spider_identity_plug):
improve debugging messages
* gst/gstbin.c: (gst_bin_remove_func):
make sure the state_change function is only called with simple state
transitions
2004-04-20 16:17:20 +00:00
Johan Dahlin
a78d3beebf gst/gstpad.c (_invent_event): Clean up
Original commit message from CVS:
* gst/gstpad.c (_invent_event): Clean up
2004-04-20 09:43:34 +00:00
David Schleef
d10158fcb5 configure.ac: Add test for allowing unaligned access. Add define to put in gstconfig.h.
Original commit message from CVS:
* configure.ac: Add test for allowing unaligned access.  Add define
to put in gstconfig.h.
* docs/gst/gstreamer-sections.txt: New symbols
* docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
* docs/gst/tmpl/gstfilesrc.sgml:
* docs/gst/tmpl/gstparse.sgml:
* docs/gst/tmpl/gsttypes.sgml:
* docs/gst/tmpl/gstutils.sgml:
* docs/gst/tmpl/gstvalue.sgml:
* gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
* gst/gstutils.h: Add macros for unaligned memory access.  Useful
on most !i386/!powerpc architectures.  From Daniel Gazard
<daniel.gazard@free.fr>.  (bug #140156)
* po/af.po: Check in changes made by gettext.
* po/az.po:
* po/fr.po:
* po/nl.po:
* po/sr.po:
* po/sv.po:
2004-04-20 00:17:26 +00:00
Benjamin Otte
d30991ae03 gst/schedulers/entryscheduler.c: refuse to yield when decoupled elements insist on doing that.
Original commit message from CVS:
* gst/schedulers/entryscheduler.c:
(gst_entry_scheduler_yield):
refuse to yield when decoupled elements insist on doing that.
At least it's better than crashing
2004-04-19 23:08:03 +00:00
Johan Dahlin
272eccde22 gst/parse/grammar.y (__gst_parse_chain_free): Don't do null checking here, do it before calling the function.
Original commit message from CVS:
* gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
checking here, do it before calling the function.
Clean up, use for loops instead of while loops while iterating
over lists.
2004-04-19 17:40:24 +00:00
Johan Dahlin
2ce7ad3382 gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo in debug message.
Original commit message from CVS:
* gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
in debug message.
(gst_spider_create_and_plug): Improve debug message.
General: Replace while loops which iterates over GLists with for
loops. Which are much cleaner, improves readability, especially
for gst_spider_identity_plug
2004-04-19 12:15:50 +00:00
Johan Dahlin
2821d8ff20 gst/gstpad.c (_invent_event): Fix parameters to warning macros, fixes bug 140477
Original commit message from CVS:
* gst/gstpad.c (_invent_event): Fix parameters to warning macros,
fixes bug 140477
2004-04-19 10:22:32 +00:00
Benjamin Otte
bb7d6621fd gst/gstelement.c: simplify
Original commit message from CVS:
* gst/gstelement.c: (gst_element_dispose):
simplify
* gst/gstpad.c: (gst_pad_call_chain_function):
don't create loads of events due to bad macro usage
2004-04-17 03:26:46 +00:00
David Schleef
ac0fd9c5bf gst/: (_gst_value_initialize): Create a new function gst_type_is_fixed() to indicate types that are fixed wrt caps or...
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_is_fixed_foreach):
* gst/gstpad.c: (_gst_pad_default_fixate_foreach):
* gst/gstvalue.c: (gst_value_serialize_buffer),
(gst_value_deserialize_buffer), (gst_type_is_fixed),
(_gst_value_initialize): Create a new function gst_type_is_fixed()
to indicate types that are fixed wrt caps or not.  Switching to
this function fixes (bug #140298).
* gst/gstvalue.h:
2004-04-17 02:21:54 +00:00
Benjamin Otte
2713712906 gst/elements/gstfilesrc.*: s/seek_happened/need_discont/ and require discont before sending any data
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
(gst_filesrc_change_state), (gst_filesrc_srcpad_event):
* gst/elements/gstfilesrc.h:
s/seek_happened/need_discont/ and require discont before sending any
data
2004-04-16 02:57:55 +00:00
David Schleef
06940084e5 gst/gstvalue.c: Register these types as fundamental types. (bug #140015)
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_serialize_buffer),
(gst_value_deserialize_buffer), (_gst_value_initialize):
Register these types as fundamental types. (bug #140015)
2004-04-16 02:29:07 +00:00
Benjamin Otte
266cff34c7 gst/gstpad.c: implement enforcing discont events before buffers are passed. This allows state changes of only some el...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
(gst_pad_link_free), (gst_pad_link_try), (_invent_event),
(gst_pad_pull):
implement enforcing discont events before buffers are passed. This
allows state changes of only some elements and later correctly going
on where they left off (or in short: you can now set audio sinks to
NULL to release the device when the pipeline is paused)
* gst/gstpad.c: (gst_pad_call_chain_function),
(gst_pad_call_get_function):
* gst/gstpad.h:
add gst_pad_call_chain_function and gst_pad_call_get_function for
scheduler interaction. They are required because of the changes
above.
* gst/schedulers/entryscheduler.c: (get_buffer),
(gst_entry_scheduler_chain_wrapper),
(gst_entry_scheduler_get_wrapper),
(gst_entry_scheduler_state_transition),
(gst_entry_scheduler_pad_link):
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_chain_wrapper),
(gst_basic_scheduler_src_wrapper),
(gst_basic_scheduler_chainhandler_proxy),
(gst_basic_scheduler_gethandler_proxy),
(gst_basic_scheduler_cothreaded_chain),
(gst_basic_scheduler_chain_elements):
* gst/schedulers/gstoptimalscheduler.c:
(get_group_schedule_function), (pad_clear_queued),
(gst_opt_scheduler_pad_link):
use the new functions instead of calling get/chain-functions
directly.
2004-04-16 01:36:37 +00:00
David Schleef
66f00f1c78 docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
* docs/gst/tmpl/gstinfo.sgml: same
* docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
gtk-doc put here.
* gst/gstutils.h: Remove the \ that was confusing gtk-doc.
* examples/queue/queue.c: (main):  We iterate pipelines, not
bins.  (bug #139996)
2004-04-16 01:34:05 +00:00
David Schleef
addcdee2d6 gst/gstplugin.c: Disable more stuff on
Original commit message from CVS:
* gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
(_gst_plugin_fault_handler_setup):  Disable more stuff on
Windows.
2004-04-16 00:32:27 +00:00
David Schleef
1da0f13eb8 gst/gstinfo.c: Change some internal symbol names to not conflict with new gstinfo.h symbols.
Original commit message from CVS:
* gst/gstinfo.c: (_gst_debug_init): Change some internal
symbol names to not conflict with new gstinfo.h symbols.
* gst/gstinfo.h: Add inline functions for all those crazy
compilers that don't know how to handle variadic macros (MSVC).
2004-04-15 23:25:39 +00:00
David Schleef
0622e9e391 gst/gstcpu.c: Add workaround for gcc-3.2 generating bad code around the cpu detection asm code.
Original commit message from CVS:
* gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
generating bad code around the cpu detection asm code.
2004-04-15 03:20:23 +00:00
David Schleef
726bbbf7c6 configure.ac: Disable various code when compiling for MinGW.
Original commit message from CVS:
* configure.ac:  Disable various code when compiling for MinGW.
* gst/elements/Makefile.am:
* gst/elements/gstelements.c:
* gst/elements/gstfdsrc.c: (gst_fdsrc_get):
* gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
* gst/registries/gstxmlregistry.c: (make_dir):
2004-04-14 01:38:27 +00:00
David Schleef
26d7745271 gst/: Convert asm source into inline assembly.
Original commit message from CVS:
* gst/Makefile.am:
* gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
assembly.
* gst/gstcpuid_i386.s: remove
2004-04-14 01:24:41 +00:00
David Schleef
f8c81337c5 configure.ac: Changes to remove POSIXisms (mmap in this case) and to build DLLs on Windows.
Original commit message from CVS:
* configure.ac: Changes to remove POSIXisms (mmap in this case)
and to build DLLs on Windows.
* gst/Makefile.am:
* gst/elements/gstfilesrc.c: (gst_filesrc_get),
(gst_filesrc_open_file):
* gst/schedulers/Makefile.am:
2004-04-13 22:18:36 +00:00
David Schleef
b3a5ebd27c gst/gstcaps.c: Fix bug in fixating lists.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
(gst_caps_structure_fixate_field_nearest_double):  Fix bug in
fixating lists.
2004-04-13 20:50:53 +00:00
Thomas Vander Stichele
0d4983a512 add debug
Original commit message from CVS:
add debug
2004-04-13 10:44:12 +00:00
David Schleef
26663bbf1c gst/gstbuffer.c: (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed to using it.
Original commit message from CVS:
* gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
(gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
to using it.
* gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
* gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
* gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
* gst/gststructure.c: (gst_structure_set_valist),
(gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
support for buffers.
* gst/gsttag.c: (gst_tag_register): Constify a prototype that was
intended to be const.
* gst/gsttag.h: same
* gst/gstvalue.c: (gst_value_serialize_buffer),
(gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
to (de)serialize buffers.
* testsuite/caps/Makefile.am:  Add a bit of buffer testing
* testsuite/caps/string-conversions.c: (main):
* testsuite/caps/value_serialize.c: add new test
2004-04-13 02:22:02 +00:00
Benjamin Otte
9d756dd8e1 gst/schedulers/gstbasicscheduler.c: rename categories to basic_*
Original commit message from CVS:
* gst/schedulers/gstbasicscheduler.c: (plugin_init):
rename categories to basic_*
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_chain_wrapper),
(gst_basic_scheduler_chainhandler_proxy),
(gst_basic_scheduler_gethandler_proxy),
(gst_basic_scheduler_eventhandler_proxy):
debugging category fixes - put common stuff in log category
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_chain_elements):
dirty fix: call gst_basic_scheduler_cothreaded_chain when already
active and linking two active chains
2004-04-11 18:55:49 +00:00
Benjamin Otte
5ec3dcdd5d gst/schedulers/gstbasicscheduler.c: make sure we can switch back to the main function if we're still in the main func...
Original commit message from CVS:
* gst/schedulers/gstbasicscheduler.c:
make sure we can switch back to the main function if we're still in
the main function (supposed to fix #139617)
* gst/schedulers/gthread-cothreads.h:
don't throw an error when switching to the same cothread
2004-04-09 22:43:06 +00:00
Benjamin Otte
3147797afb gst/: don't use memchunks for these objects, use malloc instead
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_get_type):
* gst/gstclock.c: (gst_clock_get_type):
* gst/gstindex.c: (gst_index_get_type):
* gst/gstobject.c: (gst_object_get_type),
(gst_signal_object_get_type):
* gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
(gst_pad_template_get_type), (gst_ghost_pad_get_type):
* gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
* gst/gstqueue.c: (gst_queue_get_type):
* gst/gstregistry.c: (gst_registry_get_type):
* gst/gstsystemclock.c: (gst_system_clock_get_type):
* gst/gstthread.c: (gst_thread_get_type):
don't use memchunks for these objects, use malloc instead
2004-04-09 19:05:03 +00:00
Thomas Vander Stichele
5e7866d43a docs/gst/Makefile.am: make docs exit on scanning problems fix nonsrcdir build issues
Original commit message from CVS:
* docs/gst/Makefile.am:
make docs exit on scanning problems
fix nonsrcdir build issues
* docs/gst/gstreamer-sections.txt:
adding stuff from -unused
* gst/gstqueue.h:
create GstQueueSize
* gst/schedulers/cothreads_compat.h:
fix cothread warnings
2004-04-07 15:31:25 +00:00
Thomas Vander Stichele
4e2a0b01e9 better debug info
Original commit message from CVS:
better debug info
2004-04-07 10:42:16 +00:00
Benjamin Otte
6e56b1be99 gst/elements/gstbufferstore.c: when the buffer is complete, don't check if other buffers are needed
Original commit message from CVS:
* gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
when the buffer is complete, don't check if other buffers are needed
* gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
check that the offset is >0 so we don't try to read before the
beginning of the file
* gst/gstpad.c: (gst_pad_set_pad_template):
sink the template, so we don't end up with 130k pad templates
2004-04-06 23:46:37 +00:00
Benjamin Otte
beb197fd35 gst/autoplug/gstspider.c: don't ref the element, adding already reffed it. And we didn't unref it later anyway... (hu...
Original commit message from CVS:
* gst/autoplug/gstspider.c: (gst_spider_link_add):
don't ref the element, adding already reffed it. And we didn't unref
it later anyway... (huge memleak when you used many spider elements)
* gst/gstelement.c: (gst_element_base_class_finalize):
* gst/gstelementfactory.c: (gst_element_factory_cleanup),
(gst_element_register):
* gst/gsturi.c: (gst_element_make_from_uri):
use gst_object_(un)ref instead of g_object(un)ref
2004-04-06 19:45:27 +00:00
Benjamin Otte
b107a0a3ef gst/gstbuffer.h: remove macro that wouldn't work anymore because struct member has been removed.
Original commit message from CVS:
* gst/gstbuffer.h:
remove macro that wouldn't work anymore because struct member has
been removed.
* gst/schedulers/entryscheduler.c: (schedule_forward):
fix segfault for unconnected pads
2004-04-06 05:59:31 +00:00
Benjamin Otte
a14e748c7b gst/gstinfo.h: *_FORMAT modifiers should require putting a % in front of them for consistency reasons.
Original commit message from CVS:
reviewed by David Schleef <ds@schleef.org>
* gst/gstinfo.h:
*_FORMAT modifiers should require putting a % in front of them for
consistency reasons.
2004-04-06 05:58:32 +00:00
Benjamin Otte
9f58cab1f9 whoops, debugging stuff left
Original commit message from CVS:
whoops, debugging stuff left
2004-04-05 22:58:11 +00:00
Benjamin Otte
e0ab9b5740 add support for detecting if GStreamer runs inside valgrind.
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gst_private.h:
* gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
add support for detecting if GStreamer runs inside valgrind.
requires valgrind (d'oh) and --enable-debug for correct cdetection.
print a big message in valgrind that GStreamer has detected it's
running inside and might now use different code.
* gst/gstmemchunk.c: (populate), (free_area),
(gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
(gst_mem_chunk_free):
flag memchunks for valgrind, so it can detect leaking of chunks.
This allows detecting leaks of GstBuffer and GstEvent correctly
inside valgrind.
2004-04-05 21:42:07 +00:00
David Schleef
cce13e8e5c gst/gsttrace.h: Fix #ifdef nesting (bug #139109) Patch from jensgr@gmx.net (Jens Granseuer)
Original commit message from CVS:
* gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
jensgr@gmx.net (Jens Granseuer)
2004-04-05 19:02:39 +00:00
David Schleef
f63e0209bf gst/gstbuffer.c: Allocate GstBuffer structures in one place.
Original commit message from CVS:
* gst/gstbuffer.c: (_gst_buffer_sub_free),
(gst_buffer_default_free), (gst_buffer_default_copy),
(gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
(gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
structures in one place.
2004-04-05 18:39:01 +00:00
Thomas Vander Stichele
d1f07374c3 adding Ronald's timestamp debug defines
Original commit message from CVS:
adding Ronald's timestamp debug defines
2004-04-05 13:34:33 +00:00
Thomas Vander Stichele
ac726511ce fix segfault for static plugins
Original commit message from CVS:
fix segfault for static plugins
2004-04-05 10:03:36 +00:00
Benjamin Otte
563ce1b133 gst/schedulers/gstbasicscheduler.c: fix to work with recent scheduling changes
Original commit message from CVS:
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_pad_link):
fix to work with recent scheduling changes
2004-04-05 02:30:20 +00:00
Benjamin Otte
9f11d29481 gst/schedulers/entryscheduler.c: (some functions, dunno which, prepareChangeLog doesn't work when cvs indents): don't...
Original commit message from CVS:
* gst/schedulers/entryscheduler.c: (some functions, dunno which,
prepareChangeLog doesn't work when cvs indents):
don't throw an error when no element can be scheduled, there's too
many weird reasons why it doesn't work. Return STOPPED instead.
decoupled elemts' schedulability doesn't depend on bufpens.
2004-04-04 23:21:09 +00:00
Benjamin Otte
cb6ac1a3f9 fix unused warning
Original commit message from CVS:
fix unused warning
2004-04-04 04:17:52 +00:00
Benjamin Otte
fd58f301b7 gst/schedulers/gstbasicscheduler.c: fix uninitialized variable warnings
Original commit message from CVS:
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_pad_select):
fix uninitialized variable warnings
2004-04-04 03:11:46 +00:00
Benjamin Otte
dad31c5578 gst/gstpad.c: fix uninitialized variable warning
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_collect_valist):
fix uninitialized variable warning
* gst/schedulers/entryscheduler.c: (schedule_forward):
fix shadowed variable
2004-04-04 03:02:43 +00:00
Benjamin Otte
ac5674b03b gst/: implement gst_pad_collect as replacement for gst_pad_select.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
(gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
(gst_pad_select):
* gst/gstpad.h:
* gst/gstscheduler.c: (gst_scheduler_pad_select),
(gst_scheduler_lock_element), (gst_scheduler_unlock_element):
* gst/gstscheduler.h:
implement gst_pad_collect as replacement for gst_pad_select.
deprecate gst_pad_select and gst_scheduler_(un)lock_element
add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
new pad_select, lock and unlock calls.
* gst/cothreads.c: (cothread_destroy), (cothread_switch):
* gst/cothreads.h:
* gst/schedulers/cothreads_compat.h:
* gst/schedulers/gthread-cothreads.h:
remove unused cothread_lock and cothread_unlock calls
* gst/schedulers/entryscheduler.c:
(gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
(_can_schedule_loop), (gst_entry_scheduler_get_handler),
(gst_entry_scheduler_pad_select):
update to new API
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
(gst_basic_scheduler_pad_select):
remove useless lock and unlock calls, update pad_select to new API
(untested)
* gst/schedulers/gstoptimalscheduler.c:
(gst_opt_scheduler_class_init):
remove useless select, lock and unlock function calls
* gst/elements/gstaggregator.c: (gst_aggregator_loop):
use gst_pad_collect instead of gst_pad_select
2004-04-04 02:36:12 +00:00
Benjamin Otte
343d14cf0e gst/schedulers/entryscheduler.c: add can_schedule_pad to handle element states.
Original commit message from CVS:
* gst/schedulers/entryscheduler.c: (_can_schedule_get),
(can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
(schedule_next_element), (print_entry):
add can_schedule_pad to handle element states.
add schedule_forward to select the correct entry to schedule next
2004-04-04 00:24:30 +00:00
Benjamin Otte
e5ea553496 gst/schedulers/entryscheduler.c: remove unused variable, fix error inside Rb, fix compile warning in unreachable code
Original commit message from CVS:
* gst/schedulers/entryscheduler.c:
remove unused variable, fix error inside Rb, fix compile warning in
unreachable code
2004-04-03 20:52:02 +00:00
Benjamin Otte
93a0882595 fix compile warning in unreachable code
Original commit message from CVS:
fix compile warning in unreachable code
2004-04-03 20:42:43 +00:00
Benjamin Otte
d5ef66d230 gst/schedulers/entryscheduler.c: completely revamp the inner workings, so it's a lot easier to understand and extend
Original commit message from CVS:
* gst/schedulers/entryscheduler.c:
completely revamp the inner workings, so it's a lot easier to
understand and extend
2004-04-03 19:32:12 +00:00
Andy Wingo
02db61fece gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink): Rename ->group1 and ->group2 to ->src and ->sink, re...
Original commit message from CVS:
2004-04-03  Andy Wingo  <wingo@pobox.com>

* gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
Rename ->group1 and ->group2 to ->src and ->sink, respectively.
This allows better introspection of pipeline topology.
(add_to_chain): Don't do trickery to put loop elements first;
rather, queue a chain sort by marking the chain as dirty.
(remove_from_chain): Mark the chain dirty.
(sort_chain): New function. Sorts the group list so that terminal
sinks are first. This means elements on the sink side will be
preferentially sscheduled before elements on the src side of the
pipeline.
(chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
(schedule_chain): If the chain is marked DIRTY, call sort_chain.
(gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
(group_inc_link): Change argument and variable names to match the
new link structure member names (src and sink).
(group_dec_link): Add some description
2004-04-03 13:24:07 +00:00
Benjamin Otte
75f4ff0686 fix to successfully build and test with --disable-gst-debug configure switch
Original commit message from CVS:
* gst/autoplug/gstspider.c: (gst_spider_identity_plug):
* gst/gstinfo.h:
* testsuite/debug/category.c: (main):
* testsuite/debug/commandline.c: (main):
* testsuite/debug/output.c: (main):
* testsuite/debug/printf_extension.c: (main):
fix to successfully build and test with --disable-gst-debug
configure switch
2004-04-03 04:16:24 +00:00
Benjamin Otte
2396af9dc4 gst/gststructure.c: memleak fix: free fields array (partial fix for #134839)
Original commit message from CVS:
reviewed by Benjamin Otte  <otte@gnome.org>
* gst/gststructure.c: (gst_structure_free):
memleak fix: free fields array (partial fix for #134839)
2004-04-02 23:14:42 +00:00
Ronald S. Bultje
d355246b0d docs/random/ds/0.9-suggested-changes: Add a note to change handoff use in fakesrc to be usable in a more generic way ...
Original commit message from CVS:
* docs/random/ds/0.9-suggested-changes:
Add a note to change handoff use in fakesrc to be usable in
a more generic way (fakesrc should be renamed to appsrc or so).
* gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
Change signal type to scope, so we can fill the buffer in the
handoff handler (that's the whole use of this signal...).
2004-04-02 03:08:09 +00:00
Martin Soto
73b88d064e gst/registries/gstxmlregistry.c
Original commit message from CVS:
* gst/registries/gstxmlregistry.c
(gst_xml_registry_rebuild_recurse): Fix the algorithm to
determine if a file is a G_MODULE. The old one discards paths
containing "so" somewhere in the middle. My home directory is
called "soto". Go figure...
2004-04-01 18:28:44 +00:00
Thomas Vander Stichele
456bfef89d some more debuggin
Original commit message from CVS:
some more debuggin
2004-04-01 13:20:52 +00:00
David Schleef
cf56f6b30c gst/gstbuffer.c: (gst_buffer_join): Add function gst_buffer_join() to eventually deprecate gst_buffer_merge(). (bug...
Original commit message from CVS:
* gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
to eventually deprecate gst_buffer_merge().  (bug: #136408)
* gst/gstbuffer.h:
2004-04-01 00:40:26 +00:00
David Schleef
e6a6307944 gst/gstvalue.c: Add some union implementations. We didn't have any previously.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_union_int_int_range),
(gst_value_union_int_range_int_range), (gst_value_can_union),
(gst_value_union), (_gst_value_initialize):  Add some union
implementations.  We didn't have any previously.
* testsuite/caps/Makefile.am:
* testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
(gst_audioscale_getcaps), (test_caps), (main): A little test
that is the same as the caps manipulation in audioscale.
2004-03-31 21:49:19 +00:00
Benjamin Otte
3bed253042 gst/gstthread.c: fix docs
Original commit message from CVS:
* gst/gstthread.c:
fix docs
* gst/gstutils.h:
fix GST_BOILERPLATE_FULL to not throw casting errors on C++
2004-03-30 18:02:38 +00:00
Benjamin Otte
6d87ece93d gst/elements/gstbufferstore.c: set the offset of the buffer to the requested offset
Original commit message from CVS:
* gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
set the offset of the buffer to the requested offset
* gst/elements/gsttypefind.c: (stop_typefinding):
revert patch 1.18 (which I unfortunately don't know the reason for).
This is needed to allow downstream elements to seek. Otherwise
typefind might overwrite a previous seek by downstream elements.
This lead to errors with id3tag and typefind on some mp3s.
* gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
(gst_entry_scheduler_iterate):
be more verbose when debugging
2004-03-30 16:31:06 +00:00
Thomas Vander Stichele
161bcaee42 check string for nullity
Original commit message from CVS:
check string for nullity
2004-03-30 11:21:40 +00:00
Thomas Vander Stichele
0a602d04e0 more doc fixes
Original commit message from CVS:
more doc fixes
2004-03-30 09:15:47 +00:00
David Schleef
8ce063f780 docs/gst/Makefile.am: Disable a bunch of headers from being scanned
Original commit message from CVS:
* docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
* docs/gst/gstreamer-docs.sgml:  More hacking
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/cothreads_compat.sgml:
* docs/gst/tmpl/gstcaps.sgml:
* docs/gst/tmpl/gstclock.sgml:
* docs/gst/tmpl/gstelement.sgml:
* docs/gst/tmpl/gstevent.sgml:
* docs/gst/tmpl/gstpad.sgml:
* docs/gst/tmpl/gstutils.sgml:
* docs/gst/tmpl/gstxml.sgml:
* docs/gst/tmpl/gthread-cothreads.sgml:
* docs/random/ds/0.9-suggested-changes:
* gst/elements/gstfakesink.h: doc fixes
* gst/elements/gstfakesrc.h: doc fixes
* gst/gstcaps.c: doc fixes
* gst/gstcaps.h: doc fixes
* gst/gstelement.c: doc fixes
* gst/gstelement.h: doc fixes
* gst/gstindex.c: doc fixes
* gst/gstinfo.c: doc fixes
* gst/gstpad.c: doc fixes
* gst/gstpad.h: doc fixes
* gst/gstplugin.c: doc fixes
* gst/gsttypefind.h: doc fixes
* gst/gsturi.c: doc fixes
* gst/gstvalue.c: doc fixes
2004-03-30 07:36:19 +00:00
Colin Walters
f8d4198b95 gst/registries/gstxmlregistry.c (get_time)
Original commit message from CVS:
2004-03-29  Colin Walters  <walters@redhat.com>

* gst/registries/gstxmlregistry.c (get_time)
(plugin_times_older_than_recurse):
Use the result of stat to determine whether a path is a file,
so we don't attempt to opendir() files.
2004-03-29 22:17:28 +00:00
Benjamin Otte
097dc18c80 gst/gstpad.c: print caps in debugging output when setting caps failed
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_set_explicit_caps):
print caps in debugging output when setting caps failed
* gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
(schedule_next_element), (get_buffer), (run_chainhandler),
(element_may_start), (gst_entry_scheduler_chain_handler),
(gst_entry_scheduler_get_handler),
(gst_entry_scheduler_state_transition),
(gst_entry_scheduler_pad_link):
make this scheduler a testcase for mandatory
discont-before-first-buffer which is needed if we want to allow apps
to release the sound device.
add SCHED_ASSERT macro to print scheduler state before an assertion
triggers.
2004-03-29 16:20:45 +00:00
Martin Soto
78640b89c0 gst/gstelement.*: New function for setting element time taking into account a hardware buffering delay.
Original commit message from CVS:
* gst/gstelement.h:
* gst/gstelement.c (gst_element_set_time_delay): New function for
setting element time taking into account a hardware buffering
delay.
(gst_element_set_time): Now just an invocation of
gst_element_set_time_delay.
* gst/gstclock.h:
* gst/gstclock.c (gst_clock_get_event_time_delay): New function
allowing to set event times in the future.
(gst_clock_get_event_time): Now just an invocation of
gst_clock_get_event_time_delay.
2004-03-28 13:15:21 +00:00
Benjamin Otte
b2067f5593 more brown paperbags, i can really start to go shopping soon
Original commit message from CVS:
more brown paperbags, i can really start to go shopping soon
2004-03-28 02:39:59 +00:00
Benjamin Otte
e93d031caa brown paperbag
Original commit message from CVS:
brown paperbag
2004-03-28 02:37:52 +00:00
Benjamin Otte
c29e35436f gst/gstbin.c: don't add decoupled elements to schedulers - otherwise it's impossible to control if a link to a decoup...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_set_element_sched),
(gst_bin_unset_element_sched):
don't add decoupled elements to schedulers - otherwise it's
impossible to control if a link to a decoupled element was already
removed from a scheduler or not.
* gst/schedulers/cothreads_compat.h:
* gst/schedulers/gthread-cothreads.h:
add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
is no "unused" warning.
* gst/schedulers/Makefile.am:
* gst/schedulers/entryscheduler.c:
add new scheduler, based on ideas from talking to David and Martin.
It's supposed to be small and correct. Currently it's also slow (but
it's not noticable)
* examples/retag/retag.c: (main):
* testsuite/bytestream/test1.c: (main):
fix missing NULLs at end of variadic functions
* testsuite/elements/.cvsignore:
update
2004-03-28 02:29:24 +00:00
Jan Schmidt
734bd34a92 Added GST_EVENT_ANY as an event type that passes a GstStructure
Original commit message from CVS:
Added GST_EVENT_ANY as an event type that passes a GstStructure
2004-03-27 15:30:41 +00:00
David Schleef
209c82ee06 docs/gst/gstreamer-sections.txt: More doc hacking.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:  More doc hacking.
* docs/gst/tmpl/gstaggregator.sgml:
* docs/gst/tmpl/gstautoplugfactory.sgml:
* docs/gst/tmpl/gstbin.sgml:
* docs/gst/tmpl/gstbuffer.sgml:
* docs/gst/tmpl/gstbufferstore.sgml:
* docs/gst/tmpl/gstfakesink.sgml:
* docs/gst/tmpl/gstfakesrc.sgml:
* docs/gst/tmpl/gstmd5sink.sgml:
* docs/gst/tmpl/gstreamer-unused.sgml:
* docs/gst/tmpl/gstsearchfuncs.sgml:
* docs/gst/tmpl/gstshaper.sgml:
* docs/gst/tmpl/gstspider.sgml:
* docs/gst/tmpl/gsttee.sgml:
* docs/gst/tmpl/gstutils.sgml:
* docs/gst/tmpl/gstvalue.sgml:
* docs/gst/tmpl/gstxml.sgml:
* gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
and we don't support it.
* gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
(gst_use_threads), (gst_has_threads): same
* gst/gstthreaddummy.c: same
* gst/autoplug/gstspider.c: Make gst_spider_details static.
* gst/autoplug/gstspider.h: same
* gst/elements/gstaggregator.h: Remove bogus function from header
* gst/elements/gstfakesink.h: same
* gst/elements/gstfakesrc.h: same
* gst/elements/gstmd5sink.h: same
* gst/elements/gstshaper.h: same
* gst/elements/gsttee.h: same
* gst/gstbin.c: doc fixes
* gst/gstbin.h: Remove unused definition.
* gst/gstbuffer.c: doc fixes
* gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
* gst/gstfilter.c: doc fixes
* gst/gsttag.c: doc fixes
* gst/gstvalue.c: doc fixes
2004-03-26 03:46:16 +00:00
Benjamin Otte
7f6e97ebe9 gst/schedulers/: fix GStreamer to not have issues with lvalue casts anymore (fixes some bug, but bugzilla is down)
Original commit message from CVS:
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_src_wrapper):
* gst/schedulers/gstoptimalscheduler.c:
(gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
(pad_clear_queued), (gst_opt_scheduler_add_element),
(gst_opt_scheduler_remove_element):
fix GStreamer to not have issues with lvalue casts anymore (fixes
some bug, but bugzilla is down)
2004-03-24 14:06:48 +00:00
Benjamin Otte
0c01133df9 gst/gstelement.c: add documentation about a gobject quirk where the object hasn't the correct class pointer set on in...
Original commit message from CVS:
* gst/gstelement.c:
add documentation about a gobject quirk where the object hasn't the
correct class pointer set on initialization
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_src_wrapper):
make sure to not run into an infinite loop
2004-03-24 13:38:17 +00:00
Benjamin Otte
58a5ccec56 gst/gstutils.*: first argument of gst_util_dump_mem should be const
Original commit message from CVS:
* gst/gstutils.c: (gst_util_dump_mem):
* gst/gstutils.h:
first argument of gst_util_dump_mem should be const
2004-03-22 22:23:50 +00:00
Johan Dahlin
f9f0df62e8 gst/gstvalue.h: Clean up a little bit.
Original commit message from CVS:
* gst/gstvalue.h: Clean up a little bit.
2004-03-22 15:35:06 +00:00
Benjamin Otte
c903ce8a27 gst/: clean up used memory in this elements correctly on teardown (closes #137279)
Original commit message from CVS:
reviewed by Benjamin Otte  <otte@gnome.org>
* gst/autoplug/gstspider.c: (gst_spider_dispose):
* gst/elements/gstaggregator.c: (gst_aggregator_finalize),
(gst_aggregator_class_init), (gst_aggregator_init):
* gst/elements/gstfilesrc.c: (gst_filesrc_init),
(gst_filesrc_dispose), (gst_filesrc_set_location):
* gst/elements/gstidentity.c: (gst_identity_finalize),
(gst_identity_class_init), (gst_identity_chain):
* gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
* gst/elements/gststatistics.c: (gst_statistics_finalize),
(gst_statistics_class_init):
* gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
(gst_tee_get_property):
clean up used memory in this elements correctly on teardown (closes
#137279)
2004-03-21 03:22:55 +00:00
Colin Walters
5dce08af99 gst/registries/gstxmlregistry.c: Make registry saving atomic.
Original commit message from CVS:
2004-03-20  Colin Walters  <walters@verbum.org>

* gst/registries/gstxmlregistry.c:
(gst_xml_registry_open_func, gst_xml_registry_close_func): Make
registry saving atomic.
2004-03-20 20:24:49 +00:00
Colin Walters
59c20484d0 gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func): Just use access() instead of actually creating and...
Original commit message from CVS:
2004-03-20  Colin Walters  <walters@verbum.org>

* gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func): Just use
access() instead of actually creating and deleting files.
2004-03-20 17:59:08 +00:00
Thomas Vander Stichele
0bf7263c12 updated translation return silently when filesink not open
Original commit message from CVS:
updated translation
return silently when filesink not open
2004-03-18 13:01:21 +00:00
David Schleef
ee50a6a3c3 gst/gst.c: Fix some gettext strings to make them easier to translate. Required making the strings non-const.
Original commit message from CVS:
* gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
(gst_init_check_with_popt_table):  Fix some gettext strings to
make them easier to translate.  Required making the strings
non-const.
2004-03-17 02:43:55 +00:00
Johan Dahlin
5c403b9abe gst/schedulers/gstoptimalscheduler.c
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c
(gst_opt_scheduler_pad_unlink): Remove double ;, spotted by Scott Wheeler
2004-03-16 09:53:16 +00:00
Thomas Vander Stichele
d50e521601 fix header inclusion
Original commit message from CVS:
fix header inclusion
2004-03-15 23:11:36 +00:00
Thomas Vander Stichele
982e1f69c1 add padding
Original commit message from CVS:
add padding
2004-03-15 22:42:34 +00:00
Benjamin Otte
1cedbe04e1 gst/elements/gstfdsrc.c: set the first parameter for select call correctly.
Original commit message from CVS:
* gst/elements/gstfdsrc.c: (gst_fdsrc_get):
set the first parameter for select call correctly.
(fixes #137230)
2004-03-15 19:49:36 +00:00
Thomas Vander Stichele
7baa6c18e7 don't mix tabs and spaces
Original commit message from CVS:
don't mix tabs and spaces
2004-03-15 19:27:17 +00:00
Johan Dahlin
84f49e604d gst/schedulers/gstoptimalscheduler.c
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c
(gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
crash on MPEG playback. My boolean arithmetic is a bit rusty.
2004-03-15 19:24:35 +00:00
Thomas Vander Stichele
98ff5bbb2f add debugging fix comment blocks fix some -libs doc errors
Original commit message from CVS:
add debugging
fix comment blocks
fix some -libs doc errors
2004-03-15 15:16:04 +00:00
Johan Dahlin
ecd88e381d Revert again, this time without post-commit reindent hooks to put back the indentation :-)
Original commit message from CVS:
Revert again, this time without post-commit reindent hooks
to put back the indentation :-)
2004-03-15 14:43:35 +00:00
Johan Dahlin
2143a02a13 Revert again, this time without post-commit reindent hooks to put back the indentation :-)
Original commit message from CVS:
Revert again, this time without post-commit reindent hooks
to put back the indentation :-)
2004-03-15 14:43:34 +00:00
Johan Dahlin
e2b3dc3e47 *.h: Revert indentation changes.
Original commit message from CVS:
* *.h: Revert indentation changes.
2004-03-15 14:31:41 +00:00
Thomas Vander Stichele
c01cd4e835 g_error fix, m/m version fix
Original commit message from CVS:
g_error fix, m/m version fix
2004-03-14 17:54:22 +00:00
Thomas Vander Stichele
a967370df5 gst-indent run on core
Original commit message from CVS:
gst-indent run on core
2004-03-13 15:27:01 +00:00
Benjamin Otte
bc98c7bf1d gst/gstelement.c: add documentation note about gst_element_found_tags_for_pad not being usable in getfunctions. (see ...
Original commit message from CVS:
* gst/gstelement.c:
add documentation note about gst_element_found_tags_for_pad not
being usable in getfunctions. (see #137042)
2004-03-13 10:14:05 +00:00
David Schleef
365e091451 gst/gstcaps.h: jdahlin, what are you smoking? We can't just change API right now! Readd gst_caps_is_simple() macro.
Original commit message from CVS:
* gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
change API right now!  Readd gst_caps_is_simple() macro.
* gst/gstelement.c: (gst_element_base_class_finalize): Fix
uninitialized variable.  I'd bet this caused crashes.
* gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
2004-03-13 00:14:46 +00:00
Johan Dahlin
8c7f46ced0 Gtype->GType
Original commit message from CVS:
Gtype->GType
2004-03-12 19:39:19 +00:00
Johan Dahlin
3798f1c4fa gst/gststructure.c (gst_structure_get_type): Ditto
Original commit message from CVS:
* gst/gststructure.c (gst_structure_get_type): Ditto

* gst/gststructure.h: Ditto
2004-03-12 19:35:40 +00:00
Johan Dahlin
37d2e6d087 gst/gst.c (init_post): call gst_caps_get_type() instead of _gst_caps_initalize()
Original commit message from CVS:
* gst/gst.c (init_post): call gst_caps_get_type() instead of
_gst_caps_initalize()

* gst/gstcaps.c: Style fixes, stay closer to glib and friends
(_gst_caps_initialize): Remove, in favor for gst_caps_get_type()

* gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
* gst/gstcaps.h: Clean up
2004-03-12 19:32:26 +00:00
Johan Dahlin
82d5ac58c4 gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
Original commit message from CVS:
* gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
* gst/gstcaps.h: Clean up
2004-03-12 18:25:07 +00:00
Thomas Vander Stichele
e0c63736c6 comment fix whitespace fixes
Original commit message from CVS:
comment fix
whitespace fixes
2004-03-12 17:59:00 +00:00
Ronald S. Bultje
5d1a30f452 gst/gstqueue.c: Reset default max. values in queues. Reason is simply to avoid braindead use. If you want wider value...
Original commit message from CVS:
* gst/gstqueue.c: (gst_queue_init):
Reset default max. values in queues. Reason is simply to avoid
braindead use. If you want wider values, use the properties. The
default is supposed to always work. Wider values would make this
beast a memory hog by default (250 full-PAL RGB32 video frames?
That's 440 MB! No thank you).
2004-03-12 01:41:21 +00:00
Johan Dahlin
c2b46e7a8a Shut up gcc 3.2
Original commit message from CVS:
Shut up gcc 3.2
2004-03-10 17:01:57 +00:00
Johan Dahlin
c24e220bfb gst/schedulers/gstoptimalscheduler.c
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c
(gst_opt_scheduler_pad_unlink): Implement unlink for elements with
links to elements within the same group, so we can finally remove
that annoying warning. Refactor the code a little bit
(group_dec_links_for_element): Split out
2004-03-10 16:47:06 +00:00
Thomas Vander Stichele
deb1c93227 add GstGError to help the bindings
Original commit message from CVS:
add GstGError to help the bindings
2004-03-09 14:44:36 +00:00
Jan Schmidt
e36f583bab Free leaked g_timer on early return
Original commit message from CVS:
Free leaked g_timer on early return
2004-03-09 13:33:11 +00:00
Thomas Vander Stichele
27d587b023 better debug info
Original commit message from CVS:
better debug info
2004-03-09 13:23:14 +00:00
Thomas Vander Stichele
083e451238 more debugging
Original commit message from CVS:
more debugging
2004-03-08 17:47:52 +00:00
Thomas Vander Stichele
53bd79574d remove \n
Original commit message from CVS:
remove \n
2004-03-08 17:13:35 +00:00
Andy Wingo
b6a5699ca6 gst/gstbin.c (gst_bin_remove): Debugging fixes.
Original commit message from CVS:
2004-03-07  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (gst_bin_remove): Debugging fixes.

* gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
there are no links to other groups when a group is destroyed.
(gst_opt_scheduler_pad_unlink): If the unlink means an element is
removed from a group, make sure the link count to elements linked
to other pads is appropriately decremented. This really fixes
#135672.

The 1.60->1.61 patch has been reapplied in light of this fix.

* gst/gstelement.c (gst_element_dispose): Really protect against
multiple invocations this time.
2004-03-07 14:33:13 +00:00
Thomas Vander Stichele
558ac743bb remove deprecated functions add two tag prototypes to docs add accessor function
Original commit message from CVS:
remove deprecated functions
add two tag prototypes to docs
add accessor function
2004-03-06 20:19:23 +00:00
Christophe Fergeau
91e0700148 gst/autoplug/gstspider.c: fixed caps leak
Original commit message from CVS:
2004-03-06  Christophe Fergeau  <teuf@gnome.org>

* gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
leak
2004-03-06 18:25:59 +00:00
Benjamin Otte
e210fe6540 gst/gstelement.c: revert recent recursive state changing commit - messing with other elements' states is evil and sho...
Original commit message from CVS:
* gst/gstelement.c: (gst_element_error_full):
revert recent recursive state changing commit - messing with other
elements' states is evil and should be done by apps only.
2004-03-05 22:01:42 +00:00
Benjamin Otte
a426305315 gst/gstelement.c: check for empty intersection instead of NULL caps remove old workaround that is only a bug nowadays
Original commit message from CVS:
* gst/gstelement.c: (gst_element_get_compatible_pad_template):
check for empty intersection instead of NULL caps
(gst_element_get_compatible_pad_filtered):
remove old workaround that is only a bug nowadays
2004-03-05 21:44:36 +00:00
Thomas Vander Stichele
674e6a9a02 gst/gstelement.c: make elements try to recursively change state to PAUSED on all parents after an error to suppress e...
Original commit message from CVS:
* gst/gstelement.c: (gst_element_error_full):
make elements try to recursively change state to PAUSED on all
parents after an error to suppress ensuing warnings
* gst/parse/grammar.y:
make it check if it was able to sync the state, and throw an error
if not, so stuff like
oggdemux ! vorbisdec ! osssink gets caught
2004-03-05 13:07:48 +00:00
David Schleef
5fba054547 gst/gstcpuid_i386.s: Remove unused code
Original commit message from CVS:
* gst/gstcpuid_i386.s:  Remove unused code
* libs/gst/getbits/getbits.c: (gst_getbits_init),
(gst_getbits_newbuf): Remove MMX code
* libs/gst/getbits/getbits.h: Remove MMX code
2004-03-05 08:35:02 +00:00
Thomas Vander Stichele
97f89b5365 make signals use dashes in the names
Original commit message from CVS:
make signals use dashes in the names
2004-03-04 20:06:02 +00:00
Benjamin Otte
29642c4548 gst/schedulers/gstoptimalscheduler.c: revert last commit by Andy Wingo. It causes segfaults on unreffing in Rhythmbox...
Original commit message from CVS:
2004-03-03  Benjamin Otte  <otte@gnome.org>

* gst/schedulers/gstoptimalscheduler.c:
revert last commit by Andy Wingo. It causes segfaults on unreffing
in Rhythmbox. (see bug #135672)
2004-03-02 23:04:50 +00:00
Thomas Vander Stichele
4e298c0641 attach global instead of local registry to GST_REGISTRY
Original commit message from CVS:
attach global instead of local registry to GST_REGISTRY
2004-03-01 23:38:27 +00:00
Thomas Vander Stichele
fdfb2b8232 configure.ac: remove whitespace
Original commit message from CVS:
* configure.ac:
remove whitespace
* docs/gst/tmpl/gstbuffer.sgml:
* docs/gst/tmpl/gstdata.sgml:
* docs/gst/tmpl/gstreamer-unused.sgml:
* docs/gst/tmpl/gstxml.sgml:
doc update
* docs/manuals.mak:
add a FIXME
* docs/pwg/intro-preface.xml:
* docs/pwg/pwg.xml:
remove GNOME
* gst/gst.c: (init_post):
try GST_PLUGIN_PATH paths for the _global_registry first
* gst/gstelement.h:
add the error message as well, otherwise (null) debug info doesn't
make much sense
* tools/gst-register.c: (main):
spill paths to next registry if this registry is not writable
* po/fr.po:
* po/nl.po:
translation updates
2004-03-01 17:15:28 +00:00
Johan Dahlin
2db697154b gst/: Use gst_data_copy, instead of ref, since some applications that uses GBoxed routines depends on a function that...
Original commit message from CVS:
* gst/gstbuffer.c (_gst_buffer_initialize):
* gst/gstdata.c (gst_data_get_type):
* gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
instead of ref, since some applications that uses GBoxed
routines depends on a function that actually returns a copy.
2004-03-01 12:10:16 +00:00
Benjamin Otte
88ba7f4999 gst/gstbuffer.h: remove gst_buffer_free, use gst_data_unref
Original commit message from CVS:
2004-02-27  Benjamin Otte  <otte@gnome.org>

* gst/gstbuffer.h:
remove gst_buffer_free, use gst_data_unref
* gst/gstdata.c: (gst_data_get_type):
use refcounting in GstData GBoxed registration
* gst/gstdata.h:
remove gst_data_free, use gst_data_unref
2004-02-27 21:29:04 +00:00
Johan Dahlin
730dd21ce5 gst/gstdata.c (gst_data_get_type): New function, register
Original commit message from CVS:
* gst/gstdata.c (gst_data_get_type): New function, register
GstData as a GBoxed type.

* gst/gstdata.h (GST_TYPE_DATA): New macro
2004-02-27 17:58:24 +00:00
Thomas Vander Stichele
849f5cc3e4 adding back RELEASE clean up disting of built files
Original commit message from CVS:
adding back RELEASE
clean up disting of built files
2004-02-27 12:37:13 +00:00
David Schleef
c5d76e5c98 configure.ac: We don't really need glib-2.3. Also remove some unneeded checks for library functions.
Original commit message from CVS:
* configure.ac:  We don't really need glib-2.3.  Also remove
some unneeded checks for library functions.
* gst/Makefile.am:  Instead, we need to not dist files created
by glib-genmarshal.
2004-02-27 02:00:37 +00:00
Thomas Vander Stichele
94783aaebb merging from release branch
Original commit message from CVS:
merging from release branch
2004-02-26 17:02:49 +00:00
Andy Wingo
bc13ad8a9e gst/gstpad.c (gst_pad_link_prepare): Re-add gst_pad_link_prepare. Please email the list with specific reasons for rev...
Original commit message from CVS:
2004-02-25  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_link_prepare): Re-add
gst_pad_link_prepare. Please email the list with specific reasons
for reverting.

----------------------------------------------------------------------
2004-02-25 14:16:24 +00:00
Andy Wingo
3f5a8814d5 gst/gstelement.c (gst_element_dispose): Protect against multiple invocations.
Original commit message from CVS:
2004-02-24  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_dispose): Protect against multiple
invocations.

* gst/schedulers/gstoptimalscheduler.c
I added a mess of prototypes at the top of the file by way of
documentation. Some of the operations on chains and groups were
re-organized.

(create_group): Added a type argument so if the group is enabled,
the setup_group_scheduler knows what to do.
(group_elements): Added a type argument here, too, to be passed on
to create_group.
(group_element_set_enabled): If an unlinked PLAYING element is
added to a bin, we have to create a new group to hold the element,
and this function will be called before the group is added to the
chain. Thus we have a valid case for group->chain==NULL. Instead
of calling chain_group_set_enabled, just set the flag on the group
(the chain's status will be set when the group is added to it).
(gst_opt_scheduler_state_transition, chain_group_set_enabled):
Setup the group scheduler when the group is enabled, not
specifically when an element goes PAUSED->PLAYING. This means
PLAYING elements can be added, linked, and scheduled into a
PLAYING pipeline, as was intended.
(add_to_group): Don't ref the group twice. I don't know when this
double-ref got in here. Removing it has the potential to cause
segfaults if other parts of the scheduler are buggy. If you find
that the scheduler is segfaulting for you, put in an extra ref
here and see if that hacks over the underlying issue. Of course,
then find out what code is unreffing a group it doesn't own...
(create_group): Make the extra refcount floating, and remove it
after adding the element. This means that...
(unref_group): Destroy when the refcount reaches 0, not 1, like
every other refcounted object in the known universe.
(remove_from_group): When a group becomes empty, set it to be not
active, and remove it from its chain. Don't unref it again,
there's no floating reference any more.
(destroy_group): We have to remove the group from the chain in
remove_from_group (rather than here) to break refcounting cycles
(the chain always has a ref on the group). So assert that
group->chain==NULL.
(ref_group_by_count): Removed, it was commented out anyway.
(merge_chains): Use the remove_from_chain and add_to_chain
primitives to do the reparenting, instead of rolling our own
implementation.
(add_to_chain): The first non-disabled group in the chain's group
list will be the entry point for the chain. Because buffers can
accumulate in loop elements' peer bufpens, we preferentially
schedule loop groups before get groups to avoid unnecessary
execution of get-based groups when the bufpens are already full.
(gst_opt_scheduler_schedule_run_queue): Debug fixes.
(get_group_schedule_function): Ditto.
(loop_group_schedule_function): Ditto.
(gst_opt_scheduler_loop_wrapper): Ditto.
(gst_opt_scheduler_iterate): Ditto.

I understand the opt scheduler now, yippee!

* gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
(gst_pad_get_name, gst_pad_set_chain_function)
(gst_pad_set_get_function, gst_pad_set_event_function)
(gst_pad_set_event_mask_function, gst_pad_get_event_masks)
(gst_pad_get_event_masks_default, gst_pad_set_convert_function)
(gst_pad_set_query_function, gst_pad_get_query_types)
(gst_pad_get_query_types_default)
(gst_pad_set_internal_link_function)
(gst_pad_set_formats_function, gst_pad_set_link_function)
(gst_pad_set_fixate_function, gst_pad_set_getcaps_function)
(gst_pad_set_bufferalloc_function, gst_pad_unlink)
(gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent)
(gst_pad_add_ghost_pad, gst_pad_proxy_getcaps)
(gst_pad_proxy_pad_link, gst_pad_proxy_fixate)
(gst_pad_get_pad_template_caps, gst_pad_check_compatibility)
(gst_pad_get_peer, gst_pad_get_allowed_caps)
(gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull)
(gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps)
(gst_pad_event_default_dispatch, gst_pad_event_default)
(gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default)
(gst_pad_convert, gst_pad_query_default, gst_pad_query)
(gst_pad_get_formats_default, gst_pad_get_formats): Better
argument checks, and some doc fixes.

(gst_pad_custom_new_from_template): Um, does anyone
use these functions? Actually make a custom pad instead of a
normal one.
(gst_pad_try_set_caps): Transpose some checks.
(gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
the pad is in negotiation.
(gst_pad_try_relink_filtered): Use pad_link_prepare.

* gst/gstelement.c: Remove prototypes also defined in gstclock.h.

* gst/gstelement.h:
* gst/gstclock.h: Un-deprecate the old clocking API, as discussed
on the list.
2004-02-25 13:16:12 +00:00
Thomas Vander Stichele
79f5d87041 better debugging
Original commit message from CVS:
better debugging
2004-02-25 10:01:31 +00:00
Thomas Vander Stichele
a8328dde93 adding error to gstbin.c
Original commit message from CVS:
adding error to gstbin.c
2004-02-24 12:41:19 +00:00
Julien Moutte
8e30d59c6c gst/gsttag.c: Registering 2 new tags, audio-codec and video-codec.
Original commit message from CVS:
2004-02-22  Julien MOUTTE <julien@moutte.net>

* gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
audio-codec and video-codec.
2004-02-22 21:56:00 +00:00
Benjamin Otte
5a34cd92ed gst/gstpad.c: revert last patch from Andy, it makes gst_pad_can_link_filtered much too noisy
Original commit message from CVS:
2004-02-22  Benjamin Otte  <otte@gnome.org>

* gst/gstpad.c:
revert last patch from Andy, it makes gst_pad_can_link_filtered much
too noisy
* gst/gsttag.c: (_gst_tag_initialize):
* gst/gsttag.h:
add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
* libs/gst/control/dparam.c: (gst_dparam_attach):
* libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
check that types for attached dparams match
2004-02-22 15:09:20 +00:00
Thomas Vander Stichele
62537fecd4 fix errors
Original commit message from CVS:
fix errors
2004-02-22 14:07:55 +00:00
Andy Wingo
cded585aa2 gst/: Debugging tweaks.
Original commit message from CVS:
2004-02-20  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c:
* gst/gstbuffer.c:
* gst/gstplugin.c:
* gst/registries/gstxmlregistry.c:
* gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.

* gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
(gst_element_add_pad): DEBUG->INFO, some fixes.
(gst_element_get_compatible_pad_template): Just see if the
templates' caps intersect, not if one is a strict subset of the
other. This conforms more to what gst_pad_link_intersect() does.
(gst_element_class_add_pad_template): Don't memcpy the pad
template, just ref it.
(gst_element_get_compatible_pad_filtered): Clean up debug messages

* gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
(gst_pad_link_filtered): Debug changes.
(gst_pad_link_prepare): New function, consolidated from
can_link_filtered and link_filtered.

* gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
look more like that of the functions in gstelement.c

* gst/gstinfo.c (gst_debug_print_object): Put a space before the
object, and return the empty string if object is NULL.

* gst/parse/parse.l: Remove trailing newlines when calling PRINT.
* gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
LOG, not DEBUG. We still get flex info on debug.

* gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
debug string more verbose.
(plugin_times_older_than): DEBUG->LOG.
2004-02-20 13:18:32 +00:00
Julien Moutte
ee700ccc65 gst/gsttag.h: Adding video-codec and audio-codec for demuxers which will emit found_tag for each stream they demux wi...
Original commit message from CVS:
2004-02-20  Julien MOUTTE <julien@moutte.net>

* gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
will emit found_tag for each stream they demux with the codec.
2004-02-20 11:55:44 +00:00
Benjamin Otte
7155cfae35 gst/gstevent.c: copy navigation event correctly. Check freeing tag lists.
Original commit message from CVS:
2004-02-20  Benjamin Otte  <otte@gnome.org>

* gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
copy navigation event correctly. Check freeing tag lists.
* gst/gstthread.c: (gst_thread_change_state):
don't abort() on state changing mess - it might happen because of
bugs.
* gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
use boxed functions
* gst/gstvalue.h:
fix GST_VALUE_HOLDS_CAPS
2004-02-20 00:38:24 +00:00
David Schleef
fba77bb903 gst/gstinfo.h: Copy G_STRFUNC implementation from glib-2.4 and use it for GST_FUNCTION. (bug #134750)
Original commit message from CVS:
* gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
and use it for GST_FUNCTION.  (bug #134750)
2004-02-19 20:08:45 +00:00
David Schleef
67455089a4 gst/elements/gstmultifilesrc.c: Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
Original commit message from CVS:
* gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
* gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
Use GST_TYPE_CAPS in signal prototype.
* gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
Convert GST_TYPE_CAPS to boxed.
* gst/gstelement.c: (gst_element_class_init):
Use GST_TYPE_TAG_LIST in signal prototype.
* gst/gstindex.c: (gst_index_class_init):
* gst/gstindex.h:
Add GST_TYPE_INDEX_ENTRY type.
* gst/gstmarshal.list:
Add necessary marshal types.
* gst/gstpad.c: (gst_real_pad_class_init),
(_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
(gst_pad_recover_caps_error):
Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
* gst/gststructure.c: (_gst_structure_initialize),
(gst_structure_copy), (_gst_structure_copy_conditional):
* gst/gststructure.h:
Convert GST_TYPE_STRUCTURE to boxed.
* gst/gsttag.c: (gst_tag_list_get_type):
* gst/gsttag.h:
Add GST_TYPE_TAG_LIST type.
2004-02-18 05:26:59 +00:00
Julien Moutte
6aeaab9643 gst/gstpad.c: Reverting my change according to what we agreed with david.
Original commit message from CVS:
2004-02-17  Julien MOUTTE  <julien@moutte.net>

* gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
to what we agreed with david.
* gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
2004-02-17 22:55:26 +00:00
Thomas Vander Stichele
28c8621ee8 throw an error for mime types spider can't handle
Original commit message from CVS:
throw an error for mime types spider can't handle
2004-02-17 17:59:32 +00:00
Julien Moutte
47a11ddf79 gst/gstpad.c: We are nice people. Return silently when the pad is negotiating.
Original commit message from CVS:
2004-02-17  Julien MOUTTE  <julien@moutte.net>

* gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return
silently when the pad is negotiating.
2004-02-16 23:40:32 +00:00
Johan Dahlin
4eedbdb4ef Spelling fix
Original commit message from CVS:
Spelling fix
2004-02-16 18:13:21 +00:00
Thomas Vander Stichele
05057d9245 patch for s390 from fedora test 2 rpms
Original commit message from CVS:
patch for s390 from fedora test 2 rpms
2004-02-16 12:28:36 +00:00
Julien Moutte
0f21f59260 gst/gstbin.c: Fix a big bug that was breaking pipelines like sinesrc ! { queue ! osssink } when an error was thrown b...
Original commit message from CVS:
2004-02-15  Julien MOUTTE  <julien@moutte.net>

* gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
an error was thrown by osssink. Basically a state change failure for
an element in a different scheduling group was considered as successfull        , which means that caps nego was going on and weird stuff happened. Like        i wrote in the comment there, if someone want to revert that please
drop me a mail explaining why because i really see no point in keeping
that broken behaviour there.
* gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
be empty, we then return NULL which will trigger a nice error when
pulling from the pad.
2004-02-15 19:05:59 +00:00
David Schleef
5e7335abe3 gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
Original commit message from CVS:
* gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
* gst/gstclock.h: Avoid using 64-bit % operator (slow!)
2004-02-13 23:56:11 +00:00
David Schleef
5432f712bb gst/elements/gstfdsrc.*: Adds timeout property to fdsrc, and sends an EOS event if file descriptor reading times out.
Original commit message from CVS:
reviewed by: David Schleef  <ds@schleef.org>
* gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
(gst_fdsrc_init), (gst_fdsrc_set_property),
(gst_fdsrc_get_property), (gst_fdsrc_get):
* gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
and sends an EOS event if file descriptor reading times out.
2004-02-13 20:16:42 +00:00
Thomas Vander Stichele
509fa3874c fixes for --disable-loadsave --disable-registry
Original commit message from CVS:
fixes for --disable-loadsave --disable-registry
2004-02-12 16:49:16 +00:00
David Schleef
7e6017aac1 docs/gst/tmpl/gstcaps.sgml: Fix stuff that mentions GstProps
Original commit message from CVS:
* docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
* docs/gst/tmpl/gstpadtemplate.sgml: same
* docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
* gst/gstobject.c: (gst_object_set_name_default): Do the memleak
fixing dance.
* gst/gstutils.c: Remove disabled code that uses GstProps.
* gst/registries/gstxmlregistry.h: same
* docs/random/ds/0.9-suggested-changes: random notes
2004-02-11 20:16:33 +00:00
David Schleef
5fe57b5dc4 gst/gstclock.c: fixes structure initialisation of clock (bug #134128)
Original commit message from CVS:
reviewed by: David Schleef  <ds@schleef.org>
* gst/gstclock.c: (gst_clock_entry_new): fixes structure
initialisation of clock (bug #134128)
2004-02-11 19:02:00 +00:00
Thomas Vander Stichele
6545411956 removing old files
Original commit message from CVS:
removing old files
2004-02-11 18:50:16 +00:00
Thomas Vander Stichele
5d9481bfb6 rename multidisksrc to multifilesrc
Original commit message from CVS:
rename multidisksrc to multifilesrc
2004-02-11 18:49:26 +00:00
David Schleef
de74af0114 docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
Original commit message from CVS:
* docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
* gst/gstatomic_impl.h: Disable sparc implementation.
2004-02-11 17:45:02 +00:00
Andy Wingo
d0c8e3a921 gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky way to do inheritance.
Original commit message from CVS:
2004-02-10  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
way to do inheritance.
(gst_pad_get_event_masks, gst_pad_get_event_masks_default)
(gst_pad_get_query_types, gst_pad_get_query_types_default):
Routine docs.
(gst_pad_set_link_function, gst_pad_set_fixate_function)
(gst_pad_set_getcaps_function): Doc from Dave's negotation random
doc.
(gst_pad_unlink, gst_pad_is_linked): Docs.
(gst_pad_renegotiate): A brief description of capsnego.
(gst_pad_try_set_caps): Document.
(gst_pad_try_set_caps_nonfixed): Document.
(gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
(gst_pad_set_parent): Deprecated (although not out of the API).
(gst_pad_get_parent): Deprecated, although many plugins use this.
(gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
are private and will go away in 0.9.
(gst_pad_perform_negotiate): Doc.
(gst_pad_link_unnegotiate): I think this is meant to be static.
(gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps)
(gst_pad_template_get_caps_by_name, gst_pad_check_compatibility)
(gst_pad_get_peer): Doc updates.
(gst_pad_caps_change_notify): Doc.
(gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get)
(gst_ghost_pad_new): Doc fixes.

* gst/gstobject.c (gst_object_get_parent, gst_object_unparent)
(gst_object_check_uniqueness):

* gst/gstelement.c (gst_element_add_pad)
(gst_element_add_ghost_pad, gst_element_remove_pad)
(gst_element_remove_ghost_pad, gst_element_get_pad)
(gst_element_get_static_pad, gst_element_get_pad_list)
(gst_element_class_get_pad_template_list)
(gst_element_class_get_pad_template): Work on the docs.
(gst_element_get_pad_template_list): Uses the class method.
(gst_element_get_compatible_pad_template): Docs, and consolidate
some test conditions.
(gst_element_get_pad_from_template): New static function.
(gst_element_request_compatible_pad): Docs, and work with
non-request compatible templates.
(gst_element_get_compatible_pad_filtered): Docs and remove
redundant checks.
(gst_element_get_compatible_pad, gst_element_link_pads_filtered)
(gst_element_link_filtered, gst_element_link_many)
(gst_element_link, gst_element_link_pads)
(gst_element_unlink_many): Docs.

2004-02-05  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (_gst_real_pad_fixate_accumulator):
s/pointer/boxed/.

* gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.

* gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
with the type=GST_TYPE_CAPS. This allows language bindings to know
what kind of data they're dealing with.

* gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
to NULL when g_value_init is called. GstCaps, which rolls its own
type implementation, now does the same instead of allocating empty
caps.
(_gst_caps_initialize, _gst_caps_collect_value,
_gst_caps_lcopy_value): Provide collect_value and lcopy_value type
table methods. This allows G_VALUE_COLLECT to work.

2004-02-05  Andy Wingo  <wingo@pobox.com>

* configure.ac:
* testsuite/Makefile.am (SUBDIRS):
* testsuite/ghostpads/Makefile.am:
* testsuite/ghostpads/ghostpads.c: A new test for ghost pads.

* gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
These two routines are the only ones that set
GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
pad template. They should be made static, depending on ABI needs.
(gst_real_pad_dispose): Handle the case of ghost pads without a
parent. Assert after dealing with ghost pads that the ghost pad
list is empty.
(gst_ghost_pad_class_init): New property added, ::real-pad. Can be
set after creation.
(gst_ghost_pad_dispose): Set ::real-pad to NULL.
(gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
functions. set_property will call add_ghost_pad/remove_ghost_pad
as appropriate.
(gst_ghost_pad_new): All the work is offloaded to g_object_new.

* gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
(gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
(gst_element_remove_pad): Handle ghost pads as well.
(gst_element_remove_ghost_pad): Deprecated (could be removed,
depending on API-stability needs).

2004-02-05  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
of course they're const
2004-02-11 13:26:04 +00:00
David Schleef
4d762b1504 gst/gstpad.c: Fix format strings for GST_PTR_FORMAT.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
(gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
2004-02-11 08:28:54 +00:00
Julien Moutte
c168ad6b4e gst/gstevent.c: Sometimes a tag event arrives but the structure does not contain a valid tag list. Adding a safety ch...
Original commit message from CVS:
2004-02-10  Julien MOUTTE <julien@moutte.net>

* gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
the structure does not contain a valid tag list. Adding a safety check
to remove a noisy warning in that case.
2004-02-10 11:57:27 +00:00
Thomas Vander Stichele
11466f9bbe fix name of core elements
Original commit message from CVS:
fix name of core elements
2004-02-10 10:30:24 +00:00
Julien Moutte
df6a979243 gst/gstdata.c: Adding a categorized debug on data_ref because data_unref has one and i prefer the debug to be symetric.
Original commit message from CVS:
2004-02-09  Julien MOUTTE  <julien@moutte.net>

* gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
because data_unref has one and i prefer the debug to be symetric.
* gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
were refed when added to the queue and unrefed only once when the queue
was flushed. Now the flush handler unref the buffers two times : first
unref for the ref added when pushing in the queue's tail and second
unref to destroy the flushed buffer.
2004-02-09 09:11:50 +00:00
Ramon Garcia Fernandez
4c4ff33d1f Trying to fix the mess that I made with the two previous commits.
Original commit message from CVS:


Trying to fix the mess that I made with the two previous commits.

First commit, doing something wrong (fixing comparisons of signed and unsigned).
Second commit, trying to revert the previous, but changing other things and
reverting unrelated work of other people.
And this third, hopefully fixes it.
2004-02-07 15:51:39 +00:00
Ramon Garcia Fernandez
1f920b1def Reverted changes made to fix unsigned-signed warnings after hearing comments on IRC. Thans to teus
Original commit message from CVS:
Reverted changes made to fix unsigned-signed warnings after hearing comments on IRC. Thans to teus
2004-02-07 15:37:21 +00:00
Ramon Garcia Fernandez
4d5e52a00f fixed compilation warnings of comparison between signed and unsigned
Original commit message from CVS:
fixed compilation warnings of comparison between signed and unsigned
2004-02-07 13:34:27 +00:00
David Schleef
d19ae033fd docs/random/ds/0.9-suggested-changes: Random ramblings
Original commit message from CVS:
* docs/random/ds/0.9-suggested-changes: Random ramblings
* gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
to int before printing.
* gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
* gst/parse/parse.l: same.  See bug #129600
2004-02-07 01:23:13 +00:00
David Schleef
168eaa4f68 gst/gstindex.c: (gst_index_add_association): Add gst_index_add_associationv() and clean up gst_index_add_association(...
Original commit message from CVS:
* gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
(gst_index_add_entry), (gst_index_add_associationv),
(gst_index_add_association): Add gst_index_add_associationv()
and clean up gst_index_add_association(). #127133
2004-02-06 18:17:56 +00:00
Benjamin Otte
350d4a897c compile before checkin
Original commit message from CVS:
compile before checkin
2004-02-05 23:51:34 +00:00
Benjamin Otte
f3c9c3493d gst/: put reverted patch back in
Original commit message from CVS:
2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstcaps.h:
* gst/gstelement.c: (gst_element_base_class_init),
(gst_element_class_set_details), (gst_element_clear_pad_caps):
* gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
(gst_pad_try_set_caps), (gst_pad_can_link_filtered),
(gst_real_pad_dispose):
* gst/gststructure.c: (gst_structure_free),
(gst_structure_from_string):
put reverted patch back in
* gst/gstelement.c: (gst_element_remove_pad):
free explicit caps if they're set
* gst/gstpad.c: (_gst_pad_default_fixate_func):
copy the structure when fixating
2004-02-05 23:46:13 +00:00
David Schleef
ec7cb937da gst/: Revert POINTER->BOXED change in signal marshaller.
Original commit message from CVS:
* gst/gstmarshal.list:
* gst/gstpad.c: (gst_real_pad_class_init),
(_gst_real_pad_fixate_accumulator):
Revert POINTER->BOXED change in signal marshaller.
2004-02-05 18:59:42 +00:00
Andy Wingo
a8b84d8a57 gst/gstpad.c (_gst_real_pad_fixate_accumulator): s/pointer/boxed/.
Original commit message from CVS:
2004-02-05  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (_gst_real_pad_fixate_accumulator):
s/pointer/boxed/.

* gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.

* gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
with the type=GST_TYPE_CAPS. This allows language bindings to know
what kind of data they're dealing with.

* gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
to NULL when g_value_init is called. GstCaps, which rolls its own
type implementation, now does the same instead of allocating empty
caps.
(_gst_caps_initialize, _gst_caps_collect_value,
_gst_caps_lcopy_value): Provide collect_value and lcopy_value type
table methods. This allows G_VALUE_COLLECT to work.

2004-02-05  Andy Wingo  <wingo@pobox.com>

* configure.ac:
* testsuite/Makefile.am (SUBDIRS):
* testsuite/ghostpads/Makefile.am:
* testsuite/ghostpads/ghostpads.c: A new test for ghost pads.

* gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
These two routines are the only ones that set
GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
pad template. They should be made static, depending on ABI needs.
(gst_real_pad_dispose): Handle the case of ghost pads without a
parent. Assert after dealing with ghost pads that the ghost pad
list is empty.
(gst_ghost_pad_class_init): New property added, ::real-pad. Can be
set after creation.
(gst_ghost_pad_dispose): Set ::real-pad to NULL.
(gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
functions. set_property will call add_ghost_pad/remove_ghost_pad
as appropriate.
(gst_ghost_pad_new): All the work is offloaded to g_object_new.

* gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
(gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
(gst_element_remove_pad): Handle ghost pads as well.
(gst_element_remove_ghost_pad): Deprecated (could be removed,
depending on API-stability needs).

2004-02-05  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
of course they're const
2004-02-05 13:51:26 +00:00
Thomas Vander Stichele
6fb4c764af revert patch that breaks applications revert this patch after release so everything can be fixed properly
Original commit message from CVS:
revert patch that breaks applications
revert this patch after release so everything can be fixed properly
2004-02-05 13:32:09 +00:00
Benjamin Otte
630fc2e5e7 gst/gsttag.*: remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
Original commit message from CVS:
2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gsttag.c: (_gst_tag_initialize):
* gst/gsttag.h:
remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
2004-02-05 02:58:48 +00:00
David Schleef
149b17079e Fix some memleaks:
Original commit message from CVS:
Fix some memleaks:
* gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
(gst_spider_plug_from_srcpad):
* gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
2004-02-05 02:44:34 +00:00
David Schleef
0f357a0852 gst/gstelement.c: Make sure we have a GstRealPad before accessing its structure members.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
a GstRealPad before accessing its structure members.
2004-02-05 02:30:53 +00:00
Benjamin Otte
642685bbbc gst/gstclock.*: reset padding, remove unused fields
Original commit message from CVS:
2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
(gst_clock_get_speed):
* gst/gstclock.h:
reset padding, remove unused fields
2004-02-04 22:35:12 +00:00
Benjamin Otte
5554f286bd gst/autoplug/gstspideridentity.c: use get_allowed_caps, not get_caps (fixes #132519)
Original commit message from CVS:
2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/autoplug/gstspideridentity.c:
(gst_spider_identity_sink_loop_type_finding):
use get_allowed_caps, not get_caps (fixes #132519)
* gst/elements/gsttypefind.c: (stop_typefinding):
use correct order when sending buffers and seeking
2004-02-04 22:16:30 +00:00
Thomas Vander Stichele
2c8574e0aa reset padding
Original commit message from CVS:
reset padding
2004-02-04 21:59:27 +00:00
Thomas Vander Stichele
4290fca331 increment current, reset padding
Original commit message from CVS:
increment current, reset padding
2004-02-04 21:35:39 +00:00
David Schleef
ad3863ac5e docs/random/ds/0.9-suggested-changes: random notes
Original commit message from CVS:
* docs/random/ds/0.9-suggested-changes: random notes
* gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
(gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
expansion.
* gst/elements/gstfilesink.c: (gst_filesink_get_formats),
(gst_filesink_get_query_types): same
* gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
(gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
* gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
to use new GST_PTR_FORMAT.
* gst/gstelement.h: deprecate function factory macros
GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
These are our last variadic macros that can't be replaced with
inlines.  Celebrate!  Also fix a typo in an #ifdef that was
attempting to deprecate gst_element_clock_wait().
* gst/gstevent.h: same
* gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
(gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
* gst/gstpad.h: deprecate function factory macros similar to above.
2004-02-04 19:38:33 +00:00
Benjamin Otte
92e2c686c4 gst/gstevent.c: actually break; inside the switch statement
Original commit message from CVS:
2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstevent.c: (_gst_event_free):
actually break; inside the switch statement
* gst/parse/grammar.y:
fix memleak where GValues weren't unset
2004-02-04 17:24:23 +00:00
Benjamin Otte
3945b0600b gst/gststructure.c: fix huge memleak
Original commit message from CVS:
2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gststructure.c: (gst_structure_from_string):
fix huge memleak
* gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
(new_entry), (gst_type_find_element_chain):
* gst/gstelement.c: (gst_element_base_class_init),
(gst_element_class_set_details):
* gst/gstpad.c: (gst_pad_can_link_filtered):
fix smaller memleaks
* gst/gstpad.c: (gst_real_pad_dispose):
check that explicit caps are gone
* gst/gststructure.c: (gst_structure_free):
actually free the structure
* gst/gstelement.c: (gst_element_clear_pad_caps):
unset explicit caps
2004-02-03 22:13:13 +00:00
Thomas Vander Stichele
6d6a96c4a3 fix debug message
Original commit message from CVS:
fix debug message
2004-02-03 15:01:46 +00:00
Thomas Vander Stichele
53898dac39 add GstPoptOption to work around evil poptOption struct def make sure popt is i18n'd expand gnome example
Original commit message from CVS:
add GstPoptOption to work around evil poptOption struct def
make sure popt is i18n'd
expand gnome example
2004-02-03 14:59:32 +00:00
Thomas Vander Stichele
b5186020ab add error symbol start translating gst-inspect
Original commit message from CVS:
add error symbol
start translating gst-inspect
2004-02-03 11:23:59 +00:00
Thomas Vander Stichele
b68e4b9d00 fixing docs errors
Original commit message from CVS:
fixing docs errors
2004-02-03 10:47:26 +00:00
Benjamin Otte
4749c7a4f1 gst/: get rid of gstmarshal.h dependency. It's not needed.
Original commit message from CVS:
2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/parse/Makefile.am:
* gst/gstobject.h:
get rid of gstmarshal.h dependency. It's not needed.
* gst/gst.h:
* gst/elements/gstfakesink.c:
* gst/elements/gstfakesrc.c:
* gst/elements/gstidentity.c:
* gst/gstbin.c:
* gst/gstelement.c:
* gst/gstindex.c:
* gst/gstobject.c:
* gst/gstpad.c:
* gst/gstthread.c:
* gst/gstxml.c:
* libs/gst/control/dparam.c:
* libs/gst/control/dparammanager.c:
include gstmarshal.h.
Fixes #132045
2004-02-03 03:31:26 +00:00
Benjamin Otte
893c74478f gst/elements/gstfilesrc.*: don't ref the filesrc when creating mmaped buffers. Don't keep a list of not-yet-destroyed...
Original commit message from CVS:
2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/elements/gstfilesrc.c: (gst_filesrc_init),
(gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
(gst_filesrc_map_region), (gst_filesrc_get_mmap):
* gst/elements/gstfilesrc.h:
don't ref the filesrc when creating mmaped buffers. Don't keep a
list of not-yet-destroyed buffers.
* gst/gstbuffer.h:
Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
2004-02-03 00:27:09 +00:00
Thomas Vander Stichele
21b3158d5d remove textdomain call
Original commit message from CVS:
remove textdomain call
2004-02-02 22:01:23 +00:00
Benjamin Otte
9ec5287a36 gst/elements/gstfilesrc.c: set all the values on buffers that we can
Original commit message from CVS:
2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
(gst_filesrc_get_read):
set all the values on buffers that we can
2004-02-02 21:18:54 +00:00
David Schleef
38029f4295 Change usage of isblah() to g_ascii_isblah() to be more locale independent. (#133076)
Original commit message from CVS:
Change usage of isblah() to g_ascii_isblah() to be more locale
independent.  (#133076)
* gst/gsturi.c: (gst_uri_protocol_check_internal):
* gst/gstutils.c:
* gst/parse/parse.l:
2004-02-02 21:08:52 +00:00
David Schleef
30bec331af Fix memory leaks:
Original commit message from CVS:
reviewed by: David Schleef  <ds@schleef.org>
Fix memory leaks:
* gst/gstcaps.c: (gst_caps_to_string):
* gst/registries/gstxmlregistry.c:
(gst_xml_registry_add_path_list_func),
(gst_xml_registry_parse_padtemplate):
2004-02-02 20:25:02 +00:00
Thomas Vander Stichele
031bcfd561 suffix error with period
Original commit message from CVS:
suffix error with period
2004-02-02 17:29:30 +00:00
Benjamin Otte
6c3d92e603 reinclude accidentally deleted line
Original commit message from CVS:
reinclude accidentally deleted line
2004-02-02 17:25:45 +00:00
Thomas Vander Stichele
b21a435c67 suffix errors with .
Original commit message from CVS:
suffix errors with .
update translation
2004-01-31 22:40:27 +00:00
Thomas Vander Stichele
5f91e9ad66 suffix errors with period.
Original commit message from CVS:
suffix errors with period.
use (NULL) over NULL
2004-01-31 19:30:31 +00:00
Thomas Vander Stichele
4fb17846d4 add path for element throwing error
Original commit message from CVS:
add path for element throwing error
2004-01-31 19:09:38 +00:00
Benjamin Otte
5d0b5a209f docs/random/mimetypes: update raw int/float info
Original commit message from CVS:
2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* docs/random/mimetypes:
update raw int/float info
* gst/gsttag.c: (_gst_tag_initialize):
* gst/gsttag.h:
add GST_TAG_ENCODER
2004-01-31 11:17:43 +00:00
David Schleef
1f24aab8be gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is missing (#132991)
Original commit message from CVS:
* gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
missing (#132991)
2004-01-30 21:26:15 +00:00
Benjamin Otte
192330d37a parts of the patch submitted in bug #113913
Original commit message from CVS:
2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>

reviewed by Benjamin Otte
parts of the patch submitted in bug #113913

* configure.ac:
use AC_C_INLINE. Use = instead of == with test
* examples/plugins/example.c:
* gst/autoplug/gstspideridentity.c:
* gst/elements/gstfdsrc.c:
* gst/elements/gstfilesrc.c:
* gst/elements/gstidentity.c:
* gst/elements/gstmultidisksrc.c:
* gst/elements/gststatistics.c:
* gst/gstelement.c:
* gst/gstobject.c:
* gst/gstpad.c:
* gst/gstpipeline.c:
* gst/gstthread.c:
don't end enums with a comma
* gst/gstindex.c: (gst_index_compare_func):
do explicit casting to gint
* gst/gsttrace.c: (gst_trace_text_flush):
#define strsize as a macro
2004-01-30 20:48:13 +00:00
Thomas Vander Stichele
cae2948963 fixing up double symbols
Original commit message from CVS:
fixing up double symbols
2004-01-30 19:11:50 +00:00
Thomas Vander Stichele
cdda2aa934 make sure all API gets built sync .c with .h
Original commit message from CVS:
make sure all API gets built
sync .c with .h
2004-01-30 19:06:13 +00:00
Thomas Vander Stichele
0fc84c1471 seriously, using cvs over slow lines just sucks.
Original commit message from CVS:
seriously, using cvs over slow lines just sucks.
*sigh*, finishing commit
2004-01-30 07:58:54 +00:00
Benjamin Otte
140c4dd060 docs/random/mimetypes: correct Theora information
Original commit message from CVS:
2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* docs/random/mimetypes:
correct Theora information
* gst/gstelement.h:
make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
2004-01-30 03:54:08 +00:00
Thomas Vander Stichele
c5b612edef GST_ELEMENT_ERROR
Original commit message from CVS:
GST_ELEMENT_ERROR
2004-01-29 23:17:58 +00:00
Julien Moutte
ef6bdb01be gst/elements/gstfilesrc.c: Fixing seeking by making FLUSH happen again and even before DISCONT.
Original commit message from CVS:
2004-01-29  Julien MOUTTE  <julien@moutte.net>

* gst/elements/gstfilesrc.c: (gst_filesrc_get),
(gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
again and even before DISCONT.
* gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
* libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
bytestream so that it's not stopping to fill the bytestream if events
different than EOS or DISCONT are received. Instead it process them so
that they go downstream.
2004-01-29 22:43:41 +00:00
Ronald S. Bultje
7d41ae65f4 docs/pwg/advanced-tagging.xml: Add a part about tag reading and application signalling... Tag writing still needs to ...
Original commit message from CVS:
2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* docs/pwg/advanced-tagging.xml:
Add a part about tag reading and application signalling... Tag
writing still needs to be documented.
* gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
We can set file locations in READY, too.
2004-01-29 10:56:53 +00:00
Benjamin Otte
807937481e docs/random/mimetypes: update docs for audio/x-raw-float. Add "buffer-frames=0 means undefined"
Original commit message from CVS:
2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* docs/random/mimetypes:
update docs for audio/x-raw-float. Add "buffer-frames=0 means
undefined"
* gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
make it only work in NULL.
* gst/gstcaps.c:
don't posion NULL caps
* gst/gstelement.c: (gst_element_set_time):
add debugging statement
* gst/gstelement.c: (gst_element_emit_found_tag),
(gst_element_found_tag_func), (gst_element_found_tags):
* gst/gstelement.h:
These functions take const taglists
* gst/gstpad.c: (gst_pad_proxy_getcaps):
fix memleak
* gst/gstpad.c: (gst_pad_event_default):
make more effort on handling discont and clocks, g_warn if everything
fails
* gst/gststructure.c: (gst_structure_remove_fields),
(gst_structure_remove_fields_valist):
* gst/gststructure.h:
add gst_structure_remove_fields(_valist)
* gst/gsttag.c:
fix doc glitch
2004-01-29 02:24:52 +00:00
David Schleef
a842daf05e docs/random/ds/element-checklist: Notes about gst_caps_to_string()
Original commit message from CVS:
* docs/random/ds/element-checklist: Notes about gst_caps_to_string()
* gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
Fix memory leakage of gst_caps_to_string().
Use GST_PTR_FORMAT instead of gst_caps_to_string():
* gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
* gst/autoplug/gstspideridentity.c: (spider_find_suggest),
(gst_spider_identity_sink_loop_type_finding):
* gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
(find_suggest):
* gst/gstpad.c: (gst_pad_try_relink_filtered),
(gst_pad_set_explicit_caps):
* gst/parse/grammar.y:
2004-01-29 01:44:08 +00:00
David Schleef
6a096813d4 configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
Original commit message from CVS:
* configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
GST_PRINTF_EXTENSION_FORMAT_DEFINE.
* docs/random/ds/0.9-suggested-changes: Notes from Company.
* gst/gstcaps.c: (gst_caps_to_string): Add comment.
* gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
* gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
(gst_debug_log_default), (_gst_info_printf_extension),
(_gst_info_printf_extension_arginfo):  Add printf extension.
* gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
* gst/gststructure.c: (gst_structure_to_string),
(_gst_structure_parse_value): Use gst_value_deserialize() and
remove old code.
* gst/gstvalue.c: (gst_value_deserialize_fourcc),
(gst_value_deserialize_boolean), (gst_strtoi),
(gst_value_deserialize_int), (gst_value_deserialize_double),
(gst_value_deserialize_string), (gst_value_deserialize): Implement
a bunch of deserialize functions and gst_value_deserialize.
* gst/gstvalue.h: er, _de_serialize, not unserialize
* testsuite/caps/string-conversions.c: (main): We don't currently
handle (float) in caps, so convert these to (double).
* testsuite/debug/Makefile.am: Add new test for the printf extension
* testsuite/debug/printf_extension.c: (main): same
2004-01-29 01:20:23 +00:00
David Schleef
3607f4f024 gst/gstpad.*: Add new function to allow element to (somewhat) specify non-fixed caps on a pad.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
* gst/gstpad.h: Add new function to allow element to (somewhat)
specify non-fixed caps on a pad.
* gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
that I added a few weeks ago.
2004-01-27 02:06:02 +00:00
David Schleef
e02c8aae61 gst/gstpad.c: Revert last change making try_set_caps() work with non-fixed caps.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
making try_set_caps() work with non-fixed caps.
2004-01-26 23:25:24 +00:00
David Schleef
aeca198dda Revert accidental checkin and start over
Original commit message from CVS:
Revert accidental checkin and start over
2004-01-26 23:16:21 +00:00
David Schleef
13a292781e Original commit message from CVS:
reviewed by: <delete if not using a buddy>
* docs/gst/tmpl/gstelement.sgml:
* docs/gst/tmpl/gstplugin.sgml:
* docs/gst/tmpl/gstreamer-unused.sgml:
* docs/gst/tmpl/gstxml.sgml:
* gst/gstelement.h:
* gst/gstpad.c: (gst_pad_try_set_caps):
* gst/gstqueue.c: (gst_queue_chain):
* testsuite/caps/Makefile.am:
2004-01-26 23:13:24 +00:00
Thomas Vander Stichele
92be9ac6e8 reinstate LIBRARY_ENCODE
Original commit message from CVS:
reinstate LIBRARY_ENCODE
2004-01-26 09:45:55 +00:00
Benjamin Otte
074ecb2227 gst/gstelement.h: remove gst_element_factory_get_version. It doesn't exist anymore.
Original commit message from CVS:
2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstelement.h:
remove gst_element_factory_get_version. It doesn't exist anymore.
* gst/gstplugin.c:
* gst/gstplugin.h:
remove gst_plugin_set_name and change gst_plugin_get_longname to
gst_plugin_get_description to match code.
* gst/gsterror.h:
remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
* gst/gstpad.c: (gst_pad_try_set_caps):
make it work with nonfixed caps.
Note that even in the nonfixed case the link function of the pad
that tries to set caps isn't called.
2004-01-26 03:44:14 +00:00
Benjamin Otte
8a1bb576b2 gst/elements/gstbufferstore.c: fix bug where buffer was not assembled correctly
Original commit message from CVS:
2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
fix bug where buffer was not assembled correctly
* gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
silence by default
* gst/elements/gsttypefind.c: (gst_type_find_element_chain):
only seek if there's no more buffers that could work without seeking
2004-01-25 02:50:09 +00:00
Ronald S. Bultje
f21808c6a8 gst/gsttag.*: Add application tag (for encoding/muxing app).
Original commit message from CVS:
2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/gsttag.c: (_gst_tag_initialize):
* gst/gsttag.h:
Add application tag (for encoding/muxing app).
2004-01-23 13:18:46 +00:00
Thomas Vander Stichele
38d4e551fa adding GstTagFlag
Original commit message from CVS:
adding GstTagFlag
2004-01-22 13:59:57 +00:00
Thomas Vander Stichele
603c990009 fix rename
Original commit message from CVS:
fix rename
2004-01-20 15:05:42 +00:00
Thomas Vander Stichele
68f5c775c5 fix output of typefind add GPL headers fix doc snippet
Original commit message from CVS:
fix output of typefind
add GPL headers
fix doc snippet
2004-01-20 14:09:42 +00:00
Thomas Vander Stichele
1c7f15e0cc renamine typefindelement to typefind
Original commit message from CVS:
renamine typefindelement to typefind
2004-01-20 13:48:51 +00:00
Thomas Vander Stichele
8cab12db34 adding vorbis tags fixing replaygain tag names
Original commit message from CVS:
adding vorbis tags
fixing replaygain tag names
2004-01-20 13:37:10 +00:00
Thomas Vander Stichele
3f5ffa36ca fix LIBRARY_ERROR_ENCODE
Original commit message from CVS:
fix LIBRARY_ERROR_ENCODE
2004-01-20 12:42:56 +00:00
Thomas Vander Stichele
3d115f3bff changed _extended to _full
Original commit message from CVS:
changed _extended to _full
2004-01-20 10:53:20 +00:00
Thomas Vander Stichele
075034841a fix _gst_element_error_printf prototype
Original commit message from CVS:
fix _gst_element_error_printf prototype
2004-01-20 10:32:38 +00:00
David Schleef
134e00d543 gst/gststructure.c: Convert function to use gst_value_serialize().
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_to_string):
Convert function to use gst_value_serialize().
* gst/gstvalue.c: (gst_value_serialize_list),
(gst_value_serialize_fourcc), (gst_value_serialize_int_range),
(gst_value_serialize_double_range), (gst_value_serialize_boolean),
(gst_value_serialize_int), (gst_value_serialize_double),
(gst_string_wrap), (gst_value_serialize_string),
(gst_value_serialize), (gst_value_deserialize):
* gst/gstvalue.h:
Add implementations for serialize.
2004-01-20 09:14:25 +00:00
Julien Moutte
05202e6ac7 gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if we want to keep that one in the future or change x...
Original commit message from CVS:
2004-01-20  Julien MOUTTE  <julien@moutte.net>

* gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
we want to keep that one in the future or change xvidenc.c to use
another error.
2004-01-19 23:02:55 +00:00
Julien Moutte
842d3ed37e gst/gstelement.h: Temporary fixing core build breakage due to _gst_element_error_printf being undeclared before the m...
Original commit message from CVS:
2004-01-19  Julien MOUTTE  <julien@moutte.net>

* gst/gstelement.h: Temporary fixing core build breakage due to
_gst_element_error_printf being undeclared before the macro. Thomas
please fix that soon !
2004-01-19 22:33:34 +00:00
Thomas Vander Stichele
1a12e752e4 privatise
Original commit message from CVS:
privatise
2004-01-19 18:23:19 +00:00
Thomas Vander Stichele
2dabfe7567 adding docs
Original commit message from CVS:
adding docs
2004-01-19 18:00:43 +00:00
Thomas Vander Stichele
8e0c83daf9 add gstelement.c for translation remove config.h from i18n headers
Original commit message from CVS:
add gstelement.c for translation
remove config.h from i18n headers
2004-01-19 15:49:52 +00:00
Thomas Vander Stichele
853f236b36 removing ending punctuation dots
Original commit message from CVS:
removing ending punctuation dots
2004-01-19 11:44:12 +00:00
Thomas Vander Stichele
b0a02001fa adding a helper printf function for gst_element_error
Original commit message from CVS:
adding a helper printf function for gst_element_error
2004-01-19 11:32:35 +00:00
Thomas Vander Stichele
f26ac1474a add G_STMT macros
Original commit message from CVS:
add G_STMT macros
2004-01-19 09:58:29 +00:00
Thomas Vander Stichele
4efc300279 changing error signal add error codes and domains
Original commit message from CVS:
changing error signal
add error codes and domains
2004-01-18 21:36:20 +00:00
Jeremy Simon
3aaa423f36 Add replaygain tag
Original commit message from CVS:
Add replaygain tag
2004-01-18 21:03:43 +00:00
Benjamin Otte
393a5a8fa3 gst/gstpad.c: Return a newly allocated buffer when the pad has no peer.
Original commit message from CVS:
2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstpad.c: (gst_pad_alloc_buffer):
Return a newly allocated buffer when the pad has no peer.
2004-01-16 23:02:54 +00:00
Benjamin Otte
b26be1ef68 gst/gstclock.c: make it compile with gcc 2.95 again.
Original commit message from CVS:
2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstclock.c: (gst_clock_get_time):
make it compile with gcc 2.95 again.
Patch by Scott Wheeler
2004-01-16 22:56:34 +00:00
David Schleef
a5834649c7 gst/gstcaps.h: Added gst_caps_is_simple() macro.
Original commit message from CVS:
* gst/gstcaps.h:
Added gst_caps_is_simple() macro.
* testsuite/caps/caps.c: (test1):
* testsuite/caps/intersect2.c: (main):
* testsuite/caps/intersection.c: (main):
Fixes to make 'make check' work again after removing
gst_caps_is_chained().
2004-01-16 00:58:06 +00:00
David Schleef
4516e56791 gst/gstelement.c: Use GST_PAD_ macros instead of GST_RPAD_, since we don't know if it's a real or ghost pad.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
(gst_element_link_pads_filtered): Use GST_PAD_ macros instead
of GST_RPAD_, since we don't know if it's a real or ghost pad.
2004-01-15 21:30:49 +00:00
David Schleef
61c61cefda gst/gstqueue.*: Fix the spelling of "treshold" and make min_threshold actually affect the queue.
Original commit message from CVS:
* gst/gstqueue.c:
* gst/gstqueue.h:
Fix the spelling of "treshold" and make min_threshold actually
affect the queue.
2004-01-15 20:37:07 +00:00
David Schleef
2a75ec1544 Minor fix in documentation
Original commit message from CVS:
Minor fix in documentation
2004-01-15 20:33:53 +00:00
Benjamin Otte
b675941102 add new fields in padding, dude
Original commit message from CVS:
add new fields in padding, dude
2004-01-15 09:36:01 +00:00
David Schleef
2ae2ed523d gst/gstcaps.c: Add lots of documentation.
Original commit message from CVS:
* gst/gstcaps.c:
Add lots of documentation.
* gst/gstcaps.h:
Deprecate a few functions.
* gst/gstpad.c:
Removed use of deprecated functions.
2004-01-15 09:03:42 +00:00
Benjamin Otte
e81fbd612f gst/gstpad.*: implement gst_pad_is_linked
Original commit message from CVS:
2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstpad.c: (gst_pad_is_linked):
* gst/gstpad.h:
implement gst_pad_is_linked
* gst/gstelement.h:
reserve space for initiate_state_change
2004-01-15 03:03:15 +00:00
Benjamin Otte
5e8a2fb8a4 gst/autoplug/gstspideridentity.c: break infinite loop by just returning instead of looping
Original commit message from CVS:
2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/autoplug/gstspideridentity.c:
(gst_spider_identity_sink_loop_type_finding):
break infinite loop by just returning instead of looping
* gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
set event time difference correctly. Set it to 1 second instead
of 100ms to be more tolerant
* gst/gstelement.c: (gst_element_set_time):
add debugging output
2004-01-15 01:35:41 +00:00
Benjamin Otte
6a06c610da gst/gstqueue.c: query if buffers are inside the pool, ignore events
Original commit message from CVS:
2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
query if buffers are inside the pool, ignore events
2004-01-14 01:50:31 +00:00
Benjamin Otte
1e82f617e4 gst/gstclock.*: deprecate old interface and disable functions that aren't in use anymore.
Original commit message from CVS:
2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
(gst_clock_set_speed), (gst_clock_set_active),
(gst_clock_is_active), (gst_clock_reset),
(gst_clock_handle_discont):
* gst/gstclock.h:
deprecate old interface and disable functions that aren't in use
anymore.
* gst/gstelement.h:
* gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
(gst_element_set_time), (gst_element_adjust_time):
add concept of "element time" and functions to get/set this time.
* gst/gstelement.c: (gst_element_change_state):
update element time correctly.
* gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
This is a debug message, not a g_critical.
* gst/gstpad.c: (gst_pad_event_default):
handle discontinuous events right with element time.
* gst/gstscheduler.c: (gst_scheduler_state_transition):
update to clocking fixes.
set clocks on elements in READY=>PAUSED. The old behaviour caused
a wrong element time on the first element that started playing.
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_class_init):
* gst/schedulers/gstoptimalscheduler.c:
(gst_opt_scheduler_class_init):
remove code that just implements the default behaviour.
* gst/elements/gstfakesink.c: (gst_fakesink_chain):
update to use new clocking functions
* testsuite/clock/clock1.c: (gst_clock_debug), (main):
* testsuite/clock/clock2.c: (gst_clock_debug), (main):
update to test new element time.
* gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
use _get_allowed_caps instead of _get_caps. This catches filtered
caps correctly.
* testsuite/debug/commandline.c:
update for new GST_DEBUG syntax.
* testsuite/threads/Makefile.am:
disable a test that only works sometimes.
2004-01-14 00:46:48 +00:00
Thomas Vander Stichele
8e96cb73f6 translating parsing error messages
Original commit message from CVS:
translating parsing error messages
2004-01-13 14:23:44 +00:00
Thomas Vander Stichele
495973824d stray comment removed
Original commit message from CVS:
stray comment removed
2004-01-13 13:25:03 +00:00
Thomas Vander Stichele
c8d60d688f fix translations change --gst-debug format
Original commit message from CVS:
fix translations
change --gst-debug format
2004-01-13 13:03:24 +00:00
Thomas Vander Stichele
a4a1b6e958 capitalize popt options
Original commit message from CVS:
capitalize popt options
2004-01-13 12:46:47 +00:00
Thomas Vander Stichele
452268280e distcheck fixes
Original commit message from CVS:
distcheck fixes
2004-01-13 11:46:12 +00:00
Thomas Vander Stichele
f5b464fd27 adding i18n tested with nl, seems to work fine
Original commit message from CVS:
adding i18n
tested with nl, seems to work fine
2004-01-13 11:30:00 +00:00
Thomas Vander Stichele
eb278d959d fix some marked strings
Original commit message from CVS:
fix some marked strings
2004-01-13 11:04:25 +00:00
Iain Holmes
e10cd625ca Reference the group when we add an element to it.
Original commit message from CVS:
Reference the group when we add an element to it.
2004-01-13 01:34:32 +00:00
Benjamin Otte
e19067d541 ... and free the copied va_args
Original commit message from CVS:
... and free the copied va_args
2004-01-12 22:44:38 +00:00
Benjamin Otte
1723ca9b19 use G_VA_COPY instead of directly assigning va_lists
Original commit message from CVS:
use G_VA_COPY instead of directly assigning va_lists
2004-01-12 22:33:11 +00:00
Benjamin Otte
a5bb704036 update - this is huge, because it includes *.bb, *.bbg and *.da files which are generated for gcov.
Original commit message from CVS:
2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* examples/cutter/.cvsignore:
* examples/helloworld/.cvsignore:
* examples/launch/.cvsignore:
* examples/manual/.cvsignore:
* examples/mixer/.cvsignore:
* examples/pingpong/.cvsignore:
* examples/plugins/.cvsignore:
* examples/queue/.cvsignore:
* examples/queue2/.cvsignore:
* examples/queue3/.cvsignore:
* examples/queue4/.cvsignore:
* examples/retag/.cvsignore:
* examples/thread/.cvsignore:
* examples/typefind/.cvsignore:
* examples/xml/.cvsignore:
* gst/.cvsignore:
* gst/autoplug/.cvsignore:
* gst/elements/.cvsignore:
* gst/indexers/.cvsignore:
* gst/parse/.cvsignore:
* gst/registries/.cvsignore:
* gst/schedulers/.cvsignore:
* libs/gst/bytestream/.cvsignore:
* libs/gst/control/.cvsignore:
* libs/gst/getbits/.cvsignore:
* tests/.cvsignore:
* tests/bufspeed/.cvsignore:
* tests/instantiate/.cvsignore:
* tests/memchunk/.cvsignore:
* tests/muxing/.cvsignore:
* tests/sched/.cvsignore:
* tests/seeking/.cvsignore:
* tests/threadstate/.cvsignore:
* testsuite/.cvsignore:
* testsuite/caps/.cvsignore:
* testsuite/cleanup/.cvsignore:
* testsuite/dynparams/.cvsignore:
* testsuite/plugin/.cvsignore:
* tools/.cvsignore:
update - this is huge, because it includes *.bb, *.bbg and *.da files
which are generated for gcov.
2004-01-12 16:53:23 +00:00
David Schleef
7033cbac89 Change _gst_padding[] to _gst_reserved[]
Original commit message from CVS:
Change _gst_padding[] to _gst_reserved[]
2004-01-12 03:15:01 +00:00
Benjamin Otte
15f42f6aeb actually use the free_data function
Original commit message from CVS:
actually use the free_data function
2004-01-12 01:41:23 +00:00
David Schleef
ea1135ec9f Add gst_strtoi().
Original commit message from CVS:
Add gst_strtoi().
2004-01-11 23:25:02 +00:00
David Schleef
c225160935 Fix some incorrect comments caused by recent checkins
Original commit message from CVS:
Fix some incorrect comments caused by recent checkins
2004-01-11 22:46:22 +00:00
David Schleef
d1e5984afa Inherit some of parent's buffer flags.
Original commit message from CVS:
Inherit some of parent's buffer flags.
2004-01-11 22:37:03 +00:00
David Schleef
09012ae0da gst/: Change GstBuffer private structure element names. (all files)
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
(gst_filesrc_map_region):
* gst/gstbuffer.c: (_gst_buffer_initialize),
(_gst_buffer_sub_free), (gst_buffer_default_copy),
(gst_buffer_new), (gst_buffer_create_sub),
(gst_buffer_is_span_fast), (gst_buffer_span):
* gst/gstbuffer.h:
Change GstBuffer private structure element names. (all files)
* gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
(gst_queue_link):
* gst/gstqueue.h:
Implement getcaps/pad_link functions that handle the case where
there are data in the queue.
2004-01-11 22:11:35 +00:00
Benjamin Otte
a06605e4e3 gst/elements/gstbufferstore.c: initialize debugging structure correctly
Original commit message from CVS:
2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/elements/gstbufferstore.c:
initialize debugging structure correctly
* gst/elements/gsttee.c: (gst_tee_set_property):
g_object_notify when property was changed
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_change_state):
clear caps correctly
2004-01-11 18:23:48 +00:00
Benjamin Otte
88c4887db3 gst/gstqueue.c: Use better defaults for when a queue should block. This gets rid of jerky playback for quite a few fi...
Original commit message from CVS:
2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstqueue.c: (gst_queue_init):
Use better defaults for when a queue should block. This
gets rid of jerky playback for quite a few files.
It takes more memory.
2004-01-11 17:55:10 +00:00
Thomas Vander Stichele
68df6ee79d make critical more useful
Original commit message from CVS:
make critical more useful
2004-01-10 13:52:44 +00:00
Benjamin Otte
29e4f4c6ba gst/gstinfo.*: Change gst_debug_log(_valist) to take a const format string.
Original commit message from CVS:
2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
(gst_debug_message_get), (gst_debug_log_default):
* gst/gstinfo.h:
Change gst_debug_log(_valist) to take a const format string.
Change prototype of log function and functions using those to
take a GstDebugMessage instead of a string that requires using
gst_debug_message_get.
2004-01-10 01:49:00 +00:00
Benjamin Otte
de60fbda38 gst/gstutils.h: GST_PARENT_CALL and
Original commit message from CVS:
2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstutils.h:
Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
GST_PARENT_CALL_WITH_DEFAULT
* gst/elements/gstaggregator.c:
* gst/elements/gstbufferstore.c:
* gst/elements/gstfakesink.c:
* gst/elements/gstfakesrc.c:
* gst/elements/gstfdsink.c:
* gst/elements/gstfdsrc.c:
* gst/elements/gstfilesink.c:
* gst/elements/gstfilesrc.c:
* gst/elements/gstidentity.c:
* gst/elements/gstmd5sink.c:
* gst/elements/gstmultidisksrc.c:
* gst/elements/gstpipefilter.c:
* gst/elements/gstshaper.c:
* gst/elements/gststatistics.c:
* gst/elements/gsttee.c:
* gst/elements/gsttypefindelement.c:
use them.
2004-01-08 04:10:18 +00:00
Ronald S. Bultje
718b21bfc2 gst/elements/gstfilesink.c: Fix for if we pass NULL as property to location.
Original commit message from CVS:
2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/elements/gstfilesink.c: (gst_filesink_set_location):
Fix for if we pass NULL as property to location.
* gst/elements/gstpipefilter.c: (gst_pipefilter_init),
(gst_pipefilter_handle_event), (gst_pipefilter_chain):
Fix for instantiate-test (see below).
* gst/gststructure.c: (_gst_structure_parse_value):
Fix compile error on gcc-2.96.
* configure.ac:
* tests/Makefile.am:
* tests/instantiate/Makefile.am:
* tests/instantiate/create.c: (create_all_elements), (main):
Add a test that instantiates all elements. This makes it easy to
track dead code for old API/design (like setting event functions
on sink pads and so on).
2004-01-07 13:13:03 +00:00
David Schleef
aa40b1516b Revert last change, because it was unintended.
Original commit message from CVS:
Revert last change, because it was unintended.
2004-01-06 21:41:05 +00:00
David Schleef
1352e57bf6 Disable some poisoning, since some plugins rely on undefined behavior
Original commit message from CVS:
Disable some poisoning, since some plugins rely on undefined behavior
2004-01-06 21:39:53 +00:00
Jan Schmidt
baa7050fd2 Make the "could not find compatible pad' message more informative
Original commit message from CVS:
Make the "could not find compatible pad' message more informative
2004-01-06 16:28:43 +00:00
Jan Schmidt
c1d837b9d5 gst/gstcaps.c: Move the poisoning to allow a NULL structure
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_append_structure):
Move the poisoning to allow a NULL structure
* gst/gstevent.c: (_gst_event_free):
When freeing a navigation event, free the structure
also
2004-01-05 16:25:31 +00:00
David Schleef
2f85a255ba gst/elements/gsttee.c: Remove usage of gst_pad_proxy_fixate.
Original commit message from CVS:
* gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
Remove usage of gst_pad_proxy_fixate.
* gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
(gst_caps_split_one), (gst_caps_replace):
Add poisoning code.
* gst/gstmarshal.list:
Add pointer__pointer for fixate signal
* gst/gstpad.c: (gst_real_pad_class_init),
(_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
(_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
(gst_pad_set_explicit_caps), (gst_pad_template_new):
Add poisoning code. Add fixate signal on RealPad. Change
set_explicit_caps() to take const GstCaps, like try_set_caps().
* gst/gstpad.h:
* testsuite/caps/Makefile.am:
* testsuite/caps/app_fixate.c: Add a test for the fixate signal
2004-01-04 23:43:11 +00:00
David Schleef
582fdaa3b2 Fix segfaults caused by last checkin and add a few more checks.
Original commit message from CVS:
Fix segfaults caused by last checkin and add a few more checks.
2004-01-03 10:39:57 +00:00
David Schleef
599926b18e gst/elements/gsttypefindelement.c: Use gst_pad_use_explicit_caps for src pad.
Original commit message from CVS:
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_have_type), (gst_type_find_element_init):
Use gst_pad_use_explicit_caps for src pad.
* gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
before using it.
2004-01-03 10:01:35 +00:00
David Schleef
d4142ec0a0 gst/gstelement.c: Fix to allow DELAYED to indicate that linking was successful.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_link_pads_filtered),
(gst_element_negotiate_pads): Fix to allow DELAYED to indicate
that linking was successful.
* gst/gstpad.c: (gst_pad_link_free),
(gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
(gst_pad_link_try), (gst_pad_link_unnegotiate),
(gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
GstPadLinkReturn correctly between functions, and don't fail
when DELAYED is used (DELAYED is very important).  Better
cleanup on unlinking and unnegotiation.  Should fix some spider
bugs.
2004-01-03 09:25:04 +00:00
David Schleef
f69c95d94c Move padtemplate clearing from class_init to base_init
Original commit message from CVS:
Move padtemplate clearing from class_init to base_init
2004-01-03 01:25:01 +00:00
Ronald S. Bultje
8dd4d19854 gst/gstelement.c: Refuse registering a pad template if another pad template with the same name already exists (#114715).
Original commit message from CVS:
2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/gstelement.c: (gst_element_class_add_pad_template):
Refuse registering a pad template if another pad template
with the same name already exists (#114715).
2004-01-02 23:52:59 +00:00
David Schleef
a77e6e35e4 gst/gstcaps.c: Add new function.
Original commit message from CVS:
* gst/gstcaps.c: (_gst_structure_is_equal_foreach),
(gst_caps_is_equal_fixed): Add new function.
* gst/gstcaps.h: ditto.
* gst/gstpad.c: (gst_real_pad_class_init),
(gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
(gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
check new caps against existing caps -- if they're the same, return
OK without renegotiating.  caps-nego-failed signal fixed so that
the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
to save an extra caps copy.  Don't complete negotiation if a pad
link function returns DELAYED.
2004-01-02 23:04:14 +00:00
Benjamin Otte
62d2803d5d gst/gstpad.c: Fix wrong g_return_if_fail
Original commit message from CVS:
2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstpad.c: (gst_pad_try_relink_filtered):
Fix wrong g_return_if_fail
2004-01-02 19:10:44 +00:00
Jan Schmidt
de0c9fba96 Change the marshalilng of element_added/element_removed signals to use gst_marshal_VOID__OBJECT over gst_marshal_VOID...
Original commit message from CVS:
Change the marshalilng of element_added/element_removed signals to use
gst_marshal_VOID__OBJECT over gst_marshal_VOID__POINTER
2004-01-02 15:41:08 +00:00
David Schleef
15a286a3ec Clean up some code in last checkin. Fix minor bug where allowed_caps were incorrectly used for negotiation.
Original commit message from CVS:
Clean up some code in last checkin.  Fix minor bug where allowed_caps
were incorrectly used for negotiation.
2004-01-02 10:01:11 +00:00
David Schleef
9ad670e297 Add new use_explicit_caps() and set_explicit_caps() functions.
Original commit message from CVS:
Add new use_explicit_caps() and set_explicit_caps() functions.
2004-01-02 07:02:43 +00:00
David Schleef
1af3878c8f remove bogus FIXME
Original commit message from CVS:
remove bogus FIXME
2004-01-02 06:58:17 +00:00
David Schleef
e7d186c69a Negotiation fixes
Original commit message from CVS:
Negotiation fixes
2004-01-01 02:23:47 +00:00
David Schleef
58f4b89e95 Implement gst_caps_normalize()
Original commit message from CVS:
Implement gst_caps_normalize()
2004-01-01 02:17:44 +00:00
Ronald S. Bultje
dd6ba0b28e gst/gstqueue.c: use gst_pad_proxy_getcaps()
Original commit message from CVS:
2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/gstqueue.c: (gst_queue_init):
use gst_pad_proxy_getcaps()
2003-12-31 11:08:01 +00:00
David Schleef
2ecb08f2bd Negotiation fixes
Original commit message from CVS:
Negotiation fixes
2003-12-31 08:09:38 +00:00
David Schleef
8f8aaf83f4 Add functions useful default pad_link and fixate functions.
Original commit message from CVS:
Add functions useful default pad_link and fixate functions.
2003-12-31 08:06:49 +00:00
David Schleef
1933a78c8e Fix segfault caused by last checkin
Original commit message from CVS:
Fix segfault caused by last checkin
2003-12-30 19:11:03 +00:00
David Schleef
cd1d72deb2 gst/gstcaps.*: Add simplify function
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
(gst_caps_structure_simplify), (gst_caps_simplify):
* gst/gstcaps.h:
Add simplify function
* gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
(gst_pad_perform_negotiate), (gst_pad_is_negotiated):
* gst/gstpad.h:
Copy over srcnotify, sinknotify when calling old pad_link
functions.  Add new is_negotiated() function.
* gst/gststructure.c: (gst_structure_copy):
Fix an incredibly stupid bug that should have been noticed
weeks ago.  _copy() returned the argument, not the new copy.
2003-12-30 04:59:48 +00:00
Benjamin Otte
a8a68d0c0c only call link functions to restore old link if the old link was negotiated
Original commit message from CVS:
only call link functions to restore old link if the old link was negotiated
2003-12-27 15:49:15 +00:00
Benjamin Otte
f98a10e5d0 set freed caps to NULL
Original commit message from CVS:
set freed caps to NULL
2003-12-27 14:09:51 +00:00
Benjamin Otte
9df878658c gst/gstcaps.c: add sanity checks
Original commit message from CVS:
2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstcaps.c: (gst_caps_append):
add sanity checks
* gst/gstcaps.h: (gst_caps_debug):
remove, it doesn't exist anymore.
* gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
(gst_element_threadsafe_properties_post_run):
make debugging messages not clutter up THREAD debug category
(gst_element_negotiate_pads), (gst_element_clear_pad_caps),
(gst_element_change_state):
update to new caps API
* gst/gstinterface.c: (gst_implements_interface_cast):
don't put vital code in g_return_if_fail
* gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
(gst_pad_link_filtered):
add pst_pad_try_link and use it.
(gst_pad_perform_negotiate), (gst_pad_renegotiate):
implement correctly, deprecate first one.
(gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
add and implement.
(gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
implement.
(gst_pad_get_negotiated_caps):
add and implement. Make GST_PAD_CAPS call this function.
(gst_pad_get_caps):
remove unneeded check..
(gst_pad_recover_caps_error):
disable, always return FALSE.
(gst_real_pad_dispose):
don't free caps and appfilter anymore, they're unused.
* gst/gstpad.h:
Reflect changes mentioned above.
* gst/gstsystemclock.c: (gst_system_clock_wait):
Make 'clock is way behind' a debugging message.
* gst/gstthread.c: (gst_thread_change_state):
Fix debugging message
2003-12-27 13:51:31 +00:00
Thomas Vander Stichele
6cc7e04989 fix GST_DEBUG_CATEGORY_INIT description
Original commit message from CVS:
fix GST_DEBUG_CATEGORY_INIT description
2003-12-25 09:42:56 +00:00
Thomas Vander Stichele
e448390775 removing last mentions of wingo cothreads
Original commit message from CVS:
removing last mentions of wingo cothreads
2003-12-24 15:11:20 +00:00
Thomas Vander Stichele
47274a1abe fix non-gtk-doc comment blocks
Original commit message from CVS:
fix non-gtk-doc comment blocks
2003-12-24 14:39:46 +00:00
Thomas Vander Stichele
dfedf4271f whitespace and doc style fixes
Original commit message from CVS:
whitespace and doc style fixes
2003-12-24 14:36:03 +00:00
Thomas Vander Stichele
28f19dd965 remove trailing comma for gtk-doc
Original commit message from CVS:
remove trailing comma for gtk-doc
2003-12-24 12:55:00 +00:00
Colin Walters
5d39cbbd4e Make GstCaps parameter const. Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED. Don't double-fre...
Original commit message from CVS:
Make GstCaps parameter const.  Copy caps parameter. Use _POINTER to
marshal caps instead of _BOXED.  Don't double-free caps.Use
GST_PAD_LINK_SUCCESSFUL.
2003-12-24 07:42:43 +00:00
David Schleef
686e3f1805 Fix a few logic bugs in gst_element_get_compatible_pad_filtered() caused by new pad negotiation. Add some debugging,...
Original commit message from CVS:
Fix a few logic bugs in gst_element_get_compatible_pad_filtered() caused
by new pad negotiation.  Add some debugging, and fix logic bug in gstpad.c.
2003-12-24 03:28:27 +00:00
David Schleef
e73192ddb4 Implement gst_pad_can_link_filtered(). Fix a few minor bugs.
Original commit message from CVS:
Implement gst_pad_can_link_filtered().  Fix a few minor bugs.
2003-12-24 02:32:42 +00:00
David Schleef
4441d749e9 Add some sanity tests to gstpad.c. Check that pad is linked before calling gst_pad_try_set_caps() on it in spideride...
Original commit message from CVS:
Add some sanity tests to gstpad.c.  Check that pad is linked before
calling gst_pad_try_set_caps() on it in spideridentity.
2003-12-24 01:39:08 +00:00
David Schleef
f94d6d1d47 Check caps for NULL before copying
Original commit message from CVS:
Check caps for NULL before copying
2003-12-24 00:26:45 +00:00
David Schleef
473c2e6446 Fix bug in _gst_caps_value_copy() that could cause GValue corruption
Original commit message from CVS:
Fix bug in _gst_caps_value_copy() that could cause GValue corruption
2003-12-24 00:02:17 +00:00
Colin Walters
fa4316c123 Use GST_PAD_LINK_SUCCESSFUL.
Original commit message from CVS:
Use GST_PAD_LINK_SUCCESSFUL.
2003-12-23 23:37:54 +00:00
David Schleef
778c24a58a gst/elements/: Use gst_pad_proxy_getcaps().
Original commit message from CVS:
* gst/elements/gstaggregator.c:
* gst/elements/gsttee.c:
Use gst_pad_proxy_getcaps().
* gst/gstpad.c:
* gst/gstpad.h:
Add gst_pad_proxy_getcaps(), which filter elements can use
as a generic getcaps implementation.
Fix gst_pad_get_allowed_caps().  It just wasn't doing what
was advertised.
2003-12-23 23:19:07 +00:00
David Schleef
91954ff66b gst/gstpad.c: Rearrange/rewrite much of the pad negotiation code, since it resembled pasta. This actually changes th...
Original commit message from CVS:
* gst/gstpad.c:
Rearrange/rewrite much of the pad negotiation code, since it
resembled pasta.  This actually changes the way some
negotiation works, since the previous code was inconsistent
depending on how it was invoked.  Add (internal) structure
GstPadLink, which is used to hold some information (more in
the future) about the link between two pads.  Fixes a number
of bugs, including random lossage of filter caps when the
initial negotiation is delayed.  A few functions are still
unimplemented.
* gst/gstpad.h:
Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
these when testing GstPadLinkReturn values instead of comparing
directly.
2003-12-23 21:39:35 +00:00
David Schleef
b121bf3571 Fix typo in last checkin that caused a regression.
Original commit message from CVS:
Fix typo in last checkin that caused a regression.
2003-12-23 21:22:38 +00:00
David Schleef
63079b12bc Rearrange lots of code. Change registration of compare function into registration of compare/serialize/deserialize f...
Original commit message from CVS:
Rearrange lots of code.  Change registration of compare function
into registration of compare/serialize/deserialize functions.
2003-12-23 20:58:05 +00:00
David Schleef
a95a3d2064 Remove these; we don't use them anymore
Original commit message from CVS:
Remove these; we don't use them anymore
2003-12-23 19:21:33 +00:00
Colin Walters
31808e7afa Add interface to setting GValues directly.
Original commit message from CVS:
Add interface to setting GValues directly.
2003-12-23 04:50:01 +00:00
David Schleef
fd203e87e2 Print double ranges in a locale-friendly way
Original commit message from CVS:
Print double ranges in a locale-friendly way
2003-12-22 19:28:07 +00:00
Benjamin Otte
31baf87dd4 gst/elements/gstelements.c: Set ranks of elements to NONE, so the autoplugger doesn't use them.
Original commit message from CVS:
2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/elements/gstelements.c:
Set ranks of elements to NONE, so the autoplugger doesn't use them.
* gst/elements/gstshaper.c: (gst_shaper_getcaps):
Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
gst_caps (peer).
2003-12-22 19:10:41 +00:00
Benjamin Otte
d136495dd9 gst/autoplug/: Fix autoplugging in spider element, so it works with new caps.
Original commit message from CVS:
2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
* gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
(gst_spider_identity_getcaps), (gst_spider_identity_change_state),
(gst_spider_identity_sink_loop_type_finding):
* gst/autoplug/gstspideridentity.h:
Fix autoplugging in spider element, so it works with new caps.
This was mainly caused by identifying empty caps incorrectly.
2003-12-22 18:06:22 +00:00
Thomas Vander Stichele
50b7bcab86 some docs style cleanups
Original commit message from CVS:
some docs style cleanups
2003-12-22 10:51:03 +00:00
Thomas Vander Stichele
487f0893ee minor style issues, no need to ChangeLog it
Original commit message from CVS:
minor style issues, no need to ChangeLog it
2003-12-22 10:37:31 +00:00
David Schleef
72163f3e5c Add gst_value_init_and_copy() and use it, to avoid silly mistakes in using g_value_copy()
Original commit message from CVS:
Add gst_value_init_and_copy() and use it, to avoid silly mistakes in
using g_value_copy()
2003-12-22 07:00:25 +00:00
David Schleef
003a59c4f3 Allow more characters to be recognized as caps characters
Original commit message from CVS:
Allow more characters to be recognized as caps characters
2003-12-22 06:57:29 +00:00
David Schleef
6150b02001 rename gstcaps2.[ch] to gstcaps.[ch]
Original commit message from CVS:
rename gstcaps2.[ch] to gstcaps.[ch]
2003-12-22 01:58:20 +00:00
David Schleef
8c9cd079d4 Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:39:35 +00:00
Ronald S. Bultje
f12a5871cf gst/gstqueue.c: implement timeout for sending events. Workaround for if the pipeline on this queue is not passing any...
Original commit message from CVS:
2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/gstqueue.c: (gst_queue_handle_pending_events),
(gst_queue_chain), (gst_queue_handle_src_event):
implement timeout for sending events. Workaround for if the
pipeline on this queue is not passing any data.
2003-12-21 18:59:06 +00:00
Brian Cameron
0cb4645646 Fixed shell in docs/gst/Makefile.am and docs/libs/Makefile.am so that it works with Solaris /bin/sh. Fixed gst/gstpl...
Original commit message from CVS:
Fixed shell in docs/gst/Makefile.am and docs/libs/Makefile.am so that
it works with Solaris /bin/sh.  Fixed gst/gstplugin.c so it compiles
properly when the configure --disable-gst_debug option is used.
Fixed gst/parse/Makefile.am so that it doesn't append grammar.tab.h to
the end of lex._gst_parse_yy.c since lex._gst_parse_yy.c already
includes grammar.tab.h via a <#include ...> line.
2003-12-19 20:27:03 +00:00
David Schleef
0e86531c8b Fix powerpc asm
Original commit message from CVS:
Fix powerpc asm
2003-12-18 09:41:49 +00:00
Colin Walters
6b9383ce6c Fix type of GST_TAG_TRACK_COUNT.
Original commit message from CVS:
Fix type of GST_TAG_TRACK_COUNT.
2003-12-18 04:28:43 +00:00
Ronald S. Bultje
c231ca28a8 Remove need for calling set_active(FALSE)+set_active(TRUE) before calling handle_discont(). I didn't really understan...
Original commit message from CVS:
Remove need for calling set_active(FALSE)+set_active(TRUE) before
calling handle_discont(). I didn't really understand this part but
I'm assuming that "hey, it works!" is good enough this time...
2003-12-17 22:35:25 +00:00
Benjamin Otte
9195d5bf8e implement gst_bin_get_(all_)by_interface
Original commit message from CVS:
implement gst_bin_get_(all_)by_interface
2003-12-16 19:35:26 +00:00
Thomas Vander Stichele
cdfe720faa rename option as suggested to avoid bad jokes :)
Original commit message from CVS:
rename option as suggested to avoid bad jokes :)
2003-12-16 12:20:54 +00:00
Thomas Vander Stichele
f4f76837fa fix brian's commit
Original commit message from CVS:
fix brian's commit
2003-12-15 22:13:03 +00:00
Brian Cameron
c6a18b92c2 Removed grammar.tab.h from the flex command to build lex._gst_parse_yy.c because this caused grammar.tab.h to be incl...
Original commit message from CVS:
Removed grammar.tab.h from the flex command to build lex._gst_parse_yy.c
because this caused grammar.tab.h to be included twice in the file (since
it is already included directly in parse.l via an #include statement).
Including this file twice was causing Forte to be unable to compile it.
2003-12-15 18:40:13 +00:00
Brian Cameron
bdbfd1bebe Removed needless semicolon that was causing a compiler error with Forte.
Original commit message from CVS:
Removed needless semicolon that was causing a compiler error with Forte.
2003-12-15 18:22:57 +00:00
Thomas Vander Stichele
a4f74f5eb4 implementing segfault handler for plugin loading
Original commit message from CVS:
implementing segfault handler for plugin loading
2003-12-15 12:44:35 +00:00
Ronald S. Bultje
9111ea764c Fix a deadlock that happens if the next element sends an event and the previous element sends a buffer where the queu...
Original commit message from CVS:
Fix a deadlock that happens if the next element sends an event and the previous element sends a buffer where the queue is full. See the comment in the code for the rest.
2003-12-14 13:14:35 +00:00
Benjamin Otte
8cf0d17c3f fix caps parsing. Some evil person (me?\!) disallowed the dot as a character in caps
Original commit message from CVS:
fix caps parsing. Some evil person (me?\!) disallowed the dot as a character in caps
2003-12-14 04:28:11 +00:00
Ronald S. Bultje
90d64117c5 This is either a rewrite or a large bugfix to the queue element, whatever you prefer to call it.
Original commit message from CVS:
This is either a rewrite or a large bugfix to the queue element, whatever
you prefer to call it.

* upstream event forwarding now works. This should fix Julien's issues.
* this queue allows setting a min. treshold size and a max. limit size
in bytes, buffers and time before the queue allows the next element
to pull data or the previous element to push data into it. This is
very interesting for network-related buffering. Also includes signals
et all for the end user application.
* Events are no longer part of the queue's "size", they're essentially
seen as "void data". they have no size or time associated with them
anyway, so this shouldn't really sound weird.
2003-12-13 17:12:46 +00:00
Benjamin Otte
46a70fddfb removed GST_*_CAST. Disabling of type checking is done in glib.
Original commit message from CVS:
removed GST_*_CAST. Disabling of type checking is done in glib.
2003-12-13 16:58:29 +00:00
Benjamin Otte
e8dbaf28bc do connect elements directly, if they can be connected already and don't try to find an element that fits in between
Original commit message from CVS:
do connect elements directly, if they can be connected already and don't try to find an element that fits in between
2003-12-09 16:28:34 +00:00
David Schleef
44fe9524c3 oops, didn't intend to do last checkin
Original commit message from CVS:
oops, didn't intend to do last checkin
2003-12-09 04:05:31 +00:00
David Schleef
1cd87b37e5 Change GST_.*_PADDING to _gst_padding[GST_PADDING];
Original commit message from CVS:
Change GST_.*_PADDING to _gst_padding[GST_PADDING];
2003-12-09 02:39:31 +00:00
Benjamin Otte
b9d7ea92ed finish everything typefinding related (like seeking to correct offset) _before_ pushing the first buffer
Original commit message from CVS:
finish everything typefinding related (like seeking to correct offset) _before_ pushing the first buffer
2003-12-07 19:02:30 +00:00
Ronald S. Bultje
103c22dee3 Rename GstInterface to GstImplementsInterface (see bug #122423)
Original commit message from CVS:
Rename GstInterface to GstImplementsInterface (see bug #122423)
2003-12-07 12:08:44 +00:00
Thomas Vander Stichele
7918a27650 more trademark fixing
Original commit message from CVS:
more trademark fixing
2003-12-05 12:32:06 +00:00
Andy Wingo
8ca1b1fe7f remove copyright field from plugin structs
Original commit message from CVS:
remove copyright field from plugin structs
2003-12-04 10:02:41 +00:00
Thomas Vander Stichele
a0e8e56d8d fix docs build fix make distcheck
Original commit message from CVS:
fix docs build
fix make distcheck
2003-12-02 18:21:35 +00:00
Benjamin Otte
1f6bda5395 comment out caps2 stuff
Original commit message from CVS:
comment out caps2 stuff
2003-12-02 16:48:11 +00:00