-This is GStreamer Good Plugins 1.4.0
+This is GStreamer 1.6.1
-Changes since 1.2:
+The GStreamer team is proud to announce the first bugfix release in the stable
+1.6 release 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 only contains bugfixes and it is safe to update from 1.6.0. For a
+full list of bugfixes see Bugzilla:
+ https://bugzilla.gnome.org/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&limit=0&list_id=73005&order=bug_id&product=GStreamer&resolution=FIXED&target_milestone=1.6.1
+See http://gstreamer.freedesktop.org/releases/1.6/ for the latest version of this document.
-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.
+Major bugfixes
- • Other changes:
- ∘ gst-libav now uses libav 10.2, 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.
+- Crashes in the gst-libav encoders were fixed
+- More DASH-IF test streams are working now
+- Live DASH, HLS and MS SmoothStreaming streams work more reliable and other
+ fixes for the adaptive streaming protocols
+- Reverse playback works with scaletempo to keep the audio pitch
+- Correct stream-time is reported for negative applied_rate
+- SRTP packet validation during decoding does not reject valid packets anymore
+- Fixes for audioaggregator and aggregator to start producing output at the
+ right time, and e.g. not outputting lots of silence in the beginning
+- gst-libav's internal ffmpeg snapshot was updated to 2.8.1
+- cerbero has support for Mac OS X 10.11 (El Capitan)
+- Various memory leaks were fixed, including major leaks in playbin, playsink
+ and decodebin
+- Various GObject-Introspection annotation fixes for bindings
+- and many, many more: https://bugzilla.gnome.org/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&limit=0&list_id=73005&order=bug_id&product=GStreamer&resolution=FIXED&target_milestone=1.6.1
-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.