gstreamer/RELEASE
Tim-Philipp Müller d0ed2b0fd6 Release 0.10.26
2010-02-10 19:17:28 +00:00

254 lines
No EOL
9.8 KiB
Text
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Release notes for GStreamer 0.10.26 "Think Twice"
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
* Threadsafe design and API
* registry: do plugin scanning (on *nix) using an external helper binary
* lots of performance improvements all over the place (ghostpads,
multiqueue, pad construction, superfluous type checks, registry loading)
* add GstByteWriter, a simple generic byte writer
* filesink: Use _wfopen on win32 to open files with non-ascii filenames correctly.
* queue2: add option to remove the temp-file (enabled by default)
* it is now allowed to use gst_caps_set_simple() on non-simple caps
* queue2: move from gst-plugins-base into the coreelements plugin in core
(this means you may need to remove libgstqueue2.so manually if you
installed from source and don't do make uninstall before upgrading, or
combine an older -base with a newer core)
* multiqueue: add support for buffering mode where we post BUFFERING
messages based on the level of the queues
* typefind: speed up typefinding a lot by first trying the typefinder for
the file's extension
* buffer: remove private/internal subbuffer subclass and keep track of
the parent buffer directly in the GstBuffer structure (this removes
quite a bit of special-casing and will allow for future improvements/
extensions that are harder to do if there's a separate subbuffer class.
* collectpads: add ability to install clipping functions
* new tags for TV/Radio shows/episodes, lyrics, composer sortname and
grouping
* miniobject: avoid race when recycling buffers
* basesrc: fix race in PLAYING->PAUSED->PLAYING
Bugs fixed in this release
* 476514 : [multiqueue] Doesn't forward EOS event in all cases
* 590941 : API: add gst_pad_get_caps() variant that avoids unneeded caps copies
* 595602 : g_child_proxy_get_valist doesn't initialize GValue correctly
* 535069 : basesrc no longer support non-flushing seeks on itself
* 560442 : GNOME Goal: Remove deprecated GLib symbols
* 595511 : Annotations for gst_element_query_{position,duration}
* 595886 : gst_pad_fixate_caps() does not return fixed caps in case of multiple structures
* 595964 : [multiqueue] can hang pipeline during startup
* 596366 : proxy_getcaps reverses direction of getcaps
* 597407 : GstPipeline calculates base_time incorrectly when a new clock appears during PAUSED state
* 597550 : basesrc: sometimes no buffers produced after PLAYING - PAUSED - PLAYING
* 597690 : Improve caps setters API
* 598297 : make check fails when any --disable option which changes the API has been used
* 598526 : bytewriter: fails to compile with gcc 4.2.4 on Ubuntu Hardy 64 bits
* 598700 : scripts: Parallelise git-update.sh build script
* 598895 : [GstRegistry] Use hash table for feature lookups
* 598896 : [GstRegistry] Cache lists of ElementFactory and TypeFindFactory
* 599147 : typefind : Avoid having to re-sort the typefind factory list
* 599759 : [qtdemux] Add support for more tags
* 600313 : Visualisations stop updating after seek
* 600922 : gst-launch: wake up less often to check for Ctrl-C
* 601587 : MiniObject race condition
* 601668 : [gstregistry] gstregistry.c uses a variable from gst.c
* 601669 : [tests] tests/examples/manual depends on libgstcheck
* 602093 : libgstcheck fails to export some symbols when built under et_EE locale
* 602275 : [API] Add new sink-message event
* 602419 : [basesink] Regression with position reporting
* 603059 : Totem crashes when DVD is encrypted but libdvdcss isn't available
* 603787 : [registry] Doesn't use GMappedFile
* 604091 : tee: cleanup requestpads in dispose
* 604093 : gst-inspect/launch: move gst_tools_print_version to avoid glib warning
* 605251 : tee causes segfault if there is no source pad
* 605930 : [shave] common/shave not existing yet when configure checks need it
* 606435 : gsttee not threadsafe
* 607283 : segfaults and/or miniobject warnings with GLib > = 2.23.2
* 607317 : [PATCH] fix unaligned detection for x86-64 when cross compiling
* 607431 : update common modules before freeze
* 607481 : Should define G_THREADS_MANDATORY everywhere
* 607739 : [queue2] Temporary file is removed although code claims the opposite
* 607842 : Audio comes out with short breaks after resume pipeline (paused- > playing)
* 608136 : multiqueue handles UNEXPECTED flowreturn wrongly
* 608398 : Initializing the glib thread system seems not to work
* 608442 : [filesrc] typo in warning message
* 608726 : bytewriter: mistake in .h/.c function naming
* 609166 : Buffer list docs ascii art
* 590669 : [API] need GstByteWriter or GstChunkWriter
* 601698 : Rename new plugin-scanner helper executable before release
* 604565 : [gstcheck] Update check to 0.9.8
* 596877 : New internal libcheck breaks the Solaris build
API changed in this release
- API additions:
* GST_DEBUG_REGISTER_FUNCPTR()
* gst_base_src_new_seamless_segment()
* gst_event_new_sink_message()
* gst_event_parse_sink_message()
* gst_util_fraction_add()
* gst_util_fraction_multiply()
* gst_util_greatest_common_divisor()
* gst_util_double_to_fraction()
* gst_util_fraction_to_double()
* gst_registry_get_feature_list_cookie()
* gst_default_registry_get_feature_list_cookie()
* gst_pad_get_caps_reffed()
* gst_pad_peer_get_caps_reffed()
* gst_structure_id_has_field()
* gst_structure_id_has_field_typed()
* gst_plugin_feature_list_copy()
* gst_caps_set_value()
* gst_byte_writer_ensure_free_space()
* gst_byte_writer_free()
* gst_byte_writer_free_and_get_buffer()
* gst_byte_writer_free_and_get_data()
* gst_byte_writer_get_remaining()
* gst_byte_writer_init()
* gst_byte_writer_init_with_buffer()
* gst_byte_writer_init_with_data()
* gst_byte_writer_init_with_size()
* gst_byte_writer_new()
* gst_byte_writer_new_with_buffer()
* gst_byte_writer_new_with_data()
* gst_byte_writer_new_with_size()
* gst_byte_writer_put_data()
* gst_byte_writer_put_float32_be()
* gst_byte_writer_put_float32_le()
* gst_byte_writer_put_float64_be()
* gst_byte_writer_put_float64_le()
* gst_byte_writer_put_int16_be()
* gst_byte_writer_put_int16_le()
* gst_byte_writer_put_int24_be()
* gst_byte_writer_put_int24_le()
* gst_byte_writer_put_int32_be()
* gst_byte_writer_put_int32_le()
* gst_byte_writer_put_int64_be()
* gst_byte_writer_put_int64_le()
* gst_byte_writer_put_int8()
* gst_byte_writer_put_string_utf16()
* gst_byte_writer_put_string_utf32()
* gst_byte_writer_put_string_utf8()
* gst_byte_writer_put_uint16_be()
* gst_byte_writer_put_uint16_le()
* gst_byte_writer_put_uint24_be()
* gst_byte_writer_put_uint24_le()
* gst_byte_writer_put_uint32_be()
* gst_byte_writer_put_uint32_le()
* gst_byte_writer_put_uint64_be()
* gst_byte_writer_put_uint64_le()
* gst_byte_writer_put_uint8()
* gst_byte_writer_reset()
* gst_byte_writer_reset_and_get_buffer()
* gst_byte_writer_reset_and_get_data()
* gst_bit_reader_get_size()
* gst_byte_reader_get_size()
* gst_data_queue_new_full()
* gst_collect_pads_set_clip_function()
* gst_type_find_helper_get_range_ext()
- API deprecations:
* gst_registry_xml_read_cache()
* gst_registry_xml_write_cache()
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
* Andoni Morales Alastruey
* Bastien Nocera
* Benjamin Otte
* Christian Schaller
* David Schleef
* Edward Hervey
* Frederic Crozat
* Havard Graff
* Håvard Graff
* Jan Schmidt
* Javier Jardón
* Johan Bilien
* LRN
* Mark Nauwelaerts
* Michael Smith
* Ole André Vadla Ravnås
* Olivier Crête
* Peter Kjellerstedt
* Peter van Hardenberg
* Priit Laes
* Rob Clark
* Robert Swain
* Sebastian Dröge
* Stefan Kost
* Thiago Santos
* Thiago Sousa Santos
* Thijs Vermeir
* Tim-Philipp Müller
* Tommi Myöhänen
* Wim Taymans
* Руслан Ижбулатов