audioringbuffer: check if acquired in set_timestamp
[platform/upstream/gstreamer.git] / NEWS
diff --git a/NEWS b/NEWS
index 9b3a0a5..57bcb1c 100644 (file)
--- a/NEWS
+++ b/NEWS
-This is GStreamer Base Plug-ins 0.11.3, "Axe and Smash"
+This is GStreamer Base Plugins 1.2.0
 
-New in 0.11.3:
+Changes since 1.0:
 
-      * Many fixes and improvements
-      * video: Improve video frame map/unmap
-      * theora: Improve video negotiation
-      * Various performance improvements
+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.
 
-Bugs fixed in this release
+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
 
-      * 668343 : [0.11] - segfault when using missing plugin support in 0.11
-      * 668542 : [0.11] EncodingProfileClass is missing from GstPbutils-0.11.gir
+ • 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
 
-New in 0.11.2:
+ • 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
 
-      * Parallel installability with 0.10.x series
-      * Many API cleanups
-      * Ported to new 0.11 core API changes
-      * Use new GstSample for snapshots
-      * Improved video filter base class
-      * New multichannel caps with mask
-      * Port network elements to GIO
-      * Many fixes and improvements