porting: update porting document
[platform/upstream/gstreamer.git] / RELEASE
diff --git a/RELEASE b/RELEASE
index 10acdc1..3cfb820 100644 (file)
--- a/RELEASE
+++ b/RELEASE
 
-            GStreamer "GEPpiness is a warm gun" 0.4.1 released [1]
-
-   The  GStreamer  team  is  happy  to  announce  another  release of the
-   GStreamer  streaming-media  framework. This release has mainly focused
-   on  code  clean-up  and  rounding out of the features. Large chunks of
-   GStreamer  are  API  stable  at this point. In preparation of a stable
-   release,  we have also done a thorough license audit to make sure that
-   the licenses of all plug-ins are properly documented, and that as many
-   of  them  as  possible  are  available  under  the  LGPL  license that
-   GStreamer uses.
-
-   We are starting to have a really nice collection of applications under
-   development using GStreamer. If you are looking for something specific
-   check out our [1]applications status page.
-
-Updates and Enhancements
-
-  General
-
-     * Further  work on the Graphical Pipeline Editor, getting to be very
-       stable and well working.
-     * KDE/Qt bindings created for easier creation of KDE applications on
-       top of GStreamer
-     * General  C++  bindings  for  use with gtkmm and other C++ projects
-       added to gst-bind module (in CVS)
-     * Effectv  and  virtualdub  based  plug-ins  relicensed  under  LGPL
-       (previously GPL)
-     * Some   manual   examples   updated   and  extracted  to  code  (in
-       examples/manual)
-
-  Core
-
-     * Many memleaks plugged
-     * Lots of code cleaning
-     * Many documentation improvements
-     * Small change to [2]Plugin API
-     * Removed  use of -Wall and -Werror from release tarball for non-gcc
-       compilers, more permanent solution upcoming.
-     * Old  schedulers  renamed:  we  now  use  basicomega as the default
-       scheduler,   with  the  others  being  fastomega,  basicwingo  and
-       fastwingo.
-
-  Plug-ins
-
-     * BSD and Darwin cd playing
-     * New Mixermatrix plugin added
-     * New Flash plugin added
-     * RTP  plugin  moved  back to librtp and plugin now includes library
-       code (still experimental, check configure --help on how to enable)
-     * New v4l2 plugins
-     * Updated v4l plugins
-     * Improvements to dvdnav plugin
-     * iRadio support added to gnomevfs plugin
-     * Median video plugin updated and now working
-     * Fixed many major bugs in the gnome-vfs library
-     * Got rid of misleading warnings from plugins
-     * Avi muxer much improved
-     * Fix bug in mad plugin that caused loss of frames
-     * mp3 typefind fixed to properly handle id3v2 tags
-
-Known Issues
-
-   GStreamer  currently  ships  with  schedulers  based  on  two cothread
-   packages.  The  'omega'  cothread  package  is  the  one  we have been
-   shipping for a long time now and is still the default in this release.
-   There  are  however  some  limitations  and thread-related bugs in the
-   omega  scheduler.  These  limitations  are  not present in the 'wingo'
-   schedulers, but unfortunately it does not work with i686 glibc at this
-   time  due  to  differences  in the way threads are handled compared to
-   other  architectures,  including  i386.  A new (third) scheduler (that
-   doesn't use cothreads) is being developed.
-
-   As  for  the  bugs  in  the  'omega'  schedulers, we did not feel they
-   warranted not releasing 0.4.1 as they are rather obscure. For instance
-   if  you are using Rhythmbox you will need to be playing over 500 songs
-   nonstop to trigger it. You can choose a different scheduler by passing
-   --scheduler=(name) to any GStreamer application.
-
-   Wim  Taymans  has  started  work on a new scheduler. The first part is
-   already in CVS, but it will probably still be some months before it is
-   ready.
+Release notes for GStreamer 0.10.32 "Take Me to the Bonus Level"
+        
+
+
+The GStreamer team is proud to announce a new release
+in the 0.10.x stable series of the
+core of the GStreamer streaming media framework.
+
+
+The 0.10.x series is a stable series targeted at end users.
+
+
+This module, gstreamer, only contains core functionality.
+For actual media playback, you will need other modules.
+
+gst-plugins-base
+contains a basic set of well-supported plug-ins
+gst-plugins-good
+contains a set of well-supported plug-ins under our preferred license
+gst-plugins-ugly
+contains a set of well-supported plug-ins, but might pose problems for
+    distributors
+gst-plugins-bad
+contains a set of less supported plug-ins that haven't passed the
+    rigorous quality testing we expect
+
+
+
+  
+
+Features of this release
+    
+      * GLib requirement is now >= 2.22
+      * New core element: valve (moved from -bad)
+      * New core element: input-selector (N.B. without "select-all" property, use fsfunnel instead) (moved from -bad)
+      * New core element: output-selector (with different negotiation behaviour by default, set pad-negotiation-mode=active for previous behaviour) (moved from -bad)
+      * Performance improvements for many heavily-used code paths: GstPad, GstPoll, GstClock, GstTask, basesink, basesrc, queue2, multiqueue
+      * gobject-introspection: add annotations for most core API
+      * clock: make sync clock wait lockfree
+      * fdsrc/fdsink: reenable on MSVC
+      * registry: fix GStatBuf definition for win32 when building against older glib (fixes unnecessary rescanning of plugins at start-up)
+      * element: add a more flexible way to get request pads from elements
+      * multiqueue: return upon input when already eos
+      * object: fix creation of default name (when creating more than 100000 elements)
+      * pluginloader: fix hangs on OSX
+      * poll: fixes for (p)select backend (used e.g. on OSX)
+      * poll: refactor and make more lockfree; fixes for win32 and OSX (pselect backend)
+      * registry: don't replace valid existing plugins by blacklisted ones
+      * tags: don't produce duplicated entries when merging same value twice
+      * basesink: preroll fixes for async=false case
+      * basesink: rework position reporting code
+      * basetransform: handle downstream giving a buffer with new caps but invalid size
+
+Bugs fixed in this release
+     
+      * 635785 : basesrc: fix deadlock
+      * 638599 : GST_PTR_FORMAT causes crashes if GLib-internal printf is used but system provides register_printf_specifier
+      * 503592 : gstpad.c does many ref/unref of peer pad in dataflow
+      * 564056 : Protect against umask(0177)
+      * 607513 : input-selector segfaults in g_object_notify()
+      * 632168 : [gsttask] MSVC thread names for task debugging
+      * 632447 : reduce static memory allocated by the registry
+      * 632557 : [macros] Define restrict keyword if not available
+      * 632778 : Optimisations to GstBaseSink
+      * 632779 : gstdataqueue: Only emit g_cond_signal when needed
+      * 632780 : queue: Remove useless checks from e406f7
+      * 633918 : [fakesink] [PATCH] print sink-message events like a  message and its structure
+      * 634965 : sinks render buffers in state PAUSED when async is FALSE
+      * 635001 : basesink: fix position reporting in PAUSED
+      * 636268 : configure test fails on FreeBSD
+      * 636455 : basesrc: Avoid taking object locks for just checking tag presence
+      * 637057 : [plugin-scanner] gstpoll fails with select backend
+      * 637300 : [API] request pad based on caps
+      * 637549 : build fails: ./.libs/libgstbase-0.10.so: undefined reference to `gst_clock_single_shot_id_reinit'
+      * 637776 : merging the same tag values again produces lists containing duplicates
+      * 638381 : {input,output}-selector: double-check API before release
+      * 638399 : a few typos in GStreamer
+      * 638900 : [GstPoll] Doesn't compile with MinGW
+      * 638941 : registry scan/loading race and inconsistency
+
+API changed in this release
+     
+- API additions:
+    
+      * gst_clock_single_shot_id_reinit()
+      * gst_element_request_pad()
+      * GstElementClass::request_new_pad_full()
+      * gst_poll_get_read_gpollfd()
+      * gst_value_list_merge()
+      * GST_CLOCK_DONE
+
+Download
+
+You can find source releases of gstreamer in the download directory:
+http://gstreamer.freedesktop.org/src/gstreamer/
 
 GStreamer Homepage
 
-   More  details on these features can be found on the project's website,
-   [3]http://gstreamer.net/.
+More details can be found on the project's website:
+http://gstreamer.freedesktop.org/
 
 Support and Bugs
 
-   We  use  [4]Gnome's Bugzilla for bug reports and feature requests. The
-   "product  name"  is  GStreamer  (capital  G).  Please do the following
-   before writing a bug report :
-gst-feedback &> feedback 2>&1
-
-   and  attach  the  file  "feedback" to your bug report, so that we have
-   some information useful in the debugging process.
+We use GNOME's bugzilla for bug reports and feature requests:
+http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
 
 Developers
 
-   GStreamer  is  [5]hosted on SourceForge. All code is in CVS and can be
-   checked  out  from  there.  Interested developers of the core library,
-   plug-ins,  and  applications  should  subscribe to the gstreamer-devel
-   list.  If  there  is  sufficient interest we will create more lists as
-   necessary.
-
-   We  are  still  looking for people with access to Solaris, HP-UX, Irix
-   and  True64  that  would  be  willing  to  try  building  and  testing
-   GStreamer. Patches fixing such problems are also more than welcome.
+GStreamer is stored in Git, hosted at git.freedesktop.org, and can be cloned from there.
+Interested developers of the core library, plug-ins, and applications should
+subscribe to the gstreamer-devel list. If there is sufficient interest we
+will create more lists as necessary.
 
+        
 Contributors to this release
-
-  Patches to the core of Gstreamer
-
-     * Wim Taymans <wim.taymans(AT)chello.be>
-     * Thomas Vander Stichele <thomas(AT)apestaart.org>
-     * Andy Wingo <wingo(AT)pobox.com>
-     * Steve Baker <stevebaker_org(AT)yahoo.co.uk>
-     * Cameron Hutchison <camh(AT)xdna.net>
-     * Iain Holmes <iain(AT)prettypeople.org>
-     * Ronald Bultje <rbultje(AT)ronald.bitfreak.net>
-
-  Plugins and Sample Applications
-
-     * Richard Boulton <richard(AT)tartarus.org>
-     * David Lehn <dlehn(AT)vt.edu>
-     * Jérémy Simon <jsimon13(AT)yahoo.fr>
-     * Zeeshan Ali Khattak <zak147(AT)yahoo.com>
-     * David Schleef <ds(AT)schleef.org>
-     * Charles Schmidt <cbschmid(AT)users.sourceforge.net>
-     * Goraxe <goraxe@ntlworld.com>
-     * Colin Walters <walters(AT)gnu.org>
-     * Kristian Rietveld <kris(AT)gtk.org>
-
-  Misc
-
-     * Christian Fredrik Kalager Schaller <Uraeus(AT)gnome.org>
-     * Tim Jansen <tim.jansen(AT)kde.org>
-     * Leif Morgan Johnson <lmjohns3(AT)eos.ncsu.edu>
-     * Christian Meyer <chrisime(AT)gnome.org>
-
-   [1]  It  is  a  little-known fact that the Beatles decided their track
-   listing  for their albums based on a process called the 'GEP' process.
-   After  some  initial  problems,  this worked very well. The only known
-   failure  of  this  process  happened when George Harrison commited the
-   out-of-place  'Within  You  Without  You'  to  Sergeant Pepper without
-   review  by  the  other  band members. This near split-up led to one of
-   their finest songs on the world-reknowned White Album. 
-
-References
-
-   1. http://www.gstreamer.net/status/?category=2
-   2. http://www.geocrawler.com/lists/3/SourceForge/1504/0/9557296/
-   3. http://gstreamer.net/
-   4. http://bugzilla.gnome.org/
-   5. http://gstreamer.sf.net/
+    
+      * Andoni Morales Alastruey
+      * Benjamin Gaignard
+      * Benjamin Otte
+      * David Hoyt
+      * David Schleef
+      * Edward Hervey
+      * Havard Graff
+      * Jan Schmidt
+      * Kipp Cannon
+      * Koop Mast
+      * Lasse Laukkanen
+      * Mark Nauwelaerts
+      * Michael Smith
+      * Olivier Crete
+      * Olivier Crête
+      * Raimo Järvi
+      * Sebastian Dröge
+      * Stefan Kost
+      * Thiago Santos
+      * Tim-Philipp Müller
+      * Tommi Myöhänen
+      * Wim Taymans
+      * Zhang Wanming
+      * Christian Schaller
+      * Sjoerd Simons