Stefan Kost [Sun, 18 Nov 2007 19:30:10 +0000 (19:30 +0000)]
gst/: Fix build with --disable-gst-debug. Fixes #497859.
Original commit message from CVS:
* gst/gstbin.c:
* gst/gstdebugutils.c:
Fix build with --disable-gst-debug. Fixes #497859.
Spotted by Sameer Naik.
Stefan Kost [Sat, 17 Nov 2007 17:50:21 +0000 (17:50 +0000)]
gst/gstevent.c: Little documentation improvment.
Original commit message from CVS:
* gst/gstevent.c:
Little documentation improvment.
* gst/gstpreset.c:
More TODO cleanups. Remove c++ comments.
* libs/gst/controller/gstcontroller.c:
Add TODO and use quark from static string.
* tests/check/gst/gstmessage.c:
* tests/check/gst/gststructure.c:
Use quark from static string.
Stefan Kost [Sat, 17 Nov 2007 17:24:53 +0000 (17:24 +0000)]
gst/gstpreset.c: Add some comments and TODOs.
Original commit message from CVS:
* gst/gstpreset.c:
Add some comments and TODOs.
* gst/gstpreset.h:
Add padding for future changes.
* plugins/elements/gstqueue.c:
Implement the iface.
Stefan Kost [Sat, 17 Nov 2007 16:43:12 +0000 (16:43 +0000)]
Add the preset interface (Fixes #396779). Do some doc cleanups along.
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* docs/gst/gstreamer.types.in:
* gst/Makefile.am:
* gst/gst.h:
* gst/gstpreset.c:
* gst/gstpreset.h:
Add the preset interface (Fixes #396779). Do some doc cleanups along.
Jan Schmidt [Fri, 16 Nov 2007 00:23:18 +0000 (00:23 +0000)]
configure.ac: Back to CVS
Original commit message from CVS:
* configure.ac:
Back to CVS
Jan Schmidt [Fri, 16 Nov 2007 00:07:54 +0000 (00:07 +0000)]
configure.ac: releasing 0.10.15, "October"
Original commit message from CVS:
=== release 0.10.15 ===
2007-11-15 Jan Schmidt <jan.schmidt@sun.com>
* configure.ac:
releasing 0.10.15, "October"
Jan Schmidt [Thu, 15 Nov 2007 23:31:11 +0000 (23:31 +0000)]
Update .po files
Original commit message from CVS:
Update .po files
Jan Schmidt [Wed, 14 Nov 2007 12:24:09 +0000 (12:24 +0000)]
win32/vs6/libgstreamer.dsp: Convert line endings back to DOS.
Original commit message from CVS:
* win32/vs6/libgstreamer.dsp:
Convert line endings back to DOS.
Stefan Kost [Tue, 13 Nov 2007 11:30:09 +0000 (11:30 +0000)]
docs/: Update fast tagreading draft and performance profiling ideas.
Original commit message from CVS:
* docs/design/draft-tagreading.txt:
* docs/random/ensonic/profiling.txt:
Update fast tagreading draft and performance profiling ideas.
Wim Taymans [Fri, 9 Nov 2007 14:05:02 +0000 (14:05 +0000)]
libs/gst/base/gstbasesink.c: Don't hold the object lock when unreffing a buffer because it could cause a deadlock whe...
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_set_last_buffer):
Don't hold the object lock when unreffing a buffer because it could
cause a deadlock when the finalize function wants to grab the object
lock too. Fixes #495133.
Wim Taymans [Fri, 9 Nov 2007 11:56:41 +0000 (11:56 +0000)]
gst/gstsegment.c: Also accumulate time correctly when doing reverse playback. Fixes #488201,
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_set_newsegment_full),
(gst_segment_to_stream_time), (gst_segment_to_running_time):
Also accumulate time correctly when doing reverse playback. Fixes
#488201,
When converting to running and stream time, use default values for
start/stop/time/accum when comparing different formats. Fixes #494245.
* libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
Do running/stream time in TIME format.
* tests/check/gst/gstsegment.c: (GST_START_TEST),
(gst_segment_suite):
2 new unit tests for segment accumulation.
Tim-Philipp Müller [Wed, 7 Nov 2007 15:53:52 +0000 (15:53 +0000)]
gst/: Move getenv() back into gst_init, so everyone can live happily ever after. Make sure the symbol isn't exported ...
Original commit message from CVS:
* gst/gst.c: (init_pre):
* gst/gstdebugutils.c: (priv_gst_dump_dot_dir), (debug_dump_element),
(_gst_debug_bin_to_dot_file):
Move getenv() back into gst_init, so everyone can live happily
ever after. Make sure the symbol isn't exported though.
Sebastien Moutte [Tue, 6 Nov 2007 23:17:09 +0000 (23:17 +0000)]
win32/common/gstenumtypes.*: Update enum types.
Original commit message from CVS:
Patch by: Sebastien Moutte <sebastien moutte net>
* win32/common/gstenumtypes.c:
* win32/common/gstenumtypes.h:
Update enum types.
* win32/vs6/libgstreamer.dsp:
Update vs6 project files (#494343).
Wim Taymans [Tue, 6 Nov 2007 17:18:14 +0000 (17:18 +0000)]
libs/gst/base/gstbasesrc.c: Unify flushing code, remove some old unlock code that is no longer used.
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_default_query),
(gst_base_src_perform_seek), (gst_base_src_default_event),
(gst_base_src_set_flushing), (gst_base_src_activate_push),
(gst_base_src_activate_pull):
Unify flushing code, remove some old unlock code that is no longer used.
Take the streaming lock when seeking to avoid races. Fixes #492729.
Added some more comments.
Tim-Philipp Müller [Tue, 6 Nov 2007 15:10:36 +0000 (15:10 +0000)]
gst/gst.c: Make _gst_disable_segtrap static, it's only used in gstplugin.c and we can use gst_segtrap_is_enabled() t...
Original commit message from CVS:
* gst/gst.c: (_gst_disable_segtrap):
Make _gst_disable_segtrap static, it's only used in gstplugin.c and
we can use gst_segtrap_is_enabled() there now that we have that API.
Move _gst_debug_dump_dot_dir into gstdebugutils.c, there's no reason
to do the getenv here (and export the variable).
* gst/gstdebugutils.c: (debug_dump_element),
(_gst_debug_bin_to_dot_file), (_gst_debug_bin_to_dot_file_with_ts):
Don't use VLAs which is a C99ism and throws off MSVC (#493983).
* gst/gstinfo.c: (_priv_gst_info_start_time), (_gst_debug_init),
(gst_debug_log_default):
Rename _gst_info_start_time to priv_gst_info_start_time so it
doesn't get exported (was never in any header).
* gst/gstplugin.c: (_gst_plugin_fault_handler_setup),
(gst_plugin_loading_mutex):
Make static mutex gst_plugin_loading_mutex really static (was never
in any header), and use gst_segtrap_is_enabled() instead of
_gst_disable_segtrap.
* gst/gsttrace.c: (_gst_trace_default):
Make local _gst_trace_default static (was never in any header).
Ole André Vadla Ravnås [Tue, 6 Nov 2007 14:43:14 +0000 (14:43 +0000)]
win32/common/: Add more missing symbols, remove some duplicates, and sort as the 'sort' command sorts it (partially f...
Original commit message from CVS:
Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com>
* win32/common/libgstbase.def:
* win32/common/libgstcontroller.def:
* win32/common/libgstdataprotocol.def:
* win32/common/libgstnet.def:
* win32/common/libgstreamer.def:
Add more missing symbols, remove some duplicates, and sort
as the 'sort' command sorts it (partially fixes #493983).
Wim Taymans [Tue, 6 Nov 2007 12:28:17 +0000 (12:28 +0000)]
gst/gstelement.c: Only change the state cookie if a different state was set on the element. See #492729.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_set_state_func):
Only change the state cookie if a different state was set on the
element. See #492729.
Tim-Philipp Müller [Tue, 6 Nov 2007 11:41:32 +0000 (11:41 +0000)]
gst/gstvalue.c: Remove unused and uninitialised type variables that were still exported for some reason (they were ne...
Original commit message from CVS:
* gst/gstvalue.c:
Remove unused and uninitialised type variables that were still
exported for some reason (they were never in any header files
though).
Wim Taymans [Tue, 6 Nov 2007 10:33:22 +0000 (10:33 +0000)]
libs/gst/base/gstbasesink.c: Don't try to report a 0 position when we don't know, return -1 and FALSE instead. This m...
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
(gst_base_sink_do_sync), (gst_base_sink_preroll_object),
(gst_base_sink_event), (gst_base_sink_get_position_last),
(gst_base_sink_get_position_paused), (gst_base_sink_get_position),
(gst_base_sink_change_state):
Don't try to report a 0 position when we don't know, return -1 and FALSE
instead. This mostly happens when we are prerolling.
Make sure we can report the right position before we post the ASYNC_DONE
message so that a message handler can query position without races.
* tests/check/generic/sinks.c: (send_eos), (GST_START_TEST),
(async_done_handoff), (async_done_func), (send_buffer),
(async_done_eos_func), (gst_sinks_suite):
Add two tests for the above.
Wim Taymans [Tue, 6 Nov 2007 10:21:01 +0000 (10:21 +0000)]
MAINTAINERS: Update with new email address.
Original commit message from CVS:
* MAINTAINERS:
Update with new email address.
* docs/design/part-TODO.txt:
Add some more info about future pad-block and negotiation changes.
* docs/design/part-buffering.txt:
Add some ideas about buffering reporting.
Christian Schaller [Tue, 6 Nov 2007 10:01:07 +0000 (10:01 +0000)]
update SPEC file with latest changes, also add MAINTAINERS file to EXTRA_DIST, the ommission of this cause a weird RP...
Original commit message from CVS:
update SPEC file with latest changes, also add MAINTAINERS file to EXTRA_DIST, the ommission of this cause a weird RPM build error on FC8
Jan Schmidt [Tue, 6 Nov 2007 00:59:54 +0000 (00:59 +0000)]
tests/check/gst/gstobject.c: Disable silly racy test that always fails on this combination of CPU and kernel.
Original commit message from CVS:
* tests/check/gst/gstobject.c:
Disable silly racy test that always fails on this combination of CPU
and kernel.
Tim-Philipp Müller [Sun, 4 Nov 2007 10:16:38 +0000 (10:16 +0000)]
ChangeLog surgery: mention bug number
Original commit message from CVS:
ChangeLog surgery: mention bug number
Murray Cumming [Sun, 4 Nov 2007 10:13:33 +0000 (10:13 +0000)]
gst/gstobject.c: Corrected the registration of the parent-set and parent-unset signals: The parameter is a GstObject,...
Original commit message from CVS:
Patch by: Murray Cumming <murrayc@murrayc.com>
* gst/gstobject.c:
Corrected the registration of the parent-set and parent-unset
signals: The parameter is a GstObject, not a GObject.
Tim-Philipp Müller [Fri, 2 Nov 2007 18:35:37 +0000 (18:35 +0000)]
gst/: Move declaration of private _gst_foo_initialize() functions into our private header file where they should have...
Original commit message from CVS:
* gst/gst_private.h:
* gst/gstbuffer.h:
* gst/gstevent.h:
* gst/gstformat.h:
* gst/gstmessage.h:
* gst/gstplugin.h:
* gst/gstquery.h:
* gst/gsttaglist.h:
* gst/gstvalue.h:
Move declaration of private _gst_foo_initialize() functions into
our private header file where they should have been all along.
Tim-Philipp Müller [Fri, 2 Nov 2007 17:43:25 +0000 (17:43 +0000)]
gtk-doc fixes; trailing-comma-in-enum fix.
Original commit message from CVS:
* docs/plugins/gstreamer-plugins-sections.txt:
* gst/gstdebugutils.h:
* gst/gstxml.h:
* plugins/elements/gstqueue.c:
gtk-doc fixes; trailing-comma-in-enum fix.
Tim-Philipp Müller [Fri, 2 Nov 2007 16:27:56 +0000 (16:27 +0000)]
gst/gst.c: Clean up on deinit (not the external ones though, doesn't seem to be needed for some reason).
Original commit message from CVS:
* gst/gst.c: (gst_deinit):
Clean up on deinit (not the external ones though, doesn't seem to be
needed for some reason).
Tim-Philipp Müller [Thu, 1 Nov 2007 23:51:55 +0000 (23:51 +0000)]
gst/gstinfo.h: Remove __declspec(dllimport) for MSVC that was copied over into core from a plugin, obviously without ...
Original commit message from CVS:
* gst/gstinfo.h: (GST_DEBUG_CATEGORY_EXTERN):
Remove __declspec(dllimport) for MSVC that was copied over into core
from a plugin, obviously without ever having been tested (note the
single underscore in _declspec in the initial commit), and that doesn't
really make sense. See #492077.
Tim-Philipp Müller [Thu, 1 Nov 2007 21:50:05 +0000 (21:50 +0000)]
g_type_class_ref() other types as well, see #349410 and #64764.
Original commit message from CVS:
* gst/gst.c: (init_post):
* gst/gstevent.c: (_gst_event_initialize):
* gst/gstquery.c: (_gst_query_initialize):
* libs/gst/dataprotocol/dataprotocol.c (gst_dp_init):
g_type_class_ref() other types as well, see #349410 and #64764.
* gst/gstbuffer.c: (_gst_buffer_initialize):
* gst/gstmessage.c: (_gst_message_initialize):
Simplify existing g_type_class_ref().
Tim-Philipp Müller [Thu, 1 Nov 2007 20:10:48 +0000 (20:10 +0000)]
gst/gstformat.c: g_type_class_ref() our GstFormat type to make sure we avoid the thread-unsafe bits of the GObject/GT...
Original commit message from CVS:
* gst/gstformat.c: (_gst_format_initialize):
g_type_class_ref() our GstFormat type to make sure we avoid the
thread-unsafe bits of the GObject/GType system, ie. bug #349410 and
bug #64764. Should fix intermittent tee unit test failures (#474823).
Tim-Philipp Müller [Thu, 1 Nov 2007 19:19:10 +0000 (19:19 +0000)]
tests/check/elements/tee.c: Simplify, simplify, simplify - or not. Rewrite unit test not to use gst_parse_launch(); ...
Original commit message from CVS:
* tests/check/elements/tee.c: (test_num_buffers):
Simplify, simplify, simplify - or not. Rewrite unit test
not to use gst_parse_launch(); allow N sub-streams. Increasing
the number of sub-streams seems to reproduce #474823 more easily.
Ole André Vadla Ravnås [Wed, 31 Oct 2007 22:01:03 +0000 (22:01 +0000)]
Fix a couple of missing includes for MSVC2005 and a C99 issue. Also, starting with 2.14.0, GLib won't provide a pipe(...
Original commit message from CVS:
Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com>
* gst/gsttrace.c:
* libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_new):
* libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
* libs/gst/net/gstnettimeprovider.c: (gst_net_time_provider_new):
Fix a couple of missing includes for MSVC2005 and a C99 issue. Also,
starting with 2.14.0, GLib won't provide a pipe() macro any longer,
so use _pipe() directly (#492077).
* win32/common/dirent.c: (_treaddir):
Add a couple of casts to make it build without warnings with MSVC.
* win32/common/libgstreamer.def:
Add some more symbols that need to be exported.
Tim-Philipp Müller [Wed, 31 Oct 2007 18:08:21 +0000 (18:08 +0000)]
tests/examples/metadata/read-metadata.c: Use _KEEP as merge mode rather than _KEEP_ALL, so tags arriving in a second ...
Original commit message from CVS:
* tests/examples/metadata/read-metadata.c: (message_loop):
Use _KEEP as merge mode rather than _KEEP_ALL, so tags
arriving in a second or third tag message are added to
the tag list as well.
Stefan Kost [Wed, 31 Oct 2007 13:01:34 +0000 (13:01 +0000)]
libs/gst/base/gstbasesrc.c: Its "Since:" and not "@Since:". And remove an superflous cast.
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c:
Its "Since:" and not "@Since:". And remove an superflous cast.
Wim Taymans [Tue, 30 Oct 2007 18:30:13 +0000 (18:30 +0000)]
Add a new last-buffer property that contains the last buffer used in basesink for preroll or rendering. useful for ma...
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
(gst_base_sink_get_last_buffer), (gst_base_sink_set_last_buffer),
(gst_base_sink_get_property), (gst_base_sink_render_object),
(gst_base_sink_preroll_object),
(gst_base_sink_queue_object_unlocked), (gst_base_sink_event),
(gst_base_sink_change_state):
* libs/gst/base/gstbasesink.h:
Add a new last-buffer property that contains the last buffer used in
basesink for preroll or rendering. useful for making snapshots.
API: gst_base_sink_get_last_buffer()
API: GstBaseSink::last-buffer
Stefan Kost [Mon, 29 Oct 2007 13:46:25 +0000 (13:46 +0000)]
Improve bin graph dumping, by using the envvar to specify a path.
Original commit message from CVS:
* docs/gst/running.xml:
* gst/gst.c:
* gst/gstdebugutils.c:
* gst/gstdebugutils.h:
* tools/gst-launch.c:
Improve bin graph dumping, by using the envvar to specify a path.
Rename the envvar to GST_DEBUG_DUMP_DOT_DIR.
Tim-Philipp Müller [Mon, 29 Oct 2007 13:10:01 +0000 (13:10 +0000)]
plugins/elements/gsttypefindelement.c: Post special error message if we can't determine the type of a stream because ...
Original commit message from CVS:
* plugins/elements/gsttypefindelement.c:
(gst_type_find_element_handle_event),
(gst_type_find_element_activate):
Post special error message if we can't determine the type of a stream
because it's empty.
Stefan Kost [Mon, 29 Oct 2007 10:05:55 +0000 (10:05 +0000)]
Document new env-var. Add one log-line after dumpng a graph.
Original commit message from CVS:
* docs/gst/running.xml:
* gst/gstdebugutils.c:
Document new env-var. Add one log-line after dumpng a graph.
Tim-Philipp Müller [Fri, 26 Oct 2007 18:39:03 +0000 (18:39 +0000)]
configure.ac: Ugly hack to put the (recently removed and non-portable, apparently)
Original commit message from CVS:
* configure.ac:
Ugly hack to put the (recently removed and non-portable, apparently)
-Wl,--export-dynamic back into libgstcheck's LDFLAGS when we're using
GNU ld, because without that 'make check' fails miserably on my debian
stable box. Someone with more knowledge of linker intricacies and
portability issues than me fix this properly please.
Wim Taymans [Thu, 25 Oct 2007 17:20:47 +0000 (17:20 +0000)]
libs/gst/base/gstbasesink.c: Reset last seen position after flushing so that we don't report the old position anymore.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_event):
Reset last seen position after flushing so that we don't report the old
position anymore.
Alessandro Decina [Thu, 25 Oct 2007 16:19:05 +0000 (16:19 +0000)]
gst/: Patch from Alessandro Decina adding get_type_full and get_protocols_full private vfuncs to the URIHandler inter...
Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_register):
* gst/gsturi.h:
Patch from Alessandro Decina adding get_type_full and
get_protocols_full private vfuncs to the URIHandler interface
to allow bindings to support creating URI handlers.
Partially fixes: #339279
API: GstURIHandlerInterface::get_type_full
API: GstURIHandlerInterface::get_protocols_full
Jan Schmidt [Thu, 25 Oct 2007 15:14:02 +0000 (15:14 +0000)]
plugins/elements/gstmultiqueue.c: Make it so that pads are considered linked until a buffer is pushed and discovered ...
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (gst_multi_queue_set_property),
(gst_multi_queue_request_new_pad), (gst_single_queue_flush),
(gst_multi_queue_loop), (gst_multi_queue_sink_activate_push):
Make it so that pads are considered linked until a buffer is pushed
and discovered otherwise. This avoids problems with decodebin2 hanging
after a seek in the filesrc ! decodebin2 name=d ! fakesink d. ! fakesink
case.
Make sure we lock the multiqueue when updating the max-size properties.
Fix a crash on Solaris in a debug statement in get_request_pad that
passes a NULL string to GST_DEBUG.
* tests/check/elements/multiqueue.c: (mq_dummypad_chain),
(run_output_order_test):
Fix the test to allow the first buffer on not-linked pads to come out
of sequence while multiqueue discovers that they are not-linked.
Jan Schmidt [Thu, 25 Oct 2007 14:50:48 +0000 (14:50 +0000)]
Use a custom export symbol regex for libgstcheck, as it needs to export symbols that don't match the standard GStream...
Original commit message from CVS:
* configure.ac:
* libs/gst/check/Makefile.am:
Use a custom export symbol regex for libgstcheck, as it needs
to export symbols that don't match the standard GStreamer gst_*
pattern, and --export-dynamic is not portable (only works on
GNU ld)
* libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
(gst_check_setup_sink_pad):
Make sure to pass a message parameter to the fail_* macros.
* tests/check/gst/gstinfo.c: (GST_START_TEST):
Fix some compiler warnings.
Tim-Philipp Müller [Thu, 25 Oct 2007 14:41:01 +0000 (14:41 +0000)]
tests/check/gst/gststructure.c: Disable test that checks that white spaces are not allowed in structure names or fiel...
Original commit message from CVS:
* tests/check/gst/gststructure.c: (test_to_string):
Disable test that checks that white spaces are not allowed
in structure names or field names, since we need to
support that for now for backwards compatibility reasons.
Tim-Philipp Müller [Wed, 24 Oct 2007 13:13:56 +0000 (13:13 +0000)]
API: add GST_TAG_ARTIST_SORTNAME
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsttaglist.c:
* gst/gsttaglist.h:
API: add GST_TAG_ARTIST_SORTNAME
API: add GST_TAG_ALBUM_SORTNAME
API: add GST_TAG_TITLE_SORTNAME
Add tag variants for sorting (#414539).
Tim-Philipp Müller [Wed, 24 Oct 2007 13:00:58 +0000 (13:00 +0000)]
gst/gststructure.c: Also allow white space for names so we don't break backwards compatibility.
Original commit message from CVS:
* gst/gststructure.c:
Also allow white space for names so we don't break
backwards compatibility.
Wim Taymans [Mon, 22 Oct 2007 15:37:43 +0000 (15:37 +0000)]
docs/design/: Small updates.
Original commit message from CVS:
* docs/design/part-TODO.txt:
* docs/design/part-segments.txt:
* docs/design/part-streams.txt:
Small updates.
Edgard Lima [Mon, 22 Oct 2007 11:32:14 +0000 (11:32 +0000)]
docs/gst/gstreamer-sections.txt: Fixed documentation from my previous commit (added new API add gst_value_set_structu...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Fixed documentation from my previous commit (added new API add
gst_value_set_structure(), add gst_value_get_structure() and
GST_VALUE_HOLDS_STRUCTURE).
Stefan Kost [Mon, 22 Oct 2007 11:10:28 +0000 (11:10 +0000)]
gst/gstdebugutils.c: Reflow code to fix uninitialized variable warning.
Original commit message from CVS:
* gst/gstdebugutils.c:
Reflow code to fix uninitialized variable warning.
Edgard Lima [Mon, 22 Oct 2007 08:53:26 +0000 (08:53 +0000)]
Added GstStructure to gst_value_table and its related functions.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_to_string),
(gst_caps_from_string_inplace):
* gst/gststructure.c: (gst_structure_get_abbrs),
(gst_structure_to_string), (gst_structure_from_string):
* gst/gstvalue.c: (gst_value_set_structure),
(gst_value_get_structure), (gst_value_serialize_structure),
(gst_value_deserialize_structure), (_gst_value_initialize):
* gst/gstvalue.h:
* tests/check/gst/gststructure.c: (GST_START_TEST),
(gst_structure_suite):
* tests/check/gst/gstvalue.c: (GST_START_TEST):
Added GstStructure to gst_value_table and its related functions.
Changed gst_structure_to_string to print ';' in the end.
Changed gst_caps_to_string to not print ';' beteween its
fields (structures) anymore and remove the lastes ';' from latest
structure. Now it is possible to have nested structures.
In addition, backward compatibilty is assured by accepting '\0' as
end delimiter. Fixes: #487969.
API: add gst_value_set_structure()
API: add gst_value_get_structure()
Tim-Philipp Müller [Fri, 19 Oct 2007 09:48:38 +0000 (09:48 +0000)]
gst/gstbus.c: When no GSource callback has been set up, tell developer to use a function that actually exists.
Original commit message from CVS:
* gst/gstbus.c:
When no GSource callback has been set up, tell developer
to use a function that actually exists.
Stefan Kost [Wed, 17 Oct 2007 12:58:23 +0000 (12:58 +0000)]
Allow dumping pipelines as dot graphs. Fixes #456573.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/Makefile.am:
* gst/gst.c:
* gst/gst.h:
* gst/gstdebugutils.c:
* gst/gstdebugutils.h:
* gst/gstinfo.c:
* gst/gstinfo.h:
* tools/gst-launch.c:
Allow dumping pipelines as dot graphs. Fixes #456573.
Tim-Philipp Müller [Tue, 16 Oct 2007 21:48:23 +0000 (21:48 +0000)]
gst/gststructure.c: Allow '+' as well, it can be part of media or mime types such as image/svg+xml.
Original commit message from CVS:
* gst/gststructure.c:
Allow '+' as well, it can be part of media or mime types
such as image/svg+xml.
Tim-Philipp Müller [Tue, 16 Oct 2007 20:30:13 +0000 (20:30 +0000)]
API: add gst_bus_pop_filtered
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstbus.c:
* gst/gstbus.h:
API: add gst_bus_pop_filtered
API: add gst_bus_timed_pop_filtered
Two new functions for waiting for specific message types on the
bus for a specified amount of time without iterating any main
loops or main contexts.
* tests/check/gst/gstbus.c:
Some tests for the new functions.
Tim-Philipp Müller [Tue, 16 Oct 2007 17:21:38 +0000 (17:21 +0000)]
docs/libs/gstreamer-libs-sections.txt: Make gtk-doc ignore stuff it should ignore.
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
Make gtk-doc ignore stuff it should ignore.
Tim-Philipp Müller [Tue, 16 Oct 2007 16:12:36 +0000 (16:12 +0000)]
libs/gst/check/gstcheck.*: Allow runtime selection of unit tests to run via the GST_CHECKS environment variable (test...
Original commit message from CVS:
* libs/gst/check/gstcheck.c:
* libs/gst/check/gstcheck.h:
Allow runtime selection of unit tests to run via the GST_CHECKS
environment variable (test case function names, comma-separated).
Stefan Kost [Tue, 16 Oct 2007 13:58:43 +0000 (13:58 +0000)]
Revert serialisation change and constrain structure-names after consensus on irc. Update api documentation to reflect...
Original commit message from CVS:
* gst/gststructure.c:
* tests/check/gst/gststructure.c:
Revert serialisation change and constrain structure-names after
consensus on irc. Update api documentation to reflect the change.
Stefan Kost [Tue, 16 Oct 2007 06:32:07 +0000 (06:32 +0000)]
gst/gststructure.c: Improve serialization and fix tests.
Original commit message from CVS:
* gst/gststructure.c:
Improve serialization and fix tests.
* tests/check/gst/gststructure.c:
Add another test that covers why I actually did the previous structure
change.
Wim Taymans [Mon, 15 Oct 2007 14:33:16 +0000 (14:33 +0000)]
tools/gst-inspect.c: Don't crash when inspecting an element.
Original commit message from CVS:
* tools/gst-inspect.c: (print_element_info):
Don't crash when inspecting an element.
Tim-Philipp Müller [Mon, 15 Oct 2007 11:58:16 +0000 (11:58 +0000)]
tests/check/gst/gststructure.c: Add unit test for escaping of structure name when serialising and deserialising to/fr...
Original commit message from CVS:
* tests/check/gst/gststructure.c:
Add unit test for escaping of structure name when serialising
and deserialising to/from strings.
Wim Taymans [Mon, 15 Oct 2007 11:36:37 +0000 (11:36 +0000)]
plugins/elements/: Fix queue negotiation. If acceptcaps unconditionally returns TRUE, upstream is tricked into thinki...
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (gst_single_queue_push_one),
(gst_single_queue_new):
* plugins/elements/gstqueue.c: (gst_queue_init),
(gst_queue_push_one):
Fix queue negotiation. If acceptcaps unconditionally returns TRUE,
upstream is tricked into thinking it can suggest a format downstream
while downstream does not support that format. The real problem is that
core calls acceptcaps when pushing a buffer with new caps, for which we
do a little workaround by setting the caps on the srcpad ourselves
before pushing the buffer (until this is figured out). Fixes #486758.
Stefan Kost [Mon, 15 Oct 2007 11:19:36 +0000 (11:19 +0000)]
gst/: Add some more comments and debug output. Quote structure name to fix deserialisation of some strings.
Original commit message from CVS:
* gst/gststructure.c:
* gst/gstvalue.c:
Add some more comments and debug output. Quote structure name to fix
deserialisation of some strings.
Stefan Kost [Mon, 15 Oct 2007 07:37:37 +0000 (07:37 +0000)]
gst/gstbuffer.h: Define GST_BUFFER_FLAG_GAP more strictly to enable optimizations based on it. Fix docs for GST_BUFFE...
Original commit message from CVS:
* gst/gstbuffer.h:
Define GST_BUFFER_FLAG_GAP more strictly to enable optimizations based
on it. Fix docs for GST_BUFFER_MALLOCDATA and GstBuffer.malloc_data.
Stefan Kost [Mon, 15 Oct 2007 07:11:04 +0000 (07:11 +0000)]
tools/gst-inspect.c: Save approx. 400 1 byte allocs when printing. Use API to acces element details.
Original commit message from CVS:
* tools/gst-inspect.c:
Save approx. 400 1 byte allocs when printing. Use API to acces element
details.
* tools/gst-run.c:
Avoid a strdup.
* tools/gst-xmlinspect.c:
Use API to acces element details.
Stefan Kost [Mon, 15 Oct 2007 06:52:01 +0000 (06:52 +0000)]
gst/gstinfo.c: Fix some spelling errors.
Original commit message from CVS:
* gst/gstinfo.c:
Fix some spelling errors.
Wim Taymans [Sun, 14 Oct 2007 15:54:02 +0000 (15:54 +0000)]
gst/gstbin.c: Correctly set the next state if all of our async children commited their state. This makes sure we can ...
Original commit message from CVS:
* gst/gstbin.c: (bin_handle_async_done):
Correctly set the next state if all of our async children commited their
state. This makes sure we can actually cancel the state change in
progress. Fixes a regression in Rhythmbox when seeking.
Tim-Philipp Müller [Sat, 13 Oct 2007 17:43:27 +0000 (17:43 +0000)]
gst/gstbin.c: Don't shadow local variable.
Original commit message from CVS:
* gst/gstbin.c:
Don't shadow local variable.
* gst/gstinfo.c:
Don't shadow global function name.
Tim-Philipp Müller [Sat, 13 Oct 2007 17:20:09 +0000 (17:20 +0000)]
gst/: Use already-interned string for the private GstPluginFeature plugin_name field.
Original commit message from CVS:
* gst/gstelementfactory.c:
* gst/gstpluginfeature.c:
* gst/gstpluginfeature.h:
* gst/gstregistrybinary.c:
* gst/gstregistryxml.c:
* gst/gsttypefind.c:
Use already-interned string for the private GstPluginFeature
plugin_name field.
Tim-Philipp Müller [Wed, 10 Oct 2007 22:43:11 +0000 (22:43 +0000)]
docs/libs/gstreamer-libs-sections.txt: Add new API to docs; fixes the build.
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
Add new API to docs; fixes the build.
Wim Taymans [Wed, 10 Oct 2007 15:18:44 +0000 (15:18 +0000)]
libs/gst/base/gstbasesink.*: Add function to wait for EOS, subclasses can use this to correctly wait for devices to d...
Original commit message from CVS:
Patch inspired by: Benoit Fouet <benoit dot fouet at purplelabs dot com>
* libs/gst/base/gstbasesink.c: (gst_base_sink_wait_eos),
(gst_base_sink_event):
* libs/gst/base/gstbasesink.h:
Add function to wait for EOS, subclasses can use this to correctly wait
for devices to drain before performing the EOS logic. Fixes #485343.
API: gst_base_sink_wait_eos()
Tim-Philipp Müller [Wed, 10 Oct 2007 10:53:39 +0000 (10:53 +0000)]
gst/gstplugin.h: Cast description string constants in GST_PLUGIN_DEFINE macros to a (gchar*) to make C++ code using t...
Original commit message from CVS:
* gst/gstplugin.h:
Cast description string constants in GST_PLUGIN_DEFINE macros
to a (gchar*) to make C++ code using these macros compile
without warning with g++-4.2 (see #462737). Even if slightly
ugly, this seems preferable to putting the description strings
into the GLib quark table or making the structure member a
const gchar * and doing casts in core code that allocs and
frees these strings, or requiring a cast in the C++ code.
Tim-Philipp Müller [Tue, 9 Oct 2007 20:45:13 +0000 (20:45 +0000)]
gst/gstinfo.h: Use __FUNCTION__ instead of __PRETTY_FUNCTION__, it's silly to print the entire class/function signatu...
Original commit message from CVS:
* gst/gstinfo.h:
Use __FUNCTION__ instead of __PRETTY_FUNCTION__, it's silly
to print the entire class/function signature into the log
file for C++ code. This only affects C++ code, for C code
everything remains the same.
Wim Taymans [Tue, 9 Oct 2007 16:20:59 +0000 (16:20 +0000)]
gst/gstbin.c: Work around a problem with pipelines containing (semi)loops until a proper, more complicated solution i...
Original commit message from CVS:
* gst/gstbin.c: (remove_from_queue):
Work around a problem with pipelines containing (semi)loops until a
proper, more complicated solution is ready. See #475455.
Tim-Philipp Müller [Tue, 9 Oct 2007 14:18:39 +0000 (14:18 +0000)]
gst/: Put more strings into the GLib quark table. No need to keep a hundred-something copies of identical version str...
Original commit message from CVS:
* gst/gstplugin.c:
* gst/gstplugin.h:
* gst/gstregistrybinary.c:
* gst/gstregistryxml.c:
Put more strings into the GLib quark table. No need to keep
a hundred-something copies of identical version strings,
license strings, package name strings and package origin
strings around.
Tim-Philipp Müller [Tue, 9 Oct 2007 10:41:41 +0000 (10:41 +0000)]
docs/manual/advanced-dataaccess.xml: Don't imply that it's okay to unconditionally change buffer data or buffer metad...
Original commit message from CVS:
* docs/manual/advanced-dataaccess.xml:
Don't imply that it's okay to unconditionally change
buffer data or buffer metadata in a pad probe callback,
and a bunch of other comments. Fixes #430031.
Tim-Philipp Müller [Mon, 8 Oct 2007 20:45:07 +0000 (20:45 +0000)]
win32/common/: Update generated files.
Original commit message from CVS:
* win32/common/gstenumtypes.c:
* win32/common/gstenumtypes.h:
* win32/common/gstversion.h:
Update generated files.
Tim-Philipp Müller [Mon, 8 Oct 2007 17:59:35 +0000 (17:59 +0000)]
docs/manual/advanced-autoplugging.xml: Prefix section with broken code with a warning (see #342432).
Original commit message from CVS:
* docs/manual/advanced-autoplugging.xml:
Prefix section with broken code with a warning (see #342432).
Tim-Philipp Müller [Mon, 8 Oct 2007 17:26:09 +0000 (17:26 +0000)]
docs/manual/: Call g_thread_init() before g_option_context_new() to avoid warnings. Spotted by Ritesh Khadgaray. Fixe...
Original commit message from CVS:
* docs/manual/appendix-integration.xml:
* docs/manual/basics-init.xml:
Call g_thread_init() before g_option_context_new() to
avoid warnings. Spotted by Ritesh Khadgaray. Fixes #484225.
Wim Taymans [Mon, 8 Oct 2007 17:05:06 +0000 (17:05 +0000)]
libs/gst/base/gstbasesink.c: When we received EOS and are waiting for when to post the EOS message, our state is prer...
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
(gst_base_sink_queue_object_unlocked),
(gst_base_sink_queue_object), (gst_base_sink_event),
(gst_base_sink_needs_preroll), (gst_base_sink_chain_unlocked):
When we received EOS and are waiting for when to post the EOS message,
our state is prerolled and we should not return ASYNC.
Reorganize some code paths to implement this behavior.
* tests/check/generic/sinks.c: (send_eos), (GST_START_TEST),
(gst_sinks_suite):
Add unit test to verify above EOS fix.
Wim Taymans [Mon, 8 Oct 2007 10:28:18 +0000 (10:28 +0000)]
plugins/elements/gsttypefindelement.c: Move detecting the input caps of the sinkpad to the setcaps function.
Original commit message from CVS:
* plugins/elements/gsttypefindelement.c:
(gst_type_find_element_have_type), (gst_type_find_element_init),
(gst_type_find_element_setcaps), (gst_type_find_element_chain):
Move detecting the input caps of the sinkpad to the setcaps function.
This allows us to update the output caps when we receive new input caps
instead of always using the first detected caps.
Wim Taymans [Mon, 8 Oct 2007 10:21:15 +0000 (10:21 +0000)]
libs/gst/base/gstbasesink.c: Don't try to preroll non-async elements after a flush.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_event),
(gst_base_sink_get_position):
Don't try to preroll non-async elements after a flush.
Subtract latency form clock times when reporting position.
Wim Taymans [Fri, 5 Oct 2007 14:44:18 +0000 (14:44 +0000)]
gst/: Small comment and documentation update.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_pause_task):
* gst/gstutils.c:
Small comment and documentation update.
Wim Taymans [Fri, 5 Oct 2007 14:40:06 +0000 (14:40 +0000)]
libs/gst/base/gstbasesrc.c: Rework the locking of basesrc in a similar fashion to basesink. We basically have one loc...
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_wait_playing),
(gst_base_src_set_live), (gst_base_src_is_live),
(gst_base_src_query_latency), (gst_base_src_perform_seek),
(gst_base_src_default_event), (gst_base_src_wait),
(gst_base_src_do_sync), (gst_base_src_get_range),
(gst_base_src_pad_get_range), (gst_base_src_loop),
(gst_base_src_unlock), (gst_base_src_unlock_stop),
(gst_base_src_set_flushing), (gst_base_src_set_playing),
(gst_base_src_activate_push), (gst_base_src_activate_pull),
(gst_base_src_change_state):
Rework the locking of basesrc in a similar fashion to basesink. We
basically have one lock (LIVE_LOCK) protecting the dataflow. This allows
us to handle live sources and semi live ones much better.
Simplify flushing.
Fix unlocking when seeking, shutting down and pausing in live sources.
Wim Taymans [Fri, 5 Oct 2007 11:52:39 +0000 (11:52 +0000)]
tests/check/pipelines/simple-launch-lines.c: Fix compilation again.
Original commit message from CVS:
* tests/check/pipelines/simple-launch-lines.c: (run_pipeline):
Fix compilation again.
Stefan Kost [Wed, 3 Oct 2007 15:27:24 +0000 (15:27 +0000)]
gst/gstelement.c: Use meaningful categories for the logs to clean the default one.
Original commit message from CVS:
* gst/gstelement.c:
Use meaningful categories for the logs to clean the default one.
Stefan Kost [Wed, 3 Oct 2007 15:05:30 +0000 (15:05 +0000)]
tests/check/pipelines/cleanup.c: Print message name and not just number.
Original commit message from CVS:
* tests/check/pipelines/cleanup.c:
Print message name and not just number.
Stefan Kost [Wed, 3 Oct 2007 15:02:43 +0000 (15:02 +0000)]
docs/design/draft-tagreading.txt: Add some more thoughts.
Original commit message from CVS:
* docs/design/draft-tagreading.txt:
Add some more thoughts.
Stefan Kost [Wed, 3 Oct 2007 14:51:03 +0000 (14:51 +0000)]
tests/check/pipelines/simple-launch-lines.c: Print message name and not just number.
Original commit message from CVS:
* tests/check/pipelines/simple-launch-lines.c:
Print message name and not just number.
Stefan Kost [Wed, 3 Oct 2007 12:05:17 +0000 (12:05 +0000)]
libs/gst/base/gsttypefindhelper.c: Speedup typefinding. This is work in progress (see #459862).
Original commit message from CVS:
* libs/gst/base/gsttypefindhelper.c:
Speedup typefinding. This is work in progress (see #459862).
Stefan Kost [Wed, 3 Oct 2007 11:36:14 +0000 (11:36 +0000)]
gst/gstplugin.c: Fix docs that mention 'plugin_desc' instead of 'gst_plugin_desc'.
Original commit message from CVS:
* gst/gstplugin.c:
Fix docs that mention 'plugin_desc' instead of 'gst_plugin_desc'.
Spotted by Josep Torra Valles <josep@fluendo.com>.
Tim-Philipp Müller [Wed, 3 Oct 2007 11:16:48 +0000 (11:16 +0000)]
gst/gstclock.h: Fix up broken GST_CLOCK_FLAGS macro and GstClock docs. The flags field has moved to GstObject.
Original commit message from CVS:
* gst/gstclock.h:
Fix up broken GST_CLOCK_FLAGS macro and GstClock docs. The flags
field has moved to GstObject.
Wim Taymans [Tue, 2 Oct 2007 15:20:58 +0000 (15:20 +0000)]
libs/gst/base/gstbasesrc.c: Call unlock for live sources so that they can't get stuck in _create and produce a buffer...
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_do_sync),
(gst_base_src_get_range), (gst_base_src_change_state):
Call unlock for live sources so that they can't get stuck in _create and
produce a buffer before they are set back to PLAYING.
Edward Hervey [Tue, 2 Oct 2007 09:21:48 +0000 (09:21 +0000)]
plugins/elements/gstqueue.c: Comment the segment-related code... in the PROPER function.
Original commit message from CVS:
* plugins/elements/gstqueue.c: (gst_queue_locked_enqueue),
(gst_queue_locked_dequeue):
Comment the segment-related code... in the PROPER function.
See #482147 and my commit from yesterday.
Wim Taymans [Mon, 1 Oct 2007 17:59:21 +0000 (17:59 +0000)]
libs/gst/base/gstbasesrc.c: Also initialize the counter that calculates the first timestamp on a buffer correctly for...
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
Also initialize the counter that calculates the first timestamp on a
buffer correctly for non-live sources.
Edward Hervey [Mon, 1 Oct 2007 12:31:28 +0000 (12:31 +0000)]
plugins/elements/gstqueue.c: Disable code that's breaking the current-time-level reporting.
Original commit message from CVS:
* plugins/elements/gstqueue.c: (gst_queue_locked_dequeue):
Disable code that's breaking the current-time-level reporting.
See #482147
Sebastian Dröge [Sun, 30 Sep 2007 18:16:34 +0000 (18:16 +0000)]
docs/gst/gstreamer-sections.txt: Add M_PI and IMPORT_SYMBOL to the private part of the GstInfo section as they should...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Add M_PI and IMPORT_SYMBOL to the private part of the GstInfo section
as they shouldn't show up. Fixes the docs build.
Sébastien Moutte [Sat, 29 Sep 2007 11:46:31 +0000 (11:46 +0000)]
gst/gstinfo.h: Add an explicit variable importation needed on VS6 (only for MSC_VER)
Original commit message from CVS:
* gst/gstinfo.h:
Add an explicit variable importation needed on VS6 (only for MSC_VER)
Define M_PI which is used in files which are including gstinfo.h.
VS6 includes doesn't define it.
* win32/common/libgstbase.def:
* win32/common/libgstcontroller.def:
* win32/common/libgstreamer.def:
Add new exported functions and variables.
* win32/vs6/libgstcontroller.dsp:
* win32/vs6/libgstreamer.dsp:
Update the list of files to build.
Felipe Contreras [Fri, 28 Sep 2007 10:22:40 +0000 (10:22 +0000)]
plugins/elements/gstqueue.c: Improve debugging. Fixes #480858.
Original commit message from CVS:
Patch by: Felipe Contreras <felipe dot contreras at gmail dot com>
* plugins/elements/gstqueue.c: (update_time_level), (apply_buffer),
(gst_queue_locked_dequeue), (gst_queue_handle_sink_event),
(gst_queue_chain), (gst_queue_loop), (gst_queue_src_activate_push):
Improve debugging. Fixes #480858.
Felipe Contreras [Fri, 28 Sep 2007 10:15:23 +0000 (10:15 +0000)]
plugins/elements/gstqueue.c: First patch of code cleanups, use the macros and right arguments in the macros to signal...
Original commit message from CVS:
Patch by: Felipe Contreras <felipe dot contreras at gmail dot com>
* plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
First patch of code cleanups, use the macros and right arguments in the
macros to signal and lock the queue. See #480858.
Wim Taymans [Wed, 26 Sep 2007 18:06:42 +0000 (18:06 +0000)]
gst/gstbus.c: Improve debugging when dealing with _poll().
Original commit message from CVS:
* gst/gstbus.c: (poll_func):
Improve debugging when dealing with _poll().