=== release 0.10.29 ===

2011-05-10  Tim-Philipp Müller <[email protected]>

       * configure.ac:
         releasing 0.10.29, "Soft Cheese Enthusiast"

2011-05-05 13:24:23 +0200  Edward Hervey <[email protected]>

       * gst/isomp4/gstqtmux.c:
         qtmux: Fix signed floating point values writing
         You would end up on some architectures with 0 being written out
         instead of the proper value.
         https://bugzilla.gnome.org/show_bug.cgi?id=649449

2011-05-04 12:04:15 +0200  Mark Nauwelaerts <[email protected]>

       * gst/matroska/matroska-mux.c:
         matroskamux: avoid building index when streamable
         ... as it will not be written anyway.
         Fixes #648937 (?).

2011-05-02 12:09:02 +0100  Tim-Philipp Müller <[email protected]>

       * Makefile.am:
         build: add old qtdemux/quicktime directories to CRUFT_DIRS and CRUFT_FILES

2011-05-01 00:04:03 -0400  Tom Janiszewski <[email protected]>

       * gst/flv/gstflvmux.c:
         flvmux: don't overwrite metadata tag with duration in streaming mode
         A duration tag gets inserted only for streamable=false, so only
         update/write the duration later if we actually inserted that tag,
         otherwise we write garbage into other tags.
         https://bugzilla.gnome.org/show_bug.cgi?id=649060

2011-04-30 18:16:36 +0100  Tim-Philipp Müller <[email protected]>

       * configure.ac:
       * docs/plugins/gst-plugins-good-plugins.hierarchy:
       * docs/plugins/gst-plugins-good-plugins.interfaces:
       * docs/plugins/gst-plugins-good-plugins.prerequisites:
       * docs/plugins/inspect/plugin-1394.xml:
       * docs/plugins/inspect/plugin-aasink.xml:
       * docs/plugins/inspect/plugin-alaw.xml:
       * docs/plugins/inspect/plugin-alpha.xml:
       * docs/plugins/inspect/plugin-alphacolor.xml:
       * docs/plugins/inspect/plugin-annodex.xml:
       * docs/plugins/inspect/plugin-apetag.xml:
       * docs/plugins/inspect/plugin-audiofx.xml:
       * docs/plugins/inspect/plugin-audioparsers.xml:
       * docs/plugins/inspect/plugin-auparse.xml:
       * docs/plugins/inspect/plugin-autodetect.xml:
       * docs/plugins/inspect/plugin-avi.xml:
       * docs/plugins/inspect/plugin-cacasink.xml:
       * docs/plugins/inspect/plugin-cairo.xml:
       * docs/plugins/inspect/plugin-cutter.xml:
       * docs/plugins/inspect/plugin-debug.xml:
       * docs/plugins/inspect/plugin-deinterlace.xml:
       * docs/plugins/inspect/plugin-dv.xml:
       * docs/plugins/inspect/plugin-efence.xml:
       * docs/plugins/inspect/plugin-effectv.xml:
       * docs/plugins/inspect/plugin-equalizer.xml:
       * docs/plugins/inspect/plugin-esdsink.xml:
       * docs/plugins/inspect/plugin-flac.xml:
       * docs/plugins/inspect/plugin-flv.xml:
       * docs/plugins/inspect/plugin-flxdec.xml:
       * docs/plugins/inspect/plugin-gconfelements.xml:
       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
       * docs/plugins/inspect/plugin-goom.xml:
       * docs/plugins/inspect/plugin-goom2k1.xml:
       * docs/plugins/inspect/plugin-gstrtpmanager.xml:
       * docs/plugins/inspect/plugin-halelements.xml:
       * docs/plugins/inspect/plugin-icydemux.xml:
       * docs/plugins/inspect/plugin-id3demux.xml:
       * docs/plugins/inspect/plugin-imagefreeze.xml:
       * docs/plugins/inspect/plugin-interleave.xml:
       * docs/plugins/inspect/plugin-isomp4.xml:
       * docs/plugins/inspect/plugin-jack.xml:
       * docs/plugins/inspect/plugin-jpeg.xml:
       * docs/plugins/inspect/plugin-level.xml:
       * docs/plugins/inspect/plugin-matroska.xml:
       * docs/plugins/inspect/plugin-monoscope.xml:
       * docs/plugins/inspect/plugin-mulaw.xml:
       * docs/plugins/inspect/plugin-multifile.xml:
       * docs/plugins/inspect/plugin-multipart.xml:
       * docs/plugins/inspect/plugin-navigationtest.xml:
       * docs/plugins/inspect/plugin-oss4.xml:
       * docs/plugins/inspect/plugin-ossaudio.xml:
       * docs/plugins/inspect/plugin-png.xml:
       * docs/plugins/inspect/plugin-pulseaudio.xml:
       * docs/plugins/inspect/plugin-replaygain.xml:
       * docs/plugins/inspect/plugin-rtp.xml:
       * docs/plugins/inspect/plugin-rtsp.xml:
       * docs/plugins/inspect/plugin-shapewipe.xml:
       * docs/plugins/inspect/plugin-shout2send.xml:
       * docs/plugins/inspect/plugin-smpte.xml:
       * docs/plugins/inspect/plugin-soup.xml:
       * docs/plugins/inspect/plugin-spectrum.xml:
       * docs/plugins/inspect/plugin-speex.xml:
       * docs/plugins/inspect/plugin-taglib.xml:
       * docs/plugins/inspect/plugin-udp.xml:
       * docs/plugins/inspect/plugin-video4linux2.xml:
       * docs/plugins/inspect/plugin-videobox.xml:
       * docs/plugins/inspect/plugin-videocrop.xml:
       * docs/plugins/inspect/plugin-videofilter.xml:
       * docs/plugins/inspect/plugin-videomixer.xml:
       * docs/plugins/inspect/plugin-wavenc.xml:
       * docs/plugins/inspect/plugin-wavpack.xml:
       * docs/plugins/inspect/plugin-wavparse.xml:
       * docs/plugins/inspect/plugin-ximagesrc.xml:
       * docs/plugins/inspect/plugin-y4menc.xml:
       * po/fr.po:
       * win32/common/config.h:
         0.10.28.4 pre-release

2011-04-30 17:46:36 +0100  Tim-Philipp Müller <[email protected]>

       * Android.mk:
       * configure.ac:
       * docs/plugins/Makefile.am:
       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
       * docs/plugins/inspect/plugin-isomp4.xml:
       * docs/plugins/inspect/plugin-quicktime.xml:
       * gst-plugins-good.spec.in:
       * gst/isomp4/LEGAL:
       * gst/isomp4/Makefile.am:
       * gst/isomp4/atoms.c:
       * gst/isomp4/atoms.h:
       * gst/isomp4/atomsrecovery.c:
       * gst/isomp4/atomsrecovery.h:
       * gst/isomp4/descriptors.c:
       * gst/isomp4/descriptors.h:
       * gst/isomp4/fourcc.h:
       * gst/isomp4/ftypcc.h:
       * gst/isomp4/gstqtmoovrecover.c:
       * gst/isomp4/gstqtmoovrecover.h:
       * gst/isomp4/gstqtmux-doc.c:
       * gst/isomp4/gstqtmux-doc.h:
       * gst/isomp4/gstqtmux.c:
       * gst/isomp4/gstqtmux.h:
       * gst/isomp4/gstqtmuxmap.c:
       * gst/isomp4/gstqtmuxmap.h:
       * gst/isomp4/gstrtpxqtdepay.c:
       * gst/isomp4/gstrtpxqtdepay.h:
       * gst/isomp4/isomp4-plugin.c:
       * gst/isomp4/properties.c:
       * gst/isomp4/properties.h:
       * gst/isomp4/qtatomparser.h:
       * gst/isomp4/qtdemux.c:
       * gst/isomp4/qtdemux.h:
       * gst/isomp4/qtdemux.vcproj:
       * gst/isomp4/qtdemux_dump.c:
       * gst/isomp4/qtdemux_dump.h:
       * gst/isomp4/qtdemux_fourcc.h:
       * gst/isomp4/qtdemux_lang.c:
       * gst/isomp4/qtdemux_lang.h:
       * gst/isomp4/qtdemux_types.c:
       * gst/isomp4/qtdemux_types.h:
       * gst/isomp4/qtpalette.h:
       * gst/quicktime/LEGAL:
       * gst/quicktime/Makefile.am:
       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/atomsrecovery.c:
       * gst/quicktime/atomsrecovery.h:
       * gst/quicktime/descriptors.c:
       * gst/quicktime/descriptors.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/ftypcc.h:
       * gst/quicktime/gstqtmoovrecover.c:
       * gst/quicktime/gstqtmoovrecover.h:
       * gst/quicktime/gstqtmux-doc.c:
       * gst/quicktime/gstqtmux-doc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
       * gst/quicktime/gstqtmuxmap.c:
       * gst/quicktime/gstqtmuxmap.h:
       * gst/quicktime/gstrtpxqtdepay.c:
       * gst/quicktime/gstrtpxqtdepay.h:
       * gst/quicktime/properties.c:
       * gst/quicktime/properties.h:
       * gst/quicktime/qtatomparser.h:
       * gst/quicktime/qtdemux.c:
       * gst/quicktime/qtdemux.h:
       * gst/quicktime/qtdemux.vcproj:
       * gst/quicktime/qtdemux_dump.c:
       * gst/quicktime/qtdemux_dump.h:
       * gst/quicktime/qtdemux_fourcc.h:
       * gst/quicktime/qtdemux_lang.c:
       * gst/quicktime/qtdemux_lang.h:
       * gst/quicktime/qtdemux_types.c:
       * gst/quicktime/qtdemux_types.h:
       * gst/quicktime/qtpalette.h:
       * gst/quicktime/quicktime.c:
       * po/POTFILES.in:
         quicktime: rename plugin to isomp4
         https://bugzilla.gnome.org/show_bug.cgi?id=648004

2011-04-27 12:45:51 +0100  Tim-Philipp Müller <[email protected]>

       * configure.ac:
       * docs/plugins/gst-plugins-good-plugins.args:
       * docs/plugins/gst-plugins-good-plugins.hierarchy:
       * docs/plugins/gst-plugins-good-plugins.interfaces:
       * docs/plugins/gst-plugins-good-plugins.prerequisites:
       * docs/plugins/inspect/plugin-1394.xml:
       * docs/plugins/inspect/plugin-aasink.xml:
       * docs/plugins/inspect/plugin-alaw.xml:
       * docs/plugins/inspect/plugin-alpha.xml:
       * docs/plugins/inspect/plugin-alphacolor.xml:
       * docs/plugins/inspect/plugin-annodex.xml:
       * docs/plugins/inspect/plugin-apetag.xml:
       * docs/plugins/inspect/plugin-audiofx.xml:
       * docs/plugins/inspect/plugin-audioparsers.xml:
       * docs/plugins/inspect/plugin-auparse.xml:
       * docs/plugins/inspect/plugin-autodetect.xml:
       * docs/plugins/inspect/plugin-avi.xml:
       * docs/plugins/inspect/plugin-cacasink.xml:
       * docs/plugins/inspect/plugin-cairo.xml:
       * docs/plugins/inspect/plugin-cutter.xml:
       * docs/plugins/inspect/plugin-debug.xml:
       * docs/plugins/inspect/plugin-deinterlace.xml:
       * docs/plugins/inspect/plugin-dv.xml:
       * docs/plugins/inspect/plugin-efence.xml:
       * docs/plugins/inspect/plugin-effectv.xml:
       * docs/plugins/inspect/plugin-equalizer.xml:
       * docs/plugins/inspect/plugin-esdsink.xml:
       * docs/plugins/inspect/plugin-flac.xml:
       * docs/plugins/inspect/plugin-flv.xml:
       * docs/plugins/inspect/plugin-flxdec.xml:
       * docs/plugins/inspect/plugin-gconfelements.xml:
       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
       * docs/plugins/inspect/plugin-goom.xml:
       * docs/plugins/inspect/plugin-goom2k1.xml:
       * docs/plugins/inspect/plugin-gstrtpmanager.xml:
       * docs/plugins/inspect/plugin-halelements.xml:
       * docs/plugins/inspect/plugin-icydemux.xml:
       * docs/plugins/inspect/plugin-id3demux.xml:
       * docs/plugins/inspect/plugin-imagefreeze.xml:
       * docs/plugins/inspect/plugin-interleave.xml:
       * docs/plugins/inspect/plugin-jack.xml:
       * docs/plugins/inspect/plugin-jpeg.xml:
       * docs/plugins/inspect/plugin-level.xml:
       * docs/plugins/inspect/plugin-matroska.xml:
       * docs/plugins/inspect/plugin-mulaw.xml:
       * docs/plugins/inspect/plugin-multifile.xml:
       * docs/plugins/inspect/plugin-multipart.xml:
       * docs/plugins/inspect/plugin-navigationtest.xml:
       * docs/plugins/inspect/plugin-oss4.xml:
       * docs/plugins/inspect/plugin-ossaudio.xml:
       * docs/plugins/inspect/plugin-png.xml:
       * docs/plugins/inspect/plugin-pulseaudio.xml:
       * docs/plugins/inspect/plugin-quicktime.xml:
       * docs/plugins/inspect/plugin-replaygain.xml:
       * docs/plugins/inspect/plugin-rtp.xml:
       * docs/plugins/inspect/plugin-rtsp.xml:
       * docs/plugins/inspect/plugin-shapewipe.xml:
       * docs/plugins/inspect/plugin-shout2send.xml:
       * docs/plugins/inspect/plugin-smpte.xml:
       * docs/plugins/inspect/plugin-soup.xml:
       * docs/plugins/inspect/plugin-spectrum.xml:
       * docs/plugins/inspect/plugin-speex.xml:
       * docs/plugins/inspect/plugin-taglib.xml:
       * docs/plugins/inspect/plugin-udp.xml:
       * docs/plugins/inspect/plugin-video4linux2.xml:
       * docs/plugins/inspect/plugin-videobox.xml:
       * docs/plugins/inspect/plugin-videocrop.xml:
       * docs/plugins/inspect/plugin-videofilter.xml:
       * docs/plugins/inspect/plugin-videomixer.xml:
       * docs/plugins/inspect/plugin-wavenc.xml:
       * docs/plugins/inspect/plugin-wavpack.xml:
       * docs/plugins/inspect/plugin-wavparse.xml:
       * docs/plugins/inspect/plugin-ximagesrc.xml:
       * docs/plugins/inspect/plugin-y4menc.xml:
       * po/bg.po:
       * po/ja.po:
       * po/nl.po:
       * po/ru.po:
       * win32/common/config.h:
         0.10.28.3 pre-release

2011-04-26 15:58:12 +0200  Wim Taymans <[email protected]>

       * gst/rtp/gstrtpgstpay.c:
         rtpgstpay: fix buffer leak

2011-04-25 10:04:52 +0200  Philip Jägenstedt <[email protected]>

       * ext/jpeg/gstjpegdec.c:
         jpegdec: documentation typo "jpegddec"
         https://bugzilla.gnome.org/show_bug.cgi?id=648589

2011-04-24 16:45:07 -0700  David Schleef <[email protected]>

       * gst/avi/gstavimux.c:
       * gst/matroska/matroska-mux.c:
         avimux,matroskamux: Add stream-format to h264 caps
         Fixes #606662.

2011-02-20 12:13:49 -0800  David Schleef <[email protected]>

       * ext/libpng/gstpngdec.c:
         pngdec: Remove temporary code
         Now that we depend on (what will be) -base-0.10.33.

2011-04-24 14:03:56 +0100  Tim-Philipp Müller <[email protected]>

       * configure.ac:
         configure: don't pass -Waddress to ObjC compiler on OSX when compiling osxvideosink
         Temporary workaround until we fix this properly and check for
         the ObjC warning/error flags instead of just passing CFLAGS to the
         ObjC compiler.
         https://bugzilla.gnome.org/show_bug.cgi?id=643939

2011-04-24 13:29:32 +0100  Tim-Philipp Müller <[email protected]>

       * docs/plugins/inspect/plugin-quicktime.xml:
       * gst-plugins-good.spec.in:
       * gst/quicktime/Makefile.am:
         quicktime: rename plugin filename from *qtdemux* to *quicktime*
         https://bugzilla.gnome.org/show_bug.cgi?id=648004

2011-04-24 14:03:41 +0100  Tim-Philipp Müller <[email protected]>

       * common:
         Automatic update of common submodule
         From c3cafe1 to 46dfcea

2011-04-21 23:30:26 +0100  Tim-Philipp Müller <[email protected]>

       * docs/plugins/Makefile.am:
       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
       * docs/plugins/gst-plugins-good-plugins-sections.txt:
       * gst/quicktime/Makefile.am:
       * gst/quicktime/gstqtmoovrecover.c:
       * gst/quicktime/gstqtmux-doc.c:
       * gst/quicktime/gstqtmux-doc.h:
         docs: add various qtmux variants to documentation

2011-04-21 22:51:52 +0100  Tim-Philipp Müller <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
       * gst/quicktime/gstqtmuxmap.h:
         quicktime: register 3gppmux element in addition to the misnamed gppmux

2011-04-18 18:08:30 -0400  Olivier Crête <[email protected]>

       * gst/rtpmanager/gstrtpsession.c:
       * gst/rtpmanager/rtpsession.c:
       * gst/rtpmanager/rtpsession.h:
         rtpsession: Remove incomplete support for RTCP FIR
         Remove bits that were meant to suppport RTCP FIR
         https://bugzilla.gnome.org/show_bug.cgi?id=648160

2011-04-19 14:33:25 +0100  Tim-Philipp Müller <[email protected]>

       * tests/check/Makefile.am:
       * tests/check/generic/.gitignore:
       * tests/check/generic/index.c:
         tests: add generic set_index test

2011-04-19 14:33:42 +0100  Tim-Philipp Müller <[email protected]>

       * gst/flv/gstflvdemux.c:
         flvdemux: fix deadlock on setting index on flvdemux

2011-04-19 14:16:11 +0100  Tim-Philipp Müller <[email protected]>

       * tests/check/elements/flacparse.c:
         tests: add index-setting test for baseparse/flacparse
         https://bugzilla.gnome.org/show_bug.cgi?id=646811

2011-04-18 11:29:15 +0200  Sebastian Dröge <[email protected]>

       * tests/check/pipelines/wavpack.c:
         wavpack: Remove bus GSource to prevent a valgrind warning

2011-04-18 11:14:32 +0200  Sebastian Dröge <[email protected]>

       * tests/check/pipelines/wavenc.c:
         wavenc: Remove bus GSource to prevent a valgrind warning

2011-04-18 11:11:53 +0200  Sebastian Dröge <[email protected]>

       * tests/check/pipelines/tagschecking.c:
         tagschecking: Remove bus GSource to prevent a valgrind warning

2011-04-18 11:10:01 +0200  Sebastian Dröge <[email protected]>

       * tests/check/elements/imagefreeze.c:
         imagefreeze: Remove bus GSource to prevent a valgrind warning

2011-04-17 01:29:01 +0100  Tim-Philipp Müller <[email protected]>

       * gst/avi/gstavidemux.c:
         avidemux: fix 'variable may be used uninitialized' warnings caused by -DG_DISABLE_ASSERT

2011-04-16 18:50:11 +0100  Tim-Philipp Müller <[email protected]>

       * configure.ac:
       * win32/common/config.h:
       * win32/common/gstrtpbin-marshal.c:
       * win32/common/gstrtpbin-marshal.h:
         0.10.28.2 pre-release

2011-04-16 18:49:27 +0100  Tim-Philipp Müller <[email protected]>

       * gst/deinterlace/tvtime-dist.c:
       * gst/deinterlace/tvtime-dist.h:
       * gst/videobox/gstvideoboxorc-dist.c:
       * gst/videobox/gstvideoboxorc-dist.h:
       * gst/videomixer/blendorc-dist.c:
       * gst/videomixer/blendorc-dist.h:
         gst: update disted orc backup code

2011-04-16 18:29:45 +0100  Tim-Philipp Müller <[email protected]>

       * docs/plugins/gst-plugins-good-plugins.args:
       * docs/plugins/gst-plugins-good-plugins.hierarchy:
       * docs/plugins/gst-plugins-good-plugins.interfaces:
       * docs/plugins/gst-plugins-good-plugins.prerequisites:
       * docs/plugins/inspect/plugin-1394.xml:
       * docs/plugins/inspect/plugin-aasink.xml:
       * docs/plugins/inspect/plugin-alaw.xml:
       * docs/plugins/inspect/plugin-alpha.xml:
       * docs/plugins/inspect/plugin-alphacolor.xml:
       * docs/plugins/inspect/plugin-annodex.xml:
       * docs/plugins/inspect/plugin-apetag.xml:
       * docs/plugins/inspect/plugin-audiofx.xml:
       * docs/plugins/inspect/plugin-audioparsers.xml:
       * docs/plugins/inspect/plugin-auparse.xml:
       * docs/plugins/inspect/plugin-autodetect.xml:
       * docs/plugins/inspect/plugin-avi.xml:
       * docs/plugins/inspect/plugin-cacasink.xml:
       * docs/plugins/inspect/plugin-cairo.xml:
       * docs/plugins/inspect/plugin-cutter.xml:
       * docs/plugins/inspect/plugin-debug.xml:
       * docs/plugins/inspect/plugin-deinterlace.xml:
       * docs/plugins/inspect/plugin-dv.xml:
       * docs/plugins/inspect/plugin-efence.xml:
       * docs/plugins/inspect/plugin-effectv.xml:
       * docs/plugins/inspect/plugin-equalizer.xml:
       * docs/plugins/inspect/plugin-esdsink.xml:
       * docs/plugins/inspect/plugin-flac.xml:
       * docs/plugins/inspect/plugin-flv.xml:
       * docs/plugins/inspect/plugin-flxdec.xml:
       * docs/plugins/inspect/plugin-gconfelements.xml:
       * docs/plugins/inspect/plugin-gdkpixbuf.xml:
       * docs/plugins/inspect/plugin-goom.xml:
       * docs/plugins/inspect/plugin-goom2k1.xml:
       * docs/plugins/inspect/plugin-gstrtpmanager.xml:
       * docs/plugins/inspect/plugin-halelements.xml:
       * docs/plugins/inspect/plugin-icydemux.xml:
       * docs/plugins/inspect/plugin-id3demux.xml:
       * docs/plugins/inspect/plugin-imagefreeze.xml:
       * docs/plugins/inspect/plugin-interleave.xml:
       * docs/plugins/inspect/plugin-jack.xml:
       * docs/plugins/inspect/plugin-jpeg.xml:
       * docs/plugins/inspect/plugin-level.xml:
       * docs/plugins/inspect/plugin-matroska.xml:
       * docs/plugins/inspect/plugin-monoscope.xml:
       * docs/plugins/inspect/plugin-mulaw.xml:
       * docs/plugins/inspect/plugin-multifile.xml:
       * docs/plugins/inspect/plugin-multipart.xml:
       * docs/plugins/inspect/plugin-navigationtest.xml:
       * docs/plugins/inspect/plugin-oss4.xml:
       * docs/plugins/inspect/plugin-ossaudio.xml:
       * docs/plugins/inspect/plugin-png.xml:
       * docs/plugins/inspect/plugin-pulseaudio.xml:
       * docs/plugins/inspect/plugin-quicktime.xml:
       * docs/plugins/inspect/plugin-replaygain.xml:
       * docs/plugins/inspect/plugin-rtp.xml:
       * docs/plugins/inspect/plugin-rtsp.xml:
       * docs/plugins/inspect/plugin-shapewipe.xml:
       * docs/plugins/inspect/plugin-shout2send.xml:
       * docs/plugins/inspect/plugin-smpte.xml:
       * docs/plugins/inspect/plugin-soup.xml:
       * docs/plugins/inspect/plugin-spectrum.xml:
       * docs/plugins/inspect/plugin-speex.xml:
       * docs/plugins/inspect/plugin-udp.xml:
       * docs/plugins/inspect/plugin-video4linux2.xml:
       * docs/plugins/inspect/plugin-videobox.xml:
       * docs/plugins/inspect/plugin-videocrop.xml:
       * docs/plugins/inspect/plugin-videofilter.xml:
       * docs/plugins/inspect/plugin-videomixer.xml:
       * docs/plugins/inspect/plugin-wavenc.xml:
       * docs/plugins/inspect/plugin-wavpack.xml:
       * docs/plugins/inspect/plugin-wavparse.xml:
       * docs/plugins/inspect/plugin-ximagesrc.xml:
       * docs/plugins/inspect/plugin-y4menc.xml:
         docs: update for pre-release

2011-04-16 18:27:54 +0100  Tim-Philipp Müller <[email protected]>

       * po/bg.po:
       * po/cs.po:
       * po/de.po:
       * po/es.po:
       * po/id.po:
       * po/sl.po:
         po: update translations

2011-04-16 18:17:01 +0100  Tim-Philipp Müller <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: refuse incomplete legacy h264 caps
         Refuse h264 caps without stream-format and codec_data fields for
         now, to avoid creating broken files. This might cause some pipelines
         that worked previously to fail. However, the move from -bad to -good
         is our only chance to fix this up, so make it strict for now. We can
         always change it back to be less strict in future.
         https://bugzilla.gnome.org/show_bug.cgi?id=647919

2011-04-16 18:16:11 +0100  Tim-Philipp Müller <[email protected]>

       * sys/v4l2/gstv4l2sink.c:
         v4l2sink: fix another unused-but-set-variable warning

2011-04-16 18:10:24 +0100  Tim-Philipp Müller <[email protected]>

       * ext/pulse/pulsesink.c:
       * ext/pulse/pulsesrc.c:
       * ext/speex/gstspeexenc.c:
       * gst/rtp/gstrtpgsmpay.c:
         pulse, speexenc, rtpgsmpay: don't use g_assert() for error handling
         Don't use g_assert() for error handling, even if they're highly unlikely.
         Either we *know* that something can't happen, in which case we
         should just not handle it, or we think something can happen, but it is
         very very unlikely that it will ever happen, in which case we should
         handle it like any other error instead of asserting.
         g_assert() is best left for conditions we have control of, like checking
         internal consistency of our code, not checking return values of external
         code.
         Fixes a bunch of warnings when compiling with -DG_DISABLE_ASSERT:
         gstrtpgsmpay.c: In function 'gst_rtp_gsm_pay_handle_buffer':
         gstrtpgsmpay.c:130:17: warning: variable 'rtpgsmpay' set but not used
         gstspeexenc.c: In function 'gst_speex_enc_encode':
         gstspeexenc.c:904:19: warning: variable 'written' set but not used
         pulsesink.c: In function 'gst_pulsesink_change_state':
         pulsesink.c:2725:9: warning: variable 'res' set but not used
         pulsesrc.c: In function 'gst_pulsesrc_change_state':
         pulsesrc.c:1253:7: warning: variable 'e' set but not used

2011-04-16 18:07:35 +0100  Tim-Philipp Müller <[email protected]>

       * tests/examples/rtp/server-alsasrc-PCMA.c:
         examples: fix some warnings in rtp example
         Caused by -DG_DISABLE_ASSERT

2011-04-16 17:57:32 +0100  Tim-Philipp Müller <[email protected]>

       * tests/examples/level/level-example.c:
         examples: don't put code with side-effects into g_assert()
         Otherwise things won't work too well when compiling with
         -DG_DISABLE_ASSERT (as we do for pre-releases and releases).

2011-04-16 16:51:32 +0100  Tim-Philipp Müller <[email protected]>

       * gst/deinterlace/tvtime/greedyh.c:
       * gst/matroska/matroska-mux.c:
         deinterlace, matroska: fix two variable-may-be-used-uninitialized compiler warnings
         We use -DG_DISABLE_ASSERT for the pre-releases, which makes these
         warnings pop up in cases that were previously covered by g_assert_not_reached()
         and the like:
         tvtime/greedyh.c:801:14: warning: 'scanline' may be used uninitialized in this function
         matroska-mux.c:501:19: warning: 'context' may be used uninitialized in this function

2011-04-16 13:33:45 +0100  Tim-Philipp Müller <[email protected]>

       * ext/jack/gstjackaudiosink.c:
       * ext/jack/gstjackaudiosrc.c:
         jack: fix unused-but-set-variable warnings with gcc-4.6

2011-04-16 13:23:50 +0100  Tim-Philipp Müller <[email protected]>

       * tests/examples/cairo/cairo_overlay.c:
         examples: fix 'control reaches end of non-void function' warning in cairo example

2011-04-15 15:47:24 +0200  Robert Swain <[email protected]>

       * sys/v4l2/gstv4l2src.c:
         v4l2src: Address unused but set variable
         The v4l2object formats list was being obtained into a local variable and
         then still used from the context. Make use of the local variable.

2011-04-15 15:17:34 +0200  Robert Swain <[email protected]>

       * sys/oss4/oss4-mixer-slider.c:
       * sys/oss4/oss4-mixer-switch.c:
       * sys/oss4/oss4-property-probe.c:
       * sys/oss4/oss4-source.c:
         oss4: Address unused but set variables
         GCC 4.6.x complains about such variable usage. Unused but set variables
         were removed except that gst_oss4_mixer_slider_set_mute () now returns
         the value from the call to gst_oss4_mixer_set_control_val ().

2011-04-15 15:14:13 +0200  Robert Swain <[email protected]>

       * ext/jpeg/gstjpegenc.c:
       * ext/pulse/pulsesink.c:
       * ext/raw1394/gstdv1394src.c:
       * ext/raw1394/gsthdv1394src.c:
         jpegenc: pulsesink: raw1394: Address unused but set variables
         GCC 4.6.x spits warnings about such usage of variables. The variables in
         raw1394 were marked with G_GNUC_UNUSED as this seemed omre appropriate.
         The others were removed.

2011-04-15 15:12:44 +0200  Robert Swain <[email protected]>

       * gst/shapewipe/gstshapewipe.c:
       * gst/y4m/gsty4mencode.c:
         y4mencode: shapewipe: Address unused but set variables
         GCC 4.6.x complains about such usage.

2011-04-15 15:11:35 +0200  Robert Swain <[email protected]>

       * tests/check/elements/deinterlace.c:
       * tests/check/elements/rtp-payloading.c:
       * tests/check/pipelines/flacdec.c:
       * tests/examples/level/level-example.c:
       * tests/icles/videocrop-test.c:
       * tests/icles/ximagesrc-test.c:
         tests: Address unused but set variables
         GCC 4.6.x spits warnings about such usage of variables.

2011-04-15 15:36:41 +0200  Robert Swain <[email protected]>

       * gst/videomixer/blendorc.orc:
         videomixer: Fix argb/rgba overlay orc code
         Remove some redundant operations (convubw) and use the correct variable,
         t2, in the orc_overlay_bgra function.

2011-04-15 15:33:35 +0200  Robert Swain <[email protected]>

       * gst/videomixer/blend.c:
       * gst/videomixer/gstcollectpads2.c:
       * gst/videomixer/videomixer2.c:
         videomixer: address unused but set variables
         GCC 4.6.x spits warnings about variables that are set but unused. Such
         variables have been removed in blend, collectpads2 and videomixer2.

2011-04-15 14:57:20 +0200  Robert Swain <[email protected]>

       * gst/rtp/gstrtpamrdepay.c:
       * gst/rtp/gstrtpbvdepay.c:
       * gst/rtp/gstrtpbvpay.c:
       * gst/rtp/gstrtpg722pay.c:
       * gst/rtp/gstrtpgstdepay.c:
       * gst/rtp/gstrtpgstpay.c:
       * gst/rtp/gstrtpj2kpay.c:
       * gst/rtp/gstrtpmp4gpay.c:
       * gst/rtp/gstrtpmp4vpay.c:
       * gst/rtp/gstrtpmpadepay.c:
       * gst/rtp/gstrtpqcelpdepay.c:
       * gst/rtpmanager/gstrtpjitterbuffer.c:
       * gst/rtpmanager/gstrtpsession.c:
         rtp, rtpmanager: Address unused but set variables
         GCC 4.6.x spits warnings about variables that are unused but set. Such
         variables have been removed where trivial but with comments left behind
         for informational purposes in some cases.
         gst_rtp_session_chain_recv_rtcp () was changed in commit 490113d4
         to always return GST_FLOW_OK instead of the return value of
         rtp_session_process_rtcp (), so we'll keep it that way.

2011-04-15 11:29:30 +0200  Robert Swain <[email protected]>

       * gst/quicktime/descriptors.c:
       * gst/quicktime/gstrtpxqtdepay.c:
       * gst/quicktime/qtdemux.c:
         quicktime: Remove unused but set variables
         GCC 4.6.x spits warnings about such variable usage. Note that some
         calculations are left as comments for informative purposes.

2011-04-15 11:23:38 +0200  Robert Swain <[email protected]>

       * gst/matroska/matroska-demux.c:
       * gst/matroska/matroska-parse.c:
         matroska: Remove unused but set variables
         GCC 4.6.x spits warnings about such variable usage.

2011-04-15 11:19:26 +0200  Robert Swain <[email protected]>

       * gst/imagefreeze/gstimagefreeze.c:
         imagefreeze: Remove unused but set duration variable
         GCC 4.6.x spits warnings about such variable usage.

2011-04-15 11:18:19 +0200  Robert Swain <[email protected]>

       * gst/flv/gstflvdemux.c:
         flxdemux: Remove unused but set keyframe variables
         The FIXMEs about the keyframe flag never being used are left for later
         fixing, at which point the keyframe variables could be added back.

2011-04-15 11:16:42 +0200  Robert Swain <[email protected]>

       * gst/effectv/gstedge.c:
         edgetv: Remove unused but set height variable
         GCC 4.6.x spits warnings about such variables.

2011-04-15 18:51:20 +0100  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: update for gst_base_parse_frame_init() API change

2011-02-01 15:57:01 -0500  Olivier Crête <[email protected]>

       * gst/rtpmanager/rtpsession.c:
         rtpsession: Use existing functions to parse RTCP FB packets
         Use existing functions to get the FCI from FB packets.
         https://bugzilla.gnome.org/show_bug.cgi?id=622553

2011-02-01 16:23:52 -0500  Olivier Crête <[email protected]>

       * gst/rtpmanager/gstrtpbin-marshal.list:
       * gst/rtpmanager/rtpsession.c:
         rtpsession: marshal GstBuffer as a MiniObject instead of a pointer
         https://bugzilla.gnome.org/show_bug.cgi?id=622553

2011-04-14 23:24:56 -0700  David Schleef <[email protected]>

       * gst/matroska/matroska-demux.c:
         matroskademux: Better calculation of framerate
         https://bugzilla.gnome.org/show_bug.cgi?id=647833

2011-04-13 12:37:09 +0100  Tim-Philipp Müller <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: default to dts-method=reorder and presentation-time=true
         https://bugzilla.gnome.org/show_bug.cgi?id=636699

2011-04-15 12:47:52 +0200  Mark Nauwelaerts <[email protected]>

       * tests/check/elements/qtmux.c:
         tests: qtmux: test various dts-methods

2011-04-15 12:34:05 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: fix corner case buffer handling for reorder method

2011-04-14 13:47:05 +0200  Sebastian Dröge <[email protected]>

       * gst/flv/gstflvdemux.c:
         flvdemux: Don't leak the SEEKING query

2011-04-14 13:43:06 +0200  Sebastian Dröge <[email protected]>

       * gst/quicktime/gstqtmoovrecover.c:
       * gst/quicktime/gstqtmoovrecover.h:
         qtmoovrecover: Don't leak the static recursive mutex

2011-04-14 13:37:52 +0200  Sebastian Dröge <[email protected]>

       * sys/v4l2/gstv4l2radio.c:
         v4l2radio: Free videodev string before replacing it

2011-04-14 13:24:21 +0200  Sebastian Dröge <[email protected]>

       * gst/matroska/matroska-parse.c:
         matroskaparse: Allow webm and matroska caps and don't leak caps

2011-04-14 07:35:29 +0100  Christian Fredrik Kalager Schaller <[email protected]>

       * gst-plugins-good.spec.in:
         Add parser plugin

2011-03-24 14:34:24 -0700  David Schleef <[email protected]>

       * sys/directsound/gstdirectsoundsink.c:
         directsoundsink: Add conditionals on WAVE_FORMAT_DOLBY_AC3_SPDIF

2011-04-11 20:09:14 +0100  Tim-Philipp Müller <[email protected]>

       * gst/debugutils/gstcapsdebug.c:
         capsdebug: fix unused-but-set-variable warnings with gcc 4.6

2011-04-11 20:05:54 +0100  Tim-Philipp Müller <[email protected]>

       * gst/avi/gstavidemux.c:
         avidemux: fix unused-but-set-variable warning with gcc 4.6
         Most likely a leftover from when the index parsing code was rewritten.

2011-04-11 19:54:00 +0100  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: fix unused-but-set-variable warning with gcc 4.6

2011-04-11 19:50:07 +0100  Tim-Philipp Müller <[email protected]>

       * gst/videofilter/gstvideobalance.c:
         videobalance: fix handling of YUV images with 'odd' widths
         Fixes unused-but-set-variable warnings with gcc 4.6.

2011-04-11 19:49:22 +0100  Tim-Philipp Müller <[email protected]>

       * gst/videofilter/gstvideoflip.c:
         videoflip: fix unused-but-set-variable warnings with gcc 4.6

2011-04-13 18:11:34 +0200  Sebastian Dröge <[email protected]>

       * gst/audiofx/audiowsincband.c:
       * gst/audiofx/audiowsinclimit.c:
         audiowsinc{band,limit}: Fix check for divison by zero

2011-04-13 18:01:01 +0200  Sebastian Dröge <[email protected]>

       * gst/audiofx/audiowsincband.c:
         audiowsincband: Fix range of kernel elements (lim -> lim-1)

2011-04-13 18:00:44 +0200  Sebastian Dröge <[email protected]>

       * gst/audiofx/audiowsinclimit.c:
         audiowsinclimit: Add some more braces to make the code more readable

2011-04-11 18:40:30 -0500  Jordi Burguet-Castell <[email protected]>

       * gst/audiofx/audiowsinclimit.c:
         audiowsinclimit: Fix range of kernel elements (lim -> lim-1) in high/low-pass filters

2011-04-13 17:49:22 +0200  Sebastian Dröge <[email protected]>

       * gst/audiofx/audiowsincband.c:
         audiowsincband: Add new windowing functions: gaussian, cos and hann

2011-04-11 18:41:43 -0500  Jordi Burguet-Castell <[email protected]>

       * gst/audiofx/audiowsinclimit.c:
         audiowsinclimimt: Add new windows to high/low-pass filters: gaussian, cosine, hann

2011-04-13 16:47:05 +0100  Tim-Philipp Müller <[email protected]>

       * gst/matroska/matroska-demux.c:
         matroskademux: set stream-format=byte-stream on h264 caps if there's no codec data
         https://bugzilla.gnome.org/show_bug.cgi?id=606662

2011-04-13 16:37:07 +0100  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         qtmux: restrict h264 some more to only accept AU-aligned AVC
         https://bugzilla.gnome.org/show_bug.cgi?id=606662

2011-04-13 17:11:26 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstmpegaudioparse.c:
         mpegaudioparse: The VBRI header is always at offset 0x20, independent of MPEG version
         Also clean up advancing of the data pointer a bit.
         Fixes bug #647659.

2011-04-13 15:18:11 +0100  Tim-Philipp Müller <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
       * tests/check/Makefile.am:
       * tests/check/elements/qtmux.c:
         qtmux: add variant-less video/quicktime to source pad template caps
         This is needed for automatic transcoding using encodebin. Our typefinder
         does not always add a variant to the found caps, and encodebin needs
         an *exact* match to the caps on the source pad template, so we need
         to add the variant-less video/quicktime caps to the template as well
         for encodebin to be able to find it. Add unit test for this as well.
         https://bugzilla.gnome.org/show_bug.cgi?id=642879

2011-04-13 16:17:41 +0200  Sebastian Dröge <[email protected]>

       * ext/flac/gstflacenc.c:
         flacenc: Properly interprete the result of strcmp()

2011-04-13 16:09:04 +0200  Sebastian Dröge <[email protected]>

       * ext/flac/gstflacenc.c:
         flacenc: Don't store image tags inside the vorbiscomments and the flac metadata
         Instead only store them inside the flac metadata. There's
         no point in storing them twice and the flac metadata is
         still the official way to store image tags inside flac.

2011-04-13 12:38:15 +0100  Tim-Philipp Müller <[email protected]>

       * tests/check/elements/.gitignore:
       * tests/check/pipelines/.gitignore:
         tests: ignore new qtmux-related test binaries

2011-04-13 11:25:11 +0100  Tim-Philipp Müller <[email protected]>

       * docs/plugins/Makefile.am:
       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
       * docs/plugins/gst-plugins-good-plugins-sections.txt:
       * docs/plugins/inspect/plugin-quicktime.xml:
       * gst/quicktime/Makefile.am:
       * gst/quicktime/gstqtmuxplugin.c:
       * gst/quicktime/quicktime.c:
       * tests/check/Makefile.am:
         quicktime: move qtmux plugin from -bad to -good
         https://bugzilla.gnome.org/show_bug.cgi?id=636699

2011-04-04 12:21:23 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: more helpful debug error message when no needed duration on input buffers
         Fixes #646256.

2011-03-21 10:56:51 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
         qtmux: Adding GstTagXmpWriter interface
         Adds GstTagXmpWriter interface support to qtmux

2011-03-22 20:53:08 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: use running time for synchronization
         See also #432612.

2011-03-10 16:03:58 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: provide for PTS metadata when so configured
         ... and not only when sort-of feeling like it.
         In any case, if it turns out all really is in order,
         and presumably DTS == PTS, then no ctts will be produced anyway.

2011-03-10 16:02:42 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: also track original PTS buffer timestamp in reorder dts-method

2011-02-21 12:14:59 +0100  Edward Hervey <[email protected]>

       * gst/quicktime/gstqtmux.c:
         Revert "Check that collectpads exists before removing pad"
         This reverts commit 6d8740476ccd3a3498dc4f18c19733643825c7b8.
         Depends on a core commit that was reverted

2011-02-20 23:57:19 -0800  David Schleef <[email protected]>

       * gst/quicktime/gstqtmux.c:
         Check that collectpads exists before removing pad
         The core now calls release pad from finalize, at which point
         the collectpads might have already been freed.

2011-01-13 11:28:32 -0300  Thiago Santos <[email protected]>

       * tests/check/elements/qtmux.c:
         test: qtmux: Tests qtmux reuse
         Forces the use of qtmux after it has been put to PLAYING and back
         to NULL once
         https://bugzilla.gnome.org/show_bug.cgi?id=639338

2011-01-13 15:27:36 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: set src pads when starting file
         ... rather than at _init time, so they are also available following a
         pad (de)activation cycle.
         https://bugzilla.gnome.org/show_bug.cgi?id=639338

2011-01-03 17:24:23 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: adjust nasty case timestamp tracking
         That is, all sorts of problems arise with re-ordered input timestamps that
         tend to defy automagic handling for every case, so allow for a few variations
         that can be tried depending on circumstances.
         Also try to document accordingly.
         Also fixes #638288.

2010-12-30 21:48:41 +0200  Felipe Contreras <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: get rid of timestamp overprotectiveness
         Signed-off-by: Felipe Contreras <[email protected]>

2011-01-03 16:56:57 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/atomsrecovery.c:
       * gst/quicktime/gstqtmux.c:
         qtmux: simplify and fix pts_offset storing
         In particular, only write a ctts atom if and only if ever a non-zero offset.

2011-01-03 10:43:15 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: add some more documentation

2010-12-03 15:23:00 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: remove large-file property
         Rather, auto-determine if 64-bits fields are needed for a valid result, and
         stick to plain 32-bits if not needed.
         API: GstQTMux:large-file (removed)

2010-12-19 12:53:34 +0100  Sebastian Dröge <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Free AtomInfo structs

2010-12-19 12:50:30 +0100  Sebastian Dröge <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Free tag string after use

2010-12-19 12:12:25 +0100  Sebastian Dröge <[email protected]>

       * tests/check/pipelines/tagschecking.c:
         tagschecking: Fix some more memory leaks

2010-12-17 19:41:25 +0200  Lasse Laukkanen <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: allow zero duration tracks

2010-12-03 18:09:41 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: add documentation

2010-12-01 10:45:49 +0100  David Hoyt <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: handle msvc ftruncate incompatibility
         Fixes #636185.

2010-11-27 16:07:19 -0600  Alejandro Gonzalez <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: gst_qtmux_check_difference verify before subtract
         Avoid negative overflow by checking the order of operands
         on subtraction of unsigned integers.
         https://bugzilla.gnome.org/show_bug.cgi?id=635878

2010-11-19 17:55:36 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: remove remnant of obsolete property

2010-11-19 15:18:58 +0100  Mark Nauwelaerts <[email protected]>

       * tests/check/elements/qtmux.c:
         tests: qtmux: also unit test fragmented file cases

2010-07-30 12:48:29 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: allow specifying trak timescale
         This is mainly because Smoothstreaming client are broken and don't
         take the TimeScale property into account.

2010-11-19 17:41:41 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
         qtmux: include sdtp atoms for ismv fragmented files
         Based on patch by Marc-André Lureau <[email protected]>

2010-11-19 19:17:45 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: enable default fragmented file for ismlmux

2010-09-02 13:58:05 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/atoms.h:
       * gst/quicktime/ftypcc.h:
       * gst/quicktime/gstqtmuxmap.c:
       * gst/quicktime/gstqtmuxmap.h:
         qtmux: add ismlmux, for fragmented isml major brand

2010-11-19 14:44:45 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: finalize sinkpads list

2010-07-22 19:40:07 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: add moov in streamheader

2010-08-06 13:26:27 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: add streamable property to avoid building fragmented mfra index

2010-11-18 16:48:06 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: add mfra to fragmented file
         Based on patch by Marc-André Lureau <[email protected]>

2010-11-15 15:17:59 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: optionally create fragmented file
         In this mode, an initial empty moov (containing only stream metadata) is written,
         followed by fragments containing actual data (along with required metadata).
         New fragments are started either at keyframe (if such are sparse) or when
         property configured duration exceeded.
         Based on patch by Marc-André Lureau <[email protected]>
         Fixes #632911.

2010-11-15 15:12:45 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: use helper to set atom flags from given uint

2010-11-09 16:49:07 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: refactor configuring and sending of moov
         Based on patch by Marc-André Lureau <[email protected]>

2010-11-09 15:54:44 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: refactor extra top-level atom handling
         Also check a bit more for possible errors, and free proper items in such case.

2010-11-09 15:01:15 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: refactor slightly using buffer helper

2010-11-05 13:48:57 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: fix misinforming comment

2010-11-05 12:08:15 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
         qtmux: delegate mvex handling to atoms
         ... which keeps qtmux simpler.

2009-09-28 16:11:35 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
         qtmux: add mvex/trex in header if fragmented
         One "trex" is added per "trak". We don't support default values,
         but the "trex" box is mandatory.

2009-09-28 13:01:30 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/fourcc.h:
         qtmux: add a couple of fourcc for fragmented mp4

2010-11-05 11:08:01 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: avoid removing temp file when error occurred

2009-09-30 17:16:30 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: truncate buffer file after each send

2009-09-28 16:53:51 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: remove temp file when reset/finalize

2010-10-19 13:43:14 +0300  Stefan Kost <[email protected]>

       * gst/quicktime/gstqtmoovrecover.c:
         various (gst): add missing G_PARAM_STATIC_STRINGS flags
         Canonicalize property names as needed.

2010-10-13 17:47:29 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: prevent infinite loop when adjusting framerate
         Fixes #632070.

2010-10-03 23:45:46 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Add G_PARAM_STATIC_STRINGS
         Add G_PARAM_STATIC_STRINGS to qtmux properties

2010-09-15 17:54:49 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: Follow xmp serialization guidelines closer
         qt and isom variants have different ways of serializing
         xmp, follow these guidelines.
         Those can be found in Adobe's xmp docs.

2010-08-16 12:36:24 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: autodetect out-of-order input timestamps and determine DTS accordingly
         Favour using input buffer timestamps for DTS, but fallback to using buffer
         duration (accumulation) if input ts detected out-of-order.
         Fixes #624212.

2010-07-28 16:15:53 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: use caps bitrate at last chance
         If we didn't get the stream's bitrate from one of the atoms,
         try getting it from the caps as a last resort.
         https://bugzilla.gnome.org/show_bug.cgi?id=625496

2010-07-28 16:12:11 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: btrt - max bitrate before average
         According to iso base media file format, the max bitrate
         is before the avg
         https://bugzilla.gnome.org/show_bug.cgi?id=625496

2010-07-06 14:48:08 +0530  Arun Raghavan <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
         qtmux: Write 'btrt' atom for H.264 media if possible
         This writes out the optional 'btrt' atom (MPEG4BitrateBox) for H.264
         media if either or both of average and maximum bitrate are available for
         the stream.
         https://bugzilla.gnome.org/show_bug.cgi?id=623678

2010-07-05 14:09:50 +0530  Arun Raghavan <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: Write avg/max bitrate to ESDS if available
         This collects the 'bitrate' and 'maximum-bitrate' tags on the
         corresponding pad and uses these to populate these fields in the ESDS
         where applicable.
         https://bugzilla.gnome.org/show_bug.cgi?id=623678

2010-07-02 12:45:20 +0200  Edward Hervey <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Don't use bogus codec/format tags
         https://bugzilla.gnome.org/show_bug.cgi?id=623365

2010-06-25 20:19:20 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Write uint tags that don't have a complement
         Write uint tags that have complements (e.g. track-number/
         track-count) even when we only have one of them available
         and set the other one to 0.
         Fixes #622484

2010-06-21 19:39:54 +0200  Edward Hervey <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Remove the pad from our internal list before calling collectpads
         Previously we would end up with the collectpaddata structure already freed.
         This would result in a bogus iteration of mux->sinkpads (all the
         GstQTPad being freed) and it wouldn't be removed from that list.
         Finally, due to it not being removed from that list, we would end up
         calling a bogus gst_qt_mux_pad_reset on those structures => SEGFAULT

2010-05-12 18:50:34 -0700  David Schleef <[email protected]>

       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         qtmux: Add VP8

2010-05-11 13:15:37 +0100  Tim-Philipp Müller <[email protected]>

       * tests/check/pipelines/tagschecking.c:
         tests: don't fail tagschecking test if qtdemux is not available or too old

2010-03-27 09:46:30 +0000  Tim-Philipp Müller <[email protected]>

       * gst/quicktime/gstqtmuxplugin.c:
         qtmux: use GStreamer package name and origin in the plugin info

2010-03-23 17:34:30 -0300  Thiago Santos <[email protected]>

       * tests/check/pipelines/tagschecking.c:
         tests: tagschecking: New tags tests
         Adds new tags checking tests.

2010-03-25 00:20:54 +0000  Tim-Philipp Müller <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: init debug category before using it

2010-03-22 16:56:03 +0100  Benjamin Otte <[email protected]>

       * gst/quicktime/atoms.c:
         Add -Wold-style-definition
         and fix the warnings

2010-03-22 13:16:33 +0100  Benjamin Otte <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/gstqtmuxmap.h:
       * tests/check/elements/qtmux.c:
         Add -Wwrite-strings
         and fix its warnings

2010-03-21 21:39:18 +0100  Benjamin Otte <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/atomsrecovery.c:
       * gst/quicktime/descriptors.c:
       * tests/check/elements/qtmux.c:
       * tests/check/pipelines/tagschecking.c:
         Add -Wmissing-declarations -Wmissing-prototypes to configure flags
         And fix all warnings

2010-03-18 17:30:26 +0100  Benjamin Otte <[email protected]>

       * gst/quicktime/gstqtmoovrecover.c:
       * gst/quicktime/gstqtmux.c:
         gst_element_class_set_details => gst_element_class_set_details_simple

2010-03-12 11:28:51 -0300  Thiago Santos <[email protected]>

       * tests/check/pipelines/tagschecking.c:
         tests: tagschecking: Improvements and new geo-location tests
         Makes some improvements to tagschecking.c, making it use
         fakesrc instead of videotestsrc and allowing to set input
         caps so that more muxers can be used. Previously we could
         only use those that accepted raw video caps.
         Also adds some tests for geo-location tags

2010-03-12 10:53:36 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Use xmp on mp4mux and gppmux too
         Do not restrict xmp to qtmux, but use it too
         on mp4mux and gppmux

2010-03-05 13:33:37 -0300  Thiago Santos <[email protected]>

       * tests/check/pipelines/tagschecking.c:
         check: tagschecking: tests for tags serialization in muxers
         Adds a check unit test that aims to test tags serialization
         and deserialization consistency (in muxers). It provides a
         basic function that allows one to easily specify tags, a
         muxer and a demuxer and a test will be done to check if
         the tags have been consistently muxed and demuxed

2010-02-22 16:45:34 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
         qtmux: add xmp support
         Adds xmp metatags adding to qtmux.
         Fixes #609539

2010-03-11 17:17:15 +0000  Tim-Philipp Müller <[email protected]>

       * gst/quicktime/gstqtmoovrecover.c:
         qtmux: fix GST_ELEMENT_ERROR usage
         We need to pass (NULL) rather than NULL for empty arguments.

2010-03-10 10:23:23 -0600  Rob Clark <[email protected]>

       * gst/quicktime/gstqtmoovrecover.c:
         qtmux: fix compile error
         gst/quicktime/gstqtmoovrecover.c:268: warning: format not a string literal and no format arguments
         https://bugzilla.gnome.org/show_bug.cgi?id=612454

2010-02-22 19:38:15 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmuxmap.c:
         qtmux: Rename 'avc-sample' to 'avc' in caps
         Fixes #606662

2010-02-26 11:50:25 -0800  Michael Smith <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Take lock around use of (non-threadsafe) tagsetter interface.

2010-02-22 16:51:00 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: write all udta children atoms
         UDTA might have META and other children atoms
         together, write them all.

2010-02-22 10:48:11 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: Use internal sink pads list
         Due to GstCollectPads sink pads list being not reliably
         iteratable (when not inside the collected function) this
         patch adds a sink pads list to qtmux to be used when iterating
         sink pads on reset function.
         Fixes #609055

2010-02-16 17:13:09 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: prevent leaking hdlr name

2010-02-16 16:24:12 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         qtmux: support for ALAC
         Fixes #580731.

2010-02-16 14:19:04 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: refactor building stsd entry 'wave' extension

2010-02-08 11:51:52 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atomsrecovery.c:
         qtmux: atomsrecovery: Fix compilation problem
         Fixes a compilation error due to unused function result.

2009-12-12 16:07:15 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/atomsrecovery.c:
       * gst/quicktime/atomsrecovery.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmoovrecover.c:
       * gst/quicktime/gstqtmoovrecover.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
       * gst/quicktime/gstqtmuxplugin.c:
         qtmux: Adds moov recovery feature
         Adds a new property to qtmux that sets a path to a file to write
         and update data about the moov atom (that is not writen till the
         end of the file). If the pipeline/app crashes during execution it
         might be possible to recover the movie using the qtmoovrecover element.
         qtmoovrecover is an element that is also a pipeline. It is not
         meant to be used with other elements (it has no pads). It is merely
         a tool/utilitary to recover unfinished qtmux files.
         Fixes #601576

2010-01-27 19:06:53 -0800  Michael Smith <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: for fixed-sample size streams (PCM audio, etc) don't allocate an enormous buffer that we then won't use at all.

2010-01-27 15:37:37 -0800  Michael Smith <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: handle muxing adpcm correctly.

2010-01-22 13:36:04 -0800  Michael Smith <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: Set the mdia hdlr name field to what quicktime uses. Fix writing it since it's not null-terminated. Improves compatibility with some hardware players.

2010-01-22 13:30:07 -0800  Michael Smith <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: endianness in gstreamer is an int, not boolean.

2010-01-26 17:54:28 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
         qtmux: streamline moov data memory storage
         In particular, use arrays rather than (double) linked lists.

2010-01-26 13:44:04 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: g_free is NULL safe

2010-01-20 13:30:48 +0100  Benjamin Otte <[email protected]>

       * gst/quicktime/descriptors.c:
       * gst/quicktime/descriptors.h:
       * gst/quicktime/properties.c:
         [cleanup] Various style and cleanups
         Various fixes for gtk-doc warnings and making functions without
         arguments take void as parameter.

2010-01-14 08:09:03 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/gstqtmux.c:
         qtmux: Actually use new caps info on renegotiation
         Following the previous qtmux commit, this patch tries
         to use the new info added to the caps to fill the 'trak'
         atom's fields and children atoms. This way qtmux will
         use the late added 'codec_data' when h264parse adds
         it in the following pipeline:
         videotestsrc num-buffers=200 ! x264enc byte-stream=true ! \
         h264parse output-format=0 ! qtmux ! \
         filesink location=test.mov

2010-01-13 23:33:51 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/gstqtmux.c:
         qtmux: Do caps renegotiation when it only adds fields
         Qtmux can accept caps renegotiation if the new caps is a
         superset of the old one, meaning upstream added new info to
         the caps. This patch still doesn't make qtmux update any
         atoms info from the new info, but at least it doesn't
         reject the new caps anymore.
         A pipeline that reproduces this use case is:
         videotestsrc num-buffers=200 ! x264enc byte-stream=true ! \
         h264parse output-format=0 ! qtmux ! \
         filesink location=test.mov

2010-01-13 19:30:45 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: provide request pads under wider conditions
         Fixes #606859.

2010-01-13 10:35:00 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmuxmap.c:
         qtmux: Only accept avc-sample h264
         qtmux and mp4mux should only accept h264 in avc-sample
         format

2010-01-11 13:13:41 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         Rename aac's stream-format 'none' to 'raw'
         Renames aac's stream-format from previous commits from none to
         raw

2010-01-11 10:34:32 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         qtmux: Only accept stream-format='none' aac
         Only accept raw aac streams (stream-format=none) to avoid
         generating invalid files.
         Fixes #604925

2009-12-28 11:34:35 +0200  Stefan Kost <[email protected]>

       * gst/quicktime/gstqtmux.h:
         qtmux: also add .h file changes to unbreak the build

2009-12-27 23:51:50 +0200  Stefan Kost <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: use correct names from template for request pads
         The pads where names pad0, pad1, ...

2009-12-27 23:32:58 +0200  Stefan Kost <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: move errors _new_pad to the end

2009-12-21 13:58:30 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Accept non-paired uint tags
         Adds support for unpaired unsigned interger tags

2009-12-21 12:05:37 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
         qtmux: Adds new tags
         Maps more tags that are already posted by qtdemux
         Fixes #599759

2009-12-10 22:20:45 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
       * gst/quicktime/gstqtmuxmap.c:
         qtmux: support more of j2k
         Reads the new caps added to qtdemux by commit
         c917d65e6df0b5d585f905c7ad78a8a0a44b2cb0
         and adds its corresponding atoms.
         Also adds support for image/x-jpc as it is the same
         as image/x-jp2, except that the buffers need to be
         boxed inside a jp2c isom box before muxing. To solve
         this the QTPads now have a function that (if
         not NULL) is called when a buffer is collected. This
         function returns a replacement to the current collected
         buffer.
         Fixes #598916

2009-12-10 16:53:19 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: Maps 'classification' tag for 3gpp files
         Adds the mapping of 'classification' tags to writing of
         'clsf' atoms for gppmux.
         Based on a patch by: Lasse Laukkanen <[email protected]>

2009-12-08 17:59:04 -0800  Michael Smith <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/gstqtmux.c:
         qtmux: remove c++ comments and add some more comments.

2009-12-08 17:55:56 -0800  Michael Smith <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         qtmux: add ima adpcm support

2009-11-25 21:41:27 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: replace _scale with _scale_round
         Use the rounding version for improved sync between streams.
         Small variations in the duration when muxing might lead to
         cumullative wrong timestamping when demuxing.
         Fixes #602936

2009-11-24 16:16:56 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: use timestamps for muxing
         Try to use timestamps even when the stream has out of order
         timestamps, only fall back to durations when we detect an
         out of order buffer. Improves sync between streams.

2009-11-19 18:28:52 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: fix missing debug argument
         Adds a missing debug argument

2009-11-19 11:36:14 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: fix misinforming debug statement

2009-11-19 11:14:57 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: ensure writable buffer metadata before setting caps

2009-10-29 08:36:02 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         qtmux: support for SVQ3
         Adds support for muxing SVQ3 content. Usually this format
         has decoder info that must be passed in the 'seqh' field
         in the caps. It is also good to add the gama atom to make
         quicktime not crash.
         Fixes #587922

2009-11-17 09:26:05 -0300  Thiago Sousa Santos <thiagoss@redmoon.(none)>

       * gst/quicktime/gstqtmux.c:
         qtmux: do not leak a string
         Frees a string after use. Also does some code organization

2009-11-16 14:57:53 -0300  Thiago Sousa Santos <thiagoss@redmoon.(none)>

       * gst/quicktime/atoms.c:
         qtmux: do not add size to the pointer variable
         Do not wrongly add the result of the function to the
         pointer to the buffer size. Instead, check the result
         to see if the serialization was ok.
         Based on a patch by: "Carsten Kroll <[email protected]>"
         Fixes #602106

2009-11-06 10:34:39 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: handle 'late' streams
         When muxing streams, some can start later than others. qtmux
         now handle this by adding an empty edts entry with the
         duration of the 'lateness' to the stream's trak.
         It tolerates a stream to be up to 0.1s late.
         Fixes #586848

2009-11-05 21:35:56 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
         qtmux: adds the EDTS and ELTS atoms to atoms.c
         These atoms will be useful for signaling streams
         that start later in the file. As well for adding
         edit lists if needed sometime later.

2009-11-06 00:46:12 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/gstqtmux.c:
         qtmux: Adding some ifs for protection
         Adding somes ifs to protect against warning conditions
         that might happen when upstream element is not sane
         Fixes #600895

2009-10-16 10:47:32 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/ftypcc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
       * gst/quicktime/gstqtmuxmap.c:
       * gst/quicktime/gstqtmuxmap.h:
         gppmux: Add support for 3gr6
         Keep track of the chunk durations to be able to add 3gr6
         brand if it is a faststart file and the longest chunk is
         smaller than a sec. Implemented according to 3gpp
         TS 26.244 v6.4.0 (2005-09)
         Fixes #584361

2009-10-15 21:11:16 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Only push ftyp later (in faststart mode)
         In faststart mode, there is no need to send the ftyp
         right at the beginning of the stream. Waiting and sending it
         only later (when the moov atom is ready to be sent) provides
         us with more information about the stream and we can better
         select the compatible brands.

2009-10-15 17:51:39 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Improve error message
         Improve error message when we can't get or estimate the
         timestamp/duration of a buffer

2009-09-29 15:47:13 +0200  Marc-André Lureau <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: fix flags_as_uint to flags[]

2009-08-04 12:58:35 +0200  Jan Urbanski <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Don't require endianness field for 8 bit raw audio
         Fixes bug #590360.

2009-06-25 08:38:21 +0200  Edward Hervey <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: Remove unused variable.

2009-06-25 08:38:10 +0200  Edward Hervey <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Fix debug statement.

2009-06-11 15:54:42 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmux.h:
         qtmux: only use (64-bit) extended (mdat) atom size if needed.  Fixes #585319.

2009-06-10 14:46:14 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: set default movie timescale to microsecond units

2009-06-10 13:24:20 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
         qtmux: compress/optimize stsc writing

2009-06-10 12:42:44 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         qtmux: add 3GP style tagging (and refactor appropriately)

2009-06-01 23:00:44 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
         qtmux (and variants): handle pixel-aspect-ratio.  Fixes #584358.

2009-06-01 22:42:08 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/ftypcc.h:
       * gst/quicktime/gstqtmuxmap.c:
         gppmux: enhance ftyp brand heuristic.  Fixes #584360.

2009-05-28 13:56:10 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/fourcc.h:
       * gst/quicktime/gstqtmux.c:
         qtmux: use different stsd atom type for H263 for ISO and QT variants
         Fixes #584114.

2009-05-15 01:54:44 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/atoms.c:
         [qtmux] Fixes segfault when adding a blob as first tag.
         Moves tags data initialization to the function that actually appends
         the tags to the list. Fixes #582702
         Also fixes some style caught by the pre-commit hook.

2009-05-10 21:21:36 +0200  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmuxmap.c:
         gppmux: Add MPEG-4 part 2 to supported formats.  Fixes #581593.

2009-05-07 17:53:42 +0100  Christian Schaller <[email protected]>

       * gst/quicktime/gstqtmux.c:
         Add ranks to various muxers and encoders in -bad

2009-04-30 14:43:36 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmuxmap.c:
         qtmux: changes caps of src pads to video/quicktime, variant=something
         Take a look at bug #580005 for further info.

2009-04-24 18:53:36 -0300  Thiago Santos <[email protected]>

       * gst/quicktime/gstqtmuxmap.c:
         mp4mux: Changes src caps to application/x-iso-mp4
         Fixes #580005

2009-03-25 21:24:44 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: fix reusing element
         State change to READY and then back to PAUSED should still provide
         the proper structures as are otherwise freshly available following
         a request_new_pad.
         Pointed out by Thiago Santos.

2009-03-23 11:17:39 +0100  Wim Taymans <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: fix includes for lseek
         --

2009-03-20 14:20:16 +0100  LRN <lrn1986 at gmail dot com>

       * gst/quicktime/gstqtmux.c:
         win32: fix seeking in large files
         Use _lseeki64() on Windows to seek in large files.
         Fixes #576021.

2009-03-02 10:57:35 +0100  Edward Hervey <[email protected]>

       * gst/quicktime/gstqtmux.c:
         qtmux: Be a bit more verbose in our debug message when failing to renegotiate

2009-01-28 13:25:14 +0100  Mark Nauwelaerts <[email protected]>

       * gst/quicktime/atoms.c:
       * gst/quicktime/atoms.h:
       * gst/quicktime/gstqtmux.c:
       * gst/quicktime/gstqtmuxmap.c:
         Additional media type support in qtmux (and friends).
         Support AMR and H263 for both qtmux and gppmux,
         and add extensions in sample table description.

2009-01-09 21:59:48 +0000  David Schleef <[email protected]>

         gst/quicktime/gstqtmuxmap.c: Add video/x-qt-part and video/x-m4-part to caps so schroenc/schroparse can use it.  Fixes #5...
         Original commit message from CVS:
         * gst/quicktime/gstqtmuxmap.c: Add video/x-qt-part and video/x-m4-part
         to caps so schroenc/schroparse can use it.  Fixes #566958

2008-12-19 18:53:47 +0000  Mark Nauwelaerts <[email protected]>

         gst/quicktime/gstqtmux.c: Do not tempt or suggest to violate gst_collect_pads API specification.
         Original commit message from CVS:
         * gst/quicktime/gstqtmux.c: (gst_qt_mux_change_state):
         Do not tempt or suggest to violate gst_collect_pads API specification.

2008-12-19 18:33:47 +0000  Mark Nauwelaerts <[email protected]>

         gst/quicktime/: Dual license qtmux LGPL/MIT.  Fixes #564232.
         Original commit message from CVS:
         * gst/quicktime/atoms.c:
         * gst/quicktime/atoms.h:
         * gst/quicktime/descriptors.c:
         * gst/quicktime/descriptors.h:
         * gst/quicktime/fourcc.h:
         * gst/quicktime/ftypcc.h:
         * gst/quicktime/gstqtmux.c:
         * gst/quicktime/gstqtmux.h:
         * gst/quicktime/gstqtmuxmap.c:
         * gst/quicktime/gstqtmuxmap.h:
         * gst/quicktime/properties.c:
         * gst/quicktime/properties.h:
         Dual license qtmux LGPL/MIT.  Fixes #564232.

2008-12-16 16:26:52 +0000  Stefan Kost <[email protected]>

         Totally remove the internal taglists and fully use tagsetter. Fixes various tag muxing issues.
         Original commit message from CVS:
         * ext/celt/gstceltenc.c:
         * ext/celt/gstceltenc.h:
         * ext/metadata/gstmetadatamux.c:
         * gst/quicktime/gstqtmux.c:
         * gst/quicktime/gstqtmux.h:
         Totally remove the internal taglists and fully use tagsetter. Fixes
         various tag muxing issues.

2008-12-01 16:37:45 +0000  Mark Nauwelaerts <[email protected]>

         gst/quicktime/atoms.c: Fix mj2 sample description metadata construction.
         Original commit message from CVS:
         * gst/quicktime/atoms.c: (build_jp2h_extension):
         Fix mj2 sample description metadata construction.

2008-11-18 01:09:09 +0000  David Schleef <[email protected]>

         gst/quicktime/gstqtmux.c: Quiet a debugging message that I recently added.
         Original commit message from CVS:
         * gst/quicktime/gstqtmux.c: Quiet a debugging message that I recently
         added.

2008-11-15 02:56:31 +0000  David Schleef <[email protected]>

         gst/quicktime/gstqtmux.*: Use dts from GST_BUFFER_OFFSET_END() for video/x-qt-part.
         Original commit message from CVS:
         * gst/quicktime/gstqtmux.c:
         * gst/quicktime/gstqtmux.h:
         Use dts from GST_BUFFER_OFFSET_END() for video/x-qt-part.

2008-11-14 21:24:51 +0000  Mark Nauwelaerts <[email protected]>

         gst/quicktime/: Revert previous commit.
         Original commit message from CVS:
         * gst/quicktime/atoms.c:
         * gst/quicktime/atoms.h:
         * gst/quicktime/descriptors.c:
         * gst/quicktime/descriptors.h:
         * gst/quicktime/fourcc.h:
         * gst/quicktime/ftypcc.h:
         * gst/quicktime/gstqtmux.c:
         * gst/quicktime/gstqtmux.h:
         * gst/quicktime/gstqtmuxmap.c:
         * gst/quicktime/gstqtmuxmap.h:
         * gst/quicktime/properties.c:
         * gst/quicktime/properties.h:
         Revert previous commit.

2008-11-14 20:38:18 +0000  Mark Nauwelaerts <[email protected]>

         gst/quicktime/: Dual license LGPL/MIT, as apparently supposed to.
         Original commit message from CVS:
         * gst/quicktime/atoms.c:
         * gst/quicktime/atoms.h:
         * gst/quicktime/descriptors.c:
         * gst/quicktime/descriptors.h:
         * gst/quicktime/fourcc.h:
         * gst/quicktime/ftypcc.h:
         * gst/quicktime/gstqtmux.c:
         * gst/quicktime/gstqtmux.h:
         * gst/quicktime/gstqtmuxmap.c:
         * gst/quicktime/gstqtmuxmap.h:
         * gst/quicktime/properties.c:
         * gst/quicktime/properties.h:
         Dual license LGPL/MIT, as apparently supposed to.

2008-11-14 20:17:10 +0000  Mark Nauwelaerts <[email protected]>

         gst/quicktime/: Cut detour in sample description extension construction.
         Original commit message from CVS:
         * gst/quicktime/atoms.c: (build_esds_extension),
         (build_mov_aac_extension), (build_jp2h_extension),
         (build_codec_data_extension):
         * gst/quicktime/atoms.h:
         * gst/quicktime/fourcc.h:
         * gst/quicktime/gstqtmux.c: (gst_qt_mux_audio_sink_set_caps),
         (gst_qt_mux_video_sink_set_caps):
         * gst/quicktime/gstqtmuxmap.c: (gst_qt_mux_map_format_to_header):
         Cut detour in sample description extension construction.
         Also actually implement ISO JPEG2000 mj2 format.

2008-11-11 19:31:35 +0000  Mark Nauwelaerts <[email protected]>

         tests/check/: Add unit test for qtmux.
         Original commit message from CVS:
         * tests/check/Makefile.am:
         * tests/check/elements/qtmux.c: (setup_src_pad),
         (teardown_src_pad), (setup_qtmux), (cleanup_qtmux),
         (check_qtmux_pad), (GST_START_TEST), (qtmux_suite), (main):
         Add unit test for qtmux.

2008-11-11 19:24:12 +0000  Mark Nauwelaerts <[email protected]>

         gst/quicktime/gstqtmux.c: Add some more safety/sanity checks in tag manipulation.
         Original commit message from CVS:
         * gst/quicktime/gstqtmux.c: (gst_qt_mux_add_metadata_tags):
         Add some more safety/sanity checks in tag manipulation.

2008-11-08 02:00:58 +0000  Thiago Sousa Santos <[email protected]>

         Copy qtmux from revision 148 of the gst-qtmux repository.
         Original commit message from CVS:
         patch by: Thiago Sousa Santos <[email protected]>
         * configure.ac:
         * gst/quicktime/Makefile.am:
         * gst/quicktime/atoms.c:
         * gst/quicktime/atoms.h:
         * gst/quicktime/descriptors.c:
         * gst/quicktime/descriptors.h:
         * gst/quicktime/fourcc.h:
         * gst/quicktime/ftypcc.h:
         * gst/quicktime/gstqtmux.c:
         * gst/quicktime/gstqtmux.h:
         * gst/quicktime/gstqtmuxmap.c:
         * gst/quicktime/gstqtmuxmap.h:
         * gst/quicktime/properties.c:
         * gst/quicktime/properties.h:
         Copy qtmux from revision 148 of the gst-qtmux repository.
         Fixes #550280.

2011-04-12 18:25:34 +0100  Tim-Philipp Müller <[email protected]>

       * Android.mk:
       * configure.ac:
       * docs/plugins/Makefile.am:
       * docs/plugins/inspect/plugin-quicktime.xml:
       * gst/qtdemux/LEGAL:
       * gst/qtdemux/Makefile.am:
       * gst/qtdemux/gstrtpxqtdepay.c:
       * gst/qtdemux/gstrtpxqtdepay.h:
       * gst/qtdemux/qtatomparser.h:
       * gst/qtdemux/qtdemux.c:
       * gst/qtdemux/qtdemux.h:
       * gst/qtdemux/qtdemux.vcproj:
       * gst/qtdemux/qtdemux_dump.c:
       * gst/qtdemux/qtdemux_dump.h:
       * gst/qtdemux/qtdemux_fourcc.h:
       * gst/qtdemux/qtdemux_lang.c:
       * gst/qtdemux/qtdemux_lang.h:
       * gst/qtdemux/qtdemux_types.c:
       * gst/qtdemux/qtdemux_types.h:
       * gst/qtdemux/qtpalette.h:
       * gst/qtdemux/quicktime.c:
       * gst/quicktime/LEGAL:
       * gst/quicktime/Makefile.am:
       * gst/quicktime/gstrtpxqtdepay.c:
       * gst/quicktime/gstrtpxqtdepay.h:
       * gst/quicktime/qtatomparser.h:
       * gst/quicktime/qtdemux.c:
       * gst/quicktime/qtdemux.h:
       * gst/quicktime/qtdemux.vcproj:
       * gst/quicktime/qtdemux_dump.c:
       * gst/quicktime/qtdemux_dump.h:
       * gst/quicktime/qtdemux_fourcc.h:
       * gst/quicktime/qtdemux_lang.c:
       * gst/quicktime/qtdemux_lang.h:
       * gst/quicktime/qtdemux_types.c:
       * gst/quicktime/qtdemux_types.h:
       * gst/quicktime/qtpalette.h:
       * gst/quicktime/quicktime.c:
       * po/POTFILES.in:
         qtdemux: rename directory to quicktime to match plugin name
         In preparation for qtmux moving to -good.

2011-04-12 11:49:54 +0200  Mark Nauwelaerts <[email protected]>

       * gst/flv/gstflvdemux.c:
         flvdemux: simplify framerate fraction calculation

2011-01-24 15:45:28 -0600  Leonardo Sandoval <[email protected]>

       * gst/flv/gstflvdemux.c:
       * gst/flv/gstflvdemux.h:
         flvdemux: add width, height and framerate to caps when present on onMetaData
         Fixes #640483.

2010-08-24 13:57:55 +0200  Pascal Buhler <[email protected]>

       * gst/rtpmanager/gstrtpssrcdemux.c:
         rtpssrcdemux: Unknown SSRC is not fatal
         https://bugzilla.gnome.org/show_bug.cgi?id=646966

2010-08-24 13:54:58 +0200  Pascal Buhler <[email protected]>

       * gst/rtpmanager/rtpsession.c:
         rtpsession: Number of active sources should be updated whenever the status of the source changes to active
         Forward-ported by Olivier Crête
         https://bugzilla.gnome.org/show_bug.cgi?id=646965

2010-06-23 11:29:58 +0200  Havard Graff <[email protected]>

       * gst/rtpmanager/rtpsession.c:
         rtpmanager: ignore a BYE if it is sent with our internal SSRC
         https://bugzilla.gnome.org/show_bug.cgi?id=646964

2010-01-29 09:49:48 -0300  Thiago Santos <[email protected]>

       * gst/qtdemux/qtdemux.c:
         qtdemux: Adds more h264 fields to its caps
         Adds alignment=au and stream-format=avc to h264 caps
         Fixes #606662

2011-04-11 12:44:19 +0300  Stefan Kost <[email protected]>

       * configure.ac:
       * ext/jack/gstjackaudiosink.c:
       * ext/jack/gstjackaudiosrc.c:
         jack: also handle deprecations for jack 1.9.7
         Jack 1.9.7 was released 20.Mar.2011, need to handle the deprecated api for this
         version too.

2011-04-10 18:56:52 -0400  Thibault Saunier <[email protected]>

       * Android.mk:
       * android/NOTICE:
       * android/apetag.mk:
       * android/avi.mk:
       * android/flv.mk:
       * android/gst/rtpmanager/gstrtpbin-marshal.c:
       * android/gst/rtpmanager/gstrtpbin-marshal.h:
       * android/gst/udp/gstudp-enumtypes.c:
       * android/gst/udp/gstudp-enumtypes.h:
       * android/gst/udp/gstudp-marshal.c:
       * android/gst/udp/gstudp-marshal.h:
       * android/icydemux.mk:
       * android/id3demux.mk:
       * android/qtdemux.mk:
       * android/rtp.mk:
       * android/rtpmanager.mk:
       * android/rtsp.mk:
       * android/soup.mk:
       * android/udp.mk:
       * android/wavenc.mk:
       * android/wavparse.mk:
       * gst/alpha/Makefile.am:
       * gst/apetag/Makefile.am:
       * gst/audiofx/Makefile.am:
       * gst/auparse/Makefile.am:
       * gst/autodetect/Makefile.am:
       * gst/avi/Makefile.am:
       * gst/cutter/Makefile.am:
       * gst/debugutils/Makefile.am:
       * gst/deinterlace/Makefile.am:
       * gst/effectv/Makefile.am:
       * gst/equalizer/Makefile.am:
       * gst/flv/Makefile.am:
       * gst/flx/Makefile.am:
       * gst/goom/Makefile.am:
       * gst/goom2k1/Makefile.am:
       * gst/icydemux/Makefile.am:
       * gst/id3demux/Makefile.am:
       * gst/imagefreeze/Makefile.am:
       * gst/interleave/Makefile.am:
       * gst/law/Makefile.am:
       * gst/level/Makefile.am:
       * gst/matroska/Makefile.am:
       * gst/monoscope/Makefile.am:
       * gst/multifile/Makefile.am:
       * gst/multipart/Makefile.am:
       * gst/qtdemux/Makefile.am:
       * gst/replaygain/Makefile.am:
       * gst/rtp/Makefile.am:
       * gst/rtpmanager/Makefile.am:
       * gst/rtsp/Makefile.am:
       * gst/shapewipe/Makefile.am:
       * gst/smpte/Makefile.am:
       * gst/spectrum/Makefile.am:
       * gst/udp/Makefile.am:
       * gst/videobox/Makefile.am:
       * gst/videocrop/Makefile.am:
       * gst/videofilter/Makefile.am:
       * gst/videomixer/Makefile.am:
       * gst/wavenc/Makefile.am:
       * gst/wavparse/Makefile.am:
       * gst/y4m/Makefile.am:
         android: Make it ready for androgenizer
         Remove the android/ top dir
         Fixe the Makefile.am to be androgenized
         To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files.
         Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git

2011-04-05 21:14:43 +0200  Haakon Sporsheim <[email protected]>

       * gst/rtp/gstrtpgstpay.c:
         rtpgstpay: declare frag_offset to hold 32bits.
         As specified in documenation above and below.
         https://bugzilla.gnome.org/show_bug.cgi?id=646954

2011-04-09 12:41:48 +0200  Havard Graff <[email protected]>

       * gst/rtpmanager/gstrtpsession.c:
         rtpsession: fix wrongly applied patch
         Obviously recv_rtp_sink does not have much to do with send_rtcp_src...
         See commit 046ff170.
         https://bugzilla.gnome.org/show_bug.cgi?id=647263

2011-04-08 15:59:58 +0100  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstac3parse.c:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstdcaparse.c:
       * gst/audioparsers/gstmpegaudioparse.c:
         audioparsers: update for set_frame_props -> set_frame_rate API change

2011-04-08 00:03:21 +0100  Tim-Philipp Müller <[email protected]>

       * tests/check/Makefile.am:
       * tests/check/elements/.gitignore:
         tests: hook up audioparser unit tests

2011-04-07 18:30:49 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstmpegaudioparse.c:
         mpegaudioparse: relax sync match a bit when draining
         ... to at least allow initial caps change (but no further caps jitter).
         Fixes unit test again after previous change.

2011-04-07 15:21:10 +0100  Tim-Philipp Müller <[email protected]>

       * docs/plugins/gst-plugins-good-plugins.args:
       * docs/plugins/gst-plugins-good-plugins.hierarchy:
       * docs/plugins/gst-plugins-good-plugins.interfaces:
       * docs/plugins/gst-plugins-good-plugins.prerequisites:
       * docs/plugins/inspect/plugin-avi.xml:
       * docs/plugins/inspect/plugin-cairo.xml:
       * docs/plugins/inspect/plugin-flv.xml:
       * docs/plugins/inspect/plugin-matroska.xml:
       * docs/plugins/inspect/plugin-monoscope.xml:
       * docs/plugins/inspect/plugin-png.xml:
       * docs/plugins/inspect/plugin-video4linux2.xml:
       * docs/plugins/inspect/plugin-videofilter.xml:
         docs: update for changes in git

2011-04-07 15:20:19 +0100  Tim-Philipp Müller <[email protected]>

       * docs/plugins/Makefile.am:
       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
       * docs/plugins/gst-plugins-good-plugins-sections.txt:
       * docs/plugins/inspect/plugin-audioparsers.xml:
         docs: add audioparsers to docs

2011-04-07 15:07:15 +0100  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstaacparse.h:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstamrparse.h:
       * gst/audioparsers/plugin.c:
         aacparse, amrparse: gst_fooparse_xyz -> gst_foo_parse_xyz to match GstFooParse
         See moving-plugins checklist.

2011-04-07 14:43:42 +0100  Tim-Philipp Müller <[email protected]>

       * configure.ac:
       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/plugin.c:
         audioparsers: hook up to build

2011-04-07 13:26:41 +0100  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstaacparse.h:
       * gst/audioparsers/gstac3parse.c:
       * gst/audioparsers/gstac3parse.h:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstamrparse.h:
       * gst/audioparsers/gstdcaparse.c:
       * gst/audioparsers/gstdcaparse.h:
       * gst/audioparsers/gstflacparse.c:
       * gst/audioparsers/gstflacparse.h:
       * gst/audioparsers/gstmpegaudioparse.c:
       * gst/audioparsers/gstmpegaudioparse.h:
         audioparsers: port to new GstBaseParse in core

2011-04-04 20:55:39 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstmpegaudioparse.c:
         mpegaudioparse: require tighter sync match when draining

2011-04-01 14:47:43 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstmpegaudioparse.c:
       * gst/audioparsers/gstmpegaudioparse.h:
         mpegaudioparse: Parse encoder delay and encoder padding from the LAME header if present

2011-03-09 23:06:14 +0530  Arun Raghavan <[email protected]>

       * gst/audioparsers/plugin.c:
         dcaparse: Bump rank to primary+1
         Seems to work fine with a reasonably wide range of media, so bumping
         rank.

2011-03-23 22:02:37 +0530  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstdcaparse.c:
       * gst/audioparsers/gstdcaparse.h:
         dcaparse: Expose frame size in caps
         This exports the size of the frame (number of bytes from one sync point
         to the next) as the "frame_size" field in caps.

2011-03-09 23:03:10 +0530  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstdcaparse.c:
       * gst/audioparsers/gstdcaparse.h:
         dcaparse: Expose block size in caps
         This sets the "block_size" field on caps as the number of samples
         encoded in one frame.

2011-03-16 15:53:13 +0000  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstmpegaudioparse.c:
         mpegaudioparse: add FIXME for making the base class use xing seek tables better

2011-03-14 18:25:25 +0100  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstdcaparse.c:
       * gst/audioparsers/gstdcaparse.h:
         dcaparse: Add depth and endianness to the caps
         Some decoders can only handle specific endianness or a fixed
         depth and this allows better negotiation.
         Fixes bug #644208.

2011-02-26 13:53:44 -0800  David Schleef <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         Revert "aacparse: allow parsed frames on sink pad"
         This reverts commit e49b89d5c5a1244fa0dcb8bb4996e38fb9bff9e5.

2011-02-23 17:25:03 -0800  David Schleef <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         aacparse: allow parsed frames on sink pad

2010-10-13 16:12:02 -0700  David Schleef <[email protected]>

       * tests/check/elements/parser.c:
         tests: fix baseparse test

2010-10-13 15:39:55 -0700  David Schleef <[email protected]>

       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/gstaacparse.h:
       * gst/audioparsers/gstac3parse.h:
       * gst/audioparsers/gstamrparse.h:
       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
       * gst/audioparsers/gstdcaparse.h:
       * gst/audioparsers/gstflacparse.h:
       * gst/audioparsers/gstmpegaudioparse.h:
         baseparse: Create baseparse library

2011-02-07 14:46:57 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: tune QUERY_SEEKING response
         Even if we currently do not have a duration yet, assume seekable if
         it looks like we'll likely be able to determine it later on
         (which coincides with needed information to perform seeking).
         Fixes #641047.

2011-02-08 23:39:24 +0530  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: Update min/max bitrate before first posting them
         This avoids posting an initial min-bitrate of G_UINTMAX and max-bitrate
         of 0.
         https://bugzilla.gnome.org/show_bug.cgi?id=641857

2011-02-08 23:50:13 +0530  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstmpegaudioparse.c:
       * gst/audioparsers/gstmpegaudioparse.h:
         mpegaudioparse: Post CBR bitrate as nominal bitrate
         Even if VBR headers are missing, we can't guarantee that a stream is in
         fact a CBR stream, so it's safer to let baseparse calculate the average
         bitrate rather than assume a CBR stream. However, in order to make
         /some/ metadata available before the requisite number of frames have
         been parsed, this posts the bitrate from the non-VBR headers as the
         nominal bitrate.
         https://bugzilla.gnome.org/show_bug.cgi?id=641858

2010-09-06 14:10:11 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstamrparse.c:
         amrparse: a valid amr-wb frame should not have reserved frame type index
         See #639715.

2011-01-27 16:52:34 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: improve handling of dependent substream frames
         In particular, timestamps of these should track main-stream timestamps.

2011-01-21 14:53:39 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: tune default duration estimate update interval
         Rather than a fixed default frame count, estimate frame count to aim for
         an interval duration depending on fps if available, otherwise use old
         fixed default.

2011-01-14 15:16:04 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: reverse playback; mind keyframes for fragment boundary

2011-01-13 15:26:21 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstamrparse.c:
         amrparse: properly check for sufficient available data prior to access

2011-01-12 14:40:37 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: ensure non-empty candidate frames

2011-01-11 15:24:23 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: clarify some debug statements

2011-01-11 15:24:02 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: properly track upstream timestamps
         ... rather than with a delay.

2011-01-11 15:23:29 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: need proper frame duration to obtain sensible frame bitrate

2011-01-11 15:22:51 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: proper initial values for index tracking variables

2011-01-11 12:05:13 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: arrange for consistent event handling

2011-01-10 16:59:59 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.h:
         baseparse: header style cleaning

2011-01-10 17:07:38 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: provide some more initial frame metadata in parse_frame
         ... and document accordingly.

2011-01-10 16:56:36 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
       * gst/audioparsers/gstflacparse.c:
         baseparse: refactor passthrough into format flags
         Also add a format flag to signal baseparse that subclass/format can provide
         (parsed) timestamp rather than an estimated one.  In particular, such "strong"
         timestamp then allows to e.g. determine duration.

2011-01-10 15:34:48 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstac3parse.c:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
       * gst/audioparsers/gstdcaparse.c:
       * gst/audioparsers/gstflacparse.c:
       * gst/audioparsers/gstmpegaudioparse.c:
         baseparse: introduce a baseparse frame to serve as context
         ... and adjust subclass parsers accordingly

2011-01-07 16:39:51 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: restrict duration scanning to pull mode and avoid extra set_caps call

2011-01-07 15:58:49 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: update some documentation
         Also add some more debug.

2011-01-06 11:41:44 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: allow increasing min_size for current frame parsing only
         Also check that subclass actually either directs to skip bytes or
         increases expected frame size to avoid going nowhere in bogus
         indefinite looping.

2011-01-14 15:26:37 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baesparse: fix refactor regression in loop based parsing

2011-01-06 11:16:56 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: pass all available data to subclass rather than minimum
         Also reduce some adapter calls and add a few debug statements.

2010-12-10 15:59:49 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: fix reverse playback handling

2010-12-10 14:56:13 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: minor typo and debug statement cleanup

2010-12-10 14:40:05 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: reduce locking
         ... which is either already mute and/or implicitly handled by STREAM_LOCK.

2011-01-14 14:08:38 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: avoid loop in frame locating interpolation

2011-01-19 18:26:30 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: mind gst_buffer_unref not liking NULL
         Fixes #639950.

2011-01-14 16:30:11 -0300  Thiago Santos <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         audioparsers: baseparse: Be careful to not lose the event ref
         Don't unref the event if it hasn't been handled, because the caller
         assumes it is still valid and might reuse it.
         I ran into this problem when transcoding an AVI (with mp3 inside)
         to gpp.
         https://bugzilla.gnome.org/show_bug.cgi?id=639555

2011-01-13 17:10:13 +0000  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstdcaparse.c:
         dcaparse: fix sync word for 14-bit little endian coding
         Fix copy'n'paste bug that made us look for the raw little endian
         sync word twice instead of looking for the 14-bit LE sync word
         as well. Fixes parsing of such streams (see #636234 for sample file).

2011-01-13 16:27:04 +0000  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         docs: minor baseparse docs/comment fixes
         Remove copy'n'paste leftovers.

2011-01-06 12:49:43 +0100  Edward Hervey <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Fix unitialized variable on macosx

2010-12-13 15:17:29 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: relax bsid checking
         ... to the widest possible spec interpretation.
         Fixes #637062.

2010-12-03 18:11:56 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstac3parse.c:
       * gst/audioparsers/gstamrparse.c:
         audioparsers: update some documentation

2010-12-03 18:11:38 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstmpegaudioparse.c:
         mpegaudioparse: add to documentation

2010-12-03 18:11:09 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstdcaparse.c:
         dcaparse: add to documentation

2010-11-08 19:58:31 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: increase keyframe awareness
         ... which is not particular relevant for audio parsing, but more so
         in video cases.  In particular, auto-determine if dealing with video (caps).

2010-12-01 15:28:53 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
       * gst/audioparsers/gstac3parse.h:
         ac3parse: use proper EAC-3 caps

2010-11-30 15:41:02 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: avoid unexpected stray metadata

2010-11-30 15:40:28 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: use proper _NONE output value when applicable

2010-11-25 18:56:42 +0100  Edward Hervey <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstbaseparse.c:
         audioparsers: Remove dead assignments

2010-11-25 17:14:23 +0100  Andoni Morales Alastruey <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         audioparse: fix possible division-by-zero
         https://bugzilla.gnome.org/show_bug.cgi?id=635786

2010-11-17 16:23:42 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: use correct offset when adding index entry
         ... bearing in mind that BUFFER_OFFSET is media specific and may not
         reflect the basic offset after having been parsed.

2010-11-17 14:30:09 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: enhancements for timestamp marked framed formats
         That is, as such formats allow subclass to extract position from frame,
         it is possible to extract duration (if not otherwise provided)
         from (near) last frame, and a seek can fairly accurately target the required
         position.
         Fixes #631389.

2010-11-16 17:06:14 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: refactor frame scanning peformed by _loop

2010-11-16 18:04:00 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: slightly optimize sending of pending newsegment events

2010-11-16 17:04:35 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: minor fixes and enhancements
         Arrange for upstream as well as downstream flushing when seeking.
         Also determine upstream size as well as seekability.  Adjust some comments
         to reality and employ debug statement in proper order.

2010-11-17 15:33:36 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         aacparse: minor cleanups

2010-11-17 15:24:37 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         aacparse: fix regression in ADIF src caps setting

2010-11-16 12:11:53 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
       * gst/audioparsers/gstflacparse.h:
         flacparse: parse seektable
         Fixes #631389 (partially).

2010-11-16 12:08:54 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: minor refactor and enable default baseparse segment clipping

2010-11-09 19:38:25 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstmpegaudioparse.c:
         mpegaudioparse: fix silly leak in _reset

2010-10-29 14:08:58 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: use only upstream duration if it provides one

2010-10-25 14:15:50 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: reflow update_bitrate code
         ... which makes local variables represent real state better, and avoids
         triggering unneeded updates/actions.

2010-10-25 14:13:51 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: add some debug statements

2010-10-19 23:25:54 +0100  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstdcaparse.c:
         dcaparse: init variable to make osx build bot happy
         gstdcaparse.c: In function 'gst_dca_parse_check_valid_frame':
         gstdcaparse.c:246: warning: 'best_sync' may be used uninitialized in this function

2010-10-19 00:15:20 +0100  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/gstdcaparse.c:
       * gst/audioparsers/gstdcaparse.h:
       * gst/audioparsers/plugin.c:
         audioparsers: add very basic dts/dca parser
         Still some issues, e.g. with seekable queries in totem, but also
         processing already-chunked input (created with matroskademux ! gdppay).

2010-10-14 16:48:21 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: properly parse e-ac3 frame header
         Also add a few debug statements.

2010-10-13 11:00:01 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: tweak setting buffer metadata; avoid timestamp jitter
         Fixes #631993.

2010-10-12 18:07:49 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstaacparse.h:
         aacparse: streamline src caps setting
         In particular, also set src caps whenever changes in stream warrant doing so.

2010-10-12 10:28:33 +0200  Sebastian Dröge <[email protected]>

       * tests/check/elements/flacparse.c:
         flacparse: Adjust unit tests to new flacparse behaviour
         Garbage after frames is now included in the frames because flacparse
         has no easy way to detect the real end of a frame. Decoders are
         expected to everything after the frame because only decoding the
         bitstream will reveal the real end of the frame.
         Fixes bug #631814.

2010-10-12 10:27:53 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Don't drop the last frame if it is followed by garbage
         See bug #631814.

2010-10-11 17:49:46 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: perform bitrate handling and posting after newsegment sending

2010-10-11 17:36:19 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: immediately post subclass provided bitrate

2010-10-11 17:06:48 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: fix parsing with unknown framesizes
         Fixes #631814 (mostly).

2010-10-07 23:37:36 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Simplify frame header parsing by using lookup tables
         Based on a patch by Felipe Contreras.
         See bug #631200.

2010-10-07 23:28:08 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
       * gst/audioparsers/gstflacparse.h:
         flacparse: Don't parse the complete FLAC frames but only look for valid frame headers
         Thanks to Felipe Contreras for the suggestion. This is partially
         based on his patches and makes flacparse more than 3.5 times faster.
         Looking for valid frame headers is unlikely to give false positives
         because every frame header is at least 9 bytes long, contains a
         14 bit sync code and a 8 bit checksum over the first 8 bytes.
         Fixes bug #631200.

2010-10-06 18:32:51 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Really post tags only after the initial newsegment event
         The first newsegment event will be send by the first call to
         gst_base_parse_push_buffer() if necessary, posting the tags
         before that is not a good idea. Instead do it from the
         GstBaseParse::pre_push_buffer vfunc.

2010-10-05 11:17:52 +0100  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         Revert "baseparse: add skip property"
         This reverts commit b5a3d60363d837a10f0533c141ec93d10b742312.
         Reverting this for now, since no one really seems to remember why this
         property exists or what it could possibly be good for. It seems to have
         been in the original mp3parse since the beginning of time and was back-
         ported from there.

2010-10-04 10:41:52 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Fix uninitialized variable compiler warnings
         These warnings are wrong, the variables are only used if they were
         initialized by the bit reader.

2010-09-14 02:48:58 +0300  Felipe Contreras <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: fix picture parsing
         Signed-off-by: Felipe Contreras <[email protected]>

2010-10-03 23:54:49 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Push tags before the header buffers are pushed

2010-08-02 20:50:21 +0300  Felipe Contreras <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: trivial caps fix
         Signed-off-by: Felipe Contreras <[email protected]>

2010-10-03 23:50:29 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         audioparser: Let the format string agree with the parameters to fix compiler warning

2010-10-03 15:41:20 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: Use unchecked versions of the bitreader get functions
         We didn't check the return values anyway...

2010-09-22 15:44:43 +0530  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: Fix debug output
         We lose the reference to the buffer after gst_pad_push(), so the debug
         print should happen before.
         https://bugzilla.gnome.org/show_bug.cgi?id=622276

2010-10-01 12:34:55 +0200  Mark Nauwelaerts <[email protected]>

       * tests/check/elements/flacparse.c:
       * tests/check/elements/parser.c:
       * tests/check/elements/parser.h:
         audioparsers: add flacparse unit test
         ... and tweak parser test helper in the process.

2010-09-29 16:12:42 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: support reverse playback
         ... in pull mode or upstream driven.

2010-09-27 12:16:43 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: remove done TODOs and update documentation

2010-09-25 14:40:54 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: use determined seekability in answering SEEKING query

2010-09-25 14:32:06 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: add skip property

2010-09-25 13:59:39 +0200  Mark Nauwelaerts <[email protected]>

       * tests/check/elements/ac3parse.c:
       * tests/check/elements/mpegaudioparse.c:
         audioparsers: add ac3parse and mpegaudioparse unit test

2010-09-25 13:59:18 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/gstmpegaudioparse.c:
       * gst/audioparsers/gstmpegaudioparse.h:
       * gst/audioparsers/plugin.c:
         mpegaudioparse: initial version
         ... adequately equivalent to mp3parse, so lets boldly set it
         to higher rank.

2010-09-25 14:01:07 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         aacparse: set minimum frame size at _start
         ... rather than one time at _init.

2010-09-25 13:50:51 +0200  Mark Nauwelaerts <[email protected]>

       * tests/check/elements/aacparse.c:
       * tests/check/elements/amrparse.c:
       * tests/check/elements/parser.c:
       * tests/check/elements/parser.h:
         audioparsers: refactor existing unit tests using common helper

2010-09-22 15:07:09 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstac3parse.c:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: use _set_frame_props to configure frame lead_in and lead_out
         ... provided a corresponding decoder with sufficient leading and following
         frames to carry out full decoding for a particular segment.

2010-09-22 14:13:17 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstac3parse.c:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
       * gst/audioparsers/gstflacparse.c:
         baseparse: use _set_duration to configure duration update interval
         ... as it logically belongs there as one or the other; either subclass
         can provide a duration, or an estimate must be made (reguarly updated).

2010-09-22 13:55:20 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: localize use of provided fps information

2010-09-22 12:13:12 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: seek table and accurate seek support

2010-09-21 13:57:10 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: proper and more extended segment and seek handling
         That is, loop pause handling, segment seek support, newsegment for gaps, etc

2010-09-21 10:57:04 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: add index support

2010-09-21 09:59:56 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: refactor state reset

2010-09-20 16:39:37 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: prevent indefinite resyncing

2010-09-20 13:57:55 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: specific EOS handling if no output so far

2010-09-20 13:31:57 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: adjust _set_frame_prop documentation and set default as claimed

2010-09-20 13:30:54 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: fix bitrate copy-and-paste and update heuristic

2010-09-17 18:33:29 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: post duration message if average bitrates is updated

2010-09-17 18:24:22 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: remove is_seekable vmethod and use a set_seek instead
         Seekability, like duration, etc is unlikely to change (frequently), and
         the default assumption covers most cases, so let subclass set when needed.
         At the same time, allow subclass to indicate if it has seek-metadata (table)
         available, and possibly have it provide an average bitrate.

2010-09-17 17:35:40 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: remove redundant default is_seekable

2010-09-17 17:21:46 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: add another hook for subclass prior to pushing buffer
         ... and allow subclass to perform custom segment clipping, or to
         emit tags or messages at this time.

2010-09-17 17:19:37 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: 0 converts to 0 by default

2010-09-16 18:56:46 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         basepase: refactor conversion using helper function and export default convert

2010-09-16 18:35:47 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: streamline query handling

2010-09-16 11:51:20 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: cleanup struct and remove unused member

2010-08-16 11:04:37 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/plugin.c:
         audioparsers: increase ranks to enable auto-plugging
         Because we can, and should, have some shakedown testing before having
         these make it into -good later on ...

2010-09-22 16:07:24 +0530  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: Allow chaining of subclass event handlers
         This allows the child class to chain its event handler with
         GstBaseParse, so that subclasses don't have to duplicate all the default
         event handling logic.
         https://bugzilla.gnome.org/show_bug.cgi?id=622276

2010-08-27 18:35:10 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: Don't use GST_FLOW_IS_FATAL()
         Also don't post an error message for UNEXPECTED and do it
         for NOT_LINKED.

2010-09-06 14:12:00 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: non-TIME seek event is simply not handled

2010-06-15 15:34:05 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: fix seek event ref handling

2010-06-15 15:33:37 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: prevent arithmetic overflows in pull mode buffer cache handling

2010-06-15 15:32:34 +0200  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: fix seek handling
         Allow a few more seek event type combinations, and really use the result
         of gst_segment_set_seek to perform the seek.  Also add some debug.

2010-04-12 18:07:29 +0200  Edward Hervey <[email protected]>

       * tests/check/elements/aacparse.c:
       * tests/check/elements/amrparse.c:
         check: Don't re-declare 'GList *buffers' in the tests
         It's an external which lives in gstcheck.c. Redeclaring it makes some
         compilers/architectures think the 'buffers' in the individual tests are
         a different symbol... and therefore we end up comparing holodecks with
         oranges.

2010-03-26 18:56:49 +0000  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: Don't emit bitrate tags too early
         We wait to parse a minimum number of frames (10, arbitrarily) before
         emiting bitrate tags so that our early estimates are not wildly
         inaccurate for streams that start with a silence. If the stream ends
         before that, we just emit the tags anyway.
         While it _would_ be nicer to be specify the threshold to start pushing
         the tags in terms of duration, this would introduce more complexity than
         this merits.
         https://bugzilla.gnome.org/show_bug.cgi?id=614991

2010-03-26 18:58:35 +0100  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
       * gst/audioparsers/gstflacparse.h:
         flacparse: Optionally check the overall frame checksums too before accepting a frame as valid
         This is optional because it's a quite expensive operation and it's very
         unlikely that a non-frame is detected as frame after the header CRC check
         and checking all bits for valid values. The overall frame checksums are
         mainly useful to detect inconsistencies in the encoded payload.

2010-03-26 18:42:28 +0100  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Check the CRC-8 of the headers before accepting a frame as valid
         This makes false-positives during seeking much less likely and detection of
         them much faster.

2010-03-26 18:20:24 +0100  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: Set the last stop to the buffer starttime if the duration is invalid
         ...instead of not setting it at all.

2010-03-26 18:19:00 +0100  Joshua M. Doe <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: Send NEWSEGMENT event with correct start and position
         Instead of taking the last stop (which could be buffer endtime instead
         of starttime) always take the buffer starttime.
         Fixes bug #614016.

2010-03-26 16:49:01 +0000  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Fix buffer refcount issue
         When called from the GST_FLAC_PARSE_STATE_HEADERS case,
         gst_flac_parse_hand_headers() does a gst_buffer_set_caps() on a buffer
         with refcount > 1. This change handles this case by making the buffer
         metadata_Writable.
         https://bugzilla.gnome.org/show_bug.cgi?id=614037

2010-03-25 17:09:17 +0000  Tim-Philipp Müller <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         audioparsers: remove unused GstBaseParseClassPrivate structure

2010-03-25 12:55:02 +0000  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Make bitrate estimation more accurate
         This implements the get_frame_overhead() vfunc so that baseparse can
         make more accurate bitrate estimates.

2010-03-25 11:48:46 +0000  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         aacparse: Fix bitrate calculation
         This patch adds the get_frame_overhead() vfunc so that baseparse can
         accurately calculate the min/avg/max bitrates for aacparse.
         Note: The bitrate was being incorrectly calculated for ADTS streams
         (it's not in the header as the code suggests).

2010-03-25 11:22:58 +0000  Arun Raghavan <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         audioparsers: Add bitrate calculation to baseparse
         This makes baseparse keep a running average of the stream bitrate, as
         well as the minimum and maximum bitrates. Subclasses can override a
         vfunc to make sure that per-frame overhead from the container is not
         accounted for in the bitrate calculation.
         We take care not to override the bitrate, minimum-bitrate, and
         maximum-bitrate tags if they have been posted upstream. We also
         rate-limit the emission of bitrate so that it is only triggered by a
         change of >10 kbps.

2010-03-22 16:56:03 +0100  Benjamin Otte <[email protected]>

       * tests/check/elements/amrparse.c:
         Add -Wold-style-definition
         and fix the warnings

2010-03-21 21:39:18 +0100  Benjamin Otte <[email protected]>

       * tests/check/elements/aacparse.c:
       * tests/check/elements/amrparse.c:
         Add -Wmissing-declarations -Wmissing-prototypes to configure flags
         And fix all warnings

2010-03-18 17:30:26 +0100  Benjamin Otte <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstamrparse.c:
         gst_element_class_set_details => gst_element_class_set_details_simple

2010-01-14 11:50:33 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         audioparsers: rename baseparse GType name to avoid possible conflicts

2010-01-12 18:55:53 +0100  Edward Hervey <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: Initialize variables.
         Fixes build on $#@*( macosx

2010-01-11 22:41:57 +0300  ������ ��������� <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstamrparse.c:
         win32: Include config.h before anything else. Fix mpegdemux LIBADD
         Because config.h defines __MSVCRT_VERSION__, which should be defined
         before inclusion of any system header.
         Also fixes mpegdemux Makefile.am LIBADD typo.
         Fixes #606665

2010-01-11 13:20:26 -0300  Thiago Santos <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         aacparse: Also add stream-format to template caps
         Do not forget to add stream-format to template caps
         off aacparse

2010-01-11 13:13:41 -0300  Thiago Santos <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * tests/check/elements/aacparse.c:
         Rename aac's stream-format 'none' to 'raw'
         Renames aac's stream-format from previous commits from none to
         raw

2010-01-11 12:10:02 -0300  Thiago Santos <[email protected]>

       * tests/check/elements/aacparse.c:
         aacparse: update tests to stream-format changes
         Updates aacparse unit tests to check for stream-format
         correctness as well.

2010-01-11 10:51:18 -0300  Thiago Santos <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         aacparse: Add stream-format to output caps
         Adds stream-format field to output caps

2010-01-05 15:05:05 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstbaseparse.c:
         audioparsers: documentation fixes

2010-01-05 15:04:38 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: add documentation

2010-01-05 14:48:49 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
       * gst/audioparsers/gstflacparse.h:
         flacparse: add documentation

2009-12-21 18:29:43 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: perform additional frame checks when resyncing

2010-01-05 16:35:52 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: fix (multiple channel) frame parsing

2010-01-05 16:35:44 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: declare unparsed input and parsed output

2009-12-21 18:19:23 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: fix scanning for next syncword

2009-12-21 18:18:39 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: adjust seek handling and newsegment sending
         Perform sanity check on type of seek, and only perform one that is
         appropriately supported.  Adjust downstream newsegment event
         to first buffer timestamp that is sent downstream.

2009-12-21 11:59:45 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: minor refactor cleanup
         Also add some debug logging.

2009-12-18 21:05:11 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: locate next sync code more efficiently

2009-12-18 21:04:12 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: baseparse takes care of handling leftover pieces

2009-12-18 21:02:40 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: implement leftover draining in pull mode

2009-12-17 12:45:36 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: set _OFFSET and _OFFSET_END on outgoing buffers

2009-12-17 12:44:20 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/gstflacparse.c:
       * gst/audioparsers/gstflacparse.h:
       * gst/audioparsers/plugin.c:
         audioparsers: move 'flacparse' into it

2009-12-16 18:38:33 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: provide default conversion using bps if no fps available
         Also store estimated duration as such, rather than pretending otherwise
         (e.g. set by subclass).

2009-12-18 13:30:29 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: check for remaining data when draining in push mode

2009-12-18 13:30:07 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         baseparse: fix pull mode cache size comparison

2009-12-18 13:01:17 +0100  Edward Hervey <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: Fix unitialized variable.

2009-12-17 14:46:01 +0000  Christian Schaller <[email protected]>

       * gst/audioparsers/Makefile.am:
         Update spec file and fix ac3parser header listing in Makefile.am

2009-12-11 10:25:16 -0800  Michael Smith <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         audioparse: fix a format string as reported on irc.

2009-11-23 16:34:50 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: ensure sufficient data available for parsing

2009-10-29 15:19:04 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: extract and use some more details for Enhanced Ac-3 streams

2009-10-29 15:18:37 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
         baseparse: custom bufferflag indicates not to count frame in stats

2009-10-28 14:08:43 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: perform additional frame checks when resyncing

2009-10-28 14:07:17 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: inform base parser of frame duration

2009-10-27 16:16:50 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstac3parse.c:
         ac3parse: improve src caps settings

2009-11-27 17:59:03 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/gstac3parse.c:
       * gst/audioparsers/gstac3parse.h:
       * gst/audioparsers/plugin.c:
         ac3parse: initial version
         MARGINAL rank for now; might take some time for some (useful)
         framed=true/false to appear here and there.

2009-11-26 18:34:45 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstamrparse.h:
         amrparse: use (default) time handling of baseparser class

2009-11-26 18:15:21 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/gstamrparse.c:
       * gst/audioparsers/gstamrparse.h:
       * gst/audioparsers/plugin.c:
         audioparsers: move 'amrparse' into it

2009-11-27 17:27:32 +0100  Mark Nauwelaerts <[email protected]>

       * gst/audioparsers/gstbaseparse.c:
         audioparsers: reference GstBaseParse now lives here

2009-11-28 18:13:31 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/Makefile.am:
       * gst/aacparse/gstaacparse.c:
       * gst/aacparse/gstaacparse.h:
       * gst/aacparse/gstbaseparse.c:
       * gst/aacparse/gstbaseparse.h:
       * gst/aacparse/plugin.c:
       * gst/audioparsers/Makefile.am:
       * gst/audioparsers/gstaacparse.c:
       * gst/audioparsers/gstaacparse.h:
       * gst/audioparsers/gstbaseparse.c:
       * gst/audioparsers/gstbaseparse.h:
       * gst/audioparsers/plugin.c:
         audioparsers: rename 'aacparse' plugin to generic 'audioparsers' plugin

2009-11-26 17:04:43 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/Makefile.am:
       * gst/aacparse/gstaacparse.c:
       * gst/aacparse/plugin.c:
         aacparse: separate plugin registration and rename plugin

2009-11-26 17:04:36 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstaacparse.c:
         aacparse: ensure sufficient data available before accessing

2009-11-05 14:31:40 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstaacparse.c:
       * gst/aacparse/gstaacparse.h:
         aacparse: use (default) time handling of baseparser class

2009-10-29 15:19:35 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstaacparse.c:
         aacparse: fixup comments to C-style

2009-10-29 16:05:00 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: reset passthrough mode to default (disabled) on activation

2009-10-29 15:16:59 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: ensure buffer metadata is writable

2009-10-28 14:06:13 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
       * gst/aacparse/gstbaseparse.h:
         baseparse: fix/enhance DISCONT marking
         In particular, consider DISCONT == !sync, and allow subclass to query
         sync state, as it may want to perform additional checks depending
         on whether sync was achieved earlier on.
         Also arrange for subclass to query whether leftover data is being drained.

2009-11-23 15:48:25 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
       * gst/aacparse/gstbaseparse.h:
         baseparse: add timestamp handling, and default conversion
         In particular, (optionally) provide baseparse with a notion of frames per second
         (and therefore also frame duration) and have it track frame and byte counts.
         This way, subclass can provide baseparse with fps and have it provide default
         buffer time metadata and conversions, though subclass can still install
         callbacks to handle such itself.

2009-10-28 12:02:03 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: documentation fixes

2009-10-28 12:00:08 +0100  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: use_fixed_caps for src pad
         After all, stream is as-is, and there is little molding to downstream's
         taste that can be done.  If subclass can and wants to do so, it can
         still override as such.

2009-11-20 17:32:13 +0100  Julien Moutte <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         aacparse: Fix compilation warnings

2009-10-11 11:22:11 +0200  Josep Torra <[email protected]>

       * gst/aacparse/gstaacparse.c:
       * gst/aacparse/gstbaseparse.c:
         aacparse: fix warnings in macosx snow leopard

2009-09-25 17:02:53 +0200  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstaacparse.c:
       * gst/aacparse/gstbaseparse.c:
       * gst/aacparse/gstbaseparse.h:
         aacparse: forego (bogus) parsing of already parsed (raw) input

2009-08-07 13:07:17 +0200  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: prevent infinite loop when draining

2009-08-07 13:06:28 +0200  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: fix minor memory leak

2009-07-14 14:08:04 +0200  Sebastian Dröge <[email protected]>

       * gst/aacparse/gstbaseparse.c:
       * gst/aacparse/gstbaseparse.h:
         aacparse: Add function for the baseparse subclass to push buffers downstream
         Also handle the case gracefully where the subclass decides to drop
         the first buffers and has no caps set yet. It's still required to
         have valid caps set when the first buffer should be passed downstream.

2009-07-14 14:07:44 +0200  Sebastian Dröge <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: Fix seek event leaking

2009-06-18 12:13:28 +0200  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstaacparse.c:
         aacparse: ADIF: do not send bogus timestamps, leave to downstream (decoder)

2009-06-01 15:53:27 +0100  Tim-Philipp Müller <[email protected]>

       * gst/aacparse/gstaacparse.c:
         aacparse: fix sample rate extraction from codec data
         In one case we extracted the sample rate index from the codec data
         and saved it as sample rate rather than getting the real sample
         rate from the table. Fix that, and also make sure we don't access
         non-existant table entries by adding a small helper function that
         guards against out-of-bounds access in case of invalid input data.

2009-06-01 14:02:33 +0100  Tim-Philipp Müller <[email protected]>

       * gst/aacparse/gstaacparse.c:
         aacparse, amrparse: remove bogus gst_pad_fixate_caps() calls

2009-06-01 13:56:18 +0100  Tim-Philipp Müller <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: propagate return value of GstBaseParse::set_sink_caps()
         gst_base_parse_sink_setcaps() presumably should fail if the subclass
         returns FALSE from its ::set_sink_caps() function.

2009-06-01 13:47:01 +0100  Tim-Philipp Müller <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: don't try to GST_LOG an already-freed caps string
         The proper way to log caps is via GST_PTR_FORMAT anyway.

2009-06-01 13:05:35 +0100  Tim-Philipp Müller <[email protected]>

       * gst/aacparse/gstaacparse.c:
       * tests/check/elements/aacparse.c:
         aacparse: set channels and rate on output caps, and keep codec_data
         Create output caps from input caps, so we maintain any fields we
         might get on the input caps, such as codec_data or rate and channels.
         Set channels and rate on the output caps if we don't have input caps
         or they don't contain such fields. We do this partly because we can,
         but also because some muxers need this information. Tagreadbin will
         also be happy about this.

2009-05-26 19:43:53 +0200  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: fix debug category

2009-04-27 22:39:15 +0200  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: fix (regression in) newsegment handling
         (aacparse, amrparse, flacparse).  Fixes #580133.

2009-04-07 04:53:02 +0300  René Stadler <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: Fix slightly broken buffer-in-segment check (aacparse, amrparse, flacparse)

2009-04-05 03:50:19 +0300  René Stadler <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: Fix push mode seeking (aacparse, amrparse)
         Sending the flush-start event forward before taking the stream lock actually
         works, in contrast to deadlocking in downstream preroll_wait (hunk 1).
         After that we get the chain function being stuck in a busy loop. This is fixed
         by updating the minimum frame size inside the synchronization loop because the
         subclass asks for more data in this way (hunk 2).
         Finally, this leads to a very probable crash because the subclass can find a
         valid frame with a size greater than the currently available data in the
         adapter. This makes the subsequent gst_adapter_take_buffer call return NULL,
         which is not expected (hunk 3).

2009-03-31 16:07:46 +0200  Mark Nauwelaerts <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: Delay newsegment as long as possible.
         If newsegment is sent (too) early, caps may not yet be fixed/set,
         and downstream may not have been linked.

2009-03-19 01:17:25 +0200  René Stadler <[email protected]>

       * gst/aacparse/gstaacparse.c:
         aacparse: Fix busyloop when seeking. Fixes #575388
         The problem is that after a discont, set_min_frame_size(1024) is called when
         detect_stream returns FALSE. However, detect_stream calls check_adts_frame
         which sets the frame size on its own to something larger than 1024. This is the
         same situation as in the beginning, so the base class ends up calling
         check_valid_frame in an endless loop.

2009-03-19 00:32:40 +0200  René Stadler <[email protected]>

       * gst/aacparse/gstaacparse.c:
         aacparse: Refactor check_valid_frame to expose broken code
         Just moving code around and removing an unhelpful/misleading comment.

2009-02-27 11:24:37 +0200  Stefan Kost <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: revert last change and properly fix
         Baseparse internaly breaks the semantics of a _chain function by calling it with
         buffer==NULL. The reson I belived it was okay to remove it was that there is
         also an unchecked access to buffer later in _chain. Actually that code is wrong,
         as it most probably wants to set discont on the outgoing buffer.

2009-02-26 11:02:06 +0200  Stefan Kost <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         baseparse: remove checks for buffer==NULL
         Accordifn to docs for GstPadChainFunction buffer cannot be NULL. If we would
         leave the check, we would also need more such check below.

2009-02-11 00:15:43 +0200  René Stadler <[email protected]>

       * gst/aacparse/gstaacparse.c:
         aacparse: Fix license specified in plugin details.

2009-01-30 18:18:10 +0000  Jan Schmidt <[email protected]>

       * gst/aacparse/gstbaseparse.c:
         Fix the return value of the default parse_frame function.
         Fix the return value of the default parse_frame function in both
         copies of GstBaseParse

2009-01-23 16:00:10 +0200  Stefan Kost <[email protected]>

       * gst/aacparse/gstaacparse.c:
         Log aac details found in codec_data.

2008-11-13 17:24:58 +0000  Wim Taymans <[email protected]>

         gst/aacparse/gstaacparse.c: Don't autoplug aacparse until it works.
         Original commit message from CVS:
         * gst/aacparse/gstaacparse.c: (plugin_init):
         Don't autoplug aacparse until it works.

2008-11-13 15:20:15 +0000  Stefan Kost <[email protected]>

         tests/check/: Add unit tests for new parsers.
         Original commit message from CVS:
         * tests/check/Makefile.am:
         * tests/check/elements/aacparse.c:
         * tests/check/elements/amrparse.c:
         Add unit tests for new parsers.

2008-11-13 14:21:39 +0000  Stefan Kost <[email protected]>

         gst/: Fix baseparse type name.
         Original commit message from CVS:
         * gst/aacparse/gstbaseparse.c:
         * gst/amrparse/gstbaseparse.c:
         Fix baseparse type name.

2008-11-13 12:59:34 +0000  Stefan Kost <[email protected]>

         Add two new baseparse based parsers (aac and amr) from Bug #518857.
         Original commit message from CVS:
         * configure.ac:
         * gst/aacparse/Makefile.am:
         * gst/aacparse/gstaacparse.c:
         * gst/aacparse/gstaacparse.h:
         * gst/aacparse/gstbaseparse.c:
         * gst/aacparse/gstbaseparse.h:
         * gst/amrparse/Makefile.am:
         * gst/amrparse/gstamrparse.c:
         * gst/amrparse/gstamrparse.h:
         * gst/amrparse/gstbaseparse.c:
         * gst/amrparse/gstbaseparse.h:
         Add two new baseparse based parsers (aac and amr) from Bug #518857.

2011-03-20 01:08:38 +0100  Havard Graff <[email protected]>

       * gst/rtpmanager/gstrtpjitterbuffer.c:
         jitterbuffer: Make src_query MT-safe
         It is possible that the element might be going down while the event arrives

2011-04-08 15:22:47 +0200  Sebastian Dröge <[email protected]>

       * ext/jpeg/gstjpegdec.c:
         jpegdec: Unref event if the parent element disappeared

2011-04-08 15:22:19 +0200  Sebastian Dröge <[email protected]>

       * gst/rtpmanager/gstrtpjitterbuffer.c:
         jitterbuffer: Unref event if the parent element disappeared

2011-03-21 16:04:34 +0100  Havard Graff <[email protected]>

       * ext/jpeg/gstjpegdec.c:
         jpegdec: Make upstream events MT-safe

2011-03-21 16:04:34 +0100  Havard Graff <[email protected]>

       * gst/rtpmanager/gstrtpjitterbuffer.c:
         jitterbuffer: Make upstream events MT-safe

2011-04-08 15:20:51 +0200  Sebastian Dröge <[email protected]>

       * gst/rtpmanager/gstrtpjitterbuffer.c:
       * gst/rtpmanager/gstrtpptdemux.c:
       * gst/rtpmanager/gstrtpsession.c:
       * gst/rtpmanager/gstrtpssrcdemux.c:
         rtp: Unref events if the parent element disappeared

2011-01-06 18:24:36 +0100  Ole André Vadla Ravnås <[email protected]>

       * gst/rtpmanager/gstrtpjitterbuffer.c:
       * gst/rtpmanager/gstrtpptdemux.c:
       * gst/rtpmanager/gstrtpsession.c:
       * gst/rtpmanager/gstrtpssrcdemux.c:
         rtpmanager: fix pad callbacks so they handle when parent goes away
         1) We need to lock and get a strong ref to the parent, if still there.
         2) If it has gone away, we need to handle that gracefully.
         This is necessary in order to safely modify a running pipeline. Has been
         observed when a streaming thread is doing a buffer_alloc() while an
         application thread sends an event on a pad further downstream, and from
         within a pad probe (holding STREAM_LOCK) carries out the pipeline plumbing
         while the streaming thread has its buffer_alloc() in progress.

2010-11-26 15:20:04 +0100  Havard Graff <[email protected]>

       * gst/rtpmanager/gstrtpsession.c:
         rtpsession: make iterate_internal_links MT-safe

2011-04-08 14:35:04 +0200  Sebastian Dröge <[email protected]>

       * ext/pulse/pulsesink.c:
         Revert "Pulsesink: Allow chunks up to bufsize instead of segsize"
         This reverts commit 1e2c1467ae042a3c6bb1a6bc0c07aeff13ec5edb.
         The commit causes pulsesink to ignore the latency-time baseaudiosink property.

2011-04-08 11:13:07 +0200  Alexey Fisher <[email protected]>

       * gst/rtp/gstrtpspeexpay.c:
         rtpspeexpay: Do not transmitt samples with GAP flag
         If we get GAP samples, there is no need to transmitt it.
         In some situations, microphone is muted, we can drop net traffick
         usage to ~1 kbit/s. Without patch it will stay ~20 kbit/s

2011-04-08 11:11:58 +0200  Alexey Fisher <[email protected]>

       * ext/speex/gstspeexenc.c:
         speexenc: Use speex intern silence detection
         Speex has build in silence detection. If speex_encode_int returns 0,
         than there is silence and sample do not need to be transmitted.
         This work only if vbr=1 and dtx=1 optionas are enabled.
         So if we get 0, we add GAP flag to the sample.

2011-04-05 17:12:28 +0200  Wim Taymans <[email protected]>

       * gst/rtsp/gstrtspsrc.c:
         rtspsrc: handle * control correctly
         Parse session control attributes when no media control attribute is
         present. Threat * control attributes as an empty string, just like the
         spec says.
         Fixes #646800

2011-04-05 14:28:54 +0200  Sebastian Dröge <[email protected]>

       * gst/matroska/matroska-mux.c:
         matroskamux: Add support for A-Law and µ-Law
         Fixes bug #646567.

2011-04-05 09:44:01 +0200  Jon Nordby <[email protected]>

       * configure.ac:
       * ext/jack/gstjackaudiosink.c:
       * ext/jack/gstjackaudiosrc.c:
         jack: Fix build with jack 0.120.1
         9544622674c0d0a3147a9b51145159b02eec68e9 checked
         for 0.120.2 and later, but the deprecation was introduced in
         0.120.1

2011-04-05 12:05:19 +0300  Stefan Kost <[email protected]>

       * sys/v4l2/gstv4l2radio.h:
       * sys/v4l2/gstv4l2src.h:
       * sys/v4l2/gstv4l2xoverlay.c:
         docs: fix docuemntation warnings (and reindent)

2011-04-04 17:34:17 +0200  Alessandro Decina <[email protected]>

       * gst/videomixer/blendorc-dist.c:
       * gst/videomixer/blendorc-dist.h:
         videomixer: update orc dist files

2011-04-04 15:57:10 +0300  Stefan Kost <[email protected]>

       * common:
         Automatic update of common submodule
         From 1ccbe09 to c3cafe1

2011-03-01 14:08:12 +0530  Arun Raghavan <[email protected]>

       * ext/pulse/pulsesink.c:
         pulsesink: Always call pa_stream_new_with_proplist()
         pa_stream_new_with_proplist() can take a NULL proplist, so we don't need
         to concern ourselves with whether it's NULL or not.

2011-04-04 11:33:10 +0200  Mark Nauwelaerts <[email protected]>

       * gst/rtsp/gstrtspsrc.c:
         rtspsrc: perform post-flush state tricks downstream to upstream
         ... so downstream is set when upstream resumes data flow.

2011-04-04 11:27:29 +0200  Mark Nauwelaerts <[email protected]>

       * gst/rtsp/gstrtspsrc.c:
         rtspsrc: distribute new base_time to manager children following flush seek
         ... by forcing a state changed to PLAYING, which should otherwise be a
         no-op as elements should already be in that state.
         In particular, jitterbuffer needs new base_time as soon as possible to perform
         proper timing (e.g. eos timeout handling) and can't wait for the new base_time
         that will be distributed when the whole pipeline returns to PLAYING.
         See bug #646397.

2011-04-04 11:35:59 +0200  Mark Nauwelaerts <[email protected]>

       * gst/rtpmanager/gstrtpjitterbuffer.c:
         Revert "jitterbuffer: reset element base_time upon flush"
         This reverts commit f84b8a69cba9c538f5546869cb4ef454ad5efb9d.
         Fixes bug #646397.

2011-04-04 10:31:44 +0100  Zaheer Abbas Merali <[email protected]>

       * gst/flv/gstflvdemux.c:
       * gst/flv/gstflvmux.c:
         flv: Specify the only possible stream-format for h264 in the pad templates.

2011-04-04 10:07:42 +0200  Sebastian Dröge <[email protected]>

       * gst/qtdemux/qtdemux.c:
         qtdemux: Check for invalid (empty) classification info entity strings
         Otherwise the classification string can be empty and gst_tag_list_add() will
         complain or have a \0 in the first four bytes, which is wrong too.

2011-04-04 10:01:26 +0200  Sebastian Dröge <[email protected]>

       * gst/qtdemux/qtdemux.c:
         qtdemux: Year 0 is not a valid year for GDate and the proleptic gregorian calendar

2011-04-01 13:18:55 +0200  Sebastian Dröge <[email protected]>

       * ext/flac/gstflacenc.c:
         flacenc: Add support for writing METADATA_BLOCK_PICTURE blocks for GST_TAG_IMAGE and GST_TAG_PREVIEW_IMAGE

2011-04-01 11:33:54 +0200  Sebastian Dröge <[email protected]>

       * gst/videomixer/videomixer.c:
       * gst/videomixer/videomixer2.c:
         videomixer[2]: Use orc_memset() instead of memset()

2011-01-19 18:06:45 -0700  Lane Brooks <[email protected]>

       * gst/videomixer/videomixer.c:
       * gst/videomixer/videomixer.h:
         videomixer: Add transparent background option for alpha channel formats

2011-01-19 12:07:17 -0700  Lane Brooks <[email protected]>

       * gst/videomixer/blend.c:
       * gst/videomixer/blend.h:
       * gst/videomixer/blendorc.orc:
       * gst/videomixer/videomixer2.c:
       * gst/videomixer/videomixer2.h:
         videomixer2: Add transparent background option for alpha channel formats
         This option allows the videomixer2 element to output a valid alpha
         channel when the inputs contain a valid alpha channel. This allows
         mixing to occur in multiple stages serially.
         The following pipeline shows an example of such a pipeline:
         gst-launch videotestsrc background-color=0x000000 pattern=ball ! video/x-raw-yuv,format=\(fourcc\)AYUV ! videomixer2 background=transparent name=mix1 ! videomixer2 name=mix2 ! ffmpegcolorspace ! autovideosink  videotestsrc ! video/x-raw-yuv,format=\(fourcc\)AYUV ! mix2.
         The first videotestsrc in this pipeline creates a moving ball on a
         transparent background. It is then passed to the first videomixer2.
         Previously, this videomixer2 would have forced the alpha channel to
         1.0 and given a background of checker, black, or white to the
         stream. With this patch, however, you can now specify the background
         as transparent, and the alpha channel of the input will be
         preserved. This allows for further mixing downstream, as is shown in
         the above pipeline where the a second videomixer2 is used to mix in a
         background of an smpte videotestsrc. So the result is a ball hovering
         over the smpte test source. This could, of course, have been
         accomplished with a single mixer element, but staged mixing is useful
         when it is not convenient to mix all video at once (e.g. a pipeline
         where a foreground and background bin exist and are mixed at the final
         output, but the foreground bin needs an internal mixer to create
         transitions between clips).
         Fixes bug #639994.

2011-03-31 13:25:00 +0200  Mark Nauwelaerts <[email protected]>

       * ext/pulse/pulsesink.c:
         pulsesink: also uncork during EOS waiting (and after EOS is rendered)
         Pulsesink was recently changed to defer uncorking until there is data
         to write. This condition will however never occur when EOS in being
         rendered (since that marks the end of data). Changing to PAUSED state
         while EOS is being waited on results in a hang: pausing corks the
         stream, which will never be undone since there is no more data when
         going back to PLAYING. If pulsesink is the clock provider, deadlock
         ensues since time doesn't continue in corked state and the clock id
         for EOS wait never fires.
         Fixes #645961.

2011-03-29 16:33:43 +0200  Sebastian Dröge <[email protected]>

       * tests/check/elements/rtpbin.c:
         rtpbin: Don't try to request the same request pad twice

2011-03-28 23:46:47 +0100  Tim-Philipp Müller <[email protected]>

       * ext/flac/gstflacdec.c:
       * ext/flac/gstflacdec.h:
         flacdec: fix issues with large metadata blocks when streaming unframed flac
         Parse metadata blocks when handling unparsed flac in push mode. This
         works around a bunch of issues with the flac decoder when handling
         metadata blocks that are larger than the max. flac framesize, which
         coverart blocks often are. We need to have all the data for these
         blocks available when we pass data to libflac.
         http://gstreamer-devel.966125.n4.nabble.com/Flac-files-that-will-playback-but-not-stream-td3338198.html#a3395276
         https://bugzilla.gnome.org/show_bug.cgi?id=566769

2011-03-27 21:39:50 +0200  Jan Urbański <[email protected]>

       * gst/flv/gstflvdemux.c:
       * gst/flv/gstflvdemux.h:
         flvdemux: Do not build an index if upstream is not seekable
         An index is not useful if upstream cannot handle seeks and building it
         for infinite files, for instance FLV streams, results in a memory leak.

2011-03-27 01:19:58 +0300  Alexey Chernov <[email protected]>

       * docs/plugins/Makefile.am:
       * docs/plugins/gst-plugins-good-plugins-docs.sgml:
       * docs/plugins/gst-plugins-good-plugins-sections.txt:
       * docs/plugins/inspect/plugin-video4linux2.xml:
       * sys/v4l2/Makefile.am:
       * sys/v4l2/gstv4l2.c:
       * sys/v4l2/gstv4l2radio.c:
       * sys/v4l2/gstv4l2radio.h:
         v4l2: new v4l2radio element to control analog radio devices
         https://bugzilla.gnome.org/show_bug.cgi?id=640118

2011-03-25 22:22:43 +0100  Sebastian Dröge <[email protected]>

       * common:
         Automatic update of common submodule
         From 193b717 to 1ccbe09

2011-03-25 14:56:06 +0200  Stefan Kost <[email protected]>

       * common:
         Automatic update of common submodule
         From b77e2bf to 193b717

2011-03-25 12:53:43 +0200  Stefan Kost <[email protected]>

       * ext/cairo/Makefile.am:
         cairo: fix the name of the *-marshall.list file to unbreak make distcheck

2011-03-25 09:31:03 +0100  Sebastian Dröge <[email protected]>

       * common:
         Automatic update of common submodule
         From d8814b6 to b77e2bf

2011-03-25 09:06:16 +0100  Sebastian Dröge <[email protected]>

       * common:
         Automatic update of common submodule
         From 6aaa286 to d8814b6

2011-03-25 00:10:56 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
       * gst/spectrum/gstspectrum.h:
         spectrum: refactor processing loop for block based operation
         Previously the chain function was working sample frame based. In each cycle it
         was checking if it is time to run a fft or if it is time to send a message.
         Now we changed the data transform functions to work on a block of data and
         calculate the max length until either {end-of-data, do-fft, do-msg}. This allows
         us also to avoid the duplicated code for the single and multi-channel case (as
         the transformers have the same signature now).

2011-03-24 23:47:33 +0200  Stefan Kost <[email protected]>

       * configure.ac:
         jack: unbreak the build for jack2 users
         Jack2 (versions 1.X.X) does only have that API in svn. Limmit the use of the new
         API for jack1 versions.

2011-03-24 18:49:19 +0200  Stefan Kost <[email protected]>

       * common:
         Automatic update of common submodule
         From 6aec6b9 to 6aaa286

2011-03-24 14:14:09 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: fix the error accumulation and frames_todo handling
         Even though we wrap around the accumulated second, we still need to add the
         error in the same cycle. Increase the todo in the same conditional as afterwards
         the accumulated error will be below one second.

2011-03-24 13:53:12 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: fix broken code resulting for a wrong splitup of changes

2011-03-22 16:29:53 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
       * gst/spectrum/gstspectrum.h:
         spectrum: simplify the have_interval calculation
         Move some of the conditions to the places where the dependent variables change.

2011-03-22 16:26:45 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: use local var for input_data function
         Avoid dereferencing the input_data from the instance from within an inner loop.

2011-03-23 16:34:16 +0100  Sebastian Dröge <[email protected]>

       * ext/speex/gstspeexdec.c:
       * ext/speex/gstspeexdec.h:
         speexdec: Get and use streamheader from the caps if possible
         This allows playback of streams where the streamheader buffers
         were dropped from the stream for some reason.

2011-03-22 19:36:31 +0100  Mark Nauwelaerts <[email protected]>

       * gst/flv/gstflvmux.c:
         flvmux: use running time for synchronization
         Fixes #432612.

2011-03-22 19:36:21 +0100  Mark Nauwelaerts <[email protected]>

       * gst/matroska/matroska-mux.c:
         matroskamux: use running time for synchronization
         Fixes #432612.

2011-03-22 19:35:58 +0100  Mark Nauwelaerts <[email protected]>

       * gst/avi/gstavimux.c:
         avimux: use running time for synchronization
         See bug #432612.

2011-03-22 12:53:22 +0100  Luis de Bethencourt <[email protected]>

       * configure.ac:
         configure.ac: redundant uses of AC_MSG_RESULT()
         cleaned the redundant uses of AC_MSG_RESULT() in configure.ac

2011-03-18 19:34:57 +0100  Luis de Bethencourt <[email protected]>

       * autogen.sh:
         autogen: wingo signed comment

2011-03-16 10:43:47 +0100  Robert Swain <[email protected]>

       * ext/jack/gstjackaudiosink.c:
         jackaudiosink: Fix typo from 9544622674c0d0a3147a9b51145159b02eec68e9

2011-03-16 09:38:43 +0100  Sebastian Dröge <[email protected]>

       * gst/matroska/matroska-demux.c:
       * gst/matroska/matroska-mux.c:
         matroska: Mark tag mapping tables as static const

2011-03-16 09:37:58 +0100  Sebastian Dröge <[email protected]>

       * gst/matroska/matroska-mux.c:
         matroskamux: Use ARTIST instead of AUTHOR for GST_TAG_ARTIST

2011-03-16 09:35:50 +0100  Sebastian Dröge <[email protected]>

       * gst/matroska/matroska-demux.c:
       * gst/matroska/matroska-ids.h:
         matroskademux: Use ARTIST Matroska tag instead of AUTHOR for GST_TAG_ARTIST
         AUTHOR only existed in an old version of the spec and ARTIST is
         the new replacement for this. We are still reading both to still
         be compatible with old files.
         Fixes bug #644875.

2011-03-15 20:19:48 +0000  Tim-Philipp Müller <[email protected]>

       * tests/check/elements/videofilter.c:
         tests: enable more formats in videofilter unit test, check more resolutions

2011-03-14 19:14:07 -0400  Youness Alaoui <[email protected]>

       * gst/videofilter/gstvideoflip.c:
         videoflip: Fix buffer overflow bug for odd resolutions and Y422 colorspaces
         https://bugzilla.gnome.org/show_bug.cgi?id=644773

2011-03-15 19:36:01 +0200  Vincent Penquerc'h <[email protected]>

       * ext/speex/gstspeexdec.c:
         speexdec: silence warning message when appropriate
         If we did not know how many frames to expect, then we get an unexpected
         end of stream when trying to decode more frames that are there, if there
         are leftover bits to pad to the next byte

2011-03-14 19:14:07 -0400  Youness Alaoui <[email protected]>

       * gst/videofilter/gstvideoflip.c:
         videoflip: Add support for YUY2, UVYV and YVYU colorspaces
         https://bugzilla.gnome.org/show_bug.cgi?id=644773

2011-03-15 09:43:35 +0000  Tim-Philipp Müller <[email protected]>

       * tests/check/elements/videofilter.c:
         tests: in videofilter unit test also check with 'odd' widths and heights
         And only use one test suite.

2011-03-14 19:28:07 +0100  Sebastian Dröge <[email protected]>

       * ext/speex/gstspeexdec.c:
         speexdec: Always process the number of frames per packet as specified in the header
         Looking at the remaining bits in the bitstream after decoding a
         single frame can't be used as loop condition. The remaining
         bits might not give a complete frame and the speex decoder will
         then output nothing but access uninitialized memory, which leads
         to valgrind warnings.
         Fixes bug #644669.

2011-03-14 15:46:50 +0100  Andoni Morales Alastruey <[email protected]>

       * gst/matroska/matroska-mux.c:
         matroskamux: return TRUE from sink pad event function for tag events, which are handled
         https://bugzilla.gnome.org/show_bug.cgi?id=644730

2011-03-12 00:44:31 +0530  Philip Jägenstedt <[email protected]>

       * ext/pulse/pulsesink.c:
         pulsesink: Better fix for deadlock on failed connect
         This reverts the previous fix that would cause a double-unlock when the
         stream connect failed.
         https://bugzilla.gnome.org/show_bug.cgi?id=644510

2011-03-11 23:06:31 +0530  Arun Raghavan <[email protected]>

       * ext/pulse/pulsesink.c:
         pulsesink: Fix deadlock if connecting to PA fails
         Commit dd4ec22e introduced a deadlock in the failure path while trying
         to connect to PulseAudio. This makes sure we drop the lock on the
         resource mutex to avoid this.
         https://bugzilla.gnome.org/show_bug.cgi?id=644510

2011-03-11 16:59:10 +0200  Stefan Kost <[email protected]>

       * tests/check/Makefile.am:
         tests: order state-test blacklist and add jack elements
         Jack audio src/sink elements recently got moved from bad and should be excluded
         from the test (like the other device specific source and sinks).
         Fixes #644288

2011-03-11 13:47:26 +0100  Sebastian Dröge <[email protected]>

       * ext/dv/gstdvdemux.c:
         dvdemux: Chain up to the parent class' ::send_event for non-seek events

2011-03-11 13:46:05 +0100  Sebastian Dröge <[email protected]>

       * ext/dv/gstdvdemux.c:
         dvdemux: Fix refcount issues with the seek event
         Fixes bug #642963.

2011-03-11 09:54:02 +0000  Tim-Philipp Müller <[email protected]>

       * ext/pulse/pulsesink.c:
         docs: fix pulsesink gtk-doc markup

2011-03-11 10:29:08 +0100  Philippe Normand <[email protected]>

       * configure.ac:
       * ext/jack/gstjackaudiosink.c:
       * ext/jack/gstjackaudiosrc.c:
         jack: fix build against jack 0.120.2
         jack_port_get_total_latency() has been deprecated in favor of
         jack_port_get_latency_range().
         https://bugzilla.gnome.org/show_bug.cgi?id=644477

2011-03-10 14:29:25 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: more comments and tune and logging

2011-03-10 14:15:42 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: avoid unneccesary extra fft runs
         Before it was possible that we run an extra fft when the time for sending a new
         message is due. Only do this if we have not run the fft for the interval at all.

2011-03-10 14:12:01 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: only scale the vectors that we are processing
         Phase is not produced by default, so lets not scale it unconditionally to save a
         few cycles.

2011-03-10 14:10:25 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
       * gst/spectrum/gstspectrum.h:
         spectrum: put number of channels to instance variable
         When freeing data the format might have changed. Thus we need to remember for
         which format we allocated memory.

2011-03-10 10:27:14 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: update doc review stamp

2011-03-10 10:22:29 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
       * gst/spectrum/gstspectrum.h:
         spectrum: use function pointers for data readers
         Don't check the format for each sample frame to read. We can make that decission
         in _setup already. This is still not ideal as we call the function per frame.
         Ideally we determine how many samples we can copy and have a loop in the input
         reader. As an alternative we might also consider to use the fft variants for the
         various formats and not convert to float for all cases - we would still need to
         mix or deinterleave though.

2011-03-09 17:07:47 +0100  Mark Nauwelaerts <[email protected]>

       * gst/rtsp/gstrtspsrc.c:
       * gst/rtsp/gstrtspsrc.h:
         rtspsrc: improve recovery from failed seek
         In case server-side fails to perform seek, i.e. PLAY at non-zero requested
         position, recovery so far would arrange for streaming to continue, albeit
         having lost position tracking in the process.  So, query position prior
         to seek and use upon failed seek.

2011-03-09 16:51:00 +0100  Mark Nauwelaerts <[email protected]>

       * gst/rtpmanager/gstrtpjitterbuffer.c:
         jitterbuffer: handle position query

2011-03-09 16:57:28 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
       * gst/spectrum/gstspectrum.h:
         spectrum:  multi-channel support
         Add a boolean multi-channel property with a default of FALSE. When set to TRUE
         the element won't mix all input channels to mono, but instead run a FFT on each
         channel. In that case the result message would contain a 2 dimensional array
         of channel x data for magnitude and phase.
         API: GstSpectrum:multi-channel
         https://bugzilla.gnome.org/show_bug.cgi?id=593482

2011-03-09 16:55:56 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: more xrefs in the docs

2011-03-09 12:41:15 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: factor out the code that accumulated samples into the ring-buffer
         Use a separate function to read a sample frame into a ringbuffer slot. In the
         future we can use format-specific function pointer to avoid the reoccuring
         format checks.

2011-03-09 12:38:52 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: pull format to temp var to improve readability of lines using it

2011-03-09 12:20:11 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: code cleanup for copying data to ring-buffer
         Rename fp to is_float and restructure if-else part for handling the different formats.

2011-03-09 11:40:48 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
       * gst/spectrum/gstspectrum.h:
         spectrum: add a GstSpecrtumChannel context structure
         We now keep the fft data that is related to one channel in a separate structure
         to prepare for multichannel support. We also refactor the code to operate more
         often on the channel context.

2011-03-09 11:18:19 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: call the instance var spectrum instead of filter

2011-03-09 11:14:37 +0200  Stefan Kost <[email protected]>

       * gst/spectrum/gstspectrum.c:
         spectrum: don't value we already took from the gvalue

2011-03-08 16:28:27 +0000  Tim-Philipp Müller <[email protected]>

         Merge ad-hoc release branch '0.10.28'