-This is GStreamer Good Plug-ins 0.10.4, "Dear Leader"
+This is GStreamer Good Plugins 1.2.0
+
+Changes since 1.0:
+
+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.
+
+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
+
+ • 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
+
+ • 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
-Changes since 0.10.3:
-
- * added apev2mux element
- * use libiec61883 for Firewire
-
-Bugs fixed since 0.10.3:
-
- * 345930 : [id3demux] segfaults with file containing only ID3v1 tag
- * 347529 : wavparse error
- * 321191 : rtpamrdec isn't a subclass of GstBaseRtpDepayload
- * 340027 : [patch] wavparse fails for several files
- * 318563 : offer support for new raw1394_iso api in dv1394src
- * 330623 : [avidemux] only the beginning of big avi files gets played
- * 334375 : [id3demux] [id3v2mux] ID3 tag rewriting is lossy
- * 337076 : Problem with broken matroska files containing non-UTF8 su...
- * 339704 : [id3demux] read images from ID3 tags
- * 340282 : Goom visualization is unusable at 'Normal' size and higher
- * 340623 : [matroskademux] small memory leak
- * 340699 : [flacdec] should not send EOS when doing segment seeking
- * 340859 : [avimux] produces index with all frames marked as keyframes
- * 340946 : raw1394 plugin uses deprecated functions
- * 340979 : [id3demux] mp3 id3v2 TCON tag possible bug?
- * 341489 : gst-plugins-good wavparse Cygwin fix
- * 341774 : Fails to read tags in file
- * 341818 : [matroskademux] poor concurrent performance
- * 342029 : [id3demux] overflow of titlenumbers
- * 342097 : [jpegdec] crash with attached JPEG file
- * 342448 : [matroska] support for muxing/demuxing Theora video
- * 342526 : [avimux] dml index support, codec_data support, cleanups
- * 342592 : dvdemux doesn't post segment-done right
- * 342734 : [matroskamux] might block on state-change
- * 343051 : [autoaudiosink] doesn't try esdsink
- * 343055 : README mentions 0.9.6
- * 343117 : jpegdec, mjpeg avi's and flush seeks
- * 343122 : [taglib] new apev2mux element
- * 343123 : [apedemux] add support for GST_TAG_LOCATION
- * 343127 : [apedemux] extract track count, clean up parsing
- * 343602 : configure --disable-external fails
- * 343603 : need to add -lm to build tests/examples/level
- * 343678 : configure.ac incorrectly uses $(SED) rather than $SED
- * 343837 : [wavparse] can't handle WAV file with 'bext' header chunk
- * 344100 : --disable-schemas-install not honored
- * 344101 : SunAudio mixer fixes
- * 344120 : dv1394src should now require libraw1394 > = 1.1.0
- * 344605 : [id3demux] set picture type on image buffers
- * 345232 : [wavparse] reads beyond end-of-file (in pull mode)
- * 345288 : [udp] make work on Windows
- * 345713 : ximagesrc uses XFixesCursorImage incorrectly and will seg...
- * 346066 : [sunaudiosink] don't override user setting and switch on ...
- * 346259 : [sunaudio] move monitor to input tab in mixer
- * 347234 : streaming UDP (MPEGTS) shows only one frame of video
- * 347258 : [wavparse] internal stream error reading gnome-game gnibb...
- * 347898 : [id3v2mux] write GST_TAG_ENCODER and GST_TAG_ENCODER_VERSION
- * 347972 : [cdiocddasrc] core dumps if device is not found
- * 348644 : [id3demux] Gets the wrong part of binary blob for ID3 v2....
- * 348752 : [udpsrc] add property to set buffer size for udp socket
- * 348913 : [id3v2mux] tagging utf-8 text may be converted to iso-8869-1
- * 349155 : [smokeenc] does not set caps on it's buffers
- * 349189 : LADSPA gstsignalprocessor.c: line 408: assertion failed: ...
- * 349907 : multiudpsink messes up multicast addresses
- * 350433 : [rtph263pdepay] h.263plus depayloader does not work
- * 340492 : [flacdec] support push-based operation (and thus flac-ove...
- * 345679 : fix to avoid goom core dumping
- * 317470 : [GstCheck] gst_check_teardown_element asserts wrong refcount
- * 340980 : [pixbuf,wavparse] fix build with gcc 2.95
- * 343661 : Jpeg image crashes gstreamer
- * 344923 : New SunAudio source plugin, and mixer now supports stereo...
- * 345301 : [PATCH] gst-plugins-good rtsp for Windows
- * 346921 : gstmultiudpsink multicast support is broken
- * 344136 : More accurate list of plugins which will/will not be buil...
-
-Changes since 0.10.2:
-
- * Annodex/CMML support
- * RTSP and RTP enhancements
- * HAL configured audio device support
- * FLAC, Matroska, AVI, WAV, ID3, APE, DV and JPEG plugin improvements
- * Recognise SSA/ASS and USF subtitles in Matroska files
- * Fixes for ESD and SunAudio output plugins
- * More uniform plugin descriptions
- * IceCast metadata reading plugin added
- * New plugins ported from 0.8: OSX audio, AVI muxer, X-Windows input,
- WAV encoder, Gdk-Pixbuf image decoder, Smoke decoder,
- Video colour balance
- * Lots of bug fixes
-
-Bugs fixed since 0.10.2:
-
- * 335067 : RTSP src not working with WMServer servers
- * 333657 : Replacing icy demuxing in gnomevfssrc
- * 329106 : HAL sound device wrapper plugins
- * 337749 : totem (gstreamer) crashes when playing an avi file
- * 330885 : avidemux does not handle eos at end of seek-region
- * 337364 : faulty GObject macros
- * 337625 : [patch] Streaming support for wavparse
- * 150363 : [pngdec] doesn't handle grayscale or paletted
- * 154744 : Time slider does not work with avi videos from Cannon SD100
- * 161712 : [auparse] .au files don't play in playbin
- * 313266 : [wavparse] will not play DTS stream in malformed WAV
- * 319183 : rtspsrc filter sometimes uses an odd port for rtp
- * 319986 : annodex decoding and encoding support
- * 323721 : [id3demux] read in replaygain information from RVA2 frame...
- * 323880 : " Seek in ready " for dvdemux
- * 325191 : problem with auparse or mulawdec, choppy esd playback
- * 326160 : videobalance not ported to new GstVideoFilter
- * 327658 : " Seek in ready " support for wavparse plugin
- * 328327 : gst-plugins-good fail to compile with gcc 4.1
- * 329107 : Profile support for gconfaudiosink
- * 330239 : Crash playing any song from a particular album over rhyth...
- * 330678 : Unable to play .fli files
- * 331253 : Critical warnings when using cddacdiosrc
- * 331368 : Gstreamer doesn't recognise tags
- * 331385 : [alpha] state change function returns a constant
- * 331672 : Another file that gstreamer can't read the tags on
- * 331905 : [jpeg] smokedec not ported
- * 331917 : [pngdec] does not support files with png streams
- * 332031 : [PATCH] avimux ported to 0.10
- * 332547 : [wavparse] does not support multichannel wavs
- * 333070 : [id3demux] reads unicode tags incorrectly where .8 did it...
- * 333302 : [apedemux] some WavPack files with APE tags fail to play ...
- * 333392 : [sunaudio] unused variables break CVS build with -Werror
- * 333512 : [PATCH] Fix gst_pad_new_from_template (gst_static_pad_tem...
- * 333624 : invalid get_times implementation in gstdynudpsink
- * 333784 : [patch] unref the result of gst_pad_get_parent
- * 334083 : [jpegdec] wrong durations set on buffers after seeking in...
- * 334522 : avi of mpeg4 video and adpcm audio from digital camera re...
- * 334732 : [id3demux] mp3 fails to play because typefinding thinks i...
- * 334995 : [goom] zoom filter leaked
- * 335231 : [wavparse] incorrect way to calculate seek position with ...
- * 335755 : rhythmbox import crasher - png?
- * 335858 : Video playback out of sync
- * 335958 : [speexenc] doesn't work
- * 336110 : move taglib-based ID3 muxer to -good
- * 336602 : plugins need better/univied descriptions
- * 336756 : move ximagesrc to gst-plugins-good
- * 336889 : [avidemux] index creation might fail with some non-indexe...
- * 336904 : Problem playing some AVI file when splitting large chunks...
- * 337033 : [speex] can't seek in speex-encoded audio
- * 337183 : [matroska] " caps not real subset " when playing audio files
- * 337294 : AVI files downloaded from vidoe.google.com won't play
- * 337421 : [sunaudiosink] some fixes
- * 337609 : [flacdec] can't play .flac files where header says total_...
- * 338290 : [flacdec] segment seek not supported
- * 338713 : [id3demux] TCO genre tags (id3v2.2) don't get read by gst...
- * 338715 : [shout2send] fix crash on error and tags received before ...
- * 338716 : [wavenc] " not negotiated " error with CVS core
- * 338810 : [matroskademux] blocks on segmenting seek (and other seek...
- * 339446 : [matroska] can't play file if details come before type in...
- * 339451 : [matroska] enhancement for VfW compatibility cases
- * 339678 : [matroskamux] wrong timestamps of B-frames
- * 340346 : [matroskamux] blocks upon muxing video and vorbis-audio
- * 319884 : rtpamrdec discards non-transmitted frames
-
-Changes since 0.10.1:
- * New libcdio based CDDA reading element
- * APE tag reader ported
- * ID3 tag reading fixes
- * Sun Audio Sink fixes
- * GOOM and gconf element fixes
- * lots of bug and leak fixes
-
-Bugs fixed since 0.10.1:
- * 328336 : silence warings which make dvdec / dvdemux unusable
- * 315557 : Internal event problem with MP3s from vgmix.com
- * 323327 : [cdio] port cddasrc to 0.10
- * 325148 : Bugs in G711 RTP packetization logic
- * 325649 : apetag plugin needs porting to 0.10
- * 326446 : check that all elements in -good pass queries they can't ...
- * 326602 : id3demux is not compiling without ZLIB
- * 326683 : build problem caused by AS_LIBTOOL_TAGS([CXX])
- * 326736 : gconf(audio|video)sink response to key changes
- * 326864 : [wavparse] time to bytes format conversion broken
- * 327009 : [esdsink] won't compile with includes in non-standard prefix
- * 327765 : [sunaudio] fixes for mixer and stuttering mp3 playback
- * 327825 : [matroskamux] Matroska muxer deadlock
- * 327871 : [videobox] crash when cropping
- * 328241 : id3demux emits NULL date for year tags
- * 328264 : Fix build with gcc 2.95
- * 328531 : [matroskamux] doesn't send newsegment event, critical war...
- * 329181 : totem crash when using goom effect
- * 329810 : Fails to read ID3 tag
- * 330005 : Please use the autodetect sinks by default
- * 317658 : [cdio] support for cd-text and cd-g
-
-Changes since 0.10.0:
-
- * new id3 demuxer (replaces the mad one in gst-plugins-ugly)
- * memleak fixes in avidemux, wavparse, level, smoke
- * ports of multipart,
- * fixes in flacdec, flxdec, rtp
- * documentation updates on videomixer
- * added new sunaudiosink, gconfaudiosrc and gconfvideosrc elements
-
-Bugs fixed since 0.10.0:
-
- * 321269 : add sunaudio to 0.9
- * 322769 : The ID3 tag of this file is a segfaulter
- * 323021 : sockfd property to udpsrc/dynudpsink elements
- * 322975 : erroneous audio specs in flac plugin
- * 323226 : block/crash on id3 v2 tags when using big blocksize
- * 323717 : < netinet/in.h > inclusion necessary on some systems
- * 323718 : [oss] does not build on OpenBSD 3.8 because of hardcoded ...
- * 323896 : pngdec/videomixer negotation problem in 0.10
- * 324011 : Invalid payload type definition for some rtp payloaders
- * 324012 : Invalid caps on rtpspeexpay element
- * 325504 : [flacdec] gst_flac_dec_convert_src [mis]uses g_assert
- * 325974 : [gst0.10] doesn't correctly gets the tags on a mp3
- * 326612 : Serious memory leak in level plugin
- * 326618 : memleak fix in smokeenc
-
-API added since 0.10.0:
-
- * device-name property on ossmixer subclasses
- * GstUDPSrc::sockfd property
-
-Changes since 0.9.6:
-
- * Parallel installability with 0.8.x series
- * Threadsafe design and API
- * effectv elements ported
- * videoflip updated
- * multipart ported
- * dv seeking fixed
- * rtp elements renamed
-
-Bugs fixed since 0.9.6:
-
- * 322377 : udpsrc leaks sockets
- * 322643 : Incorrect matroska frame default duration
- * 322645 : Matroska muxer: wrong pixel aspect ratio
- * 322667 : [jpegenc] leaks input buffer
- * 322794 : udp plugin linked against gstnet instead of gstnetbuffer
-
-Changes since 0.9.5:
-
- * added speex RTP payloader/depayloader
- * ported cutter
- * fractional framerates
- * more video filters now use BaseTransform
-
-Bugs fixed since 0.9.5:
-
- * 319184 : rtspsrc: invalid read in sdp_message_parse_buffer ()
- * 321001 : [matroskademux] should seek to nearest preceding index en...
- * 321430 : goom fails to register on amd64
-
-Changes since 0.9.4:
-
- * matroskamux fixes
- * wavenc fixes
- * cairotextoverlay ported
-
-Bugs fixed since 0.9.4:
-
- * 315194 : Licence information inconsistency of gst-plugins-good/gst...
- * 319731 : [matroska] SimpleBlock support for muxer and demuxer
- * 320308 : [matroska] set timestamps for buffers with ebml elements
- * 320920 : [osssink] tries to reuse a bad file descriptor
- * 321136 : [matroska-mux] avoid reading from unref'ed buffer
-
-Changes since 0.9.3:
-
- * DV/Firewire fixes
- * speexenc, cairotimeoverlay, matroska, pngdec, flxdec, videomixer,
- alphacolor ported
-
-Bugs fixed since 0.9.3:
-
- * 316204 : MinGW compilation: smtpe plugin has undefined symbols fro...
- * 316205 : Debug category for wavenc is not defined
- * 318847 : Matroska muxer port to 0.9
-
-Changes since 0.9.1:
-
- * Parallel installability with 0.8.x series
- * Threadsafe design and API
-
-Bugs fixed since 0.9.1:
-
- * 316202 : MinGW compilation: undefined autoconf macro GST_DOC
- * 317338 : [osssink] can't handle mono