Release 1.2.0 0.10.36 1.2.0 submit/devel/gst/20131028.042525 upstream/0.10.36
authorSebastian Dröge <slomo@circular-chaos.org>
Tue, 24 Sep 2013 12:07:02 +0000 (14:07 +0200)
committerSebastian Dröge <slomo@circular-chaos.org>
Tue, 24 Sep 2013 12:07:02 +0000 (14:07 +0200)
ChangeLog
NEWS
RELEASE
configure.ac
docs/plugins/inspect/plugin-coreelements.xml
gstreamer.doap
win32/common/config.h
win32/common/gstversion.h

index cfc628c..5ac2d7a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,200 @@
+=== release 1.2.0 ===
+
+2013-09-24  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
+       * configure.ac:
+         releasing 1.2.0
+
+2013-09-24 13:10:36 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * tests/check/gst/gstcontext.c:
+         context: Add test for the context caching in GstBin
+         https://bugzilla.gnome.org/show_bug.cgi?id=708668
+
+2013-09-24 12:47:52 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * plugins/elements/gstfakesink.c:
+       * plugins/elements/gstfakesink.h:
+         Revert "Potential GstContext regression"
+         This reverts commit e658379534eb4a90b654d90f1d0bdf86f37c6e31.
+         This test commit should've never been pushed. Oops.
+
+2013-09-24 12:46:52 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * gst/gstbin.c:
+         bin: Make sure to cache context types that we did not store yet
+         https://bugzilla.gnome.org/show_bug.cgi?id=708668
+
+2013-09-24 10:29:06 +0100  Alex Ashley <bugzilla@ashley-family.net>
+
+       * plugins/elements/gstfakesink.c:
+       * plugins/elements/gstfakesink.h:
+         Potential GstContext regression
+         Since the refactoring of GstContext (commits
+         qc9fa2771b508e9aaeecc700e66e958190476f,
+         a7f5dc8b8af837f01782d1572379948ff62daab7,
+         690326f906dc82e41ea58b81cdb2e3e88b754,
+         d367dc1b0d4ecb37f4d27267e03d7bf0c6c06a6, and
+         82d158aed3f2e8545e1e7d35085085ff58f18) I am no longer able to get
+         a shared context for an element that is used twice in a pipeline.
+         I used the documentation and eglglessink as my reference for
+         implementing the GstContext logic.
+         As the code was tied to a hardware decoder, I have ported the
+         GstContext code to fakesink to show the problem. Using the old
+         API a single ExampleMgr instance is created, but using the new
+         API each element is creating its own instance.
+
+2013-09-24 10:42:06 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * libs/gst/base/gstcollectpads.c:
+         collectpads: Make sure that the object lock is always taken when accessing the private pad list
+         https://bugzilla.gnome.org/show_bug.cgi?id=708636
+
+2013-09-17 23:23:34 +0200  Mathieu Duponchelle <mathieu.duponchelle@epitech.eu>
+
+       * libs/gst/base/gstcollectpads.c:
+         collectpads: Use private pad list in set_flushing_unlocked
+         pads->data is the public list. It is dynamically rebuilt at each call to
+         check_collected, in check_pads to be specific. When you add a pad and
+         collectpads have been started, it is not added to the public list.
+         Thus there exists a possible race where :
+         1) You would add a pad to collectpads while running.
+         2) You set collectpads to flushing before check_collected has been called again
+         -> the pad is not set to flushing
+         3) the pad starts pushing data as downstream might not be prepared, in the case
+         of adder it then returns FLOW_FLUSHING.
+         4) elements like demuxers, when they get a FLOW_FLUSHING, stop their tasks,
+         never to be seen again.
+         https://bugzilla.gnome.org/show_bug.cgi?id=708636
+
+2013-09-23 11:47:14 +0200  Wim Taymans <wim.taymans@collabora.co.uk>
+
+       * libs/gst/check/gsttestclock.c:
+       * tests/check/libs/gsttestclock.c:
+         tests: handle unscheduled entries correctly
+         Make the testclock return GST_CLOCK_UNSCHEDULED when an unscheduled entry is
+         used for gst_clock_wait() or gst_clock_wait_async().
+         Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708605
+
+2013-09-22 11:09:36 +0200  Edward Hervey <bilboed@bilboed.com>
+
+       * scripts/gst-uninstalled:
+         gst-uninstalled: Allow specifying the checkout directory by env variable
+         For some rare cases, one might not be able to use the hardcoded $HOME/gst
+         location yet would still want to use the gst-uninstalled script as-is (which
+         has the benefit of being constantly updated).
+         For these cases, the checkout directory can be specified with the
+         GST_UNINSTALLED_ROOT environment variable.
+         Ex:
+         export GST_UNINSTALLED_ROOT=$HOME/somewhere/with/checkouts
+         And then just call gst-uninstalled directly:
+         $GST_UNINSTALLED_ROOT/gstreamer/gst-uninstalled
+
+2013-09-20 16:16:26 +0200  Edward Hervey <edward@collabora.com>
+
+       * common:
+         Automatic update of common submodule
+         From b613661 to 6b03ba7
+
+2013-09-19 18:42:31 +0100  Tim-Philipp Müller <tim@centricular.net>
+
+       * common:
+         Automatic update of common submodule
+         From 74a6857 to b613661
+
+2013-09-19 17:34:27 +0100  Tim-Philipp Müller <tim@centricular.net>
+
+       * autogen.sh:
+       * common:
+         Automatic update of common submodule
+         From 12af105 to 74a6857
+
+2013-09-19 17:12:14 +0100  Tim-Philipp Müller <tim@centricular.net>
+
+       * libs/gst/check/gsttestclock.c:
+         check: testclock: fix function guards
+         Should be g_return_*() not g_assert(), even if it's for tests only.
+
+2013-09-19 16:43:18 +0100  Tim-Philipp Müller <tim@centricular.net>
+
+       * libs/gst/check/gsttestclock.c:
+         check: testclock: don't put code with side-effects in g_assert()
+         Fixes unit test failures when -DG_DISABLE_ASSERT is used.
+         https://bugzilla.gnome.org/show_bug.cgi?id=706551
+
+2013-09-19 12:07:56 +0200  Edward Hervey <edward@collabora.com>
+
+       * gst/gstcontext.c:
+         gstcontext: Fix return values some more
+         Return value is a boolean not a pointer
+
+2013-09-19 11:49:26 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * gst/gstcontext.c:
+         context: Fix return values for gst_context_has_context_type() in assertions
+
+2013-09-19 11:34:51 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * configure.ac:
+         Back to development
+
 === release 1.1.90 ===
 
-2013-09-19  Sebastian Dröge <sebastian.droege@collabora.co.uk>
+2013-09-19 10:48:24 +0200  Sebastian Dröge <slomo@circular-chaos.org>
 
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
        * configure.ac:
-         releasing 1.1.90
+       * docs/plugins/inspect/plugin-coreelements.xml:
+       * gstreamer.doap:
+       * win32/common/config.h:
+       * win32/common/gstenumtypes.c:
+       * win32/common/gstversion.h:
+         Release 1.1.90
+
+2013-09-19 10:05:51 +0200  Sebastian Dröge <slomo@circular-chaos.org>
+
+       * po/af.po:
+       * po/az.po:
+       * po/be.po:
+       * po/bg.po:
+       * po/ca.po:
+       * po/cs.po:
+       * po/da.po:
+       * po/de.po:
+       * po/el.po:
+       * po/en_GB.po:
+       * po/eo.po:
+       * po/es.po:
+       * po/eu.po:
+       * po/fi.po:
+       * po/fr.po:
+       * po/gl.po:
+       * po/hr.po:
+       * po/hu.po:
+       * po/id.po:
+       * po/it.po:
+       * po/ja.po:
+       * po/lt.po:
+       * po/nb.po:
+       * po/nl.po:
+       * po/pl.po:
+       * po/pt_BR.po:
+       * po/ro.po:
+       * po/ru.po:
+       * po/rw.po:
+       * po/sk.po:
+       * po/sl.po:
+       * po/sq.po:
+       * po/sr.po:
+       * po/sv.po:
+       * po/tr.po:
+       * po/uk.po:
+       * po/vi.po:
+       * po/zh_CN.po:
+       * po/zh_TW.po:
+         Update .po files
 
 2013-09-19 09:49:40 +0200  Sebastian Dröge <slomo@circular-chaos.org>
 
diff --git a/NEWS b/NEWS
index 9a7b015..2da4fe6 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,2 +1,123 @@
-This is GStreamer 1.1.90
+This is GStreamer 1.2.0
+
+Changes since 1.0:
+
+New API:
+ • GstContext negotiation / sharing / announcing for sharing a
+   generic context between elements, e.g. a display handle
+ • GL texture upload conversion meta for allowing different
+   buffer types to be converted to an OpenGL texture
+ • GstCapsFeatures as extension to GstCaps for allowing the
+   negotiation of specific memory or meta requirements between
+   elements
+ • GstMemory flags for contiguous and non-mappable memory
+ • The stream-start event has optional flags now, e.g. for signalling
+   sparse streams
+ • The stream-start even has an optional group-id field now to signal
+   all streams that should be played together
+ • Allocators library in gst-plugins-base, currently only with generic
+   dmabuf memory support
+ • insertbin library for easier handling of dynamically linked
+   pipelines (in -bad for now)
+ • EGL helper library (in -bad for now)
+ • MPEG-TS data structure library (in -bad for now)
+ • New GstVideoRegionOfInterestMeta to describe a region of interest on
+   video frames.
+ • GstVideoDecoder/Encoder has new ::flush() vfunc to replace the
+   ill-defined ::reset() vfunc.
+ • The URI query allows to query the redirected URI now.
+
+Major changes:
+ • New tool: gst-play-1.0 in gst-plugins-base for basic playback
+   testing on the command line.
+ • New plugins:
+   ∘ mssdemux for Microsoft Smooth Streaming
+   ∘ dashdemux for DASH adaptive streaming protocol
+   ∘ bluez for interaction with Bluetooth devices
+   ∘ openjpeg for JPEG2000 decoding and encoding
+   ∘ daala for experimental Daala decoding and encoding
+   ∘ vpx plugin has experimental VP9 decoding and encoding support
+   ∘ webp plugin for WebP decoding (encoding to be added later)
+   ∘ Various others: yadif, srtp, sbc, fluidsynth, midiparse,
+     mfc, ivtv, accuraterip and audiofxbad
+
+ • Moved plugins:
+   ∘ dtmf, vp8rtp, scaletempo and rtpmux plugins are in
+     gst-plugins-good now
+
+ • Video:
+   ∘ Fix handling of interlaced video in converters such as videoscale
+     and videoconvert (e.g. scale both fields independently)
+   ∘ videoconvert will try harder to minimise quality losses when
+     conversion is necessary
+   ∘ The experimental GstSurfaceConverter, GstSurfaceMeta and
+     GstVideoContext APIs from the (confusingly-named) 
+     libgstbasevideo-1.0 library in gst-plugins-bad have now been
+     removed and been replaced by new APIs in GStreamer Core and
+     gst-plugins-base (see above). Since that was all that was left in
+     this library, the entire experimental libgstbasevideo-1.0 library
+     has been removed from gst-plugins-bad
+   ∘ Chroma subsampling and chroma siting conversion is better handled
+     in videoconvert and the support for interlaced video was improved.
+   ∘ New pinwheel and spoke patterns in videotestsrc
+   ∘ videomixer can now accept different video formats on its sinkpads
+     and converts to a common format during mixing
+
+ • Audio:
+   ∘ audioconvert will try harder to minimise quality losses when
+     conversion is necessary
+   ∘ adder now allows muting/unmuting of its input streams, and also
+     per-input stream volume 
+   ∘ pulseaudio elements can switch between devices during playback now
+   ∘ aacparse can convert between ADTS←→RAW
+
+ • Platform specific changes:
+   ∘ Caps, events, etc. are now printed in the GStreamer debug logs
+     with their content instead of just the pointer address even on
+     non-glibc platforms (e.g. Windows, OSX, Android).
+   ∘ Network elements (UDP/TCP) now work better with platforms,
+     where IPv6 sockets can't handle IPv4 (e.g. Windows)
+   ∘ Linux/BSD: v4l2 had many improvements and cleanups
+
+ • Other changes:
+   ∘ gst-libav now uses libav 9
+   ∘ Static linking of plugins is supported now (also in 1.0.7)
+   ∘ rtspsrc: add support for NetClientClock: when the server suggests a
+     GstNetTimeProvider in the SDP, set up a GstNetClientClock that
+     slaves to the remote clock and suggest this clock in provide_clock.
+     Simplifies synchronized playback of a resource from an RTSP server.
+     gst-rtsp-server now supports adding this to the SDP and can provide
+     a network clock
+   ∘ RTP retransmission / NACK support and big RTP jitterbuffer improvements
+   ∘ SRTP and DTLS support
+   ∘ Changes to many elements and core to use the correct sticky event
+     order and also not lose any important sticky events during flushing
+   ∘ >1000 fixed bug reports, and many other bug fixes and other
+     improvements everywhere that had no bug report
+
+Things to look out for:
+ • Single header includes for all libraries, e.g. #include
+   <gst/video/video.h> - this was needed for some bindings.
+ • Stricter (correct) caps subset checking in some cases where this was
+   not correct before. Caps will now always fail to be a compatible
+   subset of another set of caps if the subset caps are missing some
+   fields that the superset caps have. This might lead to not-negotiated
+   errors if caps are incomplete now. However, it also prevents possible
+   data corruption caused by piping data formatted in an
+   incompatible/unexpected way into some elements. Check your h264 caps
+   for stream-format and alignment fields and AAC caps for the
+   stream-format field. This change will also be included in the next
+   stable 1.0.8 release.
+ • Stricter checking for missing events and correct sticky event order
+   (stream-start, caps, segment) in some places; this is not enabled in
+   stable releases by default, but you may get warnings when using git
+   builds, development releases or when compiling with
+   -UG_DISABLE_ASSERT in CFLAGS
+ • x264enc now outputs data in byte-stream by default if downstream has
+   ANY caps (e.g. appsink without caps set, filesink, udpsink,
+   tcpserversink etc.)
+ • The MPEG TS demuxer posts messages contain the PMT, PAT, etc. in a
+   different format now. This new format uses the data structures from
+   the new MPEGTS library
+ • The GstContext API has changed between 1.1.4 and 1.1.90
 
diff --git a/RELEASE b/RELEASE
index 318db42..5c5f5f7 100644 (file)
--- a/RELEASE
+++ b/RELEASE
@@ -1,8 +1,8 @@
 
-Release notes for GStreamer 1.1.90
+Release notes for GStreamer 1.2.0
 
 
-The GStreamer team is proud to announce a new bug-fix release
+The GStreamer team is proud to announce a new feature release
 in the 1.x stable series of the
 core of the GStreamer streaming media framework.
 
@@ -42,12 +42,10 @@ contains a set of codecs plugins based on libav (formerly gst-ffmpeg)
 
 Bugs fixed in this release
      
-      * 701996 : context: Still inconvenient to use and racy
-      * 707088 : capsfilter: Don't forget to update pending_events.
-      * 707130 : output-selector: Changes the start of the segment it sends to a pad when making it active
-      * 707156 : multiqueue: Lowering single queue limits below automatically detected limits can cause the pipeline to starve
-      * 707648 : queue2: Update the buffering state before stalling for more data
-      * 707657 : tests/capsfilter: Improving check test code coverage...
+      * 706551 : gsttestclock check failed
+      * 708605 : testclock: Does not handle unscheduled entries correctly
+      * 708636 : collectpads: Should set *all* its pads to flushing when set_flushing is called, not only the ones in the public list
+      * 708668 : context: Potential regression
 
 ==== Download ====
 
@@ -84,15 +82,10 @@ subscribe to the gstreamer-devel list.
         
 Contributors to this release
     
-      * Christian Fredrik Kalager Schaller
-      * Gustavo Noronha Silva
-      * Jonas Holmberg
-      * Matej Knopp
+      * Alex Ashley
+      * Edward Hervey
       * Mathieu Duponchelle
-      * Rico Tzschichholz
       * Sebastian Dröge
-      * Sebastian Rasmussen
-      * Thiago Santos
       * Tim-Philipp Müller
-      * Zaheer Abbas Merali
+      * Wim Taymans
  
\ No newline at end of file
index d111f71..6fabf91 100644 (file)
@@ -4,7 +4,7 @@ dnl initialize autoconf
 dnl when going to/from release please set the nano (fourth number) right !
 dnl releases only do Wall, git and prerelease does Werror too
 dnl
-AC_INIT([GStreamer],[1.1.90.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gstreamer])
+AC_INIT([GStreamer],[1.2.0],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gstreamer])
 AG_GST_INIT
 
 dnl initialize automake (we require GNU make)
@@ -64,7 +64,7 @@ dnl      1.2.5 => 205
 dnl      1.10.9 (who knows) => 1009
 dnl
 dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 190, 0, 190)
+AS_LIBTOOL(GST, 200, 0, 200)
 
 dnl *** autotools stuff ****
 
index 94d4d34..1ed446e 100644 (file)
@@ -3,7 +3,7 @@
   <description>GStreamer core elements</description>
   <filename>../../plugins/elements/.libs/libgstcoreelements.so</filename>
   <basename>libgstcoreelements.so</basename>
-  <version>1.1.90</version>
+  <version>1.2.0</version>
   <license>LGPL</license>
   <source>gstreamer</source>
   <package>GStreamer source release</package>
index f4d6b32..1dbf7a6 100644 (file)
@@ -40,6 +40,16 @@ hierarchy, and a set of media-agnostic core elements.
 
  <release>
   <Version>
+   <revision>1.2.0</revision>
+   <branch>1.2</branch>
+   <name></name>
+   <created>2013-09-24</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.2.0.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.1.90</revision>
    <branch>1.1</branch>
    <name></name>
index 2bd5385..0320505 100644 (file)
@@ -62,7 +62,7 @@
 #define GST_PACKAGE_ORIGIN "Unknown package origin"
 
 /* GStreamer package release date/time for plugins as YYYY-MM-DD */
-#define GST_PACKAGE_RELEASE_DATETIME "2013-09-19"
+#define GST_PACKAGE_RELEASE_DATETIME "2013-09-24"
 
 /* Define if static plugins should be built */
 #undef GST_PLUGIN_BUILD_STATIC
 #define PACKAGE_NAME "GStreamer"
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GStreamer 1.1.90"
+#define PACKAGE_STRING "GStreamer 1.2.0"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gstreamer"
 #undef PACKAGE_URL
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.1.90"
+#define PACKAGE_VERSION "1.2.0"
 
 /* directory where plugins are located */
 #ifdef _DEBUG
 #undef USE_POISONING
 
 /* Version number of package */
-#define VERSION "1.1.90"
+#define VERSION "1.2.0"
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */
index a4e6ae8..8d88c37 100644 (file)
@@ -51,13 +51,13 @@ G_BEGIN_DECLS
  *
  * The minor version of GStreamer at compile time:
  */
-#define GST_VERSION_MINOR (1)
+#define GST_VERSION_MINOR (2)
 /**
  * GST_VERSION_MICRO:
  *
  * The micro version of GStreamer at compile time:
  */
-#define GST_VERSION_MICRO (90)
+#define GST_VERSION_MICRO (0)
 /**
  * GST_VERSION_NANO:
  *