gst/gstbuffer.c: Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2
3         * gst/gstbuffer.c:
4         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
5
6 2005-05-18  Wim Taymans  <wim@fluendo.com>
7
8         * gst/base/Makefile.am:
9         * gst/base/gstadapter.c: (gst_adapter_base_init),
10         (gst_adapter_class_init), (gst_adapter_init),
11         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
12         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
13         (gst_adapter_flush), (gst_adapter_available),
14         (gst_adapter_available_fast):
15         * gst/base/gstadapter.h:
16         Ported and added adapter to the base classes.
17
18 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
19
20         * gst/gst.c:
21         * gst/gstmessage.c:
22           Make sure the class is reffed/unreffed once before threads can be
23           used.  Fixes #304551.
24
25 2005-05-17  Wim Taymans  <wim@fluendo.com>
26
27         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
28         (gst_basesink_chain_unlocked), (gst_basesink_activate):
29         * gst/gstminiobject.c: (gst_mini_object_get_type),
30         (gst_mini_object_free):
31         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
32         (gst_pad_push), (gst_pad_push_event):
33         * gst/gstqueue.c: (gst_queue_change_state):
34         Don't queue buffers in basesink when we are flushing.
35         Unref buffer when flushing in basesink.
36         Flush queue when going to READY
37         Unref buffer when _push() returns an error.
38         Don't free MiniObject instance when refcount is incremented
39         in _finalize() so that we can recover objects.
40
41 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
42
43         * docs/manual/advanced-schedulers.xml:
44         * docs/manual/appendix-checklist.xml:
45         * docs/pwg/advanced-clock.xml:
46         * docs/pwg/advanced-interfaces.xml:
47         * docs/pwg/advanced-request.xml:
48         * docs/pwg/advanced-types.xml:
49         * docs/pwg/intro-preface.xml:
50         * examples/plugins/example.c: (gst_example_get_type),
51         (gst_example_class_init), (gst_example_chain),
52         (gst_example_set_property), (gst_example_get_property),
53         (gst_example_change_state), (plugin_init):
54         * examples/plugins/example.h:
55           small doc fixes
56
57 2005-05-17  Wim Taymans  <wim@fluendo.com>
58
59         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
60         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
61         * gst/gstqueue.c: (gst_queue_change_state):
62         Clear queue when going to READY.
63         Remove IN_SETCAPS flag too.
64
65 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
66
67         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
68           Remove implicit cast from gboolean to GstElementStateReturn;
69           make sure we still return failure in paused => ready case if
70           the parent class fails to change state and our own stop 
71           vfunc succeeds.
72
73 2005-05-17  Wim Taymans  <wim@fluendo.com>
74
75         * tools/gst-launch.c: (event_loop):
76         Message was unreffed too soon.
77
78 2005-05-16  Andy Wingo  <wingo@pobox.com>
79
80         * gst/gstbin.c (sink_iterator_filter): Err... um...
81
82         * check/gst/gstbin.c (test_ghost_pads): New test for the
83         ghosting-if-elements-not-in-same-bin behavior.
84
85 2005-05-16  David Schleef  <ds@schleef.org>
86
87         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
88         accessing refcount directly.
89
90 2005-05-15  David Schleef  <ds@schleef.org>
91
92         * check/Makefile.am: remove GstData checks
93         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
94         * gst/Makefile.am: add miniobject, remove data
95         * gst/gst.h: add miniobject, remove data
96         * gst/gstdata.c: remove
97         * gst/gstdata.h: remove
98         * gst/gstdata_private.h: remove
99         * gst/gsttypes.h: remove GstEvent and GstMessage
100         * gst/gstelement.c: (gst_element_post_message): fix for API changes
101         * gst/gstmarshal.list: change BOXED -> OBJECT
102
103         Implement GstMiniObject.
104         * gst/gstminiobject.c:
105         * gst/gstminiobject.h:
106
107         Modify to be subclasses of GstMiniObject.
108         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
109         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
110         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
111         (gst_subbuffer_get_type), (gst_subbuffer_init),
112         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
113         (gst_buffer_span):
114         * gst/gstbuffer.h:
115         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
116         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
117         (_gst_event_copy), (gst_event_new):
118         * gst/gstevent.h:
119         * gst/gstmessage.c: (_gst_message_initialize),
120         (gst_message_get_type), (gst_message_class_init),
121         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
122         (gst_message_new), (gst_message_new_error),
123         (gst_message_new_warning), (gst_message_new_tag),
124         (gst_message_new_state_changed), (gst_message_new_application):
125         * gst/gstmessage.h:
126         * gst/gstprobe.c: (gst_probe_perform),
127         (gst_probe_dispatcher_dispatch):
128         * gst/gstprobe.h:
129         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
130         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
131         (_gst_query_copy), (gst_query_new):
132
133         Update elements for GstData -> GstMiniObject changes
134         * gst/gstquery.h:
135         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
136         (gst_queue_chain), (gst_queue_loop):
137         * gst/elements/gstbufferstore.c:
138         (gst_buffer_store_add_buffer_func),
139         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
140         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
141         (gst_fakesink_render):
142         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
143         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
144         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
145         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
146         (gst_filesrc_create_read):
147         * gst/elements/gstidentity.c: (gst_identity_class_init):
148         * gst/elements/gsttypefindelement.c:
149         (gst_type_find_element_src_event), (free_entry_buffers),
150         (gst_type_find_element_handle_event):
151         * libs/gst/dataprotocol/dataprotocol.c:
152         (gst_dp_header_from_buffer):
153         * libs/gst/dataprotocol/dataprotocol.h:
154         * libs/gst/dataprotocol/dp-private.h:
155
156 2005-05-15  David Schleef  <ds@schleef.org>
157
158         * gst/elements/gstelements.c: Don't include headers that were
159         just removed.
160
161 2005-05-15  David Schleef  <ds@schleef.org>
162
163         * gst/elements/Makefile.am: Remove some elements that don't
164         need to be in the core (or even exist at all).
165         * gst/elements/gstaggregator.c:
166         * gst/elements/gstaggregator.h:
167         * gst/elements/gstmd5sink.c:
168         * gst/elements/gstmd5sink.h:
169         * gst/elements/gstmultifilesrc.c:
170         * gst/elements/gstmultifilesrc.h:
171         * gst/elements/gstpipefilter.c:
172         * gst/elements/gstpipefilter.h:
173         * gst/elements/gstshaper.c:
174         * gst/elements/gstshaper.h:
175         * gst/elements/gststatistics.c:
176         * gst/elements/gststatistics.h:
177         * po/POTFILES.in: Remove above files.
178
179 2005-05-14  Andy Wingo  <wingo@pobox.com>
180
181         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
182         so as to get the refs right.
183         (sink_iterator_filter): New function, wraps bin_element_is_sink,
184         unreffing objects that don't pass the filter.
185
186         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
187         gst_element_set_bus.
188         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
189         normal cases, this will destroy the bus.
190
191         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
192         object.
193
194         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
195         has no sinks.
196
197 2005-05-13  Andy Wingo  <wingo@pobox.com>
198
199         * gst/gstutils.c (gst_element_link_pads): Instead of calling
200         gst_pad_link, call pad_link_maybe_ghosting,
201         (pad_link_maybe_ghosting): Links pads, making sure that the
202         elements being linked are in the same bin.
203         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
204         Helpers for pad_link_maybe_ghosting.
205
206 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
207
208         * configure.ac:
209           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
210
211 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
212
213         * docs/design/part-element-source.txt:
214           Mention GstPushSrc
215
216 2005-05-12  Wim Taymans  <wim@fluendo.com>
217
218         * gst/base/gstbasesink.c: (gst_basesink_init),
219         (gst_basesink_activate):
220         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
221         (gst_basesrc_is_seekable):
222         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
223         (bin_element_is_sink), (gst_bin_change_state):
224         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
225         * gst/gstelement.h:
226         Identify sinks by their flag to avoid overly complicated
227         checks (fow now).
228         Do state changes even for elements not reachable from the
229         sinks.
230         BaseSink is a sink now :)
231         Some more debugging info in the basesrc.
232
233
234 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
235
236         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
237           Implement _query on a bin, similar to _send_event.
238
239 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
240
241         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
242           Discont event offset format should be GST_FORMAT_BYTES,
243           not GST_FORMAT_TIME.
244
245 2005-05-12  Wim Taymans  <wim@fluendo.com>
246
247         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
248         Same fix as Ronald's but without the signal. 
249
250 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
251
252         * gst/gstutils.c: (gst_element_query_position):
253           No, an element is not a pad.
254
255 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
256
257         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
258         (gst_bin_get_state):
259           If a child is removed from a bin while we remove the child from
260           the bin and while we're retrieving its state, signal this to the
261           get_state function so we abort the wait (instead of waiting for
262           a timeout) and can immediately re-iterate over all other elements.
263
264 2005-05-12  Wim Taymans  <wim@fluendo.com>
265
266         * gst/base/Makefile.am:
267         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
268         (gst_basesrc_start):
269         * gst/base/gstbasesrc.h:
270         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
271         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
272         (gst_pushsrc_init), (gst_pushsrc_create):
273         * gst/base/gstpushsrc.h:
274         Added is_seekable to BaseSrc
275         Added simple PushSrc.
276
277 2005-05-11  Wim Taymans  <wim@fluendo.com>
278
279         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
280         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
281         (gst_element_link_pads), (gst_element_query_position),
282         (gst_element_query_convert), (intersect_caps_func),
283         (gst_pad_query_position), (gst_pad_query_convert):
284         Fix refcounting in utils function.
285         No point in trying to activate a pad when it's added, it could
286         be added from the state change function and then we deadlock, the
287         element has to decide what to do.
288
289 2005-05-10  Andy Wingo  <wingo@pobox.com>
290
291         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
292         *all* the arguments.
293
294         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
295         stream lock if it's a FLUSH_DONE; normal flushes don't get the
296         lock (according to the docs -- if this is wrong change the docs).
297
298         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
299         flush messages in the NULL state.
300
301         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
302         message immediately and return.
303         (gst_bus_set_flushing): New function. If a bus is flushing, it
304         flushes out any queued messages and immediately unrefs new
305         messages. This is so when an element goes to NULL, all of the
306         unhandled messages coming from it can be freed, and their
307         references to the element dropped. In other words: message source
308         ref considered harmful :P
309
310         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
311         we're finished with it.
312
313         * gst/gstmessage.c (gst_message_new_state_changed): 
314
315 2005-05-10  Wim Taymans  <wim@fluendo.com>
316
317         * gst/gstvalue.c: (gst_value_compare_flags),
318         (gst_value_serialize_flags), (gst_value_deserialize_flags),
319         (_gst_value_initialize):
320         Added flags serialize/deserialize/compare code.
321
322 2005-05-09  Andy Wingo  <wingo@pobox.com>
323
324         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
325         Intersect the peer's caps with our caps.
326
327 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
328
329         * gst/base/gsttypefindhelper.c: (helper_find_peek):
330         * gst/elements/gsttypefindelement.c: (find_peek):
331           Handle negative offsets better. Fixes decodebin.
332
333 2005-05-09  Wim Taymans  <wim@fluendo.com>
334
335         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
336         (gst_base_transform_event):
337         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
338         Implement accept_caps.
339         Fix silly lock/unlock mismatch in base class.
340
341 2005-05-09  Wim Taymans  <wim@fluendo.com>
342
343         * docs/design/draft-push-pull.txt:
344         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
345         * gst/elements/gstfilesink.c: (gst_filesink_init),
346         (gst_filesink_query):
347         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
348         (gst_type_find_handle_src_query), (find_element_get_length):
349         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
350         * gst/gstelement.h:
351         * gst/gstmessage.c:
352         * gst/gstmessage.h:
353         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
354         (gst_real_pad_get_caps_unlocked),
355         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
356         (gst_pad_event_default_dispatch), (gst_pad_event_default),
357         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
358         (gst_real_pad_dispose), (gst_real_pad_finalize),
359         (gst_pad_load_and_link), (gst_pad_save_thyself),
360         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
361         (gst_pad_check_pull_range), (gst_pad_pull_range),
362         (gst_pad_template_get_type), (gst_pad_template_class_init),
363         (gst_pad_template_init), (gst_pad_template_dispose),
364         (name_is_valid), (gst_static_pad_template_get),
365         (gst_pad_template_new), (gst_static_pad_template_get_caps),
366         (gst_pad_template_get_caps), (gst_pad_set_element_private),
367         (gst_pad_get_element_private), (gst_pad_start_task),
368         (gst_pad_pause_task), (gst_pad_stop_task),
369         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
370         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
371         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
372         (gst_ghost_pad_new):
373         * gst/gstpad.h:
374         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
375         (gst_query_new_position), (gst_query_set_position),
376         (gst_query_parse_position), (gst_query_new_convert),
377         (gst_query_set_convert), (gst_query_parse_convert):
378         * gst/gstquery.h:
379         * gst/gstqueryutils.c:
380         * gst/gstqueryutils.h:
381         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
382         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
383         (gst_queue_handle_src_query):
384         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
385         (gst_element_query_position), (gst_element_query_convert),
386         (intersect_caps_func), (gst_pad_query_position),
387         (gst_pad_query_convert):
388         * gst/gstutils.h:
389         * tools/gst-inspect.c: (print_pad_info):
390         * tools/gst-xmlinspect.c: (print_element_info):
391         Remove old query functions. Ported old code.
392         Added position/convert helper functions to gstutils.
393         Reordered gstpad.c code, grouping relevant things.
394         Remove gst_message_new(), always need to speficy a specific
395         message.
396
397
398 2005-05-09  Andy Wingo  <wingo@pobox.com>
399
400         * gst/gstiterator.h: Add some includes.
401
402         * gst/gstqueryutils.h: Include more headers.
403
404         * gst/gstpad.h:
405         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
406         some uses of gst_pad_query.
407
408         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
409         NULL out parameters.
410         (gst_query_new_position): New proc, allocates a new position
411         query.
412
413         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
414         gstqueryutils.c to the build.
415
416         * gst/gststructure.c (gst_structure_set_valist): Implement with
417         the generic G_VALUE_COLLECT.
418         
419 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
420
421         * gst/Makefile.am: (gst_headers):
422         Added gstqueryutils.h to the list of headers to install, that was
423         a 'nachty' move wingo :)
424
425 2005-05-06  Andy Wingo  <wingo@pobox.com>
426
427         * gst/gstquery.h
428         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
429         GstData, init a memchunk.
430         (standard_definitions): Add a few query types, deprecate a few.
431         (gst_query_get_type): New proc.
432         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
433         implementation.
434         (gst_query_new_application, gst_query_get_structure): New public
435         procs.
436
437         * docs/design/draft-query.txt: Removed LINKS from the query types,
438         because all the rest can be dispatched to other pads -- seemed
439         ugly to have a query that couldn't be dispatched. internal_links
440         is fine as a pad method.
441
442         * gst/gstpad.h: Add query2 as a pad method, add the new functions
443         in gstpad.c, but maintain binary compatibility for the moment.
444         Will fix before 0.9 is out.
445
446         * gst/gstqueryutils.c: 
447         * gst/gstqueryutils.h: New files, implement 3 methods for each
448         query type: parse_query, parse_response, and set. Probably need an
449         allocator as well.
450
451         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
452
453         * gst/elements/gstfilesink.c (gst_filesink_query2):
454         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
455         query_types, and formats methods.
456
457         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
458         (gst_pad_set_query2_function): New functions.
459         (gst_real_pad_init): Set query2_default as the default query2
460         function. Basically just dispatches to internally linked pads.
461
462         Needs review!
463         
464         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
465         without using the atomic operations. Only one thread can possibly
466         be accessing the data at this point. Changed so as to avoid
467         gst_atomic operations.
468
469 2005-05-06  Wim Taymans  <wim@fluendo.com>
470
471         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
472         Also set caps if we use the fallback buffer alloc.
473
474 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
475
476         * docs/gst/Makefile.am:
477         * docs/gst/gstreamer-docs.sgml:
478         * docs/gst/gstreamer-sections.txt:
479         * docs/gst/tmpl/gstatomic.sgml:
480         * docs/gst/tmpl/gstmemchunk.sgml:
481         * testsuite/elements/struct_i386.h:
482         * win32/GStreamer.vcproj:
483         * win32/Makefile:
484           Purge GstAtomic stuff from docs and win32 makefiles as well
485
486 2005-05-06  Wim Taymans  <wim@fluendo.com>
487
488         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
489         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
490         * gst/gstpad.c: (gst_pad_peer_get_caps):
491         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
492         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
493         (gst_queue_src_activate), (gst_queue_change_state):
494         * gst/gstqueue.h:
495         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
496         (intersect_caps_func):
497         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
498         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
499         Some fixes for the peer_get_caps() change.
500
501 2005-05-06  Wim Taymans  <wim@fluendo.com>
502
503         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
504         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
505         (gst_basesink_activate):
506         Actually do something with error codes returned from the push
507         functions.
508
509 2005-05-06  Wim Taymans  <wim@fluendo.com>
510
511         * docs/design/part-element-sink.txt:
512         * docs/design/part-element-source.txt:
513         * gst/base/gstbasesink.c: (gst_basesink_class_init),
514         (gst_basesink_event), (gst_basesink_activate):
515         * gst/base/gstbasesink.h:
516         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
517         (gst_basesrc_activate):
518         * gst/base/gstbasesrc.h:
519         * gst/gstelement.c: (gst_element_pads_activate):
520         Some more documentation.
521         Fixed scheduling decision in _pads_activate().
522
523 2005-05-05  Andy Wingo  <wingo@pobox.com>
524
525         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
526         the test suite.
527
528 2005-05-05  Wim Taymans  <wim@fluendo.com>
529
530         * gst/base/Makefile.am:
531         * gst/base/gstbasesink.h:
532         * gst/base/gstbasesrc.c: (gst_basesrc_init),
533         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
534         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
535         (gst_collectpads_class_init), (gst_collectpads_init),
536         (gst_collectpads_finalize), (gst_collectpads_new),
537         (gst_collectpads_set_function), (gst_collectpads_add_pad),
538         (find_pad), (gst_collectpads_remove_pad),
539         (gst_collectpads_is_active), (gst_collectpads_collect),
540         (gst_collectpads_collect_range), (gst_collectpads_start),
541         (gst_collectpads_stop), (gst_collectpads_peek),
542         (gst_collectpads_pop), (gst_collectpads_available),
543         (gst_collectpads_read), (gst_collectpads_flush),
544         (gst_collectpads_chain):
545         * gst/base/gstcollectpads.h:
546         * gst/elements/Makefile.am:
547         * gst/elements/gstelements.c:
548         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
549         (gst_fakesink_get_times), (gst_fakesink_event),
550         (gst_fakesink_preroll), (gst_fakesink_render):
551         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
552         (gst_filesink_init), (gst_filesink_set_location),
553         (gst_filesink_open_file), (gst_filesink_close_file),
554         (gst_filesink_pad_query), (gst_filesink_event),
555         (gst_filesink_render), (gst_filesink_change_state):
556         * gst/elements/gstfilesink.h:
557         Added object to help in making collect pad based elements.
558         Ported filesink.
559         Make event function in sink baseclass return gboolean.
560
561 2005-05-05  Wim Taymans  <wim@fluendo.com>
562
563         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
564         (gst_bin_get_by_name):
565         * gst/gstbuffer.h:
566         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
567         (gst_clock_finalize):
568         * gst/gstdata.c: (gst_data_replace):
569         * gst/gstdata.h:
570         * gst/gstelement.c: (gst_element_request_pad),
571         (gst_element_pads_activate):
572         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
573         (gst_object_unref):
574         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
575         (gst_pad_set_checkgetrange_function),
576         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
577         (gst_pad_check_pull_range), (gst_pad_pull_range),
578         (gst_static_pad_template_get_caps), (gst_pad_start_task),
579         (gst_pad_pause_task), (gst_pad_stop_task):
580         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
581         (gst_element_request_pad), (gst_pad_proxy_getcaps):
582         Fix name lookup in GstBin.
583         Added _data_replace() function and _buffer_replace()
584         Use finalize method to clean up clock.
585         Fix refcounting on request pads.
586         Fix pad schedule mode error.
587         Some more object refcounting debug info,
588
589
590 2005-05-04  Andy Wingo <wingo@pobox.com>
591
592         * check/Makefile.am:
593         * docs/gst/tmpl/gstatomic.sgml:
594         * docs/gst/tmpl/gstplugin.sgml:
595         * gst/base/gstbasesink.c: (gst_basesink_activate):
596         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
597         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
598         (gst_basesrc_query), (gst_basesrc_set_property),
599         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
600         (gst_basesrc_activate):
601         * gst/base/gstbasesrc.h:
602         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
603         (gst_base_transform_src_activate):
604         * gst/elements/gstelements.c:
605         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
606         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
607         * gst/elements/gsttee.c: (gst_tee_sink_activate):
608         * gst/elements/gsttypefindelement.c: (find_element_get_length),
609         (gst_type_find_element_checkgetrange),
610         (gst_type_find_element_activate):
611         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
612         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
613         (gst_caps_load_thyself):
614         * gst/gstelement.c: (gst_element_pads_activate),
615         (gst_element_save_thyself), (gst_element_restore_thyself):
616         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
617         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
618         * gst/gstpad.h:
619         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
620         (gst_xml_parse_file), (gst_xml_parse_memory),
621         (gst_xml_get_element), (gst_xml_make_element):
622         * gst/indexers/gstfileindex.c: (gst_file_index_load),
623         (_file_index_id_save_xml), (gst_file_index_commit):
624         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
625         (read_enum), (load_pad_template), (load_feature), (load_plugin),
626         (load_paths):
627         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
628         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
629         * tools/gst-complete.c: (main):
630         * tools/gst-compprep.c: (main):
631         * tools/gst-inspect.c: (print_element_properties_info):
632         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
633         * tools/gst-xmlinspect.c: (print_element_properties):
634         GCC 4 fixen.
635         
636 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
637
638         * gst/gstplugin.c: (gst_plugin_check_module),
639         (gst_plugin_check_file), (gst_plugin_load_file):
640             apply patch from #172526 to make register work on MacOSX
641
642 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
643
644         * docs/gst/tmpl/gstconfig.sgml:
645         * gst/gstconfig.h.in:
646           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
647         * testsuite/debug/printf_extension.c: (main):
648           Do not use GST_PTR_FORMAT on pointers to types with
649           sizeof < sizeof(gpointer).  Fixes test on 64-bit
650         * testsuite/elements/property.h:
651           use correct printf format
652
653 2005-05-02  Wim Taymans  <wim@fluendo.com>
654
655         * docs/design/draft-push-pull.txt:
656         * docs/design/draft-query.txt:
657         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
658         (gst_basesrc_start):
659         Added draft for new query API.
660         Added draft for better selecting scheduling methods.
661         Make basesrc ignore length if the subclass does not support
662         it.
663
664 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
665
666         * gst/Makefile.am:
667           possible fixes for automake-1.5 - _LIBADD is reserved
668
669 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
670
671         * docs/faq/Makefile.am:
672         * docs/manual/Makefile.am:
673         * docs/manuals.mak:
674         * docs/pwg/Makefile.am:
675         * gst/Makefile.am:
676           possible fixes for automake-1.5
677
678 2005-04-28  Wim Taymans  <wim@fluendo.com>
679
680         * gst/base/gstbasesink.c: (gst_basesink_base_init),
681         (gst_basesink_pad_getcaps), (gst_basesink_init),
682         (gst_basesink_do_sync):
683         * gst/gstclock.c: (gst_clock_entry_new):
684         * gst/gstevent.c: (gst_event_discont_get_value):
685         * gst/gstpipeline.c: (pipeline_bus_handler),
686         (gst_pipeline_change_state):
687         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
688         Better debugging of clocking info.
689         Allow NULL values when getting discont values.
690
691 2005-04-27  Wim Taymans  <wim@fluendo.com>
692
693         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
694         * check/gst/gstpad.c: (gst_pad_suite):
695         Increase timeout for checks.
696
697 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
698
699         * check/Makefile.am:
700           fix the broken rule for cleanup.  Apparently this rule is
701           only needed on FC2, so maybe this warrants further autotool
702           inspection.
703
704 2005-04-26  Wim Taymans  <wim@fluendo.com>
705
706         * gst/gsttrashstack.h:
707         Ooohh. a nasty one! After having a failed pop() from the stack,
708         it's possible that the stack is empty. In that case, don't
709         follow the NULL pointer.
710
711 2005-04-25  Wim Taymans  <wim@fluendo.com>
712
713         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
714         (gst_pad_set_checkgetrange_function),
715         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
716         (gst_pad_check_pull_range), (gst_pad_pull_range),
717         (gst_static_pad_template_get_caps), (gst_pad_start_task),
718         (gst_pad_pause_task), (gst_pad_stop_task):
719         * gst/gstplugin.c: (gst_plugin_load):
720         * gst/gstplugin.h:
721         Remove gst_library_load as it does more harm than good with
722         the new g_module flags.
723         Revert bogus caps template check in pad linking, pad caps
724         are important when linking not the template, which is more
725         general than the current caps.
726
727 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
728
729         * gst/autoplug/.cvsignore:
730         * gst/autoplug/Makefile.am:
731         * gst/autoplug/gstsearchfuncs.c:
732         * gst/autoplug/gstsearchfuncs.h:
733         * gst/autoplug/gstspider.c:
734         * gst/autoplug/gstspider.h:
735         * gst/autoplug/gstspideridentity.c:
736         * gst/autoplug/gstspideridentity.h:
737         * gst/autoplug/spidertest.c:
738           Die, spider, die.
739
740 2005-04-25  Wim Taymans  <wim@fluendo.com>
741
742         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
743         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
744         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
745         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
746         * gst/gstpad.h:
747         Added stubs for unimplemented functions. 
748
749 2005-04-24  David Schleef  <ds@schleef.org>
750
751         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
752         please fix.
753
754 2005-04-24  David Schleef  <ds@schleef.org>
755
756         Convert everything from GstAtomicInt to g_atomic_int_*, and
757         remove gstatomic.
758         * gst/Makefile.am:
759         * gst/gstatomic.c:
760         * gst/gstatomic.h:
761         * gst/gstatomic_impl.h:
762         * gst/gstbuffer.c:
763         * gst/gstcaps.c:
764         * gst/gstcaps.h:
765         * gst/gstclock.c:
766         * gst/gstclock.h:
767         * gst/gstdata.c:
768         * gst/gstdata.h:
769         * gst/gstdata_private.h:
770         * gst/gstevent.c:
771         * gst/gstinfo.c:
772         * gst/gstinfo.h:
773         * gst/gstmessage.c:
774         * gst/gstobject.c:
775         * gst/gstobject.h:
776         * gst/gststructure.c:
777         * gst/gststructure.h:
778         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
779         * gst/gstutils.h:
780
781 2005-04-24  David Schleef  <ds@schleef.org>
782
783         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
784         make the regressions tests work.  Remove some code that is no
785         longer true.
786         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
787         Disable warning for pads without templates.
788
789 2005-04-24  David Schleef  <ds@schleef.org>
790
791         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
792         functions that handle filtered links.
793         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
794         removed functions.
795         * gst/gstutils.c: Fix/remove utility functions that handle
796         filtered caps.
797         * gst/gstutils.h:
798         * gst/gstvalue.c: Add serialization/deserialization of caps
799         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
800         requires fixing so that the filter caps notation creates
801         a capsfilter element and sets the filter_caps property.  I
802         think everyone probably wants to keep the shorthand notation.
803         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
804         * docs/gst/tmpl/gstpad.sgml:
805
806         * gst/elements/gstelements.c: Register capsfilter element.
807         * gst/Makefile.am: fix spacing
808         * docs/random/ds/0.9-suggested-changes: random
809
810 2005-04-23  David Schleef  <ds@schleef.org>
811
812         * gst/elements/Makefile.am:
813         * gst/elements/gstcapsfilter.c: New element that acts like an
814         identity, but filters caps.  Will eventually replace filtered
815         caps in pad linking.
816         * gst/gstutils.c: (gst_element_create_all_pads): New function
817         to create all the ALWAYS pads that are registered with an
818         element class.  This functionality should eventually be
819         merged in with GstElement initialization.
820         * gst/gstutils.h:
821         * testsuite/trigger/README: part of trigger test code that should
822         have been checked in a long time ago.
823
824 2005-04-23  David Schleef  <ds@schleef.org>
825
826         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
827         needed with new versions of libtool (nobody will confirm this),
828         and hard to carry around.
829         * gst/autoplug/Makefile.am:
830         * gst/base/Makefile.am:
831         * gst/elements/Makefile.am:
832         * gst/indexers/Makefile.am:
833         * gst/schedulers/Makefile.am:
834         * libs/gst/bytestream/Makefile.am:
835         * libs/gst/control/Makefile.am:
836         * libs/gst/dataprotocol/Makefile.am:
837         * libs/gst/getbits/Makefile.am:
838
839 2005-04-21  Wim Taymans  <wim@fluendo.com>
840
841         * docs/design/draft-push-pull.txt:
842         * docs/design/part-MT-refcounting.txt:
843         * docs/design/part-TODO.txt:
844         * docs/design/part-caps.txt:
845         * docs/design/part-events.txt:
846         * docs/design/part-gstbus.txt:
847         * docs/design/part-gstpipeline.txt:
848         * docs/design/part-messages.txt:
849         * docs/design/part-push-pull.txt:
850         * docs/design/part-query.txt:
851         Some more docs.
852
853 2005-04-21  Wim Taymans  <wim@fluendo.com>
854
855         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
856         (gst_message_new), (gst_message_new_error),
857         (gst_message_new_warning), (gst_message_new_tag),
858         (gst_message_new_state_changed), (gst_message_new_application),
859         (gst_message_get_structure):
860         * gst/gstmessage.h:
861         * gst/gststructure.c: (gst_structure_set_parent_refcount),
862         (gst_structure_copy_conditional):
863         Use parent refcount in GstMessage to ensure GstStructure
864         consistency.
865         Cleaned up headers a bit.
866         
867
868 2005-04-20  Wim Taymans  <wim@fluendo.com>
869
870         * gst/base/gstbasesink.c: (gst_basesink_base_init),
871         (gst_basesink_pad_getcaps), (gst_basesink_init),
872         (gst_basesink_chain_unlocked):
873         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
874         (gst_type_find_helper):
875         * gst/elements/gsttypefindelement.c:
876         (gst_type_find_element_have_type), (gst_type_find_element_init),
877         (stop_typefinding), (gst_type_find_element_handle_event),
878         (find_suggest), (gst_type_find_element_chain),
879         (gst_type_find_element_checkgetrange),
880         (gst_type_find_element_getrange), (do_typefind),
881         (gst_type_find_element_activate):
882         * gst/gstbuffer.c: (_gst_buffer_sub_free),
883         (gst_buffer_default_free), (gst_buffer_default_copy),
884         (gst_buffer_set_caps):
885         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
886         (gst_caps_replace):
887         * gst/gstmessage.c: (gst_message_new),
888         (gst_message_new_state_changed):
889         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
890         (gst_pad_set_checkgetrange_function),
891         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
892         (gst_pad_set_caps), (gst_pad_check_pull_range),
893         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
894         * gst/gstpad.h:
895         * gst/gsttypefind.c: (gst_type_find_register):
896         Make gst_caps_replace() work like other _replace() functions.
897         Use _caps_replace() where possible.
898         Make sure _message_new() initialises its field.
899         Add gst_static_pad_template_get_caps()
900
901
902 2005-04-18  Andy Wingo  <wingo@pobox.com>
903
904         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
905         on the peer, not the pad. I think that was a typo. Pass an extra
906         arg to see if random access is possible. Activate the pads as
907         PULL_RANGE if possible.
908
909         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
910
911         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
912         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
913         to PROP_....
914
915 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
916
917         * docs/faq/using.xml:
918           Add note on gstreamer-properties (#154996).
919
920 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
921
922         * docs/random/bbb/optional-properties:
923           Some analysis on optional properties.
924
925 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
926
927         * docs/gst/tmpl/gstelementfactory.sgml:
928         * gst/gstelement.h:
929         * gst/gstelementfactory.c: (gst_element_factory_init),
930         (gst_element_factory_cleanup), (gst_element_register),
931         (__gst_element_factory_add_static_pad_template),
932         (gst_element_factory_get_static_pad_templates),
933         (gst_element_factory_can_src_caps),
934         (gst_element_factory_can_sink_caps):
935         * gst/registries/Makefile.am:
936         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
937         (gst_xml_registry_class_init), (gst_xml_registry_init),
938         (gst_xml_registry_new), (gst_xml_registry_set_property),
939         (gst_xml_registry_get_property), (get_time), (make_dir),
940         (gst_xml_registry_get_perms_func),
941         (plugin_times_older_than_recurse), (plugin_times_older_than),
942         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
943         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
944         (add_to_char_array), (read_string), (read_uint), (read_enum),
945         (load_pad_template), (load_feature), (load_plugin), (load_paths),
946         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
947         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
948         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
949         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
950         (gst_xml_registry_rebuild):
951         * gst/registries/gstlibxmlregistry.h:
952         * tools/gst-compprep.c: (main):
953         * tools/gst-inspect.c: (print_pad_templates_info):
954         * tools/gst-xmlinspect.c: (print_element_info):
955           Use libxml2 for registry parsing, use staticpadtemplates in
956           elementfactories. Makes gst_init() +/- 10x faster.
957
958 2005-04-12  Wim Taymans  <wim@fluendo.com>
959
960         * gst/base/Makefile.am:
961         * gst/base/gstbasesink.c: (gst_basesink_base_init),
962         (gst_basesink_pad_getcaps), (gst_basesink_init),
963         (gst_basesink_event), (gst_basesink_change_state):
964         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
965         (gst_basesrc_init), (gst_basesrc_query),
966         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
967         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
968         (gst_basesrc_check_get_range), (gst_basesrc_loop),
969         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
970         (gst_basesrc_stop), (gst_basesrc_activate),
971         (gst_basesrc_change_state):
972         * gst/base/gsttypefindhelper.c: (helper_find_peek),
973         (helper_find_suggest), (gst_type_find_helper):
974         * gst/base/gsttypefindhelper.h:
975         * gst/elements/Makefile.am:
976         * gst/elements/gstelements.c:
977         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
978         (gst_fakesink_get_times), (gst_fakesink_event),
979         (gst_fakesink_preroll), (gst_fakesink_render):
980         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
981         (gst_fakesrc_init), (gst_fakesrc_event_handler),
982         (gst_fakesrc_get_property), (gst_fakesrc_create),
983         (gst_fakesrc_start), (gst_fakesrc_stop):
984         * gst/elements/gstfakesrc.h:
985         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
986         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
987         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
988         (gst_filesrc_create_read), (gst_filesrc_create),
989         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
990         (gst_filesrc_start):
991         * gst/elements/gsttypefindelement.c:
992         (gst_type_find_element_have_type), (gst_type_find_element_init),
993         (start_typefinding), (stop_typefinding), (push_buffer_store),
994         (gst_type_find_element_handle_event),
995         (gst_type_find_element_chain),
996         (gst_type_find_element_checkgetrange),
997         (gst_type_find_element_getrange), (do_typefind),
998         (gst_type_find_element_activate),
999         (gst_type_find_element_change_state):
1000         * gst/elements/gsttypefindelement.h:
1001         * gst/gstpipeline.c: (pipeline_bus_handler):
1002         Added typefind helper.
1003         Small preroll fix in the base sink.
1004         Disable typefind code in basesrc.
1005         Crude port of typefindelement.
1006         Fakesrc cleanups.
1007
1008
1009 2005-04-11  Wim Taymans  <wim@fluendo.com>
1010
1011         * check/gst/gstbus.c: (gstbus_suite):
1012         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
1013         * check/gstcheck.h:
1014         Fix up the timeout so that the test does not fail.
1015
1016 2005-04-06  Wim Taymans  <wim@fluendo.com>
1017
1018         * gst/base/README:
1019         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1020         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
1021         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1022         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1023         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1024         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1025         (gst_basesrc_stop), (gst_basesrc_activate),
1026         (gst_basesrc_change_state), (basesrc_find_peek),
1027         (basesrc_find_suggest), (gst_basesrc_type_find):
1028         * gst/base/gstbasesrc.h:
1029         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1030         (gst_filesrc_class_init), (gst_filesrc_init),
1031         (gst_filesrc_finalize), (gst_filesrc_set_location),
1032         (gst_filesrc_set_property), (gst_filesrc_get_property),
1033         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1034         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1035         (gst_filesrc_create_read), (gst_filesrc_create),
1036         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
1037         * gst/elements/gstfilesrc.h:
1038         * gst/gstelement.c: (gst_element_get_state_func),
1039         (gst_element_lost_state), (gst_element_pads_activate):
1040         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1041         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1042         (gst_pad_pull_range):
1043         * gst/gstpad.h:
1044         More work on the generic source base class, implement seeking,
1045         query.
1046         Make filesrc extend the base source class.
1047         Added gst_pad_set_checkgetrange_function to GstPad.
1048
1049 2005-04-06  Andy Wingo  <wingo@pobox.com>
1050
1051         * pkgconfig/gstreamer-base.pc.in:
1052         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
1053
1054         * pkgconfig/Makefile.am:
1055         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
1056
1057 2005-04-04  Wim Taymans  <wim@fluendo.com>
1058
1059         * gst/base/Makefile.am:
1060         * gst/base/README:
1061         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1062         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1063         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1064         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
1065         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1066         (gst_basesrc_base_init), (gst_basesrc_class_init),
1067         (gst_basesrc_init), (gst_basesrc_get_formats),
1068         (gst_basesrc_get_query_types), (gst_basesrc_query),
1069         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
1070         (gst_basesrc_set_property), (gst_basesrc_get_property),
1071         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
1072         (gst_basesrc_loop), (gst_basesrc_activate),
1073         (gst_basesrc_change_state):
1074         * gst/base/gstbasesrc.h:
1075         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1076         (gst_fakesrc_class_init), (gst_fakesrc_init),
1077         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
1078         (gst_fakesrc_get_property), (gst_fakesrc_create):
1079         * gst/elements/gstfakesrc.h:
1080         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
1081         (gst_filesrc_open_file), (gst_filesrc_loop),
1082         (gst_filesrc_activate), (filesrc_find_peek),
1083         (gst_filesrc_type_find):
1084         Made base source class, make fakesrc extend it.
1085         Add comments to basesink class.
1086         Some filesrc cleanup.
1087
1088 2005-03-31  David Schleef  <ds@schleef.org>
1089
1090         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
1091         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
1092         expected to link against libgstreamer.
1093         * gst/base/Makefile.am: link against libgstreamer
1094         * gst/elements/Makefile.am: same
1095
1096 2005-03-31  Andy Wingo  <wingo@pobox.com>
1097
1098         * tests/instantiate/Makefile.am:
1099         * tests/instantiate/caps.c: Add test to test speed of caps copy
1100         and free.
1101
1102         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
1103         GMemChunk to be fair.
1104
1105         * gst/gsttrashstack.h: Remove warning about using the fallback
1106         trash stack implementation, it's still faster than malloc.
1107
1108 2005-03-30  Andy Wingo  <wingo@pobox.com>
1109
1110         * tests/complexity.c: Add a copyright.
1111
1112 2005-03-31  Wim Taymans  <wim@fluendo.com>
1113
1114         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
1115         (gst_base_transform_class_init), (gst_base_transform_init),
1116         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1117         (gst_base_transform_get_property),
1118         (gst_base_transform_sink_activate),
1119         (gst_base_transform_src_activate),
1120         (gst_base_transform_change_state):
1121         * gst/base/gstbasetransform.h:
1122         * gst/elements/gstidentity.c: (gst_identity_class_init),
1123         (gst_identity_event), (gst_identity_check_perfect),
1124         (gst_identity_transform), (gst_identity_start),
1125         (gst_identity_stop):
1126         Added start/stop methods to transform base class so subclasses 
1127         don't need to deal with state changes even.
1128
1129 2005-03-31  Wim Taymans  <wim@fluendo.com>
1130
1131         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
1132         (gst_event_new_discontinuous), (gst_event_discont_get_value):
1133         * gst/gstevent.h:
1134         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1135         (gst_pad_pull_range):
1136         Added rate to the discont event to prepare for variable speed
1137         and reverse playback.
1138
1139 2005-03-29  David Schleef  <ds@schleef.org>
1140
1141         * configure.ac:
1142         * testsuite/trigger/Makefile.am:
1143         * testsuite/trigger/trigger.c: A little example program to show
1144         how trigger-based elements can work.
1145
1146 2005-03-29  Wim Taymans  <wim@fluendo.com>
1147
1148         * gst/base/Makefile.am:
1149         * gst/base/README:
1150         * gst/base/gstbasesink.c: (gst_basesink_get_type),
1151         (gst_basesink_base_init), (gst_basesink_class_init),
1152         (gst_basesink_pad_getcaps), (gst_basesink_init),
1153         (gst_basesink_activate), (gst_basesink_change_state):
1154         * gst/base/gstbasesink.h:
1155         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
1156         (gst_base_transform_base_init), (gst_base_transform_finalize),
1157         (gst_base_transform_class_init), (gst_base_transform_init),
1158         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
1159         (gst_base_transform_event), (gst_base_transform_getrange),
1160         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
1161         (gst_base_transform_set_property),
1162         (gst_base_transform_get_property),
1163         (gst_base_transform_sink_activate),
1164         (gst_base_transform_src_activate),
1165         (gst_base_transform_change_state):
1166         * gst/base/gstbasetransform.h:
1167         * gst/elements/gstidentity.c: (gst_identity_finalize),
1168         (gst_identity_class_init), (gst_identity_init),
1169         (gst_identity_event), (gst_identity_check_perfect),
1170         (gst_identity_transform), (gst_identity_set_property),
1171         (gst_identity_get_property), (gst_identity_change_state):
1172         * gst/elements/gstidentity.h:
1173         * gst/gstelement.c: (gst_element_get_state_func),
1174         (gst_element_lost_state), (gst_element_pads_activate):
1175         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1176         (gst_pad_check_pull_range), (gst_pad_pull_range):
1177         * gst/gstpad.h:
1178         Simplify pad activation.
1179         Added function to check if pull_range can be performed.
1180         Error out when pulling inactive or flushing pads.
1181         Removed const from refcounted types as it does not make sense.
1182         Simplify pad templates in basesink
1183         Added base class for simple 1-to-1 transforms.
1184         Make identity subclass the base transform.
1185
1186 2005-03-29  Andy Wingo  <wingo@pobox.com>
1187
1188         * docs/libs/gstreamer-libs-overrides.txt: 
1189         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
1190         really don't understand what's going on, but like whatever. I want
1191         green buildbot!
1192
1193         * docs/gst/Makefile.am:
1194         * docs/libs/Makefile.am: Dist the overrides files.
1195
1196         * check/Makefile.am (clean-local): Remove .libs directories.
1197
1198         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
1199         elements to EXTRA_DIST, so po/ files are happy.
1200
1201         * po/POTFILES.in: Er, remove it here.
1202
1203         * po/POTFILES: Remove gstspider.c.
1204
1205         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
1206
1207         * docs/libs/gstreamer-libs-docs.sgml: 
1208         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
1209         bytestream.
1210
1211         * tests/complexity.c (main): Set the length of the preroll queue
1212         on the sinks to prevent a lockup.
1213
1214         * libs/gst/dataprotocol/Makefile.am: 
1215         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
1216         the same as the one in check/gst-libs/gdp.c.
1217
1218         * po/, docs/gst/: Commit automatic changes to docs and po files.
1219
1220         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
1221         the versioned libgstbase.
1222
1223         * check/Makefile.am: Depend on an unversioned gst-register, seems
1224         to make autoconf happier.
1225
1226         * gst/base/Makefile.am: Make libgstbase a versioned lib.
1227
1228 2005-03-28  Wim Taymans  <wim@fluendo.com>
1229
1230         * configure.ac:
1231         * docs/design/part-gstelement.txt:
1232         * docs/design/part-negotiation.txt:
1233         * docs/design/part-preroll.txt:
1234         * docs/design/part-scheduling.txt:
1235         * docs/design/part-states.txt:
1236         * gst/Makefile.am:
1237         * gst/base/Makefile.am:
1238         * gst/base/README:
1239         * gst/base/gstbasesink.c: (gst_basesink_get_template),
1240         (gst_basesink_base_init), (gst_basesink_class_init),
1241         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1242         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1243         (gst_basesink_set_pad_functions),
1244         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
1245         (gst_basesink_set_property), (gst_basesink_get_property),
1246         (gst_base_sink_get_template), (gst_base_sink_get_caps),
1247         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
1248         (gst_basesink_preroll_queue_push),
1249         (gst_basesink_preroll_queue_empty),
1250         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
1251         (gst_basesink_event), (gst_basesink_get_times),
1252         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
1253         (gst_basesink_chain_unlocked), (gst_basesink_chain),
1254         (gst_basesink_loop), (gst_basesink_activate),
1255         (gst_basesink_change_state):
1256         * gst/base/gstbasesink.h:
1257         * gst/elements/Makefile.am:
1258         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
1259         (gst_fakesink_class_init), (gst_fakesink_init),
1260         (gst_fakesink_set_property), (gst_fakesink_get_property),
1261         (gst_fakesink_get_times), (gst_fakesink_event),
1262         (gst_fakesink_preroll), (gst_fakesink_render),
1263         (gst_fakesink_change_state):
1264         * gst/elements/gstfakesink.h:
1265         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1266         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
1267         * gst/gstelement.c: (gst_element_add_pad),
1268         (gst_element_get_state_func), (gst_element_abort_state),
1269         (gst_element_commit_state), (gst_element_lost_state),
1270         (gst_element_set_state), (gst_element_pads_activate):
1271         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
1272         * gst/gstpipeline.c: (gst_pipeline_send_event),
1273         (gst_pipeline_change_state):
1274         Added state change code.
1275         Added/updated docs.
1276         Added sink base class, make fakesink extend the base class.
1277         Small cleanups in GstPipeline.
1278
1279 2005-03-26  David Schleef  <ds@schleef.org>
1280
1281         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
1282         is broken and should be implemented in a different library.
1283         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
1284         * gst/gst.h: remove gstcpu.h
1285         * gst/gstcpu.c: remove
1286         * gst/gstcpu.h: remove
1287         * gst/Makefile.am.future: Remove this file.  It's ancient.
1288
1289 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1290
1291         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1292         (gst_bin_send_event):
1293           Add default event/set_manager handlers. The set_manager handler
1294           takes care that the manager is distributed over kids that were
1295           already in the bin before the manager was set. The event handler
1296           is a utility virtual function that sends the event over all sinks,
1297           so that gst_element_send_event (bin, event); has the expected
1298           behaviour.
1299         * gst/gstpad.c: (gst_pad_event_default):
1300           Re-install default event handling for discontinuities, so that
1301           seeking works without requiring hacks in applications or extra
1302           code in sinks.
1303         * gst/gstpipeline.c: (gst_pipeline_class_init),
1304         (gst_pipeline_send_event):
1305           Half hack, half utility: set a pipeline to PAUSED for seek events,
1306           since that is the only way we can guarantee a/v sync. Means that
1307           you can do gst_element_seek (pipeline, method, pos); on a pipeline
1308           and it "just works".
1309
1310 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1311
1312         * gst/gstpipeline.c: (gst_pipeline_use_clock):
1313           Lock/unlock mismatch.
1314
1315 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1316
1317         * docs/faq/gst-uninstalled:
1318           add gst-plugins-base
1319         * docs/gst/Makefile.am:
1320           don't error out until docs are fixed
1321         * docs/gst/gstreamer.types:
1322           remove thread
1323
1324 2005-03-22  Wim Taymans  <wim@fluendo.com>
1325
1326         * check/Makefile.am:
1327         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
1328         * gst/gststructure.c: (gst_structure_set_valist),
1329         (gst_structure_copy_conditional):
1330         Activated more tests.
1331         Added message test.
1332         Added G_TYPE_POINTER to GstStructure.
1333         
1334
1335 2005-03-22  Wim Taymans  <wim@fluendo.com>
1336
1337         * docs/design/part-TODO.txt:
1338         * docs/design/part-events.txt:
1339         * docs/design/part-gstbin.txt:
1340         * docs/design/part-gstbus.txt:
1341         * docs/design/part-gstpipeline.txt:
1342         * docs/design/part-messages.txt:
1343         * gst/gstbus.c:
1344         * gst/gstmessage.c:
1345         Docs updates
1346
1347 2005-03-21  Wim Taymans  <wim@fluendo.com>
1348
1349         * gst/gstbus.c: (gst_bus_post):
1350         Fix copy-and-paste error.
1351
1352 2005-03-21  Wim Taymans  <wim@fluendo.com>
1353
1354         * check/Makefile.am:
1355         * gst/Makefile.am:
1356         * gst/elements/Makefile.am:
1357         * gst/elements/gstelements.c:
1358         * gst/elements/gstfakesink.c: (gst_fakesink_init),
1359         (gst_fakesink_event), (gst_fakesink_chain):
1360         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1361         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
1362         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
1363         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
1364         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1365         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
1366         (gst_fakesrc_loop), (gst_fakesrc_activate),
1367         (gst_fakesrc_change_state):
1368         * gst/elements/gstfakesrc.h:
1369         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
1370         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
1371         (gst_filesrc_open_file), (gst_filesrc_loop),
1372         (gst_filesrc_activate), (gst_filesrc_change_state),
1373         (filesrc_find_peek), (filesrc_find_suggest),
1374         (gst_filesrc_type_find):
1375         * gst/elements/gstidentity.c: (gst_identity_finalize),
1376         (gst_identity_class_init), (gst_identity_init),
1377         (gst_identity_proxy_getcaps), (identity_queue_push),
1378         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
1379         (gst_identity_getrange), (gst_identity_chain),
1380         (gst_identity_sink_loop), (gst_identity_src_loop),
1381         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
1382         (gst_identity_set_property), (gst_identity_get_property),
1383         (gst_identity_change_state):
1384         * gst/elements/gstidentity.h:
1385         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
1386         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
1387         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
1388         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
1389         (gst_tee_sink_activate):
1390         * gst/elements/gsttee.h:
1391         * gst/gst.c: (gst_register_core_elements), (init_post):
1392         * gst/gst.h:
1393         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
1394         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
1395         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
1396         (gst_bin_change_state):
1397         * gst/gstbin.h:
1398         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
1399         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
1400         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
1401         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
1402         (gst_bus_set_sync_handler), (gst_bus_create_watch),
1403         (bus_watch_callback), (bus_watch_destroy),
1404         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
1405         (poll_timeout), (gst_bus_poll):
1406         * gst/gstbus.h:
1407         * gst/gstcaps.h:
1408         * gst/gstdata.h:
1409         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
1410         (gst_element_post_message), (gst_element_message_full),
1411         (gst_element_get_state_func), (gst_element_get_state),
1412         (gst_element_abort_state), (gst_element_commit_state),
1413         (gst_element_lost_state), (gst_element_set_state),
1414         (gst_element_pads_activate), (gst_element_change_state),
1415         (gst_element_dispose), (gst_element_set_manager_func),
1416         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
1417         (gst_element_set_manager), (gst_element_get_manager),
1418         (gst_element_set_bus), (gst_element_get_bus),
1419         (gst_element_set_scheduler), (gst_element_get_scheduler):
1420         * gst/gstelement.h:
1421         * gst/gstevent.c: (gst_event_new_segment_seek),
1422         (gst_event_new_flush):
1423         * gst/gstevent.h:
1424         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
1425         (_gst_message_free), (gst_message_get_type), (gst_message_new),
1426         (gst_message_new_eos), (gst_message_new_error),
1427         (gst_message_new_warning), (gst_message_new_tag),
1428         (gst_message_new_state_changed), (gst_message_new_application),
1429         (gst_message_get_structure), (gst_message_parse_tag),
1430         (gst_message_parse_state_changed), (gst_message_parse_error),
1431         (gst_message_parse_warning):
1432         * gst/gstmessage.h:
1433         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
1434         (gst_real_pad_set_property), (gst_pad_set_active),
1435         (gst_pad_is_active), (gst_pad_set_blocked_async),
1436         (gst_pad_set_blocked), (gst_pad_is_blocked),
1437         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
1438         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
1439         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
1440         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
1441         (gst_pad_link_filtered), (gst_pad_relink_filtered),
1442         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
1443         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
1444         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
1445         (gst_pad_set_caps), (gst_pad_configure_sink),
1446         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
1447         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
1448         (gst_real_pad_dispose), (gst_real_pad_finalize),
1449         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
1450         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1451         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
1452         * gst/gstpad.h:
1453         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
1454         (pipeline_bus_handler), (gst_pipeline_change_state),
1455         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
1456         * gst/gstpipeline.h:
1457         * gst/gstprobe.h:
1458         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
1459         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
1460         (gst_queue_link_src), (gst_queue_bufferalloc),
1461         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
1462         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
1463         (gst_queue_loop), (gst_queue_handle_src_event),
1464         (gst_queue_handle_src_query), (gst_queue_src_activate),
1465         (gst_queue_change_state):
1466         * gst/gstqueue.h:
1467         * gst/gstscheduler.c: (gst_scheduler_init),
1468         (gst_scheduler_dispose), (gst_scheduler_create_task),
1469         (gst_scheduler_factory_create):
1470         * gst/gstscheduler.h:
1471         * gst/gststructure.c: (gst_structure_get_type),
1472         (gst_structure_copy_conditional):
1473         * gst/gststructure.h:
1474         * gst/gsttaginterface.h:
1475         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1476         (gst_task_init), (gst_task_dispose), (gst_task_create),
1477         (gst_task_get_state), (gst_task_start), (gst_task_stop),
1478         (gst_task_pause):
1479         * gst/gsttask.h:
1480         * gst/gstthread.c:
1481         * gst/gstthread.h:
1482         * gst/gsttypes.h:
1483         * gst/schedulers/Makefile.am:
1484         * gst/schedulers/cothreads_compat.h:
1485         * gst/schedulers/entryscheduler.c:
1486         * gst/schedulers/faircothreads.c:
1487         * gst/schedulers/faircothreads.h:
1488         * gst/schedulers/fairscheduler.c:
1489         * gst/schedulers/gstbasicscheduler.c:
1490         * gst/schedulers/gstoptimalscheduler.c:
1491         * gst/schedulers/gthread-cothreads.h:
1492         * gst/schedulers/threadscheduler.c:
1493         (gst_thread_scheduler_task_get_type),
1494         (gst_thread_scheduler_task_class_init),
1495         (gst_thread_scheduler_task_init),
1496         (gst_thread_scheduler_task_start),
1497         (gst_thread_scheduler_task_stop),
1498         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
1499         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1500         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
1501         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
1502         (plugin_init):
1503         * libs/gst/Makefile.am:
1504         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
1505         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
1506         (gst_file_pad_parent_set):
1507         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1508         (gst_dp_event_from_packet):
1509         * tests/complexity.c: (main):
1510         * tests/mass_elements.c: (main):
1511         * testsuite/states/locked.c: (message_received), (main):
1512         * testsuite/states/parent.c: (main):
1513         * tools/gst-inspect.c: (print_element_flag_info),
1514         (print_implementation_info), (print_pad_info):
1515         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
1516         (main):
1517         * tools/gst-md5sum.c: (event_loop), (main):
1518         * tools/gst-typefind.c: (main):
1519         * tools/gst-xmlinspect.c: (print_element_info):
1520         Next big merge.
1521         Added GstBus for mainloop integration.
1522         Added GstMessage for sending notifications on the bus.
1523         Added GstTask as an abstraction for pipeline entry points.
1524         Removed GstThread.
1525         Removed Schedulers.
1526         Simplified GstQueue for multithreaded core.
1527         Made _link threadsafe, removed old capsnego.
1528         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
1529         Added pad blocking functions.
1530         Reworked scheduling functions in GstPad to prepare for
1531         scheduling updates soon.
1532         Moved events out of data stream.
1533         Simplified GstEvent types.
1534         Added return values to push/pull.
1535         Removed clocking from GstElement.
1536         Added prototypes for state change function for next merge.
1537         Removed iterate from bins and state change management.
1538         Fixed some elements, disabled others for now.
1539         Fixed -inspect and -launch.
1540         Added check for GstBus.
1541
1542 2005-03-10  Wim Taymans  <wim@fluendo.com>
1543
1544         * docs/design/part-MT-refcounting.txt:
1545         * docs/design/part-clocks.txt:
1546         * docs/design/part-gstelement.txt:
1547         * docs/design/part-gstobject.txt:
1548         * docs/design/part-standards.txt:
1549         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
1550         (gst_bin_remove_func), (gst_bin_remove):
1551         * gst/gstbin.h:
1552         * gst/gstbuffer.c:
1553         * gst/gstcaps.h:
1554         * testsuite/clock/clock1.c: (main):
1555         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
1556         (main):
1557         * testsuite/dlopen/loadgst.c: (do_test):
1558         * testsuite/refcounting/bin.c: (add_remove_test1),
1559         (add_remove_test2), (main):
1560         * testsuite/refcounting/element.c: (main):
1561         * testsuite/refcounting/element_pad.c: (main):
1562         * testsuite/refcounting/pad.c: (main):
1563         * tools/gst-launch.c: (sigint_handler_sighandler):
1564         * tools/gst-typefind.c: (main):
1565         Doc updates.
1566         Added doc about clock.
1567         removed gst_bin_iterate_recurse_up(), marked methods
1568         for removal.
1569         Fix more testsuites.
1570
1571 2005-03-09  Wim Taymans  <wim@fluendo.com>
1572
1573         * gst/gstpad.c: (gst_pad_get_direction),
1574         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
1575         (gst_pad_collect_valist):
1576         * testsuite/bins/interface.c: (main):
1577         * testsuite/caps/audioscale.c: (test_caps):
1578         * testsuite/caps/caps.c: (test1), (test2), (test3):
1579         * testsuite/caps/deserialize.c: (main):
1580         * testsuite/caps/enumcaps.c: (main):
1581         * testsuite/caps/filtercaps.c: (main):
1582         * testsuite/caps/intersect2.c: (main):
1583         * testsuite/caps/random.c: (main):
1584         * testsuite/caps/renegotiate.c: (my_fixate), (main):
1585         * testsuite/caps/sets.c: (check_caps):
1586         * testsuite/caps/simplify.c: (check_caps), (main):
1587         * testsuite/caps/subtract.c: (check_caps):
1588         Fix _pad_get_direction wrt ghostpads.
1589         Fix caps testsuite.
1590
1591 2005-03-09  Wim Taymans  <wim@fluendo.com>
1592
1593         * check/Makefile.am:
1594         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
1595         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
1596         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
1597         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
1598         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
1599         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
1600         (gst_bin_remove), (gst_bin_iterate_recurse_up),
1601         (bin_element_is_sink), (gst_bin_iterate_sinks),
1602         (gst_bin_iterate_all_by_interface):
1603         * gst/gstbin.h:
1604         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
1605         (gst_element_change_state), (gst_element_dispose),
1606         (gst_element_finalize), (gst_element_set_loop_function):
1607         * gst/gstelement.h:
1608         * gst/gstiterator.c: (find_custom_fold_func):
1609         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
1610         (gst_pad_collectv), (gst_pad_collect_valist),
1611         (gst_pad_template_new):
1612         * gst/gstpipeline.c: (gst_pipeline_class_init),
1613         (gst_pipeline_dispose), (gst_pipeline_set_property),
1614         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
1615         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
1616         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
1617         * gst/gstutils.h:
1618         * gst/schedulers/entryscheduler.c:
1619         * gst/schedulers/gstbasicscheduler.c:
1620         (gst_basic_scheduler_cothreaded_chain),
1621         (gst_basic_scheduler_chain_add_element):
1622         * testsuite/bins/interface.c: (main):
1623         Added GstBin test.
1624         Added GstSystemClock test.
1625         Implemented clock distribution code in GstBin.
1626         Implemented iterate sinks method for future use.
1627         Rearranged gstelement.h
1628         Fix GstIterator comparison bug.
1629         Moved some code to GstPipeline, mostly clocking related.
1630
1631 2005-03-09  Wim Taymans  <wim@fluendo.com>
1632
1633         * configure.ac:
1634         * gst/gst_private.h:
1635         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
1636         (gst_bin_remove_func), (gst_bin_remove),
1637         (gst_bin_get_by_name_recurse_up):
1638         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
1639         (gst_clock_id_compare_func), (gst_clock_id_wait),
1640         (gst_clock_id_wait_async), (gst_clock_init),
1641         (gst_clock_adjust_unlocked), (gst_clock_get_time):
1642         * gst/gstelement.h:
1643         * gst/gstinfo.c: (_gst_debug_init):
1644         * gst/gstobject.h:
1645         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
1646         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
1647         * gst/gstpad.h:
1648         Bump version number, we're now 0.9.0
1649         Add future debugging category.
1650         Fix NULL _unref() in _get_by_name_recurse_up
1651         Rearrange gstpad.h.
1652         Update some docs.
1653
1654 2005-03-08  Wim Taymans  <wim@fluendo.com>
1655
1656         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
1657         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
1658         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1659         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
1660         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
1661         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
1662         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
1663         * gst/elements/gstidentity.c: (gst_identity_class_init):
1664         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
1665         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
1666         * gst/elements/gstshaper.c: (gst_shaper_class_init):
1667         * gst/elements/gststatistics.c: (gst_statistics_class_init):
1668         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
1669         (gst_tee_link):
1670         * gst/gstelement.c: (gst_element_class_init),
1671         (gst_element_base_class_init), (gst_element_init),
1672         (gst_element_get_random_pad), (gst_element_wait_state_change),
1673         (gst_element_change_state), (gst_element_dispose),
1674         (gst_element_finalize), (gst_element_set_loop_function):
1675         * gst/gstelement.h:
1676         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
1677         * gst/gstthread.c: (gst_thread_class_init),
1678         (gst_thread_release_children_locks), (gst_thread_change_state):
1679         * gst/schedulers/gstbasicscheduler.c:
1680         (gst_basic_scheduler_loopfunc_wrapper),
1681         (gst_basic_scheduler_chain_wrapper),
1682         (gst_basic_scheduler_src_wrapper),
1683         (gst_basic_scheduler_remove_element):
1684         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
1685         Remove threadsafe properties. Fix elements because GObject
1686         complains when installing a property before declaring a
1687         set/get_property handler.
1688         Rearrange gstelement.h file, use STATE macros for state locks.
1689         Free mutexes in the finalize method instead of dispose.
1690
1691 2005-03-08  Wim Taymans  <wim@fluendo.com>
1692
1693         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1694         * gst/gstthread.c: (gst_thread_release_children_locks):
1695         Added parentage check.
1696         Fix build og GstThread again.
1697
1698 2005-03-08  Wim Taymans  <wim@fluendo.com>
1699
1700         * docs/design/part-MT-refcounting.txt:
1701         * docs/design/part-conventions.txt:
1702         * docs/design/part-gstobject.txt:
1703         * docs/design/part-relations.txt:
1704         * docs/design/part-standards.txt:
1705         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
1706         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
1707         (gst_bin_get_by_name), (gst_bin_get_by_interface),
1708         (gst_bin_iterate_all_by_interface):
1709         * gst/gstbuffer.h:
1710         * gst/gstclock.h:
1711         * gst/gstelement.c: (gst_element_class_init),
1712         (gst_element_change_state), (gst_element_set_loop_function):
1713         * gst/gstelement.h:
1714         * gst/gstiterator.c:
1715         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
1716         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
1717         (gst_object_dispatch_properties_changed), (gst_object_set_name),
1718         (gst_object_set_parent), (gst_object_unparent),
1719         (gst_object_check_uniqueness):
1720         * gst/gstobject.h:
1721         Docs updates, clean up some headers.
1722
1723 2005-03-07  Wim Taymans  <wim@fluendo.com>
1724
1725         * check/.cvsignore:
1726         * check/Makefile.am:
1727         * check/gst-libs/.cvsignore:
1728         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
1729         * check/gst/.cvsignore:
1730         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
1731         (START_TEST), (gstbus_suite), (main):
1732         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
1733         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
1734         (gst_data_suite), (main):
1735         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
1736         (add_fold_func), (gstiterator_suite), (main):
1737         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
1738         (thread_name_object), (thread_name_object_default),
1739         (gst_object_name_compare), (gst_object_suite), (main):
1740         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
1741         (gst_pad_suite), (main):
1742         * check/gstcheck.c: (gst_check_log_message_func),
1743         (gst_check_log_critical_func), (gst_check_init):
1744         * check/gstcheck.h:
1745         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
1746         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
1747         Added checks.
1748
1749 2005-03-07  Wim Taymans  <wim@fluendo.com>
1750
1751         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
1752         (gst_list_iterator_next), (gst_list_iterator_resync),
1753         (gst_list_iterator_free), (gst_iterator_new_list),
1754         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
1755         (gst_iterator_free), (gst_iterator_push), (filter_next),
1756         (filter_resync), (filter_uninit), (filter_free),
1757         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
1758         (gst_iterator_foreach), (find_custom_fold_func),
1759         (gst_iterator_find_custom):
1760         * gst/gstiterator.h:
1761         Added missing files.
1762
1763 2005-03-07  Wim Taymans  <wim@fluendo.com>
1764
1765         * Makefile.am:
1766         * configure.ac:
1767         * docs/design/part-MT-refcounting.txt:
1768         * docs/design/part-conventions.txt:
1769         * docs/design/part-gstobject.txt:
1770         * docs/design/part-relations.txt:
1771         * examples/mixer/mixer.c: (main):
1772         * examples/thread/thread.c: (eos), (main):
1773         * gst/Makefile.am:
1774         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
1775         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
1776         (gst_spider_plug_from_srcpad):
1777         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
1778         (gst_spider_identity_change_state),
1779         (gst_spider_identity_sink_loop_type_finding):
1780         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
1781         * gst/elements/gstidentity.c: (gst_identity_init):
1782         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
1783         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
1784         * gst/elements/gsttypefindelement.c: (free_entry):
1785         * gst/gst.c:
1786         * gst/gst.h:
1787         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
1788         (gst_bin_set_clock_func), (gst_bin_auto_clock),
1789         (gst_bin_set_index), (gst_bin_set_element_sched),
1790         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
1791         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
1792         (gst_bin_iterate_elements), (iterate_child_recurse),
1793         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
1794         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
1795         (compare_interface), (gst_bin_get_by_interface),
1796         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
1797         * gst/gstbin.h:
1798         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
1799         (gst_buffer_default_free), (gst_buffer_default_copy),
1800         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
1801         (gst_buffer_create_sub):
1802         * gst/gstbuffer.h:
1803         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
1804         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
1805         (gst_caps_unref), (gst_static_caps_get),
1806         (gst_caps_remove_and_get_structure), (gst_caps_append),
1807         (gst_caps_append_structure), (gst_caps_remove_structure),
1808         (gst_caps_copy_nth), (gst_caps_set_simple),
1809         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
1810         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
1811         (gst_caps_structure_intersect_field), (gst_caps_intersect),
1812         (gst_caps_structure_subtract_field), (gst_caps_subtract),
1813         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
1814         (gst_caps_structure_figure_out_union),
1815         (gst_caps_switch_structures), (gst_caps_do_simplify),
1816         (gst_caps_replace), (gst_caps_from_string),
1817         (gst_caps_copy_conditional):
1818         * gst/gstcaps.h:
1819         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
1820         (_gst_clock_id_free), (gst_clock_id_unref),
1821         (gst_clock_id_compare_func), (gst_clock_id_wait),
1822         (gst_clock_id_wait_async), (gst_clock_class_init),
1823         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
1824         (gst_clock_get_time), (gst_clock_set_time_adjust),
1825         (gst_clock_set_property), (gst_clock_get_property):
1826         * gst/gstclock.h:
1827         * gst/gstcompat.h:
1828         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
1829         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
1830         * gst/gstdata.h:
1831         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
1832         (gst_element_requires_clock), (gst_element_provides_clock),
1833         (gst_element_set_clock), (gst_element_clock_wait),
1834         (gst_element_wait), (gst_element_set_time_delay),
1835         (gst_element_is_indexable), (gst_element_add_pad),
1836         (gst_element_add_ghost_pad), (gst_element_remove_pad),
1837         (pad_compare_name), (gst_element_get_static_pad),
1838         (gst_element_request_pad), (gst_element_get_request_pad),
1839         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
1840         (gst_element_class_get_pad_template_list),
1841         (gst_element_class_get_pad_template), (gst_element_error_func),
1842         (gst_element_get_random_pad), (gst_element_get_event_masks),
1843         (gst_element_send_event), (gst_element_seek),
1844         (gst_element_get_query_types), (gst_element_query),
1845         (gst_element_get_formats), (gst_element_convert),
1846         (gst_element_is_locked_state), (gst_element_set_locked_state),
1847         (gst_element_sync_state_with_parent), (gst_element_change_state),
1848         (gst_element_finalize), (gst_element_yield),
1849         (gst_element_interrupt), (gst_element_set_scheduler),
1850         (gst_element_get_scheduler), (gst_element_set_loop_function):
1851         * gst/gstelement.h:
1852         * gst/gstevent.h:
1853         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
1854         (gst_format_get_by_nick), (gst_format_get_details),
1855         (gst_format_iterate_definitions):
1856         * gst/gstformat.h:
1857         * gst/gstindex.c: (gst_index_gtype_resolver):
1858         * gst/gstinfo.c:
1859         * gst/gstinfo.h:
1860         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
1861         (gst_mem_chunk_free):
1862         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
1863         (gst_object_ref), (gst_object_unref), (gst_object_sink),
1864         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
1865         (gst_object_dispatch_properties_changed),
1866         (gst_object_set_name_default), (gst_object_set_name),
1867         (gst_object_get_name), (gst_object_set_name_prefix),
1868         (gst_object_get_name_prefix), (gst_object_set_parent),
1869         (gst_object_get_parent), (gst_object_unparent),
1870         (gst_object_check_uniqueness), (gst_object_save_thyself),
1871         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
1872         (gst_object_set_property), (gst_object_get_property),
1873         (gst_object_get_path_string):
1874         * gst/gstobject.h:
1875         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1876         (gst_real_pad_init), (gst_real_pad_get_property),
1877         (gst_pad_custom_new), (gst_pad_get_direction),
1878         (gst_pad_set_active), (gst_pad_is_active),
1879         (gst_pad_set_event_function), (gst_pad_is_linked),
1880         (gst_pad_link_free), (gst_pad_link_intersect),
1881         (gst_pad_link_fixate), (gst_pad_set_caps),
1882         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
1883         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
1884         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
1885         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
1886         (gst_pad_get_caps), (gst_pad_peer_get_caps),
1887         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
1888         (gst_pad_realize), (gst_pad_get_allowed_caps),
1889         (gst_real_pad_dispose), (gst_real_pad_finalize),
1890         (gst_pad_collectv), (gst_pad_collect_valist),
1891         (gst_pad_template_dispose), (gst_pad_template_new),
1892         (gst_pad_get_internal_links):
1893         * gst/gstpad.h:
1894         * gst/gstpipeline.c: (gst_pipeline_dispose),
1895         (gst_pipeline_change_state):
1896         * gst/gstpipeline.h:
1897         * gst/gstplugin.c:
1898         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
1899         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
1900         * gst/gstpluginfeature.h:
1901         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
1902         * gst/gstquery.c: (_gst_query_type_initialize),
1903         (gst_query_type_register), (gst_query_type_get_by_nick),
1904         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
1905         * gst/gstquery.h:
1906         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
1907         * gst/gstscheduler.c: (gst_scheduler_add_element),
1908         (gst_scheduler_factory_create):
1909         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1910         (gst_structure_free), (gst_structure_set_name),
1911         (gst_structure_id_set_value), (gst_structure_set_value),
1912         (gst_structure_set_valist), (gst_structure_remove_field),
1913         (gst_structure_remove_fields),
1914         (gst_structure_remove_fields_valist),
1915         (gst_structure_remove_all_fields), (gst_structure_foreach),
1916         (gst_structure_map_in_place),
1917         (gst_caps_structure_fixate_field_nearest_int),
1918         (gst_caps_structure_fixate_field_nearest_double):
1919         * gst/gststructure.h:
1920         * gst/gstsystemclock.c: (gst_system_clock_class_init),
1921         (gst_system_clock_init), (gst_system_clock_dispose),
1922         (gst_system_clock_async_thread),
1923         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
1924         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
1925         * gst/gstsystemclock.h:
1926         * gst/gsttag.c: (gst_tag_list_add_value_internal),
1927         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
1928         * gst/gsttaginterface.c:
1929         * gst/gstthread.c: (gst_thread_dispose),
1930         (gst_thread_release_children_locks), (gst_thread_change_state),
1931         (gst_thread_main_loop):
1932         * gst/gsttrashstack.h:
1933         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
1934         * gst/gsttypes.h:
1935         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1936         (gst_element_request_pad), (gst_element_get_pad_from_template),
1937         (gst_element_request_compatible_pad),
1938         (gst_element_get_compatible_pad_filtered),
1939         (gst_element_get_compatible_pad), (gst_element_state_get_name),
1940         (gst_element_link_pads_filtered), (gst_element_link_filtered),
1941         (gst_element_link_many), (gst_element_link),
1942         (gst_element_link_pads), (gst_element_unlink_pads),
1943         (gst_element_unlink_many), (gst_element_unlink),
1944         (gst_pad_can_link_filtered), (gst_pad_can_link),
1945         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
1946         (gst_object_default_error), (gst_bin_add_many),
1947         (gst_bin_remove_many), (gst_element_populate_std_props),
1948         (gst_element_class_install_std_props), (gst_buffer_merge),
1949         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
1950         (link_fold_func), (gst_pad_proxy_setcaps):
1951         * gst/gstutils.h:
1952         * gst/gstvalue.c: (gst_value_deserialize_string):
1953         * gst/parse/grammar.y:
1954         * gst/schedulers/gstbasicscheduler.c:
1955         (gst_basic_scheduler_cothreaded_chain),
1956         (gst_basic_scheduler_chain_recursive_add),
1957         (gst_basic_scheduler_pad_link):
1958         * gst/schedulers/gstoptimalscheduler.c:
1959         (get_group_schedule_function),
1960         (gst_opt_scheduler_state_transition),
1961         (gst_opt_scheduler_add_element), (element_get_reachables_func):
1962         * libs/gst/bytestream/bytestream.c:
1963         * libs/gst/dataprotocol/dataprotocol.c:
1964         (gst_dp_header_from_buffer):
1965         * po/nb.po:
1966         * po/ru.po:
1967         * tests/threadstate/threadstate2.c: (eos):
1968         * tools/gst-compprep.c: (main):
1969         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
1970         (print_pad_info), (print_children_info):
1971         * tools/gst-launch.c: (idle_func), (main):
1972         * tools/gst-md5sum.c: (idle_func), (main):
1973         * tools/gst-xmlinspect.c: (print_element_info):
1974         First THREADED backport attempt, focusing on adding locks and
1975         making sure the API is threadsafe. Needs more work. More docs
1976         follow this week.
1977
1978 2005-02-24  Andy Wingo  <wingo@pobox.com>
1979
1980         * tests/bench-complexity.scm:
1981         * tests/complexity.gnuplot: New files, good for running complexity
1982         benchmarks.
1983
1984         * tests/Makefile.am:
1985         * tests/complexity.c: New test, sets up N elements, at each level
1986         teeing into M streams per element. Eeeenteresting.
1987
1988         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
1989         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
1990         running bench-mass_elements.scm.
1991
1992         * tests/bench-mass_elements.scm: New script, runs mass_elements
1993         for various numbers of identities, outputting the results to a
1994         file. Requires guile 1.6. Just for testing.
1995
1996 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1997
1998         * gst/schedulers/fairscheduler.c:
1999           compile with debug disabled
2000
2001 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2002
2003         * configure.ac:
2004           hunting season on 0.9 is now OPEN
2005
2006 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2007
2008         * docs/libs/tmpl/gstcontrol.sgml:
2009         * docs/libs/tmpl/gstdparam.sgml:
2010         * docs/libs/tmpl/gstdplinint.sgml:
2011         * docs/libs/tmpl/gstdpman.sgml:
2012         * docs/libs/tmpl/gstdpsmooth.sgml:
2013         * docs/libs/tmpl/gstunitconvert.sgml:
2014           more docs for the state of dparams
2015
2016 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2017
2018         * gst/gstelementfactory.c: (gst_element_factory_create):
2019         * gst/gstobject.c: (gst_object_init),
2020         (gst_object_set_name_default), (gst_object_set_name):
2021           name objects by default, not in gst_element_factory_create. Allows
2022           using elements created with g_object_new. (fixes #167283)
2023
2024 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2025
2026         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
2027           make the time that debugging functions print relative to when
2028           gst_init was called
2029
2030 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
2031
2032         * gst/gsttaginterface.c:
2033           Fix inline docs: tag setter vararg functions are NULL-terminated,
2034           GST_TAG_INVALID doesn't exist any more.
2035
2036 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2037
2038         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
2039         Allocate the 1 byte more memory that was forgotten!!!!!
2040         fixes memory corruption on 64bit platforms
2041
2042 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
2043
2044         * docs/pwg/building-pads.xml:
2045         * docs/pwg/intro-basics.xml:
2046       fixed a few typos, relabeled introductionary list of types
2047         * docs/random/ensonic/dparams.txt:
2048       more notes abut dparam changes
2049         * libs/gst/control/dparam.c: (gst_dparam_attach):
2050         * libs/gst/control/dparammanager.c:
2051         * libs/gst/control/dparammanager.h:
2052       - many comments and notes on dparam implementation
2053       - new dparams are were not initialized to the default value
2054         from param spec
2055
2056 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2057
2058         submitted by: Peter Astakhov
2059
2060         * po/LINGUAS:
2061         * po/ru.po:
2062           adding Russian translation
2063
2064 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2065
2066         * configure.ac:
2067         * docs/gst/Makefile.am:
2068         * docs/libs/Makefile.am:
2069           make sure popt is added to gtk-doc flags.  Fixes #147782.
2070
2071 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
2072
2073         * docs/faq/using.xml:
2074           Fix typo in FAQ (artssink => artsdsink)
2075
2076 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2077
2078         * tools/gst-launch.1.in:
2079           Fix typo (#166699).
2080
2081 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
2082
2083         * docs/faq/using.xml:
2084           Add -v argument to fakesrc/fakesink gst-launch line,
2085           so that the promised output will actually show up.
2086
2087 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2088
2089         * gst/gstthread.c: (gst_thread_change_state):
2090           Implement state-change error handling (#166073).
2091
2092 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2093
2094         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2095           Release interrupt after handling (#166250).
2096
2097 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2098
2099         * configure.ac:
2100           back to HEAD
2101
2102 === release 0.8.9 ===
2103
2104 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2105
2106         * NEWS:
2107         * RELEASE:
2108         * configure.ac:
2109           releasing 0.8.9, "Like Eating Glass"
2110
2111 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2112
2113         submitted by: Clytie Siddall
2114
2115         * po/vi.po: Added Vietnamese translation
2116
2117 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2118
2119         patch by: Tim Philipp-Müller
2120
2121         * configure.ac:
2122         * gst/gstpad.c:
2123           unref data when probe function returns FALSE.  Fixes #166362
2124
2125 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2126
2127         * gst/gst.c: (gst_init_get_popt_table):
2128           Fix typo (#166269).
2129
2130 2005-02-04  Andy Wingo  <wingo@pobox.com>
2131
2132         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
2133         the debugging on whether the caps are compatible.
2134
2135 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2136
2137         * docs/manual/basics-elements.xml:
2138           Fix two typos.
2139
2140 2005-02-02  Wim Taymans  <wim@fluendo.com>
2141
2142         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
2143         (schedule_chain), (get_invalid_call), (chain_invalid_call),
2144         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
2145         Remove some FIXMEs after analysing and commenting why they
2146         are not issues.
2147
2148 2005-02-02  Wim Taymans  <wim@fluendo.com>
2149
2150         * gst/schedulers/gstoptimalscheduler.c:
2151         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
2152         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
2153         (get_invalid_call), (chain_invalid_call),
2154         (get_group_schedule_function), (loop_group_schedule_function),
2155         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2156         (gst_opt_scheduler_state_transition),
2157         (gst_opt_scheduler_add_element),
2158         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
2159         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
2160         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
2161         (gst_opt_scheduler_show):
2162         Added lock to protect scheduler data structures.
2163
2164 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2165
2166         * testsuite/threads/threadi.c: (cb_data):
2167           Fix buglet in test.
2168
2169 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2170
2171         * testsuite/threads/Makefile.am:
2172         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
2173           On Wim's request, split the test in three separately-compiled
2174           tests that each test a very specific bug. Two of them still fail,
2175           will create bugs for those. threadi.c indicates why they fail.
2176
2177 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2178
2179         * gst/schedulers/gstoptimalscheduler.c:
2180         (get_group_schedule_function):
2181           Try to work with the threading mess that queue_link is.
2182
2183 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2184
2185         * gst/gstbin.c: (gst_bin_remove_func):
2186           Explicitely make an element release locks in a group when being
2187           remove from a bin.
2188         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2189           If there's no scheduler, always return immediately (similar to
2190           gst_element_interrupt).
2191
2192 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2193
2194         * gst/gstbin.c: (gst_bin_child_state_change_func):
2195           Remove a piece of code that could never be reached.
2196         * docs/gst/gstreamer-sections.txt:
2197         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
2198         (gst_pad_call_get_function):
2199         * gst/gstpad.h:
2200         * testsuite/pad/Makefile.am:
2201           Fix #150546, enable tests.
2202
2203 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2204
2205         * docs/pwg/advanced-types.xml:
2206           Fix description for buffer-frames=0.
2207         * docs/gst/tmpl/gstbin.sgml:
2208         * gst/gstbin.c: (gst_bin_child_state_change_func),
2209         (gst_bin_change_state), (gst_bin_change_state_norecurse):
2210         * gst/gstbin.h:
2211         * testsuite/threads/Makefile.am:
2212         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
2213         (cb_state), (cb_play), (main):
2214           Fix non-recursive state changes to *really* change the state
2215           of the object, and not just call parent_class->state_change.
2216           Fix a lot of lockups caused by this. Fixes #132775. Add test
2217           for the problem. Also enable test to show #142588 (fixed).
2218         * gst/gstthread.c: (gst_thread_change_state),
2219         (gst_thread_child_state_change):
2220           Don't exit the thread if we go to NULL and are inside thread
2221           context. Instead, return control to the main thread context
2222           and exit from there.
2223         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
2224           Don't unset virtual functions, since those may still be used.
2225           That's not necessarily correct, but suffices for now.
2226         * configure.ac:
2227         * testsuite/Makefile.am:
2228         * testsuite/pad/Makefile.am:
2229         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
2230         (gst_test_sink_base_init), (gst_test_sink_chain),
2231         (gst_test_sink_init), (main):
2232         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
2233         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
2234         (main):
2235         * testsuite/pad/link.c: (gst_test_element_class_init),
2236         (gst_test_element_base_init), (gst_test_src_get),
2237         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
2238         (gst_test_filter_loop), (gst_test_filter_init),
2239         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
2240         (cb_error), (main):
2241           Add tests to show #150546. Pass, but should fail (currently
2242           disabled from the testsuite).
2243         * gst/gstscheduler.c: (gst_scheduler_dispose):
2244           Dereference child schedulers on dispose (#94464).
2245         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
2246           Fix typo.
2247         * testsuite/threads/thread.c: (main):
2248           Add more debug.
2249
2250 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2251
2252         * gst/gstpad.c: (gst_pad_push):
2253           Oops, revert previous commit, broke testsuite...
2254
2255 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2256
2257         * gst/gstpad.c: (gst_pad_push):
2258           Add check that the pad on which the push is performed is not a
2259           get-based pad (#150546).
2260
2261 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2262
2263         * gst/elements/gsttypefindelement.c:
2264         (gst_type_find_element_handle_event):
2265           Fix buffer pushing if stream EOSes during typefinding.
2266
2267 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
2268
2269         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2270
2271         * gst/gstvalue.c: (gst_string_wrap):
2272           Allow NULL-strings as argument (#165365).
2273
2274 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
2275
2276         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2277
2278         * gst/schedulers/faircothreads.c:
2279         (gst_fair_scheduler_cothread_queue_show):
2280           Fix build without debug enabled.
2281
2282 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
2283
2284         * docs/gst/gstreamer-sections.txt:
2285         * docs/libs/gstreamer-libs-docs.sgml:
2286         * docs/libs/gstreamer-libs-sections.txt:
2287         * docs/libs/tmpl/gstcontrol.sgml:
2288         * docs/libs/tmpl/gstdparam.sgml:
2289         * docs/libs/tmpl/gstdplinint.sgml:
2290         * docs/libs/tmpl/gstdpman.sgml:
2291         * docs/libs/tmpl/gstdpsmooth.sgml:
2292         * docs/libs/tmpl/gstputbits.sgml:
2293         * docs/libs/tmpl/gstunitconvert.sgml:
2294         * libs/gst/control/dparam.c:
2295         * libs/gst/control/dparam.h:
2296         * libs/gst/control/dparammanager.c:
2297         (gst_dpman_add_required_dparam_callback),
2298         (gst_dpman_add_required_dparam_direct),
2299         (gst_dpman_add_required_dparam_array),
2300         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
2301         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
2302         (gst_dpman_get_manager)
2303           restructured DParam docs
2304
2305 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
2306
2307         * gst-element-check.m4:
2308           Only check for gst-inspect if we haven't already
2309           found it in previous element check runs
2310
2311 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
2312
2313         * docs/gst/Makefile.am:
2314         * docs/libs/Makefile.am:
2315           fixed install rules to treat style.css as optional
2316
2317 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
2318
2319         * docs/gst/Makefile.am:
2320         * docs/libs/Makefile.am:
2321           install style.css along with docs
2322         * docs/gst/tmpl/gstbin.sgml:
2323         * docs/gst/tmpl/gstclock.sgml:
2324         * docs/gst/tmpl/gstdata.sgml:
2325         * docs/gst/tmpl/gstelement.sgml:
2326         * gst/gstbin.h:
2327         * gst/gstelement.c: (gst_element_class_init):
2328         * gst/gstelement.h:
2329           fixing incomplete docs
2330
2331 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
2332
2333         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
2334           Don't unref seek event twice when fflush() fails
2335           
2336 2005-01-22  David Schleef  <ds@schleef.org>
2337
2338         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
2339
2340 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
2341
2342         * docs/gst/Makefile.am:
2343         * docs/libs/Makefile.am:
2344           added params for deprecation guards
2345         * gst/gst.c:
2346         * gst/gst.h:
2347         * gst/gsterror.c: (_gst_resource_errors_init),
2348         (_gst_stream_errors_init):
2349         * gst/gsterror.h:
2350           documented some more enums
2351
2352 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
2353         * gst/autoplug/gstspideridentity.c:
2354         Cosmetic fix - spider_find_peek should be static
2355         * gst/parse/parse.l:
2356         Applying fix for #164261
2357
2358 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
2359
2360         * docs/gst/gstreamer-sections.txt:
2361         * docs/gst/tmpl/gstplugin.sgml:
2362         * docs/libs/gstreamer-libs-sections.txt:
2363         * docs/libs/tmpl/gstcontrol.sgml:
2364         * gst/gstbuffer.h:
2365         * gst/gsttag.h:
2366         * gst/gstvalue.c:
2367           added docs for the TAG defines
2368
2369 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2370
2371         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2372           Only unref entry if there is an entry.
2373
2374 2005-01-17  Wim Taymans  <wim@fluendo.com>
2375
2376         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
2377         (remove_from_group), (schedule_group), (normalize_group),
2378         (gst_opt_scheduler_iterate):
2379         Also ref/unref decoupled elements before iterating the
2380         group since they are not added to the list of elements.
2381
2382 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2383
2384         * docs/manual/highlevel-components.xml:
2385           Add subtitle/streamselection as new features to playbin.
2386
2387 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2388
2389         * docs/manual/manual.xml:
2390           Re-enable dataaccess docs (oops).
2391
2392 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2393
2394         * docs/pwg/advanced-types.xml:
2395         * docs/random/mimetypes:
2396           Add documentation on libsndfile types (#163309), by Steve Baker
2397           <steve@stevebaker.org>.
2398         * gst/gstelement.c: (gst_element_release_request_pad):
2399           If an element has no explicit function, just remove the pad.
2400
2401 2005-01-17  Luca Ognibene  <luogni@tin.it>
2402
2403         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2404
2405         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
2406           Fix memleak (#163801).
2407
2408 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2409
2410         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
2411           I think this is actually more correct...
2412
2413 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2414
2415         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2416           Another workaround for memory access while destroyed in callback.
2417           Please, someone with refcount knowledge, have a look at this.
2418
2419 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2420
2421         * docs/faq/faq.xml:
2422         * docs/faq/legal.xml:
2423           move the legal Q&A here
2424
2425 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2426
2427         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
2428         (gst_tee_request_new_pad):
2429           Fix negotiation.
2430
2431 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2432
2433         * docs/random/omega/caps2:
2434         * testsuite/caps/caps_strings:
2435           replace framerate aproximations by their real value
2436           (24000/1001, 30000/1001, 60000/1001)
2437           Partially fixes bug #164049
2438
2439 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2440
2441         * docs/gst/Makefile.am:
2442           don't fail on the stupid GstPoptOption
2443
2444 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2445
2446         * gst/gstpad.h:
2447         * gst/gstprobe.c:
2448           allow probes to work on ghost pads by realizing the pad
2449           probe debugging
2450
2451 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2452
2453         * docs/gst/gstreamer-sections.txt:
2454         * docs/gst/tmpl/gstpad.sgml:
2455         * gst/gstpad.c: (gst_pad_set_active_recursive):
2456         * gst/gstpad.h:
2457           Add gst_pad_set_active_recursive().
2458
2459 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2460
2461         * docs/random/release:
2462           updates
2463         * gst/gst_private.h:
2464         * gst/gstinfo.c:
2465         * gst/gstobject.c:
2466           move deep_notify logging to a new category
2467         * gst/gstprobe.c:
2468         * gst/gstprobe.h:
2469           add stuff so bindings can wrap probes
2470
2471 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2472
2473         * gst/gstplugin.c: (gst_plugin_load):
2474           Fix plugin loading if plugin/lib was already loaded. Fixes
2475           #163383
2476
2477 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
2478
2479         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2480
2481         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
2482           Protect plugin loading by a mutex so it's threadsafe. Fixes
2483           #163234.
2484
2485 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2486
2487         * gst/gstevent.c: (_gst_event_copy):
2488           Reference source object when copying events, since it'll be
2489           dereferenced on event dereferencing as well.
2490
2491 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2492
2493         * docs/gst/gstreamer-sections.txt:
2494         * docs/gst/tmpl/gstevent.sgml:
2495         * gst/gstevent.c: (gst_event_new_filler_stamped),
2496         (gst_event_filler_get_duration):
2497         * gst/gstevent.h:
2498           Add two new functions for filler events (which are used to
2499           synchronize streams if one of them is not having any data
2500           for a while) without interrupting the actual data-stream.
2501           Basically a no-op.
2502         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2503         (gst_queue_link_sink), (gst_queue_link_src),
2504         (gst_queue_change_state):
2505           Allow for renegotiation while filled. Required for stream
2506           switching while playing.
2507
2508 2005-01-08  Benjamin Otte  <otte@gnome.org>
2509
2510         * gst/gstelement.c: (gst_element_link_many):
2511           fix up g_return_if_fail's
2512         * po/LINGUAS:
2513         * po/de.po:
2514           add German translation, that was somehow not included
2515
2516 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2517
2518         * docs/random/mimetypes:
2519           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
2520           do not add them to riff-lib as they are not common
2521
2522 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2523
2524         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2525           Check for existence of probe after performing the probe before
2526           re-accessing it to prevent segfaults caused by removal of the
2527           probe in the callback.
2528
2529 2005-01-05  David Schleef  <ds@schleef.org>
2530
2531         * testsuite/registry/Makefile.am:
2532         * testsuite/registry/gst-print-formats.c:
2533         (print_pad_templates_info), (print_element_list),
2534         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
2535         (g_list_uniqify), (get_pad_templates_info),
2536         (get_element_mime_list), (print_mime_list), (main): A little
2537         program that looks through the registry to find elements of
2538         a given type.  Not particularly interesting as a test, except
2539         that there's no other test covering the same area.
2540
2541 2005-01-05  David Schleef  <ds@schleef.org>
2542
2543         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
2544         (fault_handler_sigaction), (fault_spin),
2545         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
2546         in signal.h-type signal handlers by not calling forbidden functions,
2547         including gst_element_set_state().
2548
2549 2005-01-05  David Schleef  <ds@schleef.org>
2550
2551         * gst/gstvalue.h: Mark _gst_reserved[] as private
2552
2553 2005-01-05  David Schleef  <ds@schleef.org>
2554
2555         * gst/gstvalue.c: Fix doc build problem.
2556
2557 2005-01-05  David Schleef  <ds@schleef.org>
2558
2559         * gst/gstvalue.c: Add some documentation
2560
2561 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
2562
2563         * docs/README:
2564           another shell oneliner for empty return value docs
2565         * gst/gstcaps.c:
2566         * gst/gstvalue.c:
2567         * libs/gst/control/dparam.c:
2568           more doc fixes (parameters and return values)
2569
2570 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
2571
2572         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2573
2574         * gst/gstregistry.h:
2575         * gst/registries/gstxmlregistry.c:
2576           Fix macro's for Mingw (fixes #162276).
2577
2578 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
2579
2580         * docs/README:
2581           quick shell oneliner to find undocumented members
2582         * docs/gst/tmpl/gstplugin.sgml:
2583         * docs/gst/tmpl/gstscheduler.sgml:
2584         * docs/gst/tmpl/gstthread.sgml:
2585           more enumtypes cleanup
2586         * gst/gsterror.h:
2587           activated documentation comments, now someone needs to document
2588           the enums :(
2589
2590 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2591
2592         * docs/manual/manual.xml:
2593           Add dataaccess part (doh!).
2594
2595 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2596
2597         * docs/manual/advanced-autoplugging.xml:
2598           Fix typo (intiate -> initiate).
2599
2600 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2601
2602         * docs/random/bbb/streamselection:
2603           Add some notes on how to handle multi-subtitle/-audio streams.
2604
2605 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
2606
2607         * docs/gst/gstreamer-docs.sgml:
2608         * docs/gst/gstreamer-sections.txt:
2609         * docs/gst/tmpl/gstenumtypes.sgml:
2610         * docs/gst/tmpl/gsterror.sgml:
2611         * docs/gst/tmpl/gstevent.sgml:
2612         * docs/gst/tmpl/gstpad.sgml:
2613         * docs/gst/tmpl/gstpadtemplate.sgml:
2614         * docs/gst/tmpl/gstthread.sgml:
2615           removed gstenumtypes section from docs and put all the enums into
2616           their sections
2617
2618 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
2619
2620         * gst/gstplugin.c:
2621           document gst_library_load a bit more (riff special case + return
2622           value if already loaded)
2623         * testsuite/bytestream/filepadsink.c:
2624           plugin name is 'gstbytestream', not 'bytestream'
2625
2626 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2627
2628         * docs/random/bbb/subtitles:
2629           Add some first mind rumblings on proper subtitle support.
2630
2631 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2632
2633         * po/ca.po:
2634         * po/sv.po:
2635           updated translations
2636
2637 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2638
2639         * docs/manual/advanced-dataaccess.xml:
2640           Add section on how to use fakesrc/fakesink/identity in your
2641           application, plus section on how to embed plugins. Also mention
2642           probes.
2643         * docs/manual/appendix-checklist.xml:
2644         * docs/manual/appendix-debugging.xml:
2645         * docs/manual/appendix-gnome.xml:
2646         * docs/manual/appendix-integration.xml:
2647           Debug -> checklist, GNOME -> integration, add sections on Linux,
2648           KDE integration and add other things useful for application
2649           development.
2650         * docs/manual/manual.xml:
2651           Remove some fixmes, update some file pointers.
2652         * docs/pwg/appendix-checklist.xml:
2653           Fix typo.
2654         * docs/pwg/building-boiler.xml:
2655           Remove ugly header and add commented fixme.
2656         * docs/pwg/pwg.xml:
2657           Add fixme.
2658         * examples/manual/Makefile.am:
2659           Add example for added docs.
2660
2661 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2662
2663         * configure.ac:
2664           back to HEAD
2665
2666 === release 0.8.8 ===
2667
2668 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2669
2670         * NEWS:
2671         * RELEASE:
2672         * configure.ac:
2673           Releasing 0.8.8, "I'll Take Care Of You"
2674
2675 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2676
2677         * configure.ac:
2678           second prerelease
2679
2680 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2681
2682         patch by: Wim Taymans
2683
2684         * gst/gstbin.c:
2685           Fix for #159852 - make iterate emission threadsafe
2686
2687 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2688
2689         * docs/faq/cvs.xml:
2690           notes about new fdo account request
2691
2692 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
2693
2694         * docs/gst/gstreamer-docs.sgml:
2695         * docs/gst/tmpl/gstenumtypes.sgml:
2696         * docs/gst/tmpl/gstplugin.sgml:
2697         * docs/libs/gstreamer-libs-docs.sgml:
2698           Added missing short docs. Added ids for navigation.
2699
2700 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2701
2702         * docs/manual/advanced-autoplugging.xml:
2703         * docs/manual/advanced-schedulers.xml:
2704         * docs/manual/advanced-threads.xml:
2705           Rewrites. Remove cothreads, go a bit into opt specifically,
2706           document threads and their gotchas, and do some technical stuff
2707           on autoplugging plus add some working examples. Fixes #157395.
2708         * examples/manual/Makefile.am:
2709           Add typefind/autoplugger example (one that actually works).
2710           Remove queue example since it's a duplicate of the thread one.
2711
2712 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2713
2714         * gst/gstvalue.c: (gst_value_deserialize_string):
2715           use deprecated g_value_set_string_take_ownership to keep compatible
2716           with glib 2.2
2717
2718 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2719
2720         * gst/gstvalue.c: (gst_value_deserialize_string):
2721           revert last patch, only dom a g_utf8_validate now before accepting
2722           the string - caps parsing strips " from strings so we can't rely on
2723           them
2724         * testsuite/caps/value_serialize.c: (test_string_deserialization):
2725           disable a test that tested the above and comment it
2726
2727 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
2728
2729         Patch reviewed by David Schleef  <ds@schleef.org>
2730
2731         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
2732         bug #153882)
2733         * win32/gstenumtypes.h: same
2734
2735 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2736
2737         * gst/gstpad.c: (gst_pad_query):
2738           Do query on realized pad, similar to how convert/send_event handle
2739           this. Also makes sense, since this pad belongs to the function to
2740           which this query will be sent. Fixes #158163.
2741
2742 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
2743
2744         * docs/manual/appendix-programs.xml: fix pipeline to actually work
2745
2746 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
2747
2748         * docs/faq/general.xml: fix pipeline to actually work
2749
2750 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2751
2752         * gst/gstvalue.c: (gst_value_deserialize_string):
2753           check that a simple string that gets deserialized does not contain
2754           invalid characters
2755         * testsuite/caps/value_serialize.c: (test_string_deserialization):
2756           remove a test that tested a wring behaviour
2757
2758 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
2759
2760         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2761
2762         * docs/manual/intro-motivation.xml:
2763           Fix typos.
2764
2765 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
2766
2767         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2768
2769         * docs/gst/tmpl/gstprobe.sgml:
2770           Fix documentation of probe callback - it is supposed to return
2771           FALSE, not TRUE, to remove data from the stream (#159087).
2772
2773 2004-12-16  Daniel Gazard  <dany42@free.fr>
2774
2775         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2776
2777         * gst/gstelementfactory.c: (gst_element_factory_create):
2778           Fix compile failure if compiling without libxml2 support (#149936).
2779
2780 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2781
2782         * docs/manual/advanced-autoplugging.xml:
2783         * docs/manual/highlevel-components.xml:
2784           Move spider from autoplugging to components. Autoplugging is for
2785           internals, not for solutions. ;-).
2786
2787 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2788
2789         * docs/random/ds/0.9-suggested-changes:
2790           Make note on device/location/uri property names.
2791
2792 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2793
2794         * docs/manual/advanced-autoplugging.xml:
2795         * docs/manual/advanced-clocks.xml:
2796         * docs/manual/advanced-interfaces.xml:
2797         * docs/manual/advanced-metadata.xml:
2798         * docs/manual/advanced-position.xml:
2799         * docs/manual/advanced-schedulers.xml:
2800         * docs/manual/advanced-threads.xml:
2801         * docs/manual/appendix-gnome.xml:
2802         * docs/manual/appendix-programs.xml:
2803         * docs/manual/appendix-quotes.xml:
2804         * docs/manual/autoplugging.xml:
2805         * docs/manual/basics-bins.xml:
2806         * docs/manual/basics-data.xml:
2807         * docs/manual/basics-elements.xml:
2808         * docs/manual/basics-helloworld.xml:
2809         * docs/manual/basics-init.xml:
2810         * docs/manual/basics-pads.xml:
2811         * docs/manual/basics-plugins.xml:
2812         * docs/manual/bins-api.xml:
2813         * docs/manual/bins.xml:
2814         * docs/manual/buffers-api.xml:
2815         * docs/manual/buffers.xml:
2816         * docs/manual/clocks.xml:
2817         * docs/manual/components.xml:
2818         * docs/manual/cothreads.xml:
2819         * docs/manual/debugging.xml:
2820         * docs/manual/dparams-app.xml:
2821         * docs/manual/dynamic.xml:
2822         * docs/manual/elements-api.xml:
2823         * docs/manual/elements.xml:
2824         * docs/manual/factories.xml:
2825         * docs/manual/gnome.xml:
2826         * docs/manual/goals.xml:
2827         * docs/manual/helloworld.xml:
2828         * docs/manual/helloworld2.xml:
2829         * docs/manual/highlevel-components.xml:
2830         * docs/manual/highlevel-xml.xml:
2831         * docs/manual/init-api.xml:
2832         * docs/manual/intro-basics.xml:
2833         * docs/manual/intro-motivation.xml:
2834         * docs/manual/intro-preface.xml:
2835         * docs/manual/intro.xml:
2836         * docs/manual/links-api.xml:
2837         * docs/manual/links.xml:
2838         * docs/manual/manual.xml:
2839         * docs/manual/motivation.xml:
2840         * docs/manual/pads-api.xml:
2841         * docs/manual/pads.xml:
2842         * docs/manual/plugins-api.xml:
2843         * docs/manual/plugins.xml:
2844         * docs/manual/programs.xml:
2845         * docs/manual/queues.xml:
2846         * docs/manual/quotes.xml:
2847         * docs/manual/schedulers.xml:
2848         * docs/manual/states-api.xml:
2849         * docs/manual/states.xml:
2850         * docs/manual/threads.xml:
2851         * docs/manual/typedetection.xml:
2852         * docs/manual/win32.xml:
2853         * docs/manual/xml.xml:
2854           Try 2. This time, include a short preface as a "general
2855           introduction", also add code blocks around all code samples
2856           so they get compiled. We still need a way to tell readers
2857           the filename of the code sample. In some cases, don't show
2858           all code in the documentation, but do include it in the generated
2859           code. This allows for focussing on specific bits in the docs,
2860           while still having a full test application available.
2861         * examples/manual/Makefile.am:
2862           Fix up examples for new ADM. Add several of the new examples that
2863           were either added or were missing from the build system.
2864         * examples/manual/extract.pl:
2865           Allow nameless blocks.
2866
2867 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2868
2869         * docs/manual/elements-api.xml:
2870         * docs/manual/helloworld.xml:
2871         * examples/manual/extract.pl:
2872           fix last example.  Add example of adding code blocks that are not
2873           shown in docbook output.
2874
2875 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2876
2877         * docs/manual/dynamic.xml:
2878         * docs/manual/elements-api.xml:
2879         * docs/manual/gnome.xml:
2880         * docs/manual/helloworld2.xml:
2881         * docs/manual/init-api.xml:
2882         * docs/manual/queues.xml:
2883         * docs/manual/threads.xml:
2884         * docs/manual/xml.xml:
2885         * examples/manual/extract.pl:
2886           Make it possible to extract example code from separate blocks.
2887           Should make Ronald happy.
2888
2889 2004-12-15  Wim Taymans  <wim@fluendo.com>
2890
2891         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
2892         (remove_from_group), (group_elements_set_visited),
2893         (normalize_group), (gst_opt_scheduler_iterate):
2894         Fix bug where a flag was not updated on a decoupled entry point 
2895         because we were just checking the group element list and decoupled
2896         elements are not in that list..
2897
2898 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2899
2900         * docs/manual/advanced-autoplugging.xml:
2901         * docs/manual/advanced-clocks.xml:
2902         * docs/manual/advanced-dparams.xml:
2903         * docs/manual/advanced-interfaces.xml:
2904         * docs/manual/advanced-metadata.xml:
2905         * docs/manual/advanced-position.xml:
2906         * docs/manual/advanced-schedulers.xml:
2907         * docs/manual/advanced-threads.xml:
2908         * docs/manual/appendix-debugging.xml:
2909         * docs/manual/appendix-gnome.xml:
2910         * docs/manual/appendix-programs.xml:
2911         * docs/manual/appendix-quotes.xml:
2912         * docs/manual/appendix-win32.xml:
2913         * docs/manual/autoplugging.xml:
2914         * docs/manual/basics-bins.xml:
2915         * docs/manual/basics-data.xml:
2916         * docs/manual/basics-elements.xml:
2917         * docs/manual/basics-helloworld.xml:
2918         * docs/manual/basics-init.xml:
2919         * docs/manual/basics-pads.xml:
2920         * docs/manual/basics-plugins.xml:
2921         * docs/manual/bins-api.xml:
2922         * docs/manual/bins.xml:
2923         * docs/manual/buffers-api.xml:
2924         * docs/manual/buffers.xml:
2925         * docs/manual/clocks.xml:
2926         * docs/manual/components.xml:
2927         * docs/manual/cothreads.xml:
2928         * docs/manual/debugging.xml:
2929         * docs/manual/dparams-app.xml:
2930         * docs/manual/dynamic.xml:
2931         * docs/manual/elements-api.xml:
2932         * docs/manual/elements.xml:
2933         * docs/manual/factories.xml:
2934         * docs/manual/gnome.xml:
2935         * docs/manual/goals.xml:
2936         * docs/manual/helloworld.xml:
2937         * docs/manual/helloworld2.xml:
2938         * docs/manual/highlevel-components.xml:
2939         * docs/manual/highlevel-xml.xml:
2940         * docs/manual/init-api.xml:
2941         * docs/manual/intro-motivation.xml:
2942         * docs/manual/intro-preface.xml:
2943         * docs/manual/intro.xml:
2944         * docs/manual/links-api.xml:
2945         * docs/manual/links.xml:
2946         * docs/manual/manual.xml:
2947         * docs/manual/motivation.xml:
2948         * docs/manual/pads-api.xml:
2949         * docs/manual/pads.xml:
2950         * docs/manual/plugins-api.xml:
2951         * docs/manual/plugins.xml:
2952         * docs/manual/programs.xml:
2953         * docs/manual/queues.xml:
2954         * docs/manual/quotes.xml:
2955         * docs/manual/schedulers.xml:
2956         * docs/manual/states-api.xml:
2957         * docs/manual/states.xml:
2958         * docs/manual/threads.xml:
2959         * docs/manual/typedetection.xml:
2960         * docs/manual/win32.xml:
2961         * docs/manual/xml.xml:
2962           First try at rewriting the ADM. Needs lotsamore work, but some
2963           parts might already be somewhat useful.
2964         * docs/pwg/advanced-interfaces.xml:
2965           Remove properties interface, it never actually existed (except for
2966           on my HD...).
2967
2968 2004-12-13  David Schleef  <ds@schleef.org>
2969
2970         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
2971         be NULL (bug #160220).
2972
2973 2004-12-13  David Schleef  <ds@schleef.org>
2974
2975         * configure.ac: remove all mmx stuff, because it's not used.
2976         * docs/random/ds/0.9-suggested-changes: additional notes
2977         * include/Makefile.am: we don't use these anymore
2978         * include/mmx.h: remove
2979         * include/sse.h: remove
2980
2981 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
2982
2983         * docs/random/mimetypes:
2984           Add FOURCC code for h264 codec (VSSH)
2985           Add alternate FOURCC codes for h263 related codecs
2986
2987 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
2988
2989         * docs/manual/programs.xml:
2990           Added more gst-launch examples.
2991
2992 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2993
2994         * gst/gstqueue.c: (gst_queue_handle_src_query):
2995           Check for availability again.
2996
2997 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2998
2999         * gst/gstcaps.c: (gst_caps_compare_structures):
3000           Simple caps go first. This has the nice side-effect of fixing an
3001           obscure warning.
3002
3003 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3004
3005         * gst/gstversion.h.in:
3006           Protect header.
3007
3008 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3009
3010         * gst/schedulers/gstoptimalscheduler.c:
3011         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
3012         (gst_opt_scheduler_get_wrapper):
3013           When we're recursing into a chain run, only run the directly
3014           related group, not all queued ones. This will fix a possible
3015           deadlock in chains with more than two groups.
3016
3017 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3018
3019         * autogen.sh:
3020           remove patch if autopoint fails
3021
3022 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3023
3024         * docs/gst/gstreamer-sections.txt:
3025           Document Thomas' addition, fix build, make Luis the sheriff happy.
3026
3027 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3028
3029         * gst/gstplugin.c:
3030         * gst/gstplugin.h:
3031           add accessor for version field
3032
3033 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3034
3035         submitted by: Luca Ferretti <elle.uca@infinito.it>
3036
3037         * po/LINGUAS:
3038         * po/it.po:
3039           New tranlation added: Italian
3040
3041 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3042
3043         * gst/gstpad.c: (gst_pad_is_negotiated),
3044         (gst_pad_get_negotiated_caps):
3045           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
3046           it doesn't actually check the contents), so be sure to hand it
3047           a RealPad else we'll crash.
3048
3049 2004-12-03  Wim Taymans  <wim@fluendo.com>
3050
3051         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3052         (gst_queue_link), (gst_queue_handle_src_query):
3053         Reverted to 1.110 until this makes the testsuite and various
3054         apps work.
3055
3056 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
3057
3058         * docs/upload.mak: fix included CVS conflict strings
3059
3060 2004-12-01  William Jon McCann  <mccann@jhu.edu>
3061
3062         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3063
3064         * gst/gstelement.c: (gst_element_error_full):
3065           Use g_error_new_literal because error text may have
3066           percentage signs in it. Fixes #160019.
3067
3068 2004-12-01  Benjamin Otte  <otte@gnome.org>
3069
3070         * gst/elements/gstbufferstore.c:
3071         (gst_buffer_store_add_buffer_func):
3072           don't try to make subbuffers bigger than they can be. (fixes
3073           #159970)
3074
3075 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3076
3077         * docs/gst/gstreamer-sections.txt:
3078         * docs/gst/tmpl/gstvalue.sgml:
3079           Add new function to docs to fix build.
3080
3081 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3082
3083         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
3084         * gst/gstpad.c: (_gst_pad_default_fixate_value),
3085         (_gst_pad_default_fixate_foreach):
3086         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
3087         * gst/gstvalue.h:
3088           Deprecate _type_is_fixed, use _value_is_fixed instead, since
3089           in some cases (arrays), the fixedness depends on the content.
3090         * gst/gstqueue.c: (gst_queue_handle_src_query):
3091           Check for availability before doing something.
3092
3093 2004-11-29  Wim Taymans  <wim@fluendo.com>
3094
3095         * testsuite/threads/Makefile.am:
3096         * testsuite/threads/signals.c: (gst_test_get_type),
3097         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
3098         (gst_test_set_property), (gst_test_get_property),
3099         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
3100         (gst_test_do_prop), (run_thread), (main):
3101         Added a bunch of testcases that show threadsafety bugs in glib.
3102
3103 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
3104
3105         * docs/manual/programs.xml:
3106           Added a first batch of gst-launch examples, as provided by Ronald
3107           and others from the devel-mlist
3108
3109 2004-11-28  Benjamin Otte  <otte@gnome.org>
3110
3111         * gst/gstelement.c: (gst_element_negotiate_pads):
3112           simplify
3113         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
3114         (gst_value_serialize_string), (gst_value_deserialize_string):
3115           add unwrapping of previously wrapped strings. Fix bug in wrapping
3116           while at it.
3117         * testsuite/caps/value_serialize.c: (test1),
3118         (test_string_serialization), (test_string_deserialization), (main):
3119           add tests for string (de)serialization
3120
3121 2004-11-26  Wim Taymans  <wim@fluendo.com>
3122
3123         * testsuite/threads/159566.c: (object_deep_notify), (main):
3124         * testsuite/threads/Makefile.am:
3125         Added testsuite to show bug #159566
3126
3127 2004-11-25  Wim Taymans  <wim@fluendo.com>
3128
3129         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
3130         (gst_thread_child_state_change), (gst_thread_main_loop):
3131         Ref the thread object in the GThread mainloop. Break out of the
3132         thread mainloop if it holds the last ref. This properly exits
3133         the threads when disposing the thread from its own context. It
3134         also avoids possible deadlocks in the dispose function.
3135
3136 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
3137
3138         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
3139         it is necessary to wait.
3140
3141 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3142
3143         * docs/pwg/building-boiler.xml:
3144           Make description somewhat clearer.
3145
3146 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3147
3148         * docs/upload.mak:
3149           Apparently docs changed location on FDO's server.
3150
3151 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3152
3153         * docs/pwg/appendix-checklist.xml:
3154           Add some random notes on things to check when writing an element.
3155           This list can be extended as people see fit.
3156
3157 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
3158
3159         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
3160         (gst_queue_link_src): Allow for renegotiating the caps of the sink
3161         pad. The queue will now wait until it is empty and forward the new
3162         caps to the source.
3163         * gst/gstbin.c (gst_bin_set_element_sched)
3164         (gst_bin_unset_element_sched): Make sure that all elements and
3165         links are registered and unregistered with the scheduler exactly
3166         once. This elaborates on a fix by Benjamin Otte, but
3167         guarantees that decoupled elements are also registered.
3168
3169 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3170
3171         * docs/manual/quotes.xml:
3172           add a quote
3173         * configure.ac:
3174         * gst/gst.c:
3175         * gst/gstinfo.c:
3176           add LIBDIR and move init message higher up so it's at the start
3177
3178 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3179
3180         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
3181         * gstreamer.spec.in: add fair
3182
3183 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3184
3185         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3186         * gst/elements/gstidentity.c: (gst_identity_class_init):
3187           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
3188           <teuf@gnome.org> (#157263).
3189         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3190         (gst_type_find_handle_src_query):
3191           Subtract size of internally stored data from position queries.
3192
3193 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
3194
3195         * gst/schedulers/fairscheduler.c:
3196         * gst/schedulers/faircothreads.c:
3197         * gst/schedulers/faircothreads.h:
3198         New cothread based scheduler: Fair scheduler.
3199         * gst/schedulers/gthread-cothreads.h: 
3200         Add the standard #if around the whole file.
3201         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
3202         compilation of the functions defined in this file. This is
3203         necessary to be able to use this file as a normal header.
3204         * gst/schedulers/Makefile.am: Add compiling support for fair
3205         scheduler.
3206         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
3207         scheduler cothreads layer from documentation generation.
3208
3209 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3210
3211         * gst/autoplug/gstspideridentity.c:
3212         (gst_spider_identity_sink_loop_type_finding):
3213           Don't crash if that function is not implemented.
3214
3215 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3216
3217         * docs/pwg/advanced-types.xml:
3218           Another typo.
3219
3220 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3221
3222         * docs/pwg/intro-preface.xml:
3223           Hm, ok, so the brackets weren't really useful...
3224         * docs/pwg/other-ntoone.xml:
3225           Fix embarassing typo.
3226
3227 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3228
3229         * docs/pwg/intro-preface.xml:
3230           Rewrite preface.
3231
3232 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3233
3234         * docs/pwg/advanced-scheduling.xml:
3235         * docs/pwg/advanced-tagging.xml:
3236         * docs/pwg/advanced-types.xml:
3237         * docs/pwg/building-boiler.xml:
3238         * docs/pwg/building-chainfn.xml:
3239         * docs/pwg/building-signals.xml:
3240         * docs/pwg/building-state.xml:
3241         * docs/pwg/building-testapp.xml:
3242         * docs/pwg/intro-basics.xml:
3243         * docs/pwg/other-manager.xml:
3244         * docs/pwg/other-source.xml:
3245           Typo fixes.
3246         * docs/pwg/other-manager.xml:
3247           Add some first content. No example code yet.
3248         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3249           Remove double newlines.
3250
3251 2004-11-04  Wim Taymans  <wim@fluendo.com>
3252
3253         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3254         (remove_from_group), (normalize_group), (group_migrate_connected),
3255         (gst_opt_scheduler_iterate):
3256         * testsuite/schedulers/.cvsignore:
3257         * testsuite/schedulers/Makefile.am:
3258         * testsuite/schedulers/queue_link.c: (main):
3259         Added testcase for scheduler segfault.
3260         Fix scheduler segfault when removing a decoupled
3261         entry point as the last element from a group.
3262
3263 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3264
3265         * gst/gstmarshal.list: add missing marshaller, fixes build
3266
3267 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3268
3269         * docs/random/signal: added notes about using BOXED for GstBuffer
3270         signal marshallers, not POINTER
3271
3272 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3273
3274         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3275         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
3276         POINTER=>BOXED changes to marshal GstBuffers
3277
3278 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3279
3280         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
3281         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
3282
3283 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
3284
3285         * docs/gst/gstreamer-sections.txt:
3286         * docs/gst/tmpl/gstcaps.sgml:
3287         * docs/gst/tmpl/gsterror.sgml:
3288         * docs/gst/tmpl/gstinfo.sgml:
3289         * docs/gst/tmpl/gstmacros.sgml:
3290         * docs/gst/tmpl/gstutils.sgml:
3291         * docs/random/ensonic/interfaces.txt:
3292         * gst/gstinfo.h:
3293           added some more docs, removed two obsolete defines
3294
3295 2004-11-02  Kjartan Maraas <as at gnome.org>
3296
3297         reviewed by: Wim Taymans, Ronald Bultje.
3298
3299         * gst/cothreads.c: (cothread_create):
3300         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3301         (gst_bin_child_state_change_func):
3302         * gst/gstbuffer.c: (gst_buffer_span):
3303         * gst/gstelement.c: (gst_element_get_index),
3304         (gst_element_get_event_masks), (gst_element_get_query_types),
3305         (gst_element_get_formats):
3306         * gst/gsterror.c: (_gst_core_errors_init),
3307         (_gst_library_errors_init), (_gst_resource_errors_init),
3308         (_gst_stream_errors_init):
3309         * gst/gstobject.c: (gst_object_default_deep_notify):
3310         * gst/gstpad.c: (gst_pad_get_event_masks),
3311         (gst_pad_get_internal_links_default):
3312         * gst/gstplugin.c: (gst_plugin_register_func),
3313         (gst_plugin_get_module):
3314         * gst/gststructure.c: (gst_structure_get_string),
3315         (gst_structure_get_abbrs), (gst_structure_from_abbr),
3316         (gst_structure_to_abbr):
3317         * gst/gstutils.c: (gst_print_element_args):
3318         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3319         (setup_group_scheduler), (gst_opt_scheduler_iterate):
3320         Aplied part of patch #157127: Cleanup of issues reported by 
3321         sparse.
3322         Also do not try to use cothreads when there is no cothread
3323         context yet.
3324
3325 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
3326
3327         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3328         (gst_opt_scheduler_iterate):
3329         Applied patch #154061. Running a pipeline in which an element 
3330         calls GST_ELEMENT_ERROR in the chain function, the opt 
3331         scheduler doesn't unref the chain so it never gets freed.
3332
3333 2004-11-02  Wim Taymans  <wim@fluendo.com>
3334
3335         * gst/gststructure.c: (gst_structure_get_abbrs),
3336         (gst_structure_from_abbr), (gst_structure_to_abbr):
3337         Remove that ugly if-then thing in the code that converts
3338         between strings and types.
3339
3340 2004-11-02  Wim Taymans  <wim@fluendo.com>
3341
3342         * gst/gstscheduler.c: (gst_scheduler_add_element),
3343         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
3344         Aplied clock distribution patch, this should fix bug
3345         #148787.
3346
3347 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3348
3349         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
3350
3351         * po/LINGUAS:
3352         * po/nb.po:
3353           Added Norwegian Bokmaal translation
3354
3355 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3356
3357         * tools/gst-inspect.c: (print_signal_info):
3358           print signal arguments as pointers if they are
3359
3360 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
3361
3362         * docs/pwg/building-boiler.xml:
3363           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
3364
3365 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3366
3367         * gst/parse/parse.l:
3368         * testsuite/parse/parse1.c: (main):
3369         Since parse can do 'element name=a:b' make 'a:b.' work as
3370         well. 
3371         Added testcase to verify fix.
3372
3373 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3374
3375         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
3376         Use the realpad when printing the direction.
3377         Add extra \n when printing extensions of typefind factories.
3378
3379 2004-10-13  David Schleef  <ds@schleef.org>
3380
3381         * examples/manual/Makefile.am: $< isn't portable in Makefile
3382         rules.
3383
3384 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
3385
3386         * docs/gst/tmpl/gstobject.sgml:
3387         * docs/gst/tmpl/gstplugin.sgml:
3388         * docs/gst/tmpl/gstpluginfeature.sgml:
3389         * docs/gst/tmpl/gstregistry.sgml:
3390         * docs/gst/tmpl/gstversion.sgml:
3391         * gst/gstbin.c:
3392           more api documentation
3393         * gst/gstplugin.c: (gst_plugin_register_func),
3394         (gst_plugin_check_file), (gst_plugin_load_file):
3395           better error signaling and logging
3396
3397 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3398
3399         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
3400           Subtract current queue contents from position queries.
3401
3402 2004-10-11  Johan Dahlin  <johan@gnome.org>
3403
3404         * gst/gsturi.c (gst_uri_get_location): unescape string
3405         (gst_uri_construct): escape string.
3406
3407 2004-10-11  Benjamin Otte  <otte@gnome.org>
3408
3409         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
3410         (gst_pad_try_set_caps_nonfixed):
3411           allow renegotiation of unconnected pads (as inside spider). Simply
3412           return OK if unconnected - mimic try_set_caps there.
3413
3414 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3415
3416         * gst/gstbin.c: (gst_bin_sync_children_state):
3417           Add missing break.
3418
3419 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3420
3421         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
3422         Set element to EOS before sending EOS event
3423
3424 2004-10-08  Wim Taymans  <wim at fluendo dot com>
3425
3426         * gst/elements/gsttypefindelement.c:
3427         (gst_type_find_element_handle_event):
3428         Handle EOS events when doing the transition from
3429         typefind to data passing. This should fix the
3430         infinite loops in short files.
3431
3432 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3433
3434         * gst/gstthread.c: (gst_thread_change_state),
3435         (gst_thread_child_state_change):
3436         Make sure no iteration happens while performing
3437         the state change as it could mess up the internal
3438         consistency of the thread state.
3439
3440 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3441
3442         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
3443         (gst_thread_change_state), (gst_thread_child_state_change):
3444         Do not try to grab the iterate lock in the state change method
3445         when we are in the same thread as the iterate or else we
3446         could deadlock. Some other cleanups.
3447
3448 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3449
3450         * configure.ac:
3451           bump nano to cvs
3452
3453 === release 0.8.7 ===
3454
3455 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3456
3457         * configure.ac:
3458         * NEWS:
3459         * RELEASE:
3460         * configure.ac:
3461           releasing 0.8.7, "A Cruise"
3462
3463 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3464
3465         * docs/random/mimetypes:
3466         Add an entry for Sony ATRAC3 audio format with mime-type
3467         used by rmdemux et riff-read
3468
3469 2004-10-06  Wim Taymans  <wim at fluendo dot com>
3470
3471         * gst/elements/gsttypefindelement.c: (stop_typefinding):
3472         Push the buffer store instead of clearing it in case that
3473         the stream is not seekable.
3474
3475 2004-10-06  Wim Taymans  <wim at fluendo dot com>
3476
3477         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
3478         (gst_thread_main_loop):
3479         Lock the iteration and the state change so that automatic
3480         negotiation and fixation does not happen at the same time
3481         as the in stream negotiation.
3482
3483 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3484
3485         * configure.ac:
3486           bump nano to cvs
3487
3488 === release 0.8.6 ===
3489
3490 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3491
3492         * configure.ac:
3493         * NEWS:
3494         * RELEASE:
3495         * configure.ac:
3496           releasing 0.8.6, "Narc"
3497
3498 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3499
3500         * configure.ac:
3501           prerel bump
3502
3503 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3504
3505         patch by: Steve Lhomme
3506
3507         * gst/elements/gstfakesrc.c:
3508         * gst/elements/gstidentity.c:
3509         * gst/gstthread.c:
3510           Fix for #153881
3511
3512 2004-10-01  Wim Taymans  <wim at fluendo dot com>
3513
3514         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
3515         Fix threadsafety of the crc checking function.
3516
3517 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
3518
3519         patch by: Ronald Bultje
3520
3521         * gst/elements/gsttypefindelement.c: (stop_typefinding),
3522         (gst_type_find_element_handle_event),
3523         (gst_type_find_element_chain):
3524         * gst/elements/gsttypefindelement.h:
3525          #153657.
3526          Filter out discont event from seekable sources when typefind
3527          asks them to seek.  Fixes typefind with demuxers for
3528          avi, asf and matroska.
3529
3530 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
3531
3532         * docs/gst/gstreamer-sections.txt:
3533         * gst/gstcaps.c:
3534         * gst/gstcaps.h:
3535         * gst/gstpad.c:
3536           Revert preferred caps: (#147789)
3537
3538 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
3539
3540         * win32/dirent.c:
3541           fix a memory leak
3542
3543 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3544
3545         * configure.ac:
3546           bump for prerelease
3547
3548 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3549
3550         * docs/Makefile.am:
3551         * docs/manual/elements-api.xml:
3552           restructure so that common stuff is shown first
3553         * docs/manual/init-api.xml:
3554           convert to examples
3555         * docs/manual/manual.xml:
3556         * docs/manuals.mak:
3557         * docs/url.entities:
3558           link to API on the website, possibly override later in build
3559         * examples/manual/.cvsignore:
3560           ignore more
3561         * examples/manual/Makefile.am:
3562           add more examples
3563         * examples/manual/extract.pl:
3564           error out on failure
3565
3566 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3567
3568         * docs/gst/tmpl/gstthread.sgml:
3569         * docs/manual/init-api.xml:
3570         * examples/manual/Makefile.am:
3571           convert two code bits to examples
3572
3573 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3574
3575         * gst/gstelement.c: (gst_element_change_state):
3576           Well, actually, I was about to remove this insane assert when
3577           I noticed Wim already did that. A warning is nice so we can
3578           fix actual ugs (using --g-fatal-warnings and backtraces), so
3579           I added that instead.
3580
3581 2004-09-06  Wim Taymans  <wim@fluendo.com>
3582
3583         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
3584         (gst_element_threadsafe_properties_post_run),
3585         (gst_element_set_state), (gst_element_change_state):
3586         Added extra refcounting around various places. 
3587
3588 2004-09-06  Wim Taymans  <wim@fluendo.com>
3589
3590         * gst/gstpad.c: (gst_pad_link_call_link_functions):
3591         Fix debug info.
3592
3593 2004-09-06  Wim Taymans  <wim@fluendo.com>
3594
3595         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3596         (remove_from_group):
3597         Some more debug info.
3598
3599 2004-09-03  Wim Taymans  <wim@fluendo.com>
3600
3601         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3602         (gst_fakesrc_init), (gst_fakesrc_set_clock),
3603         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3604         (gst_fakesrc_get), (gst_fakesrc_change_state):
3605         * gst/elements/gstfakesrc.h:
3606         * gst/elements/gstidentity.c: (gst_identity_class_init),
3607         (gst_identity_init), (gst_identity_chain),
3608         (gst_identity_set_property), (gst_identity_get_property),
3609         (gst_identity_change_state):
3610         * gst/elements/gstidentity.h:
3611         Added datarate properties to limit the datarate.
3612
3613 >>>>>>> 1.808
3614 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3615
3616         * gst/autoplug/gstspider.c: (plugin_init):
3617           don't set a rank. We don't want to autoplug by inserting spiders.
3618
3619 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3620
3621         * gst/autoplug/gstspider.c: (gst_spider_class_init),
3622         (gst_spider_identity_plug):
3623           add a template for spider's sink
3624         * gst/gst.c: (gst_register_core_elements):
3625           queue's rank should be NULL, we don't want spider to add it.
3626
3627 2004-08-18  David Schleef  <ds@schleef.org>
3628
3629         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
3630         * docs/libs/Makefile.am: same
3631         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
3632         * docs/random/ds/0.9-planning: random additions
3633         * docs/random/ds/0.9-suggested-changes: same
3634         * gst/gstxml.h: remove vestigal GstXMLNs definition
3635
3636         Preferred caps: (#147789)
3637         * docs/gst/gstreamer-sections.txt: Add symbols
3638         * docs/gst/tmpl/gstcaps.sgml: Add symbols
3639         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
3640         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
3641         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
3642         (gst_caps_get_preferred), (gst_caps_set_preferred),
3643         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
3644         (gst_caps_use_preferred): Handle caps preferences
3645         * gst/gstcaps.h: Add caps preferences
3646         * gst/gstpad.c: (gst_pad_link_get_preferred),
3647         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
3648         (gst_pad_renegotiate), (gst_pad_guess_preferred),
3649         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
3650         negotiation.
3651
3652 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3653
3654         * gst/autoplug/gstspideridentity.c:
3655         (gst_spider_identity_request_new_pad):
3656         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
3657         (gst_aggregator_init):
3658         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3659         (gst_fakesink_init):
3660         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3661         (gst_fakesrc_init):
3662         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
3663         (gst_fdsink_init):
3664         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
3665         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
3666         (gst_filesink_init):
3667         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3668         (gst_filesrc_init):
3669         * gst/elements/gstidentity.c: (gst_identity_base_init),
3670         (gst_identity_init):
3671         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
3672         (gst_multifilesrc_init):
3673         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
3674         (gst_pipefilter_init):
3675         * gst/elements/gststatistics.c: (gst_statistics_base_init),
3676         (gst_statistics_init):
3677         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
3678         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
3679           s/gst_pad_new/&_from_template/
3680           register pad templates in the base_init function
3681           add static pad template definitions
3682
3683 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3684
3685         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
3686         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
3687         * testsuite/refcounting/pad.c: (main):
3688         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
3689           s/gst_pad_new/&_from_template/
3690           prepare deprecation of gst_pad_new
3691
3692 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3693
3694         patch by: Luca Ognibene <skaboy81@virgilio.it>
3695
3696         * gst/gstcaps.c:
3697         * gst/gstelement.c:
3698         * gst/gstpad.c:
3699         * gst/gstxml.c:
3700           fix memleaks.  Fixes #150001
3701
3702 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3703
3704         * docs/random/ds/0.9-suggested-changes:
3705           add notes - mostly about pad templates
3706
3707 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
3708
3709         * win32/GStreamer.vcproj:
3710           temporary locale files are .gmo not .mo
3711
3712 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3713
3714         * configure.ac: bump nano to cvs
3715
3716 === release 0.8.5 ===
3717
3718 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3719
3720         * configure.ac:
3721           releasing 0.8.5, "Stuttgart"
3722         * NEWS:
3723         * RELEASE:
3724         * configure.ac:
3725         * docs/random/release:
3726           updates for release
3727
3728 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3729
3730         patch by: Wim Taymans (wim@fluendo.com)
3731
3732         * gst/gstbuffer.c:
3733         * gst/gstindex.h:
3734         * libs/gst/dataprotocol/dataprotocol.c:
3735           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
3736
3737 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3738
3739         * Makefile.am:
3740         * win32/MANIFEST:
3741           add win32 dir to the build.  Fixes #149981.
3742
3743 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3744
3745         * configure.ac:
3746           bump libtool versioning
3747         * gst/gststructure.c:
3748           mark function as static
3749         * po/af.po:
3750         * po/az.po:
3751         * po/ca.po:
3752         * po/cs.po:
3753         * po/en_GB.po:
3754         * po/fr.po:
3755         * po/nl.po:
3756         * po/sq.po:
3757         * po/sr.po:
3758         * po/sv.po:
3759         * po/tr.po:
3760         * po/uk.po:
3761           translations update
3762         * win32/README.txt:
3763           trademark protection
3764
3765 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
3766
3767         * configure.ac:
3768           fix GST_ORIGIN
3769           set GST_PACKAGE to source, and distinguish between release and other
3770         * tools/gst-inspect.c:
3771           print out plugin an element factory is part of so we see this info
3772
3773 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
3774
3775         * docs/gst/gstreamer-sections.txt:
3776         * docs/gst/tmpl/gstbuffer.sgml:
3777         * docs/gst/tmpl/gstschedulerfactory.sgml:
3778           reorder docs a little, make GstBuffer's more sensible.
3779         * gst/gstbuffer.h:
3780           API: added GST_BUFFER_FLAG_DELTA_UNIT
3781         * gst/gstscheduler.c:
3782           comment API addition
3783
3784 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3785
3786         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
3787           work with non-regular files that can be mmapped (like /dev/zero)
3788         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
3789           get rid of typefinds that require a seek when we can't seek instead
3790           of trying them over and over again
3791         * tools/gst-launch.c: (idle_func), (error_cb), (main):
3792           return non-zero failure value when the pipeline was interrupted or
3793           an error occurred
3794
3795 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
3796
3797         * win32/config.h:
3798         * win32/GStreamer.vcproj:
3799           compile and install the locales
3800
3801 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
3802
3803         * gst/gstvalue.c:
3804           fix a possible memory leak under Windows
3805
3806 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
3807
3808         * win32/GStreamer.vcproj:
3809           fix a memory leak that occured under Windows
3810         * win32/gstreamer.def:
3811           add gst_scheduler_register
3812
3813 2004-08-11  Benjamin Otte  <otte@gnome.org>
3814
3815         * docs/gst/gstreamer-sections.txt:
3816         * gst/gstscheduler.c: (gst_scheduler_register):
3817         * gst/gstscheduler.h:
3818           API:
3819           add gst_scheduler_register shortcut similar to gst_element_register
3820         * gst/schedulers/entryscheduler.c: (plugin_init):
3821         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
3822         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
3823           use it
3824
3825 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
3826
3827         * gst/gstvalue.h:
3828           fix a memory leak that occured under Windows
3829
3830 2004-08-10  Colin Walters  <walters@redhat.com>
3831
3832         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
3833         Don't use O_EXCL to open temporary registry.  It will prevent
3834         registry creation if a temporary one already exists, which
3835         is unnecessary.
3836
3837 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
3838
3839         * docs/gst/gstreamer-sections.txt:
3840         * docs/gst/tmpl/gstvalue.sgml:
3841           remove some valuable stuff from the documentation due to the use of GST_EXPORT
3842
3843 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
3844
3845         * win32/gstbytestream.vcproj:
3846         * win32/gstelements.vcproj:
3847         * win32/gstgetbits.vcproj:
3848         * win32/gst-inspect.vcproj:
3849         * win32/gst-launch.vcproj:
3850         * win32/gstoptimalscheduler.vcproj:
3851         * win32/GStreamer.vcproj:
3852         * win32/gst-register.vcproj:
3853         * win32/gstspider.vcproj:
3854           update the include and lib dirs to fit standard libraries as
3855           described in the Win32 manual
3856
3857 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
3858
3859         * win32/config.h:
3860         * win32/gstversion.h:
3861           enable NLS again, push the version number for the coming 0.8.5 release
3862
3863 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
3864
3865         * gst/gstvalue.h:
3866           export gst_type_XXX for windows DLLs
3867
3868 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3869
3870         * docs/faq/gst-uninstalled:
3871           fix PKG_CONFIG_PATH and PYTHONPATH
3872         * gst/schedulers/Makefile.am:
3873           cleanup
3874         * libs/gst/bytestream/bytestream.c:
3875           remove newline
3876         * po/LINGUAS:
3877         * po/sq.po:
3878           adding Albanian translation (Laurent Dhima)
3879         * po/cs.po:
3880           updated
3881
3882 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3883
3884         * po/ca.po:
3885         * po/sv.po:
3886           updated translations
3887
3888 2004-08-04  Benjamin Otte  <otte@gnome.org>
3889
3890         * tests/mass_elements.c: (main):
3891           allow specifying src and sink element explicitly, so I can test
3892           videotestsrc instead of fakesrc
3893
3894 2004-08-04  Benjamin Otte  <otte@gnome.org>
3895
3896         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
3897         (gst_structure_id_empty_new), (gst_structure_empty_new),
3898         (gst_structure_copy):
3899           add gst_structure_id_empty_new_with_size to allow preallocating
3900           value array sizes. Use this in gst_structure_copy to get rid of
3901           reallocs.
3902           don't do quark=>string=>quark when copying structures
3903
3904 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
3905
3906         * docs/manual/win32.xml:
3907         * win32/README.txt:
3908           update documentation with the clean version of dependencies
3909
3910 2004-08-03  Benjamin Otte  <otte@gnome.org>
3911
3912         * gst/schedulers/entryscheduler.c:
3913         (gst_entry_scheduler_remove_element):
3914           fix for GST_DISABLE_DEBUG
3915         * tools/gst-launch.c: (print_tag):
3916           fixes for G_DISABLE_ASSERT
3917
3918 2004-08-03  Benjamin Otte  <otte@gnome.org>
3919
3920         * gst/gst.c: (gst_register_core_elements):
3921           fix for G_DISABLE_ASSERT
3922         * gst/gstinfo.c: (__gst_in_valgrind):
3923           add for GST_DISABLE_DEBUG
3924
3925 2004-08-03  Benjamin Otte  <otte@gnome.org>
3926
3927         * gst/parse/parse.l:
3928           fix for G_DISABLE_ASSERT
3929
3930 2004-08-03  Wim Taymans  <wim@fluendo.com>
3931
3932         * gst/gstbin.c: (gst_bin_get_type),
3933         (gst_bin_child_state_change_func):
3934         * gst/gstthread.c: (gst_thread_change_state):
3935         Backported some debug logging from a reverted patch
3936         Don't try to destroy the thread twice. Added some more
3937         debugging in GstThread. Unlock and signal even if we
3938         are in the thread context.
3939
3940 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3941
3942         * po/uk.po:
3943           updated translation
3944
3945 2004-07-30  David Schleef  <ds@schleef.org>
3946
3947         * gst/gstatomic_impl.h: Enable atomic code for x86_64
3948
3949 2004-07-29  David Schleef  <ds@schleef.org>
3950
3951         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
3952         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
3953
3954 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
3955
3956         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
3957         (gst_bin_add_func), (gst_bin_remove_func),
3958         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
3959         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
3960         (gst_bin_change_state_norecurse), (gst_bin_dispose),
3961         (gst_bin_sync_children_state):
3962         * gst/gstbin.h:
3963         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
3964         (gst_thread_change_state):
3965         * testsuite/states/Makefile.am:
3966           revert state change patches as agreed so we can rework them
3967           gradually
3968
3969 2004-07-29  Benjamin Otte  <otte@gnome.org>
3970
3971         * libs/gst/control/Makefile.am:
3972           link to libgstreamer (fixes Debian bug 262019, see
3973           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
3974
3975 2004-07-29  Wim Taymans  <wim@fluendo.com>
3976
3977         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
3978         (check_from_fraction_convert), (transform_test), (main):
3979         Make the test less pedantic about float roundoff errors.
3980
3981 2004-07-29  Benjamin Otte  <otte@gnome.org>
3982
3983         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
3984         (gst_filesrc_srcpad_event):
3985           make seek events to before start/after end of file not fail, but
3986           seek to start/end instead
3987         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
3988           add more output
3989
3990 2004-07-29  Benjamin Otte  <otte@gnome.org>
3991
3992         * gst/gstpad.c: (gst_pad_set_explicit_caps):
3993           check that caps are fixed
3994         * gst/gstpad.c: (gst_pad_template_new):
3995           don't try to simplify caps, costs too much time on gst_init
3996         * gst/gstplugin.c: (gst_plugin_add_feature):
3997           G_ERROR if features are added twice
3998         * gst/gsttypefind.c: (gst_type_find_register):
3999         * gst/gstelementfactory.c: (gst_element_register):
4000           don't add features twice
4001         * docs/random/ds/0.9-suggested-changes:
4002           add note about possible gst_init optimization
4003
4004 2004-07-28  David Schleef  <ds@schleef.org>
4005
4006         * testsuite/elements/Makefile.am:
4007         * testsuite/elements/struct_i386.h:
4008         * testsuite/elements/struct_size.c: (main):  A little test
4009         to keep distcheck from working if someone changes a structure
4010         size accidentally.
4011
4012 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4013
4014         * docs/libs/Makefile.am:
4015         * docs/libs/gstreamer-libs-docs.sgml:
4016         * docs/libs/gstreamer-libs-sections.txt:
4017         * docs/libs/tmpl/gstbytestream.sgml:
4018         * docs/libs/tmpl/gstcontrol.sgml:
4019         * docs/libs/tmpl/gstdataprotocol.sgml:
4020         * docs/libs/tmpl/gstgetbits.sgml:
4021         * libs/gst/bytestream/Makefile.am:
4022         * libs/gst/bytestream/bytestream.c:
4023         * libs/gst/bytestream/bytestream.h:
4024         * libs/gst/control/Makefile.am:
4025         * libs/gst/dataprotocol/Makefile.am:
4026         * libs/gst/getbits/Makefile.am:
4027         * libs/gst/getbits/getbits.h:
4028           various doc and style fixes, adding bytestream to libs docs.
4029
4030 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4031
4032         * docs/gst/gstreamer-docs.sgml:
4033         * docs/libs/Makefile.am:
4034         * docs/libs/gstreamer-libs-docs.sgml:
4035         * docs/libs/gstreamer-libs-sections.txt:
4036         * libs/gst/control/dparam.c:
4037           more doc fixes.  gst-libs docs now build the same way as gst.
4038
4039 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4040
4041         * configure.ac:
4042         * testsuite/Makefile.am:
4043         * testsuite/bins/Makefile.am:
4044         * testsuite/caps/Makefile.am:
4045         * testsuite/cleanup/Makefile.am:
4046         * testsuite/clock/Makefile.am:
4047         * testsuite/debug/Makefile.am:
4048         * testsuite/dlopen/Makefile.am:
4049         * testsuite/dynparams/Makefile.am:
4050         * testsuite/elements/.cvsignore:
4051         * testsuite/elements/Makefile.am:
4052         * testsuite/enumcaps/Makefile.am:
4053         * testsuite/enumcaps/enumcaps.c:
4054         * testsuite/ghostpads/Makefile.am:
4055         * testsuite/indexers/Makefile.am:
4056         * testsuite/negotiation/Makefile.am:
4057         * testsuite/parse/Makefile.am:
4058         * testsuite/plugin/Makefile.am:
4059         * testsuite/refcounting/Makefile.am:
4060         * testsuite/schedulers/.cvsignore:
4061         * testsuite/states/Makefile.am:
4062         * testsuite/tags/Makefile.am:
4063         * testsuite/threads/Makefile.am:
4064           fold enumcaps into caps dir
4065           clean up Makefile.am's for testsuite
4066
4067 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4068
4069         * docs/gst/Makefile.am:
4070         * docs/libs/Makefile.am:
4071           clean up docs build.  Fixes needless rebuilding of template files.
4072
4073 2004-07-28  Wim Taymans  <wim@fluendo.com>
4074
4075         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
4076         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
4077         Make sure that a bin state change tries to keep the children
4078         in sync. 
4079         Added debug logging to the thread.
4080
4081 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4082
4083         * win32/GStreamer.vcproj:
4084         * win32/gstreamer.def:
4085           more exports for the plugins
4086
4087 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4088
4089         * win32/gstgetbits.vcproj:
4090         * win32/gstgetbits.def:
4091         * win32/msvc71.sln:
4092           add support for the getbits plugin
4093
4094 2004-07-27  Wim Taymans  <wim@fluendo.com>
4095
4096         * gst/gstvalue.c: (gst_value_transform_double_fraction),
4097         (gst_value_transform_fraction_double), (_gst_value_initialize):
4098         * testsuite/caps/Makefile.am:
4099         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4100         (check_from_fraction_convert), (transform_test), (main):
4101         Added transform functions between double and fraction.
4102         Added testcase to verify transforms
4103
4104 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4105
4106         * win32/GStreamer.vcproj:
4107           rename GStreamer-0.8.lib to libgstreamer.lib
4108
4109 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4110
4111         * win32/gstelements.vcproj:
4112         * win32/gstoptimalscheduler.vcproj:
4113           fixes for the Release build
4114
4115 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4116
4117         * win32/config.h:
4118           update the version number
4119
4120 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4121
4122         * win32/GStreamer.vcproj:
4123           add gstinterface to the build
4124
4125 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4126
4127         * win32/gstreamer.def:
4128           add many definitions needed by plugins,
4129           GST_CAT_DEFAULT only available in the Debug build ?
4130
4131 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4132
4133         * gst/gstelement.c: (gst_element_set_eos_recursive):
4134           various whitespace fixes.
4135           doc fix, fixes #148497
4136
4137 2004-07-25  Benjamin Otte  <otte@gnome.org>
4138
4139         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
4140           don't delay links on the sink elements, it causes unnegotiated
4141           links.
4142         * gst/elements/gsttypefindelement.c:
4143         (gst_type_find_element_base_init):
4144           add our padtemplates, we indeed do have some.
4145         * gst/elements/gsttypefindelement.c:
4146         (gst_type_find_element_handle_event),
4147         (gst_type_find_element_chain):
4148           don't push data when typefinding failed.
4149         * gst/gstpad.c: (gst_pad_link_fixate):
4150           check that no fixate function returns empty caps.
4151         * gst/gstpad.c: (gst_pad_push):
4152           check that the link is negotiated before data gets pushed.
4153         * tools/gst-register.c: (main):
4154           don't assert (fixes #148283)
4155
4156 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4157
4158         * docs/gst/gstreamer-sections.txt:
4159         * docs/gst/tmpl/gstconfig.sgml:
4160           add GST_PLUGIN_EXPORT definition
4161
4162 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4163
4164         * gst/gstplugin.h:
4165         * gst/gstconfig.h.in:
4166         * win32/gstconfig.h:
4167         * win32/gstelements.def:
4168         * win32/gstelements.vcproj:
4169         * win32/gstoptimalscheduler.def:
4170         * win32/gstoptimalscheduler.vcproj:
4171         * win32/gstspider.def:
4172         * win32/gstspider.vcproj:
4173           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
4174
4175 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4176
4177         * docs/gst/gstreamer-sections.txt:
4178           remove GST_CAT_DEFAULT because the type has changed
4179
4180 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4181
4182         * win32/gstbytestream.vcproj:
4183         * win32/gstelements.vcproj:
4184         * win32/gst-inspect.vcproj:
4185         * win32/gst-launch.vcproj:
4186         * win32/gstoptimalscheduler.vcproj:
4187         * win32/GStreamer.vcproj:
4188         * win32/gst-register.vcproj:
4189         * win32/gstspider.vcproj:
4190         * win32/msvc71.sln:
4191           Copy the files where needed after building, The testsuite will be
4192           built separately
4193
4194 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4195
4196         * win32/config.h:
4197         * win32/README.txt:
4198         * docs/manual/win32.xml:
4199         Fixed the plugin and GStreamer location
4200
4201 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4202
4203         * win32/gstreamer.def:
4204         More exports for the plugins
4205
4206 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4207
4208         * gst/gstinfo.h:
4209         Marc was right, we need to export literally GST_CAT_DEFAULT
4210
4211 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4212
4213         * win32/config.h:
4214         NLS crashes in gettext, disabled until this is solved
4215
4216 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4217
4218         * win32/gst-inspect.vcproj:
4219         * win32/gst-launch.vcproj:
4220         Should use NLS when available
4221
4222 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4223
4224         * gst/registries/gstxmlregistry.c:
4225         removing the file doesn't seem to be a good idea on Linux
4226
4227 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4228
4229         * gst/registries/gstxmlregistry.c:
4230         Remove the registry before renaming the tempfile (needed for Windows)
4231
4232 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4233
4234         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
4235         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
4236         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
4237         * gst/elements/gstmultifilesrc.h:
4238         Added newmedia property so it generates newmedia events between each
4239         file when property is set, as well as fixed eos handling
4240
4241 2004-07-22  David Schleef  <ds@schleef.org>
4242
4243         * gst/gststructure.c: (gst_structure_id_empty_new),
4244         (gst_structure_empty_new):  Set type field correctly.
4245         * gst/gststructure.h: Check type field correctly.
4246         * testsuite/caps/Makefile.am:
4247         * testsuite/caps/structure.c: (test1), (main): Add a very small
4248         test for structures.
4249
4250 2004-07-22  David Schleef  <ds@schleef.org>
4251
4252         * docs/random/ds/0.9-suggested-changes: more comments
4253         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
4254
4255 2004-07-22  Benjamin Otte  <otte@gnome.org>
4256
4257         * gst/gstelementfactory.c: (gst_element_register):
4258           set the factory in the class struct, so gst_element_get_factory
4259           actually works
4260         * gst/parse/grammar.y:
4261           set element to playing when it gets unlocked as we can't rely on the
4262           bin state - all elements in the bin state might still be locked in
4263           NULL)
4264
4265 2004-07-22  Benjamin Otte  <otte@gnome.org>
4266
4267         * gst/gstelement.c: (gst_element_set_state_func):
4268           make this a static function
4269
4270 2004-07-22  Wim Taymans  <wim@fluendo.com>
4271
4272         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
4273         (gst_opt_scheduler_pad_link):
4274         fix 147894-2 and the group_link problem.
4275
4276 2004-07-22  Wim Taymans  <wim@fluendo.com>
4277
4278         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4279         (handoff_identity), (main):
4280         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4281         (handoff_identity), (main):
4282         * testsuite/schedulers/Makefile.am:
4283         * testsuite/schedulers/group_link.c: (main):
4284         Show bug in scheduler when linking chain and loop based element 
4285         where the chain based element was not yet in a group.
4286
4287 2004-07-21  Benjamin Otte  <otte@gnome.org>
4288
4289         * gst/.cvsignore:
4290         * gst/autoplug/.cvsignore:
4291         * gst/elements/.cvsignore:
4292         * gst/indexers/.cvsignore:
4293         * libs/gst/bytestream/.cvsignore:
4294         * libs/gst/control/.cvsignore:
4295         * libs/gst/getbits/.cvsignore:
4296         * testsuite/states/.cvsignore:
4297         * testsuite/threads/.cvsignore:
4298           keep this up to date, since I seem to be the only one who cares
4299           about not missing files on commits (editor's note: no you don't,
4300           but feel free to change them at the time you add stuff instead
4301           of later on)
4302
4303 2004-07-21  Benjamin Otte  <otte@gnome.org>
4304
4305         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4306         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
4307         (gst_bin_child_state_change_func), (set_kid_state_func),
4308         (gst_bin_set_state), (gst_bin_change_state_norecurse):
4309           make state changes work correctly and reentrant (so removing
4310           elements from bins during state changes of bins doesn't cause
4311           segfaults or even wrong states)
4312           add debugging category and debugging output to print children states
4313         * gst/gstbin.c: (gst_bin_dispose): 
4314           add some assertion checks
4315         * gst/gstbin.h:
4316         * gst/gstbin.c: (gst_bin_sync_children_state):
4317           deprecate this function - it just does gst_bin_set_state (bin,
4318           GST_STATE (bin)) 
4319         * testsuite/threads/queue.c: (main):
4320           don't use gst_bin_sync_children_state anymore
4321         * testsuite/states/Makefile.am:
4322         * testsuite/states/bin.c:
4323           test that the state changes of bins work as expected
4324         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
4325           some adjustments to change states correctly, too
4326         * gst/gstthread.c: (gst_thread_change_state):
4327           don't enable/disable "threadsafe" properties, they're unused and
4328           cause random segfaults
4329         * testsuite/threads/Makefile.am:
4330           the queue check randomly passes now, ignore it
4331
4332 2004-07-21  Benjamin Otte  <otte@gnome.org>
4333
4334         * gst/gstpad.c:
4335           check if data is NULL before outputting debug info. (fixes #145100)
4336
4337 2004-07-21  Benjamin Otte  <otte@gnome.org>
4338
4339         * gst/schedulers/entryscheduler.c:
4340         (gst_entry_scheduler_loop_wrapper),
4341         (gst_entry_scheduler_chain_wrapper),
4342         (gst_entry_scheduler_get_wrapper):
4343           reset the state when the cothread starts, so we don't get assertion
4344           failures on restarting of cothreads
4345
4346 2004-07-20  Benjamin Otte  <otte@gnome.org>
4347
4348         * gst/gstelement.c: (gst_element_link_pads_filtered):
4349           use correct sinkpad, if only sinkpad is specified, but not srcpad
4350           (fixes #147889)
4351         * gst/gstelement.c: (gst_element_set_state_func),
4352         (gst_element_change_state): ref/unref the element, signal handlers
4353         could get rid of the element otherwise
4354
4355 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4356
4357         * docs/random/ds/0.9-suggested-changes:
4358           Make note about renaming fixed-list to array.
4359         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
4360         (_gst_value_initialize):
4361           Add array intersections.
4362         * testsuite/caps/intersect2.c: (main):
4363           Add test for array intersections.
4364
4365 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4366
4367         * configure.ac: back to cvs
4368
4369 === release 0.8.4 ===
4370
4371 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4372
4373         * configure.ac:
4374           releasing 0.8.4, "Paella"
4375           bump libtool versioning
4376
4377 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4378
4379         * po/LINGUAS:
4380         * po/ca.po:
4381           adding Catalan translation (Jordi Mallach)
4382
4383 2004-07-20  Wim Taymans  <wim@fluendo.com>
4384
4385         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4386         (handoff_identity), (main):
4387         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4388         (handoff_identity), (main):
4389         * testsuite/schedulers/Makefile.am:
4390         Added failing testcase for variant of #147894
4391
4392 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4393
4394         patch by: David Moore
4395
4396         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4397         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
4398         (group_migrate_connected):
4399         * testsuite/schedulers/Makefile.am:
4400           fix for #142813 (Deadlock in optimal scheduler)
4401
4402 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4403
4404         patch by: Wim Taymans
4405
4406         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4407         (gst_opt_scheduler_schedule_run_queue),
4408         (gst_opt_scheduler_get_wrapper), (get_group),
4409         (group_migrate_connected):
4410         * testsuite/schedulers/Makefile.am:
4411           fix for #147819 (Add some checks in the opt scheduler)
4412
4413 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4414
4415         patch by: Benjamin Otte
4416
4417         * gst/gstelementfactory.c: (__gst_element_details_set):
4418           fix for #147929: running gst-register in non-utf8 locale can cause
4419           invalid registry
4420
4421 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4422
4423         patch by: Wim Taymans
4424
4425         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
4426         (group_has_element), (element_get_reachables_func),
4427         (group_migrate_connected):
4428           fix for #147894 (opt scheduler decoupled elements mismanagement)
4429         * testsuite/schedulers/Makefile.am:
4430           testsuite app now passes
4431
4432 2004-07-19  Wim Taymans  <wim@fluendo.com>
4433
4434         * testsuite/schedulers/147819.c: (handoff_identity1),
4435         (handoff_identity2), (main):
4436         * testsuite/schedulers/Makefile.am:
4437         Added testcase for bug 147819
4438
4439 2004-07-19  Wim Taymans  <wim@fluendo.com>
4440
4441         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4442         (handoff_identity), (main):
4443         * testsuite/schedulers/Makefile.am:
4444         Added testcase for bug 147894
4445
4446 2004-07-16  Wim Taymans  <wim@fluendo.com>
4447
4448         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
4449         * testsuite/schedulers/142183.c: (handoff_identity), (main):
4450         * testsuite/schedulers/Makefile.am:
4451         Added testsuite for bug 142183 in its two incarnations. Refcount
4452         is not increased for scheduled elements and threadsafe properties
4453         mutexes are not properly unlocked.
4454
4455 2004-07-16  Wim Taymans  <wim@fluendo.com>
4456
4457         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
4458         (create_chain), (destroy_chain), (create_group), (destroy_group),
4459         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
4460         (group_dec_link), (gst_opt_scheduler_pad_link),
4461         (group_inc_links_for_element), (group_migrate_connected):
4462         Call group_inc_link with the proper src->sink ordering -- 
4463         break this, and we break sort_chain. patch from wingo for bug
4464         147713.
4465         Partially revert patch 1.89. When adding a loop based element to 
4466         the scheduler, the links to other groups are automatically followed
4467         and incremented. This should not happen because the bin will call
4468         pad_link explicitly for those connection, resulting in them counted 
4469         twice. Results in assertion failure on pipeline cleanup.
4470
4471 2004-07-16  Wim Taymans  <wim@fluendo.com>
4472
4473         * testsuite/schedulers/143777-2.c: (main):
4474         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
4475         (main):
4476         * testsuite/schedulers/Makefile.am:
4477         Added cleanup code to testcase 143777-2.
4478         Added testcase to show bug 147713, does not really show the
4479         deadlock as I can't figure out how to trigger it, but it does
4480         demonstrate bad ordering in the scheduler.
4481
4482 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4483
4484         * gst/gstvalue.c: (gst_value_deserialize_fraction):
4485           change strndup to g_strndup.  Fixes #147707
4486
4487 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4488
4489         * po/af.po:
4490         * po/az.po:
4491         * po/cs.po:
4492         * po/en_GB.po:
4493         * po/fr.po:
4494         * po/nl.po:
4495         * po/sr.po:
4496         * po/sv.po:
4497         * po/tr.po:
4498         * po/uk.po:
4499           updated translations
4500
4501 2004-07-16  Benjamin Otte  <otte@gnome.org>
4502
4503         * gst/gstvalue.c: (gst_greatest_common_divisor):
4504           use ints and return ints, fractions only use ints, too, so this
4505           avoids accidently casting multiplications to unsigned
4506         (gst_value_lcopy_fraction): it's ints, not uint32
4507         (gst_value_set_fraction): disallow minint, multiplying and negation
4508           are broken with it
4509         (gst_value_fraction_multiply): fix to make large numbers work and get
4510         rid of the assumption that the multiplication of two ints fits an
4511         int64 - dunno if that's true for all systems
4512         * testsuite/caps/Makefile.am:
4513         * testsuite/caps/fraction-multiply-and-zero.c:
4514         (check_multiplication), (check_equal), (zero_test), (main):
4515           add tests for all the stuff above
4516         * testsuite/caps/value_compare.c: (test1):
4517           fix comment
4518         * tests/.cvsignore:
4519         * testsuite/caps/.cvsignore:
4520         * testsuite/debug/.cvsignore:
4521         * testsuite/dlopen/.cvsignore:
4522         * testsuite/states/.cvsignore:
4523           get up to date
4524
4525 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4526
4527         * docs/manual/bins-api.xml:
4528         * docs/manual/factories.xml:
4529         * docs/manual/helloworld.xml:
4530         * docs/manual/links-api.xml: 
4531           fixes for out of date info, incorrect info and grammar
4532
4533 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4534
4535         * docs/manual/pads.xml:
4536         * docs/manual/pads-api.xml: grammar fix
4537
4538 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4539
4540         * docs/manual/pads-api.xml: typo + grammar fix
4541
4542 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4543
4544         * docs/gst/gstreamer-sections.txt:
4545           add new symbols
4546         * docs/gst/tmpl/gstelement.sgml:
4547         * docs/gst/tmpl/gstpad.sgml:
4548         * docs/gst/tmpl/gsttypes.sgml:
4549         * docs/gst/tmpl/gstvalue.sgml:
4550           update docs
4551         * gst/gststructure.c: (gst_structure_set_valist),
4552         (gst_structure_from_abbr), (gst_structure_to_abbr):
4553         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
4554         (gst_greatest_common_divisor), (gst_value_init_fraction),
4555         (gst_value_copy_fraction), (gst_value_collect_fraction),
4556         (gst_value_lcopy_fraction), (gst_value_set_fraction),
4557         (gst_value_get_fraction_numerator),
4558         (gst_value_get_fraction_denominator),
4559         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
4560         (gst_value_deserialize_fraction),
4561         (gst_value_transform_fraction_string),
4562         (gst_value_transform_string_fraction),
4563         (gst_value_compare_fraction), (_gst_value_initialize):
4564         * gst/gstvalue.h:
4565           adding GstFraction GValue type, get/set, and multiply
4566         * testsuite/caps/Makefile.am:
4567         * testsuite/caps/fraction.c: (test), (main):
4568         * testsuite/caps/string-conversions.c: (main):
4569         * testsuite/caps/value_compare.c: (test1), (main):
4570           add regression tests for GstFraction
4571
4572 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4573         
4574         * docs/manual/init-api.xml: Grammar fix
4575
4576 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4577
4578         * docs/manual/states.xml: Fix inconsistent information
4579
4580 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4581
4582         * gst/gstelement.c: (gst_element_set_state):
4583         * gst/gstpad.c: (gst_pad_try_set_caps):
4584         * gst/gststructure.c:
4585         * gst/gstthread.c: (gst_thread_child_state_change):
4586         * gst/gstvalue.c: (gst_value_compare_double):
4587         * gst/gstvalue.h:
4588         * testsuite/parse/parse1.c: (main):
4589           debugging additions and style cleanups
4590
4591 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4592
4593         * docs/manual/states.xml: Grammar fix
4594
4595 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4596
4597         * docs/manual/pads.xml: Grammar fix
4598
4599 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4600
4601         * docs/manual/elements.xml: Fixed image reference
4602
4603 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4604
4605         * docs/manual/goals.xml: Grammar fix
4606
4607 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4608
4609         * docs/manual/motivation.xml:
4610         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
4611
4612 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4613
4614         * docs/manual/motivation.xml: Fix spelling
4615
4616 2004-07-15  Benjamin Otte  <otte@gnome.org>
4617
4618         * gst/gstelement.h: 
4619           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
4620           strings.
4621         * gst/gstelement.c (gst_element_class_init):
4622           GError's are boxed, not objects
4623         * gst/gstmarshal.list:
4624           update list for the fixed error signal
4625
4626 2004-07-14  Andy Wingo  <wingo@pobox.com>
4627
4628         * gst/gsttag.c: Add a tag merge func for pointers. The header was
4629         there all along, but the function wasn't. (guile-gstreamer's build
4630         system uses the address of the function -- I wasn't actually
4631         trying to use this.)
4632
4633 2004-07-14  Andy Wingo  <wingo@pobox.com>
4634
4635         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
4636         as gst_pad_proxy_pad_link) just link to every other pad when they
4637         are called. In the case where the graph has cycles, this will mean
4638         that a call to try_set_caps will recurse. Allow this recursion
4639         and return OK, while we wait for the first try_set_caps to give a
4640         proper return value.
4641         (gst_pad_link_call_link_functions): Since this function is the
4642         only one to set the NEGOTIATING flag on a pad, if the flag is set
4643         it means that the link functions have indirectly recursed. If this
4644         happens, error out to avoid infinite recursion and an eventual
4645         SEGV.
4646         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
4647         (gst_pad_proxy_getcaps): Intersect the result with the template
4648         caps to ensure that the return value is valid.
4649
4650 2004-07-14  Andy Wingo  <wingo@pobox.com>
4651
4652         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
4653         one refcount, the calling function is the owner of the buffer.
4654
4655 2004-07-14  Wim Taymans  <wim@fluendo.com>
4656
4657         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
4658         (gst_opt_scheduler_pad_link), (group_migrate_connected):
4659         Fix stupid warning when an element is to be migrated but
4660         is already migrated.
4661
4662 2004-07-14  Wim Taymans  <wim@fluendo.com>
4663
4664         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
4665         (gst_opt_scheduler_pad_link), (group_migrate_connected):
4666         Make sure that a single non-loop-based element does not 
4667         end up in a group. This fixes the testsuite again.
4668
4669 2004-07-14  Wim Taymans  <wim@fluendo.com>
4670
4671         * gst/schedulers/gstoptimalscheduler.c: (create_group),
4672         (add_to_group), (merge_groups), (schedule_group),
4673         (gst_opt_scheduler_get_wrapper), (group_elements),
4674         (group_dec_link), (gst_opt_scheduler_pad_link),
4675         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
4676         (gst_opt_scheduler_iterate):
4677         move isolated groups to a new chain.
4678         Emit a warning instead of segfaulting in some error cases.
4679         Fix a bug where the link count between groups was not calculated 
4680         correctly. Fixes #144510.
4681
4682 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
4683         * gst/elements/gstfilesrc.c:
4684           Binary files support under Windows now OK
4685       
4686 2004-07-13  Benjamin Otte  <otte@gnome.org>
4687
4688           compatibility fixes for Solaris 8/gcc 2.95
4689         * configure.ac:
4690           include libintl libs in LDFLAGS
4691         * gstvalue.c (gst_value_deserialize_buffer):
4692           cast isxdigit stuff to int to silence compiler warning
4693
4694 2004-07-12  Benjamin Otte  <otte@gnome.org>
4695
4696         * gst/gsttypes.h:
4697           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
4698           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
4699           just causes support madness
4700         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
4701           make it work without this
4702         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
4703         (gst_file_index_commit):
4704           glib IO channels don't want binary mode
4705         * testsuite/bytestream/filepadsink.c: (main):
4706         * testsuite/bytestream/test1.c: (read_param_file):
4707           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
4708
4709 2004-07-12  Benjamin Otte  <otte@gnome.org>
4710
4711         * gst/gstelement.c: (gst_element_class_init),
4712         (gst_element_set_state), (gst_element_set_state_func):
4713           virutalize gst_element_set_state, use set_state member in class
4714           struct that was already added in 0.7 for this.
4715         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
4716         (gst_bin_change_state):
4717           make gst_bin_foreach works similar to other foreach functions, plug
4718           memleaks in it. Make functions using it work with the new approach.
4719           Document gst_bin_foreach, so it can be exported if we want to
4720         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
4721           use virtualized set_state to make set_state on bins set the state of
4722           all its children.
4723
4724 2004-07-12  Benjamin Otte  <otte@gnome.org>
4725
4726         * configure.ac:
4727           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
4728           http://bugs.gentoo.org/show_bug.cgi?id=53967)
4729         * gst/gstpad.c: (gst_pad_alloc_buffer):
4730           allow buffer_alloc functions to return NULL and allocate a normal
4731           buffer in that case
4732
4733 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
4734         * gst/elements/gstfilesink.c:
4735         * gst/elements/gstfilesrc.c:
4736         * gst/indexers/gstfileindex.c:
4737         * gst/gsttypes.h:
4738         * testsuite/bytestream/filepadsink.c:
4739         * testsuite/bytestream/test1.c:
4740           Handle binary files under Windows
4741
4742 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
4743         * docs/manual/win32.xml:
4744         * win32/config.h:
4745         * win32/gst-register.vcproj:
4746         * win32/gstreamer.def:
4747           Update to another gettext public build
4748
4749 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
4750         * gst/gstplugin.c:
4751           Fix an impossible C syntax
4752         * win32/config.h:
4753           Disable i18n under Windows for the moment
4754         * win32/gst-register.vcproj:
4755           Use this configuration
4756
4757 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
4758         * docs/manual/quotes.xml:
4759           Keep the quotes file alive
4760         * docs/random/ds/0.9-suggested-changes:
4761           Add the suggestion of including a 'rowstride' as part of video
4762           format caps
4763
4764 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4765
4766         * gst/gstelement.c: (gst_element_set_state),
4767         (gst_element_change_state):
4768           d'oh.  Set PENDING state correctly before forcing bin to change.
4769         * gst/gststructure.c: (gst_structure_value_get_generic_type),
4770         (gst_structure_parse_fixed_list):
4771         * gst/schedulers/gstoptimalscheduler.c:
4772         (gst_opt_scheduler_state_transition):
4773         * testsuite/states/parent.c: (main):
4774           remove comment now that it's fixed.
4775
4776 2004-07-11  Benjamin Otte  <otte@gnome.org>
4777
4778         * gst/gstclock.h:
4779           GST_SECOND shouldn't cause a conversion to unsigned.
4780         * testsuite/clock/.cvsignore:
4781         * testsuite/clock/Makefile.am:
4782         * testsuite/clock/signedness.c: (main):
4783           make sure it never will again
4784
4785 2004-07-11  Andy Wingo  <wingo@pobox.com>
4786
4787         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
4788         whose state is higher than the bin state, raise the bin state to
4789         ensure that bin state := highest child state.
4790         
4791 2004-07-11  Andy Wingo  <wingo@pobox.com>
4792
4793         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
4794         procedure on the children of a bin. Assumes that the procedure can
4795         change the set of children.
4796         (set_kid_state_func): New static function.
4797         (gst_bin_change_state): Use gst_bin_foreach to call
4798         set_kid_state_func. Fixes a bug: if a child had a state-change
4799         handler that removes it from the bin, there would be a segfault.
4800         Hopefully it should also work in the case where the state-change
4801         handler on one child adds or removes other children. In any case,
4802         fixes should go to gst_bin_foreach.
4803
4804 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4805
4806         * gst/gstelement.c: (gst_element_set_state):
4807           compatibility fix for latest plugins release.  Change loop back
4808           to while {}
4809
4810 2004-07-09  Wim Taymans  <wim@fluendo.com>
4811
4812         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
4813         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
4814         (gst_thread_main_loop):
4815         Since remove is virtual in GstBin we must not assume the 
4816         elements GList to have anothing useful.
4817         Add some more logging to GstThread and be a bit more paranoid
4818         when resetting the scheduler.
4819         Set the state of the bin to NULL before removing the children.
4820
4821 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4822
4823         * testsuite/threads/Makefile.am:
4824         * testsuite/threads/threadg.c:
4825           added test to check if problem when removing all elements from a
4826           GstThread before setting GstThread state to NULL
4827
4828 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4829
4830         * docs/gst/tmpl/gstelement.sgml:
4831         * docs/gst/tmpl/gsttypes.sgml:
4832         * gst/gstbin.c: (gst_bin_change_state):
4833         * gst/gstelement.c: (gst_element_set_state),
4834         (gst_element_change_state):
4835           rework so that for bins we try to set the state on all children
4836           as well even if the bin is in the correct state already.
4837           change while to do so at least one iteration is done.
4838           For regular elements, we fall back to the previous behaviour for
4839           now since we first need a new plugins release.
4840         * testsuite/states/parent.c: (main):
4841           test for this case
4842           Fixes #123774
4843
4844 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4845
4846         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
4847         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
4848         (gst_queue_release_locks), (gst_queue_change_state),
4849         (gst_queue_set_property):
4850           add proper lock debugging.  Change dispose to finalize, since
4851           we're freeing mutexes and other stuff which should happen only once.
4852
4853 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4854
4855         * docs/gst/tmpl/gstelement.sgml:
4856         * docs/gst/tmpl/gstplugin.sgml:
4857         * docs/gst/tmpl/gsttypes.sgml:
4858         * docs/pwg/building-state.xml:
4859         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
4860         * gst/gstelement.c: (gst_element_change_state):
4861         * gst/gstthread.c: (gst_thread_change_state):
4862           catch wrong state changes in element base class.
4863
4864 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4865
4866         * gst/gstinfo.h:
4867           clean up layout a little.
4868
4869 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4870
4871         * configure.ac:
4872         * testsuite/Makefile.am:
4873         * testsuite/states/Makefile.am:
4874         * testsuite/states/parent.c: (main):
4875           re-enable states testsuite dir.  Add test for state changes and
4876           parent behaviour
4877
4878 2004-07-09  Wim Taymans  <wim@fluendo.com>
4879
4880         * gst/schedulers/gstoptimalscheduler.c:
4881         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
4882         (element_get_reachables_func), (element_get_reachables),
4883         (debug_element), (rechain_group), (group_migrate_connected),
4884         (gst_opt_scheduler_pad_unlink):
4885         Do not try to migrate decoupled elements to a new group since
4886         they are not added to groups.
4887
4888 2004-07-08  Benjamin Otte  <otte@gnome.org>
4889
4890         * gst/gstelement.c: (gst_element_error_func):
4891           make reentrant (= allow removing elements in error handler)
4892
4893 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4894
4895         * gst/gstpad.c: (gst_pad_event_default_dispatch),
4896         (gst_pad_send_event), (gst_pad_call_chain_function):
4897           events sent to elements below PAUSED cannot be handled, so
4898           don't try to
4899
4900 2004-07-08  Wim Taymans  <wim@fluendo.com>
4901
4902         * gst/schedulers/gstoptimalscheduler.c:
4903         (chain_recursively_migrate_group), (create_group),
4904         (schedule_group), (gst_opt_scheduler_pad_link),
4905         (group_elements_set_visited), (element_get_reachables_func),
4906         (element_get_reachables), (group_can_reach_group), (debug_element),
4907         (rechain_group), (group_migrate_connected),
4908         (gst_opt_scheduler_pad_unlink):
4909         * testsuite/schedulers/Makefile.am:
4910         Implemented group splitting and rechaining.
4911         Fixes 143777 and 143777-2 in the testsuite.
4912
4913 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4914
4915         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
4916           extra debugging
4917         * gst/gstevent.h:
4918         * gst/gstinfo.c: (gst_debug_log_default):
4919           print time nicely.  add thread pointer until someone figures out
4920           a completely portable way of getting at thread id's.
4921         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
4922         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
4923         (gst_pad_call_chain_function):
4924           extra debugging
4925         * gst/schedulers/gstoptimalscheduler.c:
4926         (get_group_schedule_function), (loop_group_schedule_function),
4927         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4928         (pad_clear_queued), (gst_opt_scheduler_iterate):
4929           rename BUFPEN and friends to DATAPEN since that's what they are.
4930
4931 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4932
4933         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
4934         * gst/gstbuffer.h:
4935         * gst/gstpad.c:
4936           cleanups and debugging
4937
4938 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4939
4940         * configure.ac:
4941         * gst/gstvalue.c: (gst_value_compare_enum),
4942         (gst_value_serialize_enum), (gst_value_deserialize_enum),
4943         (gst_value_can_compare), (gst_value_compare):
4944         * testsuite/Makefile.am:
4945         * testsuite/enumcaps/Makefile.am:
4946         * testsuite/enumcaps/enumcaps.c:
4947           Fix enum serialization, deserialization, comparison in caps, add
4948           a test to ensure that this continues working in the future.
4949
4950 2004-07-06  David Schleef  <ds@schleef.org>
4951
4952         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
4953         Fix memleak.
4954
4955 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4956
4957         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4958         * gst/gstplugin.h:
4959         * gst/registries/gstxmlregistry.c:
4960         (plugin_times_older_than_recurse), (plugin_times_older_than),
4961         (gst_xml_registry_parse_padtemplate):
4962           only rebuild registry when actual plugins have a newer time than
4963           the registry.  Fixes #145520
4964
4965 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4966
4967         * docs/manual/manual.xml:
4968         * docs/manual/win32.xml:
4969           add chapter on win32 building.  fixes #142422
4970
4971 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4972
4973         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
4974
4975         * gst/autoplug/gstspider.c: (gst_spider_init),
4976         (gst_spider_dispose):
4977           fix spider memleaks.  fixes #137863
4978
4979 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4980
4981         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
4982
4983         * gst/schedulers/gstoptimalscheduler.c:
4984         (gst_opt_scheduler_pad_unlink):
4985           fix SIGBUS error, fixes #145338
4986
4987 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4988
4989         * gst/gstobject.c: (gst_object_replace):
4990         * gst/gstscheduler.c: (gst_scheduler_get_clock):
4991         * gst/gstsystemclock.c: (gst_system_clock_obtain):
4992           clean up clock lifecycle.  Fixes #109831
4993
4994 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4995
4996         * po/LINGUAS:
4997         * po/cs.po:
4998           added Czech translation (Miloslav Trmac)
4999
5000 2004-07-04  David Schleef  <ds@schleef.org>
5001
5002         * tools/Makefile.am:
5003         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5004
5005 2004-07-04  David Schleef  <ds@schleef.org>
5006
5007         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5008
5009 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5010
5011         * gst/gstbin.c: (gst_bin_restore_thyself):
5012           chain to parent restore so the bins get restored correctly
5013           in the editor
5014
5015 2004-07-03  David Schleef  <ds@schleef.org>
5016
5017         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5018         Actually do something in these functions, like before the big
5019         caps change.  (bug #145137)
5020
5021 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5022
5023         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
5024         (gst_element_get_compatible_pad_filtered):
5025         * gst/gstthread.c: (gst_thread_main_loop):
5026           more debugging
5027
5028 2004-07-02  David Schleef  <ds@schleef.org>
5029
5030         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
5031         * gst/gstobject.h:
5032         * gst/gstparse.h:
5033         * gst/gsttrace.h:
5034         * gst/gstxml.h:
5035
5036 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5037
5038         * gst/gstpad.c: (gst_pad_check_schedulers),
5039         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5040         (gst_pad_link_prepare):
5041           revert until testsuite is fixed
5042
5043 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5044
5045         * testsuite/Makefile.am:
5046         * testsuite/caps/filtercaps.c: (main):
5047         * testsuite/clock/clock1.c: (main):
5048         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
5049           fix some more tests
5050
5051 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5052
5053         * testsuite/cleanup/cleanup1.c: (create_pipeline):
5054         * testsuite/cleanup/cleanup2.c: (create_pipeline):
5055         * testsuite/cleanup/cleanup4.c: (main):
5056           fix testsuite
5057
5058 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5059
5060         * libs/gst/control/control.c:
5061         * libs/gst/control/dparam.c:
5062         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
5063         * libs/gst/control/dparammanager.c:
5064         * libs/gst/control/dparammanager.h:
5065         * testsuite/dynparams/Makefile.am:
5066         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
5067         (gst_dptest_change_state), (gst_dptest_chain), (main):
5068           fix testcase for dparams
5069           add debugging category
5070
5071 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5072
5073         * testsuite/Rules:
5074           change path
5075
5076 2004-07-02  Benjamin Otte  <otte@gnome.org>
5077
5078         * tests/.cvsignore:
5079         * tests/Makefile.am:
5080         * tests/mass_elements.c: (gst_get_current_time), (main):
5081           add simple benchmark to test various speeds of fakesrc ! identity !
5082           identity ! ... ! fakesink.
5083           Usage: mass_elements [num_identities] [num_buffers]
5084           If not specified they default to 1000.
5085
5086 2004-07-02  Benjamin Otte  <otte@gnome.org>
5087
5088         * gst/gstpad.c: (gst_pad_check_schedulers),
5089         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5090         (gst_pad_link_prepare):
5091           check that pads that get linked belong to the same manager. The old
5092           code allowed linking elements before putting them into bins, so it
5093           worked to link them and then put them in different threads, which
5094           lead to weird behaviour.
5095           Since this effectively disallows linking elements before putting
5096           them in a bin, some applications might not work after this and error
5097           out. If these applications are too critical, we might need to revert
5098           that patch. Please test this before the next release...
5099
5100 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5101
5102         * gst/gstpad.c: (gst_pad_get_caps):
5103           throw an error if the getcaps function does not return a subset of
5104           the template caps.
5105         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
5106           make disconts without position info an error in debugging
5107         * tests/spidey_bench.c: (handoff), (main):
5108           don't count first try when averaging
5109
5110 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5111
5112         * gst/gstplugin.c: (gst_plugin_load_file):
5113           figure out problem with dynamic test
5114
5115 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5116
5117         * docs/gst/Makefile.am:
5118           fix docs build
5119
5120 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5121
5122         * po/POTFILES.in:
5123         * po/af.po:
5124         * po/az.po:
5125         * po/en_GB.po:
5126         * po/fr.po:
5127         * po/nl.po:
5128         * po/sr.po:
5129         * po/sv.po:
5130         * po/tr.po:
5131         * po/uk.po:
5132         * tools/gst-register.c: (plugin_added_func), (main):
5133           i18n-ize -register, fix plural
5134
5135 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5136
5137         * gst/elements/gstidentity.c: (gst_identity_class_init),
5138         (gst_identity_init), (gst_identity_chain),
5139         (gst_identity_set_property), (gst_identity_get_property):
5140         * gst/elements/gstidentity.h:
5141           check for perfect stream
5142
5143 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5144
5145         * gst/elements/gstidentity.c: (gst_identity_chain):
5146           print offset_end
5147
5148 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5149
5150         * docs/gst/Makefile.am:
5151         * docs/gst/gstreamer-docs.sgml:
5152           doc fixes
5153
5154 2004-06-24  David Schleef  <ds@schleef.org>
5155
5156         * autogen.sh:  Remove call to env, since the buildbot isn't
5157         broken anymore.
5158
5159 2004-06-24  Wim Taymans  <wim@fluendo.com>
5160
5161         * gst/elements/Makefile.am:
5162         * gst/elements/gstelements.c:
5163         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
5164         (gst_multifdsink_class_init), (gst_multifdsink_init),
5165         (gst_multifdsink_add), (gst_multifdsink_remove),
5166         (gst_multifdsink_clear), (gst_multifdsink_chain),
5167         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
5168         * gst/elements/gstmultifdsink.h:
5169         Added an element that writes to multiple filedescriptors at once.
5170
5171 2004-06-24  Benjamin Otte  <otte@gnome.org>
5172
5173         * gst/parse/grammar.y:
5174           don't try to link elements before they have been added to bins
5175
5176 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5177
5178         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
5179         (gst_file_pad_get_length):
5180         * libs/gst/bytestream/filepad.h:
5181           add 2 new functions
5182
5183 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5184
5185         * docs/gst/gstreamer-sections.txt:
5186         remove from docs, the define that Benjamin removed from gstelement.h
5187
5188 2004-06-22  Benjamin Otte  <otte@gnome.org>
5189
5190         * gst/gstelement.h:
5191           remove define that referenced a nonexisting GstElement struct member
5192
5193 2004-06-20  Benjamin Otte  <otte@gnome.org>
5194
5195         * gst/gstdata.c: (gst_data_is_writable):
5196           whoops, return values were wrong, so writable data was marked as
5197           non-writable and vice versa. (fixes #143953, spotted by Francis
5198           Labonte)
5199           Shows how rarely we need to copy data ;)
5200
5201 2004-06-20  Benjamin Otte  <otte@gnome.org>
5202
5203         * testsuite/schedulers/.cvsignore:
5204         * testsuite/schedulers/Makefile.am:
5205         * testsuite/schedulers/143777-2.c: (main):
5206           add test for opt breakage in bug #143777
5207
5208 2004-06-20  Benjamin Otte  <otte@gnome.org>
5209
5210         * gst/gstpad.c: (gst_pad_call_chain_function):
5211           check for if we were unlinked while inside the chainfunction (fixes
5212           entrygthread having issues with #143777)
5213         * testsuite/schedulers/143777.c: (main):
5214         * testsuite/schedulers/Makefile.am:
5215           add a test for that fix
5216
5217 2004-06-20  Benjamin Otte  <otte@gnome.org>
5218
5219         * gst/gstvalue.c: (gst_value_set_int_range):
5220           test that start is smaller then end
5221         * libs/gst/bytestream/Makefile.am:
5222         * libs/gst/bytestream/filepad.c: 
5223         * libs/gst/bytestream/filepad.h:
5224           add GstFilePad - a pad that behaves like a FILE*
5225         * testsuite/bytestream/.cvsignore:
5226         * testsuite/bytestream/Makefile.am:
5227         * testsuite/bytestream/filepadsink.c: 
5228           test for the GstFilePad
5229
5230 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5231
5232         * gst/elements/gstidentity.c: (gst_identity_class_init),
5233         (gst_identity_init), (gst_identity_set_clock),
5234         (gst_identity_chain), (gst_identity_set_property),
5235         (gst_identity_get_property):
5236         * gst/elements/gstidentity.h:
5237         * gst/gstclock.c: (gst_clock_id_wait):
5238           add a "sync" property to sync to the clock
5239
5240 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5241
5242         * gst/gstelementfactory.c: (gst_element_factory_create):
5243           make the freakin "elementfactory bla has no type" message more
5244           useful. So we actually can do something when someone shows up
5245           complaining about it.
5246
5247 2004-06-15  Johan Dahlin  <johan@gnome.org>
5248
5249         * tools/gst-inspect.c (main): Fallback to plugin if no element is
5250         found. This matches the old behavior better. Thanks to Thomas for
5251         pointing out.
5252
5253 2004-06-14  David Schleef  <ds@schleef.org>
5254
5255         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
5256         -fomit-frame-pointer.  Appears to generate correct code in
5257         other cases as well.
5258
5259 2004-06-14  Johan Dahlin  <johan@gnome.org>
5260
5261         * tools/gst-inspect.c (main): Add two new command line options: -a
5262         to print all elements and -n to print the name on each line. Also
5263         fix some error reporting.
5264         (main): Simplify, remove -n and always print names if -a is specified
5265
5266 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
5267
5268         * win32/gstconfig.h:
5269         * win32/GSTreamer.vcproj:
5270         * win32/Makefile:
5271         * gst/gstconfig.h.in:
5272         * gst/gst.h:
5273         * gst/gstbin.h:
5274         * gst/gstelement.h:
5275         * gst/gstevent.h:
5276         * gst/gstobject.h:
5277         * gst/gstpad.h:
5278         * docs/gst/gstreamer-sections.txt:
5279         * docs/gst/tmpl/gstconfig.sgml:
5280           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
5281
5282 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5283         * docs/gst/gstreamer-sections.txt:
5284         * docs/gst/tmpl/gstconfig.sgml:
5285         Add the GSTREAMER_EXPORT macro to the docs
5286
5287 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5288
5289         * tools/gst-compprep.c: (handle_xmlerror), (main):
5290         Add a check for the version that introduced SetStructuredError to fix
5291         the build on FC1
5292
5293 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5294
5295         * win32/msvc71.sln:
5296         * win32/testsuite/:
5297           prepare to compile the testsuite with MSVC
5298
5299 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5300
5301         * docs/manual/win32.xml:
5302           attempt to transform the Win32 README into an XML doc
5303
5304 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5305
5306         * gst/gst.c:
5307         * gst/gstbin.*:
5308         * gst/config.h.in:
5309         * gst/gstelement.*:
5310         * gst/gstevent.h:
5311         * gst/gstobject.*:
5312         * gst/gstpad.h:
5313         * tools/gst-register.c:
5314         * win32/gstreamer.def:
5315           extern symbols are now exported for the Windows DLL
5316
5317 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5318
5319         * gst/gstinfo.h:
5320           fix a problem to enable/disable DEBUG under MSVC
5321
5322 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5323
5324         * win32/:
5325           enable more debug code in DEBUG build
5326
5327 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5328
5329         * win32/config.h:
5330         * gst/gst-i18n-app.h:
5331           enable NLS under Windows
5332
5333 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
5334         * tools/gst-compprep.c: (handle_xmlerror), (main):
5335           Make an error that baffled me a bit clearer
5336
5337 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5338
5339         * gst/gstqueue.c:
5340           don't use g_queue_get_length () because it's 2.4, use ->length
5341
5342 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
5343
5344         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
5345
5346         * tools/gst-inspect.c: (print_signal_info):
5347           don't free random data twice. (fixes #144185)
5348
5349 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5350
5351         * gst/gstqueue.c:
5352         * gst/gstqueue.h:
5353           fix removing from the wrong queue on event timeout
5354           fix disposing of the event queue by casting correctly
5355           add mutexes for handling the event queue
5356           someone was sleeping when fixing queue last time around :)
5357
5358 2004-06-10  Johan Dahlin  <johan@gnome.org>
5359
5360         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
5361         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
5362
5363 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5364
5365         * docs/random/gdp:
5366         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
5367         * libs/gst/dataprotocol/dataprotocol.c:
5368         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5369         (gst_dp_buffer_from_header):
5370         * libs/gst/dataprotocol/dataprotocol.h:
5371         * libs/gst/dataprotocol/dp-private.h:
5372           rev version to 0.1, add buffer flags and copy them
5373
5374 2004-06-09  Johan Dahlin  <johan@gnome.org>
5375
5376         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
5377         the flags from the buffer we're copying.
5378
5379 2004-06-09  Wim Taymans  <wim@fluendo.com>
5380
5381         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
5382         * gst/elements/gstidentity.c: (gst_identity_init),
5383         (gst_identity_chain):
5384         Print more buffer info in fakesink.
5385         Make identity output similar to fakesink.
5386
5387 2004-06-07  Daniel Gazard  <dany42@free.fr>
5388
5389         reviewed by Benjamin Otte  <otte@gnome.org>
5390
5391         * configure.ac:
5392           fix cross compiling not working. (fixes #143741)
5393
5394 2004-06-07  Benjamin Otte  <otte@gnome.org>
5395
5396         * gst/gstelement.c: (gst_element_set_time_delay):
5397           add failure check
5398         * gst/gstinfo.h:
5399           put brackets around macro arguments of GST_TIME_ARGS, add note to
5400           move it to correct header in 0.9
5401
5402 2004-06-07  Benjamin Otte  <otte@gnome.org>
5403
5404         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
5405         (gst_file_index_load), (_file_index_id_save_entries),
5406         (gst_file_index_commit), (gst_file_index_add_association),
5407         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
5408         (gst_file_index_plugin_init):
5409           make debugging use a default category
5410
5411 2004-06-06  David Moore  <dcm@acm.org>
5412
5413         reviewed by Benjamin Otte  <otte@gnome.org>
5414
5415         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
5416         (gst_fdsrc_change_state):
5417           reset offset counter when going READY => PAUSED. (fixes #142903)
5418
5419 2004-06-06  ed@catmur.co.uk
5420
5421         reviewed by Benjamin Otte  <otte@gnome.org>
5422
5423         * gst/registries/gstxmlregistry.c:
5424         (gst_xml_registry_rebuild_recurse):
5425           don't rely on g_dir_open to figure out if a file is a directory, use
5426           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
5427           directories. (fixes #142850)
5428
5429 2004-06-06  Benjamin Otte  <otte@gnome.org>
5430
5431         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
5432           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
5433         * libs/gst/bytestream/adapter.c:
5434         * libs/gst/bytestream/adapter.h:
5435           fix copyright in header and typo in debugging category name
5436
5437 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5438
5439         * configure.ac:
5440           bump nano to cvs
5441
5442 === release 0.8.3 ===
5443
5444 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5445
5446         * configure.ac:
5447           update libtool versioning
5448           do a new release
5449         * docs/gst/tmpl/gstelement.sgml:
5450         * docs/gst/tmpl/gsttypes.sgml:
5451         * gst/gstinfo.c: (_gst_debug_init):
5452           put back GST_CAT_DATAFLOW to fix API breakage
5453
5454 2004-06-04  David Schleef  <ds@schleef.org>
5455
5456         * autogen.sh: Add a temporary 'env' to test buildbot problems.
5457
5458 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5459
5460         * configure.ac:
5461           bump nano to cvs
5462
5463 === release 0.8.2 ===
5464
5465 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5466
5467         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
5468           check GST_DEBUG environment variable which is parsed the same way
5469           as --gst-debug=
5470
5471 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
5472
5473         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
5474                             gstmd5sink.c gstshaper.c gsttee.c
5475                             gsttypefindelement.c
5476         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
5477
5478           - removing trailing commas at end of enums
5479             it is correct C99 code but C90 compilers would complain
5480             (AIX, Forte, ...)
5481             ('should' fix #143290, at least partially)
5482
5483 2004-05-27  Wim Taymans  <wim@fluendo.com>
5484
5485         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
5486         (chain_group_set_enabled), (create_group), (add_to_group),
5487         (merge_groups), (setup_group_scheduler), (group_elements),
5488         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
5489         Don't try to follow the pad connections with other groups
5490         when a loop based element is added to the scheduler because
5491         the bin will inform the scheduler about the pad links a little
5492         later.
5493
5494 2004-05-27  Wim Taymans  <wim@fluendo.com>
5495
5496         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
5497         (remove_from_chain), (chain_group_set_enabled),
5498         (setup_group_scheduler), (group_element_set_enabled),
5499         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
5500         (gst_opt_scheduler_show):
5501         Elements without a group can do a state change as well, just wait
5502         with the setup of the scheduling function when it is added to a
5503         chain.
5504
5505 2004-05-27  Wim Taymans  <wim@fluendo.com>
5506
5507         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
5508         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
5509         (merge_groups), (setup_group_scheduler),
5510         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
5511         (gst_opt_scheduler_show):
5512         Fixes to maintain internal consistency of the scheduler data
5513         structures. 
5514          - adding an enabled group to a chain should increment the
5515            number of enabled elements in that chain.
5516          - removing an enabled group from a chain could disable the
5517            chain.
5518          - removing a disabled group from a chain could enable the
5519            chain.
5520          - add g_assert when internal inconsistency is detected.
5521          - adding an element to a group could increase the number of
5522            links this group has with other groups.
5523          - merging two groups also merges the chains.
5524          - also show group links in the _show method.
5525            
5526
5527 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5528
5529         * gst/gstcaps.c: (gst_caps_structure_simplify):
5530           don't print error messages when there is no error
5531         * gst/gstvalue.c: (gst_value_compare_int_range):
5532           compare the second value, too
5533         * testsuite/caps/Makefile.am:
5534         * testsuite/caps/random.c: (assert_on_error), (main):
5535           add tests to make sure the two things above are checked for
5536
5537 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5538
5539         * configure.ac:
5540         * libs/gst/dataprotocol/Makefile.am:
5541         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
5542         * libs/gst/dataprotocol/dataprotocol.h:
5543           wrap header in GST_ENABLE_NEW.  make code use it
5544
5545 2004-05-23  Johan Dahlin  <johan@gnome.org>
5546
5547         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
5548         so verbose and print GstElement signal names all the time.
5549
5550 2004-05-22  David Schleef  <ds@schleef.org>
5551
5552         * gst/registries/gstxmlregistry.c:
5553         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
5554         (bug #142957)
5555
5556 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5557
5558         * configure.ac:
5559           scrub cflags for glib2 so gcc doesn't complain when glib is in
5560           /usr/local
5561
5562 2004-05-21  Johan Dahlin  <johan@gnome.org>
5563
5564         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
5565         __GNUC__, patch from Brian Cameron, fixes bug #142804
5566
5567 2004-05-20  David Schleef  <ds@schleef.org>
5568
5569         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
5570         comparison code.  (bug #142819)
5571
5572 2004-05-20  Wim Taymans  <wim@fluendo.com>
5573
5574         * gst/gstbuffer.c: (gst_buffer_default_copy):
5575         * gst/gstbuffer.h:
5576         Added Comment to a flag.
5577         copy relevant flags in _buffer_copy.
5578
5579 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5580
5581         reviewed by: Wim Taymans <wim at fluendo dot com>
5582
5583         * gst/gstbuffer.h:
5584           add GST_BUFFER_IN_CAPS buffer flag
5585         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5586         (gst_structure_parse_any_list), (gst_structure_parse_list),
5587         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
5588         * gst/gstvalue.c: (gst_value_serialize_any_list),
5589         (gst_value_transform_any_list_string),
5590         (gst_value_list_prepend_value), (gst_value_list_append_value),
5591         (gst_value_list_get_size), (gst_value_list_get_value),
5592         (gst_value_transform_list_string),
5593         (gst_value_transform_fixed_list_string),
5594         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
5595         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
5596         (_gst_value_initialize):
5597         * gst/gstvalue.h:
5598           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
5599           < , > as a format.
5600         * testsuite/caps/string-conversions.c: (main):
5601           add regression tests for < >
5602
5603 2004-05-20  Johan Dahlin  <johan@gnome.org>
5604
5605         * docs/gst/Makefile.am (all-local): Re-add
5606
5607 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5608
5609         * docs/gst/Makefile.am:
5610         * docs/gst/gstreamer-docs.sgml:
5611         * docs/libs/Makefile.am:
5612         * docs/libs/gstreamer-libs-docs.sgml:
5613           fix distcheck issues
5614
5615 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
5616
5617         * libs/gst/dataprotocol/Makefile.am:
5618           add to autotest
5619
5620 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
5621
5622         * libs/gst/dataprotocol/Makefile.am:
5623         * libs/gst/dataprotocol/dataprotocol.c:
5624         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5625         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
5626         * libs/gst/dataprotocol/dp-private.h:
5627           use GST macros to read/write fixed length ints
5628           add some more asserts
5629
5630 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
5631
5632         * docs/libs/gstreamer-libs-docs.sgml:
5633         * docs/libs/gstreamer-libs-sections.txt:
5634           remove idct and putbits
5635         * configure.ac:
5636         * docs/libs/tmpl/gstdataprotocol.sgml:
5637         * libs/gst/Makefile.am:
5638         * libs/gst/dataprotocol/Makefile.am:
5639         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
5640         (buffer_test), (caps_test), (event_test), (main):
5641         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
5642         (gst_dp_dump_byte_array), (gst_dp_init),
5643         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
5644         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5645         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
5646         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
5647         (gst_dp_validate_header), (gst_dp_validate_payload),
5648         (gst_dp_validate_packet), (plugin_init):
5649         * libs/gst/dataprotocol/dataprotocol.h:
5650         * libs/gst/dataprotocol/dp-private.h:
5651           add dataprotocol
5652
5653 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5654
5655         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
5656           fix int variable deserialization and add a helper so we can actually
5657           debug this.
5658
5659 2004-05-18  David Schleef  <ds@schleef.org>
5660
5661         * testsuite/debug/commandline.c: (main): Call ./commandline, not
5662           argv[0].  Calling yourself is probably not the best way to
5663           construct a test like this, btw.
5664
5665 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5666
5667         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
5668           don't claim to be more intelligent than a scheduler when the
5669           scheduler claims the pipeline is stopped
5670         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
5671         (safe_cothread_destroy),
5672         (gst_entry_scheduler_remove_all_cothreads),
5673         (gst_entry_scheduler_reset), (_remove_cothread),
5674         (gst_entry_scheduler_state_transition):
5675           hold off cothread destruction if we're not in main cothread
5676         * configure.ac:
5677         * testsuite/Makefile.am:
5678           add new test dir
5679         * testsuite/schedulers/.cvsignore:
5680         * testsuite/schedulers/Makefile.am:
5681           add tests
5682         * testsuite/schedulers/relink.c: (cb_handoff), (main):
5683           check relinking and adding/removing elements from a running pipeline
5684         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
5685           check unlinking in a running pipeline
5686         * testsuite/schedulers/unref.c: (cb_handoff), (main):
5687           check unreffing a running pipeline
5688         * testsuite/schedulers/useless_iteration.c: (main):
5689           check iterating a pipeline that contains running threads works
5690
5691 2004-05-18  David Schleef  <ds@schleef.org>
5692
5693         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
5694           is false.
5695
5696 2004-05-18  Wim Taymans  <wim@fluendo.com>
5697
5698         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5699         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
5700         Fixed an error introduced with patch for 1.63. When setting
5701         a get based element as the entry point in a group, make sure
5702         to mark the group as GET based.
5703
5704 2004-05-18  Wim Taymans  <wim@fluendo.com>
5705
5706         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5707         (setup_group_scheduler), (loop_group_schedule_function),
5708         (gst_opt_scheduler_pad_link):
5709         Added some more debug info and fixed a bug where the group
5710         type was set to LOOP but it was in fact unknown.
5711
5712 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5713
5714         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
5715           make resetting scheduler work twice in a row
5716
5717 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5718
5719         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
5720         (CREATE_USERIALIZATION), (_gst_value_initialize),
5721         (gst_value_compare_float), (gst_value_serialize_float),
5722         (gst_value_deserialize_float), (gst_value_compare_enum),
5723         (gst_value_serialize_enum), (gst_value_deserialize_enum):
5724           add serialization and comparison functions for long, int64, enum and
5725           float values
5726         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
5727           use best serialization function in type hierarchy instead of only a
5728           matching one. This is required for enums to work.
5729         * gst/parse/grammar.y:
5730           use gst_caps_deserialize
5731         * testsuite/parse/Makefile.am:
5732           parse1 now works
5733         * testsuite/parse/parse1.c: (main):
5734           remove aggregator check, aggregator is broken, this test works now
5735           but fails because of bug #138012
5736         * testsuite/parse/parse2.c: (main):
5737           s/xvideosink/xvimagesink - this test looks a lot like we should
5738           disable it
5739
5740 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5741
5742         * gst/gstelement.c: (gst_element_class_init):
5743           whoops, store the signal id correctly
5744         * gst/schedulers/gstbasicscheduler.c:
5745         (gst_basic_scheduler_chain_wrapper):
5746           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
5747           chain function isn't linked
5748
5749 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
5750         * configure.ac:
5751         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
5752         support until we decide where the flags should be used
5753         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
5754         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
5755         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5756         Output refused caps in the debug info
5757
5758 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5759
5760         * gst/elements/gstidentity.c: (gst_identity_chain):
5761           add duration debug
5762         * gst/gstinfo.c: (gst_debug_log_default):
5763           add timestamp
5764
5765 2004-05-13  Benjamin Otte  <otte@gnome.org>
5766
5767         * gst/gstpipeline.c: (gst_pipeline_dispose),
5768         (gst_pipeline_change_state):
5769           call gst_scheduler_reset on dispose (fixes #141416)
5770
5771 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5772
5773         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5774           compute mapsize correctly
5775         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5776           use correct datatypes when calling a varargs function
5777         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5778           push a DISCONT event as first thing
5779         * gst/gst_private.h:
5780         * gst/gstinfo.c: (_gst_debug_init):
5781           remove GST_DATAFLOW debugging category
5782         * gst/gstbin.c: (gst_bin_iterate):
5783           use GST_SCHEDULING category
5784         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
5785         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
5786         (gst_pad_call_get_function):
5787           add GST_DATAFLOW to easily track flow of buffers or events.
5788         * gst/gstqueue.c: (gst_queue_get_type),
5789         (gst_queue_handle_pending_events), (gst_queue_chain),
5790         (gst_queue_get), (gst_queue_handle_src_event):
5791           use own static debugging category GST_DATAFLOW for dataflow,
5792           use DEBUG category for showing which path events go, use LOG
5793           category for buffers.
5794
5795 2004-05-10  David Schleef  <ds@schleef.org>
5796
5797         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
5798
5799 2004-05-10  David Schleef  <ds@schleef.org>
5800
5801         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
5802         symbols, because otherwise we don't know what they are.  Thanks,
5803         the GStreamer team.
5804         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
5805
5806 2004-05-10  David Schleef  <ds@schleef.org>
5807
5808         (from Steve Lhomme)
5809         * win32/Makefile: When using make clean the MS Visual Studio makefiles
5810         are deleted.  Fix.
5811         * win32/Makefile.inspect:
5812         * win32/Makefile.launch:
5813         * win32/Makefile.register:
5814
5815 2004-05-10  David Schleef  <ds@schleef.org>
5816
5817         * gst/gstinfo.h: Add missing inline function.
5818         * gst/gsttrace.c: add include
5819         * gst/parse/grammar.y: remove unused code
5820         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
5821         more portable.
5822         * tools/gst-register.c: wrap unistd.h
5823         
5824         More additions/fixes from Steve for the MSVC build.
5825         * win32/GStreamer.vcproj:
5826         * win32/Makefile:
5827         * win32/Makefile.inspect:
5828         * win32/Makefile.launch:
5829         * win32/Makefile.register:
5830         * win32/README.txt:
5831         * win32/gst-inspect.vcproj:
5832         * win32/gst-launch.vcproj:
5833         * win32/gst-register.vcproj:
5834         * win32/gstbytestream.def:
5835         * win32/gstbytestream.vcproj:
5836         * win32/gstconfig.h:
5837         * win32/gstelements.def:
5838         * win32/gstelements.vcproj:
5839         * win32/gstenumtypes.c:
5840         * win32/gstenumtypes.h:
5841         * win32/gstoptimalscheduler.def:
5842         * win32/gstoptimalscheduler.vcproj:
5843         * win32/gstreamer.def:
5844         * win32/gstspider.def:
5845         * win32/gstspider.vcproj:
5846         * win32/gstversion.h:
5847         * win32/msvc71.sln:
5848
5849 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5850
5851         * gst/gstelement.c: (gst_element_class_init),
5852         (gst_element_no_more_pads):
5853         * gst/gstelement.h:
5854           add gst_element_no_more_pads and the "no-more-pads" signal
5855
5856 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5857
5858         * gst/gstregistry.c: (gst_registry_add_plugin):
5859           refuse to add plugins when a plugin with same name is already
5860           registered. Fixes a bunch of "How to remove plugins?" issues.
5861           May lead to other problems though, let's test
5862
5863 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
5864
5865         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
5866         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
5867         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
5868
5869 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5870
5871         * tests/Makefile.am: fix am16 issue
5872
5873 2004-05-09  Benjamin Otte  <otte@gnome.org>
5874
5875         * libs/gst/bytestream/Makefile.am:
5876           we should indeed add .c files to makefiles or they won't be built
5877           (d'oh)
5878
5879 2004-05-08  Benjamin Otte  <otte@gnome.org>
5880
5881         * gst/gstpad.c: (gst_pad_proxy_fixate):
5882           really reduce the set of caps
5883
5884 2004-05-08  Benjamin Otte  <otte@gnome.org>
5885
5886         * tests/Makefile.am:
5887         * tests/spidey_bench.c: (handoff), (main):
5888           add benchmark to test how long spider needs to create a pipeline
5889
5890 2004-05-08  Benjamin Otte  <otte@gnome.org>
5891
5892         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
5893           mark links as unengaged when unnegotiating instead of deactivating.
5894           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
5895
5896 2004-05-08  Benjamin Otte  <otte@gnome.org>
5897
5898         * docs/manual/helloworld.xml:
5899           s/audiosink/osssink (patch by Patrick Guimond)
5900
5901 2004-05-07  David Schleef  <ds@schleef.org>
5902
5903         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
5904         since it contains important stuff.
5905
5906 2004-05-07  David Schleef  <ds@schleef.org>
5907
5908         * testsuite/caps/caps.c: (test3), (main): A check for appending
5909         ANY caps.
5910
5911 2004-05-07  David Schleef  <ds@schleef.org>
5912
5913         * common/m4/as-compiler-flag.m4: Properly quote arguments,
5914         which may contain commas.  Fixes detection of -Wa,-mregnames
5915
5916 2004-05-06  David Schleef  <ds@schleef.org>
5917
5918         Changes to handle compilers that don't have variadic macro
5919         support.  In particular, glib headers define some inlines
5920         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
5921         builds.
5922         * gst/Makefile.am:
5923         * gst/cothreads.c:
5924         * gst/elements/gstfdsink.c:
5925         * gst/elements/gstfdsrc.c:
5926         * gst/elements/gstfilesink.c:
5927         * gst/elements/gstfilesrc.c:
5928         * gst/gst_private.h:
5929         * gst/gstatomic.c:
5930         * gst/gstcaps.c: (gst_caps_append):
5931         * gst/gstcpu.c: (gst_cpuid_i386):
5932         * gst/gstelement.c:
5933         * gst/gsterror.c:
5934         * gst/gstfilter.c:
5935         * gst/gstinfo.h:
5936         * gst/gstprobe.c:
5937         * gst/gstquery.c:
5938         * gst/gstregistry.c:
5939         * gst/gststructure.c:
5940         * gst/gsttaginterface.c:
5941         * gst/gsttrace.c: (gst_trace_new):
5942         * gst/gsttrashstack.c:
5943         * gst/gsturi.c:
5944         * gst/gstvalue.c:
5945         * gst/parse/grammar.y:
5946         * gst/parse/parse.l:
5947         * tools/gst-inspect.c: (main):
5948         * tools/gst-launch.c: (main):
5949         * tools/gst-xmlinspect.c: (PUT_STRING):
5950
5951 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5952
5953         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
5954         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
5955         * gst/elements/gstfilesrc.h:
5956           send NEW_MEDIA events correctly
5957         * gst/elements/gsttypefindelement.c: (start_typefinding),
5958         (gst_type_find_element_handle_event):
5959           restart typefinding when we get a NEW_MEDIA event
5960         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
5961         (gst_bin_dispose):
5962           don't die when someone removes elements in callbacks
5963         * gst/gstelement.c: (gst_element_change_state):
5964           improve debugging
5965         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
5966           we need a NEW_MEDIA event to engage a link
5967         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
5968           don't g_print debugging stuff
5969         * testsuite/caps/simplify.c: (check_caps):
5970
5971 2004-05-04  Benjamin Otte  <otte@gnome.org>
5972
5973         * gst/parse/grammar.y:
5974           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
5975
5976 2004-05-04  Benjamin Otte  <otte@gnome.org>
5977
5978         * testsuite/caps/renegotiate.c: (main):
5979           improve output in error case
5980
5981 2004-05-04  Benjamin Otte  <otte@gnome.org>
5982
5983         * gst/parse/grammar.y:
5984           fix assert to not trigger when there's no error argument
5985         * gst/parse/parse.l:
5986           fix definition of caps to allow more than two structures
5987         * testsuite/caps/Makefile.am:
5988         * testsuite/caps/renegotiate.c: (main):
5989           it's sinesrc and works in that case
5990
5991 2004-05-04  Wim Taymans  <wim@fluendo.com>
5992
5993         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5994         (group_dec_link), (gst_opt_scheduler_pad_unlink):
5995         when removing an element from a group, we always need to
5996         decrement the link count that this group had with other 
5997         groups through the element.
5998         added an extra assert to catch inconsistencies when decrementing
5999         the link count.
6000
6001 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6002
6003         * configure.ac:
6004         * docs/gst/Makefile.am:
6005         * docs/gst/gstreamer-sections.txt:
6006         * docs/gst/tmpl/gstcompat.sgml:
6007         * examples/appreader/Makefile.am:
6008         * examples/cutter/Makefile.am:
6009         * examples/events/Makefile.am:
6010         * examples/helloworld/Makefile.am:
6011         * examples/helloworld2/Makefile.am:
6012         * examples/launch/Makefile.am:
6013         * examples/manual/Makefile.am:
6014         * examples/mixer/Makefile.am:
6015         * examples/pingpong/Makefile.am:
6016         * examples/plugins/Makefile.am:
6017         * examples/queue/Makefile.am:
6018         * examples/queue2/Makefile.am:
6019         * examples/queue3/Makefile.am:
6020         * examples/queue4/Makefile.am:
6021         * examples/retag/Makefile.am:
6022         * examples/thread/Makefile.am:
6023         * examples/typefind/Makefile.am:
6024         * examples/xml/Makefile.am:
6025         * gst/Makefile.am:
6026         * gst/autoplug/Makefile.am:
6027         * gst/elements/Makefile.am:
6028         * gst/gstcompat.h:
6029         * gst/indexers/Makefile.am:
6030         * gst/parse/Makefile.am:
6031         * gst/registries/Makefile.am:
6032         * gst/schedulers/Makefile.am:
6033         * libs/gst/bytestream/Makefile.am:
6034         * libs/gst/control/Makefile.am:
6035         * libs/gst/getbits/Makefile.am:
6036         * po/af.po:
6037         * po/az.po:
6038         * po/en_GB.po:
6039         * po/fr.po:
6040         * po/nl.po:
6041         * po/sr.po:
6042         * po/sv.po:
6043         * po/tr.po:
6044         * po/uk.po:
6045         * tests/Makefile.am:
6046         * tests/bufspeed/Makefile.am:
6047         * tests/instantiate/Makefile.am:
6048         * tests/memchunk/Makefile.am:
6049         * tests/muxing/Makefile.am:
6050         * tests/negotiation/Makefile.am:
6051         * tests/probes/Makefile.am:
6052         * tests/sched/Makefile.am:
6053         * tests/seeking/Makefile.am:
6054         * tests/threadstate/Makefile.am:
6055         * testsuite/caps/Makefile.am:
6056         * testsuite/cleanup/Makefile.am:
6057         * testsuite/dlopen/Makefile.am:
6058         * testsuite/dynparams/Makefile.am:
6059         * testsuite/plugin/Makefile.am:
6060         * testsuite/states/Makefile.am:
6061         * tools/Makefile.am:
6062           reorganize compile/link flags to be consistent
6063           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
6064
6065 2004-05-04  David Schleef  <ds@schleef.org>
6066
6067         The "once more, with feeling" check-in.
6068         * testsuite/caps/Makefile.am: dist caps_strings
6069         * testsuite/caps/renegotiate.c: (main): This test triggers a
6070           segfault in the core.  Marking as failing.
6071
6072 2004-05-03  David Schleef  <ds@schleef.org>
6073
6074         * testsuite/caps/deserialize.c: (main): Fix problems noticed
6075           by the build bots.
6076         * testsuite/caps/renegotiate.c: (main): Same.
6077
6078 2004-05-03  David Schleef  <ds@schleef.org>
6079
6080         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
6081
6082 2004-05-03  David Schleef  <ds@schleef.org>
6083
6084         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
6085           variable to find our source file.
6086
6087 2004-05-03  David Schleef  <ds@schleef.org>
6088
6089         * configure.ac:  Link plugins with libgstreamer and dependent
6090           libraries
6091         * testsuite/caps/Makefile.am:
6092         * testsuite/caps/caps_strings:
6093         * testsuite/caps/deserialize.c: (main): Add a little test to slog
6094           through a file of caps strings and test each one
6095
6096 2004-05-04  Benjamin Otte  <otte@gnome.org>
6097
6098         * libs/gst/bytestream/Makefile.am:
6099         * libs/gst/bytestream/adapter.c: 
6100         * libs/gst/bytestream/adapter.h:
6101           add GstAdapter, similar to bytestream, but doesn't require ugly event
6102           handling or uglier loopbased elements
6103
6104 2004-05-03  David Schleef  <ds@schleef.org>
6105
6106         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
6107         * testsuite/caps/erathostenes.c:
6108         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
6109
6110 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6111
6112         * docs/pwg/pwg.xml:
6113           remove hardcoded stylesheet path (duh)
6114         * docs/random/release:
6115         * docs/gst/gstreamer-sections.txt:
6116         * gst/Makefile.am:
6117         * gst/gst.h:
6118         * gst/gst_private.h:
6119         * gst/gstcaps.c:
6120         * gst/gstevent.c:
6121         * gst/gstformat.c:
6122         * gst/gstinfo.c:
6123         * gst/gstinfo.h:
6124         * gst/gstinterface.c:
6125         * gst/gstmemchunk.c:
6126         * gst/gstprobe.c:
6127         * gst/gstquery.c:
6128         * gst/gstregistry.c:
6129         * gst/gstregistrypool.c:
6130         * gst/gststructure.c:
6131         * gst/gsttaginterface.c:
6132         * gst/gstthread.c:
6133         * gst/gsttrace.c:
6134         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
6135         * gst/gsturi.c:
6136         * gst/gstvalue.c:
6137           deprecate gst_info; remove gstlog.h
6138    
6139
6140 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6141
6142         * Makefile.am:
6143         * po/en_GB.po:
6144         * po/sv.po:
6145         * po/uk.po:
6146           updated translations
6147
6148 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6149
6150         * gst/gstbin.c: (gst_bin_dispose):
6151           better debugging
6152
6153 2004-05-03  Johan Dahlin  <johan@gnome.org>
6154
6155         * gst/schedulers/gstoptimalscheduler.c
6156         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
6157         really is a GstElement. Avoids critical when running gst-launch -v
6158         and a oggdemux/decoding pipeline.
6159
6160 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6161
6162         * docs/gst/tmpl/gstpipeline.sgml :
6163         * docs/manual/elements-api.xml :
6164                 doc fix by Patrick Guimond (Protector) from devel ML
6165                 reviewed by ronald
6166
6167 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6168
6169         * docs/gst/Makefile.am :
6170         * docs/libs/Makefile.am :
6171                 apply a patch from Arwed v. Merkatz so that gtk-doc
6172                 generated docs install (same for .devhelp file)
6173                 (fixes part 1 of #138836)
6174
6175 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6176
6177         * docs/faq/dependencies.xml: typo
6178         * docs/faq/getting.xml :
6179             - fix download URL for new gstreamer site
6180             - hide sf.net download page as latest version aren't there
6181             - fix apt URLs
6182             - fill "get via CVS" paragraph (link to dev page on the site)
6183         * docs/faq/general.xml:
6184             hide status tables as they no more exists
6185             change case on plugins license file to reflect reality
6186         * docs/faq/troubleshooting.xml:
6187             remove the wiki question/answer as there is no more wiki
6188
6189 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6190
6191         * gst/gsterror.h:
6192           include the headers needed for declarations used in this header
6193
6194 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6195
6196         * docs/random/uraeus/gstreamer_and_midi.txt :
6197           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
6198           (fixes #132288)
6199
6200 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
6201
6202         reviewed by Benjamin Otte  <otte@gnome.org>
6203
6204         * gst/schedulers/gthread-cothreads.h:
6205           free allocated data for main cothread, too when destroying context
6206           (fixes #141417)
6207
6208 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6209
6210         * docs/manual/goals.xml : remove duplicated paragraph at end 
6211         of doc page (fixes #141448)
6212
6213 2004-04-29  David Schleef  <ds@schleef.org>
6214
6215         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6216         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
6217
6218 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6219
6220         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6221           fix property
6222         * gst/gstcaps.c:
6223           fix doc string
6224         * po/POTFILES.in:
6225           rename typefind source file
6226
6227 2004-04-28  David Schleef  <ds@schleef.org>
6228
6229         Several new files from Steve Lhomme's MSVC patch (bug #141317):
6230         * win32/GStreamer.vcproj:
6231         * win32/Makefile:
6232         * win32/config.h:
6233         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
6234         (_trewinddir), (_ttelldir), (_tseekdir):
6235         * win32/dirent.h:
6236         * win32/gst-inspect.vcproj:
6237         * win32/gst-launch.vcproj:
6238         * win32/gst-register.vcproj:
6239         * win32/gstbytestream.vcproj:
6240         * win32/gstelements.vcproj:
6241         * win32/gstoptimalscheduler.vcproj:
6242         * win32/gstspider.vcproj:
6243         * win32/gtchar.h:
6244         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
6245         * win32/mman.h:
6246         * win32/mman.inl:
6247         * win32/msvc71.sln:
6248
6249 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6250
6251         * gst/gst.c: (init_post):
6252         * gst/gstinfo.c:
6253           remove useless _gst_progname stuff
6254         * tools/gst-inspect.c: (print_field), (print_caps):
6255           improve caps output
6256
6257 2004-04-28  David Schleef  <ds@schleef.org>
6258
6259         Disable parsing of a lot of files that aren't part of the
6260         exported API.  Move corresponding template files to old/,
6261         waiting for removal when they don't contain anything
6262         interesting.
6263         * docs/gst/Makefile.am:
6264         * docs/gst/gstreamer-sections.txt:
6265         * docs/gst/tmpl/cothreads.sgml:
6266         * docs/gst/tmpl/cothreads_compat.sgml:
6267         * docs/gst/tmpl/gettext.sgml:
6268         * docs/gst/tmpl/gobject2gtk.sgml:
6269         * docs/gst/tmpl/grammar.tab.sgml:
6270         * docs/gst/tmpl/gst-i18n-app.sgml:
6271         * docs/gst/tmpl/gst-i18n-lib.sgml:
6272         * docs/gst/tmpl/gst_private.sgml:
6273         * docs/gst/tmpl/gstaggregator.sgml:
6274         * docs/gst/tmpl/gstarch.sgml:
6275         * docs/gst/tmpl/gstatomic_impl.sgml:
6276         * docs/gst/tmpl/gstbufferstore.sgml:
6277         * docs/gst/tmpl/gstdata_private.sgml:
6278         * docs/gst/tmpl/gstdisksink.sgml:
6279         * docs/gst/tmpl/gstdisksrc.sgml:
6280         * docs/gst/tmpl/gstelementfactory.sgml:
6281         * docs/gst/tmpl/gstextratypes.sgml:
6282         * docs/gst/tmpl/gstfakesink.sgml:
6283         * docs/gst/tmpl/gstfakesrc.sgml:
6284         * docs/gst/tmpl/gstfdsink.sgml:
6285         * docs/gst/tmpl/gstfdsrc.sgml:
6286         * docs/gst/tmpl/gstfilesink.sgml:
6287         * docs/gst/tmpl/gstfilesrc.sgml:
6288         * docs/gst/tmpl/gsthttpsrc.sgml:
6289         * docs/gst/tmpl/gstidentity.sgml:
6290         * docs/gst/tmpl/gstindexfactory.sgml:
6291         * docs/gst/tmpl/gstmarshal.sgml:
6292         * docs/gst/tmpl/gstmd5sink.sgml:
6293         * docs/gst/tmpl/gstmultidisksrc.sgml:
6294         * docs/gst/tmpl/gstmultifilesrc.sgml:
6295         * docs/gst/tmpl/gstpadtemplate.sgml:
6296         * docs/gst/tmpl/gstpipefilter.sgml:
6297         * docs/gst/tmpl/gstschedulerfactory.sgml:
6298         * docs/gst/tmpl/gstsearchfuncs.sgml:
6299         * docs/gst/tmpl/gstshaper.sgml:
6300         * docs/gst/tmpl/gstspider.sgml:
6301         * docs/gst/tmpl/gstspideridentity.sgml:
6302         * docs/gst/tmpl/gststatistics.sgml:
6303         * docs/gst/tmpl/gsttee.sgml:
6304         * docs/gst/tmpl/gsttimecache.sgml:
6305         * docs/gst/tmpl/gsttypefind.sgml:
6306         * docs/gst/tmpl/gsttypefindfactory.sgml:
6307         * docs/gst/tmpl/gstxmlregistry.sgml:
6308         * docs/gst/tmpl/gthread-cothreads.sgml:
6309         * docs/gst/tmpl/old/cothreads.sgml:
6310         * docs/gst/tmpl/old/cothreads_compat.sgml:
6311         * docs/gst/tmpl/old/gettext.sgml:
6312         * docs/gst/tmpl/old/gobject2gtk.sgml:
6313         * docs/gst/tmpl/old/grammar.tab.sgml:
6314         * docs/gst/tmpl/old/gst-i18n-app.sgml:
6315         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
6316         * docs/gst/tmpl/old/gst_private.sgml:
6317         * docs/gst/tmpl/old/gstaggregator.sgml:
6318         * docs/gst/tmpl/old/gstarch.sgml:
6319         * docs/gst/tmpl/old/gstatomic_impl.sgml:
6320         * docs/gst/tmpl/old/gstbufferstore.sgml:
6321         * docs/gst/tmpl/old/gstdata_private.sgml:
6322         * docs/gst/tmpl/old/gstdisksink.sgml:
6323         * docs/gst/tmpl/old/gstdisksrc.sgml:
6324         * docs/gst/tmpl/old/gstelementfactory.sgml:
6325         * docs/gst/tmpl/old/gstextratypes.sgml:
6326         * docs/gst/tmpl/old/gstfakesink.sgml:
6327         * docs/gst/tmpl/old/gstfakesrc.sgml:
6328         * docs/gst/tmpl/old/gstfdsink.sgml:
6329         * docs/gst/tmpl/old/gstfdsrc.sgml:
6330         * docs/gst/tmpl/old/gstfilesink.sgml:
6331         * docs/gst/tmpl/old/gstfilesrc.sgml:
6332         * docs/gst/tmpl/old/gsthttpsrc.sgml:
6333         * docs/gst/tmpl/old/gstidentity.sgml:
6334         * docs/gst/tmpl/old/gstindexfactory.sgml:
6335         * docs/gst/tmpl/old/gstmarshal.sgml:
6336         * docs/gst/tmpl/old/gstmd5sink.sgml:
6337         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
6338         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
6339         * docs/gst/tmpl/old/gstpadtemplate.sgml:
6340         * docs/gst/tmpl/old/gstpipefilter.sgml:
6341         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
6342         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
6343         * docs/gst/tmpl/old/gstshaper.sgml:
6344         * docs/gst/tmpl/old/gstspider.sgml:
6345         * docs/gst/tmpl/old/gstspideridentity.sgml:
6346         * docs/gst/tmpl/old/gststatistics.sgml:
6347         * docs/gst/tmpl/old/gsttee.sgml:
6348         * docs/gst/tmpl/old/gsttimecache.sgml:
6349         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
6350         * docs/gst/tmpl/old/gstxmlregistry.sgml:
6351         * docs/gst/tmpl/old/gthread-cothreads.sgml:
6352         * docs/gst/tmpl/old/types.sgml:
6353         * docs/gst/tmpl/types.sgml:
6354
6355         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
6356         gtkdoc-scan doesn't like files with the same name in different
6357         directories.
6358         * gst/elements/Makefile.am:
6359         * gst/elements/gstelements.c:
6360         * gst/elements/gsttypefind.c: 
6361         * gst/elements/gsttypefind.h:
6362         * gst/elements/gsttypefindelement.c:
6363         * gst/elements/gsttypefindelement.h:
6364
6365 2004-04-28  David Schleef  <ds@schleef.org>
6366
6367         A bunch of portability fixes, derived from Steve Lhomme's MSVC
6368         patch (bug #141317):
6369         * gst/gst-i18n-lib.h: Allow disabling gettext.
6370         * gst/gstatomic_impl.h: disable warning when it's dumb.
6371         * gst/gstclock.c: fix include
6372         * gst/gstcompat.h: fix variadic macro
6373         * gst/gstinfo.c: fix include
6374         * gst/gstmacros.h: add defines for inlines on MSVC
6375         * gst/gstplugin.c: fix includes
6376         * gst/gstregistry.c: fix includes
6377         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
6378         * gst/gstsystemclock.c: fix include
6379         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
6380         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
6381         * gst/registries/gstxmlregistry.c:
6382         (gst_xml_registry_parse_element_factory): fix use of non-portable
6383         functions
6384         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
6385         * libs/gst/control/dparammanager.h: same
6386
6387 2004-04-28  David Schleef  <ds@schleef.org>
6388
6389         Move a bunch of unused files to old/ with names that are
6390         not case-insensitive-unique.  These files still contain some
6391         useful information that needs to be merged into gstbin.sgml,
6392         etc., so they shouldn't be deleted yet.
6393         * docs/gst/tmpl/GstBin.sgml:
6394         * docs/gst/tmpl/GstBuffer.sgml:
6395         * docs/gst/tmpl/GstCaps.sgml:
6396         * docs/gst/tmpl/GstClock.sgml:
6397         * docs/gst/tmpl/GstCompat.sgml:
6398         * docs/gst/tmpl/GstData.sgml:
6399         * docs/gst/tmpl/GstElement.sgml:
6400         * docs/gst/tmpl/GstEvent.sgml:
6401         * docs/gst/tmpl/GstIndex.sgml:
6402         * docs/gst/tmpl/GstStructure.sgml:
6403         * docs/gst/tmpl/GstTag.sgml:
6404         * docs/gst/tmpl/old/GstBin.sgml:
6405         * docs/gst/tmpl/old/GstBuffer.sgml:
6406         * docs/gst/tmpl/old/GstCaps.sgml:
6407         * docs/gst/tmpl/old/GstClock.sgml:
6408         * docs/gst/tmpl/old/GstCompat.sgml:
6409         * docs/gst/tmpl/old/GstData.sgml:
6410         * docs/gst/tmpl/old/GstElement.sgml:
6411         * docs/gst/tmpl/old/GstEvent.sgml:
6412         * docs/gst/tmpl/old/GstIndex.sgml:
6413         * docs/gst/tmpl/old/GstStructure.sgml:
6414         * docs/gst/tmpl/old/GstTag.sgml:
6415
6416 2004-04-28  David Schleef  <ds@schleef.org>
6417
6418         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6419         (gst_caps_append), (gst_caps_append_structure),
6420         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
6421         (gst_caps_set_simple), (gst_caps_set_simple_valist),
6422         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
6423         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
6424         (gst_caps_intersect), (gst_caps_normalize),
6425         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
6426         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
6427         * gst/gstcaps.h: use GST_IS_CAPS().
6428
6429 2004-04-26  David Schleef  <ds@schleef.org>
6430
6431         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
6432         assembly.  gcc doesn't handle it correctly. (bug #141083)
6433         * gst/gsttrashstack.h: same
6434
6435 2004-04-25  Benjamin Otte  <otte@gnome.org>
6436
6437         * gst/gstelement.c: (gst_element_change_state):
6438           fix assertion to do an int comparison
6439
6440 2004-04-25  Benjamin Otte  <otte@gnome.org>
6441
6442         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6443           better debugging output on error
6444
6445 2004-04-25  Benjamin Otte  <otte@gnome.org>
6446
6447         * gst/gstcaps.c: (gst_caps_subtract):
6448           fix memleak
6449
6450 2004-04-23  Benjamin Otte  <otte@gnome.org>
6451
6452         * gst/gstvalue.c: (gst_value_compare_buffer),
6453         (_gst_value_initialize):
6454           add comparison function for buffers
6455
6456 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6457
6458         * docs/pwg/pwg.xml:
6459           Just found out that this so-called "ima-wav" format is really
6460           just "dvi adpcm" (according to the MS WAV documentation). So
6461           renaming it. We didn't use it yet anyway.
6462
6463 2004-04-23  Benjamin Otte  <otte@gnome.org>
6464
6465         * gst/gstcaps.c: (gst_caps_is_always_compatible):
6466           call gst_caps_is_subset
6467
6468 2004-04-23  Benjamin Otte  <otte@gnome.org>
6469
6470         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
6471         (gst_caps_is_subset):
6472           add documentation
6473
6474 2004-04-23  Benjamin Otte  <otte@gnome.org>
6475           
6476         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
6477         (gst_caps_structure_subtract), (gst_caps_subtract),
6478         (gst_caps_structure_figure_out_union),
6479         (gst_caps_structure_simplify), (gst_caps_do_simplify):
6480           fix simplifying and subtracting not working correctly with optional
6481           properties
6482           solve assorted problems that make it now simplify ebven more
6483         * docs/gst/tmpl/gstcaps.sgml:
6484         * gst/gstcaps.h:
6485           make gst_caps_do_simplify return a bool to indicate if it simplified
6486         * testsuite/caps/simplify.c: (main):
6487           add more checks. The tests is quite a bit useless right now because
6488           the core is heavily simplifying itself.
6489         * testsuite/caps/caps.h:
6490           fix caps to contain all optional properties
6491
6492 2004-04-22  Benjamin Otte  <otte@gnome.org>
6493
6494         * docs/gst/tmpl/gstcaps.sgml:
6495         * docs/gst/tmpl/gstfilesrc.sgml:
6496         * docs/gst/tmpl/gststructure.sgml:
6497         * docs/gst/tmpl/gstvalue.sgml:
6498           update for recent API changes
6499         * gst/gstcaps.c: (gst_caps_do_simplify):
6500           fix to stop trying with a freed structure
6501         * gst/gstpad.c: (gst_pad_link_fixate):
6502           simplify caps
6503         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
6504           remove C++ comment
6505         * gst/gstpad.h:
6506           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
6507         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6508         (gst_structure_to_string):
6509           keep the correct type when using lists of ranges
6510         * gst/gstvalue.c: (gst_value_list_prepend_value),
6511         (gst_value_list_append_value):
6512           copy the value before adding to the list (d'oh)
6513         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
6514         (gst_value_subtract_int_range_int_range):
6515           handle overflows correctly
6516         * gst/gstvalue.c: (gst_value_subtract_from_list):
6517           fix memleak
6518         * testsuite/caps/caps.h:
6519           add a caps that caused segfaults
6520
6521 2004-04-22  Benjamin Otte  <otte@gnome.org>
6522
6523         * testsuite/refcounting/pad.c: (main):
6524           fix test
6525
6526 2004-04-22  Benjamin Otte  <otte@gnome.org>
6527
6528         * gst/gstcaps.c: (gst_caps_subtract):
6529           allow subtracting ANY and EMPTY from ANY caps
6530
6531 2004-04-22  Benjamin Otte  <otte@gnome.org>
6532
6533         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
6534         (gst_caps_union):
6535           only simplify in functions that create new caps. Simplifying in
6536           gst_caps_append breaks tests.
6537
6538 2004-04-22  Benjamin Otte  <otte@gnome.org>
6539
6540         * gst/gstcaps.c: (gst_caps_structure_simplify):
6541           unset GValue after use
6542         * gst/gstcaps.c: (gst_caps_append), 
6543         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
6544           use gst_caps_simplify (reduces registry size by 30%)
6545         * gst/gstpad.c: (gst_pad_template_new):
6546           don't allow NULL caps
6547
6548 2004-04-22  Benjamin Otte  <otte@gnome.org>
6549
6550         * docs/gst/gstreamer-sections.txt:
6551           add gst_caps_do_simplify
6552         * gst/gstcaps.c:
6553           add documentation for gst_caps_do_simplify
6554         * gst/gstvalue.h:
6555           fix typo in gst_value_register_subtract_func declaration for gst-doc
6556
6557 2004-04-22  Benjamin Otte  <otte@gnome.org>
6558
6559         * gst/gstcaps.c: (gst_caps_from_string_inplace):
6560           fix bug when converting from empty string.
6561         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
6562         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
6563           use gst_caps_new_empty to allocate a new caps. Only that function
6564           allocates memory for caps now.
6565         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
6566         (gst_caps_remove_structure):
6567           add ability to remove one structure (but not to header yet)
6568         * gst/gstcaps.c: (gst_caps_compare_structures),
6569         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
6570         (gst_caps_structure_simplify), (gst_caps_do_simplify),
6571         * gst/gstcaps.h:
6572           add gst_caps_do_simplify that tries to simplify a caps in place.
6573           Deprecate old gst_caps_simplify function.
6574         * testsuite/caps/caps.h:
6575           add caps.h containing a common set of caps to test against.
6576         * testsuite/caps/sets.c: (check_caps), (main):
6577           use it.
6578         * testsuite/caps/.cvsignore:
6579         * testsuite/caps/Makefile.am:
6580         * testsuite/caps/simplify.c: (check_caps), (main):
6581           add test to check correctness and efficency of caps simplification.
6582
6583 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
6584
6585         reviewed by Benjamin Otte  <otte@gnome.org>
6586
6587         * gst/gstparse.c: (_gst_parse_escape):
6588           Free the GString used in _gst_parse_escape()
6589
6590 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6591
6592         * gst/gstpad.c: (gst_pad_link_negotiate):
6593           refuse to link if the link is not possible
6594         * configure.ac:
6595         * testsuite/Makefile.am:
6596         * testsuite/negotiation/.cvsignore:
6597         * testsuite/negotiation/Makefile.am:
6598         * testsuite/negotiation/pad_link.c: (main):
6599           add test that checks the above behaviour
6600
6601 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6602
6603         * docs/gst/gstreamer-sections.txt:
6604           add newly added API
6605
6606 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6607
6608         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
6609         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
6610         (gst_filesrc_open_file), (gst_filesrc_close_file),
6611         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
6612         * gst/elements/gstfilesrc.h:
6613           add support for non-regular files (#140734)
6614
6615 2004-04-21  Benjamin Otte  <otte@gnome.org>
6616
6617         * gst/gstpad.c: (gst_pad_link_fixate):
6618           add sophisticated error checking code to see if fixation functions
6619           did their fixation right
6620
6621 2004-04-21  Benjamin Otte  <otte@gnome.org>
6622
6623         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
6624           check for ANY caps before appending/unioning
6625         * gst/gstcaps.c: (gst_caps_is_subset),
6626         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
6627         (gst_caps_structure_subtract), (gst_caps_subtract):
6628         * gst/gstcaps.h:
6629           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
6630           the API. deprecate gst_caps_is_equal_fixed
6631         * gst/gstpad.c: (gst_pad_try_set_caps):
6632         * gst/gstqueue.c: (gst_queue_link):
6633           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
6634         * gst/gststructure.c: (gst_structure_get_name_id):
6635         * gst/gststructure.h:
6636           add function gst_structure_get_name_id
6637         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
6638         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
6639         (gst_value_subtract_int_range_int_range),
6640         (gst_value_subtract_double_double_range),
6641         (gst_value_subtract_double_range_double),
6642         (gst_value_subtract_double_range_double_range),
6643         (gst_value_subtract_from_list), (gst_value_subtract_list),
6644         (gst_value_can_intersect), (gst_value_subtract),
6645         (gst_value_can_subtract), (gst_value_register_subtract_func),
6646         (_gst_value_initialize):
6647         * gst/gstvalue.h:
6648           add support for subtracting values from each other. Note that
6649           subtracting means subtracting as in set theory. Required for caps
6650           stuff above.
6651         * testsuite/caps/.cvsignore:
6652         * testsuite/caps/Makefile.am:
6653         * testsuite/caps/erathostenes.c: (erathostenes), (main):
6654         * testsuite/caps/sets.c: (check_caps), (main):
6655         * testsuite/caps/subtract.c: (check_caps), (main):
6656           add tests for subtraction and equality code.
6657
6658 2004-04-20  David Schleef  <ds@schleef.org>
6659
6660         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
6661         * gst/indexers/Makefile.am:
6662         * gst/schedulers/Makefile.am:
6663         * libs/gst/bytestream/Makefile.am:
6664         * libs/gst/control/Makefile.am:
6665         * libs/gst/getbits/Makefile.am:
6666
6667 2004-04-20  David Schleef  <ds@schleef.org>
6668
6669         * common/as-libtool.mak: Fine-tune DLL building.
6670         * configure.ac: Link plugins against libgstreamer.  Define plugindir
6671         (like gst-plugins)
6672         * examples/plugins/Makefile.am: remove plugindir
6673         * gst/autoplug/Makefile.am: DLL building fixes
6674         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
6675         Windows.
6676         * gst/elements/gstelements.c: Conditionally disable pipefilter.
6677         * gst/indexers/Makefile.am: DLL building fixes
6678         * gst/schedulers/Makefile.am: DLL building fixes.
6679         * libs/gst/bytestream/Makefile.am: DLL building fixes.
6680         * libs/gst/control/Makefile.am: same
6681         * libs/gst/getbits/Makefile.am: same
6682         * testsuite/Makefile.am: New dlopen directory
6683         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
6684         when dlopened.
6685         * testsuite/dlopen/dlopen_gst.c: (main): same
6686         * testsuite/dlopen/loadgst.c: (do_test): same
6687
6688 2004-04-20  David Schleef  <ds@schleef.org>
6689
6690         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
6691         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
6692
6693 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6694
6695         * gst/gstelement.c: (gst_element_wait),
6696         (gst_element_set_time_delay), (gst_element_change_state):
6697           Use GST_TIME_*
6698
6699 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6700
6701         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
6702         (gst_spider_identity_plug):
6703           improve debugging messages
6704         * gst/gstbin.c: (gst_bin_remove_func):
6705           make sure the state_change function is only called with simple state
6706           transitions
6707
6708 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6709
6710         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
6711         (gst_fakesink_set_property), (gst_fakesink_chain):
6712         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
6713         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
6714         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
6715         * gst/elements/gstidentity.c: (gst_identity_chain),
6716         (gst_identity_set_property):
6717         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
6718         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
6719           add warnings to _set_property for unknown arguments
6720           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
6721
6722 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6723
6724         * Makefile.am:
6725         * docs/manuals.mak:
6726           add .po file download snippet
6727           fix a bug in the doc makefile
6728
6729 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6730
6731         * Makefile.am:
6732         * po/LINGUAS:
6733         * po/en_GB.po:
6734           Added en_GB translation (Gareth Owen)
6735
6736 2004-04-20  Johan Dahlin  <johan@gnome.org>
6737
6738         * gst/gstpad.c (_invent_event): Clean up
6739
6740 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6741
6742         * testsuite/caps/filtercaps.c: (main):
6743           fix test to test things correctly (caps are complicated)
6744
6745 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6746
6747         * testsuite/caps/Makefile.am:
6748         * testsuite/caps/filtercaps.c: (main):
6749           add test (that doesn't work right now, but should)
6750
6751 2004-04-19  David Schleef  <ds@schleef.org>
6752
6753         * configure.ac: Add test for allowing unaligned access.  Add define
6754         to put in gstconfig.h.
6755         * docs/gst/gstreamer-sections.txt: New symbols
6756         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
6757         * docs/gst/tmpl/gstfilesrc.sgml:
6758         * docs/gst/tmpl/gstparse.sgml:
6759         * docs/gst/tmpl/gsttypes.sgml:
6760         * docs/gst/tmpl/gstutils.sgml:
6761         * docs/gst/tmpl/gstvalue.sgml:
6762         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
6763         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
6764         on most !i386/!powerpc architectures.  From Daniel Gazard
6765         <daniel.gazard@free.fr>.  (bug #140156)
6766         * po/af.po: Check in changes made by gettext.
6767         * po/az.po:
6768         * po/fr.po:
6769         * po/nl.po:
6770         * po/sr.po:
6771         * po/sv.po:
6772
6773 2004-04-20  Benjamin Otte  <otte@gnome.org>
6774
6775         * gst/schedulers/entryscheduler.c: 
6776         (gst_entry_scheduler_yield):
6777           refuse to yield when decoupled elements insist on doing that.
6778           At least it's better than crashing
6779
6780 2004-04-19  David Schleef  <ds@schleef.org>
6781
6782         * docs/libs/Makefile.am: Change sinclude to include
6783         * docs/gst/Makefile.am: same
6784         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
6785
6786 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6787
6788         * po/LINGUAS:
6789         * po/uk.po:
6790           Added Ukrainian translation (Maxim V. Dziumanenko)
6791
6792 2004-04-19  Johan Dahlin  <johan@gnome.org>
6793
6794         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
6795         checking here, do it before calling the function.
6796         Clean up, use for loops instead of while loops while iterating
6797         over lists.
6798
6799         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
6800         in debug message.
6801         (gst_spider_create_and_plug): Improve debug message.
6802         General: Replace while loops which iterates over GLists with for
6803         loops. Which are much cleaner, improves readability, especially
6804         for gst_spider_identity_plug
6805
6806         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
6807         fixes bug 140477
6808
6809 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6810
6811         * po/LINGUAS:
6812         * po/tr.po:
6813           Added Turkish translation (Baris Cicek)
6814
6815 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6816
6817         * docs/faq/troubleshooting.xml:
6818           Mention gst-register in the FAQ (fixes 139045).
6819
6820 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6821
6822         * docs/gst/gstreamer-sections.txt:
6823
6824 2004-04-17  Benjamin Otte  <otte@gnome.org>
6825
6826         * gst/gstelement.c: (gst_element_dispose):
6827           simplify
6828         * gst/gstpad.c: (gst_pad_call_chain_function):
6829           don't create loads of events due to bad macro usage
6830
6831 2004-04-16  David Schleef  <ds@schleef.org>
6832
6833         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6834         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
6835         * gst/gstvalue.c: (gst_value_serialize_buffer),
6836         (gst_value_deserialize_buffer), (gst_type_is_fixed),
6837         (_gst_value_initialize): Create a new function gst_type_is_fixed()
6838         to indicate types that are fixed wrt caps or not.  Switching to
6839         this function fixes (bug #140298).
6840         * gst/gstvalue.h:
6841
6842 2004-04-16  David Schleef  <ds@schleef.org>
6843
6844         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
6845         for GST_UNALIGNED_ACESS, since we essentially know which archs
6846         are ok.
6847
6848 2004-04-17  Benjamin Otte  <otte@gnome.org>
6849
6850         * docs/gst/Makefile.am:
6851           ignore gst/parse directory when building docs (fixes #140205)
6852
6853 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6854
6855         * testsuite/refcounting/mem.c: (vmsize):
6856           do error checking
6857
6858 2004-04-16  Johan Dahlin  <johan@gnome.org>
6859
6860         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
6861         and gst_pad_call_get_function.
6862
6863 2004-04-15  David Schleef  <ds@schleef.org>
6864
6865         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
6866         checks if we can access unaligned memory.
6867         * configure.ac: Use it.
6868
6869 2004-04-16  Benjamin Otte  <otte@gnome.org>
6870
6871         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
6872         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6873         * gst/elements/gstfilesrc.h:
6874           s/seek_happened/need_discont/ and require discont before sending any
6875           data
6876
6877 2004-04-15  David Schleef  <ds@schleef.org>
6878
6879         * gst/gstvalue.c: (gst_value_serialize_buffer),
6880         (gst_value_deserialize_buffer), (_gst_value_initialize):
6881         Register these types as fundamental types. (bug #140015)
6882
6883 2004-04-16  Benjamin Otte  <otte@gnome.org>
6884
6885         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
6886         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
6887         (gst_pad_pull):
6888           implement enforcing discont events before buffers are passed. This
6889           allows state changes of only some elements and later correctly going
6890           on where they left off (or in short: you can now set audio sinks to
6891           NULL to release the device when the pipeline is paused)
6892         * gst/gstpad.c: (gst_pad_call_chain_function),
6893         (gst_pad_call_get_function):
6894         * gst/gstpad.h:
6895           add gst_pad_call_chain_function and gst_pad_call_get_function for
6896           scheduler interaction. They are required because of the changes
6897           above.
6898         * gst/schedulers/entryscheduler.c: (get_buffer),
6899         (gst_entry_scheduler_chain_wrapper),
6900         (gst_entry_scheduler_get_wrapper),
6901         (gst_entry_scheduler_state_transition),
6902         (gst_entry_scheduler_pad_link):
6903         * gst/schedulers/gstbasicscheduler.c:
6904         (gst_basic_scheduler_chain_wrapper),
6905         (gst_basic_scheduler_src_wrapper),
6906         (gst_basic_scheduler_chainhandler_proxy),
6907         (gst_basic_scheduler_gethandler_proxy),
6908         (gst_basic_scheduler_cothreaded_chain),
6909         (gst_basic_scheduler_chain_elements):
6910         * gst/schedulers/gstoptimalscheduler.c:
6911         (get_group_schedule_function), (pad_clear_queued),
6912         (gst_opt_scheduler_pad_link):
6913           use the new functions instead of calling get/chain-functions
6914           directly.
6915
6916 2004-04-15  David Schleef  <ds@schleef.org>
6917
6918         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
6919         * docs/gst/tmpl/gstinfo.sgml: same
6920         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
6921         gtk-doc put here.
6922         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
6923         * examples/queue/queue.c: (main):  We iterate pipelines, not
6924         bins.  (bug #139996)
6925
6926 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6927
6928         * docs/pwg/advanced-types.xml:
6929           Add MS RLE support. Also document Qt RLE although I have no sample
6930           files for that yet. And document an extra property for ADPCM.
6931
6932 2004-04-15  David Schleef  <ds@schleef.org>
6933
6934         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
6935         (_gst_plugin_fault_handler_setup):  Disable more stuff on
6936         Windows.
6937
6938 2004-04-15  David Schleef  <ds@schleef.org>
6939
6940         * gst/gstinfo.c: (_gst_debug_init): Change some internal
6941         symbol names to not conflict with new gstinfo.h symbols.
6942         * gst/gstinfo.h: Add inline functions for all those crazy
6943         compilers that don't know how to handle variadic macros (MSVC).
6944
6945 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6946
6947         * configure.ac: bump nano to 1
6948
6949 === release 0.8.1 ===
6950
6951 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6952
6953         * NEWS:
6954         * RELEASE:
6955         * configure.ac:
6956           releasing 0.8.1, "Snow Brigade"
6957
6958 2004-04-14  David Schleef  <ds@schleef.org>
6959
6960         * testsuite/Makefile.am: define tests_ignore
6961         * testsuite/Rules: Added new tests_ignore, which get compiled,
6962         but not run (generally because they're inconsistent or have
6963         heisenbugs).  Now we can ensure all the .c files compile in
6964         testsuite/.
6965         * testsuite/bins/Makefile.am: define tests_ignore
6966         * testsuite/bytestream/Makefile.am:
6967         * testsuite/caps/Makefile.am:
6968         * testsuite/clock/Makefile.am:
6969         * testsuite/debug/Makefile.am:
6970         * testsuite/debug/global.c: (gst_debug_log_one),
6971         (gst_debug_log_two): Fix compilation problem.
6972         * testsuite/dynparams/Makefile.am:
6973         * testsuite/elements/Makefile.am:
6974         * testsuite/ghostpads/Makefile.am:
6975         * testsuite/indexers/Makefile.am:
6976         * testsuite/parse/Makefile.am:
6977         * testsuite/plugin/Makefile.am:
6978         * testsuite/refcounting/Makefile.am:
6979         * testsuite/refcounting/element_pad.c: (main): Don't return leak
6980         results, because it's not calculated correctly.
6981         * testsuite/refcounting/pad.c: (main): same
6982         * testsuite/states/Makefile.am:
6983         * testsuite/tags/Makefile.am:
6984         * testsuite/threads/Makefile.am:
6985
6986 2004-04-14  David Schleef  <ds@schleef.org>
6987
6988         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
6989         generating bad code around the cpu detection asm code.
6990
6991 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
6992
6993         * tools/gst-inspect.c: (print_element_info):
6994           print numeric version of rank as well, since we added some - 1
6995           rank values to elements
6996
6997 2004-04-13  David Schleef  <ds@schleef.org>
6998
6999         * configure.ac:  Disable various code when compiling for MinGW.
7000         * gst/elements/Makefile.am:
7001         * gst/elements/gstelements.c:
7002         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7003         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7004         * gst/registries/gstxmlregistry.c: (make_dir):
7005
7006 2004-04-13  David Schleef  <ds@schleef.org>
7007
7008         * gst/Makefile.am:
7009         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7010         assembly.
7011         * gst/gstcpuid_i386.s: remove
7012
7013 2004-04-13  David Schleef  <ds@schleef.org>
7014
7015         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
7016         seems to think it needs to be done.
7017         * docs/gst/tmpl/gstfakesink.sgml:
7018         * docs/gst/tmpl/gstfakesrc.sgml:
7019         * docs/gst/tmpl/gstfdsink.sgml:
7020         * docs/gst/tmpl/gstfdsrc.sgml:
7021         * docs/gst/tmpl/gstfilesink.sgml:
7022         * docs/gst/tmpl/gstfilesrc.sgml:
7023         * docs/gst/tmpl/gstidentity.sgml:
7024         * docs/gst/tmpl/gstmd5sink.sgml:
7025         * docs/gst/tmpl/gstmultifilesrc.sgml:
7026         * docs/gst/tmpl/gstpipefilter.sgml:
7027         * docs/gst/tmpl/gstshaper.sgml:
7028         * docs/gst/tmpl/gstspider.sgml:
7029         * docs/gst/tmpl/gstspideridentity.sgml:
7030         * docs/gst/tmpl/gststatistics.sgml:
7031         * docs/gst/tmpl/gsttee.sgml:
7032         * docs/gst/tmpl/gsttypefind.sgml:
7033         * docs/gst/tmpl/gstutils.sgml:
7034
7035 2004-04-13  David Schleef  <ds@schleef.org>
7036
7037         * configure.ac: Changes to remove POSIXisms (mmap in this case)
7038         and to build DLLs on Windows.
7039         * gst/Makefile.am:
7040         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7041         (gst_filesrc_open_file):
7042         * gst/schedulers/Makefile.am:
7043
7044 2004-04-13  David Schleef  <ds@schleef.org>
7045
7046         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
7047         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
7048         fixating lists.
7049
7050 2004-04-12  David Schleef  <ds@schleef.org>
7051
7052         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
7053         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
7054         to using it.
7055         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
7056         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
7057         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
7058         * gst/gststructure.c: (gst_structure_set_valist),
7059         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
7060         support for buffers.
7061         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
7062         intended to be const.
7063         * gst/gsttag.h: same
7064         * gst/gstvalue.c: (gst_value_serialize_buffer),
7065         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
7066         to (de)serialize buffers.
7067         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
7068         * testsuite/caps/string-conversions.c: (main):
7069         * testsuite/caps/value_serialize.c: add new test
7070
7071 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7072
7073         * docs/pwg/advanced-types.xml:
7074           Document MS video 1 (video/x-msvideocodec) mimetype/format.
7075
7076 2004-04-11  Benjamin Otte  <otte@gnome.org>
7077
7078         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7079           rename categories to basic_*
7080         * gst/schedulers/gstbasicscheduler.c: 
7081         (gst_basic_scheduler_chain_wrapper),
7082         (gst_basic_scheduler_chainhandler_proxy),
7083         (gst_basic_scheduler_gethandler_proxy),
7084         (gst_basic_scheduler_eventhandler_proxy):
7085           debugging category fixes - put common stuff in log category
7086         * gst/schedulers/gstbasicscheduler.c: 
7087         (gst_basic_scheduler_chain_elements):
7088           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
7089           active and linking two active chains
7090
7091 2004-04-10  Benjamin Otte  <otte@gnome.org>
7092
7093         * docs/pwg/intro-preface.xml:
7094           fix dead links and remove reference to Wiki
7095
7096 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7097
7098         * gst/schedulers/gstbasicscheduler.c:
7099           make sure we can switch back to the main function if we're still in
7100           the main function (supposed to fix #139617)
7101         * gst/schedulers/gthread-cothreads.h:
7102           don't throw an error when switching to the same cothread
7103
7104 2004-04-09  Benjamin Otte  <otte@gnome.org>
7105
7106         * gst/gstbin.c: (gst_bin_get_type):
7107         * gst/gstclock.c: (gst_clock_get_type):
7108         * gst/gstindex.c: (gst_index_get_type):
7109         * gst/gstobject.c: (gst_object_get_type),
7110         (gst_signal_object_get_type):
7111         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
7112         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
7113         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
7114         * gst/gstqueue.c: (gst_queue_get_type):
7115         * gst/gstregistry.c: (gst_registry_get_type):
7116         * gst/gstsystemclock.c: (gst_system_clock_get_type):
7117         * gst/gstthread.c: (gst_thread_get_type):
7118           don't use memchunks for these objects, use malloc instead
7119
7120 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7121
7122         * docs/gst/.cvsignore:
7123         * docs/gst/Makefile.am:
7124         * docs/gst/gstreamer-sections.txt:
7125         * docs/gst/tmpl/gstaggregator.sgml:
7126         * docs/gst/tmpl/gstbuffer.sgml:
7127         * docs/gst/tmpl/gstclock.sgml:
7128         * docs/gst/tmpl/gstelement.sgml:
7129         * docs/gst/tmpl/gstfakesink.sgml:
7130         * docs/gst/tmpl/gstfakesrc.sgml:
7131         * docs/gst/tmpl/gstfdsink.sgml:
7132         * docs/gst/tmpl/gstfdsrc.sgml:
7133         * docs/gst/tmpl/gstfilesink.sgml:
7134         * docs/gst/tmpl/gstfilesrc.sgml:
7135         * docs/gst/tmpl/gstidentity.sgml:
7136         * docs/gst/tmpl/gstindex.sgml:
7137         * docs/gst/tmpl/gstinfo.sgml:
7138         * docs/gst/tmpl/gstmd5sink.sgml:
7139         * docs/gst/tmpl/gstmultifilesrc.sgml:
7140         * docs/gst/tmpl/gstpad.sgml:
7141         * docs/gst/tmpl/gstpipefilter.sgml:
7142         * docs/gst/tmpl/gstpipeline.sgml:
7143         * docs/gst/tmpl/gstpluginfeature.sgml:
7144         * docs/gst/tmpl/gstqueue.sgml:
7145         * docs/gst/tmpl/gstregistry.sgml:
7146         * docs/gst/tmpl/gstscheduler.sgml:
7147         * docs/gst/tmpl/gstshaper.sgml:
7148         * docs/gst/tmpl/gstspider.sgml:
7149         * docs/gst/tmpl/gstspideridentity.sgml:
7150         * docs/gst/tmpl/gststatistics.sgml:
7151         * docs/gst/tmpl/gstsystemclock.sgml:
7152         * docs/gst/tmpl/gsttee.sgml:
7153         * docs/gst/tmpl/gstthread.sgml:
7154         * docs/gst/tmpl/gsttypefind.sgml:
7155         * docs/gst/tmpl/gstutils.sgml:
7156           further doc build fixes
7157
7158 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7159
7160         * docs/gst/Makefile.am:
7161           make docs exit on scanning problems
7162           fix nonsrcdir build issues
7163         * docs/gst/gstreamer-sections.txt:
7164           adding stuff from -unused
7165         * gst/gstqueue.h:
7166           create GstQueueSize
7167         * gst/schedulers/cothreads_compat.h:
7168           fix cothread warnings
7169
7170 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7171
7172         * docs/gst/gstreamer-sections.txt:
7173           remove defines deprecated by Benjamin
7174
7175 2004-04-07  Benjamin Otte  <otte@gnome.org>
7176
7177         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7178           when the buffer is complete, don't check if other buffers are needed
7179         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
7180           check that the offset is >0 so we don't try to read before the
7181           beginning of the file
7182         * gst/gstpad.c: (gst_pad_set_pad_template):
7183           sink the template, so we don't end up with 130k pad templates
7184
7185 2004-04-06  Benjamin Otte  <otte@gnome.org>
7186
7187         * gst/autoplug/gstspider.c: (gst_spider_link_add):
7188           don't ref the element, adding already reffed it. And we didn't unref
7189           it later anyway... (huge memleak when you used many spider elements)
7190         * gst/gstelement.c: (gst_element_base_class_finalize):
7191         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
7192         (gst_element_register):
7193         * gst/gsturi.c: (gst_element_make_from_uri):
7194           use gst_object_(un)ref instead of g_object(un)ref
7195
7196 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7197
7198         * gst/gstbuffer.h:
7199           remove macro that wouldn't work anymore because struct member has
7200           been removed.
7201         * gst/schedulers/entryscheduler.c: (schedule_forward):
7202           fix segfault for unconnected pads
7203         
7204 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7205
7206         reviewed by David Schleef <ds@schleef.org>
7207
7208         * gst/gstinfo.h:
7209           *_FORMAT modifiers should require putting a % in front of them for
7210           consistency reasons.
7211
7212 2004-04-05  Colin Walters  <walters@redhat.com>
7213
7214         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
7215         space.
7216
7217 2004-04-05  Benjamin Otte  <otte@gnome.org>
7218
7219         * configure.ac:
7220         * gst/Makefile.am:
7221         * gst/gst_private.h:
7222         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
7223           add support for detecting if GStreamer runs inside valgrind.
7224           requires valgrind (d'oh) and --enable-debug for correct cdetection.
7225           print a big message in valgrind that GStreamer has detected it's
7226           running inside and might now use different code.
7227         * gst/gstmemchunk.c: (populate), (free_area),
7228         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
7229         (gst_mem_chunk_free):
7230           flag memchunks for valgrind, so it can detect leaking of chunks.
7231           This allows detecting leaks of GstBuffer and GstEvent correctly
7232           inside valgrind.
7233
7234 2004-04-05  David Schleef  <ds@schleef.org>
7235
7236         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
7237           jensgr@gmx.net (Jens Granseuer)
7238
7239 2004-04-05  David Schleef  <ds@schleef.org>
7240
7241         * gst/gstbuffer.c: (_gst_buffer_sub_free),
7242         (gst_buffer_default_free), (gst_buffer_default_copy),
7243         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
7244         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
7245         structures in one place.
7246
7247 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7248
7249         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
7250           (GST_TIME_FORMAT, GST_TIME_ARGS)
7251
7252 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7253
7254         * testsuite/elements/Makefile.am:
7255           disable test until it stops breaking make distcheck
7256
7257 2004-04-05  Johan Dahlin  <johan@gnome.org>
7258
7259         * po/sv.po: Updated translation
7260
7261 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7262
7263         * gst/gstplugin.c: (gst_plugin_load_file):
7264           fix segfault for when original plugin was loaded statically
7265
7266 2004-04-05  Benjamin Otte  <otte@gnome.org>
7267
7268         * testsuite/debug/category.c: (main):
7269         * testsuite/debug/commandline.c: (main):
7270         * testsuite/debug/output.c: (main):
7271           fix tests to work again with debugging enabled
7272
7273 2004-04-05  Benjamin Otte  <otte@gnome.org>
7274
7275         * gst/schedulers/gstbasicscheduler.c:
7276         (gst_basic_scheduler_pad_link):
7277           fix to work with recent scheduling changes
7278
7279 2004-04-05  Benjamin Otte  <otte@gnome.org>
7280
7281         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
7282         prepareChangeLog doesn't work when cvs indents):
7283           don't throw an error when no element can be scheduled, there's too
7284           many weird reasons why it doesn't work. Return STOPPED instead.
7285           decoupled elemts' schedulability doesn't depend on bufpens.
7286
7287 2004-04-04  Benjamin Otte  <otte@gnome.org>
7288
7289         * gst/schedulers/gstbasicscheduler.c:
7290         (gst_basic_scheduler_pad_select):
7291           fix uninitialized variable warnings
7292
7293 2004-04-04  Benjamin Otte  <otte@gnome.org>
7294
7295         * gst/gstpad.c: (gst_pad_collect_valist):
7296           fix uninitialized variable warning
7297         * gst/schedulers/entryscheduler.c: (schedule_forward):
7298           fix shadowed variable
7299
7300 2004-04-04  Benjamin Otte  <otte@gnome.org>
7301
7302         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
7303         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
7304         (gst_pad_select):
7305         * gst/gstpad.h:
7306         * gst/gstscheduler.c: (gst_scheduler_pad_select),
7307         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
7308         * gst/gstscheduler.h:
7309           implement gst_pad_collect as replacement for gst_pad_select.
7310           deprecate gst_pad_select and gst_scheduler_(un)lock_element
7311           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
7312           new pad_select, lock and unlock calls.
7313         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
7314         * gst/cothreads.h:
7315         * gst/schedulers/cothreads_compat.h:
7316         * gst/schedulers/gthread-cothreads.h:
7317           remove unused cothread_lock and cothread_unlock calls
7318         * gst/schedulers/entryscheduler.c:
7319         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
7320         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
7321         (gst_entry_scheduler_pad_select):
7322           update to new API
7323         * gst/schedulers/gstbasicscheduler.c:
7324         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
7325         (gst_basic_scheduler_pad_select):
7326           remove useless lock and unlock calls, update pad_select to new API
7327           (untested)
7328         * gst/schedulers/gstoptimalscheduler.c:
7329         (gst_opt_scheduler_class_init):
7330           remove useless select, lock and unlock function calls
7331         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
7332           use gst_pad_collect instead of gst_pad_select
7333
7334 2004-04-04  Benjamin Otte  <otte@gnome.org>
7335
7336         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
7337         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
7338         (schedule_next_element), (print_entry):
7339           add can_schedule_pad to handle element states.
7340           add schedule_forward to select the correct entry to schedule next
7341
7342 2004-04-03  Benjamin Otte  <otte@gnome.org>
7343
7344         * gst/schedulers/entryscheduler.c: 
7345           remove unused variable, fix error inside Rb, fix compile warning in
7346           unreachable code
7347
7348 2004-04-03  Benjamin Otte  <otte@gnome.org>
7349
7350         * gst/schedulers/entryscheduler.c:
7351           completely revamp the inner workings, so it's a lot easier to
7352           understand and extend
7353
7354 2004-04-03  Andy Wingo  <wingo@pobox.com>
7355
7356         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
7357         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
7358         This allows better introspection of pipeline topology.
7359         (add_to_chain): Don't do trickery to put loop elements first;
7360         rather, queue a chain sort by marking the chain as dirty.
7361         (remove_from_chain): Mark the chain dirty.
7362         (sort_chain): New function. Sorts the group list so that terminal
7363         sinks are first. This means elements on the sink side will be
7364         preferentially sscheduled before elements on the src side of the
7365         pipeline.
7366         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
7367         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
7368         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
7369         (group_inc_link): Change argument and variable names to match the
7370         new link structure member names (src and sink).
7371         (group_dec_link): Add some description
7372
7373 2004-04-03  Benjamin Otte  <otte@gnome.org>
7374
7375         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
7376         * gst/gstinfo.h:
7377         * testsuite/debug/category.c: (main):
7378         * testsuite/debug/commandline.c: (main):
7379         * testsuite/debug/output.c: (main):
7380         * testsuite/debug/printf_extension.c: (main):
7381           fix to successfully build and test with --disable-gst-debug
7382           configure switch (fixes #138705)
7383
7384 2004-04-03  Benjamin Otte  <otte@gnome.org>
7385
7386         * docs/pwg/building-boiler.xml:
7387           add cvs login line and s/anonymous/anoncvs/
7388
7389 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
7390
7391         reviewed by Benjamin Otte  <otte@gnome.org>
7392
7393         * gst/gststructure.c: (gst_structure_free):
7394           memleak fix: free fields array (partial fix for #134839)
7395
7396 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7397
7398         * docs/random/ds/0.9-suggested-changes:
7399           Add a note to change handoff use in fakesrc to be usable in
7400           a more generic way (fakesrc should be renamed to appsrc or so).
7401         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7402           Change signal type to scope, so we can fill the buffer in the
7403           handoff handler (that's the whole use of this signal...).
7404
7405 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7406
7407         * docs/pwg/other-ntoone.xml:
7408           Document muxers and n-to-1 elements.
7409
7410 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
7411
7412         * gst/registries/gstxmlregistry.c
7413         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
7414         determine if a file is a G_MODULE. The old one discards paths
7415         containing "so" somewhere in the middle. My home directory is
7416         called "soto". Go figure...
7417
7418 2004-03-31  David Schleef  <ds@schleef.org>
7419
7420         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
7421         to eventually deprecate gst_buffer_merge().  (bug: #136408)
7422         * gst/gstbuffer.h:
7423
7424 2004-03-31  David Schleef  <ds@schleef.org>
7425
7426         * gst/gstvalue.c: (gst_value_union_int_int_range),
7427         (gst_value_union_int_range_int_range), (gst_value_can_union),
7428         (gst_value_union), (_gst_value_initialize):  Add some union
7429         implementations.  We didn't have any previously.
7430         * testsuite/caps/Makefile.am:
7431         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
7432         (gst_audioscale_getcaps), (test_caps), (main): A little test
7433         that is the same as the caps manipulation in audioscale.
7434
7435 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7436
7437         * docs/faq/general.xml:
7438           add entry about "does gst support format X?"
7439
7440 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7441
7442         * gst/gstthread.c:
7443           fix docs
7444         * gst/gstutils.h:
7445           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
7446
7447 2004-03-30  Benjamin Otte  <otte@gnome.org>
7448
7449         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7450           set the offset of the buffer to the requested offset
7451         * gst/elements/gsttypefind.c: (stop_typefinding):
7452           revert patch 1.18 (which I unfortunately don't know the reason for).
7453           This is needed to allow downstream elements to seek. Otherwise
7454           typefind might overwrite a previous seek by downstream elements.
7455           This lead to errors with id3tag and typefind on some mp3s.
7456         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
7457         (gst_entry_scheduler_iterate):
7458           be more verbose when debugging
7459
7460 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7461
7462         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7463           make sure we don't get NULL strings
7464
7465 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7466
7467         * gst/gstcaps.c:
7468         * gst/gstelement.c:
7469         * gst/gstelementfactory.c: (gst_element_factory_get_type):
7470         * gst/gstindex.c: (gst_index_resolver_get_type),
7471         (gst_index_get_type), (gst_index_factory_get_type):
7472         * gst/gstinfo.c:
7473         * gst/gstpad.c:
7474         * gst/gstplugin.c:
7475         * gst/gsturi.c: (gst_uri_handler_get_type):
7476         * gst/gstvalue.c:
7477           first batch of documentation fixes
7478
7479 2004-03-29  David Schleef  <ds@schleef.org>
7480
7481         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
7482         * docs/gst/gstreamer-docs.sgml:  More hacking
7483         * docs/gst/gstreamer-sections.txt:
7484         * docs/gst/tmpl/cothreads_compat.sgml:
7485         * docs/gst/tmpl/gstcaps.sgml:
7486         * docs/gst/tmpl/gstclock.sgml:
7487         * docs/gst/tmpl/gstelement.sgml:
7488         * docs/gst/tmpl/gstevent.sgml:
7489         * docs/gst/tmpl/gstpad.sgml:
7490         * docs/gst/tmpl/gstutils.sgml:
7491         * docs/gst/tmpl/gstxml.sgml:
7492         * docs/gst/tmpl/gthread-cothreads.sgml:
7493         * docs/random/ds/0.9-suggested-changes:
7494         * gst/elements/gstfakesink.h: doc fixes
7495         * gst/elements/gstfakesrc.h: doc fixes
7496         * gst/gstcaps.c: doc fixes
7497         * gst/gstcaps.h: doc fixes
7498         * gst/gstelement.c: doc fixes
7499         * gst/gstelement.h: doc fixes
7500         * gst/gstindex.c: doc fixes
7501         * gst/gstinfo.c: doc fixes
7502         * gst/gstpad.c: doc fixes
7503         * gst/gstpad.h: doc fixes
7504         * gst/gstplugin.c: doc fixes
7505         * gst/gsttypefind.h: doc fixes
7506         * gst/gsturi.c: doc fixes
7507         * gst/gstvalue.c: doc fixes
7508
7509 2004-03-29  Colin Walters  <walters@redhat.com>
7510
7511         * gst/registries/gstxmlregistry.c (get_time)
7512         (plugin_times_older_than_recurse):
7513         Use the result of stat to determine whether a path is a file,
7514         so we don't attempt to opendir() files.
7515
7516 2004-03-29  Benjamin Otte  <otte@gnome.org>
7517
7518         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7519           print caps in debugging output when setting caps failed
7520         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
7521         (schedule_next_element), (get_buffer), (run_chainhandler),
7522         (element_may_start), (gst_entry_scheduler_chain_handler),
7523         (gst_entry_scheduler_get_handler),
7524         (gst_entry_scheduler_state_transition),
7525         (gst_entry_scheduler_pad_link):
7526           make this scheduler a testcase for mandatory
7527           discont-before-first-buffer which is needed if we want to allow apps
7528           to release the sound device.
7529           add SCHED_ASSERT macro to print scheduler state before an assertion
7530           triggers.
7531
7532 2004-03-29  Benjamin Otte  <otte@gnome.org>
7533
7534         * COPYING:
7535           replace by LGPL (former COPYING.LIB). The core is completely
7536           licensed LGPL.
7537         * COPYING.LIB:
7538           remove
7539
7540 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7541
7542         * po/af.po:
7543         * po/sv.po:
7544           updated Afrikaans and Swedish
7545
7546 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7547
7548         * po/LINGUAS:
7549         * po/az.po:
7550           adding Azerbaijani (Mətin Əmirov)
7551
7552 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
7553
7554         * gst/gstelement.h: 
7555         * gst/gstelement.c (gst_element_set_time_delay): New function for
7556         setting element time taking into account a hardware buffering
7557         delay.
7558         (gst_element_set_time): Now just an invocation of
7559         gst_element_set_time_delay.
7560         * gst/gstclock.h: 
7561         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
7562         allowing to set event times in the future.
7563         (gst_clock_get_event_time): Now just an invocation of
7564         gst_clock_get_event_time_delay.
7565
7566 2004-03-28  Benjamin Otte  <otte@gnome.org>
7567
7568         * gst/gstbin.c: (gst_bin_set_element_sched),
7569         (gst_bin_unset_element_sched):
7570           don't add decoupled elements to schedulers - otherwise it's
7571           impossible to control if a link to a decoupled element was already
7572           removed from a scheduler or not.
7573         * gst/schedulers/cothreads_compat.h:
7574         * gst/schedulers/gthread-cothreads.h:
7575           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
7576           is no "unused" warning.
7577         * gst/schedulers/Makefile.am:
7578         * gst/schedulers/entryscheduler.c:
7579           add new scheduler, based on ideas from talking to David and Martin.
7580           It's supposed to be small and correct. Currently it's also slow (but
7581           it's not noticable)
7582         * examples/retag/retag.c: (main):
7583         * testsuite/bytestream/test1.c: (main):
7584           fix missing NULLs at end of variadic functions
7585         * testsuite/elements/.cvsignore:
7586           update
7587
7588 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
7589
7590         * gst/gstevent.h:
7591         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
7592
7593 2004-03-25  David Schleef  <ds@schleef.org>
7594
7595         * docs/gst/gstreamer-sections.txt:  More doc hacking.
7596         * docs/gst/tmpl/gstaggregator.sgml:
7597         * docs/gst/tmpl/gstautoplugfactory.sgml:
7598         * docs/gst/tmpl/gstbin.sgml:
7599         * docs/gst/tmpl/gstbuffer.sgml:
7600         * docs/gst/tmpl/gstbufferstore.sgml:
7601         * docs/gst/tmpl/gstfakesink.sgml:
7602         * docs/gst/tmpl/gstfakesrc.sgml:
7603         * docs/gst/tmpl/gstmd5sink.sgml:
7604         * docs/gst/tmpl/gstreamer-unused.sgml:
7605         * docs/gst/tmpl/gstsearchfuncs.sgml:
7606         * docs/gst/tmpl/gstshaper.sgml:
7607         * docs/gst/tmpl/gstspider.sgml:
7608         * docs/gst/tmpl/gsttee.sgml:
7609         * docs/gst/tmpl/gstutils.sgml:
7610         * docs/gst/tmpl/gstvalue.sgml:
7611         * docs/gst/tmpl/gstxml.sgml:
7612         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
7613         and we don't support it.
7614         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
7615         (gst_use_threads), (gst_has_threads): same
7616         * gst/gstthreaddummy.c: same
7617         * gst/autoplug/gstspider.c: Make gst_spider_details static.
7618         * gst/autoplug/gstspider.h: same
7619         * gst/elements/gstaggregator.h: Remove bogus function from header
7620         * gst/elements/gstfakesink.h: same
7621         * gst/elements/gstfakesrc.h: same
7622         * gst/elements/gstmd5sink.h: same
7623         * gst/elements/gstshaper.h: same
7624         * gst/elements/gsttee.h: same
7625         * gst/gstbin.c: doc fixes
7626         * gst/gstbin.h: Remove unused definition.
7627         * gst/gstbuffer.c: doc fixes
7628         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
7629         * gst/gstfilter.c: doc fixes
7630         * gst/gsttag.c: doc fixes
7631         * gst/gstvalue.c: doc fixes
7632
7633 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7634
7635         * docs/pwg/advanced-types.xml:
7636           Document typefinding.
7637         * docs/pwg/other-oneton.xml:
7638           Document one-to-n elements, demuxers and parsers.
7639
7640 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
7641
7642         reviewed by: David Schleef  <ds@schleef.org>
7643
7644         * configure.ac: Check bison version (bug #127838)
7645
7646 2004-03-25  David Schleef  <ds@schleef.org>
7647
7648         * docs/gst/gstreamer-docs.sgml: More fine tuning.
7649         * docs/gst/gstreamer-sections.txt:
7650         * docs/gst/tmpl/gstautoplug.sgml:
7651         * docs/gst/tmpl/gststaticautoplug.sgml:
7652         * docs/gst/tmpl/gststaticautoplugrender.sgml:
7653         * docs/gst/tmpl/gstutils.sgml:
7654         * docs/gst/tmpl/gstxml.sgml:
7655
7656 2004-03-24  David Schleef  <ds@schleef.org>
7657
7658         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
7659         manual being such complete crap, that I decided to do major
7660         hacking of it.  This checkin replaces any fine tuning that
7661         may have been done previously, with the benefit of actually
7662         being complete for much of the API that was changed since
7663         0.6.  Further fine tuning will occur shortly.  (bug #134721)
7664         * docs/gst/gstreamer-sections.txt:
7665         * docs/gst/tmpl/GstBin.sgml:
7666         * docs/gst/tmpl/GstBuffer.sgml:
7667         * docs/gst/tmpl/GstCaps.sgml:
7668         * docs/gst/tmpl/GstClock.sgml:
7669         * docs/gst/tmpl/GstCompat.sgml:
7670         * docs/gst/tmpl/GstData.sgml:
7671         * docs/gst/tmpl/GstElement.sgml:
7672         * docs/gst/tmpl/GstEvent.sgml:
7673         * docs/gst/tmpl/GstIndex.sgml:
7674         * docs/gst/tmpl/GstStructure.sgml:
7675         * docs/gst/tmpl/GstTag.sgml:
7676         * docs/gst/tmpl/cothreads.sgml:
7677         * docs/gst/tmpl/cothreads_compat.sgml:
7678         * docs/gst/tmpl/gettext.sgml:
7679         * docs/gst/tmpl/grammar.tab.sgml:
7680         * docs/gst/tmpl/gst-i18n-app.sgml:
7681         * docs/gst/tmpl/gst-i18n-lib.sgml:
7682         * docs/gst/tmpl/gst.sgml:
7683         * docs/gst/tmpl/gst_private.sgml:
7684         * docs/gst/tmpl/gstaggregator.sgml:
7685         * docs/gst/tmpl/gstarch.sgml:
7686         * docs/gst/tmpl/gstatomic.sgml:
7687         * docs/gst/tmpl/gstatomic_impl.sgml:
7688         * docs/gst/tmpl/gstbin.sgml:
7689         * docs/gst/tmpl/gstbuffer.sgml:
7690         * docs/gst/tmpl/gstbufferstore.sgml:
7691         * docs/gst/tmpl/gstcaps.sgml:
7692         * docs/gst/tmpl/gstclock.sgml:
7693         * docs/gst/tmpl/gstcompat.sgml:
7694         * docs/gst/tmpl/gstconfig.sgml:
7695         * docs/gst/tmpl/gstcpu.sgml:
7696         * docs/gst/tmpl/gstdata.sgml:
7697         * docs/gst/tmpl/gstdata_private.sgml:
7698         * docs/gst/tmpl/gstelement.sgml:
7699         * docs/gst/tmpl/gstenumtypes.sgml:
7700         * docs/gst/tmpl/gsterror.sgml:
7701         * docs/gst/tmpl/gstevent.sgml:
7702         * docs/gst/tmpl/gstfakesink.sgml:
7703         * docs/gst/tmpl/gstfakesrc.sgml:
7704         * docs/gst/tmpl/gstfilesink.sgml:
7705         * docs/gst/tmpl/gstfilter.sgml:
7706         * docs/gst/tmpl/gstindex.sgml:
7707         * docs/gst/tmpl/gstinfo.sgml:
7708         * docs/gst/tmpl/gstinterface.sgml:
7709         * docs/gst/tmpl/gstlog.sgml:
7710         * docs/gst/tmpl/gstmacros.sgml:
7711         * docs/gst/tmpl/gstmarshal.sgml:
7712         * docs/gst/tmpl/gstmd5sink.sgml:
7713         * docs/gst/tmpl/gstmultifilesrc.sgml:
7714         * docs/gst/tmpl/gstobject.sgml:
7715         * docs/gst/tmpl/gstpad.sgml:
7716         * docs/gst/tmpl/gstparse.sgml:
7717         * docs/gst/tmpl/gstpipeline.sgml:
7718         * docs/gst/tmpl/gstplugin.sgml:
7719         * docs/gst/tmpl/gstpluginfeature.sgml:
7720         * docs/gst/tmpl/gstqueue.sgml:
7721         * docs/gst/tmpl/gstreamer-unused.sgml:
7722         * docs/gst/tmpl/gstregistry.sgml:
7723         * docs/gst/tmpl/gstregistrypool.sgml:
7724         * docs/gst/tmpl/gstscheduler.sgml:
7725         * docs/gst/tmpl/gstsearchfuncs.sgml:
7726         * docs/gst/tmpl/gstshaper.sgml:
7727         * docs/gst/tmpl/gstspider.sgml:
7728         * docs/gst/tmpl/gstspideridentity.sgml:
7729         * docs/gst/tmpl/gststructure.sgml:
7730         * docs/gst/tmpl/gstsystemclock.sgml:
7731         * docs/gst/tmpl/gsttag.sgml:
7732         * docs/gst/tmpl/gsttaginterface.sgml:
7733         * docs/gst/tmpl/gsttee.sgml:
7734         * docs/gst/tmpl/gstthread.sgml:
7735         * docs/gst/tmpl/gsttrace.sgml:
7736         * docs/gst/tmpl/gsttrashstack.sgml:
7737         * docs/gst/tmpl/gsttypefind.sgml:
7738         * docs/gst/tmpl/gsttypes.sgml:
7739         * docs/gst/tmpl/gsturi.sgml:
7740         * docs/gst/tmpl/gsturitype.sgml:
7741         * docs/gst/tmpl/gstutils.sgml:
7742         * docs/gst/tmpl/gstvalue.sgml:
7743         * docs/gst/tmpl/gstversion.sgml:
7744         * docs/gst/tmpl/gstxml.sgml:
7745         * docs/gst/tmpl/gstxmlregistry.sgml:
7746         * docs/gst/tmpl/gthread-cothreads.sgml:
7747         * docs/gst/tmpl/types.sgml:
7748
7749 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7750
7751         * docs/pwg/other-sink.xml:
7752         * docs/pwg/other-source.xml:
7753           Documentation on how to write source and sink elements. Other
7754           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
7755           manager, autoplugger) are all still pending.
7756
7757 2004-03-25  Benjamin Otte  <otte@gnome.org>
7758
7759         * testsuite/elements/Makefile.am:
7760         * testsuite/elements/gst-compprep-check:
7761           add check to make sure gst-compprep works
7762         * testsuite/elements/gst-inspect-check.in:
7763           improve initialization output
7764         * testsuite/Makefile.am:
7765         * testsuite/gst-inspect-check:
7766           remove old file
7767
7768 2004-03-24  David Schleef  <ds@schleef.org>
7769
7770         * testsuite/elements/Makefile.am:
7771         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
7772         to the testsuite.
7773
7774 2004-03-24  Benjamin Otte  <otte@gnome.org>
7775
7776         * libs/gst/control/dparam.c: (gst_dparam_attach),
7777         (gst_dparam_detach):
7778         * libs/gst/control/dparammanager.c: (gst_dpman_init):
7779           fix lvalue casts for real
7780
7781 2004-03-24  Benjamin Otte  <otte@gnome.org>
7782
7783         * gst/schedulers/gstbasicscheduler.c:
7784         (gst_basic_scheduler_src_wrapper):
7785         * gst/schedulers/gstoptimalscheduler.c:
7786         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7787         (pad_clear_queued), (gst_opt_scheduler_add_element),
7788         (gst_opt_scheduler_remove_element):
7789           fix GStreamer to not have issues with lvalue casts anymore (fixes
7790           #136841)
7791
7792 2004-03-24  Benjamin Otte  <otte@gnome.org>
7793
7794         * gst/gstelement.c:
7795           add documentation about a gobject quirk where the object hasn't the
7796           correct class pointer set on initialization
7797         * gst/schedulers/gstbasicscheduler.c:
7798         (gst_basic_scheduler_src_wrapper):
7799           make sure to not run into an infinite loop
7800
7801 2004-03-22  Benjamin Otte  <otte@gnome.org>
7802
7803         * gst/gstutils.c: (gst_util_dump_mem):
7804         * gst/gstutils.h:
7805           first argument of gst_util_dump_mem should be const
7806
7807 2004-03-22  Johan Dahlin  <johan@gnome.org>
7808
7809         * gst/gstvalue.h: Clean up a little bit.
7810
7811 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
7812
7813         reviewed by Benjamin Otte  <otte@gnome.org>
7814
7815         * gst/autoplug/gstspider.c: (gst_spider_dispose):
7816         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
7817         (gst_aggregator_class_init), (gst_aggregator_init):
7818         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7819         (gst_filesrc_dispose), (gst_filesrc_set_location):
7820         * gst/elements/gstidentity.c: (gst_identity_finalize),
7821         (gst_identity_class_init), (gst_identity_chain):
7822         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
7823         * gst/elements/gststatistics.c: (gst_statistics_finalize),
7824         (gst_statistics_class_init):
7825         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
7826         (gst_tee_get_property):
7827           clean up used memory in this elements correctly on teardown (closes
7828           #137279)
7829
7830 2004-03-20  Colin Walters  <walters@redhat.com>
7831
7832         * gst/registries/gstxmlregistry.c:
7833         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
7834         registry saving atomic.
7835
7836 2004-03-20  Colin Walters  <walters@redhat.com>
7837
7838         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
7839         Just use
7840         access() instead of actually creating and deleting files.
7841
7842 2004-03-18  David Schleef  <ds@schleef.org>
7843
7844         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
7845         (bug #137625)
7846
7847 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7848
7849         * po/sv.po: updated translation (Christian Rose)
7850
7851 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7852
7853         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
7854         (gst_filesink_get_query_types), (_do_init),
7855         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
7856           return FALSE silently
7857         * po/af.po: updated translation (Petri Jooste)
7858
7859 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7860
7861         * Makefile.am:
7862         * configure.ac:
7863           dist common properly
7864         * po/af.po:
7865         * po/fr.po:
7866         * po/nl.po:
7867         * po/sr.po:
7868         * po/sv.po:
7869           refreshing translations
7870
7871 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7872
7873         * po/LINGUAS:
7874         * po/sv.po:
7875         * po/af.po:
7876           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
7877
7878 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7879
7880         * Makefile.am: use common/release.mak
7881
7882 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7883
7884         * docs/faq/gst-uninstalled:
7885           adding gst-monkeysaudio to the list of possible plugin dirs
7886
7887 2004-03-16  David Schleef  <ds@schleef.org>
7888
7889         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
7890         (gst_init_check_with_popt_table):  Fix some gettext strings to
7891         make them easier to translate.  Required making the strings
7892         non-const.
7893
7894 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7895
7896         * configure.ac: bump nano to 1
7897
7898 === release 0.8.0 ===
7899
7900 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7901
7902         * configure.ac: release 0.8.0, "Executive Slacks"
7903
7904 2004-03-16  Johan Dahlin  <johan@gnome.org>
7905
7906         * gst/schedulers/gstoptimalscheduler.c
7907         (gst_opt_scheduler_pad_unlink): Remove double ;,
7908         spotted by Scott Wheeler
7909
7910 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7911
7912         * configure.ac: bump libtool version
7913
7914 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7915
7916         * gst/gstcaps.h:
7917         * gst/gststructure.h:
7918           add reserved padding
7919
7920 2004-03-15  Benjamin Otte  <otte@gnome.org>
7921
7922         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7923           set the first parameter for select call correctly.
7924           (fixes #137230)
7925
7926 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7927
7928         * *.c,*.h: don't mix tabs and spaces
7929
7930 2004-03-15  Johan Dahlin  <johan@gnome.org>
7931
7932         * gst/schedulers/gstoptimalscheduler.c
7933         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
7934         crash on MPEG playback. My boolean arithmetic is a bit rusty.
7935
7936         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
7937         
7938 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7939
7940         * testsuite/Rules:
7941           fix gst-register rules
7942
7943 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7944
7945         * testsuite/Rules:
7946           use versioned gst-register
7947
7948 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7949
7950         * docs/libs/gstreamer-libs-sections.txt:
7951           remove </SUBSECTION>
7952         * gst/gstplugin.c:
7953         * gst/gstregistry.c: (gst_registry_add_plugin):
7954         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
7955         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
7956           add debugging and fix some comment blocks
7957
7958 2004-03-15  Johan Dahlin  <johan@gnome.org>
7959
7960         * *.h: Revert indent changes.
7961         
7962 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7963
7964         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
7965           g_error_free the g_error
7966         * tools/gst-feedback-m.m:
7967           check for other versions of gstreamer
7968         * tools/gst-indent:
7969           use sh, not bash
7970
7971 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7972
7973         * tools/gst-register.c: do not spill paths when registries are not
7974           writable, until we fix the "user running gst-register" case.
7975
7976 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7977
7978         * *.c, *.h: commit of gst-indent run on core
7979
7980 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7981
7982         * tools/gst-indent:
7983         * tools/Makefile.am:
7984           add our indentation style as a script
7985
7986 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7987
7988         * po/sr.po:
7989         * po/LINGUAS:
7990           added Serbian translation
7991
7992 2004-03-13  Benjamin Otte  <otte@gnome.org>
7993
7994         * gst/gstelement.c:
7995           add documentation note about gst_element_found_tags_for_pad not
7996           being usable in getfunctions. (see #137042)
7997
7998 2004-03-12  David Schleef  <ds@schleef.org>
7999
8000         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8001         change API right now!  Readd gst_caps_is_simple() macro.
8002         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8003         uninitialized variable.  I'd bet this caused crashes.
8004         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8005
8006 2004-03-12  Johan Dahlin  <johan@gnome.org>
8007
8008         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8009         * gst/gstcaps.h: Clean up
8010
8011         * gst/gst.c (init_post): call gst_caps_get_type() instead of
8012         _gst_caps_initalize()
8013
8014         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
8015         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
8016
8017         * gst/gststructure.c (gst_structure_get_type): Ditto
8018
8019         * gst/gststructure.h: Ditto
8020         
8021 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8022
8023         * gst/gstqueue.c: (gst_queue_init):
8024           Reset default max. values in queues. Reason is simply to avoid
8025           braindead use. If you want wider values, use the properties. The
8026           default is supposed to always work. Wider values would make this
8027           beast a memory hog by default (250 full-PAL RGB32 video frames?
8028           That's 440 MB! No thank you).
8029
8030 2004-03-10  David Schleef  <ds@schleef.org>
8031
8032         * tools/gst-run.c: (main):  Fix crash when no relevant tools
8033         were found.  (bug #136793)
8034
8035 2004-03-10  Johan Dahlin  <johan@gnome.org>
8036
8037         * gst/schedulers/gstoptimalscheduler.c
8038         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
8039         links to elements within the same group, so we can finally remove
8040         that annoying warning. Refactor the code a little bit
8041         (group_dec_links_for_element): Split out
8042
8043 2004-03-09  David Schleef  <ds@schleef.org>
8044
8045         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
8046         (bug #134863)
8047
8048 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8049
8050         * configure.ac: first bug fix due to major/minor bump
8051
8052 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8053
8054         * configure.ac: bump nano to 1
8055
8056 === release 0.7.6 ===
8057
8058 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8059
8060         * NEWS:
8061         * RELEASE:
8062         * configure.ac:
8063           releasing 0.7.6, "Almost"
8064         * po/fr.po:
8065         * po/nl.po:
8066         * tools/Makefile.am:
8067         * tools/gst-feedback-m.m:
8068           unversioned source
8069
8070 2004-03-09  Johan Dahlin  <johan@gnome.org>
8071
8072         Reviewed by: Thomas Vander Stichele
8073
8074         * gst/gstelement.c (gst_element_class_init): register second
8075         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
8076         language bindings can (de)marshall correctly.
8077
8078         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
8079
8080         * gst/gsterror.c (gst_g_error_get_type): New function
8081
8082         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
8083         with VOID:OBJECT,OBJECT,STRING 
8084
8085 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
8086
8087         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
8088         Free a leaked g_timer on early returns.
8089
8090 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8091
8092         * docs/pwg/advanced-types.xml:
8093           Add cinepak description.
8094
8095 2004-03-07  David Schleef  <ds@schleef.org>
8096
8097         * docs/random/mimetypes:  Added cinepak description
8098
8099 2004-03-07  Andy Wingo  <wingo@pobox.com>
8100
8101         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
8102
8103         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
8104         there are no links to other groups when a group is destroyed.
8105         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
8106         removed from a group, make sure the link count to elements linked
8107         to other pads is appropriately decremented. This really fixes
8108         #135672.
8109
8110         The 1.60->1.61 patch has been reapplied in light of this fix.
8111
8112         * gst/gstelement.c (gst_element_dispose): Really protect against
8113         multiple invocations this time.
8114
8115 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8116
8117         * docs/gst/gstreamer-sections.txt:
8118         * docs/gst/tmpl/gsttag.sgml:
8119           remove some deprecated functions, document some existing ones
8120         * gst/gsttag.c: (gst_tag_get_flag):
8121         * gst/gsttag.h:
8122           add accessor function
8123
8124 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8125
8126         * docs/gst/gstreamer-sections.txt:
8127         * docs/gst/tmpl/gsttag.sgml:
8128         * docs/gst/tmpl/gstxml.sgml:
8129         * gst/gsttag.c: (gst_tag_get_flag):
8130         * gst/gsttag.h:
8131
8132 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
8133
8134         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
8135         leak
8136
8137 2004-03-05  David Schleef  <ds@schleef.org>
8138
8139         * REQUIREMENTS: Add bison and flex.
8140         * configure.ac: Fix comment about bison.
8141         * docs/random/ds/0.9-suggested-changes: yer ma
8142         * tools/gst-inspect.c: (print_element_info):  Fix warning.
8143
8144 2004-03-05  Benjamin Otte  <otte@gnome.org>
8145
8146         * gst/gstelement.c: (gst_element_error_full):
8147           revert recent recursive state changing commit - messing with other
8148           elements' states is evil and should be done by apps only.
8149
8150 2004-03-05  Benjamin Otte  <otte@gnome.org>
8151
8152         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
8153           check for empty intersection instead of NULL caps
8154         (gst_element_get_compatible_pad_filtered):
8155           remove old workaround that is only a bug nowadays
8156
8157 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8158
8159         * gst/gstelement.c: (gst_element_error_full):
8160           make elements try to recursively change state to PAUSED on all
8161           parents after an error to suppress ensuing warnings
8162         * gst/parse/grammar.y:
8163           make it check if it was able to sync the state, and throw an error
8164           if not, so stuff like
8165           oggdemux ! vorbisdec ! osssink gets caught
8166
8167 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8168
8169         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
8170           it contains lib64; use AS_AC_EXPAND to handle it properly
8171
8172 2004-03-05  David Schleef  <ds@schleef.org>
8173
8174         * gst/gstcpuid_i386.s:  Remove unused code
8175         * libs/gst/getbits/getbits.c: (gst_getbits_init),
8176         (gst_getbits_newbuf): Remove MMX code
8177         * libs/gst/getbits/getbits.h: Remove MMX code
8178
8179 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
8180
8181         * debian/.cvsignore:
8182         * debian/README.Debian:
8183         * debian/changelog:
8184         * debian/control:
8185         * debian/control.in:
8186         * debian/copyright:
8187         * debian/gstreamer-core-libs-dev.files:
8188         * debian/gstreamer-core-libs.files:
8189         * debian/gstreamer-core.files:
8190         * debian/gstreamer-core.postinst:
8191         * debian/gstreamer-core.postrm:
8192         * debian/gstreamer-doc.files:
8193         * debian/gstreamer-doc.links:
8194         * debian/gstreamer-doc.lintian:
8195         * debian/gstreamer-runtime.files:
8196         * debian/gstreamer-runtime.manpages:
8197         * debian/gstreamer-runtime.postinst:
8198         * debian/gstreamer-runtime.postrm:
8199         * debian/gstreamer-tools.files:
8200         * debian/gstreamer-tools.manpages:
8201         * debian/libgstreamer-dev.files:
8202         * debian/libgstreamer0.4.1.files:
8203         * debian/libgstreamerVERSION.files:
8204         * debian/rules:
8205         Debian package info not maintained here.
8206
8207 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8208
8209         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8210         * gst/gstbin.c: (gst_bin_class_init):
8211         * gst/gstelement.c: (gst_element_class_init):
8212         * gst/gstindex.c: (gst_index_class_init):
8213         * gst/gstobject.c: (gst_object_class_init),
8214         (gst_signal_object_class_init):
8215         * gst/gstpad.c: (gst_pad_template_class_init):
8216         * gst/gstregistry.c: (gst_registry_class_init):
8217         * gst/gsturi.c: (gst_uri_handler_base_init):
8218         * gst/gstxml.c: (gst_xml_class_init):
8219         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8220         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
8221           make all signal names use dashes instead of underscore
8222
8223 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8224
8225         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
8226
8227 2004-03-03  Benjamin Otte  <otte@gnome.org>
8228
8229         * gst/schedulers/gstoptimalscheduler.c:
8230           revert last commit by Andy Wingo. It causes segfaults on unreffing
8231           in Rhythmbox. (see bug #135672)
8232
8233 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8234
8235         * po/fr.po: fix typo
8236
8237 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8238
8239         * tools/gst-inspect.c: (main): 
8240         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
8241
8242 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8243
8244         * configure.ac:
8245           get GLIB_ONLY and POPT flags for the nonversioned binaries
8246         * tools/Makefile.am:
8247           use them
8248
8249 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8250
8251         * gst/gst.c: (init_post):
8252           change so that GST_REGISTRY now is where the global registry gets
8253           saved, since that is where plugins now get attached to first, and
8254           spilled over to the user registry.  Note that in the case of using
8255           GST_REGISTRY env var, we don't want to affect any real registries
8256           beyond the one given by this var, and thus we don't set a user
8257           registry to spill to.  So make sure GST_REGISTRY is writable.
8258
8259 2004-03-01  David Schleef  <ds@schleef.org>
8260
8261         * AUTHORS:  Added some names.  Add yourself if you're missing.
8262
8263 2004-03-01  David Schleef  <ds@schleef.org>
8264
8265         * MAINTAINERS: Add
8266
8267 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
8268
8269         * configure.ac:
8270           remove whitespace
8271         * docs/gst/tmpl/gstbuffer.sgml:
8272         * docs/gst/tmpl/gstdata.sgml:
8273         * docs/gst/tmpl/gstreamer-unused.sgml:
8274         * docs/gst/tmpl/gstxml.sgml:
8275           doc update
8276         * docs/manuals.mak:
8277           add a FIXME
8278         * docs/pwg/intro-preface.xml:
8279         * docs/pwg/pwg.xml:
8280           remove GNOME
8281         * gst/gst.c: (init_post):
8282           try GST_PLUGIN_PATH paths for the _global_registry first
8283         * gst/gstelement.h:
8284           add the error message as well, otherwise (null) debug info doesn't
8285           make much sense
8286         * tools/gst-register.c: (main):
8287           spill paths to next registry if this registry is not writable
8288         * po/fr.po:
8289         * po/nl.po:
8290           translation updates
8291
8292 2004-03-01  Johan Dahlin  <johan@gnome.org>
8293
8294         * gst/gstbuffer.c (_gst_buffer_initialize): 
8295         * gst/gstdata.c (gst_data_get_type): 
8296         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
8297         instead of ref, since some applications that uses GBoxed
8298         routines depends on a function that actually returns a copy.
8299
8300 2004-02-27  Benjamin Otte  <otte@gnome.org>
8301
8302         * gst/gstbuffer.h:
8303           remove gst_buffer_free, use gst_data_unref
8304         * gst/gstdata.c: (gst_data_get_type):
8305           use refcounting in GstData GBoxed registration
8306         * gst/gstdata.h:
8307           remove gst_data_free, use gst_data_unref
8308
8309 2004-02-27  Johan Dahlin  <johan@gnome.org>
8310
8311         * gst/gstdata.c (gst_data_get_type): New function, register
8312         GstData as a GBoxed type.
8313
8314         * gst/gstdata.h (GST_TYPE_DATA): New macro
8315
8316 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
8317
8318         * Makefile.am:
8319         * gstreamer.spec.in:
8320           put back RELEASE
8321         * gst/Makefile.am:
8322           clean up non-disting of built files
8323         * testsuite/debug/commandline.c:
8324           test fix for option rename
8325
8326 2004-02-26  David Schleef  <ds@schleef.org>
8327
8328         * configure.ac:  We don't really need glib-2.3.  Also remove
8329         some unneeded checks for library functions.
8330         * gst/Makefile.am:  Instead, we need to not dist files created
8331         by glib-genmarshal.
8332
8333 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8334
8335         * configure.ac:
8336           bump glib required version to 2.3.0 for g_value_takes_boxed
8337
8338  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
8339
8340         * common/m4/gst-docs.m4
8341         change flavour text from enable to disable as enable is our default
8342         closes bug Bug 135304
8343
8344 === release 0.7.5 ===
8345  
8346  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8347  
8348         * NEWS:
8349           instate NEWS file
8350         * Makefile.am:
8351         * gstreamer.spec.in:
8352         * RELEASE:
8353           put back release
8354         * configure.ac:
8355         * docs/random/release:
8356           more updates
8357
8358 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * gst/gsttag.c: (_gst_tag_initialize):
8361         * po/fr.po:
8362         * po/nl.po:
8363           remove hyphen from codec tags
8364
8365 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8366
8367         * gst/parse/Makefile.am:
8368           fix dependency so that a make from a clean build works the first
8369           time
8370
8371 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8372
8373         * docs/random/release:
8374           update release strategy
8375         * po/fr.po:
8376           auto-update po file
8377         * po/nl.po:
8378           update dutch translation
8379
8380 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8381
8382         * docs/manual/debugging.xml:
8383         fix manual for new debugging system
8384
8385 2004-02-25  Andy Wingo  <wingo@pobox.com>
8386
8387         * gst/gstpad.c (gst_pad_link_prepare): Re-add
8388         gst_pad_link_prepare. Please email the list with specific reasons
8389         for reverting.
8390
8391 2004-02-24  Andy Wingo  <wingo@pobox.com>
8392
8393         * gst/gstelement.c (gst_element_dispose): Protect against multiple
8394         invocations.
8395
8396         * gst/schedulers/gstoptimalscheduler.c:
8397         I added a mess of prototypes at the top of the file by way of
8398         documentation. Some of the operations on chains and groups were
8399         re-organized.
8400
8401         (create_group): Added a type argument so if the group is enabled,
8402         the setup_group_scheduler knows what to do.
8403         (group_elements): Added a type argument here, too, to be passed on
8404         to create_group.
8405         (group_element_set_enabled): If an unlinked PLAYING element is
8406         added to a bin, we have to create a new group to hold the element,
8407         and this function will be called before the group is added to the
8408         chain. Thus we have a valid case for group->chain==NULL. Instead
8409         of calling chain_group_set_enabled, just set the flag on the group
8410         (the chain's status will be set when the group is added to it).
8411         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
8412         Setup the group scheduler when the group is enabled, not
8413         specifically when an element goes PAUSED->PLAYING. This means
8414         PLAYING elements can be added, linked, and scheduled into a
8415         PLAYING pipeline, as was intended.
8416         (add_to_group): Don't ref the group twice. I don't know when this
8417         double-ref got in here. Removing it has the potential to cause
8418         segfaults if other parts of the scheduler are buggy. If you find
8419         that the scheduler is segfaulting for you, put in an extra ref
8420         here and see if that hacks over the underlying issue. Of course,
8421         then find out what code is unreffing a group it doesn't own...
8422         (create_group): Make the extra refcount floating, and remove it
8423         after adding the element. This means that...
8424         (unref_group): Destroy when the refcount reaches 0, not 1, like
8425         every other refcounted object in the known universe.
8426         (remove_from_group): When a group becomes empty, set it to be not
8427         active, and remove it from its chain. Don't unref it again,
8428         there's no floating reference any more.
8429         (destroy_group): We have to remove the group from the chain in
8430         remove_from_group (rather than here) to break refcounting cycles
8431         (the chain always has a ref on the group). So assert that
8432         group->chain==NULL.
8433         (ref_group_by_count): Removed, it was commented out anyway.
8434         (merge_chains): Use the remove_from_chain and add_to_chain
8435         primitives to do the reparenting, instead of rolling our own
8436         implementation.
8437         (add_to_chain): The first non-disabled group in the chain's group
8438         list will be the entry point for the chain. Because buffers can
8439         accumulate in loop elements' peer bufpens, we preferentially
8440         schedule loop groups before get groups to avoid unnecessary
8441         execution of get-based groups when the bufpens are already full.
8442         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
8443         (get_group_schedule_function): Ditto.
8444         (loop_group_schedule_function): Ditto.
8445         (gst_opt_scheduler_loop_wrapper): Ditto.
8446         (gst_opt_scheduler_iterate): Ditto.
8447
8448         I understand the opt scheduler now, yippee!
8449
8450         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
8451         (gst_pad_get_name, gst_pad_set_chain_function) 
8452         (gst_pad_set_get_function, gst_pad_set_event_function) 
8453         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
8454         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
8455         (gst_pad_set_query_function, gst_pad_get_query_types) 
8456         (gst_pad_get_query_types_default) 
8457         (gst_pad_set_internal_link_function) 
8458         (gst_pad_set_formats_function, gst_pad_set_link_function) 
8459         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
8460         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
8461         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
8462         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
8463         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
8464         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
8465         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
8466         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
8467         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
8468         (gst_pad_event_default_dispatch, gst_pad_event_default) 
8469         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
8470         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
8471         (gst_pad_get_formats_default, gst_pad_get_formats): Better
8472         argument checks, and some doc fixes.
8473
8474         (gst_pad_custom_new_from_template): Um, does anyone
8475         use these functions? Actually make a custom pad instead of a
8476         normal one.
8477         (gst_pad_try_set_caps): Transpose some checks.
8478         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
8479         the pad is in negotiation.
8480         (gst_pad_try_relink_filtered): Use pad_link_prepare.
8481         
8482         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
8483
8484         * gst/gstelement.h: 
8485         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
8486         on the list.
8487
8488 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8489
8490         * gst/gstbin.c: (gst_bin_add):
8491           add error for not being able to add elements
8492
8493 2004-02-22  Julien MOUTTE <julien@moutte.net>
8494
8495         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
8496         audio-codec and video-codec.
8497
8498 2004-02-22  Benjamin Otte  <otte@gnome.org>
8499
8500         reported by: Padraig O'Briain <padraig.obriain@sun.com>
8501
8502         * autogen.sh:
8503           replace test -e with test -x for mkinstalldirs to be more portable.
8504           (fixes #134816)
8505
8506 2004-02-22  Benjamin Otte  <otte@gnome.org>
8507
8508         * gst/gstpad.c:
8509           revert last patch from Andy, it makes gst_pad_can_link_filtered much
8510           too noisy
8511         * gst/gsttag.c: (_gst_tag_initialize):
8512         * gst/gsttag.h:
8513           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
8514         * libs/gst/control/dparam.c: (gst_dparam_attach):
8515         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
8516           check that types for attached dparams match
8517
8518 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8519
8520         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
8521         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8522         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8523           fix errors
8524
8525 2004-02-20  Andy Wingo  <wingo@pobox.com>
8526
8527         * gst/gstbin.c:
8528         * gst/gstbuffer.c:
8529         * gst/gstplugin.c:
8530         * gst/registries/gstxmlregistry.c: 
8531         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
8532
8533         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
8534         (gst_element_add_pad): DEBUG->INFO, some fixes.
8535         (gst_element_get_compatible_pad_template): Just see if the
8536         templates' caps intersect, not if one is a strict subset of the
8537         other. This conforms more to what gst_pad_link_intersect() does.
8538         (gst_element_class_add_pad_template): Don't memcpy the pad
8539         template, just ref it.
8540         (gst_element_get_compatible_pad_filtered): Clean up debug messages
8541
8542         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
8543         (gst_pad_link_filtered): Debug changes.
8544         (gst_pad_link_prepare): New function, consolidated from
8545         can_link_filtered and link_filtered.
8546
8547         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
8548         look more like that of the functions in gstelement.c
8549
8550         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
8551         object, and return the empty string if object is NULL.
8552
8553         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
8554         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
8555         LOG, not DEBUG. We still get flex info on debug.
8556
8557         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
8558         debug string more verbose.
8559         (plugin_times_older_than): DEBUG->LOG.
8560
8561 2004-02-20  Julien MOUTTE <julien@moutte.net>
8562
8563         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
8564         will emit found_tag for each stream they demux with the codec.
8565
8566 2004-02-20  Benjamin Otte  <otte@gnome.org>
8567
8568         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
8569           copy navigation event correctly. Check freeing tag lists. 
8570         * gst/gstthread.c: (gst_thread_change_state):
8571           don't abort() on state changing mess - it might happen because of
8572           bugs.
8573         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
8574           use boxed functions
8575         * gst/gstvalue.h:
8576           fix GST_VALUE_HOLDS_CAPS
8577
8578 2004-02-19  David Schleef  <ds@schleef.org>
8579
8580         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
8581         and use it for GST_FUNCTION.  (bug #134750)
8582
8583 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8584
8585         * po/fr.po:
8586         * po/nl.po:
8587           updating translations
8588
8589 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8590
8591         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
8592
8593 2004-02-18  kost@imn.htwk-leipzig.de
8594
8595         reviewed by: David Schleef  <ds@schleef.org>
8596
8597         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
8598         for libgstcontrol.
8599
8600 2004-02-18  David Schleef  <ds@schleef.org>
8601
8602         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8603         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
8604         (gst_dpsmooth_new): Additional fixes to get double dparams working.
8605         * tools/gst-inspect.c: (print_element_info): Support dumping of
8606         double dparam information.
8607
8608 2004-02-17  David Schleef  <ds@schleef.org>
8609
8610         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8611         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
8612         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
8613         Use GST_TYPE_CAPS in signal prototype.
8614         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
8615         Convert GST_TYPE_CAPS to boxed.
8616         * gst/gstelement.c: (gst_element_class_init):
8617         Use GST_TYPE_TAG_LIST in signal prototype.
8618         * gst/gstindex.c: (gst_index_class_init):
8619         * gst/gstindex.h:
8620         Add GST_TYPE_INDEX_ENTRY type.
8621         * gst/gstmarshal.list:
8622         Add necessary marshal types.
8623         * gst/gstpad.c: (gst_real_pad_class_init),
8624         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
8625         (gst_pad_recover_caps_error):
8626         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
8627         * gst/gststructure.c: (_gst_structure_initialize),
8628         (gst_structure_copy), (_gst_structure_copy_conditional):
8629         * gst/gststructure.h:
8630         Convert GST_TYPE_STRUCTURE to boxed.
8631         * gst/gsttag.c: (gst_tag_list_get_type):
8632         * gst/gsttag.h:
8633         Add GST_TYPE_TAG_LIST type.
8634
8635 2004-02-17  Julien MOUTTE  <julien@moutte.net>
8636
8637         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
8638         to what we agreed with david.
8639         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
8640
8641 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8642
8643         * po/nl.po: update translation
8644
8645 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8646
8647         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8648           throw an error if spider is trying to play a mime type there is
8649           no decoder for
8650         * po/POTFILES.in:
8651           add gst/autoplug/gstspider.c for translation
8652
8653 2004-02-17  Julien MOUTTE  <julien@moutte.net>
8654
8655         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
8656         silently when the pad is negotiating.
8657
8658 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8659
8660         * docs/faq/Makefile.am:
8661           add script to run gstreamer uninstalled 
8662         * docs/faq/faq.xml:
8663         * docs/faq/developing.xml:
8664         * docs/faq/gst-uninstalled:
8665           extract script to run gstreamer uninstalled
8666         * docs/manuals.mak:
8667           add EXTRA_SOURCES variable for Makefile.am's to set to
8668           use additional SOURCE files for the doc build
8669
8670 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8671
8672         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
8673
8674 2004-02-15  Julien MOUTTE  <julien@moutte.net>
8675
8676         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
8677         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
8678         an error was thrown by osssink. Basically a state change failure for
8679         an element in a different scheduling group was considered as
8680         successful, which means that caps nego was going on and weird stuff
8681         happened. Like I wrote in the comment there, if someone wants to
8682         revert that please drop me a mail explaining why because I really see
8683         no point in keeping that broken behaviour there.
8684         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
8685         be empty, we then return NULL which will trigger a nice error when 
8686         pulling from the pad.
8687
8688 2004-02-13  David Schleef  <ds@schleef.org>
8689
8690         * libs/gst/control/dparam.c: (gst_dparam_class_init),
8691         (gst_dparam_get_property), (gst_dparam_set_property),
8692         (gst_dparam_do_update_default):
8693         * libs/gst/control/dparam.h:
8694         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
8695         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
8696         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
8697         (gst_dpsmooth_do_update_double):
8698         * libs/gst/control/dparam_smooth.h:
8699         * libs/gst/control/dparammanager.c:
8700         (gst_dpman_inline_direct_update):
8701         Add support for double dparams.
8702
8703 2004-02-13  David Schleef  <ds@schleef.org>
8704
8705         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
8706         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
8707
8708 2004-02-13  Mattias Wadman  <mattias@sudac.org>
8709
8710         reviewed by: David Schleef  <ds@schleef.org>
8711
8712         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8713         (gst_fdsrc_init), (gst_fdsrc_set_property),
8714         (gst_fdsrc_get_property), (gst_fdsrc_get):
8715         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
8716         and sends an EOS event if file descriptor reading times out.
8717
8718 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8719
8720         * configure.ac:
8721           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
8722
8723 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8724
8725         * configure.ac: pass required libxml version as argument
8726         (bug reported by Christophe Fergeau)
8727
8728 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8729   
8730         * docs/gst/gstreamer-docs.sgml:
8731         * docs/gst/tmpl/gstxml.sgml:
8732         * docs/libs/gstreamer-libs-docs.sgml:
8733           version API docs
8734
8735 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8736
8737         * gst/gstinfo.c:
8738         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
8739         (gst_registry_pool_feature_filter):
8740         * gst/gstthread.c: (gst_thread_class_init):
8741         * gst/gstvalue.c:
8742           add includes exposed by building without libxml
8743         * gst/indexers/Makefile.am:
8744           do not build fileindex when LOADSAVE disabled; we should have
8745           a better libxml check later since fileindex depends on xml, not
8746           LOADSAVE or REGISTRY
8747         * libs/gst/control/Makefile.am:
8748           link with m
8749         * tools/Makefile.am:
8750           fix wrong source code for gst-xmlinspect
8751
8752 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8753
8754         * configure.ac:
8755           fix gcov help output
8756           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
8757         * docs/random/release:
8758           some updated releasing notes
8759         * gstreamer.spec.in:
8760           more updates
8761
8762 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8763
8764         * docs/faq/faq.xml:
8765         * docs/manual/manual.xml:
8766         * docs/pwg/pwg.xml:
8767         * docs/pwg/titlepage.xml:
8768           put version in documentation
8769
8770 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8771
8772         * tools/Makefile.am: fix man page installation
8773
8774 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8775
8776         * configure.ac:
8777           don't check for libxml when load/save and registry disabled (#105844)
8778         * gstreamer.spec.in:
8779           sync with fedora candidate spec
8780
8781 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8782
8783         * po/fr.po:
8784         * po/nl.po:
8785           replace multidisksrc with multifilesrc
8786
8787 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8788
8789         * po/POTFILES.in:
8790           update to multidisksrc => multifilesrc file renaming (#134145)
8791
8792 2004-02-11  David Schleef  <ds@schleef.org>
8793
8794         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
8795         * docs/gst/tmpl/gstpadtemplate.sgml: same
8796         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
8797         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
8798         fixing dance.
8799         * gst/gstutils.c: Remove disabled code that uses GstProps.
8800         * gst/registries/gstxmlregistry.h: same
8801         * docs/random/ds/0.9-suggested-changes: random notes
8802
8803 2004-02-11  kost@imn.htwk-leipzig.de
8804
8805         reviewed by: David Schleef  <ds@schleef.org>
8806
8807         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
8808         initialisation of clock (bug #134128)
8809
8810 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8811
8812         * configure.ac:
8813         * gst/elements/Makefile.am:
8814         * gst/elements/gstelements.c:
8815         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
8816         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
8817         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
8818         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
8819         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
8820         * gst/elements/gstmultifilesrc.h:
8821           rename multidisksrc to multifilesrc (part of #122200)
8822
8823 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8824
8825         * docs/manuals.mak:
8826           fix automake complaints
8827         * gst-element-check.m4:
8828           fix unquotedness
8829
8830 2004-02-11  David Schleef  <ds@schleef.org>
8831
8832         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
8833         * gst/gstatomic_impl.h: Disable sparc implementation.
8834
8835 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8836
8837         * gst-element-check.m4:
8838           fix underquoted macros as reported by automake 1.8.x (#133800)
8839         * configure.ac:
8840           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
8841           by autopoint (fixes #132996)
8842
8843 2004-02-10  Andy Wingo  <wingo@pobox.com>
8844
8845         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
8846         way to do inheritance.
8847         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
8848         (gst_pad_get_query_types, gst_pad_get_query_types_default):
8849         Routine docs.
8850         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
8851         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
8852         doc.
8853         (gst_pad_unlink, gst_pad_is_linked): Docs.
8854         (gst_pad_renegotiate): A brief description of capsnego.
8855         (gst_pad_try_set_caps): Document.
8856         (gst_pad_try_set_caps_nonfixed): Document.
8857         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
8858         (gst_pad_set_parent): Deprecated (although not out of the API).
8859         (gst_pad_get_parent): Deprecated, although many plugins use this.
8860         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
8861         are private and will go away in 0.9.
8862         (gst_pad_perform_negotiate): Doc.
8863         (gst_pad_link_unnegotiate): I think this is meant to be static.
8864         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
8865         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
8866         (gst_pad_get_peer): Doc updates.
8867         (gst_pad_caps_change_notify): Doc.
8868         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
8869         (gst_ghost_pad_new): Doc fixes.
8870
8871         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
8872         (gst_object_check_uniqueness): 
8873
8874         * gst/gstelement.c (gst_element_add_pad) 
8875         (gst_element_add_ghost_pad, gst_element_remove_pad) 
8876         (gst_element_remove_ghost_pad, gst_element_get_pad) 
8877         (gst_element_get_static_pad, gst_element_get_pad_list) 
8878         (gst_element_class_get_pad_template_list) 
8879         (gst_element_class_get_pad_template): Work on the docs.
8880         (gst_element_get_pad_template_list): Uses the class method.
8881         (gst_element_get_compatible_pad_template): Docs, and consolidate
8882         some test conditions. 
8883         (gst_element_get_pad_from_template): New static function.
8884         (gst_element_request_compatible_pad): Docs, and work with
8885         non-request compatible templates. 
8886         (gst_element_get_compatible_pad_filtered): Docs and remove
8887         redundant checks.
8888         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
8889         (gst_element_link_filtered, gst_element_link_many) 
8890         (gst_element_link, gst_element_link_pads) 
8891         (gst_element_unlink_many): Docs.
8892
8893 2004-02-05  Andy Wingo  <wingo@pobox.com>
8894
8895         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
8896         s/pointer/boxed/.
8897
8898         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
8899
8900         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
8901         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
8902         with the type=GST_TYPE_CAPS. This allows language bindings to know
8903         what kind of data they're dealing with.
8904
8905         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
8906         to NULL when g_value_init is called. GstCaps, which rolls its own
8907         type implementation, now does the same instead of allocating empty
8908         caps.
8909         (_gst_caps_initialize, _gst_caps_collect_value,
8910         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
8911         table methods. This allows G_VALUE_COLLECT to work.
8912
8913 2004-02-05  Andy Wingo  <wingo@pobox.com>
8914
8915         * configure.ac:
8916         * testsuite/Makefile.am (SUBDIRS): 
8917         * testsuite/ghostpads/Makefile.am: 
8918         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
8919
8920         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
8921         These two routines are the only ones that set
8922         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
8923         pad template. They should be made static, depending on ABI needs.
8924         (gst_real_pad_dispose): Handle the case of ghost pads without a
8925         parent. Assert after dealing with ghost pads that the ghost pad
8926         list is empty.
8927         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
8928         set after creation.
8929         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
8930         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
8931         functions. set_property will call add_ghost_pad/remove_ghost_pad
8932         as appropriate.
8933         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
8934
8935         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
8936         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
8937         (gst_element_remove_pad): Handle ghost pads as well.
8938         (gst_element_remove_ghost_pad): Deprecated (could be removed,
8939         depending on API-stability needs).
8940
8941 2004-02-05  Andy Wingo  <wingo@pobox.com>
8942
8943         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
8944         of course they're const
8945
8946 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8947
8948         * tools/Makefile.am:
8949         * tools/gst-feedback:
8950         * tools/gst-feedback-0.7:
8951           make gst-feedback versioned too for consistency
8952
8953 2004-02-11  David Schleef  <ds@schleef.org>
8954
8955         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
8956         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
8957
8958 2004-02-10  Julien MOUTTE <julien@moutte.net>
8959
8960         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
8961         the structure does not contain a valid tag list. Adding a safety check
8962         to remove a noisy warning in that case.
8963
8964 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8965
8966         * gst/gst.c: fix name to be in line with others
8967
8968 2004-02-09  Julien MOUTTE <julien@moutte.net>
8969
8970         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
8971         not shout that loud when len is 0. Just return 0 silently.
8972
8973 2004-02-09  Julien MOUTTE  <julien@moutte.net>
8974
8975         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
8976         because data_unref has one and I prefer the debug to be symetric.
8977         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
8978         were refed when added to the queue and unrefed only once when the queue
8979         was flushed. Now the flush handler unref the buffers two times : first
8980         unref for the ref added when pushing in the queue's tail and second
8981         unref to destroy the flushed buffer.
8982
8983 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8984
8985         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
8986
8987 2004-02-06  David Schleef  <ds@schleef.org>
8988
8989         * docs/random/ds/0.9-suggested-changes: Random ramblings
8990         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
8991         to int before printing.
8992         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
8993         * gst/parse/parse.l: same.  See bug #129600
8994
8995 2004-02-06  David Schleef  <ds@schleef.org>
8996
8997         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
8998         (gst_index_add_entry), (gst_index_add_associationv),
8999         (gst_index_add_association): Add gst_index_add_associationv()
9000         and clean up gst_index_add_association(). #127133
9001
9002 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9003
9004         * autogen.sh: check out common with right tag if CVS/Tag exists
9005
9006 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9007
9008         * testsuite/ghostpads/ghostpads.c: (main):
9009           fix testsuite from segfaulting
9010
9011 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9012
9013         * Makefile.am: add release target
9014         * configure.ac: bump nano to 1
9015         * docs/random/release:
9016
9017 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9018
9019         * gst/gstcaps.h:
9020         * gst/gstelement.c: (gst_element_base_class_init),
9021         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9022         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9023         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9024         (gst_real_pad_dispose):
9025         * gst/gststructure.c: (gst_structure_free),
9026         (gst_structure_from_string):
9027           put reverted patch back in
9028         * gst/gstelement.c: (gst_element_remove_pad):
9029           free explicit caps if they're set
9030         * gst/gstpad.c: (_gst_pad_default_fixate_func):
9031           copy the structure when fixating
9032
9033 2004-02-05  David Schleef  <ds@schleef.org>
9034
9035         * gst/gstmarshal.list:
9036         * gst/gstpad.c: (gst_real_pad_class_init),
9037         (_gst_real_pad_fixate_accumulator):
9038         Revert POINTER->BOXED change in signal marshaller.
9039
9040 === release 0.7.4 ===
9041                                                                                 
9042 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9043                                                                                 
9044         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
9045         * configure.ac: changed for release
9046
9047 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9048
9049         * gstreamer.spec.in:
9050           bump required version of gtk-doc
9051
9052 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9053
9054         * gst/gstcaps.h:
9055         * gst/gstelement.c: (gst_element_base_class_init),
9056         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9057         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9058         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9059         (gst_real_pad_dispose):
9060         * gst/gststructure.c: (gst_structure_free),
9061         (gst_structure_from_string):
9062           revert patch that breaks applications, reapply after release
9063           to get this fixed properly
9064
9065 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9066
9067         * gst/gsttag.c: (_gst_tag_initialize):
9068         * gst/gsttag.h:
9069           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
9070
9071 2004-02-04  David Schleef  <ds@schleef.org>
9072
9073         Fix some memleaks:
9074         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
9075         (gst_spider_plug_from_srcpad):
9076         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
9077
9078 2004-02-04  David Schleef  <ds@schleef.org>
9079
9080         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
9081         a GstRealPad before accessing its structure members.
9082
9083 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9084
9085         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
9086         (gst_clock_get_speed):
9087         * gst/gstclock.h:
9088           reset padding, remove unused fields
9089
9090 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9091
9092         * gst/autoplug/gstspideridentity.c:
9093         (gst_spider_identity_sink_loop_type_finding):
9094           use get_allowed_caps, not get_caps (fixes #132519)
9095         * gst/elements/gsttypefind.c: (stop_typefinding):
9096           use correct order when sending buffers and seeking
9097
9098 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9099
9100         * configure.ac:
9101         * gst/gstelement.h:
9102         * gst/gstpad.h:
9103         * gst/gstqueue.h:
9104           upgrade libtool CURRENT, reset padding
9105
9106 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9107
9108         * configure.ac:
9109           bump to prerelease
9110           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
9111
9112 2004-02-04  David Schleef  <ds@schleef.org>
9113
9114         * docs/random/ds/0.9-suggested-changes: random notes
9115         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
9116         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
9117         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
9118         expansion.
9119         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9120         (gst_filesink_get_query_types): same
9121         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
9122         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
9123         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
9124         to use new GST_PTR_FORMAT.
9125         * gst/gstelement.h: deprecate function factory macros
9126         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
9127         These are our last variadic macros that can't be replaced with
9128         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
9129         attempting to deprecate gst_element_clock_wait().
9130         * gst/gstevent.h: same
9131         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9132         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
9133         * gst/gstpad.h: deprecate function factory macros similar to above.
9134
9135 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9136
9137         * configure.ac:
9138         * tools/Makefile.am:
9139         * tools/gst-run.c: (popt_callback), (hash_print_key),
9140         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
9141         (get_candidates), (main):
9142           add new source file to generate non-versioned wrapper binaries
9143           for our tools.
9144
9145 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9146
9147         * gst/gstevent.c: (_gst_event_free):
9148           actually break; inside the switch statement
9149         * gst/parse/grammar.y:
9150           fix memleak where GValues weren't unset
9151
9152 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9153
9154         * gst/gststructure.c: (gst_structure_from_string):
9155           fix huge memleak
9156         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9157         (new_entry), (gst_type_find_element_chain):
9158         * gst/gstelement.c: (gst_element_base_class_init),
9159         (gst_element_class_set_details):
9160         * gst/gstpad.c: (gst_pad_can_link_filtered):
9161           fix smaller memleaks
9162         * gst/gstpad.c: (gst_real_pad_dispose):
9163           check that explicit caps are gone
9164         * gst/gststructure.c: (gst_structure_free):
9165           actually free the structure
9166         * gst/gstelement.c: (gst_element_clear_pad_caps):
9167           unset explicit caps
9168
9169 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9170
9171         * tools/Makefile.am:
9172           use AM_CFLAGS since all the CFLAGS are the same
9173           use AM_LDFAGS
9174
9175 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9176
9177         * docs/manual/gnome.xml:
9178           expand example a little
9179         * gst/gst.c: (gst_init_with_popt_table),
9180         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
9181           make sure popt option displays are done with right textdomain
9182           use GstPoptOption type
9183         * gst/gst.h:
9184           create GstPoptOption type
9185
9186 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9187
9188         * gst/gsterror.c: (_gst_stream_errors_init):
9189         * gst/gsterror.h:
9190           adding error type for no codec
9191         * po/POTFILES.in:
9192           add gst-inspect
9193         * po/nl.po:
9194           update dutch translation
9195         * tools/gst-inspect.c: (print_element_list), (main):
9196           do proper internationalization
9197         * tools/gst-launch.c: (idle_func):
9198           remove commented out function call
9199
9200 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9201
9202         * docs/README:
9203           add some error fixing notes
9204         * docs/gst/gstreamer-sections.txt:
9205           remove double entries
9206         * docs/gst/tmpl/gstbin.sgml:
9207         * docs/gst/tmpl/gstclock.sgml:
9208           remove override
9209         * docs/gst/tmpl/gstelement.sgml:
9210         * docs/gst/tmpl/gstindex.sgml:
9211         * docs/gst/tmpl/gstobject.sgml:
9212         * docs/gst/tmpl/gstpadtemplate.sgml:
9213         * docs/gst/tmpl/gstreamer-unused.sgml:
9214         * docs/gst/tmpl/gsttag.sgml:
9215         * docs/gst/tmpl/gstthread.sgml:
9216         * docs/gst/tmpl/gstxml.sgml:
9217         * gst/gsttag.h:
9218           sync header prototypes with c decls
9219         * gst/gsttaginterface.c:
9220           fix doc headers
9221
9222 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9223
9224         * gst/parse/Makefile.am:
9225         * gst/gstobject.h:
9226           get rid of gstmarshal.h dependency. It's not needed.
9227         * gst/gst.h:
9228         * gst/elements/gstfakesink.c:
9229         * gst/elements/gstfakesrc.c:
9230         * gst/elements/gstidentity.c:
9231         * gst/gstbin.c:
9232         * gst/gstelement.c:
9233         * gst/gstindex.c:
9234         * gst/gstobject.c:
9235         * gst/gstpad.c:
9236         * gst/gstthread.c:
9237         * gst/gstxml.c:
9238         * libs/gst/control/dparam.c:
9239         * libs/gst/control/dparammanager.c:
9240           include gstmarshal.h.
9241         Fixes #132045
9242
9243 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9244
9245         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9246         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
9247         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
9248         * gst/elements/gstfilesrc.h:
9249           don't ref the filesrc when creating mmaped buffers. Don't keep a
9250           list of not-yet-destroyed buffers.
9251         * gst/gstbuffer.h:
9252           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
9253
9254 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9255
9256         * gst/gst.c: (init_pre):
9257           remove textdomain
9258
9259 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9260
9261         * docs/pwg/advanced-events.xml:
9262         * docs/pwg/advanced-scheduling.xml:
9263         * docs/pwg/intro-basics.xml:
9264         * docs/pwg/other-manager.xml:
9265         * docs/pwg/other-nton.xml:
9266         * docs/pwg/other-ntoone.xml:
9267         * docs/pwg/other-oneton.xml:
9268         * docs/pwg/pwg.xml:
9269           All sort of documentation... Forgot what. Point is that I want this
9270           in before I leave. The 'other-*' will be the last section and will
9271           explain issues specific to these type of elements.
9272
9273 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9274
9275         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9276         (gst_filesrc_get_read):
9277           set all the values on buffers that we can
9278
9279 2004-02-02  David Schleef  <ds@schleef.org>
9280
9281         Change usage of isblah() to g_ascii_isblah() to be more locale
9282         independent.  (#133076)
9283         * gst/gsturi.c: (gst_uri_protocol_check_internal):
9284         * gst/gstutils.c:
9285         * gst/parse/parse.l:
9286
9287 2004-02-02  Jon Trowbridge  <trow@gnu.org>
9288
9289         reviewed by: David Schleef  <ds@schleef.org>
9290
9291         Fix memory leaks:
9292         * gst/gstcaps.c: (gst_caps_to_string):
9293         * gst/registries/gstxmlregistry.c:
9294         (gst_xml_registry_add_path_list_func),
9295         (gst_xml_registry_parse_padtemplate):
9296
9297 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9298
9299         * gst/gstelement.c: (gst_element_default_error):
9300           suffix error messages with period
9301
9302 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9303
9304         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9305         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9306         * gst/gsterror.c: (gst_error_get_message):
9307           Suffix with dots
9308         * po/fr.po:
9309         * po/nl.po:
9310           Update translation files
9311
9312 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9313
9314         * gst/autoplug/gstspideridentity.c:
9315         (gst_spider_identity_sink_loop_type_finding):
9316         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9317         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9318         (gst_filesink_close_file), (gst_filesink_handle_event),
9319         (gst_filesink_chain):
9320         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9321         (gst_filesrc_get_read), (gst_filesrc_open_file):
9322         * gst/elements/gstidentity.c: (gst_identity_chain):
9323         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9324         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9325         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9326         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9327         * gst/gsterror.c: (_gst_core_errors_init),
9328         (_gst_library_errors_init), (_gst_resource_errors_init),
9329         (_gst_stream_errors_init), (gst_error_get_message):
9330         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9331         (gst_pad_recover_caps_error), (gst_pad_pull):
9332         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9333         * gst/schedulers/gstbasicscheduler.c:
9334         (gst_basic_scheduler_chainhandler_proxy),
9335         (gst_basic_scheduler_gethandler_proxy),
9336         (gst_basic_scheduler_cothreaded_chain):
9337           Suffix error messages with period.
9338           Use (NULL) instead of NULL
9339
9340 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9341
9342         * docs/gst/tmpl/gstelement.sgml:
9343         * docs/gst/tmpl/gstxml.sgml:
9344         * gst/gstelement.c: (gst_element_error_full):
9345           add element path to error
9346
9347 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9348
9349         * docs/random/mimetypes:
9350           update raw int/float info
9351         * gst/gsttag.c: (_gst_tag_initialize):
9352         * gst/gsttag.h:
9353           add GST_TAG_ENCODER
9354
9355 2004-01-30  David Schleef  <ds@schleef.org>
9356
9357         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
9358           missing (#132991)
9359
9360 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
9361
9362         reviewed by Benjamin Otte 
9363           parts of the patch submitted in bug #113913
9364
9365         * configure.ac:
9366           use AC_C_INLINE. Use = instead of == with test
9367         * examples/plugins/example.c:
9368         * gst/autoplug/gstspideridentity.c:
9369         * gst/elements/gstfdsrc.c:
9370         * gst/elements/gstfilesrc.c:
9371         * gst/elements/gstidentity.c:
9372         * gst/elements/gstmultidisksrc.c:
9373         * gst/elements/gststatistics.c:
9374         * gst/gstelement.c:
9375         * gst/gstobject.c:
9376         * gst/gstpad.c:
9377         * gst/gstpipeline.c:
9378         * gst/gstthread.c:
9379           don't end enums with a comma
9380         * gst/gstindex.c: (gst_index_compare_func):
9381           do explicit casting to gint
9382         * gst/gsttrace.c: (gst_trace_text_flush):
9383           #define strsize as a macro
9384
9385 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9386
9387         * docs/README:
9388         * docs/gst/gstreamer-docs.sgml:
9389         * docs/gst/gstreamer-sections.txt:
9390         * docs/gst/tmpl/gstelement.sgml:
9391         * docs/gst/tmpl/gsterror.sgml:
9392         * docs/gst/tmpl/gstinterface.sgml:
9393         * docs/gst/tmpl/gstreamer-unused.sgml:
9394         * docs/gst/tmpl/gststructure.sgml:
9395         * docs/gst/tmpl/gsttag.sgml:
9396         * docs/gst/tmpl/gsttaginterface.sgml:
9397         * docs/gst/tmpl/gstvalue.sgml:
9398         make sure all API ends up in the built docs
9399         * gst/gstinterface.c:
9400         * gst/gststructure.c: (gst_structure_id_set_value),
9401         (gst_structure_set_value), (gst_structure_id_get_value):
9402         * gst/gststructure.h:
9403         * gst/gstvalue.h:
9404         sync .h with .c declarations
9405
9406 2004-01-30  Julien Moutte  <julien@moutte.net>
9407
9408         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
9409         Ronald will fix riffread.
9410
9411 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9412
9413         * docs/pwg/advanced-interfaces.xml:
9414           Added tuner interface docs.
9415
9416 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9417
9418         * docs/random/mimetypes:
9419           correct Theora information
9420         * gst/gstelement.h:
9421           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
9422
9423 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9424
9425         * gst/gstelement.c: (gst_element_error_full):
9426         * gst/gstelement.h:
9427           GST_ELEMENT_ERROR in enum -> _IN_ERROR
9428
9429 2004-01-29  Julien MOUTTE  <julien@moutte.net>
9430
9431         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9432         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
9433         again and even before DISCONT.
9434         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
9435         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
9436         bytestream so that it's not stopping to fill the bytestream if events
9437         different than EOS or DISCONT are received. Instead it process them so
9438         that they go downstream.
9439
9440 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9441
9442         * docs/gst/tmpl/gstelement.sgml:
9443         * docs/gst/tmpl/gstreamer-unused.sgml:
9444         * docs/gst/tmpl/gstxml.sgml:
9445         * gst/autoplug/gstspideridentity.c:
9446         (gst_spider_identity_sink_loop_type_finding):
9447         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9448         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9449         (gst_filesink_close_file), (gst_filesink_handle_event),
9450         (gst_filesink_chain):
9451         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9452         (gst_filesrc_get_read), (gst_filesrc_open_file):
9453         * gst/elements/gstidentity.c: (gst_identity_chain):
9454         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9455         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9456         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9457         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9458         * gst/gstelement.h:
9459         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9460         (gst_pad_recover_caps_error), (gst_pad_pull):
9461         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9462         * gst/schedulers/gstbasicscheduler.c:
9463         (gst_basic_scheduler_chainhandler_proxy),
9464         (gst_basic_scheduler_gethandler_proxy),
9465         (gst_basic_scheduler_cothreaded_chain):
9466           gst_element_error -> GST_ELEMENT_ERROR
9467
9468 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9469
9470         * docs/Makefile.am:
9471         * docs/gst/tmpl/gstelement.sgml:
9472         * docs/gst/tmpl/gstxml.sgml:
9473         * docs/manuals.mak:
9474         * docs/pwg/advanced-request.xml:
9475         * docs/pwg/advanced-scheduling.xml:
9476         * docs/pwg/advanced-tagging.xml:
9477           fix non-validating docbook using CDATA
9478           make sure make check-local gets run first to check if it validates
9479
9480 2004-01-29  Julien MOUTTE <julien@moutte.net>
9481
9482         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
9483         handling (up and downstream).
9484         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
9485         my_filter thing.
9486
9487 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9488
9489         * docs/pwg/advanced-tagging.xml:
9490           Add docs about tag writing.
9491
9492 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9493
9494         * docs/pwg/advanced-tagging.xml:
9495           Add a part about tag reading and application signalling... Tag
9496           writing still needs to be documented.
9497         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
9498           We can set file locations in READY, too.
9499
9500 2004-01-29  Julien MOUTTE <julien@moutte.net>
9501
9502         * docs/random/ds/element-checklist: Adding some notes about src
9503         events.
9504
9505 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9506
9507         * docs/random/mimetypes:
9508           Update docs to point to correct elements for various mimetypes, and
9509           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
9510           <stephane.loeuillet@tiscali.fr>.
9511
9512 2004-01-28  David Schleef  <ds@schleef.org>
9513
9514         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
9515
9516 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9517
9518         * docs/random/mimetypes:
9519           update docs for audio/x-raw-float. Add "buffer-frames=0 means
9520           undefined"
9521         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
9522           make it only work in NULL.
9523         * gst/gstcaps.c:
9524           don't posion NULL caps
9525         * gst/gstelement.c: (gst_element_set_time):
9526           add debugging statement
9527         * gst/gstelement.c: (gst_element_emit_found_tag),
9528         (gst_element_found_tag_func), (gst_element_found_tags):
9529         * gst/gstelement.h:
9530           These functions take const taglists
9531         * gst/gstpad.c: (gst_pad_proxy_getcaps):
9532           fix memleak
9533         * gst/gstpad.c: (gst_pad_event_default):
9534           make more effort on handling discont and clocks, g_warn if everything
9535           fails
9536         * gst/gststructure.c: (gst_structure_remove_fields),
9537         (gst_structure_remove_fields_valist):
9538         * gst/gststructure.h:
9539           add gst_structure_remove_fields(_valist)
9540         * gst/gsttag.c:
9541           fix doc glitch
9542
9543 2004-01-28  David Schleef  <ds@schleef.org>
9544
9545         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
9546         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
9547         Fix memory leakage of gst_caps_to_string().
9548
9549         Use GST_PTR_FORMAT instead of gst_caps_to_string():
9550         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
9551         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
9552         (gst_spider_identity_sink_loop_type_finding):
9553         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9554         (find_suggest):
9555         * gst/gstpad.c: (gst_pad_try_relink_filtered),
9556         (gst_pad_set_explicit_caps):
9557         * gst/parse/grammar.y:
9558
9559 2004-01-28  David Schleef  <ds@schleef.org>
9560
9561         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
9562         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
9563         * docs/random/ds/0.9-suggested-changes: Notes from Company.
9564         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
9565         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
9566         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
9567         (gst_debug_log_default), (_gst_info_printf_extension),
9568         (_gst_info_printf_extension_arginfo):  Add printf extension.
9569         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
9570         * gst/gststructure.c: (gst_structure_to_string),
9571         (_gst_structure_parse_value): Use gst_value_deserialize() and
9572         remove old code.
9573         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
9574         (gst_value_deserialize_boolean), (gst_strtoi),
9575         (gst_value_deserialize_int), (gst_value_deserialize_double),
9576         (gst_value_deserialize_string), (gst_value_deserialize): Implement
9577         a bunch of deserialize functions and gst_value_deserialize.
9578         * gst/gstvalue.h: er, _de_serialize, not unserialize
9579         * testsuite/caps/string-conversions.c: (main): We don't currently
9580         handle (float) in caps, so convert these to (double).
9581         * testsuite/debug/Makefile.am: Add new test for the printf extension
9582         * testsuite/debug/printf_extension.c: (main): same
9583
9584 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9585
9586         * docs/random/company/time:
9587           Add some docs about clocking and time
9588
9589 2004-01-28  Julien MOUTTE <julien@moutte.net>
9590
9591         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
9592
9593 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9594
9595         * docs/pwg/advanced-clock.xml:
9596         * docs/pwg/advanced-dparams.xml:
9597         * docs/pwg/advanced-events.xml:
9598         * docs/pwg/advanced-interfaces.xml:
9599         * docs/pwg/advanced-midi.xml:
9600         * docs/pwg/advanced-request.xml:
9601         * docs/pwg/advanced-scheduling.xml:
9602         * docs/pwg/advanced-tagging.xml:
9603         * docs/pwg/advanced-types.xml:
9604         * docs/pwg/appendix-checklist.xml:
9605         * docs/pwg/building-boiler.xml:
9606         * docs/pwg/building-chainfn.xml:
9607         * docs/pwg/building-filterfactory.xml:
9608         * docs/pwg/building-pads.xml:
9609         * docs/pwg/building-props.xml:
9610         * docs/pwg/building-signals.xml:
9611         * docs/pwg/building-state.xml:
9612         * docs/pwg/building-testapp.xml:
9613         * docs/pwg/intro-basics.xml:
9614         * docs/pwg/intro-preface.xml:
9615         * docs/pwg/other-autoplugger.xml:
9616         * docs/pwg/other-sink.xml:
9617         * docs/pwg/other-source.xml:
9618         * docs/pwg/titlepage.xml:
9619           fix up id's
9620
9621 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9622
9623         * docs/95NonPath:
9624         * docs/HACKING:
9625         * docs/README:
9626         * docs/building-the-docs-on-debian:
9627           collect relevant bits of doc info
9628
9629 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9630
9631         * docs/pwg/advanced_tagging.xml:
9632           Half-assed commit so Thomas can re-arrange document IDs here to be
9633           consistent, too.
9634
9635 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9636
9637         * docs/manual/autoplugging.xml:
9638         * docs/manual/bins-api.xml:
9639         * docs/manual/bins.xml:
9640         * docs/manual/buffers-api.xml:
9641         * docs/manual/buffers.xml:
9642         * docs/manual/clocks.xml:
9643         * docs/manual/components.xml:
9644         * docs/manual/cothreads.xml:
9645         * docs/manual/debugging.xml:
9646         * docs/manual/dparams-app.xml:
9647         * docs/manual/dynamic.xml:
9648         * docs/manual/elements-api.xml:
9649         * docs/manual/elements.xml:
9650         * docs/manual/factories.xml:
9651         * docs/manual/gnome.xml:
9652         * docs/manual/goals.xml:
9653         * docs/manual/helloworld.xml:
9654         * docs/manual/helloworld2.xml:
9655         * docs/manual/init-api.xml:
9656         * docs/manual/intro.xml:
9657         * docs/manual/links-api.xml:
9658         * docs/manual/links.xml:
9659         * docs/manual/manual.xml:
9660         * docs/manual/motivation.xml:
9661         * docs/manual/pads-api.xml:
9662         * docs/manual/pads.xml:
9663         * docs/manual/plugins-api.xml:
9664         * docs/manual/plugins.xml:
9665         * docs/manual/programs.xml:
9666         * docs/manual/queues.xml:
9667         * docs/manual/quotes.xml:
9668         * docs/manual/schedulers.xml:
9669         * docs/manual/states-api.xml:
9670         * docs/manual/states.xml:
9671         * docs/manual/threads.xml:
9672         * docs/manual/typedetection.xml:
9673         * docs/manual/xml.xml:
9674           use chapter, part, section or misc as id starts for all bits
9675
9676 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9677
9678         * docs/gst/gstreamer-sections.txt:
9679           Fix up TITLE of the sections
9680
9681 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9682
9683         * docs/pwg/advanced_interfaces.xml:
9684           Add documentation on propertyprobing.
9685         * docs/pwg/advanced_events.xml:
9686         * docs/pwg/advanced_tagging.xml:
9687         * docs/pwg/building_boiler.xml:
9688         * docs/pwg/building_filterfactory.xml:
9689         * docs/pwg/pwg.xml:
9690           Move filterfactory and tagging into their own chapter, add a chapter
9691           on events. all these are empty placeholders that will be filled in
9692           some day.
9693
9694 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9695
9696         * docs/pwg/advanced_interfaces.xml:
9697           Docs for mixer interface. Also a check for website uploading.
9698
9699 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9700
9701         * docs/HACKING:
9702         * docs/Makefile.am:
9703         * docs/faq/Makefile.am:
9704         * docs/gst/Makefile.am:
9705         * docs/gst/tmpl/gstelement.sgml:
9706         * docs/gst/tmpl/gstplugin.sgml:
9707         * docs/gst/tmpl/gstreamer-unused.sgml:
9708         * docs/libs/Makefile.am:
9709         * docs/manual/Makefile.am:
9710         * docs/manuals.mak:
9711         * docs/pwg/Makefile.am:
9712         * docs/upload.mak:
9713           Separate out upload target and make it similar for
9714           both docbook and gtk-doc docs
9715
9716 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9717
9718         * docs/manuals.mak:
9719           Fix upload target to work with freedesktop
9720
9721 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9722
9723         * docs/pwg/advanced_types.xml:
9724           Add notes on creating your own types.
9725         * docs/pwg/building_boiler.xml:
9726         * docs/pwg/building_pads.xml:
9727         * docs/pwg/building_state.xml:
9728           Add some stuff about how to retrieve values from structures, how
9729           that relates to types and change layout slightly again to be almost
9730           perfect.
9731
9732 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9733
9734         * docs/pwg/advanced_dparams.xml:
9735         * docs/pwg/advanced_scheduling.xml:
9736           Change index layout slightly.
9737
9738 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9739
9740         * docs/pwg/advanced_clock.xml:
9741         * docs/pwg/advanced_interfaces.xml:
9742         * docs/pwg/advanced_midi.xml:
9743           General placeholders for now.
9744         * docs/pwg/advanced_request.xml:
9745           Explanation about sometimes and request pads.
9746         * docs/pwg/advanced_scheduling.xml:
9747           Concept of bytestream, loopfunctions and schedulers.
9748         * docs/pwg/building_boiler.xml:
9749           Add something about plugin-init.
9750
9751 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9752
9753         * docs/pwg/building_pads.xml:
9754           Fix broken docbook
9755
9756 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9757
9758         * docs/pwg/advanced_interfaces.xml:
9759         * docs/pwg/pwg.xml:
9760           Add as a placeholder for future filling-in.
9761         * docs/pwg/basics_autoplugging.xml:
9762         * docs/pwg/basics_buffers.xml:
9763         * docs/pwg/basics_elements.xml:
9764         * docs/pwg/basics_events.xml:
9765         * docs/pwg/basics_plugins.xml:
9766         * docs/pwg/basics_types.xml:
9767           Remove, because unused (this is all in intro_basics.xml).
9768         * docs/pwg/building_signals.xml:
9769           Short intro to signals + reference to GObject docs - we really
9770           shouldn't go into these sort of things to deply because we don't
9771           use them that extensively anyway.
9772         * docs/pwg/building_state.xml:
9773           Explanation of states. Benjamin, please check.
9774         * docs/pwg/building_testapp.xml:
9775           Put everything in one page - putting only a few lines of content
9776           per page doesn't really make sense.
9777
9778           Time to get into the advanced topics. ;).
9779
9780 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9781
9782         * docs/pwg/advanced_types.xml:
9783           Finish documenting the current state of mimetypes.
9784         * docs/pwg/building_boiler.xml:
9785         * docs/pwg/building_chainfn.xml:
9786         * docs/pwg/building_pads.xml:
9787         * docs/pwg/building_props.xml:
9788         * docs/pwg/building_testapp.xml:
9789           Start documenting the "how to build a simple audio filter" part
9790           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
9791           states and (maybe?) a short introduction to capsnego in the chapter
9792           on pads (building_pads.xml). Capsnego should probably be explained
9793           fully in advanced_capsnego.xml or so.
9794
9795 2004-01-26  David Schleef  <ds@schleef.org>
9796
9797         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
9798         * gst/gstpad.h: Add new function to allow element to (somewhat)
9799         specify non-fixed caps on a pad.
9800         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
9801         that I added a few weeks ago.
9802
9803 2004-01-26  David Schleef  <ds@schleef.org>
9804
9805         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
9806           making try_set_caps() work with non-fixed caps.
9807
9808 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9809
9810         * docs/pwg/advanced_types.xml:
9811         * docs/pwg/intro_basics.xml:
9812         * docs/pwg/intro_preface.xml:
9813         * docs/pwg/pwg.xml:
9814         * docs/pwg/titlepage.xml:
9815           First try to resurrect the PWG. I'm halfway integrating the mimetypes
9816           in here (docs/random/mimetypes), and will from there on work on both
9817           updating outdated parts and adding missing parts.
9818           That doesn't mean I'll fix it completely, but I'll try at least. ;).
9819
9820 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9821
9822         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
9823           policy is set
9824
9825 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9826
9827         * gst/gstelement.h:
9828           remove gst_element_factory_get_version. It doesn't exist anymore.
9829         * gst/gstplugin.c:
9830         * gst/gstplugin.h:
9831           remove gst_plugin_set_name and change gst_plugin_get_longname to
9832           gst_plugin_get_description to match code.
9833         * gst/gsterror.h:
9834           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
9835         * gst/gstpad.c: (gst_pad_try_set_caps):
9836           make it work with nonfixed caps.
9837           Note that even in the nonfixed case the link function of the pad
9838           that tries to set caps isn't called.
9839
9840 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9841
9842         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9843           fix bug where buffer was not assembled correctly
9844         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
9845           silence by default
9846         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9847           only seek if there's no more buffers that could work without seeking
9848
9849 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9850
9851         * gst/gsttag.c: (_gst_tag_initialize):
9852         * gst/gsttag.h:
9853           Add application tag (for encoding/muxing app).
9854
9855 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
9856
9857         * autogen.sh:
9858           make autopoint force, and libtoolize not copy
9859         * common/m4/as-docbook.m4:
9860           added docbook xml catalog setup check
9861         * common/m4/gst-doc.m4:
9862           use docbook check
9863
9864 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9865
9866         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
9867         * gst/gsttag.h:
9868           add GstTagFlag
9869
9870 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9871
9872         * docs/gst/gstreamer-sections.txt:
9873         * docs/gst/tmpl/gst.sgml:
9874         * docs/gst/tmpl/gstbuffer.sgml:
9875         * docs/gst/tmpl/gstclock.sgml:
9876         * docs/gst/tmpl/gstelement.sgml:
9877         * docs/gst/tmpl/gstreamer-unused.sgml:
9878         * docs/gst/tmpl/gstxml.sgml:
9879           sync latest API changes to docs
9880
9881 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9882
9883         * gst/gstpluginfeature.c:
9884           fix doc snippet
9885         * tools/gst-inspect.c: (print_element_list):
9886           fix output of typefind
9887           add GPL header
9888         * tools/gst-launch.c:
9889           add GPL header
9890
9891 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9892
9893         * gst/elements/Makefile.am:
9894         * gst/elements/gstelements.c:
9895         * gst/elements/gsttypefindelement.c:
9896         * gst/elements/gsttypefindelement.h:
9897         * po/POTFILES.in:
9898         * po/fr.po:
9899         * po/nl.po:
9900           renamed gsttypefindelement to gsttypefind, conserving CVS history
9901
9902 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9903
9904         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
9905         * gst/gsttag.h:
9906           add some tags used in ogg as well
9907           fix _ in replaygain tags
9908
9909 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9910
9911         * gst/gsterror.h:
9912           fix wrong GST_LIBRARY_ERROR_ENCODE addition
9913
9914 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9915
9916         * gst/gstelement.c: (gst_element_error_full):
9917         * gst/gstelement.h:
9918           change _extended to _full
9919
9920 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9921
9922         reviewed by: <delete if not using a buddy>
9923
9924         * docs/gst/tmpl/gst.sgml:
9925         * docs/gst/tmpl/gstbuffer.sgml:
9926         * docs/gst/tmpl/gstclock.sgml:
9927         * docs/gst/tmpl/gstelement.sgml:
9928         * docs/gst/tmpl/gstreamer-unused.sgml:
9929         * docs/gst/tmpl/gstxml.sgml:
9930         * gst/gstelement.c: (gst_element_error_full):
9931         * gst/gstelement.h:
9932
9933 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9934
9935         * gst/gstelement.h: fix _gst_element_error_printf prototype
9936
9937 2004-01-20  David Schleef  <ds@schleef.org>
9938
9939         * gst/gststructure.c: (gst_structure_to_string):
9940         Convert function to use gst_value_serialize().
9941         * gst/gstvalue.c: (gst_value_serialize_list),
9942         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
9943         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
9944         (gst_value_serialize_int), (gst_value_serialize_double),
9945         (gst_string_wrap), (gst_value_serialize_string),
9946         (gst_value_serialize), (gst_value_deserialize):
9947         * gst/gstvalue.h:
9948         Add implementations for serialize.
9949
9950 2004-01-20  Julien MOUTTE  <julien@moutte.net>
9951
9952         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
9953         we want to keep that one in the future or change xvidenc.c to use 
9954         another error.
9955
9956 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9957
9958         * gst/gstelement.c: (_gst_element_error_printf):
9959         * gst/gstelement.h:
9960           privatise function
9961
9962 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9963
9964         * docs/random/error:
9965           doc explaining error system
9966         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9967           cleanup
9968
9969 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9970
9971         * gst/gst-i18n-app.h:
9972         * gst/gst-i18n-lib.h:
9973           remove inclusion of config.h
9974         * po/POTFILES.in:
9975         * po/nl.po:
9976           add gst/gstelement.c
9977
9978 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9979
9980         * po/nl.po: updated Dutch translation
9981
9982 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9983
9984         * gst/gsterror.c: (_gst_core_errors_init),
9985         (_gst_library_errors_init), (_gst_resource_errors_init),
9986         (_gst_stream_errors_init):
9987         remove ending punctuation dots
9988
9989 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9990
9991         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9992         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
9993         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9994         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9995         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9996         use GST_ERROR_SYSTEM
9997
9998 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9999
10000         * gst/gstelement.c: (gst_element_error_printf),
10001         (gst_element_error_extended):
10002         * gst/gstelement.h:
10003           add a helper printf function so we can have NULL values passed.
10004
10005 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10006
10007         * gst/gstelement.h:
10008           add G_STMT macros to gst_element_error, which isn't strictly
10009           necessary but people tell me to anyway.
10010
10011 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10012
10013         * gst/Makefile.am:
10014         * gst/autoplug/gstspideridentity.c:
10015         (gst_spider_identity_sink_loop_type_finding):
10016         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10017         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10018         (gst_filesink_close_file), (gst_filesink_handle_event),
10019         (gst_filesink_chain):
10020         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
10021         (gst_filesrc_map_region), (gst_filesrc_get_read),
10022         (gst_filesrc_open_file):
10023         * gst/elements/gstidentity.c: (gst_identity_chain):
10024         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10025         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10026         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10027         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
10028         * gst/gst.h:
10029         * gst/gst_private.h:
10030         * gst/gstelement.c: (gst_element_class_init),
10031         (gst_element_default_error), (gst_element_error_func),
10032         (gst_element_error_extended):
10033         * gst/gstelement.h:
10034         * gst/gsterror.c: (_gst_core_errors_init),
10035         (_gst_library_errors_init), (_gst_resource_errors_init),
10036         (_gst_stream_errors_init), (gst_error_get_message):
10037         * gst/gsterror.h:
10038         * gst/gstinfo.c: (_gst_debug_init):
10039         * gst/gstmarshal.list:
10040         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10041         (gst_pad_recover_caps_error), (gst_pad_pull):
10042         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10043         * gst/schedulers/gstbasicscheduler.c:
10044         (gst_basic_scheduler_chainhandler_proxy),
10045         (gst_basic_scheduler_gethandler_proxy),
10046         (gst_basic_scheduler_cothreaded_chain):
10047         * po/POTFILES.in:
10048         * po/fr.po:
10049         * po/nl.po:
10050           change error signal
10051           add error categories
10052
10053 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
10054
10055         * gst/gsttag.c: (_gst_tag_initialize):
10056         * gst/gsttag.h:
10057         Add replaygain tag
10058
10059 2004-01-18  Colin Walters  <walters@verbum.org>
10060
10061         * examples/retag/retag.c: Call gst_init before processing
10062         program args.  Add g_assert to _link_many call.
10063
10064 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10065
10066         * gst/gstpad.c: (gst_pad_alloc_buffer):
10067           Return a newly allocated buffer when the pad has no peer.
10068
10069 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10070
10071         * gst/gstclock.c: (gst_clock_get_time):
10072           make it compile with gcc 2.95 again.
10073           Patch by Scott Wheeler
10074
10075 2004-01-15  David Schleef  <ds@schleef.org>
10076
10077         * gst/gstcaps.h:
10078         Added gst_caps_is_simple() macro.
10079         * testsuite/caps/caps.c: (test1):
10080         * testsuite/caps/intersect2.c: (main):
10081         * testsuite/caps/intersection.c: (main):
10082         Fixes to make 'make check' work again after removing
10083         gst_caps_is_chained().
10084
10085 2004-01-15  Leif Johnson <leif@ambient.2y.net>
10086
10087         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
10088         and additions to the MIDI document.
10089
10090 2004-01-15  David Schleef  <ds@schleef.org>
10091
10092         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
10093         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
10094         of GST_RPAD_, since we don't know if it's a real or ghost pad.
10095
10096 2004-01-15  David Schleef  <ds@schleef.org>
10097
10098         * gst/gstqueue.c:
10099         * gst/gstqueue.h:
10100         Fix the spelling of "treshold" and make min_threshold actually
10101         affect the queue.
10102
10103 2004-01-15  David Schleef  <ds@schleef.org>
10104
10105         * gst/gstcaps.c:
10106         Add lots of documentation.
10107         * gst/gstcaps.h:
10108         Deprecate a few functions.
10109         * gst/gstpad.c:
10110         Removed use of deprecated functions.
10111
10112 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10113
10114         * gst/gstpad.c: (gst_pad_is_linked):
10115         * gst/gstpad.h:
10116           implement gst_pad_is_linked
10117         * gst/gstelement.h:
10118           reserve space for initiate_state_change
10119
10120 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10121
10122         * gst/autoplug/gstspideridentity.c:
10123         (gst_spider_identity_sink_loop_type_finding):
10124           break infinite loop by just returning instead of looping
10125         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
10126           set event time difference correctly. Set it to 1 second instead
10127           of 100ms to be more tolerant
10128         * gst/gstelement.c: (gst_element_set_time):
10129           add debugging output
10130
10131 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10132
10133         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
10134           query if buffers are inside the pool, ignore events
10135
10136 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10137
10138         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
10139         (gst_clock_set_speed), (gst_clock_set_active),
10140         (gst_clock_is_active), (gst_clock_reset),
10141         (gst_clock_handle_discont):
10142         * gst/gstclock.h:
10143           deprecate old interface and disable functions that aren't in use
10144           anymore.
10145         * gst/gstelement.h:
10146         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
10147         (gst_element_set_time), (gst_element_adjust_time):
10148           add concept of "element time" and functions to get/set this time.
10149         * gst/gstelement.c: (gst_element_change_state):
10150           update element time correctly.
10151         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10152           This is a debug message, not a g_critical.
10153         * gst/gstpad.c: (gst_pad_event_default):
10154           handle discontinuous events right with element time.
10155         * gst/gstscheduler.c: (gst_scheduler_state_transition):
10156           update to clocking fixes.
10157           set clocks on elements in READY=>PAUSED. The old behaviour caused
10158           a wrong element time on the first element that started playing.
10159         * gst/schedulers/gstbasicscheduler.c:
10160         (gst_basic_scheduler_class_init):
10161         * gst/schedulers/gstoptimalscheduler.c:
10162         (gst_opt_scheduler_class_init):
10163           remove code that just implements the default behaviour.
10164         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
10165           update to use new clocking functions
10166         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
10167         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
10168           update to test new element time.
10169         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
10170           use _get_allowed_caps instead of _get_caps. This catches filtered
10171           caps correctly.
10172         * testsuite/debug/commandline.c:
10173           update for new GST_DEBUG syntax.
10174         * testsuite/threads/Makefile.am:
10175           disable a test that only works sometimes.
10176
10177 2004-01-13  Julien MOUTTE <julien@moutte.net>
10178
10179         * po/LINGUAS: Adding fr.
10180         * po/fr.po: Adding french translation.
10181
10182 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10183
10184         * gst/parse/grammar.y:
10185         * po/POTFILES.in:
10186         * po/nl.po:
10187         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
10188           translate parsing error messages
10189
10190 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10191
10192         * po/POTFILES.in: adding gst-launch
10193         * po/nl.po: updated translation, all 99 strings translated
10194         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
10195         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
10196           fix strings for translation
10197
10198 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10199
10200         * gst/gst.c:
10201           - capitalize beginnings of popt options
10202           - fix strings for translation
10203           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
10204
10205 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10206
10207         * po/README: add some notes on how to update translations
10208
10209 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10210
10211         * ABOUT-NLS: removed, is autogenerated from autopoint
10212         * autogen.sh: add autopoint stuff
10213         * configure.ac: fix up gettext stuff
10214         * gst/Makefile.am: add i18n headers to noinst_HEADERS
10215         * gst/elements/gsttypefindelement.c: add header include
10216         * gst/gettext.h: add header, copy from system-installed header
10217         * gst/gst-i18n-app.h: to be included by each app having translations
10218         * gst/gst-i18n-lib.h: to be included by each lib having translations
10219         * gst/gst.c: (init_pre): fix up gettext calls
10220         * gst/gst_private.h: remove i18n stuff, moving to separate headers
10221         * po/LINGUAS: the new way to specify translations present
10222         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
10223         * po/Makevars: the variables filled in for GStreamer
10224         * po/POTFILES.in: added new files with translations
10225         * po/de.po: has new strings
10226         * po/nl.po: readded, has new strings
10227
10228 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10229
10230         * gst/gsttag.c: fix some strings marked for translation
10231
10232 2004-01-13  Iain <iain@prettypeople.org>
10233
10234         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
10235         group when we add an element to it, cos we unref it when we remove one
10236
10237 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10238
10239         * testsuite/debug/commandline.c: (debug_not_reached):
10240         * testsuite/debug/output.c: (check_message):
10241           fix testsuite
10242
10243 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10244
10245         * examples/cutter/.cvsignore:
10246         * examples/helloworld/.cvsignore:
10247         * examples/launch/.cvsignore:
10248         * examples/manual/.cvsignore:
10249         * examples/mixer/.cvsignore:
10250         * examples/pingpong/.cvsignore:
10251         * examples/plugins/.cvsignore:
10252         * examples/queue/.cvsignore:
10253         * examples/queue2/.cvsignore:
10254         * examples/queue3/.cvsignore:
10255         * examples/queue4/.cvsignore:
10256         * examples/retag/.cvsignore:
10257         * examples/thread/.cvsignore:
10258         * examples/typefind/.cvsignore:
10259         * examples/xml/.cvsignore:
10260         * gst/.cvsignore:
10261         * gst/autoplug/.cvsignore:
10262         * gst/elements/.cvsignore:
10263         * gst/indexers/.cvsignore:
10264         * gst/parse/.cvsignore:
10265         * gst/registries/.cvsignore:
10266         * gst/schedulers/.cvsignore:
10267         * libs/gst/bytestream/.cvsignore:
10268         * libs/gst/control/.cvsignore:
10269         * libs/gst/getbits/.cvsignore:
10270         * tests/.cvsignore:
10271         * tests/bufspeed/.cvsignore:
10272         * tests/instantiate/.cvsignore:
10273         * tests/memchunk/.cvsignore:
10274         * tests/muxing/.cvsignore:
10275         * tests/sched/.cvsignore:
10276         * tests/seeking/.cvsignore:
10277         * tests/threadstate/.cvsignore:
10278         * testsuite/.cvsignore:
10279         * testsuite/caps/.cvsignore:
10280         * testsuite/cleanup/.cvsignore:
10281         * testsuite/dynparams/.cvsignore:
10282         * testsuite/plugin/.cvsignore:
10283         * tools/.cvsignore:
10284           update - this is huge, because it includes *.bb, *.bbg and *.da files
10285           which are generated for gcov.
10286
10287 2004-01-11  David Schleef  <ds@schleef.org>
10288
10289         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
10290         a function to parse integers in ways that strto[u]l() does not.
10291
10292 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10293
10294         * tools/gst-inspect.c: (print_caps):
10295           improve output of caps a bit
10296
10297 2004-01-11  David Schleef  <ds@schleef.org>
10298
10299         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
10300         inherit correct flags (READONLY and DONTKEEP).
10301
10302 2004-01-11  David Schleef  <ds@schleef.org>
10303
10304         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
10305         (gst_filesrc_map_region):
10306         * gst/gstbuffer.c: (_gst_buffer_initialize),
10307         (_gst_buffer_sub_free), (gst_buffer_default_copy),
10308         (gst_buffer_new), (gst_buffer_create_sub),
10309         (gst_buffer_is_span_fast), (gst_buffer_span):
10310         * gst/gstbuffer.h:
10311         Change GstBuffer private structure element names. (all files)
10312         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
10313         (gst_queue_link):
10314         * gst/gstqueue.h:
10315         Implement getcaps/pad_link functions that handle the case where
10316         there are data in the queue.
10317
10318 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10319
10320         * gst/elements/gstbufferstore.c:
10321           initialize debugging structure correctly
10322         * gst/elements/gsttee.c: (gst_tee_set_property):
10323           g_object_notify when property was changed
10324         * gst/elements/gsttypefindelement.c:
10325         (gst_type_find_element_change_state):
10326           clear caps correctly
10327
10328 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10329
10330         * gst/gstqueue.c: (gst_queue_init):
10331           Use better defaults for when a queue should block. This
10332           gets rid of jerky playback for quite a few files.
10333           It takes more memory.
10334
10335 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10336
10337         (gst_xml_registry_parse_padtemplate):
10338           make critical message slightly more useful
10339
10340 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10341
10342         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
10343         (gst_debug_message_get), (gst_debug_log_default):
10344         * gst/gstinfo.h:
10345           Change gst_debug_log(_valist) to take a const format string.
10346           Change prototype of log function and functions using those to 
10347           take a GstDebugMessage instead of a string that requires using
10348           gst_debug_message_get.
10349
10350 2004-01-08  David Schleef  <ds@schleef.org>
10351
10352         * Makefile.am:
10353         * configure.ac:
10354         Add option --enable-gcov to build GStreamer with -fprofile-arcs
10355         and -ftest-coverage, which allows gcov to show information about
10356         testsuite coverage.
10357
10358 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10359
10360         * gst/gstutils.h:
10361           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
10362           GST_PARENT_CALL_WITH_DEFAULT
10363         * gst/elements/gstaggregator.c: 
10364         * gst/elements/gstbufferstore.c: 
10365         * gst/elements/gstfakesink.c: 
10366         * gst/elements/gstfakesrc.c: 
10367         * gst/elements/gstfdsink.c: 
10368         * gst/elements/gstfdsrc.c: 
10369         * gst/elements/gstfilesink.c: 
10370         * gst/elements/gstfilesrc.c: 
10371         * gst/elements/gstidentity.c: 
10372         * gst/elements/gstmd5sink.c: 
10373         * gst/elements/gstmultidisksrc.c:
10374         * gst/elements/gstpipefilter.c: 
10375         * gst/elements/gstshaper.c:
10376         * gst/elements/gststatistics.c:
10377         * gst/elements/gsttee.c:
10378         * gst/elements/gsttypefindelement.c:
10379           use them.
10380
10381 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10382
10383         * docs/gst/gstreamer-docs.sgml: remove props
10384         * docs/gst/gstreamer-sections.txt: remove props
10385         * docs/gst/tmpl/gst.sgml:
10386         * docs/gst/tmpl/gstbin.sgml:
10387         * docs/gst/tmpl/gstbuffer.sgml:
10388         * docs/gst/tmpl/gstcaps.sgml:
10389         * docs/gst/tmpl/gstclock.sgml:
10390         * docs/gst/tmpl/gstelement.sgml:
10391         * docs/gst/tmpl/gstindex.sgml:
10392         * docs/gst/tmpl/gstobject.sgml:
10393         * docs/gst/tmpl/gstpad.sgml:
10394         * docs/gst/tmpl/gstpadtemplate.sgml:
10395         * docs/gst/tmpl/gstreamer-unused.sgml:
10396         * docs/gst/tmpl/gstthread.sgml:
10397         * docs/gst/tmpl/gstxml.sgml:
10398           sync with code reorganization
10399
10400 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
10401
10402         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10403         Make the 'Could not find compatible pad' message more informative.
10404
10405 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10406                                                                                 
10407         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
10408           Fix for if we pass NULL as property to location.
10409         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
10410         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
10411           Fix for instantiate-test (see below).
10412         * gst/gststructure.c: (_gst_structure_parse_value):
10413           Fix compile error on gcc-2.96.
10414         * configure.ac:
10415         * tests/Makefile.am:
10416         * tests/instantiate/Makefile.am:
10417         * tests/instantiate/create.c: (create_all_elements), (main):
10418           Add a test that instantiates all elements. This makes it easy to
10419           track dead code for old API/design (like setting event functions
10420           on sink pads and so on).
10421
10422 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
10423
10424         * gst/gstcaps.c: (gst_caps_append_structure):
10425           Move the poisoning to allow a NULL structure
10426         * gst/gstevent.c: (_gst_event_free):
10427           When freeing a navigation event, free the structure
10428           also
10429
10430 2004-01-04  David Schleef  <ds@schleef.org>
10431
10432         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10433         Remove usage of gst_pad_proxy_fixate.
10434         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
10435         (gst_caps_split_one), (gst_caps_replace):
10436         Add poisoning code.
10437         * gst/gstmarshal.list:
10438         Add pointer__pointer for fixate signal
10439         * gst/gstpad.c: (gst_real_pad_class_init),
10440         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10441         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
10442         (gst_pad_set_explicit_caps), (gst_pad_template_new):
10443         Add poisoning code. Add fixate signal on RealPad. Change
10444         set_explicit_caps() to take const GstCaps, like try_set_caps().
10445         * gst/gstpad.h:
10446         * testsuite/caps/Makefile.am:
10447         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
10448
10449 2004-01-03  David Schleef  <ds@schleef.org>
10450
10451         * gst/elements/gsttypefindelement.c:
10452         (gst_type_find_element_have_type), (gst_type_find_element_init):
10453         Use gst_pad_use_explicit_caps for src pad.
10454         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
10455         before using it.
10456
10457 2004-01-03  David Schleef  <ds@schleef.org>
10458
10459         * gst/gstelement.c: (gst_element_link_pads_filtered),
10460         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
10461         that linking was successful.
10462         * gst/gstpad.c: (gst_pad_link_free),
10463         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
10464         (gst_pad_link_try), (gst_pad_link_unnegotiate),
10465         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
10466         GstPadLinkReturn correctly between functions, and don't fail
10467         when DELAYED is used (DELAYED is very important).  Better
10468         cleanup on unlinking and unnegotiation.  Should fix some spider
10469         bugs.
10470
10471 2004-01-02  David Schleef  <ds@schleef.org>
10472
10473         * gst/gstelement.c: (gst_element_class_init),
10474         (gst_element_base_class_init): ->padtemplates should be cleared
10475         in base_init, since we need to have a fresh list for every
10476         class.  (Alternately, we chould copy the list and share the
10477         actual pad templates (not the list), but that would require
10478         changing every plugin to move pad template registration from
10479         base_init to class_init.)
10480
10481 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10482
10483         * gst/gstelement.c: (gst_element_class_add_pad_template):
10484           Refuse registering a pad template if another pad template
10485           with the same name already exists (#114715).
10486
10487 2004-01-02  David Schleef  <ds@schleef.org>
10488
10489         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
10490         (gst_caps_is_equal_fixed): Add new function.
10491         * gst/gstcaps.h: ditto.
10492         * gst/gstpad.c: (gst_real_pad_class_init),
10493         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
10494         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
10495         check new caps against existing caps -- if they're the same, return
10496         OK without renegotiating.  caps-nego-failed signal fixed so that
10497         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
10498         to save an extra caps copy.  Don't complete negotiation if a pad
10499         link function returns DELAYED.
10500
10501 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10502
10503         * gst/gstpad.c: (gst_pad_try_relink_filtered):
10504           Fix wrong g_return_if_fail
10505
10506 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
10507
10508         * gst/gstbin.c: (gst_bin_class_init):
10509         Change the marshalling of element_added/element_removed
10510         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
10511         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
10512
10513 2004-01-01  David Schleef  <ds@schleef.org>
10514
10515         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10516         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
10517         (gst_pad_use_explicit_caps):
10518         * gst/gstpad.h:
10519         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
10520         to use an internal getcaps and link fuction so that negotiation
10521         always results in the explicitly set caps.
10522         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
10523         are particularly useful for decoders.
10524
10525 2003-12-31  David Schleef  <ds@schleef.org>
10526
10527         * gst/elements/gstidentity.c: (gst_identity_class_init),
10528         (gst_identity_init), (gst_identity_chain),
10529         (gst_identity_set_property), (gst_identity_get_property):
10530         * gst/elements/gstidentity.h:
10531         * gst/gstqueue.c: (gst_queue_init):
10532           Negotiation fixes.
10533
10534 2003-12-31  David Schleef  <ds@schleef.org>
10535
10536         * gst/gstcaps.c: (gst_caps_intersect),
10537         (_gst_caps_normalize_foreach), (gst_caps_normalize):
10538           Implement gst_caps_normalize().
10539         * testsuite/caps/normalisation.c: (main):
10540           Add an additional test
10541
10542 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10543
10544         * gst/gstqueue.c: (gst_queue_init):
10545           use gst_pad_proxy_getcaps()
10546
10547 2003-12-31  David Schleef  <ds@schleef.org>
10548
10549         * gst/elements/gstshaper.c: (gst_shaper_link):
10550         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10551         * gst/gstqueue.c: (gst_queue_link):
10552           Negotiation fixes.
10553
10554 2003-12-31  David Schleef  <ds@schleef.org>
10555
10556         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
10557         * gst/gstpad.h: Add functions that are useful as default pad
10558         link and fixate functions for elements.
10559
10560 2003-12-30  David Schleef  <ds@schleef.org>
10561
10562         * gst/gstpad.c: (gst_pad_link_try):
10563           Fix segfault when attempting to return to old caps
10564
10565 2003-12-29  David Schleef  <ds@schleef.org>
10566
10567         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
10568         (gst_caps_structure_simplify), (gst_caps_simplify):
10569         * gst/gstcaps.h:
10570           Add simplify function
10571         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
10572         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
10573         * gst/gstpad.h:
10574           Copy over srcnotify, sinknotify when calling old pad_link
10575           functions.  Add new is_negotiated() function.
10576         * gst/gststructure.c: (gst_structure_copy):
10577           Fix an incredibly stupid bug that should have been noticed
10578           weeks ago.  _copy() returned the argument, not the new copy.
10579
10580 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10581
10582         * gst/gstcaps.c: (gst_caps_append):
10583           add sanity checks
10584         * gst/gstcaps.h: (gst_caps_debug):
10585           remove, it doesn't exist anymore.
10586         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
10587         (gst_element_threadsafe_properties_post_run):
10588           make debugging messages not clutter up THREAD debug category
10589         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
10590         (gst_element_change_state):
10591           update to new caps API
10592         * gst/gstinterface.c: (gst_implements_interface_cast):
10593           don't put vital code in g_return_if_fail
10594         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
10595         (gst_pad_link_filtered):
10596           add pst_pad_try_link and use it.
10597         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
10598           implement correctly, deprecate first one.
10599         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
10600           add and implement.
10601         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
10602           implement.
10603         (gst_pad_get_negotiated_caps):
10604           add and implement. Make GST_PAD_CAPS call this function.
10605         (gst_pad_get_caps):
10606           remove unneeded check..
10607         (gst_pad_recover_caps_error):
10608           disable, always return FALSE.
10609         (gst_real_pad_dispose):
10610           don't free caps and appfilter anymore, they're unused.
10611         * gst/gstpad.h:
10612           Reflect changes mentioned above.
10613         * gst/gstsystemclock.c: (gst_system_clock_wait):
10614           Make 'clock is way behind' a debugging message.
10615         * gst/gstthread.c: (gst_thread_change_state):
10616           Fix debugging message
10617
10618 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10619
10620         * gst/gstinfo.h:
10621           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
10622         * docs/gst/tmpl/gstreamer-unused.sgml:
10623           removed all traces of cvs conflicts
10624
10625 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10626
10627         * configure.ac:
10628         * gst/schedulers/cothreads_compat.h:
10629         * libs/Makefile.am:
10630           remove last instances of wingo cothread usage
10631
10632 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10633
10634         * gst/gstplugin.c:
10635         * gst/gstversion.h.in:
10636         * gst/parse/grammar.y:
10637           change comment block from /** to /* when not gtk-doc comments
10638
10639 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10640
10641         * gst/gst.c: whitespace and doc style fixes
10642
10643 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10644
10645         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
10646
10647 2003-12-24  Colin Walters  <walters@verbum.org>
10648
10649         * gst/elements/gsttypefindelement.c:
10650           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
10651           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
10652           Don't double-free caps.
10653
10654 2003-12-23  David Schleef  <ds@schleef.org>
10655
10656         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
10657           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
10658           Many little fixes and additions of debug statements to
10659           get rhythmbox working.
10660
10661 2003-12-23  Colin Walters  <walters@verbum.org>
10662
10663         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
10664         Use GST_PAD_LINK_SUCCESSFUL.
10665
10666 2003-12-23  David Schleef  <ds@schleef.org>
10667
10668         * gst/elements/gstaggregator.c:
10669         * gst/elements/gsttee.c:
10670           Use gst_pad_proxy_getcaps().
10671         * gst/gstpad.c:
10672         * gst/gstpad.h:
10673           Add gst_pad_proxy_getcaps(), which filter elements can use
10674           as a generic getcaps implementation.
10675           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
10676           was advertised.
10677
10678 2003-12-23  David Schleef  <ds@schleef.org>
10679
10680         * gst/gstpad.c:
10681           Rearrange/rewrite much of the pad negotiation code, since it
10682           resembled pasta.  This actually changes the way some
10683           negotiation works, since the previous code was inconsistent
10684           depending on how it was invoked.  Add (internal) structure
10685           GstPadLink, which is used to hold some information (more in
10686           the future) about the link between two pads.  Fixes a number
10687           of bugs, including random lossage of filter caps when the
10688           initial negotiation is delayed.  A few functions are still
10689           unimplemented.
10690         * gst/gstpad.h:
10691           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
10692           these when testing GstPadLinkReturn values instead of comparing
10693           directly.
10694
10695 2003-12-23  David Schleef  <ds@schleef.org>
10696
10697         * gst/gstvalue.c: 
10698         * gst/gstvalue.h:
10699           Rearrange lots of code.  Change registration of compare function
10700           into registration of compare/serialize/deserialize functions.
10701           Doesn't include implementation of gst_value_[de]serialize(),
10702           but that should be easy.
10703
10704 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10705
10706         * docs/gst/gstreamer-sections.txt:
10707         * docs/gst/tmpl/gstprops.sgml: removed
10708         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
10709           David removed props and caps code, so let's remove their docs as well.
10710           Removed all no longer existing symbols from gstreamer-sections.txt
10711           
10712 2003-12-22  Colin Walters  <walters@verbum.org>
10713
10714         * gst/gsttaginterface.c, gst/gsttaginterface.h,
10715           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
10716           of tags directly.
10717
10718 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10719
10720         * gst/elements/gstelements.c:
10721           Set ranks of elements to NONE, so the autoplugger doesn't use them.
10722         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
10723           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
10724           gst_caps (peer).
10725
10726 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10727
10728         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
10729         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
10730         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
10731         (gst_spider_identity_sink_loop_type_finding):
10732         * gst/autoplug/gstspideridentity.h:
10733           Fix autoplugging in spider element, so it works with new caps.
10734           This was mainly caused by identifying empty caps incorrectly.
10735
10736 2003-12-22  David Schleef  <ds@schleef.org>
10737
10738         * gststructure.c, gstvalue.c, gstvalue.h: Add
10739           gst_value_init_and_copy() and use it, to avoid silly mistakes in
10740           using g_value_copy()
10741
10742 2003-12-21  David Schleef  <ds@schleef.org>
10743
10744         * many, many files: Merge CAPS branch.  This includes:
10745           - implemention of GstValue and several GstValue types
10746           - implemention of GstStructure
10747           - entire rewrite of GstCaps
10748           - removal of GstProps
10749           - many changes to GstPad to compensate for new caps paradigm
10750           - removal of GstBufferpool
10751         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
10752         gstvalue.h, gst/gstcaps[2]*.[ch]:
10753           - rename gstcaps2.[ch] to gstcaps.[ch]
10754
10755 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10756
10757         * gst/gstqueue.c: (gst_queue_handle_pending_events),
10758         (gst_queue_chain), (gst_queue_handle_src_event):
10759           implement timeout for sending events. Workaround for if the
10760           pipeline on this queue is not passing any data.
10761
10762 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
10763                                                                                 
10764         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
10765         * moved CVS to freedesktop.org
10766