gst/gsttaglist.c: Add some more docs, comments and FIXME 0.11s here and there and...
[platform/upstream/gstreamer.git] / ChangeLog
1 2006-07-20  Tim-Philipp Müller  <tim at centricular dot net>
2
3         * gst/gsttaglist.c:
4           Add some more docs, comments and FIXME 0.11s here and there
5           and  also fix some typos.
6
7 2006-07-20  Tim-Philipp Müller  <tim at centricular dot net>
8
9         * gst/gstsegment.h:
10           Convert tabs to spaces for better readability. 
11
12 2006-07-20  Edward Hervey  <edward@fluendo.com>
13
14         * tests/check/libs/gdp.c: (gst_dp_suite):
15         the test_buffer test fails at line 140 on ppc64 at the following
16         check:
17         fail_unless (GST_BUFFER_FLAG_IS_SET (newbuffer, GST_BUFFER_FLAG_IN_CAPS),
18                 "GST_BUFFER_IN_CAPS flag should have been copied !");
19         See bug #348114 for more details.
20
21 2006-07-19  Tim-Philipp Müller  <tim at centricular dot net>
22
23         * docs/pwg/advanced-scheduling.xml:
24         * gst/gstpad.c:
25           Fix typos (#348000).
26
27 2006-07-18  Tim-Philipp Müller  <tim at centricular dot net>
28
29         * docs/pwg/intro-basics.xml:
30           Fix wrong links (#347927).
31
32 2006-07-18  Stefan Kost  <ensonic@users.sf.net>
33
34         * gst/gstregistry.h:
35         * gst/gstregistryxml.c: (load_feature),
36         (gst_registry_xml_read_cache), (gst_registry_xml_save_feature):
37         * win32/common/config.h:
38         make --disable-index work (#342564)
39
40 2006-07-18  Wim Taymans  <wim@fluendo.com>
41
42         Patch by: Peter Kjellerstedt <pkj at axis dot com>
43
44         * gst/Makefile.am:
45         * gst/gsttrace.h:
46         The attached patch adds two missing defines to gsttrace.h when tracing
47         is disabled.  It also corrects one existing define.
48         Fixes #347756.
49
50 2006-07-17  Wim Taymans  <wim@fluendo.com>
51
52         * docs/gst/gstreamer-sections.txt:
53         * gst/gst.c: (gst_segtrap_is_enabled), (gst_segtrap_set_enabled):
54         * gst/gst.h:
55         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore):
56         Add two functions to check and change the SIGSEGV behaviour
57         when loading plugins.
58         Don't mess with the SIGSEGV handler when we were told not to.
59         Fixes #347794.
60         API: gst_segtrap_is_enabled
61         API: gst_segtrap_set_enabled
62
63 2006-07-14  Wim Taymans  <wim@fluendo.com>
64
65         * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
66         * tests/check/elements/filesrc.c: (GST_START_TEST):
67         Revert fix for regression in #347408 after release.
68
69 2006-07-14  Tim-Philipp Müller  <tim at centricular dot net>
70
71         Patch by: Antoine Tremblay <hexa00 at gmail com>
72
73         * gst/gstutils.c: (gst_element_unlink):
74           Free iterator when done (#347311).
75
76         * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
77           And add a test case for this.
78
79 2006-07-14  Jan Schmidt  <thaytan@mad.scientist.com>
80
81         * configure.ac:
82         Bump nano back to CVS
83
84 === release 0.10.9 ===
85
86 2006-07-13  Jan Schmidt <thaytan@mad.scientist.com>
87
88         * configure.ac:
89           releasing 0.10.9, "On the road again"
90
91 2006-07-13  Wim Taymans  <wim@fluendo.com>
92
93         * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
94         * tests/check/elements/filesrc.c: (GST_START_TEST):
95         Revert pull-0 fix for release. Disable check. Fixes #347408.
96
97 2006-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
98
99         * libs/gst/dataprotocol/dataprotocol.c:
100         (gst_dp_event_from_packet_1_0):
101           Fixes #347337: failure to deserialize event packets with
102           empty payload (only event type)
103
104 2006-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
105
106         * gst/Makefile.am:
107           do not install a .c file in the header directory
108
109 2006-07-13  Edward Hervey  <edward@fluendo.com>
110
111         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
112         GhostPad no longer implicitely use the padtemplates of the targets.
113         Fixes #347384
114
115 2006-07-11  Jan Schmidt  <thaytan@mad.scientist.com>
116
117         * gst/gstvalue.c: (gst_value_compare_list),
118         (gst_value_compare_array), (_gst_value_initialize):
119         * tests/check/gst/gstvalue.c: (GST_START_TEST):
120         Make GstValueArray comparison be order dependent as designed.
121         Add checks for value lists and value array comparisons.
122         Fixes #347221
123
124 2006-07-11  Edward Hervey  <edward@fluendo.com>
125
126         * gst/gstbin.c: (activate_pads),
127         (iterator_activate_fold_with_resync), (gst_bin_src_pads_activate),
128         (gst_bin_change_state_func):
129         (de)activate src pads before calling state_change on the childs.
130         This is to avoid the case where a src ghostpad is blocked (holding the
131         stream lock), which would block the deactivation of the ghostpad's
132         target pad.
133         * gst/gstghostpad.c: (gst_proxy_pad_do_query_type),
134         (gst_proxy_pad_do_event), (gst_proxy_pad_do_query),
135         (gst_proxy_pad_do_internal_link), (gst_proxy_pad_do_bufferalloc),
136         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
137         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
138         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
139         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target_unlocked),
140         (gst_proxy_pad_set_target), (gst_proxy_pad_get_internal),
141         (gst_proxy_pad_dispose), (gst_proxy_pad_init),
142         (gst_ghost_pad_parent_set), (gst_ghost_pad_parent_unset),
143         (gst_ghost_pad_class_init),
144         (gst_ghost_pad_internal_do_activate_push),
145         (gst_ghost_pad_internal_do_activate_pull),
146         (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
147         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
148         (gst_ghost_pad_dispose), (gst_ghost_pad_new_no_target),
149         (gst_ghost_pad_new), (gst_ghost_pad_set_target):
150         GhostPads now create their internal GstProxyPad at creation (and not
151         when they're linked, as it was being done previously).
152         The internal and target pads are linked straight away.
153         The data will also travel through the other pad in order to make
154         pad blocking and probes non-hackish (the probe/block now really happens
155         on the GhostPad and not on the target).
156         * gst/gstpad.c: (gst_pad_set_blocked_async),
157         (gst_pad_link_prepare), (gst_pad_push_event):
158         Remove previous ghostpad cruft.
159         * gst/gstutils.c: (gst_pad_add_data_probe),
160         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
161         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
162         (gst_pad_remove_buffer_probe):
163         Remove previous ghost pad cruft.
164         Added more detailed debug statements.
165         * tests/check/gst/gstghostpad.c: (GST_START_TEST):
166         Fix the testsuite for refcounting changes.
167         The comments about who has references were correct, but the refcount
168         being checked wasn't the same (!?!).
169
170         Fixes #341029
171
172 2006-07-10  Stefan Kost  <ensonic@users.sf.net>
173
174         * docs/gst/gstreamer-sections.txt:
175         * gst/gstconfig.h.in:
176         More docs for configuration options, add docs to gtk-doc.
177
178 2006-07-10  Stefan Kost  <ensonic@users.sf.net>
179
180         * gst/Makefile.am:
181         * gst/gstconfig.h.in:
182         * win32/common/config.h:
183         Fix build when disabling tracing (fixes #344016). Also start to document
184         the defines that disable the sub-systems.
185
186 2006-07-10  Edward Hervey  <edward@fluendo.com>
187
188         * gst/gst.c: (ensure_current_registry_forking):
189         let's make valgrind happy...
190
191 2006-07-09  Wim Taymans  <wim@fluendo.com>
192
193         * gst/gstelement.c: (activate_pads),
194         (iterator_activate_fold_with_resync), (gst_element_pads_activate):
195         Better pad activation code: Reset the collect value too on resync.
196         Add some comments.
197
198 2006-07-09  Wim Taymans  <wim@fluendo.com>
199
200         * gst/gstpad.c: (gst_pad_init), (gst_pad_activate_pull),
201         (gst_pad_activate_push):
202         Use some more macros where it makes sense.
203         Allow pad mode switching instead of asserting. When a pad
204         is activated in one mode and we activate it in another, 
205         deactivate it first before activating it in a different mode.
206         Fixes #329198.
207
208 2006-07-08  Andy Wingo  <wingo@pobox.com>
209
210         * tools/gst-launch.c (main): Handle err == NULL.
211
212         * gst/gst.c (init_post, ensure_current_registry)
213         (ensure_current_registry_forking)
214         (ensure_current_registry_nonforking): Reduce #ifdef ratnest by
215         factoring out the registry scanning into separate functions. Don't
216         fork for the rescan is GST_REGISTRY_FORK=no; useful in debugging.
217         Better environment var name/interface suggestions accepted.
218
219 2006-07-07  Tim-Philipp Müller  <tim at centricular dot net>
220
221         * gst/gstobject.c: (gst_object_set_name_default),
222         (gst_object_set_name):
223           Random micro-optimisation: don't use a hash table
224           with strings as keys and the usual strdup/strcmp
225           involved, but rather just use the GQuark of the
226           type name as key, since it needs to be looked up
227           anyway to get the type name string.
228
229         * tests/check/gst/gstobject.c: (GST_START_TEST):
230           Fix various leaks.
231
232 2006-07-07  Tim-Philipp Müller  <tim at centricular dot net>
233
234         * gst/gstbin.c: (compare_interface), (gst_bin_get_by_interface),
235         (gst_bin_iterate_all_by_interface):
236           Can't use GPOINTER_TO_INT and GINT_TO_POINTER with GTypes.
237           GTypes are gulongs and thus the top 4 bytes might be cut
238           off on some platforms when doing GPOINTER_TO_INT, leading
239           to invalid GTypes and bad things happening.
240           Also add a check to make sure the type passed in is really
241           an interface type.
242
243 2006-07-07  Tim-Philipp Müller  <tim at centricular dot net>
244
245         * .cvsignore:
246           Ignore more.
247
248 2006-07-07  Tim-Philipp Müller  <tim at centricular dot net>
249
250         * Makefile.am:
251         * configure.ac:
252         * gst-element-check.m4:
253         * gst-element-check.m4.in:
254           Make gst-element-check-$VERSION.m4 call gst-inspect-$VERSION
255           instead of the unversioned gst-inspect (#324176, #168659).
256
257 2006-07-06  Wim Taymans  <wim@fluendo.com>
258
259         * gst/gstmessage.h:
260         Use a valid int for the _MESSAGE_ANY enum value to avoid compiler
261         warnings.
262
263 2006-07-06  Wim Taymans  <wim@fluendo.com>
264
265         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
266         (gst_base_src_wait), (gst_base_src_update_length),
267         (gst_base_src_get_range), (gst_base_src_default_check_get_range),
268         (gst_base_src_check_get_range), (gst_base_src_pad_check_get_range),
269         (gst_base_src_loop), (gst_base_src_start),
270         (gst_base_src_activate_pull):
271         Update docs.
272         blocksize == 0 now means the default blocksize when working in push
273         based mode.
274         Remove some pointless asserts in _wait function.
275         Fix offset/length calculations and EOS handling. We can now pull 0
276         bytes as well, which is allowed.
277         use _check_get_range() to decide if we can operate in _pull based
278         mode.
279         Fix refcounting leak when check_get_range function was not 
280         implemented.
281         API GstBaseSrc::blocksize range can be 0 too now (default)
282
283         * tests/check/elements/filesrc.c: (GST_START_TEST),
284         (filesrc_suite):
285         Added check to test _get_range() behaviour.
286
287 2006-07-06  Wim Taymans  <wim@fluendo.com>
288
289         * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
290         (gst_pad_push), (gst_pad_check_pull_range), (gst_pad_get_range),
291         (gst_pad_pull_range):
292         * gst/gstpad.h:
293         Lots of comments and docs added to the pad functions.
294         Flesh out the expected behaviour of the get_range() functions.
295
296 2006-07-06  Wim Taymans  <wim@fluendo.com>
297
298         * gst/gstbus.h:
299         * gst/gstclock.h:
300         * gst/gstevent.h:
301         * gst/gstiterator.h:
302         * gst/gstpad.h:
303         * gst/gstplugin.h:
304         * gst/gsttask.h:
305         Remove comma at end of enumerator list. 
306
307 2006-07-05  Sebastien Moutte  <sebastien@moutte.net>
308
309         * win32/common/libgstbase.def:
310         * win32/common/libgstdataprotocol.def:
311         * win32/common/libsgtreamer.def:
312         Add new exported functions.
313
314 2006-07-05  Wim Taymans  <wim@fluendo.com>
315
316         * libs/gst/base/gstpushsrc.c: (gst_push_src_check_get_range):
317         Add some more docs here and there.
318
319 2006-07-05  Wim Taymans  <wim@fluendo.com>
320
321         * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_object),
322         (gst_base_sink_loop), (gst_base_sink_get_position):
323         When operating in pull mode update the offset so that we
324         read sequentially.
325
326 2006-07-05  Wim Taymans  <wim@fluendo.com>
327
328         * gst/gstregistryxml.c: (read_string):
329         Avoid strdup. (will happen in libxml, but hey!)
330
331         * gst/gsturi.c:
332         Add some more docs.
333
334 2006-07-05  Wim Taymans  <wim@fluendo.com>
335
336         * gst/gstbuffer.c: (_gst_buffer_copy), (gst_buffer_create_sub):
337         * tests/check/gst/gstbuffer.c: (GST_START_TEST),
338         (gst_buffer_suite):
339         No point in checking if the size of the subbuffer > 0, the
340         code handles it correclty as demonstrated by unit test.
341         Also add a unit test for the zero sized _new_and_alloc and
342         _copy. Fixes #346663.
343
344 2006-07-05  Wim Taymans  <wim@fluendo.com>
345
346         * libs/gst/base/gstbasetransform.c:
347         (gst_base_transform_prepare_output_buffer),
348         (gst_base_transform_buffer_alloc),
349         (gst_base_transform_handle_buffer):
350         Make sure the buffer we pass to transform_ip has a refcount of
351         1 and thus is writable. Fixes #343196
352
353 2006-07-04  Jan Schmidt  <thaytan@mad.scientist.com>
354
355         * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
356         (gst_file_src_init), (gst_file_src_set_property),
357         (gst_file_src_get_property), (gst_file_src_map_region):
358         * plugins/elements/gstfilesrc.h:
359         Add "sequential" property, off by default, to use madvise and hint
360         to the kernel that sequential access is desired.
361         Touch all retrieved pages by default to ensure they are pulled
362         into memory. (Closes #345720)
363
364 2006-07-03  Wim Taymans  <wim@fluendo.com>
365
366         * docs/design/part-block.txt:
367         * docs/design/part-dynamic.txt:
368         Small docs updates.
369
370 2006-07-03  Wim Taymans  <wim@fluendo.com>
371
372         * gst/gstcaps.c: (gst_caps_new_empty), (_gst_caps_free),
373         (gst_caps_unref), (gst_static_caps_get),
374         (gst_caps_append_structure):
375         * gst/gstclock.c: (gst_clock_entry_new), (_gst_clock_id_free):
376         Use GSlice when the glib we build against is >= 2.10
377
378 2006-07-03  Wim Taymans  <wim@fluendo.com>
379
380         * gst/gstelement.c: (gst_element_pads_activate):
381         Small cleanup in pad activation code.
382
383 2006-07-03  Wim Taymans  <wim@fluendo.com>
384
385         Patch by: Peter Kjellerstedt <pkj at axis dot com>
386
387         * gst/gst-i18n-app.h:
388         * gst/gst-i18n-lib.h:
389         * tools/gst-inspect.c: (print_signal_info):
390         The attached patch will make the inclusion of gettext.h unconditional in
391         gst/gst-i18n-app.h and gst/gst-i18n-lib.h, and it will remove the inclusion of
392         libintl.h in tools/gst-inspect.c.
393         This allows use of --disable-nls again and fixes #344642.
394
395 2006-07-03  Edward Hervey  <edward@fluendo.com>
396
397         * gst/gstpad.c: (handle_pad_block), (gst_pad_push_event):
398         Implement pad blocking on events according to part-block.txt.
399         More comments on behaviour.
400         * tests/check/gst/gstevent.c: (test_event):
401         Send event to peer pad of blocked pad (else it will block).
402
403 2006-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
404
405         * libs/gst/check/gstcheck.c: (gst_check_message_error),
406         (gst_check_run_suite):
407           if we get the wrong message, give us the types as string
408         * plugins/elements/gstfilesrc.c: (gst_file_src_start):
409           Fix a translatable
410         * tests/check/elements/filesrc.c: (GST_START_TEST):
411           add a test for trying to open a non-existing file
412
413 2006-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
414
415         * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
416           add a test for adding self
417
418 2006-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
419
420         * libs/gst/check/gstcheck.h:
421           add some assert_ as alias for fail_unless_*
422         * tests/check/gst/gst.c: (GST_START_TEST), (gst_suite):
423           increase test coverage
424
425 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
426
427         * Makefile.am:
428           include lcov.mak for lcov coverage generation
429         * tools/Makefile.am:
430           add to CLEANFILES
431
432 2006-07-02  Edward Hervey  <edward@fluendo.com>
433
434         * tests/check/elements/.cvsignore:
435         moaping
436
437 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
438
439         * configure.ac:
440           don't set CFLAGS and friends for gcov, done from GST_GCOV now
441         * tests/check/Makefile.am:
442           clean up gcov files
443
444 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
445
446         * gst/gstcaps.c: (gst_caps_remove_and_get_structure):
447           remove gst_caps_simplify; it was not declared and not used
448           and deprecated in 0.8
449
450 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
451
452         * docs/faq/gst-uninstalled:
453           don't put empty paths on PYTHONPATH
454         * docs/gst/gstreamer-sections.txt:
455           remove some symbols that are not there
456
457 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
458
459         * gst/gstcaps.c: (gst_caps_compare_structures):
460           whitespace fixes
461         * tests/check/gst/gstbuffer.c: (GST_START_TEST):
462         * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
463           add more tests
464
465 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
466
467         * libs/gst/dataprotocol/Makefile.am:
468           build dataprotocol test by linking to the lib, instead of
469           compiling the source, so we get coverage
470         * tests/check/Makefile.am:
471         * tests/check/elements/filesrc.c: (event_func), (setup_filesrc),
472         (cleanup_filesrc), (GST_START_TEST), (filesrc_suite):
473           add a test for filesrc
474
475 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
476
477         * tests/check/gst/gststructure.c: (GST_START_TEST),
478         (gst_structure_suite):
479           Push coverage from 59.04% to 70.00%
480
481 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
482
483         * tests/check/Makefile.am:
484           gst-inspect every element; this makes sure that we also get
485           coverage on element's get/set functions
486
487 2006-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
488
489         * configure.ac:
490           set CFLAGS and friends to -O0 if gcov is being used
491           add GCOV LIBS
492         * gst/Makefile.am:
493         * libs/gst/base/Makefile.am:
494         * libs/gst/check/Makefile.am:
495         * libs/gst/controller/Makefile.am:
496         * libs/gst/dataprotocol/Makefile.am:
497         * libs/gst/net/Makefile.am:
498         * plugins/elements/Makefile.am:
499         * plugins/indexers/Makefile.am:
500           add makefile rules to generate gcov data and clean up
501         * tests/check/Makefile.am:
502           add a coverage target that generates an html overview
503           of coverage data
504
505 2006-07-01  Thomas Vander Stichele  <thomas at apestaart dot org>
506
507         * tests/check/elements/fakesink.c:
508         * tests/check/elements/fakesrc.c:
509         * tests/check/elements/fdsrc.c:
510         * tests/check/elements/identity.c:
511         * tests/check/generic/sinks.c: (gst_sinks_suite):
512         * tests/check/generic/states.c:
513         * tests/check/gst/gst.c:
514         * tests/check/gst/gstabi.c:
515         * tests/check/gst/gstbin.c:
516         * tests/check/gst/gstbuffer.c: (gst_buffer_suite):
517         * tests/check/gst/gstbus.c: (gst_bus_suite):
518         * tests/check/gst/gstcaps.c: (GST_START_TEST):
519         * tests/check/gst/gstelement.c:
520         * tests/check/gst/gstevent.c: (gst_event_suite):
521         * tests/check/gst/gstghostpad.c:
522         * tests/check/gst/gstiterator.c: (gst_iterator_suite):
523         * tests/check/gst/gstmessage.c: (gst_message_suite):
524         * tests/check/gst/gstminiobject.c:
525         * tests/check/gst/gstobject.c:
526         * tests/check/gst/gstpad.c:
527         * tests/check/gst/gstpipeline.c:
528         * tests/check/gst/gstplugin.c:
529         * tests/check/gst/gstquery.c: (gst_query_suite):
530         * tests/check/gst/gstsegment.c: (gst_segment_suite):
531         * tests/check/gst/gststructure.c:
532         * tests/check/gst/gstsystemclock.c:
533         * tests/check/gst/gsttag.c:
534         * tests/check/gst/gsttask.c: (gst_task_suite):
535         * tests/check/gst/gstutils.c:
536         * tests/check/gst/gstvalue.c:
537         * tests/check/libs/adapter.c:
538         * tests/check/libs/basesrc.c:
539         * tests/check/libs/collectpads.c:
540         * tests/check/libs/controller.c:
541         * tests/check/libs/gdp.c: (gst_dp_suite):
542         * tests/check/libs/gstnetclientclock.c:
543         * tests/check/libs/gstnettimeprovider.c:
544         * tests/check/libs/libsabi.c: (libsabi_suite):
545         * tests/check/libs/typefindhelper.c:
546         * tests/check/pipelines/cleanup.c:
547         * tests/check/pipelines/parse-launch.c:
548         * tests/check/pipelines/simple-launch-lines.c:
549         * tests/check/pipelines/stress.c: (stress_suite):
550           use the new macro
551
552 2006-07-01  Thomas Vander Stichele  <thomas at apestaart dot org>
553
554         * libs/gst/check/gstcheck.c: (gst_check_run_suite):
555         * libs/gst/check/gstcheck.h:
556           create a macro and function so that the simple unit test
557           case can be just one macro to create main()
558
559 2006-06-30  Tim-Philipp Müller  <tim at centricular dot net>
560
561         * gst/gstbin.c: (gst_bin_restore_thyself):
562         * gst/gstxml.c: (gst_xml_make_element):
563           Fix deserialisation from XML. Set parent manually
564           instead of using gst_bin_add(), since gst_bin_add()
565           will unlink all pads of the element being added.
566           Fixes #341667.
567
568 2006-06-28  Tim-Philipp Müller  <tim at centricular dot net>
569
570         Patch by: Peter Kjellerstedt <pkj at axis com>
571
572         * gst/gst.c: (prepare_for_load_plugin_func), (split_and_iterate):
573           Fix missing g_strdup() and double free when using the
574           --gst-plugin-load command line option (#346097).
575
576 2006-06-23  Tim-Philipp Müller  <tim at centricular dot net>
577
578         * gst/gstinfo.c:
579           Promote GST_DEBUG_CATEGORY_STATIC in example in docs.
580
581         * libs/gst/net/gstnetclientclock.c:
582         * libs/gst/net/gstnettimeprovider.c:
583           Use GST_DEBUG_CATEGORY_STATIC here too (#342503).
584
585 2006-06-23  Tim-Philipp Müller  <tim at centricular dot net>
586
587         * docs/manual/advanced-dataaccess.xml:
588           Fix buffer probe example compilation in
589           ADM (#345708).
590         
591 2006-06-22  Edward Hervey  <edward@fluendo.com>
592
593         * gst/gstelement.c: (gst_element_pads_activate):
594         We need to deactivate src pads first and then sink pads.
595         The reason is the src pads might be blocking while holding the streaming
596         lock, so we need to deactivate them first so that deactivating the sink
597         pads doesn't block (since it will require the streaming lock).
598
599 2006-06-22  Wim Taymans  <wim@fluendo.com>
600
601         * libs/gst/base/gstbasetransform.c:
602         (gst_base_transform_buffer_alloc):
603         Forgot to remove two unneeded unrefs.
604         Simplify a check _is_equal allready checks the obvious case.
605
606 2006-06-22  Wim Taymans  <wim@fluendo.com>
607
608         * docs/design/part-block.txt:
609         Some docs about what pad_block should do.
610
611 2006-06-22  Wim Taymans  <wim@fluendo.com>
612
613         * gst/gstcaps.c: (gst_caps_replace):
614         Fix crasher when passed NULL. Doc clarification.
615         Optimize for the trivial case.
616
617         * gst/gstpipeline.c: (gst_pipeline_change_state):
618         Small cleanups.
619
620         * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
621         Small documentation cleanup.
622
623         * libs/gst/base/gstbasetransform.c:
624         (gst_base_transform_buffer_alloc):
625         Don't use silly gst_pad_get_negotiated_caps, GST_PAD_CAPS
626         is what we need and it avoids a whole lot of redundant 
627         refcount operations.
628
629 2006-06-22  Tim-Philipp Müller  <tim at centricular dot net>
630
631         Patch by: Philip Jägenstedt  <philip at lysator liu se>
632
633         * docs/manual/advanced-dataaccess.xml:
634           Fix 'Embedding static elements' section to use
635           GST_PLUGIN_DEFINE_STATIC (#345607).
636
637 2006-06-21  Tim-Philipp Müller  <tim at centricular dot net>
638
639         * tests/check/pipelines/simple-launch-lines.c: (test_stop_from_app):
640           Attempt to 'fix' spuriously failing test case: it seems like the
641           timeout of half a second is simply too small when the system is under
642           load otherwise, and the timeout doesn't really seem to serve any
643           particular purpose here. Give the pipeline a few seconds to preroll
644           first, and then give it another half a second to go from PAUSED to
645           PLAYING and marshal the message into the main thread.
646
647 2006-06-21  Tim-Philipp Müller  <tim at centricular dot net>
648
649         * tools/gst-feedback-m.m:
650           Don't only use unversioned tools, try versioned tools as well
651           (#345086).
652
653 2006-06-21  Tim-Philipp Müller  <tim at centricular dot net>
654
655         * gst/gstbus.c: (gst_bus_class_init):
656           Fix some typos, make docs more explicit.
657
658 2006-06-20  Wim Taymans  <wim@fluendo.com>
659
660         * tests/check/gst/gstghostpad.c: (block_callback),
661         (GST_START_TEST), (gst_ghost_pad_suite):
662         Added some more ghostpad tests, mainly blocking
663         and probes.
664
665 2006-06-16  Wim Taymans  <wim@fluendo.com>
666
667         * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
668         (gst_file_sink_close_file), (gst_file_sink_do_seek),
669         (gst_file_sink_event), (gst_file_sink_render):
670         * plugins/elements/gstfilesink.h:
671         Check if we can seek in the file instead of assuming
672         we always can. Post an error when we are asked to seek in a
673         non-seekable file (like a fifo). Fixes #343312.
674         Some cleanups.
675
676 2006-06-16  Tim-Philipp Müller  <tim at centricular dot net>
677
678         * tools/gst-launch.1.in:
679           Un-garble (fourcc) bit in filtered caps section.
680
681 2006-06-16  Tim-Philipp Müller  <tim at centricular dot net>
682
683         * docs/manual/advanced-autoplugging.xml:
684         * docs/manual/basics-helloworld.xml:
685         * docs/manual/highlevel-components.xml:
686           Don't leak bus reference in sample code.
687
688 2006-06-15  Tim-Philipp Müller  <tim at centricular dot net>
689
690         * autogen.sh:
691           Add default for new --enable-plugin-docs switch.
692
693         * configure.ac:
694           Use new GST_PLUGIN_DOCS macro to check for pyxml etc.
695           Fixes #344039.
696
697         * docs/Makefile.am:
698           Use new ENABLE_PLUGIN_DOCS conditional.
699
700 2006-06-14  Wim Taymans  <wim@fluendo.com>
701
702         * gst/gstbin.c: (bin_query_duration_done), (gst_bin_query):
703         Make it clear with a FIXME and a real define what the #if 0
704         previously disabled.
705
706 2006-06-14  Wim Taymans  <wim@fluendo.com>
707
708         * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
709         (gst_base_sink_preroll_object), (gst_base_sink_get_position):
710         * libs/gst/base/gstbasetransform.c:
711         (gst_base_transform_sink_eventfunc):
712         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
713         Don't randomly and silently reset a segment when the format 
714         changes as this is a bug somewhere upstream. Fixes #330379.
715
716 2006-06-14  Tim-Philipp Müller  <tim at centricular dot net>
717
718         Patch by: Wouter Paesen  <wouter at kangaroot net>
719
720         * libs/gst/controller/gstcontroller.c:
721         (gst_controlled_property_new):
722           Fix controlling of float properties (#344849).
723
724         * tests/check/libs/controller.c:
725         (gst_test_mono_source_get_property),
726         (gst_test_mono_source_set_property),
727         (gst_test_mono_source_class_init), (GST_START_TEST):
728           While we're at it, add some float stuff to unit test.
729
730 2006-06-13  Thomas Vander Stichele  <thomas at apestaart dot org>
731
732         * docs/README:
733         * docs/images/gdp-header.svg:
734           add a gdp image
735         * docs/libs/Makefile.am:
736         * docs/libs/gdp-header.png:
737         * libs/gst/dataprotocol/dataprotocol.c:
738           add it to the API docs
739         * docs/manual/intro-motivation.xml:
740           fix typo
741
742 2006-06-13  Tim-Philipp Müller  <tim at centricular dot net>
743
744         * gst/gst.c: (scan_and_update_registry), (init_post):
745           If the fork()'ed child process can't write the updated registry cache
746           file to disk for some reason, make it exit with a failure exit code,
747           so that the parent can then re-scan the plugins itself and update the
748           registry structures in memory and work with that (rather than failing
749           when creating elements because seemingly no plugins are available).
750           Refactor registry scanning code into separate function for this and
751           also separate fork() and non-fork() code paths. Fixes #344748.
752
753 2006-06-13  Wim Taymans  <wim@fluendo.com>
754
755         * docs/manual/advanced-dataaccess.xml:
756         Fix wrong PluginDesc. Fixes #344755.
757
758 2006-06-13  Tim-Philipp Müller  <tim at centricular dot net>
759
760         * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
761           Fix silly bug that prevented us from creating
762           ~/.gstreamer-0.10 and writing the registry in one
763           go (the first call to g_mkstemp() would overwrite the
764           placeholder in the template string, so the second call
765           to g_mkstemp() after creating the missing directory
766           would then error out with 'invalid argument').
767
768 2006-06-13  Edward Hervey  <edward@fluendo.com>
769
770         * gst/gst.c: (init_post):
771         Free string.
772
773 2006-06-13  Thomas Vander Stichele  <thomas at apestaart dot org>
774
775         * gst/glib-compat-private.h:
776         * gst/glib-compat.c:
777         * gst/glib-compat.h:
778         * gst/gstvalue.c: (gst_value_serialize_flags):
779           remove GLib 2.6 compatibility code
780
781 2006-06-12  Tim-Philipp Müller  <tim at centricular dot net>
782
783         * gst/parse/Makefile.am:
784           Fix build with 'make -j N' even more (#340016).
785
786 2006-06-12  Wim Taymans  <wim@fluendo.com>
787
788         * docs/gst/gstreamer-sections.txt:
789         Fix docs.
790
791 2006-06-12  Wim Taymans  <wim@fluendo.com>
792
793         * gst/gstsegment.c: (gst_segment_set_duration),
794         (gst_segment_set_last_stop), (gst_segment_set_seek),
795         (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
796         (gst_segment_to_running_time), (gst_segment_clip):
797         Use G_UNLIKELY to help the compiler a bit.
798
799 2006-06-12  Wim Taymans  <wim@fluendo.com>
800
801         Patch by: Stefan Kost <ensonic at sonicpulse dot de>
802
803         * gst/gstevent.c: (gst_event_get_type):
804         * gst/gstmessage.c:
805         * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
806         (gst_pad_push):
807         constify quark registration strings. Fixes #344115
808         Avoid unneeded type checking is _pad_push() by internally
809         calling gst_pad_chain_unchecked().
810
811 2006-06-12  Wim Taymans  <wim@fluendo.com>
812
813         * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_finalize),
814         (_gst_buffer_copy), (gst_buffer_is_metadata_writable),
815         (gst_subbuffer_finalize), (gst_buffer_create_sub),
816         (gst_buffer_is_span_fast), (gst_buffer_span):
817         Init _type for consistency.
818         Use _FLAGS macro to avoid type check.
819         Avoid unneeded type checks in subbufer code.
820
821 2006-06-12  Wim Taymans  <wim@fluendo.com>
822
823         * gst/gst.c: (gst_debug_help):
824         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_list_free):
825         * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
826         (gst_plugin_feature_list_free):
827         * gst/gstregistry.c: (gst_registry_add_plugin),
828         (gst_registry_add_feature), (gst_registry_plugin_filter),
829         (gst_registry_feature_filter), (gst_registry_find_plugin),
830         (gst_registry_find_feature), (gst_registry_get_plugin_list),
831         (gst_registry_lookup_feature_locked), (gst_registry_lookup_locked):
832         * gst/gstregistryxml.c: (load_feature),
833         (gst_registry_xml_read_cache), (gst_registry_xml_write_cache):
834         * gst/gstminiobject.c: (gst_mini_object_unref),
835         (gst_mini_object_replace), (gst_value_mini_object_free),
836         (gst_value_mini_object_copy):
837         Use _CAST macros to avoid unneeded type checking.
838         Added some more G_UNLIKELY.
839
840 2006-06-12  Wim Taymans  <wim@fluendo.com>
841
842         * gst/gstbuffer.h:
843         Avoid unneeded type checking.
844         API: GST_BUFFER_IS_DISCONT
845
846         * gst/gstminiobject.h:
847         Avoid type check in flag accessor.
848
849         * gst/gstelementfactory.h:
850         * gst/gstplugin.h:
851         * gst/gstpluginfeature.h:
852         Add _CAST macros.
853         API: GST_ELEMENT_FACTORY_CAST
854         API: GST_PLUGIN_CAST
855         API: GST_PLUGIN_FEATURE_CAST
856
857 2006-06-12  Wim Taymans  <wim@fluendo.com>
858
859         * gst/gstobject.c: (gst_object_get_type), (gst_object_ref),
860         (gst_object_unref):
861         Add G_UNLIKELY in type registration.
862         Avoid type check in _ref/_unref since that is also
863         done in glib.
864
865 2006-06-12  Wim Taymans  <wim@fluendo.com>
866
867         * gst/gsterror.c: (gst_g_error_get_type):
868         * gst/gstpadtemplate.c: (gst_pad_template_get_type),
869         (gst_static_pad_template_get_type):
870         * gst/gsttaglist.c: (gst_tag_list_get_type):
871         * gst/gsttagsetter.c: (gst_tag_setter_get_type):
872         * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type):
873         * gst/gsturi.c: (gst_uri_handler_get_type):
874         * gst/gstvalue.c: (gst_date_get_type):
875         * gst/gstxml.c: (gst_xml_get_type):
876         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_type),
877         (gst_base_sink_preroll_object), (gst_base_sink_get_position):
878         * libs/gst/base/gstbasesrc.c: (gst_base_src_get_type):
879         Add G_UNLIKELY in type registration.
880
881 2006-06-12  Wim Taymans  <wim@fluendo.com>
882
883         * tools/gst-inspect.c: (print_signal_info):
884         Properly print enum values.
885
886 2006-06-12  Wim Taymans  <wim@fluendo.com>
887
888         * gst/gstinfo.c: (gst_debug_set_active),
889         (gst_debug_category_set_threshold), (_gst_debug_nameof_funcptr):
890         * gst/gstinfo.h:
891         Add some G_[UN]LIKELY.
892         Maintain __gst_debug_min to avoid formatting the arguments of
893         debug messages that will be dropped anyway to avoid a lot of 
894         overhead from the debugging system.
895
896 2006-06-11  Stefan Kost  <ensonic@users.sf.net>
897
898         * po/POTFILES.in:
899         * po/POTFILES.skip:
900           add missing files containing translatable strings, tell intltool about
901           one exception
902
903 2006-06-11  Stefan Kost  <ensonic@users.sf.net>
904
905         * tests/check/libs/.cvsignore:
906         add test-binary to ignore list
907
908 2006-06-11  Stefan Kost  <ensonic@users.sf.net>
909
910         * docs/libs/gstreamer-libs-docs.sgml:
911         reorder (put dp into a chapter) and indent
912
913 2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>
914
915         * configure.ac:
916           back to HEAD
917
918 === release 0.10.8 ===
919
920 2006-06-10  Thomas Vander Stichele <thomas at apestaart dot org>
921
922         * configure.ac:
923           releasing 0.10.8, "Soepeke, ik zie ou nog altijd nie"
924
925 2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>
926
927         * gst/gst.c: (init_post):
928           move pid declaration to declaration block
929
930 2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>
931
932         * gst/gst.c: (init_post):
933           use _exit() instead of exit() in our forked child; this ensures
934           that none of the registered exit handlers from whatever is using
935           GStreamer get executed.  This fixes gnome-mixer-applet failing
936           to load, because ORBit would shut down.
937           Spotted by: Edward Hervey  <edward@fluendo.com>
938           Fix suggested by: Tim-Philipp Müller  <tim at centricular dot net>
939           Fixes #344474
940
941 2006-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
942
943         * configure.ac:
944           back to TRUNK
945
946 === release 0.10.7 ===
947
948 2006-06-09  Thomas Vander Stichele <thomas at apestaart dot org>
949
950         * configure.ac:
951           releasing 0.10.7, "Soepeke, ik zie ou"
952
953 2006-06-07  Thomas Vander Stichele  <thomas at apestaart dot org>
954
955         * configure.ac:
956         * po/af.po:
957         * po/az.po:
958         * po/bg.po:
959         * po/ca.po:
960         * po/cs.po:
961         * po/de.po:
962         * po/en_GB.po:
963         * po/fr.po:
964         * po/it.po:
965         * po/nb.po:
966         * po/nl.po:
967         * po/ru.po:
968         * po/sq.po:
969         * po/sr.po:
970         * po/sv.po:
971         * po/tr.po:
972         * po/uk.po:
973         * po/vi.po:
974         * po/zh_CN.po:
975         * po/zh_TW.po:
976         * win32/common/config.h:
977           0.10.6.2 prerelease
978
979 2006-06-07  Wim Taymans  <wim@fluendo.com>
980
981         * gst/gstindex.c: (gst_index_gtype_resolver):
982         * tools/gst-xmlinspect.c: (print_plugin_info):
983         Fix leak spotted by coverity checker. Fixes #343827
984         Fix another other leak found by paolo borelli.
985
986 2006-06-06  Thomas Vander Stichele  <thomas at apestaart dot org>
987
988         * libs/gst/dataprotocol/dataprotocol.c:
989         (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
990         (gst_dp_version_get_type), (gst_dp_init),
991         (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
992         (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
993         (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
994         (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
995         (gst_dp_event_from_packet), (gst_dp_packetizer_new),
996         (gst_dp_packetizer_free):
997         * libs/gst/dataprotocol/dataprotocol.h:
998           API: add a GstDPPacketizer object, and create/free functions
999           API: add GstDPVersion enum
1000           Add 1.0 event function that uses the string serialization
1001           Serialize more useful buffer flags
1002           Fixes #343988
1003
1004 2006-06-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1005
1006         * tests/check/Makefile.am:
1007         * tests/check/gst/gstabi.c:
1008         * tests/check/gst/struct_ppc64.h:
1009         * tests/check/libs/libsabi.c:
1010         * tests/check/libs/struct_ppc64.h:
1011           add ppc64 structure sizes
1012
1013 2006-06-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1014
1015         * tests/check/Makefile.am:
1016         * tests/check/gst/gstabi.c:
1017         * tests/check/gst/struct_x86_64.h:
1018         * tests/check/libs/libsabi.c:
1019         * tests/check/libs/struct_x86_64.h:
1020           generate and add structure size lists for x86_64
1021
1022 2006-06-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1023
1024         * libs/gst/check/gstcheck.c: (gst_check_abi_list):
1025         * libs/gst/check/gstcheck.h:
1026           factor out the method from tests that checks size of structures,
1027           and add code to generate the header containing these sizes
1028         * tests/check/gst/gstabi.c: (GST_START_TEST):
1029         * tests/check/gst/struct_i386.h:
1030         * tests/check/libs/libsabi.c: (GST_START_TEST):
1031         * tests/check/libs/struct_i386.h:
1032           use it
1033
1034 2006-06-06  Michael Smith  <msmith@fluendo.com>
1035
1036         * gst/gstsegment.h:
1037           Don't use c++-style comments, fixes #343929
1038
1039 2006-06-05  Edward Hervey  <edward@fluendo.com>
1040
1041         * gst/gst.c:
1042         plugin_paths is not used if we build without registry support.
1043
1044         * gst/gstsegment.c: (gst_segment_copy): 
1045         _copy() was always returning NULL...
1046
1047 2006-06-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1048
1049         * libs/gst/dataprotocol/dataprotocol.c:
1050         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
1051         (gst_dp_packet_from_event):
1052           factor out CRC code
1053
1054 2006-06-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1055
1056         * libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
1057           make sure we unset caps
1058
1059 2006-06-02  Michael Smith  <msmith@fluendo.com>
1060
1061         * libs/gst/check/gstcheck.c: (gst_check_init),
1062         (gst_check_chain_func):
1063         * libs/gst/check/gstcheck.h:
1064           Add a cond/mutex to the check support lib, signal this whenever we
1065           add to the buffers list. This will allow tests to not busy-wait on
1066           the buffer-list.
1067
1068 2006-06-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1069
1070         * libs/gst/dataprotocol/dataprotocol.c:
1071         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
1072         (gst_dp_packet_from_event):
1073           factor out some common header init code
1074
1075 2006-06-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1076
1077         * docs/libs/gstreamer-libs-sections.txt:
1078         * docs/libs/tmpl/gstdataprotocol.sgml:
1079         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
1080         * libs/gst/dataprotocol/dataprotocol.h:
1081           API: make gst_dp_crc() public
1082
1083 2006-06-01  Stefan Kost  <ensonic@users.sf.net>
1084
1085         * plugins/indexers/gstindexers.c: (plugin_init):
1086         conditionally register fileindexer (fixes #343598)
1087
1088 2006-06-01  Stefan Kost  <ensonic@users.sf.net>
1089
1090         * gst/gsttagsetter.h:
1091         Can't cast ifaces to a class
1092
1093         * libs/gst/net/gstnetclientclock.h:
1094         * libs/gst/net/gstnettimeprovider.h:
1095         * plugins/elements/gstfakesink.h:
1096         * plugins/elements/gstfakesrc.h:
1097         * plugins/elements/gstfdsink.h:
1098         * plugins/elements/gstfdsrc.h:
1099         * plugins/elements/gstfilesink.h:
1100         * plugins/elements/gstfilesrc.h:
1101         * plugins/elements/gstidentity.h:
1102         * plugins/elements/gstqueue.h:
1103         * plugins/elements/gsttee.h:
1104         * plugins/indexers/gstfileindex.c:
1105         * plugins/indexers/gstmemindex.c:
1106         * tests/old/examples/plugins/example.h:
1107         Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
1108
1109 2006-06-01  Thomas Vander Stichele  <thomas at apestaart dot org>
1110
1111         * libs/gst/dataprotocol/dataprotocol.c:
1112         (gst_dp_header_from_buffer):
1113           make sure we zero the whole ABI-compatible area
1114
1115 2006-06-01  Wim Taymans  <wim@fluendo.com>
1116
1117         Patch by: Alessandro Decina <alessandro at nnva dot org>
1118
1119         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop):
1120         Make sure the EOS flag is cleared from pads after a flush
1121         or stop. Fixes #343538.
1122
1123         * tests/check/libs/collectpads.c: (GST_START_TEST),
1124         (gst_collect_pads_suite):
1125         Added test for collectpads reusage after EOS.
1126
1127 2006-05-30  Sebastien Moutte  <sebastien@moutte.net>
1128
1129         * gst/gst.c:
1130          set #include <sys/wait.h> in a #ifdef #ifdef HAVE_FORK
1131         * win32/common/libgstbase.def:
1132          export gst_collect_pads_set_flushing
1133         * win32/common/libgstreamer.def:
1134          export gst_pad_set_acceptcaps_function, gst_structure_empty_new,
1135          gst_value_fraction_multiply
1136         * win32/vs6/gst_inspect.dsp:
1137          add a link to intl.lib
1138
1139 2006-05-30  Wim Taymans  <wim@fluendo.com>
1140
1141         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
1142         (gst_collect_pads_chain):
1143         Handle the case where a pad is removed from the collection
1144         that could cause the other pads to become collectable.
1145
1146 2006-05-30  Wim Taymans  <wim@fluendo.com>
1147
1148         * gst/gstelement.c:
1149         Clarify the use of _release_request_pad() and
1150         _get_request_pad() a bit better.
1151
1152         * libs/gst/base/gstadapter.c: (gst_adapter_peek),
1153         (gst_adapter_take_buffer):
1154         Fix some doc and comment typos.
1155
1156 2006-05-30  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1157
1158         * docs/gst/gstreamer-sections.txt:
1159         * docs/libs/gstreamer-libs-sections.txt:
1160           add declared symbols
1161
1162 2006-05-30  Jan Schmidt  <thaytan@mad.scientist.com>
1163
1164         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1165         Add debug that can be enabled using a #define at the top of the file,
1166         for dumping stats about how late/early we were when waking up from
1167         waiting on the clock.
1168
1169 2006-05-30  Wim Taymans  <wim@fluendo.com>
1170
1171         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_check_pads):
1172         When rebuilding the pad list, don't leak the previous list.
1173
1174 2006-05-30  Wim Taymans  <wim@fluendo.com>
1175
1176         Patch by: Lutz Mueller <lutz at topfrose dot de>
1177
1178         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
1179         (gst_base_src_get_query_types), (gst_base_src_update_length):
1180         Publish supported query types.
1181         Update last_stop field in get_range mode so the position
1182         query works. Fixes #342321.
1183
1184 2006-05-30  Tim-Philipp Müller  <tim at centricular dot net>
1185
1186         * docs/gst/gstreamer-sections.txt:
1187         * gst/gsttaglist.c: (_gst_tag_initialize):
1188         * gst/gsttaglist.h:
1189           API: add GST_TAG_PREVIEW_IMAGE (#343341).
1190
1191 2006-05-30  Wim Taymans  <wim@fluendo.com>
1192
1193         Patch by: Alessandro Decina <alessandro at nnva dot org>
1194
1195         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
1196         Unlock mutex when removing an unknown pad.
1197         Fixes #343334.
1198
1199         * tests/check/Makefile.am:
1200         * tests/check/libs/collectpads.c: (collected_cb), (push_buffer),
1201         (push_event), (setup), (teardown), (GST_START_TEST),
1202         (gst_collect_pads_suite), (main):
1203         Added collecpads check, disabled for now as check crashes for
1204         some reason.
1205
1206 2006-05-29  Wim Taymans  <wim@fluendo.com>
1207
1208         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize):
1209         Don't leak pads lists.
1210
1211 2006-05-29  Wim Taymans  <wim@fluendo.com>
1212
1213         * docs/libs/gstreamer-libs-sections.txt:
1214         * libs/gst/base/gstcollectpads.c:
1215         (gst_collect_pads_set_flushing_unlocked),
1216         (gst_collect_pads_set_flushing), (gst_collect_pads_start),
1217         (gst_collect_pads_stop):
1218         * libs/gst/base/gstcollectpads.h:
1219         API: gst_collect_pads_set_flushing()
1220         Added api to set the pads to flushing, useful for seeking
1221         code in elements using collectpads.
1222         Clear segment when receiving a flush.
1223
1224 2006-05-29  Tim-Philipp Müller  <tim at centricular dot net>
1225
1226         * gst/gst.c: (add_path_func), (init_post):
1227           Don't scan registry paths passed via --gst-plugin-path immediately
1228           (will crash, because absolutely nothing is set up and no types are
1229           registered etc.); do this later in init_post(). Fixes #343057.
1230
1231 2006-05-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1232
1233         * gst/gst.c: (init_post):
1234           if we have fork, fork while reading/rebuilding the registry
1235           so the parent doesn't take the hit of having all plugins loaded
1236           in memory.  Fixes #342777.
1237         * configure.ac:
1238           Check if we have fork()
1239         * win32/common/config.h.in:
1240           no fork() on win32
1241
1242 2006-05-26  Jan Schmidt  <thaytan@mad.scientist.com>
1243
1244         * plugins/elements/gstelements.c:
1245         * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
1246         (gst_file_src_init), (gst_file_src_set_property),
1247         (gst_file_src_get_property), (gst_file_src_start):
1248         * plugins/elements/gstfilesrc.h:
1249           API: GstFileSrc::use-mmap
1250
1251         Add a use-mmap property to enable easier testing of all code paths.
1252         Bump rank to PRIMARY, so filesrc is the preferred file reader and used
1253         in the absence of gnomevfssrc. (Closes #340501)
1254
1255 2006-05-26  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
1256
1257         * tools/gst-inspect.c:
1258         Add missing include, removes warning of ngettext not being defined on
1259         some arches.
1260
1261 2006-05-26  Jan Schmidt  <thaytan@mad.scientist.com>
1262
1263         * gst/gstvalue.c: (gst_value_deserialize_fraction):
1264         Handle NULL input and output pointers silently as a failed conversion,
1265         rather than g_warnings.
1266
1267 2006-05-25  Wim Taymans  <wim@fluendo.com>
1268
1269         * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_start):
1270         Initialize variable before using. Fixes #342820.
1271
1272 2006-05-24  Tim-Philipp Müller  <tim at centricular dot net>
1273
1274         * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek):
1275           Fix off-by-one bug that would only allow peeks of N-1 bytes
1276           from the start even if the buffer to typefind on contains
1277           in fact N bytes of data (makes vorbis typefinding from a
1278           vorbis identification header buffer work).
1279
1280         * tests/check/Makefile.am:
1281         * tests/check/libs/.cvsignore:
1282         * tests/check/libs/typefindhelper.c: (GST_START_TEST),
1283         (gst_typefindhelper_suite), (main), (foobar_typefind),
1284         (plugin_init):
1285           Add very basic unit test for gst_type_find_helper_for_buffer()
1286           that checks for the problem fixed above.
1287
1288 2006-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1289
1290         * tools/gst-inspect.c: (print_interfaces),
1291         (print_element_properties_info), (print_element_list), (main):
1292           add more translatable strings
1293
1294 2006-05-23  Tim-Philipp Müller  <tim at centricular dot net>
1295
1296         Patch by: Julien Moutte  <julien at moutte net>
1297
1298         * docs/gst/gstreamer-sections.txt:
1299           Make new GST_FLOW_IS_SUCCESS macro visible in docs.
1300           
1301         * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
1302         (gst_fake_sink_preroll):
1303         * plugins/elements/gstfakesink.h:
1304           API: Add new GstFakeSink::preroll-handoff signal (#337100).
1305
1306 2006-05-23  Wim Taymans  <wim@fluendo.com>
1307
1308         * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark):
1309         * gst/gstpad.h:
1310         Added _CUSTOM error and success GstFlowReturn that can be
1311         used be elements internally. 
1312         Added macro to check for SUCCESS flowreturns.
1313         API: GST_FLOW_CUSTOM_SUCCESS
1314         API: GST_FLOW_CUSTOM_ERROR
1315         API: GST_FLOW_IS_SUCCESS
1316
1317         * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
1318         Added check for GstFlowReturn sanity.
1319
1320 2006-05-23  Wim Taymans  <wim@fluendo.com>
1321
1322         Patch by: Mark Nauwelaerts <manauw at skynet dot be>
1323
1324         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
1325         (gst_collect_pads_event):
1326         clear/reset segment info in FLUSH_STOP.
1327         Fixes #336929.
1328
1329 2006-05-22  Stefan Kost  <ensonic@users.sf.net>
1330
1331         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
1332         (gst_collect_pads_check_collected):
1333         Flush queued buffer on _stop(), fixes playing again (#342454)
1334
1335 2006-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1336
1337         * tests/check/gst/gststructure.c: (GST_START_TEST),
1338         (gst_structure_suite):
1339           add a test for a complete structure
1340
1341 2006-05-19  Tim-Philipp Müller  <tim at centricular dot net>
1342
1343         * docs/faq/developing.xml:
1344         * docs/faq/faq.xml:
1345         * docs/faq/troubleshooting.xml:
1346         * docs/faq/using.xml:
1347           Some minor FAQ updates that won't change the fact that
1348           our FAQ is badly structured, full of information hardly
1349           anyone new to GStreamer needs to know and lacking lots
1350           of information people constantly ask for.
1351           
1352 2006-05-19  Jan Schmidt  <thaytan@mad.scientist.com>
1353
1354         * gst/gstpad.c: (gst_pad_set_caps):
1355           Short-circuit gst_pad_set_caps if setting the existing
1356           caps pointer again, and avoid printing debug and 
1357           reffing/unreffing the caps.
1358
1359         * plugins/elements/gstqueue.c: (gst_queue_push_one):
1360           There's actually no need to set the caps before pushing -
1361           the acceptcaps method will handle it anyway.
1362
1363 2006-05-19  Tim-Philipp Müller  <tim at centricular dot net>
1364
1365         * docs/gst/gstreamer-sections.txt:
1366         * win32/common/libgstreamer.def:
1367         * gst/gstutils.c: (gst_element_seek_simple):
1368         * gst/gstutils.h:
1369           API: add gst_element_seek_simple() (#342238).
1370
1371 2006-05-18  Edward Hervey  <edward@fluendo.com>
1372
1373         * gst/gsttypefind.c: (gst_type_find_get_type):
1374         * gst/gsttypefind.h:
1375         Added GST_TYPE_TYPE_FIND and gst_type_find_get_type() so a GType gets
1376         registered for GstTypeFind pointers. This allows wrapping the structure
1377         in bindings (i.e. gst-python).
1378
1379 2006-05-18  Tim-Philipp Müller  <tim at centricular dot net>
1380
1381         * gst/gsttagsetter.c:
1382           Docs additions and fixes (see #339918).
1383
1384 2006-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1385
1386         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
1387         The caps intersection algorithm can produce multiple copies of the
1388         caps. Until that is fixed, we need to simplify the result to be
1389         sure whether the allowed caps are fixed or not.
1390
1391         * plugins/elements/gstqueue.c: (gst_queue_init),
1392         (gst_queue_bufferalloc), (gst_queue_acceptcaps),
1393         (gst_queue_push_one):
1394         Proxied buffer alloc should not set the caps on the source pad.
1395         When pushing buffers, we always accept the caps change that triggers.
1396         This prevents negotiation errors caused by caps changing mid-stream 
1397         and then being refused on our source pad (because upstream is now
1398         refusing those caps).
1399
1400 2006-05-18  Tim-Philipp Müller  <tim at centricular dot net>
1401
1402         * tests/examples/helloworld/helloworld.c: (main):
1403           Must plug audioconvert and audioresample between decoder
1404           and audio sink.
1405
1406 2006-05-17  Jan Schmidt  <thaytan@mad.scientist.com>
1407
1408         * gst/gstregistryxml.c: (read_string), (load_pad_template),
1409         (load_feature), (load_plugin):
1410         Allow empty strings for some of the plugin fields so we don't 
1411         drop valid plugin entries that were written out correctly
1412         (Fixes #341479)
1413
1414 2006-05-17  Sebastien Moutte  <sebastien@moutte.net>
1415         
1416         * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
1417           Use g_remove and g_rename instead of remove and rename that don't 
1418           handle utf8 characters. rename was failing for users who had specific
1419           characters in their name then the registry was built at each 
1420           gstreamer init.
1421         * win32/vs6/gst_inspect.dsp:
1422         * win32/vs6/gst_launch.dsp:
1423         * win32/vs6/libgstbase.dsp:
1424         * win32/vs6/libgstcoreelements.dsp:
1425         * win32/vs6/libgstreamer.dsp:
1426           Use a debug version of libxml2 (libxml2D.lib,libxml2D.dll) for DEBUG 
1427           build of libgstreamer and clean unused libraries in projects link 
1428           settings.
1429
1430 2006-05-17  Edward Hervey  <edward@fluendo.com>
1431
1432         * plugins/elements/gstqueue.c: (gst_queue_push_one):
1433         The queue is not responsible for pushing an EOS when receiving a fatal
1434         flow error. It's up to the real element driving the pipeline to do that.
1435
1436 2006-05-16  Edward Hervey  <edward@fluendo.com>
1437
1438         * plugins/elements/gstqueue.c: (gst_queue_push_one):
1439         The queue was posting a non-needed GST_MESSAGE_ERROR when pushing a
1440         buffer returned a fatal error. It should just send an EOS and stop
1441         its task.
1442         Upstream elements will then properly receive the GST_FLOW_UNEXPECTED
1443         when pushing buffers on the queue and will be able to handle the event.
1444
1445 2006-05-16  Tim-Philipp Müller  <tim at centricular dot net>
1446
1447         * docs/manual/basics-bins.xml:
1448         * docs/manual/basics-init.xml:
1449           Fix typos and minor errors in sample code (#341856).
1450
1451 2006-05-16  Wim Taymans  <wim@fluendo.com>
1452
1453         * docs/design/part-qos.txt:
1454         Fix indexes in formulas to make more sense.
1455
1456 2006-05-15  Wim Taymans  <wim@fluendo.com>
1457
1458         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
1459         Don't report POSITION based on clock time if sync is
1460         disabled in a sink.
1461
1462 2006-05-15  Tim-Philipp Müller  <tim at centricular dot net>
1463
1464         * gst/gstobject.h:
1465           Add cast to make compiler happy - refcount variable was a gint
1466           in GstObject but is a guint in GObject and g_atomic_int_get()
1467           wants a gint *.
1468
1469 2006-05-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1470
1471         * gst/parse/Makefile.am:
1472           chain commands using &&, which also makes parallel make work
1473
1474 2006-05-14  Tim-Philipp Müller  <tim at centricular dot net>
1475
1476         * docs/gst/gstreamer-sections.txt:
1477         * gst/gstevent.c:
1478         * gst/gstevent.h:
1479         * gst/gstmessage.h:
1480           Minor docs fixes.
1481
1482 === release 0.10.6 ===
1483
1484 2006-05-14  Jan Schmidt <thaytan@mad.scientist.com>
1485
1486         * configure.ac:
1487           releasing 0.10.6, "Take the cannoli"
1488
1489 2006-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1490
1491         * tools/gst-launch.c: (print_tag):
1492           Fix use of uninitialized variable in the hypothetical
1493           case that some broken plugin creates a GST_TAG_IMAGE
1494           tag containing a NULL buffer (#341667).
1495
1496 2006-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1497
1498         * tools/gst-launch.c: (print_tag):
1499           Print something more intelligible for image tags when
1500           using the -t switch (#341556).
1501
1502 2006-05-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1503
1504         * Makefile.am:
1505           updates for win32
1506         * configure.ac:
1507           define GST_MAJORMINOR so we have it available in win32/common/config.h
1508           Possibly remove it from our Makefile.am files later
1509         * win32/common/config.h:
1510         * win32/common/config.h.in:
1511           added GST_MAJORMINOR
1512         * win32/common/gstenumtypes.c: (register_gst_resource_error):
1513         * win32/common/gstversion.h:
1514           updated
1515
1516 2006-05-12  Sebastien Moutte  <sebastien@moutte.net>
1517
1518         * win32/MANIFEST:
1519           Update win32 files listing.
1520         * win32/common/gstversion.h:
1521           Add GST_MAJORMINOR definition.
1522         * win32/common/libgstreamer.def:
1523           Add new exported functions.
1524           
1525 2006-05-12  Michael Smith  <msmith@fluendo.com>
1526
1527         * gst/gstplugin.c: (gst_plugin_load_file):
1528           If an so file has no plugin entry point, unload the module.
1529
1530 2006-05-11  Wim Taymans  <wim@fluendo.com>
1531
1532         * plugins/elements/gstqueue.c: (gst_queue_chain), (gst_queue_loop),
1533         (gst_queue_set_property):
1534         Don't forget to signal the _chain or _loop function 
1535         when the queue size or thresholds change since that might
1536         cause them to make progres again.
1537
1538 2006-05-11  Stefan Kost  <ensonic@users.sf.net>
1539
1540         * gst/gstclock.c: (gst_clock_class_init):
1541         * gst/gstindex.c: (gst_index_class_init):
1542         * gst/gstobject.c: (gst_object_class_init):
1543         * gst/gstpad.c: (gst_pad_class_init):
1544         * gst/gstpipeline.c: (gst_pipeline_class_init):
1545         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
1546         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init):
1547         * libs/gst/base/gstbasetransform.c:
1548         (gst_base_transform_class_init):
1549         * libs/gst/net/gstnetclientclock.c:
1550         (gst_net_client_clock_class_init):
1551         * libs/gst/net/gstnettimeprovider.c:
1552         (gst_net_time_provider_class_init):
1553         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init):
1554         * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
1555         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
1556         * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init):
1557         * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
1558         * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
1559         * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
1560         * plugins/elements/gstidentity.c: (gst_identity_class_init):
1561         * plugins/elements/gsttee.c: (gst_tee_class_init):
1562         * tests/old/examples/plugins/example.c: (gst_example_class_init):
1563         * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
1564           G_OBJECT_CLASS macro usage batch cleanup, fixes #337747 for core
1565
1566 2006-05-11  Wim Taymans  <wim@fluendo.com>
1567
1568         * gst/gstbuffer.c: (_gst_buffer_initialize):
1569         Register subbufer along with the buffer type so that
1570         it does not accidentally gets registered from N
1571         different streaming threads in a non threadsafe way.
1572
1573 2006-05-10  Tim-Philipp Müller  <tim at centricular dot net>
1574
1575         * gst/gstbuffer.h:
1576         * gst/gstevent.h:
1577         * gst/gstmessage.h:
1578           Make gtk-doc generate docs for our inlined gst_buffer_ref(),
1579           gst_event_ref() and gst_message_ref() functions again
1580           (ugly hack, please do fix if there's a better way besides
1581           overrides.txt, which doesn't seem to work).
1582
1583 2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1584
1585         * libs/gst/check/gstcheck.h:
1586           add an assert for setting state to avoid lots of repetitive code
1587           in the future
1588
1589 2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1590
1591         * gst/gstvalue.c: (gst_value_serialize_flags):
1592           fix a leak if no flags are set
1593         * tests/check/gst/gstvalue.c: (GST_START_TEST):
1594           fix leak in tests
1595
1596 2006-05-10  Tim-Philipp Müller  <tim at centricular dot net>
1597
1598         * docs/manual/basics-pads.xml:
1599           Expand a bit on caps and filtered links and update
1600           examples that were still using the no longer existing
1601           gst_pad_link_filtered() (#338206).
1602
1603 2006-05-10  Wim Taymans  <wim@fluendo.com>
1604
1605         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
1606         (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
1607         (gst_collect_pads_set_flushing), (gst_collect_pads_start),
1608         (gst_collect_pads_stop):
1609         * libs/gst/base/gstcollectpads.h:
1610         No need to call _stop in _finalize.
1611         Iterate the main pad list in _finalize.
1612         Added some more debug.
1613         Free lists and data in the right order.
1614         Also free data whem doing _remove_pad when stopped for
1615         backward compatibility protect ::started with PAD_LOCK as
1616         well.
1617
1618 2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1619
1620         * gst/gststructure.c: (gst_structure_gtype_from_abbr),
1621         (gst_structure_parse_value):
1622           add some comments
1623           rename a method so that it actually says what it does better
1624
1625 2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1626
1627         * gst/gstevent.c: (_gst_event_initialize):
1628         * gst/gstformat.c: (_gst_format_initialize):
1629           make sure some essential types used by events are registered
1630           as part of gst_init()
1631         * gst/gstvalue.c: (gst_value_serialize_flags):
1632           if no flags are set, serialize them to a value that represents NONE
1633           so that deserializing them works
1634         * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1635           add tests for serialization and deserialization of flags
1636
1637 2006-05-10  Wim Taymans  <wim@fluendo.com>
1638
1639         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_collect),
1640         (gst_collect_pads_collect_range), (gst_collect_pads_available),
1641         (gst_collect_pads_check_pads), (gst_collect_pads_check_collected),
1642         (gst_collect_pads_event), (gst_collect_pads_chain):
1643         Update docs.
1644         Better debug info.
1645         Catch and return errors from the collect function
1646         Refuse data on eos pads.
1647
1648 2006-05-10  Edward Hervey  <edward@fluendo.com>
1649
1650         * gst/gstinterface.h:
1651         GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
1652         GInterface type checking.
1653         They were previously using non-defined macros.
1654
1655 2006-05-09  Wim Taymans  <wim@fluendo.com>
1656
1657         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
1658         (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
1659         (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
1660         (gst_collect_pads_start), (gst_collect_pads_stop),
1661         (gst_collect_pads_peek), (gst_collect_pads_pop),
1662         (gst_collect_pads_available), (gst_collect_pads_read),
1663         (gst_collect_pads_flush), (gst_collect_pads_check_pads),
1664         (gst_collect_pads_is_collected), (gst_collect_pads_event),
1665         (gst_collect_pads_chain):
1666         * libs/gst/base/gstcollectpads.h:
1667         Clean up the mess that is collectpads, add comments and
1668         FIXMEs where needed.
1669         Maintain a separate pad list so we can add pads while
1670         collecting the other ones. For this we need a new separate 
1671         lock (see comics).
1672         Fix memory leak in finalize.
1673         Refactor some weird code to set/unset pad flushing flags, mark
1674         with comments.
1675         Don't crash in _available, _read, _flush when we're EOS.
1676
1677         * tests/check/libs/.cvsignore:
1678         Ignore adapter check binary.
1679
1680 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1681
1682         * gst/gstindex.c: (gst_index_resolver_get_type):
1683         * plugins/elements/gstfakesink.c:
1684         (gst_fake_sink_state_error_get_type):
1685         * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1686         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
1687         * plugins/elements/gstqueue.c: (queue_leaky_get_type):
1688           Const-ify GEnumValue arrays.
1689
1690 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1691
1692         * tests/check/gst/gstbuffer.c: (GST_START_TEST):
1693           Add test case for flags + gst_buffer_make_metadata_writable().
1694
1695 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1696
1697         * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
1698           gst_buffer_make_metadata_writable() should maintain the
1699           buffer flags (those that make sense at least) (see #340859).
1700
1701 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1702
1703         * tools/gst-inspect.c:
1704         * tools/gst-launch.c:
1705         * tools/gst-typefind.c:
1706         * tools/gst-xmlinspect.c:
1707         * tools/tools.h:
1708           Fix up includes: need to include stdlib.h in tools.h for exit().
1709
1710 2006-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1711
1712         * gst/gsttaglist.c: (_gst_tag_initialize):
1713         * gst/gsttaglist.h:
1714           API: add GST_TAG_IMAGE tag (#340721).
1715
1716 2006-05-08  Wim Taymans  <wim@fluendo.com>
1717
1718         * gst/gstquery.c:
1719         Added some docs for the segment query.
1720
1721 2006-05-08  Wim Taymans  <wim@fluendo.com>
1722
1723         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1724         (gst_base_src_loop), (gst_base_src_change_state):
1725         Always push non-flushing serialized events in the streaming 
1726         thread.
1727
1728 2006-05-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1729
1730         * gst/gsterror.c: (_gst_stream_errors_init):
1731           Add a missing error string.
1732
1733 2006-05-08  Jan Schmidt  <thaytan@mad.scientist.com>
1734
1735         * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
1736         Add applied_rate to the debug
1737
1738         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
1739         Copy applied_rate into the outgoing NEWSEGMENT event
1740
1741 2006-05-08  Wim Taymans  <wim@fluendo.com>
1742
1743         Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
1744
1745         * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
1746         (gst_base_sink_change_state):
1747         call ::unlock before taking the PREROLL_LOCK so we can safely
1748         handle elements that lock in ::render.
1749         Fixes #340174.
1750
1751 2006-05-08  Edward Hervey  <edward@fluendo.com>
1752
1753         * autogen.sh: (CONFIGURE_DEF_OPT): 
1754         Darwin's libtoolize is in fact called glibtoolize.
1755         Adding glibtoolize to the list of accepted names for libtoolize.
1756
1757 2006-05-08  Wim Taymans  <wim@fluendo.com>
1758
1759         * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
1760         Unify error handling, don't post an error message
1761         when a push() returns EOS but perform our normal EOS
1762         handling code. Fixes #340772.
1763
1764 2006-05-08  Wim Taymans  <wim@fluendo.com>
1765
1766         * docs/design/part-overview.txt:
1767         Make upsteam/downstream concepts more clear.
1768         Give an example of serialized/non-serialized events.
1769
1770         * docs/design/part-events.txt:
1771         * docs/design/part-streams.txt:
1772         Mention applied_rate.
1773
1774         * docs/design/part-trickmodes.txt:
1775         Mention applied rate, flesh out some more use cases.
1776
1777         * gst/gstevent.c: (gst_event_new_new_segment),
1778         (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
1779         (gst_event_parse_new_segment_full), (gst_event_new_tag),
1780         (gst_event_parse_tag), (gst_event_new_buffer_size),
1781         (gst_event_parse_buffer_size), (gst_event_new_qos),
1782         (gst_event_parse_qos), (gst_event_parse_seek),
1783         (gst_event_new_navigation):
1784         * gst/gstevent.h:
1785         Add applied_rate field to NEWSEGMENT event.
1786         API: gst_event_new_new_segment_full()
1787         API: gst_event_parse_new_segment_full()
1788
1789         * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
1790         (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
1791         (gst_segment_to_stream_time), (gst_segment_to_running_time):
1792         * gst/gstsegment.h:
1793         Add applied_rate to GstSegment structure.
1794         Make calculation of stream_time and running_time more correct
1795         wrt rate/applied_rate.
1796         Add some more docs.
1797         API: GstSegment::applied_rate field
1798         API: gst_segment_set_newsegment_full();
1799
1800         * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
1801         (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
1802         * libs/gst/base/gstbasetransform.c:
1803         (gst_base_transform_sink_eventfunc),
1804         (gst_base_transform_handle_buffer):
1805         Parse and use applied_rate in the GstSegment field.
1806
1807         * tests/check/gst/gstevent.c: (GST_START_TEST):
1808         Add check for applied_rate field.
1809
1810         * tests/check/gst/gstsegment.c: (GST_START_TEST),
1811         (gstsegments_suite):
1812         Add more checks for various GstSegment operations.
1813
1814 2006-05-08  Wim Taymans  <wim@fluendo.com>
1815
1816         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
1817         (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
1818         (gst_base_sink_get_position), (gst_base_sink_change_state):
1819         Store the sync time of the buffer end position separatly in a
1820         new variable eos_rtime so we can properly sync the EOS event.
1821         Fixes #340697.
1822         Fix the docs for gst_base_sink_set_qos_enabled().
1823         Don't set segment start to invalid value when we receive a 
1824         non TIME newsegment.
1825         get closer to handling position reporting for negative rates 
1826         correctly.
1827
1828 2006-05-07  Stefan Kost  <ensonic@users.sf.net>
1829
1830         * gst/gstcaps.c:
1831         Docs about how to print caps for debug purposes.
1832
1833         * gst/gstpadtemplate.c: (gst_static_pad_template_get):
1834         use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
1835
1836 2006-05-07  Stefan Kost  <ensonic@users.sf.net>
1837
1838         * gst/gstelement.c:
1839           use full enum names and preprend a '%' in docs strings to make recent 
1840           gtk-doc turn that into a link
1841
1842 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1843
1844         * docs/manual/basics-bins.xml:
1845         * docs/manual/basics-bus.xml:
1846         * docs/manual/basics-pads.xml:
1847           Some typo fixes, some additions, some clarifications. 
1848
1849 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1850
1851         * tools/gst-inspect.c: (main):
1852         * tools/gst-launch.c: (main):
1853         * tools/gst-run.c: (main):
1854         * tools/gst-typefind.c: (main):
1855         * tools/gst-xmlinspect.c: (main):
1856           Use the string passed to g_option_context_new() for
1857           what it's intended for - the program name is already
1858           printed elsewhere.
1859
1860 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1861
1862         * tools/Makefile.am:
1863         * tools/gst-inspect.c: (main):
1864         * tools/gst-launch.c: (main):
1865         * tools/gst-xmlinspect.c: (main):
1866         * tools/tools.h:
1867           Add back --version command line option (#340460).
1868
1869         * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
1870           Add --version option and use GOption for argument parsing; refactor a
1871           bit; accept directories as arguments and recurse into them; lastly,
1872           print a decent error message when things go wrong.
1873
1874 2006-05-05  Maciej Katafiasz  <mathrick@freedesktop.org>
1875
1876         * docs/manual/basics-bins.xml:
1877         Don't mention GstThread (#340611)
1878         * docs/manual/basics-elements.xml:
1879         Update link to GObject tutorial (#340607)
1880         
1881 2006-05-05  Wim Taymans  <wim@fluendo.com>
1882
1883         * gst/gstbuffer.h:
1884         * gst/gstminiobject.c:
1885         Add note about refcounting and miniobject/buffer writeability
1886         to docs. Fixes #340604
1887
1888         * gst/gstelementfactory.h:
1889         Added some explanation about @klass.
1890
1891 2006-05-05  Maciej Katafiasz  <mathrick@freedesktop.org>
1892
1893         * docs/manual/intro-motivation.xml:
1894         * docs/manual/manual.xml:
1895         Avoid CORBA & Bonobo references (#340598)
1896
1897 2006-05-05  Maciej Katafiasz  <mathrick@freedesktop.org>
1898
1899         * docs/manual/basics-bus.xml:
1900         * docs/manual/basics-pads.xml:
1901         Fix up some inaccuracies and omissions (#340609)
1902         
1903 2006-05-05  Maciej Katafiasz  <mathrick@freedesktop.org>
1904
1905         * gst/gstghostpad.c:
1906           Small typo in docs (#340625)
1907
1908 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1909
1910         * gst/parse/Makefile.am:
1911           Make 'make -j' proof (see #340698).
1912
1913 2006-05-05  Tim-Philipp Müller  <tim at centricular dot net>
1914
1915         * configure.ac:
1916           Require GLib-2.8 here as well.
1917
1918 2006-05-05  Wim Taymans  <wim@fluendo.com>
1919
1920         * gst/glib-compat.c:
1921         * gst/gst.c: (init_pre):
1922         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1923         (gst_object_unref), (gst_object_replace), (gst_object_dispose),
1924         (gst_object_dispatch_properties_changed):
1925         * gst/gstobject.h:
1926         * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
1927         * gst/gststructure.c: (gst_structure_set_valist):
1928         * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
1929         Remove pre glib2.8 compatibility, fixes #340508
1930
1931 2006-05-04  Tim-Philipp Müller  <tim at centricular dot net>
1932
1933         * gst/gsttaglist.h:
1934           Mention type of tags in doc blurbs.
1935
1936 2006-05-04  Jan Schmidt  <thaytan@mad.scientist.com>
1937
1938         * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1939         (gst_pad_configure_src), (gst_pad_push):
1940         Restore acceptcaps checking behaviour now that good plugins have
1941         been released.
1942
1943 2006-05-04  Tim-Philipp Müller  <tim at centricular dot net>
1944
1945         Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
1946
1947         * gst/gst.c:
1948         * gst/gstbus.c:
1949         * gst/gstclock.c:
1950         * gst/gstevent.c:
1951         * gst/gstformat.c:
1952         * gst/gstmessage.c:
1953         * gst/gstparse.c:
1954         * gst/gstquery.c:
1955         * gst/gstutils.c:
1956         * gst/parse/Makefile.am:
1957         * libs/gst/base/gstadapter.c:
1958         * libs/gst/base/gstbasesrc.c:
1959         * libs/gst/base/gstpushsrc.c:
1960         * libs/gst/base/gsttypefindhelper.c:
1961         * plugins/elements/gstfakesrc.c:
1962         * plugins/elements/gstidentity.c:
1963           Make sure gstprivate.h and/or config.h are
1964           always included first, otherwise some of our
1965           defines (like _FILE_OFFSET_BITS) might be
1966           redefined in the system headers. Fixes build
1967           on opensolaris (#340016).
1968
1969 2006-05-04  Wim Taymans  <wim@fluendo.com>
1970
1971         * docs/libs/gstreamer-libs-sections.txt:
1972         API: addition: gst_adapter_take_buffer()
1973         
1974         * libs/gst/base/gstadapter.c: (gst_adapter_push),
1975         (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
1976         (gst_adapter_available_fast):
1977         * libs/gst/base/gstadapter.h:
1978         Prepare for optimizing the hell out of this hugely inefficient
1979         piece of code. 
1980         Added gst_adapter_take_buffer() so we can at least start thinking
1981         about subbuffering and merging.
1982         Added some comments.
1983
1984         * tests/check/Makefile.am:
1985         * tests/check/libs/adapter.c: (GST_START_TEST),
1986         (gst_adapter_suite), (main):
1987         Added GstAdapter check.
1988
1989 2006-05-04  Wim Taymans  <wim@fluendo.com>
1990
1991         * docs/design/part-overview.txt:
1992         Fix some typos, add blurb about buffer flags.
1993
1994 2006-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1995
1996         * docs/libs/gstreamer-libs-sections.txt:
1997           make sure GstBaseTransformClass shows up in the docs
1998         * libs/gst/base/gstbasetransform.c:
1999         * libs/gst/base/gstbasetransform.h:
2000           move docs so gtk-doc picks it up now
2001
2002 2006-05-02  Stefan Kost  <ensonic@users.sf.net>
2003
2004         * docs/libs/gstreamer-libs-sections.txt:
2005           add missing symbols to docs
2006
2007 2006-05-02  Stefan Kost  <ensonic@users.sf.net>
2008
2009         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
2010           back out the newsegment handling change, see #340060 for ongoing
2011           discussion
2012
2013 2006-04-30  Tim-Philipp Müller  <tim at centricular dot net>
2014
2015         * tools/gst-run.c: (get_candidates), (main):
2016           Fix wrong g_file_test() usage (see glib docs for why it doesn't
2017           work); fix typo in error message. Fixes #340079.
2018
2019 2006-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2020
2021         * common/Makefile.am:
2022         * docs/Makefile.am:
2023         * docs/faq/Makefile.am:
2024         * docs/gst/Makefile.am:
2025         * docs/libs/Makefile.am:
2026         * docs/manual/Makefile.am:
2027         * docs/plugins/Makefile.am:
2028         * docs/pwg/Makefile.am:
2029         * docs/slides/Makefile.am:
2030         * docs/upload.mak:
2031         * common/upload.mak:
2032           move upload.mak to common
2033
2034 2006-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2035
2036         * tests/check/gst/gstghostpad.c: (GST_START_TEST):
2037           add more asserts on refcounts
2038           do more cleanup at end of tests
2039           fix test leaks showing in FC5
2040
2041 2006-04-29  Stefan Kost  <ensonic@users.sf.net>
2042
2043         * plugins/elements/gsttypefindelement.c:
2044         (gst_type_find_element_handle_event):
2045         reverted wrong change and reflowed code to avoid others falling into
2046         this trap
2047
2048 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
2049
2050         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
2051           fix changelog entry about last collectpads change,
2052           add notes about proper fix
2053
2054 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
2055
2056         * gst/gst.c:
2057         * gst/gstregistry.c: (gst_registry_scan_path_level),
2058         (gst_registry_scan_path):
2059         * gst/gstregistry.h:
2060           only write out registry if it has changed, fixes #338339
2061
2062 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
2063
2064         * gst/gstbin.c:
2065         * gst/gstpipeline.c:
2066         * plugins/elements/gstcapsfilter.c:
2067         * plugins/elements/gstfakesink.c:
2068         * plugins/elements/gstfakesrc.c:
2069         * plugins/elements/gstfdsink.c:
2070         * plugins/elements/gstfdsrc.c:
2071         * plugins/elements/gstfilesink.c:
2072         * plugins/elements/gstfilesrc.c:
2073         * plugins/elements/gstidentity.c:
2074         * plugins/elements/gstqueue.c:
2075         * plugins/elements/gsttee.c:
2076         * plugins/elements/gsttypefindelement.c:
2077         (gst_type_find_element_handle_event):
2078           make GstElementDetails const
2079
2080 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
2081
2082         * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
2083         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
2084         (gst_collect_pads_is_collected), (gst_collect_pads_event):
2085           more detailed debug and formatting cleanup,
2086           forward newsegments to src-pad (so that e.g. adder not eats them)
2087
2088 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
2089
2090         * gst/gstutils.c: (gst_element_link_pads):
2091           cleanup double code
2092
2093 2006-04-28  Stefan Kost  <ensonic@users.sf.net>
2094
2095         * libs/gst/controller/gstcontroller.c:
2096         (gst_controller_sync_values):
2097           some little tuning
2098         * tests/check/libs/controller.c: (GST_START_TEST),
2099         (gst_controller_suite):
2100           a new test for live value handling
2101
2102 2006-04-28  Wim Taymans  <wim@fluendo.com>
2103
2104         * gst/gstutils.c: (push_and_ref):
2105         Added some more docs.
2106         Fix refcount issue whith gst_element_found_tags() helper 
2107         function. Fixes #338335
2108
2109         * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
2110         Added testsuite for gst_element_found_tags().
2111
2112 2006-04-28  Michael Smith  <msmith@fluendo.com>
2113
2114         * gst/gstvalue.c: (gst_value_serialize_flags):
2115           Avoid NULL dereference when trying to serialize flags containing
2116           invalid values.
2117
2118 2006-04-28  Michael Smith  <msmith@fluendo.com>
2119
2120         * plugins/elements/gsttypefindelement.c:
2121         (gst_type_find_element_handle_event):
2122           If we get EOS before any data is accumulated, don't use
2123           uninitialised local variables.
2124
2125 2006-04-28  Michael Smith  <msmith@fluendo.com>
2126
2127         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2128         (gst_dp_event_from_packet):
2129           Fixes in reading/writing events over GDP (not currently used?) - 
2130           dereferencing NULL events for unknown/invalid event types, memory
2131           leak, and change g_warning to GST_WARNING.
2132
2133 2006-04-28  Wim Taymans  <wim@fluendo.com>
2134
2135         * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
2136         (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
2137         (gst_base_sink_get_position), (gst_base_sink_change_state):
2138         When frame dropping is enabled, we should not ignore frames
2139         without a duration.
2140         Update some documentation.
2141
2142 2006-04-28  Wim Taymans  <wim@fluendo.com>
2143
2144         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
2145         (gst_base_src_send_event), (gst_base_src_change_state):
2146         Documentation updates.
2147
2148 2006-04-28  Wim Taymans  <wim@fluendo.com>
2149
2150         * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
2151         (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
2152         handle EAGAIN, EINTR and short writes correctly. Also clean
2153         up some error cases, avoid a deadlock on bad file descriptors and
2154         use GST_DEBUG_OBJECT.
2155         Fixes #339843
2156
2157 2006-04-28  Wim Taymans  <wim@fluendo.com>
2158
2159         * gst/gstvalue.c: (gst_value_serialize_buffer),
2160         (gst_value_deserialize_buffer):
2161         Don't try to serialize a GValue with a NULL buffer. 
2162         Fixes #339821.
2163
2164         * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2165         Added check for serialisation of NULL buffers.
2166
2167 2006-04-28  Wim Taymans  <wim@fluendo.com>
2168
2169         * gst/gstminiobject.c: (gst_value_take_mini_object):
2170         Taking a NULL miniobject is valid, fix the case where
2171         we try to unref the NULL miniobject.
2172
2173 2006-04-28  Wim Taymans  <wim@fluendo.com>
2174
2175         Patch by: Stefan Kost <ensonic at sonicpulse dot de>
2176
2177         * gst/gstbin.c: (gst_bin_handle_message_func):
2178         Update docs.
2179         Don't leak bin refcount when a state recalc is
2180         in progress and we delay another one #339808.
2181
2182 2006-04-28  Wim Taymans  <wim@fluendo.com>
2183
2184         * docs/design/part-TODO.txt:
2185         Mention QoS as an ongoing work item.
2186
2187         * docs/design/part-buffering.txt:
2188         New doc about buffering that needs to be fleshed out
2189         at some point.
2190
2191         * docs/design/part-qos.txt:
2192         More QoS policy for decoders/demuxers/transforms
2193
2194         * docs/design/part-trickmodes.txt:
2195         Small update.
2196
2197 2006-04-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2198
2199         * configure.ac:
2200           back to HEAD
2201
2202 === release 0.10.5 ===
2203
2204 2006-04-28  Thomas Vander Stichele <thomas at apestaart dot org>
2205
2206         * configure.ac:
2207           releasing 0.10.5, "Fogo"
2208
2209 2006-04-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2210
2211         patch by: Wim Taymans
2212
2213         * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
2214         (gst_pad_configure_src), (gst_pad_push):
2215         * gst/gstpipeline.c: (gst_pipeline_init):
2216           Fix internal data flow errors.  Fixes #338711.
2217
2218 2006-04-12  Wim Taymans  <wim@fluendo.com>
2219
2220         * tests/check/gst/gstelement.c: (GST_START_TEST):
2221         Don't leak the factory.
2222
2223 2006-04-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2224
2225         * configure.ac:
2226         * win32/common/config.h:
2227           prerelease
2228
2229 2006-04-12  Tim-Philipp Müller  <tim at centricular dot net>
2230
2231         * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
2232         (gst_controller_unset_all):
2233           Free allocated GstTimedValues when freeing list nodes.
2234           Should fix leaks 'make check-valgrind' complains about.
2235
2236         * win32/common/libgstcontroller.def:
2237           Add gst_controller_unset_all.
2238
2239 2006-04-11  Stefan Kost  <ensonic@users.sf.net>
2240
2241         * docs/libs/gstreamer-libs-sections.txt:
2242         * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
2243         (gst_controller_unset_all):
2244         * libs/gst/controller/gstcontroller.h:
2245         API: Added new method gst_controller_unset_all()
2246         fixed gst_controller_unset()
2247         * tests/check/libs/controller.c: (GST_START_TEST),
2248         (gst_controller_suite):
2249         Added two testcases for new and fixed method
2250
2251 2006-04-11  Tim-Philipp Müller  <tim at centricular dot net>
2252
2253         * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
2254           MSG_DONTWAIT is not defined on Cygwin, so work
2255           around that (fixes #317048).
2256           
2257 2006-04-11  Wim Taymans  <wim@fluendo.com>
2258
2259         * gst/gstelementfactory.c: (gst_element_register),
2260         (gst_element_factory_create), (gst_element_factory_make):
2261         Some cleanups.
2262         Fixed a FIXME.
2263         Updated docs (Fixes #131079)
2264
2265         * gst/gstpluginfeature.c: (gst_plugin_feature_load):
2266         Small cleanups.
2267
2268         * tests/check/gst/gstelement.c: (GST_START_TEST),
2269         (gst_element_suite):
2270         Added testcase for elementfactory class field.
2271
2272 2006-04-10  Wim Taymans  <wim@fluendo.com>
2273
2274         * gst/gstsegment.c:
2275         Added some more docs.
2276
2277         * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
2278         (gst_base_sink_reset_qos):
2279         Calculate more accurate rate values.
2280
2281 2006-04-09  Sebastien Moutte  <sebastien@moutte.net>
2282
2283         * gst/gst_private.h:
2284           add a new #ifdef to use __declspec(dllimport) only for
2285           other modules and not for gstreamer core
2286         * gst/gstbasesink.c: (gst_base_sink_perform_qos):
2287           use gst_guint64_to_gdouble for conversion
2288         * win32/common/libgstreamer.def:
2289           add new exported functions
2290         * win32/vs6/gst_inspect.dsp:
2291         * win32/vs6/gst_launch.dsp:
2292         * win32/vs6/libgstbase.dsp:
2293         * win32/vs6/libgstcontroller.dsp:
2294         * win32/vs6/libgstcoreelements.dsp:
2295         * win32/vs6/libgstdataprotocol.dsp:
2296         * win32/vs6/libgstnet.dsp:
2297           update project files
2298
2299 2006-04-08  Stefan Kost  <ensonic@users.sf.net>
2300
2301         * gst/gstbuffer.c: (gst_subbuffer_class_init):
2302         * gst/gstclock.c: (gst_clock_class_init):
2303         * gst/gstelement.c: (gst_element_class_init):
2304         * gst/gstindex.c: (gst_index_class_init):
2305         * gst/gstindexfactory.c: (gst_index_factory_class_init):
2306         * gst/gstobject.c: (gst_object_class_init),
2307         (gst_signal_object_class_init):
2308         * gst/gstpad.c: (gst_pad_class_init):
2309         * gst/gstpadtemplate.c: (gst_pad_template_class_init):
2310         * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
2311         * gst/gstregistry.c: (gst_registry_class_init):
2312         * gst/gstsystemclock.c: (gst_system_clock_class_init):
2313         * gst/gsttask.c: (gst_task_class_init):
2314         * gst/gstxml.c: (gst_xml_class_init):
2315         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
2316         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2317         (gst_base_src_loop):
2318         * libs/gst/controller/gstcontroller.c:/
2319         (_gst_controller_class_init):
2320         * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
2321         * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
2322         * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
2323         * tests/old/examples/plugins/example.c: (gst_example_class_init):
2324         * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
2325         Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2326
2327 2006-04-08  Tim-Philipp Müller  <tim at centricular dot net>
2328
2329         * gst/gstpad.c: (gst_pad_link):
2330           Must set peer pads before calling the link function, otherwise
2331           a task started from a link function might get a flow-not-linked
2332           result when trying to push because the other thread where the
2333           linking happens hasn't had a chance to set the peers yet. This
2334           might happen for example when a queue gets linked to a downstream
2335           element, as queue starts a streaming task when its source pad
2336           gets linked. Happens in real life when playing back flac/musepack
2337           files in playbin (#332390).
2338           
2339 2006-04-08  Stefan Kost  <ensonic@users.sf.net>
2340
2341         * gst/gstindex.h:
2342         * gst/gstxml.h:
2343         * libs/gst/base/gstadapter.h:
2344         * libs/gst/base/gstbasesink.h:
2345         * libs/gst/base/gstbasesrc.h:
2346         * libs/gst/base/gstbasetransform.h:
2347         * libs/gst/base/gstcollectpads.h:
2348         * libs/gst/base/gstpushsrc.h:
2349         Fix broken GObject macros
2350
2351 2006-04-07  Wim Taymans  <wim@fluendo.com>
2352
2353         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2354         Initialize start and stop times, thanks valgrind.
2355
2356 2006-04-07  Wim Taymans  <wim@fluendo.com>
2357
2358         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2359         Be a bit nicer to badly behaving upstream elements that expect
2360         us to deal with non TIME segments and timestamps (such as fakesrc
2361         in the testsuite).
2362
2363 2006-04-07  Wim Taymans  <wim@fluendo.com>
2364
2365         * gst/gstbus.c:
2366         Small documentation clarification about the signal watch.
2367
2368         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
2369         (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2370         (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2371         (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
2372         (gst_base_sink_get_position_last),
2373         (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
2374         Convert and store timestamps in stream time and running time, the
2375         raw timestamps are not usefull, also document this better.
2376         Use different window sizes for good and bad QoS observations so
2377         we react to badness a little quicker.
2378         Keep track of the amount of rendered and dropped buffers.
2379         Send QoS timestamps in running time.
2380
2381         * libs/gst/base/gstbasetransform.c:
2382         (gst_base_transform_sink_eventfunc),
2383         (gst_base_transform_handle_buffer):
2384         Compare QoS timestamps against running time.
2385
2386 2006-04-06  Tim-Philipp Müller  <tim at centricular dot net>
2387
2388         * gst/gstpad.c:
2389           Typo fixes in docs.
2390
2391 2006-04-06  Michael Smith  <msmith@fluendo.com>
2392
2393         * gst/gstpad.c: (gst_pad_set_property):
2394           Use g_value_get_object() instead of g_value_dup_gst_object(),
2395           to avoid double-reffing the pad template (which we then sink,
2396           so this worked previously if (and only if) the pad template
2397           was floating.
2398
2399         * gst/gstpadtemplate.c: (gst_pad_template_init),
2400         (gst_pad_template_pad_created):
2401           Never return floating references to pad templates, create
2402           them as initially-sunken.
2403
2404           Document an extra function (and make this stop sinking our
2405           pad template, since that is now guaranteed to do nothing,
2406           since we created it sunken).
2407
2408         * gst/gstghostpad.c:
2409           Fix docs typo.
2410
2411 2006-04-06  Tim-Philipp Müller  <tim at centricular dot net>
2412
2413         * gst/gstinfo.c: (__gst_in_valgrind):
2414           Add some newlines.
2415
2416         * plugins/elements/gsttypefindelement.c:
2417         (gst_type_find_element_chain):
2418           Don't leak buffer caps.
2419
2420 2006-04-06  Michael Smith  <msmith@fluendo.com>
2421
2422         * gst/parse/grammar.y:
2423           Fix a leak in parse-launch for any source-or-sink named element 
2424           references used.
2425
2426         * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
2427           Unref the pipeline if it exists after we've failed parsing.
2428
2429 2006-04-05  Michael Smith  <msmith@fluendo.com>
2430
2431         * gst/gstpipeline.c: (gst_pipeline_init):
2432           When we create a pipeline bus, initially create it in flushing mode.
2433           Fixes leaks in at least one test, and makes a new pipeline work the
2434           same as one that has gone to READY and then back to NULL.
2435
2436         * gst/gstelement.c:
2437           Typo fix in docs.
2438
2439 2006-04-05  Michael Smith  <msmith@fluendo.com>
2440
2441         * tests/check/gst/gstghostpad.c: (GST_START_TEST):
2442           Unref a pad we reffed.
2443         * tests/check/gst/gstutils.c: (GST_START_TEST):
2444           Unref bins
2445
2446 2006-04-05  Michael Smith  <msmith@fluendo.com>
2447
2448         * gst/gstquery.c: (gst_query_set_formats),
2449         (gst_query_set_formatsv):
2450           Fix leaking GValues in queries, as shown by valgrind/testsuite.
2451
2452 2006-04-05  Michael Smith  <msmith@fluendo.com>
2453
2454         * tests/check/generic/sinks.c: (GST_START_TEST):
2455           Fix a variety of memleaks in sinks check, which are only sometimes 
2456           shown by running the tests under valgrind (weird?).
2457
2458 2006-04-05  Jan Schmidt  <thaytan@mad.scientist.com>
2459
2460         * docs/version.entities.in:
2461           Fix the substituted entity name after thomas' changes on the
2462           weekend.
2463
2464 2006-04-05  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2465
2466         * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
2467         VALGRIND_PRINTF
2468         
2469 2006-04-05  Andy Wingo  <wingo@pobox.com>
2470
2471         * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
2472
2473         * libs/gst/base/gstbasetransform.c
2474         (gst_base_transform_sink_eventfunc): When resetting our segment on
2475         FLUSH_STOP, also update the flag saying we haven't seen a
2476         newsegment.
2477
2478 2006-04-04  Tim-Philipp Müller  <tim at centricular dot net>
2479
2480         Patch by: Paolo Borelli  <pborelli at katamail dot com>
2481
2482         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
2483         (gst_plugin_check_license):
2484           minor clean-ups: G_DEFINE_TYPE already takes care of the
2485           parent_class stuff, no need to do it twice. Mark array of
2486           license strings as constant. (#337103)
2487           
2488 2006-04-04  Michael Smith  <msmith@fluendo.com>
2489
2490         * tools/gst-inspect.c: (print_element_list):
2491           Free the right plugin list; fixes a memory leak.
2492
2493 2006-04-04  Tim-Philipp Müller  <tim at centricular dot net>
2494
2495         Patch by: Mark Nauwelaerts  <manauw at skynet dot be>
2496
2497         * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2498           Don't error out on empty buffers (#336945).
2499           
2500 2006-04-04  Jan Schmidt  <thaytan@mad.scientist.com>
2501
2502         * docs/libs/gstreamer-libs-sections.txt:
2503         * gst/gsttaglist.c:
2504         * libs/gst/base/gstbasesink.c:
2505         * libs/gst/base/gstbasesink.h:
2506         * libs/gst/base/gstbasesrc.c:
2507         * libs/gst/base/gstbasesrc.h:
2508           Documentation updates. Make BaseSink and BaseSrc docs contain the
2509           class structure so that people can actually see the prototypes for
2510           virtual functions they're supposed to be overriding.
2511
2512 2006-04-04  Tim-Philipp Müller  <tim at centricular dot net>
2513
2514         * plugins/elements/gsttypefindelement.c:
2515         (gst_type_find_element_chain):
2516           More debug info; when skipping typefinding, send cached
2517           events in all cases.
2518
2519 2006-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>
2520
2521         * configure.ac:
2522           use new AS_VERSION and AS_NANO macros
2523         * gst/gst-i18n-lib.h:
2524         * gst/gst.c:
2525         * gst/gsterror.c:
2526         * gst/gstversion.h.in:
2527         * win32/common/config.h:
2528         * win32/common/config.h.in:
2529           update accordingly
2530
2531 2006-03-31  Michael Smith  <msmith@fluendo.com>
2532
2533         * plugins/elements/gsttypefindelement.c:
2534         (gst_type_find_element_chain):
2535           Do not typefind content if the buffers already have caps.
2536           Neccesary for icydemux (#333657), and the right thing to do anyway.
2537
2538 2006-03-30  Wim Taymans  <wim@fluendo.com>
2539
2540         * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2541         (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
2542         (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
2543         (gst_base_sink_record_qos_observation),
2544         (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2545         (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2546         (gst_base_sink_change_state):
2547         More QoS measurements as described in the design doc.
2548         Get rid of ringbuffer with observations, running average is
2549         more simple and equally good.
2550         Calculates valid proportion now.
2551         Added beginning of flood measurement.
2552
2553 2006-03-29  Wim Taymans  <wim@fluendo.com>
2554
2555         * docs/design/part-qos.txt:
2556         * gst/gstclock.c:
2557         Small documentation updates and additions.
2558
2559 2006-03-29  Wim Taymans  <wim@fluendo.com>
2560
2561         * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2562         (gst_base_src_send_event), (gst_base_src_loop),
2563         (gst_base_src_change_state):
2564         Perform the EOS logic when we reach the segment stop position.
2565         Fix compilation on gcc4.1
2566
2567 2006-03-29  Wim Taymans  <wim@fluendo.com>
2568
2569         Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
2570
2571         * plugins/elements/gstqueue.c: (gst_queue_init),
2572         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2573         (gst_queue_set_property):
2574         * plugins/elements/gstqueue.h:
2575         In queue, when EOS is received, if minimum threshold > max_size -
2576         current_level, there is chance that queue blocks forever in conditional
2577         item del wait. This is because the queue is not emptied completely due
2578         to minimum threshold.  Here is another approach. Instead of setting
2579         cur_levels to max in EOS, just zero all minimum threshold levels. This
2580         should make sure that queue gives out all data. When going to READY
2581         (stop) state, just reset the original minimum threshold levels.
2582         Fixes #336336.
2583
2584 2006-03-29  Tim-Philipp Müller  <tim at centricular dot net>
2585
2586         * plugins/elements/gsttypefindelement.c: (stop_typefinding),
2587         (gst_type_find_element_handle_event),
2588         (gst_type_find_element_send_cached_events),
2589         (gst_type_find_element_change_state):
2590         * plugins/elements/gsttypefindelement.h:
2591           When typefinding is done in push mode, we should cache
2592           events we receive during typefinding instead of just
2593           dropping them (e.g. newsegment, custom events from
2594           dvdreadsrc etc.) and then send them out once we've
2595           determined the type of the stream (and decodebin
2596           has had a chance to plug in a decoder/demuxer).
2597           
2598 2006-03-27  Wim Taymans  <wim@fluendo.com>
2599
2600         * docs/design/part-qos.txt:
2601         First QoS ideas.
2602
2603 2006-03-27  Wim Taymans  <wim@fluendo.com>
2604
2605         Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
2606
2607         * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2608         (gst_base_src_send_event), (gst_base_src_change_state):
2609         Handle element seek correctly when we are streaming.
2610         Fixes #326998.
2611
2612 2006-03-24  Michael Smith  <msmith@fluendo.com>
2613
2614         * docs/faq/gst-uninstalled:
2615           Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
2616           allow you to correctly run intalled applications built against old 
2617           core, using plugins that require updated core (e.g. running
2618           installed totem against a full uninstalled gstreamer stack)
2619
2620 2006-03-24  Stefan Kost  <ensonic@users.sf.net>
2621
2622         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
2623         more debug details
2624
2625 2006-03-24  Wim Taymans  <wim@fluendo.com>
2626
2627         * docs/gst/gstreamer-sections.txt:
2628         Rearrange the order of the methods so that related methods
2629         are grouped together in sections.
2630
2631 2006-03-24  Stefan Kost  <ensonic@users.sf.net>
2632
2633         * gst/gstelement.c:
2634           Little clarification in the docs
2635
2636 2006-03-24  Stefan Kost  <ensonic@users.sf.net>
2637
2638         * docs/README:
2639         formatting fix
2640         * plugins/elements/gstidentity.c:
2641         * plugins/elements/gstqueue.c:
2642         * plugins/elements/gsttee.c:
2643         * plugins/elements/gsttypefindelement.c:
2644         GST_ELEMENT_DETAILS formatting
2645
2646 2006-03-24  Wim Taymans  <wim@fluendo.com>
2647
2648         * libs/gst/base/gstbasesink.h:
2649         Only add fields, not insert or we break ABI.
2650
2651 2006-03-23  Tim-Philipp Müller  <tim at centricular dot net>
2652
2653         * win32/common/libgstbase.def:
2654         * win32/common/libgstreamer.def:
2655           Update, add recently added functions.
2656
2657 2006-03-23  Tim-Philipp Müller  <tim at centricular dot net>
2658
2659         * docs/gst/gstreamer-sections.txt:
2660         * gst/gstutils.c: (gst_pad_query_peer_position),
2661         (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
2662         * gst/gstutils.h:
2663           API: add some new utility functions:
2664            - gst_pad_query_peer_position()
2665            - gst_pad_query_peer_duration()
2666            - gst_pad_query_peer_convert()
2667           
2668 2006-03-23  Wim Taymans  <wim@fluendo.com>
2669
2670         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
2671         (gst_base_sink_init), (gst_base_sink_finalize),
2672         (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
2673         (gst_base_sink_set_property), (gst_base_sink_get_property),
2674         (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
2675         (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2676         (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
2677         (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2678         (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2679         (gst_base_sink_preroll_object), (gst_base_sink_event),
2680         (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
2681         (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
2682         (gst_base_sink_query), (gst_base_sink_change_state):
2683         Decouple max-lateness and the fact that QoS messages are generated
2684         with a new property (qos).
2685         added API: GstBaseSink::async_play()
2686         Add vmethod so subclasses can be notified of ASYNC playing
2687         state changes.
2688         Collect timestamp start and stop to report better current
2689         position in EOS/PLAYING/PAUSED/READY/NULL.
2690         Refactor QoS/frame dropping and other measurements.
2691         API: GstBaseSrc::qos
2692         Fixes #326311
2693
2694         * libs/gst/base/gstbasesink.h:
2695         Added Private struct.
2696         API: gst_base_sink_set_qos_enabled()
2697         API: gst_base_sink_is_qos_enabled()
2698
2699 2006-03-23  Tim-Philipp Müller  <tim at centricular dot net>
2700
2701         * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
2702           If compiling against GLib-2.8 or newer, try to read the
2703           registry file using GMappedFile first before falling back
2704           to fopen() + fread() (#332151).
2705
2706 2006-03-22  Wim Taymans  <wim@fluendo.com>
2707
2708         * gst/gstinfo.c: (gst_debug_set_active),
2709         (gst_debug_category_set_threshold):
2710         Disable debugging unless explicitly activated.
2711         Fixes #335480.
2712
2713 2006-03-22  Wim Taymans  <wim@fluendo.com>
2714
2715         * gst/gstelement.c: (gst_element_set_locked_state),
2716         (gst_element_dispose):
2717         Cleanup the error case.
2718
2719         * gst/gstobject.c: (gst_object_dispose):
2720         print a critical when some object was disposed with
2721         a parent, also revive the object since it might
2722         crash the parent.
2723
2724 2006-03-22  Tim-Philipp Müller  <tim at centricular dot net>
2725
2726         * tools/gst-launch.1.in:
2727           Fix another typo.
2728
2729 2006-03-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2730
2731         * configure.ac:
2732         * tests/check/Makefile.am:
2733           disable some tests when we don't have a registry
2734         * tests/check/gst/gstutils.c: (gst_utils_suite):
2735           don't build the part that needs parsing
2736
2737 2006-03-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2738
2739         * gst/Makefile.am
2740         * tests/examples/Makefile.am:
2741           fix --disable-parse build
2742
2743 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2744
2745         * tools/gst-feedback.1.in:
2746           Fix typo: s/feeback/feedback/ (#133494).
2747
2748 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2749
2750         * tools/Makefile.am:
2751         * tools/gst-launch.1.in:
2752           Add FILES section and correct entry about GST_REGISTRY_PATH
2753           environment variable (#133495; #133494).
2754
2755 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2756
2757         * tools/Makefile.am:
2758         * tools/gst-md5sum.1.in:
2759         * tools/gst-md5sum.c:
2760           Remove gst-md5sum and man page (the md5sink element
2761           required was removed ages ago)
2762
2763 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2764
2765         * gst/gststructure.c: (gst_structure_id_set_value):
2766           Make sure that string fields in structures/taglists
2767           contain valid UTF-8 - we don't want to pass rubbish to
2768           applications because of a buggy plugin (cp. #334167).
2769
2770 2006-03-21  Edward Hervey  <edward@fluendo.com>
2771
2772         * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2773         (gst_bin_handle_message_func):
2774         * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
2775         * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
2776         (gst_element_set_bus_func):
2777         * gst/gstghostpad.c: (gst_proxy_pad_dispose):
2778         * gst/gstminiobject.c: (gst_value_set_mini_object),
2779         (gst_value_take_mini_object):
2780         * gst/gstpad.c: (gst_pad_set_pad_template):
2781         * gst/gstpipeline.c: (gst_pipeline_dispose),
2782         (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
2783         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
2784         (gst_collect_pads_chain):
2785         * libs/gst/net/gstnettimeprovider.c:
2786         (gst_net_time_provider_set_property):
2787         Series of fixes for dereferenced pointers that gcc 4.1 complains about.
2788         It's in fact all issues with gst_*object_replace().
2789
2790 2006-03-21  Tim-Philipp Müller  <tim at centricular dot net>
2791
2792         Patch by: Loïc Minier  <lool + gnome at via dot ecp dot fr>
2793         
2794         * pkgconfig/gstreamer-check-uninstalled.pc.in:
2795         * pkgconfig/gstreamer-check.pc.in:
2796           Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
2797
2798 2006-03-21  Edward Hervey  <edward@fluendo.com>
2799
2800         * gst/gstbuffer.h:
2801         * gst/gstevent.h:
2802         * gst/gstmessage.h:
2803         gst_[buffer|event|message]_ref() macros are replaced by a static
2804         inline functions because gcc-4.1 will about if the return value
2805         isn't used.
2806         * tests/check/gst/gstevent.c: (event_probe):
2807         gst_event_ref now has to be given a GstEvent* , fix check accordingly.
2808
2809 2006-03-20  Jan Schmidt  <thaytan@mad.scientist.com>
2810
2811         * gst/gstutils.h:
2812         Add G_UNLIKELY to our boilerplate to optimise the 'already registered
2813         the type' case. (Closes: #335195 for now). In the future, when we
2814         depend on GLib 2.10, we could also intern the type name using
2815         g_intern_static_string()
2816
2817 2006-03-20  Wim Taymans  <wim@fluendo.com>
2818
2819         * gst/gstbin.c: (gst_bin_handle_message_func),
2820         (bin_query_max_init), (bin_query_position_fold),
2821         (bin_query_position_done), (gst_bin_query):
2822         Position query should also take max of all streams.
2823
2824 2006-03-20  Wim Taymans  <wim@fluendo.com>
2825
2826         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
2827         (gst_fake_src_finalize):
2828         Fix leaks in fakesrc.
2829
2830         * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
2831         Fix leaks in the testcase.
2832
2833 2006-03-19  Sebastien Moutte  <sebastien@moutte.net>
2834
2835         * gst/gst_private.h:
2836           add win32 specific import decoration(__declspec(dllimport)) 
2837           for all extern GstDebugCategory * variables
2838         * win32/common/libgstbase.def:
2839         * win32/common/libgstcontroller.def:
2840         * win32/common/libgstreamer.def:
2841           Add some exports, remove empty lines
2842         * win32/common/libgstdataprotocol.def:
2843         * win32/common/libgstdataprotocol.dsp:
2844         * win32/common/libgstnet.def:
2845         * win32/common/libgstnet.dsp:
2846           new project files and exportation files added
2847         
2848 2006-03-19  Wim Taymans  <wim@fluendo.com>
2849
2850         * tests/check/libs/basesrc.c: (eos_event_counter):
2851         Use proper return value for probe.
2852
2853 2006-03-17  Wim Taymans  <wim@fluendo.com>
2854
2855         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
2856         (gst_pad_push):
2857         Don't leak buffers, caps and pads on negotiation errors.
2858
2859 2006-03-16  Stefan Kost  <ensonic@users.sf.net>
2860
2861         * docs/faq/cvs.xml:
2862         * docs/faq/dependencies.xml:
2863         * docs/faq/developing.xml:
2864         * docs/faq/faq.xml:
2865         * docs/faq/general.xml:
2866         * docs/faq/getting.xml:
2867         * docs/faq/legal.xml:
2868         * docs/faq/troubleshooting.xml:
2869         * docs/faq/using.xml:
2870         Faq review and update.
2871
2872 2006-03-16  Jan Schmidt  <thaytan@mad.scientist.com>
2873
2874         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
2875         (gst_pad_push):
2876         Don't pound the cpu to pieces by checking get_caps when accept_caps
2877         is called with the same caps as the pad already has.
2878         Use GST_DEBUG_OBJECT when outputting caps change information.
2879
2880 2006-03-15  Wim Taymans  <wim@fluendo.com>
2881
2882         * gst/gstclock.c: (gst_clock_class_init):
2883         Fix docs.
2884
2885 2006-03-15  Jan Schmidt  <thaytan@mad.scientist.com>
2886
2887         * gst/gstbuffer.h:
2888         Documentation fix.
2889
2890         * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
2891         (gst_pad_accept_caps), (gst_pad_configure_sink),
2892         (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
2893         Make the default acceptcaps behaviour be to check the requested 
2894         caps against the gst_pad_get_caps output. 
2895
2896         Ensure that gst_pad_accept_caps is used to check caps when a pad
2897         doesn't have a setcaps function, so that pads automatically refuse 
2898         caps that they don't allow in their pad template. (Fixes #332986)
2899
2900         When a buffer with attached caps is pushed, ensure that the source 
2901         pad receives those caps even if the element didn't call
2902         gst_pad_set_caps first.
2903
2904 2006-03-15  Wim Taymans  <wim@fluendo.com>
2905
2906         * libs/gst/base/gstadapter.c:
2907         Add some docs.
2908
2909 2006-03-15  Tim-Philipp Müller  <tim at centricular dot net>
2910
2911         * win32/common/libgstbase.def:
2912         * win32/common/libgstcontroller.def:
2913         * win32/common/libgstreamer.def:
2914           Add a whole bunch of missing functions (#334434).
2915
2916 2006-03-14  Wim Taymans  <wim@fluendo.com>
2917
2918         * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
2919         (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
2920         (gst_base_sink_do_sync), (gst_base_sink_do_qos):
2921         Better debug info when we receive a segment event.
2922         Reorganize a bit so we can pass the get_times() results around.
2923         Use the segment format when calculating the running time.
2924         Don't do QoS is sync is disabled or we have no clock or the
2925         element does not want us to sync to the clock.
2926         Don't drop buffers if QoS is disabled for now.
2927
2928 2006-03-14  Wim Taymans  <wim@fluendo.com>
2929
2930         * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
2931         Marked the stats property as unimplemented so people don't get
2932         wild ideas.
2933         Add debug message when regression goes wrong.
2934         Added some more docs.
2935
2936 2006-03-14  Wim Taymans  <wim@fluendo.com>
2937
2938         * gst/gstsegment.c: (gst_segment_to_stream_time):
2939         Return correct return type in case of errors.
2940
2941 2006-03-14  Wim Taymans  <wim@fluendo.com>
2942
2943         * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
2944           Don't segfault on invalid formats.
2945
2946 2006-03-14  Tim-Philipp Müller  <tim at centricular dot net>
2947
2948         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2949           Can't use gst_segment_to_running_time() when the segment
2950           is not in GST_TIME_FORMAT (like with filesink, for example).
2951           Stops flac encoding pipelines from spewing critical warnings
2952           at EOS (#331248).
2953           
2954 2006-03-14  Tim-Philipp Müller  <tim at centricular dot net>
2955
2956         * gst/gstpipeline.c: (gst_pipeline_class_init):
2957           Add 'Since: 0.10.5' to gtk-doc blurb for added property.
2958
2959         * plugins/elements/gsttypefindelement.c:
2960         (gst_type_find_element_handle_event):
2961           Don't try to typefind empty streams.
2962
2963 2006-03-14  Wim Taymans  <wim@fluendo.com>
2964
2965         * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
2966         (gst_base_sink_do_qos):
2967         Separate QoS calculation.
2968         Only drop buffers when lateness is bigger than the 
2969         duration of the buffer.
2970
2971 2006-03-13  Wim Taymans  <wim@fluendo.com>
2972
2973         * gst/gstpipeline.c: (gst_pipeline_set_property),
2974         (gst_pipeline_get_property), (do_pipeline_seek),
2975         (gst_pipeline_change_state), (gst_pipeline_set_delay),
2976         (gst_pipeline_get_delay):
2977         Don't deadlock when reading properties.
2978
2979 2006-03-13  Wim Taymans  <wim@fluendo.com>
2980
2981         * libs/gst/base/gstbasetransform.c:
2982         (gst_base_transform_class_init), (gst_base_transform_init),
2983         (gst_base_transform_sink_event),
2984         (gst_base_transform_sink_eventfunc),
2985         (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
2986         (gst_base_transform_handle_buffer), (gst_base_transform_chain),
2987         (gst_base_transform_set_property),
2988         (gst_base_transform_get_property),
2989         (gst_base_transform_change_state), (gst_base_transform_update_qos),
2990         (gst_base_transform_set_qos_enabled),
2991         (gst_base_transform_is_qos_enabled):
2992         * libs/gst/base/gstbasetransform.h:
2993         Make basetransform virtual method for src events too.
2994         Handle QOS in basetransform.
2995         API: gst_base_transform_update_qos()
2996         API: gst_base_transform_set_qos_enabled()
2997         API: gst_base_transform_is_qos_enabled()
2998
2999 2006-03-13  Wim Taymans  <wim@fluendo.com>
3000
3001         * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3002         (gst_base_sink_do_sync):
3003         Small cleanups.
3004         Use QOS debug category.
3005
3006 2006-03-13  Wim Taymans  <wim@fluendo.com>
3007
3008         * plugins/elements/gstqueue.c:
3009         Very small doc update.
3010
3011 2006-03-13  Wim Taymans  <wim@fluendo.com>
3012
3013         * gst/gst_private.h:
3014         * gst/gstinfo.c: (_gst_debug_init):
3015         Added QOS debug category
3016
3017 2006-03-13  Wim Taymans  <wim@fluendo.com>
3018
3019         * docs/gst/gstreamer-sections.txt:
3020         * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
3021         * gst/gstbin.h:
3022         * gst/gstbus.c: (gst_bus_class_init):
3023         * gst/gstbus.h:
3024         * gst/gstclock.c:
3025         * gst/gstelement.c: (gst_element_set_locked_state):
3026         * gst/gstsegment.c:
3027         Documentation updates.
3028
3029         * gst/gstpipeline.c: (gst_pipeline_get_type),
3030         (gst_pipeline_class_init), (gst_pipeline_init),
3031         (gst_pipeline_dispose), (gst_pipeline_set_property),
3032         (gst_pipeline_get_property), (do_pipeline_seek),
3033         (gst_pipeline_send_event), (gst_pipeline_change_state),
3034         (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
3035         (gst_pipeline_get_delay):
3036         * gst/gstpipeline.h:
3037         Added methods for setting the delay.
3038         API: gst_pipeline_set_delay()
3039         API: gst_pipeline_get_delay()
3040         Add pipeline debug category
3041         Various cleanups.
3042         Updated docs.
3043         Don't reset stream time when seek failed.
3044
3045 2006-03-13  Wim Taymans  <wim@fluendo.com>
3046
3047         * docs/design/draft-klass.txt:
3048         * docs/design/part-clocks.txt:
3049         * docs/design/part-events.txt:
3050         * docs/design/part-gstbin.txt:
3051         * docs/design/part-gstpipeline.txt:
3052         * docs/design/part-messages.txt:
3053         * docs/design/part-negotiation.txt:
3054         * docs/design/part-overview.txt:
3055         * docs/design/part-preroll.txt:
3056         * docs/design/part-seeking.txt:
3057         * docs/design/part-states.txt:
3058         * docs/design/part-streams.txt:
3059         Documentation updates.
3060
3061 2006-03-12  Julien MOUTTE  <julien@moutte.net>
3062
3063         * gst/gsttaglist.c: Fix rubbish docs that are encouraging
3064         us to leak strings...
3065
3066 2006-03-12  Thomas Vander Stichele  <thomas at apestaart dot org>
3067
3068         * libs/gst/net/gstnettimeprovider.c:
3069           fix docs
3070         * win32/common/config.h:
3071           update
3072
3073 2006-03-12  Tim-Philipp Müller  <tim at centricular dot net>
3074
3075         Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
3076
3077         * configure.ac:
3078           Don't check for libgnomeui (leftover from old examples
3079           that aren't built or disted any longer) (#334303).
3080           
3081 2006-03-11  Tim-Philipp Müller  <tim at centricular dot net>
3082
3083         * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
3084         * plugins/elements/gstfilesink.c: (gst_file_sink_render):
3085           Emit RESOURCE_NO_SPACE_LEFT error here as well when
3086           there's no space left on the device.
3087
3088 2006-03-10  Tim-Philipp Müller  <tim at centricular dot net>
3089
3090         * gst/gstclock.h:
3091           Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
3092           to cast the input to GstClockTime before comparing with
3093           another GstClockTime value.
3094
3095 2006-03-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3096
3097         * configure.ac:
3098           back to trunk
3099
3100 === release 0.10.4 ===
3101
3102 2006-03-10  Thomas Vander Stichele <thomas at apestaart dot org>
3103
3104         * configure.ac:
3105           releasing 0.10.4, "Light"
3106
3107 2006-03-10  Michael Smith  <msmith@fluendo.com>
3108
3109         * libs/gst/dataprotocol/dataprotocol.c:
3110           Fix docs for dataprocotol to not get the return types completely
3111           wrong for a few functions.
3112
3113 2006-03-09  Tim-Philipp Müller  <tim at centricular dot net>
3114
3115         * docs/gst/gstreamer-sections.txt:
3116         * gst/gstpipeline.c: (gst_pipeline_class_init),
3117         (gst_pipeline_init), (gst_pipeline_set_property),
3118         (gst_pipeline_get_property), (gst_pipeline_change_state),
3119         (gst_pipeline_set_auto_flush_bus),
3120         (gst_pipeline_get_auto_flush_bus):
3121         * gst/gstpipeline.h:
3122           Add new API: gst_pipeline_set_auto_flush_bus() and
3123           gst_pipeline_get_auto_flush_bus() to disable automatic
3124           flushing of the pipeline's GstBus when going from READY
3125           to NULL state (#332045).
3126
3127 2006-03-09  Tim-Philipp Müller  <tim at centricular dot net>
3128
3129         * docs/gst/gstreamer-sections.txt:
3130         * gst/gsturi.c: (gst_uri_has_protocol):
3131         * gst/gsturi.h:
3132            Add new API: gst_uri_has_protocol() (#333779).
3133
3134 2006-03-09  Wim Taymans  <wim@fluendo.com>
3135
3136         * gst/gstclock.c: (gst_clock_entry_new),
3137         (gst_clock_id_compare_func), (gst_clock_id_wait),
3138         (gst_clock_id_wait_async), (gst_clock_id_unschedule),
3139         (gst_clock_init), (gst_clock_get_internal_time),
3140         (gst_clock_set_master), (do_linear_regression),
3141         (gst_clock_add_observation), (gst_clock_set_property):
3142         * gst/gstclock.h:
3143         Review docs.
3144         Small cleanups.
3145         Fix a possible segfault when the window-size is made smaller.
3146         Calculate jitter before performing the clock wait. Ideally
3147         the clock implementation should calculate jitter but we need
3148         API breakage for that.
3149
3150         * gst/gstsystemclock.c: (gst_system_clock_init):
3151         Docs review.
3152         
3153         * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3154         Remove leftover else
3155
3156         * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
3157         (gst_systemclock_suite):
3158         Added check to test GST_CLOCK_DIFF.
3159
3160 2006-03-09  Tim-Philipp Müller  <tim at centricular dot net>
3161
3162         * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
3163         (gst_type_find_helper_get_range):
3164           If we are provided with the size, we should implement
3165           GstTypeFind::get_length, so that typefind functions who
3166           want to can actually peek at the middle of a file.
3167
3168 2006-03-08  Tim-Philipp Müller  <tim at centricular dot net>
3169
3170         * docs/manual/advanced-dataaccess.xml:
3171           Add some very very basic error checking.
3172
3173         * docs/pwg/appendix-checklist.xml:
3174           Some updates to the list of things to check when writing an element.
3175
3176 2006-03-08  Wim Taymans  <wim@fluendo.com>
3177
3178         * docs/design/part-element-transform.txt:
3179         Added some docs about the design of tranform elements.
3180
3181         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
3182         (gst_base_src_loop), (gst_base_src_change_state):
3183         Mark buffers with the DISCONT flag.
3184
3185 2006-03-08  Michael Smith  <msmith@fluendo.com>
3186
3187         * gst/gstregistry.h:
3188         * gst/gstregistryxml.c: (gst_registry_save),
3189         (gst_registry_save_escaped), (gst_registry_xml_save_caps),
3190         (gst_registry_xml_save_pad_template),
3191         (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
3192         (gst_registry_xml_write_cache):
3193           Rewrite registry-saving to avoid race conditions and check for
3194           failed writes.
3195
3196 2006-03-08  Wim Taymans  <wim@fluendo.com>
3197
3198         * libs/gst/base/gstbasetransform.c:
3199         (gst_base_transform_transform_caps),
3200         (gst_base_transform_transform_size),
3201         (gst_base_transform_prepare_output_buffer),
3202         (gst_base_transform_get_unit_size),
3203         (gst_base_transform_buffer_alloc),
3204         (gst_base_transform_handle_buffer),
3205         (gst_base_transform_change_state):
3206         Cleanups, separate normal flow from errors, add sensible
3207         DEBUG lines.
3208         Don't try to renegotiate when allocating an output buffer.
3209         Also copy DISCONT buffer flag when copying a buffer.
3210         Reset the transform after we finish streaming, not during.
3211
3212 2006-03-08  Wim Taymans  <wim@fluendo.com>
3213
3214         * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3215         Use last buffer timestamp in qos message.
3216
3217 2006-03-07  Wim Taymans  <wim@fluendo.com>
3218
3219         Patch by: Christophe Fergeau
3220
3221         * docs/pwg/advanced-tagging.xml:
3222         * docs/pwg/building-pads.xml:
3223           fixes #333416
3224
3225 2006-03-07  Wim Taymans  <wim@fluendo.com>
3226
3227         * docs/libs/gstreamer-libs-sections.txt:
3228         Added basesink new methods.
3229
3230         * gst/gstevent.c:
3231         * gst/gstevent.h:
3232         Docs updates. Flesh out the QoS docs.
3233
3234         * libs/gst/base/gstadapter.c:
3235         Small doc clarification about ownership and flushing.
3236
3237         * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
3238         (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
3239         (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
3240         (gst_base_sink_get_property), (gst_base_sink_do_sync):
3241         * libs/gst/base/gstbasesink.h:
3242         API additions: 
3243         Added new methods to allow subclass to control max-lateness 
3244         and sync.
3245         Generate very basic QoS events based on last sync observation.
3246         Updated docs, fix typo, added some QoS blurb.
3247
3248         * libs/gst/base/gstbasesrc.c:
3249         Remove obsolete _get_state() calls from docs.
3250
3251 2006-03-07  Wim Taymans  <wim@fluendo.com>
3252
3253         * docs/libs/gstreamer-libs-sections.txt:
3254         * libs/gst/base/gstbasetransform.h:
3255         API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
3256         Fix docs for GstBaseSrc.
3257
3258 2006-03-07  Wim Taymans  <wim@fluendo.com>
3259
3260         * docs/gst/gstreamer-sections.txt:
3261         * gst/gstbuffer.h:
3262         * gst/gstvalue.c:
3263         * libs/gst/base/gstbasetransform.h:
3264         Small documentation fixes.
3265
3266 2006-03-07  Tim-Philipp Müller  <tim at centricular dot net>
3267
3268         * gst/gstvalue.c:
3269           Document thread-unsafety of gst_value_register_foo_func()
3270           when used at the same time as gst_value_foo() (#322628).
3271
3272 2006-03-07  Tim-Philipp Müller  <tim at centricular dot net>
3273
3274         * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
3275         (gst_push_src_check_get_range):
3276           Push sources don't support pull mode by default.
3277
3278 2006-03-06  Tim-Philipp Müller  <tim at centricular dot net>
3279
3280         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3281         (gst_base_src_init), (gst_base_src_pad_check_get_range),
3282         (gst_base_src_default_check_get_range):
3283         * libs/gst/base/gstbasesrc.h:
3284           API addition:  Add ::check_get_range() vfunc to GstBaseSrc (#332611),
3285           provide default implementation, and rename
3286           gst_base_src_check_get_range() to
3287           gst_base_src_pad_check_get_range() for clarity.
3288
3289 2006-03-06  Wim Taymans  <wim@fluendo.com>
3290
3291         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
3292         Make property overridable.
3293
3294 2006-03-06  Wim Taymans  <wim@fluendo.com>
3295
3296         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3297         (gst_base_sink_init), (gst_base_sink_set_property),
3298         (gst_base_sink_get_property), (gst_base_sink_do_sync):
3299         * libs/gst/base/gstbasesink.h:
3300         API addition: Make max-lateness a property.
3301
3302 2006-03-06  Wim Taymans  <wim@fluendo.com>
3303
3304         * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
3305         (gst_base_sink_do_sync), (gst_base_sink_render_object):
3306         Don't ever draw a frame that is >10ms late.
3307
3308 2006-03-06  Michael Smith  <msmith@fluendo.com>
3309
3310         * gst/gstmessage.c: (_gst_message_copy):
3311           When copying a message, set the parent_refcount of the enclosed
3312           structure to point at the copy, not the original message.
3313
3314 2006-03-06  Tim-Philipp Müller  <tim at centricular dot net>
3315
3316         Patch by: Christophe Fergeau
3317
3318         * gst/gstutils.h:
3319           Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
3320           usable in c++ code (#333417)
3321
3322 2006-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3323
3324         * gst/gstclock.h:
3325           Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
3326
3327 2006-03-05  Tim-Philipp Müller  <tim at centricular dot net>
3328
3329         * libs/gst/base/gstbasetransform.c:
3330         (gst_base_transform_transform_caps):
3331           Make sure caps are writable before passing them to
3332           gst_caps_append().
3333
3334 2006-03-04  Tim-Philipp Müller  <tim at centricular dot net>
3335
3336         * gst/gsterror.h:
3337           Fix some minor docs errors.
3338
3339 2006-03-04  Tim-Philipp Müller  <tim at centricular dot net>
3340
3341           Patch by: Ross Burton <ross at burtonini dot com>
3342
3343         * gst/gsterror.c: (_gst_resource_errors_init):
3344         * gst/gsterror.h:
3345           Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
3346
3347 2006-03-03  Jan Schmidt  <thaytan@mad.scientist.com>
3348
3349         * gst/gst.c:
3350         Add a check and output a g_warning when GStreamer is built
3351         against GLib 2.6 but running against 2.8 or higher, and vice 
3352         versa. (Closes: #323542)
3353
3354 2006-03-03  Jan Schmidt  <thaytan@mad.scientist.com>
3355
3356         * gst/parse/parse.l:
3357           Commit patch for parse_launch syntax from #331255. Removes 
3358           support for quoted strings and mimetypes when writing filtered 
3359           caps. See the bug report for more details - I'm pretty sure this
3360           obscure feature is not in use by _anyone_ anywhere.
3361
3362           With this simple change, the size of the gstreamer.so here 
3363           drops from 2193KB to 1565KB.
3364
3365 2006-03-03  Tim-Philipp Müller  <tim at centricular dot net>
3366
3367         * plugins/elements/gsttypefindelement.h:
3368         * plugins/elements/gsttypefindelement.c:
3369         (gst_type_find_element_src_event), (start_typefinding),
3370         (stop_typefinding), (gst_type_find_element_handle_event),
3371         (gst_type_find_element_chain),
3372         (gst_type_find_element_chain_do_typefinding):
3373           Use gst_type_find_helper_for_buffer() for chain-based
3374           typefinding.
3375
3376 2006-03-03  Tim-Philipp Müller  <tim at centricular dot net>
3377
3378         * plugins/elements/gsttypefindelement.c:
3379         (gst_type_find_element_class_init),
3380         (gst_type_find_element_set_property),
3381         (gst_type_find_element_get_property):
3382           Deprecate "maximum" property (not only was it only taken into
3383           account for typefinding in push-mode anyway, it also was never
3384           actually possible to set it in the first place because the
3385           property was registered with the numeric property ID for the
3386           "minimum" property). Register "maximum" property correctly,
3387           for the sake of future copy'n'pasters. Remove some cruft
3388           from property get/set functions.
3389
3390 2006-03-03  Tim-Philipp Müller  <tim at centricular dot net>
3391
3392         * plugins/elements/gsttypefindelement.c:
3393         (gst_type_find_element_activate):
3394           Use gst_type_find_helper_get_range() here, so we
3395           can honour the "minimum" property and also emit
3396           the signal with the correct probability of the found caps.
3397
3398 2006-03-02  Tim-Philipp Müller  <tim at centricular dot net>
3399
3400         * docs/libs/gstreamer-libs-sections.txt:
3401         * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
3402         (helper_find_suggest), (gst_type_find_helper_get_range),
3403         (gst_type_find_helper):
3404         * libs/gst/base/gsttypefindhelper.h:
3405           New API: gst_type_find_helper_get_range() (#333042).
3406
3407 2006-03-02  Michael Smith  <msmith@fluendo.com>
3408
3409         * gst/gstregistryxml.c: (load_feature):
3410           Asserting on a failure to read part of the registry is Not Cool.
3411           Just log a warning and return NULL (which is already handled)
3412
3413 2006-02-28  Sebastien Moutte  <sebastien@moutte.net>
3414
3415         * win32/common/libgstbase.def:
3416           added export of gst_type_find_helper_for_buffer
3417         * win32/common/libgstbase.def:
3418           added some exports : gst_bin_iterate_elements, gst_iterator_resync,
3419           gst_ghost_pad_get_target
3420
3421 2006-02-28  Wim Taymans  <wim@fluendo.com>
3422
3423         * docs/design/draft-klass.txt:
3424         We use Filter now.
3425         Added Connector to mark elements that are only used to
3426         allow pipeline connections.
3427         Moved Debug to extra feature since most of them are 
3428         functionally something else.
3429
3430 2006-02-28  Wim Taymans  <wim@fluendo.com>
3431
3432         * docs/design/draft-klass.txt:
3433         Some updates and clarifications.
3434
3435 2006-02-28  Wim Taymans  <wim@fluendo.com>
3436
3437         * docs/design/draft-klass.txt:
3438         Proposal for klass field values.
3439
3440         * docs/design/part-streams.txt:
3441         Start of a doc describing stream anatomy.
3442
3443 2006-02-28  Wim Taymans  <wim@fluendo.com>
3444
3445         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
3446         Help the compiler a bit with type registration.
3447         Use existing forward cod path instead of duplicating it when 
3448         handling a message.
3449         
3450         * gst/gstbus.c: (gst_bus_get_type):
3451         * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
3452         * gst/gstchildproxy.c: (gst_child_proxy_get_type):
3453         * gst/gstclock.c: (gst_clock_get_type):
3454         * gst/gstelement.c: (gst_element_get_type),
3455         * gst/gstelementfactory.c: (gst_element_factory_get_type):
3456         * gst/gstindexfactory.c: (gst_index_factory_get_type):
3457         * gst/gstminiobject.c: (gst_mini_object_get_type):
3458         * gst/gstpad.c: (gst_pad_get_type):
3459         * gst/gstsegment.c: (gst_segment_get_type):
3460         * gst/gststructure.c: (gst_structure_get_type):
3461         * gst/gstsystemclock.c: (gst_system_clock_get_type):
3462         * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
3463         * gst/gstvalue.c:
3464         Help compiler with type registration.
3465
3466         * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
3467         Small doc update.
3468
3469 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3470
3471         * plugins/elements/gsttypefindelement.c:
3472         (gst_type_find_element_handle_event):
3473           When we get an EOS event and have not found a type yet
3474           (most likely because we had not yet accumulated
3475           TYPE_FIND_MIN_SIZE of data yet), try to determine the
3476           type given the data we have so far. Fixes typefinding
3477           for very short streams again, most notably quicktime
3478           redirections as used on Apple's trailer site (#331701).
3479
3480 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3481
3482         * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
3483         (gst_type_find_helper):
3484           Try typefinding factories with the highest rank first.
3485
3486 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3487
3488         * docs/libs/gstreamer-libs-docs.sgml:
3489         * docs/libs/gstreamer-libs-sections.txt:
3490         * libs/gst/base/gsttypefindhelper.c:
3491           Add section for typefind helper and add documentation
3492           for the old and the new function.
3493
3494 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3495
3496         * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
3497         (buf_helper_find_suggest), (type_find_factory_rank_cmp),
3498         (gst_type_find_helper_for_buffer):
3499         * libs/gst/base/gsttypefindhelper.h:
3500           New API: gst_type_find_helper_for_buffer() (#332723).
3501           
3502 2006-02-27  Michael Smith  <msmith@fluendo.com>
3503
3504         Patch by: Loïc Minier
3505
3506         * configure.ac:
3507         * docs/Makefile.am:
3508         * docs/slides/Makefile.am:
3509           prevent CVS directories getting disted.
3510
3511 2006-02-27  Tim-Philipp Müller  <tim at centricular dot net>
3512
3513         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
3514           Use the REFCOUNTING category for caps refcounting.
3515           
3516 2006-02-26  Tim-Philipp Müller  <tim at centricular dot net>
3517
3518         * plugins/elements/gsttypefindelement.c: (stop_typefinding):
3519           This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
3520
3521 2006-02-26  Tim-Philipp Müller  <tim at centricular dot net>
3522
3523         * plugins/elements/gsttypefindelement.c:
3524         (gst_type_find_element_activate):
3525           Use gst_pad_check_pull_range() before _activate_pull()
3526           to avoid unnecessary open/close (see #331690).
3527
3528 2006-02-24  Tim-Philipp Müller  <tim at centricular dot net>
3529
3530         * gst/gstutils.c:
3531           Docs enhancement: make it crystal clear what the
3532           gst_pad_add_*_probe() callbacks should look like.
3533
3534 2006-02-24  Tim-Philipp Müller  <tim at centricular dot net>
3535
3536         * libs/gst/base/gstbasesrc.c:
3537           Document how applications can stop recording from
3538           live sources (see #330996).
3539
3540 2006-02-23  Tim-Philipp Müller  <tim at centricular dot net>
3541
3542         * tests/check/Makefile.am:
3543         * tests/check/libs/basesrc.c: (eos_event_counter),
3544         (basesrc_eos_events_pull), (basesrc_eos_events_push),
3545         (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
3546         (gst_basesrc_suite), (main):
3547           ... and add some tests for the base source EOS stuff.
3548
3549 2006-02-23  Tim-Philipp Müller  <tim at centricular dot net>
3550
3551         * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
3552           Test case originally showed the problem fixed below,
3553           but was then amended. Add checks back at the place
3554           where they used to be.
3555
3556 2006-02-23  Tim-Philipp Müller  <tim at centricular dot net>
3557
3558         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3559         (gst_base_src_init), (gst_base_src_loop),
3560         (gst_base_src_activate_push), (gst_base_src_activate_pull),
3561         (gst_base_src_change_state):
3562         * libs/gst/base/gstbasesrc.h:
3563           Don't unconditionally send EOS when going from PAUSED to
3564           READY state, esp. make sure we don't send two EOS events
3565           in some cases (e.g. one when reaching EOS and one when
3566           going from PAUSED to READY). Also, we don't want to send
3567           EOS events when operating in pull mode. However, we do
3568           want to send an EOS event when shutting down a live
3569           source explicitly, for example (fixes #330996).
3570           
3571 2006-02-23  Tim-Philipp Müller  <tim at centricular dot net>
3572
3573         * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3574           Update src->read_position after a seek when not using mmap.
3575           Fixes #332277, patch by: Renchi Raju <renchi gmail com>
3576
3577 2006-02-21  Jan Schmidt  <thaytan@mad.scientist.com>
3578
3579         * gst/Makefile.am:
3580         * gst/gstparse.h:
3581         * gst/gstutils.c:
3582         * gst/gstutils.h:
3583         Make things work with --disable-parse as they do with 
3584         --disable-load-save - the symbols involved disappear, but the
3585         header is still installed and GST_DISABLE_PARSE is included via
3586         gstconfig.h
3587
3588 2006-02-20  Julien MOUTTE  <julien@moutte.net>
3589
3590         * libs/gst/base/gstbasetransform.c:
3591         (gst_base_transform_change_state): Fix a stupid bug. I was 
3592         sure I compiled that.
3593
3594 2006-02-20  Julien MOUTTE  <julien@moutte.net>
3595
3596         * gst/gstpad.c: (gst_pad_set_blocked_async):
3597         * gst/gstutils.c: (gst_pad_add_data_probe),
3598         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3599         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3600         (gst_pad_remove_buffer_probe): Make those function act on the
3601         ghostpad target when it's a ghostpad. (Closes #331727)
3602
3603 2006-02-20  Julien MOUTTE  <julien@moutte.net>
3604
3605         * libs/gst/base/gstbasetransform.c:
3606         (gst_base_transform_change_state): Make basetransform reusable.
3607         (Closes #331898)
3608
3609 2006-02-20  Jan Schmidt  <thaytan@mad.scientist.com>
3610
3611         * docs/random/release:
3612         Move the current documentation of how to do a release to the top
3613         of the file.
3614
3615         * gst/gstbin.c: (gst_bin_class_init),
3616         (gst_bin_handle_message_func):
3617         Allow multiple state-recalculation threads. (Closes #328873)
3618
3619 2006-02-19  Julien MOUTTE  <julien@moutte.net>
3620
3621         * gst/gstinfo.h: Add GST_STR_NULL to the second string.
3622         * gst/gstpad.c: (gst_pad_set_event_function),
3623         (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3624         (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
3625         2 strings. You can't use the STR_NULL macro on that.
3626
3627 2006-02-19  Sebastien Moutte <sebastien@moutte.net>
3628
3629         * gst/gstpad.c: (gst_pad_set_event_function),
3630         (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3631         (gst_pad_set_getcaps_function)
3632         * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
3633           Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
3634           So now, we can use --gst-debug-level=5 on Windows
3635         * win32/common/libgstcontroller.def:
3636           Added export of gst_controller_init
3637         * win32/vs6/libgstcontroller.dsp:
3638           Fixed Release post build configuration
3639
3640 2006-02-17  Wim Taymans  <wim@fluendo.com>
3641
3642         * tests/check/gst/gstquery.c: (GST_START_TEST):
3643         Added another check.
3644
3645 2006-02-15  Tim-Philipp Müller  <tim at centricular dot net>
3646
3647         * plugins/elements/gsttypefindelement.c: (find_peek):
3648           We can do peeks at non-zero offsets, as long as they
3649           fall within the buffer we have.
3650
3651 2006-02-15  Jan Schmidt  <thaytan@mad.scientist.com>
3652
3653         * tests/check/Makefile.am:
3654         * tests/check/pipelines/parse-launch.c: (setup_pipeline),
3655         (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
3656         (parse_suite), (main):
3657           Add testsuite for parse launch syntax
3658
3659 2006-02-14  Tim-Philipp Müller  <tim at centricular dot net>
3660
3661         * plugins/elements/gsttypefindelement.c:
3662         (gst_type_find_element_chain):
3663           When typefinding is unsuccessful in the chain function, don't
3664           error out immediately. Only error out with NO_CAPS_FOUND if
3665           the amount of data is at least MAX_TYPEFIND_SIZE bytes,
3666           otherwise simply wait for more data so we can try typefinding
3667           again with more data later. Also, don't attempt to typefind
3668           if we have less than MIN_TYPEFIND_SIZE data available. Overall,
3669           this should improve typefinding from network sources where the
3670           size of the first buffer can be somewhat random.
3671
3672 2006-02-14  Wim Taymans  <wim@fluendo.com>
3673
3674         * docs/gst/gstreamer-sections.txt:
3675         * gst/gstpadtemplate.c:
3676         * gst/gstpadtemplate.h:
3677         Fix padtemplate docs, fixes #328805.
3678
3679 2006-02-14  Wim Taymans  <wim@fluendo.com>
3680
3681         * tools/gst-launch.c: (main):
3682         NO_PREROLL is not an ERROR so don't send confusing messages
3683         to the user.
3684
3685 2006-02-14  Wim Taymans  <wim@fluendo.com>
3686
3687         Patch by: Torsten Schoenfeld
3688
3689         * gst/gstregistry.c: (gst_registry_get_default),
3690         (_gst_registry_cleanup):
3691         Protect default registry with lock and ref/sink it.
3692         Fixes #324818
3693
3694 2006-02-14  Wim Taymans  <wim@fluendo.com>
3695
3696         * gst/gstbuffer.c:
3697         * gst/gstquery.c: (gst_query_list_add_format),
3698         (gst_query_set_formatsv), (gst_query_parse_formats_length),
3699         (gst_query_parse_formats_nth):
3700         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
3701         Docs fixes.
3702
3703 2006-02-14  Wim Taymans  <wim@fluendo.com>
3704
3705         * docs/gst/gstreamer-sections.txt:
3706         Reworked query docs.
3707
3708         * gst/gstquery.c: (gst_query_new_formats),
3709         (gst_query_list_add_format), (gst_query_set_formats),
3710         (gst_query_set_formatsv), (gst_query_parse_formats_length),
3711         (gst_query_parse_formats_nth):
3712         * gst/gstquery.h:
3713         Flesh out formats query, added some new methods.
3714         Fix part of #324398.
3715
3716         * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
3717         Added query creation tests.
3718
3719 2006-02-14  Jan Schmidt  <thaytan@mad.scientist.com>
3720
3721         * gst/gstpad.c: (fixate_value):
3722         Add a default fixation for fraction lists.
3723
3724 2006-02-13  Wim Taymans  <wim@fluendo.com>
3725
3726         * gst/gsttask.c: (gst_task_init), (gst_task_func),
3727         (gst_task_set_lock), (gst_task_start), (gst_task_pause),
3728         (gst_task_join):
3729         * gst/gsttask.h:
3730         Detect and warn for obvious deadlocks. fixes #320340
3731         Fix error case where lock was not released.
3732
3733         * tests/check/Makefile.am:
3734         * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
3735         (task_func), (gst_element_suite), (main):
3736         Add task check.
3737
3738 2006-02-13  Wim Taymans  <wim@fluendo.com>
3739
3740         * docs/gst/gstreamer-sections.txt:
3741         * gst/gstbus.c:
3742         Add new functions to docs.
3743
3744 2006-02-13  Wim Taymans  <wim@fluendo.com>
3745
3746         * docs/design/part-TODO.txt:
3747         Updated TODO list, basesrc supports seeking to non-bytes
3748         formats.
3749
3750         * docs/design/part-element-sink.txt:
3751         Update docs.
3752
3753         * gst/gstbin.c: (bin_replace_message),
3754         (gst_bin_handle_message_func):
3755         * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
3756         * gst/gstevent.c: (gst_event_finalize):
3757         * gst/gstpad.c: (gst_pad_event_default_dispatch),
3758         (gst_pad_send_event):
3759         Use shiny new _TYPE_NAME macros.
3760
3761         * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
3762         Move debug statement up.
3763
3764         * gst/gstelement.c: (gst_element_set_locked_state):
3765         Add some debugging.
3766
3767 2006-02-13  Tim-Philipp Müller  <tim at centricular dot net>
3768
3769         * docs/gst/gstreamer-sections.txt:
3770         * gst/gstmessage.h:
3771         * gst/gstquery.h:
3772           New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
3773           macros (#330906). Also, document the already existing
3774           GST_QUERY_TYPE macro.
3775
3776 2006-02-13  Wim Taymans  <wim@fluendo.com>
3777
3778         * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
3779         (event_probe), (GST_START_TEST):
3780         Only events up to the pipeline EOS are counted, there are
3781         some more when going to NULL currently which we don't care
3782         about for now.
3783
3784 2006-02-13  Wim Taymans  <wim@fluendo.com>
3785
3786         * gst/gstpad.c: (gst_pad_send_event):
3787         Correctly check flushing and emit probes. fixes #330125
3788
3789 2006-02-10  Andy Wingo  <wingo@pobox.com>
3790
3791         * gst/gstbus.c (gst_bus_class_init): Declare our private data
3792         structure.
3793         (gst_bus_init): Cache the location of the private data in the
3794         instance structure.
3795         (gst_bus_enable_sync_message_emission) 
3796         (gst_bus_disable_sync_message_emission): Implement new public
3797         functions.
3798         (gst_bus_post): Emit the sync-message signal if the user asked for
3799         it. Fixes #330684.
3800
3801         * gst/gstbus.h (GstBus): Use a padding pointer to cache the
3802         location of the bus-private structure.
3803         (gst_bus_enable_sync_message_emission)
3804         (gst_bus_disable_sync_message_emission): API addition
3805
3806 2006-02-10  Jan Schmidt  <thaytan@mad.scientist.com>
3807
3808         Patch by: Vincent Torri
3809
3810         * docs/pwg/building-boiler.xml:
3811         PWG patch from #326800
3812
3813 2006-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3814
3815         * configure.ac:
3816         * docs/Makefile.am:
3817         * docs/design/Makefile.am:
3818           Dist design docs.
3819
3820 2006-02-08  Jan Schmidt  <thaytan@mad.scientist.com>
3821
3822         * configure.ac:
3823           back to CVS
3824
3825 === release 0.10.3 ===
3826
3827 2006-02-08  Jan Schmidt <thaytan@mad.scientist.com>
3828
3829         * configure.ac:
3830           releasing 0.10.3, "Like a virgin"
3831
3832 2006-02-08  Jan Schmidt  <thaytan@mad.scientist.com>
3833
3834         * configure.ac:
3835           2nd prerelease of 0.10.3
3836           Bump libtool versioning.
3837
3838 2006-02-07  Andy Wingo  <wingo@pobox.com>
3839
3840         * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
3841         update last_stop if we're in TIME format and the timestamp is
3842         valid.
3843
3844         * libs/gst/base/gstcollectpads.c (gst_collect_pads_event) 
3845         * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc): 
3846         * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
3847         If we get a new newsegment with a different format, adapt
3848         accordingly.
3849
3850         * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
3851         of 0. Not a problem, really.
3852
3853         * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
3854         warn if sync=true.
3855
3856 2006-02-06  Jan Schmidt  <thaytan@mad.scientist.com>
3857
3858         * configure.ac:
3859           Prelease of 0.10.3
3860
3861 2006-02-06  Sebastien Moutte  <sebastien@moutte.net>
3862
3863         * win32/vs7:
3864           project files updated to the default vs7 configuration
3865         * win32/common/libgstbase.def:
3866         * win32/common/libgstreamer.def:
3867           added new symbols,
3868           removed empty lines,
3869           sorted all exported symbols alphabetically
3870         * win32/common/dirent.c:
3871         * win32/common/dirent.h:
3872         * win32/common/gchar.h:
3873           use windows line end.
3874           
3875 2006-02-06  Tim-Philipp Müller  <tim at centricular dot net>
3876
3877         * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
3878           Send EOS event when stopping.
3879
3880 2006-02-06  Tim-Philipp Müller  <tim at centricular dot net>
3881
3882         * docs/README:
3883           Tell folks what to do if the plugin-foobar.xml file
3884           hasn't been generated for a newly-added plugin.
3885
3886 2006-02-05  Julien MOUTTE  <julien@moutte.net>
3887
3888         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
3889         (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
3890         (gst_collect_pads_start), (gst_collect_pads_stop),
3891         (gst_collect_pads_event): Collectpads now holds a reference
3892         to the GstPad that was added. Indeed we don't want to look
3893         at pads that might just go away with no warning...
3894
3895 2006-02-05  Julien MOUTTE  <julien@moutte.net>
3896
3897         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
3898         (gst_collect_pads_start), (gst_collect_pads_stop),
3899         (gst_collect_pads_event), (gst_collect_pads_chain):
3900         * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
3901         Mark Nauwelaerts's patch on bug #328491.
3902
3903 2006-02-04  Tim-Philipp Müller  <tim at centricular dot net>
3904
3905         * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
3906         (gst_utils_suite):
3907           Add some simple tests for gst_parse_bin_from_description() and
3908           gst_bin_find_unconnected_pad() (#329069).
3909
3910 2006-02-04  Tim-Philipp Müller  <tim at centricular dot net>
3911
3912         * tools/gst-launch.c: (event_loop), (main):
3913           Catch errors during preroll (#320084).
3914
3915 2006-02-03  Tim-Philipp Müller  <tim at centricular dot net>
3916
3917         * plugins/elements/gsttypefindelement.c:
3918         (gst_type_find_element_activate):
3919           Post TYPE_NOT_FOUND error message when typefinding
3920           is unsuccessful in the activate function as well.
3921
3922 2006-02-02  Wim Taymans  <wim@fluendo.com>
3923
3924         * docs/design/part-element-sink.txt:
3925         Updated doc.
3926
3927 2006-02-02  Wim Taymans  <wim@fluendo.com>
3928
3929         * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
3930         (gst_base_sink_render_object),
3931         (gst_base_sink_queue_object_unlocked):
3932         Only keep track of prerollable items when we are 
3933         prerolling.
3934         Before rendering after preroll, always check if we
3935         have queued items.
3936         Added some more debugging.
3937
3938 2006-02-02  Wim Taymans  <wim@fluendo.com>
3939
3940         * gst/gstelement.c: (gst_element_continue_state),
3941         (gst_element_set_state_func), (gst_element_change_state):
3942         Fixed #326576, been running this for quite some time with
3943         no regressions at all.
3944
3945 2006-02-02  Wim Taymans  <wim@fluendo.com>
3946
3947         * common/gst.supp:
3948         Added more suppressions
3949
3950 2006-02-02  Wim Taymans  <wim@fluendo.com>
3951
3952         * docs/design/part-element-sink.txt:
3953         Updated document.
3954
3955         * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3956         (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
3957         (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
3958         (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
3959         (gst_base_sink_do_sync), (gst_base_sink_render_object),
3960         (gst_base_sink_preroll_object),
3961         (gst_base_sink_queue_object_unlocked),
3962         (gst_base_sink_queue_object), (gst_base_sink_event),
3963         (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
3964         (gst_base_sink_loop), (gst_base_sink_activate_pull),
3965         (gst_base_sink_get_position), (gst_base_sink_change_state):
3966         * libs/gst/base/gstbasesink.h:
3967         Totally refactored matching the design doc.
3968         Use two segments, one to clip incomming buffers and another to
3969         perform sync.
3970         Handle queueing correctly, bypass the queue when playing.
3971         Make EOS cancelable.
3972         Handle errors correctly when operating in pull based mode.
3973
3974         * tests/check/elements/fakesink.c: (GST_START_TEST),
3975         (fakesink_suite):
3976         Added new check for sinks.
3977
3978 2006-02-02  Wim Taymans  <wim@fluendo.com>
3979
3980         * gst/gstsegment.c: (gst_segment_clip):
3981         No reason to refuse to clip when start == -1
3982
3983 2006-02-02  Stefan Kost  <ensonic@users.sf.net>
3984
3985         * docs/README:
3986         * docs/manual/intro-basics.xml:
3987         * docs/manual/intro-preface.xml:
3988         * docs/manual/manual.xml:
3989         * docs/pwg/advanced-dparams.xml:
3990         * docs/pwg/intro-basics.xml:
3991         * docs/pwg/intro-preface.xml:
3992         * docs/pwg/pwg.xml:
3993           describe dparams (controller) for plugins
3994           unify docs a little more
3995
3996 2006-02-02  Tim-Philipp Müller  <tim at centricular dot net>
3997
3998         * docs/gst/gstreamer-sections.txt:
3999         * gst/gstutils.c: (element_find_unconnected_pad),
4000         (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
4001         * gst/gstutils.h:
4002           Add new API: gst_parse_bin_from_description() and
4003           gst_bin_find_unconnected_pad() (#329069).
4004
4005 2006-02-01  Stefan Kost  <ensonic@users.sf.net>
4006
4007         * docs/manual/README:
4008           uncover a nasty detail of the docs build
4009
4010 2006-01-31  Wim Taymans  <wim@fluendo.com>
4011
4012         * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
4013         Don't cache duration messages if we're not going to use or
4014         free them.
4015
4016 2006-01-31  Stefan Kost  <ensonic@users.sf.net>
4017
4018         * docs/manual/advanced-dparams.xml:
4019         * docs/pwg/advanced-dparams.xml:
4020           more dparam docs
4021         * gst/gstindex.c:
4022           fix docs
4023         * libs/gst/controller/lib.c: (gst_controller_init):
4024           init just once
4025
4026 2006-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
4027
4028         * gst/gstelement.c: (gst_element_message_full):
4029           also show file/line/func if no additional debug was given
4030
4031 2006-01-31  Sebastien Moutte  <sebastien@moutte.net>
4032         
4033         * win32/vs7/grammar.vcproj:
4034           activate copy of autogenerated files for Release mode
4035
4036 2006-01-30  Sebastien Moutte  <sebastien@moutte.net>
4037         
4038         * win32/common/libgstreamer.def:
4039           export gst_value_compare
4040
4041 2006-01-30  Jan Schmidt  <thaytan@mad.scientist.com>
4042
4043         * plugins/elements/Makefile.am:
4044         * plugins/elements/gstelements.c:
4045         * plugins/elements/gstfdsink.c: (_do_init),
4046         (gst_fd_sink_base_init), (gst_fd_sink_class_init),
4047         (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
4048         (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
4049         (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
4050         (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
4051         (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
4052         (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
4053         * plugins/elements/gstfdsink.h:
4054         Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
4055
4056 2006-01-30  Stefan Kost  <ensonic@users.sf.net>
4057
4058         * docs/manual/advanced-dparams.xml:
4059           describe controller
4060         * docs/manual/advanced-position.xml:
4061         * docs/manual/basics-init.xml:
4062         * docs/manual/manual.xml:
4063         * docs/manual/titlepage.xml:
4064         * docs/pwg/pwg.xml:
4065         * docs/pwg/titlepage.xml:
4066           cleanup xml (more to come)
4067         * libs/gst/controller/gstcontroller.c:
4068           fix typo
4069
4070 2006-01-30  Sebastien Moutte  <sebastien@moutte.net>
4071         
4072         * win32/vs6/grammar.dsp:
4073           add autogen of gstmarshal.c,h for Release mode
4074                 
4075 2006-01-30  Wim Taymans  <wim@fluendo.com>
4076
4077         * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
4078         (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
4079         (gst_base_sink_handle_object), (gst_base_sink_event),
4080         (gst_base_sink_is_prerolled), (gst_base_sink_wait),
4081         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
4082         (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
4083         (gst_base_sink_deactivate), (gst_base_sink_activate),
4084         (gst_base_sink_activate_pull), (gst_base_sink_get_position),
4085         (gst_base_sink_query), (gst_base_sink_change_state):
4086         Basesink cleanups, remove some old code.
4087         Handle the case where a subclass can preroll in the render
4088         method (mostly audiosinks).
4089         Handle more events.
4090         Remove some locks around variables that are now protected
4091         with the PREROLL_LOCK (clock_id, flushing, ..).
4092         Optimize position query some more, do correct locking.
4093         Remove old code to push queue in state change, this is not
4094         needed anymore since preroll blocks on all prerollable items 
4095         now.
4096         Almost implemented as described in design doc.
4097
4098 2006-01-30  Wim Taymans  <wim@fluendo.com>
4099
4100         * tests/check/gst/gstbin.c: (GST_START_TEST):
4101         Wait for refcount to settle down before checking.
4102
4103 2006-01-30  Wim Taymans  <wim@fluendo.com>
4104
4105         * docs/design/part-element-sink.txt:
4106         Pseudo code overview of desired sink behaviour regarding
4107         preroll.
4108
4109 2006-01-29  Sebastien Moutte  <sebastien@moutte.net>
4110         * win32/vs6/grammar.dsp:
4111           fix some bugs in Release mode for autogenerated files
4112                 
4113 2006-01-29  Sebastien Moutte  <sebastien@moutte.net>
4114         * win32/common/libgstbase.def:
4115         * win32/common/libgstreamer.def:
4116           export some new symbols: gst_base_src_set_format,
4117           gst_iterator_next, gst_structure_set_valist
4118
4119 2006-01-29  Julien MOUTTE  <julien@moutte.net>
4120
4121         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
4122         Set pad functions unconditionally. Fixes #329105.
4123
4124 2006-01-29  Sebastien Moutte  <sebastien@moutte.net>
4125         * win32/vs8:
4126           add vs8 project files created by Sergey Scobich
4127
4128 2006-01-28  Jan Schmidt  <thaytan@mad.scientist.com>
4129
4130         * gst/gstutils.c: (gst_element_unlink_pads):
4131         Don't leak pad references.
4132
4133         * tests/check/elements/fakesink.c: (GST_START_TEST):
4134         * tests/check/generic/sinks.c: (GST_START_TEST):
4135         * tests/check/generic/states.c: (GST_START_TEST):
4136         * tests/check/gst/gstbin.c: (GST_START_TEST):
4137         * tests/check/gst/gstcaps.c: (GST_START_TEST):
4138         * tests/check/gst/gstelement.c: (GST_START_TEST):
4139         * tests/check/gst/gstghostpad.c: (GST_START_TEST):
4140         * tests/check/gst/gstiterator.c: (GST_START_TEST):
4141         * tests/check/gst/gstvalue.c: (GST_START_TEST):
4142         Fix a bunch of leaks. Make generic/sinks.c
4143         use a bit less cpu by slowing the buffer rate
4144         between fakesrc and fakesink.
4145         
4146 2006-01-27  Stefan Kost  <ensonic@users.sf.net>
4147         * gst/gstcaps.c:
4148         * gst/gstelement.c: (gst_element_send_event):
4149         * gst/gstevent.c:
4150         * gst/gstinfo.c:
4151         * gst/gstiterator.c:
4152         * gst/gstiterator.h:
4153         * gst/gstpad.c: (gst_pad_send_event):
4154         * gst/gststructure.c:
4155         * gst/gsturi.c:
4156         * gst/gstutils.c:
4157         * gst/gstvalue.c:
4158         * libs/gst/base/gstadapter.c:
4159           doc fixes, to link to function, just write gst_cool_function(), don't
4160           prefix with '#'
4161
4162 2006-01-27  Jan Schmidt  <thaytan@mad.scientist.com>
4163
4164         * plugins/elements/gsttee.c: (gst_tee_do_push),
4165         (gst_tee_handle_buffer):
4166         Always prefer an actual return value from a src
4167         pad in place of NOT_LINKED. This means we return
4168         WRONG_STATE when all src pads are WRONG_STATE
4169         instead of NOT_LINKED.
4170
4171         Lock when replacing the last message to prevent
4172         racing with the get_property method.
4173
4174         Add debug output
4175
4176 2006-01-27  Jan Schmidt  <thaytan@mad.scientist.com>
4177
4178         * tests/check/Makefile.am:
4179         * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
4180         (main):
4181         Add a very simple check that should have caught the memleak I fixed
4182         last night (if not for the slice allocator hiding it)
4183
4184 2006-01-27  Jan Schmidt  <thaytan@mad.scientist.com>
4185
4186         * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
4187         (gst_bin_remove_func), (gst_bin_handle_message_func),
4188         (bin_query_duration_fold), (bin_query_generic_fold):
4189         Clean up references to the clock provider when disposed or when
4190         handling a clock-lost message from it.
4191
4192         Unref sinks when performing a query via gst_iterator_fold, as the
4193         gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
4194
4195         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
4196         (gst_clock_set_master):
4197         Drop our reference to the master clock, if any, when we are disposed.
4198
4199         * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
4200         Chain up in dispose. 
4201
4202 2006-01-26  Wim Taymans  <wim@fluendo.com>
4203
4204         * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
4205         Add some debugging.
4206
4207 2006-01-26  Julien MOUTTE  <julien@moutte.net>
4208
4209         * plugins/elements/gsttee.c: (gst_tee_do_push),
4210         (gst_tee_handle_buffer): Apply patch from #328715. Tee now
4211         handles pad being NOT_LINKED or in WRONG_STATE.
4212
4213 2006-01-26  Stefan Kost  <ensonic@users.sf.net>
4214
4215         * win32/MANIFEST:
4216           more updating
4217
4218 2006-01-26  Stefan Kost  <ensonic@users.sf.net>
4219
4220         * win32/MANIFEST:
4221           remove obsolete entry
4222
4223 2006-01-26  Stefan Kost  <ensonic@users.sf.net>
4224
4225         * docs/gst/gstreamer-sections.txt:
4226         * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
4227         (gst_bin_iterate_sources), (gst_bin_send_event):
4228         * gst/gstbin.h:
4229         * gst/gstelement.c: (gst_element_send_event):
4230         * gst/gstevent.c:
4231         * gst/gstpad.c: (gst_pad_send_event):
4232           added code for downstream events, reviewed docs in gstevent.c
4233
4234 2006-01-25  Julien MOUTTE  <julien@moutte.net>
4235
4236         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
4237         We only query position using the clock in the playing state.
4238         Query peer in the other cases.
4239         * win32/common/config.h: Updates.
4240
4241 2006-01-24  Wim Taymans  <wim@fluendo.com>
4242
4243         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4244         A clock entry that is scheduled for the exact time of the
4245         clock is still in time.
4246
4247         * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4248         (gst_base_sink_do_sync):
4249         Add some more debug info.
4250
4251 2006-01-23  Sebastien Moutte  <sebastien@moutte.net>
4252
4253         * win32/vs7:
4254           Add new vs7 project files and solution.
4255
4256 2006-01-23  Sebastien Moutte  <sebastien@moutte.net>
4257
4258         * win32/vs7:
4259           all files removed as they were out-dated.
4260
4261 2006-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4262
4263         * docs/random/release:
4264           update notes
4265         * gst/gstbin.c: (gst_bin_init):
4266         * gst/gstbus.c: (gst_bus_new):
4267         * gst/gstbus.h:
4268         * gst/gstpipeline.c: (gst_pipeline_init):
4269           use gst_bus_new(), improve logging, fix docs
4270         * win32/common/config.h:
4271           update for cvs build
4272
4273 2006-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4274
4275         * autogen.sh:
4276           up required version of automake to 1.7
4277
4278 2006-01-20  Sebastien Moutte  <sebastien@moutte.net>
4279
4280         * win32/common/libgstreamer.def:
4281           export gst_buffer_is_metadata_writable
4282
4283 2006-01-20  Tim-Philipp Müller  <tim at centricular dot net>
4284
4285         * docs/gst/gstreamer-sections.txt:
4286         * gst/gstevent.h:
4287           Add gst_event_replace() (#327001)
4288
4289 2006-01-20  Wim Taymans  <wim@fluendo.com>
4290
4291         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
4292         Make it actually compile too..
4293
4294 2006-01-20  Wim Taymans  <wim@fluendo.com>
4295
4296         * gst/gstcaps.c:
4297         Clarify behaviour of _is_equal() when passing NULL parameters.
4298
4299         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
4300         (gst_pad_set_caps):
4301         Cleanups. Don't unref NULL caps.
4302         When setting the same caps, protect caps of the pad with
4303         proper lock.
4304         Use full functionality of _is_equal() when comparing caps.
4305
4306 2006-01-20  Jan Schmidt  <thaytan@mad.scientist.com>
4307
4308         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
4309         Don't loop infinitely if there are no buffers to present. Partially
4310         fixes #327197, but collectpads is just broken for reusing elements
4311         to do multiple encodes atm.
4312
4313 2006-01-20  Jan Schmidt  <thaytan@mad.scientist.com>
4314
4315         * tools/gst-inspect.c: (print_element_features):
4316         * tools/gst-xmlinspect.c: (main):
4317         URL_HANDLER is not a plugin feature we can search for in
4318         the registry.
4319
4320 2006-01-19  Edward Hervey  <edward@fluendo.com>
4321
4322         * gst/gstelement.c: (gst_element_pads_activate): 
4323         When activating, do src pads first, then sink pads.
4324         When de-activating, do sink pads first, then src pads.
4325
4326 2006-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4327
4328         * docs/gst/gstreamer-sections.txt:
4329         Add gst_index_add_associationv to the docs
4330
4331 2006-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4332
4333         * gst/gstevent.c:
4334           Fix docs typo
4335
4336         * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
4337         (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
4338           Do some refactoring. Doesn't actually change functionality,
4339           but makes landing the DRAIN event easier later.
4340
4341 2006-01-19  Tim-Philipp Müller  <tim at centricular dot net>
4342
4343         * docs/pwg/advanced-scheduling.xml:
4344           Update from 0.9.x to 0.10 API and make example a bit
4345           clearer.
4346
4347 2006-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4348
4349         * docs/gst/gstreamer-sections.txt:
4350         Add gst_buffer_(is|make)_metadata_writable methods.
4351
4352 2006-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4353
4354         * docs/design/part-sparsestreams.txt:
4355         Update sparse streams doc, hopefully for greater clarity
4356
4357 2006-01-18  Jan Schmidt  <thaytan@mad.scientist.com>
4358
4359         * docs/design/part-events.txt:
4360         Remove mention of FILLER events.
4361         Add DRAIN event.
4362
4363         * docs/design/part-sparsestreams.txt:
4364         Write some things about using NEWSEGMENT to keep sparse streams
4365         flowing.
4366
4367 2006-01-18  Tim-Philipp Müller  <tim at centricular dot net>
4368
4369         * gst/gstbin.c: (gst_bin_dispose):
4370           Guard gst_object_unref call against a NULL object (dispose
4371           can theoretically be called multiple times).
4372           
4373 2006-01-18  Wim Taymans  <wim@fluendo.com>
4374
4375         * gst/gstbin.c: (gst_bin_element_set_state):
4376         * gst/gstclock.c: (gst_clock_id_wait):
4377         Added some more debug info.
4378
4379         * libs/gst/base/gstadapter.c:
4380         Added more docs.
4381
4382         * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4383         (gst_base_sink_do_sync), (gst_base_sink_chain):
4384         Added some comments.
4385
4386 2006-01-18  Wim Taymans  <wim@fluendo.com>
4387
4388         * tests/check/Makefile.am:
4389         * tests/check/elements/fakesink.c: (chain_async_buffer),
4390         (chain_async), (chain_async_return), (GST_START_TEST),
4391         (fakesink_suite), (main):
4392         Added fakesink test that checks prerolling and clipping
4393         behaviour.
4394
4395         * tests/check/gst/gstutils.c: (GST_START_TEST):
4396         Make check run faster so that buildbots don't timeout.
4397
4398 2006-01-18  Wim Taymans  <wim@fluendo.com>
4399
4400         * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4401         (gst_base_sink_do_sync):
4402         Some cleanups.
4403         When the sink finishes blocking on the preroll buffer, it can
4404         immediatly render it instead of rendering when the next buffer
4405         arrives.
4406
4407 2006-01-18  Wim Taymans  <wim@fluendo.com>
4408
4409         * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
4410         (gst_base_sink_get_property), (gst_base_sink_do_sync),
4411         (gst_base_sink_chain):
4412         Small cleanups.
4413         GST_ELEMENT_CLOCK and sync are protected with LOCK.
4414         Don't store _last_stop if the buffer is dropped.
4415
4416 2006-01-18  Tim-Philipp Müller  <tim at centricular dot net>
4417
4418         * plugins/elements/gsttypefindelement.c:
4419         (gst_type_find_element_class_init):
4420           'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
4421           object method handler that sets the caps on the pad and we want
4422           that to happen before we emit the signal (fixes e.g. feeding a
4423           plain text file to decodebin).
4424
4425 2006-01-18  Christian Schaller  <Christian@fluendo.com>
4426
4427         * gst/gstplugin.c: Add MPL and Proprietary as license options
4428
4429 2006-01-18  Andy Wingo  <wingo@pobox.com>
4430
4431         * gst/gstindex.h (gst_index_add_associationv): Add to header. The
4432         symbol was exported before, it appears this was just an oversight.
4433         Fixes #168703.
4434         Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
4435
4436         * gst/gstindex.c (gst_index_add_associationv): Changed int in
4437         prototype to gint. OK since this prototype was not in the header.
4438
4439 2006-01-17  Andy Wingo  <wingo@pobox.com>
4440
4441         * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
4442         registry while we remove plugins.
4443
4444         * tools/gst-inspect.c (print_element_info): Don't unref the
4445         factory arg, that should be the responsibility of whatever code
4446         received the ref. Fixes a double-free when called from
4447         print_element_list via gst-inspect-0.10 -a. Fixes #327324.
4448         (main): Unref the factory if we have one.
4449         (print_element_list): No change -- relies on the
4450         plugin_feature_list_free to free the list of features.
4451
4452 2006-01-17  Jan Schmidt  <thaytan@mad.scientist.com>
4453
4454         * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
4455         (gst_buffer_make_metadata_writable):
4456         * gst/gstbuffer.h:
4457         * libs/gst/base/gstbasetransform.c:
4458         (gst_base_transform_prepare_output_buf):
4459         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4460         * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4461           Replace gst_buffer_(make|is)_metadata_writable patch now
4462           that the release is out.
4463
4464 2006-01-17  Andy Wingo  <wingo@pobox.com>
4465
4466         * gst/gstregistry.c: Reflow design comment. Update so as to speak
4467         in the present tense without reference to versions.
4468
4469         * gst/gstregistry.c (gst_registry_add_plugin)
4470         (gst_registry_remove_plugin, gst_registry_remove_feature)
4471         (gst_registry_find_feature, gst_registry_get_feature_list)
4472         (gst_registry_get_plugin_list, gst_registry_lookup_feature)
4473         (gst_registry_lookup, gst_registry_scan_path)
4474         (_gst_registry_remove_cache_plugins)
4475         (gst_registry_get_feature_list_by_plugin): Add argument
4476         validation.
4477
4478 === release 0.10.2 ===
4479
4480 2006-01-16  Thomas Vander Stichele <thomas at apestaart dot org>
4481
4482         * configure.ac:
4483           releasing 0.10.2, "If man is five"
4484
4485 2006-01-16  Jan Schmidt  <thaytan@mad.scientist.com>
4486
4487         * gst/gstbuffer.c:
4488         * gst/gstbuffer.h:
4489         * libs/gst/base/gstbasetransform.c:
4490         (gst_base_transform_prepare_output_buf):
4491         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4492         * tests/check/gst/gstbuffer.c: (gst_test_suite):
4493           Back out patch until after the release.
4494
4495 2006-01-16  Jan Schmidt  <thaytan@mad.scientist.com>
4496
4497         * gst/gstminiobject.c:
4498           Spelling fix in docs.
4499         * ChangeLog - remove conflict indicator
4500
4501 2006-01-16  Jan Schmidt  <thaytan@mad.scientist.com>
4502
4503         Reviewed By: Andy Wingo
4504
4505         * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
4506         (gst_buffer_make_metadata_writable):
4507         * gst/gstbuffer.h:
4508           Add gst_buffer_(is|make)_metadata_writable as analogues of
4509           gst_buffer_(is|make)_writable.
4510
4511         * libs/gst/base/gstbasetransform.c:
4512         (gst_base_transform_prepare_output_buf):
4513         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4514           Use name gst_buffer_(is|make)_metadata_writable functions.
4515
4516         * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4517           Test gst_buffer_(is|make)_metadata_writable
4518         
4519           (Closes: #324162)
4520
4521 2006-01-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4522
4523         * docs/manual/Makefile.am:
4524           don't do parallel make
4525         * configure.ac:
4526           AC_SUBST HOST_CPU
4527         * win32/common/config.h.in:
4528           add generations for HOST_CPU and GST_MAJORMINOR
4529         * win32/common/config.h:
4530           commit generated result
4531
4532 2006-01-13  Tim-Philipp Müller  <tim at centricular dot net>
4533
4534         * docs/manual/appendix-integration.xml:
4535           Update GNOME integration section to use gst_init_get_option_group()
4536           instead of the old popt stuff (#322911). Also, GNOME applications
4537           should  now use gconf*sink and gconf*src instead of the old gconf
4538           helper lib we had.
4539
4540 2006-01-13  Stefan Kost  <ensonic@users.sf.net>
4541
4542
4543         * docs/gst/gstreamer-docs.sgml:
4544         * docs/gst/gstreamer-sections.txt:
4545         * docs/libs/gstreamer-libs-sections.txt:
4546           add new API entries to the docs
4547         * libs/gst/controller/Makefile.am:
4548         * libs/gst/controller/gstcontroller.c:
4549         * libs/gst/controller/gstcontroller.h:
4550         * libs/gst/controller/gstcontrollerprivate.h:
4551         * libs/gst/controller/gsthelper.c:
4552         * libs/gst/controller/gstinterpolation.c:
4553           move private structs to private header
4554         * po/README:
4555           gstreamer-0.7 -> gstreamer-0.10
4556         * tests/check/libs/struct_i386.h:
4557           remove private structs
4558
4559 2006-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4560
4561         * plugins/indexers/Makefile.am:
4562           Fixes as part of #317048
4563
4564 2006-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4565
4566         * plugins/indexers/Makefile.am:
4567           fix #316086 - compilation when mmap is missing
4568
4569 2006-01-12  Sebastien Moutte  <sebastien@moutte.net>
4570
4571         * libs/gst/base/gstbasesink.c:
4572           *cur = (now - base) * basesink->segment.abs_rate + time; replaced by 
4573           *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
4574         * win32/common/config.h:
4575           added some defines GST_MAJORMINOR and HOST_CPU
4576         * win32/common/libgstbase.def:
4577         * win32/common/libgstreamer.def:
4578           added some exported functions.
4579
4580 2006-01-12  Stefan Kost  <ensonic@users.sf.net>
4581
4582         * libs/gst/controller/gstcontroller.c:
4583         (gst_controlled_property_set_interpolation_mode),
4584         (gst_controlled_property_new):
4585         * libs/gst/controller/gstcontroller.h:
4586         * libs/gst/controller/gstinterpolation.c:
4587         (interpolate_none_get_string_value_array):
4588           make G_TYPE_STRING controlable
4589
4590 2006-01-12  Stefan Kost  <ensonic@users.sf.net>
4591
4592         * tools/README:
4593         * tools/gst-feedback.1.in:
4594         * tools/gst-inspect.1.in:
4595         * tools/gst-launch.1.in:
4596         * tools/gst-md5sum.1.in:
4597         * tools/gst-typefind.1.in:
4598         * tools/gst-xmlinspect.1.in:
4599         * tools/gst-xmllaunch.1.in:
4600           cleanup man-pages, remove reference to gst-register, document env-vars
4601
4602 2006-01-12  Jan Schmidt  <thaytan@mad.scientist.com>
4603
4604         * gst/gstbuffer.c: (gst_buffer_span):
4605           gst_buffer_span should copy the timestamp of the first buffer
4606           if they were both originally overlapping subbuffers of the 
4607           same parent, using the same logic as the 'slow copy' case.
4608
4609 2006-01-11  Jan Schmidt  <thaytan@mad.scientist.com>
4610
4611         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
4612           Need to awaken ALL the pads when we pop a buffer, otherwise
4613           collectpads only works when there is 2 input streams.
4614
4615 2006-01-11  Stefan Kost  <ensonic@users.sf.net>
4616
4617         * docs/random/ensonic/media-device-daemon.txt:
4618           more ideas (dbus)
4619         * gst/gstbuffer.c:
4620           fix doc example, add clarification
4621         * tools/gst-launch.1.in:
4622           add initial info about GST_PLUGIN_PATH, needs more work
4623
4624 2006-01-11  Tim-Philipp Müller  <tim at centricular dot net>
4625
4626         * docs/manual/basics-bins.xml:
4627         * docs/manual/basics-elements.xml:
4628         * docs/manual/intro-basics.xml:
4629           Some more minor docs additions and updates.
4630
4631 2006-01-11  Wim Taymans  <wim@fluendo.com>
4632
4633         * docs/manual/basics-bins.xml:
4634         * docs/manual/basics-elements.xml:
4635         Some small fixes as pointed out by Ser-ver on IRC.
4636
4637 2006-01-10  Edward Hervey  <edward@fluendo.com>
4638
4639         * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
4640         Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
4641         the single-segment mode.
4642
4643 2006-01-10  Brian Cameron  <brian dot cameron at sun dot com>
4644
4645         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
4646
4647         * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
4648         (gst_base_src_perform_seek), (gst_base_src_send_event),
4649         (gst_base_src_set_property), (gst_base_src_get_property),
4650         (gst_base_src_loop), (gst_base_src_start),
4651         (gst_base_src_activate_push):
4652         * libs/gst/base/gstbasesrc.h:
4653           Name (private) union; makes Sun's Forte compiler happy (#324900).
4654
4655 2006-01-09  Tim-Philipp Müller  <tim at centricular dot net>
4656
4657         * README:
4658           gst-register is gone.
4659
4660 2006-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4661
4662         * gst/gstvalue.c: (_gst_value_initialize):
4663           make the G_TYPE_DATE instantiation work if debug is disabled
4664
4665 2006-01-06  Tim-Philipp Müller  <tim at centricular dot net>
4666
4667         * gst/gstmessage.c: (gst_message_parse_tag),
4668         (gst_message_parse_error), (gst_message_parse_warning):
4669           Don't crash when return location for error/warning debug
4670           string is NULL; add fact that return locations can be
4671           NULL to docs where appropriate.
4672
4673 2006-01-05  Wim Taymans  <wim@fluendo.com>
4674
4675         * gst/gstplugin.c: (gst_plugin_load_file):
4676         Replace strdup by g_strdup.
4677
4678 2006-01-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4679
4680         * docs/pwg/advanced-types.xml:
4681           fix doc borkage
4682
4683 2006-01-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4684
4685         submitted by: Abel Cheung
4686
4687         * po/LINGUAS:
4688         * po/zh_TW.po:
4689           Added Chinese (traditional) translation
4690
4691 2006-01-04  Wim Taymans  <wim@fluendo.com>
4692
4693         * docs/manual/basics-pads.xml:
4694         * docs/plugins/Makefile.am:
4695         * docs/plugins/gstreamer-plugins-docs.sgml:
4696         * docs/plugins/gstreamer-plugins-sections.txt:
4697         * docs/pwg/advanced-clock.xml:
4698         * docs/pwg/advanced-scheduling.xml:
4699         * docs/pwg/advanced-types.xml:
4700         * plugins/elements/gstfdsink.c:
4701         * plugins/elements/gstfdsrc.c:
4702         * plugins/elements/gstfdsrc.h:
4703         * plugins/elements/gstidentity.c: (gst_identity_class_init):
4704         * plugins/elements/gstidentity.h:
4705         * plugins/elements/gstqueue.h:
4706         * plugins/elements/gsttee.c:
4707         * plugins/elements/gsttee.h:
4708         * plugins/elements/gsttypefindelement.c:
4709         (gst_type_find_element_class_init):
4710         * plugins/elements/gsttypefindelement.h:
4711         Small updates to various docs.
4712         Added core plugins to docs.
4713
4714 2006-01-03  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4715
4716         * common/gst.supp:
4717           add a suppression for liboil's uninitialized variable
4718
4719 2006-01-02  James Livingston  <jrl at ids dot org dot au>
4720
4721         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
4722
4723         * gst/gstutils.h:
4724           Add prototype for _get_type() function to GST_BOILERPLATE_FULL
4725           macro, so that gcc doesn't complain if the -Wmissing-prototypes
4726           compiler switch is being used (#325429).
4727
4728 2005-12-29  Tim-Philipp Müller  <tim at centricular dot net>
4729
4730         * gst/gstbin.c: (gst_bin_query):
4731           Disable duration query caching in bins until it gets
4732           fixed (see #324807).
4733
4734 2005-12-27  Tim-Philipp Müller  <tim at centricular dot net>
4735
4736         * tools/gst-inspect.c: (print_element_properties_info):
4737           Handle properties of POINTER and BOXED type.
4738
4739 2005-12-27  Tim-Philipp Müller  <tim at centricular dot net>
4740
4741         * gst/gst.c: (init_post):
4742           Init tags stuff and some other things before loading
4743           any static plugins (there may be other static plugins
4744           than just the GStreamer ones, and they may want to
4745           register their own tags or formats or whatever, and
4746           preferably without segfaulting).
4747
4748         * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
4749           Print at least a warning in the debug logs if we drop a
4750           query just because we don't know how to adjust the value
4751           in the particular format.
4752
4753 2005-12-24  David Schleef  <ds@schleef.org>
4754
4755         * tools/gstreamer-completion:
4756           Replacement for gst-complete written in sh and sed.  Only
4757           completes names of features, but that's 90% of what I want
4758           it for.  Properties are not available in registry.xml.  (Maybe
4759           they should be...)
4760
4761 === release 0.10.1 ===
4762
4763 2005-12-23  Thomas Vander Stichele <thomas at apestaart dot org>
4764
4765         * configure.ac:
4766           releasing 0.10.1, "Nollaig chridheil"
4767
4768 2005-12-22  Tim-Philipp Müller  <tim at centricular dot net>
4769
4770         * docs/faq/cvs.xml:
4771           Add missing quote, should be make ERROR_CFLAGS="".
4772
4773 2005-12-20  Wim Taymans  <wim@fluendo.com>
4774
4775         * docs/design/part-trickmodes.txt:
4776         More documentation on trickmodes.
4777
4778 2005-12-20  Edward Hervey  <edward@fluendo.com>
4779
4780         * gst/gstcaps.c: (gst_static_caps_get_type):
4781         * gst/gstcaps.h:
4782           API addition: GST_TYPE_STATIC_CAPS
4783         Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
4784         * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
4785         * gst/gstpadtemplate.h:
4786           API addition: GST_TYPE_STATIC_PAD_TEMPLATE
4787         Added gpointer GType for GstStaticPadTemplate so we can wrap them in
4788         bindings.
4789
4790 2005-12-18  Wim Taymans  <wim@fluendo.com>
4791
4792         * libs/gst/base/gstadapter.c:
4793         * libs/gst/base/gstadapter.h:
4794         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
4795         (gst_base_sink_get_position):
4796         * libs/gst/base/gstbasesink.h:
4797         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4798         (gst_base_src_default_query), (gst_base_src_default_do_seek),
4799         (gst_base_src_do_seek), (gst_base_src_perform_seek),
4800         (gst_base_src_send_event), (gst_base_src_update_length),
4801         (gst_base_src_get_range), (gst_base_src_loop),
4802         (gst_base_src_start):
4803         * libs/gst/base/gstbasesrc.h:
4804         * libs/gst/base/gstbasetransform.h:
4805         * libs/gst/base/gstcollectpads.h:
4806         * libs/gst/base/gstpushsrc.c:
4807         * libs/gst/base/gstpushsrc.h:
4808         * libs/gst/dataprotocol/dataprotocol.c:
4809         * libs/gst/dataprotocol/dataprotocol.h:
4810         * libs/gst/net/gstnetclientclock.h:
4811         * libs/gst/net/gstnettimeprovider.h:
4812         Documentation updates.
4813
4814 2005-12-18  Tim-Philipp Müller  <tim at centricular dot net>
4815
4816         * docs/manual/basics-helloworld.xml:
4817           Remove superfluous closing bracket in helloworld example.
4818
4819 2005-12-17  Tim-Philipp Müller  <tim at centricular dot net>
4820
4821         * tools/gst-launch.1.in:
4822           Update gst-launch man page; add a section with useful
4823           environment variables. Fixes #323882.
4824
4825 2005-12-16  Stefan Kost  <ensonic@users.sf.net>
4826
4827         * gst/gst.c:
4828         * gst/gst_private.h:
4829           change some char* into char[]
4830
4831 2005-12-16  Wim Taymans  <wim@fluendo.com>
4832
4833         * gst/gstregistryxml.c: (load_feature):
4834         Cleanups.
4835         Don't use g_object_unref on GstObjects so that we avoid
4836         leaks on unsafe glibs.
4837
4838 2005-12-16  Wim Taymans  <wim@fluendo.com>
4839
4840         * gst/gstbin.c: (gst_bin_recalc_state):
4841         Small doc updates.
4842
4843 2005-12-16  Wim Taymans  <wim@fluendo.com>
4844
4845         * common/check.mak:
4846         Added make forever target for check.
4847
4848 2005-12-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4849
4850         * gst/gst.c: (init_post):
4851           make the registry cache file HOST_CPU-dependent
4852
4853 2005-12-16  Andy Wingo  <wingo@pobox.com>
4854
4855         * plugins/elements/gstbufferstore.c
4856         (gst_buffer_store_cleared_func): Pay attention to g_list_append
4857         return value.
4858
4859         * tests/check/gst/gstobject.c
4860         (test_fake_object_name_threaded_unique): Pay attention to
4861         g_list_sort return value.
4862
4863 2005-12-16  Tim-Philipp Müller  <tim at centricular dot net>
4864
4865         * tools/gst-feedback-m.m:
4866           Update for 0.9/0.10 (fixes #323870).
4867
4868 2005-12-15  Tim-Philipp Müller  <tim at centricular dot net>
4869
4870         * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
4871           Fix lcopy for mini objects, the mini object needs to be ref'ed.
4872           
4873         * tests/check/gst/gstminiobject.c: (my_foo_init),
4874         (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
4875         (test_value_collection), (gst_mini_object_suite):
4876           Add test to ensure refcounts end up as expected when passing
4877           GstMiniObjects through g_object_get() and g_object_set().
4878
4879 2005-12-14  Julien MOUTTE  <julien@moutte.net>
4880
4881         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
4882         (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
4883         (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
4884         of collectpads. This version removes a lot of races without
4885         touching API/ABI. Yay !
4886
4887 2005-12-14  Jan Schmidt  <thaytan@mad.scientist.com>
4888
4889         * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
4890           Don't allow activation of a srcpad in pull_range if it has no
4891           getrange function.
4892           Change some debug statements to be a little clearer
4893
4894         * plugins/elements/gsttypefindelement.c:
4895         (gst_type_find_handle_src_query):
4896           Check that we have a peer before executing queries thereupon.
4897
4898         * tests/examples/metadata/read-metadata.c: (message_loop):
4899           Use gst_bus_pop instead of gst_bus_poll when we just want it to
4900           immediately return us any available message with 0 timeout.
4901
4902 2005-12-12  Michael Smith  <msmith@fluendo.com>
4903
4904         * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
4905           Don't unref factories after calling them.
4906         * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
4907         * plugins/elements/gsttypefindelement.c:
4908         (gst_type_find_element_chain):
4909           Free lists of factories after using them. Fixing typefinding memory
4910           leaks.
4911
4912 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
4913
4914         * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
4915         (gst_plugin_feature_load):
4916           more meaningful debug output
4917         * configure.ac:
4918         * tests/Makefile.am:
4919         * tests/old/examples/Makefile.am:
4920           make make distcheck happy again
4921
4922 2005-12-12  Tim-Philipp Müller  <tim at centricular dot net>
4923
4924         * plugins/elements/gsttypefindelement.c: (stop_typefinding):
4925           Catch the special case where we are operating chain-based,
4926           but the downstream peer pad has no chain function. Emit a
4927           custom error message in this case instead of letting the
4928           core generate one implying that this is some sort of core
4929           bug. It's not, it just means that whatever got plugged
4930           into the pipeline downstream when we announced the type
4931           can only operate pull-based, while our source can only
4932           operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
4933           Error string has not been marked for translation yet, as
4934           it probably needs some more work first.
4935
4936         (gst_type_find_element_get_best_possibility):
4937           Add helper function to find the best of all available
4938           found possibilities that qualify given the min. threshold.
4939
4940         (gst_type_find_element_handle_event):
4941           Fix the case where we get an EOS while still in TYPEFIND
4942           mode (we want to chose the best of all possible types,
4943           not just the first type that happens to be in our unsorted
4944           list of possible types).
4945
4946         (gst_type_find_element_chain):
4947           Make sure we return GST_FLOW_ERROR when we errored out
4948           in stop_typefinding(); also, don't just find the best of
4949           all found type entries and then use the last examined
4950           type entry, but actually use the best entry.
4951
4952 2005-12-12  Tim-Philipp Müller  <tim at centricular dot net>
4953
4954         * tests/examples/typefind/typefind.c: (type_found):
4955         * tests/examples/xml/runxml.c: (xml_loaded):
4956           More gcc4 fixes and a mem leak fix.
4957
4958 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
4959
4960         * tests/examples/xml/createxml.c: (object_saved):
4961           gcc 4 fixes
4962
4963 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
4964
4965         * tests/Makefile.am:
4966           enable the examples even more
4967
4968 2005-12-12  Andy Wingo  <wingo@pobox.com>
4969
4970         * libs/gst/net/gstnettimeprovider.c
4971         (gst_net_time_provider_class_init, gst_net_time_provider_init)
4972         (gst_net_time_provider_set_property)
4973         (gst_net_time_provider_get_property):
4974         API addition: Export "active" as a GObject property.
4975         (gst_net_time_provider_thread): Only respond to time queries if
4976         the time provider is active.
4977
4978         * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
4979         NetTimeProvider, preserving binary compat.
4980
4981 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
4982
4983         * tests/examples/controller/audio-example.c: (main):
4984         * tests/examples/launch/Makefile.am:
4985           convert comments again
4986
4987 2005-12-12  Wim Taymans  <wim@fluendo.com>
4988
4989         * libs/gst/base/gstpushsrc.c:
4990         Fix typo.
4991
4992 2005-12-12  Wim Taymans  <wim@fluendo.com>
4993
4994         * docs/libs/gstreamer-libs-sections.txt:
4995         Added new symbol to docs.
4996
4997         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4998         (gst_base_src_init), (gst_base_src_set_format),
4999         (gst_base_src_default_query), (gst_base_src_query),
5000         (gst_base_src_default_do_seek), (gst_base_src_do_seek),
5001         (gst_base_src_perform_seek), (gst_base_src_send_event),
5002         (gst_base_src_default_event), (gst_base_src_event_handler),
5003         (gst_base_src_set_property), (gst_base_src_get_property),
5004         (gst_base_src_wait), (gst_base_src_do_sync),
5005         (gst_base_src_update_length), (gst_base_src_get_range),
5006         (gst_base_src_check_get_range), (gst_base_src_loop),
5007         (gst_base_src_default_negotiate), (gst_base_src_start),
5008         (gst_base_src_activate_push), (gst_base_src_activate_pull),
5009         (gst_base_src_change_state):
5010         * libs/gst/base/gstbasesrc.h:
5011         Implement seeking to other formats than _BYTES.
5012         Implement more seeking methods correctly.
5013         Doc updates.
5014         Added query vmethod.
5015         Added do_seek vmethod to make life easier for subclasses
5016         when seeking.
5017         API addition: gst_base_src_set_format()
5018
5019 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
5020
5021         * tests/examples/Makefile.am:
5022           added that too
5023
5024 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
5025
5026         * configure.ac:
5027         * docs/random/ensonic/media-device-daemon.txt:
5028         * tests/examples/controller/.cvsignore:
5029         * tests/examples/controller/Makefile.am:
5030         * tests/examples/controller/audio-example.c: (main):
5031         * tests/examples/helloworld/.cvsignore:
5032         * tests/examples/helloworld/Makefile.am:
5033         * tests/examples/helloworld/helloworld.c: (event_loop), (main):
5034         * tests/examples/launch/.cvsignore:
5035         * tests/examples/launch/Makefile.am:
5036         * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
5037         * tests/examples/metadata/.cvsignore:
5038         * tests/examples/metadata/Makefile.am:
5039         * tests/examples/metadata/read-metadata.c: (message_loop),
5040         (make_pipeline), (print_tag), (main):
5041         * tests/examples/queue/.cvsignore:
5042         * tests/examples/queue/Makefile.am:
5043         * tests/examples/queue/queue.c: (event_loop), (main):
5044         * tests/examples/typefind/.cvsignore:
5045         * tests/examples/typefind/Makefile.am:
5046         * tests/examples/typefind/typefind.c: (type_found), (event_loop),
5047         (main):
5048         * tests/examples/xml/.cvsignore:
5049         * tests/examples/xml/Makefile.am:
5050         * tests/examples/xml/createxml.c: (object_saved), (main):
5051         * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
5052         * tests/old/examples/Makefile.am:
5053         * tests/old/examples/TODO:
5054         * tests/old/examples/controller/.cvsignore:
5055         * tests/old/examples/controller/Makefile.am:
5056         * tests/old/examples/controller/audio-example.c:
5057         * tests/old/examples/helloworld/.cvsignore:
5058         * tests/old/examples/helloworld/Makefile.am:
5059         * tests/old/examples/helloworld/helloworld.c:
5060         * tests/old/examples/launch/.cvsignore:
5061         * tests/old/examples/launch/Makefile.am:
5062         * tests/old/examples/launch/mp3parselaunch.c:
5063         * tests/old/examples/launch/mp3play:
5064         * tests/old/examples/manual/Makefile.am:
5065         * tests/old/examples/metadata/Makefile.am:
5066         * tests/old/examples/metadata/read-metadata.c:
5067         * tests/old/examples/queue/.cvsignore:
5068         * tests/old/examples/queue/Makefile.am:
5069         * tests/old/examples/queue/queue.c:
5070         * tests/old/examples/typefind/.cvsignore:
5071         * tests/old/examples/typefind/Makefile.am:
5072         * tests/old/examples/typefind/typefind.c:
5073         * tests/old/examples/xml/.cvsignore:
5074         * tests/old/examples/xml/Makefile.am:
5075         * tests/old/examples/xml/createxml.c:
5076         * tests/old/examples/xml/runxml.c:
5077           applied some simple fixing to some examples
5078           re-enabled the working examples
5079
5080 2005-12-12  Wim Taymans  <wim@fluendo.com>
5081
5082         * gst/gstsegment.c: (gst_segment_init),
5083         (gst_segment_set_last_stop), (gst_segment_set_seek),
5084         (gst_segment_set_newsegment), (gst_segment_to_stream_time),
5085         (gst_segment_to_running_time):
5086         Added more documentation.
5087         Make sure the last_pos value is updated properly.
5088         Make sure to_stream_time and to_running_time don't
5089         operate on wrong values.
5090
5091         * tests/check/gst/gstsegment.c: (GST_START_TEST):
5092         Update check.
5093
5094 2005-12-12  Michael Smith  <msmith@fluendo.com>
5095
5096         * plugins/elements/gsttypefindelement.c: (free_entry),
5097         (gst_type_find_element_chain):
5098           Now that we're not leaking factories, make sure we keep references
5099           to them while we need them.
5100
5101 2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5102
5103         * tests/check/gst/struct_i386.h:
5104           ifdef out the XML structs
5105
5106 2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5107
5108         * gst/gstvalue.c: (gst_value_transform_double_fraction):
5109           floor is not needed, F is always positive; this obviates the
5110           need for adding -lm when building without libxml
5111
5112 2005-12-12  Wim Taymans  <wim@fluendo.com>
5113
5114         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
5115         Take current playback rate into account when reporting
5116         the position.
5117
5118 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
5119
5120         * docs/manual/mime-world.fig:
5121           Let's try this again, this time with a file that is
5122           actually in XFig format.
5123
5124 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
5125
5126         * docs/manual/mime-world.fig:
5127           Add audioconvert element to diagram so that it
5128           matches the text and the code (fixes #319526).
5129
5130 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
5131
5132         * docs/pwg/building-chainfn.xml:
5133         * docs/pwg/building-pads.xml:
5134         * docs/pwg/building-state.xml:
5135         * docs/pwg/other-source.xml:
5136           Update state change stuff for 0.10 (fixes #322969).
5137
5138 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
5139
5140         * docs/manual/advanced-dataaccess.xml:
5141         * docs/manual/appendix-checklist.xml:
5142         * docs/manual/appendix-programs.xml:
5143         * docs/manual/basics-pads.xml:
5144         * docs/manual/highlevel-components.xml:
5145         * docs/manual/manual.xml:
5146           Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
5147           add converters in front of pipelines; remove curly
5148           brackets for threads stuff, they no longer exist; use
5149           GST_TYPE_FRACTION for framerates; update some pieces of
5150           code to 0.10, but there's plenty more to do.
5151
5152         * docs/manual/appendix-porting.xml:
5153           Expand on asynchroneous state changes; s/0.9/0.10/;
5154           mention disappearance of gst_init_get_popt_table()
5155           (fixes #322916).
5156
5157 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
5158
5159         * docs/faq/using.xml:
5160           Spider no longer exists, and neither does gst-launch-ext.
5161           Update examples to use decodebin and playbin and put
5162           converters in front of sinks (fixes #323726).
5163
5164 2005-12-09  Michael Smith  <msmith@fluendo.com>
5165
5166         * plugins/elements/gsttypefindelement.c: (find_peek),
5167         (gst_type_find_element_chain):
5168           Fix leaking element factories in typefinding.
5169           Fix problem where we forgot about a probable type on non-seekable
5170           files, and thus later mis-typefound it.
5171
5172 2005-12-09  Michael Smith  <msmith@fluendo.com>
5173
5174         * common/m4/gst-makecontext.m4:
5175         * common/m4/gst-mcsc.m4:
5176         * configure.ac:
5177         * win32/common/config.h:
5178         * win32/common/config.h.in:
5179           Remove makecontext stuff; not used in 0.10 and causes problems on
5180           HPUX according to bug #322441
5181
5182 2005-12-07  Wim Taymans  <wim@fluendo.com>
5183
5184         * tests/check/Makefile.am:
5185         * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
5186         (main):
5187         * tests/check/libs/struct_i386.h:
5188         Added ABI check for libs
5189
5190 2005-12-07  Wim Taymans  <wim@fluendo.com>
5191
5192         * tests/check/Makefile.am:
5193         And add the struct_i386.h to dist.
5194
5195 2005-12-07  Wim Taymans  <wim@fluendo.com>
5196
5197         * tests/check/Makefile.am:
5198         * tests/check/gst/.cvsignore:
5199         * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
5200         (main):
5201         * tests/check/gst/struct_i386.h:
5202         Added check for ABI compatibility.
5203
5204 2005-12-07  Wim Taymans  <wim@fluendo.com>
5205
5206         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5207         (gst_fake_src_get_times), (gst_fake_src_create):
5208         Fix broken sync option, fixes #323259
5209
5210 2005-12-07  Wim Taymans  <wim@fluendo.com>
5211
5212         * gst/gstbuffer.c:
5213         Small docs update.
5214
5215         * gst/gstcaps.c: (gst_caps_is_equal):
5216         Don't assert on NULL <--> X. Fixes #323260
5217
5218         * gst/gstminiobject.c: (gst_mini_object_replace):
5219         If we're doing atomic operations, we might just as well use
5220         the proper way to get an atomic pointer.
5221
5222         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
5223         Clean up debugging.
5224
5225 2005-12-07  Michael Smith  <msmith@fluendo.com>
5226
5227         * gst/parse/grammar.y:
5228           Remove handling of { } for threads.
5229
5230 2005-12-06  David Schleef  <ds@schleef.org>
5231
5232         * libs/gst/base/gstbasetransform.c: speling fix.
5233
5234 2005-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5235
5236         * docs/libs/tmpl/gstdataprotocol.sgml:
5237         * docs/random/omega/testing/gstobject.c:
5238         * gst/gst.c:
5239         * gst/gstclock.c:
5240         * gst/gstelement.c:
5241         * gst/gstelementfactory.c:
5242         * gst/gsterror.c:
5243         * gst/gstevent.c:
5244         * gst/gstghostpad.c:
5245         * gst/gstinfo.c:
5246         * gst/gstpadtemplate.c:
5247         * gst/gstregistryxml.c:
5248         * gst/gsttaglist.c:
5249         * gst/gsttagsetter.c:
5250         * gst/gsttypefind.c:
5251         * gst/gstvalue.c:
5252         * libs/gst/base/gstbasesrc.c:
5253         * libs/gst/net/gstnetclientclock.c:
5254         * libs/gst/net/gstnettimeprovider.c:
5255         * plugins/elements/gstfakesrc.c:
5256         * plugins/elements/gstfdsrc.c:
5257         * plugins/elements/gstfilesrc.c:
5258         * plugins/elements/gstidentity.c:
5259         * plugins/elements/gstqueue.c:
5260         * plugins/elements/gsttypefindelement.c:
5261         * plugins/indexers/gstfileindex.c:
5262         * plugins/indexers/gstmemindex.c:
5263         * tests/check/gst/gsttag.c:
5264         * tests/old/examples/cutter/cutter.c:
5265         * tests/old/examples/mixer/mixer.c:
5266         * tests/old/examples/xml/runxml.c: (main):
5267         * tests/old/testsuite/caps/normalisation.c:
5268         * tests/old/testsuite/debug/global.c:
5269         * tests/old/testsuite/parse/parse1.c:
5270         * tools/gst-xmlinspect.c:
5271         * win32/common/dirent.c:
5272           expand tabs
5273
5274 === release 0.10.0 ===
5275
5276 2005-12-05   <thomas (at) apestaart (dot) org>
5277
5278         * configure.ac:
5279           releasing 0.10.0, "Maroilles"
5280
5281 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5282
5283         submitted by: Funda Wang <fundawang@linux.net.cn>
5284
5285         * po/LINGUAS:
5286         * po/zh_CN.po:
5287           added Chinese (Traditional) translation
5288
5289 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5290
5291         * docs/gst/gstreamer-sections.txt:
5292         * docs/libs/tmpl/gstdataprotocol.sgml:
5293         * docs/random/thomasvs/TODO:
5294         * gst/gstutils.c:
5295         * gst/gstutils.h:
5296           fix docs
5297
5298 2005-12-05  Andy Wingo  <wingo@pobox.com>
5299
5300         patch by: Wim Taymans <wim@fluendo.com>
5301
5302         * libs/gst/base/gstbasetransform.c
5303         (gst_base_transform_prepare_output_buf)
5304         (gst_base_transform_buffer_alloc):
5305         * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
5306         alloc_buffer_and_set_caps.
5307
5308         * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
5309         set_caps on the source pad.
5310         (gst_pad_alloc_buffer_and_set_caps): New function, does what
5311         alloc_buffer used to do. Fixes #322874.
5312
5313         * docs/gst/gstreamer-sections.txt: 
5314         * docs/design/part-negotiation.txt: 
5315         * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
5316         changes.
5317
5318 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5319
5320         patch by: Sebastien Moutte
5321
5322         * win32/MANIFEST:
5323         * win32/common/config.h.in:
5324         * win32/vs6/libgstcontroller.dsp:
5325           win32 build fixes
5326
5327 2005-12-05  Wim Taymans  <wim@fluendo.com>
5328
5329         * gst/gstcaps.c: (gst_caps_is_equal):
5330         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5331         (gst_fake_src_create):
5332         Back out previous code changes, leave doc updates, file bugs 
5333         instead. 
5334
5335 2005-12-05  Wim Taymans  <wim@fluendo.com>
5336
5337         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5338         (gst_fake_src_get_times), (gst_fake_src_create):
5339         * plugins/elements/gstfakesrc.h:
5340         Fix broken sync code.
5341
5342 2005-12-05  Wim Taymans  <wim@fluendo.com>
5343
5344         * gst/gstcaps.c: (gst_caps_is_equal):
5345         Comparing NULL against !NULL yields different caps, not a
5346         failure.
5347
5348 2005-12-05  Wim Taymans  <wim@fluendo.com>
5349
5350         * gst/gstpipeline.c:
5351         Fix small typo in docs.
5352
5353 2005-12-05  Andy Wingo  <wingo@pobox.com>
5354
5355         patch by: Thomas Vander Stichele  <thomas at apestaart dot org>
5356
5357         * gst/gst.c (init_post): remove hard-coded 0.9 location for
5358         registries/plugins with a MAJORMINOR one.
5359         (plugin_desc): Rename library from gstcoreleements to
5360         staticelements. Fixes #323222.
5361
5362 2005-12-05  Tim-Philipp Müller  <tim at centricular dot net>
5363
5364         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
5365           Change debug category to 'collectpads' from 'collect_pads'
5366           (fixes #323250).
5367
5368 2005-12-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5369
5370         patch by: Sebastien Moutte
5371
5372         * libs/gst/controller/gstinterpolation.c:
5373           use convert function for uint64/double
5374         * win32/vs6/libgstcontroller.dsp:
5375           link to GLib
5376
5377 2005-12-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5378
5379         * gst/gstutils.c: (gst_util_guint64_to_gdouble),
5380         (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
5381         * gst/gstutils.h:
5382         * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
5383           add tests that seem to show that the guint64/gdouble conversions
5384           are correct.
5385
5386 2005-12-02  Wim Taymans  <wim@fluendo.com>
5387
5388         * gst/gstregistry.c: (gst_registry_add_path):
5389         * gst/gstregistry.h:
5390         * gst/gstregistryxml.c:
5391         Fix docs again.
5392
5393 2005-12-02  Wim Taymans  <wim@fluendo.com>
5394
5395         * gst/gstutils.c: (gst_util_uint64_scale_int64),
5396         (gst_util_uint64_scale_int):
5397         Small cleanup.
5398
5399         * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
5400         Add debug log line.
5401
5402         * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
5403         Add FIXME.
5404
5405 2005-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5406
5407         * win32/MANIFEST:
5408         * win32/common/config.h:
5409         * win32/vs6/gstreamer.dsw:
5410         * win32/vs6/libgstcoreelements.dsp:
5411         * win32/vs6/libgstelements.dsp:
5412           renamed core elements plugin
5413
5414 2005-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5415
5416         * tools/gst-run.c: (compare_major_minor), (find_highest_version),
5417         (get_candidates):
5418           do piece-wise major/minor comparison so 0.9 < 0.10
5419           also allow .exe extensions for tools
5420
5421 2005-12-02  Michael Smith  <msmith@fluendo.com>
5422
5423         * gst/gst.c:
5424           Escape a % to make gtkdoc happier; bug 322958.
5425
5426 === release 0.9.7 ===
5427
5428 2005-12-01   <thomas (at) apestaart (dot) org>
5429
5430         * configure.ac:
5431           releasing 0.9.7, "My Dog Has No Nose"
5432
5433 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5434
5435         * common/gst-xmlinspect.py:
5436         * configure.ac:
5437         * docs/libs/tmpl/gstdataprotocol.sgml:
5438         * docs/random/release:
5439         * po/af.po:
5440         * po/az.po:
5441         * po/bg.po:
5442         * po/ca.po:
5443         * po/cs.po:
5444         * po/de.po:
5445         * po/en_GB.po:
5446         * po/fr.po:
5447         * po/it.po:
5448         * po/nb.po:
5449         * po/nl.po:
5450         * po/ru.po:
5451         * po/sq.po:
5452         * po/sr.po:
5453         * po/sv.po:
5454         * po/tr.po:
5455         * po/uk.po:
5456         * po/vi.po:
5457         * win32/common/config.h:
5458         * win32/common/config.h.in:
5459         * win32/vs6/gst_inspect.dsp:
5460         * win32/vs6/gst_launch.dsp:
5461         * win32/vs6/libgstbase.dsp:
5462         * win32/vs6/libgstelements.dsp:
5463         * win32/vs6/libgstreamer.dsp:
5464         * win32/vs7/GStreamer.vcproj:
5465         * win32/vs7/gst-inspect.vcproj:
5466         * win32/vs7/gst-launch.vcproj:
5467         * win32/vs7/libgstbase.vcproj:
5468           bump GST_MAJORMINOR to 0.10
5469           reset libtool version
5470
5471 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5472
5473         * po/LINGUAS:
5474         * po/bg.po:
5475           Added Bulgarian translation by (Alexander Shopov)
5476
5477 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5478
5479         * tests/check/gst/gstplugin.c:
5480           fix test
5481
5482 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5483
5484         * common/gst-xmlinspect.py:
5485         * common/gtk-doc-plugins.mak:
5486         * configure.ac:
5487         * docs/Makefile.am:
5488         * docs/gst/Makefile.am:
5489         * docs/gst/gstreamer-docs.sgml:
5490         * docs/gst/gstreamer-sections.txt:
5491         * docs/gst/gstreamer.types:
5492         * docs/gst/gstreamer.types.in:
5493         * docs/plugins/Makefile.am:
5494         * docs/plugins/gstreamer-plugins-docs.sgml:
5495         * docs/plugins/gstreamer-plugins-sections.txt:
5496         * docs/plugins/gstreamer-plugins.types:
5497         * docs/plugins/inspect.stamp:
5498         * docs/plugins/inspect/plugin-coreelements.xml:
5499         * docs/plugins/inspect/plugin-coreindexers.xml:
5500         * docs/plugins/scanobj-build.stamp:
5501         * gstreamer.spec.in:
5502         * plugins/elements/Makefile.am:
5503         * plugins/elements/gstelements.c:
5504         * plugins/elements/gstfakesink.c:
5505         * plugins/elements/gstfakesrc.c:
5506         * plugins/elements/gstfilesink.c:
5507         * plugins/elements/gstfilesrc.c:
5508         * plugins/elements/gstqueue.c:
5509         * plugins/indexers/Makefile.am:
5510         * plugins/indexers/gstindexers.c:
5511           document core plugins in a separate document just like all the
5512           others
5513           rename these plugins to something starting with core
5514
5515 2005-12-01  Andy Wingo  <wingo@pobox.com>
5516
5517         * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
5518         padding here before, but it missed the commit.
5519
5520 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
5521
5522         * libs/gst/controller/gstinterpolation.c:
5523           whitespace prices have crashed, we should feel free to use some now
5524           use gst_guint64_to_gdouble
5525
5526 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
5527
5528         * libs/gst/controller/gstcontroller.c:
5529         * libs/gst/controller/gsthelper.c:
5530         * libs/gst/controller/gstinterpolation.c:
5531         * libs/gst/controller/lib.c:
5532           wrap config.h include
5533
5534 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
5535
5536         * docs/gst/gstreamer-sections.txt:
5537           update docs
5538
5539 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
5540
5541         * plugins/elements/gstelements.c:
5542         * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
5543         (gst_fd_sink__class_init), (gst_fd_sink__init),
5544         (gst_fd_sink__chain), (gst_fd_sink__set_property),
5545         (gst_fd_sink__get_property):
5546         * plugins/elements/gstfdsink.h:
5547         * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
5548         (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
5549         (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
5550         (gst_fd_src_unlock), (gst_fd_src_set_property),
5551         (gst_fd_src_get_property), (gst_fd_src_create),
5552         (gst_fd_src_is_seekable), (gst_fd_src_get_size),
5553         (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
5554         (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
5555         (gst_fd_src_uri_handler_init):
5556         * plugins/elements/gstfdsrc.h:
5557         * plugins/elements/gstqueue.c: (gst_queue_get_type):
5558           more anal cleanup
5559
5560 2005-11-30  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5561
5562         * docs/gst/Makefile.am:
5563         * docs/gst/gstreamer.types.in:
5564         * gst/Makefile.am:
5565           fix the docs build
5566
5567 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5568
5569         * configure.ac:
5570         * gst/Makefile.am:
5571         * gst/gst.c:
5572         * gst/gstplugin.h:
5573         * gst/gstregistry.h:
5574         * tests/benchmarks/complexity.c:
5575         * tests/benchmarks/mass-elements.c:
5576         * tests/check/Makefile.am:
5577         * tools/Makefile.am:
5578         * tools/gst-inspect.c:
5579         * tools/gst-xmlinspect.c:
5580           various fixes to make
5581           --disable-nls --disable-registry --disable-loadsave
5582           --disable-parse --disable-gst-debug
5583           work and get the core .so down to 360444 bytes after stripping
5584
5585 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5586
5587         * Makefile.am:
5588         * configure.ac:
5589           descend into tests
5590         * docs/random/thomasvs/TODO:
5591         * tests/Makefile.am:
5592         * tests/README:
5593           add a README
5594
5595 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5596
5597         * win32/GStreamer.vcproj:
5598         * win32/MANIFEST:
5599         * win32/Makefile:
5600         * win32/Makefile.inspect:
5601         * win32/Makefile.launch:
5602         * win32/Makefile.register:
5603         * win32/README.txt:
5604         * win32/gst-inspect.vcproj:
5605         * win32/gst-launch.vcproj:
5606         * win32/gst-register.vcproj:
5607         * win32/gstelements.vcproj:
5608         * win32/gstgetbits.def:
5609         * win32/gstgetbits.vcproj:
5610         * win32/gstreamer-dbg.def:
5611         * win32/gstreamer.def:
5612         * win32/libgstbase.def:
5613         * win32/libgstbase.vcproj:
5614         * win32/link_oldruntime.c:
5615         * win32/mman.c:
5616         * win32/mman.h:
5617         * win32/mman.inl:
5618         * win32/msvc71.sln:
5619           move even more stuff, win32/ is nice and clean now
5620
5621 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5622
5623         * libs/gst/control/.cvsignore:
5624         * win32/MANIFEST:
5625         * win32/config.h:
5626         * win32/dirent.c:
5627         * win32/dirent.h:
5628         * win32/gstbytestream.def:
5629         * win32/gstbytestream.vcproj:
5630         * win32/gstconfig.h:
5631         * win32/gstenumtypes.c:
5632         * win32/gstenumtypes.h:
5633         * win32/gstoptimalscheduler.vcproj:
5634         * win32/gstversion.h:
5635         * win32/gtchar.h:
5636         * win32/testsuite/bins.vcproj:
5637         * win32/testsuite/bytestream.vcproj:
5638         * win32/testsuite/caps.vcproj:
5639         * win32/testsuite/cleanup.vcproj:
5640         * win32/testsuite/clock.vcproj:
5641         * win32/testsuite/debug.vcproj:
5642         * win32/testsuite/dlopen.vcproj:
5643         * win32/testsuite/dynparams.vcproj:
5644         * win32/testsuite/elements.vcproj:
5645         * win32/testsuite/ghostpads.vcproj:
5646         * win32/testsuite/indexers.vcproj:
5647         * win32/testsuite/negotiation.vcproj:
5648         * win32/testsuite/parse.vcproj:
5649         * win32/testsuite/plugin.vcproj:
5650         * win32/testsuite/refcounting.vcproj:
5651         * win32/testsuite/schedulers.vcproj:
5652         * win32/testsuite/states.vcproj:
5653         * win32/testsuite/tags.vcproj:
5654         * win32/testsuite/threads.vcproj:
5655           remove old win32 stuff that isn't maintained and should be
5656           reorganized
5657
5658 2005-11-30  Andy Wingo  <wingo@pobox.com>
5659
5660         * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
5661         loading the gst.interfaces python module bork.
5662
5663         * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
5664         available since GLib 2.2. Fixes #318031.
5665
5666 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5667
5668         * Makefile.am:
5669         * check/.cvsignore:
5670         * check/Makefile.am:
5671         * check/elements/.cvsignore:
5672         * check/elements/fakesrc.c:
5673         * check/elements/fdsrc.c:
5674         * check/elements/identity.c:
5675         * check/generic/.cvsignore:
5676         * check/generic/states.c:
5677         * check/gst-libs/.cvsignore:
5678         * check/gst-libs/controller.c:
5679         * check/gst-libs/gdp.c:
5680         * check/gst/.cvsignore:
5681         * check/gst/capslist.h:
5682         * check/gst/gst.c:
5683         * check/gst/gstbin.c:
5684         * check/gst/gstbuffer.c:
5685         * check/gst/gstbus.c:
5686         * check/gst/gstcaps.c:
5687         * check/gst/gstelement.c:
5688         * check/gst/gstevent.c:
5689         * check/gst/gstghostpad.c:
5690         * check/gst/gstiterator.c:
5691         * check/gst/gstmessage.c:
5692         * check/gst/gstminiobject.c:
5693         * check/gst/gstobject.c:
5694         * check/gst/gstpad.c:
5695         * check/gst/gstpipeline.c:
5696         * check/gst/gstplugin.c:
5697         * check/gst/gstsegment.c:
5698         * check/gst/gststructure.c:
5699         * check/gst/gstsystemclock.c:
5700         * check/gst/gsttag.c:
5701         * check/gst/gstutils.c:
5702         * check/gst/gstvalue.c:
5703         * check/net/.cvsignore:
5704         * check/net/gstnetclientclock.c:
5705         * check/net/gstnettimeprovider.c:
5706         * check/pipelines/.cvsignore:
5707         * check/pipelines/cleanup.c:
5708         * check/pipelines/simple_launch_lines.c:
5709         * check/pipelines/stress.c:
5710         * check/states/.cvsignore:
5711         * check/states/sinks.c:
5712         * configure.ac:
5713         * examples/Makefile.am:
5714         * examples/appreader/.cvsignore:
5715         * examples/appreader/Makefile.am:
5716         * examples/appreader/appreader.c:
5717         * examples/controller/.cvsignore:
5718         * examples/controller/Makefile.am:
5719         * examples/controller/audio-example.c:
5720         * examples/cutter/.cvsignore:
5721         * examples/cutter/Makefile.am:
5722         * examples/cutter/cutter.c:
5723         * examples/cutter/cutter.h:
5724         * examples/events/Makefile.am:
5725         * examples/events/seek.c:
5726         * examples/helloworld/.cvsignore:
5727         * examples/helloworld/Makefile.am:
5728         * examples/helloworld/helloworld.c:
5729         * examples/helloworld2/.cvsignore:
5730         * examples/helloworld2/Makefile.am:
5731         * examples/helloworld2/helloworld2.c:
5732         * examples/launch/.cvsignore:
5733         * examples/launch/Makefile.am:
5734         * examples/launch/mp3parselaunch.c:
5735         * examples/launch/mp3play:
5736         * examples/manual/.cvsignore:
5737         * examples/manual/Makefile.am:
5738         * examples/manual/extract.pl:
5739         * examples/metadata/Makefile.am:
5740         * examples/metadata/read-metadata.c:
5741         * examples/mixer/.cvsignore:
5742         * examples/mixer/Makefile.am:
5743         * examples/mixer/mixer.c:
5744         * examples/mixer/mixer.h:
5745         * examples/pingpong/.cvsignore:
5746         * examples/pingpong/Makefile.am:
5747         * examples/pingpong/pingpong.c:
5748         * examples/plugins/.cvsignore:
5749         * examples/plugins/Makefile.am:
5750         * examples/plugins/example.c:
5751         * examples/plugins/example.h:
5752         * examples/pwg/.cvsignore:
5753         * examples/pwg/Makefile.am:
5754         * examples/pwg/extract.pl:
5755         * examples/queue/.cvsignore:
5756         * examples/queue/Makefile.am:
5757         * examples/queue/queue.c:
5758         * examples/queue2/.cvsignore:
5759         * examples/queue2/Makefile.am:
5760         * examples/queue2/queue2.c:
5761         * examples/queue3/.cvsignore:
5762         * examples/queue3/Makefile.am:
5763         * examples/queue3/queue3.c:
5764         * examples/queue4/.cvsignore:
5765         * examples/queue4/Makefile.am:
5766         * examples/queue4/queue4.c:
5767         * examples/retag/.cvsignore:
5768         * examples/retag/Makefile.am:
5769         * examples/retag/retag.c:
5770         * examples/retag/transcode.c:
5771         * examples/thread/.cvsignore:
5772         * examples/thread/Makefile.am:
5773         * examples/thread/thread.c:
5774         * examples/typefind/.cvsignore:
5775         * examples/typefind/Makefile.am:
5776         * examples/typefind/typefind.c:
5777         * examples/xml/.cvsignore:
5778         * examples/xml/Makefile.am:
5779         * examples/xml/createxml.c:
5780         * examples/xml/runxml.c:
5781         * tests/Makefile.am:
5782         * tests/check/Makefile.am:
5783         * testsuite/.cvsignore:
5784         * testsuite/Makefile.am:
5785         * testsuite/Rules:
5786         * testsuite/caps/.cvsignore:
5787         * testsuite/caps/Makefile.am:
5788         * testsuite/caps/app_fixate.c:
5789         * testsuite/caps/audioscale.c:
5790         * testsuite/caps/caps.c:
5791         * testsuite/caps/caps.h:
5792         * testsuite/caps/caps_strings:
5793         * testsuite/caps/compatibility.c:
5794         * testsuite/caps/deserialize.c:
5795         * testsuite/caps/enumcaps.c:
5796         * testsuite/caps/eratosthenes.c:
5797         * testsuite/caps/filtercaps.c:
5798         * testsuite/caps/fixed.c:
5799         * testsuite/caps/fraction-convert.c:
5800         * testsuite/caps/fraction-multiply-and-zero.c:
5801         * testsuite/caps/intersect2.c:
5802         * testsuite/caps/intersection.c:
5803         * testsuite/caps/normalisation.c:
5804         * testsuite/caps/random.c:
5805         * testsuite/caps/renegotiate.c:
5806         * testsuite/caps/sets.c:
5807         * testsuite/caps/simplify.c:
5808         * testsuite/caps/string-conversions.c:
5809         * testsuite/caps/structure.c:
5810         * testsuite/caps/subtract.c:
5811         * testsuite/caps/union.c:
5812         * testsuite/debug/.cvsignore:
5813         * testsuite/debug/Makefile.am:
5814         * testsuite/debug/category.c:
5815         * testsuite/debug/commandline.c:
5816         * testsuite/debug/global.c:
5817         * testsuite/debug/output.c:
5818         * testsuite/debug/printf_extension.c:
5819         * testsuite/dlopen/.cvsignore:
5820         * testsuite/dlopen/Makefile.am:
5821         * testsuite/dlopen/dlopen_gst.c:
5822         * testsuite/dlopen/loadgst.c:
5823         * testsuite/elements/.cvsignore:
5824         * testsuite/elements/Makefile.am:
5825         * testsuite/elements/gst-inspect-check.in:
5826         * testsuite/elements/struct_i386.h:
5827         * testsuite/elements/struct_size.c:
5828         * testsuite/indexers/.cvsignore:
5829         * testsuite/indexers/Makefile.am:
5830         * testsuite/indexers/cache1.c:
5831         * testsuite/indexers/indexdump.c:
5832         * testsuite/parse/.cvsignore:
5833         * testsuite/parse/Makefile.am:
5834         * testsuite/parse/parse1.c:
5835         * testsuite/parse/parse2.c:
5836         * testsuite/plugin/.cvsignore:
5837         * testsuite/plugin/Makefile.am:
5838         * testsuite/plugin/README:
5839         * testsuite/plugin/dynamic.c:
5840         * testsuite/plugin/linked.c:
5841         * testsuite/plugin/loading.c:
5842         * testsuite/plugin/registry.c:
5843         * testsuite/plugin/static.c:
5844         * testsuite/plugin/static2.c:
5845         * testsuite/plugin/testplugin.c:
5846         * testsuite/plugin/testplugin2.c:
5847         * testsuite/plugin/testplugin2_s.c:
5848         * testsuite/plugin/testplugin_s.c:
5849         * testsuite/refcounting/.cvsignore:
5850         * testsuite/refcounting/Makefile.am:
5851         * testsuite/refcounting/bin.c:
5852         * testsuite/refcounting/element.c:
5853         * testsuite/refcounting/element_pad.c:
5854         * testsuite/refcounting/mainloop.c:
5855         * testsuite/refcounting/mem.c:
5856         * testsuite/refcounting/mem.h:
5857         * testsuite/refcounting/object.c:
5858         * testsuite/refcounting/pad.c:
5859         * testsuite/refcounting/sched.c:
5860         * testsuite/refcounting/thread.c:
5861         * testsuite/states/.cvsignore:
5862         * testsuite/states/Makefile.am:
5863         * testsuite/states/bin.c:
5864         * testsuite/states/locked.c:
5865         * testsuite/states/parent.c:
5866         * testsuite/threads/.cvsignore:
5867         * testsuite/threads/159566.c:
5868         * testsuite/threads/159852.c:
5869         * testsuite/threads/Makefile.am:
5870         * testsuite/threads/queue.c:
5871         * testsuite/threads/signals.c:
5872         * testsuite/threads/staticrec.c:
5873         * testsuite/threads/thread.c:
5874         * testsuite/threads/threadb.c:
5875         * testsuite/threads/threadc.c:
5876         * testsuite/threads/threadd.c:
5877         * testsuite/threads/threade.c:
5878         * testsuite/threads/threadf.c:
5879         * testsuite/threads/threadg.c:
5880         * testsuite/threads/threadh.c:
5881         * testsuite/threads/threadi.c:
5882           move all of these under tests
5883
5884 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5885
5886         * configure.ac:
5887         * tests/Makefile.am:
5888           fix distcheck
5889
5890 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5891
5892         * docs/gst/gstreamer-sections.txt:
5893         * tests/sched/.cvsignore:
5894         * tests/sched/Makefile.am:
5895         * tests/sched/cases/(fs-fs).xml:
5896         * tests/sched/cases/(fs-i-fs).xml:
5897         * tests/sched/cases/(fs-i-i-fs).xml:
5898         * tests/sched/cases/(fs-i-q[i-fs]).xml:
5899         * tests/sched/dynamic-pipeline.c:
5900         * tests/sched/interrupt1.c:
5901         * tests/sched/interrupt2.c:
5902         * tests/sched/interrupt3.c:
5903         * tests/sched/runtestcases:
5904         * tests/sched/runxml.c:
5905         * tests/sched/sched-stress.c:
5906         * tests/sched/sort.c:
5907         * tests/sched/testcases:
5908         * tests/sched/testcases1.tc:
5909         * tests/seeking/.cvsignore:
5910         * tests/seeking/Makefile.am:
5911         * tests/seeking/seeking1.c:
5912         * tests/threadstate/.cvsignore:
5913         * tests/threadstate/Makefile.am:
5914         * tests/threadstate/test1.c:
5915         * tests/threadstate/test2.c:
5916         * tests/threadstate/threadstate1.c:
5917         * tests/threadstate/threadstate2.c:
5918         * tests/threadstate/threadstate3.c:
5919         * tests/threadstate/threadstate4.c:
5920         * tests/threadstate/threadstate5.c:
5921           remove obsolete tests
5922         * configure.ac:
5923         * tests/bench-complexity.scm:
5924         * tests/bench-mass_elements.scm:
5925         * tests/complexity.c:
5926         * tests/complexity.gnuplot:
5927         * tests/instantiate/.cvsignore:
5928         * tests/instantiate/Makefile.am:
5929         * tests/instantiate/caps.c:
5930         * tests/mass_elements.c:
5931         * tests/network-clock-utils.scm:
5932         * tests/network-clock.scm:
5933         * tests/plot-data:
5934         First pass at cleaning up tests/ dir before moving the rest
5935         Combined with CVS surgery
5936
5937 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5938
5939         * po/POTFILES.in:
5940           queue has moved, update
5941
5942 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5943
5944         * docs/gst/gstreamer-sections.txt:
5945           remove double entries from the docs
5946         * gst/gst_private.h:
5947         * gst/gstinfo.c: (_gst_debug_init):
5948           remove the THREAD debug category
5949         * gst/Makefile.am:
5950         * gst/gstqueue.c:
5951         * gst/gstqueue.h:
5952         * docs/gst/gstreamer.types:
5953         * plugins/elements/gstqueue.c: (gst_queue_get_type),
5954         (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
5955           completely move queue and fix up debugging categories
5956
5957 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5958
5959         * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
5960           make initialization portable, using LL is not
5961
5962 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5963
5964         * win32/common/gstconfig.h:
5965           add large padding
5966
5967 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5968
5969         * win32/common/libgstreamer.def:
5970           rename symbols; sort base section
5971
5972 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5973
5974         * gst/gstclock.c: (do_linear_regression):
5975           remove crack non-portable handrolled DEBUG macro
5976
5977 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5978
5979         * docs/random/release:
5980           update notes
5981         * win32/common/gstenumtypes.c: (register_gst_object_flags),
5982         (gst_object_flags_get_type), (register_gst_bin_flags),
5983         (gst_bin_flags_get_type), (register_gst_buffer_flag),
5984         (gst_buffer_flag_get_type), (register_gst_bus_flags),
5985         (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
5986         (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
5987         (gst_caps_flags_get_type), (register_gst_clock_return),
5988         (gst_clock_return_get_type), (register_gst_clock_entry_type),
5989         (gst_clock_entry_type_get_type), (register_gst_clock_flags),
5990         (gst_clock_flags_get_type), (register_gst_state),
5991         (gst_state_get_type), (register_gst_state_change_return),
5992         (gst_state_change_return_get_type), (register_gst_state_change),
5993         (gst_state_change_get_type), (register_gst_element_flags),
5994         (gst_element_flags_get_type), (register_gst_core_error),
5995         (gst_core_error_get_type), (register_gst_library_error),
5996         (gst_library_error_get_type), (register_gst_resource_error),
5997         (gst_resource_error_get_type), (register_gst_stream_error),
5998         (gst_stream_error_get_type), (register_gst_event_type_flags),
5999         (gst_event_type_flags_get_type), (register_gst_event_type),
6000         (gst_event_type_get_type), (register_gst_seek_type),
6001         (gst_seek_type_get_type), (register_gst_seek_flags),
6002         (gst_seek_flags_get_type), (register_gst_format),
6003         (gst_format_get_type), (register_gst_index_certainty),
6004         (gst_index_certainty_get_type), (register_gst_index_entry_type),
6005         (gst_index_entry_type_get_type),
6006         (register_gst_index_lookup_method),
6007         (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
6008         (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
6009         (gst_index_resolver_method_get_type), (register_gst_index_flags),
6010         (gst_index_flags_get_type), (register_gst_debug_level),
6011         (gst_debug_level_get_type), (register_gst_debug_color_flags),
6012         (gst_debug_color_flags_get_type), (register_gst_iterator_result),
6013         (gst_iterator_result_get_type), (register_gst_iterator_item),
6014         (gst_iterator_item_get_type), (register_gst_message_type),
6015         (gst_message_type_get_type), (register_gst_mini_object_flags),
6016         (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
6017         (gst_pad_link_return_get_type), (register_gst_flow_return),
6018         (gst_flow_return_get_type), (register_gst_activate_mode),
6019         (gst_activate_mode_get_type), (register_gst_pad_direction),
6020         (gst_pad_direction_get_type), (register_gst_pad_flags),
6021         (gst_pad_flags_get_type), (register_gst_pad_presence),
6022         (gst_pad_presence_get_type), (register_gst_pad_template_flags),
6023         (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
6024         (gst_pipeline_flags_get_type), (register_gst_plugin_error),
6025         (gst_plugin_error_get_type), (register_gst_plugin_flags),
6026         (gst_plugin_flags_get_type), (register_gst_rank),
6027         (gst_rank_get_type), (register_gst_query_type),
6028         (gst_query_type_get_type), (register_gst_tag_merge_mode),
6029         (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
6030         (gst_tag_flag_get_type), (register_gst_task_state),
6031         (gst_task_state_get_type), (register_gst_alloc_trace_flags),
6032         (gst_alloc_trace_flags_get_type),
6033         (register_gst_type_find_probability),
6034         (gst_type_find_probability_get_type), (register_gst_uri_type),
6035         (gst_uri_type_get_type), (register_gst_parse_error),
6036         (gst_parse_error_get_type):
6037         * win32/common/gstenumtypes.h:
6038         * win32/common/gstversion.h:
6039           update visual studio generated files
6040
6041 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6042
6043         * win32/vs6/libgstbase.dsp:
6044         * win32/vs6/libgstelements.dsp:
6045           update project files for new locations
6046
6047 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6048
6049         * Makefile.am:
6050           remove some files
6051         * README:
6052           reinstate and update
6053         * DEVEL:
6054         * REQUIREMENTS:
6055           removed
6056         * LICENSE:
6057         * docs/random/LICENSE:
6058           moved to random
6059
6060 2005-11-30  Edward Hervey  <edward@fluendo.com>
6061
6062         * gst/gsttypefind.c: (gst_type_find_register):
6063         * gst/gsttypefind.h:
6064         * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
6065         (gst_type_find_factory_dispose):
6066         * gst/gsttypefindfactory.h:
6067         Fix memory leak in GstTypeFindFactory.
6068
6069 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6070
6071         * gst/gst.c:
6072         * plugins/elements/Makefile.am:
6073         * plugins/elements/gstelements.c:
6074         * plugins/elements/gstqueue.c:
6075           move queue from core to the elements plugin
6076
6077 2005-11-29  Andy Wingo  <wingo@pobox.com>
6078
6079         * libs/gst/base/gstbasetransform.h: 
6080         * libs/gst/base/gstbasesrc.h: 
6081         * libs/gst/base/gstbasesink.h: en-LARGE the padding.
6082
6083         * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
6084         of pointers by which to pad very extensible base classes (like the
6085         ones in libs/gst/base).
6086
6087 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6088
6089         * docs/gst/gstreamer-docs.sgml:
6090         * docs/gst/gstreamer-sections.txt:
6091         * docs/libs/gstreamer-libs-docs.sgml:
6092         * docs/libs/gstreamer-libs-sections.txt:
6093           moving documentation from core to lib
6094
6095 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6096
6097         * check/Makefile.am:
6098         * configure.ac:
6099         * docs/gst/Makefile.am:
6100         * gst/Makefile.am:
6101         * gst/base/.cvsignore:
6102         * gst/base/Makefile.am:
6103         * gst/base/README:
6104         * gst/base/gstadapter.c:
6105         * gst/base/gstadapter.h:
6106         * gst/base/gstbasesink.c:
6107         * gst/base/gstbasesink.h:
6108         * gst/base/gstbasesrc.c:
6109         * gst/base/gstbasesrc.h:
6110         * gst/base/gstbasetransform.c:
6111         * gst/base/gstbasetransform.h:
6112         * gst/base/gstcollectpads.c:
6113         * gst/base/gstcollectpads.h:
6114         * gst/base/gstpushsrc.c:
6115         * gst/base/gstpushsrc.h:
6116         * gst/base/gsttypefindhelper.c:
6117         * gst/base/gsttypefindhelper.h:
6118         * gst/check/Makefile.am:
6119         * gst/check/gstcheck.c:
6120         * gst/check/gstcheck.h:
6121         * gst/net/Makefile.am:
6122         * gst/net/gstnet.h:
6123         * gst/net/gstnetclientclock.c:
6124         * gst/net/gstnetclientclock.h:
6125         * gst/net/gstnettimepacket.c:
6126         * gst/net/gstnettimepacket.h:
6127         * gst/net/gstnettimeprovider.c:
6128         * gst/net/gstnettimeprovider.h:
6129         * libs/gst/Makefile.am:
6130         * libs/gst/base/Makefile.am:
6131         * libs/gst/base/gstbasetransform.c:
6132         * libs/gst/check/Makefile.am:
6133         * plugins/elements/Makefile.am:
6134         * po/POTFILES.in:
6135           CVS surgery + support to move base, check, and net out of gst
6136           and into libs/gst
6137
6138 2005-11-29  Andy Wingo  <wingo@pobox.com>
6139
6140         * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
6141
6142         * gst/gststructure.h (struct _GstStructure): Only one pointer of
6143         padding.
6144
6145         * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
6146
6147         * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
6148
6149         * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
6150
6151         * gst/gstobject.h: (struct _GstObject): Only one pointer of
6152         padding; reduces object size by about 30%. We don't expect
6153         anything else to go into gstobject.
6154
6155         * gst/gstminiobject.h (struct _GstMiniObject)
6156         (struct _GstMiniObjectClass): Only one pointer of padding; the
6157         payload is only a pointer and two ints anyway. For the class there
6158         are only two methods as well.
6159         
6160         * gst/gstelement.h (struct _GstElementClass): Removed
6161         the state_changed signal callback, it is not used.
6162
6163 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6164
6165         * docs/gst/gstreamer.types:
6166           fix includes, though they are a little dinky
6167
6168 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6169
6170         * check/Makefile.am:
6171           look in the right place for elements, a lot more chance of
6172           success
6173         * gst/Makefile.am:
6174           remove indexers and elements subdirs
6175         * plugins/Makefile.am:
6176           make indexers conditional
6177
6178 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6179
6180         * Makefile.am:
6181         * configure.ac:
6182         * plugins/elements/Makefile.am:
6183         * plugins/elements/gstcapsfilter.c:
6184         * plugins/elements/gstfilesink.c:
6185         * plugins/elements/gstfilesrc.c:
6186         * plugins/elements/gstidentity.c:
6187         * plugins/indexers/Makefile.am:
6188           do CVS surgery and related build fixery to move elements
6189           and indexers in a new gstreamer/plugins directory, out of the
6190           gst/ directory
6191
6192 2005-11-29  Andy Wingo  <wingo@pobox.com>
6193
6194         * check/Makefile.am:
6195         * pkgconfig/gstreamer-net-uninstalled.pc.in:
6196         * pkgconfig/gstreamer-net.pc.in:
6197         * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
6198         #322257.
6199
6200 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6201
6202         * tools/Makefile.am:
6203         * tools/gst-complete.1.in:
6204         * tools/gst-complete.c:
6205         * tools/gst-compprep.1.in:
6206         * tools/gst-compprep.c:
6207           removing -compprep and -complete
6208
6209 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6210
6211         * gst/gstevent.c: (gst_event_new_new_segment),
6212         (gst_event_parse_new_segment):
6213         * gst/gstevent.h:
6214           fix #320529 - clean up new_segment API and structure.
6215           Let's hope everyone was using the methods, and not the structure.
6216
6217 2005-11-29  Edward Hervey  <edward@fluendo.com>
6218
6219         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6220         (gst_base_sink_event), (gst_base_sink_do_sync),
6221         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
6222         Properly handle non GST_FORMAT_TIME segment
6223         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
6224         Properly handle non GST_FORMAT_TIME segment
6225         * gst/gstsegment.c:
6226         This function is valid if the accumulator is 0 and the format
6227         is different from the requested format.
6228         
6229 2005-11-29  Jan Schmidt  <thaytan@mad.scientist.com>
6230
6231         * docs/gst/gstreamer-sections.txt:
6232         Add gst_query_new_seeking and gst_query_parse_seeking to the
6233         docs.
6234
6235 2005-11-29  Jan Schmidt  <thaytan@mad.scientist.com>
6236
6237         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
6238           Treat a pad alloc with new caps the same as if we were not
6239           negotiated, in order to allow a changing upstream output
6240           to produce a new format of data.
6241
6242 2005-11-29  Edward Hervey  <edward@fluendo.com>
6243
6244         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
6245         (gst_base_transform_event), (gst_base_transform_eventfunc):
6246         The event virtual method is now properly implemented, with a default
6247         handler
6248         Sub classes should call the parent_class event method. They should
6249         return FALSE if they had a problem handling the given event, or don't
6250         want GstBaseTransform to send that even downstream
6251         * gst/elements/gstidentity.c: (gst_identity_class_init),
6252         (gst_identity_init), (gst_identity_event),
6253         (gst_identity_transform_ip), (gst_identity_set_property),
6254         (gst_identity_get_property):
6255         * gst/elements/gstidentity.h:
6256         Added the single-segment boolean property.
6257         If set to TRUE, it will output a single segment of data, starting from
6258         0, will eat up all incoming newsegment, and modify the timestamp of the
6259         buffers accordingly
6260
6261 2005-11-29  Tim-Philipp Müller  <tim at centricular dot net>
6262
6263         * gst/gstghostpad.c: (gst_proxy_pad_get_target):
6264           Don't ref NULL target pad (#322751). Improve docs.
6265
6266 2005-11-29  Michael Smith  <msmith@fluendo.com>
6267
6268         * gst/gstregistryxml.c: (load_plugin):
6269           Don't crash if we failed to load a feature from a plugin. 
6270
6271 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6272
6273         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
6274         (GST_START_TEST):
6275           use more check API and less GLib API
6276
6277 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6278
6279         * Makefile.am:
6280           don't run checks if we don't have check
6281         * common/check.mak:
6282           remove the registry when running make torture
6283         * docs/gst/gstreamer-sections.txt:
6284           remove second multiply
6285         * gst/gstqueue.c: (gst_queue_loop):
6286           fix a compile warning when disabling debug
6287
6288 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
6289
6290         * gst/gstinfo.h:
6291         Hey! Let's print the pad name if the pointer != NULL instead
6292         of when it == NULL :-)
6293
6294 2005-11-28  Wim Taymans  <wim@fluendo.com>
6295
6296         * check/gst/gstutils.c: (GST_START_TEST):
6297         Updated check, add some scaling accuracy checking code.
6298
6299         * gst/gstutils.c: (gst_util_div128_64),
6300         (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
6301         (gst_util_uint64_scale_int):
6302         Fix 6 times faster division code. Optimize for common 
6303         1/1 and less common X/1 cases.
6304
6305 2005-11-28  Wim Taymans  <wim@fluendo.com>
6306
6307         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6308         More checks.
6309
6310         * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
6311         (do_linear_regression), (gst_clock_add_observation):
6312         Cleanups.
6313         Release lock when the clock cannot be slaved.
6314         Catch the case where the regression returned an invalid denominator.
6315
6316         * gst/gstutils.c: (gst_util_div128_64_iterate),
6317         (gst_util_div128_64), (gst_util_uint64_scale_int64),
6318         (gst_util_uint64_scale), (gst_util_uint64_scale_int):
6319         Add protentially more performant non-iterative 128/64 divide function
6320         that unfortunatly does not work yet.
6321         Shortcut the trivial 0/X = 0 case.
6322         Remove the warnings on overflow.
6323
6324 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6325
6326         * gst/gstplugin.c: (gst_plugin_register_func):
6327           everything causing a plugin not to load should be at least a WARNING
6328
6329 2005-11-28  Stefan Kost  <ensonic@users.sf.net>
6330
6331         * docs/random/ensonic/dparams.txt:
6332           some TODOs for the next dev cycle
6333         * libs/gst/controller/gstcontroller.c:
6334         (gst_controlled_property_set_interpolation_mode),
6335         (gst_controlled_property_new):
6336         * libs/gst/controller/gstcontroller.h:
6337           use base type to assign acccessor functions
6338
6339 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
6340
6341         * check/Makefile.am:
6342         Oops, that should have been top_srcdir
6343
6344 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
6345
6346         * check/Makefile.am:
6347         * check/elements/fdsrc.c: (GST_START_TEST):
6348         Use a cmdline define to specify the location of a file to use for
6349         testing, to avoid breaking distcheck.
6350
6351 2005-11-28  Andy Wingo  <wingo@pobox.com>
6352
6353         * gst/gstpad.c (fixate_value): Use array functions for arrays.
6354
6355 2005-11-28  Edward Hervey  <edward@fluendo.com>
6356
6357         * tools/gst-launch.c: (main):
6358         Clarify the output strings, makes it easier to translate.
6359         Fixes #322626
6360
6361 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6362
6363         * gst/Makefile.am:
6364           don't try and build net if we don't even have <sys/socket.h>
6365
6366 2005-11-27  Jan Schmidt  <thaytan@mad.scientist.com>
6367
6368         * check/Makefile.am:
6369         * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
6370         (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
6371           Add tests for fdsrc seekability
6372
6373         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6374         (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
6375         (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
6376         (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
6377         * gst/elements/gstfdsrc.h:
6378           fdsrc should not be a 'live' source.
6379           Implement seeking on seekable fd's.
6380
6381         * gst/gstquery.c: (gst_query_new_seeking),
6382         (gst_query_parse_seeking):
6383         * gst/gstquery.h:
6384           Implement SEEKING query functions: 
6385             *_new_seeking and *_parse_seeking
6386
6387 2005-11-27  Stefan Kost  <ensonic@users.sf.net>
6388
6389         * gst/gstelement.c: (gst_element_dispose):
6390           don't loop forever
6391
6392         * gst/gstiterator.c:
6393         * gst/gststructure.c:
6394           doc fixes
6395
6396         * libs/gst/controller/gstcontroller.c:
6397         (gst_controlled_property_set_interpolation_mode):
6398         * libs/gst/controller/gstcontroller.h:
6399         * libs/gst/controller/gstinterpolation.c:
6400         (interpolate_none_get_enum_value_array):
6401           support controlling enums
6402
6403 2005-11-27  Tim-Philipp Müller  <tim at centricular dot net>
6404
6405         * gst/gstvalue.c:
6406           Improve documentation for gst_value_union().
6407
6408         * gst/gstvalue.h:
6409           Change return value for union, intersect and subtract functions
6410           from gint to gboolean.
6411
6412 2005-11-27  Tim-Philipp Müller  <tim at centricular dot net>
6413
6414         * gst/gstvalue.c: (gst_value_serialize_any_list),
6415         (gst_value_transform_any_list_string),
6416         (gst_value_deserialize_list), (gst_value_deserialize_array),
6417         (gst_value_set_int_range), (gst_value_deserialize_int_range),
6418         (gst_value_set_double_range), (gst_value_deserialize_double_range),
6419         (gst_value_set_fraction_range_full),
6420         (gst_value_deserialize_fraction_range),
6421         (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
6422         (gst_value_deserialize_boolean),
6423         (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
6424         (gst_value_serialize_float), (gst_value_deserialize_float),
6425         (gst_string_wrap), (gst_value_deserialize_string),
6426         (gst_value_deserialize_enum), (gst_value_deserialize_flags),
6427         (gst_value_union_int_range_int_range),
6428         (gst_value_intersect_int_range_int_range),
6429         (gst_value_intersect_double_range_double_range),
6430         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
6431         (gst_value_subtract_int_range_int_range),
6432         (gst_value_subtract_double_double_range),
6433         (gst_value_subtract_double_range_double_range),
6434         (gst_value_deserialize_fraction):
6435         * gst/gstvalue.h:
6436           Use gint, gdouble and gchar in our API instead of int, double and
6437           char (and make usage in gstvalue.c more consistent).
6438
6439 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6440
6441         * check/Makefile.am:
6442         * libs/gst/controller/Makefile.am:
6443         * libs/gst/dataprotocol/Makefile.am:
6444           fix up Makefile.am and remove GST_ENABLE_NEW
6445
6446 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6447
6448         * configure.ac:
6449         * gst/Makefile.am:
6450         * gst/base/Makefile.am:
6451         * gst/check/Makefile.am:
6452         * gst/elements/Makefile.am:
6453         * gst/net/Makefile.am:
6454           update LDFLAGS use some more
6455
6456 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6457
6458         * common/m4/gst-doc.m4:
6459           Fixes #312589
6460
6461 2005-11-26  Edward Hervey  <edward@fluendo.com>
6462
6463         * gst/gstpluginfeature.c: (gst_plugin_feature_load):
6464         This shouldn't issue a g_warning since it returns NULL if it
6465         couldn't find the plugin, and all functions using this behave
6466         properly on a NULL return. Switching to a GST_WARNING.
6467
6468 2005-11-25  Jan Schmidt  <thaytan@mad.scientist.com>
6469
6470         * gst/gstbin.c: (gst_bin_handle_message_func):
6471         Don't leak clock messages.
6472
6473 2005-11-25  Wim Taymans  <wim@fluendo.com>
6474
6475         * gst/gstutils.c: (gst_util_uint64_scale_int64),
6476         (gst_util_uint64_scale_int):
6477         Optimisations, remove unneeded vars.
6478
6479 2005-11-25  Wim Taymans  <wim@fluendo.com>
6480
6481         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6482         Added more checks for the high precision uint64 cases.
6483
6484         * gst/gstutils.c: (gst_util_uint64_scale_int64),
6485         (gst_util_uint64_scale), (gst_util_uint64_scale_int):
6486         Implement high precision (guint64 * guint64) / guint64.
6487
6488 2005-11-24  Wim Taymans  <wim@fluendo.com>
6489
6490         * gst/base/gstbasesrc.c: (gst_base_src_query):
6491         Fix wrong percentage query.
6492
6493         * gst/gstutils.c: (gst_util_uint64_scale),
6494         (gst_util_uint64_scale_int):
6495         Add some more common cases that can be handled 
6496         efficiently to _scale.
6497
6498 2005-11-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6499
6500         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
6501         (gst_mini_object_suite):
6502           don't use check calls from threads; check probably isn't
6503           threadsafe and using a lock to make it threadsafe would
6504           defeat the purpose of this check
6505         * gst/check/gstcheck.c:
6506         * gst/check/gstcheck.h:
6507           use GST_DEBUG some more
6508
6509 2005-11-24  Wim Taymans  <wim@fluendo.com>
6510
6511         * gst/gstutils.c: (gst_util_uint64_scale),
6512         (gst_util_uint64_scale_int):
6513         Chain trivial case to _scale_int.
6514
6515 2005-11-24  Wim Taymans  <wim@fluendo.com>
6516
6517         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6518         Added test for scaling.
6519
6520         * gst/gstclock.h:
6521         Small doc fix.
6522
6523         * gst/gstutils.c: (gst_util_uint64_scale_int):
6524         Implemented high precision scaling code.
6525
6526 2005-11-24  Stefan Kost  <ensonic@users.sf.net>
6527
6528         * gst/gstinfo.h:
6529           do not crash on pad==NULL
6530
6531 2005-11-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6532
6533         Patch by: Stefan Kost
6534
6535         * common/gtk-doc.mak:
6536         * docs/gst/Makefile.am:
6537         * docs/libs/Makefile.am:
6538           Fix distcheck issues for the libraries docs build
6539           Closes #319599.
6540
6541 2005-11-24  Michael Smith <msmith@fluendo.com>
6542
6543         * docs/manual/basics-helloworld.xml:
6544           Fix bug #315027: memory leak in example code in docs.
6545
6546 2005-11-24  Michael Smith <msmith@fluendo.com>
6547
6548         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6549           Unlock the PREROLL_LOCK in a failure case.
6550
6551 2005-11-24  Wim Taymans  <wim@fluendo.com>
6552
6553         * docs/gst/gstreamer-sections.txt:
6554         * gst/base/gstadapter.h:
6555         * gst/base/gstbasesink.h:
6556         * gst/base/gstbasesrc.h:
6557         * gst/base/gstbasetransform.h:
6558         * gst/base/gstpushsrc.h:
6559         * gst/elements/gstfakesink.h:
6560         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
6561         * gst/elements/gstfakesrc.h:
6562         * gst/elements/gstfilesink.h:
6563         * gst/elements/gstfilesrc.h:
6564         * gst/gst.c:
6565         * gst/gstbin.c:
6566         * gst/gstbuffer.c: (_gst_buffer_copy):
6567         * gst/gstbus.h:
6568         * gst/gstcaps.c:
6569         * gst/gstchildproxy.c:
6570         * gst/gstclock.c:
6571         * gst/gstelement.c:
6572         * gst/gstelementfactory.c:
6573         * gst/gstelementfactory.h:
6574         * gst/gstevent.c:
6575         * gst/gstghostpad.h:
6576         * gst/gstindex.h:
6577         * gst/gstinterface.h:
6578         * gst/gstminiobject.c:
6579         * gst/gstminiobject.h:
6580         * gst/gstpad.c:
6581         * gst/gstpad.h:
6582         * gst/gstpadtemplate.h:
6583         * gst/gstpipeline.h:
6584         * gst/gstpluginfeature.h:
6585         * gst/gstquery.h:
6586         * gst/gstqueue.h:
6587         * gst/gsttaglist.c:
6588         * gst/gsttaglist.h:
6589         * gst/gsttagsetter.c:
6590         * gst/gsttagsetter.h:
6591         * gst/gsttrace.c:
6592         * gst/gsttrace.h:
6593         * gst/gsttypefind.h:
6594         * gst/gsturi.h:
6595         * gst/gstvalue.c:
6596         * gst/net/gstnetclientclock.c:
6597         * gst/net/gstnetclientclock.h:
6598         * gst/net/gstnettimepacket.c:
6599         * gst/net/gstnettimeprovider.c:
6600         * gst/net/gstnettimeprovider.h:
6601         Doc fixes.
6602
6603 2005-11-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6604
6605         * configure.ac: back to HEAD
6606
6607 === release 0.9.6 ===
6608
6609 2005-11-23  Thomas Vander Stichele <thomas at apestaart dot org>
6610
6611         * configure.ac:
6612           releasing 0.9.6, "Always On Time"
6613
6614 2005-11-23  Wim Taymans  <wim@fluendo.com>
6615
6616         * docs/gst/gstreamer-sections.txt:
6617         * gst/glib-compat.c:
6618         * gst/gsttagsetter.c:
6619         * gst/gstvalue.c:
6620         * gst/net/gstnetclientclock.c:
6621         * gst/net/gstnettimepacket.h:
6622         Doc updates.
6623
6624 2005-11-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6625
6626         * docs/faq/using.xml:
6627         * docs/libs/tmpl/gstcontrol.sgml:
6628         * docs/manual/advanced-dparams.xml:
6629         * docs/manual/appendix-checklist.xml:
6630         * docs/manual/basics-elements.xml:
6631         * docs/pwg/other-source.xml:
6632         * docs/random/moving-plugins:
6633         * gst/gstpad.c:
6634         * tools/gst-launch.1.in:
6635           remove mentions of sinesrc
6636
6637 2005-11-23  Michael Smith <msmith@fluendo.com>
6638
6639         * docs/gst/gstreamer-sections.txt:
6640           Update for new API and API changes.
6641         * gst/gstobject.h:
6642           Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
6643         * gst/gstvalue.c:
6644           Documentation typo fix.
6645         * gst/net/gstnettimepacket.c:
6646           Documentation fixes for arguments.
6647
6648 2005-11-23  Jan Schmidt  <thaytan@mad.scientist.com>
6649
6650         * gst/gststructure.c: (gst_structure_get_fraction),
6651         (gst_structure_parse_value),
6652         (gst_structure_fixate_field_nearest_fraction):
6653         * gst/gststructure.h:
6654         * gst/gstutils.c: (gst_util_uint64_scale_int):
6655         * gst/gstutils.h:
6656         * scripts/update-funcnames:
6657         API Changes. 
6658         Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
6659         Make gst_structure_fixate_field_nearest_fraction take a numerator
6660         and denominator argument instead of a GValue
6661         add gst_structure_get_fraction helper function.
6662
6663 2005-11-23  Wim Taymans  <wim@fluendo.com>
6664
6665         * docs/design/part-TODO.txt:
6666         Update TODO.
6667
6668         * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
6669         * gst/net/gstnetclientclock.h:
6670         Use parent fields for timeout and window_size.
6671
6672 2005-11-23  Andy Wingo  <wingo@pobox.com>
6673
6674         * check/net/gstnetclientclock.c (test_functioning): Adjust to
6675         rate_num/rate_denom change.
6676
6677         * gst/net/gstnetclientclock.c
6678         (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
6679         OBJECT_LOCK. Don't call add_observation with the lock.
6680
6681         * gst/gstclock.c (gst_clock_init): Initialize the rate as a
6682         fraction.
6683         (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
6684         rate fraction.
6685         (gst_clock_set_calibration, gst_clock_get_calibration): Change to
6686         deal with rate as a fraction whose numerator and denominator are
6687         GstClockTime values.
6688         (gst_clock_set_master): Only use the OBJECT_LOCK to set the
6689         master; the other fields are protected by the SLAVE_LOCK.
6690         (do_linear_regression): Note that this must be called with the
6691         SLAVE_LOCK.
6692         (gst_clock_add_observation): Take the SLAVE_LOCK, not the
6693         OBJECT_LOCK. Call set_calibration instead of touching the
6694         variables directly.
6695         (gst_clock_set_property, gst_clock_get_property): Protect
6696         master/slave parameters with the SLAVE_LOCK.
6697
6698         * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
6699         rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
6700         note that all of the instance variables that add_observation and
6701         the set_master functions use are protected by that lock and not
6702         the OBJECT_LOCK.
6703         (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
6704
6705         * gst/gstclock.c (gst_clock_add_observation): No longer requires
6706         the caller to take the object lock.
6707
6708 2005-11-23  Wim Taymans  <wim@fluendo.com>
6709
6710         * gst/gsterror.c: (_gst_core_errors_init):
6711         * gst/gsterror.h:
6712         Add error for clock stuff.
6713
6714         * gst/gstpipeline.c: (gst_pipeline_change_state),
6715         (gst_pipeline_set_clock):
6716         Post clock error when clock cannot be used in a pipeline.
6717
6718 2005-11-23  Stefan Kost  <ensonic@users.sf.net>
6719
6720         * docs/gst/gstreamer-sections.txt:
6721           make two symbols from gstinfo private for the docs
6722         * gst/base/gstcollectpads.h:
6723         * gst/gstutils.c:
6724           fix doc typos, update docs
6725
6726 2005-11-22  Wim Taymans  <wim@fluendo.com>
6727
6728         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6729         (gst_base_sink_wait), (gst_base_sink_do_sync),
6730         (gst_base_sink_handle_event):
6731         * gst/base/gstbasesink.h:
6732         No need to store the clock, the parent element class already
6733         has it.
6734
6735         * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
6736         Updates for clock_set returning a gboolean
6737
6738         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
6739         (gst_clock_id_wait_async), (gst_clock_class_init),
6740         (gst_clock_init), (gst_clock_finalize),
6741         (gst_clock_get_internal_time), (gst_clock_get_time),
6742         (gst_clock_slave_callback), (gst_clock_set_master),
6743         (gst_clock_get_master), (do_linear_regression),
6744         (gst_clock_add_observation), (gst_clock_set_property),
6745         (gst_clock_get_property):
6746         * gst/gstclock.h:
6747         Implement master/slave. When setting a clock as a slave, a
6748         periodic timeout is scheduled to sample master and slave times.
6749         Then the slave clock is recalibrated to match offset and rate
6750         of the master clock.
6751         Update logging a bit.
6752         Add flag so that a clock can state that is cannot be slaved to
6753         another clock.
6754
6755         * gst/gstelement.c: (gst_element_set_clock):
6756         * gst/gstelement.h:
6757         The set clock returns a gboolean for when an element cannot
6758         deal with the selected clock in the pipeline. 
6759
6760         * gst/gstpipeline.c: (gst_pipeline_change_state),
6761         (gst_pipeline_set_clock):
6762         * gst/gstpipeline.h:
6763         Handle the case where the selected clock cannot be set on
6764         the pipeline.
6765
6766         * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
6767         (gst_net_client_clock_init), (gst_net_client_clock_finalize),
6768         (gst_net_client_clock_set_property),
6769         (gst_net_client_clock_get_property),
6770         (gst_net_client_clock_observe_times):
6771         * gst/net/gstnetclientclock.h:
6772         Use regression code in GstClock parent, remove duplicated
6773         functionality.
6774
6775 2005-11-22  Michael Smith <msmith@fluendo.com>
6776
6777         * gst/gstutils.c: (gst_util_clock_time_scale):
6778         * gst/gstutils.h:
6779         * docs/gst/gstreamer-sections.txt:
6780           Rename method to have extra underscore.
6781
6782 2005-11-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6783
6784         * gst/elements/Makefile.am:
6785         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
6786         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
6787         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
6788         (gst_fake_src_init), (gst_fake_src_prepare_buffer),
6789         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
6790         * gst/elements/gstfakesrc.h:
6791         * gst/gstqueue.c: (queue_leaky_get_type):
6792           correctly fix GEnumValues so that nick is the short lowercase
6793           dashed tag
6794         * tools/gst-inspect.c: (print_element_properties_info):
6795           also show the nick, since it's useful to use from parse_launch
6796           syntax
6797           Fixes #322139
6798
6799 2005-11-22  Michael Smith <msmith@fluendo.com>
6800
6801         * gst/gstutils.c: (gst_util_clocktime_scale):
6802         * gst/gstutils.h:
6803         * docs/gst/gstreamer-sections.txt:
6804           Add util method for scaling a clocktime by a fraction. Useful 
6805           implementation is left as an exercise for the reader.
6806
6807 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
6808
6809         * gst/gstvalue.c: (gst_value_collect_fraction_range):
6810         If needed, allocate storage in the destination value during
6811         collection.
6812
6813 2005-11-22  Edward Hervey  <edward@fluendo.com>
6814
6815         * docs/gst/gstreamer-sections.txt:
6816         * gst/Makefile.am:
6817         * gst/gst.h:
6818         * gst/gsturitype.c:
6819         * gst/gsturitype.h:
6820         * gst/gstutils.c: (gst_util_set_object_arg):
6821         * tools/gst-compprep.c: (main):
6822         * tools/gst-inspect.c: (print_element_properties_info):
6823         Removed GstURI, closes bug #321061
6824
6825 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
6826
6827         * check/gst/gststructure.c: (GST_START_TEST):
6828         * gst/gststructure.c: (gst_structure_parse_value):
6829           Oops, broke automatic string type parsing.
6830           Add a test to catch it in future.
6831
6832 2005-11-22  Andy Wingo  <wingo@pobox.com>
6833
6834         * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode) 
6835         (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
6836         Actually rename the function implementations. Grr.
6837
6838 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
6839
6840         * check/gst/capslist.h:
6841           Comment test cases
6842         * check/gst/gststructure.c: (GST_START_TEST),
6843         (gst_structure_suite):
6844           Test automatic value type detection in gst_structure_from_string.
6845         * gst/gststructure.c: (gst_structure_parse_value):
6846           Add fraction as a type we try and guess automatically in
6847           caps/structure strings.
6848
6849 2005-11-22  Andy Wingo  <wingo@pobox.com>
6850
6851         patch by: Torsten Schoenfeld <kaffeetisch gmx de>
6852
6853         * gst/gsttagsetter.h:
6854         * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
6855         (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
6856         (gst_tag_setter_add_tag_valist)
6857         (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
6858         _add_values, _add_valist, and _add_valist_values. Since this is an
6859         interface the function suffixes should be more explicit so
6860         language binding don't end up with element.add_valist ->
6861         gst_tag_setter_add_valist, for example. Fixes #322069.
6862
6863 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
6864
6865         * check/gst/gstcaps.c: (GST_START_TEST):
6866           Extend caps string tests to check that a caps to string
6867           conversion is reversible and produces the same caps.
6868
6869         * gst/gststructure.c: (gst_structure_value_get_generic_type):
6870           Output "fraction" as the generic type fraction range, so caps
6871           serialisation and deserialisation works.
6872         * check/gst/capslist.h:
6873         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6874           Support 'MIN' and 'MAX' for deserialising fractions.
6875
6876 2005-11-22  Andy Wingo  <wingo@pobox.com>
6877
6878         * gst/gstevent.h (gst_event_new_new_segment)
6879         (gst_event_parse_new_segment, gst_event_new_buffer_size)
6880         (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
6881         Renamed from *_newsegment, *_buffersize, *_notarget.
6882
6883         * scripts/update-funcnames: New script, performs the changes
6884         listed above.
6885
6886 2005-11-22  Wim Taymans  <wim@fluendo.com>
6887
6888         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6889         Make sure the GstFlowReturn is returned.
6890
6891         * gst/gstbus.c: (gst_bus_add_signal_watch_full),
6892         (gst_bus_add_signal_watch):
6893         * gst/gstbus.h:
6894         add gst_bus_add_signal_watch_full.
6895
6896         * gst/gstplugin.c: (gst_plugin_load_file):
6897         Small style cleanup.
6898
6899 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
6900
6901         * check/gst/gstevent.c: (test_event), (GST_START_TEST):
6902           Block the fakesrc srcpad when we send an event, to avoid
6903           contention on the stream_lock causing random test failures.
6904
6905 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
6906
6907         * check/gst/gstvalue.c: (GST_START_TEST):
6908         * gst/gstvalue.c: (gst_value_fraction_subtract):
6909           Fix subtraction.
6910
6911 2005-11-22  Stefan Kost  <ensonic@users.sf.net>
6912
6913         * gst/gst.h:
6914           include "gstchildproxy.h"
6915         * gst/gstchildproxy.h:
6916         * libs/gst/controller/gstcontroller.h:
6917           use G_GNUC_NULL_TERMINATED
6918
6919 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
6920
6921         * check/gst/capslist.h:
6922         * check/gst/gstcaps.c: (GST_START_TEST):
6923         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
6924         * gst/gststructure.c: (gst_structure_parse_range),
6925         (gst_structure_fixate_field_nearest_fraction):
6926         * gst/gststructure.h:
6927         * gst/gstvalue.c: (gst_value_init_fraction_range),
6928         (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
6929         (gst_value_collect_fraction_range),
6930         (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
6931         (gst_value_set_fraction_range_full),
6932         (gst_value_get_fraction_range_min),
6933         (gst_value_get_fraction_range_max),
6934         (gst_value_serialize_fraction_range),
6935         (gst_value_transform_fraction_range_string),
6936         (gst_value_compare_fraction_range),
6937         (gst_value_deserialize_fraction_range),
6938         (gst_value_intersect_fraction_fraction_range),
6939         (gst_value_intersect_fraction_range_fraction_range),
6940         (gst_value_subtract_fraction_fraction_range),
6941         (gst_value_subtract_fraction_range_fraction),
6942         (gst_value_subtract_fraction_range_fraction_range),
6943         (gst_value_collect_fraction), (gst_value_fraction_multiply),
6944         (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
6945         (gst_value_transform_string_fraction), (_gst_value_initialize):
6946         * gst/gstvalue.h:
6947           Implement fraction ranges and extend GstFraction to support
6948           arithmetic subtraction, as well as deserialization from integer
6949           strings such as "100"
6950           Add a testsuite as for int and double range set operations
6951
6952 2005-11-21  Andy Wingo  <wingo@pobox.com>
6953
6954         * gst/gsttaglist.h: 
6955         * gst/gstcaps.h: 
6956         * gst/gststructure.h: Add glib-compat.h.
6957
6958 2005-11-21  Wim Taymans  <wim@fluendo.com>
6959
6960         * gst/gstbin.c: (gst_bin_change_state_func):
6961         Fix for #321595
6962
6963 2005-11-21  Wim Taymans  <wim@fluendo.com>
6964
6965         * gst/gstsegment.h:
6966         And add a nice define too.
6967
6968 2005-11-21  Wim Taymans  <wim@fluendo.com>
6969
6970         * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
6971         (gst_segment_new), (gst_segment_free), (gst_segment_init),
6972         (gst_segment_set_duration), (gst_segment_set_last_stop),
6973         (gst_segment_set_seek), (gst_segment_set_newsegment),
6974         (gst_segment_to_stream_time), (gst_segment_to_running_time),
6975         (gst_segment_clip):
6976         * gst/gstsegment.h:
6977         Make binding friendly.
6978
6979 2005-11-21  Andy Wingo  <wingo@pobox.com>
6980
6981         * gst/gsttagsetter.h: 
6982         * gst/gsttaglist.h: 
6983         * gst/gststructure.h: 
6984         * gst/gstcaps.h: 
6985         * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
6986         #319940.
6987
6988         * gst/gsterror.c (_gst_core_errors_init):
6989         * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
6990         category.
6991
6992         * gst/Makefile.am (gst_headers): Add glib-compat.h.
6993         (noinst_HEADERS): noinst the -private.
6994
6995 2005-11-21  Michael Smith <msmith@fluendo.com>
6996
6997         * gst/gstplugin.h:
6998         * gst/gstregistry.h:
6999           Remove unimplemented declarations for which we can see no sensible
7000           use.
7001
7002 2005-11-21  Andy Wingo  <wingo@pobox.com>
7003
7004         * gst/gst.h: Include glib-compat.h.
7005
7006         * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
7007
7008         * gst/glib-compat.c: Include the public and the private header.
7009
7010         * gst/glib-compat-private.h: Copied here from glib-compat.h.
7011
7012         * gst/gstvalue.c: 
7013         * gst/gstpad.c: 
7014         * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
7015
7016         * check/gst/gstevent.c (create_custom_events): Check that
7017         FLUSH_STOP is serialized.
7018
7019         * check/elements/identity.c (event_func): 
7020         * check/elements/fakesrc.c (event_func): No stream lock, the core
7021         takes it.
7022
7023         * gst/base/gstbasetransform.c (gst_base_transform_event): No more
7024         stream lock taking, yay.
7025
7026         * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
7027         ensure that core takes the stream lock.
7028
7029         * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
7030         lock name change.
7031
7032         * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
7033         the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
7034         it already. For the flush start we do take it though so we get the
7035         right preroll state change messages.
7036
7037         * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
7038         the stream lock here, the core does it for us.
7039
7040         * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
7041         GST_STREAM_GET_LOCK.
7042         (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK) 
7043         (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL) 
7044         (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
7045         (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
7046         (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK) 
7047         (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
7048
7049         * gst/gstpad.c: Update for stream lock name change.
7050
7051         * gst/base/gstbasesink.c: Update for preroll lock name change.
7052
7053 2005-11-21  Wim Taymans  <wim@fluendo.com>
7054
7055         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
7056         (gst_clock_get_master):
7057         * gst/gstclock.h:
7058         * gst/gstsystemclock.c: (gst_system_clock_init):
7059         Convert Clock flags to object flags.
7060         Added methods to manage master/slave clocks.
7061
7062 2005-11-21  Wim Taymans  <wim@fluendo.com>
7063
7064         * check/gst/gstsegment.c: (GST_START_TEST):
7065         * docs/design/part-TODO.txt:
7066         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7067         (gst_base_sink_event), (gst_base_sink_do_sync),
7068         (gst_base_sink_activate_pull), (gst_base_sink_get_position),
7069         (gst_base_sink_query), (gst_base_sink_change_state):
7070         * gst/base/gstbasesink.h:
7071         * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
7072         (gst_base_src_default_newsegment),
7073         (gst_base_src_configure_segment), (gst_base_src_do_seek),
7074         (gst_base_src_get_range), (gst_base_src_loop),
7075         (gst_base_src_change_state):
7076         * gst/base/gstbasesrc.h:
7077         * gst/base/gstbasetransform.c:
7078         (gst_base_transform_prepare_output_buf),
7079         (gst_base_transform_event), (gst_base_transform_change_state):
7080         * gst/base/gstbasetransform.h:
7081         * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
7082         (gst_collect_pads_event):
7083         * gst/base/gstcollectpads.h:
7084         * gst/elements/gstfakesrc.c: (gst_fake_src_init),
7085         (gst_fake_src_create):
7086         * gst/elements/gstfakesrc.h:
7087         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
7088         * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
7089         (gst_segment_set_last_stop), (gst_segment_set_seek),
7090         (gst_segment_set_newsegment), (gst_segment_to_stream_time),
7091         (gst_segment_to_running_time), (gst_segment_clip):
7092         * gst/gstsegment.h:
7093         More segment updates, replace code in plugins with segment
7094         helper functions.
7095
7096 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
7097
7098         * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
7099         Don't ignore sscanf results
7100
7101 2005-11-21  Andy Wingo  <wingo@pobox.com>
7102
7103         * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
7104
7105         * *.h:
7106         * *.c: Ran scripts/update-macros. Oh yes.
7107
7108         * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
7109         (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
7110         GST_GET_LOCK, etc.
7111
7112         * scripts/update-macros: New script. Run it on your files to
7113         change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
7114         well.
7115
7116 2005-11-21  Stefan Kost  <ensonic@users.sf.net>
7117
7118         * docs/gst/Makefile.am:
7119         * docs/gst/gstreamer-docs.sgml:
7120         * docs/gst/gstreamer-sections.txt:
7121         * docs/gst/gstreamer.types:
7122         * gst/gstinfo.h:
7123           more docs fixes, add new api to the docs
7124
7125 2005-11-21  Andy Wingo  <wingo@pobox.com>
7126
7127         * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
7128         state_broadcast call.
7129
7130         * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
7131
7132 2005-11-21  Julien MOUTTE  <julien@moutte.net>
7133
7134         * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
7135         function calls for arrays.
7136
7137 2005-11-21  Stefan Kost  <ensonic@users.sf.net>
7138
7139         * docs/random/ensonic/media-device-daemon.txt:
7140           wild idea, can this be done?
7141         * docs/gst/gstreamer-sections.txt:
7142         * gst/gsterror.h:
7143         * gst/gstfilter.c:
7144         * gst/gstfilter.h:
7145         * gst/gstplugin.h:
7146         * gst/gstpluginfeature.c:
7147         * gst/gsttrace.c:
7148         * gst/gstvalue.c:
7149         * gst/gstvalue.h:
7150           doc fixes and additions
7151
7152 2005-11-21  Andy Wingo  <wingo@pobox.com>
7153
7154         * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL) 
7155         (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND) 
7156         (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK) 
7157         (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
7158         private to the basesrc implementation.
7159
7160         * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
7161         behalf of event function if necessary. It should no longer be
7162         necessary to take the stream lock in pad's event functions. Fixes
7163         #320299.
7164
7165 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
7166         * docs/gst/gstreamer-sections.txt:
7167         * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
7168         (gst_structure_fixate_field_nearest_double),
7169         (gst_structure_fixate_field_boolean):
7170         * gst/gststructure.h:
7171         * win32/common/libgstreamer.def:
7172         * win32/gstreamer.def:
7173
7174         Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
7175         (#322027)
7176
7177 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
7178
7179         * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
7180         (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
7181         (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
7182         (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
7183         (gst_fdsrc_uri_handler_init):
7184         * gst/elements/gstfdsrc.h:
7185           Port fd:// URI handler from 0.8 to fdsrc
7186
7187 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
7188
7189         * gst/gstvalue.c: (gst_value_transform_fourcc_string),
7190         (gst_value_serialize_fourcc):
7191         * gst/gstvalue.h:
7192           Drop leading '%' from GST_FOURCC_FORMAT, thus making it
7193           consistent with our other format defines (#320324).
7194
7195 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
7196
7197         * gst/gstvalue.c: (gst_value_is_fixed):
7198           Revert previous commit. Value lists are by definition
7199           not fixed, as they are a list of possible values.
7200
7201 2005-11-21  Andy Wingo  <wingo@pobox.com>
7202
7203         * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
7204         during the stable series if we need it. Fixes #319178.
7205
7206         * gst/gstevent.c (gst_event_new_filler): Removed.
7207
7208         * check/gst/gstevent.c: Update comment about filler events.
7209
7210 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
7211
7212         * gst/gstvalue.c: (gst_value_is_fixed):
7213           Should handle both value arrays and value lists.
7214
7215 2005-11-21  Andy Wingo  <wingo@pobox.com>
7216
7217         patch by: Alessandro Dessina <alessandro nnva org>
7218
7219         * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
7220         functions to access arrays. Fixes #321962.
7221
7222 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
7223
7224         * docs/gst/gstreamer.types:
7225           gst_collectpads_get_type => gst_collect_pads_get_type.
7226           
7227         * gst/base/gstbasetransform.c:
7228           Remove unused SIGNAL_HANDOFF enum.
7229
7230 2005-11-21  Andy Wingo  <wingo@pobox.com>
7231
7232         * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
7233         the event type (upstream, downstream, serialized). Renamed
7234         GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
7235         (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
7236         CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
7237
7238         * gst/gstevent.c: Update for new CUSTOM event names.
7239
7240         * check/gst/gstevent.c: Update check for new CUSTOM event names.
7241
7242         * gst/gstevent.h:
7243         * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
7244         bug #319392.
7245
7246 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
7247
7248         * docs/gst/gstreamer-sections.txt:
7249         * win32/common/libgstbase.def:
7250         * win32/libgstbase.def:
7251         * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
7252         (gst_collect_pads_class_init), (gst_collect_pads_init),
7253         (gst_collect_pads_finalize), (gst_collect_pads_new),
7254         (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
7255         (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
7256         (gst_collect_pads_collect), (gst_collect_pads_collect_range),
7257         (gst_collect_pads_start), (gst_collect_pads_stop),
7258         (gst_collect_pads_peek), (gst_collect_pads_pop),
7259         (gst_collect_pads_available), (gst_collect_pads_read),
7260         (gst_collect_pads_flush), (gst_collect_pads_event),
7261         (gst_collect_pads_chain):
7262         * gst/base/gstcollectpads.h:
7263           Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
7264           unimplemented functions as unimplemented. Add padding to
7265           GstCollectData. (#320766, #320423)
7266
7267 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
7268
7269         * gst/gstmessage.c:
7270           Improve docs for DURATION message (usage of duration parameter)
7271           (#320113)
7272
7273 2005-11-20  Wim Taymans  <wim@fluendo.com>
7274
7275         * check/Makefile.am:
7276         * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
7277         (main):
7278         * gst/Makefile.am:
7279         * gst/gst.h:
7280         * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
7281         (gst_segment_set_seek), (gst_segment_set_newsegment),
7282         (gst_segment_to_stream_time), (gst_segment_to_running_time),
7283         (gst_segment_clip):
7284         * gst/gstsegment.h:
7285         Added segment helper structure and methods. Not fully implemented
7286         yet.
7287         Added segment check.
7288
7289 2005-11-20  Jan Schmidt  <thaytan@mad.scientist.com>
7290
7291         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
7292           Add a deserialisation test for fractions
7293         * examples/metadata/read-metadata.c: (message_loop),
7294         (make_pipeline), (main):
7295           Fix up metadata reading sample.
7296         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7297           Debug format fix
7298         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
7299           Don't try and fixate empty caps
7300         * gst/gst_private.h:
7301           Wrap in G_BEGIN_DECLS/G_END_DECLS
7302         * gst/gstvalue.c: (gst_value_collect_fraction),
7303         (gst_value_set_fraction), (gst_value_get_fraction_denominator),
7304         (gst_value_transform_string_fraction),
7305         (gst_value_compare_fraction):
7306           Add some extra guards to ensure that we don't end up 
7307           with an invalid denominator of 0 in a gstfraction and
7308           that fractions always get reduced.
7309
7310 2005-11-20  Wim Taymans  <wim@fluendo.com>
7311
7312         * docs/gst/gstreamer-sections.txt:
7313         * gst/gstbuffer.h:
7314         * gst/gstelement.c:
7315         * gst/gstformat.c:
7316         * gst/gstformat.h:
7317         * gst/gstindex.h:
7318         * gst/gstquery.c:
7319         * gst/gstquery.h:
7320         * gst/gstvalue.c:
7321         Doc fixes.
7322
7323 2005-11-20  Wim Taymans  <wim@fluendo.com>
7324
7325         * docs/design/part-TODO.txt:
7326         * gst/gstcaps.h:
7327         Make a proper enum of the flag.
7328
7329 2005-11-19  Wim Taymans  <wim@fluendo.com>
7330
7331         * docs/design/part-TODO.txt:
7332         * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
7333         (gst_format_to_quark), (gst_format_register):
7334         * gst/gstformat.h:
7335         * gst/gstquery.c: (_gst_query_initialize),
7336         (gst_query_type_get_name), (gst_query_type_to_quark),
7337         (gst_query_type_register):
7338         * gst/gstquery.h:
7339         Add type to quark and type to string conversions.
7340
7341 2005-11-19  Andy Wingo  <wingo@pobox.com>
7342
7343         * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
7344         #320097.
7345
7346 2005-11-19  Wim Taymans  <wim@fluendo.com>
7347
7348         * docs/design/part-TODO.txt:
7349         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
7350         (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
7351         (gst_bin_handle_message_func):
7352         * gst/gstbin.h:
7353         Make message handling overridable.
7354
7355 2005-11-19  Andy Wingo  <wingo@pobox.com>
7356
7357         * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
7358
7359         * gst/gstclock.h:
7360         * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
7361         be a GstClockTime.
7362         (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
7363         is a GstClockTime. Fixes #321710.
7364
7365         * gst/gstclock.h (GstClock): Remove offset property. Add
7366         internal_calibration and external_calibration. Fix padding. Pad
7367         also by GstClockTime so we don't run into problems.
7368
7369         * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
7370         (gst_clock_get_rate_offset): Remove.
7371         (gst_clock_set_time_adjust): Remove. Fixes #321712.
7372
7373         * gst/gstutils.h:
7374         * gst/gstutils.c (g_static_rec_cond_wait)
7375         (g_static_rec_cond_timed_wait): Removed, no longer needed.
7376
7377         * gst/gstbin.c: Remove terrible continue_state prototype.
7378
7379         * gst/gstelement.h (gst_element_continue_state): Make public.
7380
7381         * gst/gstelement.h:
7382         * gst/gstelement.c (gst_element_commit_state): Removed, replaced
7383         by continue_state. Fixes #319389.
7384
7385         * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
7386         Really fixes #168438. However I don't see anywhere where the
7387         filter function is called... stupid GStreamer...
7388         
7389         * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
7390         don't have a dispose function, so it won't get called when the
7391         object is unreffed, but oh well!
7392
7393         * gst/gstindex.c (gst_index_set_filter_full): New API function,
7394         allows a destroy function to be set so user_data can be freed.
7395         Fixes #168438.
7396         (gst_index_set_filter): Call gst_index_set_filter_full.
7397
7398         * check/gst/gstvalue.c (test_string): Add test for bug #165650.
7399
7400         * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
7401         string should produce an error, given the lack of a way to
7402         represent NULL strings. Fixes #165650.
7403         
7404         * gst/gstvalue.h: 
7405         * gst/gstvalue.c (gst_value_array_append_value) 
7406         (gst_value_array_prepend_value, gst_value_array_get_size) 
7407         (gst_value_array_get_value): New API, copied from
7408         gst_value_list_*, only operates on arrays.
7409         (gst_value_list_append_value, gst_value_list_prepend_value) 
7410         (gst_value_list_concat, gst_value_list_get_size) 
7411         (gst_value_list_get_value): Only operate on lists. Fixes #156633.
7412
7413         * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
7414         init_list, because it works on both.
7415         (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
7416         (gst_value_copy_list_or_array): Renamed from copy_list.
7417         (gst_value_free_list_or_array): Renamed from free_list.
7418         (gst_value_collect_list_or_array): Renamed from collect_list.
7419         (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
7420         (gst_value_list_or_array_peek_pointer): Renamed from
7421         list_peek_pointer.
7422         (_gst_value_array_value_table, _gst_value_list_value_table):
7423         Update value table functions.
7424         (gst_value_compare_list_or_array): Renamed from compare_list.
7425
7426         * gsttaglist.h: Whoops, foreach function returns void. Also fix
7427         some constness.
7428
7429         * gst/gsttaglist.c:
7430         * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
7431         GstTagList*. Fixes #143472.
7432
7433         * gst/gststructure.h: Clarify what the foreach/map functions can
7434         or can't do to their arguments.
7435
7436 2005-11-18  Wim Taymans  <wim@fluendo.com>
7437
7438         * gst/gstclock.c: (gst_clock_set_calibration),
7439         (gst_clock_get_calibration):
7440         Doc and API fixes.
7441         Calibration can be set with internal time equal to current
7442         internal time too.
7443
7444 2005-11-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7445
7446         * gst/gsterror.c:
7447         * gst/gsterror.h:
7448           document
7449
7450 2005-11-18  Andy Wingo  <wingo@pobox.com>
7451
7452         * configure.ac: 
7453         * pkgconfig/gstreamer-net.pc.in:
7454         * pkgconfig/gstreamer-net-uninstalled.pc.in:
7455         * pkgconfig/Makefile.am: Add net pkgconfig files.
7456
7457 2005-11-18  Stefan Kost  <ensonic@users.sf.net>
7458
7459         * gst/gstcaps.c:
7460         * gst/gstghostpad.c:
7461         * gst/gsttrace.c:
7462         * gst/gstvalue.c:
7463         * gst/gstvalue.h:
7464           docs fixes
7465
7466 2005-11-18  Andy Wingo  <wingo@pobox.com>
7467
7468         * gst/net/gstnetclientclock.c: Turn off debugging.
7469
7470         * check/net/gstnetclientclock.c (test_functioning): Assert that the
7471         times connverge somewhat. Can't make a real test.
7472
7473         * gst/net/gstnetclientclock.c (do_linear_regression): Use all
7474         integer arithmetic. Return the minimum of the domain, which can be
7475         set as "internal" for gst_clock_set_calibration.
7476         (gst_net_client_clock_observe_times): Call _set_calibration.
7477         (gst_net_client_clock_new): Call _set_calibration instead of
7478         rate_offset.
7479
7480         * check/net/gstnetclientclock.c (test_functioning): Use the right
7481         adjustment api.
7482
7483         * gst/gstclock.h:
7484         * gst/gstclock.c (gst_clock_get_calibration) 
7485         (gst_clock_set_calibration): New functions, obsolete the ones I
7486         added yesterday. Doh. Precision issues mean we have to extrapolate
7487         from a point in the more recent past than 1970.
7488         (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
7489         obsolete.
7490         (gst_clock_adjust_unlocked): Use the right calibration data.
7491
7492 2005-11-18  Edward Hervey  <edward@fluendo.com>
7493
7494         * gst/base/gstbasesink.c: (gst_base_sink_change_state): 
7495         Also reset the ->current_* values in READY->PAUSED
7496
7497 2005-11-18  Andy Wingo  <wingo@pobox.com>
7498
7499         * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
7500         Whoops, check the right fd. Also add some debugging.
7501         (gst_net_client_clock_observe_times): Adjust for int64 offset.
7502         (do_linear_regression): Add a crapload of debugging. Subtract off
7503         the minimum values from the input series to discard unneeded bits.
7504         Use only int arithmetic. There is still double arithmetic when
7505         calculating the intercept that needs fixing. Return boolean to
7506         indicate success; FALSE would mean the domain or range is too
7507         great. Still needs fixes.
7508
7509 2005-11-18  Wim Taymans  <wim@fluendo.com>
7510
7511         * gst/base/gstbasesink.c: (gst_base_sink_get_position):
7512         For the current position in stream time, we need to subtract
7513         accumulated time.
7514         
7515         * gst/gstsystemclock.c: (gst_system_clock_async_thread):
7516         Release lock before calling the callback function of async
7517         entries.
7518
7519 2005-11-18  Andy Wingo  <wingo@pobox.com>
7520
7521         * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
7522         Port goes all the way to MAXUINT16.
7523
7524         * gst/net/gstnettimeprovider.c: Make the port range the same as
7525         for the kernel: 0 assigns, otherwise ports are less than
7526         MAXUINT16.
7527
7528         * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
7529         port change.
7530
7531         * check/net/gstnetclientclock.c (test_functioning): Add the start
7532         of another test. 
7533
7534 2005-11-18  Wim Taymans  <wim@fluendo.com>
7535
7536         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
7537         (gst_bin_remove_func), (bin_bus_handler):
7538         * gst/gstbin.h:
7539         Removing a clock provider from a bin, triggers a clock lost message
7540         so that a new clock will be selected.
7541         Adding a clock to a bin triggers a clock provider message.
7542         Make sure we reselect a clock when we received a clock lost message.
7543         Keep a reference to the element that provided the clock.
7544
7545 2005-11-18  Andy Wingo  <wingo@pobox.com>
7546
7547         * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
7548         the clock initially so it produces values around the base time.
7549         (gst_net_client_clock_class_init): Typo fix.
7550         (gst_net_client_clock_thread): Add note on when the socket gets
7551         closed.
7552
7553 2005-11-17  Wim Taymans  <wim@fluendo.com>
7554
7555         * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
7556         Free remote and local time arrays.
7557
7558 2005-11-17  Wim Taymans  <wim@fluendo.com>
7559
7560         * gst/net/gstnetclientclock.c: (do_linear_regression),
7561         (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
7562         Fix compilation, uninitialized vars and a forgotten continue.
7563
7564 2005-11-17  Andy Wingo  <wingo@pobox.com>
7565
7566         * check/Makefile.am (check_PROGRAMS): 
7567         * check/net/gstnetclientclock.c: Add a most minimal test for the
7568         net client clock. More to come later.
7569
7570         * gst/net/gstnet.h: 
7571         * gst/net/Makefile.am: Add netclientclock.
7572
7573         * gst/net/gstnetclientclock.h:
7574         * gst/net/gstnetclientclock.c: New files, implement an untested
7575         GstClock that takes its time from a network time provider.
7576         Implements the algorithm in network-clock.scm.
7577
7578         * tests/network-clock.scm (*window-size*): Rename from
7579         *queue-length*.
7580         * tests/network-clock.scm (network-time): 
7581         * tests/network-clock-utils.scm (q-push): Update callers.
7582
7583 2005-11-17  Wim Taymans  <wim@fluendo.com>
7584
7585         * gst/gstbin.c: (gst_bin_provide_clock_func),
7586         (gst_bin_sort_iterator_new):
7587         And unref the child too..
7588
7589 2005-11-17  Wim Taymans  <wim@fluendo.com>
7590
7591         * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
7592         (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
7593         Refactor the sort iterator so it can be used while holding the
7594         LOCK too.
7595         Make clock selection select a clock closest to the source.
7596
7597 2005-11-17  Michael Smith <msmith@fluendo.com>
7598
7599         * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
7600         (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
7601         * gst/gstclock.h:
7602           Anonymous structs are a gcc (and some other compilers) extension, so
7603           don't use them. Since this is only for ABI-compatibility, and our
7604           API/ABI freeze is over in a few days, this whole thing will only
7605           last a few days, so don't bother trying to think up a meaningful
7606           name for the struct.
7607
7608 2005-11-17  Andy Wingo  <wingo@pobox.com>
7609
7610         * gst/gstclock.h (GstClock): Add rate and offset properties,
7611         preserving ABI stability. Add rate/offset accessors. Will file bug
7612         for the freeze break.
7613
7614         * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
7615         and offset, trying to keep precision and avoiding
7616         underflow/overflow.
7617         (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
7618         functions. Make gst_clock_set_time_adjust obsolete.
7619         (gst_clock_set_time_adjust): Note that this function is obsolete.
7620         Will file bug soon.
7621
7622         * gst/base/gstbasetransform.h: Make the ABI-stability hack
7623         greppable by using GST_PADDING-1+1.
7624
7625 2005-11-17  Torsten Schoenfeld  <kaffeetisch at gmx dot net>
7626
7627         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
7628
7629         * gst/gstmessage.c: (gst_message_parse_clock_lost):
7630           Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
7631
7632         * gst/gstpadtemplate.h:
7633         * gst/gstpluginfeature.h:
7634           Don't use c++ style comments in headers (#321638).
7635
7636 2005-11-16  Andy Wingo  <wingo@pobox.com>
7637
7638         * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
7639         buffer.
7640
7641         * check/net/gstnettimeprovider.c: Check to see that the time
7642         provider actually provides times. Works, yo!
7643
7644 2005-11-16  Wim Taymans  <wim@fluendo.com>
7645
7646         * check/Makefile.am:
7647         Enable more tests.
7648
7649         * check/elements/fakesrc.c: (GST_START_TEST):
7650         Set element to NULL before disposing it.
7651
7652 2005-11-16  Andy Wingo  <wingo@pobox.com>
7653
7654         * gst/net/Makefile.am:
7655         * gst/net/gstnet.h:
7656         * gst/net/gstnettimeprovider.c: 
7657         * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
7658         provider, include it from gstnet.h, and add it to the build.
7659
7660         * gst/net/gstnettimepacket.h: 
7661         * gst/net/gstnettimepacket.c: New files, abstracts out the packet
7662         sending and receiving.
7663
7664 2005-11-16  Wim Taymans  <wim@fluendo.com>
7665
7666         * check/Makefile.am:
7667         Enable valgrind check.
7668
7669         * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
7670         (gst_fake_src_alloc_buffer):
7671         Fix memleak.
7672
7673 2005-11-16  Wim Taymans  <wim@fluendo.com>
7674
7675         * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
7676         Call parent finalize too.
7677
7678 2005-11-16  Wim Taymans  <wim@fluendo.com>
7679
7680         * check/Makefile.am:
7681         Enable valgrind check that should work fine now.
7682
7683         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7684         * gst/gstqueue.c: (gst_queue_init):
7685         Fix memleaks in pad allocation.
7686
7687 2005-11-16  Andy Wingo  <wingo@pobox.com>
7688
7689         * gst/net/Makefile.am:
7690         * gst/net/gstnet.h: New part of core to hold network elements and
7691         objects. Put in core because it exposes API that applications want
7692         to use. The library is named libgstnet-tempname right now because
7693         of the existing libgstnet in gst-plugins-base. Solution is
7694         probably to rename the one in plugins-base; will file a bug for
7695         the freeze break.
7696
7697         * gst/net/gstnettimeprovider.c: 
7698         * gst/net/gstnettimeprovider.h: New object to export a GstClock's
7699         get_time call over the network.
7700
7701         * configure.ac: 
7702         * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
7703
7704         * check/Makefile.am:
7705         * check/net/gstnettimeprovider.c: A most minimal test suite. Will
7706         get additions shortly.
7707
7708 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7709
7710         * gst/gstpad.c: (gst_pad_new_from_static_template):
7711         * gst/gstpad.h:
7712           add gst_pad_new_from_static_template functions
7713         * gst/check/gstcheck.c: (gst_check_setup_src_pad),
7714         (gst_check_setup_sink_pad):
7715         * gst/elements/gsttee.c: (gst_tee_init):
7716           and use them
7717
7718 2005-11-16  Wim Taymans  <wim@fluendo.com>
7719
7720         * gst/gstpad.c: (gst_pad_pause_task):
7721         Removed warning, it's not really an error either.
7722
7723 2005-11-16  Wim Taymans  <wim@fluendo.com>
7724
7725         * gst/base/gstbasetransform.c:
7726         (gst_base_transform_prepare_output_buf),
7727         (gst_base_transform_event):
7728         Check if the caps are NULL, this can happen if the element
7729         is shutting down and the pad caps are set to NULL.
7730
7731 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7732
7733         * gst/elements/gsttee.c: (gst_tee_init):
7734           fix pad template leak in tee
7735
7736 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7737
7738         * gst/glib-compat.c: (g_value_dup_gst_object):
7739         * gst/glib-compat.h:
7740         * gst/gstpad.c: (gst_pad_set_property):
7741           use gst_object_ref when setting the pad template; this will
7742           trigger the pad template leaks on GLib 2.6 and the slaves
7743
7744 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7745
7746         * gst/glib-compat.c: (gst_flags_get_first_value):
7747         * gst/glib-compat.h:
7748         * gst/gstregistryxml.c:
7749           remove functions copied from GLib 2.6
7750
7751 2005-11-16  Michael Smith <msmith@fluendo.com>
7752
7753         * gst/Makefile.am:
7754           Don't link against VALGRIND_LIBS. That was always the wrong thing to
7755           do, but only breaks with newer valgrind versions. We're not a
7756           valgrind tool, we have no link-time dependencies on libcoregrind.
7757
7758 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7759
7760         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
7761           some debug changes
7762         * gst/gstmessage.h:
7763           typo fixes
7764
7765 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7766
7767         * gst/base/gstbasesrc.c: (gst_base_src_init):
7768         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7769         * gst/gstqueue.c: (gst_queue_init):
7770         * gst/gstregistryxml.c: (load_feature):
7771           Revert all these unrefs, they don't even pass make check !
7772
7773 2005-11-15  Johan Dahlin  <johan@gnome.org>
7774
7775         * gst/base/gstbasesrc.c: (gst_base_src_init):
7776         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7777         * gst/gstqueue.c: (gst_queue_init): 
7778         Free pad templates, fixes a couple of leaks.
7779
7780 2005-11-15  Daniel Fischer  <dan at f3c dot com>
7781
7782         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
7783
7784         * gst/gstpad.c: (gst_pad_get_property):
7785           GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
7786           GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
7787           (#321452)
7788
7789 2005-11-15  Wim Taymans  <wim@fluendo.com>
7790
7791         * gst/gstevent.c:
7792         Small doc update.
7793
7794 2005-11-15  Andy Wingo  <wingo@pobox.com>
7795
7796         * gst/gstelement.c (gst_element_set_base_time): Add debugging.
7797
7798         * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
7799         using GST_CLOCK_TIME_NONE to disable base time management.
7800         (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
7801         time if it was NONE before.
7802         (gst_pipeline_change_state): Only munge the base time if
7803         stream_time != GST_CLOCK_TIME_NONE.
7804
7805         * check/gst/gstpipeline.c (test_base_time): Punt around the
7806         problem of the probe not being called, because that's not the
7807         issue I'm looking at. Add a check that setting stream_time to NONE
7808         disables base time management.
7809         
7810 2005-11-15  Wim Taymans  <wim@fluendo.com>
7811
7812         * gst/base/gstbasesink.c: (gst_base_sink_change_state):
7813         segment_stop == -1 at startup.
7814
7815         * gst/base/gstbasetransform.c: (gst_base_transform_event),
7816         (gst_base_transform_change_state):
7817         Init segment values at start.
7818
7819 2005-11-15  Wim Taymans  <wim@fluendo.com>
7820
7821         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7822         0 segment values are 0 in any format.
7823
7824         * gst/base/gstbasetransform.c: (gst_base_transform_event):
7825         * gst/base/gstbasetransform.h:
7826         Parse newsegment correctly in basetransform
7827
7828         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
7829         Sync to clock using updated segment values.
7830
7831 2005-11-15  Andy Wingo  <wingo@pobox.com>
7832
7833         * check/gst/gstpipeline.c (test_base_time): Add check that the
7834         base time and stream time are reset correctly.
7835
7836 2005-11-15  Wim Taymans  <wim@fluendo.com>
7837
7838         * docs/design/part-TODO.txt:
7839         Some more TODO items.
7840
7841 2005-11-15  Andy Wingo  <wingo@pobox.com>
7842
7843         * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
7844         error if the user selected "no clock" as the clocking method.
7845
7846         * check/gst/gstpipeline.c (test_base_time): New test for buffer
7847         timestamps with live capture.
7848
7849         * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
7850         is 0 but we are a live source, timestamp the buffers using the
7851         element's clock.
7852
7853 2005-11-14  Stefan Kost  <ensonic@users.sf.net>
7854
7855         * docs/gst/gstreamer-sections.txt:
7856         * gst/gsterror.c:
7857         * gst/gstghostpad.c:
7858         * gst/gstobject.h:
7859         * gst/gstxml.c:
7860           more section docs
7861
7862 2005-11-14  Wim Taymans  <wim@fluendo.com>
7863
7864         * common/gst.supp:
7865           add suppressions from Wim's Debian machine
7866
7867 2005-11-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7868
7869         * common/gst.supp:
7870           add suppressions from Andy's AMD64 Ubuntu machine
7871
7872 2005-11-14  Andy Wingo  <wingo@pobox.com>
7873
7874         * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
7875         STATE_LOCK not necessary. Fixes #311489.
7876
7877         * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
7878         #305291.
7879
7880         * gst/gstindex.c (gst_index_add_object): Note in the docs that
7881         this function is not implemented.
7882
7883 2005-11-14  Julien MOUTTE  <julien@moutte.net>
7884
7885         * gst/base/gstbasetransform.c:
7886         (gst_base_transform_prepare_output_buf):
7887         Ref the source pad caps while we need them.
7888         Fixes (#321386)
7889
7890 2005-11-11  Wim Taymans  <wim@fluendo.com>
7891
7892         * docs/gst/gstreamer-sections.txt:
7893         Added some docs for GstCollectData.
7894
7895         * gst/base/gstadapter.c:
7896         Some small code example fix.
7897
7898         * gst/base/gstcollectpads.c:
7899         * gst/base/gstcollectpads.h:
7900         Document some more.
7901
7902 2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7903
7904         * configure.ac: back to HEAD
7905
7906 === release 0.9.5 ===
7907
7908 2005-11-11  Thomas Vander Stichele <thomas at apestaart dot org>
7909
7910         * configure.ac:
7911           releasing 0.9.5, "Bike Lunch Day"
7912
7913 2005-11-11  Wim Taymans  <wim@fluendo.com>
7914
7915         * gst/gstbuffer.c: (_gst_buffer_copy):
7916         Copy more flags.
7917
7918         * gst/gstcaps.c: (gst_caps_is_equal):
7919         Fix some docs.
7920         Make _is_equal fast in the trivial cases.
7921
7922         * gst/gstminiobject.c:
7923         * gst/gstminiobject.h:
7924         More docs. Spifify .h file.
7925
7926         * gst/gstutils.c:
7927         Small doc update.
7928
7929 2005-11-11  Wim Taymans  <wim@fluendo.com>
7930
7931         * gst/base/gstbasetransform.c:
7932         (gst_base_transform_prepare_output_buf),
7933         (gst_base_transform_handle_buffer):
7934         Small cleanups.
7935         If we're processing a buffer and need to allocate an output
7936         buffer, we cannot accept a format change. If we did get a 
7937         format change, we have to alloc a buffer ourselves of the 
7938         right size.
7939
7940 2005-11-11  Wim Taymans  <wim@fluendo.com>
7941
7942         * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
7943         While checking the flag for reentrancy in the gstcaps function
7944         is nice to detect recursive invocations, it also makes it 
7945         impossible to call getcaps from multiple threads, which must be
7946         possible. So, checking for recursive calls has to go.
7947
7948 2005-11-11  Michael Smith <msmith@fluendo.com>
7949
7950         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7951           Don't sync on buffers that fall partially outside our current
7952           segment. Prevents an assertion failure/abort playing some files.
7953
7954 2005-11-10  Andy Wingo  <wingo@pobox.com>
7955
7956         * check/gst/gstbin.c (test_message_state_changed_children): Style
7957         fix..
7958
7959         * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
7960         gst_bus_poll with the signal watch. Ensures that poll and a signal
7961         watch see the same messages.
7962
7963         * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
7964         a poll and a watch at the same time get the same messages.
7965
7966 2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7967
7968         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
7969         * gst/gstcaps.c: (gst_caps_intersect):
7970           Don't call gst_caps_do_simplify - it doesn't respect order of caps
7971           and it's not needed.
7972
7973 2005-11-10  Wim Taymans  <wim@fluendo.com>
7974
7975         * docs/design/part-TODO.txt:
7976         Updated todo.
7977
7978 2005-11-10  Wim Taymans  <wim@fluendo.com>
7979
7980         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7981         * gst/base/gstbasesrc.c: (gst_base_src_wait),
7982         (gst_base_src_do_sync), (gst_base_src_get_range):
7983         Implement clock sync in base class.
7984
7985 2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7986
7987         patch by: Tim-Philipp Müller <tim at centricular dot net>
7988
7989         * gst/gststructure.c: (gst_structure_parse_field),
7990         (gst_structure_from_string):
7991           Forward-port a 0.8 patch to handle escaped spaces in structure string,
7992           so that gst_parse_launch() can deal with spaces in filtered link
7993           caps (fixes #164479)
7994         * check/gst/capslist.h:
7995         * check/gst/gststructure.c: (GST_START_TEST):
7996           add unit tests for this change
7997
7998 2005-11-10  Wim Taymans  <wim@fluendo.com>
7999
8000         * docs/gst/gstreamer-sections.txt:
8001         * gst/gstelement.c:
8002         * gst/gstelement.h:
8003         Fix docs, move some STATE macros to private.
8004
8005 2005-11-10  Wim Taymans  <wim@fluendo.com>
8006
8007         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
8008         Added check for bug #317341
8009
8010         * gst/gstbuffer.c:
8011         * gst/gstbuffer.h:
8012         Some more spiffifying.
8013
8014         * gst/gstghostpad.c: (gst_ghost_pad_do_link):
8015         Call peer linkfunction if we are a source pad. Totally fixes
8016         #317341
8017
8018         * gst/gstpad.c:
8019         Update docs, source pads should call the peer linkfunction
8020         so they can atomically perform the pad link.
8021
8022 2005-11-09  Wim Taymans  <wim@fluendo.com>
8023
8024         * gst/gstbuffer.c:
8025         * gst/gstbuffer.h:
8026         Uber-spiffy-spiffify some more.
8027
8028 2005-11-09  Tim-Philipp Müller  <tim at centricular dot net>
8029
8030         * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
8031         * gst/elements/gstfilesink.c: (gst_file_sink_init):
8032         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
8033         * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
8034         (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
8035         * gst/gstpad.c: (gst_pad_init):
8036           Use GST_DEBUG_FUNCPTR() more extensively.
8037
8038 2005-11-09  Wim Taymans  <wim@fluendo.com>
8039
8040         * gst/gstobject.c: (gst_object_class_init):
8041         * gst/gstobject.h:
8042         Documentation fixes.
8043
8044 2005-11-09  Edward Hervey  <edward@fluendo.com>
8045
8046         * gst/gsttypefindfactory.c:
8047         Fix docs.
8048         
8049 2005-11-09  Edward Hervey  <edward@fluendo.com>
8050
8051         * gst/base/gsttypefindhelper.c:
8052         * gst/gsttypefind.c:
8053         * gst/gsttypefind.h:
8054         Fix docs.
8055
8056 2005-11-09  Wim Taymans  <wim@fluendo.com>
8057
8058         * gst/gstiterator.c:
8059         Fix revision data.
8060
8061         * gst/gsttask.c:
8062         * gst/gsttask.h:
8063         Fix docs.
8064
8065 2005-11-09  Wim Taymans  <wim@fluendo.com>
8066
8067         * gst/gstevent.h:
8068         * gst/gsturi.h:
8069         Fix docs.
8070
8071 2005-11-09  Wim Taymans  <wim@fluendo.com>
8072
8073         * docs/gst/gstreamer-sections.txt:
8074         Moved the message async delivery private lock and cond
8075         to the private section.
8076
8077         * gst/gstmessage.c:
8078         * gst/gstmessage.h:
8079         Fixed docs.
8080
8081 2005-11-09  Edward Hervey  <edward@fluendo.com>
8082
8083         * docs/gst/gstreamer-sections.txt:
8084         * gst/gsturi.c:
8085         * gst/gsturi.h:
8086         Document GstURIHandler
8087
8088 2005-11-09  Wim Taymans  <wim@fluendo.com>
8089
8090         * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
8091         (gst_iterator_find_custom):
8092         * gst/gstiterator.h:
8093         Fix iterator docs.
8094
8095 2005-11-09  Wim Taymans  <wim@fluendo.com>
8096
8097         * gst/gstbin.h:
8098         Document another field.
8099
8100         * gst/gststructure.c:
8101         * gst/gststructure.h:
8102         Document.
8103
8104 2005-11-09  Wim Taymans  <wim@fluendo.com>
8105
8106         * gst/gstbin.h:
8107         Documented structs.
8108
8109 2005-11-09  Wim Taymans  <wim@fluendo.com>
8110
8111         * docs/gst/gstreamer-sections.txt:
8112         Added some new macros.
8113
8114         * gst/gstclock.c:
8115         * gst/gstclock.h:
8116         * gst/gstobject.h:
8117         Docs updates.
8118
8119 2005-11-09  Wim Taymans  <wim@fluendo.com>
8120
8121         * docs/design/part-TODO.txt:
8122         Some more items for the TODO
8123
8124         * gst/gstcaps.c:
8125         * gst/gstcaps.h:
8126         Document GstCaps.
8127
8128 2005-11-09  Andy Wingo  <wingo@pobox.com>
8129
8130         * gst/base/gstbasesink.c: Add the beginning of docs here -- have
8131         to work on something else now tho...
8132
8133         * gst/base/gstadapter.c: More adapter docs.
8134
8135         * gst/elements/gstfilesink.c (gst_file_sink_start) 
8136         (gst_file_sink_stop): New functions, replace the state change
8137         handler.
8138         (gst_file_sink_class_init): Hook up the start and stop functions.
8139         (gst_file_sink_base_init): Don't set the state change handler any
8140         more. It was a bit ugly too, being set from here...
8141         (gst_file_sink_get_property, gst_file_sink_set_property):
8142         Cleanups...
8143         (gst_file_sink_set_location): More robust check that doesn't call
8144         GST_STATE. Ugggggg.
8145
8146 2005-11-08  Tim-Philipp Müller  <tim at centricular dot net>
8147
8148         * gst/base/gstbasetransform.c: (gst_base_transform_event):
8149           Hold STREAM_LOCK while pushing newsegment or tag events as well.
8150
8151 2005-11-08  Wim Taymans  <wim@fluendo.com>
8152
8153         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
8154         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
8155         (gst_base_sink_chain), (gst_base_sink_change_state):
8156         * gst/base/gstbasesink.h:
8157         * gst/base/gstbasesrc.h:
8158         * gst/gstelement.h:
8159         * gst/gstevent.h:
8160         Avoid excessive typechecking in macros.
8161
8162         * gst/gstminiobject.c: (gst_mini_object_get_type),
8163         (gst_mini_object_init), (gst_mini_object_new),
8164         (gst_mini_object_free):
8165         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
8166         (gst_object_finalize):
8167         Remove cruft code, optimize alloc_trace.
8168
8169 2005-11-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8170
8171         * docs/faq/gst-uninstalled:
8172           fix up PS1 for systems that try to reset it
8173
8174 2005-11-07  Wim Taymans  <wim@fluendo.com>
8175
8176         * gst/base/gstbasesrc.c: (gst_base_src_init),
8177         (gst_base_src_get_range):
8178         Set the segment_end to -1 initially. Fixed typefind.
8179
8180 2005-11-07  Tim-Philipp Müller  <tim at centricular dot net>
8181
8182         * gst/base/gstadapter.c:
8183           Debug category should be 'adapter', not 'GstAdapter'.
8184           
8185         * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
8186         (gst_collectpads_class_init), (gst_collectpads_init),
8187         (gst_collectpads_peek), (gst_collectpads_pop),
8188         (gst_collectpads_event), (gst_collectpads_chain):
8189           Add debug category and some debugging output. Use boilerplate
8190           macros. Remove some extraneous words from docs.
8191
8192 2005-11-05  Andy Wingo  <wingo@pobox.com>
8193
8194         * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
8195         macro.
8196
8197 2005-11-04  Stefan Kost  <ensonic@users.sf.net>
8198
8199         * docs/gst/gstreamer-sections.txt:
8200         * gst/gstcaps.h:
8201         * gst/gstinfo.c:
8202         * gst/gstminiobject.h:
8203         * gst/gstobject.h:
8204         * gst/gstutils.h:
8205           more docs added
8206
8207 2005-11-04  Wim Taymans  <wim@fluendo.com>
8208
8209         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
8210         Small update to stop at the configured segment_end
8211         position.
8212
8213 2005-11-04  Stefan Kost  <ensonic@users.sf.net>
8214
8215         * gst/gstregistry.c:
8216         * gst/gstregistry.h:
8217           added missing docs
8218
8219 2005-11-04  Edward Hervey  <edward@fluendo.com>
8220
8221         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
8222         Check if we are doing a segment seek and have arrived at the
8223         end of that segment.
8224
8225 2005-11-04  Wim Taymans  <wim@fluendo.com>
8226
8227         * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
8228         Don't leak a mutex unlock in case of an error.
8229
8230         * gst/gstbus.h:
8231         Doc fixes.
8232
8233 2005-11-04  Wim Taymans  <wim@fluendo.com>
8234
8235         * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
8236         (gst_bus_post):
8237         Get the context to wake up only once.
8238
8239 2005-11-03  Wim Taymans  <wim@fluendo.com>
8240
8241         * check/states/sinks.c: (GST_START_TEST):
8242         Uncomment fixed check.
8243
8244         * docs/design/part-TODO.txt:
8245         Updated TODO.
8246
8247         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8248         (gst_base_sink_handle_object), (gst_base_sink_do_sync),
8249         (gst_base_sink_get_position):
8250         If we are going to PLAYING, post the right pending state
8251         when we post the intermediate paused message.
8252
8253         * gst/gstelement.c: (gst_element_continue_state),
8254         (gst_element_set_state_func), (gst_element_change_state):
8255         Don't post state changes that were between the same state
8256         and were not ASYNC.
8257
8258 2005-11-03  Stefan Kost  <ensonic@users.sf.net>
8259
8260         * docs/gst/gstreamer-sections.txt:
8261         * gst/gstcaps.h:
8262         * gst/gstinfo.c:
8263         * gst/gstminiobject.h:
8264         * gst/gstobject.h:
8265         * gst/gstutils.h:
8266           more docs and doc style fixes
8267
8268 2005-11-03  Stefan Kost  <ensonic@users.sf.net>
8269
8270         * docs/gst/gstreamer-sections.txt:
8271         * gst/gstelement.c:
8272         * gst/gstminiobject.c:
8273         doc fixes
8274
8275 2005-11-03  Andy Wingo  <wingo@pobox.com>
8276
8277         * check/states/sinks.c (test_livesrc_sink): Add checks that the
8278         state-changed messages actually have the right order and the right
8279         values.
8280
8281 2005-11-03  Wim Taymans  <wim@fluendo.com>
8282
8283         * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
8284         Added some more checks. Specifically the case where NO_PREROLL
8285         elements are in the pipeline.
8286
8287         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8288         (gst_base_sink_handle_object), (gst_base_sink_do_sync),
8289         (gst_base_sink_get_position):
8290         Post READY->PAUSED state change messages too.
8291         Fix bug where VOID was posted as pending state...
8292
8293         * gst/gstbin.c: (gst_bin_recalc_state):
8294         use _element_continue_state() to continue the state change.
8295
8296         * gst/gstelement.c: (gst_element_continue_state),
8297         (gst_element_commit_state), (gst_element_set_state_func),
8298         (gst_element_change_state), (gst_element_change_state_func):
8299         Lots of state change cleanups, assign the STATE_RETURN in
8300         a new continue_state() function that also propagates the
8301         last return value from a state change to the app.
8302         Update some debug statements with proper category.
8303
8304 2005-11-03  Wim Taymans  <wim@fluendo.com>
8305
8306         * docs/design/part-events.txt:
8307         * docs/design/part-gstpipeline.txt:
8308         * docs/design/part-messages.txt:
8309         * docs/design/part-overview.txt:
8310         * docs/design/part-seeking.txt:
8311         * docs/design/part-states.txt:
8312         * docs/design/part-trickmodes.txt:
8313         * docs/manual/advanced-position.xml:
8314         Small docs updates.
8315
8316         * gst/gstobject.h:
8317         People think !! is ugly, this looks better.
8318
8319         * gst/gstpad.c: (gst_pad_set_blocked_async):
8320         Remove !! since it's fixed elsewhere now.
8321
8322 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
8323
8324         * gst/gstminiobject.h:
8325         * gst/gstobject.h:
8326           Add !! to _FLAG_IS_SET macros to make the result boolean.
8327
8328 2005-11-03  Edward Hervey  <edward@fluendo.com>
8329
8330         * gst/gstpad.c: (gst_pad_set_blocked_async):
8331         comparing a flag and a gboolean rarely returns coherent results...
8332         Added two characters (!!) to make that work correctly.
8333         
8334 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
8335
8336         * gst/gstbus.c: (gst_bus_class_init):
8337           Fix some typos.
8338           
8339         * gst/gstqueue.c: (gst_queue_loop):
8340           Don't assume a miniobject that isn't a buffer is an
8341           event (it could be that there is a refcounting
8342           problem somewhere and the pointer is stale and
8343           refers to an already destroyed miniobject).
8344
8345 2005-11-03  Julien MOUTTE  <julien@moutte.net>
8346
8347         * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
8348
8349 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
8350
8351         * docs/manual/advanced-position.xml:
8352           Update seek example and explanations to current 0.9 API.
8353
8354         * gst/elements/gsttypefindelement.c:
8355         (gst_type_find_element_activate):
8356           Remove FIXME comment now that the found caps
8357           are unreffed.
8358
8359 2005-11-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8360
8361         * gst/gstregistryxml.c: (load_feature):
8362           Add another GST_STR_NULL instance
8363
8364 2005-11-02  Edward Hervey  <edward@fluendo.com>
8365
8366         * gst/gstpad.c: (handle_pad_block):
8367         Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
8368         
8369 2005-11-02  Wim Taymans  <wim@fluendo.com>
8370
8371         * gst/gstbin.c:
8372         Fix typo in docs.
8373
8374         * gst/gstelement.c: (gst_element_commit_state):
8375         Remove unused value.
8376
8377         * gst/gstiterator.c:
8378         Mention that the returned element is reffed in the docs.
8379
8380 2005-11-02  Wim Taymans  <wim@fluendo.com>
8381
8382         * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
8383         (gst_pad_push), (gst_pad_push_event):
8384         Unlock blocked pads when they are flushed.
8385
8386 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8387
8388         * docs/README:
8389         * docs/gst/gstreamer-sections.txt:
8390         * gst/gstbin.c:
8391           doc updates
8392         * gst/gstregistry.c: (gst_registry_scan_path_level):
8393           fix for a nasty little missed situation where an installed plug-in
8394           which was in the cache did not get overridden by an uninstalled one
8395           which was earlier in the plugin path because the newly created plugin
8396           for the uninstalled one (not in the registry) didn't get its
8397           ->registered set to TRUE
8398
8399 2005-11-02  Tim-Philipp Müller  <tim at centricular dot net>
8400
8401         * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
8402         (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
8403         (gst_collectpads_is_active), (gst_collectpads_collect),
8404         (gst_collectpads_collect_range), (gst_collectpads_start),
8405         (gst_collectpads_stop), (gst_collectpads_peek),
8406         (gst_collectpads_pop), (gst_collectpads_available),
8407         (gst_collectpads_read), (gst_collectpads_flush):
8408           Guard public API with assertions.
8409         
8410         * gst/gstpad.c:
8411           Fix docs for gst_pad_set_link_function().
8412
8413 2005-11-02  Johan Dahlin  <johan@gnome.org>
8414
8415         * gst/elements/gsttypefindelement.c (gst_type_find_element_activate): 
8416         Unref found_caps after we used it.
8417
8418 2005-11-02  Tim-Philipp Müller  <tim at centricular dot net>
8419
8420         * gst/base/gstcollectpads.c: (gst_collectpads_peek):
8421           Don't try to ref NULL.
8422
8423 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8424
8425         * win32/common/config.h.in:
8426           provide a GST_FUNCTION that just gives a string for now
8427
8428 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8429
8430         * win32/common/gstenumtypes.c: (register_gst_object_flags),
8431         (gst_object_flags_get_type), (register_gst_bin_flags),
8432         (gst_bin_flags_get_type), (register_gst_buffer_flag),
8433         (gst_buffer_flag_get_type), (register_gst_bus_flags),
8434         (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
8435         (gst_bus_sync_reply_get_type), (register_gst_clock_return),
8436         (gst_clock_return_get_type), (register_gst_clock_entry_type),
8437         (gst_clock_entry_type_get_type), (register_gst_clock_flags),
8438         (gst_clock_flags_get_type), (register_gst_state),
8439         (gst_state_get_type), (register_gst_state_change_return),
8440         (gst_state_change_return_get_type), (register_gst_state_change),
8441         (gst_state_change_get_type), (register_gst_element_flags),
8442         (gst_element_flags_get_type), (register_gst_core_error),
8443         (gst_core_error_get_type), (register_gst_library_error),
8444         (gst_library_error_get_type), (register_gst_resource_error),
8445         (gst_resource_error_get_type), (register_gst_stream_error),
8446         (gst_stream_error_get_type), (register_gst_event_type),
8447         (gst_event_type_get_type), (register_gst_seek_type),
8448         (gst_seek_type_get_type), (register_gst_seek_flags),
8449         (gst_seek_flags_get_type), (register_gst_format),
8450         (gst_format_get_type), (register_gst_index_certainty),
8451         (gst_index_certainty_get_type), (register_gst_index_entry_type),
8452         (gst_index_entry_type_get_type),
8453         (register_gst_index_lookup_method),
8454         (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
8455         (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
8456         (gst_index_resolver_method_get_type), (register_gst_index_flags),
8457         (gst_index_flags_get_type), (register_gst_debug_level),
8458         (gst_debug_level_get_type), (register_gst_debug_color_flags),
8459         (gst_debug_color_flags_get_type), (register_gst_iterator_result),
8460         (gst_iterator_result_get_type), (register_gst_iterator_item),
8461         (gst_iterator_item_get_type), (register_gst_message_type),
8462         (gst_message_type_get_type), (register_gst_mini_object_flags),
8463         (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
8464         (gst_pad_link_return_get_type), (register_gst_flow_return),
8465         (gst_flow_return_get_type), (register_gst_activate_mode),
8466         (gst_activate_mode_get_type), (register_gst_pad_direction),
8467         (gst_pad_direction_get_type), (register_gst_pad_flags),
8468         (gst_pad_flags_get_type), (register_gst_pad_presence),
8469         (gst_pad_presence_get_type), (register_gst_pad_template_flags),
8470         (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
8471         (gst_pipeline_flags_get_type), (register_gst_plugin_error),
8472         (gst_plugin_error_get_type), (register_gst_plugin_flags),
8473         (gst_plugin_flags_get_type), (register_gst_rank),
8474         (gst_rank_get_type), (register_gst_query_type),
8475         (gst_query_type_get_type), (register_gst_tag_merge_mode),
8476         (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
8477         (gst_tag_flag_get_type), (register_gst_task_state),
8478         (gst_task_state_get_type), (register_gst_alloc_trace_flags),
8479         (gst_alloc_trace_flags_get_type),
8480         (register_gst_type_find_probability),
8481         (gst_type_find_probability_get_type), (register_gst_uri_type),
8482         (gst_uri_type_get_type), (register_gst_parse_error),
8483         (gst_parse_error_get_type):
8484         * win32/common/gstversion.h:
8485           update win32 copies
8486
8487 2005-11-01  Luca Ognibene  <luogni@tin.it>
8488
8489         * gst/gst.c:
8490           fix docs. popt is dead, long live GOption.
8491
8492 2005-10-31  Wim Taymans  <wim@fluendo.com>
8493
8494         * gst/gstbuffer.h:
8495         Small doc fix.
8496
8497 2005-10-31  Andy Wingo  <wingo@pobox.com>
8498
8499         * Boo!
8500
8501         * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
8502
8503         * gst/gstobject.c (gst_object_dispatch_properties_changed): No
8504         need to serialize property notifications on GLib 2.8. GLib 2.6 has
8505         the possibility of deadlocks here if code calling notify() or
8506         set() has a lock that can be taken in another notify handler (ABBA
8507         with class lock and e.g. python GIL state lock).
8508
8509 2005-10-28  Julien MOUTTE  <julien@moutte.net>
8510
8511         * gst/gstbus.c: Doc updates.
8512
8513 2005-10-28  Wim Taymans  <wim@fluendo.com>
8514
8515         * docs/design/part-TODO.txt:
8516         * gst/gstiterator.c:
8517         * gst/gstsystemclock.c:
8518         * gst/gstsystemclock.h:
8519         Doc updates.
8520
8521 2005-10-28  Edward Hervey  <edward@fluendo.com>
8522
8523         * docs/gst/gstreamer-docs.sgml:
8524         * docs/gst/gstreamer-sections.txt:
8525         the GstURIType documentation page is private, it only defines GstURIType
8526         which should be defined in the GstURIHandler page
8527         
8528 2005-10-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8529
8530         * gst/gstbin.c: (gst_bin_class_init):
8531         * gst/gstbin.h:
8532         * gst/gstutils.c:
8533         Documentation updates.
8534
8535 2005-10-28  Wim Taymans  <wim@fluendo.com>
8536
8537         * docs/gst/gstreamer-sections.txt:
8538         * gst/gstclock.c:
8539         * gst/gstclock.h:
8540         Documented the clocks.
8541
8542 2005-10-28  Stefan Kost  <ensonic@users.sf.net>
8543
8544         * docs/gst/gstreamer-sections.txt:
8545           move some macros to private sections
8546         * gst/gstminiobject.c:
8547         * gst/gstminiobject.h:
8548           add descriptions provided by ds and some more
8549         * gst/gstpad.h:
8550           mark macro as to be removed
8551
8552 2005-10-28  Wim Taymans  <wim@fluendo.com>
8553
8554         * docs/design/part-TODO.txt:
8555         Add an item to TODO.
8556
8557         * gst/gstiterator.c: (gst_iterator_fold),
8558         (gst_iterator_find_custom):
8559         * gst/gstiterator.h:
8560         Add iterator docs.
8561
8562 2005-10-28  Wim Taymans  <wim@fluendo.com>
8563
8564         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
8565         (gst_base_transform_init):
8566         Don't leak class.
8567
8568         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
8569         An EOS event marks the queue as completely filled.
8570
8571 2005-10-27  Wim Taymans  <wim@fluendo.com>
8572
8573         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8574         (gst_base_sink_do_sync), (gst_base_sink_get_position):
8575         Some more debugging.
8576
8577         * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
8578         (gst_base_transform_init), (gst_base_transform_buffer_alloc),
8579         (gst_base_transform_event), (gst_base_transform_getrange),
8580         (gst_base_transform_chain):
8581         * gst/base/gstbasetransform.h:
8582         Fix debugging,
8583         Protect transform and concurrent buffer alloc with a new lock.
8584         Try not to break ABI/API.
8585
8586 2005-10-27  Wim Taymans  <wim@fluendo.com>
8587
8588         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
8589         (gst_base_src_init), (gst_base_src_query),
8590         (gst_base_src_default_newsegment),
8591         (gst_base_src_configure_segment), (gst_base_src_do_seek),
8592         (gst_base_src_send_event), (gst_base_src_event_handler),
8593         (gst_base_src_pad_get_range), (gst_base_src_loop),
8594         (gst_base_src_unlock), (gst_base_src_default_negotiate),
8595         (gst_base_src_start), (gst_base_src_deactivate),
8596         (gst_base_src_activate_push), (gst_base_src_change_state):
8597         Move some stuff around and cleanup things.
8598
8599 2005-10-27  Tim-Philipp Müller  <tim at centricular dot net>
8600
8601         * gst/base/gstbasesrc.c: (gst_base_src_query):
8602           Add missing break statements.
8603
8604 2005-10-27  Wim Taymans  <wim@fluendo.com>
8605
8606         * check/gst/gstbin.c: (GST_START_TEST):
8607         An extra refcount is taken in basesrc.
8608
8609         * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
8610         (gst_base_src_get_range), (gst_base_src_pad_get_range),
8611         (gst_base_src_loop):
8612         Small cleanups, check for flushing after being unlocked from the 
8613         LIVE_LOCK. take refcounts correctly (not yet everywhere).
8614         Don't send out EOS when going to READY.
8615
8616 2005-10-27  Wim Taymans  <wim@fluendo.com>
8617
8618         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8619         (gst_base_sink_get_position):
8620         Some more debug.
8621
8622         * gst/gstbin.c: (message_check), (bin_replace_message),
8623         (bin_remove_messages), (is_eos), (gst_bin_add_func),
8624         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8625         (bin_query_duration_init), (bin_query_duration_fold),
8626         (bin_query_duration_done), (bin_query_generic_fold),
8627         (gst_bin_query):
8628         * tools/gst-launch.c: (main):
8629         Remove old option.
8630
8631 2005-10-26  Stefan Kost  <ensonic@users.sf.net>
8632
8633         * examples/controller/audio-example.c: (main):
8634         * examples/queue/queue.c: (event_loop):
8635         * gst/base/gstbasetransform.h:
8636         * gst/gstelement.c: (gst_element_send_event):
8637         * gst/gstevent.h:
8638         * gst/gstpad.c: (gst_pad_send_event):
8639           fixing examples
8640           fixing docs typos
8641           changing log priority in error situations
8642
8643 2005-10-25  Wim Taymans  <wim@fluendo.com>
8644
8645         * gst/gstbin.c: (message_check), (bin_replace_message),
8646         (bin_remove_messages), (is_eos), (gst_bin_add_func),
8647         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8648         (bin_query_duration_init), (bin_query_duration_fold),
8649         (bin_query_duration_done), (bin_query_generic_fold),
8650         (gst_bin_query):
8651         Some doc and debug updates.
8652         Cache previously requested query DURATION for speed. invalidate
8653         cached duration if element posts a DURATION message.
8654
8655 2005-10-25  Wim Taymans  <wim@fluendo.com>
8656
8657         * docs/design/part-TODO.txt:
8658         Update TODO.
8659
8660         * gst/gstbin.c: (message_check), (bin_replace_message),
8661         (bin_remove_messages), (is_eos), (gst_bin_add_func),
8662         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8663         (bin_query_duration_init), (bin_query_duration_fold),
8664         (bin_query_duration_done), (bin_query_generic_fold),
8665         (gst_bin_query):
8666         Handle SEGMENT_START/DONE messages correctly.
8667         More evolved query algorithm that handles duration queries
8668         correctly.
8669
8670         * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
8671         (gst_element_get_state_func), (gst_element_abort_state),
8672         (gst_element_commit_state), (gst_element_lost_state):
8673         Some more debugging.
8674
8675         * gst/gstmessage.h:
8676         Added doc.
8677
8678 2005-10-25  Wim Taymans  <wim@fluendo.com>
8679
8680         * gst/base/gstbasesink.c: (gst_base_sink_get_position):
8681         Don't use invalid stream_time.
8682
8683         * gst/gstevent.c: (gst_event_new_newsegment):
8684         stream_time in newsegment cannot be undefined.
8685
8686 2005-10-24  Wim Taymans  <wim@fluendo.com>
8687
8688         * gst/gstbus.c:
8689         Doc fix.
8690
8691         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
8692         (gst_queue_loop):
8693         Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
8694
8695 2005-10-24  Stefan Kost  <ensonic@users.sf.net>
8696
8697         * docs/libs/tmpl/gstdparam.sgml:
8698         * docs/libs/tmpl/gstdplinint.sgml:
8699         * docs/libs/tmpl/gstdpman.sgml:
8700         * docs/libs/tmpl/gstdpsmooth.sgml:
8701         * docs/libs/tmpl/gstunitconvert.sgml:
8702           these are obsolete
8703
8704 2005-10-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8705
8706         * configure.ac:
8707           back to HEAD
8708
8709 === release 0.9.4 ===
8710
8711 2005-10-23  Thomas Vander Stichele  <thomas at apestaart dot org>
8712
8713         * configure.ac:
8714           releasing 0.9.4, "Tyrannosaurus Rex"
8715
8716 2005-10-23  Tim-Philipp Müller  <tim at centricular dot net>
8717
8718         * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
8719         (gst_file_sink_get_current_offset):
8720           Use fseeko() and ftello() if available. When falling back on
8721           lseek() to get the current offset, fflush() first to make sure
8722           everything is up-to-date and we get the right offset.
8723
8724 2005-10-23  Thomas Vander Stichele  <thomas at apestaart dot org>
8725
8726         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8727         * gst/base/gstbasesrc.c: (gst_base_src_loop):
8728         * gst/gsterror.c: (_gst_stream_errors_init):
8729         * gst/gsterror.h:
8730         * gst/gstqueue.c: (gst_queue_loop):
8731         * po/POTFILES.in:
8732           remove prematurely added error category and clean up the instances
8733
8734 2005-10-21  Wim Taymans  <wim@fluendo.com>
8735
8736         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8737         (gst_base_sink_get_position), (gst_base_sink_query),
8738         (gst_base_sink_change_state):
8739         Simply set the right flag when going to playing, that's all
8740         we need to do instead of calling a function inside the object
8741         lock (that could take the lock as well and deadlock)
8742
8743 2005-10-21  Wim Taymans  <wim@fluendo.com>
8744
8745         * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
8746         (gst_base_src_loop):
8747         Don't warn, the peer element knows what to do best when
8748         the seek failed, it might try something else.
8749
8750 2005-10-21  Wim Taymans  <wim@fluendo.com>
8751
8752         * gst/base/gstbasesrc.c: (gst_base_src_init),
8753         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
8754         Fix seeking.
8755
8756 2005-10-21  Wim Taymans  <wim@fluendo.com>
8757
8758         * docs/design/part-segments.txt:
8759         More docs.
8760
8761         * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
8762         Correctly set caps, even on the subbufer.
8763
8764 2005-10-21  Wim Taymans  <wim@fluendo.com>
8765
8766         * docs/gst/gstreamer-docs.sgml:
8767         * docs/gst/gstreamer-sections.txt:
8768         * gst/gstelement.h:
8769         * gst/gstevent.c:
8770         * gst/gstevent.h:
8771         * gst/gstmessage.h:
8772         * gst/gstpad.h:
8773         * gst/gstparse.h:
8774         * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
8775         * gst/gsttask.h:
8776         * gst/gstutils.c:
8777         * gst/gstutils.h:
8778         And 2% more doc coverage.
8779
8780 2005-10-21  Andy Wingo  <wingo@pobox.com>
8781
8782         * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
8783         position reporting.
8784
8785 2005-10-20  Wim Taymans  <wim@fluendo.com>
8786
8787         * gst/gsterror.c: (gst_error_get_message):
8788         * gst/gstparse.h:
8789         * gst/gstquery.h:
8790         * gst/gststructure.c:
8791         * gst/gsttrace.c:
8792         * gst/gstutils.c:
8793         More docs.
8794
8795 2005-10-20  Wim Taymans  <wim@fluendo.com>
8796
8797         * gst/gstbuffer.h:
8798         * gst/gstpad.c:
8799         * gst/gstparse.c:
8800         Another 1% more coverage.
8801
8802 2005-10-20  Wim Taymans  <wim@fluendo.com>
8803
8804         * docs/gst/gstreamer-sections.txt:
8805         * gst/gstelement.c: (gst_element_get_state_func),
8806         (gst_element_abort_state), (gst_element_commit_state),
8807         (gst_element_lost_state):
8808         * gst/gstevent.h:
8809         * gst/gstquery.c: (gst_query_set_position),
8810         (gst_query_parse_position), (gst_query_set_duration),
8811         (gst_query_parse_duration), (gst_query_new_convert):
8812         * gst/gstutils.c:
8813         Yay! 1% more docs coverage.
8814
8815 2005-10-20  Wim Taymans  <wim@fluendo.com>
8816
8817         * gst/gstpad.h:
8818         * gst/gstquery.c: (gst_query_set_position),
8819         (gst_query_parse_position), (gst_query_set_duration),
8820         (gst_query_parse_duration), (gst_query_new_convert):
8821         * gst/gstquery.h:
8822         * gst/gstutils.c: (gst_element_query_convert):
8823         * gst/gstutils.h:
8824         Docs and consistency fixes.
8825
8826 2005-10-20  Wim Taymans  <wim@fluendo.com>
8827
8828         * gst/gsttask.c:
8829         * gst/gsttask.h:
8830         More docs.
8831
8832 2005-10-20  Wim Taymans  <wim@fluendo.com>
8833
8834         * gst/gstbin.c: (message_check), (bin_replace_message),
8835         (bin_remove_messages), (is_eos), (gst_bin_add_func),
8836         (update_degree), (gst_bin_sort_iterator_next),
8837         (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
8838         Reworked the message handling a bit, cache the messages instead of
8839         only the senders. alows us to do more in the future.
8840
8841 2005-10-20  Wim Taymans  <wim@fluendo.com>
8842
8843         * docs/design/part-TODO.txt:
8844         Update TODO
8845
8846         * gst/base/gstbasesink.c: (gst_base_sink_get_position),
8847         (gst_base_sink_query):
8848         Don't use clock time to report position when in EOS.
8849
8850 2005-10-20  Tim-Philipp Müller  <tim at centricular dot net>
8851
8852         * tools/gst-inspect.c: (print_interfaces),
8853         (print_element_properties_info), (print_element_info):
8854           Fix interface output with gst-inspect -a; don't print
8855           newlines after double/float properties.
8856
8857 2005-10-20  Wim Taymans  <wim@fluendo.com>
8858
8859         * gst/base/gstbasesink.c: (gst_base_sink_get_position),
8860         (gst_base_sink_query):
8861         Speed up current position calculation.
8862
8863         * gst/base/gstbasesrc.c: (gst_base_src_query),
8864         (gst_base_src_default_newsegment):
8865         Correctly set stream position in newsegment.
8866
8867         * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
8868         (update_degree), (gst_bin_sort_iterator_next),
8869         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
8870         * gst/gstmessage.c: (gst_message_new_custom):
8871         Clean up debugging info
8872
8873         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
8874         (gst_queue_loop), (gst_queue_handle_src_query):
8875         Pause task faster.
8876
8877 2005-10-19  Wim Taymans  <wim@fluendo.com>
8878
8879         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8880         (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
8881         Fix query handling again.
8882
8883 2005-10-19  Wim Taymans  <wim@fluendo.com>
8884
8885         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8886         (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
8887         * gst/base/gstbasesrc.c: (gst_base_src_query):
8888         * gst/elements/gstfilesink.c: (gst_file_sink_query):
8889         * gst/elements/gsttypefindelement.c:
8890         (gst_type_find_handle_src_query), (find_element_get_length),
8891         (gst_type_find_element_activate):
8892         API change fix.
8893
8894         * gst/gstquery.c: (gst_query_new_position),
8895         (gst_query_set_position), (gst_query_parse_position),
8896         (gst_query_new_duration), (gst_query_set_duration),
8897         (gst_query_parse_duration), (gst_query_set_segment),
8898         (gst_query_parse_segment):
8899         * gst/gstquery.h:
8900         Bundling query position/duration is not a good idea since duration
8901         does not change much and we don't want to recalculate it for every
8902         position query, so they are separated again..
8903         Base value in segment query is not needed.
8904
8905         * gst/gstqueue.c: (gst_queue_handle_src_query):
8906         * gst/gstutils.c: (gst_element_query_position),
8907         (gst_element_query_duration), (gst_pad_query_position),
8908         (gst_pad_query_duration):
8909         * gst/gstutils.h:
8910         Updates for query API change.
8911         Added some docs here and there.
8912
8913 2005-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8914
8915         * check/gst/gstbin.c: (GST_START_TEST):
8916         * check/gst/gstghostpad.c: (GST_START_TEST):
8917         * check/pipelines/cleanup.c: (GST_START_TEST):
8918           wait on thread to die so we can check refcount correctly
8919
8920 2005-10-18  Wim Taymans  <wim@fluendo.com>
8921
8922         * check/pipelines/stress.c: (GST_START_TEST):
8923         Make check a little more time consuming.
8924
8925 2005-10-18  Wim Taymans  <wim@fluendo.com>
8926
8927         * check/Makefile.am:
8928         * check/pipelines/stress.c: (GST_START_TEST),
8929         (simple_launch_lines_suite), (main):
8930         Small state change torture test.
8931
8932         * docs/design/part-states.txt:
8933         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8934         (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
8935         (gst_base_sink_change_state):
8936         Never take state lock from streaming thread, clean up ugly
8937         hacks. Unfortunatly core does not yet support nice ways to
8938         async commit state.
8939         
8940         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
8941         (bin_bus_handler):
8942         Start state recalc if a STATE_DIRTY message is posted, but only
8943         on the toplevel bin.
8944
8945         * gst/gstelement.c: (gst_element_sync_state_with_parent),
8946         (gst_element_get_state_func), (gst_element_abort_state),
8947         (gst_element_commit_state), (gst_element_lost_state),
8948         (gst_element_set_state_func), (gst_element_change_state):
8949         * gst/gstelement.h:
8950         State variables are now protected with the LOCK, the state
8951         lock is only used to serialize _set_state().
8952
8953 2005-10-18  Wim Taymans  <wim@fluendo.com>
8954
8955         * check/gst/gstbin.c: (GST_START_TEST):
8956         * check/gst/gstmessage.c: (GST_START_TEST):
8957         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
8958         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
8959         (bin_bus_handler):
8960         * gst/gstelement.c: (gst_element_abort_state),
8961         (gst_element_commit_state), (gst_element_lost_state):
8962         * gst/gstmessage.c: (gst_message_new_state_changed),
8963         (gst_message_new_state_dirty), (gst_message_new_segment_start),
8964         (gst_message_new_segment_done), (gst_message_new_duration),
8965         (gst_message_parse_state_changed),
8966         (gst_message_parse_segment_start),
8967         (gst_message_parse_segment_done), (gst_message_parse_duration):
8968         * gst/gstmessage.h:
8969         * tools/gst-launch.c: (event_loop):
8970         Seriously, this is better than a previous commit as we only need
8971         to notify the fact that an element changed state in a streaming
8972         thread, marking the state of the parents dirty, hence the 
8973         STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
8974         message.
8975
8976 2005-10-18  Wim Taymans  <wim@fluendo.com>
8977
8978         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
8979         (gst_bin_recalc_func):
8980         * gst/gstelement.c: (gst_element_set_clock),
8981         (gst_element_abort_state), (gst_element_lost_state):
8982         Cleanups, prepare for state change fixes.
8983
8984 2005-10-18  Wim Taymans  <wim@fluendo.com>
8985
8986         * gst/gstbin.h:
8987         * gst/gstelement.c: (gst_element_class_init),
8988         (gst_element_set_state), (gst_element_set_state_func):
8989         * gst/gstelement.h:
8990         Pending ABI changes.
8991         GThreadPool in GstBinClass to monitor async state changes.
8992         state_cookie in GstElement to detect concurrent gst/set state.
8993         set_state is now virtual too in case a very complicated element
8994         has to be constructed.
8995
8996 2005-10-18  Wim Taymans  <wim@fluendo.com>
8997
8998         * check/gst/gstbin.c: (GST_START_TEST):
8999         * check/gst/gstmessage.c: (GST_START_TEST):
9000         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
9001         * gst/gstbin.c: (bin_bus_handler):
9002         * gst/gstelement.c: (gst_element_commit_state),
9003         (gst_element_lost_state):
9004         * gst/gstmessage.c: (gst_message_new_state_changed),
9005         (gst_message_new_segment_start), (gst_message_new_segment_done),
9006         (gst_message_new_duration), (gst_message_parse_state_changed),
9007         (gst_message_parse_segment_start),
9008         (gst_message_parse_segment_done), (gst_message_parse_duration):
9009         * gst/gstmessage.h:
9010         * tools/gst-launch.c: (event_loop):
9011         Make messages future proof.
9012         state-change gets a flag if it was a message comming from the
9013         streaming thread.
9014         segment-start/stop can also be specified in other formats.
9015         A message to notify an app that a pipeline changed playback 
9016         duration.
9017         Also fix a GstMessage leak in -launch
9018
9019 2005-10-18  Andy Wingo  <wingo@pobox.com>
9020
9021         * gst/gstelement.c (gst_element_dispose): More helpful message.
9022
9023 2005-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9024
9025         reviewed by: <delete if not using a buddy>
9026
9027         * common/gtk-doc.mak:
9028
9029 2005-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9030
9031         * gst/gstregistry.c: (gst_registry_scan_path_level):
9032           unref a plug-in we get that was already initialized
9033
9034 2005-10-18  Stefan Kost  <ensonic@users.sf.net>
9035
9036         * docs/gst/gstreamer-sections.txt:
9037         * docs/libs/gstreamer-libs-sections.txt:
9038         * gst/gstelement.h:
9039           add new api entries
9040           hide internal macro
9041
9042 2005-10-17  Andy Wingo  <wingo@pobox.com>
9043
9044         * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
9045         cleanup.
9046
9047         * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
9048
9049         * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
9050
9051         * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
9052         (gst_element_get_state_func): Better debug message.
9053         (gst_element_commit_state): s/INFO/DEBUG/.
9054         (gst_element_lost_state, gst_element_change_state): 
9055
9056         * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
9057         (gst_message_new_custom): s/INFO/LOG/.
9058
9059 2005-10-17  Michael Smith <msmith@fluendo.com>
9060
9061         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
9062           Check if end time is valid using end time, not start time.
9063
9064 2005-10-17  Stefan Kost  <ensonic@users.sf.net>
9065
9066         * check/gst-libs/controller.c: (GST_START_TEST),
9067         (gst_controller_suite):
9068         * libs/gst/controller/gstcontroller.c:
9069         (gst_controlled_property_set_interpolation_mode):
9070         * libs/gst/controller/gstcontroller.h:
9071         * libs/gst/controller/gstinterpolation.c:
9072         * testsuite/controller/.cvsignore:
9073         * testsuite/controller/Makefile.am:
9074         * testsuite/controller/interpolator.c:
9075           merge controller testsuites
9076           fix broken tests
9077           remove mem-chunk from docs
9078
9079 2005-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9080
9081         * gst/gstmemchunk.c:
9082         * gst/gstmemchunk.h:
9083         * gst/gsttrashstack.c:
9084         * gst/gsttrashstack.h:
9085           out.  get out.  you're fired.  to the Attic !
9086
9087 2005-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9088
9089         * gst/gstcaps.c: (gst_caps_intersect):
9090           fix signedness issues in a (hopefully) correct way
9091         * gst/gstelement.c: (gst_element_pads_activate):
9092           some debugging
9093         * gst/gstobject.c: (gst_object_set_parent):
9094           some debugging
9095
9096 2005-10-17  Julien MOUTTE  <julien@moutte.net>
9097
9098         * gst/gstvalue.h: Fix prototypes.
9099
9100 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9101
9102         * docs/gst/gstreamer-sections.txt:
9103         * gst/gst.c: (gst_version_string):
9104         * gst/gst.h:
9105         * gst/gstversion.h.in:
9106         * win32/common/libgstreamer.def:
9107           add gst_version_string ()
9108
9109 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9110
9111         * configure.ac:
9112           clean up further
9113         * gst/gst.c: (init_post):
9114         * win32/common/config.h.in:
9115           it's PLUGINDIR now
9116         * gst/gstcaps.c: (gst_caps_intersect):
9117           use gint64, the range could be bigger than a guint
9118
9119 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9120
9121         * gst/gstclock.h:
9122           document potential problem in 2038
9123
9124 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9125
9126         * gst/gstcaps.c: (gst_caps_intersect):
9127           Fix guint j diving under 0
9128
9129 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9130
9131         * configure.ac:
9132         * win32/common/config.h:
9133         * win32/common/config.h.in:
9134           check for process.h, declares getpid() on Windows
9135         * gst/gstinfo.c:
9136           include process.h if we have it
9137         * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
9138         * gst/gstmemchunk.h:
9139           fix signedness issues
9140         * win32/common/libgstreamer.def:
9141           fix get_type's
9142
9143 2005-10-16  Julien MOUTTE  <julien@moutte.net>
9144
9145         * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
9146         fix. Because of unsigned ints, caps intersection was going nuts and
9147         trying to access structures with G_MAXUINT index. That fixes
9148         videotestsrc ! ffmpegcolorspace ! fakesink
9149         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
9150         consistency.
9151
9152 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9153
9154         * configure.ac:
9155           use the gettext macro
9156         * gst/elements/gstelements.c:
9157         * gst/gst.c:
9158         * gst/indexers/gstindexers.c:
9159           update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
9160         * win32/common/config.h:
9161           updated config.h
9162         * win32/common/config.h.in:
9163           add the template to generate config.h
9164         * win32/common/gstenumtypes.c:
9165         * win32/common/gstversion.h:
9166           updated copies
9167
9168 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9169
9170         * gst/gst.c: (gst_version):
9171         * gst/gstversion.h.in:
9172           add the nano
9173
9174 2005-10-15  Tim-Philipp Müller  <tim at centricular dot net>
9175
9176         * gst/gstevent.h:
9177           Oops, add missing closing bracket.
9178
9179 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9180
9181         * configure.ac:
9182           use common m4's for argument checking
9183
9184 2005-10-15  Tim-Philipp Müller  <tim at centricular dot net>
9185
9186         * docs/gst/gstreamer-sections.txt:
9187         * gst/gstevent.h:
9188           Add GST_EVENT_TYPE_NAME() macro.
9189
9190 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9191
9192         * gst/gstinfo.c:
9193         * gst/gstpluginfeature.c:
9194         * gst/gsttask.c:
9195           privatize more symbols
9196
9197 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9198
9199         * configure.ac:
9200           add srcdir, builddir includes to GST_ALL_CFLAGS, since
9201           everything that uses GStreamer API should have the includes
9202
9203 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9204
9205         * docs/gst/gstreamer-sections.txt:
9206         * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
9207         * gst/gstvalue.h:
9208           give each value a _get_type, removes the DATA exports
9209
9210 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9211
9212         * gst/gst.c:
9213         * gst/gst.h:
9214           remove _gst_registry_auto_load, not used anymore
9215         * gst/gstbin.c: (gst_bin_get_type):
9216         * gst/gstbin.h:
9217         * gst/gstelement.c: (gst_element_get_type):
9218         * gst/gstelement.h:
9219         * gst/gstobject.c: (gst_object_get_type):
9220         * gst/gstobject.h:
9221         * gst/gstpad.c: (gst_pad_get_type):
9222         * gst/gstpad.h:
9223           make _get_type functions similar, fixes data export from library
9224
9225 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9226
9227         * configure.ac:
9228           correctly make conditionals
9229         * gst/elements/Makefile.am:
9230         * gst/elements/gstelements.c:
9231           fix typo causing fdsrc not to build
9232
9233 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9234
9235         * testsuite/Makefile.am:
9236         * testsuite/bytestream/.cvsignore:
9237         * testsuite/bytestream/Makefile.am:
9238         * testsuite/bytestream/filepadsink.c:
9239         * testsuite/bytestream/gstbstest.c:
9240         * testsuite/bytestream/test1.c:
9241         * testsuite/bytestream/testfile1:
9242         * testsuite/caps/normalisation.c:
9243         * testsuite/caps/random.c: (main):
9244         * testsuite/cleanup/.cvsignore:
9245         * testsuite/cleanup/Makefile.am:
9246         * testsuite/cleanup/cleanup1.c:
9247         * testsuite/cleanup/cleanup2.c:
9248         * testsuite/cleanup/cleanup3.c:
9249         * testsuite/cleanup/cleanup4.c:
9250         * testsuite/cleanup/cleanup5.c:
9251         * testsuite/controller/interpolator.c:
9252         * testsuite/debug/printf_extension.c: (main):
9253         * testsuite/elements/tee.c:
9254         * testsuite/negotiation/.cvsignore:
9255         * testsuite/negotiation/Makefile.am:
9256         * testsuite/negotiation/pad_link.c:
9257         * testsuite/pad/Makefile.am:
9258         * testsuite/pad/chainnopull.c:
9259         * testsuite/pad/getnopush.c:
9260         * testsuite/pad/link.c:
9261         * testsuite/refcounting/sched.c: (create_pipeline):
9262         * testsuite/registry/Makefile.am:
9263         * testsuite/registry/gst-print-formats.c:
9264         * testsuite/schedulers/.cvsignore:
9265         * testsuite/schedulers/142183-2.c:
9266         * testsuite/schedulers/142183.c:
9267         * testsuite/schedulers/143777-2.c:
9268         * testsuite/schedulers/143777.c:
9269         * testsuite/schedulers/147713.c:
9270         * testsuite/schedulers/147819.c:
9271         * testsuite/schedulers/147894-2.c:
9272         * testsuite/schedulers/147894.c:
9273         * testsuite/schedulers/Makefile.am:
9274         * testsuite/schedulers/group_link.c:
9275         * testsuite/schedulers/queue_link.c:
9276         * testsuite/schedulers/relink.c:
9277         * testsuite/schedulers/unlink.c:
9278         * testsuite/schedulers/unref.c:
9279         * testsuite/schedulers/useless_iteration.c:
9280         * testsuite/states/bin.c:
9281           clean out/remove some stuff from the testsuite directories
9282
9283 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9284
9285         * configure.ac:
9286           check for some headers
9287         * gst/elements/Makefile.am:
9288         * gst/elements/gstelements.c:
9289           don't compile fdsrc without sys/socket.h
9290         * gst/indexers/Makefile.am:
9291         * gst/indexers/gstindexers.c: (plugin_init):
9292           don't compile fileindex without mmap
9293
9294 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9295
9296         * configure.ac:
9297           reorganize
9298           clean up
9299           document more
9300           remove cruft
9301         * check/Makefile.am:
9302         * docs/gst/Makefile.am:
9303         * examples/helloworld/Makefile.am:
9304         * gst/Makefile.am:
9305         * gst/base/Makefile.am:
9306         * gst/check/Makefile.am:
9307         * gst/elements/Makefile.am:
9308         * gst/indexers/Makefile.am:
9309         * gst/parse/Makefile.am:
9310         * libs/gst/controller/Makefile.am:
9311         * libs/gst/dataprotocol/Makefile.am:
9312         * examples/helloworld/helloworld.c: (event_loop):
9313           compile fixes, though it's not being compiled currently
9314
9315 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
9316
9317         * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
9318           Add some simple tests for the new taglist date API.
9319
9320 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
9321
9322         * gst/elements/gstfakesink.c: (gst_fake_sink_render):
9323         * gst/elements/gstfakesrc.c: (gst_fake_src_create):
9324           Beautify 'last-message' output: print 'none' for buffer timestamps
9325           and durations if none is set; improve alignment with next messages.
9326
9327 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
9328
9329         * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
9330         * gst/gstpluginfeature.h:
9331         * gst/gstregistry.c: (gst_default_registry_check_feature_version):
9332         * gst/gstregistry.h:
9333         * docs/gst/gstreamer-sections.txt:
9334           Add new API to check plugin feature version requirements.
9335
9336         * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
9337           Some basic tests for the above.         
9338
9339 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9340
9341         * gst/gststructure.c: (gst_structure_to_string):
9342           guard against NULL printf - happens when for example
9343           a message structure with GstClock gets serialized
9344
9345 2005-10-13  Tim-Philipp Müller  <tim at centricular dot net>
9346
9347         * gst/base/gstcollectpads.c: (gst_collectpads_event):
9348           Fix presumable copy'n'pasto.
9349
9350 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9351
9352         * gst/elements/gstfakesrc.h:
9353         * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
9354         * gst/elements/gsttypefindelement.c:
9355           fix some signedness
9356         * gst/elements/gstfilesink.c: (gst_file_sink_render):
9357           I wonder if this could actually write +2GB files before
9358
9359 2005-10-13  Andy Wingo  <wingo@pobox.com>
9360
9361         * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
9362         Fix Timmeke Waymans bug.
9363         (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
9364         string of the proper length to gst_caps_from_string. There's a
9365         potential for, before this fix, that this could cause someone
9366         connecting over the network to cause a segfault if the payload is
9367         not NUL-terminated.
9368
9369 2005-10-13  Stefan Kost  <ensonic@users.sf.net>
9370
9371         * docs/design/draft-push-pull.txt:
9372         * docs/design/part-overview.txt:
9373         * docs/random/TODO-pre-0.9:
9374         * docs/random/old/ChangeLog.gstreamer:
9375         * gst/base/gstpushsrc.c:
9376         * gst/gstclock.c:
9377           fixed typos
9378
9379 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9380
9381         * gst/glib-compat.c: (gst_flags_get_first_value):
9382         * gst/glib-compat.h:
9383         * gst/gstvalue.c: (gst_value_deserialize_int_helper),
9384         (gst_value_compare_double), (gst_value_serialize_flags):
9385           GLib 2.6 g_flags_get_first_value has a bug that triggers an
9386           infinite loop
9387
9388 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9389
9390         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9391         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
9392           fix up debugging
9393         * tools/gst-launch.c: (event_loop):
9394           print out clock nicely
9395
9396 2005-10-13  Tim-Philipp Müller  <tim at centricular dot net>
9397
9398         * docs/gst/gstreamer-sections.txt:
9399         * gst/gsttaglist.h:
9400         * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
9401         (gst_tag_list_get_date_index):
9402           Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
9403           GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
9404
9405 2005-10-13  Julien MOUTTE  <julien@moutte.net>
9406
9407         * gst/base/gstcollectpads.c: (gst_collectpads_event),
9408         (gst_collectpads_chain):
9409         * gst/base/gstcollectpads.h: Handle newsegment and store informations
9410         in CollectData.
9411
9412 2005-10-13  Stefan Kost  <ensonic@users.sf.net>
9413
9414         * docs/gst/gstreamer-sections.txt:
9415         * gst/gst.c:
9416         * gst/gsterror.h:
9417         * tools/gst-inspect.c: (main):
9418         * tools/gst-launch.c: (main):
9419         * tools/gst-run.c: (main):
9420         * tools/gst-xmlinspect.c: (main):
9421           fix GOption context leaks
9422           doc fixes
9423
9424 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9425
9426         * gst/gstbus.c:
9427           use HAVE_UNISTD_H
9428         * win32/common/config.h:
9429           update config
9430         * win32/vs6/grammar.dsp:
9431         * win32/vs6/libgstelements.dsp:
9432         * win32/vs6/libgstreamer.dsp:
9433           update vs6 files
9434
9435 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9436
9437         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9438         * gst/base/gstbasesrc.c: (gst_base_src_query):
9439           fix more guint64<->gdouble conversions
9440
9441 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9442
9443         * Makefile.am:
9444           add win32-update target
9445         * win32/common/gstconfig.h:
9446         * win32/common/gstenumtypes.c:
9447         * win32/common/gstenumtypes.h:
9448         * win32/common/gstversion.h:
9449           add files that visual studio can't generate
9450
9451 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9452
9453         * Makefile.am:
9454           add a win32-update target
9455         * configure.ac:
9456
9457 2005-10-12  Wim Taymans  <wim@fluendo.com>
9458
9459         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
9460         (reset_degree), (gst_bin_dispose), (bin_bus_handler):
9461         * gst/gstelement.c: (gst_element_commit_state),
9462         (gst_element_set_state):
9463         Protect flags with proper lock.
9464         unref provided cached clock in dispose.
9465
9466 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
9467
9468         * gst/gst.c:
9469         * gst/gstminiobject.h:
9470         * gst/gstpad.h:
9471         * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
9472           removed unused flags from miniobject
9473           doc fixes
9474
9475 2005-10-12  Wim Taymans  <wim@fluendo.com>
9476
9477         * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
9478         (gst_file_sink_event), (gst_file_sink_render):
9479         Flush before seeking.
9480
9481 2005-10-12  Andy Wingo  <wingo@pobox.com>
9482
9483         * gst/gst.c (gst_init_check): Ignore unknown options, as has
9484         always been the case.
9485
9486 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
9487
9488         * check/gst/gstbin.c: (GST_START_TEST):
9489         * docs/gst/gstreamer-sections.txt:
9490         * gst/base/gstbasesink.c: (gst_base_sink_init):
9491         * gst/base/gstbasesrc.c: (gst_base_src_init),
9492         (gst_base_src_get_range), (gst_base_src_check_get_range),
9493         (gst_base_src_start), (gst_base_src_stop):
9494         * gst/base/gstbasesrc.h:
9495         * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
9496         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
9497         (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
9498         (bin_bus_handler):
9499         * gst/gstbin.h:
9500         * gst/gstbuffer.h:
9501         * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
9502         * gst/gstbus.h:
9503         * gst/gstelement.c: (gst_element_is_locked_state),
9504         (gst_element_set_locked_state), (gst_element_commit_state),
9505         (gst_element_set_state):
9506         * gst/gstelement.h:
9507         * gst/gstindex.c: (gst_index_init):
9508         * gst/gstindex.h:
9509         * gst/gstminiobject.h:
9510         * gst/gstobject.c: (gst_object_init), (gst_object_sink),
9511         (gst_object_set_parent):
9512         * gst/gstobject.h:
9513         * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
9514         (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
9515         * gst/gstpad.h:
9516         * gst/gstpadtemplate.h:
9517         * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
9518         (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
9519         * gst/gstpipeline.h:
9520         * gst/indexers/gstfileindex.c: (gst_file_index_load),
9521         (gst_file_index_commit):
9522         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
9523         * testsuite/pad/link.c: (gst_test_src_init),
9524         (gst_test_filter_init), (gst_test_sink_init):
9525         * testsuite/states/locked.c: (main):
9526           renamed GST_FLAGS macros to GST_OBJECT_FLAGS
9527           moved bitshift from macro to enum definition
9528
9529 2005-10-12  Wim Taymans  <wim@fluendo.com>
9530
9531         * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
9532         * gst/elements/gstfilesink.c: (gst_file_sink_event),
9533         (gst_file_sink_render):
9534         Some more debugging info.
9535
9536 2005-10-12  Wim Taymans  <wim@fluendo.com>
9537
9538         * docs/design/part-states.txt:
9539         * tools/gst-launch.c: (main):
9540         Some doc updates.
9541         Revert non-intentional change.
9542
9543 2005-10-12  Wim Taymans  <wim@fluendo.com>
9544
9545         * check/gst/gstbin.c: (GST_START_TEST):
9546         * check/gst/gstelement.c: (GST_START_TEST):
9547         * check/gst/gstevent.c: (GST_START_TEST), (test_event):
9548         * check/gst/gstghostpad.c: (GST_START_TEST):
9549         * check/gst/gstpipeline.c: (GST_START_TEST):
9550         * check/pipelines/simple_launch_lines.c: (run_pipeline):
9551         * check/states/sinks.c: (GST_START_TEST):
9552         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9553         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
9554         (gst_bin_remove_func), (gst_bin_get_state_func),
9555         (gst_bin_recalc_state), (gst_bin_change_state_func),
9556         (bin_bus_handler):
9557         * gst/gstelement.c: (gst_element_get_state_func),
9558         (gst_element_get_state), (gst_element_abort_state),
9559         (gst_element_commit_state), (gst_element_set_state),
9560         (gst_element_change_state), (gst_element_change_state_func):
9561         * gst/gstelement.h:
9562         * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
9563         (gst_pipeline_provide_clock_func):
9564         * gst/gstutils.c: (gst_element_link_pads_filtered):
9565         * tools/gst-launch.c: (main):
9566         * tools/gst-typefind.c: (main):
9567         Use GstClockTime in _get_state() instead of GTimeVal.
9568         Remove old code in gstutils.c
9569
9570 2005-10-12  Andy Wingo  <wingo@pobox.com>
9571
9572         * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
9573         removed.
9574
9575         * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
9576         there is no task. Shouldn't affect any code, as nothing in our
9577         plugins checks this return value.
9578         (gst_pad_stop_task): Also take the stream lock if the pad has no
9579         task. Docs updated.
9580
9581 2005-10-12  Wim Taymans  <wim@fluendo.com>
9582
9583         * gst/gstpad.c: (pre_activate), (post_activate),
9584         (gst_pad_activate_pull), (gst_pad_activate_push):
9585         Cleanup activation code. Reset old state if
9586         activation failed.
9587
9588 2005-10-12  Wim Taymans  <wim@fluendo.com>
9589
9590         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9591         (gst_base_sink_change_state):
9592         No need to prerol after receiving EOS.
9593
9594         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9595         * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
9596         * gst/elements/gstidentity.c: (gst_identity_event):
9597         Print events more verbosely.
9598
9599 2005-10-12  Wim Taymans  <wim@fluendo.com>
9600
9601         * check/Makefile.am:
9602         * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
9603         * check/states/sinks2.c:
9604         Moved sinks2 testcode in sinks check.
9605
9606         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
9607         (gst_bin_remove_func), (gst_bin_recalc_state),
9608         (gst_bin_change_state_func), (bin_bus_handler):
9609         Fix potential race condition when _get_state() iterated over an
9610         ASYNC element right before it posted a state completion.
9611
9612         * gst/gstclock.h:
9613         Do proper cast here.
9614
9615         * gst/gstevent.c: (gst_event_new_newsegment),
9616         (gst_event_parse_newsegment):
9617         A playback rate of 0.0 is not allowed.
9618
9619 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9620
9621         * win32/common/config.h:
9622         * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9623         (_trewinddir), (_ttelldir), (_tseekdir):
9624         * win32/common/dirent.h:
9625         * win32/common/gtchar.h:
9626         * win32/common/libgstbase.def:
9627         * win32/common/libgstreamer.def:
9628         * win32/vs6/grammar.dsp:
9629         * win32/vs6/gst_inspect.dsp:
9630         * win32/vs6/gst_launch.dsp:
9631         * win32/vs6/gstreamer.dsw:
9632         * win32/vs6/libgstbase.dsp:
9633         * win32/vs6/libgstelements.dsp:
9634         * win32/vs6/libgstreamer.dsp:
9635           Visual Studio 6 project files, and a new common directory.
9636           Phear.
9637
9638 2005-10-11  Wim Taymans  <wim@fluendo.com>
9639
9640         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9641         (gst_base_sink_do_sync), (gst_base_sink_query),
9642         (gst_base_sink_change_state):
9643         * gst/base/gstbasesink.h:
9644         Correctly parse newsegment info.
9645
9646 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9647
9648         * gst/gst.c: (init_post):
9649           split plugin paths correctly
9650
9651 2005-10-11  Wim Taymans  <wim@fluendo.com>
9652
9653         * check/gst/gstevent.c: (GST_START_TEST):
9654         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9655         (gst_base_sink_change_state):
9656         * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
9657         * gst/base/gstbasetransform.c: (gst_base_transform_event):
9658         * gst/elements/gstfilesink.c: (gst_file_sink_event):
9659         * gst/gstevent.c: (gst_event_new_newsegment),
9660         (gst_event_parse_newsegment):
9661         * gst/gstevent.h:
9662         Added extra flag to newsegment for future API freeze.
9663         Updated check and base elements.
9664
9665 2005-10-11  Julien MOUTTE  <julien@moutte.net>
9666
9667         * gst/base/gstcollectpads.c: (gst_collectpads_init),
9668         (gst_collectpads_add_pad), (gst_collectpads_pop),
9669         (gst_collectpads_event), (gst_collectpads_chain):
9670         * gst/base/gstcollectpads.h: Handle EOS correctly.
9671
9672 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9673
9674         * tools/gst-launch.c: (main):
9675           more null protecting
9676
9677 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9678
9679         * gst/gst-i18n-lib.h:
9680           check for ENABLE_NLS, not GETTEXT_PACKAGE
9681         * gst/gstregistry.c: (gst_registry_add_plugin),
9682         (gst_registry_scan_path_level),
9683         (_gst_registry_remove_cache_plugins):
9684           protect possibly NULL strings
9685         * gst/parse/types.h:
9686           config.h already included before
9687         * tools/gst-inspect.c: (main):
9688           sys/wait.h also doesn�t exist on mingw, so change the ifdef check
9689           check for ENABLE_NLS, not GETTEXT_PACKAGE
9690         * tools/gst-launch.c: (main):
9691           check for ENABLE_NLS, not GETTEXT_PACKAGE
9692
9693 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9694
9695         * configure.ac:
9696           if we don't have glib, fail before testing 2.8
9697         * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
9698           fix a leak, should fix plugins-base testsuite
9699
9700 2005-10-11  Andy Wingo  <wingo@pobox.com>
9701
9702         * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
9703         take the mode we're going to as an arg. Go head and set the mode
9704         and flushing flags now, so that if the activate function starts a
9705         thread all the flags will be in the right state.
9706         (post_activate): Renamed also. Just handle making sure streaming
9707         finishes for the deactivation case, and setting the deactivated
9708         mode.
9709         (gst_pad_set_active): Complain loudly if deactivation fails.
9710         (gst_pad_activate_pull): Adapt to pre/post_activate changes.
9711         (gst_pad_activate_push): Adapt to pre/post_activate changes,
9712         remove the terrible hack.
9713
9714 2005-10-11  Wim Taymans  <wim@fluendo.com>
9715
9716         * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
9717         (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
9718         (gst_bin_recalc_state), (gst_bin_change_state_func),
9719         (gst_bin_dispose), (bin_bus_handler):
9720         * gst/gstbin.h:
9721         Prepare to make current EOS message queue more generic.
9722         Fix some typos.
9723
9724         * gst/gstevent.c: (gst_event_new_newsegment),
9725         (gst_event_parse_newsegment):
9726         * gst/gstevent.h:
9727         Rename base to stream_time.
9728
9729         * gst/gstmessage.h:
9730         Fix typo in docs.
9731
9732 2005-10-11  Wim Taymans  <wim@fluendo.com>
9733
9734         * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
9735         (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
9736         (gst_bin_change_state_func), (bin_bus_handler):
9737         * gst/gstbin.h:
9738         Work on proper clock selection.
9739
9740 2005-10-11  Edward Hervey  <edward@fluendo.com>
9741
9742         * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list): 
9743         * libs/gst/controller/gstcontroller.h:
9744         Added GList* version of _remove_properties() in order to be able to wrap
9745         it in bindings.
9746
9747 2005-10-11  Wim Taymans  <wim@fluendo.com>
9748
9749         * docs/design/part-states.txt:
9750         Some more docs.
9751
9752         * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
9753         (gst_bin_change_state_func), (bin_bus_handler):
9754         Doc updates. Don't distribute the same clock over and over again.
9755
9756         * gst/gstclock.c:
9757         * gst/gstclock.h:
9758         Doc updates.
9759
9760         * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
9761         (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
9762         (gst_pad_send_event):
9763         * gst/gstpad.h:
9764         Make probe emission threadsafe again.
9765         Register quarks and move _get_name() from utils.
9766         Doc updates.
9767
9768         * gst/gstpipeline.c: (gst_pipeline_class_init),
9769         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
9770         Only redistribute the clock of it changed.
9771
9772         * gst/gstsystemclock.h:
9773         Doc updates. 
9774
9775         * gst/gstutils.c:
9776         * gst/gstutils.h:
9777         Moved the _flow_get_name() to GstPad.
9778
9779 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9780
9781         * check/gst-libs/gdp.c: (GST_START_TEST):
9782         * check/gst/gstcaps.c: (GST_START_TEST):
9783         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9784         (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
9785         (gst_dp_packet_from_caps):
9786           fix more valgrind warnings before turning up the heat
9787
9788 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9789
9790         * gst/parse/grammar.y:
9791           some cleanup before the hacking
9792
9793 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9794
9795         * gst/base/gstbasesrc.c: (gst_base_src_query):
9796           use conversions
9797         * gst/gstutils.c: (gst_guint64_to_gdouble),
9798         (gst_gdouble_to_guint64), (gst_util_uint64_scale):
9799         * gst/gstutils.h:
9800           externalize, basesrc uses it
9801           obviously the implementation needs testing
9802
9803 2005-10-10  Wim Taymans  <wim@fluendo.com>
9804
9805         * tests/sched/Makefile.am:
9806         * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
9807         (make_pipeline3), (make_pipeline4), (print_elem), (main):
9808
9809 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9810
9811         * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
9812           apparently converting from guint64 to double is not implemented
9813           on MSVC
9814
9815 2005-10-10  Wim Taymans  <wim@fluendo.com>
9816
9817         * check/Makefile.am:
9818         * check/generic/states.c: (GST_START_TEST):
9819         * check/gst/gstbin.c: (GST_START_TEST):
9820         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
9821         * check/states/sinks.c: (GST_START_TEST):
9822         * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
9823         (main):
9824         Check fixes, use API as stated in design docs, remove hacks.
9825
9826         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9827         (gst_base_sink_change_state):
9828         Catch stopping our task while we're shutting down.
9829
9830         * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
9831         (gst_bin_remove_func), (gst_bin_get_state_func),
9832         (gst_bin_recalc_state), (gst_bin_change_state_func),
9833         (bin_bus_handler):
9834         * gst/gstbin.h:
9835         * gst/gstelement.c: (gst_element_init),
9836         (gst_element_get_state_func), (gst_element_abort_state),
9837         (gst_element_commit_state), (gst_element_lost_state),
9838         (gst_element_set_state), (gst_element_change_state),
9839         (gst_element_change_state_func):
9840         * gst/gstelement.h:
9841         New state change algorithm (see #318116)
9842
9843         * gst/gstpipeline.c: (gst_pipeline_class_init),
9844         (gst_pipeline_init), (gst_pipeline_set_property),
9845         (gst_pipeline_get_property), (do_pipeline_seek),
9846         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
9847         * gst/gstpipeline.h:
9848         Remove crude state change hacks.
9849
9850         * gst/gstutils.h:
9851         Remove crude hacks.
9852
9853         * tools/gst-launch.c: (main):
9854         Fixes for state change. Needs some more work to fully use the
9855         new stuff.
9856
9857 2005-10-10  Andy Wingo  <wingo@pobox.com>
9858
9859         * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
9860
9861         * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
9862         this flag, but it's not even in GLib 2.6. Odd. Hack around the
9863         issue.
9864
9865 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
9866
9867         * gst/gstiterator.c: (gst_iterator_new):
9868           Fix my previous commit: GTypes passed to gst_iterator_new()
9869           can be fundamental types.
9870
9871 2005-10-10  Wim Taymans  <wim@fluendo.com>
9872
9873         * gst/gstelement.c: (gst_element_iterate_pad_list),
9874         (gst_element_iterate_pads), (gst_element_iterate_src_pads),
9875         (gst_element_iterate_sink_pads):
9876         Use src/sink pads lists for the respective iterators instead
9877         of filtering.
9878
9879 2005-10-10  Andy Wingo  <wingo@pobox.com>
9880
9881         Merged in popt removal + GOption addition patch from Ronald, bug
9882         #169772.
9883
9884         * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
9885         GstElement macros around, remove popt-related symbols, add goption
9886         stuff.
9887
9888         * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
9889         
9890         * docs/gst/Makefile.am:
9891         * docs/libs/Makefile.am: No POPT_CFLAGS.
9892         
9893         * examples/manual/Makefile.am:
9894         * docs/manual/basics-init.xml: Doc updates with an example.
9895         
9896         * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
9897         (gst_init), (parse_one_option), (parse_goption_arg):
9898         * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
9899         bit of hand merging and debugging to get the GOption stuff working
9900         tho.
9901         
9902         * tests/Makefile.am:
9903         * tools/Makefile.am:
9904         * tools/gst-inspect.c: (main):
9905         * tools/gst-launch.c: (main):
9906         * tools/gst-run.c: (main):
9907         * tools/gst-xmlinspect.c: (main): Thanks Ronald!
9908
9909 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
9910
9911         * gst/gstiterator.c: (gst_iterator_new):
9912           Add assertions to make sure passed GType is likely to really
9913           be a GType (as the compiler won't catch it if the size and
9914           GType arguments get mixed up, see #318447).
9915
9916 2005-10-10  Josef Zlomek  <josef dot zlomek at xeris dot cz>
9917
9918         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
9919
9920         * gst/gstbin.c: (gst_bin_iterate_sorted):
9921           Pass GType and size arguments to gst_iterator_new() in the right
9922           order (maybe we should make _new() take the GType as first argument
9923           just like _new_list()?) (#318447).
9924           
9925
9926 2005-10-10  Wim Taymans  <wim@fluendo.com>
9927
9928         * gst/gstelement.c: (gst_element_finalize):
9929         And free the GStaticRecMutex too
9930
9931 2005-10-10  Andy Wingo  <wingo@pobox.com>
9932
9933         * gst/gstelement.c (gst_element_init, gst_element_finalize):
9934         Allocate and free the mutex properly.
9935
9936         * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
9937         New macros.
9938         (GstElement): The state_lock is now recursive. Rebuild your
9939         plugins, suckers. Old macros adapted.
9940
9941         * docs/gst/gstreamer-sections.txt: Doc updates.
9942
9943         * gst/gstutils.h:
9944         * gst/gstutils.c (g_static_rec_cond_timed_wait) 
9945         (g_static_rec_cond_wait): Ported from state changes patch, while
9946         we wait on bug #317802 to be solved in a well-distributed GLib.
9947
9948         * gst/gstelement.c (gst_element_change_state_func): Renamed from
9949         gst_element_change_state, variable name changes.
9950         (gst_element_change_state): Split out of gst_element_set_state in
9951         preparation for the state change merge. Doesn't pay attention to
9952         the 'transition' argument.
9953         (gst_element_set_state): Updates, hopefully purely cosmetic.
9954         (gst_element_sync_state_with_parent): MT-safety. Ported from the
9955         state change patch.
9956         (gst_element_get_state_func): Renamed from get_state, cosmetic
9957         changes.
9958
9959 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9960
9961         * gst/elements/gstelements.c:
9962         * win32/GStreamer.vcproj:
9963         * win32/config.h:
9964         * win32/dirent.c: (_tseekdir):
9965         * win32/gst-inspect.vcproj:
9966         * win32/gst-launch.vcproj:
9967         * win32/gstconfig.h:
9968         * win32/gstelements.vcproj:
9969         * win32/gstenumtypes.c: (gst_object_flags_get_type):
9970         * win32/gstreamer.def:
9971         * win32/msvc71.sln:
9972           updates for the win32 build (patch from Sebastien Moutte)
9973
9974 2005-10-10  Andy Wingo  <wingo@pobox.com>
9975
9976         * gst/gstbin.c (gst_bin_get_state_func): Renamed from
9977         gst_bin_get_state, cleaned up (but no logic changes).
9978         (bin_element_is_sink): Comment updates.
9979         (sink_iterator_filter): Remove needless cast.
9980         (gst_bin_iterate_sinks): Doc update.
9981         (gst_bin_change_state_func): Renamed from gst_bin_change_state,
9982         cleaned up (but no logic changes).
9983
9984         * check/states/sinks.c (test_src_sink): Cleanups from the state
9985         change patch.
9986         (test_livesrc_sink): Sync on the state.
9987
9988         * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
9989         the state change patch.
9990
9991         * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
9992         change patch.
9993
9994         * check/gst/gstbin.c: Merge in some style fixes and additional
9995         checks from Wim's state change patch.
9996
9997 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
9998
9999         * gst/base/gsttypefindhelper.c: (helper_find_peek),
10000         (gst_type_find_helper):
10001           Check whether we have the requested data already in our list of
10002           cached buffers before pulling a new buffer; also make the buffer
10003           list a GSList. Speeds up typefinding by ca. 5-10% altogether.
10004
10005 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10006
10007         * gst/gstcaps.c:
10008         * gst/gstevent.c:
10009           doc updates
10010         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
10011           don't use long long, it's not portable.  Replacing with
10012           gint64 seems to work; let's hope no skeletons fall out of the closet.
10013
10014 2005-10-10  Andy Wingo  <wingo@pobox.com>
10015
10016         * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
10017
10018 2005-10-09  Stefan Kost  <ensonic@users.sf.net>
10019
10020         * docs/gst/gstreamer-sections.txt:
10021         * gst/gstevent.c:
10022         * gst/gstevent.h:
10023         * gst/gstinfo.c:
10024         * gst/gstinfo.h:
10025         * gst/gstmessage.c: (gst_message_parse_state_changed):
10026         * gst/gstpad.c:
10027         * gst/gstpad.h:
10028           more docs, fix compilation
10029
10030 2005-10-09  Philippe Khalaf <burger@speedy.org>
10031         * gst/gstmessage.c:
10032           Fixed a few forgotten variables on previous commit
10033
10034 2005-10-09  Tim-Philipp Müller  <tim at centricular dot net>
10035
10036         * gst/base/gsttypefindhelper.c: (helper_find_peek):
10037           Fix evil typefind crasher: getrange() might return a short
10038           buffer at the end of a file, but gst_type_find_peek() must
10039           either return the full data as requested or NULL, but
10040           never a short buffer.
10041
10042 2005-10-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10043
10044         * gst/gstmessage.c: (gst_message_new_state_changed),
10045         (gst_message_parse_state_changed):
10046         * gst/gstmessage.h:
10047           don't use "new", it's a C++ keyword
10048
10049 2005-10-08  Wim Taymans  <wim@fluendo.com>
10050
10051         * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
10052         * gst/gstelement.c: (gst_element_post_message):
10053         * gst/gstpipeline.c: (gst_pipeline_change_state):
10054         Small docs and debug updates.
10055
10056 2005-10-08  Stefan Kost  <ensonic@users.sf.net>
10057
10058         * docs/gst/gstreamer-sections.txt:
10059         * gst/gstelementfactory.c:
10060         * gst/gstevent.c:
10061         * gst/gsttaglist.c:
10062           more docs
10063
10064 2005-10-08  Wim Taymans  <wim@fluendo.com>
10065
10066         * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
10067         (gst_bin_dispose), (bin_bus_handler):
10068         Fix typos, add comments.
10069         Clear EOS list when going to PAUSED from any direction and do it
10070         in a threadsafe way.
10071         Get base time in a threadsafe way too.
10072         Fix confusing debug in the change_state function.
10073         Various other small cleanups.
10074         
10075         * gst/gstelement.c: (gst_element_post_message):
10076         Fix very verbose bus posting code.
10077
10078         * gst/gstpipeline.c: (gst_pipeline_class_init),
10079         (gst_pipeline_set_property), (gst_pipeline_get_property),
10080         (gst_pipeline_change_state):
10081         Small ARG_ -> PROP_ cleanup
10082
10083 2005-10-08  Wim Taymans  <wim@fluendo.com>
10084
10085         * gst/gstbin.c: (is_eos), (bin_bus_handler):
10086         Do a less CPU demanding EOS check because we can.
10087
10088 2005-10-08  Wim Taymans  <wim@fluendo.com>
10089
10090         * libs/gst/dataprotocol/dataprotocol.c:
10091         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
10092         (gst_dp_packet_from_event):
10093         * libs/gst/dataprotocol/dataprotocol.h:
10094         * libs/gst/dataprotocol/dp-private.h:
10095         It's about time we bump the version number.
10096         Since event types don't fit in the guint8 anymore describing
10097         the payload type, make payload type 16 bits wide.
10098
10099 2005-10-08  Wim Taymans  <wim@fluendo.com>
10100
10101         * docs/design/part-TODO.txt:
10102         * docs/design/part-clocks.txt:
10103         * docs/design/part-events.txt:
10104         * docs/design/part-gstbin.txt:
10105         * docs/design/part-gstelement.txt:
10106         * docs/design/part-gstpipeline.txt:
10107         * docs/design/part-live-source.txt:
10108         * docs/design/part-messages.txt:
10109         * docs/design/part-overview.txt:
10110         * docs/design/part-states.txt:
10111         Many doc updates.
10112
10113 2005-10-08  Wim Taymans  <wim@fluendo.com>
10114
10115         * gst/gstevent.c:
10116         * gst/gstevent.h:
10117         Fix event quark registration.
10118         Add some space between events so we can insert them in the
10119         right groups.
10120
10121 2005-10-08  Wim Taymans  <wim@fluendo.com>
10122
10123         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10124         (gst_base_sink_handle_buffer):
10125         Better log message.
10126
10127         * gst/gstbus.h:
10128         * gst/gstelement.h:
10129         More docs.
10130
10131         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
10132         (gst_queue_set_property), (gst_queue_get_property):
10133         * gst/gstqueue.h:
10134         Remove old unused properties.
10135
10136 2005-10-08  Stefan Kost  <ensonic@users.sf.net>
10137         * docs/gst/gstreamer-sections.txt:
10138         * gst/gstmessage.c:
10139         * gst/gstmessage.h:
10140         * gst/gstminiobject.c:
10141         * gst/gstminiobject.h:
10142         * gst/gstobject.h:
10143         * gst/gstpad.h:
10144         * gst/gstutils.h:
10145           lots of new docs and doc fixes
10146
10147 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10148
10149         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
10150         * gst/gstplugin.h:
10151         * gst/gstregistry.c: (gst_registry_lookup_locked),
10152         (gst_registry_scan_path_level):
10153         * gst/gstregistryxml.c: (load_plugin):
10154           Only ever load one plugin for a given plugin basename.
10155           This ensures correct overriding of GST_PLUGIN_PATH over
10156           GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
10157           system installed plugins.
10158
10159 2005-10-08  Wim Taymans  <wim@fluendo.com>
10160
10161         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10162         (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
10163         Prepare for doing QOS.
10164
10165 2005-10-08  Wim Taymans  <wim@fluendo.com>
10166
10167         * check/gst/gstbin.c: (GST_START_TEST):
10168         * check/pipelines/cleanup.c: (GST_START_TEST):
10169         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
10170         Allow new clock message too.
10171
10172 2005-10-08  Wim Taymans  <wim@fluendo.com>
10173
10174         * gst/gstmessage.c: (gst_message_new_error),
10175         (gst_message_new_warning), (gst_message_new_tag),
10176         (gst_message_new_state_changed), (gst_message_new_clock_provide),
10177         (gst_message_new_clock_lost), (gst_message_new_new_clock),
10178         (gst_message_new_segment_start), (gst_message_new_segment_done),
10179         (gst_message_parse_state_changed),
10180         (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
10181         (gst_message_parse_new_clock):
10182         * gst/gstmessage.h:
10183         Also carry the clock in question.
10184
10185 2005-10-08  Wim Taymans  <wim@fluendo.com>
10186
10187         * gst/gstmessage.c: (gst_message_new_custom),
10188         (gst_message_new_eos), (gst_message_new_error),
10189         (gst_message_new_warning), (gst_message_new_tag),
10190         (gst_message_new_state_changed), (gst_message_new_clock_provide),
10191         (gst_message_new_new_clock), (gst_message_new_segment_start),
10192         (gst_message_new_segment_done), (gst_message_parse_state_changed),
10193         (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
10194         * gst/gstmessage.h:
10195         Clean up.
10196         Added clock related messages.
10197
10198         * gst/gstpipeline.c: (gst_pipeline_change_state):
10199         Post message when the clock changed.
10200
10201         * tools/gst-launch.c: (event_loop):
10202         Print new clock.
10203
10204 2005-10-08  Tim-Philipp Müller  <tim at centricular dot net>
10205
10206         * tools/gst-inspect.c: (print_element_properties_info):
10207           Can't pass NULL strings to g_print() on windows.
10208
10209 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10210
10211         * docs/Makefile.am:
10212         * docs/gst/Makefile.am:
10213         * docs/gst/gstreamer-docs.sgml:
10214         * docs/gst/running.xml:
10215         * docs/version.entities.in:
10216           add a chapter on running GStreamer.
10217           document GST_DEBUG and GST_PLUGIN* env vars
10218
10219 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10220
10221         * Makefile.am:
10222           remove include dir
10223         * configure.ac:
10224           remove PLUGINS_BUILDDIR stuff
10225         * gst/gst.c: (init_post):
10226           reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
10227         * idiottest.mak:
10228           remove, it was condescending and not needed
10229
10230 2005-10-08  Wim Taymans  <wim@fluendo.com>
10231
10232         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
10233         (gst_base_sink_handle_object), (gst_base_sink_event),
10234         (gst_base_sink_wait), (gst_base_sink_handle_event),
10235         (gst_base_sink_change_state):
10236         * gst/base/gstbasesink.h:
10237         Repost EOS message while going to PLAYING if still EOS.
10238         Make sure that when receiving a FLUSH_START we don't attempt
10239         to sync on the clock anymore.
10240
10241 2005-10-08  Wim Taymans  <wim@fluendo.com>
10242
10243         * tools/gst-launch.c: (event_loop):
10244         Better message printout.
10245
10246 2005-10-08  Wim Taymans  <wim@fluendo.com>
10247
10248         * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
10249         (gst_bin_child_proxy_get_children_count):
10250         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
10251         (gst_child_proxy_lookup), (gst_child_proxy_get_property),
10252         (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
10253         (gst_child_proxy_set_valist):
10254         * gst/parse/grammar.y:
10255         Make ChildProxy threadsafe and fix mem leaks.
10256
10257 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10258
10259         * gst/gst.c: (init_post):
10260           debug the GST_PLUGIN_ env vars
10261
10262 2005-10-08  Wim Taymans  <wim@fluendo.com>
10263
10264         * check/gst/gstbin.c: (GST_START_TEST):
10265         * check/gst/gstmessage.c: (GST_START_TEST):
10266         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
10267         * gst/gstelement.c: (gst_element_commit_state),
10268         (gst_element_lost_state):
10269         * gst/gstmessage.c: (gst_message_new_state_changed),
10270         (gst_message_parse_state_changed):
10271         * gst/gstmessage.h:
10272         * tools/gst-launch.c: (event_loop):
10273         Added extra field to STATE_CHANGE message with the pending
10274         state, which will be different from the new state soon.
10275
10276 2005-10-08  Wim Taymans  <wim@fluendo.com>
10277
10278         * gst/gstbus.c: (gst_bus_pop):
10279         * gst/gstclock.c:
10280         * gst/gstsystemclock.c: (gst_system_clock_async_thread):
10281         Small cleanups and doc updates.
10282
10283 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10284
10285         * gst/gst.c: (init_pre):
10286         * gst/gstbin.c: (gst_bin_add_func):
10287           log distributing clocks and base time
10288         * gst/gstregistry.c: (gst_registry_add_plugin),
10289         (gst_registry_scan_path_level), (gst_registry_scan_path):
10290           clean up the debugging output a little
10291         * gst/gstutils.c: (gst_element_state_get_name):
10292           warn about a memleak (I've actually seen this be used, though
10293           it was probably a bug)
10294
10295 2005-10-07  Wim Taymans  <wim@fluendo.com>
10296
10297         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10298         (gst_base_src_init), (gst_base_src_default_newsegment),
10299         (gst_base_src_newsegment), (gst_base_src_do_seek),
10300         (gst_base_src_loop), (gst_base_src_start):
10301         * gst/base/gstbasesrc.h:
10302         Make the newsegment event customizable by subclasses.
10303
10304 2005-10-07  Wim Taymans  <wim@fluendo.com>
10305
10306         * gst/gstevent.c: (gst_event_new_buffersize),
10307         (gst_event_parse_buffersize):
10308         * gst/gstevent.h:
10309         New event for future idea.
10310
10311 2005-10-07  Andy Wingo  <wingo@pobox.com>
10312
10313         * gst/gstelement.c (gst_element_post_message): Doc update.
10314
10315         * docs/gst/gstreamer-sections.txt: Update.
10316
10317         * gst/gstmessage.c (gst_message_new_application): Made into a
10318         function like honest API calls.
10319         (gst_message_new_element): New message type.
10320
10321         * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
10322
10323         * check/elements/fakesrc.c (test_no_preroll): New check, checks
10324         that setting a live fakesrc to PAUSED returns NO_PREROLL both
10325         times.
10326
10327         * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
10328         NO_PREROLL from gst_element_change_state to fall through.
10329
10330 2005-10-07  Wim Taymans  <wim@fluendo.com>
10331
10332         * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
10333         (gst_ghost_pad_do_activate_push):
10334         Activating a ghostpad with no internal pad in push mode
10335         is ok.
10336
10337 2005-10-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10338
10339         * gst/gstobject.h:
10340           there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
10341           Fixes compilation on Windows.
10342
10343 2005-10-07  Michael Smith <msmith@fluendo.com>
10344
10345         * tools/gst-inspect.c:
10346           Print out feature and plugin count at the end when printing out
10347           all features.
10348
10349 2005-10-04  Michael Smith <msmith@fluendo.com>
10350
10351         * gst/gsterror.c: (_gst_stream_errors_init):
10352           Add another error string used in a few existing plugins.
10353
10354         * gst/gstplugin.c:
10355         * gst/gstpluginfeature.c: (gst_plugin_feature_load):
10356         * tools/gst-inspect.c: (print_element_info):
10357           When a feature disappears from a plugin (and the feature exists in
10358           the cached registry file), things went horribly wrong. This isn't a
10359           complete fix, we should actually be removing the 'missing' features
10360           from the features list when we load the actual plugin. That's not
10361           yet implemented. 
10362
10363 2005-10-04  Johan Dahlin  <johan@gnome.org>
10364
10365         * check/gst/gstiterator.c: (GST_START_TEST):
10366         * gst/gstbin.c: (gst_bin_iterate_elements),
10367         (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
10368         * gst/gstelement.c: (gst_element_iterate_pads):
10369         * gst/gstformat.c: (gst_format_iterate_definitions):
10370         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
10371         (gst_iterator_new_list), (gst_iterator_filter):
10372         * gst/gstiterator.h:
10373         * gst/gstquery.c: (gst_query_type_iterate_definitions):
10374         Add a GType to GstIterator, update callsites and tests.
10375
10376 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10377
10378         * gst/gstpad.c: (gst_pad_event_default_dispatch):
10379           give events a chance to be handled by event probes when the pad
10380           is not linked
10381
10382 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10383
10384         * gst/gstevent.c: (gst_event_type_get_name),
10385         (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
10386         * gst/gstevent.h:
10387           add string representations for event types
10388
10389 2005-10-06  Wim Taymans  <wim@fluendo.com>
10390
10391         * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
10392         Don't use NULL pointers.
10393
10394 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10395
10396         * gst/gst_private.h:
10397         * gst/gstbus.c:
10398         * gst/gstelement.c:
10399         * gst/gstinfo.c:
10400         * gst/gstpluginfeature.c:
10401           widen the debug category in output to fit the biggest one we have
10402           add a bus category and use it
10403           play with the colors
10404           fix up some categories
10405
10406 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10407
10408         * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
10409           add push activation of sink ghost pads.
10410           Andye, please verify
10411
10412 2005-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10413
10414         * gst/gstutils.c: (gst_element_link_pads):
10415           fix a bug in the case where neither element has a pad
10416         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
10417           add a test for that case
10418
10419 2005-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10420
10421         * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
10422           emit have-data before checking for peers.  This allows
10423           for probe handlers to connect elements.  This helps autopluggers.
10424         * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
10425         (gst_pad_suite):
10426           add six checks, linked/unlinked with no/true/false probe
10427
10428 2005-10-04  Wim Taymans  <wim@fluendo.com>
10429
10430         * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
10431         (gst_fake_sink_event), (gst_fake_sink_preroll),
10432         (gst_fake_sink_render), (gst_fake_sink_change_state):
10433         * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
10434         (gst_fake_src_get_property), (gst_fake_src_create),
10435         (gst_fake_src_stop):
10436         * gst/elements/gstidentity.c: (gst_identity_stop):
10437         Protect last_message with lock.
10438
10439 2005-10-04  Edward Hervey  <edward@fluendo.com>
10440
10441         * gst/gstformat.h: 
10442         Added precision in the comments for GST_FORMAT_DEFAULT
10443
10444 2005-10-04  Tim-Philipp Müller  <tim at centricular dot net>
10445
10446         * tools/gst-launch.c: (main):
10447           Don't try to run erroneous pipelines.
10448
10449 2005-10-04  Julien MOUTTE  <julien@moutte.net>
10450
10451         * gst/gstbus.c: We don't need this header.
10452
10453 2005-10-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10454
10455         * configure.ac:
10456           back to development
10457
10458 === release 0.9.3 ===
10459
10460 2005-10-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10461
10462         * README:
10463         * configure.ac:
10464           Releasing 0.9.3, "Unregistered"
10465
10466 2005-10-03  Andy Wingo  <wingo@pobox.com>
10467
10468         * gst/gstpad.c (gst_pad_activate_push): There is a race condition
10469         whereby calling a pad's activatepush() function can start a thread
10470         that starts to push or pull before the pad gets the FLUSHING flag
10471         unset. Hack around it by holding the stream lock until the flag is
10472         set. Need to replace this with a proper solution. Together with
10473         the ghost pad fixes, this fixes mp3 playing/tagreading.
10474
10475         * docs/design/part-gstghostpad.txt: Add a note about activation of
10476         proxy pads outside of ghost pads.
10477
10478         * gst/gstghostpad.c: Implement the ghost pad activation design.
10479
10480 2005-10-02  Andy Wingo  <wingo@pobox.com>
10481
10482         * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
10483         It is volatile, after all.
10484
10485         * docs/design/part-gstghostpad.txt: Flesh out activation with
10486         ghost pads.
10487
10488         * gst/base/gstbasesrc.c (gst_base_src_init): Use
10489         GST_DEBUG_FUNCPTR.
10490
10491 2005-10-02  Tim-Philipp Müller  <tim at centricular dot net>
10492
10493         * configure.ac:
10494           Fix (unused) AM_CONDITIONAL tests.
10495
10496 2005-10-01  Alessandro Decina  <alessandro at nnva dot org>
10497
10498         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
10499
10500         * gst/gstutils.c: (gst_pad_query_convert):
10501           Add assertion that makes sure src_val is >=0, just like
10502           gst_query_new_convert() has. (#315895)
10503
10504 2005-09-30  Edward Hervey  <edward@fluendo.com>
10505
10506         * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
10507         Let's not iterate pads we're not interested in, it avoids getting 
10508         sky-high refcounts on sinkpad.
10509
10510 2005-09-30  Wim Taymans  <wim@fluendo.com>
10511
10512         * gst/gstelement.c: (gst_element_set_state),
10513         (gst_element_change_state):
10514         Small tweak, element in ASYNC remains ASYNC.
10515
10516 2005-09-30  Wim Taymans  <wim@fluendo.com>
10517
10518         * gst/base/gstbasesink.c: (gst_base_sink_change_state):
10519         Only error is an error.
10520
10521         * gst/gstbin.c: (gst_bin_change_state):
10522         Better debugging.
10523
10524         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
10525         Also call pad_block in pad alloc.
10526
10527         * gst/gstutils.c: (gst_flow_get_name):
10528         Better debugging.
10529
10530 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
10531
10532         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10533         (gst_base_src_get_range):
10534           Fix documentation typos. Add some more debug info.
10535
10536 2005-09-29  David Schleef  <ds@schleef.org>
10537
10538         * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
10539           more end-user friendly.
10540         * tools/gst-inspect.c: (main): Check if command-line argument is
10541           a file and attempt to load that file as a plugin.
10542
10543 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10544
10545         * check/gst/gstbin.c:
10546         * check/states/sinks.c:
10547           fix tests for the new warning
10548         * check/gst/gstpipeline.c:
10549           add a test for pipeline and bus interaction
10550         * gst/gstelement.c:
10551           elements should be NULL if they get disposed; add a warning if not
10552
10553 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10554
10555         * gst/gstobject.c:
10556           for 2.6 refcounting, make debug log more correct by printing
10557           the actual refcounts at the time of swap (Wim)
10558
10559 2005-09-29  Andy Wingo  <wingo@pobox.com>
10560
10561         * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
10562         removes signal watches previously added via
10563         gst_bus_add_signal_watch.
10564         (gst_bus_add_signal_watch): Don't return the source id, just store
10565         it on the bus if there wasn't an id already.
10566
10567         * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
10568         add_signal_watch and remove_signal_watch.
10569
10570 2005-09-29  Edward Hervey  <edward@fluendo.com>
10571
10572         * libs/gst/controller/gstcontroller.c: (gst_controller_new_list): 
10573         Better if we actually iterate the list :)
10574
10575 2005-09-29  Wim Taymans  <wim@fluendo.com>
10576
10577         * check/gst/gstbin.c: (GST_START_TEST):
10578         Change for new bus API.
10579
10580         * check/gst/gstbus.c: (message_func_eos), (message_func_app),
10581         (send_messages), (GST_START_TEST), (gstbus_suite):
10582         Change for new bus signal API.
10583
10584         * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
10585         (gst_bus_source_prepare), (gst_bus_source_check),
10586         (gst_bus_create_watch), (gst_bus_add_watch_full),
10587         (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
10588         (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
10589         * gst/gstbus.h:
10590         Remove support for multiple GSources operating on different
10591         message types as it is too complex and unneeded when using
10592         signals.
10593         Added support for receiving signals from the bus.
10594
10595 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10596
10597         * docs/libs/tmpl/gstdataprotocol.sgml:
10598         * docs/manual/advanced-dataaccess.xml:
10599         * gst/elements/gstcapsfilter.c:
10600         * gst/gstutils.c:
10601           rename filter-caps to caps property
10602
10603 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
10604
10605         * gst/gstvalue.c: (gst_value_deserialize_fraction):
10606           More robust fraction string parsing.
10607
10608         * docs/pwg/appendix-porting.xml:
10609           Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
10610
10611 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
10612
10613         * gst/gstcaps.c: (gst_caps_do_simplify):
10614           Thou shalt not free a structure and then continue using it
10615           in the next loop iteration.
10616
10617         * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
10618         (gst_caps_suite):
10619           Add test case for caps simplification.
10620
10621 2005-09-29  Wim Taymans  <wim@fluendo.com>
10622
10623         * check/gst/gstbin.c: (GST_START_TEST):
10624         Oops.
10625
10626 2005-09-29  Wim Taymans  <wim@fluendo.com>
10627
10628         * check/gst/gstbin.c: (GST_START_TEST):
10629         Add bus to bin.
10630
10631         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
10632         (add_to_queue), (clear_queue), (reset_degree), (update_degree),
10633         (find_element), (gst_bin_sort_iterator_next),
10634         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10635         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10636         (gst_bin_change_state), (gst_bin_dispose):
10637         A bin does not have a bus, it gets the bus from the parent.
10638
10639         * gst/gstelement.c: (gst_element_requires_clock),
10640         (gst_element_provides_clock), (gst_element_is_indexable),
10641         (gst_element_is_locked_state), (gst_element_change_state),
10642         (gst_element_set_bus_func):
10643         Small cleanups.
10644
10645         * gst/gstpipeline.c: (gst_pipeline_class_init),
10646         (gst_pipeline_init), (gst_pipeline_provide_clock_func):
10647         The pipeline provides a bus.
10648
10649 2005-09-28  Johan Dahlin  <johan@gnome.org>
10650
10651         * gst/gstmessage.c (gst_message_parse_state_changed): Use
10652         gst_structure_get_enum instead of gst_structure_get_int
10653
10654         * gst/gststructure.c (gst_structure_get_enum): Impl.
10655
10656         * gst/gststructure.h (gst_structure_get_enum): Add
10657
10658         * docs/gst/gstreamer-sections.txt: Ditto
10659
10660         * gst/gstmessage.c (gst_message_new_state_changed): Use
10661         GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
10662         which does introspection.
10663         Reviewed by Christian Schaller
10664
10665 2005-09-28  Stefan Kost  <ensonic@users.sf.net>
10666
10667         * gst/gstinfo.c: (gst_debug_log_default):
10668           don't do dummy g_strdup()s
10669         * libs/gst/controller/gstcontroller.c:
10670         (on_object_controlled_property_changed),
10671         (gst_controlled_property_new), (gst_controller_new_valist),
10672         (gst_controller_new_list),
10673         (gst_controller_remove_properties_valist), (gst_controller_set),
10674         (gst_controller_get), (gst_controller_sync_values),
10675         (gst_controller_get_value_array), (_gst_controller_class_init),
10676         (gst_controller_get_type):
10677         * libs/gst/controller/gstcontroller.h:
10678         * libs/gst/controller/gstinterpolation.c:
10679         (gst_controlled_property_find_timed_value_node):
10680           convert // to /**/ comments
10681
10682 2005-09-28  Wim Taymans  <wim@fluendo.com>
10683
10684         * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
10685         (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
10686         (gst_bus_sync_signal_handler):
10687         * gst/gstbus.h:
10688         Added async-message and sync-message signals to the bus.
10689         Added helper BusFunc to emit signals for all posted messages.
10690
10691         * gst/gstmessage.c: (gst_message_type_get_name),
10692         (gst_message_type_to_quark), (gst_message_get_type):
10693         * gst/gstmessage.h:
10694         Register quarks for message names.
10695
10696 2005-09-28  Stefan Kost  <ensonic@users.sf.net>
10697
10698         * docs/libs/gstreamer-libs-sections.txt:
10699         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
10700         (gst_controller_new_list):
10701         * libs/gst/controller/gstcontroller.h:
10702           added another constructor for language bindings
10703
10704 2005-09-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10705
10706         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
10707           add another check
10708         * gst/gstbus.c:
10709           add some doc
10710         * gst/gstinfo.c: (_gst_debug_init):
10711           slightly more readable color for refcount debugging
10712
10713 2005-09-28  Wim Taymans  <wim@fluendo.com>
10714
10715         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
10716         (add_to_queue), (clear_queue), (reset_degree), (update_degree),
10717         (find_element), (gst_bin_sort_iterator_next),
10718         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10719         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10720         (gst_bin_change_state), (gst_bin_dispose):
10721         Small doc fixes. get_clock -> provide_clock.
10722
10723         * gst/gstelement.c: (gst_element_class_init),
10724         (gst_element_provides_clock), (gst_element_provide_clock),
10725         (gst_element_get_clock), (gst_element_commit_state),
10726         (gst_element_lost_state):
10727         * gst/gstelement.h:
10728         Make get/set_clock() symetric. Add provide_clock vmethod since
10729         that is actually what this function does.
10730
10731         * gst/gstpipeline.c: (gst_pipeline_class_init),
10732         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
10733         (gst_pipeline_get_clock):
10734         get_clock -> provide_clock.
10735
10736 2005-09-28  Andy Wingo  <wingo@pobox.com>
10737
10738         * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
10739         lieu of real docs...
10740
10741         * gst/elements/gstfdsrc.c: Cleaned up a bit.
10742
10743 2005-09-28  Tim-Philipp Müller  <tim at centricular dot net>
10744
10745         * gst/elements/gstcapsfilter.c:
10746         * gst/elements/gstfakesink.c:
10747         * gst/elements/gstfakesrc.c:
10748         * gst/elements/gstfdsink.c:
10749         * gst/elements/gstfdsrc.c:
10750         * gst/elements/gstfilesink.c:
10751         * gst/elements/gstfilesrc.c:
10752         * gst/elements/gstidentity.c:
10753         * gst/elements/gsttee.c:
10754         * gst/elements/gsttypefindelement.c:
10755           Make element details static.
10756
10757 2005-09-28  Wim Taymans  <wim@fluendo.com>
10758
10759         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10760         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10761         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10762         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10763         (gst_bin_change_state), (gst_bin_dispose):
10764         Some documentation updates.
10765         Clean up dispose handlers.
10766
10767         * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
10768         * gst/gstpad.c: (gst_pad_dispose):
10769         Clean up dispose handler.
10770
10771         * gst/gstpipeline.c: (gst_pipeline_change_state):
10772         Removed spurious UNLOCK.
10773
10774 2005-09-27  Stefan Kost  <ensonic@users.sf.net>
10775
10776         * docs/gst/gstreamer-sections.txt:
10777         * gst/base/gstbasesrc.h:
10778         * gst/gstelement.h:
10779         * gst/gstevent.h:
10780         * gst/gstobject.h:
10781         * gst/gstpad.h:
10782         * gst/gstpipeline.c:
10783         * gst/gstpipeline.h:
10784         * gst/gstutils.h:
10785         * gst/gstxml.h:
10786           added two new functions to the docs
10787                 documents all undocumented GstXXXFlags
10788                 completed some incomplete docs 
10789
10790 2005-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10791
10792         * gst/gstbin.c: (gst_bin_dispose):
10793         * gst/gstelement.c: (gst_element_dispose):
10794           remove now useless and leaky resurrection code in dispose
10795         * gst/base/gstbasesrc.c: (gst_base_src_init):
10796         * gst/gstelementfactory.c: (gst_element_factory_create):
10797         * gst/gstobject.c: (gst_object_set_parent):
10798           add some debugging
10799
10800 2005-09-27  Wim Taymans  <wim@fluendo.com>
10801
10802         * docs/design/part-TODO.txt:
10803         Update TODO.
10804
10805         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10806         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10807         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10808         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10809         (gst_bin_change_state):
10810         * gst/gstelement.h:
10811         Remove element variable, we keep element info in the iterator now.
10812
10813 2005-09-27  Andy Wingo  <wingo@pobox.com>
10814
10815         * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
10816         values.
10817
10818 2005-09-27  Wim Taymans  <wim@fluendo.com>
10819
10820         * check/gst/gstbin.c: (GST_START_TEST):
10821         Enable check that works now.
10822
10823         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10824         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10825         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10826         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10827         (gst_bin_change_state):
10828         * gst/gstbin.h:
10829         Redid the state change algorithm using a topological sort algo.
10830         Handles all cases correctly.
10831         Exposed iterator for state change order.
10832
10833         * gst/gstelement.h:
10834         Temp storage for state changes. Need to get rid of this soon.
10835
10836 2005-09-27  Wim Taymans  <wim@fluendo.com>
10837
10838         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
10839         * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
10840         (link_fold_func), (gst_pad_proxy_setcaps):
10841         Leak fixes, the fold functions need to unref the passed object and
10842         _get_parent_*() returns ref to parent.
10843
10844 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
10845
10846         * check/gst/gstbuffer.c: (test_make_writable):
10847           Plug leak in test case and fix 'make check-valgrind'
10848
10849 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
10850
10851         * gst/gstbuffer.c: (gst_subbuffer_init):
10852           Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
10853           works correctly in all circumstances (we could have just copied
10854           the parent buffer's readonly flag, but conceptually it seems
10855           cleaner to mark all subbuffers as read-only). (based on patch
10856           by Alessandro Decina, #314710).
10857         
10858         * check/gst/gstbuffer.c: (create_read_only_buffer),
10859         (test_make_writable), (test_subbuffer_make_writable),
10860         (gst_test_suite):
10861           Add some tests for gst_buffer_make_writable().
10862
10863 2005-09-27  Wim Taymans  <wim@fluendo.com>
10864
10865         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
10866         use gst_object_has_ancestor().
10867
10868         * gst/gstobject.c: (gst_object_has_ancestor):
10869         * gst/gstobject.h:
10870         gst_object_has_ancestor() copied from gstbin.c as it is a
10871         usefull function.
10872
10873         * tests/instantiate/create.c: (create_all_elements):
10874         * tests/lat.c: (handoff_src), (handoff_sink):
10875         * tests/sched/runxml.c: (main):
10876         * tests/seeking/seeking1.c: (main):
10877         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
10878         (main):
10879         Fix compilation of some tests.
10880
10881 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
10882
10883         * gst/gsterror.h:
10884           Remove comment. GST_TYPE_G_ERROR is here to stay,
10885           G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
10886           (#316961, #300610).
10887
10888 2005-09-26  Wim Taymans  <wim@fluendo.com>
10889
10890         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
10891         Added check that shows error in state change order.
10892
10893 2005-09-26  Wim Taymans  <wim@fluendo.com>
10894
10895         * gst/gstbin.c: (gst_bin_change_state):
10896         Make state change function use 3 queues again, we were
10897         adding elements in the wrong order.
10898
10899         * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
10900         Some debug info,
10901
10902         * gst/gstpad.c: (gst_pad_dispose):
10903         Added some debug info first.
10904
10905 2005-09-26  Tim-Philipp Müller  <tim at centricular dot net>
10906
10907         * docs/design/draft-push-pull.txt:
10908         * docs/design/part-events.txt:
10909         * docs/design/part-overview.txt:
10910         * docs/design/part-scheduling.txt:
10911           Replace all _pull_region() with _pull_range()
10912           
10913 2005-09-26  Andy Wingo  <wingo@pobox.com>
10914
10915         * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
10916
10917         * check/gst-libs/controller.c: Update for controller api change.
10918
10919         * configure.ac: 
10920         * tests/Makefile.am:
10921         * tests/memchunk: Remove memchunk benchmark stuff, this is taken
10922         over by GLib bug 118439.
10923         
10924         * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
10925         routines to a function.
10926
10927         * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
10928
10929         * libs/gst/controller/gsthelper.c:
10930         * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
10931         (gst_object_sync_values): Renamed from sink_values. Ugh.
10932
10933         * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
10934
10935         * libs/gst/controller/gstcontroller.c (__gst_controller_key):
10936         Renamed from controller_key, as it is exported.
10937
10938         * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
10939
10940 2005-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10941
10942         * gst/Makefile.am:
10943         * gst/gst.h:
10944         * gst/gstpad.h:
10945         * gst/gstpadtemplate.h:
10946         * gst/gstquery.c:
10947         * gst/gstquery.h:
10948         * gst/gstqueryutils.c:
10949         * gst/gstqueryutils.h:
10950           remove queryutils headers after moving the two used functions
10951           to gstquery.  also fixes build problem for gstsiddec
10952
10953 2005-09-26  Michael Smith <msmith@fluendo.com>
10954
10955         * tools/gst-launch.1.in:
10956         Correct documentation in manpage of debug syntax
10957
10958 2005-09-26  Wim Taymans  <wim@fluendo.com>
10959
10960         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
10961         (gst_base_src_is_seekable), (gst_base_src_change_state):
10962         Some more debugging info.
10963
10964 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
10965
10966         * docs/gst/gstreamer-sections.txt:
10967         * gst/base/gstbasetransform.h:
10968         * gst/gstindex.h:
10969           added more docs
10970
10971 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
10972
10973         * docs/gst/.cvsignore:
10974         * docs/gst/tmpl/.cvsignore:
10975         * docs/gst/tmpl/gstpipeline.sgml:
10976         * docs/gst/tmpl/gstplugin.sgml:
10977         * gst/gstpipeline.c:
10978         * gst/gstplugin.c:
10979         * gst/gstplugin.h:
10980           inlined the last two docs files
10981           removed the tmpl directory from cvs (no more conflicts here!)
10982
10983 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
10984
10985         * docs/gst/gstreamer-sections.txt:
10986         * docs/gst/tmpl/.cvsignore:
10987         * docs/gst/tmpl/gstpad.sgml:
10988         * docs/gst/tmpl/gstpadtemplate.sgml:
10989         * gst/Makefile.am:
10990         * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
10991         (gst_pad_finalize), (gst_pad_set_pad_template):
10992         * gst/gstpad.h:
10993         * gst/gstpadtemplate.c: (gst_pad_template_get_type),
10994         (gst_pad_template_class_init), (gst_pad_template_init),
10995         (gst_pad_template_dispose), (name_is_valid),
10996         (gst_static_pad_template_get), (gst_pad_template_new),
10997         (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
10998         (gst_pad_template_pad_created):
10999         * gst/gstpadtemplate.h:
11000           inlined two more docs
11001           factored gstpadtemplate out of gstpad
11002
11003 2005-09-24  Tim-Philipp Müller  <tim at centricular dot net>
11004
11005         * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
11006         (test_children_state_change_order_semi_sink):
11007           Fix test case: we can't rely on a fixed state change order when
11008           going from READY => PAUSED because the sink might commit its 
11009           new state first when the first buffer created by the source 
11010           reaches the sink before the source has finished its change state.
11011           (Test case still fails at times, see #316856, comment 5 onwards)
11012
11013 2005-09-24  Wim Taymans  <wim@fluendo.com>
11014
11015         * docs/design/part-events.txt:
11016         * docs/design/part-gstbus.txt:
11017         * docs/design/part-gstpipeline.txt:
11018         * docs/design/part-messages.txt:
11019         * docs/design/part-overview.txt:
11020         * docs/design/part-segments.txt:
11021         * gst/gstbin.c:
11022         * gst/gstbuffer.c:
11023         * gst/gstclock.c:
11024         * gst/gstelement.c:
11025         * gst/gstevent.c:
11026         * gst/gstfilter.c:
11027         * gst/gstiterator.c:
11028         Various documentation updates.
11029
11030 2005-09-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11031
11032         * gst/gstclock.h:
11033           Well, that's embarassing.  Luckily we weren't using
11034           GST_CLOCK_DIFF anywhere.
11035
11036 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11037
11038         * common/gtk-doc.mak:
11039           don't fail on building XML, FC4 slave shows a bunch of doc
11040           missing bits that I don't get
11041         * gst/gstpad.c:
11042         * gst/gstpipeline.c:
11043         * gst/gststructure.c:
11044           some doc updates
11045
11046 2005-09-23  Tim-Philipp Müller  <tim at centricular dot net>
11047
11048         * docs/design/part-gstbin.txt:
11049         * docs/design/part-gstbus.txt:
11050         * gst/gstbus.c:
11051           Add blurb about how the bus goes into flushing mode and
11052           drops all messages when its bin goes from READY into NULL 
11053           state.
11054
11055 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11056
11057         * docs/gst/gstreamer-sections.txt:
11058         * gst/gststructure.c: (gst_structure_get_clock_time):
11059         * gst/gststructure.h:
11060           add a method to get a GstClockTime out of a structure
11061
11062 2005-09-23  Tim-Philipp Müller  <tim at centricular dot net>
11063
11064         * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
11065         (test_children_state_change_order_semi_sink), (gst_bin_suite):
11066           Added test to check state change order in bins (can still be made
11067           to fail here under heavy disk load; bails out with 'Push on pad
11068           fakesink:sink0, but it was not activated in push mode').
11069
11070         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
11071           Fix state change order when there is only a semi sink (#316856)
11072
11073         * gst/gstbus.c: (gst_bus_class_init):
11074           Use _class_peek_parent(), not _class_ref(); fix docs to say
11075           'default main context' instead of 'mainloop' where that is
11076           what's meant.
11077
11078         * gst/gstelement.c: (gst_element_commit_state),
11079         (gst_element_set_state):
11080           Fix typos in debug messages
11081
11082 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11083
11084         * docs/README:
11085         * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
11086         * gst/gstpluginfeature.c:
11087         * gst/gstutils.c:
11088           various doc updates
11089         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
11090           change an assert into an error until it gets fixed properly
11091
11092 2005-09-23  Stefan Kost  <ensonic@users.sf.net>
11093
11094         * docs/gst/gstreamer-sections.txt:
11095         * docs/gst/tmpl/.cvsignore:
11096         * docs/gst/tmpl/gstelement.sgml:
11097         * docs/gst/tmpl/gstinfo.sgml:
11098         * docs/gst/tmpl/gstobject.sgml:
11099         * gst/gstelement.c:
11100         * gst/gstelement.h:
11101         * gst/gstinfo.c:
11102         * gst/gstinfo.h:
11103         * gst/gstobject.c: (gst_object_class_init):
11104         * gst/gstobject.h:
11105           inlined 3 more biiiig doc files and added some missing docs on the fly
11106
11107 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11108
11109         * check/gst/.cvsignore:
11110         * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
11111         * gst/gstregistryxml.c: (load_plugin),
11112         (gst_registry_xml_save_plugin):
11113           put back source in registry.  add checks for find_plugin.
11114         * testsuite/states/bin.c: (assert_state), (empty_bin),
11115         (test_adding_one_element), (main):
11116         * testsuite/states/locked.c: (main):
11117           some compile/run fixes
11118
11119 2005-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11120
11121         * check/gst/gstvalue.c: (GST_START_TEST):
11122           fix leaks in the test itself
11123
11124 2005-09-22  Wim Taymans  <wim@fluendo.com>
11125
11126         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11127         (gst_base_sink_send_event), (gst_base_sink_peer_query),
11128         (gst_base_sink_query):
11129         Prepare for more accurate position reporting and query
11130         handling.
11131
11132         * gst/gstelement.c: (gst_element_send_event),
11133         (gst_element_set_state):
11134         Add some comment.
11135
11136 2005-09-22  Wim Taymans  <wim@fluendo.com>
11137
11138         * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
11139         (gst_query_parse_segment):
11140         * gst/gstquery.h:
11141         More documentation.
11142         Add segment query for future use.
11143
11144 2005-09-22  Wim Taymans  <wim@fluendo.com>
11145
11146         * gst/gstbin.c: (gst_bin_add_func):
11147         Some more debug info.
11148
11149         * gst/gstelement.c: (gst_element_send_event):
11150         Simplify send_event
11151
11152         * gst/gstelement.h:
11153         Don't know how flags got broken.
11154
11155         * gst/gstquery.h:
11156         Added new query.
11157
11158 2005-09-22  Tim-Philipp Müller  <tim at centricular dot net>
11159
11160         * check/gst/gstvalue.c: (test_date), (gst_value_suite):
11161           Add simplistic test suite for GST_TYPE_DATE serialisation and
11162           deserialisation.
11163
11164 2005-09-22  Tim-Philipp Müller  <tim at centricular dot net>
11165
11166         * docs/gst/gstreamer-sections.txt:
11167         * gst/gststructure.c: (gst_structure_set_valist),
11168         (gst_structure_get_date):
11169         * gst/gststructure.h:
11170         * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
11171         (gst_date_copy), (gst_value_compare_date),
11172         (gst_value_serialize_date), (gst_value_deserialize_date),
11173         (gst_value_transform_date_string),
11174         (gst_value_transform_string_date), (_gst_value_initialize):
11175         * gst/gstvalue.h:
11176           Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
11177           bunch of utility functions along with a hack that checks that
11178           developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
11179           is required. Part of the grand scheme in #170777.
11180
11181 2005-09-22  Andy Wingo  <wingo@pobox.com>
11182
11183         * gst/gstconfig.h.in: Psych out gtk-doc.
11184
11185         * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
11186
11187         * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
11188
11189         * tools/gst-inspect.c (print_element_list): Plug some
11190         inconsequential leaks.
11191
11192         * gst/gstregistry.c (gst_registry_get_default): Doc.
11193
11194         * check/gst/gstplugin.c: 
11195         * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
11196         * gst/gstelementfactory.c (gst_element_factory_create): 
11197         * gst/gstindexfactory.c (gst_index_factory_create): Update for
11198         refcount changes.
11199
11200         * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
11201         (gst_plugin_feature_load): Doc, don't eat refs.
11202
11203         * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
11204         (gst_plugin_list_free): Doc.
11205         (gst_plugin_load_file): Doc updates.
11206
11207         * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
11208         accessors returning refcounted objects, return a ref.
11209
11210         * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
11211         accessor for caps. IDEMPOTENCE. Oh yes.
11212
11213 2005-09-21  Francis Labonte  <francis_labonte at hotmail dot com>
11214
11215         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
11216
11217         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
11218         (_gst_debug_register_funcptr):
11219           Add mutex to serialise access to the hash table with
11220           the function pointer => function name string mapping;
11221           make that hash table static scope (#316809).
11222
11223         * gst/registries/.cvsignore:
11224           Remove left-over file.
11225
11226 2005-09-21  Tim-Philipp Müller  <tim at centricular dot net>
11227
11228         * docs/pwg/appendix-porting.xml:
11229           And something about newsegment events and caps-on-buffers to
11230           the porting guide (feel free to improve).
11231
11232 2005-09-21  Andy Wingo  <wingo@pobox.com>
11233
11234         * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
11235         data and event probes on the same pad.
11236         (test_buffer_probe_once): Test that removing probes from within
11237         the probe functions works.
11238
11239 2005-09-21  Andy Wingo  <wingo@pobox.com>
11240
11241         * check/gst/gstutils.c: New file.
11242         (test_buffer_probe_n_times): A simple buffer probe test. More to
11243         come, foolios.
11244
11245         * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
11246         have-data::buffer, not have-data.
11247         (gst_pad_add_event_probe): Likewise for have-data::event.
11248         (gst_pad_add_data_probe): More docs. The part about 'resolving the
11249         peer' isn't quite right yet though.
11250         (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe) 
11251         (gst_pad_remove_data_probe): Change to take the guint handler_id
11252         as their arg, not the function+data, which is more glib-like.
11253
11254         * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
11255         the signal emission to indicate if the data is a buffer or an
11256         event.
11257         (gst_pad_get_type): Initialize buffer and event quarks.
11258         (gst_pad_class_init): have-data is now a detailed signal, yes it
11259         is.
11260
11261 2005-09-21  Tim-Philipp Müller  <tim at centricular dot net>
11262
11263         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
11264         * gst/gstutils.c: (gst_util_set_value_from_string),
11265         (gst_util_set_object_arg):
11266           Don't put functional code in g_return_if_fail() or
11267           g_return_val_if_fail() statements, otherwise things will 
11268           break when G_DISABLE_CHECKS is defined during compilation.
11269
11270 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
11271
11272         * docs/gst/tmpl/.cvsignore:
11273         * docs/gst/tmpl/gstvalue.sgml:
11274         * gst/gstvalue.c:
11275         * gst/gstvalue.h:
11276           inlied another one and added  some obvious docs
11277
11278 2005-09-21  Wim Taymans  <wim@fluendo.com>
11279
11280         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11281         (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
11282         (gst_fdsrc_unlock), (gst_fdsrc_set_property),
11283         (gst_fdsrc_get_property), (gst_fdsrc_create):
11284         * gst/elements/gstfdsrc.h:
11285         Properly implement fdsrc. Removed signal and timeout,
11286         better implemented somewhere else.
11287
11288 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
11289
11290         * docs/gst/tmpl/.cvsignore:
11291         * docs/gst/tmpl/gstimplementsinterface.sgml:
11292         * gst/gstinterface.c:
11293           inlined more docs
11294
11295 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
11296
11297         * docs/gst/gstreamer-sections.txt:
11298         * docs/gst/tmpl/.cvsignore:
11299         * docs/gst/tmpl/gstenumtypes.sgml:
11300           remove obsolete doc file
11301
11302 2005-09-21  David Schleef  <ds@schleef.org>
11303
11304         * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
11305         little beer, fix a little leak.
11306
11307 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
11308
11309         * docs/gst/gstreamer-docs.sgml:
11310         * docs/gst/gstreamer-sections.txt:
11311         * docs/gst/tmpl/.cvsignore:
11312         * gst/Makefile.am:
11313         * gst/gst.h:
11314         * gst/gstbin.c:
11315         * gst/gstelement.h:
11316         * gst/gstindex.c: (gst_index_class_init):
11317         * gst/gstindex.h:
11318         * gst/gstindexfactory.c: (gst_index_factory_get_type),
11319         (gst_index_factory_class_init), (gst_index_factory_init),
11320         (gst_index_factory_finalize), (gst_index_factory_new),
11321         (gst_index_factory_destroy), (gst_index_factory_find),
11322         (gst_index_factory_create), (gst_index_factory_make):
11323         * gst/gstindexfactory.h:
11324         * gst/gstpluginfeature.c:
11325         * gst/gstpluginfeature.h:
11326         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11327           more docs inlined, splitted gstindex.{c,h}
11328
11329 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11330
11331         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11332           fix a leak
11333
11334 2005-09-20  Tim-Philipp Müller  <tim at centricular dot net>
11335
11336         * gst/elements/gstfilesink.c: (gst_file_sink_init):
11337           Set sync to FALSE by default.
11338
11339 2005-09-20  Wim Taymans  <wim@fluendo.com>
11340
11341         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11342         (gst_base_sink_init):
11343         Make sync property settable from subclass.
11344
11345         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
11346         (gst_fake_sink_change_state):
11347         Set sync to FALSE by default.
11348
11349 2005-09-20  Wim Taymans  <wim@fluendo.com>
11350
11351         * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
11352         * tools/gst-launch.c: (main):
11353         The timeout handler should have lower priority than the source
11354         so we don't timeout before popping a message with 0 timeout.
11355         Dump error messages after failed state change.
11356
11357 2005-09-20  Tim-Philipp Müller  <tim at centricular dot net>
11358
11359         * tools/gst-inspect.c: (print_element_properties_info):
11360           Fix two typos.
11361
11362 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11363
11364         * check/gst/gstevent.c:
11365         * gst/elements/gstfakesink.c:
11366         * gst/elements/gstfakesink.h:
11367           remove the sync property from fakesink.
11368           has the side effect of setting sync TRUE
11369           for fakesink, which is a change.  Anyone who knows how
11370           to fix this nicely in a GObject-y way, feel free.
11371
11372 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
11373
11374         * docs/gst/gstreamer-docs.sgml:
11375           remove probe refsection
11376
11377 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
11378
11379         * check/Makefile.am:
11380           disable valgrinding the controller test again
11381         * docs/gst/gstreamer-sections.txt:
11382           update for api-changes
11383
11384 2005-09-20  Wim Taymans  <wim@fluendo.com>
11385
11386         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11387         (gst_base_sink_set_property), (gst_base_sink_get_property),
11388         (gst_base_sink_do_sync):
11389         * gst/base/gstbasesink.h:
11390         Added sync property to basesink to disable clock sync.
11391
11392 2005-09-20  Andy Wingo  <wingo@pobox.com>
11393
11394         * gst/gstelementfactory.c (gst_element_factory_create): Avoid
11395         eating the caller's refcount.
11396
11397         * gst/gstobject.h (GST_OBJECT_REFCOUNT) 
11398         (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
11399         refcount.
11400
11401         * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
11402         * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
11403         of GLib 2.8 public, so we can know which refcount to check in
11404         tests.
11405
11406         * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
11407         (gst_object_init): Only set the gst refcount if we're going ahead
11408         with the refcount hack.
11409
11410 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
11411
11412         * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
11413         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11414           more leaks plumbed, added more debug-logging
11415         * gst/gstmacros.h:
11416           whitespace fix
11417
11418 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11419
11420         * gst/gstmessage.c:
11421           remove include of gstmemchunk.h
11422
11423 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11424
11425         * gst/gstclock.c: (_gst_clock_id_free):
11426           Commit from the Political Party For More Atomic CVS Commits,
11427           so that people don't waste too much of their day fishing
11428           out obvious leaks out of massive commits.
11429           Oh, and fix a pretty damn obvious leak in the memchunk
11430           removal code.
11431
11432 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
11433
11434         * check/Makefile.am:
11435         * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
11436           plug mem-leak, re-add to valgrindable tests
11437
11438 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11439
11440         * gst/gstplugin.h:
11441           unbreak the build for those who have chronic arthritis
11442           and typing "make check" is just too taxing on the hands
11443
11444 2005-09-20  Andy Wingo  <wingo@pobox.com>
11445
11446         * gst/gst.h: Re-add marshal to gst.h's include list -- if we
11447         really want it out, you should fix plugins at the same time.
11448
11449 2005-09-19  Stefan Kost  <ensonic@users.sf.net>
11450
11451         * configure.ac:
11452         * docs/gst/gstreamer-sections.txt:
11453         * gst/gstobject.c:
11454           added missing symbols to api docs
11455           disable ref-count hack if we have glib >= 2.8
11456
11457 2005-09-19  David Schleef  <ds@schleef.org>
11458
11459         * docs/gst/Makefile.am: Ignore a few more internal headers
11460         * docs/gst/gstreamer-docs.sgml: Remove old sections
11461         * docs/gst/gstreamer-sections.txt: Remove old sections
11462         * docs/gst/tmpl/gstobject.sgml: update
11463         * docs/gst/tmpl/gstplugin.sgml: update
11464         * docs/gst/tmpl/gstpluginfeature.sgml: update
11465         * docs/random/ds/0.9-suggested-changes: update.
11466         * gst/Makefile.am: remove memchunk and trashstack, since they're
11467           not used.
11468         * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
11469         * gst/gst.h: don't include some headers
11470         * gst/gstchildproxy.c: add gstmarshal.h
11471         * gst/gstclock.c: Don't use memchunks
11472         * gst/gstminiobject.c: Add some docs
11473         * gst/gstobject.c: remove DESTROYED flag, since it's redundant
11474         * gst/gstobject.h: same
11475         * gst/gstplugin.c: include gstmacros.h
11476         * gst/gstplugin.h: don't include gstmacros.h, since it's private
11477         * gst/gstquery.c: don't use memchunks
11478         * gst/gstregistry.c: rename gst_registry_deinit()
11479         * gst/gstregistry.h: same
11480
11481 2005-09-19  David Schleef  <ds@schleef.org>
11482
11483         * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
11484         * docs/libs/gstreamer-libs-sections.txt:
11485         * docs/libs/tmpl/gstgetbits.sgml:
11486         * docs/libs/tmpl/gstputbits.sgml:
11487
11488 2005-09-19  Tim-Philipp Müller  <tim at centricular dot net>
11489
11490         * win32/gstenumtypes.c:
11491         * win32/gstenumtypes.h:
11492           Update.
11493
11494 2005-09-19  Wim Taymans  <wim@fluendo.com>
11495
11496         * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
11497         Automatically PAUSE and RESUME a pipeline when a flushing seek
11498         is performed.
11499
11500 2005-09-19  Andy Wingo  <wingo@pobox.com>
11501
11502         * gst/gstregistry.h: Spacing fixen.
11503
11504 2005-09-19  Wim Taymans  <wim@fluendo.com>
11505
11506         * gst/base/gstbasesrc.c: (gst_base_src_change_state):
11507         Handle state change failure more correctly.
11508
11509 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11510
11511         * check/Makefile.am:
11512         * check/pipelines/cleanup.c: (run_pipeline):
11513         * check/pipelines/simple_launch_lines.c: (run_pipeline),
11514         (GST_START_TEST):
11515           enable cleanup again after fixing the leak
11516         * docs/README:
11517           some more info on docs
11518
11519 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11520
11521         * check/Makefile.am:
11522           re-enable tests now that leaks are plugged
11523         * check/gst/gst.c:
11524         * check/gst/gstbin.c:
11525         * check/gst/gstpipeline.c:
11526           add some more tests while fixing leaks
11527         * common/check.mak:
11528           make sure binaries are uptodate when valgrinding/gdbing
11529         * gst/gst.c:
11530         * gst/gstelementfactory.c:
11531           remove a ref too many, and add a FIXME for when we get
11532           round to disposing of classes
11533         * gst/gstplugin.c:
11534           fix the refcounting when loading a plugin from a file and
11535           the code pretends that the pointer is the same even though
11536           of course it can change
11537         * gst/gstpluginfeature.c:
11538           unref plugins marked cached (a bit confusing as a name)
11539           as the docs state should be done
11540           various doc additions to explain refcounting
11541         * gst/gstregistry.c:
11542         * gst/gstregistryxml.c:
11543           debugging
11544
11545 2005-09-19  Wim Taymans  <wim@fluendo.com>
11546
11547         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
11548         * check/gst/gstbus.c: (message_func_eos), (message_func_app),
11549         (send_messages), (GST_START_TEST), (gstbus_suite):
11550         * check/gst/gstpipeline.c: (GST_START_TEST):
11551         * check/pipelines/cleanup.c: (run_pipeline):
11552         * check/pipelines/simple_launch_lines.c: (run_pipeline),
11553         (GST_START_TEST):
11554         * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
11555         (gst_bus_source_check), (gst_bus_source_dispatch),
11556         (gst_bus_create_watch), (gst_bus_add_watch_full),
11557         (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
11558         * gst/gstbus.h:
11559         * tools/gst-launch.c: (event_loop):
11560         * tools/gst-md5sum.c: (event_loop):
11561         GstBusHandler -> GstBusFunc, return value has the same meaning as
11562         any other GSource (FALSE == remove source).
11563         _add_watch() and _add_watch_full() now take a MessageType mask to
11564         only handle specific types of messages.
11565         _poll() returns the GstMessage instead of the message type to avoid
11566         race conditions.
11567         _have_pending() takes a MessageType mask now too.
11568         Added testsuite for multiple bus watches.
11569         Fix testsuites and applications for new bus API.
11570
11571 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11572
11573         * check/Makefile.am:
11574           mark a bunch of the tests as to fix until we fix them
11575
11576 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11577
11578         * common/check.mak:
11579           use GST_PLUGIN settings for valgrind tests as well, so we're
11580           valgrinding the correct thing
11581         * gst/gst.c: (init_post):
11582           plug another leak
11583
11584 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11585
11586         * gst/gst.c: (init_post), (gst_deinit):
11587         * gst/gstelementfactory.c: (gst_element_factory_class_init),
11588         (gst_element_factory_finalize), (gst_element_factory_cleanup):
11589         * gst/gstindex.c: (gst_index_factory_class_init),
11590         (gst_index_factory_finalize):
11591         * gst/gstobject.c: (gst_object_dispose):
11592         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
11593         (gst_plugin_load_file), (gst_plugin_desc_free):
11594         * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
11595         (gst_plugin_feature_finalize):
11596         * gst/gstregistry.c: (gst_registry_class_init),
11597         (gst_registry_init), (gst_registry_finalize),
11598         (gst_registry_get_default), (gst_registry_deinit):
11599         * gst/gstregistry.h:
11600         * gst/gstregistryxml.c: (load_feature), (load_plugin):
11601           various cleanups and memleak plugging.  make valgrind is happy now.
11602
11603 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11604
11605         * common/check.mak:
11606           add a check-valgrind target
11607
11608 2005-09-18  David Schleef  <ds@schleef.org>
11609
11610         * tools/gst-inspect.c: Revert the GOption code.
11611
11612 2005-09-17  David Schleef  <ds@schleef.org>
11613
11614         * check/Makefile.am: Fix environment variables.
11615         * check/gst/gstplugin.c: Fix for API changes.
11616         * tools/gst-inspect.c: Fix for API changes.
11617         * tools/gst-xmlinspect.c: Fix for API changes.
11618         * gst/gstelementfactory.c:
11619         * gst/gstplugin.c:
11620         * gst/gstplugin.h:
11621         * gst/gstpluginfeature.c:
11622         * gst/gstpluginfeature.h:
11623         * gst/gstregistry.c:
11624         * gst/gstregistry.h:
11625         * gst/gstregistryxml.c:
11626         * gst/gsttypefind.c:
11627         * gst/gsttypefindfactory.c:
11628         * gst/indexers/gstfileindex.c:
11629         * gst/indexers/gstmemindex.c:
11630         * gst/schedulers/Makefile.am:
11631           Change registry to keep track of both plugins and features,
11632           removing the feature tracking from plugins themselves.
11633
11634 2005-09-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11635
11636         * check/Makefile.am:
11637         * tools/gst-register.1.in:
11638           remove gst-register
11639
11640 2005-09-15  David Schleef  <ds@schleef.org>
11641
11642         * check/gst/gstplugin.c:
11643         * gst/gstelementfactory.c:
11644         * gst/gstplugin.c:
11645         * gst/gstpluginfeature.c:
11646         * gst/gstregistry.c:
11647           Getting tired of debugging.  Disabled all the unreffing of
11648           plugins and features, which fixes the segfaults, but of
11649           course leaks like crazy.  At least playbin works.
11650
11651 2005-09-15  David Schleef  <ds@schleef.org>
11652
11653         * check/gst/gstplugin.c: (register_check_elements),
11654         (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
11655         More testing
11656         * gst/elements/gsttypefindelement.c: Fix refcounting.
11657         * gst/gsttypefind.c:
11658         * gst/gsttypefindfactory.c:
11659         * gst/gsttypefindfactory.h:
11660
11661 2005-09-15  David Schleef  <ds@schleef.org>
11662
11663         * gst/gstindex.c: get refcounting correct.
11664         * gst/gstregistry.c: Handle the case where a feature/plugin is
11665           not found.
11666
11667 2005-09-15  David Schleef  <ds@schleef.org>
11668
11669         * check/Makefile.am:
11670         * check/gst/gstplugin.c: Add test
11671         * gst/gstplugin.c: Fix problems noticed by testsuite
11672         * gst/gstplugin.h:
11673         * gst/gstregistry.c: 
11674         * gst/gstregistry.h:
11675
11676 2005-09-15  David Schleef  <ds@schleef.org>
11677
11678         * gst/gstplugin.c: Implement semi-decent recounting and locking
11679           in plugins and plugin features.
11680         * gst/gstplugin.h:
11681         * gst/gstpluginfeature.c:
11682         * gst/gstpluginfeature.h:
11683         * gst/gstregistry.c:
11684
11685 2005-09-15  Michael Smith <msmith@fluendo.com>
11686
11687         * gst/gstregistry.c: (gst_registry_get_feature_list):
11688           Implement this. Makes oggdemux work; decodebin still broken.
11689
11690 2005-09-14  David Schleef  <ds@schleef.org>
11691
11692         * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
11693           #316076)
11694         * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
11695         * gst/check/Makefile.am:
11696         * libs/gst/controller/Makefile.am:
11697         * libs/gst/dataprotocol/Makefile.am:
11698
11699 2005-09-14  David Schleef  <ds@schleef.org>
11700
11701         * configure.ac: Remove getbits library.  Nothing uses it, and
11702           it should be in something like liboil if someone did want
11703           to use it.
11704         * libs/gst/Makefile.am:
11705         * libs/gst/getbits/Makefile.am:
11706         * libs/gst/getbits/gbtest.c:
11707         * libs/gst/getbits/getbits.c:
11708         * libs/gst/getbits/getbits.h:
11709         * libs/gst/getbits/gstgetbits_generic.c:
11710         * libs/gst/getbits/gstgetbits_i386.s:
11711         * libs/gst/getbits/gstgetbits_inl.h:
11712
11713 2005-09-14  David Schleef  <ds@schleef.org>
11714
11715         * gst/Makefile.am: Dist glib-compat.h
11716
11717 2005-09-14  David Schleef  <ds@schleef.org>
11718
11719         * configure.ac: Remove gst/registries, since it's no longer used.
11720         * gst/registries/Makefile.am:
11721         * gst/registries/gstlibxmlregistry.c:
11722         * gst/registries/gstlibxmlregistry.h:
11723         * gst/registries/gstxmlregistry.c:
11724         * gst/registries/gstxmlregistry.h:
11725         * gst/registries/registrytest.c:
11726
11727 2005-09-14  David Schleef  <ds@schleef.org>
11728
11729         * gst/glib-compat.h:
11730         * gst/gstregistryxml.c:
11731           Convergence is near.  Seriously.
11732
11733 2005-09-14  David Schleef  <ds@schleef.org>
11734
11735         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11736         * gst/glib-compat.h:
11737           Attempt #4 to appease the buildbots.
11738
11739 2005-09-14  David Schleef  <ds@schleef.org>
11740
11741         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11742           Attempt #3.
11743
11744 2005-09-14  David Schleef  <ds@schleef.org>
11745
11746         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11747         Attempt #2.
11748
11749 2005-09-14  David Schleef  <ds@schleef.org>
11750
11751         * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
11752           the new functions.
11753
11754 2005-09-14  David Schleef  <ds@schleef.org>
11755
11756         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11757         * gst/glib-compat.h: Add some functions that are in newer versions
11758           of glib than we care to require.
11759         * gst/gstregistryxml.c: Use them.
11760
11761 2005-09-14  David Schleef  <ds@schleef.org>
11762
11763         * po/POTFILES.in: remove gst-register.c
11764
11765 2005-09-14  David Schleef  <ds@schleef.org>
11766
11767         * docs/gst/gstreamer-docs.sgml:
11768         * docs/gst/gstreamer-sections.txt:
11769         * docs/gst/gstreamer.types:
11770         * docs/gst/tmpl/gstelement.sgml:
11771         * docs/gst/tmpl/gstplugin.sgml:
11772         * docs/gst/tmpl/gstpluginfeature.sgml:
11773           Documentation updates for registry changes.
11774
11775 2005-09-14  David Schleef  <ds@schleef.org>
11776
11777         * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
11778           because we don't require glib-2.8.
11779
11780 2005-09-14  David Schleef  <ds@schleef.org>
11781
11782         * gst/gstregistryxml.c: Added.  Essentially moved out of the
11783           registries directory.
11784
11785 2005-09-14  David Schleef  <ds@schleef.org>
11786
11787         * check/Makefile.am:
11788         * check/generic/states.c:
11789         * gst/Makefile.am:
11790         * gst/gst.c:
11791         * gst/gst.h:
11792         * gst/gst_private.h:
11793         * gst/gstelementfactory.c:
11794         * gst/gstindex.c:
11795         * gst/gstinfo.c:
11796         * gst/gstplugin.c:
11797         * gst/gstplugin.h:
11798         * gst/gstpluginfeature.c:
11799         * gst/gstpluginfeature.h:
11800         * gst/gstregistry.c:
11801         * gst/gstregistry.h:
11802         * gst/gstregistrypool.c: remove
11803         * gst/gstregistrypool.h: remove
11804         * gst/gsttypefind.c:
11805         * gst/gsttypefindfactory.c:
11806         * gst/gsturi.c:
11807         * tools/Makefile.am:
11808         * tools/gst-compprep.c:
11809         * tools/gst-inspect.c:
11810         * tools/gst-register.c: remove
11811         * tools/gst-xmlinspect.c:
11812           Registry rewrite.  Changes registry from being a file created
11813           by a tool into a simple cache file created automatically by 
11814           libgstreamer.  Removed gst-register (because it's no longer
11815           needed).  Remove registry pools, because we only have one
11816           registry implementation (XML).  Fix up other subsystems as
11817           necessary.
11818
11819 2005-09-13  Michael Smith <msmith@fluendo.com>
11820
11821         * gst/gstconfig.h.in:
11822           Don't Use windows linking attributes for MinGW. Fixes #316157
11823
11824 2005-09-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11825
11826         * gst/gstutils.c: (set_state_async_thread_func),
11827         (gst_element_set_state_async):
11828           Apparently people think it's better if this function doesn't
11829           try to set the state to whatever state was asked for on the first
11830           call to this function for any object.  Seriously.
11831
11832 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11833
11834         * check/gst/gstpipeline.c: (GST_START_TEST):
11835         * docs/gst/gstreamer-sections.txt:
11836         * gst/gstutils.c: (set_state_async_thread_func),
11837         (gst_element_set_state_async):
11838         * gst/gstutils.h:
11839           add a "gst_element_set_state_async" method that
11840           sets the state and starts a thread to make sure the state
11841           change completes as best as it can
11842
11843 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11844
11845         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
11846           codify design+behaviour in testsuite after discussion
11847
11848 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11849
11850         * docs/gst/tmpl/gstelement.sgml:
11851         * docs/manual/appendix-quotes.xml:
11852           add a quote
11853         * gst/gstelement.c: (gst_element_set_state):
11854           add some debug
11855
11856 2005-09-12  Jan Schmidt  <thaytan@mad.scientist.com>
11857
11858         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
11859         (gst_base_transform_prepare_output_buf),
11860         (gst_base_transform_handle_buffer):
11861         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
11862         (gst_capsfilter_prepare_buf):
11863           Remove the requirement for sub-classes to call the parent
11864           implementation of prepare_output_buffer with a wrapper function.
11865           
11866         * gst/gsttaglist.h:
11867         * gst/gsttagsetter.h:
11868           Fix #define wrapper
11869
11870 2005-09-11  Stefan Kost  <ensonic@users.sf.net>
11871
11872         * docs/gst/gstreamer-sections.txt:
11873           more doc cleanups
11874
11875 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11876
11877         * docs/gst/gstreamer-sections.txt:
11878         * docs/gst/tmpl/gstelement.sgml:
11879         * docs/gst/tmpl/gstplugin.sgml:
11880         * gst/gstminiobject.c:
11881         * gst/gstvalue.h:
11882           docs now stop throwing warnings
11883
11884 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11885
11886         * docs/gst/gstreamer-sections.txt:
11887         * docs/gst/gstreamer.types:
11888         * docs/gst/tmpl/gstpad.sgml:
11889         * docs/gst/tmpl/gsttypes.sgml:
11890         * gst/base/gstadapter.h:
11891         * gst/base/gstbasesink.h:
11892         * gst/base/gstbasesrc.h:
11893         * gst/gstbin.h:
11894         * gst/gstbuffer.h:
11895         * gst/gstbus.h:
11896         * gst/gstcaps.h:
11897         * gst/gstclock.h:
11898         * gst/gstelement.h:
11899         * gst/gstevent.h:
11900         * gst/gstmessage.h:
11901         * gst/gstpad.h:
11902         * gst/gststructure.c:
11903         * gst/registries/gstlibxmlregistry.h:
11904           various documentation fixes
11905
11906 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11907
11908         * docs/gst/gstreamer-sections.txt:
11909         * docs/gst/tmpl/gstvalue.sgml:
11910           rearrange gstvalue section
11911         * gst/gstutils.c: (gst_element_state_get_name):
11912           NONE -> VOID
11913         * gst/gstvalue.c: (_gst_value_initialize):
11914         * gst/gstvalue.h:
11915           doc updates
11916
11917 2005-09-10  Jan Schmidt  <thaytan@mad.scientist.com>
11918
11919         * check/gst-libs/controller.c:
11920           Header include fix.
11921         * gst/base/gstbasetransform.c:
11922         (gst_base_transform_default_prepare_buf),
11923         (gst_base_transform_handle_buffer):
11924         * gst/base/gstbasetransform.h:
11925           Some more basetransform changes and fixes to enable sub-classes
11926           that modify buffer metadata only.
11927         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
11928         (gst_capsfilter_init), (gst_capsfilter_transform_ip),
11929         (gst_capsfilter_prepare_buf):
11930           If the output pad has fixed allowed caps and input buffers 
11931           don't have any, set the fixed caps on outgoing buffers.
11932
11933 2005-09-09  Jan Schmidt  <thaytan@mad.scientist.com>
11934         * check/elements/identity.c: (GST_START_TEST):
11935           Make the error a little clearer when the test fails because
11936           identity made a copy of the buffer.
11937         * docs/gst/gstreamer-sections.txt:
11938           New symbols in gstbasetransform.h
11939         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
11940         (gst_base_transform_init), (gst_base_transform_transform_size),
11941         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
11942         (gst_base_transform_default_prepare_buf),
11943         (gst_base_transform_get_unit_size),
11944         (gst_base_transform_buffer_alloc),
11945         (gst_base_transform_handle_buffer), (gst_base_transform_chain),
11946         (gst_base_transform_change_state),
11947         (gst_base_transform_set_passthrough),
11948         (gst_base_transform_set_in_place),
11949         (gst_base_transform_is_in_place):
11950         * gst/base/gstbasetransform.h:
11951           Change BaseTransform to separate in_place operate from same_caps
11952           output. in_place implies that the element can perform the transform
11953           on incoming buffers in-place, even if the caps on the output are
11954           different.
11955           Sub-class elements can now implement special buffer allocation
11956           methods for outgoing buffers if they wish to.
11957           Big documentation addition.
11958         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
11959         * gst/elements/gstelements.c:
11960           Changes for basetransform modifications.
11961         * gst/elements/Makefile.am:
11962         * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
11963           Compile fix. Extra debug output.
11964
11965 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11966
11967         * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
11968         (gst_pad_suite):
11969           add tests for valid pad naming
11970         * gst/check/gstcheck.c: (gst_check_log_message_func),
11971         (gst_check_log_critical_func):
11972           add ASSERT_WARNING
11973           remove printing of code, it is fragile when the code contains
11974           % and the line number is enough info
11975         * gst/check/gstcheck.h:
11976         * gst/gstpad.c: (gst_pad_template_new):
11977           fix memleaks
11978
11979 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11980
11981         * configure.ac:
11982           say what CHECK flags we use
11983         * docs/libs/gstreamer-libs.types:
11984         * libs/gst/controller/Makefile.am:
11985         * libs/gst/controller/gst-controller.c:
11986         * libs/gst/controller/gst-controller.h:
11987         * libs/gst/controller/gst-helper.c:
11988         * libs/gst/controller/gst-interpolation.c:
11989         * libs/gst/controller/gstcontroller.c:
11990         * libs/gst/controller/gsthelper.c:
11991         * libs/gst/controller/gstinterpolation.c:
11992         * tools/gst-inspect.c: (print_plugin_info):
11993           we don't use dashes in header names
11994
11995 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11996
11997         * check/Makefile.am:
11998         * check/gst/.cvsignore:
11999         * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
12000         (gst_pipeline_suite), (main):
12001           adding a test for pipelines and state changes
12002         * gst/gstutils.c: (get_state_func):
12003           add some debugging
12004         * gstreamer.spec.in:
12005           fix up spec file
12006
12007 2005-09-08  Michael Smith <msmith@fluendo.com>
12008
12009         * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
12010         (gst_file_src_map_small_region), (gst_file_src_create_mmap),
12011         (gst_file_src_is_seekable), (gst_file_src_get_size),
12012         (gst_file_src_start):
12013         * gst/elements/gstfilesrc.h:
12014           Various fixes for unseekable, unmmapable, and non-normal files, so
12015           that fallback to read() rather than mmap() works.
12016         * gst/gstevent.c: (gst_event_new_newsegment):
12017           Allow newsegment events with segment_start == segment_end, as will
12018           correctly happen if you use filesrc on a zero-size file, for
12019           example.
12020
12021 2005-09-07  Jan Schmidt  <thaytan@mad.scientist.com>
12022
12023         * gst/gstplugin.c: (gst_plugin_load_file):
12024           Call g_module_close when we don't load the module
12025
12026         * gst/registries/gstlibxmlregistry.c:
12027         (gst_xml_registry_get_property):
12028           Port leak fix from 0.8
12029
12030 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
12031
12032         * docs/gst/gstreamer-docs.sgml:
12033         * docs/gst/tmpl/.cvsignore:
12034         * docs/gst/tmpl/gsttrace.sgml:
12035         * docs/gst/tmpl/gsttrashstack.sgml:
12036         * gst/Makefile.am:
12037         * gst/gst.h:
12038         * gst/gstelement.h:
12039         * gst/gstevent.h:
12040         * gst/gstmessage.c:
12041         * gst/gstmessage.h:
12042         * gst/gsttag.c:
12043         * gst/gsttag.h:
12044         * gst/gsttaginterface.c:
12045         * gst/gsttaginterface.h:
12046         * gst/gsttaglist.c:
12047         * gst/gsttaglist.h:
12048         * gst/gsttagsetter.c:
12049         * gst/gsttagsetter.h:
12050         * gst/gsttrace.c:
12051         * gst/gsttrace.h:
12052         * gst/gsttrashstack.c:
12053           renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
12054           inlined docs for gsttrace, gsttrashstack
12055
12056 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
12057
12058         * gst/Makefile.am:
12059         * gst/elements/gstbufferstore.h:
12060         * gst/elements/gsttypefindelement.c:
12061         * gst/elements/gsttypefindelement.h:
12062         * gst/gst.h:
12063         * gst/gsttypefind.c:
12064         * gst/gsttypefind.h:
12065         * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
12066         (gst_type_find_factory_class_init), (gst_type_find_factory_init),
12067         (gst_type_find_factory_dispose),
12068         (gst_type_find_factory_unload_thyself),
12069         (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
12070         (gst_type_find_factory_get_caps),
12071         (gst_type_find_factory_get_extensions),
12072         (gst_type_find_factory_call_function):
12073         * gst/gsttypefindfactory.h:
12074         * gst/registries/gstlibxmlregistry.c:
12075         * gst/registries/gstxmlregistry.c:
12076           splitted gsttypefind into gsttypefind, gsttypefindfactory
12077
12078 2005-09-07  Andy Wingo  <wingo@pobox.com>
12079
12080         * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
12081         condition whereby the pad's task function is entered before the
12082         pad_mode variable was set.
12083
12084 2005-09-07  Jan Schmidt  <thaytan@mad.scientist.com>
12085
12086         * gst/gstpad.c: (gst_pad_alloc_buffer):
12087           Catch misbehaving pad_alloc functions that don't
12088           set up caps and do it for them.
12089
12090 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
12091
12092         * check/pipelines/simple_launch_lines.c: (run_pipeline):
12093           test for pipe!=NULL
12094         * docs/gst/tmpl/.cvsignore:
12095         * docs/gst/tmpl/gstmemchunk.sgml:
12096         * docs/gst/tmpl/gstparse.sgml:
12097         * docs/gst/tmpl/gsttaglist.sgml:
12098         * docs/gst/tmpl/gsttagsetter.sgml:
12099         * docs/gst/tmpl/gsttypefind.sgml:
12100         * docs/gst/tmpl/gsttypefindfactory.sgml:
12101         * gst/gstmemchunk.c:
12102         * gst/gstparse.c:
12103         * gst/gsttag.c:
12104         * gst/gsttaginterface.c:
12105         * gst/gsttypefind.c:
12106         * gst/gsttypefind.h:
12107           inlined more docs
12108
12109 === release 0.9.2 ===
12110
12111 2005-09-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12112
12113         * NEWS:
12114         * RELEASE:
12115         * configure.ac:
12116           releasing 0.9.2, "South"
12117
12118 2005-09-05  Andy Wingo  <wingo@pobox.com>
12119
12120         * gst/registries/gstxmlregistry.h:
12121         * gst/registries/gstxmlregistry.c: Um... resurrect...
12122         
12123         * gst/registries/gstxmlregistry.h:
12124         * gst/registries/gstxmlregistry.c: and update to newer API.
12125         Incidentally they should be a bit faster now that they don't have
12126         to parse the caps.
12127         
12128 2005-09-05  Andy Wingo  <wingo@pobox.com>
12129
12130         * gst/registries/gstxmlregistry.h:
12131         * gst/registries/gstxmlregistry.c: Remove from CVS, they were
12132         replaced by the libxml registry a while back
12133
12134 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12135
12136         * docs/gst/tmpl/gstplugin.sgml:
12137         * gst/elements/gstelements.c:
12138         * gst/gst.c:
12139         * gst/gstplugin.c: (gst_plugin_register_func),
12140         (gst_plugin_desc_copy), (gst_plugin_desc_free),
12141         (gst_plugin_get_source):
12142         * gst/gstplugin.h:
12143         * gst/registries/gstlibxmlregistry.c: (load_plugin),
12144         (gst_xml_registry_save_plugin):
12145         * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
12146         (gst_xml_registry_save_plugin):
12147         * tools/gst-inspect.c: (print_plugin_info):
12148           add a "source" plugin description field, to represent the source
12149           module this plugin is a part of.  By default GST_PLUGIN_DEFINE
12150           will set it to PACKAGE, which is automake's idea of the name of
12151           the source project.
12152
12153 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12154
12155         * Makefile.am:
12156         * autogen.sh:
12157         * configure.ac:
12158         * docs/Makefile.am:
12159         * docs/faq/Makefile.am:
12160         * docs/gst/tmpl/gstelement.sgml:
12161         * docs/gst/tmpl/gsttypes.sgml:
12162         * docs/htmlinstall.mak:
12163         * docs/manual/Makefile.am:
12164         * docs/pwg/Makefile.am:
12165           reorganize doc build a little
12166           split out docbook and gtk-doc stuff
12167           have two separate --enable's and enable them through autogen
12168           but disable by default in configure (to be similar to other
12169           projects)
12170         * gstreamer.spec.in:
12171           clean up docs install
12172         * po/af.po:
12173         * po/az.po:
12174         * po/ca.po:
12175         * po/cs.po:
12176         * po/de.po:
12177         * po/en_GB.po:
12178         * po/fr.po:
12179         * po/it.po:
12180         * po/nb.po:
12181         * po/nl.po:
12182         * po/ru.po:
12183         * po/sq.po:
12184         * po/sr.po:
12185         * po/sv.po:
12186         * po/tr.po:
12187         * po/uk.po:
12188         * po/vi.po:
12189           translation updates
12190
12191 2005-09-03  Tim-Philipp Müller  <tim at centricular dot net>
12192
12193         * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
12194           Add comment.
12195           
12196         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
12197         (gst_fake_sink_change_state):
12198           Make state change function thread-safe.
12199           
12200         * gst/gstpad.c: (gst_pad_alloc_buffer):
12201           Set offset on generic buffer allocated by fallback.
12202
12203 2005-09-03  Stefan Kost  <ensonic@users.sf.net>
12204
12205         * docs/gst/gstreamer-sections.txt:
12206         * docs/gst/tmpl/gstelement.sgml:
12207         * gst/gstpad.c:
12208         * libs/gst/controller/gst-controller.c:
12209         (gst_controlled_property_set_interpolation_mode),
12210         (gst_controlled_property_new),
12211         (gst_controller_find_controlled_property):
12212          run the wingo-magic script against the docs
12213
12214 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
12215
12216         * docs/gst/gstreamer-docs.sgml:
12217         * docs/gst/gstreamer-sections.txt:
12218         * docs/gst/tmpl/.cvsignore:
12219         * docs/gst/tmpl/gstelementdetails.sgml:
12220         * docs/gst/tmpl/gstelementfactory.sgml:
12221         * gst/gst.c:
12222         * gst/gstbus.c:
12223         * gst/gstelementfactory.c:
12224         * gst/gstelementfactory.h:
12225           merged elementdetails docs into elementfactory docs
12226           inlined both
12227
12228 2005-09-02  Andy Wingo  <wingo@pobox.com>
12229
12230         * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
12231         consider this enum an enum and not a flags.
12232
12233 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
12234
12235         * docs/gst/gstreamer-docs.sgml:
12236         * docs/gst/tmpl/.cvsignore:
12237         * docs/gst/tmpl/gstghostpad.sgml:
12238         * docs/gst/tmpl/gstiterator.sgml:
12239         * docs/gst/tmpl/gstmacros.sgml:
12240         * docs/gst/tmpl/gstrealpad.sgml:
12241         * docs/gst/tmpl/gstregistry.sgml:
12242         * docs/gst/tmpl/gstregistrypool.sgml:
12243         * docs/gst/tmpl/gststructure.sgml:
12244         * docs/gst/tmpl/gstsystemclock.sgml:
12245         * docs/gst/tmpl/gsttrace.sgml:
12246         * gst/gstghostpad.c:
12247         * gst/gstmacros.h:
12248         * gst/gstmemchunk.c:
12249         * gst/gstmemchunk.h:
12250         * gst/gstqueue.c:
12251         * gst/gstregistry.c:
12252         * gst/gstregistrypool.c:
12253         * gst/gststructure.c:
12254         * gst/gstsystemclock.c:
12255           more docs inlined
12256
12257 2005-09-02  Andy Wingo  <wingo@pobox.com>
12258
12259         * gst/gstelement.h (GstState): Renamed from GstElementState,
12260         changed to be a normal enum instead of flags.
12261         (GstStateChangeReturn): Renamed from GstElementStateReturn, names
12262         munged to be GST_STATE_CHANGE_*.
12263         (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
12264         work with the new state representation.
12265         (GstStateChange): New enumeration of possible state transitions.
12266         Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
12267         (GstElementClass::change_state): Pass the GstStateChange along as
12268         an argument. Helps language bindings, so they don't have to use
12269         tricky lock-needing macros like GST_STATE_CHANGE ().
12270
12271         * scripts/update-states (file): New script. Run it on a file to
12272         update it for state naming and API changes. Updates files in
12273         place.
12274
12275         * All files updated for the new API.
12276
12277 2005-09-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12278
12279         * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
12280         * gst/gstutils.c: (gst_util_set_value_from_string),
12281         (gst_util_set_object_arg):
12282           fix a bunch of unchecked return values
12283         * tools/gst-complete.c: (main):
12284         * gstreamer.spec.in:
12285           clean up a little
12286
12287 2005-09-01  Wim Taymans  <wim@fluendo.com>
12288
12289         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12290         (gst_base_sink_event), (gst_base_sink_do_sync),
12291         (gst_base_sink_handle_event):
12292         * gst/base/gstbasesink.h:
12293         Handle newsegments more correctly.
12294
12295         * gst/gstbus.c:
12296         Fix docs.
12297
12298         * gst/gstevent.c: (gst_event_new_newsegment):
12299         A newsegment cannot have a start_time of -1
12300
12301 2005-09-01  Tim-Philipp Müller  <tim at centricular dot net>
12302
12303         * win32/gstenumtypes.c:
12304         * win32/gstenumtypes.h:
12305           Update
12306
12307 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
12308
12309         * libs/gst/controller/gst-controller.c:
12310         (gst_controlled_property_set_interpolation_mode),
12311         (gst_controlled_property_new):
12312          fixed boolean again
12313
12314 2005-08-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12315
12316         * docs/faq/gst-uninstalled:
12317           add -good
12318         * gst/gstevent.c:
12319         * gst/gstevent.h:
12320           remove wrong docs
12321         * gst/gstutils.c: (gst_element_link_filtered):
12322         * gst/gstutils.h:
12323           add gst_element_link_filtered
12324
12325 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
12326
12327         * docs/gst/gstreamer-docs.sgml:
12328         * docs/gst/gstreamer-sections.txt:
12329         * docs/gst/tmpl/.cvsignore:
12330         * docs/gst/tmpl/gsterror.sgml:
12331         * docs/gst/tmpl/gstfilter.sgml:
12332         * docs/gst/tmpl/gsturihandler.sgml:
12333         * docs/gst/tmpl/gsturitype.sgml:
12334         * docs/gst/tmpl/gstutils.sgml:
12335         * docs/gst/tmpl/gstxml.sgml:
12336         * gst/gsterror.c:
12337         * gst/gsterror.h:
12338         * gst/gstfilter.c:
12339         * gst/gsturi.c:
12340         * gst/gsturitype.c:
12341         * gst/gstutils.c:
12342         * gst/gstxml.c:
12343           inlined more docs, fixed double id-ref
12344
12345 2005-08-31  Wim Taymans  <wim@fluendo.com>
12346
12347         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12348         (gst_base_transform_handle_buffer):
12349         Passthrough elements don't need the caps as they don't care.
12350
12351 2005-08-31  Wim Taymans  <wim@fluendo.com>
12352
12353         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12354         (gst_base_transform_handle_buffer), (gst_base_transform_chain):
12355         Don't leak refcounts on buffers.
12356
12357 2005-08-31  Wim Taymans  <wim@fluendo.com>
12358
12359         * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
12360         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
12361         (gst_base_transform_chain), (gst_base_transform_change_state):
12362         * gst/base/gstbasetransform.h:
12363         Handle the case where we are not negotiated more gracefully.
12364
12365 2005-08-31  Tim-Philipp Müller  <tim at centricular dot net>
12366
12367         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
12368         (gst_file_src_map_region):
12369           Set READONLY flag on mmap'ed buffers, otherwise
12370           gst_buffer_make_writable() won't work properly (#314708).
12371
12372 2005-08-31  Wim Taymans  <wim@fluendo.com>
12373
12374         * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
12375         passthrough elements can even do inplace on non writable
12376         buffers (as they don't touch them).
12377
12378 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
12379
12380         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
12381         (gst_test_mono_source_set_property),
12382         (gst_test_mono_source_class_init), (GST_START_TEST),
12383         (gst_controller_suite):
12384           more tests (hehe I have the most)
12385         * gst/gstbus.c:
12386           describe popping messages whenusing mulltiple sources
12387         * libs/gst/controller/gst-controller.c:
12388         (gst_controlled_property_set_interpolation_mode),
12389         (gst_controlled_property_new):
12390         * libs/gst/controller/gst-controller.h:
12391         * libs/gst/controller/gst-interpolation.c:
12392           implement boolean properties
12393
12394 2005-08-31  Wim Taymans  <wim@fluendo.com>
12395
12396         * gst/gstminiobject.c: (gst_mini_object_ref):
12397         Cannot assert that the refcount has to be positive
12398         since a disposed object can be resurrected.
12399
12400 2005-08-31  Wim Taymans  <wim@fluendo.com>
12401
12402         * gst/gstpad.c: (gst_pad_init):
12403         Revert change, need to first fix badly behaving 
12404         apps.
12405
12406 2005-08-30  Wim Taymans  <wim@fluendo.com>
12407
12408         * check/elements/fakesrc.c: (setup_fakesrc):
12409         * check/elements/identity.c: (setup_identity):
12410         Activate pads before using them.
12411
12412 2005-08-30  Wim Taymans  <wim@fluendo.com>
12413
12414         * gst/base/gstadapter.c: (gst_adapter_flush):
12415         Flushing out 0 bytes is ok for this function.
12416
12417         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12418         no newsegment gives a warning and sets the start/stop to 
12419         invalid.
12420
12421         * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
12422         (gst_base_transform_set_passthrough):
12423         Some debug info.
12424
12425         * gst/gstminiobject.c: (gst_mini_object_ref):
12426         Check refcount here too.
12427
12428         * gst/gstpad.c: (gst_pad_init):
12429         Pads are initially flushing and refusing data.
12430
12431         * gst/gstutils.c: (gst_element_link_pads_filtered):
12432         When adding a capsfilter element make sure it has the
12433         same state as the parent bin.
12434
12435 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
12436
12437         * docs/gst/tmpl/.cvsignore:
12438         * docs/gst/tmpl/gstformat.sgml:
12439         * docs/gst/tmpl/gstversion.sgml:
12440         * gst/gstbus.h:
12441         * gst/gstformat.c:
12442         * gst/gstformat.h:
12443         * gst/gstversion.h.in:
12444           more docs and two more inlined
12445
12446 2005-08-30  Wim Taymans  <wim@fluendo.com>
12447
12448         * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
12449         Don't sync to clock.
12450
12451 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
12452
12453         * docs/gst/gstreamer-sections.txt:
12454           ultral33t func10ns deserve to appear in the docs actually
12455         * docs/gst/tmpl/.cvsignore:
12456         * docs/gst/tmpl/gstcompat.sgml:
12457         * docs/gst/tmpl/gstconfig.sgml:
12458         * gst/check/gstcheck.c:
12459         * gst/gstcompat.h:
12460         * gst/gstconfig.h.in:
12461           inlined more docs
12462
12463 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
12464
12465         * docs/gst/tmpl/.cvsignore:
12466         * docs/gst/tmpl/gstquery.sgml:
12467         * docs/gst/tmpl/gstutils.sgml:
12468         * gst/gstquery.c:
12469         * gst/gstquery.h:
12470           inlined and extended docs
12471
12472 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
12473
12474         * check/gst-libs/controller.c: (GST_START_TEST),
12475         (gst_controller_suite):
12476           more tests
12477         * docs/gst/tmpl/gstutils.sgml:
12478         * docs/libs/gstreamer-libs-sections.txt:
12479         * docs/libs/tmpl/gstdataprotocol.sgml:
12480           include path fixes
12481         * examples/controller/audio-example.c: (main):
12482           controller example works now
12483         * gst/gstclock.h:
12484           doc fixes
12485         * tools/gst-inspect.c: (print_element_properties_info):
12486           show param spec flags
12487
12488 2005-08-29  Andy Wingo  <wingo@pobox.com>
12489
12490         * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
12491
12492 2005-08-28  Andy Wingo  <wingo@pobox.com>
12493
12494         * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
12495         as having two arguments instead of just one. Allows superclasses
12496         to access information on subclasses -- see the terrible for() loop
12497         in gtype.c:g_type_create_instance for the reason why. All callers
12498         changed.
12499
12500 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
12501
12502         * docs/design/part-messages.txt:
12503           update info
12504         * docs/gst/tmpl/.cvsignore:
12505         * docs/gst/tmpl/gstcaps.sgml:
12506         * docs/gst/tmpl/gstclock.sgml:
12507         * gst/gstbus.c:
12508         * gst/gstcaps.c:
12509         * gst/gstcaps.h:
12510         * gst/gstclock.c:
12511         * gst/gstclock.h:
12512         * gst/gstmessage.c:
12513           added descriptions for bus and message
12514           inline caps and clock docs
12515
12516 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
12517
12518         * gst/gstmessage.c:
12519         * gst/gstmessage.h:
12520           doc fixes
12521
12522 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
12523
12524         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
12525           fix div-by-zero
12526
12527 2005-08-26  Andy Wingo  <wingo@pobox.com>
12528
12529         * check/pipelines/simple_launch_lines.c (run_pipeline): Check
12530         element_set_state's return val.
12531         (test_2_elements): Add test that's been disabled for months.
12532
12533         * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
12534         can-activate-pull properties.
12535
12536         * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
12537         can-activate-pull properties. Implement is_seekable so fakesrc can
12538         operate in pull mode.
12539
12540         * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
12541         properties.
12542         (gst_base_sink_activate, gst_base_sink_activate_pull)
12543         (gst_base_sink_activate_push): Make activation mode choosing work.
12544         Cleanups.
12545         (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
12546         is right. Make pull mode work. Post an eos before pausing in pull
12547         mode.
12548         (gst_base_sink_change_state): Pay attention to the core's
12549         change_state() return val.
12550         
12551         * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
12552         has-getrange properties. Cleanups.
12553         
12554         * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
12555         has_getrange and replace with can_activate_pull and
12556         can_activate_push.
12557
12558         * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
12559         locking comments. Remove has_loop, has_chain and replace with
12560         can_activate_pull and can_activate_push.
12561
12562 2005-08-26  Jan Schmidt  <thaytan@mad.scientist.com>
12563
12564         * configure.ac:
12565         * examples/Makefile.am:
12566         * examples/metadata/Makefile.am:
12567         * examples/metadata/read-metadata.c: (message_loop),
12568         (have_pad_handler), (make_pipeline), (print_tag), (main):
12569           Add metadata reading example that loops over a list of filenames,
12570           dumping any tags found.
12571
12572         * gst/gstbus.c: (gst_bus_dispose):
12573         * gst/gstelement.c: (gst_element_dispose):
12574           Release a few potentially-held references in dispose.
12575
12576 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
12577
12578         * docs/gst/tmpl/gstminiobject.sgml:
12579           do *not* add tmpl/*.sgml files to CVS!
12580
12581 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
12582
12583         * libs/gst/bytestream/.cvsignore:
12584         * libs/gst/bytestream/Makefile.am:
12585         * libs/gst/bytestream/adapter.c:
12586         * libs/gst/bytestream/adapter.h:
12587         * libs/gst/bytestream/bytestream.c:
12588         * libs/gst/bytestream/bytestream.h:
12589         * libs/gst/bytestream/filepad.c:
12590         * libs/gst/bytestream/filepad.h:
12591           removing obsolete files
12592
12593 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
12594
12595         * docs/gst/gstreamer-docs.sgml:
12596         * docs/libs/gstreamer-libs-docs.sgml:
12597           disabed additional index entries again, as this makes docs-gen just
12598           slow and they aren't useful yet
12599         * docs/libs/gstreamer-libs-sections.txt:
12600           little -section.txt cleanup for libs
12601
12602 2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12603
12604         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12605         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
12606           fix up some debugging
12607         (gst_base_transform_get_unit_size),
12608         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
12609         (gst_base_transform_handle_buffer):
12610         * gst/base/gstbasetransform.h:
12611           handle and store timed NEWSEGMENT events so that subclasses that
12612           calculate time by counting samples have a segment_start time they
12613           need to add to their timestamps - see audioresample
12614
12615 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
12616
12617         * gst/gstbin.h:
12618           removed ';' from the end of macro defs
12619         * docs/gst/gstreamer-docs.sgml:
12620         * docs/gst/gstreamer-sections.txt:
12621         * docs/gst/tmpl/.cvsignore:
12622         * gst/gstbus.h:
12623         * gst/gstelement.c: (gst_element_class_init),
12624         (gst_element_set_state), (activate_pads),
12625         (gst_element_save_thyself):
12626         * gst/gstevent.c: (gst_event_new_newsegment):
12627         * gst/gstevent.h:
12628         * gst/gstiterator.c:
12629         * gst/gstiterator.h:
12630         * gst/gstpad.c:
12631         * gst/gstprobe.h:
12632         * gst/gstutils.c: (gst_pad_query_convert):
12633         * gst/gstutils.h:
12634           fixed parameter name mismatches between source, header and docs
12635           added some more docs, resolved the last batch of unused elements in
12636           docs (now someone needs to doc them)
12637
12638 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12639
12640         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
12641         * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
12642           don't walk through the plugins backwards.  Where is all this
12643           reversed logic coming from ?
12644
12645 2005-08-25  Wim Taymans  <wim@fluendo.com>
12646
12647         * gst/base/gstbasetransform.c: (gst_base_transform_init),
12648         (gst_base_transform_transform_size),
12649         (gst_base_transform_configure_caps),
12650         (gst_base_transform_get_unit_size),
12651         (gst_base_transform_buffer_alloc),
12652         (gst_base_transform_change_state):
12653         * gst/base/gstbasetransform.h:
12654         Cache caps unit_size.
12655         Make sure we cannot negotiate up and downstream at the
12656         same time.
12657
12658 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12659
12660         * gst/gst.c: (init_pre), (init_post):
12661           register the installed plugin path after the env var
12662         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
12663         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
12664           don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
12665           directories, so the tests can prefer uninstalled over installed
12666
12667 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12668
12669         * gst/base/gstbasetransform.h:
12670           comment
12671         * gst/gstpad.c:
12672           add to docs
12673
12674 2005-08-25  Wim Taymans  <wim@fluendo.com>
12675
12676         * gst/gstbin.c: (bin_bus_handler):
12677         Be a bit more conservative about the posted message.
12678         
12679         * gst/gstbus.c: (gst_bus_post):
12680         Some cleanups, warn wrong return values.
12681
12682 2005-08-25  Jan Schmidt  <thaytan@mad.scientist.com>
12683
12684         * check/gst/gstbin.c: (GST_START_TEST):
12685         * gst/gstbin.c: (bin_bus_handler):
12686         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
12687         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
12688         (gst_message_new_warning), (gst_message_new_tag),
12689         (gst_message_new_state_changed), (gst_message_new_segment_start),
12690         (gst_message_new_segment_done), (gst_message_new_custom):
12691         * gst/gstmessage.h:
12692         * tools/gst-launch.c: (event_loop):
12693         * tools/gst-md5sum.c: (event_loop):
12694           Revert unpopular change for GST_MESSAGE_SRC to GObject.
12695
12696 2005-08-25  Wim Taymans  <wim@fluendo.com>
12697
12698         * check/generic/states.c: (GST_START_TEST):
12699         Cleanup can be done at the end.
12700
12701         * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
12702         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
12703         (gst_task_get_state), (gst_task_start), (gst_task_pause):
12704         Oh boy.. Thanks for finding this, Thomas. 
12705
12706 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
12707
12708         * docs/gst/gstreamer.types:
12709           added missing types
12710
12711 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
12712
12713         * docs/gst/gstreamer-docs.sgml:
12714         * docs/gst/gstreamer-sections.txt:
12715         * docs/gst/tmpl/.cvsignore:
12716         * gst/gstbin.c:
12717         * gst/gstiterator.c:
12718         * gst/gstutils.c:
12719         * gst/registries/gstxmlregistry.h:
12720           added missing classes and symbols (123 more to go)
12721           removed removed symbols from section file
12722           fixed many doc-comments
12723
12724 2005-08-24  Wim Taymans  <wim@fluendo.com>
12725
12726         * check/generic/states.c: (GST_START_TEST):
12727         Make sure all tasks are stopped.
12728
12729         * check/gst/gstbin.c: (GST_START_TEST):
12730         Unref after usage for proper valgrinding.
12731
12732         * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
12733         Really wait for the task to stop before destroying the
12734         mutex.
12735
12736         * gst/gstqueue.c: (gst_queue_sink_activate_push),
12737         (gst_queue_src_activate_push):
12738         Small cleanups. Don't stop the task when we did not start
12739         it.
12740
12741         * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
12742         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
12743         (gst_task_get_state), (gst_task_start), (gst_task_pause),
12744         (gst_task_join):
12745         * gst/gsttask.h:
12746         Protect the stream lock with the object lock.
12747         Disallow setting the stream lock when running.
12748         Add cleanup_all to wait for the threadpool to finish.
12749         Remove code to autoallocate a mutex if none was provided.
12750         Add _join() to wait for a task to stop.
12751         Protect the thread pool with a global lock.
12752
12753 2005-08-24  Wim Taymans  <wim@fluendo.com>
12754
12755         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12756         (gst_base_sink_get_times), (gst_base_sink_do_sync),
12757         (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
12758         * gst/base/gstbasesink.h:
12759         Handle newsegment events correctly.
12760         Drop buffers out of the segment range.
12761
12762 2005-08-22  Andy Wingo  <wingo@pobox.com>
12763
12764         * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
12765         macro, implements an interface and gstimplementsinterface for a
12766         new type.
12767
12768 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12769
12770         * check/Makefile.am:
12771         * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
12772           add a test that does a bunch of state changes on elements
12773           needs some fixing for valgrind
12774         * check/states/sinks.c: (gst_object_suite):
12775           whitespace
12776         * gst/gstcaps.h:
12777           add prototype for gst_caps_is_equal_fixed
12778         * gst/gstplugin.c:
12779         * gst/gstregistrypool.c:
12780           doc fixes
12781
12782 2005-08-24  Andy Wingo  <wingo@pobox.com>
12783
12784         * gst/gstquery.c (gst_query_new_convert): Spew if we try to
12785         convert a negative value. Doesn't make much sense. Mostly this is
12786         here to force callers to ensure -1 maps to -1.
12787
12788 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
12789
12790         * docs/pwg/advanced-types.xml:
12791           Well done to Michael for catching my deliberate introduction
12792           of this spelling mistake. 
12793         * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
12794         * gst/gstelement.h:
12795           Add GST_ELEMENT_UNPARENTING to prevent races so that we can
12796           unlink pads before removing the element from the bin.
12797
12798 2005-08-24  Andy Wingo  <wingo@pobox.com>
12799
12800         * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
12801         the same thing as GST_DEBUG=*:4.
12802         (parse_debug_level, parse_debug_category): New helper parsers.
12803
12804 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12805
12806         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12807         (gst_base_transform_transform_size), (gst_base_transform_getcaps),
12808         (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
12809         (gst_base_transform_buffer_alloc),
12810         (gst_base_transform_handle_buffer):
12811           use gboolean return values and pointers to size so we can use the
12812           full GST_BUFFER_SIZE range (guint) for buffer sizes
12813           use GstPadDirection for transform_caps
12814         * gst/base/gstbasetransform.h:
12815           rename get_size to get_unit_size since that's what it is
12816         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
12817           use GstPadDirection for transform_caps
12818         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12819         * gst/gstutils.h:
12820           cleanup and debugging
12821
12822 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
12823
12824         * gst/gstelement.c: (gst_element_class_init),
12825         (gst_element_set_state), (activate_pads),
12826         (gst_element_save_thyself):
12827         * tools/gst-compprep.c: (main):
12828         * tools/gst-inspect.c: (print_element_properties_info):
12829         * tools/gst-xmlinspect.c: (print_element_properties):
12830           Fixed long standing mem-leak
12831
12832 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
12833
12834         * check/gst/gstbin.c: (GST_START_TEST):
12835         * gst/gstbin.c: (bin_bus_handler):
12836         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
12837         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
12838         (gst_message_new_warning), (gst_message_new_tag),
12839         (gst_message_new_state_changed), (gst_message_new_segment_start),
12840         (gst_message_new_segment_done), (gst_message_new_custom):
12841         * gst/gstmessage.h:
12842         * tools/gst-launch.c: (event_loop):
12843         * tools/gst-md5sum.c: (event_loop):
12844           Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
12845           that applications can sensibly post custom messages with references
12846           to their own objects.
12847
12848 2005-08-24  Andy Wingo  <wingo@pobox.com>
12849
12850         * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
12851         already.
12852
12853 2005-08-24  Wim Taymans  <wim@fluendo.com>
12854
12855         * gst/base/gstbasetransform.c: (gst_base_transform_init),
12856         (gst_base_transform_transform_caps),
12857         (gst_base_transform_transform_size),
12858         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
12859         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
12860         (gst_base_transform_handle_buffer):
12861         * gst/base/gstbasetransform.h:
12862         Many fixes and new features added by Thomas. Can now also do
12863         transforms with variable sizes and a custom fixate_caps function.
12864
12865 2005-08-24  Wim Taymans  <wim@fluendo.com>
12866
12867         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12868         Some debugging.
12869
12870         * gst/gstclock.h:
12871         Cast to ClockTime before formatting to time.
12872
12873         * gst/gstutils.h:
12874         Cleanups.
12875
12876 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
12877
12878         * check/gst-libs/controller.c: (GST_START_TEST),
12879         (gst_controller_suite):
12880         * docs/gst/tmpl/gstcaps.sgml:
12881         * docs/gst/tmpl/gstghostpad.sgml:
12882         * docs/gst/tmpl/gstquery.sgml:
12883         * docs/gst/tmpl/gstutils.sgml:
12884         * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
12885         (gst_object_sink_values), (gst_object_get_value_arrays),
12886         (gst_object_get_value_array):
12887           gracefully handle helper method calls to objects that are not beeing
12888           controlled, added test case for that          
12889
12890 2005-08-23  Wim Taymans  <wim@fluendo.com>
12891
12892         * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
12893         (gst_event_new_newsegment), (gst_event_parse_newsegment),
12894         (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
12895         (gst_event_parse_qos), (gst_event_new_seek),
12896         (gst_event_parse_seek):
12897         * gst/gstevent.h:
12898         Some more debugging output and doc cleanups.
12899
12900         * gst/gstqueue.c: (gst_queue_handle_sink_event):
12901         Fix possible deadlock.
12902
12903 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
12904
12905         * docs/gst/gstreamer-docs.sgml:
12906         * docs/gst/gstreamer-sections.txt:
12907         * docs/gst/gstreamer.types:
12908         * docs/gst/tmpl/.cvsignore:
12909         * gst/gstbin.h:
12910         * gst/gstbus.c:
12911         * gst/gstelement.c:
12912         * gst/gstevent.h:
12913           added 100 symbols from gstreamer-unused.txt to the right sections
12914           fixed more broken comments
12915           added GstBus to docs
12916
12917 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
12918
12919         * docs/gst/gstreamer-sections.txt:
12920         * docs/gst/tmpl/.cvsignore:
12921         * docs/gst/tmpl/gstbin.sgml:
12922         * docs/gst/tmpl/gstbuffer.sgml:
12923         * gst/base/gstbasesrc.c:
12924         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
12925         * gst/gstbuffer.c:
12926         * gst/gstbuffer.h:
12927         * tools/gst-launch.1.in:
12928           inlined more doc comments, added missing comments and fixed comments
12929           fixed typos
12930
12931 2005-08-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12932
12933         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12934           some debugging
12935         * gst/gstcaps.h:
12936           whitespace fixes
12937         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
12938           more debugging
12939         * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
12940         * gst/gststructure.h:
12941           add a fixate function for booleans; add a FIXME that these func
12942           names should probably be gst_structure_fixate_*
12943
12944 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
12945
12946         * docs/gst/gstreamer-docs.sgml:
12947         * docs/gst/gstreamer-sections.txt:
12948         * gst/Makefile.am:
12949         * gst/gstbin.c: (gst_bin_get_type),
12950         (gst_bin_child_proxy_get_child_by_index),
12951         (gst_bin_child_proxy_get_children_count),
12952         (gst_bin_child_proxy_init):
12953         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
12954         (gst_child_proxy_get_child_by_index),
12955         (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
12956         (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
12957         (gst_child_proxy_get), (gst_child_proxy_set_property),
12958         (gst_child_proxy_set_valist), (gst_child_proxy_set),
12959         (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
12960         (gst_child_proxy_base_init), (gst_child_proxy_get_type):
12961         * gst/gstchildproxy.h:
12962         * gst/parse/grammar.y:
12963         * tools/gst-inspect.c: (print_interfaces),
12964         (print_element_properties_info), (print_element_info):
12965           ported gstchildproxy over from 0.8
12966           ported gst-inspect fixes and enhancements over from 0.8
12967
12968 2005-08-22  Wim Taymans  <wim@fluendo.com>
12969
12970         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12971         (gst_base_transform_handle_buffer):
12972         Also call the transform function if we have ANY caps.
12973
12974         * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
12975         Fix debug info.
12976
12977 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
12978
12979         * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
12980           Don't pretend to handle seek events if the source is not seekable
12981
12982 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
12983
12984         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12985           Remove extra parameter to debug output
12986
12987         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12988         (gst_base_src_do_seek), (gst_base_src_activate_push):
12989           Fix seek event handling.
12990
12991         * gst/gstpipeline.c: (gst_pipeline_change_state):
12992         * gst/gstqueue.c: (gst_queue_handle_sink_event),
12993         (gst_queue_src_activate_push):
12994           Don't start the src pad task on FLUSH_STOP if the pad
12995           isn't linked.
12996           Debug changes.
12997
12998 2005-08-22  Wim Taymans  <wim@fluendo.com>
12999
13000         * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
13001         Added check for gst_static_caps_get() refcounting.
13002
13003 2005-08-22  Wim Taymans  <wim@fluendo.com>
13004
13005         * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
13006         Make _static_caps_get() refcounting sane.
13007         
13008         * gst/gstelement.c: (gst_element_set_state):
13009         Add g_return_val_if_fail() to protect against segfaults.
13010
13011 2005-08-22  Stefan Kost  <ensonic@users.sf.net>
13012
13013         * docs/gst/tmpl/gstevent.sgml:
13014         * gst/gstevent.c:
13015         * gst/gstevent.h:
13016           inlined remaining docs, added missing doc comments
13017
13018 2005-08-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13019
13020         * check/gst/gstbin.c: (GST_START_TEST):
13021           since we don't know when preroll is done, use refcount range
13022           check for the sink
13023         * gst/check/gstcheck.h:
13024           add macro for checking refcount range
13025
13026 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
13027
13028         * check/Makefile.am:
13029           clean up environment for when registry gets built versus
13030           when actual tests are run; valgrind seems to not report
13031           leaks if GST_PLUGIN_PATH is set to some specific values
13032         * check/gst/gstbin.c: (GST_START_TEST):
13033           add more refcounting checks; maybe this exposes a
13034           preroll lock bug ?
13035         * common/check.mak:
13036         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13037         * gst/check/gstcheck.h:
13038         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
13039         (gst_bin_change_state):
13040         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
13041           add/fix debugging/whitespace
13042
13043 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
13044
13045         * check/gst/gstevent.c: (event_probe), (test_event),
13046         (GST_START_TEST):
13047          Er, don't call gst_bin_watch_for_state_change you idiot.
13048
13049 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
13050
13051         * check/Makefile.am:
13052           Use CHECK_CFLAGS and CHECK_LIBS
13053         * check/gst/gstevent.c: (event_probe), (test_event),
13054         (GST_START_TEST):
13055           Don't leak events.
13056         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
13057         (gst_base_src_start), (gst_base_src_stop),
13058         (gst_base_src_activate_push), (gst_base_src_activate_pull),
13059         (gst_base_src_change_state):
13060           Sprinkle gst_base_src_stop liberally around error paths to fix
13061           problems reusing a source after failed state changes.
13062         * gst/base/gsttypefindhelper.c: (helper_find_peek),
13063         (helper_find_suggest), (gst_type_find_helper):
13064           Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
13065         * gst/gstevent.h:
13066         * docs/gst/tmpl/gstevent.sgml:
13067           Migrate part of the docs from the SGML file. Wait for ensonic to
13068           tell me how I did it wrong ;)
13069         * tools/gst-typefind.c: (main):
13070           Extra robustness to state changes between files.
13071
13072 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
13073
13074         * check/Makefile.am:
13075           don't valgrind the controller test - it's leaking - Stefan, HELP
13076         * gst/check/gstcheck.c: (gst_check_message_error),
13077         (gst_check_chain_func), (gst_check_setup_element),
13078         (gst_check_teardown_element), (gst_check_setup_src_pad),
13079         (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
13080         (gst_check_teardown_sink_pad):
13081         * gst/check/gstcheck.h:
13082           add a bunch of methods to set up elements, and src and sink pads
13083         * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
13084         * check/elements/identity.c: (setup_identity), (cleanup_identity),
13085         (GST_START_TEST):
13086           use them
13087         * gst/gstmessage.c:
13088         * gst/gsttag.h:
13089           whitespace/doc fixes
13090
13091 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13092
13093         * gst/gstelement.h:
13094           make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
13095           be handled by the application and not always printed as well
13096
13097 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13098
13099         * check/Makefile.am:
13100           set GST_TOOLS_DIR
13101         * gst/check/gstcheck.c: (gst_check_message_error):
13102         * gst/check/gstcheck.h:
13103           add a fail_unless_equals_int
13104           add fail_unless for error messages
13105
13106 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13107
13108         * check/Makefile.am:
13109         * check/gst.supp:
13110         * common/Makefile.am:
13111         * common/check.mak:
13112         * common/gst.supp:
13113           factor out some of the common stuff so we can use it
13114
13115 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13116
13117         * check/Makefile.am:
13118         * check/gst/gstiterator.c: (GST_START_TEST):
13119         * check/gst/gstsystemclock.c: (GST_START_TEST),
13120         (gst_systemclock_suite):
13121         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
13122         * gst/gstclock.c:
13123           valgrind more tests
13124
13125 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13126
13127         * check/elements/.cvsignore:
13128         * check/elements/gstfakesrc.c:
13129           rename to name of element
13130         * check/elements/identity.c: (chain_func), (event_func),
13131         (setup_identity), (cleanup_identity), (GST_START_TEST),
13132         (identity_suite), (main):
13133           add a test for identity
13134         * check/Makefile.am:
13135         * pkgconfig/Makefile.am:
13136         * pkgconfig/gstreamer-check.pc.in:
13137         * pkgconfig/gstreamer-check-uninstalled.pc.in:
13138         * gst/check:
13139         * gst/Makefile.am:
13140         * configure.ac:
13141           move the check stuff to a library that gets installed
13142         * check/gst-libs/controller.c: (GST_START_TEST):
13143         * check/gst-libs/gdp.c:
13144         * check/gst/gst.c: (GST_START_TEST):
13145         * check/gst/gstbin.c:
13146         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13147         * check/gst/gstbus.c:
13148         * check/gst/gstcaps.c: (GST_START_TEST):
13149         * check/gst/gstelement.c:
13150         * check/gst/gstghostpad.c:
13151         * check/gst/gstiterator.c:
13152         * check/gst/gstmessage.c:
13153         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
13154         * check/gst/gstobject.c:
13155         * check/gst/gstpad.c: (GST_START_TEST):
13156         * check/gst/gststructure.c: (GST_START_TEST):
13157         * check/gst/gstsystemclock.c: (GST_START_TEST),
13158         (gst_systemclock_suite):
13159         * check/gst/gsttag.c: (gst_tag_suite):
13160         * check/gst/gstvalue.c:
13161         * check/pipelines/cleanup.c:
13162         * check/pipelines/simple_launch_lines.c:
13163         * check/states/sinks.c:
13164           change include statement
13165
13166         * docs/gst/gstreamer-sections.txt:
13167         * docs/gst/tmpl/gstpad.sgml:
13168           document more pad stuff
13169         * gst/gstminiobject.c: (gst_mini_object_ref),
13170         (gst_mini_object_unref):
13171           debug refcounting
13172
13173 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
13174
13175         * docs/gst/tmpl/gst.sgml:
13176         * gst/gst.c:
13177           eliminate another tmpl file, fix spelling in the long-description
13178
13179 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
13180
13181         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
13182         (test_event), (timediff), (gstevents_suite):
13183           Should fix build on 64-bit arch's
13184
13185 2005-08-18  Andy Wingo  <wingo@pobox.com>
13186
13187         Make sure that when a pipeline goes to PLAYING, that data has
13188         actually hit the sink.
13189
13190         * check/states/sinks.c (test_sink): A sink that doesn't get any
13191         data shouldn't return SUCCESS for going to either PLAYING or
13192         PAUSED. Test also the return values on the way back down.
13193
13194         * gst/gstelement.c (gst_element_set_state): When changing the
13195         state of an element currently changing state asynchronously, go to
13196         lost-state after commiting the pending state. Makes future calls
13197         to get_state continue to return ASYNC.
13198
13199         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
13200         ASYNC when going to PLAYING if we still don't have preroll, as can
13201         happen with live sources.
13202
13203 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
13204
13205         * docs/pwg/advanced-types.xml:
13206           Hack long paragraph into 2 chunks as a workaround for buggy
13207           jadetex version in sid and breezy that loops infinitely and
13208           eats all RAM.
13209
13210 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
13211
13212         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
13213         (test_event), (timediff), (gstevents_suite):
13214           Provide more error margin in clock measurements to allow for 
13215           g_get_current_time inaccuracies.
13216
13217 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
13218
13219         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
13220         (test_event), (timediff), (gstevents_suite):
13221            Fix error message output so I might be able to tell why the
13222            test works here but fails on the build farm.
13223
13224 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
13225
13226         * check/Makefile.am:
13227         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
13228         (test_event), (timediff), (gstevents_suite), (main):
13229           I wrote a test!
13230
13231         * docs/design/part-seeking.txt:
13232           Spelling correction
13233
13234         * docs/gst/tmpl/gstevent.sgml:
13235         * docs/gst/tmpl/gstfakesrc.sgml:
13236           Docs updates.
13237
13238         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13239           Treat a buffer-without-newsegment the same as a receiving 
13240           a newsegment not in time format, and disable syncing to the clock
13241           with a warning.
13242
13243         * gst/gstbus.c: (gst_bus_set_sync_handler):
13244           Assert if anyone tries to replace the existing sync_handler for bus, 
13245           as only the owner should be setting it.
13246
13247         * gst/gstevent.h:
13248           Have a fixed set of custom event enums with events identified by
13249           their structure name (as in 0.8), rather than a free-for-all
13250           allowing collisions between enum values from different plugins.
13251
13252         * gst/gstpad.c: (gst_pad_class_init):
13253           Docs change.
13254           
13255         * gst/gstqueue.c: (gst_queue_handle_sink_event):
13256           Handle out-of-band downstream events from the sending thread.
13257
13258 2005-08-17  Andy Wingo  <wingo@pobox.com>
13259
13260         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
13261         play-timeout==0 to mean no timeout at all. In that case, don't
13262         bother with a get_state or a warning, just return directly, even
13263         if it's ASYNC.
13264
13265         * gst/base/gstbasetransform.c: Debug changes.
13266
13267         * gst/gstutils.h:
13268         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
13269         ensure bins post state change messages. A bit of a hack but I can't
13270         think of a way to avoid it.
13271
13272         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
13273
13274 2005-08-16  Andy Wingo  <wingo@pobox.com>
13275
13276         * gst/base/gstadapter.h:
13277         * gst/base/gstadapter.c (gst_adapter_take): New function, like
13278         peek() but you own the data. Not terribly efficient atm.
13279
13280 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13281
13282         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
13283         (gst_element_found_tags):
13284         * gst/gstutils.h:
13285           Add two utility functions for tag handling.
13286
13287 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13288
13289         * docs/manual/advanced-dataaccess.xml:
13290         * docs/manual/basics-helloworld.xml:
13291           Fix docs to use _bin_add() before _link(), which fixes the examples
13292           with recent core versions (reported by Madhan Raj M
13293           <raj_madan@rediffmail.com>, #313199).
13294
13295 2005-08-16  Wim Taymans  <wim@fluendo.com>
13296
13297         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
13298         Added subtract checks.
13299
13300         * docs/design/part-events.txt:
13301         Some more docs about newsegment
13302
13303         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
13304         Fix FIXME
13305
13306         * gst/gstcaps.c: (gst_caps_to_string):
13307         Add comments, cleanups.
13308         
13309         * gst/gstelement.c: (gst_element_save_thyself):
13310         cleanups
13311         
13312         * gst/gstvalue.c: (gst_value_collect_int_range),
13313         (gst_string_unwrap), (gst_value_union_int_int_range),
13314         (gst_value_union_int_range_int_range),
13315         (gst_value_intersect_int_int_range),
13316         (gst_value_intersect_int_range_int_range),
13317         (gst_value_intersect_double_double_range),
13318         (gst_value_intersect_double_range_double_range),
13319         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
13320         (gst_value_subtract_int_range_int),
13321         (gst_value_subtract_double_range_double),
13322         (gst_value_subtract_double_range_double_range),
13323         (gst_value_subtract_from_list), (gst_value_subtract_list),
13324         (gst_value_can_compare), (gst_value_compare_fraction):
13325         Cleanups, add comments, remove unneeded asserts.
13326
13327 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
13328
13329         * tools/gst-launch.c: (event_loop):
13330           don't convert NULL structures to strings
13331
13332 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
13333
13334         * docs/gst/gstreamer-sections.txt:
13335           made some defines private
13336         * docs/gst/tmpl/gstconfig.sgml:
13337         * docs/gst/tmpl/gstqueue.sgml:
13338         * docs/gst/tmpl/gsttaglist.sgml:
13339         * docs/gst/tmpl/gsttypes.sgml:
13340         * docs/gst/tmpl/gstutils.sgml:
13341         * docs/pwg/appendix-porting.xml:
13342         * gst/base/gstbasesink.h:
13343         * gst/base/gstbasesrc.c:
13344         * gst/base/gstbasesrc.h:
13345         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
13346         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
13347         * gst/gstelement.c: (gst_element_class_init):
13348         * gst/gstpad.c: (gst_pad_class_init):
13349         * gst/gstqueue.c: (gst_queue_class_init):
13350         * gst/gstxml.c: (gst_xml_class_init):
13351           documented all undocumented signal inline
13352         * libs/gst/controller/gst-controller.h:
13353           added padding
13354
13355 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13356
13357         * docs/pwg/appendix-porting.xml:
13358           Document _set_link_function -> _set_setcaps_function.
13359
13360 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
13361
13362         * check/Makefile.am:
13363           add a .check target for running the check
13364         * check/gst-libs/controller.c: (GST_START_TEST):
13365           cosmetic fixups
13366         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13367           complete checks for gstbuffer; would be nice if I could get the
13368           gcov stuff to work so I can see if I actually completed gstbuffer.c
13369         * check/gstcheck.h:
13370           add ASSERT_BUFFER_REFCOUNT
13371
13372 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
13373
13374         * docs/gst/gstreamer-sections.txt:
13375         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13376         * gst/gsttag.h:
13377           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
13378           spew out a warning if a tag that is already registered
13379           is re-registered, unless it is re-registered with a 
13380           different type (#308438).
13381
13382 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
13383
13384         * docs/pwg/appendix-porting.xml:
13385         * docs/pwg/building-state.xml:
13386           Add some paragraphs about state changes in 0.9 to the PWG
13387           and the porting guide, in particular about the new meaning
13388           of GST_STATE_PAUSED and how to write state change functions
13389           with concurrent access by multiple threads in mind.
13390
13391 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
13392
13393         * docs/gst/gstreamer-docs.sgml:
13394         * docs/libs/gstreamer-libs-docs.sgml:
13395           added deprecation and since indexes
13396         * libs/gst/controller/gst-controller.c:
13397         * libs/gst/controller/gst-helper.c:
13398           added since tags
13399
13400
13401 2005-08-11  Wim Taymans  <wim@fluendo.com>
13402
13403         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
13404         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
13405         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
13406         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
13407         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
13408         (gst_ghost_pad_set_target):
13409         Actually implement (re)setting the target on a ghostpad
13410         as described in the docs.
13411
13412 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
13413
13414         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
13415           Check whether GST_DEBUG_NO_COLOR environment variable is
13416           set and disable coloured debug output if that is the case.
13417
13418 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
13419
13420         * gst/base/gsttypefindhelper.c: (helper_find_peek),
13421         (gst_type_find_helper):
13422           The memory returned by gst_type_find_peek() needs to
13423           stay valid until the end of a typefind function, and
13424           typefind functions may keep results from different 
13425           offsets around, so we can't just unref the buffer from
13426           the previous _peek(), but have to save all buffers 
13427           returned by _peek() until typefinding is done and only
13428           free them then.
13429
13430 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
13431
13432         * docs/gst/gstreamer-sections.txt:
13433         * gst/gstutils.h:
13434           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
13435
13436 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13437
13438         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
13439           Fix a pretty good memleak.
13440
13441 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
13442
13443         * gst/gstiterator.h:
13444           Fix wrong include and 'make distcheck'.
13445
13446 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13447
13448         * gst/gstbin.c: (bin_bus_handler):
13449           Use gst_element_post_message() instead.
13450
13451 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
13452
13453         * gst/base/gstadapter.h:
13454         * gst/base/gstbasesink.h:
13455         * gst/base/gstbasesrc.h:
13456         * gst/base/gstbasetransform.h:
13457         * gst/base/gstcollectpads.h:
13458         * gst/base/gstpushsrc.h:
13459         * gst/gstiterator.h:
13460           Add padding to our base elements' class and instance structs and
13461           to GstIterator (you will need to rebuild all plugins and apps!)
13462
13463 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13464
13465         * gst/gstbin.c: (bin_bus_handler):
13466           Make default message forwarding from child->bus to bin->bus
13467           threadsafe and make it not emit warnings if the parent has no bus.
13468
13469 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13470
13471         * gst/gstelement.c: (activate_pads):
13472           On paused->ready, set pad->caps to NULL, as is the documented
13473           behaviour in this state change. Fixes playback of series of
13474           media files when visualization is enabled in Totem.
13475
13476 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13477
13478         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
13479           Allow NULL as filter-caps (which means "any").
13480
13481 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
13482
13483         * docs/libs/gstreamer-libs-sections.txt:
13484         * libs/gst/controller/gst-controller.c:
13485         * libs/gst/controller/gst-controller.h:
13486         * libs/gst/controller/gst-helper.c:
13487           adding more entries to the docs and fix small doc-bugs
13488
13489 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
13490
13491         * docs/gst/gstreamer-docs.sgml:
13492         * docs/gst/gstreamer-sections.txt:
13493         * docs/gst/gstreamer.types:
13494         * docs/gst/tmpl/gstbasesink.sgml:
13495         * docs/gst/tmpl/gstbasesrc.sgml:
13496         * docs/gst/tmpl/gstbasetransform.sgml:
13497         * docs/gst/tmpl/gstfakesrc.sgml:
13498         * gst/base/gstcollectpads.c:
13499         * gst/base/gstcollectpads.h:
13500         * libs/gst/controller/gst-controller.c:
13501         * libs/gst/controller/gst-controller.h:
13502         * libs/gst/controller/gst-helper.c:
13503         * libs/gst/controller/gst-interpolation.c:
13504         * libs/gst/controller/lib.c:
13505           added long/short desc for controller docs
13506           added collectpads base class docs
13507           added correct includes to base-class docs
13508
13509 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
13510
13511         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
13512         (gst_test_mono_source_set_property),
13513         (gst_test_mono_source_class_init), (GST_START_TEST),
13514         (gst_controller_suite):
13515         * docs/gst/gstreamer-docs.sgml:
13516         * docs/gst/gstreamer-sections.txt:
13517         * docs/gst/gstreamer.types:
13518         * docs/libs/gstreamer-libs-docs.sgml:
13519         * docs/libs/gstreamer-libs-sections.txt:
13520         * gst/base/gstadapter.c:
13521         * libs/gst/controller/gst-controller.c:
13522         (gst_controlled_property_new), (gst_controlled_property_free),
13523         (gst_controller_new_valist),
13524         (gst_controller_remove_properties_valist),
13525         (gst_controller_sink_values), (_gst_controller_finalize):
13526         * libs/gst/controller/gst-controller.h:
13527         * libs/gst/controller/gst-helper.c:
13528         (gst_object_control_properties), (gst_object_uncontrol_properties),
13529         (gst_object_get_controller), (gst_object_set_controller),
13530         (gst_object_sink_values), (gst_object_get_value_arrays),
13531         (gst_object_get_value_array):
13532           more tests (and fixes) for the controller
13533           more docs for the controller
13534           integrated companies docs for the adapter 
13535
13536 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
13537
13538         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
13539         (GST_START_TEST), (fakesrc_suite):
13540           add tests for sizetype
13541
13542 2005-08-04  Andy Wingo  <wingo@pobox.com>
13543
13544         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
13545         fixes buffer_alloc proxying among other things.
13546
13547         * gst/base/gstbasetransform.c:
13548         * gst/base/gstbasetransform.h:
13549         Revert patch to gstbasetransform from 7-28 removing
13550         delay_configure.
13551
13552         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
13553         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
13554         Semantics changed, should return not the size of the output buffer
13555         but the byte size of a buffer with a given caps.
13556
13557         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
13558         debug object.
13559         (gst_base_transform_configure_caps): Don't set out_size here: (in,
13560         out) are not the pad caps until setcaps finishes.
13561         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
13562         not-in-place case as well. Deal with changing from in-place to
13563         not-in-place within calling pad_alloc_buffer. Still a bit
13564         concerned about the overhead here...
13565
13566 2005-08-03  Andy Wingo  <wingo@pobox.com>
13567
13568         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
13569         fixating is an error.
13570
13571 2005-08-04  Edward Hervey  <edward@fluendo.com>
13572
13573         * gst/base/gstadapter.h: 
13574         Added gst_adapter_get_type() to the header
13575
13576 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
13577
13578         * check/Makefile.am:
13579         * check/gst-libs/controller.c:
13580         * libs/gst/controller/gst-controller.c:
13581         (gst_controller_new_valist):
13582           added check test suite for the controller
13583         * gst/base/gstpushsrc.c:
13584           fixed a doc typo
13585
13586 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
13587
13588         * docs/gst/Makefile.am:
13589         * docs/gst/gstreamer-docs.sgml:
13590         * docs/gst/gstreamer-sections.txt:
13591         * docs/gst/gstreamer.types:
13592         * docs/gst/tmpl/gstfakesrc.sgml:
13593         * gst/base/README:
13594         * gst/base/gstbasesink.c:
13595         * gst/base/gstbasesink.h:
13596         * gst/base/gstbasesrc.c:
13597         * gst/base/gstbasesrc.h:
13598         * gst/base/gstbasetransform.c:
13599         * gst/base/gstpushsrc.c:
13600         * gst/base/gstpushsrc.h:
13601           add short/long description docs to base classes
13602           add pushsrc to the docs
13603           remove consolidated doc fragments
13604
13605 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
13606
13607         * configure.ac:
13608         * docs/libs/Makefile.am:
13609         * docs/libs/gstreamer-libs-docs.sgml:
13610         * docs/libs/gstreamer-libs-sections.txt:
13611         * docs/libs/gstreamer-libs.types:
13612         * examples/Makefile.am:
13613         * examples/controller/.cvsignore:
13614         * examples/controller/Makefile.am:
13615         * examples/controller/audio-example.c: (main):
13616         * libs/gst/Makefile.am:
13617         * libs/gst/controller/.cvsignore:
13618         * libs/gst/controller/Makefile.am:
13619         * libs/gst/controller/gst-controller.c:
13620         (on_object_controlled_property_changed), (gst_timed_value_compare),
13621         (gst_timed_value_find),
13622         (gst_controlled_property_set_interpolation_mode),
13623         (gst_controlled_property_new), (gst_controlled_property_free),
13624         (gst_controller_find_controlled_property),
13625         (gst_controller_new_valist), (gst_controller_new),
13626         (gst_controller_remove_properties_valist),
13627         (gst_controller_remove_properties), (gst_controller_set),
13628         (gst_controller_set_from_list), (gst_controller_unset),
13629         (gst_controller_get), (gst_controller_get_all),
13630         (gst_controller_sink_values), (gst_controller_get_value_arrays),
13631         (gst_controller_get_value_array),
13632         (gst_controller_set_interpolation_mode),
13633         (_gst_controller_finalize), (_gst_controller_init),
13634         (_gst_controller_class_init), (gst_controller_get_type):
13635         * libs/gst/controller/gst-controller.h:
13636         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
13637         (g_object_uncontrol_properties), (g_object_get_controller),
13638         (g_object_set_controller), (g_object_sink_values),
13639         (g_object_get_value_arrays), (g_object_get_value_array):
13640         * libs/gst/controller/gst-interpolation.c:
13641         (gst_controlled_property_find_timed_value_node),
13642         (interpolate_none_get), (interpolate_trigger_get),
13643         (interpolate_trigger_get_value_array):
13644         * libs/gst/controller/lib.c: (gst_controller_init):
13645         * pkgconfig/Makefile.am:
13646         * pkgconfig/gstreamer-control-uninstalled.pc.in:
13647         * pkgconfig/gstreamer-control.pc.in:
13648         * testsuite/Makefile.am:
13649         * testsuite/controller/.cvsignore:
13650         * testsuite/controller/Makefile.am:
13651         * testsuite/controller/interpolator.c: (main):
13652           added controller code
13653           removed dparam pc files
13654
13655 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
13656         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
13657         (gst_collectpads_stop):
13658           Broadcast the condition when shutting down, to make sure we wake all
13659           threads up. Shut down pads on finalize, for safety.
13660
13661 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
13662         * gst/base/gstbasetransform.c: (gst_base_transform_init),
13663         (gst_base_transform_handle_buffer),
13664         (gst_base_transform_change_state):
13665           Handle PAUSED->READY->PAUSED transition after negotiation
13666           occurred already.
13667         * gst/gstmessage.c: (gst_message_init):
13668           Extra piece of debug for new messages.
13669
13670 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
13671
13672         * configure.ac:
13673         * docs/gst/tmpl/gstbasesrc.sgml:
13674         * docs/gst/tmpl/gstelement.sgml:
13675         * docs/gst/tmpl/gstevent.sgml:
13676         * docs/gst/tmpl/gstfakesrc.sgml:
13677         * docs/gst/tmpl/gstformat.sgml:
13678         * docs/gst/tmpl/gstghostpad.sgml:
13679         * docs/gst/tmpl/gstpad.sgml:
13680         * docs/gst/tmpl/gstquery.sgml:
13681         * docs/gst/tmpl/gststructure.sgml:
13682         * docs/gst/tmpl/gsttaglist.sgml:
13683         * docs/gst/tmpl/gstvalue.sgml:
13684         * docs/libs/gstreamer-libs-docs.sgml:
13685         * docs/libs/gstreamer-libs-sections.txt:
13686         * docs/libs/gstreamer-libs.types:
13687         * libs/gst/Makefile.am:
13688         * libs/gst/control/.cvsignore:
13689         * libs/gst/control/Makefile.am:
13690         * libs/gst/control/control.c:
13691         * libs/gst/control/control.h:
13692         * libs/gst/control/dparam.c:
13693         * libs/gst/control/dparam.h:
13694         * libs/gst/control/dparam_smooth.c:
13695         * libs/gst/control/dparam_smooth.h:
13696         * libs/gst/control/dparamcommon.h:
13697         * libs/gst/control/dparammanager.c:
13698         * libs/gst/control/dparammanager.h:
13699         * libs/gst/control/dplinearinterp.c:
13700         * libs/gst/control/dplinearinterp.h:
13701         * libs/gst/control/unitconvert.c:
13702         * libs/gst/control/unitconvert.h:
13703         * testsuite/Makefile.am:
13704         * testsuite/dynparams/.cvsignore:
13705         * testsuite/dynparams/Makefile.am:
13706         * testsuite/dynparams/dparamstest.c:
13707         * tools/Makefile.am:
13708         * tools/gst-inspect.c: (print_element_info), (main):
13709         * tools/gst-xmlinspect.c: (print_element_info), (main):
13710           deactivate and remove dparams (libgstcontrol)
13711
13712 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
13713
13714         * gst/elements/gsttypefindelement.c:
13715         (gst_type_find_element_have_type), (gst_type_find_element_init),
13716         (stop_typefinding), (gst_type_find_element_handle_event),
13717         (gst_type_find_element_chain), (gst_type_find_element_getrange):
13718         * gst/elements/gsttypefindelement.h:
13719           Set caps on all outgoing buffers, not just the first one.
13720
13721 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
13722
13723         * gst/elements/gsttypefindelement.c:
13724         (gst_type_find_element_have_type),
13725         (gst_type_find_element_check_set_buffer_caps),
13726         (gst_type_find_element_init), (stop_typefinding),
13727         (gst_type_find_element_handle_event),
13728         (gst_type_find_element_chain), (gst_type_find_element_getrange):
13729         * gst/elements/gsttypefindelement.h:
13730           Set caps on first outgoing buffer when we've found the type.
13731
13732 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
13733
13734         * docs/gst/gstreamer-docs.sgml:
13735         * docs/gst/gstreamer-sections.txt:
13736         * docs/gst/tmpl/gstscheduler.sgml:
13737         * docs/gst/tmpl/gstschedulerfactory.sgml:
13738           Remove some old cruft from docs.
13739
13740 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
13741
13742         * gst/gstpad.h:
13743           Fix inline docs for GstPadLinkReturn.
13744           
13745         * gst/gststructure.c: (gst_structure_has_name):
13746         * gst/gststructure.h:
13747         * docs/gst/gstreamer-sections.txt:
13748           New API: gst_structure_has_name().
13749
13750 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
13751
13752         * configure.ac:
13753           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
13754           and _LARGEFILE_SOURCE in config.h as required. Do not 
13755           export those flags in our .pc files any longer (#142209).
13756
13757           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
13758
13759         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
13760         (gst_file_sink_do_seek), (gst_file_sink_event),
13761         (gst_file_sink_get_current_offset), (gst_file_sink_render):
13762           Redo seek/tell calls with large file support in mind; add some
13763           debugging messages; add log message that tells us when large
13764           file support is unavailable or not enabled for some reason.
13765
13766         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
13767           Add log message that tells us when large file support 
13768           is unavailable or not enabled for some reason.
13769
13770 2005-07-29  Wim Taymans  <wim@fluendo.com>
13771
13772         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
13773         Added test for removing an element with ghostpad from a bin.
13774         Fixed test as current implementation does the right thing.
13775
13776         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
13777         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
13778         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
13779         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
13780         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
13781         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
13782         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
13783         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
13784         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
13785         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
13786         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
13787         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
13788         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
13789         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
13790         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
13791         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
13792         * gst/gstghostpad.h:
13793         Clean up ghostpads, remove properties for internal stuff.
13794         Make threadsafe.
13795         Fix refcounting.
13796         Prepare for switching targets, not all use cases work yet.
13797
13798 2005-07-29  Wim Taymans  <wim@fluendo.com>
13799
13800         * docs/design/part-gstghostpad.txt:
13801         Small update.
13802
13803         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
13804         (gst_bin_remove_func):
13805         Unlinking pads while holding the bin LOCK is not a good
13806         idea.
13807
13808         * gst/gstpad.c: (gst_pad_class_init),
13809         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
13810         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
13811         No prob setting template after creating the pad.
13812
13813 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
13814
13815         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
13816         (gst_bus_peek), (gst_bus_source_dispatch),
13817         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
13818         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
13819           gst_bus_poll may be called from other threads. Handle
13820           this nicely by not making poll_data disappear off the
13821           stack once gst_bus_poll returns.
13822           gst_bus_peek now increments the refcount on the returned
13823           message.
13824
13825 2005-07-29  Wim Taymans  <wim@fluendo.com>
13826
13827         * docs/design/part-gstghostpad.txt:
13828         Overview of current GhostPad datastructures and use
13829         cases for changing the target.
13830
13831 2005-07-28  Wim Taymans  <wim@fluendo.com>
13832
13833         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
13834         Added checks for hierarchy consistency whan adding linked
13835         elements to bins.
13836
13837         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
13838         Added check to test element scheduling without bin/pipeline.
13839
13840         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
13841         First add elements to bin, then link.
13842         
13843         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
13844         (gst_bin_remove_func):
13845         Unlink pads from elements added/removed from bin to maintain
13846         hierarchy consistency.
13847
13848 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13849
13850         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
13851         (gst_base_transform_handle_buffer):
13852         * gst/base/gstbasetransform.h:
13853           Remove broken delay_configure (fixes renegotiation of software
13854           scaling pipelines); remove some leftover printf()s.
13855
13856 2005-07-28  Wim Taymans  <wim@fluendo.com>
13857
13858         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
13859         Added some more tests for wrong hierarchy
13860
13861         * docs/design/part-overview.txt:
13862         Some updates.
13863
13864         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
13865         Cleanups.
13866
13867         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
13868         (gst_element_dispose):
13869         Some more cleanups.
13870
13871         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
13872         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
13873         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13874         (gst_pad_set_caps), (gst_pad_send_event):
13875         Check for correct hierarchy when linking pads. Moving to
13876         strict requirement for ghostpads when linking elements in
13877         different bins.
13878
13879         * gst/gstpad.h:
13880         Clean ups. Added WRONG_HIERARCHY return value.
13881
13882 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13883
13884         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
13885           Better debug if no transform is possible.
13886
13887 2005-07-27  Wim Taymans  <wim@fluendo.com>
13888
13889         * docs/random/wtay/network-transp:
13890         Some old doc I had.
13891
13892 2005-07-27  Wim Taymans  <wim@fluendo.com>
13893
13894         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13895         (gst_dp_event_from_packet):
13896         Fix serialization of seek events.
13897
13898 2005-07-27  Wim Taymans  <wim@fluendo.com>
13899
13900         * check/gst-libs/gdp.c: (GST_START_TEST):
13901         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13902         Fix compilation and fix event serialization.
13903
13904 2005-07-27  Wim Taymans  <wim@fluendo.com>
13905
13906         * CHANGES-0.9:
13907         * docs/design/part-TODO.txt:
13908         * docs/design/part-events.txt:
13909         Some docs updates
13910
13911         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13912         (gst_base_sink_event), (gst_base_sink_do_sync),
13913         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
13914         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
13915         (gst_base_src_do_seek), (gst_base_src_event_handler),
13916         (gst_base_src_loop):
13917         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
13918         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13919         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
13920         (gst_base_transform_event), (gst_base_transform_handle_buffer),
13921         (gst_base_transform_set_passthrough),
13922         (gst_base_transform_is_passthrough):
13923         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13924         * gst/elements/gstfilesink.c: (gst_file_sink_event):
13925         Event updates.
13926
13927         * gst/gstbuffer.h:
13928         Use faster casts.
13929
13930         * gst/gstelement.c: (gst_element_seek):
13931         * gst/gstelement.h:
13932         Update gst_element_seek.
13933
13934         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
13935         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
13936         (gst_event_new_flush_start), (gst_event_new_flush_stop),
13937         (gst_event_new_eos), (gst_event_new_newsegment),
13938         (gst_event_parse_newsegment), (gst_event_new_tag),
13939         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
13940         (gst_event_parse_qos), (gst_event_new_seek),
13941         (gst_event_parse_seek), (gst_event_new_navigation):
13942         * gst/gstevent.h:
13943         Make GstEvent use GstStructure. Add parsing code, make sure the
13944         API is sufficiently generic.
13945         Mark possible directions of events and serialization.
13946
13947         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
13948         (_gst_message_copy), (gst_message_new_segment_start),
13949         (gst_message_new_segment_done), (gst_message_new_custom),
13950         (gst_message_parse_segment_start),
13951         (gst_message_parse_segment_done):
13952         Small cleanups.
13953
13954         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13955         (gst_pad_set_caps), (gst_pad_send_event):
13956         Update for new events. 
13957         Catch events sent in wrong directions.
13958
13959         * gst/gstqueue.c: (gst_queue_link_src),
13960         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
13961         (gst_queue_handle_src_query):
13962         Event updates.
13963
13964         * gst/gsttag.c:
13965         * gst/gsttag.h:
13966         Remove event code from this file.
13967
13968         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13969         (gst_dp_event_from_packet):
13970         Event updates.
13971
13972 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13973
13974         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
13975         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13976         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
13977           Make debugging actually useful.
13978
13979 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13980
13981         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
13982         (gst_pad_fixate_caps):
13983           Implement default fixation once again, so that gst_pad_fixate()
13984           actually does anything at all. This probably needs to be some
13985           sort of a last resort, and use profile-based fixation first, but
13986           since that doesn't exist yet, this is the best we have. Fixes
13987           visualization in Totem.
13988
13989 2005-07-22  Wim Taymans  <wim@fluendo.com>
13990
13991         * docs/design/part-events.txt:
13992         Small update.
13993
13994         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13995         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
13996         (gst_base_sink_activate_pull):
13997         Some more comments.
13998
13999         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
14000         (gst_fake_src_create):
14001         Fix handoff marshall.
14002
14003         * gst/elements/gstidentity.c: (gst_identity_class_init),
14004         (gst_identity_transform_ip):
14005         We're a real inplace element.
14006
14007         * gst/gstbus.c: (gst_bus_post):
14008         Added some comments.
14009
14010         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
14011         * tests/muxing/case1.c: (main):
14012         * tests/sched/dynamic-pipeline.c: (main):
14013         * tests/sched/interrupt1.c: (main):
14014         * tests/sched/interrupt2.c: (main):
14015         * tests/sched/interrupt3.c: (main):
14016         * tests/sched/runxml.c: (main):
14017         * tests/sched/sched-stress.c: (main):
14018         * tests/seeking/seeking1.c: (event_received), (main):
14019         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
14020         (main):
14021         * tests/threadstate/threadstate3.c: (main):
14022         * tests/threadstate/threadstate4.c: (main):
14023         * tests/threadstate/threadstate5.c: (main):
14024         Fix the tests.
14025
14026 2005-07-21  Wim Taymans  <wim@fluendo.com>
14027
14028         * docs/design/part-seeking.txt:
14029         Some small additions.
14030
14031         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14032         (gst_base_sink_get_times), (gst_base_sink_do_sync),
14033         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
14034         * gst/base/gstbasesink.h:
14035         discont values are gint64, handle the math correctly.
14036
14037         * gst/base/gstbasesrc.c: (gst_base_src_loop):
14038         Make the basesrc report error if the source pad is not linked.
14039
14040         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
14041         (gst_queue_loop), (gst_queue_handle_src_query),
14042         (gst_queue_src_activate_push):
14043         Make queue collect data even if the srcpad is not linked.
14044         Start pushing out data as soon as it is linked.
14045
14046         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
14047         * gst/gstutils.h:
14048         Added gst_flow_get_name() to ease error reporting.
14049
14050 2005-07-20  Wim Taymans  <wim@fluendo.com>
14051
14052         * gst/gstmessage.c: (gst_message_new_segment_start),
14053         (gst_message_new_segment_done), (gst_message_parse_segment_start),
14054         (gst_message_parse_segment_done):
14055         * gst/gstmessage.h:
14056         Added a bunch of messages for advanced seeking.
14057
14058         * gst/parse/grammar.y:
14059         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
14060         (gst_dpman_state_changed):
14061         Fix some new-pad -> pad-added signals
14062
14063 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
14064
14065         * docs/manual/appendix-porting.xml:
14066         * docs/pwg/appendix-porting.xml:
14067           Document new-pad/state-change signal renames and the FixedList
14068           type rename.
14069
14070 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
14071
14072         * docs/manual/advanced-autoplugging.xml:
14073         * docs/manual/basics-helloworld.xml:
14074         * docs/manual/basics-pads.xml:
14075         * docs/random/ds/0.9-suggested-changes:
14076         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
14077         * gst/gstelement.h:
14078         * gst/gstevent.h:
14079         * gst/gstformat.h:
14080         * gst/gstquery.h:
14081         * gst/gststructure.c: (gst_structure_value_get_generic_type),
14082         (gst_structure_parse_array), (gst_structure_parse_value):
14083         * gst/gstvalue.c: (gst_type_is_fixed),
14084         (gst_value_list_prepend_value), (gst_value_list_append_value),
14085         (gst_value_list_get_size), (gst_value_list_get_value),
14086         (gst_value_transform_array_string), (gst_value_serialize_array),
14087         (gst_value_deserialize_array), (gst_value_intersect_array),
14088         (gst_value_is_fixed), (_gst_value_initialize):
14089         * gst/gstvalue.h:
14090           GstElement::new-pad -> pad-added, GstElement::state-change ->
14091           state-changed, GstValueFixedList -> GstValueArray, add format and
14092           flags as their own arguments in gst_element_seek() (should improve
14093           "bindeability"), remove function generators since they don't work
14094           under a whole bunch of compilers (they were deprecated already
14095           anyway).
14096
14097 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
14098
14099         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
14100         (_gst_debug_register_funcptr):
14101         * gst/gstinfo.h:
14102           Fix illegal cast on some platforms (#309253).
14103
14104 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
14105
14106         * gst/gstmessage.c: (gst_message_new_custom):
14107         * gst/gstmessage.h:
14108           Add _new_custom, make _new_application a macro to _new_custom.
14109
14110 2005-07-20  Wim Taymans  <wim@fluendo.com>
14111
14112         * gst/base/gstbasesrc.c: (gst_base_src_init),
14113         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
14114         * gst/base/gstbasesrc.h:
14115         Add a gboolean to decide when to push out a discont.
14116
14117         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
14118         (gst_queue_loop), (gst_queue_handle_src_query),
14119         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
14120         (gst_queue_set_property), (gst_queue_get_property):
14121         Some cleanups.
14122
14123         * tests/threadstate/threadstate1.c: (main):
14124         Make a thread test compile and run... very silly..
14125
14126
14127 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
14128
14129         * docs/manual/appendix-porting.xml:
14130           Mention removal of libgstgconf-0.9.la and existence of gconf
14131           elements.
14132
14133 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
14134
14135         * docs/pwg/advanced-clock.xml:
14136         * docs/pwg/appendix-porting.xml:
14137         * docs/pwg/intro-preface.xml:
14138         * docs/pwg/other-base.xml:
14139         * docs/pwg/other-manager.xml:
14140         * docs/pwg/other-nton.xml:
14141         * docs/pwg/other-ntoone.xml:
14142         * docs/pwg/other-oneton.xml:
14143         * docs/pwg/pwg.xml:
14144           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
14145           demuxer), remove n-to-n (was never written), fix some code examples
14146           and links and update the porting section to include all this.
14147
14148 2005-07-19  Wim Taymans  <wim@fluendo.com>
14149
14150         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
14151         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
14152         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
14153         (gst_queue_src_activate_push), (gst_queue_change_state),
14154         (gst_queue_get_property):
14155         * gst/gstqueue.h:
14156         Propagate GstFlowReturn more intelligently upstream and output
14157         an ERROR/EOS when streaming stopped due to fatal error.
14158
14159 2005-07-19  Wim Taymans  <wim@fluendo.com>
14160
14161         * tools/gst-launch.c: (check_intr), (event_loop), (main):
14162         Don't block forever for the state change to complete, the
14163         pipeline already did with a sensible timeout.
14164
14165 2005-07-19  Wim Taymans  <wim@fluendo.com>
14166
14167         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
14168         Make sure we never call the create function is we
14169         got deactivated.
14170
14171 2005-07-19  Andy Wingo  <wingo@pobox.com>
14172
14173         * gst/parse/parse.l: Attempt to solve bug #172815.
14174
14175 2005-07-19  Wim Taymans  <wim@fluendo.com>
14176
14177         * docs/design/part-clocks.txt:
14178         * docs/design/part-events.txt:
14179         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
14180         Small docs updates.
14181         Only update the seeking values when we are not
14182         busy streaming.
14183
14184 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
14185
14186         * gst/base/gstbasesrc.c: (gst_base_src_loop):
14187           Oops, ignore the result of gst_pad_push_event here.
14188
14189 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
14190
14191         * gst/base/gstbasesrc.c: (gst_base_src_loop),
14192         (gst_base_src_activate_push):
14193           Send discont event from the loop function, as pads
14194           aren't activated yet in the activate_push handler.
14195
14196         * gst/gstbin.c: (bin_bus_handler):
14197           Don't leak element name.
14198
14199 2005-07-18  Andy Wingo  <wingo@pobox.com>
14200
14201         * configure.ac: Use AS_LIBTOOL_TAGS.
14202
14203 2005-07-18  Wim Taymans  <wim@fluendo.com>
14204
14205         * docs/gst/gstreamer.types:
14206         Remove deleted types.
14207
14208 2005-07-18  Wim Taymans  <wim@fluendo.com>
14209
14210         * check/elements/gstfakesrc.c: (GST_START_TEST):
14211         * configure.ac:
14212         * gst/Makefile.am:
14213         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
14214         (init_popt_callback):
14215         * gst/gst.h:
14216         * gst/gst_private.h:
14217         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
14218         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
14219         * gst/gstbin.h:
14220         * gst/gstbus.h:
14221         * gst/gstconfig.h.in:
14222         * gst/gstelement.c: (gst_element_class_init),
14223         (gst_element_set_base_time), (gst_element_get_base_time),
14224         (iterator_fold_with_resync), (gst_element_change_state),
14225         (gst_element_dispose), (gst_element_get_bus):
14226         * gst/gstelement.h:
14227         * gst/gstelementfactory.h:
14228         * gst/gsterror.c: (_gst_core_errors_init):
14229         * gst/gsterror.h:
14230         * gst/gstevent.h:
14231         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
14232         * gst/gstindex.c:
14233         * gst/gstinfo.c: (_gst_debug_init):
14234         * gst/gstmessage.c: (_gst_message_copy):
14235         * gst/gstmessage.h:
14236         * gst/gstminiobject.h:
14237         * gst/gstobject.c:
14238         * gst/gstobject.h:
14239         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
14240         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
14241         * gst/gstpad.h:
14242         * gst/gstparse.h:
14243         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
14244         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
14245         (gst_pipeline_get_last_stream_time):
14246         * gst/gstpipeline.h:
14247         * gst/gstpluginfeature.h:
14248         * gst/gstquery.h:
14249         * gst/gstscheduler.c:
14250         * gst/gstscheduler.h:
14251         * gst/gststructure.h:
14252         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
14253         (gst_task_finalize), (gst_task_func), (gst_task_create),
14254         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
14255         (gst_task_stop), (gst_task_pause):
14256         * gst/gsttask.h:
14257         * gst/gsttypefind.h:
14258         * gst/gsttypes.h:
14259         * gst/registries/gstlibxmlregistry.c: (load_feature),
14260         (gst_xml_registry_load), (gst_xml_registry_save_feature):
14261         * gst/registries/gstxmlregistry.c:
14262         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
14263         * gst/schedulers/threadscheduler.c:
14264         * libs/gst/control/dparammanager.h:
14265         * tools/gst-inspect.c: (print_element_list),
14266         (print_plugin_features), (print_element_features):
14267         * tools/gst-xmlinspect.c: (print_element_list),
14268         (print_plugin_info), (main):
14269         Removed plugable schedulers.
14270         Removed Scheduler/Manager from elements.
14271         Removed gsttypes.h, rearranged includes.
14272         Removed dependency pad<->element, element<>pipeline, and
14273         various others,  fix includes.
14274         implement gst_pad_get_parent() with gst_object_get_parent()
14275         Make GstTask sefcontained.
14276         Fix _get_state() on GstBin, it did not return ASYNC with a 0
14277         timeout.
14278         Fix endless loop in iterator_fold_with_resync.
14279
14280
14281 2005-07-18  Wim Taymans  <wim@fluendo.com>
14282
14283         * gst/Makefile.am:
14284         * gst/gstarch.h:
14285         Remove old file.
14286
14287 2005-07-18  Wim Taymans  <wim@fluendo.com>
14288
14289         * gst/Makefile.am:
14290         No more cothreads.h
14291
14292 2005-07-18  Wim Taymans  <wim@fluendo.com>
14293
14294         * gst/cothreads.c:
14295         * gst/cothreads.h:
14296         Let's remove these.
14297
14298 2005-07-18  Wim Taymans  <wim@fluendo.com>
14299
14300         * docs/design/part-dynamic.txt:
14301         * docs/design/part-events.txt:
14302         * docs/design/part-seeking.txt:
14303         Some more docs in the works.
14304
14305         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
14306         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
14307         (gst_base_transform_setcaps), (gst_base_transform_get_size),
14308         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
14309         (gst_base_transform_handle_buffer),
14310         (gst_base_transform_sink_activate_push),
14311         (gst_base_transform_src_activate_pull),
14312         (gst_base_transform_set_passthrough),
14313         (gst_base_transform_is_passthrough):
14314         Refcounting fixes.
14315
14316         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
14317         Cleanups.
14318
14319         * gst/gstevent.c: (gst_event_finalize):
14320         Set SRC to NULL.
14321
14322         * gst/gstutils.c: (gst_element_unlink),
14323         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
14324         (gst_pad_proxy_setcaps):
14325         * gst/gstutils.h:
14326         Add _get_parent_element() to get a pads parent as an element.
14327
14328 2005-07-18  Wim Taymans  <wim@fluendo.com>
14329
14330         * check/gst/gstbin.c: (GST_START_TEST):
14331         Remove bogus test.
14332
14333 2005-07-18  Wim Taymans  <wim@fluendo.com>
14334
14335         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
14336         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
14337         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
14338         (gst_base_sink_event), (gst_base_sink_do_sync),
14339         (gst_base_sink_chain), (gst_base_sink_loop),
14340         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
14341         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
14342         Refcounting fixes.
14343         Fix logic for returning ASYNC when not prerolled.
14344
14345 2005-07-18  Wim Taymans  <wim@fluendo.com>
14346
14347         * gst/gstqueue.c: (gst_queue_handle_sink_event):
14348         Fix nasty refcount bug.
14349
14350 2005-07-16 Philippe Khalaf <burger@speedy.org>
14351
14352         * gst/elements/gstfdsrc.c:
14353         * gst/elements/gstfdsrc.h:
14354         * gst/elements/gstelements.c:
14355         * gst/elements/Makefile.am:
14356         Ported fdsrc to 0.9.
14357
14358 2005-07-16  Wim Taymans  <wim@fluendo.com>
14359
14360         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14361         (gst_base_sink_do_sync):
14362         Fix compile error.
14363
14364 2005-07-16  Wim Taymans  <wim@fluendo.com>
14365
14366         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14367         (gst_base_sink_event), (gst_base_sink_get_times),
14368         (gst_base_sink_do_sync), (gst_base_sink_change_state):
14369         * gst/base/gstbasesink.h:
14370         Store and use discont values when syncing buffers as described
14371         in design docs.
14372         
14373         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
14374         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
14375         (gst_base_src_activate_push):
14376         Push discont event when starting.
14377
14378         * gst/elements/gstidentity.c: (gst_identity_transform):
14379         Small cleanups.
14380
14381         * gst/gstbin.c: (gst_bin_change_state):
14382         Small cleanups in base_time  distribution.
14383
14384         * gst/gstelement.c: (gst_element_set_base_time),
14385         (gst_element_get_base_time), (gst_element_change_state):
14386         * gst/gstelement.h:
14387         Added methods for the base_time of the element.
14388         Some MT fixes.
14389
14390         * gst/gstpipeline.c: (gst_pipeline_send_event),
14391         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
14392         (gst_pipeline_get_last_stream_time):
14393         * gst/gstpipeline.h:
14394         MT fixes.
14395         Handle seeking as described in design doc, remove stream_time
14396         hack.
14397         Cleanups clock and stream_time selection code. Added accessors
14398         for the stream_time.
14399         
14400
14401 2005-07-16  Andy Wingo  <wingo@pobox.com>
14402
14403         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
14404         (#305291).
14405
14406 2005-07-16  Wim Taymans  <wim@fluendo.com>
14407
14408         * check/gst/gstbin.c: (GST_START_TEST):
14409         Make elements silent as the deep_notify refs the
14410         parent, which might make the test fail.
14411
14412         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
14413         Don't hold the lock for too long.
14414
14415 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
14416
14417         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
14418           Don't unref the caps we passed to gst_caps_make_writable() after
14419           passing them. gst_caps_make_writable() will do that for us.
14420
14421 2005-07-15  Andy Wingo  <wingo@pobox.com>
14422
14423         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
14424         (#157311).
14425
14426         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
14427         own marshalling function for the handoff signal. Properly type the
14428         buffer as a buffer. Fixes some warnings. Should do a more general
14429         solution.
14430         (gst_identity_class_init): Plug into the right marshaller.
14431
14432 2005-07-15  Wim Taymans  <wim@fluendo.com>
14433
14434         * docs/design/part-TODO.txt:
14435         * docs/design/part-clocks.txt:
14436         * docs/design/part-element-sink.txt:
14437         * docs/design/part-events.txt:
14438         * docs/design/part-gstpipeline.txt:
14439         Updated docs, mostly DISCONT related.
14440
14441 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
14442
14443         * docs/pwg/building-pads.xml:
14444           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
14445
14446 2005-07-15  Andy Wingo  <wingo@pobox.com>
14447
14448         * tools/gst-typefind.c: Update, add copyright block.
14449
14450         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
14451         Normalize and truncate caps before fixation.
14452
14453         * gst/gstcaps.h:
14454         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
14455         discards all but the first structure from its argument.
14456
14457 2005-07-15  Wim Taymans  <wim@fluendo.com>
14458
14459         * gst/base/gstbasetransform.c: (gst_base_transform_init),
14460         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
14461         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
14462         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
14463         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
14464         (gst_base_transform_chain), (gst_base_transform_change_state),
14465         (gst_base_transform_set_passthrough),
14466         (gst_base_transform_is_passthrough):
14467         * gst/base/gstbasetransform.h:
14468         Make passthrough work using the bufferpools.
14469         Changed API a bit, subclasses have to write into a buffer
14470         provided by the base class.
14471         More debug info in nego functions.
14472         
14473         * gst/elements/gstidentity.c: (gst_identity_init),
14474         (gst_identity_transform):
14475         Port to new base class.
14476
14477 2005-07-15  Wim Taymans  <wim@fluendo.com>
14478
14479         * gst/gstmessage.c: (gst_message_new_state_changed):
14480         * tools/gst-launch.c: (event_loop), (main):
14481         Totally dump messages in -launch with the -m option.
14482         Fix message name for State messages,
14483
14484 2005-07-14  Wim Taymans  <wim@fluendo.com>
14485
14486         * gst/base/gstbasesrc.c: (gst_base_src_loop):
14487         Post error messages on errors.
14488
14489 2005-07-14  Wim Taymans  <wim@fluendo.com>
14490
14491         * gst/gstcaps.c: (gst_caps_do_simplify):
14492         Remove debug info.
14493
14494         * gst/gsterror.h:
14495         Define error for stream stopped.
14496
14497         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
14498         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
14499         Do proper return values.
14500
14501         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
14502         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
14503         (gst_pad_get_range):
14504         Better return values.
14505
14506         * gst/gstpad.h:
14507         Reorganise return values, add macro to check for fatal errors.
14508
14509         * gst/gstqueue.c: (gst_queue_chain):
14510         Return proper GstFlowReturn values,
14511
14512 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
14513
14514         * docs/gst/gstreamer-sections.txt:
14515         * docs/gst/gstreamer.types:
14516         * docs/gst/tmpl/gst.sgml:
14517         * docs/gst/tmpl/gstbasesink.sgml:
14518         * docs/gst/tmpl/gstbasesrc.sgml:
14519         * docs/gst/tmpl/gstbasetransform.sgml:
14520         * docs/gst/tmpl/gstbin.sgml:
14521         * docs/gst/tmpl/gstbuffer.sgml:
14522         * docs/gst/tmpl/gstcaps.sgml:
14523         * docs/gst/tmpl/gstclock.sgml:
14524         * docs/gst/tmpl/gstcompat.sgml:
14525         * docs/gst/tmpl/gstconfig.sgml:
14526         * docs/gst/tmpl/gstelement.sgml:
14527         * docs/gst/tmpl/gstelementdetails.sgml:
14528         * docs/gst/tmpl/gstelementfactory.sgml:
14529         * docs/gst/tmpl/gstenumtypes.sgml:
14530         * docs/gst/tmpl/gsterror.sgml:
14531         * docs/gst/tmpl/gstevent.sgml:
14532         * docs/gst/tmpl/gstfakesink.sgml:
14533         * docs/gst/tmpl/gstfakesrc.sgml:
14534         * docs/gst/tmpl/gstfilesink.sgml:
14535         * docs/gst/tmpl/gstfilesrc.sgml:
14536         * docs/gst/tmpl/gstfilter.sgml:
14537         * docs/gst/tmpl/gstformat.sgml:
14538         * docs/gst/tmpl/gstghostpad.sgml:
14539         * docs/gst/tmpl/gstimplementsinterface.sgml:
14540         * docs/gst/tmpl/gstindex.sgml:
14541         * docs/gst/tmpl/gstindexfactory.sgml:
14542         * docs/gst/tmpl/gstinfo.sgml:
14543         * docs/gst/tmpl/gstiterator.sgml:
14544         * docs/gst/tmpl/gstmacros.sgml:
14545         * docs/gst/tmpl/gstmemchunk.sgml:
14546         * docs/gst/tmpl/gstminiobject.sgml:
14547         * docs/gst/tmpl/gstobject.sgml:
14548         * docs/gst/tmpl/gstpad.sgml:
14549         * docs/gst/tmpl/gstpadtemplate.sgml:
14550         * docs/gst/tmpl/gstparse.sgml:
14551         * docs/gst/tmpl/gstpipeline.sgml:
14552         * docs/gst/tmpl/gstplugin.sgml:
14553         * docs/gst/tmpl/gstpluginfeature.sgml:
14554         * docs/gst/tmpl/gstquery.sgml:
14555         * docs/gst/tmpl/gstqueue.sgml:
14556         * docs/gst/tmpl/gstregistry.sgml:
14557         * docs/gst/tmpl/gstregistrypool.sgml:
14558         * docs/gst/tmpl/gstscheduler.sgml:
14559         * docs/gst/tmpl/gstschedulerfactory.sgml:
14560         * docs/gst/tmpl/gststructure.sgml:
14561         * docs/gst/tmpl/gstsystemclock.sgml:
14562         * docs/gst/tmpl/gsttaglist.sgml:
14563         * docs/gst/tmpl/gsttagsetter.sgml:
14564         * docs/gst/tmpl/gsttrace.sgml:
14565         * docs/gst/tmpl/gsttrashstack.sgml:
14566         * docs/gst/tmpl/gsttypefind.sgml:
14567         * docs/gst/tmpl/gsttypefindfactory.sgml:
14568         * docs/gst/tmpl/gsttypes.sgml:
14569         * docs/gst/tmpl/gsturihandler.sgml:
14570         * docs/gst/tmpl/gsturitype.sgml:
14571         * docs/gst/tmpl/gstutils.sgml:
14572         * docs/gst/tmpl/gstvalue.sgml:
14573         * docs/gst/tmpl/gstversion.sgml:
14574         * docs/gst/tmpl/gstxml.sgml:
14575         * docs/libs/tmpl/gstcontrol.sgml:
14576         * docs/libs/tmpl/gstdataprotocol.sgml:
14577         * docs/libs/tmpl/gstdparam.sgml:
14578         * docs/libs/tmpl/gstdplinint.sgml:
14579         * docs/libs/tmpl/gstdpman.sgml:
14580         * docs/libs/tmpl/gstdpsmooth.sgml:
14581         * docs/libs/tmpl/gstgetbits.sgml:
14582         * docs/libs/tmpl/gstunitconvert.sgml:
14583         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
14584         (gst_push_src_base_init), (gst_push_src_class_init),
14585         (gst_push_src_init), (gst_push_src_create):
14586         * gst/base/gstpushsrc.h:
14587         * gst/elements/gstelements.c:
14588         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
14589         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
14590         (gst_fake_sink_init), (gst_fake_sink_set_property),
14591         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
14592         (gst_fake_sink_event), (gst_fake_sink_preroll),
14593         (gst_fake_sink_render), (gst_fake_sink_change_state):
14594         * gst/elements/gstfakesink.h:
14595         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
14596         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
14597         (gst_fake_src_base_init), (gst_fake_src_class_init),
14598         (gst_fake_src_init), (gst_fake_src_event_handler),
14599         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
14600         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
14601         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
14602         (gst_fake_src_create_buffer), (gst_fake_src_create),
14603         (gst_fake_src_start), (gst_fake_src_stop):
14604         * gst/elements/gstfakesrc.h:
14605         * gst/elements/gstfilesink.c: (_do_init),
14606         (gst_file_sink_base_init), (gst_file_sink_class_init),
14607         (gst_file_sink_init), (gst_file_sink_dispose),
14608         (gst_file_sink_set_location), (gst_file_sink_set_property),
14609         (gst_file_sink_get_property), (gst_file_sink_open_file),
14610         (gst_file_sink_close_file), (gst_file_sink_query),
14611         (gst_file_sink_event), (gst_file_sink_render),
14612         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
14613         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
14614         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
14615         * gst/elements/gstfilesink.h:
14616         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
14617         (gst_file_src_class_init), (gst_file_src_init),
14618         (gst_file_src_finalize), (gst_file_src_set_location),
14619         (gst_file_src_set_property), (gst_file_src_get_property),
14620         (gst_file_src_map_region), (gst_file_src_map_small_region),
14621         (gst_file_src_create_mmap), (gst_file_src_create_read),
14622         (gst_file_src_create), (gst_file_src_is_seekable),
14623         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
14624         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
14625         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
14626         (gst_file_src_uri_handler_init):
14627         * gst/elements/gstfilesrc.h:
14628           more autistic cleanliness in functions/names/defines
14629
14630 2005-07-13  Andy Wingo  <wingo@pobox.com>
14631
14632         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
14633         source couldn't negotiate.
14634
14635         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
14636         connections again.
14637
14638         * gst/gstutils.h:
14639         * gst/gstutils.c (gst_element_link_pads_filtered): New old
14640         function. I am channeling Hades. Put your boots on suckers!!!
14641
14642 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14643
14644         * testsuite/caps/Makefile.am:
14645         * testsuite/caps/value_compare.c:
14646         * testsuite/caps/value_intersect.c:
14647         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
14648           move two testsuite apps over to the check dir
14649
14650 2005-07-12  Wim Taymans  <wim@fluendo.com>
14651
14652         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
14653         Added more debug info in the negotiate process.
14654
14655         * gst/gstmessage.h:
14656         Prepare for segment playback.
14657
14658         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
14659         Better debugging.
14660
14661         * gst/gstutils.c:
14662         Some more docs.
14663
14664         * tools/gst-launch.c: (main):
14665         NULL pipeline on errors.
14666
14667 2005-07-12  Andy Wingo  <wingo@pobox.com>
14668
14669         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
14670         not it comes from a malloc region. Make sure our copy gets freed.
14671
14672 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
14673
14674         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
14675         * check/gst/gstmessage.c: (GST_START_TEST):
14676         * check/gst/gststructure.c: (GST_START_TEST),
14677         (gst_structure_suite), (main):
14678           more testing
14679         * gst/gstelement.c: (gst_element_message_full):
14680           clean up GError and debug string now that they get copied
14681         * gst/gstmessage.c: (gst_message_new_error),
14682         (gst_message_new_warning), (gst_message_parse_error),
14683         (gst_message_parse_warning):
14684           use GST_TYPE_G_ERROR for structure_new, and take copies of
14685           arguments, so that we don't mess up refcounting
14686
14687 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
14688
14689         * check/Makefile.am:
14690           add per-test valgrind targets
14691         * check/gst-libs/gdp.c: (GST_START_TEST),
14692         (gst_data_protocol_suite), (main):
14693           clean up
14694
14695 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
14696
14697         * check/Makefile.am:
14698           instate more valgrindable tests
14699         * check/elements/gstfakesrc.c: (chain_func), (event_func),
14700         (GST_START_TEST), (fakesrc_suite):
14701         * check/gst/gstpad.c: (GST_START_TEST):
14702         * check/gst/gststructure.c: (GST_START_TEST):
14703           fix test leaks
14704         * docs/gst/tmpl/gstminiobject.sgml:
14705         * gst/gstpad.c: (gst_pad_finalize):
14706           fix the static mutex leak
14707
14708 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
14709
14710         * check/Makefile.am:
14711           add two more tests for valgrinding
14712         * check/gst/gstvalue.c: (GST_START_TEST):
14713           test refcount of deserialized buffer, found a leak
14714         * docs/gst/gstreamer-docs.sgml:
14715         * docs/gst/gstreamer-sections.txt:
14716         * docs/gst/gstreamer.types:
14717         * docs/gst/tmpl/gstminiobject.sgml:
14718           add miniobject to docs
14719         * gst/gstminiobject.c:
14720           add some docs
14721         * gst/gstvalue.c: (gst_value_deserialize_buffer),
14722         (gst_string_unwrap):
14723           fix a hard-to-find invalid write for one of the tests
14724           fix a leak for deserialized buffers
14725
14726 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
14727
14728         * docs/pwg/advanced-events.xml:
14729         * docs/pwg/advanced-request.xml:
14730         * docs/pwg/advanced-scheduling.xml:
14731         * docs/pwg/appendix-porting.xml:
14732         * docs/pwg/building-boiler.xml:
14733         * docs/pwg/intro-preface.xml:
14734         * docs/pwg/other-ntoone.xml:
14735           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
14736           of example code and explanation for pad activation, loop() and
14737           getrange() functions and a bit more. Remove old comments pointing
14738           to loop-functions.
14739         * examples/pwg/Makefile.am:
14740           Add loop/getrange examples.
14741
14742 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
14743
14744         * configure.ac:
14745           check for valgrind binary + some fixes
14746         * check/gst.supp:
14747           valgrind suppressions for the tests
14748         * check/Makefile.am:
14749           add a valgrind: target that valgrinds the unit tests
14750         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
14751         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
14752         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
14753         * check/gst/gstghostpad.c:
14754           added some cleanup
14755         * check/gst/gstdata.c:
14756           removed
14757         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
14758         (thread_unref), (gst_mini_object_suite), (main):
14759           added
14760         * gst/gst.c: (gst_deinit):
14761         * gst/gst.h:
14762           add a method to clean up.
14763         * gst/gstsystemclock.c: (gst_system_clock_dispose),
14764         (gst_system_clock_obtain):
14765           allow for disposing the system clock.
14766         * tools/gst-launch.c: (main):
14767           deinit
14768
14769 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
14770
14771         * docs/gst/tmpl/gstbasesrc.sgml:
14772         * docs/gst/tmpl/gstfakesrc.sgml:
14773         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14774         (gst_base_src_init), (gst_base_src_set_property),
14775         (gst_base_src_get_property), (gst_base_src_get_range),
14776         (gst_base_src_start):
14777         * gst/base/gstbasesrc.h:
14778           add num-buffers property
14779         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14780         (gst_fakesrc_init), (gst_fakesrc_set_property),
14781         (gst_fakesrc_get_property), (gst_fakesrc_create),
14782         (gst_fakesrc_start):
14783           remove num-buffers property
14784
14785 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
14786
14787         * docs/gst/gstreamer-sections.txt:
14788         * docs/gst/tmpl/gstbasesink.sgml:
14789         * docs/gst/tmpl/gstbasesrc.sgml:
14790         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
14791         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
14792         (gst_base_sink_finalize), (gst_base_sink_set_clock),
14793         (gst_base_sink_set_property), (gst_base_sink_get_property),
14794         (gst_base_sink_handle_object), (gst_base_sink_event),
14795         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
14796         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
14797         (gst_base_sink_loop), (gst_base_sink_deactivate),
14798         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
14799         (gst_base_sink_change_state):
14800         * gst/base/gstbasesink.h:
14801         * gst/base/gstbasesrc.h:
14802         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
14803         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
14804         (gst_filesink_init):
14805           more macro splitting
14806
14807 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
14808
14809         * gst/gstelement.c: (gst_element_get_bus):
14810           add debug
14811         * tools/gst-launch.c: (check_intr), (event_loop):
14812           fix bus leaks
14813
14814 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
14815
14816         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
14817           fix a caps leak
14818
14819 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
14820
14821         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14822         (gst_base_src_finalize):
14823           add finalize method and clean up properly
14824         * gst/gstpipeline.c: (gst_pipeline_dispose):
14825           add debug
14826
14827 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
14828
14829         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
14830         (gst_bin_suite):
14831           add more things to check
14832         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
14833         * gst/gstelement.c:
14834           more debug
14835
14836 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
14837
14838         * check/elements/gstfakesrc.c: (chain_func), (event_func),
14839         (GST_START_TEST), (fakesrc_suite):
14840         * check/gst-libs/gdp.c: (GST_START_TEST):
14841         * check/gst/gst.c: (GST_START_TEST):
14842         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
14843         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
14844         * check/gst/gstbus.c: (GST_START_TEST):
14845         * check/gst/gstcaps.c: (GST_START_TEST):
14846         * check/gst/gstdata.c: (GST_START_TEST):
14847         * check/gst/gstelement.c: (GST_START_TEST):
14848         * check/gst/gstghostpad.c: (GST_START_TEST):
14849         * check/gst/gstiterator.c: (GST_START_TEST):
14850         * check/gst/gstmessage.c: (GST_START_TEST):
14851         * check/gst/gstobject.c: (GST_START_TEST):
14852         * check/gst/gstpad.c: (GST_START_TEST):
14853         * check/gst/gststructure.c: (GST_START_TEST):
14854         * check/gst/gstsystemclock.c: (GST_START_TEST),
14855         (gst_systemclock_suite):
14856         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
14857         * check/gst/gstvalue.c: (GST_START_TEST):
14858         * check/pipelines/cleanup.c: (GST_START_TEST):
14859         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
14860         * check/states/sinks.c: (GST_START_TEST):
14861         * check/gstcheck.c: (gst_check_init):
14862         * check/gstcheck.h:
14863           add debugging category
14864           use GST_START_TEST now, so we add a debug line
14865
14866 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
14867
14868         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
14869           add test for state change message on a bin
14870         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
14871           add another test
14872         * gst/gstbin.c: (gst_bin_init):
14873         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
14874         * gst/gstelement.c: (gst_element_post_message),
14875         (gst_element_set_state):
14876         * gst/gstelementfactory.c: (gst_element_factory_create):
14877         * gst/gstmessage.c: (gst_message_new):
14878         * gst/gstscheduler.c:
14879           various debugging additions and cleanups
14880
14881 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
14882
14883         * check/Makefile.am:
14884         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
14885         (main):
14886           adding tests for elements
14887         * gst/gstelement.c: (gst_element_dispose):
14888
14889 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
14890
14891         * gst/registries/gstlibxmlregistry.c: (load_feature):
14892           plug more leaks.  A simple gst_init() now is leakfree, yay.
14893
14894 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
14895
14896         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
14897         (gst_xml_registry_load):
14898           plug another memleak
14899
14900 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
14901
14902         * configure.ac:
14903           use GST_SET_ERROR_CFLAGS
14904         * docs/faq/cvs.xml:
14905           change to ERROR_CFLAGS
14906
14907 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
14908
14909         * configure.ac:
14910           make GST_ERROR_CFLAGS overridable and re-enable Werror
14911         * docs/faq/cvs.xml:
14912           add a note about error CFLAGS
14913         * docs/gst/tmpl/gstfakesrc.sgml:
14914         * gst/elements/gstfakesrc.c:
14915           comment out some unused code
14916         * gst/gst.c: (split_and_iterate):
14917         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
14918         (load_feature):
14919           plug some memleaks
14920
14921 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
14922
14923         * common/Makefile.am:
14924         * common/gtk-doc.mak:
14925         * docs/gst/Makefile.am:
14926           factor out gtk-doc.mak
14927
14928 2005-07-07  Wim Taymans  <wim@fluendo.com>
14929
14930         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
14931         (gst_thread_scheduler_dispose):
14932         Unlock the STREAM_LOCK completely.
14933
14934 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
14935
14936         * check/Makefile.am:
14937         * check/elements/.cvsignore:
14938         * check/elements/gstfakesrc.c: (chain_func), (event_func),
14939         (START_TEST), (fakesrc_suite), (main):
14940         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14941         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
14942         (gst_fakesrc_create), (gst_fakesrc_start):
14943         * gst/elements/gstfakesrc.h:
14944           adding a first element test
14945
14946 2005-07-07  Andy Wingo  <wingo@pobox.com>
14947
14948         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
14949         debug message.
14950
14951 2005-07-07  Wim Taymans  <wim@fluendo.com>
14952
14953         * gst/gstquery.c:
14954         * gst/gstquery.h:
14955         Remove old types
14956
14957 2005-07-07  Wim Taymans  <wim@fluendo.com>
14958
14959         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
14960         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
14961         Allow subclasses to implement their own negotiation.
14962
14963 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
14964
14965         * docs/design/part-gstbin.txt:
14966         * docs/design/part-gstpipeline.txt:
14967           Update design notes to reflect the movement of
14968           responsibility for bus handling from GstPipeline to
14969           GstBin
14970
14971 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
14972
14973         * configure.ac:
14974           Remove unnecessary queue2/3/4 examples.
14975
14976 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
14977
14978         * examples/Makefile.am:
14979         * examples/helloworld/helloworld.c: (event_loop), (main):
14980         * examples/queue/queue.c: (event_loop), (main):
14981         * examples/queue2/queue2.c: (main):
14982           Update a couple of the examples to work again.
14983
14984         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14985         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
14986          Spelling corrections and extra debug.
14987         
14988         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
14989         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
14990         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
14991         * gst/gstbin.h:
14992         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
14993         (gst_pipeline_change_state):
14994         * gst/gstpipeline.h:
14995           Move the bus handler for children to the GstBin, and create a
14996           separate bus for receiving messages from children to the one the
14997           bus sends 'upwards' on.
14998
14999 2005-07-06  Wim Taymans  <wim@fluendo.com>
15000
15001         * gst/base/README:
15002         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
15003         (gst_base_sink_handle_object), (gst_base_sink_loop),
15004         (gst_base_sink_change_state):
15005         * gst/base/gstbasesink.h:
15006         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
15007         (gst_base_src_init), (gst_base_src_setcaps),
15008         (gst_base_src_getcaps), (gst_base_src_loop),
15009         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
15010         (gst_base_src_start), (gst_base_src_change_state):
15011         * gst/base/gstbasesrc.h:
15012         Make basesrc negotiate.
15013         Handle the case where preroll fails in basesink.
15014         Update README.
15015
15016 2005-07-06  Wim Taymans  <wim@fluendo.com>
15017
15018         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
15019         Implement the fixate function.
15020         Clean up acceptcaps.
15021
15022 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15023
15024         * docs/pwg/building-filterfactory.xml:
15025         * docs/pwg/pwg.xml:
15026           Remove never-written filter-factory chapter; I'll add the various
15027           base classes to part 4 ("other element types") later on.
15028
15029 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15030
15031         * docs/pwg/advanced-negotiation.xml:
15032         * docs/pwg/building-boiler.xml:
15033         * docs/pwg/building-pads.xml:
15034         * docs/pwg/pwg.xml:
15035         * examples/pwg/Makefile.am:
15036           Add a chapter on caps negotiation, simplify the original code
15037           samples a bit w.r.t. caps negotiation, add link to the advanced
15038           section. Add a bunch of examples showing different use cases of
15039           different types of caps negotiation. Upstream renegotiation isn't
15040           fully documented yet since nobody knows how that works.
15041
15042 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
15043
15044         * check/gst/gstpad.c:
15045         * check/gstcheck.c:
15046         * gst/gstpad.c: (gst_pad_get_internal_links_default):
15047           if pad has no parent, return NULL as list of internal links
15048
15049 2005-07-05  Andy Wingo  <wingo@pobox.com>
15050
15051         * gst/elements/gstfilesrc.c:
15052         * gst/elements/gstfakesrc.c: 
15053         * gst/base/gstpushsrc.c:
15054         * gst/base/gstbasesrc.h: 
15055         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
15056         
15057 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
15058
15059         * Makefile.am:
15060           better report generation target (lcov needs a patch)
15061
15062 2005-07-05  Andy Wingo  <wingo@pobox.com>
15063
15064         * gst/elements, testsuite: Null if we got it...
15065
15066 2005-07-05  Wim Taymans  <wim@fluendo.com>
15067
15068         * configure.ac:
15069         * libs/gst/dataprotocol/Makefile.am:
15070         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
15071         * libs/gst/dataprotocol/dataprotocol.h:
15072         * pkgconfig/Makefile.am:
15073         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
15074         * pkgconfig/gstreamer-dataprotocol.pc.in:
15075         Ported dataprotol to 0.9. 
15076         Added pkgconfig files.
15077
15078 2005-07-05  Andy Wingo  <wingo@pobox.com>
15079
15080         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
15081         Default to returning TRUE for the case when tranform_caps returns
15082         a fixed caps, like for identity or volume.
15083
15084         * check/gst/gstbus.c (pound_bus_with_messages): 
15085         * check/gst/gstmessage.c (START_TEST): 
15086         * check/pipelines/simple_launch_lines.c (got_handoff): Application
15087         message API change.
15088
15089         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
15090         logic weaks here: always run transform_caps, trying passthrough
15091         operation only if the original caps intersects with the transform.
15092
15093         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
15094         source and sink caps.
15095
15096         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
15097         Intersect the peer caps with the pad template before going into
15098         transform_caps.
15099         (gst_base_transform_transform_caps): More debugging.
15100
15101         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
15102         src argument.
15103
15104 2005-07-04  Edward Hervey  <edward@fluendo.com>
15105
15106         * gst/gstutils.c:
15107         * gst/gstutils.h:
15108         (gst_pad_add_*_probe): now returns the signal id for better wrapping
15109         in bindings.
15110
15111 2005-07-04  Andy Wingo  <wingo@pobox.com>
15112
15113         * check/gst/gstpad.c: Only set explicit caps on pads.
15114
15115 2005-07-01  Andy Wingo  <wingo@pobox.com>
15116
15117         * tests/network-clock.scm: Commentary update.
15118
15119         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
15120         Didn't really make sense, not implementable with basetransform,
15121         etc.
15122         (gst_identity_transform): Unref inbuf via make_writable. Feeble
15123         attempt at implementing the sync property, needs an unlock method.
15124
15125         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
15126         New func, by default returns the same caps (the identity
15127         transformation).
15128         (gst_base_transform_getcaps): Uses transform_caps to return
15129         something sensible.
15130         (gst_base_transform_setcaps): Complicated logic to get caps on
15131         both pads, even if they are different, and to call set_caps once
15132         for every time both pads get their caps set.
15133         (gst_base_transform_handle_buffer): Give the ref to the transform
15134         function. Allows in-place modification of the buffer.
15135
15136         * gst/base/gstbasetransform.h (transform_caps): New class method.
15137         Given caps on one side, what can I do on the other.
15138         (set_caps): Take two caps, one for each side of the element.
15139
15140         * gst/gstpad.h:
15141         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
15142         caps in place. This is safe because we can check the mutability of
15143         the caps, and a good idea because fixate functions are just called
15144         as a matter of last resort. (Not actually implemented.)
15145         (gst_pad_set_caps): If the caps we're setting is actually the same
15146         as the existing pad caps, just update the pointer without calling
15147         setcaps. Assert that caps is either NULL or fixed, as per the
15148         docs.
15149
15150         * gst/gstghostpad.c: Update for fixate changes.
15151
15152 2005-07-02  Andy Wingo  <wingo@pobox.com>
15153
15154         * gst/gstcaps.c:
15155         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
15156         two refcounts makes it immutable, which is enough. Doc more.
15157
15158 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
15159
15160         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
15161           Put the mini_object into GValue as a mini_object,
15162           not a gpointer, since that's how we declared
15163           the signal.
15164
15165 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15166
15167         * examples/pwg/Makefile.am:
15168           Fix buildbot again.
15169
15170 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15171
15172         * docs/pwg/building-testapp.xml:
15173           Add extra check.
15174         * examples/pwg/Makefile.am:
15175           Fix buildbot.
15176
15177 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15178
15179         * configure.ac:
15180         * examples/Makefile.am:
15181         * examples/pwg/Makefile.am:
15182         * examples/pwg/extract.pl:
15183           Enable building the PWG examples.
15184         * docs/pwg/advanced-interfaces.xml:
15185           Add URI interface stub.
15186         * docs/pwg/advanced-types.xml:
15187         * docs/pwg/other-autoplugger.xml:
15188         * docs/pwg/appendix-porting.xml:
15189         * docs/pwg/pwg.xml:
15190           Add porting guide (mostly stubs), remove autoplugging (see ADM).
15191         * docs/pwg/building-boiler.xml:
15192         * docs/pwg/building-chainfn.xml:
15193         * docs/pwg/building-pads.xml:
15194         * docs/pwg/building-props.xml:
15195         * docs/pwg/building-state.xml:
15196         * docs/pwg/building-testapp.xml:
15197           Update the building-*.xml parts for 0.9 changes. All examples
15198           code blocks compile in examples/pwg/*.
15199
15200 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15201
15202         * docs/manual/advanced-autoplugging.xml:
15203         * docs/manual/appendix-checklist.xml:
15204         * docs/manual/appendix-integration.xml:
15205         * docs/manual/highlevel-components.xml:
15206           Fix playbin/decodebin examples, update docs a bit, mention bus
15207           instead of signals in various places, mention kmplayer and
15208           kaffeine since they have a working GStreamer backend in the KDE
15209           section.
15210
15211 2005-06-30  Wim Taymans  <wim@fluendo.com>
15212
15213         * CHANGES-0.9:
15214         * docs/design/draft-ghostpads.txt:
15215         * docs/design/draft-push-pull.txt:
15216         * docs/design/draft-query.txt:
15217         * docs/design/part-TODO.txt:
15218         * docs/design/part-query.txt:
15219         Added CHANGES-0.9 doc, updated status of other docs.
15220         
15221         * gst/gstquery.h:
15222         Remove "hmm" macro
15223
15224 2005-06-30  Wim Taymans  <wim@fluendo.com>
15225
15226         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
15227         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
15228         (gst_base_sink_change_state):
15229         * gst/base/gstbasesink.h:
15230         Some tweaks, only EOS and a buffer complete a preroll.
15231
15232 2005-06-30  Andy Wingo  <wingo@pobox.com>
15233
15234         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
15235         activate_push down to the internal pad as well.
15236
15237 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
15238
15239         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15240
15241         * gst/gsttaginterface.c:
15242           Some documentation fixes (#307394 and #307397).
15243
15244 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
15245
15246         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15247
15248         * gst/gstvalue.c: (gst_value_intersect_list):
15249           Fix memleak (#309125).
15250
15251 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15252
15253         * docs/manual/advanced-dataaccess.xml:
15254           Fix fakesrc example to compile; doesn't work, bug somewhere...?
15255         * docs/manual/basics-pads.xml:
15256           Add reference for filtered caps to above chapter.
15257
15258 2005-06-30  Wim Taymans  <wim@fluendo.com>
15259
15260         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
15261         (gst_bin_change_state):
15262         Probes are gone.
15263         Lame attempt at making the state change function a bit
15264         more readable.
15265
15266 2005-06-30  Wim Taymans  <wim@fluendo.com>
15267
15268         * docs/design/part-clocks.txt:
15269         * docs/design/part-element-sink.txt:
15270         * docs/design/part-events.txt:
15271         * docs/design/part-preroll.txt:
15272         * docs/design/part-states.txt:
15273         Some more tweeks and additions to the docs.
15274
15275 2005-06-30  Wim Taymans  <wim@fluendo.com>
15276
15277         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15278         (default_have_data), (gst_pad_class_init), (gst_pad_init),
15279         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
15280         (gst_pad_check_pull_range), (gst_pad_get_range),
15281         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
15282         * gst/gstpad.h:
15283         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
15284         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
15285         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
15286         (gst_pad_remove_buffer_probe):
15287         Removed atomic operations, use existing LOCK.
15288         Move exception handling out of main code path.
15289
15290 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15291
15292         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15293         (silly_return_true_function), (gst_pad_class_init),
15294         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
15295         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
15296         (gst_pad_send_event):
15297           Fix accumulator, add default value by using _emitv() instead
15298           of _emit() for signal emission.
15299
15300 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15301
15302         * docs/manual/advanced-dataaccess.xml:
15303         * examples/manual/Makefile.am:
15304           Add probe example.
15305         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
15306           Make work (??).
15307
15308 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
15309
15310         * gst/elements/gstfilesink.c: (gst_filesink_render):
15311           Simplify code so that we don't have to handle short
15312           writes and return GST_FLOW_ERROR if an error occured.
15313
15314 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15315
15316         * docs/gst/gstreamer-docs.sgml:
15317           Remove probes more.
15318
15319 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15320
15321         * docs/gst/gstreamer-sections.txt:
15322         * docs/gst/tmpl/gstpad.sgml:
15323         * docs/gst/tmpl/gstprobe.sgml:
15324         * gst/Makefile.am:
15325         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15326         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
15327         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
15328         (gst_pad_push_event), (gst_pad_send_event):
15329         * gst/gstpad.h:
15330         * gst/gstutils.c: (gst_pad_add_data_probe),
15331         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
15332         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
15333         (gst_pad_remove_buffer_probe):
15334         * gst/gstutils.h:
15335           Remove old probes, add new g-signal-based probes and some utility
15336           functions.
15337
15338 2005-06-29  Edward Hervey  <edward@fluendo.com>
15339
15340         * gst/gstelementfactory.c:
15341         * gst/gstutils.h:
15342         * gst/gstutils.c:
15343         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
15344         the definition to the header file.
15345
15346 2005-06-29  Andy Wingo  <wingo@pobox.com>
15347
15348         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
15349         plugins from the source directory.
15350
15351 2005-06-29  Wim Taymans  <wim@fluendo.com>
15352
15353         * docs/gst/tmpl/gstbuffer.sgml:
15354         * docs/gst/tmpl/gstclock.sgml:
15355         Some fixings for blantently wrong text.
15356
15357 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
15358
15359         * check/Makefile.am:
15360         * gst/gst.c: (add_path_func), (init_pre):
15361         * gst/gstregistry.c: (gst_registry_add_path):
15362           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
15363           only scan the GST_PLUGIN_PATH locations, and not add
15364           system locations
15365
15366 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
15367
15368         * docs/gst/gstreamer-sections.txt:
15369         * docs/gst/tmpl/gstbasesrc.sgml:
15370         * gst/gstelement.c:
15371         * gst/gstelement.h:
15372         * gst/gstevent.c:
15373         * gst/gstutils.c:
15374           doc fixes
15375
15376 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15377
15378         * docs/manual/advanced-autoplugging.xml:
15379           Fix autoplugging example.
15380
15381 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15382
15383         * docs/manual/advanced-autoplugging.xml:
15384         * docs/manual/mime-world.fig:
15385           Try to get autoplugging working, fix type detection. Fix text
15386           in hello-world image.
15387
15388 2005-06-29  Wim Taymans  <wim@fluendo.com>
15389
15390         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
15391         (gst_base_sink_change_state):
15392         Small debug line.
15393
15394         * gst/gstclock.h:
15395         map SIGNAL and BROADCAST to the right function.
15396
15397         * gst/gstobject.h:
15398         Remove redundant braces.
15399
15400         * gst/gstpad.c: (gst_pad_set_caps):
15401         Don't call setcaps function when reseting caps to NULL.
15402
15403         * gst/gstsystemclock.c: (gst_system_clock_dispose),
15404         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
15405         (gst_system_clock_id_unschedule):
15406         Use BROADCAST as this is what we do.
15407
15408 2005-06-29  Wim Taymans  <wim@fluendo.com>
15409
15410         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
15411         We are actually prerolling before commiting the state
15412         change. 
15413
15414 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
15415
15416         * docs/manual/advanced-clocks.xml:
15417         * docs/manual/advanced-interfaces.xml:
15418         * docs/manual/advanced-metadata.xml:
15419         * docs/manual/advanced-position.xml:
15420         * docs/manual/advanced-schedulers.xml:
15421         * docs/manual/advanced-threads.xml:
15422         * docs/manual/appendix-porting.xml:
15423         * docs/manual/basics-bins.xml:
15424         * docs/manual/basics-bus.xml:
15425         * docs/manual/basics-elements.xml:
15426         * docs/manual/basics-helloworld.xml:
15427         * docs/manual/basics-pads.xml:
15428         * docs/manual/highlevel-components.xml:
15429         * docs/manual/manual.xml:
15430         * docs/manual/thread.fig:
15431           Update (until threads/scheduling) Application Development Manual;
15432           remove GstThread, add GstBus, add simple porting checklist, add
15433           documentation for tag writing, clocks, make all examples until this
15434           part compile and run.
15435         * examples/manual/Makefile.am:
15436           Update from changes to Application Development Manual; add bus
15437           example, remove thread example.
15438
15439 2005-06-28  Wim Taymans  <wim@fluendo.com>
15440
15441         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
15442         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
15443         (gst_bus_source_dispatch):
15444         Add debugging messages.
15445         Make internal methods static.
15446         Handle the case where the bus is flushed in the handler.
15447         
15448         * gst/gstelement.c: (gst_element_get_bus):
15449         Fix refcount in _get_bus();
15450
15451         * gst/gstpipeline.c: (gst_pipeline_change_state),
15452         (gst_pipeline_get_clock_func):
15453         Clock refcounting fixes.
15454         Handle the case where preroll timed out more gracefully.
15455         
15456         * gst/gstsystemclock.c: (gst_system_clock_dispose):
15457         Clean up the internal thread in dispose. This is needed
15458         for subclasses that actually get disposed.
15459         
15460         * gst/schedulers/threadscheduler.c:
15461         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
15462         (gst_thread_scheduler_dispose):
15463         Free thread pool in dispose.
15464
15465 2005-06-28  Andy Wingo  <wingo@pobox.com>
15466
15467         * tests/network-clock-utils.scm (debug, print-event): New utils.
15468
15469         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
15470         (*packet-loss*): Unified loss probability.
15471         (network-time): Report out-of-band events.
15472
15473         * tests/plot-data: Add support for out-of-band events. Hack it
15474         into this script instead of passing it down the pipe; should fix
15475         this later.
15476
15477 2005-06-28  Wim Taymans  <wim@fluendo.com>
15478
15479         * docs/gst/gstreamer.types:
15480         * docs/gst/tmpl/gstbasesrc.sgml:
15481         * docs/gst/tmpl/gstpad.sgml:
15482         Docs fixes.
15483
15484 2005-06-28  Wim Taymans  <wim@fluendo.com>
15485
15486         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15487         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
15488         (gst_proxy_pad_do_fixatecaps):
15489         Correctly proxy the check_pull_range function.
15490
15491 2005-06-28  Andy Wingo  <wingo@pobox.com>
15492
15493         * tests/network-clock.scm: Removed need for slib.
15494         
15495 2005-06-28  Wim Taymans  <wim@fluendo.com>
15496
15497         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
15498         (gst_basesink_preroll_queue_flush):
15499         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
15500         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
15501         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15502         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
15503         (gst_proxy_pad_set_property):
15504         * gst/gstpad.c:
15505         * gst/gstpad.h:
15506         * gst/gstqueue.c: (gst_queue_init):
15507         The deprecated pad loop function is removed now.
15508
15509 2005-06-28  Andy Wingo  <wingo@pobox.com>
15510
15511         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
15512         New parameters, simulate network packet loss.
15513
15514         * tests/network-clock-utils.scm: Initialize the RNG.
15515
15516 2005-06-28  Wim Taymans  <wim@fluendo.com>
15517
15518         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
15519         (gst_basesink_event), (gst_basesink_deactivate):
15520         Flushing the preroll queue always needs to unlock the waiters.
15521
15522 2005-06-28  Edward Hervey  <edward@fluendo.com>
15523
15524         * gst/gstpipeline.c: (gst_pipeline_send_event): 
15525         Wheen a seek was successful on a pipeline, set the stream_time to the
15526         seek offset in order to have a synchronized stream_time.
15527
15528 2005-06-28  Wim Taymans  <wim@fluendo.com>
15529
15530         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15531         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
15532         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
15533         (gst_proxy_pad_do_fixatecaps):
15534         Call wrapper function instead of just calling the function
15535         pointers. This takes care of any locking and whatmore.
15536
15537 2005-06-28  Wim Taymans  <wim@fluendo.com>
15538
15539         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
15540         (gst_pad_pull_range):
15541         * gst/gstpad.h:
15542         CONNECTED -> LINKED.
15543
15544 2005-06-28  Andy Wingo  <wingo@pobox.com>
15545
15546         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
15547         source-munging commit!!!
15548
15549         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
15550         (gst_object_sink): Take gpointer arguments, not GstObject --
15551         avoids casts. Like GLib.
15552
15553         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
15554         activate.
15555
15556 2005-06-27  Andy Wingo  <wingo@pobox.com>
15557
15558         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
15559         remaining buffer.
15560
15561         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
15562         returns a sorted copy of the trace list.
15563         (gst_alloc_trace_print_live): New API, only prints traces with
15564         live objects. Sort the list.
15565         (gst_alloc_trace_print_all): Sort the list.
15566         (gst_alloc_trace_print): Align columns.
15567
15568         * gst/elements/gstttypefindelement.c:
15569         * gst/elements/gsttee.c:
15570         * gst/base/gstbasesrc.c:
15571         * gst/base/gstbasesink.c:
15572         * gst/base/gstbasetransform.c:
15573         * gst/gstqueue.c: Adapt for pad activation changes.
15574
15575         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
15576         sched.
15577         (gst_pipeline_dispose): Drop ref on sched.
15578
15579         * gst/gstpad.c (gst_pad_init): Set the default activate func.
15580         (gst_pad_activate_default): Push mode by default.
15581         (pre_activate_switch, post_activate_switch): New stubs, things to
15582         do before and after switching activation modes on pads.
15583         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
15584         the pad's activate function to choose which mode to activate.
15585         Shortcut on deactivation and call the right function directly.
15586         (gst_pad_activate_pull): New API, (de)activates a pad in pull
15587         mode.
15588         (gst_pad_activate_push): New API, same for push mode.
15589         (gst_pad_set_activate_function) 
15590         (gst_pad_set_activatepull_function) 
15591         (gst_pad_set_activatepush_function): Setters for new API.
15592
15593         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
15594         Trace all miniobjects.
15595         (gst_mini_object_make_writable): Unref the arg if we copy, like
15596         gst_caps_make_writable.
15597
15598         * gst/gstmessage.c (_gst_message_initialize): No trace init.
15599
15600         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
15601         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
15602         Adapt for new pad API.
15603
15604         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
15605
15606         * gst/gstelement.h:
15607         * gst/gstelement.c (gst_element_iterate_src_pads) 
15608         (gst_element_iterate_sink_pads): New API functions.
15609         
15610         * gst/gstelement.c (iterator_fold_with_resync): New utility,
15611         should fold into gstiterator.c in some form.
15612         (gst_element_pads_activate): Simplified via use of fold and
15613         delegation of decisions to gstpad->activate.
15614
15615         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
15616         help in debugging.
15617
15618         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
15619         class once in init, like gstmessage. Didn't run into this issue
15620         but it seems correct. Don't initialize a trace, gstminiobject does
15621         that.
15622
15623         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
15624         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
15625         to the bus.
15626         (assert_live_count): New util function, uses alloc traces to check
15627         cleanup.
15628
15629         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
15630         To be modified when unlink drops the internal pad.
15631
15632 2005-06-27  Wim Taymans  <wim@fluendo.com>
15633
15634         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
15635         (gst_bin_change_state):
15636         Cleanup the get_state() function a little, make sure it
15637         iterates the same set of elements.
15638         Added stub iterate_state_order().
15639
15640 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
15641
15642         * docs/gst/gstreamer-docs.sgml:
15643         * docs/gst/gstreamer-sections.txt:
15644         * docs/gst/gstreamer.types:
15645         * docs/gst/tmpl/gstbasesink.sgml:
15646         * docs/gst/tmpl/gstbasesrc.sgml:
15647         * docs/gst/tmpl/gstbasetransform.sgml:
15648         * docs/gst/tmpl/gstelement.sgml:
15649         * docs/gst/tmpl/gstiterator.sgml:
15650         * gst/base/gstbasesrc.c:
15651         * gst/base/gstbasesrc.h:
15652         * gst/base/gstbasetransform.h:
15653         * gst/gstelement.c:
15654         * gst/gstiterator.h:
15655           adding basetransform and iterator docs
15656
15657 2005-06-27  Andy Wingo  <wingo@pobox.com>
15658
15659         * docs/design/part-activation.txt: Notes on how activation should
15660         work -- not quite implemented yet.
15661
15662 2005-06-25  Wim Taymans  <wim@fluendo.com>
15663
15664         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
15665         At least get the chain function correct, needs more
15666         fixing.
15667
15668 2005-06-25  Wim Taymans  <wim@fluendo.com>
15669
15670         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15671         (gst_basesink_handle_object), (gst_basesink_event),
15672         (gst_basesink_do_sync), (gst_basesink_handle_event),
15673         (gst_basesink_change_state):
15674         * gst/gsttask.h:
15675         Right, two problems here: ghostpads don't take locks and
15676         glib _rec_mutex_lock_full() with depth==0 still locks.
15677         Catch illegal locking and g_warn them.
15678
15679 2005-06-25  Wim Taymans  <wim@fluendo.com>
15680
15681         * check/states/sinks.c: (START_TEST), (gst_object_suite):
15682         Have to check for completion now...
15683
15684 2005-06-25  Wim Taymans  <wim@fluendo.com>
15685
15686         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15687         (gst_basesink_handle_object), (gst_basesink_event),
15688         (gst_basesink_do_sync), (gst_basesink_handle_event),
15689         (gst_basesink_change_state):
15690         * gst/gstpad.h:
15691         Unlock STREAM_LOCK whatever the recursion was.
15692
15693 2005-06-25  Wim Taymans  <wim@fluendo.com>
15694
15695         * gst/base/gstbasesink.c: (gst_basesink_set_property),
15696         (gst_basesink_preroll_queue_empty),
15697         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
15698         (gst_basesink_event), (gst_basesink_do_sync),
15699         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
15700         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
15701         (gst_basesink_change_state):
15702         Reworked the base sink, handle event and buffer serialisation
15703         correctly and removed possible deadlock.
15704         Handle EOS correctly.
15705
15706 2005-06-25  Wim Taymans  <wim@fluendo.com>
15707
15708         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
15709         (gst_pipeline_change_state):
15710         * tools/gst-launch.c: (check_intr), (event_loop), (main):
15711         Allow elements to post EOS in the state change function.
15712         Fix up -launch, make it exit the poll loop when the
15713         pipeline actually changed state.
15714         Fix up warning parsing in -launch.
15715
15716 2005-06-25  Wim Taymans  <wim@fluendo.com>
15717
15718         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
15719         (gst_tee_sink_activate):
15720         Core takes STREAM_LOCK for us now.
15721
15722 2005-06-25  Wim Taymans  <wim@fluendo.com>
15723
15724         * gst/gstelement.c: (gst_element_get_state_func),
15725         (gst_element_set_state):
15726         * gst/gstelement.h:
15727         * gst/gstmessage.c: (gst_message_parse_error),
15728         (gst_message_parse_warning):
15729         Keep track of current target state while performing a state
15730         change so that subclasses can do something interesting.
15731         Fix parsing of warning/error messages when GError is NULL.
15732
15733 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
15734
15735         * docs/gst/Makefile.am:
15736         * docs/gst/gstreamer-docs.sgml:
15737         * docs/gst/gstreamer-sections.txt:
15738         * docs/gst/gstreamer.types:
15739         * docs/gst/tmpl/gstbasesink.sgml:
15740         * docs/gst/tmpl/gstbasesrc.sgml:
15741         * docs/gst/tmpl/gstbin.sgml:
15742         * docs/gst/tmpl/gstcompat.sgml:
15743         * docs/gst/tmpl/gstfakesink.sgml:
15744         * docs/gst/tmpl/gstfakesrc.sgml:
15745         * docs/gst/tmpl/gstfilesink.sgml:
15746         * docs/gst/tmpl/gstfilesrc.sgml:
15747         * docs/gst/tmpl/gstindex.sgml:
15748         * docs/manual/appendix-quotes.xml:
15749         * gst/base/gstbasesrc.h:
15750         * gst/elements/gstfakesrc.h:
15751         * gst/gstmessage.h:
15752           start pulling in base classes and elements in our docs
15753
15754 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
15755
15756         * docs/gst/Makefile.am:
15757         * docs/libs/Makefile.am:
15758           fixed make distcheck with gtk-doc 1.3
15759
15760 2005-06-23  Wim Taymans  <wim@fluendo.com>
15761
15762         * gst/gstelement.c: (gst_element_get_state_func),
15763         (gst_element_set_state), (gst_element_change_state):
15764         When the state did not change, also report NO_PREROLL
15765         when it matters.
15766
15767 2005-06-23  Wim Taymans  <wim@fluendo.com>
15768
15769         * gst/gstpad.c: (gst_pad_event_default):
15770         * gst/gstqueue.c: (gst_queue_loop):
15771         No unsafe task pausing please.
15772
15773 2005-06-23  Wim Taymans  <wim@fluendo.com>
15774
15775         * gst/schedulers/threadscheduler.c:
15776         (gst_thread_scheduler_task_start),
15777         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
15778         Ref the task before pushing it on the threadpool. This
15779         makes sure that we have a ref when the threadfunction is
15780         actually called.
15781
15782 2005-06-23  Andy Wingo  <wingo@pobox.com>
15783
15784         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
15785         offset is greater than the file's size.
15786
15787         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
15788         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
15789         * gst/gstobject.c (gst_object_class_init): Make the class lock
15790         recursive. Wim won't let me drop deep_notify. Decodebin works
15791         again, whoopdy doo.
15792
15793         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
15794         internal pad, and hacks accordingly. Doesn't do it on the target
15795         pad because we change its caps. Probably catches all cases of
15796         interest tho.
15797         (gst_ghost_pad_set_property): Connect to notify::caps as
15798         appropritate.
15799
15800         * tests/network-clock.scm (plot-simulation): Pipe data to the
15801         elite python skript.
15802
15803         * tests/network-clock-utils.scm (define-parameter): New macro,
15804         defines a parameter that can be set via the command line.
15805         (set-parameter!, parse-parameter-arguments): Command line args
15806         parser.
15807
15808         * tests/plot-data: Simple matplotlib-based plotter, takes input on
15809         stdin.
15810
15811 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
15812
15813         * gst/elements/gsttypefindelement.c:
15814         (gst_type_find_element_handle_event):
15815           Don't restart typefinding on a discont.
15816         * gst/gstelement.c: (gst_element_set_state):
15817           Debug spelling fix.
15818         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
15819           Allow changing mode of an active pad.
15820           Debug output fixes.
15821         * gst/registries/gstlibxmlregistry.c: (load_feature):
15822           Don't cast a static pad template to a normal pad template.
15823
15824 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
15825
15826         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15827         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
15828           remove gst_strtoll completely, since it didn't actually do
15829           anything more than what g_ascii_strtoull already does.
15830           check for range errors when deserializing
15831           do a cast for the unsigned cases; but further fixing needs
15832           a decision on what the interpretation of "(int)" and
15833           deserialization should be for values that fall outside the
15834           type's boundaries (ie, refuse, or interpret as casting)
15835
15836 2005-06-23  Wim Taymans  <wim@fluendo.com>
15837
15838         * check/Makefile.am:
15839         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
15840         * docs/design/part-live-source.txt:
15841         * docs/design/part-states.txt:
15842         * gst/base/gstbasesrc.c: (gst_basesrc_init),
15843         (gst_basesrc_set_live), (gst_basesrc_is_live),
15844         (gst_basesrc_get_range), (gst_basesrc_activate),
15845         (gst_basesrc_change_state):
15846         * gst/base/gstbasesrc.h:
15847         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
15848         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
15849         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
15850         * gst/gstelement.c: (gst_element_get_state_func),
15851         (gst_element_set_state):
15852         * gst/gstelement.h:
15853         * gst/gsttypes.h:
15854         * tools/gst-launch.c: (event_loop), (main):
15855         Added support for live sources and other elements that
15856         cannot do preroll.
15857         Updated design docs, added live-source design doc.
15858         Implemented live source functionality in basesrc
15859         Fix error condition in _bin_get_state()
15860         Implement live source handling in -launch.
15861         Added check for live sources.
15862         Fixed case in GstBin where elements were changed state
15863         multiple times.
15864
15865
15866 2005-06-23  Andy Wingo  <wingo@pobox.com>
15867
15868         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
15869         borken refcounting.
15870
15871         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
15872         gst_caps_replace takes care of this for us.
15873
15874         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
15875         gst_pad_set_caps on the target, not just its setcaps() function.
15876
15877         * tests/network-clock.scm: 
15878         * tests/network-clock-utils.scm: A network clock simulator.
15879         Something of an algorithmic testbed before doing something in C.
15880
15881 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
15882
15883         * check/Makefile.am:
15884         * check/gst/capslist.h:
15885           copy over from 0.8, and add two with bitmasks specified with
15886           (int) 0xFF...
15887         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
15888           add test to parse everything from capslist.h
15889         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
15890         (main):
15891           add test for structure deserialization
15892         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15893           add tests for deserialization of strings to int types
15894         * gst/gststructure.c: (gst_structure_nth_field_name):
15895         * gst/gststructure.h:
15896           add a way to get the name of a field referenced by index
15897         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
15898           instead of checking if the resulting long long lies between
15899           min and max, we check if the long long would fit into
15900           a number of bytes for the final type.
15901           This fixes cases where a string represents 2^32 - 1, which
15902           when cast to int would be the (valid) -1, but is bigger than
15903           G_MAXINT
15904
15905 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
15906
15907         * gst/parse/grammar.y:
15908           add a log line for type deserialization
15909
15910 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
15911
15912         * check/gst/gstvalue.c: (START_TEST):
15913         * gst/gstvalue.c: (gst_value_deserialize):
15914           return long long, not int, so gint64 deserialization actually
15915           works.  Is there any flag that makes the compiler check this ?
15916           Fixes #308559
15917
15918 2005-06-22  Wim Taymans  <wim@fluendo.com>
15919
15920         * gst/gstbuffer.h:
15921         Added convenience macros for setting buffers in GValue.
15922
15923 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
15924
15925         * check/gst/.cvsignore:
15926         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15927           add a test deserializing int64, and comment part out because
15928           it fails, yay !
15929
15930 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
15931
15932         * check/Makefile.am:
15933         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
15934         * testsuite/Makefile.am:
15935         * testsuite/caps/Makefile.am:
15936         * testsuite/caps/value_serialize.c:
15937         * testsuite/test_gst_init.c:
15938           move a value_serialize test over
15939
15940 2005-06-20  Wim Taymans  <wim@fluendo.com>
15941
15942         * gst/gstpad.c:
15943         Small doc updates.
15944         
15945         * gst/gstvalue.c: (gst_value_compare_buffer),
15946         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
15947         (gst_value_compare_flags), (gst_value_serialize_flags),
15948         (gst_value_deserialize_flags), (_gst_value_initialize):
15949         Fix serialisation of buffers, they are not boxed types anymore
15950
15951 2005-06-20  Wim Taymans  <wim@fluendo.com>
15952
15953         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
15954         Testcase to show error in buffer-on-caps serialisation.
15955
15956 2005-06-20  Andy Wingo  <wingo@pobox.com>
15957
15958         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
15959         will be adding to later.
15960
15961         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
15962         if its socks fill with rocks.
15963         (gst_system_clock_obtain): Set the name on object construction.
15964         Avoid double-checked locking.
15965
15966 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
15967
15968         * gst/gsturi.c: (gst_element_make_from_uri):
15969           Fix potential endless loop.
15970
15971 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
15972
15973         * check/Makefile.am:
15974           add gsttag
15975         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
15976         (main):
15977           move over from testsuite dir and clean up
15978         * configure.ac:
15979         * gst/gsttag.c:
15980         * testsuite/Makefile.am:
15981         * testsuite/tags/.cvsignore:
15982         * testsuite/tags/Makefile.am:
15983         * testsuite/tags/merge.c:
15984           remove testsuite/tags
15985
15986 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
15987
15988         * docs/gst/gstreamer-sections.txt:
15989         * docs/gst/tmpl/gstenumtypes.sgml:
15990         * win32/gstenumtypes.c:
15991           clean up documentation build a little
15992
15993 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
15994
15995         * check/gstcheck.h:
15996           add macros for checking refcounts on objects and caps
15997         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
15998           add some more unit tests
15999         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
16000         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
16001           fix leaked refcounts (I hope :)) so unittest works
16002         * gst/gstpad.h:
16003           whitespace removal
16004
16005 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
16006
16007         * configure.ac: back to HEAD
16008
16009 === release 0.9.1 ===
16010
16011 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
16012
16013         * NEWS:
16014         * RELEASE:
16015           updated
16016
16017 2005-06-17  Andy Wingo  <wingo@pobox.com>
16018
16019         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
16020         assert; it's always possible that the pad gets deactivated in
16021         between the checks in gstpad.c and the implementation. Rely on
16022         finish_preroll() to return a FLUSHING or similar instead of on the
16023         assert.
16024         
16025         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
16026         clock and post an EOS message if we come out of finish_preroll in
16027         the playing state.
16028
16029 2005-06-16  David Schleef  <ds@schleef.org>
16030
16031         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
16032         (gst_capsfilter_set_property): Allow NULL as possible value
16033         for filter_caps property, indicating GST_CAPS_ANY.
16034
16035 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
16036
16037         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
16038           fix debug output
16039         * gst/schedulers/Makefile.am:
16040           use libgst prefix
16041         * gstreamer.spec.in:
16042           fix spec for it
16043
16044 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
16045
16046         * gstreamer.spec.in:
16047           clean up
16048
16049 2005-06-08  Andy Wingo  <wingo@pobox.com>
16050
16051         * gst/gstutils.c: RPAD fixes all around.
16052         (gst_element_link_pads): Refcounting fixes.
16053
16054         * tools/gst-inspect.c:
16055         * tools/gst-xmlinspect.c:
16056         * parse/grammar.y:
16057         * gst/base/gsttypefindhelper.c:
16058         * gst/base/gstbasesink.c:
16059         * gst/gstqueue.c: RPAD fixes.
16060
16061         * gst/gstghostpad.h:
16062         * gst/gstghostpad.c: New ghost pad implementation as full proxy
16063         pads. The tricky thing is they provide both source and sink
16064         interfaces, since they proxy the internal pad for the external
16065         pad, and vice versa. Implement with lower-level ProxyPad objects,
16066         with the interior proxy pad as a child of the exterior ghost pad.
16067         Should write a doc on this.
16068         
16069         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
16070         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
16071         gst_object API.
16072         
16073         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
16074         pads are real pads. No ghost pads in this file. Not documenting
16075         the myriad s/RPAD/PAD/ and REALIZE fixes.
16076         (gst_pad_class_init): Add properties for "direction" and
16077         "template". Both are construct-only, so they can't change during
16078         the life of the pad. Fixes properly deriving from GstPad.
16079         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
16080         derived objects, just set properties when creating the objects via
16081         g_object_new.
16082         (gst_pad_get_parent): Implement as a function, return NULL if the
16083         parent is not an element.
16084         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
16085         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
16086         
16087         * gst/gstobject.c (gst_object_class_init): Make name a construct
16088         property. Don't set it in the object init.
16089
16090         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
16091         with UNKNOWN direction.
16092         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
16093         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
16094         (gst_element_remove_pad): Remove ghost-pad special cases.
16095         (gst_element_pads_activate): Remove rpad cruft.
16096
16097         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
16098         catch the pad's-parent-not-an-element case.
16099
16100         * gst/gst.h: Include gstghostpad.h.
16101
16102         * gst/gst.c (init_post): No more real, ghost pads.
16103
16104         * gst/Makefile.am: Add gstghostpad.[ch].
16105
16106         * check/Makefile.am:
16107         * check/gst/gstbin.c:
16108         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
16109         into a bin creates ghost pads, and that the refcounts are right.
16110         Partly moved from gstbin.c.
16111
16112 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
16113
16114         * check/gst-libs/.cvsignore:
16115         * check/gst/.cvsignore:
16116         * check/pipelines/.cvsignore:
16117           ignore more
16118         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
16119         (START_TEST), (cleanup_suite), (main):
16120           add some tests related to cleanup after running pipelines
16121
16122 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
16123
16124         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
16125           add a testsuite for GstBuffer
16126
16127 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
16128
16129         * gst/gstminiobject.h:
16130           add defines for accessing the refcount
16131
16132 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
16133
16134         * Makefile.am: added support for html unit test coverage reports
16135
16136 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
16137
16138         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
16139           Free existing caps if the capsfilter changes. Add a FIXME about
16140           setting those caps on the pads.
16141
16142         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
16143           Before adding a ghost pad to a parent bin, check that there isn't
16144           already one for the element on the bin. Prevents infinite recursion
16145           when using decodebin in parse pipelines. Andy says he'll rewrite the
16146           way this works anyway, so ignore the hack.
16147
16148 2005-06-02  Andy Wingo  <wingo@pobox.com>
16149
16150         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
16151         file size, pass it on to the type find helper.
16152
16153         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
16154         segment_start and segment_end properly according to the seek
16155         method. Segment_end is still a bit flaky because offset can be
16156         negative for CUR and END cases, but it takes -1 as an "unset"
16157         value.
16158
16159 2005-06-02  Wim Taymans  <wim@fluendo.com>
16160
16161         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
16162         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
16163         (gst_basesink_activate):
16164         * gst/base/gstbasesink.h:
16165         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16166         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
16167         (gst_pad_query), (gst_pad_start_task):
16168         * gst/gstpad.h:
16169         * gst/gstqueue.c: (gst_queue_bufferalloc),
16170         (gst_queue_handle_sink_event), (gst_queue_chain):
16171         Bufferalloc: return GstFlowReturn to more accuratly report
16172         why allocation failed.
16173
16174 2005-06-02  Wim Taymans  <wim@fluendo.com>
16175
16176         * gst/gstpipeline.c: (gst_pipeline_send_event):
16177         Take snapshot of state without blocking.
16178
16179 2005-06-02  Wim Taymans  <wim@fluendo.com>
16180
16181         * docs/design/part-TODO.txt:
16182         * docs/design/part-caps.txt:
16183         * docs/design/part-clocks.txt:
16184         * docs/design/part-negotiation.txt:
16185         * docs/design/part-preroll.txt:
16186         Small doc updates 
16187
16188 2005-05-30  Wim Taymans  <wim@fluendo.com>
16189
16190         * gst/elements/gstidentity.c: (gst_identity_event),
16191         (gst_identity_transform), (gst_identity_get_property):
16192         Protect last_message property as it is accessed from
16193         multiple threads.
16194
16195 2005-05-30  Wim Taymans  <wim@fluendo.com>
16196
16197         * gst/gstelement.c: (gst_element_init),
16198         (gst_element_pads_activate), (gst_element_change_state):
16199         Slicker pad activation code.
16200
16201 2005-05-30  Wim Taymans  <wim@fluendo.com>
16202
16203         * gst/Makefile.am:
16204         * gst/gstelement.h:
16205         * gst/gstelementfactory.h:
16206         * gst/gsttypes.h:
16207         Move elementfactory methods to separate .h file.
16208
16209 2005-05-30  Wim Taymans  <wim@fluendo.com>
16210
16211         * docs/design/part-overview.txt:
16212         * gst/gstsystemclock.h:
16213         Small typo fixes, doc updates.
16214
16215 2005-05-30  Wim Taymans  <wim@fluendo.com>
16216
16217         * gst/gst.c: (gst_init_get_popt_table), (init_post),
16218         (init_popt_callback):
16219         Remove cpu-opt flag.
16220
16221 2005-05-30  Wim Taymans  <wim@fluendo.com>
16222
16223         * gst/gstbuffer.c: (gst_subbuffer_finalize),
16224         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
16225         * gst/gstbuffer.h:
16226         Avoid typechecking in places where not needed.
16227         Added accessor for malloc_data.
16228
16229 2005-05-30  Wim Taymans  <wim@fluendo.com>
16230
16231         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
16232         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
16233         (gst_pad_configure_sink), (gst_pad_configure_src),
16234         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
16235         (gst_pad_start_task):
16236         Propagate errors from _set_caps() in configure_src/sink
16237         functions instead of returning TRUE.
16238         FLUSH events can travel up and downstream
16239
16240
16241 2005-05-30  Wim Taymans  <wim@fluendo.com>
16242
16243         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
16244         (gst_basesink_activate):
16245         Handle EOS in preroll.
16246
16247 2005-05-30  Wim Taymans  <wim@fluendo.com>
16248
16249         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
16250         (gst_queue_loop), (gst_queue_handle_src_event):
16251         Remove old pieces of code
16252         Flushing the queue in an upstream event is a very bad idea.
16253
16254 2005-05-26  Andy Wingo  <wingo@pobox.com>
16255
16256         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
16257         gst_value_set_mini_object so as to add a ref on the object (which
16258         will be removed when the value is unset).
16259
16260         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
16261         arg type in ::handoff.
16262
16263         * gst/gstelement.c (gst_element_change_state): Also deactivate
16264         pads in READY->NULL, just in case the element didn't make it to
16265         PAUSED. Wingo tested, Wim approved.
16266
16267 2005-05-26  Wim Taymans  <wim@fluendo.com>
16268
16269         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16270         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
16271         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
16272         A flushing pad cannot be used to alloc_buffer from.
16273
16274 2005-05-26  Wim Taymans  <wim@fluendo.com>
16275
16276         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
16277         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
16278         (gst_bus_source_dispatch), (gst_bus_source_finalize),
16279         (gst_bus_create_watch), (gst_bus_add_watch_full):
16280         * gst/gstbus.h:
16281         Implement a real GSource and use g_main_context_wakeup() to
16282         signal new messages instead of the socketpair.
16283
16284 2005-05-25  Wim Taymans  <wim@fluendo.com>
16285
16286         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
16287         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
16288         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16289         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
16290         (gst_pad_send_event), (gst_pad_start_task):
16291         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
16292         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
16293         (gst_queue_sink_activate), (gst_queue_src_activate),
16294         (gst_queue_change_state):
16295         * gst/gstqueue.h:
16296         Fix state changes for non sinks. We now change sinks, then elements
16297         with unconnected srcpads, then the rest.
16298         More efficient queue unlocking in flush and state changes.
16299         Set the pad activate mode even if it does not have an activate
16300         function.
16301
16302 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16303
16304         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
16305           Don't go in pull mode for non-seekable sources.
16306         * gst/elements/gsttypefindelement.h:
16307         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
16308         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
16309         (free_entry), (stop_typefinding),
16310         (gst_type_find_element_handle_event), (find_peek),
16311         (gst_type_find_element_chain), (do_pull_typefind),
16312         (gst_type_find_element_change_state):
16313           Allow typefinding (w/o seeking) in push-mode, simplified version
16314           of what was in 0.8.
16315         * gst/gstutils.c: (gst_buffer_join):
16316         * gst/gstutils.h:
16317           gst_buffer_join() from 0.8.
16318
16319 2005-05-25  Wim Taymans  <wim@fluendo.com>
16320
16321         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16322         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
16323         (gst_pad_send_event), (gst_pad_start_task):
16324         Disable attempt at mode switching until it is figured out.
16325
16326 2005-05-25  Wim Taymans  <wim@fluendo.com>
16327
16328         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
16329         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
16330         (gst_basesink_finish_preroll), (gst_basesink_chain),
16331         (gst_basesink_loop), (gst_basesink_activate),
16332         (gst_basesink_change_state):
16333         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
16334         (gst_basesrc_get_range), (gst_basesrc_loop),
16335         (gst_basesrc_activate):
16336         * gst/elements/gsttee.c: (gst_tee_sink_activate):
16337         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
16338         (gst_real_pad_init), (gst_real_pad_set_property),
16339         (gst_real_pad_get_property), (gst_pad_set_active),
16340         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
16341         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
16342         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
16343         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
16344         (gst_pad_event_default_dispatch), (gst_pad_event_default),
16345         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
16346         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
16347         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
16348         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
16349         (gst_pad_stop_task):
16350         * gst/gstpad.h:
16351         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
16352         (gst_queue_loop), (gst_queue_src_activate):
16353         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
16354         (gst_task_get_state):
16355         * gst/gsttask.h:
16356         * gst/schedulers/threadscheduler.c:
16357         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
16358         Implement gst_pad_pause/start/stop_task(), take STREAM lock
16359         in task function.
16360         Remove ACTIVE pad flag, use FLUSHING everywhere
16361         Added _pad_chain(), _pad_get_range() to call chain/getrange 
16362         functions.
16363         Add locks around IS_FLUSHING when reading.
16364         Take STREAM lock in chain(), get_range() functions so plugins
16365         don't need to take it anymore.
16366         
16367
16368
16369 2005-05-25  Wim Taymans  <wim@fluendo.com>
16370
16371         * tools/gst-launch.c: (event_loop):
16372         Unref message after using its contents instead of
16373         before.
16374
16375 2005-05-24  Wim Taymans  <wim@fluendo.com>
16376
16377         * docs/design/draft-ghostpads.txt:
16378         * docs/design/draft-push-pull.txt:
16379         * docs/design/draft-query.txt:
16380         * docs/design/part-overview.txt:
16381         Docs updates, added general overview doc.
16382
16383 2005-05-21  David Schleef  <ds@schleef.org>
16384
16385         * docs/gst/tmpl/old/GstBin.sgml:
16386         * docs/gst/tmpl/old/GstBuffer.sgml:
16387         * docs/gst/tmpl/old/GstCaps.sgml:
16388         * docs/gst/tmpl/old/GstClock.sgml:
16389         * docs/gst/tmpl/old/GstCompat.sgml:
16390         * docs/gst/tmpl/old/GstData.sgml:
16391         * docs/gst/tmpl/old/GstElement.sgml:
16392         * docs/gst/tmpl/old/GstEvent.sgml:
16393         * docs/gst/tmpl/old/GstIndex.sgml:
16394         * docs/gst/tmpl/old/GstStructure.sgml:
16395         * docs/gst/tmpl/old/GstTag.sgml:
16396         * docs/gst/tmpl/old/cothreads.sgml:
16397         * docs/gst/tmpl/old/cothreads_compat.sgml:
16398         * docs/gst/tmpl/old/gettext.sgml:
16399         * docs/gst/tmpl/old/gobject2gtk.sgml:
16400         * docs/gst/tmpl/old/grammar.tab.sgml:
16401         * docs/gst/tmpl/old/gst-i18n-app.sgml:
16402         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
16403         * docs/gst/tmpl/old/gst_private.sgml:
16404         * docs/gst/tmpl/old/gstaggregator.sgml:
16405         * docs/gst/tmpl/old/gstarch.sgml:
16406         * docs/gst/tmpl/old/gstatomic_impl.sgml:
16407         * docs/gst/tmpl/old/gstbufferstore.sgml:
16408         * docs/gst/tmpl/old/gstdata_private.sgml:
16409         * docs/gst/tmpl/old/gstdisksink.sgml:
16410         * docs/gst/tmpl/old/gstdisksrc.sgml:
16411         * docs/gst/tmpl/old/gstelementfactory.sgml:
16412         * docs/gst/tmpl/old/gstextratypes.sgml:
16413         * docs/gst/tmpl/old/gstfakesink.sgml:
16414         * docs/gst/tmpl/old/gstfakesrc.sgml:
16415         * docs/gst/tmpl/old/gstfdsink.sgml:
16416         * docs/gst/tmpl/old/gstfdsrc.sgml:
16417         * docs/gst/tmpl/old/gstfilesink.sgml:
16418         * docs/gst/tmpl/old/gstfilesrc.sgml:
16419         * docs/gst/tmpl/old/gsthttpsrc.sgml:
16420         * docs/gst/tmpl/old/gstidentity.sgml:
16421         * docs/gst/tmpl/old/gstindexfactory.sgml:
16422         * docs/gst/tmpl/old/gstmarshal.sgml:
16423         * docs/gst/tmpl/old/gstmd5sink.sgml:
16424         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
16425         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
16426         * docs/gst/tmpl/old/gstpadtemplate.sgml:
16427         * docs/gst/tmpl/old/gstpipefilter.sgml:
16428         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
16429         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
16430         * docs/gst/tmpl/old/gstshaper.sgml:
16431         * docs/gst/tmpl/old/gstspider.sgml:
16432         * docs/gst/tmpl/old/gstspideridentity.sgml:
16433         * docs/gst/tmpl/old/gststatistics.sgml:
16434         * docs/gst/tmpl/old/gsttee.sgml:
16435         * docs/gst/tmpl/old/gsttimecache.sgml:
16436         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
16437         * docs/gst/tmpl/old/gstxmlregistry.sgml:
16438         * docs/gst/tmpl/old/gthread-cothreads.sgml:
16439         * docs/gst/tmpl/old/types.sgml:
16440           I didn't intend to add these or check them in.
16441
16442 2005-05-19  David Schleef  <ds@schleef.org>
16443
16444         * configure.ac: Use -no-common everywhere.  In a sane world, it
16445           would be the default in libtool, because without it, you can't
16446           build DLLs on Windows.
16447         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
16448         * docs/gst/gstreamer-sections.txt:
16449         * docs/gst/tmpl/gstcpu.sgml:
16450         * docs/gst/tmpl/gstdata.sgml:
16451         * docs/gst/tmpl/gstthread.sgml:
16452
16453 2005-05-19  David Schleef  <ds@schleef.org>
16454
16455         * gst/gstminiobject.c: (gst_value_set_mini_object),
16456         (gst_value_take_mini_object), (gst_value_get_mini_object):
16457         * gst/gstminiobject.h: Add GValue set/get functions.
16458
16459 2005-05-19  Wim Taymans  <wim@fluendo.com>
16460
16461         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
16462         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
16463         (gst_subbuffer_init), (gst_buffer_is_span_fast):
16464         * gst/gstbuffer.h:
16465         * gst/gstbus.c: (gst_bus_post):
16466         * gst/gstelement.c: (gst_element_get_random_pad):
16467         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
16468         Make subbufer unref the parent in finalize.
16469         some more debugging info.
16470
16471
16472 2005-05-19  Wim Taymans  <wim@fluendo.com>
16473
16474         * gst/base/gstbasesink.c: (gst_basesink_class_init),
16475         (gst_basesink_init), (gst_basesink_finalize),
16476         (gst_basesink_activate), (gst_basesink_change_state):
16477         Don't free preroll queue too early.
16478
16479 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16480
16481         * gst/Makefile.am:
16482         * gst/ROADMAP:
16483           Hi, I'm outdated. Please shoot me.
16484
16485 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16486
16487         * gst/gstpipeline.c: (gst_pipeline_send_event):
16488           Do not access variables after they have been deleted.
16489
16490 2005-05-19  Wim Taymans  <wim@fluendo.com>
16491
16492         * tools/gst-inspect.c: (print_plugin_features):
16493         A plugin feature does unfortunatly not use the
16494         object name yet...
16495
16496 2005-05-18  Wim Taymans  <wim@fluendo.com>
16497
16498         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
16499         Port _span() functions to new subbuffers.
16500
16501 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16502
16503         * gst/gstbin.c: (gst_bin_add_func):
16504           Fix clock settery in bins when adding kids after the clock has
16505           been selected.
16506
16507 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16508
16509         * gst/elements/gstidentity.c: (gst_identity_class_init):
16510           Workaround until signals support GstMiniObject.
16511
16512 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
16513
16514         * gst/gstbuffer.c:
16515         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
16516
16517 2005-05-18  Wim Taymans  <wim@fluendo.com>
16518
16519         * gst/base/Makefile.am:
16520         * gst/base/gstadapter.c: (gst_adapter_base_init),
16521         (gst_adapter_class_init), (gst_adapter_init),
16522         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
16523         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
16524         (gst_adapter_flush), (gst_adapter_available),
16525         (gst_adapter_available_fast):
16526         * gst/base/gstadapter.h:
16527         Ported and added adapter to the base classes.
16528
16529 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
16530
16531         * gst/gst.c:
16532         * gst/gstmessage.c:
16533           Make sure the class is reffed/unreffed once before threads can be
16534           used.  Fixes #304551.
16535
16536 2005-05-17  Wim Taymans  <wim@fluendo.com>
16537
16538         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
16539         (gst_basesink_chain_unlocked), (gst_basesink_activate):
16540         * gst/gstminiobject.c: (gst_mini_object_get_type),
16541         (gst_mini_object_free):
16542         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
16543         (gst_pad_push), (gst_pad_push_event):
16544         * gst/gstqueue.c: (gst_queue_change_state):
16545         Don't queue buffers in basesink when we are flushing.
16546         Unref buffer when flushing in basesink.
16547         Flush queue when going to READY
16548         Unref buffer when _push() returns an error.
16549         Don't free MiniObject instance when refcount is incremented
16550         in _finalize() so that we can recover objects.
16551
16552 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
16553
16554         * docs/manual/advanced-schedulers.xml:
16555         * docs/manual/appendix-checklist.xml:
16556         * docs/pwg/advanced-clock.xml:
16557         * docs/pwg/advanced-interfaces.xml:
16558         * docs/pwg/advanced-request.xml:
16559         * docs/pwg/advanced-types.xml:
16560         * docs/pwg/intro-preface.xml:
16561         * examples/plugins/example.c: (gst_example_get_type),
16562         (gst_example_class_init), (gst_example_chain),
16563         (gst_example_set_property), (gst_example_get_property),
16564         (gst_example_change_state), (plugin_init):
16565         * examples/plugins/example.h:
16566           small doc fixes
16567
16568 2005-05-17  Wim Taymans  <wim@fluendo.com>
16569
16570         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
16571         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
16572         * gst/gstqueue.c: (gst_queue_change_state):
16573         Clear queue when going to READY.
16574         Remove IN_SETCAPS flag too.
16575
16576 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
16577
16578         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
16579           Remove implicit cast from gboolean to GstElementStateReturn;
16580           make sure we still return failure in paused => ready case if
16581           the parent class fails to change state and our own stop 
16582           vfunc succeeds.
16583
16584 2005-05-17  Wim Taymans  <wim@fluendo.com>
16585
16586         * tools/gst-launch.c: (event_loop):
16587         Message was unreffed too soon.
16588
16589 2005-05-16  Andy Wingo  <wingo@pobox.com>
16590
16591         * gst/gstbin.c (sink_iterator_filter): Err... um...
16592
16593         * check/gst/gstbin.c (test_ghost_pads): New test for the
16594         ghosting-if-elements-not-in-same-bin behavior.
16595
16596 2005-05-16  David Schleef  <ds@schleef.org>
16597
16598         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
16599         accessing refcount directly.
16600
16601 2005-05-15  David Schleef  <ds@schleef.org>
16602
16603         * check/Makefile.am: remove GstData checks
16604         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
16605         * gst/Makefile.am: add miniobject, remove data
16606         * gst/gst.h: add miniobject, remove data
16607         * gst/gstdata.c: remove
16608         * gst/gstdata.h: remove
16609         * gst/gstdata_private.h: remove
16610         * gst/gsttypes.h: remove GstEvent and GstMessage
16611         * gst/gstelement.c: (gst_element_post_message): fix for API changes
16612         * gst/gstmarshal.list: change BOXED -> OBJECT
16613
16614         Implement GstMiniObject.
16615         * gst/gstminiobject.c:
16616         * gst/gstminiobject.h:
16617
16618         Modify to be subclasses of GstMiniObject.
16619         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
16620         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
16621         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
16622         (gst_subbuffer_get_type), (gst_subbuffer_init),
16623         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
16624         (gst_buffer_span):
16625         * gst/gstbuffer.h:
16626         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
16627         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
16628         (_gst_event_copy), (gst_event_new):
16629         * gst/gstevent.h:
16630         * gst/gstmessage.c: (_gst_message_initialize),
16631         (gst_message_get_type), (gst_message_class_init),
16632         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
16633         (gst_message_new), (gst_message_new_error),
16634         (gst_message_new_warning), (gst_message_new_tag),
16635         (gst_message_new_state_changed), (gst_message_new_application):
16636         * gst/gstmessage.h:
16637         * gst/gstprobe.c: (gst_probe_perform),
16638         (gst_probe_dispatcher_dispatch):
16639         * gst/gstprobe.h:
16640         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
16641         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
16642         (_gst_query_copy), (gst_query_new):
16643
16644         Update elements for GstData -> GstMiniObject changes
16645         * gst/gstquery.h:
16646         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
16647         (gst_queue_chain), (gst_queue_loop):
16648         * gst/elements/gstbufferstore.c:
16649         (gst_buffer_store_add_buffer_func),
16650         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
16651         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
16652         (gst_fakesink_render):
16653         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
16654         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
16655         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
16656         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
16657         (gst_filesrc_create_read):
16658         * gst/elements/gstidentity.c: (gst_identity_class_init):
16659         * gst/elements/gsttypefindelement.c:
16660         (gst_type_find_element_src_event), (free_entry_buffers),
16661         (gst_type_find_element_handle_event):
16662         * libs/gst/dataprotocol/dataprotocol.c:
16663         (gst_dp_header_from_buffer):
16664         * libs/gst/dataprotocol/dataprotocol.h:
16665         * libs/gst/dataprotocol/dp-private.h:
16666
16667 2005-05-15  David Schleef  <ds@schleef.org>
16668
16669         * gst/elements/gstelements.c: Don't include headers that were
16670         just removed.
16671
16672 2005-05-15  David Schleef  <ds@schleef.org>
16673
16674         * gst/elements/Makefile.am: Remove some elements that don't
16675         need to be in the core (or even exist at all).
16676         * gst/elements/gstaggregator.c:
16677         * gst/elements/gstaggregator.h:
16678         * gst/elements/gstmd5sink.c:
16679         * gst/elements/gstmd5sink.h:
16680         * gst/elements/gstmultifilesrc.c:
16681         * gst/elements/gstmultifilesrc.h:
16682         * gst/elements/gstpipefilter.c:
16683         * gst/elements/gstpipefilter.h:
16684         * gst/elements/gstshaper.c:
16685         * gst/elements/gstshaper.h:
16686         * gst/elements/gststatistics.c:
16687         * gst/elements/gststatistics.h:
16688         * po/POTFILES.in: Remove above files.
16689
16690 2005-05-14  Andy Wingo  <wingo@pobox.com>
16691
16692         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
16693         so as to get the refs right.
16694         (sink_iterator_filter): New function, wraps bin_element_is_sink,
16695         unreffing objects that don't pass the filter.
16696
16697         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
16698         gst_element_set_bus.
16699         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
16700         normal cases, this will destroy the bus.
16701
16702         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
16703         object.
16704
16705         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
16706         has no sinks.
16707
16708 2005-05-13  Andy Wingo  <wingo@pobox.com>
16709
16710         * gst/gstutils.c (gst_element_link_pads): Instead of calling
16711         gst_pad_link, call pad_link_maybe_ghosting,
16712         (pad_link_maybe_ghosting): Links pads, making sure that the
16713         elements being linked are in the same bin.
16714         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
16715         Helpers for pad_link_maybe_ghosting.
16716
16717 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
16718
16719         * configure.ac:
16720           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
16721
16722 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
16723
16724         * docs/design/part-element-source.txt:
16725           Mention GstPushSrc
16726
16727 2005-05-12  Wim Taymans  <wim@fluendo.com>
16728
16729         * gst/base/gstbasesink.c: (gst_basesink_init),
16730         (gst_basesink_activate):
16731         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
16732         (gst_basesrc_is_seekable):
16733         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
16734         (bin_element_is_sink), (gst_bin_change_state):
16735         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
16736         * gst/gstelement.h:
16737         Identify sinks by their flag to avoid overly complicated
16738         checks (fow now).
16739         Do state changes even for elements not reachable from the
16740         sinks.
16741         BaseSink is a sink now :)
16742         Some more debugging info in the basesrc.
16743
16744
16745 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16746
16747         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
16748           Implement _query on a bin, similar to _send_event.
16749
16750 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
16751
16752         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
16753           Discont event offset format should be GST_FORMAT_BYTES,
16754           not GST_FORMAT_TIME.
16755
16756 2005-05-12  Wim Taymans  <wim@fluendo.com>
16757
16758         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
16759         Same fix as Ronald's but without the signal. 
16760
16761 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16762
16763         * gst/gstutils.c: (gst_element_query_position):
16764           No, an element is not a pad.
16765
16766 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16767
16768         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
16769         (gst_bin_get_state):
16770           If a child is removed from a bin while we remove the child from
16771           the bin and while we're retrieving its state, signal this to the
16772           get_state function so we abort the wait (instead of waiting for
16773           a timeout) and can immediately re-iterate over all other elements.
16774
16775 2005-05-12  Wim Taymans  <wim@fluendo.com>
16776
16777         * gst/base/Makefile.am:
16778         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
16779         (gst_basesrc_start):
16780         * gst/base/gstbasesrc.h:
16781         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
16782         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
16783         (gst_pushsrc_init), (gst_pushsrc_create):
16784         * gst/base/gstpushsrc.h:
16785         Added is_seekable to BaseSrc
16786         Added simple PushSrc.
16787
16788 2005-05-11  Wim Taymans  <wim@fluendo.com>
16789
16790         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
16791         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16792         (gst_element_link_pads), (gst_element_query_position),
16793         (gst_element_query_convert), (intersect_caps_func),
16794         (gst_pad_query_position), (gst_pad_query_convert):
16795         Fix refcounting in utils function.
16796         No point in trying to activate a pad when it's added, it could
16797         be added from the state change function and then we deadlock, the
16798         element has to decide what to do.
16799
16800 2005-05-10  Andy Wingo  <wingo@pobox.com>
16801
16802         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
16803         *all* the arguments.
16804
16805         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
16806         stream lock if it's a FLUSH_DONE; normal flushes don't get the
16807         lock (according to the docs -- if this is wrong change the docs).
16808
16809         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
16810         flush messages in the NULL state.
16811
16812         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
16813         message immediately and return.
16814         (gst_bus_set_flushing): New function. If a bus is flushing, it
16815         flushes out any queued messages and immediately unrefs new
16816         messages. This is so when an element goes to NULL, all of the
16817         unhandled messages coming from it can be freed, and their
16818         references to the element dropped. In other words: message source
16819         ref considered harmful :P
16820
16821         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
16822         we're finished with it.
16823
16824         * gst/gstmessage.c (gst_message_new_state_changed): 
16825
16826 2005-05-10  Wim Taymans  <wim@fluendo.com>
16827
16828         * gst/gstvalue.c: (gst_value_compare_flags),
16829         (gst_value_serialize_flags), (gst_value_deserialize_flags),
16830         (_gst_value_initialize):
16831         Added flags serialize/deserialize/compare code.
16832
16833 2005-05-09  Andy Wingo  <wingo@pobox.com>
16834
16835         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
16836         Intersect the peer's caps with our caps.
16837
16838 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
16839
16840         * gst/base/gsttypefindhelper.c: (helper_find_peek):
16841         * gst/elements/gsttypefindelement.c: (find_peek):
16842           Handle negative offsets better. Fixes decodebin.
16843
16844 2005-05-09  Wim Taymans  <wim@fluendo.com>
16845
16846         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
16847         (gst_base_transform_event):
16848         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
16849         Implement accept_caps.
16850         Fix silly lock/unlock mismatch in base class.
16851
16852 2005-05-09  Wim Taymans  <wim@fluendo.com>
16853
16854         * docs/design/draft-push-pull.txt:
16855         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
16856         * gst/elements/gstfilesink.c: (gst_filesink_init),
16857         (gst_filesink_query):
16858         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
16859         (gst_type_find_handle_src_query), (find_element_get_length):
16860         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
16861         * gst/gstelement.h:
16862         * gst/gstmessage.c:
16863         * gst/gstmessage.h:
16864         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
16865         (gst_real_pad_get_caps_unlocked),
16866         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
16867         (gst_pad_event_default_dispatch), (gst_pad_event_default),
16868         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
16869         (gst_real_pad_dispose), (gst_real_pad_finalize),
16870         (gst_pad_load_and_link), (gst_pad_save_thyself),
16871         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
16872         (gst_pad_check_pull_range), (gst_pad_pull_range),
16873         (gst_pad_template_get_type), (gst_pad_template_class_init),
16874         (gst_pad_template_init), (gst_pad_template_dispose),
16875         (name_is_valid), (gst_static_pad_template_get),
16876         (gst_pad_template_new), (gst_static_pad_template_get_caps),
16877         (gst_pad_template_get_caps), (gst_pad_set_element_private),
16878         (gst_pad_get_element_private), (gst_pad_start_task),
16879         (gst_pad_pause_task), (gst_pad_stop_task),
16880         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
16881         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
16882         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
16883         (gst_ghost_pad_new):
16884         * gst/gstpad.h:
16885         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
16886         (gst_query_new_position), (gst_query_set_position),
16887         (gst_query_parse_position), (gst_query_new_convert),
16888         (gst_query_set_convert), (gst_query_parse_convert):
16889         * gst/gstquery.h:
16890         * gst/gstqueryutils.c:
16891         * gst/gstqueryutils.h:
16892         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
16893         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
16894         (gst_queue_handle_src_query):
16895         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16896         (gst_element_query_position), (gst_element_query_convert),
16897         (intersect_caps_func), (gst_pad_query_position),
16898         (gst_pad_query_convert):
16899         * gst/gstutils.h:
16900         * tools/gst-inspect.c: (print_pad_info):
16901         * tools/gst-xmlinspect.c: (print_element_info):
16902         Remove old query functions. Ported old code.
16903         Added position/convert helper functions to gstutils.
16904         Reordered gstpad.c code, grouping relevant things.
16905         Remove gst_message_new(), always need to speficy a specific
16906         message.
16907
16908
16909 2005-05-09  Andy Wingo  <wingo@pobox.com>
16910
16911         * gst/gstiterator.h: Add some includes.
16912
16913         * gst/gstqueryutils.h: Include more headers.
16914
16915         * gst/gstpad.h:
16916         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
16917         some uses of gst_pad_query.
16918
16919         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
16920         NULL out parameters.
16921         (gst_query_new_position): New proc, allocates a new position
16922         query.
16923
16924         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
16925         gstqueryutils.c to the build.
16926
16927         * gst/gststructure.c (gst_structure_set_valist): Implement with
16928         the generic G_VALUE_COLLECT.
16929         
16930 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
16931
16932         * gst/Makefile.am: (gst_headers):
16933         Added gstqueryutils.h to the list of headers to install, that was
16934         a 'nachty' move wingo :)
16935
16936 2005-05-06  Andy Wingo  <wingo@pobox.com>
16937
16938         * gst/gstquery.h
16939         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
16940         GstData, init a memchunk.
16941         (standard_definitions): Add a few query types, deprecate a few.
16942         (gst_query_get_type): New proc.
16943         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
16944         implementation.
16945         (gst_query_new_application, gst_query_get_structure): New public
16946         procs.
16947
16948         * docs/design/draft-query.txt: Removed LINKS from the query types,
16949         because all the rest can be dispatched to other pads -- seemed
16950         ugly to have a query that couldn't be dispatched. internal_links
16951         is fine as a pad method.
16952
16953         * gst/gstpad.h: Add query2 as a pad method, add the new functions
16954         in gstpad.c, but maintain binary compatibility for the moment.
16955         Will fix before 0.9 is out.
16956
16957         * gst/gstqueryutils.c: 
16958         * gst/gstqueryutils.h: New files, implement 3 methods for each
16959         query type: parse_query, parse_response, and set. Probably need an
16960         allocator as well.
16961
16962         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
16963
16964         * gst/elements/gstfilesink.c (gst_filesink_query2):
16965         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
16966         query_types, and formats methods.
16967
16968         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
16969         (gst_pad_set_query2_function): New functions.
16970         (gst_real_pad_init): Set query2_default as the default query2
16971         function. Basically just dispatches to internally linked pads.
16972
16973         Needs review!
16974         
16975         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
16976         without using the atomic operations. Only one thread can possibly
16977         be accessing the data at this point. Changed so as to avoid
16978         gst_atomic operations.
16979
16980 2005-05-06  Wim Taymans  <wim@fluendo.com>
16981
16982         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
16983         Also set caps if we use the fallback buffer alloc.
16984
16985 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
16986
16987         * docs/gst/Makefile.am:
16988         * docs/gst/gstreamer-docs.sgml:
16989         * docs/gst/gstreamer-sections.txt:
16990         * docs/gst/tmpl/gstatomic.sgml:
16991         * docs/gst/tmpl/gstmemchunk.sgml:
16992         * testsuite/elements/struct_i386.h:
16993         * win32/GStreamer.vcproj:
16994         * win32/Makefile:
16995           Purge GstAtomic stuff from docs and win32 makefiles as well
16996
16997 2005-05-06  Wim Taymans  <wim@fluendo.com>
16998
16999         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
17000         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
17001         * gst/gstpad.c: (gst_pad_peer_get_caps):
17002         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
17003         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
17004         (gst_queue_src_activate), (gst_queue_change_state):
17005         * gst/gstqueue.h:
17006         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
17007         (intersect_caps_func):
17008         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
17009         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
17010         Some fixes for the peer_get_caps() change.
17011
17012 2005-05-06  Wim Taymans  <wim@fluendo.com>
17013
17014         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
17015         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
17016         (gst_basesink_activate):
17017         Actually do something with error codes returned from the push
17018         functions.
17019
17020 2005-05-06  Wim Taymans  <wim@fluendo.com>
17021
17022         * docs/design/part-element-sink.txt:
17023         * docs/design/part-element-source.txt:
17024         * gst/base/gstbasesink.c: (gst_basesink_class_init),
17025         (gst_basesink_event), (gst_basesink_activate):
17026         * gst/base/gstbasesink.h:
17027         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
17028         (gst_basesrc_activate):
17029         * gst/base/gstbasesrc.h:
17030         * gst/gstelement.c: (gst_element_pads_activate):
17031         Some more documentation.
17032         Fixed scheduling decision in _pads_activate().
17033
17034 2005-05-05  Andy Wingo  <wingo@pobox.com>
17035
17036         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
17037         the test suite.
17038
17039 2005-05-05  Wim Taymans  <wim@fluendo.com>
17040
17041         * gst/base/Makefile.am:
17042         * gst/base/gstbasesink.h:
17043         * gst/base/gstbasesrc.c: (gst_basesrc_init),
17044         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
17045         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
17046         (gst_collectpads_class_init), (gst_collectpads_init),
17047         (gst_collectpads_finalize), (gst_collectpads_new),
17048         (gst_collectpads_set_function), (gst_collectpads_add_pad),
17049         (find_pad), (gst_collectpads_remove_pad),
17050         (gst_collectpads_is_active), (gst_collectpads_collect),
17051         (gst_collectpads_collect_range), (gst_collectpads_start),
17052         (gst_collectpads_stop), (gst_collectpads_peek),
17053         (gst_collectpads_pop), (gst_collectpads_available),
17054         (gst_collectpads_read), (gst_collectpads_flush),
17055         (gst_collectpads_chain):
17056         * gst/base/gstcollectpads.h:
17057         * gst/elements/Makefile.am:
17058         * gst/elements/gstelements.c:
17059         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
17060         (gst_fakesink_get_times), (gst_fakesink_event),
17061         (gst_fakesink_preroll), (gst_fakesink_render):
17062         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
17063         (gst_filesink_init), (gst_filesink_set_location),
17064         (gst_filesink_open_file), (gst_filesink_close_file),
17065         (gst_filesink_pad_query), (gst_filesink_event),
17066         (gst_filesink_render), (gst_filesink_change_state):
17067         * gst/elements/gstfilesink.h:
17068         Added object to help in making collect pad based elements.
17069         Ported filesink.
17070         Make event function in sink baseclass return gboolean.
17071
17072 2005-05-05  Wim Taymans  <wim@fluendo.com>
17073
17074         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
17075         (gst_bin_get_by_name):
17076         * gst/gstbuffer.h:
17077         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
17078         (gst_clock_finalize):
17079         * gst/gstdata.c: (gst_data_replace):
17080         * gst/gstdata.h:
17081         * gst/gstelement.c: (gst_element_request_pad),
17082         (gst_element_pads_activate):
17083         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
17084         (gst_object_unref):
17085         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17086         (gst_pad_set_checkgetrange_function),
17087         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
17088         (gst_pad_check_pull_range), (gst_pad_pull_range),
17089         (gst_static_pad_template_get_caps), (gst_pad_start_task),
17090         (gst_pad_pause_task), (gst_pad_stop_task):
17091         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
17092         (gst_element_request_pad), (gst_pad_proxy_getcaps):
17093         Fix name lookup in GstBin.
17094         Added _data_replace() function and _buffer_replace()
17095         Use finalize method to clean up clock.
17096         Fix refcounting on request pads.
17097         Fix pad schedule mode error.
17098         Some more object refcounting debug info,
17099
17100
17101 2005-05-04  Andy Wingo <wingo@pobox.com>
17102
17103         * check/Makefile.am:
17104         * docs/gst/tmpl/gstatomic.sgml:
17105         * docs/gst/tmpl/gstplugin.sgml:
17106         * gst/base/gstbasesink.c: (gst_basesink_activate):
17107         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
17108         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
17109         (gst_basesrc_query), (gst_basesrc_set_property),
17110         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
17111         (gst_basesrc_activate):
17112         * gst/base/gstbasesrc.h:
17113         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
17114         (gst_base_transform_src_activate):
17115         * gst/elements/gstelements.c:
17116         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17117         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
17118         * gst/elements/gsttee.c: (gst_tee_sink_activate):
17119         * gst/elements/gsttypefindelement.c: (find_element_get_length),
17120         (gst_type_find_element_checkgetrange),
17121         (gst_type_find_element_activate):
17122         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
17123         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
17124         (gst_caps_load_thyself):
17125         * gst/gstelement.c: (gst_element_pads_activate),
17126         (gst_element_save_thyself), (gst_element_restore_thyself):
17127         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
17128         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
17129         * gst/gstpad.h:
17130         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
17131         (gst_xml_parse_file), (gst_xml_parse_memory),
17132         (gst_xml_get_element), (gst_xml_make_element):
17133         * gst/indexers/gstfileindex.c: (gst_file_index_load),
17134         (_file_index_id_save_xml), (gst_file_index_commit):
17135         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
17136         (read_enum), (load_pad_template), (load_feature), (load_plugin),
17137         (load_paths):
17138         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
17139         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
17140         * tools/gst-complete.c: (main):
17141         * tools/gst-compprep.c: (main):
17142         * tools/gst-inspect.c: (print_element_properties_info):
17143         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
17144         * tools/gst-xmlinspect.c: (print_element_properties):
17145         GCC 4 fixen.
17146         
17147 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
17148
17149         * gst/gstplugin.c: (gst_plugin_check_module),
17150         (gst_plugin_check_file), (gst_plugin_load_file):
17151             apply patch from #172526 to make register work on MacOSX
17152
17153 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
17154
17155         * docs/gst/tmpl/gstconfig.sgml:
17156         * gst/gstconfig.h.in:
17157           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
17158         * testsuite/debug/printf_extension.c: (main):
17159           Do not use GST_PTR_FORMAT on pointers to types with
17160           sizeof < sizeof(gpointer).  Fixes test on 64-bit
17161         * testsuite/elements/property.h:
17162           use correct printf format
17163
17164 2005-05-02  Wim Taymans  <wim@fluendo.com>
17165
17166         * docs/design/draft-push-pull.txt:
17167         * docs/design/draft-query.txt:
17168         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
17169         (gst_basesrc_start):
17170         Added draft for new query API.
17171         Added draft for better selecting scheduling methods.
17172         Make basesrc ignore length if the subclass does not support
17173         it.
17174
17175 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
17176
17177         * gst/Makefile.am:
17178           possible fixes for automake-1.5 - _LIBADD is reserved
17179
17180 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
17181
17182         * docs/faq/Makefile.am:
17183         * docs/manual/Makefile.am:
17184         * docs/manuals.mak:
17185         * docs/pwg/Makefile.am:
17186         * gst/Makefile.am:
17187           possible fixes for automake-1.5
17188
17189 2005-04-28  Wim Taymans  <wim@fluendo.com>
17190
17191         * gst/base/gstbasesink.c: (gst_basesink_base_init),
17192         (gst_basesink_pad_getcaps), (gst_basesink_init),
17193         (gst_basesink_do_sync):
17194         * gst/gstclock.c: (gst_clock_entry_new):
17195         * gst/gstevent.c: (gst_event_discont_get_value):
17196         * gst/gstpipeline.c: (pipeline_bus_handler),
17197         (gst_pipeline_change_state):
17198         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
17199         Better debugging of clocking info.
17200         Allow NULL values when getting discont values.
17201
17202 2005-04-27  Wim Taymans  <wim@fluendo.com>
17203
17204         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
17205         * check/gst/gstpad.c: (gst_pad_suite):
17206         Increase timeout for checks.
17207
17208 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
17209
17210         * check/Makefile.am:
17211           fix the broken rule for cleanup.  Apparently this rule is
17212           only needed on FC2, so maybe this warrants further autotool
17213           inspection.
17214
17215 2005-04-26  Wim Taymans  <wim@fluendo.com>
17216
17217         * gst/gsttrashstack.h:
17218         Ooohh. a nasty one! After having a failed pop() from the stack,
17219         it's possible that the stack is empty. In that case, don't
17220         follow the NULL pointer.
17221
17222 2005-04-25  Wim Taymans  <wim@fluendo.com>
17223
17224         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17225         (gst_pad_set_checkgetrange_function),
17226         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
17227         (gst_pad_check_pull_range), (gst_pad_pull_range),
17228         (gst_static_pad_template_get_caps), (gst_pad_start_task),
17229         (gst_pad_pause_task), (gst_pad_stop_task):
17230         * gst/gstplugin.c: (gst_plugin_load):
17231         * gst/gstplugin.h:
17232         Remove gst_library_load as it does more harm than good with
17233         the new g_module flags.
17234         Revert bogus caps template check in pad linking, pad caps
17235         are important when linking not the template, which is more
17236         general than the current caps.
17237
17238 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
17239
17240         * gst/autoplug/.cvsignore:
17241         * gst/autoplug/Makefile.am:
17242         * gst/autoplug/gstsearchfuncs.c:
17243         * gst/autoplug/gstsearchfuncs.h:
17244         * gst/autoplug/gstspider.c:
17245         * gst/autoplug/gstspider.h:
17246         * gst/autoplug/gstspideridentity.c:
17247         * gst/autoplug/gstspideridentity.h:
17248         * gst/autoplug/spidertest.c:
17249           Die, spider, die.
17250
17251 2005-04-25  Wim Taymans  <wim@fluendo.com>
17252
17253         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17254         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
17255         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
17256         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
17257         * gst/gstpad.h:
17258         Added stubs for unimplemented functions. 
17259
17260 2005-04-24  David Schleef  <ds@schleef.org>
17261
17262         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
17263         please fix.
17264
17265 2005-04-24  David Schleef  <ds@schleef.org>
17266
17267         Convert everything from GstAtomicInt to g_atomic_int_*, and
17268         remove gstatomic.
17269         * gst/Makefile.am:
17270         * gst/gstatomic.c:
17271         * gst/gstatomic.h:
17272         * gst/gstatomic_impl.h:
17273         * gst/gstbuffer.c:
17274         * gst/gstcaps.c:
17275         * gst/gstcaps.h:
17276         * gst/gstclock.c:
17277         * gst/gstclock.h:
17278         * gst/gstdata.c:
17279         * gst/gstdata.h:
17280         * gst/gstdata_private.h:
17281         * gst/gstevent.c:
17282         * gst/gstinfo.c:
17283         * gst/gstinfo.h:
17284         * gst/gstmessage.c:
17285         * gst/gstobject.c:
17286         * gst/gstobject.h:
17287         * gst/gststructure.c:
17288         * gst/gststructure.h:
17289         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
17290         * gst/gstutils.h:
17291
17292 2005-04-24  David Schleef  <ds@schleef.org>
17293
17294         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
17295         make the regressions tests work.  Remove some code that is no
17296         longer true.
17297         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
17298         Disable warning for pads without templates.
17299
17300 2005-04-24  David Schleef  <ds@schleef.org>
17301
17302         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
17303         functions that handle filtered links.
17304         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
17305         removed functions.
17306         * gst/gstutils.c: Fix/remove utility functions that handle
17307         filtered caps.
17308         * gst/gstutils.h:
17309         * gst/gstvalue.c: Add serialization/deserialization of caps
17310         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
17311         requires fixing so that the filter caps notation creates
17312         a capsfilter element and sets the filter_caps property.  I
17313         think everyone probably wants to keep the shorthand notation.
17314         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
17315         * docs/gst/tmpl/gstpad.sgml:
17316
17317         * gst/elements/gstelements.c: Register capsfilter element.
17318         * gst/Makefile.am: fix spacing
17319         * docs/random/ds/0.9-suggested-changes: random
17320
17321 2005-04-23  David Schleef  <ds@schleef.org>
17322
17323         * gst/elements/Makefile.am:
17324         * gst/elements/gstcapsfilter.c: New element that acts like an
17325         identity, but filters caps.  Will eventually replace filtered
17326         caps in pad linking.
17327         * gst/gstutils.c: (gst_element_create_all_pads): New function
17328         to create all the ALWAYS pads that are registered with an
17329         element class.  This functionality should eventually be
17330         merged in with GstElement initialization.
17331         * gst/gstutils.h:
17332         * testsuite/trigger/README: part of trigger test code that should
17333         have been checked in a long time ago.
17334
17335 2005-04-23  David Schleef  <ds@schleef.org>
17336
17337         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
17338         needed with new versions of libtool (nobody will confirm this),
17339         and hard to carry around.
17340         * gst/autoplug/Makefile.am:
17341         * gst/base/Makefile.am:
17342         * gst/elements/Makefile.am:
17343         * gst/indexers/Makefile.am:
17344         * gst/schedulers/Makefile.am:
17345         * libs/gst/bytestream/Makefile.am:
17346         * libs/gst/control/Makefile.am:
17347         * libs/gst/dataprotocol/Makefile.am:
17348         * libs/gst/getbits/Makefile.am:
17349
17350 2005-04-21  Wim Taymans  <wim@fluendo.com>
17351
17352         * docs/design/draft-push-pull.txt:
17353         * docs/design/part-MT-refcounting.txt:
17354         * docs/design/part-TODO.txt:
17355         * docs/design/part-caps.txt:
17356         * docs/design/part-events.txt:
17357         * docs/design/part-gstbus.txt:
17358         * docs/design/part-gstpipeline.txt:
17359         * docs/design/part-messages.txt:
17360         * docs/design/part-push-pull.txt:
17361         * docs/design/part-query.txt:
17362         Some more docs.
17363
17364 2005-04-21  Wim Taymans  <wim@fluendo.com>
17365
17366         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
17367         (gst_message_new), (gst_message_new_error),
17368         (gst_message_new_warning), (gst_message_new_tag),
17369         (gst_message_new_state_changed), (gst_message_new_application),
17370         (gst_message_get_structure):
17371         * gst/gstmessage.h:
17372         * gst/gststructure.c: (gst_structure_set_parent_refcount),
17373         (gst_structure_copy_conditional):
17374         Use parent refcount in GstMessage to ensure GstStructure
17375         consistency.
17376         Cleaned up headers a bit.
17377         
17378
17379 2005-04-20  Wim Taymans  <wim@fluendo.com>
17380
17381         * gst/base/gstbasesink.c: (gst_basesink_base_init),
17382         (gst_basesink_pad_getcaps), (gst_basesink_init),
17383         (gst_basesink_chain_unlocked):
17384         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
17385         (gst_type_find_helper):
17386         * gst/elements/gsttypefindelement.c:
17387         (gst_type_find_element_have_type), (gst_type_find_element_init),
17388         (stop_typefinding), (gst_type_find_element_handle_event),
17389         (find_suggest), (gst_type_find_element_chain),
17390         (gst_type_find_element_checkgetrange),
17391         (gst_type_find_element_getrange), (do_typefind),
17392         (gst_type_find_element_activate):
17393         * gst/gstbuffer.c: (_gst_buffer_sub_free),
17394         (gst_buffer_default_free), (gst_buffer_default_copy),
17395         (gst_buffer_set_caps):
17396         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
17397         (gst_caps_replace):
17398         * gst/gstmessage.c: (gst_message_new),
17399         (gst_message_new_state_changed):
17400         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17401         (gst_pad_set_checkgetrange_function),
17402         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
17403         (gst_pad_set_caps), (gst_pad_check_pull_range),
17404         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
17405         * gst/gstpad.h:
17406         * gst/gsttypefind.c: (gst_type_find_register):
17407         Make gst_caps_replace() work like other _replace() functions.
17408         Use _caps_replace() where possible.
17409         Make sure _message_new() initialises its field.
17410         Add gst_static_pad_template_get_caps()
17411
17412
17413 2005-04-18  Andy Wingo  <wingo@pobox.com>
17414
17415         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
17416         on the peer, not the pad. I think that was a typo. Pass an extra
17417         arg to see if random access is possible. Activate the pads as
17418         PULL_RANGE if possible.
17419
17420         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
17421
17422         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
17423         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
17424         to PROP_....
17425
17426 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
17427
17428         * docs/faq/using.xml:
17429           Add note on gstreamer-properties (#154996).
17430
17431 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
17432
17433         * docs/random/bbb/optional-properties:
17434           Some analysis on optional properties.
17435
17436 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
17437
17438         * docs/gst/tmpl/gstelementfactory.sgml:
17439         * gst/gstelement.h:
17440         * gst/gstelementfactory.c: (gst_element_factory_init),
17441         (gst_element_factory_cleanup), (gst_element_register),
17442         (__gst_element_factory_add_static_pad_template),
17443         (gst_element_factory_get_static_pad_templates),
17444         (gst_element_factory_can_src_caps),
17445         (gst_element_factory_can_sink_caps):
17446         * gst/registries/Makefile.am:
17447         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
17448         (gst_xml_registry_class_init), (gst_xml_registry_init),
17449         (gst_xml_registry_new), (gst_xml_registry_set_property),
17450         (gst_xml_registry_get_property), (get_time), (make_dir),
17451         (gst_xml_registry_get_perms_func),
17452         (plugin_times_older_than_recurse), (plugin_times_older_than),
17453         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
17454         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
17455         (add_to_char_array), (read_string), (read_uint), (read_enum),
17456         (load_pad_template), (load_feature), (load_plugin), (load_paths),
17457         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
17458         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
17459         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
17460         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
17461         (gst_xml_registry_rebuild):
17462         * gst/registries/gstlibxmlregistry.h:
17463         * tools/gst-compprep.c: (main):
17464         * tools/gst-inspect.c: (print_pad_templates_info):
17465         * tools/gst-xmlinspect.c: (print_element_info):
17466           Use libxml2 for registry parsing, use staticpadtemplates in
17467           elementfactories. Makes gst_init() +/- 10x faster.
17468
17469 2005-04-12  Wim Taymans  <wim@fluendo.com>
17470
17471         * gst/base/Makefile.am:
17472         * gst/base/gstbasesink.c: (gst_basesink_base_init),
17473         (gst_basesink_pad_getcaps), (gst_basesink_init),
17474         (gst_basesink_event), (gst_basesink_change_state):
17475         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17476         (gst_basesrc_init), (gst_basesrc_query),
17477         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
17478         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
17479         (gst_basesrc_check_get_range), (gst_basesrc_loop),
17480         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
17481         (gst_basesrc_stop), (gst_basesrc_activate),
17482         (gst_basesrc_change_state):
17483         * gst/base/gsttypefindhelper.c: (helper_find_peek),
17484         (helper_find_suggest), (gst_type_find_helper):
17485         * gst/base/gsttypefindhelper.h:
17486         * gst/elements/Makefile.am:
17487         * gst/elements/gstelements.c:
17488         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
17489         (gst_fakesink_get_times), (gst_fakesink_event),
17490         (gst_fakesink_preroll), (gst_fakesink_render):
17491         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17492         (gst_fakesrc_init), (gst_fakesrc_event_handler),
17493         (gst_fakesrc_get_property), (gst_fakesrc_create),
17494         (gst_fakesrc_start), (gst_fakesrc_stop):
17495         * gst/elements/gstfakesrc.h:
17496         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
17497         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
17498         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
17499         (gst_filesrc_create_read), (gst_filesrc_create),
17500         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
17501         (gst_filesrc_start):
17502         * gst/elements/gsttypefindelement.c:
17503         (gst_type_find_element_have_type), (gst_type_find_element_init),
17504         (start_typefinding), (stop_typefinding), (push_buffer_store),
17505         (gst_type_find_element_handle_event),
17506         (gst_type_find_element_chain),
17507         (gst_type_find_element_checkgetrange),
17508         (gst_type_find_element_getrange), (do_typefind),
17509         (gst_type_find_element_activate),
17510         (gst_type_find_element_change_state):
17511         * gst/elements/gsttypefindelement.h:
17512         * gst/gstpipeline.c: (pipeline_bus_handler):
17513         Added typefind helper.
17514         Small preroll fix in the base sink.
17515         Disable typefind code in basesrc.
17516         Crude port of typefindelement.
17517         Fakesrc cleanups.
17518
17519
17520 2005-04-11  Wim Taymans  <wim@fluendo.com>
17521
17522         * check/gst/gstbus.c: (gstbus_suite):
17523         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
17524         * check/gstcheck.h:
17525           Fix up the timeout so that the test does not fail.
17526
17527 2005-04-06  Wim Taymans  <wim@fluendo.com>
17528
17529         * gst/base/README:
17530         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17531         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
17532         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
17533         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
17534         (gst_basesrc_check_get_range), (gst_basesrc_loop),
17535         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
17536         (gst_basesrc_stop), (gst_basesrc_activate),
17537         (gst_basesrc_change_state), (basesrc_find_peek),
17538         (basesrc_find_suggest), (gst_basesrc_type_find):
17539         * gst/base/gstbasesrc.h:
17540         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
17541         (gst_filesrc_class_init), (gst_filesrc_init),
17542         (gst_filesrc_finalize), (gst_filesrc_set_location),
17543         (gst_filesrc_set_property), (gst_filesrc_get_property),
17544         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
17545         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
17546         (gst_filesrc_create_read), (gst_filesrc_create),
17547         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
17548         * gst/elements/gstfilesrc.h:
17549         * gst/gstelement.c: (gst_element_get_state_func),
17550         (gst_element_lost_state), (gst_element_pads_activate):
17551         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17552         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
17553         (gst_pad_pull_range):
17554         * gst/gstpad.h:
17555         More work on the generic source base class, implement seeking,
17556         query.
17557         Make filesrc extend the base source class.
17558         Added gst_pad_set_checkgetrange_function to GstPad.
17559
17560 2005-04-06  Andy Wingo  <wingo@pobox.com>
17561
17562         * pkgconfig/gstreamer-base.pc.in:
17563         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
17564
17565         * pkgconfig/Makefile.am:
17566         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
17567
17568 2005-04-04  Wim Taymans  <wim@fluendo.com>
17569
17570         * gst/base/Makefile.am:
17571         * gst/base/README:
17572         * gst/base/gstbasesink.c: (gst_basesink_base_init),
17573         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
17574         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
17575         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
17576         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17577         (gst_basesrc_base_init), (gst_basesrc_class_init),
17578         (gst_basesrc_init), (gst_basesrc_get_formats),
17579         (gst_basesrc_get_query_types), (gst_basesrc_query),
17580         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
17581         (gst_basesrc_set_property), (gst_basesrc_get_property),
17582         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
17583         (gst_basesrc_loop), (gst_basesrc_activate),
17584         (gst_basesrc_change_state):
17585         * gst/base/gstbasesrc.h:
17586         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
17587         (gst_fakesrc_class_init), (gst_fakesrc_init),
17588         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
17589         (gst_fakesrc_get_property), (gst_fakesrc_create):
17590         * gst/elements/gstfakesrc.h:
17591         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
17592         (gst_filesrc_open_file), (gst_filesrc_loop),
17593         (gst_filesrc_activate), (filesrc_find_peek),
17594         (gst_filesrc_type_find):
17595         Made base source class, make fakesrc extend it.
17596         Add comments to basesink class.
17597         Some filesrc cleanup.
17598
17599 2005-03-31  David Schleef  <ds@schleef.org>
17600
17601         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
17602         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
17603         expected to link against libgstreamer.
17604         * gst/base/Makefile.am: link against libgstreamer
17605         * gst/elements/Makefile.am: same
17606
17607 2005-03-31  Andy Wingo  <wingo@pobox.com>
17608
17609         * tests/instantiate/Makefile.am:
17610         * tests/instantiate/caps.c: Add test to test speed of caps copy
17611         and free.
17612
17613         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
17614         GMemChunk to be fair.
17615
17616         * gst/gsttrashstack.h: Remove warning about using the fallback
17617         trash stack implementation, it's still faster than malloc.
17618
17619 2005-03-30  Andy Wingo  <wingo@pobox.com>
17620
17621         * tests/complexity.c: Add a copyright.
17622
17623 2005-03-31  Wim Taymans  <wim@fluendo.com>
17624
17625         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
17626         (gst_base_transform_class_init), (gst_base_transform_init),
17627         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
17628         (gst_base_transform_get_property),
17629         (gst_base_transform_sink_activate),
17630         (gst_base_transform_src_activate),
17631         (gst_base_transform_change_state):
17632         * gst/base/gstbasetransform.h:
17633         * gst/elements/gstidentity.c: (gst_identity_class_init),
17634         (gst_identity_event), (gst_identity_check_perfect),
17635         (gst_identity_transform), (gst_identity_start),
17636         (gst_identity_stop):
17637         Added start/stop methods to transform base class so subclasses 
17638         don't need to deal with state changes even.
17639
17640 2005-03-31  Wim Taymans  <wim@fluendo.com>
17641
17642         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
17643         (gst_event_new_discontinuous), (gst_event_discont_get_value):
17644         * gst/gstevent.h:
17645         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17646         (gst_pad_pull_range):
17647         Added rate to the discont event to prepare for variable speed
17648         and reverse playback.
17649
17650 2005-03-29  David Schleef  <ds@schleef.org>
17651
17652         * configure.ac:
17653         * testsuite/trigger/Makefile.am:
17654         * testsuite/trigger/trigger.c: A little example program to show
17655         how trigger-based elements can work.
17656
17657 2005-03-29  Wim Taymans  <wim@fluendo.com>
17658
17659         * gst/base/Makefile.am:
17660         * gst/base/README:
17661         * gst/base/gstbasesink.c: (gst_basesink_get_type),
17662         (gst_basesink_base_init), (gst_basesink_class_init),
17663         (gst_basesink_pad_getcaps), (gst_basesink_init),
17664         (gst_basesink_activate), (gst_basesink_change_state):
17665         * gst/base/gstbasesink.h:
17666         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
17667         (gst_base_transform_base_init), (gst_base_transform_finalize),
17668         (gst_base_transform_class_init), (gst_base_transform_init),
17669         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
17670         (gst_base_transform_event), (gst_base_transform_getrange),
17671         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
17672         (gst_base_transform_set_property),
17673         (gst_base_transform_get_property),
17674         (gst_base_transform_sink_activate),
17675         (gst_base_transform_src_activate),
17676         (gst_base_transform_change_state):
17677         * gst/base/gstbasetransform.h:
17678         * gst/elements/gstidentity.c: (gst_identity_finalize),
17679         (gst_identity_class_init), (gst_identity_init),
17680         (gst_identity_event), (gst_identity_check_perfect),
17681         (gst_identity_transform), (gst_identity_set_property),
17682         (gst_identity_get_property), (gst_identity_change_state):
17683         * gst/elements/gstidentity.h:
17684         * gst/gstelement.c: (gst_element_get_state_func),
17685         (gst_element_lost_state), (gst_element_pads_activate):
17686         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17687         (gst_pad_check_pull_range), (gst_pad_pull_range):
17688         * gst/gstpad.h:
17689         Simplify pad activation.
17690         Added function to check if pull_range can be performed.
17691         Error out when pulling inactive or flushing pads.
17692         Removed const from refcounted types as it does not make sense.
17693         Simplify pad templates in basesink
17694         Added base class for simple 1-to-1 transforms.
17695         Make identity subclass the base transform.
17696
17697 2005-03-29  Andy Wingo  <wingo@pobox.com>
17698
17699         * docs/libs/gstreamer-libs-overrides.txt: 
17700         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
17701         really don't understand what's going on, but like whatever. I want
17702         green buildbot!
17703
17704         * docs/gst/Makefile.am:
17705         * docs/libs/Makefile.am: Dist the overrides files.
17706
17707         * check/Makefile.am (clean-local): Remove .libs directories.
17708
17709         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
17710         elements to EXTRA_DIST, so po/ files are happy.
17711
17712         * po/POTFILES.in: Er, remove it here.
17713
17714         * po/POTFILES: Remove gstspider.c.
17715
17716         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
17717
17718         * docs/libs/gstreamer-libs-docs.sgml: 
17719         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
17720         bytestream.
17721
17722         * tests/complexity.c (main): Set the length of the preroll queue
17723         on the sinks to prevent a lockup.
17724
17725         * libs/gst/dataprotocol/Makefile.am: 
17726         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
17727         the same as the one in check/gst-libs/gdp.c.
17728
17729         * po/, docs/gst/: Commit automatic changes to docs and po files.
17730
17731         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
17732         the versioned libgstbase.
17733
17734         * check/Makefile.am: Depend on an unversioned gst-register, seems
17735         to make autoconf happier.
17736
17737         * gst/base/Makefile.am: Make libgstbase a versioned lib.
17738
17739 2005-03-28  Wim Taymans  <wim@fluendo.com>
17740
17741         * configure.ac:
17742         * docs/design/part-gstelement.txt:
17743         * docs/design/part-negotiation.txt:
17744         * docs/design/part-preroll.txt:
17745         * docs/design/part-scheduling.txt:
17746         * docs/design/part-states.txt:
17747         * gst/Makefile.am:
17748         * gst/base/Makefile.am:
17749         * gst/base/README:
17750         * gst/base/gstbasesink.c: (gst_basesink_get_template),
17751         (gst_basesink_base_init), (gst_basesink_class_init),
17752         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
17753         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
17754         (gst_basesink_set_pad_functions),
17755         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
17756         (gst_basesink_set_property), (gst_basesink_get_property),
17757         (gst_base_sink_get_template), (gst_base_sink_get_caps),
17758         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
17759         (gst_basesink_preroll_queue_push),
17760         (gst_basesink_preroll_queue_empty),
17761         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
17762         (gst_basesink_event), (gst_basesink_get_times),
17763         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
17764         (gst_basesink_chain_unlocked), (gst_basesink_chain),
17765         (gst_basesink_loop), (gst_basesink_activate),
17766         (gst_basesink_change_state):
17767         * gst/base/gstbasesink.h:
17768         * gst/elements/Makefile.am:
17769         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
17770         (gst_fakesink_class_init), (gst_fakesink_init),
17771         (gst_fakesink_set_property), (gst_fakesink_get_property),
17772         (gst_fakesink_get_times), (gst_fakesink_event),
17773         (gst_fakesink_preroll), (gst_fakesink_render),
17774         (gst_fakesink_change_state):
17775         * gst/elements/gstfakesink.h:
17776         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
17777         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
17778         * gst/gstelement.c: (gst_element_add_pad),
17779         (gst_element_get_state_func), (gst_element_abort_state),
17780         (gst_element_commit_state), (gst_element_lost_state),
17781         (gst_element_set_state), (gst_element_pads_activate):
17782         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
17783         * gst/gstpipeline.c: (gst_pipeline_send_event),
17784         (gst_pipeline_change_state):
17785         Added state change code.
17786         Added/updated docs.
17787         Added sink base class, make fakesink extend the base class.
17788         Small cleanups in GstPipeline.
17789
17790 2005-03-26  David Schleef  <ds@schleef.org>
17791
17792         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
17793         is broken and should be implemented in a different library.
17794         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
17795         * gst/gst.h: remove gstcpu.h
17796         * gst/gstcpu.c: remove
17797         * gst/gstcpu.h: remove
17798         * gst/Makefile.am.future: Remove this file.  It's ancient.
17799
17800 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
17801
17802         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
17803         (gst_bin_send_event):
17804           Add default event/set_manager handlers. The set_manager handler
17805           takes care that the manager is distributed over kids that were
17806           already in the bin before the manager was set. The event handler
17807           is a utility virtual function that sends the event over all sinks,
17808           so that gst_element_send_event (bin, event); has the expected
17809           behaviour.
17810         * gst/gstpad.c: (gst_pad_event_default):
17811           Re-install default event handling for discontinuities, so that
17812           seeking works without requiring hacks in applications or extra
17813           code in sinks.
17814         * gst/gstpipeline.c: (gst_pipeline_class_init),
17815         (gst_pipeline_send_event):
17816           Half hack, half utility: set a pipeline to PAUSED for seek events,
17817           since that is the only way we can guarantee a/v sync. Means that
17818           you can do gst_element_seek (pipeline, method, pos); on a pipeline
17819           and it "just works".
17820
17821 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
17822
17823         * gst/gstpipeline.c: (gst_pipeline_use_clock):
17824           Lock/unlock mismatch.
17825
17826 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
17827
17828         * docs/faq/gst-uninstalled:
17829           add gst-plugins-base
17830         * docs/gst/Makefile.am:
17831           don't error out until docs are fixed
17832         * docs/gst/gstreamer.types:
17833           remove thread
17834
17835 2005-03-22  Wim Taymans  <wim@fluendo.com>
17836
17837         * check/Makefile.am:
17838         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
17839         * gst/gststructure.c: (gst_structure_set_valist),
17840         (gst_structure_copy_conditional):
17841         Activated more tests.
17842         Added message test.
17843         Added G_TYPE_POINTER to GstStructure.
17844         
17845
17846 2005-03-22  Wim Taymans  <wim@fluendo.com>
17847
17848         * docs/design/part-TODO.txt:
17849         * docs/design/part-events.txt:
17850         * docs/design/part-gstbin.txt:
17851         * docs/design/part-gstbus.txt:
17852         * docs/design/part-gstpipeline.txt:
17853         * docs/design/part-messages.txt:
17854         * gst/gstbus.c:
17855         * gst/gstmessage.c:
17856         Docs updates
17857
17858 2005-03-21  Wim Taymans  <wim@fluendo.com>
17859
17860         * gst/gstbus.c: (gst_bus_post):
17861         Fix copy-and-paste error.
17862
17863 2005-03-21  Wim Taymans  <wim@fluendo.com>
17864
17865         * check/Makefile.am:
17866         * gst/Makefile.am:
17867         * gst/elements/Makefile.am:
17868         * gst/elements/gstelements.c:
17869         * gst/elements/gstfakesink.c: (gst_fakesink_init),
17870         (gst_fakesink_event), (gst_fakesink_chain):
17871         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17872         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
17873         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
17874         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
17875         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
17876         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
17877         (gst_fakesrc_loop), (gst_fakesrc_activate),
17878         (gst_fakesrc_change_state):
17879         * gst/elements/gstfakesrc.h:
17880         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
17881         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
17882         (gst_filesrc_open_file), (gst_filesrc_loop),
17883         (gst_filesrc_activate), (gst_filesrc_change_state),
17884         (filesrc_find_peek), (filesrc_find_suggest),
17885         (gst_filesrc_type_find):
17886         * gst/elements/gstidentity.c: (gst_identity_finalize),
17887         (gst_identity_class_init), (gst_identity_init),
17888         (gst_identity_proxy_getcaps), (identity_queue_push),
17889         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
17890         (gst_identity_getrange), (gst_identity_chain),
17891         (gst_identity_sink_loop), (gst_identity_src_loop),
17892         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
17893         (gst_identity_set_property), (gst_identity_get_property),
17894         (gst_identity_change_state):
17895         * gst/elements/gstidentity.h:
17896         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
17897         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
17898         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
17899         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
17900         (gst_tee_sink_activate):
17901         * gst/elements/gsttee.h:
17902         * gst/gst.c: (gst_register_core_elements), (init_post):
17903         * gst/gst.h:
17904         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
17905         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
17906         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
17907         (gst_bin_change_state):
17908         * gst/gstbin.h:
17909         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
17910         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
17911         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
17912         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
17913         (gst_bus_set_sync_handler), (gst_bus_create_watch),
17914         (bus_watch_callback), (bus_watch_destroy),
17915         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
17916         (poll_timeout), (gst_bus_poll):
17917         * gst/gstbus.h:
17918         * gst/gstcaps.h:
17919         * gst/gstdata.h:
17920         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
17921         (gst_element_post_message), (gst_element_message_full),
17922         (gst_element_get_state_func), (gst_element_get_state),
17923         (gst_element_abort_state), (gst_element_commit_state),
17924         (gst_element_lost_state), (gst_element_set_state),
17925         (gst_element_pads_activate), (gst_element_change_state),
17926         (gst_element_dispose), (gst_element_set_manager_func),
17927         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
17928         (gst_element_set_manager), (gst_element_get_manager),
17929         (gst_element_set_bus), (gst_element_get_bus),
17930         (gst_element_set_scheduler), (gst_element_get_scheduler):
17931         * gst/gstelement.h:
17932         * gst/gstevent.c: (gst_event_new_segment_seek),
17933         (gst_event_new_flush):
17934         * gst/gstevent.h:
17935         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
17936         (_gst_message_free), (gst_message_get_type), (gst_message_new),
17937         (gst_message_new_eos), (gst_message_new_error),
17938         (gst_message_new_warning), (gst_message_new_tag),
17939         (gst_message_new_state_changed), (gst_message_new_application),
17940         (gst_message_get_structure), (gst_message_parse_tag),
17941         (gst_message_parse_state_changed), (gst_message_parse_error),
17942         (gst_message_parse_warning):
17943         * gst/gstmessage.h:
17944         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
17945         (gst_real_pad_set_property), (gst_pad_set_active),
17946         (gst_pad_is_active), (gst_pad_set_blocked_async),
17947         (gst_pad_set_blocked), (gst_pad_is_blocked),
17948         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
17949         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
17950         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
17951         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
17952         (gst_pad_link_filtered), (gst_pad_relink_filtered),
17953         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
17954         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
17955         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
17956         (gst_pad_set_caps), (gst_pad_configure_sink),
17957         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
17958         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
17959         (gst_real_pad_dispose), (gst_real_pad_finalize),
17960         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
17961         (gst_pad_event_default_dispatch), (gst_pad_event_default),
17962         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
17963         * gst/gstpad.h:
17964         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
17965         (pipeline_bus_handler), (gst_pipeline_change_state),
17966         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
17967         * gst/gstpipeline.h:
17968         * gst/gstprobe.h:
17969         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
17970         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
17971         (gst_queue_link_src), (gst_queue_bufferalloc),
17972         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
17973         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
17974         (gst_queue_loop), (gst_queue_handle_src_event),
17975         (gst_queue_handle_src_query), (gst_queue_src_activate),
17976         (gst_queue_change_state):
17977         * gst/gstqueue.h:
17978         * gst/gstscheduler.c: (gst_scheduler_init),
17979         (gst_scheduler_dispose), (gst_scheduler_create_task),
17980         (gst_scheduler_factory_create):
17981         * gst/gstscheduler.h:
17982         * gst/gststructure.c: (gst_structure_get_type),
17983         (gst_structure_copy_conditional):
17984         * gst/gststructure.h:
17985         * gst/gsttaginterface.h:
17986         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
17987         (gst_task_init), (gst_task_dispose), (gst_task_create),
17988         (gst_task_get_state), (gst_task_start), (gst_task_stop),
17989         (gst_task_pause):
17990         * gst/gsttask.h:
17991         * gst/gstthread.c:
17992         * gst/gstthread.h:
17993         * gst/gsttypes.h:
17994         * gst/schedulers/Makefile.am:
17995         * gst/schedulers/cothreads_compat.h:
17996         * gst/schedulers/entryscheduler.c:
17997         * gst/schedulers/faircothreads.c:
17998         * gst/schedulers/faircothreads.h:
17999         * gst/schedulers/fairscheduler.c:
18000         * gst/schedulers/gstbasicscheduler.c:
18001         * gst/schedulers/gstoptimalscheduler.c:
18002         * gst/schedulers/gthread-cothreads.h:
18003         * gst/schedulers/threadscheduler.c:
18004         (gst_thread_scheduler_task_get_type),
18005         (gst_thread_scheduler_task_class_init),
18006         (gst_thread_scheduler_task_init),
18007         (gst_thread_scheduler_task_start),
18008         (gst_thread_scheduler_task_stop),
18009         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
18010         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
18011         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
18012         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
18013         (plugin_init):
18014         * libs/gst/Makefile.am:
18015         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
18016         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
18017         (gst_file_pad_parent_set):
18018         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
18019         (gst_dp_event_from_packet):
18020         * tests/complexity.c: (main):
18021         * tests/mass_elements.c: (main):
18022         * testsuite/states/locked.c: (message_received), (main):
18023         * testsuite/states/parent.c: (main):
18024         * tools/gst-inspect.c: (print_element_flag_info),
18025         (print_implementation_info), (print_pad_info):
18026         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
18027         (main):
18028         * tools/gst-md5sum.c: (event_loop), (main):
18029         * tools/gst-typefind.c: (main):
18030         * tools/gst-xmlinspect.c: (print_element_info):
18031         Next big merge.
18032         Added GstBus for mainloop integration.
18033         Added GstMessage for sending notifications on the bus.
18034         Added GstTask as an abstraction for pipeline entry points.
18035         Removed GstThread.
18036         Removed Schedulers.
18037         Simplified GstQueue for multithreaded core.
18038         Made _link threadsafe, removed old capsnego.
18039         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
18040         Added pad blocking functions.
18041         Reworked scheduling functions in GstPad to prepare for
18042         scheduling updates soon.
18043         Moved events out of data stream.
18044         Simplified GstEvent types.
18045         Added return values to push/pull.
18046         Removed clocking from GstElement.
18047         Added prototypes for state change function for next merge.
18048         Removed iterate from bins and state change management.
18049         Fixed some elements, disabled others for now.
18050         Fixed -inspect and -launch.
18051         Added check for GstBus.
18052
18053 2005-03-10  Wim Taymans  <wim@fluendo.com>
18054
18055         * docs/design/part-MT-refcounting.txt:
18056         * docs/design/part-clocks.txt:
18057         * docs/design/part-gstelement.txt:
18058         * docs/design/part-gstobject.txt:
18059         * docs/design/part-standards.txt:
18060         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
18061         (gst_bin_remove_func), (gst_bin_remove):
18062         * gst/gstbin.h:
18063         * gst/gstbuffer.c:
18064         * gst/gstcaps.h:
18065         * testsuite/clock/clock1.c: (main):
18066         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
18067         (main):
18068         * testsuite/dlopen/loadgst.c: (do_test):
18069         * testsuite/refcounting/bin.c: (add_remove_test1),
18070         (add_remove_test2), (main):
18071         * testsuite/refcounting/element.c: (main):
18072         * testsuite/refcounting/element_pad.c: (main):
18073         * testsuite/refcounting/pad.c: (main):
18074         * tools/gst-launch.c: (sigint_handler_sighandler):
18075         * tools/gst-typefind.c: (main):
18076         Doc updates.
18077         Added doc about clock.
18078         removed gst_bin_iterate_recurse_up(), marked methods
18079         for removal.
18080         Fix more testsuites.
18081
18082 2005-03-09  Wim Taymans  <wim@fluendo.com>
18083
18084         * gst/gstpad.c: (gst_pad_get_direction),
18085         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
18086         (gst_pad_collect_valist):
18087         * testsuite/bins/interface.c: (main):
18088         * testsuite/caps/audioscale.c: (test_caps):
18089         * testsuite/caps/caps.c: (test1), (test2), (test3):
18090         * testsuite/caps/deserialize.c: (main):
18091         * testsuite/caps/enumcaps.c: (main):
18092         * testsuite/caps/filtercaps.c: (main):
18093         * testsuite/caps/intersect2.c: (main):
18094         * testsuite/caps/random.c: (main):
18095         * testsuite/caps/renegotiate.c: (my_fixate), (main):
18096         * testsuite/caps/sets.c: (check_caps):
18097         * testsuite/caps/simplify.c: (check_caps), (main):
18098         * testsuite/caps/subtract.c: (check_caps):
18099         Fix _pad_get_direction wrt ghostpads.
18100         Fix caps testsuite.
18101
18102 2005-03-09  Wim Taymans  <wim@fluendo.com>
18103
18104         * check/Makefile.am:
18105         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
18106         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
18107         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
18108         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
18109         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
18110         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
18111         (gst_bin_remove), (gst_bin_iterate_recurse_up),
18112         (bin_element_is_sink), (gst_bin_iterate_sinks),
18113         (gst_bin_iterate_all_by_interface):
18114         * gst/gstbin.h:
18115         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
18116         (gst_element_change_state), (gst_element_dispose),
18117         (gst_element_finalize), (gst_element_set_loop_function):
18118         * gst/gstelement.h:
18119         * gst/gstiterator.c: (find_custom_fold_func):
18120         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
18121         (gst_pad_collectv), (gst_pad_collect_valist),
18122         (gst_pad_template_new):
18123         * gst/gstpipeline.c: (gst_pipeline_class_init),
18124         (gst_pipeline_dispose), (gst_pipeline_set_property),
18125         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
18126         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
18127         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
18128         * gst/gstutils.h:
18129         * gst/schedulers/entryscheduler.c:
18130         * gst/schedulers/gstbasicscheduler.c:
18131         (gst_basic_scheduler_cothreaded_chain),
18132         (gst_basic_scheduler_chain_add_element):
18133         * testsuite/bins/interface.c: (main):
18134         Added GstBin test.
18135         Added GstSystemClock test.
18136         Implemented clock distribution code in GstBin.
18137         Implemented iterate sinks method for future use.
18138         Rearranged gstelement.h
18139         Fix GstIterator comparison bug.
18140         Moved some code to GstPipeline, mostly clocking related.
18141
18142 2005-03-09  Wim Taymans  <wim@fluendo.com>
18143
18144         * configure.ac:
18145         * gst/gst_private.h:
18146         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
18147         (gst_bin_remove_func), (gst_bin_remove),
18148         (gst_bin_get_by_name_recurse_up):
18149         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
18150         (gst_clock_id_compare_func), (gst_clock_id_wait),
18151         (gst_clock_id_wait_async), (gst_clock_init),
18152         (gst_clock_adjust_unlocked), (gst_clock_get_time):
18153         * gst/gstelement.h:
18154         * gst/gstinfo.c: (_gst_debug_init):
18155         * gst/gstobject.h:
18156         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
18157         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
18158         * gst/gstpad.h:
18159         Bump version number, we're now 0.9.0
18160         Add future debugging category.
18161         Fix NULL _unref() in _get_by_name_recurse_up
18162         Rearrange gstpad.h.
18163         Update some docs.
18164
18165 2005-03-08  Wim Taymans  <wim@fluendo.com>
18166
18167         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
18168         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
18169         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
18170         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
18171         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
18172         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
18173         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
18174         * gst/elements/gstidentity.c: (gst_identity_class_init):
18175         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
18176         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
18177         * gst/elements/gstshaper.c: (gst_shaper_class_init):
18178         * gst/elements/gststatistics.c: (gst_statistics_class_init):
18179         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
18180         (gst_tee_link):
18181         * gst/gstelement.c: (gst_element_class_init),
18182         (gst_element_base_class_init), (gst_element_init),
18183         (gst_element_get_random_pad), (gst_element_wait_state_change),
18184         (gst_element_change_state), (gst_element_dispose),
18185         (gst_element_finalize), (gst_element_set_loop_function):
18186         * gst/gstelement.h:
18187         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
18188         * gst/gstthread.c: (gst_thread_class_init),
18189         (gst_thread_release_children_locks), (gst_thread_change_state):
18190         * gst/schedulers/gstbasicscheduler.c:
18191         (gst_basic_scheduler_loopfunc_wrapper),
18192         (gst_basic_scheduler_chain_wrapper),
18193         (gst_basic_scheduler_src_wrapper),
18194         (gst_basic_scheduler_remove_element):
18195         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
18196         Remove threadsafe properties. Fix elements because GObject
18197         complains when installing a property before declaring a
18198         set/get_property handler.
18199         Rearrange gstelement.h file, use STATE macros for state locks.
18200         Free mutexes in the finalize method instead of dispose.
18201
18202 2005-03-08  Wim Taymans  <wim@fluendo.com>
18203
18204         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
18205         * gst/gstthread.c: (gst_thread_release_children_locks):
18206         Added parentage check.
18207         Fix build og GstThread again.
18208
18209 2005-03-08  Wim Taymans  <wim@fluendo.com>
18210
18211         * docs/design/part-MT-refcounting.txt:
18212         * docs/design/part-conventions.txt:
18213         * docs/design/part-gstobject.txt:
18214         * docs/design/part-relations.txt:
18215         * docs/design/part-standards.txt:
18216         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
18217         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
18218         (gst_bin_get_by_name), (gst_bin_get_by_interface),
18219         (gst_bin_iterate_all_by_interface):
18220         * gst/gstbuffer.h:
18221         * gst/gstclock.h:
18222         * gst/gstelement.c: (gst_element_class_init),
18223         (gst_element_change_state), (gst_element_set_loop_function):
18224         * gst/gstelement.h:
18225         * gst/gstiterator.c:
18226         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
18227         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
18228         (gst_object_dispatch_properties_changed), (gst_object_set_name),
18229         (gst_object_set_parent), (gst_object_unparent),
18230         (gst_object_check_uniqueness):
18231         * gst/gstobject.h:
18232         Docs updates, clean up some headers.
18233
18234 2005-03-07  Wim Taymans  <wim@fluendo.com>
18235
18236         * check/.cvsignore:
18237         * check/Makefile.am:
18238         * check/gst-libs/.cvsignore:
18239         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
18240         * check/gst/.cvsignore:
18241         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
18242         (START_TEST), (gstbus_suite), (main):
18243         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
18244         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
18245         (gst_data_suite), (main):
18246         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
18247         (add_fold_func), (gstiterator_suite), (main):
18248         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
18249         (thread_name_object), (thread_name_object_default),
18250         (gst_object_name_compare), (gst_object_suite), (main):
18251         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
18252         (gst_pad_suite), (main):
18253         * check/gstcheck.c: (gst_check_log_message_func),
18254         (gst_check_log_critical_func), (gst_check_init):
18255         * check/gstcheck.h:
18256         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
18257         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
18258         Added checks.
18259
18260 2005-03-07  Wim Taymans  <wim@fluendo.com>
18261
18262         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
18263         (gst_list_iterator_next), (gst_list_iterator_resync),
18264         (gst_list_iterator_free), (gst_iterator_new_list),
18265         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
18266         (gst_iterator_free), (gst_iterator_push), (filter_next),
18267         (filter_resync), (filter_uninit), (filter_free),
18268         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
18269         (gst_iterator_foreach), (find_custom_fold_func),
18270         (gst_iterator_find_custom):
18271         * gst/gstiterator.h:
18272         Added missing files.
18273
18274 2005-03-07  Wim Taymans  <wim@fluendo.com>
18275
18276         * Makefile.am:
18277         * configure.ac:
18278         * docs/design/part-MT-refcounting.txt:
18279         * docs/design/part-conventions.txt:
18280         * docs/design/part-gstobject.txt:
18281         * docs/design/part-relations.txt:
18282         * examples/mixer/mixer.c: (main):
18283         * examples/thread/thread.c: (eos), (main):
18284         * gst/Makefile.am:
18285         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
18286         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
18287         (gst_spider_plug_from_srcpad):
18288         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
18289         (gst_spider_identity_change_state),
18290         (gst_spider_identity_sink_loop_type_finding):
18291         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
18292         * gst/elements/gstidentity.c: (gst_identity_init):
18293         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
18294         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
18295         * gst/elements/gsttypefindelement.c: (free_entry):
18296         * gst/gst.c:
18297         * gst/gst.h:
18298         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
18299         (gst_bin_set_clock_func), (gst_bin_auto_clock),
18300         (gst_bin_set_index), (gst_bin_set_element_sched),
18301         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
18302         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
18303         (gst_bin_iterate_elements), (iterate_child_recurse),
18304         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
18305         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
18306         (compare_interface), (gst_bin_get_by_interface),
18307         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
18308         * gst/gstbin.h:
18309         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
18310         (gst_buffer_default_free), (gst_buffer_default_copy),
18311         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
18312         (gst_buffer_create_sub):
18313         * gst/gstbuffer.h:
18314         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
18315         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
18316         (gst_caps_unref), (gst_static_caps_get),
18317         (gst_caps_remove_and_get_structure), (gst_caps_append),
18318         (gst_caps_append_structure), (gst_caps_remove_structure),
18319         (gst_caps_copy_nth), (gst_caps_set_simple),
18320         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
18321         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
18322         (gst_caps_structure_intersect_field), (gst_caps_intersect),
18323         (gst_caps_structure_subtract_field), (gst_caps_subtract),
18324         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
18325         (gst_caps_structure_figure_out_union),
18326         (gst_caps_switch_structures), (gst_caps_do_simplify),
18327         (gst_caps_replace), (gst_caps_from_string),
18328         (gst_caps_copy_conditional):
18329         * gst/gstcaps.h:
18330         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
18331         (_gst_clock_id_free), (gst_clock_id_unref),
18332         (gst_clock_id_compare_func), (gst_clock_id_wait),
18333         (gst_clock_id_wait_async), (gst_clock_class_init),
18334         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
18335         (gst_clock_get_time), (gst_clock_set_time_adjust),
18336         (gst_clock_set_property), (gst_clock_get_property):
18337         * gst/gstclock.h:
18338         * gst/gstcompat.h:
18339         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
18340         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
18341         * gst/gstdata.h:
18342         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
18343         (gst_element_requires_clock), (gst_element_provides_clock),
18344         (gst_element_set_clock), (gst_element_clock_wait),
18345         (gst_element_wait), (gst_element_set_time_delay),
18346         (gst_element_is_indexable), (gst_element_add_pad),
18347         (gst_element_add_ghost_pad), (gst_element_remove_pad),
18348         (pad_compare_name), (gst_element_get_static_pad),
18349         (gst_element_request_pad), (gst_element_get_request_pad),
18350         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
18351         (gst_element_class_get_pad_template_list),
18352         (gst_element_class_get_pad_template), (gst_element_error_func),
18353         (gst_element_get_random_pad), (gst_element_get_event_masks),
18354         (gst_element_send_event), (gst_element_seek),
18355         (gst_element_get_query_types), (gst_element_query),
18356         (gst_element_get_formats), (gst_element_convert),
18357         (gst_element_is_locked_state), (gst_element_set_locked_state),
18358         (gst_element_sync_state_with_parent), (gst_element_change_state),
18359         (gst_element_finalize), (gst_element_yield),
18360         (gst_element_interrupt), (gst_element_set_scheduler),
18361         (gst_element_get_scheduler), (gst_element_set_loop_function):
18362         * gst/gstelement.h:
18363         * gst/gstevent.h:
18364         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
18365         (gst_format_get_by_nick), (gst_format_get_details),
18366         (gst_format_iterate_definitions):
18367         * gst/gstformat.h:
18368         * gst/gstindex.c: (gst_index_gtype_resolver):
18369         * gst/gstinfo.c:
18370         * gst/gstinfo.h:
18371         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
18372         (gst_mem_chunk_free):
18373         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
18374         (gst_object_ref), (gst_object_unref), (gst_object_sink),
18375         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
18376         (gst_object_dispatch_properties_changed),
18377         (gst_object_set_name_default), (gst_object_set_name),
18378         (gst_object_get_name), (gst_object_set_name_prefix),
18379         (gst_object_get_name_prefix), (gst_object_set_parent),
18380         (gst_object_get_parent), (gst_object_unparent),
18381         (gst_object_check_uniqueness), (gst_object_save_thyself),
18382         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
18383         (gst_object_set_property), (gst_object_get_property),
18384         (gst_object_get_path_string):
18385         * gst/gstobject.h:
18386         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
18387         (gst_real_pad_init), (gst_real_pad_get_property),
18388         (gst_pad_custom_new), (gst_pad_get_direction),
18389         (gst_pad_set_active), (gst_pad_is_active),
18390         (gst_pad_set_event_function), (gst_pad_is_linked),
18391         (gst_pad_link_free), (gst_pad_link_intersect),
18392         (gst_pad_link_fixate), (gst_pad_set_caps),
18393         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
18394         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
18395         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
18396         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
18397         (gst_pad_get_caps), (gst_pad_peer_get_caps),
18398         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
18399         (gst_pad_realize), (gst_pad_get_allowed_caps),
18400         (gst_real_pad_dispose), (gst_real_pad_finalize),
18401         (gst_pad_collectv), (gst_pad_collect_valist),
18402         (gst_pad_template_dispose), (gst_pad_template_new),
18403         (gst_pad_get_internal_links):
18404         * gst/gstpad.h:
18405         * gst/gstpipeline.c: (gst_pipeline_dispose),
18406         (gst_pipeline_change_state):
18407         * gst/gstpipeline.h:
18408         * gst/gstplugin.c:
18409         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
18410         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
18411         * gst/gstpluginfeature.h:
18412         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
18413         * gst/gstquery.c: (_gst_query_type_initialize),
18414         (gst_query_type_register), (gst_query_type_get_by_nick),
18415         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
18416         * gst/gstquery.h:
18417         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
18418         * gst/gstscheduler.c: (gst_scheduler_add_element),
18419         (gst_scheduler_factory_create):
18420         * gst/gststructure.c: (gst_structure_set_parent_refcount),
18421         (gst_structure_free), (gst_structure_set_name),
18422         (gst_structure_id_set_value), (gst_structure_set_value),
18423         (gst_structure_set_valist), (gst_structure_remove_field),
18424         (gst_structure_remove_fields),
18425         (gst_structure_remove_fields_valist),
18426         (gst_structure_remove_all_fields), (gst_structure_foreach),
18427         (gst_structure_map_in_place),
18428         (gst_caps_structure_fixate_field_nearest_int),
18429         (gst_caps_structure_fixate_field_nearest_double):
18430         * gst/gststructure.h:
18431         * gst/gstsystemclock.c: (gst_system_clock_class_init),
18432         (gst_system_clock_init), (gst_system_clock_dispose),
18433         (gst_system_clock_async_thread),
18434         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
18435         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
18436         * gst/gstsystemclock.h:
18437         * gst/gsttag.c: (gst_tag_list_add_value_internal),
18438         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
18439         * gst/gsttaginterface.c:
18440         * gst/gstthread.c: (gst_thread_dispose),
18441         (gst_thread_release_children_locks), (gst_thread_change_state),
18442         (gst_thread_main_loop):
18443         * gst/gsttrashstack.h:
18444         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
18445         * gst/gsttypes.h:
18446         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
18447         (gst_element_request_pad), (gst_element_get_pad_from_template),
18448         (gst_element_request_compatible_pad),
18449         (gst_element_get_compatible_pad_filtered),
18450         (gst_element_get_compatible_pad), (gst_element_state_get_name),
18451         (gst_element_link_pads_filtered), (gst_element_link_filtered),
18452         (gst_element_link_many), (gst_element_link),
18453         (gst_element_link_pads), (gst_element_unlink_pads),
18454         (gst_element_unlink_many), (gst_element_unlink),
18455         (gst_pad_can_link_filtered), (gst_pad_can_link),
18456         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
18457         (gst_object_default_error), (gst_bin_add_many),
18458         (gst_bin_remove_many), (gst_element_populate_std_props),
18459         (gst_element_class_install_std_props), (gst_buffer_merge),
18460         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
18461         (link_fold_func), (gst_pad_proxy_setcaps):
18462         * gst/gstutils.h:
18463         * gst/gstvalue.c: (gst_value_deserialize_string):
18464         * gst/parse/grammar.y:
18465         * gst/schedulers/gstbasicscheduler.c:
18466         (gst_basic_scheduler_cothreaded_chain),
18467         (gst_basic_scheduler_chain_recursive_add),
18468         (gst_basic_scheduler_pad_link):
18469         * gst/schedulers/gstoptimalscheduler.c:
18470         (get_group_schedule_function),
18471         (gst_opt_scheduler_state_transition),
18472         (gst_opt_scheduler_add_element), (element_get_reachables_func):
18473         * libs/gst/bytestream/bytestream.c:
18474         * libs/gst/dataprotocol/dataprotocol.c:
18475         (gst_dp_header_from_buffer):
18476         * po/nb.po:
18477         * po/ru.po:
18478         * tests/threadstate/threadstate2.c: (eos):
18479         * tools/gst-compprep.c: (main):
18480         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
18481         (print_pad_info), (print_children_info):
18482         * tools/gst-launch.c: (idle_func), (main):
18483         * tools/gst-md5sum.c: (idle_func), (main):
18484         * tools/gst-xmlinspect.c: (print_element_info):
18485         First THREADED backport attempt, focusing on adding locks and
18486         making sure the API is threadsafe. Needs more work. More docs
18487         follow this week.
18488
18489 2005-02-24  Andy Wingo  <wingo@pobox.com>
18490
18491         * tests/bench-complexity.scm:
18492         * tests/complexity.gnuplot: New files, good for running complexity
18493         benchmarks.
18494
18495         * tests/Makefile.am:
18496         * tests/complexity.c: New test, sets up N elements, at each level
18497         teeing into M streams per element. Eeeenteresting.
18498
18499         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
18500         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
18501         running bench-mass_elements.scm.
18502
18503         * tests/bench-mass_elements.scm: New script, runs mass_elements
18504         for various numbers of identities, outputting the results to a
18505         file. Requires guile 1.6. Just for testing.
18506
18507 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
18508
18509         * gst/schedulers/fairscheduler.c:
18510           compile with debug disabled
18511
18512 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
18513
18514         * configure.ac:
18515           hunting season on 0.9 is now OPEN