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