2004-03-09 17:50:43 +00:00
|
|
|
|
|
2012-02-23 12:09:31 +00:00
|
|
|
|
Release notes for GStreamer 0.10.36 "Harder"
|
2004-03-09 17:50:43 +00:00
|
|
|
|
|
|
|
|
|
|
2005-12-05 18:05:01 +00:00
|
|
|
|
|
|
|
|
|
The GStreamer team is proud to announce a new release
|
|
|
|
|
in the 0.10.x stable series of the
|
2005-06-18 22:33:14 +00:00
|
|
|
|
core of the GStreamer streaming media framework.
|
2004-03-09 17:50:43 +00:00
|
|
|
|
|
|
|
|
|
|
2005-12-05 18:05:01 +00:00
|
|
|
|
The 0.10.x series is a stable series targeted at end users.
|
2011-05-10 07:55:10 +00:00
|
|
|
|
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.
|
2005-06-18 22:33:14 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This module, gstreamer, only contains core functionality.
|
|
|
|
|
For actual media playback, you will need other modules.
|
|
|
|
|
|
2005-09-06 14:02:17 +00:00
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
2004-03-09 17:50:43 +00:00
|
|
|
|
|
|
|
|
|
|
2006-09-14 20:08:14 +00:00
|
|
|
|
|
2004-03-09 17:50:43 +00:00
|
|
|
|
Features of this release
|
|
|
|
|
|
2012-02-23 12:09:31 +00:00
|
|
|
|
* bin: Don't interpret pipelines without sink elements as always being in EOS state
|
|
|
|
|
* bin: Only post EOS messages after reaching the PLAYING state
|
|
|
|
|
* buffer: add set/get_qdata() to attach arbitrary metadata to buffers
|
|
|
|
|
* caps, structure, gstvalue: some optimisations and improvements
|
|
|
|
|
* miniobject: add weak referencing functionality
|
|
|
|
|
* gstobject: make gst_object_replace() atomic
|
|
|
|
|
* pad: Only do the subset check in gst_pad_accept_caps() if the pad claims to accept the caps
|
|
|
|
|
* pad: make public some ghostpad/proxypad API
|
|
|
|
|
* preset: allow applications to specify an extra preset directory with application-specific presets
|
|
|
|
|
* collectpads: add GstCollectPads2 API
|
|
|
|
|
* basebarse: new detect vfunc so subclassed can do some format detection first
|
|
|
|
|
* baseparse: new get_sink_caps vfunc so downstream caps restrictions can be propagated upstream
|
|
|
|
|
* baseparse: answer position query in stream time and try upstream first
|
|
|
|
|
* baseparse: send duration message when updating internal duration
|
|
|
|
|
* baseparse: make baseparse-based elements is reusable
|
|
|
|
|
* baseparse: provide latency query support
|
|
|
|
|
* basesink: don't compensate for render-delay twice
|
|
|
|
|
* basesink: try harder to arrange increasing position reporting
|
|
|
|
|
* basesrc: allow for the size to change dynamically
|
|
|
|
|
* basetransform: add query vfunc
|
|
|
|
|
* basetransform: caps negotiation improvements
|
|
|
|
|
* basetransform: delay serialized events when src caps are not set yet
|
|
|
|
|
* filesrc: do not mistake short reads for EOS
|
|
|
|
|
* filesrc/fdsrc: indicate dynamic size handling to basesrc
|
|
|
|
|
* inputselector: add sync mode that syncs inactive pads to the running time of the active pad
|
|
|
|
|
* queue2: add bufferlist support
|
|
|
|
|
* queue2: adjust input data rate estimation
|
|
|
|
|
* multiqueue: add mode to synchronize deactivated/not-linked streams by the running time
|
|
|
|
|
* multiqueue: check filled state of queues even if another one is empty
|
|
|
|
|
* outputselector: don't send last segment/buffer when no segment was configured yet
|
|
|
|
|
* tools: teach gst-launch about missing-plugin messages
|
|
|
|
|
* tools: make unversioned wrapper look for -0.10 tools only
|
2010-04-27 22:42:12 +00:00
|
|
|
|
|
|
|
|
|
Bugs fixed in this release
|
|
|
|
|
|
2012-02-23 12:09:31 +00:00
|
|
|
|
* 647940 : [basesrc] - fails to send updated segment event when duration changes
|
|
|
|
|
* 662777 : Caps negotiation got a lot slow since the last release
|
|
|
|
|
* 647493 : Regression: gstbus: Not getting all messages posted on the bus
|
|
|
|
|
* 415754 : [API] GstCollectPads2; muxing sparse/subtitle streams
|
|
|
|
|
* 459466 : double memory usage for pluginfeature names
|
|
|
|
|
* 546570 : gst_caps_append/merge should not require caps2 to be writable
|
|
|
|
|
* 609473 : [miniobject] Add support for weak references
|
|
|
|
|
* 619844 : [basetransform] transform_caps can ignore pass-through
|
|
|
|
|
* 628021 : [baseaudiosink] position reporting not increasing
|
|
|
|
|
* 629300 : gstructure: New API for comparing structures
|
|
|
|
|
* 643269 : dot file flow direction
|
|
|
|
|
* 645017 : [inputselector] Add mode to drop buffers only after the active sinkpad's running time is after the current buffer
|
|
|
|
|
* 645107 : [multiqueue] Implement throttling based on stream's running time
|
|
|
|
|
* 647756 : [bin] Posting EOS message although not reached PLAYING yet
|
|
|
|
|
* 648025 : parse-launch: don't unescape inside quotes
|
|
|
|
|
* 650002 : 'No space left on device' message logged continuously, filling /home slice
|
|
|
|
|
* 650973 : check: add fail_unless_equals_int64
|
|
|
|
|
* 652037 : basesrc: less persistent caching of size
|
|
|
|
|
* 652577 : basesink: s/if/is/
|
|
|
|
|
* 653137 : Warnings in Gstreamer (core) with Clang compiler
|
|
|
|
|
* 653172 : Compilation fails when PR_SET_NAME is not defined in prctl.h
|
|
|
|
|
* 655155 : Build failure for gstcontroller.c -- (-Wall) assignment discards qualifiers from pointer target type
|
|
|
|
|
* 655204 : bad interaction between queue and adder
|
|
|
|
|
* 655381 : GstBitReader and GstByteReader functions missing out argument annotations
|
|
|
|
|
* 656193 : don't revalidate utf8 elementfactory metadata all the time
|
|
|
|
|
* 656265 : Fix compiler warnings reported by ICC
|
|
|
|
|
* 656557 : Add Farsight and Nice support to gst-uninstalled
|
|
|
|
|
* 657316 : capsfilter is racy when changing the caps during initial pipeline startup
|
|
|
|
|
* 657318 : basetranform dosn't allow query handlers to be overridden
|
|
|
|
|
* 657421 : Fix compiler warnings reported by ICC
|
|
|
|
|
* 658076 : setcaps function for ghost pads never called
|
|
|
|
|
* 658449 : Fix typos in docs and code comments
|
|
|
|
|
* 658517 : [ghostpad] Peer query does not work with empty GstPlaySinkVideoConvert
|
|
|
|
|
* 658518 : basesink: Backport query override support
|
|
|
|
|
* 658541 : [API change] caps negotiation failures
|
|
|
|
|
* 658918 : [pad] set caps on pad before checking for peer
|
|
|
|
|
* 659139 : gstpad: make some debug traces more useful
|
|
|
|
|
* 659571 : basetransform: delay events we cannot send right away
|
|
|
|
|
* 659606 : Remaining non-subset caps warnings
|
|
|
|
|
* 660083 : Fix mingw compiler warnings
|
|
|
|
|
* 660144 : [GstBaseParse] make start/stop methods optional
|
|
|
|
|
* 660165 : basetransform: send delayed events earlier
|
|
|
|
|
* 660760 : .prs presets needs to have a per-application option
|
|
|
|
|
* 660778 : multiqueue: check filled state of queues even if another one is empty
|
|
|
|
|
* 660955 : gst_type_register_static_full: guard against large instance sizes that don't fit into a guint16
|
|
|
|
|
* 662091 : plugin loader: spawn new plugin loader helper after loading N plugins
|
|
|
|
|
* 662199 : [capsfilter] behavior has changed
|
|
|
|
|
* 662291 : basetransform: cache transformed caps where appropriate
|
|
|
|
|
* 662664 : API: add gst_element_class_add_static_pad_template() and fix template pad ref leaks
|
|
|
|
|
* 663333 : basetransfrom cache should be invalidated whenever there is any change in the peer caps
|
|
|
|
|
* 663643 : gstvalue: consider lists and ranges equal if they hold the same set
|
|
|
|
|
* 664221 : [baseparse] ::sink_get_caps() vfunc breaks API/ABI
|
|
|
|
|
* 664720 : API: add gst_buffer_{set,get}_qdata()
|
|
|
|
|
* 665921 : filesrc: Incorrect EOF detection in create_read
|
|
|
|
|
* 666174 : [basetransform] causes segfaults because gst_pad_alloc_buffer_and_set_caps return a buffer with a size of 0
|
|
|
|
|
* 667284 : registry: add missing #ifndef guard
|
|
|
|
|
* 667286 : gstpoll: Include correct poll.h based on autoconf test
|
|
|
|
|
* 667288 : plugins: Explicitly cast initialization values to the correct type.
|
|
|
|
|
* 667290 : tools: Include locale.h before any i18n headers.
|
|
|
|
|
* 667298 : basesink: don't compensate for render-delay twice
|
|
|
|
|
* 667444 : baseparse: clear adapter in reset so no old data is read when re-using elements
|
|
|
|
|
* 668289 : regression: playbin2: repeat mode only repeats twice in totem
|
|
|
|
|
* 668764 : collectpads2: move private stuff into private struct
|
|
|
|
|
* 669036 : Missing include in gstpreset.h causes build error
|
|
|
|
|
* 669502 : [baseparse] duration msg spam when upstream knows avg bitrate
|
|
|
|
|
|
|
|
|
|
API changed in this release
|
|
|
|
|
|
|
|
|
|
- API additions:
|
|
|
|
|
|
|
|
|
|
* gst_base_parse_set_latency()
|
|
|
|
|
* GstBaseParse::detect
|
|
|
|
|
* GstBaseParse::get_sink_caps
|
|
|
|
|
* gst_base_src_set_dynamic_size()
|
|
|
|
|
* GstBaseTransform::query
|
|
|
|
|
* gst_collect_pads2_add_pad()
|
|
|
|
|
* gst_collect_pads2_add_pad_full()
|
|
|
|
|
* gst_collect_pads2_available()
|
|
|
|
|
* gst_collect_pads2()_collect
|
|
|
|
|
* gst_collect_pads2_collect_range()
|
|
|
|
|
* gst_collect_pads2_flush()
|
|
|
|
|
* gst_collect_pads2_get_type()
|
|
|
|
|
* gst_collect_pads2_is_active()
|
|
|
|
|
* gst_collect_pads2_new()
|
|
|
|
|
* gst_collect_pads2_peek()
|
|
|
|
|
* gst_collect_pads2_pop()
|
|
|
|
|
* gst_collect_pads2_read()
|
|
|
|
|
* gst_collect_pads2_read_buffer()
|
|
|
|
|
* gst_collect_pads2_remove_pad()
|
|
|
|
|
* gst_collect_pads2_set_buffer_function()
|
|
|
|
|
* gst_collect_pads2_set_clip_function()
|
|
|
|
|
* gst_collect_pads2_set_compare_function()
|
|
|
|
|
* gst_collect_pads2_set_event_function()
|
|
|
|
|
* gst_collect_pads2_set_flushing()
|
|
|
|
|
* gst_collect_pads2_set_function()
|
|
|
|
|
* gst_collect_pads2_set_waiting()
|
|
|
|
|
* gst_collect_pads2_start()
|
|
|
|
|
* gst_collect_pads2_stop()
|
|
|
|
|
* gst_collect_pads2_take_buffer()
|
|
|
|
|
* gst_buffer_get_qdata()
|
|
|
|
|
* gst_buffer_set_qdata()
|
|
|
|
|
* gst_caps_is_strictly_equal()
|
|
|
|
|
* gst_caps_is_subset_structure
|
|
|
|
|
* gst_element_class_add_static_pad_template()
|
|
|
|
|
* GstElement::state_changed
|
|
|
|
|
* gst_ghost_pad_activate_pull_default()
|
|
|
|
|
* gst_ghost_pad_activate_push_default()
|
|
|
|
|
* gst_ghost_pad_internal_activate_pull_default()
|
|
|
|
|
* gst_ghost_pad_internal_activate_push_default()
|
|
|
|
|
* gst_ghost_pad_link_default()
|
|
|
|
|
* gst_ghost_pad_setcaps_default()
|
|
|
|
|
* gst_ghost_pad_unlink_default()
|
|
|
|
|
* gst_mini_object_weak_ref()
|
|
|
|
|
* gst_mini_object_weak_unref()
|
|
|
|
|
* gst_preset_get_app_dir()
|
|
|
|
|
* gst_preset_set_app_dir()
|
|
|
|
|
* gst_proxy_pad_acceptcaps_default()
|
|
|
|
|
* gst_proxy_pad_bufferalloc_default()
|
|
|
|
|
* gst_proxy_pad_chain_default()
|
|
|
|
|
* gst_proxy_pad_chain_list_default()
|
|
|
|
|
* gst_proxy_pad_checkgetrange_default()
|
|
|
|
|
* gst_proxy_pad_event_default()
|
|
|
|
|
* gst_proxy_pad_fixatecaps_default()
|
|
|
|
|
* gst_proxy_pad_get_internal()
|
|
|
|
|
* gst_proxy_pad_getcaps_default()
|
|
|
|
|
* gst_proxy_pad_getrange_default()
|
|
|
|
|
* gst_proxy_pad_iterate_internal_links_default()
|
|
|
|
|
* gst_proxy_pad_query_default()
|
|
|
|
|
* gst_proxy_pad_query_type_default()
|
|
|
|
|
* gst_proxy_pad_setcaps_default()
|
|
|
|
|
* gst_proxy_pad_unlink_default()
|
|
|
|
|
* gst_structure_can_intersect()
|
|
|
|
|
* gst_structure_intersect()
|
|
|
|
|
* gst_structure_is_equal()
|
|
|
|
|
* gst_structure_is_subset()
|
|
|
|
|
* gst_tag_list_is_equal()
|
|
|
|
|
* gst_tag_list_new_from_string()
|
|
|
|
|
* gst_tag_list_to_string()
|
|
|
|
|
* fail_unless_equals_int64()
|
|
|
|
|
- API deprecations:
|
|
|
|
|
|
|
|
|
|
* gst_plugin_feature_type_name_filter()
|
|
|
|
|
* GstTypeNameData
|
|
|
|
|
* gst_filter_run()
|
|
|
|
|
* GstFilterFunc
|
2004-03-09 17:50:43 +00:00
|
|
|
|
|
|
|
|
|
Download
|
|
|
|
|
|
2004-06-03 17:08:07 +00:00
|
|
|
|
You can find source releases of gstreamer in the download directory:
|
2004-03-09 17:50:43 +00:00
|
|
|
|
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
|
|
|
|
|
|
2009-05-10 21:41:04 +00:00
|
|
|
|
GStreamer is stored in Git, hosted at git.freedesktop.org, and can be cloned from there.
|
2004-03-09 17:50:43 +00:00
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
2011-05-10 07:55:10 +00:00
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
2004-03-09 17:50:43 +00:00
|
|
|
|
Contributors to this release
|
|
|
|
|
|
2012-02-23 12:09:31 +00:00
|
|
|
|
* Antoine Tremblay
|
2011-06-15 18:15:24 +00:00
|
|
|
|
* David Schleef
|
2012-02-23 12:09:31 +00:00
|
|
|
|
* Edward Hervey
|
|
|
|
|
* Emmanuel Pacaud
|
|
|
|
|
* Evan Nemerson
|
|
|
|
|
* Fabrizio (Misto) Milo
|
|
|
|
|
* Guillaume Desmottes
|
|
|
|
|
* Havard Graff
|
|
|
|
|
* Idar Tollefsen
|
|
|
|
|
* Jan Schmidt
|
|
|
|
|
* Josep Torra
|
|
|
|
|
* João Paulo Pizani Flor
|
|
|
|
|
* Mark Nauwelaerts
|
|
|
|
|
* Nicolas Dufresne
|
|
|
|
|
* Peteris Krisjanis
|
|
|
|
|
* Philip Jägenstedt
|
|
|
|
|
* Piotr Fusik
|
|
|
|
|
* Raimo Järvi
|
|
|
|
|
* Raluca Elena Podiuc
|
|
|
|
|
* René Stadler
|
|
|
|
|
* Reynaldo H. Verdejo Pinochet
|
|
|
|
|
* Robert Swain
|
|
|
|
|
* Sebastian Dröge
|
|
|
|
|
* Shaun Hoopes
|
|
|
|
|
* Sjoerd Simons
|
|
|
|
|
* Stas Sergeev
|
|
|
|
|
* Stefan Kost
|
|
|
|
|
* Stefan Sauer
|
|
|
|
|
* Thiago Santos
|
|
|
|
|
* Tim-Philipp Müller
|
|
|
|
|
* Vincent Penquerc'h
|
|
|
|
|
* Wim Taymans
|
2011-06-15 18:15:24 +00:00
|
|
|
|
|