Commit graph

2645 commits

Author SHA1 Message Date
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