Commit graph

4357 commits

Author SHA1 Message Date
Wim Taymans
b340b510ce gst/gstpad.c: When we use gst_pad_alloc_buffer() without wanting to set the caps we also don't need to check if the c...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_configure_src):
When we use gst_pad_alloc_buffer() without wanting to set the caps we
also don't need to check if the caps are compatible because the caller
presumably is going to perform its own custom checks. Fixes some cases
where basetransform elements would error out when it was not needed.
2008-10-20 13:32:07 +00:00
Tim-Philipp Müller
1be929a4b6 gst/gstquark.c: Fix printf format warning.
Original commit message from CVS:
* gst/gstquark.c: (_priv_gst_quarks_initialize):
Fix printf format warning.
2008-10-14 17:10:43 +00:00
Wim Taymans
97ec47cabb docs/design/part-TODO.txt: Remove item from the todo list because it was fixed with the latency state change rewrites.
Original commit message from CVS:
* docs/design/part-TODO.txt:
Remove item from the todo list because it was fixed with the latency
state change rewrites.
* docs/design/part-seeking.txt:
* docs/design/part-segments.txt:
Update some docs.
* gst/gstevent.c: (gst_event_new_new_segment_full),
(gst_event_parse_new_segment_full), (gst_event_new_buffer_size),
(gst_event_parse_buffer_size), (gst_event_new_qos),
(gst_event_parse_qos), (gst_event_new_seek),
(gst_event_parse_seek), (gst_event_new_latency),
(gst_event_parse_latency):
Use quarks to construct and parse events.
* gst/gstquark.c: (_priv_gst_quarks_initialize):
* gst/gstquark.h:
Add some more quarks to the table.
Emit a warning when the quark tables are not in sync.
* tests/check/gst/gstbus.c: (GST_START_TEST):
Add an assert.
2008-10-13 17:19:25 +00:00
Wim Taymans
85de653640 gst/gstbus.c: Fix deadlock, g_source_get_id() cannot be called in finalize.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_source_finalize),
(gst_bus_add_watch_full_unlocked), (gst_bus_add_watch_full),
(gst_bus_enable_sync_message_emission),
(gst_bus_disable_sync_message_emission),
(gst_bus_add_signal_watch_full), (gst_bus_remove_signal_watch):
Fix deadlock, g_source_get_id() cannot be called in finalize.
Keep track of the watch source by keeping a pointer to the source object
instead.
Use the bus lock to protect access to the pointer to the current
watch source.
2008-10-13 10:50:17 +00:00
Olivier Crete
882c997103 gst/gstbus.c: Only allow one bus watch to be set at a time. This is necessary because the dispatcher pops the message...
Original commit message from CVS:
Base on Patch by: Olivier Crete <tester at tester dot ca>
* gst/gstbus.c: (gst_bus_source_finalize),
(gst_bus_add_watch_full), (gst_bus_add_signal_watch_full):
Only allow one bus watch to be set at a time. This is necessary
because the dispatcher pops the message from the bus and the second
watcher will then get NULL or the next message (and the first won't
get this next message then, etc). If more than one "watcher" is
required signal watches should be used. Fixes bug #526044.
2008-10-13 09:22:22 +00:00
Sebastian Dröge
e6543e71ef gst/gstxml.c: Clarify that the save_thyself() and restore_thyself() virtual functions of GstObject need to be overrid...
Original commit message from CVS:
* gst/gstxml.c:
Clarify that the save_thyself() and restore_thyself() virtual
functions of GstObject need to be overriden, not
gst_object_(save|restore)_thyself() which is impossible.
Fixes bug #555700.
2008-10-10 15:38:06 +00:00
Wim Taymans
401cc7fe6a gst/gstpad.c: Revert a patch from 21 months ago that broke caps negotiation in pull mode. Basically, having a buffer ...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_get_range), (gst_pad_pull_range):
Revert a patch from 21 months ago that broke caps negotiation in pull
mode. Basically, having a buffer pass over a pad will trigger the
setcaps function when caps change, just like in push mode.
2008-10-10 15:27:37 +00:00
Wim Taymans
bc8e367885 gst/gstbin.c: The message src can be NULL, don't try to print the object names in that case.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_remove_func), (update_degree),
(gst_bin_handle_message_func):
The message src can be NULL, don't try to print the object names in that
case.
* libs/gst/base/gstbasesink.c: (gst_base_sink_pad_activate):
Add some more debug info.
* tests/check/pipelines/simple-launch-lines.c: (run_pipeline),
(GST_START_TEST):
Add some debug.
Fix the test, pull based sinks go ASYNC to PAUSED, just like other
scheduling modes.
2008-10-10 10:38:12 +00:00
Wim Taymans
3245d41e16 gst/gstpipeline.c: Release the object lock before trying to flush the bus.
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_change_state):
Release the object lock before trying to flush the bus.
2008-10-08 15:21:12 +00:00
Wim Taymans
33bd5179c3 gst/gstghostpad.*: Unbreak -good build, private is a reserved c++ keyword.
Original commit message from CVS:
* gst/gstghostpad.c:
* gst/gstghostpad.h:
Unbreak -good build, private is a reserved c++ keyword.
2008-10-08 10:39:24 +00:00
Andy Wingo
b731374c49 gst/gstghostpad.*: Fix unintended API removal: re-add GST_GHOST_PAD_CAST to the header.
Original commit message from CVS:
2008-10-08  Andy Wingo  <wingo@pobox.com>

* gst/gstghostpad.h (GST_GHOST_PAD_CAST):
* gst/gstghostpad.c (GST_GHOST_PAD_CAST): Fix unintended API
removal: re-add GST_GHOST_PAD_CAST to the header.
2008-10-08 10:19:11 +00:00
Andy Wingo
9640db9fe2 gst/gstghostpad.h (GstProxyPad, GstProxyPadClass, GstGhostPad)
Original commit message from CVS:
2008-10-08  Andy Wingo  <wingo@pobox.com>

* gst/gstghostpad.h (GstProxyPad, GstProxyPadClass, GstGhostPad)
(GstGhostPadClass): Publically expose these structures so as to
allow easy subclassing from C. Hide the member data behind a
private opaque data pointer.

* gst/gstghostpad.c: Adapt to store instance data in the type
instance's private data region, not in the public struct.
2008-10-08 10:12:45 +00:00
Sebastian Dröge
2d2a55a2a4 gst/gstregistrybinary.c: If we can't get a cache file don't try to save something to it.
Original commit message from CVS:
* gst/gstregistrybinary.c: (gst_registry_binary_write_cache):
If we can't get a cache file don't try to save something to it.
Dereferencing NULL pointers usually isn't a good idea.
2008-10-08 10:07:15 +00:00
Andy Wingo
83d3b5d88e gst/gstghostpad.c (gst_ghost_pad_construct): If we got a template via g_object_get(), be sure to unref it.
Original commit message from CVS:
2008-10-08  Andy Wingo  <wingo@pobox.com>

* gst/gstghostpad.c (gst_ghost_pad_construct): If we got a
template via g_object_get(), be sure to unref it.

* gst/gstbuffer.h (GST_BUFFER_FREE_FUNC): Fix incorrect doc.
2008-10-08 08:54:55 +00:00
Sebastian Dröge
22dd04f7e0 Always use the unaligned variants of GST_READ_UINT* and GST_WRITE_UINT* as it's too easy to break the ISO C strict al...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstutils.h:
Always use the unaligned variants of GST_READ_UINT* and GST_WRITE_UINT*
as it's too easy to break the ISO C strict aliasing rules with simple
casts to the corresponding type and this would introduce hard to debug
bugs. Fixes bug #545714.
API: Add GST_READ_UINT24_(LE|BE) and GST_WRITE_UINT24_(LE|BE).
2008-10-07 12:00:49 +00:00
Tim-Philipp Müller
cabf154dc6 gst/: Add 'Since' bits to gtk-doc chunks for new API.
Original commit message from CVS:
* gst/gstbuffer.h: (GST_BUFFER_FREE_FUNC):
* gst/gstghostpad.c: (gst_ghost_pad_construct):
Add 'Since' bits to gtk-doc chunks for new API.
2008-10-07 06:56:11 +00:00
Andy Wingo
267d0ba8f3 gst/gstbuffer.h (GST_BUFFER_FREE_FUNC): New API, a free function that will be called on the malloc_data to free it. B...
Original commit message from CVS:
2008-10-06  Andy Wingo  <wingo@pobox.com>

* gst/gstbuffer.h (GST_BUFFER_FREE_FUNC): New API, a free function
that will be called on the malloc_data to free it. Basically a way
to avoid subclassing when all you need is a different free
function, i.e. free() instead of g_free().

* gst/gstbuffer.c (gst_buffer_finalize): Free malloc_data via
calling the free function.
(gst_buffer_init): Initialize the free function to g_free.
2008-10-06 18:01:42 +00:00
Andy Wingo
f7ae133fec gst/gstghostpad.*: New function, finishes the initialization of ghost pad. Useful for language bindings and subclasse...
Original commit message from CVS:
2008-10-06  Andy Wingo  <wingo@pobox.com>

* gst/gstghostpad.h:
* gst/gstghostpad.c (gst_ghost_pad_construct): New function,
finishes the initialization of ghost pad. Useful for language
bindings and subclassers of GstGhostPad. Fixes #539108.
(gst_ghost_pad_new_full): Use the new constructor.
2008-10-06 17:57:25 +00:00
Olivier Crete
ee0eaf824b gst/gstbin.c: Keep track of pads that are being linked/unlinked and resync the state changes.
Original commit message from CVS:
Base on Patch by: Olivier Crete <tester at tester dot ca>
* gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
(gst_bin_remove_func), (update_degree),
(gst_bin_sort_iterator_new), (gst_bin_handle_message_func):
Keep track of pads that are being linked/unlinked and resync the state
changes.
* gst/gstpad.c: (gst_pad_get_direction),
(gst_pad_set_chain_function), (gst_pad_set_getrange_function),
(gst_pad_set_checkgetrange_function), (gst_pad_unlink),
(gst_pad_link_prepare), (gst_pad_link),
(gst_pad_event_default_dispatch), (gst_pad_chain), (gst_pad_push),
(gst_pad_check_pull_range), (gst_pad_get_range),
(gst_pad_pull_range):
Some code cleanups, use macros to check pad direction.
Don't need to take the lock on the pad direction.
Post structure change when pads are linked/unlinked.
Change some checks into _return_if_fail().
* tests/check/gst/gstbin.c:
(test_link_structure_change_state_changed_sync_cb),
(GST_START_TEST), (gst_bin_suite):
Add testcase for pad link/unlinke resync during a state change.
Fixes #510354.
2008-10-06 16:15:02 +00:00
Wim Taymans
cb98130213 Implement STRUCTURE_CHANGED messages. These messages will be used to signal the parent bin of link/unlink operations ...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstmessage.c: (gst_message_new_structure_change),
(gst_message_parse_structure_change):
* gst/gstmessage.h:
Implement STRUCTURE_CHANGED messages. These messages will be used to
signal the parent bin of link/unlink operations that could require a
resync when doing a state change. See ##510354.
API: gst_message_new_structure_change()
API: gst_message_parse_structure_change()
2008-10-06 15:31:49 +00:00
Wim Taymans
11588b2db5 gst/gstquark.*: Add some more quarks for new message. See #510354.
Original commit message from CVS:
* gst/gstquark.c:
* gst/gstquark.h:
Add some more quarks for new message. See #510354.
2008-10-06 15:21:14 +00:00
Antoine Tremblay
db71547857 gst/gstpad.c: Fix small refount leak in caps compatibility check.
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
Original patch by : Simon Descaries
Fix small refount leak in caps compatibility check.
Fixes #551676.
2008-10-06 08:45:42 +00:00
Antoine Tremblay
607fd58a5e gst/gstelement.c: Avoid leaking the parent ref when we fail changing the state of the element using gst_element_sync_...
Original commit message from CVS:
Based on patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gstelement.c: (gst_element_sync_state_with_parent):
Avoid leaking the parent ref when we fail changing the state of the
element using gst_element_sync_state_with_parent(). Fixes #551978.
2008-09-14 22:01:30 +00:00
Tim-Philipp Müller
844b19464e gst/gsttaglist.h: Fix Since: markers for new geo tags.
Original commit message from CVS:
* gst/gsttaglist.h:
Fix Since: markers for new geo tags.
2008-09-03 05:52:40 +00:00
Stefan Kost
cf424d4c56 gst/gsttaglist.h: Fix actual tag name define after renaming from altitude to elevation.
Original commit message from CVS:
* gst/gsttaglist.h:
Fix actual tag name define after renaming from altitude to elevation.
2008-09-02 20:00:28 +00:00
Wim Taymans
7cf8be7fd8 gst/gstpad.c: Add fallback when calling the deprecated function on an element that implements the new internal_link h...
Original commit message from CVS:
* gst/gstpad.c: (add_unref_pad_to_list),
(gst_pad_get_internal_links_default):
Add fallback when calling the deprecated function on an element that
implements the new internal_link handler.
2008-09-01 14:05:45 +00:00
Stefan Kost
ce1f50ae11 Add new tags for geo location and clarify purpose of existing location tag. Fixes #481169
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsttaglist.c:
* gst/gsttaglist.h:
Add new tags for geo location and clarify purpose of existing location
tag. Fixes #481169
2008-09-01 13:35:32 +00:00
Olivier Crete
390369246e gst/gstpad.c: Use thread-safe internal links iterator. Fixes #549504.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/gstpad.c: (gst_pad_iterate_internal_links_default),
(gst_pad_event_default_dispatch), (gst_pad_dispatcher):
Use thread-safe internal links iterator. Fixes #549504.
2008-09-01 11:27:45 +00:00
Olivier Crete
68037404b8 Add threadsafe replacement functions for getting internal links of an element. Deprecate the old internal links funct...
Original commit message from CVS:
Based on patch by: Olivier Crete <tester at tester dot ca>
* docs/gst/gstreamer-sections.txt:
* win32/common/libgstreamer.def:
* gst/gstpad.c: (gst_pad_init),
(gst_pad_set_iterate_internal_links_function),
(int_link_iter_data_free), (iterate_pad),
(gst_pad_iterate_internal_links_default),
(gst_pad_iterate_internal_links), (gst_pad_get_internal_links):
* gst/gstpad.h:
Add threadsafe replacement functions for getting internal links of an
element. Deprecate the old internal links functions.
API:GstPad::gst_pad_set_iterate_internal_links_function()
API:GstPad::GstPadIterIntLinkFunction
API:GstPad::gst_pad_iterate_internal_links()
API:GstPad::gst_pad_iterate_internal_links_default()
* gst/gstghostpad.c: (gst_proxy_pad_do_iterate_internal_links),
(gst_proxy_pad_init):
Implement threadsafe internal links.
* tests/check/elements/tee.c: (GST_START_TEST), (tee_suite):
Unit test for internal links on tee. See #549504.
2008-09-01 10:42:04 +00:00
Edward Hervey
98354dc527 gst/gstpad.c: Die evil deadlock, die !
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_get_internal_links_default):
Die evil deadlock, die !
2008-08-30 12:07:41 +00:00
Edward Hervey
dd80b2030c Fix all leaks due to the bug in gst_pad_template_new() by which it does not steal the refcount of the given caps as s...
Original commit message from CVS:
* gst/gstutils.c: (gst_element_get_compatible_pad):
* tests/check/gst/gstghostpad.c: (GST_START_TEST):
* tests/check/gst/gstpad.c: (name_is_valid), (GST_START_TEST):
Fix all leaks due to the bug in gst_pad_template_new() by which it does
not steal the refcount of the given caps as stated.
REVERT THIS COMMIT ONCE FIXED !
REVERT THIS COMMIT ONCE FIXED !
REVERT THIS COMMIT ONCE FIXED !
REVERT THIS COMMIT ONCE FIXED !
REVERT THIS COMMIT ONCE FIXED !
REVERT THIS COMMIT ONCE FIXED !
2008-08-30 11:55:59 +00:00
Wim Taymans
e6da27eb3b gst/gstiterator.*: After 3 years it's about time to revise the documentation of the iterator objects.
Original commit message from CVS:
* gst/gstiterator.c:
* gst/gstiterator.h:
After 3 years it's about time to revise the documentation of the
iterator objects.
2008-08-29 17:58:25 +00:00
Wim Taymans
31aded4133 gst/gstpad.c: Make the internal links function less thread-unsafe and add some comments, dunno why.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_get_internal_links_default):
Make the internal links function less thread-unsafe and add some
comments, dunno why.
2008-08-29 16:10:56 +00:00
Tim-Philipp Müller
0609c4cabe gst/gst_private.h: Include gstinfo.h even if GST_DISABLE_GST_DEBUG is defined. Fixes build with --disable-gst-debug.
Original commit message from CVS:
* gst/gst_private.h:
Include gstinfo.h even if GST_DISABLE_GST_DEBUG is defined. Fixes
build with --disable-gst-debug.
2008-08-29 14:12:02 +00:00
David Schleef
7c90130407 gst/gstpadtemplate.c: Revert last change, since it breaks a few plugins, ffmpeg, alaw, and mulaw. Code is correct, b...
Original commit message from CVS:
* gst/gstpadtemplate.c: Revert last change, since it breaks
a few plugins, ffmpeg, alaw, and mulaw.  Code is correct,
but shouldn't be enabled until we've released fixed versions
of -good and -ffmpeg.
2008-08-29 00:34:58 +00:00
Stefan Kost
0dfab1544c gst/gstobject.c: Put the gst_object_get_name() back in.
Original commit message from CVS:
* gst/gstobject.c:
Put the gst_object_get_name() back in.
2008-08-28 20:12:54 +00:00
Stefan Kost
29f2239a89 gst/gstpadtemplate.c: The old behaviour was that gst_pad_template_new() takes ownership of the caps. As we now call g...
Original commit message from CVS:
* gst/gstpadtemplate.c:
The old behaviour was that gst_pad_template_new() takes ownership of
the caps. As we now call g_object_new() which calls g_object_set() and
which copies the caps, we have to unref them to not leak them. Fixes
make valgrid for me.
2008-08-28 12:32:19 +00:00
Stefan Kost
4eebee56fd gst/gsturi.c: Don't segfault on input like "tel:+1-123-555-1234".
Original commit message from CVS:
* gst/gsturi.c:
Don't segfault on input like "tel:+1-123-555-1234".
2008-08-28 10:45:04 +00:00
Stefan Kost
c17a8ce88a gst/gstobject.c: Due to popular request also include ObjectType in gst_object_get_path_string(). Makes gst-launch -v ...
Original commit message from CVS:
* gst/gstobject.c:
Due to popular request also include ObjectType in
gst_object_get_path_string(). Makes gst-launch -v bit more useful.
2008-08-27 07:18:37 +00:00
David Schleef
93f300823f gst/gstutils.c: Remove check in gst_pad_query_convert() that src_val must be positive, because that's not a requirement.
Original commit message from CVS:
* gst/gstutils.c: Remove check in gst_pad_query_convert() that
src_val must be positive, because that's not a requirement.
This causes problems with converting negative granulepos
values for Dirac.
* gst/gstquery.c: Same, gst_query_new_convert().
2008-08-27 03:04:23 +00:00
David Schleef
34087e8b17 gst/gstutils.c: Remove check in gst_pad_query_convert() that src_val must be positive, because that's not a requirement.
Original commit message from CVS:
* gst/gstutils.c: Remove check in gst_pad_query_convert() that
src_val must be positive, because that's not a requirement.
This causes problems with converting negative granulepos
values for Dirac.
2008-08-27 02:59:59 +00:00
Wim Taymans
207bbf4f14 gst/gstclock.c: Add some more debugging to the clock slaving code.
Original commit message from CVS:
* gst/gstclock.c: (gst_clock_add_observation):
Add some more debugging to the clock slaving code.
* win32/common/libgstbase.def:
Add new basetransform method.
2008-08-25 11:06:34 +00:00
Wim Taymans
f716d86e48 gst/gstbin.c: Take the (recursive) state lock between getting the locked state of an element and changing the element...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_element_set_state):
Take the (recursive) state lock between getting the locked state of an
element and changing the element state. This allows the application to
lock an element's state and then change its state without races.
2008-08-25 11:00:13 +00:00
Wim Taymans
a6b1feccd0 gst/gstbin.c: When an element is in the locked state we still want to update the base_time of the element.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_element_set_state):
When an element is in the locked state we still want to update the
base_time of the element.
2008-08-25 10:52:47 +00:00
Murray Cumming
976b9750ea gst/gstutils.c: Mention that this is just like gst_buffer_merge() but with extra unreffing for C coders. Advise langu...
Original commit message from CVS:
patch by: Murray Cumming <murrayc@murrayc.com>
* gst/gstutils.c:
Mention that this is just like gst_buffer_merge() but with extra
unreffing for C coders. Advise language bindings not to wrap it.
Fixes Bug #533856.
Also fix file comment.
2008-08-20 07:22:11 +00:00
Thijs Vermeir
05bfed2da8 gst/gstpad.h: Add doc
Original commit message from CVS:
* gst/gstpad.h:
Add doc
2008-08-14 20:05:33 +00:00
Stefan Kost
8713a8203b gst/: Remove double interface from doc-string.
Original commit message from CVS:
* gst/gstchildproxy.h:
* gst/gstpreset.h:
Remove double interface from doc-string.
2008-08-12 06:27:35 +00:00
Michael Smith
945bf1bdd3 gst/gstregistrybinary.c: Don't use g_mkstmp() on win32, it's unsafe if glib is using a different libc.
Original commit message from CVS:
* gst/gstregistrybinary.c:
Don't use g_mkstmp() on win32, it's unsafe if glib is using a different
libc.
Fixes #544776.
2008-08-11 19:04:04 +00:00
Stefan Kost
bdbd0bfac4 Document preset-iface vmethods.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstpreset.h:
Document preset-iface vmethods.
2008-08-11 08:06:20 +00:00
Frederic Crozat
f8cf146ed4 gst/gst.c: Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#5468...
Original commit message from CVS:
Patch by: Frederic Crozat <fcrozat@mandriva.org>
* gst/gst.c: (init_pre):
Make sure gettext returns translations in UTF-8 encoding rather
than in the current locale encoding (#546822).
2008-08-07 15:49:00 +00:00
Wim Taymans
b08cd83cbb gst/gstcaps.c: Fix subset test.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_structure_is_subset_field):
Fix subset test.
* tests/check/gst/gstcaps.c: (GST_START_TEST):
Improve unit test subset tests and add a testcase for the subset failure
cases.
* tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
Improve subtraction unit test.
2008-08-07 12:28:28 +00:00
Wim Taymans
c82ad04dd4 gst/gstpad.h: Clarify the docs a bit more.
Original commit message from CVS:
* gst/gstpad.h:
Clarify the docs a bit more.
2008-08-05 16:50:27 +00:00
Olivier Crete
70a4cad10c gst/gststructure.c: Avoid overflows in fixation code when dealing with MAXINT values, which v4l2src seems to do.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/gststructure.c:
(gst_structure_fixate_field_nearest_fraction):
Avoid overflows in fixation code when dealing with MAXINT values, which
v4l2src seems to do.
Fixes #546328.
* tests/check/gst/gststructure.c: (GST_START_TEST):
Make a unit test to check the fix.
2008-08-05 15:03:27 +00:00
Wim Taymans
5665680537 gst/gstbin.c: Fix race for bins that simulate ASYNC state changes by inserting
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
(gst_bin_change_state_func), (bin_handle_async_done),
(gst_bin_handle_message_func):
Fix race for bins that simulate ASYNC state changes by inserting
ASYNC_START and ASYNC_DONE messages in their bus. We need to check for
pending ASYNC messages even when the bin does not have ASYNC children.
We note detect this behaviour because we will receive an ASYNC message
that is originating from the bin itself.
Fixes races with decodebin2 state changes.
* tests/check/gst/gstbin.c: (GST_START_TEST):
Add some more debug.
2008-08-04 15:49:13 +00:00
Tim-Philipp Müller
6d0ca73fea gst/gsttaglist.c: Fix typo.
Original commit message from CVS:
* gst/gsttaglist.c: (_gst_tag_initialize):
Fix typo.
2008-08-04 13:01:35 +00:00
Stefan Kost
909a7d2de7 gst/gsttaglist.c: Argh. actually save the text before committing. Now adds gst_tag_merge_strings_with_comma() to gst_...
Original commit message from CVS:
* gst/gsttaglist.c:
Argh. actually save the text before committing. Now adds
gst_tag_merge_strings_with_comma() to gst_tag_register().
2008-08-04 12:46:23 +00:00
Stefan Kost
8e729fc6a2 gst/gsttaglist.*: Do as tim pointed out and actually register the new tag. Also improve te docs and use gst_tag_merge...
Original commit message from CVS:
* gst/gsttaglist.c:
* gst/gsttaglist.h:
Do as tim pointed out and actually register the new tag. Also improve
te docs and use gst_tag_merge_strings_with_comma() method to allow
retriving all keywords merged in one list.
2008-08-04 12:30:26 +00:00
Stefan Kost
6cf55f54e3 Add new taglist item GST_TAG_KEYWORDS, needed for #520694 .
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsttaglist.h:
Add new taglist item GST_TAG_KEYWORDS, needed for #520694 .
2008-08-01 11:34:06 +00:00
Tim-Philipp Müller
2fd47ae874 gst/gstpadtemplate.c: Add "name-template", "direction", "presence" and "caps" properties, so that gst_pad_template_ne...
Original commit message from CVS:
* gst/gstpadtemplate.c:
(gst_pad_template_class_init), (gst_static_pad_template_get),
(gst_pad_template_new), (gst_pad_template_pad_created),
(gst_pad_template_set_property), (gst_pad_template_get_property):
Add "name-template", "direction", "presence" and "caps" properties,
so that gst_pad_template_new() is just a thin wrapper around
g_object_new(), which is better for bindings. (Fixes: #539772)
2008-08-01 10:02:49 +00:00
Michael Smith
26b51b2d9c gst/gsturi.c: Be more liberal in what URIs we accept.
Original commit message from CVS:
* gst/gsturi.c:
Be more liberal in what URIs we accept.
Do not unescape bits of the URI for no apparent reason before passing to
the element. Fixes #545352.
2008-07-31 17:16:50 +00:00
Robert Schwebel
1695ddb9dd gst/gst.c: Include gstconfig.h as macros from it are used. Fixes bug #545607.
Original commit message from CVS:
Patch by: Robert Schwebel <r.schwebel@pengutronix.de>
* gst/gst.c:
Include gstconfig.h as macros from it are used. Fixes bug #545607.
2008-07-31 15:24:21 +00:00
Sebastian Dröge
4bfb1fe70c Remove GST_DISABLE_(ENUMTYPES|INDEX|URI) everywhere.
Original commit message from CVS:
* configure.ac:
* docs/gst/gstreamer-sections.txt:
* docs/gst/gstreamer.types:
* docs/gst/gstreamer.types.in:
* gst/Makefile.am:
* gst/gst.c:
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func):
* gst/gstconfig.h.in:
* gst/gstelement.c: (gst_element_get_index):
* gst/gstregistrybinary.c: (gst_registry_binary_save_feature),
(gst_registry_binary_load_feature),
(gst_registry_binary_read_cache):
* gst/gstregistryxml.c: (load_feature),
(gst_registry_xml_read_cache), (gst_registry_xml_save_feature):
* plugins/Makefile.am:
* tools/gst-indent:
* tools/gst-inspect.c: (print_index_info), (print_element_list),
(print_plugin_features), (print_element_features):
* tools/gst-xmlinspect.c: (print_event_masks),
(print_element_info):
* win32/common/gstconfig.h:
Remove GST_DISABLE_(ENUMTYPES|INDEX|URI) everywhere.
Disabling the indexers and URI handler code will only reduce the
required amount of memory by a very small amount but on the other hand
requires much more maintaince work. Apart from that many places of
code are broken when disabling them.
Disabling the enum types doesn't reduce the required amount of memory
by more than a few bytes and makes it hard to fix bugs like #539772,
i.e. use the enums as GObject properties.
2008-07-31 15:20:32 +00:00
Wim Taymans
48336614c0 gst/gstpad.c: Remove silly redundant debug.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_acceptcaps_default),
(gst_pad_configure_src), (gst_pad_alloc_buffer_full):
Remove silly redundant debug.
Add some more debug info.
Clarify the docs regarding new caps received from pad_alloc.
2008-07-31 12:50:52 +00:00
Tim-Philipp Müller
20d11b6fe0 gst/gstpad.c: Only sanity-check the buffer size if requested_caps == buffer_caps (ie. don't take pad caps into accoun...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_alloc_buffer_full):
Only sanity-check the buffer size if requested_caps == buffer_caps
(ie. don't take pad caps into account, they're not relevant here)
2008-07-29 15:32:11 +00:00
Thijs Vermeir
3a2d9fd0bc gst/gstelement.h: Fix link in documentation.
Original commit message from CVS:
* gst/gstelement.h:
Fix link in documentation.
2008-07-25 10:24:43 +00:00
Thijs Vermeir
37498e01bb gst/gstmessage.c: Fix confusing documentation.
Original commit message from CVS:
* gst/gstmessage.c:
Fix confusing documentation.
2008-07-24 17:38:43 +00:00
Michael Smith
5b9b2e7779 configure.ac: Remove AC_ISC_POSIX macro; it's broken on some platforms and not needed.
Original commit message from CVS:
* configure.ac:
Remove AC_ISC_POSIX macro; it's broken on some platforms and not needed.
Add check (taken from -base) for winsock, adds WIN32_LIBS
* gst/Makefile.am:
Add WIN32_LIBS to LIBADD for libgstreamer. Needed now that gstpoll uses
winsock.
Define GST_EXPORTS when building libgstreamer (only used on win32)
* gst/gst_private.h:
* gst/gstinfo.h:
Use GST_EXPORT instead of locally-defined (and incorrect IMPORT_SYMBOL)
for symbols that we need to export in both these files.
* gst/gstpoll.c:
Include gst_private.h higher up to avoid some compile problems on win32.
2008-07-22 18:12:54 +00:00
Sebastian Dröge
14983d1810 gst/gstvalue.c: Fix typos.
Original commit message from CVS:
* gst/gstvalue.c:
Fix typos.
2008-07-22 09:24:37 +00:00
Thijs Vermeir
cdb1ea97cc gst/gstcaps.c: Previous commit was wrong NULL caps does not exist and indicate an error, so also add a FIXME to gst_c...
Original commit message from CVS:
* gst/gstcaps.c:
Previous commit was wrong NULL caps does not exist
and indicate an error, so also add a FIXME to
gst_caps_is_equal where NULL caps are accepted.
2008-07-22 00:29:55 +00:00
Thijs Vermeir
6f1ab17974 gst/gstcaps.c: Allow passing of NULL to gst_caps_union
Original commit message from CVS:
* gst/gstcaps.c:
Allow passing of NULL to gst_caps_union
2008-07-21 23:02:40 +00:00
Thijs Vermeir
39ab4627e2 gst/gstghostpad.c: Add in doc that gst_ghost_pad_set_target can accept
Original commit message from CVS:
* gst/gstghostpad.c:
Add in doc that gst_ghost_pad_set_target can accept
NULL to clear target
2008-07-21 21:32:06 +00:00
Michael Smith
72e0b732f6 gst/: GstRegistryPool doesn't exist; don't refer to it in docs.
Original commit message from CVS:
* gst/gstplugin.c:
* gst/gstregistry.c:
GstRegistryPool doesn't exist; don't refer to it in docs.
Don't refer to functions that don't exist in docs, it's
unhelpful.
2008-07-15 22:53:00 +00:00
Sebastian Dröge
d434f41f85 gst/gst.c: Fix scanning of paths given via --gst-plugin-path. Fixes bug #542175.
Original commit message from CVS:
* gst/gst.c:
Fix scanning of paths given via --gst-plugin-path. Fixes bug #542175.
2008-07-12 17:51:16 +00:00
Stefan Kost
89d827dac8 gst/gstdebugutils.c: Squeeze ghost-pad links and remove <> from classname labels to save more horizontal space.
Original commit message from CVS:
* gst/gstdebugutils.c:
Squeeze ghost-pad links and remove <> from classname labels to save
more horizontal space.
2008-07-12 09:59:32 +00:00
Stefan Kost
a7c2db4aae gst/gstdebugutils.c: Give request and sometimes pads a different shpe style. Condense the graphs a little more.
Original commit message from CVS:
* gst/gstdebugutils.c:
Give request and sometimes pads a different shpe style. Condense the
graphs a little more.
2008-07-11 19:30:48 +00:00
Sebastian Dröge
e4b764d97f gst/gstchildproxy.c: Add FIXMEs for 0.11 to use GST_TYPE_OBJECT in the signature of the the child-added / -removed si...
Original commit message from CVS:
* gst/gstchildproxy.c: (gst_child_proxy_base_init):
Add FIXMEs for 0.11 to use GST_TYPE_OBJECT in the signature
of the the child-added / -removed signals as GstChildProxy
only supports GstObjects.
2008-07-08 09:04:25 +00:00
Thijs Vermeir
f9da89f5c3 gst/gstdebugutils.c: Fix memleak
Original commit message from CVS:
* gst/gstdebugutils.c:
Fix memleak
2008-07-07 11:01:26 +00:00
Alessandro Decina
78734e4584 gst/gstpoll.c: Fix "ignored return value" compiler warning with newer glibc.
Original commit message from CVS:
Patch by: Alessandro Decina <alessandro at nnva dot org>
* gst/gstpoll.c:
Fix "ignored return value" compiler warning with newer glibc.
2008-07-06 12:49:43 +00:00
Sebastian Dröge
36d76ce51c gst/gstchildproxy.c: Fix copy&paste error in gst_child_proxy_removed() documentation.
Original commit message from CVS:
* gst/gstchildproxy.c:
Fix copy&paste error in gst_child_proxy_removed() documentation.
2008-07-05 16:28:28 +00:00
Tim-Philipp Müller
944de3aa68 gst/gstplugin.c: Print error debug message if plugin description fields that should be set are NULL.
Original commit message from CVS:
* gst/gstplugin.c: (CHECK_PLUGIN_DESC_FIELD), (gst_plugin_load_file):
Print error debug message if plugin description fields that should
be set are NULL.
* gst/gstregistrybinary.c: (gst_registry_binary_save_const_string):
Don't crash if the string to serialise is NULL (it really should
not be, but apparently this used to work with the xml registry ...).
2008-07-02 14:43:40 +00:00
Stefan Kost
f2da156af7 gst/gstevent.c: Use gst_format_get_name() to improve debug output.
Original commit message from CVS:
* gst/gstevent.c:
Use gst_format_get_name() to improve debug output.
* gst/gstpreset.c:
Remove #ifdef'ed code. Add TODO comment.
* gst/gstsegment.c:
Add debug output to ease spotting format != segment.format assertions.
2008-07-01 05:53:32 +00:00
Tim-Philipp Müller
890dd8b468 gst/gstdebugutils.h: Add missing Since' markers to gtk-doc blurbs.
Original commit message from CVS:
* gst/gstdebugutils.h: (GstDebugGraphDetails),
(GST_DEBUG_BIN_TO_DOT_FILE):
Add missing Since' markers to gtk-doc blurbs.
2008-06-26 12:24:08 +00:00
Wim Taymans
5335a8b34b gst/gstbin.c: Only care about latency min and max when the sink is actually a live sink.
Original commit message from CVS:
* gst/gstbin.c: (bin_query_latency_fold):
Only care about latency min and max when the sink is actually a live
sink.
2008-06-25 11:50:06 +00:00
Thomas Vander Stichele
def24f00ef Don't assume that <valgrind/valgrind.h> exists just because the binary is there.
Original commit message from CVS:
* configure.ac:
* gst/gstinfo.c:
Don't assume that <valgrind/valgrind.h> exists just because
the binary is there.
2008-06-20 15:54:43 +00:00
Tim-Philipp Müller
1487b50720 gst/gstbus.c: Make it known that gst_bus_poll() is pure evil (fixes #538810).
Original commit message from CVS:
* gst/gstbus.c:
Make it known that gst_bus_poll() is pure evil (fixes #538810).
2008-06-20 10:20:08 +00:00
Sebastian Dröge
3ee5b33c7e API: Add GST_TAG_ATTACHMENT for generic file attachments to streams.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsttaglist.c: (_gst_tag_initialize):
* gst/gsttaglist.h:
API: Add GST_TAG_ATTACHMENT for generic file attachments to streams.
Fixes bug #538568.
2008-06-20 08:39:54 +00:00
David Schleef
eaeb1a3434 Rename DATADIR to GST_DATADIR to avoid build problems
Original commit message from CVS:
* configure.ac:
* gst/gstpreset.c:
Rename DATADIR to GST_DATADIR to avoid build problems
on win32. Patch By: David Schleef <ds@schleef.org>
Fixes: #536857
2008-06-11 20:07:31 +00:00
Tim-Philipp Müller
fb6210aa9a gst/gsterror.c: Fix typo (spotted by Fabricio Godoy, #536723).
Original commit message from CVS:
* gst/gsterror.c: (_gst_stream_errors_init):
Fix typo (spotted by Fabricio Godoy, #536723).
2008-06-05 08:55:41 +00:00
Wim Taymans
0fff6fa810 gst/gstevent.c: Add some assert and docs for invalid input to the qos function.
Original commit message from CVS:
* gst/gstevent.c: (gst_event_new_qos):
Add some assert and docs for invalid input to the qos function.
2008-06-04 11:31:15 +00:00
Rob Bradford
9f9422bcb3 gst/gstregistry.c: Don't recurse into .debug directories as some distros install the debugging symbols next to the pl...
Original commit message from CVS:
Patch by: Rob Bradford <rob at robster dot org dot uk>
* gst/gstregistry.c: (gst_registry_scan_path_level):
Don't recurse into .debug directories as some distros install
the debugging symbols next to the plugins in .debug directories
and dlopen() crashes on them sometimes. Fixes bug #508070.
Add FIXME for 0.11 to not recurse into directories at all because
it's very inconsistent to the behaviour of other PATH environment
variables.
2008-05-30 07:36:17 +00:00
Sebastian Dröge
3edb63d2ed gst/gstelement.*: Deprecated gst_element_get_pad() as it can't be used sanely. It's not clear of the reference to the...
Original commit message from CVS:
* gst/gstelement.c:
* gst/gstelement.h:
Deprecated gst_element_get_pad() as it can't be used sanely. It's not
clear of the reference to the resulting pad must be released later
or not, resulting in possible leaks. Fixes bug #533865.
2008-05-29 07:19:47 +00:00
José Alburquerque
dc902554fa gst/gstelementfactory.c: Small doc fix. Fixes #535285.
Original commit message from CVS:
Patch by: José Alburquerque <jaalburqu at svn dot gnome dot org>
* gst/gstelementfactory.c:
Small doc fix. Fixes #535285.
2008-05-28 16:46:07 +00:00
Sebastian Dröge
a31349a80e gst/gstiterator.c: Remove an unused field from the private GstListIterator struct.
Original commit message from CVS:
* gst/gstiterator.c:
Remove an unused field from the private GstListIterator struct.
2008-05-28 07:47:22 +00:00
Tim-Philipp Müller
d27de4372e gst/gstpreset.c: Add Since: markers to docs blurbs.
Original commit message from CVS:
* gst/gstpreset.c: (gst_preset_default_get_meta),
(gst_preset_get_preset_names), (gst_preset_get_property_names),
(gst_preset_load_preset), (gst_preset_save_preset),
(gst_preset_rename_preset), (gst_preset_delete_preset),
(gst_preset_set_meta):
Add Since: markers to docs blurbs.
* win32/common/libgstreamer.def:
Add recently-added API.
2008-05-27 16:37:32 +00:00
Stefan Kost
bedb591973 configure.ac: Add DATADIR for storing presets.
Original commit message from CVS:
Patch by: Stefan Kost  <ensonic@users.sf.net>
* configure.ac:
Add DATADIR for storing presets.
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* docs/gst/gstreamer.types.in:
Add GstPreset to docs.
* gst/Makefile.am:
* gst/gst.h:
* gst/gstpreset.c: (preset_get_paths), (preset_skip_property),
(preset_open_and_parse_header), (preset_parse_version),
(preset_merge), (preset_get_keyfile),
(gst_preset_default_get_preset_names),
(gst_preset_default_get_property_names),
(gst_preset_default_load_preset),
(gst_preset_default_save_presets_file),
(gst_preset_default_save_preset),
(gst_preset_default_rename_preset),
(gst_preset_default_delete_preset), (gst_preset_default_set_meta),
(gst_preset_default_get_meta), (gst_preset_default_randomize),
(gst_preset_default_reset), (gst_preset_get_preset_names),
(gst_preset_get_property_names), (gst_preset_load_preset),
(gst_preset_save_preset), (gst_preset_rename_preset),
(gst_preset_delete_preset), (gst_preset_set_meta),
(gst_preset_get_meta), (gst_preset_class_init),
(gst_preset_base_init), (gst_preset_get_type):
* gst/gstpreset.h:
Add GstPreset to core. Fixes #396779
* tests/check/Makefile.am:
* tests/check/gst/gstpreset.c: (gst_preset_test_get_property),
(gst_preset_test_set_property), (gst_preset_test_class_init),
(gst_preset_test_base_init), (gst_preset_test_get_type),
(gst_preset_test_plugin_init), (GST_START_TEST),
(remove_preset_file), (test_setup), (test_teardown),
(gst_preset_suite):
Add GstPreset unit tests.
2008-05-27 15:11:35 +00:00
Wim Taymans
e84afb820d gst/gstpad.c: The default event function on a sinkpad should return TRUE when there are no internal links but should ...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_event_default_dispatch):
The default event function on a sinkpad should return TRUE when
there are no internal links but should collect the return values from
the internal links otherwise.
2008-05-27 10:59:38 +00:00
Tim-Philipp Müller
b05a18fcfc API: add gst_bin_find_unlinked_pad()
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstutils.c: (element_find_unlinked_pad),
(gst_bin_find_unlinked_pad), (gst_bin_find_unconnected_pad),
* gst/gstutils.h:
API: add gst_bin_find_unlinked_pad()
API: deprecate gst_bin_find_unconnected_pad() (#401456)
2008-05-27 10:50:49 +00:00
Peter Kjellerstedt
ef258c2290 gst/: Fixed a bunch of typos.
Original commit message from CVS:
* gst/gstclock.c:
* gst/gstclock.h:
* gst/gsttask.c:
* gst/gsttask.h:
Fixed a bunch of typos.
2008-05-26 10:07:09 +00:00
Tim-Philipp Müller
aed9ed88ac gst/: 'unconnected pad' -> 'unlinked pad' for consistency (#401456).
Original commit message from CVS:
* gst/gstpad.h:
* gst/gstutils.c: (gst_element_unlink), (element_find_unlinked_pad),
(gst_bin_find_unconnected_pad), (gst_parse_bin_from_description),
(gst_parse_bin_from_description_full):
* gst/gstutils.h:
'unconnected pad' -> 'unlinked pad' for consistency (#401456).
2008-05-25 16:34:32 +00:00
Tim-Philipp Müller
2a1af2c947 gst/gstevent.h: Clarify docs for GST_SEEK_TYPE_CUR (#534505).
Original commit message from CVS:
* gst/gstevent.h:
Clarify docs for GST_SEEK_TYPE_CUR (#534505).
2008-05-25 14:44:44 +00:00