[gst-announce] RELEASE: GStreamer 0.10.31 "Safety Pins"

Tim-Philipp Müller t.i.m at zen.co.uk
Wed Dec 1 15:17:32 PST 2010


This mail announces the release of GStreamer 0.10.31 "Safety Pins".

GStreamer is a streaming media framework that allows the construction of
graphs of elements which operate on media data.

Applications using this library can do anything from real-time sound
processing over playing video to capturing audio, video, and even other
types of media data. Its architecture allows for adding new data types
or processing capabilities simply by installing new plug-ins.

GStreamer is the core module, containing libraries, headers, the basic
object hierarchy, and a set of media-agnostic core elements.

Highlights of this release:

 * new GstDateTime API
 * new GstElementFactory utility functions
 * new  buffering query API to query the
   already-downloaded areas/ranges
 * bit reader utility API optimisations
 * other optimisations and bug fixes

For more information, see
http://gstreamer.freedesktop.org/modules/gstreamer.html

To report bugs, request features or submit patches, please go to
https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer&component=gstreamer+%28core%29

Direct links:
http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-0.10.31.tar.bz2
http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-0.10.31.tar.gz

MD5 sums (for tarballs downloaded from gstreamer.freedesktop.org):
a21fb08bdb578d972c7c14e77da8fbb6  gstreamer-0.10.31.tar.bz2
939a9b62c720b12fc37c6cdc0e0bdc30  gstreamer-0.10.31.tar.gz

Enjoy!

-------------- next part --------------

Release notes for GStreamer 0.10.31 "Safety Pins"
        


The GStreamer team is proud to announce a new release
in the 0.10.x stable series of the
core of the GStreamer streaming media framework.


The 0.10.x series is a stable series targeted at end users.
It is not API or ABI compatible with the stable 0.8.x series.
It is, however, parallel installable with the 0.8.x series.


The 0.10.x series has been reworked for threadsafety.  It also features
various feature additions and enhancements.


This module, gstreamer, only contains core functionality.
For actual media playback, you will need other modules.

gst-plugins-base
contains a basic set of well-supported plug-ins
gst-plugins-good
contains a set of well-supported plug-ins under our preferred license
gst-plugins-ugly
contains a set of well-supported plug-ins, but might pose problems for
    distributors
gst-plugins-bad
contains a set of less supported plug-ins that haven't passed the
    rigorous quality testing we expect



  

Features of this release
    
      * bin: add "message-forward" property to force forwarding of messages that would usually be filtered such as ASYNC_DONE or EOS
      * bin: improve tracking of source elements for more efficient event dispatch
      * bufferlist: add function to add a list of buffers
      * clock: fix racy shutdown clock id leak
      * element: add support for arbitrary element class / factory details
      * element: link_many should activate pads if needed
      * gst: add math-compat.h header
      * datetime: add GstDateTime API
      * elementfactory: add utility functions to filter features by type
      * plugin: load the gst-python plugin loader with G_MODULE_BIND_LAZY
      * query: add buffering ranges API to retrieve informations about the areas of the stream currently buffered
      * value: add int64 range type
      * info: write debugging output to file if GST_DEBUG_FILE environment variable is set
      * pad: use more efficient g_object_notify_by_pspec() for caps notifies if compiling against new-enough GLib
      * pipeline: If the currently used clock gets lost update it the next time when going from PAUSED to playing
      * plugin: add release datetime field to GstPluginDesc and set it if GST_PACKAGE_RELEASE_DATETIME is defined
      * utils: speed up pad linking utility functions by not trying pads that will never work
      * adapter: add function to get a list of buffers; support 0-sized buffers
      * adapter: optimize gst_adapter_take() and gst_adapter_peek() a little
      * basesink: only answer the SEGMENT query in pull mode
      * basesrc: return values in stream time for the POSITION query
      * basetransform: allow the subclass to add new fields to caps when getting new caps from downstream
      * basetransform: avoid useless memcpy
      * basetransform: upstream caps-renegotiation fixes
      * bitreader: add inlined and unchecked versions of the most important functions
      * bytewriter: add inline and unchecked variants of all important functions
      * bytewriter: fix possible infinite loop caused by an overflow
      * queue: add "silent" property to suppress signal emission (for better performance)
      * queue: avoid unnecessary g_cond_signal() (for better performance)
      * queue: push newsegment event when linking in PLAYING
      * queue2: extend ring buffer to support RAM mode
      * queue2: in download mode, prevent range corruption due to race
      * queue2: don't send seeks beyond the end of the file upstream in pull mode (fixes apple trailers and youtube/html5 playback in webkit)
      * multiqueue: flush the data queue if downstream return WRONG_STATE too
      * gst-inspect: print GST_PARAM_MUTABLE_* property flags

Bugs fixed in this release
     
      * 396774 : Make GstElementDetails extensible
      * 482147 : [queue] Issue with current time level if source task is not started
      * 579127 : gst-launch: disable CLOCK_LOST message handling
      * 594504 : Need a GType of " Date AND Time AND Timezone " 
      * 600004 : underrun signal emits when i tested queue overrun test case from file /gstreamerXXXX/tests/check/element/queue.c
      * 610366 : [gstcollectpads][doc] Add a reminder for 'data' doc
      * 611918 : leaky queue might not push newsegment event
      * 618919 : Registry/Plugin Loading Memory Leak
      * 619522 : basetransform fix for upstream caps-renegotiation
      * 621299 : make simple queues faster
      * 621332 : BaseTransform should disable proxy alloc if downstream changes caps
      * 622740 : GstPad: Do not call gst_pad_accept_caps() when caps change
      * 623040 : Add release_datetime field to GstPluginDesc
      * 623121 : [queue2] downloaded areas of the media are not exposed
      * 623491 : make *_get_type() thread safe
      * 623541 : [basetransform] Implement POSITION query
      * 623622 : [basesink/basesrc] Should return values in stream time for POSITION query
      * 623806 : [pipeline] Doesn't update the clock if the currently used one gets lost and the start time did not change
      * 623875 : gstregistrybinary.c compatibility with glib > = 2.25.0
      * 624203 : gstutils: Make gst_pad_proxy_getcaps() return empty caps if it's what the other side has
      * 625239 : FTBFS: ./gstreamer-decl.txt:9461: warning: GstTagList has multiple definitions.
      * 625295 : [info] regression: doesn't flush output stream after every debug print any longer
      * 625368 : gstdatetime.c doesn't compile in VS 2008
      * 625862 : [docs] unused symbol GST_CAT_LEVEL_LOG_valist breaks the build
      * 626027 : [tag] Add GST_TAG_APPLICATION_NAME
      * 626181 : GstElementFactory: add listing/filtering API
      * 626651 : [tag] Photography/capture settings tags
      * 626784 : element: link_many might assert elements are in paused or playing
      * 627438 : gst: Add a gst_is_initialized() API
      * 627826 : GstInt64Range type
      * 627910 : Warnings emitted when -Wcast-qual used
      * 627959 : [queue2] on-disk buffering failing for AVI container
      * 628014 : Deprecate GST_FLOW_IS_FATAL/GST_FLOW_IS_SUCCESS
      * 628174 : New gstvalue checks cause trouble in thoggen
      * 628176 : [basetransform] Problems with buffer handling in inplace mode
      * 628408 : Use GDateTime that has been released
      * 629241 : Build broken with introspection using gobject-introspection from master
      * 629410 : GstBaseTransform: position query refers to sink pad, not source pad
      * 629494 : Latest gst-launch.c doesn't build in Visual Studio 2008
      * 629553 : GstAdapter: timestamp not updated when empty buffer is pushed
      * 629831 : [API] add gst_structure_take_value() and gst_structure_id_take_value()
      * 629946 : Enumerations have incorrect names of enum values (GEnumValue.value_name)
      * 630257 : GST_DEBUG_DUMP_DOT_DIR not working anymore
      * 630436 : basesink: renderdelay needs to be subtracted in adjust_time()
      * 630437 : basetransform: Make a WARNING into a DEBUG statement
      * 630439 : clock: fix racy shutdown clock id leak
      * 631755 : Fix build with glib 2.21.3
      * 631853 : [queue2] deadlock when using temp-location and dispatch-properties
      * 632236 : [gst-inspect] unhelpful uri handler output
      * 632433 : [basesink] hangs/drops going to PLAYING following flushing step in PAUSED
      * 632977 : [queue2] qtdemux causes soup to request seeks past the end of the range
      * 633147 : Simple reverse negotiation pipeline is broken.
      * 633886 : Visual Studio emits warnings about double defined _USE_MATH_DEFINES
      * 635031 : [datetime] Fix unix epoch handling
      * 635389 : Include information on exported packages in GIRs
      * 635869 : GST_BOILERPLATE_FULL causes warnings in user C++ code
      * 633176 : recent multiqueue changes break DVD playback

API changed in this release
     
- API additions:
    
      * gst_is_initialized
      * gst_buffer_list_iterator_add_list
      * GstBin:message-forward
      * GST_TYPE_DATE_TIME
      * gst_date_time_get_day
      * gst_date_time_get_hour
      * gst_date_time_get_microsecond
      * gst_date_time_get_minute
      * gst_date_time_get_month
      * gst_date_time_get_second
      * gst_date_time_get_time_zone_offset
      * gst_date_time_get_type
      * gst_date_time_get_year
      * gst_date_time_new
      * gst_date_time_new_from_unix_epoch_local_time
      * gst_date_time_new_from_unix_epoch_utc
      * gst_date_time_new_local_time
      * gst_date_time_new_now_local_time
      * gst_date_time_new_now_utc
      * gst_date_time_ref
      * gst_date_time_unref
      * gst_tag_list_get_date_time
      * gst_tag_list_get_date_time_index
      * GST_TAG_GEO_LOCATION_HORIZONTAL_ERROR
      * GST_TAG_APPLICATION_DATA
      * GST_TAG_APPLICATION_NAME
      * GST_TAG_DATE_TIME
      * GST_ELEMENT_IS_SOURCE
      * gst_element_class_set_documentation_uri
      * gst_element_class_set_icon_name
      * gst_element_factory_get_documentation_uri
      * gst_element_factory_get_icon_name
      * gst_element_factory_list_filter
      * gst_element_factory_list_get_elements
      * gst_element_factory_list_is_type
      * GstElementFactoryListType
      * GST_ELEMENT_FACTORY_TYPE_ANY
      * GST_ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS
      * GST_ELEMENT_FACTORY_TYPE_AUDIO_ENCODER
      * GST_ELEMENT_FACTORY_TYPE_DECODABLE
      * GST_ELEMENT_FACTORY_TYPE_DECODER
      * GST_ELEMENT_FACTORY_TYPE_DEMUXER
      * GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER
      * GST_ELEMENT_FACTORY_TYPE_ENCODER
      * GST_ELEMENT_FACTORY_TYPE_FORMATTER
      * GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS
      * GST_ELEMENT_FACTORY_TYPE_MEDIA_AUDIO
      * GST_ELEMENT_FACTORY_TYPE_MEDIA_IMAGE
      * GST_ELEMENT_FACTORY_TYPE_MEDIA_METADATA
      * GST_ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE
      * GST_ELEMENT_FACTORY_TYPE_MEDIA_VIDEO
      * GST_ELEMENT_FACTORY_TYPE_MEDIA_ANY
      * GST_ELEMENT_FACTORY_TYPE_MUXER
      * GST_ELEMENT_FACTORY_TYPE_PARSER
      * GST_ELEMENT_FACTORY_TYPE_PAYLOADER
      * GST_ELEMENT_FACTORY_TYPE_SINK
      * GST_ELEMENT_FACTORY_TYPE_SRC
      * GST_ELEMENT_FACTORY_TYPE_VIDEO_ENCODER
      * GST_ELEMENT_FACTORY_KLASS_DECODER
      * GST_ELEMENT_FACTORY_KLASS_ENCODER
      * GST_ELEMENT_FACTORY_KLASS_SINK
      * GST_ELEMENT_FACTORY_KLASS_SRC
      * GST_ELEMENT_FACTORY_KLASS_MUXER
      * GST_ELEMENT_FACTORY_KLASS_DEMUXER
      * GST_ELEMENT_FACTORY_KLASS_PARSER
      * GST_ELEMENT_FACTORY_KLASS_PAYLOADER
      * GST_ELEMENT_FACTORY_KLASS_DEPAYLOADER
      * GST_ELEMENT_FACTORY_KLASS_FORMATTER
      * GST_ELEMENT_FACTORY_KLASS_MEDIA_VIDEO
      * GST_ELEMENT_FACTORY_KLASS_MEDIA_AUDIO
      * GST_ELEMENT_FACTORY_KLASS_MEDIA_IMAGE
      * GST_ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE
      * GST_ELEMENT_FACTORY_KLASS_MEDIA_METADATA
      * gst_plugin_feature_list_debug
      * gst_plugin_feature_rank_compare_func
      * gst_query_add_buffering_range
      * gst_query_get_n_buffering_ranges
      * gst_query_parse_nth_buffering_range
      * gst_structure_get_date_time
      * gst_structure_id_take_value
      * gst_structure_take_value
      * GST_TYPE_INT64_RANGE
      * gst_int64_range_get_type
      * gst_util_fraction_compare
      * gst_value_get_int64_range_max
      * gst_value_get_int64_range_min
      * gst_value_set_int64_range
      * GST_VALUE_HOLDS_DATE_TIME
      * gst_adapter_take_list
      * gst_bit_reader_skip_unchecked
      * gst_bit_reader_skip_to_byte_unchecked
      * gst_bit_reader_get_bits_uint16_unchecked
      * gst_bit_reader_get_bits_uint32_unchecked
      * gst_bit_reader_get_bits_uint64_unchecked
      * gst_bit_reader_get_bits_uint8_unchecked
      * gst_bit_reader_peek_bits_uint16_unchecked
      * gst_bit_reader_peek_bits_uint32_unchecked
      * gst_bit_reader_peek_bits_uint64_unchecked
      * gst_bit_reader_peek_bits_uint8_unchecked
      * gst_byte_writer_put_int8_unchecked
      * gst_byte_writer_put_int16_be_unchecked
      * gst_byte_writer_put_int16_le_unchecked
      * gst_byte_writer_put_int24_be_unchecked
      * gst_byte_writer_put_int24_le_unchecked
      * gst_byte_writer_put_int32_be_unchecked
      * gst_byte_writer_put_int32_le_unchecked
      * gst_byte_writer_put_int64_be_unchecked
      * gst_byte_writer_put_int64_le_unchecked
      * gst_byte_writer_put_uint8_unchecked
      * gst_byte_writer_put_uint16_be_unchecked
      * gst_byte_writer_put_uint16_le_unchecked
      * gst_byte_writer_put_uint24_be_unchecked
      * gst_byte_writer_put_uint24_le_unchecked
      * gst_byte_writer_put_uint32_be_unchecked
      * gst_byte_writer_put_uint32_le_unchecked
      * gst_byte_writer_put_uint64_be_unchecked
      * gst_byte_writer_put_uint64_le_unchecked
      * gst_byte_writer_put_float32_be_unchecked
      * gst_byte_writer_put_float32_le_unchecked
      * gst_byte_writer_put_float64_be_unchecked
      * gst_byte_writer_put_float64_le_unchecked
      * gst_byte_writer_put_data_unchecked
      * gst_byte_writer_fill_unchecked
- API deprecations:
    
      * GST_FLOW_IS_FATAL
      * GST_FLOW_IS_SUCCESS

Download

You can find source releases of gstreamer in the download directory:
http://gstreamer.freedesktop.org/src/gstreamer/

GStreamer Homepage

More details can be found on the project's website:
http://gstreamer.freedesktop.org/

Support and Bugs

We use GNOME's bugzilla for bug reports and feature requests:
http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer

Developers

GStreamer is stored in Git, hosted at git.freedesktop.org, and can be cloned from there.
Interested developers of the core library, plug-ins, and applications should
subscribe to the gstreamer-devel list. If there is sufficient interest we
will create more lists as necessary.

        
Applications

Applications ported to GStreamer 0.10 include Totem, RhythmBox, Sound-Juicer,
Gnome Media, Flumotion, Amarok, Jamboree, Pitivi, Istanbul, AnnoAmp, Elisa, and others.
Let us know if you want to be added to this list.

  
Contributors to this release
    
      * Alessandro Decina
      * Arun Raghavan
      * Colin Walters
      * David Hoyt
      * David Schleef
      * Edward Hervey
      * Evan Nemerson
      * Havard Graff
      * Jan Schmidt
      * Jeffrey S. Smith
      * Jonas Holmberg
      * Jonathan Matthew
      * Mark Nauwelaerts
      * Michael Bunk
      * Ognyan Tonchev
      * Olivier Crête
      * Philippe Normand
      * Rob Clark
      * Robert Swain
      * Sebastian Dröge
      * Shixin Zeng
      * Stefan Kost
      * Thiago Santos
      * Thijs Vermeir
      * Tim-Philipp Müller
      * Trond Andersen
      * Vincent Penquerc'h
      * Vladimir Eremeev
      * Wim Taymans
      * reynaldo
 


More information about the Gstreamer-announce mailing list