fdc6107505f70b2a4101039215c0237bb260aa80
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-09-05  Andy Wingo  <wingo@pobox.com>
2
3         * gst/registries/gstxmlregistry.h:
4         * gst/registries/gstxmlregistry.c: Um... resurrect...
5         
6 2005-09-05  Andy Wingo  <wingo@pobox.com>
7
8         * gst/registries/gstxmlregistry.h:
9         * gst/registries/gstxmlregistry.c: Remove from CVS, they were
10         replaced by the libxml registry a while back
11
12 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13
14         * docs/gst/tmpl/gstplugin.sgml:
15         * gst/elements/gstelements.c:
16         * gst/gst.c:
17         * gst/gstplugin.c: (gst_plugin_register_func),
18         (gst_plugin_desc_copy), (gst_plugin_desc_free),
19         (gst_plugin_get_source):
20         * gst/gstplugin.h:
21         * gst/registries/gstlibxmlregistry.c: (load_plugin),
22         (gst_xml_registry_save_plugin):
23         * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
24         (gst_xml_registry_save_plugin):
25         * tools/gst-inspect.c: (print_plugin_info):
26           add a "source" plugin description field, to represent the source
27           module this plugin is a part of.  By default GST_PLUGIN_DEFINE
28           will set it to PACKAGE, which is automake's idea of the name of
29           the source project.
30
31 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
32
33         * Makefile.am:
34         * autogen.sh:
35         * configure.ac:
36         * docs/Makefile.am:
37         * docs/faq/Makefile.am:
38         * docs/gst/tmpl/gstelement.sgml:
39         * docs/gst/tmpl/gsttypes.sgml:
40         * docs/htmlinstall.mak:
41         * docs/manual/Makefile.am:
42         * docs/pwg/Makefile.am:
43           reorganize doc build a little
44           split out docbook and gtk-doc stuff
45           have two separate --enable's and enable them through autogen
46           but disable by default in configure (to be similar to other
47           projects)
48         * gstreamer.spec.in:
49           clean up docs install
50         * po/af.po:
51         * po/az.po:
52         * po/ca.po:
53         * po/cs.po:
54         * po/de.po:
55         * po/en_GB.po:
56         * po/fr.po:
57         * po/it.po:
58         * po/nb.po:
59         * po/nl.po:
60         * po/ru.po:
61         * po/sq.po:
62         * po/sr.po:
63         * po/sv.po:
64         * po/tr.po:
65         * po/uk.po:
66         * po/vi.po:
67           translation updates
68
69 2005-09-03  Tim-Philipp Müller  <tim at centricular dot net>
70
71         * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
72           Add comment.
73           
74         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
75         (gst_fake_sink_change_state):
76           Make state change function thread-safe.
77           
78         * gst/gstpad.c: (gst_pad_alloc_buffer):
79           Set offset on generic buffer allocated by fallback.
80
81 2005-09-03  Stefan Kost  <ensonic@users.sf.net>
82
83         * docs/gst/gstreamer-sections.txt:
84         * docs/gst/tmpl/gstelement.sgml:
85         * gst/gstpad.c:
86         * libs/gst/controller/gst-controller.c:
87         (gst_controlled_property_set_interpolation_mode),
88         (gst_controlled_property_new),
89         (gst_controller_find_controlled_property):
90          run the wingo-magic script against the docs
91
92 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
93
94         * docs/gst/gstreamer-docs.sgml:
95         * docs/gst/gstreamer-sections.txt:
96         * docs/gst/tmpl/.cvsignore:
97         * docs/gst/tmpl/gstelementdetails.sgml:
98         * docs/gst/tmpl/gstelementfactory.sgml:
99         * gst/gst.c:
100         * gst/gstbus.c:
101         * gst/gstelementfactory.c:
102         * gst/gstelementfactory.h:
103           merged elementdetails docs into elementfactory docs
104           inlined both
105
106 2005-09-02  Andy Wingo  <wingo@pobox.com>
107
108         * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
109         consider this enum an enum and not a flags.
110
111 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
112
113         * docs/gst/gstreamer-docs.sgml:
114         * docs/gst/tmpl/.cvsignore:
115         * docs/gst/tmpl/gstghostpad.sgml:
116         * docs/gst/tmpl/gstiterator.sgml:
117         * docs/gst/tmpl/gstmacros.sgml:
118         * docs/gst/tmpl/gstrealpad.sgml:
119         * docs/gst/tmpl/gstregistry.sgml:
120         * docs/gst/tmpl/gstregistrypool.sgml:
121         * docs/gst/tmpl/gststructure.sgml:
122         * docs/gst/tmpl/gstsystemclock.sgml:
123         * docs/gst/tmpl/gsttrace.sgml:
124         * gst/gstghostpad.c:
125         * gst/gstmacros.h:
126         * gst/gstmemchunk.c:
127         * gst/gstmemchunk.h:
128         * gst/gstqueue.c:
129         * gst/gstregistry.c:
130         * gst/gstregistrypool.c:
131         * gst/gststructure.c:
132         * gst/gstsystemclock.c:
133           more docs inlined
134
135 2005-09-02  Andy Wingo  <wingo@pobox.com>
136
137         * gst/gstelement.h (GstState): Renamed from GstElementState,
138         changed to be a normal enum instead of flags.
139         (GstStateChangeReturn): Renamed from GstElementStateReturn, names
140         munged to be GST_STATE_CHANGE_*.
141         (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
142         work with the new state representation.
143         (GstStateChange): New enumeration of possible state transitions.
144         Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
145         (GstElementClass::change_state): Pass the GstStateChange along as
146         an argument. Helps language bindings, so they don't have to use
147         tricky lock-needing macros like GST_STATE_CHANGE ().
148
149         * scripts/update-states (file): New script. Run it on a file to
150         update it for state naming and API changes. Updates files in
151         place.
152
153         * All files updated for the new API.
154
155 2005-09-02  Thomas Vander Stichele  <thomas at apestaart dot org>
156
157         * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
158         * gst/gstutils.c: (gst_util_set_value_from_string),
159         (gst_util_set_object_arg):
160           fix a bunch of unchecked return values
161         * tools/gst-complete.c: (main):
162         * gstreamer.spec.in:
163           clean up a little
164
165 2005-09-01  Wim Taymans  <wim@fluendo.com>
166
167         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
168         (gst_base_sink_event), (gst_base_sink_do_sync),
169         (gst_base_sink_handle_event):
170         * gst/base/gstbasesink.h:
171         Handle newsegments more correctly.
172
173         * gst/gstbus.c:
174         Fix docs.
175
176         * gst/gstevent.c: (gst_event_new_newsegment):
177         A newsegment cannot have a start_time of -1
178
179 2005-09-01  Tim-Philipp Müller  <tim at centricular dot net>
180
181         * win32/gstenumtypes.c:
182         * win32/gstenumtypes.h:
183           Update
184
185 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
186
187         * libs/gst/controller/gst-controller.c:
188         (gst_controlled_property_set_interpolation_mode),
189         (gst_controlled_property_new):
190          fixed boolean again
191
192 2005-08-31  Thomas Vander Stichele  <thomas at apestaart dot org>
193
194         * docs/faq/gst-uninstalled:
195           add -good
196         * gst/gstevent.c:
197         * gst/gstevent.h:
198           remove wrong docs
199         * gst/gstutils.c: (gst_element_link_filtered):
200         * gst/gstutils.h:
201           add gst_element_link_filtered
202
203 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
204
205         * docs/gst/gstreamer-docs.sgml:
206         * docs/gst/gstreamer-sections.txt:
207         * docs/gst/tmpl/.cvsignore:
208         * docs/gst/tmpl/gsterror.sgml:
209         * docs/gst/tmpl/gstfilter.sgml:
210         * docs/gst/tmpl/gsturihandler.sgml:
211         * docs/gst/tmpl/gsturitype.sgml:
212         * docs/gst/tmpl/gstutils.sgml:
213         * docs/gst/tmpl/gstxml.sgml:
214         * gst/gsterror.c:
215         * gst/gsterror.h:
216         * gst/gstfilter.c:
217         * gst/gsturi.c:
218         * gst/gsturitype.c:
219         * gst/gstutils.c:
220         * gst/gstxml.c:
221           inlined more docs, fixed double id-ref
222
223 2005-08-31  Wim Taymans  <wim@fluendo.com>
224
225         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
226         (gst_base_transform_handle_buffer):
227         Passthrough elements don't need the caps as they don't care.
228
229 2005-08-31  Wim Taymans  <wim@fluendo.com>
230
231         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
232         (gst_base_transform_handle_buffer), (gst_base_transform_chain):
233         Don't leak refcounts on buffers.
234
235 2005-08-31  Wim Taymans  <wim@fluendo.com>
236
237         * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
238         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
239         (gst_base_transform_chain), (gst_base_transform_change_state):
240         * gst/base/gstbasetransform.h:
241         Handle the case where we are not negotiated more gracefully.
242
243 2005-08-31  Tim-Philipp Müller  <tim at centricular dot net>
244
245         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
246         (gst_file_src_map_region):
247           Set READONLY flag on mmap'ed buffers, otherwise
248           gst_buffer_make_writable() won't work properly (#314708).
249
250 2005-08-31  Wim Taymans  <wim@fluendo.com>
251
252         * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
253         passthrough elements can even do inplace on non writable
254         buffers (as they don't touch them).
255
256 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
257
258         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
259         (gst_test_mono_source_set_property),
260         (gst_test_mono_source_class_init), (GST_START_TEST),
261         (gst_controller_suite):
262           more tests (hehe I have the most)
263         * gst/gstbus.c:
264           describe popping messages whenusing mulltiple sources
265         * libs/gst/controller/gst-controller.c:
266         (gst_controlled_property_set_interpolation_mode),
267         (gst_controlled_property_new):
268         * libs/gst/controller/gst-controller.h:
269         * libs/gst/controller/gst-interpolation.c:
270           implement boolean properties
271
272 2005-08-31  Wim Taymans  <wim@fluendo.com>
273
274         * gst/gstminiobject.c: (gst_mini_object_ref):
275         Cannot assert that the refcount has to be positive
276         since a disposed object can be resurected.
277
278 2005-08-31  Wim Taymans  <wim@fluendo.com>
279
280         * gst/gstpad.c: (gst_pad_init):
281         Revert change, need to first fix badly behaving 
282         apps.
283
284 2005-08-30  Wim Taymans  <wim@fluendo.com>
285
286         * check/elements/fakesrc.c: (setup_fakesrc):
287         * check/elements/identity.c: (setup_identity):
288         Activate pads before using them.
289
290 2005-08-30  Wim Taymans  <wim@fluendo.com>
291
292         * gst/base/gstadapter.c: (gst_adapter_flush):
293         Flushing out 0 bytes is ok for this function.
294
295         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
296         no newsegment gives a warning and sets the start/stop to 
297         invalid.
298
299         * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
300         (gst_base_transform_set_passthrough):
301         Some debug info.
302
303         * gst/gstminiobject.c: (gst_mini_object_ref):
304         Check refcount here too.
305
306         * gst/gstpad.c: (gst_pad_init):
307         Pads are initially flushing and refusing data.
308
309         * gst/gstutils.c: (gst_element_link_pads_filtered):
310         When adding a capsfilter element make sure it has the
311         same state as the parent bin.
312
313 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
314
315         * docs/gst/tmpl/.cvsignore:
316         * docs/gst/tmpl/gstformat.sgml:
317         * docs/gst/tmpl/gstversion.sgml:
318         * gst/gstbus.h:
319         * gst/gstformat.c:
320         * gst/gstformat.h:
321         * gst/gstversion.h.in:
322           more docs and two more inlined
323
324 2005-08-30  Wim Taymans  <wim@fluendo.com>
325
326         * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
327         Don't sync to clock.
328
329 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
330
331         * docs/gst/gstreamer-sections.txt:
332           ultral33t func10ns deserve to appear in the docs actualy
333         * docs/gst/tmpl/.cvsignore:
334         * docs/gst/tmpl/gstcompat.sgml:
335         * docs/gst/tmpl/gstconfig.sgml:
336         * gst/check/gstcheck.c:
337         * gst/gstcompat.h:
338         * gst/gstconfig.h.in:
339           inlined more docs
340
341 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
342
343         * docs/gst/tmpl/.cvsignore:
344         * docs/gst/tmpl/gstquery.sgml:
345         * docs/gst/tmpl/gstutils.sgml:
346         * gst/gstquery.c:
347         * gst/gstquery.h:
348           inlined and extended docs
349
350 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
351
352         * check/gst-libs/controller.c: (GST_START_TEST),
353         (gst_controller_suite):
354           more tests
355         * docs/gst/tmpl/gstutils.sgml:
356         * docs/libs/gstreamer-libs-sections.txt:
357         * docs/libs/tmpl/gstdataprotocol.sgml:
358           include path fixes
359         * examples/controller/audio-example.c: (main):
360           controller example works now
361         * gst/gstclock.h:
362           doc fixes
363         * tools/gst-inspect.c: (print_element_properties_info):
364           show param spec flags
365
366 2005-08-29  Andy Wingo  <wingo@pobox.com>
367
368         * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
369
370 2005-08-28  Andy Wingo  <wingo@pobox.com>
371
372         * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
373         as having two arguments instead of just one. Allows superclasses
374         to access information on subclasses -- see the terrible for() loop
375         in gtype.c:g_type_create_instance for the reason why. All callers
376         changed.
377
378 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
379
380         * docs/design/part-messages.txt:
381           update info
382         * docs/gst/tmpl/.cvsignore:
383         * docs/gst/tmpl/gstcaps.sgml:
384         * docs/gst/tmpl/gstclock.sgml:
385         * gst/gstbus.c:
386         * gst/gstcaps.c:
387         * gst/gstcaps.h:
388         * gst/gstclock.c:
389         * gst/gstclock.h:
390         * gst/gstmessage.c:
391           added descriptions for bus and message
392           inline caps and clock docs
393
394 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
395
396         * gst/gstmessage.c:
397         * gst/gstmessage.h:
398           doc fixes
399
400 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
401
402         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
403           fix div-by-zero
404
405 2005-08-26  Andy Wingo  <wingo@pobox.com>
406
407         * check/pipelines/simple_launch_lines.c (run_pipeline): Check
408         element_set_state's return val.
409         (test_2_elements): Add test that's been disabled for months.
410
411         * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
412         can-activate-pull properties.
413
414         * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
415         can-activate-pull properties. Implement is_seekable so fakesrc can
416         operate in pull mode.
417
418         * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
419         properties.
420         (gst_base_sink_activate, gst_base_sink_activate_pull)
421         (gst_base_sink_activate_push): Make activation mode choosing work.
422         Cleanups.
423         (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
424         is right. Make pull mode work. Post an eos before pausing in pull
425         mode.
426         (gst_base_sink_change_state): Pay attention to the core's
427         change_state() return val.
428         
429         * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
430         has-getrange properties. Cleanups.
431         
432         * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
433         has_getrange and replace with can_activate_pull and
434         can_activate_push.
435
436         * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
437         locking comments. Remove has_loop, has_chain and replace with
438         can_activate_pull and can_activate_push.
439
440 2005-08-26  Jan Schmidt  <thaytan@mad.scientist.com>
441
442         * configure.ac:
443         * examples/Makefile.am:
444         * examples/metadata/Makefile.am:
445         * examples/metadata/read-metadata.c: (message_loop),
446         (have_pad_handler), (make_pipeline), (print_tag), (main):
447           Add metadata reading example that loops over a list of filenames,
448           dumping any tags found.
449
450         * gst/gstbus.c: (gst_bus_dispose):
451         * gst/gstelement.c: (gst_element_dispose):
452           Release a few potentially-held references in dispose.
453
454 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
455
456         * docs/gst/tmpl/gstminiobject.sgml:
457           do *not* add tmpl/*.sgml files to CVS!
458
459 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
460
461         * libs/gst/bytestream/.cvsignore:
462         * libs/gst/bytestream/Makefile.am:
463         * libs/gst/bytestream/adapter.c:
464         * libs/gst/bytestream/adapter.h:
465         * libs/gst/bytestream/bytestream.c:
466         * libs/gst/bytestream/bytestream.h:
467         * libs/gst/bytestream/filepad.c:
468         * libs/gst/bytestream/filepad.h:
469           removing obsolete files
470
471 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
472
473         * docs/gst/gstreamer-docs.sgml:
474         * docs/libs/gstreamer-libs-docs.sgml:
475           disabed additional index entries again, as this makes docs-gen just
476           slow and they aren't useful yet
477         * docs/libs/gstreamer-libs-sections.txt:
478           little -section.txt cleanup for libs
479
480 2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>
481
482         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
483         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
484           fix up some debugging
485         (gst_base_transform_get_unit_size),
486         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
487         (gst_base_transform_handle_buffer):
488         * gst/base/gstbasetransform.h:
489           handle and store timed NEWSEGMENT events so that subclasses that
490           calculate time by counting samples have a segment_start time they
491           need to add to their timestamps - see audioresample
492
493 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
494
495         * gst/gstbin.h:
496           removed ';' from the end of macro defs
497         * docs/gst/gstreamer-docs.sgml:
498         * docs/gst/gstreamer-sections.txt:
499         * docs/gst/tmpl/.cvsignore:
500         * gst/gstbus.h:
501         * gst/gstelement.c: (gst_element_class_init),
502         (gst_element_set_state), (activate_pads),
503         (gst_element_save_thyself):
504         * gst/gstevent.c: (gst_event_new_newsegment):
505         * gst/gstevent.h:
506         * gst/gstiterator.c:
507         * gst/gstiterator.h:
508         * gst/gstpad.c:
509         * gst/gstprobe.h:
510         * gst/gstutils.c: (gst_pad_query_convert):
511         * gst/gstutils.h:
512           fixed parameter name mismatches between source, header and docs
513           added some more docs, resolved the last batch of unused elements in
514           docs (now someone needs to doc them)
515
516 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
517
518         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
519         * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
520           don't walk through the plugins backwards.  Where is all this
521           reversed logic coming from ?
522
523 2005-08-25  Wim Taymans  <wim@fluendo.com>
524
525         * gst/base/gstbasetransform.c: (gst_base_transform_init),
526         (gst_base_transform_transform_size),
527         (gst_base_transform_configure_caps),
528         (gst_base_transform_get_unit_size),
529         (gst_base_transform_buffer_alloc),
530         (gst_base_transform_change_state):
531         * gst/base/gstbasetransform.h:
532         Cache caps unit_size.
533         Make sure we cannot negotiate up and downstream at the
534         same time.
535
536 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
537
538         * gst/gst.c: (init_pre), (init_post):
539           register the installed plugin path after the env var
540         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
541         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
542           don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
543           directories, so the tests can prefer uninstalled over installed
544
545 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
546
547         * gst/base/gstbasetransform.h:
548           comment
549         * gst/gstpad.c:
550           add to docs
551
552 2005-08-25  Wim Taymans  <wim@fluendo.com>
553
554         * gst/gstbin.c: (bin_bus_handler):
555         Be a bit more conservative about the posted message.
556         
557         * gst/gstbus.c: (gst_bus_post):
558         Some cleanups, warn wrong return values.
559
560 2005-08-25  Jan Schmidt  <thaytan@mad.scientist.com>
561
562         * check/gst/gstbin.c: (GST_START_TEST):
563         * gst/gstbin.c: (bin_bus_handler):
564         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
565         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
566         (gst_message_new_warning), (gst_message_new_tag),
567         (gst_message_new_state_changed), (gst_message_new_segment_start),
568         (gst_message_new_segment_done), (gst_message_new_custom):
569         * gst/gstmessage.h:
570         * tools/gst-launch.c: (event_loop):
571         * tools/gst-md5sum.c: (event_loop):
572           Revert unpopular change for GST_MESSAGE_SRC to GObject.
573
574 2005-08-25  Wim Taymans  <wim@fluendo.com>
575
576         * check/generic/states.c: (GST_START_TEST):
577         Cleanup can be done at the end.
578
579         * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
580         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
581         (gst_task_get_state), (gst_task_start), (gst_task_pause):
582         Oh boy.. Thanks for finding this, Thomas. 
583
584 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
585
586         * docs/gst/gstreamer.types:
587           added missing types
588
589 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
590
591         * docs/gst/gstreamer-docs.sgml:
592         * docs/gst/gstreamer-sections.txt:
593         * docs/gst/tmpl/.cvsignore:
594         * gst/gstbin.c:
595         * gst/gstiterator.c:
596         * gst/gstutils.c:
597         * gst/registries/gstxmlregistry.h:
598           added miissing classes and symbols (123 more to go)
599           removed removed symbols from section file
600           fixed many doc-comments
601
602 2005-08-24  Wim Taymans  <wim@fluendo.com>
603
604         * check/generic/states.c: (GST_START_TEST):
605         Make sure all tasks are stopped.
606
607         * check/gst/gstbin.c: (GST_START_TEST):
608         Unref after usage for proper valgrinding.
609
610         * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
611         Really wait for the task to stop before destroying the
612         mutex.
613
614         * gst/gstqueue.c: (gst_queue_sink_activate_push),
615         (gst_queue_src_activate_push):
616         Small cleanups. Don't stop the task when we did not start
617         it.
618
619         * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
620         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
621         (gst_task_get_state), (gst_task_start), (gst_task_pause),
622         (gst_task_join):
623         * gst/gsttask.h:
624         Protect the stream lock with the object lock.
625         Disallow setting the stream lock when running.
626         Add cleanup_all to wait for the threadpool to finish.
627         Remove code to autoallocate a mutex if none was provided.
628         Add _join() to wait for a task to stop.
629         Protect the thread pool with a global lock.
630
631 2005-08-24  Wim Taymans  <wim@fluendo.com>
632
633         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
634         (gst_base_sink_get_times), (gst_base_sink_do_sync),
635         (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
636         * gst/base/gstbasesink.h:
637         Handle newsegment events correctly.
638         Drop buffers out of the segment range.
639
640 2005-08-22  Andy Wingo  <wingo@pobox.com>
641
642         * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
643         macro, implements an interface and gstimplementsinterface for a
644         new type.
645
646 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
647
648         * check/Makefile.am:
649         * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
650           add a test that does a bunch of state changes on elements
651           needs some fixing for valgrind
652         * check/states/sinks.c: (gst_object_suite):
653           whitespace
654         * gst/gstcaps.h:
655           add prototype for gst_caps_is_equal_fixed
656         * gst/gstplugin.c:
657         * gst/gstregistrypool.c:
658           doc fixes
659
660 2005-08-24  Andy Wingo  <wingo@pobox.com>
661
662         * gst/gstquery.c (gst_query_new_convert): Spew if we try to
663         convert a negative value. Doesn't make much sense. Mostly this is
664         here to force callers to ensure -1 maps to -1.
665
666 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
667
668         * docs/pwg/advanced-types.xml:
669           Well done to Michael for catching my deliberate introduction
670           of this spelling mistake. 
671         * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
672         * gst/gstelement.h:
673           Add GST_ELEMENT_UNPARENTING to prevent races so that we can
674           unlink pads before removing the element from the bin.
675
676 2005-08-24  Andy Wingo  <wingo@pobox.com>
677
678         * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
679         the same thing as GST_DEBUG=*:4.
680         (parse_debug_level, parse_debug_category): New helper parsers.
681
682 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
683
684         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
685         (gst_base_transform_transform_size), (gst_base_transform_getcaps),
686         (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
687         (gst_base_transform_buffer_alloc),
688         (gst_base_transform_handle_buffer):
689           use gboolean return values and pointers to size so we can use the
690           full GST_BUFFER_SIZE range (guint) for buffer sizes
691           use GstPadDirection for transform_caps
692         * gst/base/gstbasetransform.h:
693           rename get_size to get_unit_size since that's what it is
694         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
695           use GstPadDirection for transform_caps
696         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
697         * gst/gstutils.h:
698           cleanup and debugging
699
700 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
701
702         * gst/gstelement.c: (gst_element_class_init),
703         (gst_element_set_state), (activate_pads),
704         (gst_element_save_thyself):
705         * tools/gst-compprep.c: (main):
706         * tools/gst-inspect.c: (print_element_properties_info):
707         * tools/gst-xmlinspect.c: (print_element_properties):
708           Fixed long standing mem-leak
709
710 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
711
712         * check/gst/gstbin.c: (GST_START_TEST):
713         * gst/gstbin.c: (bin_bus_handler):
714         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
715         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
716         (gst_message_new_warning), (gst_message_new_tag),
717         (gst_message_new_state_changed), (gst_message_new_segment_start),
718         (gst_message_new_segment_done), (gst_message_new_custom):
719         * gst/gstmessage.h:
720         * tools/gst-launch.c: (event_loop):
721         * tools/gst-md5sum.c: (event_loop):
722           Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
723           that applications can sensibly post custom messages with references
724           to their own objects.
725
726 2005-08-24  Andy Wingo  <wingo@pobox.com>
727
728         * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
729         already.
730
731 2005-08-24  Wim Taymans  <wim@fluendo.com>
732
733         * gst/base/gstbasetransform.c: (gst_base_transform_init),
734         (gst_base_transform_transform_caps),
735         (gst_base_transform_transform_size),
736         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
737         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
738         (gst_base_transform_handle_buffer):
739         * gst/base/gstbasetransform.h:
740         Many fixes and new features added by Thomas. Can now also do
741         transforms with variable sizes and a custom fixate_caps function.
742
743 2005-08-24  Wim Taymans  <wim@fluendo.com>
744
745         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
746         Some debugging.
747
748         * gst/gstclock.h:
749         Cast to ClockTime before formatting to time.
750
751         * gst/gstutils.h:
752         Cleanups.
753
754 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
755
756         * check/gst-libs/controller.c: (GST_START_TEST),
757         (gst_controller_suite):
758         * docs/gst/tmpl/gstcaps.sgml:
759         * docs/gst/tmpl/gstghostpad.sgml:
760         * docs/gst/tmpl/gstquery.sgml:
761         * docs/gst/tmpl/gstutils.sgml:
762         * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
763         (gst_object_sink_values), (gst_object_get_value_arrays),
764         (gst_object_get_value_array):
765           gracefully handle helper method calls to objects that are not beeing
766           controlled, added test case for that          
767
768 2005-08-23  Wim Taymans  <wim@fluendo.com>
769
770         * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
771         (gst_event_new_newsegment), (gst_event_parse_newsegment),
772         (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
773         (gst_event_parse_qos), (gst_event_new_seek),
774         (gst_event_parse_seek):
775         * gst/gstevent.h:
776         Some more debugging output and doc cleanups.
777
778         * gst/gstqueue.c: (gst_queue_handle_sink_event):
779         Fix possible deadlock.
780
781 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
782
783         * docs/gst/gstreamer-docs.sgml:
784         * docs/gst/gstreamer-sections.txt:
785         * docs/gst/gstreamer.types:
786         * docs/gst/tmpl/.cvsignore:
787         * gst/gstbin.h:
788         * gst/gstbus.c:
789         * gst/gstelement.c:
790         * gst/gstevent.h:
791           added about 100 symbols from gstreamer-unused.txt to the right sections
792           fixed more broken comments
793           added GstBus to docs
794
795 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
796
797         * docs/gst/gstreamer-sections.txt:
798         * docs/gst/tmpl/.cvsignore:
799         * docs/gst/tmpl/gstbin.sgml:
800         * docs/gst/tmpl/gstbuffer.sgml:
801         * gst/base/gstbasesrc.c:
802         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
803         * gst/gstbuffer.c:
804         * gst/gstbuffer.h:
805         * tools/gst-launch.1.in:
806           inlined more doc comments, added missing comments and fixed comments
807           fixed typos
808
809 2005-08-23  Thomas Vander Stichele  <thomas at apestaart dot org>
810
811         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
812           some debugging
813         * gst/gstcaps.h:
814           whitespace fixes
815         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
816           more debugging
817         * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
818         * gst/gststructure.h:
819           add a fixate function for booleans; add a FIXME that these func
820           names should probably be gst_structure_fixate_*
821
822 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
823
824         * docs/gst/gstreamer-docs.sgml:
825         * docs/gst/gstreamer-sections.txt:
826         * gst/Makefile.am:
827         * gst/gstbin.c: (gst_bin_get_type),
828         (gst_bin_child_proxy_get_child_by_index),
829         (gst_bin_child_proxy_get_children_count),
830         (gst_bin_child_proxy_init):
831         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
832         (gst_child_proxy_get_child_by_index),
833         (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
834         (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
835         (gst_child_proxy_get), (gst_child_proxy_set_property),
836         (gst_child_proxy_set_valist), (gst_child_proxy_set),
837         (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
838         (gst_child_proxy_base_init), (gst_child_proxy_get_type):
839         * gst/gstchildproxy.h:
840         * gst/parse/grammar.y:
841         * tools/gst-inspect.c: (print_interfaces),
842         (print_element_properties_info), (print_element_info):
843          ported gstchildproxy over from 0.8
844          ported gst-inspect fixes and enhancements over from 0.8
845
846 2005-08-22  Wim Taymans  <wim@fluendo.com>
847
848         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
849         (gst_base_transform_handle_buffer):
850         Also call the transform function if we have ANY caps.
851
852         * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
853         Fix debug info.
854
855 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
856
857         * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
858           Don't pretend to handle seek events if the source is not seekable
859
860 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
861
862         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
863           Remove extra parameter to debug output
864
865         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
866         (gst_base_src_do_seek), (gst_base_src_activate_push):
867           Fix seek event handling.
868
869         * gst/gstpipeline.c: (gst_pipeline_change_state):
870         * gst/gstqueue.c: (gst_queue_handle_sink_event),
871         (gst_queue_src_activate_push):
872           Don't start the src pad task on FLUSH_STOP if the pad
873           isn't linked.
874           Debug changes.
875
876 2005-08-22  Wim Taymans  <wim@fluendo.com>
877
878         * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
879         Added check for gst_static_caps_get() refcounting.
880
881 2005-08-22  Wim Taymans  <wim@fluendo.com>
882
883         * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
884         Make _static_caps_get() refcounting sane.
885         
886         * gst/gstelement.c: (gst_element_set_state):
887         Add g_return_val_if_fail() to protect against segfaults.
888
889 2005-08-22  Stefan Kost  <ensonic@users.sf.net>
890
891         * docs/gst/tmpl/gstevent.sgml:
892         * gst/gstevent.c:
893         * gst/gstevent.h:
894           inlined remaining docs, added missing doc comments
895
896 2005-08-22  Thomas Vander Stichele  <thomas at apestaart dot org>
897
898         * check/gst/gstbin.c: (GST_START_TEST):
899           since we don't know when preroll is done, use refcount range
900           check for the sink
901         * gst/check/gstcheck.h:
902           add macro for checking refcount range
903
904 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
905
906         * check/Makefile.am:
907           clean up environment for when registry gets built versus
908           when actual tests are run; valgrind seems to not report
909           leaks if GST_PLUGIN_PATH is set to some specific values
910         * check/gst/gstbin.c: (GST_START_TEST):
911           add more refcounting checks; maybe this exposes a
912           preroll lock bug ?
913         * common/check.mak:
914         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
915         * gst/check/gstcheck.h:
916         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
917         (gst_bin_change_state):
918         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
919           add/fix debugging/whitespace
920
921 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
922
923         * check/gst/gstevent.c: (event_probe), (test_event),
924         (GST_START_TEST):
925          Er, don't call gst_bin_watch_for_state_change you idiot.
926
927 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
928
929         * check/Makefile.am:
930           Use CHECK_CFLAGS and CHECK_LIBS
931         * check/gst/gstevent.c: (event_probe), (test_event),
932         (GST_START_TEST):
933           Don't leak events.
934         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
935         (gst_base_src_start), (gst_base_src_stop),
936         (gst_base_src_activate_push), (gst_base_src_activate_pull),
937         (gst_base_src_change_state):
938           Sprinkle gst_base_src_stop liberally around error paths to fix
939           problems reusing a source after failed state changes.
940         * gst/base/gsttypefindhelper.c: (helper_find_peek),
941         (helper_find_suggest), (gst_type_find_helper):
942           Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
943         * gst/gstevent.h:
944         * docs/gst/tmpl/gstevent.sgml:
945           Migrate part of the docs from the SGML file. Wait for ensonic to
946           tell me how I did it wrong ;)
947         * tools/gst-typefind.c: (main):
948           Extra robustness to state changes between files.
949
950 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
951
952         * check/Makefile.am:
953           don't valgrind the controller test - it's leaking - Stefan, HELP
954         * gst/check/gstcheck.c: (gst_check_message_error),
955         (gst_check_chain_func), (gst_check_setup_element),
956         (gst_check_teardown_element), (gst_check_setup_src_pad),
957         (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
958         (gst_check_teardown_sink_pad):
959         * gst/check/gstcheck.h:
960           add a bunch of methods to set up elements, and src and sink pads
961         * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
962         * check/elements/identity.c: (setup_identity), (cleanup_identity),
963         (GST_START_TEST):
964           use them
965         * gst/gstmessage.c:
966         * gst/gsttag.h:
967           whitespace/doc fixes
968
969 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
970
971         * gst/gstelement.h:
972           make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
973           be handled by the application and not always printed as well
974
975 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
976
977         * check/Makefile.am:
978           set GST_TOOLS_DIR
979         * gst/check/gstcheck.c: (gst_check_message_error):
980         * gst/check/gstcheck.h:
981           add a fail_unless_equals_int
982           add fail_unless for error messages
983
984 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
985
986         * check/Makefile.am:
987         * check/gst.supp:
988         * common/Makefile.am:
989         * common/check.mak:
990         * common/gst.supp:
991           factor out some of the common stuff so we can use it
992
993 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
994
995         * check/Makefile.am:
996         * check/gst/gstiterator.c: (GST_START_TEST):
997         * check/gst/gstsystemclock.c: (GST_START_TEST),
998         (gst_systemclock_suite):
999         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1000         * gst/gstclock.c:
1001           valgrind more tests
1002
1003 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
1004
1005         * check/elements/.cvsignore:
1006         * check/elements/gstfakesrc.c:
1007           rename to name of element
1008         * check/elements/identity.c: (chain_func), (event_func),
1009         (setup_identity), (cleanup_identity), (GST_START_TEST),
1010         (identity_suite), (main):
1011           add a test for identity
1012         * check/Makefile.am:
1013         * pkgconfig/Makefile.am:
1014         * pkgconfig/gstreamer-check.pc.in:
1015         * pkgconfig/gstreamer-check-uninstalled.pc.in:
1016         * gst/check:
1017         * gst/Makefile.am:
1018         * configure.ac:
1019           move the check stuff to a library that gets installed
1020         * check/gst-libs/controller.c: (GST_START_TEST):
1021         * check/gst-libs/gdp.c:
1022         * check/gst/gst.c: (GST_START_TEST):
1023         * check/gst/gstbin.c:
1024         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1025         * check/gst/gstbus.c:
1026         * check/gst/gstcaps.c: (GST_START_TEST):
1027         * check/gst/gstelement.c:
1028         * check/gst/gstghostpad.c:
1029         * check/gst/gstiterator.c:
1030         * check/gst/gstmessage.c:
1031         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
1032         * check/gst/gstobject.c:
1033         * check/gst/gstpad.c: (GST_START_TEST):
1034         * check/gst/gststructure.c: (GST_START_TEST):
1035         * check/gst/gstsystemclock.c: (GST_START_TEST),
1036         (gst_systemclock_suite):
1037         * check/gst/gsttag.c: (gst_tag_suite):
1038         * check/gst/gstvalue.c:
1039         * check/pipelines/cleanup.c:
1040         * check/pipelines/simple_launch_lines.c:
1041         * check/states/sinks.c:
1042           change include statement
1043
1044         * docs/gst/gstreamer-sections.txt:
1045         * docs/gst/tmpl/gstpad.sgml:
1046           document more pad stuff
1047         * gst/gstminiobject.c: (gst_mini_object_ref),
1048         (gst_mini_object_unref):
1049           debug refcounting
1050
1051 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
1052
1053         * docs/gst/tmpl/gst.sgml:
1054         * gst/gst.c:
1055           eliminate another tmpl file, fix spelling in the long-description
1056
1057 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
1058
1059         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
1060         (test_event), (timediff), (gstevents_suite):
1061           Should fix build on 64-bit arch's
1062
1063 2005-08-18  Andy Wingo  <wingo@pobox.com>
1064
1065         Make sure that when a pipeline goes to PLAYING, that data has
1066         actually hit the sink.
1067
1068         * check/states/sinks.c (test_sink): A sink that doesn't get any
1069         data shouldn't return SUCCESS for going to either PLAYING or
1070         PAUSED. Test also the return values on the way back down.
1071
1072         * gst/gstelement.c (gst_element_set_state): When changing the
1073         state of an element currently changing state asynchronously, go to
1074         lost-state after commiting the pending state. Makes future calls
1075         to get_state continue to return ASYNC.
1076
1077         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
1078         ASYNC when going to PLAYING if we still don't have preroll, as can
1079         happen with live sources.
1080
1081 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
1082
1083         * docs/pwg/advanced-types.xml:
1084           Hack long paragraph into 2 chunks as a workaround for buggy
1085           jadetex version in sid and breezy that loops infinitely and
1086           eats all RAM.
1087
1088 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
1089
1090         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
1091         (test_event), (timediff), (gstevents_suite):
1092           Provide more error margin in clock measurements to allow for 
1093           g_get_current_time inaccuracies.
1094
1095 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
1096
1097         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
1098         (test_event), (timediff), (gstevents_suite):
1099            Fix error message output so I might be able to tell why the
1100            test works here but fails on the build farm.
1101
1102 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
1103
1104         * check/Makefile.am:
1105         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
1106         (test_event), (timediff), (gstevents_suite), (main):
1107           I wrote a test!
1108
1109         * docs/design/part-seeking.txt:
1110           Spelling correction
1111
1112         * docs/gst/tmpl/gstevent.sgml:
1113         * docs/gst/tmpl/gstfakesrc.sgml:
1114           Docs updates.
1115
1116         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1117           Treat a buffer-without-newsegment the same as a receiving 
1118           a newsegment not in time format, and disable syncing to the clock
1119           with a warning.
1120
1121         * gst/gstbus.c: (gst_bus_set_sync_handler):
1122           Assert if anyone tries to replace the existing sync_handler for bus, 
1123           as only the owner should be setting it.
1124
1125         * gst/gstevent.h:
1126           Have a fixed set of custom event enums with events identified by
1127           their structure name (as in 0.8), rather than a free-for-all
1128           allowing collisions between enum values from different plugins.
1129
1130         * gst/gstpad.c: (gst_pad_class_init):
1131           Docs change.
1132           
1133         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1134           Handle out-of-band downstream events from the sending thread.
1135
1136 2005-08-17  Andy Wingo  <wingo@pobox.com>
1137
1138         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
1139         play-timeout==0 to mean no timeout at all. In that case, don't
1140         bother with a get_state or a warning, just return directly, even
1141         if it's ASYNC.
1142
1143         * gst/base/gstbasetransform.c: Debug changes.
1144
1145         * gst/gstutils.h:
1146         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
1147         ensure bins post state change messages. A bit of a hack but I can't
1148         think of a way to avoid it.
1149
1150         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
1151
1152 2005-08-16  Andy Wingo  <wingo@pobox.com>
1153
1154         * gst/base/gstadapter.h:
1155         * gst/base/gstadapter.c (gst_adapter_take): New function, like
1156         peek() but you own the data. Not terribly efficient atm.
1157
1158 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1159
1160         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
1161         (gst_element_found_tags):
1162         * gst/gstutils.h:
1163           Add two utility functions for tag handling.
1164
1165 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1166
1167         * docs/manual/advanced-dataaccess.xml:
1168         * docs/manual/basics-helloworld.xml:
1169           Fix docs to use _bin_add() before _link(), which fixes the examples
1170           with recent core versions (reported by Madhan Raj M
1171           <raj_madan@rediffmail.com>, #313199).
1172
1173 2005-08-16  Wim Taymans  <wim@fluendo.com>
1174
1175         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1176         Added subtract checks.
1177
1178         * docs/design/part-events.txt:
1179         Some more docs about newsegment
1180
1181         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1182         Fix FIXME
1183
1184         * gst/gstcaps.c: (gst_caps_to_string):
1185         Add comments, cleanups.
1186         
1187         * gst/gstelement.c: (gst_element_save_thyself):
1188         cleanups
1189         
1190         * gst/gstvalue.c: (gst_value_collect_int_range),
1191         (gst_string_unwrap), (gst_value_union_int_int_range),
1192         (gst_value_union_int_range_int_range),
1193         (gst_value_intersect_int_int_range),
1194         (gst_value_intersect_int_range_int_range),
1195         (gst_value_intersect_double_double_range),
1196         (gst_value_intersect_double_range_double_range),
1197         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
1198         (gst_value_subtract_int_range_int),
1199         (gst_value_subtract_double_range_double),
1200         (gst_value_subtract_double_range_double_range),
1201         (gst_value_subtract_from_list), (gst_value_subtract_list),
1202         (gst_value_can_compare), (gst_value_compare_fraction):
1203         Cleanups, add comments, remove unneeded asserts.
1204
1205 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1206
1207         * tools/gst-launch.c: (event_loop):
1208           don't convert NULL structures to strings
1209
1210 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
1211
1212         * docs/gst/gstreamer-sections.txt:
1213           made some defines private
1214         * docs/gst/tmpl/gstconfig.sgml:
1215         * docs/gst/tmpl/gstqueue.sgml:
1216         * docs/gst/tmpl/gsttaglist.sgml:
1217         * docs/gst/tmpl/gsttypes.sgml:
1218         * docs/gst/tmpl/gstutils.sgml:
1219         * docs/pwg/appendix-porting.xml:
1220         * gst/base/gstbasesink.h:
1221         * gst/base/gstbasesrc.c:
1222         * gst/base/gstbasesrc.h:
1223         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
1224         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
1225         * gst/gstelement.c: (gst_element_class_init):
1226         * gst/gstpad.c: (gst_pad_class_init):
1227         * gst/gstqueue.c: (gst_queue_class_init):
1228         * gst/gstxml.c: (gst_xml_class_init):
1229           documented all undocumented signal inline
1230         * libs/gst/controller/gst-controller.h:
1231           added padding
1232
1233 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1234
1235         * docs/pwg/appendix-porting.xml:
1236           Document _set_link_function -> _set_setcaps_function.
1237
1238 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1239
1240         * check/Makefile.am:
1241           add a .check target for running the check
1242         * check/gst-libs/controller.c: (GST_START_TEST):
1243           cosmetic fixups
1244         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1245           complete checks for gstbuffer; would be nice if I could get the
1246           gcov stuff to work so I can see if I actually completed gstbuffer.c
1247         * check/gstcheck.h:
1248           add ASSERT_BUFFER_REFCOUNT
1249
1250 2005-08-13  Tim-Philipp M??ller  <tim at centricular dot net>
1251
1252         * docs/gst/gstreamer-sections.txt:
1253         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
1254         * gst/gsttag.h:
1255           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
1256           spew out a warning if a tag that is already registered
1257           is re-registered, unless it is re-registered with a 
1258           different type (#308438).
1259
1260 2005-08-12  Tim-Philipp M??ller  <tim at centricular dot net>
1261
1262         * docs/pwg/appendix-porting.xml:
1263         * docs/pwg/building-state.xml:
1264           Add some paragraphs about state changes in 0.9 to the PWG
1265           and the porting guide, in particular about the new meaning
1266           of GST_STATE_PAUSED and how to write state change functions
1267           with concurrent access by multiple threads in mind.
1268
1269 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
1270
1271         * docs/gst/gstreamer-docs.sgml:
1272         * docs/libs/gstreamer-libs-docs.sgml:
1273           added deprecation and since indexes
1274         * libs/gst/controller/gst-controller.c:
1275         * libs/gst/controller/gst-helper.c:
1276           added since tags
1277
1278
1279 2005-08-11  Wim Taymans  <wim@fluendo.com>
1280
1281         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
1282         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
1283         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
1284         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
1285         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
1286         (gst_ghost_pad_set_target):
1287         Actually implement (re)setting the target on a ghostpad
1288         as described in the docs.
1289
1290 2005-08-10  Tim-Philipp M??ller  <tim at centricular dot net>
1291
1292         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
1293           Check whether GST_DEBUG_NO_COLOR environment variable is
1294           set and disable coloured debug output if that is the case.
1295
1296 2005-08-10  Tim-Philipp M??ller  <tim at centricular dot net>
1297
1298         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1299         (gst_type_find_helper):
1300           The memory returned by gst_type_find_peek() needs to
1301           stay valid until the end of a typefind function, and
1302           typefind functions may keep results from different 
1303           offsets around, so we can't just unref the buffer from
1304           the previous _peek(), but have to save all buffers 
1305           returned by _peek() until typefinding is done and only
1306           free them then.
1307
1308 2005-08-09  Tim-Philipp M??ller  <tim at centricular dot net>
1309
1310         * docs/gst/gstreamer-sections.txt:
1311         * gst/gstutils.h:
1312           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
1313
1314 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1315
1316         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
1317           Fix a pretty good memleak.
1318
1319 2005-08-08  Tim-Philipp M??ller  <tim at centricular dot net>
1320
1321         * gst/gstiterator.h:
1322           Fix wrong include and 'make distcheck'.
1323
1324 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1325
1326         * gst/gstbin.c: (bin_bus_handler):
1327           Use gst_element_post_message() instead.
1328
1329 2005-08-08  Tim-Philipp M??ller  <tim at centricular dot net>
1330
1331         * gst/base/gstadapter.h:
1332         * gst/base/gstbasesink.h:
1333         * gst/base/gstbasesrc.h:
1334         * gst/base/gstbasetransform.h:
1335         * gst/base/gstcollectpads.h:
1336         * gst/base/gstpushsrc.h:
1337         * gst/gstiterator.h:
1338           Add padding to our base elements' class and instance structs and
1339           to GstIterator (you will need to rebuild all plugins and apps!)
1340
1341 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1342
1343         * gst/gstbin.c: (bin_bus_handler):
1344           Make default message forwarding from child->bus to bin->bus
1345           threadsafe and make it not emit warnings if the parent has no bus.
1346
1347 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1348
1349         * gst/gstelement.c: (activate_pads):
1350           On paused->ready, set pad->caps to NULL, as is the documented
1351           behaviour in this state change. Fixes playback of series of
1352           media files when visualization is enabled in Totem.
1353
1354 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1355
1356         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1357           Allow NULL as filter-caps (which means "any").
1358
1359 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1360
1361         * docs/libs/gstreamer-libs-sections.txt:
1362         * libs/gst/controller/gst-controller.c:
1363         * libs/gst/controller/gst-controller.h:
1364         * libs/gst/controller/gst-helper.c:
1365           adding more entries to the docs and fix small doc-bugs
1366
1367 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1368
1369         * docs/gst/gstreamer-docs.sgml:
1370         * docs/gst/gstreamer-sections.txt:
1371         * docs/gst/gstreamer.types:
1372         * docs/gst/tmpl/gstbasesink.sgml:
1373         * docs/gst/tmpl/gstbasesrc.sgml:
1374         * docs/gst/tmpl/gstbasetransform.sgml:
1375         * docs/gst/tmpl/gstfakesrc.sgml:
1376         * gst/base/gstcollectpads.c:
1377         * gst/base/gstcollectpads.h:
1378         * libs/gst/controller/gst-controller.c:
1379         * libs/gst/controller/gst-controller.h:
1380         * libs/gst/controller/gst-helper.c:
1381         * libs/gst/controller/gst-interpolation.c:
1382         * libs/gst/controller/lib.c:
1383           added long/short desc for controller docs
1384           added collectpads base class docs
1385           added correct includes to base-class docs
1386
1387 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1388
1389         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
1390         (gst_test_mono_source_set_property),
1391         (gst_test_mono_source_class_init), (GST_START_TEST),
1392         (gst_controller_suite):
1393         * docs/gst/gstreamer-docs.sgml:
1394         * docs/gst/gstreamer-sections.txt:
1395         * docs/gst/gstreamer.types:
1396         * docs/libs/gstreamer-libs-docs.sgml:
1397         * docs/libs/gstreamer-libs-sections.txt:
1398         * gst/base/gstadapter.c:
1399         * libs/gst/controller/gst-controller.c:
1400         (gst_controlled_property_new), (gst_controlled_property_free),
1401         (gst_controller_new_valist),
1402         (gst_controller_remove_properties_valist),
1403         (gst_controller_sink_values), (_gst_controller_finalize):
1404         * libs/gst/controller/gst-controller.h:
1405         * libs/gst/controller/gst-helper.c:
1406         (gst_object_control_properties), (gst_object_uncontrol_properties),
1407         (gst_object_get_controller), (gst_object_set_controller),
1408         (gst_object_sink_values), (gst_object_get_value_arrays),
1409         (gst_object_get_value_array):
1410           more tests (and fixes) for the controller
1411           more docs for the controller
1412           integrated companies docs for the adapter 
1413
1414 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1415
1416         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
1417         (GST_START_TEST), (fakesrc_suite):
1418           add tests for sizetype
1419
1420 2005-08-04  Andy Wingo  <wingo@pobox.com>
1421
1422         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
1423         fixes buffer_alloc proxying among other things.
1424
1425         * gst/base/gstbasetransform.c:
1426         * gst/base/gstbasetransform.h:
1427         Revert patch to gstbasetransform from 7-28 removing
1428         delay_configure.
1429
1430         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
1431         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
1432         Semantics changed, should return not the size of the output buffer
1433         but the byte size of a buffer with a given caps.
1434
1435         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
1436         debug object.
1437         (gst_base_transform_configure_caps): Don't set out_size here: (in,
1438         out) are not the pad caps until setcaps finishes.
1439         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
1440         not-in-place case as well. Deal with changing from in-place to
1441         not-in-place within calling pad_alloc_buffer. Still a bit
1442         concerned about the overhead here...
1443
1444 2005-08-03  Andy Wingo  <wingo@pobox.com>
1445
1446         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
1447         fixating is an error.
1448
1449 2005-08-04  Edward Hervey  <edward@fluendo.com>
1450
1451         * gst/base/gstadapter.h: 
1452         Added gst_adapter_get_type() to the header
1453
1454 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1455
1456         * check/Makefile.am:
1457         * check/gst-libs/controller.c:
1458         * libs/gst/controller/gst-controller.c:
1459         (gst_controller_new_valist):
1460           added check test suite for the controller
1461         * gst/base/gstpushsrc.c:
1462           fixed a doc typo
1463
1464 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1465
1466         * docs/gst/Makefile.am:
1467         * docs/gst/gstreamer-docs.sgml:
1468         * docs/gst/gstreamer-sections.txt:
1469         * docs/gst/gstreamer.types:
1470         * docs/gst/tmpl/gstfakesrc.sgml:
1471         * gst/base/README:
1472         * gst/base/gstbasesink.c:
1473         * gst/base/gstbasesink.h:
1474         * gst/base/gstbasesrc.c:
1475         * gst/base/gstbasesrc.h:
1476         * gst/base/gstbasetransform.c:
1477         * gst/base/gstpushsrc.c:
1478         * gst/base/gstpushsrc.h:
1479           add short/long description docs to base classes
1480           add pushsrc to the docs
1481           remove consolidated doc fragments
1482
1483 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1484
1485         * configure.ac:
1486         * docs/libs/Makefile.am:
1487         * docs/libs/gstreamer-libs-docs.sgml:
1488         * docs/libs/gstreamer-libs-sections.txt:
1489         * docs/libs/gstreamer-libs.types:
1490         * examples/Makefile.am:
1491         * examples/controller/.cvsignore:
1492         * examples/controller/Makefile.am:
1493         * examples/controller/audio-example.c: (main):
1494         * libs/gst/Makefile.am:
1495         * libs/gst/controller/.cvsignore:
1496         * libs/gst/controller/Makefile.am:
1497         * libs/gst/controller/gst-controller.c:
1498         (on_object_controlled_property_changed), (gst_timed_value_compare),
1499         (gst_timed_value_find),
1500         (gst_controlled_property_set_interpolation_mode),
1501         (gst_controlled_property_new), (gst_controlled_property_free),
1502         (gst_controller_find_controlled_property),
1503         (gst_controller_new_valist), (gst_controller_new),
1504         (gst_controller_remove_properties_valist),
1505         (gst_controller_remove_properties), (gst_controller_set),
1506         (gst_controller_set_from_list), (gst_controller_unset),
1507         (gst_controller_get), (gst_controller_get_all),
1508         (gst_controller_sink_values), (gst_controller_get_value_arrays),
1509         (gst_controller_get_value_array),
1510         (gst_controller_set_interpolation_mode),
1511         (_gst_controller_finalize), (_gst_controller_init),
1512         (_gst_controller_class_init), (gst_controller_get_type):
1513         * libs/gst/controller/gst-controller.h:
1514         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
1515         (g_object_uncontrol_properties), (g_object_get_controller),
1516         (g_object_set_controller), (g_object_sink_values),
1517         (g_object_get_value_arrays), (g_object_get_value_array):
1518         * libs/gst/controller/gst-interpolation.c:
1519         (gst_controlled_property_find_timed_value_node),
1520         (interpolate_none_get), (interpolate_trigger_get),
1521         (interpolate_trigger_get_value_array):
1522         * libs/gst/controller/lib.c: (gst_controller_init):
1523         * pkgconfig/Makefile.am:
1524         * pkgconfig/gstreamer-control-uninstalled.pc.in:
1525         * pkgconfig/gstreamer-control.pc.in:
1526         * testsuite/Makefile.am:
1527         * testsuite/controller/.cvsignore:
1528         * testsuite/controller/Makefile.am:
1529         * testsuite/controller/interpolator.c: (main):
1530           added controller code
1531           removed dparam pc files
1532
1533 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
1534         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
1535         (gst_collectpads_stop):
1536           Broadcast the condition when shutting down, to make sure we wake all
1537           threads up. Shut down pads on finalize, for safety.
1538
1539 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
1540         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1541         (gst_base_transform_handle_buffer),
1542         (gst_base_transform_change_state):
1543           Handle PAUSED->READY->PAUSED transition after negotiation
1544           occurred already.
1545         * gst/gstmessage.c: (gst_message_init):
1546           Extra piece of debug for new messages.
1547
1548 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
1549
1550         * configure.ac:
1551         * docs/gst/tmpl/gstbasesrc.sgml:
1552         * docs/gst/tmpl/gstelement.sgml:
1553         * docs/gst/tmpl/gstevent.sgml:
1554         * docs/gst/tmpl/gstfakesrc.sgml:
1555         * docs/gst/tmpl/gstformat.sgml:
1556         * docs/gst/tmpl/gstghostpad.sgml:
1557         * docs/gst/tmpl/gstpad.sgml:
1558         * docs/gst/tmpl/gstquery.sgml:
1559         * docs/gst/tmpl/gststructure.sgml:
1560         * docs/gst/tmpl/gsttaglist.sgml:
1561         * docs/gst/tmpl/gstvalue.sgml:
1562         * docs/libs/gstreamer-libs-docs.sgml:
1563         * docs/libs/gstreamer-libs-sections.txt:
1564         * docs/libs/gstreamer-libs.types:
1565         * libs/gst/Makefile.am:
1566         * libs/gst/control/.cvsignore:
1567         * libs/gst/control/Makefile.am:
1568         * libs/gst/control/control.c:
1569         * libs/gst/control/control.h:
1570         * libs/gst/control/dparam.c:
1571         * libs/gst/control/dparam.h:
1572         * libs/gst/control/dparam_smooth.c:
1573         * libs/gst/control/dparam_smooth.h:
1574         * libs/gst/control/dparamcommon.h:
1575         * libs/gst/control/dparammanager.c:
1576         * libs/gst/control/dparammanager.h:
1577         * libs/gst/control/dplinearinterp.c:
1578         * libs/gst/control/dplinearinterp.h:
1579         * libs/gst/control/unitconvert.c:
1580         * libs/gst/control/unitconvert.h:
1581         * testsuite/Makefile.am:
1582         * testsuite/dynparams/.cvsignore:
1583         * testsuite/dynparams/Makefile.am:
1584         * testsuite/dynparams/dparamstest.c:
1585         * tools/Makefile.am:
1586         * tools/gst-inspect.c: (print_element_info), (main):
1587         * tools/gst-xmlinspect.c: (print_element_info), (main):
1588           deactivate and remove dparams (libgstcontrol)
1589
1590 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1591
1592         * gst/elements/gsttypefindelement.c:
1593         (gst_type_find_element_have_type), (gst_type_find_element_init),
1594         (stop_typefinding), (gst_type_find_element_handle_event),
1595         (gst_type_find_element_chain), (gst_type_find_element_getrange):
1596         * gst/elements/gsttypefindelement.h:
1597           Set caps on all outgoing buffers, not just the first one.
1598
1599 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1600
1601         * gst/elements/gsttypefindelement.c:
1602         (gst_type_find_element_have_type),
1603         (gst_type_find_element_check_set_buffer_caps),
1604         (gst_type_find_element_init), (stop_typefinding),
1605         (gst_type_find_element_handle_event),
1606         (gst_type_find_element_chain), (gst_type_find_element_getrange):
1607         * gst/elements/gsttypefindelement.h:
1608           Set caps on first outgoing buffer when we've found the type.
1609
1610 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1611
1612         * docs/gst/gstreamer-docs.sgml:
1613         * docs/gst/gstreamer-sections.txt:
1614         * docs/gst/tmpl/gstscheduler.sgml:
1615         * docs/gst/tmpl/gstschedulerfactory.sgml:
1616           Remove some old cruft from docs.
1617
1618 2005-07-31  Tim-Philipp M??ller  <tim at centricular dot net>
1619
1620         * gst/gstpad.h:
1621           Fix inline docs for GstPadLinkReturn.
1622           
1623         * gst/gststructure.c: (gst_structure_has_name):
1624         * gst/gststructure.h:
1625         * docs/gst/gstreamer-sections.txt:
1626           New API: gst_structure_has_name().
1627
1628 2005-07-30  Tim-Philipp M??ller  <tim at centricular dot net>
1629
1630         * configure.ac:
1631           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
1632           and _LARGEFILE_SOURCE in config.h as required. Do not 
1633           export those flags in our .pc files any longer (#142209).
1634
1635           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
1636
1637         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
1638         (gst_file_sink_do_seek), (gst_file_sink_event),
1639         (gst_file_sink_get_current_offset), (gst_file_sink_render):
1640           Redo seek/tell calls with large file support in mind; add some
1641           debugging messages; add log message that tells us when large
1642           file support is unavailable or not enabled for some reason.
1643
1644         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
1645           Add log message that tells us when large file support 
1646           is unavailable or not enabled for some reason.
1647
1648 2005-07-29  Wim Taymans  <wim@fluendo.com>
1649
1650         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
1651         Added test for removing an element with ghostpad from a bin.
1652         Fixed test as current implementation does the right thing.
1653
1654         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
1655         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
1656         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
1657         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
1658         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
1659         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
1660         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
1661         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1662         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
1663         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
1664         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
1665         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
1666         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
1667         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
1668         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
1669         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
1670         * gst/gstghostpad.h:
1671         Clean up ghostpads, remove properties for internal stuff.
1672         Make threadsafe.
1673         Fix refcounting.
1674         Prepare for switching targets, not all use cases work yet.
1675
1676 2005-07-29  Wim Taymans  <wim@fluendo.com>
1677
1678         * docs/design/part-gstghostpad.txt:
1679         Small update.
1680
1681         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
1682         (gst_bin_remove_func):
1683         Unlinking pads while holding the bin LOCK is not a good
1684         idea.
1685
1686         * gst/gstpad.c: (gst_pad_class_init),
1687         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
1688         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
1689         No prob setting template after creating the pad.
1690
1691 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
1692
1693         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
1694         (gst_bus_peek), (gst_bus_source_dispatch),
1695         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
1696         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
1697           gst_bus_poll may be called from other threads. Handle
1698           this nicely by not making poll_data disappear off the
1699           stack once gst_bus_poll returns.
1700           gst_bus_peek now increments the refcount on the returned
1701           message.
1702
1703 2005-07-29  Wim Taymans  <wim@fluendo.com>
1704
1705         * docs/design/part-gstghostpad.txt:
1706         Overview of current GhostPad datastructures and use
1707         cases for changing the target.
1708
1709 2005-07-28  Wim Taymans  <wim@fluendo.com>
1710
1711         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1712         Added checks for hierarchy consistency whan adding linked
1713         elements to bins.
1714
1715         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1716         Added check to test element scheduling without bin/pipeline.
1717
1718         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1719         First add elements to bin, then link.
1720         
1721         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
1722         (gst_bin_remove_func):
1723         Unlink pads from elements added/removed from bin to maintain
1724         hierarchy consistency.
1725
1726 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1727
1728         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
1729         (gst_base_transform_handle_buffer):
1730         * gst/base/gstbasetransform.h:
1731           Remove broken delay_configure (fixes renegotiation of software
1732           scaling pipelines); remove some leftover printf()s.
1733
1734 2005-07-28  Wim Taymans  <wim@fluendo.com>
1735
1736         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
1737         Added some more tests for wrong hierarchy
1738
1739         * docs/design/part-overview.txt:
1740         Some updates.
1741
1742         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
1743         Cleanups.
1744
1745         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
1746         (gst_element_dispose):
1747         Some more cleanups.
1748
1749         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1750         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
1751         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1752         (gst_pad_set_caps), (gst_pad_send_event):
1753         Check for correct hierarchy when linking pads. Moving to
1754         strict requirement for ghostpads when linking elements in
1755         different bins.
1756
1757         * gst/gstpad.h:
1758         Clean ups. Added WRONG_HIERARCHY return value.
1759
1760 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1761
1762         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1763           Better debug if no transform is possible.
1764
1765 2005-07-27  Wim Taymans  <wim@fluendo.com>
1766
1767         * docs/random/wtay/network-transp:
1768         Some old doc I had.
1769
1770 2005-07-27  Wim Taymans  <wim@fluendo.com>
1771
1772         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1773         (gst_dp_event_from_packet):
1774         Fix serialization of seek events.
1775
1776 2005-07-27  Wim Taymans  <wim@fluendo.com>
1777
1778         * check/gst-libs/gdp.c: (GST_START_TEST):
1779         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
1780         Fix compilation and fix event serialization.
1781
1782 2005-07-27  Wim Taymans  <wim@fluendo.com>
1783
1784         * CHANGES-0.9:
1785         * docs/design/part-TODO.txt:
1786         * docs/design/part-events.txt:
1787         Some docs updates
1788
1789         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1790         (gst_base_sink_event), (gst_base_sink_do_sync),
1791         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
1792         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1793         (gst_base_src_do_seek), (gst_base_src_event_handler),
1794         (gst_base_src_loop):
1795         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1796         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1797         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1798         (gst_base_transform_event), (gst_base_transform_handle_buffer),
1799         (gst_base_transform_set_passthrough),
1800         (gst_base_transform_is_passthrough):
1801         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
1802         * gst/elements/gstfilesink.c: (gst_file_sink_event):
1803         Event updates.
1804
1805         * gst/gstbuffer.h:
1806         Use faster casts.
1807
1808         * gst/gstelement.c: (gst_element_seek):
1809         * gst/gstelement.h:
1810         Update gst_element_seek.
1811
1812         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
1813         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
1814         (gst_event_new_flush_start), (gst_event_new_flush_stop),
1815         (gst_event_new_eos), (gst_event_new_newsegment),
1816         (gst_event_parse_newsegment), (gst_event_new_tag),
1817         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
1818         (gst_event_parse_qos), (gst_event_new_seek),
1819         (gst_event_parse_seek), (gst_event_new_navigation):
1820         * gst/gstevent.h:
1821         Make GstEvent use GstStructure. Add parsing code, make sure the
1822         API is sufficiently generic.
1823         Mark possible directions of events and serialization.
1824
1825         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
1826         (_gst_message_copy), (gst_message_new_segment_start),
1827         (gst_message_new_segment_done), (gst_message_new_custom),
1828         (gst_message_parse_segment_start),
1829         (gst_message_parse_segment_done):
1830         Small cleanups.
1831
1832         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1833         (gst_pad_set_caps), (gst_pad_send_event):
1834         Update for new events. 
1835         Catch events sent in wrong directions.
1836
1837         * gst/gstqueue.c: (gst_queue_link_src),
1838         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1839         (gst_queue_handle_src_query):
1840         Event updates.
1841
1842         * gst/gsttag.c:
1843         * gst/gsttag.h:
1844         Remove event code from this file.
1845
1846         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1847         (gst_dp_event_from_packet):
1848         Event updates.
1849
1850 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1851
1852         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
1853         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1854         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
1855           Make debugging actually useful.
1856
1857 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1858
1859         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
1860         (gst_pad_fixate_caps):
1861           Implement default fixation once again, so that gst_pad_fixate()
1862           actually does anything at all. This probably needs to be some
1863           sort of a last resort, and use profile-based fixation first, but
1864           since that doesn't exist yet, this is the best we have. Fixes
1865           visualization in Totem.
1866
1867 2005-07-22  Wim Taymans  <wim@fluendo.com>
1868
1869         * docs/design/part-events.txt:
1870         Small update.
1871
1872         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1873         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
1874         (gst_base_sink_activate_pull):
1875         Some more comments.
1876
1877         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
1878         (gst_fake_src_create):
1879         Fix handoff marshall.
1880
1881         * gst/elements/gstidentity.c: (gst_identity_class_init),
1882         (gst_identity_transform_ip):
1883         We're a real inplace element.
1884
1885         * gst/gstbus.c: (gst_bus_post):
1886         Added some comments.
1887
1888         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
1889         * tests/muxing/case1.c: (main):
1890         * tests/sched/dynamic-pipeline.c: (main):
1891         * tests/sched/interrupt1.c: (main):
1892         * tests/sched/interrupt2.c: (main):
1893         * tests/sched/interrupt3.c: (main):
1894         * tests/sched/runxml.c: (main):
1895         * tests/sched/sched-stress.c: (main):
1896         * tests/seeking/seeking1.c: (event_received), (main):
1897         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
1898         (main):
1899         * tests/threadstate/threadstate3.c: (main):
1900         * tests/threadstate/threadstate4.c: (main):
1901         * tests/threadstate/threadstate5.c: (main):
1902         Fix the tests.
1903
1904 2005-07-21  Wim Taymans  <wim@fluendo.com>
1905
1906         * docs/design/part-seeking.txt:
1907         Some small additions.
1908
1909         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1910         (gst_base_sink_get_times), (gst_base_sink_do_sync),
1911         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
1912         * gst/base/gstbasesink.h:
1913         discont values are gint64, handle the math correctly.
1914
1915         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1916         Make the basesrc report error if the source pad is not linked.
1917
1918         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
1919         (gst_queue_loop), (gst_queue_handle_src_query),
1920         (gst_queue_src_activate_push):
1921         Make queue collect data even if the srcpad is not linked.
1922         Start pushing out data as soon as it is linked.
1923
1924         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
1925         * gst/gstutils.h:
1926         Added gst_flow_get_name() to ease error reporting.
1927
1928 2005-07-20  Wim Taymans  <wim@fluendo.com>
1929
1930         * gst/gstmessage.c: (gst_message_new_segment_start),
1931         (gst_message_new_segment_done), (gst_message_parse_segment_start),
1932         (gst_message_parse_segment_done):
1933         * gst/gstmessage.h:
1934         Added a bunch of messages for advanced seeking.
1935
1936         * gst/parse/grammar.y:
1937         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
1938         (gst_dpman_state_changed):
1939         Fix some new-pad -> pad-added signals
1940
1941 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1942
1943         * docs/manual/appendix-porting.xml:
1944         * docs/pwg/appendix-porting.xml:
1945           Document new-pad/state-change signal renames and the FixedList
1946           type rename.
1947
1948 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1949
1950         * docs/manual/advanced-autoplugging.xml:
1951         * docs/manual/basics-helloworld.xml:
1952         * docs/manual/basics-pads.xml:
1953         * docs/random/ds/0.9-suggested-changes:
1954         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
1955         * gst/gstelement.h:
1956         * gst/gstevent.h:
1957         * gst/gstformat.h:
1958         * gst/gstquery.h:
1959         * gst/gststructure.c: (gst_structure_value_get_generic_type),
1960         (gst_structure_parse_array), (gst_structure_parse_value):
1961         * gst/gstvalue.c: (gst_type_is_fixed),
1962         (gst_value_list_prepend_value), (gst_value_list_append_value),
1963         (gst_value_list_get_size), (gst_value_list_get_value),
1964         (gst_value_transform_array_string), (gst_value_serialize_array),
1965         (gst_value_deserialize_array), (gst_value_intersect_array),
1966         (gst_value_is_fixed), (_gst_value_initialize):
1967         * gst/gstvalue.h:
1968           GstElement::new-pad -> pad-added, GstElement::state-change ->
1969           state-changed, GstValueFixedList -> GstValueArray, add format and
1970           flags as their own arguments in gst_element_seek() (should improve
1971           "bindeability"), remove function generators since they don't work
1972           under a whole bunch of compilers (they were deprecated already
1973           anyway).
1974
1975 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1976
1977         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
1978         (_gst_debug_register_funcptr):
1979         * gst/gstinfo.h:
1980           Fix illegal cast on some platforms (#309253).
1981
1982 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1983
1984         * gst/gstmessage.c: (gst_message_new_custom):
1985         * gst/gstmessage.h:
1986           Add _new_custom, make _new_application a macro to _new_custom.
1987
1988 2005-07-20  Wim Taymans  <wim@fluendo.com>
1989
1990         * gst/base/gstbasesrc.c: (gst_base_src_init),
1991         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
1992         * gst/base/gstbasesrc.h:
1993         Add a gboolean to decide when to push out a discont.
1994
1995         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1996         (gst_queue_loop), (gst_queue_handle_src_query),
1997         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
1998         (gst_queue_set_property), (gst_queue_get_property):
1999         Some cleanups.
2000
2001         * tests/threadstate/threadstate1.c: (main):
2002         Make a thread test compile and run... very silly..
2003
2004
2005 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2006
2007         * docs/manual/appendix-porting.xml:
2008           Mention removal of libgstgconf-0.9.la and existence of gconf
2009           elements.
2010
2011 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2012
2013         * docs/pwg/advanced-clock.xml:
2014         * docs/pwg/appendix-porting.xml:
2015         * docs/pwg/intro-preface.xml:
2016         * docs/pwg/other-base.xml:
2017         * docs/pwg/other-manager.xml:
2018         * docs/pwg/other-nton.xml:
2019         * docs/pwg/other-ntoone.xml:
2020         * docs/pwg/other-oneton.xml:
2021         * docs/pwg/pwg.xml:
2022           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
2023           demuxer), remove n-to-n (was never written), fix some code examples
2024           and links and update the porting section to include all this.
2025
2026 2005-07-19  Wim Taymans  <wim@fluendo.com>
2027
2028         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
2029         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
2030         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
2031         (gst_queue_src_activate_push), (gst_queue_change_state),
2032         (gst_queue_get_property):
2033         * gst/gstqueue.h:
2034         Propagate GstFlowReturn more intelligently upstream and output
2035         an ERROR/EOS when streaming stopped due to fatal error.
2036
2037 2005-07-19  Wim Taymans  <wim@fluendo.com>
2038
2039         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2040         Don't block forever for the state change to complete, the
2041         pipeline already did with a sensible timeout.
2042
2043 2005-07-19  Wim Taymans  <wim@fluendo.com>
2044
2045         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
2046         Make sure we never call the create function is we
2047         got deactivated.
2048
2049 2005-07-19  Andy Wingo  <wingo@pobox.com>
2050
2051         * gst/parse/parse.l: Attempt to solve bug #172815.
2052
2053 2005-07-19  Wim Taymans  <wim@fluendo.com>
2054
2055         * docs/design/part-clocks.txt:
2056         * docs/design/part-events.txt:
2057         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
2058         Small docs updates.
2059         Only update the seeking values when we are not
2060         busy streaming.
2061
2062 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
2063
2064         * gst/base/gstbasesrc.c: (gst_base_src_loop):
2065           Oops, ignore the result of gst_pad_push_event here.
2066
2067 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
2068
2069         * gst/base/gstbasesrc.c: (gst_base_src_loop),
2070         (gst_base_src_activate_push):
2071           Send discont event from the loop function, as pads
2072           aren't activated yet in the activate_push handler.
2073
2074         * gst/gstbin.c: (bin_bus_handler):
2075           Don't leak element name.
2076
2077 2005-07-18  Andy Wingo  <wingo@pobox.com>
2078
2079         * configure.ac: Use AS_LIBTOOL_TAGS.
2080
2081 2005-07-18  Wim Taymans  <wim@fluendo.com>
2082
2083         * docs/gst/gstreamer.types:
2084         Remove deleted types.
2085
2086 2005-07-18  Wim Taymans  <wim@fluendo.com>
2087
2088         * check/elements/gstfakesrc.c: (GST_START_TEST):
2089         * configure.ac:
2090         * gst/Makefile.am:
2091         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
2092         (init_popt_callback):
2093         * gst/gst.h:
2094         * gst/gst_private.h:
2095         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
2096         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
2097         * gst/gstbin.h:
2098         * gst/gstbus.h:
2099         * gst/gstconfig.h.in:
2100         * gst/gstelement.c: (gst_element_class_init),
2101         (gst_element_set_base_time), (gst_element_get_base_time),
2102         (iterator_fold_with_resync), (gst_element_change_state),
2103         (gst_element_dispose), (gst_element_get_bus):
2104         * gst/gstelement.h:
2105         * gst/gstelementfactory.h:
2106         * gst/gsterror.c: (_gst_core_errors_init):
2107         * gst/gsterror.h:
2108         * gst/gstevent.h:
2109         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
2110         * gst/gstindex.c:
2111         * gst/gstinfo.c: (_gst_debug_init):
2112         * gst/gstmessage.c: (_gst_message_copy):
2113         * gst/gstmessage.h:
2114         * gst/gstminiobject.h:
2115         * gst/gstobject.c:
2116         * gst/gstobject.h:
2117         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
2118         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
2119         * gst/gstpad.h:
2120         * gst/gstparse.h:
2121         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
2122         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
2123         (gst_pipeline_get_last_stream_time):
2124         * gst/gstpipeline.h:
2125         * gst/gstpluginfeature.h:
2126         * gst/gstquery.h:
2127         * gst/gstscheduler.c:
2128         * gst/gstscheduler.h:
2129         * gst/gststructure.h:
2130         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2131         (gst_task_finalize), (gst_task_func), (gst_task_create),
2132         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
2133         (gst_task_stop), (gst_task_pause):
2134         * gst/gsttask.h:
2135         * gst/gsttypefind.h:
2136         * gst/gsttypes.h:
2137         * gst/registries/gstlibxmlregistry.c: (load_feature),
2138         (gst_xml_registry_load), (gst_xml_registry_save_feature):
2139         * gst/registries/gstxmlregistry.c:
2140         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
2141         * gst/schedulers/threadscheduler.c:
2142         * libs/gst/control/dparammanager.h:
2143         * tools/gst-inspect.c: (print_element_list),
2144         (print_plugin_features), (print_element_features):
2145         * tools/gst-xmlinspect.c: (print_element_list),
2146         (print_plugin_info), (main):
2147         Removed plugable schedulers.
2148         Removed Scheduler/Manager from elements.
2149         Removed gsttypes.h, rearranged includes.
2150         Removed dependency pad<->element, element<>pipeline, and
2151         various others,  fix includes.
2152         implement gst_pad_get_parent() with gst_object_get_parent()
2153         Make GstTask sefcontained.
2154         Fix _get_state() on GstBin, it did not return ASYNC with a 0
2155         timeout.
2156         Fix endless loop in iterator_fold_with_resync.
2157
2158
2159 2005-07-18  Wim Taymans  <wim@fluendo.com>
2160
2161         * gst/Makefile.am:
2162         * gst/gstarch.h:
2163         Remove old file.
2164
2165 2005-07-18  Wim Taymans  <wim@fluendo.com>
2166
2167         * gst/Makefile.am:
2168         No more cothreads.h
2169
2170 2005-07-18  Wim Taymans  <wim@fluendo.com>
2171
2172         * gst/cothreads.c:
2173         * gst/cothreads.h:
2174         Let's remove these.
2175
2176 2005-07-18  Wim Taymans  <wim@fluendo.com>
2177
2178         * docs/design/part-dynamic.txt:
2179         * docs/design/part-events.txt:
2180         * docs/design/part-seeking.txt:
2181         Some more docs in the works.
2182
2183         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
2184         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
2185         (gst_base_transform_setcaps), (gst_base_transform_get_size),
2186         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
2187         (gst_base_transform_handle_buffer),
2188         (gst_base_transform_sink_activate_push),
2189         (gst_base_transform_src_activate_pull),
2190         (gst_base_transform_set_passthrough),
2191         (gst_base_transform_is_passthrough):
2192         Refcounting fixes.
2193
2194         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
2195         Cleanups.
2196
2197         * gst/gstevent.c: (gst_event_finalize):
2198         Set SRC to NULL.
2199
2200         * gst/gstutils.c: (gst_element_unlink),
2201         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
2202         (gst_pad_proxy_setcaps):
2203         * gst/gstutils.h:
2204         Add _get_parent_element() to get a pads parent as an element.
2205
2206 2005-07-18  Wim Taymans  <wim@fluendo.com>
2207
2208         * check/gst/gstbin.c: (GST_START_TEST):
2209         Remove bogus test.
2210
2211 2005-07-18  Wim Taymans  <wim@fluendo.com>
2212
2213         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
2214         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
2215         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2216         (gst_base_sink_event), (gst_base_sink_do_sync),
2217         (gst_base_sink_chain), (gst_base_sink_loop),
2218         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
2219         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
2220         Refcounting fixes.
2221         Fix logic for returning ASYNC when not prerolled.
2222
2223 2005-07-18  Wim Taymans  <wim@fluendo.com>
2224
2225         * gst/gstqueue.c: (gst_queue_handle_sink_event):
2226         Fix nasty refcount bug.
2227
2228 2005-07-16 Philippe Khalaf <burger@speedy.org>
2229         * gst/elements/gstfdsrc.c:
2230         * gst/elements/gstfdsrc.h:
2231         * gst/elements/gstelements.c:
2232         * gst/elements/Makefile.am:
2233         Ported fdsrc to 0.9.
2234
2235 2005-07-16  Wim Taymans  <wim@fluendo.com>
2236
2237         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2238         (gst_base_sink_do_sync):
2239         Fix compile error.
2240
2241 2005-07-16  Wim Taymans  <wim@fluendo.com>
2242
2243         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2244         (gst_base_sink_event), (gst_base_sink_get_times),
2245         (gst_base_sink_do_sync), (gst_base_sink_change_state):
2246         * gst/base/gstbasesink.h:
2247         Store and use discont values when syncing buffers as described
2248         in design docs.
2249         
2250         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
2251         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
2252         (gst_base_src_activate_push):
2253         Push discont event when starting.
2254
2255         * gst/elements/gstidentity.c: (gst_identity_transform):
2256         Small cleanups.
2257
2258         * gst/gstbin.c: (gst_bin_change_state):
2259         Small cleanups in base_time  distribution.
2260
2261         * gst/gstelement.c: (gst_element_set_base_time),
2262         (gst_element_get_base_time), (gst_element_change_state):
2263         * gst/gstelement.h:
2264         Added methods for the base_time of the element.
2265         Some MT fixes.
2266
2267         * gst/gstpipeline.c: (gst_pipeline_send_event),
2268         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
2269         (gst_pipeline_get_last_stream_time):
2270         * gst/gstpipeline.h:
2271         MT fixes.
2272         Handle seeking as described in design doc, remove stream_time
2273         hack.
2274         Cleanups clock and stream_time selection code. Added accessors
2275         for the stream_time.
2276         
2277
2278 2005-07-16  Andy Wingo  <wingo@pobox.com>
2279
2280         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
2281         (#305291).
2282
2283 2005-07-16  Wim Taymans  <wim@fluendo.com>
2284
2285         * check/gst/gstbin.c: (GST_START_TEST):
2286         Make elements silent as the deep_notify refs the
2287         parent, which might make the test fail.
2288
2289         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
2290         Don't hold the lock for too long.
2291
2292 2005-07-16  Tim-Philipp M??ller  <tim at centricular dot net>
2293
2294         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
2295           Don't unref the caps we passed to gst_caps_make_writable() after
2296           passing them. gst_caps_make_writable() will do that for us.
2297
2298 2005-07-15  Andy Wingo  <wingo@pobox.com>
2299
2300         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
2301         (#157311).
2302
2303         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
2304         own marshalling function for the handoff signal. Properly type the
2305         buffer as a buffer. Fixes some warnings. Should do a more general
2306         solution.
2307         (gst_identity_class_init): Plug into the right marshaller.
2308
2309 2005-07-15  Wim Taymans  <wim@fluendo.com>
2310
2311         * docs/design/part-TODO.txt:
2312         * docs/design/part-clocks.txt:
2313         * docs/design/part-element-sink.txt:
2314         * docs/design/part-events.txt:
2315         * docs/design/part-gstpipeline.txt:
2316         Updated docs, mostly DISCONT related.
2317
2318 2005-07-15  Tim-Philipp M??ller  <tim at centricular dot net>
2319
2320         * docs/pwg/building-pads.xml:
2321           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
2322
2323 2005-07-15  Andy Wingo  <wingo@pobox.com>
2324
2325         * tools/gst-typefind.c: Update, add copyright block.
2326
2327         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
2328         Normalize and truncate caps before fixation.
2329
2330         * gst/gstcaps.h:
2331         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
2332         discards all but the first structure from its argument.
2333
2334 2005-07-15  Wim Taymans  <wim@fluendo.com>
2335
2336         * gst/base/gstbasetransform.c: (gst_base_transform_init),
2337         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
2338         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
2339         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
2340         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
2341         (gst_base_transform_chain), (gst_base_transform_change_state),
2342         (gst_base_transform_set_passthrough),
2343         (gst_base_transform_is_passthrough):
2344         * gst/base/gstbasetransform.h:
2345         Make passthrough work using the bufferpools.
2346         Changed API a bit, subclasses have to write into a buffer
2347         provided by the base class.
2348         More debug info in nego functions.
2349         
2350         * gst/elements/gstidentity.c: (gst_identity_init),
2351         (gst_identity_transform):
2352         Port to new base class.
2353
2354 2005-07-15  Wim Taymans  <wim@fluendo.com>
2355
2356         * gst/gstmessage.c: (gst_message_new_state_changed):
2357         * tools/gst-launch.c: (event_loop), (main):
2358         Totally dump messages in -launch with the -m option.
2359         Fix message name for State messages,
2360
2361 2005-07-14  Wim Taymans  <wim@fluendo.com>
2362
2363         * gst/base/gstbasesrc.c: (gst_base_src_loop):
2364         Post error messages on errors.
2365
2366 2005-07-14  Wim Taymans  <wim@fluendo.com>
2367
2368         * gst/gstcaps.c: (gst_caps_do_simplify):
2369         Remove debug info.
2370
2371         * gst/gsterror.h:
2372         Define error for stream stopped.
2373
2374         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2375         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
2376         Do proper return values.
2377
2378         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
2379         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
2380         (gst_pad_get_range):
2381         Better return values.
2382
2383         * gst/gstpad.h:
2384         Reorganise return values, add macro to check for fatal errors.
2385
2386         * gst/gstqueue.c: (gst_queue_chain):
2387         Return proper GstFlowReturn values,
2388
2389 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2390
2391         * docs/gst/gstreamer-sections.txt:
2392         * docs/gst/gstreamer.types:
2393         * docs/gst/tmpl/gst.sgml:
2394         * docs/gst/tmpl/gstbasesink.sgml:
2395         * docs/gst/tmpl/gstbasesrc.sgml:
2396         * docs/gst/tmpl/gstbasetransform.sgml:
2397         * docs/gst/tmpl/gstbin.sgml:
2398         * docs/gst/tmpl/gstbuffer.sgml:
2399         * docs/gst/tmpl/gstcaps.sgml:
2400         * docs/gst/tmpl/gstclock.sgml:
2401         * docs/gst/tmpl/gstcompat.sgml:
2402         * docs/gst/tmpl/gstconfig.sgml:
2403         * docs/gst/tmpl/gstelement.sgml:
2404         * docs/gst/tmpl/gstelementdetails.sgml:
2405         * docs/gst/tmpl/gstelementfactory.sgml:
2406         * docs/gst/tmpl/gstenumtypes.sgml:
2407         * docs/gst/tmpl/gsterror.sgml:
2408         * docs/gst/tmpl/gstevent.sgml:
2409         * docs/gst/tmpl/gstfakesink.sgml:
2410         * docs/gst/tmpl/gstfakesrc.sgml:
2411         * docs/gst/tmpl/gstfilesink.sgml:
2412         * docs/gst/tmpl/gstfilesrc.sgml:
2413         * docs/gst/tmpl/gstfilter.sgml:
2414         * docs/gst/tmpl/gstformat.sgml:
2415         * docs/gst/tmpl/gstghostpad.sgml:
2416         * docs/gst/tmpl/gstimplementsinterface.sgml:
2417         * docs/gst/tmpl/gstindex.sgml:
2418         * docs/gst/tmpl/gstindexfactory.sgml:
2419         * docs/gst/tmpl/gstinfo.sgml:
2420         * docs/gst/tmpl/gstiterator.sgml:
2421         * docs/gst/tmpl/gstmacros.sgml:
2422         * docs/gst/tmpl/gstmemchunk.sgml:
2423         * docs/gst/tmpl/gstminiobject.sgml:
2424         * docs/gst/tmpl/gstobject.sgml:
2425         * docs/gst/tmpl/gstpad.sgml:
2426         * docs/gst/tmpl/gstpadtemplate.sgml:
2427         * docs/gst/tmpl/gstparse.sgml:
2428         * docs/gst/tmpl/gstpipeline.sgml:
2429         * docs/gst/tmpl/gstplugin.sgml:
2430         * docs/gst/tmpl/gstpluginfeature.sgml:
2431         * docs/gst/tmpl/gstquery.sgml:
2432         * docs/gst/tmpl/gstqueue.sgml:
2433         * docs/gst/tmpl/gstregistry.sgml:
2434         * docs/gst/tmpl/gstregistrypool.sgml:
2435         * docs/gst/tmpl/gstscheduler.sgml:
2436         * docs/gst/tmpl/gstschedulerfactory.sgml:
2437         * docs/gst/tmpl/gststructure.sgml:
2438         * docs/gst/tmpl/gstsystemclock.sgml:
2439         * docs/gst/tmpl/gsttaglist.sgml:
2440         * docs/gst/tmpl/gsttagsetter.sgml:
2441         * docs/gst/tmpl/gsttrace.sgml:
2442         * docs/gst/tmpl/gsttrashstack.sgml:
2443         * docs/gst/tmpl/gsttypefind.sgml:
2444         * docs/gst/tmpl/gsttypefindfactory.sgml:
2445         * docs/gst/tmpl/gsttypes.sgml:
2446         * docs/gst/tmpl/gsturihandler.sgml:
2447         * docs/gst/tmpl/gsturitype.sgml:
2448         * docs/gst/tmpl/gstutils.sgml:
2449         * docs/gst/tmpl/gstvalue.sgml:
2450         * docs/gst/tmpl/gstversion.sgml:
2451         * docs/gst/tmpl/gstxml.sgml:
2452         * docs/libs/tmpl/gstcontrol.sgml:
2453         * docs/libs/tmpl/gstdataprotocol.sgml:
2454         * docs/libs/tmpl/gstdparam.sgml:
2455         * docs/libs/tmpl/gstdplinint.sgml:
2456         * docs/libs/tmpl/gstdpman.sgml:
2457         * docs/libs/tmpl/gstdpsmooth.sgml:
2458         * docs/libs/tmpl/gstgetbits.sgml:
2459         * docs/libs/tmpl/gstunitconvert.sgml:
2460         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
2461         (gst_push_src_base_init), (gst_push_src_class_init),
2462         (gst_push_src_init), (gst_push_src_create):
2463         * gst/base/gstpushsrc.h:
2464         * gst/elements/gstelements.c:
2465         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
2466         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
2467         (gst_fake_sink_init), (gst_fake_sink_set_property),
2468         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
2469         (gst_fake_sink_event), (gst_fake_sink_preroll),
2470         (gst_fake_sink_render), (gst_fake_sink_change_state):
2471         * gst/elements/gstfakesink.h:
2472         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
2473         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
2474         (gst_fake_src_base_init), (gst_fake_src_class_init),
2475         (gst_fake_src_init), (gst_fake_src_event_handler),
2476         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
2477         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
2478         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
2479         (gst_fake_src_create_buffer), (gst_fake_src_create),
2480         (gst_fake_src_start), (gst_fake_src_stop):
2481         * gst/elements/gstfakesrc.h:
2482         * gst/elements/gstfilesink.c: (_do_init),
2483         (gst_file_sink_base_init), (gst_file_sink_class_init),
2484         (gst_file_sink_init), (gst_file_sink_dispose),
2485         (gst_file_sink_set_location), (gst_file_sink_set_property),
2486         (gst_file_sink_get_property), (gst_file_sink_open_file),
2487         (gst_file_sink_close_file), (gst_file_sink_query),
2488         (gst_file_sink_event), (gst_file_sink_render),
2489         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
2490         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
2491         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
2492         * gst/elements/gstfilesink.h:
2493         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
2494         (gst_file_src_class_init), (gst_file_src_init),
2495         (gst_file_src_finalize), (gst_file_src_set_location),
2496         (gst_file_src_set_property), (gst_file_src_get_property),
2497         (gst_file_src_map_region), (gst_file_src_map_small_region),
2498         (gst_file_src_create_mmap), (gst_file_src_create_read),
2499         (gst_file_src_create), (gst_file_src_is_seekable),
2500         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
2501         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
2502         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
2503         (gst_file_src_uri_handler_init):
2504         * gst/elements/gstfilesrc.h:
2505           more autistic cleanliness in functions/names/defines
2506
2507 2005-07-13  Andy Wingo  <wingo@pobox.com>
2508
2509         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
2510         source couldn't negotiate.
2511
2512         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
2513         connections again.
2514
2515         * gst/gstutils.h:
2516         * gst/gstutils.c (gst_element_link_pads_filtered): New old
2517         function. I am channeling Hades. Put your boots on suckers!!!
2518
2519 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2520
2521         * testsuite/caps/Makefile.am:
2522         * testsuite/caps/value_compare.c:
2523         * testsuite/caps/value_intersect.c:
2524         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2525           move two testsuite apps over to the check dir
2526
2527 2005-07-12  Wim Taymans  <wim@fluendo.com>
2528
2529         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
2530         Added more debug info in the negotiate process.
2531
2532         * gst/gstmessage.h:
2533         Prepare for segment playback.
2534
2535         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
2536         Better debugging.
2537
2538         * gst/gstutils.c:
2539         Some more docs.
2540
2541         * tools/gst-launch.c: (main):
2542         NULL pipeline on errors.
2543
2544 2005-07-12  Andy Wingo  <wingo@pobox.com>
2545
2546         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
2547         not it comes from a malloc region. Make sure our copy gets freed.
2548
2549 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2550
2551         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
2552         * check/gst/gstmessage.c: (GST_START_TEST):
2553         * check/gst/gststructure.c: (GST_START_TEST),
2554         (gst_structure_suite), (main):
2555           more testing
2556         * gst/gstelement.c: (gst_element_message_full):
2557           clean up GError and debug string now that they get copied
2558         * gst/gstmessage.c: (gst_message_new_error),
2559         (gst_message_new_warning), (gst_message_parse_error),
2560         (gst_message_parse_warning):
2561           use GST_TYPE_G_ERROR for structure_new, and take copies of
2562           arguments, so that we don't mess up refcounting
2563
2564 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2565
2566         * check/Makefile.am:
2567           add per-test valgrind targets
2568         * check/gst-libs/gdp.c: (GST_START_TEST),
2569         (gst_data_protocol_suite), (main):
2570           clean up
2571
2572 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2573
2574         * check/Makefile.am:
2575           instate more valgrindable tests
2576         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2577         (GST_START_TEST), (fakesrc_suite):
2578         * check/gst/gstpad.c: (GST_START_TEST):
2579         * check/gst/gststructure.c: (GST_START_TEST):
2580           fix test leaks
2581         * docs/gst/tmpl/gstminiobject.sgml:
2582         * gst/gstpad.c: (gst_pad_finalize):
2583           fix the static mutex leak
2584
2585 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2586
2587         * check/Makefile.am:
2588           add two more tests for valgrinding
2589         * check/gst/gstvalue.c: (GST_START_TEST):
2590           test refcount of deserialized buffer, found a leak
2591         * docs/gst/gstreamer-docs.sgml:
2592         * docs/gst/gstreamer-sections.txt:
2593         * docs/gst/gstreamer.types:
2594         * docs/gst/tmpl/gstminiobject.sgml:
2595           add miniobject to docs
2596         * gst/gstminiobject.c:
2597           add some docs
2598         * gst/gstvalue.c: (gst_value_deserialize_buffer),
2599         (gst_string_unwrap):
2600           fix a hard-to-find invalid write for one of the tests
2601           fix a leak for deserialized buffers
2602
2603 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2604
2605         * docs/pwg/advanced-events.xml:
2606         * docs/pwg/advanced-request.xml:
2607         * docs/pwg/advanced-scheduling.xml:
2608         * docs/pwg/appendix-porting.xml:
2609         * docs/pwg/building-boiler.xml:
2610         * docs/pwg/intro-preface.xml:
2611         * docs/pwg/other-ntoone.xml:
2612           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
2613           of example code and explanation for pad activation, loop() and
2614           getrange() functions and a bit more. Remove old comments pointing
2615           to loop-functions.
2616         * examples/pwg/Makefile.am:
2617           Add loop/getrange examples.
2618
2619 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2620
2621         * configure.ac:
2622           check for valgrind binary + some fixes
2623         * check/gst.supp:
2624           valgrind suppressions for the tests
2625         * check/Makefile.am:
2626           add a valgrind: target that valgrinds the unit tests
2627         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
2628         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
2629         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2630         * check/gst/gstghostpad.c:
2631           added some cleanup
2632         * check/gst/gstdata.c:
2633           removed
2634         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
2635         (thread_unref), (gst_mini_object_suite), (main):
2636           added
2637         * gst/gst.c: (gst_deinit):
2638         * gst/gst.h:
2639           add a method to clean up.
2640         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2641         (gst_system_clock_obtain):
2642           allow for disposing the system clock.
2643         * tools/gst-launch.c: (main):
2644           deinit
2645
2646 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2647
2648         * docs/gst/tmpl/gstbasesrc.sgml:
2649         * docs/gst/tmpl/gstfakesrc.sgml:
2650         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2651         (gst_base_src_init), (gst_base_src_set_property),
2652         (gst_base_src_get_property), (gst_base_src_get_range),
2653         (gst_base_src_start):
2654         * gst/base/gstbasesrc.h:
2655           add num-buffers property
2656         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2657         (gst_fakesrc_init), (gst_fakesrc_set_property),
2658         (gst_fakesrc_get_property), (gst_fakesrc_create),
2659         (gst_fakesrc_start):
2660           remove num-buffers property
2661
2662 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2663
2664         * docs/gst/gstreamer-sections.txt:
2665         * docs/gst/tmpl/gstbasesink.sgml:
2666         * docs/gst/tmpl/gstbasesrc.sgml:
2667         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
2668         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
2669         (gst_base_sink_finalize), (gst_base_sink_set_clock),
2670         (gst_base_sink_set_property), (gst_base_sink_get_property),
2671         (gst_base_sink_handle_object), (gst_base_sink_event),
2672         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
2673         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
2674         (gst_base_sink_loop), (gst_base_sink_deactivate),
2675         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
2676         (gst_base_sink_change_state):
2677         * gst/base/gstbasesink.h:
2678         * gst/base/gstbasesrc.h:
2679         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
2680         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2681         (gst_filesink_init):
2682           more macro splitting
2683
2684 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2685
2686         * gst/gstelement.c: (gst_element_get_bus):
2687           add debug
2688         * tools/gst-launch.c: (check_intr), (event_loop):
2689           fix bus leaks
2690
2691 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2692
2693         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
2694           fix a caps leak
2695
2696 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2697
2698         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2699         (gst_base_src_finalize):
2700           add finalize method and clean up properly
2701         * gst/gstpipeline.c: (gst_pipeline_dispose):
2702           add debug
2703
2704 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2705
2706         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
2707         (gst_bin_suite):
2708           add more things to check
2709         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
2710         * gst/gstelement.c:
2711           more debug
2712
2713 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2714
2715         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2716         (GST_START_TEST), (fakesrc_suite):
2717         * check/gst-libs/gdp.c: (GST_START_TEST):
2718         * check/gst/gst.c: (GST_START_TEST):
2719         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
2720         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2721         * check/gst/gstbus.c: (GST_START_TEST):
2722         * check/gst/gstcaps.c: (GST_START_TEST):
2723         * check/gst/gstdata.c: (GST_START_TEST):
2724         * check/gst/gstelement.c: (GST_START_TEST):
2725         * check/gst/gstghostpad.c: (GST_START_TEST):
2726         * check/gst/gstiterator.c: (GST_START_TEST):
2727         * check/gst/gstmessage.c: (GST_START_TEST):
2728         * check/gst/gstobject.c: (GST_START_TEST):
2729         * check/gst/gstpad.c: (GST_START_TEST):
2730         * check/gst/gststructure.c: (GST_START_TEST):
2731         * check/gst/gstsystemclock.c: (GST_START_TEST),
2732         (gst_systemclock_suite):
2733         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
2734         * check/gst/gstvalue.c: (GST_START_TEST):
2735         * check/pipelines/cleanup.c: (GST_START_TEST):
2736         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
2737         * check/states/sinks.c: (GST_START_TEST):
2738         * check/gstcheck.c: (gst_check_init):
2739         * check/gstcheck.h:
2740           add debugging category
2741           use GST_START_TEST now, so we add a debug line
2742
2743 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2744
2745         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
2746           add test for state change message on a bin
2747         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
2748           add another test
2749         * gst/gstbin.c: (gst_bin_init):
2750         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
2751         * gst/gstelement.c: (gst_element_post_message),
2752         (gst_element_set_state):
2753         * gst/gstelementfactory.c: (gst_element_factory_create):
2754         * gst/gstmessage.c: (gst_message_new):
2755         * gst/gstscheduler.c:
2756           various debugging additions and cleanups
2757
2758 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2759
2760         * check/Makefile.am:
2761         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
2762         (main):
2763           adding tests for elements
2764         * gst/gstelement.c: (gst_element_dispose):
2765
2766 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2767
2768         * gst/registries/gstlibxmlregistry.c: (load_feature):
2769           plug more leaks.  A simple gst_init() now is leakfree, yay.
2770
2771 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2772
2773         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
2774         (gst_xml_registry_load):
2775           plug another memleak
2776
2777 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2778
2779         * configure.ac:
2780           use GST_SET_ERROR_CFLAGS
2781         * docs/faq/cvs.xml:
2782           change to ERROR_CFLAGS
2783
2784 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2785
2786         * configure.ac:
2787           make GST_ERROR_CFLAGS overridable and re-enable Werror
2788         * docs/faq/cvs.xml:
2789           add a note about error CFLAGS
2790         * docs/gst/tmpl/gstfakesrc.sgml:
2791         * gst/elements/gstfakesrc.c:
2792           comment out some unused code
2793         * gst/gst.c: (split_and_iterate):
2794         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
2795         (load_feature):
2796           plug some memleaks
2797
2798 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2799
2800         * common/Makefile.am:
2801         * common/gtk-doc.mak:
2802         * docs/gst/Makefile.am:
2803           factor out gtk-doc.mak
2804
2805 2005-07-07  Wim Taymans  <wim@fluendo.com>
2806
2807         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
2808         (gst_thread_scheduler_dispose):
2809         Unlock the STREAM_LOCK completely.
2810
2811 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2812
2813         * check/Makefile.am:
2814         * check/elements/.cvsignore:
2815         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2816         (START_TEST), (fakesrc_suite), (main):
2817         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2818         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2819         (gst_fakesrc_create), (gst_fakesrc_start):
2820         * gst/elements/gstfakesrc.h:
2821           adding a first element test
2822
2823 2005-07-07  Andy Wingo  <wingo@pobox.com>
2824
2825         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
2826         debug message.
2827
2828 2005-07-07  Wim Taymans  <wim@fluendo.com>
2829
2830         * gst/gstquery.c:
2831         * gst/gstquery.h:
2832         Remove old types
2833
2834 2005-07-07  Wim Taymans  <wim@fluendo.com>
2835
2836         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
2837         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
2838         Allow subclasses to implement their own negotiation.
2839
2840 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2841
2842         * docs/design/part-gstbin.txt:
2843         * docs/design/part-gstpipeline.txt:
2844           Update design notes to reflect the movement of
2845           responsibility for bus handling from GstPipeline to
2846           GstBin
2847
2848 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2849
2850         * configure.ac:
2851           Remove unnecessary queue2/3/4 examples.
2852
2853 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2854
2855         * examples/Makefile.am:
2856         * examples/helloworld/helloworld.c: (event_loop), (main):
2857         * examples/queue/queue.c: (event_loop), (main):
2858         * examples/queue2/queue2.c: (main):
2859           Update a couple of the examples to work again.
2860
2861         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2862         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
2863          Spelling corrections and extra debug.
2864         
2865         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
2866         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
2867         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
2868         * gst/gstbin.h:
2869         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
2870         (gst_pipeline_change_state):
2871         * gst/gstpipeline.h:
2872           Move the bus handler for children to the GstBin, and create a
2873           separate bus for receiving messages from children to the one the
2874           bus sends 'upwards' on.
2875
2876 2005-07-06  Wim Taymans  <wim@fluendo.com>
2877
2878         * gst/base/README:
2879         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2880         (gst_base_sink_handle_object), (gst_base_sink_loop),
2881         (gst_base_sink_change_state):
2882         * gst/base/gstbasesink.h:
2883         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2884         (gst_base_src_init), (gst_base_src_setcaps),
2885         (gst_base_src_getcaps), (gst_base_src_loop),
2886         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
2887         (gst_base_src_start), (gst_base_src_change_state):
2888         * gst/base/gstbasesrc.h:
2889         Make basesrc negotiate.
2890         Handle the case where preroll fails in basesink.
2891         Update README.
2892
2893 2005-07-06  Wim Taymans  <wim@fluendo.com>
2894
2895         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
2896         Implement the fixate function.
2897         Clean up acceptcaps.
2898
2899 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2900
2901         * docs/pwg/building-filterfactory.xml:
2902         * docs/pwg/pwg.xml:
2903           Remove never-written filter-factory chapter; I'll add the various
2904           base classes to part 4 ("other element types") later on.
2905
2906 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2907
2908         * docs/pwg/advanced-negotiation.xml:
2909         * docs/pwg/building-boiler.xml:
2910         * docs/pwg/building-pads.xml:
2911         * docs/pwg/pwg.xml:
2912         * examples/pwg/Makefile.am:
2913           Add a chapter on caps negotiation, simplify the original code
2914           samples a bit w.r.t. caps negotiation, add link to the advanced
2915           section. Add a bunch of examples showing different use cases of
2916           different types of caps negotiation. Upstream renegotiation isn't
2917           fully documented yet since nobody knows how that works.
2918
2919 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2920
2921         * check/gst/gstpad.c:
2922         * check/gstcheck.c:
2923         * gst/gstpad.c: (gst_pad_get_internal_links_default):
2924           if pad has no parent, return NULL as list of internal links
2925
2926 2005-07-05  Andy Wingo  <wingo@pobox.com>
2927
2928         * gst/elements/gstfilesrc.c:
2929         * gst/elements/gstfakesrc.c: 
2930         * gst/base/gstpushsrc.c:
2931         * gst/base/gstbasesrc.h: 
2932         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
2933         
2934 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
2935
2936         * Makefile.am:
2937           better report generation target (lcov needs a patch)
2938
2939 2005-07-05  Andy Wingo  <wingo@pobox.com>
2940
2941         * gst/elements, testsuite: Null if we got it...
2942
2943 2005-07-05  Wim Taymans  <wim@fluendo.com>
2944
2945         * configure.ac:
2946         * libs/gst/dataprotocol/Makefile.am:
2947         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
2948         * libs/gst/dataprotocol/dataprotocol.h:
2949         * pkgconfig/Makefile.am:
2950         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
2951         * pkgconfig/gstreamer-dataprotocol.pc.in:
2952         Ported dataprotol to 0.9. 
2953         Added pkgconfig files.
2954
2955 2005-07-05  Andy Wingo  <wingo@pobox.com>
2956
2957         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
2958         Default to returning TRUE for the case when tranform_caps returns
2959         a fixed caps, like for identity or volume.
2960
2961         * check/gst/gstbus.c (pound_bus_with_messages): 
2962         * check/gst/gstmessage.c (START_TEST): 
2963         * check/pipelines/simple_launch_lines.c (got_handoff): Application
2964         message API change.
2965
2966         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
2967         logic weaks here: always run transform_caps, trying passthrough
2968         operation only if the original caps intersects with the transform.
2969
2970         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
2971         source and sink caps.
2972
2973         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
2974         Intersect the peer caps with the pad template before going into
2975         transform_caps.
2976         (gst_base_transform_transform_caps): More debugging.
2977
2978         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
2979         src argument.
2980
2981 2005-07-04  Edward Hervey  <edward@fluendo.com>
2982
2983         * gst/gstutils.c:
2984         * gst/gstutils.h:
2985         (gst_pad_add_*_probe): now returns the signal id for better wrapping
2986         in bindings.
2987
2988 2005-07-04  Andy Wingo  <wingo@pobox.com>
2989
2990         * check/gst/gstpad.c: Only set explicit caps on pads.
2991
2992 2005-07-01  Andy Wingo  <wingo@pobox.com>
2993
2994         * tests/network-clock.scm: Commentary update.
2995
2996         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
2997         Didn't really make sense, not implementable with basetransform,
2998         etc.
2999         (gst_identity_transform): Unref inbuf via make_writable. Feeble
3000         attempt at implementing the sync property, needs an unlock method.
3001
3002         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
3003         New func, by default returns the same caps (the identity
3004         transformation).
3005         (gst_base_transform_getcaps): Uses transform_caps to return
3006         something sensible.
3007         (gst_base_transform_setcaps): Complicated logic to get caps on
3008         both pads, even if they are different, and to call set_caps once
3009         for every time both pads get their caps set.
3010         (gst_base_transform_handle_buffer): Give the ref to the transform
3011         function. Allows in-place modification of the buffer.
3012
3013         * gst/base/gstbasetransform.h (transform_caps): New class method.
3014         Given caps on one side, what can I do on the other.
3015         (set_caps): Take two caps, one for each side of the element.
3016
3017         * gst/gstpad.h:
3018         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
3019         caps in place. This is safe because we can check the mutability of
3020         the caps, and a good idea because fixate functions are just called
3021         as a matter of last resort. (Not actually implemented.)
3022         (gst_pad_set_caps): If the caps we're setting is actually the same
3023         as the existing pad caps, just update the pointer without calling
3024         setcaps. Assert that caps is either NULL or fixed, as per the
3025         docs.
3026
3027         * gst/gstghostpad.c: Update for fixate changes.
3028
3029 2005-07-02  Andy Wingo  <wingo@pobox.com>
3030
3031         * gst/gstcaps.c:
3032         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
3033         two refcounts makes it immutable, which is enough. Doc more.
3034
3035 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
3036
3037         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
3038           Put the mini_object into GValue as a mini_object,
3039           not a gpointer, since that's how we declared
3040           the signal.
3041
3042 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3043
3044         * examples/pwg/Makefile.am:
3045           Fix buildbot again.
3046
3047 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3048
3049         * docs/pwg/building-testapp.xml:
3050           Add extra check.
3051         * examples/pwg/Makefile.am:
3052           Fix buildbot.
3053
3054 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3055
3056         * configure.ac:
3057         * examples/Makefile.am:
3058         * examples/pwg/Makefile.am:
3059         * examples/pwg/extract.pl:
3060           Enable building the PWG examples.
3061         * docs/pwg/advanced-interfaces.xml:
3062           Add URI interface stub.
3063         * docs/pwg/advanced-types.xml:
3064         * docs/pwg/other-autoplugger.xml:
3065         * docs/pwg/appendix-porting.xml:
3066         * docs/pwg/pwg.xml:
3067           Add porting guide (mostly stubs), remove autoplugging (see ADM).
3068         * docs/pwg/building-boiler.xml:
3069         * docs/pwg/building-chainfn.xml:
3070         * docs/pwg/building-pads.xml:
3071         * docs/pwg/building-props.xml:
3072         * docs/pwg/building-state.xml:
3073         * docs/pwg/building-testapp.xml:
3074           Update the building-*.xml parts for 0.9 changes. All examples
3075           code blocks compile in examples/pwg/*.
3076
3077 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3078
3079         * docs/manual/advanced-autoplugging.xml:
3080         * docs/manual/appendix-checklist.xml:
3081         * docs/manual/appendix-integration.xml:
3082         * docs/manual/highlevel-components.xml:
3083           Fix playbin/decodebin examples, update docs a bit, mention bus
3084           instead of signals in various places, mention kmplayer and
3085           kaffeine since they have a working GStreamer backend in the KDE
3086           section.
3087
3088 2005-06-30  Wim Taymans  <wim@fluendo.com>
3089
3090         * CHANGES-0.9:
3091         * docs/design/draft-ghostpads.txt:
3092         * docs/design/draft-push-pull.txt:
3093         * docs/design/draft-query.txt:
3094         * docs/design/part-TODO.txt:
3095         * docs/design/part-query.txt:
3096         Added CHANGES-0.9 doc, updated status of other docs.
3097         
3098         * gst/gstquery.h:
3099         Remove "hmm" macro
3100
3101 2005-06-30  Wim Taymans  <wim@fluendo.com>
3102
3103         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
3104         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
3105         (gst_base_sink_change_state):
3106         * gst/base/gstbasesink.h:
3107         Some tweaks, only EOS and a buffer complete a preroll.
3108
3109 2005-06-30  Andy Wingo  <wingo@pobox.com>
3110
3111         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
3112         activate_push down to the internal pad as well.
3113
3114 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
3115
3116         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3117
3118         * gst/gsttaginterface.c:
3119           Some documentation fixes (#307394 and #307397).
3120
3121 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
3122
3123         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3124
3125         * gst/gstvalue.c: (gst_value_intersect_list):
3126           Fix memleak (#309125).
3127
3128 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3129
3130         * docs/manual/advanced-dataaccess.xml:
3131           Fix fakesrc example to compile; doesn't work, bug somewhere...?
3132         * docs/manual/basics-pads.xml:
3133           Add reference for filtered caps to above chapter.
3134
3135 2005-06-30  Wim Taymans  <wim@fluendo.com>
3136
3137         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
3138         (gst_bin_change_state):
3139         Probes are gone.
3140         Lame attempt at making the state change function a bit
3141         more readable.
3142
3143 2005-06-30  Wim Taymans  <wim@fluendo.com>
3144
3145         * docs/design/part-clocks.txt:
3146         * docs/design/part-element-sink.txt:
3147         * docs/design/part-events.txt:
3148         * docs/design/part-preroll.txt:
3149         * docs/design/part-states.txt:
3150         Some more tweeks and additions to the docs.
3151
3152 2005-06-30  Wim Taymans  <wim@fluendo.com>
3153
3154         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
3155         (default_have_data), (gst_pad_class_init), (gst_pad_init),
3156         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
3157         (gst_pad_check_pull_range), (gst_pad_get_range),
3158         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
3159         * gst/gstpad.h:
3160         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
3161         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3162         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3163         (gst_pad_remove_buffer_probe):
3164         Removed atomic operations, use existing LOCK.
3165         Move exception handling out of main code path.
3166
3167 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3168
3169         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
3170         (silly_return_true_function), (gst_pad_class_init),
3171         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
3172         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
3173         (gst_pad_send_event):
3174           Fix accumulator, add default value by using _emitv() instead
3175           of _emit() for signal emission.
3176
3177 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3178
3179         * docs/manual/advanced-dataaccess.xml:
3180         * examples/manual/Makefile.am:
3181           Add probe example.
3182         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
3183           Make work (??).
3184
3185 2005-06-29  Tim-Philipp M??ller  <tim at centricular dot net>
3186
3187         * gst/elements/gstfilesink.c: (gst_filesink_render):
3188           Simplify code so that we don't have to handle short
3189           writes and return GST_FLOW_ERROR if an error occured.
3190
3191 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3192
3193         * docs/gst/gstreamer-docs.sgml:
3194           Remove probes more.
3195
3196 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3197
3198         * docs/gst/gstreamer-sections.txt:
3199         * docs/gst/tmpl/gstpad.sgml:
3200         * docs/gst/tmpl/gstprobe.sgml:
3201         * gst/Makefile.am:
3202         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
3203         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
3204         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3205         (gst_pad_push_event), (gst_pad_send_event):
3206         * gst/gstpad.h:
3207         * gst/gstutils.c: (gst_pad_add_data_probe),
3208         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3209         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3210         (gst_pad_remove_buffer_probe):
3211         * gst/gstutils.h:
3212           Remove old probes, add new g-signal-based probes and some utility
3213           functions.
3214
3215 2005-06-29  Edward Hervey  <edward@fluendo.com>
3216
3217         * gst/gstelementfactory.c:
3218         * gst/gstutils.h:
3219         * gst/gstutils.c:
3220         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
3221         the definition to the header file.
3222
3223 2005-06-29  Andy Wingo  <wingo@pobox.com>
3224
3225         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
3226         plugins from the source directory.
3227
3228 2005-06-29  Wim Taymans  <wim@fluendo.com>
3229
3230         * docs/gst/tmpl/gstbuffer.sgml:
3231         * docs/gst/tmpl/gstclock.sgml:
3232         Some fixings for blantently wrong text.
3233
3234 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
3235
3236         * check/Makefile.am:
3237         * gst/gst.c: (add_path_func), (init_pre):
3238         * gst/gstregistry.c: (gst_registry_add_path):
3239           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
3240           only scan the GST_PLUGIN_PATH locations, and not add
3241           system locations
3242
3243 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
3244
3245         * docs/gst/gstreamer-sections.txt:
3246         * docs/gst/tmpl/gstbasesrc.sgml:
3247         * gst/gstelement.c:
3248         * gst/gstelement.h:
3249         * gst/gstevent.c:
3250         * gst/gstutils.c:
3251           doc fixes
3252
3253 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3254
3255         * docs/manual/advanced-autoplugging.xml:
3256           Fix autoplugging example.
3257
3258 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3259
3260         * docs/manual/advanced-autoplugging.xml:
3261         * docs/manual/mime-world.fig:
3262           Try to get autoplugging working, fix type detection. Fix text
3263           in hello-world image.
3264
3265 2005-06-29  Wim Taymans  <wim@fluendo.com>
3266
3267         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3268         (gst_base_sink_change_state):
3269         Small debug line.
3270
3271         * gst/gstclock.h:
3272         map SIGNAL and BROADCAST to the right function.
3273
3274         * gst/gstobject.h:
3275         Remove redundant braces.
3276
3277         * gst/gstpad.c: (gst_pad_set_caps):
3278         Don't call setcaps function when reseting caps to NULL.
3279
3280         * gst/gstsystemclock.c: (gst_system_clock_dispose),
3281         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
3282         (gst_system_clock_id_unschedule):
3283         Use BROADCAST as this is what we do.
3284
3285 2005-06-29  Wim Taymans  <wim@fluendo.com>
3286
3287         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3288         We are actually prerolling before commiting the state
3289         change. 
3290
3291 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3292
3293         * docs/manual/advanced-clocks.xml:
3294         * docs/manual/advanced-interfaces.xml:
3295         * docs/manual/advanced-metadata.xml:
3296         * docs/manual/advanced-position.xml:
3297         * docs/manual/advanced-schedulers.xml:
3298         * docs/manual/advanced-threads.xml:
3299         * docs/manual/appendix-porting.xml:
3300         * docs/manual/basics-bins.xml:
3301         * docs/manual/basics-bus.xml:
3302         * docs/manual/basics-elements.xml:
3303         * docs/manual/basics-helloworld.xml:
3304         * docs/manual/basics-pads.xml:
3305         * docs/manual/highlevel-components.xml:
3306         * docs/manual/manual.xml:
3307         * docs/manual/thread.fig:
3308           Update (until threads/scheduling) Application Development Manual;
3309           remove GstThread, add GstBus, add simple porting checklist, add
3310           documentation for tag writing, clocks, make all examples until this
3311           part compile and run.
3312         * examples/manual/Makefile.am:
3313           Update from changes to Application Development Manual; add bus
3314           example, remove thread example.
3315
3316 2005-06-28  Wim Taymans  <wim@fluendo.com>
3317
3318         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
3319         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
3320         (gst_bus_source_dispatch):
3321         Add debugging messages.
3322         Make internal methods static.
3323         Handle the case where the bus is flushed in the handler.
3324         
3325         * gst/gstelement.c: (gst_element_get_bus):
3326         Fix refcount in _get_bus();
3327
3328         * gst/gstpipeline.c: (gst_pipeline_change_state),
3329         (gst_pipeline_get_clock_func):
3330         Clock refcounting fixes.
3331         Handle the case where preroll timed out more gracefully.
3332         
3333         * gst/gstsystemclock.c: (gst_system_clock_dispose):
3334         Clean up the internal thread in dispose. This is needed
3335         for subclasses that actually get disposed.
3336         
3337         * gst/schedulers/threadscheduler.c:
3338         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3339         (gst_thread_scheduler_dispose):
3340         Free thread pool in dispose.
3341
3342 2005-06-28  Andy Wingo  <wingo@pobox.com>
3343
3344         * tests/network-clock-utils.scm (debug, print-event): New utils.
3345
3346         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
3347         (*packet-loss*): Unified loss probability.
3348         (network-time): Report out-of-band events.
3349
3350         * tests/plot-data: Add support for out-of-band events. Hack it
3351         into this script instead of passing it down the pipe; should fix
3352         this later.
3353
3354 2005-06-28  Wim Taymans  <wim@fluendo.com>
3355
3356         * docs/gst/gstreamer.types:
3357         * docs/gst/tmpl/gstbasesrc.sgml:
3358         * docs/gst/tmpl/gstpad.sgml:
3359         Docs fixes.
3360
3361 2005-06-28  Wim Taymans  <wim@fluendo.com>
3362
3363         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3364         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
3365         (gst_proxy_pad_do_fixatecaps):
3366         Correctly proxy the check_pull_range function.
3367
3368 2005-06-28  Andy Wingo  <wingo@pobox.com>
3369
3370         * tests/network-clock.scm: Removed need for slib.
3371         
3372 2005-06-28  Wim Taymans  <wim@fluendo.com>
3373
3374         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
3375         (gst_basesink_preroll_queue_flush):
3376         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
3377         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
3378         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3379         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
3380         (gst_proxy_pad_set_property):
3381         * gst/gstpad.c:
3382         * gst/gstpad.h:
3383         * gst/gstqueue.c: (gst_queue_init):
3384         The deprecated pad loop function is removed now.
3385
3386 2005-06-28  Andy Wingo  <wingo@pobox.com>
3387
3388         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
3389         New parameters, simulate network packet loss.
3390
3391         * tests/network-clock-utils.scm: Initialize the RNG.
3392
3393 2005-06-28  Wim Taymans  <wim@fluendo.com>
3394
3395         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
3396         (gst_basesink_event), (gst_basesink_deactivate):
3397         Flushing the preroll queue always needs to unlock the waiters.
3398
3399 2005-06-28  Edward Hervey  <edward@fluendo.com>
3400
3401         * gst/gstpipeline.c: (gst_pipeline_send_event): 
3402         Wheen a seek was successful on a pipeline, set the stream_time to the
3403         seek offset in order to have a synchronized stream_time.
3404
3405 2005-06-28  Wim Taymans  <wim@fluendo.com>
3406
3407         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3408         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
3409         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
3410         (gst_proxy_pad_do_fixatecaps):
3411         Call wrapper function instead of just calling the function
3412         pointers. This takes care of any locking and whatmore.
3413
3414 2005-06-28  Wim Taymans  <wim@fluendo.com>
3415
3416         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
3417         (gst_pad_pull_range):
3418         * gst/gstpad.h:
3419         CONNECTED -> LINKED.
3420
3421 2005-06-28  Andy Wingo  <wingo@pobox.com>
3422
3423         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
3424         source-munging commit!!!
3425
3426         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
3427         (gst_object_sink): Take gpointer arguments, not GstObject --
3428         avoids casts. Like GLib.
3429
3430         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
3431         activate.
3432
3433 2005-06-27  Andy Wingo  <wingo@pobox.com>
3434
3435         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
3436         remaining buffer.
3437
3438         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
3439         returns a sorted copy of the trace list.
3440         (gst_alloc_trace_print_live): New API, only prints traces with
3441         live objects. Sort the list.
3442         (gst_alloc_trace_print_all): Sort the list.
3443         (gst_alloc_trace_print): Align columns.
3444
3445         * gst/elements/gstttypefindelement.c:
3446         * gst/elements/gsttee.c:
3447         * gst/base/gstbasesrc.c:
3448         * gst/base/gstbasesink.c:
3449         * gst/base/gstbasetransform.c:
3450         * gst/gstqueue.c: Adapt for pad activation changes.
3451
3452         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
3453         sched.
3454         (gst_pipeline_dispose): Drop ref on sched.
3455
3456         * gst/gstpad.c (gst_pad_init): Set the default activate func.
3457         (gst_pad_activate_default): Push mode by default.
3458         (pre_activate_switch, post_activate_switch): New stubs, things to
3459         do before and after switching activation modes on pads.
3460         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
3461         the pad's activate function to choose which mode to activate.
3462         Shortcut on deactivation and call the right function directly.
3463         (gst_pad_activate_pull): New API, (de)activates a pad in pull
3464         mode.
3465         (gst_pad_activate_push): New API, same for push mode.
3466         (gst_pad_set_activate_function) 
3467         (gst_pad_set_activatepull_function) 
3468         (gst_pad_set_activatepush_function): Setters for new API.
3469
3470         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
3471         Trace all miniobjects.
3472         (gst_mini_object_make_writable): Unref the arg if we copy, like
3473         gst_caps_make_writable.
3474
3475         * gst/gstmessage.c (_gst_message_initialize): No trace init.
3476
3477         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
3478         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
3479         Adapt for new pad API.
3480
3481         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
3482
3483         * gst/gstelement.h:
3484         * gst/gstelement.c (gst_element_iterate_src_pads) 
3485         (gst_element_iterate_sink_pads): New API functions.
3486         
3487         * gst/gstelement.c (iterator_fold_with_resync): New utility,
3488         should fold into gstiterator.c in some form.
3489         (gst_element_pads_activate): Simplified via use of fold and
3490         delegation of decisions to gstpad->activate.
3491
3492         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
3493         help in debugging.
3494
3495         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
3496         class once in init, like gstmessage. Didn't run into this issue
3497         but it seems correct. Don't initialize a trace, gstminiobject does
3498         that.
3499
3500         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
3501         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
3502         to the bus.
3503         (assert_live_count): New util function, uses alloc traces to check
3504         cleanup.
3505
3506         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
3507         To be modified when unlink drops the internal pad.
3508
3509 2005-06-27  Wim Taymans  <wim@fluendo.com>
3510
3511         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
3512         (gst_bin_change_state):
3513         Cleanup the get_state() function a little, make sure it
3514         iterates the same set of elements.
3515         Added stub iterate_state_order().
3516
3517 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3518
3519         * docs/gst/gstreamer-docs.sgml:
3520         * docs/gst/gstreamer-sections.txt:
3521         * docs/gst/gstreamer.types:
3522         * docs/gst/tmpl/gstbasesink.sgml:
3523         * docs/gst/tmpl/gstbasesrc.sgml:
3524         * docs/gst/tmpl/gstbasetransform.sgml:
3525         * docs/gst/tmpl/gstelement.sgml:
3526         * docs/gst/tmpl/gstiterator.sgml:
3527         * gst/base/gstbasesrc.c:
3528         * gst/base/gstbasesrc.h:
3529         * gst/base/gstbasetransform.h:
3530         * gst/gstelement.c:
3531         * gst/gstiterator.h:
3532           adding basetransform and iterator docs
3533
3534 2005-06-27  Andy Wingo  <wingo@pobox.com>
3535
3536         * docs/design/part-activation.txt: Notes on how activation should
3537         work -- not quite implemented yet.
3538
3539 2005-06-25  Wim Taymans  <wim@fluendo.com>
3540
3541         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
3542         At least get the chain function correct, needs more
3543         fixing.
3544
3545 2005-06-25  Wim Taymans  <wim@fluendo.com>
3546
3547         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3548         (gst_basesink_handle_object), (gst_basesink_event),
3549         (gst_basesink_do_sync), (gst_basesink_handle_event),
3550         (gst_basesink_change_state):
3551         * gst/gsttask.h:
3552         Right, two problems here: ghostpads don't take locks and
3553         glib _rec_mutex_lock_full() with depth==0 still locks.
3554         Catch illegal locking and g_warn them.
3555
3556 2005-06-25  Wim Taymans  <wim@fluendo.com>
3557
3558         * check/states/sinks.c: (START_TEST), (gst_object_suite):
3559         Have to check for completion now...
3560
3561 2005-06-25  Wim Taymans  <wim@fluendo.com>
3562
3563         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3564         (gst_basesink_handle_object), (gst_basesink_event),
3565         (gst_basesink_do_sync), (gst_basesink_handle_event),
3566         (gst_basesink_change_state):
3567         * gst/gstpad.h:
3568         Unlock STREAM_LOCK whatever the recursion was.
3569
3570 2005-06-25  Wim Taymans  <wim@fluendo.com>
3571
3572         * gst/base/gstbasesink.c: (gst_basesink_set_property),
3573         (gst_basesink_preroll_queue_empty),
3574         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
3575         (gst_basesink_event), (gst_basesink_do_sync),
3576         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
3577         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
3578         (gst_basesink_change_state):
3579         Reworked the base sink, handle event and buffer serialisation
3580         correctly and removed possible deadlock.
3581         Handle EOS correctly.
3582
3583 2005-06-25  Wim Taymans  <wim@fluendo.com>
3584
3585         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
3586         (gst_pipeline_change_state):
3587         * tools/gst-launch.c: (check_intr), (event_loop), (main):
3588         Allow elements to post EOS in the state change function.
3589         Fix up -launch, make it exit the poll loop when the
3590         pipeline actually changed state.
3591         Fix up warning parsing in -launch.
3592
3593 2005-06-25  Wim Taymans  <wim@fluendo.com>
3594
3595         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
3596         (gst_tee_sink_activate):
3597         Core takes STREAM_LOCK for us now.
3598
3599 2005-06-25  Wim Taymans  <wim@fluendo.com>
3600
3601         * gst/gstelement.c: (gst_element_get_state_func),
3602         (gst_element_set_state):
3603         * gst/gstelement.h:
3604         * gst/gstmessage.c: (gst_message_parse_error),
3605         (gst_message_parse_warning):
3606         Keep track of current target state while performing a state
3607         change so that subclasses can do something interesting.
3608         Fix parsing of warning/error messages when GError is NULL.
3609
3610 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3611
3612         * docs/gst/Makefile.am:
3613         * docs/gst/gstreamer-docs.sgml:
3614         * docs/gst/gstreamer-sections.txt:
3615         * docs/gst/gstreamer.types:
3616         * docs/gst/tmpl/gstbasesink.sgml:
3617         * docs/gst/tmpl/gstbasesrc.sgml:
3618         * docs/gst/tmpl/gstbin.sgml:
3619         * docs/gst/tmpl/gstcompat.sgml:
3620         * docs/gst/tmpl/gstfakesink.sgml:
3621         * docs/gst/tmpl/gstfakesrc.sgml:
3622         * docs/gst/tmpl/gstfilesink.sgml:
3623         * docs/gst/tmpl/gstfilesrc.sgml:
3624         * docs/gst/tmpl/gstindex.sgml:
3625         * docs/manual/appendix-quotes.xml:
3626         * gst/base/gstbasesrc.h:
3627         * gst/elements/gstfakesrc.h:
3628         * gst/gstmessage.h:
3629           start pulling in base classes and elements in our docs
3630
3631 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
3632
3633         * docs/gst/Makefile.am:
3634         * docs/libs/Makefile.am:
3635           fixed make distcheck with gtk-doc 1.3
3636
3637 2005-06-23  Wim Taymans  <wim@fluendo.com>
3638
3639         * gst/gstelement.c: (gst_element_get_state_func),
3640         (gst_element_set_state), (gst_element_change_state):
3641         When the state did not change, also report NO_PREROLL
3642         when it matters.
3643
3644 2005-06-23  Wim Taymans  <wim@fluendo.com>
3645
3646         * gst/gstpad.c: (gst_pad_event_default):
3647         * gst/gstqueue.c: (gst_queue_loop):
3648         No unsafe task pausing please.
3649
3650 2005-06-23  Wim Taymans  <wim@fluendo.com>
3651
3652         * gst/schedulers/threadscheduler.c:
3653         (gst_thread_scheduler_task_start),
3654         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
3655         Ref the task before pushing it on the threadpool. This
3656         makes sure that we have a ref when the threadfunction is
3657         actually called.
3658
3659 2005-06-23  Andy Wingo  <wingo@pobox.com>
3660
3661         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
3662         offset is greater than the file's size.
3663
3664         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
3665         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
3666         * gst/gstobject.c (gst_object_class_init): Make the class lock
3667         recursive. Wim won't let me drop deep_notify. Decodebin works
3668         again, whoopdy doo.
3669
3670         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
3671         internal pad, and hacks accordingly. Doesn't do it on the target
3672         pad because we change its caps. Probably catches all cases of
3673         interest tho.
3674         (gst_ghost_pad_set_property): Connect to notify::caps as
3675         appropritate.
3676
3677         * tests/network-clock.scm (plot-simulation): Pipe data to the
3678         elite python skript.
3679
3680         * tests/network-clock-utils.scm (define-parameter): New macro,
3681         defines a parameter that can be set via the command line.
3682         (set-parameter!, parse-parameter-arguments): Command line args
3683         parser.
3684
3685         * tests/plot-data: Simple matplotlib-based plotter, takes input on
3686         stdin.
3687
3688 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
3689
3690         * gst/elements/gsttypefindelement.c:
3691         (gst_type_find_element_handle_event):
3692           Don't restart typefinding on a discont.
3693         * gst/gstelement.c: (gst_element_set_state):
3694           Debug spelling fix.
3695         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
3696           Allow changing mode of an active pad.
3697           Debug output fixes.
3698         * gst/registries/gstlibxmlregistry.c: (load_feature):
3699           Don't cast a static pad template to a normal pad template.
3700
3701 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3702
3703         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3704         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3705           remove gst_strtoll completely, since it didn't actually do
3706           anything more than what g_ascii_strtoull already does.
3707           check for range errors when deserializing
3708           do a cast for the unsigned cases; but further fixing needs
3709           a decision on what the interpretation of "(int)" and
3710           deserialization should be for values that fall outside the
3711           type's boundaries (ie, refuse, or interpret as casting)
3712
3713 2005-06-23  Wim Taymans  <wim@fluendo.com>
3714
3715         * check/Makefile.am:
3716         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
3717         * docs/design/part-live-source.txt:
3718         * docs/design/part-states.txt:
3719         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3720         (gst_basesrc_set_live), (gst_basesrc_is_live),
3721         (gst_basesrc_get_range), (gst_basesrc_activate),
3722         (gst_basesrc_change_state):
3723         * gst/base/gstbasesrc.h:
3724         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3725         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3726         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
3727         * gst/gstelement.c: (gst_element_get_state_func),
3728         (gst_element_set_state):
3729         * gst/gstelement.h:
3730         * gst/gsttypes.h:
3731         * tools/gst-launch.c: (event_loop), (main):
3732         Added support for live sources and other elements that
3733         cannot do preroll.
3734         Updated design docs, added live-source design doc.
3735         Implemented live source functionality in basesrc
3736         Fix error condition in _bin_get_state()
3737         Implement live source handling in -launch.
3738         Added check for live sources.
3739         Fixed case in GstBin where elements were changed state
3740         multiple times.
3741
3742
3743 2005-06-23  Andy Wingo  <wingo@pobox.com>
3744
3745         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
3746         borken refcounting.
3747
3748         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
3749         gst_caps_replace takes care of this for us.
3750
3751         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
3752         gst_pad_set_caps on the target, not just its setcaps() function.
3753
3754         * tests/network-clock.scm: 
3755         * tests/network-clock-utils.scm: A network clock simulator.
3756         Something of an algorithmic testbed before doing something in C.
3757
3758 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3759
3760         * check/Makefile.am:
3761         * check/gst/capslist.h:
3762           copy over from 0.8, and add two with bitmasks specified with
3763           (int) 0xFF...
3764         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
3765           add test to parse everything from capslist.h
3766         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
3767         (main):
3768           add test for structure deserialization
3769         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3770           add tests for deserialization of strings to int types
3771         * gst/gststructure.c: (gst_structure_nth_field_name):
3772         * gst/gststructure.h:
3773           add a way to get the name of a field referenced by index
3774         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3775           instead of checking if the resulting long long lies between
3776           min and max, we check if the long long would fit into
3777           a number of bytes for the final type.
3778           This fixes cases where a string represents 2^32 - 1, which
3779           when cast to int would be the (valid) -1, but is bigger than
3780           G_MAXINT
3781
3782 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3783
3784         * gst/parse/grammar.y:
3785           add a log line for type deserialization
3786
3787 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3788
3789         * check/gst/gstvalue.c: (START_TEST):
3790         * gst/gstvalue.c: (gst_value_deserialize):
3791           return long long, not int, so gint64 deserialization actually
3792           works.  Is there any flag that makes the compiler check this ?
3793           Fixes #308559
3794
3795 2005-06-22  Wim Taymans  <wim@fluendo.com>
3796
3797         * gst/gstbuffer.h:
3798         Added convenience macros for setting buffers in GValue.
3799
3800 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3801
3802         * check/gst/.cvsignore:
3803         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3804           add a test deserializing int64, and comment part out because
3805           it fails, yay !
3806
3807 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3808
3809         * check/Makefile.am:
3810         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
3811         * testsuite/Makefile.am:
3812         * testsuite/caps/Makefile.am:
3813         * testsuite/caps/value_serialize.c:
3814         * testsuite/test_gst_init.c:
3815           move a value_serialize test over
3816
3817 2005-06-20  Wim Taymans  <wim@fluendo.com>
3818
3819         * gst/gstpad.c:
3820         Small doc updates.
3821         
3822         * gst/gstvalue.c: (gst_value_compare_buffer),
3823         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
3824         (gst_value_compare_flags), (gst_value_serialize_flags),
3825         (gst_value_deserialize_flags), (_gst_value_initialize):
3826         Fix serialisation of buffers, they are not boxed types anymore
3827
3828 2005-06-20  Wim Taymans  <wim@fluendo.com>
3829
3830         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
3831         Testcase to show error in buffer-on-caps serialisation.
3832
3833 2005-06-20  Andy Wingo  <wingo@pobox.com>
3834
3835         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
3836         will be adding to later.
3837
3838         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
3839         if its socks fill with rocks.
3840         (gst_system_clock_obtain): Set the name on object construction.
3841         Avoid double-checked locking.
3842
3843 2005-06-20  Tim-Philipp M??ller  <tim at centricular dot net>
3844
3845         * gst/gsturi.c: (gst_element_make_from_uri):
3846           Fix potential endless loop.
3847
3848 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3849
3850         * check/Makefile.am:
3851           add gsttag
3852         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
3853         (main):
3854           move over from testsuite dir and clean up
3855         * configure.ac:
3856         * gst/gsttag.c:
3857         * testsuite/Makefile.am:
3858         * testsuite/tags/.cvsignore:
3859         * testsuite/tags/Makefile.am:
3860         * testsuite/tags/merge.c:
3861           remove testsuite/tags
3862
3863 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3864
3865         * docs/gst/gstreamer-sections.txt:
3866         * docs/gst/tmpl/gstenumtypes.sgml:
3867         * win32/gstenumtypes.c:
3868           clean up documentation build a little
3869
3870 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3871
3872         * check/gstcheck.h:
3873           add macros for checking refcounts on objects and caps
3874         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
3875           add some more unit tests
3876         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
3877         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
3878           fix leaked refcounts (I hope :)) so unittest works
3879         * gst/gstpad.h:
3880           whitespace removal
3881
3882 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3883
3884         * configure.ac: back to HEAD
3885
3886 === release 0.9.1 ===
3887
3888 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3889
3890         * NEWS:
3891         * RELEASE:
3892           updated
3893
3894 2005-06-17  Andy Wingo  <wingo@pobox.com>
3895
3896         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
3897         assert; it's always possible that the pad gets deactivated in
3898         between the checks in gstpad.c and the implementation. Rely on
3899         finish_preroll() to return a FLUSHING or similar instead of on the
3900         assert.
3901         
3902         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
3903         clock and post an EOS message if we come out of finish_preroll in
3904         the playing state.
3905
3906 2005-06-16  David Schleef  <ds@schleef.org>
3907
3908         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
3909         (gst_capsfilter_set_property): Allow NULL as possible value
3910         for filter_caps property, indicating GST_CAPS_ANY.
3911
3912 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3913
3914         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
3915           fix debug output
3916         * gst/schedulers/Makefile.am:
3917           use libgst prefix
3918         * gstreamer.spec.in:
3919           fix spec for it
3920
3921 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3922
3923         * gstreamer.spec.in:
3924           clean up
3925
3926 2005-06-08  Andy Wingo  <wingo@pobox.com>
3927
3928         * gst/gstutils.c: RPAD fixes all around.
3929         (gst_element_link_pads): Refcounting fixes.
3930
3931         * tools/gst-inspect.c:
3932         * tools/gst-xmlinspect.c:
3933         * parse/grammar.y:
3934         * gst/base/gsttypefindhelper.c:
3935         * gst/base/gstbasesink.c:
3936         * gst/gstqueue.c: RPAD fixes.
3937
3938         * gst/gstghostpad.h:
3939         * gst/gstghostpad.c: New ghost pad implementation as full proxy
3940         pads. The tricky thing is they provide both source and sink
3941         interfaces, since they proxy the internal pad for the external
3942         pad, and vice versa. Implement with lower-level ProxyPad objects,
3943         with the interior proxy pad as a child of the exterior ghost pad.
3944         Should write a doc on this.
3945         
3946         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
3947         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
3948         gst_object API.
3949         
3950         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
3951         pads are real pads. No ghost pads in this file. Not documenting
3952         the myriad s/RPAD/PAD/ and REALIZE fixes.
3953         (gst_pad_class_init): Add properties for "direction" and
3954         "template". Both are construct-only, so they can't change during
3955         the life of the pad. Fixes properly deriving from GstPad.
3956         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
3957         derived objects, just set properties when creating the objects via
3958         g_object_new.
3959         (gst_pad_get_parent): Implement as a function, return NULL if the
3960         parent is not an element.
3961         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
3962         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
3963         
3964         * gst/gstobject.c (gst_object_class_init): Make name a construct
3965         property. Don't set it in the object init.
3966
3967         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
3968         with UNKNOWN direction.
3969         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
3970         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
3971         (gst_element_remove_pad): Remove ghost-pad special cases.
3972         (gst_element_pads_activate): Remove rpad cruft.
3973
3974         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
3975         catch the pad's-parent-not-an-element case.
3976
3977         * gst/gst.h: Include gstghostpad.h.
3978
3979         * gst/gst.c (init_post): No more real, ghost pads.
3980
3981         * gst/Makefile.am: Add gstghostpad.[ch].
3982
3983         * check/Makefile.am:
3984         * check/gst/gstbin.c:
3985         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
3986         into a bin creates ghost pads, and that the refcounts are right.
3987         Partly moved from gstbin.c.
3988
3989 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3990
3991         * check/gst-libs/.cvsignore:
3992         * check/gst/.cvsignore:
3993         * check/pipelines/.cvsignore:
3994           ignore more
3995         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
3996         (START_TEST), (cleanup_suite), (main):
3997           add some tests related to cleanup after running pipelines
3998
3999 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4000
4001         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
4002           add a testsuite for GstBuffer
4003
4004 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4005
4006         * gst/gstminiobject.h:
4007           add defines for accessing the refcount
4008
4009 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
4010
4011         * Makefile.am: added support for html unit test coverage reports
4012
4013 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
4014
4015         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
4016           Free existing caps if the capsfilter changes. Add a FIXME about
4017           setting those caps on the pads.
4018
4019         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
4020           Before adding a ghost pad to a parent bin, check that there isn't
4021           already one for the element on the bin. Prevents infinite recursion
4022           when using decodebin in parse pipelines. Andy says he'll rewrite the
4023           way this works anyway, so ignore the hack.
4024
4025 2005-06-02  Andy Wingo  <wingo@pobox.com>
4026
4027         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
4028         file size, pass it on to the type find helper.
4029
4030         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
4031         segment_start and segment_end properly according to the seek
4032         method. Segment_end is still a bit flaky because offset can be
4033         negative for CUR and END cases, but it takes -1 as an "unset"
4034         value.
4035
4036 2005-06-02  Wim Taymans  <wim@fluendo.com>
4037
4038         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
4039         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
4040         (gst_basesink_activate):
4041         * gst/base/gstbasesink.h:
4042         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
4043         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
4044         (gst_pad_query), (gst_pad_start_task):
4045         * gst/gstpad.h:
4046         * gst/gstqueue.c: (gst_queue_bufferalloc),
4047         (gst_queue_handle_sink_event), (gst_queue_chain):
4048         Bufferalloc: return GstFlowReturn to more accuratly report
4049         why allocation failed.
4050
4051 2005-06-02  Wim Taymans  <wim@fluendo.com>
4052
4053         * gst/gstpipeline.c: (gst_pipeline_send_event):
4054         Take snapshot of state without blocking.
4055
4056 2005-06-02  Wim Taymans  <wim@fluendo.com>
4057
4058         * docs/design/part-TODO.txt:
4059         * docs/design/part-caps.txt:
4060         * docs/design/part-clocks.txt:
4061         * docs/design/part-negotiation.txt:
4062         * docs/design/part-preroll.txt:
4063         Small doc updates 
4064
4065 2005-05-30  Wim Taymans  <wim@fluendo.com>
4066
4067         * gst/elements/gstidentity.c: (gst_identity_event),
4068         (gst_identity_transform), (gst_identity_get_property):
4069         Protect last_message property as it is accessed from
4070         multiple threads.
4071
4072 2005-05-30  Wim Taymans  <wim@fluendo.com>
4073
4074         * gst/gstelement.c: (gst_element_init),
4075         (gst_element_pads_activate), (gst_element_change_state):
4076         Slicker pad activation code.
4077
4078 2005-05-30  Wim Taymans  <wim@fluendo.com>
4079
4080         * gst/Makefile.am:
4081         * gst/gstelement.h:
4082         * gst/gstelementfactory.h:
4083         * gst/gsttypes.h:
4084         Move elementfactory methods to separate .h file.
4085
4086 2005-05-30  Wim Taymans  <wim@fluendo.com>
4087
4088         * docs/design/part-overview.txt:
4089         * gst/gstsystemclock.h:
4090         Small typo fixes, doc updates.
4091
4092 2005-05-30  Wim Taymans  <wim@fluendo.com>
4093
4094         * gst/gst.c: (gst_init_get_popt_table), (init_post),
4095         (init_popt_callback):
4096         Remove cpu-opt flag.
4097
4098 2005-05-30  Wim Taymans  <wim@fluendo.com>
4099
4100         * gst/gstbuffer.c: (gst_subbuffer_finalize),
4101         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
4102         * gst/gstbuffer.h:
4103         Avoid typechecking in places where not needed.
4104         Added accessor for malloc_data.
4105
4106 2005-05-30  Wim Taymans  <wim@fluendo.com>
4107
4108         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
4109         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
4110         (gst_pad_configure_sink), (gst_pad_configure_src),
4111         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
4112         (gst_pad_start_task):
4113         Propagate errors from _set_caps() in configure_src/sink
4114         functions instead of returning TRUE.
4115         FLUSH events can travel up and downstream
4116
4117
4118 2005-05-30  Wim Taymans  <wim@fluendo.com>
4119
4120         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
4121         (gst_basesink_activate):
4122         Handle EOS in preroll.
4123
4124 2005-05-30  Wim Taymans  <wim@fluendo.com>
4125
4126         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
4127         (gst_queue_loop), (gst_queue_handle_src_event):
4128         Remove old pieces of code
4129         Flushing the queue in an upstream event is a very bad idea.
4130
4131 2005-05-26  Andy Wingo  <wingo@pobox.com>
4132
4133         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
4134         gst_value_set_mini_object so as to add a ref on the object (which
4135         will be removed when the value is unset).
4136
4137         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
4138         arg type in ::handoff.
4139
4140         * gst/gstelement.c (gst_element_change_state): Also deactivate
4141         pads in READY->NULL, just in case the element didn't make it to
4142         PAUSED. Wingo tested, Wim approved.
4143
4144 2005-05-26  Wim Taymans  <wim@fluendo.com>
4145
4146         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
4147         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
4148         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
4149         A flushing pad cannot be used to alloc_buffer from.
4150
4151 2005-05-26  Wim Taymans  <wim@fluendo.com>
4152
4153         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
4154         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
4155         (gst_bus_source_dispatch), (gst_bus_source_finalize),
4156         (gst_bus_create_watch), (gst_bus_add_watch_full):
4157         * gst/gstbus.h:
4158         Implement a real GSource and use g_main_context_wakeup() to
4159         signal new messages instead of the socketpair.
4160
4161 2005-05-25  Wim Taymans  <wim@fluendo.com>
4162
4163         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
4164         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
4165         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
4166         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
4167         (gst_pad_send_event), (gst_pad_start_task):
4168         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
4169         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
4170         (gst_queue_sink_activate), (gst_queue_src_activate),
4171         (gst_queue_change_state):
4172         * gst/gstqueue.h:
4173         Fix state changes for non sinks. We now change sinks, then elements
4174         with unconnected srcpads, then the rest.
4175         More efficient queue unlocking in flush and state changes.
4176         Set the pad activate mode even if it does not have an activate
4177         function.
4178
4179 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4180
4181         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
4182           Don't go in pull mode for non-seekable sources.
4183         * gst/elements/gsttypefindelement.h:
4184         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4185         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
4186         (free_entry), (stop_typefinding),
4187         (gst_type_find_element_handle_event), (find_peek),
4188         (gst_type_find_element_chain), (do_pull_typefind),
4189         (gst_type_find_element_change_state):
4190           Allow typefinding (w/o seeking) in push-mode, simplified version
4191           of what was in 0.8.
4192         * gst/gstutils.c: (gst_buffer_join):
4193         * gst/gstutils.h:
4194           gst_buffer_join() from 0.8.
4195
4196 2005-05-25  Wim Taymans  <wim@fluendo.com>
4197
4198         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
4199         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
4200         (gst_pad_send_event), (gst_pad_start_task):
4201         Disable attempt at mode switching until it is figured out.
4202
4203 2005-05-25  Wim Taymans  <wim@fluendo.com>
4204
4205         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
4206         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
4207         (gst_basesink_finish_preroll), (gst_basesink_chain),
4208         (gst_basesink_loop), (gst_basesink_activate),
4209         (gst_basesink_change_state):
4210         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
4211         (gst_basesrc_get_range), (gst_basesrc_loop),
4212         (gst_basesrc_activate):
4213         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4214         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4215         (gst_real_pad_init), (gst_real_pad_set_property),
4216         (gst_real_pad_get_property), (gst_pad_set_active),
4217         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
4218         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
4219         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
4220         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
4221         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4222         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
4223         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
4224         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
4225         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
4226         (gst_pad_stop_task):
4227         * gst/gstpad.h:
4228         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
4229         (gst_queue_loop), (gst_queue_src_activate):
4230         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
4231         (gst_task_get_state):
4232         * gst/gsttask.h:
4233         * gst/schedulers/threadscheduler.c:
4234         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
4235         Implement gst_pad_pause/start/stop_task(), take STREAM lock
4236         in task function.
4237         Remove ACTIVE pad flag, use FLUSHING everywhere
4238         Added _pad_chain(), _pad_get_range() to call chain/getrange 
4239         functions.
4240         Add locks around IS_FLUSHING when reading.
4241         Take STREAM lock in chain(), get_range() functions so plugins
4242         don't need to take it anymore.
4243         
4244
4245
4246 2005-05-25  Wim Taymans  <wim@fluendo.com>
4247
4248         * tools/gst-launch.c: (event_loop):
4249         Unref message after using its contents instead of
4250         before.
4251
4252 2005-05-24  Wim Taymans  <wim@fluendo.com>
4253
4254         * docs/design/draft-ghostpads.txt:
4255         * docs/design/draft-push-pull.txt:
4256         * docs/design/draft-query.txt:
4257         * docs/design/part-overview.txt:
4258         Docs updates, added general overview doc.
4259
4260 2005-05-21  David Schleef  <ds@schleef.org>
4261
4262         * docs/gst/tmpl/old/GstBin.sgml:
4263         * docs/gst/tmpl/old/GstBuffer.sgml:
4264         * docs/gst/tmpl/old/GstCaps.sgml:
4265         * docs/gst/tmpl/old/GstClock.sgml:
4266         * docs/gst/tmpl/old/GstCompat.sgml:
4267         * docs/gst/tmpl/old/GstData.sgml:
4268         * docs/gst/tmpl/old/GstElement.sgml:
4269         * docs/gst/tmpl/old/GstEvent.sgml:
4270         * docs/gst/tmpl/old/GstIndex.sgml:
4271         * docs/gst/tmpl/old/GstStructure.sgml:
4272         * docs/gst/tmpl/old/GstTag.sgml:
4273         * docs/gst/tmpl/old/cothreads.sgml:
4274         * docs/gst/tmpl/old/cothreads_compat.sgml:
4275         * docs/gst/tmpl/old/gettext.sgml:
4276         * docs/gst/tmpl/old/gobject2gtk.sgml:
4277         * docs/gst/tmpl/old/grammar.tab.sgml:
4278         * docs/gst/tmpl/old/gst-i18n-app.sgml:
4279         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
4280         * docs/gst/tmpl/old/gst_private.sgml:
4281         * docs/gst/tmpl/old/gstaggregator.sgml:
4282         * docs/gst/tmpl/old/gstarch.sgml:
4283         * docs/gst/tmpl/old/gstatomic_impl.sgml:
4284         * docs/gst/tmpl/old/gstbufferstore.sgml:
4285         * docs/gst/tmpl/old/gstdata_private.sgml:
4286         * docs/gst/tmpl/old/gstdisksink.sgml:
4287         * docs/gst/tmpl/old/gstdisksrc.sgml:
4288         * docs/gst/tmpl/old/gstelementfactory.sgml:
4289         * docs/gst/tmpl/old/gstextratypes.sgml:
4290         * docs/gst/tmpl/old/gstfakesink.sgml:
4291         * docs/gst/tmpl/old/gstfakesrc.sgml:
4292         * docs/gst/tmpl/old/gstfdsink.sgml:
4293         * docs/gst/tmpl/old/gstfdsrc.sgml:
4294         * docs/gst/tmpl/old/gstfilesink.sgml:
4295         * docs/gst/tmpl/old/gstfilesrc.sgml:
4296         * docs/gst/tmpl/old/gsthttpsrc.sgml:
4297         * docs/gst/tmpl/old/gstidentity.sgml:
4298         * docs/gst/tmpl/old/gstindexfactory.sgml:
4299         * docs/gst/tmpl/old/gstmarshal.sgml:
4300         * docs/gst/tmpl/old/gstmd5sink.sgml:
4301         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
4302         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
4303         * docs/gst/tmpl/old/gstpadtemplate.sgml:
4304         * docs/gst/tmpl/old/gstpipefilter.sgml:
4305         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
4306         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
4307         * docs/gst/tmpl/old/gstshaper.sgml:
4308         * docs/gst/tmpl/old/gstspider.sgml:
4309         * docs/gst/tmpl/old/gstspideridentity.sgml:
4310         * docs/gst/tmpl/old/gststatistics.sgml:
4311         * docs/gst/tmpl/old/gsttee.sgml:
4312         * docs/gst/tmpl/old/gsttimecache.sgml:
4313         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
4314         * docs/gst/tmpl/old/gstxmlregistry.sgml:
4315         * docs/gst/tmpl/old/gthread-cothreads.sgml:
4316         * docs/gst/tmpl/old/types.sgml:
4317           I didn't intend to add these or check them in.
4318
4319 2005-05-19  David Schleef  <ds@schleef.org>
4320
4321         * configure.ac: Use -no-common everywhere.  In a sane world, it
4322           would be the default in libtool, because without it, you can't
4323           build DLLs on Windows.
4324         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
4325         * docs/gst/gstreamer-sections.txt:
4326         * docs/gst/tmpl/gstcpu.sgml:
4327         * docs/gst/tmpl/gstdata.sgml:
4328         * docs/gst/tmpl/gstthread.sgml:
4329
4330 2005-05-19  David Schleef  <ds@schleef.org>
4331
4332         * gst/gstminiobject.c: (gst_value_set_mini_object),
4333         (gst_value_take_mini_object), (gst_value_get_mini_object):
4334         * gst/gstminiobject.h: Add GValue set/get functions.
4335
4336 2005-05-19  Wim Taymans  <wim@fluendo.com>
4337
4338         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
4339         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
4340         (gst_subbuffer_init), (gst_buffer_is_span_fast):
4341         * gst/gstbuffer.h:
4342         * gst/gstbus.c: (gst_bus_post):
4343         * gst/gstelement.c: (gst_element_get_random_pad):
4344         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
4345         Make subbufer unref the parent in finalize.
4346         some more debugging info.
4347
4348
4349 2005-05-19  Wim Taymans  <wim@fluendo.com>
4350
4351         * gst/base/gstbasesink.c: (gst_basesink_class_init),
4352         (gst_basesink_init), (gst_basesink_finalize),
4353         (gst_basesink_activate), (gst_basesink_change_state):
4354         Don't free preroll queue too early.
4355
4356 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4357
4358         * gst/Makefile.am:
4359         * gst/ROADMAP:
4360           Hi, I'm outdated. Please shoot me.
4361
4362 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4363
4364         * gst/gstpipeline.c: (gst_pipeline_send_event):
4365           Do not access variables after they have been deleted.
4366
4367 2005-05-19  Wim Taymans  <wim@fluendo.com>
4368
4369         * tools/gst-inspect.c: (print_plugin_features):
4370         A plugin feature does unfortunatly not use the
4371         object name yet...
4372
4373 2005-05-18  Wim Taymans  <wim@fluendo.com>
4374
4375         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
4376         Port _span() functions to new subbuffers.
4377
4378 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4379
4380         * gst/gstbin.c: (gst_bin_add_func):
4381           Fix clock settery in bins when adding kids after the clock has
4382           been selected.
4383
4384 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4385
4386         * gst/elements/gstidentity.c: (gst_identity_class_init):
4387           Workaround until signals support GstMiniObject.
4388
4389 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
4390
4391         * gst/gstbuffer.c:
4392         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
4393
4394 2005-05-18  Wim Taymans  <wim@fluendo.com>
4395
4396         * gst/base/Makefile.am:
4397         * gst/base/gstadapter.c: (gst_adapter_base_init),
4398         (gst_adapter_class_init), (gst_adapter_init),
4399         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
4400         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
4401         (gst_adapter_flush), (gst_adapter_available),
4402         (gst_adapter_available_fast):
4403         * gst/base/gstadapter.h:
4404         Ported and added adapter to the base classes.
4405
4406 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4407
4408         * gst/gst.c:
4409         * gst/gstmessage.c:
4410           Make sure the class is reffed/unreffed once before threads can be
4411           used.  Fixes #304551.
4412
4413 2005-05-17  Wim Taymans  <wim@fluendo.com>
4414
4415         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
4416         (gst_basesink_chain_unlocked), (gst_basesink_activate):
4417         * gst/gstminiobject.c: (gst_mini_object_get_type),
4418         (gst_mini_object_free):
4419         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
4420         (gst_pad_push), (gst_pad_push_event):
4421         * gst/gstqueue.c: (gst_queue_change_state):
4422         Don't queue buffers in basesink when we are flushing.
4423         Unref buffer when flushing in basesink.
4424         Flush queue when going to READY
4425         Unref buffer when _push() returns an error.
4426         Don't free MiniObject instance when refcount is incremented
4427         in _finalize() so that we can recover objects.
4428
4429 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4430
4431         * docs/manual/advanced-schedulers.xml:
4432         * docs/manual/appendix-checklist.xml:
4433         * docs/pwg/advanced-clock.xml:
4434         * docs/pwg/advanced-interfaces.xml:
4435         * docs/pwg/advanced-request.xml:
4436         * docs/pwg/advanced-types.xml:
4437         * docs/pwg/intro-preface.xml:
4438         * examples/plugins/example.c: (gst_example_get_type),
4439         (gst_example_class_init), (gst_example_chain),
4440         (gst_example_set_property), (gst_example_get_property),
4441         (gst_example_change_state), (plugin_init):
4442         * examples/plugins/example.h:
4443           small doc fixes
4444
4445 2005-05-17  Wim Taymans  <wim@fluendo.com>
4446
4447         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
4448         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
4449         * gst/gstqueue.c: (gst_queue_change_state):
4450         Clear queue when going to READY.
4451         Remove IN_SETCAPS flag too.
4452
4453 2005-05-17  Tim-Philipp M??ller  <tim at centricular dot net>
4454
4455         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
4456           Remove implicit cast from gboolean to GstElementStateReturn;
4457           make sure we still return failure in paused => ready case if
4458           the parent class fails to change state and our own stop 
4459           vfunc succeeds.
4460
4461 2005-05-17  Wim Taymans  <wim@fluendo.com>
4462
4463         * tools/gst-launch.c: (event_loop):
4464         Message was unreffed too soon.
4465
4466 2005-05-16  Andy Wingo  <wingo@pobox.com>
4467
4468         * gst/gstbin.c (sink_iterator_filter): Err... um...
4469
4470         * check/gst/gstbin.c (test_ghost_pads): New test for the
4471         ghosting-if-elements-not-in-same-bin behavior.
4472
4473 2005-05-16  David Schleef  <ds@schleef.org>
4474
4475         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
4476         accessing refcount directly.
4477
4478 2005-05-15  David Schleef  <ds@schleef.org>
4479
4480         * check/Makefile.am: remove GstData checks
4481         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
4482         * gst/Makefile.am: add miniobject, remove data
4483         * gst/gst.h: add miniobject, remove data
4484         * gst/gstdata.c: remove
4485         * gst/gstdata.h: remove
4486         * gst/gstdata_private.h: remove
4487         * gst/gsttypes.h: remove GstEvent and GstMessage
4488         * gst/gstelement.c: (gst_element_post_message): fix for API changes
4489         * gst/gstmarshal.list: change BOXED -> OBJECT
4490
4491         Implement GstMiniObject.
4492         * gst/gstminiobject.c:
4493         * gst/gstminiobject.h:
4494
4495         Modify to be subclasses of GstMiniObject.
4496         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
4497         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
4498         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
4499         (gst_subbuffer_get_type), (gst_subbuffer_init),
4500         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
4501         (gst_buffer_span):
4502         * gst/gstbuffer.h:
4503         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
4504         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
4505         (_gst_event_copy), (gst_event_new):
4506         * gst/gstevent.h:
4507         * gst/gstmessage.c: (_gst_message_initialize),
4508         (gst_message_get_type), (gst_message_class_init),
4509         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
4510         (gst_message_new), (gst_message_new_error),
4511         (gst_message_new_warning), (gst_message_new_tag),
4512         (gst_message_new_state_changed), (gst_message_new_application):
4513         * gst/gstmessage.h:
4514         * gst/gstprobe.c: (gst_probe_perform),
4515         (gst_probe_dispatcher_dispatch):
4516         * gst/gstprobe.h:
4517         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
4518         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
4519         (_gst_query_copy), (gst_query_new):
4520
4521         Update elements for GstData -> GstMiniObject changes
4522         * gst/gstquery.h:
4523         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
4524         (gst_queue_chain), (gst_queue_loop):
4525         * gst/elements/gstbufferstore.c:
4526         (gst_buffer_store_add_buffer_func),
4527         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
4528         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4529         (gst_fakesink_render):
4530         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4531         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
4532         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
4533         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
4534         (gst_filesrc_create_read):
4535         * gst/elements/gstidentity.c: (gst_identity_class_init):
4536         * gst/elements/gsttypefindelement.c:
4537         (gst_type_find_element_src_event), (free_entry_buffers),
4538         (gst_type_find_element_handle_event):
4539         * libs/gst/dataprotocol/dataprotocol.c:
4540         (gst_dp_header_from_buffer):
4541         * libs/gst/dataprotocol/dataprotocol.h:
4542         * libs/gst/dataprotocol/dp-private.h:
4543
4544 2005-05-15  David Schleef  <ds@schleef.org>
4545
4546         * gst/elements/gstelements.c: Don't include headers that were
4547         just removed.
4548
4549 2005-05-15  David Schleef  <ds@schleef.org>
4550
4551         * gst/elements/Makefile.am: Remove some elements that don't
4552         need to be in the core (or even exist at all).
4553         * gst/elements/gstaggregator.c:
4554         * gst/elements/gstaggregator.h:
4555         * gst/elements/gstmd5sink.c:
4556         * gst/elements/gstmd5sink.h:
4557         * gst/elements/gstmultifilesrc.c:
4558         * gst/elements/gstmultifilesrc.h:
4559         * gst/elements/gstpipefilter.c:
4560         * gst/elements/gstpipefilter.h:
4561         * gst/elements/gstshaper.c:
4562         * gst/elements/gstshaper.h:
4563         * gst/elements/gststatistics.c:
4564         * gst/elements/gststatistics.h:
4565         * po/POTFILES.in: Remove above files.
4566
4567 2005-05-14  Andy Wingo  <wingo@pobox.com>
4568
4569         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
4570         so as to get the refs right.
4571         (sink_iterator_filter): New function, wraps bin_element_is_sink,
4572         unreffing objects that don't pass the filter.
4573
4574         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
4575         gst_element_set_bus.
4576         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
4577         normal cases, this will destroy the bus.
4578
4579         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
4580         object.
4581
4582         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
4583         has no sinks.
4584
4585 2005-05-13  Andy Wingo  <wingo@pobox.com>
4586
4587         * gst/gstutils.c (gst_element_link_pads): Instead of calling
4588         gst_pad_link, call pad_link_maybe_ghosting,
4589         (pad_link_maybe_ghosting): Links pads, making sure that the
4590         elements being linked are in the same bin.
4591         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
4592         Helpers for pad_link_maybe_ghosting.
4593
4594 2005-05-13  Tim-Philipp M??ller  <tim at centricular dot net>
4595
4596         * configure.ac:
4597           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
4598
4599 2005-05-13  Tim-Philipp M??ller  <tim at centricular dot net>
4600
4601         * docs/design/part-element-source.txt:
4602           Mention GstPushSrc
4603
4604 2005-05-12  Wim Taymans  <wim@fluendo.com>
4605
4606         * gst/base/gstbasesink.c: (gst_basesink_init),
4607         (gst_basesink_activate):
4608         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
4609         (gst_basesrc_is_seekable):
4610         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4611         (bin_element_is_sink), (gst_bin_change_state):
4612         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
4613         * gst/gstelement.h:
4614         Identify sinks by their flag to avoid overly complicated
4615         checks (fow now).
4616         Do state changes even for elements not reachable from the
4617         sinks.
4618         BaseSink is a sink now :)
4619         Some more debugging info in the basesrc.
4620
4621
4622 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4623
4624         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
4625           Implement _query on a bin, similar to _send_event.
4626
4627 2005-05-12  Tim-Philipp M??ller  <tim at centricular dot net>
4628
4629         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
4630           Discont event offset format should be GST_FORMAT_BYTES,
4631           not GST_FORMAT_TIME.
4632
4633 2005-05-12  Wim Taymans  <wim@fluendo.com>
4634
4635         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
4636         Same fix as Ronald's but without the signal. 
4637
4638 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4639
4640         * gst/gstutils.c: (gst_element_query_position):
4641           No, an element is not a pad.
4642
4643 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4644
4645         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
4646         (gst_bin_get_state):
4647           If a child is removed from a bin while we remove the child from
4648           the bin and while we're retrieving its state, signal this to the
4649           get_state function so we abort the wait (instead of waiting for
4650           a timeout) and can immediately re-iterate over all other elements.
4651
4652 2005-05-12  Wim Taymans  <wim@fluendo.com>
4653
4654         * gst/base/Makefile.am:
4655         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
4656         (gst_basesrc_start):
4657         * gst/base/gstbasesrc.h:
4658         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
4659         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
4660         (gst_pushsrc_init), (gst_pushsrc_create):
4661         * gst/base/gstpushsrc.h:
4662         Added is_seekable to BaseSrc
4663         Added simple PushSrc.
4664
4665 2005-05-11  Wim Taymans  <wim@fluendo.com>
4666
4667         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
4668         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4669         (gst_element_link_pads), (gst_element_query_position),
4670         (gst_element_query_convert), (intersect_caps_func),
4671         (gst_pad_query_position), (gst_pad_query_convert):
4672         Fix refcounting in utils function.
4673         No point in trying to activate a pad when it's added, it could
4674         be added from the state change function and then we deadlock, the
4675         element has to decide what to do.
4676
4677 2005-05-10  Andy Wingo  <wingo@pobox.com>
4678
4679         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
4680         *all* the arguments.
4681
4682         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
4683         stream lock if it's a FLUSH_DONE; normal flushes don't get the
4684         lock (according to the docs -- if this is wrong change the docs).
4685
4686         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
4687         flush messages in the NULL state.
4688
4689         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
4690         message immediately and return.
4691         (gst_bus_set_flushing): New function. If a bus is flushing, it
4692         flushes out any queued messages and immediately unrefs new
4693         messages. This is so when an element goes to NULL, all of the
4694         unhandled messages coming from it can be freed, and their
4695         references to the element dropped. In other words: message source
4696         ref considered harmful :P
4697
4698         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
4699         we're finished with it.
4700
4701         * gst/gstmessage.c (gst_message_new_state_changed): 
4702
4703 2005-05-10  Wim Taymans  <wim@fluendo.com>
4704
4705         * gst/gstvalue.c: (gst_value_compare_flags),
4706         (gst_value_serialize_flags), (gst_value_deserialize_flags),
4707         (_gst_value_initialize):
4708         Added flags serialize/deserialize/compare code.
4709
4710 2005-05-09  Andy Wingo  <wingo@pobox.com>
4711
4712         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
4713         Intersect the peer's caps with our caps.
4714
4715 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4716
4717         * gst/base/gsttypefindhelper.c: (helper_find_peek):
4718         * gst/elements/gsttypefindelement.c: (find_peek):
4719           Handle negative offsets better. Fixes decodebin.
4720
4721 2005-05-09  Wim Taymans  <wim@fluendo.com>
4722
4723         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
4724         (gst_base_transform_event):
4725         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
4726         Implement accept_caps.
4727         Fix silly lock/unlock mismatch in base class.
4728
4729 2005-05-09  Wim Taymans  <wim@fluendo.com>
4730
4731         * docs/design/draft-push-pull.txt:
4732         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
4733         * gst/elements/gstfilesink.c: (gst_filesink_init),
4734         (gst_filesink_query):
4735         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4736         (gst_type_find_handle_src_query), (find_element_get_length):
4737         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
4738         * gst/gstelement.h:
4739         * gst/gstmessage.c:
4740         * gst/gstmessage.h:
4741         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
4742         (gst_real_pad_get_caps_unlocked),
4743         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
4744         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4745         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
4746         (gst_real_pad_dispose), (gst_real_pad_finalize),
4747         (gst_pad_load_and_link), (gst_pad_save_thyself),
4748         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
4749         (gst_pad_check_pull_range), (gst_pad_pull_range),
4750         (gst_pad_template_get_type), (gst_pad_template_class_init),
4751         (gst_pad_template_init), (gst_pad_template_dispose),
4752         (name_is_valid), (gst_static_pad_template_get),
4753         (gst_pad_template_new), (gst_static_pad_template_get_caps),
4754         (gst_pad_template_get_caps), (gst_pad_set_element_private),
4755         (gst_pad_get_element_private), (gst_pad_start_task),
4756         (gst_pad_pause_task), (gst_pad_stop_task),
4757         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
4758         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
4759         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
4760         (gst_ghost_pad_new):
4761         * gst/gstpad.h:
4762         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
4763         (gst_query_new_position), (gst_query_set_position),
4764         (gst_query_parse_position), (gst_query_new_convert),
4765         (gst_query_set_convert), (gst_query_parse_convert):
4766         * gst/gstquery.h:
4767         * gst/gstqueryutils.c:
4768         * gst/gstqueryutils.h:
4769         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4770         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
4771         (gst_queue_handle_src_query):
4772         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4773         (gst_element_query_position), (gst_element_query_convert),
4774         (intersect_caps_func), (gst_pad_query_position),
4775         (gst_pad_query_convert):
4776         * gst/gstutils.h:
4777         * tools/gst-inspect.c: (print_pad_info):
4778         * tools/gst-xmlinspect.c: (print_element_info):
4779         Remove old query functions. Ported old code.
4780         Added position/convert helper functions to gstutils.
4781         Reordered gstpad.c code, grouping relevant things.
4782         Remove gst_message_new(), always need to speficy a specific
4783         message.
4784
4785
4786 2005-05-09  Andy Wingo  <wingo@pobox.com>
4787
4788         * gst/gstiterator.h: Add some includes.
4789
4790         * gst/gstqueryutils.h: Include more headers.
4791
4792         * gst/gstpad.h:
4793         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
4794         some uses of gst_pad_query.
4795
4796         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
4797         NULL out parameters.
4798         (gst_query_new_position): New proc, allocates a new position
4799         query.
4800
4801         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
4802         gstqueryutils.c to the build.
4803
4804         * gst/gststructure.c (gst_structure_set_valist): Implement with
4805         the generic G_VALUE_COLLECT.
4806         
4807 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
4808
4809         * gst/Makefile.am: (gst_headers):
4810         Added gstqueryutils.h to the list of headers to install, that was
4811         a 'nachty' move wingo :)
4812
4813 2005-05-06  Andy Wingo  <wingo@pobox.com>
4814
4815         * gst/gstquery.h
4816         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
4817         GstData, init a memchunk.
4818         (standard_definitions): Add a few query types, deprecate a few.
4819         (gst_query_get_type): New proc.
4820         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
4821         implementation.
4822         (gst_query_new_application, gst_query_get_structure): New public
4823         procs.
4824
4825         * docs/design/draft-query.txt: Removed LINKS from the query types,
4826         because all the rest can be dispatched to other pads -- seemed
4827         ugly to have a query that couldn't be dispatched. internal_links
4828         is fine as a pad method.
4829
4830         * gst/gstpad.h: Add query2 as a pad method, add the new functions
4831         in gstpad.c, but maintain binary compatibility for the moment.
4832         Will fix before 0.9 is out.
4833
4834         * gst/gstqueryutils.c: 
4835         * gst/gstqueryutils.h: New files, implement 3 methods for each
4836         query type: parse_query, parse_response, and set. Probably need an
4837         allocator as well.
4838
4839         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
4840
4841         * gst/elements/gstfilesink.c (gst_filesink_query2):
4842         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
4843         query_types, and formats methods.
4844
4845         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
4846         (gst_pad_set_query2_function): New functions.
4847         (gst_real_pad_init): Set query2_default as the default query2
4848         function. Basically just dispatches to internally linked pads.
4849
4850         Needs review!
4851         
4852         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
4853         without using the atomic operations. Only one thread can possibly
4854         be accessing the data at this point. Changed so as to avoid
4855         gst_atomic operations.
4856
4857 2005-05-06  Wim Taymans  <wim@fluendo.com>
4858
4859         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
4860         Also set caps if we use the fallback buffer alloc.
4861
4862 2005-05-06  Tim-Philipp M??ller  <tim at centricular dot net>
4863
4864         * docs/gst/Makefile.am:
4865         * docs/gst/gstreamer-docs.sgml:
4866         * docs/gst/gstreamer-sections.txt:
4867         * docs/gst/tmpl/gstatomic.sgml:
4868         * docs/gst/tmpl/gstmemchunk.sgml:
4869         * testsuite/elements/struct_i386.h:
4870         * win32/GStreamer.vcproj:
4871         * win32/Makefile:
4872           Purge GstAtomic stuff from docs and win32 makefiles as well
4873
4874 2005-05-06  Wim Taymans  <wim@fluendo.com>
4875
4876         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
4877         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
4878         * gst/gstpad.c: (gst_pad_peer_get_caps):
4879         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4880         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
4881         (gst_queue_src_activate), (gst_queue_change_state):
4882         * gst/gstqueue.h:
4883         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4884         (intersect_caps_func):
4885         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
4886         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
4887         Some fixes for the peer_get_caps() change.
4888
4889 2005-05-06  Wim Taymans  <wim@fluendo.com>
4890
4891         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
4892         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
4893         (gst_basesink_activate):
4894         Actually do something with error codes returned from the push
4895         functions.
4896
4897 2005-05-06  Wim Taymans  <wim@fluendo.com>
4898
4899         * docs/design/part-element-sink.txt:
4900         * docs/design/part-element-source.txt:
4901         * gst/base/gstbasesink.c: (gst_basesink_class_init),
4902         (gst_basesink_event), (gst_basesink_activate):
4903         * gst/base/gstbasesink.h:
4904         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
4905         (gst_basesrc_activate):
4906         * gst/base/gstbasesrc.h:
4907         * gst/gstelement.c: (gst_element_pads_activate):
4908         Some more documentation.
4909         Fixed scheduling decision in _pads_activate().
4910
4911 2005-05-05  Andy Wingo  <wingo@pobox.com>
4912
4913         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
4914         the test suite.
4915
4916 2005-05-05  Wim Taymans  <wim@fluendo.com>
4917
4918         * gst/base/Makefile.am:
4919         * gst/base/gstbasesink.h:
4920         * gst/base/gstbasesrc.c: (gst_basesrc_init),
4921         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
4922         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
4923         (gst_collectpads_class_init), (gst_collectpads_init),
4924         (gst_collectpads_finalize), (gst_collectpads_new),
4925         (gst_collectpads_set_function), (gst_collectpads_add_pad),
4926         (find_pad), (gst_collectpads_remove_pad),
4927         (gst_collectpads_is_active), (gst_collectpads_collect),
4928         (gst_collectpads_collect_range), (gst_collectpads_start),
4929         (gst_collectpads_stop), (gst_collectpads_peek),
4930         (gst_collectpads_pop), (gst_collectpads_available),
4931         (gst_collectpads_read), (gst_collectpads_flush),
4932         (gst_collectpads_chain):
4933         * gst/base/gstcollectpads.h:
4934         * gst/elements/Makefile.am:
4935         * gst/elements/gstelements.c:
4936         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4937         (gst_fakesink_get_times), (gst_fakesink_event),
4938         (gst_fakesink_preroll), (gst_fakesink_render):
4939         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
4940         (gst_filesink_init), (gst_filesink_set_location),
4941         (gst_filesink_open_file), (gst_filesink_close_file),
4942         (gst_filesink_pad_query), (gst_filesink_event),
4943         (gst_filesink_render), (gst_filesink_change_state):
4944         * gst/elements/gstfilesink.h:
4945         Added object to help in making collect pad based elements.
4946         Ported filesink.
4947         Make event function in sink baseclass return gboolean.
4948
4949 2005-05-05  Wim Taymans  <wim@fluendo.com>
4950
4951         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
4952         (gst_bin_get_by_name):
4953         * gst/gstbuffer.h:
4954         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
4955         (gst_clock_finalize):
4956         * gst/gstdata.c: (gst_data_replace):
4957         * gst/gstdata.h:
4958         * gst/gstelement.c: (gst_element_request_pad),
4959         (gst_element_pads_activate):
4960         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
4961         (gst_object_unref):
4962         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4963         (gst_pad_set_checkgetrange_function),
4964         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
4965         (gst_pad_check_pull_range), (gst_pad_pull_range),
4966         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4967         (gst_pad_pause_task), (gst_pad_stop_task):
4968         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4969         (gst_element_request_pad), (gst_pad_proxy_getcaps):
4970         Fix name lookup in GstBin.
4971         Added _data_replace() function and _buffer_replace()
4972         Use finalize method to clean up clock.
4973         Fix refcounting on request pads.
4974         Fix pad schedule mode error.
4975         Some more object refcounting debug info,
4976
4977
4978 2005-05-04  Andy Wingo <wingo@pobox.com>
4979
4980         * check/Makefile.am:
4981         * docs/gst/tmpl/gstatomic.sgml:
4982         * docs/gst/tmpl/gstplugin.sgml:
4983         * gst/base/gstbasesink.c: (gst_basesink_activate):
4984         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
4985         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
4986         (gst_basesrc_query), (gst_basesrc_set_property),
4987         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
4988         (gst_basesrc_activate):
4989         * gst/base/gstbasesrc.h:
4990         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
4991         (gst_base_transform_src_activate):
4992         * gst/elements/gstelements.c:
4993         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4994         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
4995         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4996         * gst/elements/gsttypefindelement.c: (find_element_get_length),
4997         (gst_type_find_element_checkgetrange),
4998         (gst_type_find_element_activate):
4999         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
5000         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
5001         (gst_caps_load_thyself):
5002         * gst/gstelement.c: (gst_element_pads_activate),
5003         (gst_element_save_thyself), (gst_element_restore_thyself):
5004         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
5005         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
5006         * gst/gstpad.h:
5007         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
5008         (gst_xml_parse_file), (gst_xml_parse_memory),
5009         (gst_xml_get_element), (gst_xml_make_element):
5010         * gst/indexers/gstfileindex.c: (gst_file_index_load),
5011         (_file_index_id_save_xml), (gst_file_index_commit):
5012         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
5013         (read_enum), (load_pad_template), (load_feature), (load_plugin),
5014         (load_paths):
5015         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
5016         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
5017         * tools/gst-complete.c: (main):
5018         * tools/gst-compprep.c: (main):
5019         * tools/gst-inspect.c: (print_element_properties_info):
5020         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
5021         * tools/gst-xmlinspect.c: (print_element_properties):
5022         GCC 4 fixen.
5023         
5024 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5025
5026         * gst/gstplugin.c: (gst_plugin_check_module),
5027         (gst_plugin_check_file), (gst_plugin_load_file):
5028             apply patch from #172526 to make register work on MacOSX
5029
5030 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5031
5032         * docs/gst/tmpl/gstconfig.sgml:
5033         * gst/gstconfig.h.in:
5034           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
5035         * testsuite/debug/printf_extension.c: (main):
5036           Do not use GST_PTR_FORMAT on pointers to types with
5037           sizeof < sizeof(gpointer).  Fixes test on 64-bit
5038         * testsuite/elements/property.h:
5039           use correct printf format
5040
5041 2005-05-02  Wim Taymans  <wim@fluendo.com>
5042
5043         * docs/design/draft-push-pull.txt:
5044         * docs/design/draft-query.txt:
5045         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
5046         (gst_basesrc_start):
5047         Added draft for new query API.
5048         Added draft for better selecting scheduling methods.
5049         Make basesrc ignore length if the subclass does not support
5050         it.
5051
5052 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5053
5054         * gst/Makefile.am:
5055           possible fixes for automake-1.5 - _LIBADD is reserved
5056
5057 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5058
5059         * docs/faq/Makefile.am:
5060         * docs/manual/Makefile.am:
5061         * docs/manuals.mak:
5062         * docs/pwg/Makefile.am:
5063         * gst/Makefile.am:
5064           possible fixes for automake-1.5
5065
5066 2005-04-28  Wim Taymans  <wim@fluendo.com>
5067
5068         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5069         (gst_basesink_pad_getcaps), (gst_basesink_init),
5070         (gst_basesink_do_sync):
5071         * gst/gstclock.c: (gst_clock_entry_new):
5072         * gst/gstevent.c: (gst_event_discont_get_value):
5073         * gst/gstpipeline.c: (pipeline_bus_handler),
5074         (gst_pipeline_change_state):
5075         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
5076         Better debugging of clocking info.
5077         Allow NULL values when getting discont values.
5078
5079 2005-04-27  Wim Taymans  <wim@fluendo.com>
5080
5081         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5082         * check/gst/gstpad.c: (gst_pad_suite):
5083         Increase timeout for checks.
5084
5085 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5086
5087         * check/Makefile.am:
5088           fix the broken rule for cleanup.  Apparently this rule is
5089           only needed on FC2, so maybe this warrants further autotool
5090           inspection.
5091
5092 2005-04-26  Wim Taymans  <wim@fluendo.com>
5093
5094         * gst/gsttrashstack.h:
5095         Ooohh. a nasty one! After having a failed pop() from the stack,
5096         it's possible that the stack is empty. In that case, don't
5097         follow the NULL pointer.
5098
5099 2005-04-25  Wim Taymans  <wim@fluendo.com>
5100
5101         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5102         (gst_pad_set_checkgetrange_function),
5103         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
5104         (gst_pad_check_pull_range), (gst_pad_pull_range),
5105         (gst_static_pad_template_get_caps), (gst_pad_start_task),
5106         (gst_pad_pause_task), (gst_pad_stop_task):
5107         * gst/gstplugin.c: (gst_plugin_load):
5108         * gst/gstplugin.h:
5109         Remove gst_library_load as it does more harm than good with
5110         the new g_module flags.
5111         Revert bogus caps template check in pad linking, pad caps
5112         are important when linking not the template, which is more
5113         general than the current caps.
5114
5115 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5116
5117         * gst/autoplug/.cvsignore:
5118         * gst/autoplug/Makefile.am:
5119         * gst/autoplug/gstsearchfuncs.c:
5120         * gst/autoplug/gstsearchfuncs.h:
5121         * gst/autoplug/gstspider.c:
5122         * gst/autoplug/gstspider.h:
5123         * gst/autoplug/gstspideridentity.c:
5124         * gst/autoplug/gstspideridentity.h:
5125         * gst/autoplug/spidertest.c:
5126           Die, spider, die.
5127
5128 2005-04-25  Wim Taymans  <wim@fluendo.com>
5129
5130         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5131         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
5132         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
5133         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
5134         * gst/gstpad.h:
5135         Added stubs for unimplemented functions. 
5136
5137 2005-04-24  David Schleef  <ds@schleef.org>
5138
5139         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
5140         please fix.
5141
5142 2005-04-24  David Schleef  <ds@schleef.org>
5143
5144         Convert everything from GstAtomicInt to g_atomic_int_*, and
5145         remove gstatomic.
5146         * gst/Makefile.am:
5147         * gst/gstatomic.c:
5148         * gst/gstatomic.h:
5149         * gst/gstatomic_impl.h:
5150         * gst/gstbuffer.c:
5151         * gst/gstcaps.c:
5152         * gst/gstcaps.h:
5153         * gst/gstclock.c:
5154         * gst/gstclock.h:
5155         * gst/gstdata.c:
5156         * gst/gstdata.h:
5157         * gst/gstdata_private.h:
5158         * gst/gstevent.c:
5159         * gst/gstinfo.c:
5160         * gst/gstinfo.h:
5161         * gst/gstmessage.c:
5162         * gst/gstobject.c:
5163         * gst/gstobject.h:
5164         * gst/gststructure.c:
5165         * gst/gststructure.h:
5166         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
5167         * gst/gstutils.h:
5168
5169 2005-04-24  David Schleef  <ds@schleef.org>
5170
5171         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
5172         make the regressions tests work.  Remove some code that is no
5173         longer true.
5174         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
5175         Disable warning for pads without templates.
5176
5177 2005-04-24  David Schleef  <ds@schleef.org>
5178
5179         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
5180         functions that handle filtered links.
5181         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
5182         removed functions.
5183         * gst/gstutils.c: Fix/remove utility functions that handle
5184         filtered caps.
5185         * gst/gstutils.h:
5186         * gst/gstvalue.c: Add serialization/deserialization of caps
5187         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
5188         requires fixing so that the filter caps notation creates
5189         a capsfilter element and sets the filter_caps property.  I
5190         think everyone probably wants to keep the shorthand notation.
5191         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
5192         * docs/gst/tmpl/gstpad.sgml:
5193
5194         * gst/elements/gstelements.c: Register capsfilter element.
5195         * gst/Makefile.am: fix spacing
5196         * docs/random/ds/0.9-suggested-changes: random
5197
5198 2005-04-23  David Schleef  <ds@schleef.org>
5199
5200         * gst/elements/Makefile.am:
5201         * gst/elements/gstcapsfilter.c: New element that acts like an
5202         identity, but filters caps.  Will eventually replace filtered
5203         caps in pad linking.
5204         * gst/gstutils.c: (gst_element_create_all_pads): New function
5205         to create all the ALWAYS pads that are registered with an
5206         element class.  This functionality should eventually be
5207         merged in with GstElement initialization.
5208         * gst/gstutils.h:
5209         * testsuite/trigger/README: part of trigger test code that should
5210         have been checked in a long time ago.
5211
5212 2005-04-23  David Schleef  <ds@schleef.org>
5213
5214         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
5215         needed with new versions of libtool (nobody will confirm this),
5216         and hard to carry around.
5217         * gst/autoplug/Makefile.am:
5218         * gst/base/Makefile.am:
5219         * gst/elements/Makefile.am:
5220         * gst/indexers/Makefile.am:
5221         * gst/schedulers/Makefile.am:
5222         * libs/gst/bytestream/Makefile.am:
5223         * libs/gst/control/Makefile.am:
5224         * libs/gst/dataprotocol/Makefile.am:
5225         * libs/gst/getbits/Makefile.am:
5226
5227 2005-04-21  Wim Taymans  <wim@fluendo.com>
5228
5229         * docs/design/draft-push-pull.txt:
5230         * docs/design/part-MT-refcounting.txt:
5231         * docs/design/part-TODO.txt:
5232         * docs/design/part-caps.txt:
5233         * docs/design/part-events.txt:
5234         * docs/design/part-gstbus.txt:
5235         * docs/design/part-gstpipeline.txt:
5236         * docs/design/part-messages.txt:
5237         * docs/design/part-push-pull.txt:
5238         * docs/design/part-query.txt:
5239         Some more docs.
5240
5241 2005-04-21  Wim Taymans  <wim@fluendo.com>
5242
5243         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
5244         (gst_message_new), (gst_message_new_error),
5245         (gst_message_new_warning), (gst_message_new_tag),
5246         (gst_message_new_state_changed), (gst_message_new_application),
5247         (gst_message_get_structure):
5248         * gst/gstmessage.h:
5249         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5250         (gst_structure_copy_conditional):
5251         Use parent refcount in GstMessage to ensure GstStructure
5252         consistency.
5253         Cleaned up headers a bit.
5254         
5255
5256 2005-04-20  Wim Taymans  <wim@fluendo.com>
5257
5258         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5259         (gst_basesink_pad_getcaps), (gst_basesink_init),
5260         (gst_basesink_chain_unlocked):
5261         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
5262         (gst_type_find_helper):
5263         * gst/elements/gsttypefindelement.c:
5264         (gst_type_find_element_have_type), (gst_type_find_element_init),
5265         (stop_typefinding), (gst_type_find_element_handle_event),
5266         (find_suggest), (gst_type_find_element_chain),
5267         (gst_type_find_element_checkgetrange),
5268         (gst_type_find_element_getrange), (do_typefind),
5269         (gst_type_find_element_activate):
5270         * gst/gstbuffer.c: (_gst_buffer_sub_free),
5271         (gst_buffer_default_free), (gst_buffer_default_copy),
5272         (gst_buffer_set_caps):
5273         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
5274         (gst_caps_replace):
5275         * gst/gstmessage.c: (gst_message_new),
5276         (gst_message_new_state_changed):
5277         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5278         (gst_pad_set_checkgetrange_function),
5279         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
5280         (gst_pad_set_caps), (gst_pad_check_pull_range),
5281         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
5282         * gst/gstpad.h:
5283         * gst/gsttypefind.c: (gst_type_find_register):
5284         Make gst_caps_replace() work like other _replace() functions.
5285         Use _caps_replace() where possible.
5286         Make sure _message_new() initialises its field.
5287         Add gst_static_pad_template_get_caps()
5288
5289
5290 2005-04-18  Andy Wingo  <wingo@pobox.com>
5291
5292         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
5293         on the peer, not the pad. I think that was a typo. Pass an extra
5294         arg to see if random access is possible. Activate the pads as
5295         PULL_RANGE if possible.
5296
5297         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
5298
5299         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
5300         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
5301         to PROP_....
5302
5303 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5304
5305         * docs/faq/using.xml:
5306           Add note on gstreamer-properties (#154996).
5307
5308 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5309
5310         * docs/random/bbb/optional-properties:
5311           Some analysis on optional properties.
5312
5313 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5314
5315         * docs/gst/tmpl/gstelementfactory.sgml:
5316         * gst/gstelement.h:
5317         * gst/gstelementfactory.c: (gst_element_factory_init),
5318         (gst_element_factory_cleanup), (gst_element_register),
5319         (__gst_element_factory_add_static_pad_template),
5320         (gst_element_factory_get_static_pad_templates),
5321         (gst_element_factory_can_src_caps),
5322         (gst_element_factory_can_sink_caps):
5323         * gst/registries/Makefile.am:
5324         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
5325         (gst_xml_registry_class_init), (gst_xml_registry_init),
5326         (gst_xml_registry_new), (gst_xml_registry_set_property),
5327         (gst_xml_registry_get_property), (get_time), (make_dir),
5328         (gst_xml_registry_get_perms_func),
5329         (plugin_times_older_than_recurse), (plugin_times_older_than),
5330         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
5331         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
5332         (add_to_char_array), (read_string), (read_uint), (read_enum),
5333         (load_pad_template), (load_feature), (load_plugin), (load_paths),
5334         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
5335         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
5336         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
5337         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
5338         (gst_xml_registry_rebuild):
5339         * gst/registries/gstlibxmlregistry.h:
5340         * tools/gst-compprep.c: (main):
5341         * tools/gst-inspect.c: (print_pad_templates_info):
5342         * tools/gst-xmlinspect.c: (print_element_info):
5343           Use libxml2 for registry parsing, use staticpadtemplates in
5344           elementfactories. Makes gst_init() +/- 10x faster.
5345
5346 2005-04-12  Wim Taymans  <wim@fluendo.com>
5347
5348         * gst/base/Makefile.am:
5349         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5350         (gst_basesink_pad_getcaps), (gst_basesink_init),
5351         (gst_basesink_event), (gst_basesink_change_state):
5352         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5353         (gst_basesrc_init), (gst_basesrc_query),
5354         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
5355         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
5356         (gst_basesrc_check_get_range), (gst_basesrc_loop),
5357         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
5358         (gst_basesrc_stop), (gst_basesrc_activate),
5359         (gst_basesrc_change_state):
5360         * gst/base/gsttypefindhelper.c: (helper_find_peek),
5361         (helper_find_suggest), (gst_type_find_helper):
5362         * gst/base/gsttypefindhelper.h:
5363         * gst/elements/Makefile.am:
5364         * gst/elements/gstelements.c:
5365         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
5366         (gst_fakesink_get_times), (gst_fakesink_event),
5367         (gst_fakesink_preroll), (gst_fakesink_render):
5368         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5369         (gst_fakesrc_init), (gst_fakesrc_event_handler),
5370         (gst_fakesrc_get_property), (gst_fakesrc_create),
5371         (gst_fakesrc_start), (gst_fakesrc_stop):
5372         * gst/elements/gstfakesrc.h:
5373         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
5374         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
5375         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
5376         (gst_filesrc_create_read), (gst_filesrc_create),
5377         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
5378         (gst_filesrc_start):
5379         * gst/elements/gsttypefindelement.c:
5380         (gst_type_find_element_have_type), (gst_type_find_element_init),
5381         (start_typefinding), (stop_typefinding), (push_buffer_store),
5382         (gst_type_find_element_handle_event),
5383         (gst_type_find_element_chain),
5384         (gst_type_find_element_checkgetrange),
5385         (gst_type_find_element_getrange), (do_typefind),
5386         (gst_type_find_element_activate),
5387         (gst_type_find_element_change_state):
5388         * gst/elements/gsttypefindelement.h:
5389         * gst/gstpipeline.c: (pipeline_bus_handler):
5390         Added typefind helper.
5391         Small preroll fix in the base sink.
5392         Disable typefind code in basesrc.
5393         Crude port of typefindelement.
5394         Fakesrc cleanups.
5395
5396
5397 2005-04-11  Wim Taymans  <wim@fluendo.com>
5398
5399         * check/gst/gstbus.c: (gstbus_suite):
5400         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
5401         * check/gstcheck.h:
5402           Fix up the timeout so that the test does not fail.
5403
5404 2005-04-06  Wim Taymans  <wim@fluendo.com>
5405
5406         * gst/base/README:
5407         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5408         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
5409         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
5410         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
5411         (gst_basesrc_check_get_range), (gst_basesrc_loop),
5412         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
5413         (gst_basesrc_stop), (gst_basesrc_activate),
5414         (gst_basesrc_change_state), (basesrc_find_peek),
5415         (basesrc_find_suggest), (gst_basesrc_type_find):
5416         * gst/base/gstbasesrc.h:
5417         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5418         (gst_filesrc_class_init), (gst_filesrc_init),
5419         (gst_filesrc_finalize), (gst_filesrc_set_location),
5420         (gst_filesrc_set_property), (gst_filesrc_get_property),
5421         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
5422         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
5423         (gst_filesrc_create_read), (gst_filesrc_create),
5424         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
5425         * gst/elements/gstfilesrc.h:
5426         * gst/gstelement.c: (gst_element_get_state_func),
5427         (gst_element_lost_state), (gst_element_pads_activate):
5428         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5429         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
5430         (gst_pad_pull_range):
5431         * gst/gstpad.h:
5432         More work on the generic source base class, implement seeking,
5433         query.
5434         Make filesrc extend the base source class.
5435         Added gst_pad_set_checkgetrange_function to GstPad.
5436
5437 2005-04-06  Andy Wingo  <wingo@pobox.com>
5438
5439         * pkgconfig/gstreamer-base.pc.in:
5440         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
5441
5442         * pkgconfig/Makefile.am:
5443         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
5444
5445 2005-04-04  Wim Taymans  <wim@fluendo.com>
5446
5447         * gst/base/Makefile.am:
5448         * gst/base/README:
5449         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5450         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
5451         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
5452         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
5453         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5454         (gst_basesrc_base_init), (gst_basesrc_class_init),
5455         (gst_basesrc_init), (gst_basesrc_get_formats),
5456         (gst_basesrc_get_query_types), (gst_basesrc_query),
5457         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
5458         (gst_basesrc_set_property), (gst_basesrc_get_property),
5459         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
5460         (gst_basesrc_loop), (gst_basesrc_activate),
5461         (gst_basesrc_change_state):
5462         * gst/base/gstbasesrc.h:
5463         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5464         (gst_fakesrc_class_init), (gst_fakesrc_init),
5465         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
5466         (gst_fakesrc_get_property), (gst_fakesrc_create):
5467         * gst/elements/gstfakesrc.h:
5468         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
5469         (gst_filesrc_open_file), (gst_filesrc_loop),
5470         (gst_filesrc_activate), (filesrc_find_peek),
5471         (gst_filesrc_type_find):
5472         Made base source class, make fakesrc extend it.
5473         Add comments to basesink class.
5474         Some filesrc cleanup.
5475
5476 2005-03-31  David Schleef  <ds@schleef.org>
5477
5478         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5479         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
5480         expected to link against libgstreamer.
5481         * gst/base/Makefile.am: link against libgstreamer
5482         * gst/elements/Makefile.am: same
5483
5484 2005-03-31  Andy Wingo  <wingo@pobox.com>
5485
5486         * tests/instantiate/Makefile.am:
5487         * tests/instantiate/caps.c: Add test to test speed of caps copy
5488         and free.
5489
5490         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
5491         GMemChunk to be fair.
5492
5493         * gst/gsttrashstack.h: Remove warning about using the fallback
5494         trash stack implementation, it's still faster than malloc.
5495
5496 2005-03-30  Andy Wingo  <wingo@pobox.com>
5497
5498         * tests/complexity.c: Add a copyright.
5499
5500 2005-03-31  Wim Taymans  <wim@fluendo.com>
5501
5502         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
5503         (gst_base_transform_class_init), (gst_base_transform_init),
5504         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
5505         (gst_base_transform_get_property),
5506         (gst_base_transform_sink_activate),
5507         (gst_base_transform_src_activate),
5508         (gst_base_transform_change_state):
5509         * gst/base/gstbasetransform.h:
5510         * gst/elements/gstidentity.c: (gst_identity_class_init),
5511         (gst_identity_event), (gst_identity_check_perfect),
5512         (gst_identity_transform), (gst_identity_start),
5513         (gst_identity_stop):
5514         Added start/stop methods to transform base class so subclasses 
5515         don't need to deal with state changes even.
5516
5517 2005-03-31  Wim Taymans  <wim@fluendo.com>
5518
5519         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
5520         (gst_event_new_discontinuous), (gst_event_discont_get_value):
5521         * gst/gstevent.h:
5522         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5523         (gst_pad_pull_range):
5524         Added rate to the discont event to prepare for variable speed
5525         and reverse playback.
5526
5527 2005-03-29  David Schleef  <ds@schleef.org>
5528
5529         * configure.ac:
5530         * testsuite/trigger/Makefile.am:
5531         * testsuite/trigger/trigger.c: A little example program to show
5532         how trigger-based elements can work.
5533
5534 2005-03-29  Wim Taymans  <wim@fluendo.com>
5535
5536         * gst/base/Makefile.am:
5537         * gst/base/README:
5538         * gst/base/gstbasesink.c: (gst_basesink_get_type),
5539         (gst_basesink_base_init), (gst_basesink_class_init),
5540         (gst_basesink_pad_getcaps), (gst_basesink_init),
5541         (gst_basesink_activate), (gst_basesink_change_state):
5542         * gst/base/gstbasesink.h:
5543         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
5544         (gst_base_transform_base_init), (gst_base_transform_finalize),
5545         (gst_base_transform_class_init), (gst_base_transform_init),
5546         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
5547         (gst_base_transform_event), (gst_base_transform_getrange),
5548         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
5549         (gst_base_transform_set_property),
5550         (gst_base_transform_get_property),
5551         (gst_base_transform_sink_activate),
5552         (gst_base_transform_src_activate),
5553         (gst_base_transform_change_state):
5554         * gst/base/gstbasetransform.h:
5555         * gst/elements/gstidentity.c: (gst_identity_finalize),
5556         (gst_identity_class_init), (gst_identity_init),
5557         (gst_identity_event), (gst_identity_check_perfect),
5558         (gst_identity_transform), (gst_identity_set_property),
5559         (gst_identity_get_property), (gst_identity_change_state):
5560         * gst/elements/gstidentity.h:
5561         * gst/gstelement.c: (gst_element_get_state_func),
5562         (gst_element_lost_state), (gst_element_pads_activate):
5563         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5564         (gst_pad_check_pull_range), (gst_pad_pull_range):
5565         * gst/gstpad.h:
5566         Simplify pad activation.
5567         Added function to check if pull_range can be performed.
5568         Error out when pulling inactive or flushing pads.
5569         Removed const from refcounted types as it does not make sense.
5570         Simplify pad templates in basesink
5571         Added base class for simple 1-to-1 transforms.
5572         Make identity subclass the base transform.
5573
5574 2005-03-29  Andy Wingo  <wingo@pobox.com>
5575
5576         * docs/libs/gstreamer-libs-overrides.txt: 
5577         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
5578         really don't understand what's going on, but like whatever. I want
5579         green buildbot!
5580
5581         * docs/gst/Makefile.am:
5582         * docs/libs/Makefile.am: Dist the overrides files.
5583
5584         * check/Makefile.am (clean-local): Remove .libs directories.
5585
5586         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
5587         elements to EXTRA_DIST, so po/ files are happy.
5588
5589         * po/POTFILES.in: Er, remove it here.
5590
5591         * po/POTFILES: Remove gstspider.c.
5592
5593         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
5594
5595         * docs/libs/gstreamer-libs-docs.sgml: 
5596         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
5597         bytestream.
5598
5599         * tests/complexity.c (main): Set the length of the preroll queue
5600         on the sinks to prevent a lockup.
5601
5602         * libs/gst/dataprotocol/Makefile.am: 
5603         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
5604         the same as the one in check/gst-libs/gdp.c.
5605
5606         * po/, docs/gst/: Commit automatic changes to docs and po files.
5607
5608         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
5609         the versioned libgstbase.
5610
5611         * check/Makefile.am: Depend on an unversioned gst-register, seems
5612         to make autoconf happier.
5613
5614         * gst/base/Makefile.am: Make libgstbase a versioned lib.
5615
5616 2005-03-28  Wim Taymans  <wim@fluendo.com>
5617
5618         * configure.ac:
5619         * docs/design/part-gstelement.txt:
5620         * docs/design/part-negotiation.txt:
5621         * docs/design/part-preroll.txt:
5622         * docs/design/part-scheduling.txt:
5623         * docs/design/part-states.txt:
5624         * gst/Makefile.am:
5625         * gst/base/Makefile.am:
5626         * gst/base/README:
5627         * gst/base/gstbasesink.c: (gst_basesink_get_template),
5628         (gst_basesink_base_init), (gst_basesink_class_init),
5629         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
5630         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
5631         (gst_basesink_set_pad_functions),
5632         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
5633         (gst_basesink_set_property), (gst_basesink_get_property),
5634         (gst_base_sink_get_template), (gst_base_sink_get_caps),
5635         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
5636         (gst_basesink_preroll_queue_push),
5637         (gst_basesink_preroll_queue_empty),
5638         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
5639         (gst_basesink_event), (gst_basesink_get_times),
5640         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
5641         (gst_basesink_chain_unlocked), (gst_basesink_chain),
5642         (gst_basesink_loop), (gst_basesink_activate),
5643         (gst_basesink_change_state):
5644         * gst/base/gstbasesink.h:
5645         * gst/elements/Makefile.am:
5646         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5647         (gst_fakesink_class_init), (gst_fakesink_init),
5648         (gst_fakesink_set_property), (gst_fakesink_get_property),
5649         (gst_fakesink_get_times), (gst_fakesink_event),
5650         (gst_fakesink_preroll), (gst_fakesink_render),
5651         (gst_fakesink_change_state):
5652         * gst/elements/gstfakesink.h:
5653         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
5654         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
5655         * gst/gstelement.c: (gst_element_add_pad),
5656         (gst_element_get_state_func), (gst_element_abort_state),
5657         (gst_element_commit_state), (gst_element_lost_state),
5658         (gst_element_set_state), (gst_element_pads_activate):
5659         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
5660         * gst/gstpipeline.c: (gst_pipeline_send_event),
5661         (gst_pipeline_change_state):
5662         Added state change code.
5663         Added/updated docs.
5664         Added sink base class, make fakesink extend the base class.
5665         Small cleanups in GstPipeline.
5666
5667 2005-03-26  David Schleef  <ds@schleef.org>
5668
5669         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
5670         is broken and should be implemented in a different library.
5671         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
5672         * gst/gst.h: remove gstcpu.h
5673         * gst/gstcpu.c: remove
5674         * gst/gstcpu.h: remove
5675         * gst/Makefile.am.future: Remove this file.  It's ancient.
5676
5677 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5678
5679         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
5680         (gst_bin_send_event):
5681           Add default event/set_manager handlers. The set_manager handler
5682           takes care that the manager is distributed over kids that were
5683           already in the bin before the manager was set. The event handler
5684           is a utility virtual function that sends the event over all sinks,
5685           so that gst_element_send_event (bin, event); has the expected
5686           behaviour.
5687         * gst/gstpad.c: (gst_pad_event_default):
5688           Re-install default event handling for discontinuities, so that
5689           seeking works without requiring hacks in applications or extra
5690           code in sinks.
5691         * gst/gstpipeline.c: (gst_pipeline_class_init),
5692         (gst_pipeline_send_event):
5693           Half hack, half utility: set a pipeline to PAUSED for seek events,
5694           since that is the only way we can guarantee a/v sync. Means that
5695           you can do gst_element_seek (pipeline, method, pos); on a pipeline
5696           and it "just works".
5697
5698 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5699
5700         * gst/gstpipeline.c: (gst_pipeline_use_clock):
5701           Lock/unlock mismatch.
5702
5703 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5704
5705         * docs/faq/gst-uninstalled:
5706           add gst-plugins-base
5707         * docs/gst/Makefile.am:
5708           don't error out until docs are fixed
5709         * docs/gst/gstreamer.types:
5710           remove thread
5711
5712 2005-03-22  Wim Taymans  <wim@fluendo.com>
5713
5714         * check/Makefile.am:
5715         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
5716         * gst/gststructure.c: (gst_structure_set_valist),
5717         (gst_structure_copy_conditional):
5718         Activated more tests.
5719         Added message test.
5720         Added G_TYPE_POINTER to GstStructure.
5721         
5722
5723 2005-03-22  Wim Taymans  <wim@fluendo.com>
5724
5725         * docs/design/part-TODO.txt:
5726         * docs/design/part-events.txt:
5727         * docs/design/part-gstbin.txt:
5728         * docs/design/part-gstbus.txt:
5729         * docs/design/part-gstpipeline.txt:
5730         * docs/design/part-messages.txt:
5731         * gst/gstbus.c:
5732         * gst/gstmessage.c:
5733         Docs updates
5734
5735 2005-03-21  Wim Taymans  <wim@fluendo.com>
5736
5737         * gst/gstbus.c: (gst_bus_post):
5738         Fix copy-and-paste error.
5739
5740 2005-03-21  Wim Taymans  <wim@fluendo.com>
5741
5742         * check/Makefile.am:
5743         * gst/Makefile.am:
5744         * gst/elements/Makefile.am:
5745         * gst/elements/gstelements.c:
5746         * gst/elements/gstfakesink.c: (gst_fakesink_init),
5747         (gst_fakesink_event), (gst_fakesink_chain):
5748         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5749         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
5750         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
5751         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
5752         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5753         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
5754         (gst_fakesrc_loop), (gst_fakesrc_activate),
5755         (gst_fakesrc_change_state):
5756         * gst/elements/gstfakesrc.h:
5757         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
5758         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
5759         (gst_filesrc_open_file), (gst_filesrc_loop),
5760         (gst_filesrc_activate), (gst_filesrc_change_state),
5761         (filesrc_find_peek), (filesrc_find_suggest),
5762         (gst_filesrc_type_find):
5763         * gst/elements/gstidentity.c: (gst_identity_finalize),
5764         (gst_identity_class_init), (gst_identity_init),
5765         (gst_identity_proxy_getcaps), (identity_queue_push),
5766         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
5767         (gst_identity_getrange), (gst_identity_chain),
5768         (gst_identity_sink_loop), (gst_identity_src_loop),
5769         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
5770         (gst_identity_set_property), (gst_identity_get_property),
5771         (gst_identity_change_state):
5772         * gst/elements/gstidentity.h:
5773         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
5774         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
5775         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
5776         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
5777         (gst_tee_sink_activate):
5778         * gst/elements/gsttee.h:
5779         * gst/gst.c: (gst_register_core_elements), (init_post):
5780         * gst/gst.h:
5781         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
5782         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
5783         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
5784         (gst_bin_change_state):
5785         * gst/gstbin.h:
5786         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
5787         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
5788         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
5789         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
5790         (gst_bus_set_sync_handler), (gst_bus_create_watch),
5791         (bus_watch_callback), (bus_watch_destroy),
5792         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
5793         (poll_timeout), (gst_bus_poll):
5794         * gst/gstbus.h:
5795         * gst/gstcaps.h:
5796         * gst/gstdata.h:
5797         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5798         (gst_element_post_message), (gst_element_message_full),
5799         (gst_element_get_state_func), (gst_element_get_state),
5800         (gst_element_abort_state), (gst_element_commit_state),
5801         (gst_element_lost_state), (gst_element_set_state),
5802         (gst_element_pads_activate), (gst_element_change_state),
5803         (gst_element_dispose), (gst_element_set_manager_func),
5804         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
5805         (gst_element_set_manager), (gst_element_get_manager),
5806         (gst_element_set_bus), (gst_element_get_bus),
5807         (gst_element_set_scheduler), (gst_element_get_scheduler):
5808         * gst/gstelement.h:
5809         * gst/gstevent.c: (gst_event_new_segment_seek),
5810         (gst_event_new_flush):
5811         * gst/gstevent.h:
5812         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
5813         (_gst_message_free), (gst_message_get_type), (gst_message_new),
5814         (gst_message_new_eos), (gst_message_new_error),
5815         (gst_message_new_warning), (gst_message_new_tag),
5816         (gst_message_new_state_changed), (gst_message_new_application),
5817         (gst_message_get_structure), (gst_message_parse_tag),
5818         (gst_message_parse_state_changed), (gst_message_parse_error),
5819         (gst_message_parse_warning):
5820         * gst/gstmessage.h:
5821         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
5822         (gst_real_pad_set_property), (gst_pad_set_active),
5823         (gst_pad_is_active), (gst_pad_set_blocked_async),
5824         (gst_pad_set_blocked), (gst_pad_is_blocked),
5825         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
5826         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
5827         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
5828         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
5829         (gst_pad_link_filtered), (gst_pad_relink_filtered),
5830         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
5831         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
5832         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
5833         (gst_pad_set_caps), (gst_pad_configure_sink),
5834         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
5835         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
5836         (gst_real_pad_dispose), (gst_real_pad_finalize),
5837         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
5838         (gst_pad_event_default_dispatch), (gst_pad_event_default),
5839         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
5840         * gst/gstpad.h:
5841         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
5842         (pipeline_bus_handler), (gst_pipeline_change_state),
5843         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
5844         * gst/gstpipeline.h:
5845         * gst/gstprobe.h:
5846         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
5847         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
5848         (gst_queue_link_src), (gst_queue_bufferalloc),
5849         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
5850         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
5851         (gst_queue_loop), (gst_queue_handle_src_event),
5852         (gst_queue_handle_src_query), (gst_queue_src_activate),
5853         (gst_queue_change_state):
5854         * gst/gstqueue.h:
5855         * gst/gstscheduler.c: (gst_scheduler_init),
5856         (gst_scheduler_dispose), (gst_scheduler_create_task),
5857         (gst_scheduler_factory_create):
5858         * gst/gstscheduler.h:
5859         * gst/gststructure.c: (gst_structure_get_type),
5860         (gst_structure_copy_conditional):
5861         * gst/gststructure.h:
5862         * gst/gsttaginterface.h:
5863         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
5864         (gst_task_init), (gst_task_dispose), (gst_task_create),
5865         (gst_task_get_state), (gst_task_start), (gst_task_stop),
5866         (gst_task_pause):
5867         * gst/gsttask.h:
5868         * gst/gstthread.c:
5869         * gst/gstthread.h:
5870         * gst/gsttypes.h:
5871         * gst/schedulers/Makefile.am:
5872         * gst/schedulers/cothreads_compat.h:
5873         * gst/schedulers/entryscheduler.c:
5874         * gst/schedulers/faircothreads.c:
5875         * gst/schedulers/faircothreads.h:
5876         * gst/schedulers/fairscheduler.c:
5877         * gst/schedulers/gstbasicscheduler.c:
5878         * gst/schedulers/gstoptimalscheduler.c:
5879         * gst/schedulers/gthread-cothreads.h:
5880         * gst/schedulers/threadscheduler.c:
5881         (gst_thread_scheduler_task_get_type),
5882         (gst_thread_scheduler_task_class_init),
5883         (gst_thread_scheduler_task_init),
5884         (gst_thread_scheduler_task_start),
5885         (gst_thread_scheduler_task_stop),
5886         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
5887         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
5888         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
5889         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
5890         (plugin_init):
5891         * libs/gst/Makefile.am:
5892         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
5893         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
5894         (gst_file_pad_parent_set):
5895         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
5896         (gst_dp_event_from_packet):
5897         * tests/complexity.c: (main):
5898         * tests/mass_elements.c: (main):
5899         * testsuite/states/locked.c: (message_received), (main):
5900         * testsuite/states/parent.c: (main):
5901         * tools/gst-inspect.c: (print_element_flag_info),
5902         (print_implementation_info), (print_pad_info):
5903         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
5904         (main):
5905         * tools/gst-md5sum.c: (event_loop), (main):
5906         * tools/gst-typefind.c: (main):
5907         * tools/gst-xmlinspect.c: (print_element_info):
5908         Next big merge.
5909         Added GstBus for mainloop integration.
5910         Added GstMessage for sending notifications on the bus.
5911         Added GstTask as an abstraction for pipeline entry points.
5912         Removed GstThread.
5913         Removed Schedulers.
5914         Simplified GstQueue for multithreaded core.
5915         Made _link threadsafe, removed old capsnego.
5916         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
5917         Added pad blocking functions.
5918         Reworked scheduling functions in GstPad to prepare for
5919         scheduling updates soon.
5920         Moved events out of data stream.
5921         Simplified GstEvent types.
5922         Added return values to push/pull.
5923         Removed clocking from GstElement.
5924         Added prototypes for state change function for next merge.
5925         Removed iterate from bins and state change management.
5926         Fixed some elements, disabled others for now.
5927         Fixed -inspect and -launch.
5928         Added check for GstBus.
5929
5930 2005-03-10  Wim Taymans  <wim@fluendo.com>
5931
5932         * docs/design/part-MT-refcounting.txt:
5933         * docs/design/part-clocks.txt:
5934         * docs/design/part-gstelement.txt:
5935         * docs/design/part-gstobject.txt:
5936         * docs/design/part-standards.txt:
5937         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5938         (gst_bin_remove_func), (gst_bin_remove):
5939         * gst/gstbin.h:
5940         * gst/gstbuffer.c:
5941         * gst/gstcaps.h:
5942         * testsuite/clock/clock1.c: (main):
5943         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
5944         (main):
5945         * testsuite/dlopen/loadgst.c: (do_test):
5946         * testsuite/refcounting/bin.c: (add_remove_test1),
5947         (add_remove_test2), (main):
5948         * testsuite/refcounting/element.c: (main):
5949         * testsuite/refcounting/element_pad.c: (main):
5950         * testsuite/refcounting/pad.c: (main):
5951         * tools/gst-launch.c: (sigint_handler_sighandler):
5952         * tools/gst-typefind.c: (main):
5953         Doc updates.
5954         Added doc about clock.
5955         removed gst_bin_iterate_recurse_up(), marked methods
5956         for removal.
5957         Fix more testsuites.
5958
5959 2005-03-09  Wim Taymans  <wim@fluendo.com>
5960
5961         * gst/gstpad.c: (gst_pad_get_direction),
5962         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
5963         (gst_pad_collect_valist):
5964         * testsuite/bins/interface.c: (main):
5965         * testsuite/caps/audioscale.c: (test_caps):
5966         * testsuite/caps/caps.c: (test1), (test2), (test3):
5967         * testsuite/caps/deserialize.c: (main):
5968         * testsuite/caps/enumcaps.c: (main):
5969         * testsuite/caps/filtercaps.c: (main):
5970         * testsuite/caps/intersect2.c: (main):
5971         * testsuite/caps/random.c: (main):
5972         * testsuite/caps/renegotiate.c: (my_fixate), (main):
5973         * testsuite/caps/sets.c: (check_caps):
5974         * testsuite/caps/simplify.c: (check_caps), (main):
5975         * testsuite/caps/subtract.c: (check_caps):
5976         Fix _pad_get_direction wrt ghostpads.
5977         Fix caps testsuite.
5978
5979 2005-03-09  Wim Taymans  <wim@fluendo.com>
5980
5981         * check/Makefile.am:
5982         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
5983         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
5984         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
5985         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
5986         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
5987         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
5988         (gst_bin_remove), (gst_bin_iterate_recurse_up),
5989         (bin_element_is_sink), (gst_bin_iterate_sinks),
5990         (gst_bin_iterate_all_by_interface):
5991         * gst/gstbin.h:
5992         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
5993         (gst_element_change_state), (gst_element_dispose),
5994         (gst_element_finalize), (gst_element_set_loop_function):
5995         * gst/gstelement.h:
5996         * gst/gstiterator.c: (find_custom_fold_func):
5997         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5998         (gst_pad_collectv), (gst_pad_collect_valist),
5999         (gst_pad_template_new):
6000         * gst/gstpipeline.c: (gst_pipeline_class_init),
6001         (gst_pipeline_dispose), (gst_pipeline_set_property),
6002         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
6003         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
6004         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
6005         * gst/gstutils.h:
6006         * gst/schedulers/entryscheduler.c:
6007         * gst/schedulers/gstbasicscheduler.c:
6008         (gst_basic_scheduler_cothreaded_chain),
6009         (gst_basic_scheduler_chain_add_element):
6010         * testsuite/bins/interface.c: (main):
6011         Added GstBin test.
6012         Added GstSystemClock test.
6013         Implemented clock distribution code in GstBin.
6014         Implemented iterate sinks method for future use.
6015         Rearranged gstelement.h
6016         Fix GstIterator comparison bug.
6017         Moved some code to GstPipeline, mostly clocking related.
6018
6019 2005-03-09  Wim Taymans  <wim@fluendo.com>
6020
6021         * configure.ac:
6022         * gst/gst_private.h:
6023         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
6024         (gst_bin_remove_func), (gst_bin_remove),
6025         (gst_bin_get_by_name_recurse_up):
6026         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
6027         (gst_clock_id_compare_func), (gst_clock_id_wait),
6028         (gst_clock_id_wait_async), (gst_clock_init),
6029         (gst_clock_adjust_unlocked), (gst_clock_get_time):
6030         * gst/gstelement.h:
6031         * gst/gstinfo.c: (_gst_debug_init):
6032         * gst/gstobject.h:
6033         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
6034         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
6035         * gst/gstpad.h:
6036         Bump version number, we're now 0.9.0
6037         Add future debugging category.
6038         Fix NULL _unref() in _get_by_name_recurse_up
6039         Rearrange gstpad.h.
6040         Update some docs.
6041
6042 2005-03-08  Wim Taymans  <wim@fluendo.com>
6043
6044         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
6045         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6046         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6047         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
6048         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
6049         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
6050         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
6051         * gst/elements/gstidentity.c: (gst_identity_class_init):
6052         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
6053         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
6054         * gst/elements/gstshaper.c: (gst_shaper_class_init):
6055         * gst/elements/gststatistics.c: (gst_statistics_class_init):
6056         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
6057         (gst_tee_link):
6058         * gst/gstelement.c: (gst_element_class_init),
6059         (gst_element_base_class_init), (gst_element_init),
6060         (gst_element_get_random_pad), (gst_element_wait_state_change),
6061         (gst_element_change_state), (gst_element_dispose),
6062         (gst_element_finalize), (gst_element_set_loop_function):
6063         * gst/gstelement.h:
6064         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
6065         * gst/gstthread.c: (gst_thread_class_init),
6066         (gst_thread_release_children_locks), (gst_thread_change_state):
6067         * gst/schedulers/gstbasicscheduler.c:
6068         (gst_basic_scheduler_loopfunc_wrapper),
6069         (gst_basic_scheduler_chain_wrapper),
6070         (gst_basic_scheduler_src_wrapper),
6071         (gst_basic_scheduler_remove_element):
6072         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
6073         Remove threadsafe properties. Fix elements because GObject
6074         complains when installing a property before declaring a
6075         set/get_property handler.
6076         Rearrange gstelement.h file, use STATE macros for state locks.
6077         Free mutexes in the finalize method instead of dispose.
6078
6079 2005-03-08  Wim Taymans  <wim@fluendo.com>
6080
6081         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
6082         * gst/gstthread.c: (gst_thread_release_children_locks):
6083         Added parentage check.
6084         Fix build og GstThread again.
6085
6086 2005-03-08  Wim Taymans  <wim@fluendo.com>
6087
6088         * docs/design/part-MT-refcounting.txt:
6089         * docs/design/part-conventions.txt:
6090         * docs/design/part-gstobject.txt:
6091         * docs/design/part-relations.txt:
6092         * docs/design/part-standards.txt:
6093         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
6094         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
6095         (gst_bin_get_by_name), (gst_bin_get_by_interface),
6096         (gst_bin_iterate_all_by_interface):
6097         * gst/gstbuffer.h:
6098         * gst/gstclock.h:
6099         * gst/gstelement.c: (gst_element_class_init),
6100         (gst_element_change_state), (gst_element_set_loop_function):
6101         * gst/gstelement.h:
6102         * gst/gstiterator.c:
6103         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
6104         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
6105         (gst_object_dispatch_properties_changed), (gst_object_set_name),
6106         (gst_object_set_parent), (gst_object_unparent),
6107         (gst_object_check_uniqueness):
6108         * gst/gstobject.h:
6109         Docs updates, clean up some headers.
6110
6111 2005-03-07  Wim Taymans  <wim@fluendo.com>
6112
6113         * check/.cvsignore:
6114         * check/Makefile.am:
6115         * check/gst-libs/.cvsignore:
6116         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
6117         * check/gst/.cvsignore:
6118         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
6119         (START_TEST), (gstbus_suite), (main):
6120         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
6121         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
6122         (gst_data_suite), (main):
6123         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
6124         (add_fold_func), (gstiterator_suite), (main):
6125         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
6126         (thread_name_object), (thread_name_object_default),
6127         (gst_object_name_compare), (gst_object_suite), (main):
6128         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
6129         (gst_pad_suite), (main):
6130         * check/gstcheck.c: (gst_check_log_message_func),
6131         (gst_check_log_critical_func), (gst_check_init):
6132         * check/gstcheck.h:
6133         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
6134         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
6135         Added checks.
6136
6137 2005-03-07  Wim Taymans  <wim@fluendo.com>
6138
6139         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
6140         (gst_list_iterator_next), (gst_list_iterator_resync),
6141         (gst_list_iterator_free), (gst_iterator_new_list),
6142         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
6143         (gst_iterator_free), (gst_iterator_push), (filter_next),
6144         (filter_resync), (filter_uninit), (filter_free),
6145         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
6146         (gst_iterator_foreach), (find_custom_fold_func),
6147         (gst_iterator_find_custom):
6148         * gst/gstiterator.h:
6149         Added missing files.
6150
6151 2005-03-07  Wim Taymans  <wim@fluendo.com>
6152
6153         * Makefile.am:
6154         * configure.ac:
6155         * docs/design/part-MT-refcounting.txt:
6156         * docs/design/part-conventions.txt:
6157         * docs/design/part-gstobject.txt:
6158         * docs/design/part-relations.txt:
6159         * examples/mixer/mixer.c: (main):
6160         * examples/thread/thread.c: (eos), (main):
6161         * gst/Makefile.am:
6162         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
6163         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
6164         (gst_spider_plug_from_srcpad):
6165         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
6166         (gst_spider_identity_change_state),
6167         (gst_spider_identity_sink_loop_type_finding):
6168         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
6169         * gst/elements/gstidentity.c: (gst_identity_init):
6170         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
6171         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
6172         * gst/elements/gsttypefindelement.c: (free_entry):
6173         * gst/gst.c:
6174         * gst/gst.h:
6175         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
6176         (gst_bin_set_clock_func), (gst_bin_auto_clock),
6177         (gst_bin_set_index), (gst_bin_set_element_sched),
6178         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
6179         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
6180         (gst_bin_iterate_elements), (iterate_child_recurse),
6181         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
6182         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
6183         (compare_interface), (gst_bin_get_by_interface),
6184         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
6185         * gst/gstbin.h:
6186         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
6187         (gst_buffer_default_free), (gst_buffer_default_copy),
6188         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
6189         (gst_buffer_create_sub):
6190         * gst/gstbuffer.h:
6191         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
6192         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
6193         (gst_caps_unref), (gst_static_caps_get),
6194         (gst_caps_remove_and_get_structure), (gst_caps_append),
6195         (gst_caps_append_structure), (gst_caps_remove_structure),
6196         (gst_caps_copy_nth), (gst_caps_set_simple),
6197         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
6198         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
6199         (gst_caps_structure_intersect_field), (gst_caps_intersect),
6200         (gst_caps_structure_subtract_field), (gst_caps_subtract),
6201         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
6202         (gst_caps_structure_figure_out_union),
6203         (gst_caps_switch_structures), (gst_caps_do_simplify),
6204         (gst_caps_replace), (gst_caps_from_string),
6205         (gst_caps_copy_conditional):
6206         * gst/gstcaps.h:
6207         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
6208         (_gst_clock_id_free), (gst_clock_id_unref),
6209         (gst_clock_id_compare_func), (gst_clock_id_wait),
6210         (gst_clock_id_wait_async), (gst_clock_class_init),
6211         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
6212         (gst_clock_get_time), (gst_clock_set_time_adjust),
6213         (gst_clock_set_property), (gst_clock_get_property):
6214         * gst/gstclock.h:
6215         * gst/gstcompat.h:
6216         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
6217         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
6218         * gst/gstdata.h:
6219         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
6220         (gst_element_requires_clock), (gst_element_provides_clock),
6221         (gst_element_set_clock), (gst_element_clock_wait),
6222         (gst_element_wait), (gst_element_set_time_delay),
6223         (gst_element_is_indexable), (gst_element_add_pad),
6224         (gst_element_add_ghost_pad), (gst_element_remove_pad),
6225         (pad_compare_name), (gst_element_get_static_pad),
6226         (gst_element_request_pad), (gst_element_get_request_pad),
6227         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
6228         (gst_element_class_get_pad_template_list),
6229         (gst_element_class_get_pad_template), (gst_element_error_func),
6230         (gst_element_get_random_pad), (gst_element_get_event_masks),
6231         (gst_element_send_event), (gst_element_seek),
6232         (gst_element_get_query_types), (gst_element_query),
6233         (gst_element_get_formats), (gst_element_convert),
6234         (gst_element_is_locked_state), (gst_element_set_locked_state),
6235         (gst_element_sync_state_with_parent), (gst_element_change_state),
6236         (gst_element_finalize), (gst_element_yield),
6237         (gst_element_interrupt), (gst_element_set_scheduler),
6238         (gst_element_get_scheduler), (gst_element_set_loop_function):
6239         * gst/gstelement.h:
6240         * gst/gstevent.h:
6241         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
6242         (gst_format_get_by_nick), (gst_format_get_details),
6243         (gst_format_iterate_definitions):
6244         * gst/gstformat.h:
6245         * gst/gstindex.c: (gst_index_gtype_resolver):
6246         * gst/gstinfo.c:
6247         * gst/gstinfo.h:
6248         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
6249         (gst_mem_chunk_free):
6250         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
6251         (gst_object_ref), (gst_object_unref), (gst_object_sink),
6252         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
6253         (gst_object_dispatch_properties_changed),
6254         (gst_object_set_name_default), (gst_object_set_name),
6255         (gst_object_get_name), (gst_object_set_name_prefix),
6256         (gst_object_get_name_prefix), (gst_object_set_parent),
6257         (gst_object_get_parent), (gst_object_unparent),
6258         (gst_object_check_uniqueness), (gst_object_save_thyself),
6259         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
6260         (gst_object_set_property), (gst_object_get_property),
6261         (gst_object_get_path_string):
6262         * gst/gstobject.h:
6263         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
6264         (gst_real_pad_init), (gst_real_pad_get_property),
6265         (gst_pad_custom_new), (gst_pad_get_direction),
6266         (gst_pad_set_active), (gst_pad_is_active),
6267         (gst_pad_set_event_function), (gst_pad_is_linked),
6268         (gst_pad_link_free), (gst_pad_link_intersect),
6269         (gst_pad_link_fixate), (gst_pad_set_caps),
6270         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
6271         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
6272         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
6273         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
6274         (gst_pad_get_caps), (gst_pad_peer_get_caps),
6275         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
6276         (gst_pad_realize), (gst_pad_get_allowed_caps),
6277         (gst_real_pad_dispose), (gst_real_pad_finalize),
6278         (gst_pad_collectv), (gst_pad_collect_valist),
6279         (gst_pad_template_dispose), (gst_pad_template_new),
6280         (gst_pad_get_internal_links):
6281         * gst/gstpad.h:
6282         * gst/gstpipeline.c: (gst_pipeline_dispose),
6283         (gst_pipeline_change_state):
6284         * gst/gstpipeline.h:
6285         * gst/gstplugin.c:
6286         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
6287         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
6288         * gst/gstpluginfeature.h:
6289         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6290         * gst/gstquery.c: (_gst_query_type_initialize),
6291         (gst_query_type_register), (gst_query_type_get_by_nick),
6292         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
6293         * gst/gstquery.h:
6294         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
6295         * gst/gstscheduler.c: (gst_scheduler_add_element),
6296         (gst_scheduler_factory_create):
6297         * gst/gststructure.c: (gst_structure_set_parent_refcount),
6298         (gst_structure_free), (gst_structure_set_name),
6299         (gst_structure_id_set_value), (gst_structure_set_value),
6300         (gst_structure_set_valist), (gst_structure_remove_field),
6301         (gst_structure_remove_fields),
6302         (gst_structure_remove_fields_valist),
6303         (gst_structure_remove_all_fields), (gst_structure_foreach),
6304         (gst_structure_map_in_place),
6305         (gst_caps_structure_fixate_field_nearest_int),
6306         (gst_caps_structure_fixate_field_nearest_double):
6307         * gst/gststructure.h:
6308         * gst/gstsystemclock.c: (gst_system_clock_class_init),
6309         (gst_system_clock_init), (gst_system_clock_dispose),
6310         (gst_system_clock_async_thread),
6311         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
6312         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
6313         * gst/gstsystemclock.h:
6314         * gst/gsttag.c: (gst_tag_list_add_value_internal),
6315         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
6316         * gst/gsttaginterface.c:
6317         * gst/gstthread.c: (gst_thread_dispose),
6318         (gst_thread_release_children_locks), (gst_thread_change_state),
6319         (gst_thread_main_loop):
6320         * gst/gsttrashstack.h:
6321         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
6322         * gst/gsttypes.h:
6323         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
6324         (gst_element_request_pad), (gst_element_get_pad_from_template),
6325         (gst_element_request_compatible_pad),
6326         (gst_element_get_compatible_pad_filtered),
6327         (gst_element_get_compatible_pad), (gst_element_state_get_name),
6328         (gst_element_link_pads_filtered), (gst_element_link_filtered),
6329         (gst_element_link_many), (gst_element_link),
6330         (gst_element_link_pads), (gst_element_unlink_pads),
6331         (gst_element_unlink_many), (gst_element_unlink),
6332         (gst_pad_can_link_filtered), (gst_pad_can_link),
6333         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
6334         (gst_object_default_error), (gst_bin_add_many),
6335         (gst_bin_remove_many), (gst_element_populate_std_props),
6336         (gst_element_class_install_std_props), (gst_buffer_merge),
6337         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
6338         (link_fold_func), (gst_pad_proxy_setcaps):
6339         * gst/gstutils.h:
6340         * gst/gstvalue.c: (gst_value_deserialize_string):
6341         * gst/parse/grammar.y:
6342         * gst/schedulers/gstbasicscheduler.c:
6343         (gst_basic_scheduler_cothreaded_chain),
6344         (gst_basic_scheduler_chain_recursive_add),
6345         (gst_basic_scheduler_pad_link):
6346         * gst/schedulers/gstoptimalscheduler.c:
6347         (get_group_schedule_function),
6348         (gst_opt_scheduler_state_transition),
6349         (gst_opt_scheduler_add_element), (element_get_reachables_func):
6350         * libs/gst/bytestream/bytestream.c:
6351         * libs/gst/dataprotocol/dataprotocol.c:
6352         (gst_dp_header_from_buffer):
6353         * po/nb.po:
6354         * po/ru.po:
6355         * tests/threadstate/threadstate2.c: (eos):
6356         * tools/gst-compprep.c: (main):
6357         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
6358         (print_pad_info), (print_children_info):
6359         * tools/gst-launch.c: (idle_func), (main):
6360         * tools/gst-md5sum.c: (idle_func), (main):
6361         * tools/gst-xmlinspect.c: (print_element_info):
6362         First THREADED backport attempt, focusing on adding locks and
6363         making sure the API is threadsafe. Needs more work. More docs
6364         follow this week.
6365
6366 2005-02-24  Andy Wingo  <wingo@pobox.com>
6367
6368         * tests/bench-complexity.scm:
6369         * tests/complexity.gnuplot: New files, good for running complexity
6370         benchmarks.
6371
6372         * tests/Makefile.am:
6373         * tests/complexity.c: New test, sets up N elements, at each level
6374         teeing into M streams per element. Eeeenteresting.
6375
6376         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
6377         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
6378         running bench-mass_elements.scm.
6379
6380         * tests/bench-mass_elements.scm: New script, runs mass_elements
6381         for various numbers of identities, outputting the results to a
6382         file. Requires guile 1.6. Just for testing.
6383
6384 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6385
6386         * gst/schedulers/fairscheduler.c:
6387           compile with debug disabled
6388
6389 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6390
6391         * configure.ac:
6392           hunting season on 0.9 is now OPEN
6393
6394 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
6395
6396         * docs/libs/tmpl/gstcontrol.sgml:
6397         * docs/libs/tmpl/gstdparam.sgml:
6398         * docs/libs/tmpl/gstdplinint.sgml:
6399         * docs/libs/tmpl/gstdpman.sgml:
6400         * docs/libs/tmpl/gstdpsmooth.sgml:
6401         * docs/libs/tmpl/gstunitconvert.sgml:
6402           more docs for the state of dparams
6403
6404 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6405
6406         * gst/gstelementfactory.c: (gst_element_factory_create):
6407         * gst/gstobject.c: (gst_object_init),
6408         (gst_object_set_name_default), (gst_object_set_name):
6409           name objects by default, not in gst_element_factory_create. Allows
6410           using elements created with g_object_new. (fixes #167283)
6411
6412 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6413
6414         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
6415           make the time that debugging functions print relative to when
6416           gst_init was called
6417
6418 2005-02-18  Tim-Philipp M??ller  <tim at centricular dot net>
6419
6420         * gst/gsttaginterface.c:
6421           Fix inline docs: tag setter vararg functions are NULL-terminated,
6422           GST_TAG_INVALID doesn't exist any more.
6423
6424 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6425
6426         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
6427         Allocate the 1 byte more memory that was forgotten!!!!!
6428         fixes memory corruption on 64bit platforms
6429
6430 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
6431
6432         * docs/pwg/building-pads.xml:
6433         * docs/pwg/intro-basics.xml:
6434           fixed a few typos, relabeled introductionary list of types
6435         * docs/random/ensonic/dparams.txt:
6436           more notes abut dparam changes
6437         * libs/gst/control/dparam.c: (gst_dparam_attach):
6438         * libs/gst/control/dparammanager.c:
6439         * libs/gst/control/dparammanager.h:
6440           - many comments and notes on dparam implementation
6441           - new dparams are were not initialized to the default value
6442             from param spec
6443
6444 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
6445
6446         submitted by: Peter Astakhov
6447
6448         * po/LINGUAS:
6449         * po/ru.po:
6450           adding Russian translation
6451
6452 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6453
6454         * configure.ac:
6455         * docs/gst/Makefile.am:
6456         * docs/libs/Makefile.am:
6457           make sure popt is added to gtk-doc flags.  Fixes #147782.
6458
6459 2005-02-09  Tim-Philipp M??ller  <tim at centricular dot net>
6460
6461         * docs/faq/using.xml:
6462           Fix typo in FAQ (artssink => artsdsink)
6463
6464 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6465
6466         * tools/gst-launch.1.in:
6467           Fix typo (#166699).
6468
6469 2005-02-08  Tim-Philipp M??ller  <tim at centricular dot net>
6470
6471         * docs/faq/using.xml:
6472           Add -v argument to fakesrc/fakesink gst-launch line,
6473           so that the promised output will actually show up.
6474
6475 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6476
6477         * gst/gstthread.c: (gst_thread_change_state):
6478           Implement state-change error handling (#166073).
6479
6480 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6481
6482         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6483           Release interrupt after handling (#166250).
6484
6485 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6486
6487         * configure.ac:
6488           back to HEAD
6489
6490 === release 0.8.9 ===
6491
6492 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6493
6494         * NEWS:
6495         * RELEASE:
6496         * configure.ac:
6497           releasing 0.8.9, "Like Eating Glass"
6498
6499 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6500
6501         submitted by: Clytie Siddall
6502
6503         * po/vi.po: Added Vietnamese translation
6504
6505 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6506
6507         patch by: Tim Philipp-M??ller
6508
6509         * configure.ac:
6510         * gst/gstpad.c:
6511           unref data when probe function returns FALSE.  Fixes #166362
6512
6513 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6514
6515         * gst/gst.c: (gst_init_get_popt_table):
6516           Fix typo (#166269).
6517
6518 2005-02-04  Andy Wingo  <wingo@pobox.com>
6519
6520         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
6521         the debugging on whether the caps are compatible.
6522
6523 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6524
6525         * docs/manual/basics-elements.xml:
6526           Fix two typos.
6527
6528 2005-02-02  Wim Taymans  <wim@fluendo.com>
6529
6530         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
6531         (schedule_chain), (get_invalid_call), (chain_invalid_call),
6532         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
6533         Remove some FIXMEs after analysing and commenting why they
6534         are not issues.
6535
6536 2005-02-02  Wim Taymans  <wim@fluendo.com>
6537
6538         * gst/schedulers/gstoptimalscheduler.c:
6539         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
6540         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
6541         (get_invalid_call), (chain_invalid_call),
6542         (get_group_schedule_function), (loop_group_schedule_function),
6543         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6544         (gst_opt_scheduler_state_transition),
6545         (gst_opt_scheduler_add_element),
6546         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
6547         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
6548         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
6549         (gst_opt_scheduler_show):
6550         Added lock to protect scheduler data structures.
6551
6552 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6553
6554         * testsuite/threads/threadi.c: (cb_data):
6555           Fix buglet in test.
6556
6557 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6558
6559         * testsuite/threads/Makefile.am:
6560         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
6561           On Wim's request, split the test in three separately-compiled
6562           tests that each test a very specific bug. Two of them still fail,
6563           will create bugs for those. threadi.c indicates why they fail.
6564
6565 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6566
6567         * gst/schedulers/gstoptimalscheduler.c:
6568         (get_group_schedule_function):
6569           Try to work with the threading mess that queue_link is.
6570
6571 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6572
6573         * gst/gstbin.c: (gst_bin_remove_func):
6574           Explicitely make an element release locks in a group when being
6575           remove from a bin.
6576         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6577           If there's no scheduler, always return immediately (similar to
6578           gst_element_interrupt).
6579
6580 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6581
6582         * gst/gstbin.c: (gst_bin_child_state_change_func):
6583           Remove a piece of code that could never be reached.
6584         * docs/gst/gstreamer-sections.txt:
6585         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
6586         (gst_pad_call_get_function):
6587         * gst/gstpad.h:
6588         * testsuite/pad/Makefile.am:
6589           Fix #150546, enable tests.
6590
6591 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6592
6593         * docs/pwg/advanced-types.xml:
6594           Fix description for buffer-frames=0.
6595         * docs/gst/tmpl/gstbin.sgml:
6596         * gst/gstbin.c: (gst_bin_child_state_change_func),
6597         (gst_bin_change_state), (gst_bin_change_state_norecurse):
6598         * gst/gstbin.h:
6599         * testsuite/threads/Makefile.am:
6600         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
6601         (cb_state), (cb_play), (main):
6602           Fix non-recursive state changes to *really* change the state
6603           of the object, and not just call parent_class->state_change.
6604           Fix a lot of lockups caused by this. Fixes #132775. Add test
6605           for the problem. Also enable test to show #142588 (fixed).
6606         * gst/gstthread.c: (gst_thread_change_state),
6607         (gst_thread_child_state_change):
6608           Don't exit the thread if we go to NULL and are inside thread
6609           context. Instead, return control to the main thread context
6610           and exit from there.
6611         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
6612           Don't unset virtual functions, since those may still be used.
6613           That's not necessarily correct, but suffices for now.
6614         * configure.ac:
6615         * testsuite/Makefile.am:
6616         * testsuite/pad/Makefile.am:
6617         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
6618         (gst_test_sink_base_init), (gst_test_sink_chain),
6619         (gst_test_sink_init), (main):
6620         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
6621         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
6622         (main):
6623         * testsuite/pad/link.c: (gst_test_element_class_init),
6624         (gst_test_element_base_init), (gst_test_src_get),
6625         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
6626         (gst_test_filter_loop), (gst_test_filter_init),
6627         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
6628         (cb_error), (main):
6629           Add tests to show #150546. Pass, but should fail (currently
6630           disabled from the testsuite).
6631         * gst/gstscheduler.c: (gst_scheduler_dispose):
6632           Dereference child schedulers on dispose (#94464).
6633         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
6634           Fix typo.
6635         * testsuite/threads/thread.c: (main):
6636           Add more debug.
6637
6638 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6639
6640         * gst/gstpad.c: (gst_pad_push):
6641           Oops, revert previous commit, broke testsuite...
6642
6643 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6644
6645         * gst/gstpad.c: (gst_pad_push):
6646           Add check that the pad on which the push is performed is not a
6647           get-based pad (#150546).
6648
6649 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6650
6651         * gst/elements/gsttypefindelement.c:
6652         (gst_type_find_element_handle_event):
6653           Fix buffer pushing if stream EOSes during typefinding.
6654
6655 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
6656
6657         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6658
6659         * gst/gstvalue.c: (gst_string_wrap):
6660           Allow NULL-strings as argument (#165365).
6661
6662 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
6663
6664         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6665
6666         * gst/schedulers/faircothreads.c:
6667         (gst_fair_scheduler_cothread_queue_show):
6668           Fix build without debug enabled.
6669
6670 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
6671
6672         * docs/gst/gstreamer-sections.txt:
6673         * docs/libs/gstreamer-libs-docs.sgml:
6674         * docs/libs/gstreamer-libs-sections.txt:
6675         * docs/libs/tmpl/gstcontrol.sgml:
6676         * docs/libs/tmpl/gstdparam.sgml:
6677         * docs/libs/tmpl/gstdplinint.sgml:
6678         * docs/libs/tmpl/gstdpman.sgml:
6679         * docs/libs/tmpl/gstdpsmooth.sgml:
6680         * docs/libs/tmpl/gstputbits.sgml:
6681         * docs/libs/tmpl/gstunitconvert.sgml:
6682         * libs/gst/control/dparam.c:
6683         * libs/gst/control/dparam.h:
6684         * libs/gst/control/dparammanager.c:
6685         (gst_dpman_add_required_dparam_callback),
6686         (gst_dpman_add_required_dparam_direct),
6687         (gst_dpman_add_required_dparam_array),
6688         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
6689         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
6690         (gst_dpman_get_manager)
6691           restructured DParam docs
6692
6693 2005-01-25  Tim-Philipp M??ller  <tim at centricular dot net>
6694
6695         * gst-element-check.m4:
6696           Only check for gst-inspect if we haven't already
6697           found it in previous element check runs
6698
6699 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
6700
6701         * docs/gst/Makefile.am:
6702         * docs/libs/Makefile.am:
6703           fixed install rules to treat style.css as optional
6704
6705 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
6706
6707         * docs/gst/Makefile.am:
6708         * docs/libs/Makefile.am:
6709           install style.css along with docs
6710         * docs/gst/tmpl/gstbin.sgml:
6711         * docs/gst/tmpl/gstclock.sgml:
6712         * docs/gst/tmpl/gstdata.sgml:
6713         * docs/gst/tmpl/gstelement.sgml:
6714         * gst/gstbin.h:
6715         * gst/gstelement.c: (gst_element_class_init):
6716         * gst/gstelement.h:
6717           fixing incomplete docs
6718
6719 2005-01-24  Tim-Philipp M??ller  <tim at centricular dot net>
6720
6721         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6722           Don't unref seek event twice when fflush() fails
6723           
6724 2005-01-22  David Schleef  <ds@schleef.org>
6725
6726         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
6727
6728 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
6729
6730         * docs/gst/Makefile.am:
6731         * docs/libs/Makefile.am:
6732           added params for deprecation guards
6733         * gst/gst.c:
6734         * gst/gst.h:
6735         * gst/gsterror.c: (_gst_resource_errors_init),
6736         (_gst_stream_errors_init):
6737         * gst/gsterror.h:
6738           documented some more enums
6739
6740 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
6741         * gst/autoplug/gstspideridentity.c:
6742         Cosmetic fix - spider_find_peek should be static
6743         * gst/parse/parse.l:
6744         Applying fix for #164261
6745
6746 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
6747
6748         * docs/gst/gstreamer-sections.txt:
6749         * docs/gst/tmpl/gstplugin.sgml:
6750         * docs/libs/gstreamer-libs-sections.txt:
6751         * docs/libs/tmpl/gstcontrol.sgml:
6752         * gst/gstbuffer.h:
6753         * gst/gsttag.h:
6754         * gst/gstvalue.c:
6755           added docs for the TAG defines
6756
6757 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6758
6759         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
6760           Only unref entry if there is an entry.
6761
6762 2005-01-17  Wim Taymans  <wim@fluendo.com>
6763
6764         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6765         (remove_from_group), (schedule_group), (normalize_group),
6766         (gst_opt_scheduler_iterate):
6767         Also ref/unref decoupled elements before iterating the
6768         group since they are not added to the list of elements.
6769
6770 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6771
6772         * docs/manual/highlevel-components.xml:
6773           Add subtitle/streamselection as new features to playbin.
6774
6775 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6776
6777         * docs/manual/manual.xml:
6778           Re-enable dataaccess docs (oops).
6779
6780 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6781
6782         * docs/pwg/advanced-types.xml:
6783         * docs/random/mimetypes:
6784           Add documentation on libsndfile types (#163309), by Steve Baker
6785           <steve@stevebaker.org>.
6786         * gst/gstelement.c: (gst_element_release_request_pad):
6787           If an element has no explicit function, just remove the pad.
6788
6789 2005-01-17  Luca Ognibene  <luogni@tin.it>
6790
6791         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6792
6793         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
6794           Fix memleak (#163801).
6795
6796 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6797
6798         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
6799           I think this is actually more correct...
6800
6801 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6802
6803         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6804           Another workaround for memory access while destroyed in callback.
6805           Please, someone with refcount knowledge, have a look at this.
6806
6807 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6808
6809         * docs/faq/faq.xml:
6810         * docs/faq/legal.xml:
6811           move the legal Q&A here
6812
6813 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6814
6815         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
6816         (gst_tee_request_new_pad):
6817           Fix negotiation.
6818
6819 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6820
6821         * docs/random/omega/caps2:
6822         * testsuite/caps/caps_strings:
6823           replace framerate aproximations by their real value
6824           (24000/1001, 30000/1001, 60000/1001)
6825           Partially fixes bug #164049
6826
6827 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6828
6829         * docs/gst/Makefile.am:
6830           don't fail on the stupid GstPoptOption
6831
6832 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6833
6834         * gst/gstpad.h:
6835         * gst/gstprobe.c:
6836           allow probes to work on ghost pads by realizing the pad
6837           probe debugging
6838
6839 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6840
6841         * docs/gst/gstreamer-sections.txt:
6842         * docs/gst/tmpl/gstpad.sgml:
6843         * gst/gstpad.c: (gst_pad_set_active_recursive):
6844         * gst/gstpad.h:
6845           Add gst_pad_set_active_recursive().
6846
6847 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6848
6849         * docs/random/release:
6850           updates
6851         * gst/gst_private.h:
6852         * gst/gstinfo.c:
6853         * gst/gstobject.c:
6854           move deep_notify logging to a new category
6855         * gst/gstprobe.c:
6856         * gst/gstprobe.h:
6857           add stuff so bindings can wrap probes
6858
6859 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6860
6861         * gst/gstplugin.c: (gst_plugin_load):
6862           Fix plugin loading if plugin/lib was already loaded. Fixes
6863           #163383
6864
6865 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
6866
6867         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6868
6869         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
6870           Protect plugin loading by a mutex so it's threadsafe. Fixes
6871           #163234.
6872
6873 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6874
6875         * gst/gstevent.c: (_gst_event_copy):
6876           Reference source object when copying events, since it'll be
6877           dereferenced on event dereferencing as well.
6878
6879 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6880
6881         * docs/gst/gstreamer-sections.txt:
6882         * docs/gst/tmpl/gstevent.sgml:
6883         * gst/gstevent.c: (gst_event_new_filler_stamped),
6884         (gst_event_filler_get_duration):
6885         * gst/gstevent.h:
6886           Add two new functions for filler events (which are used to
6887           synchronize streams if one of them is not having any data
6888           for a while) without interrupting the actual data-stream.
6889           Basically a no-op.
6890         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6891         (gst_queue_link_sink), (gst_queue_link_src),
6892         (gst_queue_change_state):
6893           Allow for renegotiation while filled. Required for stream
6894           switching while playing.
6895
6896 2005-01-08  Benjamin Otte  <otte@gnome.org>
6897
6898         * gst/gstelement.c: (gst_element_link_many):
6899           fix up g_return_if_fail's
6900         * po/LINGUAS:
6901         * po/de.po:
6902           add German translation, that was somehow not included
6903
6904 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6905
6906         * docs/random/mimetypes:
6907           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
6908           do not add them to riff-lib as they are not common
6909
6910 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6911
6912         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6913           Check for existence of probe after performing the probe before
6914           re-accessing it to prevent segfaults caused by removal of the
6915           probe in the callback.
6916
6917 2005-01-05  David Schleef  <ds@schleef.org>
6918
6919         * testsuite/registry/Makefile.am:
6920         * testsuite/registry/gst-print-formats.c:
6921         (print_pad_templates_info), (print_element_list),
6922         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
6923         (g_list_uniqify), (get_pad_templates_info),
6924         (get_element_mime_list), (print_mime_list), (main): A little
6925         program that looks through the registry to find elements of
6926         a given type.  Not particularly interesting as a test, except
6927         that there's no other test covering the same area.
6928
6929 2005-01-05  David Schleef  <ds@schleef.org>
6930
6931         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
6932         (fault_handler_sigaction), (fault_spin),
6933         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
6934         in signal.h-type signal handlers by not calling forbidden functions,
6935         including gst_element_set_state().
6936
6937 2005-01-05  David Schleef  <ds@schleef.org>
6938
6939         * gst/gstvalue.h: Mark _gst_reserved[] as private
6940
6941 2005-01-05  David Schleef  <ds@schleef.org>
6942
6943         * gst/gstvalue.c: Fix doc build problem.
6944
6945 2005-01-05  David Schleef  <ds@schleef.org>
6946
6947         * gst/gstvalue.c: Add some documentation
6948
6949 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
6950
6951         * docs/README:
6952           another shell oneliner for empty return value docs
6953         * gst/gstcaps.c:
6954         * gst/gstvalue.c:
6955         * libs/gst/control/dparam.c:
6956           more doc fixes (parameters and return values)
6957
6958 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
6959
6960         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6961
6962         * gst/gstregistry.h:
6963         * gst/registries/gstxmlregistry.c:
6964           Fix macro's for Mingw (fixes #162276).
6965
6966 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
6967
6968         * docs/README:
6969           quick shell oneliner to find undocumented members
6970         * docs/gst/tmpl/gstplugin.sgml:
6971         * docs/gst/tmpl/gstscheduler.sgml:
6972         * docs/gst/tmpl/gstthread.sgml:
6973           more enumtypes cleanup
6974         * gst/gsterror.h:
6975           activated documentation comments, now someone needs to document
6976           the enums :(
6977
6978 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6979
6980         * docs/manual/manual.xml:
6981           Add dataaccess part (doh!).
6982
6983 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6984
6985         * docs/manual/advanced-autoplugging.xml:
6986           Fix typo (intiate -> initiate).
6987
6988 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6989
6990         * docs/random/bbb/streamselection:
6991           Add some notes on how to handle multi-subtitle/-audio streams.
6992
6993 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
6994
6995         * docs/gst/gstreamer-docs.sgml:
6996         * docs/gst/gstreamer-sections.txt:
6997         * docs/gst/tmpl/gstenumtypes.sgml:
6998         * docs/gst/tmpl/gsterror.sgml:
6999         * docs/gst/tmpl/gstevent.sgml:
7000         * docs/gst/tmpl/gstpad.sgml:
7001         * docs/gst/tmpl/gstpadtemplate.sgml:
7002         * docs/gst/tmpl/gstthread.sgml:
7003           removed gstenumtypes section from docs and put all the enums into
7004           their sections
7005
7006 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
7007
7008         * gst/gstplugin.c:
7009           document gst_library_load a bit more (riff special case + return
7010           value if already loaded)
7011         * testsuite/bytestream/filepadsink.c:
7012           plugin name is 'gstbytestream', not 'bytestream'
7013
7014 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7015
7016         * docs/random/bbb/subtitles:
7017           Add some first mind rumblings on proper subtitle support.
7018
7019 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7020
7021         * po/ca.po:
7022         * po/sv.po:
7023           updated translations
7024
7025 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7026
7027         * docs/manual/advanced-dataaccess.xml:
7028           Add section on how to use fakesrc/fakesink/identity in your
7029           application, plus section on how to embed plugins. Also mention
7030           probes.
7031         * docs/manual/appendix-checklist.xml:
7032         * docs/manual/appendix-debugging.xml:
7033         * docs/manual/appendix-gnome.xml:
7034         * docs/manual/appendix-integration.xml:
7035           Debug -> checklist, GNOME -> integration, add sections on Linux,
7036           KDE integration and add other things useful for application
7037           development.
7038         * docs/manual/manual.xml:
7039           Remove some fixmes, update some file pointers.
7040         * docs/pwg/appendix-checklist.xml:
7041           Fix typo.
7042         * docs/pwg/building-boiler.xml:
7043           Remove ugly header and add commented fixme.
7044         * docs/pwg/pwg.xml:
7045           Add fixme.
7046         * examples/manual/Makefile.am:
7047           Add example for added docs.
7048
7049 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
7050
7051         * configure.ac:
7052           back to HEAD
7053
7054 === release 0.8.8 ===
7055
7056 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
7057
7058         * NEWS:
7059         * RELEASE:
7060         * configure.ac:
7061           Releasing 0.8.8, "I'll Take Care Of You"
7062
7063 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7064
7065         * configure.ac:
7066           second prerelease
7067
7068 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7069
7070         patch by: Wim Taymans
7071
7072         * gst/gstbin.c:
7073           Fix for #159852 - make iterate emission threadsafe
7074
7075 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7076
7077         * docs/faq/cvs.xml:
7078           notes about new fdo account request
7079
7080 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
7081
7082         * docs/gst/gstreamer-docs.sgml:
7083         * docs/gst/tmpl/gstenumtypes.sgml:
7084         * docs/gst/tmpl/gstplugin.sgml:
7085         * docs/libs/gstreamer-libs-docs.sgml:
7086           Added missing short docs. Added ids for navigation.
7087
7088 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7089
7090         * docs/manual/advanced-autoplugging.xml:
7091         * docs/manual/advanced-schedulers.xml:
7092         * docs/manual/advanced-threads.xml:
7093           Rewrites. Remove cothreads, go a bit into opt specifically,
7094           document threads and their gotchas, and do some technical stuff
7095           on autoplugging plus add some working examples. Fixes #157395.
7096         * examples/manual/Makefile.am:
7097           Add typefind/autoplugger example (one that actually works).
7098           Remove queue example since it's a duplicate of the thread one.
7099
7100 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7101
7102         * gst/gstvalue.c: (gst_value_deserialize_string):
7103           use deprecated g_value_set_string_take_ownership to keep compatible
7104           with glib 2.2
7105
7106 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7107
7108         * gst/gstvalue.c: (gst_value_deserialize_string):
7109           revert last patch, only dom a g_utf8_validate now before accepting
7110           the string - caps parsing strips " from strings so we can't rely on
7111           them
7112         * testsuite/caps/value_serialize.c: (test_string_deserialization):
7113           disable a test that tested the above and comment it
7114
7115 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
7116
7117         Patch reviewed by David Schleef  <ds@schleef.org>
7118
7119         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
7120         bug #153882)
7121         * win32/gstenumtypes.h: same
7122
7123 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7124
7125         * gst/gstpad.c: (gst_pad_query):
7126           Do query on realized pad, similar to how convert/send_event handle
7127           this. Also makes sense, since this pad belongs to the function to
7128           which this query will be sent. Fixes #158163.
7129
7130 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
7131
7132         * docs/manual/appendix-programs.xml: fix pipeline to actually work
7133
7134 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
7135
7136         * docs/faq/general.xml: fix pipeline to actually work
7137
7138 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7139
7140         * gst/gstvalue.c: (gst_value_deserialize_string):
7141           check that a simple string that gets deserialized does not contain
7142           invalid characters
7143         * testsuite/caps/value_serialize.c: (test_string_deserialization):
7144           remove a test that tested a wring behaviour
7145
7146 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
7147
7148         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7149
7150         * docs/manual/intro-motivation.xml:
7151           Fix typos.
7152
7153 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
7154
7155         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7156
7157         * docs/gst/tmpl/gstprobe.sgml:
7158           Fix documentation of probe callback - it is supposed to return
7159           FALSE, not TRUE, to remove data from the stream (#159087).
7160
7161 2004-12-16  Daniel Gazard  <dany42@free.fr>
7162
7163         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7164
7165         * gst/gstelementfactory.c: (gst_element_factory_create):
7166           Fix compile failure if compiling without libxml2 support (#149936).
7167
7168 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7169
7170         * docs/manual/advanced-autoplugging.xml:
7171         * docs/manual/highlevel-components.xml:
7172           Move spider from autoplugging to components. Autoplugging is for
7173           internals, not for solutions. ;-).
7174
7175 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7176
7177         * docs/random/ds/0.9-suggested-changes:
7178           Make note on device/location/uri property names.
7179
7180 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7181
7182         * docs/manual/advanced-autoplugging.xml:
7183         * docs/manual/advanced-clocks.xml:
7184         * docs/manual/advanced-interfaces.xml:
7185         * docs/manual/advanced-metadata.xml:
7186         * docs/manual/advanced-position.xml:
7187         * docs/manual/advanced-schedulers.xml:
7188         * docs/manual/advanced-threads.xml:
7189         * docs/manual/appendix-gnome.xml:
7190         * docs/manual/appendix-programs.xml:
7191         * docs/manual/appendix-quotes.xml:
7192         * docs/manual/autoplugging.xml:
7193         * docs/manual/basics-bins.xml:
7194         * docs/manual/basics-data.xml:
7195         * docs/manual/basics-elements.xml:
7196         * docs/manual/basics-helloworld.xml:
7197         * docs/manual/basics-init.xml:
7198         * docs/manual/basics-pads.xml:
7199         * docs/manual/basics-plugins.xml:
7200         * docs/manual/bins-api.xml:
7201         * docs/manual/bins.xml:
7202         * docs/manual/buffers-api.xml:
7203         * docs/manual/buffers.xml:
7204         * docs/manual/clocks.xml:
7205         * docs/manual/components.xml:
7206         * docs/manual/cothreads.xml:
7207         * docs/manual/debugging.xml:
7208         * docs/manual/dparams-app.xml:
7209         * docs/manual/dynamic.xml:
7210         * docs/manual/elements-api.xml:
7211         * docs/manual/elements.xml:
7212         * docs/manual/factories.xml:
7213         * docs/manual/gnome.xml:
7214         * docs/manual/goals.xml:
7215         * docs/manual/helloworld.xml:
7216         * docs/manual/helloworld2.xml:
7217         * docs/manual/highlevel-components.xml:
7218         * docs/manual/highlevel-xml.xml:
7219         * docs/manual/init-api.xml:
7220         * docs/manual/intro-basics.xml:
7221         * docs/manual/intro-motivation.xml:
7222         * docs/manual/intro-preface.xml:
7223         * docs/manual/intro.xml:
7224         * docs/manual/links-api.xml:
7225         * docs/manual/links.xml:
7226         * docs/manual/manual.xml:
7227         * docs/manual/motivation.xml:
7228         * docs/manual/pads-api.xml:
7229         * docs/manual/pads.xml:
7230         * docs/manual/plugins-api.xml:
7231         * docs/manual/plugins.xml:
7232         * docs/manual/programs.xml:
7233         * docs/manual/queues.xml:
7234         * docs/manual/quotes.xml:
7235         * docs/manual/schedulers.xml:
7236         * docs/manual/states-api.xml:
7237         * docs/manual/states.xml:
7238         * docs/manual/threads.xml:
7239         * docs/manual/typedetection.xml:
7240         * docs/manual/win32.xml:
7241         * docs/manual/xml.xml:
7242           Try 2. This time, include a short preface as a "general
7243           introduction", also add code blocks around all code samples
7244           so they get compiled. We still need a way to tell readers
7245           the filename of the code sample. In some cases, don't show
7246           all code in the documentation, but do include it in the generated
7247           code. This allows for focussing on specific bits in the docs,
7248           while still having a full test application available.
7249         * examples/manual/Makefile.am:
7250           Fix up examples for new ADM. Add several of the new examples that
7251           were either added or were missing from the build system.
7252         * examples/manual/extract.pl:
7253           Allow nameless blocks.
7254
7255 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7256
7257         * docs/manual/elements-api.xml:
7258         * docs/manual/helloworld.xml:
7259         * examples/manual/extract.pl:
7260           fix last example.  Add example of adding code blocks that are not
7261           shown in docbook output.
7262
7263 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7264
7265         * docs/manual/dynamic.xml:
7266         * docs/manual/elements-api.xml:
7267         * docs/manual/gnome.xml:
7268         * docs/manual/helloworld2.xml:
7269         * docs/manual/init-api.xml:
7270         * docs/manual/queues.xml:
7271         * docs/manual/threads.xml:
7272         * docs/manual/xml.xml:
7273         * examples/manual/extract.pl:
7274           Make it possible to extract example code from separate blocks.
7275           Should make Ronald happy.
7276
7277 2004-12-15  Wim Taymans  <wim@fluendo.com>
7278
7279         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7280         (remove_from_group), (group_elements_set_visited),
7281         (normalize_group), (gst_opt_scheduler_iterate):
7282         Fix bug where a flag was not updated on a decoupled entry point 
7283         because we were just checking the group element list and decoupled
7284         elements are not in that list..
7285
7286 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7287
7288         * docs/manual/advanced-autoplugging.xml:
7289         * docs/manual/advanced-clocks.xml:
7290         * docs/manual/advanced-dparams.xml:
7291         * docs/manual/advanced-interfaces.xml:
7292         * docs/manual/advanced-metadata.xml:
7293         * docs/manual/advanced-position.xml:
7294         * docs/manual/advanced-schedulers.xml:
7295         * docs/manual/advanced-threads.xml:
7296         * docs/manual/appendix-debugging.xml:
7297         * docs/manual/appendix-gnome.xml:
7298         * docs/manual/appendix-programs.xml:
7299         * docs/manual/appendix-quotes.xml:
7300         * docs/manual/appendix-win32.xml:
7301         * docs/manual/autoplugging.xml:
7302         * docs/manual/basics-bins.xml:
7303         * docs/manual/basics-data.xml:
7304         * docs/manual/basics-elements.xml:
7305         * docs/manual/basics-helloworld.xml:
7306         * docs/manual/basics-init.xml:
7307         * docs/manual/basics-pads.xml:
7308         * docs/manual/basics-plugins.xml:
7309         * docs/manual/bins-api.xml:
7310         * docs/manual/bins.xml:
7311         * docs/manual/buffers-api.xml:
7312         * docs/manual/buffers.xml:
7313         * docs/manual/clocks.xml:
7314         * docs/manual/components.xml:
7315         * docs/manual/cothreads.xml:
7316         * docs/manual/debugging.xml:
7317         * docs/manual/dparams-app.xml:
7318         * docs/manual/dynamic.xml:
7319         * docs/manual/elements-api.xml:
7320         * docs/manual/elements.xml:
7321         * docs/manual/factories.xml:
7322         * docs/manual/gnome.xml:
7323         * docs/manual/goals.xml:
7324         * docs/manual/helloworld.xml:
7325         * docs/manual/helloworld2.xml:
7326         * docs/manual/highlevel-components.xml:
7327         * docs/manual/highlevel-xml.xml:
7328         * docs/manual/init-api.xml:
7329         * docs/manual/intro-motivation.xml:
7330         * docs/manual/intro-preface.xml:
7331         * docs/manual/intro.xml:
7332         * docs/manual/links-api.xml:
7333         * docs/manual/links.xml:
7334         * docs/manual/manual.xml:
7335         * docs/manual/motivation.xml:
7336         * docs/manual/pads-api.xml:
7337         * docs/manual/pads.xml:
7338         * docs/manual/plugins-api.xml:
7339         * docs/manual/plugins.xml:
7340         * docs/manual/programs.xml:
7341         * docs/manual/queues.xml:
7342         * docs/manual/quotes.xml:
7343         * docs/manual/schedulers.xml:
7344         * docs/manual/states-api.xml:
7345         * docs/manual/states.xml:
7346         * docs/manual/threads.xml:
7347         * docs/manual/typedetection.xml:
7348         * docs/manual/win32.xml:
7349         * docs/manual/xml.xml:
7350           First try at rewriting the ADM. Needs lotsamore work, but some
7351           parts might already be somewhat useful.
7352         * docs/pwg/advanced-interfaces.xml:
7353           Remove properties interface, it never actually existed (except for
7354           on my HD...).
7355
7356 2004-12-13  David Schleef  <ds@schleef.org>
7357
7358         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
7359         be NULL (bug #160220).
7360
7361 2004-12-13  David Schleef  <ds@schleef.org>
7362
7363         * configure.ac: remove all mmx stuff, because it's not used.
7364         * docs/random/ds/0.9-suggested-changes: additional notes
7365         * include/Makefile.am: we don't use these anymore
7366         * include/mmx.h: remove
7367         * include/sse.h: remove
7368
7369 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
7370
7371         * docs/random/mimetypes:
7372           Add FOURCC code for h264 codec (VSSH)
7373           Add alternate FOURCC codes for h263 related codecs
7374
7375 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
7376
7377         * docs/manual/programs.xml:
7378           Added more gst-launch examples.
7379
7380 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7381
7382         * gst/gstqueue.c: (gst_queue_handle_src_query):
7383           Check for availability again.
7384
7385 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7386
7387         * gst/gstcaps.c: (gst_caps_compare_structures):
7388           Simple caps go first. This has the nice side-effect of fixing an
7389           obscure warning.
7390
7391 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7392
7393         * gst/gstversion.h.in:
7394           Protect header.
7395
7396 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7397
7398         * gst/schedulers/gstoptimalscheduler.c:
7399         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
7400         (gst_opt_scheduler_get_wrapper):
7401           When we're recursing into a chain run, only run the directly
7402           related group, not all queued ones. This will fix a possible
7403           deadlock in chains with more than two groups.
7404
7405 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7406
7407         * autogen.sh:
7408           remove patch if autopoint fails
7409
7410 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7411
7412         * docs/gst/gstreamer-sections.txt:
7413           Document Thomas' addition, fix build, make Luis the sheriff happy.
7414
7415 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7416
7417         * gst/gstplugin.c:
7418         * gst/gstplugin.h:
7419           add accessor for version field
7420
7421 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7422
7423         submitted by: Luca Ferretti <elle.uca@infinito.it>
7424
7425         * po/LINGUAS:
7426         * po/it.po:
7427           New tranlation added: Italian
7428
7429 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7430
7431         * gst/gstpad.c: (gst_pad_is_negotiated),
7432         (gst_pad_get_negotiated_caps):
7433           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
7434           it doesn't actually check the contents), so be sure to hand it
7435           a RealPad else we'll crash.
7436
7437 2004-12-03  Wim Taymans  <wim@fluendo.com>
7438
7439         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
7440         (gst_queue_link), (gst_queue_handle_src_query):
7441         Reverted to 1.110 until this makes the testsuite and various
7442         apps work.
7443
7444 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
7445
7446         * docs/upload.mak: fix included CVS conflict strings
7447
7448 2004-12-01  William Jon McCann  <mccann@jhu.edu>
7449
7450         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7451
7452         * gst/gstelement.c: (gst_element_error_full):
7453           Use g_error_new_literal because error text may have
7454           percentage signs in it. Fixes #160019.
7455
7456 2004-12-01  Benjamin Otte  <otte@gnome.org>
7457
7458         * gst/elements/gstbufferstore.c:
7459         (gst_buffer_store_add_buffer_func):
7460           don't try to make subbuffers bigger than they can be. (fixes
7461           #159970)
7462
7463 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7464
7465         * docs/gst/gstreamer-sections.txt:
7466         * docs/gst/tmpl/gstvalue.sgml:
7467           Add new function to docs to fix build.
7468
7469 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7470
7471         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7472         * gst/gstpad.c: (_gst_pad_default_fixate_value),
7473         (_gst_pad_default_fixate_foreach):
7474         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
7475         * gst/gstvalue.h:
7476           Deprecate _type_is_fixed, use _value_is_fixed instead, since
7477           in some cases (arrays), the fixedness depends on the content.
7478         * gst/gstqueue.c: (gst_queue_handle_src_query):
7479           Check for availability before doing something.
7480
7481 2004-11-29  Wim Taymans  <wim@fluendo.com>
7482
7483         * testsuite/threads/Makefile.am:
7484         * testsuite/threads/signals.c: (gst_test_get_type),
7485         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
7486         (gst_test_set_property), (gst_test_get_property),
7487         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
7488         (gst_test_do_prop), (run_thread), (main):
7489         Added a bunch of testcases that show threadsafety bugs in glib.
7490
7491 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
7492
7493         * docs/manual/programs.xml:
7494           Added a first batch of gst-launch examples, as provided by Ronald
7495           and others from the devel-mlist
7496
7497 2004-11-28  Benjamin Otte  <otte@gnome.org>
7498
7499         * gst/gstelement.c: (gst_element_negotiate_pads):
7500           simplify
7501         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
7502         (gst_value_serialize_string), (gst_value_deserialize_string):
7503           add unwrapping of previously wrapped strings. Fix bug in wrapping
7504           while at it.
7505         * testsuite/caps/value_serialize.c: (test1),
7506         (test_string_serialization), (test_string_deserialization), (main):
7507           add tests for string (de)serialization
7508
7509 2004-11-26  Wim Taymans  <wim@fluendo.com>
7510
7511         * testsuite/threads/159566.c: (object_deep_notify), (main):
7512         * testsuite/threads/Makefile.am:
7513         Added testsuite to show bug #159566
7514
7515 2004-11-25  Wim Taymans  <wim@fluendo.com>
7516
7517         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
7518         (gst_thread_child_state_change), (gst_thread_main_loop):
7519         Ref the thread object in the GThread mainloop. Break out of the
7520         thread mainloop if it holds the last ref. This properly exits
7521         the threads when disposing the thread from its own context. It
7522         also avoids possible deadlocks in the dispose function.
7523
7524 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
7525
7526         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
7527         it is necessary to wait.
7528
7529 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7530
7531         * docs/pwg/building-boiler.xml:
7532           Make description somewhat clearer.
7533
7534 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7535
7536         * docs/upload.mak:
7537           Apparently docs changed location on FDO's server.
7538
7539 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7540
7541         * docs/pwg/appendix-checklist.xml:
7542           Add some random notes on things to check when writing an element.
7543           This list can be extended as people see fit.
7544
7545 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
7546
7547         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
7548         (gst_queue_link_src): Allow for renegotiating the caps of the sink
7549         pad. The queue will now wait until it is empty and forward the new
7550         caps to the source.
7551         * gst/gstbin.c (gst_bin_set_element_sched)
7552         (gst_bin_unset_element_sched): Make sure that all elements and
7553         links are registered and unregistered with the scheduler exactly
7554         once. This elaborates on a fix by Benjamin Otte, but
7555         guarantees that decoupled elements are also registered.
7556
7557 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7558
7559         * docs/manual/quotes.xml:
7560           add a quote
7561         * configure.ac:
7562         * gst/gst.c:
7563         * gst/gstinfo.c:
7564           add LIBDIR and move init message higher up so it's at the start
7565
7566 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
7567
7568         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
7569         * gstreamer.spec.in: add fair
7570
7571 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7572
7573         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7574         * gst/elements/gstidentity.c: (gst_identity_class_init):
7575           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
7576           <teuf@gnome.org> (#157263).
7577         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
7578         (gst_type_find_handle_src_query):
7579           Subtract size of internally stored data from position queries.
7580
7581 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
7582
7583         * gst/schedulers/fairscheduler.c:
7584         * gst/schedulers/faircothreads.c:
7585         * gst/schedulers/faircothreads.h:
7586         New cothread based scheduler: Fair scheduler.
7587         * gst/schedulers/gthread-cothreads.h: 
7588         Add the standard #if around the whole file.
7589         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
7590         compilation of the functions defined in this file. This is
7591         necessary to be able to use this file as a normal header.
7592         * gst/schedulers/Makefile.am: Add compiling support for fair
7593         scheduler.
7594         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
7595         scheduler cothreads layer from documentation generation.
7596
7597 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7598
7599         * gst/autoplug/gstspideridentity.c:
7600         (gst_spider_identity_sink_loop_type_finding):
7601           Don't crash if that function is not implemented.
7602
7603 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7604
7605         * docs/pwg/advanced-types.xml:
7606           Another typo.
7607
7608 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7609
7610         * docs/pwg/intro-preface.xml:
7611           Hm, ok, so the brackets weren't really useful...
7612         * docs/pwg/other-ntoone.xml:
7613           Fix embarassing typo.
7614
7615 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7616
7617         * docs/pwg/intro-preface.xml:
7618           Rewrite preface.
7619
7620 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7621
7622         * docs/pwg/advanced-scheduling.xml:
7623         * docs/pwg/advanced-tagging.xml:
7624         * docs/pwg/advanced-types.xml:
7625         * docs/pwg/building-boiler.xml:
7626         * docs/pwg/building-chainfn.xml:
7627         * docs/pwg/building-signals.xml:
7628         * docs/pwg/building-state.xml:
7629         * docs/pwg/building-testapp.xml:
7630         * docs/pwg/intro-basics.xml:
7631         * docs/pwg/other-manager.xml:
7632         * docs/pwg/other-source.xml:
7633           Typo fixes.
7634         * docs/pwg/other-manager.xml:
7635           Add some first content. No example code yet.
7636         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7637           Remove double newlines.
7638
7639 2004-11-04  Wim Taymans  <wim@fluendo.com>
7640
7641         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7642         (remove_from_group), (normalize_group), (group_migrate_connected),
7643         (gst_opt_scheduler_iterate):
7644         * testsuite/schedulers/.cvsignore:
7645         * testsuite/schedulers/Makefile.am:
7646         * testsuite/schedulers/queue_link.c: (main):
7647         Added testcase for scheduler segfault.
7648         Fix scheduler segfault when removing a decoupled
7649         entry point as the last element from a group.
7650
7651 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7652
7653         * gst/gstmarshal.list: add missing marshaller, fixes build
7654
7655 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7656
7657         * docs/random/signal: added notes about using BOXED for GstBuffer
7658         signal marshallers, not POINTER
7659
7660 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7661
7662         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7663         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
7664         POINTER=>BOXED changes to marshal GstBuffers
7665
7666 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7667
7668         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
7669         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
7670
7671 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
7672
7673         * docs/gst/gstreamer-sections.txt:
7674         * docs/gst/tmpl/gstcaps.sgml:
7675         * docs/gst/tmpl/gsterror.sgml:
7676         * docs/gst/tmpl/gstinfo.sgml:
7677         * docs/gst/tmpl/gstmacros.sgml:
7678         * docs/gst/tmpl/gstutils.sgml:
7679         * docs/random/ensonic/interfaces.txt:
7680         * gst/gstinfo.h:
7681           added some more docs, removed two obsolete defines
7682
7683 2004-11-02  Kjartan Maraas <as at gnome.org>
7684
7685         reviewed by: Wim Taymans, Ronald Bultje.
7686
7687         * gst/cothreads.c: (cothread_create):
7688         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
7689         (gst_bin_child_state_change_func):
7690         * gst/gstbuffer.c: (gst_buffer_span):
7691         * gst/gstelement.c: (gst_element_get_index),
7692         (gst_element_get_event_masks), (gst_element_get_query_types),
7693         (gst_element_get_formats):
7694         * gst/gsterror.c: (_gst_core_errors_init),
7695         (_gst_library_errors_init), (_gst_resource_errors_init),
7696         (_gst_stream_errors_init):
7697         * gst/gstobject.c: (gst_object_default_deep_notify):
7698         * gst/gstpad.c: (gst_pad_get_event_masks),
7699         (gst_pad_get_internal_links_default):
7700         * gst/gstplugin.c: (gst_plugin_register_func),
7701         (gst_plugin_get_module):
7702         * gst/gststructure.c: (gst_structure_get_string),
7703         (gst_structure_get_abbrs), (gst_structure_from_abbr),
7704         (gst_structure_to_abbr):
7705         * gst/gstutils.c: (gst_print_element_args):
7706         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7707         (setup_group_scheduler), (gst_opt_scheduler_iterate):
7708         Aplied part of patch #157127: Cleanup of issues reported by 
7709         sparse.
7710         Also do not try to use cothreads when there is no cothread
7711         context yet.
7712
7713 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
7714
7715         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7716         (gst_opt_scheduler_iterate):
7717         Applied patch #154061. Running a pipeline in which an element 
7718         calls GST_ELEMENT_ERROR in the chain function, the opt 
7719         scheduler doesn't unref the chain so it never gets freed.
7720
7721 2004-11-02  Wim Taymans  <wim@fluendo.com>
7722
7723         * gst/gststructure.c: (gst_structure_get_abbrs),
7724         (gst_structure_from_abbr), (gst_structure_to_abbr):
7725         Remove that ugly if-then thing in the code that converts
7726         between strings and types.
7727
7728 2004-11-02  Wim Taymans  <wim@fluendo.com>
7729
7730         * gst/gstscheduler.c: (gst_scheduler_add_element),
7731         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
7732         Aplied clock distribution patch, this should fix bug
7733         #148787.
7734
7735 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
7736
7737         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
7738
7739         * po/LINGUAS:
7740         * po/nb.po:
7741           Added Norwegian Bokmaal translation
7742
7743 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7744
7745         * tools/gst-inspect.c: (print_signal_info):
7746           print signal arguments as pointers if they are
7747
7748 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
7749
7750         * docs/pwg/building-boiler.xml:
7751           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
7752
7753 2004-10-19  Wim Taymans  <wim at fluendo dot com>
7754
7755         * gst/parse/parse.l:
7756         * testsuite/parse/parse1.c: (main):
7757         Since parse can do 'element name=a:b' make 'a:b.' work as
7758         well. 
7759         Added testcase to verify fix.
7760
7761 2004-10-19  Wim Taymans  <wim at fluendo dot com>
7762
7763         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
7764         Use the realpad when printing the direction.
7765         Add extra \n when printing extensions of typefind factories.
7766
7767 2004-10-13  David Schleef  <ds@schleef.org>
7768
7769         * examples/manual/Makefile.am: $< isn't portable in Makefile
7770         rules.
7771
7772 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
7773
7774         * docs/gst/tmpl/gstobject.sgml:
7775         * docs/gst/tmpl/gstplugin.sgml:
7776         * docs/gst/tmpl/gstpluginfeature.sgml:
7777         * docs/gst/tmpl/gstregistry.sgml:
7778         * docs/gst/tmpl/gstversion.sgml:
7779         * gst/gstbin.c:
7780           more api documentation
7781         * gst/gstplugin.c: (gst_plugin_register_func),
7782         (gst_plugin_check_file), (gst_plugin_load_file):
7783           better error signaling and logging
7784
7785 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7786
7787         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
7788           Subtract current queue contents from position queries.
7789
7790 2004-10-11  Johan Dahlin  <johan@gnome.org>
7791
7792         * gst/gsturi.c (gst_uri_get_location): unescape string
7793         (gst_uri_construct): escape string.
7794
7795 2004-10-11  Benjamin Otte  <otte@gnome.org>
7796
7797         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
7798         (gst_pad_try_set_caps_nonfixed):
7799           allow renegotiation of unconnected pads (as inside spider). Simply
7800           return OK if unconnected - mimic try_set_caps there.
7801
7802 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7803
7804         * gst/gstbin.c: (gst_bin_sync_children_state):
7805           Add missing break.
7806
7807 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7808
7809         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
7810         Set element to EOS before sending EOS event
7811
7812 2004-10-08  Wim Taymans  <wim at fluendo dot com>
7813
7814         * gst/elements/gsttypefindelement.c:
7815         (gst_type_find_element_handle_event):
7816         Handle EOS events when doing the transition from
7817         typefind to data passing. This should fix the
7818         infinite loops in short files.
7819
7820 2004-10-07  Wim Taymans  <wim at fluendo dot com>
7821
7822         * gst/gstthread.c: (gst_thread_change_state),
7823         (gst_thread_child_state_change):
7824         Make sure no iteration happens while performing
7825         the state change as it could mess up the internal
7826         consistency of the thread state.
7827
7828 2004-10-07  Wim Taymans  <wim at fluendo dot com>
7829
7830         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
7831         (gst_thread_change_state), (gst_thread_child_state_change):
7832         Do not try to grab the iterate lock in the state change method
7833         when we are in the same thread as the iterate or else we
7834         could deadlock. Some other cleanups.
7835
7836 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7837
7838         * configure.ac:
7839           bump nano to cvs
7840
7841 === release 0.8.7 ===
7842
7843 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7844
7845         * configure.ac:
7846         * NEWS:
7847         * RELEASE:
7848         * configure.ac:
7849           releasing 0.8.7, "A Cruise"
7850
7851 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
7852
7853         * docs/random/mimetypes:
7854         Add an entry for Sony ATRAC3 audio format with mime-type
7855         used by rmdemux et riff-read
7856
7857 2004-10-06  Wim Taymans  <wim at fluendo dot com>
7858
7859         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7860         Push the buffer store instead of clearing it in case that
7861         the stream is not seekable.
7862
7863 2004-10-06  Wim Taymans  <wim at fluendo dot com>
7864
7865         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
7866         (gst_thread_main_loop):
7867         Lock the iteration and the state change so that automatic
7868         negotiation and fixation does not happen at the same time
7869         as the in stream negotiation.
7870
7871 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7872
7873         * configure.ac:
7874           bump nano to cvs
7875
7876 === release 0.8.6 ===
7877
7878 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7879
7880         * configure.ac:
7881         * NEWS:
7882         * RELEASE:
7883         * configure.ac:
7884           releasing 0.8.6, "Narc"
7885
7886 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7887
7888         * configure.ac:
7889           prerel bump
7890
7891 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7892
7893         patch by: Steve Lhomme
7894
7895         * gst/elements/gstfakesrc.c:
7896         * gst/elements/gstidentity.c:
7897         * gst/gstthread.c:
7898           Fix for #153881
7899
7900 2004-10-01  Wim Taymans  <wim at fluendo dot com>
7901
7902         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
7903         Fix threadsafety of the crc checking function.
7904
7905 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7906
7907         patch by: Ronald Bultje
7908
7909         * gst/elements/gsttypefindelement.c: (stop_typefinding),
7910         (gst_type_find_element_handle_event),
7911         (gst_type_find_element_chain):
7912         * gst/elements/gsttypefindelement.h:
7913          #153657.
7914          Filter out discont event from seekable sources when typefind
7915          asks them to seek.  Fixes typefind with demuxers for
7916          avi, asf and matroska.
7917
7918 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7919
7920         * docs/gst/gstreamer-sections.txt:
7921         * gst/gstcaps.c:
7922         * gst/gstcaps.h:
7923         * gst/gstpad.c:
7924           Revert preferred caps: (#147789)
7925
7926 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
7927
7928         * win32/dirent.c:
7929           fix a memory leak
7930
7931 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7932
7933         * configure.ac:
7934           bump for prerelease
7935
7936 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7937
7938         * docs/Makefile.am:
7939         * docs/manual/elements-api.xml:
7940           restructure so that common stuff is shown first
7941         * docs/manual/init-api.xml:
7942           convert to examples
7943         * docs/manual/manual.xml:
7944         * docs/manuals.mak:
7945         * docs/url.entities:
7946           link to API on the website, possibly override later in build
7947         * examples/manual/.cvsignore:
7948           ignore more
7949         * examples/manual/Makefile.am:
7950           add more examples
7951         * examples/manual/extract.pl:
7952           error out on failure
7953
7954 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7955
7956         * docs/gst/tmpl/gstthread.sgml:
7957         * docs/manual/init-api.xml:
7958         * examples/manual/Makefile.am:
7959           convert two code bits to examples
7960
7961 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7962
7963         * gst/gstelement.c: (gst_element_change_state):
7964           Well, actually, I was about to remove this insane assert when
7965           I noticed Wim already did that. A warning is nice so we can
7966           fix actual ugs (using --g-fatal-warnings and backtraces), so
7967           I added that instead.
7968
7969 2004-09-06  Wim Taymans  <wim@fluendo.com>
7970
7971         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
7972         (gst_element_threadsafe_properties_post_run),
7973         (gst_element_set_state), (gst_element_change_state):
7974         Added extra refcounting around various places. 
7975
7976 2004-09-06  Wim Taymans  <wim@fluendo.com>
7977
7978         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7979         Fix debug info.
7980
7981 2004-09-06  Wim Taymans  <wim@fluendo.com>
7982
7983         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7984         (remove_from_group):
7985         Some more debug info.
7986
7987 2004-09-03  Wim Taymans  <wim@fluendo.com>
7988
7989         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
7990         (gst_fakesrc_init), (gst_fakesrc_set_clock),
7991         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
7992         (gst_fakesrc_get), (gst_fakesrc_change_state):
7993         * gst/elements/gstfakesrc.h:
7994         * gst/elements/gstidentity.c: (gst_identity_class_init),
7995         (gst_identity_init), (gst_identity_chain),
7996         (gst_identity_set_property), (gst_identity_get_property),
7997         (gst_identity_change_state):
7998         * gst/elements/gstidentity.h:
7999         Added datarate properties to limit the datarate.
8000
8001 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8002
8003         * gst/autoplug/gstspider.c: (plugin_init):
8004           don't set a rank. We don't want to autoplug by inserting spiders.
8005
8006 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8007
8008         * gst/autoplug/gstspider.c: (gst_spider_class_init),
8009         (gst_spider_identity_plug):
8010           add a template for spider's sink
8011         * gst/gst.c: (gst_register_core_elements):
8012           queue's rank should be NULL, we don't want spider to add it.
8013
8014 2004-08-18  David Schleef  <ds@schleef.org>
8015
8016         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
8017         * docs/libs/Makefile.am: same
8018         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
8019         * docs/random/ds/0.9-planning: random additions
8020         * docs/random/ds/0.9-suggested-changes: same
8021         * gst/gstxml.h: remove vestigal GstXMLNs definition
8022
8023         Preferred caps: (#147789)
8024         * docs/gst/gstreamer-sections.txt: Add symbols
8025         * docs/gst/tmpl/gstcaps.sgml: Add symbols
8026         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8027         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
8028         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
8029         (gst_caps_get_preferred), (gst_caps_set_preferred),
8030         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
8031         (gst_caps_use_preferred): Handle caps preferences
8032         * gst/gstcaps.h: Add caps preferences
8033         * gst/gstpad.c: (gst_pad_link_get_preferred),
8034         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
8035         (gst_pad_renegotiate), (gst_pad_guess_preferred),
8036         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
8037         negotiation.
8038
8039 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8040
8041         * gst/autoplug/gstspideridentity.c:
8042         (gst_spider_identity_request_new_pad):
8043         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
8044         (gst_aggregator_init):
8045         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
8046         (gst_fakesink_init):
8047         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
8048         (gst_fakesrc_init):
8049         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
8050         (gst_fdsink_init):
8051         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
8052         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
8053         (gst_filesink_init):
8054         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
8055         (gst_filesrc_init):
8056         * gst/elements/gstidentity.c: (gst_identity_base_init),
8057         (gst_identity_init):
8058         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
8059         (gst_multifilesrc_init):
8060         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
8061         (gst_pipefilter_init):
8062         * gst/elements/gststatistics.c: (gst_statistics_base_init),
8063         (gst_statistics_init):
8064         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
8065         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
8066           s/gst_pad_new/&_from_template/
8067           register pad templates in the base_init function
8068           add static pad template definitions
8069
8070 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8071
8072         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
8073         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
8074         * testsuite/refcounting/pad.c: (main):
8075         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
8076           s/gst_pad_new/&_from_template/
8077           prepare deprecation of gst_pad_new
8078
8079 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8080
8081         patch by: Luca Ognibene <skaboy81@virgilio.it>
8082
8083         * gst/gstcaps.c:
8084         * gst/gstelement.c:
8085         * gst/gstpad.c:
8086         * gst/gstxml.c:
8087           fix memleaks.  Fixes #150001
8088
8089 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8090
8091         * docs/random/ds/0.9-suggested-changes:
8092           add notes - mostly about pad templates
8093
8094 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
8095
8096         * win32/GStreamer.vcproj:
8097           temporary locale files are .gmo not .mo
8098
8099 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8100
8101         * configure.ac: bump nano to cvs
8102
8103 === release 0.8.5 ===
8104
8105 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8106
8107         * configure.ac:
8108           releasing 0.8.5, "Stuttgart"
8109         * NEWS:
8110         * RELEASE:
8111         * configure.ac:
8112         * docs/random/release:
8113           updates for release
8114
8115 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8116
8117         patch by: Wim Taymans (wim@fluendo.com)
8118
8119         * gst/gstbuffer.c:
8120         * gst/gstindex.h:
8121         * libs/gst/dataprotocol/dataprotocol.c:
8122           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
8123
8124 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8125
8126         * Makefile.am:
8127         * win32/MANIFEST:
8128           add win32 dir to the build.  Fixes #149981.
8129
8130 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8131
8132         * configure.ac:
8133           bump libtool versioning
8134         * gst/gststructure.c:
8135           mark function as static
8136         * po/af.po:
8137         * po/az.po:
8138         * po/ca.po:
8139         * po/cs.po:
8140         * po/en_GB.po:
8141         * po/fr.po:
8142         * po/nl.po:
8143         * po/sq.po:
8144         * po/sr.po:
8145         * po/sv.po:
8146         * po/tr.po:
8147         * po/uk.po:
8148           translations update
8149         * win32/README.txt:
8150           trademark protection
8151
8152 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8153
8154         * configure.ac:
8155           fix GST_ORIGIN
8156           set GST_PACKAGE to source, and distinguish between release and other
8157         * tools/gst-inspect.c:
8158           print out plugin an element factory is part of so we see this info
8159
8160 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8161
8162         * docs/gst/gstreamer-sections.txt:
8163         * docs/gst/tmpl/gstbuffer.sgml:
8164         * docs/gst/tmpl/gstschedulerfactory.sgml:
8165           reorder docs a little, make GstBuffer's more sensible.
8166         * gst/gstbuffer.h:
8167           API: added GST_BUFFER_FLAG_DELTA_UNIT
8168         * gst/gstscheduler.c:
8169           comment API addition
8170
8171 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8172
8173         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8174           work with non-regular files that can be mmapped (like /dev/zero)
8175         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
8176           get rid of typefinds that require a seek when we can't seek instead
8177           of trying them over and over again
8178         * tools/gst-launch.c: (idle_func), (error_cb), (main):
8179           return non-zero failure value when the pipeline was interrupted or
8180           an error occurred
8181
8182 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
8183
8184         * win32/config.h:
8185         * win32/GStreamer.vcproj:
8186           compile and install the locales
8187
8188 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
8189
8190         * gst/gstvalue.c:
8191           fix a possible memory leak under Windows
8192
8193 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
8194
8195         * win32/GStreamer.vcproj:
8196           fix a memory leak that occured under Windows
8197         * win32/gstreamer.def:
8198           add gst_scheduler_register
8199
8200 2004-08-11  Benjamin Otte  <otte@gnome.org>
8201
8202         * docs/gst/gstreamer-sections.txt:
8203         * gst/gstscheduler.c: (gst_scheduler_register):
8204         * gst/gstscheduler.h:
8205           API:
8206           add gst_scheduler_register shortcut similar to gst_element_register
8207         * gst/schedulers/entryscheduler.c: (plugin_init):
8208         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8209         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
8210           use it
8211
8212 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
8213
8214         * gst/gstvalue.h:
8215           fix a memory leak that occured under Windows
8216
8217 2004-08-10  Colin Walters  <walters@redhat.com>
8218
8219         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
8220         Don't use O_EXCL to open temporary registry.  It will prevent
8221         registry creation if a temporary one already exists, which
8222         is unnecessary.
8223
8224 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8225
8226         * docs/gst/gstreamer-sections.txt:
8227         * docs/gst/tmpl/gstvalue.sgml:
8228           remove some valuable stuff from the documentation due to the use of GST_EXPORT
8229
8230 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8231
8232         * win32/gstbytestream.vcproj:
8233         * win32/gstelements.vcproj:
8234         * win32/gstgetbits.vcproj:
8235         * win32/gst-inspect.vcproj:
8236         * win32/gst-launch.vcproj:
8237         * win32/gstoptimalscheduler.vcproj:
8238         * win32/GStreamer.vcproj:
8239         * win32/gst-register.vcproj:
8240         * win32/gstspider.vcproj:
8241           update the include and lib dirs to fit standard libraries as
8242           described in the Win32 manual
8243
8244 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8245
8246         * win32/config.h:
8247         * win32/gstversion.h:
8248           enable NLS again, push the version number for the coming 0.8.5 release
8249
8250 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8251
8252         * gst/gstvalue.h:
8253           export gst_type_XXX for windows DLLs
8254
8255 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8256
8257         * docs/faq/gst-uninstalled:
8258           fix PKG_CONFIG_PATH and PYTHONPATH
8259         * gst/schedulers/Makefile.am:
8260           cleanup
8261         * libs/gst/bytestream/bytestream.c:
8262           remove newline
8263         * po/LINGUAS:
8264         * po/sq.po:
8265           adding Albanian translation (Laurent Dhima)
8266         * po/cs.po:
8267           updated
8268
8269 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8270
8271         * po/ca.po:
8272         * po/sv.po:
8273           updated translations
8274
8275 2004-08-04  Benjamin Otte  <otte@gnome.org>
8276
8277         * tests/mass_elements.c: (main):
8278           allow specifying src and sink element explicitly, so I can test
8279           videotestsrc instead of fakesrc
8280
8281 2004-08-04  Benjamin Otte  <otte@gnome.org>
8282
8283         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
8284         (gst_structure_id_empty_new), (gst_structure_empty_new),
8285         (gst_structure_copy):
8286           add gst_structure_id_empty_new_with_size to allow preallocating
8287           value array sizes. Use this in gst_structure_copy to get rid of
8288           reallocs.
8289           don't do quark=>string=>quark when copying structures
8290
8291 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
8292
8293         * docs/manual/win32.xml:
8294         * win32/README.txt:
8295           update documentation with the clean version of dependencies
8296
8297 2004-08-03  Benjamin Otte  <otte@gnome.org>
8298
8299         * gst/schedulers/entryscheduler.c:
8300         (gst_entry_scheduler_remove_element):
8301           fix for GST_DISABLE_DEBUG
8302         * tools/gst-launch.c: (print_tag):
8303           fixes for G_DISABLE_ASSERT
8304
8305 2004-08-03  Benjamin Otte  <otte@gnome.org>
8306
8307         * gst/gst.c: (gst_register_core_elements):
8308           fix for G_DISABLE_ASSERT
8309         * gst/gstinfo.c: (__gst_in_valgrind):
8310           add for GST_DISABLE_DEBUG
8311
8312 2004-08-03  Benjamin Otte  <otte@gnome.org>
8313
8314         * gst/parse/parse.l:
8315           fix for G_DISABLE_ASSERT
8316
8317 2004-08-03  Wim Taymans  <wim@fluendo.com>
8318
8319         * gst/gstbin.c: (gst_bin_get_type),
8320         (gst_bin_child_state_change_func):
8321         * gst/gstthread.c: (gst_thread_change_state):
8322         Backported some debug logging from a reverted patch
8323         Don't try to destroy the thread twice. Added some more
8324         debugging in GstThread. Unlock and signal even if we
8325         are in the thread context.
8326
8327 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8328
8329         * po/uk.po:
8330           updated translation
8331
8332 2004-07-30  David Schleef  <ds@schleef.org>
8333
8334         * gst/gstatomic_impl.h: Enable atomic code for x86_64
8335
8336 2004-07-29  David Schleef  <ds@schleef.org>
8337
8338         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
8339         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
8340
8341 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8342
8343         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
8344         (gst_bin_add_func), (gst_bin_remove_func),
8345         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
8346         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
8347         (gst_bin_change_state_norecurse), (gst_bin_dispose),
8348         (gst_bin_sync_children_state):
8349         * gst/gstbin.h:
8350         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
8351         (gst_thread_change_state):
8352         * testsuite/states/Makefile.am:
8353           revert state change patches as agreed so we can rework them
8354           gradually
8355
8356 2004-07-29  Benjamin Otte  <otte@gnome.org>
8357
8358         * libs/gst/control/Makefile.am:
8359           link to libgstreamer (fixes Debian bug 262019, see
8360           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
8361
8362 2004-07-29  Wim Taymans  <wim@fluendo.com>
8363
8364         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
8365         (check_from_fraction_convert), (transform_test), (main):
8366         Make the test less pedantic about float roundoff errors.
8367
8368 2004-07-29  Benjamin Otte  <otte@gnome.org>
8369
8370         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
8371         (gst_filesrc_srcpad_event):
8372           make seek events to before start/after end of file not fail, but
8373           seek to start/end instead
8374         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
8375           add more output
8376
8377 2004-07-29  Benjamin Otte  <otte@gnome.org>
8378
8379         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8380           check that caps are fixed
8381         * gst/gstpad.c: (gst_pad_template_new):
8382           don't try to simplify caps, costs too much time on gst_init
8383         * gst/gstplugin.c: (gst_plugin_add_feature):
8384           G_ERROR if features are added twice
8385         * gst/gsttypefind.c: (gst_type_find_register):
8386         * gst/gstelementfactory.c: (gst_element_register):
8387           don't add features twice
8388         * docs/random/ds/0.9-suggested-changes:
8389           add note about possible gst_init optimization
8390
8391 2004-07-28  David Schleef  <ds@schleef.org>
8392
8393         * testsuite/elements/Makefile.am:
8394         * testsuite/elements/struct_i386.h:
8395         * testsuite/elements/struct_size.c: (main):  A little test
8396         to keep distcheck from working if someone changes a structure
8397         size accidentally.
8398
8399 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8400
8401         * docs/libs/Makefile.am:
8402         * docs/libs/gstreamer-libs-docs.sgml:
8403         * docs/libs/gstreamer-libs-sections.txt:
8404         * docs/libs/tmpl/gstbytestream.sgml:
8405         * docs/libs/tmpl/gstcontrol.sgml:
8406         * docs/libs/tmpl/gstdataprotocol.sgml:
8407         * docs/libs/tmpl/gstgetbits.sgml:
8408         * libs/gst/bytestream/Makefile.am:
8409         * libs/gst/bytestream/bytestream.c:
8410         * libs/gst/bytestream/bytestream.h:
8411         * libs/gst/control/Makefile.am:
8412         * libs/gst/dataprotocol/Makefile.am:
8413         * libs/gst/getbits/Makefile.am:
8414         * libs/gst/getbits/getbits.h:
8415           various doc and style fixes, adding bytestream to libs docs.
8416
8417 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8418
8419         * docs/gst/gstreamer-docs.sgml:
8420         * docs/libs/Makefile.am:
8421         * docs/libs/gstreamer-libs-docs.sgml:
8422         * docs/libs/gstreamer-libs-sections.txt:
8423         * libs/gst/control/dparam.c:
8424           more doc fixes.  gst-libs docs now build the same way as gst.
8425
8426 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8427
8428         * configure.ac:
8429         * testsuite/Makefile.am:
8430         * testsuite/bins/Makefile.am:
8431         * testsuite/caps/Makefile.am:
8432         * testsuite/cleanup/Makefile.am:
8433         * testsuite/clock/Makefile.am:
8434         * testsuite/debug/Makefile.am:
8435         * testsuite/dlopen/Makefile.am:
8436         * testsuite/dynparams/Makefile.am:
8437         * testsuite/elements/.cvsignore:
8438         * testsuite/elements/Makefile.am:
8439         * testsuite/enumcaps/Makefile.am:
8440         * testsuite/enumcaps/enumcaps.c:
8441         * testsuite/ghostpads/Makefile.am:
8442         * testsuite/indexers/Makefile.am:
8443         * testsuite/negotiation/Makefile.am:
8444         * testsuite/parse/Makefile.am:
8445         * testsuite/plugin/Makefile.am:
8446         * testsuite/refcounting/Makefile.am:
8447         * testsuite/schedulers/.cvsignore:
8448         * testsuite/states/Makefile.am:
8449         * testsuite/tags/Makefile.am:
8450         * testsuite/threads/Makefile.am:
8451           fold enumcaps into caps dir
8452           clean up Makefile.am's for testsuite
8453
8454 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8455
8456         * docs/gst/Makefile.am:
8457         * docs/libs/Makefile.am:
8458           clean up docs build.  Fixes needless rebuilding of template files.
8459
8460 2004-07-28  Wim Taymans  <wim@fluendo.com>
8461
8462         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
8463         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
8464         Make sure that a bin state change tries to keep the children
8465         in sync. 
8466         Added debug logging to the thread.
8467
8468 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
8469
8470         * win32/GStreamer.vcproj:
8471         * win32/gstreamer.def:
8472           more exports for the plugins
8473
8474 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
8475
8476         * win32/gstgetbits.vcproj:
8477         * win32/gstgetbits.def:
8478         * win32/msvc71.sln:
8479           add support for the getbits plugin
8480
8481 2004-07-27  Wim Taymans  <wim@fluendo.com>
8482
8483         * gst/gstvalue.c: (gst_value_transform_double_fraction),
8484         (gst_value_transform_fraction_double), (_gst_value_initialize):
8485         * testsuite/caps/Makefile.am:
8486         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
8487         (check_from_fraction_convert), (transform_test), (main):
8488         Added transform functions between double and fraction.
8489         Added testcase to verify transforms
8490
8491 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8492
8493         * win32/GStreamer.vcproj:
8494           rename GStreamer-0.8.lib to libgstreamer.lib
8495
8496 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8497
8498         * win32/gstelements.vcproj:
8499         * win32/gstoptimalscheduler.vcproj:
8500           fixes for the Release build
8501
8502 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8503
8504         * win32/config.h:
8505           update the version number
8506
8507 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8508
8509         * win32/GStreamer.vcproj:
8510           add gstinterface to the build
8511
8512 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8513
8514         * win32/gstreamer.def:
8515           add many definitions needed by plugins,
8516           GST_CAT_DEFAULT only available in the Debug build ?
8517
8518 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8519
8520         * gst/gstelement.c: (gst_element_set_eos_recursive):
8521           various whitespace fixes.
8522           doc fix, fixes #148497
8523
8524 2004-07-25  Benjamin Otte  <otte@gnome.org>
8525
8526         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
8527           don't delay links on the sink elements, it causes unnegotiated
8528           links.
8529         * gst/elements/gsttypefindelement.c:
8530         (gst_type_find_element_base_init):
8531           add our padtemplates, we indeed do have some.
8532         * gst/elements/gsttypefindelement.c:
8533         (gst_type_find_element_handle_event),
8534         (gst_type_find_element_chain):
8535           don't push data when typefinding failed.
8536         * gst/gstpad.c: (gst_pad_link_fixate):
8537           check that no fixate function returns empty caps.
8538         * gst/gstpad.c: (gst_pad_push):
8539           check that the link is negotiated before data gets pushed.
8540         * tools/gst-register.c: (main):
8541           don't assert (fixes #148283)
8542
8543 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8544
8545         * docs/gst/gstreamer-sections.txt:
8546         * docs/gst/tmpl/gstconfig.sgml:
8547           add GST_PLUGIN_EXPORT definition
8548
8549 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8550
8551         * gst/gstplugin.h:
8552         * gst/gstconfig.h.in:
8553         * win32/gstconfig.h:
8554         * win32/gstelements.def:
8555         * win32/gstelements.vcproj:
8556         * win32/gstoptimalscheduler.def:
8557         * win32/gstoptimalscheduler.vcproj:
8558         * win32/gstspider.def:
8559         * win32/gstspider.vcproj:
8560           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
8561
8562 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8563
8564         * docs/gst/gstreamer-sections.txt:
8565           remove GST_CAT_DEFAULT because the type has changed
8566
8567 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8568
8569         * win32/gstbytestream.vcproj:
8570         * win32/gstelements.vcproj:
8571         * win32/gst-inspect.vcproj:
8572         * win32/gst-launch.vcproj:
8573         * win32/gstoptimalscheduler.vcproj:
8574         * win32/GStreamer.vcproj:
8575         * win32/gst-register.vcproj:
8576         * win32/gstspider.vcproj:
8577         * win32/msvc71.sln:
8578           Copy the files where needed after building, The testsuite will be
8579           built separately
8580
8581 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8582
8583         * win32/config.h:
8584         * win32/README.txt:
8585         * docs/manual/win32.xml:
8586         Fixed the plugin and GStreamer location
8587
8588 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8589
8590         * win32/gstreamer.def:
8591         More exports for the plugins
8592
8593 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8594
8595         * gst/gstinfo.h:
8596         Marc was right, we need to export literally GST_CAT_DEFAULT
8597
8598 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8599
8600         * win32/config.h:
8601         NLS crashes in gettext, disabled until this is solved
8602
8603 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8604
8605         * win32/gst-inspect.vcproj:
8606         * win32/gst-launch.vcproj:
8607         Should use NLS when available
8608
8609 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8610
8611         * gst/registries/gstxmlregistry.c:
8612         removing the file doesn't seem to be a good idea on Linux
8613
8614 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8615
8616         * gst/registries/gstxmlregistry.c:
8617         Remove the registry before renaming the tempfile (needed for Windows)
8618
8619 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8620
8621         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
8622         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
8623         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
8624         * gst/elements/gstmultifilesrc.h:
8625         Added newmedia property so it generates newmedia events between each
8626         file when property is set, as well as fixed eos handling
8627
8628 2004-07-22  David Schleef  <ds@schleef.org>
8629
8630         * gst/gststructure.c: (gst_structure_id_empty_new),
8631         (gst_structure_empty_new):  Set type field correctly.
8632         * gst/gststructure.h: Check type field correctly.
8633         * testsuite/caps/Makefile.am:
8634         * testsuite/caps/structure.c: (test1), (main): Add a very small
8635         test for structures.
8636
8637 2004-07-22  David Schleef  <ds@schleef.org>
8638
8639         * docs/random/ds/0.9-suggested-changes: more comments
8640         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
8641
8642 2004-07-22  Benjamin Otte  <otte@gnome.org>
8643
8644         * gst/gstelementfactory.c: (gst_element_register):
8645           set the factory in the class struct, so gst_element_get_factory
8646           actually works
8647         * gst/parse/grammar.y:
8648           set element to playing when it gets unlocked as we can't rely on the
8649           bin state - all elements in the bin state might still be locked in
8650           NULL)
8651
8652 2004-07-22  Benjamin Otte  <otte@gnome.org>
8653
8654         * gst/gstelement.c: (gst_element_set_state_func):
8655           make this a static function
8656
8657 2004-07-22  Wim Taymans  <wim@fluendo.com>
8658
8659         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8660         (gst_opt_scheduler_pad_link):
8661         fix 147894-2 and the group_link problem.
8662
8663 2004-07-22  Wim Taymans  <wim@fluendo.com>
8664
8665         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
8666         (handoff_identity), (main):
8667         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8668         (handoff_identity), (main):
8669         * testsuite/schedulers/Makefile.am:
8670         * testsuite/schedulers/group_link.c: (main):
8671         Show bug in scheduler when linking chain and loop based element 
8672         where the chain based element was not yet in a group.
8673
8674 2004-07-21  Benjamin Otte  <otte@gnome.org>
8675
8676         * gst/.cvsignore:
8677         * gst/autoplug/.cvsignore:
8678         * gst/elements/.cvsignore:
8679         * gst/indexers/.cvsignore:
8680         * libs/gst/bytestream/.cvsignore:
8681         * libs/gst/control/.cvsignore:
8682         * libs/gst/getbits/.cvsignore:
8683         * testsuite/states/.cvsignore:
8684         * testsuite/threads/.cvsignore:
8685           keep this up to date, since I seem to be the only one who cares
8686           about not missing files on commits (editor's note: no you don't,
8687           but feel free to change them at the time you add stuff instead
8688           of later on)
8689
8690 2004-07-21  Benjamin Otte  <otte@gnome.org>
8691
8692         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
8693         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
8694         (gst_bin_child_state_change_func), (set_kid_state_func),
8695         (gst_bin_set_state), (gst_bin_change_state_norecurse):
8696           make state changes work correctly and reentrant (so removing
8697           elements from bins during state changes of bins doesn't cause
8698           segfaults or even wrong states)
8699           add debugging category and debugging output to print children states
8700         * gst/gstbin.c: (gst_bin_dispose): 
8701           add some assertion checks
8702         * gst/gstbin.h:
8703         * gst/gstbin.c: (gst_bin_sync_children_state):
8704           deprecate this function - it just does gst_bin_set_state (bin,
8705           GST_STATE (bin)) 
8706         * testsuite/threads/queue.c: (main):
8707           don't use gst_bin_sync_children_state anymore
8708         * testsuite/states/Makefile.am:
8709         * testsuite/states/bin.c:
8710           test that the state changes of bins work as expected
8711         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
8712           some adjustments to change states correctly, too
8713         * gst/gstthread.c: (gst_thread_change_state):
8714           don't enable/disable "threadsafe" properties, they're unused and
8715           cause random segfaults
8716         * testsuite/threads/Makefile.am:
8717           the queue check randomly passes now, ignore it
8718
8719 2004-07-21  Benjamin Otte  <otte@gnome.org>
8720
8721         * gst/gstpad.c:
8722           check if data is NULL before outputting debug info. (fixes #145100)
8723
8724 2004-07-21  Benjamin Otte  <otte@gnome.org>
8725
8726         * gst/schedulers/entryscheduler.c:
8727         (gst_entry_scheduler_loop_wrapper),
8728         (gst_entry_scheduler_chain_wrapper),
8729         (gst_entry_scheduler_get_wrapper):
8730           reset the state when the cothread starts, so we don't get assertion
8731           failures on restarting of cothreads
8732
8733 2004-07-20  Benjamin Otte  <otte@gnome.org>
8734
8735         * gst/gstelement.c: (gst_element_link_pads_filtered):
8736           use correct sinkpad, if only sinkpad is specified, but not srcpad
8737           (fixes #147889)
8738         * gst/gstelement.c: (gst_element_set_state_func),
8739         (gst_element_change_state): ref/unref the element, signal handlers
8740         could get rid of the element otherwise
8741
8742 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8743
8744         * docs/random/ds/0.9-suggested-changes:
8745           Make note about renaming fixed-list to array.
8746         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
8747         (_gst_value_initialize):
8748           Add array intersections.
8749         * testsuite/caps/intersect2.c: (main):
8750           Add test for array intersections.
8751
8752 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8753
8754         * configure.ac: back to cvs
8755
8756 === release 0.8.4 ===
8757
8758 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8759
8760         * configure.ac:
8761           releasing 0.8.4, "Paella"
8762           bump libtool versioning
8763
8764 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8765
8766         * po/LINGUAS:
8767         * po/ca.po:
8768           adding Catalan translation (Jordi Mallach)
8769
8770 2004-07-20  Wim Taymans  <wim@fluendo.com>
8771
8772         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
8773         (handoff_identity), (main):
8774         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8775         (handoff_identity), (main):
8776         * testsuite/schedulers/Makefile.am:
8777         Added failing testcase for variant of #147894
8778
8779 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8780
8781         patch by: David Moore
8782
8783         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
8784         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
8785         (group_migrate_connected):
8786         * testsuite/schedulers/Makefile.am:
8787           fix for #142813 (Deadlock in optimal scheduler)
8788
8789 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8790
8791         patch by: Wim Taymans
8792
8793         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
8794         (gst_opt_scheduler_schedule_run_queue),
8795         (gst_opt_scheduler_get_wrapper), (get_group),
8796         (group_migrate_connected):
8797         * testsuite/schedulers/Makefile.am:
8798           fix for #147819 (Add some checks in the opt scheduler)
8799
8800 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8801
8802         patch by: Benjamin Otte
8803
8804         * gst/gstelementfactory.c: (__gst_element_details_set):
8805           fix for #147929: running gst-register in non-utf8 locale can cause
8806           invalid registry
8807
8808 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8809
8810         patch by: Wim Taymans
8811
8812         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
8813         (group_has_element), (element_get_reachables_func),
8814         (group_migrate_connected):
8815           fix for #147894 (opt scheduler decoupled elements mismanagement)
8816         * testsuite/schedulers/Makefile.am:
8817           testsuite app now passes
8818
8819 2004-07-19  Wim Taymans  <wim@fluendo.com>
8820
8821         * testsuite/schedulers/147819.c: (handoff_identity1),
8822         (handoff_identity2), (main):
8823         * testsuite/schedulers/Makefile.am:
8824         Added testcase for bug 147819
8825
8826 2004-07-19  Wim Taymans  <wim@fluendo.com>
8827
8828         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8829         (handoff_identity), (main):
8830         * testsuite/schedulers/Makefile.am:
8831         Added testcase for bug 147894
8832
8833 2004-07-16  Wim Taymans  <wim@fluendo.com>
8834
8835         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
8836         * testsuite/schedulers/142183.c: (handoff_identity), (main):
8837         * testsuite/schedulers/Makefile.am:
8838         Added testsuite for bug 142183 in its two incarnations. Refcount
8839         is not increased for scheduled elements and threadsafe properties
8840         mutexes are not properly unlocked.
8841
8842 2004-07-16  Wim Taymans  <wim@fluendo.com>
8843
8844         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
8845         (create_chain), (destroy_chain), (create_group), (destroy_group),
8846         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
8847         (group_dec_link), (gst_opt_scheduler_pad_link),
8848         (group_inc_links_for_element), (group_migrate_connected):
8849         Call group_inc_link with the proper src->sink ordering -- 
8850         break this, and we break sort_chain. patch from wingo for bug
8851         147713.
8852         Partially revert patch 1.89. When adding a loop based element to 
8853         the scheduler, the links to other groups are automatically followed
8854         and incremented. This should not happen because the bin will call
8855         pad_link explicitly for those connection, resulting in them counted 
8856         twice. Results in assertion failure on pipeline cleanup.
8857
8858 2004-07-16  Wim Taymans  <wim@fluendo.com>
8859
8860         * testsuite/schedulers/143777-2.c: (main):
8861         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
8862         (main):
8863         * testsuite/schedulers/Makefile.am:
8864         Added cleanup code to testcase 143777-2.
8865         Added testcase to show bug 147713, does not really show the
8866         deadlock as I can't figure out how to trigger it, but it does
8867         demonstrate bad ordering in the scheduler.
8868
8869 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8870
8871         * gst/gstvalue.c: (gst_value_deserialize_fraction):
8872           change strndup to g_strndup.  Fixes #147707
8873
8874 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8875
8876         * po/af.po:
8877         * po/az.po:
8878         * po/cs.po:
8879         * po/en_GB.po:
8880         * po/fr.po:
8881         * po/nl.po:
8882         * po/sr.po:
8883         * po/sv.po:
8884         * po/tr.po:
8885         * po/uk.po:
8886           updated translations
8887
8888 2004-07-16  Benjamin Otte  <otte@gnome.org>
8889
8890         * gst/gstvalue.c: (gst_greatest_common_divisor):
8891           use ints and return ints, fractions only use ints, too, so this
8892           avoids accidently casting multiplications to unsigned
8893         (gst_value_lcopy_fraction): it's ints, not uint32
8894         (gst_value_set_fraction): disallow minint, multiplying and negation
8895           are broken with it
8896         (gst_value_fraction_multiply): fix to make large numbers work and get
8897         rid of the assumption that the multiplication of two ints fits an
8898         int64 - dunno if that's true for all systems
8899         * testsuite/caps/Makefile.am:
8900         * testsuite/caps/fraction-multiply-and-zero.c:
8901         (check_multiplication), (check_equal), (zero_test), (main):
8902           add tests for all the stuff above
8903         * testsuite/caps/value_compare.c: (test1):
8904           fix comment
8905         * tests/.cvsignore:
8906         * testsuite/caps/.cvsignore:
8907         * testsuite/debug/.cvsignore:
8908         * testsuite/dlopen/.cvsignore:
8909         * testsuite/states/.cvsignore:
8910           get up to date
8911
8912 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8913
8914         * docs/manual/bins-api.xml:
8915         * docs/manual/factories.xml:
8916         * docs/manual/helloworld.xml:
8917         * docs/manual/links-api.xml: 
8918           fixes for out of date info, incorrect info and grammar
8919
8920 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8921
8922         * docs/manual/pads.xml:
8923         * docs/manual/pads-api.xml: grammar fix
8924
8925 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8926
8927         * docs/manual/pads-api.xml: typo + grammar fix
8928
8929 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8930
8931         * docs/gst/gstreamer-sections.txt:
8932           add new symbols
8933         * docs/gst/tmpl/gstelement.sgml:
8934         * docs/gst/tmpl/gstpad.sgml:
8935         * docs/gst/tmpl/gsttypes.sgml:
8936         * docs/gst/tmpl/gstvalue.sgml:
8937           update docs
8938         * gst/gststructure.c: (gst_structure_set_valist),
8939         (gst_structure_from_abbr), (gst_structure_to_abbr):
8940         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
8941         (gst_greatest_common_divisor), (gst_value_init_fraction),
8942         (gst_value_copy_fraction), (gst_value_collect_fraction),
8943         (gst_value_lcopy_fraction), (gst_value_set_fraction),
8944         (gst_value_get_fraction_numerator),
8945         (gst_value_get_fraction_denominator),
8946         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
8947         (gst_value_deserialize_fraction),
8948         (gst_value_transform_fraction_string),
8949         (gst_value_transform_string_fraction),
8950         (gst_value_compare_fraction), (_gst_value_initialize):
8951         * gst/gstvalue.h:
8952           adding GstFraction GValue type, get/set, and multiply
8953         * testsuite/caps/Makefile.am:
8954         * testsuite/caps/fraction.c: (test), (main):
8955         * testsuite/caps/string-conversions.c: (main):
8956         * testsuite/caps/value_compare.c: (test1), (main):
8957           add regression tests for GstFraction
8958
8959 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8960         
8961         * docs/manual/init-api.xml: Grammar fix
8962
8963 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8964
8965         * docs/manual/states.xml: Fix inconsistent information
8966
8967 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8968
8969         * gst/gstelement.c: (gst_element_set_state):
8970         * gst/gstpad.c: (gst_pad_try_set_caps):
8971         * gst/gststructure.c:
8972         * gst/gstthread.c: (gst_thread_child_state_change):
8973         * gst/gstvalue.c: (gst_value_compare_double):
8974         * gst/gstvalue.h:
8975         * testsuite/parse/parse1.c: (main):
8976           debugging additions and style cleanups
8977
8978 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8979
8980         * docs/manual/states.xml: Grammar fix
8981
8982 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8983
8984         * docs/manual/pads.xml: Grammar fix
8985
8986 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8987
8988         * docs/manual/elements.xml: Fixed image reference
8989
8990 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8991
8992         * docs/manual/goals.xml: Grammar fix
8993
8994 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8995
8996         * docs/manual/motivation.xml:
8997         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
8998
8999 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
9000
9001         * docs/manual/motivation.xml: Fix spelling
9002
9003 2004-07-15  Benjamin Otte  <otte@gnome.org>
9004
9005         * gst/gstelement.h: 
9006           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
9007           strings.
9008         * gst/gstelement.c (gst_element_class_init):
9009           GError's are boxed, not objects
9010         * gst/gstmarshal.list:
9011           update list for the fixed error signal
9012
9013 2004-07-14  Andy Wingo  <wingo@pobox.com>
9014
9015         * gst/gsttag.c: Add a tag merge func for pointers. The header was
9016         there all along, but the function wasn't. (guile-gstreamer's build
9017         system uses the address of the function -- I wasn't actually
9018         trying to use this.)
9019
9020 2004-07-14  Andy Wingo  <wingo@pobox.com>
9021
9022         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
9023         as gst_pad_proxy_pad_link) just link to every other pad when they
9024         are called. In the case where the graph has cycles, this will mean
9025         that a call to try_set_caps will recurse. Allow this recursion
9026         and return OK, while we wait for the first try_set_caps to give a
9027         proper return value.
9028         (gst_pad_link_call_link_functions): Since this function is the
9029         only one to set the NEGOTIATING flag on a pad, if the flag is set
9030         it means that the link functions have indirectly recursed. If this
9031         happens, error out to avoid infinite recursion and an eventual
9032         SEGV.
9033         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
9034         (gst_pad_proxy_getcaps): Intersect the result with the template
9035         caps to ensure that the return value is valid.
9036
9037 2004-07-14  Andy Wingo  <wingo@pobox.com>
9038
9039         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
9040         one refcount, the calling function is the owner of the buffer.
9041
9042 2004-07-14  Wim Taymans  <wim@fluendo.com>
9043
9044         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
9045         (gst_opt_scheduler_pad_link), (group_migrate_connected):
9046         Fix stupid warning when an element is to be migrated but
9047         is already migrated.
9048
9049 2004-07-14  Wim Taymans  <wim@fluendo.com>
9050
9051         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
9052         (gst_opt_scheduler_pad_link), (group_migrate_connected):
9053         Make sure that a single non-loop-based element does not 
9054         end up in a group. This fixes the testsuite again.
9055
9056 2004-07-14  Wim Taymans  <wim@fluendo.com>
9057
9058         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9059         (add_to_group), (merge_groups), (schedule_group),
9060         (gst_opt_scheduler_get_wrapper), (group_elements),
9061         (group_dec_link), (gst_opt_scheduler_pad_link),
9062         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
9063         (gst_opt_scheduler_iterate):
9064         move isolated groups to a new chain.
9065         Emit a warning instead of segfaulting in some error cases.
9066         Fix a bug where the link count between groups was not calculated 
9067         correctly. Fixes #144510.
9068
9069 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
9070         * gst/elements/gstfilesrc.c:
9071           Binary files support under Windows now OK
9072       
9073 2004-07-13  Benjamin Otte  <otte@gnome.org>
9074
9075           compatibility fixes for Solaris 8/gcc 2.95
9076         * configure.ac:
9077           include libintl libs in LDFLAGS
9078         * gstvalue.c (gst_value_deserialize_buffer):
9079           cast isxdigit stuff to int to silence compiler warning
9080
9081 2004-07-12  Benjamin Otte  <otte@gnome.org>
9082
9083         * gst/gsttypes.h:
9084           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
9085           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
9086           just causes support madness
9087         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9088           make it work without this
9089         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
9090         (gst_file_index_commit):
9091           glib IO channels don't want binary mode
9092         * testsuite/bytestream/filepadsink.c: (main):
9093         * testsuite/bytestream/test1.c: (read_param_file):
9094           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
9095
9096 2004-07-12  Benjamin Otte  <otte@gnome.org>
9097
9098         * gst/gstelement.c: (gst_element_class_init),
9099         (gst_element_set_state), (gst_element_set_state_func):
9100           virutalize gst_element_set_state, use set_state member in class
9101           struct that was already added in 0.7 for this.
9102         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
9103         (gst_bin_change_state):
9104           make gst_bin_foreach works similar to other foreach functions, plug
9105           memleaks in it. Make functions using it work with the new approach.
9106           Document gst_bin_foreach, so it can be exported if we want to
9107         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
9108           use virtualized set_state to make set_state on bins set the state of
9109           all its children.
9110
9111 2004-07-12  Benjamin Otte  <otte@gnome.org>
9112
9113         * configure.ac:
9114           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
9115           http://bugs.gentoo.org/show_bug.cgi?id=53967)
9116         * gst/gstpad.c: (gst_pad_alloc_buffer):
9117           allow buffer_alloc functions to return NULL and allocate a normal
9118           buffer in that case
9119
9120 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
9121         * gst/elements/gstfilesink.c:
9122         * gst/elements/gstfilesrc.c:
9123         * gst/indexers/gstfileindex.c:
9124         * gst/gsttypes.h:
9125         * testsuite/bytestream/filepadsink.c:
9126         * testsuite/bytestream/test1.c:
9127           Handle binary files under Windows
9128
9129 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
9130         * docs/manual/win32.xml:
9131         * win32/config.h:
9132         * win32/gst-register.vcproj:
9133         * win32/gstreamer.def:
9134           Update to another gettext public build
9135
9136 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
9137         * gst/gstplugin.c:
9138           Fix an impossible C syntax
9139         * win32/config.h:
9140           Disable i18n under Windows for the moment
9141         * win32/gst-register.vcproj:
9142           Use this configuration
9143
9144 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
9145         * docs/manual/quotes.xml:
9146           Keep the quotes file alive
9147         * docs/random/ds/0.9-suggested-changes:
9148           Add the suggestion of including a 'rowstride' as part of video
9149           format caps
9150
9151 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9152
9153         * gst/gstelement.c: (gst_element_set_state),
9154         (gst_element_change_state):
9155           d'oh.  Set PENDING state correctly before forcing bin to change.
9156         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9157         (gst_structure_parse_fixed_list):
9158         * gst/schedulers/gstoptimalscheduler.c:
9159         (gst_opt_scheduler_state_transition):
9160         * testsuite/states/parent.c: (main):
9161           remove comment now that it's fixed.
9162
9163 2004-07-11  Benjamin Otte  <otte@gnome.org>
9164
9165         * gst/gstclock.h:
9166           GST_SECOND shouldn't cause a conversion to unsigned.
9167         * testsuite/clock/.cvsignore:
9168         * testsuite/clock/Makefile.am:
9169         * testsuite/clock/signedness.c: (main):
9170           make sure it never will again
9171
9172 2004-07-11  Andy Wingo  <wingo@pobox.com>
9173
9174         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
9175         whose state is higher than the bin state, raise the bin state to
9176         ensure that bin state := highest child state.
9177         
9178 2004-07-11  Andy Wingo  <wingo@pobox.com>
9179
9180         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
9181         procedure on the children of a bin. Assumes that the procedure can
9182         change the set of children.
9183         (set_kid_state_func): New static function.
9184         (gst_bin_change_state): Use gst_bin_foreach to call
9185         set_kid_state_func. Fixes a bug: if a child had a state-change
9186         handler that removes it from the bin, there would be a segfault.
9187         Hopefully it should also work in the case where the state-change
9188         handler on one child adds or removes other children. In any case,
9189         fixes should go to gst_bin_foreach.
9190
9191 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9192
9193         * gst/gstelement.c: (gst_element_set_state):
9194           compatibility fix for latest plugins release.  Change loop back
9195           to while {}
9196
9197 2004-07-09  Wim Taymans  <wim@fluendo.com>
9198
9199         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
9200         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
9201         (gst_thread_main_loop):
9202         Since remove is virtual in GstBin we must not assume the 
9203         elements GList to have anothing useful.
9204         Add some more logging to GstThread and be a bit more paranoid
9205         when resetting the scheduler.
9206         Set the state of the bin to NULL before removing the children.
9207
9208 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
9209
9210         * testsuite/threads/Makefile.am:
9211         * testsuite/threads/threadg.c:
9212           added test to check if problem when removing all elements from a
9213           GstThread before setting GstThread state to NULL
9214
9215 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9216
9217         * docs/gst/tmpl/gstelement.sgml:
9218         * docs/gst/tmpl/gsttypes.sgml:
9219         * gst/gstbin.c: (gst_bin_change_state):
9220         * gst/gstelement.c: (gst_element_set_state),
9221         (gst_element_change_state):
9222           rework so that for bins we try to set the state on all children
9223           as well even if the bin is in the correct state already.
9224           change while to do so at least one iteration is done.
9225           For regular elements, we fall back to the previous behaviour for
9226           now since we first need a new plugins release.
9227         * testsuite/states/parent.c: (main):
9228           test for this case
9229           Fixes #123774
9230
9231 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9232
9233         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
9234         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
9235         (gst_queue_release_locks), (gst_queue_change_state),
9236         (gst_queue_set_property):
9237           add proper lock debugging.  Change dispose to finalize, since
9238           we're freeing mutexes and other stuff which should happen only once.
9239
9240 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9241
9242         * docs/gst/tmpl/gstelement.sgml:
9243         * docs/gst/tmpl/gstplugin.sgml:
9244         * docs/gst/tmpl/gsttypes.sgml:
9245         * docs/pwg/building-state.xml:
9246         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
9247         * gst/gstelement.c: (gst_element_change_state):
9248         * gst/gstthread.c: (gst_thread_change_state):
9249           catch wrong state changes in element base class.
9250
9251 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9252
9253         * gst/gstinfo.h:
9254           clean up layout a little.
9255
9256 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9257
9258         * configure.ac:
9259         * testsuite/Makefile.am:
9260         * testsuite/states/Makefile.am:
9261         * testsuite/states/parent.c: (main):
9262           re-enable states testsuite dir.  Add test for state changes and
9263           parent behaviour
9264
9265 2004-07-09  Wim Taymans  <wim@fluendo.com>
9266
9267         * gst/schedulers/gstoptimalscheduler.c:
9268         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
9269         (element_get_reachables_func), (element_get_reachables),
9270         (debug_element), (rechain_group), (group_migrate_connected),
9271         (gst_opt_scheduler_pad_unlink):
9272         Do not try to migrate decoupled elements to a new group since
9273         they are not added to groups.
9274
9275 2004-07-08  Benjamin Otte  <otte@gnome.org>
9276
9277         * gst/gstelement.c: (gst_element_error_func):
9278           make reentrant (= allow removing elements in error handler)
9279
9280 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9281
9282         * gst/gstpad.c: (gst_pad_event_default_dispatch),
9283         (gst_pad_send_event), (gst_pad_call_chain_function):
9284           events sent to elements below PAUSED cannot be handled, so
9285           don't try to
9286
9287 2004-07-08  Wim Taymans  <wim@fluendo.com>
9288
9289         * gst/schedulers/gstoptimalscheduler.c:
9290         (chain_recursively_migrate_group), (create_group),
9291         (schedule_group), (gst_opt_scheduler_pad_link),
9292         (group_elements_set_visited), (element_get_reachables_func),
9293         (element_get_reachables), (group_can_reach_group), (debug_element),
9294         (rechain_group), (group_migrate_connected),
9295         (gst_opt_scheduler_pad_unlink):
9296         * testsuite/schedulers/Makefile.am:
9297         Implemented group splitting and rechaining.
9298         Fixes 143777 and 143777-2 in the testsuite.
9299
9300 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9301
9302         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
9303           extra debugging
9304         * gst/gstevent.h:
9305         * gst/gstinfo.c: (gst_debug_log_default):
9306           print time nicely.  add thread pointer until someone figures out
9307           a completely portable way of getting at thread id's.
9308         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
9309         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
9310         (gst_pad_call_chain_function):
9311           extra debugging
9312         * gst/schedulers/gstoptimalscheduler.c:
9313         (get_group_schedule_function), (loop_group_schedule_function),
9314         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9315         (pad_clear_queued), (gst_opt_scheduler_iterate):
9316           rename BUFPEN and friends to DATAPEN since that's what they are.
9317
9318 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9319
9320         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
9321         * gst/gstbuffer.h:
9322         * gst/gstpad.c:
9323           cleanups and debugging
9324
9325 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9326
9327         * configure.ac:
9328         * gst/gstvalue.c: (gst_value_compare_enum),
9329         (gst_value_serialize_enum), (gst_value_deserialize_enum),
9330         (gst_value_can_compare), (gst_value_compare):
9331         * testsuite/Makefile.am:
9332         * testsuite/enumcaps/Makefile.am:
9333         * testsuite/enumcaps/enumcaps.c:
9334           Fix enum serialization, deserialization, comparison in caps, add
9335           a test to ensure that this continues working in the future.
9336
9337 2004-07-06  David Schleef  <ds@schleef.org>
9338
9339         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
9340         Fix memleak.
9341
9342 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9343
9344         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
9345         * gst/gstplugin.h:
9346         * gst/registries/gstxmlregistry.c:
9347         (plugin_times_older_than_recurse), (plugin_times_older_than),
9348         (gst_xml_registry_parse_padtemplate):
9349           only rebuild registry when actual plugins have a newer time than
9350           the registry.  Fixes #145520
9351
9352 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9353
9354         * docs/manual/manual.xml:
9355         * docs/manual/win32.xml:
9356           add chapter on win32 building.  fixes #142422
9357
9358 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9359
9360         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
9361
9362         * gst/autoplug/gstspider.c: (gst_spider_init),
9363         (gst_spider_dispose):
9364           fix spider memleaks.  fixes #137863
9365
9366 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9367
9368         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
9369
9370         * gst/schedulers/gstoptimalscheduler.c:
9371         (gst_opt_scheduler_pad_unlink):
9372           fix SIGBUS error, fixes #145338
9373
9374 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9375
9376         * gst/gstobject.c: (gst_object_replace):
9377         * gst/gstscheduler.c: (gst_scheduler_get_clock):
9378         * gst/gstsystemclock.c: (gst_system_clock_obtain):
9379           clean up clock lifecycle.  Fixes #109831
9380
9381 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9382
9383         * po/LINGUAS:
9384         * po/cs.po:
9385           added Czech translation (Miloslav Trmac)
9386
9387 2004-07-04  David Schleef  <ds@schleef.org>
9388
9389         * tools/Makefile.am:
9390         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
9391
9392 2004-07-04  David Schleef  <ds@schleef.org>
9393
9394         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
9395
9396 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9397
9398         * gst/gstbin.c: (gst_bin_restore_thyself):
9399           chain to parent restore so the bins get restored correctly
9400           in the editor
9401
9402 2004-07-03  David Schleef  <ds@schleef.org>
9403
9404         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
9405         Actually do something in these functions, like before the big
9406         caps change.  (bug #145137)
9407
9408 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9409
9410         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
9411         (gst_element_get_compatible_pad_filtered):
9412         * gst/gstthread.c: (gst_thread_main_loop):
9413           more debugging
9414
9415 2004-07-02  David Schleef  <ds@schleef.org>
9416
9417         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
9418         * gst/gstobject.h:
9419         * gst/gstparse.h:
9420         * gst/gsttrace.h:
9421         * gst/gstxml.h:
9422
9423 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9424
9425         * gst/gstpad.c: (gst_pad_check_schedulers),
9426         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
9427         (gst_pad_link_prepare):
9428           revert until testsuite is fixed
9429
9430 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9431
9432         * testsuite/Makefile.am:
9433         * testsuite/caps/filtercaps.c: (main):
9434         * testsuite/clock/clock1.c: (main):
9435         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
9436           fix some more tests
9437
9438 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9439
9440         * testsuite/cleanup/cleanup1.c: (create_pipeline):
9441         * testsuite/cleanup/cleanup2.c: (create_pipeline):
9442         * testsuite/cleanup/cleanup4.c: (main):
9443           fix testsuite
9444
9445 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9446
9447         * libs/gst/control/control.c:
9448         * libs/gst/control/dparam.c:
9449         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
9450         * libs/gst/control/dparammanager.c:
9451         * libs/gst/control/dparammanager.h:
9452         * testsuite/dynparams/Makefile.am:
9453         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
9454         (gst_dptest_change_state), (gst_dptest_chain), (main):
9455           fix testcase for dparams
9456           add debugging category
9457
9458 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9459
9460         * testsuite/Rules:
9461           change path
9462
9463 2004-07-02  Benjamin Otte  <otte@gnome.org>
9464
9465         * tests/.cvsignore:
9466         * tests/Makefile.am:
9467         * tests/mass_elements.c: (gst_get_current_time), (main):
9468           add simple benchmark to test various speeds of fakesrc ! identity !
9469           identity ! ... ! fakesink.
9470           Usage: mass_elements [num_identities] [num_buffers]
9471           If not specified they default to 1000.
9472
9473 2004-07-02  Benjamin Otte  <otte@gnome.org>
9474
9475         * gst/gstpad.c: (gst_pad_check_schedulers),
9476         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
9477         (gst_pad_link_prepare):
9478           check that pads that get linked belong to the same manager. The old
9479           code allowed linking elements before putting them into bins, so it
9480           worked to link them and then put them in different threads, which
9481           lead to weird behaviour.
9482           Since this effectively disallows linking elements before putting
9483           them in a bin, some applications might not work after this and error
9484           out. If these applications are too critical, we might need to revert
9485           that patch. Please test this before the next release...
9486
9487 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9488
9489         * gst/gstpad.c: (gst_pad_get_caps):
9490           throw an error if the getcaps function does not return a subset of
9491           the template caps.
9492         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
9493           make disconts without position info an error in debugging
9494         * tests/spidey_bench.c: (handoff), (main):
9495           don't count first try when averaging
9496
9497 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9498
9499         * gst/gstplugin.c: (gst_plugin_load_file):
9500           figure out problem with dynamic test
9501
9502 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9503
9504         * docs/gst/Makefile.am:
9505           fix docs build
9506
9507 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9508
9509         * po/POTFILES.in:
9510         * po/af.po:
9511         * po/az.po:
9512         * po/en_GB.po:
9513         * po/fr.po:
9514         * po/nl.po:
9515         * po/sr.po:
9516         * po/sv.po:
9517         * po/tr.po:
9518         * po/uk.po:
9519         * tools/gst-register.c: (plugin_added_func), (main):
9520           i18n-ize -register, fix plural
9521
9522 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9523
9524         * gst/elements/gstidentity.c: (gst_identity_class_init),
9525         (gst_identity_init), (gst_identity_chain),
9526         (gst_identity_set_property), (gst_identity_get_property):
9527         * gst/elements/gstidentity.h:
9528           check for perfect stream
9529
9530 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9531
9532         * gst/elements/gstidentity.c: (gst_identity_chain):
9533           print offset_end
9534
9535 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9536
9537         * docs/gst/Makefile.am:
9538         * docs/gst/gstreamer-docs.sgml:
9539           doc fixes
9540
9541 2004-06-24  David Schleef  <ds@schleef.org>
9542
9543         * autogen.sh:  Remove call to env, since the buildbot isn't
9544         broken anymore.
9545
9546 2004-06-24  Wim Taymans  <wim@fluendo.com>
9547
9548         * gst/elements/Makefile.am:
9549         * gst/elements/gstelements.c:
9550         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
9551         (gst_multifdsink_class_init), (gst_multifdsink_init),
9552         (gst_multifdsink_add), (gst_multifdsink_remove),
9553         (gst_multifdsink_clear), (gst_multifdsink_chain),
9554         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
9555         * gst/elements/gstmultifdsink.h:
9556         Added an element that writes to multiple filedescriptors at once.
9557
9558 2004-06-24  Benjamin Otte  <otte@gnome.org>
9559
9560         * gst/parse/grammar.y:
9561           don't try to link elements before they have been added to bins
9562
9563 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9564
9565         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
9566         (gst_file_pad_get_length):
9567         * libs/gst/bytestream/filepad.h:
9568           add 2 new functions
9569
9570 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
9571
9572         * docs/gst/gstreamer-sections.txt:
9573         remove from docs, the define that Benjamin removed from gstelement.h
9574
9575 2004-06-22  Benjamin Otte  <otte@gnome.org>
9576
9577         * gst/gstelement.h:
9578           remove define that referenced a nonexisting GstElement struct member
9579
9580 2004-06-20  Benjamin Otte  <otte@gnome.org>
9581
9582         * gst/gstdata.c: (gst_data_is_writable):
9583           whoops, return values were wrong, so writable data was marked as
9584           non-writable and vice versa. (fixes #143953, spotted by Francis
9585           Labonte)
9586           Shows how rarely we need to copy data ;)
9587
9588 2004-06-20  Benjamin Otte  <otte@gnome.org>
9589
9590         * testsuite/schedulers/.cvsignore:
9591         * testsuite/schedulers/Makefile.am:
9592         * testsuite/schedulers/143777-2.c: (main):
9593           add test for opt breakage in bug #143777
9594
9595 2004-06-20  Benjamin Otte  <otte@gnome.org>
9596
9597         * gst/gstpad.c: (gst_pad_call_chain_function):
9598           check for if we were unlinked while inside the chainfunction (fixes
9599           entrygthread having issues with #143777)
9600         * testsuite/schedulers/143777.c: (main):
9601         * testsuite/schedulers/Makefile.am:
9602           add a test for that fix
9603
9604 2004-06-20  Benjamin Otte  <otte@gnome.org>
9605
9606         * gst/gstvalue.c: (gst_value_set_int_range):
9607           test that start is smaller then end
9608         * libs/gst/bytestream/Makefile.am:
9609         * libs/gst/bytestream/filepad.c: 
9610         * libs/gst/bytestream/filepad.h:
9611           add GstFilePad - a pad that behaves like a FILE*
9612         * testsuite/bytestream/.cvsignore:
9613         * testsuite/bytestream/Makefile.am:
9614         * testsuite/bytestream/filepadsink.c: 
9615           test for the GstFilePad
9616
9617 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9618
9619         * gst/elements/gstidentity.c: (gst_identity_class_init),
9620         (gst_identity_init), (gst_identity_set_clock),
9621         (gst_identity_chain), (gst_identity_set_property),
9622         (gst_identity_get_property):
9623         * gst/elements/gstidentity.h:
9624         * gst/gstclock.c: (gst_clock_id_wait):
9625           add a "sync" property to sync to the clock
9626
9627 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9628
9629         * gst/gstelementfactory.c: (gst_element_factory_create):
9630           make the freakin "elementfactory bla has no type" message more
9631           useful. So we actually can do something when someone shows up
9632           complaining about it.
9633
9634 2004-06-15  Johan Dahlin  <johan@gnome.org>
9635
9636         * tools/gst-inspect.c (main): Fallback to plugin if no element is
9637         found. This matches the old behavior better. Thanks to Thomas for
9638         pointing out.
9639
9640 2004-06-14  David Schleef  <ds@schleef.org>
9641
9642         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
9643         -fomit-frame-pointer.  Appears to generate correct code in
9644         other cases as well.
9645
9646 2004-06-14  Johan Dahlin  <johan@gnome.org>
9647
9648         * tools/gst-inspect.c (main): Add two new command line options: -a
9649         to print all elements and -n to print the name on each line. Also
9650         fix some error reporting.
9651         (main): Simplify, remove -n and always print names if -a is specified
9652
9653 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
9654
9655         * win32/gstconfig.h:
9656         * win32/GSTreamer.vcproj:
9657         * win32/Makefile:
9658         * gst/gstconfig.h.in:
9659         * gst/gst.h:
9660         * gst/gstbin.h:
9661         * gst/gstelement.h:
9662         * gst/gstevent.h:
9663         * gst/gstobject.h:
9664         * gst/gstpad.h:
9665         * docs/gst/gstreamer-sections.txt:
9666         * docs/gst/tmpl/gstconfig.sgml:
9667           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
9668
9669 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
9670         * docs/gst/gstreamer-sections.txt:
9671         * docs/gst/tmpl/gstconfig.sgml:
9672         Add the GSTREAMER_EXPORT macro to the docs
9673
9674 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
9675
9676         * tools/gst-compprep.c: (handle_xmlerror), (main):
9677         Add a check for the version that introduced SetStructuredError to fix
9678         the build on FC1
9679
9680 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9681
9682         * win32/msvc71.sln:
9683         * win32/testsuite/:
9684           prepare to compile the testsuite with MSVC
9685
9686 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9687
9688         * docs/manual/win32.xml:
9689           attempt to transform the Win32 README into an XML doc
9690
9691 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9692
9693         * gst/gst.c:
9694         * gst/gstbin.*:
9695         * gst/config.h.in:
9696         * gst/gstelement.*:
9697         * gst/gstevent.h:
9698         * gst/gstobject.*:
9699         * gst/gstpad.h:
9700         * tools/gst-register.c:
9701         * win32/gstreamer.def:
9702           extern symbols are now exported for the Windows DLL
9703
9704 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9705
9706         * gst/gstinfo.h:
9707           fix a problem to enable/disable DEBUG under MSVC
9708
9709 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9710
9711         * win32/:
9712           enable more debug code in DEBUG build
9713
9714 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9715
9716         * win32/config.h:
9717         * gst/gst-i18n-app.h:
9718           enable NLS under Windows
9719
9720 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
9721         * tools/gst-compprep.c: (handle_xmlerror), (main):
9722           Make an error that baffled me a bit clearer
9723
9724 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9725
9726         * gst/gstqueue.c:
9727           don't use g_queue_get_length () because it's 2.4, use ->length
9728
9729 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
9730
9731         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
9732
9733         * tools/gst-inspect.c: (print_signal_info):
9734           don't free random data twice. (fixes #144185)
9735
9736 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9737
9738         * gst/gstqueue.c:
9739         * gst/gstqueue.h:
9740           fix removing from the wrong queue on event timeout
9741           fix disposing of the event queue by casting correctly
9742           add mutexes for handling the event queue
9743           someone was sleeping when fixing queue last time around :)
9744
9745 2004-06-10  Johan Dahlin  <johan@gnome.org>
9746
9747         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
9748         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
9749
9750 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9751
9752         * docs/random/gdp:
9753         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
9754         * libs/gst/dataprotocol/dataprotocol.c:
9755         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9756         (gst_dp_buffer_from_header):
9757         * libs/gst/dataprotocol/dataprotocol.h:
9758         * libs/gst/dataprotocol/dp-private.h:
9759           rev version to 0.1, add buffer flags and copy them
9760
9761 2004-06-09  Johan Dahlin  <johan@gnome.org>
9762
9763         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
9764         the flags from the buffer we're copying.
9765
9766 2004-06-09  Wim Taymans  <wim@fluendo.com>
9767
9768         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
9769         * gst/elements/gstidentity.c: (gst_identity_init),
9770         (gst_identity_chain):
9771         Print more buffer info in fakesink.
9772         Make identity output similar to fakesink.
9773
9774 2004-06-07  Daniel Gazard  <dany42@free.fr>
9775
9776         reviewed by Benjamin Otte  <otte@gnome.org>
9777
9778         * configure.ac:
9779           fix cross compiling not working. (fixes #143741)
9780
9781 2004-06-07  Benjamin Otte  <otte@gnome.org>
9782
9783         * gst/gstelement.c: (gst_element_set_time_delay):
9784           add failure check
9785         * gst/gstinfo.h:
9786           put brackets around macro arguments of GST_TIME_ARGS, add note to
9787           move it to correct header in 0.9
9788
9789 2004-06-07  Benjamin Otte  <otte@gnome.org>
9790
9791         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
9792         (gst_file_index_load), (_file_index_id_save_entries),
9793         (gst_file_index_commit), (gst_file_index_add_association),
9794         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
9795         (gst_file_index_plugin_init):
9796           make debugging use a default category
9797
9798 2004-06-06  David Moore  <dcm@acm.org>
9799
9800         reviewed by Benjamin Otte  <otte@gnome.org>
9801
9802         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9803         (gst_fdsrc_change_state):
9804           reset offset counter when going READY => PAUSED. (fixes #142903)
9805
9806 2004-06-06  ed@catmur.co.uk
9807
9808         reviewed by Benjamin Otte  <otte@gnome.org>
9809
9810         * gst/registries/gstxmlregistry.c:
9811         (gst_xml_registry_rebuild_recurse):
9812           don't rely on g_dir_open to figure out if a file is a directory, use
9813           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
9814           directories. (fixes #142850)
9815
9816 2004-06-06  Benjamin Otte  <otte@gnome.org>
9817
9818         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
9819           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
9820         * libs/gst/bytestream/adapter.c:
9821         * libs/gst/bytestream/adapter.h:
9822           fix copyright in header and typo in debugging category name
9823
9824 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9825
9826         * configure.ac:
9827           bump nano to cvs
9828
9829 === release 0.8.3 ===
9830
9831 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9832
9833         * configure.ac:
9834           update libtool versioning
9835           do a new release
9836         * docs/gst/tmpl/gstelement.sgml:
9837         * docs/gst/tmpl/gsttypes.sgml:
9838         * gst/gstinfo.c: (_gst_debug_init):
9839           put back GST_CAT_DATAFLOW to fix API breakage
9840
9841 2004-06-04  David Schleef  <ds@schleef.org>
9842
9843         * autogen.sh: Add a temporary 'env' to test buildbot problems.
9844
9845 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9846
9847         * configure.ac:
9848           bump nano to cvs
9849
9850 === release 0.8.2 ===
9851
9852 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9853
9854         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
9855           check GST_DEBUG environment variable which is parsed the same way
9856           as --gst-debug=
9857
9858 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9859
9860         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
9861                             gstmd5sink.c gstshaper.c gsttee.c
9862                             gsttypefindelement.c
9863         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
9864
9865           - removing trailing commas at end of enums
9866             it is correct C99 code but C90 compilers would complain
9867             (AIX, Forte, ...)
9868             ('should' fix #143290, at least partially)
9869
9870 2004-05-27  Wim Taymans  <wim@fluendo.com>
9871
9872         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
9873         (chain_group_set_enabled), (create_group), (add_to_group),
9874         (merge_groups), (setup_group_scheduler), (group_elements),
9875         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
9876         Don't try to follow the pad connections with other groups
9877         when a loop based element is added to the scheduler because
9878         the bin will inform the scheduler about the pad links a little
9879         later.
9880
9881 2004-05-27  Wim Taymans  <wim@fluendo.com>
9882
9883         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
9884         (remove_from_chain), (chain_group_set_enabled),
9885         (setup_group_scheduler), (group_element_set_enabled),
9886         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
9887         (gst_opt_scheduler_show):
9888         Elements without a group can do a state change as well, just wait
9889         with the setup of the scheduling function when it is added to a
9890         chain.
9891
9892 2004-05-27  Wim Taymans  <wim@fluendo.com>
9893
9894         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
9895         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
9896         (merge_groups), (setup_group_scheduler),
9897         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
9898         (gst_opt_scheduler_show):
9899         Fixes to maintain internal consistency of the scheduler data
9900         structures. 
9901          - adding an enabled group to a chain should increment the
9902            number of enabled elements in that chain.
9903          - removing an enabled group from a chain could disable the
9904            chain.
9905          - removing a disabled group from a chain could enable the
9906            chain.
9907          - add g_assert when internal inconsistency is detected.
9908          - adding an element to a group could increase the number of
9909            links this group has with other groups.
9910          - merging two groups also merges the chains.
9911          - also show group links in the _show method.
9912            
9913
9914 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9915
9916         * gst/gstcaps.c: (gst_caps_structure_simplify):
9917           don't print error messages when there is no error
9918         * gst/gstvalue.c: (gst_value_compare_int_range):
9919           compare the second value, too
9920         * testsuite/caps/Makefile.am:
9921         * testsuite/caps/random.c: (assert_on_error), (main):
9922           add tests to make sure the two things above are checked for
9923
9924 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9925
9926         * configure.ac:
9927         * libs/gst/dataprotocol/Makefile.am:
9928         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
9929         * libs/gst/dataprotocol/dataprotocol.h:
9930           wrap header in GST_ENABLE_NEW.  make code use it
9931
9932 2004-05-23  Johan Dahlin  <johan@gnome.org>
9933
9934         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
9935         so verbose and print GstElement signal names all the time.
9936
9937 2004-05-22  David Schleef  <ds@schleef.org>
9938
9939         * gst/registries/gstxmlregistry.c:
9940         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
9941         (bug #142957)
9942
9943 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9944
9945         * configure.ac:
9946           scrub cflags for glib2 so gcc doesn't complain when glib is in
9947           /usr/local
9948
9949 2004-05-21  Johan Dahlin  <johan@gnome.org>
9950
9951         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
9952         __GNUC__, patch from Brian Cameron, fixes bug #142804
9953
9954 2004-05-20  David Schleef  <ds@schleef.org>
9955
9956         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
9957         comparison code.  (bug #142819)
9958
9959 2004-05-20  Wim Taymans  <wim@fluendo.com>
9960
9961         * gst/gstbuffer.c: (gst_buffer_default_copy):
9962         * gst/gstbuffer.h:
9963         Added Comment to a flag.
9964         copy relevant flags in _buffer_copy.
9965
9966 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9967
9968         reviewed by: Wim Taymans <wim at fluendo dot com>
9969
9970         * gst/gstbuffer.h:
9971           add GST_BUFFER_IN_CAPS buffer flag
9972         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9973         (gst_structure_parse_any_list), (gst_structure_parse_list),
9974         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
9975         * gst/gstvalue.c: (gst_value_serialize_any_list),
9976         (gst_value_transform_any_list_string),
9977         (gst_value_list_prepend_value), (gst_value_list_append_value),
9978         (gst_value_list_get_size), (gst_value_list_get_value),
9979         (gst_value_transform_list_string),
9980         (gst_value_transform_fixed_list_string),
9981         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
9982         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
9983         (_gst_value_initialize):
9984         * gst/gstvalue.h:
9985           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
9986           < , > as a format.
9987         * testsuite/caps/string-conversions.c: (main):
9988           add regression tests for < >
9989
9990 2004-05-20  Johan Dahlin  <johan@gnome.org>
9991
9992         * docs/gst/Makefile.am (all-local): Re-add
9993
9994 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9995
9996         * docs/gst/Makefile.am:
9997         * docs/gst/gstreamer-docs.sgml:
9998         * docs/libs/Makefile.am:
9999         * docs/libs/gstreamer-libs-docs.sgml:
10000           fix distcheck issues
10001
10002 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10003
10004         * libs/gst/dataprotocol/Makefile.am:
10005           add to autotest
10006
10007 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10008
10009         * libs/gst/dataprotocol/Makefile.am:
10010         * libs/gst/dataprotocol/dataprotocol.c:
10011         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
10012         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
10013         * libs/gst/dataprotocol/dp-private.h:
10014           use GST macros to read/write fixed length ints
10015           add some more asserts
10016
10017 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10018
10019         * docs/libs/gstreamer-libs-docs.sgml:
10020         * docs/libs/gstreamer-libs-sections.txt:
10021           remove idct and putbits
10022         * configure.ac:
10023         * docs/libs/tmpl/gstdataprotocol.sgml:
10024         * libs/gst/Makefile.am:
10025         * libs/gst/dataprotocol/Makefile.am:
10026         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
10027         (buffer_test), (caps_test), (event_test), (main):
10028         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
10029         (gst_dp_dump_byte_array), (gst_dp_init),
10030         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
10031         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
10032         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
10033         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
10034         (gst_dp_validate_header), (gst_dp_validate_payload),
10035         (gst_dp_validate_packet), (plugin_init):
10036         * libs/gst/dataprotocol/dataprotocol.h:
10037         * libs/gst/dataprotocol/dp-private.h:
10038           add dataprotocol
10039
10040 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10041
10042         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
10043           fix int variable deserialization and add a helper so we can actually
10044           debug this.
10045
10046 2004-05-18  David Schleef  <ds@schleef.org>
10047
10048         * testsuite/debug/commandline.c: (main): Call ./commandline, not
10049           argv[0].  Calling yourself is probably not the best way to
10050           construct a test like this, btw.
10051
10052 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10053
10054         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
10055           don't claim to be more intelligent than a scheduler when the
10056           scheduler claims the pipeline is stopped
10057         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
10058         (safe_cothread_destroy),
10059         (gst_entry_scheduler_remove_all_cothreads),
10060         (gst_entry_scheduler_reset), (_remove_cothread),
10061         (gst_entry_scheduler_state_transition):
10062           hold off cothread destruction if we're not in main cothread
10063         * configure.ac:
10064         * testsuite/Makefile.am:
10065           add new test dir
10066         * testsuite/schedulers/.cvsignore:
10067         * testsuite/schedulers/Makefile.am:
10068           add tests
10069         * testsuite/schedulers/relink.c: (cb_handoff), (main):
10070           check relinking and adding/removing elements from a running pipeline
10071         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
10072           check unlinking in a running pipeline
10073         * testsuite/schedulers/unref.c: (cb_handoff), (main):
10074           check unreffing a running pipeline
10075         * testsuite/schedulers/useless_iteration.c: (main):
10076           check iterating a pipeline that contains running threads works
10077
10078 2004-05-18  David Schleef  <ds@schleef.org>
10079
10080         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
10081           is false.
10082
10083 2004-05-18  Wim Taymans  <wim@fluendo.com>
10084
10085         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
10086         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
10087         Fixed an error introduced with patch for 1.63. When setting
10088         a get based element as the entry point in a group, make sure
10089         to mark the group as GET based.
10090
10091 2004-05-18  Wim Taymans  <wim@fluendo.com>
10092
10093         * gst/schedulers/gstoptimalscheduler.c: (create_group),
10094         (setup_group_scheduler), (loop_group_schedule_function),
10095         (gst_opt_scheduler_pad_link):
10096         Added some more debug info and fixed a bug where the group
10097         type was set to LOOP but it was in fact unknown.
10098
10099 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10100
10101         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
10102           make resetting scheduler work twice in a row
10103
10104 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10105
10106         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
10107         (CREATE_USERIALIZATION), (_gst_value_initialize),
10108         (gst_value_compare_float), (gst_value_serialize_float),
10109         (gst_value_deserialize_float), (gst_value_compare_enum),
10110         (gst_value_serialize_enum), (gst_value_deserialize_enum):
10111           add serialization and comparison functions for long, int64, enum and
10112           float values
10113         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
10114           use best serialization function in type hierarchy instead of only a
10115           matching one. This is required for enums to work.
10116         * gst/parse/grammar.y:
10117           use gst_caps_deserialize
10118         * testsuite/parse/Makefile.am:
10119           parse1 now works
10120         * testsuite/parse/parse1.c: (main):
10121           remove aggregator check, aggregator is broken, this test works now
10122           but fails because of bug #138012
10123         * testsuite/parse/parse2.c: (main):
10124           s/xvideosink/xvimagesink - this test looks a lot like we should
10125           disable it
10126
10127 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10128
10129         * gst/gstelement.c: (gst_element_class_init):
10130           whoops, store the signal id correctly
10131         * gst/schedulers/gstbasicscheduler.c:
10132         (gst_basic_scheduler_chain_wrapper):
10133           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
10134           chain function isn't linked
10135
10136 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
10137         * configure.ac:
10138         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
10139         support until we decide where the flags should be used
10140         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
10141         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
10142         * gst/gstpad.c: (gst_pad_link_call_link_functions):
10143         Output refused caps in the debug info
10144
10145 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10146
10147         * gst/elements/gstidentity.c: (gst_identity_chain):
10148           add duration debug
10149         * gst/gstinfo.c: (gst_debug_log_default):
10150           add timestamp
10151
10152 2004-05-13  Benjamin Otte  <otte@gnome.org>
10153
10154         * gst/gstpipeline.c: (gst_pipeline_dispose),
10155         (gst_pipeline_change_state):
10156           call gst_scheduler_reset on dispose (fixes #141416)
10157
10158 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10159
10160         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
10161           compute mapsize correctly
10162         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
10163           use correct datatypes when calling a varargs function
10164         * gst/elements/gsttypefindelement.c: (stop_typefinding):
10165           push a DISCONT event as first thing
10166         * gst/gst_private.h:
10167         * gst/gstinfo.c: (_gst_debug_init):
10168           remove GST_DATAFLOW debugging category
10169         * gst/gstbin.c: (gst_bin_iterate):
10170           use GST_SCHEDULING category
10171         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
10172         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
10173         (gst_pad_call_get_function):
10174           add GST_DATAFLOW to easily track flow of buffers or events.
10175         * gst/gstqueue.c: (gst_queue_get_type),
10176         (gst_queue_handle_pending_events), (gst_queue_chain),
10177         (gst_queue_get), (gst_queue_handle_src_event):
10178           use own static debugging category GST_DATAFLOW for dataflow,
10179           use DEBUG category for showing which path events go, use LOG
10180           category for buffers.
10181
10182 2004-05-10  David Schleef  <ds@schleef.org>
10183
10184         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
10185
10186 2004-05-10  David Schleef  <ds@schleef.org>
10187
10188         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
10189         symbols, because otherwise we don't know what they are.  Thanks,
10190         the GStreamer team.
10191         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
10192
10193 2004-05-10  David Schleef  <ds@schleef.org>
10194
10195         (from Steve Lhomme)
10196         * win32/Makefile: When using make clean the MS Visual Studio makefiles
10197         are deleted.  Fix.
10198         * win32/Makefile.inspect:
10199         * win32/Makefile.launch:
10200         * win32/Makefile.register:
10201
10202 2004-05-10  David Schleef  <ds@schleef.org>
10203
10204         * gst/gstinfo.h: Add missing inline function.
10205         * gst/gsttrace.c: add include
10206         * gst/parse/grammar.y: remove unused code
10207         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
10208         more portable.
10209         * tools/gst-register.c: wrap unistd.h
10210         
10211         More additions/fixes from Steve for the MSVC build.
10212         * win32/GStreamer.vcproj:
10213         * win32/Makefile:
10214         * win32/Makefile.inspect:
10215         * win32/Makefile.launch:
10216         * win32/Makefile.register:
10217         * win32/README.txt:
10218         * win32/gst-inspect.vcproj:
10219         * win32/gst-launch.vcproj:
10220         * win32/gst-register.vcproj:
10221         * win32/gstbytestream.def:
10222         * win32/gstbytestream.vcproj:
10223         * win32/gstconfig.h:
10224         * win32/gstelements.def:
10225         * win32/gstelements.vcproj:
10226         * win32/gstenumtypes.c:
10227         * win32/gstenumtypes.h:
10228         * win32/gstoptimalscheduler.def:
10229         * win32/gstoptimalscheduler.vcproj:
10230         * win32/gstreamer.def:
10231         * win32/gstspider.def:
10232         * win32/gstspider.vcproj:
10233         * win32/gstversion.h:
10234         * win32/msvc71.sln:
10235
10236 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10237
10238         * gst/gstelement.c: (gst_element_class_init),
10239         (gst_element_no_more_pads):
10240         * gst/gstelement.h:
10241           add gst_element_no_more_pads and the "no-more-pads" signal
10242
10243 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10244
10245         * gst/gstregistry.c: (gst_registry_add_plugin):
10246           refuse to add plugins when a plugin with same name is already
10247           registered. Fixes a bunch of "How to remove plugins?" issues.
10248           May lead to other problems though, let's test
10249
10250 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10251
10252         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
10253         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
10254         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
10255
10256 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10257
10258         * tests/Makefile.am: fix am16 issue
10259
10260 2004-05-09  Benjamin Otte  <otte@gnome.org>
10261
10262         * libs/gst/bytestream/Makefile.am:
10263           we should indeed add .c files to makefiles or they won't be built
10264           (d'oh)
10265
10266 2004-05-08  Benjamin Otte  <otte@gnome.org>
10267
10268         * gst/gstpad.c: (gst_pad_proxy_fixate):
10269           really reduce the set of caps
10270
10271 2004-05-08  Benjamin Otte  <otte@gnome.org>
10272
10273         * tests/Makefile.am:
10274         * tests/spidey_bench.c: (handoff), (main):
10275           add benchmark to test how long spider needs to create a pipeline
10276
10277 2004-05-08  Benjamin Otte  <otte@gnome.org>
10278
10279         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
10280           mark links as unengaged when unnegotiating instead of deactivating.
10281           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
10282
10283 2004-05-08  Benjamin Otte  <otte@gnome.org>
10284
10285         * docs/manual/helloworld.xml:
10286           s/audiosink/osssink (patch by Patrick Guimond)
10287
10288 2004-05-07  David Schleef  <ds@schleef.org>
10289
10290         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
10291         since it contains important stuff.
10292
10293 2004-05-07  David Schleef  <ds@schleef.org>
10294
10295         * testsuite/caps/caps.c: (test3), (main): A check for appending
10296         ANY caps.
10297
10298 2004-05-07  David Schleef  <ds@schleef.org>
10299
10300         * common/m4/as-compiler-flag.m4: Properly quote arguments,
10301         which may contain commas.  Fixes detection of -Wa,-mregnames
10302
10303 2004-05-06  David Schleef  <ds@schleef.org>
10304
10305         Changes to handle compilers that don't have variadic macro
10306         support.  In particular, glib headers define some inlines
10307         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
10308         builds.
10309         * gst/Makefile.am:
10310         * gst/cothreads.c:
10311         * gst/elements/gstfdsink.c:
10312         * gst/elements/gstfdsrc.c:
10313         * gst/elements/gstfilesink.c:
10314         * gst/elements/gstfilesrc.c:
10315         * gst/gst_private.h:
10316         * gst/gstatomic.c:
10317         * gst/gstcaps.c: (gst_caps_append):
10318         * gst/gstcpu.c: (gst_cpuid_i386):
10319         * gst/gstelement.c:
10320         * gst/gsterror.c:
10321         * gst/gstfilter.c:
10322         * gst/gstinfo.h:
10323         * gst/gstprobe.c:
10324         * gst/gstquery.c:
10325         * gst/gstregistry.c:
10326         * gst/gststructure.c:
10327         * gst/gsttaginterface.c:
10328         * gst/gsttrace.c: (gst_trace_new):
10329         * gst/gsttrashstack.c:
10330         * gst/gsturi.c:
10331         * gst/gstvalue.c:
10332         * gst/parse/grammar.y:
10333         * gst/parse/parse.l:
10334         * tools/gst-inspect.c: (main):
10335         * tools/gst-launch.c: (main):
10336         * tools/gst-xmlinspect.c: (PUT_STRING):
10337
10338 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10339
10340         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10341         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10342         * gst/elements/gstfilesrc.h:
10343           send NEW_MEDIA events correctly
10344         * gst/elements/gsttypefindelement.c: (start_typefinding),
10345         (gst_type_find_element_handle_event):
10346           restart typefinding when we get a NEW_MEDIA event
10347         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
10348         (gst_bin_dispose):
10349           don't die when someone removes elements in callbacks
10350         * gst/gstelement.c: (gst_element_change_state):
10351           improve debugging
10352         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
10353           we need a NEW_MEDIA event to engage a link
10354         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
10355           don't g_print debugging stuff
10356         * testsuite/caps/simplify.c: (check_caps):
10357
10358 2004-05-04  Benjamin Otte  <otte@gnome.org>
10359
10360         * gst/parse/grammar.y:
10361           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
10362
10363 2004-05-04  Benjamin Otte  <otte@gnome.org>
10364
10365         * testsuite/caps/renegotiate.c: (main):
10366           improve output in error case
10367
10368 2004-05-04  Benjamin Otte  <otte@gnome.org>
10369
10370         * gst/parse/grammar.y:
10371           fix assert to not trigger when there's no error argument
10372         * gst/parse/parse.l:
10373           fix definition of caps to allow more than two structures
10374         * testsuite/caps/Makefile.am:
10375         * testsuite/caps/renegotiate.c: (main):
10376           it's sinesrc and works in that case
10377
10378 2004-05-04  Wim Taymans  <wim@fluendo.com>
10379
10380         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
10381         (group_dec_link), (gst_opt_scheduler_pad_unlink):
10382         when removing an element from a group, we always need to
10383         decrement the link count that this group had with other 
10384         groups through the element.
10385         added an extra assert to catch inconsistencies when decrementing
10386         the link count.
10387
10388 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10389
10390         * configure.ac:
10391         * docs/gst/Makefile.am:
10392         * docs/gst/gstreamer-sections.txt:
10393         * docs/gst/tmpl/gstcompat.sgml:
10394         * examples/appreader/Makefile.am:
10395         * examples/cutter/Makefile.am:
10396         * examples/events/Makefile.am:
10397         * examples/helloworld/Makefile.am:
10398         * examples/helloworld2/Makefile.am:
10399         * examples/launch/Makefile.am:
10400         * examples/manual/Makefile.am:
10401         * examples/mixer/Makefile.am:
10402         * examples/pingpong/Makefile.am:
10403         * examples/plugins/Makefile.am:
10404         * examples/queue/Makefile.am:
10405         * examples/queue2/Makefile.am:
10406         * examples/queue3/Makefile.am:
10407         * examples/queue4/Makefile.am:
10408         * examples/retag/Makefile.am:
10409         * examples/thread/Makefile.am:
10410         * examples/typefind/Makefile.am:
10411         * examples/xml/Makefile.am:
10412         * gst/Makefile.am:
10413         * gst/autoplug/Makefile.am:
10414         * gst/elements/Makefile.am:
10415         * gst/gstcompat.h:
10416         * gst/indexers/Makefile.am:
10417         * gst/parse/Makefile.am:
10418         * gst/registries/Makefile.am:
10419         * gst/schedulers/Makefile.am:
10420         * libs/gst/bytestream/Makefile.am:
10421         * libs/gst/control/Makefile.am:
10422         * libs/gst/getbits/Makefile.am:
10423         * po/af.po:
10424         * po/az.po:
10425         * po/en_GB.po:
10426         * po/fr.po:
10427         * po/nl.po:
10428         * po/sr.po:
10429         * po/sv.po:
10430         * po/tr.po:
10431         * po/uk.po:
10432         * tests/Makefile.am:
10433         * tests/bufspeed/Makefile.am:
10434         * tests/instantiate/Makefile.am:
10435         * tests/memchunk/Makefile.am:
10436         * tests/muxing/Makefile.am:
10437         * tests/negotiation/Makefile.am:
10438         * tests/probes/Makefile.am:
10439         * tests/sched/Makefile.am:
10440         * tests/seeking/Makefile.am:
10441         * tests/threadstate/Makefile.am:
10442         * testsuite/caps/Makefile.am:
10443         * testsuite/cleanup/Makefile.am:
10444         * testsuite/dlopen/Makefile.am:
10445         * testsuite/dynparams/Makefile.am:
10446         * testsuite/plugin/Makefile.am:
10447         * testsuite/states/Makefile.am:
10448         * tools/Makefile.am:
10449           reorganize compile/link flags to be consistent
10450           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
10451
10452 2004-05-04  David Schleef  <ds@schleef.org>
10453
10454         The "once more, with feeling" check-in.
10455         * testsuite/caps/Makefile.am: dist caps_strings
10456         * testsuite/caps/renegotiate.c: (main): This test triggers a
10457           segfault in the core.  Marking as failing.
10458
10459 2004-05-03  David Schleef  <ds@schleef.org>
10460
10461         * testsuite/caps/deserialize.c: (main): Fix problems noticed
10462           by the build bots.
10463         * testsuite/caps/renegotiate.c: (main): Same.
10464
10465 2004-05-03  David Schleef  <ds@schleef.org>
10466
10467         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
10468
10469 2004-05-03  David Schleef  <ds@schleef.org>
10470
10471         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
10472           variable to find our source file.
10473
10474 2004-05-03  David Schleef  <ds@schleef.org>
10475
10476         * configure.ac:  Link plugins with libgstreamer and dependent
10477           libraries
10478         * testsuite/caps/Makefile.am:
10479         * testsuite/caps/caps_strings:
10480         * testsuite/caps/deserialize.c: (main): Add a little test to slog
10481           through a file of caps strings and test each one
10482
10483 2004-05-04  Benjamin Otte  <otte@gnome.org>
10484
10485         * libs/gst/bytestream/Makefile.am:
10486         * libs/gst/bytestream/adapter.c: 
10487         * libs/gst/bytestream/adapter.h:
10488           add GstAdapter, similar to bytestream, but doesn't require ugly event
10489           handling or uglier loopbased elements
10490
10491 2004-05-03  David Schleef  <ds@schleef.org>
10492
10493         * testsuite/caps/Makefile.am: Fix spelling of ??????????????????????
10494         * testsuite/caps/erathostenes.c:
10495         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
10496
10497 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10498
10499         * docs/pwg/pwg.xml:
10500           remove hardcoded stylesheet path (duh)
10501         * docs/random/release:
10502         * docs/gst/gstreamer-sections.txt:
10503         * gst/Makefile.am:
10504         * gst/gst.h:
10505         * gst/gst_private.h:
10506         * gst/gstcaps.c:
10507         * gst/gstevent.c:
10508         * gst/gstformat.c:
10509         * gst/gstinfo.c:
10510         * gst/gstinfo.h:
10511         * gst/gstinterface.c:
10512         * gst/gstmemchunk.c:
10513         * gst/gstprobe.c:
10514         * gst/gstquery.c:
10515         * gst/gstregistry.c:
10516         * gst/gstregistrypool.c:
10517         * gst/gststructure.c:
10518         * gst/gsttaginterface.c:
10519         * gst/gstthread.c:
10520         * gst/gsttrace.c:
10521         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
10522         * gst/gsturi.c:
10523         * gst/gstvalue.c:
10524           deprecate gst_info; remove gstlog.h
10525    
10526
10527 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10528
10529         * Makefile.am:
10530         * po/en_GB.po:
10531         * po/sv.po:
10532         * po/uk.po:
10533           updated translations
10534
10535 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10536
10537         * gst/gstbin.c: (gst_bin_dispose):
10538           better debugging
10539
10540 2004-05-03  Johan Dahlin  <johan@gnome.org>
10541
10542         * gst/schedulers/gstoptimalscheduler.c
10543         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
10544         really is a GstElement. Avoids critical when running gst-launch -v
10545         and a oggdemux/decoding pipeline.
10546
10547 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10548
10549         * docs/gst/tmpl/gstpipeline.sgml :
10550         * docs/manual/elements-api.xml :
10551                 doc fix by Patrick Guimond (Protector) from devel ML
10552                 reviewed by ronald
10553
10554 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10555
10556         * docs/gst/Makefile.am :
10557         * docs/libs/Makefile.am :
10558                 apply a patch from Arwed v. Merkatz so that gtk-doc
10559                 generated docs install (same for .devhelp file)
10560                 (fixes part 1 of #138836)
10561
10562 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10563
10564         * docs/faq/dependencies.xml: typo
10565         * docs/faq/getting.xml :
10566             - fix download URL for new gstreamer site
10567             - hide sf.net download page as latest version aren't there
10568             - fix apt URLs
10569             - fill "get via CVS" paragraph (link to dev page on the site)
10570         * docs/faq/general.xml:
10571             hide status tables as they no more exists
10572             change case on plugins license file to reflect reality
10573         * docs/faq/troubleshooting.xml:
10574             remove the wiki question/answer as there is no more wiki
10575
10576 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10577
10578         * gst/gsterror.h:
10579           include the headers needed for declarations used in this header
10580
10581 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10582
10583         * docs/random/uraeus/gstreamer_and_midi.txt :
10584           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
10585           (fixes #132288)
10586
10587 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
10588
10589         reviewed by Benjamin Otte  <otte@gnome.org>
10590
10591         * gst/schedulers/gthread-cothreads.h:
10592           free allocated data for main cothread, too when destroying context
10593           (fixes #141417)
10594
10595 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10596
10597         * docs/manual/goals.xml : remove duplicated paragraph at end 
10598         of doc page (fixes #141448)
10599
10600 2004-04-29  David Schleef  <ds@schleef.org>
10601
10602         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
10603         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
10604
10605 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10606
10607         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10608           fix property
10609         * gst/gstcaps.c:
10610           fix doc string
10611         * po/POTFILES.in:
10612           rename typefind source file
10613
10614 2004-04-28  David Schleef  <ds@schleef.org>
10615
10616         Several new files from Steve Lhomme's MSVC patch (bug #141317):
10617         * win32/GStreamer.vcproj:
10618         * win32/Makefile:
10619         * win32/config.h:
10620         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
10621         (_trewinddir), (_ttelldir), (_tseekdir):
10622         * win32/dirent.h:
10623         * win32/gst-inspect.vcproj:
10624         * win32/gst-launch.vcproj:
10625         * win32/gst-register.vcproj:
10626         * win32/gstbytestream.vcproj:
10627         * win32/gstelements.vcproj:
10628         * win32/gstoptimalscheduler.vcproj:
10629         * win32/gstspider.vcproj:
10630         * win32/gtchar.h:
10631         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
10632         * win32/mman.h:
10633         * win32/mman.inl:
10634         * win32/msvc71.sln:
10635
10636 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10637
10638         * gst/gst.c: (init_post):
10639         * gst/gstinfo.c:
10640           remove useless _gst_progname stuff
10641         * tools/gst-inspect.c: (print_field), (print_caps):
10642           improve caps output
10643
10644 2004-04-28  David Schleef  <ds@schleef.org>
10645
10646         Disable parsing of a lot of files that aren't part of the
10647         exported API.  Move corresponding template files to old/,
10648         waiting for removal when they don't contain anything
10649         interesting.
10650         * docs/gst/Makefile.am:
10651         * docs/gst/gstreamer-sections.txt:
10652         * docs/gst/tmpl/cothreads.sgml:
10653         * docs/gst/tmpl/cothreads_compat.sgml:
10654         * docs/gst/tmpl/gettext.sgml:
10655         * docs/gst/tmpl/gobject2gtk.sgml:
10656         * docs/gst/tmpl/grammar.tab.sgml:
10657         * docs/gst/tmpl/gst-i18n-app.sgml:
10658         * docs/gst/tmpl/gst-i18n-lib.sgml:
10659         * docs/gst/tmpl/gst_private.sgml:
10660         * docs/gst/tmpl/gstaggregator.sgml:
10661         * docs/gst/tmpl/gstarch.sgml:
10662         * docs/gst/tmpl/gstatomic_impl.sgml:
10663         * docs/gst/tmpl/gstbufferstore.sgml:
10664         * docs/gst/tmpl/gstdata_private.sgml:
10665         * docs/gst/tmpl/gstdisksink.sgml:
10666         * docs/gst/tmpl/gstdisksrc.sgml:
10667         * docs/gst/tmpl/gstelementfactory.sgml:
10668         * docs/gst/tmpl/gstextratypes.sgml:
10669         * docs/gst/tmpl/gstfakesink.sgml:
10670         * docs/gst/tmpl/gstfakesrc.sgml:
10671         * docs/gst/tmpl/gstfdsink.sgml:
10672         * docs/gst/tmpl/gstfdsrc.sgml:
10673         * docs/gst/tmpl/gstfilesink.sgml:
10674         * docs/gst/tmpl/gstfilesrc.sgml:
10675         * docs/gst/tmpl/gsthttpsrc.sgml:
10676         * docs/gst/tmpl/gstidentity.sgml:
10677         * docs/gst/tmpl/gstindexfactory.sgml:
10678         * docs/gst/tmpl/gstmarshal.sgml:
10679         * docs/gst/tmpl/gstmd5sink.sgml:
10680         * docs/gst/tmpl/gstmultidisksrc.sgml:
10681         * docs/gst/tmpl/gstmultifilesrc.sgml:
10682         * docs/gst/tmpl/gstpadtemplate.sgml:
10683         * docs/gst/tmpl/gstpipefilter.sgml:
10684         * docs/gst/tmpl/gstschedulerfactory.sgml:
10685         * docs/gst/tmpl/gstsearchfuncs.sgml:
10686         * docs/gst/tmpl/gstshaper.sgml:
10687         * docs/gst/tmpl/gstspider.sgml:
10688         * docs/gst/tmpl/gstspideridentity.sgml:
10689         * docs/gst/tmpl/gststatistics.sgml:
10690         * docs/gst/tmpl/gsttee.sgml:
10691         * docs/gst/tmpl/gsttimecache.sgml:
10692         * docs/gst/tmpl/gsttypefind.sgml:
10693         * docs/gst/tmpl/gsttypefindfactory.sgml:
10694         * docs/gst/tmpl/gstxmlregistry.sgml:
10695         * docs/gst/tmpl/gthread-cothreads.sgml:
10696         * docs/gst/tmpl/old/cothreads.sgml:
10697         * docs/gst/tmpl/old/cothreads_compat.sgml:
10698         * docs/gst/tmpl/old/gettext.sgml:
10699         * docs/gst/tmpl/old/gobject2gtk.sgml:
10700         * docs/gst/tmpl/old/grammar.tab.sgml:
10701         * docs/gst/tmpl/old/gst-i18n-app.sgml:
10702         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
10703         * docs/gst/tmpl/old/gst_private.sgml:
10704         * docs/gst/tmpl/old/gstaggregator.sgml:
10705         * docs/gst/tmpl/old/gstarch.sgml:
10706         * docs/gst/tmpl/old/gstatomic_impl.sgml:
10707         * docs/gst/tmpl/old/gstbufferstore.sgml:
10708         * docs/gst/tmpl/old/gstdata_private.sgml:
10709         * docs/gst/tmpl/old/gstdisksink.sgml:
10710         * docs/gst/tmpl/old/gstdisksrc.sgml:
10711         * docs/gst/tmpl/old/gstelementfactory.sgml:
10712         * docs/gst/tmpl/old/gstextratypes.sgml:
10713         * docs/gst/tmpl/old/gstfakesink.sgml:
10714         * docs/gst/tmpl/old/gstfakesrc.sgml:
10715         * docs/gst/tmpl/old/gstfdsink.sgml:
10716         * docs/gst/tmpl/old/gstfdsrc.sgml:
10717         * docs/gst/tmpl/old/gstfilesink.sgml:
10718         * docs/gst/tmpl/old/gstfilesrc.sgml:
10719         * docs/gst/tmpl/old/gsthttpsrc.sgml:
10720         * docs/gst/tmpl/old/gstidentity.sgml:
10721         * docs/gst/tmpl/old/gstindexfactory.sgml:
10722         * docs/gst/tmpl/old/gstmarshal.sgml:
10723         * docs/gst/tmpl/old/gstmd5sink.sgml:
10724         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
10725         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
10726         * docs/gst/tmpl/old/gstpadtemplate.sgml:
10727         * docs/gst/tmpl/old/gstpipefilter.sgml:
10728         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
10729         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
10730         * docs/gst/tmpl/old/gstshaper.sgml:
10731         * docs/gst/tmpl/old/gstspider.sgml:
10732         * docs/gst/tmpl/old/gstspideridentity.sgml:
10733         * docs/gst/tmpl/old/gststatistics.sgml:
10734         * docs/gst/tmpl/old/gsttee.sgml:
10735         * docs/gst/tmpl/old/gsttimecache.sgml:
10736         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
10737         * docs/gst/tmpl/old/gstxmlregistry.sgml:
10738         * docs/gst/tmpl/old/gthread-cothreads.sgml:
10739         * docs/gst/tmpl/old/types.sgml:
10740         * docs/gst/tmpl/types.sgml:
10741
10742         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
10743         gtkdoc-scan doesn't like files with the same name in different
10744         directories.
10745         * gst/elements/Makefile.am:
10746         * gst/elements/gstelements.c:
10747         * gst/elements/gsttypefind.c: 
10748         * gst/elements/gsttypefind.h:
10749         * gst/elements/gsttypefindelement.c:
10750         * gst/elements/gsttypefindelement.h:
10751
10752 2004-04-28  David Schleef  <ds@schleef.org>
10753
10754         A bunch of portability fixes, derived from Steve Lhomme's MSVC
10755         patch (bug #141317):
10756         * gst/gst-i18n-lib.h: Allow disabling gettext.
10757         * gst/gstatomic_impl.h: disable warning when it's dumb.
10758         * gst/gstclock.c: fix include
10759         * gst/gstcompat.h: fix variadic macro
10760         * gst/gstinfo.c: fix include
10761         * gst/gstmacros.h: add defines for inlines on MSVC
10762         * gst/gstplugin.c: fix includes
10763         * gst/gstregistry.c: fix includes
10764         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
10765         * gst/gstsystemclock.c: fix include
10766         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
10767         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
10768         * gst/registries/gstxmlregistry.c:
10769         (gst_xml_registry_parse_element_factory): fix use of non-portable
10770         functions
10771         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
10772         * libs/gst/control/dparammanager.h: same
10773
10774 2004-04-28  David Schleef  <ds@schleef.org>
10775
10776         Move a bunch of unused files to old/ with names that are
10777         not case-insensitive-unique.  These files still contain some
10778         useful information that needs to be merged into gstbin.sgml,
10779         etc., so they shouldn't be deleted yet.
10780         * docs/gst/tmpl/GstBin.sgml:
10781         * docs/gst/tmpl/GstBuffer.sgml:
10782         * docs/gst/tmpl/GstCaps.sgml:
10783         * docs/gst/tmpl/GstClock.sgml:
10784         * docs/gst/tmpl/GstCompat.sgml:
10785         * docs/gst/tmpl/GstData.sgml:
10786         * docs/gst/tmpl/GstElement.sgml:
10787         * docs/gst/tmpl/GstEvent.sgml:
10788         * docs/gst/tmpl/GstIndex.sgml:
10789         * docs/gst/tmpl/GstStructure.sgml:
10790         * docs/gst/tmpl/GstTag.sgml:
10791         * docs/gst/tmpl/old/GstBin.sgml:
10792         * docs/gst/tmpl/old/GstBuffer.sgml:
10793         * docs/gst/tmpl/old/GstCaps.sgml:
10794         * docs/gst/tmpl/old/GstClock.sgml:
10795         * docs/gst/tmpl/old/GstCompat.sgml:
10796         * docs/gst/tmpl/old/GstData.sgml:
10797         * docs/gst/tmpl/old/GstElement.sgml:
10798         * docs/gst/tmpl/old/GstEvent.sgml:
10799         * docs/gst/tmpl/old/GstIndex.sgml:
10800         * docs/gst/tmpl/old/GstStructure.sgml:
10801         * docs/gst/tmpl/old/GstTag.sgml:
10802
10803 2004-04-28  David Schleef  <ds@schleef.org>
10804
10805         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
10806         (gst_caps_append), (gst_caps_append_structure),
10807         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
10808         (gst_caps_set_simple), (gst_caps_set_simple_valist),
10809         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
10810         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
10811         (gst_caps_intersect), (gst_caps_normalize),
10812         (gst_caps_transform_to_string):  Patch from Tim-Philipp M??ller
10813         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
10814         * gst/gstcaps.h: use GST_IS_CAPS().
10815
10816 2004-04-26  David Schleef  <ds@schleef.org>
10817
10818         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
10819         assembly.  gcc doesn't handle it correctly. (bug #141083)
10820         * gst/gsttrashstack.h: same
10821
10822 2004-04-25  Benjamin Otte  <otte@gnome.org>
10823
10824         * gst/gstelement.c: (gst_element_change_state):
10825           fix assertion to do an int comparison
10826
10827 2004-04-25  Benjamin Otte  <otte@gnome.org>
10828
10829         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10830           better debugging output on error
10831
10832 2004-04-25  Benjamin Otte  <otte@gnome.org>
10833
10834         * gst/gstcaps.c: (gst_caps_subtract):
10835           fix memleak
10836
10837 2004-04-23  Benjamin Otte  <otte@gnome.org>
10838
10839         * gst/gstvalue.c: (gst_value_compare_buffer),
10840         (_gst_value_initialize):
10841           add comparison function for buffers
10842
10843 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10844
10845         * docs/pwg/pwg.xml:
10846           Just found out that this so-called "ima-wav" format is really
10847           just "dvi adpcm" (according to the MS WAV documentation). So
10848           renaming it. We didn't use it yet anyway.
10849
10850 2004-04-23  Benjamin Otte  <otte@gnome.org>
10851
10852         * gst/gstcaps.c: (gst_caps_is_always_compatible):
10853           call gst_caps_is_subset
10854
10855 2004-04-23  Benjamin Otte  <otte@gnome.org>
10856
10857         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
10858         (gst_caps_is_subset):
10859           add documentation
10860
10861 2004-04-23  Benjamin Otte  <otte@gnome.org>
10862           
10863         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
10864         (gst_caps_structure_subtract), (gst_caps_subtract),
10865         (gst_caps_structure_figure_out_union),
10866         (gst_caps_structure_simplify), (gst_caps_do_simplify):
10867           fix simplifying and subtracting not working correctly with optional
10868           properties
10869           solve assorted problems that make it now simplify ebven more
10870         * docs/gst/tmpl/gstcaps.sgml:
10871         * gst/gstcaps.h:
10872           make gst_caps_do_simplify return a bool to indicate if it simplified
10873         * testsuite/caps/simplify.c: (main):
10874           add more checks. The tests is quite a bit useless right now because
10875           the core is heavily simplifying itself.
10876         * testsuite/caps/caps.h:
10877           fix caps to contain all optional properties
10878
10879 2004-04-22  Benjamin Otte  <otte@gnome.org>
10880
10881         * docs/gst/tmpl/gstcaps.sgml:
10882         * docs/gst/tmpl/gstfilesrc.sgml:
10883         * docs/gst/tmpl/gststructure.sgml:
10884         * docs/gst/tmpl/gstvalue.sgml:
10885           update for recent API changes
10886         * gst/gstcaps.c: (gst_caps_do_simplify):
10887           fix to stop trying with a freed structure
10888         * gst/gstpad.c: (gst_pad_link_fixate):
10889           simplify caps
10890         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
10891           remove C++ comment
10892         * gst/gstpad.h:
10893           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
10894         * gst/gststructure.c: (gst_structure_value_get_generic_type),
10895         (gst_structure_to_string):
10896           keep the correct type when using lists of ranges
10897         * gst/gstvalue.c: (gst_value_list_prepend_value),
10898         (gst_value_list_append_value):
10899           copy the value before adding to the list (d'oh)
10900         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
10901         (gst_value_subtract_int_range_int_range):
10902           handle overflows correctly
10903         * gst/gstvalue.c: (gst_value_subtract_from_list):
10904           fix memleak
10905         * testsuite/caps/caps.h:
10906           add a caps that caused segfaults
10907
10908 2004-04-22  Benjamin Otte  <otte@gnome.org>
10909
10910         * testsuite/refcounting/pad.c: (main):
10911           fix test
10912
10913 2004-04-22  Benjamin Otte  <otte@gnome.org>
10914
10915         * gst/gstcaps.c: (gst_caps_subtract):
10916           allow subtracting ANY and EMPTY from ANY caps
10917
10918 2004-04-22  Benjamin Otte  <otte@gnome.org>
10919
10920         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
10921         (gst_caps_union):
10922           only simplify in functions that create new caps. Simplifying in
10923           gst_caps_append breaks tests.
10924
10925 2004-04-22  Benjamin Otte  <otte@gnome.org>
10926
10927         * gst/gstcaps.c: (gst_caps_structure_simplify):
10928           unset GValue after use
10929         * gst/gstcaps.c: (gst_caps_append), 
10930         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
10931           use gst_caps_simplify (reduces registry size by 30%)
10932         * gst/gstpad.c: (gst_pad_template_new):
10933           don't allow NULL caps
10934
10935 2004-04-22  Benjamin Otte  <otte@gnome.org>
10936
10937         * docs/gst/gstreamer-sections.txt:
10938           add gst_caps_do_simplify
10939         * gst/gstcaps.c:
10940           add documentation for gst_caps_do_simplify
10941         * gst/gstvalue.h:
10942           fix typo in gst_value_register_subtract_func declaration for gst-doc
10943
10944 2004-04-22  Benjamin Otte  <otte@gnome.org>
10945
10946         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10947           fix bug when converting from empty string.
10948         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
10949         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
10950           use gst_caps_new_empty to allocate a new caps. Only that function
10951           allocates memory for caps now.
10952         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
10953         (gst_caps_remove_structure):
10954           add ability to remove one structure (but not to header yet)
10955         * gst/gstcaps.c: (gst_caps_compare_structures),
10956         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
10957         (gst_caps_structure_simplify), (gst_caps_do_simplify),
10958         * gst/gstcaps.h:
10959           add gst_caps_do_simplify that tries to simplify a caps in place.
10960           Deprecate old gst_caps_simplify function.
10961         * testsuite/caps/caps.h:
10962           add caps.h containing a common set of caps to test against.
10963         * testsuite/caps/sets.c: (check_caps), (main):
10964           use it.
10965         * testsuite/caps/.cvsignore:
10966         * testsuite/caps/Makefile.am:
10967         * testsuite/caps/simplify.c: (check_caps), (main):
10968           add test to check correctness and efficency of caps simplification.
10969
10970 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
10971
10972         reviewed by Benjamin Otte  <otte@gnome.org>
10973
10974         * gst/gstparse.c: (_gst_parse_escape):
10975           Free the GString used in _gst_parse_escape()
10976
10977 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10978
10979         * gst/gstpad.c: (gst_pad_link_negotiate):
10980           refuse to link if the link is not possible
10981         * configure.ac:
10982         * testsuite/Makefile.am:
10983         * testsuite/negotiation/.cvsignore:
10984         * testsuite/negotiation/Makefile.am:
10985         * testsuite/negotiation/pad_link.c: (main):
10986           add test that checks the above behaviour
10987
10988 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10989
10990         * docs/gst/gstreamer-sections.txt:
10991           add newly added API
10992
10993 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10994
10995         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10996         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
10997         (gst_filesrc_open_file), (gst_filesrc_close_file),
10998         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
10999         * gst/elements/gstfilesrc.h:
11000           add support for non-regular files (#140734)
11001
11002 2004-04-21  Benjamin Otte  <otte@gnome.org>
11003
11004         * gst/gstpad.c: (gst_pad_link_fixate):
11005           add sophisticated error checking code to see if fixation functions
11006           did their fixation right
11007
11008 2004-04-21  Benjamin Otte  <otte@gnome.org>
11009
11010         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
11011           check for ANY caps before appending/unioning
11012         * gst/gstcaps.c: (gst_caps_is_subset),
11013         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
11014         (gst_caps_structure_subtract), (gst_caps_subtract):
11015         * gst/gstcaps.h:
11016           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
11017           the API. deprecate gst_caps_is_equal_fixed
11018         * gst/gstpad.c: (gst_pad_try_set_caps):
11019         * gst/gstqueue.c: (gst_queue_link):
11020           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
11021         * gst/gststructure.c: (gst_structure_get_name_id):
11022         * gst/gststructure.h:
11023           add function gst_structure_get_name_id
11024         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
11025         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
11026         (gst_value_subtract_int_range_int_range),
11027         (gst_value_subtract_double_double_range),
11028         (gst_value_subtract_double_range_double),
11029         (gst_value_subtract_double_range_double_range),
11030         (gst_value_subtract_from_list), (gst_value_subtract_list),
11031         (gst_value_can_intersect), (gst_value_subtract),
11032         (gst_value_can_subtract), (gst_value_register_subtract_func),
11033         (_gst_value_initialize):
11034         * gst/gstvalue.h:
11035           add support for subtracting values from each other. Note that
11036           subtracting means subtracting as in set theory. Required for caps
11037           stuff above.
11038         * testsuite/caps/.cvsignore:
11039         * testsuite/caps/Makefile.am:
11040         * testsuite/caps/erathostenes.c: (erathostenes), (main):
11041         * testsuite/caps/sets.c: (check_caps), (main):
11042         * testsuite/caps/subtract.c: (check_caps), (main):
11043           add tests for subtraction and equality code.
11044
11045 2004-04-20  David Schleef  <ds@schleef.org>
11046
11047         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
11048         * gst/indexers/Makefile.am:
11049         * gst/schedulers/Makefile.am:
11050         * libs/gst/bytestream/Makefile.am:
11051         * libs/gst/control/Makefile.am:
11052         * libs/gst/getbits/Makefile.am:
11053
11054 2004-04-20  David Schleef  <ds@schleef.org>
11055
11056         * common/as-libtool.mak: Fine-tune DLL building.
11057         * configure.ac: Link plugins against libgstreamer.  Define plugindir
11058         (like gst-plugins)
11059         * examples/plugins/Makefile.am: remove plugindir
11060         * gst/autoplug/Makefile.am: DLL building fixes
11061         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
11062         Windows.
11063         * gst/elements/gstelements.c: Conditionally disable pipefilter.
11064         * gst/indexers/Makefile.am: DLL building fixes
11065         * gst/schedulers/Makefile.am: DLL building fixes.
11066         * libs/gst/bytestream/Makefile.am: DLL building fixes.
11067         * libs/gst/control/Makefile.am: same
11068         * libs/gst/getbits/Makefile.am: same
11069         * testsuite/Makefile.am: New dlopen directory
11070         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
11071         when dlopened.
11072         * testsuite/dlopen/dlopen_gst.c: (main): same
11073         * testsuite/dlopen/loadgst.c: (do_test): same
11074
11075 2004-04-20  David Schleef  <ds@schleef.org>
11076
11077         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
11078         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
11079
11080 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11081
11082         * gst/gstelement.c: (gst_element_wait),
11083         (gst_element_set_time_delay), (gst_element_change_state):
11084           Use GST_TIME_*
11085
11086 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11087
11088         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
11089         (gst_spider_identity_plug):
11090           improve debugging messages
11091         * gst/gstbin.c: (gst_bin_remove_func):
11092           make sure the state_change function is only called with simple state
11093           transitions
11094
11095 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11096
11097         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
11098         (gst_fakesink_set_property), (gst_fakesink_chain):
11099         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
11100         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
11101         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
11102         * gst/elements/gstidentity.c: (gst_identity_chain),
11103         (gst_identity_set_property):
11104         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
11105         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
11106           add warnings to _set_property for unknown arguments
11107           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
11108
11109 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11110
11111         * Makefile.am:
11112         * docs/manuals.mak:
11113           add .po file download snippet
11114           fix a bug in the doc makefile
11115
11116 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11117
11118         * Makefile.am:
11119         * po/LINGUAS:
11120         * po/en_GB.po:
11121           Added en_GB translation (Gareth Owen)
11122
11123 2004-04-20  Johan Dahlin  <johan@gnome.org>
11124
11125         * gst/gstpad.c (_invent_event): Clean up
11126
11127 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11128
11129         * testsuite/caps/filtercaps.c: (main):
11130           fix test to test things correctly (caps are complicated)
11131
11132 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11133
11134         * testsuite/caps/Makefile.am:
11135         * testsuite/caps/filtercaps.c: (main):
11136           add test (that doesn't work right now, but should)
11137
11138 2004-04-19  David Schleef  <ds@schleef.org>
11139
11140         * configure.ac: Add test for allowing unaligned access.  Add define
11141         to put in gstconfig.h.
11142         * docs/gst/gstreamer-sections.txt: New symbols
11143         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
11144         * docs/gst/tmpl/gstfilesrc.sgml:
11145         * docs/gst/tmpl/gstparse.sgml:
11146         * docs/gst/tmpl/gsttypes.sgml:
11147         * docs/gst/tmpl/gstutils.sgml:
11148         * docs/gst/tmpl/gstvalue.sgml:
11149         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
11150         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
11151         on most !i386/!powerpc architectures.  From Daniel Gazard
11152         <daniel.gazard@free.fr>.  (bug #140156)
11153         * po/af.po: Check in changes made by gettext.
11154         * po/az.po:
11155         * po/fr.po:
11156         * po/nl.po:
11157         * po/sr.po:
11158         * po/sv.po:
11159
11160 2004-04-20  Benjamin Otte  <otte@gnome.org>
11161
11162         * gst/schedulers/entryscheduler.c: 
11163         (gst_entry_scheduler_yield):
11164           refuse to yield when decoupled elements insist on doing that.
11165           At least it's better than crashing
11166
11167 2004-04-19  David Schleef  <ds@schleef.org>
11168
11169         * docs/libs/Makefile.am: Change sinclude to include
11170         * docs/gst/Makefile.am: same
11171         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
11172
11173 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11174
11175         * po/LINGUAS:
11176         * po/uk.po:
11177           Added Ukrainian translation (Maxim V. Dziumanenko)
11178
11179 2004-04-19  Johan Dahlin  <johan@gnome.org>
11180
11181         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
11182         checking here, do it before calling the function.
11183         Clean up, use for loops instead of while loops while iterating
11184         over lists.
11185
11186         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
11187         in debug message.
11188         (gst_spider_create_and_plug): Improve debug message.
11189         General: Replace while loops which iterates over GLists with for
11190         loops. Which are much cleaner, improves readability, especially
11191         for gst_spider_identity_plug
11192
11193         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
11194         fixes bug 140477
11195
11196 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11197
11198         * po/LINGUAS:
11199         * po/tr.po:
11200           Added Turkish translation (Baris Cicek)
11201
11202 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11203
11204         * docs/faq/troubleshooting.xml:
11205           Mention gst-register in the FAQ (fixes 139045).
11206
11207 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11208
11209         * docs/gst/gstreamer-sections.txt:
11210
11211 2004-04-17  Benjamin Otte  <otte@gnome.org>
11212
11213         * gst/gstelement.c: (gst_element_dispose):
11214           simplify
11215         * gst/gstpad.c: (gst_pad_call_chain_function):
11216           don't create loads of events due to bad macro usage
11217
11218 2004-04-16  David Schleef  <ds@schleef.org>
11219
11220         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
11221         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
11222         * gst/gstvalue.c: (gst_value_serialize_buffer),
11223         (gst_value_deserialize_buffer), (gst_type_is_fixed),
11224         (_gst_value_initialize): Create a new function gst_type_is_fixed()
11225         to indicate types that are fixed wrt caps or not.  Switching to
11226         this function fixes (bug #140298).
11227         * gst/gstvalue.h:
11228
11229 2004-04-16  David Schleef  <ds@schleef.org>
11230
11231         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
11232         for GST_UNALIGNED_ACESS, since we essentially know which archs
11233         are ok.
11234
11235 2004-04-17  Benjamin Otte  <otte@gnome.org>
11236
11237         * docs/gst/Makefile.am:
11238           ignore gst/parse directory when building docs (fixes #140205)
11239
11240 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11241
11242         * testsuite/refcounting/mem.c: (vmsize):
11243           do error checking
11244
11245 2004-04-16  Johan Dahlin  <johan@gnome.org>
11246
11247         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
11248         and gst_pad_call_get_function.
11249
11250 2004-04-15  David Schleef  <ds@schleef.org>
11251
11252         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
11253         checks if we can access unaligned memory.
11254         * configure.ac: Use it.
11255
11256 2004-04-16  Benjamin Otte  <otte@gnome.org>
11257
11258         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
11259         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
11260         * gst/elements/gstfilesrc.h:
11261           s/seek_happened/need_discont/ and require discont before sending any
11262           data
11263
11264 2004-04-15  David Schleef  <ds@schleef.org>
11265
11266         * gst/gstvalue.c: (gst_value_serialize_buffer),
11267         (gst_value_deserialize_buffer), (_gst_value_initialize):
11268         Register these types as fundamental types. (bug #140015)
11269
11270 2004-04-16  Benjamin Otte  <otte@gnome.org>
11271
11272         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
11273         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
11274         (gst_pad_pull):
11275           implement enforcing discont events before buffers are passed. This
11276           allows state changes of only some elements and later correctly going
11277           on where they left off (or in short: you can now set audio sinks to
11278           NULL to release the device when the pipeline is paused)
11279         * gst/gstpad.c: (gst_pad_call_chain_function),
11280         (gst_pad_call_get_function):
11281         * gst/gstpad.h:
11282           add gst_pad_call_chain_function and gst_pad_call_get_function for
11283           scheduler interaction. They are required because of the changes
11284           above.
11285         * gst/schedulers/entryscheduler.c: (get_buffer),
11286         (gst_entry_scheduler_chain_wrapper),
11287         (gst_entry_scheduler_get_wrapper),
11288         (gst_entry_scheduler_state_transition),
11289         (gst_entry_scheduler_pad_link):
11290         * gst/schedulers/gstbasicscheduler.c:
11291         (gst_basic_scheduler_chain_wrapper),
11292         (gst_basic_scheduler_src_wrapper),
11293         (gst_basic_scheduler_chainhandler_proxy),
11294         (gst_basic_scheduler_gethandler_proxy),
11295         (gst_basic_scheduler_cothreaded_chain),
11296         (gst_basic_scheduler_chain_elements):
11297         * gst/schedulers/gstoptimalscheduler.c:
11298         (get_group_schedule_function), (pad_clear_queued),
11299         (gst_opt_scheduler_pad_link):
11300           use the new functions instead of calling get/chain-functions
11301           directly.
11302
11303 2004-04-15  David Schleef  <ds@schleef.org>
11304
11305         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
11306         * docs/gst/tmpl/gstinfo.sgml: same
11307         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
11308         gtk-doc put here.
11309         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
11310         * examples/queue/queue.c: (main):  We iterate pipelines, not
11311         bins.  (bug #139996)
11312
11313 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11314
11315         * docs/pwg/advanced-types.xml:
11316           Add MS RLE support. Also document Qt RLE although I have no sample
11317           files for that yet. And document an extra property for ADPCM.
11318
11319 2004-04-15  David Schleef  <ds@schleef.org>
11320
11321         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
11322         (_gst_plugin_fault_handler_setup):  Disable more stuff on
11323         Windows.
11324
11325 2004-04-15  David Schleef  <ds@schleef.org>
11326
11327         * gst/gstinfo.c: (_gst_debug_init): Change some internal
11328         symbol names to not conflict with new gstinfo.h symbols.
11329         * gst/gstinfo.h: Add inline functions for all those crazy
11330         compilers that don't know how to handle variadic macros (MSVC).
11331
11332 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11333
11334         * configure.ac: bump nano to 1
11335
11336 === release 0.8.1 ===
11337
11338 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11339
11340         * NEWS:
11341         * RELEASE:
11342         * configure.ac:
11343           releasing 0.8.1, "Snow Brigade"
11344
11345 2004-04-14  David Schleef  <ds@schleef.org>
11346
11347         * testsuite/Makefile.am: define tests_ignore
11348         * testsuite/Rules: Added new tests_ignore, which get compiled,
11349         but not run (generally because they're inconsistent or have
11350         heisenbugs).  Now we can ensure all the .c files compile in
11351         testsuite/.
11352         * testsuite/bins/Makefile.am: define tests_ignore
11353         * testsuite/bytestream/Makefile.am:
11354         * testsuite/caps/Makefile.am:
11355         * testsuite/clock/Makefile.am:
11356         * testsuite/debug/Makefile.am:
11357         * testsuite/debug/global.c: (gst_debug_log_one),
11358         (gst_debug_log_two): Fix compilation problem.
11359         * testsuite/dynparams/Makefile.am:
11360         * testsuite/elements/Makefile.am:
11361         * testsuite/ghostpads/Makefile.am:
11362         * testsuite/indexers/Makefile.am:
11363         * testsuite/parse/Makefile.am:
11364         * testsuite/plugin/Makefile.am:
11365         * testsuite/refcounting/Makefile.am:
11366         * testsuite/refcounting/element_pad.c: (main): Don't return leak
11367         results, because it's not calculated correctly.
11368         * testsuite/refcounting/pad.c: (main): same
11369         * testsuite/states/Makefile.am:
11370         * testsuite/tags/Makefile.am:
11371         * testsuite/threads/Makefile.am:
11372
11373 2004-04-14  David Schleef  <ds@schleef.org>
11374
11375         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
11376         generating bad code around the cpu detection asm code.
11377
11378 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11379
11380         * tools/gst-inspect.c: (print_element_info):
11381           print numeric version of rank as well, since we added some - 1
11382           rank values to elements
11383
11384 2004-04-13  David Schleef  <ds@schleef.org>
11385
11386         * configure.ac:  Disable various code when compiling for MinGW.
11387         * gst/elements/Makefile.am:
11388         * gst/elements/gstelements.c:
11389         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11390         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
11391         * gst/registries/gstxmlregistry.c: (make_dir):
11392
11393 2004-04-13  David Schleef  <ds@schleef.org>
11394
11395         * gst/Makefile.am:
11396         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
11397         assembly.
11398         * gst/gstcpuid_i386.s: remove
11399
11400 2004-04-13  David Schleef  <ds@schleef.org>
11401
11402         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
11403         seems to think it needs to be done.
11404         * docs/gst/tmpl/gstfakesink.sgml:
11405         * docs/gst/tmpl/gstfakesrc.sgml:
11406         * docs/gst/tmpl/gstfdsink.sgml:
11407         * docs/gst/tmpl/gstfdsrc.sgml:
11408         * docs/gst/tmpl/gstfilesink.sgml:
11409         * docs/gst/tmpl/gstfilesrc.sgml:
11410         * docs/gst/tmpl/gstidentity.sgml:
11411         * docs/gst/tmpl/gstmd5sink.sgml:
11412         * docs/gst/tmpl/gstmultifilesrc.sgml:
11413         * docs/gst/tmpl/gstpipefilter.sgml:
11414         * docs/gst/tmpl/gstshaper.sgml:
11415         * docs/gst/tmpl/gstspider.sgml:
11416         * docs/gst/tmpl/gstspideridentity.sgml:
11417         * docs/gst/tmpl/gststatistics.sgml:
11418         * docs/gst/tmpl/gsttee.sgml:
11419         * docs/gst/tmpl/gsttypefind.sgml:
11420         * docs/gst/tmpl/gstutils.sgml:
11421
11422 2004-04-13  David Schleef  <ds@schleef.org>
11423
11424         * configure.ac: Changes to remove POSIXisms (mmap in this case)
11425         and to build DLLs on Windows.
11426         * gst/Makefile.am:
11427         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11428         (gst_filesrc_open_file):
11429         * gst/schedulers/Makefile.am:
11430
11431 2004-04-13  David Schleef  <ds@schleef.org>
11432
11433         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
11434         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
11435         fixating lists.
11436
11437 2004-04-12  David Schleef  <ds@schleef.org>
11438
11439         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
11440         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
11441         to using it.
11442         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
11443         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
11444         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
11445         * gst/gststructure.c: (gst_structure_set_valist),
11446         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
11447         support for buffers.
11448         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
11449         intended to be const.
11450         * gst/gsttag.h: same
11451         * gst/gstvalue.c: (gst_value_serialize_buffer),
11452         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
11453         to (de)serialize buffers.
11454         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
11455         * testsuite/caps/string-conversions.c: (main):
11456         * testsuite/caps/value_serialize.c: add new test
11457
11458 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11459
11460         * docs/pwg/advanced-types.xml:
11461           Document MS video 1 (video/x-msvideocodec) mimetype/format.
11462
11463 2004-04-11  Benjamin Otte  <otte@gnome.org>
11464
11465         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
11466           rename categories to basic_*
11467         * gst/schedulers/gstbasicscheduler.c: 
11468         (gst_basic_scheduler_chain_wrapper),
11469         (gst_basic_scheduler_chainhandler_proxy),
11470         (gst_basic_scheduler_gethandler_proxy),
11471         (gst_basic_scheduler_eventhandler_proxy):
11472           debugging category fixes - put common stuff in log category
11473         * gst/schedulers/gstbasicscheduler.c: 
11474         (gst_basic_scheduler_chain_elements):
11475           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
11476           active and linking two active chains
11477
11478 2004-04-10  Benjamin Otte  <otte@gnome.org>
11479
11480         * docs/pwg/intro-preface.xml:
11481           fix dead links and remove reference to Wiki
11482
11483 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11484
11485         * gst/schedulers/gstbasicscheduler.c:
11486           make sure we can switch back to the main function if we're still in
11487           the main function (supposed to fix #139617)
11488         * gst/schedulers/gthread-cothreads.h:
11489           don't throw an error when switching to the same cothread
11490
11491 2004-04-09  Benjamin Otte  <otte@gnome.org>
11492
11493         * gst/gstbin.c: (gst_bin_get_type):
11494         * gst/gstclock.c: (gst_clock_get_type):
11495         * gst/gstindex.c: (gst_index_get_type):
11496         * gst/gstobject.c: (gst_object_get_type),
11497         (gst_signal_object_get_type):
11498         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
11499         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
11500         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
11501         * gst/gstqueue.c: (gst_queue_get_type):
11502         * gst/gstregistry.c: (gst_registry_get_type):
11503         * gst/gstsystemclock.c: (gst_system_clock_get_type):
11504         * gst/gstthread.c: (gst_thread_get_type):
11505           don't use memchunks for these objects, use malloc instead
11506
11507 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11508
11509         * docs/gst/.cvsignore:
11510         * docs/gst/Makefile.am:
11511         * docs/gst/gstreamer-sections.txt:
11512         * docs/gst/tmpl/gstaggregator.sgml:
11513         * docs/gst/tmpl/gstbuffer.sgml:
11514         * docs/gst/tmpl/gstclock.sgml:
11515         * docs/gst/tmpl/gstelement.sgml:
11516         * docs/gst/tmpl/gstfakesink.sgml:
11517         * docs/gst/tmpl/gstfakesrc.sgml:
11518         * docs/gst/tmpl/gstfdsink.sgml:
11519         * docs/gst/tmpl/gstfdsrc.sgml:
11520         * docs/gst/tmpl/gstfilesink.sgml:
11521         * docs/gst/tmpl/gstfilesrc.sgml:
11522         * docs/gst/tmpl/gstidentity.sgml:
11523         * docs/gst/tmpl/gstindex.sgml:
11524         * docs/gst/tmpl/gstinfo.sgml:
11525         * docs/gst/tmpl/gstmd5sink.sgml:
11526         * docs/gst/tmpl/gstmultifilesrc.sgml:
11527         * docs/gst/tmpl/gstpad.sgml:
11528         * docs/gst/tmpl/gstpipefilter.sgml:
11529         * docs/gst/tmpl/gstpipeline.sgml:
11530         * docs/gst/tmpl/gstpluginfeature.sgml:
11531         * docs/gst/tmpl/gstqueue.sgml:
11532         * docs/gst/tmpl/gstregistry.sgml:
11533         * docs/gst/tmpl/gstscheduler.sgml:
11534         * docs/gst/tmpl/gstshaper.sgml:
11535         * docs/gst/tmpl/gstspider.sgml:
11536         * docs/gst/tmpl/gstspideridentity.sgml:
11537         * docs/gst/tmpl/gststatistics.sgml:
11538         * docs/gst/tmpl/gstsystemclock.sgml:
11539         * docs/gst/tmpl/gsttee.sgml:
11540         * docs/gst/tmpl/gstthread.sgml:
11541         * docs/gst/tmpl/gsttypefind.sgml:
11542         * docs/gst/tmpl/gstutils.sgml:
11543           further doc build fixes
11544
11545 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11546
11547         * docs/gst/Makefile.am:
11548           make docs exit on scanning problems
11549           fix nonsrcdir build issues
11550         * docs/gst/gstreamer-sections.txt:
11551           adding stuff from -unused
11552         * gst/gstqueue.h:
11553           create GstQueueSize
11554         * gst/schedulers/cothreads_compat.h:
11555           fix cothread warnings
11556
11557 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11558
11559         * docs/gst/gstreamer-sections.txt:
11560           remove defines deprecated by Benjamin
11561
11562 2004-04-07  Benjamin Otte  <otte@gnome.org>
11563
11564         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11565           when the buffer is complete, don't check if other buffers are needed
11566         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
11567           check that the offset is >0 so we don't try to read before the
11568           beginning of the file
11569         * gst/gstpad.c: (gst_pad_set_pad_template):
11570           sink the template, so we don't end up with 130k pad templates
11571
11572 2004-04-06  Benjamin Otte  <otte@gnome.org>
11573
11574         * gst/autoplug/gstspider.c: (gst_spider_link_add):
11575           don't ref the element, adding already reffed it. And we didn't unref
11576           it later anyway... (huge memleak when you used many spider elements)
11577         * gst/gstelement.c: (gst_element_base_class_finalize):
11578         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
11579         (gst_element_register):
11580         * gst/gsturi.c: (gst_element_make_from_uri):
11581           use gst_object_(un)ref instead of g_object(un)ref
11582
11583 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11584
11585         * gst/gstbuffer.h:
11586           remove macro that wouldn't work anymore because struct member has
11587           been removed.
11588         * gst/schedulers/entryscheduler.c: (schedule_forward):
11589           fix segfault for unconnected pads
11590         
11591 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11592
11593         reviewed by David Schleef <ds@schleef.org>
11594
11595         * gst/gstinfo.h:
11596           *_FORMAT modifiers should require putting a % in front of them for
11597           consistency reasons.
11598
11599 2004-04-05  Colin Walters  <walters@redhat.com>
11600
11601         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
11602         space.
11603
11604 2004-04-05  Benjamin Otte  <otte@gnome.org>
11605
11606         * configure.ac:
11607         * gst/Makefile.am:
11608         * gst/gst_private.h:
11609         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
11610           add support for detecting if GStreamer runs inside valgrind.
11611           requires valgrind (d'oh) and --enable-debug for correct cdetection.
11612           print a big message in valgrind that GStreamer has detected it's
11613           running inside and might now use different code.
11614         * gst/gstmemchunk.c: (populate), (free_area),
11615         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
11616         (gst_mem_chunk_free):
11617           flag memchunks for valgrind, so it can detect leaking of chunks.
11618           This allows detecting leaks of GstBuffer and GstEvent correctly
11619           inside valgrind.
11620
11621 2004-04-05  David Schleef  <ds@schleef.org>
11622
11623         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
11624           jensgr@gmx.net (Jens Granseuer)
11625
11626 2004-04-05  David Schleef  <ds@schleef.org>
11627
11628         * gst/gstbuffer.c: (_gst_buffer_sub_free),
11629         (gst_buffer_default_free), (gst_buffer_default_copy),
11630         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
11631         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
11632         structures in one place.
11633
11634 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11635
11636         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
11637           (GST_TIME_FORMAT, GST_TIME_ARGS)
11638
11639 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11640
11641         * testsuite/elements/Makefile.am:
11642           disable test until it stops breaking make distcheck
11643
11644 2004-04-05  Johan Dahlin  <johan@gnome.org>
11645
11646         * po/sv.po: Updated translation
11647
11648 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11649
11650         * gst/gstplugin.c: (gst_plugin_load_file):
11651           fix segfault for when original plugin was loaded statically
11652
11653 2004-04-05  Benjamin Otte  <otte@gnome.org>
11654
11655         * testsuite/debug/category.c: (main):
11656         * testsuite/debug/commandline.c: (main):
11657         * testsuite/debug/output.c: (main):
11658           fix tests to work again with debugging enabled
11659
11660 2004-04-05  Benjamin Otte  <otte@gnome.org>
11661
11662         * gst/schedulers/gstbasicscheduler.c:
11663         (gst_basic_scheduler_pad_link):
11664           fix to work with recent scheduling changes
11665
11666 2004-04-05  Benjamin Otte  <otte@gnome.org>
11667
11668         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
11669         prepareChangeLog doesn't work when cvs indents):
11670           don't throw an error when no element can be scheduled, there's too
11671           many weird reasons why it doesn't work. Return STOPPED instead.
11672           decoupled elemts' schedulability doesn't depend on bufpens.
11673
11674 2004-04-04  Benjamin Otte  <otte@gnome.org>
11675
11676         * gst/schedulers/gstbasicscheduler.c:
11677         (gst_basic_scheduler_pad_select):
11678           fix uninitialized variable warnings
11679
11680 2004-04-04  Benjamin Otte  <otte@gnome.org>
11681
11682         * gst/gstpad.c: (gst_pad_collect_valist):
11683           fix uninitialized variable warning
11684         * gst/schedulers/entryscheduler.c: (schedule_forward):
11685           fix shadowed variable
11686
11687 2004-04-04  Benjamin Otte  <otte@gnome.org>
11688
11689         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
11690         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
11691         (gst_pad_select):
11692         * gst/gstpad.h:
11693         * gst/gstscheduler.c: (gst_scheduler_pad_select),
11694         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
11695         * gst/gstscheduler.h:
11696           implement gst_pad_collect as replacement for gst_pad_select.
11697           deprecate gst_pad_select and gst_scheduler_(un)lock_element
11698           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
11699           new pad_select, lock and unlock calls.
11700         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
11701         * gst/cothreads.h:
11702         * gst/schedulers/cothreads_compat.h:
11703         * gst/schedulers/gthread-cothreads.h:
11704           remove unused cothread_lock and cothread_unlock calls
11705         * gst/schedulers/entryscheduler.c:
11706         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
11707         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
11708         (gst_entry_scheduler_pad_select):
11709           update to new API
11710         * gst/schedulers/gstbasicscheduler.c:
11711         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
11712         (gst_basic_scheduler_pad_select):
11713           remove useless lock and unlock calls, update pad_select to new API
11714           (untested)
11715         * gst/schedulers/gstoptimalscheduler.c:
11716         (gst_opt_scheduler_class_init):
11717           remove useless select, lock and unlock function calls
11718         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
11719           use gst_pad_collect instead of gst_pad_select
11720
11721 2004-04-04  Benjamin Otte  <otte@gnome.org>
11722
11723         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
11724         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
11725         (schedule_next_element), (print_entry):
11726           add can_schedule_pad to handle element states.
11727           add schedule_forward to select the correct entry to schedule next
11728
11729 2004-04-03  Benjamin Otte  <otte@gnome.org>
11730
11731         * gst/schedulers/entryscheduler.c: 
11732           remove unused variable, fix error inside Rb, fix compile warning in
11733           unreachable code
11734
11735 2004-04-03  Benjamin Otte  <otte@gnome.org>
11736
11737         * gst/schedulers/entryscheduler.c:
11738           completely revamp the inner workings, so it's a lot easier to
11739           understand and extend
11740
11741 2004-04-03  Andy Wingo  <wingo@pobox.com>
11742
11743         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
11744         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
11745         This allows better introspection of pipeline topology.
11746         (add_to_chain): Don't do trickery to put loop elements first;
11747         rather, queue a chain sort by marking the chain as dirty.
11748         (remove_from_chain): Mark the chain dirty.
11749         (sort_chain): New function. Sorts the group list so that terminal
11750         sinks are first. This means elements on the sink side will be
11751         preferentially sscheduled before elements on the src side of the
11752         pipeline.
11753         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
11754         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
11755         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
11756         (group_inc_link): Change argument and variable names to match the
11757         new link structure member names (src and sink).
11758         (group_dec_link): Add some description
11759
11760 2004-04-03  Benjamin Otte  <otte@gnome.org>
11761
11762         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11763         * gst/gstinfo.h:
11764         * testsuite/debug/category.c: (main):
11765         * testsuite/debug/commandline.c: (main):
11766         * testsuite/debug/output.c: (main):
11767         * testsuite/debug/printf_extension.c: (main):
11768           fix to successfully build and test with --disable-gst-debug
11769           configure switch (fixes #138705)
11770
11771 2004-04-03  Benjamin Otte  <otte@gnome.org>
11772
11773         * docs/pwg/building-boiler.xml:
11774           add cvs login line and s/anonymous/anoncvs/
11775
11776 2004-04-03  Tim-Phillip M??ller  <t.i.m@zen.co.uk>
11777
11778         reviewed by Benjamin Otte  <otte@gnome.org>
11779
11780         * gst/gststructure.c: (gst_structure_free):
11781           memleak fix: free fields array (partial fix for #134839)
11782
11783 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11784
11785         * docs/random/ds/0.9-suggested-changes:
11786           Add a note to change handoff use in fakesrc to be usable in
11787           a more generic way (fakesrc should be renamed to appsrc or so).
11788         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
11789           Change signal type to scope, so we can fill the buffer in the
11790           handoff handler (that's the whole use of this signal...).
11791
11792 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11793
11794         * docs/pwg/other-ntoone.xml:
11795           Document muxers and n-to-1 elements.
11796
11797 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
11798
11799         * gst/registries/gstxmlregistry.c
11800         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
11801         determine if a file is a G_MODULE. The old one discards paths
11802         containing "so" somewhere in the middle. My home directory is
11803         called "soto". Go figure...
11804
11805 2004-03-31  David Schleef  <ds@schleef.org>
11806
11807         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
11808         to eventually deprecate gst_buffer_merge().  (bug: #136408)
11809         * gst/gstbuffer.h:
11810
11811 2004-03-31  David Schleef  <ds@schleef.org>
11812
11813         * gst/gstvalue.c: (gst_value_union_int_int_range),
11814         (gst_value_union_int_range_int_range), (gst_value_can_union),
11815         (gst_value_union), (_gst_value_initialize):  Add some union
11816         implementations.  We didn't have any previously.
11817         * testsuite/caps/Makefile.am:
11818         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
11819         (gst_audioscale_getcaps), (test_caps), (main): A little test
11820         that is the same as the caps manipulation in audioscale.
11821
11822 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11823
11824         * docs/faq/general.xml:
11825           add entry about "does gst support format X?"
11826
11827 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11828
11829         * gst/gstthread.c:
11830           fix docs
11831         * gst/gstutils.h:
11832           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
11833
11834 2004-03-30  Benjamin Otte  <otte@gnome.org>
11835
11836         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11837           set the offset of the buffer to the requested offset
11838         * gst/elements/gsttypefind.c: (stop_typefinding):
11839           revert patch 1.18 (which I unfortunately don't know the reason for).
11840           This is needed to allow downstream elements to seek. Otherwise
11841           typefind might overwrite a previous seek by downstream elements.
11842           This lead to errors with id3tag and typefind on some mp3s.
11843         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
11844         (gst_entry_scheduler_iterate):
11845           be more verbose when debugging
11846
11847 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11848
11849         * gst/gstcaps.c: (gst_caps_from_string_inplace):
11850           make sure we don't get NULL strings
11851
11852 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11853
11854         * gst/gstcaps.c:
11855         * gst/gstelement.c:
11856         * gst/gstelementfactory.c: (gst_element_factory_get_type):
11857         * gst/gstindex.c: (gst_index_resolver_get_type),
11858         (gst_index_get_type), (gst_index_factory_get_type):
11859         * gst/gstinfo.c:
11860         * gst/gstpad.c:
11861         * gst/gstplugin.c:
11862         * gst/gsturi.c: (gst_uri_handler_get_type):
11863         * gst/gstvalue.c:
11864           first batch of documentation fixes
11865
11866 2004-03-29  David Schleef  <ds@schleef.org>
11867
11868         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
11869         * docs/gst/gstreamer-docs.sgml:  More hacking
11870         * docs/gst/gstreamer-sections.txt:
11871         * docs/gst/tmpl/cothreads_compat.sgml:
11872         * docs/gst/tmpl/gstcaps.sgml:
11873         * docs/gst/tmpl/gstclock.sgml:
11874         * docs/gst/tmpl/gstelement.sgml:
11875         * docs/gst/tmpl/gstevent.sgml:
11876         * docs/gst/tmpl/gstpad.sgml:
11877         * docs/gst/tmpl/gstutils.sgml:
11878         * docs/gst/tmpl/gstxml.sgml:
11879         * docs/gst/tmpl/gthread-cothreads.sgml:
11880         * docs/random/ds/0.9-suggested-changes:
11881         * gst/elements/gstfakesink.h: doc fixes
11882         * gst/elements/gstfakesrc.h: doc fixes
11883         * gst/gstcaps.c: doc fixes
11884         * gst/gstcaps.h: doc fixes
11885         * gst/gstelement.c: doc fixes
11886         * gst/gstelement.h: doc fixes
11887         * gst/gstindex.c: doc fixes
11888         * gst/gstinfo.c: doc fixes
11889         * gst/gstpad.c: doc fixes
11890         * gst/gstpad.h: doc fixes
11891         * gst/gstplugin.c: doc fixes
11892         * gst/gsttypefind.h: doc fixes
11893         * gst/gsturi.c: doc fixes
11894         * gst/gstvalue.c: doc fixes
11895
11896 2004-03-29  Colin Walters  <walters@redhat.com>
11897
11898         * gst/registries/gstxmlregistry.c (get_time)
11899         (plugin_times_older_than_recurse):
11900         Use the result of stat to determine whether a path is a file,
11901         so we don't attempt to opendir() files.
11902
11903 2004-03-29  Benjamin Otte  <otte@gnome.org>
11904
11905         * gst/gstpad.c: (gst_pad_set_explicit_caps):
11906           print caps in debugging output when setting caps failed
11907         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
11908         (schedule_next_element), (get_buffer), (run_chainhandler),
11909         (element_may_start), (gst_entry_scheduler_chain_handler),
11910         (gst_entry_scheduler_get_handler),
11911         (gst_entry_scheduler_state_transition),
11912         (gst_entry_scheduler_pad_link):
11913           make this scheduler a testcase for mandatory
11914           discont-before-first-buffer which is needed if we want to allow apps
11915           to release the sound device.
11916           add SCHED_ASSERT macro to print scheduler state before an assertion
11917           triggers.
11918
11919 2004-03-29  Benjamin Otte  <otte@gnome.org>
11920
11921         * COPYING:
11922           replace by LGPL (former COPYING.LIB). The core is completely
11923           licensed LGPL.
11924         * COPYING.LIB:
11925           remove
11926
11927 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11928
11929         * po/af.po:
11930         * po/sv.po:
11931           updated Afrikaans and Swedish
11932
11933 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11934
11935         * po/LINGUAS:
11936         * po/az.po:
11937           adding Azerbaijani (M??tin ??mirov)
11938
11939 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
11940
11941         * gst/gstelement.h: 
11942         * gst/gstelement.c (gst_element_set_time_delay): New function for
11943         setting element time taking into account a hardware buffering
11944         delay.
11945         (gst_element_set_time): Now just an invocation of
11946         gst_element_set_time_delay.
11947         * gst/gstclock.h: 
11948         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
11949         allowing to set event times in the future.
11950         (gst_clock_get_event_time): Now just an invocation of
11951         gst_clock_get_event_time_delay.
11952
11953 2004-03-28  Benjamin Otte  <otte@gnome.org>
11954
11955         * gst/gstbin.c: (gst_bin_set_element_sched),
11956         (gst_bin_unset_element_sched):
11957           don't add decoupled elements to schedulers - otherwise it's
11958           impossible to control if a link to a decoupled element was already
11959           removed from a scheduler or not.
11960         * gst/schedulers/cothreads_compat.h:
11961         * gst/schedulers/gthread-cothreads.h:
11962           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
11963           is no "unused" warning.
11964         * gst/schedulers/Makefile.am:
11965         * gst/schedulers/entryscheduler.c:
11966           add new scheduler, based on ideas from talking to David and Martin.
11967           It's supposed to be small and correct. Currently it's also slow (but
11968           it's not noticable)
11969         * examples/retag/retag.c: (main):
11970         * testsuite/bytestream/test1.c: (main):
11971           fix missing NULLs at end of variadic functions
11972         * testsuite/elements/.cvsignore:
11973           update
11974
11975 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
11976
11977         * gst/gstevent.h:
11978         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
11979
11980 2004-03-25  David Schleef  <ds@schleef.org>
11981
11982         * docs/gst/gstreamer-sections.txt:  More doc hacking.
11983         * docs/gst/tmpl/gstaggregator.sgml:
11984         * docs/gst/tmpl/gstautoplugfactory.sgml:
11985         * docs/gst/tmpl/gstbin.sgml:
11986         * docs/gst/tmpl/gstbuffer.sgml:
11987         * docs/gst/tmpl/gstbufferstore.sgml:
11988         * docs/gst/tmpl/gstfakesink.sgml:
11989         * docs/gst/tmpl/gstfakesrc.sgml:
11990         * docs/gst/tmpl/gstmd5sink.sgml:
11991         * docs/gst/tmpl/gstreamer-unused.sgml:
11992         * docs/gst/tmpl/gstsearchfuncs.sgml:
11993         * docs/gst/tmpl/gstshaper.sgml:
11994         * docs/gst/tmpl/gstspider.sgml:
11995         * docs/gst/tmpl/gsttee.sgml:
11996         * docs/gst/tmpl/gstutils.sgml:
11997         * docs/gst/tmpl/gstvalue.sgml:
11998         * docs/gst/tmpl/gstxml.sgml:
11999         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
12000         and we don't support it.
12001         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
12002         (gst_use_threads), (gst_has_threads): same
12003         * gst/gstthreaddummy.c: same
12004         * gst/autoplug/gstspider.c: Make gst_spider_details static.
12005         * gst/autoplug/gstspider.h: same
12006         * gst/elements/gstaggregator.h: Remove bogus function from header
12007         * gst/elements/gstfakesink.h: same
12008         * gst/elements/gstfakesrc.h: same
12009         * gst/elements/gstmd5sink.h: same
12010         * gst/elements/gstshaper.h: same
12011         * gst/elements/gsttee.h: same
12012         * gst/gstbin.c: doc fixes
12013         * gst/gstbin.h: Remove unused definition.
12014         * gst/gstbuffer.c: doc fixes
12015         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
12016         * gst/gstfilter.c: doc fixes
12017         * gst/gsttag.c: doc fixes
12018         * gst/gstvalue.c: doc fixes
12019
12020 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12021
12022         * docs/pwg/advanced-types.xml:
12023           Document typefinding.
12024         * docs/pwg/other-oneton.xml:
12025           Document one-to-n elements, demuxers and parsers.
12026
12027 2004-03-25  Tim-Philipp M??ller <t.i.m@zen.co.uk>
12028
12029         reviewed by: David Schleef  <ds@schleef.org>
12030
12031         * configure.ac: Check bison version (bug #127838)
12032
12033 2004-03-25  David Schleef  <ds@schleef.org>
12034
12035         * docs/gst/gstreamer-docs.sgml: More fine tuning.
12036         * docs/gst/gstreamer-sections.txt:
12037         * docs/gst/tmpl/gstautoplug.sgml:
12038         * docs/gst/tmpl/gststaticautoplug.sgml:
12039         * docs/gst/tmpl/gststaticautoplugrender.sgml:
12040         * docs/gst/tmpl/gstutils.sgml:
12041         * docs/gst/tmpl/gstxml.sgml:
12042
12043 2004-03-24  David Schleef  <ds@schleef.org>
12044
12045         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
12046         manual being such complete crap, that I decided to do major
12047         hacking of it.  This checkin replaces any fine tuning that
12048         may have been done previously, with the benefit of actually
12049         being complete for much of the API that was changed since
12050         0.6.  Further fine tuning will occur shortly.  (bug #134721)
12051         * docs/gst/gstreamer-sections.txt:
12052         * docs/gst/tmpl/GstBin.sgml:
12053         * docs/gst/tmpl/GstBuffer.sgml:
12054         * docs/gst/tmpl/GstCaps.sgml:
12055         * docs/gst/tmpl/GstClock.sgml:
12056         * docs/gst/tmpl/GstCompat.sgml:
12057         * docs/gst/tmpl/GstData.sgml:
12058         * docs/gst/tmpl/GstElement.sgml:
12059         * docs/gst/tmpl/GstEvent.sgml:
12060         * docs/gst/tmpl/GstIndex.sgml:
12061         * docs/gst/tmpl/GstStructure.sgml:
12062         * docs/gst/tmpl/GstTag.sgml:
12063         * docs/gst/tmpl/cothreads.sgml:
12064         * docs/gst/tmpl/cothreads_compat.sgml:
12065         * docs/gst/tmpl/gettext.sgml:
12066         * docs/gst/tmpl/grammar.tab.sgml:
12067         * docs/gst/tmpl/gst-i18n-app.sgml:
12068         * docs/gst/tmpl/gst-i18n-lib.sgml:
12069         * docs/gst/tmpl/gst.sgml:
12070         * docs/gst/tmpl/gst_private.sgml:
12071         * docs/gst/tmpl/gstaggregator.sgml:
12072         * docs/gst/tmpl/gstarch.sgml:
12073         * docs/gst/tmpl/gstatomic.sgml:
12074         * docs/gst/tmpl/gstatomic_impl.sgml:
12075         * docs/gst/tmpl/gstbin.sgml:
12076         * docs/gst/tmpl/gstbuffer.sgml:
12077         * docs/gst/tmpl/gstbufferstore.sgml:
12078         * docs/gst/tmpl/gstcaps.sgml:
12079         * docs/gst/tmpl/gstclock.sgml:
12080         * docs/gst/tmpl/gstcompat.sgml:
12081         * docs/gst/tmpl/gstconfig.sgml:
12082         * docs/gst/tmpl/gstcpu.sgml:
12083         * docs/gst/tmpl/gstdata.sgml:
12084         * docs/gst/tmpl/gstdata_private.sgml:
12085         * docs/gst/tmpl/gstelement.sgml:
12086         * docs/gst/tmpl/gstenumtypes.sgml:
12087         * docs/gst/tmpl/gsterror.sgml:
12088         * docs/gst/tmpl/gstevent.sgml:
12089         * docs/gst/tmpl/gstfakesink.sgml:
12090         * docs/gst/tmpl/gstfakesrc.sgml:
12091         * docs/gst/tmpl/gstfilesink.sgml:
12092         * docs/gst/tmpl/gstfilter.sgml:
12093         * docs/gst/tmpl/gstindex.sgml:
12094         * docs/gst/tmpl/gstinfo.sgml:
12095         * docs/gst/tmpl/gstinterface.sgml:
12096         * docs/gst/tmpl/gstlog.sgml:
12097         * docs/gst/tmpl/gstmacros.sgml:
12098         * docs/gst/tmpl/gstmarshal.sgml:
12099         * docs/gst/tmpl/gstmd5sink.sgml:
12100         * docs/gst/tmpl/gstmultifilesrc.sgml:
12101         * docs/gst/tmpl/gstobject.sgml:
12102         * docs/gst/tmpl/gstpad.sgml:
12103         * docs/gst/tmpl/gstparse.sgml:
12104         * docs/gst/tmpl/gstpipeline.sgml:
12105         * docs/gst/tmpl/gstplugin.sgml:
12106         * docs/gst/tmpl/gstpluginfeature.sgml:
12107         * docs/gst/tmpl/gstqueue.sgml:
12108         * docs/gst/tmpl/gstreamer-unused.sgml:
12109         * docs/gst/tmpl/gstregistry.sgml:
12110         * docs/gst/tmpl/gstregistrypool.sgml:
12111         * docs/gst/tmpl/gstscheduler.sgml:
12112         * docs/gst/tmpl/gstsearchfuncs.sgml:
12113         * docs/gst/tmpl/gstshaper.sgml:
12114         * docs/gst/tmpl/gstspider.sgml:
12115         * docs/gst/tmpl/gstspideridentity.sgml:
12116         * docs/gst/tmpl/gststructure.sgml:
12117         * docs/gst/tmpl/gstsystemclock.sgml:
12118         * docs/gst/tmpl/gsttag.sgml:
12119         * docs/gst/tmpl/gsttaginterface.sgml:
12120         * docs/gst/tmpl/gsttee.sgml:
12121         * docs/gst/tmpl/gstthread.sgml:
12122         * docs/gst/tmpl/gsttrace.sgml:
12123         * docs/gst/tmpl/gsttrashstack.sgml:
12124         * docs/gst/tmpl/gsttypefind.sgml:
12125         * docs/gst/tmpl/gsttypes.sgml:
12126         * docs/gst/tmpl/gsturi.sgml:
12127         * docs/gst/tmpl/gsturitype.sgml:
12128         * docs/gst/tmpl/gstutils.sgml:
12129         * docs/gst/tmpl/gstvalue.sgml:
12130         * docs/gst/tmpl/gstversion.sgml:
12131         * docs/gst/tmpl/gstxml.sgml:
12132         * docs/gst/tmpl/gstxmlregistry.sgml:
12133         * docs/gst/tmpl/gthread-cothreads.sgml:
12134         * docs/gst/tmpl/types.sgml:
12135
12136 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12137
12138         * docs/pwg/other-sink.xml:
12139         * docs/pwg/other-source.xml:
12140           Documentation on how to write source and sink elements. Other
12141           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
12142           manager, autoplugger) are all still pending.
12143
12144 2004-03-25  Benjamin Otte  <otte@gnome.org>
12145
12146         * testsuite/elements/Makefile.am:
12147         * testsuite/elements/gst-compprep-check:
12148           add check to make sure gst-compprep works
12149         * testsuite/elements/gst-inspect-check.in:
12150           improve initialization output
12151         * testsuite/Makefile.am:
12152         * testsuite/gst-inspect-check:
12153           remove old file
12154
12155 2004-03-24  David Schleef  <ds@schleef.org>
12156
12157         * testsuite/elements/Makefile.am:
12158         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
12159         to the testsuite.
12160
12161 2004-03-24  Benjamin Otte  <otte@gnome.org>
12162
12163         * libs/gst/control/dparam.c: (gst_dparam_attach),
12164         (gst_dparam_detach):
12165         * libs/gst/control/dparammanager.c: (gst_dpman_init):
12166           fix lvalue casts for real
12167
12168 2004-03-24  Benjamin Otte  <otte@gnome.org>
12169
12170         * gst/schedulers/gstbasicscheduler.c:
12171         (gst_basic_scheduler_src_wrapper):
12172         * gst/schedulers/gstoptimalscheduler.c:
12173         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
12174         (pad_clear_queued), (gst_opt_scheduler_add_element),
12175         (gst_opt_scheduler_remove_element):
12176           fix GStreamer to not have issues with lvalue casts anymore (fixes
12177           #136841)
12178
12179 2004-03-24  Benjamin Otte  <otte@gnome.org>
12180
12181         * gst/gstelement.c:
12182           add documentation about a gobject quirk where the object hasn't the
12183           correct class pointer set on initialization
12184         * gst/schedulers/gstbasicscheduler.c:
12185         (gst_basic_scheduler_src_wrapper):
12186           make sure to not run into an infinite loop
12187
12188 2004-03-22  Benjamin Otte  <otte@gnome.org>
12189
12190         * gst/gstutils.c: (gst_util_dump_mem):
12191         * gst/gstutils.h:
12192           first argument of gst_util_dump_mem should be const
12193
12194 2004-03-22  Johan Dahlin  <johan@gnome.org>
12195
12196         * gst/gstvalue.h: Clean up a little bit.
12197
12198 2004-03-21  Tim-Philipp M??ller <t.i.m@zen.co.uk>
12199
12200         reviewed by Benjamin Otte  <otte@gnome.org>
12201
12202         * gst/autoplug/gstspider.c: (gst_spider_dispose):
12203         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
12204         (gst_aggregator_class_init), (gst_aggregator_init):
12205         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12206         (gst_filesrc_dispose), (gst_filesrc_set_location):
12207         * gst/elements/gstidentity.c: (gst_identity_finalize),
12208         (gst_identity_class_init), (gst_identity_chain):
12209         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
12210         * gst/elements/gststatistics.c: (gst_statistics_finalize),
12211         (gst_statistics_class_init):
12212         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
12213         (gst_tee_get_property):
12214           clean up used memory in this elements correctly on teardown (closes
12215           #137279)
12216
12217 2004-03-20  Colin Walters  <walters@redhat.com>
12218
12219         * gst/registries/gstxmlregistry.c:
12220         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
12221         registry saving atomic.
12222
12223 2004-03-20  Colin Walters  <walters@redhat.com>
12224
12225         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
12226         Just use
12227         access() instead of actually creating and deleting files.
12228
12229 2004-03-18  David Schleef  <ds@schleef.org>
12230
12231         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
12232         (bug #137625)
12233
12234 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12235
12236         * po/sv.po: updated translation (Christian Rose)
12237
12238 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12239
12240         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12241         (gst_filesink_get_query_types), (_do_init),
12242         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
12243           return FALSE silently
12244         * po/af.po: updated translation (Petri Jooste)
12245
12246 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12247
12248         * Makefile.am:
12249         * configure.ac:
12250           dist common properly
12251         * po/af.po:
12252         * po/fr.po:
12253         * po/nl.po:
12254         * po/sr.po:
12255         * po/sv.po:
12256           refreshing translations
12257
12258 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12259
12260         * po/LINGUAS:
12261         * po/sv.po:
12262         * po/af.po:
12263           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
12264
12265 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12266
12267         * Makefile.am: use common/release.mak
12268
12269 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12270
12271         * docs/faq/gst-uninstalled:
12272           adding gst-monkeysaudio to the list of possible plugin dirs
12273
12274 2004-03-16  David Schleef  <ds@schleef.org>
12275
12276         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
12277         (gst_init_check_with_popt_table):  Fix some gettext strings to
12278         make them easier to translate.  Required making the strings
12279         non-const.
12280
12281 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12282
12283         * configure.ac: bump nano to 1
12284
12285 === release 0.8.0 ===
12286
12287 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12288
12289         * configure.ac: release 0.8.0, "Executive Slacks"
12290
12291 2004-03-16  Johan Dahlin  <johan@gnome.org>
12292
12293         * gst/schedulers/gstoptimalscheduler.c
12294         (gst_opt_scheduler_pad_unlink): Remove double ;,
12295         spotted by Scott Wheeler
12296
12297 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12298
12299         * configure.ac: bump libtool version
12300
12301 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12302
12303         * gst/gstcaps.h:
12304         * gst/gststructure.h:
12305           add reserved padding
12306
12307 2004-03-15  Benjamin Otte  <otte@gnome.org>
12308
12309         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
12310           set the first parameter for select call correctly.
12311           (fixes #137230)
12312
12313 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12314
12315         * *.c,*.h: don't mix tabs and spaces
12316
12317 2004-03-15  Johan Dahlin  <johan@gnome.org>
12318
12319         * gst/schedulers/gstoptimalscheduler.c
12320         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
12321         crash on MPEG playback. My boolean arithmetic is a bit rusty.
12322
12323         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
12324         
12325 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12326
12327         * testsuite/Rules:
12328           fix gst-register rules
12329
12330 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12331
12332         * testsuite/Rules:
12333           use versioned gst-register
12334
12335 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12336
12337         * docs/libs/gstreamer-libs-sections.txt:
12338           remove </SUBSECTION>
12339         * gst/gstplugin.c:
12340         * gst/gstregistry.c: (gst_registry_add_plugin):
12341         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
12342         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
12343           add debugging and fix some comment blocks
12344
12345 2004-03-15  Johan Dahlin  <johan@gnome.org>
12346
12347         * *.h: Revert indent changes.
12348         
12349 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
12350
12351         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
12352           g_error_free the g_error
12353         * tools/gst-feedback-m.m:
12354           check for other versions of gstreamer
12355         * tools/gst-indent:
12356           use sh, not bash
12357
12358 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
12359
12360         * tools/gst-register.c: do not spill paths when registries are not
12361           writable, until we fix the "user running gst-register" case.
12362
12363 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12364
12365         * *.c, *.h: commit of gst-indent run on core
12366
12367 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12368
12369         * tools/gst-indent:
12370         * tools/Makefile.am:
12371           add our indentation style as a script
12372
12373 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12374
12375         * po/sr.po:
12376         * po/LINGUAS:
12377           added Serbian translation
12378
12379 2004-03-13  Benjamin Otte  <otte@gnome.org>
12380
12381         * gst/gstelement.c:
12382           add documentation note about gst_element_found_tags_for_pad not
12383           being usable in getfunctions. (see #137042)
12384
12385 2004-03-12  David Schleef  <ds@schleef.org>
12386
12387         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
12388         change API right now!  Readd gst_caps_is_simple() macro.
12389         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
12390         uninitialized variable.  I'd bet this caused crashes.
12391         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
12392
12393 2004-03-12  Johan Dahlin  <johan@gnome.org>
12394
12395         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
12396         * gst/gstcaps.h: Clean up
12397
12398         * gst/gst.c (init_post): call gst_caps_get_type() instead of
12399         _gst_caps_initalize()
12400
12401         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
12402         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
12403
12404         * gst/gststructure.c (gst_structure_get_type): Ditto
12405
12406         * gst/gststructure.h: Ditto
12407         
12408 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12409
12410         * gst/gstqueue.c: (gst_queue_init):
12411           Reset default max. values in queues. Reason is simply to avoid
12412           braindead use. If you want wider values, use the properties. The
12413           default is supposed to always work. Wider values would make this
12414           beast a memory hog by default (250 full-PAL RGB32 video frames?
12415           That's 440 MB! No thank you).
12416
12417 2004-03-10  David Schleef  <ds@schleef.org>
12418
12419         * tools/gst-run.c: (main):  Fix crash when no relevant tools
12420         were found.  (bug #136793)
12421
12422 2004-03-10  Johan Dahlin  <johan@gnome.org>
12423
12424         * gst/schedulers/gstoptimalscheduler.c
12425         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
12426         links to elements within the same group, so we can finally remove
12427         that annoying warning. Refactor the code a little bit
12428         (group_dec_links_for_element): Split out
12429
12430 2004-03-09  David Schleef  <ds@schleef.org>
12431
12432         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
12433         (bug #134863)
12434
12435 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12436
12437         * configure.ac: first bug fix due to major/minor bump
12438
12439 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12440
12441         * configure.ac: bump nano to 1
12442
12443 === release 0.7.6 ===
12444
12445 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12446
12447         * NEWS:
12448         * RELEASE:
12449         * configure.ac:
12450           releasing 0.7.6, "Almost"
12451         * po/fr.po:
12452         * po/nl.po:
12453         * tools/Makefile.am:
12454         * tools/gst-feedback-m.m:
12455           unversioned source
12456
12457 2004-03-09  Johan Dahlin  <johan@gnome.org>
12458
12459         Reviewed by: Thomas Vander Stichele
12460
12461         * gst/gstelement.c (gst_element_class_init): register second
12462         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
12463         language bindings can (de)marshall correctly.
12464
12465         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
12466
12467         * gst/gsterror.c (gst_g_error_get_type): New function
12468
12469         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
12470         with VOID:OBJECT,OBJECT,STRING 
12471
12472 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
12473
12474         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
12475         Free a leaked g_timer on early returns.
12476
12477 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12478
12479         * docs/pwg/advanced-types.xml:
12480           Add cinepak description.
12481
12482 2004-03-07  David Schleef  <ds@schleef.org>
12483
12484         * docs/random/mimetypes:  Added cinepak description
12485
12486 2004-03-07  Andy Wingo  <wingo@pobox.com>
12487
12488         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
12489
12490         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
12491         there are no links to other groups when a group is destroyed.
12492         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
12493         removed from a group, make sure the link count to elements linked
12494         to other pads is appropriately decremented. This really fixes
12495         #135672.
12496
12497         The 1.60->1.61 patch has been reapplied in light of this fix.
12498
12499         * gst/gstelement.c (gst_element_dispose): Really protect against
12500         multiple invocations this time.
12501
12502 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12503
12504         * docs/gst/gstreamer-sections.txt:
12505         * docs/gst/tmpl/gsttag.sgml:
12506           remove some deprecated functions, document some existing ones
12507         * gst/gsttag.c: (gst_tag_get_flag):
12508         * gst/gsttag.h:
12509           add accessor function
12510
12511 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12512
12513         * docs/gst/gstreamer-sections.txt:
12514         * docs/gst/tmpl/gsttag.sgml:
12515         * docs/gst/tmpl/gstxml.sgml:
12516         * gst/gsttag.c: (gst_tag_get_flag):
12517         * gst/gsttag.h:
12518
12519 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
12520
12521         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
12522         leak
12523
12524 2004-03-05  David Schleef  <ds@schleef.org>
12525
12526         * REQUIREMENTS: Add bison and flex.
12527         * configure.ac: Fix comment about bison.
12528         * docs/random/ds/0.9-suggested-changes: yer ma
12529         * tools/gst-inspect.c: (print_element_info):  Fix warning.
12530
12531 2004-03-05  Benjamin Otte  <otte@gnome.org>
12532
12533         * gst/gstelement.c: (gst_element_error_full):
12534           revert recent recursive state changing commit - messing with other
12535           elements' states is evil and should be done by apps only.
12536
12537 2004-03-05  Benjamin Otte  <otte@gnome.org>
12538
12539         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
12540           check for empty intersection instead of NULL caps
12541         (gst_element_get_compatible_pad_filtered):
12542           remove old workaround that is only a bug nowadays
12543
12544 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12545
12546         * gst/gstelement.c: (gst_element_error_full):
12547           make elements try to recursively change state to PAUSED on all
12548           parents after an error to suppress ensuing warnings
12549         * gst/parse/grammar.y:
12550           make it check if it was able to sync the state, and throw an error
12551           if not, so stuff like
12552           oggdemux ! vorbisdec ! osssink gets caught
12553
12554 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12555
12556         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
12557           it contains lib64; use AS_AC_EXPAND to handle it properly
12558
12559 2004-03-05  David Schleef  <ds@schleef.org>
12560
12561         * gst/gstcpuid_i386.s:  Remove unused code
12562         * libs/gst/getbits/getbits.c: (gst_getbits_init),
12563         (gst_getbits_newbuf): Remove MMX code
12564         * libs/gst/getbits/getbits.h: Remove MMX code
12565
12566 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
12567
12568         * debian/.cvsignore:
12569         * debian/README.Debian:
12570         * debian/changelog:
12571         * debian/control:
12572         * debian/control.in:
12573         * debian/copyright:
12574         * debian/gstreamer-core-libs-dev.files:
12575         * debian/gstreamer-core-libs.files:
12576         * debian/gstreamer-core.files:
12577         * debian/gstreamer-core.postinst:
12578         * debian/gstreamer-core.postrm:
12579         * debian/gstreamer-doc.files:
12580         * debian/gstreamer-doc.links:
12581         * debian/gstreamer-doc.lintian:
12582         * debian/gstreamer-runtime.files:
12583         * debian/gstreamer-runtime.manpages:
12584         * debian/gstreamer-runtime.postinst:
12585         * debian/gstreamer-runtime.postrm:
12586         * debian/gstreamer-tools.files:
12587         * debian/gstreamer-tools.manpages:
12588         * debian/libgstreamer-dev.files:
12589         * debian/libgstreamer0.4.1.files:
12590         * debian/libgstreamerVERSION.files:
12591         * debian/rules:
12592         Debian package info not maintained here.
12593
12594 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12595
12596         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12597         * gst/gstbin.c: (gst_bin_class_init):
12598         * gst/gstelement.c: (gst_element_class_init):
12599         * gst/gstindex.c: (gst_index_class_init):
12600         * gst/gstobject.c: (gst_object_class_init),
12601         (gst_signal_object_class_init):
12602         * gst/gstpad.c: (gst_pad_template_class_init):
12603         * gst/gstregistry.c: (gst_registry_class_init):
12604         * gst/gsturi.c: (gst_uri_handler_base_init):
12605         * gst/gstxml.c: (gst_xml_class_init):
12606         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12607         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
12608           make all signal names use dashes instead of underscore
12609
12610 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12611
12612         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
12613
12614 2004-03-03  Benjamin Otte  <otte@gnome.org>
12615
12616         * gst/schedulers/gstoptimalscheduler.c:
12617           revert last commit by Andy Wingo. It causes segfaults on unreffing
12618           in Rhythmbox. (see bug #135672)
12619
12620 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
12621
12622         * po/fr.po: fix typo
12623
12624 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
12625
12626         * tools/gst-inspect.c: (main): 
12627         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
12628
12629 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12630
12631         * configure.ac:
12632           get GLIB_ONLY and POPT flags for the nonversioned binaries
12633         * tools/Makefile.am:
12634           use them
12635
12636 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12637
12638         * gst/gst.c: (init_post):
12639           change so that GST_REGISTRY now is where the global registry gets
12640           saved, since that is where plugins now get attached to first, and
12641           spilled over to the user registry.  Note that in the case of using
12642           GST_REGISTRY env var, we don't want to affect any real registries
12643           beyond the one given by this var, and thus we don't set a user
12644           registry to spill to.  So make sure GST_REGISTRY is writable.
12645
12646 2004-03-01  David Schleef  <ds@schleef.org>
12647
12648         * AUTHORS:  Added some names.  Add yourself if you're missing.
12649
12650 2004-03-01  David Schleef  <ds@schleef.org>
12651
12652         * MAINTAINERS: Add
12653
12654 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
12655
12656         * configure.ac:
12657           remove whitespace
12658         * docs/gst/tmpl/gstbuffer.sgml:
12659         * docs/gst/tmpl/gstdata.sgml:
12660         * docs/gst/tmpl/gstreamer-unused.sgml:
12661         * docs/gst/tmpl/gstxml.sgml:
12662           doc update
12663         * docs/manuals.mak:
12664           add a FIXME
12665         * docs/pwg/intro-preface.xml:
12666         * docs/pwg/pwg.xml:
12667           remove GNOME
12668         * gst/gst.c: (init_post):
12669           try GST_PLUGIN_PATH paths for the _global_registry first
12670         * gst/gstelement.h:
12671           add the error message as well, otherwise (null) debug info doesn't
12672           make much sense
12673         * tools/gst-register.c: (main):
12674           spill paths to next registry if this registry is not writable
12675         * po/fr.po:
12676         * po/nl.po:
12677           translation updates
12678
12679 2004-03-01  Johan Dahlin  <johan@gnome.org>
12680
12681         * gst/gstbuffer.c (_gst_buffer_initialize): 
12682         * gst/gstdata.c (gst_data_get_type): 
12683         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
12684         instead of ref, since some applications that uses GBoxed
12685         routines depends on a function that actually returns a copy.
12686
12687 2004-02-27  Benjamin Otte  <otte@gnome.org>
12688
12689         * gst/gstbuffer.h:
12690           remove gst_buffer_free, use gst_data_unref
12691         * gst/gstdata.c: (gst_data_get_type):
12692           use refcounting in GstData GBoxed registration
12693         * gst/gstdata.h:
12694           remove gst_data_free, use gst_data_unref
12695
12696 2004-02-27  Johan Dahlin  <johan@gnome.org>
12697
12698         * gst/gstdata.c (gst_data_get_type): New function, register
12699         GstData as a GBoxed type.
12700
12701         * gst/gstdata.h (GST_TYPE_DATA): New macro
12702
12703 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
12704
12705         * Makefile.am:
12706         * gstreamer.spec.in:
12707           put back RELEASE
12708         * gst/Makefile.am:
12709           clean up non-disting of built files
12710         * testsuite/debug/commandline.c:
12711           test fix for option rename
12712
12713 2004-02-26  David Schleef  <ds@schleef.org>
12714
12715         * configure.ac:  We don't really need glib-2.3.  Also remove
12716         some unneeded checks for library functions.
12717         * gst/Makefile.am:  Instead, we need to not dist files created
12718         by glib-genmarshal.
12719
12720 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12721
12722         * configure.ac:
12723           bump glib required version to 2.3.0 for g_value_takes_boxed
12724
12725  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
12726
12727         * common/m4/gst-docs.m4
12728         change flavour text from enable to disable as enable is our default
12729         closes bug Bug 135304
12730
12731 === release 0.7.5 ===
12732  
12733  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12734  
12735         * NEWS:
12736           instate NEWS file
12737         * Makefile.am:
12738         * gstreamer.spec.in:
12739         * RELEASE:
12740           put back release
12741         * configure.ac:
12742         * docs/random/release:
12743           more updates
12744
12745 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12746
12747         * gst/gsttag.c: (_gst_tag_initialize):
12748         * po/fr.po:
12749         * po/nl.po:
12750           remove hyphen from codec tags
12751
12752 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12753
12754         * gst/parse/Makefile.am:
12755           fix dependency so that a make from a clean build works the first
12756           time
12757
12758 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12759
12760         * docs/random/release:
12761           update release strategy
12762         * po/fr.po:
12763           auto-update po file
12764         * po/nl.po:
12765           update dutch translation
12766
12767 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12768
12769         * docs/manual/debugging.xml:
12770         fix manual for new debugging system
12771
12772 2004-02-25  Andy Wingo  <wingo@pobox.com>
12773
12774         * gst/gstpad.c (gst_pad_link_prepare): Re-add
12775         gst_pad_link_prepare. Please email the list with specific reasons
12776         for reverting.
12777
12778 2004-02-24  Andy Wingo  <wingo@pobox.com>
12779
12780         * gst/gstelement.c (gst_element_dispose): Protect against multiple
12781         invocations.
12782
12783         * gst/schedulers/gstoptimalscheduler.c:
12784         I added a mess of prototypes at the top of the file by way of
12785         documentation. Some of the operations on chains and groups were
12786         re-organized.
12787
12788         (create_group): Added a type argument so if the group is enabled,
12789         the setup_group_scheduler knows what to do.
12790         (group_elements): Added a type argument here, too, to be passed on
12791         to create_group.
12792         (group_element_set_enabled): If an unlinked PLAYING element is
12793         added to a bin, we have to create a new group to hold the element,
12794         and this function will be called before the group is added to the
12795         chain. Thus we have a valid case for group->chain==NULL. Instead
12796         of calling chain_group_set_enabled, just set the flag on the group
12797         (the chain's status will be set when the group is added to it).
12798         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
12799         Setup the group scheduler when the group is enabled, not
12800         specifically when an element goes PAUSED->PLAYING. This means
12801         PLAYING elements can be added, linked, and scheduled into a
12802         PLAYING pipeline, as was intended.
12803         (add_to_group): Don't ref the group twice. I don't know when this
12804         double-ref got in here. Removing it has the potential to cause
12805         segfaults if other parts of the scheduler are buggy. If you find
12806         that the scheduler is segfaulting for you, put in an extra ref
12807         here and see if that hacks over the underlying issue. Of course,
12808         then find out what code is unreffing a group it doesn't own...
12809         (create_group): Make the extra refcount floating, and remove it
12810         after adding the element. This means that...
12811         (unref_group): Destroy when the refcount reaches 0, not 1, like
12812         every other refcounted object in the known universe.
12813         (remove_from_group): When a group becomes empty, set it to be not
12814         active, and remove it from its chain. Don't unref it again,
12815         there's no floating reference any more.
12816         (destroy_group): We have to remove the group from the chain in
12817         remove_from_group (rather than here) to break refcounting cycles
12818         (the chain always has a ref on the group). So assert that
12819         group->chain==NULL.
12820         (ref_group_by_count): Removed, it was commented out anyway.
12821         (merge_chains): Use the remove_from_chain and add_to_chain
12822         primitives to do the reparenting, instead of rolling our own
12823         implementation.
12824         (add_to_chain): The first non-disabled group in the chain's group
12825         list will be the entry point for the chain. Because buffers can
12826         accumulate in loop elements' peer bufpens, we preferentially
12827         schedule loop groups before get groups to avoid unnecessary
12828         execution of get-based groups when the bufpens are already full.
12829         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
12830         (get_group_schedule_function): Ditto.
12831         (loop_group_schedule_function): Ditto.
12832         (gst_opt_scheduler_loop_wrapper): Ditto.
12833         (gst_opt_scheduler_iterate): Ditto.
12834
12835         I understand the opt scheduler now, yippee!
12836
12837         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
12838         (gst_pad_get_name, gst_pad_set_chain_function) 
12839         (gst_pad_set_get_function, gst_pad_set_event_function) 
12840         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
12841         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
12842         (gst_pad_set_query_function, gst_pad_get_query_types) 
12843         (gst_pad_get_query_types_default) 
12844         (gst_pad_set_internal_link_function) 
12845         (gst_pad_set_formats_function, gst_pad_set_link_function) 
12846         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
12847         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
12848         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
12849         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
12850         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
12851         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
12852         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
12853         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
12854         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
12855         (gst_pad_event_default_dispatch, gst_pad_event_default) 
12856         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
12857         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
12858         (gst_pad_get_formats_default, gst_pad_get_formats): Better
12859         argument checks, and some doc fixes.
12860
12861         (gst_pad_custom_new_from_template): Um, does anyone
12862         use these functions? Actually make a custom pad instead of a
12863         normal one.
12864         (gst_pad_try_set_caps): Transpose some checks.
12865         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
12866         the pad is in negotiation.
12867         (gst_pad_try_relink_filtered): Use pad_link_prepare.
12868         
12869         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
12870
12871         * gst/gstelement.h: 
12872         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
12873         on the list.
12874
12875 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12876
12877         * gst/gstbin.c: (gst_bin_add):
12878           add error for not being able to add elements
12879
12880 2004-02-22  Julien MOUTTE <julien@moutte.net>
12881
12882         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
12883         audio-codec and video-codec.
12884
12885 2004-02-22  Benjamin Otte  <otte@gnome.org>
12886
12887         reported by: Padraig O'Briain <padraig.obriain@sun.com>
12888
12889         * autogen.sh:
12890           replace test -e with test -x for mkinstalldirs to be more portable.
12891           (fixes #134816)
12892
12893 2004-02-22  Benjamin Otte  <otte@gnome.org>
12894
12895         * gst/gstpad.c:
12896           revert last patch from Andy, it makes gst_pad_can_link_filtered much
12897           too noisy
12898         * gst/gsttag.c: (_gst_tag_initialize):
12899         * gst/gsttag.h:
12900           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
12901         * libs/gst/control/dparam.c: (gst_dparam_attach):
12902         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
12903           check that types for attached dparams match
12904
12905 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12906
12907         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12908         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12909         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
12910           fix errors
12911
12912 2004-02-20  Andy Wingo  <wingo@pobox.com>
12913
12914         * gst/gstbin.c:
12915         * gst/gstbuffer.c:
12916         * gst/gstplugin.c:
12917         * gst/registries/gstxmlregistry.c: 
12918         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
12919
12920         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
12921         (gst_element_add_pad): DEBUG->INFO, some fixes.
12922         (gst_element_get_compatible_pad_template): Just see if the
12923         templates' caps intersect, not if one is a strict subset of the
12924         other. This conforms more to what gst_pad_link_intersect() does.
12925         (gst_element_class_add_pad_template): Don't memcpy the pad
12926         template, just ref it.
12927         (gst_element_get_compatible_pad_filtered): Clean up debug messages
12928
12929         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
12930         (gst_pad_link_filtered): Debug changes.
12931         (gst_pad_link_prepare): New function, consolidated from
12932         can_link_filtered and link_filtered.
12933
12934         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
12935         look more like that of the functions in gstelement.c
12936
12937         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
12938         object, and return the empty string if object is NULL.
12939
12940         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
12941         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
12942         LOG, not DEBUG. We still get flex info on debug.
12943
12944         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
12945         debug string more verbose.
12946         (plugin_times_older_than): DEBUG->LOG.
12947
12948 2004-02-20  Julien MOUTTE <julien@moutte.net>
12949
12950         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
12951         will emit found_tag for each stream they demux with the codec.
12952
12953 2004-02-20  Benjamin Otte  <otte@gnome.org>
12954
12955         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
12956           copy navigation event correctly. Check freeing tag lists. 
12957         * gst/gstthread.c: (gst_thread_change_state):
12958           don't abort() on state changing mess - it might happen because of
12959           bugs.
12960         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
12961           use boxed functions
12962         * gst/gstvalue.h:
12963           fix GST_VALUE_HOLDS_CAPS
12964
12965 2004-02-19  David Schleef  <ds@schleef.org>
12966
12967         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
12968         and use it for GST_FUNCTION.  (bug #134750)
12969
12970 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12971
12972         * po/fr.po:
12973         * po/nl.po:
12974           updating translations
12975
12976 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12977
12978         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
12979
12980 2004-02-18  kost@imn.htwk-leipzig.de
12981
12982         reviewed by: David Schleef  <ds@schleef.org>
12983
12984         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
12985         for libgstcontrol.
12986
12987 2004-02-18  David Schleef  <ds@schleef.org>
12988
12989         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12990         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12991         (gst_dpsmooth_new): Additional fixes to get double dparams working.
12992         * tools/gst-inspect.c: (print_element_info): Support dumping of
12993         double dparam information.
12994
12995 2004-02-17  David Schleef  <ds@schleef.org>
12996
12997         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12998         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
12999         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
13000         Use GST_TYPE_CAPS in signal prototype.
13001         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
13002         Convert GST_TYPE_CAPS to boxed.
13003         * gst/gstelement.c: (gst_element_class_init):
13004         Use GST_TYPE_TAG_LIST in signal prototype.
13005         * gst/gstindex.c: (gst_index_class_init):
13006         * gst/gstindex.h:
13007         Add GST_TYPE_INDEX_ENTRY type.
13008         * gst/gstmarshal.list:
13009         Add necessary marshal types.
13010         * gst/gstpad.c: (gst_real_pad_class_init),
13011         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13012         (gst_pad_recover_caps_error):
13013         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
13014         * gst/gststructure.c: (_gst_structure_initialize),
13015         (gst_structure_copy), (_gst_structure_copy_conditional):
13016         * gst/gststructure.h:
13017         Convert GST_TYPE_STRUCTURE to boxed.
13018         * gst/gsttag.c: (gst_tag_list_get_type):
13019         * gst/gsttag.h:
13020         Add GST_TYPE_TAG_LIST type.
13021
13022 2004-02-17  Julien MOUTTE  <julien@moutte.net>
13023
13024         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
13025         to what we agreed with david.
13026         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
13027
13028 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
13029
13030         * po/nl.po: update translation
13031
13032 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
13033
13034         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
13035           throw an error if spider is trying to play a mime type there is
13036           no decoder for
13037         * po/POTFILES.in:
13038           add gst/autoplug/gstspider.c for translation
13039
13040 2004-02-17  Julien MOUTTE  <julien@moutte.net>
13041
13042         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
13043         silently when the pad is negotiating.
13044
13045 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
13046
13047         * docs/faq/Makefile.am:
13048           add script to run gstreamer uninstalled 
13049         * docs/faq/faq.xml:
13050         * docs/faq/developing.xml:
13051         * docs/faq/gst-uninstalled:
13052           extract script to run gstreamer uninstalled
13053         * docs/manuals.mak:
13054           add EXTRA_SOURCES variable for Makefile.am's to set to
13055           use additional SOURCE files for the doc build
13056
13057 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
13058
13059         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
13060
13061 2004-02-15  Julien MOUTTE  <julien@moutte.net>
13062
13063         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
13064         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
13065         an error was thrown by osssink. Basically a state change failure for
13066         an element in a different scheduling group was considered as
13067         successful, which means that caps nego was going on and weird stuff
13068         happened. Like I wrote in the comment there, if someone wants to
13069         revert that please drop me a mail explaining why because I really see
13070         no point in keeping that broken behaviour there.
13071         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
13072         be empty, we then return NULL which will trigger a nice error when 
13073         pulling from the pad.
13074
13075 2004-02-13  David Schleef  <ds@schleef.org>
13076
13077         * libs/gst/control/dparam.c: (gst_dparam_class_init),
13078         (gst_dparam_get_property), (gst_dparam_set_property),
13079         (gst_dparam_do_update_default):
13080         * libs/gst/control/dparam.h:
13081         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
13082         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
13083         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
13084         (gst_dpsmooth_do_update_double):
13085         * libs/gst/control/dparam_smooth.h:
13086         * libs/gst/control/dparammanager.c:
13087         (gst_dpman_inline_direct_update):
13088         Add support for double dparams.
13089
13090 2004-02-13  David Schleef  <ds@schleef.org>
13091
13092         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
13093         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
13094
13095 2004-02-13  Mattias Wadman  <mattias@sudac.org>
13096
13097         reviewed by: David Schleef  <ds@schleef.org>
13098
13099         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
13100         (gst_fdsrc_init), (gst_fdsrc_set_property),
13101         (gst_fdsrc_get_property), (gst_fdsrc_get):
13102         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
13103         and sends an EOS event if file descriptor reading times out.
13104
13105 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13106
13107         * configure.ac:
13108           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
13109
13110 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13111
13112         * configure.ac: pass required libxml version as argument
13113         (bug reported by Christophe Fergeau)
13114
13115 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13116   
13117         * docs/gst/gstreamer-docs.sgml:
13118         * docs/gst/tmpl/gstxml.sgml:
13119         * docs/libs/gstreamer-libs-docs.sgml:
13120           version API docs
13121
13122 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13123
13124         * gst/gstinfo.c:
13125         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
13126         (gst_registry_pool_feature_filter):
13127         * gst/gstthread.c: (gst_thread_class_init):
13128         * gst/gstvalue.c:
13129           add includes exposed by building without libxml
13130         * gst/indexers/Makefile.am:
13131           do not build fileindex when LOADSAVE disabled; we should have
13132           a better libxml check later since fileindex depends on xml, not
13133           LOADSAVE or REGISTRY
13134         * libs/gst/control/Makefile.am:
13135           link with m
13136         * tools/Makefile.am:
13137           fix wrong source code for gst-xmlinspect
13138
13139 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13140
13141         * configure.ac:
13142           fix gcov help output
13143           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
13144         * docs/random/release:
13145           some updated releasing notes
13146         * gstreamer.spec.in:
13147           more updates
13148
13149 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13150
13151         * docs/faq/faq.xml:
13152         * docs/manual/manual.xml:
13153         * docs/pwg/pwg.xml:
13154         * docs/pwg/titlepage.xml:
13155           put version in documentation
13156
13157 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13158
13159         * tools/Makefile.am: fix man page installation
13160
13161 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13162
13163         * configure.ac:
13164           don't check for libxml when load/save and registry disabled (#105844)
13165         * gstreamer.spec.in:
13166           sync with fedora candidate spec
13167
13168 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13169
13170         * po/fr.po:
13171         * po/nl.po:
13172           replace multidisksrc with multifilesrc
13173
13174 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13175
13176         * po/POTFILES.in:
13177           update to multidisksrc => multifilesrc file renaming (#134145)
13178
13179 2004-02-11  David Schleef  <ds@schleef.org>
13180
13181         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
13182         * docs/gst/tmpl/gstpadtemplate.sgml: same
13183         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
13184         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
13185         fixing dance.
13186         * gst/gstutils.c: Remove disabled code that uses GstProps.
13187         * gst/registries/gstxmlregistry.h: same
13188         * docs/random/ds/0.9-suggested-changes: random notes
13189
13190 2004-02-11  kost@imn.htwk-leipzig.de
13191
13192         reviewed by: David Schleef  <ds@schleef.org>
13193
13194         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
13195         initialisation of clock (bug #134128)
13196
13197 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13198
13199         * configure.ac:
13200         * gst/elements/Makefile.am:
13201         * gst/elements/gstelements.c:
13202         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
13203         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
13204         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
13205         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
13206         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
13207         * gst/elements/gstmultifilesrc.h:
13208           rename multidisksrc to multifilesrc (part of #122200)
13209
13210 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13211
13212         * docs/manuals.mak:
13213           fix automake complaints
13214         * gst-element-check.m4:
13215           fix unquotedness
13216
13217 2004-02-11  David Schleef  <ds@schleef.org>
13218
13219         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
13220         * gst/gstatomic_impl.h: Disable sparc implementation.
13221
13222 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13223
13224         * gst-element-check.m4:
13225           fix underquoted macros as reported by automake 1.8.x (#133800)
13226         * configure.ac:
13227           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
13228           by autopoint (fixes #132996)
13229
13230 2004-02-10  Andy Wingo  <wingo@pobox.com>
13231
13232         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
13233         way to do inheritance.
13234         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
13235         (gst_pad_get_query_types, gst_pad_get_query_types_default):
13236         Routine docs.
13237         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
13238         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
13239         doc.
13240         (gst_pad_unlink, gst_pad_is_linked): Docs.
13241         (gst_pad_renegotiate): A brief description of capsnego.
13242         (gst_pad_try_set_caps): Document.
13243         (gst_pad_try_set_caps_nonfixed): Document.
13244         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
13245         (gst_pad_set_parent): Deprecated (although not out of the API).
13246         (gst_pad_get_parent): Deprecated, although many plugins use this.
13247         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
13248         are private and will go away in 0.9.
13249         (gst_pad_perform_negotiate): Doc.
13250         (gst_pad_link_unnegotiate): I think this is meant to be static.
13251         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
13252         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
13253         (gst_pad_get_peer): Doc updates.
13254         (gst_pad_caps_change_notify): Doc.
13255         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
13256         (gst_ghost_pad_new): Doc fixes.
13257
13258         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
13259         (gst_object_check_uniqueness): 
13260
13261         * gst/gstelement.c (gst_element_add_pad) 
13262         (gst_element_add_ghost_pad, gst_element_remove_pad) 
13263         (gst_element_remove_ghost_pad, gst_element_get_pad) 
13264         (gst_element_get_static_pad, gst_element_get_pad_list) 
13265         (gst_element_class_get_pad_template_list) 
13266         (gst_element_class_get_pad_template): Work on the docs.
13267         (gst_element_get_pad_template_list): Uses the class method.
13268         (gst_element_get_compatible_pad_template): Docs, and consolidate
13269         some test conditions. 
13270         (gst_element_get_pad_from_template): New static function.
13271         (gst_element_request_compatible_pad): Docs, and work with
13272         non-request compatible templates. 
13273         (gst_element_get_compatible_pad_filtered): Docs and remove
13274         redundant checks.
13275         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
13276         (gst_element_link_filtered, gst_element_link_many) 
13277         (gst_element_link, gst_element_link_pads) 
13278         (gst_element_unlink_many): Docs.
13279
13280 2004-02-05  Andy Wingo  <wingo@pobox.com>
13281
13282         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
13283         s/pointer/boxed/.
13284
13285         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
13286
13287         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
13288         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
13289         with the type=GST_TYPE_CAPS. This allows language bindings to know
13290         what kind of data they're dealing with.
13291
13292         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
13293         to NULL when g_value_init is called. GstCaps, which rolls its own
13294         type implementation, now does the same instead of allocating empty
13295         caps.
13296         (_gst_caps_initialize, _gst_caps_collect_value,
13297         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
13298         table methods. This allows G_VALUE_COLLECT to work.
13299
13300 2004-02-05  Andy Wingo  <wingo@pobox.com>
13301
13302         * configure.ac:
13303         * testsuite/Makefile.am (SUBDIRS): 
13304         * testsuite/ghostpads/Makefile.am: 
13305         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
13306
13307         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
13308         These two routines are the only ones that set
13309         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
13310         pad template. They should be made static, depending on ABI needs.
13311         (gst_real_pad_dispose): Handle the case of ghost pads without a
13312         parent. Assert after dealing with ghost pads that the ghost pad
13313         list is empty.
13314         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
13315         set after creation.
13316         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
13317         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
13318         functions. set_property will call add_ghost_pad/remove_ghost_pad
13319         as appropriate.
13320         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
13321
13322         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
13323         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
13324         (gst_element_remove_pad): Handle ghost pads as well.
13325         (gst_element_remove_ghost_pad): Deprecated (could be removed,
13326         depending on API-stability needs).
13327
13328 2004-02-05  Andy Wingo  <wingo@pobox.com>
13329
13330         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
13331         of course they're const
13332
13333 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13334
13335         * tools/Makefile.am:
13336         * tools/gst-feedback:
13337         * tools/gst-feedback-0.7:
13338           make gst-feedback versioned too for consistency
13339
13340 2004-02-11  David Schleef  <ds@schleef.org>
13341
13342         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13343         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
13344
13345 2004-02-10  Julien MOUTTE <julien@moutte.net>
13346
13347         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
13348         the structure does not contain a valid tag list. Adding a safety check
13349         to remove a noisy warning in that case.
13350
13351 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13352
13353         * gst/gst.c: fix name to be in line with others
13354
13355 2004-02-09  Julien MOUTTE <julien@moutte.net>
13356
13357         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
13358         not shout that loud when len is 0. Just return 0 silently.
13359
13360 2004-02-09  Julien MOUTTE  <julien@moutte.net>
13361
13362         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
13363         because data_unref has one and I prefer the debug to be symetric.
13364         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
13365         were refed when added to the queue and unrefed only once when the queue
13366         was flushed. Now the flush handler unref the buffers two times : first
13367         unref for the ref added when pushing in the queue's tail and second
13368         unref to destroy the flushed buffer.
13369
13370 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
13371
13372         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
13373
13374 2004-02-06  David Schleef  <ds@schleef.org>
13375
13376         * docs/random/ds/0.9-suggested-changes: Random ramblings
13377         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
13378         to int before printing.
13379         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
13380         * gst/parse/parse.l: same.  See bug #129600
13381
13382 2004-02-06  David Schleef  <ds@schleef.org>
13383
13384         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
13385         (gst_index_add_entry), (gst_index_add_associationv),
13386         (gst_index_add_association): Add gst_index_add_associationv()
13387         and clean up gst_index_add_association(). #127133
13388
13389 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13390
13391         * autogen.sh: check out common with right tag if CVS/Tag exists
13392
13393 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13394
13395         * testsuite/ghostpads/ghostpads.c: (main):
13396           fix testsuite from segfaulting
13397
13398 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13399
13400         * Makefile.am: add release target
13401         * configure.ac: bump nano to 1
13402         * docs/random/release:
13403
13404 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13405
13406         * gst/gstcaps.h:
13407         * gst/gstelement.c: (gst_element_base_class_init),
13408         (gst_element_class_set_details), (gst_element_clear_pad_caps):
13409         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13410         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
13411         (gst_real_pad_dispose):
13412         * gst/gststructure.c: (gst_structure_free),
13413         (gst_structure_from_string):
13414           put reverted patch back in
13415         * gst/gstelement.c: (gst_element_remove_pad):
13416           free explicit caps if they're set
13417         * gst/gstpad.c: (_gst_pad_default_fixate_func):
13418           copy the structure when fixating
13419
13420 2004-02-05  David Schleef  <ds@schleef.org>
13421
13422         * gst/gstmarshal.list:
13423         * gst/gstpad.c: (gst_real_pad_class_init),
13424         (_gst_real_pad_fixate_accumulator):
13425         Revert POINTER->BOXED change in signal marshaller.
13426
13427 === release 0.7.4 ===
13428                                                                                 
13429 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13430                                                                                 
13431         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
13432         * configure.ac: changed for release
13433
13434 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
13435
13436         * gstreamer.spec.in:
13437           bump required version of gtk-doc
13438
13439 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
13440
13441         * gst/gstcaps.h:
13442         * gst/gstelement.c: (gst_element_base_class_init),
13443         (gst_element_class_set_details), (gst_element_clear_pad_caps):
13444         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13445         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
13446         (gst_real_pad_dispose):
13447         * gst/gststructure.c: (gst_structure_free),
13448         (gst_structure_from_string):
13449           revert patch that breaks applications, reapply after release
13450           to get this fixed properly
13451
13452 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13453
13454         * gst/gsttag.c: (_gst_tag_initialize):
13455         * gst/gsttag.h:
13456           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
13457
13458 2004-02-04  David Schleef  <ds@schleef.org>
13459
13460         Fix some memleaks:
13461         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
13462         (gst_spider_plug_from_srcpad):
13463         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
13464
13465 2004-02-04  David Schleef  <ds@schleef.org>
13466
13467         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
13468         a GstRealPad before accessing its structure members.
13469
13470 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13471
13472         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
13473         (gst_clock_get_speed):
13474         * gst/gstclock.h:
13475           reset padding, remove unused fields
13476
13477 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13478
13479         * gst/autoplug/gstspideridentity.c:
13480         (gst_spider_identity_sink_loop_type_finding):
13481           use get_allowed_caps, not get_caps (fixes #132519)
13482         * gst/elements/gsttypefind.c: (stop_typefinding):
13483           use correct order when sending buffers and seeking
13484
13485 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13486
13487         * configure.ac:
13488         * gst/gstelement.h:
13489         * gst/gstpad.h:
13490         * gst/gstqueue.h:
13491           upgrade libtool CURRENT, reset padding
13492
13493 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13494
13495         * configure.ac:
13496           bump to prerelease
13497           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
13498
13499 2004-02-04  David Schleef  <ds@schleef.org>
13500
13501         * docs/random/ds/0.9-suggested-changes: random notes
13502         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
13503         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
13504         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
13505         expansion.
13506         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
13507         (gst_filesink_get_query_types): same
13508         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
13509         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
13510         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
13511         to use new GST_PTR_FORMAT.
13512         * gst/gstelement.h: deprecate function factory macros
13513         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
13514         These are our last variadic macros that can't be replaced with
13515         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
13516         attempting to deprecate gst_element_clock_wait().
13517         * gst/gstevent.h: same
13518         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13519         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
13520         * gst/gstpad.h: deprecate function factory macros similar to above.
13521
13522 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13523
13524         * configure.ac:
13525         * tools/Makefile.am:
13526         * tools/gst-run.c: (popt_callback), (hash_print_key),
13527         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
13528         (get_candidates), (main):
13529           add new source file to generate non-versioned wrapper binaries
13530           for our tools.
13531
13532 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13533
13534         * gst/gstevent.c: (_gst_event_free):
13535           actually break; inside the switch statement
13536         * gst/parse/grammar.y:
13537           fix memleak where GValues weren't unset
13538
13539 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13540
13541         * gst/gststructure.c: (gst_structure_from_string):
13542           fix huge memleak
13543         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
13544         (new_entry), (gst_type_find_element_chain):
13545         * gst/gstelement.c: (gst_element_base_class_init),
13546         (gst_element_class_set_details):
13547         * gst/gstpad.c: (gst_pad_can_link_filtered):
13548           fix smaller memleaks
13549         * gst/gstpad.c: (gst_real_pad_dispose):
13550           check that explicit caps are gone
13551         * gst/gststructure.c: (gst_structure_free):
13552           actually free the structure
13553         * gst/gstelement.c: (gst_element_clear_pad_caps):
13554           unset explicit caps
13555
13556 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13557
13558         * tools/Makefile.am:
13559           use AM_CFLAGS since all the CFLAGS are the same
13560           use AM_LDFAGS
13561
13562 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13563
13564         * docs/manual/gnome.xml:
13565           expand example a little
13566         * gst/gst.c: (gst_init_with_popt_table),
13567         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
13568           make sure popt option displays are done with right textdomain
13569           use GstPoptOption type
13570         * gst/gst.h:
13571           create GstPoptOption type
13572
13573 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13574
13575         * gst/gsterror.c: (_gst_stream_errors_init):
13576         * gst/gsterror.h:
13577           adding error type for no codec
13578         * po/POTFILES.in:
13579           add gst-inspect
13580         * po/nl.po:
13581           update dutch translation
13582         * tools/gst-inspect.c: (print_element_list), (main):
13583           do proper internationalization
13584         * tools/gst-launch.c: (idle_func):
13585           remove commented out function call
13586
13587 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13588
13589         * docs/README:
13590           add some error fixing notes
13591         * docs/gst/gstreamer-sections.txt:
13592           remove double entries
13593         * docs/gst/tmpl/gstbin.sgml:
13594         * docs/gst/tmpl/gstclock.sgml:
13595           remove override
13596         * docs/gst/tmpl/gstelement.sgml:
13597         * docs/gst/tmpl/gstindex.sgml:
13598         * docs/gst/tmpl/gstobject.sgml:
13599         * docs/gst/tmpl/gstpadtemplate.sgml:
13600         * docs/gst/tmpl/gstreamer-unused.sgml:
13601         * docs/gst/tmpl/gsttag.sgml:
13602         * docs/gst/tmpl/gstthread.sgml:
13603         * docs/gst/tmpl/gstxml.sgml:
13604         * gst/gsttag.h:
13605           sync header prototypes with c decls
13606         * gst/gsttaginterface.c:
13607           fix doc headers
13608
13609 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13610
13611         * gst/parse/Makefile.am:
13612         * gst/gstobject.h:
13613           get rid of gstmarshal.h dependency. It's not needed.
13614         * gst/gst.h:
13615         * gst/elements/gstfakesink.c:
13616         * gst/elements/gstfakesrc.c:
13617         * gst/elements/gstidentity.c:
13618         * gst/gstbin.c:
13619         * gst/gstelement.c:
13620         * gst/gstindex.c:
13621         * gst/gstobject.c:
13622         * gst/gstpad.c:
13623         * gst/gstthread.c:
13624         * gst/gstxml.c:
13625         * libs/gst/control/dparam.c:
13626         * libs/gst/control/dparammanager.c:
13627           include gstmarshal.h.
13628         Fixes #132045
13629
13630 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13631
13632         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
13633         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
13634         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
13635         * gst/elements/gstfilesrc.h:
13636           don't ref the filesrc when creating mmaped buffers. Don't keep a
13637           list of not-yet-destroyed buffers.
13638         * gst/gstbuffer.h:
13639           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
13640
13641 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
13642
13643         * gst/gst.c: (init_pre):
13644           remove textdomain
13645
13646 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13647
13648         * docs/pwg/advanced-events.xml:
13649         * docs/pwg/advanced-scheduling.xml:
13650         * docs/pwg/intro-basics.xml:
13651         * docs/pwg/other-manager.xml:
13652         * docs/pwg/other-nton.xml:
13653         * docs/pwg/other-ntoone.xml:
13654         * docs/pwg/other-oneton.xml:
13655         * docs/pwg/pwg.xml:
13656           All sort of documentation... Forgot what. Point is that I want this
13657           in before I leave. The 'other-*' will be the last section and will
13658           explain issues specific to these type of elements.
13659
13660 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13661
13662         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13663         (gst_filesrc_get_read):
13664           set all the values on buffers that we can
13665
13666 2004-02-02  David Schleef  <ds@schleef.org>
13667
13668         Change usage of isblah() to g_ascii_isblah() to be more locale
13669         independent.  (#133076)
13670         * gst/gsturi.c: (gst_uri_protocol_check_internal):
13671         * gst/gstutils.c:
13672         * gst/parse/parse.l:
13673
13674 2004-02-02  Jon Trowbridge  <trow@gnu.org>
13675
13676         reviewed by: David Schleef  <ds@schleef.org>
13677
13678         Fix memory leaks:
13679         * gst/gstcaps.c: (gst_caps_to_string):
13680         * gst/registries/gstxmlregistry.c:
13681         (gst_xml_registry_add_path_list_func),
13682         (gst_xml_registry_parse_padtemplate):
13683
13684 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
13685
13686         * gst/gstelement.c: (gst_element_default_error):
13687           suffix error messages with period
13688
13689 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13690
13691         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13692         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13693         * gst/gsterror.c: (gst_error_get_message):
13694           Suffix with dots
13695         * po/fr.po:
13696         * po/nl.po:
13697           Update translation files
13698
13699 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13700
13701         * gst/autoplug/gstspideridentity.c:
13702         (gst_spider_identity_sink_loop_type_finding):
13703         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13704         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13705         (gst_filesink_close_file), (gst_filesink_handle_event),
13706         (gst_filesink_chain):
13707         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13708         (gst_filesrc_get_read), (gst_filesrc_open_file):
13709         * gst/elements/gstidentity.c: (gst_identity_chain):
13710         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13711         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13712         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13713         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13714         * gst/gsterror.c: (_gst_core_errors_init),
13715         (_gst_library_errors_init), (_gst_resource_errors_init),
13716         (_gst_stream_errors_init), (gst_error_get_message):
13717         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13718         (gst_pad_recover_caps_error), (gst_pad_pull):
13719         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13720         * gst/schedulers/gstbasicscheduler.c:
13721         (gst_basic_scheduler_chainhandler_proxy),
13722         (gst_basic_scheduler_gethandler_proxy),
13723         (gst_basic_scheduler_cothreaded_chain):
13724           Suffix error messages with period.
13725           Use (NULL) instead of NULL
13726
13727 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13728
13729         * docs/gst/tmpl/gstelement.sgml:
13730         * docs/gst/tmpl/gstxml.sgml:
13731         * gst/gstelement.c: (gst_element_error_full):
13732           add element path to error
13733
13734 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13735
13736         * docs/random/mimetypes:
13737           update raw int/float info
13738         * gst/gsttag.c: (_gst_tag_initialize):
13739         * gst/gsttag.h:
13740           add GST_TAG_ENCODER
13741
13742 2004-01-30  David Schleef  <ds@schleef.org>
13743
13744         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
13745           missing (#132991)
13746
13747 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
13748
13749         reviewed by Benjamin Otte 
13750           parts of the patch submitted in bug #113913
13751
13752         * configure.ac:
13753           use AC_C_INLINE. Use = instead of == with test
13754         * examples/plugins/example.c:
13755         * gst/autoplug/gstspideridentity.c:
13756         * gst/elements/gstfdsrc.c:
13757         * gst/elements/gstfilesrc.c:
13758         * gst/elements/gstidentity.c:
13759         * gst/elements/gstmultidisksrc.c:
13760         * gst/elements/gststatistics.c:
13761         * gst/gstelement.c:
13762         * gst/gstobject.c:
13763         * gst/gstpad.c:
13764         * gst/gstpipeline.c:
13765         * gst/gstthread.c:
13766           don't end enums with a comma
13767         * gst/gstindex.c: (gst_index_compare_func):
13768           do explicit casting to gint
13769         * gst/gsttrace.c: (gst_trace_text_flush):
13770           #define strsize as a macro
13771
13772 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
13773
13774         * docs/README:
13775         * docs/gst/gstreamer-docs.sgml:
13776         * docs/gst/gstreamer-sections.txt:
13777         * docs/gst/tmpl/gstelement.sgml:
13778         * docs/gst/tmpl/gsterror.sgml:
13779         * docs/gst/tmpl/gstinterface.sgml:
13780         * docs/gst/tmpl/gstreamer-unused.sgml:
13781         * docs/gst/tmpl/gststructure.sgml:
13782         * docs/gst/tmpl/gsttag.sgml:
13783         * docs/gst/tmpl/gsttaginterface.sgml:
13784         * docs/gst/tmpl/gstvalue.sgml:
13785         make sure all API ends up in the built docs
13786         * gst/gstinterface.c:
13787         * gst/gststructure.c: (gst_structure_id_set_value),
13788         (gst_structure_set_value), (gst_structure_id_get_value):
13789         * gst/gststructure.h:
13790         * gst/gstvalue.h:
13791         sync .h with .c declarations
13792
13793 2004-01-30  Julien Moutte  <julien@moutte.net>
13794
13795         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
13796         Ronald will fix riffread.
13797
13798 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13799
13800         * docs/pwg/advanced-interfaces.xml:
13801           Added tuner interface docs.
13802
13803 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13804
13805         * docs/random/mimetypes:
13806           correct Theora information
13807         * gst/gstelement.h:
13808           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
13809
13810 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13811
13812         * gst/gstelement.c: (gst_element_error_full):
13813         * gst/gstelement.h:
13814           GST_ELEMENT_ERROR in enum -> _IN_ERROR
13815
13816 2004-01-29  Julien MOUTTE  <julien@moutte.net>
13817
13818         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
13819         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
13820         again and even before DISCONT.
13821         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
13822         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
13823         bytestream so that it's not stopping to fill the bytestream if events
13824         different than EOS or DISCONT are received. Instead it process them so
13825         that they go downstream.
13826
13827 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13828
13829         * docs/gst/tmpl/gstelement.sgml:
13830         * docs/gst/tmpl/gstreamer-unused.sgml:
13831         * docs/gst/tmpl/gstxml.sgml:
13832         * gst/autoplug/gstspideridentity.c:
13833         (gst_spider_identity_sink_loop_type_finding):
13834         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13835         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13836         (gst_filesink_close_file), (gst_filesink_handle_event),
13837         (gst_filesink_chain):
13838         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13839         (gst_filesrc_get_read), (gst_filesrc_open_file):
13840         * gst/elements/gstidentity.c: (gst_identity_chain):
13841         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13842         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13843         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13844         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13845         * gst/gstelement.h:
13846         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13847         (gst_pad_recover_caps_error), (gst_pad_pull):
13848         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13849         * gst/schedulers/gstbasicscheduler.c:
13850         (gst_basic_scheduler_chainhandler_proxy),
13851         (gst_basic_scheduler_gethandler_proxy),
13852         (gst_basic_scheduler_cothreaded_chain):
13853           gst_element_error -> GST_ELEMENT_ERROR
13854
13855 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13856
13857         * docs/Makefile.am:
13858         * docs/gst/tmpl/gstelement.sgml:
13859         * docs/gst/tmpl/gstxml.sgml:
13860         * docs/manuals.mak:
13861         * docs/pwg/advanced-request.xml:
13862         * docs/pwg/advanced-scheduling.xml:
13863         * docs/pwg/advanced-tagging.xml:
13864           fix non-validating docbook using CDATA
13865           make sure make check-local gets run first to check if it validates
13866
13867 2004-01-29  Julien MOUTTE <julien@moutte.net>
13868
13869         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
13870         handling (up and downstream).
13871         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
13872         my_filter thing.
13873
13874 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13875
13876         * docs/pwg/advanced-tagging.xml:
13877           Add docs about tag writing.
13878
13879 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13880
13881         * docs/pwg/advanced-tagging.xml:
13882           Add a part about tag reading and application signalling... Tag
13883           writing still needs to be documented.
13884         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
13885           We can set file locations in READY, too.
13886
13887 2004-01-29  Julien MOUTTE <julien@moutte.net>
13888
13889         * docs/random/ds/element-checklist: Adding some notes about src
13890         events.
13891
13892 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13893
13894         * docs/random/mimetypes:
13895           Update docs to point to correct elements for various mimetypes, and
13896           some more errors pointed out by St??phane LOEUILLET (aka LeRoutier)
13897           <stephane.loeuillet@tiscali.fr>.
13898
13899 2004-01-28  David Schleef  <ds@schleef.org>
13900
13901         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
13902
13903 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13904
13905         * docs/random/mimetypes:
13906           update docs for audio/x-raw-float. Add "buffer-frames=0 means
13907           undefined"
13908         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
13909           make it only work in NULL.
13910         * gst/gstcaps.c:
13911           don't posion NULL caps
13912         * gst/gstelement.c: (gst_element_set_time):
13913           add debugging statement
13914         * gst/gstelement.c: (gst_element_emit_found_tag),
13915         (gst_element_found_tag_func), (gst_element_found_tags):
13916         * gst/gstelement.h:
13917           These functions take const taglists
13918         * gst/gstpad.c: (gst_pad_proxy_getcaps):
13919           fix memleak
13920         * gst/gstpad.c: (gst_pad_event_default):
13921           make more effort on handling discont and clocks, g_warn if everything
13922           fails
13923         * gst/gststructure.c: (gst_structure_remove_fields),
13924         (gst_structure_remove_fields_valist):
13925         * gst/gststructure.h:
13926           add gst_structure_remove_fields(_valist)
13927         * gst/gsttag.c:
13928           fix doc glitch
13929
13930 2004-01-28  David Schleef  <ds@schleef.org>
13931
13932         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
13933         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
13934         Fix memory leakage of gst_caps_to_string().
13935
13936         Use GST_PTR_FORMAT instead of gst_caps_to_string():
13937         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
13938         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
13939         (gst_spider_identity_sink_loop_type_finding):
13940         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
13941         (find_suggest):
13942         * gst/gstpad.c: (gst_pad_try_relink_filtered),
13943         (gst_pad_set_explicit_caps):
13944         * gst/parse/grammar.y:
13945
13946 2004-01-28  David Schleef  <ds@schleef.org>
13947
13948         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
13949         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
13950         * docs/random/ds/0.9-suggested-changes: Notes from Company.
13951         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
13952         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
13953         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
13954         (gst_debug_log_default), (_gst_info_printf_extension),
13955         (_gst_info_printf_extension_arginfo):  Add printf extension.
13956         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
13957         * gst/gststructure.c: (gst_structure_to_string),
13958         (_gst_structure_parse_value): Use gst_value_deserialize() and
13959         remove old code.
13960         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
13961         (gst_value_deserialize_boolean), (gst_strtoi),
13962         (gst_value_deserialize_int), (gst_value_deserialize_double),
13963         (gst_value_deserialize_string), (gst_value_deserialize): Implement
13964         a bunch of deserialize functions and gst_value_deserialize.
13965         * gst/gstvalue.h: er, _de_serialize, not unserialize
13966         * testsuite/caps/string-conversions.c: (main): We don't currently
13967         handle (float) in caps, so convert these to (double).
13968         * testsuite/debug/Makefile.am: Add new test for the printf extension
13969         * testsuite/debug/printf_extension.c: (main): same
13970
13971 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13972
13973         * docs/random/company/time:
13974           Add some docs about clocking and time
13975
13976 2004-01-28  Julien MOUTTE <julien@moutte.net>
13977
13978         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
13979
13980 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13981
13982         * docs/pwg/advanced-clock.xml:
13983         * docs/pwg/advanced-dparams.xml:
13984         * docs/pwg/advanced-events.xml:
13985         * docs/pwg/advanced-interfaces.xml:
13986         * docs/pwg/advanced-midi.xml:
13987         * docs/pwg/advanced-request.xml:
13988         * docs/pwg/advanced-scheduling.xml:
13989         * docs/pwg/advanced-tagging.xml:
13990         * docs/pwg/advanced-types.xml:
13991         * docs/pwg/appendix-checklist.xml:
13992         * docs/pwg/building-boiler.xml:
13993         * docs/pwg/building-chainfn.xml:
13994         * docs/pwg/building-filterfactory.xml:
13995         * docs/pwg/building-pads.xml:
13996         * docs/pwg/building-props.xml:
13997         * docs/pwg/building-signals.xml:
13998         * docs/pwg/building-state.xml:
13999         * docs/pwg/building-testapp.xml:
14000         * docs/pwg/intro-basics.xml:
14001         * docs/pwg/intro-preface.xml:
14002         * docs/pwg/other-autoplugger.xml:
14003         * docs/pwg/other-sink.xml:
14004         * docs/pwg/other-source.xml:
14005         * docs/pwg/titlepage.xml:
14006           fix up id's
14007
14008 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
14009
14010         * docs/95NonPath:
14011         * docs/HACKING:
14012         * docs/README:
14013         * docs/building-the-docs-on-debian:
14014           collect relevant bits of doc info
14015
14016 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14017
14018         * docs/pwg/advanced_tagging.xml:
14019           Half-assed commit so Thomas can re-arrange document IDs here to be
14020           consistent, too.
14021
14022 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
14023
14024         * docs/manual/autoplugging.xml:
14025         * docs/manual/bins-api.xml:
14026         * docs/manual/bins.xml:
14027         * docs/manual/buffers-api.xml:
14028         * docs/manual/buffers.xml:
14029         * docs/manual/clocks.xml:
14030         * docs/manual/components.xml:
14031         * docs/manual/cothreads.xml:
14032         * docs/manual/debugging.xml:
14033         * docs/manual/dparams-app.xml:
14034         * docs/manual/dynamic.xml:
14035         * docs/manual/elements-api.xml:
14036         * docs/manual/elements.xml:
14037         * docs/manual/factories.xml:
14038         * docs/manual/gnome.xml:
14039         * docs/manual/goals.xml:
14040         * docs/manual/helloworld.xml:
14041         * docs/manual/helloworld2.xml:
14042         * docs/manual/init-api.xml:
14043         * docs/manual/intro.xml:
14044         * docs/manual/links-api.xml:
14045         * docs/manual/links.xml:
14046         * docs/manual/manual.xml:
14047         * docs/manual/motivation.xml:
14048         * docs/manual/pads-api.xml:
14049         * docs/manual/pads.xml:
14050         * docs/manual/plugins-api.xml:
14051         * docs/manual/plugins.xml:
14052         * docs/manual/programs.xml:
14053         * docs/manual/queues.xml:
14054         * docs/manual/quotes.xml:
14055         * docs/manual/schedulers.xml:
14056         * docs/manual/states-api.xml:
14057         * docs/manual/states.xml:
14058         * docs/manual/threads.xml:
14059         * docs/manual/typedetection.xml:
14060         * docs/manual/xml.xml:
14061           use chapter, part, section or misc as id starts for all bits
14062
14063 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
14064
14065         * docs/gst/gstreamer-sections.txt:
14066           Fix up TITLE of the sections
14067
14068 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14069
14070         * docs/pwg/advanced_interfaces.xml:
14071           Add documentation on propertyprobing.
14072         * docs/pwg/advanced_events.xml:
14073         * docs/pwg/advanced_tagging.xml:
14074         * docs/pwg/building_boiler.xml:
14075         * docs/pwg/building_filterfactory.xml:
14076         * docs/pwg/pwg.xml:
14077           Move filterfactory and tagging into their own chapter, add a chapter
14078           on events. all these are empty placeholders that will be filled in
14079           some day.
14080
14081 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14082
14083         * docs/pwg/advanced_interfaces.xml:
14084           Docs for mixer interface. Also a check for website uploading.
14085
14086 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
14087
14088         * docs/HACKING:
14089         * docs/Makefile.am:
14090         * docs/faq/Makefile.am:
14091         * docs/gst/Makefile.am:
14092         * docs/gst/tmpl/gstelement.sgml:
14093         * docs/gst/tmpl/gstplugin.sgml:
14094         * docs/gst/tmpl/gstreamer-unused.sgml:
14095         * docs/libs/Makefile.am:
14096         * docs/manual/Makefile.am:
14097         * docs/manuals.mak:
14098         * docs/pwg/Makefile.am:
14099         * docs/upload.mak:
14100           Separate out upload target and make it similar for
14101           both docbook and gtk-doc docs
14102
14103 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
14104
14105         * docs/manuals.mak:
14106           Fix upload target to work with freedesktop
14107
14108 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14109
14110         * docs/pwg/advanced_types.xml:
14111           Add notes on creating your own types.
14112         * docs/pwg/building_boiler.xml:
14113         * docs/pwg/building_pads.xml:
14114         * docs/pwg/building_state.xml:
14115           Add some stuff about how to retrieve values from structures, how
14116           that relates to types and change layout slightly again to be almost
14117           perfect.
14118
14119 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14120
14121         * docs/pwg/advanced_dparams.xml:
14122         * docs/pwg/advanced_scheduling.xml:
14123           Change index layout slightly.
14124
14125 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14126
14127         * docs/pwg/advanced_clock.xml:
14128         * docs/pwg/advanced_interfaces.xml:
14129         * docs/pwg/advanced_midi.xml:
14130           General placeholders for now.
14131         * docs/pwg/advanced_request.xml:
14132           Explanation about sometimes and request pads.
14133         * docs/pwg/advanced_scheduling.xml:
14134           Concept of bytestream, loopfunctions and schedulers.
14135         * docs/pwg/building_boiler.xml:
14136           Add something about plugin-init.
14137
14138 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
14139
14140         * docs/pwg/building_pads.xml:
14141           Fix broken docbook
14142
14143 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14144
14145         * docs/pwg/advanced_interfaces.xml:
14146         * docs/pwg/pwg.xml:
14147           Add as a placeholder for future filling-in.
14148         * docs/pwg/basics_autoplugging.xml:
14149         * docs/pwg/basics_buffers.xml:
14150         * docs/pwg/basics_elements.xml:
14151         * docs/pwg/basics_events.xml:
14152         * docs/pwg/basics_plugins.xml:
14153         * docs/pwg/basics_types.xml:
14154           Remove, because unused (this is all in intro_basics.xml).
14155         * docs/pwg/building_signals.xml:
14156           Short intro to signals + reference to GObject docs - we really
14157           shouldn't go into these sort of things to deply because we don't
14158           use them that extensively anyway.
14159         * docs/pwg/building_state.xml:
14160           Explanation of states. Benjamin, please check.
14161         * docs/pwg/building_testapp.xml:
14162           Put everything in one page - putting only a few lines of content
14163           per page doesn't really make sense.
14164
14165           Time to get into the advanced topics. ;).
14166
14167 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14168
14169         * docs/pwg/advanced_types.xml:
14170           Finish documenting the current state of mimetypes.
14171         * docs/pwg/building_boiler.xml:
14172         * docs/pwg/building_chainfn.xml:
14173         * docs/pwg/building_pads.xml:
14174         * docs/pwg/building_props.xml:
14175         * docs/pwg/building_testapp.xml:
14176           Start documenting the "how to build a simple audio filter" part
14177           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
14178           states and (maybe?) a short introduction to capsnego in the chapter
14179           on pads (building_pads.xml). Capsnego should probably be explained
14180           fully in advanced_capsnego.xml or so.
14181
14182 2004-01-26  David Schleef  <ds@schleef.org>
14183
14184         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
14185         * gst/gstpad.h: Add new function to allow element to (somewhat)
14186         specify non-fixed caps on a pad.
14187         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
14188         that I added a few weeks ago.
14189
14190 2004-01-26  David Schleef  <ds@schleef.org>
14191
14192         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
14193           making try_set_caps() work with non-fixed caps.
14194
14195 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14196
14197         * docs/pwg/advanced_types.xml:
14198         * docs/pwg/intro_basics.xml:
14199         * docs/pwg/intro_preface.xml:
14200         * docs/pwg/pwg.xml:
14201         * docs/pwg/titlepage.xml:
14202           First try to resurrect the PWG. I'm halfway integrating the mimetypes
14203           in here (docs/random/mimetypes), and will from there on work on both
14204           updating outdated parts and adding missing parts.
14205           That doesn't mean I'll fix it completely, but I'll try at least. ;).
14206
14207 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
14208
14209         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
14210           policy is set
14211
14212 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14213
14214         * gst/gstelement.h:
14215           remove gst_element_factory_get_version. It doesn't exist anymore.
14216         * gst/gstplugin.c:
14217         * gst/gstplugin.h:
14218           remove gst_plugin_set_name and change gst_plugin_get_longname to
14219           gst_plugin_get_description to match code.
14220         * gst/gsterror.h:
14221           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
14222         * gst/gstpad.c: (gst_pad_try_set_caps):
14223           make it work with nonfixed caps.
14224           Note that even in the nonfixed case the link function of the pad
14225           that tries to set caps isn't called.
14226
14227 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14228
14229         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
14230           fix bug where buffer was not assembled correctly
14231         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
14232           silence by default
14233         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
14234           only seek if there's no more buffers that could work without seeking
14235
14236 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14237
14238         * gst/gsttag.c: (_gst_tag_initialize):
14239         * gst/gsttag.h:
14240           Add application tag (for encoding/muxing app).
14241
14242 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14243
14244         * autogen.sh:
14245           make autopoint force, and libtoolize not copy
14246         * common/m4/as-docbook.m4:
14247           added docbook xml catalog setup check
14248         * common/m4/gst-doc.m4:
14249           use docbook check
14250
14251 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
14252
14253         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
14254         * gst/gsttag.h:
14255           add GstTagFlag
14256
14257 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14258
14259         * docs/gst/gstreamer-sections.txt:
14260         * docs/gst/tmpl/gst.sgml:
14261         * docs/gst/tmpl/gstbuffer.sgml:
14262         * docs/gst/tmpl/gstclock.sgml:
14263         * docs/gst/tmpl/gstelement.sgml:
14264         * docs/gst/tmpl/gstreamer-unused.sgml:
14265         * docs/gst/tmpl/gstxml.sgml:
14266           sync latest API changes to docs
14267
14268 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14269
14270         * gst/gstpluginfeature.c:
14271           fix doc snippet
14272         * tools/gst-inspect.c: (print_element_list):
14273           fix output of typefind
14274           add GPL header
14275         * tools/gst-launch.c:
14276           add GPL header
14277
14278 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14279
14280         * gst/elements/Makefile.am:
14281         * gst/elements/gstelements.c:
14282         * gst/elements/gsttypefindelement.c:
14283         * gst/elements/gsttypefindelement.h:
14284         * po/POTFILES.in:
14285         * po/fr.po:
14286         * po/nl.po:
14287           renamed gsttypefindelement to gsttypefind, conserving CVS history
14288
14289 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14290
14291         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
14292         * gst/gsttag.h:
14293           add some tags used in ogg as well
14294           fix _ in replaygain tags
14295
14296 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14297
14298         * gst/gsterror.h:
14299           fix wrong GST_LIBRARY_ERROR_ENCODE addition
14300
14301 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14302
14303         * gst/gstelement.c: (gst_element_error_full):
14304         * gst/gstelement.h:
14305           change _extended to _full
14306
14307 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14308
14309         reviewed by: <delete if not using a buddy>
14310
14311         * docs/gst/tmpl/gst.sgml:
14312         * docs/gst/tmpl/gstbuffer.sgml:
14313         * docs/gst/tmpl/gstclock.sgml:
14314         * docs/gst/tmpl/gstelement.sgml:
14315         * docs/gst/tmpl/gstreamer-unused.sgml:
14316         * docs/gst/tmpl/gstxml.sgml:
14317         * gst/gstelement.c: (gst_element_error_full):
14318         * gst/gstelement.h:
14319
14320 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14321
14322         * gst/gstelement.h: fix _gst_element_error_printf prototype
14323
14324 2004-01-20  David Schleef  <ds@schleef.org>
14325
14326         * gst/gststructure.c: (gst_structure_to_string):
14327         Convert function to use gst_value_serialize().
14328         * gst/gstvalue.c: (gst_value_serialize_list),
14329         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
14330         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
14331         (gst_value_serialize_int), (gst_value_serialize_double),
14332         (gst_string_wrap), (gst_value_serialize_string),
14333         (gst_value_serialize), (gst_value_deserialize):
14334         * gst/gstvalue.h:
14335         Add implementations for serialize.
14336
14337 2004-01-20  Julien MOUTTE  <julien@moutte.net>
14338
14339         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
14340         we want to keep that one in the future or change xvidenc.c to use 
14341         another error.
14342
14343 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14344
14345         * gst/gstelement.c: (_gst_element_error_printf):
14346         * gst/gstelement.h:
14347           privatise function
14348
14349 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14350
14351         * docs/random/error:
14352           doc explaining error system
14353         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
14354           cleanup
14355
14356 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14357
14358         * gst/gst-i18n-app.h:
14359         * gst/gst-i18n-lib.h:
14360           remove inclusion of config.h
14361         * po/POTFILES.in:
14362         * po/nl.po:
14363           add gst/gstelement.c
14364
14365 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14366
14367         * po/nl.po: updated Dutch translation
14368
14369 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14370
14371         * gst/gsterror.c: (_gst_core_errors_init),
14372         (_gst_library_errors_init), (_gst_resource_errors_init),
14373         (_gst_stream_errors_init):
14374         remove ending punctuation dots
14375
14376 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14377
14378         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
14379         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
14380         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
14381         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
14382         (gst_pipefilter_chain), (gst_pipefilter_open_file):
14383         use GST_ERROR_SYSTEM
14384
14385 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14386
14387         * gst/gstelement.c: (gst_element_error_printf),
14388         (gst_element_error_extended):
14389         * gst/gstelement.h:
14390           add a helper printf function so we can have NULL values passed.
14391
14392 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14393
14394         * gst/gstelement.h:
14395           add G_STMT macros to gst_element_error, which isn't strictly
14396           necessary but people tell me to anyway.
14397
14398 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
14399
14400         * gst/Makefile.am:
14401         * gst/autoplug/gstspideridentity.c:
14402         (gst_spider_identity_sink_loop_type_finding):
14403         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
14404         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
14405         (gst_filesink_close_file), (gst_filesink_handle_event),
14406         (gst_filesink_chain):
14407         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
14408         (gst_filesrc_map_region), (gst_filesrc_get_read),
14409         (gst_filesrc_open_file):
14410         * gst/elements/gstidentity.c: (gst_identity_chain):
14411         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
14412         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
14413         (gst_pipefilter_chain), (gst_pipefilter_open_file):
14414         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
14415         * gst/gst.h:
14416         * gst/gst_private.h:
14417         * gst/gstelement.c: (gst_element_class_init),
14418         (gst_element_default_error), (gst_element_error_func),
14419         (gst_element_error_extended):
14420         * gst/gstelement.h:
14421         * gst/gsterror.c: (_gst_core_errors_init),
14422         (_gst_library_errors_init), (_gst_resource_errors_init),
14423         (_gst_stream_errors_init), (gst_error_get_message):
14424         * gst/gsterror.h:
14425         * gst/gstinfo.c: (_gst_debug_init):
14426         * gst/gstmarshal.list:
14427         * gst/gstpad.c: (gst_pad_set_explicit_caps),
14428         (gst_pad_recover_caps_error), (gst_pad_pull):
14429         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
14430         * gst/schedulers/gstbasicscheduler.c:
14431         (gst_basic_scheduler_chainhandler_proxy),
14432         (gst_basic_scheduler_gethandler_proxy),
14433         (gst_basic_scheduler_cothreaded_chain):
14434         * po/POTFILES.in:
14435         * po/fr.po:
14436         * po/nl.po:
14437           change error signal
14438           add error categories
14439
14440 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
14441
14442         * gst/gsttag.c: (_gst_tag_initialize):
14443         * gst/gsttag.h:
14444         Add replaygain tag
14445
14446 2004-01-18  Colin Walters  <walters@verbum.org>
14447
14448         * examples/retag/retag.c: Call gst_init before processing
14449         program args.  Add g_assert to _link_many call.
14450
14451 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14452
14453         * gst/gstpad.c: (gst_pad_alloc_buffer):
14454           Return a newly allocated buffer when the pad has no peer.
14455
14456 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14457
14458         * gst/gstclock.c: (gst_clock_get_time):
14459           make it compile with gcc 2.95 again.
14460           Patch by Scott Wheeler
14461
14462 2004-01-15  David Schleef  <ds@schleef.org>
14463
14464         * gst/gstcaps.h:
14465         Added gst_caps_is_simple() macro.
14466         * testsuite/caps/caps.c: (test1):
14467         * testsuite/caps/intersect2.c: (main):
14468         * testsuite/caps/intersection.c: (main):
14469         Fixes to make 'make check' work again after removing
14470         gst_caps_is_chained().
14471
14472 2004-01-15  Leif Johnson <leif@ambient.2y.net>
14473
14474         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
14475         and additions to the MIDI document.
14476
14477 2004-01-15  David Schleef  <ds@schleef.org>
14478
14479         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
14480         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
14481         of GST_RPAD_, since we don't know if it's a real or ghost pad.
14482
14483 2004-01-15  David Schleef  <ds@schleef.org>
14484
14485         * gst/gstqueue.c:
14486         * gst/gstqueue.h:
14487         Fix the spelling of "treshold" and make min_threshold actually
14488         affect the queue.
14489
14490 2004-01-15  David Schleef  <ds@schleef.org>
14491
14492         * gst/gstcaps.c:
14493         Add lots of documentation.
14494         * gst/gstcaps.h:
14495         Deprecate a few functions.
14496         * gst/gstpad.c:
14497         Removed use of deprecated functions.
14498
14499 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14500
14501         * gst/gstpad.c: (gst_pad_is_linked):
14502         * gst/gstpad.h:
14503           implement gst_pad_is_linked
14504         * gst/gstelement.h:
14505           reserve space for initiate_state_change
14506
14507 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14508
14509         * gst/autoplug/gstspideridentity.c:
14510         (gst_spider_identity_sink_loop_type_finding):
14511           break infinite loop by just returning instead of looping
14512         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
14513           set event time difference correctly. Set it to 1 second instead
14514           of 100ms to be more tolerant
14515         * gst/gstelement.c: (gst_element_set_time):
14516           add debugging output
14517
14518 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14519
14520         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
14521           query if buffers are inside the pool, ignore events
14522
14523 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14524
14525         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
14526         (gst_clock_set_speed), (gst_clock_set_active),
14527         (gst_clock_is_active), (gst_clock_reset),
14528         (gst_clock_handle_discont):
14529         * gst/gstclock.h:
14530           deprecate old interface and disable functions that aren't in use
14531           anymore.
14532         * gst/gstelement.h:
14533         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
14534         (gst_element_set_time), (gst_element_adjust_time):
14535           add concept of "element time" and functions to get/set this time.
14536         * gst/gstelement.c: (gst_element_change_state):
14537           update element time correctly.
14538         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
14539           This is a debug message, not a g_critical.
14540         * gst/gstpad.c: (gst_pad_event_default):
14541           handle discontinuous events right with element time.
14542         * gst/gstscheduler.c: (gst_scheduler_state_transition):
14543           update to clocking fixes.
14544           set clocks on elements in READY=>PAUSED. The old behaviour caused
14545           a wrong element time on the first element that started playing.
14546         * gst/schedulers/gstbasicscheduler.c:
14547         (gst_basic_scheduler_class_init):
14548         * gst/schedulers/gstoptimalscheduler.c:
14549         (gst_opt_scheduler_class_init):
14550           remove code that just implements the default behaviour.
14551         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
14552           update to use new clocking functions
14553         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
14554         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
14555           update to test new element time.
14556         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
14557           use _get_allowed_caps instead of _get_caps. This catches filtered
14558           caps correctly.
14559         * testsuite/debug/commandline.c:
14560           update for new GST_DEBUG syntax.
14561         * testsuite/threads/Makefile.am:
14562           disable a test that only works sometimes.
14563
14564 2004-01-13  Julien MOUTTE <julien@moutte.net>
14565
14566         * po/LINGUAS: Adding fr.
14567         * po/fr.po: Adding french translation.
14568
14569 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14570
14571         * gst/parse/grammar.y:
14572         * po/POTFILES.in:
14573         * po/nl.po:
14574         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
14575           translate parsing error messages
14576
14577 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14578
14579         * po/POTFILES.in: adding gst-launch
14580         * po/nl.po: updated translation, all 99 strings translated
14581         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
14582         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
14583           fix strings for translation
14584
14585 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14586
14587         * gst/gst.c:
14588           - capitalize beginnings of popt options
14589           - fix strings for translation
14590           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
14591
14592 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14593
14594         * po/README: add some notes on how to update translations
14595
14596 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14597
14598         * ABOUT-NLS: removed, is autogenerated from autopoint
14599         * autogen.sh: add autopoint stuff
14600         * configure.ac: fix up gettext stuff
14601         * gst/Makefile.am: add i18n headers to noinst_HEADERS
14602         * gst/elements/gsttypefindelement.c: add header include
14603         * gst/gettext.h: add header, copy from system-installed header
14604         * gst/gst-i18n-app.h: to be included by each app having translations
14605         * gst/gst-i18n-lib.h: to be included by each lib having translations
14606         * gst/gst.c: (init_pre): fix up gettext calls
14607         * gst/gst_private.h: remove i18n stuff, moving to separate headers
14608         * po/LINGUAS: the new way to specify translations present
14609         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
14610         * po/Makevars: the variables filled in for GStreamer
14611         * po/POTFILES.in: added new files with translations
14612         * po/de.po: has new strings
14613         * po/nl.po: readded, has new strings
14614
14615 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14616
14617         * gst/gsttag.c: fix some strings marked for translation
14618
14619 2004-01-13  Iain <iain@prettypeople.org>
14620
14621         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
14622         group when we add an element to it, cos we unref it when we remove one
14623
14624 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
14625
14626         * testsuite/debug/commandline.c: (debug_not_reached):
14627         * testsuite/debug/output.c: (check_message):
14628           fix testsuite
14629
14630 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14631
14632         * examples/cutter/.cvsignore:
14633         * examples/helloworld/.cvsignore:
14634         * examples/launch/.cvsignore:
14635         * examples/manual/.cvsignore:
14636         * examples/mixer/.cvsignore:
14637         * examples/pingpong/.cvsignore:
14638         * examples/plugins/.cvsignore:
14639         * examples/queue/.cvsignore:
14640         * examples/queue2/.cvsignore:
14641         * examples/queue3/.cvsignore:
14642         * examples/queue4/.cvsignore:
14643         * examples/retag/.cvsignore:
14644         * examples/thread/.cvsignore:
14645         * examples/typefind/.cvsignore:
14646         * examples/xml/.cvsignore:
14647         * gst/.cvsignore:
14648         * gst/autoplug/.cvsignore:
14649         * gst/elements/.cvsignore:
14650         * gst/indexers/.cvsignore:
14651         * gst/parse/.cvsignore:
14652         * gst/registries/.cvsignore:
14653         * gst/schedulers/.cvsignore:
14654         * libs/gst/bytestream/.cvsignore:
14655         * libs/gst/control/.cvsignore:
14656         * libs/gst/getbits/.cvsignore:
14657         * tests/.cvsignore:
14658         * tests/bufspeed/.cvsignore:
14659         * tests/instantiate/.cvsignore:
14660         * tests/memchunk/.cvsignore:
14661         * tests/muxing/.cvsignore:
14662         * tests/sched/.cvsignore:
14663         * tests/seeking/.cvsignore:
14664         * tests/threadstate/.cvsignore:
14665         * testsuite/.cvsignore:
14666         * testsuite/caps/.cvsignore:
14667         * testsuite/cleanup/.cvsignore:
14668         * testsuite/dynparams/.cvsignore:
14669         * testsuite/plugin/.cvsignore:
14670         * tools/.cvsignore:
14671           update - this is huge, because it includes *.bb, *.bbg and *.da files
14672           which are generated for gcov.
14673
14674 2004-01-11  David Schleef  <ds@schleef.org>
14675
14676         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
14677         a function to parse integers in ways that strto[u]l() does not.
14678
14679 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14680
14681         * tools/gst-inspect.c: (print_caps):
14682           improve output of caps a bit
14683
14684 2004-01-11  David Schleef  <ds@schleef.org>
14685
14686         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
14687         inherit correct flags (READONLY and DONTKEEP).
14688
14689 2004-01-11  David Schleef  <ds@schleef.org>
14690
14691         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
14692         (gst_filesrc_map_region):
14693         * gst/gstbuffer.c: (_gst_buffer_initialize),
14694         (_gst_buffer_sub_free), (gst_buffer_default_copy),
14695         (gst_buffer_new), (gst_buffer_create_sub),
14696         (gst_buffer_is_span_fast), (gst_buffer_span):
14697         * gst/gstbuffer.h:
14698         Change GstBuffer private structure element names. (all files)
14699         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
14700         (gst_queue_link):
14701         * gst/gstqueue.h:
14702         Implement getcaps/pad_link functions that handle the case where
14703         there are data in the queue.
14704
14705 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14706
14707         * gst/elements/gstbufferstore.c:
14708           initialize debugging structure correctly
14709         * gst/elements/gsttee.c: (gst_tee_set_property):
14710           g_object_notify when property was changed
14711         * gst/elements/gsttypefindelement.c:
14712         (gst_type_find_element_change_state):
14713           clear caps correctly
14714
14715 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14716
14717         * gst/gstqueue.c: (gst_queue_init):
14718           Use better defaults for when a queue should block. This
14719           gets rid of jerky playback for quite a few files.
14720           It takes more memory.
14721
14722 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
14723
14724         (gst_xml_registry_parse_padtemplate):
14725           make critical message slightly more useful
14726
14727 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14728
14729         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
14730         (gst_debug_message_get), (gst_debug_log_default):
14731         * gst/gstinfo.h:
14732           Change gst_debug_log(_valist) to take a const format string.
14733           Change prototype of log function and functions using those to 
14734           take a GstDebugMessage instead of a string that requires using
14735           gst_debug_message_get.
14736
14737 2004-01-08  David Schleef  <ds@schleef.org>
14738
14739         * Makefile.am:
14740         * configure.ac:
14741         Add option --enable-gcov to build GStreamer with -fprofile-arcs
14742         and -ftest-coverage, which allows gcov to show information about
14743         testsuite coverage.
14744
14745 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14746
14747         * gst/gstutils.h:
14748           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
14749           GST_PARENT_CALL_WITH_DEFAULT
14750         * gst/elements/gstaggregator.c: 
14751         * gst/elements/gstbufferstore.c: 
14752         * gst/elements/gstfakesink.c: 
14753         * gst/elements/gstfakesrc.c: 
14754         * gst/elements/gstfdsink.c: 
14755         * gst/elements/gstfdsrc.c: 
14756         * gst/elements/gstfilesink.c: 
14757         * gst/elements/gstfilesrc.c: 
14758         * gst/elements/gstidentity.c: 
14759         * gst/elements/gstmd5sink.c: 
14760         * gst/elements/gstmultidisksrc.c:
14761         * gst/elements/gstpipefilter.c: 
14762         * gst/elements/gstshaper.c:
14763         * gst/elements/gststatistics.c:
14764         * gst/elements/gsttee.c:
14765         * gst/elements/gsttypefindelement.c:
14766           use them.
14767
14768 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
14769
14770         * docs/gst/gstreamer-docs.sgml: remove props
14771         * docs/gst/gstreamer-sections.txt: remove props
14772         * docs/gst/tmpl/gst.sgml:
14773         * docs/gst/tmpl/gstbin.sgml:
14774         * docs/gst/tmpl/gstbuffer.sgml:
14775         * docs/gst/tmpl/gstcaps.sgml:
14776         * docs/gst/tmpl/gstclock.sgml:
14777         * docs/gst/tmpl/gstelement.sgml:
14778         * docs/gst/tmpl/gstindex.sgml:
14779         * docs/gst/tmpl/gstobject.sgml:
14780         * docs/gst/tmpl/gstpad.sgml:
14781         * docs/gst/tmpl/gstpadtemplate.sgml:
14782         * docs/gst/tmpl/gstreamer-unused.sgml:
14783         * docs/gst/tmpl/gstthread.sgml:
14784         * docs/gst/tmpl/gstxml.sgml:
14785           sync with code reorganization
14786
14787 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
14788
14789         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
14790         Make the 'Could not find compatible pad' message more informative.
14791
14792 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14793                                                                                 
14794         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
14795           Fix for if we pass NULL as property to location.
14796         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
14797         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
14798           Fix for instantiate-test (see below).
14799         * gst/gststructure.c: (_gst_structure_parse_value):
14800           Fix compile error on gcc-2.96.
14801         * configure.ac:
14802         * tests/Makefile.am:
14803         * tests/instantiate/Makefile.am:
14804         * tests/instantiate/create.c: (create_all_elements), (main):
14805           Add a test that instantiates all elements. This makes it easy to
14806           track dead code for old API/design (like setting event functions
14807           on sink pads and so on).
14808
14809 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
14810
14811         * gst/gstcaps.c: (gst_caps_append_structure):
14812           Move the poisoning to allow a NULL structure
14813         * gst/gstevent.c: (_gst_event_free):
14814           When freeing a navigation event, free the structure
14815           also
14816
14817 2004-01-04  David Schleef  <ds@schleef.org>
14818
14819         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
14820         Remove usage of gst_pad_proxy_fixate.
14821         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
14822         (gst_caps_split_one), (gst_caps_replace):
14823         Add poisoning code.
14824         * gst/gstmarshal.list:
14825         Add pointer__pointer for fixate signal
14826         * gst/gstpad.c: (gst_real_pad_class_init),
14827         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
14828         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
14829         (gst_pad_set_explicit_caps), (gst_pad_template_new):
14830         Add poisoning code. Add fixate signal on RealPad. Change
14831         set_explicit_caps() to take const GstCaps, like try_set_caps().
14832         * gst/gstpad.h:
14833         * testsuite/caps/Makefile.am:
14834         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
14835
14836 2004-01-03  David Schleef  <ds@schleef.org>
14837
14838         * gst/elements/gsttypefindelement.c:
14839         (gst_type_find_element_have_type), (gst_type_find_element_init):
14840         Use gst_pad_use_explicit_caps for src pad.
14841         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
14842         before using it.
14843
14844 2004-01-03  David Schleef  <ds@schleef.org>
14845
14846         * gst/gstelement.c: (gst_element_link_pads_filtered),
14847         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
14848         that linking was successful.
14849         * gst/gstpad.c: (gst_pad_link_free),
14850         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
14851         (gst_pad_link_try), (gst_pad_link_unnegotiate),
14852         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
14853         GstPadLinkReturn correctly between functions, and don't fail
14854         when DELAYED is used (DELAYED is very important).  Better
14855         cleanup on unlinking and unnegotiation.  Should fix some spider
14856         bugs.
14857
14858 2004-01-02  David Schleef  <ds@schleef.org>
14859
14860         * gst/gstelement.c: (gst_element_class_init),
14861         (gst_element_base_class_init): ->padtemplates should be cleared
14862         in base_init, since we need to have a fresh list for every
14863         class.  (Alternately, we chould copy the list and share the
14864         actual pad templates (not the list), but that would require
14865         changing every plugin to move pad template registration from
14866         base_init to class_init.)
14867
14868 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14869
14870         * gst/gstelement.c: (gst_element_class_add_pad_template):
14871           Refuse registering a pad template if another pad template
14872           with the same name already exists (#114715).
14873
14874 2004-01-02  David Schleef  <ds@schleef.org>
14875
14876         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
14877         (gst_caps_is_equal_fixed): Add new function.
14878         * gst/gstcaps.h: ditto.
14879         * gst/gstpad.c: (gst_real_pad_class_init),
14880         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
14881         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
14882         check new caps against existing caps -- if they're the same, return
14883         OK without renegotiating.  caps-nego-failed signal fixed so that
14884         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
14885         to save an extra caps copy.  Don't complete negotiation if a pad
14886         link function returns DELAYED.
14887
14888 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14889
14890         * gst/gstpad.c: (gst_pad_try_relink_filtered):
14891           Fix wrong g_return_if_fail
14892
14893 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
14894
14895         * gst/gstbin.c: (gst_bin_class_init):
14896         Change the marshalling of element_added/element_removed
14897         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
14898         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
14899
14900 2004-01-01  David Schleef  <ds@schleef.org>
14901
14902         * gst/gstpad.c: (gst_pad_set_explicit_caps),
14903         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
14904         (gst_pad_use_explicit_caps):
14905         * gst/gstpad.h:
14906         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
14907         to use an internal getcaps and link fuction so that negotiation
14908         always results in the explicitly set caps.
14909         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
14910         are particularly useful for decoders.
14911
14912 2003-12-31  David Schleef  <ds@schleef.org>
14913
14914         * gst/elements/gstidentity.c: (gst_identity_class_init),
14915         (gst_identity_init), (gst_identity_chain),
14916         (gst_identity_set_property), (gst_identity_get_property):
14917         * gst/elements/gstidentity.h:
14918         * gst/gstqueue.c: (gst_queue_init):
14919           Negotiation fixes.
14920
14921 2003-12-31  David Schleef  <ds@schleef.org>
14922
14923         * gst/gstcaps.c: (gst_caps_intersect),
14924         (_gst_caps_normalize_foreach), (gst_caps_normalize):
14925           Implement gst_caps_normalize().
14926         * testsuite/caps/normalisation.c: (main):
14927           Add an additional test
14928
14929 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14930
14931         * gst/gstqueue.c: (gst_queue_init):
14932           use gst_pad_proxy_getcaps()
14933
14934 2003-12-31  David Schleef  <ds@schleef.org>
14935
14936         * gst/elements/gstshaper.c: (gst_shaper_link):
14937         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
14938         * gst/gstqueue.c: (gst_queue_link):
14939           Negotiation fixes.
14940
14941 2003-12-31  David Schleef  <ds@schleef.org>
14942
14943         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
14944         * gst/gstpad.h: Add functions that are useful as default pad
14945         link and fixate functions for elements.
14946
14947 2003-12-30  David Schleef  <ds@schleef.org>
14948
14949         * gst/gstpad.c: (gst_pad_link_try):
14950           Fix segfault when attempting to return to old caps
14951
14952 2003-12-29  David Schleef  <ds@schleef.org>
14953
14954         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
14955         (gst_caps_structure_simplify), (gst_caps_simplify):
14956         * gst/gstcaps.h:
14957           Add simplify function
14958         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
14959         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
14960         * gst/gstpad.h:
14961           Copy over srcnotify, sinknotify when calling old pad_link
14962           functions.  Add new is_negotiated() function.
14963         * gst/gststructure.c: (gst_structure_copy):
14964           Fix an incredibly stupid bug that should have been noticed
14965           weeks ago.  _copy() returned the argument, not the new copy.
14966
14967 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14968
14969         * gst/gstcaps.c: (gst_caps_append):
14970           add sanity checks
14971         * gst/gstcaps.h: (gst_caps_debug):
14972           remove, it doesn't exist anymore.
14973         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
14974         (gst_element_threadsafe_properties_post_run):
14975           make debugging messages not clutter up THREAD debug category
14976         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
14977         (gst_element_change_state):
14978           update to new caps API
14979         * gst/gstinterface.c: (gst_implements_interface_cast):
14980           don't put vital code in g_return_if_fail
14981         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
14982         (gst_pad_link_filtered):
14983           add pst_pad_try_link and use it.
14984         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
14985           implement correctly, deprecate first one.
14986         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
14987           add and implement.
14988         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
14989           implement.
14990         (gst_pad_get_negotiated_caps):
14991           add and implement. Make GST_PAD_CAPS call this function.
14992         (gst_pad_get_caps):
14993           remove unneeded check..
14994         (gst_pad_recover_caps_error):
14995           disable, always return FALSE.
14996         (gst_real_pad_dispose):
14997           don't free caps and appfilter anymore, they're unused.
14998         * gst/gstpad.h:
14999           Reflect changes mentioned above.
15000         * gst/gstsystemclock.c: (gst_system_clock_wait):
15001           Make 'clock is way behind' a debugging message.
15002         * gst/gstthread.c: (gst_thread_change_state):
15003           Fix debugging message
15004
15005 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
15006
15007         * gst/gstinfo.h:
15008           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
15009         * docs/gst/tmpl/gstreamer-unused.sgml:
15010           removed all traces of cvs conflicts
15011
15012 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
15013
15014         * configure.ac:
15015         * gst/schedulers/cothreads_compat.h:
15016         * libs/Makefile.am:
15017           remove last instances of wingo cothread usage
15018
15019 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
15020
15021         * gst/gstplugin.c:
15022         * gst/gstversion.h.in:
15023         * gst/parse/grammar.y:
15024           change comment block from /** to /* when not gtk-doc comments
15025
15026 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
15027
15028         * gst/gst.c: whitespace and doc style fixes
15029
15030 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
15031
15032         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
15033
15034 2003-12-24  Colin Walters  <walters@verbum.org>
15035
15036         * gst/elements/gsttypefindelement.c:
15037           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
15038           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
15039           Don't double-free caps.
15040
15041 2003-12-23  David Schleef  <ds@schleef.org>
15042
15043         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
15044           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
15045           Many little fixes and additions of debug statements to
15046           get rhythmbox working.
15047
15048 2003-12-23  Colin Walters  <walters@verbum.org>
15049
15050         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
15051         Use GST_PAD_LINK_SUCCESSFUL.
15052
15053 2003-12-23  David Schleef  <ds@schleef.org>
15054
15055         * gst/elements/gstaggregator.c:
15056         * gst/elements/gsttee.c:
15057           Use gst_pad_proxy_getcaps().
15058         * gst/gstpad.c:
15059         * gst/gstpad.h:
15060           Add gst_pad_proxy_getcaps(), which filter elements can use
15061           as a generic getcaps implementation.
15062           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
15063           was advertised.
15064
15065 2003-12-23  David Schleef  <ds@schleef.org>
15066
15067         * gst/gstpad.c:
15068           Rearrange/rewrite much of the pad negotiation code, since it
15069           resembled pasta.  This actually changes the way some
15070           negotiation works, since the previous code was inconsistent
15071           depending on how it was invoked.  Add (internal) structure
15072           GstPadLink, which is used to hold some information (more in
15073           the future) about the link between two pads.  Fixes a number
15074           of bugs, including random lossage of filter caps when the
15075           initial negotiation is delayed.  A few functions are still
15076           unimplemented.
15077         * gst/gstpad.h:
15078           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
15079           these when testing GstPadLinkReturn values instead of comparing
15080           directly.
15081
15082 2003-12-23  David Schleef  <ds@schleef.org>
15083
15084         * gst/gstvalue.c: 
15085         * gst/gstvalue.h:
15086           Rearrange lots of code.  Change registration of compare function
15087           into registration of compare/serialize/deserialize functions.
15088           Doesn't include implementation of gst_value_[de]serialize(),
15089           but that should be easy.
15090
15091 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
15092
15093         * docs/gst/gstreamer-sections.txt:
15094         * docs/gst/tmpl/gstprops.sgml: removed
15095         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
15096           David removed props and caps code, so let's remove their docs as well.
15097           Removed all no longer existing symbols from gstreamer-sections.txt
15098           
15099 2003-12-22  Colin Walters  <walters@verbum.org>
15100
15101         * gst/gsttaginterface.c, gst/gsttaginterface.h,
15102           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
15103           of tags directly.
15104
15105 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
15106
15107         * gst/elements/gstelements.c:
15108           Set ranks of elements to NONE, so the autoplugger doesn't use them.
15109         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
15110           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
15111           gst_caps (peer).
15112
15113 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
15114
15115         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
15116         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
15117         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
15118         (gst_spider_identity_sink_loop_type_finding):
15119         * gst/autoplug/gstspideridentity.h:
15120           Fix autoplugging in spider element, so it works with new caps.
15121           This was mainly caused by identifying empty caps incorrectly.
15122
15123 2003-12-22  David Schleef  <ds@schleef.org>
15124
15125         * gststructure.c, gstvalue.c, gstvalue.h: Add
15126           gst_value_init_and_copy() and use it, to avoid silly mistakes in
15127           using g_value_copy()
15128
15129 2003-12-21  David Schleef  <ds@schleef.org>
15130
15131         * many, many files: Merge CAPS branch.  This includes:
15132           - implemention of GstValue and several GstValue types
15133           - implemention of GstStructure
15134           - entire rewrite of GstCaps
15135           - removal of GstProps
15136           - many changes to GstPad to compensate for new caps paradigm
15137           - removal of GstBufferpool
15138         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
15139         gstvalue.h, gst/gstcaps[2]*.[ch]:
15140           - rename gstcaps2.[ch] to gstcaps.[ch]
15141
15142 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
15143
15144         * gst/gstqueue.c: (gst_queue_handle_pending_events),
15145         (gst_queue_chain), (gst_queue_handle_src_event):
15146           implement timeout for sending events. Workaround for if the
15147           pipeline on this queue is not passing any data.
15148
15149 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
15150                                                                                 
15151         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
15152         * moved CVS to freedesktop.org