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