diff --git a/ChangeLog b/ChangeLog index 9a7d8a61a5..f38589c5a3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,479 @@ -=== release 0.10.17 === +=== release 0.10.18 === -2011-01-21 Tim-Philipp Müller +2011-05-10 Tim-Philipp Müller * configure.ac: - releasing 0.10.17, "Raised by Wolves" + releasing 0.10.18, "Extra Life" + +2011-05-04 12:39:17 +0200 Sebastian Dröge + + * ext/x264/gstx264enc.c: + x264enc: Copy the template caps, it's not allowed to increase the refcount of const caps + +2011-05-04 12:30:39 +0200 Mark Nauwelaerts + + * ext/x264/gstx264enc.c: + x264enc: do not leak peer pad reference + +2011-05-03 15:27:43 +0100 Sjoerd Simons + + * ext/x264/gstx264enc.c: + x264enc: No need to copy, reffing is enough + +2011-05-03 14:57:16 +0100 Sjoerd Simons + + * ext/x264/gstx264enc.c: + x264enc: get_caps function should return a copy of the caps + +2011-04-30 20:07:44 +0100 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/inspect/plugin-a52dec.xml: + * docs/plugins/inspect/plugin-amrnb.xml: + * docs/plugins/inspect/plugin-amrwbdec.xml: + * docs/plugins/inspect/plugin-asf.xml: + * docs/plugins/inspect/plugin-cdio.xml: + * docs/plugins/inspect/plugin-dvdlpcmdec.xml: + * docs/plugins/inspect/plugin-dvdread.xml: + * docs/plugins/inspect/plugin-dvdsub.xml: + * docs/plugins/inspect/plugin-iec958.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-mad.xml: + * docs/plugins/inspect/plugin-mpeg2dec.xml: + * docs/plugins/inspect/plugin-mpegaudioparse.xml: + * docs/plugins/inspect/plugin-mpegstream.xml: + * docs/plugins/inspect/plugin-realmedia.xml: + * docs/plugins/inspect/plugin-siddec.xml: + * docs/plugins/inspect/plugin-synaesthesia.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-x264.xml: + * po/da.po: + * po/de.po: + * po/fr.po: + * po/uk.po: + * win32/common/config.h: + 0.10.17.4 pre-release + +2011-04-27 12:48:31 +0100 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/gst-plugins-ugly-plugins.hierarchy: + * docs/plugins/gst-plugins-ugly-plugins.interfaces: + * docs/plugins/inspect/plugin-a52dec.xml: + * docs/plugins/inspect/plugin-amrnb.xml: + * docs/plugins/inspect/plugin-amrwbdec.xml: + * docs/plugins/inspect/plugin-asf.xml: + * docs/plugins/inspect/plugin-cdio.xml: + * docs/plugins/inspect/plugin-dvdlpcmdec.xml: + * docs/plugins/inspect/plugin-dvdread.xml: + * docs/plugins/inspect/plugin-dvdsub.xml: + * docs/plugins/inspect/plugin-iec958.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-mad.xml: + * docs/plugins/inspect/plugin-mpeg2dec.xml: + * docs/plugins/inspect/plugin-mpegaudioparse.xml: + * docs/plugins/inspect/plugin-mpegstream.xml: + * docs/plugins/inspect/plugin-realmedia.xml: + * docs/plugins/inspect/plugin-siddec.xml: + * docs/plugins/inspect/plugin-synaesthesia.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-x264.xml: + * po/bg.po: + * po/ja.po: + * po/nl.po: + * po/pl.po: + * po/ru.po: + * po/sl.po: + * po/tr.po: + 0.10.17.3 pre-release + +2011-04-24 14:04:39 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From c3cafe1 to 46dfcea + +2011-04-19 17:26:42 +0100 Tim-Philipp Müller + + * tests/check/gst-plugins-ugly.supp: + tests: add suppression for lame unit test + +2011-04-19 14:41:48 +0100 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/generic/.gitignore: + * tests/check/generic/index.c: + tests: add generic index-setting test + +2011-04-19 15:24:03 +0100 Tim-Philipp Müller + + * ext/mpeg2dec/gstmpeg2dec.c: + mpeg2dec: don't deadlock when setting an index + +2011-04-16 23:26:27 +0100 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/gst-plugins-ugly-plugins.hierarchy: + * docs/plugins/gst-plugins-ugly-plugins.interfaces: + * docs/plugins/inspect/plugin-a52dec.xml: + * docs/plugins/inspect/plugin-amrnb.xml: + * docs/plugins/inspect/plugin-amrwbdec.xml: + * docs/plugins/inspect/plugin-asf.xml: + * docs/plugins/inspect/plugin-cdio.xml: + * docs/plugins/inspect/plugin-dvdlpcmdec.xml: + * docs/plugins/inspect/plugin-dvdread.xml: + * docs/plugins/inspect/plugin-dvdsub.xml: + * docs/plugins/inspect/plugin-iec958.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-mad.xml: + * docs/plugins/inspect/plugin-mpeg2dec.xml: + * docs/plugins/inspect/plugin-mpegaudioparse.xml: + * docs/plugins/inspect/plugin-mpegstream.xml: + * docs/plugins/inspect/plugin-realmedia.xml: + * docs/plugins/inspect/plugin-siddec.xml: + * docs/plugins/inspect/plugin-synaesthesia.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-x264.xml: + * po/sl.po: + * win32/common/config.h: + 0.10.17.2 pre-release + +2011-04-16 23:23:56 +0100 Tim-Philipp Müller + + * gst/realmedia/rademux.c: + rademux: fix two 'variable may be used uninitialized' warnings caused by -DG_DISABLE_ASSERT + +2011-04-14 15:04:19 +0100 Tim-Philipp Müller + + * gst/mpegstream/gstmpegdemux.c: + mpegstream: fix unused-but-set-variable warnings with gcc 4.6 + +2011-04-14 15:03:56 +0100 Tim-Philipp Müller + + * ext/dvdread/dvdreadsrc.c: + * ext/sidplay/gstsiddec.cc: + * ext/x264/gstx264enc.c: + dvdread, sidplay, x264enc: fix unused-but-set-variable warnings with gcc 4.6 + +2011-04-14 15:03:33 +0100 Tim-Philipp Müller + + * gst/asfdemux/gstasfdemux.c: + asfdemux: fix unused-but-set-variable warnings with gcc 4.6 + +2011-04-13 20:31:53 +0200 Sebastian Dröge + + * ext/x264/gstx264enc.c: + x264enc: Implement getcaps function + This allows to set width/height/etc restrictions downstream. + +2011-04-10 18:24:22 -0400 Thibault Saunier + + * Android.mk: + * ext/mad/Makefile.am: + * ext/x264/Makefile.am: + * gst/asfdemux/Makefile.am: + * gst/dvdlpcmdec/Makefile.am: + * gst/dvdsub/Makefile.am: + * gst/iec958/Makefile.am: + * gst/mpegaudioparse/Makefile.am: + * gst/mpegstream/Makefile.am: + * gst/realmedia/Makefile.am: + * gst/synaesthesia/Makefile.am: + android: make it ready for androgenizer + 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-10 18:34:11 -0400 Thibault Saunier + + * android/NOTICE: + * android/amrnb.mk: + * android/amrwbdec.mk: + * android/asf.mk: + * android/mpegaudioparse.mk: + android: remove the android/ folder + +2011-04-04 15:57:58 +0300 Stefan Kost + + * common: + Automatic update of common submodule + From 1ccbe09 to c3cafe1 + +2010-09-21 20:14:04 -0400 Olivier Crête + + * ext/x264/gstx264enc.c: + * ext/x264/gstx264enc.h: + x264enc: Allow changing the bitrate and quantitizers dynamically + https://bugzilla.gnome.org/show_bug.cgi?id=621663 + +2010-09-21 19:33:10 -0400 Olivier Crête + + * ext/x264/gstx264enc.c: + x264enc: Set max bitrate in quality mode + https://bugzilla.gnome.org/show_bug.cgi?id=621663 + +2010-09-21 19:20:29 -0400 Olivier Crête + + * ext/x264/gstx264enc.c: + x264enc: Make it clear that constant quantizer is for debugging only + https://bugzilla.gnome.org/show_bug.cgi?id=621663 + +2011-03-25 22:34:31 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From 193b717 to 1ccbe09 + +2011-03-25 14:57:00 +0200 Stefan Kost + + * common: + Automatic update of common submodule + From b77e2bf to 193b717 + +2011-03-25 09:33:04 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From d8814b6 to b77e2bf + +2011-03-25 09:09:29 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From 6aaa286 to d8814b6 + +2011-03-24 18:50:17 +0200 Stefan Kost + + * common: + Automatic update of common submodule + From 6aec6b9 to 6aaa286 + +2011-03-22 12:59:33 +0100 Luis de Bethencourt + + * configure.ac: + configure.ac: redundant use of AC_MSG_RESULT() + cleaned the redundant use of AC_MSG_RESULT() in configure.ac + +2011-03-18 19:34:57 +0100 Luis de Bethencourt + + * autogen.sh: + autogen: wingo signed comment + +2011-03-15 11:02:42 +0100 Sebastian Dröge + + * gst/dvdsub/gstdvdsubdec.c: + * gst/dvdsub/gstdvdsubdec.h: + dvdsubdec: Rearrange buffer allocation and pushing code a bit + This makes the code easier to read, doesn't store every buffer + in the instance until the next buffer is to be drawn and + fixes an unitialized variable compiler warning. + +2011-03-15 10:59:23 +0100 Brendan Le Foll + + * gst/dvdsub/gstdvdsubdec.c: + dvdsubdec: Output only a single buffer per subpicture and set the correct duration + Fixes bug #619136. + +2011-03-14 18:39:35 +0100 Brendan Le Foll + + * gst/dvdsub/gstdvdsubdec.c: + dvdsubdec: Implement clipping if the video size is smaller than the subpicture size + Fixes bug #644704. + +2011-03-11 17:45:37 +0000 Tim-Philipp Müller + + * configure.ac: + * ext/mad/gstmad.c: + * ext/mad/gstmad.h: + mad: build the mad plugin even if libid3tag is not available + ID3 tags are usually handled by id3demux, and should be handled + by id3demux. Tag handling in mad based on libid3tag is very basic + and mostly unnecessary really, so just build this plugin without + ID3 tag support if libid3tag is not available. + +2011-03-02 13:12:11 +0200 Stefan Kost + + * gst/mpegstream/gstdvddemux.c: + dvddemux: small code cleanup + Don't duplicate the 'if' check. Makes the 2nd condition easier to read also + and avoid empty 'if' when logging is disabled. + +2011-02-28 19:27:21 +0100 Mark Nauwelaerts + + * configure.ac: + configure.ac: export plugin description more platform independent + Fixes #642504. + +2011-02-28 18:33:34 +0100 Mark Nauwelaerts + + * common: + Automatic update of common submodule + From 1de7f6a to 6aec6b9 + +2011-02-21 13:13:11 +0100 Mark Nauwelaerts + + * ext/mpeg2dec/gstmpeg2dec.c: + mpeg2dec: do not fail fatally when unlinked + ... as _NOT_LINKED was neither tested as fatal before nor complained about. + +2011-02-21 11:05:31 +0200 Stefan Kost + + * ext/mad/gstmad.c: + * ext/mad/gstmad.h: + * ext/mpeg2dec/gstmpeg2dec.c: + * ext/mpeg2dec/gstmpeg2dec.h: + index: remove conditional index support + Index support cannot be disabled since commit + 4bfb1fe70c6f0d5e29c17a8eeffb02f7fd083f11 + in core, which removed the configure flags to disable index. + +2011-02-17 18:06:51 +0200 Stefan Kost + + * ext/mad/gstmad.c: + * ext/mpeg2dec/gstmpeg2dec.c: + formatting: trim trailing whitespace + +2011-02-17 18:05:58 +0200 Stefan Kost + + * ext/mad/gstmad.c: + * ext/mpeg2dec/gstmpeg2dec.c: + * gst/mpegstream/gstmpegdemux.c: + index: use delta frame flags instead of 0 or none + +2011-02-14 17:52:09 +0000 Sjoerd Simons + + * ext/x264/gstx264enc.c: + x264enc: Don't register flags with a value of 0 + Flags with a value of 0 aren't meaningful and will cause + g_value_transform to go into an endless loop when trying to + convert the flags to a string + +2011-02-14 12:54:10 +0200 Stefan Kost + + * common: + Automatic update of common submodule + From f94d739 to 1de7f6a + +2011-02-07 19:58:45 +0100 Mark Nauwelaerts + + * ext/amrwbdec/amrwbdec.c: + amrwbdec: avoid stalling on invalid frame + Skip 1 byte indicating invalid frame type index rather than stalling + on it indefinitely until EOS. + Fixes #639715. + +2011-02-03 18:25:00 +0000 Tim-Philipp Müller + + * tests/check/pipelines/lame.c: + tests: add unit test for lamemp3enc negotiation issue + https://bugzilla.gnome.org/show_bug.cgi?id=641151 + +2011-02-03 18:18:35 +0000 Tim-Philipp Müller + + * ext/lame/gstlamemp3enc.c: + lamemp3enc: implement sinkpad get_caps() function to proxy rate and channels restrictions from downstream + The element downstream of mp3enc might only accept certain sample rates or channels, + make sure we relay any restrictions that do exist to upstream when it does a + get_caps() on the sink pad. That way upstream elements like audioresample or + audioconvert can pick a sample rate / channel configuration that will be accepted, + instead of just negotiating to the highest, which might then be rejected. + https://bugzilla.gnome.org/show_bug.cgi?id=641151 + +2011-01-30 16:17:19 +0100 Edward Hervey + + * gst/asfdemux/asfpacket.c: + asfpacket: Avoid using broken duration extension + Quite a few (broken?) files have a packet duration of 1ms, which is + most definitely wrong for either audio or video packets. + We therefore avoid using that value and instead use other metrics to + determine the buffer duration (like using the extended stream properties + average frame duration if present and valid). + +2011-01-27 15:33:40 +0000 Tim-Philipp Müller + + * configure.ac: + * win32/common/config.h: + win32: fix DEFAULT_AUDIOSINK, should be direct*sound*sink + https://bugzilla.gnome.org/show_bug.cgi?id=640705 + +2011-01-12 16:48:57 +0800 Yang Xichuan + + * gst/mpegaudioparse/gstxingmux.c: + xingmux: Use FALSE instead of 0 as return value for a function returning gboolean + Fixes bug #639291. + +2011-01-06 18:29:06 +0000 Vincent Penquerc'h + + * gst/mpegstream/gstdvddemux.c: + mpegstream: increase allowable gap between streams + The new delay is three times as much as the old one, and just happens + to let me properly decode my "Princess Mononoke" DVD, on which dvdreadsrc + was chocking before at 5:11. + While there, merge the constants used in two places into a define. + https://bugzilla.gnome.org/show_bug.cgi?id=539708 + +2011-01-22 17:31:40 +0100 Miguel Angel Cabrera Moya + + * ext/x264/gstx264enc.c: + x264enc: make tag event writable before modifying tag list in place + To modify an event tag is necessary to be sure that x264enc + has its own copy. + Also fix indentation. + https://bugzilla.gnome.org/show_bug.cgi?id=640272 + +2011-01-24 10:14:56 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/inspect/plugin-a52dec.xml: + * docs/plugins/inspect/plugin-amrnb.xml: + * docs/plugins/inspect/plugin-amrwbdec.xml: + * docs/plugins/inspect/plugin-asf.xml: + * docs/plugins/inspect/plugin-cdio.xml: + * docs/plugins/inspect/plugin-dvdlpcmdec.xml: + * docs/plugins/inspect/plugin-dvdread.xml: + * docs/plugins/inspect/plugin-dvdsub.xml: + * docs/plugins/inspect/plugin-iec958.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-mad.xml: + * docs/plugins/inspect/plugin-mpeg2dec.xml: + * docs/plugins/inspect/plugin-mpegaudioparse.xml: + * docs/plugins/inspect/plugin-mpegstream.xml: + * docs/plugins/inspect/plugin-realmedia.xml: + * docs/plugins/inspect/plugin-siddec.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-x264.xml: + * win32/common/config.h: + Back to development + +=== release 0.10.17 === + +2011-01-21 13:18:51 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-a52dec.xml: + * docs/plugins/inspect/plugin-amrnb.xml: + * docs/plugins/inspect/plugin-amrwbdec.xml: + * docs/plugins/inspect/plugin-asf.xml: + * docs/plugins/inspect/plugin-cdio.xml: + * docs/plugins/inspect/plugin-dvdlpcmdec.xml: + * docs/plugins/inspect/plugin-dvdread.xml: + * docs/plugins/inspect/plugin-dvdsub.xml: + * docs/plugins/inspect/plugin-iec958.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-mad.xml: + * docs/plugins/inspect/plugin-mpeg2dec.xml: + * docs/plugins/inspect/plugin-mpegaudioparse.xml: + * docs/plugins/inspect/plugin-mpegstream.xml: + * docs/plugins/inspect/plugin-realmedia.xml: + * docs/plugins/inspect/plugin-siddec.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-x264.xml: + * gst-plugins-ugly.doap: + * win32/common/config.h: + Release 0.10.17 2011-01-18 11:11:28 +0000 Tim-Philipp Müller diff --git a/NEWS b/NEWS index 396b101c16..795efaabb0 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,35 @@ -This is GStreamer Ugly Plug-ins 0.10.17 "Raised by Wolves" +This is GStreamer Ugly Plug-ins 0.10.18 "Extra Life" + +Changes since 0.10.17: + + * amrwbdec: avoid stalling on invalid frame + * asfpacket: don't rely on data from duration extension + * dvdsubdec: Implement clipping if the video size is smaller than the subpicture size + * dvdsubdec: Output only a single buffer per subpicture and set the correct duration + * lamemp3enc: implement sinkpad get_caps() function to proxy rate and channels restrictions from downstream + * mad: build the mad plugin even if libid3tag is not available + * mpeg2dec: do not fail fatally when downstream is unlinked (let upstream handle that) + * mpeg2dec: don't deadlock when setting an index + * mpegstream: increase allowable gap between streams + * x264enc: allow changing the bitrate and quantitizers dynamically + * x264enc: don't register flags with a value of 0 + * x264enc: implement getcaps function to proxy downstream caps restrictions upstream + * x264enc: make tag event writable before modifying tag list in place + * x264enc: set max bitrate in quality mode + +Bugs fixed since 0.10.17: + + * 539708 : [mpegstream] Increase allowable gap between streams + * 607698 : asfdemux: fix parsing of packets with padding + * 619136 : [dvdsubdec] spits out buffers at video framerate + * 621663 : x264enc: support changing bitrate property on the fly + * 639291 : [xingmux] Return NULL instead of 0 for a function returning gboolean + * 639715 : amrparse: seek error with EOS + * 640272 : x264enc: make tag event writable before modifying tag list in place + * 641151 : lame: doesn't negotiate sample rate properly + * 642360 : x264enc: Don't register flags which have 0 as a value + * 644704 : [dvdsubedc] no SPU clipping implemented + * 647709 : mpeg2dec: errors out on not-linked flow return Changes since 0.10.16: diff --git a/RELEASE b/RELEASE index 3012d58f58..a89531cb58 100644 --- a/RELEASE +++ b/RELEASE @@ -1,5 +1,5 @@ -Release notes for GStreamer Ugly Plug-ins 0.10.17 "Raised by Wolves" +Release notes for GStreamer Ugly Plug-ins 0.10.18 "Extra Life" The GStreamer team is proud to announce a new release @@ -8,6 +8,8 @@ GStreamer Ugly Plug-ins. The 0.10.x series is a stable series targeted at end users. +It is not API or ABI compatible with the stable 0.8.x series. +It is, however, parallel installable with the 0.8.x series. @@ -53,40 +55,34 @@ contains a set of less supported plug-ins that haven't passed the Features of this release - * asfdemux: Handle new type of DRM'd asf files - * dvdreadsrc: fix handling of multi-angle streams - * dvdreadsrc: improve error messages on read errors - * mad: if gst_pad_alloc_buffer() returns a buffer with the wrong size allocate a new one - * mad: support reverse playback - * mpeg2dec: convert the position to stream time before answering to a position query - * mpeg2dec: fix position query by trusting upstream - * mpeg2dec: refactor cropping code to use libgstvideo functions - * mpeg2dec: use gst_pad_alloc_buffer() when cropping buffers - * mpegparse: re-fix flow return handling - * rmdemux: set GST_BUFFER_FLAG_DELTA_UNIT properly - * x264enc: add a note to the docs about encoder latency and queues - * x264enc: also accept YV12 input - * x264enc: Handle codec/encoder tags - * x264enc: Work around a rate control issue in libx264 - * x264: use pkg-config to locate libx264 - * x264: vbv-buf-capacity should have a minimum of 0 - * xingmux: Don't ignore WRONG_STATE and NOT_LINKED when pushing data downstream + * amrwbdec: avoid stalling on invalid frame + * asfpacket: don't rely on data from duration extension + * dvdsubdec: Implement clipping if the video size is smaller than the subpicture size + * dvdsubdec: Output only a single buffer per subpicture and set the correct duration + * lamemp3enc: implement sinkpad get_caps() function to proxy rate and channels restrictions from downstream + * mad: build the mad plugin even if libid3tag is not available + * mpeg2dec: do not fail fatally when downstream is unlinked (let upstream handle that) + * mpeg2dec: don't deadlock when setting an index + * mpegstream: increase allowable gap between streams + * x264enc: allow changing the bitrate and quantitizers dynamically + * x264enc: don't register flags with a value of 0 + * x264enc: implement getcaps function to proxy downstream caps restrictions upstream + * x264enc: make tag event writable before modifying tag list in place + * x264enc: set max bitrate in quality mode Bugs fixed in this release - * 539254 : [dvdreadsrc] DVDs with multiple angles switch angles during read - * 571146 : mpeg2dec: possibly uses wrong strides for 4:2:2 and 4:4:4 YUV with unusual display width or height - * 599515 : Fix dvb for DVB API 3.3 - * 621465 : [x264enc] Video codec information copied incorrectly to output - * 632549 : [mpeg2dec] answers to position queries are wrong for DVDs - * 632861 : [x264enc] really bad quality with tune=zerolatency - * 634840 : x264: use pkg-config to locate dependencies for plugin - * 635291 : x264enc: " vbv-buf-capacity " property should have minimum value of 0 - * 635461 : Crash in mad decoder when changing number of audio output channels in Totem while media is running - * 636107 : x264enc: docs should indicate specifics of using with queues - * 637093 : rmdemux: set GST_BUFFER_FLAG_DELTA_UNIT properly - * 637932 : realmedia: do not use the pad buffer allocation functions in demuxers - * 639226 : [asfdemux] Doesn't handle new PlayReady DRM files + * 539708 : [mpegstream] Increase allowable gap between streams + * 607698 : asfdemux: fix parsing of packets with padding + * 619136 : [dvdsubdec] spits out buffers at video framerate + * 621663 : x264enc: support changing bitrate property on the fly + * 639291 : [xingmux] Return NULL instead of 0 for a function returning gboolean + * 639715 : amrparse: seek error with EOS + * 640272 : x264enc: make tag event writable before modifying tag list in place + * 641151 : lame: doesn't negotiate sample rate properly + * 642360 : x264enc: Don't register flags which have 0 as a value + * 644704 : [dvdsubedc] no SPU clipping implemented + * 647709 : mpeg2dec: errors out on not-linked flow return Download @@ -115,21 +111,17 @@ Applications Contributors to this release - * Benjamin Gaignard - * David Schleef + * Brendan Le Foll * Edward Hervey - * Guillaume Emont - * Jan Schmidt - * Leo Singer + * Luis de Bethencourt * Mark Nauwelaerts - * Rob Clark - * Robert Swain + * Miguel Angel Cabrera Moya + * Olivier Crête * Sebastian Dröge + * Sjoerd Simons * Stefan Kost - * Thiago Santos - * Thomas Green + * Thibault Saunier * Tim-Philipp Müller - * Tristan Matthews * Vincent Penquerc'h - * Wim Taymans + * Yang Xichuan   \ No newline at end of file diff --git a/common b/common index c3cafe123f..69b981f10c 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit c3cafe123f3a363d337a29ad32fdd6d3631f52c0 +Subproject commit 69b981f10caa234ad0ff639179d0fda8505bd94b diff --git a/configure.ac b/configure.ac index 25c6dfba64..00d8d92669 100644 --- a/configure.ac +++ b/configure.ac @@ -498,6 +498,7 @@ sed \ -e 's/.* GST_MAJORMINOR$/#define GST_MAJORMINOR "'$GST_MAJORMINOR'"/' \ -e "s,.* GST_PACKAGE_NAME$,#define GST_PACKAGE_NAME \"${GST_PACKAGE_NAME}\"," \ -e 's/.* GST_PACKAGE_ORIGIN$/#define GST_PACKAGE_ORIGIN "Unknown package origin"/' \ + -e "s,.* GST_PACKAGE_RELEASE_DATETIME$,#define GST_PACKAGE_RELEASE_DATETIME \"${GST_PACKAGE_RELEASE_DATETIME}\"," \ -e 's/.* HAVE_CPU_I386$/#define HAVE_CPU_I386 1/' \ -e 's/.* HAVE_FGETPOS$/#define HAVE_FGETPOS 1/' \ -e 's/.* HAVE_FSETPOS$/#define HAVE_FSETPOS 1/' \ diff --git a/docs/plugins/Makefile.am b/docs/plugins/Makefile.am index 577c7f2e05..ea7fb3a762 100644 --- a/docs/plugins/Makefile.am +++ b/docs/plugins/Makefile.am @@ -44,11 +44,6 @@ DOC_SOURCE_DIR = $(top_srcdir) # Extra options to supply to gtkdoc-scan. SCAN_OPTIONS= -# FIXME : -# there's something wrong with gstreamer-sections.txt not being in the dist -# maybe it doesn't resolve; we're adding it below for now -#EXTRA_DIST = gstreamer.types.in gstreamer.hierarchy $(DOC_MODULE)-sections.txt gstreamer-sections.txt $(DOC_MAIN_SGML_FILE) - # Extra options to supply to gtkdoc-mkdb. MKDB_OPTIONS=--sgml-mode --source-suffixes=c,h,cc,m diff --git a/docs/plugins/gst-plugins-ugly-plugins.args b/docs/plugins/gst-plugins-ugly-plugins.args index e9ae943789..7c99abec7b 100644 --- a/docs/plugins/gst-plugins-ugly-plugins.args +++ b/docs/plugins/gst-plugins-ugly-plugins.args @@ -31,7 +31,7 @@ GstMPEGParse::max-scr-gap gint ->= G_MAXULONG +>= -1 rw Max SCR gap Maximum allowed gap between expected and actual SCR values. -1 means never adjust. @@ -81,7 +81,7 @@ GstCdioCddaSrc::read-speed gint -[G_MAXULONG,100] +[-1,100] rw Read speed Read from device at the specified speed (-1 = default). @@ -291,7 +291,7 @@ GstLame::highpass-width gint ->= G_MAXULONG +>= -1 rw Highpass width frequency(kHz) - default 15% of highpass freq. @@ -311,7 +311,7 @@ GstLame::lowpass-width gint ->= G_MAXULONG +>= -1 rw Lowpass width frequency(kHz) - default 15% of lowpass freq. @@ -711,7 +711,7 @@ GstTwoLame::psymodel gint -[G_MAXULONG,4] +[-1,4] rw Psychoacoustic Model Psychoacoustic model used to encode the audio. @@ -881,7 +881,7 @@ GstX264Enc::key-int-max guint -<= G_MAXINT +<= G_MAXLONG rw Key-frame maximal interval Maximal distance between two key-frames (0 for automatic). @@ -1101,7 +1101,7 @@ GstX264Enc::sync-lookahead gint -[G_MAXULONG,250] +[-1,250] rw Sync Lookahead Number of buffer frames for threaded lookahead (-1 for automatic). diff --git a/docs/plugins/gst-plugins-ugly-plugins.hierarchy b/docs/plugins/gst-plugins-ugly-plugins.hierarchy index 361e16e99a..2ce46e6ecb 100644 --- a/docs/plugins/gst-plugins-ugly-plugins.hierarchy +++ b/docs/plugins/gst-plugins-ugly-plugins.hierarchy @@ -1,61 +1,61 @@ GObject GstObject - GstPad - GstPadTemplate - GstPluginFeature - GstElementFactory - GstTypeFindFactory - GstIndexFactory + GstBus + GstClock GstElement - GstBin - GstPipeline - GstRMDemux - GstRealAudioDemux - GstRDTDepay - GstRDTManager - GstRTSPReal - GstBaseSrc - GstPushSrc - GstPNMSrc - GstDvdReadSrc - GstCddaBaseSrc - GstCdioCddaSrc - GstMad - GstX264Enc - GstTwoLame - GstSidDec - GstLameMP3Enc - GstLame + AC3IEC GstA52Dec - GstAmrwbDec - GstMpeg2dec + GstASFDemux GstAmrnbDec GstAmrnbEnc - GstSynaesthesia + GstAmrwbDec + GstBaseRTPDepayload + GstRtpAsfDepay + GstBaseSrc + GstPushSrc + GstCddaBaseSrc + GstCdioCddaSrc + GstDvdReadSrc + GstPNMSrc + GstBin + GstPipeline + GstDvdLpcmDec GstDvdSubDec GstDvdSubParse - AC3IEC - GstDvdLpcmDec - GstXingMux + GstLame + GstLameMP3Enc GstMPEGAudioParse GstMPEGParse GstMPEGDemux GstDVDDemux - GstASFDemux + GstMad + GstMpeg2dec + GstRDTDepay + GstRDTManager + GstRMDemux + GstRTSPReal GstRTSPWMS - GstBaseRTPDepayload - GstRtpAsfDepay - GstBus + GstRealAudioDemux + GstSidDec + GstSynaesthesia + GstTwoLame + GstX264Enc + GstXingMux + GstPad + GstPadTemplate + GstPlugin + GstPluginFeature + GstElementFactory + GstIndexFactory + GstTypeFindFactory + GstRegistry GstTask GstTaskPool - GstClock - GstPlugin - GstRegistry GstSignalObject GInterface GTypePlugin GstChildProxy - GstURIHandler - GstRTSPExtension GstPreset + GstRTSPExtension GstTagSetter + GstURIHandler diff --git a/docs/plugins/gst-plugins-ugly-plugins.interfaces b/docs/plugins/gst-plugins-ugly-plugins.interfaces index 63b25bb8e4..4112822e26 100644 --- a/docs/plugins/gst-plugins-ugly-plugins.interfaces +++ b/docs/plugins/gst-plugins-ugly-plugins.interfaces @@ -1,13 +1,13 @@ +GstAmrnbEnc GstPreset GstBin GstChildProxy -GstPipeline GstChildProxy -GstRTSPReal GstRTSPExtension -GstPNMSrc GstURIHandler -GstDvdReadSrc GstURIHandler GstCddaBaseSrc GstURIHandler GstCdioCddaSrc GstURIHandler -GstX264Enc GstPreset -GstTwoLame GstPreset -GstLameMP3Enc GstPreset +GstDvdReadSrc GstURIHandler GstLame GstTagSetter GstPreset -GstAmrnbEnc GstPreset +GstLameMP3Enc GstPreset +GstPNMSrc GstURIHandler +GstPipeline GstChildProxy +GstRTSPReal GstRTSPExtension GstRTSPWMS GstRTSPExtension +GstTwoLame GstPreset +GstX264Enc GstPreset diff --git a/docs/plugins/inspect/plugin-a52dec.xml b/docs/plugins/inspect/plugin-a52dec.xml index bd656e6a13..600204f298 100644 --- a/docs/plugins/inspect/plugin-a52dec.xml +++ b/docs/plugins/inspect/plugin-a52dec.xml @@ -3,10 +3,10 @@ Decodes ATSC A/52 encoded audio streams ../../ext/a52dec/.libs/libgsta52dec.so libgsta52dec.so - 0.10.17.2 + 0.10.18.1 GPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-amrnb.xml b/docs/plugins/inspect/plugin-amrnb.xml index ae3b74fe84..0fa9917dae 100644 --- a/docs/plugins/inspect/plugin-amrnb.xml +++ b/docs/plugins/inspect/plugin-amrnb.xml @@ -3,10 +3,10 @@ Adaptive Multi-Rate Narrow-Band ../../ext/amrnb/.libs/libgstamrnb.so libgstamrnb.so - 0.10.17.2 + 0.10.18.1 unknown gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-amrwbdec.xml b/docs/plugins/inspect/plugin-amrwbdec.xml index 5dd7e70099..51247198f7 100644 --- a/docs/plugins/inspect/plugin-amrwbdec.xml +++ b/docs/plugins/inspect/plugin-amrwbdec.xml @@ -3,10 +3,10 @@ Adaptive Multi-Rate Wide-Band Decoder ../../ext/amrwbdec/.libs/libgstamrwbdec.so libgstamrwbdec.so - 0.10.17.2 + 0.10.18.1 unknown gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-asf.xml b/docs/plugins/inspect/plugin-asf.xml index bbce276764..b9d86da6ce 100644 --- a/docs/plugins/inspect/plugin-asf.xml +++ b/docs/plugins/inspect/plugin-asf.xml @@ -3,10 +3,10 @@ Demuxes and muxes audio and video in Microsofts ASF format ../../gst/asfdemux/.libs/libgstasf.so libgstasf.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-cdio.xml b/docs/plugins/inspect/plugin-cdio.xml index 90318e58c7..4a8edcb724 100644 --- a/docs/plugins/inspect/plugin-cdio.xml +++ b/docs/plugins/inspect/plugin-cdio.xml @@ -3,10 +3,10 @@ Read audio from audio CDs ../../ext/cdio/.libs/libgstcdio.so libgstcdio.so - 0.10.17.2 + 0.10.18.1 GPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-dvdlpcmdec.xml b/docs/plugins/inspect/plugin-dvdlpcmdec.xml index 4314f2b33a..05b31427ae 100644 --- a/docs/plugins/inspect/plugin-dvdlpcmdec.xml +++ b/docs/plugins/inspect/plugin-dvdlpcmdec.xml @@ -3,10 +3,10 @@ Decode DVD LPCM frames into standard PCM ../../gst/dvdlpcmdec/.libs/libgstdvdlpcmdec.so libgstdvdlpcmdec.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-dvdread.xml b/docs/plugins/inspect/plugin-dvdread.xml index 8a8085f7bd..b033d3e63e 100644 --- a/docs/plugins/inspect/plugin-dvdread.xml +++ b/docs/plugins/inspect/plugin-dvdread.xml @@ -3,10 +3,10 @@ Access a DVD with dvdread ../../ext/dvdread/.libs/libgstdvdread.so libgstdvdread.so - 0.10.17.2 + 0.10.18.1 GPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-dvdsub.xml b/docs/plugins/inspect/plugin-dvdsub.xml index 14140e7bef..dafb7d7879 100644 --- a/docs/plugins/inspect/plugin-dvdsub.xml +++ b/docs/plugins/inspect/plugin-dvdsub.xml @@ -3,10 +3,10 @@ DVD subtitle parser and decoder ../../gst/dvdsub/.libs/libgstdvdsub.so libgstdvdsub.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-iec958.xml b/docs/plugins/inspect/plugin-iec958.xml index 58e5728464..49169cd8c8 100644 --- a/docs/plugins/inspect/plugin-iec958.xml +++ b/docs/plugins/inspect/plugin-iec958.xml @@ -3,10 +3,10 @@ Convert raw AC3 into IEC958 (S/PDIF) frames ../../gst/iec958/.libs/libgstiec958.so libgstiec958.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-lame.xml b/docs/plugins/inspect/plugin-lame.xml index 2f2f598df0..7579832f81 100644 --- a/docs/plugins/inspect/plugin-lame.xml +++ b/docs/plugins/inspect/plugin-lame.xml @@ -3,10 +3,10 @@ Encode MP3s with LAME ../../ext/lame/.libs/libgstlame.so libgstlame.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-mad.xml b/docs/plugins/inspect/plugin-mad.xml index 596cf1bd41..164bf65416 100644 --- a/docs/plugins/inspect/plugin-mad.xml +++ b/docs/plugins/inspect/plugin-mad.xml @@ -3,10 +3,10 @@ mp3 decoding based on the mad library ../../ext/mad/.libs/libgstmad.so libgstmad.so - 0.10.17.2 + 0.10.18.1 GPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-mpeg2dec.xml b/docs/plugins/inspect/plugin-mpeg2dec.xml index 8918cbfd42..18543cd98e 100644 --- a/docs/plugins/inspect/plugin-mpeg2dec.xml +++ b/docs/plugins/inspect/plugin-mpeg2dec.xml @@ -3,10 +3,10 @@ LibMpeg2 decoder ../../ext/mpeg2dec/.libs/libgstmpeg2dec.so libgstmpeg2dec.so - 0.10.17.2 + 0.10.18.1 GPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-mpegaudioparse.xml b/docs/plugins/inspect/plugin-mpegaudioparse.xml index 07c7cd30be..c5a78c23b1 100644 --- a/docs/plugins/inspect/plugin-mpegaudioparse.xml +++ b/docs/plugins/inspect/plugin-mpegaudioparse.xml @@ -3,10 +3,10 @@ MPEG-1 layer 1/2/3 audio stream elements ../../gst/mpegaudioparse/.libs/libgstmpegaudioparse.so libgstmpegaudioparse.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-mpegstream.xml b/docs/plugins/inspect/plugin-mpegstream.xml index c5f145163d..ddaa0fe06a 100644 --- a/docs/plugins/inspect/plugin-mpegstream.xml +++ b/docs/plugins/inspect/plugin-mpegstream.xml @@ -3,10 +3,10 @@ MPEG system stream parser ../../gst/mpegstream/.libs/libgstmpegstream.so libgstmpegstream.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-realmedia.xml b/docs/plugins/inspect/plugin-realmedia.xml index c183a8ff7f..2043f844ec 100644 --- a/docs/plugins/inspect/plugin-realmedia.xml +++ b/docs/plugins/inspect/plugin-realmedia.xml @@ -3,10 +3,10 @@ RealMedia support plugins ../../gst/realmedia/.libs/libgstrmdemux.so libgstrmdemux.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-siddec.xml b/docs/plugins/inspect/plugin-siddec.xml index 99c30c2022..4dabbb1d39 100644 --- a/docs/plugins/inspect/plugin-siddec.xml +++ b/docs/plugins/inspect/plugin-siddec.xml @@ -3,10 +3,10 @@ Uses libsidplay to decode .sid files ../../ext/sidplay/.libs/libgstsid.so libgstsid.so - 0.10.17.2 + 0.10.18.1 GPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-synaesthesia.xml b/docs/plugins/inspect/plugin-synaesthesia.xml index ba1446206b..a3b2ac29bf 100644 --- a/docs/plugins/inspect/plugin-synaesthesia.xml +++ b/docs/plugins/inspect/plugin-synaesthesia.xml @@ -3,7 +3,7 @@ Creates video visualizations of audio input, using stereo and pitch information ../../gst/synaesthesia/.libs/libgstsynaesthesia.so libgstsynaesthesia.so - 0.10.17.2 + 0.10.17.4 GPL gst-plugins-ugly GStreamer Ugly Plug-ins prerelease diff --git a/docs/plugins/inspect/plugin-twolame.xml b/docs/plugins/inspect/plugin-twolame.xml index 262046e0c9..375034adf4 100644 --- a/docs/plugins/inspect/plugin-twolame.xml +++ b/docs/plugins/inspect/plugin-twolame.xml @@ -3,10 +3,10 @@ Encode MP2s with TwoLAME ../../ext/twolame/.libs/libgsttwolame.so libgsttwolame.so - 0.10.17.2 + 0.10.18.1 LGPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/docs/plugins/inspect/plugin-x264.xml b/docs/plugins/inspect/plugin-x264.xml index 787b763483..1c884c12ad 100644 --- a/docs/plugins/inspect/plugin-x264.xml +++ b/docs/plugins/inspect/plugin-x264.xml @@ -3,10 +3,10 @@ libx264-based H264 plugins ../../ext/x264/.libs/libgstx264.so libgstx264.so - 0.10.17.2 + 0.10.18.1 GPL gst-plugins-ugly - GStreamer Ugly Plug-ins prerelease + GStreamer Ugly Plug-ins git Unknown package origin diff --git a/ext/lame/Makefile.am b/ext/lame/Makefile.am index c74bff1d42..4d83abaf3b 100644 --- a/ext/lame/Makefile.am +++ b/ext/lame/Makefile.am @@ -1,8 +1,8 @@ plugin_LTLIBRARIES = libgstlame.la libgstlame_la_SOURCES = gstlame.c gstlamemp3enc.c plugin.c -libgstlame_la_CFLAGS = $(GST_CFLAGS) $(LAME_CFLAGS) -libgstlame_la_LIBADD = $(LAME_LIBS) $(GST_LIBS) +libgstlame_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(LAME_CFLAGS) +libgstlame_la_LIBADD = $(LAME_LIBS) $(GST_PLUGINS_BASE_LIBS) -lgstpbutils-@GST_MAJORMINOR@ $(GST_LIBS) libgstlame_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) libgstlame_la_LIBTOOLFLAGS = --tag=disable-static diff --git a/ext/lame/gstlamemp3enc.c b/ext/lame/gstlamemp3enc.c index 21bc9563ef..c80ec8bc95 100644 --- a/ext/lame/gstlamemp3enc.c +++ b/ext/lame/gstlamemp3enc.c @@ -68,6 +68,8 @@ #include "gstlamemp3enc.h" #include +#include + /* lame < 3.98 */ #ifndef HAVE_LAME_SET_VBR_QUALITY #define lame_set_VBR_quality(flags,q) lame_set_VBR_q((flags),(int)(q)) @@ -186,7 +188,7 @@ static void gst_lamemp3enc_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); static gboolean gst_lamemp3enc_sink_event (GstPad * pad, GstEvent * event); static GstFlowReturn gst_lamemp3enc_chain (GstPad * pad, GstBuffer * buf); -static gboolean gst_lamemp3enc_setup (GstLameMP3Enc * lame); +static gboolean gst_lamemp3enc_setup (GstLameMP3Enc * lame, GstTagList ** tags); static GstStateChangeReturn gst_lamemp3enc_change_state (GstElement * element, GstStateChange transition); @@ -320,6 +322,7 @@ gst_lamemp3enc_sink_setcaps (GstPad * pad, GstCaps * caps) gint version; GstStructure *structure; GstCaps *othercaps; + GstTagList *tags = NULL; lame = GST_LAMEMP3ENC (GST_PAD_PARENT (pad)); structure = gst_caps_get_structure (caps, 0); @@ -330,10 +333,9 @@ gst_lamemp3enc_sink_setcaps (GstPad * pad, GstCaps * caps) goto no_channels; GST_DEBUG_OBJECT (lame, "setting up lame"); - if (!gst_lamemp3enc_setup (lame)) + if (!gst_lamemp3enc_setup (lame, &tags)) goto setup_failed; - out_samplerate = lame_get_out_samplerate (lame->lgf); if (out_samplerate == 0) goto zero_output_rate; @@ -361,8 +363,20 @@ gst_lamemp3enc_sink_setcaps (GstPad * pad, GstCaps * caps) /* and use these caps */ gst_pad_set_caps (lame->srcpad, othercaps); + + if (tags) { + gst_pb_utils_add_codec_description_to_tag_list (tags, GST_TAG_CODEC, + othercaps); + gst_pb_utils_add_codec_description_to_tag_list (tags, GST_TAG_AUDIO_CODEC, + othercaps); + } + gst_caps_unref (othercaps); + if (tags) + gst_element_found_tags_for_pad (GST_ELEMENT_CAST (lame), lame->srcpad, + tags); + return TRUE; no_rate: @@ -379,6 +393,8 @@ zero_output_rate: { GST_ELEMENT_ERROR (lame, LIBRARY, SETTINGS, (NULL), ("LAMEMP3ENC decided on a zero sample rate")); + if (tags) + gst_tag_list_free (tags); return FALSE; } setup_failed: @@ -710,10 +726,21 @@ gst_lamemp3enc_sink_event (GstPad * pad, GstEvent * event) ret = gst_pad_push_event (lame->srcpad, event); break; } - case GST_EVENT_TAG: - GST_DEBUG_OBJECT (lame, "ignoring TAG event, passing it on"); + case GST_EVENT_TAG:{ + GstTagList *tags; + + gst_event_parse_tag (event, &tags); + + tags = gst_tag_list_copy (tags); + gst_event_unref (event); + + gst_tag_list_remove_tag (tags, GST_TAG_CODEC); + gst_tag_list_remove_tag (tags, GST_TAG_AUDIO_CODEC); + event = gst_event_new_tag (tags); + ret = gst_pad_push_event (lame->srcpad, event); break; + } default: ret = gst_pad_event_default (pad, event); break; @@ -831,12 +858,16 @@ not_setup: /* set up the encoder state */ static gboolean -gst_lamemp3enc_setup (GstLameMP3Enc * lame) +gst_lamemp3enc_setup (GstLameMP3Enc * lame, GstTagList ** tags) { #define CHECK_ERROR(command) G_STMT_START {\ if ((command) < 0) { \ GST_ERROR_OBJECT (lame, "setup failed: " G_STRINGIFY (command)); \ + if (*tags) { \ + gst_tag_list_free (*tags); \ + *tags = NULL; \ + } \ return FALSE; \ } \ }G_STMT_END @@ -859,6 +890,8 @@ gst_lamemp3enc_setup (GstLameMP3Enc * lame) if (lame->lgf == NULL) return FALSE; + *tags = gst_tag_list_new (); + /* post latency message on the bus */ gst_element_post_message (GST_ELEMENT (lame), gst_message_new_latency (GST_OBJECT (lame))); @@ -905,6 +938,8 @@ gst_lamemp3enc_setup (GstLameMP3Enc * lame) CHECK_ERROR (lame_set_VBR (lame->lgf, vbr_abr)); CHECK_ERROR (lame_set_VBR_mean_bitrate_kbps (lame->lgf, lame->bitrate)); } + gst_tag_list_add (*tags, GST_TAG_MERGE_REPLACE, GST_TAG_BITRATE, + lame->bitrate, NULL); } if (lame->encoding_engine_quality == LAMEMP3ENC_ENCODING_ENGINE_QUALITY_FAST) diff --git a/ext/mad/gstmad.c b/ext/mad/gstmad.c index 372994e8d5..3070e35b0d 100644 --- a/ext/mad/gstmad.c +++ b/ext/mad/gstmad.c @@ -883,6 +883,7 @@ gst_mad_update_info (GstMad * mad) { struct mad_header *header = &mad->frame.header; gboolean changed = FALSE; + GstTagList *list = NULL; #define CHECK_HEADER(h1,str) \ G_STMT_START{ \ @@ -905,11 +906,9 @@ G_STMT_START{ \ CHECK_HEADER (layer, "layer"); CHECK_HEADER (mode, "mode"); CHECK_HEADER (emphasis, "emphasis"); - mad->header.bitrate = header->bitrate; mad->new_header = FALSE; if (changed) { - GstTagList *list; GEnumValue *mode; GEnumValue *emphasis; @@ -932,15 +931,29 @@ G_STMT_START{ \ GST_TAG_AUDIO_CODEC, str, NULL); g_free (str); } - if (!mad->xing_found) { - gst_tag_list_add (list, GST_TAG_MERGE_REPLACE, - GST_TAG_BITRATE, mad->header.bitrate, NULL); - } - gst_element_post_message (GST_ELEMENT (mad), - gst_message_new_tag (GST_OBJECT (mad), list)); } + + changed = FALSE; + CHECK_HEADER (bitrate, "bitrate"); + if (!mad->xing_found && changed) { + if (!list) + list = gst_tag_list_new (); + gst_tag_list_add (list, GST_TAG_MERGE_REPLACE, + GST_TAG_BITRATE, mad->header.bitrate, NULL); + } + mad->header.bitrate = header->bitrate; #undef CHECK_HEADER + if (list) { + gst_element_post_message (GST_ELEMENT (mad), + gst_message_new_tag (GST_OBJECT (mad), gst_tag_list_copy (list))); + + if (mad->need_newsegment) + mad->pending_events = + g_list_append (mad->pending_events, gst_event_new_tag (list)); + else + gst_pad_push_event (mad->srcpad, gst_event_new_tag (list)); + } } static gboolean @@ -1644,7 +1657,7 @@ gst_mad_chain (GstPad * pad, GstBuffer * buffer) * bigger than half a frame we then use the incoming timestamp * as a reference, otherwise we continue using our accumulated samples * counter */ - if (ABS (mad->total_samples - total) > nsamples / 2) { + if (ABS (((gint64) (mad->total_samples)) - total) > nsamples / 2) { GST_DEBUG_OBJECT (mad, "difference is bigger than half a frame, " "using calculated samples offset %" G_GUINT64_FORMAT, total); /* Override our accumulated samples counter */ diff --git a/ext/mpeg2dec/gstmpeg2dec.c b/ext/mpeg2dec/gstmpeg2dec.c index 5867462e55..3f7474611f 100644 --- a/ext/mpeg2dec/gstmpeg2dec.c +++ b/ext/mpeg2dec/gstmpeg2dec.c @@ -299,10 +299,11 @@ gst_mpeg2dec_set_index (GstElement * element, GstIndex * index) mpeg2dec->index_id = 0; if (index) { mpeg2dec->index = gst_object_ref (index); - gst_index_get_writer_id (index, GST_OBJECT (element), &mpeg2dec->index_id); } - GST_OBJECT_UNLOCK (mpeg2dec); + /* object lock might be taken again */ + if (index) + gst_index_get_writer_id (index, GST_OBJECT (element), &mpeg2dec->index_id); } static GstIndex * diff --git a/ext/x264/gstx264enc.c b/ext/x264/gstx264enc.c index 098b41f0a8..66e764797e 100644 --- a/ext/x264/gstx264enc.c +++ b/ext/x264/gstx264enc.c @@ -1466,7 +1466,7 @@ gst_x264_enc_sink_get_caps (GstPad * pad) /* If we already have caps return them */ if (GST_PAD_CAPS (pad)) - return GST_PAD_CAPS (pad); + return gst_caps_ref (GST_PAD_CAPS (pad)); encoder = GST_X264_ENC (gst_pad_get_parent (pad)); if (!encoder) @@ -1495,6 +1495,8 @@ gst_x264_enc_sink_get_caps (GstPad * pad) caps = gst_caps_intersect (peercaps, templcaps); gst_caps_unref (peercaps); + gst_object_unref (peer); + peer = NULL; } else { caps = gst_caps_copy (gst_pad_get_pad_template_caps (pad)); } diff --git a/gst-plugins-ugly.doap b/gst-plugins-ugly.doap index 51f99b1d39..65b8db2b26 100644 --- a/gst-plugins-ugly.doap +++ b/gst-plugins-ugly.doap @@ -33,6 +33,17 @@ might be widely known to present patent problems. + + + 0.10.18 + 0.10 + Extra Life + 2011-05-10 + + + + + 0.10.17 diff --git a/gst/asfdemux/gstrtpasfdepay.c b/gst/asfdemux/gstrtpasfdepay.c index 7c0eba5485..12ce8afdd3 100644 --- a/gst/asfdemux/gstrtpasfdepay.c +++ b/gst/asfdemux/gstrtpasfdepay.c @@ -157,7 +157,17 @@ gst_rtp_asf_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps) if (ps_string == NULL || *ps_string == '\0') goto no_packetsize; - depay->packet_size = atoi (ps_string); + if (depay->packet_size) { + /* header sent again following seek; + * discard to avoid confusing upstream */ + if (depay->packet_size == atoi (ps_string)) { + goto duplicate_header; + } else { + /* since we should fiddle with downstream state to handle this */ + goto refuse_renegotiation; + } + } else + depay->packet_size = atoi (ps_string); if (depay->packet_size <= 16) goto invalid_packetsize; @@ -203,6 +213,16 @@ invalid_headers: g_free (headers); return FALSE; } +duplicate_header: + { + GST_DEBUG_OBJECT (depayload, "discarding duplicate header"); + return TRUE; + } +refuse_renegotiation: + { + GST_WARNING_OBJECT (depayload, "cannot renegotiate to different header"); + return FALSE; + } } static gint @@ -308,7 +328,6 @@ gst_rtp_asf_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf) if (GST_BUFFER_IS_DISCONT (buf)) { GST_LOG_OBJECT (depay, "got DISCONT"); gst_adapter_clear (depay->adapter); - depay->wait_start = TRUE; depay->discont = TRUE; } @@ -408,50 +427,46 @@ gst_rtp_asf_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf) /* Fragmented packet handling */ outbuf = NULL; - if (len_offs == 0 && (available = gst_adapter_available (depay->adapter))) { - /* Beginning of a new fragmented packet, Extract the previous buffer if any */ - GST_DEBUG ("Extracting previous fragmented buffer from adapter"); - sub = gst_adapter_take_buffer (depay->adapter, available); - if (available < depay->packet_size) { - /* Add padding if needed */ - GST_DEBUG ("Padding outgoing buffer to packet_size (%d, was %d", - depay->packet_size, available); - outbuf = gst_buffer_new_and_alloc (depay->packet_size); - memcpy (GST_BUFFER_DATA (outbuf), GST_BUFFER_DATA (sub), available); - memset (GST_BUFFER_DATA (outbuf) + available, 0, - depay->packet_size - available); - gst_buffer_unref (sub); - gst_rtp_asf_depay_set_padding (depay, outbuf, - depay->packet_size - available); - } else - outbuf = sub; - } - GST_DEBUG ("storing fragmented buffer continuation and returning"); - available = gst_adapter_available (depay->adapter); - GST_DEBUG ("Available bytes (%d), len_offs (%d)", available, len_offs); - if ((available = gst_adapter_available (depay->adapter))) { - if (available != len_offs) { - GST_WARNING ("Available bytes (%d) != len_offs (%d), trimming buffer", - available, len_offs); - sub = gst_adapter_take_buffer (depay->adapter, len_offs); - gst_adapter_clear (depay->adapter); - if (sub) - gst_adapter_push (depay->adapter, sub); + if (len_offs == (available = gst_adapter_available (depay->adapter))) { + /* fragment aligns with what we have, add it */ + GST_LOG_OBJECT (depay, "collecting fragment"); + sub = gst_rtp_buffer_get_payload_subbuffer (buf, offset, packet_len); + gst_adapter_push (depay->adapter, sub); + /* RTP marker bit M is set if this is last fragment */ + if (gst_rtp_buffer_get_marker (buf)) { + GST_LOG_OBJECT (depay, "last fragment, assembling packet"); + outbuf = + gst_adapter_take_buffer (depay->adapter, available + packet_len); } + } else { + if (available) { + GST_WARNING_OBJECT (depay, "Offset doesn't match previous data?!"); + GST_DEBUG_OBJECT (depay, "clearing for re-sync"); + gst_adapter_clear (depay->adapter); + } else + GST_DEBUG_OBJECT (depay, "waiting for start of packet"); } - sub = gst_rtp_buffer_get_payload_subbuffer (buf, offset, packet_len); - gst_adapter_push (depay->adapter, sub); - /* If we haven't completed a full ASF packet, return */ - if (!outbuf) - return NULL; - } else if (packet_len >= depay->packet_size) { - GST_LOG_OBJECT (depay, "creating subbuffer"); - outbuf = gst_rtp_buffer_get_payload_subbuffer (buf, offset, packet_len); } else { - GST_LOG_OBJECT (depay, "padding buffer"); - /* we need to pad with zeroes to packet_size if it's smaller */ - outbuf = gst_buffer_new_and_alloc (depay->packet_size); - memcpy (GST_BUFFER_DATA (outbuf), payload, packet_len); + GST_LOG_OBJECT (depay, "collecting packet"); + outbuf = gst_rtp_buffer_get_payload_subbuffer (buf, offset, packet_len); + } + + /* If we haven't completed a full ASF packet, return */ + if (!outbuf) + return NULL; + + /* we need to pad with zeroes to packet_size if it's smaller */ + g_assert (packet_len == GST_BUFFER_SIZE (outbuf)); + packet_len = GST_BUFFER_SIZE (outbuf); + if (packet_len < depay->packet_size) { + GstBuffer *tmp; + + GST_LOG_OBJECT (depay, "padding buffer size %d to packet size %d", + packet_len, depay->packet_size); + tmp = gst_buffer_new_and_alloc (depay->packet_size); + memcpy (GST_BUFFER_DATA (tmp), GST_BUFFER_DATA (outbuf), packet_len); + gst_buffer_unref (outbuf); + outbuf = tmp; memset (GST_BUFFER_DATA (outbuf) + packet_len, 0, depay->packet_size - packet_len); gst_rtp_asf_depay_set_padding (depay, outbuf, @@ -504,7 +519,6 @@ gst_rtp_asf_depay_change_state (GstElement * element, GstStateChange trans) switch (trans) { case GST_STATE_CHANGE_READY_TO_PAUSED: gst_adapter_clear (depay->adapter); - depay->wait_start = TRUE; depay->discont = TRUE; break; default: diff --git a/gst/asfdemux/gstrtpasfdepay.h b/gst/asfdemux/gstrtpasfdepay.h index 1389330843..724c95bbde 100644 --- a/gst/asfdemux/gstrtpasfdepay.h +++ b/gst/asfdemux/gstrtpasfdepay.h @@ -50,7 +50,6 @@ struct _GstRtpAsfDepay GstAdapter *adapter; gboolean discont; - gboolean wait_start; }; struct _GstRtpAsfDepayClass diff --git a/gst/realmedia/rmdemux.c b/gst/realmedia/rmdemux.c index e6b8ec6ddc..56c1f44483 100644 --- a/gst/realmedia/rmdemux.c +++ b/gst/realmedia/rmdemux.c @@ -400,9 +400,6 @@ find_seek_offset_bytes (GstRMDemux * rmdemux, guint target) GSList *cur; gboolean ret = FALSE; - if (target < 0) - return FALSE; - for (cur = rmdemux->streams; cur; cur = cur->next) { GstRMDemuxStream *stream = cur->data; diff --git a/po/bg.po b/po/bg.po index 3625c1c895..6e6329f779 100644 --- a/po/bg.po +++ b/po/bg.po @@ -1,15 +1,15 @@ # Bulgarian translation of gst-plugins-ugly. -# Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +# Copyright (C) 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. # This file is distributed under the same license as the gst-plugins-ugly package. -# Alexander Shopov , 2007, 2008, 2009, 2010. +# Alexander Shopov , 2007, 2008, 2009, 2010, 2011. # # msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.14.2\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2011-01-07 14:34+0000\n" -"PO-Revision-Date: 2010-11-04 14:22+0200\n" +"POT-Creation-Date: 2011-04-27 12:41+0100\n" +"PO-Revision-Date: 2011-04-26 22:34+0300\n" "Last-Translator: Alexander Shopov \n" "Language-Team: Bulgarian \n" "Language: \n" @@ -50,10 +50,11 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"DVD-то не може да бъде прочетено. Причината може да е, че DVD-то е шифрирано " +"и не е инсталирана библиотека за дешифриране." -#, fuzzy msgid "Could not read DVD." -msgstr "DVD-то не може да бъде отворено" +msgstr "DVD-то не може да бъде прочетено." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" diff --git a/po/da.po b/po/da.po index e1f137b310..8e4da68cc5 100644 --- a/po/da.po +++ b/po/da.po @@ -1,23 +1,22 @@ # Danish translation of gst-plugins-ugly. -# Copyright (C) 2009 gst. +# Copyright (C) 2011 gst. # This file is distributed under the same license as the gst-plugins-ugly package. # # Mogens Jaeger , 2007. -# Joe Hansen , 2008, 2009. +# Joe Hansen , 2008, 2009, 2011. # msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly-0.10.10.2\n" +"Project-Id-Version: gst-plugins-ugly-0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2010-10-15 15:20+0100\n" -"PO-Revision-Date: 2009-04-13 03:56+0100\n" +"POT-Creation-Date: 2011-04-30 20:03+0100\n" +"PO-Revision-Date: 2011-04-28 03:56+0100\n" "Last-Translator: Joe Hansen \n" "Language-Team: Danish \n" "Language: da\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: KBabel 1.11.2\n" msgid "Could not read from CD." msgstr "Kunne ikke åbne cd." @@ -51,10 +50,11 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"Kunne ikke læse dvd. Dette kan være fordi dvd'en er krypteret og et dvd-" +"dekrypteringsbibliotek ikke er installeret." -#, fuzzy msgid "Could not read DVD." -msgstr "Kunne ikke åbne dvd" +msgstr "Kunne ikke læse dvd." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" diff --git a/po/de.po b/po/de.po index 3177c66346..2e41412a01 100644 --- a/po/de.po +++ b/po/de.po @@ -7,15 +7,14 @@ # Line-out = Ausgang # Pipeline = Weiterleitung # Stream = Strom +# Christian Kirbach , 2009, 2011. # -# Christian Kirbach , 2009. -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.11.2\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2010-10-15 15:20+0100\n" -"PO-Revision-Date: 2009-07-10 12:41+0200\n" +"POT-Creation-Date: 2011-04-30 20:03+0100\n" +"PO-Revision-Date: 2011-04-28 00:04+0200\n" "Last-Translator: Christian Kirbach \n" "Language-Team: German \n" "Language: de\n" @@ -56,10 +55,12 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"DVD konnten nicht gelesen werden. Dies könnte daran liegen, dass die DVD " +"verschlüsselt ist und eine Bibliothek zur DVD-Entschlüsselung nicht " +"installiert ist." -#, fuzzy msgid "Could not read DVD." -msgstr "Die DVD konnte nicht geöffnet werden." +msgstr "DVD konnten nicht gelesen werden." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" diff --git a/po/fr.po b/po/fr.po index e02df835d2..1e1e54700c 100644 --- a/po/fr.po +++ b/po/fr.po @@ -1,15 +1,15 @@ # Translation of gst-plugins-ugly to French -# Copyright (C) 2003-2008 GStreamer core team +# Copyright (C) 2003-2011 GStreamer core team # This file is distributed under the same license as the gst-plugins-ugly package. # -# Claude Paroz , 2008. +# Claude Paroz , 2008-2011. # msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.8.2\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2010-10-15 15:20+0100\n" -"PO-Revision-Date: 2008-08-22 11:49+0200\n" +"POT-Creation-Date: 2011-04-30 20:03+0100\n" +"PO-Revision-Date: 2011-04-28 09:25+0200\n" "Last-Translator: Claude Paroz \n" "Language-Team: French \n" "Language: fr\n" @@ -49,10 +49,11 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"Impossible de lire le DVD. Il se peut que le DVD soit chiffré et qu'aucune " +"bibliothèque de déchiffrement ne soit installée." -#, fuzzy msgid "Could not read DVD." -msgstr "Impossible d'ouvrir le DVD" +msgstr "Impossible de lire le DVD." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" @@ -66,25 +67,13 @@ msgstr "" "Le débit binaire demandé de %d kbit/s pour la propriété « %s » n'est pas " "autorisé. Le débit binaire a été défini à %d kbits/s." -#, fuzzy msgid "Failed to configure TwoLAME encoder. Check your encoding parameters." msgstr "" -"La configuration du codeur LAME a échoué. Vérifiez vos paramètres de codage." +"La configuration du codeur TwoLAME a échoué. Vérifiez vos paramètres de " +"codage." msgid "This stream contains no data." msgstr "Ce flux ne contient aucune donnée." msgid "Internal data stream error." msgstr "Erreur interne de flux de données." - -#~ msgid "Invalid title information on DVD." -#~ msgstr "Le DVD contient des informations de titre non valides." - -#~ msgid "Could not read title information for DVD." -#~ msgstr "Impossible de lire les informations de titre sur le DVD." - -#~ msgid "Failed to open DVD device '%s'." -#~ msgstr "L'ouverture du lecteur DVD « %s » a échoué." - -#~ msgid "Failed to set PGC based seeking." -#~ msgstr "La définition du positionnement basé sur PGC a échoué." diff --git a/po/ja.po b/po/ja.po index 8ffd875bc0..c3c777b758 100644 --- a/po/ja.po +++ b/po/ja.po @@ -1,15 +1,15 @@ # Japanese translation of gst-plugins-ugly # Copyright (C) 2007 Free Software Foundation, Inc. # This file is distributed under the same license as the gst-plugins-ugly package. -# Makoto Kato , 2009 +# Makoto Kato , 2009-2011 # #, fuzzy msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.11.2\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2010-10-15 15:20+0100\n" -"PO-Revision-Date: 2009-07-27 12:04+0900\n" +"POT-Creation-Date: 2011-04-27 12:41+0100\n" +"PO-Revision-Date: 2011-04-26 19:42+0900\n" "Last-Translator: Makoto Kato \n" "Language-Team: Japanese \n" "Language: ja\n" @@ -42,17 +42,18 @@ msgid "" "Could not open DVD title %d. Interactive titles are not supported by this " "element" msgstr "" -"DVDタイトル %d を開くことが出来ません。このエレメントはインタラクティブタイト" -"ルをサポートしていません。" +"DVDタイトル %d を開くことができません。この要素はインタラクティブタイトルをサ" +"ポートしていません。" msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"DVDを読み込むことができませんでした。DVDが暗号化されているかDVDを解読するライ" +"ブラリがインストールされていないからかもしれません。" -#, fuzzy msgid "Could not read DVD." -msgstr "DVDを開くことができません" +msgstr "DVDを読み込むことができません。" msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" diff --git a/po/nl.po b/po/nl.po index 1286e2205c..0593a122dd 100644 --- a/po/nl.po +++ b/po/nl.po @@ -1,15 +1,15 @@ -# translation of gst-plugins-ugly-0.10.11.2.nl.po to Dutch +# translation of gst-plugins-ugly-0.10.17.2.nl.po to Dutch # Copyright (C) 2004, 2007, 2008, 2009 Free Software Foundation, Inc. # # This file is distributed under the same license as the gst-plugins-ugly package. -# Freek de Kruijf , 2007, 2008, 2009. +# Freek de Kruijf , 2007, 2008, 2009, 2011. msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.11.2\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2010-10-15 15:20+0100\n" -"PO-Revision-Date: 2009-06-14 23:07+0200\n" -"Last-Translator: Freek de Kruijf \n" +"POT-Creation-Date: 2011-04-27 12:41+0100\n" +"PO-Revision-Date: 2011-04-23 23:55+0200\n" +"Last-Translator: Freek de Kruijf \n" "Language-Team: Dutch \n" "Language: nl\n" "MIME-Version: 1.0\n" @@ -50,10 +50,11 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"Kon dvd niet lezen. Dit kan veroorzaakt zijn omdat de dvd versleuteld is en " +"een bibliotheek voor ontcijferen van een dvd niet is geïnstalleerd." -#, fuzzy msgid "Could not read DVD." -msgstr "Kan DVD niet openen" +msgstr "Kon dvd niet lezen" msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" diff --git a/po/pl.po b/po/pl.po index 0b5a130ba4..f5a6f1ac91 100644 --- a/po/pl.po +++ b/po/pl.po @@ -1,13 +1,13 @@ # Polish translation for gst-plugins-ugly. # This file is distributed under the same license as the gst-plugins-ugly package. -# Jakub Bogusz , 2007-2009. +# Jakub Bogusz , 2007-2011. # msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.10.2\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2010-10-15 15:20+0100\n" -"PO-Revision-Date: 2009-03-10 21:42+0100\n" +"POT-Creation-Date: 2011-04-27 12:41+0100\n" +"PO-Revision-Date: 2011-04-26 18:00+0200\n" "Last-Translator: Jakub Bogusz \n" "Language-Team: Polish \n" "Language: pl\n" @@ -47,10 +47,11 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"Nie udało się odczytać DVD. Powodem może być to, że płyta jest zaszyfrowana, " +"a biblioteka odszyfrowująca nie została zainstalowana." -#, fuzzy msgid "Could not read DVD." -msgstr "Nie udało się otworzyć DVD" +msgstr "Nie udało się odczytać DVD." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" @@ -75,15 +76,3 @@ msgstr "Ten strumień nie zawiera danych." msgid "Internal data stream error." msgstr "Błąd wewnętrzny strumienia danych." - -#~ msgid "Invalid title information on DVD." -#~ msgstr "Błędna informacja tytułowa na DVD." - -#~ msgid "Could not read title information for DVD." -#~ msgstr "Nie udało się odczytać informacji tytułowej dla DVD." - -#~ msgid "Failed to open DVD device '%s'." -#~ msgstr "Nie udało się otworzyć urządzenia DVD '%s'." - -#~ msgid "Failed to set PGC based seeking." -#~ msgstr "Nie udało się ustawić przemieszczania opartego na PGC." diff --git a/po/ru.po b/po/ru.po index 58b28c1006..beede6619d 100644 --- a/po/ru.po +++ b/po/ru.po @@ -6,10 +6,10 @@ # Yuri Kozlov , 2011. msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.14.2\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2011-01-07 14:34+0000\n" -"PO-Revision-Date: 2011-01-01 14:29+0300\n" +"POT-Creation-Date: 2011-04-27 12:41+0100\n" +"PO-Revision-Date: 2011-04-26 20:28+0400\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" "Language: ru\n" @@ -52,10 +52,11 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"Не удалось прочесть DVD. Это могло произойти из-за того, что DVD закодирован " +"и не установлена библиотека декодирования DVD." -#, fuzzy msgid "Could not read DVD." -msgstr "Не удалось открыть DVD" +msgstr "Не удалось прочесть DVD." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "Не удалось настроить кодировщик LAME. Проверьте параметры кодирования." diff --git a/po/sl.po b/po/sl.po index be4f5fac4d..bf44886e6a 100644 --- a/po/sl.po +++ b/po/sl.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.14.2\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2011-04-16 20:57+0100\n" -"PO-Revision-Date: 2011-03-08 21:31+0100\n" +"POT-Creation-Date: 2011-04-27 12:41+0100\n" +"PO-Revision-Date: 2011-04-26 15:35+0100\n" "Last-Translator: Klemen Košir \n" "Language-Team: Slovenian \n" "Language: sl\n" @@ -52,10 +52,11 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"DVD-ja ni mogoče prebrati. Verjetno je DVD šifriran, knjižnica za " +"dešifriranje pa ni nameščena." -#, fuzzy msgid "Could not read DVD." -msgstr "DVD-ja ni mogoče odpreti" +msgstr "DVD-ja ni mogoče prebrati." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" diff --git a/po/tr.po b/po/tr.po index efccd42ea5..7af0ac0ac3 100644 --- a/po/tr.po +++ b/po/tr.po @@ -1,13 +1,13 @@ -# translation of gst-plugins-ugly-0.10.10.2.po to Turkish +# translation of gst-plugins-ugly-0.10.17.2.po to Turkish # This file is put in the public domain. # Server Acim , 2009. msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly-0.10.10.2\n" +"Project-Id-Version: gst-plugins-ugly-0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2010-10-15 15:20+0100\n" -"PO-Revision-Date: 2009-03-10 22:42+0200\n" -"Last-Translator: Server Acim \n" +"POT-Creation-Date: 2011-04-27 12:41+0100\n" +"PO-Revision-Date: 2011-04-26 19:24+0200\n" +"Last-Translator: Server Acim \n" "Language-Team: Turkish \n" "Language: tr\n" "MIME-Version: 1.0\n" @@ -47,10 +47,11 @@ msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"DVD okunamıyor. Bunun sebebi, DVD'nin şifrelenmiş olması veya DVD şifre " +"çzöme kitaplığının kurulu olmaması olabilir." -#, fuzzy msgid "Could not read DVD." -msgstr "DVD açılamıyor" +msgstr "DVD okunamıyor." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "" diff --git a/po/uk.po b/po/uk.po index 67bf4c5bd0..6a214e7a2a 100644 --- a/po/uk.po +++ b/po/uk.po @@ -1,15 +1,16 @@ # Ukrainian translation to gst-plugins-ugly. # Copyright (C) 2004 Free Software Foundation, Inc. # This file is distributed under the same license as the gst-plugins-ugly package. -# Maxim V. Dziumanenko , 2007. # +# Maxim V. Dziumanenko , 2007. +# Yuri Chornoivan , 2011. msgid "" msgstr "" -"Project-Id-Version: gst-plugins-ugly 0.10.6\n" +"Project-Id-Version: gst-plugins-ugly 0.10.17.2\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n" -"POT-Creation-Date: 2010-10-15 15:20+0100\n" -"PO-Revision-Date: 2007-07-05 11:16+0300\n" -"Last-Translator: Maxim V. Dziumanenko \n" +"POT-Creation-Date: 2011-04-30 20:03+0100\n" +"PO-Revision-Date: 2011-04-30 16:27+0300\n" +"Last-Translator: Yuri Chornoivan \n" "Language-Team: Ukrainian \n" "Language: uk\n" "MIME-Version: 1.0\n" @@ -17,45 +18,45 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Lokalize 1.2\n" -#, fuzzy msgid "Could not read from CD." -msgstr "Не вдається відкрити DVD" +msgstr "Не вдалося прочитати дані з компакт-диска." -#, fuzzy msgid "Could not open CD device for reading." -msgstr "Не вдається відкрити заголовок DVD %d" +msgstr "Не вдалося відкрити носій для читання." msgid "Disc is not an Audio CD." -msgstr "" +msgstr "Диск не записано у форматі Audio CD." msgid "Could not open DVD" -msgstr "Не вдається відкрити DVD" +msgstr "Не вдалося відкрити DVD" #, c-format msgid "Could not open DVD title %d" -msgstr "Не вдається відкрити заголовок DVD %d" +msgstr "Не вдалося відкрити частину DVD %d" #, c-format msgid "Failed to go to chapter %d of DVD title %d" -msgstr "Не вдається перейти до розділу %d заголовку DVD %d" +msgstr "Не вдалося перейти до розділу %d частини DVD %d" #, c-format msgid "" "Could not open DVD title %d. Interactive titles are not supported by this " "element" msgstr "" -"Не вдається відкрити заголовок DVD %d. Інтерактивні заголовки не " +"Не вдалося відкрити заголовок DVD %d. Інтерактивні заголовки не " "підтримуються цим елементом" msgid "" "Could not read DVD. This may be because the DVD is encrypted and a DVD " "decryption library is not installed." msgstr "" +"Не вдалося прочитати DVD. Причиною може бути те, що DVD зашифровано, а " +"бібліотеку розшифрування DVD не встановлено." -#, fuzzy msgid "Could not read DVD." -msgstr "Не вдається відкрити DVD" +msgstr "Не вдалося прочитати DVD." msgid "Failed to configure LAME encoder. Check your encoding parameters." msgstr "Помилка при налаштовуванні кодера LAME. Перевірте параметри кодування." @@ -65,22 +66,19 @@ msgid "" "The requested bitrate %d kbit/s for property '%s' is not allowed. The " "bitrate was changed to %d kbit/s." msgstr "" -"Запитайа швидкість потоку бітів %d кбіт/с для властивості '%s' є " -"неприпустимою. Швидкість потоку бітів змінено на %d кбіт/с." +"Запитана бітова швидкість %d кбіт/с для властивості «%s» є неприпустимою. " +"Бітову швидкість змінено на %d кбіт/с." -#, fuzzy msgid "Failed to configure TwoLAME encoder. Check your encoding parameters." -msgstr "Помилка при налаштовуванні кодера LAME. Перевірте параметри кодування." +msgstr "" +"Помилка при налаштовуванні кодувальника TwoLAME. Перевірте параметри " +"кодування." msgid "This stream contains no data." msgstr "Потік не містить даних." msgid "Internal data stream error." -msgstr "" - -#, fuzzy -#~ msgid "Failed to open DVD device '%s'." -#~ msgstr "Не вдається відкрити заголовок DVD %d" +msgstr "Помилка внутрішнього потоку даних." #~ msgid "This file is encrypted and cannot be played." #~ msgstr "Файл зашифрований та не може бути відтворений." diff --git a/tests/check/Makefile.am b/tests/check/Makefile.am index 23e9d87953..77241baff3 100644 --- a/tests/check/Makefile.am +++ b/tests/check/Makefile.am @@ -44,6 +44,7 @@ check_x264enc= endif check_PROGRAMS = \ + generic/index \ generic/states \ $(AMRNB) \ $(LAME) \ @@ -61,7 +62,9 @@ AM_CFLAGS = $(GST_OBJ_CFLAGS) $(GST_CHECK_CFLAGS) $(CHECK_CFLAGS) \ LDADD = $(GST_OBJ_LIBS) $(GST_CHECK_LIBS) $(CHECK_LIBS) # valgrind testing -VALGRIND_TESTS_DISABLE = elements/x264enc +VALGRIND_TESTS_DISABLE = \ + generic/index \ + elements/x264enc SUPPRESSIONS = $(top_srcdir)/common/gst.supp $(srcdir)/gst-plugins-ugly.supp diff --git a/tests/check/generic/.gitignore b/tests/check/generic/.gitignore index b9eed5cd47..8d9bd1f6a7 100644 --- a/tests/check/generic/.gitignore +++ b/tests/check/generic/.gitignore @@ -1,2 +1,3 @@ .dirstamp +index states diff --git a/tests/check/generic/index.c b/tests/check/generic/index.c new file mode 100644 index 0000000000..e733c6dcf5 --- /dev/null +++ b/tests/check/generic/index.c @@ -0,0 +1,140 @@ +/* GStreamer + * unit test for index setting on all elements + * Copyright (C) 2005 Thomas Vander Stichele + * Copyright (C) 2011 Tim-Philipp Müller + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include + +static GList *elements = NULL; + +static void +setup (void) +{ + GList *features, *f; + GList *plugins, *p; + gchar **ignorelist = NULL; + const gchar *INDEX_IGNORE_ELEMENTS = NULL; + + GST_DEBUG ("getting elements for package %s", PACKAGE); + INDEX_IGNORE_ELEMENTS = g_getenv ("GST_INDEX_IGNORE_ELEMENTS"); + if (!g_getenv ("GST_NO_INDEX_IGNORE_ELEMENTS") && INDEX_IGNORE_ELEMENTS) { + GST_DEBUG ("Will ignore element factories: '%s'", INDEX_IGNORE_ELEMENTS); + ignorelist = g_strsplit (INDEX_IGNORE_ELEMENTS, " ", 0); + } + + plugins = gst_registry_get_plugin_list (gst_registry_get_default ()); + + for (p = plugins; p; p = p->next) { + GstPlugin *plugin = p->data; + + if (strcmp (gst_plugin_get_source (plugin), PACKAGE) != 0) + continue; + + features = + gst_registry_get_feature_list_by_plugin (gst_registry_get_default (), + gst_plugin_get_name (plugin)); + + for (f = features; f; f = f->next) { + GstPluginFeature *feature = f->data; + const gchar *name = gst_plugin_feature_get_name (feature); + gboolean ignore = FALSE; + + if (!GST_IS_ELEMENT_FACTORY (feature)) + continue; + + if (ignorelist) { + gchar **s; + + for (s = ignorelist; s && *s; ++s) { + if (g_str_has_prefix (name, *s)) { + GST_DEBUG ("ignoring element %s", name); + ignore = TRUE; + } + } + if (ignore) + continue; + } + + GST_DEBUG ("adding element %s", name); + elements = g_list_prepend (elements, (gpointer) g_strdup (name)); + } + gst_plugin_feature_list_free (features); + } + gst_plugin_list_free (plugins); + g_strfreev (ignorelist); +} + +static void +teardown (void) +{ + GList *e; + + for (e = elements; e; e = e->next) { + g_free (e->data); + } + g_list_free (elements); + elements = NULL; +} + +GST_START_TEST (test_set_index) +{ + GstElement *element; + GstIndex *idx; + GList *e; + + idx = gst_index_factory_make ("memindex"); + if (idx == NULL) + return; + + gst_object_ref_sink (idx); + + for (e = elements; e; e = e->next) { + const gchar *name = e->data; + + GST_INFO ("testing element %s", name); + element = gst_element_factory_make (name, name); + fail_if (element == NULL, "Could not make element from factory %s", name); + + gst_element_set_index (element, idx); + gst_object_unref (element); + } + + gst_object_unref (idx); +} + +GST_END_TEST; + +static Suite * +index_suite (void) +{ + Suite *s = suite_create ("index"); + TCase *tc_chain = tcase_create ("general"); + + suite_add_tcase (s, tc_chain); + tcase_add_checked_fixture (tc_chain, setup, teardown); + tcase_add_test (tc_chain, test_set_index); + + return s; +} + +GST_CHECK_MAIN (index); diff --git a/tests/check/gst-plugins-ugly.supp b/tests/check/gst-plugins-ugly.supp index 8533081f71..8e0cfa8726 100644 --- a/tests/check/gst-plugins-ugly.supp +++ b/tests/check/gst-plugins-ugly.supp @@ -189,3 +189,15 @@ fun:Encoder_Interface_Encode } +## lame + +{ + + Memcheck:Cond + fun:L3psycho_anal_vbr + fun:lame_encode_mp3_frame + ... + fun:lame_encode_flush + fun:gst_lamemp3enc_sink_event +} + diff --git a/win32/common/config.h b/win32/common/config.h index f33d1cadb3..5394f1ef52 100644 --- a/win32/common/config.h +++ b/win32/common/config.h @@ -46,13 +46,13 @@ #define GST_LICENSE "LGPL" /* package name in plugins */ -#define GST_PACKAGE_NAME "GStreamer Ugly Plug-ins prerelease" +#define GST_PACKAGE_NAME "GStreamer Ugly Plug-ins git" /* package origin */ #define GST_PACKAGE_ORIGIN "Unknown package origin" /* GStreamer package release date/time for plugins as YYYY-MM-DD */ -#undef GST_PACKAGE_RELEASE_DATETIME +#define GST_PACKAGE_RELEASE_DATETIME "2011-05-14T09:08Z" /* Define to enable a52dec (used by a52dec). */ #undef HAVE_A52DEC @@ -236,7 +236,7 @@ #define PACKAGE_NAME "GStreamer Ugly Plug-ins" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "GStreamer Ugly Plug-ins 0.10.17.2" +#define PACKAGE_STRING "GStreamer Ugly Plug-ins 0.10.18.1" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "gst-plugins-ugly" @@ -245,7 +245,7 @@ #undef PACKAGE_URL /* Define to the version of this package. */ -#define PACKAGE_VERSION "0.10.17.2" +#define PACKAGE_VERSION "0.10.18.1" /* directory where plugins are located */ #ifdef _DEBUG @@ -273,7 +273,7 @@ #undef STDC_HEADERS /* Version number of package */ -#define VERSION "0.10.17.2" +#define VERSION "0.10.18.1" /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel). */