Commit graph

3794 commits

Author SHA1 Message Date
Tim-Philipp Müller
702fbf77e9 API: add gst_update_registry() (#391296).
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gst.c: (load_plugin_func), (scan_and_update_registry),
(init_post), (gst_deinit), (gst_update_registry):
* gst/gst.h:
API: add gst_update_registry() (#391296).
* tests/check/Makefile.am:
* tests/check/gst/gstregistry.c:
* tests/check/gst/.cvsignore:
Simple unit test for the above.
2007-01-08 20:30:12 +00:00
Tim-Philipp Müller
2991d5cd33 gst/gstregistry.c: Plugin extension on HP-UX is .sl, add that to the list of approved plugin extensions (see #393796).
Original commit message from CVS:
* gst/gstregistry.c: (gst_registry_scan_path_level):
Plugin extension on HP-UX is .sl, add that to the list of approved
plugin extensions (see #393796).
* tests/check/gst/gstpad.c: (GST_START_TEST):
ulong => gulong. Fixes compilation with HP-UX compiler.
* tests/check/pipelines/parse-launch.c: (GST_START_TEST):
Fix compilation if valgrind headers are not available.
2007-01-08 16:23:03 +00:00
Andy Wingo
77472ddbd7 gst/gstpad.c (gst_pad_get_range, gst_pad_pull_range): Set caps on the pads if necessary, as in push()/chain(). Update...
Original commit message from CVS:
2007-01-06  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_get_range, gst_pad_pull_range): Set caps
on the pads if necessary, as in push()/chain(). Update docs.
Shouldn't affect existing pull() usage as it is currently only
being used on buffers without caps.
2007-01-06 17:09:10 +00:00
Tim-Philipp Müller
3001f88c3c gst/gst.c: Call g_thread_init() first thing in gst_init() / gst_check_init().
Original commit message from CVS:
* gst/gst.c: (gst_init_get_option_group), (gst_init_check),
(init_pre):
Call g_thread_init() first thing in gst_init() / gst_check_init().
When initialisation is done via gst_init_get_option_group() and
GOption parsing, issue a warning if the GLib thread system has not
been initialised yet by the time gst_init_get_option_group() is
called, as it's quite likely other GLib functions such as
g_option_context_new() have been called already then, and
g_thread_init() must be called before any other GLib function. The
application in question must be fixed in that case, since memory
corruption might happen otherwise.
We issue the warning because even if the GLib folks decide to work
around the problem on their end in future, this is still an issue
with all GLib versions >= 2.10.0, so we should warn until we depend
on a GLib version we know to be safe.
Update documentation as well.
Closes bug #391278.
2007-01-05 16:36:36 +00:00
Vincent Torri
47d2b0a976 gst/: On win32, all the __declspec stuff for symbol exporting is apparently only needed with MSVC, but doesn't work w...
Original commit message from CVS:
Patch by: Vincent Torri  <vtorri at univ-evry dot fr>
* gst/gst_private.h:
* gst/gstconfig.h.in:
* gst/gstinfo.h:
On win32, all the __declspec stuff for symbol exporting is
apparently only needed with MSVC, but doesn't work with MingW.
Fixes compilation with MingW and #391909.
2007-01-05 13:23:02 +00:00
Thomas Vander Stichele
c254a2345b tell us what's not implemented
Original commit message from CVS:
tell us what's not implemented
2007-01-02 09:31:45 +00:00
David Schleef
b7e4487952 gst/gstplugin.c: Restore the previous signal handler for SIGSEGV instead of setting to default, since we may have sto...
Original commit message from CVS:
* gst/gstplugin.c:
Restore the previous signal handler for SIGSEGV instead of
setting to default, since we may have stolen it away from
someone.  (i.e., Mono)
2007-01-02 06:14:06 +00:00
Tim-Philipp Müller
5c3731ea37 gst/gstregistryxml.c: Make sure we don't pass non-UTF-8 strings to g_markup_escape(), since that can lead to random m...
Original commit message from CVS:
* gst/gstregistryxml.c: (gst_registry_save_escaped):
Make sure we don't pass non-UTF-8 strings to g_markup_escape(),
since that can lead to random memory corruptions and crashes
(may or may not be related to #383244, #386711, and #386711).
2006-12-26 15:06:52 +00:00
Stefan Kost
261abbb01e docs/design/part-states.txt: two tiny additional comments
Original commit message from CVS:
* docs/design/part-states.txt:
two tiny additional comments
* gst/gststructure.c:
doc fixing
* tests/check/Makefile.am:
* tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
(GST_START_TEST):
disable test for now, unless it gets fixed
2006-12-21 15:00:08 +00:00
Edward Hervey
f65a1d384e gst/gstsegment.c: Fine tune the cases where the segment start/stop values are really updated.
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_set_seek):
Fine tune the cases where the segment start/stop values are really
updated.
* tests/check/gst/gstsegment.c: (GST_START_TEST):
Add tests for the return values of gst_segment_set_seek().
2006-12-19 12:38:00 +00:00
Tim-Philipp Müller
54cf7775fb gst/gst.c: Docs typo fix.
Original commit message from CVS:
* gst/gst.c:
Docs typo fix.
* plugins/elements/gstqueue.c: (gst_queue_class_init),
(gst_queue_init):
Fix incorrect documentation and flesh it out a bit more.
Set default values for the max properties on the GParamSpec as well,
so it shows up correctly in gst-inspect.
2006-12-19 11:04:49 +00:00
Wim Taymans
1affbe8e9f gst/: Set pads to FLUSHING when they are created. Check, warn and fix when a demuxer adds an inactive pad to itself w...
Original commit message from CVS:
* gst/gstelement.c: (gst_element_add_pad):
* gst/gstghostpad.c: (gst_ghost_pad_new_full):
* gst/gstpad.c: (gst_pad_init):
Set pads to FLUSHING when they are created. Check, warn and fix when a
demuxer adds an inactive pad to itself when running. Fixes #339326.
2006-12-15 16:01:58 +00:00
Wim Taymans
0ad3d72cf5 gst/gstelement.c: Expose default element send_event and query handling as vmethods that subclasses can chain up to.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_class_init),
(gst_element_default_send_event), (gst_element_send_event),
(gst_element_default_query), (gst_element_query):
Expose default element send_event and query handling as vmethods that
subclasses can chain up to.
2006-12-15 15:49:29 +00:00
Wim Taymans
06651f5547 gst/gstelement.c: Small documentation fixes.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_set_state_func):
Small documentation fixes.
2006-12-15 15:39:28 +00:00
Tim-Philipp Müller
780a884ee7 gst/gst.c: init_pre() and init_post() might be called via our GOptionGroup or from gst_init(), and we should skip bot...
Original commit message from CVS:
* gst/gst.c: (init_pre), (init_post):
init_pre() and init_post() might be called via our GOptionGroup or
from gst_init(), and we should skip both of them if we've already
been initialised, otherwise we will init some things twice or add
two default log functions.
2006-12-14 14:06:38 +00:00
Tim-Philipp Müller
c8fcab5cf5 gst/gstghostpad.c: Log ghostpad debug stuff to the GST_PADS category as well rather than just to the default category.
Original commit message from CVS:
* gst/gstghostpad.c:
Log ghostpad debug stuff to the GST_PADS category as well rather
than just to the default category.
2006-12-13 11:05:20 +00:00
Tim-Philipp Müller
6043da0aca Add some basic system details such as OS and architecture to the debug output if possible, courtesy of uname().
Original commit message from CVS:
* configure.ac:
* gst/gst.c: (init_pre):
Add some basic system details such as OS and architecture
to the debug output if possible, courtesy of uname().
2006-12-12 13:53:04 +00:00
Jan Schmidt
0a5e6e1132 gst/gst.c: Ignore EINTR when reading from the child registry pipe.
Original commit message from CVS:
* gst/gst.c: (ensure_current_registry_forking):
Ignore EINTR when reading from the child registry pipe.
Explicitly ignore the return value from close, since it makes no
difference.
* gst/gstminiobject.c: (gst_mini_object_ref),
(gst_mini_object_unref):
When debugging refcounts, check GST_IS_MINI_OBJECT and warn.
* gst/gstregistry.c: (_priv_gst_registry_remove_cache_plugins):
When removing cached plugins, remove their features too, so they're
not visible after they've disappeared.
* gst/gstutils.c: (prepare_link_maybe_ghosting):
In the unlikely case that we are linking pads with no parents, don't
crash trying to get the non-existent parent bin.
* gst/parse/grammar.y:
Output debug in the PIPELINE category
2006-12-09 18:48:57 +00:00
René Stadler
f26e917bc3 gst/gstclock.c: Reject invalid clock times for interval of periodic ids.
Original commit message from CVS:
Patch by: René Stadler <mail at renestadler dot de>
* gst/gstclock.c: (gst_clock_new_periodic_id):
Reject invalid clock times for interval of periodic ids.
Fixes ##383506.
2006-12-08 16:12:44 +00:00
Jan Schmidt
1cca54b44c Fix refcounting of gst_plugin_feature_load to match the docs.
Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_factory_create):
* gst/gstpluginfeature.c: (gst_plugin_feature_load):
* gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
* tools/gst-inspect.c: (print_element_info):
Fix refcounting of gst_plugin_feature_load to match the docs.
Fixes: #380129
2006-12-07 12:11:14 +00:00
René Stadler
a258e87342 gst/gstclock.c: Make period ids add the interval to the origial requested time instead of the possibly updated time w...
Original commit message from CVS:
Patch by: René Stadler <mail at renestadler dot de>
* gst/gstclock.c: (gst_clock_id_wait):
Make period ids add the interval to the origial requested time instead
of the possibly updated time which can be wrong when there are multiple
waiters for the same id. Fixes #382592.
* gst/gstsystemclock.c: (gst_system_clock_async_thread),
(gst_system_clock_id_wait_jitter_unlocked),
(gst_system_clock_id_wait_jitter):
Fix restart in the async notify thread when an async entry is added to
the front of the list. Fixes #381492.
* tests/check/gst/gstsystemclock.c: (store_callback),
(notify_callback), (GST_START_TEST), (gst_systemclock_suite):
Added test for multiple async waits.
Added test for async wait order.
2006-12-07 10:51:36 +00:00
Wim Taymans
57667ddd07 gst/gstbin.c: Add some more docs about the POSITION query.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_query):
Add some more docs about the POSITION query.
2006-12-07 10:02:19 +00:00
Jan Schmidt
79703a24e6 gst/gstvalue.c: If someone is foolish enough to compare 2 fractions with denominator = 0, return UNORDERED rather tha...
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_compare_fraction):
If someone is foolish enough to compare 2 fractions with denominator =
0, return UNORDERED rather than aborting.
2006-11-29 16:39:32 +00:00
Wim Taymans
f830f6f4ac gst/gstsegment.c: Fix boundary checking in to_running_time() and to_stream_time().
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_set_seek),
(gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
(gst_segment_to_running_time):
Fix boundary checking in to_running_time() and to_stream_time().
Fixes #377183.
* tests/check/gst/gstsegment.c: (GST_START_TEST):
stream and running time can now be calculated for the complete
clipped segment.
2006-11-20 10:27:49 +00:00
Tim-Philipp Müller
c0ce620980 gst/gstpad.c: Can't access event structure after giving away ownership of the event.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_push_event):
Can't access event structure after giving away ownership of
the event.
2006-11-15 17:38:13 +00:00
Mark Nauwelaerts
47976eb0c2 gst/gstpad.c: Fix documentation for gst_pad_dispatcher. Fixes #374475.
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet dot be>
* gst/gstpad.c:
Fix documentation for gst_pad_dispatcher. Fixes #374475.
2006-11-13 18:03:35 +00:00
Tim-Philipp Müller
bf22daa437 Use g_strerror() instead of strerror() - we want UTF-8.
Original commit message from CVS:
* gst/gstplugin.c: (gst_plugin_load_file):
* plugins/elements/gstfilesrc.c: (gst_mmap_buffer_finalize),
(gst_file_src_map_region), (gst_file_src_start):
* plugins/indexers/gstfileindex.c: (gst_file_index_load),
(gst_file_index_commit):
Use g_strerror() instead of strerror() - we want UTF-8.
2006-11-06 17:53:24 +00:00
Stefan Kost
d6c257363b gst/gstpad.c: Enhance debug and improve docs
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_event_default_dispatch),
(gst_pad_push_event):
Enhance debug and improve docs
* gst/gsturi.c:
Fix docs
2006-11-06 15:18:57 +00:00
Stefan Kost
894b7f9f4a docs/gst/gstreamer-sections.txt: add new API and fix the build
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
add new API and fix the build
* gst/gstbin.c: (gst_bin_recalc_state):
* gst/gstelement.c: (gst_element_message_full),
(gst_element_get_state_func), (gst_element_set_state_func):
use new API and improve logging
* gst/gstutils.c: (gst_element_state_change_return_get_name):
* gst/gstutils.h:
API: add function to get StateChangereturn names to improve logs
2006-11-06 15:14:46 +00:00
Mark Nauwelaerts
6e0416787d gst/gstpad.c: Some small cleanups. Improve debugging.
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet dot be>
* gst/gstpad.c: (gst_pad_init), (pre_activate),
(gst_pad_set_blocked_async), (gst_pad_acceptcaps_default),
(gst_pad_accept_caps), (handle_pad_block), (gst_pad_push_event):
Some small cleanups. Improve debugging.
* gst/gstpad.h:
Signal all waiting threads with a broadcast instead of just one.
Fixes #369942.
2006-11-03 13:57:28 +00:00
gorshkov
656c529833 gst/gstinfo.h: _declspec should be __declspec (two underscores, not one). Fixes 366572.
Original commit message from CVS:
Patch by: gorshkov <gorshkov at oghma dot on dot ca>
* gst/gstinfo.h:
_declspec should be __declspec (two underscores, not one). Fixes 366572.
2006-10-30 07:51:13 +00:00
Kjartan Maraas
fcfb59afb1 Typo fixes (#366212).
Original commit message from CVS:
Patch by: Kjartan Maraas  <kmaraas at gnome org>
* docs/design/part-MT-refcounting.txt:
* docs/random/wtay/capsnego2-docs:
* gst/gstclock.c:
* gst/gstxml.c:
Typo fixes (#366212).
2006-10-28 15:42:29 +00:00
Sergey Scobich
f4f604b7b1 Add needed entries in .def files.
Original commit message from CVS:
Patch by: Sergey Scobich <sergey dot scobich at gmail dot com>
* gst/gst.c:
* win32/common/libgstbase.def:
* win32/common/libgstreamer.def:
* win32/vs8/libgstbase.vcproj:
* win32/vs8/libgstcontroller.vcproj:
Add needed entries in .def files.
Use HAVE_UNISTD_H.
Rearrange def files in vs8 solutions. Fixes #366286.
2006-10-28 15:10:26 +00:00
Wim Taymans
6dc97edc2f gst/gstghostpad.c: Make acceptcaps return TRUE when we don't have a target, just like setcaps does.
Original commit message from CVS:
* gst/gstghostpad.c: (gst_proxy_pad_do_acceptcaps),
(gst_ghost_pad_new_full):
Make acceptcaps return TRUE when we don't have a target, just like
setcaps does.
2006-10-27 16:31:15 +00:00
Tim-Philipp Müller
c7fc3dc0e8 gst/gststructure.c: If someone tries to set a non-UTF8 string field on a structure, don't just print a warning, but a...
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_id_set_value):
If someone tries to set a non-UTF8 string field on a structure,
don't just print a warning, but also ignore the request and do
not change/add that field to the structure.
* tests/check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
Test for the above.
2006-10-26 08:49:52 +00:00
David Schleef
bc18910072 gst/gstinfo.c: g_hash_table_insert() needs a cast to a non-const pointer duh.
Original commit message from CVS:
* gst/gstinfo.c:
g_hash_table_insert() needs a cast to a non-const pointer duh.
2006-10-26 00:00:34 +00:00
David Schleef
504274019d gst/gstinfo.*: Change name parameter of _gst_debug_register_funcptr to const to reflect the constness of its use in t...
Original commit message from CVS:
* gst/gstinfo.c:
* gst/gstinfo.h:
Change name parameter of _gst_debug_register_funcptr to const
to reflect the constness of its use in the function as well
as to quiet a gcc warning.
2006-10-25 23:47:40 +00:00
Wim Taymans
9bece70bf2 gst/gstevent.h: Add small comment.
Original commit message from CVS:
* gst/gstevent.h:
Add small comment.
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_sink_eventfunc):
Debug segment values *after* updating them as this is more
interesting.
2006-10-24 08:22:19 +00:00
Wim Taymans
340a8fee72 docs/design/part-events.txt: Update some docs.
Original commit message from CVS:
* docs/design/part-events.txt:
Update some docs.
* docs/design/part-block.txt:
* gst/gstpad.c: (gst_pad_is_blocking), (handle_pad_block),
(gst_pad_push_event):
Revert BLOCKING patch, it tries to be smart without really having a
clear idea what or how. So, now we discard all FLUSHING events again on
a blocking pad. Should fix gnonlin again.
2006-10-23 15:21:12 +00:00
Wim Taymans
b1504c37da gst/gstsegment.c: Relax arg checking again, -1 is allowed.
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_set_last_stop),
(gst_segment_set_seek), (gst_segment_set_newsegment_full):
Relax arg checking again, -1 is allowed.
2006-10-18 15:28:19 +00:00
Wim Taymans
fd6d33c360 gst/gstsegment.c: _set_last_stop() must be with a value != -1
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_set_last_stop),
(gst_segment_set_seek), (gst_segment_set_newsegment_full):
_set_last_stop() must be with a value != -1
A _TYPE_SET to -1 means seek to 0.
Calc last_stop correctly for negative rates.
Make sure we work with positive durations when updating a segment.
2006-10-18 13:27:39 +00:00
Wim Taymans
c0a833edca Small docs fixes.
Original commit message from CVS:
* docs/design/part-live-source.txt:
* gst/gstclock.h:
Small docs fixes.
2006-10-18 13:21:56 +00:00
Tim-Philipp Müller
5e4699885a gst/gstbuffer.h: Add an explicit cast to GstBuffer** to keep old code that added an explicit cast to GstMiniObject** ...
Original commit message from CVS:
* gst/gstbuffer.h:
Add an explicit cast to GstBuffer** to keep old code that added an
explicit cast to GstMiniObject** for gst_mini_object_replace()
compiling without warning.
2006-10-18 10:08:45 +00:00
Stefan Kost
d3da3ed47b gst/gstvalue.c: check for validity of dates
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_set_date), (gst_date_copy):
check for validity of dates
2006-10-18 08:54:30 +00:00
Peter Kjellerstedt
2a19cd8c49 gst/gstobject.h: Don't define xmlNodePtr to gpointer if the core was built with
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj at axis com>
* gst/gstobject.h:
Don't define xmlNodePtr to gpointer if the core was built with
--disable-loadsave and --disable-registry, this will break
applications that want to use libxml2 but are buildling against a
core that doesn't use libxml2. Use an intermediary type GstXmlNodePtr
instead so we don't have to mess with the libxml2 namespace
(#361675).
2006-10-17 11:57:32 +00:00
Tim-Philipp Müller
c64c4fd000 gst/gstbuffer.h: Fix gst_buffer_replace() macro to avoid gst_mini_object_replace()-related type-punned pointer warnings.
Original commit message from CVS:
* gst/gstbuffer.h:
Fix gst_buffer_replace() macro to avoid gst_mini_object_replace()-related
type-punned pointer warnings.
2006-10-17 10:30:27 +00:00
Tim-Philipp Müller
854bc55a2e gst/gstelement.h: Add casts to the correct return type to state <=> state transition macros.
Original commit message from CVS:
* gst/gstelement.h:
Add casts to the correct return type to state <=> state transition
macros.
2006-10-16 20:02:38 +00:00
Wim Taymans
42d34f86ba Update some docs regarding reverse playback.
Original commit message from CVS:
* docs/design/part-trickmodes.txt:
* gst/gstevent.c:
Update some docs regarding reverse playback.
2006-10-16 11:46:04 +00:00
Wim Taymans
df08b4b762 gst/gstsegment.c: When seeking to stop -1, set last_stop (current position) to the duration of the segment.
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_set_seek):
When seeking to stop -1, set last_stop (current position) to the
duration of the segment.
2006-10-13 16:09:53 +00:00
Yves Lefebvre
1b417192e6 gst/gstelement.h: Clarify _NO_PREROLL a bit more.
Original commit message from CVS:
* gst/gstelement.h:
Clarify _NO_PREROLL a bit more.
* gst/gstevent.c:
Fix docs.
* gst/gstpad.c: (gst_pad_link_check_hierarchy),
(gst_pad_get_caps_unlocked), (gst_pad_save_thyself),
(handle_pad_block), (gst_pad_push_event), (gst_pad_send_event):
Patch by: Yves Lefebvre <ivanohe at abacom dot com> Fix possible deadlock
due to wrong locking order. Fixes #361769.
Remove some redundant/misplaced checks in pad_block.
* libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
For negative rates, count backwards from the duration.
2006-10-13 13:27:46 +00:00