-This is GStreamer 1.3.2
+This is GStreamer 1.5.2
-Changes since 1.2:
-
-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.
- • 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.
- • 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.
-
-
-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.
-
- • 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, especially time 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.
- ∘ gst-rtsp-server supports SRTP and MIKEY now.
- ∘ Lots of fixes for coverity warnings all over the place.
- ∘ 400+ fixed bug reports, and many other bug fixes and other
- improvements everywhere that had no bug report.
-
-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.