Release 0.10.24
[platform/upstream/gstreamer.git] / RELEASE
1
2 Release notes for GStreamer 0.10.24 "It matters"
3         
4
5
6 The GStreamer team is proud to announce a new release
7 in the 0.10.x stable series of the
8 core of the GStreamer streaming media framework.
9
10
11 The 0.10.x series is a stable series targeted at end users.
12 It is not API or ABI compatible with the stable 0.8.x series.
13 It is, however, parallel installable with the 0.8.x series.
14
15
16 The 0.10.x series has been reworked for threadsafety.  It also features
17 various feature additions and enhancements.
18
19
20 This module, gstreamer, only contains core functionality.
21 For actual media playback, you will need other modules.
22
23 gst-plugins-base
24 contains a basic set of well-supported plug-ins
25 gst-plugins-good
26 contains a set of well-supported plug-ins under our preferred license
27 gst-plugins-ugly
28 contains a set of well-supported plug-ins, but might pose problems for
29     distributors
30 gst-plugins-bad
31 contains a set of less supported plug-ins that haven't passed the
32     rigorous quality testing we expect
33
34
35
36   
37
38 Features of this release
39     
40       * Fully support nested structures in caps
41       * Support frame-by-frame stepping in sinks
42       * Add buffer-lists to pass around groups of buffers
43       * Use TaskPools for managing worker threads
44       * New stream-status API for finer thread control
45       * Code optimisations
46       * Many other bug-fixes and enhancements
47
48 Bugs fixed in this release
49      
50       * 580579 : crash in Volume Control: aucunes idées désolé.
51       * 527488 : [GstXML] can't load elements with request pads from XML
52       * 570233 : allow plugins caching data in the registry
53       * 584389 : don't recreate plugin feature and element factories on fi...
54       * 534208 : [API] add gst_structure_get()
55       * 545787 : [API] add gst_plugin_register_static_full() for bindings
56       * 554460 : thumbnailer crash in gst_fake_sink_event() on FLUSH_START...
57       * 559643 : Don't allow empty or NULL strings in taglists
58       * 560345 : gst_tag_list_get_string() may return NULL or empty string
59       * 560442 : GNOME Goal: Remove deprecated GLib symbols
60       * 572285 : Buffer Lists
61       * 577926 : Remove old xml registry
62       * 578908 : [fdsink] implement seeking on seekable fds
63       * 580177 : glibc 2.10 deprecates register_printf_function
64       * 580716 : race condition in gst_element_lost_state
65       * 581198 : [tags] Add gst_tag_setter_add_tag_value() and gst_tag_lis...
66       * 581281 : [GstURIHandler] Doesn't use get_type_full() at all
67       * 582010 : audiotestsrc is-live=1 ! pulsesink unreliable
68       * 582564 : [controller] Use ordered GSequence instead of GList in th...
69       * 582588 : [API] Add a way to get the pad corresponding to a taglist
70       * 582878 : [GstClock] ABI breakage in GIT on x86
71       * 583187 : [API] add gst_adapter_masked_scan_uint32() and gst_adapte...
72       * 583419 : Bad translatable string in gst-launch.c
73       * 583456 : framestep functionality
74       * 583554 : Slow down or lock if date time is changed to the past
75       * 584835 : MSVC compiler fails with 'static inline' function
76       * 584838 : basesrc: confusing QUERY_SEEKING handling
77       * 585039 : rtpool-test can't find pthreads
78       * 585075 : Compilation with MSVC fails for files including config.h ...
79       * 585137 : gst_xml_write_file() fails serialising GstStructure property
80       * 585592 : [API] add gst_byte_reader_masked_scan_uint32()
81       * 585733 : Wrong #include order in gstsegment.c
82       * 585748 : [API] add gst_tag_list_new_full() to create taglist with ...
83       * 586566 : Add GAP Flag support to gstcapsfilter
84       * 586568 : [bytereader] add misc. string functions and gst_byte_read...
85       * 587973 : use G_DIR_SEPARATOR_S instead of " /' " 
86       * 587976 : Fix for gst-inspect and gst-launch when option parsing is...
87       * 588744 : [check] Stream consistency checker utility
88       * 588745 : [basesrc] Serialize tags in the dataflow
89       * 589127 : gsttask leaks the pool
90       * 590056 : [collectpads] race resulting in double flush-stop being o...
91       * 590622 : [bytereader] buffer size checks subject to wrap-around ov...
92       * 579177 : GstInfo: maintain ABI compatibility
93       * 581321 : typefind element leaks force-caps property
94       * 584118 : [gstadapter][doc] Improve documentation of gst_adapter_ma...
95       * 585433 : [queue] Can lock down if min-threshold conflicts with max...
96       * 585569 : rtsp/rtp streaming fails when skipping explicit PAUSED st...
97       * 585834 : Support for GstBufferList in ghostpads
98       * 585960 : Support for GstBufferList in gstbasesink
99       * 587052 : [filesink.c] Support for files > 4GB on windows makes file...
100
101 API changed in this release
102      
103 - API additions:
104     
105 * GST_DEBUG_CATEGORY_GET() macro
106 * gst_byte_reader_dup_data
107 * gst_byte_reader_dup_string
108 * gst_byte_reader_dup_string_utf8
109 * gst_byte_reader_dup_string_utf16
110 * gst_byte_reader_dup_string_utf32
111 * gst_byte_reader_skip_string
112 * gst_byte_reader_skip_string_utf8
113 * gst_byte_reader_skip_string_utf16
114 * gst_byte_reader_skip_string_utf32
115 * gst_byte_reader_peek_string
116 * gst_byte_reader_peek_string_utf8
117 * gst_byte_reader_get_string
118 * gst_byte_reader_get_string_utf8
119 * add gst_tag_list_new_full()
120 * add gst_tag_list_new_full_valist()
121 * add gst_byte_reader_masked_scan_uint32()
122 * add gst_plugin_get_cache_data, gst_plugin_set_cache_data
123 * gst_structure_get()
124 * gst_structure_id_get()
125 * gst_structure_get_valist()
126 * gst_structure_id_get_valist()
127 * GstSegment::gst_segment_set_running_time()
128 * Add GST_MESSAGE_SRC_NAME() macro
129 * GstSegment::gst_segment_to_position()
130 * GstEvent::gst_event_new_step()
131 * GstEvent::gst_event_parse_step()
132 * GstMessage::gst_message_new_step_done()
133 * GstMessage::gst_message_parse_step_done()
134 * gst_structure_id_new()
135 * Add gst_message_{new,parse}_tag_full() to get/set the source pad
136 * GstAdapter::gst_adapter_masked_scan_uint32()
137 * GstElement::gst_element_lost_state_full()
138 * GstAdapter::gst_adapter_prev_timestamp()
139 * gst_plugin_register_static_full()
140 * gst_tag_list_add_value()
141 * gst_tag_setter_add_tag_value()
142 * add GST_TAG_CONTAINER_FORMAT tag
143 * GstTask::gst_task_set_state()
144 * GstObject::gst_object_ref_sink()
145
146 Download
147
148 You can find source releases of gstreamer in the download directory:
149 http://gstreamer.freedesktop.org/src/gstreamer/
150
151 GStreamer Homepage
152
153 More details can be found on the project's website:
154 http://gstreamer.freedesktop.org/
155
156 Support and Bugs
157
158 We use GNOME's bugzilla for bug reports and feature requests:
159 http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
160
161 Developers
162
163 GStreamer is stored in Git, hosted at git.freedesktop.org, and can be cloned from there.
164 Interested developers of the core library, plug-ins, and applications should
165 subscribe to the gstreamer-devel list. If there is sufficient interest we
166 will create more lists as necessary.
167
168         
169 Applications
170
171 Applications ported to GStreamer 0.10 include Totem, RhythmBox, Sound-Juicer,
172 Gnome Media, Flumotion, Amarok, Jamboree, Pitivi, Istanbul, AnnoAmp, Elisa, and others.
173 Let us know if you want to be added to this list.
174
175   
176 Contributors to this release
177     
178       * Andoni Morales
179       * Arnout Vandecappelle
180       * Benjamin Gaignard
181       * Branko Subasic
182       * Chad Hanna
183       * Christopher Halse Rogers
184       * David Schleef
185       * Edward Hervey
186       * Hannes Bistry
187       * Jan Schmidt
188       * Jonas Holmberg
189       * Josep Torra
190       * José Alburquerque
191       * Marc-Andre Lureau
192       * Mark Nauwelaerts
193       * Ognyan Tonchev
194       * Olivier Crête
195       * Philip Jägenstedt
196       * René Stadler
197       * Robin Stocker
198       * Sebastian Dröge
199       * Stefan Kost
200       * Thiago Santos
201       * Thomas Vander Stichele
202       * Tim-Philipp Müller
203       * Wim Taymans
204       * Руслан Ижбулатов
205