rtspserver: Add udp-mcast transport SETUP test
[platform/upstream/gstreamer.git] / NEWS
diff --git a/NEWS b/NEWS
index 2273448..e04f318 100644 (file)
--- a/NEWS
+++ b/NEWS
-This is GStreamer RTSP Server 1.3.91
+This is GStreamer 1.6.0
 
-Changes since 1.2:
+The GStreamer team is proud to announce a new major feature release in the
+stable 1.x API series of your favourite cross-platform multimedia framework!
 
-New API:
- • GstMessageType has GST_MESSAGE_EXTENDED added. All types before
-   that can be used together as a flags type as before, but from
-   that message onwards the types are just counted incrementally.
-   This was necessary to be able to add more message types.
-   In 2.0 GstMessageType will just become an enum and not a flags
-   type anymore.
- • GstDeviceMonitor for device probing, e.g. to list all available
-   audio or video capture devices. This is the replacement for
-   GstPropertyProbe from 0.10.
- • Events accumulate the running-time offset now when travelling
-   through pads, as set by the gst_pad_set_offset() function. This
-   allows to compensate for this in the QOS event for example.
- • GstBuffer has a new flag "tag-memory" that is set automatically
-   when memory is added or removed to a buffer. This allows buffer
-   pools to detect if they can recycle a buffer or need to reset
-   it first.
- • GstToc has new API to mark GstTocEntries as loops.
- • A not-authorized resource error has been defined to notify
-   applications that accessing the resource has failed because
-   of missing authorization and to distinguish this case from others.
-   This change is actually already in 1.2.4.
- • GstPad has a new flag "accept-intersect", that will let the default
-   ACCEPT_CAPS query handler do an intersection instead of subset check.
-   This is interesting for parser elements that can handle incomplete
-   caps.
- • GstCollectPads has support for flushing and a default handler for
-   SEEK events now.
- • New GstFlowAggregator helper object that simplifies handling of
-   flow returns in elements with multiple source pads. Additionally
-   GstPad now always stores the last flow return and provides an
-   API to retrieve it.
- • GstSegment has new API to offset the running time by a specific
-   value and this is used in GstPad to allow positive and negative
-   offsets in gst_pad_set_offset() in all situations.
- • Support for h265/HEVC and VP8 has been added to the codec utils and codec
-   parsers library, and was integrated into various elements.
- • API for adjusting the TLS validation of RTSP connection has been added.
- • The RTSP and SDP library has MIKEY (RFC 3830) support now, and
-   there is API to distinguish between the different RTSP profiles.
- • API to access RTP time information and statistics.
- • Support for auxiliary streams was added to rtpbin.
- • Support for tiled, raw video formats has been added.
- • GstVideoDecoder and GstAudioDecoder have API to help aggregating tag
-   events and merge custom tags into them consistently.
- • GstBufferPool has support for flushing now.
- • playbin/playsink has support for application provided audio and video
-   filters.
- • GstDiscoverer has new and simplified API to get details about missing
-   plugins and information to pass to the plugin installer.
- • The GL library was merged from gst-plugins-gl to gst-plugins-bad,
-   providing a generic infrastructure for handling GL inside GStreamer
-   pipelines and a plugin with some elements using these, especially
-   a video sink. Supported platforms currently are Android, Cocoa (OS X),
-   DispManX (Raspberry Pi), EAGL (iOS), WGL (Windows) and generic X11,
-   Wayland and EGL platforms.
-   This replaces eglglessink and also is supposed to replace osxvideosink.
- • New GstAggregator base class in gst-plugins-bad. This is supposed to
-   replace GstCollectPads in the future and fix long-known shortcomings
-   in its API. Together with the base class some elements are provided
-   already, like a videomixer (compositor).
+This release has been in the works for more than a year and is packed with new
+features, bug fixes and other improvements.
 
+See http://gstreamer.freedesktop.org/releases/1.6/ for the full list of
+changes.
 
-Major changes:
- • New plugins and elements:
-   ∘ v4l2videodec element for accessing hardware codecs on
-     platforms that make them accessible via V4L2, e.g.
-     Samsung Exynos. This comes together with major refactoring
-     of the existing V4L2 elements and the corresponding
-     infrastructure.
-     The v4l2videodec element replaces the mfcdec element.
-   ∘ New downloadbuffer element that replaces the download
-     buffering feature of queue2. Compared to queue2's code
-     it is much simpler and only for this single use case.
-     A noteworthy new feature is that it's downloading gaps
-     in the already downloaded stream parts when nothing else
-     is to be downloaded.
-     This is now used by playbin when download buffering is
-     enabled.
-   ∘ rtpstreampay and rtpstreamdepay elements for transmitting
-     RTP packets over a stream API (e.g. TCP) according to
-     RFC 4571.
-   ∘ rtprtx elements for standard compliant implementation of
-     retransmissions, integrated into the rtpmanager plugin.
-   ∘ audiomixer element that mixes multiple audio streams together
-     into a single one while keeping synchronization. This is
-     planned to become the replacement of the adder element.
-   ∘ OpenNI2 plugin for 3D cameras like the Kinect camera.
-   ∘ OpenEXR plugin for decoding high-dynamic-range EXR images.
-   ∘ curlsshsink and curlsftpsink to write files via SSH/SFTP.
-   ∘ videosignal, ivfparse and sndfile plugins ported from 0.10.
-   ∘ avfvideosrc, vtdec and other elements were ported from 0.10 and
-     are available on OS X and iOS now.
+Highlights
 
- • Other changes:
-   ∘ gst-libav now uses libav 10.1, and gained support for H265/HEVC.
-   ∘ Support for hardware codecs and special memory types has been
-     improved with bugfixes and feature additions in various plugins
-     and base classes.
-   ∘ Various bugfixes and improvements to buffering in queue2 and
-     multiqueue elements.
-   ∘ dvbsrc supports more delivery mechanisms and other features
-     now, including DVB S2 and T2 support.
-   ∘ The MPEGTS library has support for many more descriptors.
-   ∘ Major improvements to tsdemux and tsparse, especially time and
-     seeking related.
-   ∘ souphttpsrc now has support for keep-alive connections,
-     compression, configurable number of retries and configuration
-     for SSL certificate validation.
-   ∘ hlsdemux has undergone major refactoring and works more
-     reliable now and supports more HLS features like trick modes.
-     Also fragments are pushed downstream while they're downloaded
-     now instead of waiting for each fragment to finish.
-   ∘ dashdemux and mssdemux are now also pushing fragments downstream
-     while they're downloaded instead of waiting for each fragment to
-     finish.
-   ∘ videoflip can automatically flip based on the orientation tag.
-   ∘ openjpeg supports the OpenJPEG2 API.
-   ∘ waylandsink was refactored and should be more useful now. It also
-     includes a small library which most likely is going to be removed
-     in the future and will result in extensions to the GstVideoOverlay
-     interface.
-   ∘ gst-rtsp-server supports SRTP and MIKEY now.
-   ∘ gst-libav encoders are now negotiating any profile/level settings
-     with downstream via caps.
-   ∘ Lots of fixes for coverity warnings all over the place.
-   ∘ Negotiation related performance improvements.
-   ∘ 800+ fixed bug reports, and many other bug fixes and other
-     improvements everywhere that had no bug report.
+- Stereoscopic 3D and multiview video support
+- Trick mode API for key-frame only fast-forward/fast-reverse playback etc.
+- Improved DTS (decoding timestamp) vs. PTS (presentation timestamp) handling
+  to account for negative DTS
+- New GstVideoConverter API for more optimised and more correct conversion of
+  raw video frames between all supported formats, with rescaling
+- v4l2src now supports renegotiation
+- v4l2transform can now do scaling
+- V4L2 Element now report Colorimetry properly
+- Easier chunked recording of MP4, Matroska, Ogg, MPEG-TS: new splitmuxsink
+  and multifilesink improvements
+- Content Protection signalling API and Common Encryption (CENC) support for
+  DASH/MP4
+- Many adaptive streaming (DASH, HLS and MSS) improvements
+- New PTP and NTP network client clocks and better remote clock tracking
+  stability
+- High-quality text subtitle overlay at display resolutions with glimagesink
+  or gtkglsink
+- RECORD support for the GStreamer RTSP Server
+- Retransmissions (RTX) support in RTSP server and client
+- RTSP seeking support in client and server has been fixed
+- RTCP scheduling improvements and reduced size RTCP support
+- MP4/MOV muxer acquired a new "robust" mode of operation which attempts to
+  keep the output file in a valid state at all times
+- Live mixing support in aggregator, audiomixer and compositor was improved a
+  lot
+- compositor now supports rescaling and converting inputs streams on the fly
+- New audiointerleave element with proper input synchronisation and live input
+  support
+- Blackmagic Design DeckLink capture and playback card support was rewritten
+  from scratch; 2k/4k support; mode sensing
+- KLV metadata support in RTP and MPEG-TS
+- H.265 video encoder (x265), decoders (libav, libde265) and RTP payloader and
+  depayloaders
+- New DTLS plugin and SRTP/DTLS support
+- OpenGL3 support, multiple contexts and context propagation, 3D video,
+  transfer/conversion separation, subtitle blending
+- New OpenGL-based QML video sink, Gtk GL video sink, CoreAnimation
+  CAOpenGLLayerSink video sink
+- gst-libav switched to ffmpeg as libav-provider, gains support for
+  3D/multiview video, trick modes, and the CAVS codec
+- GstHarness API for unit tests
+- gst-editing-services got a completely new ges-launch-1.0 interface, improved
+  mixing support and integration into gst-validate
+- gnonlin has been deprecated in favor of nle (Non Linear Engine) in
+  gst-editing-services
+- gst-validate has a new plugin system, an extensive default testsuite,
+  support for concurrent test runs and valgrind support
+- cerbero build tool for SDK binary packages gains new 'bundle-source' command
+- Various improvements to the Android, iOS, OS X and Windows platform support
 
-Things to look out for:
- • The eglglessink element was removed and replaced by the glimagesink
-   element.
- • The mfcdec element was removed and replaced by v4l2videodec.
- • osxvideosink is only available in OS X 10.6 or newer.
- • On Android the namespace of the automatically generated Java class
-   for initialization of GStreamer has changed from com.gstreamer to
-   org.freedesktop.gstreamer to prevent namespace pollution.
- • On iOS you have to update your gst_ios_init.h and gst_ios_init.m in
-   your projects from the one included in the binaries if you used the
-   GnuTLS GIO module before. The loading mechanism has slightly changed.