=== release 0.10.12 ===

2007-03-07  Jan Schmidt <thaytan@mad.scientist.com>

	* configure.ac:
	  releasing 0.10.12, "Inevitable Demise"

2007-03-01  Jan Schmidt  <thaytan@mad.scientist.com>

	* configure.ac:
	 Version 0.10.11.2 (0.10.12 pre-release)
	 Bump libtool versioning.

2007-03-01  Stefan Kost  <ensonic@users.sf.net>

	* libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
	  Log flow-names and not numbers.

2007-02-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  Convert to new AG_GST style.

2007-02-28  Wim Taymans  <wim@fluendo.com>

	* libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency):
	Don't unref query twice.

2007-02-28  Wim Taymans  <wim@fluendo.com>

	* gst/gstvalue.c: (gst_value_transform_object_string),
	(_gst_value_initialize):
	Implement GstObject -> string transform so we print object names
	when serializing GValues containing GstObjects.

2007-02-28  Wim Taymans  <wim@fluendo.com>

	* docs/gst/gstreamer-sections.txt:
	Add new stuff to docs.

2007-02-28  Wim Taymans  <wim@fluendo.com>

	* libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency),
	(gst_base_sink_queue_object_unlocked), (gst_base_sink_send_event),
	(gst_base_sink_change_state):
	Improve latency query code.
	Don't leak latency events.

	* tests/check/gst/gstbin.c: (GST_START_TEST):
	Improve debugging.

2007-02-28  Wim Taymans  <wim@fluendo.com>

	* gst/gstelement.c: (gst_element_message_full),
	(gst_element_get_state_func):
	* gst/gstelement.h:
	Improve docs a little. Added Since: for new macro.

	* gst/gstobject.c: (gst_object_sink):
	* gst/gstpipeline.c: (gst_pipeline_change_state),
	(gst_pipeline_set_new_stream_time):
	* gst/gstpipeline.h:
	Improve debugging and docs.

	* gst/gstutils.c: (gst_element_state_change_return_get_name):
	Improve debugging.

2007-02-28  Wim Taymans  <wim@fluendo.com>

	* gst/gstelement.c: (gst_element_message_full),
	(gst_element_set_locked_state), (gst_element_get_state_func),
	(gst_element_change_state):
	Handle INFO messages from the GST_ELEMENT_INFO macro as well.
	Documentation updates.
	Small code cleanups.

	* gst/gstmessage.c: (gst_message_new_info),
	(gst_message_parse_info):
	* gst/gstmessage.h:
	API: gst_message_new_info()
	API: gst_message_parse_info()
	Add INFO message create and parse code.

2007-02-28  Wim Taymans  <wim@fluendo.com>

	* gst/gstbin.c: (bin_query_min_max_init), (bin_query_latency_fold),
	(bin_query_latency_done):
	Also report the live parameter of a latency query.

2007-02-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* tests/check/generic/states.c: (GST_START_TEST), (states_suite):
	  Copy the current generic/states example from -base and adapt so
	  we can use the exact same code everywhere.
	  Check a STATES_IGNORE_ELEMENTS env var which can be used
	  to ignore certain element factories for this test, which is
	  what is being done in -base
	* tests/check/Makefile.am:
	  Mention this environment variable.

2007-02-27  Wim Taymans  <wim@fluendo.com>

	* docs/gst/gstreamer-sections.txt:
	* gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
	(gst_bus_timed_pop), (gst_bus_pop):
	* gst/gstbus.h:
	API: gst_bus_timed_pop()
	Implement gst_bus_timed_pop() to do a blocking timed wait for a
	message to arrive on the bus.

	* tests/check/gst/gstbus.c: (GST_START_TEST), (pop_thread),
	(gst_bus_suite):
	Two unit tests for new _timed_pop() function.

2007-02-23  Wim Taymans  <wim@fluendo.com>

	* gst/gstpipeline.c: (gst_pipeline_change_state),
	(gst_pipeline_provide_clock_func), (gst_pipeline_set_delay):
	Don't ref a NULL clock in _provide_clock_func().
	Don't allow an INVALID delay.
	Don't try to calculate base_time with an invalid start_time.
	Also distribute and notify a NULL clock when it was selected.

	* tools/gst-launch.c: (event_loop):
	Don't crash when a NULL clock was selected in the pipeline.

2007-02-23  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/design/Makefile.am:
	* docs/design/draft-missing-plugins.txt:
	* docs/random/draft-missing-plugins.txt:
	  Some small updates: update plugin system identifier prefix
	  ('gstreamer.net' to 'gstreamer'), mention our new install
	  API in libgstbaseutils rather than libgimme-codec, add
	  reference to the online docs.

2007-02-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* win32/common/config.h:
	  Pretty sure Bill never made a powerpc version.  Powerpc hackers,
	  use moap cl ci to only check in what is mentioned in the ChangeLog.

2007-02-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* docs/gst/gstreamer-sections.txt:
	* gst/gstelement.h:
	  Fix up documentation to link to the correct GstGError section.
	  Add GST_ELEMENT_INFO macro since someone else added a Info message.

2007-02-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* tools/gst-launch.c: (event_loop):
	  Make sure that we actually show the important message part of a
	  warning message.
	  No need to check if the gerror is not NULL to free; first of all
	  g_free accepts NULL; and second the default error handler would
	  segfault if gerror was NULL.

2007-02-21  Wim Taymans  <wim@fluendo.com>

	* docs/gst/gstreamer-sections.txt:
	Removed docs as well.

2007-02-21  Wim Taymans  <wim@fluendo.com>

	* gst/gstmessage.c: (gst_message_parse_duration):
	* gst/gstmessage.h:
	Remove new messages for release.

2007-02-20  Wim Taymans  <wim@fluendo.com>

	* docs/design/part-gstghostpad.txt:
	* gst/gstghostpad.c: (gst_ghost_pad_dispose),
	(gst_ghost_pad_new_full):
	Make the ghostpad a parent of the internal pad again for better backward
	compatibility. Don't write code that relies on this however.

	* gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_activate_push),
	(gst_pad_link_check_hierarchy):
	Require that parents should be GstElements in the hierarchy check.

2007-02-20  Wim Taymans  <wim@fluendo.com>

	* gst/gstbin.c: (bin_replace_message), (gst_bin_add_func),
	(gst_bin_change_state_func), (bin_query_min_max_init),
	(bin_query_latency_fold), (bin_query_latency_done),
	(gst_bin_query):
	Improve debug info.
	Implement latency query.

2007-02-20  Wim Taymans  <wim@fluendo.com>

	* docs/design/part-gstghostpad.txt:
	* gst/gstghostpad.c: (gst_ghost_pad_class_init),
	(gst_ghost_pad_internal_do_activate_push),
	(gst_ghost_pad_internal_do_activate_pull),
	(gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
	(gst_ghost_pad_do_link), (gst_ghost_pad_dispose),
	(gst_ghost_pad_new_full), (gst_ghost_pad_set_target):
	Do not set the internal pad as a parent anymore so we can avoid
	hierarchy linking errors when the ghostpad has no parent yet. This also
	fixes failed activation because of unlinked internal pads, which in
	turn fixes the impossible case where you have to activate a pad before
	you can add it to a running element.
	Also fix the docs.

	* gst/gstpad.c: (pre_activate), (post_activate),
	(gst_pad_set_active), (gst_pad_activate_pull),
	(gst_pad_activate_push), (gst_pad_check_pull_range):
	Add some more debug info.
	Mark activation mode in pre_activate so that we don't try to activate in
	endless loops. Fixes #385084.

2007-02-19  Wim Taymans  <wim@fluendo.com>

	* libs/gst/base/gstbasetransform.c: (gst_base_transform_init),
	(gst_base_transform_check_get_range):
	Implement a checkgetrange function instead of relying on the default
	core behaviour that assumes we can operate in pull mode if we have a
	getrange function. First step at fixing #385084.

2007-02-15  Stefan Kost  <ensonic@users.sf.net>

	* gst/gstchildproxy.h:
	* libs/gst/base/gstbasesink.h:
	* libs/gst/base/gstbasesrc.h:
	* libs/gst/base/gstbasetransform.h:
	More docs coverage and some ChangeLog surgery (add missing names)

2007-02-15  Wim Taymans  <wim@fluendo.com>

	* docs/design/part-TODO.txt:
	* docs/design/part-activation.txt:
	* docs/design/part-block.txt:
	* docs/design/part-buffering.txt:
	* docs/design/part-clocks.txt:
	* docs/design/part-element-source.txt:
	* docs/design/part-events.txt:
	* docs/design/part-gstbin.txt:
	* docs/design/part-gstbus.txt:
	* docs/design/part-gstpipeline.txt:
	* docs/design/part-live-source.txt:
	* docs/design/part-messages.txt:
	* docs/design/part-overview.txt:
	* docs/design/part-qos.txt:
	* docs/design/part-query.txt:
	* docs/design/part-states.txt:
	* docs/design/part-trickmodes.txt:
	Some doc updates. Start renaming from stream_time to running_time where
	it was used wrongly.

2007-02-15  Wim Taymans  <wim@fluendo.com>

	* libs/gst/base/gstbasesrc.c: (gst_base_src_default_query):
	Answer LATENCY query.

2007-02-15  Wim Taymans  <wim@fluendo.com>

	* tests/check/gst/gstevent.c: (event_probe), (test_event),
	(GST_START_TEST):
	Improve debugging.

2007-02-15  Wim Taymans  <wim@fluendo.com>

	* gst/gstpad.c: (gst_pad_get_internal_links_default),
	(gst_pad_dispatcher):
	Improve debugging of default pad dispatcher and query functions.

2007-02-15  Wim Taymans  <wim@fluendo.com>

	* docs/gst/gstreamer-sections.txt:
	Remove old unused method.

2007-02-13  Wim Taymans  <wim@fluendo.com>

	* tests/check/gst/gstsegment.c: (GST_START_TEST):
	Fix check

2007-02-13  Wim Taymans  <wim@fluendo.com>

	* docs/design/part-seeking.txt:
	Some small update.

	* gst/gstsegment.c: (gst_segment_set_seek):
	Revert old bogus change that should make seeking work again.

2007-02-13  Stefan Kost  <ensonic@users.sf.net>

	* docs/random/ensonic/dynlink.txt:
	* docs/random/ensonic/interfaces.txt:
	* docs/random/ensonic/receipies.txt:
	  Possible dynamic reconnection api, plus some type fixes the other two
	  docs.

2007-02-13  Sebastian Dröge  <slomo@circular-chaos.org>

	* plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
	* plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
	Also check for an absolute path following file:// in the filesrc
	element. Remove redundant check and call g_path_is_absolute() on the
	unescaped location.

2007-02-13  Stefan Kost  <ensonic@users.sf.net>

	* docs/design/draft-klass.txt:
	  Add existing category analysis.
	  
	* gst/gstcaps.c:
	  Fix doc example, framerate is a fraction.

2007-02-12  Stefan Kost  <ensonic@users.sf.net>

	* configure.ac:
	* docs/gst/Makefile.am:
	* docs/libs/Makefile.am:
	* docs/plugins/Makefile.am:
	  Add crossreferences to glib/gobject docs.

2007-02-12  Wim Taymans  <wim@fluendo.com>

	* docs/design/draft-latency.txt:
	Small update.

	* docs/libs/gstreamer-libs-sections.txt:
	* libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
	(gst_base_sink_get_latency), (gst_base_sink_query_latency),
	(gst_base_sink_wait_clock), (gst_base_sink_send_qos),
	(gst_base_sink_perform_qos), (gst_base_sink_queue_object_unlocked),
	(gst_base_sink_chain_unlocked), (gst_base_sink_send_event),
	(gst_base_sink_get_position), (gst_base_sink_query),
	(gst_base_sink_change_state):
	* libs/gst/base/gstbasesink.h:
	API: gst_base_sink_query_latency() to let subclasses query the upstream
	latency.
	API: gst_base_sink_get_latency() to let subclasses query the configured
	latency in the sink.
	Implement query and set latency.
	Update some docs.
	As spotted by Will Newton <will dot newton at gmail dot com>: Make sure we
	don't continue preroll when we are flushing. Fixes #405284.

	* tests/check/pipelines/stress.c: (change_state_timeout),
	(quit_timeout), (GST_START_TEST), (stress_suite):
	Test for #405284.

2007-02-09  Tim-Philipp Müller  <tim at centricular dot net>

	Patch by: René Stadler <mail at renestadler de>

	* docs/gst/gstreamer-sections.txt:
	* gst/gsttaglist.c: (_gst_tag_initialize):
	* gst/gsttaglist.h:
	  API: add GST_TAG_REFERENCE_LEVEL (#403597).

2007-02-11  Stefan Kost  <ensonic@users.sf.net>

	* docs/libs/Makefile.am:
	  Fix path to core docs.

	* gst/gstbin.c: (gst_bin_get_by_interface),
	(gst_bin_iterate_all_by_interface):
	  Refix docs by also renaming 'interface' to 'iface' in implementation.

	* docs/gst/gstreamer-sections.txt:
	* gst/gstcaps.c:
	* gst/gstchildproxy.c: (gst_child_proxy_base_init):
	* gst/gstchildproxy.h:
	* gst/gstelementfactory.c:
	* gst/gstpadtemplate.h:
	* libs/gst/controller/gstcontroller.c:
	(gst_controlled_property_new):
	  Document more.

2007-02-10  Sébastien Moutte  <sebastien@moutte.net>

	* gst/gstbin.h:(gst_bin_get_by_interface),
	(gst_bin_iterate_all_by_interface):
	Replace interface parameter name by iface as interface is 
	a reserved keyword in Visual Studio for C++ projects so it removes
	a build error for application developpers using VS.
	* plugins/elements/gstfilesrc.c:(gst_file_src_uri_set_uri):
	Fix a bug on Windows in uri format check. Now the prefix checked
	is file:// and next we check if the path after file:// is absolute.
	* win32/common/libgstbase.def:
	* win32/common/libgstdataprotocol.def:
	* win32/common/libgstgstreamer.def:
	Add new exported functions.

2007-02-09  Andy Wingo  <wingo@pobox.com>

	* tests/check/pipelines/simple-launch-lines.c
	(simple_launch_lines_suite, test_tee): Disable tee test until I
	have time to fix it :-(

	* tests/check/Makefile.am (noinst_HEADERS): 
	* tests/check/libs/libsabi.c: 
	* tests/check/libs/struct_ppc32.h: Add ABI checks for PPC32.
	* tests/check/gst/gstabi.c: 
	* tests/check/gst/struct_ppc32.h: Add ABI checks for PPC32.

	* tests/check/pipelines/simple-launch-lines.c (test_tee): Add
	tests for push and pull tee behavior.

	* plugins/elements/gsttee.h: 
	* plugins/elements/gsttee.c: Describe has-sink-loop better, and
	mark as deprecated as well as unimplemented. It was a crack idea.
	Add support for tee operating in pull mode, off by default.

	* gst/gstregistryxml.c (load_feature, load_plugin): Drop some
	normal-case logs down to LOG, raise errors to WARNING.
	(gst_registry_xml_read_cache): Don't log before calling a function
	that logs.

	* gst/gstregistry.c (gst_registry_finalize): Less debug on program
	exit (registry finalize).
	(gst_registry_add_plugin, gst_registry_add_feature): No need for a
	DEBUG log when we emit signals that people don't even have the
	chance to connect to.
	(gst_registry_scan_path_level): Less logging in the normal case.

2007-02-05  Sebastian Dröge  <slomo@circular-chaos.org>

	Patch by: Michal Benes <michal dot benes at itonis dot tv>

	* plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
	Correctly generate EOS for non-seekable files. We don't have a total
	length for them and would get an unexpected end of file if we only
	special-cased for regular files. (Fixes: #404569)

2007-02-05  Sebastian Dröge  <slomo@circular-chaos.org>

	* tests/check/elements/filesrc.c: (GST_START_TEST),
	(filesrc_suite):
	Add unit test for the GstURIHandler interface in filesrc. This also
	tests the newly added file://localhost/foo/bar support.

2007-02-04  Tim-Philipp Müller  <tim at centricular dot net>

	* gst/gstelementfactory.h:
	  The klass string is not a hierarchy. Add reference to the design doc
	  for more information and common types.

2007-02-02  Wim Taymans  <wim@fluendo.com>

	* gst/gstquery.c: (gst_query_new_latency):
	Remove old structure field.

2007-02-02  Stefan Kost  <ensonic@users.sf.net>

	* tools/gst-launch.1.in:
	  Give example for network streaming (#351998)

2007-02-02  Wim Taymans  <wim@fluendo.com>

	* docs/gst/gstreamer-sections.txt:
	Add docs for new methods.

	* gst/gstevent.c: (gst_event_new_latency),
	(gst_event_parse_latency):
	* gst/gstevent.h:
	Add new LATENCY event to configure latency in a pipeline.
	API: gst_event_new_latency
	API: gst_event_parse_latency

	* gst/gstmessage.c: (gst_message_new_buffering),
	(gst_message_new_lost_preroll), (gst_message_new_prerolled),
	(gst_message_new_latency), (gst_message_parse_buffering),
	(gst_message_parse_lost_preroll):
	* gst/gstmessage.h:
	Added messages used in draft-latency.
	API: gst_message_new_lost_preroll
	API: gst_message_parse_lost_preroll
	API: gst_message_new_prerolled
	API: gst_message_new_latency

	* gst/gstquery.c: (gst_query_new_latency), (gst_query_set_latency),
	(gst_query_parse_latency):
	* gst/gstquery.h:
	Implemented new latency query as in design doc.
	API: gst_query_new_latency
	API: gst_query_set_latency
	API: gst_query_parse_latency

2007-02-02  Wim Taymans  <wim@fluendo.com>

	* docs/design/draft-latency.txt:
	Slight redesign to allow for dynamic latency adjustments.

	* docs/design/part-negotiation.txt:
	Fix some typos.

2007-02-02  Sebastian Dröge  <slomo@circular-chaos.org>

	reviewed by: Wim Taymans <wim@fluendo.com>

	* plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
	* plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
	Allow file://localhost/foo/bar URLs and correctly fail for every other
	hostname that one sets. This was gnomevfssrc is linked for those if
	installed as it can handle it (#403172)

2007-02-01  Sebastian Dröge  <slomo@circular-chaos.org>

	reviewed by: Tim-Philipp Müller <tim at centricular dot net>

	* libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
	(unref_data), (gst_collect_pads_add_pad_full):
	* libs/gst/base/gstcollectpads.h:
	Don't put the previously added destroy notify in the GstCollectData
	struct as all it's padding is already used and we don't want to break
	ABI. Instead put in the pad's GObject data for now. This should be
	cleaned up for 0.11 (#402393).

2007-02-01  Sebastian Dröge  <slomo@circular-chaos.org>

	reviewed by: Wim Taymans <wim@fluendo.com>

	* docs/libs/gstreamer-libs-sections.txt:
	* libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
	(unref_data), (gst_collect_pads_add_pad),
	(gst_collect_pads_add_pad_full):
	* libs/gst/base/gstcollectpads.h:
	API: Add function to specify a destroy notification for custom
	GstCollectData when adding new pads in GstCollectPads (#402393).

2007-02-01  Tim-Philipp Müller  <tim at centricular dot net>

	* po/sv.po:
	  Update Swedish translation (#378255).

2007-01-31  Stefan Kost  <ensonic@users.sf.net>

	* docs/design/draft-klass.txt:
	  Fix the previous change, this is a list of categories and not a hierarchy.

2007-01-31  Stefan Kost  <ensonic@users.sf.net>

	* docs/design/draft-klass.txt:
	  Add info about how to get a list of used classes.

2007-01-30  Tim-Philipp Müller  <tim at centricular dot net>

	* plugins/elements/gsttypefindelement.c:
	(gst_type_find_element_chain_do_typefinding),
	(gst_type_find_element_change_state):
	  Don't leak found caps in chain function (no idea why that never
	  showed up as a leak anywhere).

2007-01-30  Stefan Kost  <ensonic@users.sf.net>

	* gst/gstplugin.h:
	  Fix and expand GstPluginDesc API docs.

2007-01-29  Stefan Kost  <ensonic@users.sf.net>

	* gst/gstcaps.c:
	* gst/gstelementfactory.c:
	* gst/gstpadtemplate.h:
	  api doc fixes

	* libs/gst/controller/gstcontroller.c:
	(gst_controlled_property_new):
	* tests/examples/controller/audio-example.c:
	  comment fixes

2007-01-29  Stefan Kost  <ensonic@users.sf.net>

	* configure.ac:
	  comment about refining the xml deps

	* docs/manuals.mak:
	  comments about moving away from jade for docs
	
	* gst/gst.c:
	  recommit the ifdefs to use the binary registry
	
	* gst/gstbin.c: (gst_bin_change_state_func):
	  this break is obsolete

	* gst/gstelementfactory.h:
	  better GST_ELEMENT_DETAILS docs, add comment about translation

	* gst/gstinfo.h:
	  remove eol slash

	* gst/gstobject.c: (gst_signal_object_get_type):
	  add G_UNLIKELY as usual

	* gst/gstpad.c: (gst_pad_event_default):
	  add fall trhu comment

	* gst/gstregistrybinary.c: (gst_registry_binary_write),
	(gst_registry_binary_initialize_magic),
	(gst_registry_binary_save_string),
	(gst_registry_binary_save_pad_template),
	(gst_registry_binary_save_feature),
	(gst_registry_binary_save_plugin),
	(gst_registry_binary_write_cache),
	(gst_registry_binary_check_magic),
	(gst_registry_binary_load_pad_template),
	(gst_registry_binary_load_feature),
	(gst_registry_binary_load_plugin),
	(gst_registry_binary_read_cache):
	  comment typo and formatting

	* gst/gstutils.c: (gst_element_state_get_name),
	(gst_element_state_change_return_get_name):
	  remove obsolete breaks

	* gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
	  add FIXME 0.11 and remove cpp comment

2007-01-29  Edward Hervey  <edward@fluendo.com>

	* gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
	Fix print statement in an even more portable way.

2007-01-29  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/gst/gstreamer-sections.txt:
	* gst/gstutils.h:
	  API: add GST_ROUND_DOWN_* macros (#401781).

2007-01-27  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/gst/gstreamer.types.in:
	* gst/gstregistry.c: (gst_registry_class_init):
	  Document registry signals and make gtk-doc pick them up (#401381).

2007-01-26  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/pwg/building-testapp.xml:
	  Add some audioconverts and audioresample to the pipeline, and some
	  more comments and error handling.

2007-01-26  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/manual/manual.xml:
	* docs/pwg/pwg.xml:
	  Fix typo (#400987).

2007-01-26  Wim Taymans  <wim@fluendo.com>

	* gst/gstcaps.c: (gst_static_caps_get):
	Init caps flags too.

2007-01-25  Sebastian Dröge  <slomo@circular-chaos.org>

	Patch by: Jindrich Makovicka <jindrich.makovick at itonis dot tv>

	* plugins/elements/gstfilesrc.c: (gst_file_src_start):
	If not using mmap'ed files try to seek to the end instead of the
	start to determine whether we can seek at all. This fixes the case
	of 2GB+ files over NFS, where seeks in the first 2GB can succeed but
	seeks for everything afterwards fail. Fixes #400656

2007-01-25  Wim Taymans  <wim@fluendo.com>

	* gst/gstcaps.c: (_gst_caps_free), (gst_static_caps_get):
	Add some refcount debugging.
	Make gst_static_caps_get threadsafe, which is needed when autoplugging
	in multiple streaming threads.

2007-01-25  Wim Taymans  <wim@fluendo.com>

	Patch by: David Schleef <ds at schleef dot org>

	* docs/libs/gstreamer-libs-sections.txt:
	* libs/gst/base/gstadapter.c: (gst_adapter_copy):
	* libs/gst/base/gstadapter.h:
	API: gst_adapter_copy() that can reduce the amount of memcpy when
	getting data from the adapter. Fixes #388201.

2007-01-25  Edward Hervey  <edward@fluendo.com>

	* gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
	In print statements, "%x" is for guint. Fixes build on macosx.

2007-01-24  Edward Hervey  <edward@fluendo.com>

	* plugins/elements/gstmultiqueue.c:
	(gst_multi_queue_loop):
	Small fix.
	(single_queue_overrun_cb), (single_queue_underrun_cb),
	(single_queue_check_full), (gst_single_queue_new):
	Implement single queue growth system.
	This uses the extra-size properties, and will grow single queues by
	that much if one goes full whereas there are others empty. This is
	called extra-mode in the code.
	When a single queue's levels go back below the initial max-size
	limits, it is no longer in extra-mode. This is to ensure we don't
	consume too much memory.
	Fixes #399875

2007-01-23  Tim-Philipp Müller  <tim at centricular dot net>

	* gst/gst.c: (gst_init_get_option_group):
	  Make warning about late g_thread_init() calls a bit more explicit,
	  so that it's more obvious to application developers what they need
	  to do if a user files a bug against their application.

2007-01-22  Edward Hervey  <edward@fluendo.com>

	* plugins/elements/gstmultiqueue.c:
	(gst_multi_queue_src_activate_push), (gst_single_queue_new):
	Remove previous hack of unsetting the flushing flag for the source pad
	instead of activating it. Instead, fix the source pad activate function
	so that it no longer depends on having a parent set or not.

2007-01-22  Tim-Philipp Müller  <tim at centricular dot net>

	Patch by: Carlos Sanmartin Dominguez <csanmartin@igalia.com>

	* docs/manual/basics-bus.xml:
	  Fix example code, gst_element_unref() doesn't exist any longer.

2007-01-21  Tim-Philipp Müller  <tim at centricular dot net>

	Patch by: Mark Nauwelaerts <manauw at skynet be>

	* gst/gstpad.c:
	  Fix two docs typoes (#399094).

2007-01-19  Edward Hervey  <edward@fluendo.com>

	* docs/faq/gst-uninstalled:
	Add gst-plugins-base/gst/utils/ to LD_LIBRARY_PATH so that plugins
	depending on libgstbaseutils can work in uninstalled environment.

2007-01-18  Stefan Kost  <ensonic@users.sf.net>

	* gst/gsttaglist.h:
	* gst/gsttagsetter.c:
	Add more docs regarding tag merge-modes and when to send tags. Fix 'since'
	statement for new tag.

2007-01-17  Edward Hervey  <edward@fluendo.com>

	* plugins/elements/gstmultiqueue.c: (gst_single_queue_new):
	When dynamically creating single queues, activate sinkpad before adding
	it.
	We should be doing the same thing for the source pad, but we can't
	since it would call a method which needs the parent to be set in order
	to work propertly. Instead of activating the source pad, we just unset
	the flushing flag, which is the minimal requirement for adding a pad
	to an element in a state greater than READY.

2007-01-17  Edward Hervey  <edward@fluendo.com>

	* docs/faq/gst-uninstalled:
	Add DYLD_LIBRARY_PATH declarations so we can also use this script on
	Mac OS X.

2007-01-17  Tim-Philipp Müller  <tim at centricular dot net>

	* tests/check/gst/gstabi.c:
	* tests/check/gst/struct_hppa.h:
	* tests/check/libs/libsabi.c:
	* tests/check/libs/struct_hppa.h:
	  Add ABI structs for HPPA (see #393796).

2007-01-16  Tim-Philipp Müller  <tim at centricular dot net>

	* libs/gst/check/gstcheck.c: (gst_check_abi_list):
	  Actually write ABI structs to the file specified in the GST_ABI
	  environment variable, as the message we print claims we would.

2007-01-15  Stefan Kost  <ensonic@users.sf.net>

	* tests/check/gst/gsttask.c:
	  Fix header comment.

2007-01-15  Stefan Kost  <ensonic@users.sf.net>

	* gst/gsttaglist.c: (_gst_tag_initialize):
	  Change tag type from STRING to DOUBLE. Apply ChangeLog surgery for my
	  previous two entries.

2007-01-15  Stefan Kost  <ensonic@users.sf.net>

	* docs/gst/gstreamer-sections.txt:
	* gst/gsttaglist.c: (_gst_tag_initialize):
	* gst/gsttaglist.h:
	  Add tag support for beat-per-minute.

2007-01-15  Stefan Kost  <ensonic@users.sf.net>

	* gst/gstregistrybinary.c: (gst_registry_binary_write),
	(gst_registry_binary_initialize_magic),
	(gst_registry_binary_save_string), (gst_registry_binary_make_data),
	(gst_registry_binary_save_pad_template),
	(gst_registry_binary_save_feature),
	(gst_registry_binary_save_plugin),
	(gst_registry_binary_write_cache),
	(gst_registry_binary_check_magic),
	(gst_registry_binary_load_pad_template),
	(gst_registry_binary_load_feature),
	(gst_registry_binary_load_plugin),
	(gst_registry_binary_read_cache):
	* gst/gstregistrybinary.h:
	  Use glib types, cleanup comments, impement interfaces and uri-types.

2007-01-13  Andy Wingo  <wingo@pobox.com>

	* gst/gstpad.c (gst_pad_get_range, gst_pad_pull_range): Allow
	getrange() to return buffers with other caps, while we fix
	demuxers and typefind, or otherwise change part-negotiation.txt.

2007-01-12  Andy Wingo  <wingo@pobox.com>

	* libs/gst/base/gstbasetransform.c (gst_base_transform_activate):
	Factor start/stop into this private function instead of partially
	in activate functions and partially in the change_state function.
	Fixes setup before the element has changed from READY->PAUSED, as
	is the case in pull-mode pipelines.
	(gst_base_transform_sink_activate_push)
	(gst_base_transform_src_activate_pull): Refactor to use
	gst_base_transform_activate().
	(gst_base_transform_change_state): Removed, not needed any more.

	* libs/gst/base/gstbasesink.c (gst_base_sink_negotiate_pull):
	Truncate before fixating.
	
	* libs/gst/base/gstbasesink.c (gst_base_sink_negotiate_pull):
	Don't set_caps() if the result of fixating is ANY, as it's not
	supported, and not necessary in the case of a link with no
	template caps on either side. Fixes tests/check/libs/basesrc in
	some pull-mode tests.

	* libs/gst/base/gstbasetransform.c (_GstBaseTransformPrivate):
	(gst_base_transform_init, gst_base_transform_sink_activate_push)
	(gst_base_transform_src_activate_pull): 
	Track the activation mode.
	(gst_base_transform_setcaps): In pull mode, when activating the
	src pad, after activating the sink pad, activate the sink pad's
	peer, as discussed in part-negotiation.txt.

	* libs/gst/base/gstbasesrc.h: 
	* libs/gst/base/gstbasesrc.c (gst_base_src_fixate): Add fixate
	vmethod, as in basesink.

	* libs/gst/base/gstbasesink.h: Reformat docs, add fixate vmethod.

	* libs/gst/base/gstbasesink.c (gst_base_sink_pad_setcaps): In pull
	mode, first proxy the setcaps to the peer pad.
	(gst_base_sink_pad_fixate): Add a fixate function that calls the
	new fixate vmethod.
	(gst_base_sink_default_activate_pull): Rename from
	gst_base_sink_activate_pull.
	(gst_base_sink_negotiate_pull): New function, performs negotiation
	in pull mode before calling ::activate_pull().
	(gst_base_sink_pad_activate_pull): Actually call the activate_pull
	vmethod instead of the default implementation. I have no idea how
	this worked before. Negotiate before calling activate_pull.

	* gst/gstpad.c (gst_pad_activate_pull): Refuse to activate unlinked
	sink pads in pull mode. In addition to being correct, fixes
	filesrc ! decodebin ! identity ! fakesink.
	(gst_pad_get_range, gst_pad_pull_range): Don't call
	gst_pad_set_caps() if the caps changes; instead error out with
	GST_FLOW_NOT_NEGOTIATED, as discussed in part-negotiation.txt.

2007-01-12  Andy Wingo  <wingo@pobox.com>

	* docs/design/part-negotiation.txt: Update with more policy.

2007-01-12  Tim-Philipp Müller  <tim at centricular dot net>

	* libs/gst/check/gstbufferstraw.h:
	* libs/gst/check/gstcheck.h:
	  Add G_BEGIN_DECLS and G_END_DECLS. Move GST_CHECK_MAIN where it
	  belongs.

2007-01-12  Tim-Philipp Müller  <tim at centricular dot net>

	* tests/check/Makefile.am:
	* tests/check/gst/.cvsignore:
	* tests/check/gst/gsttagsetter.c: (gst_dummy_enc_add_interfaces),
	(gst_dummy_enc_base_init), (gst_dummy_enc_class_init),
	(gst_dummy_enc_init), (tag_list_foreach), (tag_setter_list_length),
	(GST_START_TEST), (gst_tag_setter_suite):
	  Add minimal unit test for beforementioned GstTagSetter bug.

2007-01-12  Tim-Philipp Müller  <tim at centricular dot net>

	Patch by: René Stadler <mail at renestadler dot de>

	* gst/gsttagsetter.c: (gst_tag_setter_merge_tags):
	  gst_tag_list_merge() returns a new list, so it's not the best idea
	  to ingore its return value. Effectively meant that tags could only
	  be merged on a GstTagSetter once using _merge_tags(). Fixes #395554.
	  Also add function guard to require a non-NULL taglist as input (has
	  always been so due to gst_tag_list_copy(), just making it explicit).

2007-01-11  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/random/draft-missing-plugins.txt:
	  Some additions: mention new API that is supposed to be used at the
	  various stages; short blob about new gst-inspect introspection
	  option; mention potential future problem with plugins that have
	  a dynamic list of elements (such as ladspa, pitfdll, libvisual).

2007-01-11  Tim-Philipp Müller  <tim at centricular dot net>

	* tools/gst-inspect.c:
	(print_plugin_automatic_install_info_codecs),
	(print_plugin_automatic_install_info_protocols),
	(print_plugin_automatic_install_info), (main):
	Add --print-plugin-auto-install-info option to gst-inspect, so we can
	introspect plugin files and get machine-parsable output that corresponds
	to the last bit of the missing-plugin installer string (small gotcha:
	doesn't take into account ranks).

2007-01-11  Stefan Kost  <ensonic@users.sf.net>

	* configure.ac:
	* docs/gst/gstreamer-sections.txt:
	* gst/Makefile.am:
	* gst/gstregistry.c: (gst_registry_lookup_feature_locked),
	(gst_registry_lookup_locked):
	* gst/gstregistry.h:
	* gst/gstregistrybinary.c: (gst_registry_binary_write),
	(gst_registry_binary_initialize_magic),
	(gst_registry_binary_save_string),
	(gst_registry_binary_save_pad_template),
	(gst_registry_binary_save_feature),
	(gst_registry_binary_save_plugin),
	(gst_registry_binary_write_cache),
	(gst_registry_binary_check_magic),
	(gst_registry_binary_load_pad_template),
	(gst_registry_binary_load_feature),
	(gst_registry_binary_load_plugin),
	(gst_registry_binary_read_cache):
	* gst/gstregistrybinary.h:
	* gst/gstregistryxml.c: (load_feature),
	(gst_registry_xml_read_cache):
	  commit binary registry (disabled by default, see #359653)

2007-01-11  Tim-Philipp Müller  <tim at centricular dot net>

	* tests/check/gst/gstpad.c: (test_get_allowed_caps):
	  Fix 'make check' too.

2007-01-10  Andy Wingo  <wingo@pobox.com>

	* docs/design/part-negotiation.txt: Fix a typo, add a couple
	notes.
	
	* docs/design/part-negotiation.txt: Update with, um, one way that
	pull-mode negotiation might work?

	* gst/gstpad.h: 
	* gst/gstpad.c (gst_pad_get_allowed_caps): Remove the restriction
	that the pad must be a src pad; makes sense to call it the other
	way in pull mode, and the logic is symmetric anyway.

2007-01-10  Tim-Philipp Müller  <tim at centricular dot net>

	* plugins/elements/gstfilesink.c:
	  Include <stdio.h> for fseeko().

2007-01-10  Wim Taymans  <wim@fluendo.com>

	* gst/gstevent.c:
	* gst/gstevent.h:
	Reserve LATENCY event.

2007-01-09  Wim Taymans  <wim@fluendo.com>

	* docs/design/draft-latency.txt:
	Updates.

2007-01-09  Wim Taymans  <wim@fluendo.com>

	* docs/design/draft-latency.txt:
	Updates.

	* gst/gstelement.h:
	* gst/gststructure.c:
	* gst/gsttrace.c:
	Small typo fixes.

2007-01-09  Tim-Philipp Müller  <tim at centricular dot net>

	* tests/check/.cvsignore:
	  Ignore test-registry.xml as well.

2007-01-09  Wim Taymans  <wim@fluendo.com>

	* libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
	unref data at the end when we are done with the pad.

2007-01-08  Tim-Philipp Müller  <tim at centricular dot net>

	* 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  Tim-Philipp Müller  <tim at centricular dot net>

	* 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-07  Sébastien Moutte  <sebastien@moutte.net>

	* win32/common/libgstreamer.def: 
	  Add new exported function.
	* win32/vs6/libgstbase.dsp: 
	  Add gstdataqueue.c to the build.
	* win32/vs6/libgstcoreelements.dsp:
	  Add gstmultiqueue.c to the build.
	
2007-01-06  Andy Wingo  <wingo@pobox.com>

	* libs/gst/base/gstbasesink.h: New GstBaseSinkClass vmethod,
	activate_pull(), providing for a way to specialize the process of
	spawning a thread to pull on the sink pad. There is a default
	implementation.

	* libs/gst/base/gstbasesink.c (gst_base_sink_pad_activate_pull)
	(gst_base_sink_pad_activate_push, gst_base_sink_pad_activate)
	(gst_base_sink_init): Renamed pad activation functions (inserting
	"_pad" in their names). Refactor to use the new activate_pull
	vmethod, as appropriate.
	(gst_base_sink_class_init, gst_base_sink_activate_pull): Set the
	default activate_pull function to start a task pulling from the
	sink pad, as before.

	* 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-05  Tim-Philipp Müller  <tim at centricular dot net>

	* 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  Tim-Philipp Müller  <tim at centricular dot net>

	* tools/gst-inspect.c: (main):
	* tools/gst-launch.c: (main):
	* tools/gst-typefind.c: (main):
	* tools/gst-xmlinspect.c: (main):
	  Call g_thread_init() really really early, before any other GLib
	  function (see #342564 and recent discussion on gtk-devel-list).

2007-01-05  Tim-Philipp Müller  <tim at centricular dot net>

	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  Tim-Philipp Müller  <tim at centricular dot net>

	* libs/gst/base/gstbasesrc.c: (gst_base_src_activate_push):
	  Change some GST_ERROR_OBJECT that aren't really errors to
	  GST_WARNING_OBJECT in order to reduce terminal spam.

2007-01-04  Stefan Kost  <ensonic@users.sf.net>

	* tests/check/Makefile.am:
	  disable test again, as there seem to be still race problems

2007-01-04  Stefan Kost  <ensonic@users.sf.net>

	* tests/check/Makefile.am:
	* tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
	(GST_START_TEST), (queue_suite):
	  enable queue test again, add tests for the leaky behaviour

2007-01-02  Tim-Philipp Müller  <tim at centricular dot net>

	* configure.ac:
	* tests/examples/Makefile.am:
	  Compile adapter test/example only if the required headers are
	  available (fixes #391915).

2007-01-01  David Schleef  <ds@schleef.org>

	* 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)

2006-12-26  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/random/draft-missing-plugins.txt:
	  Some small additions and clarifications.

2006-12-26  Tim-Philipp Müller  <tim at centricular dot net>

	* 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-21  Stefan Kost  <ensonic@users.sf.net>

	* tests/check/.cvsignore:
	* tests/check/Makefile.am:
	  sync .cvsignome and CLEANFILES

2006-12-21  Stefan Kost  <ensonic@users.sf.net>

	* tests/check/Makefile.am:
	  fix distcheck

2006-12-21  Stefan Kost  <ensonic@users.sf.net>

	* 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  Stefan Kost  <ensonic@users.sf.net>

	* tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
	(GST_START_TEST):
	  fix race in underrun test

2006-12-21  Stefan Kost  <ensonic@users.sf.net>

	* tests/check/elements/.cvsignore:
	  ignore more

	* tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
	(GST_START_TEST):
	  try to narrow test failure

2006-12-21  David Schleef  <ds@schleef.org>

	* plugins/elements/gstfakesrc.c:
	  Use g_random_int_range(), since it produces better random
	  numbers in a range than almost-correct floating point code.

2006-12-21  Stefan Kost  <ensonic@users.sf.net>

	* libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
	(gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
	(gst_check_teardown_sink_pad):
	  do not automatically (de)activate pads

	* tests/check/Makefile.am:
	* tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
	(setup_queue), (cleanup_queue), (GST_START_TEST), (queue_suite):
	  add new, yet simple tests for queue

	* tests/check/elements/fakesrc.c: (cleanup_fakesrc):
	* tests/check/elements/fdsrc.c: (cleanup_fdsrc):
	* tests/check/elements/filesrc.c: (cleanup_filesrc),
	(GST_START_TEST):
	* tests/check/elements/identity.c: (cleanup_identity):
	  consistent pad (de)activation

2006-12-20  Tim-Philipp Müller  <tim at centricular dot net>

	Patch by: Sebastian Dröge  <slomo ubuntu com>

	* libs/gst/base/gstcollectpads.c:
	  Fix two doc typos (#387866).

2006-12-19  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/manual/advanced-dparams.xml:
	  Fix typo (g_object_control_properties() doesn't exist).

2006-12-19  Edward Hervey  <edward@fluendo.com>

	* 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  Tim-Philipp Müller  <tim at centricular dot net>

	* 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-18  Stefan Kost  <ensonic@users.sf.net>

	* plugins/elements/gstqueue.c: (queue_leaky_get_type):
	  Correct docs of queue, add more detail and crosslink it more.

2006-12-16  Tim-Philipp Müller  <tim at centricular dot net>

	* plugins/elements/gstidentity.c: (gst_identity_check_perfect):
	  Print additional debug info when the stream isn't perfectly
	  timestamped; don't try to use invalid durations.

2006-12-16  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/design/Makefile.am:
	  Dist new design docs.

2006-12-16  Wim Taymans  <wim@fluendo.com>

	Patch by: Sjoerd Simons <sjoerd at luon dot net>

	* libs/gst/base/gstcollectpads.c: (ref_data), (unref_data),
	(gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
	(gst_collect_pads_stop), (gst_collect_pads_event),
	(gst_collect_pads_chain):
	* libs/gst/base/gstcollectpads.h:
	Add refcounting to the collectpads data so we can track when it's safe
	to free the data. Fixes #383382.

2006-12-15  Wim Taymans  <wim@fluendo.com>

	* libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
	(gst_collect_pads_remove_pad):
	Automatically activate/deactivate pads when they are added to a
	started/stoped collectpads.

2006-12-15  Wim Taymans  <wim@fluendo.com>

	* 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  Wim Taymans  <wim@fluendo.com>

	* 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  Wim Taymans  <wim@fluendo.com>

	* gst/gstelement.c: (gst_element_set_state_func):
	Small documentation fixes.

2006-12-15  Wim Taymans  <wim@fluendo.com>

	* docs/design/draft-latency.txt:
	Checked in draft for handling latency in pipelines.

2006-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* gstreamer.doap:
	* gstreamer.spec.in:
	  adding .doap file

2006-12-14  Tim-Philipp Müller  <tim at centricular dot net>

	* 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-13  Edward Hervey  <edward@fluendo.com>

	* docs/manual/basics-bus.xml:
	No, gst_main_loop does not exist. Its g_main_loop.
	Discovered by somebody who abused the copy-paste technique of coding :)

2006-12-13  Tim-Philipp Müller  <tim at centricular dot net>

	* gst/gstghostpad.c:
	  Log ghostpad debug stuff to the GST_PADS category as well rather
	  than just to the default category.

2006-12-12  Tim-Philipp Müller  <tim at centricular dot net>

	* 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-11  Tim-Philipp Müller  <tim at centricular dot net>

	* docs/gst/running.xml:
	  Document GST_REGISTRY_FORK and GST_DEBUG_NO_COLOR
	  environment variables.

2006-12-09  Jan Schmidt  <thaytan@mad.scientist.com>

	* tests/check/gst/gstbin.c: (GST_START_TEST):
	It is acceptable to have a refcount of 2 or 3 at this point in the
	test, because the pipeline might be just posting its state_change
	message. The next line then waits for that message to appear using
	bus_poll, so that should be fine too.

2006-12-09  Jan Schmidt  <thaytan@mad.scientist.com>

	* 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

2005-03-08  Wim Taymans  <wim@fluendo.com>

	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-07  Jan Schmidt  <thaytan@mad.scientist.com>

	* 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  Wim Taymans  <wim@fluendo.com>

	* libs/gst/base/gstbasesink.c: (gst_base_sink_event),
	(gst_base_sink_get_position):
	Improve debugging of events.

2006-12-07  Wim Taymans  <wim@fluendo.com>

	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  Wim Taymans  <wim@fluendo.com>

	* gst/gstbin.c: (gst_bin_query):
	Add some more docs about the POSITION query.

2006-12-07  Jan Schmidt  <thaytan@mad.scientist.com>

	* configure.ac:
	Bump version nano - back to CVS.