more docs inlined
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
2
3         * docs/gst/gstreamer-docs.sgml:
4         * docs/gst/tmpl/.cvsignore:
5         * docs/gst/tmpl/gstghostpad.sgml:
6         * docs/gst/tmpl/gstiterator.sgml:
7         * docs/gst/tmpl/gstmacros.sgml:
8         * docs/gst/tmpl/gstrealpad.sgml:
9         * docs/gst/tmpl/gstregistry.sgml:
10         * docs/gst/tmpl/gstregistrypool.sgml:
11         * docs/gst/tmpl/gststructure.sgml:
12         * docs/gst/tmpl/gstsystemclock.sgml:
13         * docs/gst/tmpl/gsttrace.sgml:
14         * gst/gstghostpad.c:
15         * gst/gstmacros.h:
16         * gst/gstmemchunk.c:
17         * gst/gstmemchunk.h:
18         * gst/gstqueue.c:
19         * gst/gstregistry.c:
20         * gst/gstregistrypool.c:
21         * gst/gststructure.c:
22         * gst/gstsystemclock.c:
23           more docs inlined
24
25 2005-09-02  Andy Wingo  <wingo@pobox.com>
26
27         * gst/gstelement.h (GstState): Renamed from GstElementState,
28         changed to be a normal enum instead of flags.
29         (GstStateChangeReturn): Renamed from GstElementStateReturn, names
30         munged to be GST_STATE_CHANGE_*.
31         (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
32         work with the new state representation.
33         (GstStateChange): New enumeration of possible state transitions.
34         Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
35         (GstElementClass::change_state): Pass the GstStateChange along as
36         an argument. Helps language bindings, so they don't have to use
37         tricky lock-needing macros like GST_STATE_CHANGE ().
38
39         * scripts/update-states (file): New script. Run it on a file to
40         update it for state naming and API changes. Updates files in
41         place.
42
43         * All files updated for the new API.
44
45 2005-09-02  Thomas Vander Stichele  <thomas at apestaart dot org>
46
47         * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
48         * gst/gstutils.c: (gst_util_set_value_from_string),
49         (gst_util_set_object_arg):
50           fix a bunch of unchecked return values
51         * tools/gst-complete.c: (main):
52         * gstreamer.spec.in:
53           clean up a little
54
55 2005-09-01  Wim Taymans  <wim@fluendo.com>
56
57         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
58         (gst_base_sink_event), (gst_base_sink_do_sync),
59         (gst_base_sink_handle_event):
60         * gst/base/gstbasesink.h:
61         Handle newsegments more correctly.
62
63         * gst/gstbus.c:
64         Fix docs.
65
66         * gst/gstevent.c: (gst_event_new_newsegment):
67         A newsegment cannot have a start_time of -1
68
69 2005-09-01  Tim-Philipp Müller  <tim at centricular dot net>
70
71         * win32/gstenumtypes.c:
72         * win32/gstenumtypes.h:
73           Update
74
75 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
76
77         * libs/gst/controller/gst-controller.c:
78         (gst_controlled_property_set_interpolation_mode),
79         (gst_controlled_property_new):
80          fixed boolean again
81
82 2005-08-31  Thomas Vander Stichele  <thomas at apestaart dot org>
83
84         * docs/faq/gst-uninstalled:
85           add -good
86         * gst/gstevent.c:
87         * gst/gstevent.h:
88           remove wrong docs
89         * gst/gstutils.c: (gst_element_link_filtered):
90         * gst/gstutils.h:
91           add gst_element_link_filtered
92
93 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
94
95         * docs/gst/gstreamer-docs.sgml:
96         * docs/gst/gstreamer-sections.txt:
97         * docs/gst/tmpl/.cvsignore:
98         * docs/gst/tmpl/gsterror.sgml:
99         * docs/gst/tmpl/gstfilter.sgml:
100         * docs/gst/tmpl/gsturihandler.sgml:
101         * docs/gst/tmpl/gsturitype.sgml:
102         * docs/gst/tmpl/gstutils.sgml:
103         * docs/gst/tmpl/gstxml.sgml:
104         * gst/gsterror.c:
105         * gst/gsterror.h:
106         * gst/gstfilter.c:
107         * gst/gsturi.c:
108         * gst/gsturitype.c:
109         * gst/gstutils.c:
110         * gst/gstxml.c:
111           inlined more docs, fixed double id-ref
112
113 2005-08-31  Wim Taymans  <wim@fluendo.com>
114
115         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
116         (gst_base_transform_handle_buffer):
117         Passthrough elements don't need the caps as they don't care.
118
119 2005-08-31  Wim Taymans  <wim@fluendo.com>
120
121         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
122         (gst_base_transform_handle_buffer), (gst_base_transform_chain):
123         Don't leak refcounts on buffers.
124
125 2005-08-31  Wim Taymans  <wim@fluendo.com>
126
127         * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
128         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
129         (gst_base_transform_chain), (gst_base_transform_change_state):
130         * gst/base/gstbasetransform.h:
131         Handle the case where we are not negotiated more gracefully.
132
133 2005-08-31  Tim-Philipp Müller  <tim at centricular dot net>
134
135         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
136         (gst_file_src_map_region):
137           Set READONLY flag on mmap'ed buffers, otherwise
138           gst_buffer_make_writable() won't work properly (#314708).
139
140 2005-08-31  Wim Taymans  <wim@fluendo.com>
141
142         * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
143         passthrough elements can even do inplace on non writable
144         buffers (as they don't touch them).
145
146 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
147
148         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
149         (gst_test_mono_source_set_property),
150         (gst_test_mono_source_class_init), (GST_START_TEST),
151         (gst_controller_suite):
152           more tests (hehe I have the most)
153         * gst/gstbus.c:
154           describe popping messages whenusing mulltiple sources
155         * libs/gst/controller/gst-controller.c:
156         (gst_controlled_property_set_interpolation_mode),
157         (gst_controlled_property_new):
158         * libs/gst/controller/gst-controller.h:
159         * libs/gst/controller/gst-interpolation.c:
160           implement boolean properties
161
162 2005-08-31  Wim Taymans  <wim@fluendo.com>
163
164         * gst/gstminiobject.c: (gst_mini_object_ref):
165         Cannot assert that the refcount has to be positive
166         since a disposed object can be resurected.
167
168 2005-08-31  Wim Taymans  <wim@fluendo.com>
169
170         * gst/gstpad.c: (gst_pad_init):
171         Revert change, need to first fix badly behaving 
172         apps.
173
174 2005-08-30  Wim Taymans  <wim@fluendo.com>
175
176         * check/elements/fakesrc.c: (setup_fakesrc):
177         * check/elements/identity.c: (setup_identity):
178         Activate pads before using them.
179
180 2005-08-30  Wim Taymans  <wim@fluendo.com>
181
182         * gst/base/gstadapter.c: (gst_adapter_flush):
183         Flushing out 0 bytes is ok for this function.
184
185         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
186         no newsegment gives a warning and sets the start/stop to 
187         invalid.
188
189         * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
190         (gst_base_transform_set_passthrough):
191         Some debug info.
192
193         * gst/gstminiobject.c: (gst_mini_object_ref):
194         Check refcount here too.
195
196         * gst/gstpad.c: (gst_pad_init):
197         Pads are initially flushing and refusing data.
198
199         * gst/gstutils.c: (gst_element_link_pads_filtered):
200         When adding a capsfilter element make sure it has the
201         same state as the parent bin.
202
203 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
204
205         * docs/gst/tmpl/.cvsignore:
206         * docs/gst/tmpl/gstformat.sgml:
207         * docs/gst/tmpl/gstversion.sgml:
208         * gst/gstbus.h:
209         * gst/gstformat.c:
210         * gst/gstformat.h:
211         * gst/gstversion.h.in:
212           more docs and two more inlined
213
214 2005-08-30  Wim Taymans  <wim@fluendo.com>
215
216         * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
217         Don't sync to clock.
218
219 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
220
221         * docs/gst/gstreamer-sections.txt:
222           ultral33t func10ns deserve to appear in the docs actualy
223         * docs/gst/tmpl/.cvsignore:
224         * docs/gst/tmpl/gstcompat.sgml:
225         * docs/gst/tmpl/gstconfig.sgml:
226         * gst/check/gstcheck.c:
227         * gst/gstcompat.h:
228         * gst/gstconfig.h.in:
229           inlined more docs
230
231 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
232
233         * docs/gst/tmpl/.cvsignore:
234         * docs/gst/tmpl/gstquery.sgml:
235         * docs/gst/tmpl/gstutils.sgml:
236         * gst/gstquery.c:
237         * gst/gstquery.h:
238           inlined and extended docs
239
240 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
241
242         * check/gst-libs/controller.c: (GST_START_TEST),
243         (gst_controller_suite):
244           more tests
245         * docs/gst/tmpl/gstutils.sgml:
246         * docs/libs/gstreamer-libs-sections.txt:
247         * docs/libs/tmpl/gstdataprotocol.sgml:
248           include path fixes
249         * examples/controller/audio-example.c: (main):
250           controller example works now
251         * gst/gstclock.h:
252           doc fixes
253         * tools/gst-inspect.c: (print_element_properties_info):
254           show param spec flags
255
256 2005-08-29  Andy Wingo  <wingo@pobox.com>
257
258         * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
259
260 2005-08-28  Andy Wingo  <wingo@pobox.com>
261
262         * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
263         as having two arguments instead of just one. Allows superclasses
264         to access information on subclasses -- see the terrible for() loop
265         in gtype.c:g_type_create_instance for the reason why. All callers
266         changed.
267
268 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
269
270         * docs/design/part-messages.txt:
271           update info
272         * docs/gst/tmpl/.cvsignore:
273         * docs/gst/tmpl/gstcaps.sgml:
274         * docs/gst/tmpl/gstclock.sgml:
275         * gst/gstbus.c:
276         * gst/gstcaps.c:
277         * gst/gstcaps.h:
278         * gst/gstclock.c:
279         * gst/gstclock.h:
280         * gst/gstmessage.c:
281           added descriptions for bus and message
282           inline caps and clock docs
283
284 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
285
286         * gst/gstmessage.c:
287         * gst/gstmessage.h:
288           doc fixes
289
290 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
291
292         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
293           fix div-by-zero
294
295 2005-08-26  Andy Wingo  <wingo@pobox.com>
296
297         * check/pipelines/simple_launch_lines.c (run_pipeline): Check
298         element_set_state's return val.
299         (test_2_elements): Add test that's been disabled for months.
300
301         * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
302         can-activate-pull properties.
303
304         * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
305         can-activate-pull properties. Implement is_seekable so fakesrc can
306         operate in pull mode.
307
308         * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
309         properties.
310         (gst_base_sink_activate, gst_base_sink_activate_pull)
311         (gst_base_sink_activate_push): Make activation mode choosing work.
312         Cleanups.
313         (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
314         is right. Make pull mode work. Post an eos before pausing in pull
315         mode.
316         (gst_base_sink_change_state): Pay attention to the core's
317         change_state() return val.
318         
319         * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
320         has-getrange properties. Cleanups.
321         
322         * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
323         has_getrange and replace with can_activate_pull and
324         can_activate_push.
325
326         * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
327         locking comments. Remove has_loop, has_chain and replace with
328         can_activate_pull and can_activate_push.
329
330 2005-08-26  Jan Schmidt  <thaytan@mad.scientist.com>
331
332         * configure.ac:
333         * examples/Makefile.am:
334         * examples/metadata/Makefile.am:
335         * examples/metadata/read-metadata.c: (message_loop),
336         (have_pad_handler), (make_pipeline), (print_tag), (main):
337           Add metadata reading example that loops over a list of filenames,
338           dumping any tags found.
339
340         * gst/gstbus.c: (gst_bus_dispose):
341         * gst/gstelement.c: (gst_element_dispose):
342           Release a few potentially-held references in dispose.
343
344 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
345
346         * docs/gst/tmpl/gstminiobject.sgml:
347           do *not* add tmpl/*.sgml files to CVS!
348
349 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
350
351         * libs/gst/bytestream/.cvsignore:
352         * libs/gst/bytestream/Makefile.am:
353         * libs/gst/bytestream/adapter.c:
354         * libs/gst/bytestream/adapter.h:
355         * libs/gst/bytestream/bytestream.c:
356         * libs/gst/bytestream/bytestream.h:
357         * libs/gst/bytestream/filepad.c:
358         * libs/gst/bytestream/filepad.h:
359           removing obsolete files
360
361 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
362
363         * docs/gst/gstreamer-docs.sgml:
364         * docs/libs/gstreamer-libs-docs.sgml:
365           disabed additional index entries again, as this makes docs-gen just
366           slow and they aren't useful yet
367         * docs/libs/gstreamer-libs-sections.txt:
368           little -section.txt cleanup for libs
369
370 2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>
371
372         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
373         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
374           fix up some debugging
375         (gst_base_transform_get_unit_size),
376         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
377         (gst_base_transform_handle_buffer):
378         * gst/base/gstbasetransform.h:
379           handle and store timed NEWSEGMENT events so that subclasses that
380           calculate time by counting samples have a segment_start time they
381           need to add to their timestamps - see audioresample
382
383 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
384
385         * gst/gstbin.h:
386           removed ';' from the end of macro defs
387         * docs/gst/gstreamer-docs.sgml:
388         * docs/gst/gstreamer-sections.txt:
389         * docs/gst/tmpl/.cvsignore:
390         * gst/gstbus.h:
391         * gst/gstelement.c: (gst_element_class_init),
392         (gst_element_set_state), (activate_pads),
393         (gst_element_save_thyself):
394         * gst/gstevent.c: (gst_event_new_newsegment):
395         * gst/gstevent.h:
396         * gst/gstiterator.c:
397         * gst/gstiterator.h:
398         * gst/gstpad.c:
399         * gst/gstprobe.h:
400         * gst/gstutils.c: (gst_pad_query_convert):
401         * gst/gstutils.h:
402           fixed parameter name mismatches between source, header and docs
403           added some more docs, resolved the last batch of unused elements in
404           docs (now someone needs to doc them)
405
406 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
407
408         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
409         * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
410           don't walk through the plugins backwards.  Where is all this
411           reversed logic coming from ?
412
413 2005-08-25  Wim Taymans  <wim@fluendo.com>
414
415         * gst/base/gstbasetransform.c: (gst_base_transform_init),
416         (gst_base_transform_transform_size),
417         (gst_base_transform_configure_caps),
418         (gst_base_transform_get_unit_size),
419         (gst_base_transform_buffer_alloc),
420         (gst_base_transform_change_state):
421         * gst/base/gstbasetransform.h:
422         Cache caps unit_size.
423         Make sure we cannot negotiate up and downstream at the
424         same time.
425
426 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
427
428         * gst/gst.c: (init_pre), (init_post):
429           register the installed plugin path after the env var
430         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
431         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
432           don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
433           directories, so the tests can prefer uninstalled over installed
434
435 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
436
437         * gst/base/gstbasetransform.h:
438           comment
439         * gst/gstpad.c:
440           add to docs
441
442 2005-08-25  Wim Taymans  <wim@fluendo.com>
443
444         * gst/gstbin.c: (bin_bus_handler):
445         Be a bit more conservative about the posted message.
446         
447         * gst/gstbus.c: (gst_bus_post):
448         Some cleanups, warn wrong return values.
449
450 2005-08-25  Jan Schmidt  <thaytan@mad.scientist.com>
451
452         * check/gst/gstbin.c: (GST_START_TEST):
453         * gst/gstbin.c: (bin_bus_handler):
454         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
455         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
456         (gst_message_new_warning), (gst_message_new_tag),
457         (gst_message_new_state_changed), (gst_message_new_segment_start),
458         (gst_message_new_segment_done), (gst_message_new_custom):
459         * gst/gstmessage.h:
460         * tools/gst-launch.c: (event_loop):
461         * tools/gst-md5sum.c: (event_loop):
462           Revert unpopular change for GST_MESSAGE_SRC to GObject.
463
464 2005-08-25  Wim Taymans  <wim@fluendo.com>
465
466         * check/generic/states.c: (GST_START_TEST):
467         Cleanup can be done at the end.
468
469         * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
470         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
471         (gst_task_get_state), (gst_task_start), (gst_task_pause):
472         Oh boy.. Thanks for finding this, Thomas. 
473
474 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
475
476         * docs/gst/gstreamer.types:
477           added missing types
478
479 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
480
481         * docs/gst/gstreamer-docs.sgml:
482         * docs/gst/gstreamer-sections.txt:
483         * docs/gst/tmpl/.cvsignore:
484         * gst/gstbin.c:
485         * gst/gstiterator.c:
486         * gst/gstutils.c:
487         * gst/registries/gstxmlregistry.h:
488           added miissing classes and symbols (123 more to go)
489           removed removed symbols from section file
490           fixed many doc-comments
491
492 2005-08-24  Wim Taymans  <wim@fluendo.com>
493
494         * check/generic/states.c: (GST_START_TEST):
495         Make sure all tasks are stopped.
496
497         * check/gst/gstbin.c: (GST_START_TEST):
498         Unref after usage for proper valgrinding.
499
500         * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
501         Really wait for the task to stop before destroying the
502         mutex.
503
504         * gst/gstqueue.c: (gst_queue_sink_activate_push),
505         (gst_queue_src_activate_push):
506         Small cleanups. Don't stop the task when we did not start
507         it.
508
509         * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
510         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
511         (gst_task_get_state), (gst_task_start), (gst_task_pause),
512         (gst_task_join):
513         * gst/gsttask.h:
514         Protect the stream lock with the object lock.
515         Disallow setting the stream lock when running.
516         Add cleanup_all to wait for the threadpool to finish.
517         Remove code to autoallocate a mutex if none was provided.
518         Add _join() to wait for a task to stop.
519         Protect the thread pool with a global lock.
520
521 2005-08-24  Wim Taymans  <wim@fluendo.com>
522
523         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
524         (gst_base_sink_get_times), (gst_base_sink_do_sync),
525         (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
526         * gst/base/gstbasesink.h:
527         Handle newsegment events correctly.
528         Drop buffers out of the segment range.
529
530 2005-08-22  Andy Wingo  <wingo@pobox.com>
531
532         * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
533         macro, implements an interface and gstimplementsinterface for a
534         new type.
535
536 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
537
538         * check/Makefile.am:
539         * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
540           add a test that does a bunch of state changes on elements
541           needs some fixing for valgrind
542         * check/states/sinks.c: (gst_object_suite):
543           whitespace
544         * gst/gstcaps.h:
545           add prototype for gst_caps_is_equal_fixed
546         * gst/gstplugin.c:
547         * gst/gstregistrypool.c:
548           doc fixes
549
550 2005-08-24  Andy Wingo  <wingo@pobox.com>
551
552         * gst/gstquery.c (gst_query_new_convert): Spew if we try to
553         convert a negative value. Doesn't make much sense. Mostly this is
554         here to force callers to ensure -1 maps to -1.
555
556 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
557
558         * docs/pwg/advanced-types.xml:
559           Well done to Michael for catching my deliberate introduction
560           of this spelling mistake. 
561         * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
562         * gst/gstelement.h:
563           Add GST_ELEMENT_UNPARENTING to prevent races so that we can
564           unlink pads before removing the element from the bin.
565
566 2005-08-24  Andy Wingo  <wingo@pobox.com>
567
568         * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
569         the same thing as GST_DEBUG=*:4.
570         (parse_debug_level, parse_debug_category): New helper parsers.
571
572 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
573
574         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
575         (gst_base_transform_transform_size), (gst_base_transform_getcaps),
576         (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
577         (gst_base_transform_buffer_alloc),
578         (gst_base_transform_handle_buffer):
579           use gboolean return values and pointers to size so we can use the
580           full GST_BUFFER_SIZE range (guint) for buffer sizes
581           use GstPadDirection for transform_caps
582         * gst/base/gstbasetransform.h:
583           rename get_size to get_unit_size since that's what it is
584         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
585           use GstPadDirection for transform_caps
586         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
587         * gst/gstutils.h:
588           cleanup and debugging
589
590 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
591
592         * gst/gstelement.c: (gst_element_class_init),
593         (gst_element_set_state), (activate_pads),
594         (gst_element_save_thyself):
595         * tools/gst-compprep.c: (main):
596         * tools/gst-inspect.c: (print_element_properties_info):
597         * tools/gst-xmlinspect.c: (print_element_properties):
598           Fixed long standing mem-leak
599
600 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
601
602         * check/gst/gstbin.c: (GST_START_TEST):
603         * gst/gstbin.c: (bin_bus_handler):
604         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
605         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
606         (gst_message_new_warning), (gst_message_new_tag),
607         (gst_message_new_state_changed), (gst_message_new_segment_start),
608         (gst_message_new_segment_done), (gst_message_new_custom):
609         * gst/gstmessage.h:
610         * tools/gst-launch.c: (event_loop):
611         * tools/gst-md5sum.c: (event_loop):
612           Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
613           that applications can sensibly post custom messages with references
614           to their own objects.
615
616 2005-08-24  Andy Wingo  <wingo@pobox.com>
617
618         * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
619         already.
620
621 2005-08-24  Wim Taymans  <wim@fluendo.com>
622
623         * gst/base/gstbasetransform.c: (gst_base_transform_init),
624         (gst_base_transform_transform_caps),
625         (gst_base_transform_transform_size),
626         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
627         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
628         (gst_base_transform_handle_buffer):
629         * gst/base/gstbasetransform.h:
630         Many fixes and new features added by Thomas. Can now also do
631         transforms with variable sizes and a custom fixate_caps function.
632
633 2005-08-24  Wim Taymans  <wim@fluendo.com>
634
635         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
636         Some debugging.
637
638         * gst/gstclock.h:
639         Cast to ClockTime before formatting to time.
640
641         * gst/gstutils.h:
642         Cleanups.
643
644 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
645
646         * check/gst-libs/controller.c: (GST_START_TEST),
647         (gst_controller_suite):
648         * docs/gst/tmpl/gstcaps.sgml:
649         * docs/gst/tmpl/gstghostpad.sgml:
650         * docs/gst/tmpl/gstquery.sgml:
651         * docs/gst/tmpl/gstutils.sgml:
652         * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
653         (gst_object_sink_values), (gst_object_get_value_arrays),
654         (gst_object_get_value_array):
655           gracefully handle helper method calls to objects that are not beeing
656           controlled, added test case for that          
657
658 2005-08-23  Wim Taymans  <wim@fluendo.com>
659
660         * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
661         (gst_event_new_newsegment), (gst_event_parse_newsegment),
662         (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
663         (gst_event_parse_qos), (gst_event_new_seek),
664         (gst_event_parse_seek):
665         * gst/gstevent.h:
666         Some more debugging output and doc cleanups.
667
668         * gst/gstqueue.c: (gst_queue_handle_sink_event):
669         Fix possible deadlock.
670
671 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
672
673         * docs/gst/gstreamer-docs.sgml:
674         * docs/gst/gstreamer-sections.txt:
675         * docs/gst/gstreamer.types:
676         * docs/gst/tmpl/.cvsignore:
677         * gst/gstbin.h:
678         * gst/gstbus.c:
679         * gst/gstelement.c:
680         * gst/gstevent.h:
681           added about 100 symbols from gstreamer-unused.txt to the right sections
682           fixed more broken comments
683           added GstBus to docs
684
685 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
686
687         * docs/gst/gstreamer-sections.txt:
688         * docs/gst/tmpl/.cvsignore:
689         * docs/gst/tmpl/gstbin.sgml:
690         * docs/gst/tmpl/gstbuffer.sgml:
691         * gst/base/gstbasesrc.c:
692         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
693         * gst/gstbuffer.c:
694         * gst/gstbuffer.h:
695         * tools/gst-launch.1.in:
696           inlined more doc comments, added missing comments and fixed comments
697           fixed typos
698
699 2005-08-23  Thomas Vander Stichele  <thomas at apestaart dot org>
700
701         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
702           some debugging
703         * gst/gstcaps.h:
704           whitespace fixes
705         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
706           more debugging
707         * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
708         * gst/gststructure.h:
709           add a fixate function for booleans; add a FIXME that these func
710           names should probably be gst_structure_fixate_*
711
712 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
713
714         * docs/gst/gstreamer-docs.sgml:
715         * docs/gst/gstreamer-sections.txt:
716         * gst/Makefile.am:
717         * gst/gstbin.c: (gst_bin_get_type),
718         (gst_bin_child_proxy_get_child_by_index),
719         (gst_bin_child_proxy_get_children_count),
720         (gst_bin_child_proxy_init):
721         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
722         (gst_child_proxy_get_child_by_index),
723         (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
724         (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
725         (gst_child_proxy_get), (gst_child_proxy_set_property),
726         (gst_child_proxy_set_valist), (gst_child_proxy_set),
727         (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
728         (gst_child_proxy_base_init), (gst_child_proxy_get_type):
729         * gst/gstchildproxy.h:
730         * gst/parse/grammar.y:
731         * tools/gst-inspect.c: (print_interfaces),
732         (print_element_properties_info), (print_element_info):
733          ported gstchildproxy over from 0.8
734          ported gst-inspect fixes and enhancements over from 0.8
735
736 2005-08-22  Wim Taymans  <wim@fluendo.com>
737
738         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
739         (gst_base_transform_handle_buffer):
740         Also call the transform function if we have ANY caps.
741
742         * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
743         Fix debug info.
744
745 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
746
747         * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
748           Don't pretend to handle seek events if the source is not seekable
749
750 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
751
752         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
753           Remove extra parameter to debug output
754
755         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
756         (gst_base_src_do_seek), (gst_base_src_activate_push):
757           Fix seek event handling.
758
759         * gst/gstpipeline.c: (gst_pipeline_change_state):
760         * gst/gstqueue.c: (gst_queue_handle_sink_event),
761         (gst_queue_src_activate_push):
762           Don't start the src pad task on FLUSH_STOP if the pad
763           isn't linked.
764           Debug changes.
765
766 2005-08-22  Wim Taymans  <wim@fluendo.com>
767
768         * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
769         Added check for gst_static_caps_get() refcounting.
770
771 2005-08-22  Wim Taymans  <wim@fluendo.com>
772
773         * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
774         Make _static_caps_get() refcounting sane.
775         
776         * gst/gstelement.c: (gst_element_set_state):
777         Add g_return_val_if_fail() to protect against segfaults.
778
779 2005-08-22  Stefan Kost  <ensonic@users.sf.net>
780
781         * docs/gst/tmpl/gstevent.sgml:
782         * gst/gstevent.c:
783         * gst/gstevent.h:
784           inlined remaining docs, added missing doc comments
785
786 2005-08-22  Thomas Vander Stichele  <thomas at apestaart dot org>
787
788         * check/gst/gstbin.c: (GST_START_TEST):
789           since we don't know when preroll is done, use refcount range
790           check for the sink
791         * gst/check/gstcheck.h:
792           add macro for checking refcount range
793
794 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
795
796         * check/Makefile.am:
797           clean up environment for when registry gets built versus
798           when actual tests are run; valgrind seems to not report
799           leaks if GST_PLUGIN_PATH is set to some specific values
800         * check/gst/gstbin.c: (GST_START_TEST):
801           add more refcounting checks; maybe this exposes a
802           preroll lock bug ?
803         * common/check.mak:
804         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
805         * gst/check/gstcheck.h:
806         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
807         (gst_bin_change_state):
808         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
809           add/fix debugging/whitespace
810
811 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
812
813         * check/gst/gstevent.c: (event_probe), (test_event),
814         (GST_START_TEST):
815          Er, don't call gst_bin_watch_for_state_change you idiot.
816
817 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
818
819         * check/Makefile.am:
820           Use CHECK_CFLAGS and CHECK_LIBS
821         * check/gst/gstevent.c: (event_probe), (test_event),
822         (GST_START_TEST):
823           Don't leak events.
824         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
825         (gst_base_src_start), (gst_base_src_stop),
826         (gst_base_src_activate_push), (gst_base_src_activate_pull),
827         (gst_base_src_change_state):
828           Sprinkle gst_base_src_stop liberally around error paths to fix
829           problems reusing a source after failed state changes.
830         * gst/base/gsttypefindhelper.c: (helper_find_peek),
831         (helper_find_suggest), (gst_type_find_helper):
832           Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
833         * gst/gstevent.h:
834         * docs/gst/tmpl/gstevent.sgml:
835           Migrate part of the docs from the SGML file. Wait for ensonic to
836           tell me how I did it wrong ;)
837         * tools/gst-typefind.c: (main):
838           Extra robustness to state changes between files.
839
840 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
841
842         * check/Makefile.am:
843           don't valgrind the controller test - it's leaking - Stefan, HELP
844         * gst/check/gstcheck.c: (gst_check_message_error),
845         (gst_check_chain_func), (gst_check_setup_element),
846         (gst_check_teardown_element), (gst_check_setup_src_pad),
847         (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
848         (gst_check_teardown_sink_pad):
849         * gst/check/gstcheck.h:
850           add a bunch of methods to set up elements, and src and sink pads
851         * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
852         * check/elements/identity.c: (setup_identity), (cleanup_identity),
853         (GST_START_TEST):
854           use them
855         * gst/gstmessage.c:
856         * gst/gsttag.h:
857           whitespace/doc fixes
858
859 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
860
861         * gst/gstelement.h:
862           make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
863           be handled by the application and not always printed as well
864
865 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
866
867         * check/Makefile.am:
868           set GST_TOOLS_DIR
869         * gst/check/gstcheck.c: (gst_check_message_error):
870         * gst/check/gstcheck.h:
871           add a fail_unless_equals_int
872           add fail_unless for error messages
873
874 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
875
876         * check/Makefile.am:
877         * check/gst.supp:
878         * common/Makefile.am:
879         * common/check.mak:
880         * common/gst.supp:
881           factor out some of the common stuff so we can use it
882
883 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
884
885         * check/Makefile.am:
886         * check/gst/gstiterator.c: (GST_START_TEST):
887         * check/gst/gstsystemclock.c: (GST_START_TEST),
888         (gst_systemclock_suite):
889         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
890         * gst/gstclock.c:
891           valgrind more tests
892
893 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
894
895         * check/elements/.cvsignore:
896         * check/elements/gstfakesrc.c:
897           rename to name of element
898         * check/elements/identity.c: (chain_func), (event_func),
899         (setup_identity), (cleanup_identity), (GST_START_TEST),
900         (identity_suite), (main):
901           add a test for identity
902         * check/Makefile.am:
903         * pkgconfig/Makefile.am:
904         * pkgconfig/gstreamer-check.pc.in:
905         * pkgconfig/gstreamer-check-uninstalled.pc.in:
906         * gst/check:
907         * gst/Makefile.am:
908         * configure.ac:
909           move the check stuff to a library that gets installed
910         * check/gst-libs/controller.c: (GST_START_TEST):
911         * check/gst-libs/gdp.c:
912         * check/gst/gst.c: (GST_START_TEST):
913         * check/gst/gstbin.c:
914         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
915         * check/gst/gstbus.c:
916         * check/gst/gstcaps.c: (GST_START_TEST):
917         * check/gst/gstelement.c:
918         * check/gst/gstghostpad.c:
919         * check/gst/gstiterator.c:
920         * check/gst/gstmessage.c:
921         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
922         * check/gst/gstobject.c:
923         * check/gst/gstpad.c: (GST_START_TEST):
924         * check/gst/gststructure.c: (GST_START_TEST):
925         * check/gst/gstsystemclock.c: (GST_START_TEST),
926         (gst_systemclock_suite):
927         * check/gst/gsttag.c: (gst_tag_suite):
928         * check/gst/gstvalue.c:
929         * check/pipelines/cleanup.c:
930         * check/pipelines/simple_launch_lines.c:
931         * check/states/sinks.c:
932           change include statement
933
934         * docs/gst/gstreamer-sections.txt:
935         * docs/gst/tmpl/gstpad.sgml:
936           document more pad stuff
937         * gst/gstminiobject.c: (gst_mini_object_ref),
938         (gst_mini_object_unref):
939           debug refcounting
940
941 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
942
943         * docs/gst/tmpl/gst.sgml:
944         * gst/gst.c:
945           eliminate another tmpl file, fix spelling in the long-description
946
947 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
948
949         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
950         (test_event), (timediff), (gstevents_suite):
951           Should fix build on 64-bit arch's
952
953 2005-08-18  Andy Wingo  <wingo@pobox.com>
954
955         Make sure that when a pipeline goes to PLAYING, that data has
956         actually hit the sink.
957
958         * check/states/sinks.c (test_sink): A sink that doesn't get any
959         data shouldn't return SUCCESS for going to either PLAYING or
960         PAUSED. Test also the return values on the way back down.
961
962         * gst/gstelement.c (gst_element_set_state): When changing the
963         state of an element currently changing state asynchronously, go to
964         lost-state after commiting the pending state. Makes future calls
965         to get_state continue to return ASYNC.
966
967         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
968         ASYNC when going to PLAYING if we still don't have preroll, as can
969         happen with live sources.
970
971 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
972
973         * docs/pwg/advanced-types.xml:
974           Hack long paragraph into 2 chunks as a workaround for buggy
975           jadetex version in sid and breezy that loops infinitely and
976           eats all RAM.
977
978 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
979
980         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
981         (test_event), (timediff), (gstevents_suite):
982           Provide more error margin in clock measurements to allow for 
983           g_get_current_time inaccuracies.
984
985 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
986
987         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
988         (test_event), (timediff), (gstevents_suite):
989            Fix error message output so I might be able to tell why the
990            test works here but fails on the build farm.
991
992 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
993
994         * check/Makefile.am:
995         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
996         (test_event), (timediff), (gstevents_suite), (main):
997           I wrote a test!
998
999         * docs/design/part-seeking.txt:
1000           Spelling correction
1001
1002         * docs/gst/tmpl/gstevent.sgml:
1003         * docs/gst/tmpl/gstfakesrc.sgml:
1004           Docs updates.
1005
1006         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1007           Treat a buffer-without-newsegment the same as a receiving 
1008           a newsegment not in time format, and disable syncing to the clock
1009           with a warning.
1010
1011         * gst/gstbus.c: (gst_bus_set_sync_handler):
1012           Assert if anyone tries to replace the existing sync_handler for bus, 
1013           as only the owner should be setting it.
1014
1015         * gst/gstevent.h:
1016           Have a fixed set of custom event enums with events identified by
1017           their structure name (as in 0.8), rather than a free-for-all
1018           allowing collisions between enum values from different plugins.
1019
1020         * gst/gstpad.c: (gst_pad_class_init):
1021           Docs change.
1022           
1023         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1024           Handle out-of-band downstream events from the sending thread.
1025
1026 2005-08-17  Andy Wingo  <wingo@pobox.com>
1027
1028         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
1029         play-timeout==0 to mean no timeout at all. In that case, don't
1030         bother with a get_state or a warning, just return directly, even
1031         if it's ASYNC.
1032
1033         * gst/base/gstbasetransform.c: Debug changes.
1034
1035         * gst/gstutils.h:
1036         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
1037         ensure bins post state change messages. A bit of a hack but I can't
1038         think of a way to avoid it.
1039
1040         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
1041
1042 2005-08-16  Andy Wingo  <wingo@pobox.com>
1043
1044         * gst/base/gstadapter.h:
1045         * gst/base/gstadapter.c (gst_adapter_take): New function, like
1046         peek() but you own the data. Not terribly efficient atm.
1047
1048 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1049
1050         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
1051         (gst_element_found_tags):
1052         * gst/gstutils.h:
1053           Add two utility functions for tag handling.
1054
1055 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1056
1057         * docs/manual/advanced-dataaccess.xml:
1058         * docs/manual/basics-helloworld.xml:
1059           Fix docs to use _bin_add() before _link(), which fixes the examples
1060           with recent core versions (reported by Madhan Raj M
1061           <raj_madan@rediffmail.com>, #313199).
1062
1063 2005-08-16  Wim Taymans  <wim@fluendo.com>
1064
1065         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1066         Added subtract checks.
1067
1068         * docs/design/part-events.txt:
1069         Some more docs about newsegment
1070
1071         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1072         Fix FIXME
1073
1074         * gst/gstcaps.c: (gst_caps_to_string):
1075         Add comments, cleanups.
1076         
1077         * gst/gstelement.c: (gst_element_save_thyself):
1078         cleanups
1079         
1080         * gst/gstvalue.c: (gst_value_collect_int_range),
1081         (gst_string_unwrap), (gst_value_union_int_int_range),
1082         (gst_value_union_int_range_int_range),
1083         (gst_value_intersect_int_int_range),
1084         (gst_value_intersect_int_range_int_range),
1085         (gst_value_intersect_double_double_range),
1086         (gst_value_intersect_double_range_double_range),
1087         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
1088         (gst_value_subtract_int_range_int),
1089         (gst_value_subtract_double_range_double),
1090         (gst_value_subtract_double_range_double_range),
1091         (gst_value_subtract_from_list), (gst_value_subtract_list),
1092         (gst_value_can_compare), (gst_value_compare_fraction):
1093         Cleanups, add comments, remove unneeded asserts.
1094
1095 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1096
1097         * tools/gst-launch.c: (event_loop):
1098           don't convert NULL structures to strings
1099
1100 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
1101
1102         * docs/gst/gstreamer-sections.txt:
1103           made some defines private
1104         * docs/gst/tmpl/gstconfig.sgml:
1105         * docs/gst/tmpl/gstqueue.sgml:
1106         * docs/gst/tmpl/gsttaglist.sgml:
1107         * docs/gst/tmpl/gsttypes.sgml:
1108         * docs/gst/tmpl/gstutils.sgml:
1109         * docs/pwg/appendix-porting.xml:
1110         * gst/base/gstbasesink.h:
1111         * gst/base/gstbasesrc.c:
1112         * gst/base/gstbasesrc.h:
1113         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
1114         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
1115         * gst/gstelement.c: (gst_element_class_init):
1116         * gst/gstpad.c: (gst_pad_class_init):
1117         * gst/gstqueue.c: (gst_queue_class_init):
1118         * gst/gstxml.c: (gst_xml_class_init):
1119           documented all undocumented signal inline
1120         * libs/gst/controller/gst-controller.h:
1121           added padding
1122
1123 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1124
1125         * docs/pwg/appendix-porting.xml:
1126           Document _set_link_function -> _set_setcaps_function.
1127
1128 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1129
1130         * check/Makefile.am:
1131           add a .check target for running the check
1132         * check/gst-libs/controller.c: (GST_START_TEST):
1133           cosmetic fixups
1134         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1135           complete checks for gstbuffer; would be nice if I could get the
1136           gcov stuff to work so I can see if I actually completed gstbuffer.c
1137         * check/gstcheck.h:
1138           add ASSERT_BUFFER_REFCOUNT
1139
1140 2005-08-13  Tim-Philipp M??ller  <tim at centricular dot net>
1141
1142         * docs/gst/gstreamer-sections.txt:
1143         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
1144         * gst/gsttag.h:
1145           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
1146           spew out a warning if a tag that is already registered
1147           is re-registered, unless it is re-registered with a 
1148           different type (#308438).
1149
1150 2005-08-12  Tim-Philipp M??ller  <tim at centricular dot net>
1151
1152         * docs/pwg/appendix-porting.xml:
1153         * docs/pwg/building-state.xml:
1154           Add some paragraphs about state changes in 0.9 to the PWG
1155           and the porting guide, in particular about the new meaning
1156           of GST_STATE_PAUSED and how to write state change functions
1157           with concurrent access by multiple threads in mind.
1158
1159 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
1160
1161         * docs/gst/gstreamer-docs.sgml:
1162         * docs/libs/gstreamer-libs-docs.sgml:
1163           added deprecation and since indexes
1164         * libs/gst/controller/gst-controller.c:
1165         * libs/gst/controller/gst-helper.c:
1166           added since tags
1167
1168
1169 2005-08-11  Wim Taymans  <wim@fluendo.com>
1170
1171         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
1172         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
1173         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
1174         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
1175         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
1176         (gst_ghost_pad_set_target):
1177         Actually implement (re)setting the target on a ghostpad
1178         as described in the docs.
1179
1180 2005-08-10  Tim-Philipp M??ller  <tim at centricular dot net>
1181
1182         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
1183           Check whether GST_DEBUG_NO_COLOR environment variable is
1184           set and disable coloured debug output if that is the case.
1185
1186 2005-08-10  Tim-Philipp M??ller  <tim at centricular dot net>
1187
1188         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1189         (gst_type_find_helper):
1190           The memory returned by gst_type_find_peek() needs to
1191           stay valid until the end of a typefind function, and
1192           typefind functions may keep results from different 
1193           offsets around, so we can't just unref the buffer from
1194           the previous _peek(), but have to save all buffers 
1195           returned by _peek() until typefinding is done and only
1196           free them then.
1197
1198 2005-08-09  Tim-Philipp M??ller  <tim at centricular dot net>
1199
1200         * docs/gst/gstreamer-sections.txt:
1201         * gst/gstutils.h:
1202           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
1203
1204 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1205
1206         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
1207           Fix a pretty good memleak.
1208
1209 2005-08-08  Tim-Philipp M??ller  <tim at centricular dot net>
1210
1211         * gst/gstiterator.h:
1212           Fix wrong include and 'make distcheck'.
1213
1214 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1215
1216         * gst/gstbin.c: (bin_bus_handler):
1217           Use gst_element_post_message() instead.
1218
1219 2005-08-08  Tim-Philipp M??ller  <tim at centricular dot net>
1220
1221         * gst/base/gstadapter.h:
1222         * gst/base/gstbasesink.h:
1223         * gst/base/gstbasesrc.h:
1224         * gst/base/gstbasetransform.h:
1225         * gst/base/gstcollectpads.h:
1226         * gst/base/gstpushsrc.h:
1227         * gst/gstiterator.h:
1228           Add padding to our base elements' class and instance structs and
1229           to GstIterator (you will need to rebuild all plugins and apps!)
1230
1231 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1232
1233         * gst/gstbin.c: (bin_bus_handler):
1234           Make default message forwarding from child->bus to bin->bus
1235           threadsafe and make it not emit warnings if the parent has no bus.
1236
1237 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1238
1239         * gst/gstelement.c: (activate_pads):
1240           On paused->ready, set pad->caps to NULL, as is the documented
1241           behaviour in this state change. Fixes playback of series of
1242           media files when visualization is enabled in Totem.
1243
1244 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1245
1246         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1247           Allow NULL as filter-caps (which means "any").
1248
1249 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1250
1251         * docs/libs/gstreamer-libs-sections.txt:
1252         * libs/gst/controller/gst-controller.c:
1253         * libs/gst/controller/gst-controller.h:
1254         * libs/gst/controller/gst-helper.c:
1255           adding more entries to the docs and fix small doc-bugs
1256
1257 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1258
1259         * docs/gst/gstreamer-docs.sgml:
1260         * docs/gst/gstreamer-sections.txt:
1261         * docs/gst/gstreamer.types:
1262         * docs/gst/tmpl/gstbasesink.sgml:
1263         * docs/gst/tmpl/gstbasesrc.sgml:
1264         * docs/gst/tmpl/gstbasetransform.sgml:
1265         * docs/gst/tmpl/gstfakesrc.sgml:
1266         * gst/base/gstcollectpads.c:
1267         * gst/base/gstcollectpads.h:
1268         * libs/gst/controller/gst-controller.c:
1269         * libs/gst/controller/gst-controller.h:
1270         * libs/gst/controller/gst-helper.c:
1271         * libs/gst/controller/gst-interpolation.c:
1272         * libs/gst/controller/lib.c:
1273           added long/short desc for controller docs
1274           added collectpads base class docs
1275           added correct includes to base-class docs
1276
1277 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1278
1279         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
1280         (gst_test_mono_source_set_property),
1281         (gst_test_mono_source_class_init), (GST_START_TEST),
1282         (gst_controller_suite):
1283         * docs/gst/gstreamer-docs.sgml:
1284         * docs/gst/gstreamer-sections.txt:
1285         * docs/gst/gstreamer.types:
1286         * docs/libs/gstreamer-libs-docs.sgml:
1287         * docs/libs/gstreamer-libs-sections.txt:
1288         * gst/base/gstadapter.c:
1289         * libs/gst/controller/gst-controller.c:
1290         (gst_controlled_property_new), (gst_controlled_property_free),
1291         (gst_controller_new_valist),
1292         (gst_controller_remove_properties_valist),
1293         (gst_controller_sink_values), (_gst_controller_finalize):
1294         * libs/gst/controller/gst-controller.h:
1295         * libs/gst/controller/gst-helper.c:
1296         (gst_object_control_properties), (gst_object_uncontrol_properties),
1297         (gst_object_get_controller), (gst_object_set_controller),
1298         (gst_object_sink_values), (gst_object_get_value_arrays),
1299         (gst_object_get_value_array):
1300           more tests (and fixes) for the controller
1301           more docs for the controller
1302           integrated companies docs for the adapter 
1303
1304 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1305
1306         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
1307         (GST_START_TEST), (fakesrc_suite):
1308           add tests for sizetype
1309
1310 2005-08-04  Andy Wingo  <wingo@pobox.com>
1311
1312         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
1313         fixes buffer_alloc proxying among other things.
1314
1315         * gst/base/gstbasetransform.c:
1316         * gst/base/gstbasetransform.h:
1317         Revert patch to gstbasetransform from 7-28 removing
1318         delay_configure.
1319
1320         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
1321         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
1322         Semantics changed, should return not the size of the output buffer
1323         but the byte size of a buffer with a given caps.
1324
1325         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
1326         debug object.
1327         (gst_base_transform_configure_caps): Don't set out_size here: (in,
1328         out) are not the pad caps until setcaps finishes.
1329         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
1330         not-in-place case as well. Deal with changing from in-place to
1331         not-in-place within calling pad_alloc_buffer. Still a bit
1332         concerned about the overhead here...
1333
1334 2005-08-03  Andy Wingo  <wingo@pobox.com>
1335
1336         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
1337         fixating is an error.
1338
1339 2005-08-04  Edward Hervey  <edward@fluendo.com>
1340
1341         * gst/base/gstadapter.h: 
1342         Added gst_adapter_get_type() to the header
1343
1344 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1345
1346         * check/Makefile.am:
1347         * check/gst-libs/controller.c:
1348         * libs/gst/controller/gst-controller.c:
1349         (gst_controller_new_valist):
1350           added check test suite for the controller
1351         * gst/base/gstpushsrc.c:
1352           fixed a doc typo
1353
1354 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1355
1356         * docs/gst/Makefile.am:
1357         * docs/gst/gstreamer-docs.sgml:
1358         * docs/gst/gstreamer-sections.txt:
1359         * docs/gst/gstreamer.types:
1360         * docs/gst/tmpl/gstfakesrc.sgml:
1361         * gst/base/README:
1362         * gst/base/gstbasesink.c:
1363         * gst/base/gstbasesink.h:
1364         * gst/base/gstbasesrc.c:
1365         * gst/base/gstbasesrc.h:
1366         * gst/base/gstbasetransform.c:
1367         * gst/base/gstpushsrc.c:
1368         * gst/base/gstpushsrc.h:
1369           add short/long description docs to base classes
1370           add pushsrc to the docs
1371           remove consolidated doc fragments
1372
1373 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1374
1375         * configure.ac:
1376         * docs/libs/Makefile.am:
1377         * docs/libs/gstreamer-libs-docs.sgml:
1378         * docs/libs/gstreamer-libs-sections.txt:
1379         * docs/libs/gstreamer-libs.types:
1380         * examples/Makefile.am:
1381         * examples/controller/.cvsignore:
1382         * examples/controller/Makefile.am:
1383         * examples/controller/audio-example.c: (main):
1384         * libs/gst/Makefile.am:
1385         * libs/gst/controller/.cvsignore:
1386         * libs/gst/controller/Makefile.am:
1387         * libs/gst/controller/gst-controller.c:
1388         (on_object_controlled_property_changed), (gst_timed_value_compare),
1389         (gst_timed_value_find),
1390         (gst_controlled_property_set_interpolation_mode),
1391         (gst_controlled_property_new), (gst_controlled_property_free),
1392         (gst_controller_find_controlled_property),
1393         (gst_controller_new_valist), (gst_controller_new),
1394         (gst_controller_remove_properties_valist),
1395         (gst_controller_remove_properties), (gst_controller_set),
1396         (gst_controller_set_from_list), (gst_controller_unset),
1397         (gst_controller_get), (gst_controller_get_all),
1398         (gst_controller_sink_values), (gst_controller_get_value_arrays),
1399         (gst_controller_get_value_array),
1400         (gst_controller_set_interpolation_mode),
1401         (_gst_controller_finalize), (_gst_controller_init),
1402         (_gst_controller_class_init), (gst_controller_get_type):
1403         * libs/gst/controller/gst-controller.h:
1404         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
1405         (g_object_uncontrol_properties), (g_object_get_controller),
1406         (g_object_set_controller), (g_object_sink_values),
1407         (g_object_get_value_arrays), (g_object_get_value_array):
1408         * libs/gst/controller/gst-interpolation.c:
1409         (gst_controlled_property_find_timed_value_node),
1410         (interpolate_none_get), (interpolate_trigger_get),
1411         (interpolate_trigger_get_value_array):
1412         * libs/gst/controller/lib.c: (gst_controller_init):
1413         * pkgconfig/Makefile.am:
1414         * pkgconfig/gstreamer-control-uninstalled.pc.in:
1415         * pkgconfig/gstreamer-control.pc.in:
1416         * testsuite/Makefile.am:
1417         * testsuite/controller/.cvsignore:
1418         * testsuite/controller/Makefile.am:
1419         * testsuite/controller/interpolator.c: (main):
1420           added controller code
1421           removed dparam pc files
1422
1423 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
1424         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
1425         (gst_collectpads_stop):
1426           Broadcast the condition when shutting down, to make sure we wake all
1427           threads up. Shut down pads on finalize, for safety.
1428
1429 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
1430         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1431         (gst_base_transform_handle_buffer),
1432         (gst_base_transform_change_state):
1433           Handle PAUSED->READY->PAUSED transition after negotiation
1434           occurred already.
1435         * gst/gstmessage.c: (gst_message_init):
1436           Extra piece of debug for new messages.
1437
1438 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
1439
1440         * configure.ac:
1441         * docs/gst/tmpl/gstbasesrc.sgml:
1442         * docs/gst/tmpl/gstelement.sgml:
1443         * docs/gst/tmpl/gstevent.sgml:
1444         * docs/gst/tmpl/gstfakesrc.sgml:
1445         * docs/gst/tmpl/gstformat.sgml:
1446         * docs/gst/tmpl/gstghostpad.sgml:
1447         * docs/gst/tmpl/gstpad.sgml:
1448         * docs/gst/tmpl/gstquery.sgml:
1449         * docs/gst/tmpl/gststructure.sgml:
1450         * docs/gst/tmpl/gsttaglist.sgml:
1451         * docs/gst/tmpl/gstvalue.sgml:
1452         * docs/libs/gstreamer-libs-docs.sgml:
1453         * docs/libs/gstreamer-libs-sections.txt:
1454         * docs/libs/gstreamer-libs.types:
1455         * libs/gst/Makefile.am:
1456         * libs/gst/control/.cvsignore:
1457         * libs/gst/control/Makefile.am:
1458         * libs/gst/control/control.c:
1459         * libs/gst/control/control.h:
1460         * libs/gst/control/dparam.c:
1461         * libs/gst/control/dparam.h:
1462         * libs/gst/control/dparam_smooth.c:
1463         * libs/gst/control/dparam_smooth.h:
1464         * libs/gst/control/dparamcommon.h:
1465         * libs/gst/control/dparammanager.c:
1466         * libs/gst/control/dparammanager.h:
1467         * libs/gst/control/dplinearinterp.c:
1468         * libs/gst/control/dplinearinterp.h:
1469         * libs/gst/control/unitconvert.c:
1470         * libs/gst/control/unitconvert.h:
1471         * testsuite/Makefile.am:
1472         * testsuite/dynparams/.cvsignore:
1473         * testsuite/dynparams/Makefile.am:
1474         * testsuite/dynparams/dparamstest.c:
1475         * tools/Makefile.am:
1476         * tools/gst-inspect.c: (print_element_info), (main):
1477         * tools/gst-xmlinspect.c: (print_element_info), (main):
1478           deactivate and remove dparams (libgstcontrol)
1479
1480 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1481
1482         * gst/elements/gsttypefindelement.c:
1483         (gst_type_find_element_have_type), (gst_type_find_element_init),
1484         (stop_typefinding), (gst_type_find_element_handle_event),
1485         (gst_type_find_element_chain), (gst_type_find_element_getrange):
1486         * gst/elements/gsttypefindelement.h:
1487           Set caps on all outgoing buffers, not just the first one.
1488
1489 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1490
1491         * gst/elements/gsttypefindelement.c:
1492         (gst_type_find_element_have_type),
1493         (gst_type_find_element_check_set_buffer_caps),
1494         (gst_type_find_element_init), (stop_typefinding),
1495         (gst_type_find_element_handle_event),
1496         (gst_type_find_element_chain), (gst_type_find_element_getrange):
1497         * gst/elements/gsttypefindelement.h:
1498           Set caps on first outgoing buffer when we've found the type.
1499
1500 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1501
1502         * docs/gst/gstreamer-docs.sgml:
1503         * docs/gst/gstreamer-sections.txt:
1504         * docs/gst/tmpl/gstscheduler.sgml:
1505         * docs/gst/tmpl/gstschedulerfactory.sgml:
1506           Remove some old cruft from docs.
1507
1508 2005-07-31  Tim-Philipp M??ller  <tim at centricular dot net>
1509
1510         * gst/gstpad.h:
1511           Fix inline docs for GstPadLinkReturn.
1512           
1513         * gst/gststructure.c: (gst_structure_has_name):
1514         * gst/gststructure.h:
1515         * docs/gst/gstreamer-sections.txt:
1516           New API: gst_structure_has_name().
1517
1518 2005-07-30  Tim-Philipp M??ller  <tim at centricular dot net>
1519
1520         * configure.ac:
1521           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
1522           and _LARGEFILE_SOURCE in config.h as required. Do not 
1523           export those flags in our .pc files any longer (#142209).
1524
1525           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
1526
1527         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
1528         (gst_file_sink_do_seek), (gst_file_sink_event),
1529         (gst_file_sink_get_current_offset), (gst_file_sink_render):
1530           Redo seek/tell calls with large file support in mind; add some
1531           debugging messages; add log message that tells us when large
1532           file support is unavailable or not enabled for some reason.
1533
1534         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
1535           Add log message that tells us when large file support 
1536           is unavailable or not enabled for some reason.
1537
1538 2005-07-29  Wim Taymans  <wim@fluendo.com>
1539
1540         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
1541         Added test for removing an element with ghostpad from a bin.
1542         Fixed test as current implementation does the right thing.
1543
1544         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
1545         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
1546         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
1547         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
1548         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
1549         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
1550         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
1551         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1552         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
1553         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
1554         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
1555         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
1556         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
1557         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
1558         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
1559         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
1560         * gst/gstghostpad.h:
1561         Clean up ghostpads, remove properties for internal stuff.
1562         Make threadsafe.
1563         Fix refcounting.
1564         Prepare for switching targets, not all use cases work yet.
1565
1566 2005-07-29  Wim Taymans  <wim@fluendo.com>
1567
1568         * docs/design/part-gstghostpad.txt:
1569         Small update.
1570
1571         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
1572         (gst_bin_remove_func):
1573         Unlinking pads while holding the bin LOCK is not a good
1574         idea.
1575
1576         * gst/gstpad.c: (gst_pad_class_init),
1577         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
1578         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
1579         No prob setting template after creating the pad.
1580
1581 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
1582
1583         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
1584         (gst_bus_peek), (gst_bus_source_dispatch),
1585         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
1586         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
1587           gst_bus_poll may be called from other threads. Handle
1588           this nicely by not making poll_data disappear off the
1589           stack once gst_bus_poll returns.
1590           gst_bus_peek now increments the refcount on the returned
1591           message.
1592
1593 2005-07-29  Wim Taymans  <wim@fluendo.com>
1594
1595         * docs/design/part-gstghostpad.txt:
1596         Overview of current GhostPad datastructures and use
1597         cases for changing the target.
1598
1599 2005-07-28  Wim Taymans  <wim@fluendo.com>
1600
1601         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1602         Added checks for hierarchy consistency whan adding linked
1603         elements to bins.
1604
1605         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1606         Added check to test element scheduling without bin/pipeline.
1607
1608         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1609         First add elements to bin, then link.
1610         
1611         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
1612         (gst_bin_remove_func):
1613         Unlink pads from elements added/removed from bin to maintain
1614         hierarchy consistency.
1615
1616 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1617
1618         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
1619         (gst_base_transform_handle_buffer):
1620         * gst/base/gstbasetransform.h:
1621           Remove broken delay_configure (fixes renegotiation of software
1622           scaling pipelines); remove some leftover printf()s.
1623
1624 2005-07-28  Wim Taymans  <wim@fluendo.com>
1625
1626         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
1627         Added some more tests for wrong hierarchy
1628
1629         * docs/design/part-overview.txt:
1630         Some updates.
1631
1632         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
1633         Cleanups.
1634
1635         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
1636         (gst_element_dispose):
1637         Some more cleanups.
1638
1639         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1640         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
1641         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1642         (gst_pad_set_caps), (gst_pad_send_event):
1643         Check for correct hierarchy when linking pads. Moving to
1644         strict requirement for ghostpads when linking elements in
1645         different bins.
1646
1647         * gst/gstpad.h:
1648         Clean ups. Added WRONG_HIERARCHY return value.
1649
1650 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1651
1652         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1653           Better debug if no transform is possible.
1654
1655 2005-07-27  Wim Taymans  <wim@fluendo.com>
1656
1657         * docs/random/wtay/network-transp:
1658         Some old doc I had.
1659
1660 2005-07-27  Wim Taymans  <wim@fluendo.com>
1661
1662         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1663         (gst_dp_event_from_packet):
1664         Fix serialization of seek events.
1665
1666 2005-07-27  Wim Taymans  <wim@fluendo.com>
1667
1668         * check/gst-libs/gdp.c: (GST_START_TEST):
1669         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
1670         Fix compilation and fix event serialization.
1671
1672 2005-07-27  Wim Taymans  <wim@fluendo.com>
1673
1674         * CHANGES-0.9:
1675         * docs/design/part-TODO.txt:
1676         * docs/design/part-events.txt:
1677         Some docs updates
1678
1679         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1680         (gst_base_sink_event), (gst_base_sink_do_sync),
1681         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
1682         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1683         (gst_base_src_do_seek), (gst_base_src_event_handler),
1684         (gst_base_src_loop):
1685         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1686         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1687         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1688         (gst_base_transform_event), (gst_base_transform_handle_buffer),
1689         (gst_base_transform_set_passthrough),
1690         (gst_base_transform_is_passthrough):
1691         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
1692         * gst/elements/gstfilesink.c: (gst_file_sink_event):
1693         Event updates.
1694
1695         * gst/gstbuffer.h:
1696         Use faster casts.
1697
1698         * gst/gstelement.c: (gst_element_seek):
1699         * gst/gstelement.h:
1700         Update gst_element_seek.
1701
1702         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
1703         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
1704         (gst_event_new_flush_start), (gst_event_new_flush_stop),
1705         (gst_event_new_eos), (gst_event_new_newsegment),
1706         (gst_event_parse_newsegment), (gst_event_new_tag),
1707         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
1708         (gst_event_parse_qos), (gst_event_new_seek),
1709         (gst_event_parse_seek), (gst_event_new_navigation):
1710         * gst/gstevent.h:
1711         Make GstEvent use GstStructure. Add parsing code, make sure the
1712         API is sufficiently generic.
1713         Mark possible directions of events and serialization.
1714
1715         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
1716         (_gst_message_copy), (gst_message_new_segment_start),
1717         (gst_message_new_segment_done), (gst_message_new_custom),
1718         (gst_message_parse_segment_start),
1719         (gst_message_parse_segment_done):
1720         Small cleanups.
1721
1722         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1723         (gst_pad_set_caps), (gst_pad_send_event):
1724         Update for new events. 
1725         Catch events sent in wrong directions.
1726
1727         * gst/gstqueue.c: (gst_queue_link_src),
1728         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1729         (gst_queue_handle_src_query):
1730         Event updates.
1731
1732         * gst/gsttag.c:
1733         * gst/gsttag.h:
1734         Remove event code from this file.
1735
1736         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1737         (gst_dp_event_from_packet):
1738         Event updates.
1739
1740 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1741
1742         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
1743         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1744         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
1745           Make debugging actually useful.
1746
1747 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1748
1749         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
1750         (gst_pad_fixate_caps):
1751           Implement default fixation once again, so that gst_pad_fixate()
1752           actually does anything at all. This probably needs to be some
1753           sort of a last resort, and use profile-based fixation first, but
1754           since that doesn't exist yet, this is the best we have. Fixes
1755           visualization in Totem.
1756
1757 2005-07-22  Wim Taymans  <wim@fluendo.com>
1758
1759         * docs/design/part-events.txt:
1760         Small update.
1761
1762         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1763         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
1764         (gst_base_sink_activate_pull):
1765         Some more comments.
1766
1767         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
1768         (gst_fake_src_create):
1769         Fix handoff marshall.
1770
1771         * gst/elements/gstidentity.c: (gst_identity_class_init),
1772         (gst_identity_transform_ip):
1773         We're a real inplace element.
1774
1775         * gst/gstbus.c: (gst_bus_post):
1776         Added some comments.
1777
1778         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
1779         * tests/muxing/case1.c: (main):
1780         * tests/sched/dynamic-pipeline.c: (main):
1781         * tests/sched/interrupt1.c: (main):
1782         * tests/sched/interrupt2.c: (main):
1783         * tests/sched/interrupt3.c: (main):
1784         * tests/sched/runxml.c: (main):
1785         * tests/sched/sched-stress.c: (main):
1786         * tests/seeking/seeking1.c: (event_received), (main):
1787         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
1788         (main):
1789         * tests/threadstate/threadstate3.c: (main):
1790         * tests/threadstate/threadstate4.c: (main):
1791         * tests/threadstate/threadstate5.c: (main):
1792         Fix the tests.
1793
1794 2005-07-21  Wim Taymans  <wim@fluendo.com>
1795
1796         * docs/design/part-seeking.txt:
1797         Some small additions.
1798
1799         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1800         (gst_base_sink_get_times), (gst_base_sink_do_sync),
1801         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
1802         * gst/base/gstbasesink.h:
1803         discont values are gint64, handle the math correctly.
1804
1805         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1806         Make the basesrc report error if the source pad is not linked.
1807
1808         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
1809         (gst_queue_loop), (gst_queue_handle_src_query),
1810         (gst_queue_src_activate_push):
1811         Make queue collect data even if the srcpad is not linked.
1812         Start pushing out data as soon as it is linked.
1813
1814         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
1815         * gst/gstutils.h:
1816         Added gst_flow_get_name() to ease error reporting.
1817
1818 2005-07-20  Wim Taymans  <wim@fluendo.com>
1819
1820         * gst/gstmessage.c: (gst_message_new_segment_start),
1821         (gst_message_new_segment_done), (gst_message_parse_segment_start),
1822         (gst_message_parse_segment_done):
1823         * gst/gstmessage.h:
1824         Added a bunch of messages for advanced seeking.
1825
1826         * gst/parse/grammar.y:
1827         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
1828         (gst_dpman_state_changed):
1829         Fix some new-pad -> pad-added signals
1830
1831 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1832
1833         * docs/manual/appendix-porting.xml:
1834         * docs/pwg/appendix-porting.xml:
1835           Document new-pad/state-change signal renames and the FixedList
1836           type rename.
1837
1838 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1839
1840         * docs/manual/advanced-autoplugging.xml:
1841         * docs/manual/basics-helloworld.xml:
1842         * docs/manual/basics-pads.xml:
1843         * docs/random/ds/0.9-suggested-changes:
1844         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
1845         * gst/gstelement.h:
1846         * gst/gstevent.h:
1847         * gst/gstformat.h:
1848         * gst/gstquery.h:
1849         * gst/gststructure.c: (gst_structure_value_get_generic_type),
1850         (gst_structure_parse_array), (gst_structure_parse_value):
1851         * gst/gstvalue.c: (gst_type_is_fixed),
1852         (gst_value_list_prepend_value), (gst_value_list_append_value),
1853         (gst_value_list_get_size), (gst_value_list_get_value),
1854         (gst_value_transform_array_string), (gst_value_serialize_array),
1855         (gst_value_deserialize_array), (gst_value_intersect_array),
1856         (gst_value_is_fixed), (_gst_value_initialize):
1857         * gst/gstvalue.h:
1858           GstElement::new-pad -> pad-added, GstElement::state-change ->
1859           state-changed, GstValueFixedList -> GstValueArray, add format and
1860           flags as their own arguments in gst_element_seek() (should improve
1861           "bindeability"), remove function generators since they don't work
1862           under a whole bunch of compilers (they were deprecated already
1863           anyway).
1864
1865 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1866
1867         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
1868         (_gst_debug_register_funcptr):
1869         * gst/gstinfo.h:
1870           Fix illegal cast on some platforms (#309253).
1871
1872 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1873
1874         * gst/gstmessage.c: (gst_message_new_custom):
1875         * gst/gstmessage.h:
1876           Add _new_custom, make _new_application a macro to _new_custom.
1877
1878 2005-07-20  Wim Taymans  <wim@fluendo.com>
1879
1880         * gst/base/gstbasesrc.c: (gst_base_src_init),
1881         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
1882         * gst/base/gstbasesrc.h:
1883         Add a gboolean to decide when to push out a discont.
1884
1885         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1886         (gst_queue_loop), (gst_queue_handle_src_query),
1887         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
1888         (gst_queue_set_property), (gst_queue_get_property):
1889         Some cleanups.
1890
1891         * tests/threadstate/threadstate1.c: (main):
1892         Make a thread test compile and run... very silly..
1893
1894
1895 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1896
1897         * docs/manual/appendix-porting.xml:
1898           Mention removal of libgstgconf-0.9.la and existence of gconf
1899           elements.
1900
1901 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1902
1903         * docs/pwg/advanced-clock.xml:
1904         * docs/pwg/appendix-porting.xml:
1905         * docs/pwg/intro-preface.xml:
1906         * docs/pwg/other-base.xml:
1907         * docs/pwg/other-manager.xml:
1908         * docs/pwg/other-nton.xml:
1909         * docs/pwg/other-ntoone.xml:
1910         * docs/pwg/other-oneton.xml:
1911         * docs/pwg/pwg.xml:
1912           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
1913           demuxer), remove n-to-n (was never written), fix some code examples
1914           and links and update the porting section to include all this.
1915
1916 2005-07-19  Wim Taymans  <wim@fluendo.com>
1917
1918         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
1919         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
1920         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
1921         (gst_queue_src_activate_push), (gst_queue_change_state),
1922         (gst_queue_get_property):
1923         * gst/gstqueue.h:
1924         Propagate GstFlowReturn more intelligently upstream and output
1925         an ERROR/EOS when streaming stopped due to fatal error.
1926
1927 2005-07-19  Wim Taymans  <wim@fluendo.com>
1928
1929         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1930         Don't block forever for the state change to complete, the
1931         pipeline already did with a sensible timeout.
1932
1933 2005-07-19  Wim Taymans  <wim@fluendo.com>
1934
1935         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
1936         Make sure we never call the create function is we
1937         got deactivated.
1938
1939 2005-07-19  Andy Wingo  <wingo@pobox.com>
1940
1941         * gst/parse/parse.l: Attempt to solve bug #172815.
1942
1943 2005-07-19  Wim Taymans  <wim@fluendo.com>
1944
1945         * docs/design/part-clocks.txt:
1946         * docs/design/part-events.txt:
1947         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1948         Small docs updates.
1949         Only update the seeking values when we are not
1950         busy streaming.
1951
1952 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1953
1954         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1955           Oops, ignore the result of gst_pad_push_event here.
1956
1957 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1958
1959         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1960         (gst_base_src_activate_push):
1961           Send discont event from the loop function, as pads
1962           aren't activated yet in the activate_push handler.
1963
1964         * gst/gstbin.c: (bin_bus_handler):
1965           Don't leak element name.
1966
1967 2005-07-18  Andy Wingo  <wingo@pobox.com>
1968
1969         * configure.ac: Use AS_LIBTOOL_TAGS.
1970
1971 2005-07-18  Wim Taymans  <wim@fluendo.com>
1972
1973         * docs/gst/gstreamer.types:
1974         Remove deleted types.
1975
1976 2005-07-18  Wim Taymans  <wim@fluendo.com>
1977
1978         * check/elements/gstfakesrc.c: (GST_START_TEST):
1979         * configure.ac:
1980         * gst/Makefile.am:
1981         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1982         (init_popt_callback):
1983         * gst/gst.h:
1984         * gst/gst_private.h:
1985         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1986         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1987         * gst/gstbin.h:
1988         * gst/gstbus.h:
1989         * gst/gstconfig.h.in:
1990         * gst/gstelement.c: (gst_element_class_init),
1991         (gst_element_set_base_time), (gst_element_get_base_time),
1992         (iterator_fold_with_resync), (gst_element_change_state),
1993         (gst_element_dispose), (gst_element_get_bus):
1994         * gst/gstelement.h:
1995         * gst/gstelementfactory.h:
1996         * gst/gsterror.c: (_gst_core_errors_init):
1997         * gst/gsterror.h:
1998         * gst/gstevent.h:
1999         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
2000         * gst/gstindex.c:
2001         * gst/gstinfo.c: (_gst_debug_init):
2002         * gst/gstmessage.c: (_gst_message_copy):
2003         * gst/gstmessage.h:
2004         * gst/gstminiobject.h:
2005         * gst/gstobject.c:
2006         * gst/gstobject.h:
2007         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
2008         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
2009         * gst/gstpad.h:
2010         * gst/gstparse.h:
2011         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
2012         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
2013         (gst_pipeline_get_last_stream_time):
2014         * gst/gstpipeline.h:
2015         * gst/gstpluginfeature.h:
2016         * gst/gstquery.h:
2017         * gst/gstscheduler.c:
2018         * gst/gstscheduler.h:
2019         * gst/gststructure.h:
2020         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2021         (gst_task_finalize), (gst_task_func), (gst_task_create),
2022         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
2023         (gst_task_stop), (gst_task_pause):
2024         * gst/gsttask.h:
2025         * gst/gsttypefind.h:
2026         * gst/gsttypes.h:
2027         * gst/registries/gstlibxmlregistry.c: (load_feature),
2028         (gst_xml_registry_load), (gst_xml_registry_save_feature):
2029         * gst/registries/gstxmlregistry.c:
2030         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
2031         * gst/schedulers/threadscheduler.c:
2032         * libs/gst/control/dparammanager.h:
2033         * tools/gst-inspect.c: (print_element_list),
2034         (print_plugin_features), (print_element_features):
2035         * tools/gst-xmlinspect.c: (print_element_list),
2036         (print_plugin_info), (main):
2037         Removed plugable schedulers.
2038         Removed Scheduler/Manager from elements.
2039         Removed gsttypes.h, rearranged includes.
2040         Removed dependency pad<->element, element<>pipeline, and
2041         various others,  fix includes.
2042         implement gst_pad_get_parent() with gst_object_get_parent()
2043         Make GstTask sefcontained.
2044         Fix _get_state() on GstBin, it did not return ASYNC with a 0
2045         timeout.
2046         Fix endless loop in iterator_fold_with_resync.
2047
2048
2049 2005-07-18  Wim Taymans  <wim@fluendo.com>
2050
2051         * gst/Makefile.am:
2052         * gst/gstarch.h:
2053         Remove old file.
2054
2055 2005-07-18  Wim Taymans  <wim@fluendo.com>
2056
2057         * gst/Makefile.am:
2058         No more cothreads.h
2059
2060 2005-07-18  Wim Taymans  <wim@fluendo.com>
2061
2062         * gst/cothreads.c:
2063         * gst/cothreads.h:
2064         Let's remove these.
2065
2066 2005-07-18  Wim Taymans  <wim@fluendo.com>
2067
2068         * docs/design/part-dynamic.txt:
2069         * docs/design/part-events.txt:
2070         * docs/design/part-seeking.txt:
2071         Some more docs in the works.
2072
2073         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
2074         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
2075         (gst_base_transform_setcaps), (gst_base_transform_get_size),
2076         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
2077         (gst_base_transform_handle_buffer),
2078         (gst_base_transform_sink_activate_push),
2079         (gst_base_transform_src_activate_pull),
2080         (gst_base_transform_set_passthrough),
2081         (gst_base_transform_is_passthrough):
2082         Refcounting fixes.
2083
2084         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
2085         Cleanups.
2086
2087         * gst/gstevent.c: (gst_event_finalize):
2088         Set SRC to NULL.
2089
2090         * gst/gstutils.c: (gst_element_unlink),
2091         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
2092         (gst_pad_proxy_setcaps):
2093         * gst/gstutils.h:
2094         Add _get_parent_element() to get a pads parent as an element.
2095
2096 2005-07-18  Wim Taymans  <wim@fluendo.com>
2097
2098         * check/gst/gstbin.c: (GST_START_TEST):
2099         Remove bogus test.
2100
2101 2005-07-18  Wim Taymans  <wim@fluendo.com>
2102
2103         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
2104         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
2105         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2106         (gst_base_sink_event), (gst_base_sink_do_sync),
2107         (gst_base_sink_chain), (gst_base_sink_loop),
2108         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
2109         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
2110         Refcounting fixes.
2111         Fix logic for returning ASYNC when not prerolled.
2112
2113 2005-07-18  Wim Taymans  <wim@fluendo.com>
2114
2115         * gst/gstqueue.c: (gst_queue_handle_sink_event):
2116         Fix nasty refcount bug.
2117
2118 2005-07-16 Philippe Khalaf <burger@speedy.org>
2119         * gst/elements/gstfdsrc.c:
2120         * gst/elements/gstfdsrc.h:
2121         * gst/elements/gstelements.c:
2122         * gst/elements/Makefile.am:
2123         Ported fdsrc to 0.9.
2124
2125 2005-07-16  Wim Taymans  <wim@fluendo.com>
2126
2127         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2128         (gst_base_sink_do_sync):
2129         Fix compile error.
2130
2131 2005-07-16  Wim Taymans  <wim@fluendo.com>
2132
2133         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2134         (gst_base_sink_event), (gst_base_sink_get_times),
2135         (gst_base_sink_do_sync), (gst_base_sink_change_state):
2136         * gst/base/gstbasesink.h:
2137         Store and use discont values when syncing buffers as described
2138         in design docs.
2139         
2140         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
2141         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
2142         (gst_base_src_activate_push):
2143         Push discont event when starting.
2144
2145         * gst/elements/gstidentity.c: (gst_identity_transform):
2146         Small cleanups.
2147
2148         * gst/gstbin.c: (gst_bin_change_state):
2149         Small cleanups in base_time  distribution.
2150
2151         * gst/gstelement.c: (gst_element_set_base_time),
2152         (gst_element_get_base_time), (gst_element_change_state):
2153         * gst/gstelement.h:
2154         Added methods for the base_time of the element.
2155         Some MT fixes.
2156
2157         * gst/gstpipeline.c: (gst_pipeline_send_event),
2158         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
2159         (gst_pipeline_get_last_stream_time):
2160         * gst/gstpipeline.h:
2161         MT fixes.
2162         Handle seeking as described in design doc, remove stream_time
2163         hack.
2164         Cleanups clock and stream_time selection code. Added accessors
2165         for the stream_time.
2166         
2167
2168 2005-07-16  Andy Wingo  <wingo@pobox.com>
2169
2170         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
2171         (#305291).
2172
2173 2005-07-16  Wim Taymans  <wim@fluendo.com>
2174
2175         * check/gst/gstbin.c: (GST_START_TEST):
2176         Make elements silent as the deep_notify refs the
2177         parent, which might make the test fail.
2178
2179         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
2180         Don't hold the lock for too long.
2181
2182 2005-07-16  Tim-Philipp M??ller  <tim at centricular dot net>
2183
2184         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
2185           Don't unref the caps we passed to gst_caps_make_writable() after
2186           passing them. gst_caps_make_writable() will do that for us.
2187
2188 2005-07-15  Andy Wingo  <wingo@pobox.com>
2189
2190         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
2191         (#157311).
2192
2193         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
2194         own marshalling function for the handoff signal. Properly type the
2195         buffer as a buffer. Fixes some warnings. Should do a more general
2196         solution.
2197         (gst_identity_class_init): Plug into the right marshaller.
2198
2199 2005-07-15  Wim Taymans  <wim@fluendo.com>
2200
2201         * docs/design/part-TODO.txt:
2202         * docs/design/part-clocks.txt:
2203         * docs/design/part-element-sink.txt:
2204         * docs/design/part-events.txt:
2205         * docs/design/part-gstpipeline.txt:
2206         Updated docs, mostly DISCONT related.
2207
2208 2005-07-15  Tim-Philipp M??ller  <tim at centricular dot net>
2209
2210         * docs/pwg/building-pads.xml:
2211           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
2212
2213 2005-07-15  Andy Wingo  <wingo@pobox.com>
2214
2215         * tools/gst-typefind.c: Update, add copyright block.
2216
2217         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
2218         Normalize and truncate caps before fixation.
2219
2220         * gst/gstcaps.h:
2221         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
2222         discards all but the first structure from its argument.
2223
2224 2005-07-15  Wim Taymans  <wim@fluendo.com>
2225
2226         * gst/base/gstbasetransform.c: (gst_base_transform_init),
2227         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
2228         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
2229         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
2230         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
2231         (gst_base_transform_chain), (gst_base_transform_change_state),
2232         (gst_base_transform_set_passthrough),
2233         (gst_base_transform_is_passthrough):
2234         * gst/base/gstbasetransform.h:
2235         Make passthrough work using the bufferpools.
2236         Changed API a bit, subclasses have to write into a buffer
2237         provided by the base class.
2238         More debug info in nego functions.
2239         
2240         * gst/elements/gstidentity.c: (gst_identity_init),
2241         (gst_identity_transform):
2242         Port to new base class.
2243
2244 2005-07-15  Wim Taymans  <wim@fluendo.com>
2245
2246         * gst/gstmessage.c: (gst_message_new_state_changed):
2247         * tools/gst-launch.c: (event_loop), (main):
2248         Totally dump messages in -launch with the -m option.
2249         Fix message name for State messages,
2250
2251 2005-07-14  Wim Taymans  <wim@fluendo.com>
2252
2253         * gst/base/gstbasesrc.c: (gst_base_src_loop):
2254         Post error messages on errors.
2255
2256 2005-07-14  Wim Taymans  <wim@fluendo.com>
2257
2258         * gst/gstcaps.c: (gst_caps_do_simplify):
2259         Remove debug info.
2260
2261         * gst/gsterror.h:
2262         Define error for stream stopped.
2263
2264         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2265         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
2266         Do proper return values.
2267
2268         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
2269         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
2270         (gst_pad_get_range):
2271         Better return values.
2272
2273         * gst/gstpad.h:
2274         Reorganise return values, add macro to check for fatal errors.
2275
2276         * gst/gstqueue.c: (gst_queue_chain):
2277         Return proper GstFlowReturn values,
2278
2279 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2280
2281         * docs/gst/gstreamer-sections.txt:
2282         * docs/gst/gstreamer.types:
2283         * docs/gst/tmpl/gst.sgml:
2284         * docs/gst/tmpl/gstbasesink.sgml:
2285         * docs/gst/tmpl/gstbasesrc.sgml:
2286         * docs/gst/tmpl/gstbasetransform.sgml:
2287         * docs/gst/tmpl/gstbin.sgml:
2288         * docs/gst/tmpl/gstbuffer.sgml:
2289         * docs/gst/tmpl/gstcaps.sgml:
2290         * docs/gst/tmpl/gstclock.sgml:
2291         * docs/gst/tmpl/gstcompat.sgml:
2292         * docs/gst/tmpl/gstconfig.sgml:
2293         * docs/gst/tmpl/gstelement.sgml:
2294         * docs/gst/tmpl/gstelementdetails.sgml:
2295         * docs/gst/tmpl/gstelementfactory.sgml:
2296         * docs/gst/tmpl/gstenumtypes.sgml:
2297         * docs/gst/tmpl/gsterror.sgml:
2298         * docs/gst/tmpl/gstevent.sgml:
2299         * docs/gst/tmpl/gstfakesink.sgml:
2300         * docs/gst/tmpl/gstfakesrc.sgml:
2301         * docs/gst/tmpl/gstfilesink.sgml:
2302         * docs/gst/tmpl/gstfilesrc.sgml:
2303         * docs/gst/tmpl/gstfilter.sgml:
2304         * docs/gst/tmpl/gstformat.sgml:
2305         * docs/gst/tmpl/gstghostpad.sgml:
2306         * docs/gst/tmpl/gstimplementsinterface.sgml:
2307         * docs/gst/tmpl/gstindex.sgml:
2308         * docs/gst/tmpl/gstindexfactory.sgml:
2309         * docs/gst/tmpl/gstinfo.sgml:
2310         * docs/gst/tmpl/gstiterator.sgml:
2311         * docs/gst/tmpl/gstmacros.sgml:
2312         * docs/gst/tmpl/gstmemchunk.sgml:
2313         * docs/gst/tmpl/gstminiobject.sgml:
2314         * docs/gst/tmpl/gstobject.sgml:
2315         * docs/gst/tmpl/gstpad.sgml:
2316         * docs/gst/tmpl/gstpadtemplate.sgml:
2317         * docs/gst/tmpl/gstparse.sgml:
2318         * docs/gst/tmpl/gstpipeline.sgml:
2319         * docs/gst/tmpl/gstplugin.sgml:
2320         * docs/gst/tmpl/gstpluginfeature.sgml:
2321         * docs/gst/tmpl/gstquery.sgml:
2322         * docs/gst/tmpl/gstqueue.sgml:
2323         * docs/gst/tmpl/gstregistry.sgml:
2324         * docs/gst/tmpl/gstregistrypool.sgml:
2325         * docs/gst/tmpl/gstscheduler.sgml:
2326         * docs/gst/tmpl/gstschedulerfactory.sgml:
2327         * docs/gst/tmpl/gststructure.sgml:
2328         * docs/gst/tmpl/gstsystemclock.sgml:
2329         * docs/gst/tmpl/gsttaglist.sgml:
2330         * docs/gst/tmpl/gsttagsetter.sgml:
2331         * docs/gst/tmpl/gsttrace.sgml:
2332         * docs/gst/tmpl/gsttrashstack.sgml:
2333         * docs/gst/tmpl/gsttypefind.sgml:
2334         * docs/gst/tmpl/gsttypefindfactory.sgml:
2335         * docs/gst/tmpl/gsttypes.sgml:
2336         * docs/gst/tmpl/gsturihandler.sgml:
2337         * docs/gst/tmpl/gsturitype.sgml:
2338         * docs/gst/tmpl/gstutils.sgml:
2339         * docs/gst/tmpl/gstvalue.sgml:
2340         * docs/gst/tmpl/gstversion.sgml:
2341         * docs/gst/tmpl/gstxml.sgml:
2342         * docs/libs/tmpl/gstcontrol.sgml:
2343         * docs/libs/tmpl/gstdataprotocol.sgml:
2344         * docs/libs/tmpl/gstdparam.sgml:
2345         * docs/libs/tmpl/gstdplinint.sgml:
2346         * docs/libs/tmpl/gstdpman.sgml:
2347         * docs/libs/tmpl/gstdpsmooth.sgml:
2348         * docs/libs/tmpl/gstgetbits.sgml:
2349         * docs/libs/tmpl/gstunitconvert.sgml:
2350         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
2351         (gst_push_src_base_init), (gst_push_src_class_init),
2352         (gst_push_src_init), (gst_push_src_create):
2353         * gst/base/gstpushsrc.h:
2354         * gst/elements/gstelements.c:
2355         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
2356         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
2357         (gst_fake_sink_init), (gst_fake_sink_set_property),
2358         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
2359         (gst_fake_sink_event), (gst_fake_sink_preroll),
2360         (gst_fake_sink_render), (gst_fake_sink_change_state):
2361         * gst/elements/gstfakesink.h:
2362         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
2363         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
2364         (gst_fake_src_base_init), (gst_fake_src_class_init),
2365         (gst_fake_src_init), (gst_fake_src_event_handler),
2366         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
2367         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
2368         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
2369         (gst_fake_src_create_buffer), (gst_fake_src_create),
2370         (gst_fake_src_start), (gst_fake_src_stop):
2371         * gst/elements/gstfakesrc.h:
2372         * gst/elements/gstfilesink.c: (_do_init),
2373         (gst_file_sink_base_init), (gst_file_sink_class_init),
2374         (gst_file_sink_init), (gst_file_sink_dispose),
2375         (gst_file_sink_set_location), (gst_file_sink_set_property),
2376         (gst_file_sink_get_property), (gst_file_sink_open_file),
2377         (gst_file_sink_close_file), (gst_file_sink_query),
2378         (gst_file_sink_event), (gst_file_sink_render),
2379         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
2380         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
2381         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
2382         * gst/elements/gstfilesink.h:
2383         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
2384         (gst_file_src_class_init), (gst_file_src_init),
2385         (gst_file_src_finalize), (gst_file_src_set_location),
2386         (gst_file_src_set_property), (gst_file_src_get_property),
2387         (gst_file_src_map_region), (gst_file_src_map_small_region),
2388         (gst_file_src_create_mmap), (gst_file_src_create_read),
2389         (gst_file_src_create), (gst_file_src_is_seekable),
2390         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
2391         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
2392         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
2393         (gst_file_src_uri_handler_init):
2394         * gst/elements/gstfilesrc.h:
2395           more autistic cleanliness in functions/names/defines
2396
2397 2005-07-13  Andy Wingo  <wingo@pobox.com>
2398
2399         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
2400         source couldn't negotiate.
2401
2402         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
2403         connections again.
2404
2405         * gst/gstutils.h:
2406         * gst/gstutils.c (gst_element_link_pads_filtered): New old
2407         function. I am channeling Hades. Put your boots on suckers!!!
2408
2409 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2410
2411         * testsuite/caps/Makefile.am:
2412         * testsuite/caps/value_compare.c:
2413         * testsuite/caps/value_intersect.c:
2414         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2415           move two testsuite apps over to the check dir
2416
2417 2005-07-12  Wim Taymans  <wim@fluendo.com>
2418
2419         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
2420         Added more debug info in the negotiate process.
2421
2422         * gst/gstmessage.h:
2423         Prepare for segment playback.
2424
2425         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
2426         Better debugging.
2427
2428         * gst/gstutils.c:
2429         Some more docs.
2430
2431         * tools/gst-launch.c: (main):
2432         NULL pipeline on errors.
2433
2434 2005-07-12  Andy Wingo  <wingo@pobox.com>
2435
2436         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
2437         not it comes from a malloc region. Make sure our copy gets freed.
2438
2439 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2440
2441         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
2442         * check/gst/gstmessage.c: (GST_START_TEST):
2443         * check/gst/gststructure.c: (GST_START_TEST),
2444         (gst_structure_suite), (main):
2445           more testing
2446         * gst/gstelement.c: (gst_element_message_full):
2447           clean up GError and debug string now that they get copied
2448         * gst/gstmessage.c: (gst_message_new_error),
2449         (gst_message_new_warning), (gst_message_parse_error),
2450         (gst_message_parse_warning):
2451           use GST_TYPE_G_ERROR for structure_new, and take copies of
2452           arguments, so that we don't mess up refcounting
2453
2454 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2455
2456         * check/Makefile.am:
2457           add per-test valgrind targets
2458         * check/gst-libs/gdp.c: (GST_START_TEST),
2459         (gst_data_protocol_suite), (main):
2460           clean up
2461
2462 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2463
2464         * check/Makefile.am:
2465           instate more valgrindable tests
2466         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2467         (GST_START_TEST), (fakesrc_suite):
2468         * check/gst/gstpad.c: (GST_START_TEST):
2469         * check/gst/gststructure.c: (GST_START_TEST):
2470           fix test leaks
2471         * docs/gst/tmpl/gstminiobject.sgml:
2472         * gst/gstpad.c: (gst_pad_finalize):
2473           fix the static mutex leak
2474
2475 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2476
2477         * check/Makefile.am:
2478           add two more tests for valgrinding
2479         * check/gst/gstvalue.c: (GST_START_TEST):
2480           test refcount of deserialized buffer, found a leak
2481         * docs/gst/gstreamer-docs.sgml:
2482         * docs/gst/gstreamer-sections.txt:
2483         * docs/gst/gstreamer.types:
2484         * docs/gst/tmpl/gstminiobject.sgml:
2485           add miniobject to docs
2486         * gst/gstminiobject.c:
2487           add some docs
2488         * gst/gstvalue.c: (gst_value_deserialize_buffer),
2489         (gst_string_unwrap):
2490           fix a hard-to-find invalid write for one of the tests
2491           fix a leak for deserialized buffers
2492
2493 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2494
2495         * docs/pwg/advanced-events.xml:
2496         * docs/pwg/advanced-request.xml:
2497         * docs/pwg/advanced-scheduling.xml:
2498         * docs/pwg/appendix-porting.xml:
2499         * docs/pwg/building-boiler.xml:
2500         * docs/pwg/intro-preface.xml:
2501         * docs/pwg/other-ntoone.xml:
2502           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
2503           of example code and explanation for pad activation, loop() and
2504           getrange() functions and a bit more. Remove old comments pointing
2505           to loop-functions.
2506         * examples/pwg/Makefile.am:
2507           Add loop/getrange examples.
2508
2509 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2510
2511         * configure.ac:
2512           check for valgrind binary + some fixes
2513         * check/gst.supp:
2514           valgrind suppressions for the tests
2515         * check/Makefile.am:
2516           add a valgrind: target that valgrinds the unit tests
2517         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
2518         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
2519         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2520         * check/gst/gstghostpad.c:
2521           added some cleanup
2522         * check/gst/gstdata.c:
2523           removed
2524         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
2525         (thread_unref), (gst_mini_object_suite), (main):
2526           added
2527         * gst/gst.c: (gst_deinit):
2528         * gst/gst.h:
2529           add a method to clean up.
2530         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2531         (gst_system_clock_obtain):
2532           allow for disposing the system clock.
2533         * tools/gst-launch.c: (main):
2534           deinit
2535
2536 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2537
2538         * docs/gst/tmpl/gstbasesrc.sgml:
2539         * docs/gst/tmpl/gstfakesrc.sgml:
2540         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2541         (gst_base_src_init), (gst_base_src_set_property),
2542         (gst_base_src_get_property), (gst_base_src_get_range),
2543         (gst_base_src_start):
2544         * gst/base/gstbasesrc.h:
2545           add num-buffers property
2546         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2547         (gst_fakesrc_init), (gst_fakesrc_set_property),
2548         (gst_fakesrc_get_property), (gst_fakesrc_create),
2549         (gst_fakesrc_start):
2550           remove num-buffers property
2551
2552 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2553
2554         * docs/gst/gstreamer-sections.txt:
2555         * docs/gst/tmpl/gstbasesink.sgml:
2556         * docs/gst/tmpl/gstbasesrc.sgml:
2557         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
2558         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
2559         (gst_base_sink_finalize), (gst_base_sink_set_clock),
2560         (gst_base_sink_set_property), (gst_base_sink_get_property),
2561         (gst_base_sink_handle_object), (gst_base_sink_event),
2562         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
2563         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
2564         (gst_base_sink_loop), (gst_base_sink_deactivate),
2565         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
2566         (gst_base_sink_change_state):
2567         * gst/base/gstbasesink.h:
2568         * gst/base/gstbasesrc.h:
2569         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
2570         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2571         (gst_filesink_init):
2572           more macro splitting
2573
2574 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2575
2576         * gst/gstelement.c: (gst_element_get_bus):
2577           add debug
2578         * tools/gst-launch.c: (check_intr), (event_loop):
2579           fix bus leaks
2580
2581 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2582
2583         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
2584           fix a caps leak
2585
2586 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2587
2588         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2589         (gst_base_src_finalize):
2590           add finalize method and clean up properly
2591         * gst/gstpipeline.c: (gst_pipeline_dispose):
2592           add debug
2593
2594 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2595
2596         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
2597         (gst_bin_suite):
2598           add more things to check
2599         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
2600         * gst/gstelement.c:
2601           more debug
2602
2603 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2604
2605         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2606         (GST_START_TEST), (fakesrc_suite):
2607         * check/gst-libs/gdp.c: (GST_START_TEST):
2608         * check/gst/gst.c: (GST_START_TEST):
2609         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
2610         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2611         * check/gst/gstbus.c: (GST_START_TEST):
2612         * check/gst/gstcaps.c: (GST_START_TEST):
2613         * check/gst/gstdata.c: (GST_START_TEST):
2614         * check/gst/gstelement.c: (GST_START_TEST):
2615         * check/gst/gstghostpad.c: (GST_START_TEST):
2616         * check/gst/gstiterator.c: (GST_START_TEST):
2617         * check/gst/gstmessage.c: (GST_START_TEST):
2618         * check/gst/gstobject.c: (GST_START_TEST):
2619         * check/gst/gstpad.c: (GST_START_TEST):
2620         * check/gst/gststructure.c: (GST_START_TEST):
2621         * check/gst/gstsystemclock.c: (GST_START_TEST),
2622         (gst_systemclock_suite):
2623         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
2624         * check/gst/gstvalue.c: (GST_START_TEST):
2625         * check/pipelines/cleanup.c: (GST_START_TEST):
2626         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
2627         * check/states/sinks.c: (GST_START_TEST):
2628         * check/gstcheck.c: (gst_check_init):
2629         * check/gstcheck.h:
2630           add debugging category
2631           use GST_START_TEST now, so we add a debug line
2632
2633 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2634
2635         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
2636           add test for state change message on a bin
2637         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
2638           add another test
2639         * gst/gstbin.c: (gst_bin_init):
2640         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
2641         * gst/gstelement.c: (gst_element_post_message),
2642         (gst_element_set_state):
2643         * gst/gstelementfactory.c: (gst_element_factory_create):
2644         * gst/gstmessage.c: (gst_message_new):
2645         * gst/gstscheduler.c:
2646           various debugging additions and cleanups
2647
2648 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2649
2650         * check/Makefile.am:
2651         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
2652         (main):
2653           adding tests for elements
2654         * gst/gstelement.c: (gst_element_dispose):
2655
2656 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2657
2658         * gst/registries/gstlibxmlregistry.c: (load_feature):
2659           plug more leaks.  A simple gst_init() now is leakfree, yay.
2660
2661 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2662
2663         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
2664         (gst_xml_registry_load):
2665           plug another memleak
2666
2667 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2668
2669         * configure.ac:
2670           use GST_SET_ERROR_CFLAGS
2671         * docs/faq/cvs.xml:
2672           change to ERROR_CFLAGS
2673
2674 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2675
2676         * configure.ac:
2677           make GST_ERROR_CFLAGS overridable and re-enable Werror
2678         * docs/faq/cvs.xml:
2679           add a note about error CFLAGS
2680         * docs/gst/tmpl/gstfakesrc.sgml:
2681         * gst/elements/gstfakesrc.c:
2682           comment out some unused code
2683         * gst/gst.c: (split_and_iterate):
2684         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
2685         (load_feature):
2686           plug some memleaks
2687
2688 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2689
2690         * common/Makefile.am:
2691         * common/gtk-doc.mak:
2692         * docs/gst/Makefile.am:
2693           factor out gtk-doc.mak
2694
2695 2005-07-07  Wim Taymans  <wim@fluendo.com>
2696
2697         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
2698         (gst_thread_scheduler_dispose):
2699         Unlock the STREAM_LOCK completely.
2700
2701 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2702
2703         * check/Makefile.am:
2704         * check/elements/.cvsignore:
2705         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2706         (START_TEST), (fakesrc_suite), (main):
2707         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2708         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2709         (gst_fakesrc_create), (gst_fakesrc_start):
2710         * gst/elements/gstfakesrc.h:
2711           adding a first element test
2712
2713 2005-07-07  Andy Wingo  <wingo@pobox.com>
2714
2715         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
2716         debug message.
2717
2718 2005-07-07  Wim Taymans  <wim@fluendo.com>
2719
2720         * gst/gstquery.c:
2721         * gst/gstquery.h:
2722         Remove old types
2723
2724 2005-07-07  Wim Taymans  <wim@fluendo.com>
2725
2726         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
2727         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
2728         Allow subclasses to implement their own negotiation.
2729
2730 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2731
2732         * docs/design/part-gstbin.txt:
2733         * docs/design/part-gstpipeline.txt:
2734           Update design notes to reflect the movement of
2735           responsibility for bus handling from GstPipeline to
2736           GstBin
2737
2738 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2739
2740         * configure.ac:
2741           Remove unnecessary queue2/3/4 examples.
2742
2743 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2744
2745         * examples/Makefile.am:
2746         * examples/helloworld/helloworld.c: (event_loop), (main):
2747         * examples/queue/queue.c: (event_loop), (main):
2748         * examples/queue2/queue2.c: (main):
2749           Update a couple of the examples to work again.
2750
2751         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2752         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
2753          Spelling corrections and extra debug.
2754         
2755         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
2756         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
2757         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
2758         * gst/gstbin.h:
2759         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
2760         (gst_pipeline_change_state):
2761         * gst/gstpipeline.h:
2762           Move the bus handler for children to the GstBin, and create a
2763           separate bus for receiving messages from children to the one the
2764           bus sends 'upwards' on.
2765
2766 2005-07-06  Wim Taymans  <wim@fluendo.com>
2767
2768         * gst/base/README:
2769         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2770         (gst_base_sink_handle_object), (gst_base_sink_loop),
2771         (gst_base_sink_change_state):
2772         * gst/base/gstbasesink.h:
2773         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2774         (gst_base_src_init), (gst_base_src_setcaps),
2775         (gst_base_src_getcaps), (gst_base_src_loop),
2776         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
2777         (gst_base_src_start), (gst_base_src_change_state):
2778         * gst/base/gstbasesrc.h:
2779         Make basesrc negotiate.
2780         Handle the case where preroll fails in basesink.
2781         Update README.
2782
2783 2005-07-06  Wim Taymans  <wim@fluendo.com>
2784
2785         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
2786         Implement the fixate function.
2787         Clean up acceptcaps.
2788
2789 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2790
2791         * docs/pwg/building-filterfactory.xml:
2792         * docs/pwg/pwg.xml:
2793           Remove never-written filter-factory chapter; I'll add the various
2794           base classes to part 4 ("other element types") later on.
2795
2796 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2797
2798         * docs/pwg/advanced-negotiation.xml:
2799         * docs/pwg/building-boiler.xml:
2800         * docs/pwg/building-pads.xml:
2801         * docs/pwg/pwg.xml:
2802         * examples/pwg/Makefile.am:
2803           Add a chapter on caps negotiation, simplify the original code
2804           samples a bit w.r.t. caps negotiation, add link to the advanced
2805           section. Add a bunch of examples showing different use cases of
2806           different types of caps negotiation. Upstream renegotiation isn't
2807           fully documented yet since nobody knows how that works.
2808
2809 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2810
2811         * check/gst/gstpad.c:
2812         * check/gstcheck.c:
2813         * gst/gstpad.c: (gst_pad_get_internal_links_default):
2814           if pad has no parent, return NULL as list of internal links
2815
2816 2005-07-05  Andy Wingo  <wingo@pobox.com>
2817
2818         * gst/elements/gstfilesrc.c:
2819         * gst/elements/gstfakesrc.c: 
2820         * gst/base/gstpushsrc.c:
2821         * gst/base/gstbasesrc.h: 
2822         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
2823         
2824 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
2825
2826         * Makefile.am:
2827           better report generation target (lcov needs a patch)
2828
2829 2005-07-05  Andy Wingo  <wingo@pobox.com>
2830
2831         * gst/elements, testsuite: Null if we got it...
2832
2833 2005-07-05  Wim Taymans  <wim@fluendo.com>
2834
2835         * configure.ac:
2836         * libs/gst/dataprotocol/Makefile.am:
2837         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
2838         * libs/gst/dataprotocol/dataprotocol.h:
2839         * pkgconfig/Makefile.am:
2840         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
2841         * pkgconfig/gstreamer-dataprotocol.pc.in:
2842         Ported dataprotol to 0.9. 
2843         Added pkgconfig files.
2844
2845 2005-07-05  Andy Wingo  <wingo@pobox.com>
2846
2847         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
2848         Default to returning TRUE for the case when tranform_caps returns
2849         a fixed caps, like for identity or volume.
2850
2851         * check/gst/gstbus.c (pound_bus_with_messages): 
2852         * check/gst/gstmessage.c (START_TEST): 
2853         * check/pipelines/simple_launch_lines.c (got_handoff): Application
2854         message API change.
2855
2856         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
2857         logic weaks here: always run transform_caps, trying passthrough
2858         operation only if the original caps intersects with the transform.
2859
2860         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
2861         source and sink caps.
2862
2863         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
2864         Intersect the peer caps with the pad template before going into
2865         transform_caps.
2866         (gst_base_transform_transform_caps): More debugging.
2867
2868         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
2869         src argument.
2870
2871 2005-07-04  Edward Hervey  <edward@fluendo.com>
2872
2873         * gst/gstutils.c:
2874         * gst/gstutils.h:
2875         (gst_pad_add_*_probe): now returns the signal id for better wrapping
2876         in bindings.
2877
2878 2005-07-04  Andy Wingo  <wingo@pobox.com>
2879
2880         * check/gst/gstpad.c: Only set explicit caps on pads.
2881
2882 2005-07-01  Andy Wingo  <wingo@pobox.com>
2883
2884         * tests/network-clock.scm: Commentary update.
2885
2886         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
2887         Didn't really make sense, not implementable with basetransform,
2888         etc.
2889         (gst_identity_transform): Unref inbuf via make_writable. Feeble
2890         attempt at implementing the sync property, needs an unlock method.
2891
2892         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
2893         New func, by default returns the same caps (the identity
2894         transformation).
2895         (gst_base_transform_getcaps): Uses transform_caps to return
2896         something sensible.
2897         (gst_base_transform_setcaps): Complicated logic to get caps on
2898         both pads, even if they are different, and to call set_caps once
2899         for every time both pads get their caps set.
2900         (gst_base_transform_handle_buffer): Give the ref to the transform
2901         function. Allows in-place modification of the buffer.
2902
2903         * gst/base/gstbasetransform.h (transform_caps): New class method.
2904         Given caps on one side, what can I do on the other.
2905         (set_caps): Take two caps, one for each side of the element.
2906
2907         * gst/gstpad.h:
2908         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
2909         caps in place. This is safe because we can check the mutability of
2910         the caps, and a good idea because fixate functions are just called
2911         as a matter of last resort. (Not actually implemented.)
2912         (gst_pad_set_caps): If the caps we're setting is actually the same
2913         as the existing pad caps, just update the pointer without calling
2914         setcaps. Assert that caps is either NULL or fixed, as per the
2915         docs.
2916
2917         * gst/gstghostpad.c: Update for fixate changes.
2918
2919 2005-07-02  Andy Wingo  <wingo@pobox.com>
2920
2921         * gst/gstcaps.c:
2922         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
2923         two refcounts makes it immutable, which is enough. Doc more.
2924
2925 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
2926
2927         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
2928           Put the mini_object into GValue as a mini_object,
2929           not a gpointer, since that's how we declared
2930           the signal.
2931
2932 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2933
2934         * examples/pwg/Makefile.am:
2935           Fix buildbot again.
2936
2937 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2938
2939         * docs/pwg/building-testapp.xml:
2940           Add extra check.
2941         * examples/pwg/Makefile.am:
2942           Fix buildbot.
2943
2944 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2945
2946         * configure.ac:
2947         * examples/Makefile.am:
2948         * examples/pwg/Makefile.am:
2949         * examples/pwg/extract.pl:
2950           Enable building the PWG examples.
2951         * docs/pwg/advanced-interfaces.xml:
2952           Add URI interface stub.
2953         * docs/pwg/advanced-types.xml:
2954         * docs/pwg/other-autoplugger.xml:
2955         * docs/pwg/appendix-porting.xml:
2956         * docs/pwg/pwg.xml:
2957           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2958         * docs/pwg/building-boiler.xml:
2959         * docs/pwg/building-chainfn.xml:
2960         * docs/pwg/building-pads.xml:
2961         * docs/pwg/building-props.xml:
2962         * docs/pwg/building-state.xml:
2963         * docs/pwg/building-testapp.xml:
2964           Update the building-*.xml parts for 0.9 changes. All examples
2965           code blocks compile in examples/pwg/*.
2966
2967 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2968
2969         * docs/manual/advanced-autoplugging.xml:
2970         * docs/manual/appendix-checklist.xml:
2971         * docs/manual/appendix-integration.xml:
2972         * docs/manual/highlevel-components.xml:
2973           Fix playbin/decodebin examples, update docs a bit, mention bus
2974           instead of signals in various places, mention kmplayer and
2975           kaffeine since they have a working GStreamer backend in the KDE
2976           section.
2977
2978 2005-06-30  Wim Taymans  <wim@fluendo.com>
2979
2980         * CHANGES-0.9:
2981         * docs/design/draft-ghostpads.txt:
2982         * docs/design/draft-push-pull.txt:
2983         * docs/design/draft-query.txt:
2984         * docs/design/part-TODO.txt:
2985         * docs/design/part-query.txt:
2986         Added CHANGES-0.9 doc, updated status of other docs.
2987         
2988         * gst/gstquery.h:
2989         Remove "hmm" macro
2990
2991 2005-06-30  Wim Taymans  <wim@fluendo.com>
2992
2993         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2994         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2995         (gst_base_sink_change_state):
2996         * gst/base/gstbasesink.h:
2997         Some tweaks, only EOS and a buffer complete a preroll.
2998
2999 2005-06-30  Andy Wingo  <wingo@pobox.com>
3000
3001         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
3002         activate_push down to the internal pad as well.
3003
3004 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
3005
3006         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3007
3008         * gst/gsttaginterface.c:
3009           Some documentation fixes (#307394 and #307397).
3010
3011 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
3012
3013         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3014
3015         * gst/gstvalue.c: (gst_value_intersect_list):
3016           Fix memleak (#309125).
3017
3018 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3019
3020         * docs/manual/advanced-dataaccess.xml:
3021           Fix fakesrc example to compile; doesn't work, bug somewhere...?
3022         * docs/manual/basics-pads.xml:
3023           Add reference for filtered caps to above chapter.
3024
3025 2005-06-30  Wim Taymans  <wim@fluendo.com>
3026
3027         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
3028         (gst_bin_change_state):
3029         Probes are gone.
3030         Lame attempt at making the state change function a bit
3031         more readable.
3032
3033 2005-06-30  Wim Taymans  <wim@fluendo.com>
3034
3035         * docs/design/part-clocks.txt:
3036         * docs/design/part-element-sink.txt:
3037         * docs/design/part-events.txt:
3038         * docs/design/part-preroll.txt:
3039         * docs/design/part-states.txt:
3040         Some more tweeks and additions to the docs.
3041
3042 2005-06-30  Wim Taymans  <wim@fluendo.com>
3043
3044         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
3045         (default_have_data), (gst_pad_class_init), (gst_pad_init),
3046         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
3047         (gst_pad_check_pull_range), (gst_pad_get_range),
3048         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
3049         * gst/gstpad.h:
3050         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
3051         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3052         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3053         (gst_pad_remove_buffer_probe):
3054         Removed atomic operations, use existing LOCK.
3055         Move exception handling out of main code path.
3056
3057 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3058
3059         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
3060         (silly_return_true_function), (gst_pad_class_init),
3061         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
3062         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
3063         (gst_pad_send_event):
3064           Fix accumulator, add default value by using _emitv() instead
3065           of _emit() for signal emission.
3066
3067 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3068
3069         * docs/manual/advanced-dataaccess.xml:
3070         * examples/manual/Makefile.am:
3071           Add probe example.
3072         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
3073           Make work (??).
3074
3075 2005-06-29  Tim-Philipp M??ller  <tim at centricular dot net>
3076
3077         * gst/elements/gstfilesink.c: (gst_filesink_render):
3078           Simplify code so that we don't have to handle short
3079           writes and return GST_FLOW_ERROR if an error occured.
3080
3081 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3082
3083         * docs/gst/gstreamer-docs.sgml:
3084           Remove probes more.
3085
3086 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3087
3088         * docs/gst/gstreamer-sections.txt:
3089         * docs/gst/tmpl/gstpad.sgml:
3090         * docs/gst/tmpl/gstprobe.sgml:
3091         * gst/Makefile.am:
3092         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
3093         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
3094         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3095         (gst_pad_push_event), (gst_pad_send_event):
3096         * gst/gstpad.h:
3097         * gst/gstutils.c: (gst_pad_add_data_probe),
3098         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3099         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3100         (gst_pad_remove_buffer_probe):
3101         * gst/gstutils.h:
3102           Remove old probes, add new g-signal-based probes and some utility
3103           functions.
3104
3105 2005-06-29  Edward Hervey  <edward@fluendo.com>
3106
3107         * gst/gstelementfactory.c:
3108         * gst/gstutils.h:
3109         * gst/gstutils.c:
3110         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
3111         the definition to the header file.
3112
3113 2005-06-29  Andy Wingo  <wingo@pobox.com>
3114
3115         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
3116         plugins from the source directory.
3117
3118 2005-06-29  Wim Taymans  <wim@fluendo.com>
3119
3120         * docs/gst/tmpl/gstbuffer.sgml:
3121         * docs/gst/tmpl/gstclock.sgml:
3122         Some fixings for blantently wrong text.
3123
3124 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
3125
3126         * check/Makefile.am:
3127         * gst/gst.c: (add_path_func), (init_pre):
3128         * gst/gstregistry.c: (gst_registry_add_path):
3129           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
3130           only scan the GST_PLUGIN_PATH locations, and not add
3131           system locations
3132
3133 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
3134
3135         * docs/gst/gstreamer-sections.txt:
3136         * docs/gst/tmpl/gstbasesrc.sgml:
3137         * gst/gstelement.c:
3138         * gst/gstelement.h:
3139         * gst/gstevent.c:
3140         * gst/gstutils.c:
3141           doc fixes
3142
3143 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3144
3145         * docs/manual/advanced-autoplugging.xml:
3146           Fix autoplugging example.
3147
3148 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3149
3150         * docs/manual/advanced-autoplugging.xml:
3151         * docs/manual/mime-world.fig:
3152           Try to get autoplugging working, fix type detection. Fix text
3153           in hello-world image.
3154
3155 2005-06-29  Wim Taymans  <wim@fluendo.com>
3156
3157         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3158         (gst_base_sink_change_state):
3159         Small debug line.
3160
3161         * gst/gstclock.h:
3162         map SIGNAL and BROADCAST to the right function.
3163
3164         * gst/gstobject.h:
3165         Remove redundant braces.
3166
3167         * gst/gstpad.c: (gst_pad_set_caps):
3168         Don't call setcaps function when reseting caps to NULL.
3169
3170         * gst/gstsystemclock.c: (gst_system_clock_dispose),
3171         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
3172         (gst_system_clock_id_unschedule):
3173         Use BROADCAST as this is what we do.
3174
3175 2005-06-29  Wim Taymans  <wim@fluendo.com>
3176
3177         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3178         We are actually prerolling before commiting the state
3179         change. 
3180
3181 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3182
3183         * docs/manual/advanced-clocks.xml:
3184         * docs/manual/advanced-interfaces.xml:
3185         * docs/manual/advanced-metadata.xml:
3186         * docs/manual/advanced-position.xml:
3187         * docs/manual/advanced-schedulers.xml:
3188         * docs/manual/advanced-threads.xml:
3189         * docs/manual/appendix-porting.xml:
3190         * docs/manual/basics-bins.xml:
3191         * docs/manual/basics-bus.xml:
3192         * docs/manual/basics-elements.xml:
3193         * docs/manual/basics-helloworld.xml:
3194         * docs/manual/basics-pads.xml:
3195         * docs/manual/highlevel-components.xml:
3196         * docs/manual/manual.xml:
3197         * docs/manual/thread.fig:
3198           Update (until threads/scheduling) Application Development Manual;
3199           remove GstThread, add GstBus, add simple porting checklist, add
3200           documentation for tag writing, clocks, make all examples until this
3201           part compile and run.
3202         * examples/manual/Makefile.am:
3203           Update from changes to Application Development Manual; add bus
3204           example, remove thread example.
3205
3206 2005-06-28  Wim Taymans  <wim@fluendo.com>
3207
3208         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
3209         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
3210         (gst_bus_source_dispatch):
3211         Add debugging messages.
3212         Make internal methods static.
3213         Handle the case where the bus is flushed in the handler.
3214         
3215         * gst/gstelement.c: (gst_element_get_bus):
3216         Fix refcount in _get_bus();
3217
3218         * gst/gstpipeline.c: (gst_pipeline_change_state),
3219         (gst_pipeline_get_clock_func):
3220         Clock refcounting fixes.
3221         Handle the case where preroll timed out more gracefully.
3222         
3223         * gst/gstsystemclock.c: (gst_system_clock_dispose):
3224         Clean up the internal thread in dispose. This is needed
3225         for subclasses that actually get disposed.
3226         
3227         * gst/schedulers/threadscheduler.c:
3228         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3229         (gst_thread_scheduler_dispose):
3230         Free thread pool in dispose.
3231
3232 2005-06-28  Andy Wingo  <wingo@pobox.com>
3233
3234         * tests/network-clock-utils.scm (debug, print-event): New utils.
3235
3236         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
3237         (*packet-loss*): Unified loss probability.
3238         (network-time): Report out-of-band events.
3239
3240         * tests/plot-data: Add support for out-of-band events. Hack it
3241         into this script instead of passing it down the pipe; should fix
3242         this later.
3243
3244 2005-06-28  Wim Taymans  <wim@fluendo.com>
3245
3246         * docs/gst/gstreamer.types:
3247         * docs/gst/tmpl/gstbasesrc.sgml:
3248         * docs/gst/tmpl/gstpad.sgml:
3249         Docs fixes.
3250
3251 2005-06-28  Wim Taymans  <wim@fluendo.com>
3252
3253         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3254         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
3255         (gst_proxy_pad_do_fixatecaps):
3256         Correctly proxy the check_pull_range function.
3257
3258 2005-06-28  Andy Wingo  <wingo@pobox.com>
3259
3260         * tests/network-clock.scm: Removed need for slib.
3261         
3262 2005-06-28  Wim Taymans  <wim@fluendo.com>
3263
3264         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
3265         (gst_basesink_preroll_queue_flush):
3266         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
3267         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
3268         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3269         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
3270         (gst_proxy_pad_set_property):
3271         * gst/gstpad.c:
3272         * gst/gstpad.h:
3273         * gst/gstqueue.c: (gst_queue_init):
3274         The deprecated pad loop function is removed now.
3275
3276 2005-06-28  Andy Wingo  <wingo@pobox.com>
3277
3278         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
3279         New parameters, simulate network packet loss.
3280
3281         * tests/network-clock-utils.scm: Initialize the RNG.
3282
3283 2005-06-28  Wim Taymans  <wim@fluendo.com>
3284
3285         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
3286         (gst_basesink_event), (gst_basesink_deactivate):
3287         Flushing the preroll queue always needs to unlock the waiters.
3288
3289 2005-06-28  Edward Hervey  <edward@fluendo.com>
3290
3291         * gst/gstpipeline.c: (gst_pipeline_send_event): 
3292         Wheen a seek was successful on a pipeline, set the stream_time to the
3293         seek offset in order to have a synchronized stream_time.
3294
3295 2005-06-28  Wim Taymans  <wim@fluendo.com>
3296
3297         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3298         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
3299         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
3300         (gst_proxy_pad_do_fixatecaps):
3301         Call wrapper function instead of just calling the function
3302         pointers. This takes care of any locking and whatmore.
3303
3304 2005-06-28  Wim Taymans  <wim@fluendo.com>
3305
3306         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
3307         (gst_pad_pull_range):
3308         * gst/gstpad.h:
3309         CONNECTED -> LINKED.
3310
3311 2005-06-28  Andy Wingo  <wingo@pobox.com>
3312
3313         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
3314         source-munging commit!!!
3315
3316         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
3317         (gst_object_sink): Take gpointer arguments, not GstObject --
3318         avoids casts. Like GLib.
3319
3320         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
3321         activate.
3322
3323 2005-06-27  Andy Wingo  <wingo@pobox.com>
3324
3325         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
3326         remaining buffer.
3327
3328         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
3329         returns a sorted copy of the trace list.
3330         (gst_alloc_trace_print_live): New API, only prints traces with
3331         live objects. Sort the list.
3332         (gst_alloc_trace_print_all): Sort the list.
3333         (gst_alloc_trace_print): Align columns.
3334
3335         * gst/elements/gstttypefindelement.c:
3336         * gst/elements/gsttee.c:
3337         * gst/base/gstbasesrc.c:
3338         * gst/base/gstbasesink.c:
3339         * gst/base/gstbasetransform.c:
3340         * gst/gstqueue.c: Adapt for pad activation changes.
3341
3342         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
3343         sched.
3344         (gst_pipeline_dispose): Drop ref on sched.
3345
3346         * gst/gstpad.c (gst_pad_init): Set the default activate func.
3347         (gst_pad_activate_default): Push mode by default.
3348         (pre_activate_switch, post_activate_switch): New stubs, things to
3349         do before and after switching activation modes on pads.
3350         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
3351         the pad's activate function to choose which mode to activate.
3352         Shortcut on deactivation and call the right function directly.
3353         (gst_pad_activate_pull): New API, (de)activates a pad in pull
3354         mode.
3355         (gst_pad_activate_push): New API, same for push mode.
3356         (gst_pad_set_activate_function) 
3357         (gst_pad_set_activatepull_function) 
3358         (gst_pad_set_activatepush_function): Setters for new API.
3359
3360         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
3361         Trace all miniobjects.
3362         (gst_mini_object_make_writable): Unref the arg if we copy, like
3363         gst_caps_make_writable.
3364
3365         * gst/gstmessage.c (_gst_message_initialize): No trace init.
3366
3367         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
3368         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
3369         Adapt for new pad API.
3370
3371         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
3372
3373         * gst/gstelement.h:
3374         * gst/gstelement.c (gst_element_iterate_src_pads) 
3375         (gst_element_iterate_sink_pads): New API functions.
3376         
3377         * gst/gstelement.c (iterator_fold_with_resync): New utility,
3378         should fold into gstiterator.c in some form.
3379         (gst_element_pads_activate): Simplified via use of fold and
3380         delegation of decisions to gstpad->activate.
3381
3382         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
3383         help in debugging.
3384
3385         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
3386         class once in init, like gstmessage. Didn't run into this issue
3387         but it seems correct. Don't initialize a trace, gstminiobject does
3388         that.
3389
3390         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
3391         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
3392         to the bus.
3393         (assert_live_count): New util function, uses alloc traces to check
3394         cleanup.
3395
3396         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
3397         To be modified when unlink drops the internal pad.
3398
3399 2005-06-27  Wim Taymans  <wim@fluendo.com>
3400
3401         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
3402         (gst_bin_change_state):
3403         Cleanup the get_state() function a little, make sure it
3404         iterates the same set of elements.
3405         Added stub iterate_state_order().
3406
3407 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3408
3409         * docs/gst/gstreamer-docs.sgml:
3410         * docs/gst/gstreamer-sections.txt:
3411         * docs/gst/gstreamer.types:
3412         * docs/gst/tmpl/gstbasesink.sgml:
3413         * docs/gst/tmpl/gstbasesrc.sgml:
3414         * docs/gst/tmpl/gstbasetransform.sgml:
3415         * docs/gst/tmpl/gstelement.sgml:
3416         * docs/gst/tmpl/gstiterator.sgml:
3417         * gst/base/gstbasesrc.c:
3418         * gst/base/gstbasesrc.h:
3419         * gst/base/gstbasetransform.h:
3420         * gst/gstelement.c:
3421         * gst/gstiterator.h:
3422           adding basetransform and iterator docs
3423
3424 2005-06-27  Andy Wingo  <wingo@pobox.com>
3425
3426         * docs/design/part-activation.txt: Notes on how activation should
3427         work -- not quite implemented yet.
3428
3429 2005-06-25  Wim Taymans  <wim@fluendo.com>
3430
3431         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
3432         At least get the chain function correct, needs more
3433         fixing.
3434
3435 2005-06-25  Wim Taymans  <wim@fluendo.com>
3436
3437         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3438         (gst_basesink_handle_object), (gst_basesink_event),
3439         (gst_basesink_do_sync), (gst_basesink_handle_event),
3440         (gst_basesink_change_state):
3441         * gst/gsttask.h:
3442         Right, two problems here: ghostpads don't take locks and
3443         glib _rec_mutex_lock_full() with depth==0 still locks.
3444         Catch illegal locking and g_warn them.
3445
3446 2005-06-25  Wim Taymans  <wim@fluendo.com>
3447
3448         * check/states/sinks.c: (START_TEST), (gst_object_suite):
3449         Have to check for completion now...
3450
3451 2005-06-25  Wim Taymans  <wim@fluendo.com>
3452
3453         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3454         (gst_basesink_handle_object), (gst_basesink_event),
3455         (gst_basesink_do_sync), (gst_basesink_handle_event),
3456         (gst_basesink_change_state):
3457         * gst/gstpad.h:
3458         Unlock STREAM_LOCK whatever the recursion was.
3459
3460 2005-06-25  Wim Taymans  <wim@fluendo.com>
3461
3462         * gst/base/gstbasesink.c: (gst_basesink_set_property),
3463         (gst_basesink_preroll_queue_empty),
3464         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
3465         (gst_basesink_event), (gst_basesink_do_sync),
3466         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
3467         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
3468         (gst_basesink_change_state):
3469         Reworked the base sink, handle event and buffer serialisation
3470         correctly and removed possible deadlock.
3471         Handle EOS correctly.
3472
3473 2005-06-25  Wim Taymans  <wim@fluendo.com>
3474
3475         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
3476         (gst_pipeline_change_state):
3477         * tools/gst-launch.c: (check_intr), (event_loop), (main):
3478         Allow elements to post EOS in the state change function.
3479         Fix up -launch, make it exit the poll loop when the
3480         pipeline actually changed state.
3481         Fix up warning parsing in -launch.
3482
3483 2005-06-25  Wim Taymans  <wim@fluendo.com>
3484
3485         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
3486         (gst_tee_sink_activate):
3487         Core takes STREAM_LOCK for us now.
3488
3489 2005-06-25  Wim Taymans  <wim@fluendo.com>
3490
3491         * gst/gstelement.c: (gst_element_get_state_func),
3492         (gst_element_set_state):
3493         * gst/gstelement.h:
3494         * gst/gstmessage.c: (gst_message_parse_error),
3495         (gst_message_parse_warning):
3496         Keep track of current target state while performing a state
3497         change so that subclasses can do something interesting.
3498         Fix parsing of warning/error messages when GError is NULL.
3499
3500 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3501
3502         * docs/gst/Makefile.am:
3503         * docs/gst/gstreamer-docs.sgml:
3504         * docs/gst/gstreamer-sections.txt:
3505         * docs/gst/gstreamer.types:
3506         * docs/gst/tmpl/gstbasesink.sgml:
3507         * docs/gst/tmpl/gstbasesrc.sgml:
3508         * docs/gst/tmpl/gstbin.sgml:
3509         * docs/gst/tmpl/gstcompat.sgml:
3510         * docs/gst/tmpl/gstfakesink.sgml:
3511         * docs/gst/tmpl/gstfakesrc.sgml:
3512         * docs/gst/tmpl/gstfilesink.sgml:
3513         * docs/gst/tmpl/gstfilesrc.sgml:
3514         * docs/gst/tmpl/gstindex.sgml:
3515         * docs/manual/appendix-quotes.xml:
3516         * gst/base/gstbasesrc.h:
3517         * gst/elements/gstfakesrc.h:
3518         * gst/gstmessage.h:
3519           start pulling in base classes and elements in our docs
3520
3521 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
3522
3523         * docs/gst/Makefile.am:
3524         * docs/libs/Makefile.am:
3525           fixed make distcheck with gtk-doc 1.3
3526
3527 2005-06-23  Wim Taymans  <wim@fluendo.com>
3528
3529         * gst/gstelement.c: (gst_element_get_state_func),
3530         (gst_element_set_state), (gst_element_change_state):
3531         When the state did not change, also report NO_PREROLL
3532         when it matters.
3533
3534 2005-06-23  Wim Taymans  <wim@fluendo.com>
3535
3536         * gst/gstpad.c: (gst_pad_event_default):
3537         * gst/gstqueue.c: (gst_queue_loop):
3538         No unsafe task pausing please.
3539
3540 2005-06-23  Wim Taymans  <wim@fluendo.com>
3541
3542         * gst/schedulers/threadscheduler.c:
3543         (gst_thread_scheduler_task_start),
3544         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
3545         Ref the task before pushing it on the threadpool. This
3546         makes sure that we have a ref when the threadfunction is
3547         actually called.
3548
3549 2005-06-23  Andy Wingo  <wingo@pobox.com>
3550
3551         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
3552         offset is greater than the file's size.
3553
3554         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
3555         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
3556         * gst/gstobject.c (gst_object_class_init): Make the class lock
3557         recursive. Wim won't let me drop deep_notify. Decodebin works
3558         again, whoopdy doo.
3559
3560         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
3561         internal pad, and hacks accordingly. Doesn't do it on the target
3562         pad because we change its caps. Probably catches all cases of
3563         interest tho.
3564         (gst_ghost_pad_set_property): Connect to notify::caps as
3565         appropritate.
3566
3567         * tests/network-clock.scm (plot-simulation): Pipe data to the
3568         elite python skript.
3569
3570         * tests/network-clock-utils.scm (define-parameter): New macro,
3571         defines a parameter that can be set via the command line.
3572         (set-parameter!, parse-parameter-arguments): Command line args
3573         parser.
3574
3575         * tests/plot-data: Simple matplotlib-based plotter, takes input on
3576         stdin.
3577
3578 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
3579
3580         * gst/elements/gsttypefindelement.c:
3581         (gst_type_find_element_handle_event):
3582           Don't restart typefinding on a discont.
3583         * gst/gstelement.c: (gst_element_set_state):
3584           Debug spelling fix.
3585         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
3586           Allow changing mode of an active pad.
3587           Debug output fixes.
3588         * gst/registries/gstlibxmlregistry.c: (load_feature):
3589           Don't cast a static pad template to a normal pad template.
3590
3591 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3592
3593         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3594         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3595           remove gst_strtoll completely, since it didn't actually do
3596           anything more than what g_ascii_strtoull already does.
3597           check for range errors when deserializing
3598           do a cast for the unsigned cases; but further fixing needs
3599           a decision on what the interpretation of "(int)" and
3600           deserialization should be for values that fall outside the
3601           type's boundaries (ie, refuse, or interpret as casting)
3602
3603 2005-06-23  Wim Taymans  <wim@fluendo.com>
3604
3605         * check/Makefile.am:
3606         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
3607         * docs/design/part-live-source.txt:
3608         * docs/design/part-states.txt:
3609         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3610         (gst_basesrc_set_live), (gst_basesrc_is_live),
3611         (gst_basesrc_get_range), (gst_basesrc_activate),
3612         (gst_basesrc_change_state):
3613         * gst/base/gstbasesrc.h:
3614         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3615         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3616         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
3617         * gst/gstelement.c: (gst_element_get_state_func),
3618         (gst_element_set_state):
3619         * gst/gstelement.h:
3620         * gst/gsttypes.h:
3621         * tools/gst-launch.c: (event_loop), (main):
3622         Added support for live sources and other elements that
3623         cannot do preroll.
3624         Updated design docs, added live-source design doc.
3625         Implemented live source functionality in basesrc
3626         Fix error condition in _bin_get_state()
3627         Implement live source handling in -launch.
3628         Added check for live sources.
3629         Fixed case in GstBin where elements were changed state
3630         multiple times.
3631
3632
3633 2005-06-23  Andy Wingo  <wingo@pobox.com>
3634
3635         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
3636         borken refcounting.
3637
3638         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
3639         gst_caps_replace takes care of this for us.
3640
3641         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
3642         gst_pad_set_caps on the target, not just its setcaps() function.
3643
3644         * tests/network-clock.scm: 
3645         * tests/network-clock-utils.scm: A network clock simulator.
3646         Something of an algorithmic testbed before doing something in C.
3647
3648 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3649
3650         * check/Makefile.am:
3651         * check/gst/capslist.h:
3652           copy over from 0.8, and add two with bitmasks specified with
3653           (int) 0xFF...
3654         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
3655           add test to parse everything from capslist.h
3656         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
3657         (main):
3658           add test for structure deserialization
3659         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3660           add tests for deserialization of strings to int types
3661         * gst/gststructure.c: (gst_structure_nth_field_name):
3662         * gst/gststructure.h:
3663           add a way to get the name of a field referenced by index
3664         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3665           instead of checking if the resulting long long lies between
3666           min and max, we check if the long long would fit into
3667           a number of bytes for the final type.
3668           This fixes cases where a string represents 2^32 - 1, which
3669           when cast to int would be the (valid) -1, but is bigger than
3670           G_MAXINT
3671
3672 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3673
3674         * gst/parse/grammar.y:
3675           add a log line for type deserialization
3676
3677 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3678
3679         * check/gst/gstvalue.c: (START_TEST):
3680         * gst/gstvalue.c: (gst_value_deserialize):
3681           return long long, not int, so gint64 deserialization actually
3682           works.  Is there any flag that makes the compiler check this ?
3683           Fixes #308559
3684
3685 2005-06-22  Wim Taymans  <wim@fluendo.com>
3686
3687         * gst/gstbuffer.h:
3688         Added convenience macros for setting buffers in GValue.
3689
3690 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3691
3692         * check/gst/.cvsignore:
3693         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3694           add a test deserializing int64, and comment part out because
3695           it fails, yay !
3696
3697 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3698
3699         * check/Makefile.am:
3700         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
3701         * testsuite/Makefile.am:
3702         * testsuite/caps/Makefile.am:
3703         * testsuite/caps/value_serialize.c:
3704         * testsuite/test_gst_init.c:
3705           move a value_serialize test over
3706
3707 2005-06-20  Wim Taymans  <wim@fluendo.com>
3708
3709         * gst/gstpad.c:
3710         Small doc updates.
3711         
3712         * gst/gstvalue.c: (gst_value_compare_buffer),
3713         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
3714         (gst_value_compare_flags), (gst_value_serialize_flags),
3715         (gst_value_deserialize_flags), (_gst_value_initialize):
3716         Fix serialisation of buffers, they are not boxed types anymore
3717
3718 2005-06-20  Wim Taymans  <wim@fluendo.com>
3719
3720         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
3721         Testcase to show error in buffer-on-caps serialisation.
3722
3723 2005-06-20  Andy Wingo  <wingo@pobox.com>
3724
3725         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
3726         will be adding to later.
3727
3728         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
3729         if its socks fill with rocks.
3730         (gst_system_clock_obtain): Set the name on object construction.
3731         Avoid double-checked locking.
3732
3733 2005-06-20  Tim-Philipp M??ller  <tim at centricular dot net>
3734
3735         * gst/gsturi.c: (gst_element_make_from_uri):
3736           Fix potential endless loop.
3737
3738 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3739
3740         * check/Makefile.am:
3741           add gsttag
3742         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
3743         (main):
3744           move over from testsuite dir and clean up
3745         * configure.ac:
3746         * gst/gsttag.c:
3747         * testsuite/Makefile.am:
3748         * testsuite/tags/.cvsignore:
3749         * testsuite/tags/Makefile.am:
3750         * testsuite/tags/merge.c:
3751           remove testsuite/tags
3752
3753 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3754
3755         * docs/gst/gstreamer-sections.txt:
3756         * docs/gst/tmpl/gstenumtypes.sgml:
3757         * win32/gstenumtypes.c:
3758           clean up documentation build a little
3759
3760 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3761
3762         * check/gstcheck.h:
3763           add macros for checking refcounts on objects and caps
3764         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
3765           add some more unit tests
3766         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
3767         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
3768           fix leaked refcounts (I hope :)) so unittest works
3769         * gst/gstpad.h:
3770           whitespace removal
3771
3772 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3773
3774         * configure.ac: back to HEAD
3775
3776 === release 0.9.1 ===
3777
3778 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3779
3780         * NEWS:
3781         * RELEASE:
3782           updated
3783
3784 2005-06-17  Andy Wingo  <wingo@pobox.com>
3785
3786         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
3787         assert; it's always possible that the pad gets deactivated in
3788         between the checks in gstpad.c and the implementation. Rely on
3789         finish_preroll() to return a FLUSHING or similar instead of on the
3790         assert.
3791         
3792         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
3793         clock and post an EOS message if we come out of finish_preroll in
3794         the playing state.
3795
3796 2005-06-16  David Schleef  <ds@schleef.org>
3797
3798         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
3799         (gst_capsfilter_set_property): Allow NULL as possible value
3800         for filter_caps property, indicating GST_CAPS_ANY.
3801
3802 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3803
3804         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
3805           fix debug output
3806         * gst/schedulers/Makefile.am:
3807           use libgst prefix
3808         * gstreamer.spec.in:
3809           fix spec for it
3810
3811 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3812
3813         * gstreamer.spec.in:
3814           clean up
3815
3816 2005-06-08  Andy Wingo  <wingo@pobox.com>
3817
3818         * gst/gstutils.c: RPAD fixes all around.
3819         (gst_element_link_pads): Refcounting fixes.
3820
3821         * tools/gst-inspect.c:
3822         * tools/gst-xmlinspect.c:
3823         * parse/grammar.y:
3824         * gst/base/gsttypefindhelper.c:
3825         * gst/base/gstbasesink.c:
3826         * gst/gstqueue.c: RPAD fixes.
3827
3828         * gst/gstghostpad.h:
3829         * gst/gstghostpad.c: New ghost pad implementation as full proxy
3830         pads. The tricky thing is they provide both source and sink
3831         interfaces, since they proxy the internal pad for the external
3832         pad, and vice versa. Implement with lower-level ProxyPad objects,
3833         with the interior proxy pad as a child of the exterior ghost pad.
3834         Should write a doc on this.
3835         
3836         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
3837         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
3838         gst_object API.
3839         
3840         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
3841         pads are real pads. No ghost pads in this file. Not documenting
3842         the myriad s/RPAD/PAD/ and REALIZE fixes.
3843         (gst_pad_class_init): Add properties for "direction" and
3844         "template". Both are construct-only, so they can't change during
3845         the life of the pad. Fixes properly deriving from GstPad.
3846         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
3847         derived objects, just set properties when creating the objects via
3848         g_object_new.
3849         (gst_pad_get_parent): Implement as a function, return NULL if the
3850         parent is not an element.
3851         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
3852         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
3853         
3854         * gst/gstobject.c (gst_object_class_init): Make name a construct
3855         property. Don't set it in the object init.
3856
3857         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
3858         with UNKNOWN direction.
3859         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
3860         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
3861         (gst_element_remove_pad): Remove ghost-pad special cases.
3862         (gst_element_pads_activate): Remove rpad cruft.
3863
3864         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
3865         catch the pad's-parent-not-an-element case.
3866
3867         * gst/gst.h: Include gstghostpad.h.
3868
3869         * gst/gst.c (init_post): No more real, ghost pads.
3870
3871         * gst/Makefile.am: Add gstghostpad.[ch].
3872
3873         * check/Makefile.am:
3874         * check/gst/gstbin.c:
3875         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
3876         into a bin creates ghost pads, and that the refcounts are right.
3877         Partly moved from gstbin.c.
3878
3879 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3880
3881         * check/gst-libs/.cvsignore:
3882         * check/gst/.cvsignore:
3883         * check/pipelines/.cvsignore:
3884           ignore more
3885         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
3886         (START_TEST), (cleanup_suite), (main):
3887           add some tests related to cleanup after running pipelines
3888
3889 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3890
3891         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
3892           add a testsuite for GstBuffer
3893
3894 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3895
3896         * gst/gstminiobject.h:
3897           add defines for accessing the refcount
3898
3899 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
3900
3901         * Makefile.am: added support for html unit test coverage reports
3902
3903 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
3904
3905         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
3906           Free existing caps if the capsfilter changes. Add a FIXME about
3907           setting those caps on the pads.
3908
3909         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
3910           Before adding a ghost pad to a parent bin, check that there isn't
3911           already one for the element on the bin. Prevents infinite recursion
3912           when using decodebin in parse pipelines. Andy says he'll rewrite the
3913           way this works anyway, so ignore the hack.
3914
3915 2005-06-02  Andy Wingo  <wingo@pobox.com>
3916
3917         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
3918         file size, pass it on to the type find helper.
3919
3920         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
3921         segment_start and segment_end properly according to the seek
3922         method. Segment_end is still a bit flaky because offset can be
3923         negative for CUR and END cases, but it takes -1 as an "unset"
3924         value.
3925
3926 2005-06-02  Wim Taymans  <wim@fluendo.com>
3927
3928         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
3929         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
3930         (gst_basesink_activate):
3931         * gst/base/gstbasesink.h:
3932         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3933         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3934         (gst_pad_query), (gst_pad_start_task):
3935         * gst/gstpad.h:
3936         * gst/gstqueue.c: (gst_queue_bufferalloc),
3937         (gst_queue_handle_sink_event), (gst_queue_chain):
3938         Bufferalloc: return GstFlowReturn to more accuratly report
3939         why allocation failed.
3940
3941 2005-06-02  Wim Taymans  <wim@fluendo.com>
3942
3943         * gst/gstpipeline.c: (gst_pipeline_send_event):
3944         Take snapshot of state without blocking.
3945
3946 2005-06-02  Wim Taymans  <wim@fluendo.com>
3947
3948         * docs/design/part-TODO.txt:
3949         * docs/design/part-caps.txt:
3950         * docs/design/part-clocks.txt:
3951         * docs/design/part-negotiation.txt:
3952         * docs/design/part-preroll.txt:
3953         Small doc updates 
3954
3955 2005-05-30  Wim Taymans  <wim@fluendo.com>
3956
3957         * gst/elements/gstidentity.c: (gst_identity_event),
3958         (gst_identity_transform), (gst_identity_get_property):
3959         Protect last_message property as it is accessed from
3960         multiple threads.
3961
3962 2005-05-30  Wim Taymans  <wim@fluendo.com>
3963
3964         * gst/gstelement.c: (gst_element_init),
3965         (gst_element_pads_activate), (gst_element_change_state):
3966         Slicker pad activation code.
3967
3968 2005-05-30  Wim Taymans  <wim@fluendo.com>
3969
3970         * gst/Makefile.am:
3971         * gst/gstelement.h:
3972         * gst/gstelementfactory.h:
3973         * gst/gsttypes.h:
3974         Move elementfactory methods to separate .h file.
3975
3976 2005-05-30  Wim Taymans  <wim@fluendo.com>
3977
3978         * docs/design/part-overview.txt:
3979         * gst/gstsystemclock.h:
3980         Small typo fixes, doc updates.
3981
3982 2005-05-30  Wim Taymans  <wim@fluendo.com>
3983
3984         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3985         (init_popt_callback):
3986         Remove cpu-opt flag.
3987
3988 2005-05-30  Wim Taymans  <wim@fluendo.com>
3989
3990         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3991         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3992         * gst/gstbuffer.h:
3993         Avoid typechecking in places where not needed.
3994         Added accessor for malloc_data.
3995
3996 2005-05-30  Wim Taymans  <wim@fluendo.com>
3997
3998         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3999         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
4000         (gst_pad_configure_sink), (gst_pad_configure_src),
4001         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
4002         (gst_pad_start_task):
4003         Propagate errors from _set_caps() in configure_src/sink
4004         functions instead of returning TRUE.
4005         FLUSH events can travel up and downstream
4006
4007
4008 2005-05-30  Wim Taymans  <wim@fluendo.com>
4009
4010         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
4011         (gst_basesink_activate):
4012         Handle EOS in preroll.
4013
4014 2005-05-30  Wim Taymans  <wim@fluendo.com>
4015
4016         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
4017         (gst_queue_loop), (gst_queue_handle_src_event):
4018         Remove old pieces of code
4019         Flushing the queue in an upstream event is a very bad idea.
4020
4021 2005-05-26  Andy Wingo  <wingo@pobox.com>
4022
4023         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
4024         gst_value_set_mini_object so as to add a ref on the object (which
4025         will be removed when the value is unset).
4026
4027         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
4028         arg type in ::handoff.
4029
4030         * gst/gstelement.c (gst_element_change_state): Also deactivate
4031         pads in READY->NULL, just in case the element didn't make it to
4032         PAUSED. Wingo tested, Wim approved.
4033
4034 2005-05-26  Wim Taymans  <wim@fluendo.com>
4035
4036         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
4037         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
4038         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
4039         A flushing pad cannot be used to alloc_buffer from.
4040
4041 2005-05-26  Wim Taymans  <wim@fluendo.com>
4042
4043         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
4044         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
4045         (gst_bus_source_dispatch), (gst_bus_source_finalize),
4046         (gst_bus_create_watch), (gst_bus_add_watch_full):
4047         * gst/gstbus.h:
4048         Implement a real GSource and use g_main_context_wakeup() to
4049         signal new messages instead of the socketpair.
4050
4051 2005-05-25  Wim Taymans  <wim@fluendo.com>
4052
4053         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
4054         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
4055         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
4056         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
4057         (gst_pad_send_event), (gst_pad_start_task):
4058         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
4059         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
4060         (gst_queue_sink_activate), (gst_queue_src_activate),
4061         (gst_queue_change_state):
4062         * gst/gstqueue.h:
4063         Fix state changes for non sinks. We now change sinks, then elements
4064         with unconnected srcpads, then the rest.
4065         More efficient queue unlocking in flush and state changes.
4066         Set the pad activate mode even if it does not have an activate
4067         function.
4068
4069 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4070
4071         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
4072           Don't go in pull mode for non-seekable sources.
4073         * gst/elements/gsttypefindelement.h:
4074         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4075         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
4076         (free_entry), (stop_typefinding),
4077         (gst_type_find_element_handle_event), (find_peek),
4078         (gst_type_find_element_chain), (do_pull_typefind),
4079         (gst_type_find_element_change_state):
4080           Allow typefinding (w/o seeking) in push-mode, simplified version
4081           of what was in 0.8.
4082         * gst/gstutils.c: (gst_buffer_join):
4083         * gst/gstutils.h:
4084           gst_buffer_join() from 0.8.
4085
4086 2005-05-25  Wim Taymans  <wim@fluendo.com>
4087
4088         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
4089         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
4090         (gst_pad_send_event), (gst_pad_start_task):
4091         Disable attempt at mode switching until it is figured out.
4092
4093 2005-05-25  Wim Taymans  <wim@fluendo.com>
4094
4095         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
4096         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
4097         (gst_basesink_finish_preroll), (gst_basesink_chain),
4098         (gst_basesink_loop), (gst_basesink_activate),
4099         (gst_basesink_change_state):
4100         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
4101         (gst_basesrc_get_range), (gst_basesrc_loop),
4102         (gst_basesrc_activate):
4103         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4104         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4105         (gst_real_pad_init), (gst_real_pad_set_property),
4106         (gst_real_pad_get_property), (gst_pad_set_active),
4107         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
4108         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
4109         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
4110         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
4111         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4112         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
4113         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
4114         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
4115         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
4116         (gst_pad_stop_task):
4117         * gst/gstpad.h:
4118         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
4119         (gst_queue_loop), (gst_queue_src_activate):
4120         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
4121         (gst_task_get_state):
4122         * gst/gsttask.h:
4123         * gst/schedulers/threadscheduler.c:
4124         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
4125         Implement gst_pad_pause/start/stop_task(), take STREAM lock
4126         in task function.
4127         Remove ACTIVE pad flag, use FLUSHING everywhere
4128         Added _pad_chain(), _pad_get_range() to call chain/getrange 
4129         functions.
4130         Add locks around IS_FLUSHING when reading.
4131         Take STREAM lock in chain(), get_range() functions so plugins
4132         don't need to take it anymore.
4133         
4134
4135
4136 2005-05-25  Wim Taymans  <wim@fluendo.com>
4137
4138         * tools/gst-launch.c: (event_loop):
4139         Unref message after using its contents instead of
4140         before.
4141
4142 2005-05-24  Wim Taymans  <wim@fluendo.com>
4143
4144         * docs/design/draft-ghostpads.txt:
4145         * docs/design/draft-push-pull.txt:
4146         * docs/design/draft-query.txt:
4147         * docs/design/part-overview.txt:
4148         Docs updates, added general overview doc.
4149
4150 2005-05-21  David Schleef  <ds@schleef.org>
4151
4152         * docs/gst/tmpl/old/GstBin.sgml:
4153         * docs/gst/tmpl/old/GstBuffer.sgml:
4154         * docs/gst/tmpl/old/GstCaps.sgml:
4155         * docs/gst/tmpl/old/GstClock.sgml:
4156         * docs/gst/tmpl/old/GstCompat.sgml:
4157         * docs/gst/tmpl/old/GstData.sgml:
4158         * docs/gst/tmpl/old/GstElement.sgml:
4159         * docs/gst/tmpl/old/GstEvent.sgml:
4160         * docs/gst/tmpl/old/GstIndex.sgml:
4161         * docs/gst/tmpl/old/GstStructure.sgml:
4162         * docs/gst/tmpl/old/GstTag.sgml:
4163         * docs/gst/tmpl/old/cothreads.sgml:
4164         * docs/gst/tmpl/old/cothreads_compat.sgml:
4165         * docs/gst/tmpl/old/gettext.sgml:
4166         * docs/gst/tmpl/old/gobject2gtk.sgml:
4167         * docs/gst/tmpl/old/grammar.tab.sgml:
4168         * docs/gst/tmpl/old/gst-i18n-app.sgml:
4169         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
4170         * docs/gst/tmpl/old/gst_private.sgml:
4171         * docs/gst/tmpl/old/gstaggregator.sgml:
4172         * docs/gst/tmpl/old/gstarch.sgml:
4173         * docs/gst/tmpl/old/gstatomic_impl.sgml:
4174         * docs/gst/tmpl/old/gstbufferstore.sgml:
4175         * docs/gst/tmpl/old/gstdata_private.sgml:
4176         * docs/gst/tmpl/old/gstdisksink.sgml:
4177         * docs/gst/tmpl/old/gstdisksrc.sgml:
4178         * docs/gst/tmpl/old/gstelementfactory.sgml:
4179         * docs/gst/tmpl/old/gstextratypes.sgml:
4180         * docs/gst/tmpl/old/gstfakesink.sgml:
4181         * docs/gst/tmpl/old/gstfakesrc.sgml:
4182         * docs/gst/tmpl/old/gstfdsink.sgml:
4183         * docs/gst/tmpl/old/gstfdsrc.sgml:
4184         * docs/gst/tmpl/old/gstfilesink.sgml:
4185         * docs/gst/tmpl/old/gstfilesrc.sgml:
4186         * docs/gst/tmpl/old/gsthttpsrc.sgml:
4187         * docs/gst/tmpl/old/gstidentity.sgml:
4188         * docs/gst/tmpl/old/gstindexfactory.sgml:
4189         * docs/gst/tmpl/old/gstmarshal.sgml:
4190         * docs/gst/tmpl/old/gstmd5sink.sgml:
4191         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
4192         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
4193         * docs/gst/tmpl/old/gstpadtemplate.sgml:
4194         * docs/gst/tmpl/old/gstpipefilter.sgml:
4195         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
4196         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
4197         * docs/gst/tmpl/old/gstshaper.sgml:
4198         * docs/gst/tmpl/old/gstspider.sgml:
4199         * docs/gst/tmpl/old/gstspideridentity.sgml:
4200         * docs/gst/tmpl/old/gststatistics.sgml:
4201         * docs/gst/tmpl/old/gsttee.sgml:
4202         * docs/gst/tmpl/old/gsttimecache.sgml:
4203         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
4204         * docs/gst/tmpl/old/gstxmlregistry.sgml:
4205         * docs/gst/tmpl/old/gthread-cothreads.sgml:
4206         * docs/gst/tmpl/old/types.sgml:
4207           I didn't intend to add these or check them in.
4208
4209 2005-05-19  David Schleef  <ds@schleef.org>
4210
4211         * configure.ac: Use -no-common everywhere.  In a sane world, it
4212           would be the default in libtool, because without it, you can't
4213           build DLLs on Windows.
4214         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
4215         * docs/gst/gstreamer-sections.txt:
4216         * docs/gst/tmpl/gstcpu.sgml:
4217         * docs/gst/tmpl/gstdata.sgml:
4218         * docs/gst/tmpl/gstthread.sgml:
4219
4220 2005-05-19  David Schleef  <ds@schleef.org>
4221
4222         * gst/gstminiobject.c: (gst_value_set_mini_object),
4223         (gst_value_take_mini_object), (gst_value_get_mini_object):
4224         * gst/gstminiobject.h: Add GValue set/get functions.
4225
4226 2005-05-19  Wim Taymans  <wim@fluendo.com>
4227
4228         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
4229         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
4230         (gst_subbuffer_init), (gst_buffer_is_span_fast):
4231         * gst/gstbuffer.h:
4232         * gst/gstbus.c: (gst_bus_post):
4233         * gst/gstelement.c: (gst_element_get_random_pad):
4234         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
4235         Make subbufer unref the parent in finalize.
4236         some more debugging info.
4237
4238
4239 2005-05-19  Wim Taymans  <wim@fluendo.com>
4240
4241         * gst/base/gstbasesink.c: (gst_basesink_class_init),
4242         (gst_basesink_init), (gst_basesink_finalize),
4243         (gst_basesink_activate), (gst_basesink_change_state):
4244         Don't free preroll queue too early.
4245
4246 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4247
4248         * gst/Makefile.am:
4249         * gst/ROADMAP:
4250           Hi, I'm outdated. Please shoot me.
4251
4252 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4253
4254         * gst/gstpipeline.c: (gst_pipeline_send_event):
4255           Do not access variables after they have been deleted.
4256
4257 2005-05-19  Wim Taymans  <wim@fluendo.com>
4258
4259         * tools/gst-inspect.c: (print_plugin_features):
4260         A plugin feature does unfortunatly not use the
4261         object name yet...
4262
4263 2005-05-18  Wim Taymans  <wim@fluendo.com>
4264
4265         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
4266         Port _span() functions to new subbuffers.
4267
4268 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4269
4270         * gst/gstbin.c: (gst_bin_add_func):
4271           Fix clock settery in bins when adding kids after the clock has
4272           been selected.
4273
4274 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4275
4276         * gst/elements/gstidentity.c: (gst_identity_class_init):
4277           Workaround until signals support GstMiniObject.
4278
4279 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
4280
4281         * gst/gstbuffer.c:
4282         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
4283
4284 2005-05-18  Wim Taymans  <wim@fluendo.com>
4285
4286         * gst/base/Makefile.am:
4287         * gst/base/gstadapter.c: (gst_adapter_base_init),
4288         (gst_adapter_class_init), (gst_adapter_init),
4289         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
4290         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
4291         (gst_adapter_flush), (gst_adapter_available),
4292         (gst_adapter_available_fast):
4293         * gst/base/gstadapter.h:
4294         Ported and added adapter to the base classes.
4295
4296 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4297
4298         * gst/gst.c:
4299         * gst/gstmessage.c:
4300           Make sure the class is reffed/unreffed once before threads can be
4301           used.  Fixes #304551.
4302
4303 2005-05-17  Wim Taymans  <wim@fluendo.com>
4304
4305         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
4306         (gst_basesink_chain_unlocked), (gst_basesink_activate):
4307         * gst/gstminiobject.c: (gst_mini_object_get_type),
4308         (gst_mini_object_free):
4309         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
4310         (gst_pad_push), (gst_pad_push_event):
4311         * gst/gstqueue.c: (gst_queue_change_state):
4312         Don't queue buffers in basesink when we are flushing.
4313         Unref buffer when flushing in basesink.
4314         Flush queue when going to READY
4315         Unref buffer when _push() returns an error.
4316         Don't free MiniObject instance when refcount is incremented
4317         in _finalize() so that we can recover objects.
4318
4319 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4320
4321         * docs/manual/advanced-schedulers.xml:
4322         * docs/manual/appendix-checklist.xml:
4323         * docs/pwg/advanced-clock.xml:
4324         * docs/pwg/advanced-interfaces.xml:
4325         * docs/pwg/advanced-request.xml:
4326         * docs/pwg/advanced-types.xml:
4327         * docs/pwg/intro-preface.xml:
4328         * examples/plugins/example.c: (gst_example_get_type),
4329         (gst_example_class_init), (gst_example_chain),
4330         (gst_example_set_property), (gst_example_get_property),
4331         (gst_example_change_state), (plugin_init):
4332         * examples/plugins/example.h:
4333           small doc fixes
4334
4335 2005-05-17  Wim Taymans  <wim@fluendo.com>
4336
4337         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
4338         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
4339         * gst/gstqueue.c: (gst_queue_change_state):
4340         Clear queue when going to READY.
4341         Remove IN_SETCAPS flag too.
4342
4343 2005-05-17  Tim-Philipp M??ller  <tim at centricular dot net>
4344
4345         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
4346           Remove implicit cast from gboolean to GstElementStateReturn;
4347           make sure we still return failure in paused => ready case if
4348           the parent class fails to change state and our own stop 
4349           vfunc succeeds.
4350
4351 2005-05-17  Wim Taymans  <wim@fluendo.com>
4352
4353         * tools/gst-launch.c: (event_loop):
4354         Message was unreffed too soon.
4355
4356 2005-05-16  Andy Wingo  <wingo@pobox.com>
4357
4358         * gst/gstbin.c (sink_iterator_filter): Err... um...
4359
4360         * check/gst/gstbin.c (test_ghost_pads): New test for the
4361         ghosting-if-elements-not-in-same-bin behavior.
4362
4363 2005-05-16  David Schleef  <ds@schleef.org>
4364
4365         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
4366         accessing refcount directly.
4367
4368 2005-05-15  David Schleef  <ds@schleef.org>
4369
4370         * check/Makefile.am: remove GstData checks
4371         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
4372         * gst/Makefile.am: add miniobject, remove data
4373         * gst/gst.h: add miniobject, remove data
4374         * gst/gstdata.c: remove
4375         * gst/gstdata.h: remove
4376         * gst/gstdata_private.h: remove
4377         * gst/gsttypes.h: remove GstEvent and GstMessage
4378         * gst/gstelement.c: (gst_element_post_message): fix for API changes
4379         * gst/gstmarshal.list: change BOXED -> OBJECT
4380
4381         Implement GstMiniObject.
4382         * gst/gstminiobject.c:
4383         * gst/gstminiobject.h:
4384
4385         Modify to be subclasses of GstMiniObject.
4386         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
4387         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
4388         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
4389         (gst_subbuffer_get_type), (gst_subbuffer_init),
4390         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
4391         (gst_buffer_span):
4392         * gst/gstbuffer.h:
4393         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
4394         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
4395         (_gst_event_copy), (gst_event_new):
4396         * gst/gstevent.h:
4397         * gst/gstmessage.c: (_gst_message_initialize),
4398         (gst_message_get_type), (gst_message_class_init),
4399         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
4400         (gst_message_new), (gst_message_new_error),
4401         (gst_message_new_warning), (gst_message_new_tag),
4402         (gst_message_new_state_changed), (gst_message_new_application):
4403         * gst/gstmessage.h:
4404         * gst/gstprobe.c: (gst_probe_perform),
4405         (gst_probe_dispatcher_dispatch):
4406         * gst/gstprobe.h:
4407         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
4408         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
4409         (_gst_query_copy), (gst_query_new):
4410
4411         Update elements for GstData -> GstMiniObject changes
4412         * gst/gstquery.h:
4413         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
4414         (gst_queue_chain), (gst_queue_loop):
4415         * gst/elements/gstbufferstore.c:
4416         (gst_buffer_store_add_buffer_func),
4417         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
4418         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4419         (gst_fakesink_render):
4420         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4421         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
4422         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
4423         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
4424         (gst_filesrc_create_read):
4425         * gst/elements/gstidentity.c: (gst_identity_class_init):
4426         * gst/elements/gsttypefindelement.c:
4427         (gst_type_find_element_src_event), (free_entry_buffers),
4428         (gst_type_find_element_handle_event):
4429         * libs/gst/dataprotocol/dataprotocol.c:
4430         (gst_dp_header_from_buffer):
4431         * libs/gst/dataprotocol/dataprotocol.h:
4432         * libs/gst/dataprotocol/dp-private.h:
4433
4434 2005-05-15  David Schleef  <ds@schleef.org>
4435
4436         * gst/elements/gstelements.c: Don't include headers that were
4437         just removed.
4438
4439 2005-05-15  David Schleef  <ds@schleef.org>
4440
4441         * gst/elements/Makefile.am: Remove some elements that don't
4442         need to be in the core (or even exist at all).
4443         * gst/elements/gstaggregator.c:
4444         * gst/elements/gstaggregator.h:
4445         * gst/elements/gstmd5sink.c:
4446         * gst/elements/gstmd5sink.h:
4447         * gst/elements/gstmultifilesrc.c:
4448         * gst/elements/gstmultifilesrc.h:
4449         * gst/elements/gstpipefilter.c:
4450         * gst/elements/gstpipefilter.h:
4451         * gst/elements/gstshaper.c:
4452         * gst/elements/gstshaper.h:
4453         * gst/elements/gststatistics.c:
4454         * gst/elements/gststatistics.h:
4455         * po/POTFILES.in: Remove above files.
4456
4457 2005-05-14  Andy Wingo  <wingo@pobox.com>
4458
4459         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
4460         so as to get the refs right.
4461         (sink_iterator_filter): New function, wraps bin_element_is_sink,
4462         unreffing objects that don't pass the filter.
4463
4464         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
4465         gst_element_set_bus.
4466         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
4467         normal cases, this will destroy the bus.
4468
4469         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
4470         object.
4471
4472         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
4473         has no sinks.
4474
4475 2005-05-13  Andy Wingo  <wingo@pobox.com>
4476
4477         * gst/gstutils.c (gst_element_link_pads): Instead of calling
4478         gst_pad_link, call pad_link_maybe_ghosting,
4479         (pad_link_maybe_ghosting): Links pads, making sure that the
4480         elements being linked are in the same bin.
4481         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
4482         Helpers for pad_link_maybe_ghosting.
4483
4484 2005-05-13  Tim-Philipp M??ller  <tim at centricular dot net>
4485
4486         * configure.ac:
4487           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
4488
4489 2005-05-13  Tim-Philipp M??ller  <tim at centricular dot net>
4490
4491         * docs/design/part-element-source.txt:
4492           Mention GstPushSrc
4493
4494 2005-05-12  Wim Taymans  <wim@fluendo.com>
4495
4496         * gst/base/gstbasesink.c: (gst_basesink_init),
4497         (gst_basesink_activate):
4498         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
4499         (gst_basesrc_is_seekable):
4500         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4501         (bin_element_is_sink), (gst_bin_change_state):
4502         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
4503         * gst/gstelement.h:
4504         Identify sinks by their flag to avoid overly complicated
4505         checks (fow now).
4506         Do state changes even for elements not reachable from the
4507         sinks.
4508         BaseSink is a sink now :)
4509         Some more debugging info in the basesrc.
4510
4511
4512 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4513
4514         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
4515           Implement _query on a bin, similar to _send_event.
4516
4517 2005-05-12  Tim-Philipp M??ller  <tim at centricular dot net>
4518
4519         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
4520           Discont event offset format should be GST_FORMAT_BYTES,
4521           not GST_FORMAT_TIME.
4522
4523 2005-05-12  Wim Taymans  <wim@fluendo.com>
4524
4525         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
4526         Same fix as Ronald's but without the signal. 
4527
4528 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4529
4530         * gst/gstutils.c: (gst_element_query_position):
4531           No, an element is not a pad.
4532
4533 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4534
4535         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
4536         (gst_bin_get_state):
4537           If a child is removed from a bin while we remove the child from
4538           the bin and while we're retrieving its state, signal this to the
4539           get_state function so we abort the wait (instead of waiting for
4540           a timeout) and can immediately re-iterate over all other elements.
4541
4542 2005-05-12  Wim Taymans  <wim@fluendo.com>
4543
4544         * gst/base/Makefile.am:
4545         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
4546         (gst_basesrc_start):
4547         * gst/base/gstbasesrc.h:
4548         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
4549         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
4550         (gst_pushsrc_init), (gst_pushsrc_create):
4551         * gst/base/gstpushsrc.h:
4552         Added is_seekable to BaseSrc
4553         Added simple PushSrc.
4554
4555 2005-05-11  Wim Taymans  <wim@fluendo.com>
4556
4557         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
4558         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4559         (gst_element_link_pads), (gst_element_query_position),
4560         (gst_element_query_convert), (intersect_caps_func),
4561         (gst_pad_query_position), (gst_pad_query_convert):
4562         Fix refcounting in utils function.
4563         No point in trying to activate a pad when it's added, it could
4564         be added from the state change function and then we deadlock, the
4565         element has to decide what to do.
4566
4567 2005-05-10  Andy Wingo  <wingo@pobox.com>
4568
4569         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
4570         *all* the arguments.
4571
4572         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
4573         stream lock if it's a FLUSH_DONE; normal flushes don't get the
4574         lock (according to the docs -- if this is wrong change the docs).
4575
4576         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
4577         flush messages in the NULL state.
4578
4579         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
4580         message immediately and return.
4581         (gst_bus_set_flushing): New function. If a bus is flushing, it
4582         flushes out any queued messages and immediately unrefs new
4583         messages. This is so when an element goes to NULL, all of the
4584         unhandled messages coming from it can be freed, and their
4585         references to the element dropped. In other words: message source
4586         ref considered harmful :P
4587
4588         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
4589         we're finished with it.
4590
4591         * gst/gstmessage.c (gst_message_new_state_changed): 
4592
4593 2005-05-10  Wim Taymans  <wim@fluendo.com>
4594
4595         * gst/gstvalue.c: (gst_value_compare_flags),
4596         (gst_value_serialize_flags), (gst_value_deserialize_flags),
4597         (_gst_value_initialize):
4598         Added flags serialize/deserialize/compare code.
4599
4600 2005-05-09  Andy Wingo  <wingo@pobox.com>
4601
4602         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
4603         Intersect the peer's caps with our caps.
4604
4605 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4606
4607         * gst/base/gsttypefindhelper.c: (helper_find_peek):
4608         * gst/elements/gsttypefindelement.c: (find_peek):
4609           Handle negative offsets better. Fixes decodebin.
4610
4611 2005-05-09  Wim Taymans  <wim@fluendo.com>
4612
4613         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
4614         (gst_base_transform_event):
4615         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
4616         Implement accept_caps.
4617         Fix silly lock/unlock mismatch in base class.
4618
4619 2005-05-09  Wim Taymans  <wim@fluendo.com>
4620
4621         * docs/design/draft-push-pull.txt:
4622         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
4623         * gst/elements/gstfilesink.c: (gst_filesink_init),
4624         (gst_filesink_query):
4625         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4626         (gst_type_find_handle_src_query), (find_element_get_length):
4627         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
4628         * gst/gstelement.h:
4629         * gst/gstmessage.c:
4630         * gst/gstmessage.h:
4631         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
4632         (gst_real_pad_get_caps_unlocked),
4633         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
4634         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4635         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
4636         (gst_real_pad_dispose), (gst_real_pad_finalize),
4637         (gst_pad_load_and_link), (gst_pad_save_thyself),
4638         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
4639         (gst_pad_check_pull_range), (gst_pad_pull_range),
4640         (gst_pad_template_get_type), (gst_pad_template_class_init),
4641         (gst_pad_template_init), (gst_pad_template_dispose),
4642         (name_is_valid), (gst_static_pad_template_get),
4643         (gst_pad_template_new), (gst_static_pad_template_get_caps),
4644         (gst_pad_template_get_caps), (gst_pad_set_element_private),
4645         (gst_pad_get_element_private), (gst_pad_start_task),
4646         (gst_pad_pause_task), (gst_pad_stop_task),
4647         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
4648         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
4649         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
4650         (gst_ghost_pad_new):
4651         * gst/gstpad.h:
4652         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
4653         (gst_query_new_position), (gst_query_set_position),
4654         (gst_query_parse_position), (gst_query_new_convert),
4655         (gst_query_set_convert), (gst_query_parse_convert):
4656         * gst/gstquery.h:
4657         * gst/gstqueryutils.c:
4658         * gst/gstqueryutils.h:
4659         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4660         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
4661         (gst_queue_handle_src_query):
4662         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4663         (gst_element_query_position), (gst_element_query_convert),
4664         (intersect_caps_func), (gst_pad_query_position),
4665         (gst_pad_query_convert):
4666         * gst/gstutils.h:
4667         * tools/gst-inspect.c: (print_pad_info):
4668         * tools/gst-xmlinspect.c: (print_element_info):
4669         Remove old query functions. Ported old code.
4670         Added position/convert helper functions to gstutils.
4671         Reordered gstpad.c code, grouping relevant things.
4672         Remove gst_message_new(), always need to speficy a specific
4673         message.
4674
4675
4676 2005-05-09  Andy Wingo  <wingo@pobox.com>
4677
4678         * gst/gstiterator.h: Add some includes.
4679
4680         * gst/gstqueryutils.h: Include more headers.
4681
4682         * gst/gstpad.h:
4683         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
4684         some uses of gst_pad_query.
4685
4686         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
4687         NULL out parameters.
4688         (gst_query_new_position): New proc, allocates a new position
4689         query.
4690
4691         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
4692         gstqueryutils.c to the build.
4693
4694         * gst/gststructure.c (gst_structure_set_valist): Implement with
4695         the generic G_VALUE_COLLECT.
4696         
4697 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
4698
4699         * gst/Makefile.am: (gst_headers):
4700         Added gstqueryutils.h to the list of headers to install, that was
4701         a 'nachty' move wingo :)
4702
4703 2005-05-06  Andy Wingo  <wingo@pobox.com>
4704
4705         * gst/gstquery.h
4706         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
4707         GstData, init a memchunk.
4708         (standard_definitions): Add a few query types, deprecate a few.
4709         (gst_query_get_type): New proc.
4710         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
4711         implementation.
4712         (gst_query_new_application, gst_query_get_structure): New public
4713         procs.
4714
4715         * docs/design/draft-query.txt: Removed LINKS from the query types,
4716         because all the rest can be dispatched to other pads -- seemed
4717         ugly to have a query that couldn't be dispatched. internal_links
4718         is fine as a pad method.
4719
4720         * gst/gstpad.h: Add query2 as a pad method, add the new functions
4721         in gstpad.c, but maintain binary compatibility for the moment.
4722         Will fix before 0.9 is out.
4723
4724         * gst/gstqueryutils.c: 
4725         * gst/gstqueryutils.h: New files, implement 3 methods for each
4726         query type: parse_query, parse_response, and set. Probably need an
4727         allocator as well.
4728
4729         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
4730
4731         * gst/elements/gstfilesink.c (gst_filesink_query2):
4732         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
4733         query_types, and formats methods.
4734
4735         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
4736         (gst_pad_set_query2_function): New functions.
4737         (gst_real_pad_init): Set query2_default as the default query2
4738         function. Basically just dispatches to internally linked pads.
4739
4740         Needs review!
4741         
4742         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
4743         without using the atomic operations. Only one thread can possibly
4744         be accessing the data at this point. Changed so as to avoid
4745         gst_atomic operations.
4746
4747 2005-05-06  Wim Taymans  <wim@fluendo.com>
4748
4749         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
4750         Also set caps if we use the fallback buffer alloc.
4751
4752 2005-05-06  Tim-Philipp M??ller  <tim at centricular dot net>
4753
4754         * docs/gst/Makefile.am:
4755         * docs/gst/gstreamer-docs.sgml:
4756         * docs/gst/gstreamer-sections.txt:
4757         * docs/gst/tmpl/gstatomic.sgml:
4758         * docs/gst/tmpl/gstmemchunk.sgml:
4759         * testsuite/elements/struct_i386.h:
4760         * win32/GStreamer.vcproj:
4761         * win32/Makefile:
4762           Purge GstAtomic stuff from docs and win32 makefiles as well
4763
4764 2005-05-06  Wim Taymans  <wim@fluendo.com>
4765
4766         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
4767         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
4768         * gst/gstpad.c: (gst_pad_peer_get_caps):
4769         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4770         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
4771         (gst_queue_src_activate), (gst_queue_change_state):
4772         * gst/gstqueue.h:
4773         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4774         (intersect_caps_func):
4775         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
4776         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
4777         Some fixes for the peer_get_caps() change.
4778
4779 2005-05-06  Wim Taymans  <wim@fluendo.com>
4780
4781         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
4782         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
4783         (gst_basesink_activate):
4784         Actually do something with error codes returned from the push
4785         functions.
4786
4787 2005-05-06  Wim Taymans  <wim@fluendo.com>
4788
4789         * docs/design/part-element-sink.txt:
4790         * docs/design/part-element-source.txt:
4791         * gst/base/gstbasesink.c: (gst_basesink_class_init),
4792         (gst_basesink_event), (gst_basesink_activate):
4793         * gst/base/gstbasesink.h:
4794         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
4795         (gst_basesrc_activate):
4796         * gst/base/gstbasesrc.h:
4797         * gst/gstelement.c: (gst_element_pads_activate):
4798         Some more documentation.
4799         Fixed scheduling decision in _pads_activate().
4800
4801 2005-05-05  Andy Wingo  <wingo@pobox.com>
4802
4803         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
4804         the test suite.
4805
4806 2005-05-05  Wim Taymans  <wim@fluendo.com>
4807
4808         * gst/base/Makefile.am:
4809         * gst/base/gstbasesink.h:
4810         * gst/base/gstbasesrc.c: (gst_basesrc_init),
4811         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
4812         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
4813         (gst_collectpads_class_init), (gst_collectpads_init),
4814         (gst_collectpads_finalize), (gst_collectpads_new),
4815         (gst_collectpads_set_function), (gst_collectpads_add_pad),
4816         (find_pad), (gst_collectpads_remove_pad),
4817         (gst_collectpads_is_active), (gst_collectpads_collect),
4818         (gst_collectpads_collect_range), (gst_collectpads_start),
4819         (gst_collectpads_stop), (gst_collectpads_peek),
4820         (gst_collectpads_pop), (gst_collectpads_available),
4821         (gst_collectpads_read), (gst_collectpads_flush),
4822         (gst_collectpads_chain):
4823         * gst/base/gstcollectpads.h:
4824         * gst/elements/Makefile.am:
4825         * gst/elements/gstelements.c:
4826         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4827         (gst_fakesink_get_times), (gst_fakesink_event),
4828         (gst_fakesink_preroll), (gst_fakesink_render):
4829         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
4830         (gst_filesink_init), (gst_filesink_set_location),
4831         (gst_filesink_open_file), (gst_filesink_close_file),
4832         (gst_filesink_pad_query), (gst_filesink_event),
4833         (gst_filesink_render), (gst_filesink_change_state):
4834         * gst/elements/gstfilesink.h:
4835         Added object to help in making collect pad based elements.
4836         Ported filesink.
4837         Make event function in sink baseclass return gboolean.
4838
4839 2005-05-05  Wim Taymans  <wim@fluendo.com>
4840
4841         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
4842         (gst_bin_get_by_name):
4843         * gst/gstbuffer.h:
4844         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
4845         (gst_clock_finalize):
4846         * gst/gstdata.c: (gst_data_replace):
4847         * gst/gstdata.h:
4848         * gst/gstelement.c: (gst_element_request_pad),
4849         (gst_element_pads_activate):
4850         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
4851         (gst_object_unref):
4852         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4853         (gst_pad_set_checkgetrange_function),
4854         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
4855         (gst_pad_check_pull_range), (gst_pad_pull_range),
4856         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4857         (gst_pad_pause_task), (gst_pad_stop_task):
4858         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4859         (gst_element_request_pad), (gst_pad_proxy_getcaps):
4860         Fix name lookup in GstBin.
4861         Added _data_replace() function and _buffer_replace()
4862         Use finalize method to clean up clock.
4863         Fix refcounting on request pads.
4864         Fix pad schedule mode error.
4865         Some more object refcounting debug info,
4866
4867
4868 2005-05-04  Andy Wingo <wingo@pobox.com>
4869
4870         * check/Makefile.am:
4871         * docs/gst/tmpl/gstatomic.sgml:
4872         * docs/gst/tmpl/gstplugin.sgml:
4873         * gst/base/gstbasesink.c: (gst_basesink_activate):
4874         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
4875         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
4876         (gst_basesrc_query), (gst_basesrc_set_property),
4877         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
4878         (gst_basesrc_activate):
4879         * gst/base/gstbasesrc.h:
4880         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
4881         (gst_base_transform_src_activate):
4882         * gst/elements/gstelements.c:
4883         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4884         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
4885         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4886         * gst/elements/gsttypefindelement.c: (find_element_get_length),
4887         (gst_type_find_element_checkgetrange),
4888         (gst_type_find_element_activate):
4889         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
4890         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
4891         (gst_caps_load_thyself):
4892         * gst/gstelement.c: (gst_element_pads_activate),
4893         (gst_element_save_thyself), (gst_element_restore_thyself):
4894         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
4895         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
4896         * gst/gstpad.h:
4897         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
4898         (gst_xml_parse_file), (gst_xml_parse_memory),
4899         (gst_xml_get_element), (gst_xml_make_element):
4900         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4901         (_file_index_id_save_xml), (gst_file_index_commit):
4902         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
4903         (read_enum), (load_pad_template), (load_feature), (load_plugin),
4904         (load_paths):
4905         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
4906         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
4907         * tools/gst-complete.c: (main):
4908         * tools/gst-compprep.c: (main):
4909         * tools/gst-inspect.c: (print_element_properties_info):
4910         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
4911         * tools/gst-xmlinspect.c: (print_element_properties):
4912         GCC 4 fixen.
4913         
4914 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4915
4916         * gst/gstplugin.c: (gst_plugin_check_module),
4917         (gst_plugin_check_file), (gst_plugin_load_file):
4918             apply patch from #172526 to make register work on MacOSX
4919
4920 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4921
4922         * docs/gst/tmpl/gstconfig.sgml:
4923         * gst/gstconfig.h.in:
4924           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
4925         * testsuite/debug/printf_extension.c: (main):
4926           Do not use GST_PTR_FORMAT on pointers to types with
4927           sizeof < sizeof(gpointer).  Fixes test on 64-bit
4928         * testsuite/elements/property.h:
4929           use correct printf format
4930
4931 2005-05-02  Wim Taymans  <wim@fluendo.com>
4932
4933         * docs/design/draft-push-pull.txt:
4934         * docs/design/draft-query.txt:
4935         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
4936         (gst_basesrc_start):
4937         Added draft for new query API.
4938         Added draft for better selecting scheduling methods.
4939         Make basesrc ignore length if the subclass does not support
4940         it.
4941
4942 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4943
4944         * gst/Makefile.am:
4945           possible fixes for automake-1.5 - _LIBADD is reserved
4946
4947 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4948
4949         * docs/faq/Makefile.am:
4950         * docs/manual/Makefile.am:
4951         * docs/manuals.mak:
4952         * docs/pwg/Makefile.am:
4953         * gst/Makefile.am:
4954           possible fixes for automake-1.5
4955
4956 2005-04-28  Wim Taymans  <wim@fluendo.com>
4957
4958         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4959         (gst_basesink_pad_getcaps), (gst_basesink_init),
4960         (gst_basesink_do_sync):
4961         * gst/gstclock.c: (gst_clock_entry_new):
4962         * gst/gstevent.c: (gst_event_discont_get_value):
4963         * gst/gstpipeline.c: (pipeline_bus_handler),
4964         (gst_pipeline_change_state):
4965         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4966         Better debugging of clocking info.
4967         Allow NULL values when getting discont values.
4968
4969 2005-04-27  Wim Taymans  <wim@fluendo.com>
4970
4971         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4972         * check/gst/gstpad.c: (gst_pad_suite):
4973         Increase timeout for checks.
4974
4975 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4976
4977         * check/Makefile.am:
4978           fix the broken rule for cleanup.  Apparently this rule is
4979           only needed on FC2, so maybe this warrants further autotool
4980           inspection.
4981
4982 2005-04-26  Wim Taymans  <wim@fluendo.com>
4983
4984         * gst/gsttrashstack.h:
4985         Ooohh. a nasty one! After having a failed pop() from the stack,
4986         it's possible that the stack is empty. In that case, don't
4987         follow the NULL pointer.
4988
4989 2005-04-25  Wim Taymans  <wim@fluendo.com>
4990
4991         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4992         (gst_pad_set_checkgetrange_function),
4993         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4994         (gst_pad_check_pull_range), (gst_pad_pull_range),
4995         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4996         (gst_pad_pause_task), (gst_pad_stop_task):
4997         * gst/gstplugin.c: (gst_plugin_load):
4998         * gst/gstplugin.h:
4999         Remove gst_library_load as it does more harm than good with
5000         the new g_module flags.
5001         Revert bogus caps template check in pad linking, pad caps
5002         are important when linking not the template, which is more
5003         general than the current caps.
5004
5005 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5006
5007         * gst/autoplug/.cvsignore:
5008         * gst/autoplug/Makefile.am:
5009         * gst/autoplug/gstsearchfuncs.c:
5010         * gst/autoplug/gstsearchfuncs.h:
5011         * gst/autoplug/gstspider.c:
5012         * gst/autoplug/gstspider.h:
5013         * gst/autoplug/gstspideridentity.c:
5014         * gst/autoplug/gstspideridentity.h:
5015         * gst/autoplug/spidertest.c:
5016           Die, spider, die.
5017
5018 2005-04-25  Wim Taymans  <wim@fluendo.com>
5019
5020         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5021         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
5022         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
5023         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
5024         * gst/gstpad.h:
5025         Added stubs for unimplemented functions. 
5026
5027 2005-04-24  David Schleef  <ds@schleef.org>
5028
5029         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
5030         please fix.
5031
5032 2005-04-24  David Schleef  <ds@schleef.org>
5033
5034         Convert everything from GstAtomicInt to g_atomic_int_*, and
5035         remove gstatomic.
5036         * gst/Makefile.am:
5037         * gst/gstatomic.c:
5038         * gst/gstatomic.h:
5039         * gst/gstatomic_impl.h:
5040         * gst/gstbuffer.c:
5041         * gst/gstcaps.c:
5042         * gst/gstcaps.h:
5043         * gst/gstclock.c:
5044         * gst/gstclock.h:
5045         * gst/gstdata.c:
5046         * gst/gstdata.h:
5047         * gst/gstdata_private.h:
5048         * gst/gstevent.c:
5049         * gst/gstinfo.c:
5050         * gst/gstinfo.h:
5051         * gst/gstmessage.c:
5052         * gst/gstobject.c:
5053         * gst/gstobject.h:
5054         * gst/gststructure.c:
5055         * gst/gststructure.h:
5056         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
5057         * gst/gstutils.h:
5058
5059 2005-04-24  David Schleef  <ds@schleef.org>
5060
5061         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
5062         make the regressions tests work.  Remove some code that is no
5063         longer true.
5064         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
5065         Disable warning for pads without templates.
5066
5067 2005-04-24  David Schleef  <ds@schleef.org>
5068
5069         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
5070         functions that handle filtered links.
5071         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
5072         removed functions.
5073         * gst/gstutils.c: Fix/remove utility functions that handle
5074         filtered caps.
5075         * gst/gstutils.h:
5076         * gst/gstvalue.c: Add serialization/deserialization of caps
5077         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
5078         requires fixing so that the filter caps notation creates
5079         a capsfilter element and sets the filter_caps property.  I
5080         think everyone probably wants to keep the shorthand notation.
5081         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
5082         * docs/gst/tmpl/gstpad.sgml:
5083
5084         * gst/elements/gstelements.c: Register capsfilter element.
5085         * gst/Makefile.am: fix spacing
5086         * docs/random/ds/0.9-suggested-changes: random
5087
5088 2005-04-23  David Schleef  <ds@schleef.org>
5089
5090         * gst/elements/Makefile.am:
5091         * gst/elements/gstcapsfilter.c: New element that acts like an
5092         identity, but filters caps.  Will eventually replace filtered
5093         caps in pad linking.
5094         * gst/gstutils.c: (gst_element_create_all_pads): New function
5095         to create all the ALWAYS pads that are registered with an
5096         element class.  This functionality should eventually be
5097         merged in with GstElement initialization.
5098         * gst/gstutils.h:
5099         * testsuite/trigger/README: part of trigger test code that should
5100         have been checked in a long time ago.
5101
5102 2005-04-23  David Schleef  <ds@schleef.org>
5103
5104         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
5105         needed with new versions of libtool (nobody will confirm this),
5106         and hard to carry around.
5107         * gst/autoplug/Makefile.am:
5108         * gst/base/Makefile.am:
5109         * gst/elements/Makefile.am:
5110         * gst/indexers/Makefile.am:
5111         * gst/schedulers/Makefile.am:
5112         * libs/gst/bytestream/Makefile.am:
5113         * libs/gst/control/Makefile.am:
5114         * libs/gst/dataprotocol/Makefile.am:
5115         * libs/gst/getbits/Makefile.am:
5116
5117 2005-04-21  Wim Taymans  <wim@fluendo.com>
5118
5119         * docs/design/draft-push-pull.txt:
5120         * docs/design/part-MT-refcounting.txt:
5121         * docs/design/part-TODO.txt:
5122         * docs/design/part-caps.txt:
5123         * docs/design/part-events.txt:
5124         * docs/design/part-gstbus.txt:
5125         * docs/design/part-gstpipeline.txt:
5126         * docs/design/part-messages.txt:
5127         * docs/design/part-push-pull.txt:
5128         * docs/design/part-query.txt:
5129         Some more docs.
5130
5131 2005-04-21  Wim Taymans  <wim@fluendo.com>
5132
5133         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
5134         (gst_message_new), (gst_message_new_error),
5135         (gst_message_new_warning), (gst_message_new_tag),
5136         (gst_message_new_state_changed), (gst_message_new_application),
5137         (gst_message_get_structure):
5138         * gst/gstmessage.h:
5139         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5140         (gst_structure_copy_conditional):
5141         Use parent refcount in GstMessage to ensure GstStructure
5142         consistency.
5143         Cleaned up headers a bit.
5144         
5145
5146 2005-04-20  Wim Taymans  <wim@fluendo.com>
5147
5148         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5149         (gst_basesink_pad_getcaps), (gst_basesink_init),
5150         (gst_basesink_chain_unlocked):
5151         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
5152         (gst_type_find_helper):
5153         * gst/elements/gsttypefindelement.c:
5154         (gst_type_find_element_have_type), (gst_type_find_element_init),
5155         (stop_typefinding), (gst_type_find_element_handle_event),
5156         (find_suggest), (gst_type_find_element_chain),
5157         (gst_type_find_element_checkgetrange),
5158         (gst_type_find_element_getrange), (do_typefind),
5159         (gst_type_find_element_activate):
5160         * gst/gstbuffer.c: (_gst_buffer_sub_free),
5161         (gst_buffer_default_free), (gst_buffer_default_copy),
5162         (gst_buffer_set_caps):
5163         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
5164         (gst_caps_replace):
5165         * gst/gstmessage.c: (gst_message_new),
5166         (gst_message_new_state_changed):
5167         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5168         (gst_pad_set_checkgetrange_function),
5169         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
5170         (gst_pad_set_caps), (gst_pad_check_pull_range),
5171         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
5172         * gst/gstpad.h:
5173         * gst/gsttypefind.c: (gst_type_find_register):
5174         Make gst_caps_replace() work like other _replace() functions.
5175         Use _caps_replace() where possible.
5176         Make sure _message_new() initialises its field.
5177         Add gst_static_pad_template_get_caps()
5178
5179
5180 2005-04-18  Andy Wingo  <wingo@pobox.com>
5181
5182         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
5183         on the peer, not the pad. I think that was a typo. Pass an extra
5184         arg to see if random access is possible. Activate the pads as
5185         PULL_RANGE if possible.
5186
5187         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
5188
5189         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
5190         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
5191         to PROP_....
5192
5193 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5194
5195         * docs/faq/using.xml:
5196           Add note on gstreamer-properties (#154996).
5197
5198 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5199
5200         * docs/random/bbb/optional-properties:
5201           Some analysis on optional properties.
5202
5203 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5204
5205         * docs/gst/tmpl/gstelementfactory.sgml:
5206         * gst/gstelement.h:
5207         * gst/gstelementfactory.c: (gst_element_factory_init),
5208         (gst_element_factory_cleanup), (gst_element_register),
5209         (__gst_element_factory_add_static_pad_template),
5210         (gst_element_factory_get_static_pad_templates),
5211         (gst_element_factory_can_src_caps),
5212         (gst_element_factory_can_sink_caps):
5213         * gst/registries/Makefile.am:
5214         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
5215         (gst_xml_registry_class_init), (gst_xml_registry_init),
5216         (gst_xml_registry_new), (gst_xml_registry_set_property),
5217         (gst_xml_registry_get_property), (get_time), (make_dir),
5218         (gst_xml_registry_get_perms_func),
5219         (plugin_times_older_than_recurse), (plugin_times_older_than),
5220         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
5221         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
5222         (add_to_char_array), (read_string), (read_uint), (read_enum),
5223         (load_pad_template), (load_feature), (load_plugin), (load_paths),
5224         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
5225         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
5226         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
5227         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
5228         (gst_xml_registry_rebuild):
5229         * gst/registries/gstlibxmlregistry.h:
5230         * tools/gst-compprep.c: (main):
5231         * tools/gst-inspect.c: (print_pad_templates_info):
5232         * tools/gst-xmlinspect.c: (print_element_info):
5233           Use libxml2 for registry parsing, use staticpadtemplates in
5234           elementfactories. Makes gst_init() +/- 10x faster.
5235
5236 2005-04-12  Wim Taymans  <wim@fluendo.com>
5237
5238         * gst/base/Makefile.am:
5239         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5240         (gst_basesink_pad_getcaps), (gst_basesink_init),
5241         (gst_basesink_event), (gst_basesink_change_state):
5242         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5243         (gst_basesrc_init), (gst_basesrc_query),
5244         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
5245         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
5246         (gst_basesrc_check_get_range), (gst_basesrc_loop),
5247         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
5248         (gst_basesrc_stop), (gst_basesrc_activate),
5249         (gst_basesrc_change_state):
5250         * gst/base/gsttypefindhelper.c: (helper_find_peek),
5251         (helper_find_suggest), (gst_type_find_helper):
5252         * gst/base/gsttypefindhelper.h:
5253         * gst/elements/Makefile.am:
5254         * gst/elements/gstelements.c:
5255         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
5256         (gst_fakesink_get_times), (gst_fakesink_event),
5257         (gst_fakesink_preroll), (gst_fakesink_render):
5258         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5259         (gst_fakesrc_init), (gst_fakesrc_event_handler),
5260         (gst_fakesrc_get_property), (gst_fakesrc_create),
5261         (gst_fakesrc_start), (gst_fakesrc_stop):
5262         * gst/elements/gstfakesrc.h:
5263         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
5264         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
5265         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
5266         (gst_filesrc_create_read), (gst_filesrc_create),
5267         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
5268         (gst_filesrc_start):
5269         * gst/elements/gsttypefindelement.c:
5270         (gst_type_find_element_have_type), (gst_type_find_element_init),
5271         (start_typefinding), (stop_typefinding), (push_buffer_store),
5272         (gst_type_find_element_handle_event),
5273         (gst_type_find_element_chain),
5274         (gst_type_find_element_checkgetrange),
5275         (gst_type_find_element_getrange), (do_typefind),
5276         (gst_type_find_element_activate),
5277         (gst_type_find_element_change_state):
5278         * gst/elements/gsttypefindelement.h:
5279         * gst/gstpipeline.c: (pipeline_bus_handler):
5280         Added typefind helper.
5281         Small preroll fix in the base sink.
5282         Disable typefind code in basesrc.
5283         Crude port of typefindelement.
5284         Fakesrc cleanups.
5285
5286
5287 2005-04-11  Wim Taymans  <wim@fluendo.com>
5288
5289         * check/gst/gstbus.c: (gstbus_suite):
5290         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
5291         * check/gstcheck.h:
5292           Fix up the timeout so that the test does not fail.
5293
5294 2005-04-06  Wim Taymans  <wim@fluendo.com>
5295
5296         * gst/base/README:
5297         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5298         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
5299         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
5300         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
5301         (gst_basesrc_check_get_range), (gst_basesrc_loop),
5302         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
5303         (gst_basesrc_stop), (gst_basesrc_activate),
5304         (gst_basesrc_change_state), (basesrc_find_peek),
5305         (basesrc_find_suggest), (gst_basesrc_type_find):
5306         * gst/base/gstbasesrc.h:
5307         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5308         (gst_filesrc_class_init), (gst_filesrc_init),
5309         (gst_filesrc_finalize), (gst_filesrc_set_location),
5310         (gst_filesrc_set_property), (gst_filesrc_get_property),
5311         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
5312         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
5313         (gst_filesrc_create_read), (gst_filesrc_create),
5314         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
5315         * gst/elements/gstfilesrc.h:
5316         * gst/gstelement.c: (gst_element_get_state_func),
5317         (gst_element_lost_state), (gst_element_pads_activate):
5318         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5319         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
5320         (gst_pad_pull_range):
5321         * gst/gstpad.h:
5322         More work on the generic source base class, implement seeking,
5323         query.
5324         Make filesrc extend the base source class.
5325         Added gst_pad_set_checkgetrange_function to GstPad.
5326
5327 2005-04-06  Andy Wingo  <wingo@pobox.com>
5328
5329         * pkgconfig/gstreamer-base.pc.in:
5330         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
5331
5332         * pkgconfig/Makefile.am:
5333         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
5334
5335 2005-04-04  Wim Taymans  <wim@fluendo.com>
5336
5337         * gst/base/Makefile.am:
5338         * gst/base/README:
5339         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5340         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
5341         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
5342         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
5343         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5344         (gst_basesrc_base_init), (gst_basesrc_class_init),
5345         (gst_basesrc_init), (gst_basesrc_get_formats),
5346         (gst_basesrc_get_query_types), (gst_basesrc_query),
5347         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
5348         (gst_basesrc_set_property), (gst_basesrc_get_property),
5349         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
5350         (gst_basesrc_loop), (gst_basesrc_activate),
5351         (gst_basesrc_change_state):
5352         * gst/base/gstbasesrc.h:
5353         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5354         (gst_fakesrc_class_init), (gst_fakesrc_init),
5355         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
5356         (gst_fakesrc_get_property), (gst_fakesrc_create):
5357         * gst/elements/gstfakesrc.h:
5358         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
5359         (gst_filesrc_open_file), (gst_filesrc_loop),
5360         (gst_filesrc_activate), (filesrc_find_peek),
5361         (gst_filesrc_type_find):
5362         Made base source class, make fakesrc extend it.
5363         Add comments to basesink class.
5364         Some filesrc cleanup.
5365
5366 2005-03-31  David Schleef  <ds@schleef.org>
5367
5368         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5369         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
5370         expected to link against libgstreamer.
5371         * gst/base/Makefile.am: link against libgstreamer
5372         * gst/elements/Makefile.am: same
5373
5374 2005-03-31  Andy Wingo  <wingo@pobox.com>
5375
5376         * tests/instantiate/Makefile.am:
5377         * tests/instantiate/caps.c: Add test to test speed of caps copy
5378         and free.
5379
5380         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
5381         GMemChunk to be fair.
5382
5383         * gst/gsttrashstack.h: Remove warning about using the fallback
5384         trash stack implementation, it's still faster than malloc.
5385
5386 2005-03-30  Andy Wingo  <wingo@pobox.com>
5387
5388         * tests/complexity.c: Add a copyright.
5389
5390 2005-03-31  Wim Taymans  <wim@fluendo.com>
5391
5392         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
5393         (gst_base_transform_class_init), (gst_base_transform_init),
5394         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
5395         (gst_base_transform_get_property),
5396         (gst_base_transform_sink_activate),
5397         (gst_base_transform_src_activate),
5398         (gst_base_transform_change_state):
5399         * gst/base/gstbasetransform.h:
5400         * gst/elements/gstidentity.c: (gst_identity_class_init),
5401         (gst_identity_event), (gst_identity_check_perfect),
5402         (gst_identity_transform), (gst_identity_start),
5403         (gst_identity_stop):
5404         Added start/stop methods to transform base class so subclasses 
5405         don't need to deal with state changes even.
5406
5407 2005-03-31  Wim Taymans  <wim@fluendo.com>
5408
5409         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
5410         (gst_event_new_discontinuous), (gst_event_discont_get_value):
5411         * gst/gstevent.h:
5412         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5413         (gst_pad_pull_range):
5414         Added rate to the discont event to prepare for variable speed
5415         and reverse playback.
5416
5417 2005-03-29  David Schleef  <ds@schleef.org>
5418
5419         * configure.ac:
5420         * testsuite/trigger/Makefile.am:
5421         * testsuite/trigger/trigger.c: A little example program to show
5422         how trigger-based elements can work.
5423
5424 2005-03-29  Wim Taymans  <wim@fluendo.com>
5425
5426         * gst/base/Makefile.am:
5427         * gst/base/README:
5428         * gst/base/gstbasesink.c: (gst_basesink_get_type),
5429         (gst_basesink_base_init), (gst_basesink_class_init),
5430         (gst_basesink_pad_getcaps), (gst_basesink_init),
5431         (gst_basesink_activate), (gst_basesink_change_state):
5432         * gst/base/gstbasesink.h:
5433         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
5434         (gst_base_transform_base_init), (gst_base_transform_finalize),
5435         (gst_base_transform_class_init), (gst_base_transform_init),
5436         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
5437         (gst_base_transform_event), (gst_base_transform_getrange),
5438         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
5439         (gst_base_transform_set_property),
5440         (gst_base_transform_get_property),
5441         (gst_base_transform_sink_activate),
5442         (gst_base_transform_src_activate),
5443         (gst_base_transform_change_state):
5444         * gst/base/gstbasetransform.h:
5445         * gst/elements/gstidentity.c: (gst_identity_finalize),
5446         (gst_identity_class_init), (gst_identity_init),
5447         (gst_identity_event), (gst_identity_check_perfect),
5448         (gst_identity_transform), (gst_identity_set_property),
5449         (gst_identity_get_property), (gst_identity_change_state):
5450         * gst/elements/gstidentity.h:
5451         * gst/gstelement.c: (gst_element_get_state_func),
5452         (gst_element_lost_state), (gst_element_pads_activate):
5453         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5454         (gst_pad_check_pull_range), (gst_pad_pull_range):
5455         * gst/gstpad.h:
5456         Simplify pad activation.
5457         Added function to check if pull_range can be performed.
5458         Error out when pulling inactive or flushing pads.
5459         Removed const from refcounted types as it does not make sense.
5460         Simplify pad templates in basesink
5461         Added base class for simple 1-to-1 transforms.
5462         Make identity subclass the base transform.
5463
5464 2005-03-29  Andy Wingo  <wingo@pobox.com>
5465
5466         * docs/libs/gstreamer-libs-overrides.txt: 
5467         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
5468         really don't understand what's going on, but like whatever. I want
5469         green buildbot!
5470
5471         * docs/gst/Makefile.am:
5472         * docs/libs/Makefile.am: Dist the overrides files.
5473
5474         * check/Makefile.am (clean-local): Remove .libs directories.
5475
5476         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
5477         elements to EXTRA_DIST, so po/ files are happy.
5478
5479         * po/POTFILES.in: Er, remove it here.
5480
5481         * po/POTFILES: Remove gstspider.c.
5482
5483         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
5484
5485         * docs/libs/gstreamer-libs-docs.sgml: 
5486         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
5487         bytestream.
5488
5489         * tests/complexity.c (main): Set the length of the preroll queue
5490         on the sinks to prevent a lockup.
5491
5492         * libs/gst/dataprotocol/Makefile.am: 
5493         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
5494         the same as the one in check/gst-libs/gdp.c.
5495
5496         * po/, docs/gst/: Commit automatic changes to docs and po files.
5497
5498         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
5499         the versioned libgstbase.
5500
5501         * check/Makefile.am: Depend on an unversioned gst-register, seems
5502         to make autoconf happier.
5503
5504         * gst/base/Makefile.am: Make libgstbase a versioned lib.
5505
5506 2005-03-28  Wim Taymans  <wim@fluendo.com>
5507
5508         * configure.ac:
5509         * docs/design/part-gstelement.txt:
5510         * docs/design/part-negotiation.txt:
5511         * docs/design/part-preroll.txt:
5512         * docs/design/part-scheduling.txt:
5513         * docs/design/part-states.txt:
5514         * gst/Makefile.am:
5515         * gst/base/Makefile.am:
5516         * gst/base/README:
5517         * gst/base/gstbasesink.c: (gst_basesink_get_template),
5518         (gst_basesink_base_init), (gst_basesink_class_init),
5519         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
5520         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
5521         (gst_basesink_set_pad_functions),
5522         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
5523         (gst_basesink_set_property), (gst_basesink_get_property),
5524         (gst_base_sink_get_template), (gst_base_sink_get_caps),
5525         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
5526         (gst_basesink_preroll_queue_push),
5527         (gst_basesink_preroll_queue_empty),
5528         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
5529         (gst_basesink_event), (gst_basesink_get_times),
5530         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
5531         (gst_basesink_chain_unlocked), (gst_basesink_chain),
5532         (gst_basesink_loop), (gst_basesink_activate),
5533         (gst_basesink_change_state):
5534         * gst/base/gstbasesink.h:
5535         * gst/elements/Makefile.am:
5536         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5537         (gst_fakesink_class_init), (gst_fakesink_init),
5538         (gst_fakesink_set_property), (gst_fakesink_get_property),
5539         (gst_fakesink_get_times), (gst_fakesink_event),
5540         (gst_fakesink_preroll), (gst_fakesink_render),
5541         (gst_fakesink_change_state):
5542         * gst/elements/gstfakesink.h:
5543         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
5544         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
5545         * gst/gstelement.c: (gst_element_add_pad),
5546         (gst_element_get_state_func), (gst_element_abort_state),
5547         (gst_element_commit_state), (gst_element_lost_state),
5548         (gst_element_set_state), (gst_element_pads_activate):
5549         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
5550         * gst/gstpipeline.c: (gst_pipeline_send_event),
5551         (gst_pipeline_change_state):
5552         Added state change code.
5553         Added/updated docs.
5554         Added sink base class, make fakesink extend the base class.
5555         Small cleanups in GstPipeline.
5556
5557 2005-03-26  David Schleef  <ds@schleef.org>
5558
5559         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
5560         is broken and should be implemented in a different library.
5561         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
5562         * gst/gst.h: remove gstcpu.h
5563         * gst/gstcpu.c: remove
5564         * gst/gstcpu.h: remove
5565         * gst/Makefile.am.future: Remove this file.  It's ancient.
5566
5567 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5568
5569         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
5570         (gst_bin_send_event):
5571           Add default event/set_manager handlers. The set_manager handler
5572           takes care that the manager is distributed over kids that were
5573           already in the bin before the manager was set. The event handler
5574           is a utility virtual function that sends the event over all sinks,
5575           so that gst_element_send_event (bin, event); has the expected
5576           behaviour.
5577         * gst/gstpad.c: (gst_pad_event_default):
5578           Re-install default event handling for discontinuities, so that
5579           seeking works without requiring hacks in applications or extra
5580           code in sinks.
5581         * gst/gstpipeline.c: (gst_pipeline_class_init),
5582         (gst_pipeline_send_event):
5583           Half hack, half utility: set a pipeline to PAUSED for seek events,
5584           since that is the only way we can guarantee a/v sync. Means that
5585           you can do gst_element_seek (pipeline, method, pos); on a pipeline
5586           and it "just works".
5587
5588 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5589
5590         * gst/gstpipeline.c: (gst_pipeline_use_clock):
5591           Lock/unlock mismatch.
5592
5593 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5594
5595         * docs/faq/gst-uninstalled:
5596           add gst-plugins-base
5597         * docs/gst/Makefile.am:
5598           don't error out until docs are fixed
5599         * docs/gst/gstreamer.types:
5600           remove thread
5601
5602 2005-03-22  Wim Taymans  <wim@fluendo.com>
5603
5604         * check/Makefile.am:
5605         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
5606         * gst/gststructure.c: (gst_structure_set_valist),
5607         (gst_structure_copy_conditional):
5608         Activated more tests.
5609         Added message test.
5610         Added G_TYPE_POINTER to GstStructure.
5611         
5612
5613 2005-03-22  Wim Taymans  <wim@fluendo.com>
5614
5615         * docs/design/part-TODO.txt:
5616         * docs/design/part-events.txt:
5617         * docs/design/part-gstbin.txt:
5618         * docs/design/part-gstbus.txt:
5619         * docs/design/part-gstpipeline.txt:
5620         * docs/design/part-messages.txt:
5621         * gst/gstbus.c:
5622         * gst/gstmessage.c:
5623         Docs updates
5624
5625 2005-03-21  Wim Taymans  <wim@fluendo.com>
5626
5627         * gst/gstbus.c: (gst_bus_post):
5628         Fix copy-and-paste error.
5629
5630 2005-03-21  Wim Taymans  <wim@fluendo.com>
5631
5632         * check/Makefile.am:
5633         * gst/Makefile.am:
5634         * gst/elements/Makefile.am:
5635         * gst/elements/gstelements.c:
5636         * gst/elements/gstfakesink.c: (gst_fakesink_init),
5637         (gst_fakesink_event), (gst_fakesink_chain):
5638         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5639         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
5640         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
5641         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
5642         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5643         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
5644         (gst_fakesrc_loop), (gst_fakesrc_activate),
5645         (gst_fakesrc_change_state):
5646         * gst/elements/gstfakesrc.h:
5647         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
5648         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
5649         (gst_filesrc_open_file), (gst_filesrc_loop),
5650         (gst_filesrc_activate), (gst_filesrc_change_state),
5651         (filesrc_find_peek), (filesrc_find_suggest),
5652         (gst_filesrc_type_find):
5653         * gst/elements/gstidentity.c: (gst_identity_finalize),
5654         (gst_identity_class_init), (gst_identity_init),
5655         (gst_identity_proxy_getcaps), (identity_queue_push),
5656         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
5657         (gst_identity_getrange), (gst_identity_chain),
5658         (gst_identity_sink_loop), (gst_identity_src_loop),
5659         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
5660         (gst_identity_set_property), (gst_identity_get_property),
5661         (gst_identity_change_state):
5662         * gst/elements/gstidentity.h:
5663         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
5664         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
5665         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
5666         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
5667         (gst_tee_sink_activate):
5668         * gst/elements/gsttee.h:
5669         * gst/gst.c: (gst_register_core_elements), (init_post):
5670         * gst/gst.h:
5671         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
5672         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
5673         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
5674         (gst_bin_change_state):
5675         * gst/gstbin.h:
5676         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
5677         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
5678         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
5679         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
5680         (gst_bus_set_sync_handler), (gst_bus_create_watch),
5681         (bus_watch_callback), (bus_watch_destroy),
5682         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
5683         (poll_timeout), (gst_bus_poll):
5684         * gst/gstbus.h:
5685         * gst/gstcaps.h:
5686         * gst/gstdata.h:
5687         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5688         (gst_element_post_message), (gst_element_message_full),
5689         (gst_element_get_state_func), (gst_element_get_state),
5690         (gst_element_abort_state), (gst_element_commit_state),
5691         (gst_element_lost_state), (gst_element_set_state),
5692         (gst_element_pads_activate), (gst_element_change_state),
5693         (gst_element_dispose), (gst_element_set_manager_func),
5694         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
5695         (gst_element_set_manager), (gst_element_get_manager),
5696         (gst_element_set_bus), (gst_element_get_bus),
5697         (gst_element_set_scheduler), (gst_element_get_scheduler):
5698         * gst/gstelement.h:
5699         * gst/gstevent.c: (gst_event_new_segment_seek),
5700         (gst_event_new_flush):
5701         * gst/gstevent.h:
5702         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
5703         (_gst_message_free), (gst_message_get_type), (gst_message_new),
5704         (gst_message_new_eos), (gst_message_new_error),
5705         (gst_message_new_warning), (gst_message_new_tag),
5706         (gst_message_new_state_changed), (gst_message_new_application),
5707         (gst_message_get_structure), (gst_message_parse_tag),
5708         (gst_message_parse_state_changed), (gst_message_parse_error),
5709         (gst_message_parse_warning):
5710         * gst/gstmessage.h:
5711         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
5712         (gst_real_pad_set_property), (gst_pad_set_active),
5713         (gst_pad_is_active), (gst_pad_set_blocked_async),
5714         (gst_pad_set_blocked), (gst_pad_is_blocked),
5715         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
5716         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
5717         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
5718         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
5719         (gst_pad_link_filtered), (gst_pad_relink_filtered),
5720         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
5721         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
5722         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
5723         (gst_pad_set_caps), (gst_pad_configure_sink),
5724         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
5725         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
5726         (gst_real_pad_dispose), (gst_real_pad_finalize),
5727         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
5728         (gst_pad_event_default_dispatch), (gst_pad_event_default),
5729         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
5730         * gst/gstpad.h:
5731         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
5732         (pipeline_bus_handler), (gst_pipeline_change_state),
5733         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
5734         * gst/gstpipeline.h:
5735         * gst/gstprobe.h:
5736         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
5737         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
5738         (gst_queue_link_src), (gst_queue_bufferalloc),
5739         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
5740         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
5741         (gst_queue_loop), (gst_queue_handle_src_event),
5742         (gst_queue_handle_src_query), (gst_queue_src_activate),
5743         (gst_queue_change_state):
5744         * gst/gstqueue.h:
5745         * gst/gstscheduler.c: (gst_scheduler_init),
5746         (gst_scheduler_dispose), (gst_scheduler_create_task),
5747         (gst_scheduler_factory_create):
5748         * gst/gstscheduler.h:
5749         * gst/gststructure.c: (gst_structure_get_type),
5750         (gst_structure_copy_conditional):
5751         * gst/gststructure.h:
5752         * gst/gsttaginterface.h:
5753         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
5754         (gst_task_init), (gst_task_dispose), (gst_task_create),
5755         (gst_task_get_state), (gst_task_start), (gst_task_stop),
5756         (gst_task_pause):
5757         * gst/gsttask.h:
5758         * gst/gstthread.c:
5759         * gst/gstthread.h:
5760         * gst/gsttypes.h:
5761         * gst/schedulers/Makefile.am:
5762         * gst/schedulers/cothreads_compat.h:
5763         * gst/schedulers/entryscheduler.c:
5764         * gst/schedulers/faircothreads.c:
5765         * gst/schedulers/faircothreads.h:
5766         * gst/schedulers/fairscheduler.c:
5767         * gst/schedulers/gstbasicscheduler.c:
5768         * gst/schedulers/gstoptimalscheduler.c:
5769         * gst/schedulers/gthread-cothreads.h:
5770         * gst/schedulers/threadscheduler.c:
5771         (gst_thread_scheduler_task_get_type),
5772         (gst_thread_scheduler_task_class_init),
5773         (gst_thread_scheduler_task_init),
5774         (gst_thread_scheduler_task_start),
5775         (gst_thread_scheduler_task_stop),
5776         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
5777         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
5778         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
5779         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
5780         (plugin_init):
5781         * libs/gst/Makefile.am:
5782         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
5783         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
5784         (gst_file_pad_parent_set):
5785         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
5786         (gst_dp_event_from_packet):
5787         * tests/complexity.c: (main):
5788         * tests/mass_elements.c: (main):
5789         * testsuite/states/locked.c: (message_received), (main):
5790         * testsuite/states/parent.c: (main):
5791         * tools/gst-inspect.c: (print_element_flag_info),
5792         (print_implementation_info), (print_pad_info):
5793         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
5794         (main):
5795         * tools/gst-md5sum.c: (event_loop), (main):
5796         * tools/gst-typefind.c: (main):
5797         * tools/gst-xmlinspect.c: (print_element_info):
5798         Next big merge.
5799         Added GstBus for mainloop integration.
5800         Added GstMessage for sending notifications on the bus.
5801         Added GstTask as an abstraction for pipeline entry points.
5802         Removed GstThread.
5803         Removed Schedulers.
5804         Simplified GstQueue for multithreaded core.
5805         Made _link threadsafe, removed old capsnego.
5806         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
5807         Added pad blocking functions.
5808         Reworked scheduling functions in GstPad to prepare for
5809         scheduling updates soon.
5810         Moved events out of data stream.
5811         Simplified GstEvent types.
5812         Added return values to push/pull.
5813         Removed clocking from GstElement.
5814         Added prototypes for state change function for next merge.
5815         Removed iterate from bins and state change management.
5816         Fixed some elements, disabled others for now.
5817         Fixed -inspect and -launch.
5818         Added check for GstBus.
5819
5820 2005-03-10  Wim Taymans  <wim@fluendo.com>
5821
5822         * docs/design/part-MT-refcounting.txt:
5823         * docs/design/part-clocks.txt:
5824         * docs/design/part-gstelement.txt:
5825         * docs/design/part-gstobject.txt:
5826         * docs/design/part-standards.txt:
5827         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5828         (gst_bin_remove_func), (gst_bin_remove):
5829         * gst/gstbin.h:
5830         * gst/gstbuffer.c:
5831         * gst/gstcaps.h:
5832         * testsuite/clock/clock1.c: (main):
5833         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
5834         (main):
5835         * testsuite/dlopen/loadgst.c: (do_test):
5836         * testsuite/refcounting/bin.c: (add_remove_test1),
5837         (add_remove_test2), (main):
5838         * testsuite/refcounting/element.c: (main):
5839         * testsuite/refcounting/element_pad.c: (main):
5840         * testsuite/refcounting/pad.c: (main):
5841         * tools/gst-launch.c: (sigint_handler_sighandler):
5842         * tools/gst-typefind.c: (main):
5843         Doc updates.
5844         Added doc about clock.
5845         removed gst_bin_iterate_recurse_up(), marked methods
5846         for removal.
5847         Fix more testsuites.
5848
5849 2005-03-09  Wim Taymans  <wim@fluendo.com>
5850
5851         * gst/gstpad.c: (gst_pad_get_direction),
5852         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
5853         (gst_pad_collect_valist):
5854         * testsuite/bins/interface.c: (main):
5855         * testsuite/caps/audioscale.c: (test_caps):
5856         * testsuite/caps/caps.c: (test1), (test2), (test3):
5857         * testsuite/caps/deserialize.c: (main):
5858         * testsuite/caps/enumcaps.c: (main):
5859         * testsuite/caps/filtercaps.c: (main):
5860         * testsuite/caps/intersect2.c: (main):
5861         * testsuite/caps/random.c: (main):
5862         * testsuite/caps/renegotiate.c: (my_fixate), (main):
5863         * testsuite/caps/sets.c: (check_caps):
5864         * testsuite/caps/simplify.c: (check_caps), (main):
5865         * testsuite/caps/subtract.c: (check_caps):
5866         Fix _pad_get_direction wrt ghostpads.
5867         Fix caps testsuite.
5868
5869 2005-03-09  Wim Taymans  <wim@fluendo.com>
5870
5871         * check/Makefile.am:
5872         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
5873         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
5874         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
5875         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
5876         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
5877         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
5878         (gst_bin_remove), (gst_bin_iterate_recurse_up),
5879         (bin_element_is_sink), (gst_bin_iterate_sinks),
5880         (gst_bin_iterate_all_by_interface):
5881         * gst/gstbin.h:
5882         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
5883         (gst_element_change_state), (gst_element_dispose),
5884         (gst_element_finalize), (gst_element_set_loop_function):
5885         * gst/gstelement.h:
5886         * gst/gstiterator.c: (find_custom_fold_func):
5887         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5888         (gst_pad_collectv), (gst_pad_collect_valist),
5889         (gst_pad_template_new):
5890         * gst/gstpipeline.c: (gst_pipeline_class_init),
5891         (gst_pipeline_dispose), (gst_pipeline_set_property),
5892         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
5893         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
5894         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
5895         * gst/gstutils.h:
5896         * gst/schedulers/entryscheduler.c:
5897         * gst/schedulers/gstbasicscheduler.c:
5898         (gst_basic_scheduler_cothreaded_chain),
5899         (gst_basic_scheduler_chain_add_element):
5900         * testsuite/bins/interface.c: (main):
5901         Added GstBin test.
5902         Added GstSystemClock test.
5903         Implemented clock distribution code in GstBin.
5904         Implemented iterate sinks method for future use.
5905         Rearranged gstelement.h
5906         Fix GstIterator comparison bug.
5907         Moved some code to GstPipeline, mostly clocking related.
5908
5909 2005-03-09  Wim Taymans  <wim@fluendo.com>
5910
5911         * configure.ac:
5912         * gst/gst_private.h:
5913         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5914         (gst_bin_remove_func), (gst_bin_remove),
5915         (gst_bin_get_by_name_recurse_up):
5916         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
5917         (gst_clock_id_compare_func), (gst_clock_id_wait),
5918         (gst_clock_id_wait_async), (gst_clock_init),
5919         (gst_clock_adjust_unlocked), (gst_clock_get_time):
5920         * gst/gstelement.h:
5921         * gst/gstinfo.c: (_gst_debug_init):
5922         * gst/gstobject.h:
5923         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5924         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
5925         * gst/gstpad.h:
5926         Bump version number, we're now 0.9.0
5927         Add future debugging category.
5928         Fix NULL _unref() in _get_by_name_recurse_up
5929         Rearrange gstpad.h.
5930         Update some docs.
5931
5932 2005-03-08  Wim Taymans  <wim@fluendo.com>
5933
5934         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
5935         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5936         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
5937         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
5938         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
5939         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
5940         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
5941         * gst/elements/gstidentity.c: (gst_identity_class_init):
5942         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
5943         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5944         * gst/elements/gstshaper.c: (gst_shaper_class_init):
5945         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5946         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5947         (gst_tee_link):
5948         * gst/gstelement.c: (gst_element_class_init),
5949         (gst_element_base_class_init), (gst_element_init),
5950         (gst_element_get_random_pad), (gst_element_wait_state_change),
5951         (gst_element_change_state), (gst_element_dispose),
5952         (gst_element_finalize), (gst_element_set_loop_function):
5953         * gst/gstelement.h:
5954         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5955         * gst/gstthread.c: (gst_thread_class_init),
5956         (gst_thread_release_children_locks), (gst_thread_change_state):
5957         * gst/schedulers/gstbasicscheduler.c:
5958         (gst_basic_scheduler_loopfunc_wrapper),
5959         (gst_basic_scheduler_chain_wrapper),
5960         (gst_basic_scheduler_src_wrapper),
5961         (gst_basic_scheduler_remove_element):
5962         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5963         Remove threadsafe properties. Fix elements because GObject
5964         complains when installing a property before declaring a
5965         set/get_property handler.
5966         Rearrange gstelement.h file, use STATE macros for state locks.
5967         Free mutexes in the finalize method instead of dispose.
5968
5969 2005-03-08  Wim Taymans  <wim@fluendo.com>
5970
5971         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5972         * gst/gstthread.c: (gst_thread_release_children_locks):
5973         Added parentage check.
5974         Fix build og GstThread again.
5975
5976 2005-03-08  Wim Taymans  <wim@fluendo.com>
5977
5978         * docs/design/part-MT-refcounting.txt:
5979         * docs/design/part-conventions.txt:
5980         * docs/design/part-gstobject.txt:
5981         * docs/design/part-relations.txt:
5982         * docs/design/part-standards.txt:
5983         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5984         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5985         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5986         (gst_bin_iterate_all_by_interface):
5987         * gst/gstbuffer.h:
5988         * gst/gstclock.h:
5989         * gst/gstelement.c: (gst_element_class_init),
5990         (gst_element_change_state), (gst_element_set_loop_function):
5991         * gst/gstelement.h:
5992         * gst/gstiterator.c:
5993         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5994         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5995         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5996         (gst_object_set_parent), (gst_object_unparent),
5997         (gst_object_check_uniqueness):
5998         * gst/gstobject.h:
5999         Docs updates, clean up some headers.
6000
6001 2005-03-07  Wim Taymans  <wim@fluendo.com>
6002
6003         * check/.cvsignore:
6004         * check/Makefile.am:
6005         * check/gst-libs/.cvsignore:
6006         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
6007         * check/gst/.cvsignore:
6008         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
6009         (START_TEST), (gstbus_suite), (main):
6010         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
6011         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
6012         (gst_data_suite), (main):
6013         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
6014         (add_fold_func), (gstiterator_suite), (main):
6015         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
6016         (thread_name_object), (thread_name_object_default),
6017         (gst_object_name_compare), (gst_object_suite), (main):
6018         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
6019         (gst_pad_suite), (main):
6020         * check/gstcheck.c: (gst_check_log_message_func),
6021         (gst_check_log_critical_func), (gst_check_init):
6022         * check/gstcheck.h:
6023         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
6024         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
6025         Added checks.
6026
6027 2005-03-07  Wim Taymans  <wim@fluendo.com>
6028
6029         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
6030         (gst_list_iterator_next), (gst_list_iterator_resync),
6031         (gst_list_iterator_free), (gst_iterator_new_list),
6032         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
6033         (gst_iterator_free), (gst_iterator_push), (filter_next),
6034         (filter_resync), (filter_uninit), (filter_free),
6035         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
6036         (gst_iterator_foreach), (find_custom_fold_func),
6037         (gst_iterator_find_custom):
6038         * gst/gstiterator.h:
6039         Added missing files.
6040
6041 2005-03-07  Wim Taymans  <wim@fluendo.com>
6042
6043         * Makefile.am:
6044         * configure.ac:
6045         * docs/design/part-MT-refcounting.txt:
6046         * docs/design/part-conventions.txt:
6047         * docs/design/part-gstobject.txt:
6048         * docs/design/part-relations.txt:
6049         * examples/mixer/mixer.c: (main):
6050         * examples/thread/thread.c: (eos), (main):
6051         * gst/Makefile.am:
6052         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
6053         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
6054         (gst_spider_plug_from_srcpad):
6055         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
6056         (gst_spider_identity_change_state),
6057         (gst_spider_identity_sink_loop_type_finding):
6058         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
6059         * gst/elements/gstidentity.c: (gst_identity_init):
6060         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
6061         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
6062         * gst/elements/gsttypefindelement.c: (free_entry):
6063         * gst/gst.c:
6064         * gst/gst.h:
6065         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
6066         (gst_bin_set_clock_func), (gst_bin_auto_clock),
6067         (gst_bin_set_index), (gst_bin_set_element_sched),
6068         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
6069         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
6070         (gst_bin_iterate_elements), (iterate_child_recurse),
6071         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
6072         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
6073         (compare_interface), (gst_bin_get_by_interface),
6074         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
6075         * gst/gstbin.h:
6076         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
6077         (gst_buffer_default_free), (gst_buffer_default_copy),
6078         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
6079         (gst_buffer_create_sub):
6080         * gst/gstbuffer.h:
6081         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
6082         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
6083         (gst_caps_unref), (gst_static_caps_get),
6084         (gst_caps_remove_and_get_structure), (gst_caps_append),
6085         (gst_caps_append_structure), (gst_caps_remove_structure),
6086         (gst_caps_copy_nth), (gst_caps_set_simple),
6087         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
6088         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
6089         (gst_caps_structure_intersect_field), (gst_caps_intersect),
6090         (gst_caps_structure_subtract_field), (gst_caps_subtract),
6091         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
6092         (gst_caps_structure_figure_out_union),
6093         (gst_caps_switch_structures), (gst_caps_do_simplify),
6094         (gst_caps_replace), (gst_caps_from_string),
6095         (gst_caps_copy_conditional):
6096         * gst/gstcaps.h:
6097         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
6098         (_gst_clock_id_free), (gst_clock_id_unref),
6099         (gst_clock_id_compare_func), (gst_clock_id_wait),
6100         (gst_clock_id_wait_async), (gst_clock_class_init),
6101         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
6102         (gst_clock_get_time), (gst_clock_set_time_adjust),
6103         (gst_clock_set_property), (gst_clock_get_property):
6104         * gst/gstclock.h:
6105         * gst/gstcompat.h:
6106         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
6107         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
6108         * gst/gstdata.h:
6109         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
6110         (gst_element_requires_clock), (gst_element_provides_clock),
6111         (gst_element_set_clock), (gst_element_clock_wait),
6112         (gst_element_wait), (gst_element_set_time_delay),
6113         (gst_element_is_indexable), (gst_element_add_pad),
6114         (gst_element_add_ghost_pad), (gst_element_remove_pad),
6115         (pad_compare_name), (gst_element_get_static_pad),
6116         (gst_element_request_pad), (gst_element_get_request_pad),
6117         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
6118         (gst_element_class_get_pad_template_list),
6119         (gst_element_class_get_pad_template), (gst_element_error_func),
6120         (gst_element_get_random_pad), (gst_element_get_event_masks),
6121         (gst_element_send_event), (gst_element_seek),
6122         (gst_element_get_query_types), (gst_element_query),
6123         (gst_element_get_formats), (gst_element_convert),
6124         (gst_element_is_locked_state), (gst_element_set_locked_state),
6125         (gst_element_sync_state_with_parent), (gst_element_change_state),
6126         (gst_element_finalize), (gst_element_yield),
6127         (gst_element_interrupt), (gst_element_set_scheduler),
6128         (gst_element_get_scheduler), (gst_element_set_loop_function):
6129         * gst/gstelement.h:
6130         * gst/gstevent.h:
6131         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
6132         (gst_format_get_by_nick), (gst_format_get_details),
6133         (gst_format_iterate_definitions):
6134         * gst/gstformat.h:
6135         * gst/gstindex.c: (gst_index_gtype_resolver):
6136         * gst/gstinfo.c:
6137         * gst/gstinfo.h:
6138         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
6139         (gst_mem_chunk_free):
6140         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
6141         (gst_object_ref), (gst_object_unref), (gst_object_sink),
6142         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
6143         (gst_object_dispatch_properties_changed),
6144         (gst_object_set_name_default), (gst_object_set_name),
6145         (gst_object_get_name), (gst_object_set_name_prefix),
6146         (gst_object_get_name_prefix), (gst_object_set_parent),
6147         (gst_object_get_parent), (gst_object_unparent),
6148         (gst_object_check_uniqueness), (gst_object_save_thyself),
6149         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
6150         (gst_object_set_property), (gst_object_get_property),
6151         (gst_object_get_path_string):
6152         * gst/gstobject.h:
6153         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
6154         (gst_real_pad_init), (gst_real_pad_get_property),
6155         (gst_pad_custom_new), (gst_pad_get_direction),
6156         (gst_pad_set_active), (gst_pad_is_active),
6157         (gst_pad_set_event_function), (gst_pad_is_linked),
6158         (gst_pad_link_free), (gst_pad_link_intersect),
6159         (gst_pad_link_fixate), (gst_pad_set_caps),
6160         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
6161         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
6162         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
6163         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
6164         (gst_pad_get_caps), (gst_pad_peer_get_caps),
6165         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
6166         (gst_pad_realize), (gst_pad_get_allowed_caps),
6167         (gst_real_pad_dispose), (gst_real_pad_finalize),
6168         (gst_pad_collectv), (gst_pad_collect_valist),
6169         (gst_pad_template_dispose), (gst_pad_template_new),
6170         (gst_pad_get_internal_links):
6171         * gst/gstpad.h:
6172         * gst/gstpipeline.c: (gst_pipeline_dispose),
6173         (gst_pipeline_change_state):
6174         * gst/gstpipeline.h:
6175         * gst/gstplugin.c:
6176         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
6177         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
6178         * gst/gstpluginfeature.h:
6179         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6180         * gst/gstquery.c: (_gst_query_type_initialize),
6181         (gst_query_type_register), (gst_query_type_get_by_nick),
6182         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
6183         * gst/gstquery.h:
6184         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
6185         * gst/gstscheduler.c: (gst_scheduler_add_element),
6186         (gst_scheduler_factory_create):
6187         * gst/gststructure.c: (gst_structure_set_parent_refcount),
6188         (gst_structure_free), (gst_structure_set_name),
6189         (gst_structure_id_set_value), (gst_structure_set_value),
6190         (gst_structure_set_valist), (gst_structure_remove_field),
6191         (gst_structure_remove_fields),
6192         (gst_structure_remove_fields_valist),
6193         (gst_structure_remove_all_fields), (gst_structure_foreach),
6194         (gst_structure_map_in_place),
6195         (gst_caps_structure_fixate_field_nearest_int),
6196         (gst_caps_structure_fixate_field_nearest_double):
6197         * gst/gststructure.h:
6198         * gst/gstsystemclock.c: (gst_system_clock_class_init),
6199         (gst_system_clock_init), (gst_system_clock_dispose),
6200         (gst_system_clock_async_thread),
6201         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
6202         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
6203         * gst/gstsystemclock.h:
6204         * gst/gsttag.c: (gst_tag_list_add_value_internal),
6205         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
6206         * gst/gsttaginterface.c:
6207         * gst/gstthread.c: (gst_thread_dispose),
6208         (gst_thread_release_children_locks), (gst_thread_change_state),
6209         (gst_thread_main_loop):
6210         * gst/gsttrashstack.h:
6211         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
6212         * gst/gsttypes.h:
6213         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
6214         (gst_element_request_pad), (gst_element_get_pad_from_template),
6215         (gst_element_request_compatible_pad),
6216         (gst_element_get_compatible_pad_filtered),
6217         (gst_element_get_compatible_pad), (gst_element_state_get_name),
6218         (gst_element_link_pads_filtered), (gst_element_link_filtered),
6219         (gst_element_link_many), (gst_element_link),
6220         (gst_element_link_pads), (gst_element_unlink_pads),
6221         (gst_element_unlink_many), (gst_element_unlink),
6222         (gst_pad_can_link_filtered), (gst_pad_can_link),
6223         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
6224         (gst_object_default_error), (gst_bin_add_many),
6225         (gst_bin_remove_many), (gst_element_populate_std_props),
6226         (gst_element_class_install_std_props), (gst_buffer_merge),
6227         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
6228         (link_fold_func), (gst_pad_proxy_setcaps):
6229         * gst/gstutils.h:
6230         * gst/gstvalue.c: (gst_value_deserialize_string):
6231         * gst/parse/grammar.y:
6232         * gst/schedulers/gstbasicscheduler.c:
6233         (gst_basic_scheduler_cothreaded_chain),
6234         (gst_basic_scheduler_chain_recursive_add),
6235         (gst_basic_scheduler_pad_link):
6236         * gst/schedulers/gstoptimalscheduler.c:
6237         (get_group_schedule_function),
6238         (gst_opt_scheduler_state_transition),
6239         (gst_opt_scheduler_add_element), (element_get_reachables_func):
6240         * libs/gst/bytestream/bytestream.c:
6241         * libs/gst/dataprotocol/dataprotocol.c:
6242         (gst_dp_header_from_buffer):
6243         * po/nb.po:
6244         * po/ru.po:
6245         * tests/threadstate/threadstate2.c: (eos):
6246         * tools/gst-compprep.c: (main):
6247         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
6248         (print_pad_info), (print_children_info):
6249         * tools/gst-launch.c: (idle_func), (main):
6250         * tools/gst-md5sum.c: (idle_func), (main):
6251         * tools/gst-xmlinspect.c: (print_element_info):
6252         First THREADED backport attempt, focusing on adding locks and
6253         making sure the API is threadsafe. Needs more work. More docs
6254         follow this week.
6255
6256 2005-02-24  Andy Wingo  <wingo@pobox.com>
6257
6258         * tests/bench-complexity.scm:
6259         * tests/complexity.gnuplot: New files, good for running complexity
6260         benchmarks.
6261
6262         * tests/Makefile.am:
6263         * tests/complexity.c: New test, sets up N elements, at each level
6264         teeing into M streams per element. Eeeenteresting.
6265
6266         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
6267         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
6268         running bench-mass_elements.scm.
6269
6270         * tests/bench-mass_elements.scm: New script, runs mass_elements
6271         for various numbers of identities, outputting the results to a
6272         file. Requires guile 1.6. Just for testing.
6273
6274 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6275
6276         * gst/schedulers/fairscheduler.c:
6277           compile with debug disabled
6278
6279 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6280
6281         * configure.ac:
6282           hunting season on 0.9 is now OPEN
6283
6284 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
6285
6286         * docs/libs/tmpl/gstcontrol.sgml:
6287         * docs/libs/tmpl/gstdparam.sgml:
6288         * docs/libs/tmpl/gstdplinint.sgml:
6289         * docs/libs/tmpl/gstdpman.sgml:
6290         * docs/libs/tmpl/gstdpsmooth.sgml:
6291         * docs/libs/tmpl/gstunitconvert.sgml:
6292           more docs for the state of dparams
6293
6294 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6295
6296         * gst/gstelementfactory.c: (gst_element_factory_create):
6297         * gst/gstobject.c: (gst_object_init),
6298         (gst_object_set_name_default), (gst_object_set_name):
6299           name objects by default, not in gst_element_factory_create. Allows
6300           using elements created with g_object_new. (fixes #167283)
6301
6302 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6303
6304         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
6305           make the time that debugging functions print relative to when
6306           gst_init was called
6307
6308 2005-02-18  Tim-Philipp M??ller  <tim at centricular dot net>
6309
6310         * gst/gsttaginterface.c:
6311           Fix inline docs: tag setter vararg functions are NULL-terminated,
6312           GST_TAG_INVALID doesn't exist any more.
6313
6314 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6315
6316         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
6317         Allocate the 1 byte more memory that was forgotten!!!!!
6318         fixes memory corruption on 64bit platforms
6319
6320 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
6321
6322         * docs/pwg/building-pads.xml:
6323         * docs/pwg/intro-basics.xml:
6324           fixed a few typos, relabeled introductionary list of types
6325         * docs/random/ensonic/dparams.txt:
6326           more notes abut dparam changes
6327         * libs/gst/control/dparam.c: (gst_dparam_attach):
6328         * libs/gst/control/dparammanager.c:
6329         * libs/gst/control/dparammanager.h:
6330           - many comments and notes on dparam implementation
6331           - new dparams are were not initialized to the default value
6332             from param spec
6333
6334 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
6335
6336         submitted by: Peter Astakhov
6337
6338         * po/LINGUAS:
6339         * po/ru.po:
6340           adding Russian translation
6341
6342 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6343
6344         * configure.ac:
6345         * docs/gst/Makefile.am:
6346         * docs/libs/Makefile.am:
6347           make sure popt is added to gtk-doc flags.  Fixes #147782.
6348
6349 2005-02-09  Tim-Philipp M??ller  <tim at centricular dot net>
6350
6351         * docs/faq/using.xml:
6352           Fix typo in FAQ (artssink => artsdsink)
6353
6354 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6355
6356         * tools/gst-launch.1.in:
6357           Fix typo (#166699).
6358
6359 2005-02-08  Tim-Philipp M??ller  <tim at centricular dot net>
6360
6361         * docs/faq/using.xml:
6362           Add -v argument to fakesrc/fakesink gst-launch line,
6363           so that the promised output will actually show up.
6364
6365 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6366
6367         * gst/gstthread.c: (gst_thread_change_state):
6368           Implement state-change error handling (#166073).
6369
6370 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6371
6372         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6373           Release interrupt after handling (#166250).
6374
6375 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6376
6377         * configure.ac:
6378           back to HEAD
6379
6380 === release 0.8.9 ===
6381
6382 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6383
6384         * NEWS:
6385         * RELEASE:
6386         * configure.ac:
6387           releasing 0.8.9, "Like Eating Glass"
6388
6389 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6390
6391         submitted by: Clytie Siddall
6392
6393         * po/vi.po: Added Vietnamese translation
6394
6395 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6396
6397         patch by: Tim Philipp-M??ller
6398
6399         * configure.ac:
6400         * gst/gstpad.c:
6401           unref data when probe function returns FALSE.  Fixes #166362
6402
6403 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6404
6405         * gst/gst.c: (gst_init_get_popt_table):
6406           Fix typo (#166269).
6407
6408 2005-02-04  Andy Wingo  <wingo@pobox.com>
6409
6410         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
6411         the debugging on whether the caps are compatible.
6412
6413 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6414
6415         * docs/manual/basics-elements.xml:
6416           Fix two typos.
6417
6418 2005-02-02  Wim Taymans  <wim@fluendo.com>
6419
6420         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
6421         (schedule_chain), (get_invalid_call), (chain_invalid_call),
6422         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
6423         Remove some FIXMEs after analysing and commenting why they
6424         are not issues.
6425
6426 2005-02-02  Wim Taymans  <wim@fluendo.com>
6427
6428         * gst/schedulers/gstoptimalscheduler.c:
6429         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
6430         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
6431         (get_invalid_call), (chain_invalid_call),
6432         (get_group_schedule_function), (loop_group_schedule_function),
6433         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6434         (gst_opt_scheduler_state_transition),
6435         (gst_opt_scheduler_add_element),
6436         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
6437         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
6438         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
6439         (gst_opt_scheduler_show):
6440         Added lock to protect scheduler data structures.
6441
6442 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6443
6444         * testsuite/threads/threadi.c: (cb_data):
6445           Fix buglet in test.
6446
6447 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6448
6449         * testsuite/threads/Makefile.am:
6450         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
6451           On Wim's request, split the test in three separately-compiled
6452           tests that each test a very specific bug. Two of them still fail,
6453           will create bugs for those. threadi.c indicates why they fail.
6454
6455 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6456
6457         * gst/schedulers/gstoptimalscheduler.c:
6458         (get_group_schedule_function):
6459           Try to work with the threading mess that queue_link is.
6460
6461 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6462
6463         * gst/gstbin.c: (gst_bin_remove_func):
6464           Explicitely make an element release locks in a group when being
6465           remove from a bin.
6466         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6467           If there's no scheduler, always return immediately (similar to
6468           gst_element_interrupt).
6469
6470 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6471
6472         * gst/gstbin.c: (gst_bin_child_state_change_func):
6473           Remove a piece of code that could never be reached.
6474         * docs/gst/gstreamer-sections.txt:
6475         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
6476         (gst_pad_call_get_function):
6477         * gst/gstpad.h:
6478         * testsuite/pad/Makefile.am:
6479           Fix #150546, enable tests.
6480
6481 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6482
6483         * docs/pwg/advanced-types.xml:
6484           Fix description for buffer-frames=0.
6485         * docs/gst/tmpl/gstbin.sgml:
6486         * gst/gstbin.c: (gst_bin_child_state_change_func),
6487         (gst_bin_change_state), (gst_bin_change_state_norecurse):
6488         * gst/gstbin.h:
6489         * testsuite/threads/Makefile.am:
6490         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
6491         (cb_state), (cb_play), (main):
6492           Fix non-recursive state changes to *really* change the state
6493           of the object, and not just call parent_class->state_change.
6494           Fix a lot of lockups caused by this. Fixes #132775. Add test
6495           for the problem. Also enable test to show #142588 (fixed).
6496         * gst/gstthread.c: (gst_thread_change_state),
6497         (gst_thread_child_state_change):
6498           Don't exit the thread if we go to NULL and are inside thread
6499           context. Instead, return control to the main thread context
6500           and exit from there.
6501         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
6502           Don't unset virtual functions, since those may still be used.
6503           That's not necessarily correct, but suffices for now.
6504         * configure.ac:
6505         * testsuite/Makefile.am:
6506         * testsuite/pad/Makefile.am:
6507         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
6508         (gst_test_sink_base_init), (gst_test_sink_chain),
6509         (gst_test_sink_init), (main):
6510         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
6511         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
6512         (main):
6513         * testsuite/pad/link.c: (gst_test_element_class_init),
6514         (gst_test_element_base_init), (gst_test_src_get),
6515         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
6516         (gst_test_filter_loop), (gst_test_filter_init),
6517         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
6518         (cb_error), (main):
6519           Add tests to show #150546. Pass, but should fail (currently
6520           disabled from the testsuite).
6521         * gst/gstscheduler.c: (gst_scheduler_dispose):
6522           Dereference child schedulers on dispose (#94464).
6523         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
6524           Fix typo.
6525         * testsuite/threads/thread.c: (main):
6526           Add more debug.
6527
6528 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6529
6530         * gst/gstpad.c: (gst_pad_push):
6531           Oops, revert previous commit, broke testsuite...
6532
6533 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6534
6535         * gst/gstpad.c: (gst_pad_push):
6536           Add check that the pad on which the push is performed is not a
6537           get-based pad (#150546).
6538
6539 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6540
6541         * gst/elements/gsttypefindelement.c:
6542         (gst_type_find_element_handle_event):
6543           Fix buffer pushing if stream EOSes during typefinding.
6544
6545 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
6546
6547         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6548
6549         * gst/gstvalue.c: (gst_string_wrap):
6550           Allow NULL-strings as argument (#165365).
6551
6552 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
6553
6554         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6555
6556         * gst/schedulers/faircothreads.c:
6557         (gst_fair_scheduler_cothread_queue_show):
6558           Fix build without debug enabled.
6559
6560 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
6561
6562         * docs/gst/gstreamer-sections.txt:
6563         * docs/libs/gstreamer-libs-docs.sgml:
6564         * docs/libs/gstreamer-libs-sections.txt:
6565         * docs/libs/tmpl/gstcontrol.sgml:
6566         * docs/libs/tmpl/gstdparam.sgml:
6567         * docs/libs/tmpl/gstdplinint.sgml:
6568         * docs/libs/tmpl/gstdpman.sgml:
6569         * docs/libs/tmpl/gstdpsmooth.sgml:
6570         * docs/libs/tmpl/gstputbits.sgml:
6571         * docs/libs/tmpl/gstunitconvert.sgml:
6572         * libs/gst/control/dparam.c:
6573         * libs/gst/control/dparam.h:
6574         * libs/gst/control/dparammanager.c:
6575         (gst_dpman_add_required_dparam_callback),
6576         (gst_dpman_add_required_dparam_direct),
6577         (gst_dpman_add_required_dparam_array),
6578         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
6579         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
6580         (gst_dpman_get_manager)
6581           restructured DParam docs
6582
6583 2005-01-25  Tim-Philipp M??ller  <tim at centricular dot net>
6584
6585         * gst-element-check.m4:
6586           Only check for gst-inspect if we haven't already
6587           found it in previous element check runs
6588
6589 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
6590
6591         * docs/gst/Makefile.am:
6592         * docs/libs/Makefile.am:
6593           fixed install rules to treat style.css as optional
6594
6595 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
6596
6597         * docs/gst/Makefile.am:
6598         * docs/libs/Makefile.am:
6599           install style.css along with docs
6600         * docs/gst/tmpl/gstbin.sgml:
6601         * docs/gst/tmpl/gstclock.sgml:
6602         * docs/gst/tmpl/gstdata.sgml:
6603         * docs/gst/tmpl/gstelement.sgml:
6604         * gst/gstbin.h:
6605         * gst/gstelement.c: (gst_element_class_init):
6606         * gst/gstelement.h:
6607           fixing incomplete docs
6608
6609 2005-01-24  Tim-Philipp M??ller  <tim at centricular dot net>
6610
6611         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6612           Don't unref seek event twice when fflush() fails
6613           
6614 2005-01-22  David Schleef  <ds@schleef.org>
6615
6616         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
6617
6618 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
6619
6620         * docs/gst/Makefile.am:
6621         * docs/libs/Makefile.am:
6622           added params for deprecation guards
6623         * gst/gst.c:
6624         * gst/gst.h:
6625         * gst/gsterror.c: (_gst_resource_errors_init),
6626         (_gst_stream_errors_init):
6627         * gst/gsterror.h:
6628           documented some more enums
6629
6630 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
6631         * gst/autoplug/gstspideridentity.c:
6632         Cosmetic fix - spider_find_peek should be static
6633         * gst/parse/parse.l:
6634         Applying fix for #164261
6635
6636 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
6637
6638         * docs/gst/gstreamer-sections.txt:
6639         * docs/gst/tmpl/gstplugin.sgml:
6640         * docs/libs/gstreamer-libs-sections.txt:
6641         * docs/libs/tmpl/gstcontrol.sgml:
6642         * gst/gstbuffer.h:
6643         * gst/gsttag.h:
6644         * gst/gstvalue.c:
6645           added docs for the TAG defines
6646
6647 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6648
6649         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
6650           Only unref entry if there is an entry.
6651
6652 2005-01-17  Wim Taymans  <wim@fluendo.com>
6653
6654         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6655         (remove_from_group), (schedule_group), (normalize_group),
6656         (gst_opt_scheduler_iterate):
6657         Also ref/unref decoupled elements before iterating the
6658         group since they are not added to the list of elements.
6659
6660 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6661
6662         * docs/manual/highlevel-components.xml:
6663           Add subtitle/streamselection as new features to playbin.
6664
6665 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6666
6667         * docs/manual/manual.xml:
6668           Re-enable dataaccess docs (oops).
6669
6670 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6671
6672         * docs/pwg/advanced-types.xml:
6673         * docs/random/mimetypes:
6674           Add documentation on libsndfile types (#163309), by Steve Baker
6675           <steve@stevebaker.org>.
6676         * gst/gstelement.c: (gst_element_release_request_pad):
6677           If an element has no explicit function, just remove the pad.
6678
6679 2005-01-17  Luca Ognibene  <luogni@tin.it>
6680
6681         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6682
6683         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
6684           Fix memleak (#163801).
6685
6686 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6687
6688         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
6689           I think this is actually more correct...
6690
6691 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6692
6693         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6694           Another workaround for memory access while destroyed in callback.
6695           Please, someone with refcount knowledge, have a look at this.
6696
6697 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6698
6699         * docs/faq/faq.xml:
6700         * docs/faq/legal.xml:
6701           move the legal Q&A here
6702
6703 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6704
6705         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
6706         (gst_tee_request_new_pad):
6707           Fix negotiation.
6708
6709 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6710
6711         * docs/random/omega/caps2:
6712         * testsuite/caps/caps_strings:
6713           replace framerate aproximations by their real value
6714           (24000/1001, 30000/1001, 60000/1001)
6715           Partially fixes bug #164049
6716
6717 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6718
6719         * docs/gst/Makefile.am:
6720           don't fail on the stupid GstPoptOption
6721
6722 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6723
6724         * gst/gstpad.h:
6725         * gst/gstprobe.c:
6726           allow probes to work on ghost pads by realizing the pad
6727           probe debugging
6728
6729 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6730
6731         * docs/gst/gstreamer-sections.txt:
6732         * docs/gst/tmpl/gstpad.sgml:
6733         * gst/gstpad.c: (gst_pad_set_active_recursive):
6734         * gst/gstpad.h:
6735           Add gst_pad_set_active_recursive().
6736
6737 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6738
6739         * docs/random/release:
6740           updates
6741         * gst/gst_private.h:
6742         * gst/gstinfo.c:
6743         * gst/gstobject.c:
6744           move deep_notify logging to a new category
6745         * gst/gstprobe.c:
6746         * gst/gstprobe.h:
6747           add stuff so bindings can wrap probes
6748
6749 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6750
6751         * gst/gstplugin.c: (gst_plugin_load):
6752           Fix plugin loading if plugin/lib was already loaded. Fixes
6753           #163383
6754
6755 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
6756
6757         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6758
6759         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
6760           Protect plugin loading by a mutex so it's threadsafe. Fixes
6761           #163234.
6762
6763 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6764
6765         * gst/gstevent.c: (_gst_event_copy):
6766           Reference source object when copying events, since it'll be
6767           dereferenced on event dereferencing as well.
6768
6769 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6770
6771         * docs/gst/gstreamer-sections.txt:
6772         * docs/gst/tmpl/gstevent.sgml:
6773         * gst/gstevent.c: (gst_event_new_filler_stamped),
6774         (gst_event_filler_get_duration):
6775         * gst/gstevent.h:
6776           Add two new functions for filler events (which are used to
6777           synchronize streams if one of them is not having any data
6778           for a while) without interrupting the actual data-stream.
6779           Basically a no-op.
6780         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6781         (gst_queue_link_sink), (gst_queue_link_src),
6782         (gst_queue_change_state):
6783           Allow for renegotiation while filled. Required for stream
6784           switching while playing.
6785
6786 2005-01-08  Benjamin Otte  <otte@gnome.org>
6787
6788         * gst/gstelement.c: (gst_element_link_many):
6789           fix up g_return_if_fail's
6790         * po/LINGUAS:
6791         * po/de.po:
6792           add German translation, that was somehow not included
6793
6794 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6795
6796         * docs/random/mimetypes:
6797           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
6798           do not add them to riff-lib as they are not common
6799
6800 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6801
6802         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6803           Check for existence of probe after performing the probe before
6804           re-accessing it to prevent segfaults caused by removal of the
6805           probe in the callback.
6806
6807 2005-01-05  David Schleef  <ds@schleef.org>
6808
6809         * testsuite/registry/Makefile.am:
6810         * testsuite/registry/gst-print-formats.c:
6811         (print_pad_templates_info), (print_element_list),
6812         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
6813         (g_list_uniqify), (get_pad_templates_info),
6814         (get_element_mime_list), (print_mime_list), (main): A little
6815         program that looks through the registry to find elements of
6816         a given type.  Not particularly interesting as a test, except
6817         that there's no other test covering the same area.
6818
6819 2005-01-05  David Schleef  <ds@schleef.org>
6820
6821         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
6822         (fault_handler_sigaction), (fault_spin),
6823         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
6824         in signal.h-type signal handlers by not calling forbidden functions,
6825         including gst_element_set_state().
6826
6827 2005-01-05  David Schleef  <ds@schleef.org>
6828
6829         * gst/gstvalue.h: Mark _gst_reserved[] as private
6830
6831 2005-01-05  David Schleef  <ds@schleef.org>
6832
6833         * gst/gstvalue.c: Fix doc build problem.
6834
6835 2005-01-05  David Schleef  <ds@schleef.org>
6836
6837         * gst/gstvalue.c: Add some documentation
6838
6839 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
6840
6841         * docs/README:
6842           another shell oneliner for empty return value docs
6843         * gst/gstcaps.c:
6844         * gst/gstvalue.c:
6845         * libs/gst/control/dparam.c:
6846           more doc fixes (parameters and return values)
6847
6848 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
6849
6850         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6851
6852         * gst/gstregistry.h:
6853         * gst/registries/gstxmlregistry.c:
6854           Fix macro's for Mingw (fixes #162276).
6855
6856 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
6857
6858         * docs/README:
6859           quick shell oneliner to find undocumented members
6860         * docs/gst/tmpl/gstplugin.sgml:
6861         * docs/gst/tmpl/gstscheduler.sgml:
6862         * docs/gst/tmpl/gstthread.sgml:
6863           more enumtypes cleanup
6864         * gst/gsterror.h:
6865           activated documentation comments, now someone needs to document
6866           the enums :(
6867
6868 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6869
6870         * docs/manual/manual.xml:
6871           Add dataaccess part (doh!).
6872
6873 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6874
6875         * docs/manual/advanced-autoplugging.xml:
6876           Fix typo (intiate -> initiate).
6877
6878 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6879
6880         * docs/random/bbb/streamselection:
6881           Add some notes on how to handle multi-subtitle/-audio streams.
6882
6883 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
6884
6885         * docs/gst/gstreamer-docs.sgml:
6886         * docs/gst/gstreamer-sections.txt:
6887         * docs/gst/tmpl/gstenumtypes.sgml:
6888         * docs/gst/tmpl/gsterror.sgml:
6889         * docs/gst/tmpl/gstevent.sgml:
6890         * docs/gst/tmpl/gstpad.sgml:
6891         * docs/gst/tmpl/gstpadtemplate.sgml:
6892         * docs/gst/tmpl/gstthread.sgml:
6893           removed gstenumtypes section from docs and put all the enums into
6894           their sections
6895
6896 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6897
6898         * gst/gstplugin.c:
6899           document gst_library_load a bit more (riff special case + return
6900           value if already loaded)
6901         * testsuite/bytestream/filepadsink.c:
6902           plugin name is 'gstbytestream', not 'bytestream'
6903
6904 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6905
6906         * docs/random/bbb/subtitles:
6907           Add some first mind rumblings on proper subtitle support.
6908
6909 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6910
6911         * po/ca.po:
6912         * po/sv.po:
6913           updated translations
6914
6915 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6916
6917         * docs/manual/advanced-dataaccess.xml:
6918           Add section on how to use fakesrc/fakesink/identity in your
6919           application, plus section on how to embed plugins. Also mention
6920           probes.
6921         * docs/manual/appendix-checklist.xml:
6922         * docs/manual/appendix-debugging.xml:
6923         * docs/manual/appendix-gnome.xml:
6924         * docs/manual/appendix-integration.xml:
6925           Debug -> checklist, GNOME -> integration, add sections on Linux,
6926           KDE integration and add other things useful for application
6927           development.
6928         * docs/manual/manual.xml:
6929           Remove some fixmes, update some file pointers.
6930         * docs/pwg/appendix-checklist.xml:
6931           Fix typo.
6932         * docs/pwg/building-boiler.xml:
6933           Remove ugly header and add commented fixme.
6934         * docs/pwg/pwg.xml:
6935           Add fixme.
6936         * examples/manual/Makefile.am:
6937           Add example for added docs.
6938
6939 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6940
6941         * configure.ac:
6942           back to HEAD
6943
6944 === release 0.8.8 ===
6945
6946 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6947
6948         * NEWS:
6949         * RELEASE:
6950         * configure.ac:
6951           Releasing 0.8.8, "I'll Take Care Of You"
6952
6953 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6954
6955         * configure.ac:
6956           second prerelease
6957
6958 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6959
6960         patch by: Wim Taymans
6961
6962         * gst/gstbin.c:
6963           Fix for #159852 - make iterate emission threadsafe
6964
6965 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6966
6967         * docs/faq/cvs.xml:
6968           notes about new fdo account request
6969
6970 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6971
6972         * docs/gst/gstreamer-docs.sgml:
6973         * docs/gst/tmpl/gstenumtypes.sgml:
6974         * docs/gst/tmpl/gstplugin.sgml:
6975         * docs/libs/gstreamer-libs-docs.sgml:
6976           Added missing short docs. Added ids for navigation.
6977
6978 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6979
6980         * docs/manual/advanced-autoplugging.xml:
6981         * docs/manual/advanced-schedulers.xml:
6982         * docs/manual/advanced-threads.xml:
6983           Rewrites. Remove cothreads, go a bit into opt specifically,
6984           document threads and their gotchas, and do some technical stuff
6985           on autoplugging plus add some working examples. Fixes #157395.
6986         * examples/manual/Makefile.am:
6987           Add typefind/autoplugger example (one that actually works).
6988           Remove queue example since it's a duplicate of the thread one.
6989
6990 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6991
6992         * gst/gstvalue.c: (gst_value_deserialize_string):
6993           use deprecated g_value_set_string_take_ownership to keep compatible
6994           with glib 2.2
6995
6996 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6997
6998         * gst/gstvalue.c: (gst_value_deserialize_string):
6999           revert last patch, only dom a g_utf8_validate now before accepting
7000           the string - caps parsing strips " from strings so we can't rely on
7001           them
7002         * testsuite/caps/value_serialize.c: (test_string_deserialization):
7003           disable a test that tested the above and comment it
7004
7005 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
7006
7007         Patch reviewed by David Schleef  <ds@schleef.org>
7008
7009         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
7010         bug #153882)
7011         * win32/gstenumtypes.h: same
7012
7013 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7014
7015         * gst/gstpad.c: (gst_pad_query):
7016           Do query on realized pad, similar to how convert/send_event handle
7017           this. Also makes sense, since this pad belongs to the function to
7018           which this query will be sent. Fixes #158163.
7019
7020 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
7021
7022         * docs/manual/appendix-programs.xml: fix pipeline to actually work
7023
7024 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
7025
7026         * docs/faq/general.xml: fix pipeline to actually work
7027
7028 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7029
7030         * gst/gstvalue.c: (gst_value_deserialize_string):
7031           check that a simple string that gets deserialized does not contain
7032           invalid characters
7033         * testsuite/caps/value_serialize.c: (test_string_deserialization):
7034           remove a test that tested a wring behaviour
7035
7036 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
7037
7038         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7039
7040         * docs/manual/intro-motivation.xml:
7041           Fix typos.
7042
7043 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
7044
7045         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7046
7047         * docs/gst/tmpl/gstprobe.sgml:
7048           Fix documentation of probe callback - it is supposed to return
7049           FALSE, not TRUE, to remove data from the stream (#159087).
7050
7051 2004-12-16  Daniel Gazard  <dany42@free.fr>
7052
7053         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7054
7055         * gst/gstelementfactory.c: (gst_element_factory_create):
7056           Fix compile failure if compiling without libxml2 support (#149936).
7057
7058 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7059
7060         * docs/manual/advanced-autoplugging.xml:
7061         * docs/manual/highlevel-components.xml:
7062           Move spider from autoplugging to components. Autoplugging is for
7063           internals, not for solutions. ;-).
7064
7065 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7066
7067         * docs/random/ds/0.9-suggested-changes:
7068           Make note on device/location/uri property names.
7069
7070 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7071
7072         * docs/manual/advanced-autoplugging.xml:
7073         * docs/manual/advanced-clocks.xml:
7074         * docs/manual/advanced-interfaces.xml:
7075         * docs/manual/advanced-metadata.xml:
7076         * docs/manual/advanced-position.xml:
7077         * docs/manual/advanced-schedulers.xml:
7078         * docs/manual/advanced-threads.xml:
7079         * docs/manual/appendix-gnome.xml:
7080         * docs/manual/appendix-programs.xml:
7081         * docs/manual/appendix-quotes.xml:
7082         * docs/manual/autoplugging.xml:
7083         * docs/manual/basics-bins.xml:
7084         * docs/manual/basics-data.xml:
7085         * docs/manual/basics-elements.xml:
7086         * docs/manual/basics-helloworld.xml:
7087         * docs/manual/basics-init.xml:
7088         * docs/manual/basics-pads.xml:
7089         * docs/manual/basics-plugins.xml:
7090         * docs/manual/bins-api.xml:
7091         * docs/manual/bins.xml:
7092         * docs/manual/buffers-api.xml:
7093         * docs/manual/buffers.xml:
7094         * docs/manual/clocks.xml:
7095         * docs/manual/components.xml:
7096         * docs/manual/cothreads.xml:
7097         * docs/manual/debugging.xml:
7098         * docs/manual/dparams-app.xml:
7099         * docs/manual/dynamic.xml:
7100         * docs/manual/elements-api.xml:
7101         * docs/manual/elements.xml:
7102         * docs/manual/factories.xml:
7103         * docs/manual/gnome.xml:
7104         * docs/manual/goals.xml:
7105         * docs/manual/helloworld.xml:
7106         * docs/manual/helloworld2.xml:
7107         * docs/manual/highlevel-components.xml:
7108         * docs/manual/highlevel-xml.xml:
7109         * docs/manual/init-api.xml:
7110         * docs/manual/intro-basics.xml:
7111         * docs/manual/intro-motivation.xml:
7112         * docs/manual/intro-preface.xml:
7113         * docs/manual/intro.xml:
7114         * docs/manual/links-api.xml:
7115         * docs/manual/links.xml:
7116         * docs/manual/manual.xml:
7117         * docs/manual/motivation.xml:
7118         * docs/manual/pads-api.xml:
7119         * docs/manual/pads.xml:
7120         * docs/manual/plugins-api.xml:
7121         * docs/manual/plugins.xml:
7122         * docs/manual/programs.xml:
7123         * docs/manual/queues.xml:
7124         * docs/manual/quotes.xml:
7125         * docs/manual/schedulers.xml:
7126         * docs/manual/states-api.xml:
7127         * docs/manual/states.xml:
7128         * docs/manual/threads.xml:
7129         * docs/manual/typedetection.xml:
7130         * docs/manual/win32.xml:
7131         * docs/manual/xml.xml:
7132           Try 2. This time, include a short preface as a "general
7133           introduction", also add code blocks around all code samples
7134           so they get compiled. We still need a way to tell readers
7135           the filename of the code sample. In some cases, don't show
7136           all code in the documentation, but do include it in the generated
7137           code. This allows for focussing on specific bits in the docs,
7138           while still having a full test application available.
7139         * examples/manual/Makefile.am:
7140           Fix up examples for new ADM. Add several of the new examples that
7141           were either added or were missing from the build system.
7142         * examples/manual/extract.pl:
7143           Allow nameless blocks.
7144
7145 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7146
7147         * docs/manual/elements-api.xml:
7148         * docs/manual/helloworld.xml:
7149         * examples/manual/extract.pl:
7150           fix last example.  Add example of adding code blocks that are not
7151           shown in docbook output.
7152
7153 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7154
7155         * docs/manual/dynamic.xml:
7156         * docs/manual/elements-api.xml:
7157         * docs/manual/gnome.xml:
7158         * docs/manual/helloworld2.xml:
7159         * docs/manual/init-api.xml:
7160         * docs/manual/queues.xml:
7161         * docs/manual/threads.xml:
7162         * docs/manual/xml.xml:
7163         * examples/manual/extract.pl:
7164           Make it possible to extract example code from separate blocks.
7165           Should make Ronald happy.
7166
7167 2004-12-15  Wim Taymans  <wim@fluendo.com>
7168
7169         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7170         (remove_from_group), (group_elements_set_visited),
7171         (normalize_group), (gst_opt_scheduler_iterate):
7172         Fix bug where a flag was not updated on a decoupled entry point 
7173         because we were just checking the group element list and decoupled
7174         elements are not in that list..
7175
7176 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7177
7178         * docs/manual/advanced-autoplugging.xml:
7179         * docs/manual/advanced-clocks.xml:
7180         * docs/manual/advanced-dparams.xml:
7181         * docs/manual/advanced-interfaces.xml:
7182         * docs/manual/advanced-metadata.xml:
7183         * docs/manual/advanced-position.xml:
7184         * docs/manual/advanced-schedulers.xml:
7185         * docs/manual/advanced-threads.xml:
7186         * docs/manual/appendix-debugging.xml:
7187         * docs/manual/appendix-gnome.xml:
7188         * docs/manual/appendix-programs.xml:
7189         * docs/manual/appendix-quotes.xml:
7190         * docs/manual/appendix-win32.xml:
7191         * docs/manual/autoplugging.xml:
7192         * docs/manual/basics-bins.xml:
7193         * docs/manual/basics-data.xml:
7194         * docs/manual/basics-elements.xml:
7195         * docs/manual/basics-helloworld.xml:
7196         * docs/manual/basics-init.xml:
7197         * docs/manual/basics-pads.xml:
7198         * docs/manual/basics-plugins.xml:
7199         * docs/manual/bins-api.xml:
7200         * docs/manual/bins.xml:
7201         * docs/manual/buffers-api.xml:
7202         * docs/manual/buffers.xml:
7203         * docs/manual/clocks.xml:
7204         * docs/manual/components.xml:
7205         * docs/manual/cothreads.xml:
7206         * docs/manual/debugging.xml:
7207         * docs/manual/dparams-app.xml:
7208         * docs/manual/dynamic.xml:
7209         * docs/manual/elements-api.xml:
7210         * docs/manual/elements.xml:
7211         * docs/manual/factories.xml:
7212         * docs/manual/gnome.xml:
7213         * docs/manual/goals.xml:
7214         * docs/manual/helloworld.xml:
7215         * docs/manual/helloworld2.xml:
7216         * docs/manual/highlevel-components.xml:
7217         * docs/manual/highlevel-xml.xml:
7218         * docs/manual/init-api.xml:
7219         * docs/manual/intro-motivation.xml:
7220         * docs/manual/intro-preface.xml:
7221         * docs/manual/intro.xml:
7222         * docs/manual/links-api.xml:
7223         * docs/manual/links.xml:
7224         * docs/manual/manual.xml:
7225         * docs/manual/motivation.xml:
7226         * docs/manual/pads-api.xml:
7227         * docs/manual/pads.xml:
7228         * docs/manual/plugins-api.xml:
7229         * docs/manual/plugins.xml:
7230         * docs/manual/programs.xml:
7231         * docs/manual/queues.xml:
7232         * docs/manual/quotes.xml:
7233         * docs/manual/schedulers.xml:
7234         * docs/manual/states-api.xml:
7235         * docs/manual/states.xml:
7236         * docs/manual/threads.xml:
7237         * docs/manual/typedetection.xml:
7238         * docs/manual/win32.xml:
7239         * docs/manual/xml.xml:
7240           First try at rewriting the ADM. Needs lotsamore work, but some
7241           parts might already be somewhat useful.
7242         * docs/pwg/advanced-interfaces.xml:
7243           Remove properties interface, it never actually existed (except for
7244           on my HD...).
7245
7246 2004-12-13  David Schleef  <ds@schleef.org>
7247
7248         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
7249         be NULL (bug #160220).
7250
7251 2004-12-13  David Schleef  <ds@schleef.org>
7252
7253         * configure.ac: remove all mmx stuff, because it's not used.
7254         * docs/random/ds/0.9-suggested-changes: additional notes
7255         * include/Makefile.am: we don't use these anymore
7256         * include/mmx.h: remove
7257         * include/sse.h: remove
7258
7259 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
7260
7261         * docs/random/mimetypes:
7262           Add FOURCC code for h264 codec (VSSH)
7263           Add alternate FOURCC codes for h263 related codecs
7264
7265 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
7266
7267         * docs/manual/programs.xml:
7268           Added more gst-launch examples.
7269
7270 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7271
7272         * gst/gstqueue.c: (gst_queue_handle_src_query):
7273           Check for availability again.
7274
7275 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7276
7277         * gst/gstcaps.c: (gst_caps_compare_structures):
7278           Simple caps go first. This has the nice side-effect of fixing an
7279           obscure warning.
7280
7281 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7282
7283         * gst/gstversion.h.in:
7284           Protect header.
7285
7286 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7287
7288         * gst/schedulers/gstoptimalscheduler.c:
7289         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
7290         (gst_opt_scheduler_get_wrapper):
7291           When we're recursing into a chain run, only run the directly
7292           related group, not all queued ones. This will fix a possible
7293           deadlock in chains with more than two groups.
7294
7295 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7296
7297         * autogen.sh:
7298           remove patch if autopoint fails
7299
7300 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7301
7302         * docs/gst/gstreamer-sections.txt:
7303           Document Thomas' addition, fix build, make Luis the sheriff happy.
7304
7305 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7306
7307         * gst/gstplugin.c:
7308         * gst/gstplugin.h:
7309           add accessor for version field
7310
7311 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7312
7313         submitted by: Luca Ferretti <elle.uca@infinito.it>
7314
7315         * po/LINGUAS:
7316         * po/it.po:
7317           New tranlation added: Italian
7318
7319 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7320
7321         * gst/gstpad.c: (gst_pad_is_negotiated),
7322         (gst_pad_get_negotiated_caps):
7323           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
7324           it doesn't actually check the contents), so be sure to hand it
7325           a RealPad else we'll crash.
7326
7327 2004-12-03  Wim Taymans  <wim@fluendo.com>
7328
7329         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
7330         (gst_queue_link), (gst_queue_handle_src_query):
7331         Reverted to 1.110 until this makes the testsuite and various
7332         apps work.
7333
7334 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
7335
7336         * docs/upload.mak: fix included CVS conflict strings
7337
7338 2004-12-01  William Jon McCann  <mccann@jhu.edu>
7339
7340         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7341
7342         * gst/gstelement.c: (gst_element_error_full):
7343           Use g_error_new_literal because error text may have
7344           percentage signs in it. Fixes #160019.
7345
7346 2004-12-01  Benjamin Otte  <otte@gnome.org>
7347
7348         * gst/elements/gstbufferstore.c:
7349         (gst_buffer_store_add_buffer_func):
7350           don't try to make subbuffers bigger than they can be. (fixes
7351           #159970)
7352
7353 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7354
7355         * docs/gst/gstreamer-sections.txt:
7356         * docs/gst/tmpl/gstvalue.sgml:
7357           Add new function to docs to fix build.
7358
7359 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7360
7361         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7362         * gst/gstpad.c: (_gst_pad_default_fixate_value),
7363         (_gst_pad_default_fixate_foreach):
7364         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
7365         * gst/gstvalue.h:
7366           Deprecate _type_is_fixed, use _value_is_fixed instead, since
7367           in some cases (arrays), the fixedness depends on the content.
7368         * gst/gstqueue.c: (gst_queue_handle_src_query):
7369           Check for availability before doing something.
7370
7371 2004-11-29  Wim Taymans  <wim@fluendo.com>
7372
7373         * testsuite/threads/Makefile.am:
7374         * testsuite/threads/signals.c: (gst_test_get_type),
7375         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
7376         (gst_test_set_property), (gst_test_get_property),
7377         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
7378         (gst_test_do_prop), (run_thread), (main):
7379         Added a bunch of testcases that show threadsafety bugs in glib.
7380
7381 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
7382
7383         * docs/manual/programs.xml:
7384           Added a first batch of gst-launch examples, as provided by Ronald
7385           and others from the devel-mlist
7386
7387 2004-11-28  Benjamin Otte  <otte@gnome.org>
7388
7389         * gst/gstelement.c: (gst_element_negotiate_pads):
7390           simplify
7391         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
7392         (gst_value_serialize_string), (gst_value_deserialize_string):
7393           add unwrapping of previously wrapped strings. Fix bug in wrapping
7394           while at it.
7395         * testsuite/caps/value_serialize.c: (test1),
7396         (test_string_serialization), (test_string_deserialization), (main):
7397           add tests for string (de)serialization
7398
7399 2004-11-26  Wim Taymans  <wim@fluendo.com>
7400
7401         * testsuite/threads/159566.c: (object_deep_notify), (main):
7402         * testsuite/threads/Makefile.am:
7403         Added testsuite to show bug #159566
7404
7405 2004-11-25  Wim Taymans  <wim@fluendo.com>
7406
7407         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
7408         (gst_thread_child_state_change), (gst_thread_main_loop):
7409         Ref the thread object in the GThread mainloop. Break out of the
7410         thread mainloop if it holds the last ref. This properly exits
7411         the threads when disposing the thread from its own context. It
7412         also avoids possible deadlocks in the dispose function.
7413
7414 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
7415
7416         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
7417         it is necessary to wait.
7418
7419 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7420
7421         * docs/pwg/building-boiler.xml:
7422           Make description somewhat clearer.
7423
7424 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7425
7426         * docs/upload.mak:
7427           Apparently docs changed location on FDO's server.
7428
7429 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7430
7431         * docs/pwg/appendix-checklist.xml:
7432           Add some random notes on things to check when writing an element.
7433           This list can be extended as people see fit.
7434
7435 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
7436
7437         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
7438         (gst_queue_link_src): Allow for renegotiating the caps of the sink
7439         pad. The queue will now wait until it is empty and forward the new
7440         caps to the source.
7441         * gst/gstbin.c (gst_bin_set_element_sched)
7442         (gst_bin_unset_element_sched): Make sure that all elements and
7443         links are registered and unregistered with the scheduler exactly
7444         once. This elaborates on a fix by Benjamin Otte, but
7445         guarantees that decoupled elements are also registered.
7446
7447 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7448
7449         * docs/manual/quotes.xml:
7450           add a quote
7451         * configure.ac:
7452         * gst/gst.c:
7453         * gst/gstinfo.c:
7454           add LIBDIR and move init message higher up so it's at the start
7455
7456 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
7457
7458         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
7459         * gstreamer.spec.in: add fair
7460
7461 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7462
7463         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7464         * gst/elements/gstidentity.c: (gst_identity_class_init):
7465           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
7466           <teuf@gnome.org> (#157263).
7467         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
7468         (gst_type_find_handle_src_query):
7469           Subtract size of internally stored data from position queries.
7470
7471 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
7472
7473         * gst/schedulers/fairscheduler.c:
7474         * gst/schedulers/faircothreads.c:
7475         * gst/schedulers/faircothreads.h:
7476         New cothread based scheduler: Fair scheduler.
7477         * gst/schedulers/gthread-cothreads.h: 
7478         Add the standard #if around the whole file.
7479         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
7480         compilation of the functions defined in this file. This is
7481         necessary to be able to use this file as a normal header.
7482         * gst/schedulers/Makefile.am: Add compiling support for fair
7483         scheduler.
7484         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
7485         scheduler cothreads layer from documentation generation.
7486
7487 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7488
7489         * gst/autoplug/gstspideridentity.c:
7490         (gst_spider_identity_sink_loop_type_finding):
7491           Don't crash if that function is not implemented.
7492
7493 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7494
7495         * docs/pwg/advanced-types.xml:
7496           Another typo.
7497
7498 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7499
7500         * docs/pwg/intro-preface.xml:
7501           Hm, ok, so the brackets weren't really useful...
7502         * docs/pwg/other-ntoone.xml:
7503           Fix embarassing typo.
7504
7505 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7506
7507         * docs/pwg/intro-preface.xml:
7508           Rewrite preface.
7509
7510 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7511
7512         * docs/pwg/advanced-scheduling.xml:
7513         * docs/pwg/advanced-tagging.xml:
7514         * docs/pwg/advanced-types.xml:
7515         * docs/pwg/building-boiler.xml:
7516         * docs/pwg/building-chainfn.xml:
7517         * docs/pwg/building-signals.xml:
7518         * docs/pwg/building-state.xml:
7519         * docs/pwg/building-testapp.xml:
7520         * docs/pwg/intro-basics.xml:
7521         * docs/pwg/other-manager.xml:
7522         * docs/pwg/other-source.xml:
7523           Typo fixes.
7524         * docs/pwg/other-manager.xml:
7525           Add some first content. No example code yet.
7526         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7527           Remove double newlines.
7528
7529 2004-11-04  Wim Taymans  <wim@fluendo.com>
7530
7531         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7532         (remove_from_group), (normalize_group), (group_migrate_connected),
7533         (gst_opt_scheduler_iterate):
7534         * testsuite/schedulers/.cvsignore:
7535         * testsuite/schedulers/Makefile.am:
7536         * testsuite/schedulers/queue_link.c: (main):
7537         Added testcase for scheduler segfault.
7538         Fix scheduler segfault when removing a decoupled
7539         entry point as the last element from a group.
7540
7541 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7542
7543         * gst/gstmarshal.list: add missing marshaller, fixes build
7544
7545 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7546
7547         * docs/random/signal: added notes about using BOXED for GstBuffer
7548         signal marshallers, not POINTER
7549
7550 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7551
7552         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7553         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
7554         POINTER=>BOXED changes to marshal GstBuffers
7555
7556 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7557
7558         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
7559         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
7560
7561 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
7562
7563         * docs/gst/gstreamer-sections.txt:
7564         * docs/gst/tmpl/gstcaps.sgml:
7565         * docs/gst/tmpl/gsterror.sgml:
7566         * docs/gst/tmpl/gstinfo.sgml:
7567         * docs/gst/tmpl/gstmacros.sgml:
7568         * docs/gst/tmpl/gstutils.sgml:
7569         * docs/random/ensonic/interfaces.txt:
7570         * gst/gstinfo.h:
7571           added some more docs, removed two obsolete defines
7572
7573 2004-11-02  Kjartan Maraas <as at gnome.org>
7574
7575         reviewed by: Wim Taymans, Ronald Bultje.
7576
7577         * gst/cothreads.c: (cothread_create):
7578         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
7579         (gst_bin_child_state_change_func):
7580         * gst/gstbuffer.c: (gst_buffer_span):
7581         * gst/gstelement.c: (gst_element_get_index),
7582         (gst_element_get_event_masks), (gst_element_get_query_types),
7583         (gst_element_get_formats):
7584         * gst/gsterror.c: (_gst_core_errors_init),
7585         (_gst_library_errors_init), (_gst_resource_errors_init),
7586         (_gst_stream_errors_init):
7587         * gst/gstobject.c: (gst_object_default_deep_notify):
7588         * gst/gstpad.c: (gst_pad_get_event_masks),
7589         (gst_pad_get_internal_links_default):
7590         * gst/gstplugin.c: (gst_plugin_register_func),
7591         (gst_plugin_get_module):
7592         * gst/gststructure.c: (gst_structure_get_string),
7593         (gst_structure_get_abbrs), (gst_structure_from_abbr),
7594         (gst_structure_to_abbr):
7595         * gst/gstutils.c: (gst_print_element_args):
7596         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7597         (setup_group_scheduler), (gst_opt_scheduler_iterate):
7598         Aplied part of patch #157127: Cleanup of issues reported by 
7599         sparse.
7600         Also do not try to use cothreads when there is no cothread
7601         context yet.
7602
7603 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
7604
7605         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7606         (gst_opt_scheduler_iterate):
7607         Applied patch #154061. Running a pipeline in which an element 
7608         calls GST_ELEMENT_ERROR in the chain function, the opt 
7609         scheduler doesn't unref the chain so it never gets freed.
7610
7611 2004-11-02  Wim Taymans  <wim@fluendo.com>
7612
7613         * gst/gststructure.c: (gst_structure_get_abbrs),
7614         (gst_structure_from_abbr), (gst_structure_to_abbr):
7615         Remove that ugly if-then thing in the code that converts
7616         between strings and types.
7617
7618 2004-11-02  Wim Taymans  <wim@fluendo.com>
7619
7620         * gst/gstscheduler.c: (gst_scheduler_add_element),
7621         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
7622         Aplied clock distribution patch, this should fix bug
7623         #148787.
7624
7625 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
7626
7627         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
7628
7629         * po/LINGUAS:
7630         * po/nb.po:
7631           Added Norwegian Bokmaal translation
7632
7633 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7634
7635         * tools/gst-inspect.c: (print_signal_info):
7636           print signal arguments as pointers if they are
7637
7638 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
7639
7640         * docs/pwg/building-boiler.xml:
7641           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
7642
7643 2004-10-19  Wim Taymans  <wim at fluendo dot com>
7644
7645         * gst/parse/parse.l:
7646         * testsuite/parse/parse1.c: (main):
7647         Since parse can do 'element name=a:b' make 'a:b.' work as
7648         well. 
7649         Added testcase to verify fix.
7650
7651 2004-10-19  Wim Taymans  <wim at fluendo dot com>
7652
7653         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
7654         Use the realpad when printing the direction.
7655         Add extra \n when printing extensions of typefind factories.
7656
7657 2004-10-13  David Schleef  <ds@schleef.org>
7658
7659         * examples/manual/Makefile.am: $< isn't portable in Makefile
7660         rules.
7661
7662 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
7663
7664         * docs/gst/tmpl/gstobject.sgml:
7665         * docs/gst/tmpl/gstplugin.sgml:
7666         * docs/gst/tmpl/gstpluginfeature.sgml:
7667         * docs/gst/tmpl/gstregistry.sgml:
7668         * docs/gst/tmpl/gstversion.sgml:
7669         * gst/gstbin.c:
7670           more api documentation
7671         * gst/gstplugin.c: (gst_plugin_register_func),
7672         (gst_plugin_check_file), (gst_plugin_load_file):
7673           better error signaling and logging
7674
7675 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7676
7677         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
7678           Subtract current queue contents from position queries.
7679
7680 2004-10-11  Johan Dahlin  <johan@gnome.org>
7681
7682         * gst/gsturi.c (gst_uri_get_location): unescape string
7683         (gst_uri_construct): escape string.
7684
7685 2004-10-11  Benjamin Otte  <otte@gnome.org>
7686
7687         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
7688         (gst_pad_try_set_caps_nonfixed):
7689           allow renegotiation of unconnected pads (as inside spider). Simply
7690           return OK if unconnected - mimic try_set_caps there.
7691
7692 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7693
7694         * gst/gstbin.c: (gst_bin_sync_children_state):
7695           Add missing break.
7696
7697 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7698
7699         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
7700         Set element to EOS before sending EOS event
7701
7702 2004-10-08  Wim Taymans  <wim at fluendo dot com>
7703
7704         * gst/elements/gsttypefindelement.c:
7705         (gst_type_find_element_handle_event):
7706         Handle EOS events when doing the transition from
7707         typefind to data passing. This should fix the
7708         infinite loops in short files.
7709
7710 2004-10-07  Wim Taymans  <wim at fluendo dot com>
7711
7712         * gst/gstthread.c: (gst_thread_change_state),
7713         (gst_thread_child_state_change):
7714         Make sure no iteration happens while performing
7715         the state change as it could mess up the internal
7716         consistency of the thread state.
7717
7718 2004-10-07  Wim Taymans  <wim at fluendo dot com>
7719
7720         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
7721         (gst_thread_change_state), (gst_thread_child_state_change):
7722         Do not try to grab the iterate lock in the state change method
7723         when we are in the same thread as the iterate or else we
7724         could deadlock. Some other cleanups.
7725
7726 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7727
7728         * configure.ac:
7729           bump nano to cvs
7730
7731 === release 0.8.7 ===
7732
7733 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7734
7735         * configure.ac:
7736         * NEWS:
7737         * RELEASE:
7738         * configure.ac:
7739           releasing 0.8.7, "A Cruise"
7740
7741 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
7742
7743         * docs/random/mimetypes:
7744         Add an entry for Sony ATRAC3 audio format with mime-type
7745         used by rmdemux et riff-read
7746
7747 2004-10-06  Wim Taymans  <wim at fluendo dot com>
7748
7749         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7750         Push the buffer store instead of clearing it in case that
7751         the stream is not seekable.
7752
7753 2004-10-06  Wim Taymans  <wim at fluendo dot com>
7754
7755         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
7756         (gst_thread_main_loop):
7757         Lock the iteration and the state change so that automatic
7758         negotiation and fixation does not happen at the same time
7759         as the in stream negotiation.
7760
7761 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7762
7763         * configure.ac:
7764           bump nano to cvs
7765
7766 === release 0.8.6 ===
7767
7768 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7769
7770         * configure.ac:
7771         * NEWS:
7772         * RELEASE:
7773         * configure.ac:
7774           releasing 0.8.6, "Narc"
7775
7776 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7777
7778         * configure.ac:
7779           prerel bump
7780
7781 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7782
7783         patch by: Steve Lhomme
7784
7785         * gst/elements/gstfakesrc.c:
7786         * gst/elements/gstidentity.c:
7787         * gst/gstthread.c:
7788           Fix for #153881
7789
7790 2004-10-01  Wim Taymans  <wim at fluendo dot com>
7791
7792         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
7793         Fix threadsafety of the crc checking function.
7794
7795 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7796
7797         patch by: Ronald Bultje
7798
7799         * gst/elements/gsttypefindelement.c: (stop_typefinding),
7800         (gst_type_find_element_handle_event),
7801         (gst_type_find_element_chain):
7802         * gst/elements/gsttypefindelement.h:
7803          #153657.
7804          Filter out discont event from seekable sources when typefind
7805          asks them to seek.  Fixes typefind with demuxers for
7806          avi, asf and matroska.
7807
7808 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7809
7810         * docs/gst/gstreamer-sections.txt:
7811         * gst/gstcaps.c:
7812         * gst/gstcaps.h:
7813         * gst/gstpad.c:
7814           Revert preferred caps: (#147789)
7815
7816 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
7817
7818         * win32/dirent.c:
7819           fix a memory leak
7820
7821 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7822
7823         * configure.ac:
7824           bump for prerelease
7825
7826 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7827
7828         * docs/Makefile.am:
7829         * docs/manual/elements-api.xml:
7830           restructure so that common stuff is shown first
7831         * docs/manual/init-api.xml:
7832           convert to examples
7833         * docs/manual/manual.xml:
7834         * docs/manuals.mak:
7835         * docs/url.entities:
7836           link to API on the website, possibly override later in build
7837         * examples/manual/.cvsignore:
7838           ignore more
7839         * examples/manual/Makefile.am:
7840           add more examples
7841         * examples/manual/extract.pl:
7842           error out on failure
7843
7844 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7845
7846         * docs/gst/tmpl/gstthread.sgml:
7847         * docs/manual/init-api.xml:
7848         * examples/manual/Makefile.am:
7849           convert two code bits to examples
7850
7851 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7852
7853         * gst/gstelement.c: (gst_element_change_state):
7854           Well, actually, I was about to remove this insane assert when
7855           I noticed Wim already did that. A warning is nice so we can
7856           fix actual ugs (using --g-fatal-warnings and backtraces), so
7857           I added that instead.
7858
7859 2004-09-06  Wim Taymans  <wim@fluendo.com>
7860
7861         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
7862         (gst_element_threadsafe_properties_post_run),
7863         (gst_element_set_state), (gst_element_change_state):
7864         Added extra refcounting around various places. 
7865
7866 2004-09-06  Wim Taymans  <wim@fluendo.com>
7867
7868         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7869         Fix debug info.
7870
7871 2004-09-06  Wim Taymans  <wim@fluendo.com>
7872
7873         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7874         (remove_from_group):
7875         Some more debug info.
7876
7877 2004-09-03  Wim Taymans  <wim@fluendo.com>
7878
7879         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
7880         (gst_fakesrc_init), (gst_fakesrc_set_clock),
7881         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
7882         (gst_fakesrc_get), (gst_fakesrc_change_state):
7883         * gst/elements/gstfakesrc.h:
7884         * gst/elements/gstidentity.c: (gst_identity_class_init),
7885         (gst_identity_init), (gst_identity_chain),
7886         (gst_identity_set_property), (gst_identity_get_property),
7887         (gst_identity_change_state):
7888         * gst/elements/gstidentity.h:
7889         Added datarate properties to limit the datarate.
7890
7891 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7892
7893         * gst/autoplug/gstspider.c: (plugin_init):
7894           don't set a rank. We don't want to autoplug by inserting spiders.
7895
7896 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7897
7898         * gst/autoplug/gstspider.c: (gst_spider_class_init),
7899         (gst_spider_identity_plug):
7900           add a template for spider's sink
7901         * gst/gst.c: (gst_register_core_elements):
7902           queue's rank should be NULL, we don't want spider to add it.
7903
7904 2004-08-18  David Schleef  <ds@schleef.org>
7905
7906         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
7907         * docs/libs/Makefile.am: same
7908         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
7909         * docs/random/ds/0.9-planning: random additions
7910         * docs/random/ds/0.9-suggested-changes: same
7911         * gst/gstxml.h: remove vestigal GstXMLNs definition
7912
7913         Preferred caps: (#147789)
7914         * docs/gst/gstreamer-sections.txt: Add symbols
7915         * docs/gst/tmpl/gstcaps.sgml: Add symbols
7916         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7917         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
7918         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
7919         (gst_caps_get_preferred), (gst_caps_set_preferred),
7920         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
7921         (gst_caps_use_preferred): Handle caps preferences
7922         * gst/gstcaps.h: Add caps preferences
7923         * gst/gstpad.c: (gst_pad_link_get_preferred),
7924         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
7925         (gst_pad_renegotiate), (gst_pad_guess_preferred),
7926         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
7927         negotiation.
7928
7929 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7930
7931         * gst/autoplug/gstspideridentity.c:
7932         (gst_spider_identity_request_new_pad):
7933         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
7934         (gst_aggregator_init):
7935         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
7936         (gst_fakesink_init):
7937         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
7938         (gst_fakesrc_init):
7939         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
7940         (gst_fdsink_init):
7941         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
7942         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
7943         (gst_filesink_init):
7944         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7945         (gst_filesrc_init):
7946         * gst/elements/gstidentity.c: (gst_identity_base_init),
7947         (gst_identity_init):
7948         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7949         (gst_multifilesrc_init):
7950         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7951         (gst_pipefilter_init):
7952         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7953         (gst_statistics_init):
7954         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7955         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7956           s/gst_pad_new/&_from_template/
7957           register pad templates in the base_init function
7958           add static pad template definitions
7959
7960 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7961
7962         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7963         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7964         * testsuite/refcounting/pad.c: (main):
7965         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7966           s/gst_pad_new/&_from_template/
7967           prepare deprecation of gst_pad_new
7968
7969 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7970
7971         patch by: Luca Ognibene <skaboy81@virgilio.it>
7972
7973         * gst/gstcaps.c:
7974         * gst/gstelement.c:
7975         * gst/gstpad.c:
7976         * gst/gstxml.c:
7977           fix memleaks.  Fixes #150001
7978
7979 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7980
7981         * docs/random/ds/0.9-suggested-changes:
7982           add notes - mostly about pad templates
7983
7984 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7985
7986         * win32/GStreamer.vcproj:
7987           temporary locale files are .gmo not .mo
7988
7989 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7990
7991         * configure.ac: bump nano to cvs
7992
7993 === release 0.8.5 ===
7994
7995 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7996
7997         * configure.ac:
7998           releasing 0.8.5, "Stuttgart"
7999         * NEWS:
8000         * RELEASE:
8001         * configure.ac:
8002         * docs/random/release:
8003           updates for release
8004
8005 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8006
8007         patch by: Wim Taymans (wim@fluendo.com)
8008
8009         * gst/gstbuffer.c:
8010         * gst/gstindex.h:
8011         * libs/gst/dataprotocol/dataprotocol.c:
8012           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
8013
8014 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8015
8016         * Makefile.am:
8017         * win32/MANIFEST:
8018           add win32 dir to the build.  Fixes #149981.
8019
8020 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8021
8022         * configure.ac:
8023           bump libtool versioning
8024         * gst/gststructure.c:
8025           mark function as static
8026         * po/af.po:
8027         * po/az.po:
8028         * po/ca.po:
8029         * po/cs.po:
8030         * po/en_GB.po:
8031         * po/fr.po:
8032         * po/nl.po:
8033         * po/sq.po:
8034         * po/sr.po:
8035         * po/sv.po:
8036         * po/tr.po:
8037         * po/uk.po:
8038           translations update
8039         * win32/README.txt:
8040           trademark protection
8041
8042 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8043
8044         * configure.ac:
8045           fix GST_ORIGIN
8046           set GST_PACKAGE to source, and distinguish between release and other
8047         * tools/gst-inspect.c:
8048           print out plugin an element factory is part of so we see this info
8049
8050 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8051
8052         * docs/gst/gstreamer-sections.txt:
8053         * docs/gst/tmpl/gstbuffer.sgml:
8054         * docs/gst/tmpl/gstschedulerfactory.sgml:
8055           reorder docs a little, make GstBuffer's more sensible.
8056         * gst/gstbuffer.h:
8057           API: added GST_BUFFER_FLAG_DELTA_UNIT
8058         * gst/gstscheduler.c:
8059           comment API addition
8060
8061 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8062
8063         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8064           work with non-regular files that can be mmapped (like /dev/zero)
8065         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
8066           get rid of typefinds that require a seek when we can't seek instead
8067           of trying them over and over again
8068         * tools/gst-launch.c: (idle_func), (error_cb), (main):
8069           return non-zero failure value when the pipeline was interrupted or
8070           an error occurred
8071
8072 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
8073
8074         * win32/config.h:
8075         * win32/GStreamer.vcproj:
8076           compile and install the locales
8077
8078 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
8079
8080         * gst/gstvalue.c:
8081           fix a possible memory leak under Windows
8082
8083 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
8084
8085         * win32/GStreamer.vcproj:
8086           fix a memory leak that occured under Windows
8087         * win32/gstreamer.def:
8088           add gst_scheduler_register
8089
8090 2004-08-11  Benjamin Otte  <otte@gnome.org>
8091
8092         * docs/gst/gstreamer-sections.txt:
8093         * gst/gstscheduler.c: (gst_scheduler_register):
8094         * gst/gstscheduler.h:
8095           API:
8096           add gst_scheduler_register shortcut similar to gst_element_register
8097         * gst/schedulers/entryscheduler.c: (plugin_init):
8098         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8099         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
8100           use it
8101
8102 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
8103
8104         * gst/gstvalue.h:
8105           fix a memory leak that occured under Windows
8106
8107 2004-08-10  Colin Walters  <walters@redhat.com>
8108
8109         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
8110         Don't use O_EXCL to open temporary registry.  It will prevent
8111         registry creation if a temporary one already exists, which
8112         is unnecessary.
8113
8114 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8115
8116         * docs/gst/gstreamer-sections.txt:
8117         * docs/gst/tmpl/gstvalue.sgml:
8118           remove some valuable stuff from the documentation due to the use of GST_EXPORT
8119
8120 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8121
8122         * win32/gstbytestream.vcproj:
8123         * win32/gstelements.vcproj:
8124         * win32/gstgetbits.vcproj:
8125         * win32/gst-inspect.vcproj:
8126         * win32/gst-launch.vcproj:
8127         * win32/gstoptimalscheduler.vcproj:
8128         * win32/GStreamer.vcproj:
8129         * win32/gst-register.vcproj:
8130         * win32/gstspider.vcproj:
8131           update the include and lib dirs to fit standard libraries as
8132           described in the Win32 manual
8133
8134 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8135
8136         * win32/config.h:
8137         * win32/gstversion.h:
8138           enable NLS again, push the version number for the coming 0.8.5 release
8139
8140 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8141
8142         * gst/gstvalue.h:
8143           export gst_type_XXX for windows DLLs
8144
8145 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8146
8147         * docs/faq/gst-uninstalled:
8148           fix PKG_CONFIG_PATH and PYTHONPATH
8149         * gst/schedulers/Makefile.am:
8150           cleanup
8151         * libs/gst/bytestream/bytestream.c:
8152           remove newline
8153         * po/LINGUAS:
8154         * po/sq.po:
8155           adding Albanian translation (Laurent Dhima)
8156         * po/cs.po:
8157           updated
8158
8159 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8160
8161         * po/ca.po:
8162         * po/sv.po:
8163           updated translations
8164
8165 2004-08-04  Benjamin Otte  <otte@gnome.org>
8166
8167         * tests/mass_elements.c: (main):
8168           allow specifying src and sink element explicitly, so I can test
8169           videotestsrc instead of fakesrc
8170
8171 2004-08-04  Benjamin Otte  <otte@gnome.org>
8172
8173         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
8174         (gst_structure_id_empty_new), (gst_structure_empty_new),
8175         (gst_structure_copy):
8176           add gst_structure_id_empty_new_with_size to allow preallocating
8177           value array sizes. Use this in gst_structure_copy to get rid of
8178           reallocs.
8179           don't do quark=>string=>quark when copying structures
8180
8181 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
8182
8183         * docs/manual/win32.xml:
8184         * win32/README.txt:
8185           update documentation with the clean version of dependencies
8186
8187 2004-08-03  Benjamin Otte  <otte@gnome.org>
8188
8189         * gst/schedulers/entryscheduler.c:
8190         (gst_entry_scheduler_remove_element):
8191           fix for GST_DISABLE_DEBUG
8192         * tools/gst-launch.c: (print_tag):
8193           fixes for G_DISABLE_ASSERT
8194
8195 2004-08-03  Benjamin Otte  <otte@gnome.org>
8196
8197         * gst/gst.c: (gst_register_core_elements):
8198           fix for G_DISABLE_ASSERT
8199         * gst/gstinfo.c: (__gst_in_valgrind):
8200           add for GST_DISABLE_DEBUG
8201
8202 2004-08-03  Benjamin Otte  <otte@gnome.org>
8203
8204         * gst/parse/parse.l:
8205           fix for G_DISABLE_ASSERT
8206
8207 2004-08-03  Wim Taymans  <wim@fluendo.com>
8208
8209         * gst/gstbin.c: (gst_bin_get_type),
8210         (gst_bin_child_state_change_func):
8211         * gst/gstthread.c: (gst_thread_change_state):
8212         Backported some debug logging from a reverted patch
8213         Don't try to destroy the thread twice. Added some more
8214         debugging in GstThread. Unlock and signal even if we
8215         are in the thread context.
8216
8217 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8218
8219         * po/uk.po:
8220           updated translation
8221
8222 2004-07-30  David Schleef  <ds@schleef.org>
8223
8224         * gst/gstatomic_impl.h: Enable atomic code for x86_64
8225
8226 2004-07-29  David Schleef  <ds@schleef.org>
8227
8228         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
8229         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
8230
8231 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8232
8233         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
8234         (gst_bin_add_func), (gst_bin_remove_func),
8235         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
8236         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
8237         (gst_bin_change_state_norecurse), (gst_bin_dispose),
8238         (gst_bin_sync_children_state):
8239         * gst/gstbin.h:
8240         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
8241         (gst_thread_change_state):
8242         * testsuite/states/Makefile.am:
8243           revert state change patches as agreed so we can rework them
8244           gradually
8245
8246 2004-07-29  Benjamin Otte  <otte@gnome.org>
8247
8248         * libs/gst/control/Makefile.am:
8249           link to libgstreamer (fixes Debian bug 262019, see
8250           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
8251
8252 2004-07-29  Wim Taymans  <wim@fluendo.com>
8253
8254         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
8255         (check_from_fraction_convert), (transform_test), (main):
8256         Make the test less pedantic about float roundoff errors.
8257
8258 2004-07-29  Benjamin Otte  <otte@gnome.org>
8259
8260         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
8261         (gst_filesrc_srcpad_event):
8262           make seek events to before start/after end of file not fail, but
8263           seek to start/end instead
8264         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
8265           add more output
8266
8267 2004-07-29  Benjamin Otte  <otte@gnome.org>
8268
8269         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8270           check that caps are fixed
8271         * gst/gstpad.c: (gst_pad_template_new):
8272           don't try to simplify caps, costs too much time on gst_init
8273         * gst/gstplugin.c: (gst_plugin_add_feature):
8274           G_ERROR if features are added twice
8275         * gst/gsttypefind.c: (gst_type_find_register):
8276         * gst/gstelementfactory.c: (gst_element_register):
8277           don't add features twice
8278         * docs/random/ds/0.9-suggested-changes:
8279           add note about possible gst_init optimization
8280
8281 2004-07-28  David Schleef  <ds@schleef.org>
8282
8283         * testsuite/elements/Makefile.am:
8284         * testsuite/elements/struct_i386.h:
8285         * testsuite/elements/struct_size.c: (main):  A little test
8286         to keep distcheck from working if someone changes a structure
8287         size accidentally.
8288
8289 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8290
8291         * docs/libs/Makefile.am:
8292         * docs/libs/gstreamer-libs-docs.sgml:
8293         * docs/libs/gstreamer-libs-sections.txt:
8294         * docs/libs/tmpl/gstbytestream.sgml:
8295         * docs/libs/tmpl/gstcontrol.sgml:
8296         * docs/libs/tmpl/gstdataprotocol.sgml:
8297         * docs/libs/tmpl/gstgetbits.sgml:
8298         * libs/gst/bytestream/Makefile.am:
8299         * libs/gst/bytestream/bytestream.c:
8300         * libs/gst/bytestream/bytestream.h:
8301         * libs/gst/control/Makefile.am:
8302         * libs/gst/dataprotocol/Makefile.am:
8303         * libs/gst/getbits/Makefile.am:
8304         * libs/gst/getbits/getbits.h:
8305           various doc and style fixes, adding bytestream to libs docs.
8306
8307 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8308
8309         * docs/gst/gstreamer-docs.sgml:
8310         * docs/libs/Makefile.am:
8311         * docs/libs/gstreamer-libs-docs.sgml:
8312         * docs/libs/gstreamer-libs-sections.txt:
8313         * libs/gst/control/dparam.c:
8314           more doc fixes.  gst-libs docs now build the same way as gst.
8315
8316 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8317
8318         * configure.ac:
8319         * testsuite/Makefile.am:
8320         * testsuite/bins/Makefile.am:
8321         * testsuite/caps/Makefile.am:
8322         * testsuite/cleanup/Makefile.am:
8323         * testsuite/clock/Makefile.am:
8324         * testsuite/debug/Makefile.am:
8325         * testsuite/dlopen/Makefile.am:
8326         * testsuite/dynparams/Makefile.am:
8327         * testsuite/elements/.cvsignore:
8328         * testsuite/elements/Makefile.am:
8329         * testsuite/enumcaps/Makefile.am:
8330         * testsuite/enumcaps/enumcaps.c:
8331         * testsuite/ghostpads/Makefile.am:
8332         * testsuite/indexers/Makefile.am:
8333         * testsuite/negotiation/Makefile.am:
8334         * testsuite/parse/Makefile.am:
8335         * testsuite/plugin/Makefile.am:
8336         * testsuite/refcounting/Makefile.am:
8337         * testsuite/schedulers/.cvsignore:
8338         * testsuite/states/Makefile.am:
8339         * testsuite/tags/Makefile.am:
8340         * testsuite/threads/Makefile.am:
8341           fold enumcaps into caps dir
8342           clean up Makefile.am's for testsuite
8343
8344 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8345
8346         * docs/gst/Makefile.am:
8347         * docs/libs/Makefile.am:
8348           clean up docs build.  Fixes needless rebuilding of template files.
8349
8350 2004-07-28  Wim Taymans  <wim@fluendo.com>
8351
8352         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
8353         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
8354         Make sure that a bin state change tries to keep the children
8355         in sync. 
8356         Added debug logging to the thread.
8357
8358 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
8359
8360         * win32/GStreamer.vcproj:
8361         * win32/gstreamer.def:
8362           more exports for the plugins
8363
8364 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
8365
8366         * win32/gstgetbits.vcproj:
8367         * win32/gstgetbits.def:
8368         * win32/msvc71.sln:
8369           add support for the getbits plugin
8370
8371 2004-07-27  Wim Taymans  <wim@fluendo.com>
8372
8373         * gst/gstvalue.c: (gst_value_transform_double_fraction),
8374         (gst_value_transform_fraction_double), (_gst_value_initialize):
8375         * testsuite/caps/Makefile.am:
8376         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
8377         (check_from_fraction_convert), (transform_test), (main):
8378         Added transform functions between double and fraction.
8379         Added testcase to verify transforms
8380
8381 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8382
8383         * win32/GStreamer.vcproj:
8384           rename GStreamer-0.8.lib to libgstreamer.lib
8385
8386 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8387
8388         * win32/gstelements.vcproj:
8389         * win32/gstoptimalscheduler.vcproj:
8390           fixes for the Release build
8391
8392 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8393
8394         * win32/config.h:
8395           update the version number
8396
8397 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8398
8399         * win32/GStreamer.vcproj:
8400           add gstinterface to the build
8401
8402 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8403
8404         * win32/gstreamer.def:
8405           add many definitions needed by plugins,
8406           GST_CAT_DEFAULT only available in the Debug build ?
8407
8408 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8409
8410         * gst/gstelement.c: (gst_element_set_eos_recursive):
8411           various whitespace fixes.
8412           doc fix, fixes #148497
8413
8414 2004-07-25  Benjamin Otte  <otte@gnome.org>
8415
8416         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
8417           don't delay links on the sink elements, it causes unnegotiated
8418           links.
8419         * gst/elements/gsttypefindelement.c:
8420         (gst_type_find_element_base_init):
8421           add our padtemplates, we indeed do have some.
8422         * gst/elements/gsttypefindelement.c:
8423         (gst_type_find_element_handle_event),
8424         (gst_type_find_element_chain):
8425           don't push data when typefinding failed.
8426         * gst/gstpad.c: (gst_pad_link_fixate):
8427           check that no fixate function returns empty caps.
8428         * gst/gstpad.c: (gst_pad_push):
8429           check that the link is negotiated before data gets pushed.
8430         * tools/gst-register.c: (main):
8431           don't assert (fixes #148283)
8432
8433 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8434
8435         * docs/gst/gstreamer-sections.txt:
8436         * docs/gst/tmpl/gstconfig.sgml:
8437           add GST_PLUGIN_EXPORT definition
8438
8439 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8440
8441         * gst/gstplugin.h:
8442         * gst/gstconfig.h.in:
8443         * win32/gstconfig.h:
8444         * win32/gstelements.def:
8445         * win32/gstelements.vcproj:
8446         * win32/gstoptimalscheduler.def:
8447         * win32/gstoptimalscheduler.vcproj:
8448         * win32/gstspider.def:
8449         * win32/gstspider.vcproj:
8450           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
8451
8452 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8453
8454         * docs/gst/gstreamer-sections.txt:
8455           remove GST_CAT_DEFAULT because the type has changed
8456
8457 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8458
8459         * win32/gstbytestream.vcproj:
8460         * win32/gstelements.vcproj:
8461         * win32/gst-inspect.vcproj:
8462         * win32/gst-launch.vcproj:
8463         * win32/gstoptimalscheduler.vcproj:
8464         * win32/GStreamer.vcproj:
8465         * win32/gst-register.vcproj:
8466         * win32/gstspider.vcproj:
8467         * win32/msvc71.sln:
8468           Copy the files where needed after building, The testsuite will be
8469           built separately
8470
8471 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8472
8473         * win32/config.h:
8474         * win32/README.txt:
8475         * docs/manual/win32.xml:
8476         Fixed the plugin and GStreamer location
8477
8478 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8479
8480         * win32/gstreamer.def:
8481         More exports for the plugins
8482
8483 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8484
8485         * gst/gstinfo.h:
8486         Marc was right, we need to export literally GST_CAT_DEFAULT
8487
8488 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8489
8490         * win32/config.h:
8491         NLS crashes in gettext, disabled until this is solved
8492
8493 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8494
8495         * win32/gst-inspect.vcproj:
8496         * win32/gst-launch.vcproj:
8497         Should use NLS when available
8498
8499 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8500
8501         * gst/registries/gstxmlregistry.c:
8502         removing the file doesn't seem to be a good idea on Linux
8503
8504 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8505
8506         * gst/registries/gstxmlregistry.c:
8507         Remove the registry before renaming the tempfile (needed for Windows)
8508
8509 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8510
8511         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
8512         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
8513         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
8514         * gst/elements/gstmultifilesrc.h:
8515         Added newmedia property so it generates newmedia events between each
8516         file when property is set, as well as fixed eos handling
8517
8518 2004-07-22  David Schleef  <ds@schleef.org>
8519
8520         * gst/gststructure.c: (gst_structure_id_empty_new),
8521         (gst_structure_empty_new):  Set type field correctly.
8522         * gst/gststructure.h: Check type field correctly.
8523         * testsuite/caps/Makefile.am:
8524         * testsuite/caps/structure.c: (test1), (main): Add a very small
8525         test for structures.
8526
8527 2004-07-22  David Schleef  <ds@schleef.org>
8528
8529         * docs/random/ds/0.9-suggested-changes: more comments
8530         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
8531
8532 2004-07-22  Benjamin Otte  <otte@gnome.org>
8533
8534         * gst/gstelementfactory.c: (gst_element_register):
8535           set the factory in the class struct, so gst_element_get_factory
8536           actually works
8537         * gst/parse/grammar.y:
8538           set element to playing when it gets unlocked as we can't rely on the
8539           bin state - all elements in the bin state might still be locked in
8540           NULL)
8541
8542 2004-07-22  Benjamin Otte  <otte@gnome.org>
8543
8544         * gst/gstelement.c: (gst_element_set_state_func):
8545           make this a static function
8546
8547 2004-07-22  Wim Taymans  <wim@fluendo.com>
8548
8549         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8550         (gst_opt_scheduler_pad_link):
8551         fix 147894-2 and the group_link problem.
8552
8553 2004-07-22  Wim Taymans  <wim@fluendo.com>
8554
8555         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
8556         (handoff_identity), (main):
8557         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8558         (handoff_identity), (main):
8559         * testsuite/schedulers/Makefile.am:
8560         * testsuite/schedulers/group_link.c: (main):
8561         Show bug in scheduler when linking chain and loop based element 
8562         where the chain based element was not yet in a group.
8563
8564 2004-07-21  Benjamin Otte  <otte@gnome.org>
8565
8566         * gst/.cvsignore:
8567         * gst/autoplug/.cvsignore:
8568         * gst/elements/.cvsignore:
8569         * gst/indexers/.cvsignore:
8570         * libs/gst/bytestream/.cvsignore:
8571         * libs/gst/control/.cvsignore:
8572         * libs/gst/getbits/.cvsignore:
8573         * testsuite/states/.cvsignore:
8574         * testsuite/threads/.cvsignore:
8575           keep this up to date, since I seem to be the only one who cares
8576           about not missing files on commits (editor's note: no you don't,
8577           but feel free to change them at the time you add stuff instead
8578           of later on)
8579
8580 2004-07-21  Benjamin Otte  <otte@gnome.org>
8581
8582         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
8583         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
8584         (gst_bin_child_state_change_func), (set_kid_state_func),
8585         (gst_bin_set_state), (gst_bin_change_state_norecurse):
8586           make state changes work correctly and reentrant (so removing
8587           elements from bins during state changes of bins doesn't cause
8588           segfaults or even wrong states)
8589           add debugging category and debugging output to print children states
8590         * gst/gstbin.c: (gst_bin_dispose): 
8591           add some assertion checks
8592         * gst/gstbin.h:
8593         * gst/gstbin.c: (gst_bin_sync_children_state):
8594           deprecate this function - it just does gst_bin_set_state (bin,
8595           GST_STATE (bin)) 
8596         * testsuite/threads/queue.c: (main):
8597           don't use gst_bin_sync_children_state anymore
8598         * testsuite/states/Makefile.am:
8599         * testsuite/states/bin.c:
8600           test that the state changes of bins work as expected
8601         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
8602           some adjustments to change states correctly, too
8603         * gst/gstthread.c: (gst_thread_change_state):
8604           don't enable/disable "threadsafe" properties, they're unused and
8605           cause random segfaults
8606         * testsuite/threads/Makefile.am:
8607           the queue check randomly passes now, ignore it
8608
8609 2004-07-21  Benjamin Otte  <otte@gnome.org>
8610
8611         * gst/gstpad.c:
8612           check if data is NULL before outputting debug info. (fixes #145100)
8613
8614 2004-07-21  Benjamin Otte  <otte@gnome.org>
8615
8616         * gst/schedulers/entryscheduler.c:
8617         (gst_entry_scheduler_loop_wrapper),
8618         (gst_entry_scheduler_chain_wrapper),
8619         (gst_entry_scheduler_get_wrapper):
8620           reset the state when the cothread starts, so we don't get assertion
8621           failures on restarting of cothreads
8622
8623 2004-07-20  Benjamin Otte  <otte@gnome.org>
8624
8625         * gst/gstelement.c: (gst_element_link_pads_filtered):
8626           use correct sinkpad, if only sinkpad is specified, but not srcpad
8627           (fixes #147889)
8628         * gst/gstelement.c: (gst_element_set_state_func),
8629         (gst_element_change_state): ref/unref the element, signal handlers
8630         could get rid of the element otherwise
8631
8632 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8633
8634         * docs/random/ds/0.9-suggested-changes:
8635           Make note about renaming fixed-list to array.
8636         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
8637         (_gst_value_initialize):
8638           Add array intersections.
8639         * testsuite/caps/intersect2.c: (main):
8640           Add test for array intersections.
8641
8642 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8643
8644         * configure.ac: back to cvs
8645
8646 === release 0.8.4 ===
8647
8648 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8649
8650         * configure.ac:
8651           releasing 0.8.4, "Paella"
8652           bump libtool versioning
8653
8654 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8655
8656         * po/LINGUAS:
8657         * po/ca.po:
8658           adding Catalan translation (Jordi Mallach)
8659
8660 2004-07-20  Wim Taymans  <wim@fluendo.com>
8661
8662         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
8663         (handoff_identity), (main):
8664         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8665         (handoff_identity), (main):
8666         * testsuite/schedulers/Makefile.am:
8667         Added failing testcase for variant of #147894
8668
8669 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8670
8671         patch by: David Moore
8672
8673         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
8674         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
8675         (group_migrate_connected):
8676         * testsuite/schedulers/Makefile.am:
8677           fix for #142813 (Deadlock in optimal scheduler)
8678
8679 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8680
8681         patch by: Wim Taymans
8682
8683         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
8684         (gst_opt_scheduler_schedule_run_queue),
8685         (gst_opt_scheduler_get_wrapper), (get_group),
8686         (group_migrate_connected):
8687         * testsuite/schedulers/Makefile.am:
8688           fix for #147819 (Add some checks in the opt scheduler)
8689
8690 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8691
8692         patch by: Benjamin Otte
8693
8694         * gst/gstelementfactory.c: (__gst_element_details_set):
8695           fix for #147929: running gst-register in non-utf8 locale can cause
8696           invalid registry
8697
8698 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8699
8700         patch by: Wim Taymans
8701
8702         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
8703         (group_has_element), (element_get_reachables_func),
8704         (group_migrate_connected):
8705           fix for #147894 (opt scheduler decoupled elements mismanagement)
8706         * testsuite/schedulers/Makefile.am:
8707           testsuite app now passes
8708
8709 2004-07-19  Wim Taymans  <wim@fluendo.com>
8710
8711         * testsuite/schedulers/147819.c: (handoff_identity1),
8712         (handoff_identity2), (main):
8713         * testsuite/schedulers/Makefile.am:
8714         Added testcase for bug 147819
8715
8716 2004-07-19  Wim Taymans  <wim@fluendo.com>
8717
8718         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8719         (handoff_identity), (main):
8720         * testsuite/schedulers/Makefile.am:
8721         Added testcase for bug 147894
8722
8723 2004-07-16  Wim Taymans  <wim@fluendo.com>
8724
8725         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
8726         * testsuite/schedulers/142183.c: (handoff_identity), (main):
8727         * testsuite/schedulers/Makefile.am:
8728         Added testsuite for bug 142183 in its two incarnations. Refcount
8729         is not increased for scheduled elements and threadsafe properties
8730         mutexes are not properly unlocked.
8731
8732 2004-07-16  Wim Taymans  <wim@fluendo.com>
8733
8734         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
8735         (create_chain), (destroy_chain), (create_group), (destroy_group),
8736         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
8737         (group_dec_link), (gst_opt_scheduler_pad_link),
8738         (group_inc_links_for_element), (group_migrate_connected):
8739         Call group_inc_link with the proper src->sink ordering -- 
8740         break this, and we break sort_chain. patch from wingo for bug
8741         147713.
8742         Partially revert patch 1.89. When adding a loop based element to 
8743         the scheduler, the links to other groups are automatically followed
8744         and incremented. This should not happen because the bin will call
8745         pad_link explicitly for those connection, resulting in them counted 
8746         twice. Results in assertion failure on pipeline cleanup.
8747
8748 2004-07-16  Wim Taymans  <wim@fluendo.com>
8749
8750         * testsuite/schedulers/143777-2.c: (main):
8751         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
8752         (main):
8753         * testsuite/schedulers/Makefile.am:
8754         Added cleanup code to testcase 143777-2.
8755         Added testcase to show bug 147713, does not really show the
8756         deadlock as I can't figure out how to trigger it, but it does
8757         demonstrate bad ordering in the scheduler.
8758
8759 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8760
8761         * gst/gstvalue.c: (gst_value_deserialize_fraction):
8762           change strndup to g_strndup.  Fixes #147707
8763
8764 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8765
8766         * po/af.po:
8767         * po/az.po:
8768         * po/cs.po:
8769         * po/en_GB.po:
8770         * po/fr.po:
8771         * po/nl.po:
8772         * po/sr.po:
8773         * po/sv.po:
8774         * po/tr.po:
8775         * po/uk.po:
8776           updated translations
8777
8778 2004-07-16  Benjamin Otte  <otte@gnome.org>
8779
8780         * gst/gstvalue.c: (gst_greatest_common_divisor):
8781           use ints and return ints, fractions only use ints, too, so this
8782           avoids accidently casting multiplications to unsigned
8783         (gst_value_lcopy_fraction): it's ints, not uint32
8784         (gst_value_set_fraction): disallow minint, multiplying and negation
8785           are broken with it
8786         (gst_value_fraction_multiply): fix to make large numbers work and get
8787         rid of the assumption that the multiplication of two ints fits an
8788         int64 - dunno if that's true for all systems
8789         * testsuite/caps/Makefile.am:
8790         * testsuite/caps/fraction-multiply-and-zero.c:
8791         (check_multiplication), (check_equal), (zero_test), (main):
8792           add tests for all the stuff above
8793         * testsuite/caps/value_compare.c: (test1):
8794           fix comment
8795         * tests/.cvsignore:
8796         * testsuite/caps/.cvsignore:
8797         * testsuite/debug/.cvsignore:
8798         * testsuite/dlopen/.cvsignore:
8799         * testsuite/states/.cvsignore:
8800           get up to date
8801
8802 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8803
8804         * docs/manual/bins-api.xml:
8805         * docs/manual/factories.xml:
8806         * docs/manual/helloworld.xml:
8807         * docs/manual/links-api.xml: 
8808           fixes for out of date info, incorrect info and grammar
8809
8810 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8811
8812         * docs/manual/pads.xml:
8813         * docs/manual/pads-api.xml: grammar fix
8814
8815 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8816
8817         * docs/manual/pads-api.xml: typo + grammar fix
8818
8819 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8820
8821         * docs/gst/gstreamer-sections.txt:
8822           add new symbols
8823         * docs/gst/tmpl/gstelement.sgml:
8824         * docs/gst/tmpl/gstpad.sgml:
8825         * docs/gst/tmpl/gsttypes.sgml:
8826         * docs/gst/tmpl/gstvalue.sgml:
8827           update docs
8828         * gst/gststructure.c: (gst_structure_set_valist),
8829         (gst_structure_from_abbr), (gst_structure_to_abbr):
8830         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
8831         (gst_greatest_common_divisor), (gst_value_init_fraction),
8832         (gst_value_copy_fraction), (gst_value_collect_fraction),
8833         (gst_value_lcopy_fraction), (gst_value_set_fraction),
8834         (gst_value_get_fraction_numerator),
8835         (gst_value_get_fraction_denominator),
8836         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
8837         (gst_value_deserialize_fraction),
8838         (gst_value_transform_fraction_string),
8839         (gst_value_transform_string_fraction),
8840         (gst_value_compare_fraction), (_gst_value_initialize):
8841         * gst/gstvalue.h:
8842           adding GstFraction GValue type, get/set, and multiply
8843         * testsuite/caps/Makefile.am:
8844         * testsuite/caps/fraction.c: (test), (main):
8845         * testsuite/caps/string-conversions.c: (main):
8846         * testsuite/caps/value_compare.c: (test1), (main):
8847           add regression tests for GstFraction
8848
8849 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8850         
8851         * docs/manual/init-api.xml: Grammar fix
8852
8853 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8854
8855         * docs/manual/states.xml: Fix inconsistent information
8856
8857 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8858
8859         * gst/gstelement.c: (gst_element_set_state):
8860         * gst/gstpad.c: (gst_pad_try_set_caps):
8861         * gst/gststructure.c:
8862         * gst/gstthread.c: (gst_thread_child_state_change):
8863         * gst/gstvalue.c: (gst_value_compare_double):
8864         * gst/gstvalue.h:
8865         * testsuite/parse/parse1.c: (main):
8866           debugging additions and style cleanups
8867
8868 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8869
8870         * docs/manual/states.xml: Grammar fix
8871
8872 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8873
8874         * docs/manual/pads.xml: Grammar fix
8875
8876 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8877
8878         * docs/manual/elements.xml: Fixed image reference
8879
8880 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8881
8882         * docs/manual/goals.xml: Grammar fix
8883
8884 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8885
8886         * docs/manual/motivation.xml:
8887         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
8888
8889 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8890
8891         * docs/manual/motivation.xml: Fix spelling
8892
8893 2004-07-15  Benjamin Otte  <otte@gnome.org>
8894
8895         * gst/gstelement.h: 
8896           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
8897           strings.
8898         * gst/gstelement.c (gst_element_class_init):
8899           GError's are boxed, not objects
8900         * gst/gstmarshal.list:
8901           update list for the fixed error signal
8902
8903 2004-07-14  Andy Wingo  <wingo@pobox.com>
8904
8905         * gst/gsttag.c: Add a tag merge func for pointers. The header was
8906         there all along, but the function wasn't. (guile-gstreamer's build
8907         system uses the address of the function -- I wasn't actually
8908         trying to use this.)
8909
8910 2004-07-14  Andy Wingo  <wingo@pobox.com>
8911
8912         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
8913         as gst_pad_proxy_pad_link) just link to every other pad when they
8914         are called. In the case where the graph has cycles, this will mean
8915         that a call to try_set_caps will recurse. Allow this recursion
8916         and return OK, while we wait for the first try_set_caps to give a
8917         proper return value.
8918         (gst_pad_link_call_link_functions): Since this function is the
8919         only one to set the NEGOTIATING flag on a pad, if the flag is set
8920         it means that the link functions have indirectly recursed. If this
8921         happens, error out to avoid infinite recursion and an eventual
8922         SEGV.
8923         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
8924         (gst_pad_proxy_getcaps): Intersect the result with the template
8925         caps to ensure that the return value is valid.
8926
8927 2004-07-14  Andy Wingo  <wingo@pobox.com>
8928
8929         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
8930         one refcount, the calling function is the owner of the buffer.
8931
8932 2004-07-14  Wim Taymans  <wim@fluendo.com>
8933
8934         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8935         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8936         Fix stupid warning when an element is to be migrated but
8937         is already migrated.
8938
8939 2004-07-14  Wim Taymans  <wim@fluendo.com>
8940
8941         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8942         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8943         Make sure that a single non-loop-based element does not 
8944         end up in a group. This fixes the testsuite again.
8945
8946 2004-07-14  Wim Taymans  <wim@fluendo.com>
8947
8948         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8949         (add_to_group), (merge_groups), (schedule_group),
8950         (gst_opt_scheduler_get_wrapper), (group_elements),
8951         (group_dec_link), (gst_opt_scheduler_pad_link),
8952         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8953         (gst_opt_scheduler_iterate):
8954         move isolated groups to a new chain.
8955         Emit a warning instead of segfaulting in some error cases.
8956         Fix a bug where the link count between groups was not calculated 
8957         correctly. Fixes #144510.
8958
8959 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8960         * gst/elements/gstfilesrc.c:
8961           Binary files support under Windows now OK
8962       
8963 2004-07-13  Benjamin Otte  <otte@gnome.org>
8964
8965           compatibility fixes for Solaris 8/gcc 2.95
8966         * configure.ac:
8967           include libintl libs in LDFLAGS
8968         * gstvalue.c (gst_value_deserialize_buffer):
8969           cast isxdigit stuff to int to silence compiler warning
8970
8971 2004-07-12  Benjamin Otte  <otte@gnome.org>
8972
8973         * gst/gsttypes.h:
8974           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8975           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8976           just causes support madness
8977         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8978           make it work without this
8979         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8980         (gst_file_index_commit):
8981           glib IO channels don't want binary mode
8982         * testsuite/bytestream/filepadsink.c: (main):
8983         * testsuite/bytestream/test1.c: (read_param_file):
8984           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8985
8986 2004-07-12  Benjamin Otte  <otte@gnome.org>
8987
8988         * gst/gstelement.c: (gst_element_class_init),
8989         (gst_element_set_state), (gst_element_set_state_func):
8990           virutalize gst_element_set_state, use set_state member in class
8991           struct that was already added in 0.7 for this.
8992         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8993         (gst_bin_change_state):
8994           make gst_bin_foreach works similar to other foreach functions, plug
8995           memleaks in it. Make functions using it work with the new approach.
8996           Document gst_bin_foreach, so it can be exported if we want to
8997         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8998           use virtualized set_state to make set_state on bins set the state of
8999           all its children.
9000
9001 2004-07-12  Benjamin Otte  <otte@gnome.org>
9002
9003         * configure.ac:
9004           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
9005           http://bugs.gentoo.org/show_bug.cgi?id=53967)
9006         * gst/gstpad.c: (gst_pad_alloc_buffer):
9007           allow buffer_alloc functions to return NULL and allocate a normal
9008           buffer in that case
9009
9010 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
9011         * gst/elements/gstfilesink.c:
9012         * gst/elements/gstfilesrc.c:
9013         * gst/indexers/gstfileindex.c:
9014         * gst/gsttypes.h:
9015         * testsuite/bytestream/filepadsink.c:
9016         * testsuite/bytestream/test1.c:
9017           Handle binary files under Windows
9018
9019 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
9020         * docs/manual/win32.xml:
9021         * win32/config.h:
9022         * win32/gst-register.vcproj:
9023         * win32/gstreamer.def:
9024           Update to another gettext public build
9025
9026 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
9027         * gst/gstplugin.c:
9028           Fix an impossible C syntax
9029         * win32/config.h:
9030           Disable i18n under Windows for the moment
9031         * win32/gst-register.vcproj:
9032           Use this configuration
9033
9034 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
9035         * docs/manual/quotes.xml:
9036           Keep the quotes file alive
9037         * docs/random/ds/0.9-suggested-changes:
9038           Add the suggestion of including a 'rowstride' as part of video
9039           format caps
9040
9041 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9042
9043         * gst/gstelement.c: (gst_element_set_state),
9044         (gst_element_change_state):
9045           d'oh.  Set PENDING state correctly before forcing bin to change.
9046         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9047         (gst_structure_parse_fixed_list):
9048         * gst/schedulers/gstoptimalscheduler.c:
9049         (gst_opt_scheduler_state_transition):
9050         * testsuite/states/parent.c: (main):
9051           remove comment now that it's fixed.
9052
9053 2004-07-11  Benjamin Otte  <otte@gnome.org>
9054
9055         * gst/gstclock.h:
9056           GST_SECOND shouldn't cause a conversion to unsigned.
9057         * testsuite/clock/.cvsignore:
9058         * testsuite/clock/Makefile.am:
9059         * testsuite/clock/signedness.c: (main):
9060           make sure it never will again
9061
9062 2004-07-11  Andy Wingo  <wingo@pobox.com>
9063
9064         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
9065         whose state is higher than the bin state, raise the bin state to
9066         ensure that bin state := highest child state.
9067         
9068 2004-07-11  Andy Wingo  <wingo@pobox.com>
9069
9070         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
9071         procedure on the children of a bin. Assumes that the procedure can
9072         change the set of children.
9073         (set_kid_state_func): New static function.
9074         (gst_bin_change_state): Use gst_bin_foreach to call
9075         set_kid_state_func. Fixes a bug: if a child had a state-change
9076         handler that removes it from the bin, there would be a segfault.
9077         Hopefully it should also work in the case where the state-change
9078         handler on one child adds or removes other children. In any case,
9079         fixes should go to gst_bin_foreach.
9080
9081 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9082
9083         * gst/gstelement.c: (gst_element_set_state):
9084           compatibility fix for latest plugins release.  Change loop back
9085           to while {}
9086
9087 2004-07-09  Wim Taymans  <wim@fluendo.com>
9088
9089         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
9090         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
9091         (gst_thread_main_loop):
9092         Since remove is virtual in GstBin we must not assume the 
9093         elements GList to have anothing useful.
9094         Add some more logging to GstThread and be a bit more paranoid
9095         when resetting the scheduler.
9096         Set the state of the bin to NULL before removing the children.
9097
9098 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
9099
9100         * testsuite/threads/Makefile.am:
9101         * testsuite/threads/threadg.c:
9102           added test to check if problem when removing all elements from a
9103           GstThread before setting GstThread state to NULL
9104
9105 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9106
9107         * docs/gst/tmpl/gstelement.sgml:
9108         * docs/gst/tmpl/gsttypes.sgml:
9109         * gst/gstbin.c: (gst_bin_change_state):
9110         * gst/gstelement.c: (gst_element_set_state),
9111         (gst_element_change_state):
9112           rework so that for bins we try to set the state on all children
9113           as well even if the bin is in the correct state already.
9114           change while to do so at least one iteration is done.
9115           For regular elements, we fall back to the previous behaviour for
9116           now since we first need a new plugins release.
9117         * testsuite/states/parent.c: (main):
9118           test for this case
9119           Fixes #123774
9120
9121 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9122
9123         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
9124         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
9125         (gst_queue_release_locks), (gst_queue_change_state),
9126         (gst_queue_set_property):
9127           add proper lock debugging.  Change dispose to finalize, since
9128           we're freeing mutexes and other stuff which should happen only once.
9129
9130 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9131
9132         * docs/gst/tmpl/gstelement.sgml:
9133         * docs/gst/tmpl/gstplugin.sgml:
9134         * docs/gst/tmpl/gsttypes.sgml:
9135         * docs/pwg/building-state.xml:
9136         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
9137         * gst/gstelement.c: (gst_element_change_state):
9138         * gst/gstthread.c: (gst_thread_change_state):
9139           catch wrong state changes in element base class.
9140
9141 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9142
9143         * gst/gstinfo.h:
9144           clean up layout a little.
9145
9146 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9147
9148         * configure.ac:
9149         * testsuite/Makefile.am:
9150         * testsuite/states/Makefile.am:
9151         * testsuite/states/parent.c: (main):
9152           re-enable states testsuite dir.  Add test for state changes and
9153           parent behaviour
9154
9155 2004-07-09  Wim Taymans  <wim@fluendo.com>
9156
9157         * gst/schedulers/gstoptimalscheduler.c:
9158         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
9159         (element_get_reachables_func), (element_get_reachables),
9160         (debug_element), (rechain_group), (group_migrate_connected),
9161         (gst_opt_scheduler_pad_unlink):
9162         Do not try to migrate decoupled elements to a new group since
9163         they are not added to groups.
9164
9165 2004-07-08  Benjamin Otte  <otte@gnome.org>
9166
9167         * gst/gstelement.c: (gst_element_error_func):
9168           make reentrant (= allow removing elements in error handler)
9169
9170 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9171
9172         * gst/gstpad.c: (gst_pad_event_default_dispatch),
9173         (gst_pad_send_event), (gst_pad_call_chain_function):
9174           events sent to elements below PAUSED cannot be handled, so
9175           don't try to
9176
9177 2004-07-08  Wim Taymans  <wim@fluendo.com>
9178
9179         * gst/schedulers/gstoptimalscheduler.c:
9180         (chain_recursively_migrate_group), (create_group),
9181         (schedule_group), (gst_opt_scheduler_pad_link),
9182         (group_elements_set_visited), (element_get_reachables_func),
9183         (element_get_reachables), (group_can_reach_group), (debug_element),
9184         (rechain_group), (group_migrate_connected),
9185         (gst_opt_scheduler_pad_unlink):
9186         * testsuite/schedulers/Makefile.am:
9187         Implemented group splitting and rechaining.
9188         Fixes 143777 and 143777-2 in the testsuite.
9189
9190 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9191
9192         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
9193           extra debugging
9194         * gst/gstevent.h:
9195         * gst/gstinfo.c: (gst_debug_log_default):
9196           print time nicely.  add thread pointer until someone figures out
9197           a completely portable way of getting at thread id's.
9198         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
9199         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
9200         (gst_pad_call_chain_function):
9201           extra debugging
9202         * gst/schedulers/gstoptimalscheduler.c:
9203         (get_group_schedule_function), (loop_group_schedule_function),
9204         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9205         (pad_clear_queued), (gst_opt_scheduler_iterate):
9206           rename BUFPEN and friends to DATAPEN since that's what they are.
9207
9208 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9209
9210         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
9211         * gst/gstbuffer.h:
9212         * gst/gstpad.c:
9213           cleanups and debugging
9214
9215 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9216
9217         * configure.ac:
9218         * gst/gstvalue.c: (gst_value_compare_enum),
9219         (gst_value_serialize_enum), (gst_value_deserialize_enum),
9220         (gst_value_can_compare), (gst_value_compare):
9221         * testsuite/Makefile.am:
9222         * testsuite/enumcaps/Makefile.am:
9223         * testsuite/enumcaps/enumcaps.c:
9224           Fix enum serialization, deserialization, comparison in caps, add
9225           a test to ensure that this continues working in the future.
9226
9227 2004-07-06  David Schleef  <ds@schleef.org>
9228
9229         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
9230         Fix memleak.
9231
9232 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9233
9234         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
9235         * gst/gstplugin.h:
9236         * gst/registries/gstxmlregistry.c:
9237         (plugin_times_older_than_recurse), (plugin_times_older_than),
9238         (gst_xml_registry_parse_padtemplate):
9239           only rebuild registry when actual plugins have a newer time than
9240           the registry.  Fixes #145520
9241
9242 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9243
9244         * docs/manual/manual.xml:
9245         * docs/manual/win32.xml:
9246           add chapter on win32 building.  fixes #142422
9247
9248 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9249
9250         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
9251
9252         * gst/autoplug/gstspider.c: (gst_spider_init),
9253         (gst_spider_dispose):
9254           fix spider memleaks.  fixes #137863
9255
9256 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9257
9258         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
9259
9260         * gst/schedulers/gstoptimalscheduler.c:
9261         (gst_opt_scheduler_pad_unlink):
9262           fix SIGBUS error, fixes #145338
9263
9264 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9265
9266         * gst/gstobject.c: (gst_object_replace):
9267         * gst/gstscheduler.c: (gst_scheduler_get_clock):
9268         * gst/gstsystemclock.c: (gst_system_clock_obtain):
9269           clean up clock lifecycle.  Fixes #109831
9270
9271 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9272
9273         * po/LINGUAS:
9274         * po/cs.po:
9275           added Czech translation (Miloslav Trmac)
9276
9277 2004-07-04  David Schleef  <ds@schleef.org>
9278
9279         * tools/Makefile.am:
9280         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
9281
9282 2004-07-04  David Schleef  <ds@schleef.org>
9283
9284         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
9285
9286 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9287
9288         * gst/gstbin.c: (gst_bin_restore_thyself):
9289           chain to parent restore so the bins get restored correctly
9290           in the editor
9291
9292 2004-07-03  David Schleef  <ds@schleef.org>
9293
9294         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
9295         Actually do something in these functions, like before the big
9296         caps change.  (bug #145137)
9297
9298 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9299
9300         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
9301         (gst_element_get_compatible_pad_filtered):
9302         * gst/gstthread.c: (gst_thread_main_loop):
9303           more debugging
9304
9305 2004-07-02  David Schleef  <ds@schleef.org>
9306
9307         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
9308         * gst/gstobject.h:
9309         * gst/gstparse.h:
9310         * gst/gsttrace.h:
9311         * gst/gstxml.h:
9312
9313 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9314
9315         * gst/gstpad.c: (gst_pad_check_schedulers),
9316         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
9317         (gst_pad_link_prepare):
9318           revert until testsuite is fixed
9319
9320 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9321
9322         * testsuite/Makefile.am:
9323         * testsuite/caps/filtercaps.c: (main):
9324         * testsuite/clock/clock1.c: (main):
9325         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
9326           fix some more tests
9327
9328 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9329
9330         * testsuite/cleanup/cleanup1.c: (create_pipeline):
9331         * testsuite/cleanup/cleanup2.c: (create_pipeline):
9332         * testsuite/cleanup/cleanup4.c: (main):
9333           fix testsuite
9334
9335 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9336
9337         * libs/gst/control/control.c:
9338         * libs/gst/control/dparam.c:
9339         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
9340         * libs/gst/control/dparammanager.c:
9341         * libs/gst/control/dparammanager.h:
9342         * testsuite/dynparams/Makefile.am:
9343         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
9344         (gst_dptest_change_state), (gst_dptest_chain), (main):
9345           fix testcase for dparams
9346           add debugging category
9347
9348 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9349
9350         * testsuite/Rules:
9351           change path
9352
9353 2004-07-02  Benjamin Otte  <otte@gnome.org>
9354
9355         * tests/.cvsignore:
9356         * tests/Makefile.am:
9357         * tests/mass_elements.c: (gst_get_current_time), (main):
9358           add simple benchmark to test various speeds of fakesrc ! identity !
9359           identity ! ... ! fakesink.
9360           Usage: mass_elements [num_identities] [num_buffers]
9361           If not specified they default to 1000.
9362
9363 2004-07-02  Benjamin Otte  <otte@gnome.org>
9364
9365         * gst/gstpad.c: (gst_pad_check_schedulers),
9366         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
9367         (gst_pad_link_prepare):
9368           check that pads that get linked belong to the same manager. The old
9369           code allowed linking elements before putting them into bins, so it
9370           worked to link them and then put them in different threads, which
9371           lead to weird behaviour.
9372           Since this effectively disallows linking elements before putting
9373           them in a bin, some applications might not work after this and error
9374           out. If these applications are too critical, we might need to revert
9375           that patch. Please test this before the next release...
9376
9377 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9378
9379         * gst/gstpad.c: (gst_pad_get_caps):
9380           throw an error if the getcaps function does not return a subset of
9381           the template caps.
9382         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
9383           make disconts without position info an error in debugging
9384         * tests/spidey_bench.c: (handoff), (main):
9385           don't count first try when averaging
9386
9387 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9388
9389         * gst/gstplugin.c: (gst_plugin_load_file):
9390           figure out problem with dynamic test
9391
9392 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9393
9394         * docs/gst/Makefile.am:
9395           fix docs build
9396
9397 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9398
9399         * po/POTFILES.in:
9400         * po/af.po:
9401         * po/az.po:
9402         * po/en_GB.po:
9403         * po/fr.po:
9404         * po/nl.po:
9405         * po/sr.po:
9406         * po/sv.po:
9407         * po/tr.po:
9408         * po/uk.po:
9409         * tools/gst-register.c: (plugin_added_func), (main):
9410           i18n-ize -register, fix plural
9411
9412 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9413
9414         * gst/elements/gstidentity.c: (gst_identity_class_init),
9415         (gst_identity_init), (gst_identity_chain),
9416         (gst_identity_set_property), (gst_identity_get_property):
9417         * gst/elements/gstidentity.h:
9418           check for perfect stream
9419
9420 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9421
9422         * gst/elements/gstidentity.c: (gst_identity_chain):
9423           print offset_end
9424
9425 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9426
9427         * docs/gst/Makefile.am:
9428         * docs/gst/gstreamer-docs.sgml:
9429           doc fixes
9430
9431 2004-06-24  David Schleef  <ds@schleef.org>
9432
9433         * autogen.sh:  Remove call to env, since the buildbot isn't
9434         broken anymore.
9435
9436 2004-06-24  Wim Taymans  <wim@fluendo.com>
9437
9438         * gst/elements/Makefile.am:
9439         * gst/elements/gstelements.c:
9440         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
9441         (gst_multifdsink_class_init), (gst_multifdsink_init),
9442         (gst_multifdsink_add), (gst_multifdsink_remove),
9443         (gst_multifdsink_clear), (gst_multifdsink_chain),
9444         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
9445         * gst/elements/gstmultifdsink.h:
9446         Added an element that writes to multiple filedescriptors at once.
9447
9448 2004-06-24  Benjamin Otte  <otte@gnome.org>
9449
9450         * gst/parse/grammar.y:
9451           don't try to link elements before they have been added to bins
9452
9453 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9454
9455         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
9456         (gst_file_pad_get_length):
9457         * libs/gst/bytestream/filepad.h:
9458           add 2 new functions
9459
9460 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
9461
9462         * docs/gst/gstreamer-sections.txt:
9463         remove from docs, the define that Benjamin removed from gstelement.h
9464
9465 2004-06-22  Benjamin Otte  <otte@gnome.org>
9466
9467         * gst/gstelement.h:
9468           remove define that referenced a nonexisting GstElement struct member
9469
9470 2004-06-20  Benjamin Otte  <otte@gnome.org>
9471
9472         * gst/gstdata.c: (gst_data_is_writable):
9473           whoops, return values were wrong, so writable data was marked as
9474           non-writable and vice versa. (fixes #143953, spotted by Francis
9475           Labonte)
9476           Shows how rarely we need to copy data ;)
9477
9478 2004-06-20  Benjamin Otte  <otte@gnome.org>
9479
9480         * testsuite/schedulers/.cvsignore:
9481         * testsuite/schedulers/Makefile.am:
9482         * testsuite/schedulers/143777-2.c: (main):
9483           add test for opt breakage in bug #143777
9484
9485 2004-06-20  Benjamin Otte  <otte@gnome.org>
9486
9487         * gst/gstpad.c: (gst_pad_call_chain_function):
9488           check for if we were unlinked while inside the chainfunction (fixes
9489           entrygthread having issues with #143777)
9490         * testsuite/schedulers/143777.c: (main):
9491         * testsuite/schedulers/Makefile.am:
9492           add a test for that fix
9493
9494 2004-06-20  Benjamin Otte  <otte@gnome.org>
9495
9496         * gst/gstvalue.c: (gst_value_set_int_range):
9497           test that start is smaller then end
9498         * libs/gst/bytestream/Makefile.am:
9499         * libs/gst/bytestream/filepad.c: 
9500         * libs/gst/bytestream/filepad.h:
9501           add GstFilePad - a pad that behaves like a FILE*
9502         * testsuite/bytestream/.cvsignore:
9503         * testsuite/bytestream/Makefile.am:
9504         * testsuite/bytestream/filepadsink.c: 
9505           test for the GstFilePad
9506
9507 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9508
9509         * gst/elements/gstidentity.c: (gst_identity_class_init),
9510         (gst_identity_init), (gst_identity_set_clock),
9511         (gst_identity_chain), (gst_identity_set_property),
9512         (gst_identity_get_property):
9513         * gst/elements/gstidentity.h:
9514         * gst/gstclock.c: (gst_clock_id_wait):
9515           add a "sync" property to sync to the clock
9516
9517 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9518
9519         * gst/gstelementfactory.c: (gst_element_factory_create):
9520           make the freakin "elementfactory bla has no type" message more
9521           useful. So we actually can do something when someone shows up
9522           complaining about it.
9523
9524 2004-06-15  Johan Dahlin  <johan@gnome.org>
9525
9526         * tools/gst-inspect.c (main): Fallback to plugin if no element is
9527         found. This matches the old behavior better. Thanks to Thomas for
9528         pointing out.
9529
9530 2004-06-14  David Schleef  <ds@schleef.org>
9531
9532         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
9533         -fomit-frame-pointer.  Appears to generate correct code in
9534         other cases as well.
9535
9536 2004-06-14  Johan Dahlin  <johan@gnome.org>
9537
9538         * tools/gst-inspect.c (main): Add two new command line options: -a
9539         to print all elements and -n to print the name on each line. Also
9540         fix some error reporting.
9541         (main): Simplify, remove -n and always print names if -a is specified
9542
9543 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
9544
9545         * win32/gstconfig.h:
9546         * win32/GSTreamer.vcproj:
9547         * win32/Makefile:
9548         * gst/gstconfig.h.in:
9549         * gst/gst.h:
9550         * gst/gstbin.h:
9551         * gst/gstelement.h:
9552         * gst/gstevent.h:
9553         * gst/gstobject.h:
9554         * gst/gstpad.h:
9555         * docs/gst/gstreamer-sections.txt:
9556         * docs/gst/tmpl/gstconfig.sgml:
9557           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
9558
9559 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
9560         * docs/gst/gstreamer-sections.txt:
9561         * docs/gst/tmpl/gstconfig.sgml:
9562         Add the GSTREAMER_EXPORT macro to the docs
9563
9564 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
9565
9566         * tools/gst-compprep.c: (handle_xmlerror), (main):
9567         Add a check for the version that introduced SetStructuredError to fix
9568         the build on FC1
9569
9570 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9571
9572         * win32/msvc71.sln:
9573         * win32/testsuite/:
9574           prepare to compile the testsuite with MSVC
9575
9576 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9577
9578         * docs/manual/win32.xml:
9579           attempt to transform the Win32 README into an XML doc
9580
9581 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9582
9583         * gst/gst.c:
9584         * gst/gstbin.*:
9585         * gst/config.h.in:
9586         * gst/gstelement.*:
9587         * gst/gstevent.h:
9588         * gst/gstobject.*:
9589         * gst/gstpad.h:
9590         * tools/gst-register.c:
9591         * win32/gstreamer.def:
9592           extern symbols are now exported for the Windows DLL
9593
9594 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9595
9596         * gst/gstinfo.h:
9597           fix a problem to enable/disable DEBUG under MSVC
9598
9599 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9600
9601         * win32/:
9602           enable more debug code in DEBUG build
9603
9604 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9605
9606         * win32/config.h:
9607         * gst/gst-i18n-app.h:
9608           enable NLS under Windows
9609
9610 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
9611         * tools/gst-compprep.c: (handle_xmlerror), (main):
9612           Make an error that baffled me a bit clearer
9613
9614 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9615
9616         * gst/gstqueue.c:
9617           don't use g_queue_get_length () because it's 2.4, use ->length
9618
9619 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
9620
9621         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
9622
9623         * tools/gst-inspect.c: (print_signal_info):
9624           don't free random data twice. (fixes #144185)
9625
9626 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9627
9628         * gst/gstqueue.c:
9629         * gst/gstqueue.h:
9630           fix removing from the wrong queue on event timeout
9631           fix disposing of the event queue by casting correctly
9632           add mutexes for handling the event queue
9633           someone was sleeping when fixing queue last time around :)
9634
9635 2004-06-10  Johan Dahlin  <johan@gnome.org>
9636
9637         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
9638         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
9639
9640 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9641
9642         * docs/random/gdp:
9643         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
9644         * libs/gst/dataprotocol/dataprotocol.c:
9645         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9646         (gst_dp_buffer_from_header):
9647         * libs/gst/dataprotocol/dataprotocol.h:
9648         * libs/gst/dataprotocol/dp-private.h:
9649           rev version to 0.1, add buffer flags and copy them
9650
9651 2004-06-09  Johan Dahlin  <johan@gnome.org>
9652
9653         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
9654         the flags from the buffer we're copying.
9655
9656 2004-06-09  Wim Taymans  <wim@fluendo.com>
9657
9658         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
9659         * gst/elements/gstidentity.c: (gst_identity_init),
9660         (gst_identity_chain):
9661         Print more buffer info in fakesink.
9662         Make identity output similar to fakesink.
9663
9664 2004-06-07  Daniel Gazard  <dany42@free.fr>
9665
9666         reviewed by Benjamin Otte  <otte@gnome.org>
9667
9668         * configure.ac:
9669           fix cross compiling not working. (fixes #143741)
9670
9671 2004-06-07  Benjamin Otte  <otte@gnome.org>
9672
9673         * gst/gstelement.c: (gst_element_set_time_delay):
9674           add failure check
9675         * gst/gstinfo.h:
9676           put brackets around macro arguments of GST_TIME_ARGS, add note to
9677           move it to correct header in 0.9
9678
9679 2004-06-07  Benjamin Otte  <otte@gnome.org>
9680
9681         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
9682         (gst_file_index_load), (_file_index_id_save_entries),
9683         (gst_file_index_commit), (gst_file_index_add_association),
9684         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
9685         (gst_file_index_plugin_init):
9686           make debugging use a default category
9687
9688 2004-06-06  David Moore  <dcm@acm.org>
9689
9690         reviewed by Benjamin Otte  <otte@gnome.org>
9691
9692         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9693         (gst_fdsrc_change_state):
9694           reset offset counter when going READY => PAUSED. (fixes #142903)
9695
9696 2004-06-06  ed@catmur.co.uk
9697
9698         reviewed by Benjamin Otte  <otte@gnome.org>
9699
9700         * gst/registries/gstxmlregistry.c:
9701         (gst_xml_registry_rebuild_recurse):
9702           don't rely on g_dir_open to figure out if a file is a directory, use
9703           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
9704           directories. (fixes #142850)
9705
9706 2004-06-06  Benjamin Otte  <otte@gnome.org>
9707
9708         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
9709           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
9710         * libs/gst/bytestream/adapter.c:
9711         * libs/gst/bytestream/adapter.h:
9712           fix copyright in header and typo in debugging category name
9713
9714 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9715
9716         * configure.ac:
9717           bump nano to cvs
9718
9719 === release 0.8.3 ===
9720
9721 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9722
9723         * configure.ac:
9724           update libtool versioning
9725           do a new release
9726         * docs/gst/tmpl/gstelement.sgml:
9727         * docs/gst/tmpl/gsttypes.sgml:
9728         * gst/gstinfo.c: (_gst_debug_init):
9729           put back GST_CAT_DATAFLOW to fix API breakage
9730
9731 2004-06-04  David Schleef  <ds@schleef.org>
9732
9733         * autogen.sh: Add a temporary 'env' to test buildbot problems.
9734
9735 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9736
9737         * configure.ac:
9738           bump nano to cvs
9739
9740 === release 0.8.2 ===
9741
9742 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9743
9744         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
9745           check GST_DEBUG environment variable which is parsed the same way
9746           as --gst-debug=
9747
9748 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9749
9750         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
9751                             gstmd5sink.c gstshaper.c gsttee.c
9752                             gsttypefindelement.c
9753         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
9754
9755           - removing trailing commas at end of enums
9756             it is correct C99 code but C90 compilers would complain
9757             (AIX, Forte, ...)
9758             ('should' fix #143290, at least partially)
9759
9760 2004-05-27  Wim Taymans  <wim@fluendo.com>
9761
9762         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
9763         (chain_group_set_enabled), (create_group), (add_to_group),
9764         (merge_groups), (setup_group_scheduler), (group_elements),
9765         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
9766         Don't try to follow the pad connections with other groups
9767         when a loop based element is added to the scheduler because
9768         the bin will inform the scheduler about the pad links a little
9769         later.
9770
9771 2004-05-27  Wim Taymans  <wim@fluendo.com>
9772
9773         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
9774         (remove_from_chain), (chain_group_set_enabled),
9775         (setup_group_scheduler), (group_element_set_enabled),
9776         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
9777         (gst_opt_scheduler_show):
9778         Elements without a group can do a state change as well, just wait
9779         with the setup of the scheduling function when it is added to a
9780         chain.
9781
9782 2004-05-27  Wim Taymans  <wim@fluendo.com>
9783
9784         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
9785         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
9786         (merge_groups), (setup_group_scheduler),
9787         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
9788         (gst_opt_scheduler_show):
9789         Fixes to maintain internal consistency of the scheduler data
9790         structures. 
9791          - adding an enabled group to a chain should increment the
9792            number of enabled elements in that chain.
9793          - removing an enabled group from a chain could disable the
9794            chain.
9795          - removing a disabled group from a chain could enable the
9796            chain.
9797          - add g_assert when internal inconsistency is detected.
9798          - adding an element to a group could increase the number of
9799            links this group has with other groups.
9800          - merging two groups also merges the chains.
9801          - also show group links in the _show method.
9802            
9803
9804 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9805
9806         * gst/gstcaps.c: (gst_caps_structure_simplify):
9807           don't print error messages when there is no error
9808         * gst/gstvalue.c: (gst_value_compare_int_range):
9809           compare the second value, too
9810         * testsuite/caps/Makefile.am:
9811         * testsuite/caps/random.c: (assert_on_error), (main):
9812           add tests to make sure the two things above are checked for
9813
9814 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9815
9816         * configure.ac:
9817         * libs/gst/dataprotocol/Makefile.am:
9818         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
9819         * libs/gst/dataprotocol/dataprotocol.h:
9820           wrap header in GST_ENABLE_NEW.  make code use it
9821
9822 2004-05-23  Johan Dahlin  <johan@gnome.org>
9823
9824         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
9825         so verbose and print GstElement signal names all the time.
9826
9827 2004-05-22  David Schleef  <ds@schleef.org>
9828
9829         * gst/registries/gstxmlregistry.c:
9830         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
9831         (bug #142957)
9832
9833 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9834
9835         * configure.ac:
9836           scrub cflags for glib2 so gcc doesn't complain when glib is in
9837           /usr/local
9838
9839 2004-05-21  Johan Dahlin  <johan@gnome.org>
9840
9841         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
9842         __GNUC__, patch from Brian Cameron, fixes bug #142804
9843
9844 2004-05-20  David Schleef  <ds@schleef.org>
9845
9846         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
9847         comparison code.  (bug #142819)
9848
9849 2004-05-20  Wim Taymans  <wim@fluendo.com>
9850
9851         * gst/gstbuffer.c: (gst_buffer_default_copy):
9852         * gst/gstbuffer.h:
9853         Added Comment to a flag.
9854         copy relevant flags in _buffer_copy.
9855
9856 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9857
9858         reviewed by: Wim Taymans <wim at fluendo dot com>
9859
9860         * gst/gstbuffer.h:
9861           add GST_BUFFER_IN_CAPS buffer flag
9862         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9863         (gst_structure_parse_any_list), (gst_structure_parse_list),
9864         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
9865         * gst/gstvalue.c: (gst_value_serialize_any_list),
9866         (gst_value_transform_any_list_string),
9867         (gst_value_list_prepend_value), (gst_value_list_append_value),
9868         (gst_value_list_get_size), (gst_value_list_get_value),
9869         (gst_value_transform_list_string),
9870         (gst_value_transform_fixed_list_string),
9871         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
9872         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
9873         (_gst_value_initialize):
9874         * gst/gstvalue.h:
9875           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
9876           < , > as a format.
9877         * testsuite/caps/string-conversions.c: (main):
9878           add regression tests for < >
9879
9880 2004-05-20  Johan Dahlin  <johan@gnome.org>
9881
9882         * docs/gst/Makefile.am (all-local): Re-add
9883
9884 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9885
9886         * docs/gst/Makefile.am:
9887         * docs/gst/gstreamer-docs.sgml:
9888         * docs/libs/Makefile.am:
9889         * docs/libs/gstreamer-libs-docs.sgml:
9890           fix distcheck issues
9891
9892 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9893
9894         * libs/gst/dataprotocol/Makefile.am:
9895           add to autotest
9896
9897 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9898
9899         * libs/gst/dataprotocol/Makefile.am:
9900         * libs/gst/dataprotocol/dataprotocol.c:
9901         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9902         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
9903         * libs/gst/dataprotocol/dp-private.h:
9904           use GST macros to read/write fixed length ints
9905           add some more asserts
9906
9907 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9908
9909         * docs/libs/gstreamer-libs-docs.sgml:
9910         * docs/libs/gstreamer-libs-sections.txt:
9911           remove idct and putbits
9912         * configure.ac:
9913         * docs/libs/tmpl/gstdataprotocol.sgml:
9914         * libs/gst/Makefile.am:
9915         * libs/gst/dataprotocol/Makefile.am:
9916         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
9917         (buffer_test), (caps_test), (event_test), (main):
9918         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9919         (gst_dp_dump_byte_array), (gst_dp_init),
9920         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
9921         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9922         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
9923         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
9924         (gst_dp_validate_header), (gst_dp_validate_payload),
9925         (gst_dp_validate_packet), (plugin_init):
9926         * libs/gst/dataprotocol/dataprotocol.h:
9927         * libs/gst/dataprotocol/dp-private.h:
9928           add dataprotocol
9929
9930 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9931
9932         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9933           fix int variable deserialization and add a helper so we can actually
9934           debug this.
9935
9936 2004-05-18  David Schleef  <ds@schleef.org>
9937
9938         * testsuite/debug/commandline.c: (main): Call ./commandline, not
9939           argv[0].  Calling yourself is probably not the best way to
9940           construct a test like this, btw.
9941
9942 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9943
9944         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
9945           don't claim to be more intelligent than a scheduler when the
9946           scheduler claims the pipeline is stopped
9947         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9948         (safe_cothread_destroy),
9949         (gst_entry_scheduler_remove_all_cothreads),
9950         (gst_entry_scheduler_reset), (_remove_cothread),
9951         (gst_entry_scheduler_state_transition):
9952           hold off cothread destruction if we're not in main cothread
9953         * configure.ac:
9954         * testsuite/Makefile.am:
9955           add new test dir
9956         * testsuite/schedulers/.cvsignore:
9957         * testsuite/schedulers/Makefile.am:
9958           add tests
9959         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9960           check relinking and adding/removing elements from a running pipeline
9961         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9962           check unlinking in a running pipeline
9963         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9964           check unreffing a running pipeline
9965         * testsuite/schedulers/useless_iteration.c: (main):
9966           check iterating a pipeline that contains running threads works
9967
9968 2004-05-18  David Schleef  <ds@schleef.org>
9969
9970         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9971           is false.
9972
9973 2004-05-18  Wim Taymans  <wim@fluendo.com>
9974
9975         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9976         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9977         Fixed an error introduced with patch for 1.63. When setting
9978         a get based element as the entry point in a group, make sure
9979         to mark the group as GET based.
9980
9981 2004-05-18  Wim Taymans  <wim@fluendo.com>
9982
9983         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9984         (setup_group_scheduler), (loop_group_schedule_function),
9985         (gst_opt_scheduler_pad_link):
9986         Added some more debug info and fixed a bug where the group
9987         type was set to LOOP but it was in fact unknown.
9988
9989 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9990
9991         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9992           make resetting scheduler work twice in a row
9993
9994 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9995
9996         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9997         (CREATE_USERIALIZATION), (_gst_value_initialize),
9998         (gst_value_compare_float), (gst_value_serialize_float),
9999         (gst_value_deserialize_float), (gst_value_compare_enum),
10000         (gst_value_serialize_enum), (gst_value_deserialize_enum):
10001           add serialization and comparison functions for long, int64, enum and
10002           float values
10003         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
10004           use best serialization function in type hierarchy instead of only a
10005           matching one. This is required for enums to work.
10006         * gst/parse/grammar.y:
10007           use gst_caps_deserialize
10008         * testsuite/parse/Makefile.am:
10009           parse1 now works
10010         * testsuite/parse/parse1.c: (main):
10011           remove aggregator check, aggregator is broken, this test works now
10012           but fails because of bug #138012
10013         * testsuite/parse/parse2.c: (main):
10014           s/xvideosink/xvimagesink - this test looks a lot like we should
10015           disable it
10016
10017 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10018
10019         * gst/gstelement.c: (gst_element_class_init):
10020           whoops, store the signal id correctly
10021         * gst/schedulers/gstbasicscheduler.c:
10022         (gst_basic_scheduler_chain_wrapper):
10023           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
10024           chain function isn't linked
10025
10026 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
10027         * configure.ac:
10028         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
10029         support until we decide where the flags should be used
10030         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
10031         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
10032         * gst/gstpad.c: (gst_pad_link_call_link_functions):
10033         Output refused caps in the debug info
10034
10035 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10036
10037         * gst/elements/gstidentity.c: (gst_identity_chain):
10038           add duration debug
10039         * gst/gstinfo.c: (gst_debug_log_default):
10040           add timestamp
10041
10042 2004-05-13  Benjamin Otte  <otte@gnome.org>
10043
10044         * gst/gstpipeline.c: (gst_pipeline_dispose),
10045         (gst_pipeline_change_state):
10046           call gst_scheduler_reset on dispose (fixes #141416)
10047
10048 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10049
10050         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
10051           compute mapsize correctly
10052         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
10053           use correct datatypes when calling a varargs function
10054         * gst/elements/gsttypefindelement.c: (stop_typefinding):
10055           push a DISCONT event as first thing
10056         * gst/gst_private.h:
10057         * gst/gstinfo.c: (_gst_debug_init):
10058           remove GST_DATAFLOW debugging category
10059         * gst/gstbin.c: (gst_bin_iterate):
10060           use GST_SCHEDULING category
10061         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
10062         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
10063         (gst_pad_call_get_function):
10064           add GST_DATAFLOW to easily track flow of buffers or events.
10065         * gst/gstqueue.c: (gst_queue_get_type),
10066         (gst_queue_handle_pending_events), (gst_queue_chain),
10067         (gst_queue_get), (gst_queue_handle_src_event):
10068           use own static debugging category GST_DATAFLOW for dataflow,
10069           use DEBUG category for showing which path events go, use LOG
10070           category for buffers.
10071
10072 2004-05-10  David Schleef  <ds@schleef.org>
10073
10074         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
10075
10076 2004-05-10  David Schleef  <ds@schleef.org>
10077
10078         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
10079         symbols, because otherwise we don't know what they are.  Thanks,
10080         the GStreamer team.
10081         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
10082
10083 2004-05-10  David Schleef  <ds@schleef.org>
10084
10085         (from Steve Lhomme)
10086         * win32/Makefile: When using make clean the MS Visual Studio makefiles
10087         are deleted.  Fix.
10088         * win32/Makefile.inspect:
10089         * win32/Makefile.launch:
10090         * win32/Makefile.register:
10091
10092 2004-05-10  David Schleef  <ds@schleef.org>
10093
10094         * gst/gstinfo.h: Add missing inline function.
10095         * gst/gsttrace.c: add include
10096         * gst/parse/grammar.y: remove unused code
10097         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
10098         more portable.
10099         * tools/gst-register.c: wrap unistd.h
10100         
10101         More additions/fixes from Steve for the MSVC build.
10102         * win32/GStreamer.vcproj:
10103         * win32/Makefile:
10104         * win32/Makefile.inspect:
10105         * win32/Makefile.launch:
10106         * win32/Makefile.register:
10107         * win32/README.txt:
10108         * win32/gst-inspect.vcproj:
10109         * win32/gst-launch.vcproj:
10110         * win32/gst-register.vcproj:
10111         * win32/gstbytestream.def:
10112         * win32/gstbytestream.vcproj:
10113         * win32/gstconfig.h:
10114         * win32/gstelements.def:
10115         * win32/gstelements.vcproj:
10116         * win32/gstenumtypes.c:
10117         * win32/gstenumtypes.h:
10118         * win32/gstoptimalscheduler.def:
10119         * win32/gstoptimalscheduler.vcproj:
10120         * win32/gstreamer.def:
10121         * win32/gstspider.def:
10122         * win32/gstspider.vcproj:
10123         * win32/gstversion.h:
10124         * win32/msvc71.sln:
10125
10126 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10127
10128         * gst/gstelement.c: (gst_element_class_init),
10129         (gst_element_no_more_pads):
10130         * gst/gstelement.h:
10131           add gst_element_no_more_pads and the "no-more-pads" signal
10132
10133 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10134
10135         * gst/gstregistry.c: (gst_registry_add_plugin):
10136           refuse to add plugins when a plugin with same name is already
10137           registered. Fixes a bunch of "How to remove plugins?" issues.
10138           May lead to other problems though, let's test
10139
10140 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10141
10142         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
10143         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
10144         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
10145
10146 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10147
10148         * tests/Makefile.am: fix am16 issue
10149
10150 2004-05-09  Benjamin Otte  <otte@gnome.org>
10151
10152         * libs/gst/bytestream/Makefile.am:
10153           we should indeed add .c files to makefiles or they won't be built
10154           (d'oh)
10155
10156 2004-05-08  Benjamin Otte  <otte@gnome.org>
10157
10158         * gst/gstpad.c: (gst_pad_proxy_fixate):
10159           really reduce the set of caps
10160
10161 2004-05-08  Benjamin Otte  <otte@gnome.org>
10162
10163         * tests/Makefile.am:
10164         * tests/spidey_bench.c: (handoff), (main):
10165           add benchmark to test how long spider needs to create a pipeline
10166
10167 2004-05-08  Benjamin Otte  <otte@gnome.org>
10168
10169         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
10170           mark links as unengaged when unnegotiating instead of deactivating.
10171           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
10172
10173 2004-05-08  Benjamin Otte  <otte@gnome.org>
10174
10175         * docs/manual/helloworld.xml:
10176           s/audiosink/osssink (patch by Patrick Guimond)
10177
10178 2004-05-07  David Schleef  <ds@schleef.org>
10179
10180         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
10181         since it contains important stuff.
10182
10183 2004-05-07  David Schleef  <ds@schleef.org>
10184
10185         * testsuite/caps/caps.c: (test3), (main): A check for appending
10186         ANY caps.
10187
10188 2004-05-07  David Schleef  <ds@schleef.org>
10189
10190         * common/m4/as-compiler-flag.m4: Properly quote arguments,
10191         which may contain commas.  Fixes detection of -Wa,-mregnames
10192
10193 2004-05-06  David Schleef  <ds@schleef.org>
10194
10195         Changes to handle compilers that don't have variadic macro
10196         support.  In particular, glib headers define some inlines
10197         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
10198         builds.
10199         * gst/Makefile.am:
10200         * gst/cothreads.c:
10201         * gst/elements/gstfdsink.c:
10202         * gst/elements/gstfdsrc.c:
10203         * gst/elements/gstfilesink.c:
10204         * gst/elements/gstfilesrc.c:
10205         * gst/gst_private.h:
10206         * gst/gstatomic.c:
10207         * gst/gstcaps.c: (gst_caps_append):
10208         * gst/gstcpu.c: (gst_cpuid_i386):
10209         * gst/gstelement.c:
10210         * gst/gsterror.c:
10211         * gst/gstfilter.c:
10212         * gst/gstinfo.h:
10213         * gst/gstprobe.c:
10214         * gst/gstquery.c:
10215         * gst/gstregistry.c:
10216         * gst/gststructure.c:
10217         * gst/gsttaginterface.c:
10218         * gst/gsttrace.c: (gst_trace_new):
10219         * gst/gsttrashstack.c:
10220         * gst/gsturi.c:
10221         * gst/gstvalue.c:
10222         * gst/parse/grammar.y:
10223         * gst/parse/parse.l:
10224         * tools/gst-inspect.c: (main):
10225         * tools/gst-launch.c: (main):
10226         * tools/gst-xmlinspect.c: (PUT_STRING):
10227
10228 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10229
10230         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10231         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10232         * gst/elements/gstfilesrc.h:
10233           send NEW_MEDIA events correctly
10234         * gst/elements/gsttypefindelement.c: (start_typefinding),
10235         (gst_type_find_element_handle_event):
10236           restart typefinding when we get a NEW_MEDIA event
10237         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
10238         (gst_bin_dispose):
10239           don't die when someone removes elements in callbacks
10240         * gst/gstelement.c: (gst_element_change_state):
10241           improve debugging
10242         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
10243           we need a NEW_MEDIA event to engage a link
10244         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
10245           don't g_print debugging stuff
10246         * testsuite/caps/simplify.c: (check_caps):
10247
10248 2004-05-04  Benjamin Otte  <otte@gnome.org>
10249
10250         * gst/parse/grammar.y:
10251           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
10252
10253 2004-05-04  Benjamin Otte  <otte@gnome.org>
10254
10255         * testsuite/caps/renegotiate.c: (main):
10256           improve output in error case
10257
10258 2004-05-04  Benjamin Otte  <otte@gnome.org>
10259
10260         * gst/parse/grammar.y:
10261           fix assert to not trigger when there's no error argument
10262         * gst/parse/parse.l:
10263           fix definition of caps to allow more than two structures
10264         * testsuite/caps/Makefile.am:
10265         * testsuite/caps/renegotiate.c: (main):
10266           it's sinesrc and works in that case
10267
10268 2004-05-04  Wim Taymans  <wim@fluendo.com>
10269
10270         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
10271         (group_dec_link), (gst_opt_scheduler_pad_unlink):
10272         when removing an element from a group, we always need to
10273         decrement the link count that this group had with other 
10274         groups through the element.
10275         added an extra assert to catch inconsistencies when decrementing
10276         the link count.
10277
10278 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10279
10280         * configure.ac:
10281         * docs/gst/Makefile.am:
10282         * docs/gst/gstreamer-sections.txt:
10283         * docs/gst/tmpl/gstcompat.sgml:
10284         * examples/appreader/Makefile.am:
10285         * examples/cutter/Makefile.am:
10286         * examples/events/Makefile.am:
10287         * examples/helloworld/Makefile.am:
10288         * examples/helloworld2/Makefile.am:
10289         * examples/launch/Makefile.am:
10290         * examples/manual/Makefile.am:
10291         * examples/mixer/Makefile.am:
10292         * examples/pingpong/Makefile.am:
10293         * examples/plugins/Makefile.am:
10294         * examples/queue/Makefile.am:
10295         * examples/queue2/Makefile.am:
10296         * examples/queue3/Makefile.am:
10297         * examples/queue4/Makefile.am:
10298         * examples/retag/Makefile.am:
10299         * examples/thread/Makefile.am:
10300         * examples/typefind/Makefile.am:
10301         * examples/xml/Makefile.am:
10302         * gst/Makefile.am:
10303         * gst/autoplug/Makefile.am:
10304         * gst/elements/Makefile.am:
10305         * gst/gstcompat.h:
10306         * gst/indexers/Makefile.am:
10307         * gst/parse/Makefile.am:
10308         * gst/registries/Makefile.am:
10309         * gst/schedulers/Makefile.am:
10310         * libs/gst/bytestream/Makefile.am:
10311         * libs/gst/control/Makefile.am:
10312         * libs/gst/getbits/Makefile.am:
10313         * po/af.po:
10314         * po/az.po:
10315         * po/en_GB.po:
10316         * po/fr.po:
10317         * po/nl.po:
10318         * po/sr.po:
10319         * po/sv.po:
10320         * po/tr.po:
10321         * po/uk.po:
10322         * tests/Makefile.am:
10323         * tests/bufspeed/Makefile.am:
10324         * tests/instantiate/Makefile.am:
10325         * tests/memchunk/Makefile.am:
10326         * tests/muxing/Makefile.am:
10327         * tests/negotiation/Makefile.am:
10328         * tests/probes/Makefile.am:
10329         * tests/sched/Makefile.am:
10330         * tests/seeking/Makefile.am:
10331         * tests/threadstate/Makefile.am:
10332         * testsuite/caps/Makefile.am:
10333         * testsuite/cleanup/Makefile.am:
10334         * testsuite/dlopen/Makefile.am:
10335         * testsuite/dynparams/Makefile.am:
10336         * testsuite/plugin/Makefile.am:
10337         * testsuite/states/Makefile.am:
10338         * tools/Makefile.am:
10339           reorganize compile/link flags to be consistent
10340           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
10341
10342 2004-05-04  David Schleef  <ds@schleef.org>
10343
10344         The "once more, with feeling" check-in.
10345         * testsuite/caps/Makefile.am: dist caps_strings
10346         * testsuite/caps/renegotiate.c: (main): This test triggers a
10347           segfault in the core.  Marking as failing.
10348
10349 2004-05-03  David Schleef  <ds@schleef.org>
10350
10351         * testsuite/caps/deserialize.c: (main): Fix problems noticed
10352           by the build bots.
10353         * testsuite/caps/renegotiate.c: (main): Same.
10354
10355 2004-05-03  David Schleef  <ds@schleef.org>
10356
10357         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
10358
10359 2004-05-03  David Schleef  <ds@schleef.org>
10360
10361         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
10362           variable to find our source file.
10363
10364 2004-05-03  David Schleef  <ds@schleef.org>
10365
10366         * configure.ac:  Link plugins with libgstreamer and dependent
10367           libraries
10368         * testsuite/caps/Makefile.am:
10369         * testsuite/caps/caps_strings:
10370         * testsuite/caps/deserialize.c: (main): Add a little test to slog
10371           through a file of caps strings and test each one
10372
10373 2004-05-04  Benjamin Otte  <otte@gnome.org>
10374
10375         * libs/gst/bytestream/Makefile.am:
10376         * libs/gst/bytestream/adapter.c: 
10377         * libs/gst/bytestream/adapter.h:
10378           add GstAdapter, similar to bytestream, but doesn't require ugly event
10379           handling or uglier loopbased elements
10380
10381 2004-05-03  David Schleef  <ds@schleef.org>
10382
10383         * testsuite/caps/Makefile.am: Fix spelling of ??????????????????????
10384         * testsuite/caps/erathostenes.c:
10385         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
10386
10387 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10388
10389         * docs/pwg/pwg.xml:
10390           remove hardcoded stylesheet path (duh)
10391         * docs/random/release:
10392         * docs/gst/gstreamer-sections.txt:
10393         * gst/Makefile.am:
10394         * gst/gst.h:
10395         * gst/gst_private.h:
10396         * gst/gstcaps.c:
10397         * gst/gstevent.c:
10398         * gst/gstformat.c:
10399         * gst/gstinfo.c:
10400         * gst/gstinfo.h:
10401         * gst/gstinterface.c:
10402         * gst/gstmemchunk.c:
10403         * gst/gstprobe.c:
10404         * gst/gstquery.c:
10405         * gst/gstregistry.c:
10406         * gst/gstregistrypool.c:
10407         * gst/gststructure.c:
10408         * gst/gsttaginterface.c:
10409         * gst/gstthread.c:
10410         * gst/gsttrace.c:
10411         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
10412         * gst/gsturi.c:
10413         * gst/gstvalue.c:
10414           deprecate gst_info; remove gstlog.h
10415    
10416
10417 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10418
10419         * Makefile.am:
10420         * po/en_GB.po:
10421         * po/sv.po:
10422         * po/uk.po:
10423           updated translations
10424
10425 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10426
10427         * gst/gstbin.c: (gst_bin_dispose):
10428           better debugging
10429
10430 2004-05-03  Johan Dahlin  <johan@gnome.org>
10431
10432         * gst/schedulers/gstoptimalscheduler.c
10433         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
10434         really is a GstElement. Avoids critical when running gst-launch -v
10435         and a oggdemux/decoding pipeline.
10436
10437 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10438
10439         * docs/gst/tmpl/gstpipeline.sgml :
10440         * docs/manual/elements-api.xml :
10441                 doc fix by Patrick Guimond (Protector) from devel ML
10442                 reviewed by ronald
10443
10444 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10445
10446         * docs/gst/Makefile.am :
10447         * docs/libs/Makefile.am :
10448                 apply a patch from Arwed v. Merkatz so that gtk-doc
10449                 generated docs install (same for .devhelp file)
10450                 (fixes part 1 of #138836)
10451
10452 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10453
10454         * docs/faq/dependencies.xml: typo
10455         * docs/faq/getting.xml :
10456             - fix download URL for new gstreamer site
10457             - hide sf.net download page as latest version aren't there
10458             - fix apt URLs
10459             - fill "get via CVS" paragraph (link to dev page on the site)
10460         * docs/faq/general.xml:
10461             hide status tables as they no more exists
10462             change case on plugins license file to reflect reality
10463         * docs/faq/troubleshooting.xml:
10464             remove the wiki question/answer as there is no more wiki
10465
10466 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10467
10468         * gst/gsterror.h:
10469           include the headers needed for declarations used in this header
10470
10471 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10472
10473         * docs/random/uraeus/gstreamer_and_midi.txt :
10474           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
10475           (fixes #132288)
10476
10477 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
10478
10479         reviewed by Benjamin Otte  <otte@gnome.org>
10480
10481         * gst/schedulers/gthread-cothreads.h:
10482           free allocated data for main cothread, too when destroying context
10483           (fixes #141417)
10484
10485 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10486
10487         * docs/manual/goals.xml : remove duplicated paragraph at end 
10488         of doc page (fixes #141448)
10489
10490 2004-04-29  David Schleef  <ds@schleef.org>
10491
10492         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
10493         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
10494
10495 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10496
10497         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10498           fix property
10499         * gst/gstcaps.c:
10500           fix doc string
10501         * po/POTFILES.in:
10502           rename typefind source file
10503
10504 2004-04-28  David Schleef  <ds@schleef.org>
10505
10506         Several new files from Steve Lhomme's MSVC patch (bug #141317):
10507         * win32/GStreamer.vcproj:
10508         * win32/Makefile:
10509         * win32/config.h:
10510         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
10511         (_trewinddir), (_ttelldir), (_tseekdir):
10512         * win32/dirent.h:
10513         * win32/gst-inspect.vcproj:
10514         * win32/gst-launch.vcproj:
10515         * win32/gst-register.vcproj:
10516         * win32/gstbytestream.vcproj:
10517         * win32/gstelements.vcproj:
10518         * win32/gstoptimalscheduler.vcproj:
10519         * win32/gstspider.vcproj:
10520         * win32/gtchar.h:
10521         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
10522         * win32/mman.h:
10523         * win32/mman.inl:
10524         * win32/msvc71.sln:
10525
10526 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10527
10528         * gst/gst.c: (init_post):
10529         * gst/gstinfo.c:
10530           remove useless _gst_progname stuff
10531         * tools/gst-inspect.c: (print_field), (print_caps):
10532           improve caps output
10533
10534 2004-04-28  David Schleef  <ds@schleef.org>
10535
10536         Disable parsing of a lot of files that aren't part of the
10537         exported API.  Move corresponding template files to old/,
10538         waiting for removal when they don't contain anything
10539         interesting.
10540         * docs/gst/Makefile.am:
10541         * docs/gst/gstreamer-sections.txt:
10542         * docs/gst/tmpl/cothreads.sgml:
10543         * docs/gst/tmpl/cothreads_compat.sgml:
10544         * docs/gst/tmpl/gettext.sgml:
10545         * docs/gst/tmpl/gobject2gtk.sgml:
10546         * docs/gst/tmpl/grammar.tab.sgml:
10547         * docs/gst/tmpl/gst-i18n-app.sgml:
10548         * docs/gst/tmpl/gst-i18n-lib.sgml:
10549         * docs/gst/tmpl/gst_private.sgml:
10550         * docs/gst/tmpl/gstaggregator.sgml:
10551         * docs/gst/tmpl/gstarch.sgml:
10552         * docs/gst/tmpl/gstatomic_impl.sgml:
10553         * docs/gst/tmpl/gstbufferstore.sgml:
10554         * docs/gst/tmpl/gstdata_private.sgml:
10555         * docs/gst/tmpl/gstdisksink.sgml:
10556         * docs/gst/tmpl/gstdisksrc.sgml:
10557         * docs/gst/tmpl/gstelementfactory.sgml:
10558         * docs/gst/tmpl/gstextratypes.sgml:
10559         * docs/gst/tmpl/gstfakesink.sgml:
10560         * docs/gst/tmpl/gstfakesrc.sgml:
10561         * docs/gst/tmpl/gstfdsink.sgml:
10562         * docs/gst/tmpl/gstfdsrc.sgml:
10563         * docs/gst/tmpl/gstfilesink.sgml:
10564         * docs/gst/tmpl/gstfilesrc.sgml:
10565         * docs/gst/tmpl/gsthttpsrc.sgml:
10566         * docs/gst/tmpl/gstidentity.sgml:
10567         * docs/gst/tmpl/gstindexfactory.sgml:
10568         * docs/gst/tmpl/gstmarshal.sgml:
10569         * docs/gst/tmpl/gstmd5sink.sgml:
10570         * docs/gst/tmpl/gstmultidisksrc.sgml:
10571         * docs/gst/tmpl/gstmultifilesrc.sgml:
10572         * docs/gst/tmpl/gstpadtemplate.sgml:
10573         * docs/gst/tmpl/gstpipefilter.sgml:
10574         * docs/gst/tmpl/gstschedulerfactory.sgml:
10575         * docs/gst/tmpl/gstsearchfuncs.sgml:
10576         * docs/gst/tmpl/gstshaper.sgml:
10577         * docs/gst/tmpl/gstspider.sgml:
10578         * docs/gst/tmpl/gstspideridentity.sgml:
10579         * docs/gst/tmpl/gststatistics.sgml:
10580         * docs/gst/tmpl/gsttee.sgml:
10581         * docs/gst/tmpl/gsttimecache.sgml:
10582         * docs/gst/tmpl/gsttypefind.sgml:
10583         * docs/gst/tmpl/gsttypefindfactory.sgml:
10584         * docs/gst/tmpl/gstxmlregistry.sgml:
10585         * docs/gst/tmpl/gthread-cothreads.sgml:
10586         * docs/gst/tmpl/old/cothreads.sgml:
10587         * docs/gst/tmpl/old/cothreads_compat.sgml:
10588         * docs/gst/tmpl/old/gettext.sgml:
10589         * docs/gst/tmpl/old/gobject2gtk.sgml:
10590         * docs/gst/tmpl/old/grammar.tab.sgml:
10591         * docs/gst/tmpl/old/gst-i18n-app.sgml:
10592         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
10593         * docs/gst/tmpl/old/gst_private.sgml:
10594         * docs/gst/tmpl/old/gstaggregator.sgml:
10595         * docs/gst/tmpl/old/gstarch.sgml:
10596         * docs/gst/tmpl/old/gstatomic_impl.sgml:
10597         * docs/gst/tmpl/old/gstbufferstore.sgml:
10598         * docs/gst/tmpl/old/gstdata_private.sgml:
10599         * docs/gst/tmpl/old/gstdisksink.sgml:
10600         * docs/gst/tmpl/old/gstdisksrc.sgml:
10601         * docs/gst/tmpl/old/gstelementfactory.sgml:
10602         * docs/gst/tmpl/old/gstextratypes.sgml:
10603         * docs/gst/tmpl/old/gstfakesink.sgml:
10604         * docs/gst/tmpl/old/gstfakesrc.sgml:
10605         * docs/gst/tmpl/old/gstfdsink.sgml:
10606         * docs/gst/tmpl/old/gstfdsrc.sgml:
10607         * docs/gst/tmpl/old/gstfilesink.sgml:
10608         * docs/gst/tmpl/old/gstfilesrc.sgml:
10609         * docs/gst/tmpl/old/gsthttpsrc.sgml:
10610         * docs/gst/tmpl/old/gstidentity.sgml:
10611         * docs/gst/tmpl/old/gstindexfactory.sgml:
10612         * docs/gst/tmpl/old/gstmarshal.sgml:
10613         * docs/gst/tmpl/old/gstmd5sink.sgml:
10614         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
10615         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
10616         * docs/gst/tmpl/old/gstpadtemplate.sgml:
10617         * docs/gst/tmpl/old/gstpipefilter.sgml:
10618         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
10619         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
10620         * docs/gst/tmpl/old/gstshaper.sgml:
10621         * docs/gst/tmpl/old/gstspider.sgml:
10622         * docs/gst/tmpl/old/gstspideridentity.sgml:
10623         * docs/gst/tmpl/old/gststatistics.sgml:
10624         * docs/gst/tmpl/old/gsttee.sgml:
10625         * docs/gst/tmpl/old/gsttimecache.sgml:
10626         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
10627         * docs/gst/tmpl/old/gstxmlregistry.sgml:
10628         * docs/gst/tmpl/old/gthread-cothreads.sgml:
10629         * docs/gst/tmpl/old/types.sgml:
10630         * docs/gst/tmpl/types.sgml:
10631
10632         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
10633         gtkdoc-scan doesn't like files with the same name in different
10634         directories.
10635         * gst/elements/Makefile.am:
10636         * gst/elements/gstelements.c:
10637         * gst/elements/gsttypefind.c: 
10638         * gst/elements/gsttypefind.h:
10639         * gst/elements/gsttypefindelement.c:
10640         * gst/elements/gsttypefindelement.h:
10641
10642 2004-04-28  David Schleef  <ds@schleef.org>
10643
10644         A bunch of portability fixes, derived from Steve Lhomme's MSVC
10645         patch (bug #141317):
10646         * gst/gst-i18n-lib.h: Allow disabling gettext.
10647         * gst/gstatomic_impl.h: disable warning when it's dumb.
10648         * gst/gstclock.c: fix include
10649         * gst/gstcompat.h: fix variadic macro
10650         * gst/gstinfo.c: fix include
10651         * gst/gstmacros.h: add defines for inlines on MSVC
10652         * gst/gstplugin.c: fix includes
10653         * gst/gstregistry.c: fix includes
10654         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
10655         * gst/gstsystemclock.c: fix include
10656         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
10657         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
10658         * gst/registries/gstxmlregistry.c:
10659         (gst_xml_registry_parse_element_factory): fix use of non-portable
10660         functions
10661         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
10662         * libs/gst/control/dparammanager.h: same
10663
10664 2004-04-28  David Schleef  <ds@schleef.org>
10665
10666         Move a bunch of unused files to old/ with names that are
10667         not case-insensitive-unique.  These files still contain some
10668         useful information that needs to be merged into gstbin.sgml,
10669         etc., so they shouldn't be deleted yet.
10670         * docs/gst/tmpl/GstBin.sgml:
10671         * docs/gst/tmpl/GstBuffer.sgml:
10672         * docs/gst/tmpl/GstCaps.sgml:
10673         * docs/gst/tmpl/GstClock.sgml:
10674         * docs/gst/tmpl/GstCompat.sgml:
10675         * docs/gst/tmpl/GstData.sgml:
10676         * docs/gst/tmpl/GstElement.sgml:
10677         * docs/gst/tmpl/GstEvent.sgml:
10678         * docs/gst/tmpl/GstIndex.sgml:
10679         * docs/gst/tmpl/GstStructure.sgml:
10680         * docs/gst/tmpl/GstTag.sgml:
10681         * docs/gst/tmpl/old/GstBin.sgml:
10682         * docs/gst/tmpl/old/GstBuffer.sgml:
10683         * docs/gst/tmpl/old/GstCaps.sgml:
10684         * docs/gst/tmpl/old/GstClock.sgml:
10685         * docs/gst/tmpl/old/GstCompat.sgml:
10686         * docs/gst/tmpl/old/GstData.sgml:
10687         * docs/gst/tmpl/old/GstElement.sgml:
10688         * docs/gst/tmpl/old/GstEvent.sgml:
10689         * docs/gst/tmpl/old/GstIndex.sgml:
10690         * docs/gst/tmpl/old/GstStructure.sgml:
10691         * docs/gst/tmpl/old/GstTag.sgml:
10692
10693 2004-04-28  David Schleef  <ds@schleef.org>
10694
10695         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
10696         (gst_caps_append), (gst_caps_append_structure),
10697         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
10698         (gst_caps_set_simple), (gst_caps_set_simple_valist),
10699         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
10700         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
10701         (gst_caps_intersect), (gst_caps_normalize),
10702         (gst_caps_transform_to_string):  Patch from Tim-Philipp M??ller
10703         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
10704         * gst/gstcaps.h: use GST_IS_CAPS().
10705
10706 2004-04-26  David Schleef  <ds@schleef.org>
10707
10708         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
10709         assembly.  gcc doesn't handle it correctly. (bug #141083)
10710         * gst/gsttrashstack.h: same
10711
10712 2004-04-25  Benjamin Otte  <otte@gnome.org>
10713
10714         * gst/gstelement.c: (gst_element_change_state):
10715           fix assertion to do an int comparison
10716
10717 2004-04-25  Benjamin Otte  <otte@gnome.org>
10718
10719         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10720           better debugging output on error
10721
10722 2004-04-25  Benjamin Otte  <otte@gnome.org>
10723
10724         * gst/gstcaps.c: (gst_caps_subtract):
10725           fix memleak
10726
10727 2004-04-23  Benjamin Otte  <otte@gnome.org>
10728
10729         * gst/gstvalue.c: (gst_value_compare_buffer),
10730         (_gst_value_initialize):
10731           add comparison function for buffers
10732
10733 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10734
10735         * docs/pwg/pwg.xml:
10736           Just found out that this so-called "ima-wav" format is really
10737           just "dvi adpcm" (according to the MS WAV documentation). So
10738           renaming it. We didn't use it yet anyway.
10739
10740 2004-04-23  Benjamin Otte  <otte@gnome.org>
10741
10742         * gst/gstcaps.c: (gst_caps_is_always_compatible):
10743           call gst_caps_is_subset
10744
10745 2004-04-23  Benjamin Otte  <otte@gnome.org>
10746
10747         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
10748         (gst_caps_is_subset):
10749           add documentation
10750
10751 2004-04-23  Benjamin Otte  <otte@gnome.org>
10752           
10753         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
10754         (gst_caps_structure_subtract), (gst_caps_subtract),
10755         (gst_caps_structure_figure_out_union),
10756         (gst_caps_structure_simplify), (gst_caps_do_simplify):
10757           fix simplifying and subtracting not working correctly with optional
10758           properties
10759           solve assorted problems that make it now simplify ebven more
10760         * docs/gst/tmpl/gstcaps.sgml:
10761         * gst/gstcaps.h:
10762           make gst_caps_do_simplify return a bool to indicate if it simplified
10763         * testsuite/caps/simplify.c: (main):
10764           add more checks. The tests is quite a bit useless right now because
10765           the core is heavily simplifying itself.
10766         * testsuite/caps/caps.h:
10767           fix caps to contain all optional properties
10768
10769 2004-04-22  Benjamin Otte  <otte@gnome.org>
10770
10771         * docs/gst/tmpl/gstcaps.sgml:
10772         * docs/gst/tmpl/gstfilesrc.sgml:
10773         * docs/gst/tmpl/gststructure.sgml:
10774         * docs/gst/tmpl/gstvalue.sgml:
10775           update for recent API changes
10776         * gst/gstcaps.c: (gst_caps_do_simplify):
10777           fix to stop trying with a freed structure
10778         * gst/gstpad.c: (gst_pad_link_fixate):
10779           simplify caps
10780         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
10781           remove C++ comment
10782         * gst/gstpad.h:
10783           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
10784         * gst/gststructure.c: (gst_structure_value_get_generic_type),
10785         (gst_structure_to_string):
10786           keep the correct type when using lists of ranges
10787         * gst/gstvalue.c: (gst_value_list_prepend_value),
10788         (gst_value_list_append_value):
10789           copy the value before adding to the list (d'oh)
10790         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
10791         (gst_value_subtract_int_range_int_range):
10792           handle overflows correctly
10793         * gst/gstvalue.c: (gst_value_subtract_from_list):
10794           fix memleak
10795         * testsuite/caps/caps.h:
10796           add a caps that caused segfaults
10797
10798 2004-04-22  Benjamin Otte  <otte@gnome.org>
10799
10800         * testsuite/refcounting/pad.c: (main):
10801           fix test
10802
10803 2004-04-22  Benjamin Otte  <otte@gnome.org>
10804
10805         * gst/gstcaps.c: (gst_caps_subtract):
10806           allow subtracting ANY and EMPTY from ANY caps
10807
10808 2004-04-22  Benjamin Otte  <otte@gnome.org>
10809
10810         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
10811         (gst_caps_union):
10812           only simplify in functions that create new caps. Simplifying in
10813           gst_caps_append breaks tests.
10814
10815 2004-04-22  Benjamin Otte  <otte@gnome.org>
10816
10817         * gst/gstcaps.c: (gst_caps_structure_simplify):
10818           unset GValue after use
10819         * gst/gstcaps.c: (gst_caps_append), 
10820         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
10821           use gst_caps_simplify (reduces registry size by 30%)
10822         * gst/gstpad.c: (gst_pad_template_new):
10823           don't allow NULL caps
10824
10825 2004-04-22  Benjamin Otte  <otte@gnome.org>
10826
10827         * docs/gst/gstreamer-sections.txt:
10828           add gst_caps_do_simplify
10829         * gst/gstcaps.c:
10830           add documentation for gst_caps_do_simplify
10831         * gst/gstvalue.h:
10832           fix typo in gst_value_register_subtract_func declaration for gst-doc
10833
10834 2004-04-22  Benjamin Otte  <otte@gnome.org>
10835
10836         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10837           fix bug when converting from empty string.
10838         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
10839         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
10840           use gst_caps_new_empty to allocate a new caps. Only that function
10841           allocates memory for caps now.
10842         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
10843         (gst_caps_remove_structure):
10844           add ability to remove one structure (but not to header yet)
10845         * gst/gstcaps.c: (gst_caps_compare_structures),
10846         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
10847         (gst_caps_structure_simplify), (gst_caps_do_simplify),
10848         * gst/gstcaps.h:
10849           add gst_caps_do_simplify that tries to simplify a caps in place.
10850           Deprecate old gst_caps_simplify function.
10851         * testsuite/caps/caps.h:
10852           add caps.h containing a common set of caps to test against.
10853         * testsuite/caps/sets.c: (check_caps), (main):
10854           use it.
10855         * testsuite/caps/.cvsignore:
10856         * testsuite/caps/Makefile.am:
10857         * testsuite/caps/simplify.c: (check_caps), (main):
10858           add test to check correctness and efficency of caps simplification.
10859
10860 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
10861
10862         reviewed by Benjamin Otte  <otte@gnome.org>
10863
10864         * gst/gstparse.c: (_gst_parse_escape):
10865           Free the GString used in _gst_parse_escape()
10866
10867 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10868
10869         * gst/gstpad.c: (gst_pad_link_negotiate):
10870           refuse to link if the link is not possible
10871         * configure.ac:
10872         * testsuite/Makefile.am:
10873         * testsuite/negotiation/.cvsignore:
10874         * testsuite/negotiation/Makefile.am:
10875         * testsuite/negotiation/pad_link.c: (main):
10876           add test that checks the above behaviour
10877
10878 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10879
10880         * docs/gst/gstreamer-sections.txt:
10881           add newly added API
10882
10883 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10884
10885         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10886         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
10887         (gst_filesrc_open_file), (gst_filesrc_close_file),
10888         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
10889         * gst/elements/gstfilesrc.h:
10890           add support for non-regular files (#140734)
10891
10892 2004-04-21  Benjamin Otte  <otte@gnome.org>
10893
10894         * gst/gstpad.c: (gst_pad_link_fixate):
10895           add sophisticated error checking code to see if fixation functions
10896           did their fixation right
10897
10898 2004-04-21  Benjamin Otte  <otte@gnome.org>
10899
10900         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
10901           check for ANY caps before appending/unioning
10902         * gst/gstcaps.c: (gst_caps_is_subset),
10903         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
10904         (gst_caps_structure_subtract), (gst_caps_subtract):
10905         * gst/gstcaps.h:
10906           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
10907           the API. deprecate gst_caps_is_equal_fixed
10908         * gst/gstpad.c: (gst_pad_try_set_caps):
10909         * gst/gstqueue.c: (gst_queue_link):
10910           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
10911         * gst/gststructure.c: (gst_structure_get_name_id):
10912         * gst/gststructure.h:
10913           add function gst_structure_get_name_id
10914         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
10915         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
10916         (gst_value_subtract_int_range_int_range),
10917         (gst_value_subtract_double_double_range),
10918         (gst_value_subtract_double_range_double),
10919         (gst_value_subtract_double_range_double_range),
10920         (gst_value_subtract_from_list), (gst_value_subtract_list),
10921         (gst_value_can_intersect), (gst_value_subtract),
10922         (gst_value_can_subtract), (gst_value_register_subtract_func),
10923         (_gst_value_initialize):
10924         * gst/gstvalue.h:
10925           add support for subtracting values from each other. Note that
10926           subtracting means subtracting as in set theory. Required for caps
10927           stuff above.
10928         * testsuite/caps/.cvsignore:
10929         * testsuite/caps/Makefile.am:
10930         * testsuite/caps/erathostenes.c: (erathostenes), (main):
10931         * testsuite/caps/sets.c: (check_caps), (main):
10932         * testsuite/caps/subtract.c: (check_caps), (main):
10933           add tests for subtraction and equality code.
10934
10935 2004-04-20  David Schleef  <ds@schleef.org>
10936
10937         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
10938         * gst/indexers/Makefile.am:
10939         * gst/schedulers/Makefile.am:
10940         * libs/gst/bytestream/Makefile.am:
10941         * libs/gst/control/Makefile.am:
10942         * libs/gst/getbits/Makefile.am:
10943
10944 2004-04-20  David Schleef  <ds@schleef.org>
10945
10946         * common/as-libtool.mak: Fine-tune DLL building.
10947         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10948         (like gst-plugins)
10949         * examples/plugins/Makefile.am: remove plugindir
10950         * gst/autoplug/Makefile.am: DLL building fixes
10951         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10952         Windows.
10953         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10954         * gst/indexers/Makefile.am: DLL building fixes
10955         * gst/schedulers/Makefile.am: DLL building fixes.
10956         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10957         * libs/gst/control/Makefile.am: same
10958         * libs/gst/getbits/Makefile.am: same
10959         * testsuite/Makefile.am: New dlopen directory
10960         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10961         when dlopened.
10962         * testsuite/dlopen/dlopen_gst.c: (main): same
10963         * testsuite/dlopen/loadgst.c: (do_test): same
10964
10965 2004-04-20  David Schleef  <ds@schleef.org>
10966
10967         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10968         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10969
10970 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10971
10972         * gst/gstelement.c: (gst_element_wait),
10973         (gst_element_set_time_delay), (gst_element_change_state):
10974           Use GST_TIME_*
10975
10976 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10977
10978         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10979         (gst_spider_identity_plug):
10980           improve debugging messages
10981         * gst/gstbin.c: (gst_bin_remove_func):
10982           make sure the state_change function is only called with simple state
10983           transitions
10984
10985 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10986
10987         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10988         (gst_fakesink_set_property), (gst_fakesink_chain):
10989         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10990         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10991         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10992         * gst/elements/gstidentity.c: (gst_identity_chain),
10993         (gst_identity_set_property):
10994         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10995         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10996           add warnings to _set_property for unknown arguments
10997           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10998
10999 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11000
11001         * Makefile.am:
11002         * docs/manuals.mak:
11003           add .po file download snippet
11004           fix a bug in the doc makefile
11005
11006 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11007
11008         * Makefile.am:
11009         * po/LINGUAS:
11010         * po/en_GB.po:
11011           Added en_GB translation (Gareth Owen)
11012
11013 2004-04-20  Johan Dahlin  <johan@gnome.org>
11014
11015         * gst/gstpad.c (_invent_event): Clean up
11016
11017 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11018
11019         * testsuite/caps/filtercaps.c: (main):
11020           fix test to test things correctly (caps are complicated)
11021
11022 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11023
11024         * testsuite/caps/Makefile.am:
11025         * testsuite/caps/filtercaps.c: (main):
11026           add test (that doesn't work right now, but should)
11027
11028 2004-04-19  David Schleef  <ds@schleef.org>
11029
11030         * configure.ac: Add test for allowing unaligned access.  Add define
11031         to put in gstconfig.h.
11032         * docs/gst/gstreamer-sections.txt: New symbols
11033         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
11034         * docs/gst/tmpl/gstfilesrc.sgml:
11035         * docs/gst/tmpl/gstparse.sgml:
11036         * docs/gst/tmpl/gsttypes.sgml:
11037         * docs/gst/tmpl/gstutils.sgml:
11038         * docs/gst/tmpl/gstvalue.sgml:
11039         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
11040         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
11041         on most !i386/!powerpc architectures.  From Daniel Gazard
11042         <daniel.gazard@free.fr>.  (bug #140156)
11043         * po/af.po: Check in changes made by gettext.
11044         * po/az.po:
11045         * po/fr.po:
11046         * po/nl.po:
11047         * po/sr.po:
11048         * po/sv.po:
11049
11050 2004-04-20  Benjamin Otte  <otte@gnome.org>
11051
11052         * gst/schedulers/entryscheduler.c: 
11053         (gst_entry_scheduler_yield):
11054           refuse to yield when decoupled elements insist on doing that.
11055           At least it's better than crashing
11056
11057 2004-04-19  David Schleef  <ds@schleef.org>
11058
11059         * docs/libs/Makefile.am: Change sinclude to include
11060         * docs/gst/Makefile.am: same
11061         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
11062
11063 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11064
11065         * po/LINGUAS:
11066         * po/uk.po:
11067           Added Ukrainian translation (Maxim V. Dziumanenko)
11068
11069 2004-04-19  Johan Dahlin  <johan@gnome.org>
11070
11071         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
11072         checking here, do it before calling the function.
11073         Clean up, use for loops instead of while loops while iterating
11074         over lists.
11075
11076         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
11077         in debug message.
11078         (gst_spider_create_and_plug): Improve debug message.
11079         General: Replace while loops which iterates over GLists with for
11080         loops. Which are much cleaner, improves readability, especially
11081         for gst_spider_identity_plug
11082
11083         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
11084         fixes bug 140477
11085
11086 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11087
11088         * po/LINGUAS:
11089         * po/tr.po:
11090           Added Turkish translation (Baris Cicek)
11091
11092 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11093
11094         * docs/faq/troubleshooting.xml:
11095           Mention gst-register in the FAQ (fixes 139045).
11096
11097 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11098
11099         * docs/gst/gstreamer-sections.txt:
11100
11101 2004-04-17  Benjamin Otte  <otte@gnome.org>
11102
11103         * gst/gstelement.c: (gst_element_dispose):
11104           simplify
11105         * gst/gstpad.c: (gst_pad_call_chain_function):
11106           don't create loads of events due to bad macro usage
11107
11108 2004-04-16  David Schleef  <ds@schleef.org>
11109
11110         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
11111         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
11112         * gst/gstvalue.c: (gst_value_serialize_buffer),
11113         (gst_value_deserialize_buffer), (gst_type_is_fixed),
11114         (_gst_value_initialize): Create a new function gst_type_is_fixed()
11115         to indicate types that are fixed wrt caps or not.  Switching to
11116         this function fixes (bug #140298).
11117         * gst/gstvalue.h:
11118
11119 2004-04-16  David Schleef  <ds@schleef.org>
11120
11121         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
11122         for GST_UNALIGNED_ACESS, since we essentially know which archs
11123         are ok.
11124
11125 2004-04-17  Benjamin Otte  <otte@gnome.org>
11126
11127         * docs/gst/Makefile.am:
11128           ignore gst/parse directory when building docs (fixes #140205)
11129
11130 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11131
11132         * testsuite/refcounting/mem.c: (vmsize):
11133           do error checking
11134
11135 2004-04-16  Johan Dahlin  <johan@gnome.org>
11136
11137         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
11138         and gst_pad_call_get_function.
11139
11140 2004-04-15  David Schleef  <ds@schleef.org>
11141
11142         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
11143         checks if we can access unaligned memory.
11144         * configure.ac: Use it.
11145
11146 2004-04-16  Benjamin Otte  <otte@gnome.org>
11147
11148         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
11149         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
11150         * gst/elements/gstfilesrc.h:
11151           s/seek_happened/need_discont/ and require discont before sending any
11152           data
11153
11154 2004-04-15  David Schleef  <ds@schleef.org>
11155
11156         * gst/gstvalue.c: (gst_value_serialize_buffer),
11157         (gst_value_deserialize_buffer), (_gst_value_initialize):
11158         Register these types as fundamental types. (bug #140015)
11159
11160 2004-04-16  Benjamin Otte  <otte@gnome.org>
11161
11162         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
11163         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
11164         (gst_pad_pull):
11165           implement enforcing discont events before buffers are passed. This
11166           allows state changes of only some elements and later correctly going
11167           on where they left off (or in short: you can now set audio sinks to
11168           NULL to release the device when the pipeline is paused)
11169         * gst/gstpad.c: (gst_pad_call_chain_function),
11170         (gst_pad_call_get_function):
11171         * gst/gstpad.h:
11172           add gst_pad_call_chain_function and gst_pad_call_get_function for
11173           scheduler interaction. They are required because of the changes
11174           above.
11175         * gst/schedulers/entryscheduler.c: (get_buffer),
11176         (gst_entry_scheduler_chain_wrapper),
11177         (gst_entry_scheduler_get_wrapper),
11178         (gst_entry_scheduler_state_transition),
11179         (gst_entry_scheduler_pad_link):
11180         * gst/schedulers/gstbasicscheduler.c:
11181         (gst_basic_scheduler_chain_wrapper),
11182         (gst_basic_scheduler_src_wrapper),
11183         (gst_basic_scheduler_chainhandler_proxy),
11184         (gst_basic_scheduler_gethandler_proxy),
11185         (gst_basic_scheduler_cothreaded_chain),
11186         (gst_basic_scheduler_chain_elements):
11187         * gst/schedulers/gstoptimalscheduler.c:
11188         (get_group_schedule_function), (pad_clear_queued),
11189         (gst_opt_scheduler_pad_link):
11190           use the new functions instead of calling get/chain-functions
11191           directly.
11192
11193 2004-04-15  David Schleef  <ds@schleef.org>
11194
11195         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
11196         * docs/gst/tmpl/gstinfo.sgml: same
11197         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
11198         gtk-doc put here.
11199         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
11200         * examples/queue/queue.c: (main):  We iterate pipelines, not
11201         bins.  (bug #139996)
11202
11203 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11204
11205         * docs/pwg/advanced-types.xml:
11206           Add MS RLE support. Also document Qt RLE although I have no sample
11207           files for that yet. And document an extra property for ADPCM.
11208
11209 2004-04-15  David Schleef  <ds@schleef.org>
11210
11211         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
11212         (_gst_plugin_fault_handler_setup):  Disable more stuff on
11213         Windows.
11214
11215 2004-04-15  David Schleef  <ds@schleef.org>
11216
11217         * gst/gstinfo.c: (_gst_debug_init): Change some internal
11218         symbol names to not conflict with new gstinfo.h symbols.
11219         * gst/gstinfo.h: Add inline functions for all those crazy
11220         compilers that don't know how to handle variadic macros (MSVC).
11221
11222 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11223
11224         * configure.ac: bump nano to 1
11225
11226 === release 0.8.1 ===
11227
11228 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11229
11230         * NEWS:
11231         * RELEASE:
11232         * configure.ac:
11233           releasing 0.8.1, "Snow Brigade"
11234
11235 2004-04-14  David Schleef  <ds@schleef.org>
11236
11237         * testsuite/Makefile.am: define tests_ignore
11238         * testsuite/Rules: Added new tests_ignore, which get compiled,
11239         but not run (generally because they're inconsistent or have
11240         heisenbugs).  Now we can ensure all the .c files compile in
11241         testsuite/.
11242         * testsuite/bins/Makefile.am: define tests_ignore
11243         * testsuite/bytestream/Makefile.am:
11244         * testsuite/caps/Makefile.am:
11245         * testsuite/clock/Makefile.am:
11246         * testsuite/debug/Makefile.am:
11247         * testsuite/debug/global.c: (gst_debug_log_one),
11248         (gst_debug_log_two): Fix compilation problem.
11249         * testsuite/dynparams/Makefile.am:
11250         * testsuite/elements/Makefile.am:
11251         * testsuite/ghostpads/Makefile.am:
11252         * testsuite/indexers/Makefile.am:
11253         * testsuite/parse/Makefile.am:
11254         * testsuite/plugin/Makefile.am:
11255         * testsuite/refcounting/Makefile.am:
11256         * testsuite/refcounting/element_pad.c: (main): Don't return leak
11257         results, because it's not calculated correctly.
11258         * testsuite/refcounting/pad.c: (main): same
11259         * testsuite/states/Makefile.am:
11260         * testsuite/tags/Makefile.am:
11261         * testsuite/threads/Makefile.am:
11262
11263 2004-04-14  David Schleef  <ds@schleef.org>
11264
11265         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
11266         generating bad code around the cpu detection asm code.
11267
11268 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11269
11270         * tools/gst-inspect.c: (print_element_info):
11271           print numeric version of rank as well, since we added some - 1
11272           rank values to elements
11273
11274 2004-04-13  David Schleef  <ds@schleef.org>
11275
11276         * configure.ac:  Disable various code when compiling for MinGW.
11277         * gst/elements/Makefile.am:
11278         * gst/elements/gstelements.c:
11279         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11280         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
11281         * gst/registries/gstxmlregistry.c: (make_dir):
11282
11283 2004-04-13  David Schleef  <ds@schleef.org>
11284
11285         * gst/Makefile.am:
11286         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
11287         assembly.
11288         * gst/gstcpuid_i386.s: remove
11289
11290 2004-04-13  David Schleef  <ds@schleef.org>
11291
11292         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
11293         seems to think it needs to be done.
11294         * docs/gst/tmpl/gstfakesink.sgml:
11295         * docs/gst/tmpl/gstfakesrc.sgml:
11296         * docs/gst/tmpl/gstfdsink.sgml:
11297         * docs/gst/tmpl/gstfdsrc.sgml:
11298         * docs/gst/tmpl/gstfilesink.sgml:
11299         * docs/gst/tmpl/gstfilesrc.sgml:
11300         * docs/gst/tmpl/gstidentity.sgml:
11301         * docs/gst/tmpl/gstmd5sink.sgml:
11302         * docs/gst/tmpl/gstmultifilesrc.sgml:
11303         * docs/gst/tmpl/gstpipefilter.sgml:
11304         * docs/gst/tmpl/gstshaper.sgml:
11305         * docs/gst/tmpl/gstspider.sgml:
11306         * docs/gst/tmpl/gstspideridentity.sgml:
11307         * docs/gst/tmpl/gststatistics.sgml:
11308         * docs/gst/tmpl/gsttee.sgml:
11309         * docs/gst/tmpl/gsttypefind.sgml:
11310         * docs/gst/tmpl/gstutils.sgml:
11311
11312 2004-04-13  David Schleef  <ds@schleef.org>
11313
11314         * configure.ac: Changes to remove POSIXisms (mmap in this case)
11315         and to build DLLs on Windows.
11316         * gst/Makefile.am:
11317         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11318         (gst_filesrc_open_file):
11319         * gst/schedulers/Makefile.am:
11320
11321 2004-04-13  David Schleef  <ds@schleef.org>
11322
11323         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
11324         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
11325         fixating lists.
11326
11327 2004-04-12  David Schleef  <ds@schleef.org>
11328
11329         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
11330         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
11331         to using it.
11332         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
11333         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
11334         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
11335         * gst/gststructure.c: (gst_structure_set_valist),
11336         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
11337         support for buffers.
11338         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
11339         intended to be const.
11340         * gst/gsttag.h: same
11341         * gst/gstvalue.c: (gst_value_serialize_buffer),
11342         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
11343         to (de)serialize buffers.
11344         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
11345         * testsuite/caps/string-conversions.c: (main):
11346         * testsuite/caps/value_serialize.c: add new test
11347
11348 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11349
11350         * docs/pwg/advanced-types.xml:
11351           Document MS video 1 (video/x-msvideocodec) mimetype/format.
11352
11353 2004-04-11  Benjamin Otte  <otte@gnome.org>
11354
11355         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
11356           rename categories to basic_*
11357         * gst/schedulers/gstbasicscheduler.c: 
11358         (gst_basic_scheduler_chain_wrapper),
11359         (gst_basic_scheduler_chainhandler_proxy),
11360         (gst_basic_scheduler_gethandler_proxy),
11361         (gst_basic_scheduler_eventhandler_proxy):
11362           debugging category fixes - put common stuff in log category
11363         * gst/schedulers/gstbasicscheduler.c: 
11364         (gst_basic_scheduler_chain_elements):
11365           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
11366           active and linking two active chains
11367
11368 2004-04-10  Benjamin Otte  <otte@gnome.org>
11369
11370         * docs/pwg/intro-preface.xml:
11371           fix dead links and remove reference to Wiki
11372
11373 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11374
11375         * gst/schedulers/gstbasicscheduler.c:
11376           make sure we can switch back to the main function if we're still in
11377           the main function (supposed to fix #139617)
11378         * gst/schedulers/gthread-cothreads.h:
11379           don't throw an error when switching to the same cothread
11380
11381 2004-04-09  Benjamin Otte  <otte@gnome.org>
11382
11383         * gst/gstbin.c: (gst_bin_get_type):
11384         * gst/gstclock.c: (gst_clock_get_type):
11385         * gst/gstindex.c: (gst_index_get_type):
11386         * gst/gstobject.c: (gst_object_get_type),
11387         (gst_signal_object_get_type):
11388         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
11389         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
11390         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
11391         * gst/gstqueue.c: (gst_queue_get_type):
11392         * gst/gstregistry.c: (gst_registry_get_type):
11393         * gst/gstsystemclock.c: (gst_system_clock_get_type):
11394         * gst/gstthread.c: (gst_thread_get_type):
11395           don't use memchunks for these objects, use malloc instead
11396
11397 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11398
11399         * docs/gst/.cvsignore:
11400         * docs/gst/Makefile.am:
11401         * docs/gst/gstreamer-sections.txt:
11402         * docs/gst/tmpl/gstaggregator.sgml:
11403         * docs/gst/tmpl/gstbuffer.sgml:
11404         * docs/gst/tmpl/gstclock.sgml:
11405         * docs/gst/tmpl/gstelement.sgml:
11406         * docs/gst/tmpl/gstfakesink.sgml:
11407         * docs/gst/tmpl/gstfakesrc.sgml:
11408         * docs/gst/tmpl/gstfdsink.sgml:
11409         * docs/gst/tmpl/gstfdsrc.sgml:
11410         * docs/gst/tmpl/gstfilesink.sgml:
11411         * docs/gst/tmpl/gstfilesrc.sgml:
11412         * docs/gst/tmpl/gstidentity.sgml:
11413         * docs/gst/tmpl/gstindex.sgml:
11414         * docs/gst/tmpl/gstinfo.sgml:
11415         * docs/gst/tmpl/gstmd5sink.sgml:
11416         * docs/gst/tmpl/gstmultifilesrc.sgml:
11417         * docs/gst/tmpl/gstpad.sgml:
11418         * docs/gst/tmpl/gstpipefilter.sgml:
11419         * docs/gst/tmpl/gstpipeline.sgml:
11420         * docs/gst/tmpl/gstpluginfeature.sgml:
11421         * docs/gst/tmpl/gstqueue.sgml:
11422         * docs/gst/tmpl/gstregistry.sgml:
11423         * docs/gst/tmpl/gstscheduler.sgml:
11424         * docs/gst/tmpl/gstshaper.sgml:
11425         * docs/gst/tmpl/gstspider.sgml:
11426         * docs/gst/tmpl/gstspideridentity.sgml:
11427         * docs/gst/tmpl/gststatistics.sgml:
11428         * docs/gst/tmpl/gstsystemclock.sgml:
11429         * docs/gst/tmpl/gsttee.sgml:
11430         * docs/gst/tmpl/gstthread.sgml:
11431         * docs/gst/tmpl/gsttypefind.sgml:
11432         * docs/gst/tmpl/gstutils.sgml:
11433           further doc build fixes
11434
11435 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11436
11437         * docs/gst/Makefile.am:
11438           make docs exit on scanning problems
11439           fix nonsrcdir build issues
11440         * docs/gst/gstreamer-sections.txt:
11441           adding stuff from -unused
11442         * gst/gstqueue.h:
11443           create GstQueueSize
11444         * gst/schedulers/cothreads_compat.h:
11445           fix cothread warnings
11446
11447 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11448
11449         * docs/gst/gstreamer-sections.txt:
11450           remove defines deprecated by Benjamin
11451
11452 2004-04-07  Benjamin Otte  <otte@gnome.org>
11453
11454         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11455           when the buffer is complete, don't check if other buffers are needed
11456         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
11457           check that the offset is >0 so we don't try to read before the
11458           beginning of the file
11459         * gst/gstpad.c: (gst_pad_set_pad_template):
11460           sink the template, so we don't end up with 130k pad templates
11461
11462 2004-04-06  Benjamin Otte  <otte@gnome.org>
11463
11464         * gst/autoplug/gstspider.c: (gst_spider_link_add):
11465           don't ref the element, adding already reffed it. And we didn't unref
11466           it later anyway... (huge memleak when you used many spider elements)
11467         * gst/gstelement.c: (gst_element_base_class_finalize):
11468         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
11469         (gst_element_register):
11470         * gst/gsturi.c: (gst_element_make_from_uri):
11471           use gst_object_(un)ref instead of g_object(un)ref
11472
11473 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11474
11475         * gst/gstbuffer.h:
11476           remove macro that wouldn't work anymore because struct member has
11477           been removed.
11478         * gst/schedulers/entryscheduler.c: (schedule_forward):
11479           fix segfault for unconnected pads
11480         
11481 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11482
11483         reviewed by David Schleef <ds@schleef.org>
11484
11485         * gst/gstinfo.h:
11486           *_FORMAT modifiers should require putting a % in front of them for
11487           consistency reasons.
11488
11489 2004-04-05  Colin Walters  <walters@redhat.com>
11490
11491         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
11492         space.
11493
11494 2004-04-05  Benjamin Otte  <otte@gnome.org>
11495
11496         * configure.ac:
11497         * gst/Makefile.am:
11498         * gst/gst_private.h:
11499         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
11500           add support for detecting if GStreamer runs inside valgrind.
11501           requires valgrind (d'oh) and --enable-debug for correct cdetection.
11502           print a big message in valgrind that GStreamer has detected it's
11503           running inside and might now use different code.
11504         * gst/gstmemchunk.c: (populate), (free_area),
11505         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
11506         (gst_mem_chunk_free):
11507           flag memchunks for valgrind, so it can detect leaking of chunks.
11508           This allows detecting leaks of GstBuffer and GstEvent correctly
11509           inside valgrind.
11510
11511 2004-04-05  David Schleef  <ds@schleef.org>
11512
11513         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
11514           jensgr@gmx.net (Jens Granseuer)
11515
11516 2004-04-05  David Schleef  <ds@schleef.org>
11517
11518         * gst/gstbuffer.c: (_gst_buffer_sub_free),
11519         (gst_buffer_default_free), (gst_buffer_default_copy),
11520         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
11521         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
11522         structures in one place.
11523
11524 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11525
11526         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
11527           (GST_TIME_FORMAT, GST_TIME_ARGS)
11528
11529 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11530
11531         * testsuite/elements/Makefile.am:
11532           disable test until it stops breaking make distcheck
11533
11534 2004-04-05  Johan Dahlin  <johan@gnome.org>
11535
11536         * po/sv.po: Updated translation
11537
11538 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11539
11540         * gst/gstplugin.c: (gst_plugin_load_file):
11541           fix segfault for when original plugin was loaded statically
11542
11543 2004-04-05  Benjamin Otte  <otte@gnome.org>
11544
11545         * testsuite/debug/category.c: (main):
11546         * testsuite/debug/commandline.c: (main):
11547         * testsuite/debug/output.c: (main):
11548           fix tests to work again with debugging enabled
11549
11550 2004-04-05  Benjamin Otte  <otte@gnome.org>
11551
11552         * gst/schedulers/gstbasicscheduler.c:
11553         (gst_basic_scheduler_pad_link):
11554           fix to work with recent scheduling changes
11555
11556 2004-04-05  Benjamin Otte  <otte@gnome.org>
11557
11558         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
11559         prepareChangeLog doesn't work when cvs indents):
11560           don't throw an error when no element can be scheduled, there's too
11561           many weird reasons why it doesn't work. Return STOPPED instead.
11562           decoupled elemts' schedulability doesn't depend on bufpens.
11563
11564 2004-04-04  Benjamin Otte  <otte@gnome.org>
11565
11566         * gst/schedulers/gstbasicscheduler.c:
11567         (gst_basic_scheduler_pad_select):
11568           fix uninitialized variable warnings
11569
11570 2004-04-04  Benjamin Otte  <otte@gnome.org>
11571
11572         * gst/gstpad.c: (gst_pad_collect_valist):
11573           fix uninitialized variable warning
11574         * gst/schedulers/entryscheduler.c: (schedule_forward):
11575           fix shadowed variable
11576
11577 2004-04-04  Benjamin Otte  <otte@gnome.org>
11578
11579         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
11580         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
11581         (gst_pad_select):
11582         * gst/gstpad.h:
11583         * gst/gstscheduler.c: (gst_scheduler_pad_select),
11584         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
11585         * gst/gstscheduler.h:
11586           implement gst_pad_collect as replacement for gst_pad_select.
11587           deprecate gst_pad_select and gst_scheduler_(un)lock_element
11588           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
11589           new pad_select, lock and unlock calls.
11590         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
11591         * gst/cothreads.h:
11592         * gst/schedulers/cothreads_compat.h:
11593         * gst/schedulers/gthread-cothreads.h:
11594           remove unused cothread_lock and cothread_unlock calls
11595         * gst/schedulers/entryscheduler.c:
11596         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
11597         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
11598         (gst_entry_scheduler_pad_select):
11599           update to new API
11600         * gst/schedulers/gstbasicscheduler.c:
11601         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
11602         (gst_basic_scheduler_pad_select):
11603           remove useless lock and unlock calls, update pad_select to new API
11604           (untested)
11605         * gst/schedulers/gstoptimalscheduler.c:
11606         (gst_opt_scheduler_class_init):
11607           remove useless select, lock and unlock function calls
11608         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
11609           use gst_pad_collect instead of gst_pad_select
11610
11611 2004-04-04  Benjamin Otte  <otte@gnome.org>
11612
11613         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
11614         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
11615         (schedule_next_element), (print_entry):
11616           add can_schedule_pad to handle element states.
11617           add schedule_forward to select the correct entry to schedule next
11618
11619 2004-04-03  Benjamin Otte  <otte@gnome.org>
11620
11621         * gst/schedulers/entryscheduler.c: 
11622           remove unused variable, fix error inside Rb, fix compile warning in
11623           unreachable code
11624
11625 2004-04-03  Benjamin Otte  <otte@gnome.org>
11626
11627         * gst/schedulers/entryscheduler.c:
11628           completely revamp the inner workings, so it's a lot easier to
11629           understand and extend
11630
11631 2004-04-03  Andy Wingo  <wingo@pobox.com>
11632
11633         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
11634         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
11635         This allows better introspection of pipeline topology.
11636         (add_to_chain): Don't do trickery to put loop elements first;
11637         rather, queue a chain sort by marking the chain as dirty.
11638         (remove_from_chain): Mark the chain dirty.
11639         (sort_chain): New function. Sorts the group list so that terminal
11640         sinks are first. This means elements on the sink side will be
11641         preferentially sscheduled before elements on the src side of the
11642         pipeline.
11643         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
11644         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
11645         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
11646         (group_inc_link): Change argument and variable names to match the
11647         new link structure member names (src and sink).
11648         (group_dec_link): Add some description
11649
11650 2004-04-03  Benjamin Otte  <otte@gnome.org>
11651
11652         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11653         * gst/gstinfo.h:
11654         * testsuite/debug/category.c: (main):
11655         * testsuite/debug/commandline.c: (main):
11656         * testsuite/debug/output.c: (main):
11657         * testsuite/debug/printf_extension.c: (main):
11658           fix to successfully build and test with --disable-gst-debug
11659           configure switch (fixes #138705)
11660
11661 2004-04-03  Benjamin Otte  <otte@gnome.org>
11662
11663         * docs/pwg/building-boiler.xml:
11664           add cvs login line and s/anonymous/anoncvs/
11665
11666 2004-04-03  Tim-Phillip M??ller  <t.i.m@zen.co.uk>
11667
11668         reviewed by Benjamin Otte  <otte@gnome.org>
11669
11670         * gst/gststructure.c: (gst_structure_free):
11671           memleak fix: free fields array (partial fix for #134839)
11672
11673 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11674
11675         * docs/random/ds/0.9-suggested-changes:
11676           Add a note to change handoff use in fakesrc to be usable in
11677           a more generic way (fakesrc should be renamed to appsrc or so).
11678         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
11679           Change signal type to scope, so we can fill the buffer in the
11680           handoff handler (that's the whole use of this signal...).
11681
11682 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11683
11684         * docs/pwg/other-ntoone.xml:
11685           Document muxers and n-to-1 elements.
11686
11687 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
11688
11689         * gst/registries/gstxmlregistry.c
11690         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
11691         determine if a file is a G_MODULE. The old one discards paths
11692         containing "so" somewhere in the middle. My home directory is
11693         called "soto". Go figure...
11694
11695 2004-03-31  David Schleef  <ds@schleef.org>
11696
11697         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
11698         to eventually deprecate gst_buffer_merge().  (bug: #136408)
11699         * gst/gstbuffer.h:
11700
11701 2004-03-31  David Schleef  <ds@schleef.org>
11702
11703         * gst/gstvalue.c: (gst_value_union_int_int_range),
11704         (gst_value_union_int_range_int_range), (gst_value_can_union),
11705         (gst_value_union), (_gst_value_initialize):  Add some union
11706         implementations.  We didn't have any previously.
11707         * testsuite/caps/Makefile.am:
11708         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
11709         (gst_audioscale_getcaps), (test_caps), (main): A little test
11710         that is the same as the caps manipulation in audioscale.
11711
11712 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11713
11714         * docs/faq/general.xml:
11715           add entry about "does gst support format X?"
11716
11717 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11718
11719         * gst/gstthread.c:
11720           fix docs
11721         * gst/gstutils.h:
11722           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
11723
11724 2004-03-30  Benjamin Otte  <otte@gnome.org>
11725
11726         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11727           set the offset of the buffer to the requested offset
11728         * gst/elements/gsttypefind.c: (stop_typefinding):
11729           revert patch 1.18 (which I unfortunately don't know the reason for).
11730           This is needed to allow downstream elements to seek. Otherwise
11731           typefind might overwrite a previous seek by downstream elements.
11732           This lead to errors with id3tag and typefind on some mp3s.
11733         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
11734         (gst_entry_scheduler_iterate):
11735           be more verbose when debugging
11736
11737 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11738
11739         * gst/gstcaps.c: (gst_caps_from_string_inplace):
11740           make sure we don't get NULL strings
11741
11742 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11743
11744         * gst/gstcaps.c:
11745         * gst/gstelement.c:
11746         * gst/gstelementfactory.c: (gst_element_factory_get_type):
11747         * gst/gstindex.c: (gst_index_resolver_get_type),
11748         (gst_index_get_type), (gst_index_factory_get_type):
11749         * gst/gstinfo.c:
11750         * gst/gstpad.c:
11751         * gst/gstplugin.c:
11752         * gst/gsturi.c: (gst_uri_handler_get_type):
11753         * gst/gstvalue.c:
11754           first batch of documentation fixes
11755
11756 2004-03-29  David Schleef  <ds@schleef.org>
11757
11758         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
11759         * docs/gst/gstreamer-docs.sgml:  More hacking
11760         * docs/gst/gstreamer-sections.txt:
11761         * docs/gst/tmpl/cothreads_compat.sgml:
11762         * docs/gst/tmpl/gstcaps.sgml:
11763         * docs/gst/tmpl/gstclock.sgml:
11764         * docs/gst/tmpl/gstelement.sgml:
11765         * docs/gst/tmpl/gstevent.sgml:
11766         * docs/gst/tmpl/gstpad.sgml:
11767         * docs/gst/tmpl/gstutils.sgml:
11768         * docs/gst/tmpl/gstxml.sgml:
11769         * docs/gst/tmpl/gthread-cothreads.sgml:
11770         * docs/random/ds/0.9-suggested-changes:
11771         * gst/elements/gstfakesink.h: doc fixes
11772         * gst/elements/gstfakesrc.h: doc fixes
11773         * gst/gstcaps.c: doc fixes
11774         * gst/gstcaps.h: doc fixes
11775         * gst/gstelement.c: doc fixes
11776         * gst/gstelement.h: doc fixes
11777         * gst/gstindex.c: doc fixes
11778         * gst/gstinfo.c: doc fixes
11779         * gst/gstpad.c: doc fixes
11780         * gst/gstpad.h: doc fixes
11781         * gst/gstplugin.c: doc fixes
11782         * gst/gsttypefind.h: doc fixes
11783         * gst/gsturi.c: doc fixes
11784         * gst/gstvalue.c: doc fixes
11785
11786 2004-03-29  Colin Walters  <walters@redhat.com>
11787
11788         * gst/registries/gstxmlregistry.c (get_time)
11789         (plugin_times_older_than_recurse):
11790         Use the result of stat to determine whether a path is a file,
11791         so we don't attempt to opendir() files.
11792
11793 2004-03-29  Benjamin Otte  <otte@gnome.org>
11794
11795         * gst/gstpad.c: (gst_pad_set_explicit_caps):
11796           print caps in debugging output when setting caps failed
11797         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
11798         (schedule_next_element), (get_buffer), (run_chainhandler),
11799         (element_may_start), (gst_entry_scheduler_chain_handler),
11800         (gst_entry_scheduler_get_handler),
11801         (gst_entry_scheduler_state_transition),
11802         (gst_entry_scheduler_pad_link):
11803           make this scheduler a testcase for mandatory
11804           discont-before-first-buffer which is needed if we want to allow apps
11805           to release the sound device.
11806           add SCHED_ASSERT macro to print scheduler state before an assertion
11807           triggers.
11808
11809 2004-03-29  Benjamin Otte  <otte@gnome.org>
11810
11811         * COPYING:
11812           replace by LGPL (former COPYING.LIB). The core is completely
11813           licensed LGPL.
11814         * COPYING.LIB:
11815           remove
11816
11817 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11818
11819         * po/af.po:
11820         * po/sv.po:
11821           updated Afrikaans and Swedish
11822
11823 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11824
11825         * po/LINGUAS:
11826         * po/az.po:
11827           adding Azerbaijani (M??tin ??mirov)
11828
11829 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
11830
11831         * gst/gstelement.h: 
11832         * gst/gstelement.c (gst_element_set_time_delay): New function for
11833         setting element time taking into account a hardware buffering
11834         delay.
11835         (gst_element_set_time): Now just an invocation of
11836         gst_element_set_time_delay.
11837         * gst/gstclock.h: 
11838         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
11839         allowing to set event times in the future.
11840         (gst_clock_get_event_time): Now just an invocation of
11841         gst_clock_get_event_time_delay.
11842
11843 2004-03-28  Benjamin Otte  <otte@gnome.org>
11844
11845         * gst/gstbin.c: (gst_bin_set_element_sched),
11846         (gst_bin_unset_element_sched):
11847           don't add decoupled elements to schedulers - otherwise it's
11848           impossible to control if a link to a decoupled element was already
11849           removed from a scheduler or not.
11850         * gst/schedulers/cothreads_compat.h:
11851         * gst/schedulers/gthread-cothreads.h:
11852           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
11853           is no "unused" warning.
11854         * gst/schedulers/Makefile.am:
11855         * gst/schedulers/entryscheduler.c:
11856           add new scheduler, based on ideas from talking to David and Martin.
11857           It's supposed to be small and correct. Currently it's also slow (but
11858           it's not noticable)
11859         * examples/retag/retag.c: (main):
11860         * testsuite/bytestream/test1.c: (main):
11861           fix missing NULLs at end of variadic functions
11862         * testsuite/elements/.cvsignore:
11863           update
11864
11865 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
11866
11867         * gst/gstevent.h:
11868         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
11869
11870 2004-03-25  David Schleef  <ds@schleef.org>
11871
11872         * docs/gst/gstreamer-sections.txt:  More doc hacking.
11873         * docs/gst/tmpl/gstaggregator.sgml:
11874         * docs/gst/tmpl/gstautoplugfactory.sgml:
11875         * docs/gst/tmpl/gstbin.sgml:
11876         * docs/gst/tmpl/gstbuffer.sgml:
11877         * docs/gst/tmpl/gstbufferstore.sgml:
11878         * docs/gst/tmpl/gstfakesink.sgml:
11879         * docs/gst/tmpl/gstfakesrc.sgml:
11880         * docs/gst/tmpl/gstmd5sink.sgml:
11881         * docs/gst/tmpl/gstreamer-unused.sgml:
11882         * docs/gst/tmpl/gstsearchfuncs.sgml:
11883         * docs/gst/tmpl/gstshaper.sgml:
11884         * docs/gst/tmpl/gstspider.sgml:
11885         * docs/gst/tmpl/gsttee.sgml:
11886         * docs/gst/tmpl/gstutils.sgml:
11887         * docs/gst/tmpl/gstvalue.sgml:
11888         * docs/gst/tmpl/gstxml.sgml:
11889         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
11890         and we don't support it.
11891         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
11892         (gst_use_threads), (gst_has_threads): same
11893         * gst/gstthreaddummy.c: same
11894         * gst/autoplug/gstspider.c: Make gst_spider_details static.
11895         * gst/autoplug/gstspider.h: same
11896         * gst/elements/gstaggregator.h: Remove bogus function from header
11897         * gst/elements/gstfakesink.h: same
11898         * gst/elements/gstfakesrc.h: same
11899         * gst/elements/gstmd5sink.h: same
11900         * gst/elements/gstshaper.h: same
11901         * gst/elements/gsttee.h: same
11902         * gst/gstbin.c: doc fixes
11903         * gst/gstbin.h: Remove unused definition.
11904         * gst/gstbuffer.c: doc fixes
11905         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
11906         * gst/gstfilter.c: doc fixes
11907         * gst/gsttag.c: doc fixes
11908         * gst/gstvalue.c: doc fixes
11909
11910 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11911
11912         * docs/pwg/advanced-types.xml:
11913           Document typefinding.
11914         * docs/pwg/other-oneton.xml:
11915           Document one-to-n elements, demuxers and parsers.
11916
11917 2004-03-25  Tim-Philipp M??ller <t.i.m@zen.co.uk>
11918
11919         reviewed by: David Schleef  <ds@schleef.org>
11920
11921         * configure.ac: Check bison version (bug #127838)
11922
11923 2004-03-25  David Schleef  <ds@schleef.org>
11924
11925         * docs/gst/gstreamer-docs.sgml: More fine tuning.
11926         * docs/gst/gstreamer-sections.txt:
11927         * docs/gst/tmpl/gstautoplug.sgml:
11928         * docs/gst/tmpl/gststaticautoplug.sgml:
11929         * docs/gst/tmpl/gststaticautoplugrender.sgml:
11930         * docs/gst/tmpl/gstutils.sgml:
11931         * docs/gst/tmpl/gstxml.sgml:
11932
11933 2004-03-24  David Schleef  <ds@schleef.org>
11934
11935         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
11936         manual being such complete crap, that I decided to do major
11937         hacking of it.  This checkin replaces any fine tuning that
11938         may have been done previously, with the benefit of actually
11939         being complete for much of the API that was changed since
11940         0.6.  Further fine tuning will occur shortly.  (bug #134721)
11941         * docs/gst/gstreamer-sections.txt:
11942         * docs/gst/tmpl/GstBin.sgml:
11943         * docs/gst/tmpl/GstBuffer.sgml:
11944         * docs/gst/tmpl/GstCaps.sgml:
11945         * docs/gst/tmpl/GstClock.sgml:
11946         * docs/gst/tmpl/GstCompat.sgml:
11947         * docs/gst/tmpl/GstData.sgml:
11948         * docs/gst/tmpl/GstElement.sgml:
11949         * docs/gst/tmpl/GstEvent.sgml:
11950         * docs/gst/tmpl/GstIndex.sgml:
11951         * docs/gst/tmpl/GstStructure.sgml:
11952         * docs/gst/tmpl/GstTag.sgml:
11953         * docs/gst/tmpl/cothreads.sgml:
11954         * docs/gst/tmpl/cothreads_compat.sgml:
11955         * docs/gst/tmpl/gettext.sgml:
11956         * docs/gst/tmpl/grammar.tab.sgml:
11957         * docs/gst/tmpl/gst-i18n-app.sgml:
11958         * docs/gst/tmpl/gst-i18n-lib.sgml:
11959         * docs/gst/tmpl/gst.sgml:
11960         * docs/gst/tmpl/gst_private.sgml:
11961         * docs/gst/tmpl/gstaggregator.sgml:
11962         * docs/gst/tmpl/gstarch.sgml:
11963         * docs/gst/tmpl/gstatomic.sgml:
11964         * docs/gst/tmpl/gstatomic_impl.sgml:
11965         * docs/gst/tmpl/gstbin.sgml:
11966         * docs/gst/tmpl/gstbuffer.sgml:
11967         * docs/gst/tmpl/gstbufferstore.sgml:
11968         * docs/gst/tmpl/gstcaps.sgml:
11969         * docs/gst/tmpl/gstclock.sgml:
11970         * docs/gst/tmpl/gstcompat.sgml:
11971         * docs/gst/tmpl/gstconfig.sgml:
11972         * docs/gst/tmpl/gstcpu.sgml:
11973         * docs/gst/tmpl/gstdata.sgml:
11974         * docs/gst/tmpl/gstdata_private.sgml:
11975         * docs/gst/tmpl/gstelement.sgml:
11976         * docs/gst/tmpl/gstenumtypes.sgml:
11977         * docs/gst/tmpl/gsterror.sgml:
11978         * docs/gst/tmpl/gstevent.sgml:
11979         * docs/gst/tmpl/gstfakesink.sgml:
11980         * docs/gst/tmpl/gstfakesrc.sgml:
11981         * docs/gst/tmpl/gstfilesink.sgml:
11982         * docs/gst/tmpl/gstfilter.sgml:
11983         * docs/gst/tmpl/gstindex.sgml:
11984         * docs/gst/tmpl/gstinfo.sgml:
11985         * docs/gst/tmpl/gstinterface.sgml:
11986         * docs/gst/tmpl/gstlog.sgml:
11987         * docs/gst/tmpl/gstmacros.sgml:
11988         * docs/gst/tmpl/gstmarshal.sgml:
11989         * docs/gst/tmpl/gstmd5sink.sgml:
11990         * docs/gst/tmpl/gstmultifilesrc.sgml:
11991         * docs/gst/tmpl/gstobject.sgml:
11992         * docs/gst/tmpl/gstpad.sgml:
11993         * docs/gst/tmpl/gstparse.sgml:
11994         * docs/gst/tmpl/gstpipeline.sgml:
11995         * docs/gst/tmpl/gstplugin.sgml:
11996         * docs/gst/tmpl/gstpluginfeature.sgml:
11997         * docs/gst/tmpl/gstqueue.sgml:
11998         * docs/gst/tmpl/gstreamer-unused.sgml:
11999         * docs/gst/tmpl/gstregistry.sgml:
12000         * docs/gst/tmpl/gstregistrypool.sgml:
12001         * docs/gst/tmpl/gstscheduler.sgml:
12002         * docs/gst/tmpl/gstsearchfuncs.sgml:
12003         * docs/gst/tmpl/gstshaper.sgml:
12004         * docs/gst/tmpl/gstspider.sgml:
12005         * docs/gst/tmpl/gstspideridentity.sgml:
12006         * docs/gst/tmpl/gststructure.sgml:
12007         * docs/gst/tmpl/gstsystemclock.sgml:
12008         * docs/gst/tmpl/gsttag.sgml:
12009         * docs/gst/tmpl/gsttaginterface.sgml:
12010         * docs/gst/tmpl/gsttee.sgml:
12011         * docs/gst/tmpl/gstthread.sgml:
12012         * docs/gst/tmpl/gsttrace.sgml:
12013         * docs/gst/tmpl/gsttrashstack.sgml:
12014         * docs/gst/tmpl/gsttypefind.sgml:
12015         * docs/gst/tmpl/gsttypes.sgml:
12016         * docs/gst/tmpl/gsturi.sgml:
12017         * docs/gst/tmpl/gsturitype.sgml:
12018         * docs/gst/tmpl/gstutils.sgml:
12019         * docs/gst/tmpl/gstvalue.sgml:
12020         * docs/gst/tmpl/gstversion.sgml:
12021         * docs/gst/tmpl/gstxml.sgml:
12022         * docs/gst/tmpl/gstxmlregistry.sgml:
12023         * docs/gst/tmpl/gthread-cothreads.sgml:
12024         * docs/gst/tmpl/types.sgml:
12025
12026 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12027
12028         * docs/pwg/other-sink.xml:
12029         * docs/pwg/other-source.xml:
12030           Documentation on how to write source and sink elements. Other
12031           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
12032           manager, autoplugger) are all still pending.
12033
12034 2004-03-25  Benjamin Otte  <otte@gnome.org>
12035
12036         * testsuite/elements/Makefile.am:
12037         * testsuite/elements/gst-compprep-check:
12038           add check to make sure gst-compprep works
12039         * testsuite/elements/gst-inspect-check.in:
12040           improve initialization output
12041         * testsuite/Makefile.am:
12042         * testsuite/gst-inspect-check:
12043           remove old file
12044
12045 2004-03-24  David Schleef  <ds@schleef.org>
12046
12047         * testsuite/elements/Makefile.am:
12048         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
12049         to the testsuite.
12050
12051 2004-03-24  Benjamin Otte  <otte@gnome.org>
12052
12053         * libs/gst/control/dparam.c: (gst_dparam_attach),
12054         (gst_dparam_detach):
12055         * libs/gst/control/dparammanager.c: (gst_dpman_init):
12056           fix lvalue casts for real
12057
12058 2004-03-24  Benjamin Otte  <otte@gnome.org>
12059
12060         * gst/schedulers/gstbasicscheduler.c:
12061         (gst_basic_scheduler_src_wrapper):
12062         * gst/schedulers/gstoptimalscheduler.c:
12063         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
12064         (pad_clear_queued), (gst_opt_scheduler_add_element),
12065         (gst_opt_scheduler_remove_element):
12066           fix GStreamer to not have issues with lvalue casts anymore (fixes
12067           #136841)
12068
12069 2004-03-24  Benjamin Otte  <otte@gnome.org>
12070
12071         * gst/gstelement.c:
12072           add documentation about a gobject quirk where the object hasn't the
12073           correct class pointer set on initialization
12074         * gst/schedulers/gstbasicscheduler.c:
12075         (gst_basic_scheduler_src_wrapper):
12076           make sure to not run into an infinite loop
12077
12078 2004-03-22  Benjamin Otte  <otte@gnome.org>
12079
12080         * gst/gstutils.c: (gst_util_dump_mem):
12081         * gst/gstutils.h:
12082           first argument of gst_util_dump_mem should be const
12083
12084 2004-03-22  Johan Dahlin  <johan@gnome.org>
12085
12086         * gst/gstvalue.h: Clean up a little bit.
12087
12088 2004-03-21  Tim-Philipp M??ller <t.i.m@zen.co.uk>
12089
12090         reviewed by Benjamin Otte  <otte@gnome.org>
12091
12092         * gst/autoplug/gstspider.c: (gst_spider_dispose):
12093         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
12094         (gst_aggregator_class_init), (gst_aggregator_init):
12095         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12096         (gst_filesrc_dispose), (gst_filesrc_set_location):
12097         * gst/elements/gstidentity.c: (gst_identity_finalize),
12098         (gst_identity_class_init), (gst_identity_chain):
12099         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
12100         * gst/elements/gststatistics.c: (gst_statistics_finalize),
12101         (gst_statistics_class_init):
12102         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
12103         (gst_tee_get_property):
12104           clean up used memory in this elements correctly on teardown (closes
12105           #137279)
12106
12107 2004-03-20  Colin Walters  <walters@redhat.com>
12108
12109         * gst/registries/gstxmlregistry.c:
12110         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
12111         registry saving atomic.
12112
12113 2004-03-20  Colin Walters  <walters@redhat.com>
12114
12115         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
12116         Just use
12117         access() instead of actually creating and deleting files.
12118
12119 2004-03-18  David Schleef  <ds@schleef.org>
12120
12121         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
12122         (bug #137625)
12123
12124 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12125
12126         * po/sv.po: updated translation (Christian Rose)
12127
12128 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12129
12130         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12131         (gst_filesink_get_query_types), (_do_init),
12132         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
12133           return FALSE silently
12134         * po/af.po: updated translation (Petri Jooste)
12135
12136 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12137
12138         * Makefile.am:
12139         * configure.ac:
12140           dist common properly
12141         * po/af.po:
12142         * po/fr.po:
12143         * po/nl.po:
12144         * po/sr.po:
12145         * po/sv.po:
12146           refreshing translations
12147
12148 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12149
12150         * po/LINGUAS:
12151         * po/sv.po:
12152         * po/af.po:
12153           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
12154
12155 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12156
12157         * Makefile.am: use common/release.mak
12158
12159 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12160
12161         * docs/faq/gst-uninstalled:
12162           adding gst-monkeysaudio to the list of possible plugin dirs
12163
12164 2004-03-16  David Schleef  <ds@schleef.org>
12165
12166         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
12167         (gst_init_check_with_popt_table):  Fix some gettext strings to
12168         make them easier to translate.  Required making the strings
12169         non-const.
12170
12171 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12172
12173         * configure.ac: bump nano to 1
12174
12175 === release 0.8.0 ===
12176
12177 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12178
12179         * configure.ac: release 0.8.0, "Executive Slacks"
12180
12181 2004-03-16  Johan Dahlin  <johan@gnome.org>
12182
12183         * gst/schedulers/gstoptimalscheduler.c
12184         (gst_opt_scheduler_pad_unlink): Remove double ;,
12185         spotted by Scott Wheeler
12186
12187 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12188
12189         * configure.ac: bump libtool version
12190
12191 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12192
12193         * gst/gstcaps.h:
12194         * gst/gststructure.h:
12195           add reserved padding
12196
12197 2004-03-15  Benjamin Otte  <otte@gnome.org>
12198
12199         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
12200           set the first parameter for select call correctly.
12201           (fixes #137230)
12202
12203 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12204
12205         * *.c,*.h: don't mix tabs and spaces
12206
12207 2004-03-15  Johan Dahlin  <johan@gnome.org>
12208
12209         * gst/schedulers/gstoptimalscheduler.c
12210         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
12211         crash on MPEG playback. My boolean arithmetic is a bit rusty.
12212
12213         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
12214         
12215 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12216
12217         * testsuite/Rules:
12218           fix gst-register rules
12219
12220 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12221
12222         * testsuite/Rules:
12223           use versioned gst-register
12224
12225 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12226
12227         * docs/libs/gstreamer-libs-sections.txt:
12228           remove </SUBSECTION>
12229         * gst/gstplugin.c:
12230         * gst/gstregistry.c: (gst_registry_add_plugin):
12231         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
12232         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
12233           add debugging and fix some comment blocks
12234
12235 2004-03-15  Johan Dahlin  <johan@gnome.org>
12236
12237         * *.h: Revert indent changes.
12238         
12239 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
12240
12241         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
12242           g_error_free the g_error
12243         * tools/gst-feedback-m.m:
12244           check for other versions of gstreamer
12245         * tools/gst-indent:
12246           use sh, not bash
12247
12248 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
12249
12250         * tools/gst-register.c: do not spill paths when registries are not
12251           writable, until we fix the "user running gst-register" case.
12252
12253 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12254
12255         * *.c, *.h: commit of gst-indent run on core
12256
12257 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12258
12259         * tools/gst-indent:
12260         * tools/Makefile.am:
12261           add our indentation style as a script
12262
12263 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12264
12265         * po/sr.po:
12266         * po/LINGUAS:
12267           added Serbian translation
12268
12269 2004-03-13  Benjamin Otte  <otte@gnome.org>
12270
12271         * gst/gstelement.c:
12272           add documentation note about gst_element_found_tags_for_pad not
12273           being usable in getfunctions. (see #137042)
12274
12275 2004-03-12  David Schleef  <ds@schleef.org>
12276
12277         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
12278         change API right now!  Readd gst_caps_is_simple() macro.
12279         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
12280         uninitialized variable.  I'd bet this caused crashes.
12281         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
12282
12283 2004-03-12  Johan Dahlin  <johan@gnome.org>
12284
12285         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
12286         * gst/gstcaps.h: Clean up
12287
12288         * gst/gst.c (init_post): call gst_caps_get_type() instead of
12289         _gst_caps_initalize()
12290
12291         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
12292         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
12293
12294         * gst/gststructure.c (gst_structure_get_type): Ditto
12295
12296         * gst/gststructure.h: Ditto
12297         
12298 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12299
12300         * gst/gstqueue.c: (gst_queue_init):
12301           Reset default max. values in queues. Reason is simply to avoid
12302           braindead use. If you want wider values, use the properties. The
12303           default is supposed to always work. Wider values would make this
12304           beast a memory hog by default (250 full-PAL RGB32 video frames?
12305           That's 440 MB! No thank you).
12306
12307 2004-03-10  David Schleef  <ds@schleef.org>
12308
12309         * tools/gst-run.c: (main):  Fix crash when no relevant tools
12310         were found.  (bug #136793)
12311
12312 2004-03-10  Johan Dahlin  <johan@gnome.org>
12313
12314         * gst/schedulers/gstoptimalscheduler.c
12315         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
12316         links to elements within the same group, so we can finally remove
12317         that annoying warning. Refactor the code a little bit
12318         (group_dec_links_for_element): Split out
12319
12320 2004-03-09  David Schleef  <ds@schleef.org>
12321
12322         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
12323         (bug #134863)
12324
12325 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12326
12327         * configure.ac: first bug fix due to major/minor bump
12328
12329 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12330
12331         * configure.ac: bump nano to 1
12332
12333 === release 0.7.6 ===
12334
12335 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12336
12337         * NEWS:
12338         * RELEASE:
12339         * configure.ac:
12340           releasing 0.7.6, "Almost"
12341         * po/fr.po:
12342         * po/nl.po:
12343         * tools/Makefile.am:
12344         * tools/gst-feedback-m.m:
12345           unversioned source
12346
12347 2004-03-09  Johan Dahlin  <johan@gnome.org>
12348
12349         Reviewed by: Thomas Vander Stichele
12350
12351         * gst/gstelement.c (gst_element_class_init): register second
12352         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
12353         language bindings can (de)marshall correctly.
12354
12355         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
12356
12357         * gst/gsterror.c (gst_g_error_get_type): New function
12358
12359         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
12360         with VOID:OBJECT,OBJECT,STRING 
12361
12362 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
12363
12364         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
12365         Free a leaked g_timer on early returns.
12366
12367 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12368
12369         * docs/pwg/advanced-types.xml:
12370           Add cinepak description.
12371
12372 2004-03-07  David Schleef  <ds@schleef.org>
12373
12374         * docs/random/mimetypes:  Added cinepak description
12375
12376 2004-03-07  Andy Wingo  <wingo@pobox.com>
12377
12378         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
12379
12380         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
12381         there are no links to other groups when a group is destroyed.
12382         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
12383         removed from a group, make sure the link count to elements linked
12384         to other pads is appropriately decremented. This really fixes
12385         #135672.
12386
12387         The 1.60->1.61 patch has been reapplied in light of this fix.
12388
12389         * gst/gstelement.c (gst_element_dispose): Really protect against
12390         multiple invocations this time.
12391
12392 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12393
12394         * docs/gst/gstreamer-sections.txt:
12395         * docs/gst/tmpl/gsttag.sgml:
12396           remove some deprecated functions, document some existing ones
12397         * gst/gsttag.c: (gst_tag_get_flag):
12398         * gst/gsttag.h:
12399           add accessor function
12400
12401 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12402
12403         * docs/gst/gstreamer-sections.txt:
12404         * docs/gst/tmpl/gsttag.sgml:
12405         * docs/gst/tmpl/gstxml.sgml:
12406         * gst/gsttag.c: (gst_tag_get_flag):
12407         * gst/gsttag.h:
12408
12409 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
12410
12411         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
12412         leak
12413
12414 2004-03-05  David Schleef  <ds@schleef.org>
12415
12416         * REQUIREMENTS: Add bison and flex.
12417         * configure.ac: Fix comment about bison.
12418         * docs/random/ds/0.9-suggested-changes: yer ma
12419         * tools/gst-inspect.c: (print_element_info):  Fix warning.
12420
12421 2004-03-05  Benjamin Otte  <otte@gnome.org>
12422
12423         * gst/gstelement.c: (gst_element_error_full):
12424           revert recent recursive state changing commit - messing with other
12425           elements' states is evil and should be done by apps only.
12426
12427 2004-03-05  Benjamin Otte  <otte@gnome.org>
12428
12429         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
12430           check for empty intersection instead of NULL caps
12431         (gst_element_get_compatible_pad_filtered):
12432           remove old workaround that is only a bug nowadays
12433
12434 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12435
12436         * gst/gstelement.c: (gst_element_error_full):
12437           make elements try to recursively change state to PAUSED on all
12438           parents after an error to suppress ensuing warnings
12439         * gst/parse/grammar.y:
12440           make it check if it was able to sync the state, and throw an error
12441           if not, so stuff like
12442           oggdemux ! vorbisdec ! osssink gets caught
12443
12444 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12445
12446         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
12447           it contains lib64; use AS_AC_EXPAND to handle it properly
12448
12449 2004-03-05  David Schleef  <ds@schleef.org>
12450
12451         * gst/gstcpuid_i386.s:  Remove unused code
12452         * libs/gst/getbits/getbits.c: (gst_getbits_init),
12453         (gst_getbits_newbuf): Remove MMX code
12454         * libs/gst/getbits/getbits.h: Remove MMX code
12455
12456 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
12457
12458         * debian/.cvsignore:
12459         * debian/README.Debian:
12460         * debian/changelog:
12461         * debian/control:
12462         * debian/control.in:
12463         * debian/copyright:
12464         * debian/gstreamer-core-libs-dev.files:
12465         * debian/gstreamer-core-libs.files:
12466         * debian/gstreamer-core.files:
12467         * debian/gstreamer-core.postinst:
12468         * debian/gstreamer-core.postrm:
12469         * debian/gstreamer-doc.files:
12470         * debian/gstreamer-doc.links:
12471         * debian/gstreamer-doc.lintian:
12472         * debian/gstreamer-runtime.files:
12473         * debian/gstreamer-runtime.manpages:
12474         * debian/gstreamer-runtime.postinst:
12475         * debian/gstreamer-runtime.postrm:
12476         * debian/gstreamer-tools.files:
12477         * debian/gstreamer-tools.manpages:
12478         * debian/libgstreamer-dev.files:
12479         * debian/libgstreamer0.4.1.files:
12480         * debian/libgstreamerVERSION.files:
12481         * debian/rules:
12482         Debian package info not maintained here.
12483
12484 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12485
12486         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12487         * gst/gstbin.c: (gst_bin_class_init):
12488         * gst/gstelement.c: (gst_element_class_init):
12489         * gst/gstindex.c: (gst_index_class_init):
12490         * gst/gstobject.c: (gst_object_class_init),
12491         (gst_signal_object_class_init):
12492         * gst/gstpad.c: (gst_pad_template_class_init):
12493         * gst/gstregistry.c: (gst_registry_class_init):
12494         * gst/gsturi.c: (gst_uri_handler_base_init):
12495         * gst/gstxml.c: (gst_xml_class_init):
12496         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12497         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
12498           make all signal names use dashes instead of underscore
12499
12500 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12501
12502         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
12503
12504 2004-03-03  Benjamin Otte  <otte@gnome.org>
12505
12506         * gst/schedulers/gstoptimalscheduler.c:
12507           revert last commit by Andy Wingo. It causes segfaults on unreffing
12508           in Rhythmbox. (see bug #135672)
12509
12510 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
12511
12512         * po/fr.po: fix typo
12513
12514 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
12515
12516         * tools/gst-inspect.c: (main): 
12517         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
12518
12519 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12520
12521         * configure.ac:
12522           get GLIB_ONLY and POPT flags for the nonversioned binaries
12523         * tools/Makefile.am:
12524           use them
12525
12526 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12527
12528         * gst/gst.c: (init_post):
12529           change so that GST_REGISTRY now is where the global registry gets
12530           saved, since that is where plugins now get attached to first, and
12531           spilled over to the user registry.  Note that in the case of using
12532           GST_REGISTRY env var, we don't want to affect any real registries
12533           beyond the one given by this var, and thus we don't set a user
12534           registry to spill to.  So make sure GST_REGISTRY is writable.
12535
12536 2004-03-01  David Schleef  <ds@schleef.org>
12537
12538         * AUTHORS:  Added some names.  Add yourself if you're missing.
12539
12540 2004-03-01  David Schleef  <ds@schleef.org>
12541
12542         * MAINTAINERS: Add
12543
12544 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
12545
12546         * configure.ac:
12547           remove whitespace
12548         * docs/gst/tmpl/gstbuffer.sgml:
12549         * docs/gst/tmpl/gstdata.sgml:
12550         * docs/gst/tmpl/gstreamer-unused.sgml:
12551         * docs/gst/tmpl/gstxml.sgml:
12552           doc update
12553         * docs/manuals.mak:
12554           add a FIXME
12555         * docs/pwg/intro-preface.xml:
12556         * docs/pwg/pwg.xml:
12557           remove GNOME
12558         * gst/gst.c: (init_post):
12559           try GST_PLUGIN_PATH paths for the _global_registry first
12560         * gst/gstelement.h:
12561           add the error message as well, otherwise (null) debug info doesn't
12562           make much sense
12563         * tools/gst-register.c: (main):
12564           spill paths to next registry if this registry is not writable
12565         * po/fr.po:
12566         * po/nl.po:
12567           translation updates
12568
12569 2004-03-01  Johan Dahlin  <johan@gnome.org>
12570
12571         * gst/gstbuffer.c (_gst_buffer_initialize): 
12572         * gst/gstdata.c (gst_data_get_type): 
12573         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
12574         instead of ref, since some applications that uses GBoxed
12575         routines depends on a function that actually returns a copy.
12576
12577 2004-02-27  Benjamin Otte  <otte@gnome.org>
12578
12579         * gst/gstbuffer.h:
12580           remove gst_buffer_free, use gst_data_unref
12581         * gst/gstdata.c: (gst_data_get_type):
12582           use refcounting in GstData GBoxed registration
12583         * gst/gstdata.h:
12584           remove gst_data_free, use gst_data_unref
12585
12586 2004-02-27  Johan Dahlin  <johan@gnome.org>
12587
12588         * gst/gstdata.c (gst_data_get_type): New function, register
12589         GstData as a GBoxed type.
12590
12591         * gst/gstdata.h (GST_TYPE_DATA): New macro
12592
12593 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
12594
12595         * Makefile.am:
12596         * gstreamer.spec.in:
12597           put back RELEASE
12598         * gst/Makefile.am:
12599           clean up non-disting of built files
12600         * testsuite/debug/commandline.c:
12601           test fix for option rename
12602
12603 2004-02-26  David Schleef  <ds@schleef.org>
12604
12605         * configure.ac:  We don't really need glib-2.3.  Also remove
12606         some unneeded checks for library functions.
12607         * gst/Makefile.am:  Instead, we need to not dist files created
12608         by glib-genmarshal.
12609
12610 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12611
12612         * configure.ac:
12613           bump glib required version to 2.3.0 for g_value_takes_boxed
12614
12615  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
12616
12617         * common/m4/gst-docs.m4
12618         change flavour text from enable to disable as enable is our default
12619         closes bug Bug 135304
12620
12621 === release 0.7.5 ===
12622  
12623  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12624  
12625         * NEWS:
12626           instate NEWS file
12627         * Makefile.am:
12628         * gstreamer.spec.in:
12629         * RELEASE:
12630           put back release
12631         * configure.ac:
12632         * docs/random/release:
12633           more updates
12634
12635 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12636
12637         * gst/gsttag.c: (_gst_tag_initialize):
12638         * po/fr.po:
12639         * po/nl.po:
12640           remove hyphen from codec tags
12641
12642 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12643
12644         * gst/parse/Makefile.am:
12645           fix dependency so that a make from a clean build works the first
12646           time
12647
12648 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12649
12650         * docs/random/release:
12651           update release strategy
12652         * po/fr.po:
12653           auto-update po file
12654         * po/nl.po:
12655           update dutch translation
12656
12657 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12658
12659         * docs/manual/debugging.xml:
12660         fix manual for new debugging system
12661
12662 2004-02-25  Andy Wingo  <wingo@pobox.com>
12663
12664         * gst/gstpad.c (gst_pad_link_prepare): Re-add
12665         gst_pad_link_prepare. Please email the list with specific reasons
12666         for reverting.
12667
12668 2004-02-24  Andy Wingo  <wingo@pobox.com>
12669
12670         * gst/gstelement.c (gst_element_dispose): Protect against multiple
12671         invocations.
12672
12673         * gst/schedulers/gstoptimalscheduler.c:
12674         I added a mess of prototypes at the top of the file by way of
12675         documentation. Some of the operations on chains and groups were
12676         re-organized.
12677
12678         (create_group): Added a type argument so if the group is enabled,
12679         the setup_group_scheduler knows what to do.
12680         (group_elements): Added a type argument here, too, to be passed on
12681         to create_group.
12682         (group_element_set_enabled): If an unlinked PLAYING element is
12683         added to a bin, we have to create a new group to hold the element,
12684         and this function will be called before the group is added to the
12685         chain. Thus we have a valid case for group->chain==NULL. Instead
12686         of calling chain_group_set_enabled, just set the flag on the group
12687         (the chain's status will be set when the group is added to it).
12688         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
12689         Setup the group scheduler when the group is enabled, not
12690         specifically when an element goes PAUSED->PLAYING. This means
12691         PLAYING elements can be added, linked, and scheduled into a
12692         PLAYING pipeline, as was intended.
12693         (add_to_group): Don't ref the group twice. I don't know when this
12694         double-ref got in here. Removing it has the potential to cause
12695         segfaults if other parts of the scheduler are buggy. If you find
12696         that the scheduler is segfaulting for you, put in an extra ref
12697         here and see if that hacks over the underlying issue. Of course,
12698         then find out what code is unreffing a group it doesn't own...
12699         (create_group): Make the extra refcount floating, and remove it
12700         after adding the element. This means that...
12701         (unref_group): Destroy when the refcount reaches 0, not 1, like
12702         every other refcounted object in the known universe.
12703         (remove_from_group): When a group becomes empty, set it to be not
12704         active, and remove it from its chain. Don't unref it again,
12705         there's no floating reference any more.
12706         (destroy_group): We have to remove the group from the chain in
12707         remove_from_group (rather than here) to break refcounting cycles
12708         (the chain always has a ref on the group). So assert that
12709         group->chain==NULL.
12710         (ref_group_by_count): Removed, it was commented out anyway.
12711         (merge_chains): Use the remove_from_chain and add_to_chain
12712         primitives to do the reparenting, instead of rolling our own
12713         implementation.
12714         (add_to_chain): The first non-disabled group in the chain's group
12715         list will be the entry point for the chain. Because buffers can
12716         accumulate in loop elements' peer bufpens, we preferentially
12717         schedule loop groups before get groups to avoid unnecessary
12718         execution of get-based groups when the bufpens are already full.
12719         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
12720         (get_group_schedule_function): Ditto.
12721         (loop_group_schedule_function): Ditto.
12722         (gst_opt_scheduler_loop_wrapper): Ditto.
12723         (gst_opt_scheduler_iterate): Ditto.
12724
12725         I understand the opt scheduler now, yippee!
12726
12727         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
12728         (gst_pad_get_name, gst_pad_set_chain_function) 
12729         (gst_pad_set_get_function, gst_pad_set_event_function) 
12730         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
12731         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
12732         (gst_pad_set_query_function, gst_pad_get_query_types) 
12733         (gst_pad_get_query_types_default) 
12734         (gst_pad_set_internal_link_function) 
12735         (gst_pad_set_formats_function, gst_pad_set_link_function) 
12736         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
12737         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
12738         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
12739         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
12740         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
12741         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
12742         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
12743         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
12744         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
12745         (gst_pad_event_default_dispatch, gst_pad_event_default) 
12746         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
12747         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
12748         (gst_pad_get_formats_default, gst_pad_get_formats): Better
12749         argument checks, and some doc fixes.
12750
12751         (gst_pad_custom_new_from_template): Um, does anyone
12752         use these functions? Actually make a custom pad instead of a
12753         normal one.
12754         (gst_pad_try_set_caps): Transpose some checks.
12755         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
12756         the pad is in negotiation.
12757         (gst_pad_try_relink_filtered): Use pad_link_prepare.
12758         
12759         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
12760
12761         * gst/gstelement.h: 
12762         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
12763         on the list.
12764
12765 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12766
12767         * gst/gstbin.c: (gst_bin_add):
12768           add error for not being able to add elements
12769
12770 2004-02-22  Julien MOUTTE <julien@moutte.net>
12771
12772         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
12773         audio-codec and video-codec.
12774
12775 2004-02-22  Benjamin Otte  <otte@gnome.org>
12776
12777         reported by: Padraig O'Briain <padraig.obriain@sun.com>
12778
12779         * autogen.sh:
12780           replace test -e with test -x for mkinstalldirs to be more portable.
12781           (fixes #134816)
12782
12783 2004-02-22  Benjamin Otte  <otte@gnome.org>
12784
12785         * gst/gstpad.c:
12786           revert last patch from Andy, it makes gst_pad_can_link_filtered much
12787           too noisy
12788         * gst/gsttag.c: (_gst_tag_initialize):
12789         * gst/gsttag.h:
12790           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
12791         * libs/gst/control/dparam.c: (gst_dparam_attach):
12792         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
12793           check that types for attached dparams match
12794
12795 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12796
12797         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12798         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12799         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
12800           fix errors
12801
12802 2004-02-20  Andy Wingo  <wingo@pobox.com>
12803
12804         * gst/gstbin.c:
12805         * gst/gstbuffer.c:
12806         * gst/gstplugin.c:
12807         * gst/registries/gstxmlregistry.c: 
12808         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
12809
12810         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
12811         (gst_element_add_pad): DEBUG->INFO, some fixes.
12812         (gst_element_get_compatible_pad_template): Just see if the
12813         templates' caps intersect, not if one is a strict subset of the
12814         other. This conforms more to what gst_pad_link_intersect() does.
12815         (gst_element_class_add_pad_template): Don't memcpy the pad
12816         template, just ref it.
12817         (gst_element_get_compatible_pad_filtered): Clean up debug messages
12818
12819         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
12820         (gst_pad_link_filtered): Debug changes.
12821         (gst_pad_link_prepare): New function, consolidated from
12822         can_link_filtered and link_filtered.
12823
12824         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
12825         look more like that of the functions in gstelement.c
12826
12827         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
12828         object, and return the empty string if object is NULL.
12829
12830         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
12831         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
12832         LOG, not DEBUG. We still get flex info on debug.
12833
12834         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
12835         debug string more verbose.
12836         (plugin_times_older_than): DEBUG->LOG.
12837
12838 2004-02-20  Julien MOUTTE <julien@moutte.net>
12839
12840         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
12841         will emit found_tag for each stream they demux with the codec.
12842
12843 2004-02-20  Benjamin Otte  <otte@gnome.org>
12844
12845         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
12846           copy navigation event correctly. Check freeing tag lists. 
12847         * gst/gstthread.c: (gst_thread_change_state):
12848           don't abort() on state changing mess - it might happen because of
12849           bugs.
12850         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
12851           use boxed functions
12852         * gst/gstvalue.h:
12853           fix GST_VALUE_HOLDS_CAPS
12854
12855 2004-02-19  David Schleef  <ds@schleef.org>
12856
12857         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
12858         and use it for GST_FUNCTION.  (bug #134750)
12859
12860 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12861
12862         * po/fr.po:
12863         * po/nl.po:
12864           updating translations
12865
12866 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12867
12868         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
12869
12870 2004-02-18  kost@imn.htwk-leipzig.de
12871
12872         reviewed by: David Schleef  <ds@schleef.org>
12873
12874         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
12875         for libgstcontrol.
12876
12877 2004-02-18  David Schleef  <ds@schleef.org>
12878
12879         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12880         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12881         (gst_dpsmooth_new): Additional fixes to get double dparams working.
12882         * tools/gst-inspect.c: (print_element_info): Support dumping of
12883         double dparam information.
12884
12885 2004-02-17  David Schleef  <ds@schleef.org>
12886
12887         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12888         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
12889         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
12890         Use GST_TYPE_CAPS in signal prototype.
12891         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
12892         Convert GST_TYPE_CAPS to boxed.
12893         * gst/gstelement.c: (gst_element_class_init):
12894         Use GST_TYPE_TAG_LIST in signal prototype.
12895         * gst/gstindex.c: (gst_index_class_init):
12896         * gst/gstindex.h:
12897         Add GST_TYPE_INDEX_ENTRY type.
12898         * gst/gstmarshal.list:
12899         Add necessary marshal types.
12900         * gst/gstpad.c: (gst_real_pad_class_init),
12901         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12902         (gst_pad_recover_caps_error):
12903         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
12904         * gst/gststructure.c: (_gst_structure_initialize),
12905         (gst_structure_copy), (_gst_structure_copy_conditional):
12906         * gst/gststructure.h:
12907         Convert GST_TYPE_STRUCTURE to boxed.
12908         * gst/gsttag.c: (gst_tag_list_get_type):
12909         * gst/gsttag.h:
12910         Add GST_TYPE_TAG_LIST type.
12911
12912 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12913
12914         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
12915         to what we agreed with david.
12916         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
12917
12918 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12919
12920         * po/nl.po: update translation
12921
12922 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12923
12924         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
12925           throw an error if spider is trying to play a mime type there is
12926           no decoder for
12927         * po/POTFILES.in:
12928           add gst/autoplug/gstspider.c for translation
12929
12930 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12931
12932         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
12933         silently when the pad is negotiating.
12934
12935 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12936
12937         * docs/faq/Makefile.am:
12938           add script to run gstreamer uninstalled 
12939         * docs/faq/faq.xml:
12940         * docs/faq/developing.xml:
12941         * docs/faq/gst-uninstalled:
12942           extract script to run gstreamer uninstalled
12943         * docs/manuals.mak:
12944           add EXTRA_SOURCES variable for Makefile.am's to set to
12945           use additional SOURCE files for the doc build
12946
12947 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12948
12949         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12950
12951 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12952
12953         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12954         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12955         an error was thrown by osssink. Basically a state change failure for
12956         an element in a different scheduling group was considered as
12957         successful, which means that caps nego was going on and weird stuff
12958         happened. Like I wrote in the comment there, if someone wants to
12959         revert that please drop me a mail explaining why because I really see
12960         no point in keeping that broken behaviour there.
12961         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12962         be empty, we then return NULL which will trigger a nice error when 
12963         pulling from the pad.
12964
12965 2004-02-13  David Schleef  <ds@schleef.org>
12966
12967         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12968         (gst_dparam_get_property), (gst_dparam_set_property),
12969         (gst_dparam_do_update_default):
12970         * libs/gst/control/dparam.h:
12971         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12972         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12973         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12974         (gst_dpsmooth_do_update_double):
12975         * libs/gst/control/dparam_smooth.h:
12976         * libs/gst/control/dparammanager.c:
12977         (gst_dpman_inline_direct_update):
12978         Add support for double dparams.
12979
12980 2004-02-13  David Schleef  <ds@schleef.org>
12981
12982         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12983         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12984
12985 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12986
12987         reviewed by: David Schleef  <ds@schleef.org>
12988
12989         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12990         (gst_fdsrc_init), (gst_fdsrc_set_property),
12991         (gst_fdsrc_get_property), (gst_fdsrc_get):
12992         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12993         and sends an EOS event if file descriptor reading times out.
12994
12995 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12996
12997         * configure.ac:
12998           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12999
13000 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13001
13002         * configure.ac: pass required libxml version as argument
13003         (bug reported by Christophe Fergeau)
13004
13005 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13006   
13007         * docs/gst/gstreamer-docs.sgml:
13008         * docs/gst/tmpl/gstxml.sgml:
13009         * docs/libs/gstreamer-libs-docs.sgml:
13010           version API docs
13011
13012 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13013
13014         * gst/gstinfo.c:
13015         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
13016         (gst_registry_pool_feature_filter):
13017         * gst/gstthread.c: (gst_thread_class_init):
13018         * gst/gstvalue.c:
13019           add includes exposed by building without libxml
13020         * gst/indexers/Makefile.am:
13021           do not build fileindex when LOADSAVE disabled; we should have
13022           a better libxml check later since fileindex depends on xml, not
13023           LOADSAVE or REGISTRY
13024         * libs/gst/control/Makefile.am:
13025           link with m
13026         * tools/Makefile.am:
13027           fix wrong source code for gst-xmlinspect
13028
13029 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13030
13031         * configure.ac:
13032           fix gcov help output
13033           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
13034         * docs/random/release:
13035           some updated releasing notes
13036         * gstreamer.spec.in:
13037           more updates
13038
13039 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13040
13041         * docs/faq/faq.xml:
13042         * docs/manual/manual.xml:
13043         * docs/pwg/pwg.xml:
13044         * docs/pwg/titlepage.xml:
13045           put version in documentation
13046
13047 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13048
13049         * tools/Makefile.am: fix man page installation
13050
13051 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13052
13053         * configure.ac:
13054           don't check for libxml when load/save and registry disabled (#105844)
13055         * gstreamer.spec.in:
13056           sync with fedora candidate spec
13057
13058 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13059
13060         * po/fr.po:
13061         * po/nl.po:
13062           replace multidisksrc with multifilesrc
13063
13064 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13065
13066         * po/POTFILES.in:
13067           update to multidisksrc => multifilesrc file renaming (#134145)
13068
13069 2004-02-11  David Schleef  <ds@schleef.org>
13070
13071         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
13072         * docs/gst/tmpl/gstpadtemplate.sgml: same
13073         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
13074         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
13075         fixing dance.
13076         * gst/gstutils.c: Remove disabled code that uses GstProps.
13077         * gst/registries/gstxmlregistry.h: same
13078         * docs/random/ds/0.9-suggested-changes: random notes
13079
13080 2004-02-11  kost@imn.htwk-leipzig.de
13081
13082         reviewed by: David Schleef  <ds@schleef.org>
13083
13084         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
13085         initialisation of clock (bug #134128)
13086
13087 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13088
13089         * configure.ac:
13090         * gst/elements/Makefile.am:
13091         * gst/elements/gstelements.c:
13092         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
13093         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
13094         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
13095         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
13096         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
13097         * gst/elements/gstmultifilesrc.h:
13098           rename multidisksrc to multifilesrc (part of #122200)
13099
13100 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13101
13102         * docs/manuals.mak:
13103           fix automake complaints
13104         * gst-element-check.m4:
13105           fix unquotedness
13106
13107 2004-02-11  David Schleef  <ds@schleef.org>
13108
13109         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
13110         * gst/gstatomic_impl.h: Disable sparc implementation.
13111
13112 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13113
13114         * gst-element-check.m4:
13115           fix underquoted macros as reported by automake 1.8.x (#133800)
13116         * configure.ac:
13117           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
13118           by autopoint (fixes #132996)
13119
13120 2004-02-10  Andy Wingo  <wingo@pobox.com>
13121
13122         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
13123         way to do inheritance.
13124         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
13125         (gst_pad_get_query_types, gst_pad_get_query_types_default):
13126         Routine docs.
13127         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
13128         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
13129         doc.
13130         (gst_pad_unlink, gst_pad_is_linked): Docs.
13131         (gst_pad_renegotiate): A brief description of capsnego.
13132         (gst_pad_try_set_caps): Document.
13133         (gst_pad_try_set_caps_nonfixed): Document.
13134         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
13135         (gst_pad_set_parent): Deprecated (although not out of the API).
13136         (gst_pad_get_parent): Deprecated, although many plugins use this.
13137         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
13138         are private and will go away in 0.9.
13139         (gst_pad_perform_negotiate): Doc.
13140         (gst_pad_link_unnegotiate): I think this is meant to be static.
13141         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
13142         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
13143         (gst_pad_get_peer): Doc updates.
13144         (gst_pad_caps_change_notify): Doc.
13145         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
13146         (gst_ghost_pad_new): Doc fixes.
13147
13148         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
13149         (gst_object_check_uniqueness): 
13150
13151         * gst/gstelement.c (gst_element_add_pad) 
13152         (gst_element_add_ghost_pad, gst_element_remove_pad) 
13153         (gst_element_remove_ghost_pad, gst_element_get_pad) 
13154         (gst_element_get_static_pad, gst_element_get_pad_list) 
13155         (gst_element_class_get_pad_template_list) 
13156         (gst_element_class_get_pad_template): Work on the docs.
13157         (gst_element_get_pad_template_list): Uses the class method.
13158         (gst_element_get_compatible_pad_template): Docs, and consolidate
13159         some test conditions. 
13160         (gst_element_get_pad_from_template): New static function.
13161         (gst_element_request_compatible_pad): Docs, and work with
13162         non-request compatible templates. 
13163         (gst_element_get_compatible_pad_filtered): Docs and remove
13164         redundant checks.
13165         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
13166         (gst_element_link_filtered, gst_element_link_many) 
13167         (gst_element_link, gst_element_link_pads) 
13168         (gst_element_unlink_many): Docs.
13169
13170 2004-02-05  Andy Wingo  <wingo@pobox.com>
13171
13172         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
13173         s/pointer/boxed/.
13174
13175         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
13176
13177         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
13178         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
13179         with the type=GST_TYPE_CAPS. This allows language bindings to know
13180         what kind of data they're dealing with.
13181
13182         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
13183         to NULL when g_value_init is called. GstCaps, which rolls its own
13184         type implementation, now does the same instead of allocating empty
13185         caps.
13186         (_gst_caps_initialize, _gst_caps_collect_value,
13187         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
13188         table methods. This allows G_VALUE_COLLECT to work.
13189
13190 2004-02-05  Andy Wingo  <wingo@pobox.com>
13191
13192         * configure.ac:
13193         * testsuite/Makefile.am (SUBDIRS): 
13194         * testsuite/ghostpads/Makefile.am: 
13195         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
13196
13197         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
13198         These two routines are the only ones that set
13199         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
13200         pad template. They should be made static, depending on ABI needs.
13201         (gst_real_pad_dispose): Handle the case of ghost pads without a
13202         parent. Assert after dealing with ghost pads that the ghost pad
13203         list is empty.
13204         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
13205         set after creation.
13206         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
13207         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
13208         functions. set_property will call add_ghost_pad/remove_ghost_pad
13209         as appropriate.
13210         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
13211
13212         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
13213         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
13214         (gst_element_remove_pad): Handle ghost pads as well.
13215         (gst_element_remove_ghost_pad): Deprecated (could be removed,
13216         depending on API-stability needs).
13217
13218 2004-02-05  Andy Wingo  <wingo@pobox.com>
13219
13220         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
13221         of course they're const
13222
13223 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13224
13225         * tools/Makefile.am:
13226         * tools/gst-feedback:
13227         * tools/gst-feedback-0.7:
13228           make gst-feedback versioned too for consistency
13229
13230 2004-02-11  David Schleef  <ds@schleef.org>
13231
13232         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13233         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
13234
13235 2004-02-10  Julien MOUTTE <julien@moutte.net>
13236
13237         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
13238         the structure does not contain a valid tag list. Adding a safety check
13239         to remove a noisy warning in that case.
13240
13241 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13242
13243         * gst/gst.c: fix name to be in line with others
13244
13245 2004-02-09  Julien MOUTTE <julien@moutte.net>
13246
13247         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
13248         not shout that loud when len is 0. Just return 0 silently.
13249
13250 2004-02-09  Julien MOUTTE  <julien@moutte.net>
13251
13252         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
13253         because data_unref has one and I prefer the debug to be symetric.
13254         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
13255         were refed when added to the queue and unrefed only once when the queue
13256         was flushed. Now the flush handler unref the buffers two times : first
13257         unref for the ref added when pushing in the queue's tail and second
13258         unref to destroy the flushed buffer.
13259
13260 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
13261
13262         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
13263
13264 2004-02-06  David Schleef  <ds@schleef.org>
13265
13266         * docs/random/ds/0.9-suggested-changes: Random ramblings
13267         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
13268         to int before printing.
13269         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
13270         * gst/parse/parse.l: same.  See bug #129600
13271
13272 2004-02-06  David Schleef  <ds@schleef.org>
13273
13274         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
13275         (gst_index_add_entry), (gst_index_add_associationv),
13276         (gst_index_add_association): Add gst_index_add_associationv()
13277         and clean up gst_index_add_association(). #127133
13278
13279 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13280
13281         * autogen.sh: check out common with right tag if CVS/Tag exists
13282
13283 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13284
13285         * testsuite/ghostpads/ghostpads.c: (main):
13286           fix testsuite from segfaulting
13287
13288 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13289
13290         * Makefile.am: add release target
13291         * configure.ac: bump nano to 1
13292         * docs/random/release:
13293
13294 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13295
13296         * gst/gstcaps.h:
13297         * gst/gstelement.c: (gst_element_base_class_init),
13298         (gst_element_class_set_details), (gst_element_clear_pad_caps):
13299         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13300         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
13301         (gst_real_pad_dispose):
13302         * gst/gststructure.c: (gst_structure_free),
13303         (gst_structure_from_string):
13304           put reverted patch back in
13305         * gst/gstelement.c: (gst_element_remove_pad):
13306           free explicit caps if they're set
13307         * gst/gstpad.c: (_gst_pad_default_fixate_func):
13308           copy the structure when fixating
13309
13310 2004-02-05  David Schleef  <ds@schleef.org>
13311
13312         * gst/gstmarshal.list:
13313         * gst/gstpad.c: (gst_real_pad_class_init),
13314         (_gst_real_pad_fixate_accumulator):
13315         Revert POINTER->BOXED change in signal marshaller.
13316
13317 === release 0.7.4 ===
13318                                                                                 
13319 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13320                                                                                 
13321         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
13322         * configure.ac: changed for release
13323
13324 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
13325
13326         * gstreamer.spec.in:
13327           bump required version of gtk-doc
13328
13329 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
13330
13331         * gst/gstcaps.h:
13332         * gst/gstelement.c: (gst_element_base_class_init),
13333         (gst_element_class_set_details), (gst_element_clear_pad_caps):
13334         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13335         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
13336         (gst_real_pad_dispose):
13337         * gst/gststructure.c: (gst_structure_free),
13338         (gst_structure_from_string):
13339           revert patch that breaks applications, reapply after release
13340           to get this fixed properly
13341
13342 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13343
13344         * gst/gsttag.c: (_gst_tag_initialize):
13345         * gst/gsttag.h:
13346           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
13347
13348 2004-02-04  David Schleef  <ds@schleef.org>
13349
13350         Fix some memleaks:
13351         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
13352         (gst_spider_plug_from_srcpad):
13353         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
13354
13355 2004-02-04  David Schleef  <ds@schleef.org>
13356
13357         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
13358         a GstRealPad before accessing its structure members.
13359
13360 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13361
13362         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
13363         (gst_clock_get_speed):
13364         * gst/gstclock.h:
13365           reset padding, remove unused fields
13366
13367 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13368
13369         * gst/autoplug/gstspideridentity.c:
13370         (gst_spider_identity_sink_loop_type_finding):
13371           use get_allowed_caps, not get_caps (fixes #132519)
13372         * gst/elements/gsttypefind.c: (stop_typefinding):
13373           use correct order when sending buffers and seeking
13374
13375 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13376
13377         * configure.ac:
13378         * gst/gstelement.h:
13379         * gst/gstpad.h:
13380         * gst/gstqueue.h:
13381           upgrade libtool CURRENT, reset padding
13382
13383 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13384
13385         * configure.ac:
13386           bump to prerelease
13387           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
13388
13389 2004-02-04  David Schleef  <ds@schleef.org>
13390
13391         * docs/random/ds/0.9-suggested-changes: random notes
13392         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
13393         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
13394         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
13395         expansion.
13396         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
13397         (gst_filesink_get_query_types): same
13398         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
13399         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
13400         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
13401         to use new GST_PTR_FORMAT.
13402         * gst/gstelement.h: deprecate function factory macros
13403         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
13404         These are our last variadic macros that can't be replaced with
13405         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
13406         attempting to deprecate gst_element_clock_wait().
13407         * gst/gstevent.h: same
13408         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13409         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
13410         * gst/gstpad.h: deprecate function factory macros similar to above.
13411
13412 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13413
13414         * configure.ac:
13415         * tools/Makefile.am:
13416         * tools/gst-run.c: (popt_callback), (hash_print_key),
13417         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
13418         (get_candidates), (main):
13419           add new source file to generate non-versioned wrapper binaries
13420           for our tools.
13421
13422 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13423
13424         * gst/gstevent.c: (_gst_event_free):
13425           actually break; inside the switch statement
13426         * gst/parse/grammar.y:
13427           fix memleak where GValues weren't unset
13428
13429 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13430
13431         * gst/gststructure.c: (gst_structure_from_string):
13432           fix huge memleak
13433         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
13434         (new_entry), (gst_type_find_element_chain):
13435         * gst/gstelement.c: (gst_element_base_class_init),
13436         (gst_element_class_set_details):
13437         * gst/gstpad.c: (gst_pad_can_link_filtered):
13438           fix smaller memleaks
13439         * gst/gstpad.c: (gst_real_pad_dispose):
13440           check that explicit caps are gone
13441         * gst/gststructure.c: (gst_structure_free):
13442           actually free the structure
13443         * gst/gstelement.c: (gst_element_clear_pad_caps):
13444           unset explicit caps
13445
13446 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13447
13448         * tools/Makefile.am:
13449           use AM_CFLAGS since all the CFLAGS are the same
13450           use AM_LDFAGS
13451
13452 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13453
13454         * docs/manual/gnome.xml:
13455           expand example a little
13456         * gst/gst.c: (gst_init_with_popt_table),
13457         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
13458           make sure popt option displays are done with right textdomain
13459           use GstPoptOption type
13460         * gst/gst.h:
13461           create GstPoptOption type
13462
13463 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13464
13465         * gst/gsterror.c: (_gst_stream_errors_init):
13466         * gst/gsterror.h:
13467           adding error type for no codec
13468         * po/POTFILES.in:
13469           add gst-inspect
13470         * po/nl.po:
13471           update dutch translation
13472         * tools/gst-inspect.c: (print_element_list), (main):
13473           do proper internationalization
13474         * tools/gst-launch.c: (idle_func):
13475           remove commented out function call
13476
13477 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13478
13479         * docs/README:
13480           add some error fixing notes
13481         * docs/gst/gstreamer-sections.txt:
13482           remove double entries
13483         * docs/gst/tmpl/gstbin.sgml:
13484         * docs/gst/tmpl/gstclock.sgml:
13485           remove override
13486         * docs/gst/tmpl/gstelement.sgml:
13487         * docs/gst/tmpl/gstindex.sgml:
13488         * docs/gst/tmpl/gstobject.sgml:
13489         * docs/gst/tmpl/gstpadtemplate.sgml:
13490         * docs/gst/tmpl/gstreamer-unused.sgml:
13491         * docs/gst/tmpl/gsttag.sgml:
13492         * docs/gst/tmpl/gstthread.sgml:
13493         * docs/gst/tmpl/gstxml.sgml:
13494         * gst/gsttag.h:
13495           sync header prototypes with c decls
13496         * gst/gsttaginterface.c:
13497           fix doc headers
13498
13499 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13500
13501         * gst/parse/Makefile.am:
13502         * gst/gstobject.h:
13503           get rid of gstmarshal.h dependency. It's not needed.
13504         * gst/gst.h:
13505         * gst/elements/gstfakesink.c:
13506         * gst/elements/gstfakesrc.c:
13507         * gst/elements/gstidentity.c:
13508         * gst/gstbin.c:
13509         * gst/gstelement.c:
13510         * gst/gstindex.c:
13511         * gst/gstobject.c:
13512         * gst/gstpad.c:
13513         * gst/gstthread.c:
13514         * gst/gstxml.c:
13515         * libs/gst/control/dparam.c:
13516         * libs/gst/control/dparammanager.c:
13517           include gstmarshal.h.
13518         Fixes #132045
13519
13520 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13521
13522         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
13523         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
13524         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
13525         * gst/elements/gstfilesrc.h:
13526           don't ref the filesrc when creating mmaped buffers. Don't keep a
13527           list of not-yet-destroyed buffers.
13528         * gst/gstbuffer.h:
13529           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
13530
13531 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
13532
13533         * gst/gst.c: (init_pre):
13534           remove textdomain
13535
13536 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13537
13538         * docs/pwg/advanced-events.xml:
13539         * docs/pwg/advanced-scheduling.xml:
13540         * docs/pwg/intro-basics.xml:
13541         * docs/pwg/other-manager.xml:
13542         * docs/pwg/other-nton.xml:
13543         * docs/pwg/other-ntoone.xml:
13544         * docs/pwg/other-oneton.xml:
13545         * docs/pwg/pwg.xml:
13546           All sort of documentation... Forgot what. Point is that I want this
13547           in before I leave. The 'other-*' will be the last section and will
13548           explain issues specific to these type of elements.
13549
13550 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13551
13552         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13553         (gst_filesrc_get_read):
13554           set all the values on buffers that we can
13555
13556 2004-02-02  David Schleef  <ds@schleef.org>
13557
13558         Change usage of isblah() to g_ascii_isblah() to be more locale
13559         independent.  (#133076)
13560         * gst/gsturi.c: (gst_uri_protocol_check_internal):
13561         * gst/gstutils.c:
13562         * gst/parse/parse.l:
13563
13564 2004-02-02  Jon Trowbridge  <trow@gnu.org>
13565
13566         reviewed by: David Schleef  <ds@schleef.org>
13567
13568         Fix memory leaks:
13569         * gst/gstcaps.c: (gst_caps_to_string):
13570         * gst/registries/gstxmlregistry.c:
13571         (gst_xml_registry_add_path_list_func),
13572         (gst_xml_registry_parse_padtemplate):
13573
13574 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
13575
13576         * gst/gstelement.c: (gst_element_default_error):
13577           suffix error messages with period
13578
13579 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13580
13581         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13582         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13583         * gst/gsterror.c: (gst_error_get_message):
13584           Suffix with dots
13585         * po/fr.po:
13586         * po/nl.po:
13587           Update translation files
13588
13589 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13590
13591         * gst/autoplug/gstspideridentity.c:
13592         (gst_spider_identity_sink_loop_type_finding):
13593         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13594         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13595         (gst_filesink_close_file), (gst_filesink_handle_event),
13596         (gst_filesink_chain):
13597         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13598         (gst_filesrc_get_read), (gst_filesrc_open_file):
13599         * gst/elements/gstidentity.c: (gst_identity_chain):
13600         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13601         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13602         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13603         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13604         * gst/gsterror.c: (_gst_core_errors_init),
13605         (_gst_library_errors_init), (_gst_resource_errors_init),
13606         (_gst_stream_errors_init), (gst_error_get_message):
13607         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13608         (gst_pad_recover_caps_error), (gst_pad_pull):
13609         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13610         * gst/schedulers/gstbasicscheduler.c:
13611         (gst_basic_scheduler_chainhandler_proxy),
13612         (gst_basic_scheduler_gethandler_proxy),
13613         (gst_basic_scheduler_cothreaded_chain):
13614           Suffix error messages with period.
13615           Use (NULL) instead of NULL
13616
13617 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13618
13619         * docs/gst/tmpl/gstelement.sgml:
13620         * docs/gst/tmpl/gstxml.sgml:
13621         * gst/gstelement.c: (gst_element_error_full):
13622           add element path to error
13623
13624 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13625
13626         * docs/random/mimetypes:
13627           update raw int/float info
13628         * gst/gsttag.c: (_gst_tag_initialize):
13629         * gst/gsttag.h:
13630           add GST_TAG_ENCODER
13631
13632 2004-01-30  David Schleef  <ds@schleef.org>
13633
13634         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
13635           missing (#132991)
13636
13637 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
13638
13639         reviewed by Benjamin Otte 
13640           parts of the patch submitted in bug #113913
13641
13642         * configure.ac:
13643           use AC_C_INLINE. Use = instead of == with test
13644         * examples/plugins/example.c:
13645         * gst/autoplug/gstspideridentity.c:
13646         * gst/elements/gstfdsrc.c:
13647         * gst/elements/gstfilesrc.c:
13648         * gst/elements/gstidentity.c:
13649         * gst/elements/gstmultidisksrc.c:
13650         * gst/elements/gststatistics.c:
13651         * gst/gstelement.c:
13652         * gst/gstobject.c:
13653         * gst/gstpad.c:
13654         * gst/gstpipeline.c:
13655         * gst/gstthread.c:
13656           don't end enums with a comma
13657         * gst/gstindex.c: (gst_index_compare_func):
13658           do explicit casting to gint
13659         * gst/gsttrace.c: (gst_trace_text_flush):
13660           #define strsize as a macro
13661
13662 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
13663
13664         * docs/README:
13665         * docs/gst/gstreamer-docs.sgml:
13666         * docs/gst/gstreamer-sections.txt:
13667         * docs/gst/tmpl/gstelement.sgml:
13668         * docs/gst/tmpl/gsterror.sgml:
13669         * docs/gst/tmpl/gstinterface.sgml:
13670         * docs/gst/tmpl/gstreamer-unused.sgml:
13671         * docs/gst/tmpl/gststructure.sgml:
13672         * docs/gst/tmpl/gsttag.sgml:
13673         * docs/gst/tmpl/gsttaginterface.sgml:
13674         * docs/gst/tmpl/gstvalue.sgml:
13675         make sure all API ends up in the built docs
13676         * gst/gstinterface.c:
13677         * gst/gststructure.c: (gst_structure_id_set_value),
13678         (gst_structure_set_value), (gst_structure_id_get_value):
13679         * gst/gststructure.h:
13680         * gst/gstvalue.h:
13681         sync .h with .c declarations
13682
13683 2004-01-30  Julien Moutte  <julien@moutte.net>
13684
13685         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
13686         Ronald will fix riffread.
13687
13688 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13689
13690         * docs/pwg/advanced-interfaces.xml:
13691           Added tuner interface docs.
13692
13693 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13694
13695         * docs/random/mimetypes:
13696           correct Theora information
13697         * gst/gstelement.h:
13698           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
13699
13700 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13701
13702         * gst/gstelement.c: (gst_element_error_full):
13703         * gst/gstelement.h:
13704           GST_ELEMENT_ERROR in enum -> _IN_ERROR
13705
13706 2004-01-29  Julien MOUTTE  <julien@moutte.net>
13707
13708         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
13709         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
13710         again and even before DISCONT.
13711         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
13712         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
13713         bytestream so that it's not stopping to fill the bytestream if events
13714         different than EOS or DISCONT are received. Instead it process them so
13715         that they go downstream.
13716
13717 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13718
13719         * docs/gst/tmpl/gstelement.sgml:
13720         * docs/gst/tmpl/gstreamer-unused.sgml:
13721         * docs/gst/tmpl/gstxml.sgml:
13722         * gst/autoplug/gstspideridentity.c:
13723         (gst_spider_identity_sink_loop_type_finding):
13724         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13725         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13726         (gst_filesink_close_file), (gst_filesink_handle_event),
13727         (gst_filesink_chain):
13728         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13729         (gst_filesrc_get_read), (gst_filesrc_open_file):
13730         * gst/elements/gstidentity.c: (gst_identity_chain):
13731         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13732         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13733         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13734         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13735         * gst/gstelement.h:
13736         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13737         (gst_pad_recover_caps_error), (gst_pad_pull):
13738         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13739         * gst/schedulers/gstbasicscheduler.c:
13740         (gst_basic_scheduler_chainhandler_proxy),
13741         (gst_basic_scheduler_gethandler_proxy),
13742         (gst_basic_scheduler_cothreaded_chain):
13743           gst_element_error -> GST_ELEMENT_ERROR
13744
13745 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13746
13747         * docs/Makefile.am:
13748         * docs/gst/tmpl/gstelement.sgml:
13749         * docs/gst/tmpl/gstxml.sgml:
13750         * docs/manuals.mak:
13751         * docs/pwg/advanced-request.xml:
13752         * docs/pwg/advanced-scheduling.xml:
13753         * docs/pwg/advanced-tagging.xml:
13754           fix non-validating docbook using CDATA
13755           make sure make check-local gets run first to check if it validates
13756
13757 2004-01-29  Julien MOUTTE <julien@moutte.net>
13758
13759         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
13760         handling (up and downstream).
13761         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
13762         my_filter thing.
13763
13764 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13765
13766         * docs/pwg/advanced-tagging.xml:
13767           Add docs about tag writing.
13768
13769 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13770
13771         * docs/pwg/advanced-tagging.xml:
13772           Add a part about tag reading and application signalling... Tag
13773           writing still needs to be documented.
13774         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
13775           We can set file locations in READY, too.
13776
13777 2004-01-29  Julien MOUTTE <julien@moutte.net>
13778
13779         * docs/random/ds/element-checklist: Adding some notes about src
13780         events.
13781
13782 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13783
13784         * docs/random/mimetypes:
13785           Update docs to point to correct elements for various mimetypes, and
13786           some more errors pointed out by St??phane LOEUILLET (aka LeRoutier)
13787           <stephane.loeuillet@tiscali.fr>.
13788
13789 2004-01-28  David Schleef  <ds@schleef.org>
13790
13791         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
13792
13793 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13794
13795         * docs/random/mimetypes:
13796           update docs for audio/x-raw-float. Add "buffer-frames=0 means
13797           undefined"
13798         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
13799           make it only work in NULL.
13800         * gst/gstcaps.c:
13801           don't posion NULL caps
13802         * gst/gstelement.c: (gst_element_set_time):
13803           add debugging statement
13804         * gst/gstelement.c: (gst_element_emit_found_tag),
13805         (gst_element_found_tag_func), (gst_element_found_tags):
13806         * gst/gstelement.h:
13807           These functions take const taglists
13808         * gst/gstpad.c: (gst_pad_proxy_getcaps):
13809           fix memleak
13810         * gst/gstpad.c: (gst_pad_event_default):
13811           make more effort on handling discont and clocks, g_warn if everything
13812           fails
13813         * gst/gststructure.c: (gst_structure_remove_fields),
13814         (gst_structure_remove_fields_valist):
13815         * gst/gststructure.h:
13816           add gst_structure_remove_fields(_valist)
13817         * gst/gsttag.c:
13818           fix doc glitch
13819
13820 2004-01-28  David Schleef  <ds@schleef.org>
13821
13822         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
13823         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
13824         Fix memory leakage of gst_caps_to_string().
13825
13826         Use GST_PTR_FORMAT instead of gst_caps_to_string():
13827         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
13828         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
13829         (gst_spider_identity_sink_loop_type_finding):
13830         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
13831         (find_suggest):
13832         * gst/gstpad.c: (gst_pad_try_relink_filtered),
13833         (gst_pad_set_explicit_caps):
13834         * gst/parse/grammar.y:
13835
13836 2004-01-28  David Schleef  <ds@schleef.org>
13837
13838         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
13839         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
13840         * docs/random/ds/0.9-suggested-changes: Notes from Company.
13841         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
13842         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
13843         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
13844         (gst_debug_log_default), (_gst_info_printf_extension),
13845         (_gst_info_printf_extension_arginfo):  Add printf extension.
13846         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
13847         * gst/gststructure.c: (gst_structure_to_string),
13848         (_gst_structure_parse_value): Use gst_value_deserialize() and
13849         remove old code.
13850         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
13851         (gst_value_deserialize_boolean), (gst_strtoi),
13852         (gst_value_deserialize_int), (gst_value_deserialize_double),
13853         (gst_value_deserialize_string), (gst_value_deserialize): Implement
13854         a bunch of deserialize functions and gst_value_deserialize.
13855         * gst/gstvalue.h: er, _de_serialize, not unserialize
13856         * testsuite/caps/string-conversions.c: (main): We don't currently
13857         handle (float) in caps, so convert these to (double).
13858         * testsuite/debug/Makefile.am: Add new test for the printf extension
13859         * testsuite/debug/printf_extension.c: (main): same
13860
13861 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13862
13863         * docs/random/company/time:
13864           Add some docs about clocking and time
13865
13866 2004-01-28  Julien MOUTTE <julien@moutte.net>
13867
13868         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
13869
13870 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13871
13872         * docs/pwg/advanced-clock.xml:
13873         * docs/pwg/advanced-dparams.xml:
13874         * docs/pwg/advanced-events.xml:
13875         * docs/pwg/advanced-interfaces.xml:
13876         * docs/pwg/advanced-midi.xml:
13877         * docs/pwg/advanced-request.xml:
13878         * docs/pwg/advanced-scheduling.xml:
13879         * docs/pwg/advanced-tagging.xml:
13880         * docs/pwg/advanced-types.xml:
13881         * docs/pwg/appendix-checklist.xml:
13882         * docs/pwg/building-boiler.xml:
13883         * docs/pwg/building-chainfn.xml:
13884         * docs/pwg/building-filterfactory.xml:
13885         * docs/pwg/building-pads.xml:
13886         * docs/pwg/building-props.xml:
13887         * docs/pwg/building-signals.xml:
13888         * docs/pwg/building-state.xml:
13889         * docs/pwg/building-testapp.xml:
13890         * docs/pwg/intro-basics.xml:
13891         * docs/pwg/intro-preface.xml:
13892         * docs/pwg/other-autoplugger.xml:
13893         * docs/pwg/other-sink.xml:
13894         * docs/pwg/other-source.xml:
13895         * docs/pwg/titlepage.xml:
13896           fix up id's
13897
13898 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13899
13900         * docs/95NonPath:
13901         * docs/HACKING:
13902         * docs/README:
13903         * docs/building-the-docs-on-debian:
13904           collect relevant bits of doc info
13905
13906 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13907
13908         * docs/pwg/advanced_tagging.xml:
13909           Half-assed commit so Thomas can re-arrange document IDs here to be
13910           consistent, too.
13911
13912 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13913
13914         * docs/manual/autoplugging.xml:
13915         * docs/manual/bins-api.xml:
13916         * docs/manual/bins.xml:
13917         * docs/manual/buffers-api.xml:
13918         * docs/manual/buffers.xml:
13919         * docs/manual/clocks.xml:
13920         * docs/manual/components.xml:
13921         * docs/manual/cothreads.xml:
13922         * docs/manual/debugging.xml:
13923         * docs/manual/dparams-app.xml:
13924         * docs/manual/dynamic.xml:
13925         * docs/manual/elements-api.xml:
13926         * docs/manual/elements.xml:
13927         * docs/manual/factories.xml:
13928         * docs/manual/gnome.xml:
13929         * docs/manual/goals.xml:
13930         * docs/manual/helloworld.xml:
13931         * docs/manual/helloworld2.xml:
13932         * docs/manual/init-api.xml:
13933         * docs/manual/intro.xml:
13934         * docs/manual/links-api.xml:
13935         * docs/manual/links.xml:
13936         * docs/manual/manual.xml:
13937         * docs/manual/motivation.xml:
13938         * docs/manual/pads-api.xml:
13939         * docs/manual/pads.xml:
13940         * docs/manual/plugins-api.xml:
13941         * docs/manual/plugins.xml:
13942         * docs/manual/programs.xml:
13943         * docs/manual/queues.xml:
13944         * docs/manual/quotes.xml:
13945         * docs/manual/schedulers.xml:
13946         * docs/manual/states-api.xml:
13947         * docs/manual/states.xml:
13948         * docs/manual/threads.xml:
13949         * docs/manual/typedetection.xml:
13950         * docs/manual/xml.xml:
13951           use chapter, part, section or misc as id starts for all bits
13952
13953 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13954
13955         * docs/gst/gstreamer-sections.txt:
13956           Fix up TITLE of the sections
13957
13958 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13959
13960         * docs/pwg/advanced_interfaces.xml:
13961           Add documentation on propertyprobing.
13962         * docs/pwg/advanced_events.xml:
13963         * docs/pwg/advanced_tagging.xml:
13964         * docs/pwg/building_boiler.xml:
13965         * docs/pwg/building_filterfactory.xml:
13966         * docs/pwg/pwg.xml:
13967           Move filterfactory and tagging into their own chapter, add a chapter
13968           on events. all these are empty placeholders that will be filled in
13969           some day.
13970
13971 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13972
13973         * docs/pwg/advanced_interfaces.xml:
13974           Docs for mixer interface. Also a check for website uploading.
13975
13976 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13977
13978         * docs/HACKING:
13979         * docs/Makefile.am:
13980         * docs/faq/Makefile.am:
13981         * docs/gst/Makefile.am:
13982         * docs/gst/tmpl/gstelement.sgml:
13983         * docs/gst/tmpl/gstplugin.sgml:
13984         * docs/gst/tmpl/gstreamer-unused.sgml:
13985         * docs/libs/Makefile.am:
13986         * docs/manual/Makefile.am:
13987         * docs/manuals.mak:
13988         * docs/pwg/Makefile.am:
13989         * docs/upload.mak:
13990           Separate out upload target and make it similar for
13991           both docbook and gtk-doc docs
13992
13993 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13994
13995         * docs/manuals.mak:
13996           Fix upload target to work with freedesktop
13997
13998 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13999
14000         * docs/pwg/advanced_types.xml:
14001           Add notes on creating your own types.
14002         * docs/pwg/building_boiler.xml:
14003         * docs/pwg/building_pads.xml:
14004         * docs/pwg/building_state.xml:
14005           Add some stuff about how to retrieve values from structures, how
14006           that relates to types and change layout slightly again to be almost
14007           perfect.
14008
14009 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14010
14011         * docs/pwg/advanced_dparams.xml:
14012         * docs/pwg/advanced_scheduling.xml:
14013           Change index layout slightly.
14014
14015 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14016
14017         * docs/pwg/advanced_clock.xml:
14018         * docs/pwg/advanced_interfaces.xml:
14019         * docs/pwg/advanced_midi.xml:
14020           General placeholders for now.
14021         * docs/pwg/advanced_request.xml:
14022           Explanation about sometimes and request pads.
14023         * docs/pwg/advanced_scheduling.xml:
14024           Concept of bytestream, loopfunctions and schedulers.
14025         * docs/pwg/building_boiler.xml:
14026           Add something about plugin-init.
14027
14028 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
14029
14030         * docs/pwg/building_pads.xml:
14031           Fix broken docbook
14032
14033 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14034
14035         * docs/pwg/advanced_interfaces.xml:
14036         * docs/pwg/pwg.xml:
14037           Add as a placeholder for future filling-in.
14038         * docs/pwg/basics_autoplugging.xml:
14039         * docs/pwg/basics_buffers.xml:
14040         * docs/pwg/basics_elements.xml:
14041         * docs/pwg/basics_events.xml:
14042         * docs/pwg/basics_plugins.xml:
14043         * docs/pwg/basics_types.xml:
14044           Remove, because unused (this is all in intro_basics.xml).
14045         * docs/pwg/building_signals.xml:
14046           Short intro to signals + reference to GObject docs - we really
14047           shouldn't go into these sort of things to deply because we don't
14048           use them that extensively anyway.
14049         * docs/pwg/building_state.xml:
14050           Explanation of states. Benjamin, please check.
14051         * docs/pwg/building_testapp.xml:
14052           Put everything in one page - putting only a few lines of content
14053           per page doesn't really make sense.
14054
14055           Time to get into the advanced topics. ;).
14056
14057 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14058
14059         * docs/pwg/advanced_types.xml:
14060           Finish documenting the current state of mimetypes.
14061         * docs/pwg/building_boiler.xml:
14062         * docs/pwg/building_chainfn.xml:
14063         * docs/pwg/building_pads.xml:
14064         * docs/pwg/building_props.xml:
14065         * docs/pwg/building_testapp.xml:
14066           Start documenting the "how to build a simple audio filter" part
14067           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
14068           states and (maybe?) a short introduction to capsnego in the chapter
14069           on pads (building_pads.xml). Capsnego should probably be explained
14070           fully in advanced_capsnego.xml or so.
14071
14072 2004-01-26  David Schleef  <ds@schleef.org>
14073
14074         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
14075         * gst/gstpad.h: Add new function to allow element to (somewhat)
14076         specify non-fixed caps on a pad.
14077         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
14078         that I added a few weeks ago.
14079
14080 2004-01-26  David Schleef  <ds@schleef.org>
14081
14082         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
14083           making try_set_caps() work with non-fixed caps.
14084
14085 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14086
14087         * docs/pwg/advanced_types.xml:
14088         * docs/pwg/intro_basics.xml:
14089         * docs/pwg/intro_preface.xml:
14090         * docs/pwg/pwg.xml:
14091         * docs/pwg/titlepage.xml:
14092           First try to resurrect the PWG. I'm halfway integrating the mimetypes
14093           in here (docs/random/mimetypes), and will from there on work on both
14094           updating outdated parts and adding missing parts.
14095           That doesn't mean I'll fix it completely, but I'll try at least. ;).
14096
14097 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
14098
14099         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
14100           policy is set
14101
14102 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14103
14104         * gst/gstelement.h:
14105           remove gst_element_factory_get_version. It doesn't exist anymore.
14106         * gst/gstplugin.c:
14107         * gst/gstplugin.h:
14108           remove gst_plugin_set_name and change gst_plugin_get_longname to
14109           gst_plugin_get_description to match code.
14110         * gst/gsterror.h:
14111           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
14112         * gst/gstpad.c: (gst_pad_try_set_caps):
14113           make it work with nonfixed caps.
14114           Note that even in the nonfixed case the link function of the pad
14115           that tries to set caps isn't called.
14116
14117 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14118
14119         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
14120           fix bug where buffer was not assembled correctly
14121         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
14122           silence by default
14123         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
14124           only seek if there's no more buffers that could work without seeking
14125
14126 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14127
14128         * gst/gsttag.c: (_gst_tag_initialize):
14129         * gst/gsttag.h:
14130           Add application tag (for encoding/muxing app).
14131
14132 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14133
14134         * autogen.sh:
14135           make autopoint force, and libtoolize not copy
14136         * common/m4/as-docbook.m4:
14137           added docbook xml catalog setup check
14138         * common/m4/gst-doc.m4:
14139           use docbook check
14140
14141 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
14142
14143         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
14144         * gst/gsttag.h:
14145           add GstTagFlag
14146
14147 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14148
14149         * docs/gst/gstreamer-sections.txt:
14150         * docs/gst/tmpl/gst.sgml:
14151         * docs/gst/tmpl/gstbuffer.sgml:
14152         * docs/gst/tmpl/gstclock.sgml:
14153         * docs/gst/tmpl/gstelement.sgml:
14154         * docs/gst/tmpl/gstreamer-unused.sgml:
14155         * docs/gst/tmpl/gstxml.sgml:
14156           sync latest API changes to docs
14157
14158 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14159
14160         * gst/gstpluginfeature.c:
14161           fix doc snippet
14162         * tools/gst-inspect.c: (print_element_list):
14163           fix output of typefind
14164           add GPL header
14165         * tools/gst-launch.c:
14166           add GPL header
14167
14168 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14169
14170         * gst/elements/Makefile.am:
14171         * gst/elements/gstelements.c:
14172         * gst/elements/gsttypefindelement.c:
14173         * gst/elements/gsttypefindelement.h:
14174         * po/POTFILES.in:
14175         * po/fr.po:
14176         * po/nl.po:
14177           renamed gsttypefindelement to gsttypefind, conserving CVS history
14178
14179 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14180
14181         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
14182         * gst/gsttag.h:
14183           add some tags used in ogg as well
14184           fix _ in replaygain tags
14185
14186 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14187
14188         * gst/gsterror.h:
14189           fix wrong GST_LIBRARY_ERROR_ENCODE addition
14190
14191 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14192
14193         * gst/gstelement.c: (gst_element_error_full):
14194         * gst/gstelement.h:
14195           change _extended to _full
14196
14197 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14198
14199         reviewed by: <delete if not using a buddy>
14200
14201         * docs/gst/tmpl/gst.sgml:
14202         * docs/gst/tmpl/gstbuffer.sgml:
14203         * docs/gst/tmpl/gstclock.sgml:
14204         * docs/gst/tmpl/gstelement.sgml:
14205         * docs/gst/tmpl/gstreamer-unused.sgml:
14206         * docs/gst/tmpl/gstxml.sgml:
14207         * gst/gstelement.c: (gst_element_error_full):
14208         * gst/gstelement.h:
14209
14210 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14211
14212         * gst/gstelement.h: fix _gst_element_error_printf prototype
14213
14214 2004-01-20  David Schleef  <ds@schleef.org>
14215
14216         * gst/gststructure.c: (gst_structure_to_string):
14217         Convert function to use gst_value_serialize().
14218         * gst/gstvalue.c: (gst_value_serialize_list),
14219         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
14220         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
14221         (gst_value_serialize_int), (gst_value_serialize_double),
14222         (gst_string_wrap), (gst_value_serialize_string),
14223         (gst_value_serialize), (gst_value_deserialize):
14224         * gst/gstvalue.h:
14225         Add implementations for serialize.
14226
14227 2004-01-20  Julien MOUTTE  <julien@moutte.net>
14228
14229         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
14230         we want to keep that one in the future or change xvidenc.c to use 
14231         another error.
14232
14233 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14234
14235         * gst/gstelement.c: (_gst_element_error_printf):
14236         * gst/gstelement.h:
14237           privatise function
14238
14239 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14240
14241         * docs/random/error:
14242           doc explaining error system
14243         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
14244           cleanup
14245
14246 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14247
14248         * gst/gst-i18n-app.h:
14249         * gst/gst-i18n-lib.h:
14250           remove inclusion of config.h
14251         * po/POTFILES.in:
14252         * po/nl.po:
14253           add gst/gstelement.c
14254
14255 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14256
14257         * po/nl.po: updated Dutch translation
14258
14259 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14260
14261         * gst/gsterror.c: (_gst_core_errors_init),
14262         (_gst_library_errors_init), (_gst_resource_errors_init),
14263         (_gst_stream_errors_init):
14264         remove ending punctuation dots
14265
14266 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14267
14268         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
14269         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
14270         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
14271         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
14272         (gst_pipefilter_chain), (gst_pipefilter_open_file):
14273         use GST_ERROR_SYSTEM
14274
14275 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14276
14277         * gst/gstelement.c: (gst_element_error_printf),
14278         (gst_element_error_extended):
14279         * gst/gstelement.h:
14280           add a helper printf function so we can have NULL values passed.
14281
14282 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14283
14284         * gst/gstelement.h:
14285           add G_STMT macros to gst_element_error, which isn't strictly
14286           necessary but people tell me to anyway.
14287
14288 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
14289
14290         * gst/Makefile.am:
14291         * gst/autoplug/gstspideridentity.c:
14292         (gst_spider_identity_sink_loop_type_finding):
14293         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
14294         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
14295         (gst_filesink_close_file), (gst_filesink_handle_event),
14296         (gst_filesink_chain):
14297         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
14298         (gst_filesrc_map_region), (gst_filesrc_get_read),
14299         (gst_filesrc_open_file):
14300         * gst/elements/gstidentity.c: (gst_identity_chain):
14301         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
14302         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
14303         (gst_pipefilter_chain), (gst_pipefilter_open_file):
14304         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
14305         * gst/gst.h:
14306         * gst/gst_private.h:
14307         * gst/gstelement.c: (gst_element_class_init),
14308         (gst_element_default_error), (gst_element_error_func),
14309         (gst_element_error_extended):
14310         * gst/gstelement.h:
14311         * gst/gsterror.c: (_gst_core_errors_init),
14312         (_gst_library_errors_init), (_gst_resource_errors_init),
14313         (_gst_stream_errors_init), (gst_error_get_message):
14314         * gst/gsterror.h:
14315         * gst/gstinfo.c: (_gst_debug_init):
14316         * gst/gstmarshal.list:
14317         * gst/gstpad.c: (gst_pad_set_explicit_caps),
14318         (gst_pad_recover_caps_error), (gst_pad_pull):
14319         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
14320         * gst/schedulers/gstbasicscheduler.c:
14321         (gst_basic_scheduler_chainhandler_proxy),
14322         (gst_basic_scheduler_gethandler_proxy),
14323         (gst_basic_scheduler_cothreaded_chain):
14324         * po/POTFILES.in:
14325         * po/fr.po:
14326         * po/nl.po:
14327           change error signal
14328           add error categories
14329
14330 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
14331
14332         * gst/gsttag.c: (_gst_tag_initialize):
14333         * gst/gsttag.h:
14334         Add replaygain tag
14335
14336 2004-01-18  Colin Walters  <walters@verbum.org>
14337
14338         * examples/retag/retag.c: Call gst_init before processing
14339         program args.  Add g_assert to _link_many call.
14340
14341 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14342
14343         * gst/gstpad.c: (gst_pad_alloc_buffer):
14344           Return a newly allocated buffer when the pad has no peer.
14345
14346 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14347
14348         * gst/gstclock.c: (gst_clock_get_time):
14349           make it compile with gcc 2.95 again.
14350           Patch by Scott Wheeler
14351
14352 2004-01-15  David Schleef  <ds@schleef.org>
14353
14354         * gst/gstcaps.h:
14355         Added gst_caps_is_simple() macro.
14356         * testsuite/caps/caps.c: (test1):
14357         * testsuite/caps/intersect2.c: (main):
14358         * testsuite/caps/intersection.c: (main):
14359         Fixes to make 'make check' work again after removing
14360         gst_caps_is_chained().
14361
14362 2004-01-15  Leif Johnson <leif@ambient.2y.net>
14363
14364         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
14365         and additions to the MIDI document.
14366
14367 2004-01-15  David Schleef  <ds@schleef.org>
14368
14369         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
14370         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
14371         of GST_RPAD_, since we don't know if it's a real or ghost pad.
14372
14373 2004-01-15  David Schleef  <ds@schleef.org>
14374
14375         * gst/gstqueue.c:
14376         * gst/gstqueue.h:
14377         Fix the spelling of "treshold" and make min_threshold actually
14378         affect the queue.
14379
14380 2004-01-15  David Schleef  <ds@schleef.org>
14381
14382         * gst/gstcaps.c:
14383         Add lots of documentation.
14384         * gst/gstcaps.h:
14385         Deprecate a few functions.
14386         * gst/gstpad.c:
14387         Removed use of deprecated functions.
14388
14389 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14390
14391         * gst/gstpad.c: (gst_pad_is_linked):
14392         * gst/gstpad.h:
14393           implement gst_pad_is_linked
14394         * gst/gstelement.h:
14395           reserve space for initiate_state_change
14396
14397 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14398
14399         * gst/autoplug/gstspideridentity.c:
14400         (gst_spider_identity_sink_loop_type_finding):
14401           break infinite loop by just returning instead of looping
14402         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
14403           set event time difference correctly. Set it to 1 second instead
14404           of 100ms to be more tolerant
14405         * gst/gstelement.c: (gst_element_set_time):
14406           add debugging output
14407
14408 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14409
14410         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
14411           query if buffers are inside the pool, ignore events
14412
14413 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14414
14415         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
14416         (gst_clock_set_speed), (gst_clock_set_active),
14417         (gst_clock_is_active), (gst_clock_reset),
14418         (gst_clock_handle_discont):
14419         * gst/gstclock.h:
14420           deprecate old interface and disable functions that aren't in use
14421           anymore.
14422         * gst/gstelement.h:
14423         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
14424         (gst_element_set_time), (gst_element_adjust_time):
14425           add concept of "element time" and functions to get/set this time.
14426         * gst/gstelement.c: (gst_element_change_state):
14427           update element time correctly.
14428         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
14429           This is a debug message, not a g_critical.
14430         * gst/gstpad.c: (gst_pad_event_default):
14431           handle discontinuous events right with element time.
14432         * gst/gstscheduler.c: (gst_scheduler_state_transition):
14433           update to clocking fixes.
14434           set clocks on elements in READY=>PAUSED. The old behaviour caused
14435           a wrong element time on the first element that started playing.
14436         * gst/schedulers/gstbasicscheduler.c:
14437         (gst_basic_scheduler_class_init):
14438         * gst/schedulers/gstoptimalscheduler.c:
14439         (gst_opt_scheduler_class_init):
14440           remove code that just implements the default behaviour.
14441         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
14442           update to use new clocking functions
14443         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
14444         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
14445           update to test new element time.
14446         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
14447           use _get_allowed_caps instead of _get_caps. This catches filtered
14448           caps correctly.
14449         * testsuite/debug/commandline.c:
14450           update for new GST_DEBUG syntax.
14451         * testsuite/threads/Makefile.am:
14452           disable a test that only works sometimes.
14453
14454 2004-01-13  Julien MOUTTE <julien@moutte.net>
14455
14456         * po/LINGUAS: Adding fr.
14457         * po/fr.po: Adding french translation.
14458
14459 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14460
14461         * gst/parse/grammar.y:
14462         * po/POTFILES.in:
14463         * po/nl.po:
14464         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
14465           translate parsing error messages
14466
14467 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14468
14469         * po/POTFILES.in: adding gst-launch
14470         * po/nl.po: updated translation, all 99 strings translated
14471         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
14472         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
14473           fix strings for translation
14474
14475 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14476
14477         * gst/gst.c:
14478           - capitalize beginnings of popt options
14479           - fix strings for translation
14480           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
14481
14482 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14483
14484         * po/README: add some notes on how to update translations
14485
14486 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14487
14488         * ABOUT-NLS: removed, is autogenerated from autopoint
14489         * autogen.sh: add autopoint stuff
14490         * configure.ac: fix up gettext stuff
14491         * gst/Makefile.am: add i18n headers to noinst_HEADERS
14492         * gst/elements/gsttypefindelement.c: add header include
14493         * gst/gettext.h: add header, copy from system-installed header
14494         * gst/gst-i18n-app.h: to be included by each app having translations
14495         * gst/gst-i18n-lib.h: to be included by each lib having translations
14496         * gst/gst.c: (init_pre): fix up gettext calls
14497         * gst/gst_private.h: remove i18n stuff, moving to separate headers
14498         * po/LINGUAS: the new way to specify translations present
14499         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
14500         * po/Makevars: the variables filled in for GStreamer
14501         * po/POTFILES.in: added new files with translations
14502         * po/de.po: has new strings
14503         * po/nl.po: readded, has new strings
14504
14505 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14506
14507         * gst/gsttag.c: fix some strings marked for translation
14508
14509 2004-01-13  Iain <iain@prettypeople.org>
14510
14511         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
14512         group when we add an element to it, cos we unref it when we remove one
14513
14514 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
14515
14516         * testsuite/debug/commandline.c: (debug_not_reached):
14517         * testsuite/debug/output.c: (check_message):
14518           fix testsuite
14519
14520 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14521
14522         * examples/cutter/.cvsignore:
14523         * examples/helloworld/.cvsignore:
14524         * examples/launch/.cvsignore:
14525         * examples/manual/.cvsignore:
14526         * examples/mixer/.cvsignore:
14527         * examples/pingpong/.cvsignore:
14528         * examples/plugins/.cvsignore:
14529         * examples/queue/.cvsignore:
14530         * examples/queue2/.cvsignore:
14531         * examples/queue3/.cvsignore:
14532         * examples/queue4/.cvsignore:
14533         * examples/retag/.cvsignore:
14534         * examples/thread/.cvsignore:
14535         * examples/typefind/.cvsignore:
14536         * examples/xml/.cvsignore:
14537         * gst/.cvsignore:
14538         * gst/autoplug/.cvsignore:
14539         * gst/elements/.cvsignore:
14540         * gst/indexers/.cvsignore:
14541         * gst/parse/.cvsignore:
14542         * gst/registries/.cvsignore:
14543         * gst/schedulers/.cvsignore:
14544         * libs/gst/bytestream/.cvsignore:
14545         * libs/gst/control/.cvsignore:
14546         * libs/gst/getbits/.cvsignore:
14547         * tests/.cvsignore:
14548         * tests/bufspeed/.cvsignore:
14549         * tests/instantiate/.cvsignore:
14550         * tests/memchunk/.cvsignore:
14551         * tests/muxing/.cvsignore:
14552         * tests/sched/.cvsignore:
14553         * tests/seeking/.cvsignore:
14554         * tests/threadstate/.cvsignore:
14555         * testsuite/.cvsignore:
14556         * testsuite/caps/.cvsignore:
14557         * testsuite/cleanup/.cvsignore:
14558         * testsuite/dynparams/.cvsignore:
14559         * testsuite/plugin/.cvsignore:
14560         * tools/.cvsignore:
14561           update - this is huge, because it includes *.bb, *.bbg and *.da files
14562           which are generated for gcov.
14563
14564 2004-01-11  David Schleef  <ds@schleef.org>
14565
14566         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
14567         a function to parse integers in ways that strto[u]l() does not.
14568
14569 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14570
14571         * tools/gst-inspect.c: (print_caps):
14572           improve output of caps a bit
14573
14574 2004-01-11  David Schleef  <ds@schleef.org>
14575
14576         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
14577         inherit correct flags (READONLY and DONTKEEP).
14578
14579 2004-01-11  David Schleef  <ds@schleef.org>
14580
14581         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
14582         (gst_filesrc_map_region):
14583         * gst/gstbuffer.c: (_gst_buffer_initialize),
14584         (_gst_buffer_sub_free), (gst_buffer_default_copy),
14585         (gst_buffer_new), (gst_buffer_create_sub),
14586         (gst_buffer_is_span_fast), (gst_buffer_span):
14587         * gst/gstbuffer.h:
14588         Change GstBuffer private structure element names. (all files)
14589         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
14590         (gst_queue_link):
14591         * gst/gstqueue.h:
14592         Implement getcaps/pad_link functions that handle the case where
14593         there are data in the queue.
14594
14595 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14596
14597         * gst/elements/gstbufferstore.c:
14598           initialize debugging structure correctly
14599         * gst/elements/gsttee.c: (gst_tee_set_property):
14600           g_object_notify when property was changed
14601         * gst/elements/gsttypefindelement.c:
14602         (gst_type_find_element_change_state):
14603           clear caps correctly
14604
14605 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14606
14607         * gst/gstqueue.c: (gst_queue_init):
14608           Use better defaults for when a queue should block. This
14609           gets rid of jerky playback for quite a few files.
14610           It takes more memory.
14611
14612 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
14613
14614         (gst_xml_registry_parse_padtemplate):
14615           make critical message slightly more useful
14616
14617 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14618
14619         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
14620         (gst_debug_message_get), (gst_debug_log_default):
14621         * gst/gstinfo.h:
14622           Change gst_debug_log(_valist) to take a const format string.
14623           Change prototype of log function and functions using those to 
14624           take a GstDebugMessage instead of a string that requires using
14625           gst_debug_message_get.
14626
14627 2004-01-08  David Schleef  <ds@schleef.org>
14628
14629         * Makefile.am:
14630         * configure.ac:
14631         Add option --enable-gcov to build GStreamer with -fprofile-arcs
14632         and -ftest-coverage, which allows gcov to show information about
14633         testsuite coverage.
14634
14635 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14636
14637         * gst/gstutils.h:
14638           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
14639           GST_PARENT_CALL_WITH_DEFAULT
14640         * gst/elements/gstaggregator.c: 
14641         * gst/elements/gstbufferstore.c: 
14642         * gst/elements/gstfakesink.c: 
14643         * gst/elements/gstfakesrc.c: 
14644         * gst/elements/gstfdsink.c: 
14645         * gst/elements/gstfdsrc.c: 
14646         * gst/elements/gstfilesink.c: 
14647         * gst/elements/gstfilesrc.c: 
14648         * gst/elements/gstidentity.c: 
14649         * gst/elements/gstmd5sink.c: 
14650         * gst/elements/gstmultidisksrc.c:
14651         * gst/elements/gstpipefilter.c: 
14652         * gst/elements/gstshaper.c:
14653         * gst/elements/gststatistics.c:
14654         * gst/elements/gsttee.c:
14655         * gst/elements/gsttypefindelement.c:
14656           use them.
14657
14658 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
14659
14660         * docs/gst/gstreamer-docs.sgml: remove props
14661         * docs/gst/gstreamer-sections.txt: remove props
14662         * docs/gst/tmpl/gst.sgml:
14663         * docs/gst/tmpl/gstbin.sgml:
14664         * docs/gst/tmpl/gstbuffer.sgml:
14665         * docs/gst/tmpl/gstcaps.sgml:
14666         * docs/gst/tmpl/gstclock.sgml:
14667         * docs/gst/tmpl/gstelement.sgml:
14668         * docs/gst/tmpl/gstindex.sgml:
14669         * docs/gst/tmpl/gstobject.sgml:
14670         * docs/gst/tmpl/gstpad.sgml:
14671         * docs/gst/tmpl/gstpadtemplate.sgml:
14672         * docs/gst/tmpl/gstreamer-unused.sgml:
14673         * docs/gst/tmpl/gstthread.sgml:
14674         * docs/gst/tmpl/gstxml.sgml:
14675           sync with code reorganization
14676
14677 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
14678
14679         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
14680         Make the 'Could not find compatible pad' message more informative.
14681
14682 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14683                                                                                 
14684         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
14685           Fix for if we pass NULL as property to location.
14686         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
14687         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
14688           Fix for instantiate-test (see below).
14689         * gst/gststructure.c: (_gst_structure_parse_value):
14690           Fix compile error on gcc-2.96.
14691         * configure.ac:
14692         * tests/Makefile.am:
14693         * tests/instantiate/Makefile.am:
14694         * tests/instantiate/create.c: (create_all_elements), (main):
14695           Add a test that instantiates all elements. This makes it easy to
14696           track dead code for old API/design (like setting event functions
14697           on sink pads and so on).
14698
14699 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
14700
14701         * gst/gstcaps.c: (gst_caps_append_structure):
14702           Move the poisoning to allow a NULL structure
14703         * gst/gstevent.c: (_gst_event_free):
14704           When freeing a navigation event, free the structure
14705           also
14706
14707 2004-01-04  David Schleef  <ds@schleef.org>
14708
14709         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
14710         Remove usage of gst_pad_proxy_fixate.
14711         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
14712         (gst_caps_split_one), (gst_caps_replace):
14713         Add poisoning code.
14714         * gst/gstmarshal.list:
14715         Add pointer__pointer for fixate signal
14716         * gst/gstpad.c: (gst_real_pad_class_init),
14717         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
14718         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
14719         (gst_pad_set_explicit_caps), (gst_pad_template_new):
14720         Add poisoning code. Add fixate signal on RealPad. Change
14721         set_explicit_caps() to take const GstCaps, like try_set_caps().
14722         * gst/gstpad.h:
14723         * testsuite/caps/Makefile.am:
14724         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
14725
14726 2004-01-03  David Schleef  <ds@schleef.org>
14727
14728         * gst/elements/gsttypefindelement.c:
14729         (gst_type_find_element_have_type), (gst_type_find_element_init):
14730         Use gst_pad_use_explicit_caps for src pad.
14731         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
14732         before using it.
14733
14734 2004-01-03  David Schleef  <ds@schleef.org>
14735
14736         * gst/gstelement.c: (gst_element_link_pads_filtered),
14737         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
14738         that linking was successful.
14739         * gst/gstpad.c: (gst_pad_link_free),
14740         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
14741         (gst_pad_link_try), (gst_pad_link_unnegotiate),
14742         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
14743         GstPadLinkReturn correctly between functions, and don't fail
14744         when DELAYED is used (DELAYED is very important).  Better
14745         cleanup on unlinking and unnegotiation.  Should fix some spider
14746         bugs.
14747
14748 2004-01-02  David Schleef  <ds@schleef.org>
14749
14750         * gst/gstelement.c: (gst_element_class_init),
14751         (gst_element_base_class_init): ->padtemplates should be cleared
14752         in base_init, since we need to have a fresh list for every
14753         class.  (Alternately, we chould copy the list and share the
14754         actual pad templates (not the list), but that would require
14755         changing every plugin to move pad template registration from
14756         base_init to class_init.)
14757
14758 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14759
14760         * gst/gstelement.c: (gst_element_class_add_pad_template):
14761           Refuse registering a pad template if another pad template
14762           with the same name already exists (#114715).
14763
14764 2004-01-02  David Schleef  <ds@schleef.org>
14765
14766         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
14767         (gst_caps_is_equal_fixed): Add new function.
14768         * gst/gstcaps.h: ditto.
14769         * gst/gstpad.c: (gst_real_pad_class_init),
14770         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
14771         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
14772         check new caps against existing caps -- if they're the same, return
14773         OK without renegotiating.  caps-nego-failed signal fixed so that
14774         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
14775         to save an extra caps copy.  Don't complete negotiation if a pad
14776         link function returns DELAYED.
14777
14778 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14779
14780         * gst/gstpad.c: (gst_pad_try_relink_filtered):
14781           Fix wrong g_return_if_fail
14782
14783 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
14784
14785         * gst/gstbin.c: (gst_bin_class_init):
14786         Change the marshalling of element_added/element_removed
14787         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
14788         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
14789
14790 2004-01-01  David Schleef  <ds@schleef.org>
14791
14792         * gst/gstpad.c: (gst_pad_set_explicit_caps),
14793         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
14794         (gst_pad_use_explicit_caps):
14795         * gst/gstpad.h:
14796         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
14797         to use an internal getcaps and link fuction so that negotiation
14798         always results in the explicitly set caps.
14799         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
14800         are particularly useful for decoders.
14801
14802 2003-12-31  David Schleef  <ds@schleef.org>
14803
14804         * gst/elements/gstidentity.c: (gst_identity_class_init),
14805         (gst_identity_init), (gst_identity_chain),
14806         (gst_identity_set_property), (gst_identity_get_property):
14807         * gst/elements/gstidentity.h:
14808         * gst/gstqueue.c: (gst_queue_init):
14809           Negotiation fixes.
14810
14811 2003-12-31  David Schleef  <ds@schleef.org>
14812
14813         * gst/gstcaps.c: (gst_caps_intersect),
14814         (_gst_caps_normalize_foreach), (gst_caps_normalize):
14815           Implement gst_caps_normalize().
14816         * testsuite/caps/normalisation.c: (main):
14817           Add an additional test
14818
14819 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14820
14821         * gst/gstqueue.c: (gst_queue_init):
14822           use gst_pad_proxy_getcaps()
14823
14824 2003-12-31  David Schleef  <ds@schleef.org>
14825
14826         * gst/elements/gstshaper.c: (gst_shaper_link):
14827         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
14828         * gst/gstqueue.c: (gst_queue_link):
14829           Negotiation fixes.
14830
14831 2003-12-31  David Schleef  <ds@schleef.org>
14832
14833         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
14834         * gst/gstpad.h: Add functions that are useful as default pad
14835         link and fixate functions for elements.
14836
14837 2003-12-30  David Schleef  <ds@schleef.org>
14838
14839         * gst/gstpad.c: (gst_pad_link_try):
14840           Fix segfault when attempting to return to old caps
14841
14842 2003-12-29  David Schleef  <ds@schleef.org>
14843
14844         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
14845         (gst_caps_structure_simplify), (gst_caps_simplify):
14846         * gst/gstcaps.h:
14847           Add simplify function
14848         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
14849         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
14850         * gst/gstpad.h:
14851           Copy over srcnotify, sinknotify when calling old pad_link
14852           functions.  Add new is_negotiated() function.
14853         * gst/gststructure.c: (gst_structure_copy):
14854           Fix an incredibly stupid bug that should have been noticed
14855           weeks ago.  _copy() returned the argument, not the new copy.
14856
14857 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14858
14859         * gst/gstcaps.c: (gst_caps_append):
14860           add sanity checks
14861         * gst/gstcaps.h: (gst_caps_debug):
14862           remove, it doesn't exist anymore.
14863         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
14864         (gst_element_threadsafe_properties_post_run):
14865           make debugging messages not clutter up THREAD debug category
14866         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
14867         (gst_element_change_state):
14868           update to new caps API
14869         * gst/gstinterface.c: (gst_implements_interface_cast):
14870           don't put vital code in g_return_if_fail
14871         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
14872         (gst_pad_link_filtered):
14873           add pst_pad_try_link and use it.
14874         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
14875           implement correctly, deprecate first one.
14876         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
14877           add and implement.
14878         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
14879           implement.
14880         (gst_pad_get_negotiated_caps):
14881           add and implement. Make GST_PAD_CAPS call this function.
14882         (gst_pad_get_caps):
14883           remove unneeded check..
14884         (gst_pad_recover_caps_error):
14885           disable, always return FALSE.
14886         (gst_real_pad_dispose):
14887           don't free caps and appfilter anymore, they're unused.
14888         * gst/gstpad.h:
14889           Reflect changes mentioned above.
14890         * gst/gstsystemclock.c: (gst_system_clock_wait):
14891           Make 'clock is way behind' a debugging message.
14892         * gst/gstthread.c: (gst_thread_change_state):
14893           Fix debugging message
14894
14895 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
14896
14897         * gst/gstinfo.h:
14898           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
14899         * docs/gst/tmpl/gstreamer-unused.sgml:
14900           removed all traces of cvs conflicts
14901
14902 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14903
14904         * configure.ac:
14905         * gst/schedulers/cothreads_compat.h:
14906         * libs/Makefile.am:
14907           remove last instances of wingo cothread usage
14908
14909 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14910
14911         * gst/gstplugin.c:
14912         * gst/gstversion.h.in:
14913         * gst/parse/grammar.y:
14914           change comment block from /** to /* when not gtk-doc comments
14915
14916 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14917
14918         * gst/gst.c: whitespace and doc style fixes
14919
14920 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14921
14922         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
14923
14924 2003-12-24  Colin Walters  <walters@verbum.org>
14925
14926         * gst/elements/gsttypefindelement.c:
14927           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
14928           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
14929           Don't double-free caps.
14930
14931 2003-12-23  David Schleef  <ds@schleef.org>
14932
14933         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
14934           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
14935           Many little fixes and additions of debug statements to
14936           get rhythmbox working.
14937
14938 2003-12-23  Colin Walters  <walters@verbum.org>
14939
14940         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
14941         Use GST_PAD_LINK_SUCCESSFUL.
14942
14943 2003-12-23  David Schleef  <ds@schleef.org>
14944
14945         * gst/elements/gstaggregator.c:
14946         * gst/elements/gsttee.c:
14947           Use gst_pad_proxy_getcaps().
14948         * gst/gstpad.c:
14949         * gst/gstpad.h:
14950           Add gst_pad_proxy_getcaps(), which filter elements can use
14951           as a generic getcaps implementation.
14952           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14953           was advertised.
14954
14955 2003-12-23  David Schleef  <ds@schleef.org>
14956
14957         * gst/gstpad.c:
14958           Rearrange/rewrite much of the pad negotiation code, since it
14959           resembled pasta.  This actually changes the way some
14960           negotiation works, since the previous code was inconsistent
14961           depending on how it was invoked.  Add (internal) structure
14962           GstPadLink, which is used to hold some information (more in
14963           the future) about the link between two pads.  Fixes a number
14964           of bugs, including random lossage of filter caps when the
14965           initial negotiation is delayed.  A few functions are still
14966           unimplemented.
14967         * gst/gstpad.h:
14968           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14969           these when testing GstPadLinkReturn values instead of comparing
14970           directly.
14971
14972 2003-12-23  David Schleef  <ds@schleef.org>
14973
14974         * gst/gstvalue.c: 
14975         * gst/gstvalue.h:
14976           Rearrange lots of code.  Change registration of compare function
14977           into registration of compare/serialize/deserialize functions.
14978           Doesn't include implementation of gst_value_[de]serialize(),
14979           but that should be easy.
14980
14981 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14982
14983         * docs/gst/gstreamer-sections.txt:
14984         * docs/gst/tmpl/gstprops.sgml: removed
14985         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14986           David removed props and caps code, so let's remove their docs as well.
14987           Removed all no longer existing symbols from gstreamer-sections.txt
14988           
14989 2003-12-22  Colin Walters  <walters@verbum.org>
14990
14991         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14992           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14993           of tags directly.
14994
14995 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14996
14997         * gst/elements/gstelements.c:
14998           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14999         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
15000           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
15001           gst_caps (peer).
15002
15003 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
15004
15005         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
15006         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
15007         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
15008         (gst_spider_identity_sink_loop_type_finding):
15009         * gst/autoplug/gstspideridentity.h:
15010           Fix autoplugging in spider element, so it works with new caps.
15011           This was mainly caused by identifying empty caps incorrectly.
15012
15013 2003-12-22  David Schleef  <ds@schleef.org>
15014
15015         * gststructure.c, gstvalue.c, gstvalue.h: Add
15016           gst_value_init_and_copy() and use it, to avoid silly mistakes in
15017           using g_value_copy()
15018
15019 2003-12-21  David Schleef  <ds@schleef.org>
15020
15021         * many, many files: Merge CAPS branch.  This includes:
15022           - implemention of GstValue and several GstValue types
15023           - implemention of GstStructure
15024           - entire rewrite of GstCaps
15025           - removal of GstProps
15026           - many changes to GstPad to compensate for new caps paradigm
15027           - removal of GstBufferpool
15028         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
15029         gstvalue.h, gst/gstcaps[2]*.[ch]:
15030           - rename gstcaps2.[ch] to gstcaps.[ch]
15031
15032 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
15033
15034         * gst/gstqueue.c: (gst_queue_handle_pending_events),
15035         (gst_queue_chain), (gst_queue_handle_src_event):
15036           implement timeout for sending events. Workaround for if the
15037           pipeline on this queue is not passing any data.
15038
15039 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
15040                                                                                 
15041         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
15042         * moved CVS to freedesktop.org