2008-06-14  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-buffer.c (get_data): return nil if size is zero.

	* test/run-test.rb: use glib/test/glib-test-init.rb.

2008-05-23  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst.c (Gst.check_version?): add.

	* test/test_thread_handling.rb: include missing GstTestUtils.

	* test/run-test.rb: use which not --version to detect make.

2008-05-23  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-bin.c: Add Gst::Bin#to_dot_file and
	Gst::Bin#to_dot_file_with_ts to dump pipelines to dot files

2008-05-21  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-bus.c: Don't use ALLOC to allocate data that's going
	to be freed with g_free, use g_new instead.

2008-05-21  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element.c: Actually read the data coming from the notify fd.
	As rb_wait_for_fd can return before there is data available on the fd.

2008-05-21  Kouhei Sutou  <kou@cozmixng.org>

	* test/test_thread_handling.rb
	(TestThreadHandling#test_state_changes): fix indentation.

	* test/gst-test-utils.rb (GstTestUtils#only_gst_version): add.

	* test/test_thread_handling.rb (TestThreadHandling): require
	GStreamer 0.10.16 for using identity element's signal-handoffs
	property.

2008-05-20  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst.c: don't use rb_argv variable name for ruby 1.9.x.
	Patch by Joao Pedrosa. Thanks!!!

2008-05-18  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element.c: gst_element_get_request_pad gives us a ref. So
	GST_PAD2RVAL_UNREF need to be used to avoid leaking refs

2008-05-18  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-bin.c: Call G_CHILD_REMOVE when removing elements from a bin

2008-05-18  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-buffer.c: use rb_str_new to implement Gst::Buffer#data. The data
	isn't a \0 terminated C string, so need to specify the size to copy

2008-05-15  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst.c (rb_gst_init): don't use global rb_argv.

2008-05-02  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-message.c: use GERROR2RVAL().

2008-04-30  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-bin.c: Add Gst::Bin#each_recurse and Gst::Bin#children_recurse
	which iterate/get all children of the bin and all its sub-bins recursively

2008-04-23  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-message.c: rbgerr_gerror2exception frees the passed error, don't
	free it again.

2008-04-21  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-pad.c: Implement Gst::Pad#set_active

2008-04-20  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-element.c: allocate memory instead of using local variable.

	* src/rbgst.h: remove garbages.

	* src/rbgst-element.c: cleanup.

	* test/test_element.rb: add tests for GstElement#query and
	GstElement#send_event.

2008-04-16  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-object.c: Implement a custom initialize that sinks the created
	GstObject

	* src/test_element.rb: Add a refcounting testcase for GstObject classes
	created inside ruby

2008-04-16  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element.c: Make Gst::Element#link_pads and
	Gst::Element#unlink_pads work like their C api counterparts (thus take source
	and sink names

	* src/rbgst-element.c: Implement Gst::Element#unlink

2008-04-16  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-ghost-pad.c: fix style.

	* src/rbgst.c (Init_gst_classes): fix style.

2008-04-16  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-ghost-pad.c, src/rbgst.c: Implement Gst::GhostPad

2008-04-16  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element.c: _raise instead of _bug where appropriate

2008-04-15  Kouhei Sutou  <kou@cozmixng.org>

	* test/test_event.rb: add.

	* src/rbgst-event.c: define class.

	* src/rbgst-event.c: add missing definition.

	* src/rbgst-event.c: fix style.

	* src/rbgst.c (Init_gst_classes):
	- remove a garbage.
	- fix style.

2008-04-15  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-event.c, src/rbgst.c, src/rbgst.h, src/rbgstevent.c: Add an
	implementation of Gst::Event

2008-04-15  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-x-overlay.c: fix style.

	* src/rbgst-x-overlay.c: fix wrong cast.

	* src/rbgst-x-overlay.c: rename from src/rbgstxoverlay.c.

	* src/rbgst-seek.c: define classes.
	* test/test_seek.rb: add.

	* src/rbgst-seek.c: fix style.

	* src/rbgst.c: fix style.

	* src/rbgst-query.c: fix style.

	* src/rbgst-pipeline.c: rename from src/rbgstpipeline.c.

2008-04-15  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgstxoverlay.c: Add Gst::XOverlay#set_xwindow_id_with_buswatch helper
	function. To properly set the xwindow id of an XOverlay one has to listen to
	its messages in sync. This is quite expensive to do in ruby, so do it in a C
	helper

2008-04-15  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgstpipeline.c: Fix typo

2008-04-15  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-seek.c, src/rbgst.c: Add seek flags and types definitions

2008-04-15  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-query.c, src/rbgst.c, src/rbgst.h: Add an implementation of
	Gst::Query

2008-04-15  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element.c: Spawn an extra thread to perform the get_state,
	set_state, query and send_event functions so the ruby interpreter thread c
	continue during these functions so it can handle signals which might be
	needed to complete these functions.
	* test/test_thread_handling.rb: Add test of to ensure state changes don't
	deadlock

2008-04-15  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgstelement.c, src/rbgst.h: Correct refcounting for Gst::Element#bus

2008-04-13  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst.c, src/rbgst-child-proxy.c: just define
	Gst::ChildProxy module. Need to implement it.

2008-04-12  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-element.c: readd Gst::Element#pads.

	* src/rbgst-element.c: state related methods are worked in another
	thread. Based on Sjoerd Simons' patch.

	* test/test_element.rb: add a test for state related methods.

	* sample/audio-player.rb: use [] instead of get_pad.

	* src/rbgst-pad.c:
	- cleanup.
	- add Gst::Pad#linked?.

	* src/rbgst.h (GST_CAPS2RVAL_UNREF), src/rbgst-caps.c
	(rbgst_ruby_object_from_gst_caps_with_unref): add.

	* test/test_pad.rb: add.

	* test/test_bin.rb: use Gst::Bin#get_child instead of [].

2008-04-12  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-pad.c: Let Gst::Pad.link return a
	Gst::Pad::LinkReturn. Add query, >>, negotiated_caps, set_caps,
	caps= and peer functions on Gst::Pad.

	* src/rbgs-pad.c: Fix pad refcounting in get_caps

2008-04-12  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-bin.c: Gst::Bin#[] => Gst::Bin#get_child.
	Suggested by Sjoerd Simons.

2008-04-12  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element.c: Make [] an alias of get_pad

2008-04-12  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-bin.c (rb_gst_bin_add): use RVAL2CBOOL not RTEST.

	* test/test_element.rb (TestElement#test_each_pad): add a test.

	* src/rbgst-element.c (rb_gst_element_each_pad): fix style.

	* src/rbgst.h: add GstPad <-> Ruby VALUE macro.

2008-04-12  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element.c: Implement Gst::Element.each_pad using a
	GstIterator to ensure thread safety. Remove the get_pads function
	as it can't be implemented safely.

2008-04-12  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-bin.c: Do G_CHILD_ADD on all elements added to the bin
	* src/rbgs-element.c: Do G_CHILD_ADD on all pads added to an element

2008-04-07  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-bin.c (rb_gst_bin_get): use iface instead of interface
	for variable name.

2008-04-06  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-element-factory.c (rb_gst_elementfactory_make): fix
	coding-style: don't put a space between function call.

2008-04-05  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element-factory.c: The conversion to a ruby object gets one extra
	reference, but gst_factory_make already gives us one. So drop the extra to
	ensure correct refcounting.

2008-04-05  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-element.c: Fix silly typo breaking the compilation

2008-04-05  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgst-object.c, src/rbgst-element.c, src/rbgst.h: Add
	rbgst_object_instance2robj as a small wrapper around
	rbgobj_get_value_from_gobject which always sinks the GstObject and use it
	a converstion function for GST_TYPE_OBJECT. Also no longer expose sink and
	float? methods on Gst::Object

	* test/test_object.rb: No longer test Gst::Object sink and float? methods
	Based on a patch Kouhei Sutou

2008-04-04  Kouhei Sutou  <kou@cozmixng.org>

	* test/test_thread_handling.rb: add.
	Patch by Sjoerd Simons. Thanks!!!

2008-03-30  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-element.c: followed the recent Ruby/GLib changes.

2008-03-27  Kouhei Sutou  <kou@cozmixng.org>

	* test/test_type_find_factory.rb
	(TestTypeFindFactory#test_extensions): normalized result.

	* sample/video-player.rb: stop play bin before quit.

2008-03-15  Kouhei Sutou  <kou@cozmixng.org>

	* test/run-test.rb: used TestUnitExt in glib/test-unit-ext/.

2008-03-04  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-element.c: added missing #include.

2008-02-26  Kouhei Sutou  <kou@cozmixng.org>

	* sample/: fixed wrong method name.

	* sample/xml-player.rb: added.

	* sample/xml-ogg-player.rb: removed.

2008-02-25  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-bin.c, test/test_bin.rb: added tests for Gst::Bin#children.

	* src/rbgst-private.[ch], src/rbgst-bin.c, test/test_bin.rb: added
	tests for Gst::Bin#sources.

	* src/rbgst-bin.c, test/test_bin.rb: added tests for Gst::Bin#sinks.

	* src/rbgst-bin.c, test/test_bin.rb: supported Gst::Bin#[index].

	* src/rbgst-private.[ch], src/rbgst-mini-object.c,
	src/rbgst-message.c: hid rbgst_mini_object_*().

	* src/rbgst-bin.c, test/test_bin.rb: added tests for Gst::Bin#[].

	* src/rbgst-private.[ch], src/rbgst-mini-object.c,
	src/rbgst-element.c: generalized define_class_if_need().

2008-02-24  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-bin.c, test/test_bin.rb: added tests for Gst::Bin#clear.

	* src/rbgst-bin.c, test/test_bin.rb: added tests for Gst::Bin#remove.

	* src/rbgst-bin.c, test/test_bin.rb: added tests for Gst::Bin#<<.

	* src/rbgst-buffer.c: fixed wrong type conversion.

2008-02-23  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-bin.c, test/test_bin.rb: added tests for clock_provider.

	* src/rbgst-bin.c, test/test_bin.rb: added tests for
	provided_clock{,=}.

	* src/rbgst-bin.c, test/test_bin.rb: added tests for polling? and
	clock_dirty?.

	* src/rbgst-bin.c, test/test_bin.rb: added tests for child_bus and
	messages.

	* src/rbgst-bin.c, test/test_bin.rb: added tests for children_cookie.

	* src/rbgst-bin.c, test/test_bin.rb: added tests.

2008-02-21  Kouhei Sutou  <kou@cozmixng.org>

	* sample/video-player.rb: caught EOS.

	* src/rbgst.c: followed the recent Ruby/GLib change:
	  rbgutil_{start,stop}_callback_handle_thread ->
	  rbgutil_{start,stop}_callback_dispatch_thread.

	* sample/audio-player.rb: caught EOS.

2008-02-20  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-object.c, test/test_object.c: added Gst::Object#name=
	and Gst::Object#sink.

	* test/gst-test-utils.rb: added.
	* test/test_element.rb, test/test_element_factory.rb: used
	GstTestUtils.

2008-02-18  Kouhei Sutou  <kou@cozmixng.org>

	* sample/video-player.rb: cleanup.

	* sample/mp3-player.rb: removed needless file.

	* sample/audio-player.rb: worked as generic audio player.

	* sample/ogg-audio-player.rb: ensure stop.

	* test/: used test-unit-ext on RubyForge.

2008-02-17  Kouhei Sutou  <kou@cozmixng.org>

	* test/test_element_factory.rb, test/test_plugin.rb,
	test/test_plugin_feature.rb: followed the current GStreamer changes.

2008-02-14  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst.c (rb_gst_init): called
	rbgutil_start_callback_handle_thread().

2008-01-10  Kouhei Sutou  <kou@cozmixng.org>

	* sample/type-find.rb: added type find sample.

2008-01-06  Kouhei Sutou  <kou@cozmixng.org>

	* sample/gst-inspect.rb: supported element name inspection.

	* src/rbgst-value.c: supported GST_TYPE_ARRAY.

	* sample/gst-inspect.rb: added readable check.

	* src/rbgst-mini-object.c: supported Gst::MiniObject <-> GValue
	conversion.

	* test/test_value.rb, src/rbgst-value.c: supported GstFraction and
	GstFractionRange.

	* test/test_value.rb, src/rbgst-value.c: supported GstFourcc.

	* test/test_value.rb, src/rbgst-value.c: supported GstIntRange.

2008-01-04  Kouhei Sutou  <kou@cozmixng.org>

	* sample/gst-inspect.rb: implemented print_children_info.

	* sample/gst-inspect.rb: implemented print_signals_info.

	* sample/gst-inspect.rb: implemented print_element_properties_info.

	* sample/gst-inspect.rb: implemented print_pad_info.

	* src/rbgst-element.c: cleanup style.

	* test/test_element.rb, src/rbgst-element.c: added #require_clock?
	and #provide_clock?.

	* sample/gst-inspect.rb: defined Inspector class.

	* test/test_value.rb, src/rbgst-value.c: supported GST_TYPE_LIST.

	* test/test_caps.rb, src/rbgst-caps.c: added #each and #[].

	* test/test_static_caps.rb, src/rbgst-static-caps.c: added #to_caps.

	* test/test_static_pad.rb, src/rbgst-static-caps.c: added.

	* test/test_pad_template.rb: renamed to ...
	* test/test_static_pad_template.rb: ... this.

	* sample/gst-inspect.rb: implemented print_pad_templates_info.

	* src/rbgst-pad-template.c, src/rbgst-static-pad-template.c: used
	better macros.

	* src/rbgst-pad-template.c: split to ...
	* src/rbgst-static-pad-template.c: .. this.

	* test/test_pad_template.rb, src/rbgst-pad-template.c,
	src/rbgst-pad-template.c: made GstStaticPadTemplate object.

	* src/rbgstpadtemplate.c: renamed to ...
	* src/rbgst-pad-template.c: ... this.

2008-01-03  Kouhei Sutou  <kou@cozmixng.org>

	* sample/gst-inspect.rb: implemented print_interfaces.

	* sample/gst-inspect.rb: implemented print_hierarchy.

	* src/rbgst-structure.c, test/test_structure.rb: added .parse.

	* src/rbgst-structure.c, test/test_structure.rb: added #to_s and
	#inspect.

	* src/rbgst-structure.c, test/test_structure.rb: added #have_field?.

	* src/rbgst-structure.c, test/test_structure.rb: added #nth_field_name.

	* src/rbgst-structure.c, test/test_structure.rb: added #size and
	#empty?.

	* src/rbgst-structure.c, test/test_structure.rb: added #collect!.

	* src/rbgst-structure.c, test/test_structure.rb: added #each.

	* src/rbgst-structure.c, test/test_structure.rb: added #delete and
	#clear.

2008-01-02  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-structure.c, test/test_structure.rb: added #[] and
	#[]=.

	* src/rbgst-structure.c, src/rbgst.[ch], test/test_message.rb,
	test/test_structure.rb: stopped conversion between GstStructure
	and Hash.

	* src/rbgst-structure.c, test/test_structure.rb: added #name=,
	#have_name?.

2008-01-01  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgstbin.c, src/rbgstclockentry.c: GST_CLOCK() -> RVAL2GST_CLOCK().

2007-11-11  Kouhei Sutou  <kou@cozmixng.org>

	* src/: expanded abbreviated macro name.

	* src/rbgst-plugin.c: supported source.
	* test/test_plugin.rb: added a test for source.

	* src/rbgst-plugin-feature.c: supported plugin_name.
	* test/test_plugin_feature.rb: added a test for plugin_name.

	* src/rbgst-plugin-feature.c: supported loaded?.
	* test/test_plugin_feature.rb: added a test for loaded?.

	* src/rbgst-message.c, src/rbgst-mini-object.c: used RGConvertTable.

	* src/rbgst-plugin-feature.c: supported rank.
	* test/test_plugin_feature.rb: added a test for rank.

	* src/rbgst-element-factory.c: supported details readers.
	* test/test_element_factory.rb: added a test for details readers.

	* src/rbgst-plugin-feature.c: supported load.
	* test/test_plugin_feature.rb: added a test for load.

	* sample/gst-inspect.rb: starting rewrite.

	* src/rbgst-type-find-factory.c: added NULL check.

	* src/rbgst-type-find-factory.c: cleanup.
	* test/test_type_find_factory.rb: added a test for extensions.

	* src/rbgst-index-factory.c: supported find and description.
	* test/test_index_factory.rb: added a test for find and description.

	* src/rbgst-element-factory.c: supported long_name.
	* test/test_element_factory.rb: added a test for long_name.

2007-11-10  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-message.c: supported parsing message API.
	* test/test_message.rb: added tests for parsing message.

	* src/rbgst-message.c: supported new message API.
	* test/test_message.rb: added tests for new message.

	* src/rbgst-structure.c, src/rbgst.h: cleanup.
	* src/rbgstcaps.c, src/rbgsttagsetter.c: followed the above changes.

	* src/rbgst-message.c: supported structure API.
	* test/test_message.rb: added tests for structure.

	* src/rbgst-message.c: supported source API.
	* test/test_message.rb: added tests for source.

	* src/rbgst-message.c: supported timestamp API.
	* test/test_message.rb: added tests for timestamp.

	* src/rbgst-message.c: supported thread API.
	* test/test_message.rb: added tests for thread.

	* src/rbgst-message.c: supported Gst::Message.new.
	* test/test_message.rb: added tests for initialization.

	* src/rbgst-mini-object.c, test/test_mini_object.rb: make_writable
	-> writable!.

	* src/rbgst-buffer.c: implemented span API.
	* test/test_buffer.rb: added tests for span.

	* src/rbgst-mini-object.c: supported dynamically name resolving.

	* src/rbgst-buffer.c: implemented metatdata_writable API.
	* test/test_buffer.rb: added tests for metadata_writable.

	* src/rbgst-buffer.c: implemented copy_metatdata API.
	* test/test_buffer.rb: added tests for copy_metadata.

	* src/rbgst-buffer.c: implemented GstBufferCopyFlags API.
	* test/test_buffer.rb: added tests for GstBufferCopyFlags.

	* src/rbgst-buffer.c: implemented disconitnuity API.
	* test/test_buffer.rb: added tests for disconitnuity.

	* src/rbgst-buffer.c: implemented offset_end API.
	* test/test_buffer.rb: added tests for offset_end.

	* src/rbgst-buffer.c: implemented offset API.
	* test/test_buffer.rb: added tests for offset.

	* src/rbgst-buffer.c: used GST_BUFFER_CAPS instead of
	gst_buffer_get_caps().

	* src/rbgst-buffer.c: used macros for GstBuffer.

	* src/rbgst-buffer.c: implemented caps API.
	* test/test_buffer.rb: added tests for caps.

	* src/rbgst-buffer.c: implemented duration API.
	* test/test_buffer.rb: added tests for duration.

2007-11-08  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-buffer.c: implemented timestamp API.
	* test/test_buffer.rb: added a test for timestamp.

	* src/rbgst.h, src/rbgst-clock.c, src/rbgstclock.c: rewrote clock.
	* test/test_clock.rb: added.

	* src/rbgst-buffer.c: implemented size setter.
	* test/test_buffer.rb: added test for setting size.

	* src/rbgst-buffer.c: implemented data accessor.
	* test/test_buffer.rb: added test for data.

	* src/rbgst-buffer.c: implemented size.
	* test/test_buffer.rb: added test for size.

	* src/rbgst.h (RVAL2GST_BUF): added.
	* src/rbgst-buffer.c: added flag related API.
	* test/test_buffer.rb: added.

	* src/rbgst-mini-object.c: implemented flags related APIs.
	* test/test_mini_object.rb: added tests for flags.

	* test/run-test.rb: added paths for Ruby/GLib.

2007-11-05  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-buffer.c, src/rbgst.[ch]: added Gst::Buffer.

	* src/rbgst-mini-object.c: added flag related methods.
	* test/test_mini_object.rb: added a test for writable.

	* test/test_mini_object.rb: added a test for instanciation.

	* src/rbgst-mini-object.c: rb_gst_* -> rbgst_*.

	* src/rbgst-mini-object.c, test/test_mini_object.rb: added
	abstract check.

	* test/test-unit-ext.rb, test/test-unit-ext/: added.
	* test/run-test.rb: used test-unit-ext.

	* test/, test/run-test.rb, test/test_mini_object.rb: just added.

2007-10-03  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst-mini-object.c, src/rbgst-message.c, src/rbgst-bus.c:
	added.
	* src/rbgst.[ch]: registered above classes.
	* sample/ogg-audio-player.rb: added GStreamer's Hello World
	application.

2007-10-01  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgst.h: added convert macro for Gst::Bus.
	* src/rbgstmediainfo.c: removed.
	* src/rbgstpipeline.c: added Gst::Pipeline#bus.
	* sample/video-player.rb: just worked.

2007-09-29  Kouhei Sutou  <kou@cozmixng.org>

	* extconf.rb, README, src/: made build-able with
	gstreamer-0.10. only just build-able.
	* sample/gst-inspect.rb: partially worked.

2007-07-08  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/*.c: use rb_block_proc() directly instead of using G_BLOCK_PROC().

2006-06-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/video-player.rb: Remove Gtk.init.

2005-10-07  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgstelement.c: g_type_name() returns const gchar*, not gchar*.
	Reported by Sven Herzberg.
	* src/misc.c: ditto.

2005-10-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgst.c: Added Gst::BUILD_VERSION.
	* src/rbgstelement.c: Gst::Element#get_property returns
	correct name instead of Class class.

2005-08-04  Laurent Sansonetti  <lrz@gnome.org>

	* src/misc.c, src/rbgstelementfactory.c, src/rbgstindexfactory.c, 
	  src/rbgstschedulerfactory.c, src/rbgsttypefindfactory.c: Renamed
	rb_str_format () to rb_str_new_with_format () as Ruby 1.9 introduces a 
	new function with the same name.

2005-07-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgstxml.c: Fix compiling warning.

2005-06-29  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.h, src/rbgststructure.c, src/rbgsttagsetter.c: Properly
	convert the Hash argument given to GstTagSetter#merge to a GstTagList
	by naming the GstStructure accordingly.  Problem reported by Pablo 
	Lorenzzoni.

2005-06-20  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstelement.c: Added a custom signal handler for the 'found_tag' 
	signal that converts the GstTagList.  Problem reported by Erik Karlsson.

2005-04-30  Laurent Sansonetti  <lrz@gnome.org>

	* sample/video-player.rb: Added.

2005-04-25  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstxoverlay.c: Added.
	* extconf.rb, src/rbgst.h: Follow latest change.

2005-03-21  Laurent Sansonetti  <lrz@gnome.org>

	Problems reported by Bas Kloet.

	* src/rbgstcaps.c: Fixed #initialize (GstCaps does not inherit from
	GstObject anymore) and API reference still referencing the deprecated
	Gst::Structure.
	* src/rbgstpad.c (#each_caps): Removed, (#link_filtered): Added.
	* src/rbgststructure.c: Fixed hash-to-gst-structure conversion. 
	* src/rbgstelement.c (#link_filtered): Added.

2005-03-04  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstregistrypool.c, src/rbgstschedulerfactory.c, src/rbgsttag.c,
	  src/rbgsttagsetter.c, src/rbgsttypefindfactory.c: Updated API reference.

2005-02-23  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstregistrypool.c: Added.
	* src/rbgsttagsetter.c: Added.
	* src/rbgst.c: Initializes Gst::RegistryPool and Gst::TagSetter.
	* src/rbgst.h: Added helper macro for Gst::TagSetter and Gst::Plugin.
	* src/rbgstscheduler.c (Gst::Scheduler::Flags): Added.
	* src/rbgstschedulerfactory.c (::default_name, ::set_default_name): Added.
	* src/rbgstthread.c (::current): Added.
	* src/rbgsttypefindfactory.c (#extensions): Implemented.
	* src/rbgstxml.c (#parse_memory): Added.

2005-02-21  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.c: Initialize Gst::Tag, do not initialize Gst::Structure.
	* src/rbgst.h: Removed helper macros for Gst::Structure.
	* src/rbgsttag.c: Added.
	* src/rbgstcaps.c: Convert Gst::Structure to Hash.
	* src/rbgstmediainfo.c: 
	  - #initialize throws Gst::MediaInfoError upon problems ;
	  - Added #set_source ;
	  - #metadata and #streaminfo now return a Hash (instead of a Gst::Structure).
	* src/rbgstplugin.c: 
	  - Added #major_version, #minor_version, #version ;
	  - Added missing documentation.
	* src/rbgststructure.c: 
	  - Deprecated Gst::Structure ;
	  - Added two functions to convert Ruby Hash to Gst::Structure and vice-versa.
	* sample/media-type.rb, sample/gst-inspect.rb: Follow these changes.

2005-02-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgstmediainfo.c: Added Gst::MediaInfoError.
	Raise an Gst::MediaInfoError when an error raised in 
	Gst::MediaInfo#read.
	Reported by Max Nickel.
	* src/rbgstcaps.c: Added G_DEF_SETTERS().

2005-02-09  Max Nickel <max@unmuted.de>

	* src/rbgstcaps.c: Fix a wrong argument of Gst::Caps#get_structure.

2005-02-09  Jack, Paul  <pjack@sfaf.org>

	* src/rbgsttypefindfactory.c: Added.
	* sample/gst-inspect.rb: Replaced print_caps function 
	with caps.to_s
	* src/rbgst.c: Added call to Init_gst_typefindfactory.
	* src/rbgst.h: Added RGST_TYPE_FIND_FACTORY macro
	and RGST_TYPE_FIND_FACTORY_NEW macro
	* src/rbgstpad.c: Replaced nonexistent RBGST_CAPS macro 
	with RGST_CAPS_NEW macro.
	* src/rbgstpadtemplate.c: Replaced nonexistent RBGST_CAPS 
	macro with RGST_CAPS_NEW macro.
  	* src/rbgstplugin.c: Added filename, description, package, 
	license, origin and name accessor methods.
	* src/rbgstpluginfeature.c: Added ability to instantiate 
	Gst::TypeFindFactory.
	* src/rbgsttypefindfactory.c: New file.

2005-01-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* extconf.rb: Follow mkmf-gnome2.rb changes. 

2004-08-27  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgstparse.c: Improved error handling. 

2004-08-05  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.c: Fixed bad comments (for the constants).
	* src/rbgstcaps.c: Added missing Returns statements in the 
	  comments.
	* src/rbgstscheduler.c: Fixed a bug when creating the GEnum,
	  reported by Pascal Terjan.

2004-08-03  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstelement.c (#seek, #locked_state?, #set_locked_state,
	  #sync_state_with_parent, #managing_bin, #no_more_pads):
	  Added.

2004-08-02  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstelement.c (#get_static_pad, #get_request_pad, 
	  #release_request_pad, #get_compatible_pad, #get_pad_template,
	  #pad_templates, #each_pad_template, #get_compatible_pad_template):
	  Added.

2004-08-01  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.c: Initializes Gst::Scheduler.
	* src/rbgst.h: Added helper macros for Gst::Scheduler.
	* src/rbgstelement.c (#scheduler, #set_scheduler): Added.
	* src/rbgstscheduler.c: Added.

2004-07-31  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.c: Initializes Gst::Index and Gst::IndexEntry.
	* src/rbgst.h: Added helper macros for Gst::Index and Gst::IndexEntry.
	* src/rbgstelement.c (#index, #set_index): Added.
	* src/rbgstindex.c, src/rbgstindexentry.c: Added. 

2004-07-28  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.c: Initializes Gst::Structure.
	* src/rbgst.h: Added helper macros for Gst::Structure and fixed
	  the declaration of the Gst::ClockEntry's GType function. 
	* src/rbgstcaps.c (#initialize, #set_any, #append, #append_structure, 
	  #size, #get_structure, #set_simple, #any?, #empty?, #simple?, 
	  #equal?, #equal_fixed?, #always_compatible?, #subset?, #intersect, 
	  #union, #normalize, #simplify, #simplify!, #replace!, #to_string, 
	  #subtract): Added. 
	* src/rbgstclock.c (#event_time, #get_event_time_delay, #next_id):
	  Added.
	* src/rbgstclockentry.c: Indentation clean.
	* src/rbgstelement.c (#enable_threadsafe_properties,
	  #disable_threadsafe_properties, #set_pending_properties,
	  #set_clock, #time, #set_time, #set_time_delay, #adjust_time):
	  Added. 
	* src/rbgststructure.c: Added.

2004-07-25  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.c (Gst.set_debug): Removed. 
	* src/rbgst.h: Removed obsolete macros.
	* src/rbgstbin.c (#get_by_interface, #get_all_by_interface,
	  #each_by_interface): Added.  Existing code has been refactored.

2004-07-23  Laurent Sansonetti  <lrz@gnome.org>

	* README: We require 0.8.x now. 
	* extconf.rb: Check for gstreamer-0.8 and gst-mediainfo-0.8 instead
	of 0.6.
	* src/rbgst.c: Do not initialize autoplug, autoplugfactory, type,
	typefactory and typefind anymore (since they have been removed).
	* src/rbgstautoplug.c, src/rbgstautoplugfactory.c, src/rbgsttype.c,
	  src/rbgsttypefactory.c, src/rbgsttypefind.c: Removed.
	* src/rbgstcaps.c, src/rbgstelementfactory.c, src/rbgstmediainfo.c, 
	  src/rbgstpad.c, src/rbgstpadtemplate.c, src/rbgstplugin.c,
	  src/rbgstpluginfeature.c: Compiles against 0.8.x.

2004-03-23  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstelement.c (#get_property): Fixed a memory leak
	in GValue conversion (discovered by Masao Mutoh).

2004-03-07  Laurent Sansonetti  <lrz@gnome.org>

	* src/*.[ch]: Updated copyright.

2004-03-06  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstelement.c (#query): Fixed bad GEnum conversion.

2004-03-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* README: Update Copyright.

2004-03-02  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.c: Defines Gst::[MAJOR|MINOR|MACRO]_VERSION.
	* src/rbgstpad.c (#caps, #each_caps): Added.
	* src/rbgstpadtemplate.c (#caps): Uses the gst_pad_template_get_caps
	  C function instead of directly accessing the structure fields.
	* src/rbgsttype.c (find_by_ext): Added.

2004-03-02  Laurent Sansonetti  <lrz@gnome.org>

	* extconf.rb: Removed assert.h dependency.
	* src/*.[ch]:
	  - Refactored some parts of the code.
	  - Updated coding style;
	  - Updated comments for the API reference;
	  - Uses GLib assertions (g_assert);
	  - Uses G_DEF_CONSTANTS to define GLib enumerations/flags.
	* sample/gst-inspect.rb, sample/media-type2.rb: Follows API changes.

2004-02-17  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstbin.c: Added GstBin#[] as a alias for GstBin#get_by_name.

2003-11-14  Laurent Sansonetti  <lrz@gnome.org>

	* Changed my e-mail address (laurent@datarescue.be -> lrz@gnome.org).

2003-09-05  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: win32 support.

2003-08-29  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstclockentry.c: New file.
	* src/rbgst.c: Initializes Gst::ClockEntry.
	* src/rbgst.h: Added macros for Gst::ClockEntry + fixed a critical bug
	  in ULL conversion.
	* src/rbgstclock.c: Added a lot of methods + some constants.
	  Class is now finished.
	* src/rbgsteventsize.c: Fixed typos in a comment (for API reference).
	* tests/misc.rb, tests/tc_clock.rb: Added additional tests for Gst::Clock.

2003-08-28  Masao Mutoh  <mutoh@highway.ne.jp>
                                                                                
	* extconf.rb: Exit with 1 when the package is not found.

2003-08-25  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.h, src/rbgstplugin.c, src/rbgstpluginfeature.c: 
	  Introduced is_valid_pluginfeature_type() and 
	  instanciate_pluginfeature().
	* src/rbgstregistry.c: Added a lot of methods + some constants. 
	  Class is now finished.
	* tests/tc_registry.rb: New file.
	* tests/tc_plugin.rb: Moved 'test_registry' in tests/tc_registry.rb.
	* src/rbgstmediainfo.c: Implemented Gst::MediaInfoTrack#con_streams.

2003-08-24  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstbin.c: Added methods get_by_name_recurse_up, auto_clock,
	  use_clock and on_[pre|post]_iterate.
	* tests/rc_element.rb: Added tests for Gst::Bin#get_by_name* and
	  on_[pre|post]_iterate.

2003-08-23  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst*.c: Changed extdoc.rb enumeration syntax to something 
	  more RDish (-a, -b, -c to *a, *b, *c).

2003-08-19  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst*.c: Fixed comments + removed obsolete code.

2003-08-15  Laurent Sansonetti  <lrz@gnome.org>

	* sample/xml-ogg-player.rb: New file.
	* sample/media-type.rb: Fixed a bug when printing track length (needed 
	  to divide with Gst::Second to have the correct number of seconds).
	* src/rbgstmediainfo.c: Fixed integer conversion bug (now uses ULL).

2003-08-14  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstxml.c, tests/tc_xml.rb: New files.
	* src/rbgst.c: Initializes Gst::XML.
	* src/rbgst.h: Added macros for Gst::XML.

2003-08-10  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstautoplug.c, src/rbgstelement.c, src/rbgsteventseek.c,
	  src/rbgsteventsegmentseek.c, src/rbgstformat.c, src/rbgstpad.c,
	  src/rbgstparse.c, src/rbgstquerytype.c: Fixed typos in C comments.

2003-08-09  Hiroshi Igarashi  <iga@ruby-lang.org>

	* src/rbgst.c: Fixed a compilation bug with old 2.x GCC.

2003-08-09  Laurent Sansonetti  <lrz@gnome.org>

	* sample/media-type2.rb: New file (thanks to Nikolai Weibull).

2003-08-08  Laurent Sansonetti  <lrz@gnome.org>

	* sample/gst-inspect.rb: Added signals and event masks support.
	* src/rbgsteventmask.c: New file.
	* src/rbgst.c: Initializes Gst::EventMask.
	* src/rbgst.h: Added macros for Gst::EventMask.
	* src/rbgstpad.c: Implemented methods event_masks and each_event_mask.
	* src/rbgstquerytype.c: Renamed method id to type_id.

2003-08-04  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgst.c: Added constants Gst::SECOND, Gst::MSECOND, Gst::USECOND 
	  and Gst::NSECOND. 
	* src/rbgstcaps.c: Added methods mime, set_mime and mime=.
	* src/rbgstformat.c: Renamed method id to type_id.
	* src/rbgstpad.c, src/rbgstelement.c: Methods query sets the format 
	  parameter on success. 

2003-08-03  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgsteventseek.c, src/rbgsteventsegmentseek.c, src/rbgsteventsize.c:
	New files.
	* src/rbgst.c: Initializes Gst::EventSeek, Gst::EventSegmentSeek and 
	  Gst::EventSize.
	* src/rbgst.h: Fixed bug in macros for Gst::Caps and Gst::Event +
	  introduced NUM2ULL.
	* src/rbgstcaps.c: Removed obsolete _get/_wrap functions.
	* src/rbgstelement.c: Uses ULL2NUM in query.
	* src/rbgstevent.c: Added methods src and timestamp.
	* src/rbgstpad.c: Uses ULL2NUM in query + added method send_event.

2003-08-01  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstparse.c, tests/tc_parse.rb: New files.
	* src/rbgst.c: Initializes the Gst::Parse module.
	* src/rbgstmediainfo.c: Removed a debug warning.

2003-07-30  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstpad.c: Added method query.

2003-07-29  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstcaps.c, src/rbgstclock.c, src/rbgstformat.c, src/rbgstplugin.c,
	  src/rbgstquerytype.c src/rbgsttype.c: 
	  Fixed '==' operators (they were broken when used against nil values).
	* src/rbgstmediainfo.c, sample/media-type.rb:  New files.
	* src/rbgst.c: Initializes the media-info extension if needed.
	* extconf.rb: Checks if the gstmedia-info library is installed,
	and sets the HAVE_MEDIA_INFO macro accordingly.

2003-07-28  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgstautoplug.c: Added method signal_new_object.
	* src/rbgstpluginfeature.c: Added methods ensure_loaded and
	unload_thyself.

2003-07-25  Laurent Sansonetti  <lrz@gnome.org>

	* AUTHORS: removed
	* .cvsignore, AUTHORS, COPYING.LIB, README, extconf.rb,
	  sample/audio-player.rb, sample/gst-inspect.rb,
	  sample/mp3-player.rb, src/.cvsignore, src/misc.c, src/rbgst.c,
	  src/rbgst.h, src/rbgstautoplug.c, src/rbgstautoplugfactory.c,
	  src/rbgstbin.c, src/rbgstcaps.c, src/rbgstclock.c,
	  src/rbgstcpu.c, src/rbgstelement.c, src/rbgstelementfactory.c,
	  src/rbgstevent.c, src/rbgstformat.c, src/rbgstindexfactory.c,
	  src/rbgstobject.c, src/rbgstpad.c, src/rbgstpadtemplate.c,
	  src/rbgstpipeline.c, src/rbgstplugin.c, src/rbgstpluginfeature.c,
	  src/rbgstquerytype.c, src/rbgstregistry.c,
	  src/rbgstschedulerfactory.c, src/rbgstsystemclock.c,
	  src/rbgstthread.c, src/rbgsttype.c, src/rbgsttypefactory.c,
	  src/rbgsttypefind.c, src/lib/gst.rb, tests/misc.rb,
	  tests/tc_all.rb, tests/tc_clock.rb, tests/tc_cpu.rb,
	  tests/tc_element.rb, tests/tc_modfunc.rb, tests/tc_pad.rb,
	  tests/tc_plugin.rb, tests/tc_type.rb: initial SF import

2003-07-07  Laurent Sansonetti  <lrz@gnome.org>

	* 0.1.1 released
	* improved the existing API (in the Ruby way)
	* added some classes (AutoplugFactory, Caps, Clock, Format, 
		IndexFactory, Pad, PadTemplate, Plugin, PluginFeature, 
		QueryType, Registry, SchedulerFactory, Type, TypeFactory)
	* gst-inspect example 
	* improved documentation system:	
	* C tags are now human readable
	* added inclusion and inheritance maps 
	* enhanced support of Ruby operators

2003-06-01  Laurent Sansonetti  <lrz@gnome.org>

	* 0.1.0 released
	* basic API 
	* helloworld (mp3-player) example 
	* basic documentation system

