2003-12-16  Thomas Vander Stichele  <thomas at apestaart dot org>

        * gst/gst.c:
	* gst/gstplugin.c:
          rename --enable-segfault to --disable-segtrap

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

	* gst/gst.c: (init_popt_callback):
	* gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
	(_gst_plugin_fault_handler_sighandler),
	(_gst_plugin_fault_handler_setup), (gst_plugin_load_file):
	Implemented fault handlers for catching SIGSEGV while loading
        plug-ins

2003-12-02  Thomas Vander Stichele <thomas at apestaart dot org>

        * fix documentation build using docbook2..., works on fc1 and rh9
	* fix distcheck on fc1

2003-11-14  Thomas Vander Stichele <thomas at apestaart dot org>

        * put GST_CACHE_DIR in config.h, as ordered by iain

2003-11-14  Thomas Vander Stichele <thomas at apestaart dot org>

        * Slap walters back into place.
	* remove GST_CONFIG_DIR, it isn't used anymore, and it looks like
          GST_CACHE_DIR replaces it (which is up for fixing next)

2003-06-02  Colin Walters  <walters@verbum.org>

	* Take over the world.

2003-03-29  Martin Schulze  <MHL.Schulze@t-online.de>

	* gst/gstelementfactory.c: Add "g_free (dp->license)" in
	gst_element_details_free().
	* gst/gstevent.[ch]: Add function gst_event_get_type() to
	support c++ language binding. Make macros gst_event_ref[_by_count]
	return a GstEvent* instead of a GstData*.
	* gst/gstbuffer.[ch]: Add functions gst_buffer[_pool]_get_type()
	to support c++ language binding.

2003-03-16  Christian Meyer  <chrisime@gnome.org>

	* tools/gst-inspect.c
	(print_prop): Modified to make compile compile with the new introduced
	              function.
	* tools/gst-xmlinspect.c
	(print_prop): ditto.

2003-03-16  Christian Meyer  <chrisime@gnome.org>

	* gst/gstprops.[ch]: Add function gst_props_get_type().
	* gst/gstprops.[ch], gst/gstutils.c, gst/registries/gstxmlregistry.c:
	- Rename gst_props_entry_get_type() -> gst_props_entry_get_props_type().
	- Add gst_props_entry_get_type() (returning the GType).
	* gst/gstcaps.[ch]: Add function gst_caps_get_type().

	Applied patches from Martin Schulze.

2003-01-09  Thomas Vander Stichele <thomas at apestaart dot org>

        * first pass at changing _connect/_disconnect -> _link/_unlink
	* gst/gstcompat.h: created

2002-11-27  Thomas Vander Stichele <thomas at apestaart dot org>

        * ChangeLog: added an entry
        * gst/gst.*: add gst_init_check which can return TRUE or FALSE
                     make gst_init_with_popt_table do the same
                     only initialize once, like GTK does

2002-04-12  Thomas Vander Stichele <thomas@apestaart.org>

  	* gst/gst*.[ch]: commited GUAD3C code review comments (marked CR1)

	* gst/gstregistry.[ch]: added to handle registry stuff
	  gst/gst.c: changed to use new --gst-registry option
	  tools/gst-register.c: use new registry functions
          for more info, check docs/random/thomasvs/registry

2002-03-01  Michael Meeks  <michael@ximian.com>                                
       * docs/manual/Makefile.am: use $(wildcard) instead of                   
       strange shell stuff.                                                    
                                                                               
       * tools/Makefile.am: handle conditionals in a compatible way            
                                                                               
       * docs/manuals.mak: don't do silly things with if/else                  

2002-01-15  Bastien Nocera  <hadess@hadess.net>

	* tests/Makefile.am: add all the dirs to the DIST_SUBDIRS

2002-01-15  Bastien Nocera  <hadess@hadess.net>

	* tests/Makefile.am: dodge compiling memchunk and bufspeed
	if NASM is not present

2002-01-03 Rodney Dawes  <dobey@free.fr>

	* gstreamer.spec.in: Fixed the missing plug-ins problem

2001-12-29 Rodney Dawes  <dobey@free.fr>

	* gstreamer.spec.in: Fixed up for the splitification
	
2001-12-23 Thomas Vander Stichele  <thomas@apestaart.org>

	* moved plugins out of the core to gst-plugins
	* moved some of the libs out of the core to gst-plugins
	* moved the other libs around so headers get installed in
	  <gst/(lib)/...>

2001-12-15 Thomas Vander Stichele  <thomas@apestaart.org>

	* configure.ac : major overhaul
	* m4/ dir added with lots of checks in it

2001-12-14  Michael Meeks  <michael@ximian.com>

	* gst/gst.c (gst_main, gst_main_quit): upd.

	* gst/gstutils.c (gst_util_has_arg): impl.
	(gst_util_get_int64_arg): impl.

	* plugins/mpeg2/video/gstmpeg2play.c
	(gst_mpeg2play_class_init): min frames per sec = 0.

	* plugins/mikmod/gstmikmod.c (gst_mikmod_class_init): 
	s/16bit/use16bit/ properties can't begin with a non
	alpha.

	* tools/gstreamer-guilaunch.c: fresh from the ministy
	of nasty hacks.

	* tools/Makefile.am: enable gstreamer-guilaunch for
	Gnome 2.0

	* tools/gstreamer-launch.c (main): upd.
	(idle_func): quit the mainloop.

2001-12-14  Michael Meeks  <michael@ximian.com>

        * plugins/audiofile/gstafsrc.c (gst_afsrc_class_init): upd.

        * plugins/gnomevfs/gnomevfssrc.c (gst_gnomevfssrc_class_init):
        kill broken mess for install_std_props.

        * plugins/gnomevfs/gnomevfssink.c
        (gst_gnomevfssink_class_init): upd.

        * tools/gstreamer-launch.c (main): add efence hook.

        * gst/elements/gstfilesrc.c (gst_filesrc_get): use
        a volatile pointer, don't write to the buffer.

        * gst/gstelement.c (gst_element_populate_std_props):
        add debug & robustness.

        * gst/gstelement.c (gst_element_populate_std_props):
        add debug & robustness.

2001-12-13  Michael Meeks  <michael@ximian.com>

	* gst/elements/*.c: (..._class_init): clean to use
	gst_populate_std_props.

	* gst/gstelement.c
	(gst_element_populate_std_props): impl, simply for now,
	with a few standard properties.
	(gst_element_install_std_props): impl nice helper.

2001-12-13  Michael Meeks  <michael@ximian.com>

	* gst/gstplugin.c (_gst_plugin_initialize): g_error
	instead of warning.

	* Makefile.am: update.

	* editor/gsteditorprojectview.c (view_on_element_added): 

	* editor/gsteditorproject.c
	(gst_editor_project_class_init): upd.

	* plugins/avi/gstavimux.c
	(gst_avimux_request_new_pad): don't clobber name.

	* libs/control/gstdparammanager.c
	(gst_dpman_class_init): upd.
	(gst_dpman_dispose): chain to parent.

	* gst/cothreads.c (cothread_create): use guchar *'s
	not void *'s for bytewise pointer arithmetic.

	* gst/gstelement.h: kill const on get_property value.

	* plugins/avi/gstavimux.c
	(gst_avimux_request_new_pad): add name param.

	* configure.ac: Add checks for libglade-2.0 and
	gnome-vfs-2.0

2001-12-13  Michael Meeks  <michael@ximian.com>

	* plugins/xvideosink/Makefile.am: add $(X_LIBS)

	* examples/typefind/typefind.c (type_found): upd.
	xml code.

	* plugins/mikmod/gstmikmod.c
	(gst_mikmod_set_property): same memory bug here -
	unfixed.

	* plugins/oss/gstosssrc.c
	(gst_osssrc_set_property): fix memory issue.
	(gst_osssrc_init): dup the string - argh; quit here -
	such code should be stuck in a common base class not
	cut and pasted.

	* plugins/oss/gstosssink.c
	(gst_osssink_init): manage the device allocation.
	(gst_osssink_finalize): impl.
	(gst_osssink_class_init): upd.
	(gst_osssink_set_property): upd.

	* acconfig.h: cover HAVE_LIBXML2

	* configure.ac: update libxml checks.

2001-12-11 22:10  thomasvs

	* lots of build fixes for 0.3.0 release

2001-08-15 23:43  cael

	* gstplay/: ChangeLog, gstmediaplay.c, gstplay.c: Added hacky check
	to make sure we have video to fullscreen, will be removed when the
	new libgstplay lands.

2001-08-15 23:32  cael

	* gstplay/: ChangeLog, gstmediaplay.c, gstmediaplay.glade,
	gstmediaplay.h, gstplay.c, main.c: Added a bunch of new stuff
	including better fullscreen handling and some new playlist stuff
	that's not hooked up yet.

2001-08-14 20:13  thomasvs

	* gstreamer-uninstalled.pc.in: changed this to work for gst-bind if
	anyone gets into problems with this then let me know and we'll fix
	it together ;)

2001-08-14 05:11  parapraxis

	* gst/: gobject2gtk.c, gobject2gtk.h: sync gobject2gtk with
	paranormal

2001-08-13 21:19  omegahacker

	* gst/: gsttimecache.c, gsttimecache.h: added first pass at the
	GstTimeCache

2001-08-13 20:03  omegahacker

	* gst/Makefile.am: messy hack to make sure libgst.la builds
	properly (FIXME!)

2001-08-13 20:00  sbaker3

	* docs/: gst/gstreamer-sections.txt, manual/dynamic.sgml,
	manual/helloworld2.sgml, manual/pads.sgml, manual/queues.sgml,
	manual/threads.sgml, manual/typedetection.sgml, manual/xml.sgml:
	sync with the current CVS glib API

2001-08-13 19:55  sbaker3

	* test/avi2mpg.c, test/lat.c, test/mp1tomp1.c, test/mp2toavi.c,
	test/mp2tomp1.c, test/mp2tomp1v2.c, test/mp3.c, test/mp3parse.c,
	test/mp3play.c, test/mp3tovorbis.c, test/pipetest.c, test/qtest.c,
	tests/autoplug.c, tests/events.c, tests/mp1vid.c, tests/paranoia.c,
	tests/states.c, tests/eos/case1.c, tests/eos/case2.c,
	tests/eos/case3.c, tests/eos/case4.c, tests/eos/case5.c,
	tests/eos/case6.c, tests/eos/case7.c, tests/muxing/case1.c,
	tests/sched/runxml.c: sync with the current CVS glib API

2001-08-13 19:50  sbaker3

	* plugins/aasink/aasink.c, plugins/audiofile/gstafsink.c,
	plugins/audiofile/gstafsrc.c, plugins/avi/gstavidecoder.c,
	plugins/avi/wincodec/gstwinenc.cc, plugins/cdparanoia/cdparanoia.c,
	plugins/dv/dvdec.c, plugins/filters/cutter/cutter.c,
	plugins/gnomevfs/gnomevfssink.c, plugins/gnomevfs/gnomevfssrc.c,
	plugins/gsm/gstgsmenc.c, plugins/jpeg/gstjpegenc.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c, plugins/oss/gstosssink.c,
	plugins/quicktime/gstquicktimedecoder.c,
	plugins/sdlsink/sdlvideosink.c, plugins/xvideosink/xvideosink.c,
	examples/cutter/cutter.c, examples/helloworld/helloworld.c,
	examples/helloworld2/helloworld2.c, examples/mixer/mixer.c,
	examples/plugins/example.c, examples/queue2/queue2.c,
	examples/queue3/queue3.c, examples/queue4/queue4.c,
	examples/thread/thread.c, examples/typefind/typefind.c,
	examples/xml/createxml.c, examples/xml/runxml.c: sync with the
	current CVS glib API

2001-08-13 19:48  omegahacker

	* configure.base: Added libgst.la to the global LDFLAGS, so all
	plugins link against it.  This should help solve problems with
	bindings and dynamic loading of libgst.

2001-08-13 19:45  sbaker3

	* gst/: gobject2gtk.c, gobject2gtk.h, gst.c, gstautoplug.c,
	gstbin.c, gstelement.c, gstobject.c, gstpad.c, gstparse.c,
	gsttypefind.c, gstxml.c, autoplug/autoplugtest.c,
	autoplug/gstautoplugcache.c, autoplug/gstautoplugger.c,
	autoplug/gststaticautoplug.c, autoplug/gststaticautoplugrender.c,
	elements/gstdisksink.c, elements/gstfakesink.c,
	elements/gstfakesrc.c, elements/gstidentity.c,
	elements/gstmultidisksrc.c: sync with the current CVS glib API

2001-08-13 14:52  thomasvs

	* configure.base: added swig/Makefile.PL

2001-08-12 11:09  sbaker3

	* tests/.cvsignore: added more exes

2001-08-12 10:48  sbaker3

	* gst/gstbufferpool.c: doc update

2001-08-11 23:04  omegahacker

	* gst/gstbuffer.c: fixed stupid bug in buffer_span()

2001-08-11 09:25  omegahacker

	* gst/: gstbuffer.c, gstbuffer.h: - changed timestamps to gint64
	(*signed* 64-bit) - updated buf->offset handling to deal with the
	-1 (0xffffffff) case - added gst_buffer_span() and gst_buffer_merge
	(see -devel for details)

2001-08-10 22:36  wtay

	* gst/elements/gstdisksrc.c: mmap returns MAP_FAILED in case of an
	error, also do a perror in case of a failure.

2001-08-10 18:45  wtay

	* test/misc/: Makefile.am, gsmdec.c, gsmenc.c, mpgPlayer.c: Added
	some test apps by Zeenix.

2001-08-10 18:40  wtay

	* configure.base, docs/fwg/intro.sgml, plugins/SID/gstsiddec.cc,
	plugins/audiofile/gstafsink.c, plugins/gnomevfs/gnomevfssrc.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c, plugins/oss/gstosssink.c,
	plugins/quicktime/gstquicktimedemux.c,
	plugins/quicktime/gstquicktimesink.c, plugins/udp/gstudpsrc.c,
	test/Makefile.am, test/main.c, tests/faketest.c,
	tools/gstreamer-inspect.c: Fixes to various plugins.  Removed the
	eos/qos calls in favour of the soon to be event system.  Added a
	test app to test element reuse (doesn't work)

2001-08-10 18:34  wtay

	* gst/: gstobject.h, gstpad.c, gstpad.h, gstqueue.c,
	gstscheduler.c, elements/gstdisksrc.c, elements/gstfakesrc.c,
	elements/gstfdsrc.c, elements/gstmultidisksrc.c,
	elements/gstpipefilter.c: Removed the old eos and qos functions. 
	Removed the functions from the elements.

2001-08-10 18:02  sbaker3

	* examples/launch/.cvsignore: added an exe

2001-08-10 17:49  sbaker3

	* examples/: mixer/.cvsignore, cutter/.cvsignore: added an exe

2001-08-10 17:36  sbaker3

	* tests/.cvsignore: hide new tests

2001-08-07 17:14  thomasvs

	* configure.base: removed libs/colorscpace again

2001-08-07 17:08  thomasvs

	* configure.base: do FLAC lib check against main function

2001-08-07 17:06  thomasvs

	* acconfig.h, configure.base, plugins/Makefile.am: changed
	HAVE_FLAC to HAVE_FLACLIB

2001-08-07 15:46  thomasvs

	* configure.base: added a few dnl'd AC_CONDITIONAL's to show a bug
	for HAVE_FLAC look for thomas in the file

2001-08-06 23:16  wtay

	* examples/plugins/example.c: Fixed the padtemplate definition.

2001-08-06 21:40  omegahacker

	* gst/gstevent.h: added gstevent.h

2001-08-06 21:37  omegahacker

	* gst/gstelement.c, gst/gstinfo.c, gst/gstinfo.h, gst/gstpad.c,
	gst/gstpad.h, gst/gstplugin.c, gst/gstscheduler.c, gst/gstthread.c,
	gst/elements/gstdisksrc.c, gst/elements/gstfakesink.c,
	tests/Makefile.am, tests/events.c: Initial code for the event
	system.

2001-08-06 21:20  wtay

	* plugins/flac/: Makefile.am, flacenc.c: Some compile fixes against
	FLAC 1.0

2001-08-06 20:52  wtay

	* gst/gstbufferpool.h: Added a missing UNLOCK macro.

2001-08-06 20:49  wtay

	* plugins/avi/wincodec/gstwinenc.cc: Updates for CVS avifile.

2001-08-06 17:46  theuraeus

	* configure.base: 2001-06-08 Christian Schaller
	<Uraeus@linuxrising.org> - Change from == to = since == only works
	with GNU test and not the version of test shipping with Solaris
	(and probably other Unices) - Once again a ordinary user has to
	teach hackers to hack :)

2001-08-03 01:08  omegahacker

	* gst/Makefile.am: moved the object-model headers back to _HDR
	where they belong

2001-08-03 00:55  hadess

	* Makefile.am: - revert location of gstreamer.pc

2001-08-03 00:50  hadess

	* Makefile.am: - install gstreamer.pc to the right place under
	$(prefix)/share/pkconfig

2001-08-01 23:44  dlehn

	* plugins/flac/: flacdec.c, flacenc.c: Type update for FLAC 1.0

2001-07-31 21:57  wtay

	* gst/gstthread.c: Added a missing state change switch. 
	Uncommented a big FIXME that was needed after all.  Stop now works.

2001-07-30 18:50  wtay

	* gstreamer-uninstalled.pc.in: Changes pcbuilddir to
	pc_top_builddir

2001-07-27 18:12  wtay

	* tests/: Makefile.am, faketest.c, muxing/case1.c: Added a simple
	thread state change app.

2001-07-27 17:35  sbaker3

	* tools/gstreamer-inspect.c: compile fix for glib2

2001-07-27 14:12  sbaker3

	* gst/gstbufferpool.c: compile fix when atomic refcounting is not
	available

2001-07-25 23:46  wtay

	* plugins/festival/gstfestival.c: Added caps to the src pad to
	properly set rate/channels for peer elements.

2001-07-25 22:40  wtay

	* tools/gstreamer-inspect.c: Added signal output and object
	hierarchy output.

2001-07-25 22:40  wtay

	* gst/: gobject2gtk.c, gobject2gtk.h: Added shims for signal
	introspections and g_type_parent

2001-07-25 21:49  wingo

	* configure.base: Fixed issue where AC_CHECK_LIB was polluting LIBS
	with -lxml.

2001-07-25 01:02  wingo

	* plugins/filters/speed/Makefile.am: Removed 'README' from
	EXTRA_DIST so that 'make dist' would work.

2001-07-24 21:05  theuraeus

	* tools/gstreamer-launch.1: 2001-23-07 Christian Schaller
	<Uraeus@linuxrising.org> - Put README contents into man page and
	fixed the Groff enconding (or whatever it is called.)

2001-07-23 01:57  wtay

	* plugins/ffmpeg/: gstffmpegdec.c, gstffmpegenc.c: Updated to the
	new 0.4.4 API.

2001-07-23 01:57  wtay

	* tools/gstreamer-launch.c: Reverted to the old g_idle loop. too
	many problems with xvideosink and the GtkWindow when we don't have
	an idle loop..

2001-07-20 23:10  dlehn

	* plugins/: mp3decode/mpg123/letest.c, mpeg2/ac3dec/bitstream.c:
	use glib for byte swapping

2001-07-20 23:08  dlehn

	* Makefile.am: Some basic deb building rules

2001-07-20 23:08  dlehn

	* plugins/mpeg2/parse/Makefile.am, test/Makefile.am: cosmetic
	stuff, -O3 does inline-functions

2001-07-20 22:26  wtay

	* docs/gst/: Makefile.am, gstreamer.hierarchy,
	tmpl/gstbufferpool.sgml, tmpl/gstfakesink.sgml,
	tmpl/gstidentity.sgml, tmpl/gstreamer-unused.sgml,
	tmpl/gsttee.sgml: Removed some stuff from the makefile until it
	stopped complaining when building debs...

2001-07-20 08:10  dlehn

	* plugins/mp3encode/lame/: gstlame.c, gstlame.h: update for newer
	LAME api

2001-07-20 08:00  dlehn

	* plugins/Makefile.am: Always compile avi dir.	It has it's own
	conditionals for avifile libs.	Add (back?) arts dir.  (was this
	out for a reason?)

2001-07-20 07:56  dlehn

	* plugins/mpeg2/mpeg2dec/Makefile.am: Change lib name from
	libmpeg2dec to libgstmpeg2dec to avoid confusion since it links to
	another libmpeg2dec.

2001-07-20 07:54  dlehn

	* docs/gst/gstreamer.hierarchy: remove Gtk classes from Gst
	hierarchy

2001-07-20 07:53  dlehn

	* configure.in.ac250: not used anymore

2001-07-20 07:52  dlehn

	* debian/: Makefile.am, README.Debian, changelog, control,
	gstreamer-arts.files, gstreamer-artsd.files,
	gstreamer-avifile.files, gstreamer-common.files,
	gstreamer-festival.files, gstreamer-flac.files,
	gstreamer-mpeg2dec.files, gstreamer-plugin-template.postinst,
	gstreamer-plugin-template.postrm, gstreamer-plugin-template.prerm,
	gstreamer-runtime.files, gstreamer-runtime.manpages,
	gstreamer-runtime.postinst, gstreamer-runtime.postrm,
	gstreamer-tools.files, gstreamer-tools.manpages, gstreamer-x.files,
	libgst0.postinst, libgsteditor0.postinst,
	libgstmediaplay0.postinst, rules: Update to Debian packaging files
	to 0.2.1-2

2001-07-18 23:38  richardb

	* docs/fwg/: Makefile.am, buffers.sgml, checklist.sgml,
	gst-plugin-writers-guide.sgml, srcnsink.sgml, statemanage.sgml:
	Sort out some remaining bits of fwg which weren't valid sgml.

2001-07-18 23:18  richardb

	* docs/manual/: debugging.sgml, helloworld2.sgml: Fix incorrectly
	matched tags, as found by xsltproc. ;-)

2001-07-18 23:08  richardb

	* REQUIREMENTS: Add instructions for getting docbook-gnome-bin
	debian package, needed to build manual and PWG.

2001-07-18 20:04  wtay

	* gst/autoplug/gststaticautoplugrender.c: Make sure the autoplugger
	doesn't try to connect elements with request pads for now.

2001-07-18 18:29  wtay

	* plugins/mpeg1/system_encode/: buffer.c, system_encode.c,
	system_encode.h, systems.c: Added request pad to the muxer.  Fixed
	the object size problem by dynamically allocating the sector data.

2001-07-17 23:01  richardb

	* plugins/effects/volume/volume.c: Rename the GstVolume type to
	GstVolumeOld, so that it doesn't conflict with the type registered
	by the new volume plugin.

2001-07-17 22:51  wtay

	* docs/fwg/intro.sgml: Added what I think should be the basic steps
	for writing a plugin.

2001-07-16 21:18  wtay

	* gst/: gstelement.h, gstscheduler.h: Added missing pad_select
	prototypes/defs.

2001-07-16 10:04  richardb

	* configure.base: Change tests/muxer/Makefile to
	tests/muxing/Makefile, since tests/muxer is now an empty dir.

2001-07-15 15:24  wtay

	* tools/gstreamer-launch.c: Changed the main loop to while
	(iterate(bin))

2001-07-15 14:04  wtay

	* gst/gstscheduler.c: Properly set the eos flag when no elements
	can be scheduled.

2001-07-14 21:29  shitowax

	* plugins/quicktime/: gstquicktimesink.c, gstquicktimesink.h:
	initial introduction of a really basic muxer

2001-07-14 21:15  thomasvs

	* configure.base: added muxer Makefile

2001-07-13 17:49  wtay

	* plugins/gsm/: gstgsm.c, gstgsmdec.c, gstgsmenc.c: Added capsnego
	to gsmdec/enc.

2001-07-11 23:52  wtay

	* gst/: gstpad.c, gstpad.h, gstscheduler.h,
	elements/gstaggregator.c, elements/gstaggregator.h,
	elements/gstfakesrc.c: Added prototypes for gst_pad_peek,
	gst_pad_select and gst_pad_selectv.  Added different scheduling
	methods in aggregator.	Fixed a bug in fakesrc when setting up the
	scheduling functions.

2001-07-11 20:26  wtay

	* tests/: Makefile.am, muxing/.cvsignore, muxing/Makefile.am,
	muxing/case1.c: Added a muxing test case.

2001-07-11 20:23  wtay

	* gst/gstscheduler.c: Added a g_assert when a filled bufpen is
	overwritten.

2001-07-11 20:22  wtay

	* gst/elements/: gstfakesink.c, gstfakesrc.c, gstidentity.c,
	gstidentity.h, gsttee.c, gsttee.h: Some cleanups in output of
	various test plugins.  Added debug output to tee.  Added buffer
	duplication to identity.

2001-07-11 17:45  wtay

	* gst/elements/: gstelements.c, gstfakesink.c, gstfakesink.h: Added
	request pads to fakesink.

2001-07-11 16:51  wtay

	* gst/elements/: gstaggregator.c, gstelements.c, gstfakesink.c,
	gstfakesrc.c, gstfakesrc.h, gstidentity.c, gstidentity.h, gsttee.c:
	Added DEBUG_FUNCPTR to most plugins.  Added request pads to fakesrc
	and aggregator.

2001-07-11 16:50  wtay

	* tools/gstreamer-inspect.c: Print out the request pad function.

2001-07-11 15:56  wtay

	* gst/elements/: Makefile.am, gstaggregator.c, gstaggregator.h,
	gstdisksink.c, gstdisksrc.c, gstelements.c, gstfakesink.c,
	gstfakesrc.c, gstfakesrc.h, gstfdsink.c, gstfdsrc.c, gsthttpsrc.c,
	gstidentity.c, gstsinesrc.c, gsttee.c: Some code cleanups.  Added
	printouts of the buffer timestamps in identity, fakesrc, fakesink. 
	Added an aggregator test element.

2001-07-11 13:33  wtay

	* gst/: gstelement.c, gstelement.h, gstelementfactory.c: Aplied the
	patch from Andy Wingo <apwingo@eos.ncsu.edu> add padtemplates to
	element classes without using an elementfactory.  The
	gst_element_add_padtemplate_to_class method was renamed to
	gst_element_class_add_padtemplate to better match glib/gtk
	conventions.

2001-07-11 13:09  wtay

	* docs/gst/tmpl/: gstmeta.sgml, spectrum.sgml: Removed the
	remaining bits of MetaData.

2001-07-11 02:02  omegahacker

	* configure.base: added speed and volume to configure.base

2001-07-11 00:47  omegahacker

	* plugins/filters/Makefile.am: added speed and volume to
	Makefile.am

2001-07-08 22:02  wtay

	* test/: Makefile.am, mp2tomp1v2.c, mp3play.c: Added a vob to mpeg1
	transcoder. note that this one is only 68 lines long.

2001-07-08 10:47  wtay

	* plugins/effects/volume/volume.c: I'm a moron..

2001-07-08 10:46  wtay

	* plugins/effects/volume/volume.c: Renamed the old volume plugin to
	volume_old.

2001-07-08 10:44  wtay

	* plugins/filters/: speed/Makefile.am, speed/filter.func,
	speed/speed.c, speed/speed.h, volume/Makefile.am,
	volume/filter.func, volume/mono-filter.func,
	volume/stereo-filter.func, volume/volume.c, volume/volume.h: Added
	the two plugins from Andy Wingo <apwingo@eos.ncsu.edu>

2001-07-07 17:34  wtay

	* docs/manual/Makefile.am: Added the init.sgml file to the makefile

2001-07-07 16:30  wtay

	* docs/manual/: intro.sgml, motivation.sgml: More blablah about how
	cool GStreamer really is..

2001-07-07 16:10  wtay

	* docs/manual/: gstreamer-manual.sgml, init.sgml, utility.sgml:
	Added docs on library init.

2001-07-07 15:17  wtay

	* docs/manual/: autoplugging.sgml, debugging.sgml,
	gstreamer-manual.sgml, helloworld2.sgml, programs.sgml: Lots of
	updates.  Added a chapter about the autoplugcache.  Updated the
	autoplug example using the autoplugcache.  Moved some stuff around.
	 Added an example app for gst_parse_launch.  Updated the debug
	info.

2001-07-07 15:14  wtay

	* examples/launch/mp3parselaunch.c: Add sane arg checking.

2001-07-07 15:07  wtay

	* examples/launch/: Makefile.am, mp3parselaunch.c: Added a
	parse_launch example.

2001-07-07 14:32  wtay

	* examples/helloworld2/helloworld2.c: Updated the autoplug example.

2001-07-07 12:34  wtay

	* docs/manual/: bins.sgml, dynamic.sgml, factories.sgml,
	goals.sgml, gstreamer-manual.sgml, helloworld.sgml,
	helloworld2.sgml, pads.sgml, programs.sgml, queues.sgml,
	threads.sgml, typedetection.sgml, utility.sgml, xml.sgml: Some
	updates to the manual, mostly glib2 related.

2001-07-07 11:55  wtay

	* docs/gst/: gstreamer-docs.sgml, gstreamer-sections.txt,
	gstreamer.hierarchy, tmpl/gstbuffer.sgml, tmpl/gstbufferpool.sgml,
	tmpl/gstelement.sgml, tmpl/gstpad.sgml, tmpl/gstplugin.sgml,
	tmpl/gstreamer-unused.sgml, tmpl/gstutils.sgml, tmpl/gstxml.sgml:
	Removed the last bits of Metadata.  Updated the bufferpool docs.

2001-07-06 22:00  wtay

	* plugins/capture/qcam/: gstqcamsrc.c, gstqcamsrc.h, qcam.h: Added
	lots of options.

2001-07-05 23:08  wtay

	* configure.base: Added the qcam src

2001-07-05 23:06  wtay

	* plugins/capture/qcam/dark.c: Some unused file..

2001-07-05 23:05  wtay

	* plugins/capture/: Makefile.am, qcam/Makefile.am, qcam/exposure.c,
	qcam/gstqcamsrc.c, qcam/gstqcamsrc.h, qcam/qcam-Linux.c,
	qcam/qcam-Linux.h, qcam/qcam-lib.c, qcam/qcam-os.c, qcam/qcam-os.h,
	qcam/qcam.h, qcam/qcamip.h: Added a simple bw-qcam src plugin.

2001-07-05 22:53  wtay

	* tools/gstreamer-launch.c: Added the xid stuff in again if
	compiling against gtk.

2001-07-04 21:49  uid21147

	* gst/gstutils.c: Added arg setting for UINT types.

2001-07-04 16:33  uid21147

	* plugins/ffmpeg/: Makefile.am, gstffmpegdec.c, gstffmpegenc.c:
	Lots of improvements to the ffmpeg wrappers.

2001-07-02 21:38  wtay

	* plugins/ffmpeg/: Makefile.am, gstffmpeg.c, gstffmpegdec.c,
	gstffmpegdec.h, gstffmpegenc.c, gstffmpegenc.h: Added the ffmpeg
	decoder wrappers.

2001-07-01 23:19  wtay

	* configure.base, plugins/ffmpeg/Makefile.am,
	plugins/ffmpeg/gstffmpegenc.c, plugins/ffmpeg/gstffmpegenc.h: Added
	the ffmpeg wrapper plugin. (ffmpeg.sourceforge.net).  Only the
	encoders are currently support, so no decoders or muxers yet..

2001-07-01 18:52  wtay

	* plugins/gsm/: Makefile.am, gstgsmdec.c, gstgsmenc.c: Fixed a bug
	with the buffer handling.

2001-07-01 17:10  sbaker3

	* plugins/filters/ladspa/gstladspa.c: better property name munging
	and added check for duplicate property names

2001-07-01 17:01  sbaker3

	* gst/gobject2gtk.c: return NULL from
	g2g_object_class_find_property if gtk_object_arg_get_info returns
	an error

2001-07-01 15:05  wtay

	* plugins/avi/gstavidemux.c: Added the memcpy back, we can't take
	ownership of the riff parser chunks..

2001-07-01 14:59  wtay

	* libs/riff/gstriff.h: Added types and structures for AVI/DV.

2001-07-01 14:58  wtay

	* plugins/avi/: gstavidecoder.c, gstavidemux.c, gstavidemux.h,
	gstavitypes.c: Added FV playback to avi. Currently only NTSC DV is
	supported. Both type1 and type2 avi/dv formats are supported.

2001-07-01 12:18  theuraeus

	* gstreamer.spec.in: 2001-01-07 Christian Schaller
	<Uraeus@linuxrising.org> - Updated SPEC file.  - Splitt out GUI
	modules - Added quicktime, flac, chart, udp modules

2001-07-01 12:16  theuraeus

	* LICENSE_readme, REQUIREMENTS: 2001-01-07 Christian Schaller
	<Uraeus@linuxrising.org> - Added FLAC information

2001-07-01 12:12  richardb

	* configure.base: Put the back check for the FLAC library.  This
	looks to have been accidentally removed when the sidplay one was
	added.

2001-07-01 11:28  sbaker3

	* plugins/filters/ladspa/gstladspa.c: gobject param fixes

2001-06-30 20:41  sbaker3

	* plugins/alsa/: alsasink.c, alsasrc.c: fix param problems due to
	gobject changes

2001-06-30 17:26  wtay

	* plugins/SID/: gstsiddec.cc, gstsiddec.h: Added a property for
	song selection.

2001-06-30 16:22  wtay

	* acinclude.m4, configure.base, plugins/Makefile.am,
	plugins/SID/Makefile.am: Added configure checks for libsidplay.

2001-06-30 15:10  wtay

	* plugins/SID/gstsiddec.cc: Added a bunch of properties.

2001-06-30 01:45  wtay

	* configure.base: Added the SID plugin.

2001-06-30 01:44  wtay

	* plugins/SID/gstsiddec.cc: Some cleanups

2001-06-30 01:37  wtay

	* plugins/SID/: .cvsignore, Makefile.am, gstsiddec.cc, gstsiddec.h:
	A first attempt at a SID decoder plugin.

2001-06-30 01:35  wtay

	* gst/elements/gstdisksrc.c: Fix an endless loop at EOS.. this is a
	hack...

2001-06-29 21:31  wtay

	* plugins/xmms/: gstxmmseffect.c, gstxmmsinput.c: GObject fixes for
	xmms plugins.  Cleaner names for the generated plugins.

2001-06-29 18:53  richardb

	* gst/gstparse.c: Allow elements to be given custom names with []
	syntax.
	
	ie, gstreamer-launch disksrc[mysrc] ! ...  makes a disksrc element
	named mysrc, rather than disksrc0
	
	Suggestion: don't name things with names with numbers at the end,
	or they may conflict with names allocated automatically.

2001-06-29 12:30  richardb

	* configure.base: Put GST_CFLAGS before other CFLAGS, to ensure
	that the correct headers get used if there's an installed copy of
	the gst headers on the system (ie, make sure the uninstalled
	headers are used instead).

2001-06-29 11:26  richardb

	* gst/Makefile.am: Prefix for marshallers should be gst_marshal,
	rather than gst.  This now actually compiles for me.

2001-06-29 10:39  richardb

	* gst/Makefile.am: Ensure that the marshaller code #includes
	glib-object.h, and hence the neccessary definitions to enable it to
	compile.
	
	I don't pretend to understand how the marshalling stuff works - I
	just know that it clearly needs this #include, or something
	similar.  If there's a more correct fix, someone else can do it. 
	Possibly this is a glib-genmarshal bug, but I've not got the time
	to go into that.

2001-06-29 00:58  richardb

	* gst/Makefile.am: Ensure that the gstmarshal.[ch] files are
	generated in time by generating both files in the same rule:
	previously, only the .c would be generated in time.  Don't put the
	files in dists (add a dist-hook to take them out), and clean the
	files when running distclean.

2001-06-28 22:44  richardb

	* gst/Makefile.am: Make sure conditionally compiled files are added
	to the dist.

2001-06-28 21:13  sbaker3

	* plugins/alsa/: alsasink.c, alsasrc.c: compile fixes for alsasrc
	and alsasink - params need more work (odd warning when doing
	-inspect alsasrc)

2001-06-28 20:32  wtay

	* acconfig.h, configure.base, plugins/Makefile.am: Added a check
	for the FLAC plugin.

2001-06-28 19:35  richardb

	* configure.base: Fix ALSA check; was overwriting the ALSA_CFLAGS
	and ALSA_LIBS variables determined for alsa 0.5 with the ones from
	the check that alsa 0.9 wasn't there.  Now does the 0.9 check
	first, to avoid this problem.

2001-06-28 17:31  richardb

	* docs/gst/Makefile.am: Remove gstreamer.html from generated files,
	since it was just a broken copy of one of the other files.  Sort
	out cleanfiles to some extent.	Note: the make dependencies in this
	file are completely broken, but it's not    clear how to fix them. 
	The docs will be built at make install / dist time, as a result.

2001-06-28 17:01  richardb

	* acinclude.m4: Fix a typo in a comment.

2001-06-28 16:39  richardb

	* acinclude.m4, configure.base: Add ACTION-IF-USE and
	ACTION-IF-NOTUSE parameters to GST_CHECK_FEATURE.  Convert glib2
	check to use GST_CHECK_FEATURE.

2001-06-28 16:11  thomasvs

	* plugins/filters/cutter/README: cutter plugin now has a settable
	pre-record buffer (using GList) README has been fleshed out a bit
	more

2001-06-28 12:56  richardb

	* configure.base: Actually pass the infomessages variable into
	config.status, so the message about plugin-builddir gets displayed.
	
	We can use this mechanism to display lists of plugins which won't
	be built: just add the lines to be output at the end of ./configure
	to $infomessages

2001-06-28 11:57  richardb

	* configure.base: Change plugin-srcdir msg stuff near the end of
	configure.base to -builddir.

2001-06-27 21:53  thomasvs

	* examples/cutter/cutter.c: implemented ring buffer

2001-06-27 21:53  thomasvs

	* plugins/filters/cutter/: cutter.c, cutter.h: added a GList
	pre-record buffer

2001-06-27 21:20  wtay

	* test/: dvshow.c, mp2toavi.c: Some small fixes.

2001-06-27 21:19  wtay

	* examples/autoplug/autoplug.c: Small fixes to the autoplugger so
	that it uses a colorspace element for video.

2001-06-27 21:15  wtay

	* plugins/quicktime/gstquicktimedecoder.c: Make the QT plugin
	extend from GstBin.

2001-06-27 21:14  wtay

	* plugins/avi/gstavidecoder.c: Make the avidecoder plugin extend
	from a GstBin.

2001-06-27 21:14  omegahacker

	* configure.base, gstreamer-config.in, gstreamer-uninstalled.pc.in,
	gstreamer.pc.in: configure.base: changed to 0.2.1, reworked the -D
	gathering for cflags gstreamer-config.in, gstreamer.pc.in,
	gstreamer-uninstalled.pc.in:  reworked -D gathering for cflags

2001-06-27 20:45  dlehn

	* plugins/arts/Makefile.am: Fix for automake 1.4 to actually build
	the generated source.  Clean up generated files.  Make sure only
	source idl gets into tarball.

2001-06-27 20:22  omegahacker

	* makeconfigure: added _CFLAGS and modified to allow the multiple
	substitition to occur

2001-06-27 18:22  richardb

	* makeconfigure: Add a hack to ensure that automake picks up the
	variables AC_SUBSTed in GST_CHECK_CONFIGPROG.

2001-06-27 18:04  richardb

	* acinclude.m4, configure.base: Add a "MODULES" parameter to
	GST_CHECK_CONFIGPROG, to pass sets of modules to the -config
	script.  Convert gnome test to use GST_CHECK_CONFIGPROG.

2001-06-27 17:56  richardb

	* acconfig.h, acinclude.m4, configure.base, plugins/Makefile.am,
	plugins/audiofile/Makefile.am: Remove HAVE_GDK_PIXBUF and
	HAVE_LIBAUDIOFILE from acconfig.h and AC_DEFINE: nothing uses
	these.	Add GST_CHECK_CONFIGPROG macro, to check a -config script
	and set --cflags and --libs from it.  Replace audiofile and
	gdk-pixbuf checks with calls to this macro.  Change use of
	HAVE_LIBAUDIOFILE to USE_LIBAUDIOFILE automake conditional.  Change
	use of AUDIOFILE_LIBS variable to LIBAUDIOFILE_LIBS.

2001-06-27 17:06  richardb

	* acinclude.m4: Fix brokenness with autoconf 2.50.  *sigh*

2001-06-27 16:04  richardb

	* acinclude.m4, configure.base: Add DISABLE-BY-DEFAULT argument to
	GST_CHECK_FEATURE, to allow a feature to be turned off by default. 
	Turn of XMMS check using this, rather than a hack.  Fix display of
	commandline parameters for GST_CHECK_FEATURE and
	GST_SUBSYSTEM_DISABLE.

2001-06-27 15:07  thomasvs

	* plugins/filters/cutter/: cutter.c, filter.func: fixed cutter
	plugin

2001-06-27 10:59  richardb

	* acinclude.m4: Add XMMS macro to acinclude.m4, since it's a
	commonly missing macro.  This joins the ALSA macro, which was
	already in acinclude.m4 We need some more consistent scheme for
	dealing with these... :(

2001-06-26 23:26  omegahacker

	* plugins/vgasink/Makefile.am: fixed vgasink Makefile.am, even
	though vgasink is disabled

2001-06-26 23:15  wtay

	* configure.base, gst/Makefile.am, tools/Makefile.am: Removed the
	GST_CONFIG_DIR from config.h and made a -D CFLAG for it instead so
	that we can do full expansion on the sysconfdir.

2001-06-26 22:49  richardb

	* configure.base: Fix up configure --help output:
	GST_DISABLE_SUBSYSTEM options were not displayed properly.

2001-06-26 22:44  richardb

	* configure.base, gst/elements/Makefile.am, plugins/Makefile.am:
	Convert XMMS and LIBGHTTP checks to use GST_CHECK_FEATURE() XMMS
	check is turned off by default (though not in a very neat way)

2001-06-26 22:29  wtay

	* configure.base, plugins/Makefile.am: Removed vgasink for now.

2001-06-26 22:07  wtay

	* plugins/udp/Makefile.am: Removed a cut&paste leftover..

2001-06-26 20:56  richardb

	* makeconfigure: Do hacky fix for AM_CONDITIONAL for
	GST_SUBSYSTEM_DISABLE, too.

2001-06-26 20:49  omegahacker

	* configure.base: Changes to the GST_SUBSYSTEM_DISABLE macro.

2001-06-26 20:06  richardb

	* gst/gobject2gtk.c: Fix g2g_object_class_list_properties() so that
	num_properties gets set.

2001-06-26 19:20  richardb

	* acinclude.m4, configure.base, plugins/Makefile.am: Convert artsc
	and arts checks to use GST_CHECK_FEATURE.  Extract the checks into
	macros.

2001-06-26 03:48  richardb

	* acinclude.m4, configure.base, plugins/Makefile.am: Move alsa
	check to use GST_CHECK_FEATURE macro.  Fix a small bug in the
	macro.

2001-06-26 03:27  richardb

	* acinclude.m4: Fixes to work properly with automake 1.4

2001-06-26 02:53  richardb

	* Makefile.am, acinclude.m4, autogen.sh, configure.base,
	makeconfigure: Added feature check macro, GST_CHECK_FEATURE.  Moved
	generation of configure.{in,ac} into a separate script.  Add hack
	to the script to stop automake complaining about missing
	AM_CONDITIONAL call.  Replace ESD check by a call to
	GST_CHECK_FEATURE.

2001-06-25 22:39  richardb

	* configure.base: Move config dir from /etc/gstreamer to
	${sysconfdir}/gstreamer by default: more portable, configurable,
	and standard.

2001-06-25 21:53  richardb

	* docs/plugins/Makefile.am: Remove more generated files

2001-06-25 21:41  richardb

	* docs/: manuals.mak, gst/Makefile.am, libs/Makefile.am: Remove
	many unwanted generated files from distributions.

2001-06-25 21:39  richardb

	* docs/Makefile.am: Added plugins to DIST_SUBDIRS

2001-06-25 21:37  wtay

	* plugins/oss/gstosssink.c: Don't use the trace feature when it is
	disabled.

2001-06-25 21:36  wtay

	* plugins/: avi/gstavidecoder.c, quicktime/gstquicktimedecoder.c:
	Don't use the autoplugger when it is disabled.

2001-06-25 21:36  wtay

	* gst/: Makefile.am, gst.c, gstautoplug.h, gstbuffer.c,
	gstbuffer.h, gstmeta.c, gstmeta.h, gstparse.h, gstplugin.c,
	gstplugin.h, gsttrace.h, gsttypefind.h: Removed the final bits of
	GstMeta.  Added conditional compilation of various subsystems.

2001-06-25 21:09  richardb

	* gst/: gobject2gtk.h, gstinfo.c, gstinfo.h: Add consts to
	appropriate parameters in debug and info handlers.  Add appropriate
	types for some of the memebers of the GTypeInfo struct.

2001-06-25 21:01  omegahacker

	* gst/: .cvsignore, Makefile.am: added gstmarshal.[ch] to
	.cvsignore, added gstmarshal.list to EXTRA_DIST

2001-06-25 21:00  omegahacker

	* gst/gstobject.h, plugins/Makefile.am,
	plugins/visualization/Makefile.am: added some dirs to DIST_SUBDIRS,
	added a comment to gstobject.h

2001-06-25 20:59  omegahacker

	* gst/: Makefile.am, gstmarshal.c, gstmarshal.h, gstmarshal.list:
	removed gstmarshal.[ch], added gstmarshal.list, and a first pass at
	generation rules

2001-06-25 20:19  wtay

	* configure.base, gst/Makefile.am: Added configure checks to
	disable various major subsystems.

2001-06-25 19:14  richardb

	* docs/gst/: Makefile.am, gstreamer.types.in: gstreamer.types.in:
	remove colorspace header.  Makefile.am: remove comment inside rule
	(nonportable).

2001-06-25 18:22  omegahacker

	* gst/: gobject2gtk.h, gst.c, gstelement.c: gobject2gtk.h: added
	g2g_object_get_type() prototype gst.c: fixed gst_add_paths_func()
	prototype gstelement.c: changed some prototypes, added a cast

2001-06-25 18:17  wtay

	* gst/gstobject.h: Added a missing #else

2001-06-25 17:44  wtay

	* configure.base: Removed the wine stuff.

2001-06-25 13:28  richardb

	* gst/gstobject.c: Fix a warning; stuff following an #endif

2001-06-25 13:09  richardb

	* autogen.sh: Added check for pkg-config to autogen.sh

2001-06-25 07:45  omegahacker

	* acconfig.h, autogen.sh, configure.base, gst/Makefile.am,
	gst/gstbin.c, gst/gstelement.c, gst/gstelementfactory.c,
	gst/gstinfo.c, gst/gstobject.c, gst/gstobject.h, gst/gstpad.c,
	gst/gstprops.c, gst/gstthread.c, gst/gstxml.h: Reworked the
	arguments for DEBUG and INFO.  Removed -debug-verbose.	Renamed
	GST_DISABLE_XML to GST_DISABLE_LOADSAVE and added --disable flag.

2001-06-25 04:37  omegahacker

	* gst/: gobject2gtk.c, gobject2gtk.h: Changed all globally defined
	stub functions to use the g2g_ prefix instead of g_, to avoid *any*
	potential namespace conflicts.

2001-06-25 02:20  omegahacker

	* acconfig.h, configure.base, docs/random/wtay/events,
	examples/Makefile.am, examples/cutter/cutter.c,
	examples/helloworld/helloworld.c,
	examples/helloworld2/helloworld2.c, examples/mixer/mixer.c,
	examples/plugins/example.c, examples/plugins/example.h,
	examples/queue/queue.c, examples/queue2/queue2.c,
	examples/queue3/queue3.c, examples/queue4/queue4.c,
	examples/thread/thread.c, examples/typefind/typefind.c,
	examples/xml/createxml.c, examples/xml/runxml.c, gst/Makefile.am,
	gst/gobject2gtk.c, gst/gobject2gtk.h, gst/gst.c, gst/gst.h,
	gst/gstautoplug.c, gst/gstautoplug.h, gst/gstbin.c, gst/gstbin.h,
	gst/gstelement.c, gst/gstelement.h, gst/gstelementfactory.c,
	gst/gstextratypes.c, gst/gstextratypes.h, gst/gstmarshal.c,
	gst/gstmarshal.h, gst/gstobject.c, gst/gstobject.h, gst/gstpad.c,
	gst/gstpad.h, gst/gstparse.c, gst/gstpipeline.c, gst/gstpipeline.h,
	gst/gstqueue.c, gst/gstqueue.h, gst/gstscheduler.c,
	gst/gstscheduler.h, gst/gstthread.c, gst/gstthread.h,
	gst/gsttypefind.c, gst/gsttypefind.h, gst/gstutils.c,
	gst/gstutils.h, gst/gstxml.c, gst/gstxml.h,
	gst/autoplug/autoplugtest.c, gst/autoplug/gstautoplugcache.c,
	gst/autoplug/gstautoplugger.c, gst/autoplug/gststaticautoplug.c,
	gst/autoplug/gststaticautoplug.h,
	gst/autoplug/gststaticautoplugrender.c,
	gst/autoplug/gststaticautoplugrender.h, gst/elements/Makefile.am,
	gst/elements/gstdisksink.c, gst/elements/gstdisksink.h,
	gst/elements/gstdisksrc.c, gst/elements/gstdisksrc.h,
	gst/elements/gstelements.c, gst/elements/gstfakesink.c,
	gst/elements/gstfakesink.h, gst/elements/gstfakesrc.c,
	gst/elements/gstfakesrc.h, gst/elements/gstfdsink.c,
	gst/elements/gstfdsink.h, gst/elements/gstfdsrc.c,
	gst/elements/gstfdsrc.h, gst/elements/gsthttpsrc.c,
	gst/elements/gsthttpsrc.h, gst/elements/gstidentity.c,
	gst/elements/gstidentity.h, gst/elements/gstmultidisksrc.c,
	gst/elements/gstmultidisksrc.h, gst/elements/gstpipefilter.c,
	gst/elements/gstpipefilter.h, gst/elements/gstsinesrc.c,
	gst/elements/gstsinesrc.h, gst/elements/gsttee.c,
	gst/elements/gsttee.h, gstplay/gstplay.c, plugins/Makefile.am,
	plugins/1394/dv1394src.c, plugins/1394/dv1394src.h,
	plugins/aasink/aasink.c, plugins/aasink/aasink.h,
	plugins/alaw/alaw-decode.c, plugins/alaw/alaw-decode.h,
	plugins/alaw/alaw-encode.c, plugins/alaw/alaw-encode.h,
	plugins/alsa/alsa.h, plugins/alsa/alsa_common.c,
	plugins/alsa/alsasink.c, plugins/alsa/alsasrc.c,
	plugins/arts/gst_arts.c, plugins/arts/gst_arts.h,
	plugins/artsd/artsdsink.c, plugins/artsd/artsdsink.h,
	plugins/au/gstparseau.c, plugins/au/gstparseau.h,
	plugins/audiofile/gstafsink.c, plugins/audiofile/gstafsink.h,
	plugins/audiofile/gstafsrc.c, plugins/audiofile/gstafsrc.h,
	plugins/audioscale/audioscale.c, plugins/audioscale/audioscale.h,
	plugins/avi/gstavidecoder.c, plugins/avi/gstavidecoder.h,
	plugins/avi/gstavidemux.c, plugins/avi/gstavidemux.h,
	plugins/avi/gstavimux.c, plugins/avi/gstavimux.h,
	plugins/avi/gstavitypes.c, plugins/avi/gstavitypes.h,
	plugins/avi/winaudio/aviaudiodecoder.c,
	plugins/avi/winaudio/aviaudiodecoder.h,
	plugins/avi/wincodec/gstwindec.cc,
	plugins/avi/wincodec/gstwindec.h,
	plugins/avi/wincodec/gstwinenc.cc,
	plugins/avi/wincodec/gstwinenc.h, plugins/capture/v4l/gstv4lsrc.c,
	plugins/capture/v4l/gstv4lsrc.h, plugins/cdparanoia/cdparanoia.c,
	plugins/cdparanoia/cdparanoia.h, plugins/cobin/cobin.c,
	plugins/cobin/cobin.h, plugins/cobin/spindentity.c,
	plugins/cobin/spindentity.h, plugins/dv/dvdec.c,
	plugins/dv/dvdec.h, plugins/dvdsrc/dvdsrc.c,
	plugins/dvdsrc/dvdsrc.h, plugins/effects/stereo/stereo.c,
	plugins/effects/stereo/stereo.h, plugins/effects/volume/volume.c,
	plugins/effects/volume/volume.h, plugins/esd/esdsink/esdsink.c,
	plugins/esd/esdsink/esdsink.h, plugins/festival/Makefile.am,
	plugins/festival/gstfestival.c, plugins/festival/gstfestival.h,
	plugins/filters/Makefile.am, plugins/filters/adder/adder.c,
	plugins/filters/adder/adder.h,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/colorspace/colorspace.h,
	plugins/filters/cutter/cutter.c, plugins/filters/cutter/cutter.h,
	plugins/filters/cutter/filter.func,
	plugins/filters/deinterlace/deinterlace.c,
	plugins/filters/deinterlace/deinterlace.h,
	plugins/filters/intfloatconvert/float2int.c,
	plugins/filters/intfloatconvert/float2int.h,
	plugins/filters/intfloatconvert/int2float.c,
	plugins/filters/intfloatconvert/int2float.h,
	plugins/filters/intfloatconvert/intfloatconvert.c,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/ladspa/gstladspa.h,
	plugins/filters/lav/lavencode.c, plugins/filters/lav/lavencode.h,
	plugins/filters/level/level.c, plugins/filters/level/level.h,
	plugins/filters/median/median.c, plugins/filters/median/median.h,
	plugins/filters/mono2stereo/mono2stereo.c,
	plugins/filters/mono2stereo/mono2stereo.h,
	plugins/filters/passthrough/level.c,
	plugins/filters/passthrough/level.h,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/passthrough/passthrough.h,
	plugins/filters/smooth/smooth.c, plugins/filters/smooth/smooth.h,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/filters/stereo2mono/stereo2mono.h,
	plugins/filters/volenv/filter.func,
	plugins/filters/volenv/volenv.c, plugins/filters/volenv/volenv.h,
	plugins/flx/flx_decoder.c, plugins/flx/flx_decoder.h,
	plugins/gnomevfs/gnomevfssink.c, plugins/gnomevfs/gnomevfssrc.c,
	plugins/gsm/gstgsmdec.c, plugins/gsm/gstgsmdec.h,
	plugins/gsm/gstgsmenc.c, plugins/gsm/gstgsmenc.h,
	plugins/icecast/icecastsend/icecastsend.c,
	plugins/icecast/icecastsend/icecastsend.h,
	plugins/jpeg/gstjpegdec.c, plugins/jpeg/gstjpegdec.h,
	plugins/jpeg/gstjpegenc.c, plugins/jpeg/gstjpegenc.h,
	plugins/mp3decode/mad/gstmad.c, plugins/mp3decode/mad/gstmad.h,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/gstmpg123.h,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/parse/mp3parse.h,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.h,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.h,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg1/parse/mpeg1parse.h,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1/system_encode/system_encode.h,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg1video/parse/mp1videoparse.h,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3dec/ac3dec.h,
	plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/ac3parse/ac3parse.h,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.h,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/parse/mpeg2parse.h,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/subtitles/mpeg2subt.h,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/video/gstmpeg2play.h,
	plugins/mpeg2/videoparse/mp2videoparse.c,
	plugins/mpeg2/videoparse/mp2videoparse.h,
	plugins/mulaw/mulaw-decode.c, plugins/mulaw/mulaw-decode.h,
	plugins/mulaw/mulaw-encode.c, plugins/mulaw/mulaw-encode.h,
	plugins/oss/gstossgst.c, plugins/oss/gstossgst.h,
	plugins/oss/gstosssink.c, plugins/oss/gstosssink.h,
	plugins/oss/gstosssrc.c, plugins/oss/gstosssrc.h,
	plugins/quicktime/gstquicktimedecoder.c,
	plugins/quicktime/gstquicktimedecoder.h,
	plugins/quicktime/gstquicktimedemux.c,
	plugins/quicktime/gstquicktimedemux.h,
	plugins/quicktime/gstquicktimetypes.c,
	plugins/quicktime/gstquicktimetypes.h, plugins/rtjpeg/rtjpegdec.c,
	plugins/rtjpeg/rtjpegdec.h, plugins/rtjpeg/rtjpegenc.c,
	plugins/rtjpeg/rtjpegenc.h, plugins/rtp/rtpsend/rtpsend.c,
	plugins/rtp/rtpsend/rtpsend.h, plugins/sdlsink/sdlvideosink.c,
	plugins/sdlsink/sdlvideosink.h, plugins/udp/.cvsignore,
	plugins/udp/Makefile.am, plugins/udp/gstudp.c,
	plugins/udp/gstudpsink.c, plugins/udp/gstudpsink.h,
	plugins/udp/gstudpsrc.c, plugins/udp/gstudpsrc.h,
	plugins/vcdsrc/vcdsrc.c, plugins/vcdsrc/vcdsrc.h,
	plugins/videoscale/videoscale.c, plugins/videoscale/videoscale.h,
	plugins/visualization/Makefile.am,
	plugins/visualization/chart/gstchart.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/smoothwave/smoothwave.h,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/spectrum/gstspectrum.h,
	plugins/visualization/synaesthesia/core.h,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/synaesthesia/synaesthesia.h,
	plugins/visualization/vumeter/vumeter.c,
	plugins/visualization/vumeter/vumeter.h,
	plugins/vorbis/vorbisdec.c, plugins/vorbis/vorbisdec.h,
	plugins/vorbis/vorbisenc.c, plugins/vorbis/vorbisenc.h,
	plugins/wav/gstparsewav.c, plugins/wav/gstparsewav.h,
	plugins/xmms/gstxmms.h, plugins/xmms/gstxmmseffect.c,
	plugins/xmms/gstxmmseffect.h, plugins/xmms/gstxmmsinput.c,
	plugins/xmms/gstxmmsinput.h, plugins/xmms/pluginenum.c,
	plugins/xmms/xmms.h, plugins/xvideosink/Makefile.am,
	plugins/xvideosink/xvideosink.c, plugins/xvideosink/xvideosink.h,
	test/ac3parse.c, test/ac3play.c, test/avi2mpg.c, test/aviparse.c,
	test/dvdcat.c, test/lat.c, test/mp1parse.c, test/mp1tomp1.c,
	test/mp2toavi.c, test/mp2tomp1.c, test/mp3.c, test/mp3mad.c,
	test/mp3parse.c, test/mp3play.c, test/mp3tovorbis.c,
	test/mpeg2parse.c, test/pipetest.c, test/qtest.c, test/record.c,
	test/vidcapture.c, test/vidcapture2.c, test/videotest.c,
	test/wave.c, test/xmmstest.c, tests/autoplug.c, tests/autoplug3.c,
	tests/case4.c, tests/incsched.c, tests/mp1vid.c, tests/mp3encode.c,
	tests/paranoia.c, tests/queue.c, tests/rip.c, tests/states.c,
	tests/threadlock.c, tests/eos/case1.c, tests/eos/case2.c,
	tests/eos/case3.c, tests/eos/case4.c, tests/eos/case5.c,
	tests/eos/case6.c, tests/eos/case7.c, tests/sched/runxml.c,
	tools/gstreamer-compprep.c, tools/gstreamer-inspect.c,
	tools/gstreamer-launch.c: Merged from GOBJECT1 to HEAD at 200106241

2001-06-25 01:07  omegahacker

	* gst/gobject2gtk.c, gst/gobject2gtk.h, tools/gstreamer-compprep.c,
	tools/gstreamer-inspect.c: added shim for
	g_object_class_list_properties and converted -inspect and -compprep
	to use it

2001-06-25 00:50  omegahacker

	* examples/plugins/: example.c, example.h: ported example plugin to
	gobject

2001-06-25 00:25  omegahacker

	* examples/cutter/cutter.c: ported to gobject

2001-06-24 23:56  omegahacker

	* plugins/visualization/chart/gstchart.c: ported chart to gobject

2001-06-24 23:44  omegahacker

	* LICENSE_readme, REQUIREMENTS, acconfig.h, autogen.sh,
	configure.base, gstreamer.spec.in, idiottest.mak,
	docs/gst/gstreamer-sections.txt, docs/manual/advanced.sgml,
	docs/manual/bins.sgml, docs/manual/factories.sgml,
	docs/manual/helloworld.sgml, docs/manual/helloworld2.sgml,
	docs/manual/pads.sgml, docs/manual/states.sgml, docs/random/eos,
	examples/Makefile.am, examples/cutter/Makefile.am,
	examples/cutter/cutter.c, examples/cutter/cutter.h,
	gst/Makefile.am, gst/gst.c, gst/gstautoplug.c, gst/gstbin.c,
	gst/gstbuffer.c, gst/gstbufferpool.c, gst/gstbufferpool.h,
	gst/gstcaps.c, gst/gstelement.c, gst/gstelementfactory.c,
	gst/gstobject.c, gst/gstobject.h, gst/gstpad.c, gst/gstparse.c,
	gst/gstplugin.c, gst/gstprops.c, gst/gstscheduler.c,
	gst/gstthread.c, gst/elements/gstdisksink.c,
	gst/elements/gstdisksrc.c, gstplay/ChangeLog, gstplay/Makefile.am,
	gstplay/callbacks.c, gstplay/full-screen.c, gstplay/full-screen.h,
	gstplay/gstmediaplay.c, gstplay/gstmediaplay.glade,
	gstplay/gstmediaplay.h, gstplay/gstplay.c, gstplay/gstplay.h,
	gstplay/main.c, include/Makefile.am, libs/audio/gstaudio.c,
	libs/audio/gstaudio.h, libs/riff/gstriffencode.c,
	plugins/Makefile.am, plugins/audiofile/gstafsink.c,
	plugins/audiofile/gstafsrc.c, plugins/audiofile/gstafsrc.h,
	plugins/filters/Makefile.am,
	plugins/filters/colorspace/Makefile.am,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/colorspace/colorspace.h,
	plugins/filters/cutter/README, plugins/filters/cutter/cutter.c,
	plugins/filters/cutter/cutter.h,
	plugins/filters/deinterlace/.cvsignore,
	plugins/filters/deinterlace/Makefile.am,
	plugins/filters/deinterlace/deinterlace.c,
	plugins/filters/deinterlace/deinterlace.h,
	plugins/filters/intfloatconvert/float2int.c,
	plugins/filters/intfloatconvert/float2int.h,
	plugins/filters/intfloatconvert/int2float.c,
	plugins/filters/intfloatconvert/int2float.h,
	plugins/filters/median/median.c, plugins/filters/median/median.h,
	plugins/filters/smooth/smooth.c, plugins/filters/smooth/smooth.h,
	plugins/flac/.cvsignore, plugins/flac/Makefile.am,
	plugins/flac/flac.c, plugins/flac/flacdec.c,
	plugins/flac/flacdec.h, plugins/flac/flacenc.c,
	plugins/flac/flacenc.h, plugins/jpeg/gstjpegdec.c,
	plugins/mp3decode/mad/gstmad.c, plugins/mp3decode/mad/gstmad.h,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg1/parse/mpeg1parse.h,
	plugins/quicktime/Makefile.am,
	plugins/quicktime/gstquicktimedecoder.c,
	plugins/quicktime/gstquicktimedecoder.h,
	plugins/quicktime/gstquicktimedemux.c,
	plugins/quicktime/gstquicktimedemux.h,
	plugins/quicktime/gstquicktimetypes.c,
	plugins/quicktime/gstquicktimetypes.h, plugins/vgasink/.cvsignore,
	plugins/vgasink/Makefile.am, plugins/vgasink/vgavideosink.c,
	plugins/vgasink/vgavideosink.h, plugins/videoscale/videoscale.h,
	plugins/visualization/Makefile.am,
	plugins/visualization/chart/.cvsignore,
	plugins/visualization/chart/Makefile.am,
	plugins/visualization/chart/gstchart.c, tools/README,
	tools/gstreamer-compprep.1, tools/gstreamer-launch.c: Merge from
	HEAD to BRANCH-GOBJECT1 at 200106241

2001-06-24 22:21  wtay

	* tools/gstreamer-launch.c: Commented out the Gtk widget stuff.

2001-06-24 22:18  omegahacker

	* gst/: Makefile.am, gst.c, gstautoplug.c, gstbin.c, gstcaps.c,
	gstelement.c, gstelementfactory.c, gstobject.c, gstobject.h,
	gstpad.c, gstprops.c, gstthread.c: initial pass at #ifdef'ing xml
	load/save

2001-06-24 22:15  wtay

	* gstplay/gstplay.c: Some compile fixes.

2001-06-24 22:14  wtay

	* configure.base: Added the festival plugin and udp.

2001-06-24 22:10  wtay

	* plugins/: festival/gstfestival.c, oss/gstosssink.c,
	oss/gstosssink.h, oss/gstosssrc.c, udp/gstudpsink.c,
	udp/gstudpsrc.c, udp/gstudpsrc.h, xvideosink/Makefile.am: Added an
	arg to set the fragment size in oss plugins.  Use a TCP stream
	connection to do caps nego over the wire in UDP.  More pending
	changes to some plugins.

2001-06-24 22:06  omegahacker

	* configure.base, plugins/Makefile.am: New check for libesd, a
	model for all the other checks I hope.	Need to convert all the
	other checks to operate like this.

2001-06-24 16:20  wtay

	* plugins/: Makefile.am, udp/.cvsignore, udp/Makefile.am,
	udp/gstudp.c, udp/gstudpsink.c, udp/gstudpsink.h, udp/gstudpsrc.c,
	udp/gstudpsrc.h: Added the beginnings of an udp send/receive
	plugin.

2001-06-24 16:20  wtay

	* plugins/udp/gstudpsink.h: file gstudpsink.h was initially added
	on branch BRANCH-GOBJECT1.

2001-06-24 16:20  wtay

	* plugins/udp/Makefile.am: file Makefile.am was initially added on
	branch BRANCH-GOBJECT1.

2001-06-24 16:20  wtay

	* plugins/udp/gstudpsrc.c: file gstudpsrc.c was initially added on
	branch BRANCH-GOBJECT1.

2001-06-24 16:20  wtay

	* plugins/udp/gstudp.c: file gstudp.c was initially added on branch
	BRANCH-GOBJECT1.

2001-06-24 16:20  wtay

	* plugins/udp/gstudpsink.c: file gstudpsink.c was initially added
	on branch BRANCH-GOBJECT1.

2001-06-24 16:20  wtay

	* plugins/udp/.cvsignore: file .cvsignore was initially added on
	branch BRANCH-GOBJECT1.

2001-06-24 16:20  wtay

	* plugins/udp/gstudpsrc.h: file gstudpsrc.h was initially added on
	branch BRANCH-GOBJECT1.

2001-06-24 15:55  wtay

	* docs/random/wtay/events: file events was initially added on
	branch BRANCH-GOBJECT1.

2001-06-24 15:55  wtay

	* docs/random/wtay/events: Added some random ramblings about a the
	design of an event system.

2001-06-24 02:02  wtay

	* gst/gobject2gtk.c: Removed some debug noise.

2001-06-24 01:55  wtay

	* test/: aviparse.c, mp1parse.c, mpeg2parse.c, videotest.c, wave.c:
	Compile fixes for gtk.

2001-06-23 13:23  wtay

	* plugins/festival/gstfestival.c: Make sure we don't send more data
	than the buffersize.

2001-06-23 13:12  wtay

	* plugins/festival/gstfestival.c: file gstfestival.c was initially
	added on branch BRANCH-GOBJECT1.

2001-06-23 13:12  wtay

	* plugins/festival/Makefile.am: file Makefile.am was initially
	added on branch BRANCH-GOBJECT1.

2001-06-23 13:12  wtay

	* plugins/: Makefile.am, festival/Makefile.am,
	festival/gstfestival.c, festival/gstfestival.h: Added the festival
	text-to-speech plugin. It will currently only work by contacting
	the festival server on localhost. The output is WAV so it needs to 
	be parsed with parsewav before connecting it to an audiosink:
	
	./gstreamer-launch disksrc location=/etc/motd ! festival ! parsewav
	! osssink
	
	Latency is terrible because we don't process uterances individually
	yet.

2001-06-23 13:12  wtay

	* plugins/festival/gstfestival.h: file gstfestival.h was initially
	added on branch BRANCH-GOBJECT1.

2001-06-22 02:14  wtay

	* examples/: Makefile.am, helloworld/helloworld.c,
	helloworld2/helloworld2.c, mixer/mixer.c, queue/queue.c,
	queue2/queue2.c, queue3/queue3.c, queue4/queue4.c, thread/thread.c,
	typefind/typefind.c, xml/createxml.c, xml/runxml.c: Fixed the
	examples for glib2 Removed plugins for now (need to run the script
	on it)

2001-06-22 02:05  wtay

	* tests/: autoplug.c, autoplug3.c, case4.c, incsched.c, mp1vid.c,
	mp3encode.c, paranoia.c, queue.c, rip.c, states.c, threadlock.c,
	eos/case1.c, eos/case2.c, eos/case3.c, eos/case4.c, eos/case5.c,
	eos/case6.c, eos/case7.c, sched/runxml.c: Lots of compile fixes for
	glib2.0

2001-06-22 01:43  wtay

	* test/: ac3parse.c, ac3play.c, avi2mpg.c, dvdcat.c, lat.c,
	mp1tomp1.c, mp2toavi.c, mp2tomp1.c, mp3.c, mp3mad.c, mp3parse.c,
	mp3play.c, mp3tovorbis.c, pipetest.c, qtest.c, record.c,
	vidcapture.c, vidcapture2.c, xmmstest.c: Lots of compile fixes
	against glib2.0

2001-06-22 01:14  wtay

	* configure.base: Disable most of the gnome/gtk stuff when
	compiling with glib2

2001-06-22 00:11  wtay

	* plugins/capture/v4l/: gstv4lsrc.c, gstv4lsrc.h: Added the option
	to set the format and the output size.

2001-06-21 23:48  omegahacker

	* gst/gstqueue.c: marked up the function pointers with
	GST_DEBUG_FUNCPTR

2001-06-21 20:44  wtay

	* configure.base: Added vgasink.

2001-06-21 20:43  wtay

	* plugins/vgasink/: .cvsignore, Makefile.am, vgavideosink.c,
	vgavideosink.h: Added the vgasink by sienap.

2001-06-21 16:29  wtay

	* tools/gstreamer-compprep.c: Compile fixes for GObject.

2001-06-21 15:39  wtay

	* tools/gstreamer-inspect.c: Fixed a compileation error for
	GObject.

2001-06-21 15:22  wtay

	* gst/: gobject2gtk.h, gstqueue.c: Compile fixes for gobject.

2001-06-21 13:21  sbaker3

	* docs/gst/gstreamer-sections.txt: added refcounting and
	_get_default

2001-06-21 12:50  wtay

	* plugins/flx/flx_decoder.h: Removed the colorspace dependency.

2001-06-21 12:50  wtay

	* plugins/Makefile.am: Removed the videoscaler for now until it's
	fixed.

2001-06-21 12:49  wtay

	* plugins/videoscale/: gstscale_x86.c, gstscale_x86.h,
	gstscale_x86_asm.s, gstvideoscale.c, gstvideoscale.h, videoscale.h:
	Added some files for future use.

2001-06-21 12:42  wtay

	* libs/Makefile.am: Removed old unused libs.

2001-06-21 12:35  wtay

	* configure.base: Removed the winloader

2001-06-21 12:34  wtay

	* libs/Makefile.am: Removed the wine loader.

2001-06-21 12:32  wtay

	* include/Makefile.am: Removed the winelibs.

2001-06-21 12:19  sbaker3

	* gst/: gstbufferpool.c, gstbufferpool.h: added ref counting to the
	buffer pool. also _destroy will clean up the buffer pool mem_chunk
	if it is the default implementation

2001-06-21 03:03  omegahacker

	* plugins/Makefile.am: fixed spelling of xvideosink

2001-06-21 00:43  wtay

	* gst/: gobject2gtk.h, gstqueue.c: Added some signal shims.  Fixed
	the queue state_change stuff.

2001-06-20 23:52  wtay

	* plugins/Makefile.am: Added the xvideosink to the dirs.

2001-06-20 23:33  wtay

	* plugins/: dv/dvdec.c, xmms/xmms.h: All pending changes I still
	have

2001-06-20 23:21  wtay

	* plugins/aasink/aasink.c: Compile fixes for aasink.

2001-06-20 23:21  wtay

	* gst/gobject2gtk.h: Added a shim for a marshaller.

2001-06-20 22:56  wtay

	* gst/gobject2gtk.h: Added som shims for GTypeFlags and GParamFlags

2001-06-20 22:55  wtay

	* plugins/avi/wincodec/: gstwindec.cc, gstwinenc.cc: Compile fixes
	against gtk.

2001-06-20 22:40  wtay

	* plugins/arts/gst_arts.c: compile fixes for GTK1.2.

2001-06-20 22:40  wtay

	* gst/gobject2gtk.h: Fixed an arg called "class", it's a C++
	reserved word..

2001-06-20 22:30  wtay

	* gst/gobject2gtk.h: Added g_type_from_name to the shims.

2001-06-20 22:29  wtay

	* plugins/filters/ladspa/gstladspa.c: Some compile fixes for gtk1.2

2001-06-20 21:58  wtay

	* gst/gobject2gtk.c: Renamed the shortname field in GParamSpec to
	name to match the glib2.0 implementation.

2001-06-20 21:49  wtay

	* tools/gstreamer-inspect.c: Added object properties introspection.

2001-06-20 21:48  wtay

	* gst/gobject2gtk.h: Added a better shim for g_object_get_property

2001-06-20 15:53  sbaker3

	* gst/gstbuffer.c: fixed operator precedence bug which caused 32
	times too much memory to be allocated for each GstBuffer struct

2001-06-20 00:17  omegahacker

	* gst/: gobject2gtk.c, gobject2gtk.h, elements/gstfakesrc.c: fixed
	signal registration problem in gobject2gtk shim

2001-06-19 22:14  omegahacker

	* gst/gobject2gtk.c, gst/gobject2gtk.h, gst/gstpad.c,
	gst/autoplug/gstautoplugger.c, gst/elements/gstfdsrc.c,
	plugins/aasink/aasink.c, plugins/effects/stereo/stereo.c,
	plugins/effects/volume/volume.c,
	plugins/filters/mono2stereo/mono2stereo.c,
	plugins/mp3encode/lame/gstlame.c, plugins/sdlsink/sdlvideosink.c:
	More GObject updates, cleanups to some of the elements to make the
	port correct.

2001-06-19 19:32  wtay

	* gst/elements/gstdisksink.c: Changed the bytes_written to a gint
	to avoid overflow...

2001-06-19 13:53  richardb

	* idiottest.mak: idiottest was failing because of change of
	PLUGIN_USE_SRCDIR to PLUGIN_USE_BUILDDIR - fixed.

2001-06-19 11:34  richardb

	* tools/gstreamer-launch.c: Add -o option argument to
	gstreamer-launch, to specify a file to output the pipeline to,
	instead of running it.

2001-06-19 08:57  omegahacker

	* autogen.sh: updated autogen.sh to use --enable-plugin-builddir

2001-06-19 08:57  omegahacker

	* gst/gstplugin.c, acconfig.h, configure.base: changed
	plugin-srcdir to plugin-builddir, which is what it should be

2001-06-18 23:33  richardb

	* gst/gstprops.c: Simplify properties which contain lists of
	integer and integer range entries to minimal combination of ints
	and ranges that is equivalent.	eg, (1,2,3,7-12,13) becomes
	(1-3,7-13)
	
	Don't bother with floats for the moment, though it would be easy to
	add an equivalent, which would simplify overlapping ranges.

2001-06-18 21:14  richardb

	* plugins/visualization/chart/gstchart.c: Fix memory leak, thanks
	wtay.

2001-06-18 20:20  wtay

	* plugins/flac/: Makefile.am, flacdec.c, flacenc.c, flacenc.h:
	Updated the flac decoder/encode to the latest CVS version.  I had
	to increase the cothread stack in cothread.c (8 threads max) to get
	the encoder working :(

2001-06-18 12:27  richardb

	* plugins/filters/Makefile.am: Add a DIST_SUBDIRS line

2001-06-18 12:12  richardb

	* configure.base, plugins/visualization/Makefile.am: Add chart
	plugin to build system.

2001-06-18 12:09  richardb

	* plugins/visualization/chart/: .cvsignore, Makefile.am,
	gstchart.c: Initial commit of chart plugin.  Draws charts of data
	streams.  Currently has no settable framerate, draws inefficiently,
	has no settable size and looks fairly ugly.  Needs data parsing to
	be split into a separate plugin.

2001-06-18 05:56  dlehn

	* configure.base: ALSA checks use alsa_save_* names and gst attempt
	to save flags fails when using the same names.	Prefixed with gst_.

2001-06-17 23:14  wtay

	* plugins/flac/: flacenc.c, flacenc.h: More work on the encoder..
	it still segfaults inside the flac lib for some reason..

2001-06-17 20:44  wtay

	* plugins/flac/: .cvsignore, Makefile.am, flac.c, flacdec.c,
	flacdec.h, flacenc.c, flacenc.h: Added a FLAC decoder.	The encoder
	does not work yet.

2001-06-17 16:06  wtay

	* gst/elements/gstsinesrc.c: Updated the params a bit.

2001-06-17 16:03  wtay

	* gst/: gstutils.c, gstutils.h: Fixed the utils for getting
	properties again.  Added come const directives to the arguments
	again.	Check for non exiting properties.

2001-06-17 15:35  sbaker3

	* gst/gstbufferpool.h: added _gst_buffer_pool_initialize

2001-06-17 15:12  wtay

	* tools/gstreamer-inspect.c: Print out the enum values too.

2001-06-17 14:58  sbaker3

	* plugins/filters/intfloatconvert/: float2int.c, int2float.c: uses
	default bufferpool factory

2001-06-17 14:55  sbaker3

	* gst/: gst.c, gstbufferpool.c, gstbufferpool.h: added a default
	bufferpool factory function. it reuses existing instances of
	bufferpool if requests are made for existing buffer sizes

2001-06-17 09:55  omegahacker

	* gst/gstobject.c, gst/gstobject.h, gst/gsttypefind.c,
	gst/autoplug/gstautoplugcache.c, plugins/aasink/aasink.c,
	plugins/audiofile/gstafsink.c, plugins/audiofile/gstafsrc.c,
	plugins/cdparanoia/cdparanoia.c, plugins/esd/esdsink/esdsink.c,
	plugins/filters/cutter/cutter.c, plugins/gnomevfs/gnomevfssink.c,
	plugins/gnomevfs/gnomevfssrc.c, plugins/gsm/gstgsmenc.c,
	plugins/jpeg/gstjpegenc.c, plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/sdlsink/sdlvideosink.c, plugins/xmms/gstxmmseffect.c,
	plugins/xvideosink/xvideosink.c: Mostly went around converting
	G_OBJECT_TYPE(klass) to G_TYPE_FROM_CLASS(klass)

2001-06-17 09:52  omegahacker

	* configure.ac, configure.in: removed configure.ac and configure.in

2001-06-17 05:07  omegahacker

	* plugins/1394/: dv1394src.c, dv1394src.h: ported 1394 plugin to
	gobject, somehow forget that one...

2001-06-17 04:17  wtay

	* tools/gstreamer-inspect.c: Added enums to inspect.

2001-06-17 04:10  omegahacker

	* gst/gobject2gtk.h: file gobject2gtk.h was initially added on
	branch BRANCH-GOBJECT1.

2001-06-17 04:10  omegahacker

	* gst/gobject2gtk.c: file gobject2gtk.c was initially added on
	branch BRANCH-GOBJECT1.

2001-06-17 04:10  omegahacker

	* acconfig.h, configure.base, gst/Makefile.am, gst/gobject2gtk.c,
	gst/gobject2gtk.h, gst/gst.c, gst/gst.h, gst/gstextratypes.c,
	gst/gstextratypes.h, gst/gstobject.c, gst/gstobject.h,
	gst/gstparse.c, gst/gstqueue.c, gst/gstthread.c, gst/gstutils.c,
	gst/gstutils.h: Added gobject to gtkobject bridge
	(gobject2gtk.[ch]) and configure-time support for selecting between
	glib and gtk (--enable-glib2 to build with gobject).

2001-06-17 04:05  wtay

	* plugins/mp3encode/lame/gstlame.c: Fixed the get and set functions
	for enum properties.

2001-06-17 04:03  wtay

	* docs/manual/helloworld.sgml: Fixed the audiosink in the example
	with osssink.

2001-06-17 03:47  wtay

	* gst/: gstutils.c, gstutils.h: Fixed the utils for getting
	properties.  Added come const directives to the arguments.

2001-06-17 03:39  wtay

	* tools/gstreamer-inspect.c: Figured out how to get a property from
	an object.

2001-06-16 18:35  wtay

	* tools/gstreamer-inspect.c: Pff, this doesn't seem to work...	Can
	someone try to get a property from a GObject?

2001-06-16 18:25  wtay

	* tools/gstreamer-inspect.c: Somewhat fixed -inspect

2001-06-16 15:36  wtay

	* configure.base: Removed the obsolete libs.

2001-06-16 15:35  wtay

	* plugins/Makefile.am: Added the avi stuff to the makefile again.

2001-06-16 15:29  wtay

	* plugins/avi/: Makefile.am, codectest.c, gstavidecoder.c,
	gstavidecoder.h, gstavidemux.c, gstavidemux.h, gstaviencoder.c,
	gstaviencoder.h, gstavimux.c, gstavimux.h, gstavitypes.c,
	gstavitypes.h, playcodecs.c, videoheader.c: Updated the avi decoder
	to gobject.

2001-06-16 14:46  wtay

	* plugins/avi/winaudio/: aviaudiodecoder.c, aviaudiodecoder.h:
	Updated the audiodecoder to gobject.

2001-06-16 14:24  wtay

	* gstplay/gstplay.c: Removed a check (see that the file exists
	locally ??) to enable network streaming with gnomevfssrc again.

2001-06-16 14:17  wtay

	* plugins/avi/wincodec/: Makefile.am, gstwincodec.c,
	gstwincodec.cc, gstwindec.c, gstwindec.cc, gstwindec.h,
	gstwinenc.c, gstwinenc.cc, gstwinenc.h: Merged from HEAD on
	20010616 (13:00 GMT).  Compile fixes for GObject.

2001-06-16 01:43  wtay

	* plugins/Makefile.am: Updated the makefile.

2001-06-16 01:32  wtay

	* plugins/arts/gst_arts.c: Fixed arts

2001-06-16 01:26  wtay

	* plugins/filters/Makefile.am: Added LADSPA back in the Makefile.

2001-06-16 01:25  wtay

	* plugins/filters/ladspa/gstladspa.c: LADSPA compiles.

2001-06-16 01:14  wtay

	* plugins/xmms/: gstxmmseffect.c, gstxmmsinput.c, pluginenum.c:
	Fixed some stuff in xmms, removed the args for now.

2001-06-16 00:49  wtay

	* plugins/flx/flx_decoder.h: Removed the dependency on colorspace.

2001-06-16 00:48  wtay

	* plugins/filters/: Makefile.am, ladspa/gstladspa.c: Removed ladspa
	from the Makefile until it compiles.  Removed the dependency on OSS
	from ladspa.

2001-06-16 00:36  wtay

	* plugins/visualization/: Makefile.am, synaesthesia/core.h,
	synaesthesia/synaesthesia.c, synaesthesia/synaesthesia.h: Removed
	old, non functional code out of the makefile.

2001-06-16 00:23  omegahacker

	* configure.ac, configure.in, gst/gst.c, gst/gstmarshal.c,
	gst/gstmarshal.h, gst/autoplug/autoplugtest.c,
	plugins/aasink/aasink.c, plugins/aasink/aasink.h,
	plugins/alaw/alaw-decode.c, plugins/alaw/alaw-decode.h,
	plugins/alaw/alaw-encode.c, plugins/alaw/alaw-encode.h,
	plugins/alsa/alsa.h, plugins/alsa/alsa_common.c,
	plugins/alsa/alsasink.c, plugins/alsa/alsasrc.c,
	plugins/arts/gst_arts.c, plugins/arts/gst_arts.h,
	plugins/artsd/artsdsink.c, plugins/artsd/artsdsink.h,
	plugins/au/gstparseau.c, plugins/au/gstparseau.h,
	plugins/audiofile/gstafsink.c, plugins/audiofile/gstafsink.h,
	plugins/audiofile/gstafsrc.c, plugins/audiofile/gstafsrc.h,
	plugins/audioscale/audioscale.c, plugins/audioscale/audioscale.h,
	plugins/capture/v4l/gstv4lsrc.c, plugins/capture/v4l/gstv4lsrc.h,
	plugins/cdparanoia/cdparanoia.c, plugins/cdparanoia/cdparanoia.h,
	plugins/cobin/cobin.c, plugins/cobin/cobin.h,
	plugins/cobin/spindentity.c, plugins/cobin/spindentity.h,
	plugins/dv/dvdec.c, plugins/dv/dvdec.h, plugins/dvdsrc/dvdsrc.c,
	plugins/dvdsrc/dvdsrc.h, plugins/effects/stereo/stereo.c,
	plugins/effects/stereo/stereo.h, plugins/effects/volume/volume.c,
	plugins/effects/volume/volume.h, plugins/esd/esdsink/esdsink.c,
	plugins/esd/esdsink/esdsink.h, plugins/filters/adder/adder.c,
	plugins/filters/adder/adder.h,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/colorspace/colorspace.h,
	plugins/filters/cutter/cutter.c, plugins/filters/cutter/cutter.h,
	plugins/filters/cutter/filter.func,
	plugins/filters/intfloatconvert/float2int.c,
	plugins/filters/intfloatconvert/float2int.h,
	plugins/filters/intfloatconvert/int2float.c,
	plugins/filters/intfloatconvert/int2float.h,
	plugins/filters/intfloatconvert/intfloatconvert.c,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/ladspa/gstladspa.h,
	plugins/filters/lav/lavencode.c, plugins/filters/lav/lavencode.h,
	plugins/filters/level/level.c, plugins/filters/level/level.h,
	plugins/filters/median/median.c, plugins/filters/median/median.h,
	plugins/filters/mono2stereo/mono2stereo.c,
	plugins/filters/mono2stereo/mono2stereo.h,
	plugins/filters/passthrough/level.c,
	plugins/filters/passthrough/level.h,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/passthrough/passthrough.h,
	plugins/filters/smooth/smooth.c, plugins/filters/smooth/smooth.h,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/filters/stereo2mono/stereo2mono.h,
	plugins/filters/volenv/filter.func,
	plugins/filters/volenv/volenv.c, plugins/filters/volenv/volenv.h,
	plugins/flx/flx_decoder.c, plugins/flx/flx_decoder.h,
	plugins/gnomevfs/gnomevfssink.c, plugins/gnomevfs/gnomevfssrc.c,
	plugins/gsm/gstgsmdec.c, plugins/gsm/gstgsmdec.h,
	plugins/gsm/gstgsmenc.c, plugins/gsm/gstgsmenc.h,
	plugins/icecast/icecastsend/icecastsend.c,
	plugins/icecast/icecastsend/icecastsend.h,
	plugins/jpeg/gstjpegdec.c, plugins/jpeg/gstjpegdec.h,
	plugins/jpeg/gstjpegenc.c, plugins/jpeg/gstjpegenc.h,
	plugins/mp3decode/mad/gstmad.c, plugins/mp3decode/mad/gstmad.h,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/gstmpg123.h,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/parse/mp3parse.h,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.h,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.h,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg1/parse/mpeg1parse.h,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1/system_encode/system_encode.h,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg1video/parse/mp1videoparse.h,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3dec/ac3dec.h,
	plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/ac3parse/ac3parse.h,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.h,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/parse/mpeg2parse.h,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/subtitles/mpeg2subt.h,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/video/gstmpeg2play.h,
	plugins/mpeg2/videoparse/mp2videoparse.c,
	plugins/mpeg2/videoparse/mp2videoparse.h,
	plugins/mulaw/mulaw-decode.c, plugins/mulaw/mulaw-decode.h,
	plugins/mulaw/mulaw-encode.c, plugins/mulaw/mulaw-encode.h,
	plugins/quicktime/gstquicktimedecoder.c,
	plugins/quicktime/gstquicktimedecoder.h,
	plugins/rtjpeg/rtjpegdec.c, plugins/rtjpeg/rtjpegdec.h,
	plugins/rtjpeg/rtjpegenc.c, plugins/rtjpeg/rtjpegenc.h,
	plugins/rtp/rtpsend/rtpsend.c, plugins/rtp/rtpsend/rtpsend.h,
	plugins/sdlsink/sdlvideosink.c, plugins/sdlsink/sdlvideosink.h,
	plugins/vcdsrc/vcdsrc.c, plugins/vcdsrc/vcdsrc.h,
	plugins/videoscale/videoscale.c, plugins/videoscale/videoscale.h,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/smoothwave/smoothwave.h,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/spectrum/gstspectrum.h,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/synaesthesia/synaesthesia.h,
	plugins/visualization/vumeter/vumeter.c,
	plugins/visualization/vumeter/vumeter.h,
	plugins/vorbis/vorbisdec.c, plugins/vorbis/vorbisdec.h,
	plugins/vorbis/vorbisenc.c, plugins/vorbis/vorbisenc.h,
	plugins/wav/gstparsewav.c, plugins/wav/gstparsewav.h,
	plugins/xmms/gstxmms.h, plugins/xmms/gstxmmseffect.c,
	plugins/xmms/gstxmmseffect.h, plugins/xmms/gstxmmsinput.c,
	plugins/xmms/gstxmmsinput.h, plugins/xmms/xmms.h,
	plugins/xvideosink/xvideosink.c, plugins/xvideosink/xvideosink.h:
	Mega patch updates almost all the plugins to GObject.  This was
	done with a Perl script, with only a few minor manual tweaks where
	the perl didn't catch the code just right.  There may be a few
	minor issues remaining from this, but they should be easy to catch
	(plugin doesn't work).
	
	There are several plugins that have GDK/GTK code in them that
	shouldn't, these need to be dealt with next.

2001-06-16 00:15  wtay

	* plugins/filters/smooth/: smooth.c, smooth.h: Added caps to the
	smooth filter.

2001-06-16 00:15  wtay

	* plugins/filters/median/median.c: copy timestamps too.

2001-06-15 23:48  wtay

	* plugins/filters/median/: median.c, median.h: Added an option to
	only filter the luminance plane.

2001-06-15 23:38  wtay

	* plugins/filters/median/: median.c, median.h: Added caps to the
	median filter.

2001-06-15 23:03  wtay

	* plugins/videoscale/gstscale_x86_asm.s: file gstscale_x86_asm.s
	was initially added on branch BRANCH-GOBJECT1.

2001-06-15 23:03  wtay

	* plugins/videoscale/: gstscale_x86.c, gstscale_x86.h,
	gstscale_x86_asm.s, gstvideoscale.c, gstvideoscale.h, videoscale.h:
	Just added some files I will need soon.

2001-06-15 23:03  wtay

	* plugins/videoscale/gstscale_x86.h: file gstscale_x86.h was
	initially added on branch BRANCH-GOBJECT1.

2001-06-15 23:03  wtay

	* plugins/videoscale/gstvideoscale.h: file gstvideoscale.h was
	initially added on branch BRANCH-GOBJECT1.

2001-06-15 23:03  wtay

	* plugins/videoscale/gstscale_x86.c: file gstscale_x86.c was
	initially added on branch BRANCH-GOBJECT1.

2001-06-15 23:03  wtay

	* plugins/videoscale/gstvideoscale.c: file gstvideoscale.c was
	initially added on branch BRANCH-GOBJECT1.

2001-06-15 23:00  wtay

	* libs/Makefile.am: Removed old unused libs.

2001-06-15 22:46  wtay

	* docs/manual/: advanced.sgml, bins.sgml, factories.sgml,
	helloworld.sgml, helloworld2.sgml, pads.sgml, states.sgml: Small
	updates to the manual.

2001-06-15 20:49  sbaker3

	* plugins/filters/intfloatconvert/: float2int.c, float2int.h: takes
	multiple float pads and converts to interleaved int data. Different
	sized and out-of-order buffer support is in place but not tested.

2001-06-15 20:48  sbaker3

	* plugins/filters/intfloatconvert/: int2float.c, int2float.h: now
	converts interleaved ints to mono floats in seperate pads.  Also
	now has a _request_new_pad func

2001-06-15 20:46  wtay

	* tools/README: Updated the README file with some cool
	gstreamer-launch cmd lines by Matthew McClintock
	<mattsm@mail.utexas.edu>

2001-06-15 20:13  wtay

	* gst/: gstelement.c, gstpad.c, gstparse.c, gstparse.h,
	gstscheduler.c, elements/gstdisksrc.c: Changed a stupid assert in
	request_pad.  Some fixes for pullregion and EOS conditions.  Remove
	an unneeded check in the scheduler (check for NULL buffer) some EOS
	fixes for pullregion in disksrc.  Removed the macro in the
	gstparse.h header 'cause it's internal to gstparse.c Added a check
	in gstparse for NULL element.

2001-06-15 17:42  thomasvs

	* examples/cutter/cutter.c: added some minor stuff

2001-06-15 17:22  wtay

	* plugins/avi/wincodec/gstwindec.cc: A fix for latest CVS avifile.

2001-06-15 16:44  richardb

	* configure.base: Fix mistake with saved CPPFLAGS for sdl test and
	libdv test: was unsaving the value before saving... :(

2001-06-15 16:42  richardb

	* configure.base: Fix bug #433398, by putting GLIB_CFLAGS

2001-06-15 07:33  sbaker3

	* gst/gstparse.c: should restore dynamic connection of pads
	(couldn't really test it though)

2001-06-14 22:02  omegahacker

	* plugins/oss/: gstossgst.c, gstossgst.h, gstosssink.c,
	gstosssink.h, gstosssrc.c, gstosssrc.h: ported to gobject

2001-06-14 22:02  omegahacker

	* gst/: gstpad.c, elements/Makefile.am, elements/gstdisksink.c,
	elements/gstdisksrc.c, elements/gstfakesrc.c,
	elements/gstsinesrc.c, elements/gsttee.c: various fixes needed to
	get to sinesrc ! osssink

2001-06-14 21:39  wtay

	* gst/autoplug/: gstautoplugcache.c, gstautoplugger.c,
	gststaticautoplug.c, gststaticautoplugrender.c: Fixed some minor
	compiler warnings.

2001-06-14 21:23  omegahacker

	* configure.base: added gmodule to glib-2.0 stuff

2001-06-14 21:19  omegahacker

	* gst/gstmarshal.h: file gstmarshal.h was initially added on branch
	BRANCH-GOBJECT1.

2001-06-14 21:19  omegahacker

	* gst/: gstmarshal.c, gstmarshal.h: new files that need to be
	removed at some point because they are to be autogenerated

2001-06-14 21:19  omegahacker

	* gst/gstmarshal.c: file gstmarshal.c was initially added on branch
	BRANCH-GOBJECT1.

2001-06-14 19:04  thomasvs

	* examples/cutter/cutter.c: changed cutter example to use a thread

2001-06-14 04:14  omegahacker

	* gst/: Makefile.am, gst.c, gstautoplug.c, gstbin.c, gstelement.c,
	gstobject.c, gstpad.c, gstparse.c, gsttypefind.c, gstxml.c,
	autoplug/autoplugtest.c, autoplug/gstautoplugcache.c,
	autoplug/gstautoplugger.c, autoplug/gststaticautoplug.c,
	autoplug/gststaticautoplug.h, autoplug/gststaticautoplugrender.c,
	autoplug/gststaticautoplugrender.h, elements/gstdisksink.c,
	elements/gstdisksink.h, elements/gstdisksrc.c,
	elements/gstdisksrc.h, elements/gstelements.c,
	elements/gstfakesink.c, elements/gstfakesink.h,
	elements/gstfakesrc.c, elements/gstfakesrc.h, elements/gstfdsink.c,
	elements/gstfdsink.h, elements/gstfdsrc.c, elements/gstfdsrc.h,
	elements/gsthttpsrc.c, elements/gsthttpsrc.h,
	elements/gstidentity.c, elements/gstidentity.h,
	elements/gstmultidisksrc.c, elements/gstmultidisksrc.h,
	elements/gstpipefilter.c, elements/gstpipefilter.h,
	elements/gstsinesrc.c, elements/gstsinesrc.h, elements/gsttee.c,
	elements/gsttee.h: Bring all the other stuff in gst/ up to match
	libgst.la's GObject port.  Fixed some minor problems with the
	signalling stuff in the core.
	
	IT WORKS!

2001-06-13 23:09  thomasvs

	* examples/cutter/cutter.c: cutter now uses afsink to write out
	wavs we will add a queue next to handle latency problems

2001-06-13 23:03  thomasvs

	* plugins/audiofile/gstafsink.c: afsink now closes and reopens
	files when you change the location

2001-06-13 22:59  omegahacker

	* configure.base: new configure check for glib 2.0, now requires
	pkg-config to be installed

2001-06-13 22:52  thomasvs

	* configure.base, examples/Makefile.am: added cutter example

2001-06-13 22:52  omegahacker

	* gst/: gstautoplug.c, gstautoplug.h, gstbin.c, gstbin.h,
	gstelement.c, gstelement.h, gstelementfactory.c, gstextratypes.c,
	gstextratypes.h, gstobject.c, gstobject.h, gstpad.c, gstpad.h,
	gstparse.c, gstpipeline.c, gstpipeline.h, gstqueue.c, gstqueue.h,
	gstscheduler.c, gstscheduler.h, gstthread.c, gstthread.h,
	gsttypefind.c, gsttypefind.h, gstutils.c, gstutils.h, gstxml.c,
	gstxml.h: First round of changes to port to GObject.  libgst.la
	compiles, though there are a few things commented out. 
	Specifically object destruction is probably broken, but wtay gets
	to fix that because he researched the problem of glib 2.0 object
	destruction while doing the first round.  Some of the XML stuff is
	commented out, but that's an easy fix.
	
	Next is the rest of the gst/ directory, then on to the plugins.

2001-06-13 22:45  wtay

	* plugins/quicktime/: gstquicktimedecoder.c, gstquicktimedecoder.h,
	gstquicktimedemux.c, gstquicktimedemux.h, gstquicktimetypes.c:
	Fixed the quicktime plugin. things now work with mjpeg.

2001-06-13 22:35  thomasvs

	* plugins/audiofile/gstafsink.c: afsink now handles eos and closes
	off file

2001-06-13 22:33  wtay

	* gst/gstpad.c: Loop in pullregion until the desired buffer has
	been pulled.

2001-06-13 22:08  thomasvs

	* plugins/filters/cutter/cutter.c: check for buffer's framedness

2001-06-13 22:08  thomasvs

	* libs/audio/: gstaudio.c, gstaudio.h: added a function to check if
	the buffer's data is framed

2001-06-13 22:02  wtay

	* plugins/avi/wincodec/: gstwindec.cc, gstwinenc.cc: fixed a small
	fix in the type init function that makes some C++ compilers
	complain.

2001-06-13 21:26  thomasvs

	* configure.base: added deinterlace

2001-06-13 18:39  wtay

	* plugins/mp3decode/mad/gstmad.c: Removed the debug output.

2001-06-13 17:20  thomasvs

	* examples/cutter/: Makefile.am, cutter.c, cutter.h: added example
	program to show how cutter plugin works

2001-06-13 17:16  thomasvs

	* plugins/filters/cutter/cutter.c: some code clean-ups and sensible
	default values

2001-06-13 17:13  thomasvs

	* plugins/filters/cutter/README: added a better description of the
	cutter plugin

2001-06-13 17:04  thomasvs

	* plugins/filters/cutter/: cutter.c, cutter.h, filter.func: added
	threshold level and runlength arguments stopped copying buffer used
	audio lib functions for some stuff

2001-06-13 16:33  thomasvs

	* libs/audio/: gstaudio.c, gstaudio.h: added helper function to
	calculate maximum possible sample value based on caps

2001-06-13 10:51  thomasvs

	* docs/random/eos: added two more cases of eos reasoning

2001-06-13 02:18  cael

	* gstplay/: ChangeLog, Makefile.am, callbacks.c, full-screen.c,
	full-screen.h, gstmediaplay.c, gstmediaplay.glade, gstmediaplay.h,
	gstplay.c, gstplay.h, main.c: Hmm, added working (if hacked)
	full-screen play, shuffled things around, added error checking so
	we don't crash on file not found, added the beginnings of a
	preferences dialog.

2001-06-12 22:35  wtay

	* plugins/filters/deinterlace/Makefile.am: Removed the leftover
	filter.func file and README in the makefile.

2001-06-12 22:35  wtay

	* plugins/filters/Makefile.am: Added the deinterlace filter

2001-06-12 22:33  wtay

	* plugins/filters/deinterlace/: .cvsignore, Makefile.am,
	deinterlace.c, deinterlace.h: Added a deinterlace filter.

2001-06-12 22:27  wtay

	* plugins/filters/colorspace/Makefile.am: Add libHermes too of
	course..

2001-06-12 21:19  wtay

	* plugins/filters/Makefile.am: Still compile colorspace when Hermes
	was not found.

2001-06-12 21:19  wtay

	* plugins/filters/colorspace/: Makefile.am, colorspace.c,
	colorspace.h: ifdef out the Hermes code when the library was not
	found.

2001-06-12 20:47  wtay

	* libs/riff/gstriffencode.c: Fixed a bug in the avi encoder with
	wrong alignment.

2001-06-12 20:45  wtay

	* plugins/jpeg/gstjpegdec.c: Don't push a buffer when the pad is
	not connected.

2001-06-12 20:44  wtay

	* plugins/mpeg1/parse/: mpeg1parse.c, mpeg1parse.h: Added a sync
	arg to turn off syncing on the timestamps.

2001-06-12 20:42  wtay

	* plugins/avi/: Makefile.am, codectest.c, gstaviencoder.c,
	gstaviencoder.h, gstavimux.c, gstavimux.h, videoheader.c,
	wincodec/gstwindec.cc, wincodec/gstwinenc.cc, wincodec/gstwinenc.h:
	Removed old code.  Enhanced the avi decoder.  The encoder now sorta
	works. For big input frames it segfaults though inside a libavifile
	function.  Renamed the aviencoder to avimux.

2001-06-12 15:35  thomasvs

	* plugins/audiofile/: gstafsrc.c, gstafsrc.h: added timestamps to
	afsrc element

2001-06-12 14:42  thomasvs

	* plugins/mp3decode/mad/gstmad.h: added framestamp

2001-06-12 11:12  thomasvs

	* plugins/mp3decode/mad/gstmad.c: added a different way of
	generating timestamps; activate by uncommenting #define
	DEBUG_TIMESTAMP

2001-06-12 11:11  thomasvs

	* libs/audio/: gstaudio.c, gstaudio.h: added some function to
	support framestamps & timestamps

2001-06-11 23:04  shitowax

	* plugins/quicktime/: Makefile.am, gstquicktimedecoder.c,
	gstquicktimedecoder.h: Transformation of the quicktime plugin into
	version 0.2.0 style

2001-06-11 23:02  shitowax

	* plugins/quicktime/: gstquicktimedemux.c, gstquicktimedemux.h,
	gstquicktimetypes.c, gstquicktimetypes.h: Intitial CVS introduction

2001-06-11 21:19  thomasvs

	* plugins/Makefile.am: fixed AVIFILE dependency check

2001-06-11 20:09  omegahacker

	* gst/gstelement.h: changed indent and argnames to trigger
	gtk2gobject.sh

2001-06-10 22:13  richardb

	* tools/gstreamer-compprep.1: Some formatting updates, thanks to
	using manedit

2001-06-10 19:50  theuraeus

	* LICENSE_readme: 2001-10-06 Christian Schaller
	<Uraeus@linuxrising.org> - Moved a couple of libs from GPL to LGPL
	since they had been mistakenly branded as GPL.

2001-06-10 12:57  sbaker3

	* gst/gstparse.c: can now take comma delimited list of pads. eg
	gstreamer-launch disksrc location=~/mp3/gnome.mp3 ! mad ! int2float
	src%d,src%d\!sink%d,sink%d float2int ! osssink

2001-06-10 02:18  theuraeus

	* gstreamer.spec.in: 2001-10-06 Christian Schaller
	<Uraeus@linuxrising.org> - Updated the SPEC file as per Erik's
	wishes - Split out the mpeg stuff - Silenced gstreamer-register
	when run after each package

2001-06-09 22:48  theuraeus

	* gstreamer.spec.in: 2001-09-06 Christian Schaller
	<Uraeus@linuxrising.org> - Added gstreamer-register to all plugins

2001-06-09 20:23  theuraeus

	* gstreamer.spec.in: 2001-09-06 Christian Schaller
	<Uraeus@linuxrising.org> - moved the visualisations plugins out
	
	TODO: 1. the mpeg plugins need sorting out. currently they are all
	just placed inside the main package. Need help with this since I am
	unsure about what files belongs where with what dependency 2.
	Cross-dependencies probably should be added to the plugins 3.
	License information should be added to the plugins 4.
	GStreamer-register needs to be added for each plugin

2001-06-09 19:50  theuraeus

	* gstreamer.spec.in: 2001-09-06 Christian Schaller
	<Uraeus@linuxrising.org> - Finally the SPEC file works again, now
	only polishing it remains

2001-06-09 17:44  theuraeus

	* gstreamer.spec.in: 2001-09-06 Christian Schaller
	<Uraeus@linuxrising.org> - More SPEC fixes, not perfect yet, but
	maybe it actually works now

2001-06-09 12:43  sbaker3

	* gst/: gstparse.c, gstparse.h: store src and sink pads in slists
	to get ready for the src1,src2\!sink1,sink2 syntax

2001-06-09 11:16  sbaker3

	* gst/gstparse.c: if a named pad doesn't exist, try creating a new
	pad using the padtemplate name. eg int2float src%d!sink%d float2int

2001-06-09 03:33  theuraeus

	* gstreamer.spec.in: 2001-09-06 Christian Schaller
	<Uraeus@linuxrising.org> - More fixes to the SPEC file, still not
	verfied that it works, but I need sleep and it is guaranteed closer
	to working than the current one. More testing and SPEC file hacking
	tommorow(aka later today).

2001-06-09 01:16  wtay

	* plugins/avi/wincodec/: Makefile.am, gstwincodec.c,
	gstwincodec.cc, gstwindec.c, gstwindec.cc, gstwindec.h,
	gstwinenc.c, gstwinenc.cc: The windows decoder now uses the dll
	loader from avifile, significantly simplyfying the codec.

2001-06-09 01:14  wtay

	* REQUIREMENTS, configure.base: Added a check for avifile.

2001-06-08 23:17  theuraeus

	* gstreamer.spec.in: 2001-08-06 Christian Schaller
	<Uraeus@linuxrising.org> - Added ALSA plugin (commented out since I
	don't have alsa installed)

2001-06-08 22:56  theuraeus

	* REQUIREMENTS, gstreamer.spec.in: 2001-08-06 Christian Schaller
	<Uraeus@linuxrising.org> - Updated GStreamer SPEC which sorts out
	plugins into separate plugins, needs more work to support all
	plugins.

2001-06-07 22:45  ajmitch

	* plugins/esd/esdsink/Makefile.am: Added README to EXTRA_DIST

2001-06-07 22:43  wtay

	* plugins/avi/Makefile.am: Added README to dist

2001-06-07 22:02  ajmitch

	* plugins/esd/esdsink/README: Added README for esdsink. Someone
	please give it some TLC before 0.2.0 release :)

2001-06-07 19:31  wtay

	* plugins/avi/: README, wincodec/gstwindec.c: Added a README file
	about the innner working of the avi decoder.

2001-06-07 17:56  dlehn

	* debian/changelog, debian/gstreamer-tools.manpages,
	gst/autoplug/.cvsignore: Added manpage Ignore built autoplugtest
	binary Bump debian version to 0.2.0

2001-06-07 11:58  richardb

	* tools/: Makefile.am, gstreamer-complete.1, gstreamer-compprep.1,
	gstreamer-register.1: Add gstreamer-compprep man page.

2001-06-07 09:18  ajmitch

	* AUTHORS: Credited 'ALSA plugins' to Thomas Nydberg in AUTHORS

2001-06-07 07:38  dlehn

	* debian/gstreamer-common.files: latest plugins updates

2001-06-07 07:06  cael

	* gstplay/: ChangeLog, gstmediaplay.glade: dissabled full-screen
	for the time being till i have time to fix it.

2001-06-07 01:08  omegahacker

	* tools/: gstreamer-inspect.1, gstreamer-launch.1,
	gstreamer-register.1: added --gst-mask to the man pages

2001-06-06 20:31  wtay

	* plugins/avi/Makefile.am: Added the REAME_win32dll to extra dist

2001-06-06 20:23  dlehn

	* debian/: Makefile.am, changelog, control, gstreamer-artsd.files,
	gstreamer-audiofile.files, gstreamer-common.files,
	gstreamer-gnomevfs.files, gstreamer-gsm.files,
	gstreamer-jpeg.files, gstreamer-oss.files, gstreamer-sdl.files,
	gstreamer-tools.files, gstreamer-tools.manpages, libgst-dev.files,
	rules: Added new plugin packages and synced up to a late pre2 CVS
	base.

2001-06-06 20:21  dlehn

	* .cvsignore: Added configure.{ac,in} to .cvsignore since they are
	autogenerated from configure.base now.

2001-06-06 20:20  dlehn

	* docs/gst/Makefile.am: Added .o and .lo to clean-local target

2001-06-06 20:15  wtay

	* gst/gstelement.c: Removed a warning.

2001-06-06 20:12  wtay

	* plugins/filters/lav/Makefile.am: Removed the README file from
	extra dist.

2001-06-06 20:07  wtay

	* plugins/filters/Makefile.am: Added the lavencoder

2001-06-06 19:33  wtay

	* docs/: gst/tmpl/gstreamer-unused.sgml, random/NOTES-0.2.0: Some
	minor docs updates.

2001-06-06 19:31  wtay

	* configure.base: Added the lav encoder Makefile.am

2001-06-06 19:29  wtay

	* gst/: cothreads.c, gstparse.c: Changed the maxcothreads to 16. 
	connect to the new_ghost_pad signal in parse.

2001-06-06 17:21  wtay

	* plugins/gsm/gstgsmdec.c: Small fix to initialize a counter.

2001-06-06 17:20  wtay

	* plugins/avi/: gstavidecoder.c, gstavitypes.c: Fixes for different
	PCM audio formats.

2001-06-06 17:09  wtay

	* plugins/avi/: gstavidecoder.c, gstavitypes.c: More fixes for
	audio.	Only send buffers if the pad is connected.

2001-06-06 17:08  wtay

	* plugins/jpeg/gstjpegdec.c: Some fixes for various jpeg formats.

2001-06-06 15:24  thomasvs

	* configure.base, plugins/filters/Makefile.am: added cutter plugin
	to config stuff

2001-06-06 15:21  thomasvs

	* plugins/filters/cutter/: Makefile.am, README, cutter.c, cutter.h,
	filter.func: cutter plugin; emits signals when audio RMS level
	falls below or rises above threshold value for a given consecutive
	run of buffers

2001-06-06 15:14  thomasvs

	* configure.base, libs/Makefile.am: added Makefile generation for
	gstaudio library

2001-06-06 15:13  thomasvs

	* libs/audio/: Makefile.am, gstaudio.c, gstaudio.h: first try at a
	general gstreamer audio library with helper functions

2001-06-06 13:47  richardb

	* docs/manual/quotes.sgml: Add an important quote from Omega.

2001-06-06 00:39  theuraeus

	* plugins/avi/README_win32dll: 2001-06-06 Christian Schaller
	<Uraeus@linuxrising.org> * Add small textfile with some information
	on win32 dll situation

2001-06-05 20:44  sbaker3

	* plugins/filters/ladspa/: gstladspa.c, gstladspa.h: mono _get and
	_chain should now work.Many other changes including: all immutable
	info is in the class struct, activate/deactivate should work, and a
	bunch of other stuff

2001-06-05 18:45  wtay

	* tools/gstreamer-inspect.c: Somewhat improve the layout of args in
	inspect.

2001-06-05 18:26  sbaker3

	* plugins/filters/intfloatconvert/: float2int.c, float2int.h,
	int2float.c, int2float.h: use proxying for caps

2001-06-05 02:27  richardb

	* gst/: Makefile.am, gstelementfactory.c: Revert accidentally
	applied changes.  Time for bed.

2001-06-05 02:26  richardb

	* gst/: Makefile.am, gstelementfactory.c, gstplugin.c: FIx memleak
	in save-thyself introduced by changing plugin_get_list to copy.

2001-06-05 02:15  richardb

	* gst/gstplugin.c: Simple fix to stop gstreamer-compprep crashing
	when the registry is in use.

2001-06-04 22:52  wtay

	* plugins/xvideosink/: xvideosink.c, xvideosink.h: Added an option
	to disable Xv images. It's not pretty but it works.

2001-06-04 22:02  wtay

	* tools/gstreamer-launch.c: Fixed the xid stuff and some cleanups.

2001-06-04 21:16  wtay

	* plugins/mp3encode/lame/gstlame.c: Set the src caps to audio/mp3

2001-06-04 20:20  wtay

	* plugins/mp3encode/lame/gstlame.c: Removed the MPG_MD* defines
	bacause they seem to be undefined with some versions of lame.

2001-06-04 20:00  wtay

	* plugins/oss/README: Added a little info about the ossgst hack.

2001-06-04 19:59  wtay

	* plugins/oss/gstosssrc.c: Some osssrc fixes

2001-06-04 17:55  wtay

	* plugins/mp3encode/lame/gstlame.c: Small updates.

2001-06-04 17:33  wtay

	* plugins/vorbis/vorbisenc.c: Fixed a bug for mono input.

2001-06-04 17:02  wtay

	* gst/cothreads.c: Use the STACKSIZE and number of cothreads to
	calculate the cothread stack space (easier to change the number of
	cothreads).

2001-06-04 16:59  thomasvs

	* plugins/oss/gstosssrc.c: set default format to 44100/16/stereo

2001-06-04 16:38  thomasvs

	* gst/gstparse.c: added an eos handler so that gstreamer-launch
	quits when the first element fires it

2001-06-04 15:52  wtay

	* plugins/mpeg1/mpegaudio/gstmpegaudio.c: Fixes to do proper caps
	negotiation.

2001-06-04 15:50  wtay

	* tools/gstreamer-inspect.c: Print out the default values.

2001-06-04 14:51  sbaker3

	* plugins/alsa/: alsasink.c, alsasrc.c: removed MAKE_ARG macro (it
	didn't seem to work)\nAttempted to make the element name consist
	only of alphanumeric and _ (eg ESS_AudioDrive_ES1688_0_0_src)

2001-06-04 12:25  richardb

	* docs/gst/Makefile.am: Nasty hack enabling docs/gst/ to build with
	unpatched versions of gtkdoc-scanobj which don't understand
	libtool.

2001-06-04 02:26  wtay

	* plugins/xmms/: gstxmmseffect.c, gstxmmseffect.h: Added capsnego
	to the xmms effects.

2001-06-04 01:51  richardb

	* gst/gst.c: Replace NO_X conditional compilation with testing
	whether DISPLAY env variable is set, and doing gtk_type_init()
	instead of gtk_init() if not.

2001-06-04 01:38  richardb

	* autogen.sh: Don't ever run if we know automake isn't patched:
	people keep complaining that their machine crashed while trying to
	build...

2001-06-04 00:40  wtay

	* plugins/xmms/gstxmmsinput.c: Added capsnego to the xmms input
	plugin.

2001-06-03 23:30  wtay

	* tools/README: More info about the other tools.

2001-06-03 20:49  richardb

	* tools/: Makefile.am, gstreamer-complete.1, gstreamer-launch.1:
	Add man page for gstreamer-complete

2001-06-03 20:26  wtay

	* docs/gst/tmpl/gstreamer-unused.sgml: Docs updates

2001-06-03 20:24  wtay

	* plugins/flx/flx_decoder.c: More cleanups

2001-06-03 20:20  wtay

	* plugins/flx/flx_decoder.c: Small cleanups

2001-06-03 20:19  wtay

	* gst/gst.c: optionally call gtk_type_init() instead of gtk_init()
	if NO_X is defined. This avoids the X dependency of GStreamer.

2001-06-03 20:14  wtay

	* plugins/au/: gstparseau.c, gstparseau.h: Cleanups to the au
	parser.

2001-06-03 20:13  wtay

	* plugins/mp3decode/mad/gstmad.c: Small caps updates.

2001-06-03 20:11  wtay

	* plugins/xvideosink/: gstxwindow.c, xvideosink.c: Don't fail when
	an X-connection could not be made.

2001-06-03 20:09  wtay

	* docs/random/NOTES-0.2.0: small changes

2001-06-03 20:06  wtay

	* Makefile.am: Removed the components dir from since it doesn't
	work/build anyway.

2001-06-03 16:30  wtay

	* docs/random/NOTES-0.2.0: More small updates.:

2001-06-03 16:29  wtay

	* docs/random/NOTES-0.2.0: Added first desciption of the changes
	for 0.2.0

2001-06-03 13:08  wtay

	* gstplay/gstplay.c: Find the seeking properties in GstBin objects
	too.

2001-06-03 13:06  wtay

	* plugins/avi/: gstavidecoder.c, gstavitypes.c,
	wincodec/gstwindec.c: Added the seeking args to the avi decoder. 
	Set the buffer flush flag in windec.

2001-06-03 12:28  wtay

	* plugins/cdparanoia/cdparanoia.c: Set the pad caps in _init time.

2001-06-03 12:28  wtay

	* gst/gstpad.c: Set the caps on a proxied pad when the pad is not
	connected.

2001-06-03 12:20  richardb

	* plugins/arts/Makefile.am: Add dependency so that gst_artsio.cc
	gets generated in time, and change rule to generate it into a
	suffix rule.  Register suffix so that automake can set _OBJECTS
	appropriately.

2001-06-03 02:45  wtay

	* plugins/avi/: gstavidecoder.c, gstavidemux.c, gstavitypes.c:
	Added support for mjpeg and PCM audio.

2001-06-03 02:00  wtay

	* plugins/jpeg/: gstjpeg.c, gstjpegenc.c: Removed the caps that are
	not used.

2001-06-03 00:36  richardb

	* configure.base, plugins/arts/Makefile.am: Fix arts check, with
	artsc-config hackery.

2001-06-02 22:57  wtay

	* plugins/cdparanoia/: cdparanoia.c, cdparanoia.h: Applied the
	patch from Apoc: ?? _ Add properties cur_sector read only ( get
	current sector ) ?? _ Add properties last_track read only ( last
	track of the cd ) ?? _ Add properties cur_track read only ( get the
	current track ) ?? _ Properties end_track writeable ( last track to
	rip/play )

2001-06-02 22:52  wtay

	* plugins/cdparanoia/cdparanoia.c: Set the caps of the srcpad right
	before sending a buffer instead of in the _init function.

2001-06-02 19:26  omegahacker

	* tools/gstreamer-launch.c: added check to make sure there's a
	pipeline desc before building

2001-06-02 19:11  wtay

	* configure.base: Added the avi makefiles.

2001-06-02 19:08  wtay

	* plugins/avi/: Makefile.am, gstavidecoder.c, gstavidecoder.h,
	gstavidemux.c, gstavidemux.h, gstavitypes.c, gstavitypes.h,
	winaudio/Makefile.am, winaudio/aviaudiodecoder.c,
	winaudio/aviaudiodecoder.h: More rework on the avi decoder.  The
	avi decoder is now a bin that manages the avidemuxer and the
	codecs. It uses the autoplugger and avitypes to convert avi types
	into mime/types and select gstreamer codecs to create an element.

2001-06-02 19:06  richardb

	* autogen.sh: Clarify the messages about the patched automake one
	more time.  If it's not clear now, and people continue to complain
	about automake eating their resources, I'm mysteriously unable to
	hear them.

2001-06-02 17:38  wtay

	* examples/helloworld/helloworld.c: Fixed the helloworld example by
	using a pipeline as the toplevel element.

2001-06-02 16:33  ajmitch

	* configure.base: Let's just say I have a better understanding of
	autoconf now (I should really have read the manual first). It helps
	to remember that yes != no ;)

2001-06-02 14:42  ajmitch

	* configure.base: Automake is picky about white space...

2001-06-02 14:38  ajmitch

	* Makefile.am, configure.base: Added options --disable-tests and
	--disable-examples for quicker builds for the impatient...

2001-06-02 13:45  wtay

	* gst/gstpad.c: Copy the padtemplate to the ghostpad.

2001-06-02 13:21  richardb

	* configure.base, plugins/gsm/Makefile.am, plugins/gsm/gstgsmdec.h,
	plugins/gsm/gstgsmenc.h: Fix gsm to check for "gsm.h" as well as
	"gsm/gsm.h".

2001-06-02 11:42  richardb

	* plugins/sdlsink/Makefile.am: Fix a typoe in sdlsink Makefile.am

2001-06-02 11:40  theuraeus

	* gstreamer.spec.in: 2001-02-06 Christian Schaller
	<Uraeus@linuxrising.org> * Doh, forgot to update the Changelog
	inside the SPEC file

2001-06-02 11:38  theuraeus

	* gstreamer.spec.in: 2001-02-06 Christian Schaller
	<Uraeus@linuxrising.org> * Small fix to group statement for
	GStreamer
	
	My work on the SPEC file making the RPM make one package for all
	non-core plugins is underway, but I am not ready with it yet.

2001-06-02 03:21  richardb

	* configure.base: Oops: fixed SDL header check: put flags in
	CPPFLAGS rather than CFLAGS.  We should really filter the
	SDL_CFLAGS and only pass appropriate options through, but this
	works well enough for now.

2001-06-02 03:05  richardb

	* configure.base: Improve SDL check: use correct CFLAGS when
	searching for header.

2001-06-01 23:56  wtay

	* plugins/avi/: Makefile.am, gstavidecoder.c, gstavidecoder.h,
	playcodecs.c, wincodec/gstwincodec.c, wincodec/gstwindec.c,
	wincodec/gstwindec.h: Reworked the avi decoder. it works again now
	(but no sound yet).

2001-06-01 23:36  thomasvs

	* tests/reconnect.c: ok, this works now

2001-06-01 23:23  thomasvs

	* tests/: Makefile.am, reconnect.c: test for disconnect and
	reconnect of elements

2001-06-01 22:26  theuraeus

	* gstreamer.spec.in: 2001-01-06 Christian Schaller
	<Uraeus@linuxrising.org> - First batch of upgrades to the SPEC
	file, this one from   Dennis Bjorklund. Thanks Dennis.

2001-06-01 19:52  wtay

	* configure.base: Added a better SDL_createYUVOverlay check.

2001-06-01 19:30  wtay

	* gst/: gstbin.c, gstpad.c, gstqueue.c, gstscheduler.c,
	autoplug/autoplugtest.c, autoplug/gststaticautoplugrender.c: Fixed
	some warnings.

2001-06-01 19:24  wtay

	* tests/: Makefile.am, autoplug.c, capsconnect.c, incsched.c,
	load.c, loadall.c, mp1vid.c, mp3encode.c, paranoia.c, reaping.c,
	registry.c, threadlock.c, nego/nego1.c, sched/runxml.c: Fixed a
	couple of compiler warnings.

2001-06-01 19:09  wtay

	* test/: ac3parse.c, ac3play.c, buffer.c, cobin.c, dvdcat.c,
	dvshow.c, fake.c, mem.c, mp1tomp1.c, mp2tomp1.c, mp3mad.c,
	mp3play.c, record.c, teardown.c, vidcapture.c, vidcapture2.c,
	video2mp1.c: Fixed some compile warnings.

2001-06-01 18:55  hadess

	* REQUIREMENTS: - added url to openquicktime

2001-06-01 18:42  hadess

	* REQUIREMENTS: - added some more urls

2001-06-01 18:42  wtay

	* gstplay/gstplay.c: Print out a warning when the colorspace plugin
	is not found and try to do without it...

2001-06-01 18:32  theuraeus

	* LICENSE_readme, REQUIREMENTS: 2001-01-06 Christian Schaller
	<Uraeus@linuxrising.org> * A few URL additions to the REQUIREMENTS
	file * LICENCE readme containing licensing details on our plugins

2001-06-01 17:57  wtay

	* README, REQUIREMENTS: Slightly changed the README, we are not
	really tied to GNOME.  Added more optional libs to REQUIREMENTS.
	someone should complete the URLS.

2001-06-01 17:46  wtay

	* plugins/effects/volume/volume.c: Removed the soundcard.h include
	line.

2001-06-01 16:29  thomasvs

	* gst/elements/gstdisksink.c: coded small bit in to allow changing
	of output location

2001-06-01 14:27  richardb

	* tools/README: Add a note about gstreamer-complete

2001-06-01 14:03  richardb

	* configure.base: More tidyup to SDL check.

2001-06-01 13:36  richardb

	* configure.base: Fix SDL check Check for Overlay stuff, which
	isn't in SDL version 1.0

2001-05-31 23:57  hadess

	* REQUIREMENTS: - added urls to the required libs, with a lot of
	added libs

2001-05-31 21:20  richardb

	* REQUIREMENTS, configure.base: Add comments to many (but not all
	:( ) AC_DEFINES in configure scripts.  Add note about debian
	packages for building documentation.

2001-05-31 21:14  richardb

	* plugins/esd/esdsink/Makefile.am: Add a CFLAGS line: just luck
	that it's not been needed so far.

2001-05-31 21:13  richardb

	* plugins/artsd/Makefile.am: Remove a redundant line, and add a
	comment about one which will become redundant in future.

2001-05-31 20:52  wtay

	* testsuite/refcounting/Makefile.am: Removed the thread test so
	make distcheck works.

2001-05-31 20:18  wtay

	* testsuite/refcounting/Makefile.am: Added the mem.h file in
	noinst_HEADERS.

2001-05-31 20:16  richardb

	* plugins/arts/Makefile.am: Remove generated files from the dist.

2001-05-31 20:08  richardb

	* configure.base, idiottest.mak: Fix a couple of formatting errors
	in idiottest, and add plugin-srcdir warning to configure.base.

2001-05-31 19:42  wtay

	* plugins/avi/Makefile.am: Fixed the codectest.

2001-05-31 19:35  richardb

	* Makefile.am, idiottest.mak, include/Makefile.am: Abstract the
	plugin-srcdir installation idiottest into a separate file, and
	include it from the include Makefile.am, to ensure that it gets
	called at the start of a make install process, not after the whole
	thing has happened.

2001-05-31 19:31  wtay

	* include/Makefile.am: Added gstaudio.h to noinst_HEADERS.

2001-05-31 19:03  richardb

	* docs/gst/Makefile.am: Add rules to ensure that the libgst.la and
	libgstelements.la exist when trying to link the scanner with them. 
	Fix mkdirs so that they don't fall over if directories already
	exist.

2001-05-31 18:32  richardb

	* plugins/arts/Makefile.am: Put gst_artsio.idl in
	libgst_arts_la_SOURCES instead of gst_artsio.cc (which is generated
	from it).  This ensures that the original source is present, and
	also allows make dist to work on machines which don't have mcopidl
	and the arts idl stuff installed.
	
	It is possible that gst_artsio.cc should be put in EXTRA_DIST, but
	I argue against it since as far as I can tell it can be generated
	on any system which has arts installed (mcopidl is in the libarts
	package on debian), and putting it in EXTRA_DIST requires that
	mcopidl is present in order to run make dist.

2001-05-31 15:19  richardb

	* configure.base: Add AS and ASFLAGS to configure.base, fixing the
	build with automake 1.4g AS is defined in a hacky way: I've asked
	on the automake list for help doing this properly.

2001-05-31 10:53  thomasvs

	* plugins/oss/gstosssrc.c: some small cleanups before maybe doing
	some real work on this

2001-05-30 23:06  thomasvs

	* plugins/oss/gstosssrc.c: The weird thing only happens on one of
	my sound cards.

2001-05-30 22:35  thomasvs

	* include/gstaudio.h: header file for standard audio stuff for
	plugins

2001-05-30 22:27  omegahacker

	* configure.base: added no-alsa warning and made 0.9 check
	conditional on alsa existing at all

2001-05-30 22:15  wtay

	* plugins/wav/gstparsewav.c: Major cleanups so that it actually
	works.

2001-05-30 22:14  wtay

	* gst/gstprops.c: Fixed a bug so that gst_props_new (NULL) == NULL

2001-05-30 21:54  omegahacker

	* plugins/sdlsink/sdlvideosink.c: added SDL_INIT_NOPARACHUTE flag
	to SDL_Init, to disable one of the most annoying features IMO of
	SDL

2001-05-30 21:36  omegahacker

	* gst/gstpad.c: stupid mistake, I put != instead of == in the
	g_return_if's

2001-05-30 21:13  omegahacker

	* gst/gstpad.c: added sanity checks to make sure _push and _pull
	don't get called on pads of the wrong direction

2001-05-30 20:07  sbaker3

	* plugins/filters/ladspa/: gstladspa.c, gstladspa.h: beginnings of
	inplace mono chain func

2001-05-30 17:37  thomasvs

	* plugins/oss/gstosssrc.c: switched some lines around

2001-05-30 17:10  thomasvs

	* plugins/oss/gstosssrc.c: added caps to osssrc found a weird
	thing, don't know yet what to do about it

2001-05-30 16:16  richardb

	* README, autogen.sh: Automatically generate a patched automake if
	needed, and put instructions in the README about how to use such a
	patched automake.

2001-05-30 15:39  richardb

	* Makefile.am: Add configure.base and autogen.sh to distributions. 
	Add rules to keep configure.in and configure.ac up-to-date.

2001-05-30 15:22  richardb

	* autogen.sh, configure.ac, configure.base, configure.in:  * create
	a configure.base file, containing the contents of
	   configure.{in,ac}, with those lines specific to one file
	prepended by
	   "SUBSTFOR configure.in:" or "SUBSTFOR configure.ac:"
	appropriately.
	
	 * Add lines to autogen.sh to generate configure.in and
	configure.ac
	   automatically from this file. (Very simple sed scripts)
	
	 * Remove configure.in and configure.ac
	
	This shouldn't cause any problems to anyone, and should make it
	easy to do work on configure scripts by just working on
	configure.base.

2001-05-30 14:54  thomasvs

	* plugins/filters/passthrough/passthrough.c: added signed support
	implemented include/gstaudio.h use

2001-05-30 14:25  richardb

	* configure.ac, configure.in: More small changes to bring the two
	scripts closer together.  Turned off building docs by default in
	configure.ac.  Only diffs are now essential due to changes from
	autoconf 2.13 to 2.50.

2001-05-30 13:56  richardb

	* autogen.sh: Deal more gracefully with being either unable to
	check that automake is patched (will now just give a small
	warning), or finding that automake definitely isn't patched (will
	give a big loud warning recommend stopping the build and sleep
	briefly to give the user a chance to read the message).  Will
	eventually try to do the build anyway though.
	
	Also, don't abort if autoconf or automake return error codes: they
	both seem able to do so even when having produced viable results.

2001-05-29 23:10  wtay

	* plugins/filters/colorspace/: Makefile.am, colorspace.c,
	colorspace.h, yuv2rgb.c, yuv2rgb.h: Added more colorspace functions
	for YUV->RGB

2001-05-29 17:40  richardb

	* autogen.sh: Add checks for appropriate versions of automake.	Add
	check that automake has been patched if it is a version which
	requires a patch.  Please check that this doesn't cause problems:
	it's a bit of a hairy test, so I might well have mucked it up and
	broken some people's build systems.  Hope not, though. ;-)

2001-05-29 17:39  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - fix for when size can't be
	acquired (fixes icecast streaming)

2001-05-29 17:38  richardb

	* Makefile.am, configure.ac, configure.in: Add idiot test to stop
	the installing of versions with plugin srcdir enabled.

2001-05-29 16:19  richardb

	* configure.ac, configure.in: Fix differences between configure.in
	and configure.ac which were trivial or due merely to formatting
	differences.  diff can now be used to see only the significant
	differences, which should be helpful in keeping these two files in
	sync.

2001-05-29 13:43  richardb

	* gst/Makefile.am.future: Update Makefile.am.future - a replacement
	for Makefile.am which uses features present in recent versions of
	automake (>1.4d) to avoid horrendous hackery.

2001-05-29 13:31  richardb

	* acinclude.m4, configure.ac, configure.in: Simplify alsa checking:
	we can use the standard AM_PATH_ALSA macro to check that we don't
	have alsa 0.9.x: we just need to specify something for
	ACTION_NOT_FOUND to override the default AC_MSG_ERROR behaviour, so
	I've put a colon for ACTION_NOT_FOUND. ;-) Also, update the alsa
	macro in acinclude with the latest from the alsa project CVS.

2001-05-28 23:23  omegahacker

	* gst/gstsparc.h: fixed #define line continuation in gstsparc.h

2001-05-28 23:02  wtay

	* configure.ac, configure.in: Added a check for gsm/gsm.h

2001-05-28 22:41  omegahacker

	* gst/gstinfo.c: changed debug so it always prints pid and cid in
	color

2001-05-28 22:02  wtay

	* configure.ac: Removed the -pre0

2001-05-28 22:00  wtay

	* plugins/Makefile.am: Added gsm to subds.

2001-05-28 21:47  wtay

	* configure.ac: Added the refcounting to the output targets.

2001-05-28 21:36  wtay

	* acconfig.h, configure.ac, configure.in: Added a check for libgsm

2001-05-28 21:22  wtay

	* configure.ac: Updated to match configure.in

2001-05-28 21:05  wtay

	* configure.ac: The configure file for autoconf 2.50

2001-05-28 20:59  omegahacker

	* ABOUT-NLS: added blank file to keep autoconf happy, fill it in
	later

2001-05-28 20:34  omegahacker

	* plugins/avi/Makefile.am: changed srcdir to builddir for .la

2001-05-28 20:33  omegahacker

	* configure.in: attempt at a fixed alsa check to guarantee 0.5.x

2001-05-28 20:09  omegahacker

	* libs/getbits/Makefile.am, libs/idct/Makefile.am,
	plugins/xvideosink/Makefile.am: distcheck cleanups

2001-05-28 08:46  omegahacker

	* configure.in, gstreamer-uninstalled.pc.in, gstreamer.pc.in,
	gst/Makefile.am: some fixes to handle builddirs, which distcheck
	uses, along with complete .pc files

2001-05-28 01:07  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - cleanups

2001-05-28 00:57  omegahacker

	* gst/gstpad.c, gst/gstthread.c, gst/elements/gstidentity.c,
	plugins/xvideosink/xvideosink.c, tools/gstreamer-inspect.c: Added
	some caps != NULL checks.  Patched up a problem with the thread
	handling when the iteration fails.  Cleaned up the output of
	-inspect a tiny bit.

2001-05-28 00:52  omegahacker

	* configure.in: removed a spare alsa check, and made sure it fails
	for alsa 0.9.x

2001-05-28 00:12  wtay

	* examples/mixer/Makefile.am: Added the headers

2001-05-28 00:01  wtay

	* plugins/arts/Makefile.am: Add more hardcoded paths for includes.

2001-05-27 23:55  wtay

	* tests/nego/nego1.c: Updated for new API calls.

2001-05-27 23:45  wtay

	* plugins/sdlsink/Makefile.am: Added the header file.

2001-05-27 23:26  wtay

	* configure.in.ac250: Added refcounting to the targets.

2001-05-27 23:25  wtay

	* testsuite/: Makefile.am, capsnego/Makefile.am,
	refcounting/Makefile.am: Makfeile updates.

2001-05-27 22:56  omegahacker

	* Makefile.am, acconfig.h, configure.in, gst/autoplug/Makefile.am,
	plugins/1394/Makefile.am, plugins/aasink/Makefile.am,
	plugins/alaw/Makefile.am, plugins/filters/level/Makefile.am,
	plugins/filters/passthrough/Makefile.am,
	plugins/filters/volenv/Makefile.am, plugins/mulaw/Makefile.am,
	plugins/oss/Makefile.am, plugins/xvideosink/Makefile.am,
	tests/Makefile.am, testsuite/Makefile.am: various build fixes

2001-05-27 21:52  wtay

	* plugins/Makefile.am: Only build the quiktime plugin if the
	openquicktime library was found.

2001-05-27 21:52  wtay

	* configure.in, configure.in.ac250: Added a check for
	openquicktime.

2001-05-27 18:02  sbaker3

	* tools/gstreamer-complete.c: now builds for those who are too lazy
	to upgrade their xml libraries

2001-05-27 16:13  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - added eos-hack signal to the
	source, and fix the seek segfaults

2001-05-27 15:41  hadess

	* gstplay/gstmediaplay.glade: - changed the Alt shortcuts to Ctrl
	shortcuts (like in all proper GTK+ apps)

2001-05-27 15:38  wtay

	* tests/: mp3encode.c, rip.c: Updated for remove methods.

2001-05-27 15:38  wtay

	* test/mp2toavi.c, test/mp2tomp1.c, test/mpeg2parse.c,
	examples/autoplug/autoplug.c, examples/queue/queue.c: Updated for
	removed methods.

2001-05-27 15:37  wtay

	* gst/: cothreads.c, cothreads.h, gstbin.c, gstbin.h, gstinfo.c,
	gstobject.c, gstpad.c, gstplugin.c, gstscheduler.h: Docs updates
	Changed the cothread to use sigjmp_buf removed some unused methods.
	 Some code cleanups.

2001-05-27 15:33  wtay

	* docs/gst/: gstreamer-docs.sgml, gstreamer-sections.txt,
	tmpl/cothreads.sgml, tmpl/gstbin.sgml, tmpl/gstelement.sgml,
	tmpl/gstfakesink.sgml, tmpl/gstfakesrc.sgml, tmpl/gstinfo.sgml,
	tmpl/gstobject.sgml, tmpl/gstpad.sgml, tmpl/gstplugin.sgml,
	tmpl/gstqueue.sgml, tmpl/gstreamer-unused.sgml,
	tmpl/gstscheduler.sgml, tmpl/gsttrace.sgml: API docs updates.

2001-05-27 01:04  omegahacker

	* gst/gstscheduler.h: fixed up and turned back on
	GST_SCHEDULE_SAFETY

2001-05-26 23:58  omegahacker

	* gst/: cothreads.c, gstelement.c, gstscheduler.c: fixed cothread
	locking and set_arg/get_arg safety, and switched to 64 cothreads of
	32KB

2001-05-26 20:47  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - gnome-vfs seek works, cleaned
	up

2001-05-26 19:46  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - really use mmap this time for
	local files, first try at seek in remote files

2001-05-26 18:17  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - added local file fallback with
	mmap support

2001-05-26 17:41  wtay

	* gst/gstelement.h: Removed redundant prototypes.

2001-05-26 17:33  wtay

	* gst/gstpad.h: Fixed a bug in the typecast macros for
	padtemplates.

2001-05-26 13:17  wtay

	* gst/elements/Makefile.am: don't link against libgst.la because it
	seems to fail on some libtool versions.

2001-05-26 06:36  omegahacker

	* tests/threadlock.c: shut up fakesrc and fakesink, changed
	sleeping a little

2001-05-26 06:26  omegahacker

	* tests/threadlock.c: moved debug to before _init so cmdline can
	override, and put sleep(1)'s in while(1) to increase chance of
	contention (I think)

2001-05-26 06:19  omegahacker

	* tests/threadlock.c: updated threadlock to actually be a thread
	locking test

2001-05-26 00:36  dlehn

	* test/lat.c: Elements must have different names.

2001-05-25 23:08  hadess

	* gstplay/.cvsignore: - more generic files to exclude: *~ and ~.bak

2001-05-25 23:02  hadess

	* gstplay/.cvsignore: - added gstmediaplay.glade.bak to the files
	to ignore

2001-05-25 23:01  hadess

	* gstplay/gstmediaplay.glade: - updated (c) date, and added WMClass
	and WMName to the gstmediaplay windows

2001-05-25 22:42  wtay

	* gst/gstplugin.c: Removed a stupid printf.

2001-05-25 22:39  wtay

	* gst/: gstbuffer.h, gstelement.c, gstpipeline.c, gstplugin.c: Some
	cleanups.  Removed some bogus code from element and pipeline
	elements.  Fixed a typo.

2001-05-25 22:38  wtay

	* gst/elements/Makefile.am: Added GST_LIBS to LIBADD.

2001-05-25 22:35  omegahacker

	* gst/gstbuffer.c: fixed rather heinous bug in gst_buffer_copy

2001-05-25 22:31  omegahacker

	* gst/autoplug/gstautoplugcache.c: removed some more noise,
	converted to GST_DEBUG

2001-05-25 22:25  omegahacker

	* gst/gstelement.c: removed annoying debug message during state
	change (made GST_DEBUG)

2001-05-25 22:13  hadess

	* autogen.sh: - added a line for busy application developers, it's
	shorter this time

2001-05-25 22:00  omegahacker

	* .cvsignore, AUTHORS, Makefile.am, autogen.sh, configure.in,
	gstreamer-uninstalled.pc.in, gstreamer.pc.in, gstreamer.spec.in,
	docs/gst/tmpl/cothreads.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstfakesrc.sgml, docs/gst/tmpl/gstthread.sgml,
	docs/random/matth/scheduling.txt, examples/Makefile.am,
	examples/autoplug/autoplug.c, examples/mixer/mixer.c,
	gst/Makefile.am, gst/cothreads.c, gst/cothreads.h, gst/gst.c,
	gst/gst.h, gst/gstbin.c, gst/gstbin.h, gst/gstbuffer.c,
	gst/gstcaps.c, gst/gstclock.c, gst/gstelement.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstinfo.c, gst/gstinfo.h,
	gst/gstobject.c, gst/gstobject.h, gst/gstpad.c, gst/gstpad.h,
	gst/gstpipeline.c, gst/gstprops.c, gst/gstqueue.c, gst/gstqueue.h,
	gst/gstscheduler.c, gst/gstscheduler.h, gst/gstthread.c,
	gst/gstthread.h, gst/gsttype.c, gst/gsttypefind.c, gst/gsttypes.h,
	gst/gstxml.c, gst/autoplug/Makefile.am,
	gst/autoplug/autoplugtest.c, gst/autoplug/gstautoplugcache.c,
	gst/autoplug/gstautoplugger.c, gst/autoplug/gststaticautoplug.c,
	gst/autoplug/gststaticautoplugrender.c, gst/elements/gstfakesrc.c,
	gst/elements/gstfakesrc.h, gst/elements/gstsinesrc.c,
	gstplay/Makefile.am, gstplay/gstmediaplay.c,
	gstplay/gstmediaplay.glade, gstplay/gstplay.c, gstplay/gstplay.h,
	gstplay/gstplayprivate.h, libs/idct/gstidct.c,
	plugins/1394/dv1394src.c, plugins/alaw/alaw-conversion.c,
	plugins/arts/Makefile.am, plugins/arts/gst_arts.c,
	plugins/esd/esdsink/esdsink.c, plugins/filters/Makefile.am,
	plugins/filters/adder/adder.c,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/gnomevfs/gnomevfssrc.c, plugins/mp3decode/mad/gstmad.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c,
	plugins/mp3encode/lame/gstlame.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpegaudio/common.c,
	plugins/mpeg1/mpegaudio/musicin.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c, plugins/oss/gstosssink.c,
	plugins/videoscale/videoscale.c, plugins/vorbis/vorbis.c,
	plugins/vorbis/vorbisdec.c, plugins/xmms/gstxmmsinput.c,
	test/.cvsignore, test/Makefile.am, test/avi2mpg.c, test/cobin.c,
	test/dvshow.c, test/fake.c, test/mpeg2parse2.c, test/mpeg2parse3.c,
	test/mpeg2parse4.c, test/video2mp1.c, test/videotest2.c,
	tests/Makefile.am, tests/incsched.c, tests/mp1vid.c,
	tests/reaping.c, tests/states.c, tests/threadlock.c,
	testsuite/refcounting/Makefile.am, testsuite/refcounting/bin.c,
	testsuite/refcounting/element.c,
	testsuite/refcounting/element_pad.c, testsuite/refcounting/mem.c,
	testsuite/refcounting/mem.h, testsuite/refcounting/object.c,
	testsuite/refcounting/pad.c, testsuite/refcounting/thread.c,
	tools/.cvsignore, tools/Makefile.am, tools/gstreamer-complete.c,
	tools/gstreamer-compprep.c, tools/gstreamer-inspect.c: Merged from
	INCSCHED on 200505251!!!

2001-05-25 21:50  omegahacker

	* autogen.sh, configure.in.ac250, docs/manual/autoplugging.sgml,
	gst/elements/gstfakesink.h, gst/elements/gstfakesrc.h,
	plugins/audiofile/Makefile.am, plugins/audiofile/README,
	plugins/audiofile/gstafsink.c, plugins/audiofile/gstafsink.h,
	plugins/audiofile/gstafsrc.c, plugins/audiofile/gstafsrc.h,
	plugins/filters/level/level.c,
	plugins/filters/passthrough/filter.func,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/passthrough/passthrough.h,
	plugins/gnomevfs/gnomevfssrc.c, plugins/gsm/Makefile.am,
	plugins/gsm/gstgsm.c, plugins/gsm/gstgsmdec.c,
	plugins/gsm/gstgsmdec.h, plugins/gsm/gstgsmenc.c,
	plugins/gsm/gstgsmenc.h, plugins/oss/gstossgst.c,
	plugins/wav/gstparsewav.c, test/dv2mp1.c, test/dvshow.c: Merged
	from HEAD into INCSCHED on 200105251

2001-05-25 21:41  wtay

	* docs/manual/autoplugging.sgml: More docs updates.

2001-05-25 21:41  wtay

	* test/: dv2mp1.c, dvshow.c: some minor fixes..

2001-05-25 21:39  wtay

	* plugins/gnomevfs/gnomevfssrc.c: Fix a leak on EOS.

2001-05-25 20:53  wtay

	* test/Makefile.am: Cleaned up the makefile a bit.

2001-05-25 20:36  wtay

	* test/: cobin.c, fake.c: Remove deprecated methods.

2001-05-25 20:19  wtay

	* gst/: gstbin.c, gstbin.h, gstpad.c: Removed some unused functions
	in gstbin Fixed a compiler warning.

2001-05-25 20:16  omegahacker

	* gst/gstthread.c: forgot to unset SPINNING, no idea how it worked
	before, maybe this will fix wtay's case

2001-05-25 19:07  wtay

	* plugins/filters/ladspa/gstladspa.c: Adjusted for state
	reorderings.

2001-05-25 18:35  omegahacker

	* gst/gstbin.c, gst/gstelement.c, gst/gstelement.h, gst/gstinfo.c,
	gst/gstqueue.c, gst/gstscheduler.c, gst/gstthread.c,
	plugins/1394/dv1394src.c, plugins/arts/gst_arts.c,
	plugins/esd/esdsink/esdsink.c, plugins/gnomevfs/gnomevfssrc.c,
	plugins/mp3decode/types/mp3types.c, plugins/oss/gstosssink.c,
	plugins/xmms/gstxmmsinput.c: Swapped PAUSED and PLAYING states,
	reworked thread interlocking.  States are now: NULL <-> READY <->
	PAUSED <-> PLAYING.
	
	Had do update dv1394src, gst_arts, and xmmsinput, please test these
	out!
	
	Cleaned up DEBUG output in several places to by much much less
	verbose but still just as useful (denser).

2001-05-25 17:21  thomasvs

	* plugins/filters/passthrough/: filter.func, passthrough.c,
	passthrough.h: Cleaned out level code from passthrough plugin added
	silent argument, defaults to false

2001-05-25 17:19  thomasvs

	* plugins/audiofile/gstafsink.c: cleaned up output info

2001-05-25 17:17  thomasvs

	* plugins/filters/level/level.c: cleaned up level plugin output

2001-05-25 15:02  thomasvs

	* plugins/audiofile/: gstafsink.c, gstafsrc.c: cleaned up output
	got rate and signedness to work on afsrc

2001-05-25 14:42  thomasvs

	* plugins/audiofile/README: a little info

2001-05-25 11:43  wtay

	* test/: avi2mpg.c, dvshow.c, fake.c, videotest2.c: Small fixes to
	various test apps.

2001-05-25 11:43  wtay

	* gstplay/gstplay.c: If the arg looks like a URI, gnomevfs is used,
	if gnomevfs is not found and the URI starts with file:/, disksrc is
	used.

2001-05-25 11:10  thomasvs

	* plugins/filters/passthrough/passthrough.c: changed passthrough to
	print out signed/unsigned and endianness

2001-05-25 10:47  thomasvs

	* plugins/audiofile/: Makefile.am, gstafsrc.c, gstafsrc.h: Added an
	audiofile src element, doesn't work yet

2001-05-25 05:42  dlehn

	* configure.in.ac250: automake 1.4-p1 doesn't support
	AC_CONFIG_FILES.  revert to AC_OUTPUT until the fix in the just
	released 1.4-p2 gets debianized. ;)

2001-05-25 02:28  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - check result of open() now

2001-05-25 01:35  wtay

	* plugins/mpeg2/mpeg2dec/gstmpeg2dec.c: Only accept mpeg1 data for
	mpeg2dec until we figure out what's wrong.

2001-05-25 01:29  omegahacker

	* gst/: gstpad.c, gstqueue.c, gstqueue.h, gstscheduler.h,
	gstthread.c: fixed some interruptability problems with thread and
	queue

2001-05-25 01:14  wtay

	* plugins/vorbis/: vorbis.c, vorbisdec.c: Added the
	COTHREAD_STOPPING hack.

2001-05-25 01:09  wtay

	* gstplay/: gstmediaplay.c, gstplay.c, gstplayprivate.h: Fixed the
	media player so that it works with incsched.  Removed the thread
	and add the _iterate to the g_idle_loop, this makes the GUI very
	cluncky but is needed because we cannot chance the state of a
	thread inside the threads context yet.

2001-05-24 23:38  thomasvs

	* plugins/audiofile/gstafsink.c: mental note to self:	doublecheck
	own code before sending mail to library author asking why   sample
	rate setting on output doesn't work...	note to others:  afsink now
	handles samplerate right

2001-05-24 23:24  thomasvs

	* plugins/audiofile/: gstafsink.c, gstafsink.h: added more support
	for endianness, you can set it through an arg until I figure out
	what it is supposed to do

2001-05-24 23:23  thomasvs

	* plugins/oss/gstossgst.c: one of my OSS's doesn't have FMT_AC3
	defined

2001-05-24 22:46  omegahacker

	* gst/: gstinfo.h, gstthread.c, gstthread.h: added better thread id
	debugging support

2001-05-24 21:36  omegahacker

	* gst/gstthread.c: fixed thread lock mis-merge

2001-05-24 21:20  wtay

	* gst/autoplug/gststaticautoplugrender.c: Added the queue to the
	thread

2001-05-24 12:24  wtay

	* configure.in.ac250: Added the autoconf file for version 2.50

2001-05-24 12:22  wtay

	* plugins/: gnomevfs/gnomevfssrc.c, gsm/Makefile.am, gsm/gstgsm.c,
	gsm/gstgsmdec.c, gsm/gstgsmdec.h, gsm/gstgsmenc.c, gsm/gstgsmenc.h,
	wav/gstparsewav.c: Small fixes for EOS in gnomevfssrc.	Added a gsm
	decoder/encoder element.

2001-05-24 01:55  thomasvs

	* plugins/audiofile/: gstafsink.c, gstafsink.h: audiofile now
	handles endianness right, and also allows for choosing the output
	file format to write (next/aiff/wav/aiffc/raw) aiff and next might
	not work yet though

2001-05-24 01:46  omegahacker

	* AUTHORS, README, REQUIREMENTS, acconfig.h, autogen.sh,
	configure.in, components/bonobo-media/Makefile.am,
	components/bonobo-media/bonobo-media-gstreamer-factory.c,
	components/bonobo-media/bonobo-media-gstreamer.gob,
	components/bonobo-media/bonobo-media-gstreamer.oafinfo,
	components/bonobo-media/bonobo-media-gstreamervideo.gob,
	debian/Makefile.am, debian/changelog, debian/control,
	debian/gstreamer-aa.files, debian/gstreamer-arts.files,
	debian/gstreamer-colorspace.files, debian/gstreamer-common.files,
	debian/gstreamer-mad.files, debian/rules,
	docs/fwg/gst-plugin-writers-guide.sgml,
	docs/gst/gstreamer-sections.txt, docs/gst/gstreamer.hierarchy,
	docs/gst/tmpl/gstbuffer.sgml, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstinfo.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstprops.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/manual/Makefile.am, docs/manual/autoplugging.sgml,
	docs/manual/bins.sgml, docs/manual/buffers.sgml,
	docs/manual/elements.sgml, docs/manual/gstreamer-manual.sgml,
	docs/manual/helloworld.sgml, docs/manual/pads.sgml,
	docs/manual/xml.sgml, docs/random/autoplug2,
	editor/gsteditorproperty.c, examples/autoplug/autoplug.c,
	examples/plugins/example.c, gst/cothreads.c, gst/cothreads.h,
	gst/gst.h, gst/gstbin.c, gst/gstcaps.c, gst/gstcaps.h,
	gst/gstinfo.h, gst/gstpad.c, gst/gstpad.h, gst/gstparse.c,
	gst/gstpipeline.c, gst/gstplugin.c, gst/gstprops.c, gst/gstprops.h,
	gst/gstscheduler.c, gst/gstthread.c, gst/gsttrace.c,
	gst/gsttrace.h, gst/gsttypefind.c, gst/gstutils.c,
	gst/autoplug/Makefile.am, gst/elements/gstdisksrc.c,
	gst/elements/gstelements.c, gst/elements/gstfakesink.c,
	gst/elements/gstfakesrc.c, gst/elements/gstfakesrc.h,
	gst/elements/gstpipefilter.c, gst/elements/gstsinesrc.c,
	gst/elements/gstsinesrc.h, gstplay/AUTHORS, gstplay/ChangeLog,
	gstplay/Makefile.am, gstplay/callbacks.c, gstplay/callbacks.h,
	gstplay/full-screen.c, gstplay/full-screen.h,
	gstplay/gstmediaplay.c, gstplay/gstmediaplay.glade,
	gstplay/gstmediaplay.h, gstplay/gstplay.c, gstplay/gstplay.h,
	gstplay/gstplayprivate.h, gstplay/gststatusarea.c,
	gstplay/gststatusarea.h, gstplay/main.c, libs/idct/ieeetest.c,
	plugins/Makefile.am, plugins/alsa/alsa.h,
	plugins/alsa/alsa_common.c, plugins/alsa/alsasink.c,
	plugins/alsa/alsasrc.c, plugins/arts/gst_artsio_impl.h,
	plugins/audiofile/Makefile.am, plugins/audiofile/gstafsink.c,
	plugins/audiofile/gstafsink.h, plugins/capture/v4l/gstv4lsrc.c,
	plugins/capture/v4l/gstv4lsrc.h, plugins/cdparanoia/cdparanoia.c,
	plugins/dv/dvdec.c, plugins/effects/volume/volume.c,
	plugins/esd/esdsink/esdsink.c, plugins/filters/Makefile.am,
	plugins/filters/filterstamp.sh, plugins/filters/adder/Makefile.am,
	plugins/filters/adder/adder.c,
	plugins/filters/colorspace/Makefile.am,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/colorspace/colorspace.h,
	plugins/filters/colorspace/yuv2yuv.c,
	plugins/filters/intfloatconvert/Makefile.am,
	plugins/filters/intfloatconvert/float2int.c,
	plugins/filters/intfloatconvert/float2int.h,
	plugins/filters/intfloatconvert/int2float.c,
	plugins/filters/intfloatconvert/int2float.h,
	plugins/filters/intfloatconvert/intfloatconvert.c,
	plugins/filters/intfloatconvert/intfloatconvert.h,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/ladspa/ladspa.h, plugins/filters/lav/.cvsignore,
	plugins/filters/lav/Makefile.am, plugins/filters/lav/lavencode.c,
	plugins/filters/lav/lavencode.h, plugins/filters/level/Makefile.am,
	plugins/filters/level/README, plugins/filters/level/filter.func,
	plugins/filters/level/level.c, plugins/filters/level/level.h,
	plugins/filters/mono2stereo/Makefile.am,
	plugins/filters/mono2stereo/mono2stereo.c,
	plugins/filters/mono2stereo/mono2stereo.h,
	plugins/filters/passthrough/README,
	plugins/filters/passthrough/filter.func,
	plugins/filters/passthrough/level.c,
	plugins/filters/passthrough/level.h,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/passthrough/passthrough.h,
	plugins/filters/stereo2mono/Makefile.am,
	plugins/filters/volenv/Makefile.am,
	plugins/filters/volenv/volenv.c, plugins/gnomevfs/Makefile.am,
	plugins/gnomevfs/gnomevfssink.c, plugins/gnomevfs/gnomevfssrc.c,
	plugins/jpeg/Makefile.am, plugins/mp3decode/mad/gstmad.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3encode/lame/gstlame.c, plugins/mpeg1/mpegaudio/common.c,
	plugins/mpeg1/mpegaudio/common.h, plugins/mpeg1/mpegaudio/encode.c,
	plugins/mpeg1/mpegaudio/encoder.h,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegaudio/musicin.c,
	plugins/mpeg1/mpegaudio/musicin.h, plugins/mpeg1/mpegaudio/psy.c,
	plugins/mpeg1/mpegaudio/subs.c,
	plugins/mpeg1/mpegaudio/table_absthr.h,
	plugins/mpeg1/mpegaudio/table_cb.h,
	plugins/mpeg1/mpegaudio/table_enwindow.h,
	plugins/mpeg1/mpegaudio/table_th.h,
	plugins/mpeg1/mpegaudio/tables.c, plugins/mpeg1/mpegaudio/tonal.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c, plugins/oss/Makefile.am,
	plugins/oss/gstossaudio.c, plugins/oss/gstossgst.c,
	plugins/oss/gstossgst.h, plugins/oss/gstosshelper.c,
	plugins/oss/gstosshelper.h, plugins/oss/gstosssink.c,
	plugins/quicktime/Makefile.am, plugins/quicktime/README,
	plugins/quicktime/gstquicktimedecoder.c,
	plugins/quicktime/gstquicktimedecoder.h,
	plugins/sdlsink/Makefile.am, plugins/sdlsink/sdlvideosink.c,
	plugins/sdlsink/sdlvideosink.h, plugins/videoscale/videoscale.c,
	plugins/vorbis/vorbis.c, plugins/vorbis/vorbisdec.c,
	plugins/vorbis/vorbisenc.c, plugins/vorbis/vorbisenc.h,
	plugins/wav/gstparsewav.c, plugins/xvideosink/gstximage.c,
	test/.cvsignore, test/Makefile.am, test/lat.c, test/mp3mad.c,
	test/videotest.c, test/wave.c, tests/autoplug2.c,
	tests/sched/runxml.c, tools/gstreamer-inspect.c,
	tools/gstreamer-launch.c: Merge from HEAD into INCSCHED1 at
	200105231.

2001-05-24 00:24  dlehn

	* gst/elements/: gstfakesink.h, gstfakesrc.h: Update some signal
	func vars.

2001-05-24 00:23  dlehn

	* autogen.sh: libtool check fix... copy & paste error msgs code
	could be improved.

2001-05-23 21:35  wtay

	* test/video2mp1.c: Some small modifications.

2001-05-23 20:53  omegahacker

	* plugins/oss/gstosssink.c: default settings are intenionally very
	wrong (make it obvious when the capsnego didn't work) and it checks
	for NULL props

2001-05-23 20:52  omegahacker

	* plugins/filters/stereo2mono/stereo2mono.c: 'fixed' the caps and
	the _init function

2001-05-23 20:50  omegahacker

	* plugins/cdparanoia/cdparanoia.c: fixed caps on cdparanoia

2001-05-23 20:49  omegahacker

	* gst/gstscheduler.c, plugins/mp3decode/mad/gstmad.c: fixed problem
	where mad wasn't an entry (it is now HACK HACK!!) and the scheduler
	wasn't catching the no entry case

2001-05-23 20:48  omegahacker

	* examples/autoplug/autoplug.c: added have_size handler so the
	window matches the video size

2001-05-23 20:09  omegahacker

	* gst/: gstqueue.c, gstqueue.h: reworked internal parameters a bit,
	added leaky-queue semantics

2001-05-23 10:18  thomasvs

	* plugins/filters/level/README: some more info on how to plot the
	level using gnuplot it would be nice if the output from level
	plugin could serve as input to a gstreamer plotting plugin (I'm not
	kidding)

2001-05-23 09:49  thomasvs

	* plugins/audiofile/: gstafsink.c, gstafsink.h: afsink now handles
	channels and sample rate

2001-05-23 09:48  thomasvs

	* configure.in: added level Makefile deleted one of two instances
	of adder Makefile

2001-05-23 09:47  thomasvs

	* plugins/filters/Makefile.am: added level plugin to Makefile.am

2001-05-23 09:47  thomasvs

	* plugins/filters/level/: Makefile.am, README, filter.func,
	level.c, level.h: Added level detection plugin; prints out RMS
	values calculated over buffer size to stdout

2001-05-22 21:11  omegahacker

	* tests/states.c: fixed references to _gst_print_statename

2001-05-22 20:22  hadess

	* gst/elements/gstdisksrc.c: - it is now possible to change the
	opened file when state is PAUSED

2001-05-22 19:57  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - removed warnings

2001-05-22 19:44  hadess

	* plugins/gnomevfs/gnomevfssrc.c: - adding possibility to change
	the src file if the state is PAUSED

2001-05-22 17:48  thomasvs

	* plugins/audiofile/: gstafsink.c, gstafsink.h: still trying to add
	caps to gstafsink

2001-05-22 14:48  richardb

	* autogen.sh: autogen.sh now fails if aclocal fails.

2001-05-22 13:56  hadess

	* autogen.sh: - added a line to autogen.sh for the busy application
	developers

2001-05-22 02:42  omegahacker

	* gst/: gstpad.c, autoplug/gstautoplugger.c: Added ability for
	caps_nego_failed signal to indicate that it's solved the problem,
	via a gboolean * argument that's FALSE, and can be set to TRUE if
	the handler has fixed things up.
	
	Updated the autoplugger so it now works in both the unknown and
	known cases with and without other issues like a crippled
	(mono-only) osssink.

2001-05-22 00:23  omegahacker

	* gst/: gstbin.c, gstelement.c, gstelement.h, gstinfo.c, gstpad.c,
	gstthread.c: Updates to DEBUG system: moved statename into
	gstelement.c, colorized the states:
	
	NULL: white READY: read PAUSED: yellow PLAYING: green

2001-05-21 22:35  omegahacker

	* gst/autoplug/gstautoplugger.c: fixed up pausing system, and added
	src_caps_nego_failed body

2001-05-21 21:17  wtay

	* acconfig.h, configure.in: Updates to the audiofile detection
	stuff.

2001-05-21 21:17  wtay

	* plugins/audiofile/Makefile.am: Some minor changes to the makefile

2001-05-21 20:48  thomasvs

	* plugins/audiofile/: Makefile.am, gstafsink.c, gstafsink.h: first
	pass at an audiofile sink this sink uses the SGI audiofile library
	to write audio files

2001-05-21 20:42  thomasvs

	* plugins/Makefile.am: trying to add a check for libaudiofile

2001-05-21 20:40  thomasvs

	* configure.in: trying to add a check for libaudiofile (->
	plugins/audiofile/afsink)

2001-05-21 03:41  omegahacker

	* gst/autoplug/: gstautoplugcache.c, gstautoplugger.c:
	gstautoplugcache.c: Set default for cache's caps_proxy to FALSE
	again.	gstautoplugger.c: Fixed with strategic positioning of
	gst_pad_set_caps()

2001-05-21 03:40  omegahacker

	* gst/: gstcaps.c, gstpad.c, gstprops.c: Updated some debug
	statements.  Added specific debug for int props.

2001-05-21 03:35  hadess

	* test/mp3mad.c: - removed the parse factory, it's unused

2001-05-21 02:37  cael

	* gstplay/: ChangeLog, gstmediaplay.glade: Added a ChangeLog as per
	hadess' sugesstion, and added myself as an author.

2001-05-21 02:19  cael

	* gstplay/: Makefile.am, callbacks.c, callbacks.h, full-screen.c,
	full-screen.h, gstmediaplay.c, gstmediaplay.glade, gstmediaplay.h,
	gstplay.c, gstplay.h, gstplayprivate.h, gststatusarea.c,
	gststatusarea.h, main.c: added the begninnings of full-screen
	support (crashes atm), playing at double size, general code cleanup
	and what not.

2001-05-20 22:24  wtay

	* tools/gstreamer-inspect.c: Fixed a problem with -inspect where
	some args would not show up correctly

2001-05-20 22:24  thomasvs

	* plugins/filters/adder/adder.c: fixed caps stuff

2001-05-20 21:12  wtay

	* tools/gstreamer-inspect.c: Better output of element flags.

2001-05-20 21:06  wtay

	* tools/gstreamer-launch.c: Escape spaces in the cmdline args with
	"\\ " so that parse can handle it.

2001-05-20 21:05  wtay

	* gst/gstparse.c: Added the possibility to escape chars in
	gstparse. You can now give it a cmdline like disksrc location=some\
	sort\ of.mp3 ! .... and it does the right thing.

2001-05-20 19:59  wtay

	* plugins/quicktime/: Makefile.am, gstquicktimedecoder.c,
	gstquicktimedecoder.h: Updated the plugin to the current CVS.

2001-05-20 19:24  wtay

	* plugins/quicktime/: Makefile.am, README, gstquicktimedecoder.c,
	gstquicktimedecoder.h: Added a quicktime decoder by yann@3ivx.com.

2001-05-20 19:17  thomasvs

	* plugins/filters/passthrough/passthrough.c: changed pad templates

2001-05-20 19:05  thomasvs

	* plugins/filters/passthrough/: passthrough.c, passthrough.h:
	updating passthrough to handle caps

2001-05-20 19:01  thomasvs

	* plugins/filters/volenv/volenv.c: updating caps handling

2001-05-20 16:45  thomasvs

	* plugins/filters/passthrough/passthrough.c: trying to add caps
	detection to passthrough

2001-05-20 15:55  thomasvs

	* gst/gstparse.c: reinstated exit(-1) when gstparse.c doesn't find
	the plugin mentioned

2001-05-20 15:16  thomasvs

	* plugins/wav/gstparsewav.c: parsewav now does src pad setting of
	width, depth, channels, frequency

2001-05-20 15:12  wtay

	* gst/elements/gstpipefilter.c: Made pipefilter a DECOUPLED
	element.

2001-05-20 15:03  thomasvs

	* plugins/wav/gstparsewav.c: parsewav sets channel capability now

2001-05-20 14:56  thomasvs

	* plugins/wav/gstparsewav.c: First try at updating parsewav and
	setting caps on src pad

2001-05-20 11:31  wtay

	* components/bonobo-media/: Makefile.am,
	bonobo-media-gstreamer-factory.c, bonobo-media-gstreamer.gob,
	bonobo-media-gstreamer.oafinfo, bonobo-media-gstreamervideo.gob:
	Added the code for the bonobo media component. It doesn't really
	work yet because bonobo-media doesn't show video.

2001-05-20 06:48  cael

	* gstplay/AUTHORS: finally managed to get the AUTHORS file added.
	big things are coming allright ;-)

2001-05-20 01:16  hadess

	* AUTHORS: - added myself to the AUTHORS file

2001-05-19 19:17  wtay

	* plugins/: oss/gstosssink.c, vorbis/vorbis.c, vorbis/vorbisdec.c,
	vorbis/vorbisenc.c, vorbis/vorbisenc.h, xvideosink/gstximage.c:
	More updates to caps in vorbisenc. it now correctly sets up the
	encoder based on the input audio type.

2001-05-19 15:16  wtay

	* plugins/: mp3decode/mad/gstmad.c, mpeg1/mpegaudio/common.c,
	mpeg1/mpegaudio/common.h, mpeg1/mpegaudio/encode.c,
	mpeg1/mpegaudio/encoder.h, mpeg1/mpegaudio/gstmpegaudio.c,
	mpeg1/mpegaudio/musicin.c, mpeg1/mpegaudio/musicin.h,
	mpeg1/mpegaudio/psy.c, mpeg1/mpegaudio/subs.c,
	mpeg1/mpegaudio/table_absthr.h, mpeg1/mpegaudio/table_cb.h,
	mpeg1/mpegaudio/table_enwindow.h, mpeg1/mpegaudio/table_th.h,
	mpeg1/mpegaudio/tables.c, mpeg1/mpegaudio/tonal.c: More mp3
	updates.  Make mpegaudio use a sane namespace for all exported
	symbols.  the mad element can now play mpeg audio comming is as
	frames.

2001-05-19 07:39  omegahacker

	* .cvsignore, Makefile.am, configure.in,
	gstreamer-uninstalled.pc.in: Added gstreamer-uninstalled.pc.in in
	prep for future changes to pkg-config.	Disabled docs building by
	default (--enable-docs-build to turn it on).  Added more visible
	warning messages for lacking libraries, listing the plugins that
	won't build (not complete!).

2001-05-19 07:39  omegahacker

	* gstreamer-uninstalled.pc.in: file gstreamer-uninstalled.pc.in was
	initially added on branch BRANCH-INCSCHED1.

2001-05-19 01:33  wtay

	* plugins/: mp3decode/mad/gstmad.c, mp3decode/mpg123/gstmpg123.c,
	mp3decode/parse/mp3parse.c, mp3encode/lame/gstlame.c,
	mpeg1/mpegaudio/common.h, mpeg1/mpegaudio/encoder.h,
	mpeg1/mpegaudio/gstmpegaudio.c, mpeg1/mpegaudio/musicin.c,
	mpeg1/mpegaudio/musicin.h, mpeg1/mpegaudio/psy.c, oss/gstosssink.c:
	Updates to various mp3 related plugins.  Added args and capsnego to
	mpegaudio.

2001-05-18 19:11  wtay

	* plugins/esd/esdsink/esdsink.c: Added newcaps functions to esdsink
	to sync with the provided caps.

2001-05-18 18:58  wtay

	* plugins/cdparanoia/cdparanoia.c: Updated to the new caps.

2001-05-17 23:00  omegahacker

	* gst/autoplug/gstautoplugger.c: update to latest code, includes
	caps_fail handlers that kinda work

2001-05-17 06:20  dlehn

	* docs/gst/gstreamer-sections.txt: Pesky nightly doc build failure
	emails exposing my forgetfulness...

2001-05-17 01:18  hadess

	* plugins/gnomevfs/: Makefile.am, gnomevfssink.c: - gnomevfssink
	committed

2001-05-16 23:42  wtay

	* acconfig.h: Added SDL.

2001-05-16 23:40  wtay

	* configure.in: Added a check for SDL

2001-05-16 23:09  wtay

	* testsuite/refcounting/thread.c: file thread.c was initially added
	on branch BRANCH-INCSCHED1.

2001-05-16 23:09  wtay

	* testsuite/refcounting/thread.c: Added thread refcounting and
	module test case

2001-05-16 23:08  wtay

	* testsuite/refcounting/: Makefile.am, bin.c: More testsuite
	updates

2001-05-16 23:08  wtay

	* gst/: gstbin.c, gstelement.c, gstthread.c: Slighly take a
	different approach for object destruction, using the real _remove
	functions so that the scheduler has a chance to destroy its state
	too.  This breaks the thread with ghostpads destruction case for
	now.

2001-05-16 22:42  omegahacker

	* plugins/filters/stereo2mono/stereo2mono.c: fixed
	stereo2mono_init, it was fragging its src pad

2001-05-16 22:21  omegahacker

	* plugins/filters/stereo2mono/stereo2mono.c: fixed up caps so
	autoplug can do something with it

2001-05-16 22:19  omegahacker

	* gst/autoplug/gstautoplugcache.c: added first_buffer signal, and
	default to caps_proxy true

2001-05-16 22:18  omegahacker

	* gst/autoplug/gstautoplugger.c: up to latest (broken) autoplugger)

2001-05-16 21:41  wtay

	* plugins/: Makefile.am, jpeg/Makefile.am, sdlsink/Makefile.am,
	sdlsink/sdlvideosink.c, sdlsink/sdlvideosink.h: Added an SDL video
	sink by Ronald Bultje (BBB) some cleanups and added more caps to
	the template.  some name changes to the jpeg decoder.

2001-05-16 20:32  wtay

	* plugins/: Makefile.am, gnomevfs/Makefile.am,
	gnomevfs/gnomevfssrc.c: Added the gnomevfssrc by hadess

2001-05-16 20:32  wtay

	* configure.in: Added gnomevfs checks.

2001-05-16 08:16  dlehn

	* gst/: cothreads.c, gstscheduler.c: - Fix cothread pointers and
	allocation so full 2M stack space available: - Double maximums to
	use full stack space: - COTHREAD_STACKSIZE = 16k -
	COTHREAD_MAXTHREADS = 128 - cothread changes only verified on x86 -
	cothread_create returns NULL if nthreads == MAXTHREADS though not
	yet handled by gstschedule caller

2001-05-16 06:04  dlehn

	* acconfig.h, configure.in, gst/gsttrace.c, gst/gsttrace.h,
	libs/idct/ieeetest.c, test/lat.c: - basic arch check for HAVE_RDTSC
	- use common gst_trace_read_tsc() for RDTSC call - add untested
	function to do ascii dump of trace data

2001-05-16 05:07  dlehn

	* test/: videotest.c, wave.c: fix a couple warnings

2001-05-15 22:04  wtay

	* plugins/mp3decode/mad/gstmad.c: Make the mad decoder output the
	samples in the native endianness.

2001-05-15 20:25  wtay

	* gst/: gstobject.c, gstpad.c, gstthread.c: Added ghostpad
	destruction.

2001-05-15 10:40  omegahacker

	* plugins/mpeg2/mpeg2dec/gstmpeg2dec.c: added the detail that
	mpeg2dec can play mpeg1 streams too

2001-05-15 10:04  omegahacker

	* gstplay/: gstplay.c, main.c: added ability to write out xml copy
	of pipeline

2001-05-15 05:13  omegahacker

	* gst/autoplug/gstautoplugger.c: IT WORKS\!\!\!

2001-05-15 02:45  omegahacker

	* gst/: gstinfo.c, gstpad.c, gsttypefind.c,
	autoplug/gstautoplugcache.c, autoplug/gstautoplugger.c: gstinfo.c:
	one more check to make sure DEBUG_FUNCPTR_NAME doesn't go south
	gstpad.c: debugging changes gsttypefind.c: moved gst_pad_set_caps
	to *before* the caps_changed signal gstautoplugcache.c: added
	refcounting around signal_emit, and debug updates gstautoplugger.c:
	added code to remove the autoplugcache when done

2001-05-14 23:42  wtay

	* gst/gsttypefind.c: Added a reference to typefind.

2001-05-14 23:21  omegahacker

	* gst/gstpad.c: enhanced debug and minor code cleanup (no
	functional changes)

2001-05-14 22:57  wtay

	* gst/gstelement.c: Refcounting fixes

2001-05-14 22:22  wtay

	* gst/gstelement.c: fixed a mem leak in the destroy code.

2001-05-14 22:20  wtay

	* gst/: gstelement.c, gstpad.c, gstthread.c: slightly different
	refcount handling. the pad shutdown function doesn't remove the pad
	from the parent because the parent is needed in the destroy
	function.

2001-05-14 21:08  omegahacker

	* gst/: cothreads.c, gstbin.h, gstelement.c, gstobject.c, gstpad.c,
	gstpad.h, gstscheduler.c, gsttypefind.c,
	autoplug/gstautoplugcache.c, autoplug/gstautoplugger.c:
	cothreads.c: added a comment on one of the tests gstbin.h: added
	the GST_BIN_SELF_SCHEDULABLE flag gstelement.c: cleaned up the
	_change_state function a little gstobject.c: improved the
	refcounting DEBUGs gstpad.c: moved the connected signal to after
	capsnego,	    added the caps_nego_failed signal gstpad.h:
	added the caps_nego_failed signal funcptr gstscheduler.c: added the
	GST_BIN_SELF_SCHEDULABLE exception gsttypefind.c: added check code
	around signal_emit to deal with the case		where the
	signal's handler shuts down the element gstautoplugcache.c: added
	the first_buffer signal and caps_proxy arg gstautoplugger.c:
	significant rework, it functions quite nicely actually

2001-05-14 09:51  omegahacker

	* docs/gst/gstreamer-sections.txt: removed the COTHREAD_STACKSIZE
	and friends, since they're now private to cothreads.c

2001-05-13 16:29  wtay

	* testsuite/refcounting/: bin.c, element_pad.c: More testsuite
	updates

2001-05-13 16:29  wtay

	* gst/: gstbin.c, gstelement.c, gstpad.c: More housekeeping
	updates.  _destroying an element or a pad properly removes if from
	the parent.

2001-05-13 08:49  omegahacker

	* plugins/effects/volume/volume.c: hacked up volume plugin to do
	S16_LE no matter what.	FIXME\!

2001-05-12 19:04  wtay

	* gst/: gstbin.c, gstelement.c, gstelementfactory.c, gstthread.c,
	gstthread.h: Fixed a leak in bin destruction More refcounting fixes

2001-05-12 19:03  wtay

	* testsuite/refcounting/bin.c: file bin.c was initially added on
	branch BRANCH-INCSCHED1.

2001-05-12 19:03  wtay

	* testsuite/refcounting/: Makefile.am, bin.c, element_pad.c: More
	refcounting test cases

2001-05-12 15:07  wtay

	* testsuite/refcounting/: element.c, element_pad.c, object.c,
	pad.c: More testcases

2001-05-12 15:07  wtay

	* gst/: gstelement.c, gstelement.h, gstobject.c: Added
	gst_element_remove_pad.  more refcounting stuff (object unparent on
	destroy)

2001-05-12 01:04  wtay

	* gst/: gstelement.c, gstinfo.c, gstinfo.h, gstobject.c, gstpad.c,
	gstpad.h: Refcounting fixes to make the testsuite succeed.  Added a
	ne w category for REFCOUNTING.

2001-05-12 01:03  wtay

	* testsuite/refcounting/element_pad.c: file element_pad.c was
	initially added on branch BRANCH-INCSCHED1.

2001-05-12 01:03  wtay

	* testsuite/refcounting/pad.c: file pad.c was initially added on
	branch BRANCH-INCSCHED1.

2001-05-12 01:03  wtay

	* testsuite/refcounting/: Makefile.am, element_pad.c, pad.c: More
	testsuite updates

2001-05-11 20:36  wtay

	* examples/autoplug/autoplug.c: Updated the autoplugger example to
	use the new cache.

2001-05-11 19:44  wtay

	* configure.in: Added the refcounting testsuite dir to configure.in

2001-05-11 19:44  wtay

	* testsuite/refcounting/Makefile.am: file Makefile.am was initially
	added on branch BRANCH-INCSCHED1.

2001-05-11 19:44  wtay

	* testsuite/refcounting/: Makefile.am, element.c, mem.c, mem.h,
	object.c: Added a testsuite for refcounting.

2001-05-11 19:44  wtay

	* testsuite/refcounting/element.c: file element.c was initially
	added on branch BRANCH-INCSCHED1.

2001-05-11 19:44  wtay

	* testsuite/refcounting/mem.c: file mem.c was initially added on
	branch BRANCH-INCSCHED1.

2001-05-11 19:44  wtay

	* testsuite/refcounting/object.c: file object.c was initially added
	on branch BRANCH-INCSCHED1.

2001-05-11 19:44  wtay

	* testsuite/refcounting/mem.h: file mem.h was initially added on
	branch BRANCH-INCSCHED1.

2001-05-11 19:41  wtay

	* gst/: cothreads.c, gstbin.c, gstelement.c, gstobject.c,
	gstobject.h, gsttypefind.c: Work on refcounting and proper object
	destruction.

2001-05-11 15:42  dlehn

	* plugins/filters/ladspa/ladspa.h: LADSPA header now LGPL.

2001-05-11 00:43  omegahacker

	* gst/gstpad.h: some minor updates with a hair more speed

2001-05-10 23:35  omegahacker

	* gst/: cothreads.c, cothreads.h: move cothread_context definition
	over to the .c

2001-05-10 23:30  omegahacker

	* gst/gstpad.h: fixed up macros to match new RealPad stuff, change
	#if 1 to #if 0 to use, beware you must rebuild all plugins after
	change

2001-05-10 23:10  omegahacker

	* gst/: cothreads.c, cothreads.h: moved cothread parameters into .c
	to avoid rebuilding libgst.la every time

2001-05-10 22:44  omegahacker

	* test/lat.c: corrected the rdtsc code, it actually, um, works now
	;-)

2001-05-10 21:30  dlehn

	* test/: .cvsignore, Makefile.am, lat.c: Added simple latency
	tester.

2001-05-10 21:28  dlehn

	* gst/elements/gstfakesink.c, gst/elements/gstfakesrc.c,
	tests/sched/runxml.c: Pass buffer in handoff signal

2001-05-10 21:25  dlehn

	* tests/autoplug2.c: just call exit() once

2001-05-10 09:22  omegahacker

	* tools/gstreamer-inspect.c: minor updates to ouptut, added section
	for meta-elements' children

2001-05-10 09:21  omegahacker

	* plugins/mpeg1/mpeg_play/: gstmpeg_play.c, video.c: more debug
	output tweaks

2001-05-10 09:18  omegahacker

	* plugins/filters/adder/adder.c: added comment to make the adder
	compliant (don't set COTHREAD_STOPPING)

2001-05-10 09:17  omegahacker

	* libs/idct/gstidct.c: minor cleanup of some debug strings

2001-05-10 09:16  omegahacker

	* gst/autoplug/gstautoplugger.c: file gstautoplugger.c was
	initially added on branch BRANCH-INCSCHED1.

2001-05-10 09:16  omegahacker

	* gst/: gst.h, gstbin.c, gstbuffer.c, gstelement.c, gstelement.h,
	gstinfo.c, gstqueue.c, gstthread.c, gstxml.c, autoplug/Makefile.am,
	autoplug/autoplugtest.c, autoplug/gstautoplugcache.c,
	autoplug/gstautoplugger.c, elements/gstfakesrc.c: - Fixed up a
	bunch of warnings.  - Fixed buffer_copy (alloc correct size) -
	Added start of autoplugger meta-element

2001-05-09 07:20  wtay

	* plugins/filters/colorspace/yuv2yuv.c: Forgot to add a convertor..

2001-05-09 05:12  dlehn

	* gst/elements/: gstfakesrc.c, gstfakesrc.h: Added "silent" arg.

2001-05-08 21:52  wtay

	* plugins/: capture/v4l/gstv4lsrc.c, capture/v4l/gstv4lsrc.h,
	dv/dvdec.c, filters/colorspace/Makefile.am,
	filters/colorspace/colorspace.c, filters/colorspace/colorspace.h,
	filters/lav/.cvsignore, filters/lav/Makefile.am,
	filters/lav/lavencode.c, filters/lav/lavencode.h, oss/gstossgst.c,
	videoscale/videoscale.c, vorbis/vorbis.c: Various changes to the
	plugins.  Added a lav encoder, this one just adds a header in front
	YUV data so that the lav tools can operate on it.

2001-05-08 21:44  omegahacker

	* gst/: gstpad.c, gstpad.h: added the caps_changed signals, changed
	a few other things around a littleto clean up warnings

2001-05-07 23:10  wtay

	* plugins/alsa/: alsa.h, alsa_common.c, alsasink.c, alsasrc.c:
	Applied the alsa patch from Thomas Nyberg.

2001-05-07 22:57  wtay

	* examples/mixer/mixer.c: Added a WITH_BUG2 define to show the
	livelock we're trying to fix.

2001-05-07 22:46  omegahacker

	* gst/: gstelement.c, gstscheduler.c, autoplug/autoplugtest.c,
	autoplug/gstautoplugcache.c: updated autoplugcache so it can be
	removed mid-signal, now autoplugtest works

2001-05-06 23:48  omegahacker

	* gst/autoplug/gstautoplugcache.c: fixed bug in datastructure usage

2001-05-06 23:12  omegahacker

	* gst/: gstbin.c, gstelement.c, gstpipeline.c, gstprops.c,
	gstscheduler.c, gstthread.c: fixed gst_scheduler_pad_disconnect
	(never ignore compiler warnings\!) and updated a few INFO lines

2001-05-06 23:12  omegahacker

	* gst/autoplug/autoplugtest.c: fixed up some things, added vorbis

2001-05-06 19:03  wtay

	* gst/autoplug/: Makefile.am, autoplugtest.c: Adjusted the Makefile
	so that it builds here...

2001-05-06 18:57  wtay

	* plugins/mpeg1/mpegaudio/common.c: Forgot to update a symbol..

2001-05-06 18:33  omegahacker

	* gst/autoplug/autoplugtest.c: file autoplugtest.c was initially
	added on branch BRANCH-INCSCHED1.

2001-05-06 18:33  omegahacker

	* gst/autoplug/: Makefile.am, autoplugtest.c, gstautoplugcache.c:
	initial checkin of autoplugcache and a test program to simulate
	dynamic autoplugging

2001-05-06 18:33  omegahacker

	* gst/autoplug/gstautoplugcache.c: file gstautoplugcache.c was
	initially added on branch BRANCH-INCSCHED1.

2001-05-06 15:27  wtay

	* plugins/mpeg1/mpegaudio/: common.c, common.h, musicin.c, tonal.c:
	Fixed a namespace issue with lame.

2001-05-06 15:22  wtay

	* plugins/oss/: gstossgst.c, gstosshelper.c: Fixed a bug in format
	passing.  Some cleanups.

2001-05-06 14:53  wtay

	* plugins/oss/gstossgst.c: Use setenv/getenv to manipulate the
	environment of the child process.

2001-05-06 14:52  wtay

	* plugins/mp3encode/lame/gstlame.c: Setup the encoder based on the
	caps of the sinkpad.

2001-05-06 09:16  omegahacker

	* tools/gstreamer-complete.c: file gstreamer-complete.c was
	initially added on branch BRANCH-INCSCHED1.

2001-05-06 09:16  omegahacker

	* tools/gstreamer-compprep.c: file gstreamer-compprep.c was
	initially added on branch BRANCH-INCSCHED1.

2001-05-06 09:16  omegahacker

	* tools/: .cvsignore, Makefile.am, gstreamer-complete.c,
	gstreamer-compprep.c: added initial bash commandline completion
	code

2001-05-06 04:06  omegahacker

	* plugins/mpeg2/mpeg2dec/gstmpeg2dec.c: oops, that was wrong, but
	somehow it worked

2001-05-06 03:47  omegahacker

	* plugins/mpeg2/mpeg2dec/gstmpeg2dec.c: since mpeg2dec can handle
	mpeg1 video streams, update caps to show that

2001-05-05 20:01  wtay

	* plugins/oss/: gstossgst.c, gstosshelper.c, gstosshelper.h: A
	little cleanup (more defines) Better arg parsing.

2001-05-05 18:22  wtay

	* plugins/oss/gstosshelper.h: The inter process protocol layout
	header.

2001-05-05 18:21  wtay

	* plugins/oss/: gstossgst.c, gstosshelper.c: Properly negotiate the
	format set by the OSS app.

2001-05-05 05:07  dlehn

	* plugins/filters/: adder/Makefile.am, colorspace/Makefile.am,
	intfloatconvert/Makefile.am, mono2stereo/Makefile.am,
	stereo2mono/Makefile.am, volenv/Makefile.am: Remove EXTRA_DIST =
	README from dirs with a README.

2001-05-05 03:16  wtay

	* gst/gstplugin.c: Make sure the plugin filaname is set before
	calling the init function.

2001-05-05 03:05  wtay

	* plugins/oss/: Makefile.am, gstossaudio.c, gstossgst.c,
	gstossgst.h, gstosshelper.c: A first attempt at hijacking /dev/dsp
	and feeding the audio of an OSS app into GStreamer.

2001-05-05 02:50  dlehn

	* debian/changelog: update version

2001-05-05 01:45  dlehn

	* debian/: Makefile.am, changelog, control, gstreamer-aa.files,
	gstreamer-arts.files, gstreamer-colorspace.files,
	gstreamer-common.files, gstreamer-mad.files, rules: Sync with
	current code - add more and more plugins.

2001-05-04 23:14  omegahacker

	* gst/gstelement.h, gst/gstscheduler.c,
	plugins/mp3decode/mad/gstmad.c: Add the GST_ELEMENT_NO_ENTRY flag,
	which when set will force the scheduler to skip over an element as
	an option for the first cothread jump.	This is needed because
	libraries like mad don't ever seem to want to quit.  Thus they
	ignore COTHREAD_STOPPING and can't be trusted to be the entry.

2001-05-04 21:43  omegahacker

	* gst/: gstinfo.c, gstpad.c, gstscheduler.c: Some minor DEBUG
	cleanups, renamed the various scheduler-specific routines to
	actually be called gst_schedule_ instead of gst_bin_.

2001-05-04 21:41  omegahacker

	* plugins/mp3decode/mad/gstmad.c: added GST_DEBUG_FUNCPTR to
	gst_mad_loop instance

2001-05-04 00:21  omegahacker

	* gst/gstparse.c: fixed spelling mistake in user-visible output

2001-05-03 23:29  wtay

	* gst/gstprops.c: Created a macro of the va_arg parsing function
	because some systems (PPC) cannot handle passing a va_list by
	reference.

2001-05-03 22:44  wtay

	* gst/gstparse.c: Added dynamic pads to the command line parser.
	
	  ./gstreamer-launch disksrc location=/some/systemstream.mpg !
	mpeg1parse video_00!
		    queue ! \{ mp1videoparse ! mpeg_play ! aasink \}
	
	will now work.

2001-05-03 21:06  wtay

	* docs/gst/: gstreamer-sections.txt, gstreamer.hierarchy,
	tmpl/gstbuffer.sgml, tmpl/gstcaps.sgml, tmpl/gstdisksink.sgml,
	tmpl/gstinfo.sgml, tmpl/gstprops.sgml, tmpl/gstreamer-unused.sgml:
	API docs updates

2001-05-03 18:49  wtay

	* REQUIREMENTS: Added Hermes to the required libs for gstplay.

2001-05-03 11:16  thomasvs

	* examples/mixer/mixer.c, plugins/filters/adder/adder.c: * made a
	quick hack in adder to set GST_ELEMENT_COTHREAD_STOPPING after	
	one interation to force return to main program; should probably be
	fixed	in a better way * cleaned mixer up, it now works with
	delayed start.	Drinks are in order.

2001-05-03 00:46  wtay

	* docs/manual/: Makefile.am, autoplugging.sgml, bins.sgml,
	buffers.sgml, elements.sgml, gstreamer-manual.sgml,
	helloworld.sgml, pads.sgml: Small manual changes.  Added a section
	about autoplugging.

2001-05-03 00:44  wtay

	* gst/gstinfo.h: Added and extra whitespace before ## args
	(remember it eats all non whitespace chars to the left if it's
	empty).

2001-05-03 00:12  wtay

	* examples/plugins/example.c: We don't want to teach you bad
	habbits, so here's a fix for a memleak in the example plugin.

2001-05-02 21:27  omegahacker

	* gst/gstinfo.h: re-enabled the funcptr hash table

2001-05-02 21:16  wtay

	* examples/mixer/mixer.c: Added a WITH_BUG flag to trigger the
	scheduling error we're trying to chase.

2001-05-02 21:12  thomasvs

	* examples/mixer/mixer.c: delayed second song

2001-05-02 21:01  omegahacker

	* examples/mixer/mixer.c: added two debugging things: xml pipelie
	output, and schedule dump

2001-05-02 20:20  omegahacker

	* gst/: gst.c, gstcaps.c, gstelement.c, gstelementfactory.c,
	gstinfo.c, gstinfo.h, gstpad.c, gstprops.c, gstqueue.c: Converted
	the DEBUG system to look like the INFO system, with a function
	pointer that can be replaced.  Not done with everything, since it
	seems that we need an ERROR system plus a FATAL error, or maybe
	just an ERROR system with a severity, and depending on this the
	DEBUG system might again be changed to have a single or at least
	fewer handlers.
	
	Also did a bit of work fixing up the actual DEBUG and INFO commands
	scattered throughout the code.	We still have over 500 of these in
	gst/*.c alone...

2001-05-02 20:11  thomasvs

	* examples/mixer/mixer.c: trying to adapt to incsched

2001-05-02 09:52  thomasvs

	* plugins/filters/Makefile.am: added volenv and adder

2001-05-02 09:51  thomasvs

	* examples/Makefile.am: added mixer

2001-05-02 00:00  omegahacker

	* gst/gstscheduler.c: /me is an idiot

2001-05-01 23:58  thomasvs

	* plugins/filters/passthrough/: README, filter.func, level.c,
	level.h: Basic level detection/printing plugin; calculates RMS over
	data block and prints this out along with time in secs through
	plugin needs more work

2001-05-01 23:45  wtay

	* gstplay/: gstplay.c, gstplayprivate.h: Changed the pipeline setup
	for incremental scheduling.

2001-05-01 23:43  wtay

	* gst/gstprops.c: Removed the assert on an unknown propertytype and
	print useful info.

2001-05-01 22:41  omegahacker

	* test/mpeg2parse4.c: file mpeg2parse4.c was initially added on
	branch BRANCH-INCSCHED1.

2001-05-01 22:41  omegahacker

	* configure.in, gstreamer.pc.in, gst/Makefile.am, gst/gstbin.c,
	gst/gstinfo.c, gst/gstinfo.h, gst/gstqueue.c, gst/gstscheduler.c,
	gst/gstscheduler.h, test/.cvsignore, test/Makefile.am,
	test/mpeg2parse3.c, test/mpeg2parse4.c, tests/mp1vid.c: - fixed
	configure.in %VAR stuff - fixed gstreamer.pc.in description string
	- fixed up incremental scheduling some more - updated the
	GST_DEBUG_FUNCPTR code to no longer need a hash - minor updates to
	DEBUG colorization - new test/mpeg2parse4.c

2001-05-01 22:35  omegahacker

	* gstplay/main.c: added code to save the pipeline to xml

2001-05-01 14:54  richardb

	* docs/fwg/gst-plugin-writers-guide.sgml: Update documentation for
	audio/raw properties to cover format=float case.  Please check this
	for correctness.

2001-05-01 14:16  thomasvs

	* gst/autoplug/: gststaticautoplug.c, gststaticautoplugrender.c:
	added newlines to debug output

2001-05-01 00:35  wtay

	* gstplay/gstplay.c: Implemented the function to get the pipeline
	of gstplay.

2001-05-01 00:20  wtay

	* docs/random/autoplug2: Added an explanation of the innner
	workings of the current autoplugger.

2001-04-30 21:40  richardb

	* configure.in: Tighten some library checks (check for header files
	as well as libraries) Also, clean up structure slightly: put all
	AC_DEFINEs for feature checks into the appropriate section at end. 
	This structure allows user parameter code which overrides the
	feature selection to be kept together in a section after the
	feature checks but before the AC_DEFINES and AM_CONDITIONALs.

2001-04-30 20:51  thomasvs

	* examples/mixer/mixer.c: cleared naming issues, still doesn't play

2001-04-30 15:34  thomasvs

	* plugins/filters/Makefile.am: added volenv, passthrough and adder
	to Makefile.am

2001-04-30 11:22  richardb

	* configure.in: Add explicit check for <artsc.h>, in case
	artsc-config lies to us.

2001-04-29 23:46  sbaker3

	* plugins/filters/: intfloatconvert/float2int.h,
	intfloatconvert/int2float.h, mono2stereo/mono2stereo.h: remove
	bogus reference to audioraw.h

2001-04-29 23:27  wtay

	* examples/mixer/mixer.c: Changed the way the typefind function
	works by creating a little pipeline as the toplevel bin..

2001-04-29 22:56  thomasvs

	* examples/mixer/mixer.c: trying to convert mixer to incsched, not
	working yet

2001-04-29 18:59  richardb

	* README: Add detailed note (and patch) about automake problem.

2001-04-29 08:54  sbaker3

	* plugins/filters/ladspa/gstladspa.c: sync ladspa plugin with
	recent api changes - still not functional

2001-04-29 08:41  sbaker3

	* configure.in: added mono2stereo and intfloatconvert plugin

2001-04-29 08:39  sbaker3

	* plugins/filters/: Makefile.am, intfloatconvert/Makefile.am,
	intfloatconvert/float2int.c, intfloatconvert/float2int.h,
	intfloatconvert/int2float.c, intfloatconvert/int2float.h,
	intfloatconvert/intfloatconvert.c,
	intfloatconvert/intfloatconvert.h, mono2stereo/Makefile.am,
	mono2stereo/mono2stereo.c, mono2stereo/mono2stereo.h: added
	mono2stereo and intfloatconvert plugins

2001-04-28 20:16  sbaker3

	* editor/gsteditorproperty.c, tools/gstreamer-inspect.c: added
	output of float properties

2001-04-28 19:59  wtay

	* gst/: gstinfo.c, gstprops.c: Added more colors for
	props/caps/clock/negotiation.

2001-04-28 19:58  sbaker3

	* gst/elements/: gstsinesrc.c, gstsinesrc.h: update sinesrc to
	latest caps

2001-04-28 19:57  sbaker3

	* gst/elements/gstelements.c: add factory init for sinesrc

2001-04-28 19:56  sbaker3

	* gst/: gstcaps.h, gstprops.c, gstprops.h: add gst_props_get_float
	function

2001-04-28 08:17  omegahacker

	* test/mpeg2parse3.c: now fully correct within incsched1 world

2001-04-28 05:23  omegahacker

	* test/: Makefile.am, mpeg2parse2.c, mpeg2parse3.c: brought in
	mpeg2parse3.c from HEAD and fixed it up so it works

2001-04-28 05:23  omegahacker

	* gst/: cothreads.c, gstinfo.c, gstqueue.c: - Updated colorization
	some more (pthread and cothread id is in color) - Added some minor
	debug to help trace mp1vid segfaults

2001-04-28 04:38  dlehn

	* test/: .cvsignore, Makefile.am, mpeg2parse3.c: mpeg2parse2.c +
	audio = mpeg2parse3.c = a simple .vob player

2001-04-28 03:54  omegahacker

	* gst/: gstbin.c, gstclock.c, gstelement.c, gstelementfactory.c,
	gstinfo.c, gstpad.c, gstpipeline.c, gstthread.c, gsttype.c,
	gstutils.c: Updated the colorization a bit more, and did a
	significant pass through all the other code to change categories on
	DEBUG and INFO statements to be correct, and not simply zero. 
	There are still more, but this is a good first pass.

2001-04-28 02:46  mhowell

	* gst/: gstelement.c, gstscheduler.c, gstthread.c: fixed another
	thread synch case... better debug

2001-04-28 02:06  omegahacker

	* gst/: gst.c, gstinfo.c, gstinfo.h: another update to the
	colorization code

2001-04-27 22:14  wtay

	* gst/gstutils.c: Added enum parsing...

2001-04-27 22:09  omegahacker

	* gst/: gstinfo.c, gstinfo.h: fixes to colorization

2001-04-27 22:01  thomasvs

	* plugins/filters/filterstamp.sh: changed "rename" command to
	something using sed in one line having the same effect

2001-04-27 21:58  omegahacker

	* gst/gstinfo.c: syntax error fixed (s/;/,/)

2001-04-27 21:54  mhowell

	* gst/: gstelement.c, gstscheduler.c, gstthread.c, gstqueue.h,
	gstqueue.c: initial fix of thread synch for queues and state change

2001-04-27 21:47  omegahacker

	* acconfig.h, configure.in, gst/gst.c, gst/gstelement.h,
	gst/gstinfo.c, gst/gstinfo.h: added colorization of DEBUG and INFO,
	and a comment in gstelement.h

2001-04-27 21:45  wtay

	* gst/autoplug/gststaticautoplugrender.c: Tried to get the
	autoplugger working by setting the pipeline to PAUSED before
	attempting to connect pads...

2001-04-27 21:31  omegahacker

	* acconfig.h, configure.in, gst/gst.c, gst/gstinfo.c,
	gst/gstinfo.h: Added colorization to DEBUG and INFO.  Colors are
	based on categories, with the strings in _gst_category_colors[] in
	gstinfo.c  See wiki node GstDebugColors for the actual colors, or
	/etc/DIR_COLORS works too.
	
	Please comment on the colorization style and ideas in the above
	wiki node.

2001-04-27 20:35  wtay

	* docs/gst/gstreamer.hierarchy, docs/gst/tmpl/cothreads.sgml,
	docs/gst/tmpl/gstbuffer.sgml, docs/gst/tmpl/gstdisksink.sgml,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstfakesrc.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/gst/tmpl/gstthread.sgml, examples/autoplug/autoplug.c,
	gstplay/gstplay.c, tests/mp1vid.c: A commit of pending (small)
	changes...

2001-04-27 20:17  wtay

	* examples/autoplug/autoplug.c: Fixed the autoplugger

2001-04-27 02:46  omegahacker

	* gst/: cothreads.c, cothreads.h: fixed cothread_current_main so
	it, um, works.

2001-04-27 02:42  omegahacker

	* gst/: cothreads.c, cothreads.h: added cothread_current_main with
	(void) args

2001-04-27 00:34  omegahacker

	* tests/mp1vid.c: latest variant of mp1vid causes lockup, solution
	is interruptibility

2001-04-26 23:32  omegahacker

	* tests/mp1vid.c: updated to working state

2001-04-26 23:32  omegahacker

	* gst/: gstbin.c, gstthread.c: gstbin.c: commented out the
	requirement that a bin be !PLAYING to add gstthread.c: fixed an old
	failed merge that locked the same mutex twice	...in a row

2001-04-26 06:47  dlehn

	* configure.in: fix typos: %VAR -> $VAR

2001-04-26 02:53  omegahacker

	* autogen.sh, configure.in, docs/gst/gstreamer-docs.sgml,
	docs/gst/gstreamer-sections.txt, docs/gst/gstreamer.hierarchy,
	docs/gst/tmpl/gst.sgml, docs/gst/tmpl/gstautoplug.sgml,
	docs/gst/tmpl/gstbin.sgml, docs/gst/tmpl/gstbuffer.sgml,
	docs/gst/tmpl/gstbufferpool.sgml, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstcpu.sgml, docs/gst/tmpl/gstdisksink.sgml,
	docs/gst/tmpl/gstfakesink.sgml, docs/gst/tmpl/gstidentity.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstparse.sgml,
	docs/gst/tmpl/gstpipeline.sgml, docs/gst/tmpl/gstplugin.sgml,
	docs/gst/tmpl/gstprops.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/libs/Makefile.am, examples/Makefile.am,
	examples/autoplug/autoplug.c, examples/mixer/.cvsignore,
	examples/mixer/Makefile.am, examples/mixer/mixer.c,
	examples/mixer/mixer.h, examples/plugins/example.c, gst/.cvsignore,
	gst/Makefile.am, gst/Makefile.am.future, gst/gst.h,
	gst/gstbuffer.c, gst/gstbuffer.h, gst/gstcaps.c, gst/gstcaps.h,
	gst/gstobject.c, gst/gstpad.c, gst/gstpad.h, gst/gstplugin.c,
	gst/gstplugin.h, gst/gstprops.h, gst/gstqueue.c, gst/gstutils.c,
	gst/gstversion.h.in, gst/autoplug/Makefile.am,
	gst/autoplug/gststaticautoplug.c,
	gst/autoplug/gststaticautoplugrender.c, gst/elements/Makefile.am,
	gst/elements/gstdisksink.c, gst/elements/gstdisksink.h,
	gst/elements/gstdisksrc.c, gst/elements/gstelements.c,
	gst/elements/gstfakesink.c, gst/elements/gstfakesink.h,
	gst/elements/gstidentity.c, gst/elements/gstidentity.h,
	gst/types/Makefile.am, gst/types/gsttypes.c,
	libs/putbits/gstputbits.c, plugins/Makefile.am,
	plugins/1394/.cvsignore, plugins/1394/Makefile.am,
	plugins/1394/dv1394src.c, plugins/1394/dv1394src.h,
	plugins/1394/gst1394.c, plugins/aasink/.cvsignore,
	plugins/aasink/Makefile.am, plugins/aasink/aasink.c,
	plugins/aasink/aasink.h, plugins/alaw/alaw.c,
	plugins/alsa/alsasink.c, plugins/alsa/alsasrc.c,
	plugins/arts/.cvsignore, plugins/arts/Makefile.am,
	plugins/arts/gst_arts.c, plugins/arts/gst_arts.h,
	plugins/arts/gst_artsio.idl, plugins/arts/gst_artsio_impl.cc,
	plugins/artsd/artsdsink.c, plugins/au/gstparseau.c,
	plugins/audioscale/audioscale.c, plugins/avi/gstavidecoder.c,
	plugins/avi/gstaviencoder.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwindec.c, plugins/avi/wincodec/gstwindec.h,
	plugins/avi/wincodec/gstwinenc.c, plugins/capture/v4l/gstv4lsrc.c,
	plugins/cdparanoia/cdparanoia.c, plugins/cobin/cobin.c,
	plugins/cobin/spindentity.c, plugins/dv/Makefile.am,
	plugins/dv/NOTES, plugins/dv/dvdec.c, plugins/dv/dvdec.h,
	plugins/dvdsrc/dvdsrc.c, plugins/effects/stereo/stereo.c,
	plugins/effects/volume/volume.c, plugins/esd/esdsink/esdsink.c,
	plugins/filters/adder/.cvsignore,
	plugins/filters/adder/Makefile.am, plugins/filters/adder/adder.c,
	plugins/filters/adder/adder.h,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/colorspace/colorspace.h,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/median/median.c,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/smooth/smooth.c,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/filters/volenv/filter.func,
	plugins/filters/volenv/volenv.c, plugins/flx/flx_decoder.c,
	plugins/icecast/icecastsend/icecastsend.c, plugins/jpeg/gstjpeg.c,
	plugins/jpeg/gstjpegdec.c, plugins/jpeg/gstjpegenc.c,
	plugins/mp3decode/mad/gstmad.c, plugins/mp3decode/mad/gstmad.h,
	plugins/mp3decode/mpg123/Makefile.am,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c, plugins/mp3decode/xa/gstxa.c,
	plugins/mp3decode/xing/gstxing.c, plugins/mp3encode/lame/gstlame.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/mp2videoparse.c, plugins/mulaw/mulaw.c,
	plugins/oss/gstossaudio.c, plugins/oss/gstosssink.c,
	plugins/oss/gstosssrc.c, plugins/rtjpeg/rtjpeg.c,
	plugins/rtp/rtpsend/rtpsend.c, plugins/vcdsrc/vcdsrc.c,
	plugins/videoscale/videoscale.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c, plugins/vorbis/vorbis.c,
	plugins/wav/gstparsewav.c, plugins/xmms/gstxmms.c,
	plugins/xmms/gstxmmseffect.c, plugins/xvideosink/gstximage.c,
	plugins/xvideosink/gstximage.h, plugins/xvideosink/gstxvimage.c,
	plugins/xvideosink/gstxvimage.h, plugins/xvideosink/xvideosink.c,
	plugins/xvideosink/xvideosink.h, test/.cvsignore, test/Makefile.am,
	test/dv2mp1.c, test/dvshow.c, test/mp2tomp1.c, test/mp3.c,
	test/mp3mad.c, test/video2mp1.c, test/xmmstest.c,
	tests/Makefile.am, tests/autoplug3.c, tests/autoplug4.c,
	tests/padfactory.c, testsuite/capsnego/capsnego.c,
	testsuite/capsnego/converter.c, testsuite/capsnego/converter2.c,
	testsuite/capsnego/enum.c: Merged from HEAD to INCSCHED1 on
	200104251

2001-04-26 02:43  omegahacker

	* plugins/arts/gst_artsio_impl.h: oops, need to have this file in
	CVS

2001-04-26 01:25  omegahacker

	* tests/mp1vid.c: file mp1vid.c was initially added on branch
	BRANCH-INCSCHED1.

2001-04-26 01:25  omegahacker

	* tests/mp1vid.c: added mp1vid to CVS

2001-04-26 01:20  omegahacker

	* test/dvshow.c: set the video window size up front for NTSC, as a
	timesaver

2001-04-26 01:19  omegahacker

	* plugins/dv/dvdec.c: cleanup of the dvdec stuff, somewhat

2001-04-26 00:56  omegahacker

	* configure.in: turn off optimization when profiling (ackcvs diff
	configure.in) because something segfaults if we don't

2001-04-26 00:30  omegahacker

	* gst/cothreads.c: fixed a locking issue

2001-04-25 23:32  omegahacker

	* gst/: cothreads.c, cothreads.h, gstelement.c, gstelement.h,
	gstscheduler.c, gstscheduler.h: Added element-level locking
	support, implemented for cothreads with a mutex held whenever an
	element is actually currently running.	This should be done with
	atomic variables eventually, but the best I can find is to use
	<asm/spinlock.h> from the kernel, which brings in too much for my
	taste.
	
	Also increased cothread stack size to 32KB and max cothread count
	to 64, which fits within the default pthread 2MB stack.  It would
	probably be good to do a pthread_attr_getstacksize() to verify that
	it's 2MB, and if linuxthreads had a pthread_attr_setstacksize(), we
	could remove these limits.

2001-04-25 12:49  richardb

	* examples/Makefile.am, test/Makefile.am, test/mp3.c,
	test/xmmstest.c: Remove #include <gnome.h> from some tests which
	don't actually need it, and make the other tests and the autoplug
	example only compile if gnome headers are present.

2001-04-24 22:28  omegahacker

	* gst/gstbuffer.c: I will successfully compile code before I check
	it in.	I will successfully compile code before I check it in.	I
	will successfully compile code before I check it in.  I will
	successfully compile code before I check it in.  I will
	successfully compile code before I check it in.  I will
	successfully compile code before I check it in.  I will
	successfully compile code before I check it in.  I will
	successfully compile code before I check it in.  I will
	successfully compile code before I check it in.  I will
	successfully compile code before I check it in.

2001-04-24 20:20  omegahacker

	* gst/: gstbuffer.c, gstbuffer.h: - commented out remainder of Meta
	stuff - enhanced mem_chunk allocation to round up to nearest 32
	bytes	 this helps ensure that GstBuffers are more likely to be on
	cache-lines - added free() and copy() function pointers to
	GstBuffer - added code in _destroy and _copy to use above routines
	if !NULL - fixed up _copy code to suck less

2001-04-24 20:04  omegahacker

	* plugins/: avi/wincodec/gstwinenc.c, filters/median/median.c,
	filters/smooth/smooth.c, jpeg/gstjpegenc.c: Commented out most of
	the remaining bits of Meta stuff

2001-04-24 00:16  omegahacker

	* autogen.sh, gst/elements/gstfakesink.c, plugins/Makefile.am,
	plugins/arts/gst_artsio_impl.cc, plugins/oss/gstosssrc.c:
	Collection of minor changes:
	
	 * autogen.sh - remove config.cache before running ./configure
	 * gst/elements/gstfakesink.c - print out the size of the buffer,
	too
	 * plugins/Makefile.am - removed a spare trailing backslash
	 * plugins/arts/gst_artsio_impl.cc - change the scale back to 0.5
	 * plugins/oss/gstosssrc.c - change name slightly to match osssink

2001-04-23 23:04  wtay

	* plugins/aasink/: aasink.c, aasink.h: Final fixes to the aasink

2001-04-23 16:16  omegahacker

	* test/dvshow.c: updated dvshow to use dv1394src instead of
	gst1394src

2001-04-23 16:16  omegahacker

	* plugins/1394/: Makefile.am, dv1394src.c, dv1394src.h, gst1394.c,
	gst1394.h: renamed 1394src to dv1394src, set up to handle *1394* in
	1394 dir

2001-04-23 00:28  wtay

	* configure.in: Added a check for aalib

2001-04-23 00:18  wtay

	* plugins/: Makefile.am, aasink/.cvsignore, aasink/Makefile.am,
	aasink/aasink.c, aasink/aasink.h, mp3decode/mpg123/Makefile.am,
	xvideosink/xvideosink.c, xvideosink/xvideosink.h: Some small mpg123
	Makefile changes.  Added an aasink, draw graphics with aalib :-)

2001-04-22 17:34  wtay

	* plugins/: avi/wincodec/gstwindec.c, avi/wincodec/gstwindec.h,
	dv/dvdec.c: Added bufferpools to windec.  updated dvdec to the new
	plugin version system.

2001-04-22 17:06  wtay

	* docs/gst/tmpl/gstdisksink.sgml: Added the disksink template

2001-04-22 17:05  wtay

	* test/.cvsignore: Updates

2001-04-22 17:04  wtay

	* test/dv2mp1.c: Added a non functional dv to mpeg1 encoder.

2001-04-22 17:04  wtay

	* docs/gst/gstreamer-docs.sgml, docs/gst/gstreamer-sections.txt,
	docs/gst/gstreamer.hierarchy, docs/gst/tmpl/gstbuffer.sgml,
	docs/gst/tmpl/gstidentity.sgml, docs/gst/tmpl/gstplugin.sgml,
	docs/gst/tmpl/gstprops.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/libs/Makefile.am, gst/gstcaps.h, gst/gstpad.h, gst/gstutils.c,
	gst/elements/gstdisksink.c, gst/elements/gstdisksink.h,
	gst/elements/gstdisksrc.c, plugins/alsa/alsasink.c,
	plugins/alsa/alsasrc.c, plugins/dv/dvdec.c, plugins/dv/dvdec.h,
	plugins/filters/colorspace/colorspace.c, test/Makefile.am,
	tests/padfactory.c: API docs updates.  Properly implemented the
	disksink.  Fixed a compile problem with alsa.  Added bufferpool
	handling to dvdec Some compiler warning fixes

2001-04-22 13:30  richardb

	* examples/plugins/example.c, gst/gstplugin.c, gst/gstplugin.h,
	gst/autoplug/gststaticautoplug.c,
	gst/autoplug/gststaticautoplugrender.c, gst/elements/gstelements.c,
	gst/types/gsttypes.c, plugins/1394/gst1394.c, plugins/alaw/alaw.c,
	plugins/alsa/alsasink.c, plugins/alsa/alsasrc.c,
	plugins/arts/gst_arts.c, plugins/artsd/artsdsink.c,
	plugins/au/gstparseau.c, plugins/audioscale/audioscale.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstaviencoder.c,
	plugins/avi/wincodec/gstwincodec.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/cdparanoia/cdparanoia.c,
	plugins/cobin/cobin.c, plugins/cobin/spindentity.c,
	plugins/dvdsrc/dvdsrc.c, plugins/effects/stereo/stereo.c,
	plugins/effects/volume/volume.c, plugins/esd/esdsink/esdsink.c,
	plugins/filters/adder/adder.c,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/median/median.c,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/smooth/smooth.c,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/filters/volenv/volenv.c, plugins/flx/flx_decoder.c,
	plugins/icecast/icecastsend/icecastsend.c, plugins/jpeg/gstjpeg.c,
	plugins/mp3decode/mad/gstmad.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c, plugins/mp3decode/xa/gstxa.c,
	plugins/mp3decode/xing/gstxing.c, plugins/mp3encode/lame/gstlame.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/mp2videoparse.c, plugins/mulaw/mulaw.c,
	plugins/oss/gstossaudio.c, plugins/rtjpeg/rtjpeg.c,
	plugins/rtp/rtpsend/rtpsend.c, plugins/vcdsrc/vcdsrc.c,
	plugins/videoscale/videoscale.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c, plugins/vorbis/vorbis.c,
	plugins/wav/gstparsewav.c, plugins/xmms/gstxmms.c,
	plugins/xmms/gstxmmseffect.c, plugins/xvideosink/xvideosink.c:
	Merged from BRANCH-PLUGINVER1

2001-04-22 13:06  richardb

	* plugins/mpeg2/mpeg2enc/gstmpeg2enc.c: Fix bad merge with head.

2001-04-22 11:16  richardb

	* configure.in, examples/autoplug/autoplug.c, gst/gstbuffer.c,
	gst/gstbuffer.h, gst/gstcaps.h, gst/gstprops.h,
	gst/autoplug/gststaticautoplugrender.c, libs/putbits/gstputbits.c,
	plugins/Makefile.am, plugins/dv/Makefile.am, plugins/dv/NOTES,
	plugins/dv/dvdec.c, plugins/dv/dvdec.h,
	plugins/filters/colorspace/colorspace.c, plugins/jpeg/gstjpegdec.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c, plugins/oss/gstosssink.c,
	plugins/videoscale/videoscale.c, test/Makefile.am, test/dvshow.c,
	test/mp2tomp1.c, test/video2mp1.c: Merged from trunk

2001-04-22 05:38  omegahacker

	* gst/: gstbuffer.c, gstbuffer.h, gstcaps.h: fixes for gstbuffer,
	and removed ## from gstcaps.h that was causing all that warning
	noise

2001-04-22 02:41  omegahacker

	* gst/gstbuffer.c: completed gst_buffer_copy, added API comments

2001-04-22 02:40  omegahacker

	* test/: Makefile.am, dvshow.c: added test program for dv decoder

2001-04-22 02:32  omegahacker

	* gst/gstprops.h: added GST_STR_FOURCC, which takes strings like
	"YUY2" instead of 'Y','U','Y','2'.  better, I think <g>

2001-04-22 02:30  wtay

	* configure.in: Add -lm and the glib libs too for the dv_init check

2001-04-22 02:30  omegahacker

	* gst/: gstbuffer.c, gstbuffer.h: Added gst_buffer_copy().  It's
	not complete, it should copy more stuff like flags and such. 
	FIXME.

2001-04-22 02:28  omegahacker

	* plugins/Makefile.am: fixed caps error in path for dv

2001-04-22 00:48  omegahacker

	* configure.in, plugins/Makefile.am, plugins/dv/Makefile.am,
	plugins/dv/NOTES, plugins/dv/dvdec.c, plugins/dv/dvdec.h: added
	initial DV (smpte314m) decoder plugin

2001-04-21 18:45  wtay

	* examples/autoplug/autoplug.c,
	gst/autoplug/gststaticautoplugrender.c, libs/putbits/gstputbits.c,
	plugins/filters/colorspace/colorspace.c, plugins/jpeg/gstjpegdec.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c, plugins/oss/gstosssink.c,
	plugins/videoscale/videoscale.c, test/Makefile.am, test/mp2tomp1.c,
	test/video2mp1.c: Fixed a few plugins so that mpeg1 encoding sorta
	works.	Added an mpeg1 encoder example, it uses the autoplugger to
	convert the stream to audio/video, which is then fed to the
	encoders.

2001-04-21 13:43  richardb

	* gst/gstplugin.c, gst/gstplugin.h, plugins/1394/gst1394.c,
	plugins/alaw/alaw.c, plugins/alsa/alsasink.c,
	plugins/alsa/alsasrc.c, plugins/arts/gst_arts.c,
	plugins/artsd/artsdsink.c, plugins/au/gstparseau.c,
	plugins/audioscale/audioscale.c, plugins/avi/gstavidecoder.c,
	plugins/avi/gstaviencoder.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/cdparanoia/cdparanoia.c,
	plugins/cobin/cobin.c, plugins/cobin/spindentity.c,
	plugins/dvdsrc/dvdsrc.c, plugins/effects/stereo/stereo.c,
	plugins/effects/volume/volume.c, plugins/esd/esdsink/esdsink.c,
	plugins/filters/adder/adder.c,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/median/median.c,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/smooth/smooth.c,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/filters/volenv/volenv.c, plugins/flx/flx_decoder.c,
	plugins/icecast/icecastsend/icecastsend.c, plugins/jpeg/gstjpeg.c,
	plugins/mp3decode/mad/gstmad.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c, plugins/mp3decode/xa/gstxa.c,
	plugins/mp3decode/xing/gstxing.c, plugins/mp3encode/lame/gstlame.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/mp2videoparse.c, plugins/mulaw/mulaw.c,
	plugins/oss/gstossaudio.c, plugins/rtjpeg/rtjpeg.c,
	plugins/rtp/rtpsend/rtpsend.c, plugins/vcdsrc/vcdsrc.c,
	plugins/videoscale/videoscale.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/spectrum/gstspectrum.c,
	examples/plugins/example.c, gst/autoplug/gststaticautoplug.c,
	gst/autoplug/gststaticautoplugrender.c, gst/elements/gstelements.c,
	gst/types/gsttypes.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c, plugins/vorbis/vorbis.c,
	plugins/wav/gstparsewav.c, plugins/xmms/gstxmms.c,
	plugins/xmms/gstxmmseffect.c, plugins/xvideosink/xvideosink.c: Use
	plugin descriptions, which start with the major and minor version
	numbers, instead of relying on each plugin to call gst_plugin_new
	appropriately, and check the return value, and tidy up if there's a
	failure.  This seems to work fine, and factors out some code common
	to all plugins.

2001-04-21 10:30  richardb

	* examples/plugins/example.c, gst/gstplugin.c, gst/gstplugin.h,
	gst/autoplug/gststaticautoplug.c,
	gst/autoplug/gststaticautoplugrender.c, gst/elements/gstelements.c,
	gst/types/gsttypes.c, plugins/1394/gst1394.c, plugins/alaw/alaw.c,
	plugins/alsa/alsasink.c, plugins/alsa/alsasrc.c,
	plugins/arts/gst_arts.c, plugins/artsd/artsdsink.c,
	plugins/au/gstparseau.c, plugins/audioscale/audioscale.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstaviencoder.c,
	plugins/avi/wincodec/gstwincodec.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/cdparanoia/cdparanoia.c,
	plugins/cobin/cobin.c, plugins/cobin/spindentity.c,
	plugins/dvdsrc/dvdsrc.c, plugins/effects/stereo/stereo.c,
	plugins/effects/volume/volume.c, plugins/esd/esdsink/esdsink.c,
	plugins/filters/adder/adder.c,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/median/median.c,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/smooth/smooth.c,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/filters/volenv/volenv.c, plugins/flx/flx_decoder.c,
	plugins/icecast/icecastsend/icecastsend.c, plugins/jpeg/gstjpeg.c,
	plugins/mp3decode/mad/gstmad.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c, plugins/mp3decode/xa/gstxa.c,
	plugins/mp3decode/xing/gstxing.c, plugins/mp3encode/lame/gstlame.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/mp2videoparse.c, plugins/mulaw/mulaw.c,
	plugins/oss/gstossaudio.c, plugins/rtjpeg/rtjpeg.c,
	plugins/rtp/rtpsend/rtpsend.c, plugins/vcdsrc/vcdsrc.c,
	plugins/videoscale/videoscale.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c, plugins/vorbis/vorbis.c,
	plugins/wav/gstparsewav.c, plugins/xmms/gstxmms.c,
	plugins/xvideosink/xvideosink.c: Added first attempt at plugin
	versioning.

2001-04-21 00:20  wtay

	* plugins/filters/colorspace/colorspace.c: Added more verbose
	output for debugging purposes.

2001-04-20 23:50  wtay

	* plugins/xvideosink/: gstximage.c, gstxvimage.c, xvideosink.c,
	xvideosink.h: Added proper locking around the bufferpool and the X
	connection

2001-04-20 22:41  wtay

	* plugins/mp3decode/mad/gstmad.c: Removed a g_print statement

2001-04-20 22:40  wtay

	* plugins/mp3decode/mad/: gstmad.c, gstmad.h: Added Mad didn't take
	the number of channels into account.  Added propper TIMESTAMPS to
	output buffers.

2001-04-20 21:36  wtay

	* plugins/oss/gstosssink.c: Added a sync when the device is opened
	so that the caps negotiated parmams are set.

2001-04-20 20:21  wtay

	* gst/elements/: gstidentity.c, gstidentity.h: Added caps proxying
	and bufferpool passing to identity so that -launch disksrc ! mad !
	identity ! osssink works.

2001-04-20 15:42  richardb

	* plugins/oss/gstosssink.c: #ifdef out bit about AFMT_AC3, since
	this isn't defined by the header files for older linux kernels
	(2.0.36) (and its just INFO code, anyway)

2001-04-20 13:04  thomasvs

	* gst/elements/: Makefile.am, gstelements.c: update to take new
	gstdisksink element into account

2001-04-20 12:56  richardb

	* gst/Makefile.am.future: Update the alternative Makefile.am for
	gst/, which depends on automake
	>1.4d

2001-04-20 12:14  thomasvs

	* gst/elements/: gstdisksink.c, gstdisksink.h: * first stab at a
	disk sink element * no optimization, is it necessary ? * basic
	error checking * seems to work; you can copy files by typing  
	gstreamer-launch disksrc location=test.in ! disksink
	location=test.out * decode of mp3 to raw pcm also tested

2001-04-20 00:47  omegahacker

	* plugins/arts/: .cvsignore, Makefile.am, gst_arts.c, gst_arts.h,
	gst_artsio.cc, gst_artsio.h, gst_artsio.idl, gst_artsio.mcopclass,
	gst_artsio.mcoptype, gst_artsio_impl.cc: updated to a mostly
	working aRts wrapper plugin, just caps issues left

2001-04-19 23:25  wtay

	* docs/gst/gstreamer.hierarchy, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstcpu.sgml, docs/gst/tmpl/gsthttpsrc.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstparse.sgml,
	docs/gst/tmpl/gstpipeline.sgml, docs/gst/tmpl/gstplugin.sgml,
	docs/gst/tmpl/gstprops.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	gst/gstpad.c: More API docs updates

2001-04-19 23:03  omegahacker

	* plugins/arts/gst_artsio_impl.cc: minor updates

2001-04-19 21:42  omegahacker

	* configure.in, plugins/Makefile.am, plugins/1394/.cvsignore,
	plugins/1394/Makefile.am, plugins/1394/gst1394.c,
	plugins/1394/gst1394.h: First pass at 1394 source.  Arguments need
	to be added, etc.  But it works.

2001-04-19 17:40  omegahacker

	* plugins/arts/gst_arts.c: updated to latest padtemplate code

2001-04-19 10:27  thomasvs

	* plugins/filters/adder/adder.c: * a little cleanup

2001-04-19 01:23  omegahacker

	* configure.in, plugins/Makefile.am: better (not complete, afaict)
	checking for arts

2001-04-19 00:25  omegahacker

	* plugins/arts/: Makefile.am, gst_arts.c, gst_arts.h,
	gst_artsio.cc, gst_artsio.h, gst_artsio.idl, gst_artsio.mcopclass,
	gst_artsio.mcoptype, gst_artsio_impl.cc: first pass at a gstreamer
	arts plugin doesn't compile yet

2001-04-18 23:00  wtay

	* plugins/xvideosink/xvideosink.c: Removed stupid g_print
	statements.

2001-04-18 22:59  wtay

	* plugins/: mpeg2/mpeg2dec/gstmpeg2dec.c, xvideosink/xvideosink.c:
	Fixed a stupid bug in the mpeg2dec bufferpool handling.  Make an
	XvImage and XImage pool in xvideosink.	Together these changes give
	an 80% speedup on mpeg2 playback (rough estimate)

2001-04-18 21:16  wtay

	* docs/gst/tmpl/: gstbin.sgml, gstbuffer.sgml, gstbufferpool.sgml,
	gstcaps.sgml, gstreamer-unused.sgml: Added more API docs to
	Autoplug, Buffer, Bin, BufferPool.  Fixed some compile problems
	with videosink

2001-04-18 17:08  thomasvs

	* examples/mixer/mixer.c: * mixer now works with variable inputs *
	mixer creates custom volume envelopes allowing each song to play
	alone	      and end with a mix of all of them, undistorted

2001-04-18 15:50  thomasvs

	* plugins/filters/volenv/filter.func: made errors more descriptive

2001-04-18 15:04  thomasvs

	* examples/mixer/mixer.c: * cleaned up some code and integrated
	with new adder (mixer now works with   different types of files)

2001-04-18 15:03  thomasvs

	* plugins/filters/adder/: adder.c, adder.h: changed adder to work
	with variable length input data buffers

2001-04-17 22:17  thomasvs

	* examples/mixer/: mixer.c, mixer.h: changed mixer to work by
	autoplugging the input channels (not very useful yet, since the
	input buffers to volenv have different sizes)

2001-04-17 22:14  wtay

	* configure.in, docs/gst/gstreamer-sections.txt,
	docs/gst/gstreamer.hierarchy, docs/gst/tmpl/gst.sgml,
	docs/gst/tmpl/gstautoplug.sgml, docs/gst/tmpl/gstbin.sgml,
	docs/gst/tmpl/gstbuffer.sgml, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstfakesink.sgml, docs/gst/tmpl/gsthttpsrc.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstprops.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, gst/gstcaps.c,
	gst/gstobject.c, gst/gstpad.c, testsuite/capsnego/capsnego.c,
	testsuite/capsnego/converter.c, testsuite/capsnego/converter2.c,
	testsuite/capsnego/enum.c: The first wave of docs updates Added a
	little more comments about the API usage in the api docs.  Some
	fixes for the capsnego testsuite.

2001-04-17 22:03  wtay

	* tests/: Makefile.am, autoplug3.c, autoplug4.c: Autoplug3 shows an
	example of an autoplugged mp3 player.  Autoplug4 shows various
	static autoplugger examples.

2001-04-17 18:48  thomasvs

	* examples/mixer/mixer.h: header for mixer.c, containing
	input_pipe_t

2001-04-17 18:47  thomasvs

	* examples/mixer/mixer.c: added a struct to set up input channels

2001-04-17 16:32  thomasvs

	* plugins/filters/volenv/: filter.func, volenv.c: * fixed problem
	with starting rise calculation * cleaned up some debug info *
	started wondering if it really is a good idea to #include the
	actual	 filter now that's it's grown so large, but decided it
	wasn't worth the   effort now anyway

2001-04-17 14:36  thomasvs

	* configure.in: added mixer example and adder plugin to
	configure.in

2001-04-17 06:24  omegahacker

	* gst/: Makefile.am, autoplug/Makefile.am, elements/Makefile.am,
	types/Makefile.am: finished change to GST_ macros

2001-04-17 03:19  omegahacker

	* configure.in, gst/.cvsignore, gst/Makefile.am, gst/gst.h,
	gst/gstversion.h.in: added gstversion.h

2001-04-17 02:32  omegahacker

	* gstreamer.pc.in: file gstreamer.pc.in was initially added on
	branch BRANCH-INCSCHED1.

2001-04-17 02:32  omegahacker

	* gstreamer.pc.in: added pkg-config file

2001-04-17 00:17  omegahacker

	* gst/autoplug/: Makefile.am, gststaticautoplug.c,
	gststaticautoplug.h, gststaticautoplugrender.c,
	gststaticautoplugrender.h: brought in autoplug dir from HEAD after
	screwed up merge

2001-04-17 00:17  wtay

	* plugins/: filters/colorspace/colorspace.c,
	filters/colorspace/colorspace.h, mpeg2/mpeg2dec/gstmpeg2dec.c,
	mpeg2/mpeg2dec/gstmpeg2dec.h, xvideosink/gstximage.h,
	xvideosink/gstxvimage.h, xvideosink/xvideosink.c,
	xvideosink/xvideosink.h: Added bufferpools to mpeg2dec and
	xvideosink.  Modified colorspace to draw straight into a bufferpool
	buffer when possible.

2001-04-16 22:48  wtay

	* tests/: Makefile.am, padfactory.c: Updated the padfactory test
	code.

2001-04-16 22:45  wtay

	* gst/: gstbuffer.h, gstcaps.c, gstcaps.h, gstpad.c, gstpad.h,
	gstqueue.c: Added 1337 macros to create padtemplates and
	capstemplates.	Added some code for bufferpools

2001-04-16 22:43  omegahacker

	* AUTHORS, Makefile.am, REQUIREMENTS, acconfig.h, configure.in,
	gstreamer-config.1, gstreamer-config.in, gstreamer.m4,
	gstreamer.spec.in, components/bonobo-gstmediaplay/Makefile.am,
	components/bonobo-gstmediaplay/bonobo-gstmediaplay.c,
	debian/.cvsignore, debian/Makefile.am, debian/README.Debian,
	debian/changelog, debian/control, debian/copyright,
	debian/gsteditor.files, debian/gsteditor.manpages,
	debian/gsteditor.menu, debian/gstmediaplay.files,
	debian/gstmediaplay.manpages, debian/gstmediaplay.menu,
	debian/gstreamer-alsa.files, debian/gstreamer-cdparanoia.files,
	debian/gstreamer-common.files, debian/gstreamer-doc.files,
	debian/gstreamer-elements.files, debian/gstreamer-esd.files,
	debian/gstreamer-lame.files, debian/gstreamer-mpeg2dec.files,
	debian/gstreamer-mpg123.files,
	debian/gstreamer-plugin-template.postinst,
	debian/gstreamer-plugin-template.prerm,
	debian/gstreamer-runtime.files, debian/gstreamer-runtime.manpages,
	debian/gstreamer-runtime.postinst, debian/gstreamer-tools.files,
	debian/gstreamer-tools.manpages, debian/gstreamer-vorbis.files,
	debian/libgst-dev.files, debian/libgst-dev.manpages,
	debian/libgst0.files, debian/libgst0.postinst,
	debian/libgsteditor-dev.files, debian/libgsteditor0.files,
	debian/libgsteditor0.postinst, debian/libgstmediaplay-dev.files,
	debian/libgstmediaplay0.files, debian/libgstmediaplay0.postinst,
	debian/rules, docs/Makefile.am, docs/fwg/Makefile.am,
	docs/fwg/concepts.sgml, docs/fwg/firstplugin.sgml,
	docs/fwg/gst-plugin-writers-guide.sgml, docs/fwg/testapp.sgml,
	docs/fwg/titlepage.sgml, docs/fwg/typesnprops.sgml,
	docs/gst/Makefile.am, docs/gst/gstreamer-docs.sgml,
	docs/gst/gstreamer-sections.txt, docs/gst/gstreamer.hierarchy,
	docs/gst/gstreamer.types.in, docs/gst/tmpl/audioraw.sgml,
	docs/gst/tmpl/gstarch.sgml, docs/gst/tmpl/gstasyncdisksrc.sgml,
	docs/gst/tmpl/gstaudiosink.sgml, docs/gst/tmpl/gstaudiosrc.sgml,
	docs/gst/tmpl/gstautoplug.sgml, docs/gst/tmpl/gstbuffer.sgml,
	docs/gst/tmpl/gstcaps.sgml, docs/gst/tmpl/gstcpu.sgml,
	docs/gst/tmpl/gstdisksrc.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstmultidisksrc.sgml, docs/gst/tmpl/gstobject.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstpipeline.sgml,
	docs/gst/tmpl/gstplugin.sgml, docs/gst/tmpl/gstprops.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gstsinesrc.sgml,
	docs/gst/tmpl/gststaticautoplug.sgml,
	docs/gst/tmpl/gststaticautoplugrender.sgml,
	docs/gst/tmpl/gstutils.sgml, docs/gst/tmpl/videoraw.sgml,
	docs/libs/.cvsignore, docs/manual/Makefile.am,
	docs/manual/bins.sgml, docs/manual/debugging.sgml,
	docs/manual/dynamic.sgml, docs/manual/gstreamer-manual.sgml,
	docs/manual/helloworld.sgml, docs/manual/helloworld2.sgml,
	docs/manual/pads.sgml, docs/manual/plugins.sgml,
	docs/manual/queues.sgml, docs/manual/quotes.sgml,
	docs/manual/threads.sgml, docs/manual/typedetection.sgml,
	docs/manual/xml.sgml, docs/plugins/Makefile.am,
	docs/plugins/gstdoc-scanobj, docs/plugins/tmpl/ac3parse.sgml,
	docs/plugins/tmpl/audioscale.sgml,
	docs/plugins/tmpl/gstaviencoder.sgml,
	docs/plugins/tmpl/gstmpeg2enc.sgml,
	docs/plugins/tmpl/gstmpeg2play.sgml,
	docs/plugins/tmpl/gstmpeg_play.sgml,
	docs/plugins/tmpl/gstreamer-plugins-unused.sgml,
	docs/plugins/tmpl/gstspectrum.sgml,
	docs/plugins/tmpl/gstv4lsrc.sgml, docs/plugins/tmpl/gstwindec.sgml,
	docs/plugins/tmpl/gstwinenc.sgml, docs/plugins/tmpl/median.sgml,
	docs/plugins/tmpl/mp3parse.sgml, docs/plugins/tmpl/mpeg1parse.sgml,
	docs/plugins/tmpl/mpeg2parse.sgml,
	docs/plugins/tmpl/mpeg2subt.sgml, docs/plugins/tmpl/smooth.sgml,
	docs/plugins/tmpl/smoothwave.sgml, docs/plugins/tmpl/stereo.sgml,
	docs/plugins/tmpl/synaesthesia.sgml,
	docs/plugins/tmpl/system_encode.sgml,
	docs/plugins/tmpl/videoscale.sgml,
	docs/plugins/tmpl/videosink.sgml, docs/plugins/tmpl/volume.sgml,
	docs/plugins/tmpl/vumeter.sgml, docs/random/NOTES-0.1.1,
	docs/random/caps.dia, docs/random/hierarchy,
	docs/random/plugins.dia, docs/random/omega/eos,
	docs/random/omega/eos.old, docs/random/wtay/autoplug2,
	docs/random/wtay/caps-negociation, docs/random/wtay/capsnego-cases,
	editor/Makefile.am, editor/gsteditor.1, editor/gsteditor.h,
	editor/gsteditorproperty.c, examples/Makefile.am,
	examples/autoplug/.cvsignore, examples/autoplug/autoplug.c,
	examples/helloworld/helloworld.c,
	examples/helloworld2/helloworld2.c, examples/launch/mp3play,
	examples/plugins/example.c, examples/plugins/example.h,
	examples/queue/queue.c, examples/queue2/queue2.c,
	examples/queue3/queue3.c, examples/queue4/queue4.c,
	examples/thread/thread.c, examples/typefind/.cvsignore,
	examples/xml/createxml.c, examples/xml/runxml.c, gst/Makefile.am,
	gst/Makefile.am.future, gst/cothreads.c, gst/gst.c, gst/gst.h,
	gst/gstarch.h, gst/gstautoplug.c, gst/gstautoplug.h, gst/gstbin.c,
	gst/gstbuffer.c, gst/gstcaps.c, gst/gstcaps.h, gst/gstcpu.c,
	gst/gstcpu.h, gst/gstelement.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstinfo.c, gst/gstinfo.h,
	gst/gstobject.c, gst/gstpad.c, gst/gstpad.h, gst/gstparse.c,
	gst/gstpipeline.c, gst/gstpipeline.h, gst/gstplugin.c,
	gst/gstplugin.h, gst/gstprops.c, gst/gstprops.h,
	gst/gstpropsprivate.h, gst/gstqueue.c, gst/gstscheduler.c,
	gst/gstsparc.h, gst/gstthread.c, gst/gsttype.c, gst/gsttype.h,
	gst/gsttypefind.c, gst/gstutils.c, gst/gstutils.h,
	gst/elements/Makefile.am, gst/elements/gstaudiosink.c,
	gst/elements/gstaudiosink.h, gst/elements/gstaudiosrc.c,
	gst/elements/gstaudiosrc.h, gst/elements/gstdisksrc.c,
	gst/elements/gstelements.c, gst/elements/gstmultidisksrc.c,
	gst/elements/gstmultidisksrc.h, gst/elements/gstsinesrc.c,
	gst/elements/gstsinesrc.h, gst/elements/gsttee.c,
	gst/types/gsttypes.c, gstplay/Makefile.am, gstplay/callbacks.c,
	gstplay/gstmediaplay.1, gstplay/gstmediaplay.c,
	gstplay/gstmediaplay.glade, gstplay/gstplay.c, gstplay/gstplay.h,
	gstplay/gstplayprivate.h, include/Makefile.am, include/avifmt.h,
	include/default.h, include/registry.h, libs/Makefile.am,
	libs/getbits/gstgetbits.c, libs/getbits/gstgetbits.h,
	libs/getbits/gstgetbits_inl.h, libs/idct/gstidct.c,
	plugins/Makefile.am, plugins/alaw/Makefile.am,
	plugins/alaw/alaw-conversion.c, plugins/alaw/alaw-conversion.h,
	plugins/alaw/alaw-decode.c, plugins/alaw/alaw-decode.h,
	plugins/alaw/alaw-encode.c, plugins/alaw/alaw-encode.h,
	plugins/alaw/alaw.c, plugins/alaw/mulaw-conversion.c,
	plugins/alaw/mulaw-conversion.h, plugins/alsa/.cvsignore,
	plugins/alsa/Makefile.am, plugins/alsa/README, plugins/alsa/alsa.h,
	plugins/alsa/alsa_common.c, plugins/alsa/alsainfo.c,
	plugins/alsa/alsasink.c, plugins/alsa/alsasrc.c,
	plugins/artsd/.cvsignore, plugins/artsd/Makefile.am,
	plugins/artsd/REQUIREMENTS, plugins/artsd/artsdsink.c,
	plugins/artsd/artsdsink.h, plugins/au/gstparseau.c,
	plugins/au/gstparseau.h, plugins/audioscale/audioscale.c,
	plugins/audioscale/audioscale.h, plugins/avi/audiocodecs.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstavidecoder.h,
	plugins/avi/gstaviencoder.c, plugins/avi/gstaviencoder.h,
	plugins/avi/playcodecs.c, plugins/avi/wincodec/Makefile.am,
	plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwincodec.h,
	plugins/avi/wincodec/gstwindec.c, plugins/avi/wincodec/gstwindec.h,
	plugins/avi/wincodec/gstwinenc.c, plugins/avi/wincodec/gstwinenc.h,
	plugins/capture/v4l/grab.h, plugins/capture/v4l/gstv4lsrc.c,
	plugins/capture/v4l/gstv4lsrc.h, plugins/cdparanoia/cdparanoia.c,
	plugins/effects/stereo/stereo.c, plugins/effects/stereo/stereo.h,
	plugins/effects/volume/volume.c, plugins/effects/volume/volume.h,
	plugins/esd/esdsink/esdsink.c, plugins/filters/Makefile.am,
	plugins/filters/filterstamp.README, plugins/filters/filterstamp.sh,
	plugins/filters/colorspace/.cvsignore,
	plugins/filters/colorspace/Makefile.am,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/colorspace/colorspace.h,
	plugins/filters/colorspace/yuv2rgb.c,
	plugins/filters/colorspace/yuv2rgb.h,
	plugins/filters/colorspace/yuv2rgb_mmx16.s,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/median/median.c, plugins/filters/median/median.h,
	plugins/filters/passthrough/.cvsignore,
	plugins/filters/passthrough/Makefile.am,
	plugins/filters/passthrough/filter.func,
	plugins/filters/passthrough/passthrough.c,
	plugins/filters/passthrough/passthrough.h,
	plugins/filters/smooth/smooth.c, plugins/filters/smooth/smooth.h,
	plugins/filters/stereo2mono/Makefile.am,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/filters/stereo2mono/stereo2mono.h,
	plugins/filters/volenv/.cvsignore,
	plugins/filters/volenv/Makefile.am,
	plugins/filters/volenv/filter.func,
	plugins/filters/volenv/volenv.c, plugins/filters/volenv/volenv.h,
	plugins/flx/Makefile.am, plugins/flx/flx_color.c,
	plugins/flx/flx_color.h, plugins/flx/flx_decoder.c,
	plugins/flx/flx_decoder.h, plugins/flx/flx_fmt.h,
	plugins/icecast/icecastsend/icecastsend.c, plugins/jpeg/gstjpeg.c,
	plugins/jpeg/gstjpegdec.c, plugins/jpeg/gstjpegdec.h,
	plugins/jpeg/gstjpegenc.c, plugins/jpeg/gstjpegenc.h,
	plugins/mp3decode/Makefile.am, plugins/mp3decode/mad/.cvsignore,
	plugins/mp3decode/mad/Makefile.am, plugins/mp3decode/mad/gstmad.c,
	plugins/mp3decode/mad/gstmad.h,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/gstmpg123.h,
	plugins/mp3decode/mpg123/layer1.c,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mp3decode/mpg123/mpg123.c,
	plugins/mp3decode/mpg123/tabinit.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.h,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/recon_mmxe.s,
	plugins/mpeg1/mpeg_play/recon_sse.s,
	plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.h,
	plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/Makefile.am, plugins/mpeg2/ac3dec/ac3dec.c,
	plugins/mpeg2/ac3dec/ac3dec.h, plugins/mpeg2/ac3dec/cpu_accel.c,
	plugins/mpeg2/ac3dec/decode.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2dec/attributes.h,
	plugins/mpeg2/mpeg2dec/decode.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2dec/header.c, plugins/mpeg2/mpeg2dec/header.h,
	plugins/mpeg2/mpeg2dec/idct.c, plugins/mpeg2/mpeg2dec/idct.h,
	plugins/mpeg2/mpeg2dec/idct_mlib.c,
	plugins/mpeg2/mpeg2dec/idct_mmx.c,
	plugins/mpeg2/mpeg2dec/idct_mmx.h,
	plugins/mpeg2/mpeg2dec/mm_accel.h,
	plugins/mpeg2/mpeg2dec/motion_comp.c,
	plugins/mpeg2/mpeg2dec/motion_comp.h,
	plugins/mpeg2/mpeg2dec/motion_comp_mlib.c,
	plugins/mpeg2/mpeg2dec/motion_comp_mmx.c,
	plugins/mpeg2/mpeg2dec/motion_comp_sse.s,
	plugins/mpeg2/mpeg2dec/mpeg2.h,
	plugins/mpeg2/mpeg2dec/mpeg2_internal.h,
	plugins/mpeg2/mpeg2dec/output_video.h,
	plugins/mpeg2/mpeg2dec/slice.c, plugins/mpeg2/mpeg2dec/slice.h,
	plugins/mpeg2/mpeg2dec/stats.c, plugins/mpeg2/mpeg2dec/vlc.h,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.h,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/video/Makefile.am,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/video/gstmpeg2play.h, plugins/mpeg2/video/recon.c,
	plugins/mpeg2/video/recon_mmxe.s, plugins/mpeg2/video/recon_sse.s,
	plugins/mpeg2/videoparse/mp2videoparse.c,
	plugins/mulaw/Makefile.am, plugins/mulaw/mulaw-conversion.c,
	plugins/mulaw/mulaw-conversion.h, plugins/mulaw/mulaw-decode.c,
	plugins/mulaw/mulaw-decode.h, plugins/mulaw/mulaw-encode.c,
	plugins/mulaw/mulaw-encode.h, plugins/mulaw/mulaw.c,
	plugins/oss/.cvsignore, plugins/oss/Makefile.am,
	plugins/oss/gstossaudio.c, plugins/oss/gstosssink.c,
	plugins/oss/gstosssink.h, plugins/oss/gstosssrc.c,
	plugins/oss/gstosssrc.h, plugins/rtjpeg/RTjpeg.h,
	plugins/rtp/Makefile.am, plugins/rtp/rtpsend/.cvsignore,
	plugins/rtp/rtpsend/Makefile.am, plugins/rtp/rtpsend/rtp.c,
	plugins/rtp/rtpsend/rtp.h, plugins/rtp/rtpsend/rtpsend.c,
	plugins/rtp/rtpsend/rtpsend.h, plugins/videoscale/videoscale.c,
	plugins/videoscale/videoscale.h,
	plugins/visualization/smoothwave/smoothwave.h,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/spectrum/gstspectrum.h,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/synaesthesia/synaesthesia.h,
	plugins/visualization/vumeter/vumeter.c,
	plugins/visualization/vumeter/vumeter.h, plugins/vorbis/vorbis.c,
	plugins/vorbis/vorbisdec.c, plugins/wav/Makefile.am,
	plugins/wav/gstparsewav.c, plugins/wav/gstparsewav.h,
	plugins/wav/gstriff.c, plugins/xmms/.cvsignore,
	plugins/xmms/Makefile.am, plugins/xmms/effect.h,
	plugins/xmms/general.h, plugins/xmms/gstxmms.c,
	plugins/xmms/gstxmms.h, plugins/xmms/gstxmmseffect.c,
	plugins/xmms/gstxmmseffect.h, plugins/xmms/gstxmmsinput.c,
	plugins/xmms/gstxmmsinput.h, plugins/xmms/input.h,
	plugins/xmms/main.h, plugins/xmms/output.h,
	plugins/xmms/pluginenum.c, plugins/xmms/pluginenum.h,
	plugins/xmms/visualization.h, plugins/xmms/xmms.h,
	plugins/xvideosink/.cvsignore, plugins/xvideosink/Makefile.am,
	plugins/xvideosink/gstximage.c, plugins/xvideosink/gstximage.h,
	plugins/xvideosink/gstxvimage.c, plugins/xvideosink/gstxvimage.h,
	plugins/xvideosink/gstxwindow.c, plugins/xvideosink/gstxwindow.h,
	plugins/xvideosink/imagetest.c, plugins/xvideosink/xvideosink.c,
	plugins/xvideosink/xvideosink.h, test/.cvsignore, test/Makefile.am,
	test/a.c, test/ac3play.c, test/aviparse.c, test/m.c, test/mcut.c,
	test/mp1parse.c, test/mp1tomp1.c, test/mp2toavi.c, test/mp2tomp1.c,
	test/mp3.c, test/mp3play.c, test/mpeg2parse.c, test/mpeg2parse2.c,
	test/mpg123.c, test/p.c, test/qtest.c, test/r.c, test/record.c,
	test/s.c, test/spectrum.c, test/typefind.c, test/vidcapture.c,
	test/vidcapture2.c, test/videotest.c, test/videotest2.c, test/w.c,
	test/xmmstest.c, test/xml/readreg.c, tests/.cvsignore,
	tests/Makefile.am, tests/autoplug.c, tests/autoplug2.c,
	tests/autoplug3.c, tests/caps.c, tests/capsconnect.c,
	tests/paranoia.c, tests/props.c, tests/nego/.cvsignore,
	tests/nego/Makefile.am, tests/nego/nego1.c, testsuite/Makefile.am,
	testsuite/test_gst_init.c, testsuite/capsnego/.cvsignore,
	testsuite/capsnego/Makefile.am, testsuite/capsnego/capsnego.c,
	testsuite/capsnego/converter.c, testsuite/capsnego/converter2.c,
	testsuite/capsnego/enum.c, tools/Makefile.am, tools/README,
	tools/gstreamer-inspect.1, tools/gstreamer-inspect.c,
	tools/gstreamer-launch.1, tools/gstreamer-launch.c,
	tools/gstreamer-register.1: Merged HEAD from
	BRANCH-INCSCHED1-200104161 into BRANCH-INCSCHED1.

2001-04-16 22:33  wtay

	* test/: Makefile.am, mp3mad.c: Added an test program for the mad
	mp3 decoder.

2001-04-16 20:41  thomasvs

	* plugins/filters/adder/adder.c: commented some debug info to get a
	clean output

2001-04-16 20:38  thomasvs

	* examples/mixer/mixer.c: changed volume envelope; should do a nice
	transition between both songs now

2001-04-16 20:11  thomasvs

	* plugins/filters/volenv/volenv.c: removed example volume envelope
	registration plugin now accepts both a volume envelope (before
	start) or direct argument setting

2001-04-16 18:36  omegahacker

	* plugins/mp3decode/mad/gstmad.c: added code to deal with either
	0.12 or 0.13 of libmad

2001-04-16 17:45  wtay

	* gst/elements/: gstfakesink.c, gstfakesink.h: Added an arg to
	fakesink so that it doesn't printf.

2001-04-16 17:34  wtay

	* examples/: autoplug/autoplug.c, mixer/.cvsignore,
	mixer/Makefile.am, mixer/mixer.c: Added an example audio mixer.

2001-04-16 17:30  wtay

	* plugins/filters/: adder/.cvsignore, adder/Makefile.am,
	adder/adder.c, adder/adder.h, colorspace/colorspace.c: Added the
	audio mixer from Thomas Vander Stichele

2001-04-16 11:55  wtay

	* examples/autoplug/autoplug.c: Add the xvideosink to the example.

2001-04-16 01:59  wtay

	* plugins/filters/volenv/: filter.func, volenv.c: More volenv
	updates

2001-04-16 00:59  omegahacker

	* gst/gstbin.c, gst/gstscheduler.c, gst/gstthread.c,
	gst/elements/gstidentity.c, tests/threadlock.c: latest updates,
	things are very close to working

2001-04-16 00:44  wtay

	* plugins/filters/colorspace/: Makefile.am, colorspace.c,
	yuv2rgb.h: Don't compile the asm on non x86 machines.  Added a
	header file that will soon be part of the C fallback code..

2001-04-16 00:12  wtay

	* gst/gstinfo.c: Added missing category strings...

2001-04-16 00:05  wtay

	* plugins/esd/esdsink/esdsink.c: fixed the audio caps to the latest
	standard.

2001-04-15 23:54  omegahacker

	* tools/gstreamer-launch.c: save xml file of the launch cmdline

2001-04-15 23:54  omegahacker

	* gst/gstelement.h: added comment about missing flag

2001-04-15 23:53  omegahacker

	* gstreamer.spec.in: run gstreamer-register on postinstall

2001-04-15 23:52  omegahacker

	* gst/autoplug/: gststaticautoplug.c, gststaticautoplugrender.c:
	changed some INFOs to DEBUGs

2001-04-15 23:29  wtay

	* configure.in: Added the volenv/passthrough plugin Makefiles

2001-04-15 23:20  wtay

	* plugins/filters/: passthrough/.cvsignore,
	passthrough/passthrough.c, volenv/.cvsignore, volenv/Makefile.am,
	volenv/filter.func, volenv/volenv.c, volenv/volenv.h: Modified the
	passthrough filter with the new caps API Added the volume envelope
	filter

2001-04-15 16:30  wtay

	* plugins/filters/: filterstamp.README, filterstamp.sh,
	passthrough/Makefile.am, passthrough/filter.func,
	passthrough/passthrough.c, passthrough/passthrough.h: Added a
	little script to create an audio filter plugin template (provided
	by Thomas Vander Stichele)

2001-04-15 15:42  wtay

	* plugins/icecast/icecastsend/icecastsend.c: Updated the icecast
	plugin

2001-04-15 15:29  wtay

	* acconfig.h, configure.in, plugins/filters/Makefile.am,
	plugins/filters/colorspace/colorspace.c,
	plugins/mp3decode/Makefile.am, plugins/mp3decode/mad/.cvsignore,
	plugins/mp3decode/mad/Makefile.am, plugins/mp3decode/mad/gstmad.c,
	plugins/mp3decode/mad/gstmad.h, plugins/vorbis/vorbisdec.c,
	test/xmmstest.c: Added the mad mp3 decoder.  Added flushing to the
	vorbis decoder.  Updated configure.in to check for Hermes and
	libmad

2001-04-15 02:02  wtay

	* gst/gstprops.c: Fixed the gfloat error in the va_arg code.

2001-04-14 19:56  wtay

	* docs/gst/gstreamer-sections.txt, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstprops.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/videoraw.sgml,
	editor/gsteditorproperty.c, examples/plugins/example.c,
	gst/gstcaps.c, gst/gstcaps.h, gst/gstpad.c, gst/gstpad.h,
	gst/gstplugin.c, gst/gstprops.c, gst/gstprops.h,
	gst/elements/gsttee.c, gstplay/Makefile.am, gstplay/gstplay.c,
	plugins/alaw/alaw.c, plugins/alsa/alsa.h,
	plugins/alsa/alsa_common.c, plugins/alsa/alsasink.c,
	plugins/alsa/alsasrc.c, plugins/artsd/artsdsink.c,
	plugins/au/gstparseau.c, plugins/audioscale/audioscale.c,
	plugins/avi/audiocodecs.c, plugins/avi/gstavidecoder.c,
	plugins/avi/gstaviencoder.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwindec.c, plugins/capture/v4l/gstv4lsrc.c,
	plugins/cdparanoia/cdparanoia.c, plugins/esd/esdsink/esdsink.c,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/colorspace/yuv2rgb.c,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/flx/flx_decoder.c, plugins/jpeg/gstjpeg.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c,
	plugins/mp3encode/lame/gstlame.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/mp2videoparse.c, plugins/mulaw/mulaw.c,
	plugins/oss/gstosssink.c, plugins/rtp/rtpsend/rtpsend.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c, plugins/vorbis/vorbis.c,
	plugins/vorbis/vorbisdec.c, plugins/wav/gstriff.c,
	plugins/xmms/gstxmmseffect.c, plugins/xmms/gstxmmsinput.c,
	plugins/xvideosink/gstxvimage.c, plugins/xvideosink/xvideosink.c,
	tests/autoplug.c, tests/autoplug2.c, tests/autoplug3.c,
	tests/caps.c, tests/props.c, tools/gstreamer-inspect.c: A rather
	large patch:  - changed the API for the padtemplates:	   - remove
	the factories (array of pointers) for the padtemplates,       
	properties and caps. The static array was a nice idea but
	converting	  all the property values to a gpointer was not a
	good idea.	   float properties were not possible, and casting
	a gint to a pointer	    is not very portable. The new API just
	uses the _padtemplate_new,	   _caps_new and _props_new
	functions to create the templates.	   This has the added
	benefit that the API is now uniform for static	       and dynamic
	templates and that the code can be made cleaner.       - lots of
	cleanups in the way the capabilities are constructed (va_list)	   
	 - lots of updates for all the plugins (new API)   - docs updates
	(new API)   - removed the videoraw docs.

2001-04-12 19:11  wtay

	* components/bonobo-gstmediaplay/Makefile.am,
	components/bonobo-gstmediaplay/bonobo-gstmediaplay.c,
	docs/gst/Makefile.am, docs/gst/gstreamer-sections.txt,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	examples/helloworld/helloworld.c, gst/gstcaps.h, gst/gstinfo.h,
	gst/gstpad.c, gst/gstpad.h, gst/gstprops.c, gst/gstqueue.c,
	gst/autoplug/gststaticautoplugrender.c, gstplay/gstplay.c,
	gstplay/gstplayprivate.h, libs/idct/gstidct.c,
	plugins/artsd/Makefile.am, plugins/avi/gstavidecoder.c,
	plugins/avi/playcodecs.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwindec.c, plugins/filters/Makefile.am,
	plugins/filters/colorspace/Makefile.am,
	plugins/filters/colorspace/colorspace.c,
	plugins/filters/colorspace/colorspace.h,
	plugins/filters/colorspace/yuv2rgb_mmx16.s,
	plugins/filters/stereo2mono/stereo2mono.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg2/ac3dec/ac3dec.c,
	plugins/mpeg2/ac3dec/decode.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c, plugins/oss/gstosssink.c,
	plugins/xvideosink/gstxvimage.c, plugins/xvideosink/gstxwindow.c,
	plugins/xvideosink/gstxwindow.h, plugins/xvideosink/xvideosink.c,
	plugins/xvideosink/xvideosink.h, test/mpeg2parse2.c: Lots of
	updates to the plugins for caps negotiation.  Added YUY2 output to
	the win32 dlls.  Added a colorspace converter in gstplay

2001-04-10 20:46  wtay

	* docs/gst/: gstreamer-docs.sgml, gstreamer-sections.txt,
	tmpl/gstcaps.sgml, tmpl/gstprops.sgml, tmpl/gstreamer-unused.sgml:
	Fixed the doc build warnings

2001-04-09 20:56  mhowell

	* docs/random/matth/scheduling.txt: added incremental scheduling
	notes

2001-04-09 20:56  mhowell

	* docs/random/matth/scheduling.txt: file scheduling.txt was
	initially added on branch BRANCH-INCSCHED1.

2001-04-06 17:29  scavenger

	* configure.in, plugins/Makefile.am, plugins/alaw/Makefile.am,
	plugins/alaw/alaw-conversion.c, plugins/alaw/alaw-conversion.h,
	plugins/alaw/alaw-decode.c, plugins/alaw/alaw-decode.h,
	plugins/alaw/alaw-encode.c, plugins/alaw/alaw-encode.h,
	plugins/alaw/alaw.c, plugins/alaw/mulaw-conversion.c,
	plugins/alaw/mulaw-conversion.h: Added ALaw encoder and decoder

2001-04-06 15:20  scavenger

	* plugins/wav/Makefile.am: Makefile.am forgot to include gstriff.c

2001-04-03 17:25  scavenger

	* plugins/au/gstparseau.c: Updated parseau to use caps nego

2001-04-03 05:56  richardb

	* gst/Makefile.am.future: Add a proposed makefile to use in place
	of Makefile.am.  This depends on automake 1.4d or later, but is
	much neater, avoiding horrible hacks to pass special flags in.
	
	I put it here for safekeeping until automake 1.5 is released, at
	which point we can reasonably require it.

2001-04-03 05:53  richardb

	* configure.in, plugins/Makefile.am, plugins/artsd/.cvsignore,
	plugins/artsd/Makefile.am, plugins/artsd/REQUIREMENTS,
	plugins/artsd/artsdsink.c, plugins/artsd/artsdsink.h: Add artsdsink
	plugin.  Worked first time for me. :)

2001-04-03 05:52  richardb

	* plugins/alsa/Makefile.am: Remove weird characters from alsa
	Makefile.am  (Had some 240's there.  Uh?) Also, remove some
	unwanted CFLAGS which had been added.

2001-04-03 05:38  richardb

	* gst/gstplugin.c: Fix obscure segfault I just got: perhaps due to
	running with libxml 1.8.11 (prerelease version), but a worthwhile
	fix anyway.

2001-04-03 02:30  scavenger

	* plugins/mulaw/mulaw-decode.c: fixed bug passing outbuf size
	instead of in buf size to mulaw decode function

2001-04-03 02:18  scavenger

	* plugins/mulaw/mulaw-decode.c: typo mistaked src_template with
	sink_template

2001-04-03 02:01  wtay

	* plugins/mulaw/mulaw.c: Use capstemplates to create the
	padtemplates for the two elements in the mulaw plugin.

2001-04-03 01:46  wtay

	* plugins/xvideosink/xvideosink.c: Don't try to initialize Xv if it
	is not available.

2001-04-03 01:43  scavenger

	* plugins/mulaw/mulaw-decode.h: fixed typo in get_type

2001-04-03 01:38  scavenger

	* plugins/mulaw/: mulaw-decode.c, mulaw-encode.c, mulaw.c: moved
	details of mulawencode and mulawdecode to mulaw.c

2001-04-03 01:33  scavenger

	* plugins/mulaw/: mulaw-decode.c, mulaw-encode.c: removed a
	redundant caps=NULL statement

2001-04-03 01:30  scavenger

	* plugins/mulaw/: mulaw-decode.c, mulaw-encode.c: fixed stupid bug
	where srcpads were being created twice, second time around
	wrongly!!!!

2001-04-03 01:25  scavenger

	* plugins/mulaw/: Makefile.am, mulaw-conversion.c,
	mulaw-conversion.h, mulaw-decode.c, mulaw-decode.h, mulaw-encode.c,
	mulaw.c: added mulaw decoder

2001-04-02 21:03  wtay

	* plugins/filters/colorspace/: .cvsignore, Makefile.am,
	colorspace.c, colorspace.h: Added a non functional colorspace
	converter

2001-04-02 20:56  wtay

	* configure.in, docs/libs/.cvsignore,
	examples/helloworld/helloworld.c, gst/gstprops.c, gst/gstprops.h,
	gst/gstpropsprivate.h: Merged the float property patch from Steve
	Baker. This patch doesn't really work yet...

2001-04-02 19:29  wtay

	* plugins/mulaw/mulaw-encode.c: This is how I see the caps
	negotiation for the mulaw element.  In the sink negotiate pad it
	copies the caps and modifies it according to what it is going to
	ouput. It then tries to set the caps on the src pad, if that
	succeeds, negotiation succeeds, else it fails.

2001-04-02 18:54  scavenger

	* configure.in, plugins/Makefile.am, plugins/mulaw/Makefile.am,
	plugins/mulaw/mulaw-conversion.c, plugins/mulaw/mulaw-conversion.h,
	plugins/mulaw/mulaw-encode.c, plugins/mulaw/mulaw-encode.h: Start
	of the mulaw plugin...needs finishing off

2001-04-02 16:09  richardb

	* configure.in: Add configure support for detecting artsc: if this
	is found, its okay to build an artsdsink plugin.  Now, someone just
	needs to write an artsdsink.

2001-04-02 16:08  richardb

	* plugins/oss/gstosssink.c: Correct tiny typo.

2001-04-02 15:21  wtay

	* gst/gstcaps.c, gst/gstprops.c, gstplay/gstplay.c,
	plugins/Makefile.am, plugins/avi/audiocodecs.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstavidecoder.h,
	plugins/avi/gstaviencoder.h, plugins/avi/playcodecs.c,
	plugins/avi/wincodec/Makefile.am,
	plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwincodec.h,
	plugins/avi/wincodec/gstwindec.c, plugins/avi/wincodec/gstwindec.h,
	plugins/avi/wincodec/gstwinenc.c, plugins/avi/wincodec/gstwinenc.h,
	plugins/capture/v4l/gstv4lsrc.c, plugins/filters/median/median.c,
	plugins/filters/median/median.h, plugins/filters/smooth/smooth.c,
	plugins/filters/smooth/smooth.h, plugins/flx/flx_decoder.c,
	plugins/flx/flx_decoder.h, plugins/jpeg/gstjpeg.c,
	plugins/jpeg/gstjpegdec.c, plugins/jpeg/gstjpegdec.h,
	plugins/jpeg/gstjpegenc.c, plugins/jpeg/gstjpegenc.h,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.h,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.h,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/video/gstmpeg2play.h,
	plugins/videoscale/videoscale.c, plugins/videoscale/videoscale.h,
	plugins/xvideosink/Makefile.am, plugins/xvideosink/gstximage.c,
	plugins/xvideosink/gstximage.h, plugins/xvideosink/gstxvimage.c,
	plugins/xvideosink/gstxvimage.h, plugins/xvideosink/xvideosink.c,
	test/Makefile.am, test/mpeg2parse2.c, test/videotest2.c: A rather
	large update:  - a new videosink using plain X windows
	(xvideosink). It uses capsnego to    set up it's formats.   -
	gstplay uses the new xvideosink and a gtk_socket. The initial
	window	   size is set to 0x0 so you need to resize it before you
	see something.	 - got rid of the video metadata include file in
	favour of properties and     caps negotiation	- adjusted most
	plugins to not use the metadata.

2001-04-02 15:08  omegahacker

	* gst/gstinfo.c: added PID and cID to INFO lines when DEBUG is
	turned on

2001-04-01 15:09  wtay

	* gstplay/: callbacks.c, gstmediaplay.glade: Small change to load
	the .glade file from the current dir too when pressing the about
	menu item.

2001-04-01 15:01  wtay

	* gstplay/: gstmediaplay.glade, gstplay.c: This patch is now The
	Right Way(tm) to handle the stop button but at least it doesn't
	crash...

2001-04-01 14:51  wtay

	* gstplay/gstplay.c: Slightly modified the _stop handling so that
	gstmediaplay crashes less viontly. The real problem is that going
	to the NULL state does not clean up the scheduling structures I
	think..

2001-03-31 15:35  wtay

	* plugins/capture/v4l/gstv4lsrc.c: Make sure the endianness is
	correct when we agree to yuv formats in capsnego.

2001-03-31 15:22  wtay

	* plugins/capture/v4l/gstv4lsrc.c: Only agree to the caps
	negotiation if the format is supported by the driver.

2001-03-31 15:10  wtay

	* plugins/xvideosink/gstxvimage.c: Corrected a endianness bug in
	the format print code.

2001-03-31 14:47  wtay

	* plugins/capture/v4l/gstv4lsrc.c: Added a little debug info in the
	capsnego process.

2001-03-31 02:08  wtay

	* plugins/filters/stereo2mono/stereo2mono.c: Some cleanups.  Added
	the padtemplates to the elementfactory.

2001-03-31 01:56  scavenger

	* configure.in, plugins/filters/Makefile.am: Added stereo2mono
	plugin

2001-03-31 01:47  scavenger

	* plugins/filters/stereo2mono/: Makefile.am, stereo2mono.c,
	stereo2mono.h: stereo2mono plugin with caps negotiation code
	started and working

2001-03-31 01:13  wtay

	* tests/: caps.c, props.c: Adjust the test cases to the new FOURCC
	API.

2001-03-31 00:56  wtay

	* examples/helloworld/helloworld.c, gst/gstprops.h,
	plugins/avi/gstavidecoder.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/jpeg/gstjpeg.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/video/gstmpeg2play.c: Simplified the FOURCC API to
	the caps, add a GST_MAKE_FOURCC macro to create a fourcc.  Adjusted
	the plugins to use the new FOURCC API

2001-03-31 00:51  wtay

	* plugins/xvideosink/: gstximage.c, gstxvimage.c, gstxvimage.h,
	xvideosink.c: Check for Xv support before trying to get caps.

2001-03-30 21:10  wtay

	* docs/gst/tmpl/gstmultidisksrc.sgml, examples/autoplug/.cvsignore,
	examples/typefind/.cvsignore, plugins/xvideosink/.cvsignore: Small
	updates to the .cvsignore  files.

2001-03-30 21:08  wtay

	* acconfig.h, configure.in, plugins/Makefile.am,
	plugins/filters/Makefile.am, plugins/filters/ladspa/gstladspa.c,
	plugins/mp3decode/mpg123/mpg123.c, plugins/oss/gstosssink.c,
	plugins/rtjpeg/RTjpeg.h: Applied the FreeBSD patch from Orion with
	some minor modifications to the configure.in patch.

2001-03-30 20:52  wtay

	* gst/gstthread.c: This hopefully fixes a slight thread sync issue.

2001-03-30 01:06  omegahacker

	* AUTHORS, Makefile.am, configure.in, gstreamer.spec.in,
	gst/gstbin.c, gst/gstelement.c, gst/gstpad.c, gst/gstscheduler.c,
	gst/gstscheduler.h, gst/gstthread.c, tests/incsched.c,
	tests/threadlock.c, tools/gstreamer-launch.c: snapshot for matth to
	work with while I fly over to Europe....

2001-03-29 23:33  wtay

	* test/videotest2.c: Added a test program to test v4lsrc and
	xvideosink doing capsnego.

2001-03-29 23:31  wtay

	* configure.in, gst/gstcaps.c, gst/gstpad.c, gst/gstprops.c,
	gst/types/gsttypes.c, plugins/capture/v4l/grab.h,
	plugins/capture/v4l/gstv4lsrc.c, plugins/capture/v4l/gstv4lsrc.h,
	plugins/xvideosink/.cvsignore, plugins/xvideosink/Makefile.am,
	plugins/xvideosink/gstximage.c, plugins/xvideosink/gstximage.h,
	plugins/xvideosink/gstxvimage.c, plugins/xvideosink/gstxvimage.h,
	plugins/xvideosink/gstxwindow.c, plugins/xvideosink/gstxwindow.h,
	plugins/xvideosink/imagetest.c, plugins/xvideosink/xvideosink.c,
	plugins/xvideosink/xvideosink.h, test/Makefile.am: Added a plain X
	videosink, the videosink uses capsnego.  adjusted the v4lsrc so
	that it uses capsnego on the src pad Small fixed to capsnego and
	the properties/caps.

2001-03-29 18:27  richardb

	* docs/gst/: Makefile.am, gstreamer.types.in: Remove references to
	audiosink, audiosrc, and audioraw.  Documentation at least _starts_
	to get built, now.

2001-03-27 18:34  wtay

	* docs/gst/: gstreamer-sections.txt, tmpl/gstcaps.sgml,
	tmpl/gstprops.sgml, tmpl/gstreamer-unused.sgml: More docs updates

2001-03-27 18:33  wtay

	* plugins/wav/gstparsewav.c: Removed the oss dependency

2001-03-27 17:25  wtay

	* docs/gst/: gstreamer-docs.sgml, gstreamer-sections.txt,
	gstreamer.hierarchy, tmpl/audioraw.sgml, tmpl/gstaudiosink.sgml,
	tmpl/gstaudiosrc.sgml, tmpl/gstcaps.sgml, tmpl/gstprops.sgml,
	tmpl/gstreamer-unused.sgml: Removed the audiosink/src from the
	docs.  Removed the audioraw metadata file from the docs.

2001-03-26 12:12  richardb

	* plugins/mp3decode/Makefile.am: Fix makefile.am so that SUBDIRS is
	not defined both conditionally and unconditionally - broke some
	versions of automake.

2001-03-24 18:50  wtay

	* plugins/: alsa/alsa.h, alsa/alsa_common.c, alsa/alsasink.c,
	alsa/alsasrc.c, au/gstparseau.c, effects/stereo/stereo.c,
	effects/stereo/stereo.h, effects/volume/volume.c,
	effects/volume/volume.h, esd/esdsink/esdsink.c,
	visualization/smoothwave/smoothwave.h,
	visualization/spectrum/gstspectrum.c,
	visualization/spectrum/gstspectrum.h,
	visualization/synaesthesia/synaesthesia.c,
	visualization/synaesthesia/synaesthesia.h,
	visualization/vumeter/vumeter.c, visualization/vumeter/vumeter.h,
	wav/gstparsewav.c, wav/gstparsewav.h: Commented out the references
	to the old metadata handling in various plugins. They need to be
	converted to the new audio properties before they will work again. 
	esdsink and alsasrc/sink are seriously damaged now.. :(

2001-03-24 18:28  wtay

	* plugins/oss/gstosssink.c: Correctly set up the OSS format based
	on the caps.

2001-03-24 17:22  wtay

	* configure.in, examples/autoplug/autoplug.c,
	examples/helloworld/helloworld.c,
	examples/helloworld2/helloworld2.c, examples/launch/mp3play,
	examples/queue/queue.c, examples/queue2/queue2.c,
	examples/queue3/queue3.c, examples/queue4/queue4.c,
	examples/thread/thread.c, examples/xml/createxml.c,
	gst/Makefile.am, gst/gstcaps.c, gst/gstcaps.h, gst/gstprops.c,
	gst/gstprops.h, gst/gstpropsprivate.h, gst/elements/Makefile.am,
	gst/elements/gstaudiosink.c, gst/elements/gstaudiosink.h,
	gst/elements/gstaudiosrc.c, gst/elements/gstaudiosrc.h,
	gst/elements/gstelements.c, gst/elements/gstmultidisksrc.c,
	gst/elements/gstmultidisksrc.h, gst/elements/gstsinesrc.c,
	gst/elements/gstsinesrc.h, gstplay/gstplay.c, plugins/Makefile.am,
	plugins/au/gstparseau.c, plugins/au/gstparseau.h,
	plugins/audioscale/audioscale.c, plugins/audioscale/audioscale.h,
	plugins/avi/audiocodecs.c, plugins/avi/gstavidecoder.c,
	plugins/avi/gstavidecoder.h, plugins/avi/gstaviencoder.h,
	plugins/flx/flx_decoder.c, plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/gstmpg123.h,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.h,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3dec/ac3dec.h,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/oss/.cvsignore,
	plugins/oss/Makefile.am, plugins/oss/gstossaudio.c,
	plugins/oss/gstosssink.c, plugins/oss/gstosssink.h,
	plugins/oss/gstosssrc.c, plugins/oss/gstosssrc.h,
	plugins/vorbis/vorbis.c, plugins/vorbis/vorbisdec.c, test/a.c,
	test/ac3play.c, test/aviparse.c, test/m.c, test/mcut.c,
	test/mp1parse.c, test/mp1tomp1.c, test/mp2toavi.c, test/mp2tomp1.c,
	test/mp3.c, test/mp3play.c, test/mpeg2parse.c, test/mpg123.c,
	test/p.c, test/qtest.c, test/r.c, test/record.c, test/s.c,
	test/spectrum.c, test/typefind.c, test/vidcapture.c,
	test/vidcapture2.c, test/w.c, test/xmmstest.c, tests/autoplug.c,
	tests/autoplug3.c, tests/paranoia.c, tools/README,
	tools/gstreamer-inspect.c: Modified a lot of plugins to use the
	caps system.  Modified the caps of audio/raw to our agreed
	properties.  Added the multidisksrc plugin of Dominic Ludlam
	Renamed audiosink/src to osssink/src and updated all the examples
	using the old name. Moved oss specific plugins in an oss directory.
	removed the old audiosink from the elements/ dir.  removed
	audioraw.h metadata header files since we now use the properties. 
	There are still a few plugins that won't build because they include
	the old audioraw.h header file. This will be fixed soon.  Make sure
	the caps are set in the plugins as described by their padtemplates
	(this should solve problems with gstmediaplay with various media
	files).
	
	*please don't panic when some plugins won't build, just cd manually
	into the plugin dirs* This will be fixed soon.

2001-03-22 16:05  dlehn

	* debian/: Makefile.am, changelog, control, gsteditor.manpages,
	gstmediaplay.manpages, gstreamer-alsa.files,
	gstreamer-common.files, gstreamer-elements.files,
	gstreamer-mpeg2dec.files, gstreamer-runtime.manpages,
	gstreamer-tools.manpages, libgst-dev.manpages, rules: Debian
	updates: * add manpages * split off mpeg2dec and alsa packages *
	use latest doc build flags

2001-03-22 00:03  wtay

	* plugins/flx/flx_decoder.c: unref the header buffer too.

2001-03-22 00:00  wtay

	* docs/gst/tmpl/: gststaticautoplug.sgml,
	gststaticautoplugrender.sgml: Added the templates for the
	autoplugger docs

2001-03-21 23:59  wtay

	* configure.in, plugins/Makefile.am, plugins/flx/Makefile.am,
	plugins/flx/flx_color.c, plugins/flx/flx_color.h,
	plugins/flx/flx_decoder.c, plugins/flx/flx_decoder.h,
	plugins/flx/flx_fmt.h: Added the FLX decoder of Sepp Wijnands
	<mrrazz@garbage-coderz.net>

2001-03-21 21:43  wtay

	* docs/gst/gstreamer-docs.sgml, docs/gst/gstreamer-sections.txt,
	docs/gst/tmpl/gstarch.sgml, docs/gst/tmpl/gstautoplug.sgml,
	docs/gst/tmpl/gstcaps.sgml, docs/gst/tmpl/gstcpu.sgml,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstplugin.sgml, docs/gst/tmpl/gstprops.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gstsinesrc.sgml,
	docs/gst/tmpl/gstutils.sgml, gst/gstautoplug.c, gst/gstcaps.c,
	gst/gstpad.c, gst/gstpad.h, gst/gstplugin.c, gst/gstprops.c,
	gst/gstprops.h, gst/gstutils.c: API docs updates

2001-03-20 23:12  richardb

	* configure.in, docs/Makefile.am, docs/manual/typedetection.sgml,
	examples/plugins/example.c: Added --enable-plugin-docs configure
	option, to enable build of the plugin documentation (currently
	broken).  This defaults to off.  Changed --enable-docs-build to
	default to on, since all other documentation should build
	correctly.
	
	Also, correct typo in manual, and fix up a couple of things in
	example.c

2001-03-20 18:29  wtay

	* testsuite/capsnego/.cvsignore: Added the new enum testcase to
	.cvsignore

2001-03-20 18:29  wtay

	* gst/gst.c, gst/gstbuffer.c, gst/gstcaps.c, gst/gstcaps.h,
	gst/gstpad.c, gst/gstpad.h, gst/gstplugin.c, gst/gstprops.c,
	gst/gstprops.h, gst/gstqueue.c, testsuite/capsnego/Makefile.am,
	testsuite/capsnego/converter2.c, testsuite/capsnego/enum.c: More
	work on capsnego proxying. It should be OK now.  Added another
	testcase enum that shows various capsnego algorithms.  Warn about
	pads that try to set a capability incompatible with their
	padtemplate.  Implemented refcounting and copy_on_write for
	caps/props.

2001-03-18 16:17  wtay

	* gst/gstpad.c, gst/gstqueue.c,
	gst/autoplug/gststaticautoplugrender.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c, plugins/vorbis/vorbis.c,
	plugins/vorbis/vorbisdec.c, testsuite/capsnego/.cvsignore,
	testsuite/capsnego/Makefile.am, testsuite/capsnego/converter2.c:
	More work on capsnego, mostly proxying Added another testsuite for
	capsnego Added caps to vorbisdec, mp3parse, mp1videoparse Redid the
	queue proxy handling a bit.

2001-03-18 14:41  richardb

	* docs/fwg/gst-plugin-writers-guide.sgml: Another incremental piece
	of work on the PWG.

2001-03-18 06:24  richardb

	* docs/fwg/gst-plugin-writers-guide.sgml: Commit a final couple of
	modifications before going to bed.

2001-03-18 06:16  richardb

	* docs/fwg/: Makefile.am, firstplugin.sgml,
	gst-plugin-writers-guide.sgml: Some further modifications to the
	PWG.

2001-03-18 05:21  richardb

	* docs/fwg/gst-plugin-writers-guide.sgml: Added many more details
	about types.

2001-03-18 03:57  richardb

	* docs/fwg/: Makefile.am, concepts.sgml,
	gst-plugin-writers-guide.sgml, typesnprops.sgml: Various updates to
	PWG; mainly adding information about types and properties.  Removed
	concepts.sgml and typesnprops.sgml; merged into main file.  I was
	finding that having all the separate subfiles simply stopped me
	from finding what I wanted to edit.  Maybe I'll split it up again
	later, but this is much better for now.

2001-03-18 02:42  wtay

	* configure.in, docs/plugins/tmpl/gstreamer-plugins-unused.sgml,
	docs/random/wtay/capsnego-cases, examples/helloworld/helloworld.c,
	examples/queue/queue.c, examples/xml/runxml.c, gst/gstcaps.c,
	gst/gstcaps.h, gst/gstpad.c, gst/gstpad.h, gst/gstprops.c,
	gst/gstprops.h, gst/gstqueue.c, gst/elements/gstaudiosink.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3dec/ac3dec.h,
	tests/props.c, testsuite/capsnego/.cvsignore,
	testsuite/capsnego/Makefile.am, testsuite/capsnego/capsnego.c,
	testsuite/capsnego/converter.c: Reworked the capsnegotiation
	function audiosink now uses capsnego to set its parameters
	mpg123/ac3dec use capsnego instead of metadata Added the beginnings
	of a testsuite for capsnego.

2001-03-17 17:50  richardb

	* docs/manual/plugins.sgml: Update to note that plugins can also
	contain autopluggers.

2001-03-17 17:16  richardb

	* docs/fwg/: concepts.sgml, firstplugin.sgml,
	gst-plugin-writers-guide.sgml: Some miscellaneous small changes.

2001-03-17 03:15  omegahacker

	* docs/random/omega/: eos, eos.old: move eos to eos.old, to reflect
	its age and to aid ailing OS's like Windoze <g>

2001-03-16 01:06  dlehn

	* Makefile.am, gstreamer-config.1, editor/Makefile.am,
	editor/gsteditor.1, gstplay/Makefile.am, gstplay/gstmediaplay.1,
	tools/Makefile.am, tools/gstreamer-inspect.1,
	tools/gstreamer-launch.1, tools/gstreamer-register.1: Added man
	pages.

2001-03-16 00:49  scavenger

	* gst/gstthread.c: Fixed locking issue when PLAYING to READY

2001-03-15 20:08  wtay

	* docs/random/wtay/capsnego-cases: Added the first part of a uses
	case doc on caps nego

2001-03-14 21:56  omegahacker

	* configure.in: fixed issue with the xmlDocGetRootElement test and
	non-/usr/lib installs of libxml

2001-03-14 07:54  dlehn

	* gstreamer.m4: Use of system() in test programs needs an #include
	<stdlib.h>.

2001-03-14 06:46  dlehn

	* gstreamer.m4: Fix --with-gstreamer-prefix via s/glib/gstreamer/

2001-03-13 22:21  wtay

	* tools/gstreamer-inspect.c: Adjusted -inspect to the new GstCaps
	structure

2001-03-13 22:13  wtay

	* gst/gsttypefind.c: The typefind element now sets the caps on its
	sink pad when the type has been detected.

2001-03-13 20:26  wtay

	* gst/: gstcaps.c, gstpad.c: Small fixes to the caps compatibility
	check.	Small changes to the pad negotiation and proxy functions

2001-03-13 18:57  wtay

	* examples/autoplug/autoplug.c: Updated the autoplug example with
	the new autoplugger. there still is a scheduling issue though.

2001-03-13 18:45  wtay

	* configure.in: Applied the patch from hadess/ajmitch to add
	--disable-alsasink and --disable-esdsink (the latter one being
	untested) to configure.in

2001-03-13 02:20  omegahacker

	* gst/gstthread.c: fixed READY_TO_NULL bug

2001-03-13 01:44  scavenger

	* gst/: gstthread.c, gstthread.h: removed fine grained locking and
	added simultaneous waiting for 2 states

2001-03-13 01:24  scavenger

	* gst/gstthread.c: exactly opposite check needed in wait_thread

2001-03-13 01:08  scavenger

	* gst/gstthread.c: made wait_thread check for logical true rather
	than check equality with gboolean

2001-03-13 00:57  scavenger

	* gst/gstthread.c: changed debug to print unsigned not signed

2001-03-13 00:46  scavenger

	* gst/gstthread.c: TYPO: ISSET should be IS_SET

2001-03-13 00:45  scavenger

	* gst/gstthread.c: added debug to signal noting the result of the
	flag after being set

2001-03-13 00:39  scavenger

	* gst/: gstthread.c, gstthread.h: Made locks more granular, one
	lock for each state

2001-03-13 00:09  scavenger

	* gst/gstthread.c: made cond_wait into cond_timedwait

2001-03-12 23:51  omegahacker

	* tests/threadlock.c: file threadlock.c was initially added on
	branch BRANCH-INCSCHED1.

2001-03-12 23:51  omegahacker

	* tests/: Makefile.am, threadlock.c: added threadlock test

2001-03-12 23:39  scavenger

	* gst/gstthread.c: repositioning of debug after mutex in
	wait_thread and signal_thread

2001-03-12 23:28  scavenger

	* gst/gstthread.c: typo in GST_DEBUG in signal_thread

2001-03-12 23:27  scavenger

	* gst/gstthread.c: Changed GST_DEBUG in signal_thread and
	wait_thread to reveal more info

2001-03-12 21:02  wtay

	* configure.in, docs/random/wtay/caps-negociation,
	editor/gsteditorproperty.c, gst/gstautoplug.c, gst/gstautoplug.h,
	gst/gstcaps.c, gst/gstcaps.h, gst/gstelement.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstpad.c, gst/gstpad.h,
	gst/gstqueue.c, gst/autoplug/gststaticautoplug.c,
	gst/autoplug/gststaticautoplugrender.c,
	gst/elements/gstaudiosink.c, gstplay/gstplay.c,
	plugins/jpeg/gstjpeg.c, plugins/vorbis/vorbis.c,
	plugins/xmms/pluginenum.c, tests/.cvsignore, tests/Makefile.am,
	tests/autoplug.c, tests/capsconnect.c, tests/nego/.cvsignore,
	tests/nego/Makefile.am, tests/nego/nego1.c: Merged the CAPSNEGO1
	branch..

2001-03-12 20:04  wtay

	* Makefile.am, REQUIREMENTS, configure.in, docs/manual/xml.sgml,
	gst/gst.c, gst/gstpipeline.c, gst/gstpipeline.h,
	gst/elements/gstsinesrc.c, gst/elements/gstsinesrc.h,
	plugins/Makefile.am, plugins/alsa/.cvsignore,
	plugins/alsa/Makefile.am, plugins/alsa/README, plugins/alsa/alsa.h,
	plugins/alsa/alsa_common.c, plugins/alsa/alsainfo.c,
	plugins/alsa/alsasink.c, plugins/alsa/alsasrc.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/jpeg/gstjpegenc.c,
	plugins/jpeg/gstjpegenc.h, plugins/rtp/Makefile.am,
	plugins/rtp/rtpsend/.cvsignore, plugins/rtp/rtpsend/Makefile.am,
	plugins/rtp/rtpsend/rtp.c, plugins/rtp/rtpsend/rtp.h,
	plugins/rtp/rtpsend/rtpsend.c, plugins/rtp/rtpsend/rtpsend.h,
	tests/autoplug.c, testsuite/Makefile.am, testsuite/test_gst_init.c:
	Another merge from HEAD into CAPSNEGO1

2001-03-12 02:44  scavenger

	* gst/gstthread.c: added a set flag to end of
	gst_thread_signal_thread and gst_signal_wait_thread to indicate
	whether signal should set flag or unset flag, and whether wait
	should wait for flag to be set or to be unset.	this is needed for
	PLAYING_TO_PAUSE where STATE_SPINNING needs to be signalled to be
	unset

2001-03-12 02:30  omegahacker

	* tests/: Makefile.am, reaping.c: added thread REAPING test

2001-03-12 02:30  omegahacker

	* tests/reaping.c: file reaping.c was initially added on branch
	BRANCH-INCSCHED1.

2001-03-12 01:55  scavenger

	* gst/gstthread.c: making wait for REAPING state when
	gst_bin_iterate returns non zero

2001-03-12 01:37  scavenger

	* gst/gstthread.c: added debug statement

2001-03-12 01:13  omegahacker

	* gst/gsttypes.h: /me is an idiot.  cvs add gsttypes.h

2001-03-12 01:13  omegahacker

	* gst/gsttypes.h: file gsttypes.h was initially added on branch
	BRANCH-INCSCHED1.

2001-03-12 00:37  omegahacker

	* gst/: gstthread.c, gstthread.h: some cleanup and compile fixes

2001-03-12 00:28  scavenger

	* gst/: gstthread.c, gstthread.h: Start of merging syncflags in
	with states

2001-03-11 22:45  omegahacker

	* configure.in: added check for version 1.8.1 or better of libxml

2001-03-11 19:51  wtay

	* plugins/jpeg/: gstjpegenc.c, gstjpegenc.h: Added a signal that
	gets emited when a frame has been encoded..

2001-03-11 19:31  wtay

	* gst/gstpad.c, gst/gstpad.h,
	gst/autoplug/gststaticautoplugrender.c, tests/.cvsignore: Small
	fixes, most notably the GST_PAD_CONNECTED macro that didn't work
	for ghostpads.

2001-03-11 18:47  wtay

	* tests/capsconnect.c: file capsconnect.c was initially added on
	branch BRANCH-CAPSNEGO1.

2001-03-11 18:47  wtay

	* tests/capsconnect.c: Added a little test program for caps
	negotiation proxying.

2001-03-11 18:34  wtay

	* gst/elements/: gstsinesrc.c, gstsinesrc.h: Applied the sinesrc
	patch from Steve Baker.

2001-03-11 16:29  wtay

	* AUTHORS, Makefile.am, REQUIREMENTS, acconfig.h, configure.in,
	gstreamer-config.in, gstreamer.m4, debian/.cvsignore,
	debian/Makefile.am, debian/README.Debian, debian/changelog,
	debian/control, debian/copyright, debian/gsteditor.files,
	debian/gsteditor.menu, debian/gstmediaplay.files,
	debian/gstmediaplay.menu, debian/gstreamer-cdparanoia.files,
	debian/gstreamer-common.files, debian/gstreamer-doc.files,
	debian/gstreamer-elements.files, debian/gstreamer-esd.files,
	debian/gstreamer-lame.files, debian/gstreamer-mpg123.files,
	debian/gstreamer-plugin-template.postinst,
	debian/gstreamer-plugin-template.prerm,
	debian/gstreamer-runtime.files, debian/gstreamer-runtime.postinst,
	debian/gstreamer-tools.files, debian/gstreamer-vorbis.files,
	debian/libgst-dev.files, debian/libgst0.files,
	debian/libgst0.postinst, debian/libgsteditor-dev.files,
	debian/libgsteditor0.files, debian/libgsteditor0.postinst,
	debian/libgstmediaplay-dev.files, debian/libgstmediaplay0.files,
	debian/libgstmediaplay0.postinst, debian/rules, docs/Makefile.am,
	docs/fwg/testapp.sgml, docs/fwg/titlepage.sgml,
	docs/gst/Makefile.am, docs/gst/gstreamer-docs.sgml,
	docs/gst/gstreamer-sections.txt, docs/gst/gstreamer.hierarchy,
	docs/gst/gstreamer.types.in, docs/gst/tmpl/gstasyncdisksrc.sgml,
	docs/gst/tmpl/gstautoplug.sgml, docs/gst/tmpl/gstbuffer.sgml,
	docs/gst/tmpl/gstcaps.sgml, docs/gst/tmpl/gstdisksrc.sgml,
	docs/gst/tmpl/gstobject.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstpipeline.sgml, docs/gst/tmpl/gstplugin.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/manual/Makefile.am,
	docs/manual/bins.sgml, docs/manual/debugging.sgml,
	docs/manual/dynamic.sgml, docs/manual/gstreamer-manual.sgml,
	docs/manual/helloworld.sgml, docs/manual/helloworld2.sgml,
	docs/manual/pads.sgml, docs/manual/plugins.sgml,
	docs/manual/queues.sgml, docs/manual/quotes.sgml,
	docs/manual/threads.sgml, docs/manual/typedetection.sgml,
	docs/manual/xml.sgml, docs/plugins/Makefile.am,
	docs/plugins/gstdoc-scanobj, docs/plugins/tmpl/ac3parse.sgml,
	docs/plugins/tmpl/audioscale.sgml,
	docs/plugins/tmpl/gstaviencoder.sgml,
	docs/plugins/tmpl/gstmpeg2enc.sgml,
	docs/plugins/tmpl/gstmpeg2play.sgml,
	docs/plugins/tmpl/gstmpeg_play.sgml,
	docs/plugins/tmpl/gstreamer-plugins-unused.sgml,
	docs/plugins/tmpl/gstspectrum.sgml,
	docs/plugins/tmpl/gstv4lsrc.sgml, docs/plugins/tmpl/gstwindec.sgml,
	docs/plugins/tmpl/gstwinenc.sgml, docs/plugins/tmpl/median.sgml,
	docs/plugins/tmpl/mp3parse.sgml, docs/plugins/tmpl/mpeg1parse.sgml,
	docs/plugins/tmpl/mpeg2parse.sgml,
	docs/plugins/tmpl/mpeg2subt.sgml, docs/plugins/tmpl/smooth.sgml,
	docs/plugins/tmpl/smoothwave.sgml, docs/plugins/tmpl/stereo.sgml,
	docs/plugins/tmpl/synaesthesia.sgml,
	docs/plugins/tmpl/system_encode.sgml,
	docs/plugins/tmpl/videoscale.sgml,
	docs/plugins/tmpl/videosink.sgml, docs/plugins/tmpl/volume.sgml,
	docs/plugins/tmpl/vumeter.sgml, docs/random/NOTES-0.1.1,
	docs/random/hierarchy, docs/random/wtay/autoplug2,
	editor/gsteditor.h, examples/Makefile.am,
	examples/autoplug/autoplug.c, examples/helloworld2/helloworld2.c,
	examples/launch/mp3play, examples/plugins/example.c,
	examples/plugins/example.h, examples/queue2/queue2.c,
	examples/thread/thread.c, gst/Makefile.am, gst/cothreads.c,
	gst/gst.c, gst/gst.h, gst/gstarch.h, gst/gstautoplug.c,
	gst/gstautoplug.h, gst/gstbin.c, gst/gstcaps.c, gst/gstcaps.h,
	gst/gstcpu.c, gst/gstcpu.h, gst/gstelement.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstinfo.h, gst/gstobject.c,
	gst/gstpad.c, gst/gstpad.h, gst/gstparse.c, gst/gstpipeline.c,
	gst/gstpipeline.h, gst/gstplugin.c, gst/gstplugin.h,
	gst/gstprops.c, gst/gstqueue.c, gst/gstsparc.h, gst/gstthread.c,
	gst/gsttype.c, gst/gsttype.h, gst/gsttypefind.c, gst/gstutils.c,
	gst/gstutils.h, gst/autoplug/Makefile.am,
	gst/autoplug/gststaticautoplug.c, gst/autoplug/gststaticautoplug.h,
	gst/autoplug/gststaticautoplugrender.c,
	gst/autoplug/gststaticautoplugrender.h,
	gst/elements/gstaudiosink.c, gst/elements/gstdisksrc.c,
	gst/elements/gstelements.c, gstplay/Makefile.am, gstplay/gstplay.c,
	gstplay/gstplay.h, gstplay/gstplayprivate.h, include/Makefile.am,
	include/avifmt.h, include/default.h, include/registry.h,
	libs/Makefile.am, libs/getbits/gstgetbits.c,
	libs/getbits/gstgetbits.h, libs/getbits/gstgetbits_inl.h,
	plugins/Makefile.am, plugins/avi/gstavidecoder.c,
	plugins/avi/playcodecs.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwindec.c, plugins/avi/wincodec/gstwinenc.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/capture/v4l/gstv4lsrc.h,
	plugins/jpeg/gstjpeg.c, plugins/jpeg/gstjpegdec.c,
	plugins/mp3decode/mpg123/layer1.c,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mp3decode/mpg123/tabinit.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/recon_mmxe.s,
	plugins/mpeg1/mpeg_play/recon_sse.s,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg2/Makefile.am,
	plugins/mpeg2/ac3dec/cpu_accel.c,
	plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2dec/attributes.h,
	plugins/mpeg2/mpeg2dec/decode.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2dec/header.c, plugins/mpeg2/mpeg2dec/header.h,
	plugins/mpeg2/mpeg2dec/idct.c, plugins/mpeg2/mpeg2dec/idct.h,
	plugins/mpeg2/mpeg2dec/idct_mlib.c,
	plugins/mpeg2/mpeg2dec/idct_mmx.c,
	plugins/mpeg2/mpeg2dec/idct_mmx.h,
	plugins/mpeg2/mpeg2dec/mm_accel.h,
	plugins/mpeg2/mpeg2dec/motion_comp.c,
	plugins/mpeg2/mpeg2dec/motion_comp.h,
	plugins/mpeg2/mpeg2dec/motion_comp_mlib.c,
	plugins/mpeg2/mpeg2dec/motion_comp_mmx.c,
	plugins/mpeg2/mpeg2dec/motion_comp_sse.s,
	plugins/mpeg2/mpeg2dec/mpeg2.h,
	plugins/mpeg2/mpeg2dec/mpeg2_internal.h,
	plugins/mpeg2/mpeg2dec/output_video.h,
	plugins/mpeg2/mpeg2dec/slice.c, plugins/mpeg2/mpeg2dec/slice.h,
	plugins/mpeg2/mpeg2dec/stats.c, plugins/mpeg2/mpeg2dec/vlc.h,
	plugins/mpeg2/video/Makefile.am, plugins/mpeg2/video/recon.c,
	plugins/mpeg2/video/recon_mmxe.s, plugins/mpeg2/video/recon_sse.s,
	plugins/vorbis/vorbis.c, plugins/xmms/.cvsignore,
	plugins/xmms/Makefile.am, plugins/xmms/effect.h,
	plugins/xmms/general.h, plugins/xmms/gstxmms.c,
	plugins/xmms/gstxmms.h, plugins/xmms/gstxmmseffect.c,
	plugins/xmms/gstxmmseffect.h, plugins/xmms/gstxmmsinput.c,
	plugins/xmms/gstxmmsinput.h, plugins/xmms/input.h,
	plugins/xmms/main.h, plugins/xmms/output.h,
	plugins/xmms/pluginenum.c, plugins/xmms/pluginenum.h,
	plugins/xmms/visualization.h, plugins/xmms/xmms.h, test/.cvsignore,
	test/Makefile.am, test/mp1parse.c, test/mpeg2parse2.c,
	test/videotest.c, test/xmmstest.c, test/xml/readreg.c,
	tests/.cvsignore, tests/Makefile.am, tests/autoplug.c,
	tests/autoplug2.c, tests/autoplug3.c, tools/README,
	tools/gstreamer-inspect.c: Merge the HEAD branch into AUTOPLUG2. 
	More work on the negotiation process to allow for proxied
	negotiation which is needed in the queue.  gst_pad_connect perform
	a negotiation and returns a gboolean indicating successfull
	connection. The pads are disconnected when negotiation fails.  I'm
	not satisfied/sure about the implementation yet, needs some more
	investigation.

2001-03-10 09:03  omegahacker

	* gst/: gstpipeline.c, gstpipeline.h: added tool-man's patch for
	g++ compilation, const guchar for pipeline_new

2001-03-09 22:03  wtay

	* REQUIREMENTS: Added librtp as a REQUIREMENT for the rtp plugin

2001-03-09 22:02  wtay

	* configure.in, plugins/Makefile.am: Added a check for librtp.

2001-03-09 20:50  wtay

	* REQUIREMENTS, configure.in, plugins/rtp/Makefile.am,
	plugins/rtp/rtpsend/.cvsignore, plugins/rtp/rtpsend/Makefile.am,
	plugins/rtp/rtpsend/rtp.c, plugins/rtp/rtpsend/rtp.h,
	plugins/rtp/rtpsend/rtpsend.c, plugins/rtp/rtpsend/rtpsend.h: Added
	the RTP sink, added libasound to the REQUIREMENTS, configure.in is
	not yet detecting librtp...

2001-03-09 20:35  wtay

	* plugins/xmms/pluginenum.c: Fixed some minor compile warnings

2001-03-09 20:24  wtay

	* configure.in, plugins/Makefile.am, plugins/alsa/Makefile.am: Only
	build alsa when detected by configure

2001-03-09 20:05  wtay

	* plugins/alsa/: .cvsignore, README: Some more files.

2001-03-09 20:04  wtay

	* plugins/alsa/: Makefile.am, alsa.h, alsa_common.c, alsainfo.c,
	alsasink.c, alsasrc.c: Added the alsasrc and alsasink elements. The
	build system is not yet done, we're working on it now.

2001-03-09 18:50  omegahacker

	* gst/cothreads.c, gst/gstbin.c, gst/gstelement.c, gst/gstpad.c,
	gst/gstscheduler.c, gst/gstthread.h, tests/incsched.c: update to
	latest copy

2001-03-09 18:33  omegahacker

	* gst/gstthread.c: commit to broken code that needs inspecting

2001-03-09 12:31  richardb

	* gst/gst.c: Fix gst_init() so that it doesn't fail when passed two
	NULLs as parameters.  Was dereferencing the argv pointer to get
	progname: now defaults to "gstprog".

2001-03-09 12:29  richardb

	* testsuite/test_gst_init.c: Updated test to have a comment
	explaining its purpose (very important this, especially for
	regression tests), and to actually test what I meant it to.

2001-03-09 12:08  richardb

	* Makefile.am, configure.in, testsuite/Makefile.am,
	testsuite/test_gst_init.c: Added a testsuite.  This currently only
	has one test, which replicates a problem just submitted to the
	list.
	
	I hope noone disagrees that we need a testsuite.  Also, hopefully
	we all think that a tiny testsuite which is easy to add tests to is
	much better than a huge project to create a complete testsuite,
	which never gets started because its too big and scary.
	
	I suggest that tests get created whenever someone has a spare
	moment, or whenever a bug is reported (to replicate the problem,
	and thus be sure that when fixed it stays fixed), and before making
	a change to a piece of code to ensure that it remains working.
	
	If we all add little tests occasionally, then we'll have a good
	useful testsuite before we know it.  All you need to do is make a

2001-03-08 21:28  wtay

	* configure.in: Removed the libxmms check until they fix their m4
	script..

2001-03-08 19:26  wtay

	* plugins/capture/v4l/gstv4lsrc.c: A very stupid patch to issue a
	warninh when the device could not be opened.

2001-03-07 22:20  wtay

	* configure.in: Added a check for libxmms

2001-03-07 21:52  wtay

	* configure.in, docs/gst/tmpl/gstautoplug.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstpipeline.sgml,
	docs/gst/tmpl/gstplugin.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/random/hierarchy, docs/random/wtay/autoplug2,
	editor/gsteditor.h, examples/autoplug/autoplug.c,
	examples/helloworld2/helloworld2.c, examples/queue2/queue2.c,
	examples/thread/thread.c, gst/Makefile.am, gst/gstautoplug.c,
	gst/gstautoplug.h, gst/gstbin.c, gst/gstcaps.c, gst/gstcaps.h,
	gst/gstelement.c, gst/gstelement.h, gst/gstelementfactory.c,
	gst/gstobject.c, gst/gstpad.c, gst/gstpad.h, gst/gstpipeline.c,
	gst/gstpipeline.h, gst/gstplugin.c, gst/gstplugin.h,
	gst/gstprops.c, gst/gstthread.c, gst/gsttype.c, gst/gsttype.h,
	gst/gsttypefind.c, gst/autoplug/Makefile.am,
	gst/autoplug/gststaticautoplug.c, gst/autoplug/gststaticautoplug.h,
	gst/autoplug/gststaticautoplugrender.c,
	gst/autoplug/gststaticautoplugrender.h, gst/elements/gstdisksrc.c,
	gst/elements/gstelements.c, gstplay/gstplay.c, gstplay/gstplay.h,
	gstplay/gstplayprivate.h, plugins/Makefile.am,
	plugins/avi/gstavidecoder.c, plugins/avi/playcodecs.c,
	plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwindec.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c, plugins/xmms/Makefile.am,
	plugins/xmms/plugin.h, test/mp1parse.c, tests/.cvsignore,
	tests/Makefile.am, tests/autoplug.c, tests/autoplug2.c,
	tests/autoplug3.c, tools/gstreamer-inspect.c: Merged the AUTOPLUG2
	branch

2001-03-06 22:32  wtay

	* gst/gstbin.c, gst/gstpipeline.c, gst/gstutils.c, test/.cvsignore,
	test/Makefile.am, test/videotest.c, test/xmmstest.c: Small fixes to
	pipeline and gstbin.  Fixed the xmmstest makefile entry Removed the
	plugin_load statements in videotest Applied the patch from Steve
	Baker for float args parsing

2001-03-06 21:39  wtay

	* AUTHORS, REQUIREMENTS, acconfig.h, configure.in, gstreamer.m4,
	docs/manual/xml.sgml, examples/helloworld2/helloworld2.c,
	examples/launch/mp3play, gst/Makefile.am, gst/cothreads.c,
	gst/gstarch.h, gst/gstbin.c, gst/gstcpu.c, gst/gstelement.c,
	gst/gstpad.c, gst/gstparse.c, gst/gstplugin.c, gst/gstsparc.h,
	gst/gstutils.c, gst/gstutils.h, gstplay/Makefile.am,
	plugins/capture/v4l/gstv4lsrc.c, plugins/capture/v4l/gstv4lsrc.h,
	plugins/mpeg2/Makefile.am, plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2dec/attributes.h,
	plugins/mpeg2/mpeg2dec/decode.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2dec/header.c, plugins/mpeg2/mpeg2dec/header.h,
	plugins/mpeg2/mpeg2dec/idct.c, plugins/mpeg2/mpeg2dec/idct.h,
	plugins/mpeg2/mpeg2dec/idct_mlib.c,
	plugins/mpeg2/mpeg2dec/idct_mmx.c,
	plugins/mpeg2/mpeg2dec/idct_mmx.h,
	plugins/mpeg2/mpeg2dec/mm_accel.h,
	plugins/mpeg2/mpeg2dec/motion_comp.c,
	plugins/mpeg2/mpeg2dec/motion_comp.h,
	plugins/mpeg2/mpeg2dec/motion_comp_mlib.c,
	plugins/mpeg2/mpeg2dec/motion_comp_mmx.c,
	plugins/mpeg2/mpeg2dec/motion_comp_sse.s,
	plugins/mpeg2/mpeg2dec/mpeg2.h,
	plugins/mpeg2/mpeg2dec/mpeg2_internal.h,
	plugins/mpeg2/mpeg2dec/output_video.h,
	plugins/mpeg2/mpeg2dec/slice.c, plugins/mpeg2/mpeg2dec/slice.h,
	plugins/mpeg2/mpeg2dec/stats.c, plugins/mpeg2/mpeg2dec/vlc.h,
	plugins/xmms/.cvsignore, plugins/xmms/Makefile.am,
	plugins/xmms/effect.h, plugins/xmms/general.h,
	plugins/xmms/gstxmms.c, plugins/xmms/gstxmms.h,
	plugins/xmms/gstxmmseffect.c, plugins/xmms/gstxmmseffect.h,
	plugins/xmms/gstxmmsinput.c, plugins/xmms/gstxmmsinput.h,
	plugins/xmms/input.h, plugins/xmms/main.h, plugins/xmms/output.h,
	plugins/xmms/plugin.h, plugins/xmms/pluginenum.c,
	plugins/xmms/pluginenum.h, plugins/xmms/visualization.h,
	plugins/xmms/xmms.h, test/.cvsignore, test/Makefile.am,
	test/mpeg2parse2.c, test/videotest.c, test/xmmstest.c,
	test/xml/readreg.c, tests/autoplug3.c: Synced with the HEAD branch
	again... amazing how many changes we have in only a week time...

2001-03-06 20:06  wtay

	* examples/launch/mp3play: Added quotes around the command line mp3
	player

2001-03-06 20:04  wtay

	* gst/gstparse.c: Applied Dominic Ludlam's patch to allow quoted
	args in gstreamer-launch

2001-03-05 23:06  wtay

	* plugins/xmms/: gstxmmsinput.c, gstxmmsinput.h: Added state
	changes to the input plugins.  Added all of the xmms calls/info as
	properties.

2001-03-05 21:24  wtay

	* test/xmmstest.c: Added an effect to the example

2001-03-05 21:24  wtay

	* plugins/xmms/: Makefile.am, gstxmms.c, gstxmmseffect.c,
	gstxmmseffect.h, gstxmmsinput.c: Added a wrapper for the xmms
	plugins.

2001-03-05 19:37  wtay

	* plugins/capture/v4l/: gstv4lsrc.c, gstv4lsrc.h: Added an option
	to set the device

2001-03-05 18:55  wtay

	* plugins/mpeg2/mpeg2dec/gstmpeg2dec.c: Removed the sliced property
	of the sink caps because this plugin can take random data.

2001-03-04 23:40  wtay

	* plugins/mpeg2/mpeg2dec/gstmpeg2dec.c: Adjusted the credits... 
	Changed the loop function so that it can stop.

2001-03-04 22:37  dlehn

	* plugins/mpeg2/mpeg2dec/: header.c, header.h, idct.c, idct.h,
	idct_mmx.c, idct_mmx.h, motion_comp.c, motion_comp.h, slice.c,
	slice.h: Whoops, remove the rest of the old mpeg2dec files.

2001-03-04 22:26  dlehn

	* test/mpeg2parse2.c: Use g_return_val_if_fail() instead of
	g_return_if_fail() where needed.

2001-03-04 22:22  dlehn

	* acconfig.h, configure.in, plugins/mpeg2/Makefile.am,
	plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2dec/attributes.h,
	plugins/mpeg2/mpeg2dec/decode.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2dec/idct_mlib.c,
	plugins/mpeg2/mpeg2dec/mm_accel.h,
	plugins/mpeg2/mpeg2dec/motion_comp_mlib.c,
	plugins/mpeg2/mpeg2dec/motion_comp_mmx.c,
	plugins/mpeg2/mpeg2dec/motion_comp_sse.s,
	plugins/mpeg2/mpeg2dec/mpeg2.h,
	plugins/mpeg2/mpeg2dec/mpeg2_internal.h,
	plugins/mpeg2/mpeg2dec/output_video.h,
	plugins/mpeg2/mpeg2dec/stats.c, plugins/mpeg2/mpeg2dec/vlc.h,
	test/.cvsignore: Update mpeg2dec plugin.  Now depends on mpeg2dec
	0.2.0.

2001-03-04 21:59  wtay

	* test/: Makefile.am, xmmstest.c: Added a test program for xmms

2001-03-04 21:58  wtay

	* configure.in: Added makefile for xmms.  libxmms detection is not
	done yet.

2001-03-04 21:57  wtay

	* plugins/xmms/: .cvsignore, Makefile.am, effect.h, general.h,
	gstxmms.c, gstxmms.h, gstxmmsinput.c, gstxmmsinput.h, input.h,
	main.h, output.h, plugin.h, pluginenum.c, pluginenum.h,
	visualization.h, xmms.h: Added an XMMS input filter plugin. MikMod,
	mpg123, tonegen, vorbis are tested.  Not everything works yet most
	notably lots of properties are missing and the vis plugin pads are
	not created.  State changes are not yet handled as they should.

2001-03-03 19:09  wtay

	* tests/autoplug3.c: file autoplug3.c was initially added on branch
	BRANCH-AUTOPLUG2.

2001-03-03 19:09  wtay

	* tests/: .cvsignore, autoplug3.c: Added a test program for the
	autopluggers

2001-03-03 19:08  wtay

	* gst/autoplug/gststaticautoplugrender.c: file
	gststaticautoplugrender.c was initially added on branch
	BRANCH-AUTOPLUG2.

2001-03-03 19:08  wtay

	* gst/gstautoplug.c, gst/gstautoplug.h, gst/autoplug/Makefile.am,
	gst/autoplug/gststaticautoplug.c,
	gst/autoplug/gststaticautoplugrender.c,
	gst/autoplug/gststaticautoplugrender.h, gstplay/gstplay.c,
	gstplay/gstplayprivate.h, tests/Makefile.am, tests/autoplug.c,
	tests/autoplug2.c: Added an API for element construction and
	renderer autopluggers.	Added another autoplugger to render things.
	 Updated the player to use the new autoplugger.

2001-03-03 19:08  wtay

	* gst/autoplug/gststaticautoplugrender.h: file
	gststaticautoplugrender.h was initially added on branch
	BRANCH-AUTOPLUG2.

2001-03-03 18:19  wtay

	* gst/gstutils.c: And the gst_utit_set_object_arg function too of
	course...

2001-03-03 17:38  wtay

	* gst/gstelement.c: Added gstutils.h to #include

2001-03-03 17:09  wtay

	* configure.in: Added a comma to fix ./configure as found by Steve
	Baker

2001-03-03 16:30  wtay

	* gst/: gstelement.c, gstparse.c, gstutils.h: Added a utility
	function in gstutils to set an object argument as a string.
	gstparse.c and gstelement.c now use this function.

2001-03-02 18:30  omegahacker

	* acconfig.h, configure.in, gst/Makefile.am, gst/cothreads.c,
	gst/gstarch.h, gst/gstsparc.h: added sparc cothreads

2001-03-02 17:56  wtay

	* examples/helloworld2/helloworld2.c: Make the autoplugging example
	work again with an ugly hack until we have autoplug2 merged...

2001-03-02 17:03  richardb

	* test/xml/readreg.c: Include compatability defines for libxml: use
	xmlChildrenNode instead of childs.

2001-03-02 16:50  richardb

	* gst/gstplugin.c: Add advice to run gstreamer-register when
	warning that registry needs rebuild.

2001-03-02 16:49  richardb

	* REQUIREMENTS: Mention that libxml is also known as gnome-xml

2001-03-01 23:47  wtay

	* AUTHORS: Updated the authors file.

2001-03-01 23:25  wtay

	* gstreamer.m4, gstplay/Makefile.am, test/videotest.c: Added the
	.m4 script of  Thomas Nyberg <thomas@codefactory.se>

2001-03-01 22:36  wtay

	* Makefile.am, configure.in, gstreamer-config.in,
	debian/.cvsignore, debian/Makefile.am, debian/README.Debian,
	debian/changelog, debian/control, debian/copyright,
	debian/gsteditor.files, debian/gsteditor.menu,
	debian/gstmediaplay.files, debian/gstmediaplay.menu,
	debian/gstreamer-cdparanoia.files, debian/gstreamer-common.files,
	debian/gstreamer-doc.files, debian/gstreamer-elements.files,
	debian/gstreamer-esd.files, debian/gstreamer-lame.files,
	debian/gstreamer-mpg123.files,
	debian/gstreamer-plugin-template.postinst,
	debian/gstreamer-plugin-template.prerm,
	debian/gstreamer-runtime.files, debian/gstreamer-runtime.postinst,
	debian/gstreamer-tools.files, debian/gstreamer-vorbis.files,
	debian/libgst-dev.files, debian/libgst0.files,
	debian/libgst0.postinst, debian/libgsteditor-dev.files,
	debian/libgsteditor0.files, debian/libgsteditor0.postinst,
	debian/libgstmediaplay-dev.files, debian/libgstmediaplay0.files,
	debian/libgstmediaplay0.postinst, debian/rules, docs/Makefile.am,
	docs/fwg/testapp.sgml, docs/fwg/titlepage.sgml,
	docs/gst/Makefile.am, docs/gst/gstreamer-docs.sgml,
	docs/gst/gstreamer-sections.txt, docs/gst/tmpl/gstbuffer.sgml,
	docs/gst/tmpl/gstcaps.sgml, docs/gst/tmpl/gstdisksrc.sgml,
	docs/gst/tmpl/gstobject.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstplugin.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/manual/Makefile.am, docs/manual/bins.sgml,
	docs/manual/debugging.sgml, docs/manual/dynamic.sgml,
	docs/manual/gstreamer-manual.sgml, docs/manual/helloworld.sgml,
	docs/manual/helloworld2.sgml, docs/manual/pads.sgml,
	docs/manual/plugins.sgml, docs/manual/queues.sgml,
	docs/manual/quotes.sgml, docs/manual/threads.sgml,
	docs/manual/typedetection.sgml, docs/manual/xml.sgml,
	docs/plugins/Makefile.am, docs/plugins/gstdoc-scanobj,
	docs/plugins/tmpl/ac3parse.sgml, docs/plugins/tmpl/audioscale.sgml,
	docs/plugins/tmpl/gstaviencoder.sgml,
	docs/plugins/tmpl/gstmpeg2enc.sgml,
	docs/plugins/tmpl/gstmpeg2play.sgml,
	docs/plugins/tmpl/gstmpeg_play.sgml,
	docs/plugins/tmpl/gstreamer-plugins-unused.sgml,
	docs/plugins/tmpl/gstspectrum.sgml,
	docs/plugins/tmpl/gstv4lsrc.sgml, docs/plugins/tmpl/gstwindec.sgml,
	docs/plugins/tmpl/gstwinenc.sgml, docs/plugins/tmpl/median.sgml,
	docs/plugins/tmpl/mp3parse.sgml, docs/plugins/tmpl/mpeg1parse.sgml,
	docs/plugins/tmpl/mpeg2parse.sgml,
	docs/plugins/tmpl/mpeg2subt.sgml, docs/plugins/tmpl/smooth.sgml,
	docs/plugins/tmpl/smoothwave.sgml, docs/plugins/tmpl/stereo.sgml,
	docs/plugins/tmpl/synaesthesia.sgml,
	docs/plugins/tmpl/system_encode.sgml,
	docs/plugins/tmpl/videoscale.sgml,
	docs/plugins/tmpl/videosink.sgml, docs/plugins/tmpl/volume.sgml,
	docs/plugins/tmpl/vumeter.sgml, docs/random/NOTES-0.1.1,
	docs/random/caps.dia, docs/random/wtay/caps-negociation,
	examples/Makefile.am, examples/plugins/example.c,
	examples/plugins/example.h, gst/Makefile.am, gst/gst.c, gst/gst.h,
	gst/gstbin.c, gst/gstcaps.c, gst/gstcaps.h, gst/gstcpu.c,
	gst/gstcpu.h, gst/gstelement.h, gst/gstinfo.h, gst/gstpad.c,
	gst/gstpad.h, gst/gstplugin.c, gst/gstplugin.h, gst/gstprops.c,
	gst/gstqueue.c, gst/gstscheduler.c, gst/gstthread.c, gst/gsttype.c,
	gst/gstutils.h, gst/autoplug/gststaticautoplug.c,
	gst/elements/gstdisksrc.c, gst/elements/gstelements.c,
	gstplay/gstmediaplay.c, gstplay/gstplay.c, include/Makefile.am,
	include/avifmt.h, include/default.h, include/registry.h,
	libs/Makefile.am, libs/getbits/gstgetbits.c,
	libs/getbits/gstgetbits.h, libs/getbits/gstgetbits_inl.h,
	plugins/avi/audiocodecs.c, plugins/avi/gstavidecoder.c,
	plugins/avi/playcodecs.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwindec.c, plugins/avi/wincodec/gstwinenc.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/jpeg/gstjpeg.c,
	plugins/jpeg/gstjpegdec.c, plugins/mp3decode/mpg123/layer1.c,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mp3decode/mpg123/tabinit.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/recon_mmxe.s,
	plugins/mpeg1/mpeg_play/recon_sse.s,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg2/ac3dec/cpu_accel.c,
	plugins/mpeg2/mpeg2dec/motion_comp.c,
	plugins/mpeg2/video/Makefile.am, plugins/mpeg2/video/recon.c,
	plugins/mpeg2/video/recon_mmxe.s, plugins/mpeg2/video/recon_sse.s,
	test/videotest.c, tools/README: Merge with the main trunk.  GstPlay
	needed some changes for the dynamic pads in the avidecoder since
	the new autoplugger doesn't know about the outher elements. The
	next version of the autoplugger will also handle the
	audfio/videosink connections and will do a complete end-to-end
	autoplugging.

2001-03-01 19:43  wtay

	* plugins/capture/v4l/gstv4lsrc.c: Hopefully fixed some more color
	conversion issues

2001-03-01 19:11  wtay

	* plugins/capture/v4l/gstv4lsrc.c: Added more LE<->BE stuff

2001-02-28 21:40  wtay

	* gst/gstbin.c: Make sure a cothreaded element is selected as the
	first one to start the cothread_switch

2001-02-28 20:32  wtay

	* gst/gstcpu.c: Redid the cpu detection with a little help from
	mpeg2decs code..

2001-02-27 22:43  wtay

	* test/mpeg2parse2.c: Xv enabled, mpeg2dec is the decoder..

2001-02-27 22:38  wtay

	* test/Makefile.am: and the updated makefile...

2001-02-27 22:27  wtay

	* test/mpeg2parse2.c: Added a simple mpeg2 player for testing
	mpeg2dec (later)

2001-02-27 21:08  wtay

	* docs/gst/: Makefile.am, gstreamer.hierarchy, gstreamer.types.in,
	tmpl/gstasyncdisksrc.sgml, tmpl/gstautoplug.sgml, tmpl/gstpad.sgml,
	tmpl/gstpipeline.sgml, tmpl/gstplugin.sgml,
	tmpl/gstreamer-unused.sgml: Small compile fixes

2001-02-27 20:34  wtay

	* gst/autoplug/gststaticautoplug.c: file gststaticautoplug.c was
	initially added on branch BRANCH-AUTOPLUG2.

2001-02-27 20:34  wtay

	* docs/random/plugins.dia, gst/gstbin.c, gst/gstcaps.c,
	gst/gstthread.c, gst/autoplug/Makefile.am,
	gst/autoplug/gststaticautoplug.c, gst/autoplug/gststaticautoplug.h:
	Added the missing autoplugger, doh

2001-02-27 20:34  wtay

	* gst/autoplug/gststaticautoplug.h: file gststaticautoplug.h was
	initially added on branch BRANCH-AUTOPLUG2.

2001-02-27 20:34  wtay

	* gst/autoplug/Makefile.am: file Makefile.am was initially added on
	branch BRANCH-AUTOPLUG2.

2001-02-27 19:44  wtay

	* gst/gstcpu.c, gst/gstcpu.h, plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/recon_mmxe.s,
	plugins/mpeg1/mpeg_play/recon_sse.s,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg2/ac3dec/cpu_accel.c,
	plugins/mpeg2/video/Makefile.am, plugins/mpeg2/video/recon.c,
	plugins/mpeg2/video/recon_mmxe.s, plugins/mpeg2/video/recon_sse.s,
	test/videotest.c: CPU detection of MMXEXT and probably 3DNOW (not
	on Athlon yet) Renamed the mmxe motion compentation files. 
	disabled SSE optimisation in ac3dec because it apparently faults.. 
	enable MMXEXT motion compensation on non SSE CPUs (AMD)

2001-02-27 00:05  wtay

	* docs/gst/Makefile.am, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/plugins/Makefile.am,
	docs/plugins/gstdoc-scanobj, docs/plugins/tmpl/ac3parse.sgml,
	docs/plugins/tmpl/audioscale.sgml,
	docs/plugins/tmpl/gstaviencoder.sgml,
	docs/plugins/tmpl/gstmpeg2enc.sgml,
	docs/plugins/tmpl/gstmpeg2play.sgml,
	docs/plugins/tmpl/gstmpeg_play.sgml,
	docs/plugins/tmpl/gstreamer-plugins-unused.sgml,
	docs/plugins/tmpl/gstspectrum.sgml,
	docs/plugins/tmpl/gstv4lsrc.sgml, docs/plugins/tmpl/gstwindec.sgml,
	docs/plugins/tmpl/gstwinenc.sgml, docs/plugins/tmpl/median.sgml,
	docs/plugins/tmpl/mp3parse.sgml, docs/plugins/tmpl/mpeg1parse.sgml,
	docs/plugins/tmpl/mpeg2parse.sgml,
	docs/plugins/tmpl/mpeg2subt.sgml, docs/plugins/tmpl/smooth.sgml,
	docs/plugins/tmpl/smoothwave.sgml, docs/plugins/tmpl/stereo.sgml,
	docs/plugins/tmpl/synaesthesia.sgml,
	docs/plugins/tmpl/system_encode.sgml,
	docs/plugins/tmpl/videoscale.sgml,
	docs/plugins/tmpl/videosink.sgml, docs/plugins/tmpl/volume.sgml,
	docs/plugins/tmpl/vumeter.sgml, plugins/avi/gstavidecoder.c,
	plugins/jpeg/gstjpegdec.c: A hopeless attempt at fixing the plugin
	docs Makefiles...  Make the jpeg decoder a bit more aware about the
	different YUV colorspaces.

2001-02-25 23:11  dlehn

	* debian/changelog: Oops... wrong email address

2001-02-25 23:08  dlehn

	* debian/: changelog, rules: Updated version and build fix.

2001-02-25 03:42  bbradburn

	* gst/: gst.h, gstcaps.h, gstinfo.h, gstutils.h: Patched .h files
	for C++ support.

2001-02-25 03:40  omegahacker

	* gst/gstplugin.c: swapped ordering of plugin dirs so srcdir
	plugins load first

2001-02-25 03:36  omegahacker

	* configure.in, gst/gstbin.c, libs/getbits/gstgetbits.c,
	plugins/mp3decode/mpg123/layer1.c,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mp3decode/mpg123/tabinit.c: commented out some printfs that
	went to stdout

2001-02-24 21:07  dlehn

	* debian/rules: Call configure instead of autogen.sh.

2001-02-24 20:06  wtay

	* configure.in, include/default.h: Remove some unneeded files Added
	a fix for broken libglade-config in configure.in

2001-02-24 19:33  dlehn

	* Makefile.am, configure.in, debian/Makefile.am: Add Debian files
	to distribution.

2001-02-24 19:28  wtay

	* include/Makefile.am: Make dist now works

2001-02-24 17:49  wtay

	* include/avifmt.h, include/registry.h,
	plugins/avi/wincodec/gstwinenc.c: Moved some win32 files around
	small fixes to wincodec

2001-02-24 16:56  wtay

	* Makefile.am, configure.in, docs/Makefile.am,
	examples/Makefile.am: Added directories to Makefiles for DIST

2001-02-24 00:23  wtay

	* gst/gst.c, plugins/capture/v4l/gstv4lsrc.c, test/videotest.c:
	slightly changed the Makefile.am in videoscale libs.  v4lsrc works
	again A little modification to the videotest programm to use a tee
	element.  added support for multiple paths in --gst-plugin_path=. 
	added ab ENV variable GST_PLUGIN_PATH to specify extra directories
	to look for plugins.

2001-02-23 19:22  wtay

	* docs/gst/gstreamer-sections.txt, docs/gst/tmpl/gstplugin.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/manual/debugging.sgml,
	gst/gstplugin.c: Updated the docs for gst_pluging_add_path Updated
	the manual with the new --gst-plugin-path/spew options

2001-02-23 19:09  wtay

	* docs/gst/tmpl/: gstasyncdisksrc.sgml, gstreamer-unused.sgml:
	Removed the asyncdisksrc again...

2001-02-23 19:09  omegahacker

	* gst/: gst.c, gstplugin.c, gstplugin.h, gstthread.c: Added two
	options: --gst-plugin-spew will print errors when plugins fail to
	load.  --gst-plugin-path= will add a directory to the path searched
	for plugins.

2001-02-23 01:57  omegahacker

	* gst/gstplugin.c: always include the installed plugin directories
	in the path

2001-02-23 00:55  omegahacker

	* configure.in, gstreamer-config.in: updates to configure.in and
	-config to help with cross compiling

2001-02-22 23:19  wtay

	* docs/random/NOTES-0.1.1: Added the current notes for the 0.1.1
	release

2001-02-22 23:18  wtay

	* docs/gst/gstreamer-sections.txt, docs/gst/tmpl/gstbuffer.sgml,
	docs/gst/tmpl/gstdisksrc.sgml, docs/gst/tmpl/gstobject.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/manual/Makefile.am, docs/manual/debugging.sgml,
	docs/manual/gstreamer-manual.sgml, docs/manual/pads.sgml,
	docs/manual/quotes.sgml, docs/manual/xml.sgml,
	examples/plugins/example.c, examples/plugins/example.h, gst/gst.c,
	gst/gstpad.c, gst/gstpad.h, plugins/mp3decode/parse/mp3parse.c:
	More doc updates Manual additions: xml/load save of custom XML,
	debugging, request pads added a signal to the example plugin fixed
	a bug in mp3parse (ifdef 1)

2001-02-22 17:13  wtay

	* examples/plugins/example.c: Fixed an unclosed comment

2001-02-22 01:53  omegahacker

	* plugins/mp3decode/parse/mp3parse.c: beginnings of a loop-based
	seek-capable mp3parse

2001-02-22 01:36  bbradburn

	* plugins/mp3decode/parse/mp3parse.c: Improved robustness of MP3
	seeking by validating the NEXT frame header.

2001-02-22 01:34  omegahacker

	* examples/plugins/: example.c, example.h: significant commenting
	of the example plugin

2001-02-22 00:47  omegahacker

	* gst/gstelement.h: minor change: changed case of the strings for
	states

2001-02-21 23:01  wtay

	* configure.in, docs/gst/tmpl/gstasyncdisksrc.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	plugins/jpeg/gstjpeg.c, plugins/jpeg/gstjpegdec.c,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h:
	Fixed the jpeg decoder Modifications for lame >=3.86

2001-02-21 22:32  dlehn

	* debian/: .cvsignore, README.Debian, changelog, control,
	copyright, gsteditor.files, gsteditor.menu, gstmediaplay.files,
	gstmediaplay.menu, gstreamer-cdparanoia.files,
	gstreamer-common.files, gstreamer-doc.files,
	gstreamer-elements.files, gstreamer-esd.files,
	gstreamer-lame.files, gstreamer-mpg123.files,
	gstreamer-plugin-template.postinst,
	gstreamer-plugin-template.prerm, gstreamer-runtime.files,
	gstreamer-runtime.postinst, gstreamer-tools.files,
	gstreamer-vorbis.files, libgst-dev.files, libgst0.files,
	libgst0.postinst, libgsteditor-dev.files, libgsteditor0.files,
	libgsteditor0.postinst, libgstmediaplay-dev.files,
	libgstmediaplay0.files, libgstmediaplay0.postinst, rules: Initial
	Debian packaging.

2001-02-21 20:58  dlehn

	* libs/getbits/: gstgetbits.h, gstgetbits_inl.h: Use glib macros
	for byte order conversion.

2001-02-21 20:57  dlehn

	* gst/elements/gstelements.c: Remove alias for asyncdisksrc
	backwards compatability.

2001-02-21 20:45  dlehn

	* docs/gst/: Makefile.am, gstreamer-docs.sgml,
	gstreamer-sections.txt, gstreamer.hierarchy, gstreamer.types.in,
	tmpl/gstasyncdisksrc.sgml: Removed asyncdisksrc references from
	docs.

2001-02-21 20:28  dlehn

	* gst/elements/gstdisksrc.c: Fixed typo in element details.

2001-02-21 20:27  dlehn

	* gst/gstqueue.c: Added parameter checking to gst_queue_get().

2001-02-21 00:57  omegahacker

	* gst/gstscheduler.c: Fixed bug with reconfig, where switching back
	into an element landed it in code that still thought it was
	connected to the previous element.  It now checks to see if the
	peer's peer has changed, and deal accordingly.

2001-02-20 08:19  omegahacker

	* gst/gstbin.c, gst/gstelement.c, tests/incsched.c,
	gst/gstscheduler.c, gst/gstscheduler.h, gst/elements/gstfakesrc.c,
	gst/elements/gstfakesrc.h: Significant progress.  Now able to do
	most operations live, without any failure.  tests/incsched.c
	currently faults at the last iteration, not yet sure why.

2001-02-19 22:15  wtay

	* tests/nego/nego1.c: file nego1.c was initially added on branch
	BRANCH-CAPSNEGO1.

2001-02-19 22:15  wtay

	* tests/nego/Makefile.am: file Makefile.am was initially added on
	branch BRANCH-CAPSNEGO1.

2001-02-19 22:15  wtay

	* tests/nego/.cvsignore: file .cvsignore was initially added on
	branch BRANCH-CAPSNEGO1.

2001-02-19 22:15  wtay

	* tests/nego/: .cvsignore, Makefile.am, nego1.c: Added the caps
	negotiation test program

2001-02-19 20:20  wtay

	* configure.in, docs/random/wtay/caps-negociation,
	editor/gsteditorproperty.c, gst/gstautoplug.c, gst/gstcaps.c,
	gst/gstpad.c, gst/gstpad.h, gst/gstpipeline.c: A first attempt at
	pad negotiation.   - _renegotiate can be called by a plugin to
	negotiate the caps   - _renegotiate is called whenever a pad
	changes its caps   - the caps cannot contain lists or ranges   -
	the pad caps are now only set explicitly using gst_pad_set_caps,
	the	padtemplate caps are not transfered to the pad caps.
	
	missing:  - no notification when negotiation fails  - autoplugging
	is broken  - the editor doesn't show correct caps

2001-02-19 00:07  wtay

	* libs/Makefile.am: The BPB has been put over my head... this time
	it's right I think

2001-02-18 23:58  wtay

	* libs/Makefile.am: Also build the videoscaler on non-I386 because
	we now have have a plain C version too.

2001-02-18 10:00  omegahacker

	* gst/gstbin.c, gst/gstscheduler.c, gst/gstscheduler.h,
	tests/incsched.c: More incsched progress.  Should be able to get
	itereration going again tomorrow.

2001-02-17 07:11  omegahacker

	* gst/Makefile.am, gst/gst.h, gst/gstbin.c, gst/gstbin.h,
	gst/gstelement.c, gst/gstelement.h, gst/gstobject.h, gst/gstpad.c,
	gst/gstpad.h, gst/gstpipeline.c, gst/gstscheduler.c,
	gst/gstscheduler.h, gst/gstthread.c, tests/incsched.c: Yes!,
	incsched is getting closer.

2001-02-17 04:43  mhowell

	* plugins/mp3decode/parse/mp3parse.c: added test for emphasis to
	check_head

2001-02-17 00:00  omegahacker

	* plugins/mpeg2/mpeg2dec/motion_comp.c: fixed an issue relating to
	macros and ##arg## syntax

2001-02-16 23:54  richardb

	* gst/gstprops.c: Redo patch using _NUM rather than converting one
	way and then back again, as wtay suggested.  Ho hum.

2001-02-16 23:52  omegahacker

	* docs/manual/quotes.sgml: more interesting than a 40K user
	program...

2001-02-16 23:45  richardb

	* gst/gstprops.c: Fix missing GPOINTER_TO_INT()'s on case values.

2001-02-16 23:39  omegahacker

	* docs/manual/quotes.sgml: added groupie quote

2001-02-16 16:48  richardb

	* docs/: fwg/testapp.sgml, manual/bins.sgml, manual/dynamic.sgml,
	manual/helloworld.sgml, manual/helloworld2.sgml, manual/pads.sgml,
	manual/plugins.sgml, manual/queues.sgml, manual/threads.sgml,
	manual/typedetection.sgml, manual/xml.sgml: Fix a few more issues
	shown up by gnome-db2html2 - %'s should be written as &percnt; (was
	causing gnome-db2html2 to segfault, though I've a patch for them to
	fix that).  Also correct an id which appeared twice.

2001-02-16 13:13  richardb

	* gst/gstpad.h: Include compatability defines for old versions of
	libxml1

2001-02-16 12:15  richardb

	* tools/README: Trivial fix: change launch to gstreamer-launch in
	README.

2001-02-16 12:14  richardb

	* docs/: fwg/titlepage.sgml, manual/Makefile.am,
	manual/gstreamer-manual.sgml: Fix a few irregularities, to make
	things closer to the Gnome standard guidelines for SGML
	documentation.	One change in particular is to change the book name
	for the manual from gstreamer to index; a change to the link to the
	manual on the website will thus be needed when the online version
	of the manual is next updated.
	
	These changes should make it possible to view the GStreamer
	documentation directly from SGML in Nautilus: anyone with a working
	copy of Nautilus should try this out and report ... ;-)

2001-02-15 18:42  richardb

	* gst/gstpad.c: Fix a couple of instances of childs, which should
	be xmlChildrenNode.  We need to be careful to stop these creeping
	back in... ;-)

2001-02-14 23:23  omegahacker

	* gst/gstpad.c, gst/gstpad.h, gst/gstscheduler.c,
	gst/gstscheduler.h, tests/incsched.c: More incsched updates.  Now
	need to get the headers redone...

2001-02-14 10:34  richardb

	* configure.in: Innocuous little change to fix a warning with newer
	versions of automake - shouldn't cause any backwards compatibility
	problems.

2001-02-13 20:48  wtay

	* docs/random/wtay/caps-negociation: Latest begotiation doc

2001-02-13 02:40  omegahacker

	* gst/gstscheduler.c, gst/gstscheduler.h, tests/incsched.c: Minor
	changes to incsched stuff, need to make more major modifications to
	manager concept now, so I'm checkpointing.

2001-02-12 23:08  omegahacker

	* gst/cothreads.c, gst/gstbin.c, gst/gstbin.h, gst/gstelement.c,
	gst/gstelement.h, gst/gstobject.c, gst/gstobject.h, gst/gstpad.c,
	gst/gstpipeline.c, gst/gstqueue.c, gst/gstscheduler.c,
	gst/gstscheduler.h, gst/gstthread.c, gst/gstthread.h,
	tests/Makefile.am, tests/incsched.c: First round of incremental
	scheduling.  Manager setting and managed_elements lists are now
	handled at bin_add/remove time.  Scheduling chains can be created
	incrementally as well, though there are still some pieces missing.

2001-02-12 23:08  omegahacker

	* tests/incsched.c: file incsched.c was initially added on branch
	BRANCH-INCSCHED1.

2001-02-11 22:22  wtay

	* docs/random/: caps.dia, wtay/caps-negociation: Corrected the
	associations on the UML diagrams

2001-02-11 18:29  wtay

	* docs/random/: caps.dia, plugins.dia, wtay/caps-negociation: Added
	.dia UML of GstCaps Added the autoplugger factory to plugins.dia
	Added a first draft for caps-negotiation

2001-02-10 14:46  wtay

	* gst/gstprops.c, gst/gstscheduler.c, gstplay/gstmediaplay.c,
	plugins/avi/audiocodecs.c, plugins/avi/gstavidecoder.c,
	plugins/avi/playcodecs.c: - backported the xml load bug in the
	properties - backported the videosink bug - make sure the
	regiontype is set to NONE after a getregion - an ugly fix (copy the
	chainfunction outselves) to make the avidecoder   work again.

2001-02-08 19:52  wtay

	* docs/random/wtay/autoplug2: Updated the doc with more accurate
	implementation details

2001-02-08 19:37  wtay

	* tests/autoplug2.c: file autoplug2.c was initially added on branch
	BRANCH-AUTOPLUG2.

2001-02-08 19:37  wtay

	* configure.in, editor/gsteditor.h, gst/Makefile.am,
	gst/gstautoplug.c, gst/gstautoplug.h, gst/gstelementfactory.c,
	gst/gstpipeline.c, gst/gstplugin.c, gst/gstplugin.h,
	gst/gstprops.c, gst/gsttype.c, gst/elements/gstdisksrc.c,
	gst/elements/gstelements.c, gstplay/gstplay.c, tests/Makefile.am,
	tests/autoplug.c, tests/autoplug2.c, tools/gstreamer-inspect.c:
	Implemented the plugable autopluggers.	  - one can aad an
	autoplugger to a plugin with gst_plugin_add_autoplugger    - the
	autopluggers can be queried using _get_list    - save/load
	autoplugger descriptions in the XML registry	- load the
	autoplugger only when needed	- a signal can be attached to the
	autoplugger to be notified of	   new objects.    - improved the
	media player to use the new autoplugger    - updated
	gstreamer-inspect for the autoplugger and types  added EOS to the
	disksrc fixed two bugs in properties loading (min/max, comment
	tags)

2001-02-07 22:48  omegahacker

	* configure.in: removed intl and po from configure.in, until we
	have gettext working

2001-02-07 22:23  omegahacker

	* Makefile.am, configure.in: added configure option to turn on
	building of docs, else they aren't built

2001-02-07 22:07  omegahacker

	* gst/Makefile.am: Fixed cothreads.c problems with make dist.  This
	still sucks badly.

2001-02-06 20:42  wtay

	* docs/gst/tmpl/gstreamer-unused.sgml,
	examples/autoplug/autoplug.c, examples/helloworld2/helloworld2.c,
	examples/queue2/queue2.c, examples/thread/thread.c,
	gst/gstautoplug.c, gst/gstautoplug.h, gst/gstbin.c, gst/gstcaps.h,
	gst/gstelement.c, gst/gstelement.h, gst/gstobject.c, gst/gstpad.c,
	gst/gstpad.h, gst/gstpipeline.c, gst/gstpipeline.h,
	gst/gstplugin.h, gst/gsttype.h, gst/gsttypefind.c,
	gst/elements/gstdisksrc.c, gstplay/gstplay.c, gstplay/gstplay.h,
	gstplay/gstplayprivate.h, plugins/avi/gstavidecoder.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c, test/mp1parse.c,
	tests/.cvsignore, tests/Makefile.am, tests/autoplug.c: Updated the
	autoplugger:   - moved all of the code out of gstpipeline.c to
	autoplug.c   - The autoplugger now creates a GstElement based on
	the given src and     sink caps. The API now is:	GstElement*
	gst_autoplug_caps_list (GList *srcpad, GList *sinkpad, ...);   -
	the typefind function is moved from gstpipeline.c to gstplay.c. Not
	sure	 if this is right behaviour but we need at least a bin in
	order to run	 the typedetect functions.    - fixed a bug in
	gstbin.c where the MANAGER flag of the bin was not cleared     
	when going to the NULL state.	 - a bug in the videosink was
	fixed. It was possible that more instances	of the video widget
	were created, causing major errors.    - commented out most of the
	'old' autoplug examples.    - added the new autoplugger to
	gstplay.c. There still is a bit of hacking	needed to insert a
	queue into the autogenerated element. This will be fixed      when
	the autoplugger can also create the video/audio elements.  Fixed
	some more extranous spaces problems in various files.

2001-02-06 20:06  wtay

	* docs/random/: .cvsignore, wtay/CORBA, wtay/autoplug2: Added CVS
	ignore, and two documents..

2001-02-06 19:39  omegahacker

	* test/ac3play.c: updated ac3play to work with latest libgst

2001-02-05 17:17  omegahacker

	* plugins/avi/gstavidecoder.c: Updated for new getregion setup

2001-02-05 17:16  omegahacker

	* gst/: gstinfo.h, gstpad.c, gstpad.h, gstscheduler.c,
	elements/gstdisksrc.c: Reworked getregion/pullregion stuff.  Region
	is now specified by a type (OFFSET_LEN, TIME_LEN, etc.) and two
	guint64's.  They are offset and len, where offset can be used for
	the time field, and len would be zero or the time unit (say, 33ms
	for video).

2001-02-04 21:38  omegahacker

	* gstplay/gstplay.c, test/mp1parse.c, test/qtest.c: fixed all
	in-use instances of asyncdisksrc

2001-02-04 21:37  omegahacker

	* gst/elements/: Makefile.am, gstasyncdisksrc.c, gstasyncdisksrc.h,
	gstdisksrc.c, gstdisksrc.h, gstelements.c: moved asyncdisksrc to
	disksrc, no point in having a distinction

2001-02-03 07:25  omegahacker

	* configure.in: fixed up the Alpha and ARM processor checks

2001-02-01 17:42  omegahacker

	* plugins/mpeg2/video/recon.c: added ifdef around the x86 code,
	specifically SSE

2001-02-01 17:39  omegahacker

	* plugins/mpeg1/mpeg_play/video.c: added ifdef around the x86 code,
	specifically SSE

2001-01-31 22:54  omegahacker

	* acconfig.h, configure.in, gst/gstarm.h: ARM works!

2001-01-31 20:27  wtay

	* docs/gst/gstreamer-docs.sgml, docs/gst/gstreamer-sections.txt,
	docs/gst/gstreamer.hierarchy, docs/gst/gstreamer.types.in,
	docs/gst/tmpl/gstbin.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstobject.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/gst/tmpl/gstxml.sgml, gst/gstelement.c, gst/gstobject.c,
	gst/gstxml.c, gst/gstxml.h: Documentation updates.

2001-01-30 23:53  wtay

	* examples/xml/createxml.c, examples/xml/runxml.c,
	gst/gstelement.c, gst/gstobject.c, gst/gstobject.h, gst/gstxml.c,
	gst/gstxml.h: Added a first attempt for XML embedding in the main
	core XML.  Objects will emit a signal that a user app can connect
	to in order to insert its XML into the tree.  You can catch the
	object_loaded signal in GstXML to parse the user supplied XML data
	in the stream. The object_loaded signal is implemented with a
	custom made class signal. All GstObject classes now automatically
	create a GstSignalObject that serves as a proxy to the user app
	when an object is loaded. All objects are currently responsible to
	emit the class signal themselves.  runxml and createxml serve as an
	example how the XML hooks can be used to insert and retrieve custom
	XML tags.

2001-01-29 23:51  wtay

	* docs/random/wtay/qos: The early beginnings of a doc about QoS :-)

2001-01-29 23:50  wtay

	* examples/plugins/example.c, examples/plugins/example.h,
	gst/gstxml.c, plugins/audioscale/audioscale.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstaviencoder.c,
	plugins/avi/wincodec/gstwindec.c, plugins/avi/wincodec/gstwinenc.c,
	plugins/cdparanoia/cdparanoia.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3encode/lame/gstlame.c: Lots of plugins fixes where the
	parentage macros were replaced with the correct gst_*_get_parent. 
	Updated the example.  'gstreamer' now is the doc type instead of
	GST-Pipeline

2001-01-29 23:32  wtay

	* docs/random/wtay/namespaces: Added ramblings about the XML
	load/save

2001-01-29 00:06  wtay

	* docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gstxml.sgml,
	editor/gsteditorpad.c, editor/gsteditorproject.c,
	examples/plugins/example.c, examples/xml/createxml.c,
	examples/xml/runxml.c, gst/gstbin.c, gst/gstbin.h, gst/gstclock.c,
	gst/gstelement.c, gst/gstelement.h, gst/gstelementfactory.c,
	gst/gstinfo.c, gst/gstinfo.h, gst/gstobject.c, gst/gstobject.h,
	gst/gstpad.c, gst/gstpad.h, gst/gstparse.c, gst/gstparse.h,
	gst/gstpipeline.c, gst/gstplugin.c, gst/gstqueue.c,
	gst/gstscheduler.c, gst/gstthread.c, gst/gsttypefind.c,
	gst/gstxml.c, gst/gstxml.h, gst/elements/gstasyncdisksrc.c,
	gst/elements/gstaudiosink.c, gst/elements/gstaudiosrc.c,
	gst/elements/gstdisksrc.c, gst/elements/gstfakesink.c,
	gst/elements/gstfakesrc.c, gst/elements/gstfdsink.c,
	gst/elements/gstfdsrc.c, gst/elements/gsthttpsrc.c,
	gst/elements/gstidentity.c, gst/elements/gstpipefilter.c,
	gst/elements/gstsinesrc.c, gst/elements/gsttee.c,
	gstplay/gstmediaplay.c, plugins/au/gstparseau.c,
	plugins/audioscale/audioscale.c, plugins/avi/gstavidecoder.c,
	plugins/avi/gstaviencoder.c, plugins/avi/wincodec/gstwindec.c,
	plugins/avi/wincodec/gstwinenc.c, plugins/capture/v4l/gstv4lsrc.c,
	plugins/capture/v4l/gstv4lsrc.h, plugins/cdparanoia/cdparanoia.c,
	plugins/cdparanoia/cdparanoia.h, plugins/effects/stereo/stereo.c,
	plugins/effects/stereo/stereo.h, plugins/effects/volume/volume.c,
	plugins/effects/volume/volume.h, plugins/esd/esdsink/esdsink.c,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/median/median.c, plugins/filters/median/median.h,
	plugins/filters/smooth/smooth.c, plugins/filters/smooth/smooth.h,
	plugins/icecast/icecastsend/icecastsend.c,
	plugins/jpeg/Makefile.am, plugins/jpeg/gstjpeg.c,
	plugins/jpeg/gstjpeg.h, plugins/jpeg/gstjpegdec.c,
	plugins/jpeg/gstjpegdec.h, plugins/jpeg/gstjpegenc.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.h,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.h,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3dec/ac3dec.h,
	plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.h,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/parse/mpeg2parse.h,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/video/gstmpeg2play.h,
	plugins/mpeg2/videoparse/mp2videoparse.c,
	plugins/rtjpeg/rtjpegdec.c, plugins/rtjpeg/rtjpegenc.c,
	plugins/rtjpeg/rtjpegenc.h, plugins/vcdsrc/vcdsrc.c,
	plugins/vcdsrc/vcdsrc.h, plugins/videoscale/videoscale.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/smoothwave/smoothwave.h,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c,
	plugins/visualization/vumeter/vumeter.h,
	plugins/vorbis/vorbisenc.c, plugins/wav/gstparsewav.c,
	plugins/wav/gstparsewav.h, test/record.c, tests/sched/runxml.c,
	tools/gstreamer-inspect.c: This is a megapatch with the following
	changes:
	
	 - moved the gchar *name to GstObject, removed the ones in
	GstElement and
	   GstPad.
	 - moved the parent handling completely into GstObject. This cause
	*all* of
	   the plugins to fail (except those that used gst_pad_get_parent)
	 - rearanged the XML save handling.
	   - GstObject now has a class function save/restore_thyself.
	   - GstObject has a generic method gst_object_save_thyself, this
	makes it
	     possible to fire a signal wehever a new object is loaded. This
	is needed
	     so we can add XML save hooks.
	   - GstXML API has changed slightly. You now have to create a
	GstXML object
	     first before you can actually load something. This makes it
	possible to
	     attach a signal to GstXML whenever an object is loaded. I'm
	not sure we
	     will keep this interface.
	 - GstObject can now print the path_string without knowing about
	the GstPad and
	   GstElement types.
	 - Added gst_bin_get_by_name_recurse_up to lookup an element in the
	current
	   element hierarchy.
	 - added XML namespaces to the saved pipelines the namespace is:
	   http://gstreamer.net/gst-core/1.0/
	   namespaces are needed to distinguish user generated XML from the
	core XML.
	
	Note that the plugins still contain a macro GST_OBJECT_PARENT that
	will be replaced with gst_pad_get_parent shortly.

2001-01-26 23:35  wtay

	* REQUIREMENTS: Added the requirement for libshout

2001-01-26 23:33  wtay

	* configure.in: For the icecast sender

2001-01-26 23:33  wtay

	* plugins/: Makefile.am, icecast/Makefile.am,
	icecast/icecastsend/.cvsignore, icecast/icecastsend/Makefile.am,
	icecast/icecastsend/icecastsend.c,
	icecast/icecastsend/icecastsend.h: Added an icecast send plugin
	based on libshout

2001-01-26 18:15  richardb

	* plugins/esd/esdsink/esdsink.c: Fix memory leak: wasn't unreffing
	the buffer.

2001-01-23 20:03  wtay

	* docs/gst/gstreamer-sections.txt, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, gst/gstelement.c,
	gst/gstelement.h, gstplay/gstmediaplay.c: Updated the docs with the
	new _request methods

2001-01-23 18:42  richardb

	* gst/gstelement.c, gst/gstelement.h, tests/tee.c: Add
	gst_element_request_compatible_pad and remove
	gst_element_request_pad.  Implemented something reasonable for
	gst_element_request_compatible_pad, but havn't tested much: it
	won't work for tee because the pad templates have no caps, and
	negotiation is not yet written, so it is assumed that the tee pads
	can't connect to anything.

2001-01-22 23:39  richardb

	* examples/launch/mp3play: Fix launch so that it can play a list of
	files, now that EOS works enough.  (It needs to not have to restart
	gstreamer each time, but good enough for now ;-) )

2001-01-21 23:20  wtay

	* docs/gst/gstreamer-docs.sgml, docs/gst/gstreamer-sections.txt,
	docs/gst/tmpl/gstbin.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstinfo.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstparse.sgml, docs/gst/tmpl/gstqueue.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gstxml.sgml,
	gst/gstautoplug.c, gst/gstbin.c, gst/gstelement.h, gst/gstpad.c,
	gst/gstpad.h, gst/gstparse.c, gst/gstqueue.c, gst/gstthread.c,
	gst/gstxml.c, gst/gstxml.h, tools/gstreamer-inspect.c: Docs updates
	Added XML load from memory functionality Undid the videosink patch,
	something else is wrong now on my machine: no MMX acceleration :-(

2001-01-21 17:36  wtay

	* docs/random/wtay/eos-19012001: An overview of the current EOS
	handling algorithm.

2001-01-21 16:19  wtay

	* docs/random/dynpads: Ramblings about dynamic pads

2001-01-21 16:18  wtay

	* docs/random/omega/testing/.cvsignore: [no log message]

2001-01-21 16:10  wtay

	* docs/gst/.cvsignore: updated to exclude various docs formats
	(.ps, .dvi,...)

2001-01-21 16:08  wtay

	* tests/eos/: .cvsignore, case7.c: Added another test case, a bin
	in a thread, to test EOS. still hangs because gtk_main hangs in a
	__poll somewhere.

2001-01-21 16:06  wtay

	* gst/gstbin.c, gst/gstbin.h, gst/gstelement.c, gst/gstthread.c,
	tests/eos/Makefile.am, tests/eos/case4.c, tests/eos/case5.c,
	tools/gstreamer-launch.c: More eos handling, bin in bin is handled
	correctly now.	Updated gstreamer-launch to loop while !EOS.

2001-01-21 01:20  omegahacker

	* docs/random/omega/testing/framework: more complete(?) XML
	description of example

2001-01-21 01:03  omegahacker

	* docs/random/omega/testing/framework: initial thoughts on
	framework

2001-01-21 00:57  wtay

	* gst/elements/gstaudiosink.c: Applied the patch from Sepp Wijnands
	<mrrazz@garbage-coderz.net> that solves the 'OSS hangs when opening
	the device when in use' bug.

2001-01-20 20:08  omegahacker

	* docs/design/: part-conventions.txt, part-gstelement.txt,
	part-gstobject.txt, part-standards.txt: current set of design docs,
	in .txt format

2001-01-20 19:20  omegahacker

	* docs/random/omega/testing/: Makefile, gstobject.c, gstobject.txt:
	added first hack at testing suite design

2001-01-20 18:20  wtay

	* gst/: gstbin.c, gstscheduler.c: Check for NULL buffers before
	chaining/pushing them to the next element.  NULL buffers happen on
	EOS.  gst_bin_iterate now returns a gboolean indicating something
	useful happened.  It the bin is EOS, it returns FALSE.

2001-01-20 17:59  wtay

	* gst/: gstbin.c, gstbin.h, gstelement.c, gstqueue.c,
	gstscheduler.c, gstthread.c: More EOS changes.	When a bin2 is
	found inside a bin1, we add the bin2 to the EOS providers of the
	bin1. When there is nothing more to schedule in bin1 and bin2 has
	fired EOS, bin1 is in EOS.  The queue overrides the EOS
	notification and calls EOS on the src pad when the queue is empty
	and the sink pad is in EOS.

2001-01-20 17:53  wtay

	* tests/eos/: .cvsignore, Makefile.am, case3.c, case4.c, case5.c,
	case6.c: More test cases for EOS handling

2001-01-20 03:36  omegahacker

	* tests/: paranoia.c, queue.c, states.c: updated tests code to new
	ghostpad API

2001-01-20 03:33  omegahacker

	* test/: ac3play.c, avi2mpg.c, aviparse.c, mp1parse.c, mp1tomp1.c,
	mp2toavi.c, mp2tomp1.c, mpeg2parse.c, qtest.c, vidcapture.c,
	vidcapture2.c: updated test programs to new ghostpad API

2001-01-20 03:28  wtay

	* gst/: gstelement.c, elements/gstfakesrc.c: Make sure the
	loopfunction ends when an element goes to EOS.	Fixed the fakesrc
	bug found by taaz.

2001-01-20 03:10  wtay

	* gst/: cothreads.c, gstbin.c, gstbin.h, gstelement.c,
	gstelement.h, gstpad.c, gstscheduler.c: A very small change to make
	eos somewhat work. no inner bins are checked.  When an element
	fires EOS, the chain with that element is removed from the
	scheduler (marked inactive). If all chains are inactive, the bin
	fires EOS.

2001-01-20 03:02  wtay

	* tests/eos/: case2.c, case3.c: Two more test cases

2001-01-20 02:57  omegahacker

	* gst/: gstelement.c, gstelement.h, gstinfo.h, gstpad.c, gstpad.h,
	gstparse.c: Got ghostpads to work, even in -launch.  Needs more
	testing still.

2001-01-19 23:34  wtay

	* plugins/mp3decode/mpg123/Makefile.am: Added non x86 code to extra
	dist

2001-01-19 22:15  wtay

	* docs/gst/Makefile.am, docs/gst/gstreamer-docs.sgml,
	docs/gst/gstreamer-sections.txt, docs/gst/tmpl/gstarch.sgml,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstfakesrc.sgml,
	docs/gst/tmpl/gstidentity.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstparse.sgml, docs/gst/tmpl/gstqueue.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gsttee.sgml,
	gst/cothreads.h, gst/gstelement.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstpad.c, gst/gstpad.h,
	plugins/mpeg2/ac3dec/downmix.c, test/mp1parse.c, tests/props.c,
	tests/tee.c: API docs updates

2001-01-19 09:37  omegahacker

	* editor/gsteditorelement.c, editor/gsteditorimage.c,
	editor/gsteditorpad.c, editor/gsteditorpalette.c, gst/gstalpha.h,
	gst/gstbin.c, gst/gsti386.h, gst/gstinfo.h, gst/gstpad.c,
	gst/gstpad.h, gst/gstppc.h, gst/gstscheduler.c, test/qtest.c,
	tests/eos/Makefile.am: Major cleanup of the latest ghostpad
	changes.  Fixed everything that broke, correctly.  Someone will
	want to go update the API doc templates.

2001-01-19 09:14  omegahacker

	* gst/: Makefile.am, cothreads.c, cothreads.h, gstarch.h, gstarm.h:
	more cothreads cleanup, and first pass at ARM code

2001-01-19 07:48  omegahacker

	* gst/cothreads.c: ALPHA COTHREADS WORK!  Worked around a nasty
	stack issue that probably can't be solved anyway.  Tomorrow the UDB
	build will commence, and let the best guess win!

2001-01-19 02:23  omegahacker

	* gst/cothreads.c, gst/gstautoplug.c, gst/gstbin.c, gst/gstpad.c,
	gst/gstpad.h, gst/gstpipeline.c, gst/gstscheduler.c,
	plugins/avi/audiocodecs.c, plugins/effects/volume/volume.c,
	tools/gstreamer-inspect.c: First pass at updating to new ghostpad
	system.  The objects are in place, I now need to go and get all the
	Bin end of things worked out.  Testing should be fairly easy, at
	least for verification.
	
	Everything I've tried so far works with no changes, with is
	amazing.  That's just cool.  Once again we rewrite an entire
	subsystem, and nothing else notices anything but the new features
	;-)

2001-01-19 02:10  richardb

	* docs/manual/: pads.sgml, states.sgml: Fix some typos, and grammar
	errors.

2001-01-19 02:06  richardb

	* docs/fwg/: Makefile.am, firstplugin.sgml,
	gst-plugin-writers-guide.sgml, loopbased.sgml, testapp.sgml,
	typesnprops.sgml: Wrote a little more text, and did more of the
	work on making the sections.  When this manual has text in all
	these sections its going to be pretty impressive...

2001-01-19 00:07  wtay

	* tests/: .cvsignore, Makefile.am, tee.c, eos/Makefile.am: Added a
	little tee test program.

2001-01-19 00:07  wtay

	* tools/gstreamer-inspect.c: Updated -inspect to display the new
	pad presence REQUEST.

2001-01-19 00:02  wtay

	* gst/: gstqueue.c, gstqueue.h, gsttypefind.c, gsttypefind.h,
	elements/gstqueue.c, elements/gstqueue.h, elements/gsttypefind.c,
	elements/gsttypefind.h: And here they are....

2001-01-19 00:01  wtay

	* gst/: Makefile.am, gst.c, gstbin.c, elements/Makefile.am,
	elements/gstelements.c: Moved queue and typefind elements to the
	core since they are referenced by name.

2001-01-18 23:46  wtay

	* gst/: Makefile.am, gst.c, gst.h, gstelement.c, gstelement.h,
	gstpad.c, gstpad.h, gsttee.c, gsttee.h, elements/Makefile.am,
	elements/gstelements.c, elements/gsttee.c, elements/gsttee.h: Added
	mthodes to request an element to create pads:
	gst_element_request_pad* This can be used to construct a tee and a
	muxer/mixer/aggregator element.  Moved the tee element to elements/
	because it can now be handled with the new pad request features. 
	The padfactory also has some changes: a pad can now be of presence
	REQUEST, which means that the pad can be requested from this plugin
	(doh).

2001-01-18 15:29  richardb

	* plugins/esd/esdsink/esdsink.c,
	plugins/visualization/synaesthesia/core.c,
	plugins/visualization/synaesthesia/core.h,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/synaesthesia/synaesthesia.h,
	plugins/visualization/vumeter/vumeter.c, tests/caps.c,
	tests/padfactory.c, tests/props.c, tests/registry.c: Some more
	fixes for libxml.  Also, some code formatting changes in esdsink,
	some further fixes to vumeter, and some work on synaesthesia to
	make it closer to working (it doesn't fully work yet, though. :( )

2001-01-18 11:16  richardb

	* gst/gstbin.c, tools/gstreamer-register.c, gst/gstcaps.c,
	gst/gstcaps.h, gst/gstelement.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstpad.c, gst/gstpad.h,
	gst/gstplugin.c, gst/gstplugin.h, gst/gstprops.c, gst/gstprops.h,
	gst/gsttype.c, gst/gstxml.c, gst/gstxml.h: Fixes to work with
	libxml2.  Also improved a couple of debugging messagse.

2001-01-18 08:54  omegahacker

	* gst/: Makefile.am, cothreads.c, gstalpha.h, gstarch.h, gsti386.h,
	gstppc.h: Updates to cothreads code, including non-working alpha. 
	Changed things a bit, including PPC.  Not having a PPC machine, I
	need someone to test these changes and report back whether they
	worked or not.

2001-01-18 02:25  richardb

	* plugins/visualization/vumeter/: vumeter.c, vumeter.h: Fix vumeter
	so that it compiles and runs.  It doesn't do much of use though:
	simply produces some debug output, and has a set of arguments which
	report the volume.  It might be more useful if it produced its
	output from a source pad, in an appropriate format, so that another
	plugin could graphically display this.

2001-01-17 07:43  wtay

	* examples/typefind/: Makefile, Makefile.am: Oops

2001-01-17 01:59  richardb

	* tools/gstreamer-register.c: Fix permissions problems: the
	directory will now always be created mode 2755.  In addition, the
	temporary file is given restricted permissions, and the permissions
	on the registry file are preserved if one already exists, or 666
	(and modified by the umask) if one doesn't already exist.

2001-01-17 00:02  wtay

	* configure.in: Added typefind example to configure.in

2001-01-17 00:01  wtay

	* examples/: autoplug/autoplug.c, typefind/Makefile,
	typefind/typefind.c: Added the typefind example from the manual

2001-01-16 23:35  wtay

	* docs/manual/: dynamic.sgml, programs.sgml, typedetection.sgml,
	utility.sgml: Manual updates and additions

2001-01-15 21:10  richardb

	* plugins/esd/esdsink/esdsink.c: Correct the pads for esdsink
	plugin, after I realised they were wrong during a conversation
	about pads with wtay. ;-)

2001-01-15 19:25  wtay

	* gst/: gstbin.c, gstelement.c: Fixed the state change code in
	gstelement that broke with the conversion of the states to a
	bitfield.

2001-01-15 00:53  richardb

	* plugins/mp3decode/mpg123/: layer3.c, mpg123.h: Added some
	conditionals to ensure that the i486 stuff is used only in x86
	architectures.	Now links on PPC.

2001-01-15 00:53  wtay

	* docs/manual/: dynamic.sgml, pads.sgml, quotes.sgml: Updated docs
	with dynamic pads Fixed quotes

2001-01-14 22:28  wtay

	* gstplay/Makefile.am: Added gst_libs to Makefile

2001-01-14 22:25  richardb

	* docs/manuals.mak: Fix build problem when don't have db2html, or a
	directory to put the manual in: was trying to make a symlink in the
	non-existant directory, and causing the build to stop.

2001-01-14 22:24  richardb

	* gst/Makefile.am: Adding nasty hack to rules to generate
	cothreads.{o,lo}, to get dependencies right.  Rules copied from
	automake, and therefore a bit dependent on automake keeping doing
	dependency things the same kind of way, but it should work as long
	as automake puts dependencies into .deps/*.P

2001-01-14 22:23  wtay

	* tests/sched/Makefile.am: Fixed a Makefile error

2001-01-14 21:55  omegahacker

	* Makefile.am, acconfig.h, configure.in,
	components/bonobo-gstmediaplay/Makefile.am, docs/gst/Makefile.am,
	docs/plugins/Makefile.am, docs/random/omega/build/TODO,
	editor/Makefile.am, examples/autoplug/Makefile.am,
	examples/helloworld/Makefile.am, examples/helloworld2/Makefile.am,
	examples/plugins/Makefile.am, examples/queue/Makefile.am,
	examples/queue2/Makefile.am, examples/queue3/Makefile.am,
	examples/queue4/Makefile.am, examples/thread/Makefile.am,
	examples/xml/Makefile.am, gst/Makefile.am, gst/gst.h,
	gst/gst_private.h, gst/gstcaps.h, gst/gstelement.h, gst/gstpad.h,
	gst/gstplugin.h, gst/gstprops.h, gst/elements/Makefile.am,
	gst/types/Makefile.am, gstplay/Makefile.am,
	libs/getbits/Makefile.am, libs/idct/Makefile.am,
	libs/putbits/Makefile.am, libs/riff/Makefile.am,
	plugins/au/Makefile.am, plugins/audioscale/Makefile.am,
	plugins/avi/Makefile.am, plugins/avi/gstavidecoder.h,
	plugins/avi/gstaviencoder.h, plugins/avi/wincodec/Makefile.am,
	plugins/capture/v4l/Makefile.am, plugins/cdparanoia/Makefile.am,
	plugins/cobin/Makefile.am, plugins/dvdsrc/Makefile.am,
	plugins/effects/stereo/Makefile.am,
	plugins/effects/volume/Makefile.am,
	plugins/esd/esdsink/Makefile.am,
	plugins/filters/ladspa/Makefile.am,
	plugins/filters/median/Makefile.am,
	plugins/filters/smooth/Makefile.am, plugins/jpeg/Makefile.am,
	plugins/mp3decode/mpg123/Makefile.am,
	plugins/mp3decode/parse/Makefile.am,
	plugins/mp3decode/types/Makefile.am,
	plugins/mp3decode/xa/Makefile.am,
	plugins/mp3decode/xing/Makefile.am,
	plugins/mp3encode/lame/Makefile.am,
	plugins/mpeg1/mpeg1encoder/Makefile.am,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpegaudio/Makefile.am,
	plugins/mpeg1/mpegtypes/Makefile.am,
	plugins/mpeg1/parse/Makefile.am,
	plugins/mpeg1/system_encode/Makefile.am,
	plugins/mpeg1video/parse/Makefile.am,
	plugins/mpeg2/ac3dec/Makefile.am,
	plugins/mpeg2/ac3parse/Makefile.am,
	plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2enc/Makefile.am,
	plugins/mpeg2/mpegtypes/Makefile.am,
	plugins/mpeg2/parse/Makefile.am,
	plugins/mpeg2/subtitles/Makefile.am,
	plugins/mpeg2/video/Makefile.am,
	plugins/mpeg2/videoparse/Makefile.am, plugins/rtjpeg/Makefile.am,
	plugins/vcdsrc/Makefile.am, plugins/videoscale/Makefile.am,
	plugins/visualization/smoothwave/Makefile.am,
	plugins/visualization/spectrum/Makefile.am,
	plugins/visualization/synaesthesia/Makefile.am,
	plugins/visualization/vumeter/Makefile.am,
	plugins/vorbis/Makefile.am, plugins/wav/Makefile.am,
	test/Makefile.am, test/bindings/Makefile.am, test/xml/Makefile.am,
	tests/Makefile.am, tests/eos/Makefile.am, tests/sched/Makefile.am:
	Massive build fixup.  Will send message to -devel list later with
	details on the changes and what they mean for Makefile.am writers. 
	Check docs/random/omega/build/TODO for a list of things that I had
	to make sure of.
	
	NOTE: this requires a complete rebuild of all plugins, since I also
	changed the STATE enum to a bitfield instead of sequential numbers.

2001-01-14 21:38  omegahacker

	* tools/: Makefile.am, gstreamer-launch.c: fixed an odd case with
	the launcher, didn't deal with argc properly

2001-01-14 14:57  wtay

	* gst/cothreads.c: Change MAP_ANONYMOUS to MAP_ANON in the mmap for
	BSD compatibility

2001-01-14 14:43  wtay

	* gst/elements/: gstfakesink.c, gstfakesrc.c, gstfakesrc.h,
	gstidentity.c, gstqueue.c: Added an extra signal_cond to queue to
	make sure that the waiting thread is woken up. Can somebody with
	queue problems verifify that this does improve the situation a bit.
	I'm suspecting that something else is going on, like a pthreads bug
	or something.  Small updates to the fake elements.

2001-01-14 12:42  richardb

	* REQUIREMENTS: Added a couple of lines about debian packages.

2001-01-14 04:45  wtay

	* docs/manual/quotes.sgml: Updated quotes :-)

2001-01-13 19:04  wtay

	* docs/random/wtay/eos5: Antoher way of dealing with EOS. This
	proposal does not use the recursion to propagate the EOS signal.
	This implies that an element cannot deny an EOS signal anymore but
	since the signal is generated when a NULL buffer is pushed,
	somebody did something wrong anyway.

2001-01-13 15:47  wtay

	* docs/random/wtay/eos4: Added an updated use case for EOS
	handling.

2001-01-13 14:45  wtay

	* docs/random/TODO-post-0.1.0: Updated the TODO list...

2001-01-13 14:25  wtay

	* tools/gstreamer-register.c: Fixed the directory permission Bug
	#128637

2001-01-13 13:51  wtay

	* gst/: gstbin.c, gstbin.h, gstcaps.h, gstelement.c, gstelement.h,
	gstpad.c, gstpad.h, gstplugin.h, gstprops.h, gstxml.h: include
	parser.h instead of gnome-xml/parser.h untill xml-config is
	fixed...

2001-01-13 02:55  omegahacker

	* configure.in: turned static library build back off for
	development

2001-01-13 02:12  wtay

	* docs/random/wtay/eos3: Added case6: a multithreaded audio mixer
	setup.

2001-01-13 00:14  wtay

	* plugins/mp3decode/mpg123/mpg123.c: Use glib function to convert
	be->le

2001-01-12 23:37  wtay

	* libs/getbits/gstgetbits.c: Added config.h as an include to make
	sure BE/LE stuff works

2001-01-12 22:44  wtay

	* docs/random/wtay/eos3: Added a simple mp3 mixer pipeline setup
	with an explanation of how EOS could be handled with it.

2001-01-12 20:54  wtay

	* ChangeLog: Updated ChangeLog :-)

2001-01-12 20:48  wtay

	* plugins/mpeg2/mpeg2dec/: idct.c, motion_comp.c: Make sure the
	mmx/sse code is not used on non i386

2001-01-12 20:44  wtay

	* configure.in: Check for more atomic operations

2001-01-12 20:25  wtay

	* plugins/mpeg2/mpeg2dec/decode.c: Removed include from mpeg2dec
	for mmx.h

2001-01-12 20:15  wtay

	* plugins/mpeg2/mpeg2dec/Makefile.am: Made sure mmx compilation is
	not performed on non intel

2001-01-12 18:51  wtay

	* docs/random/wtay/: eos2, eos3: While typing on eos2 about the EOS
	handling, I got an idea and started eos3. eos3 takes a different
	approach by merging the eos detection and the scheduling in a quite
	elegant way. I'm not sure we handle the scheduling like this
	though...

2001-01-11 23:20  wtay

	* plugins/mpeg1/mpeg_play/recon_sse.s: Removed /* */ comments and
	replaced them with a # comment as suggested by Peter Weilbacher

2001-01-11 23:15  wtay

	* plugins/mpeg2/mpeg2enc/: bdist1_mmx.s, bdist1_sse.s,
	bdist2_mmx.s, dist1_00_mmx.s, dist1_00_sse.s, dist1_01_mmx.s,
	dist1_01_sse.s, dist1_10_mmx.s, dist1_10_sse.s, dist1_11_mmx.s,
	dist1_11_sse.s, dist2_mmx.s, variance_mmx.s: Fixed the comments in
	the asm sources from /* */ to #, it seems to confuse some compilers

2001-01-11 22:09  omegahacker

	* gst/: gstpad.c, gstpad.h: renamed private to element_private, to
	make obvious its usage restrictions

2001-01-11 22:03  omegahacker

	* gst/: gstpad.c, gstpad.h: added gpointer private to pads, so
	elements can store ints or pointers for their own use

2001-01-11 21:53  wtay

	* Makefile.am: Added the REQUIREMENTS file to distdir

2001-01-11 09:42  omegahacker

	* docs/random/omega/: IDEAS, TODO-0.1.0, TYPE_FOURCC, caps2, caps3,
	debug-commit, eos, filterfactory, output_policies, pad-negotiation,
	padtemplates, plan-generation, sched-case, sched-commit1, sched2,
	scheduling, type-properties, EOS/chain-walkthrough, sched/chains,
	sched/walkthrough-72: added all of my un-committed random doc
	files, as backup <g>

2001-01-11 00:35  omegahacker

	* gstreamer.spec.in: updated spec file to create -devel package too

2001-01-11 00:33  omegahacker

	* gst/gstinfo.c: removed some spare newlines

2001-01-10 21:28  omegahacker

	* docs/manual/programs.sgml: updated -launch examples

2001-01-10 09:14  omegahacker

	* gst/gstxml.c, docs/gst/tmpl/gstxml.sgml: minor docs fix

2001-01-09 21:19  wtay

	* configure.in: Added --with-win32-libdir to configure

2001-01-09 21:06  omegahacker

	* acconfig.h, configure.in: added config option for win32 dll and
	re-enabled static building

2001-01-09 20:54  omegahacker

	* docs/manual/quotes.sgml: latest irc insanity

2001-01-09 20:53  wtay

	* REQUIREMENTS: Added /usr/lib/win32/ windows libraries in the
	REQUIREMENTS

2001-01-09 20:45  omegahacker

	* tools/gstreamer-register.c: added unlink() of registry file, and
	moved info enable up

2001-01-09 06:48  omegahacker

	* tools/gstreamer-launch.c: typo fix

2001-01-09 04:42  omegahacker

	* acconfig.h, plugins/cdparanoia/cdparanoia.c: added HAVE_GNOME to
	acconfig.h and added debugging output to cdparanoia

2001-01-09 04:39  omegahacker

	* tools/: Makefile.am, gstreamer-inspect.c, gstreamer-launch.c,
	gstreamer-register.c: various changes, including making -launch use
	the library version

2001-01-09 04:36  omegahacker

	* gst/gstplugin.c: fixed a leak

2001-01-08 23:57  richardb

	* docs/gst/.cvsignore: cvsignore gstreamer-scan{,.c}

2001-01-08 23:55  richardb

	* configure.in, docs/manuals.mak, docs/fwg/Makefile.am,
	docs/fwg/firstplugin.sgml, docs/fwg/gst-plugin-writers-guide.sgml,
	docs/fwg/titlepage.sgml, docs/manual/quotes.sgml,
	examples/Makefile.am, examples/plugins/.cvsignore,
	examples/plugins/Makefile.am, examples/plugins/example.c,
	examples/plugins/example.h, plugins/example.c, plugins/example.h:
	Move plugin example code to new location, and put it into build
	system.  Add work on firstplugin chapter of pwg.  Fix typo in
	quotes.  Add @'s before commands in manuals.mak

2001-01-08 22:08  wtay

	* docs/Makefile.am, docs/manual/components.sgml,
	docs/manual/queues.sgml, docs/manual/quotes.sgml,
	docs/manual/states.sgml, docs/manual/xml.sgml,
	docs/plugins/Makefile.am, docs/plugins/gstdoc-scanobj,
	docs/random/testing/syntax, examples/xml/runxml.c, gst/gstxml.c,
	tests/sched/testcases1.tc: Manual updates.  fixes to gstxml.c
	gst_xml_get_element was broken

2001-01-08 22:04  richardb

	* gst/: gstelement.c, gstelement.h: Correct typo in comment, and
	make another comment more helpful.

2001-01-08 22:03  richardb

	* plugins/esd/esdsink/esdsink.c: Move esdsink into the sink/
	position in the heirarchy.

2001-01-08 20:15  richardb

	* editor/gsteditorproperty.c: Display what the type of an element
	is, as the first thing in the properties box.

2001-01-08 08:32  omegahacker

	* docs/manual/quotes.sgml: added another, um, exchange

2001-01-08 01:43  richardb

	* tools/gstreamer-launch.c: Fix typo in error message.

2001-01-08 01:27  richardb

	* docs/manual/: Makefile.am, gstreamer-manual.sgml, quotes.sgml:
	Add a "quotes" section to the gstreamer manual.  This may not be an
	appropriate place to have this - feel free to remove it.  But I
	think this should live _somewhere_.

2001-01-08 01:23  richardb

	* docs/random/filter-writers-guide: Remove text version of headings
	for fwg.  This is now contained in the SGML

2001-01-08 01:21  richardb

	* docs/fwg/: .cvsignore, Makefile.am,
	gst-filter-writers-guide.sgml, gst-plugin-writers-guide.sgml:
	Renamed the filter writers guide to plugin writers guide.  Added in
	the planned section headings.

2001-01-07 22:59  wtay

	* tests/sched/testcases1.tc: Added a sample tescase file

2001-01-07 22:36  wtay

	* docs/random/testing/syntax: Added iterations

2001-01-07 22:34  wtay

	* docs/random/testing/syntax: Added a plan for regression test plan
	definitions

2001-01-07 18:36  wtay

	* gst/: gst.c, gsttee.c, gsttee.h: Handle the tee element like bin,
	thread, pipeline, so that it can be used in gstreamer-inspect and
	gstreamer-launch...

2001-01-07 17:09  wtay

	* configure.in, docs/gst/tmpl/gstasyncdisksrc.sgml,
	docs/gst/tmpl/gstaudiosink.sgml, docs/gst/tmpl/gstaudiosrc.sgml,
	docs/gst/tmpl/gstbin.sgml, docs/gst/tmpl/gstdisksrc.sgml,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstfakesink.sgml,
	docs/gst/tmpl/gstfakesrc.sgml, docs/gst/tmpl/gstfdsink.sgml,
	docs/gst/tmpl/gstfdsrc.sgml, docs/gst/tmpl/gsthttpsrc.sgml,
	docs/gst/tmpl/gstidentity.sgml, docs/gst/tmpl/gstobject.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstpipefilter.sgml,
	docs/gst/tmpl/gstqueue.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/gst/tmpl/gstsinesrc.sgml, docs/gst/tmpl/gstthread.sgml,
	docs/gst/tmpl/gsttypefind.sgml, gstplay/gstmediaplay.c,
	gstplay/gstmediaplay.glade: Made sure -g is not used when no
	--enable-debug Updated AUTHORS in gstmediaplay

2001-01-07 16:48  richardb

	* tools/gstreamer-register.c: Fix typos in save_regsitry()

2001-01-07 16:14  richardb

	* tools/gstreamer-register.c: Folling wtays suggestion, I was going
	to start using xmlDocDump, to avoid a symlink attack on the
	temporary registry file.  Unfortunately, xmlDocDump doesn't give
	any indication whether its successful, so I've #ifdefed this out
	and left the original in place.  Since the tmp file is in
	/etc/gstreamer, this should be okay for the moment, but I shall ask
	the libxml people to add some way of getting the success value of
	DocDump so we can use that in future.

2001-01-07 15:31  richardb

	* acinclude.m4: Slight tweak: now I just need to send the modified
	version off to the alsa people.

2001-01-07 15:25  richardb

	* acinclude.m4: New macro for testing for ALSA libraries. 
	Understands the ACTION_IF_FOUND and ACTION_IF_NOT_FOUND arguments.

2001-01-07 15:20  richardb

	* gst/cothreads.c, gst/gstplugin.c, tools/gstreamer-register.c:
	gstreamer-register will now never cause the ** WARNING **:
	gstplugin: registry needs rebuild warning to appear - sets a hidden
	global in gstplugin.c to turn the warning off.	Fix a warning in
	gst/cothreads.c (function was declared extern, defined static)

2001-01-07 14:55  richardb

	* plugins/esd/esdsink/esdsink.c: FIx a tiny memory leak.

2001-01-07 14:49  wtay

	* gst/elements/: gstqueue.c, gstqueue.h: Greatly simplyfied queue
	locking by only using the elements mutex. This should fix the
	locking problems we had...

2001-01-07 14:32  richardb

	* plugins/esd/esdsink/esdsink.c: And another tiny warning.

2001-01-07 14:29  richardb

	* plugins/esd/esdsink/esdsink.c: Fix a couple of warnings.

2001-01-07 14:16  richardb

	* acinclude.m4: Don't add -lasound etc to LIBS if ALSA turns out
	not to be installed.

2001-01-07 14:05  richardb

	* acinclude.m4: Add an acinclude containing AM_PATH_ALSA, so wtay
	can compile.  Will shortly update this with a slightly better
	macro.

2001-01-07 13:58  richardb

	* configure.in, docs/manuals.mak: Add tests for -L png and -L eps
	arguments to fig2dev.  Correct slip in docs/manuals.mak which used
	HAVE_DB2PS instead of HAVE_PS2PDF.

2001-01-07 08:40  omegahacker

	* configure.in: added check for libasound, and fixed check for
	cdparanoia

2001-01-07 08:01  omegahacker

	* plugins/filters/ladspa/gstladspa.c: fixed a bug: in an
	over-zealous attempt to squash leaks, I put the g_free too early

2001-01-07 07:46  omegahacker

	* plugins/filters/ladspa/: gstladspa.c, search.c: some leak fixes
	to both the plugin and the ladspa-provided code

2001-01-07 07:45  omegahacker

	* gst/: gstcaps.c, gstcpu.c, gstelementfactory.c, gstpad.c,
	gstparse.c, gstplugin.c, gstprops.c, gsttype.c: more leak fixes

2001-01-07 07:01  richardb

	* gst/gstplugin.c, tools/gstreamer-register.c: Check plugin
	repository up-to-dateness by scanning through all directories on
	path, and checking that they and all their files are older than the
	repository.  Give warning message if not.

2001-01-07 05:54  richardb

	* tools/gstreamer-register.c: Test xmlSaveFile return value
	correctly (had to get source to find out what it meant...) 
	gstreamer-register now seems to work fine, even in a non-standard
	location.

2001-01-07 05:35  richardb

	* configure.in: Fix tiny slip which made configdir still always be
	/etc/gstreamer/

2001-01-07 05:30  richardb

	* acconfig.h, configure.in, docs/manual/factories.sgml,
	gst/gstplugin.c, tools/gstreamer-register.c: Config directory
	(which currently just holds the registry)ecan now be set by
	configure --with-configdir=<directory path>

2001-01-07 04:51  richardb

	* tools/gstreamer-register.c: Almost completely rewritten
	gstreamer-register.  Now checks most errors that can happen, and
	displays a useful message.

2001-01-07 04:28  omegahacker

	* gst/: gstbin.c, gstinfo.h, gstscheduler.c: removed a leak

2001-01-07 04:00  omegahacker

	* gst/: Makefile.am, gst.h, gstparse.c, gstparse.h: turned -launch
	capabilities into gst_parse_launch()

2001-01-07 03:42  wtay

	* gst/elements/: gstidentity.c, gstidentity.h, gstqueue.c,
	gstqueue.h: Added sleep time to identity Added timeout value in
	queue (not activated yet)

2001-01-07 03:06  omegahacker

	* tools/gstreamer-launch.c: fixed a bug with NULL args, but need to
	fix the parser that created them

2001-01-07 02:30  wtay

	* docs/random/queue: Added a deadlock case for the queue

2001-01-07 02:23  richardb

	* docs/fwg/: Makefile.am, concepts.sgml,
	gst-filter-writers-guide.sgml, intro.sgml: More updates: now have
	headings for the second section too, and some text for it... ;-)

2001-01-07 00:12  richardb

	* docs/fwg/: gst-filter-writers-guide.sgml, intro.sgml,
	titlepage.sgml: Wrote introduction, and changed name to plugin
	writers guide (though files still need rename).  I'll leave the
	filenames as is for now, since the name might still change again...

2001-01-06 22:05  omegahacker

	* docs/gst/tmpl/cothreads.sgml, docs/gst/tmpl/gstasyncdisksrc.sgml,
	docs/gst/tmpl/gstaudiosink.sgml, docs/gst/tmpl/gstaudiosrc.sgml,
	docs/gst/tmpl/gstautoplug.sgml, docs/gst/tmpl/gstbin.sgml,
	docs/gst/tmpl/gstbuffer.sgml, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstdisksrc.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstesdsink.sgml, docs/gst/tmpl/gstfakesink.sgml,
	docs/gst/tmpl/gstfakesrc.sgml, docs/gst/tmpl/gstfdsink.sgml,
	docs/gst/tmpl/gstfdsrc.sgml, docs/gst/tmpl/gsthttpsrc.sgml,
	docs/gst/tmpl/gstidentity.sgml, docs/gst/tmpl/gstmeta.sgml,
	docs/gst/tmpl/gstobject.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstpipefilter.sgml, docs/gst/tmpl/gstpipeline.sgml,
	docs/gst/tmpl/gstprops.sgml, docs/gst/tmpl/gstqueue.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gstsinesrc.sgml,
	docs/gst/tmpl/gstthread.sgml, docs/gst/tmpl/gsttype.sgml,
	docs/gst/tmpl/gsttypefind.sgml, gst/gstautoplug.c, gst/gstbin.c,
	gst/gstbuffer.c, gst/gstbufferpool.c, gst/gstcaps.c,
	gst/gstelement.c, gst/gstelementfactory.c, gst/gstmeta.c,
	gst/gstpad.c, gst/gstpipeline.c, gst/gstprops.c, gst/gsttee.c,
	gst/gstthread.c, gst/gsttype.c, gst/gstutils.c: Cleaned up the docs
	a bit.

2001-01-06 19:09  wtay

	* gst/elements/gstqueue.c: Rearranged the mutex locking, still have
	to think about it though...

2001-01-06 18:08  wtay

	* gst/gstbuffer.c: Added a mutex around the mem_chunck alloc
	routines

2001-01-06 16:56  wtay

	* tests/: .cvsignore, eos/.cvsignore: Added/updated .cvsignore

2001-01-06 16:52  wtay

	* docs/manual/dynamic.sgml, plugins/mpeg2/parse/mpeg2parse.c,
	test/mp2tomp1.c: Fixed the MPEG2 to MPEG1 recoder, we need cannot
	create dangling elements with the current scheduler. Remove the
	subtitle parser because it's not possible with the current
	scheduler.  Added a padtemplate for MPEG2 subtitles.

2001-01-06 10:42  omegahacker

	* configure.in: removed xing and added AM_CONDITIONAL for
	HAVE_GNOME

2001-01-06 09:49  omegahacker

	* autogen.sh: added --enable-debug to autogen.sh, duh...

2001-01-06 02:35  wtay

	* docs/manuals.mak, docs/gst/gstreamer-sections.txt,
	docs/gst/tmpl/gstasyncdisksrc.sgml,
	docs/gst/tmpl/gstaudiosink.sgml, docs/gst/tmpl/gstaudiosrc.sgml,
	docs/gst/tmpl/gstbin.sgml, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstdisksrc.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstfakesink.sgml, docs/gst/tmpl/gstfakesrc.sgml,
	docs/gst/tmpl/gstfdsink.sgml, docs/gst/tmpl/gstfdsrc.sgml,
	docs/gst/tmpl/gsthttpsrc.sgml, docs/gst/tmpl/gstidentity.sgml,
	docs/gst/tmpl/gstobject.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstpipefilter.sgml, docs/gst/tmpl/gstplugin.sgml,
	docs/gst/tmpl/gstqueue.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/gst/tmpl/gstsinesrc.sgml, docs/gst/tmpl/gstthread.sgml,
	docs/gst/tmpl/gsttypefind.sgml, docs/manual/Makefile.am,
	docs/manual/bins.sgml, docs/manual/connections.sgml,
	docs/manual/elements.sgml, docs/manual/ghostpads.sgml,
	docs/manual/gstreamer-manual.sgml, docs/manual/helloworld.sgml,
	docs/manual/pads.sgml, docs/manual/plugins.sgml, gst/gstbin.c,
	gst/gstbin.h, gst/gstcaps.c, gst/gstcaps.h, gst/gstelement.c,
	gst/gstelement.h, gst/gstelementfactory.c, gst/gstplugin.c,
	gst/gstplugin.h, gst/gsttype.c, gst/gsttype.h,
	gst/elements/gstesdsink.c, gst/elements/gstesdsink.h: Updated the
	manual and the docs.  Removed the esdsink in gst/elements/ we have
	a real one not in the  plugins dir.  Added more APIs to query the
	plugins, types and caps. more fields now  have a getter and a
	setter. This is needed to make gstreamer wrapper  fiendly.  Added
	gst_element_disconnect beacuse we also have a gst_element_connect

2001-01-05 18:50  wtay

	* docs/manual/: cothreads.sgml, factories.sgml, helloworld.sgml,
	helloworld2.sgml, mime-world.fig, pads.sgml, programs.sgml,
	queues.sgml, threads.sgml: Docs updates

2001-01-05 00:28  omegahacker

	* gst/cothreads.c: fixed missing comment noticed by David Lehn

2001-01-04 23:35  wtay

	* docs/manual/: Makefile.am, bin-element-ghost.fig, bins.sgml,
	elements.sgml, factories.sgml, goals.sgml, gstreamer-manual.sgml,
	helloworld.sgml, intro.sgml, motivation.sgml, pads.sgml,
	states.sgml, threads.sgml: Updates and additions to the manual

2001-01-04 22:15  omegahacker

	* gst/cothreads.c, gst/gstinfo.c,
	docs/gst/tmpl/gstasyncdisksrc.sgml,
	docs/gst/tmpl/gstaudiosink.sgml, docs/gst/tmpl/gstaudiosrc.sgml,
	docs/gst/tmpl/gstbin.sgml, docs/gst/tmpl/gstdisksrc.sgml,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstfakesink.sgml,
	docs/gst/tmpl/gstfakesrc.sgml, docs/gst/tmpl/gstfdsink.sgml,
	docs/gst/tmpl/gstfdsrc.sgml, docs/gst/tmpl/gsthttpsrc.sgml,
	docs/gst/tmpl/gstidentity.sgml, docs/gst/tmpl/gstinfo.sgml,
	docs/gst/tmpl/gstobject.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstpipefilter.sgml, docs/gst/tmpl/gstqueue.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gstsinesrc.sgml,
	docs/gst/tmpl/gstthread.sgml, docs/gst/tmpl/gsttypefind.sgml:
	updated API docs

2001-01-04 20:34  omegahacker

	* tools/gstreamer-launch.c: fixed problems with -launch

2001-01-04 20:17  omegahacker

	* plugins/vorbis/vorbisenc.c: changed OGG to Ogg, to match decoder

2001-01-04 19:22  wtay

	* examples/launch/mp3play: Fixed mp3play

2001-01-04 19:16  wtay

	* tools/gstreamer-inspect.c: Added printout of the capabilities of
	the pads

2001-01-04 18:57  wtay

	* tools/: Makefile.am, gstreamer-inspect.c: Added enum values with
	default removed debugging -g from Makefile

2001-01-04 17:44  richardb

	* examples/launch/mp3play: Undo accidental commit of debugging
	version.

2001-01-04 16:46  richardb

	* tools/gstreamer-launch.c: Replace Wim's fix after Erik dropped
	it. ;-)

2001-01-04 10:54  omegahacker

	* gst/: cothreads.c, gstpad.c, gstpad.h, gstplugin.c, gstplugin.h,
	elements/gstfakesink.c, elements/gstfakesink.h: Rearranged
	cothreads sources a bit, added some API docs.  Added some functions
	needed for gstreamer-inspect.  Added num_sources to fakesink.

2001-01-04 10:53  omegahacker

	* plugins/filters/ladspa/: gstladspa.c, gstladspa.h: More updates
	to ladspa wrapper, closer to data movement

2001-01-04 10:47  omegahacker

	* tools/: gstreamer-inspect.c, gstreamer-launch.c: Updated -inspect
	to list elements and plugin info too

2001-01-04 07:19  wtay

	* tools/gstreamer-launch.c: A little fix for parameter parsing

2001-01-04 00:15  richardb

	* examples/launch/mp3play: Updated to supply argument as
	"name=value" rather than just "value"

2001-01-04 00:15  richardb

	* tools/gstreamer-launch.c: Added partial fix so that arguments can
	be set.

2001-01-03 23:08  wtay

	* test/mp3play.c: Make sure the plugin is loaded only once

2001-01-03 22:58  richardb

	* examples/: helloworld2/helloworld2.c, launch/mp3play,
	queue/queue.c, queue2/queue2.c, queue3/queue3.c, queue4/queue4.c,
	thread/thread.c, xml/createxml.c: Do gst_init first, so we can
	supply debugging options to libgst

2001-01-03 20:55  wtay

	* tools/gstreamer-inspect.c: Added the previous changes back in

2001-01-03 20:44  omegahacker

	* gst/: gstelement.c, gstelement.h, gstelementfactory.c: debug
	updates and a padtemplate counter added

2001-01-03 20:40  omegahacker

	* gst/: gstpad.c, gstpad.h: Made gst_pad_eos_func a non-static
	function

2001-01-03 20:21  wtay

	* gst/gstprops.c, gst/gstprops.h, tools/Makefile.am,
	tools/gstreamer-inspect.c: Made the GstProps a GList instead of a
	GSList Some fixes to inspect: added the mime type

2001-01-03 19:54  wtay

	* configure.in, tools/gstreamer-inspect.c: Added proper comment for
	the bonobo component fix a compile bug in inspect... Erik, have
	pending changes to gstpad.h?

2001-01-03 19:12  richardb

	* examples/helloworld/helloworld.c, plugins/esd/esdsink/esdsink.c:
	Do gst_init first in helloworld, so you can supply gst parameters. 
	Correct name of frequency cap to rate, in esdsink.  Now connects
	properly.

2001-01-03 18:55  richardb

	* gst/elements/gstaudiosink.c: Various small fixes.

2001-01-03 18:51  richardb

	* plugins/esd/esdsink/: esdsink.c, esdsink.h: Should cope with
	updating of parameters now.

2001-01-03 18:15  richardb

	* plugins/esd/esdsink/: esdsink.c, esdsink.h: EsdSink now
	functions!  Wheeeee! Still needs to have a few things sorted out
	though, such as parameter setting / syncing.

2001-01-03 16:25  richardb

	* configure.in, plugins/Makefile.am, plugins/example.c,
	plugins/esd/Makefile.am, plugins/esd/esdsink/.cvsignore,
	plugins/esd/esdsink/Makefile.am, plugins/esd/esdsink/esdsink.c,
	plugins/esd/esdsink/esdsink.h: Added auto detection of libesd. 
	Added nearly complete esdsink: all structure in place, just need to
	add actaul links to libesd. ;-)

2001-01-03 08:48  omegahacker

	* tools/gstreamer-inspect.c: Updates, it prints a lot more stuff
	now, like padtemplates, caps/props, and arguments.  More stuff can
	be done, but not now, I must sleep.

2001-01-03 07:38  omegahacker

	* tools/: .cvsignore, Makefile.am, gstreamer-inspect.c,
	gstreamer-launch.c: Updates to -launch, added -inspect.

2001-01-02 23:33  wtay

	* plugins/: example.c, example.h: Updated the example plugin
	template

2001-01-02 22:52  richardb

	* docs/Makefile.am: Don't delete CVS directories from working
	directory: delete from distdir.  Also, delete backup files, while
	you're at it. :)

2001-01-02 20:50  wtay

	* gstreamer.spec.in: Datafiles in share should go in to RPM too

2001-01-02 19:46  wtay

	* examples/autoplug/Makefile.am, examples/helloworld/Makefile.am,
	examples/helloworld2/Makefile.am, examples/launch/Makefile.am,
	examples/queue/Makefile.am, examples/queue2/Makefile.am,
	examples/queue3/Makefile.am, examples/queue4/Makefile.am,
	examples/thread/Makefile.am, examples/xml/Makefile.am,
	plugins/avi/Makefile.am, plugins/mpeg2/ac3parse/Makefile.am,
	test/bindings/Makefile.am: The examples must not be installed
	Removed debugging from Makefiles for avidecoder/ac3parse
	/test/bindings/dummy.h cannot be installed

2001-01-02 18:40  wtay

	* docs/gst/gstreamer-docs.sgml, plugins/au/gstparseau.c,
	plugins/au/gstparseau.h, plugins/audioscale/Makefile.am,
	plugins/audioscale/audioscale.c,
	plugins/filters/median/Makefile.am,
	plugins/filters/smooth/Makefile.am, plugins/jpeg/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpegtypes/Makefile.am,
	plugins/mpeg2/mpegtypes/Makefile.am,
	plugins/visualization/spectrum/fix_fft.c,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/spectrum/gstspectrum.h: Remove esdsink from
	the docs more fixes for symbols collisions

2001-01-02 16:39  wtay

	* plugins/visualization/synaesthesia/core.c: Fixed a symbol
	conflict with mpeg_audio

2001-01-02 16:29  wtay

	* plugins/mpeg2/video/: Makefile.am, gethdr.c, getpic.c,
	mpeg2dec.c, mpeg2dec.h, recon.c, recon_mmx.c, recon_sse.s: Fixed a
	symbol conflict with mpeg_play

2001-01-02 15:18  richardb

	* docs/gst/Makefile.am: Remove gstesdsink

2001-01-02 14:35  richardb

	* docs/Makefile.am: Add dist-hook to stop CVS/ directories being
	put into distribution.

2001-01-02 14:34  richardb

	* configure.in: Add GST_HTTPSRC_GET_TYPE back into configure.in:
	documentation fails to build correctly when libhttp isn't present
	without this.

2001-01-02 13:23  richardb

	* autogen.sh: Correct ftp urls for libtool.

2001-01-02 12:07  wtay

	* autogen.sh: Fixed a typo

2001-01-02 12:04  wtay

	* acconfig.h, autogen.sh, configure.in,
	gst/elements/gstasyncdisksrc.c, gstplay/callbacks.c,
	gstplay/gstmediaplay.c, plugins/Makefile.am: Added a check for
	libjpeg Added and action for the load menu in gstplay Fixed drag
	and drop in gstplay More verbose errors in gstasyndisksrc

2001-01-02 08:13  omegahacker

	* acconfig.h, autogen.sh, configure.in,
	docs/random/TODO-post-0.1.0, examples/autoplug/Makefile.am,
	gst/gstplugin.c, gst/elements/Makefile.am,
	gst/elements/gstasyncdisksrc.c, include/registry.h,
	libs/getbits/Makefile.am, libs/getbits/gstgetbits.c,
	libs/getbits/gstgetbits.h, libs/getbits/gstgetbits_generic.c,
	libs/idct/Makefile.am, libs/riff/gstriffencode.c,
	libs/riff/gstriffparse.c, plugins/Makefile.am,
	plugins/au/gstparseau.c, plugins/audioscale/audioscale.c,
	plugins/avi/Makefile.am, plugins/avi/codectest.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstaviencoder.c,
	plugins/avi/videoheader.c, plugins/avi/wincodec/gstwindec.c,
	plugins/avi/wincodec/gstwinenc.c, plugins/capture/v4l/grab-v4l.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/cobin/cobin.c,
	plugins/cobin/cobin.h, plugins/dvdsrc/dvdsrc.c,
	plugins/effects/stereo/stereo.c, plugins/effects/volume/volume.c,
	plugins/filters/ladspa/gstladspa.c,
	plugins/filters/median/median.c, plugins/filters/smooth/smooth.c,
	plugins/jpeg/gstjpeg.c, plugins/jpeg/gstjpegdec.c,
	plugins/jpeg/gstjpegenc.c, plugins/mp3decode/Makefile.am,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/mpeg1encoder/globals.h,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg1encoder/marker.c,
	plugins/mpeg1/mpeg1encoder/mem.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegaudio/psy.c, plugins/mpeg1/mpegaudio/subs.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1/system_encode/systems.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/subtitles/mpeg2subt.c, plugins/mpeg2/video/getpic.c,
	plugins/mpeg2/video/gstmpeg2play.c, plugins/mpeg2/video/mpeg2dec.c,
	plugins/mpeg2/videoparse/mp2videoparse.c, plugins/rtjpeg/rtjpeg.c,
	plugins/rtjpeg/rtjpegdec.c, plugins/rtjpeg/rtjpegdec.h,
	plugins/rtjpeg/rtjpegenc.c, plugins/rtjpeg/rtjpegenc.h,
	plugins/vcdsrc/vcdsrc.c, plugins/videoscale/videoscale.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c,
	plugins/vorbis/vorbisdec.c, plugins/vorbis/vorbisenc.c,
	plugins/wav/gstparsewav.c: Massive, massive update of most source
	files.	I went through and cleaned up all the warnings that I
	could, which involved fixing some of the plugins.
	
	The configure.in script was re-arranged and cleaned up so, and a
	check for libtool 1.3.5 was added to autogen.sh.  Added checks for
	Gtk and GNOME.
	
	Some plugins were removed from the list of things to build for
	various reasons.
	
	Added GST_DEBUG_FORCE_DISABLE in gstgetbits, since that's time
	critical and even an if() from a DEBUG can significantly increase
	runtimes.

2001-01-02 02:18  wtay

	* tests/Makefile.am: ooops, eos is a dir

2001-01-02 02:16  wtay

	* docs/gst/Makefile.am, docs/gst/gstreamer-sections.txt,
	editor/pixmaps/Makefile.am, tests/Makefile.am,
	tests/eos/Makefile.am, tests/eos/case1.c: Fixed makefiles for docs
	Added eos test programs

2001-01-02 01:44  wtay

	* configure.in, docs/random/eos, editor/Makefile.am,
	editor/gsteditorimage.c, editor/gsteditorpalette.c,
	editor/gsteditorprojectview.c, editor/gsteditorproperty.c,
	gst/gstpad.c, gst/elements/gstfakesrc.c, gst/elements/gstfakesrc.h,
	gstplay/Makefile.am, gstplay/gstmediaplay.c: Fixes for
	gsteditor/gstplay install/build fixed typo in random/eos added
	num_buffers property to fakesrc

2001-01-02 01:33  richardb

	* Makefile.am, configure.in, docs/Makefile.am, docs/manuals.mak,
	docs/gst/Makefile.am, docs/libs/Makefile.am: Added checking for all
	the tools used to make documentation.  If documentation cannot be
	generated, whatever is available will still be installed. 
	videosink/imagetest is now a check_PROGRAM

2001-01-02 01:00  omegahacker

	* REQUIREMENTS: updated requirements

2001-01-02 00:35  omegahacker

	* REQUIREMENTS: added list of requrements

2001-01-02 00:31  richardb

	* configure.in, examples/Makefile.am: Added launch back into make
	system.  The Makefile wasn't being generated, resulting in make
	dist failing when the directory was entered for make dist.

2001-01-01 23:50  wtay

	* examples/Makefile.am: Added directories to DIST_SUBDIRS

2001-01-01 23:20  omegahacker

	* examples/autoplug/Makefile.am: somehow Makefile.am went
	zero-bytes

2001-01-01 22:44  omegahacker

	* examples/: Makefile.am, thread/Makefile.am: updated examples
	build stuff

2001-01-01 21:21  omegahacker

	* Makefile.am, configure.in, examples/xml/Makefile.am,
	gst/Makefile.am, plugins/dvdsrc/Makefile.am: More build fixes

2001-01-01 19:54  wtay

	* docs/random/: TODO-post-0.1.0, eos: Added some more TODOs Added a
	proposition for eos propagation

2001-01-01 17:25  wtay

	* docs/gst/gstreamer-sections.txt, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstinfo.sgml, docs/gst/tmpl/gstpad.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, gst/gstelement.c,
	gst/gstpad.c: Documentation updates

2001-01-01 14:34  richardb

	* examples/launch/Makefile.am: Add one more file to dist.

2001-01-01 14:06  richardb

	* docs/: gst/Makefile.am, libs/Makefile.am: Fix a couple of files
	not being put into distributions.  make dist now appears to create
	a fully functional distribution.  make rpm should now produce an
	rpm.  Whether that rpm is any good is another matter...

2001-01-01 13:41  richardb

	* Makefile.am, configure.in, examples/Makefile.am,
	examples/launch/Makefile.am, examples/xml/Makefile.am: Fix broken
	build system for examples.

2001-01-01 08:43  omegahacker

	* gstplay/Makefile.am, plugins/avi/Makefile.am,
	plugins/avi/wincodec/Makefile.am: More build changes

2001-01-01 08:37  omegahacker

	* Makefile.am, autogen.sh, configure.in,
	docs/code-reviews/gstbin.c-1.41, examples/autoplug/Makefile,
	examples/autoplug/Makefile.am, examples/autoplug/autoplug.c,
	examples/helloworld/Makefile, examples/helloworld/Makefile.am,
	examples/helloworld2/Makefile, examples/helloworld2/Makefile.am,
	examples/queue/Makefile, examples/queue/Makefile.am,
	examples/queue2/Makefile, examples/queue2/Makefile.am,
	examples/queue3/Makefile, examples/queue3/Makefile.am,
	examples/queue4/Makefile, examples/queue4/Makefile.am,
	examples/thread/Makefile, examples/thread/Makefile.am,
	examples/xml/Makefile, examples/xml/Makefile.am, gst/gstpad.c,
	gst/gstplugin.c: Re-arranged the build a bit to try to make it more
	sane.  Added some debug.

2001-01-01 07:47  omegahacker

	* gstplay/Makefile.am: added headers and such to Makefile.am for
	dist

2001-01-01 07:44  omegahacker

	* test/: mp3.c, qtest.c: added the category number to DEBUG

2001-01-01 07:42  omegahacker

	* plugins/filters/ladspa/Makefile.am: missed utils.h

2001-01-01 07:30  omegahacker

	* configure.in: updated version number from 0.9.2 (huh???) to 0.1.0

2001-01-01 06:59  wtay

	* configure.in, docs/gst/tmpl/gstinfo.sgml,
	docs/gst/tmpl/gstplugin.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	examples/autoplug/autoplug.c: Added -Wall to configure.in

2001-01-01 06:57  omegahacker

	* gst/Makefile.am: fixed a nasty bug where at -O6 teh compiler
	optimized cothreads.c beyond the point of functioning

2001-01-01 06:23  wtay

	* plugins/vorbis/: Makefile.am, vorbis.c, vorbisdec.c, vorbisdec.h,
	vorbisenc.c, vorbisenc.h: Some compile cleanups

2001-01-01 05:26  wtay

	* gst/gstpipeline.c: Fixed a very bad error with autoplugging.

2001-01-01 05:18  omegahacker

	* gst/: gst.c, gstinfo.c, gstinfo.h: updated the debug system so it
	works nicely now

2001-01-01 04:53  omegahacker

	* gst/: gst.c, gstinfo.c, gstinfo.h: Added API to control DEBUG
	level, updated cmdline code

2001-01-01 04:41  omegahacker

	* gst/: gst.c, gstpad.c: modified cmdlien code to take both 0xHEX
	and dec, and added an INFO line in gst_pad_connect()

2001-01-01 04:11  omegahacker

	* plugins/filters/ladspa/: Makefile, search.c: removed accidentally
	checked in Makefile and added .cvsignore

2001-01-01 04:10  wtay

	* test/mp3.c, test/qtest.c, tests/case4.c, tests/markup.c,
	tests/paranoia.c, tests/rip.c, tests/simplefake.c: Updated test
	programs

2001-01-01 04:04  wtay

	* gst/gst.c: Fixed a typo

2001-01-01 04:02  wtay

	* plugins/filters/ladspa/: Makefile, gstladspa.c: Added the boolean
	properties back

2001-01-01 03:59  omegahacker

	* plugins/filters/ladspa/: gstladspa.c, gstladspa.h: fixed ladpsa
	filter up to compile

2001-01-01 03:57  omegahacker

	* plugins/filters/Makefile.am: added ladspa

2001-01-01 03:57  omegahacker

	* gst/gstautoplug.c: set categories for all INFOs

2001-01-01 03:44  omegahacker

	* tests/sched/.cvsignore: added .cvsignore

2001-01-01 03:43  wtay

	* gst/: Makefile.am, gst.c, gstcpu.c, gstinfo.c: Added command line
	parsing for --gst-info-mask, --gst-debug-mask and --help Dump the
	FLAGS and options on --help

2001-01-01 03:22  omegahacker

	* tests/.cvsignore: updated .cvsignore

2001-01-01 03:20  omegahacker

	* configure.in: added directories to configure.in

2001-01-01 03:19  omegahacker

	* plugins/filters/ladspa/: Makefile, Makefile.am, gstladspa.c,
	gstladspa.h, ladspa.h, load.c, search.c, utils.h: New LADSPA plugin
	wrapper

2001-01-01 03:18  omegahacker

	* examples/Makefile.am: fixed stupid spelling mistake

2001-01-01 03:18  omegahacker

	* gstplay/: .cvsignore, Makefile.am: gstplay now builds from
	build-directory, doesn't require a make install

2001-01-01 03:16  omegahacker

	* plugins/: audioscale/audioscale.c, avi/audiocodecs.c,
	avi/gstavidecoder.c, avi/gstaviencoder.c, avi/wincodec/gstwindec.c,
	avi/wincodec/gstwinenc.c, capture/v4l/gstv4lsrc.c,
	cdparanoia/cdparanoia.c, dvdsrc/dvdsrc.c, filters/median/median.c,
	filters/smooth/smooth.c, jpeg/gstjpegdec.c, jpeg/gstjpegenc.c,
	mp3decode/mpg123/gstmpg123.c, mp3decode/parse/mp3parse.c,
	mp3decode/types/mp3types.c, mp3encode/lame/gstlame.c,
	mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	mpeg1/mpeg_play/gstmpeg_play.c, mpeg1/mpeg_play/util.c,
	mpeg1/mpeg_play/video.c, mpeg1/mpegaudio/gstmpegaudio.c,
	mpeg1/parse/mpeg1parse.c, mpeg1/system_encode/buffer.c,
	mpeg1/system_encode/system_encode.c,
	mpeg1video/parse/mp1videoparse.c, mpeg2/ac3parse/ac3parse.c,
	mpeg2/mpeg2enc/gstmpeg2enc.c, mpeg2/parse/mpeg2parse.c,
	mpeg2/subtitles/mpeg2subt.c, mpeg2/video/gethdr.c,
	mpeg2/video/gstmpeg2play.c, mpeg2/video/mpeg2dec.c,
	mpeg2/videoparse/mp2videoparse.c, videoscale/videoscale.c,
	visualization/smoothwave/smoothwave.c,
	visualization/synaesthesia/synaesthesia.c, vorbis/vorbisdec.c:
	Updated all plugins to use new GST_DEBUG and GST_INFO systems.

2001-01-01 03:16  omegahacker

	* libs/: getbits/gstgetbits_generic.c, riff/gstriffencode.c,
	riff/gstriffparse.c: Updated libraries to use new GST_DEBUG instead
	of DEBUG.

2001-01-01 03:14  omegahacker

	* gst/: cothreads.c, gst.c, gstautoplug.c, gstbin.c, gstbuffer.c,
	gstbufferpool.c, gstcaps.c, gstclock.c, gstcpu.c, gstelement.c,
	gstelementfactory.c, gstinfo.c, gstinfo.h, gstobject.c, gstpad.c,
	gstpipeline.c, gstplugin.c, gstprops.c, gstscheduler.c,
	gstthread.c, gsttype.c, gstxml.c, elements/gstasyncdisksrc.c,
	elements/gstaudiosink.c, elements/gstaudiosrc.c,
	elements/gstdisksrc.c, elements/gstfdsink.c,
	elements/gstpipefilter.c, elements/gstqueue.c,
	elements/gstsinesrc.c, elements/gsttypefind.c: Mega update of INFO,
	DEBUG, and ERROR subsystems, renamed with GST_ prefix.	GST_DEBUG
	now takes a category parameter, which is the same as GST_INFO
	system.  They are now called GST_CAT_*.  All the GST_DEBUGs are set
	to 0 for now, we need to go and fix all these eventually.

2001-01-01 02:46  omegahacker

	* gst/gstcpu.c: fixed stupid (brown paper bag) bug with missing
	NULL on g_strconcat

2001-01-01 02:34  omegahacker

	* gst/gstcpu.c: fixed the segfault

2001-01-01 01:56  wtay

	* acconfig.h, configure.in, gst/gstinfo.c: Added --enable-info and
	--disable-info-system nothing specified = INFO enabled, mask to
	0x00000001 --enable-info =     INFO enabled, mask to 0xffffffff
	--disable-info =    INFO compiled into a nop and thus disabled

2001-01-01 00:44  omegahacker

	* examples/: autoplug/.cvsignore, helloworld/.cvsignore,
	helloworld2/.cvsignore, launch/Makefile, queue/.cvsignore,
	queue2/.cvsignore, queue3/.cvsignore, queue4/.cvsignore,
	thread/.cvsignore, xml/.cvsignore: hopefully one last update to the
	examples .cvsignores

2001-01-01 00:44  wtay

	* acconfig.h, configure.in, gst/gstinfo.h, plugins/avi/Makefile.am,
	plugins/avi/gstavidecoder.c: Added GST_INFO_ENABLED flags Added
	--enable-debug-info A little fix for the avidecoder

2001-01-01 00:42  omegahacker

	* examples/: helloworld/helloworld.c, helloworld2/helloworld2.c,
	queue/queue.c, queue2/queue2.c, queue3/queue3.c, queue4/queue4.c,
	thread/thread.c, xml/Makefile, xml/createxml.c, xml/runxml.c:
	cleaned up the examples, added Makefiles, etc

2001-01-01 00:34  omegahacker

	* examples/: Makefile.am, autoplug/Makefile, autoplug/autoplug.c,
	helloworld/Makefile, helloworld2/Makefile, launch/Makefile,
	queue/Makefile, queue2/Makefile, queue3/Makefile, queue4/Makefile,
	thread/Makefile, xml/Makefile: Updated makefiles for examples

2001-01-01 00:17  omegahacker

	* gst/: gstcpu.c, gstinfo.c, gstinfo.h, elements/gstelements.c:
	Cleaned up INFO system some more, added API to select categories,
	modified the printout function to print cleanly for GST_INIT info
	(the default min) and spew function:line debug_string [element] for
	everything else.  Eventually could make even that configurable
	easily enough, just check against another bitmap instead of
	checking for == GST_INIT.

2000-12-31 23:31  wtay

	* gst/: Makefile.am, gstbin.c, gstpad.c, elements/gstfakesrc.c: Fix
	some compile warnings

2000-12-31 22:49  omegahacker

	* gstplay/gstmediaplay.c: Added ability to use .glade file in cwd

2000-12-31 22:18  omegahacker

	* gst/: gstelement.c, gstelement.h, gstinfo.c, gstinfo.h, gstpad.c,
	gstpad.h, gstplugin.c, gstplugin.h, gstscheduler.c, gsttype.c,
	types/gsttypes.c: Started work on better ghostpad management, and
	started to build the low- level EOS mechanism.
	
	Also removed a couple of printouts that aren't needed any more.

2000-12-31 22:16  omegahacker

	* plugins/: mp3decode/types/mp3types.c,
	mpeg1/mpegtypes/mpeg1types.c, mpeg2/mpegtypes/mpeg2types.c:
	Commented out some extra output that we don't need right now.

2000-12-31 22:15  omegahacker

	* tools/gstreamer-register.c: Added stdlib.h to clean up exit()
	warnings

2000-12-31 22:14  omegahacker

	* tests/: load.c, markup.c: New test programs.

2000-12-31 22:13  omegahacker

	* tests/Makefile.am: [no log message]

2000-12-31 22:11  omegahacker

	* tests/sched/: Makefile, Makefile.am, runxml.c, testcases:
	Converted to a Makefile.am, fixed up the GstSrc thing, and removed
	a set to READY state before PLAYING that isn't necessary.

2000-12-31 18:06  richardb

	* plugins/mpeg2/mpeg2dec/Makefile.am: Add a final header file to
	noinst_HEADERS

2000-12-31 17:49  richardb

	* plugins/mpeg2/: ac3dec/Makefile.am, mpeg2dec/Makefile.am: A
	couple more fixes to make dist.

2000-12-31 17:37  richardb

	* plugins/mpeg2/mpeg2dec/Makefile.am: Add new files to dist.

2000-12-31 17:34  wtay

	* plugins/mpeg2/mpeg2dec/: attributes.h, idct_mlib.c, mm_accel.h,
	motion_comp_mlib.c, output_video.h, stats.c: Added missing files,
	It should compile now, but doesn't work

2000-12-31 17:32  richardb

	* plugins/: mp3decode/Makefile.am, mpeg1/mpeg_play/Makefile.am,
	mpeg1/mpegaudio/Makefile.am, mpeg2/ac3dec/Makefile.am,
	mpeg2/mpeg2enc/Makefile.am, wav/Makefile.am: Various fixes to
	ensure that appropriate files are included in make dist.  Make dist
	now produces a nearly functioning distribution.

2000-12-31 17:32  wtay

	* editor/gsteditorproperty.c, plugins/cdparanoia/cdparanoia.c:
	Updated the editor to use the capslist Added change state in
	cdparanoia

2000-12-31 17:02  wtay

	* docs/gst/gstreamer-sections.txt, docs/gst/tmpl/gstautoplug.sgml,
	docs/gst/tmpl/gstcaps.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstprops.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, gst/Makefile.am,
	gst/gstautoplug.c, gst/gstcaps.h, gst/gstpad.c, tests/.cvsignore:
	Updated the docs Updated gst/Makefile.am to add CFLAGS Added test
	programs to tests/.cvsignore

2000-12-31 16:15  wtay

	* tests/padfactory.c: Test program for the pad factory

2000-12-31 16:12  wtay

	* examples/autoplug/autoplug.c, gst/gst.h, gst/gstautoplug.c,
	gst/gstautoplug.h, gst/gstcaps.c, gst/gstcaps.h, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstinfo.c, gst/gstpad.c, gst/gstpad.h,
	gst/gstpipeline.c, gst/gstplugin.c, gst/gstprops.c, gst/gstprops.h,
	gst/elements/gstaudiosink.c, plugins/avi/gstavidecoder.c,
	plugins/avi/gstaviencoder.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/cdparanoia/cdparanoia.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c,
	plugins/mp3encode/lame/gstlame.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/mp2videoparse.c, plugins/vorbis/vorbis.c,
	tests/Makefile.am, tests/autoplug.c, tests/caps.c, tests/case4.c,
	tests/init.c, tests/queue.c, tests/simplefake.c, tests/states.c:
	Added multiple caps to the pads Extended the padfactory for the
	multiple caps GstCaps now have a name so that future manipulations
	on them can be done by name Updated the plugins for the new caps
	list

2000-12-31 16:07  richardb

	* Makefile.am, configure.in, include/Makefile.am: Add files in
	include to distributions.

2000-12-31 15:53  richardb

	* gst/Makefile.am: Add gstpropsprivate.h to dist.

2000-12-31 15:19  richardb

	* docs/Makefile.am: Add docs/fwg to DIST_SUBDIRS

2000-12-31 15:18  richardb

	* configure.in: Add docs/fwg/Makefile to things to be built.

2000-12-31 14:22  richardb

	* docs/manuals.mak: Fix another bug in make install for fwg
	(complained becuase there were no pngs to install).  I should have
	got up more slowly today...

2000-12-31 14:02  richardb

	* docs/: fwg/.cvsignore, libs/tmpl/.cvsignore, manual/.cvsignore,
	manual/images/.cvsignore: Fix .cvsignores

2000-12-31 13:55  richardb

	* docs/: manuals.mak, fwg/.cvsignore: Fix bug in make install for
	manuals.  Added stuff to .cvsignore in fwg

2000-12-31 10:46  omegahacker

	* tools/gstreamer-launch.c: Complete rewrite of the launcher.  Now
	supports pretty arbitrary pipelines.  Try '((fakesrc) ! identity !
	(fakesink))' out.  Doesn't seem to recognize pad names yet for some
	reason, so it goes with the first sink/src pad it finds in a given
	element.  Other problems still remain, but the hard part is done
	with.

2000-12-30 19:51  wtay

	* plugins/mpeg2/mpegtypes/mpeg2types.c: Removed elementary mpeg2
	video detection because we simply don't know if it's mpeg1 or mpeg2

2000-12-30 19:41  wtay

	* plugins/avi/gstavidecoder.c: removed debugging

2000-12-30 19:40  wtay

	* plugins/mpeg1/parse/Makefile.am: removed debugging info again

2000-12-30 19:39  wtay

	* plugins/mpeg1/parse/: Makefile.am, mpeg1parse.c: Removed ac3 and
	other private streams until autoplug can figure it out

2000-12-30 19:37  wtay

	* libs/getbits/: gstgetbits.c, gstgetbits.h: Disabled MMX optimized
	versions until they get fixed

2000-12-30 19:04  wtay

	* gst/cothreads.c, gst/gstplugin.c, plugins/avi/audiocodecs.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstavidecoder.h,
	plugins/avi/playcodecs.c, plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwindec.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c: Fixed autoplugging for avi
	Fixed a bug in multiple typefind function loading: when a typefind
	is requested for a mimetype, all plugins with a typefind function
	should be loaded.

2000-12-30 17:42  wtay

	* gst/gst.c, gst/gstautoplug.c, gst/gstcaps.c, gst/gstplugin.c,
	gst/gstprops.c, gst/gstthread.c, plugins/mpeg2/ac3dec/ac3dec.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/mp2videoparse.c: Fixed MPEG2 autoplugging
	Added some more INFO to gstthread

2000-12-30 17:13  wtay

	* docs/gst/: Makefile.am, tmpl/gstreamer-unused.sgml: Updated the
	makefile for new files

2000-12-30 16:13  wtay

	* docs/gst/.cvsignore, docs/gst/gstreamer-decl.txt,
	docs/gst/gstreamer-docs.sgml, docs/gst/gstreamer-sections.txt,
	docs/gst/gstreamer.hierarchy, docs/gst/gstreamer.types.in,
	docs/gst/tmpl/gst.sgml, docs/gst/tmpl/gstautoplug.sgml,
	docs/gst/tmpl/gstbuffer.sgml, docs/gst/tmpl/gstcaps.sgml,
	docs/gst/tmpl/gstconnection.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstfilter.sgml, docs/gst/tmpl/gstinfo.sgml,
	docs/gst/tmpl/gstobject.sgml, docs/gst/tmpl/gstprops.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml,
	docs/gst/tmpl/gstscheduler.sgml, docs/gst/tmpl/gstsink.sgml,
	docs/gst/tmpl/gstsrc.sgml, gst/gstautoplug.c, gst/gstelement.c,
	gst/gstobject.c, gst/gstplugin.c, gst/elements/Makefile.am,
	gst/elements/gstqueue.c, gst/elements/gsttypefind.c: Docs updates:
	remove sink, src, filter, connection added gstinfo to docs. 
	Updated some core files for the docs gsttypefind did not include
	gst_private Added CFlags to Makefile.am in gst/elements

2000-12-30 15:36  richardb

	* docs/: Makefile.am, manuals.mak, fwg/Makefile.am,
	fwg/gst-filter-writers-guide.sgml, manual/Makefile.am: Added
	framework for writing filter writers guide.  Extracted much of the
	makefile from docs/manual into a shared file which is included, so
	it can be re-used.

2000-12-30 14:46  richardb

	* docs/: libs/.cvsignore, manual/.cvsignore, manual/Makefile.am,
	libs/Makefile.am: Fix a bug in manual/Makefile.am: bad shell script
	for make disting .ps files.   Couple of final fixes to
	libs/Makefile.am, too.	Add a few things to cvsignores.

2000-12-30 14:40  richardb

	* plugins/: dvdsrc/Makefile.am, mpeg2/video/getvlc.h,
	mpeg2/video/mpeg2dec.h, mpeg2/videoparse/Makefile.am: Change ERROR
	to VLC_ERROR in mpeg2.	Fix a couple of makefiles so that make dist
	works.

2000-12-30 13:54  richardb

	* docs/libs/: Makefile.am, tmpl/.cvsignore: Makefile cleaned muchly
	- make should now cause gstreamer-libs docs to be created.  Make
	dist may work too - untested.  No longer store tmpls in CVS,
	either.  Only thing missing is make dependencies on the source
	files used to extract the docs.

2000-12-30 13:14  richardb

	* docs/libs/tmpl/: dct.sgml, externals.sgml, gstcolorspace.sgml,
	gstgetbits.sgml, gstgetbits_inl.sgml, gstidct.sgml,
	gstputbits.sgml, gstriff.sgml, gstvideoscale.sgml, wineacm.sgml:
	Remove template files from CVS: they're autogenerated better.

2000-12-30 05:05  richardb

	* docs/manual/Makefile.am: Makefile can now be used for a different
	manual by simply changing the initial variables

2000-12-30 04:40  richardb

	* docs/manual/images/: .cvsignore, Makefile.am: Remove old
	directories and files

2000-12-30 04:36  richardb

	* docs/manual/: Makefile.am, bin-element.fig,
	connected-elements.fig, filter-element-multi.fig,
	filter-element.fig, hello-world.fig, mime-world.fig, queue.fig,
	sink-element.fig, src-element.fig, state-diagram.fig, thread.fig:
	Misc tweaks to makefile for manual.  Moved .figs into same
	directory so we can have them built appropriately without having to
	hack makefiles horribly.  Nearly have a core makefile which can be
	reused for other manuals.

2000-12-30 03:28  wtay

	* docs/manual/images/Makefile.am: Scaled down the eps images to
	half their size

2000-12-30 02:47  wtay

	* gst/elements/: gstelements.c, gstfakesrc.c: Added some INFO in
	gstelements Reverted pad names in gstfakesrc back to what they were

2000-12-30 02:41  omegahacker

	* gst/: cothreads.c, gst.c, gst_private.h, gstbin.c, gstbuffer.c,
	gstelement.c, gstinfo.c, gstinfo.h, gstpad.c, gstplugin.c,
	gsttype.c, elements/gsttypefind.c: Updated more files to use INFO.

2000-12-30 02:25  richardb

	* docs/manual/Makefile.am: Minor neaten to makefile.

2000-12-30 01:53  richardb

	* test/: a.c, avi2mpg.c, aviparse.c, mp1parse.c, mp1tomp1.c,
	mp2toavi.c, mp2tomp1.c, mp3.c, mp3parse.c, mp3play.c,
	mp3tovorbis.c, mpeg2parse.c, pipetest.c, qtest.c: Convert GstSrc's
	to GstElements.

2000-12-30 01:06  richardb

	* configure.in, plugins/Makefile.am, plugins/mp3encode/Makefile.am:
	Added configure test for liblame.

2000-12-30 00:46  richardb

	* configure.in, plugins/Makefile.am: Add configure tests for
	cdparanoia

2000-12-30 00:17  richardb

	* plugins/mpeg1/system_encode/Makefile.am: Include "include/"

2000-12-29 22:36  richardb

	* plugins/: mpeg2/parse/Makefile.am, mpeg1/parse/Makefile.am:
	Include "include/" when compiling.

2000-12-29 21:58  richardb

	* gst/elements/gsttypefind.c: Remove reference to gstdebug.h which
	doesn't exist.

2000-12-29 21:56  richardb

	* libs/getbits/: gstgetbits.c, gstgetbits.h: Fix a couple of MMX
	issues.

2000-12-29 21:50  richardb

	* libs/getbits/Makefile.am: Include libgst.la when linking gbtest
	so it compiles.

2000-12-29 21:44  richardb

	* plugins/mpeg1/mpeg_play/: decoders.c, decoders.h: Use VLC_ERROR
	instead of ERROR_VAL, at Erik's suggestion. :)

2000-12-29 21:40  richardb

	* plugins/mpeg1/mpeg_play/: decoders.c, decoders.h: Rename #define
	ERROR to #define ERROR_VAL to avoid conflict with gstinfo.h

2000-12-29 19:45  wtay

	* gst/Makefile.am, gst/gstautoplug.c, gst/gstbin.c,
	gst/gstbuffer.c, gst/gstbuffer.h, gst/gstpipeline.c,
	gst/gstprops.c, gst/gstscheduler.c, gst/elements/gstasyncdisksrc.c,
	gstplay/gstplay.c, plugins/capture/v4l/gstv4lsrc.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3encode/lame/gstlame.h,
	plugins/mpeg1/mpeg_play/decoders.c,
	plugins/mpeg1/mpeg_play/decoders.h,
	plugins/mpeg1video/parse/mp1videoparse.c: Fixed buffer flag
	handling gstplay used old flag handling updated some plugins for
	the new objects/error handling Fixed a serious buffer error in
	gst_buffer_append

2000-12-29 18:31  wtay

	* tests/: caps.c, props.c: Updated some test programs

2000-12-29 18:23  wtay

	* gst/: gstautoplug.c, gstbin.c, gstbuffer.h, gstpipeline.c,
	gstplugin.c, gstprops.c, gstprops.h, gstscheduler.c,
	elements/gstasyncdisksrc.c: Fixed a serious bug in gst_props_new:
	properties with a 0 value causes a segfault Fixed a possible bug in
	gstautoplug when one of the constructed paths was empty Commented
	out a too liberal assert in gstscheduler.c Added
	GST_BUFFER_DISCONTINUOUS tried to fix asyndisksrc

2000-12-29 10:02  omegahacker

	* gst/: Makefile.am, gst.c, gst.h, gst_private.h, gstdebug.h,
	gstelement.c, gstelement.h, gstinfo.c, gstinfo.h, gstobject.c,
	gstobject.h, gstplugin.c, gstscheduler.c: Added DEBUG, INFO, and
	ERROR systems.	Very little code is converted yet.  Policy
	decisions need to be made as to what kinds of cases get what kind
	of response, and what the default ERROR response should be.  Right
	now it will print out all the information, then have gdb spew a
	stack trace.

2000-12-29 05:38  omegahacker

	* gst/elements/: gstasyncdisksrc.c, gstasyncdisksrc.h,
	gstaudiosink.c, gstaudiosink.h, gstaudiosrc.c, gstaudiosrc.h,
	gstdisksrc.c, gstdisksrc.h, gstelements.c, gstesdsink.c,
	gstesdsink.h, gstfakesink.c, gstfakesink.h, gstfakesrc.c,
	gstfakesrc.h, gstfdsink.c, gstfdsink.h, gstfdsrc.c, gstfdsrc.h,
	gsthttpsrc.c, gsthttpsrc.h, gstidentity.c, gstidentity.h,
	gstpipefilter.c, gstpipefilter.h, gstqueue.c, gstqueue.h,
	gstsinesrc.c, gstsinesrc.h, gsttypefind.c, gsttypefind.h: Updated
	copyright notices.

2000-12-29 04:36  wtay

	* gstplay/gstplay.c: Add the pipeline to the thread after
	autoplugging.

2000-12-29 03:05  wtay

	* editor/gsteditorpadtemplate.c: Added a missing file...

2000-12-29 02:50  omegahacker

	* plugins/: example.c, example.h, au/gstparseau.c, au/gstparseau.h,
	audioscale/audioscale.c, audioscale/audioscale.h,
	avi/gstavidecoder.c, avi/gstavidecoder.h, avi/gstaviencoder.c,
	avi/gstaviencoder.h, avi/wincodec/gstwindec.c,
	avi/wincodec/gstwindec.h, avi/wincodec/gstwinenc.c,
	avi/wincodec/gstwinenc.h, capture/v4l/gstv4lsrc.c,
	capture/v4l/gstv4lsrc.h, cdparanoia/cdparanoia.c,
	cdparanoia/cdparanoia.h, cobin/cobin.c, cobin/spindentity.c,
	cobin/spindentity.h, dvdsrc/Makefile.am, dvdsrc/dvdsrc.c,
	dvdsrc/dvdsrc.h, effects/stereo/stereo.c, effects/stereo/stereo.h,
	effects/volume/volume.c, effects/volume/volume.h,
	filters/median/median.c, filters/median/median.h,
	filters/smooth/smooth.c, filters/smooth/smooth.h,
	jpeg/gstjpegdec.c, jpeg/gstjpegdec.h, jpeg/gstjpegenc.c,
	jpeg/gstjpegenc.h, mp3decode/mpg123/gstmpg123.c,
	mp3decode/mpg123/gstmpg123.h, mp3decode/parse/mp3parse.c,
	mp3decode/parse/mp3parse.h, mp3decode/xa/gstxa.c,
	mp3decode/xa/gstxa.h, mp3decode/xing/gstxing.c,
	mp3decode/xing/gstxing.h, mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	mpeg1/mpeg1encoder/gstmpeg1encoder.h,
	mpeg1/mpeg_play/gstmpeg_play.c, mpeg1/mpeg_play/gstmpeg_play.h,
	mpeg1/mpegaudio/gstmpegaudio.c, mpeg1/mpegaudio/gstmpegaudio.h,
	mpeg1/parse/mpeg1parse.c, mpeg1/parse/mpeg1parse.h,
	mpeg1/system_encode/system_encode.c,
	mpeg1/system_encode/system_encode.h,
	mpeg1video/parse/mp1videoparse.c, mpeg1video/parse/mp1videoparse.h,
	mpeg2/ac3dec/ac3dec.c, mpeg2/ac3dec/ac3dec.h,
	mpeg2/ac3parse/ac3parse.c, mpeg2/ac3parse/ac3parse.h,
	mpeg2/mpeg2dec/gstmpeg2dec.c, mpeg2/mpeg2dec/gstmpeg2dec.h,
	mpeg2/mpeg2enc/gstmpeg2enc.c, mpeg2/mpeg2enc/gstmpeg2enc.h,
	mpeg2/parse/mpeg2parse.c, mpeg2/parse/mpeg2parse.h,
	mpeg2/subtitles/mpeg2subt.c, mpeg2/subtitles/mpeg2subt.h,
	mpeg2/video/gstmpeg2play.c, mpeg2/video/gstmpeg2play.h,
	mpeg2/video/mpeg2dec.c, mpeg2/videoparse/mp2videoparse.c,
	mpeg2/videoparse/mp2videoparse.h, rtjpeg/rtjpegdec.c,
	rtjpeg/rtjpegdec.h, rtjpeg/rtjpegenc.c, rtjpeg/rtjpegenc.h,
	vcdsrc/vcdsrc.c, vcdsrc/vcdsrc.h, videoscale/videoscale.c,
	videoscale/videoscale.h, visualization/smoothwave/smoothwave.c,
	visualization/smoothwave/smoothwave.h,
	visualization/spectrum/gstspectrum.c,
	visualization/spectrum/gstspectrum.h,
	visualization/synaesthesia/synaesthesia.c,
	visualization/synaesthesia/synaesthesia.h,
	visualization/vumeter/vumeter.c, visualization/vumeter/vumeter.h,
	vorbis/vorbisdec.c, vorbis/vorbisdec.h, vorbis/vorbisenc.c,
	vorbis/vorbisenc.h, wav/gstparsewav.c, wav/gstparsewav.h: MEGA
	reparenting of all the elements to GstElement.

2000-12-29 02:28  omegahacker

	* gst/: Makefile.am, gst.h, gstbin.c, gstclock.c, gstconnection.c,
	gstconnection.h, gstelement.c, gstelement.h, gstfilter.c,
	gstfilter.h, gstpipeline.c, gstsink.c, gstsink.h, gstsrc.c,
	gstsrc.h, gsttee.c, gsttee.h, elements/gstasyncdisksrc.c,
	elements/gstasyncdisksrc.h, elements/gstaudiosink.c,
	elements/gstaudiosink.h, elements/gstaudiosrc.c,
	elements/gstaudiosrc.h, elements/gstdisksrc.c,
	elements/gstdisksrc.h, elements/gstelements.c,
	elements/gstfakesink.c, elements/gstfakesink.h,
	elements/gstfakesrc.c, elements/gstfakesrc.h, elements/gstfdsink.c,
	elements/gstfdsink.h, elements/gstfdsrc.c, elements/gstfdsrc.h,
	elements/gsthttpsrc.c, elements/gsthttpsrc.h,
	elements/gstidentity.c, elements/gstidentity.h,
	elements/gstpipefilter.c, elements/gstpipefilter.h,
	elements/gstqueue.c, elements/gstqueue.h, elements/gstsinesrc.c,
	elements/gstsinesrc.h, elements/gsttypefind.c,
	elements/gsttypefind.h: Reparented everything to GstElement,
	removing GstSrc, GstSink, GstFilter, and GstConnection.  Also fixed
	a bug in gst_bin_iterate_func.

2000-12-28 22:13  omegahacker

	* gst/gstcaps.h: missed one file for copyright

2000-12-28 22:12  omegahacker

	* gst/: Makefile.am, cothreads.c, cothreads.h, gst.c, gst.h,
	gst_private.h, gstarch.h, gstautoplug.c, gstautoplug.h, gstbin.c,
	gstbin.h, gstbuffer.c, gstbuffer.h, gstbufferpool.c,
	gstbufferpool.h, gstcaps.c, gstclock.c, gstclock.h,
	gstconnection.c, gstconnection.h, gstcpu.c, gstcpu.h, gstdebug.h,
	gstelement.c, gstelement.h, gstelementfactory.c, gstextratypes.c,
	gstextratypes.h, gstfilter.c, gstfilter.h, gsti386.h, gstlog.h,
	gstmeta.c, gstmeta.h, gstobject.c, gstobject.h, gstpad.c, gstpad.h,
	gstpipeline.c, gstpipeline.h, gstplugin.c, gstplugin.h, gstppc.h,
	gstprops.c, gstprops.h, gstpropsprivate.h, gstscheduler.c,
	gstscheduler.h, gstsink.c, gstsink.h, gstsrc.c, gstsrc.h, gsttee.c,
	gsttee.h, gstthread.c, gstthread.h, gsttrace.c, gsttrace.h,
	gsttype.c, gsttype.h, gstutils.c, gstutils.h, gstxml.c, gstxml.h,
	elements/gstasyncdisksrc.h, elements/gstqueue.c: Updated copyright
	in all the libgst files.  Created gst_private.h, set up all files
	to use it.

2000-12-28 21:42  wtay

	* docs/gst/Makefile.am, docs/gst/gstreamer-decl.txt,
	docs/gst/gstreamer-docs.sgml, docs/gst/gstreamer-sections.txt,
	docs/gst/tmpl/cothreads.sgml, docs/gst/tmpl/gst.sgml,
	docs/gst/tmpl/gstasyncdisksrc.sgml, docs/gst/tmpl/gstbin.sgml,
	docs/gst/tmpl/gstbuffer.sgml, docs/gst/tmpl/gstdisksrc.sgml,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstfakesink.sgml,
	docs/gst/tmpl/gstfakesrc.sgml, docs/gst/tmpl/gstfilter.sgml,
	docs/gst/tmpl/gstidentity.sgml, docs/gst/tmpl/gstobject.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstplugin.sgml,
	docs/gst/tmpl/gstqueue.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/gst/tmpl/gstsink.sgml, docs/gst/tmpl/gstsrc.sgml,
	docs/gst/tmpl/gstthread.sgml, docs/gst/tmpl/gsttype.sgml,
	docs/gst/tmpl/gsttypefind.sgml, docs/gst/tmpl/gstutils.sgml,
	docs/gst/tmpl/gstxml.sgml, docs/gst/tmpl/videoraw.sgml,
	gst/gstbin.c, gst/gstbin.h, gst/gstcaps.c, gst/gstcaps.h,
	gst/gstelement.c, gst/gstelement.h, gst/gstelementfactory.c,
	gst/gstpad.c, gst/gstpad.h, gst/gstpipeline.h, gst/gstprops.c,
	gst/gstprops.h, gst/gstscheduler.c, gst/gstsrc.h, gst/gstthread.c,
	gst/elements/gsttypefind.c: Updated the API docs.

2000-12-28 21:12  omegahacker

	* gst/gstpad.c: removed some dead pad_pull/push code

2000-12-28 03:17  wtay

	* plugins/mpeg1/parse/mpeg1parse.c: Remove stupid printf

2000-12-28 03:00  wtay

	* gst/elements/gsttypefind.c: fix a bug for multiple includes

2000-12-28 02:51  wtay

	* editor/Makefile.am, editor/editor.c, editor/gsteditor.h,
	editor/gsteditorbin.c, editor/gsteditorelement.c,
	editor/gsteditorpad.c, editor/gsteditorpalette.c,
	editor/gsteditorpalette.h, editor/gsteditorprojectview.c,
	editor/gsteditorproperty.c, gst/gstbin.c, gst/gstpipeline.c,
	gst/gstscheduler.c, gst/elements/gstqueue.c,
	gst/elements/gsttypefind.c, plugins/cdparanoia/cdparanoia.c,
	plugins/mp3decode/Makefile.am, test/mp3tovorbis.c,
	tests/registry.c: Pending editor changes.  fixes for autoplug of
	elementary MPEG1 video streams make sure mp3 types get compiled
	videosink changes for xml loading

2000-12-28 00:18  wtay

	* gst/: gstautoplug.c, gstbin.c, gstelement.c, gstelement.h,
	gstelementfactory.c, gstpad.c, gstpad.h, gstpipeline.c,
	gstplugin.c, gstscheduler.c, gsttype.c, elements/gstfakesrc.c,
	elements/gstfakesrc.h: Fixes for the new scheduler.  Autoplug works
	again with mp3/mpeg1/ogg

2000-12-27 23:42  omegahacker

	* gst/: gstbin.c, gstbin.h, gstscheduler.c: Added some cleanup, so
	create_plan can be called multiple times.

2000-12-27 22:49  wtay

	* plugins/vorbis/Makefile.am: Added libvorbisenc too

2000-12-27 22:39  wtay

	* test/: Makefile.am, ac3parse.c, avi2mpg.c, aviparse.c, dvdcat.c,
	mp1parse.c, mp1tomp1.c, mp2toavi.c, mp2tomp1.c, mp3.c, mp3parse.c,
	mp3play.c, mp3tovorbis.c, mpeg2parse.c, pipetest.c, record.c,
	spectrum.c, vidcapture.c, vidcapture2.c, videotest.c, wave.c,
	xml/createreg.c, xml/readreg.c: Updates for the gst_pad_push
	changes

2000-12-27 20:41  wtay

	* plugins/vorbis/: vorbisdec.c, vorbisenc.c, vorbisenc.h: Updated
	vorbis encoder/decoder to latest CVS version

2000-12-27 04:16  wtay

	* gst/elements/: gstfakesrc.c, gstfakesrc.h: Added loop_based
	option Added multiple pad output

2000-12-27 03:13  omegahacker

	* gst/: Makefile.am, cothreads.c, gstpipeline.c, gstthread.c,
	elements/Makefile.am, types/Makefile.am: Mostly minor little
	changes, but two interesting things:
	
	1) removed a pthread_join from the gst_thread_main_loop.  commented
	out because the thread isn't supposed to run pthread_join, the main
	process is.
	
	2) Fixed a major bug with cothreads in threads.  Had to add
	MAP_FIXED to the mmap() of the cothread stack.	Presumably the
	gilbc that ships with redhat 7.0 now places these mmap requests
	somewhat randomly.  Since they *must* be exactly where we expect
	them, it was failing.  MAP_FIXED forces it to put it where we say.

2000-12-27 00:46  omegahacker

	* gst/: gstbin.c, gstbin.h, gstscheduler.c: Added code to attempt
	the scheduling of chained cases.  Very simply right now.  Also
	added code to allow the use_cothread flag of a bin to force all the
	chains to use cothreads as well.

2000-12-27 00:01  omegahacker

	* tests/: Makefile.am, case4.c: added case4

2000-12-26 23:51  omegahacker

	* gst/: Makefile.am, gstbin.c, gstbin.h, gstdebug.h, gstelement.h,
	gstscheduler.c, gstscheduler.h, gstthread.c,
	elements/gstidentity.c, elements/gstqueue.c, elements/gstqueue.h:
	More massive changes to the scheduling system.	Moved the
	scheduling code to gstscheduler.[ch], so an child bin can replace
	the scheduler.	Introduced the concept of chains, which are subsets
	of the list of managed elements for a given manager bin, which get
	scheduled as separate entities.  gst_bin_iterate_func should be
	pretty much fixed now, the scheduling code gets to do all the hard
	work.
	
	Cothreaded case work in the couple tests I've tried, chained is
	next.

2000-12-26 20:49  omegahacker

	* gst/gstthread.c: Changed "bin" to "thread" in get_thread_new.

2000-12-26 20:24  wtay

	* docs/random/usecases: This file will contain several use cases to
	reason through

2000-12-25 01:33  wtay

	* editor/editor.glade, editor/editor.ts, editor/gsteditor.c,
	editor/gsteditor.h, editor/gsteditorbin.c,
	editor/gsteditorcanvas.c, editor/gsteditorconnection.c,
	editor/gsteditorconnection.h, editor/gsteditorcreate.c,
	editor/gsteditorcreate.h, editor/gsteditorelement.c,
	editor/gsteditorpad.c, editor/gsteditorproject.c,
	editor/gsteditorproject.h, editor/gsteditorprojectview.c,
	editor/gsteditorproperty.c, editor/gsteditorproperty.h,
	gst/gstbin.h, gst/gstelement.h, gst/gstutils.c, gst/gstutils.h,
	gst/gstxml.c, gst/elements/gstaudiosink.c: Lots of editor changes: 
	- restucturing of object creation  - loading of xml files  - visual
	eye candy: color changes on mouseover  - active object is indicated
	 - property box changes for boolean and enum types  - property box:
	create properties per element  - show pads/caps in propertybox
	added gst_util_get_bool_arg in gstutils.c added default properties
	for audiosink

2000-12-23 03:17  wtay

	* gst/: gstbin.c, gstelement.c, gstelement.h, gstelementfactory.c,
	gstpipeline.c, gstthread.c, elements/gstasyncdisksrc.c,
	elements/gstdisksrc.c, elements/gstfakesrc.c,
	elements/gstidentity.c: Added handoff signals to fakesrc and
	fakesink Added scheduling property to identity Added
	GST_STATE_TRANSITION macro to check for state changes.	Modified
	gstbin and gstthread to the new state change macros

2000-12-22 23:23  wtay

	* gst/gstbin.c, gst/gstelementfactory.c, gst/gstpad.c,
	gst/gstpipeline.c, gst/gstthread.c, gst/elements/gstfakesrc.c,
	gst/elements/gstfakesrc.h, tests/sched/runxml.c,
	tests/sched/cases/(fs-i-i-fs).xml: Fixed a bug in gstbin.c the
	manager was not detected.  Some other testcases bin, thread,
	pipeline use the elementfactory on gst_*_new

2000-12-22 16:14  wtay

	* gst/gstautoplug.c, gst/gstautoplug.h, gst/gstpipeline.c,
	gst/gstxml.c, gst/elements/gstfakesink.c,
	gst/elements/gstfakesink.h, gst/elements/gstidentity.c,
	gst/elements/gstidentity.h, gstplay/main.c, tests/sched/Makefile,
	tests/sched/runtestcases, tests/sched/runxml.c,
	tests/sched/testcases, tests/sched/cases/(fs-fs).xml,
	tests/sched/cases/(fs-i-fs).xml, tests/sched/cases/(fs-i-i-fs).xml,
	tests/sched/cases/(fs-i-q[i-fs]).xml: Implemented some test
	cases... they all fail :-( Added a flag to identity to for
	loop_based behaviour.  Added a signal to fakesink when a buffer is
	consumed.

2000-12-21 20:21  wtay

	* tests/sched/testcases: More testcases

2000-12-21 19:53  wtay

	* tests/: autoplug.c, sched/testcases: 70+ testcases to start with

2000-12-21 07:10  omegahacker

	* gst/gstbin.c: Some fixes to the non-chained case, it works in a
	very basic way.  More use cases will hopefully provide some sanity.

2000-12-21 01:27  omegahacker

	* gst/elements/gstqueue.c: Fixing two bugs:
	
	1) I had commented out an unlock.  duh.  2) changed the _get
	function to return the buffer rather than call _push
	
	Also uncommented some debugging I'd turned off.  Need to solve the
	verbosity problem somehow, I think by way of debug levels as well
	as info levels...

2000-12-20 09:39  omegahacker

	* gst/: gstbin.c, gstbin.h, gstelement.c, gstelement.h, gstpad.h,
	gstpipeline.c, gstthread.c, elements/gstasyncdisksrc.c,
	elements/gstaudiosrc.c, elements/gstdisksrc.c,
	elements/gstfakesrc.c, elements/gstfakesrc.h, elements/gstfdsrc.c,
	elements/gsthttpsrc.c, elements/gstqueue.c, elements/gstsinesrc.c:
	Massive scheduling changes (again).  Not entirely complete, but
	getting closer.  Need to think about various scheduling plans that
	we might want to produce, and figure out the rules for what is
	legal, and how to get the results we need as far as the plan.

2000-12-20 00:55  wtay

	* docs/random/autoplug1: Added explanation for current autoplugging

2000-12-19 16:38  wtay

	* tests/: .cvsignore, props.c: Small test program for the property
	system

2000-12-19 16:36  wtay

	* gst/gstcaps.c, gst/gstcaps.h, gst/gstprops.c, gst/gstprops.h,
	plugins/mpeg1/mpegtypes/mpeg1types.c, tests/Makefile.am: Added API
	to dynamically create GstCaps and GstProps Changed typefind of
	mpeg1 to set the GstProps.  autoplugging now works again for mpeg1,
	whoohoo!

2000-12-19 13:44  wtay

	* docs/random/plugins.dia, editor/editor.dia, gst/gstautoplug.c,
	gst/gstautoplug.h, tests/autoplug.c: Added the autoplugger.  some
	.dia drawings of the objects the autoplug test program.

2000-12-19 13:41  wtay

	* gst/Makefile.am, gst/gst.c, gst/gstbin.c, gst/gstcaps.c,
	gst/gstelement.h, gst/gstelementfactory.c, gst/gstpipeline.c,
	gst/gstplugin.c, gst/gstprops.c, gst/gstthread.c, gst/gsttype.c,
	gst/gsttype.h, plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c, tests/Makefile.am,
	tests/registry.c: Cleanup in gsttypes.c:   removed the crazy GList
	of GHashTables, since the autoplugger will   use the GstCaps and
	elementfactories instead of the type system.	We don't maintain a
	list anymore of the elements for the specific	 removed unused
	code in XML loading/saving.
	
	Cleanup in gstelementfactory:	removed the register/unregister
	methods, register is now implicit when	 gst_elementfactory_new is
	called. _unregister is now _destroy.	Removed logic to
	register/unregister the types in gsttypes.    added methods to
	query if the factory can src/sink a GstCaps    Make sure the
	elementfactory is set in the element_class when a new	 element is
	registered with gst_elementfactory_new.
	
	gst.c: properly register the basic bins gst_pipeline: use new
	gstautoplug (next checkin) gstprops: fixed an error in
	compatibility check registry test program changes plugins: misc
	changes for the new caps system.

2000-12-19 05:48  omegahacker

	* plugins/cdparanoia/cdparanoia.c: safety issue: turned off the
	code the requires a patch to cdparanoia to avoid a segfault

2000-12-17 16:24  wtay

	* gst/gstbin.c, gst/gstcaps.c, gst/gstpad.c, gst/gstpipeline.c,
	gst/gstprops.c, gst/gsttype.c, gst/gsttype.h,
	gst/elements/gsttypefind.c, gst/elements/gsttypefind.h,
	plugins/avi/gstavidecoder.c, plugins/avi/gstaviencoder.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/types/mp3types.c,
	plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c, plugins/vorbis/vorbis.c: The
	typefind function now returns a GstCaps structure instead of a
	gboolean.  modified some plugins to this new behaviour Fixed
	autoplugging for the mpg123 case. When an element is selected in
	autoplugging and the caps do not match, another element is selected
	until the caps match. only examples/autoplug works because
	gstmediaplay uses a threaded setup that does not seem to work with
	the current scheduling.

2000-12-17 06:26  omegahacker

	* docs/code-reviews/: README, gstbin.c-1.41: README and the
	beginning of the first code-review.  Here's the README:
	
	Code reviews: =============
	
	Files are to be named by file or subsystem, and CVS revision number
	or date:
	
	gstbin.c-1.41 editor-20001216
	
	A file should look something like the following:
	
	-------------------------------------------------------------------
	--- Code Review =========== File: gst/gstbin.c Revision: 1.41 Date:
	Dec 16, 2000 Reviewer: Erik Walthinsen <omega@cse.ogi.edu>
	
	----- Line 20: #define GST_DEBUG_ENABLED
	
	Shouldn't be here, DEBUG should be enabled globally.  May leave
	until scheduling changes are done.
	
	----- Line 117: (gst_bin_class_init)  
	gstelement_class->elementfactory =   
	gst_elementfactory_find("bin");
	
	Not sure this is such a great idea.  I thought the GstElement code
	did this kind of stuff?
	
	-------------------------------------------------------------------
	---
	
	The format will evolve as we do more stuff, such as putting in
	fields for recommended actions, comments regarding any later
	changes made and when, etc.

2000-12-17 04:54  omegahacker

	* gst/gstbin.c, gst/gstbuffer.h, gst/gstdebug.h,
	gst/elements/gsttypefind.c, tools/gstreamer-register.c: Some minor
	compilation fixes...

2000-12-16 17:12  wtay

	* editor/editor.c, editor/editor.glade, editor/editor.ts,
	editor/gsteditor.c, editor/gsteditorbin.c,
	editor/gsteditorelement.c, editor/gsteditorproject.c,
	editor/gsteditorproject.h, editor/gsteditorprojectview.c,
	gst/gstbin.c, gst/gstbuffer.h, gst/gstdebug.h, gst/gstpad.c,
	gst/gstprops.c, gst/gstthread.c, gst/gstxml.c, gst/gstxml.h,
	tests/registry.c: some editor changes= loading of save pipelines
	(not working) added include in gstdebug.h for getpid property
	loading implemented GstXML can now be queried for the toplevel
	elements.

2000-12-16 10:18  omegahacker

	* docs/random/sources, examples/autoplug/Makefile,
	examples/helloworld/Makefile, examples/queue4/Makefile,
	examples/xml/Makefile, gst/gst.c, gst/gstbin.c, gst/gstbuffer.h,
	gst/gstdebug.h, gst/gstpad.c, gst/gstpad.h, gst/gstpipeline.c,
	gst/gstthread.c, gst/elements/gstasyncdisksrc.c,
	gst/elements/gstaudiosrc.c, gst/elements/gstdisksrc.c,
	gst/elements/gstfakesink.c, gst/elements/gstfakesrc.c,
	gst/elements/gstfdsrc.c, gst/elements/gsthttpsrc.c,
	gst/elements/gstidentity.c, gst/elements/gstqueue.c,
	gst/elements/gstsinesrc.c, plugins/cdparanoia/cdparanoia.c,
	plugins/cdparanoia/cdparanoia.h, plugins/cobin/spindentity.c,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h,
	tests/Makefile.am, tests/mp3encode.c, tests/pad-active.c,
	tests/paranoia.c, tests/queue.c, tests/rip.c, tests/simplefake.c,
	tests/states.c: WARNING: Don't grab this updated unless you're
	really, REALLY sure.  WARNING: Wait for the next one.
	
	Whole lotta changes here, including a few random bits:
	
	examples/*/Makefile: updated to use `libtool gcc`, not just `gcc`
	gst/   gstbuffer.h: updated to new flag style	gst.c, gstdebug.h:
	added new debugging for function ptrs	gstpipeline.c: set type of
	parent_class to the class, not the object   gstthread.c: ditto
	plugins/   cdparanoia/cdparanoia.c: added an argument type, updated
	some defaults	cobin/spindentity.c: updated to new do/while
	loopfunction style   mp3encode/lame/gstlame.c: argument types,
	whole lotta lame options tests/: various changes
	
	Now, for the big changes:  Once again, the scheduling system has
	changed.  And once again, it broke a whole bunch of things.  The
	gist of the change is that there is now a function pointer for
	gst_pad_push and gst_pad_pull, instead of a hard-wired function. 
	Well, currently they are functions, but that's for debugging
	purposes only, they just call the function pointer after spewing
	lots of DEBUG().
	
	This changed the GstPad structure a bit, and the GstPad API as
	well.  Where elements used to provide chain() and pull() functions,
	they provide chain() and get() functions.
	gst_pad_set_pull[region]_function has been changed to
	get_pad_set_get[region]_function.  This means all the elements out
	there that used to have pull functions need to be updated.  The
	calls to that function have been changed in the normal elements,
	but the names of the functions passed is still _pull[region](),
	which is an aesthetic issue more than anything.
	
	As for what doesn't work yet, just about anything dealing with
	Connections is hosed, meaning threaded stuff won't work.  This will
	be fixed about 12 hours from now, after I've slept, etc.  The
	simplefake.c test works in both cothreaded and chained cases, but
	not much else will work due to the Connection problem.	Needless to
	say, don't grab this unless you *need* these features *now*, else
	wait to update this stuff until tomorrow.
	
	I'm going to sleep now.

2000-12-15 16:43  wtay

	* examples/queue/queue.c, examples/queue2/queue2.c, gst/gstbin.c,
	gst/gstcaps.c, gst/gstpipeline.c, gst/gstplugin.c, gst/gsttype.c,
	gst/elements/gsttypefind.c, plugins/mpeg1/mpegtypes/mpeg1types.c,
	plugins/mpeg2/mpegtypes/mpeg2types.c, plugins/vorbis/vorbis.c: Move
	a step closer to autoplugging. The element selection in the
	pipeline works.  Slight modification to the typefind function
	handling.  removed the stupid mime types in the mpeg decoders. 
	Adjust videosink for the new caps handling.  Modified the queue
	example to show an error in plan creation; Erik can you solve this?
	This is the type of pipelines autoplugging uses.

2000-12-15 01:57  wtay

	* gst/Makefile.am, gst/cothreads.c, gst/cothreads.h, gst/gst.c,
	gst/gst.h, gst/gstarch.h, gst/gstbin.c, gst/gstbin.h,
	gst/gstbuffer.c, gst/gstbuffer.h, gst/gstbufferpool.c,
	gst/gstbufferpool.h, gst/gstcaps.c, gst/gstcaps.h, gst/gstclock.c,
	gst/gstclock.h, gst/gstconnection.c, gst/gstcpu.c, gst/gstcpu.h,
	gst/gstdebug.h, gst/gstelement.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstextratypes.c, gst/gstextratypes.h,
	gst/gstfilter.c, gst/gstfilter.h, gst/gstmeta.c, gst/gstmeta.h,
	gst/gstobject.c, gst/gstobject.h, gst/gstpad.c, gst/gstpad.h,
	gst/gstpipeline.c, gst/gstpipeline.h, gst/gstplugin.c,
	gst/gstplugin.h, gst/gstprops.c, gst/gstprops.h, gst/gstsink.c,
	gst/gstsink.h, gst/gstsrc.c, gst/gstsrc.h, gst/gsttee.c,
	gst/gstthread.c, gst/gstthread.h, gst/gsttrace.c, gst/gsttrace.h,
	gst/gsttype.c, gst/gstutils.c, gst/gstxml.c, gst/gstxml.h,
	gst/elements/gstasyncdisksrc.c, gst/elements/gstasyncdisksrc.h,
	gst/elements/gstaudiosink.h, gst/elements/gstaudiosrc.h,
	gst/elements/gstdisksrc.h, gst/elements/gstelements.c,
	gst/elements/gsthttpsrc.h, gst/elements/gstpipefilter.h,
	gst/types/gsttypes.c, gstplay/gstmediaplay.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/capture/v4l/gstv4lsrc.h,
	plugins/cdparanoia/cdparanoia.h, plugins/dvdsrc/dvdsrc.c,
	plugins/dvdsrc/dvdsrc.h, plugins/mp3decode/mpg123/gstmpg123.h,
	plugins/mp3encode/lame/gstlame.h,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/idct.c, plugins/vcdsrc/vcdsrc.h,
	plugins/vorbis/vorbis.c, tests/.cvsignore, tests/rip.c,
	tools/gstreamer-register.c: Header cleanup: try to include as
	little as possible; this will probably speed up compilation a bit. 
	changed the .c files to use #include "..." Fix for the 'plugins are
	loaded twice' bug.  Fix 22186: GstObject flags are now used
	everywhere. Added *_FLAG_LAST so elements do not use the same
	flags. Added some padding in the flag enum for future expansion.

2000-12-14 17:21  wtay

	* gst/gstpad.c, gst/gstplugin.c, plugins/cdparanoia/cdparanoia.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/vorbis/vorbis.c, plugins/vorbis/vorbisdec.c,
	plugins/vorbis/vorbisenc.c: Some plugins are adjusted to the new
	pad template mechanisms.

2000-12-14 12:30  wtay

	* plugins/mp3encode/lame/gstlame.c: Fixed a memory leak

2000-12-13 21:42  omegahacker

	* docs/random/TODO-post-0.1.0: First few TODO items to be done
	after 0.1.0 (i.e. in 2001)

2000-12-13 19:35  wtay

	* plugins/mp3encode/lame/gstlame.c: Update to the lame encoder

2000-12-13 19:29  wtay

	* docs/gst/gstreamer-decl.txt, docs/gst/gstreamer-sections.txt,
	docs/gst/tmpl/gstconnection.sgml, docs/gst/tmpl/gstelement.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	docs/gst/tmpl/gstsrc.sgml, docs/gst/tmpl/gsttype.sgml,
	gst/gstcaps.c, gst/gstcaps.h, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstpad.c, gst/gstpad.h, gst/gsttype.c,
	gst/elements/gstaudiosink.c, gst/elements/gsthttpsrc.c,
	plugins/cdparanoia/cdparanoia.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c: Changed the GstPadFactory and
	added the GstPadTemplate.
	
	The GstPadFactory is an easy way to define a pad with capabilities.
	 The GstPadFactory is converted into a GstPadTemplate. The template
	is used to create new pads and to expose the possible pads used in
	an element to the plugin system.
	
	updated mp3parse, mpg123, cdparanoia to the new API.  Rerun
	gstreamer-register because the XML definition has changed.

2000-12-12 19:31  wtay

	* docs/random/plugins: Added a document about how we handle plugins
	and dynamic loading.

2000-12-12 19:29  wtay

	* gst/gstcaps.c, gst/gstcaps.h, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstpad.c, gst/gstpad.h,
	gst/gstpipeline.c, gst/gsttype.c, plugins/au/gstparseau.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c, tests/.cvsignore, tests/caps.c,
	tests/registry.c: More Caps changes, this change introduces the
	padfactory. the GstPadFactory will be used to describe the pads
	that an element will contain during its lifetime.  mpg123 and
	mp3parse serve as an example.  More XML changes to incorporate the
	padfactories.

2000-12-12 09:40  omegahacker

	* configure.in, plugins/Makefile.am, plugins/mp3encode/Makefile.am,
	tests/Makefile.am, gst/gstbin.c, gst/gstplugin.c,
	gst/elements/gstfdsink.c, plugins/mp3encode/lame/Makefile.am,
	plugins/mp3encode/lame/gstlame.c, plugins/mp3encode/lame/gstlame.h,
	tests/rip.c: Added LAME encoder.  Wow.

2000-12-12 06:49  omegahacker

	* configure.in, editor/gstelementselect.c, plugins/Makefile.am,
	plugins/cdparanoia/Makefile.am, plugins/cdparanoia/cdparanoia.c,
	plugins/cdparanoia/cdparanoia.h, tests/Makefile.am,
	tests/paranoia.c: Brand new source, the cdparanoia source.  Reads
	audio data from a CD, writes out raw audio.  The tests/paranoia.c
	program will simply hook this up to a sound card.  It works
	perfectly.
	
	Next step is to flesh out the rest of the element, including pad
	caps, better seek and playout control, signals, and whatever else
	comes up.
	
	A minor patch to the editor is included here, the GstElementFactory
	details struct has a name change from 'class' to 'klass' that
	wasn't reflected in the elementselect widget.  Fixd.

2000-12-11 00:25  omegahacker

	* tests/queue.c: Updated to latest code for testing scheduling.

2000-12-11 00:24  omegahacker

	* gst/: gstbin.c, gstdebug.h, gstelement.c, gstpad.c,
	elements/gstqueue.c: Implemented the hybrid scheduling system for
	sources and connections outside the current Bin.  Is a bit hackish
	in one place, but I'll work out a way to make that cleaner soon. 
	queue.c in tests now works nicely in all cases.  More to come
	later.

2000-12-11 00:06  wtay

	* tests/registry.c: Test program to check the registry handling

2000-12-11 00:04  wtay

	* gst/Makefile.am, gst/gstbin.c, gst/gstcaps.c, gst/gstcaps.h,
	gst/gstelement.h, gst/gstelementfactory.c, gst/gstpad.c,
	gst/gstpad.h, gst/gstpipeline.c, gst/gstplugin.c, gst/gstplugin.h,
	gst/gstprops.c, gst/gstprops.h, gst/gsttype.c, gst/gsttype.h,
	gst/elements/gstaudiosink.c, gst/elements/gsttypefind.c,
	gstplay/main.c, plugins/au/gstparseau.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstaviencoder.c,
	plugins/avi/wincodec/gstwincodec.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/effects/stereo/stereo.c,
	plugins/effects/volume/volume.c, plugins/filters/median/median.c,
	plugins/filters/smooth/smooth.c, plugins/jpeg/gstjpeg.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/gstmpg123.h,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/xing/gstxing.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2dec/decode.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2dec/header.c, plugins/mpeg2/mpeg2dec/idct.c,
	plugins/mpeg2/mpeg2dec/idct_mmx.c,
	plugins/mpeg2/mpeg2dec/motion_comp.c,
	plugins/mpeg2/mpeg2dec/motion_comp_mmx.c,
	plugins/mpeg2/mpeg2dec/motion_comp_sse.s,
	plugins/mpeg2/mpeg2dec/mpeg2.h,
	plugins/mpeg2/mpeg2dec/mpeg2_internal.h,
	plugins/mpeg2/mpeg2dec/perftest.c, plugins/mpeg2/mpeg2dec/slice.c,
	plugins/mpeg2/mpeg2dec/vlc.h, plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/mp2videoparse.c, plugins/rtjpeg/rtjpeg.c,
	plugins/vcdsrc/vcdsrc.c, plugins/videoscale/videoscale.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c, plugins/vorbis/vorbis.c,
	plugins/wav/gstparsewav.c, tests/Makefile.am, tests/caps.c,
	tests/queue.c: First attempt at rebuilding the type/plugin system  
	- make sure caps/props are saved in the registry autoplugging is
	completely broken.  removed the typefactories and typeids from all
	the pads in the plugins XML load/save is ok (be sure to rerun
	gstreamer-register)

2000-12-09 09:13  omegahacker

	* gst/: gstbin.c, gstbin.h, gstelement.c, gstpad.h: Snapshot of
	work-in-progress do deal with out-of-bin elements.  Current system
	is very likely going to be ditched due to its complexity and the
	fact that it doesn't work right now.  More than that, it's
	generating some really odd results in my test program, which aren't
	readily explainable.
	
	If you want to keep a working copy of your working copy (heh),
	don't update until this is replaced with a hybrid approach.  This
	approach will be the beginning of a plan generator that can
	construct full hybrid schedules given hints from various places.
	
	Hybrid means that cothreads are used, but there are chunks of the
	pipeline that are actually dealt with by chaining. This can improve
	speed by reducing cothread switches (which are much cheaper than
	thread switches, but still far from free, about 570 cycles on my
	PIII), but does carry a complexity burden.  Luckily, the structure
	of GStreamer allows that burden to live entirely in create_plan. 
	Luck?  I think not ;-)

2000-12-08 23:38  omegahacker

	* gst/: gstbin.c, gstthread.c: Mostly debugging changes.  What's in
	CVS seems to work rather well, actually.
	
	Next is the work on task 23098...

2000-12-08 20:31  omegahacker

	* tests/: Makefile.am, queue.c: Test program for simple queue
	operations.  Good for testing thread/cothread interations.

2000-12-08 18:24  wtay

	* gst/: gstbin.c, gstdebug.h, gstpad.c, gstpad.h: Added pullregion
	in again, it got removed with the previous commit.

2000-12-08 10:33  omegahacker

	* gst/: gstbin.c, gstconnection.c, gstconnection.h, gstdebug.h,
	gstelement.c, gstpad.c, elements/gstqueue.c: Another big set of
	changes.  Connections are now also pullfunc based.  gstqueue has
	been updated, I don't know of any other connections offhand.
	
	There are still a few things that need doing, specifically the
	concept of a source or connection with connections to multiple
	thread contexts is not dealt with.  This may force us to move the
	threadstate from the element to the pad, maybe keeping the
	element's copy for simple cases.  Then the Bin would create a
	structure to pass to the cothreaded _wrappers of any such elements,
	which would detail the pads that are to be dealt with by this
	particular cothread context.
	
	That will speed things up to, since we don't have to look through
	the list of all pads for every Src or Connection element for every
	iteration, we can simply step through the list provided by the
	plan.  Special case might even have a single pad pointer sitting
	there to trump the list, if there's only one (the common case
	anyway).
	
	Task 23098 is tracking these changes.  The main task 22588 depends
	on that subtask, as well as 22240, which is a consistency check on
	PAD_DISABLED.

2000-12-07 18:38  wtay

	* tests/: .cvsignore, Makefile.am, caps.c: Updated the test program

2000-12-07 18:37  wtay

	* gst/: Makefile.am, gst.h, gstcaps.c, gstcaps.h, gstcapsprivate.h,
	gstprops.c, gstprops.h, gstpropsprivate.h: separated the properties
	from the capabilities as we might use the properties for metadata
	too.

2000-12-06 23:04  wtay

	* gst/: gstbin.c, gstcaps.c, gstcaps.h, gstpad.c,
	elements/gstasyncdisksrc.c: Added pulregion handling.  Added
	GstCapsListFactory in headers

2000-12-05 18:08  wtay

	* gst/: Makefile.am, gstbin.c, gstpad.c, gstpipeline.c,
	elements/gstasyncdisksrc.c: Fixed autoplugging.

2000-12-04 19:24  wtay

	* docs/random/caps: Added some capability options

2000-12-04 10:52  omegahacker

	* gst/: gstbin.c, gstelement.h, gstpad.c, gstpad.h, gstpipeline.c,
	gstsrc.c, gstsrc.h, elements/gstasyncdisksrc.c,
	elements/gstaudiosrc.c, elements/gstdisksrc.c,
	elements/gstfakesrc.c, elements/gstfdsrc.c, elements/gsthttpsrc.c,
	elements/gstsinesrc.c: Changed the way things are scheduled,
	especially sources.  A Src used to have a push() function, and
	optionally a pushregion() to deal with async reads, etc.  That
	whole thing has gone away, in favor of providing a pull() function
	for the output (Src) pad instead, ala chain functions.	This makes
	constructing cothreaded schedules out of non-loop elements somewhat
	easier.  Basically there was always a question as to which pad was
	being dealt with.  In the pullregion case, cothread-specific data
	was used to try to pass the region struct to the right place, which
	is a slow hack.  And in general, the push function severely limited
	the kind of tricks that could be played when there's more than one
	output pad, such as a multi-out file reader with async capabilities
	on each pad independently.
	
	This changes the way cothread scheduling occurs.  Instead of the
	hack to deal with Src's by calling their push() function (or
	optionally the pushregion(), in certain cases), we now are working
	towards a general mechanism where pads are the only thing that are
	dealt with directly.
	
	An optimization was made in the process of doing this: the
	loopfunction actually run as the outer [stack] frame of the
	cothread is now set more intelligently in create_plan() based on
	what kind of element it is.  We now have:
	
	loopfunc_wrapper: used for loop-based elements, it simply calls the
	    loopfunc in a loop, paying attention to COTHREAD_STOPPING (see 
	below).  It currently does other, soon to be depracated, stuff.
	
	pullsrc_wrapper: wraps a Src that's not loop-based (since your
	options  are now loop- or pull-based)
	
	There will be a couple more to deal with other cases, such as
	Connections and chain-based elements.  The general idea is that
	it's a lot more efficient to make the decisions once in create_plan
	than to keep doing this huge if/else chain in the wrapper.  Just
	choose the right wrapper up front.  It'll be most apparent
	performance-wise in the case of whichever element context is
	switched to first for each iteration, since the whole wrapper setup
	is done for every iteration.
	
	The tricky part is that there is now a bit of overloading of the
	function pointers in a pad.  The current meanings (possibly to
	change a bit more soon) are:
	
	chainfunc: as always, chainfunc pointer is mirrored between peer
	pads		(this may change, and the chain func may end up in
	pushfunc) pushfunc: SrcPad: gst_pad_pushfunc_proxy, cothread_switch
	to peer 	  SinkPad: none (may take over chainfunc, see
	below) pullfunc: SrcPad: Src or Connection's function to construct
	buffers 	  SinkPad: gst_pad_pullfunc_proxy, cothread_switch
	to peer
	
	There are a number of issues remaining with the scheduling, not the
	least of which is the fact that Connections are still dealt with
	the old way, with _push() functions and such.  I'm trying to figure
	out a way to unify the system so it makes sense.  Following the
	scheduling system is hard enough, trying to change it is murder.
	
	Another useful scheduling addition, mentioned above, is
	COTHREAD_STOPPING.  It's an element flag that's used to signal
	whatever code is running in cothread context that it should be
	finishing up and exiting soon.	An example of this is in
	plugins/cobin/spindentity.c.  All the loops should now be composed
	of do/while loops, rather than while(1) loops:
	
	  do {
	    buf = gst_pad_pull(spindentity->sinkpad);
	    gst_pad_push(spindentity->srcpad,buf);
	  } while (!GST_ELEMENT_IS_COTHREAD_STOPPING(element));
	
	The reason for this is that COTHREAD_STOPPING may be set before the
	above loop ever gets started.  It wouldn't do for the body of the
	loop to never once get called, that would simply stall the
	pipeline. Note that only the core library code is ever responsible
	for setting and unsetting this flag.  All elements have to do is
	respond to it by cleanly exiting the loop and the function holding
	it.
	
	This is needed primarily to allow iterations to occur properly. 
	Basically, there's a single entry point in the cothread scheduling
	loop, gst_bin_iterate_func() simply switches to this cothread.	If
	the element in this context is allowed to loop infinitely, nothing
	would even switch back to the context from which the iterate() was
	originally called.  This is a bit of a problem.  The solution is
	for there to be an implicit switch back to the originating context.
	 Now, even I'm not sure exactly how this works, but if the cothread
	that's switched to actually returns, execution returns back to the
	calling context, i.e. iterate_func().
	
	COTHREAD_STOPPING is therefore set just before switching into this
	(currently randomly chosen) context, on the assumption that it will
	return promptly after finishing its duties.  The burden of clearing
	the flag falls to the various wrapper functions provided by the Bin
	code, thus element writers don't have to worry about doing that at
	all (and simply shouldn't).
	
	Related changes: All the sources in elements/ have been changed to
	reflect the new system.
	
	FIXMEs: 1) gstpipeline.c calls gst_src_push at some point, dunno
	why, it's commented out now.  2) any other sources, including
	vcdsrc, dvdsrc, and v4lsrc will break badly and need to be modified
	to work as pull-based sources.

2000-12-04 09:35  omegahacker

	* acconfig.h, configure.in, gst/Makefile.am, gst/cothreads.c,
	gst/gst.h, gst/gstbuffer.c, gst/gstdebug.h: Changes made to the
	DEBUG system.  New header file gstdebug.h holds the stuff to keep
	it out of gst.h's hair.  DEBUG prints out the process id, cothread
	id, source filename and line number.  Two new macros DEBUG_ENTER
	and DEBUG_LEAVE are used to show the entry and exit of a given
	function.  This eventually might be used to construct call trace
	graphs, even taking cothreads into account.  This would be quite
	useful in visualizing the scheduling mechanism.
	
	Minor changes to various debug messages.
	
	Also sitting in gstdebug.h is a prototypical DEBUG_ENTER that's
	capable of performing DEBUG_LEAVE automatically.  It does this by
	utilizing a little-known GCC extension that allows one to call a
	function with the same parameters as the current function.  The
	macro uses this to basically call itself.  A boolean is used to
	ensure that when it calls itself it actually runs the body of the
	function.  In the meantime it prints stuff out before and after the
	real function, as well as constructing a debugging string.  This
	can be used eventually to provide call-wide data on the DEBUG
	lines, instead of having to replicate data on each call to DEBUG. 
	More research is needed into how this would most cleanly be fit
	into some other chunk of code, like GStreamer (I think of this
	DEBUG trick as a separate project, sorta).
	
	Unfortunately, the aforementioned DEBUG trick interacts quite
	poorly with cothreads.	Almost any time it's used in a function
	that has anything remotely to do with a cothread context (as in, it
	runs in one), a segfault results from the __builtin_apply call,
	which is the heart of the whole thing.	If someone who really knows
	assembly could analyze the resulting code to see what's really
	going on, we might find a way to fix either the macro or the
	cothreads (I'm thinking that there's something we missed in
	constructing the cothreads themselves) so this works in all cases.
	
	In the meantime, please insert both DEBUG_ENTER and DEBUG_LEAVE in
	your functions.  Be sure to put DEBUG_ENTER after your variable
	declarations and before any functional code, not to put the
	function name in any DEBUG strings (it's already there, trust me),
	and put a DEBUG_LEAVE if you care enough.
	
	Changes are going to happen in the way DEBUGs and other printouts
	occur, so stay tuned.

2000-12-04 09:32  omegahacker

	* gst/gstplugin.c: Added a check to see if the plugin actually
	exists before even bothering to try to load it.  Saves a fair
	amount of debugging spew with _gst_plugin_spew enabled.

2000-12-04 09:14  omegahacker

	* plugins/mp3decode/parse/mp3parse.c: Minor change to the
	head_check function: DEBUG pretty much assumes there's a newline
	(\n) at the end, things get messy otherwise.  Might add a
	DEBUG_NOPREFIX to deal with this problem later, but I think this is
	a good cleanup anyway.

2000-12-03 20:15  wtay

	* tests/caps.c: More test cases.

2000-12-03 20:15  wtay

	* gst/: gstcaps.c, gstcaps.h: Implemented real Caps checking.

2000-12-03 17:52  wtay

	* tests/: Makefile.am, caps.c, states.c: Added a test program for
	the capabilities

2000-12-03 17:51  wtay

	* gst/: Makefile.am, gst.h, gstcaps.c, gstcaps.h, gstcapsprivate.h,
	gstpad.c, gstpad.h, gstpipeline.c: Added multiple types to the
	pads.  Added first preview of the capabilities system. 
	Autoplugging is seriously broken with these (and other) changes.

2000-12-03 15:02  richardb

	* test/cothreads/: Makefile.am, cothreads.c, cothreads.h: Remove
	cothreads.[ch] from tests/cothreads/ and replace then with a rule
	in the Makefile.am to generate symlinks to the live versions of the
	code in gst/ : fixes a compile error, and should keep things
	cleaner.

2000-12-03 00:17  omegahacker

	* gst/: cothreads.c, cothreads.h, gst.h: Enhanced debugging by
	making DEBUG() print out the cothread ID as well as the process ID.
	 cothread_getcurrent returns the current cothread ID, or -1 if
	cothreads aren't set up in this process context.

2000-12-02 10:07  omegahacker

	* docs/random/filter-writers-guide: First pass at an outline for
	the Filter Writer's Guide.  Mostly complete, though the structure
	needs some work.  Just need someone to write it ;-)

2000-11-30 20:30  wtay

	* docs/random/types3: Another type system proposal.

2000-11-29 10:05  omegahacker

	* gst/cothreads.c: Rearranged cothread_switch a bit to move all the
	code for error conditions to the end, using goto's to get there. 
	This has the presumed advantage of consolidating all the normally
	run code into one chunk, reducing jumps (and the associated
	penalties in any modern processor) and limiting cache- line usage. 
	It may be instructive to look at the generated assembly for this
	revision and the previous, to see if gcc is smart enough to do this
	for us anyway.
	
	If you want to turn off some of the checks (they are all checks for
	NULL pointers, if you're curious) for a speed gain, disable the
	#define of COTHREAD_PARANOID at the top.

2000-11-26 19:11  wtay

	* docs/random/types2: Added the type system design.

2000-11-25 18:13  wtay

	* docs/random/sources: More ramblings..

2000-11-25 16:45  wtay

	* docs/random/sources: Another alternative to the src. Please
	correct.

2000-11-25 16:00  wtay

	* docs/random/sources: Added asci art control flow diagrams

2000-11-25 14:18  wtay

	* docs/random/sources, gst/gstpipeline.c,
	gst/elements/gstasyncdisksrc.h, gst/elements/gstaudiosink.c,
	gst/elements/gstaudiosrc.c, gst/elements/gstaudiosrc.h,
	gst/elements/gstelements.c, gst/elements/gstesdsink.h,
	gst/elements/gstfakesink.c, gst/elements/gstfakesink.h,
	gst/elements/gstfakesrc.c, gst/elements/gstfakesrc.h,
	gst/elements/gstfdsink.c, gst/elements/gstfdsink.h,
	gst/elements/gstfdsrc.c, gst/elements/gstfdsrc.h,
	gst/elements/gsthttpsrc.c, gst/elements/gsthttpsrc.h,
	gst/elements/gstidentity.c, gst/elements/gstidentity.h,
	gst/elements/gstqueue.c, gst/elements/gstqueue.h,
	gst/elements/gstsinesrc.h, gst/elements/gsttypefind.c,
	gst/elements/gsttypefind.h, plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2dec/decode.c, plugins/mpeg2/mpeg2dec/idct.c,
	plugins/mpeg2/mpeg2dec/motion_comp_sse.s,
	plugins/mpeg2/mpeg2dec/mpeg2_internal.h,
	plugins/mpeg2/mpeg2dec/slice.c, plugins/mpeg2/parse/Makefile.am,
	plugins/mpeg2/parse/mpeg2parse.c: Code Cleanups Added use cases for
	the source elements.

2000-11-25 07:43  omegahacker

	* gst/elements/gstelements.c: Added code to force the gsttypes
	plugin to load before gstelements, by simply having gstelements.c
	request the plugin.  Solves some dependency problems.  This is the
	correct method of doing this for now, though I had a thought:
	
	Have a static list of hard dependencies that the plugin system is
	responsible for satisfying before even trying to load the plugin. 
	Makes plugin design easier.

2000-11-25 07:02  omegahacker

	* gst/: gstpad.c, gstpad.h: added the ability to disable pads, not
	quite complete but sufficient for now

2000-11-24 22:28  omegahacker

	* gst/gstelement.c: Fixed a dumb mistake: in
	gst_element_set_loop_function, it was forcing the cothread's entry
	function to change. This is totally wrong, the create_plan function
	in GstBin is responsible for setting that to its own internal
	helper function.  Code removed outright...

2000-11-23 21:49  omegahacker

	* gst/: gstelement.c, gstelement.h: Closed 22145 - gstelement.c:
	support hotswapping of loopfunc
	
	Added a flag GST_ELEMENT_NEW_LOOPFUNC that's set when a new
	loopfunc is set, which needs to be obeyed by the loopfuncs
	themselves.  The assumption is that only a loopfunc or an element
	that knows what it's doing will ever change the loopfunc pointer,
	so they can be responsible for exitting the loopfunc itself
	appropriately.
	
	The loopfunc_wrapper function has been changed to call the loopfunc
	pointer itself in a loop.  If the loopfunc changes, the current
	loop is supposed to exit, which causes the loopfunc_wrapper to
	start up the new loopfunc.

2000-11-23 20:39  omegahacker

	* gst/gstelement.c: Closed task 22143 - gstelemnt.c: complete
	gst_element_connect
	
	SImple matter of cleaning up the conflicting checks and actually
	connecting the pads in question.

2000-11-23 08:13  omegahacker

	* gst/: gstbin.c, gstelement.c: gstbin.c: modified so create_plan
	occurs after the state change of all the      child elements. 
	gstelement.c: set_state now loops such that each element only deals
	with	   one state change at a time, i.e.
	NULL->READY,READY->PLAYING,    instead of a single NULL->PLAYING.

2000-11-20 22:05  wtay

	* gstplay/Makefile.am, plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2dec/idct.c, plugins/mpeg2/mpeg2dec/idct_mmx.c,
	plugins/mpeg2/mpeg2dec/perftest.c: Something was wrong with SSE
	initialisation in mpeg2dec Added little performance test (compile
	with gprof)

2000-11-20 19:04  wtay

	* configure.in,
	components/bonobo-gstmediaplay/bonobo-gstmediaplay.c,
	docs/manual/gstreamer-manual.sgml, gst/elements/gstdisksrc.c,
	gstplay/gstmediaplay.c, gstplay/gstplay.c,
	plugins/dvdsrc/Makefile.am, plugins/dvdsrc/dvdsrc.c,
	plugins/dvdsrc/dvdsrc.h, plugins/mpeg2/ac3dec/Makefile.am,
	plugins/mpeg2/ac3dec/ac3.h, plugins/mpeg2/ac3dec/ac3_internal.h,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3dec/ac3dec.h,
	plugins/mpeg2/ac3dec/audio_out.h,
	plugins/mpeg2/ac3dec/bit_allocate.c,
	plugins/mpeg2/ac3dec/bit_allocate.h,
	plugins/mpeg2/ac3dec/bitstream.c, plugins/mpeg2/ac3dec/bitstream.h,
	plugins/mpeg2/ac3dec/bswap.h, plugins/mpeg2/ac3dec/cmplx.h,
	plugins/mpeg2/ac3dec/coeff.c, plugins/mpeg2/ac3dec/coeff.h,
	plugins/mpeg2/ac3dec/cpu_accel.c, plugins/mpeg2/ac3dec/crc.c,
	plugins/mpeg2/ac3dec/crc.h, plugins/mpeg2/ac3dec/debug.c,
	plugins/mpeg2/ac3dec/debug.h, plugins/mpeg2/ac3dec/decode.c,
	plugins/mpeg2/ac3dec/decode.h, plugins/mpeg2/ac3dec/dither.c,
	plugins/mpeg2/ac3dec/dither.h, plugins/mpeg2/ac3dec/downmix.c,
	plugins/mpeg2/ac3dec/downmix.h, plugins/mpeg2/ac3dec/downmix_c.c,
	plugins/mpeg2/ac3dec/downmix_c.h,
	plugins/mpeg2/ac3dec/downmix_i386.S,
	plugins/mpeg2/ac3dec/downmix_i386.h,
	plugins/mpeg2/ac3dec/downmix_kni.S,
	plugins/mpeg2/ac3dec/downmix_kni.h,
	plugins/mpeg2/ac3dec/exponent.c, plugins/mpeg2/ac3dec/exponent.h,
	plugins/mpeg2/ac3dec/imdct.c, plugins/mpeg2/ac3dec/imdct.h,
	plugins/mpeg2/ac3dec/imdct512_kni.S,
	plugins/mpeg2/ac3dec/imdct_c.c, plugins/mpeg2/ac3dec/imdct_c.h,
	plugins/mpeg2/ac3dec/imdct_kni.c, plugins/mpeg2/ac3dec/imdct_kni.h,
	plugins/mpeg2/ac3dec/mantissa.c, plugins/mpeg2/ac3dec/mantissa.h,
	plugins/mpeg2/ac3dec/oms_accel.h, plugins/mpeg2/ac3dec/output.c,
	plugins/mpeg2/ac3dec/output.h, plugins/mpeg2/ac3dec/parse.c,
	plugins/mpeg2/ac3dec/parse.h, plugins/mpeg2/ac3dec/rematrix.c,
	plugins/mpeg2/ac3dec/rematrix.h,
	plugins/mpeg2/ac3dec/sanity_check.c,
	plugins/mpeg2/ac3dec/sanity_check.h, plugins/mpeg2/ac3dec/srfft.c,
	plugins/mpeg2/ac3dec/srfft.h, plugins/mpeg2/ac3dec/srfft_kni.S,
	plugins/mpeg2/ac3dec/srfft_kni.h,
	plugins/mpeg2/ac3dec/srfft_kni_c.c, plugins/mpeg2/ac3dec/srfftp.h,
	plugins/mpeg2/ac3dec/stats.c, plugins/mpeg2/ac3dec/stats.h,
	plugins/mpeg2/ac3dec/uncouple.c, plugins/mpeg2/ac3dec/uncouple.h,
	plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2dec/decode.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2dec/motion_comp.c,
	plugins/mpeg2/mpeg2dec/motion_comp.h,
	plugins/mpeg2/mpeg2dec/motion_comp_sse.s,
	plugins/mpeg2/mpeg2dec/slice.c, plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/parse/mpeg2parse.h, test/dvdcat.c: Reworked AC3
	decoder. No seeking yet but at least we do not need ac3parse
	anymore.  Reworked dvdsrc to read scrambled data (DeCSS not
	included). I have modified DeCSS a bit to work in GStreamer. Can I
	release the code or is there some lawyer that's going to sue me?
	MPEG2 SSE motion compensation.	Tried to add PTS to the MPEG
	decoder but failed.

2000-11-12 20:34  wtay

	* components/bonobo-gstmediaplay/: Makefile.am,
	bonobo-gstmediaplay.c, gstmediaplay.oafinfo: The bonobo component
	now works on audio only (mp3/vorbis). Video is broken because
	bonobo does not handle multithreading yet.  Added Bonobo toolbar
	and menu.

2000-11-11 15:13  wtay

	* configure.in, components/bonobo-gstmediaplay/.cvsignore,
	components/bonobo-gstmediaplay/Makefile.am,
	components/bonobo-gstmediaplay/bonobo-gstmediaplay-ui.xml,
	components/bonobo-gstmediaplay/bonobo-gstmediaplay.c,
	components/bonobo-gstmediaplay/gstmediaplay.oafinfo,
	docs/gst/tmpl/cothreads.sgml, docs/gst/tmpl/gstmeta.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gsttype.sgml,
	docs/gst/tmpl/gstutils.sgml, docs/libs/tmpl/gstidct.sgml,
	docs/manual/components.sgml, docs/manual/cothreads.sgml,
	docs/manual/helloworld2.sgml, docs/manual/programs.sgml,
	gst/cothreads.c, gst/cothreads.h, gst/gstarch.h, gst/gstbin.c,
	gst/gstbuffer.c, gst/gstbufferpool.c, gst/gstclock.c,
	gst/gstconnection.c, gst/gstcpu.c, gst/gstelement.c,
	gst/gstelement.h, gst/gstextratypes.c, gst/gstfilter.c,
	gst/gsti386.h, gst/gstmeta.c, gst/gstppc.h, gst/gstsink.c,
	gst/gstsrc.c, gst/gstthread.c, gst/gsttype.c,
	gst/elements/gstqueue.c, gstplay/Makefile.am,
	plugins/avi/gstavidecoder.c: Docs updates.  Added LICENSE info to
	headers/code where missing in gst directory Added a bonobo wrapper
	for the media player (it shows up in gshell but locks up when
	activating the component, anyone?) Fixed some XML save/load
	problems with arguments.

2000-11-08 19:53  wtay

	* gstplay/: gstmediaplay.c, gstmediaplay.glade, gstmediaplay.h,
	gststatusarea.c, gststatusarea.h, main.c: Fix for the new gnome
	libraries. It looks like glade does not like empty dockitems...

2000-11-07 21:38  wtay

	* docs/libs/: gstreamer-libs-sections.txt, tmpl/dct.sgml,
	tmpl/gstidct.sgml, tmpl/gstriff.sgml: Library docs update

2000-11-07 21:24  wtay

	* docs/gst/tmpl/: cothreads.sgml, gstbufferpool.sgml,
	gstelement.sgml, gstpad.sgml: [no log message]

2000-11-07 21:18  wtay

	* docs/gst/: Makefile.am, gstreamer-decl.txt, gstreamer-docs.sgml,
	gstreamer-sections.txt: Updated docs

2000-11-06 00:15  wtay

	* gst/cothreads.c, gst/cothreads.h, gst/gstbin.c, gst/gstpad.c,
	gst/gstpad.h, gst/gstutils.c, gst/elements/Makefile.am,
	gst/elements/gstasyncdisksrc.c, gst/elements/gstasyncdisksrc.h,
	gst/elements/gstdisksrc.c, gstplay/gstplay.c,
	gstplay/gstplayprivate.h, libs/riff/gstriff.h,
	libs/riff/gstriffparse.c, plugins/avi/gstavidecoder.c,
	plugins/avi/gstavidecoder.h: Added seeking to the avi decoder by
	implementing pull_region.  Fixes to the asyncdisksrc.  Added thread
	specific data to the cothreads.

2000-11-04 18:55  wtay

	* include/sse.h: [no log message]

2000-11-04 18:54  wtay

	* configure.in, gst/Makefile.am, gst/cothreads.c, gst/cothreads.h,
	gst/gst.c, gst/gst.h, gst/gstbin.c, gst/gstbin.h, gst/gstbuffer.h,
	gst/gstbufferpool.h, gst/gstclock.h, gst/gstconnection.h,
	gst/gstcpu.h, gst/gstelement.h, gst/gstfilter.h, gst/gstmeta.h,
	gst/gstobject.h, gst/gstpipeline.h, gst/gstplugin.h, gst/gstsink.h,
	gst/gstsrc.h, gst/gsttee.h, gst/gstthread.c, gst/gstthread.h,
	gst/gsttrace.h, gst/gsttype.h, gst/gstutils.h, gst/gstxml.h,
	gst/types/gsttypes.c, libs/idct/Makefile.am, libs/idct/dct.h,
	libs/idct/gstidct.c, libs/idct/gstidct.h, libs/idct/sseidct.S,
	plugins/mpeg2/Makefile.am, plugins/mpeg2/mpeg2dec/.cvsignore,
	plugins/mpeg2/mpeg2dec/Makefile.am,
	plugins/mpeg2/mpeg2dec/decode.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.c,
	plugins/mpeg2/mpeg2dec/gstmpeg2dec.h,
	plugins/mpeg2/mpeg2dec/header.c, plugins/mpeg2/mpeg2dec/header.h,
	plugins/mpeg2/mpeg2dec/idct.c, plugins/mpeg2/mpeg2dec/idct.h,
	plugins/mpeg2/mpeg2dec/idct_mmx.c,
	plugins/mpeg2/mpeg2dec/idct_mmx.h,
	plugins/mpeg2/mpeg2dec/motion_comp.c,
	plugins/mpeg2/mpeg2dec/motion_comp.h,
	plugins/mpeg2/mpeg2dec/motion_comp_mmx.c,
	plugins/mpeg2/mpeg2dec/mpeg2.h,
	plugins/mpeg2/mpeg2dec/mpeg2_internal.h,
	plugins/mpeg2/mpeg2dec/slice.c, plugins/mpeg2/mpeg2dec/slice.h,
	plugins/mpeg2/mpeg2dec/vlc.h, plugins/vorbis/vorbisdec.c: Added the
	excellent mpeg2dec decoder. Not 100% optimized but allready very
	fast.  More cleanup.

2000-11-02 20:10  wtay

	* gst/gst.c, gstplay/gstmediaplay.c, gstplay/main.c: Make sure the
	Gdk thread lock is not held inside the gstreamer pipeline.  Fix the
	videosink to not hold the Gdk lock when emitting a signal.  All Gtk
	GUI apps using GStreamer should now handle the Gdk locks when
	handling signals from the pipeline (as it should be)

2000-11-01 22:11  wtay

	* examples/helloworld2/helloworld2.c, gst/cothreads.c,
	gst/cothreads.h, gst/gstbin.c, gst/gstthread.c,
	gst/elements/Makefile.am, gst/elements/gstqueue.c,
	gstplay/gststatusarea.c, plugins/avi/gstavidecoder.c,
	plugins/avi/gstavidecoder.h, plugins/mp3decode/mpg123/gstmpg123.c:
	Some code cleanup Let the parent GstBin decide when to do a
	create_plan (bin inside a thread)

2000-11-01 13:49  wtay

	* gst/gstelement.h, gst/gstpad.c, gst/gstpad.h, gst/gstplugin.c,
	gst/gstthread.c, gst/gsttype.c, gstplay/Makefile.am,
	gstplay/callbacks.c, gstplay/gstmediaplay.c,
	gstplay/gstmediaplay.glade, gstplay/gstmediaplay.h,
	gstplay/gstplay.c, gstplay/gstplay.h, gstplay/gstplayprivate.h,
	gstplay/gststatusarea.c, gstplay/interface.c, gstplay/interface.h,
	plugins/avi/Makefile.am, plugins/avi/audiocodecs.c,
	plugins/avi/gstavidecoder.c, plugins/avi/gstavidecoder.h,
	plugins/avi/gstaviencoder.c, plugins/avi/gstparseavi.c,
	plugins/avi/gstparseavi.h, plugins/avi/playcodecs.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/parse/mp3parse.h,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg1/parse/mpeg1parse.h,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/parse/mpeg2parse.h:
	Code cleanup, make it adhere to the Gnome/Gtk+ code formatting,
	which is quite clean and more readable.  Renamed parseavi to
	avidecoder Implemented seeking/time display/pause/play/stop/clean
	exit to gstmediaplay Added an element flag to indicate that it
	cannot deal with noncontigous buffers. If such an element is found
	in the pipeline, seeking is disabled for the complete stream
	(avidecoder cannot deal with seeking until we convert it to a loop
	based element with pull_region to fetch the indeces etc...)

2000-10-30 21:10  wtay

	* docs/plugins/: .cvsignore, gstreamer-plugins.types.in: Missing
	files..

2000-10-30 21:08  wtay

	* plugins/mpeg1/mpegaudio/: table_absthr.h, table_alloc.h,
	table_cb.h, table_enwindow.h, table_th.h, tables.c: forgot the
	tables...

2000-10-30 21:06  wtay

	* plugins/mpeg2/mpeg2enc/: Makefile.am, fdct_mmx.s, fdctdata.c: A
	nonworking forward DCT with MMX

2000-10-30 21:02  wtay

	* gst/gstbin.c, gst/gstthread.c, gst/elements/gstqueue.c,
	gstplay/.cvsignore, gstplay/Makefile.am, gstplay/callbacks.c,
	gstplay/callbacks.h, gstplay/codecs.h, gstplay/gstmediaplay.c,
	gstplay/gstmediaplay.glade, gstplay/gstmediaplay.h,
	gstplay/gstplay.c, gstplay/gstplay.glade, gstplay/gstplay.h,
	gstplay/gstplayprivate.h, gstplay/gststatusarea.c,
	gstplay/gststatusarea.h, gstplay/interface.c, gstplay/interface.h,
	gstplay/main.c, plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/Makefile.am,
	plugins/mpeg1/mpegaudio/common.c, plugins/mpeg1/mpegaudio/encode.c,
	plugins/mpeg1/mpegaudio/musicin.c, plugins/mpeg1/mpegaudio/psy.c,
	plugins/mpeg1/mpegaudio/tonal.c, plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/mpeg2enc/Makefile.am,
	plugins/mpeg2/mpeg2enc/motion.c, plugins/mpeg2/mpeg2enc/mpeg2enc.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h,
	plugins/mpeg2/mpeg2enc/quant_mmx.s,
	plugins/mpeg2/mpeg2enc/quantize.c, test/avi2mpg.c, test/mp2tomp1.c:
	Misc fixes and cleanups A reworked gstplay. Now it is called
	gstmediaplay. gstplay is a custom widget that can display media and
	is to become a bonobo component soon.  put the tables of the mpeg
	audio encoder in a header file.  maybe faster quantisation for the
	mpeg encoder.

2000-10-25 20:09  wtay

	* configure.in, docs/plugins/Makefile.am, docs/plugins/gstdoc-mkdb,
	docs/plugins/gstdoc-mktmpl, docs/plugins/gstdoc-scanobj,
	docs/plugins/gstreamer-plugins-docs.sgml,
	docs/plugins/gstreamer-plugins-sections.txt,
	docs/plugins/tmpl/ac3dec.sgml, docs/plugins/tmpl/ac3parse.sgml,
	docs/plugins/tmpl/audioscale.sgml, docs/plugins/tmpl/cobin.sgml,
	docs/plugins/tmpl/dvdsrc.sgml, docs/plugins/tmpl/example.sgml,
	docs/plugins/tmpl/gstaviencoder.sgml,
	docs/plugins/tmpl/gstjpeg.sgml, docs/plugins/tmpl/gstjpegdec.sgml,
	docs/plugins/tmpl/gstjpegenc.sgml,
	docs/plugins/tmpl/gstmpeg1encoder.sgml,
	docs/plugins/tmpl/gstmpeg2enc.sgml,
	docs/plugins/tmpl/gstmpeg2play.sgml,
	docs/plugins/tmpl/gstmpeg_play.sgml,
	docs/plugins/tmpl/gstmpegaudio.sgml,
	docs/plugins/tmpl/gstmpg123.sgml,
	docs/plugins/tmpl/gstparseau.sgml,
	docs/plugins/tmpl/gstparseavi.sgml,
	docs/plugins/tmpl/gstparsewav.sgml,
	docs/plugins/tmpl/gstreamer-plugins-unused.sgml,
	docs/plugins/tmpl/gstspectrum.sgml,
	docs/plugins/tmpl/gstv4lsrc.sgml,
	docs/plugins/tmpl/gstwincodec.sgml,
	docs/plugins/tmpl/gstwindec.sgml, docs/plugins/tmpl/gstwinenc.sgml,
	docs/plugins/tmpl/gstxa.sgml, docs/plugins/tmpl/gstxing.sgml,
	docs/plugins/tmpl/median.sgml,
	docs/plugins/tmpl/mp1videoparse.sgml,
	docs/plugins/tmpl/mp2videoparse.sgml,
	docs/plugins/tmpl/mp3parse.sgml, docs/plugins/tmpl/mpeg1parse.sgml,
	docs/plugins/tmpl/mpeg2parse.sgml,
	docs/plugins/tmpl/mpeg2subt.sgml, docs/plugins/tmpl/rtjpegdec.sgml,
	docs/plugins/tmpl/rtjpegenc.sgml, docs/plugins/tmpl/smooth.sgml,
	docs/plugins/tmpl/smoothwave.sgml,
	docs/plugins/tmpl/spindentity.sgml, docs/plugins/tmpl/stereo.sgml,
	docs/plugins/tmpl/synaesthesia.sgml,
	docs/plugins/tmpl/system_encode.sgml,
	docs/plugins/tmpl/vcdsrc.sgml, docs/plugins/tmpl/videoscale.sgml,
	docs/plugins/tmpl/videosink.sgml, docs/plugins/tmpl/volume.sgml,
	docs/plugins/tmpl/vorbisdec.sgml, docs/plugins/tmpl/vorbisenc.sgml,
	docs/plugins/tmpl/vumeter.sgml, gst/gstbufferpool.c,
	gst/gstconnection.c, gst/gstcpu.c, gst/gstcpu.h, gst/gstelement.c,
	gst/gstelement.h, gst/gstelementfactory.c, gst/gstmeta.c,
	gst/gstmeta.h, gst/gstpad.c, gst/gstplugin.c, gst/gstthread.c,
	gst/gstthread.h, gst/gstutils.c, gst/gstxml.c,
	gst/elements/gstasyncdisksrc.c, gst/elements/gstaudiosink.c,
	gst/elements/gsttypefind.c, gst/elements/gsttypefind.h,
	libs/idct/gstidct.h, libs/riff/gstriff.h, test/ac3play.c,
	test/qtest.c: More Docs updates.  Added plugin documentation. I
	fear we need a gstdoc implementation that loads plugins and does
	introspection on them. I think we should automatically create the
	docs for the pads and mime types the plugins provide. Does anyone
	have enough perl knowledge to add these features? I allready
	changed the C code to output the pad definitions but my perl
	knowledge is too limited, for now, to implement the rest of the
	needed functionality...

2000-10-22 17:30  wtay

	* docs/gst/tmpl/: audioraw.sgml, cothreads.sgml,
	gstasyncdisksrc.sgml, gstaudiosink.sgml, gstbuffer.sgml,
	gstbufferpool.sgml, gstclock.sgml, gstcpu.sgml, gstdisksrc.sgml,
	gstelement.sgml, gstextratypes.sgml, gstmeta.sgml, gstpad.sgml,
	gstplugin.sgml, gstreamer-unused.sgml, gstsrc.sgml, gstthread.sgml,
	gsttrace.sgml, gsttype.sgml, gsttypefind.sgml, gstxml.sgml,
	spectrum.sgml, videoraw.sgml: More docs updates

2000-10-22 17:27  wtay

	* docs/: Makefile.am, gst/Makefile.am, gst/gstreamer-decl.txt,
	gst/gstreamer-docs.sgml, gst/gstreamer-sections.txt,
	gst/gstreamer.hierarchy, gst/gstreamer.types.in, libs/.cvsignore,
	libs/Makefile.am, libs/gstreamer-libs-docs.sgml,
	libs/gstreamer-libs-sections.txt, libs/tmpl/.cvsignore,
	libs/tmpl/dct.sgml, libs/tmpl/externals.sgml,
	libs/tmpl/gstcolorspace.sgml, libs/tmpl/gstgetbits.sgml,
	libs/tmpl/gstgetbits_inl.sgml, libs/tmpl/gstidct.sgml,
	libs/tmpl/gstputbits.sgml, libs/tmpl/gstriff.sgml,
	libs/tmpl/gstvideoscale.sgml, libs/tmpl/wineacm.sgml: Documentation
	updates documented the libraries

2000-10-21 13:04  wtay

	* configure.in, docs/manual/gstreamer-manual.sgml, gst/Makefile.am,
	gst/cothreads.c, gst/gstbin.c, gst/gstpad.c, gst/gstpad.h,
	gst/gstpipeline.c, gst/elements/gstdisksrc.c,
	plugins/avi/gstparseavi.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/Makefile.am, plugins/mpeg2/mpegtypes/.cvsignore,
	plugins/mpeg2/mpegtypes/Makefile.am,
	plugins/mpeg2/mpegtypes/mpeg2types.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/videoparse/.cvsignore,
	plugins/mpeg2/videoparse/Makefile.am,
	plugins/mpeg2/videoparse/mp2videoparse.c,
	plugins/mpeg2/videoparse/mp2videoparse.h: MPEG2 types added for
	better autoplugging. MPEG2 works more or less.	fix in
	autoplugging. avi now works.

2000-10-12 20:41  wtay

	* editor/gsteditorconnection.c, editor/gsteditorpad.c,
	gst/gstpipeline.c, gstplay/Makefile.am, gstplay/avi.c,
	gstplay/gstplay.c, gstplay/mpeg1.c, gstplay/mpeg2.c: Removed the
	hardcoded pipeline setup is gstplay in favor of the autoplugging
	features. Still in a rought shape...

2000-10-12 09:43  richardb

	* docs/manual/: BUILD, Makefile.am, images/Makefile.am: Manual now
	gets installed correctly by make install.  Problems: clean /
	uninstall don't work.  make dist not tested.  pdf manual doesn't
	have images.

2000-10-11 20:30  wtay

	* editor/gsteditorproperty.c, gst/Makefile.am, gst/gst.h,
	gst/gstextratypes.c, gst/gstextratypes.h,
	gst/elements/gstasyncdisksrc.c, gst/elements/gstaudiosink.c,
	gst/elements/gstdisksrc.c, gst/elements/gstfdsrc.c: Added extra Gtk
	types for better editor properties (FILENAME, enums) The disksrcs
	location property can now be set in the editor: we can now make our
	first working mp3 player with gsteditor!!

2000-10-09 21:01  wtay

	* examples/autoplug/autoplug.c, gst/Makefile.am, gst/gstpipeline.c,
	gst/elements/gstaudiosink.c, gst/elements/gstqueue.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c: Fixed a severe timestamp
	bug in mpeg_play.  Create a new thread upon a multisrc element in
	autoplugging: the autoplug example now correctly sets up 5 threads
	for an mpeg player.

2000-10-09 01:34  richardb

	* configure.in, docs/Makefile.am, docs/manual/.cvsignore,
	docs/manual/Makefile.am, docs/manual/images/.cvsignore,
	docs/manual/images/Makefile.am: Added building of the manual to the
	build system.  Currently in a rudimentary state - will not
	gracefully give up if tools not available, will not uninstall /
	clean, and may not install / make dist properly.  Documentation
	does not have dependencies on images, so won't rebuild if they're
	altered either.

2000-10-08 23:23  wtay

	* examples/autoplug/.cvsignore, examples/autoplug/Makefile,
	examples/autoplug/autoplug.c, plugins/mp3decode/types/.cvsignore,
	plugins/mp3decode/types/Makefile.am,
	plugins/mp3decode/types/mp3types.c,
	plugins/mpeg1/mpegtypes/.cvsignore,
	plugins/mpeg1/mpegtypes/Makefile.am,
	plugins/mpeg1/mpegtypes/mpeg1types.c: Added an autoplug example.
	This little program (30 relevant lines) is able to play
	MPEG1(system)/MPEG2(system)/AVI(DIVX)/Vorbis/AC3 and whatever codec
	you write.  Separated the mp3 and mpeg1 types for better reuse.

2000-10-08 23:17  wtay

	* configure.in, editor/editor.glade, editor/gsteditor.h,
	editor/gsteditorbin.c, editor/gsteditorcanvas.c,
	editor/gsteditorconnection.c, editor/gsteditorconnection.h,
	editor/gsteditorcreate.c, editor/gsteditorpad.c,
	editor/gsteditorproperty.c, editor/gstelementselect.c,
	gst/gstbin.c, gst/gstelement.h, gst/gstelementfactory.c,
	gst/gstfilter.c, gst/gstpad.c, gst/gstpipeline.c, gst/gstplugin.c,
	gst/gstsink.c, gst/gstthread.c, gst/gsttype.c,
	gst/elements/gstaudiosink.c, gst/elements/gsttypefind.c,
	gst/types/gsttypes.c, plugins/avi/gstparseavi.c,
	plugins/capture/v4l/gstv4lsrc.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/xing/gstxing.c, plugins/mpeg1/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/parse/mpeg2parse.c: Fixed a bug in the typeloading. 
	Fixes to various elements so that correct types are returned. 
	Fixed flag collision with GtkObject.  Elements can now suggest a
	thread. not sure if this is the right way to handle automatic
	thread creation.  Autoplugging now works with multiple sinks and
	thread setup. No threads are created for intermediate elements yet,
	so MPEG may still be choppy.

2000-10-06 23:52  richardb

	* plugins/: capture/v4l/Makefile.am, mpeg1/mpeg_play/Makefile.am,
	mpeg1/mpegaudio/Makefile.am, mpeg2/mpeg2enc/Makefile.am,
	mpeg2/video/Makefile.am: Remove from EXTRA_DIST various files which
	don't exist (these looked like copy and paste typos).

2000-10-06 03:38  richardb

	* Makefile.am: Don't compile editor if havn't got libglade-gnome.

2000-10-01 22:46  wtay

	* editor/: Makefile.am, editor.c, editor.glade, editor.ts,
	gsteditor.c, gsteditor.h, gsteditorcanvas.c, gsteditorelement.c,
	gsteditorimage.c, gsteditorimage.h, gsteditorpad.h,
	gsteditorpalette.c, gsteditorpalette.h, gsteditorproject.c,
	gsteditorproject.h, gsteditorprojectview.c, gsteditorproperty.c,
	gsteditorproperty.h, pixmaps/bin.xpm, pixmaps/element.xpm,
	pixmaps/pipeline.xpm, pixmaps/selector.xpm, pixmaps/tee.xpm,
	pixmaps/thread.xpm: Initial work for the new editor.

2000-09-27 20:33  wtay

	* examples/xml/createxml.c, examples/xml/runxml.c, gst/Makefile.am,
	gst/gstbin.c, gst/gstelement.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstpad.c, gst/gstpad.h,
	gst/gstthread.c, gst/gstxml.c, gst/gstxml.h,
	gst/elements/gstaudiosink.c: Loading and saving of XML pipeline
	descriptions.  GladeXML like operation implemented (you can
	retrieve parts of a pipeline)

2000-09-24 23:47  wtay

	* examples/xml/.cvsignore: better .cvsignore

2000-09-24 23:45  wtay

	* examples/xml/.cvsignore, examples/xml/Makefile,
	examples/xml/createxml.c, examples/xml/runxml.c, gst/gstbin.c,
	gst/gstconnection.h, gst/gstelementfactory.c, gst/gstpipeline.c,
	gst/gsttee.h, gst/gstthread.c, gst/gstthread.h, gst/gstxml.c,
	gst/gstxml.h: Cleanups.  The first steps to a Glade like XML
	handling.  A first example of what is to come...

2000-09-24 15:31  wtay

	* examples/queue4/: .cvsignore, Makefile, queue4.c: An example of
	two threads and two queues.

2000-09-24 15:29  wtay

	* gst/cothreads.c, gst/gstbin.c, gst/gstpad.c, gst/gstthread.c,
	gst/elements/gstqueue.c, gst/elements/gstqueue.h,
	plugins/mp3decode/mpg123/gstmpg123.c: The cothreads were not
	initialized in its thread context resulting in severe stack
	corruption. This was very hard to track down.  We should be able
	now to modify some plugins to a loop based setup so that we can get
	rid of the mp3parse and mp1videoparse elements.  Modified the GList
	to a GSList in the queue.

2000-09-23 00:35  wtay

	* gstreamer-config.in, examples/helloworld/helloworld.c,
	examples/helloworld2/helloworld2.c, examples/queue/.cvsignore,
	examples/queue/queue.c, examples/queue2/.cvsignore,
	examples/queue2/queue2.c, examples/queue3/.cvsignore,
	examples/queue3/queue3.c, examples/thread/thread.c,
	gst/cothreads.c, gst/cothreads.h, gst/gstbin.c, gst/gstpad.c,
	gst/gstpipeline.c, gst/gstthread.c, gst/elements/Makefile.am,
	gst/elements/gstqueue.c, gstplay/Makefile.am, gstplay/avi.c,
	gstplay/gstplay.c, gstplay/mpeg1.c, gstplay/mpeg2.c,
	plugins/mp3decode/mpg123/gstmpg123.c, test/mp2tomp1.c: A first
	attempt to fix the queues in a cothreaded pipeline.  Some fixes to
	the thread handling.  Fix a bug in gstreamer-config : gthread was
	not included.  gst_bin_create_plan() is now done in the READY
	state.	a bin with only another bin in it will now work with
	gst_bin_iterate.  Added some examples for the queues.

2000-09-21 18:54  richardb

	* plugins/mp3decode/mpg123/Makefile.am: If using decode.c, compile
	dct64.c as well.  Fixes link error on PPC.

2000-09-21 02:42  richardb

	* libs/idct/ieeetest.c: IDCT works, and ieeetest not complains
	nicely if attempt to run a test with an unsupported DCT type.

2000-09-21 02:34  richardb

	* gst/Makefile.am, libs/Makefile.am, libs/idct/Makefile.am,
	libs/idct/dct.h, libs/idct/gstidct.c: Make libs/idct only build mmx
	support if available - hopefully makes it compile on PPC.

2000-09-21 01:57  richardb

	* AUTHORS, gst/cothreads.c, gst/gsti386.h, gst/gstppc.h,
	test/cothreads/cothreads.c: Patch from Chris Emerson for PPC. 
	cothreads stuff was causing segfaults, because the stack needs to
	be initialised with a particular structure on PPC, unlike x86 where
	it simply has items pushed or popped.  Added Chris to AUTHORS, for
	his trouble.

2000-09-18 23:19  richardb

	* autogen.sh, docs/manual/helloworld2.sgml, gstplay/gstplay.glade,
	libs/getbits/Makefile.am, libs/getbits/gstgetbits.h, test/wave.c:
	Fix compile problem due to DEBUG being redefined in
	libs/getbits/gstgetbits.h.  Also fix several small typos in the
	docs and examples.

2000-09-17 23:08  wtay

	* docs/gst/gstreamer-decl.txt, docs/gst/gstreamer-sections.txt,
	docs/gst/tmpl/gstpipeline.sgml, docs/manual/helloworld2.sgml,
	examples/helloworld2/helloworld2.c, examples/thread/thread.c,
	gst/Makefile.am, gst/cothreads.c, gst/gstbin.c, gst/gstpipeline.c,
	gst/gstpipeline.h, gst/elements/gstdisksrc.c,
	libs/getbits/gstgetbits.c, plugins/mpeg2/ac3dec/ac3dec.c,
	plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/vorbis/vorbisdec.c: Added
	gst_pipeline_add_sink/src to allow multiple sink cases and more
	complex autoplugging. Update docs too.	Simplified the pipeline
	autoplugging code.  Changed the cothread case: One iteration is now
	a push from the src element. The disk source does not change its
	state anymore on eof.  Better type setting for the ac3
	parser/decoder and mpeg2parse.

2000-09-17 15:06  wtay

	* acconfig.h, configure.in, gst/gstbin.c,
	gst/elements/gstdisksrc.c: Added check for vorbis.  Really compile
	with Xv extension if the library is found.  Changed the disksrc so
	that is goes to the PAUSE state if eof.

2000-09-17 13:32  wtay

	* plugins/mpeg2/mpeg2enc/transfrm_mmx.s: more asm...

2000-09-17 13:32  wtay

	* docs/manual/components.sgml: Information about the bonobo
	components and capplets we are going to make :-)

2000-09-17 13:31  wtay

	* libs/getbits/Makefile.am, libs/getbits/gstgetbits.h,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg2/mpeg2enc/Makefile.am,
	plugins/mpeg2/mpeg2enc/bdist1_mmx.s,
	plugins/mpeg2/mpeg2enc/bdist1_sse.s,
	plugins/mpeg2/mpeg2enc/bdist2_mmx.s,
	plugins/mpeg2/mpeg2enc/dist1_00_mmx.s,
	plugins/mpeg2/mpeg2enc/dist1_00_sse.s,
	plugins/mpeg2/mpeg2enc/dist1_01_mmx.s,
	plugins/mpeg2/mpeg2enc/dist1_01_sse.s,
	plugins/mpeg2/mpeg2enc/dist1_10_mmx.s,
	plugins/mpeg2/mpeg2enc/dist1_10_sse.s,
	plugins/mpeg2/mpeg2enc/dist1_11_mmx.s,
	plugins/mpeg2/mpeg2enc/dist1_11_sse.s,
	plugins/mpeg2/mpeg2enc/dist2_mmx.s,
	plugins/mpeg2/mpeg2enc/motion.c, plugins/mpeg2/mpeg2enc/mpeg2enc.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h,
	plugins/mpeg2/mpeg2enc/predict.c,
	plugins/mpeg2/mpeg2enc/predict_mmx.s,
	plugins/mpeg2/mpeg2enc/predict_sse.s,
	plugins/mpeg2/mpeg2enc/ratectl.c,
	plugins/mpeg2/mpeg2enc/transfrm.c,
	plugins/mpeg2/mpeg2enc/variance_mmx.s, test/.cvsignore: Converted
	the mpeg2 encoder asm to gnu asm, removing the dependency of nasm
	Added cpu detection in the mpeg2 encoder removed the inlined mmx
	asembler to seperate files.

2000-09-17 00:11  richardb

	* acconfig.h, configure.in, libs/Makefile.am, plugins/Makefile.am,
	plugins/avi/Makefile.am, plugins/avi/playcodecs.c,
	plugins/avi/wincodec/Makefile.am, plugins/avi/wincodec/gstwindec.c,
	plugins/avi/wincodec/gstwinenc.c,
	plugins/mpeg1/mpeg1encoder/Makefile.am,
	plugins/mpeg1/mpeg1encoder/putbits.c,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg1/mpegaudio/Makefile.am: More work porting to PPC. 
	libs/winloader is disabled on PPC - I doubt this can be made to
	work.  libs/videoscale and libs/idct are also disabled - they
	should be fixable though.
	
	Sorted out most of the plugins - avi is disabled for now on PPC;
	can be worked on later if there's any chance of getting it to work.
	
	Also provide an automake conditional for compiling vorbis, based on
	a configure test for the needed libraries: currently the test isn't
	implemented and defaults to "no" so you'll have to fiddle it to
	compile vorbis.  I shall get hold of vorbis and implement an
	appropriate test some other time (if noone else beats me to it).

2000-09-16 23:03  richardb

	* libs/getbits/: gstgetbits.c, gstgetbits.h, gstgetbits_generic.c:
	Moved generic function implementations into gstgetbits_generic.c,
	and tidy up a bit.

2000-09-16 11:58  wtay

	* docs/gst/gstreamer.types.in, gst/cothreads.c, gst/gstbin.c,
	gst/gstcpu.c, gst/gstpad.c, gst/gsttype.c,
	gst/elements/gstdisksrc.c, gst/elements/gstqueue.c,
	libs/getbits/gstgetbits.c, plugins/vorbis/vorbisdec.c: Added a
	quick hack to allow loop based elements to finish intead of looping
	till infinity.	Added compile time i386 or plain C getbits
	implementation selection.  The vorbis decoder now is our first loop
	based element!

2000-09-16 01:59  richardb

	* gst/Makefile.am, gst/gstarch.h, gst/gstcpu.c, gst/gstppc.h,
	libs/getbits/Makefile.am, libs/getbits/gstgetbits_generic.c,
	plugins/mp3decode/mpg123/Makefile.am, plugins/mpeg2/Makefile.am,
	plugins/mpeg2/ac3dec/Makefile.am,
	plugins/mpeg2/mpeg2enc/Makefile.am,
	plugins/mpeg2/mpeg2enc/motion.c,
	plugins/mpeg2/subtitles/Makefile.am,
	plugins/mpeg2/video/Makefile.am, plugins/mpeg2/video/getpic.c,
	plugins/mpeg2/video/gstmpeg2play.c: More work towards a powerPC
	port, and towards generic portability.

2000-09-16 00:04  richardb

	* .cvsignore, autogen.sh, configure.in, gst/Makefile.am,
	gst/gstarch.h, gst/gsti386.h: Fix on x86 architectures - was just
	checking for 386, D'oh.  Fix autogen to run autoheader _before_
	autoconf, since it generates a required file (config.h.in, which I
	just removed from CVS since its an autogenerated one).	Also fix
	messed up variables in gst/Makefile.am

2000-09-15 23:44  richardb

	* AUTHORS, acconfig.h, config.h.in, configure.in, gst/Makefile.am,
	gst/cothreads.c, gst/gstarch.h, gst/gsti386.h, gst/gstppc.h,
	libs/getbits/Makefile.am, plugins/mp3decode/xing/libxing/config.h:
	Begun to add support for non i386 architectures, with the help of
	Chris Emerson.	Added bits to configure to figure out architecture,
	and added some alternatives for PPC.  Should cause no problems on
	i386, but I'll check after this commit, but doesn't yet work on PPC
	by a fair way...

2000-09-14 23:18  wtay

	* gst/gstelementfactory.c, plugins/vorbis/vorbisdec.c,
	plugins/vorbis/vorbisdec.h, plugins/vorbis/vorbisenc.c,
	plugins/vorbis/vorbisenc.h, test/Makefile.am, test/mp3tovorbis.c:
	The vorbis encoder A test program to convert an mp3 to a vorbis
	file.  A fix for the dynamic plugin loader factory_find was not
	working.  Don't forget to run gstreamer-register after installing
	the plugins!

2000-09-14 21:31  wtay

	* configure.in, gst/Makefile.am, gst/gst.c, gst/gstbin.c,
	gst/gstbuffer.c, gst/gstcpu.c, gst/gstelement.c,
	gst/gstelementfactory.c, gst/gstpad.c, gst/gstpipeline.c,
	plugins/Makefile.am, plugins/rtjpeg/rtjpegdec.c,
	plugins/vorbis/.cvsignore, plugins/vorbis/Makefile.am,
	plugins/vorbis/vorbis.c, plugins/vorbis/vorbisdec.c,
	plugins/vorbis/vorbisdec.h, plugins/vorbis/vorbisenc.c,
	plugins/vorbis/vorbisenc.h: Due to popular demand :-), I added a
	vorbis decoder.  The encoder is not yet functional.  Small cosmetic
	changes to gstcpu.c
	
	Beware: You *need* to install libvorbis.a from the main vorbis CVS.
	 you *have* to change the line in libtool to  
	deplibs_check_method="pass_all" because else the plugin shared
	library refuses to link against the static libvorbis.a library.
	This is a hack. I have no intention in including libvorbis into the
	gstreamer CVS tree and making it libtool compatible.

2000-09-13 20:04  wtay

	* docs/: gst/gstreamer-decl.txt, gst/gstreamer-docs.sgml,
	gst/gstreamer-sections.txt, gst/gstreamer.hierarchy,
	gst/gstreamer.types.in, gst/tmpl/gst.sgml,
	gst/tmpl/gstaudiosink.sgml, gst/tmpl/gstbuffer.sgml,
	gst/tmpl/gstbufferpool.sgml, gst/tmpl/gstclock.sgml,
	gst/tmpl/gstconnection.sgml, gst/tmpl/gstcpu.sgml,
	gst/tmpl/gstdisksrc.sgml, gst/tmpl/gstelement.sgml,
	gst/tmpl/gstpad.sgml, gst/tmpl/gstpipefilter.sgml,
	gst/tmpl/gstpipeline.sgml, gst/tmpl/gstplugin.sgml,
	gst/tmpl/gstreamer-unused.sgml, gst/tmpl/gstsrc.sgml,
	gst/tmpl/gsttype.sgml, gst/tmpl/gstutils.sgml,
	manual/gstreamer-manual.sgml: Bring the low level API docs up to
	date.

2000-09-12 19:15  wtay

	* plugins/mpeg2/video/: recon_mmx.c, recon_sse.s: SSE optimisation
	MMX optimisation split out in seperate file.

2000-09-12 19:13  wtay

	* gst/Makefile.am, gst/gst.c, gst/gst.h, gst/gstcpu.c,
	gst/gstcpu.h, gst/gstcpuid_i386.s, libs/idct/gstidct.c,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/proto.h, plugins/mpeg1/mpeg_play/recon.c,
	plugins/mpeg1/mpeg_play/recon_mmx.c,
	plugins/mpeg1/mpeg_play/recon_sse.s,
	plugins/mpeg1/mpeg_play/util.c, plugins/mpeg1/mpeg_play/util.h,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg2/video/Makefile.am, plugins/mpeg2/video/gethdr.c,
	plugins/mpeg2/video/mpeg2dec.c, plugins/mpeg2/video/mpeg2dec.h,
	plugins/mpeg2/video/recon.c, plugins/mpeg2/video/tables.c: Added
	CPU detection.	Added SSE optimisation to mpeg_play Modified the
	mpeg2 decoder and gstidct to use cpu detection.  Cleanups in the
	mpeg1 and mpeg2 decoders.

2000-09-09 17:39  wtay

	* examples/: launch/.cvsignore, launch/mp3play, thread/.cvsignore,
	thread/Makefile, thread/thread.c: A thread example.  An example of
	gstreamer-launch: an mp3 player

2000-09-09 17:36  wtay

	* gstreamer-config.in, docs/manual/gstreamer-manual.sgml,
	docs/manual/helloworld.sgml, docs/manual/helloworld2.sgml,
	docs/manual/programs.sgml, docs/manual/queues.sgml,
	docs/manual/threads.sgml, editor/editor.c, editor/gsteditor.c,
	editor/gsteditor.h, editor/gstelementselect.c,
	examples/helloworld/Makefile, examples/helloworld/helloworld.c,
	examples/helloworld2/Makefile, examples/helloworld2/helloworld2.c,
	gst/gst.c, gst/gst.h, gst/gstbin.h, gst/gstelementfactory.c,
	gst/gstpipeline.c, gst/gstpipeline.h, gst/gstplugin.c,
	gst/gstsrc.c, gst/gstthread.c, gst/gstthread.h,
	gst/elements/gstdisksrc.h, gst/elements/gstelements.c,
	gstplay/mpeg1.c, gstplay/mpeg2.c, plugins/mpeg2/ac3dec/ac3dec.c,
	plugins/mpeg2/ac3dec/ac3dec.h, plugins/mpeg2/ac3dec/downmix.c,
	plugins/mpeg2/ac3parse/Makefile.am,
	plugins/mpeg2/ac3parse/ac3parse.c, tools/gstreamer-launch.c:
	Changes to gstreamer-config to include gtk+ libs manual changes:
	queues, threads, programs gsteditor does not crash anymore. 
	gstpipline new should return a GstElement * fixed ac3dec for new
	getbits fixes to gstreamer-launch more efficient startup for
	gstplay.

2000-09-07 21:35  wtay

	* gst/Makefile.am, gst/cothreads.c, gst/gstbin.c,
	gst/elements/gstaudiosink.c, libs/getbits/.cvsignore,
	libs/getbits/Makefile.am, libs/getbits/gbtest.c,
	libs/getbits/gstgetbits.c, libs/getbits/gstgetbits.h,
	libs/getbits/gstgetbits_i386.s, libs/getbits/gstgetbits_inl.h,
	plugins/mp3decode/mpg123/Makefile.am,
	plugins/mp3decode/mpg123/common.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/layer1.c,
	plugins/mp3decode/mpg123/layer2.c,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mp3decode/mpg123/mpg123.c,
	plugins/mp3decode/mpg123/mpg123.h, plugins/mpeg1/mpeg_play/util.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/video/gethdr.c,
	plugins/mpeg2/video/mpeg2dec.c, test/cothreads/cothreads.c,
	test/cothreads/test.c: Faster and modular getbits implementation. 
	Fixed a bug in the audiosink that could lock up your box on bad MB.
	 Modified the plugins to use the new getbits functions.

2000-08-28 21:20  wtay

	* examples/helloworld2/helloworld2.c, gst/gst.c, gst/gstelement.h,
	gst/gstelementfactory.c, gst/gstplugin.c, gst/gstplugin.h,
	gst/gsttype.c, gst/gsttype.h, gst/elements/gsttypefind.c,
	gst/types/gsttypes.c, gstplay/gstplay.c, plugins/Makefile.am,
	plugins/au/gstparseau.c, plugins/audioscale/audioscale.c,
	plugins/avi/gstaviencoder.c, plugins/avi/gstparseavi.c,
	plugins/avi/wincodec/gstwincodec.c,
	plugins/avi/wincodec/gstwindec.c, plugins/capture/v4l/gstv4lsrc.c,
	plugins/cobin/cobin.c, plugins/cobin/spindentity.c,
	plugins/effects/stereo/stereo.c, plugins/effects/volume/volume.c,
	plugins/filters/median/median.c, plugins/filters/smooth/smooth.c,
	plugins/jpeg/gstjpeg.c, plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/xing/gstxing.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg_play/decoders.c,
	plugins/mpeg1/mpeg_play/decoders.h,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/ac3dec/ac3dec.c, plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/parse/mpeg2parse.c,
	plugins/mpeg2/subtitles/mpeg2subt.c,
	plugins/mpeg2/video/gstmpeg2play.c, plugins/rtjpeg/rtjpeg.c,
	plugins/vcdsrc/vcdsrc.c, plugins/videoscale/videoscale.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/synaesthesia/synaesthesia.c,
	plugins/visualization/vumeter/vumeter.c, plugins/wav/gstparsewav.c,
	tools/.cvsignore, tools/Makefile.am, tools/gstreamer-launch.c,
	tools/gstreamer-register.c, tools/launch.c: Externalized the plugin
	information in /etc/gstreamer/reg.xml  - no need to do a
	plugin_load_all()  - plugins are loaded when needed  - typedetect
	functions are loaded when needed (still buggy)	- no need to check
	for the existance of the plugin in the codecs  - added
	gstreamer-register to create the reg.xml file  - renamed launch to
	gstreamer-launch  - plugins need to register the typefactory they
	provide modified the plugins to meet the new design modified the
	plugins to correctly set their pad types autoplugging can be done
	without loading the plugins now

2000-08-22 22:18  wtay

	* docs/manual/advanced.sgml, docs/manual/cothreads.sgml,
	docs/manual/dynamic.sgml, docs/manual/factories.sgml,
	docs/manual/ghostpads.sgml, docs/manual/gstreamer-manual.sgml,
	docs/manual/helloworld2.sgml, docs/manual/outline.txt,
	docs/manual/plugins.sgml, docs/manual/programs.sgml,
	docs/manual/queues.sgml, docs/manual/threads.sgml,
	docs/manual/typedetection.sgml, docs/manual/utility.sgml,
	docs/manual/xml.sgml, examples/helloworld2/helloworld2.c,
	gst/gstpipeline.c, gst/gsttype.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/parse/mpeg1parse.c: More docs (most of them just
	empty...) Added automatic pad plugging.  Added automatic dynamic
	pad plugging.  Changed some codecs to correctly set their pad
	types.

2000-08-21 22:57  wtay

	* examples/: helloworld/.cvsignore, helloworld2/.cvsignore: ..

2000-08-21 22:23  wtay

	* examples/helloworld2/: Makefile, helloworld2.c: An example using
	autoplug. Works for mp3 files only for now.

2000-08-21 22:20  wtay

	* docs/manual/outline.txt, gst/gstbin.c, gst/gstbin.h,
	gst/gstelement.c, gst/gstelement.h, gst/gstelementfactory.c,
	gst/gstpipeline.c, gst/gstpipeline.h, gst/gsttype.c, gst/gsttype.h,
	gst/elements/gstaudiosink.c, gst/elements/gstaudiosink.h,
	gst/elements/gstelements.c, gst/elements/gsttypefind.c,
	gst/elements/gsttypefind.h, plugins/filters/median/median.c,
	plugins/filters/smooth/smooth.c, plugins/mp3decode/xing/gstxing.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/wav/gstparsewav.c: A
	first (rude) attempt at autoplug.  Autoplugging selects appropriate
	codecs to connect src to sink, adds them to the pipeline and
	connect pads.  Autoplugging will run the typedetect plugin if the
	src pad has no MIME type.  No autoplugging is done on the src and
	sink pads, it's hardcoded: connect 'src to sink'.  No attempt at
	creating threads.  No attempt at dynamically autoplugging not yet
	existing pads.	Changes to (some) plugins to properly set their
	MIME types.

2000-08-19 17:36  wtay

	* docs/manual/: factories.sgml, gstreamer-manual.sgml,
	helloworld.sgml, outline.txt: More manual about MIME types and
	factories...

2000-08-19 01:34  richardb

	* plugins/mp3decode/xing/libxing/: stamp-h, stamp.h: I'm pretty
	sure that these are generated files which have no right to be in
	the CVS.  If I'm wrong, and things break, then we'll just have to
	put them back again.

2000-08-19 01:29  richardb

	* Makefile.am, config.h.in, configure.in, gstplay/Makefile.am,
	test/Makefile.am: libXv is now linked against by test/* and gstplay
	if it is present.  -lXv isn't leaked all over the place due to
	AC_CHECK_LIB test.  This is still messy though - we shouldn't have
	to link explicitly with extra things just because we use certain
	plugins.
	
	Build Makefile in tests, but don't recurse into tests when doing
	the build  (tests no longer in SUBDIRS).

2000-08-19 00:31  richardb

	* Makefile.am, configure.in: Test for a working libglade-gnome, and
	compile gstplay only if there is one.

2000-08-18 23:54  wtay

	* AUTHORS, gstplay/gstplay.glade: Richard has been promoted to
	makefile hacker :-)

2000-08-18 23:17  wtay

	* libs/idct/ieeetest.c: Remove rdts until a better fix for the bad
	asm is found...

2000-08-18 23:15  wtay

	* gst/gsttrace.c: Removed bad asm call for rdts. Need to fix
	this...

2000-08-18 23:07  richardb

	* configure.in, plugins/mpeg2/mpeg2enc/Makefile.am: If nasm isn't
	present, mpeg2enc plugin just ignores the .s files, C equivalents
	will be used.

2000-08-18 22:57  wtay

	* plugins/mpeg2/mpeg2enc/motion.c: check #ifdef HAVE_NASM to avoid
	using uncompiled code.

2000-08-18 22:30  richardb

	* acconfig.h, config.h.in, configure.in: Test for nasm - define
	HAVE_NASM in config.h if we have it, and AC_SUBST NASM_PATH for use
	when using nasm.

2000-08-18 21:38  wtay

	* docs/manual/helloworld.sgml, examples/helloworld/Makefile,
	examples/helloworld/helloworld.c: helloworld example. and docs

2000-08-18 21:35  wtay

	* README, gstreamer-config.in, docs/gst/Makefile.am,
	docs/manual/gstreamer-manual.sgml, editor/editor.c,
	editor/gsteditorelement.c, gst/Makefile.am, gst/gstbin.c,
	gst/gstelement.c, gst/gstelement.h, gst/gstobject.h, gst/gstpad.c,
	gst/gstpipeline.c, gst/gstplugin.c, gst/gstplugin.h, gst/gsttee.c,
	gst/gstthread.c, gst/elements/gsttypefind.c, gstplay/Makefile.am,
	gstplay/callbacks.c, gstplay/gstplay.c, libs/getbits/Makefile.am,
	libs/idct/Makefile.am, libs/putbits/Makefile.am,
	libs/riff/Makefile.am, plugins/avi/Makefile.am,
	plugins/avi/gstparseavi.c, plugins/cobin/cobin.c,
	plugins/mp3decode/mpg123/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/visualization/smoothwave/smoothwave.c,
	plugins/visualization/spectrum/gstspectrum.c,
	plugins/visualization/synaesthesia/synaesthesia.c, tools/launch.c:
	Various fixes for the build/install problems update to the
	docs/manual. Added a simple helloworld example.

2000-08-17 07:18  wtay

	* docs/manual/gstreamer-manual.sgml: The book is not published
	yet... :-)

2000-08-16 22:40  wtay

	* docs/manual/images/.cvsignore: Ignore the png images; they are
	supposed to be build by the Makefile.

2000-08-16 22:38  wtay

	* docs/manual/: .cvsignore, BUILD, bins.sgml, buffers.sgml,
	connections.sgml, elements.sgml, goals.sgml, gstreamer-manual.sgml,
	intro.sgml, motivation.sgml, outline.txt, states.sgml: First draft
	of Chapter 1 (introduction) and Chapter 2 (basic concepts) of the
	GStreamer manual.

2000-08-14 16:18  wtay

	* libs/idct/.cvsignore: ignore the test program

2000-08-14 16:17  wtay

	* Makefile.am, autogen.sh, configure.in, docs/Makefile.am,
	plugins/cobin/cobin.c, plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/vcdsrc/vcdsrc.c,
	plugins/visualization/synaesthesia/synaesthesia.c, test/.cvsignore,
	test/Makefile.am, test/ac3parse.c, test/ac3play.c, test/avi2mpg.c,
	test/aviparse.c, test/dvdcat.c, test/mp1parse.c, test/mp1tomp1.c,
	test/mp2toavi.c, test/mp2tomp1.c, test/mp3.c, test/mp3parse.c,
	test/mp3play.c, test/mpeg2parse.c, test/pipetest.c, test/qtest.c,
	test/record.c, test/spectrum.c, test/vidcapture.c,
	test/vidcapture2.c, test/videotest.c, test/wave.c,
	test/bindings/Makefile.am, test/cothreads/Makefile.am: Build fixes.
	 Adapted the test directory to the new state management added an
	mpeg2 to avi encoder.  added a v4l to divx capture example.

2000-08-14 11:59  wtay

	* configure.in, include/avifmt.h, include/registry.h: The include
	files for the windows codec loader.  top level configure file.

2000-08-14 11:57  wtay

	* gst/: gstbufferpool.c, gstbufferpool.h: Added the bufferpool
	handler.  This object is able to generate buffers and is passed
	between elements to exchange buffers. Elements can also use this
	pool to efficiently generate output buffers.

2000-08-14 11:55  wtay

	* gst/: Makefile.am, gstbin.c, gstbin.h, gstbuffer.c, gstbuffer.h,
	gstelement.h, gstpad.c, gstpipeline.c, gstthread.c,
	elements/gstaudiosink.c, elements/gstaudiosrc.c,
	elements/gstdisksrc.c, elements/gstpipefilter.c: State change fixes
	in the threading element.  Added bufferpools.

2000-08-14 11:54  wtay

	* plugins/: mp3decode/mpg123/layer1.c, mp3decode/mpg123/layer3.c,
	mp3decode/mpg123/tabinit.c, mpeg2/Makefile.am,
	mpeg2/ac3dec/parse.c, mpeg2/subtitles/.cvsignore,
	mpeg2/subtitles/Makefile.am, mpeg2/subtitles/Notes.txt,
	mpeg2/subtitles/mpeg2subt.c, mpeg2/subtitles/mpeg2subt.h,
	videoscale/videoscale.c: fixes in the mp3 tables.  Use subbuffers
	is possible.  Added MPEG2 subtitles.

2000-08-14 11:49  wtay

	* plugins/mpeg2/video/: IEEE1180, Makefile.am, getblk.c, gethdr.c,
	getpic.c, getvlc.c, gstmpeg2play.c, idct.c, idctref.c, mmxidct.S,
	mpeg2dec.c, mpeg2dec.h, recon.c, tables.c, test.m2v: Removed IDCT
	and used the IDCT library.

2000-08-14 11:42  wtay

	* plugins/mpeg2/parse/: mpeg2parse.c, mpeg2parse.h: Use subbufers.

2000-08-14 11:41  wtay

	* plugins/mpeg2/mpeg2enc/: Makefile.am, bdist1_mmx.s, bdist1_sse.s,
	bdist2_mmx.s, dist1_00_mmx.s, dist1_00_sse.s, dist1_01_mmx.s,
	dist1_01_sse.s, dist1_10_mmx.s, dist1_10_sse.s, dist1_11_mmx.s,
	dist1_11_sse.s, dist2_mmx.s, fdist1_00.s, fdist1_mmx.s,
	gstmpeg2enc.c, idct.c, motion.c, mpeg2enc.c, mpeg2enc.h,
	predict_mmx.s, qdist1_mmx.s, qdist1_sse.s, quant_mmx.s,
	quant_non_i_sse.s, quantize.c, ratectl.c, rcdist_mmx.s, tables.c,
	transfrm.c, variance_mmx.s: Better rate control with different
	complexity measurement.  Merge from mjpeg_beta asm for mmx and sse
	optimisations.	Use the IDCT library.

2000-08-14 11:33  wtay

	* plugins/mpeg2/ac3parse/ac3parse.c: Use subbuffers instead of
	memcpy.

2000-08-14 11:32  wtay

	* plugins/mpeg1video/parse/: Makefile.am, README, mp1videoparse.c:
	Use subbufers.

2000-08-14 11:31  wtay

	* plugins/mpeg1/system_encode/: buffer.c, buffer.h,
	system_encode.c, system_encode.h: Added statup delay.  Added
	padding.

2000-08-14 11:30  wtay

	* plugins/mpeg1/parse/: mpeg1parse.c, mpeg1parse.h: Use subbuffers.

2000-08-14 11:28  wtay

	* plugins/mpeg1/mpeg_play/: Makefile.am, decoders.c, decoders.h,
	floatdct.c, gstmpeg_play.c, jrevdct.c, mmxidct.S, parseblock.c,
	util.c, video.c, video.h: Use subbufers and bufferpools.  Use the
	idct library.

2000-08-14 11:25  wtay

	* plugins/mp3decode/parse/mp3parse.c: use subbuffers

2000-08-14 11:23  wtay

	* plugins/capture/v4l/: gstv4lsrc.c, gstv4lsrc.h: Changes for the
	new state management.

2000-08-14 11:21  wtay

	* plugins/avi/: Makefile.am, audiocodecs.c, gstaviencoder.c,
	gstparseavi.c, gstparseavi.h, playcodecs.c, videoheader.c,
	wincodec/.cvsignore, wincodec/Makefile.am, wincodec/gstwincodec.c,
	wincodec/gstwincodec.h, wincodec/gstwindec.c, wincodec/gstwindec.h,
	wincodec/gstwinenc.c, wincodec/gstwinenc.h: Separate
	encoder/decoder plugins for windows codecs.

2000-08-14 11:17  wtay

	* gstplay/gstplay.glade: The UI

2000-08-14 11:16  wtay

	* gstplay/: Makefile.am, avi.c, callbacks.c, codecs.h, gstplay.c,
	interface.c, interface.h, mpeg1.c, mpeg2.c, pause.xpm, play.xpm,
	stop.xpm, support.c, support.h: glade based gstplay version. 
	better avi/mpeg support.  nice about dialog :-) Drag and drop
	should work.

2000-08-14 11:12  wtay

	* libs/idct/.cvsignore: ..

2000-08-14 11:11  wtay

	* libs/: Makefile.am, getbits/gstgetbits.c,
	getbits/gstgetbits_inl.h, idct/Makefile.am, idct/README,
	idct/dct.h, idct/doieee, idct/fastintidct.c, idct/floatidct.c,
	idct/gstidct.c, idct/gstidct.h, idct/ieeetest.c, idct/intidct.c,
	idct/mmx32idct.c, idct/mmxidct.S, putbits/gstputbits.c,
	riff/gstriff.h, riff/gstriffencode.c: Added general IDCT library.
	Added IEEE testbed.  Update to the windows codec loader.  fixes in
	the riff parser/encoder.  cleanup in the getbits/putbits API.

2000-08-05 04:53  omegahacker

	* LICENSE, Makefile.am: Adding explicit license information, since
	quite a large number of source files don't have the LGPL header. 
	This is something we need to fix.  GNOME has a script to run around
	and fix things, maybe we should snag a copy and let it loose in a
	sandbox.

2000-07-21 04:57  omegahacker

	* gst/elements/: gstasyncdisksrc.c, gstaudiosink.c, gstaudiosink.h,
	gstaudiosrc.c, gstaudiosrc.h, gstdisksrc.c, gstdisksrc.h,
	gstfdsrc.c, gsthttpsrc.c, gsthttpsrc.h, gstpipefilter.c,
	gstpipefilter.h: Brought standard elements in line with new state
	management system.

2000-07-17 18:14  omegahacker

	* Makefile.am, autogen.sh, configure.in, docs/Makefile.am,
	docs/gst/gstreamer-decl.txt, gst/Makefile.am, gst/gstbin.c,
	gst/gstbin.h, gst/gstclock.c, gst/gstelement.c, gst/gstelement.h,
	gst/gstpad.c, gst/gstpad.h, gst/gstpipeline.c, gst/gstthread.c,
	gst/gstthread.h, gst/elements/gstelements.c,
	gst/elements/gstfakesink.c, gst/elements/gstfakesrc.c,
	plugins/dvdsrc/.cvsignore, plugins/effects/volume/volume.c,
	test/fake.c, tests/.cvsignore, tests/Makefile.am, tests/README,
	tests/init.c, tests/loadall.c, tests/simplefake.c, tests/states.c:
	Megapatch, changes which states are available, how they're used,
	and how they're set.  Also modifies the scheduling system, breaking
	pulled buffers.  Check mail archives for more details.

2000-07-15 14:26  wtay

	* gst/gstutils.c, gst/gstutils.h, libs/riff/gstriffparse.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/layer3.c: Fixed a bug in the riff parser
	with the allignment of the chunks. This should solve the errors
	with avi playback.

2000-07-15 13:06  wtay

	* configure.in, gstplay/avi.c, gstplay/gstplay.c, gstplay/mpeg1.c,
	gstplay/mpeg2.c, include/.cvsignore, include/avifmt.h,
	include/default.h, include/registry.h, libs/Makefile.am,
	libs/riff/gstriff.h, libs/riff/gstriffparse.c,
	plugins/avi/.cvsignore, plugins/avi/Makefile.am,
	plugins/avi/audiocodecs.c, plugins/avi/codectest.c,
	plugins/avi/gstparseavi.c, plugins/avi/gstparseavi.h,
	plugins/avi/playcodecs.c, plugins/mp3decode/mpg123/Makefile.am,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/parse/mpeg2parse.c: Added DivX ;-) support by using
	the wine .dll loader. you must unzip binaries.zip from
	http://divx.euro.ru/binaries.zip into the win32 directory **of the
	source tree**.	Extended and bugfixed thr riff parser to support
	DivX ;-) Extended the avi parser to support DivX ;-) and MPEG Layer
	3.  Fixed a bug in mpg123. Sound still is seriously wrong with
	layer 3.  Fixed MPEG2 playback in gstplay.  Time indication in
	gstplay is temporarly broken.

2000-07-13 20:49  wtay

	* gst/gstclock.c, gst/gstthread.c, gst/elements/gstaudiosink.c,
	gstplay/gstplay.c, gstplay/mpeg2.c, plugins/avi/gstparseavi.c,
	plugins/mpeg1/mpeg_play/util.c, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg1video/parse/mp1videoparse.h,
	plugins/mpeg2/video/gethdr.c, plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/video/mpeg2dec.h: Better error recovery in teh MPEG1
	decoder.  Removed MPEG2 stuff from the MPEG1 decoderand make it
	ignore MPEG2 streams.  Some extra framerates in the MPEG2 decoder
	(from libmpeg2) Round image size up to the nearest multiple of 16
	(MPEG2 decoder)

2000-07-12 23:52  wtay

	* configure.in, docs/random/states.new, gst/gst.h, gst/gstbin.c,
	gst/gstbuffer.h, gst/gstclock.c, gst/gstclock.h, gst/gstelement.c,
	gst/gstelement.h, gst/gstpad.c, gst/gstpad.h, gst/gstpipeline.c,
	gst/gstthread.c, gst/elements/gstaudiosink.c,
	gst/elements/gstaudiosink.h, gst/elements/gstqueue.c,
	gst/elements/gstqueue.h, gstplay/callbacks.c, gstplay/gstplay.c,
	gstplay/mpeg1.c, include/mmx.h, plugins/avi/playcodecs.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/gstmpg123.h,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mp3decode/mpg123/mpg123.c,
	plugins/mp3decode/parse/Makefile.am,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/parse/mp3parse.h,
	plugins/mp3decode/xing/libxing/Makefile.am,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg1/parse/mpeg1parse.h,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg1video/parse/mp1videoparse.h,
	plugins/mpeg2/video/Makefile.am, plugins/mpeg2/video/recon.c: This
	is the audio/video sync release.  Changed the mpegvideoparser to
	parse complete pictures. Added the PTS timestamps to the pictures. 
	Added PTS timestamps to the MPEG audio frames.	Made the clock a
	littlebit better.  Gstplay now uses two more threads one for video,
	one for audio playback.  Added the first QoS callbacks for the
	pads.  hopefully fix an mmx compilation problem.

2000-07-05 22:32  wtay

	* config.h.in, configure.in, gstplay/Makefile.am: Added HW scaling
	and YUV conversion for XFree 4.0 Need to cleanup the fallback
	mechanism in case no suitable XvImage is found.

2000-07-05 11:21  wtay

	* gstplay/gstplay.h: [no log message]

2000-07-05 11:21  wtay

	* gst/gstbuffer.h, gst/elements/gstaudiosink.c,
	gst/elements/gstaudiosink.h, gst/elements/gstdisksrc.c,
	gst/elements/gstdisksrc.h, gst/elements/gstfdsrc.c,
	gst/elements/gstqueue.c, gstplay/Makefile.am, gstplay/callbacks.c,
	gstplay/callbacks.h, gstplay/gstplay.c, gstplay/interface.c,
	gstplay/interface.h, gstplay/main.c, gstplay/mpeg1.c,
	gstplay/mpeg2.c, plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/proto.h, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg1/parse/mpeg1parse.h,
	plugins/mpeg1video/parse/Makefile.am,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg1video/parse/mp1videoparse.h,
	plugins/mpeg2/ac3dec/Makefile.am, plugins/mpeg2/ac3dec/exponent.c,
	plugins/mpeg2/ac3parse/Makefile.am,
	plugins/mpeg2/ac3parse/ac3parse.c, plugins/mpeg2/parse/Makefile.am,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/parse/mpeg2parse.h,
	plugins/mpeg2/video/gethdr.c, plugins/mpeg2/video/getpic.c,
	plugins/mpeg2/video/getvlc.c, plugins/mpeg2/video/recon.c,
	test/mp2tomp1.c, test/mpeg2parse.c: Added seeking to some of the
	plugins.  some MMX speedups in the MPEG decoders.  Better YUV to
	MMX conversion implemented seeking to gstplay.

2000-06-27 21:22  wtay

	* plugins/mpeg1/mpeg_play/: parseblock.c, video.c: Added half pel
	interpollation for bidirectionally predicted macroblocks.  
	(players based on mpeg_play should also implement this, as it was
	left	out from the reference decoder, probabliy for performance
	reasons)  Reduced rounding errors in the quatisation of the
	coeficients.

2000-06-25 23:23  wtay

	* gstplay/.cvsignore: [no log message]

2000-06-25 23:21  wtay

	* gstplay/Makefile.am, gstplay/codecs.h, gstplay/main.c,
	gstplay/mpeg2.c, plugins/mp3decode/xing/libxing/Makefile.am,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg2/parse/mpeg2parse.c:
	Added more accurate mpeg system stream detection (MPEG1 and MPEG2)
	Added mpeg2 playback for gstplay

2000-06-25 22:37  wtay

	* configure.in, gst/gstpad.c, gst/gstpad.h, gst/gsttypefind.c,
	gst/gsttypefind.h, gst/elements/Makefile.am,
	gst/elements/gstaudiosink.h, gst/elements/gstdisksrc.c,
	gst/elements/gstelements.c, gst/elements/gstqueue.c,
	gst/elements/gsttypefind.c, gst/elements/gsttypefind.h,
	gst/types/gsttypes.c, gstplay/Makefile.am, gstplay/avi.c,
	gstplay/callbacks.c, gstplay/callbacks.h, gstplay/codecs.h,
	gstplay/interface.c, gstplay/interface.h, gstplay/main.c,
	gstplay/mpeg1.c, gstplay/support.c, gstplay/support.h,
	gstplay/pixmaps/pause.xpm, gstplay/pixmaps/play.xpm,
	gstplay/pixmaps/stop.xpm, libs/riff/gstriffparse.c,
	plugins/avi/Makefile.am, plugins/avi/gstaviencoder.c,
	plugins/avi/gstparseavi.c, plugins/avi/gstparseavi.h,
	plugins/avi/playcodecs.c, plugins/avi/videoheader.c,
	plugins/filters/median/median.c, plugins/filters/median/median.h,
	plugins/filters/smooth/smooth.c, plugins/filters/smooth/smooth.h,
	plugins/jpeg/gstjpeg.c, plugins/jpeg/gstjpegdec.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/util.c, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/mpeg2enc/putseq.c, plugins/mpeg2/video/mpeg2dec.c,
	plugins/wav/gstparsewav.c, test/avi2mpg.c, test/aviparse.c,
	test/mp1parse.c, test/vidcapture.c: Switched Cr and Cb in YUV2RGB
	fixed the avi parser (gstriff had wrong size) the system_encoder
	can now do video only system streams sanitized the colorspace and
	scaler api.  added fast self modifying asm scaler.  worked on the
	typefind stuff.  added a cool media player (gstplay) it uses the
	typefinder to playback	 avi, mpeg1 (system and video) streams. It
	is also a testbed and a real app.

2000-06-18 15:13  wtay

	* plugins/mpeg1/mpeg_play/: Makefile.am, idct_block_mmx.S,
	mmxidct.S, parseblock.c, proto.h, video.c: Fixed MMX IDCT precision
	bug.

2000-06-18 14:51  wtay

	* plugins/avi/videoheader.c: Construct the avi header based on the
	codec type.

2000-06-18 14:50  wtay

	* gst/elements/gstqueue.c, plugins/avi/Makefile.am,
	plugins/avi/gstaviencoder.c, plugins/avi/gstaviencoder.h,
	plugins/avi/gstparseavi.c, plugins/capture/v4l/gstv4lsrc.c,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/video/getblk.c,
	plugins/mpeg2/video/getpic.c, plugins/mpeg2/video/mmxidct.S,
	plugins/mpeg2/video/mpeg2dec.h, plugins/mpeg2/video/tables.c,
	test/mp2tomp1.c, test/vidcapture.c: Fixed an MMX IDCT bug.  Fixed a
	color conversion bug.  Initial work for multiply avi codecs.

2000-06-16 23:58  wtay

	* configure.in, libs/Makefile.am, libs/putbits/.cvsignore,
	libs/putbits/Makefile.am, libs/putbits/gstputbits.c,
	libs/putbits/gstputbits.h, plugins/mpeg1/mpegaudio/Makefile.am,
	plugins/mpeg1/mpegaudio/common.c,
	plugins/mpeg1/mpegaudio/encoder.h,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegaudio/gstputbits.c,
	plugins/mpeg1/mpegaudio/gstputbits.h,
	plugins/mpeg1/mpegaudio/musicin.h,
	plugins/mpeg2/mpeg2enc/Makefile.am,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/gstputbits.c,
	plugins/mpeg2/mpeg2enc/gstputbits.h,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h, plugins/mpeg2/mpeg2enc/puthdr.c,
	plugins/mpeg2/mpeg2enc/putpic.c, plugins/mpeg2/mpeg2enc/putseq.c,
	plugins/mpeg2/mpeg2enc/ratectl.c,
	plugins/mpeg2/video/gstmpeg2play.c: Unified putbits.

2000-06-16 23:33  wtay

	* plugins/mpeg1/mpegaudio/.cvsignore: [no log message]

2000-06-16 23:32  wtay

	* plugins/mpeg2/mpeg2enc/: gstputbits.c, gstputbits.h, putbits.c,
	putbits.h: putbits implementation

2000-06-16 23:30  wtay

	* configure.in, plugins/mpeg1/Makefile.am,
	plugins/mpeg1/mpegaudio/Makefile.am,
	plugins/mpeg1/mpegaudio/README.crh,
	plugins/mpeg1/mpegaudio/common.c, plugins/mpeg1/mpegaudio/common.h,
	plugins/mpeg1/mpegaudio/encode.c,
	plugins/mpeg1/mpegaudio/encoder.h,
	plugins/mpeg1/mpegaudio/fixes.txt,
	plugins/mpeg1/mpegaudio/gstmpegaudio.c,
	plugins/mpeg1/mpegaudio/gstmpegaudio.h,
	plugins/mpeg1/mpegaudio/gstputbits.c,
	plugins/mpeg1/mpegaudio/gstputbits.h,
	plugins/mpeg1/mpegaudio/musicin.c,
	plugins/mpeg1/mpegaudio/musicin.h, plugins/mpeg1/mpegaudio/psy.c,
	plugins/mpeg1/mpegaudio/readme.txt,
	plugins/mpeg1/mpegaudio/release.txt,
	plugins/mpeg1/mpegaudio/subs.c, plugins/mpeg1/mpegaudio/tonal.c,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1/system_encode/system_encode.h,
	plugins/mpeg2/mpeg2enc/Makefile.am,
	plugins/mpeg2/mpeg2enc/mpeg2enc.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h, plugins/mpeg2/mpeg2enc/puthdr.c,
	plugins/mpeg2/mpeg2enc/putmpg.c, plugins/mpeg2/mpeg2enc/putpic.c,
	plugins/mpeg2/mpeg2enc/putseq.c, plugins/mpeg2/mpeg2enc/putvlc.c,
	plugins/mpeg2/mpeg2enc/ratectl.c, test/mp2tomp1.c: Added SCR and
	mux_rate calculations in the MPEG1 multiplexer.  worked toward a
	unified putbits implementation Added an MPEG audio layer 1&2
	encoder.

2000-06-12 22:27  wtay

	* plugins/capture/v4l/gstv4lsrc.c, plugins/capture/v4l/gstv4lsrc.h,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg2/mpeg2enc/predict.c,
	plugins/mpeg2/mpeg2enc/transfrm.c, plugins/videoscale/Makefile.am,
	plugins/videoscale/videoscale.c, plugins/videoscale/videoscale.h,
	test/mp1parse.c, test/mp2tomp1.c: Reworked the colorspace converter
	and the scaler API.  Fixed some MMX bugs in the mpeg encoder.

2000-06-11 13:11  wtay

	* configure.in, gst/elements/gstpipefilter.c,
	plugins/audioscale/audioscale.c, plugins/audioscale/audioscale.h,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/parse/mp3parse.h, plugins/mpeg1/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/system_encode/.cvsignore,
	plugins/mpeg1/system_encode/Makefile.am,
	plugins/mpeg1/system_encode/buffer.c,
	plugins/mpeg1/system_encode/buffer.h,
	plugins/mpeg1/system_encode/main.h,
	plugins/mpeg1/system_encode/system_encode.c,
	plugins/mpeg1/system_encode/system_encode.h,
	plugins/mpeg1/system_encode/systems.c,
	plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/ac3parse/ac3parse.h,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/motion.c, plugins/mpeg2/mpeg2enc/mpeg2enc.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h,
	plugins/mpeg2/mpeg2enc/predict.c, plugins/mpeg2/mpeg2enc/putpic.c,
	plugins/mpeg2/video/gstmpeg2play.c, test/aviparse.c,
	test/mp1parse.c, test/mp2tomp1.c: Reworked the audio resampler. 
	Added first frames skipping to the mp3 and ac3 parser (this allows
	you to skip a number of frames before pushing them).  Removed wrong
	mmx code from the encoder.  Added Macroblocks per slice to the
	encoder.  added bilinear and bicubic interpolation to the
	videoscaler.  Added a MPEG1 multiplexer (no SCR or mux rate
	calculations yet) Added some options (framerate to the
	encoder/decoder)

2000-06-04 20:18  richardb

	* include/mmx.h: Add a missing ; in the BROKEN_PAND implementation.

2000-05-28 23:46  wtay

	* gst/elements/gstpipefilter.c, gst/elements/gstpipefilter.h,
	plugins/audioscale/audioscale.c, plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/parse/mpeg2parse.h,
	test/.cvsignore, test/mp2tomp1.c: Rewrote the mpeg2 system parser
	like the mpeg1 parser.	Added a command property to the pipefilter.

2000-05-28 21:04  wtay

	* gst/elements/gstpipefilter.c, gst/elements/gstpipefilter.h,
	plugins/audioscale/.cvsignore, test/pipetest.c: Added a basic
	element: pipefilter. This element connects the stdin/stdout of an
	external program into the pipeline. We now have virtually all of
	the capabilities of sox, lame, ...

2000-05-28 20:59  wtay

	* configure.in, gst/elements/Makefile.am,
	gst/elements/gstelements.c, plugins/audioscale/Makefile.am,
	plugins/audioscale/audioscale.c, plugins/audioscale/audioscale.h,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg1/parse/mpeg1parse.h,
	plugins/mpeg2/mpeg2enc/Makefile.am,
	plugins/mpeg2/mpeg2enc/motion.c, plugins/mpeg2/mpeg2enc/mpeg2enc.c,
	plugins/mpeg2/mpeg2enc/predict.c, plugins/mpeg2/mpeg2enc/putpic.c,
	plugins/mpeg2/mpeg2enc/ratectl.c,
	plugins/mpeg2/mpeg2enc/transfrm.c, plugins/videoscale/videoscale.c,
	plugins/videoscale/videoscale.h, test/Makefile.am, test/avi2mpg.c,
	test/mp2tomp1.c: Rewrote the mpeg1 system stream parser.  Fixed a
	motion compensation bug (was a bug on Intels site)
	Faster/Better/more accurate motion detection in the mpeg encoder
	Added an audio resampler (convert 48000 kHz to 44100 for example)
	does not work Fixed rate control in the mpeg2 encoder.

2000-05-21 23:00  wtay

	* docs/gst/.cvsignore: Added gstreamer.types to the .cvsignore

2000-05-21 22:59  wtay

	* test/mp1tomp1.c: An MPEG1 transcoder.

2000-05-21 22:58  wtay

	* configure.in, docs/gst/gstreamer-decl.txt,
	docs/gst/gstreamer.hierarchy, docs/gst/tmpl/gsthttpsrc.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, gst/gstbuffer.h,
	gst/elements/gstqueue.c, plugins/Makefile.am,
	plugins/capture/v4l/gstv4lsrc.c, plugins/filters/Makefile.am,
	plugins/filters/median/.cvsignore,
	plugins/filters/median/Makefile.am,
	plugins/filters/median/median.c, plugins/filters/median/median.h,
	plugins/filters/smooth/.cvsignore,
	plugins/filters/smooth/Makefile.am,
	plugins/filters/smooth/smooth.c, plugins/filters/smooth/smooth.h,
	plugins/jpeg/gstjpegenc.c, plugins/mpeg1/Makefile.am,
	plugins/mpeg1/mpeg1encoder/.cvsignore,
	plugins/mpeg1/mpeg1encoder/CHANGES,
	plugins/mpeg1/mpeg1encoder/Makefile.am,
	plugins/mpeg1/mpeg1encoder/PORTABILITY,
	plugins/mpeg1/mpeg1encoder/README,
	plugins/mpeg1/mpeg1encoder/SETUP,
	plugins/mpeg1/mpeg1encoder/chendct.c,
	plugins/mpeg1/mpeg1encoder/codec.c,
	plugins/mpeg1/mpeg1encoder/csize.h,
	plugins/mpeg1/mpeg1encoder/ctables.h,
	plugins/mpeg1/mpeg1encoder/dct.h,
	plugins/mpeg1/mpeg1encoder/globals.h,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.c,
	plugins/mpeg1/mpeg1encoder/gstmpeg1encoder.h,
	plugins/mpeg1/mpeg1encoder/htable.lex,
	plugins/mpeg1/mpeg1encoder/huffman.c,
	plugins/mpeg1/mpeg1encoder/huffman.h,
	plugins/mpeg1/mpeg1encoder/io.c,
	plugins/mpeg1/mpeg1encoder/lex.yy.c,
	plugins/mpeg1/mpeg1encoder/lexer.c,
	plugins/mpeg1/mpeg1encoder/lexer.l,
	plugins/mpeg1/mpeg1encoder/marker.c,
	plugins/mpeg1/mpeg1encoder/marker.h,
	plugins/mpeg1/mpeg1encoder/me.c, plugins/mpeg1/mpeg1encoder/mem.c,
	plugins/mpeg1/mpeg1encoder/mem.h,
	plugins/mpeg1/mpeg1encoder/mpeg.c,
	plugins/mpeg1/mpeg1encoder/param.h,
	plugins/mpeg1/mpeg1encoder/prototypes.h,
	plugins/mpeg1/mpeg1encoder/putbits.c,
	plugins/mpeg1/mpeg1encoder/putbits.h,
	plugins/mpeg1/mpeg1encoder/qtables.h,
	plugins/mpeg1/mpeg1encoder/size.h,
	plugins/mpeg1/mpeg1encoder/stat.c,
	plugins/mpeg1/mpeg1encoder/stream.c,
	plugins/mpeg1/mpeg1encoder/stream.h,
	plugins/mpeg1/mpeg1encoder/system.h,
	plugins/mpeg1/mpeg1encoder/tables.h,
	plugins/mpeg1/mpeg1encoder/transform.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/util.c, plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg2/mpeg2enc/motion.c, plugins/mpeg2/mpeg2enc/mpeg2enc.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h,
	plugins/mpeg2/mpeg2enc/predict.c, plugins/mpeg2/mpeg2enc/putpic.c,
	plugins/mpeg2/mpeg2enc/putseq.c, plugins/mpeg2/mpeg2enc/ratectl.c,
	plugins/mpeg2/video/mmxidct.S, plugins/mpeg2/video/mpeg2dec.h,
	plugins/vcdsrc/vcdsrc.c, test/Makefile.am, test/avi2mpg.c,
	test/mp2tomp1.c, test/vidcapture.c: Fixed the mpeg2 encoder. Added
	MMX optimisations for motion estimation.  Added another mpeg1
	encoder.  Added Two filters: smooth and median (a median cut
	filter) Made the queue pull buffers.

2000-05-17 23:49  richardb

	* plugins/Makefile.am: Always build videosink, now that the
	dependency on gdk_pixbuf is removed.

2000-05-13 10:41  richardb

	* plugins/Makefile.am: Make videosink compiled only if
	HAVE_GDK_PIXBUF again.

2000-05-12 18:41  wtay

	* plugins/videoscale/.cvsignore: ...

2000-05-12 18:39  wtay

	* plugins/videoscale/Makefile.am, plugins/videoscale/videoscale.c,
	plugins/videoscale/videoscale.h, test/mp2tomp1.c: A simple video
	scaler as a library and an Element. Also a little non working mpeg2
	to mpeg1 converter (still struggling with the quantisation).

2000-05-12 18:33  wtay

	* configure.in, gst/gstclock.c, libs/Makefile.am,
	plugins/Makefile.am, plugins/capture/v4l/grab-v4l.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/jpeg/gstjpegdec.c,
	plugins/jpeg/gstjpegdec.h, plugins/jpeg/gstjpegenc.c,
	plugins/jpeg/gstjpegenc.h, plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/motion.c, plugins/mpeg2/mpeg2enc/mpeg2enc.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h, plugins/mpeg2/mpeg2enc/putpic.c,
	plugins/mpeg2/mpeg2enc/putseq.c, plugins/mpeg2/mpeg2enc/ratectl.c,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/video/getpic.c,
	plugins/mpeg2/video/gstmpeg2play.c, test/.cvsignore,
	test/Makefile.am, test/mp1parse.c, test/mpeg2parse.c: More changes
	to the mpeg parser and encoder.  It seems like the mpeg2 decoder
	does not like some MPEG1 videos. Use mpeg_play for now (eg.
	AlienSong)

2000-05-12 08:15  richardb

	* acconfig.h, config.h.in, configure.in, docs/gst/Makefile.am,
	docs/gst/gstreamer-decl.txt, docs/gst/gstreamer.hierarchy,
	docs/gst/gstreamer.types, docs/gst/gstreamer.types.in,
	docs/gst/tmpl/gsthttpsrc.sgml, docs/gst/tmpl/gstreamer-unused.sgml,
	plugins/Makefile.am: Make GDK pixbuf optional, by compiling
	videosink only if it is present.  Make documentation generated
	successfully even if libghttp isn't present (by skipping the
	ghttpsrc stuff).

2000-05-12 08:09  richardb

	* plugins/capture/v4l/gstv4lsrc.c: Remove "stderr," from a DEBUG
	macro call, so it compiles with debug on.

2000-05-02 00:22  wtay

	* docs/gst/.cvsignore, plugins/mp3decode/mpg123/mpg123.c,
	plugins/mpeg1/mpeg_play/video.c, test/.cvsignore: Fixed some build
	errors.

2000-05-02 00:09  wtay

	* configure.in, libs/getbits/gstgetbits.h,
	libs/getbits/gstgetbits_inl.h, plugins/avi/gstaviencoder.c,
	plugins/avi/gstparseavi.c, plugins/jpeg/gstjpegdec.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/Makefile.am, plugins/mpeg2/ac3dec/ac3dec.c,
	plugins/mpeg2/ac3parse/ac3parse.c,
	plugins/mpeg2/mpeg2enc/.cvsignore, plugins/mpeg2/mpeg2enc/CHANGES,
	plugins/mpeg2/mpeg2enc/Makefile.am, plugins/mpeg2/mpeg2enc/TODO,
	plugins/mpeg2/mpeg2enc/conform.c, plugins/mpeg2/mpeg2enc/fdctref.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.c,
	plugins/mpeg2/mpeg2enc/gstmpeg2enc.h,
	plugins/mpeg2/mpeg2enc/idct.c, plugins/mpeg2/mpeg2enc/motion.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.c,
	plugins/mpeg2/mpeg2enc/mpeg2enc.h,
	plugins/mpeg2/mpeg2enc/predict.c, plugins/mpeg2/mpeg2enc/putbits.c,
	plugins/mpeg2/mpeg2enc/putbits.h, plugins/mpeg2/mpeg2enc/puthdr.c,
	plugins/mpeg2/mpeg2enc/putmpg.c, plugins/mpeg2/mpeg2enc/putpic.c,
	plugins/mpeg2/mpeg2enc/putseq.c, plugins/mpeg2/mpeg2enc/putvlc.c,
	plugins/mpeg2/mpeg2enc/quantize.c,
	plugins/mpeg2/mpeg2enc/ratectl.c, plugins/mpeg2/mpeg2enc/readpic.c,
	plugins/mpeg2/mpeg2enc/stats.c, plugins/mpeg2/mpeg2enc/tables.c,
	plugins/mpeg2/mpeg2enc/transfrm.c, plugins/mpeg2/mpeg2enc/vlc.h,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/parse/mpeg2parse.h,
	plugins/mpeg2/video/Makefile.am, plugins/mpeg2/video/getblk.c,
	plugins/mpeg2/video/gethdr.c, plugins/mpeg2/video/getpic.c,
	plugins/mpeg2/video/getvlc.c, plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/video/mpeg2dec.c, plugins/mpeg2/video/mpeg2dec.h,
	plugins/mpeg2/video/recon.c, plugins/mpeg2/video/store.c,
	plugins/mpeg2/video/systems.c, test/Makefile.am, test/avi2mpg.c,
	test/mp1parse.c, test/mpeg2parse.c: MPEG2 decoder fixes, unified
	MPEG System stream parser. an mpeg encoder.

2000-04-24 21:51  wtay

	* configure.in, libs/getbits/gstgetbits_inl.h,
	plugins/mpeg1/mpeg_play/decoders.c,
	plugins/mpeg1/mpeg_play/decoders.h,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/proto.h, plugins/mpeg1/mpeg_play/util.c,
	plugins/mpeg1/mpeg_play/util.h, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg2/Makefile.am, plugins/mpeg2/parse/Makefile.am,
	plugins/mpeg2/parse/getbits.c, plugins/mpeg2/parse/getbits.h,
	plugins/mpeg2/parse/mpeg2parse.c, plugins/mpeg2/parse/mpeg2parse.h,
	plugins/mpeg2/video/.cvsignore, plugins/mpeg2/video/CHANGES,
	plugins/mpeg2/video/EXAMPLES, plugins/mpeg2/video/IEEE1180,
	plugins/mpeg2/video/Makefile.am, plugins/mpeg2/video/README,
	plugins/mpeg2/video/SPATIAL.DOC, plugins/mpeg2/video/TODO,
	plugins/mpeg2/video/getblk.c, plugins/mpeg2/video/gethdr.c,
	plugins/mpeg2/video/getpic.c, plugins/mpeg2/video/getvlc.c,
	plugins/mpeg2/video/getvlc.h, plugins/mpeg2/video/gstmpeg2play.c,
	plugins/mpeg2/video/gstmpeg2play.h, plugins/mpeg2/video/idct.c,
	plugins/mpeg2/video/idctref.c, plugins/mpeg2/video/mmxidct.S,
	plugins/mpeg2/video/motion.c, plugins/mpeg2/video/mpeg2dec.c,
	plugins/mpeg2/video/mpeg2dec.h, plugins/mpeg2/video/recon.c,
	plugins/mpeg2/video/spatscal.c, plugins/mpeg2/video/store.c,
	plugins/mpeg2/video/subspic.c, plugins/mpeg2/video/systems.c,
	plugins/mpeg2/video/tables.c, plugins/mpeg2/video/test.m2v,
	test/mp1parse.c, test/mpeg2parse.c: Added the mpeg2dec MPEG1 and
	MPEG2 decoder.

2000-04-17 00:33  wtay

	* libs/getbits/gstgetbits_inl.h, plugins/mpeg2/ac3dec/exponent.c,
	plugins/mpeg2/ac3dec/mantissa.c: Fixed a bug in the inlined
	getbits.

2000-04-17 00:25  wtay

	* plugins/mpeg2/ac3dec/: Makefile.am, ac3dec.c, ac3dec.h,
	getbits.c, getbits.h, mantissa.c, mantissa.h, parse.c, parse.h:
	Reworked the ac3decoder for the new getbits functions. We are now
	about 50% faster than the LIVID AC3 decoder (16% against 24% CPU
	time)

2000-04-16 19:51  wtay

	* libs/getbits/.cvsignore: [no log message]

2000-04-16 19:50  wtay

	* libs/getbits/: Makefile.am, gstgetbits.c, gstgetbits.h,
	gstgetbits_inl.h: I the generc getbits implementation

2000-04-16 19:47  wtay

	* configure.in, docs/gst/gstreamer-decl.txt,
	docs/gst/tmpl/gstreamer-unused.sgml, libs/Makefile.am,
	plugins/Makefile.am, plugins/mp3decode/mpg123/Makefile.am,
	plugins/mp3decode/mpg123/common.c,
	plugins/mp3decode/mpg123/getbits.c,
	plugins/mp3decode/mpg123/getbits.h,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/layer1.c,
	plugins/mp3decode/mpg123/layer2.c,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mp3decode/mpg123/mpg123.c,
	plugins/mp3decode/mpg123/mpg123.h,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/parse/mp3parse.h,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/ctrlbar.c,
	plugins/mpeg1/mpeg_play/ctrlbar.h,
	plugins/mpeg1/mpeg_play/decoders.c,
	plugins/mpeg1/mpeg_play/decoders.h,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/motionvector.c,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/util.c, plugins/mpeg1/mpeg_play/util.h,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg1/parse/Makefile.am, plugins/mpeg1/parse/README,
	plugins/mpeg1/parse/getbits.c, plugins/mpeg1/parse/getbits.h,
	plugins/mpeg1/parse/mpeg1parse.c, plugins/mpeg1/parse/mpeg1parse.h,
	plugins/mpeg1video/parse/mp1videoparse.c, test/mp3play.c: Unified
	getbits handling. I currently have an inline integer
	implementation.

2000-04-13 22:59  wtay

	* Makefile.am, configure.in, gst/gstclock.c,
	plugins/capture/v4l/grab-v4l.c, test/Makefile.am,
	test/mpeg2parse.c, test/videotest.c: Makefile.am fixes

2000-04-09 22:38  wtay

	* gst/: gstclock.c, gstclock.h: A poor mans clock...

2000-04-09 22:36  wtay

	* gst/Makefile.am, gst/gstelement.c,
	gst/elements/gstasyncdisksrc.c, gst/elements/gstaudiosink.c,
	gst/elements/gstaudiosink.h, gst/elements/gstqueue.c,
	plugins/capture/v4l/gstv4lsrc.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/proto.h, plugins/mpeg1/mpeg_play/util.c,
	plugins/mpeg1/mpeg_play/video.c, test/mp1parse.c: Added MMX
	optimized yuv2rgb (AlienSong now plays back at only 6% CPU) Added
	mpeg1 picture skipping and fixed a buffer overflow.  Added a system
	clock. The audiosink can now adjust the clock.	Fixed incorrect
	behaviour on 8, 15, 16, 24 and 32 bits displays.  Cleanup of the
	videosink, it now uses the color conversion library when needed.

2000-04-02 22:38  wtay

	* libs/riff/: gstriffencode.c, gstriffparse.c, gstriffutil.c: The
	new riff parser and encoder

2000-04-02 22:36  wtay

	* configure.in, libs/Makefile.am, libs/riff/Makefile.am,
	libs/riff/gstriff.h, plugins/avi/gstaviencoder.c,
	plugins/avi/gstaviencoder.h, plugins/avi/gstparseavi.c,
	plugins/avi/gstparseavi.h, plugins/capture/v4l/grab-v4l.c,
	plugins/capture/v4l/gstv4lsrc.c, plugins/capture/v4l/gstv4lsrc.h,
	plugins/jpeg/Makefile.am, plugins/jpeg/gstjpegdec.c,
	plugins/jpeg/gstjpegdec.h, plugins/jpeg/gstjpegenc.c,
	plugins/jpeg/gstjpegenc.h, plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	test/Makefile.am, test/aviparse.c, test/vidcapture.c: Added a
	colorspace library and removed yuv2rgb conversion from the
	videosink.  The aviencoder should now more or less work.

2000-03-27 20:53  wtay

	* docs/Makefile.am, docs/gst/Makefile.am,
	docs/gst/gstreamer-decl.txt, docs/gst/gstreamer-docs.sgml,
	docs/gst/gstreamer-sections.txt, docs/gst/gstreamer.hierarchy,
	docs/gst/gstreamer.types, docs/gst/tmpl/audioraw.sgml,
	docs/gst/tmpl/cothreads.sgml, docs/gst/tmpl/gst.sgml,
	docs/gst/tmpl/gstasyncdisksrc.sgml,
	docs/gst/tmpl/gstaudiosink.sgml, docs/gst/tmpl/gstaudiosrc.sgml,
	docs/gst/tmpl/gstbin.sgml, docs/gst/tmpl/gstbuffer.sgml,
	docs/gst/tmpl/gstconnection.sgml, docs/gst/tmpl/gstdisksrc.sgml,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstesdsink.sgml,
	docs/gst/tmpl/gstfakesink.sgml, docs/gst/tmpl/gstfakesrc.sgml,
	docs/gst/tmpl/gstfdsink.sgml, docs/gst/tmpl/gstfdsrc.sgml,
	docs/gst/tmpl/gstfilter.sgml, docs/gst/tmpl/gsthttpsrc.sgml,
	docs/gst/tmpl/gstidentity.sgml, docs/gst/tmpl/gstlog.sgml,
	docs/gst/tmpl/gstmeta.sgml, docs/gst/tmpl/gstobject.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstpipeline.sgml,
	docs/gst/tmpl/gstplugin.sgml, docs/gst/tmpl/gstqueue.sgml,
	docs/gst/tmpl/gstreamer-unused.sgml, docs/gst/tmpl/gstsinesrc.sgml,
	docs/gst/tmpl/gstsink.sgml, docs/gst/tmpl/gstsrc.sgml,
	docs/gst/tmpl/gsttee.sgml, docs/gst/tmpl/gstthread.sgml,
	docs/gst/tmpl/gsttrace.sgml, docs/gst/tmpl/gsttype.sgml,
	docs/gst/tmpl/gstutils.sgml, docs/gst/tmpl/gstxml.sgml,
	docs/gst/tmpl/plugin.sgml, docs/gst/tmpl/spectrum.sgml,
	docs/gst/tmpl/videoraw.sgml, gst/gstbin.c, gst/gstbuffer.c,
	gst/gstbuffer.h, gst/gstelement.c, gst/gstelement.h,
	gst/gstfilter.h, gst/gstobject.c, gst/gstobject.h, gst/gstpad.c,
	gst/gstpad.h, gst/gstplugin.c, gst/gstsink.c, gst/gstsink.h,
	gst/gstsrc.c, gst/gstsrc.h, gst/gsttee.c, gst/gstthread.c,
	gst/gstxml.c, gst/elements/gstasyncdisksrc.h,
	gst/elements/gstaudiosink.c, gst/elements/gstaudiosink.h,
	gst/elements/gstaudiosrc.c, gst/elements/gstaudiosrc.h,
	gst/elements/gstdisksrc.c, gst/elements/gstesdsink.h,
	gst/elements/gstfakesink.c, gst/elements/gstfakesink.h,
	gst/elements/gstfakesrc.c, gst/elements/gstfakesrc.h,
	gst/elements/gstfdsink.c, gst/elements/gstfdsink.h,
	gst/elements/gstfdsrc.c, gst/elements/gstidentity.c,
	gst/elements/gstidentity.h, gst/elements/gstqueue.c,
	gst/elements/gstqueue.h, gst/elements/gstsinesrc.c,
	gst/elements/gstsinesrc.h, gst/elements/gsttypefind.h,
	plugins/avi/Makefile.am, plugins/avi/gstaviencoder.c,
	plugins/avi/gstaviencoder.h, plugins/avi/gstparseavi.c,
	plugins/avi/gstparseavi.h, plugins/capture/v4l/Makefile.am,
	plugins/capture/v4l/grab-v4l.c, plugins/capture/v4l/gstv4lsrc.c,
	plugins/capture/v4l/gstv4lsrc.h, plugins/jpeg/Makefile.am,
	plugins/jpeg/gstjpeg.c, plugins/jpeg/gstjpegdec.c,
	plugins/jpeg/gstjpegdec.h, plugins/jpeg/gstjpegenc.c,
	plugins/jpeg/gstjpegenc.h, plugins/mpeg1/parse/mpeg1parse.c,
	test/Makefile.am, test/vidcapture.c: Documentation updates. All
	standard library objects and standard elements are documented.
	Modified some of the elements to more accuratly report about their
	arguments so the documentation builds more reasonable output. 
	Added aviencoder and jpegencoder elements (not working yet)

2000-03-22 21:18  wtay

	* configure.in, gst/gstpad.c, gst/types/gsttypes.c,
	libs/riff/Makefile.am, libs/riff/gstriff.c, libs/riff/gstriff.h,
	plugins/Makefile.am, plugins/avi/Makefile.am,
	plugins/avi/gstparseavi.c, plugins/avi/gstparseavi.h,
	plugins/jpeg/.cvsignore, plugins/jpeg/Makefile.am,
	plugins/jpeg/gstjpeg.c, plugins/jpeg/gstjpeg.h: Added jpeg decoder.
	the avi decoder now configures the jpeg codec if an MJPG encoded
	avi is found. Fixed riff parsing. readded rgb_draw functions to the
	videosink. jpeglib is used to decode the jpeg image.

2000-03-21 20:06  omegahacker

	* plugins/avi/gstparseavi.c: removed second check on riff library,
	moved original to top so it fails out right away

2000-03-21 19:54  omegahacker

	* plugins/avi/gstparseavi.c: added load and check of libriff during
	plugin init

2000-03-21 19:54  omegahacker

	* gst/gstplugin.c: spelling fixes to gst_library_load()

2000-03-20 20:25  wtay

	* configure.in, gst/gstbuffer.c, gst/gstplugin.c, gst/gstplugin.h,
	gst/gstthread.c, gst/plugin.c, gst/plugin.h,
	gst/elements/gstaudiosink.c, gst/elements/gstqueue.c,
	libs/riff/gstriff.c, libs/riff/gstriff.h, plugins/avi/Makefile.am,
	plugins/avi/gstparseavi.c, plugins/avi/gstparseavi.h,
	test/aviparse.c, test/mp1parse.c, test/videotest.c: Implemented
	riff parsing as a library. The avi parser can play simple PCM
	encoded audio.	some minor cleanups.

2000-03-19 00:59  wtay

	* AUTHORS, configure.in, gst/gstplugin.c, libs/Makefile.am,
	libs/riff/Makefile.am, libs/riff/gstriff.c, libs/riff/gstriff.h,
	plugins/Makefile.am, plugins/avi/.cvsignore,
	plugins/avi/Makefile.am, plugins/avi/gstparseavi.c,
	plugins/avi/gstparseavi.h, plugins/wav/Makefile.am,
	plugins/wav/gstparsewav.c, test/.cvsignore, test/videotest.c: Added
	the riff code into a seperate library in /libs dir. The plugin
	loader also checks the /libs path.  The avi parser now uses the
	riff library.  WAV is broken.

2000-03-13 22:17  wtay

	* test/aviparse.c: A non functional avi parser.

2000-03-13 22:13  wtay

	* configure.in, gst/gst.c, gst/gstbuffer.h,
	gst/gstelementfactory.c, gst/gstmeta.c, gst/gstplugin.h,
	gst/gstthread.c, gst/gsttype.h, gst/types/gsttypes.c,
	plugins/Makefile.am, plugins/au/gstparseau.c,
	plugins/capture/v4l/gstv4lsrc.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c, test/Makefile.am,
	test/videotest.c: Various cleanups. Moved the overlay code to a
	specialized widget.  One error I cannot seem to fix: switching
	desktops does not disable the overlay.

2000-03-05 21:48  wtay

	* plugins/capture/v4l/: grab-v4l.c, gstv4lsrc.c: Reworked overlay,
	much better but still not perfect.

2000-03-03 22:13  wtay

	* plugins/capture/v4l/grab-v4l.c, plugins/capture/v4l/grab.h,
	plugins/capture/v4l/gstv4lsrc.c, plugins/capture/v4l/gstv4lsrc.h,
	test/Makefile.am, test/videotest.c: Added overlay and DGA
	capability for the videosink. Not really good but functional.

2000-02-27 23:18  wtay

	* gst/Makefile.am, gst/cothreads.c, gst/gstbin.c, gst/gstbuffer.c,
	gst/gstconnection.c, gst/gstelement.c, gst/gstmeta.c,
	gst/gstobject.c, gst/gstpad.c, gst/gstpad.h, gst/gstpipeline.c,
	gst/gstplugin.c, gst/gsttee.c, gst/gstthread.c, gst/gsttype.c,
	gst/elements/Makefile.am, gst/elements/gstasyncdisksrc.c,
	gst/elements/gstaudiosink.c, gst/elements/gstaudiosrc.c,
	gst/elements/gstdisksrc.c, gst/elements/gstfakesink.c,
	gst/elements/gstfakesrc.c, gst/elements/gstfdsink.c,
	gst/elements/gstfdsrc.c, gst/elements/gsthttpsrc.c,
	gst/elements/gstidentity.c, gst/elements/gstqueue.c,
	gst/elements/gstsinesrc.c, gst/types/Makefile.am,
	plugins/capture/v4l/Makefile.am, plugins/capture/v4l/grab-v4l.c,
	plugins/capture/v4l/grab.h, plugins/capture/v4l/gstv4lsrc.c,
	plugins/capture/v4l/gstv4lsrc.h,
	plugins/mp3decode/mpg123/Makefile.am,
	plugins/mp3decode/mpg123/common.c,
	plugins/mp3decode/mpg123/decode_i386.c,
	plugins/mp3decode/mpg123/decode_i486.c,
	plugins/mp3decode/mpg123/getbits.c,
	plugins/mp3decode/mpg123/getbits.h,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/mpg123/layer1.c,
	plugins/mp3decode/mpg123/layer2.c,
	plugins/mp3decode/mpg123/layer3.c,
	plugins/mp3decode/mpg123/mpg123.c,
	plugins/mp3decode/mpg123/mpg123.h, plugins/mp3decode/mpg123/test.c,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/proto.h, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/parse/Makefile.am, plugins/mpeg1/parse/getbits.c,
	plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/Makefile.am,
	plugins/mpeg1video/parse/mp1videoparse.c, test/videotest.c: This is
	a rather large patch. Switched on -Wall compiler flag and fixed the
	warnings.  Made the Video for Linux more like it should be.

2000-02-26 18:55  wtay

	* gst/gstpad.c, gst/gstpad.h, plugins/capture/v4l/gstv4lsrc.c,
	test/mp1parse.c, test/videotest.c: Added a pull function in the
	gstpad. Modified the videosink to implement the pull. This function
	allows a source element to request a buffer from the destination.
	This is much more efficient because the videosink can then pass a
	buffer with SHM to the element, which does not require an aditional
	memcpy.  removed scaling from the videosink. I need something
	better.

2000-02-25 23:19  wtay

	* test/videotest.c: test code for the Video for linux source

2000-02-25 23:18  wtay

	* configure.in, plugins/Makefile.am, plugins/capture/Makefile.am,
	plugins/capture/v4l/Makefile.am, plugins/capture/v4l/gstv4lsrc.c,
	plugins/capture/v4l/gstv4lsrc.h, test/mp1parse.c: Added a Video 4
	linux source. Not generic at all and may not work on any other
	system but mine.

2000-02-24 20:56  wtay

	* gst/gstbuffer.c, plugins/mp3decode/mpg123/Makefile.am,
	plugins/mp3decode/parse/Makefile.am,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mp3decode/parse/mp3parse.h,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/idct_block_mmx.S,
	plugins/mpeg1/mpeg_play/jrevdct.c,
	plugins/mpeg1/mpeg_play/mmx_idct.c,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/util.c, plugins/mpeg1/mpeg_play/util.h,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg1video/parse/mp1videoparse.c, test/mp1parse.c: Speedup
	in mpg123 parsing. speedup in mp1videoparse. rearanged the MPEG
	player got rid of some memcpy. bit handling changes.  MMX code for
	the IDCT and motion compensation in mpeg_play.	Almost as fast as
	the commercial mpeg player mtv, but with a much better video
	quality :-)

2000-02-20 16:19  wtay

	* configure.in, plugins/mpeg1/mpeg_play/gstmpeg_play.c: Added
	GdkPixbuf support and scaling (sloww...)

2000-02-20 12:58  wtay

	* plugins/mpeg1/mpeg_play/: 16bit.c, Makefile.am, dither.h,
	gdith.c, gstmpeg_play.c, gstmpeg_play.h, proto.h, util.h, video.c,
	video.h: General cleanup and speedup. removed color conversion out
	of MPEG decoder.

2000-02-19 13:37  wtay

	* plugins/mpeg1/mpeg_play/: gstmpeg_play.c, gstmpeg_play.h,
	video.c, video.h: Added timestamps for video buffers. The videosink
	syncs to the timestamps.  Added a buffer with finished frames for
	the MPEG1 decoder.

2000-02-19 10:50  wtay

	* gst/elements/Makefile.am, gst/elements/gstqueue.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c, test/mp1parse.c: Fixed the
	lockup by not calling any gtk functions in the main thread.  This
	is not good.

2000-02-18 23:48  wtay

	* gst/elements/gstqueue.c, test/mp1parse.c: Set the default buffer
	size to 1 to avoid the strange lockups...

2000-02-18 23:07  wtay

	* plugins/mpeg1/mpeg_play/16bit.c, plugins/mpeg1/mpeg_play/2x2.c,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/descrip.mms,
	plugins/mpeg1/mpeg_play/dither.h, plugins/mpeg1/mpeg_play/fs2.c,
	plugins/mpeg1/mpeg_play/fs2.h, plugins/mpeg1/mpeg_play/fs2fast.c,
	plugins/mpeg1/mpeg_play/fs4.c, plugins/mpeg1/mpeg_play/fs4.h,
	plugins/mpeg1/mpeg_play/gdith.c, plugins/mpeg1/mpeg_play/gray.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/hybrid.c,
	plugins/mpeg1/mpeg_play/hybriderr.c,
	plugins/mpeg1/mpeg_play/index.bt,
	plugins/mpeg1/mpeg_play/mb_ordered.c,
	plugins/mpeg1/mpeg_play/mono.c, plugins/mpeg1/mpeg_play/ordered.c,
	plugins/mpeg1/mpeg_play/ordered2.c,
	plugins/mpeg1/mpeg_play/proto.h, plugins/mpeg1/mpeg_play/util32.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpeg_play/video.h,
	plugins/visualization/smoothwave/smoothwave.c, test/Makefile.am,
	test/mp1parse.c: The first functional video sink... Removed all of
	the video stuff from the MPEG video decoder. Fixed a bug in
	smoothwave.  The MPEG video decoder still does the YUV->RGB
	conversion.

2000-02-17 22:50  wtay

	* configure.in, plugins/Makefile.am,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/gdith.c, plugins/mpeg1/mpeg_play/main.c,
	plugins/mpeg1/mpeg_play/mmx_idct.c,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/proto.h,
	plugins/mpeg1/mpeg_play/readfile.c, plugins/mpeg1/mpeg_play/util.c,
	plugins/mpeg1/mpeg_play/util.h, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpeg_play/video.h: MPEG1 cleanup. Added first (non
	functional) video sink.

2000-02-16 23:27  wtay

	* gst/gstbuffer.c, gst/gstplugin.c, gst/gsttype.c,
	gst/elements/gstqueue.c, plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mpeg1/parse/mpeg1parse.c, test/mp1parse.c, test/mp3play.c:
	Fixed memory leak in queue.

2000-02-16 16:44  wtay

	* plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/parse/mpeg1parse.c, test/mp1parse.c: Cleanup, fixed
	some bugs in the parsers, fixed memory leak (not all of them yet)

2000-02-15 20:14  wtay

	* gst/elements/gstqueue.c, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpeg_play/video.h, plugins/mpeg1/parse/mpeg1parse.c:
	Fixed (hopfully) the last bug in MPEG1 video player. A state bug
	caused some I-frames to be skipped.

2000-02-15 00:32  omegahacker

	* editor/.cvsignore, test/.cvsignore: updated .cvsignores

2000-02-14 23:21  wtay

	* plugins/: mpeg1/mpeg_play/parseblock.c, mpeg1/mpeg_play/util.c,
	mpeg1/mpeg_play/util.h, mpeg1/mpeg_play/video.c,
	mpeg1video/parse/mp1videoparse.c: Some cleanups+speedup. Still
	looking for a bug...

2000-02-14 20:42  wtay

	* plugins/mp3decode/parse/mp3parse.c: Fixed a nasty mp3 parse bug.
	Some frames were skipped if the header was on partial frames. This
	fixes the strange invalid sync errors.

2000-02-14 00:22  wtay

	* plugins/mpeg1video/parse/mp1videoparse.c: fixed state error in
	parsing.

2000-02-13 22:30  wtay

	* plugins/mpeg1video/parse/: mp1videoparse.c, mp1videoparse.h:
	cleaned up the parsing code a bit.

2000-02-13 15:20  wtay

	* gst/elements/gstqueue.c, plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/util.c, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpeg_play/video.h, plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1video/parse/mp1videoparse.c: Made queue default
	bigger.  fixed parsing errors in mp3parse mpeg1parse mp1videoparse:
	more than 2 zeros and a 1 is also a sync.  fixed MPEG1 video
	SKIP_PICTURE which caused a segfault. AlienSong now plays as it
	should do. Skips are currently ignored and give some error on the
	console, need to clean this up.

2000-02-13 13:43  wtay

	* gst/elements/gstqueue.c, gst/elements/gstqueue.h,
	plugins/mpeg1/mpeg_play/gdith.c: Fixed the queue length (fixed
	length 5 for now).  fixed mpeg1 video rate control.  AlienSong
	segfaults sometimes. My other movies don't....

2000-02-13 03:19  wtay

	* plugins/mpeg1video/parse/mp1videoparse.c: Fixed queueing for
	incomplede slices.

2000-02-12 23:09  omegahacker

	* test/mp1parse.c: Rearranged and updated mp1parse.  Indentation is
	sane again (what editor are you using, Wim?), and it now uses
	threads.  Playback is clean (at least, audio and video are running
	smoothly.  Video is still a little choppy on my test stream (first
	1MB from disk two of Mulan VCD), and it's still wildly out of sync,
	but it's looking VERY COOL.

2000-02-12 23:08  omegahacker

	* gst/gstbin.c: Changed the way state is dealt with when a child is
	added to the bin.  The note states that the COMPLETE state should
	probably reflect nothing more than whether or not there is a child
	in the bin, not whether or not all children are COMPLETE.  I need
	to write out a few scenarios for complex pipeline manipulations to
	figure out how all the states should interact.	The idea is to
	maintain the ability to dynamically recofigure the pipeline.

2000-02-12 12:20  wtay

	* plugins/mpeg1/mpeg_play/16bit.c,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/ctrlbar.c, plugins/mpeg1/mpeg_play/gdith.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.h,
	plugins/mpeg1/mpeg_play/main.c,
	plugins/mpeg1/mpeg_play/mb_ordered.c,
	plugins/mpeg1/mpeg_play/motionvector.c,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/proto.h,
	plugins/mpeg1/mpeg_play/readfile.c, plugins/mpeg1/mpeg_play/util.c,
	plugins/mpeg1/mpeg_play/util32.c, plugins/mpeg1/mpeg_play/video.c,
	plugins/mpeg1/mpeg_play/video.h,
	plugins/mpeg1video/parse/mp1videoparse.c, test/mp1parse.c: The
	first functional video MPEG1 decoder. The decoder still opens a
	window to show the video. This is not optimised at all. Some
	glitches and crashes due to bugs in mp1videoparse.c. I need to
	queue incomplete slices in mp1videoparse before sending them to the
	decoder.  use test/mp1parse on your favorite video to test. No
	audio/video sync, no QoS at all.

2000-02-10 17:02  wtay

	* gst/types/gsttypes.c, plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/mpeg_play/gstmpeg_play.c,
	plugins/mpeg1video/parse/mp1videoparse.c, test/mp1parse.c:
	Optimisations to mp3decode and mp3parse (subbuffers) mp1videoparse
	now correctly pushes buffers in complete chuncks.

2000-02-08 22:36  wtay

	* configure.in, gst/types/gsttypes.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1video/Makefile.am,
	plugins/mpeg1video/parse/Makefile.am,
	plugins/mpeg1video/parse/README,
	plugins/mpeg1video/parse/mp1videoparse.c,
	plugins/mpeg1video/parse/mp1videoparse.h, test/mp1parse.c: Added
	MPEG1 video parser.

2000-02-07 19:29  wtay

	* plugins/mpeg1/mpeg_play/: Makefile.am, gdith.c: Some more files.

2000-02-07 19:22  wtay

	* plugins/mpeg1/mpeg_play/: Makefile.am, gstmpeg_play.c,
	gstmpeg_play.h: [no log message]

2000-02-07 19:04  wtay

	* configure.in, plugins/mp3decode/mpg123/Makefile.am,
	plugins/mp3decode/mpg123/decode_i386.c,
	plugins/mp3decode/mpg123/layer3.c, plugins/mpeg1/Makefile.am,
	plugins/mpeg1/mpeg_play/16bit.c, plugins/mpeg1/mpeg_play/2x2.c,
	plugins/mpeg1/mpeg_play/ANNOUNCE, plugins/mpeg1/mpeg_play/BUGS,
	plugins/mpeg1/mpeg_play/CHANGES, plugins/mpeg1/mpeg_play/COPYRIGHT,
	plugins/mpeg1/mpeg_play/INSTALL,
	plugins/mpeg1/mpeg_play/Makefile.am,
	plugins/mpeg1/mpeg_play/README,
	plugins/mpeg1/mpeg_play/README.jpeg, plugins/mpeg1/mpeg_play/TODO,
	plugins/mpeg1/mpeg_play/VERSION, plugins/mpeg1/mpeg_play/ctrlbar.c,
	plugins/mpeg1/mpeg_play/ctrlbar.h,
	plugins/mpeg1/mpeg_play/decoders.c,
	plugins/mpeg1/mpeg_play/decoders.h,
	plugins/mpeg1/mpeg_play/descrip.mms,
	plugins/mpeg1/mpeg_play/dither.h,
	plugins/mpeg1/mpeg_play/floatdct.c, plugins/mpeg1/mpeg_play/fs2.c,
	plugins/mpeg1/mpeg_play/fs2.h, plugins/mpeg1/mpeg_play/fs2fast.c,
	plugins/mpeg1/mpeg_play/fs4.c, plugins/mpeg1/mpeg_play/fs4.h,
	plugins/mpeg1/mpeg_play/gray.c, plugins/mpeg1/mpeg_play/hybrid.c,
	plugins/mpeg1/mpeg_play/hybriderr.c,
	plugins/mpeg1/mpeg_play/index.bt,
	plugins/mpeg1/mpeg_play/jrevdct.c, plugins/mpeg1/mpeg_play/main.c,
	plugins/mpeg1/mpeg_play/mb_ordered.c,
	plugins/mpeg1/mpeg_play/mono.c,
	plugins/mpeg1/mpeg_play/motionvector.c,
	plugins/mpeg1/mpeg_play/ordered.c,
	plugins/mpeg1/mpeg_play/ordered2.c,
	plugins/mpeg1/mpeg_play/parseblock.c,
	plugins/mpeg1/mpeg_play/proto.h,
	plugins/mpeg1/mpeg_play/readfile.c, plugins/mpeg1/mpeg_play/util.c,
	plugins/mpeg1/mpeg_play/util.h, plugins/mpeg1/mpeg_play/util32.c,
	plugins/mpeg1/mpeg_play/video.c, plugins/mpeg1/mpeg_play/video.h:
	Added compiler optimistaion flags to mpg123. reverted to old
	WRITE_SAMPLE which was much faster.  Added mpeg_play, the MPEG1
	video player. It does not work yet.

2000-02-06 22:04  wtay

	* gst/gstmeta.c, plugins/mp3decode/mpg123/common.c,
	plugins/mp3decode/mpg123/gstmpg123.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/parse/mpeg1parse.c: Added metadata to mpg123 buffers.
	removed (disabeled) debug info.

2000-02-06 18:50  wtay

	* plugins/mp3decode/mpg123/common.c,
	plugins/mp3decode/parse/mp3parse.c,
	plugins/mpeg1/parse/mpeg1parse.c, test/mp1parse.c: Fixed the mpeg 1
	parser. It can now be used to playback the audio stream of an MPEG1
	movie (check out test/mp1parse.c).

2000-02-06 12:33  wtay

	* plugins/mpeg1/parse/mpeg1parse.c: Found mpeg1 parsing bug. My
	videos seem to parse OK.

2000-02-06 01:52  wtay

	* plugins/mpeg1/parse/mpeg1parse.c, test/mp1parse.c: cleanup. Still
	not working...

2000-02-06 00:56  wtay

	* test/mp1parse.c: The mpeg1 parser test program.

2000-02-06 00:55  wtay

	* plugins/mpeg1/parse/mpeg1parse.c,
	plugins/mpeg1/parse/mpeg1parse.h, test/Makefile.am: Some changes to
	the mpeg 1 parser. Does not work yet.

2000-02-05 16:08  wtay

	* plugins/mp3decode/mpg123/: Makefile.am, decode_i386.c,
	decode_i486.c, decode_i586.s, layer3.c, mpg123.c, mpg123.h: Added
	486 optimisation. Pentium optimisation added, but does not work
	yet.

2000-02-05 14:37  wtay

	* plugins/mp3decode/mpg123/: common.c, getbits.c, getbits.h,
	layer3.c, mpg123.c, mpg123.h: Fixed a buffer problem with Layer 3.
	moved the buffer handling to common.c, getbits should not know
	about that.

2000-02-05 01:58  wtay

	* plugins/mp3decode/parse/mp3parse.c: Not worth much: fixed a
	memory leak.

2000-02-05 01:40  wtay

	* plugins/mp3decode/: mpg123/gstmpg123.c, parse/mp3parse.c: Fixed
	Layer 2 & 3 parsing. All my MPEGs play now with gstreamer !!!

2000-02-05 01:20  wtay

	* plugins/mp3decode/parse/mp3parse.c, test/a.c, test/mp3parse.c,
	test/mp3play.c: Fixed a nasty bug in mp3parse (partial buffer state
	remained) Added eos check for the test programs to stop them from
	allocating all of your memory (had to use alt-sysreq-k a few times
	:-( ).	MPEG layer 1 plays fine now with mp3play.

2000-02-04 23:27  wtay

	* plugins/mp3decode/mpg123/: getbits.c, test.c: Tested with layer 1
	& 2, no audible errors.  Fixed cracks and pops in Layer 3.  Still a
	bit slow, though...

2000-02-04 22:06  wtay

	* plugins/mp3decode/mpg123/: common.c, getbits.c, getbits.h,
	layer3.c, mpg123.c, mpg123.h, test.c: Attempt to get layer3
	working. Tried with the test program included.	Still some errors
	and clicks sometime, but you can hear something.  Double buffering
	is now used (like mpg123). Can somebody test this on a layer 1 or 2
	stream (I have none) and together with the mp3parse?

2000-02-04 21:49  omegahacker

	* plugins/mp3decode/parse/mp3parse.c: Fixes to the bfp calculation,
	as well as some other stuff.

2000-02-04 02:25  richardb

	* configure.in, gst/gstelement.c, gst/gstplugin.c,
	plugins/mp3decode/mpg123/mpg123.c, plugins/mp3decode/mpg123/test.c:
	Compile a test program to ensure that we have working atomic
	resource counting.
	
	A few small changes (include headers, fix a cast) to stop compiler
	warnings.

2000-02-02 06:26  omegahacker

	* configure.in, docs/Makefile.am, docs/gst/Makefile.am,
	docs/gst/gstreamer-decl.txt, docs/gst/gstreamer-sections.txt,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstpipeline.sgml,
	gst/gst.c, gst/gstelement.c, gst/gstelement.h, gst/gstobject.c,
	gst/gstpipeline.c, plugins/mp3decode/xing/libxing/.cvsignore: More
	documentation changes, a couple configure.in and Makefile.am fixes.

2000-02-01 20:35  wtay

	* configure.in, gst/elements/Makefile.am,
	plugins/effects/volume/volume.c: Fixed lowercase PLUGINS_USE_SRCDIR
	which made running test apps fail.  Added GHTTP_LIBS to the
	libraries.  commented out mm_support() call, wich is not working
	yet and causes errors.

2000-02-01 19:40  wtay

	* configure.in, docs/gst/Makefile.am,
	plugins/effects/volume/Makefile.am, plugins/rtjpeg/RTjpeg.c,
	plugins/rtjpeg/RTjpeg.h: Try to compile a little mmx program, set
	the default value of HAVE_LIBMMX.  some typos fixed. Changed
	include path for volume.c. RTjpeg uses mmx.h

2000-02-01 09:16  omegahacker

	* configure.in, docs/Makefile.am, docs/gst/.cvsignore,
	docs/gst/Makefile.am, docs/gst/gstreamer-decl.txt,
	docs/gst/gstreamer-docs.sgml, docs/gst/gstreamer-sections.txt,
	docs/gst/gstreamer.hierarchy, docs/gst/gstreamer.types,
	docs/gst/tmpl/.cvsignore, docs/gst/tmpl/gst.sgml,
	docs/gst/tmpl/gstbin.sgml, docs/gst/tmpl/gstbuffer.sgml,
	docs/gst/tmpl/gstconnection.sgml, docs/gst/tmpl/gstdisksrc.sgml,
	docs/gst/tmpl/gstelement.sgml, docs/gst/tmpl/gstfilter.sgml,
	docs/gst/tmpl/gstmeta.sgml, docs/gst/tmpl/gstobject.sgml,
	docs/gst/tmpl/gstpad.sgml, docs/gst/tmpl/gstpipeline.sgml,
	docs/gst/tmpl/gstplugin.sgml, docs/gst/tmpl/gstqueue.sgml,
	docs/gst/tmpl/gstsink.sgml, docs/gst/tmpl/gstsrc.sgml,
	docs/gst/tmpl/gsttee.sgml, docs/gst/tmpl/gstthread.sgml,
	docs/gst/tmpl/gsttrace.sgml, docs/gst/tmpl/gsttype.sgml,
	docs/gst/tmpl/gstutils.sgml, docs/gst/tmpl/gstxml.sgml,
	docs/gst/tmpl/plugin.sgml: Re- set up the gtk-doc system.  I'd
	managed to mutilate it a while back, but now it's fixed.  I'll put
	a copy of the HTML output somewhere on the website tonight.
	
	In order to actually generate the docs, you'll have to install all
	the DocBook tools, as well as gtk-doc from GNOME cvs.  (see
	http://developer.gnome.org/arch/doc/tools.html)
	
	Notes (I'll codify these some day):
	
	- Don't believe the Gnome page, always edit the SOURCES when
	documenting a given function, never the tmpl file.  - I'll be
	re-arranging things a lot, but gtk-doc is smart enough to merge any
	changes to the tmpl file.  However, gtk-doc's merge and CVS's diff
	are two entirely separate animals.  We should probably have a
	virtual mutex on the entire docs/gst/ directory, over and above
	what CVS does.	- I'm going to try to end up with a book set
	(docbook terms), where docs/gst/ is only one book.  There'd be
	another called docs/manual/, and another docs/plugins/, etc.  If
	you have any comments as to how these should be done,
	gstreamer-devel is the place.

2000-02-01 04:10  richardb

	* acconfig.h, config.h.in, configure.in, gst/gstobject.c,
	gst/elements/Makefile.am, gst/elements/gstelements.c,
	plugins/mp3decode/xing/libxing/ltmain.sh: Tidy up of configure
	script.  Make libghttp detection work at all.  Make library
	configuration specifiable on configure commandline.  Make detection
	of atomic resource stuff cope with 2.0 linux kernels.  Fix typo
	(HAVE_ATOMIC_T for HAVE_ATOMIC_H).  Remove generated ltmain.sh file
	from mp3decode.

2000-01-31 22:53  wtay

	* include/mmx.h, plugins/rtjpeg/Makefile.am,
	plugins/rtjpeg/RTjpeg.c: Added general MMX macros.

2000-01-31 17:29  wtay

	* plugins/rtjpeg/: RTjpeg.c, RTjpeg.h: Added MMX optimised DCT and
	IDCT for RTjpeg. It still doesn't do anything.	This version also
	has optimised versions for 422 and 420 YUV (de)compression.  This
	version is not compatible with the regular RTjpeg due to
	optimisations using unrolled loops. Is *very* fast.

2000-01-31 09:43  omegahacker

	* Makefile.am, configure.in, gstreamer.spec.in, editor/Makefile.am,
	gst/elements/Makefile.am, gst/types/Makefile.am,
	plugins/mp3decode/mpg123/Makefile.am, test/bindings/Makefile.am,
	test/cothreads/Makefile.am, test/xml/Makefile.am: More incremental
	updates.  I can now successfully produce an rpm simply by typing
	`./autogen.sh;make rpm`.  This is good ;-)

2000-01-31 06:49  omegahacker

	* Makefile.am: gah, missed Makefile.am of all files...

2000-01-31 06:46  omegahacker

	* gstreamer-config.in, gstreamer.m4, gstreamer.spec.in,
	plugins/mp3decode/mpg123/.cvsignore,
	plugins/mp3decode/xing/libxing/Makefile.am,
	test/bindings/.cvsignore, test/cothreads/.cvsignore,
	editor/Makefile.am, gst/ROADMAP, plugins/effects/stereo/README,
	test/Makefile.am, test/xml/README: A bunch more changes to clean up
	build/`make dist` issues, as well as a spec file, -config file,
	.m4, etc.  Next step is to build an RPM of this mess.

2000-01-31 05:55  omegahacker

	* .cvsignore, acconfig.h, config.h.in, configure.in,
	plugins/Makefile.am, plugins/dvdsrc/Makefile.am,
	plugins/mp3decode/mpg123/Makefile.am, test/Makefile.am,
	test/cothreads/Makefile.am, test/xml/Makefile.am: Various fixes
	that collectively allow `make dist` to work.

2000-01-31 04:22  omegahacker

	* .cvsignore: uh, forgot to do the root .cvsignore...

2000-01-31 04:20  omegahacker

	* plugins/mp3decode/Makefile.am: Fixed SUBDIRS stuff so `make dist`
	works cleanly.	Here's the trick: if DIST_SUBDIRS exists in the
	Makefile.am, that's used as the list of things to include in the
	distribution, regardless of whether or not something is included in
	SUBDIRS due to conditional stuff.

2000-01-31 03:36  omegahacker

	* docs/.cvsignore, editor/.cvsignore, gst/.cvsignore,
	gst/elements/.cvsignore, gst/types/.cvsignore,
	plugins/au/.cvsignore, plugins/effects/.cvsignore,
	plugins/effects/stereo/.cvsignore,
	plugins/effects/volume/.cvsignore, plugins/mp3decode/.cvsignore,
	plugins/mp3decode/mpg123/.cvsignore,
	plugins/mp3decode/parse/.cvsignore,
	plugins/mp3decode/xa/.cvsignore, plugins/mp3decode/xing/.cvsignore,
	plugins/mp3decode/xing/libxing/.cvsignore,
	plugins/visualization/spectrum/.cvsignore,
	plugins/visualization/vumeter/.cvsignore, plugins/wav/.cvsignore,
	plugins/.cvsignore, plugins/cobin/.cvsignore,
	plugins/dvdsrc/.cvsignore, plugins/mpeg1/.cvsignore,
	plugins/mpeg1/parse/.cvsignore, plugins/mpeg2/.cvsignore,
	plugins/mpeg2/ac3dec/.cvsignore, plugins/mpeg2/ac3parse/.cvsignore,
	plugins/mpeg2/parse/.cvsignore, plugins/rtjpeg/.cvsignore,
	plugins/vcdsrc/.cvsignore, plugins/visualization/.cvsignore,
	plugins/visualization/smoothwave/.cvsignore,
	plugins/visualization/synaesthesia/.cvsignore, test/.cvsignore,
	test/bindings/.cvsignore, test/cothreads/.cvsignore,
	test/xml/.cvsignore, tools/.cvsignore: OK, I think I've got all the
	.cvsignore stuff taken care of, though we'll want to fine-tune
	things as we go, of course.  Most of them are the same, with some
	exceptions for directories that produce executables (those are
	listed by name after the standard ones and a newline for
	separation).

2000-01-31 03:25  omegahacker

	* test/README: initial checkin

2000-01-31 03:22  omegahacker

	* test/xml/readreg.c: - added usage info - uses first arg as
	registry filename - any additional args are plugins to search for
	(no change but argv base) - cleaned up output with a spare \n

2000-01-31 03:02  omegahacker

	* configure.in, plugins/Makefile.am, plugins/rtjpeg/.cvsignore,
	plugins/rtjpeg/Makefile.am, plugins/rtjpeg/README,
	plugins/rtjpeg/RTjpeg.c, plugins/rtjpeg/RTjpeg.h,
	plugins/rtjpeg/rtjpeg.c, plugins/rtjpeg/rtjpegdec.c,
	plugins/rtjpeg/rtjpegdec.h, plugins/rtjpeg/rtjpegenc.c,
	plugins/rtjpeg/rtjpegenc.h: RTjpeg plugin with several elements. 
	It's currently a skeleton, doing no work at all.  Need to have a
	video display element, some kind of simulation source (read from
	.ppm, a la what I do at work to solve the exact same problem), raw
	video types, metadata structs, etc.
	
	The RTjpeg.[ch] code is taken from a just-downloaded copy from
	Justin's site, with some fixes (#include <asm/types.h> to get
	__u64,etc).  Once the aforementioned infrastructure is in place,
	the elements can actually be set up to do the encode/decode, and
	we'll have our first functioning video codec in place. ;-)

2000-01-31 01:24  omegahacker

	* gst/types/.cvsignore: .cvsignore for gst/types/, still testing
	loginfo script(s)

2000-01-31 01:11  omegahacker

	* gst/elements/.cvsignore: .cvsignore for gst/elements/, also
	testig loginfo script

2000-01-31 00:16  omegahacker

	* plugins/dvdsrc/.cvsignore: added .cvsignore for plugins/dvdsrc/,
	testing loginfo script

2000-01-31 00:04  omegahacker

	* plugins/.cvsignore: .cvsignore for plugins/, also testing loginfo
	script

2000-01-31 00:02  omegahacker

	* gst/.cvsignore: .cvsignore for gst/, also testing loginfo script

2000-01-30 22:50  wtay

	* acconfig.h, config.h.in, configure.in, editor/Makefile.am,
	gst/elements/Makefile.am, gst/types/Makefile.am,
	plugins/Makefile.am, plugins/mp3decode/Makefile.am,
	plugins/mp3decode/xing/Makefile.am,
	plugins/mp3decode/xing/libxing/ltmain.sh: Changed Makefiles to: 
	detect xaudio (check header xaudio/decoder.h)  detect mmx.h  detect
	CSS (check if css.c is in plugins/dvdsrc), need something better. 
	some LDFLAGS had *.la dependencies which failed for libtool
	
	The build is now 100% on my system.

2000-01-30 10:58  omegahacker

	* plugins/dvdsrc/: Makefile.am, dvd_udf.c, dvd_udf.h, dvdsrc.c,
	dvdsrc.h: initial checkin

2000-01-30 10:48  omegahacker

	* plugins/mp3decode/xing/libxing/: cdcts.s, cwin8s.s, cwins.s,
	mdcts.s, msiss.s, x86gas.s, x86intel.s: initial checkin

2000-01-30 10:44  omegahacker

	* docs/: Makefile.am, random/arch, random/buffers,
	random/coroutines, random/design, random/example,
	random/factoryinfo, random/gboolean, random/intro, random/metadata,
	random/mutability, random/padarch, random/sequence,
	random/state-transitions, random/states, random/states.old,
	random/types, random/vis-transform, random/walkthrough,
	slides/README, slides/abstract, slides/abstract.save,
	slides/outline, slides/slides: initial checkin

2000-01-30 10:39  omegahacker

	* plugins/mp3decode/xing/: Makefile.am, README, gstxing.c,
	gstxing.h: initial checkin

2000-01-30 10:17  omegahacker

	* plugins/mp3decode/xing/libxing/: AUTHORS, COPYING, ChangeLog,
	INSTALL, L3.h, Makefile.am, NEWS, README, acconfig.h, autogen.sh,
	cdct.c, config.h, config.h.in, configure.in, csbt.c, csbtL3.c,
	csbtb.c, cup.c, cupL1.c, cupini.c, cupl3.c, cwin.c, cwinb.c,
	cwinm.c, dec8.c, htable.h, hwin.c, icdct.c, install-sh, isbt.c,
	isbtb.c, itype.h, iup.c, iupL1.c, iupini.c, iwinQ.c, iwinbQ.c,
	iwinm.c, jdw.h, l3dq.c, l3init.c, ltmain.sh, mdct.c, mhead.c,
	mhead.h, missing, mkinstalldirs, msis.c, port.h, stamp-h, stamp.h,
	stamp.h.in, tableawd.h, towave.c, uph.c, upsf.c, wavep.c, wcvt.c,
	x86intel.c: initial checkin

2000-01-30 10:03  omegahacker

	* plugins/mp3decode/: Makefile.am, xa/Makefile.am, xa/README,
	xa/gstxa.c, xa/gstxa.h: initial checkin

2000-01-30 09:58  omegahacker

	* plugins/: effects/Makefile.am, visualization/Makefile.am: initial
	checkin

2000-01-30 09:54  omegahacker

	* tools/Makefile.am, tools/README, tools/launch.c,
	test/bindings/Makefile.am, test/bindings/dummy.c,
	test/bindings/dummy.h, test/bindings/test.c: initial checkin

2000-01-30 09:50  omegahacker

	* test/: Makefile.am, a.c, ac3parse.c, ac3play.c, ac3sync.c,
	args.c, basic.c, buffer.c, cobin.c, dvdcat.c, fake.c,
	gsttracedump.c, jitter.c, m.c, mcut.c, mem.c, mem.h, mp3.c,
	mp3parse.c, mp3play.c, mpeg2parse.c, mpg123.c, p.c, plugin.c,
	push.c, qtest.c, r.c, record.c, s.c, spectrum.c, states.c,
	teardown.c, typefind.c, types.c, w.c, wave.c,
	cothreads/Makefile.am, cothreads/cothreads.c,
	cothreads/cothreads.h, cothreads/looper.c, cothreads/looper.h,
	cothreads/object.c, cothreads/object.h, cothreads/simple.c,
	cothreads/test.c, xml/Makefile.am, xml/createreg.c, xml/readreg.c:
	initial checkin

2000-01-30 09:46  omegahacker

	* editor/: Makefile.am, editor.c, editor.glade,
	editorelement.glade, gsteditor.c, gsteditor.h, gsteditorbin.c,
	gsteditorcanvas.c, gsteditorconnection.c, gsteditorconnection.h,
	gsteditorcreate.c, gsteditorcreate.h, gsteditorelement.c,
	gsteditorpad.c, gsteditorpad.h, gstelementselect.c,
	gstelementselect.h: initial checkin

2000-01-30 09:22  omegahacker

	* plugins/: au/Makefile.am, au/gstparseau.c, au/gstparseau.h,
	cobin/Makefile.am, cobin/cobin.c, cobin/cobin.h,
	cobin/spindentity.c, cobin/spindentity.h,
	effects/stereo/Makefile.am, effects/stereo/stereo.c,
	effects/stereo/stereo.h, effects/volume/Makefile.am,
	effects/volume/volume.c, effects/volume/volume.h,
	mp3decode/mpg123/COPYING, mp3decode/mpg123/Makefile.am,
	mp3decode/mpg123/README, mp3decode/mpg123/common.c,
	mp3decode/mpg123/dct64.c, mp3decode/mpg123/dct64_i386.c,
	mp3decode/mpg123/dct64_i486.c, mp3decode/mpg123/decode.c,
	mp3decode/mpg123/decode_i386.c, mp3decode/mpg123/decode_i486.c,
	mp3decode/mpg123/gbtest.c, mp3decode/mpg123/getbits.c,
	mp3decode/mpg123/getbits.h, mp3decode/mpg123/gstmpg123.c,
	mp3decode/mpg123/gstmpg123.h, mp3decode/mpg123/huffman.h,
	mp3decode/mpg123/l2tables.h, mp3decode/mpg123/layer1.c,
	mp3decode/mpg123/layer2.c, mp3decode/mpg123/layer3.c,
	mp3decode/mpg123/letest.c, mp3decode/mpg123/mpg123.c,
	mp3decode/mpg123/mpg123.h, mp3decode/mpg123/tabinit.c,
	mp3decode/mpg123/test.c, mp3decode/parse/Makefile.am,
	mp3decode/parse/README, mp3decode/parse/mp3parse.c,
	mp3decode/parse/mp3parse.h, mpeg1/Makefile.am,
	mpeg1/parse/Makefile.am, mpeg1/parse/README, mpeg1/parse/getbits.c,
	mpeg1/parse/getbits.h, mpeg1/parse/mpeg1parse.c,
	mpeg1/parse/mpeg1parse.h, mpeg1/parse/notes, mpeg2/Makefile.am,
	mpeg2/ac3dec/Makefile.am, mpeg2/ac3dec/README, mpeg2/ac3dec/ac3.h,
	mpeg2/ac3dec/ac3dec.c, mpeg2/ac3dec/ac3dec.h,
	mpeg2/ac3dec/bit_allocate.c, mpeg2/ac3dec/bit_allocate.h,
	mpeg2/ac3dec/bitstream.c, mpeg2/ac3dec/bitstream.h,
	mpeg2/ac3dec/crc.c, mpeg2/ac3dec/crc.h, mpeg2/ac3dec/debug.c,
	mpeg2/ac3dec/debug.h, mpeg2/ac3dec/decode.h, mpeg2/ac3dec/dither.c,
	mpeg2/ac3dec/dither.h, mpeg2/ac3dec/downmix.c,
	mpeg2/ac3dec/downmix.h, mpeg2/ac3dec/exponent.c,
	mpeg2/ac3dec/exponent.h, mpeg2/ac3dec/getbits.c,
	mpeg2/ac3dec/getbits.h, mpeg2/ac3dec/imdct.c, mpeg2/ac3dec/imdct.h,
	mpeg2/ac3dec/mantissa.c, mpeg2/ac3dec/mantissa.h,
	mpeg2/ac3dec/output.c, mpeg2/ac3dec/output.h, mpeg2/ac3dec/parse.c,
	mpeg2/ac3dec/parse.h, mpeg2/ac3dec/rematrix.c,
	mpeg2/ac3dec/rematrix.h, mpeg2/ac3dec/ring_buffer.c,
	mpeg2/ac3dec/ring_buffer.h, mpeg2/ac3dec/stats.c,
	mpeg2/ac3dec/stats.h, mpeg2/ac3dec/uncouple.c,
	mpeg2/ac3dec/uncouple.h, mpeg2/ac3parse/Makefile.am,
	mpeg2/ac3parse/README, mpeg2/ac3parse/ac3parse.c,
	mpeg2/ac3parse/ac3parse.h, mpeg2/parse/Makefile.am,
	mpeg2/parse/README, mpeg2/parse/getbits.c, mpeg2/parse/getbits.h,
	mpeg2/parse/mpeg2parse.c, mpeg2/parse/mpeg2parse.h,
	mpeg2/parse/notes, vcdsrc/Makefile.am, vcdsrc/vcdsrc.c,
	vcdsrc/vcdsrc.h, visualization/smoothwave/Makefile.am,
	visualization/smoothwave/README,
	visualization/smoothwave/smoothwave.c,
	visualization/smoothwave/smoothwave.h,
	visualization/spectrum/Makefile.am, visualization/spectrum/README,
	visualization/spectrum/fix_fft.c,
	visualization/spectrum/gstspectrum.c,
	visualization/spectrum/gstspectrum.h,
	visualization/synaesthesia/Makefile.am,
	visualization/synaesthesia/README,
	visualization/synaesthesia/README-syna,
	visualization/synaesthesia/core.c,
	visualization/synaesthesia/core.h,
	visualization/synaesthesia/synaesthesia.c,
	visualization/synaesthesia/synaesthesia.h,
	visualization/vumeter/Makefile.am, visualization/vumeter/README,
	visualization/vumeter/vumeter.c, visualization/vumeter/vumeter.h,
	wav/Makefile.am, wav/gstparsewav.c, wav/gstparsewav.h,
	wav/gstriff.c, wav/gstriff.h: initial checkin

2000-01-30 09:04  omegahacker

	* plugins/: Makefile.am, example.c, example.h: initial checkin

2000-01-30 09:00  omegahacker

	* gst/: elements/Makefile.am, elements/gstasyncdisksrc.c,
	elements/gstasyncdisksrc.h, elements/gstaudiosink.c,
	elements/gstaudiosink.h, elements/gstaudiosrc.c,
	elements/gstaudiosrc.h, elements/gstdisksrc.c,
	elements/gstdisksrc.h, elements/gstelements.c,
	elements/gstesdsink.c, elements/gstesdsink.h,
	elements/gstfakesink.c, elements/gstfakesink.h,
	elements/gstfakesrc.c, elements/gstfakesrc.h, elements/gstfdsink.c,
	elements/gstfdsink.h, elements/gstfdsrc.c, elements/gstfdsrc.h,
	elements/gsthttpsrc.c, elements/gsthttpsrc.h,
	elements/gstidentity.c, elements/gstidentity.h,
	elements/gstqueue.c, elements/gstqueue.h, elements/gstsinesrc.c,
	elements/gstsinesrc.h, elements/gsttypefind.c,
	elements/gsttypefind.h, types/Makefile.am, types/gsttypes.c:
	initial checkin

2000-01-30 08:57  omegahacker

	* gst/: cothreads.c, cothreads.h, gst.c, gst.h, gstbin.c, gstbin.h,
	gstbuffer.c, gstbuffer.h, gstconnection.c, gstconnection.h,
	gstelement.c, gstelement.h, gstelementfactory.c, gstfilter.c,
	gstfilter.h, gstlog.h, gstmeta.c, gstmeta.h, gstobject.c,
	gstobject.h, gstpad.c, gstpad.h, gstpipeline.c, gstpipeline.h,
	gstplugin.c, gstplugin.h, gstsink.c, gstsink.h, gstsrc.c, gstsrc.h,
	gsttee.c, gsttee.h, gstthread.c, gstthread.h, gsttrace.c,
	gsttrace.h, gsttype.c, gsttype.h, gsttypefind.c, gsttypefind.h,
	gstutils.c, gstutils.h, gstxml.c, gstxml.h, plugin.c, plugin.h,
	Makefile.am: initial checkin

2000-01-30 08:51  omegahacker

	* AUTHORS, COPYING, COPYING.LIB, ChangeLog, INSTALL, Makefile.am,
	NEWS, README, acconfig.h, autogen.sh, config.h.in, configure.in,
	install-sh, missing, mkinstalldirs, stamp.h.in: initial checkin

Fri Jan 12 21:52:09 CET 2001   Wim Taymans  <wim.taymans@chello.be>

        * PPC compilation fixes (thanks to hadess)
        * add eos2 and eos3 proposals


