Commit b2ce00c5 authored by Sebastian Dröge's avatar Sebastian Dröge 🍵

Release 1.3.1

parent 1c1b2067
This diff is collapsed.
This is GStreamer Bad Plugins 1.2.0
This is GStreamer Bad Plugins 1.3.1
Changes since 1.0:
Changes since 1.2:
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
• 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.
• 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
• 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
• 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 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
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
The v4l2videodec element replaces the mfcdec element.
∘ 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 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
∘ gst-libav now uses libav 10, 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.
∘ 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:
• 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
• 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
• The eglglessink element was removed and replaced by the glimagesink
• The mfcdec element was removed and replaced by v4l2videodec.
• osxvideosink is only available in OS X 10.6 or newer.
Release notes for GStreamer Bad Plugins 1.2.0
Release notes for GStreamer Bad Plugins 1.3.1
The GStreamer team is proud to announce a new feature release
in the 1.x stable series of the
core of the GStreamer streaming media framework.
The GStreamer team is pleased to announce the first release of the unstable
1.3 release series. The 1.3 release series is adding new features on top of
the 1.0 and 1.2 series and is part of the API and ABI-stable 1.x release
series of the GStreamer multimedia framework. The unstable 1.3 release series
will lead to the stable 1.4 release series in the next weeks, and newly added
API can still change until that point.
The 1.x series is a stable series targeted at end users.
It is not API or ABI compatible with the stable 0.10.x series.
It is, however, parallel installable with the 0.10.x series and
will not affect an existing 0.10.x installation.
Binaries for Android, iOS, Mac OS X and Windows will be provided separately
during the unstable 1.3 release series.
The versioning scheme that is used in general is that 1.x.y is API and
ABI backwards compatible with previous 1.x.y releases. If x is an even
number it is a stable release series and all releases in this series
will only contain important bugfixes, e.g. the 1.0 series with 1.0.7. If
x is odd it is a development release series that will lead to the next
stable release series 1.x+1 and contains new features and bigger
changes. During the development release series, new API can still
......@@ -60,8 +73,140 @@ contains a set of codecs plugins based on libav (formerly gst-ffmpeg)
There were no bugs fixed in this release
Bugs fixed in this release
* 709414 : dvbsrc: Uses deprecated field frontend type and add DVB S2/T2 support
* 723670 : Move VideoToolBox elements from applemedia to a different plugin
* 728514 : glimagesink fails with gst-sdk android tutorial-5 / tutorial-4
* 728356 : jpegparse: Does not passthrough timestamps depending on downstream elements
* 519220 : Add W64/R64 support
* 574408 : audiomixer: Need an element to do synchronized audio mixing
* 628055 : tsdemux: Handle PCR/PTS/DTS discont/gaps
* 644395 : mpegtsdemux / mpegtsmux: data flow error
* 664443 : h264parse: Parsing shifts timestamps between frames
* 671136 : mpegtsmux: add support for SDT and NIT tables for DVB-S/DVB-T
* 675869 : hlsdemux: potential dead-lock using GstTask
* 695846 : hlsdemux: No longer switches pads on playlist changes
* 698748 : mpegtsmux: improper timestamping of output packets
* 699924 : smoothstreaming: no audio with BBC bigbuckbunny stream
* 701404 : dashdemux: should not buffer the entire Period
* 703342 : gl: implement support for DispManX (Raspberry Pi)
* 703343 : Add EGLImage support (consume and provide buffer pool)
* 706054 : move GstEGLImageBufferPool and allocator from eglglessink to gstegl lib
* 708345 : liveadder: round when calculation length from duration
* 708438 : codecparsers: HEVC bitstream parser
* 708629 : codecparsers: Fix the quantization matrix scan order for h264
* 708688 : Message EISS and SCTE signaling sections on bus similar to PSI
* 708914 : Add openni2 plugin and openni2src element
* 709174 : Add avfvideosrc to the OS X build in applemedia
* 709180 : mpegts: Return GstMpegTsDescriptor in mpegts_get_descriptor_from_*
* 709454 : dvdspu: make palette change event sticky
* 709795 : curlsftpsink - new libcurl-based sink element for SFTP
* 710391 : geometrictransform: rotate: fix angle property help text
* 710759 : mpegts: fix uninitialized variable warnings
* 710810 : geometrictransform: Add a plugin for a 2D perspective transform
* 710855 : ivfparse: Port to 1.0
* 711009 : h264parse: Remove explicit PAR calculation and use the values provided by h264 codecparser
* 711086 : hlssink: doesn't have the sink flag set
* 711140 : vtenc: use proper release callback type in CVPixelBufferCreateWithPlanarBytes
* 711159 : eglglessink: remove unused functions in the eagl backend
* 711223 : Port cdaudio element to 1.
* 711606 : applemedia: coremediabuffer: use correct retain/release functions on CMSampleBufferRef buffer
* 711614 : avfvideosrc: set rank to GST_PRIMARY
* 711620 : curlftpsink: Create a temporary file during FTP transfer/upload
* 711844 : avfvideosrc: build failure
* 711849 : smoothstreaming: Better handling of multi audio tracks
* 714998 : d3dvideosink: force-aspect-ratio=false causes errors due to usage of uninitialised destination rectangle
* 719519 : mpegtsmux: Does not prevent plugging unparsed stream
* 720382 : dvbsuboverlay: fix reading of display window in display definition segment
* 720434 : srtp: add 256-bit keys support
* 721027 : mfcdec: doesn't work in odroid with kernel 3.8: dequeueing failed in input_dqbuf
* 721073 : shm: test_shm_sysmem_alloc unit test fails with timeout after some time
* 721293 : is out of date
* 721682 : examples: tsparser: Add DVB teletext/subtitling parsing
* 721950 : assrender: handle video/x-raw(ANY) if downstream supports the GstVideoOverlayCompositionMeta API
* 722078 : schroenc: oggmux drops buffers from schroenc because of unset buffer offsets
* 722081 : h265parse: Fix segfault when parsing VPS
* 722101 : h265parser: fix a trivial overrun in a loop
* 722145 : tsdemux: fix memleak of PCROffsetCurrent
* 722240 : h265parse: update caps when receive VPS/SPS
* 722462 : tsdemux: Fix leak of PCROffsetGroup
* 722590 : applemedia: Fails to build on iOS: 'VideoToolbox/VideoToolbox.h' file not found
* 722669 : h265parser: Crashes on broken streams because of freeing uninitialized pointer
* 722699 : mpegtsmux: don't leak pad name when treating events
* 722934 : mxfdemux: don't use pull mode when the sequential scheduler flag is set
* 723243 : h264parse: Default framerate to 25/1 when no informations found
* 723268 : hlsdemux: Does not take into account stop time of seek events
* 723508 : applemedia: Fails to build on Mac OS X 10.7: 'VideoToolbox/VideoToolbox.h' file not found
* 723892 : mpegts: Some bugfixes regarding packetizing
* 723953 : mpegts: Unit test for library RFC
* 723995 : winks: configure test is broken - missing braces
* 724003 : winks: headers are not mentioned in
* 724034 : mpegts: parse extended event, component and content descriptors
* 724069 : mpegts: add terrestrial delivery system descriptor
* 724077 : shm: use shutdown() instead of close()
* 724100 : error: unknown type name 'gst_ks_clock'
* 724125 : curlsmtpsink: Timezone information is missed out in the sending out smtp email header
* 724255 : mpegts: Provide original binary data in the public API
* 724464 : mpegts: does not check data sizes when parsing descriptors
* 724699 : katedec: Katedec overwrites tags from oggdemux
* 724716 : tsparse: setting pipeline to PLAYING - > READY - > PLAYING is broken
* 724790 : dashdemux: live MPDs are immediately reloaded
* 724875 : dashdemux: attempts to fetch fragments before they're available.
* 724981 : mpegts: Add support for creation of SDT and service descriptor
* 725090 : debugutilsbad: fails gst-indent check
* 725134 : hlsdemux: null pointer deref if media playlist contains no media
* 725278 : add missed dvbsrc, mpegts docs
* 725412 : srtpenc: unref caps in sink query
* 725463 : change bandwidth to DVBv5-API
* 725481 : gst-plugins-bad: Ignore gcov intermediate files
* 725563 : tsdemux: Support DTS/DTS-HD bluray streams
* 725659 : wininetsrc: " iradio-mode " to default to TRUE
* 725893 : dvdspu: set proxy allocation flag on video sink pad
* 726028 : mpegvideoparse: Differentiate the mpeg-2 stream from mpeg-1 based on pic_ext also
* 726069 : frei0rfilter: memory corruption when the size of the incoming buffers change
* 726098 : sbcenc: Allow user to set channel-mode
* 726156 : watchdog: Add handling of paused state
* 726463 : dvbsuboverlay: handle video/x-raw(ANY) if downstream supports the GstVideoOverlayCompositionMeta API
* 726572 : fatal error: bcm_host.h: No such file or directory
* 726591 : W32: GL plugins can't be built in -bad
* 726752 : h264parser: should also expose a framerate in the case of interlaced samples
* 726802 : rfbsrc: doesn't send stream start event
* 726979 : mpegts: bugfix delivery system descriptor parsing
* 727104 : fix OSX host check
* 727125 : fatal error: GL/wglext.h: No such file or directory
* 727159 : mpegts: use g_slice_new0 and g_slice_free
* 727187 : mpegts: add data broadcast descriptor, stream indentifier descriptor
* 727306 : Decklinksrc won't initialize some models of capture cards (Patch included!)
* 727356 : mpegts: add dvb-t2 delivery system descriptor and typo fix
* 727385 : dashdemux: use correct print format for gint64
* 727403 : mpegts: add linkage, data_broadcast_id, private_data_specifier and parental_rating descriptors
* 727460 : mpegts: add atsc terrestrial virtual channel table
* 727512 : srtpdec: assertion when checking rtcp ssrc
* 727560 : mpegts: add frequency list, scrambling and dvb ca indentifier descriptor
* 727812 : directsoundsrc: CRITICAL, debug category not defined
* 727843 : glimagesink: shows only a black screen
* 727855 : camerabin: does not send an error if linking vfsrc pad to viewfinder queue fails
* 727857 : camerabin: allow " ANY " feature in viewfinderbin static pad templates
* 727885 : coremediabuffer: handle stride alignment
* 727889 : mxf: avoid dereferencing NULL pointer and leak fixes
* 727894 : liveadder: fix minor memory leak in caps query handler
* 727906 : smoothstreaming: using manifest before we have it in seeking query
* 727953 : avfvideosrc: check if downstream supports the video meta API
* 727977 : dvb: Protect against symbols added in DVB_API v5 minor version > 5
* 728107 : gl: No surface resizing logic on Android/iOS
* 728127 : glimagesink: fails to create window from gst-launch process if OS X terminal is fullscreen
* 728128 : glimagesink: swapped UV on OS X with avdec_h264
* 728249 : iosavassetsrc: port to 1.0
* 728439 : glimagesink: does not takes in account strides
* 728451 : glimagesink: expects a NSWindow instead of a NSView as the window handle
* 728761 : glimagesink: Deadlock on errors
* 728815 : GstGLMemory mix stride and width
* 728872 : GstGLBufferPool should avoid to allocate upload resources that are not going to be used for sure
* 728947 : glcolorscale: only black frames on GLESv2
* 726255 : y4mdec: Should check for VIDEO_META_API not CROP_META_API
* 711232 : Remove cdaudio
* 702041 : winks: Port to 1.0
==== Download ====
......@@ -98,7 +243,123 @@ subscribe to the gstreamer-devel list.
Contributors to this release
* Adrien SCH
* Aleix Conchillo Flaqué
* Alessandro Decina
* Alex Ashley
* Alexey Chernov
* Amaury Medeiros
* Andoni Morales Alastruey
* Andres Gomez
* Andrey Utkin
* Andy Wingo
* Anthony Violo
* Antoni Silvestre
* Antonio Ospite
* Arnaud Vrac
* Aurélien Zanelli
* Benjamin Gaignard
* Blake Tregre
* Brendan Long
* Carlos Rafael Giani
* Chen Jie
* Chris Bass
* Chris Paulson-Ellis
* Christian Fredrik Kalager Schaller
* Christian Schaller
* Colin Macdonald
* Cong Zhong
* Dan Kegel
* David Hoyt
* David Schleef
* Davide Bertola
* Dominik Röttsches
* Duncan Palmer
* Edward Hervey
* Eric Anholt
* Filippo Argiolas
* Gil Pedersen
* Gilles Dartiguelongue
* Greg Rutz
* Guillaume Desmottes
* Gwenole Beauchesne
* Haakon Sporsheim (ieei)
* Halley Zhao
* Haridass Selvaraj
* Jan Schmidt
* Javier Jardón
* Jesper Larsen
* Johan Dahlin
* Jonathan Matthew
* Jorge Zapata
* Josep Torra
* Julien
* Julien Isorce
* Julien Moutte
* Justin Joy
* Kipp Cannon
* L. Sorin
* Li Xiaowei
* Lihua Liu
* Lubosz Sarnecki
* Luc Deschenaux
* Luis de Bethencourt
* Mariusz Buras
* Mark Nauwelaerts
* Matej Knopp
* Mathieu Duponchelle
* Matthew
* Matthew Waters
* Matthieu Bouron
* Michael Olbrich
* Miguel Casas-Sanchez
* Miguel París Díaz
* Miquel Àngel Farré
* Mohammed Sameer
* Nicholas Panayis
* Nicola Murino
* Nicolas Dufresne
* Olivier Crête
* Per x Johansson
* Philippe Normand
* Pierre Pouzol
* Piotr Drąg
* Pratheesh Gangadhar
* Raimo Järvi
* Reynaldo H. Verdejo Pinochet
* Rico Tzschichholz
* Roland Peffer
* Ronald S. Bultje
* Santiago Carot-Nemesio
* Sebastian Dröge
* Sebastian Rasmussen
* Sjoerd Simons
* Sreerenj Balachandran
* Stefan Kost
* Stefan Ringel
* Stefan Sauer
* Steve Maynard
* Thiago Santos
* Thibault Saunier
* Thijs Vermeir
* Thomas Vander Stichele
* Tim-Philipp Müller
* Todd Agulnick
* Tonu Jaansoo
* Vincent Penquerc'h
* Vinson Lee
* Víctor Manuel Jáquez Leal
* Wang Xin-yu (王昕宇)
* Wei Feng
* Wim Taymans
* Xavi Artigas
* Zallesov
* Zhao, Halley
* duhui.lee
* julien
* julien User
* madmac
* unknown
* Руслан Ижбулатов
\ No newline at end of file
......@@ -3,7 +3,7 @@ AC_PREREQ([2.68])
dnl initialize autoconf
dnl when going to/from release please set the nano (fourth number) right !
dnl releases only do Wall, cvs and prerelease does Werror too
AC_INIT([GStreamer Bad Plug-ins],[],[],[gst-plugins-bad])
AC_INIT([GStreamer Bad Plug-ins],[1.3.1],[],[gst-plugins-bad])
......@@ -48,11 +48,11 @@ dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
dnl - interfaces added -> increment AGE
dnl - interfaces removed -> AGE = 0
AS_LIBTOOL(GST, 300, 0, 300)
AS_LIBTOOL(GST, 301, 0, 301)
dnl *** required versions of GStreamer stuff ***
dnl *** autotools stuff ****
This diff is collapsed.
......@@ -17,7 +17,6 @@ GObject
......@@ -46,10 +45,13 @@ GObject
......@@ -59,10 +61,11 @@ GObject
......@@ -74,11 +77,10 @@ GObject
......@@ -93,17 +95,12 @@ GObject
......@@ -121,10 +118,26 @@ GObject
......@@ -153,6 +166,7 @@ GObject