1 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
3 * gst/gstmessage.c: (gst_message_parse_tag),
4 (gst_message_parse_error), (gst_message_parse_warning):
5 Don't crash when return location for error/warning debug
6 string is NULL; add fact that return locations can be
7 NULL to docs where appropriate.
9 2006-01-05 Wim Taymans <wim@fluendo.com>
11 * gst/gstplugin.c: (gst_plugin_load_file):
12 Replace strdup by g_strdup.
14 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
16 * docs/pwg/advanced-types.xml:
19 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
21 submitted by: Abel Cheung
25 Added Chinese (traditional) translation
27 2006-01-04 Wim Taymans <wim@fluendo.com>
29 * docs/manual/basics-pads.xml:
30 * docs/plugins/Makefile.am:
31 * docs/plugins/gstreamer-plugins-docs.sgml:
32 * docs/plugins/gstreamer-plugins-sections.txt:
33 * docs/pwg/advanced-clock.xml:
34 * docs/pwg/advanced-scheduling.xml:
35 * docs/pwg/advanced-types.xml:
36 * plugins/elements/gstfdsink.c:
37 * plugins/elements/gstfdsrc.c:
38 * plugins/elements/gstfdsrc.h:
39 * plugins/elements/gstidentity.c: (gst_identity_class_init):
40 * plugins/elements/gstidentity.h:
41 * plugins/elements/gstqueue.h:
42 * plugins/elements/gsttee.c:
43 * plugins/elements/gsttee.h:
44 * plugins/elements/gsttypefindelement.c:
45 (gst_type_find_element_class_init):
46 * plugins/elements/gsttypefindelement.h:
47 Small updates to various docs.
48 Added core plugins to docs.
50 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
53 add a suppression for liboil's uninitialized variable
55 2006-01-02 James Livingston <jrl at ids dot org dot au>
57 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
60 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
61 macro, so that gcc doesn't complain if the -Wmissing-prototypes
62 compiler switch is being used (#325429).
65 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
67 * gst/gstbin.c: (gst_bin_query):
68 Disable duration query caching in bins until it gets
71 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
73 * tools/gst-inspect.c: (print_element_properties_info):
74 Handle properties of POINTER and BOXED type.
76 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
78 * gst/gst.c: (init_post):
79 Init tags stuff and some other things before loading
80 any static plugins (there may be other static plugins
81 than just the GStreamer ones, and they may want to
82 register their own tags or formats or whatever, and
83 preferably without segfaulting).
85 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
86 Print at least a warning in the debug logs if we drop a
87 query just because we don't know how to adjust the value
88 in the particular format.
90 2005-12-24 David Schleef <ds@schleef.org>
92 * tools/gstreamer-completion:
93 Replacement for gst-complete written in sh and sed. Only
94 completes names of features, but that's 90% of what I want
95 it for. Properties are not available in registry.xml. (Maybe
98 === release 0.10.1 ===
100 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
103 releasing 0.10.1, "Nollaig chridheil"
105 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
108 Add missing quote, should be make ERROR_CFLAGS="".
110 2005-12-20 Wim Taymans <wim@fluendo.com>
112 * docs/design/part-trickmodes.txt:
113 More documentation on trickmodes.
115 2005-12-20 Edward Hervey <edward@fluendo.com>
117 * gst/gstcaps.c: (gst_static_caps_get_type):
119 API addition: GST_TYPE_STATIC_CAPS
120 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
121 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
122 * gst/gstpadtemplate.h:
123 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
124 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
127 2005-12-18 Wim Taymans <wim@fluendo.com>
129 * libs/gst/base/gstadapter.c:
130 * libs/gst/base/gstadapter.h:
131 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
132 (gst_base_sink_get_position):
133 * libs/gst/base/gstbasesink.h:
134 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
135 (gst_base_src_default_query), (gst_base_src_default_do_seek),
136 (gst_base_src_do_seek), (gst_base_src_perform_seek),
137 (gst_base_src_send_event), (gst_base_src_update_length),
138 (gst_base_src_get_range), (gst_base_src_loop),
139 (gst_base_src_start):
140 * libs/gst/base/gstbasesrc.h:
141 * libs/gst/base/gstbasetransform.h:
142 * libs/gst/base/gstcollectpads.h:
143 * libs/gst/base/gstpushsrc.c:
144 * libs/gst/base/gstpushsrc.h:
145 * libs/gst/dataprotocol/dataprotocol.c:
146 * libs/gst/dataprotocol/dataprotocol.h:
147 * libs/gst/net/gstnetclientclock.h:
148 * libs/gst/net/gstnettimeprovider.h:
149 Documentation updates.
151 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
153 * docs/manual/basics-helloworld.xml:
154 Remove superfluous closing bracket in helloworld example.
156 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
158 * tools/gst-launch.1.in:
159 Update gst-launch man page; add a section with useful
160 environment variables. Fixes #323882.
162 2005-12-16 Stefan Kost <ensonic@users.sf.net>
166 change some char* into char[]
168 2005-12-16 Wim Taymans <wim@fluendo.com>
170 * gst/gstregistryxml.c: (load_feature):
172 Don't use g_object_unref on GstObjects so that we avoid
173 leaks on unsafe glibs.
175 2005-12-16 Wim Taymans <wim@fluendo.com>
177 * gst/gstbin.c: (gst_bin_recalc_state):
180 2005-12-16 Wim Taymans <wim@fluendo.com>
183 Added make forever target for check.
185 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
187 * gst/gst.c: (init_post):
188 make the registry cache file HOST_CPU-dependent
190 2005-12-16 Andy Wingo <wingo@pobox.com>
192 * plugins/elements/gstbufferstore.c
193 (gst_buffer_store_cleared_func): Pay attention to g_list_append
196 * tests/check/gst/gstobject.c
197 (test_fake_object_name_threaded_unique): Pay attention to
198 g_list_sort return value.
200 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
202 * tools/gst-feedback-m.m:
203 Update for 0.9/0.10 (fixes #323870).
205 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
207 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
208 Fix lcopy for mini objects, the mini object needs to be ref'ed.
210 * tests/check/gst/gstminiobject.c: (my_foo_init),
211 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
212 (test_value_collection), (gst_mini_object_suite):
213 Add test to ensure refcounts end up as expected when passing
214 GstMiniObjects through g_object_get() and g_object_set().
216 2005-12-14 Julien MOUTTE <julien@moutte.net>
218 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
219 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
220 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
221 of collectpads. This version removes a lot of races without
222 touching API/ABI. Yay !
224 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
226 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
227 Don't allow activation of a srcpad in pull_range if it has no
229 Change some debug statements to be a little clearer
231 * plugins/elements/gsttypefindelement.c:
232 (gst_type_find_handle_src_query):
233 Check that we have a peer before executing queries thereupon.
235 * tests/examples/metadata/read-metadata.c: (message_loop):
236 Use gst_bus_pop instead of gst_bus_poll when we just want it to
237 immediately return us any available message with 0 timeout.
239 2005-12-12 Michael Smith <msmith@fluendo.com>
241 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
242 Don't unref factories after calling them.
243 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
244 * plugins/elements/gsttypefindelement.c:
245 (gst_type_find_element_chain):
246 Free lists of factories after using them. Fixing typefinding memory
249 2005-12-12 Stefan Kost <ensonic@users.sf.net>
251 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
252 (gst_plugin_feature_load):
253 more meaningful debug output
256 * tests/old/examples/Makefile.am:
257 make make distcheck happy again
259 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
261 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
262 Catch the special case where we are operating chain-based,
263 but the downstream peer pad has no chain function. Emit a
264 custom error message in this case instead of letting the
265 core generate one implying that this is some sort of core
266 bug. It's not, it just means that whatever got plugged
267 into the pipeline downstream when we announced the type
268 can only operate pull-based, while our source can only
269 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
270 Error string has not been marked for translation yet, as
271 it probably needs some more work first.
273 (gst_type_find_element_get_best_possibility):
274 Add helper function to find the best of all available
275 found possibilities that qualify given the min. threshold.
277 (gst_type_find_element_handle_event):
278 Fix the case where we get an EOS while still in TYPEFIND
279 mode (we want to chose the best of all possible types,
280 not just the first type that happens to be in our unsorted
281 list of possible types).
283 (gst_type_find_element_chain):
284 Make sure we return GST_FLOW_ERROR when we errored out
285 in stop_typefinding(); also, don't just find the best of
286 all found type entries and then use the last examined
287 type entry, but actually use the best entry.
289 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
291 * tests/examples/typefind/typefind.c: (type_found):
292 * tests/examples/xml/runxml.c: (xml_loaded):
293 More gcc4 fixes and a mem leak fix.
295 2005-12-12 Stefan Kost <ensonic@users.sf.net>
297 * tests/examples/xml/createxml.c: (object_saved):
300 2005-12-12 Stefan Kost <ensonic@users.sf.net>
303 enable the examples even more
305 2005-12-12 Andy Wingo <wingo@pobox.com>
307 * libs/gst/net/gstnettimeprovider.c
308 (gst_net_time_provider_class_init, gst_net_time_provider_init)
309 (gst_net_time_provider_set_property)
310 (gst_net_time_provider_get_property):
311 API addition: Export "active" as a GObject property.
312 (gst_net_time_provider_thread): Only respond to time queries if
313 the time provider is active.
315 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
316 NetTimeProvider, preserving binary compat.
318 2005-12-12 Stefan Kost <ensonic@users.sf.net>
320 * tests/examples/controller/audio-example.c: (main):
321 * tests/examples/launch/Makefile.am:
322 convert comments again
324 2005-12-12 Wim Taymans <wim@fluendo.com>
326 * libs/gst/base/gstpushsrc.c:
329 2005-12-12 Wim Taymans <wim@fluendo.com>
331 * docs/libs/gstreamer-libs-sections.txt:
332 Added new symbol to docs.
334 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
335 (gst_base_src_init), (gst_base_src_set_format),
336 (gst_base_src_default_query), (gst_base_src_query),
337 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
338 (gst_base_src_perform_seek), (gst_base_src_send_event),
339 (gst_base_src_default_event), (gst_base_src_event_handler),
340 (gst_base_src_set_property), (gst_base_src_get_property),
341 (gst_base_src_wait), (gst_base_src_do_sync),
342 (gst_base_src_update_length), (gst_base_src_get_range),
343 (gst_base_src_check_get_range), (gst_base_src_loop),
344 (gst_base_src_default_negotiate), (gst_base_src_start),
345 (gst_base_src_activate_push), (gst_base_src_activate_pull),
346 (gst_base_src_change_state):
347 * libs/gst/base/gstbasesrc.h:
348 Implement seeking to other formats than _BYTES.
349 Implement more seeking methods correctly.
352 Added do_seek vmethod to make life easier for subclasses
354 API addition: gst_base_src_set_format()
356 2005-12-12 Stefan Kost <ensonic@users.sf.net>
358 * tests/examples/Makefile.am:
361 2005-12-12 Stefan Kost <ensonic@users.sf.net>
364 * docs/random/ensonic/media-device-daemon.txt:
365 * tests/examples/controller/.cvsignore:
366 * tests/examples/controller/Makefile.am:
367 * tests/examples/controller/audio-example.c: (main):
368 * tests/examples/helloworld/.cvsignore:
369 * tests/examples/helloworld/Makefile.am:
370 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
371 * tests/examples/launch/.cvsignore:
372 * tests/examples/launch/Makefile.am:
373 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
374 * tests/examples/metadata/.cvsignore:
375 * tests/examples/metadata/Makefile.am:
376 * tests/examples/metadata/read-metadata.c: (message_loop),
377 (make_pipeline), (print_tag), (main):
378 * tests/examples/queue/.cvsignore:
379 * tests/examples/queue/Makefile.am:
380 * tests/examples/queue/queue.c: (event_loop), (main):
381 * tests/examples/typefind/.cvsignore:
382 * tests/examples/typefind/Makefile.am:
383 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
385 * tests/examples/xml/.cvsignore:
386 * tests/examples/xml/Makefile.am:
387 * tests/examples/xml/createxml.c: (object_saved), (main):
388 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
389 * tests/old/examples/Makefile.am:
390 * tests/old/examples/TODO:
391 * tests/old/examples/controller/.cvsignore:
392 * tests/old/examples/controller/Makefile.am:
393 * tests/old/examples/controller/audio-example.c:
394 * tests/old/examples/helloworld/.cvsignore:
395 * tests/old/examples/helloworld/Makefile.am:
396 * tests/old/examples/helloworld/helloworld.c:
397 * tests/old/examples/launch/.cvsignore:
398 * tests/old/examples/launch/Makefile.am:
399 * tests/old/examples/launch/mp3parselaunch.c:
400 * tests/old/examples/launch/mp3play:
401 * tests/old/examples/manual/Makefile.am:
402 * tests/old/examples/metadata/Makefile.am:
403 * tests/old/examples/metadata/read-metadata.c:
404 * tests/old/examples/queue/.cvsignore:
405 * tests/old/examples/queue/Makefile.am:
406 * tests/old/examples/queue/queue.c:
407 * tests/old/examples/typefind/.cvsignore:
408 * tests/old/examples/typefind/Makefile.am:
409 * tests/old/examples/typefind/typefind.c:
410 * tests/old/examples/xml/.cvsignore:
411 * tests/old/examples/xml/Makefile.am:
412 * tests/old/examples/xml/createxml.c:
413 * tests/old/examples/xml/runxml.c:
414 applied some simple fixing to some examples
415 re-enabled the working examples
417 2005-12-12 Wim Taymans <wim@fluendo.com>
419 * gst/gstsegment.c: (gst_segment_init),
420 (gst_segment_set_last_stop), (gst_segment_set_seek),
421 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
422 (gst_segment_to_running_time):
423 Added more documentation.
424 Make sure the last_pos value is updated properly.
425 Make sure to_stream_time and to_running_time don't
426 operate on wrong values.
428 * tests/check/gst/gstsegment.c: (GST_START_TEST):
431 2005-12-12 Michael Smith <msmith@fluendo.com>
433 * plugins/elements/gsttypefindelement.c: (free_entry),
434 (gst_type_find_element_chain):
435 Now that we're not leaking factories, make sure we keep references
436 to them while we need them.
438 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
440 * tests/check/gst/struct_i386.h:
441 ifdef out the XML structs
443 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
445 * gst/gstvalue.c: (gst_value_transform_double_fraction):
446 floor is not needed, F is always positive; this obviates the
447 need for adding -lm when building without libxml
449 2005-12-12 Wim Taymans <wim@fluendo.com>
451 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
452 Take current playback rate into account when reporting
455 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
457 * docs/manual/mime-world.fig:
458 Let's try this again, this time with a file that is
459 actually in XFig format.
461 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
463 * docs/manual/mime-world.fig:
464 Add audioconvert element to diagram so that it
465 matches the text and the code (fixes #319526).
467 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
469 * docs/pwg/building-chainfn.xml:
470 * docs/pwg/building-pads.xml:
471 * docs/pwg/building-state.xml:
472 * docs/pwg/other-source.xml:
473 Update state change stuff for 0.10 (fixes #322969).
475 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
477 * docs/manual/advanced-dataaccess.xml:
478 * docs/manual/appendix-checklist.xml:
479 * docs/manual/appendix-programs.xml:
480 * docs/manual/basics-pads.xml:
481 * docs/manual/highlevel-components.xml:
482 * docs/manual/manual.xml:
483 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
484 add converters in front of pipelines; remove curly
485 brackets for threads stuff, they no longer exist; use
486 GST_TYPE_FRACTION for framerates; update some pieces of
487 code to 0.10, but there's plenty more to do.
489 * docs/manual/appendix-porting.xml:
490 Expand on asynchroneous state changes; s/0.9/0.10/;
491 mention disappearance of gst_init_get_popt_table()
494 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
496 * docs/faq/using.xml:
497 Spider no longer exists, and neither does gst-launch-ext.
498 Update examples to use decodebin and playbin and put
499 converters in front of sinks (fixes #323726).
501 2005-12-09 Michael Smith <msmith@fluendo.com>
503 * plugins/elements/gsttypefindelement.c: (find_peek),
504 (gst_type_find_element_chain):
505 Fix leaking element factories in typefinding.
506 Fix problem where we forgot about a probable type on non-seekable
507 files, and thus later mis-typefound it.
509 2005-12-09 Michael Smith <msmith@fluendo.com>
511 * common/m4/gst-makecontext.m4:
512 * common/m4/gst-mcsc.m4:
514 * win32/common/config.h:
515 * win32/common/config.h.in:
516 Remove makecontext stuff; not used in 0.10 and causes problems on
517 HPUX according to bug #322441
519 2005-12-07 Wim Taymans <wim@fluendo.com>
521 * tests/check/Makefile.am:
522 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
524 * tests/check/libs/struct_i386.h:
525 Added ABI check for libs
527 2005-12-07 Wim Taymans <wim@fluendo.com>
529 * tests/check/Makefile.am:
530 And add the struct_i386.h to dist.
532 2005-12-07 Wim Taymans <wim@fluendo.com>
534 * tests/check/Makefile.am:
535 * tests/check/gst/.cvsignore:
536 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
538 * tests/check/gst/struct_i386.h:
539 Added check for ABI compatibility.
541 2005-12-07 Wim Taymans <wim@fluendo.com>
543 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
544 (gst_fake_src_get_times), (gst_fake_src_create):
545 Fix broken sync option, fixes #323259
547 2005-12-07 Wim Taymans <wim@fluendo.com>
552 * gst/gstcaps.c: (gst_caps_is_equal):
553 Don't assert on NULL <--> X. Fixes #323260
555 * gst/gstminiobject.c: (gst_mini_object_replace):
556 If we're doing atomic operations, we might just as well use
557 the proper way to get an atomic pointer.
559 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
562 2005-12-07 Michael Smith <msmith@fluendo.com>
564 * gst/parse/grammar.y:
565 Remove handling of { } for threads.
567 2005-12-06 David Schleef <ds@schleef.org>
569 * libs/gst/base/gstbasetransform.c: speling fix.
571 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
573 * docs/libs/tmpl/gstdataprotocol.sgml:
574 * docs/random/omega/testing/gstobject.c:
578 * gst/gstelementfactory.c:
583 * gst/gstpadtemplate.c:
584 * gst/gstregistryxml.c:
586 * gst/gsttagsetter.c:
589 * libs/gst/base/gstbasesrc.c:
590 * libs/gst/net/gstnetclientclock.c:
591 * libs/gst/net/gstnettimeprovider.c:
592 * plugins/elements/gstfakesrc.c:
593 * plugins/elements/gstfdsrc.c:
594 * plugins/elements/gstfilesrc.c:
595 * plugins/elements/gstidentity.c:
596 * plugins/elements/gstqueue.c:
597 * plugins/elements/gsttypefindelement.c:
598 * plugins/indexers/gstfileindex.c:
599 * plugins/indexers/gstmemindex.c:
600 * tests/check/gst/gsttag.c:
601 * tests/old/examples/cutter/cutter.c:
602 * tests/old/examples/mixer/mixer.c:
603 * tests/old/examples/xml/runxml.c: (main):
604 * tests/old/testsuite/caps/normalisation.c:
605 * tests/old/testsuite/debug/global.c:
606 * tests/old/testsuite/parse/parse1.c:
607 * tools/gst-xmlinspect.c:
608 * win32/common/dirent.c:
611 === release 0.10.0 ===
613 2005-12-05 <thomas (at) apestaart (dot) org>
616 releasing 0.10.0, "Maroilles"
618 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
620 submitted by: Funda Wang <fundawang@linux.net.cn>
624 added Chinese (Traditional) translation
626 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
628 * docs/gst/gstreamer-sections.txt:
629 * docs/libs/tmpl/gstdataprotocol.sgml:
630 * docs/random/thomasvs/TODO:
635 2005-12-05 Andy Wingo <wingo@pobox.com>
637 patch by: Wim Taymans <wim@fluendo.com>
639 * libs/gst/base/gstbasetransform.c
640 (gst_base_transform_prepare_output_buf)
641 (gst_base_transform_buffer_alloc):
642 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
643 alloc_buffer_and_set_caps.
645 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
646 set_caps on the source pad.
647 (gst_pad_alloc_buffer_and_set_caps): New function, does what
648 alloc_buffer used to do. Fixes #322874.
650 * docs/gst/gstreamer-sections.txt:
651 * docs/design/part-negotiation.txt:
652 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
655 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
657 patch by: Sebastien Moutte
660 * win32/common/config.h.in:
661 * win32/vs6/libgstcontroller.dsp:
664 2005-12-05 Wim Taymans <wim@fluendo.com>
666 * gst/gstcaps.c: (gst_caps_is_equal):
667 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
668 (gst_fake_src_create):
669 Back out previous code changes, leave doc updates, file bugs
672 2005-12-05 Wim Taymans <wim@fluendo.com>
674 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
675 (gst_fake_src_get_times), (gst_fake_src_create):
676 * plugins/elements/gstfakesrc.h:
677 Fix broken sync code.
679 2005-12-05 Wim Taymans <wim@fluendo.com>
681 * gst/gstcaps.c: (gst_caps_is_equal):
682 Comparing NULL against !NULL yields different caps, not a
685 2005-12-05 Wim Taymans <wim@fluendo.com>
688 Fix small typo in docs.
690 2005-12-05 Andy Wingo <wingo@pobox.com>
692 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
694 * gst/gst.c (init_post): remove hard-coded 0.9 location for
695 registries/plugins with a MAJORMINOR one.
696 (plugin_desc): Rename library from gstcoreleements to
697 staticelements. Fixes #323222.
699 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
701 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
702 Change debug category to 'collectpads' from 'collect_pads'
705 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
707 patch by: Sebastien Moutte
709 * libs/gst/controller/gstinterpolation.c:
710 use convert function for uint64/double
711 * win32/vs6/libgstcontroller.dsp:
714 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
716 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
717 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
719 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
720 add tests that seem to show that the guint64/gdouble conversions
723 2005-12-02 Wim Taymans <wim@fluendo.com>
725 * gst/gstregistry.c: (gst_registry_add_path):
727 * gst/gstregistryxml.c:
730 2005-12-02 Wim Taymans <wim@fluendo.com>
732 * gst/gstutils.c: (gst_util_uint64_scale_int64),
733 (gst_util_uint64_scale_int):
736 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
739 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
742 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
745 * win32/common/config.h:
746 * win32/vs6/gstreamer.dsw:
747 * win32/vs6/libgstcoreelements.dsp:
748 * win32/vs6/libgstelements.dsp:
749 renamed core elements plugin
751 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
753 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
755 do piece-wise major/minor comparison so 0.9 < 0.10
756 also allow .exe extensions for tools
758 2005-12-02 Michael Smith <msmith@fluendo.com>
761 Escape a % to make gtkdoc happier; bug 322958.
763 === release 0.9.7 ===
765 2005-12-01 <thomas (at) apestaart (dot) org>
768 releasing 0.9.7, "My Dog Has No Nose"
770 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
772 * common/gst-xmlinspect.py:
774 * docs/libs/tmpl/gstdataprotocol.sgml:
775 * docs/random/release:
794 * win32/common/config.h:
795 * win32/common/config.h.in:
796 * win32/vs6/gst_inspect.dsp:
797 * win32/vs6/gst_launch.dsp:
798 * win32/vs6/libgstbase.dsp:
799 * win32/vs6/libgstelements.dsp:
800 * win32/vs6/libgstreamer.dsp:
801 * win32/vs7/GStreamer.vcproj:
802 * win32/vs7/gst-inspect.vcproj:
803 * win32/vs7/gst-launch.vcproj:
804 * win32/vs7/libgstbase.vcproj:
805 bump GST_MAJORMINOR to 0.10
806 reset libtool version
808 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
812 Added Bulgarian translation by (Alexander Shopov)
814 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
816 * tests/check/gst/gstplugin.c:
819 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
821 * common/gst-xmlinspect.py:
822 * common/gtk-doc-plugins.mak:
825 * docs/gst/Makefile.am:
826 * docs/gst/gstreamer-docs.sgml:
827 * docs/gst/gstreamer-sections.txt:
828 * docs/gst/gstreamer.types:
829 * docs/gst/gstreamer.types.in:
830 * docs/plugins/Makefile.am:
831 * docs/plugins/gstreamer-plugins-docs.sgml:
832 * docs/plugins/gstreamer-plugins-sections.txt:
833 * docs/plugins/gstreamer-plugins.types:
834 * docs/plugins/inspect.stamp:
835 * docs/plugins/inspect/plugin-coreelements.xml:
836 * docs/plugins/inspect/plugin-coreindexers.xml:
837 * docs/plugins/scanobj-build.stamp:
839 * plugins/elements/Makefile.am:
840 * plugins/elements/gstelements.c:
841 * plugins/elements/gstfakesink.c:
842 * plugins/elements/gstfakesrc.c:
843 * plugins/elements/gstfilesink.c:
844 * plugins/elements/gstfilesrc.c:
845 * plugins/elements/gstqueue.c:
846 * plugins/indexers/Makefile.am:
847 * plugins/indexers/gstindexers.c:
848 document core plugins in a separate document just like all the
850 rename these plugins to something starting with core
852 2005-12-01 Andy Wingo <wingo@pobox.com>
854 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
855 padding here before, but it missed the commit.
857 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
859 * libs/gst/controller/gstinterpolation.c:
860 whitespace prices have crashed, we should feel free to use some now
861 use gst_guint64_to_gdouble
863 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
865 * libs/gst/controller/gstcontroller.c:
866 * libs/gst/controller/gsthelper.c:
867 * libs/gst/controller/gstinterpolation.c:
868 * libs/gst/controller/lib.c:
869 wrap config.h include
871 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
873 * docs/gst/gstreamer-sections.txt:
876 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
878 * plugins/elements/gstelements.c:
879 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
880 (gst_fd_sink__class_init), (gst_fd_sink__init),
881 (gst_fd_sink__chain), (gst_fd_sink__set_property),
882 (gst_fd_sink__get_property):
883 * plugins/elements/gstfdsink.h:
884 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
885 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
886 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
887 (gst_fd_src_unlock), (gst_fd_src_set_property),
888 (gst_fd_src_get_property), (gst_fd_src_create),
889 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
890 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
891 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
892 (gst_fd_src_uri_handler_init):
893 * plugins/elements/gstfdsrc.h:
894 * plugins/elements/gstqueue.c: (gst_queue_get_type):
897 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
899 * docs/gst/Makefile.am:
900 * docs/gst/gstreamer.types.in:
904 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
911 * tests/benchmarks/complexity.c:
912 * tests/benchmarks/mass-elements.c:
913 * tests/check/Makefile.am:
915 * tools/gst-inspect.c:
916 * tools/gst-xmlinspect.c:
917 various fixes to make
918 --disable-nls --disable-registry --disable-loadsave
919 --disable-parse --disable-gst-debug
920 work and get the core .so down to 360444 bytes after stripping
922 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
927 * docs/random/thomasvs/TODO:
932 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
934 * win32/GStreamer.vcproj:
937 * win32/Makefile.inspect:
938 * win32/Makefile.launch:
939 * win32/Makefile.register:
941 * win32/gst-inspect.vcproj:
942 * win32/gst-launch.vcproj:
943 * win32/gst-register.vcproj:
944 * win32/gstelements.vcproj:
945 * win32/gstgetbits.def:
946 * win32/gstgetbits.vcproj:
947 * win32/gstreamer-dbg.def:
948 * win32/gstreamer.def:
949 * win32/libgstbase.def:
950 * win32/libgstbase.vcproj:
951 * win32/link_oldruntime.c:
956 move even more stuff, win32/ is nice and clean now
958 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
960 * libs/gst/control/.cvsignore:
965 * win32/gstbytestream.def:
966 * win32/gstbytestream.vcproj:
968 * win32/gstenumtypes.c:
969 * win32/gstenumtypes.h:
970 * win32/gstoptimalscheduler.vcproj:
971 * win32/gstversion.h:
973 * win32/testsuite/bins.vcproj:
974 * win32/testsuite/bytestream.vcproj:
975 * win32/testsuite/caps.vcproj:
976 * win32/testsuite/cleanup.vcproj:
977 * win32/testsuite/clock.vcproj:
978 * win32/testsuite/debug.vcproj:
979 * win32/testsuite/dlopen.vcproj:
980 * win32/testsuite/dynparams.vcproj:
981 * win32/testsuite/elements.vcproj:
982 * win32/testsuite/ghostpads.vcproj:
983 * win32/testsuite/indexers.vcproj:
984 * win32/testsuite/negotiation.vcproj:
985 * win32/testsuite/parse.vcproj:
986 * win32/testsuite/plugin.vcproj:
987 * win32/testsuite/refcounting.vcproj:
988 * win32/testsuite/schedulers.vcproj:
989 * win32/testsuite/states.vcproj:
990 * win32/testsuite/tags.vcproj:
991 * win32/testsuite/threads.vcproj:
992 remove old win32 stuff that isn't maintained and should be
995 2005-11-30 Andy Wingo <wingo@pobox.com>
997 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
998 loading the gst.interfaces python module bork.
1000 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
1001 available since GLib 2.2. Fixes #318031.
1003 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1007 * check/Makefile.am:
1008 * check/elements/.cvsignore:
1009 * check/elements/fakesrc.c:
1010 * check/elements/fdsrc.c:
1011 * check/elements/identity.c:
1012 * check/generic/.cvsignore:
1013 * check/generic/states.c:
1014 * check/gst-libs/.cvsignore:
1015 * check/gst-libs/controller.c:
1016 * check/gst-libs/gdp.c:
1017 * check/gst/.cvsignore:
1018 * check/gst/capslist.h:
1020 * check/gst/gstbin.c:
1021 * check/gst/gstbuffer.c:
1022 * check/gst/gstbus.c:
1023 * check/gst/gstcaps.c:
1024 * check/gst/gstelement.c:
1025 * check/gst/gstevent.c:
1026 * check/gst/gstghostpad.c:
1027 * check/gst/gstiterator.c:
1028 * check/gst/gstmessage.c:
1029 * check/gst/gstminiobject.c:
1030 * check/gst/gstobject.c:
1031 * check/gst/gstpad.c:
1032 * check/gst/gstpipeline.c:
1033 * check/gst/gstplugin.c:
1034 * check/gst/gstsegment.c:
1035 * check/gst/gststructure.c:
1036 * check/gst/gstsystemclock.c:
1037 * check/gst/gsttag.c:
1038 * check/gst/gstutils.c:
1039 * check/gst/gstvalue.c:
1040 * check/net/.cvsignore:
1041 * check/net/gstnetclientclock.c:
1042 * check/net/gstnettimeprovider.c:
1043 * check/pipelines/.cvsignore:
1044 * check/pipelines/cleanup.c:
1045 * check/pipelines/simple_launch_lines.c:
1046 * check/pipelines/stress.c:
1047 * check/states/.cvsignore:
1048 * check/states/sinks.c:
1050 * examples/Makefile.am:
1051 * examples/appreader/.cvsignore:
1052 * examples/appreader/Makefile.am:
1053 * examples/appreader/appreader.c:
1054 * examples/controller/.cvsignore:
1055 * examples/controller/Makefile.am:
1056 * examples/controller/audio-example.c:
1057 * examples/cutter/.cvsignore:
1058 * examples/cutter/Makefile.am:
1059 * examples/cutter/cutter.c:
1060 * examples/cutter/cutter.h:
1061 * examples/events/Makefile.am:
1062 * examples/events/seek.c:
1063 * examples/helloworld/.cvsignore:
1064 * examples/helloworld/Makefile.am:
1065 * examples/helloworld/helloworld.c:
1066 * examples/helloworld2/.cvsignore:
1067 * examples/helloworld2/Makefile.am:
1068 * examples/helloworld2/helloworld2.c:
1069 * examples/launch/.cvsignore:
1070 * examples/launch/Makefile.am:
1071 * examples/launch/mp3parselaunch.c:
1072 * examples/launch/mp3play:
1073 * examples/manual/.cvsignore:
1074 * examples/manual/Makefile.am:
1075 * examples/manual/extract.pl:
1076 * examples/metadata/Makefile.am:
1077 * examples/metadata/read-metadata.c:
1078 * examples/mixer/.cvsignore:
1079 * examples/mixer/Makefile.am:
1080 * examples/mixer/mixer.c:
1081 * examples/mixer/mixer.h:
1082 * examples/pingpong/.cvsignore:
1083 * examples/pingpong/Makefile.am:
1084 * examples/pingpong/pingpong.c:
1085 * examples/plugins/.cvsignore:
1086 * examples/plugins/Makefile.am:
1087 * examples/plugins/example.c:
1088 * examples/plugins/example.h:
1089 * examples/pwg/.cvsignore:
1090 * examples/pwg/Makefile.am:
1091 * examples/pwg/extract.pl:
1092 * examples/queue/.cvsignore:
1093 * examples/queue/Makefile.am:
1094 * examples/queue/queue.c:
1095 * examples/queue2/.cvsignore:
1096 * examples/queue2/Makefile.am:
1097 * examples/queue2/queue2.c:
1098 * examples/queue3/.cvsignore:
1099 * examples/queue3/Makefile.am:
1100 * examples/queue3/queue3.c:
1101 * examples/queue4/.cvsignore:
1102 * examples/queue4/Makefile.am:
1103 * examples/queue4/queue4.c:
1104 * examples/retag/.cvsignore:
1105 * examples/retag/Makefile.am:
1106 * examples/retag/retag.c:
1107 * examples/retag/transcode.c:
1108 * examples/thread/.cvsignore:
1109 * examples/thread/Makefile.am:
1110 * examples/thread/thread.c:
1111 * examples/typefind/.cvsignore:
1112 * examples/typefind/Makefile.am:
1113 * examples/typefind/typefind.c:
1114 * examples/xml/.cvsignore:
1115 * examples/xml/Makefile.am:
1116 * examples/xml/createxml.c:
1117 * examples/xml/runxml.c:
1118 * tests/Makefile.am:
1119 * tests/check/Makefile.am:
1120 * testsuite/.cvsignore:
1121 * testsuite/Makefile.am:
1123 * testsuite/caps/.cvsignore:
1124 * testsuite/caps/Makefile.am:
1125 * testsuite/caps/app_fixate.c:
1126 * testsuite/caps/audioscale.c:
1127 * testsuite/caps/caps.c:
1128 * testsuite/caps/caps.h:
1129 * testsuite/caps/caps_strings:
1130 * testsuite/caps/compatibility.c:
1131 * testsuite/caps/deserialize.c:
1132 * testsuite/caps/enumcaps.c:
1133 * testsuite/caps/eratosthenes.c:
1134 * testsuite/caps/filtercaps.c:
1135 * testsuite/caps/fixed.c:
1136 * testsuite/caps/fraction-convert.c:
1137 * testsuite/caps/fraction-multiply-and-zero.c:
1138 * testsuite/caps/intersect2.c:
1139 * testsuite/caps/intersection.c:
1140 * testsuite/caps/normalisation.c:
1141 * testsuite/caps/random.c:
1142 * testsuite/caps/renegotiate.c:
1143 * testsuite/caps/sets.c:
1144 * testsuite/caps/simplify.c:
1145 * testsuite/caps/string-conversions.c:
1146 * testsuite/caps/structure.c:
1147 * testsuite/caps/subtract.c:
1148 * testsuite/caps/union.c:
1149 * testsuite/debug/.cvsignore:
1150 * testsuite/debug/Makefile.am:
1151 * testsuite/debug/category.c:
1152 * testsuite/debug/commandline.c:
1153 * testsuite/debug/global.c:
1154 * testsuite/debug/output.c:
1155 * testsuite/debug/printf_extension.c:
1156 * testsuite/dlopen/.cvsignore:
1157 * testsuite/dlopen/Makefile.am:
1158 * testsuite/dlopen/dlopen_gst.c:
1159 * testsuite/dlopen/loadgst.c:
1160 * testsuite/elements/.cvsignore:
1161 * testsuite/elements/Makefile.am:
1162 * testsuite/elements/gst-inspect-check.in:
1163 * testsuite/elements/struct_i386.h:
1164 * testsuite/elements/struct_size.c:
1165 * testsuite/indexers/.cvsignore:
1166 * testsuite/indexers/Makefile.am:
1167 * testsuite/indexers/cache1.c:
1168 * testsuite/indexers/indexdump.c:
1169 * testsuite/parse/.cvsignore:
1170 * testsuite/parse/Makefile.am:
1171 * testsuite/parse/parse1.c:
1172 * testsuite/parse/parse2.c:
1173 * testsuite/plugin/.cvsignore:
1174 * testsuite/plugin/Makefile.am:
1175 * testsuite/plugin/README:
1176 * testsuite/plugin/dynamic.c:
1177 * testsuite/plugin/linked.c:
1178 * testsuite/plugin/loading.c:
1179 * testsuite/plugin/registry.c:
1180 * testsuite/plugin/static.c:
1181 * testsuite/plugin/static2.c:
1182 * testsuite/plugin/testplugin.c:
1183 * testsuite/plugin/testplugin2.c:
1184 * testsuite/plugin/testplugin2_s.c:
1185 * testsuite/plugin/testplugin_s.c:
1186 * testsuite/refcounting/.cvsignore:
1187 * testsuite/refcounting/Makefile.am:
1188 * testsuite/refcounting/bin.c:
1189 * testsuite/refcounting/element.c:
1190 * testsuite/refcounting/element_pad.c:
1191 * testsuite/refcounting/mainloop.c:
1192 * testsuite/refcounting/mem.c:
1193 * testsuite/refcounting/mem.h:
1194 * testsuite/refcounting/object.c:
1195 * testsuite/refcounting/pad.c:
1196 * testsuite/refcounting/sched.c:
1197 * testsuite/refcounting/thread.c:
1198 * testsuite/states/.cvsignore:
1199 * testsuite/states/Makefile.am:
1200 * testsuite/states/bin.c:
1201 * testsuite/states/locked.c:
1202 * testsuite/states/parent.c:
1203 * testsuite/threads/.cvsignore:
1204 * testsuite/threads/159566.c:
1205 * testsuite/threads/159852.c:
1206 * testsuite/threads/Makefile.am:
1207 * testsuite/threads/queue.c:
1208 * testsuite/threads/signals.c:
1209 * testsuite/threads/staticrec.c:
1210 * testsuite/threads/thread.c:
1211 * testsuite/threads/threadb.c:
1212 * testsuite/threads/threadc.c:
1213 * testsuite/threads/threadd.c:
1214 * testsuite/threads/threade.c:
1215 * testsuite/threads/threadf.c:
1216 * testsuite/threads/threadg.c:
1217 * testsuite/threads/threadh.c:
1218 * testsuite/threads/threadi.c:
1219 move all of these under tests
1221 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1224 * tests/Makefile.am:
1227 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1229 * docs/gst/gstreamer-sections.txt:
1230 * tests/sched/.cvsignore:
1231 * tests/sched/Makefile.am:
1232 * tests/sched/cases/(fs-fs).xml:
1233 * tests/sched/cases/(fs-i-fs).xml:
1234 * tests/sched/cases/(fs-i-i-fs).xml:
1235 * tests/sched/cases/(fs-i-q[i-fs]).xml:
1236 * tests/sched/dynamic-pipeline.c:
1237 * tests/sched/interrupt1.c:
1238 * tests/sched/interrupt2.c:
1239 * tests/sched/interrupt3.c:
1240 * tests/sched/runtestcases:
1241 * tests/sched/runxml.c:
1242 * tests/sched/sched-stress.c:
1243 * tests/sched/sort.c:
1244 * tests/sched/testcases:
1245 * tests/sched/testcases1.tc:
1246 * tests/seeking/.cvsignore:
1247 * tests/seeking/Makefile.am:
1248 * tests/seeking/seeking1.c:
1249 * tests/threadstate/.cvsignore:
1250 * tests/threadstate/Makefile.am:
1251 * tests/threadstate/test1.c:
1252 * tests/threadstate/test2.c:
1253 * tests/threadstate/threadstate1.c:
1254 * tests/threadstate/threadstate2.c:
1255 * tests/threadstate/threadstate3.c:
1256 * tests/threadstate/threadstate4.c:
1257 * tests/threadstate/threadstate5.c:
1258 remove obsolete tests
1260 * tests/bench-complexity.scm:
1261 * tests/bench-mass_elements.scm:
1262 * tests/complexity.c:
1263 * tests/complexity.gnuplot:
1264 * tests/instantiate/.cvsignore:
1265 * tests/instantiate/Makefile.am:
1266 * tests/instantiate/caps.c:
1267 * tests/mass_elements.c:
1268 * tests/network-clock-utils.scm:
1269 * tests/network-clock.scm:
1271 First pass at cleaning up tests/ dir before moving the rest
1272 Combined with CVS surgery
1274 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1277 queue has moved, update
1279 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1281 * docs/gst/gstreamer-sections.txt:
1282 remove double entries from the docs
1283 * gst/gst_private.h:
1284 * gst/gstinfo.c: (_gst_debug_init):
1285 remove the THREAD debug category
1289 * docs/gst/gstreamer.types:
1290 * plugins/elements/gstqueue.c: (gst_queue_get_type),
1291 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
1292 completely move queue and fix up debugging categories
1294 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1296 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
1297 make initialization portable, using LL is not
1299 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1301 * win32/common/gstconfig.h:
1304 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1306 * win32/common/libgstreamer.def:
1307 rename symbols; sort base section
1309 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1311 * gst/gstclock.c: (do_linear_regression):
1312 remove crack non-portable handrolled DEBUG macro
1314 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1316 * docs/random/release:
1318 * win32/common/gstenumtypes.c: (register_gst_object_flags),
1319 (gst_object_flags_get_type), (register_gst_bin_flags),
1320 (gst_bin_flags_get_type), (register_gst_buffer_flag),
1321 (gst_buffer_flag_get_type), (register_gst_bus_flags),
1322 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
1323 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
1324 (gst_caps_flags_get_type), (register_gst_clock_return),
1325 (gst_clock_return_get_type), (register_gst_clock_entry_type),
1326 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
1327 (gst_clock_flags_get_type), (register_gst_state),
1328 (gst_state_get_type), (register_gst_state_change_return),
1329 (gst_state_change_return_get_type), (register_gst_state_change),
1330 (gst_state_change_get_type), (register_gst_element_flags),
1331 (gst_element_flags_get_type), (register_gst_core_error),
1332 (gst_core_error_get_type), (register_gst_library_error),
1333 (gst_library_error_get_type), (register_gst_resource_error),
1334 (gst_resource_error_get_type), (register_gst_stream_error),
1335 (gst_stream_error_get_type), (register_gst_event_type_flags),
1336 (gst_event_type_flags_get_type), (register_gst_event_type),
1337 (gst_event_type_get_type), (register_gst_seek_type),
1338 (gst_seek_type_get_type), (register_gst_seek_flags),
1339 (gst_seek_flags_get_type), (register_gst_format),
1340 (gst_format_get_type), (register_gst_index_certainty),
1341 (gst_index_certainty_get_type), (register_gst_index_entry_type),
1342 (gst_index_entry_type_get_type),
1343 (register_gst_index_lookup_method),
1344 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
1345 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
1346 (gst_index_resolver_method_get_type), (register_gst_index_flags),
1347 (gst_index_flags_get_type), (register_gst_debug_level),
1348 (gst_debug_level_get_type), (register_gst_debug_color_flags),
1349 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
1350 (gst_iterator_result_get_type), (register_gst_iterator_item),
1351 (gst_iterator_item_get_type), (register_gst_message_type),
1352 (gst_message_type_get_type), (register_gst_mini_object_flags),
1353 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
1354 (gst_pad_link_return_get_type), (register_gst_flow_return),
1355 (gst_flow_return_get_type), (register_gst_activate_mode),
1356 (gst_activate_mode_get_type), (register_gst_pad_direction),
1357 (gst_pad_direction_get_type), (register_gst_pad_flags),
1358 (gst_pad_flags_get_type), (register_gst_pad_presence),
1359 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
1360 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
1361 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
1362 (gst_plugin_error_get_type), (register_gst_plugin_flags),
1363 (gst_plugin_flags_get_type), (register_gst_rank),
1364 (gst_rank_get_type), (register_gst_query_type),
1365 (gst_query_type_get_type), (register_gst_tag_merge_mode),
1366 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
1367 (gst_tag_flag_get_type), (register_gst_task_state),
1368 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
1369 (gst_alloc_trace_flags_get_type),
1370 (register_gst_type_find_probability),
1371 (gst_type_find_probability_get_type), (register_gst_uri_type),
1372 (gst_uri_type_get_type), (register_gst_parse_error),
1373 (gst_parse_error_get_type):
1374 * win32/common/gstenumtypes.h:
1375 * win32/common/gstversion.h:
1376 update visual studio generated files
1378 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1380 * win32/vs6/libgstbase.dsp:
1381 * win32/vs6/libgstelements.dsp:
1382 update project files for new locations
1384 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
1389 reinstate and update
1394 * docs/random/LICENSE:
1397 2005-11-30 Edward Hervey <edward@fluendo.com>
1399 * gst/gsttypefind.c: (gst_type_find_register):
1400 * gst/gsttypefind.h:
1401 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
1402 (gst_type_find_factory_dispose):
1403 * gst/gsttypefindfactory.h:
1404 Fix memory leak in GstTypeFindFactory.
1406 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
1409 * plugins/elements/Makefile.am:
1410 * plugins/elements/gstelements.c:
1411 * plugins/elements/gstqueue.c:
1412 move queue from core to the elements plugin
1414 2005-11-29 Andy Wingo <wingo@pobox.com>
1416 * libs/gst/base/gstbasetransform.h:
1417 * libs/gst/base/gstbasesrc.h:
1418 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
1420 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
1421 of pointers by which to pad very extensible base classes (like the
1422 ones in libs/gst/base).
1424 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
1426 * docs/gst/gstreamer-docs.sgml:
1427 * docs/gst/gstreamer-sections.txt:
1428 * docs/libs/gstreamer-libs-docs.sgml:
1429 * docs/libs/gstreamer-libs-sections.txt:
1430 moving documentation from core to lib
1432 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
1434 * check/Makefile.am:
1436 * docs/gst/Makefile.am:
1438 * gst/base/.cvsignore:
1439 * gst/base/Makefile.am:
1441 * gst/base/gstadapter.c:
1442 * gst/base/gstadapter.h:
1443 * gst/base/gstbasesink.c:
1444 * gst/base/gstbasesink.h:
1445 * gst/base/gstbasesrc.c:
1446 * gst/base/gstbasesrc.h:
1447 * gst/base/gstbasetransform.c:
1448 * gst/base/gstbasetransform.h:
1449 * gst/base/gstcollectpads.c:
1450 * gst/base/gstcollectpads.h:
1451 * gst/base/gstpushsrc.c:
1452 * gst/base/gstpushsrc.h:
1453 * gst/base/gsttypefindhelper.c:
1454 * gst/base/gsttypefindhelper.h:
1455 * gst/check/Makefile.am:
1456 * gst/check/gstcheck.c:
1457 * gst/check/gstcheck.h:
1458 * gst/net/Makefile.am:
1460 * gst/net/gstnetclientclock.c:
1461 * gst/net/gstnetclientclock.h:
1462 * gst/net/gstnettimepacket.c:
1463 * gst/net/gstnettimepacket.h:
1464 * gst/net/gstnettimeprovider.c:
1465 * gst/net/gstnettimeprovider.h:
1466 * libs/gst/Makefile.am:
1467 * libs/gst/base/Makefile.am:
1468 * libs/gst/base/gstbasetransform.c:
1469 * libs/gst/check/Makefile.am:
1470 * plugins/elements/Makefile.am:
1472 CVS surgery + support to move base, check, and net out of gst
1475 2005-11-29 Andy Wingo <wingo@pobox.com>
1477 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
1479 * gst/gststructure.h (struct _GstStructure): Only one pointer of
1482 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
1484 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
1486 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
1488 * gst/gstobject.h: (struct _GstObject): Only one pointer of
1489 padding; reduces object size by about 30%. We don't expect
1490 anything else to go into gstobject.
1492 * gst/gstminiobject.h (struct _GstMiniObject)
1493 (struct _GstMiniObjectClass): Only one pointer of padding; the
1494 payload is only a pointer and two ints anyway. For the class there
1495 are only two methods as well.
1497 * gst/gstelement.h (struct _GstElementClass): Removed
1498 the state_changed signal callback, it is not used.
1500 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
1502 * docs/gst/gstreamer.types:
1503 fix includes, though they are a little dinky
1505 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
1507 * check/Makefile.am:
1508 look in the right place for elements, a lot more chance of
1511 remove indexers and elements subdirs
1512 * plugins/Makefile.am:
1513 make indexers conditional
1515 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
1519 * plugins/elements/Makefile.am:
1520 * plugins/elements/gstcapsfilter.c:
1521 * plugins/elements/gstfilesink.c:
1522 * plugins/elements/gstfilesrc.c:
1523 * plugins/elements/gstidentity.c:
1524 * plugins/indexers/Makefile.am:
1525 do CVS surgery and related build fixery to move elements
1526 and indexers in a new gstreamer/plugins directory, out of the
1529 2005-11-29 Andy Wingo <wingo@pobox.com>
1531 * check/Makefile.am:
1532 * pkgconfig/gstreamer-net-uninstalled.pc.in:
1533 * pkgconfig/gstreamer-net.pc.in:
1534 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
1537 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
1539 * tools/Makefile.am:
1540 * tools/gst-complete.1.in:
1541 * tools/gst-complete.c:
1542 * tools/gst-compprep.1.in:
1543 * tools/gst-compprep.c:
1544 removing -compprep and -complete
1546 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
1548 * gst/gstevent.c: (gst_event_new_new_segment),
1549 (gst_event_parse_new_segment):
1551 fix #320529 - clean up new_segment API and structure.
1552 Let's hope everyone was using the methods, and not the structure.
1554 2005-11-29 Edward Hervey <edward@fluendo.com>
1556 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1557 (gst_base_sink_event), (gst_base_sink_do_sync),
1558 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1559 Properly handle non GST_FORMAT_TIME segment
1560 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
1561 Properly handle non GST_FORMAT_TIME segment
1563 This function is valid if the accumulator is 0 and the format
1564 is different from the requested format.
1566 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
1568 * docs/gst/gstreamer-sections.txt:
1569 Add gst_query_new_seeking and gst_query_parse_seeking to the
1572 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
1574 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
1575 Treat a pad alloc with new caps the same as if we were not
1576 negotiated, in order to allow a changing upstream output
1577 to produce a new format of data.
1579 2005-11-29 Edward Hervey <edward@fluendo.com>
1581 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
1582 (gst_base_transform_event), (gst_base_transform_eventfunc):
1583 The event virtual method is now properly implemented, with a default
1585 Sub classes should call the parent_class event method. They should
1586 return FALSE if they had a problem handling the given event, or don't
1587 want GstBaseTransform to send that even downstream
1588 * gst/elements/gstidentity.c: (gst_identity_class_init),
1589 (gst_identity_init), (gst_identity_event),
1590 (gst_identity_transform_ip), (gst_identity_set_property),
1591 (gst_identity_get_property):
1592 * gst/elements/gstidentity.h:
1593 Added the single-segment boolean property.
1594 If set to TRUE, it will output a single segment of data, starting from
1595 0, will eat up all incoming newsegment, and modify the timestamp of the
1598 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
1600 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
1601 Don't ref NULL target pad (#322751). Improve docs.
1603 2005-11-29 Michael Smith <msmith@fluendo.com>
1605 * gst/gstregistryxml.c: (load_plugin):
1606 Don't crash if we failed to load a feature from a plugin.
1608 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
1610 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
1612 use more check API and less GLib API
1614 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
1617 don't run checks if we don't have check
1619 remove the registry when running make torture
1620 * docs/gst/gstreamer-sections.txt:
1621 remove second multiply
1622 * gst/gstqueue.c: (gst_queue_loop):
1623 fix a compile warning when disabling debug
1625 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
1628 Hey! Let's print the pad name if the pointer != NULL instead
1629 of when it == NULL :-)
1631 2005-11-28 Wim Taymans <wim@fluendo.com>
1633 * check/gst/gstutils.c: (GST_START_TEST):
1634 Updated check, add some scaling accuracy checking code.
1636 * gst/gstutils.c: (gst_util_div128_64),
1637 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
1638 (gst_util_uint64_scale_int):
1639 Fix 6 times faster division code. Optimize for common
1640 1/1 and less common X/1 cases.
1642 2005-11-28 Wim Taymans <wim@fluendo.com>
1644 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1647 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
1648 (do_linear_regression), (gst_clock_add_observation):
1650 Release lock when the clock cannot be slaved.
1651 Catch the case where the regression returned an invalid denominator.
1653 * gst/gstutils.c: (gst_util_div128_64_iterate),
1654 (gst_util_div128_64), (gst_util_uint64_scale_int64),
1655 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
1656 Add protentially more performant non-iterative 128/64 divide function
1657 that unfortunatly does not work yet.
1658 Shortcut the trivial 0/X = 0 case.
1659 Remove the warnings on overflow.
1661 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
1663 * gst/gstplugin.c: (gst_plugin_register_func):
1664 everything causing a plugin not to load should be at least a WARNING
1666 2005-11-28 Stefan Kost <ensonic@users.sf.net>
1668 * docs/random/ensonic/dparams.txt:
1669 some TODOs for the next dev cycle
1670 * libs/gst/controller/gstcontroller.c:
1671 (gst_controlled_property_set_interpolation_mode),
1672 (gst_controlled_property_new):
1673 * libs/gst/controller/gstcontroller.h:
1674 use base type to assign acccessor functions
1676 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
1678 * check/Makefile.am:
1679 Oops, that should have been top_srcdir
1681 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
1683 * check/Makefile.am:
1684 * check/elements/fdsrc.c: (GST_START_TEST):
1685 Use a cmdline define to specify the location of a file to use for
1686 testing, to avoid breaking distcheck.
1688 2005-11-28 Andy Wingo <wingo@pobox.com>
1690 * gst/gstpad.c (fixate_value): Use array functions for arrays.
1692 2005-11-28 Edward Hervey <edward@fluendo.com>
1694 * tools/gst-launch.c: (main):
1695 Clarify the output strings, makes it easier to translate.
1698 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
1701 don't try and build net if we don't even have <sys/socket.h>
1703 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
1705 * check/Makefile.am:
1706 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
1707 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
1708 Add tests for fdsrc seekability
1710 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
1711 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
1712 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
1713 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
1714 * gst/elements/gstfdsrc.h:
1715 fdsrc should not be a 'live' source.
1716 Implement seeking on seekable fd's.
1718 * gst/gstquery.c: (gst_query_new_seeking),
1719 (gst_query_parse_seeking):
1721 Implement SEEKING query functions:
1722 *_new_seeking and *_parse_seeking
1724 2005-11-27 Stefan Kost <ensonic@users.sf.net>
1726 * gst/gstelement.c: (gst_element_dispose):
1729 * gst/gstiterator.c:
1730 * gst/gststructure.c:
1733 * libs/gst/controller/gstcontroller.c:
1734 (gst_controlled_property_set_interpolation_mode):
1735 * libs/gst/controller/gstcontroller.h:
1736 * libs/gst/controller/gstinterpolation.c:
1737 (interpolate_none_get_enum_value_array):
1738 support controlling enums
1740 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
1743 Improve documentation for gst_value_union().
1746 Change return value for union, intersect and subtract functions
1747 from gint to gboolean.
1749 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
1751 * gst/gstvalue.c: (gst_value_serialize_any_list),
1752 (gst_value_transform_any_list_string),
1753 (gst_value_deserialize_list), (gst_value_deserialize_array),
1754 (gst_value_set_int_range), (gst_value_deserialize_int_range),
1755 (gst_value_set_double_range), (gst_value_deserialize_double_range),
1756 (gst_value_set_fraction_range_full),
1757 (gst_value_deserialize_fraction_range),
1758 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
1759 (gst_value_deserialize_boolean),
1760 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
1761 (gst_value_serialize_float), (gst_value_deserialize_float),
1762 (gst_string_wrap), (gst_value_deserialize_string),
1763 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
1764 (gst_value_union_int_range_int_range),
1765 (gst_value_intersect_int_range_int_range),
1766 (gst_value_intersect_double_range_double_range),
1767 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
1768 (gst_value_subtract_int_range_int_range),
1769 (gst_value_subtract_double_double_range),
1770 (gst_value_subtract_double_range_double_range),
1771 (gst_value_deserialize_fraction):
1773 Use gint, gdouble and gchar in our API instead of int, double and
1774 char (and make usage in gstvalue.c more consistent).
1776 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
1778 * check/Makefile.am:
1779 * libs/gst/controller/Makefile.am:
1780 * libs/gst/dataprotocol/Makefile.am:
1781 fix up Makefile.am and remove GST_ENABLE_NEW
1783 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
1787 * gst/base/Makefile.am:
1788 * gst/check/Makefile.am:
1789 * gst/elements/Makefile.am:
1790 * gst/net/Makefile.am:
1791 update LDFLAGS use some more
1793 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
1795 * common/m4/gst-doc.m4:
1798 2005-11-26 Edward Hervey <edward@fluendo.com>
1800 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
1801 This shouldn't issue a g_warning since it returns NULL if it
1802 couldn't find the plugin, and all functions using this behave
1803 properly on a NULL return. Switching to a GST_WARNING.
1805 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
1807 * gst/gstbin.c: (gst_bin_handle_message_func):
1808 Don't leak clock messages.
1810 2005-11-25 Wim Taymans <wim@fluendo.com>
1812 * gst/gstutils.c: (gst_util_uint64_scale_int64),
1813 (gst_util_uint64_scale_int):
1814 Optimisations, remove unneeded vars.
1816 2005-11-25 Wim Taymans <wim@fluendo.com>
1818 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1819 Added more checks for the high precision uint64 cases.
1821 * gst/gstutils.c: (gst_util_uint64_scale_int64),
1822 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
1823 Implement high precision (guint64 * guint64) / guint64.
1825 2005-11-24 Wim Taymans <wim@fluendo.com>
1827 * gst/base/gstbasesrc.c: (gst_base_src_query):
1828 Fix wrong percentage query.
1830 * gst/gstutils.c: (gst_util_uint64_scale),
1831 (gst_util_uint64_scale_int):
1832 Add some more common cases that can be handled
1833 efficiently to _scale.
1835 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
1837 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
1838 (gst_mini_object_suite):
1839 don't use check calls from threads; check probably isn't
1840 threadsafe and using a lock to make it threadsafe would
1841 defeat the purpose of this check
1842 * gst/check/gstcheck.c:
1843 * gst/check/gstcheck.h:
1844 use GST_DEBUG some more
1846 2005-11-24 Wim Taymans <wim@fluendo.com>
1848 * gst/gstutils.c: (gst_util_uint64_scale),
1849 (gst_util_uint64_scale_int):
1850 Chain trivial case to _scale_int.
1852 2005-11-24 Wim Taymans <wim@fluendo.com>
1854 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1855 Added test for scaling.
1860 * gst/gstutils.c: (gst_util_uint64_scale_int):
1861 Implemented high precision scaling code.
1863 2005-11-24 Stefan Kost <ensonic@users.sf.net>
1866 do not crash on pad==NULL
1868 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
1870 Patch by: Stefan Kost
1872 * common/gtk-doc.mak:
1873 * docs/gst/Makefile.am:
1874 * docs/libs/Makefile.am:
1875 Fix distcheck issues for the libraries docs build
1878 2005-11-24 Michael Smith <msmith@fluendo.com>
1880 * docs/manual/basics-helloworld.xml:
1881 Fix bug #315027: memory leak in example code in docs.
1883 2005-11-24 Michael Smith <msmith@fluendo.com>
1885 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1886 Unlock the PREROLL_LOCK in a failure case.
1888 2005-11-24 Wim Taymans <wim@fluendo.com>
1890 * docs/gst/gstreamer-sections.txt:
1891 * gst/base/gstadapter.h:
1892 * gst/base/gstbasesink.h:
1893 * gst/base/gstbasesrc.h:
1894 * gst/base/gstbasetransform.h:
1895 * gst/base/gstpushsrc.h:
1896 * gst/elements/gstfakesink.h:
1897 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
1898 * gst/elements/gstfakesrc.h:
1899 * gst/elements/gstfilesink.h:
1900 * gst/elements/gstfilesrc.h:
1903 * gst/gstbuffer.c: (_gst_buffer_copy):
1906 * gst/gstchildproxy.c:
1909 * gst/gstelementfactory.c:
1910 * gst/gstelementfactory.h:
1912 * gst/gstghostpad.h:
1914 * gst/gstinterface.h:
1915 * gst/gstminiobject.c:
1916 * gst/gstminiobject.h:
1919 * gst/gstpadtemplate.h:
1920 * gst/gstpipeline.h:
1921 * gst/gstpluginfeature.h:
1926 * gst/gsttagsetter.c:
1927 * gst/gsttagsetter.h:
1930 * gst/gsttypefind.h:
1933 * gst/net/gstnetclientclock.c:
1934 * gst/net/gstnetclientclock.h:
1935 * gst/net/gstnettimepacket.c:
1936 * gst/net/gstnettimeprovider.c:
1937 * gst/net/gstnettimeprovider.h:
1940 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
1942 * configure.ac: back to HEAD
1944 === release 0.9.6 ===
1946 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
1949 releasing 0.9.6, "Always On Time"
1951 2005-11-23 Wim Taymans <wim@fluendo.com>
1953 * docs/gst/gstreamer-sections.txt:
1954 * gst/glib-compat.c:
1955 * gst/gsttagsetter.c:
1957 * gst/net/gstnetclientclock.c:
1958 * gst/net/gstnettimepacket.h:
1961 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
1963 * docs/faq/using.xml:
1964 * docs/libs/tmpl/gstcontrol.sgml:
1965 * docs/manual/advanced-dparams.xml:
1966 * docs/manual/appendix-checklist.xml:
1967 * docs/manual/basics-elements.xml:
1968 * docs/pwg/other-source.xml:
1969 * docs/random/moving-plugins:
1971 * tools/gst-launch.1.in:
1972 remove mentions of sinesrc
1974 2005-11-23 Michael Smith <msmith@fluendo.com>
1976 * docs/gst/gstreamer-sections.txt:
1977 Update for new API and API changes.
1979 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
1981 Documentation typo fix.
1982 * gst/net/gstnettimepacket.c:
1983 Documentation fixes for arguments.
1985 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
1987 * gst/gststructure.c: (gst_structure_get_fraction),
1988 (gst_structure_parse_value),
1989 (gst_structure_fixate_field_nearest_fraction):
1990 * gst/gststructure.h:
1991 * gst/gstutils.c: (gst_util_uint64_scale_int):
1993 * scripts/update-funcnames:
1995 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
1996 Make gst_structure_fixate_field_nearest_fraction take a numerator
1997 and denominator argument instead of a GValue
1998 add gst_structure_get_fraction helper function.
2000 2005-11-23 Wim Taymans <wim@fluendo.com>
2002 * docs/design/part-TODO.txt:
2005 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
2006 * gst/net/gstnetclientclock.h:
2007 Use parent fields for timeout and window_size.
2009 2005-11-23 Andy Wingo <wingo@pobox.com>
2011 * check/net/gstnetclientclock.c (test_functioning): Adjust to
2012 rate_num/rate_denom change.
2014 * gst/net/gstnetclientclock.c
2015 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
2016 OBJECT_LOCK. Don't call add_observation with the lock.
2018 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
2020 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
2022 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
2023 deal with rate as a fraction whose numerator and denominator are
2024 GstClockTime values.
2025 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
2026 master; the other fields are protected by the SLAVE_LOCK.
2027 (do_linear_regression): Note that this must be called with the
2029 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
2030 OBJECT_LOCK. Call set_calibration instead of touching the
2032 (gst_clock_set_property, gst_clock_get_property): Protect
2033 master/slave parameters with the SLAVE_LOCK.
2035 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
2036 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
2037 note that all of the instance variables that add_observation and
2038 the set_master functions use are protected by that lock and not
2040 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
2042 * gst/gstclock.c (gst_clock_add_observation): No longer requires
2043 the caller to take the object lock.
2045 2005-11-23 Wim Taymans <wim@fluendo.com>
2047 * gst/gsterror.c: (_gst_core_errors_init):
2049 Add error for clock stuff.
2051 * gst/gstpipeline.c: (gst_pipeline_change_state),
2052 (gst_pipeline_set_clock):
2053 Post clock error when clock cannot be used in a pipeline.
2055 2005-11-23 Stefan Kost <ensonic@users.sf.net>
2057 * docs/gst/gstreamer-sections.txt:
2058 make two symbols from gstinfo private for the docs
2059 * gst/base/gstcollectpads.h:
2061 fix doc typos, update docs
2063 2005-11-22 Wim Taymans <wim@fluendo.com>
2065 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
2066 (gst_base_sink_wait), (gst_base_sink_do_sync),
2067 (gst_base_sink_handle_event):
2068 * gst/base/gstbasesink.h:
2069 No need to store the clock, the parent element class already
2072 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
2073 Updates for clock_set returning a gboolean
2075 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
2076 (gst_clock_id_wait_async), (gst_clock_class_init),
2077 (gst_clock_init), (gst_clock_finalize),
2078 (gst_clock_get_internal_time), (gst_clock_get_time),
2079 (gst_clock_slave_callback), (gst_clock_set_master),
2080 (gst_clock_get_master), (do_linear_regression),
2081 (gst_clock_add_observation), (gst_clock_set_property),
2082 (gst_clock_get_property):
2084 Implement master/slave. When setting a clock as a slave, a
2085 periodic timeout is scheduled to sample master and slave times.
2086 Then the slave clock is recalibrated to match offset and rate
2087 of the master clock.
2088 Update logging a bit.
2089 Add flag so that a clock can state that is cannot be slaved to
2092 * gst/gstelement.c: (gst_element_set_clock):
2094 The set clock returns a gboolean for when an element cannot
2095 deal with the selected clock in the pipeline.
2097 * gst/gstpipeline.c: (gst_pipeline_change_state),
2098 (gst_pipeline_set_clock):
2099 * gst/gstpipeline.h:
2100 Handle the case where the selected clock cannot be set on
2103 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
2104 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
2105 (gst_net_client_clock_set_property),
2106 (gst_net_client_clock_get_property),
2107 (gst_net_client_clock_observe_times):
2108 * gst/net/gstnetclientclock.h:
2109 Use regression code in GstClock parent, remove duplicated
2112 2005-11-22 Michael Smith <msmith@fluendo.com>
2114 * gst/gstutils.c: (gst_util_clock_time_scale):
2116 * docs/gst/gstreamer-sections.txt:
2117 Rename method to have extra underscore.
2119 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
2121 * gst/elements/Makefile.am:
2122 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
2123 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
2124 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
2125 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
2126 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
2127 * gst/elements/gstfakesrc.h:
2128 * gst/gstqueue.c: (queue_leaky_get_type):
2129 correctly fix GEnumValues so that nick is the short lowercase
2131 * tools/gst-inspect.c: (print_element_properties_info):
2132 also show the nick, since it's useful to use from parse_launch
2136 2005-11-22 Michael Smith <msmith@fluendo.com>
2138 * gst/gstutils.c: (gst_util_clocktime_scale):
2140 * docs/gst/gstreamer-sections.txt:
2141 Add util method for scaling a clocktime by a fraction. Useful
2142 implementation is left as an exercise for the reader.
2144 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
2146 * gst/gstvalue.c: (gst_value_collect_fraction_range):
2147 If needed, allocate storage in the destination value during
2150 2005-11-22 Edward Hervey <edward@fluendo.com>
2152 * docs/gst/gstreamer-sections.txt:
2157 * gst/gstutils.c: (gst_util_set_object_arg):
2158 * tools/gst-compprep.c: (main):
2159 * tools/gst-inspect.c: (print_element_properties_info):
2160 Removed GstURI, closes bug #321061
2162 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
2164 * check/gst/gststructure.c: (GST_START_TEST):
2165 * gst/gststructure.c: (gst_structure_parse_value):
2166 Oops, broke automatic string type parsing.
2167 Add a test to catch it in future.
2169 2005-11-22 Andy Wingo <wingo@pobox.com>
2171 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
2172 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
2173 Actually rename the function implementations. Grr.
2175 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
2177 * check/gst/capslist.h:
2179 * check/gst/gststructure.c: (GST_START_TEST),
2180 (gst_structure_suite):
2181 Test automatic value type detection in gst_structure_from_string.
2182 * gst/gststructure.c: (gst_structure_parse_value):
2183 Add fraction as a type we try and guess automatically in
2184 caps/structure strings.
2186 2005-11-22 Andy Wingo <wingo@pobox.com>
2188 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
2190 * gst/gsttagsetter.h:
2191 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
2192 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
2193 (gst_tag_setter_add_tag_valist)
2194 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
2195 _add_values, _add_valist, and _add_valist_values. Since this is an
2196 interface the function suffixes should be more explicit so
2197 language binding don't end up with element.add_valist ->
2198 gst_tag_setter_add_valist, for example. Fixes #322069.
2200 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
2202 * check/gst/gstcaps.c: (GST_START_TEST):
2203 Extend caps string tests to check that a caps to string
2204 conversion is reversible and produces the same caps.
2206 * gst/gststructure.c: (gst_structure_value_get_generic_type):
2207 Output "fraction" as the generic type fraction range, so caps
2208 serialisation and deserialisation works.
2209 * check/gst/capslist.h:
2210 * gst/gstvalue.c: (gst_value_deserialize_fraction):
2211 Support 'MIN' and 'MAX' for deserialising fractions.
2213 2005-11-22 Andy Wingo <wingo@pobox.com>
2215 * gst/gstevent.h (gst_event_new_new_segment)
2216 (gst_event_parse_new_segment, gst_event_new_buffer_size)
2217 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
2218 Renamed from *_newsegment, *_buffersize, *_notarget.
2220 * scripts/update-funcnames: New script, performs the changes
2223 2005-11-22 Wim Taymans <wim@fluendo.com>
2225 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2226 Make sure the GstFlowReturn is returned.
2228 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
2229 (gst_bus_add_signal_watch):
2231 add gst_bus_add_signal_watch_full.
2233 * gst/gstplugin.c: (gst_plugin_load_file):
2234 Small style cleanup.
2236 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
2238 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
2239 Block the fakesrc srcpad when we send an event, to avoid
2240 contention on the stream_lock causing random test failures.
2242 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
2244 * check/gst/gstvalue.c: (GST_START_TEST):
2245 * gst/gstvalue.c: (gst_value_fraction_subtract):
2248 2005-11-22 Stefan Kost <ensonic@users.sf.net>
2251 include "gstchildproxy.h"
2252 * gst/gstchildproxy.h:
2253 * libs/gst/controller/gstcontroller.h:
2254 use G_GNUC_NULL_TERMINATED
2256 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
2258 * check/gst/capslist.h:
2259 * check/gst/gstcaps.c: (GST_START_TEST):
2260 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2261 * gst/gststructure.c: (gst_structure_parse_range),
2262 (gst_structure_fixate_field_nearest_fraction):
2263 * gst/gststructure.h:
2264 * gst/gstvalue.c: (gst_value_init_fraction_range),
2265 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
2266 (gst_value_collect_fraction_range),
2267 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
2268 (gst_value_set_fraction_range_full),
2269 (gst_value_get_fraction_range_min),
2270 (gst_value_get_fraction_range_max),
2271 (gst_value_serialize_fraction_range),
2272 (gst_value_transform_fraction_range_string),
2273 (gst_value_compare_fraction_range),
2274 (gst_value_deserialize_fraction_range),
2275 (gst_value_intersect_fraction_fraction_range),
2276 (gst_value_intersect_fraction_range_fraction_range),
2277 (gst_value_subtract_fraction_fraction_range),
2278 (gst_value_subtract_fraction_range_fraction),
2279 (gst_value_subtract_fraction_range_fraction_range),
2280 (gst_value_collect_fraction), (gst_value_fraction_multiply),
2281 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
2282 (gst_value_transform_string_fraction), (_gst_value_initialize):
2284 Implement fraction ranges and extend GstFraction to support
2285 arithmetic subtraction, as well as deserialization from integer
2286 strings such as "100"
2287 Add a testsuite as for int and double range set operations
2289 2005-11-21 Andy Wingo <wingo@pobox.com>
2293 * gst/gststructure.h: Add glib-compat.h.
2295 2005-11-21 Wim Taymans <wim@fluendo.com>
2297 * gst/gstbin.c: (gst_bin_change_state_func):
2300 2005-11-21 Wim Taymans <wim@fluendo.com>
2303 And add a nice define too.
2305 2005-11-21 Wim Taymans <wim@fluendo.com>
2307 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
2308 (gst_segment_new), (gst_segment_free), (gst_segment_init),
2309 (gst_segment_set_duration), (gst_segment_set_last_stop),
2310 (gst_segment_set_seek), (gst_segment_set_newsegment),
2311 (gst_segment_to_stream_time), (gst_segment_to_running_time),
2314 Make binding friendly.
2316 2005-11-21 Andy Wingo <wingo@pobox.com>
2318 * gst/gsttagsetter.h:
2320 * gst/gststructure.h:
2322 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
2325 * gst/gsterror.c (_gst_core_errors_init):
2326 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
2329 * gst/Makefile.am (gst_headers): Add glib-compat.h.
2330 (noinst_HEADERS): noinst the -private.
2332 2005-11-21 Michael Smith <msmith@fluendo.com>
2335 * gst/gstregistry.h:
2336 Remove unimplemented declarations for which we can see no sensible
2339 2005-11-21 Andy Wingo <wingo@pobox.com>
2341 * gst/gst.h: Include glib-compat.h.
2343 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
2345 * gst/glib-compat.c: Include the public and the private header.
2347 * gst/glib-compat-private.h: Copied here from glib-compat.h.
2351 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
2353 * check/gst/gstevent.c (create_custom_events): Check that
2354 FLUSH_STOP is serialized.
2356 * check/elements/identity.c (event_func):
2357 * check/elements/fakesrc.c (event_func): No stream lock, the core
2360 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
2361 stream lock taking, yay.
2363 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
2364 ensure that core takes the stream lock.
2366 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
2369 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
2370 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
2371 it already. For the flush start we do take it though so we get the
2372 right preroll state change messages.
2374 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
2375 the stream lock here, the core does it for us.
2377 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
2378 GST_STREAM_GET_LOCK.
2379 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
2380 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
2381 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
2382 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
2383 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
2384 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
2386 * gst/gstpad.c: Update for stream lock name change.
2388 * gst/base/gstbasesink.c: Update for preroll lock name change.
2390 2005-11-21 Wim Taymans <wim@fluendo.com>
2392 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
2393 (gst_clock_get_master):
2395 * gst/gstsystemclock.c: (gst_system_clock_init):
2396 Convert Clock flags to object flags.
2397 Added methods to manage master/slave clocks.
2399 2005-11-21 Wim Taymans <wim@fluendo.com>
2401 * check/gst/gstsegment.c: (GST_START_TEST):
2402 * docs/design/part-TODO.txt:
2403 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2404 (gst_base_sink_event), (gst_base_sink_do_sync),
2405 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
2406 (gst_base_sink_query), (gst_base_sink_change_state):
2407 * gst/base/gstbasesink.h:
2408 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
2409 (gst_base_src_default_newsegment),
2410 (gst_base_src_configure_segment), (gst_base_src_do_seek),
2411 (gst_base_src_get_range), (gst_base_src_loop),
2412 (gst_base_src_change_state):
2413 * gst/base/gstbasesrc.h:
2414 * gst/base/gstbasetransform.c:
2415 (gst_base_transform_prepare_output_buf),
2416 (gst_base_transform_event), (gst_base_transform_change_state):
2417 * gst/base/gstbasetransform.h:
2418 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
2419 (gst_collect_pads_event):
2420 * gst/base/gstcollectpads.h:
2421 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
2422 (gst_fake_src_create):
2423 * gst/elements/gstfakesrc.h:
2424 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
2425 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
2426 (gst_segment_set_last_stop), (gst_segment_set_seek),
2427 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
2428 (gst_segment_to_running_time), (gst_segment_clip):
2430 More segment updates, replace code in plugins with segment
2433 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
2435 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
2436 Don't ignore sscanf results
2438 2005-11-21 Andy Wingo <wingo@pobox.com>
2440 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
2443 * *.c: Ran scripts/update-macros. Oh yes.
2445 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
2446 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
2449 * scripts/update-macros: New script. Run it on your files to
2450 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
2453 2005-11-21 Stefan Kost <ensonic@users.sf.net>
2455 * docs/gst/Makefile.am:
2456 * docs/gst/gstreamer-docs.sgml:
2457 * docs/gst/gstreamer-sections.txt:
2458 * docs/gst/gstreamer.types:
2460 more docs fixes, add new api to the docs
2462 2005-11-21 Andy Wingo <wingo@pobox.com>
2464 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
2465 state_broadcast call.
2467 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
2469 2005-11-21 Julien MOUTTE <julien@moutte.net>
2471 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
2472 function calls for arrays.
2474 2005-11-21 Stefan Kost <ensonic@users.sf.net>
2476 * docs/random/ensonic/media-device-daemon.txt:
2477 wild idea, can this be done?
2478 * docs/gst/gstreamer-sections.txt:
2483 * gst/gstpluginfeature.c:
2487 doc fixes and additions
2489 2005-11-21 Andy Wingo <wingo@pobox.com>
2491 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
2492 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
2493 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
2494 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
2495 private to the basesrc implementation.
2497 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
2498 behalf of event function if necessary. It should no longer be
2499 necessary to take the stream lock in pad's event functions. Fixes
2502 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
2503 * docs/gst/gstreamer-sections.txt:
2504 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
2505 (gst_structure_fixate_field_nearest_double),
2506 (gst_structure_fixate_field_boolean):
2507 * gst/gststructure.h:
2508 * win32/common/libgstreamer.def:
2509 * win32/gstreamer.def:
2511 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
2514 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
2516 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
2517 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
2518 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
2519 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
2520 (gst_fdsrc_uri_handler_init):
2521 * gst/elements/gstfdsrc.h:
2522 Port fd:// URI handler from 0.8 to fdsrc
2524 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
2526 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
2527 (gst_value_serialize_fourcc):
2529 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
2530 consistent with our other format defines (#320324).
2532 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
2534 * gst/gstvalue.c: (gst_value_is_fixed):
2535 Revert previous commit. Value lists are by definition
2536 not fixed, as they are a list of possible values.
2538 2005-11-21 Andy Wingo <wingo@pobox.com>
2540 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
2541 during the stable series if we need it. Fixes #319178.
2543 * gst/gstevent.c (gst_event_new_filler): Removed.
2545 * check/gst/gstevent.c: Update comment about filler events.
2547 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
2549 * gst/gstvalue.c: (gst_value_is_fixed):
2550 Should handle both value arrays and value lists.
2552 2005-11-21 Andy Wingo <wingo@pobox.com>
2554 patch by: Alessandro Dessina <alessandro nnva org>
2556 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
2557 functions to access arrays. Fixes #321962.
2559 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
2561 * docs/gst/gstreamer.types:
2562 gst_collectpads_get_type => gst_collect_pads_get_type.
2564 * gst/base/gstbasetransform.c:
2565 Remove unused SIGNAL_HANDOFF enum.
2567 2005-11-21 Andy Wingo <wingo@pobox.com>
2569 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
2570 the event type (upstream, downstream, serialized). Renamed
2571 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
2572 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
2573 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
2575 * gst/gstevent.c: Update for new CUSTOM event names.
2577 * check/gst/gstevent.c: Update check for new CUSTOM event names.
2580 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
2583 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
2585 * docs/gst/gstreamer-sections.txt:
2586 * win32/common/libgstbase.def:
2587 * win32/libgstbase.def:
2588 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
2589 (gst_collect_pads_class_init), (gst_collect_pads_init),
2590 (gst_collect_pads_finalize), (gst_collect_pads_new),
2591 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
2592 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
2593 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
2594 (gst_collect_pads_start), (gst_collect_pads_stop),
2595 (gst_collect_pads_peek), (gst_collect_pads_pop),
2596 (gst_collect_pads_available), (gst_collect_pads_read),
2597 (gst_collect_pads_flush), (gst_collect_pads_event),
2598 (gst_collect_pads_chain):
2599 * gst/base/gstcollectpads.h:
2600 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
2601 unimplemented functions as unimplemented. Add padding to
2602 GstCollectData. (#320766, #320423)
2604 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
2607 Improve docs for DURATION message (usage of duration parameter)
2610 2005-11-20 Wim Taymans <wim@fluendo.com>
2612 * check/Makefile.am:
2613 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
2617 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
2618 (gst_segment_set_seek), (gst_segment_set_newsegment),
2619 (gst_segment_to_stream_time), (gst_segment_to_running_time),
2622 Added segment helper structure and methods. Not fully implemented
2624 Added segment check.
2626 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
2628 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2629 Add a deserialisation test for fractions
2630 * examples/metadata/read-metadata.c: (message_loop),
2631 (make_pipeline), (main):
2632 Fix up metadata reading sample.
2633 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2635 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
2636 Don't try and fixate empty caps
2637 * gst/gst_private.h:
2638 Wrap in G_BEGIN_DECLS/G_END_DECLS
2639 * gst/gstvalue.c: (gst_value_collect_fraction),
2640 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
2641 (gst_value_transform_string_fraction),
2642 (gst_value_compare_fraction):
2643 Add some extra guards to ensure that we don't end up
2644 with an invalid denominator of 0 in a gstfraction and
2645 that fractions always get reduced.
2647 2005-11-20 Wim Taymans <wim@fluendo.com>
2649 * docs/gst/gstreamer-sections.txt:
2660 2005-11-20 Wim Taymans <wim@fluendo.com>
2662 * docs/design/part-TODO.txt:
2664 Make a proper enum of the flag.
2666 2005-11-19 Wim Taymans <wim@fluendo.com>
2668 * docs/design/part-TODO.txt:
2669 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
2670 (gst_format_to_quark), (gst_format_register):
2672 * gst/gstquery.c: (_gst_query_initialize),
2673 (gst_query_type_get_name), (gst_query_type_to_quark),
2674 (gst_query_type_register):
2676 Add type to quark and type to string conversions.
2678 2005-11-19 Andy Wingo <wingo@pobox.com>
2680 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
2683 2005-11-19 Wim Taymans <wim@fluendo.com>
2685 * docs/design/part-TODO.txt:
2686 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
2687 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
2688 (gst_bin_handle_message_func):
2690 Make message handling overridable.
2692 2005-11-19 Andy Wingo <wingo@pobox.com>
2694 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
2697 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
2699 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
2700 is a GstClockTime. Fixes #321710.
2702 * gst/gstclock.h (GstClock): Remove offset property. Add
2703 internal_calibration and external_calibration. Fix padding. Pad
2704 also by GstClockTime so we don't run into problems.
2706 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
2707 (gst_clock_get_rate_offset): Remove.
2708 (gst_clock_set_time_adjust): Remove. Fixes #321712.
2711 * gst/gstutils.c (g_static_rec_cond_wait)
2712 (g_static_rec_cond_timed_wait): Removed, no longer needed.
2714 * gst/gstbin.c: Remove terrible continue_state prototype.
2716 * gst/gstelement.h (gst_element_continue_state): Make public.
2719 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
2720 by continue_state. Fixes #319389.
2722 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
2723 Really fixes #168438. However I don't see anywhere where the
2724 filter function is called... stupid GStreamer...
2726 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
2727 don't have a dispose function, so it won't get called when the
2728 object is unreffed, but oh well!
2730 * gst/gstindex.c (gst_index_set_filter_full): New API function,
2731 allows a destroy function to be set so user_data can be freed.
2733 (gst_index_set_filter): Call gst_index_set_filter_full.
2735 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
2737 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
2738 string should produce an error, given the lack of a way to
2739 represent NULL strings. Fixes #165650.
2742 * gst/gstvalue.c (gst_value_array_append_value)
2743 (gst_value_array_prepend_value, gst_value_array_get_size)
2744 (gst_value_array_get_value): New API, copied from
2745 gst_value_list_*, only operates on arrays.
2746 (gst_value_list_append_value, gst_value_list_prepend_value)
2747 (gst_value_list_concat, gst_value_list_get_size)
2748 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
2750 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
2751 init_list, because it works on both.
2752 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
2753 (gst_value_copy_list_or_array): Renamed from copy_list.
2754 (gst_value_free_list_or_array): Renamed from free_list.
2755 (gst_value_collect_list_or_array): Renamed from collect_list.
2756 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
2757 (gst_value_list_or_array_peek_pointer): Renamed from
2759 (_gst_value_array_value_table, _gst_value_list_value_table):
2760 Update value table functions.
2761 (gst_value_compare_list_or_array): Renamed from compare_list.
2763 * gsttaglist.h: Whoops, foreach function returns void. Also fix
2767 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
2768 GstTagList*. Fixes #143472.
2770 * gst/gststructure.h: Clarify what the foreach/map functions can
2771 or can't do to their arguments.
2773 2005-11-18 Wim Taymans <wim@fluendo.com>
2775 * gst/gstclock.c: (gst_clock_set_calibration),
2776 (gst_clock_get_calibration):
2778 Calibration can be set with internal time equal to current
2781 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
2787 2005-11-18 Andy Wingo <wingo@pobox.com>
2790 * pkgconfig/gstreamer-net.pc.in:
2791 * pkgconfig/gstreamer-net-uninstalled.pc.in:
2792 * pkgconfig/Makefile.am: Add net pkgconfig files.
2794 2005-11-18 Stefan Kost <ensonic@users.sf.net>
2797 * gst/gstghostpad.c:
2803 2005-11-18 Andy Wingo <wingo@pobox.com>
2805 * gst/net/gstnetclientclock.c: Turn off debugging.
2807 * check/net/gstnetclientclock.c (test_functioning): Assert that the
2808 times connverge somewhat. Can't make a real test.
2810 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
2811 integer arithmetic. Return the minimum of the domain, which can be
2812 set as "internal" for gst_clock_set_calibration.
2813 (gst_net_client_clock_observe_times): Call _set_calibration.
2814 (gst_net_client_clock_new): Call _set_calibration instead of
2817 * check/net/gstnetclientclock.c (test_functioning): Use the right
2821 * gst/gstclock.c (gst_clock_get_calibration)
2822 (gst_clock_set_calibration): New functions, obsolete the ones I
2823 added yesterday. Doh. Precision issues mean we have to extrapolate
2824 from a point in the more recent past than 1970.
2825 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
2827 (gst_clock_adjust_unlocked): Use the right calibration data.
2829 2005-11-18 Edward Hervey <edward@fluendo.com>
2831 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
2832 Also reset the ->current_* values in READY->PAUSED
2834 2005-11-18 Andy Wingo <wingo@pobox.com>
2836 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
2837 Whoops, check the right fd. Also add some debugging.
2838 (gst_net_client_clock_observe_times): Adjust for int64 offset.
2839 (do_linear_regression): Add a crapload of debugging. Subtract off
2840 the minimum values from the input series to discard unneeded bits.
2841 Use only int arithmetic. There is still double arithmetic when
2842 calculating the intercept that needs fixing. Return boolean to
2843 indicate success; FALSE would mean the domain or range is too
2844 great. Still needs fixes.
2846 2005-11-18 Wim Taymans <wim@fluendo.com>
2848 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
2849 For the current position in stream time, we need to subtract
2852 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
2853 Release lock before calling the callback function of async
2856 2005-11-18 Andy Wingo <wingo@pobox.com>
2858 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
2859 Port goes all the way to MAXUINT16.
2861 * gst/net/gstnettimeprovider.c: Make the port range the same as
2862 for the kernel: 0 assigns, otherwise ports are less than
2865 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
2868 * check/net/gstnetclientclock.c (test_functioning): Add the start
2871 2005-11-18 Wim Taymans <wim@fluendo.com>
2873 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
2874 (gst_bin_remove_func), (bin_bus_handler):
2876 Removing a clock provider from a bin, triggers a clock lost message
2877 so that a new clock will be selected.
2878 Adding a clock to a bin triggers a clock provider message.
2879 Make sure we reselect a clock when we received a clock lost message.
2880 Keep a reference to the element that provided the clock.
2882 2005-11-18 Andy Wingo <wingo@pobox.com>
2884 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
2885 the clock initially so it produces values around the base time.
2886 (gst_net_client_clock_class_init): Typo fix.
2887 (gst_net_client_clock_thread): Add note on when the socket gets
2890 2005-11-17 Wim Taymans <wim@fluendo.com>
2892 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
2893 Free remote and local time arrays.
2895 2005-11-17 Wim Taymans <wim@fluendo.com>
2897 * gst/net/gstnetclientclock.c: (do_linear_regression),
2898 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
2899 Fix compilation, uninitialized vars and a forgotten continue.
2901 2005-11-17 Andy Wingo <wingo@pobox.com>
2903 * check/Makefile.am (check_PROGRAMS):
2904 * check/net/gstnetclientclock.c: Add a most minimal test for the
2905 net client clock. More to come later.
2908 * gst/net/Makefile.am: Add netclientclock.
2910 * gst/net/gstnetclientclock.h:
2911 * gst/net/gstnetclientclock.c: New files, implement an untested
2912 GstClock that takes its time from a network time provider.
2913 Implements the algorithm in network-clock.scm.
2915 * tests/network-clock.scm (*window-size*): Rename from
2917 * tests/network-clock.scm (network-time):
2918 * tests/network-clock-utils.scm (q-push): Update callers.
2920 2005-11-17 Wim Taymans <wim@fluendo.com>
2922 * gst/gstbin.c: (gst_bin_provide_clock_func),
2923 (gst_bin_sort_iterator_new):
2924 And unref the child too..
2926 2005-11-17 Wim Taymans <wim@fluendo.com>
2928 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2929 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
2930 Refactor the sort iterator so it can be used while holding the
2932 Make clock selection select a clock closest to the source.
2934 2005-11-17 Michael Smith <msmith@fluendo.com>
2936 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
2937 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
2939 Anonymous structs are a gcc (and some other compilers) extension, so
2940 don't use them. Since this is only for ABI-compatibility, and our
2941 API/ABI freeze is over in a few days, this whole thing will only
2942 last a few days, so don't bother trying to think up a meaningful
2943 name for the struct.
2945 2005-11-17 Andy Wingo <wingo@pobox.com>
2947 * gst/gstclock.h (GstClock): Add rate and offset properties,
2948 preserving ABI stability. Add rate/offset accessors. Will file bug
2949 for the freeze break.
2951 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
2952 and offset, trying to keep precision and avoiding
2954 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
2955 functions. Make gst_clock_set_time_adjust obsolete.
2956 (gst_clock_set_time_adjust): Note that this function is obsolete.
2959 * gst/base/gstbasetransform.h: Make the ABI-stability hack
2960 greppable by using GST_PADDING-1+1.
2962 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
2964 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
2966 * gst/gstmessage.c: (gst_message_parse_clock_lost):
2967 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
2969 * gst/gstpadtemplate.h:
2970 * gst/gstpluginfeature.h:
2971 Don't use c++ style comments in headers (#321638).
2973 2005-11-16 Andy Wingo <wingo@pobox.com>
2975 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
2978 * check/net/gstnettimeprovider.c: Check to see that the time
2979 provider actually provides times. Works, yo!
2981 2005-11-16 Wim Taymans <wim@fluendo.com>
2983 * check/Makefile.am:
2986 * check/elements/fakesrc.c: (GST_START_TEST):
2987 Set element to NULL before disposing it.
2989 2005-11-16 Andy Wingo <wingo@pobox.com>
2991 * gst/net/Makefile.am:
2993 * gst/net/gstnettimeprovider.c:
2994 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
2995 provider, include it from gstnet.h, and add it to the build.
2997 * gst/net/gstnettimepacket.h:
2998 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
2999 sending and receiving.
3001 2005-11-16 Wim Taymans <wim@fluendo.com>
3003 * check/Makefile.am:
3004 Enable valgrind check.
3006 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
3007 (gst_fake_src_alloc_buffer):
3010 2005-11-16 Wim Taymans <wim@fluendo.com>
3012 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
3013 Call parent finalize too.
3015 2005-11-16 Wim Taymans <wim@fluendo.com>
3017 * check/Makefile.am:
3018 Enable valgrind check that should work fine now.
3020 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3021 * gst/gstqueue.c: (gst_queue_init):
3022 Fix memleaks in pad allocation.
3024 2005-11-16 Andy Wingo <wingo@pobox.com>
3026 * gst/net/Makefile.am:
3027 * gst/net/gstnet.h: New part of core to hold network elements and
3028 objects. Put in core because it exposes API that applications want
3029 to use. The library is named libgstnet-tempname right now because
3030 of the existing libgstnet in gst-plugins-base. Solution is
3031 probably to rename the one in plugins-base; will file a bug for
3034 * gst/net/gstnettimeprovider.c:
3035 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
3036 get_time call over the network.
3039 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
3041 * check/Makefile.am:
3042 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
3043 get additions shortly.
3045 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
3047 * gst/gstpad.c: (gst_pad_new_from_static_template):
3049 add gst_pad_new_from_static_template functions
3050 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
3051 (gst_check_setup_sink_pad):
3052 * gst/elements/gsttee.c: (gst_tee_init):
3055 2005-11-16 Wim Taymans <wim@fluendo.com>
3057 * gst/gstpad.c: (gst_pad_pause_task):
3058 Removed warning, it's not really an error either.
3060 2005-11-16 Wim Taymans <wim@fluendo.com>
3062 * gst/base/gstbasetransform.c:
3063 (gst_base_transform_prepare_output_buf),
3064 (gst_base_transform_event):
3065 Check if the caps are NULL, this can happen if the element
3066 is shutting down and the pad caps are set to NULL.
3068 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
3070 * gst/elements/gsttee.c: (gst_tee_init):
3071 fix pad template leak in tee
3073 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
3075 * gst/glib-compat.c: (g_value_dup_gst_object):
3076 * gst/glib-compat.h:
3077 * gst/gstpad.c: (gst_pad_set_property):
3078 use gst_object_ref when setting the pad template; this will
3079 trigger the pad template leaks on GLib 2.6 and the slaves
3081 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
3083 * gst/glib-compat.c: (gst_flags_get_first_value):
3084 * gst/glib-compat.h:
3085 * gst/gstregistryxml.c:
3086 remove functions copied from GLib 2.6
3088 2005-11-16 Michael Smith <msmith@fluendo.com>
3091 Don't link against VALGRIND_LIBS. That was always the wrong thing to
3092 do, but only breaks with newer valgrind versions. We're not a
3093 valgrind tool, we have no link-time dependencies on libcoregrind.
3095 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
3097 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
3102 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
3104 * gst/base/gstbasesrc.c: (gst_base_src_init):
3105 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3106 * gst/gstqueue.c: (gst_queue_init):
3107 * gst/gstregistryxml.c: (load_feature):
3108 Revert all these unrefs, they don't even pass make check !
3110 2005-11-15 Johan Dahlin <johan@gnome.org>
3112 * gst/base/gstbasesrc.c: (gst_base_src_init):
3113 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3114 * gst/gstqueue.c: (gst_queue_init):
3115 Free pad templates, fixes a couple of leaks.
3117 2005-11-15 Daniel Fischer <dan at f3c dot com>
3119 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
3121 * gst/gstpad.c: (gst_pad_get_property):
3122 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
3123 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
3126 2005-11-15 Wim Taymans <wim@fluendo.com>
3131 2005-11-15 Andy Wingo <wingo@pobox.com>
3133 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
3135 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
3136 using GST_CLOCK_TIME_NONE to disable base time management.
3137 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
3138 time if it was NONE before.
3139 (gst_pipeline_change_state): Only munge the base time if
3140 stream_time != GST_CLOCK_TIME_NONE.
3142 * check/gst/gstpipeline.c (test_base_time): Punt around the
3143 problem of the probe not being called, because that's not the
3144 issue I'm looking at. Add a check that setting stream_time to NONE
3145 disables base time management.
3147 2005-11-15 Wim Taymans <wim@fluendo.com>
3149 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
3150 segment_stop == -1 at startup.
3152 * gst/base/gstbasetransform.c: (gst_base_transform_event),
3153 (gst_base_transform_change_state):
3154 Init segment values at start.
3156 2005-11-15 Wim Taymans <wim@fluendo.com>
3158 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3159 0 segment values are 0 in any format.
3161 * gst/base/gstbasetransform.c: (gst_base_transform_event):
3162 * gst/base/gstbasetransform.h:
3163 Parse newsegment correctly in basetransform
3165 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
3166 Sync to clock using updated segment values.
3168 2005-11-15 Andy Wingo <wingo@pobox.com>
3170 * check/gst/gstpipeline.c (test_base_time): Add check that the
3171 base time and stream time are reset correctly.
3173 2005-11-15 Wim Taymans <wim@fluendo.com>
3175 * docs/design/part-TODO.txt:
3176 Some more TODO items.
3178 2005-11-15 Andy Wingo <wingo@pobox.com>
3180 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
3181 error if the user selected "no clock" as the clocking method.
3183 * check/gst/gstpipeline.c (test_base_time): New test for buffer
3184 timestamps with live capture.
3186 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
3187 is 0 but we are a live source, timestamp the buffers using the
3190 2005-11-14 Stefan Kost <ensonic@users.sf.net>
3192 * docs/gst/gstreamer-sections.txt:
3194 * gst/gstghostpad.c:
3199 2005-11-14 Wim Taymans <wim@fluendo.com>
3202 add suppressions from Wim's Debian machine
3204 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
3207 add suppressions from Andy's AMD64 Ubuntu machine
3209 2005-11-14 Andy Wingo <wingo@pobox.com>
3211 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
3212 STATE_LOCK not necessary. Fixes #311489.
3214 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
3217 * gst/gstindex.c (gst_index_add_object): Note in the docs that
3218 this function is not implemented.
3220 2005-11-14 Julien MOUTTE <julien@moutte.net>
3222 * gst/base/gstbasetransform.c:
3223 (gst_base_transform_prepare_output_buf):
3224 Ref the source pad caps while we need them.
3227 2005-11-11 Wim Taymans <wim@fluendo.com>
3229 * docs/gst/gstreamer-sections.txt:
3230 Added some docs for GstCollectData.
3232 * gst/base/gstadapter.c:
3233 Some small code example fix.
3235 * gst/base/gstcollectpads.c:
3236 * gst/base/gstcollectpads.h:
3239 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
3241 * configure.ac: back to HEAD
3243 === release 0.9.5 ===
3245 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
3248 releasing 0.9.5, "Bike Lunch Day"
3250 2005-11-11 Wim Taymans <wim@fluendo.com>
3252 * gst/gstbuffer.c: (_gst_buffer_copy):
3255 * gst/gstcaps.c: (gst_caps_is_equal):
3257 Make _is_equal fast in the trivial cases.
3259 * gst/gstminiobject.c:
3260 * gst/gstminiobject.h:
3261 More docs. Spifify .h file.
3266 2005-11-11 Wim Taymans <wim@fluendo.com>
3268 * gst/base/gstbasetransform.c:
3269 (gst_base_transform_prepare_output_buf),
3270 (gst_base_transform_handle_buffer):
3272 If we're processing a buffer and need to allocate an output
3273 buffer, we cannot accept a format change. If we did get a
3274 format change, we have to alloc a buffer ourselves of the
3277 2005-11-11 Wim Taymans <wim@fluendo.com>
3279 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
3280 While checking the flag for reentrancy in the gstcaps function
3281 is nice to detect recursive invocations, it also makes it
3282 impossible to call getcaps from multiple threads, which must be
3283 possible. So, checking for recursive calls has to go.
3285 2005-11-11 Michael Smith <msmith@fluendo.com>
3287 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3288 Don't sync on buffers that fall partially outside our current
3289 segment. Prevents an assertion failure/abort playing some files.
3291 2005-11-10 Andy Wingo <wingo@pobox.com>
3293 * check/gst/gstbin.c (test_message_state_changed_children): Style
3296 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
3297 gst_bus_poll with the signal watch. Ensures that poll and a signal
3298 watch see the same messages.
3300 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
3301 a poll and a watch at the same time get the same messages.
3303 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
3305 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
3306 * gst/gstcaps.c: (gst_caps_intersect):
3307 Don't call gst_caps_do_simplify - it doesn't respect order of caps
3308 and it's not needed.
3310 2005-11-10 Wim Taymans <wim@fluendo.com>
3312 * docs/design/part-TODO.txt:
3315 2005-11-10 Wim Taymans <wim@fluendo.com>
3317 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3318 * gst/base/gstbasesrc.c: (gst_base_src_wait),
3319 (gst_base_src_do_sync), (gst_base_src_get_range):
3320 Implement clock sync in base class.
3322 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
3324 patch by: Tim-Philipp Müller <tim at centricular dot net>
3326 * gst/gststructure.c: (gst_structure_parse_field),
3327 (gst_structure_from_string):
3328 Forward-port a 0.8 patch to handle escaped spaces in structure string,
3329 so that gst_parse_launch() can deal with spaces in filtered link
3330 caps (fixes #164479)
3331 * check/gst/capslist.h:
3332 * check/gst/gststructure.c: (GST_START_TEST):
3333 add unit tests for this change
3335 2005-11-10 Wim Taymans <wim@fluendo.com>
3337 * docs/gst/gstreamer-sections.txt:
3340 Fix docs, move some STATE macros to private.
3342 2005-11-10 Wim Taymans <wim@fluendo.com>
3344 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
3345 Added check for bug #317341
3349 Some more spiffifying.
3351 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
3352 Call peer linkfunction if we are a source pad. Totally fixes
3356 Update docs, source pads should call the peer linkfunction
3357 so they can atomically perform the pad link.
3359 2005-11-09 Wim Taymans <wim@fluendo.com>
3363 Uber-spiffy-spiffify some more.
3365 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
3367 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
3368 * gst/elements/gstfilesink.c: (gst_file_sink_init):
3369 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3370 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
3371 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
3372 * gst/gstpad.c: (gst_pad_init):
3373 Use GST_DEBUG_FUNCPTR() more extensively.
3375 2005-11-09 Wim Taymans <wim@fluendo.com>
3377 * gst/gstobject.c: (gst_object_class_init):
3379 Documentation fixes.
3381 2005-11-09 Edward Hervey <edward@fluendo.com>
3383 * gst/gsttypefindfactory.c:
3386 2005-11-09 Edward Hervey <edward@fluendo.com>
3388 * gst/base/gsttypefindhelper.c:
3389 * gst/gsttypefind.c:
3390 * gst/gsttypefind.h:
3393 2005-11-09 Wim Taymans <wim@fluendo.com>
3395 * gst/gstiterator.c:
3402 2005-11-09 Wim Taymans <wim@fluendo.com>
3408 2005-11-09 Wim Taymans <wim@fluendo.com>
3410 * docs/gst/gstreamer-sections.txt:
3411 Moved the message async delivery private lock and cond
3412 to the private section.
3418 2005-11-09 Edward Hervey <edward@fluendo.com>
3420 * docs/gst/gstreamer-sections.txt:
3423 Document GstURIHandler
3425 2005-11-09 Wim Taymans <wim@fluendo.com>
3427 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
3428 (gst_iterator_find_custom):
3429 * gst/gstiterator.h:
3432 2005-11-09 Wim Taymans <wim@fluendo.com>
3435 Document another field.
3437 * gst/gststructure.c:
3438 * gst/gststructure.h:
3441 2005-11-09 Wim Taymans <wim@fluendo.com>
3446 2005-11-09 Wim Taymans <wim@fluendo.com>
3448 * docs/gst/gstreamer-sections.txt:
3449 Added some new macros.
3456 2005-11-09 Wim Taymans <wim@fluendo.com>
3458 * docs/design/part-TODO.txt:
3459 Some more items for the TODO
3465 2005-11-09 Andy Wingo <wingo@pobox.com>
3467 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
3468 to work on something else now tho...
3470 * gst/base/gstadapter.c: More adapter docs.
3472 * gst/elements/gstfilesink.c (gst_file_sink_start)
3473 (gst_file_sink_stop): New functions, replace the state change
3475 (gst_file_sink_class_init): Hook up the start and stop functions.
3476 (gst_file_sink_base_init): Don't set the state change handler any
3477 more. It was a bit ugly too, being set from here...
3478 (gst_file_sink_get_property, gst_file_sink_set_property):
3480 (gst_file_sink_set_location): More robust check that doesn't call
3483 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
3485 * gst/base/gstbasetransform.c: (gst_base_transform_event):
3486 Hold STREAM_LOCK while pushing newsegment or tag events as well.
3488 2005-11-08 Wim Taymans <wim@fluendo.com>
3490 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
3491 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
3492 (gst_base_sink_chain), (gst_base_sink_change_state):
3493 * gst/base/gstbasesink.h:
3494 * gst/base/gstbasesrc.h:
3497 Avoid excessive typechecking in macros.
3499 * gst/gstminiobject.c: (gst_mini_object_get_type),
3500 (gst_mini_object_init), (gst_mini_object_new),
3501 (gst_mini_object_free):
3502 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3503 (gst_object_finalize):
3504 Remove cruft code, optimize alloc_trace.
3506 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
3508 * docs/faq/gst-uninstalled:
3509 fix up PS1 for systems that try to reset it
3511 2005-11-07 Wim Taymans <wim@fluendo.com>
3513 * gst/base/gstbasesrc.c: (gst_base_src_init),
3514 (gst_base_src_get_range):
3515 Set the segment_end to -1 initially. Fixed typefind.
3517 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
3519 * gst/base/gstadapter.c:
3520 Debug category should be 'adapter', not 'GstAdapter'.
3522 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
3523 (gst_collectpads_class_init), (gst_collectpads_init),
3524 (gst_collectpads_peek), (gst_collectpads_pop),
3525 (gst_collectpads_event), (gst_collectpads_chain):
3526 Add debug category and some debugging output. Use boilerplate
3527 macros. Remove some extraneous words from docs.
3529 2005-11-05 Andy Wingo <wingo@pobox.com>
3531 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
3534 2005-11-04 Stefan Kost <ensonic@users.sf.net>
3536 * docs/gst/gstreamer-sections.txt:
3539 * gst/gstminiobject.h:
3544 2005-11-04 Wim Taymans <wim@fluendo.com>
3546 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
3547 Small update to stop at the configured segment_end
3550 2005-11-04 Stefan Kost <ensonic@users.sf.net>
3552 * gst/gstregistry.c:
3553 * gst/gstregistry.h:
3556 2005-11-04 Edward Hervey <edward@fluendo.com>
3558 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
3559 Check if we are doing a segment seek and have arrived at the
3560 end of that segment.
3562 2005-11-04 Wim Taymans <wim@fluendo.com>
3564 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
3565 Don't leak a mutex unlock in case of an error.
3570 2005-11-04 Wim Taymans <wim@fluendo.com>
3572 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
3574 Get the context to wake up only once.
3576 2005-11-03 Wim Taymans <wim@fluendo.com>
3578 * check/states/sinks.c: (GST_START_TEST):
3579 Uncomment fixed check.
3581 * docs/design/part-TODO.txt:
3584 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
3585 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
3586 (gst_base_sink_get_position):
3587 If we are going to PLAYING, post the right pending state
3588 when we post the intermediate paused message.
3590 * gst/gstelement.c: (gst_element_continue_state),
3591 (gst_element_set_state_func), (gst_element_change_state):
3592 Don't post state changes that were between the same state
3595 2005-11-03 Stefan Kost <ensonic@users.sf.net>
3597 * docs/gst/gstreamer-sections.txt:
3600 * gst/gstminiobject.h:
3603 more docs and doc style fixes
3605 2005-11-03 Stefan Kost <ensonic@users.sf.net>
3607 * docs/gst/gstreamer-sections.txt:
3609 * gst/gstminiobject.c:
3612 2005-11-03 Andy Wingo <wingo@pobox.com>
3614 * check/states/sinks.c (test_livesrc_sink): Add checks that the
3615 state-changed messages actually have the right order and the right
3618 2005-11-03 Wim Taymans <wim@fluendo.com>
3620 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
3621 Added some more checks. Specifically the case where NO_PREROLL
3622 elements are in the pipeline.
3624 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
3625 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
3626 (gst_base_sink_get_position):
3627 Post READY->PAUSED state change messages too.
3628 Fix bug where VOID was posted as pending state...
3630 * gst/gstbin.c: (gst_bin_recalc_state):
3631 use _element_continue_state() to continue the state change.
3633 * gst/gstelement.c: (gst_element_continue_state),
3634 (gst_element_commit_state), (gst_element_set_state_func),
3635 (gst_element_change_state), (gst_element_change_state_func):
3636 Lots of state change cleanups, assign the STATE_RETURN in
3637 a new continue_state() function that also propagates the
3638 last return value from a state change to the app.
3639 Update some debug statements with proper category.
3641 2005-11-03 Wim Taymans <wim@fluendo.com>
3643 * docs/design/part-events.txt:
3644 * docs/design/part-gstpipeline.txt:
3645 * docs/design/part-messages.txt:
3646 * docs/design/part-overview.txt:
3647 * docs/design/part-seeking.txt:
3648 * docs/design/part-states.txt:
3649 * docs/design/part-trickmodes.txt:
3650 * docs/manual/advanced-position.xml:
3654 People think !! is ugly, this looks better.
3656 * gst/gstpad.c: (gst_pad_set_blocked_async):
3657 Remove !! since it's fixed elsewhere now.
3659 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
3661 * gst/gstminiobject.h:
3663 Add !! to _FLAG_IS_SET macros to make the result boolean.
3665 2005-11-03 Edward Hervey <edward@fluendo.com>
3667 * gst/gstpad.c: (gst_pad_set_blocked_async):
3668 comparing a flag and a gboolean rarely returns coherent results...
3669 Added two characters (!!) to make that work correctly.
3671 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
3673 * gst/gstbus.c: (gst_bus_class_init):
3676 * gst/gstqueue.c: (gst_queue_loop):
3677 Don't assume a miniobject that isn't a buffer is an
3678 event (it could be that there is a refcounting
3679 problem somewhere and the pointer is stale and
3680 refers to an already destroyed miniobject).
3682 2005-11-03 Julien MOUTTE <julien@moutte.net>
3684 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
3686 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
3688 * docs/manual/advanced-position.xml:
3689 Update seek example and explanations to current 0.9 API.
3691 * gst/elements/gsttypefindelement.c:
3692 (gst_type_find_element_activate):
3693 Remove FIXME comment now that the found caps
3696 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
3698 * gst/gstregistryxml.c: (load_feature):
3699 Add another GST_STR_NULL instance
3701 2005-11-02 Edward Hervey <edward@fluendo.com>
3703 * gst/gstpad.c: (handle_pad_block):
3704 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
3706 2005-11-02 Wim Taymans <wim@fluendo.com>
3711 * gst/gstelement.c: (gst_element_commit_state):
3712 Remove unused value.
3714 * gst/gstiterator.c:
3715 Mention that the returned element is reffed in the docs.
3717 2005-11-02 Wim Taymans <wim@fluendo.com>
3719 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
3720 (gst_pad_push), (gst_pad_push_event):
3721 Unlock blocked pads when they are flushed.
3723 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
3726 * docs/gst/gstreamer-sections.txt:
3729 * gst/gstregistry.c: (gst_registry_scan_path_level):
3730 fix for a nasty little missed situation where an installed plug-in
3731 which was in the cache did not get overridden by an uninstalled one
3732 which was earlier in the plugin path because the newly created plugin
3733 for the uninstalled one (not in the registry) didn't get its
3734 ->registered set to TRUE
3736 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
3738 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
3739 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
3740 (gst_collectpads_is_active), (gst_collectpads_collect),
3741 (gst_collectpads_collect_range), (gst_collectpads_start),
3742 (gst_collectpads_stop), (gst_collectpads_peek),
3743 (gst_collectpads_pop), (gst_collectpads_available),
3744 (gst_collectpads_read), (gst_collectpads_flush):
3745 Guard public API with assertions.
3748 Fix docs for gst_pad_set_link_function().
3750 2005-11-02 Johan Dahlin <johan@gnome.org>
3752 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
3753 Unref found_caps after we used it.
3755 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
3757 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
3758 Don't try to ref NULL.
3760 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
3762 * win32/common/config.h.in:
3763 provide a GST_FUNCTION that just gives a string for now
3765 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
3767 * win32/common/gstenumtypes.c: (register_gst_object_flags),
3768 (gst_object_flags_get_type), (register_gst_bin_flags),
3769 (gst_bin_flags_get_type), (register_gst_buffer_flag),
3770 (gst_buffer_flag_get_type), (register_gst_bus_flags),
3771 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
3772 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
3773 (gst_clock_return_get_type), (register_gst_clock_entry_type),
3774 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
3775 (gst_clock_flags_get_type), (register_gst_state),
3776 (gst_state_get_type), (register_gst_state_change_return),
3777 (gst_state_change_return_get_type), (register_gst_state_change),
3778 (gst_state_change_get_type), (register_gst_element_flags),
3779 (gst_element_flags_get_type), (register_gst_core_error),
3780 (gst_core_error_get_type), (register_gst_library_error),
3781 (gst_library_error_get_type), (register_gst_resource_error),
3782 (gst_resource_error_get_type), (register_gst_stream_error),
3783 (gst_stream_error_get_type), (register_gst_event_type),
3784 (gst_event_type_get_type), (register_gst_seek_type),
3785 (gst_seek_type_get_type), (register_gst_seek_flags),
3786 (gst_seek_flags_get_type), (register_gst_format),
3787 (gst_format_get_type), (register_gst_index_certainty),
3788 (gst_index_certainty_get_type), (register_gst_index_entry_type),
3789 (gst_index_entry_type_get_type),
3790 (register_gst_index_lookup_method),
3791 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
3792 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
3793 (gst_index_resolver_method_get_type), (register_gst_index_flags),
3794 (gst_index_flags_get_type), (register_gst_debug_level),
3795 (gst_debug_level_get_type), (register_gst_debug_color_flags),
3796 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
3797 (gst_iterator_result_get_type), (register_gst_iterator_item),
3798 (gst_iterator_item_get_type), (register_gst_message_type),
3799 (gst_message_type_get_type), (register_gst_mini_object_flags),
3800 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
3801 (gst_pad_link_return_get_type), (register_gst_flow_return),
3802 (gst_flow_return_get_type), (register_gst_activate_mode),
3803 (gst_activate_mode_get_type), (register_gst_pad_direction),
3804 (gst_pad_direction_get_type), (register_gst_pad_flags),
3805 (gst_pad_flags_get_type), (register_gst_pad_presence),
3806 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
3807 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
3808 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
3809 (gst_plugin_error_get_type), (register_gst_plugin_flags),
3810 (gst_plugin_flags_get_type), (register_gst_rank),
3811 (gst_rank_get_type), (register_gst_query_type),
3812 (gst_query_type_get_type), (register_gst_tag_merge_mode),
3813 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
3814 (gst_tag_flag_get_type), (register_gst_task_state),
3815 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
3816 (gst_alloc_trace_flags_get_type),
3817 (register_gst_type_find_probability),
3818 (gst_type_find_probability_get_type), (register_gst_uri_type),
3819 (gst_uri_type_get_type), (register_gst_parse_error),
3820 (gst_parse_error_get_type):
3821 * win32/common/gstversion.h:
3824 2005-11-01 Luca Ognibene <luogni@tin.it>
3827 fix docs. popt is dead, long live GOption.
3829 2005-10-31 Wim Taymans <wim@fluendo.com>
3834 2005-10-31 Andy Wingo <wingo@pobox.com>
3838 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
3840 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
3841 need to serialize property notifications on GLib 2.8. GLib 2.6 has
3842 the possibility of deadlocks here if code calling notify() or
3843 set() has a lock that can be taken in another notify handler (ABBA
3844 with class lock and e.g. python GIL state lock).
3846 2005-10-28 Julien MOUTTE <julien@moutte.net>
3848 * gst/gstbus.c: Doc updates.
3850 2005-10-28 Wim Taymans <wim@fluendo.com>
3852 * docs/design/part-TODO.txt:
3853 * gst/gstiterator.c:
3854 * gst/gstsystemclock.c:
3855 * gst/gstsystemclock.h:
3858 2005-10-28 Edward Hervey <edward@fluendo.com>
3860 * docs/gst/gstreamer-docs.sgml:
3861 * docs/gst/gstreamer-sections.txt:
3862 the GstURIType documentation page is private, it only defines GstURIType
3863 which should be defined in the GstURIHandler page
3865 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
3867 * gst/gstbin.c: (gst_bin_class_init):
3870 Documentation updates.
3872 2005-10-28 Wim Taymans <wim@fluendo.com>
3874 * docs/gst/gstreamer-sections.txt:
3877 Documented the clocks.
3879 2005-10-28 Stefan Kost <ensonic@users.sf.net>
3881 * docs/gst/gstreamer-sections.txt:
3882 move some macros to private sections
3883 * gst/gstminiobject.c:
3884 * gst/gstminiobject.h:
3885 add descriptions provided by ds and some more
3887 mark macro as to be removed
3889 2005-10-28 Wim Taymans <wim@fluendo.com>
3891 * docs/design/part-TODO.txt:
3892 Add an item to TODO.
3894 * gst/gstiterator.c: (gst_iterator_fold),
3895 (gst_iterator_find_custom):
3896 * gst/gstiterator.h:
3899 2005-10-28 Wim Taymans <wim@fluendo.com>
3901 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
3902 (gst_base_transform_init):
3905 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
3906 An EOS event marks the queue as completely filled.
3908 2005-10-27 Wim Taymans <wim@fluendo.com>
3910 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3911 (gst_base_sink_do_sync), (gst_base_sink_get_position):
3912 Some more debugging.
3914 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
3915 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
3916 (gst_base_transform_event), (gst_base_transform_getrange),
3917 (gst_base_transform_chain):
3918 * gst/base/gstbasetransform.h:
3920 Protect transform and concurrent buffer alloc with a new lock.
3921 Try not to break ABI/API.
3923 2005-10-27 Wim Taymans <wim@fluendo.com>
3925 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
3926 (gst_base_src_init), (gst_base_src_query),
3927 (gst_base_src_default_newsegment),
3928 (gst_base_src_configure_segment), (gst_base_src_do_seek),
3929 (gst_base_src_send_event), (gst_base_src_event_handler),
3930 (gst_base_src_pad_get_range), (gst_base_src_loop),
3931 (gst_base_src_unlock), (gst_base_src_default_negotiate),
3932 (gst_base_src_start), (gst_base_src_deactivate),
3933 (gst_base_src_activate_push), (gst_base_src_change_state):
3934 Move some stuff around and cleanup things.
3936 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
3938 * gst/base/gstbasesrc.c: (gst_base_src_query):
3939 Add missing break statements.
3941 2005-10-27 Wim Taymans <wim@fluendo.com>
3943 * check/gst/gstbin.c: (GST_START_TEST):
3944 An extra refcount is taken in basesrc.
3946 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
3947 (gst_base_src_get_range), (gst_base_src_pad_get_range),
3948 (gst_base_src_loop):
3949 Small cleanups, check for flushing after being unlocked from the
3950 LIVE_LOCK. take refcounts correctly (not yet everywhere).
3951 Don't send out EOS when going to READY.
3953 2005-10-27 Wim Taymans <wim@fluendo.com>
3955 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3956 (gst_base_sink_get_position):
3959 * gst/gstbin.c: (message_check), (bin_replace_message),
3960 (bin_remove_messages), (is_eos), (gst_bin_add_func),
3961 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
3962 (bin_query_duration_init), (bin_query_duration_fold),
3963 (bin_query_duration_done), (bin_query_generic_fold),
3965 * tools/gst-launch.c: (main):
3968 2005-10-26 Stefan Kost <ensonic@users.sf.net>
3970 * examples/controller/audio-example.c: (main):
3971 * examples/queue/queue.c: (event_loop):
3972 * gst/base/gstbasetransform.h:
3973 * gst/gstelement.c: (gst_element_send_event):
3975 * gst/gstpad.c: (gst_pad_send_event):
3978 changing log priority in error situations
3980 2005-10-25 Wim Taymans <wim@fluendo.com>
3982 * gst/gstbin.c: (message_check), (bin_replace_message),
3983 (bin_remove_messages), (is_eos), (gst_bin_add_func),
3984 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
3985 (bin_query_duration_init), (bin_query_duration_fold),
3986 (bin_query_duration_done), (bin_query_generic_fold),
3988 Some doc and debug updates.
3989 Cache previously requested query DURATION for speed. invalidate
3990 cached duration if element posts a DURATION message.
3992 2005-10-25 Wim Taymans <wim@fluendo.com>
3994 * docs/design/part-TODO.txt:
3997 * gst/gstbin.c: (message_check), (bin_replace_message),
3998 (bin_remove_messages), (is_eos), (gst_bin_add_func),
3999 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
4000 (bin_query_duration_init), (bin_query_duration_fold),
4001 (bin_query_duration_done), (bin_query_generic_fold),
4003 Handle SEGMENT_START/DONE messages correctly.
4004 More evolved query algorithm that handles duration queries
4007 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
4008 (gst_element_get_state_func), (gst_element_abort_state),
4009 (gst_element_commit_state), (gst_element_lost_state):
4010 Some more debugging.
4015 2005-10-25 Wim Taymans <wim@fluendo.com>
4017 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
4018 Don't use invalid stream_time.
4020 * gst/gstevent.c: (gst_event_new_newsegment):
4021 stream_time in newsegment cannot be undefined.
4023 2005-10-24 Wim Taymans <wim@fluendo.com>
4028 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
4030 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
4032 2005-10-24 Stefan Kost <ensonic@users.sf.net>
4034 * docs/libs/tmpl/gstdparam.sgml:
4035 * docs/libs/tmpl/gstdplinint.sgml:
4036 * docs/libs/tmpl/gstdpman.sgml:
4037 * docs/libs/tmpl/gstdpsmooth.sgml:
4038 * docs/libs/tmpl/gstunitconvert.sgml:
4041 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
4046 === release 0.9.4 ===
4048 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
4051 releasing 0.9.4, "Tyrannosaurus Rex"
4053 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
4055 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
4056 (gst_file_sink_get_current_offset):
4057 Use fseeko() and ftello() if available. When falling back on
4058 lseek() to get the current offset, fflush() first to make sure
4059 everything is up-to-date and we get the right offset.
4061 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
4063 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4064 * gst/base/gstbasesrc.c: (gst_base_src_loop):
4065 * gst/gsterror.c: (_gst_stream_errors_init):
4067 * gst/gstqueue.c: (gst_queue_loop):
4069 remove prematurely added error category and clean up the instances
4071 2005-10-21 Wim Taymans <wim@fluendo.com>
4073 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4074 (gst_base_sink_get_position), (gst_base_sink_query),
4075 (gst_base_sink_change_state):
4076 Simply set the right flag when going to playing, that's all
4077 we need to do instead of calling a function inside the object
4078 lock (that could take the lock as well and deadlock)
4080 2005-10-21 Wim Taymans <wim@fluendo.com>
4082 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
4083 (gst_base_src_loop):
4084 Don't warn, the peer element knows what to do best when
4085 the seek failed, it might try something else.
4087 2005-10-21 Wim Taymans <wim@fluendo.com>
4089 * gst/base/gstbasesrc.c: (gst_base_src_init),
4090 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
4093 2005-10-21 Wim Taymans <wim@fluendo.com>
4095 * docs/design/part-segments.txt:
4098 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4099 Correctly set caps, even on the subbufer.
4101 2005-10-21 Wim Taymans <wim@fluendo.com>
4103 * docs/gst/gstreamer-docs.sgml:
4104 * docs/gst/gstreamer-sections.txt:
4111 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
4115 And 2% more doc coverage.
4117 2005-10-21 Andy Wingo <wingo@pobox.com>
4119 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
4122 2005-10-20 Wim Taymans <wim@fluendo.com>
4124 * gst/gsterror.c: (gst_error_get_message):
4127 * gst/gststructure.c:
4132 2005-10-20 Wim Taymans <wim@fluendo.com>
4137 Another 1% more coverage.
4139 2005-10-20 Wim Taymans <wim@fluendo.com>
4141 * docs/gst/gstreamer-sections.txt:
4142 * gst/gstelement.c: (gst_element_get_state_func),
4143 (gst_element_abort_state), (gst_element_commit_state),
4144 (gst_element_lost_state):
4146 * gst/gstquery.c: (gst_query_set_position),
4147 (gst_query_parse_position), (gst_query_set_duration),
4148 (gst_query_parse_duration), (gst_query_new_convert):
4150 Yay! 1% more docs coverage.
4152 2005-10-20 Wim Taymans <wim@fluendo.com>
4155 * gst/gstquery.c: (gst_query_set_position),
4156 (gst_query_parse_position), (gst_query_set_duration),
4157 (gst_query_parse_duration), (gst_query_new_convert):
4159 * gst/gstutils.c: (gst_element_query_convert):
4161 Docs and consistency fixes.
4163 2005-10-20 Wim Taymans <wim@fluendo.com>
4169 2005-10-20 Wim Taymans <wim@fluendo.com>
4171 * gst/gstbin.c: (message_check), (bin_replace_message),
4172 (bin_remove_messages), (is_eos), (gst_bin_add_func),
4173 (update_degree), (gst_bin_sort_iterator_next),
4174 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
4175 Reworked the message handling a bit, cache the messages instead of
4176 only the senders. alows us to do more in the future.
4178 2005-10-20 Wim Taymans <wim@fluendo.com>
4180 * docs/design/part-TODO.txt:
4183 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
4184 (gst_base_sink_query):
4185 Don't use clock time to report position when in EOS.
4187 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
4189 * tools/gst-inspect.c: (print_interfaces),
4190 (print_element_properties_info), (print_element_info):
4191 Fix interface output with gst-inspect -a; don't print
4192 newlines after double/float properties.
4194 2005-10-20 Wim Taymans <wim@fluendo.com>
4196 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
4197 (gst_base_sink_query):
4198 Speed up current position calculation.
4200 * gst/base/gstbasesrc.c: (gst_base_src_query),
4201 (gst_base_src_default_newsegment):
4202 Correctly set stream position in newsegment.
4204 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
4205 (update_degree), (gst_bin_sort_iterator_next),
4206 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
4207 * gst/gstmessage.c: (gst_message_new_custom):
4208 Clean up debugging info
4210 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
4211 (gst_queue_loop), (gst_queue_handle_src_query):
4214 2005-10-19 Wim Taymans <wim@fluendo.com>
4216 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4217 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
4218 Fix query handling again.
4220 2005-10-19 Wim Taymans <wim@fluendo.com>
4222 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4223 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
4224 * gst/base/gstbasesrc.c: (gst_base_src_query):
4225 * gst/elements/gstfilesink.c: (gst_file_sink_query):
4226 * gst/elements/gsttypefindelement.c:
4227 (gst_type_find_handle_src_query), (find_element_get_length),
4228 (gst_type_find_element_activate):
4231 * gst/gstquery.c: (gst_query_new_position),
4232 (gst_query_set_position), (gst_query_parse_position),
4233 (gst_query_new_duration), (gst_query_set_duration),
4234 (gst_query_parse_duration), (gst_query_set_segment),
4235 (gst_query_parse_segment):
4237 Bundling query position/duration is not a good idea since duration
4238 does not change much and we don't want to recalculate it for every
4239 position query, so they are separated again..
4240 Base value in segment query is not needed.
4242 * gst/gstqueue.c: (gst_queue_handle_src_query):
4243 * gst/gstutils.c: (gst_element_query_position),
4244 (gst_element_query_duration), (gst_pad_query_position),
4245 (gst_pad_query_duration):
4247 Updates for query API change.
4248 Added some docs here and there.
4250 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
4252 * check/gst/gstbin.c: (GST_START_TEST):
4253 * check/gst/gstghostpad.c: (GST_START_TEST):
4254 * check/pipelines/cleanup.c: (GST_START_TEST):
4255 wait on thread to die so we can check refcount correctly
4257 2005-10-18 Wim Taymans <wim@fluendo.com>
4259 * check/pipelines/stress.c: (GST_START_TEST):
4260 Make check a little more time consuming.
4262 2005-10-18 Wim Taymans <wim@fluendo.com>
4264 * check/Makefile.am:
4265 * check/pipelines/stress.c: (GST_START_TEST),
4266 (simple_launch_lines_suite), (main):
4267 Small state change torture test.
4269 * docs/design/part-states.txt:
4270 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4271 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
4272 (gst_base_sink_change_state):
4273 Never take state lock from streaming thread, clean up ugly
4274 hacks. Unfortunatly core does not yet support nice ways to
4277 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
4279 Start state recalc if a STATE_DIRTY message is posted, but only
4280 on the toplevel bin.
4282 * gst/gstelement.c: (gst_element_sync_state_with_parent),
4283 (gst_element_get_state_func), (gst_element_abort_state),
4284 (gst_element_commit_state), (gst_element_lost_state),
4285 (gst_element_set_state_func), (gst_element_change_state):
4287 State variables are now protected with the LOCK, the state
4288 lock is only used to serialize _set_state().
4290 2005-10-18 Wim Taymans <wim@fluendo.com>
4292 * check/gst/gstbin.c: (GST_START_TEST):
4293 * check/gst/gstmessage.c: (GST_START_TEST):
4294 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
4295 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
4297 * gst/gstelement.c: (gst_element_abort_state),
4298 (gst_element_commit_state), (gst_element_lost_state):
4299 * gst/gstmessage.c: (gst_message_new_state_changed),
4300 (gst_message_new_state_dirty), (gst_message_new_segment_start),
4301 (gst_message_new_segment_done), (gst_message_new_duration),
4302 (gst_message_parse_state_changed),
4303 (gst_message_parse_segment_start),
4304 (gst_message_parse_segment_done), (gst_message_parse_duration):
4306 * tools/gst-launch.c: (event_loop):
4307 Seriously, this is better than a previous commit as we only need
4308 to notify the fact that an element changed state in a streaming
4309 thread, marking the state of the parents dirty, hence the
4310 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
4313 2005-10-18 Wim Taymans <wim@fluendo.com>
4315 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
4316 (gst_bin_recalc_func):
4317 * gst/gstelement.c: (gst_element_set_clock),
4318 (gst_element_abort_state), (gst_element_lost_state):
4319 Cleanups, prepare for state change fixes.
4321 2005-10-18 Wim Taymans <wim@fluendo.com>
4324 * gst/gstelement.c: (gst_element_class_init),
4325 (gst_element_set_state), (gst_element_set_state_func):
4327 Pending ABI changes.
4328 GThreadPool in GstBinClass to monitor async state changes.
4329 state_cookie in GstElement to detect concurrent gst/set state.
4330 set_state is now virtual too in case a very complicated element
4331 has to be constructed.
4333 2005-10-18 Wim Taymans <wim@fluendo.com>
4335 * check/gst/gstbin.c: (GST_START_TEST):
4336 * check/gst/gstmessage.c: (GST_START_TEST):
4337 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
4338 * gst/gstbin.c: (bin_bus_handler):
4339 * gst/gstelement.c: (gst_element_commit_state),
4340 (gst_element_lost_state):
4341 * gst/gstmessage.c: (gst_message_new_state_changed),
4342 (gst_message_new_segment_start), (gst_message_new_segment_done),
4343 (gst_message_new_duration), (gst_message_parse_state_changed),
4344 (gst_message_parse_segment_start),
4345 (gst_message_parse_segment_done), (gst_message_parse_duration):
4347 * tools/gst-launch.c: (event_loop):
4348 Make messages future proof.
4349 state-change gets a flag if it was a message comming from the
4351 segment-start/stop can also be specified in other formats.
4352 A message to notify an app that a pipeline changed playback
4354 Also fix a GstMessage leak in -launch
4356 2005-10-18 Andy Wingo <wingo@pobox.com>
4358 * gst/gstelement.c (gst_element_dispose): More helpful message.
4360 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
4362 reviewed by: <delete if not using a buddy>
4364 * common/gtk-doc.mak:
4366 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
4368 * gst/gstregistry.c: (gst_registry_scan_path_level):
4369 unref a plug-in we get that was already initialized
4371 2005-10-18 Stefan Kost <ensonic@users.sf.net>
4373 * docs/gst/gstreamer-sections.txt:
4374 * docs/libs/gstreamer-libs-sections.txt:
4379 2005-10-17 Andy Wingo <wingo@pobox.com>
4381 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
4384 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
4386 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
4388 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
4389 (gst_element_get_state_func): Better debug message.
4390 (gst_element_commit_state): s/INFO/DEBUG/.
4391 (gst_element_lost_state, gst_element_change_state):
4393 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
4394 (gst_message_new_custom): s/INFO/LOG/.
4396 2005-10-17 Michael Smith <msmith@fluendo.com>
4398 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
4399 Check if end time is valid using end time, not start time.
4401 2005-10-17 Stefan Kost <ensonic@users.sf.net>
4403 * check/gst-libs/controller.c: (GST_START_TEST),
4404 (gst_controller_suite):
4405 * libs/gst/controller/gstcontroller.c:
4406 (gst_controlled_property_set_interpolation_mode):
4407 * libs/gst/controller/gstcontroller.h:
4408 * libs/gst/controller/gstinterpolation.c:
4409 * testsuite/controller/.cvsignore:
4410 * testsuite/controller/Makefile.am:
4411 * testsuite/controller/interpolator.c:
4412 merge controller testsuites
4414 remove mem-chunk from docs
4416 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
4418 * gst/gstmemchunk.c:
4419 * gst/gstmemchunk.h:
4420 * gst/gsttrashstack.c:
4421 * gst/gsttrashstack.h:
4422 out. get out. you're fired. to the Attic !
4424 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
4426 * gst/gstcaps.c: (gst_caps_intersect):
4427 fix signedness issues in a (hopefully) correct way
4428 * gst/gstelement.c: (gst_element_pads_activate):
4430 * gst/gstobject.c: (gst_object_set_parent):
4433 2005-10-17 Julien MOUTTE <julien@moutte.net>
4435 * gst/gstvalue.h: Fix prototypes.
4437 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
4439 * docs/gst/gstreamer-sections.txt:
4440 * gst/gst.c: (gst_version_string):
4442 * gst/gstversion.h.in:
4443 * win32/common/libgstreamer.def:
4444 add gst_version_string ()
4446 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
4450 * gst/gst.c: (init_post):
4451 * win32/common/config.h.in:
4453 * gst/gstcaps.c: (gst_caps_intersect):
4454 use gint64, the range could be bigger than a guint
4456 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
4459 document potential problem in 2038
4461 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
4463 * gst/gstcaps.c: (gst_caps_intersect):
4464 Fix guint j diving under 0
4466 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
4469 * win32/common/config.h:
4470 * win32/common/config.h.in:
4471 check for process.h, declares getpid() on Windows
4473 include process.h if we have it
4474 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
4475 * gst/gstmemchunk.h:
4476 fix signedness issues
4477 * win32/common/libgstreamer.def:
4480 2005-10-16 Julien MOUTTE <julien@moutte.net>
4482 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
4483 fix. Because of unsigned ints, caps intersection was going nuts and
4484 trying to access structures with G_MAXUINT index. That fixes
4485 videotestsrc ! ffmpegcolorspace ! fakesink
4486 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
4489 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
4492 use the gettext macro
4493 * gst/elements/gstelements.c:
4495 * gst/indexers/gstindexers.c:
4496 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
4497 * win32/common/config.h:
4499 * win32/common/config.h.in:
4500 add the template to generate config.h
4501 * win32/common/gstenumtypes.c:
4502 * win32/common/gstversion.h:
4505 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
4507 * gst/gst.c: (gst_version):
4508 * gst/gstversion.h.in:
4511 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
4514 Oops, add missing closing bracket.
4516 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4519 use common m4's for argument checking
4521 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
4523 * docs/gst/gstreamer-sections.txt:
4525 Add GST_EVENT_TYPE_NAME() macro.
4527 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4530 * gst/gstpluginfeature.c:
4532 privatize more symbols
4534 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4537 add srcdir, builddir includes to GST_ALL_CFLAGS, since
4538 everything that uses GStreamer API should have the includes
4540 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4542 * docs/gst/gstreamer-sections.txt:
4543 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
4545 give each value a _get_type, removes the DATA exports
4547 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4551 remove _gst_registry_auto_load, not used anymore
4552 * gst/gstbin.c: (gst_bin_get_type):
4554 * gst/gstelement.c: (gst_element_get_type):
4556 * gst/gstobject.c: (gst_object_get_type):
4558 * gst/gstpad.c: (gst_pad_get_type):
4560 make _get_type functions similar, fixes data export from library
4562 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4565 correctly make conditionals
4566 * gst/elements/Makefile.am:
4567 * gst/elements/gstelements.c:
4568 fix typo causing fdsrc not to build
4570 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4572 * testsuite/Makefile.am:
4573 * testsuite/bytestream/.cvsignore:
4574 * testsuite/bytestream/Makefile.am:
4575 * testsuite/bytestream/filepadsink.c:
4576 * testsuite/bytestream/gstbstest.c:
4577 * testsuite/bytestream/test1.c:
4578 * testsuite/bytestream/testfile1:
4579 * testsuite/caps/normalisation.c:
4580 * testsuite/caps/random.c: (main):
4581 * testsuite/cleanup/.cvsignore:
4582 * testsuite/cleanup/Makefile.am:
4583 * testsuite/cleanup/cleanup1.c:
4584 * testsuite/cleanup/cleanup2.c:
4585 * testsuite/cleanup/cleanup3.c:
4586 * testsuite/cleanup/cleanup4.c:
4587 * testsuite/cleanup/cleanup5.c:
4588 * testsuite/controller/interpolator.c:
4589 * testsuite/debug/printf_extension.c: (main):
4590 * testsuite/elements/tee.c:
4591 * testsuite/negotiation/.cvsignore:
4592 * testsuite/negotiation/Makefile.am:
4593 * testsuite/negotiation/pad_link.c:
4594 * testsuite/pad/Makefile.am:
4595 * testsuite/pad/chainnopull.c:
4596 * testsuite/pad/getnopush.c:
4597 * testsuite/pad/link.c:
4598 * testsuite/refcounting/sched.c: (create_pipeline):
4599 * testsuite/registry/Makefile.am:
4600 * testsuite/registry/gst-print-formats.c:
4601 * testsuite/schedulers/.cvsignore:
4602 * testsuite/schedulers/142183-2.c:
4603 * testsuite/schedulers/142183.c:
4604 * testsuite/schedulers/143777-2.c:
4605 * testsuite/schedulers/143777.c:
4606 * testsuite/schedulers/147713.c:
4607 * testsuite/schedulers/147819.c:
4608 * testsuite/schedulers/147894-2.c:
4609 * testsuite/schedulers/147894.c:
4610 * testsuite/schedulers/Makefile.am:
4611 * testsuite/schedulers/group_link.c:
4612 * testsuite/schedulers/queue_link.c:
4613 * testsuite/schedulers/relink.c:
4614 * testsuite/schedulers/unlink.c:
4615 * testsuite/schedulers/unref.c:
4616 * testsuite/schedulers/useless_iteration.c:
4617 * testsuite/states/bin.c:
4618 clean out/remove some stuff from the testsuite directories
4620 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4623 check for some headers
4624 * gst/elements/Makefile.am:
4625 * gst/elements/gstelements.c:
4626 don't compile fdsrc without sys/socket.h
4627 * gst/indexers/Makefile.am:
4628 * gst/indexers/gstindexers.c: (plugin_init):
4629 don't compile fileindex without mmap
4631 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
4638 * check/Makefile.am:
4639 * docs/gst/Makefile.am:
4640 * examples/helloworld/Makefile.am:
4642 * gst/base/Makefile.am:
4643 * gst/check/Makefile.am:
4644 * gst/elements/Makefile.am:
4645 * gst/indexers/Makefile.am:
4646 * gst/parse/Makefile.am:
4647 * libs/gst/controller/Makefile.am:
4648 * libs/gst/dataprotocol/Makefile.am:
4649 * examples/helloworld/helloworld.c: (event_loop):
4650 compile fixes, though it's not being compiled currently
4652 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
4654 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
4655 Add some simple tests for the new taglist date API.
4657 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
4659 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
4660 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
4661 Beautify 'last-message' output: print 'none' for buffer timestamps
4662 and durations if none is set; improve alignment with next messages.
4664 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
4666 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
4667 * gst/gstpluginfeature.h:
4668 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
4669 * gst/gstregistry.h:
4670 * docs/gst/gstreamer-sections.txt:
4671 Add new API to check plugin feature version requirements.
4673 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
4674 Some basic tests for the above.
4676 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
4678 * gst/gststructure.c: (gst_structure_to_string):
4679 guard against NULL printf - happens when for example
4680 a message structure with GstClock gets serialized
4682 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
4684 * gst/base/gstcollectpads.c: (gst_collectpads_event):
4685 Fix presumable copy'n'pasto.
4687 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
4689 * gst/elements/gstfakesrc.h:
4690 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
4691 * gst/elements/gsttypefindelement.c:
4693 * gst/elements/gstfilesink.c: (gst_file_sink_render):
4694 I wonder if this could actually write +2GB files before
4696 2005-10-13 Andy Wingo <wingo@pobox.com>
4698 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
4699 Fix Timmeke Waymans bug.
4700 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
4701 string of the proper length to gst_caps_from_string. There's a
4702 potential for, before this fix, that this could cause someone
4703 connecting over the network to cause a segfault if the payload is
4706 2005-10-13 Stefan Kost <ensonic@users.sf.net>
4708 * docs/design/draft-push-pull.txt:
4709 * docs/design/part-overview.txt:
4710 * docs/random/TODO-pre-0.9:
4711 * docs/random/old/ChangeLog.gstreamer:
4712 * gst/base/gstpushsrc.c:
4716 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
4718 * gst/glib-compat.c: (gst_flags_get_first_value):
4719 * gst/glib-compat.h:
4720 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
4721 (gst_value_compare_double), (gst_value_serialize_flags):
4722 GLib 2.6 g_flags_get_first_value has a bug that triggers an
4725 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
4727 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4728 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
4730 * tools/gst-launch.c: (event_loop):
4731 print out clock nicely
4733 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
4735 * docs/gst/gstreamer-sections.txt:
4737 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
4738 (gst_tag_list_get_date_index):
4739 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
4740 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
4742 2005-10-13 Julien MOUTTE <julien@moutte.net>
4744 * gst/base/gstcollectpads.c: (gst_collectpads_event),
4745 (gst_collectpads_chain):
4746 * gst/base/gstcollectpads.h: Handle newsegment and store informations
4749 2005-10-13 Stefan Kost <ensonic@users.sf.net>
4751 * docs/gst/gstreamer-sections.txt:
4754 * tools/gst-inspect.c: (main):
4755 * tools/gst-launch.c: (main):
4756 * tools/gst-run.c: (main):
4757 * tools/gst-xmlinspect.c: (main):
4758 fix GOption context leaks
4761 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
4765 * win32/common/config.h:
4767 * win32/vs6/grammar.dsp:
4768 * win32/vs6/libgstelements.dsp:
4769 * win32/vs6/libgstreamer.dsp:
4772 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
4774 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4775 * gst/base/gstbasesrc.c: (gst_base_src_query):
4776 fix more guint64<->gdouble conversions
4778 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
4781 add win32-update target
4782 * win32/common/gstconfig.h:
4783 * win32/common/gstenumtypes.c:
4784 * win32/common/gstenumtypes.h:
4785 * win32/common/gstversion.h:
4786 add files that visual studio can't generate
4788 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
4791 add a win32-update target
4794 2005-10-12 Wim Taymans <wim@fluendo.com>
4796 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4797 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
4798 * gst/gstelement.c: (gst_element_commit_state),
4799 (gst_element_set_state):
4800 Protect flags with proper lock.
4801 unref provided cached clock in dispose.
4803 2005-10-12 Stefan Kost <ensonic@users.sf.net>
4806 * gst/gstminiobject.h:
4808 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
4809 removed unused flags from miniobject
4812 2005-10-12 Wim Taymans <wim@fluendo.com>
4814 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
4815 (gst_file_sink_event), (gst_file_sink_render):
4816 Flush before seeking.
4818 2005-10-12 Andy Wingo <wingo@pobox.com>
4820 * gst/gst.c (gst_init_check): Ignore unknown options, as has
4821 always been the case.
4823 2005-10-12 Stefan Kost <ensonic@users.sf.net>
4825 * check/gst/gstbin.c: (GST_START_TEST):
4826 * docs/gst/gstreamer-sections.txt:
4827 * gst/base/gstbasesink.c: (gst_base_sink_init):
4828 * gst/base/gstbasesrc.c: (gst_base_src_init),
4829 (gst_base_src_get_range), (gst_base_src_check_get_range),
4830 (gst_base_src_start), (gst_base_src_stop):
4831 * gst/base/gstbasesrc.h:
4832 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
4833 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4834 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
4838 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
4840 * gst/gstelement.c: (gst_element_is_locked_state),
4841 (gst_element_set_locked_state), (gst_element_commit_state),
4842 (gst_element_set_state):
4844 * gst/gstindex.c: (gst_index_init):
4846 * gst/gstminiobject.h:
4847 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
4848 (gst_object_set_parent):
4850 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
4851 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
4853 * gst/gstpadtemplate.h:
4854 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
4855 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
4856 * gst/gstpipeline.h:
4857 * gst/indexers/gstfileindex.c: (gst_file_index_load),
4858 (gst_file_index_commit):
4859 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4860 * testsuite/pad/link.c: (gst_test_src_init),
4861 (gst_test_filter_init), (gst_test_sink_init):
4862 * testsuite/states/locked.c: (main):
4863 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
4864 moved bitshift from macro to enum definition
4866 2005-10-12 Wim Taymans <wim@fluendo.com>
4868 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
4869 * gst/elements/gstfilesink.c: (gst_file_sink_event),
4870 (gst_file_sink_render):
4871 Some more debugging info.
4873 2005-10-12 Wim Taymans <wim@fluendo.com>
4875 * docs/design/part-states.txt:
4876 * tools/gst-launch.c: (main):
4878 Revert non-intentional change.
4880 2005-10-12 Wim Taymans <wim@fluendo.com>
4882 * check/gst/gstbin.c: (GST_START_TEST):
4883 * check/gst/gstelement.c: (GST_START_TEST):
4884 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
4885 * check/gst/gstghostpad.c: (GST_START_TEST):
4886 * check/gst/gstpipeline.c: (GST_START_TEST):
4887 * check/pipelines/simple_launch_lines.c: (run_pipeline):
4888 * check/states/sinks.c: (GST_START_TEST):
4889 * gst/elements/gsttypefindelement.c: (stop_typefinding):
4890 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
4891 (gst_bin_remove_func), (gst_bin_get_state_func),
4892 (gst_bin_recalc_state), (gst_bin_change_state_func),
4894 * gst/gstelement.c: (gst_element_get_state_func),
4895 (gst_element_get_state), (gst_element_abort_state),
4896 (gst_element_commit_state), (gst_element_set_state),
4897 (gst_element_change_state), (gst_element_change_state_func):
4899 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
4900 (gst_pipeline_provide_clock_func):
4901 * gst/gstutils.c: (gst_element_link_pads_filtered):
4902 * tools/gst-launch.c: (main):
4903 * tools/gst-typefind.c: (main):
4904 Use GstClockTime in _get_state() instead of GTimeVal.
4905 Remove old code in gstutils.c
4907 2005-10-12 Andy Wingo <wingo@pobox.com>
4909 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
4912 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
4913 there is no task. Shouldn't affect any code, as nothing in our
4914 plugins checks this return value.
4915 (gst_pad_stop_task): Also take the stream lock if the pad has no
4918 2005-10-12 Wim Taymans <wim@fluendo.com>
4920 * gst/gstpad.c: (pre_activate), (post_activate),
4921 (gst_pad_activate_pull), (gst_pad_activate_push):
4922 Cleanup activation code. Reset old state if
4925 2005-10-12 Wim Taymans <wim@fluendo.com>
4927 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4928 (gst_base_sink_change_state):
4929 No need to prerol after receiving EOS.
4931 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
4932 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
4933 * gst/elements/gstidentity.c: (gst_identity_event):
4934 Print events more verbosely.
4936 2005-10-12 Wim Taymans <wim@fluendo.com>
4938 * check/Makefile.am:
4939 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
4940 * check/states/sinks2.c:
4941 Moved sinks2 testcode in sinks check.
4943 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
4944 (gst_bin_remove_func), (gst_bin_recalc_state),
4945 (gst_bin_change_state_func), (bin_bus_handler):
4946 Fix potential race condition when _get_state() iterated over an
4947 ASYNC element right before it posted a state completion.
4950 Do proper cast here.
4952 * gst/gstevent.c: (gst_event_new_newsegment),
4953 (gst_event_parse_newsegment):
4954 A playback rate of 0.0 is not allowed.
4956 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
4958 * win32/common/config.h:
4959 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
4960 (_trewinddir), (_ttelldir), (_tseekdir):
4961 * win32/common/dirent.h:
4962 * win32/common/gtchar.h:
4963 * win32/common/libgstbase.def:
4964 * win32/common/libgstreamer.def:
4965 * win32/vs6/grammar.dsp:
4966 * win32/vs6/gst_inspect.dsp:
4967 * win32/vs6/gst_launch.dsp:
4968 * win32/vs6/gstreamer.dsw:
4969 * win32/vs6/libgstbase.dsp:
4970 * win32/vs6/libgstelements.dsp:
4971 * win32/vs6/libgstreamer.dsp:
4972 Visual Studio 6 project files, and a new common directory.
4975 2005-10-11 Wim Taymans <wim@fluendo.com>
4977 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4978 (gst_base_sink_do_sync), (gst_base_sink_query),
4979 (gst_base_sink_change_state):
4980 * gst/base/gstbasesink.h:
4981 Correctly parse newsegment info.
4983 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
4985 * gst/gst.c: (init_post):
4986 split plugin paths correctly
4988 2005-10-11 Wim Taymans <wim@fluendo.com>
4990 * check/gst/gstevent.c: (GST_START_TEST):
4991 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4992 (gst_base_sink_change_state):
4993 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
4994 * gst/base/gstbasetransform.c: (gst_base_transform_event):
4995 * gst/elements/gstfilesink.c: (gst_file_sink_event):
4996 * gst/gstevent.c: (gst_event_new_newsegment),
4997 (gst_event_parse_newsegment):
4999 Added extra flag to newsegment for future API freeze.
5000 Updated check and base elements.
5002 2005-10-11 Julien MOUTTE <julien@moutte.net>
5004 * gst/base/gstcollectpads.c: (gst_collectpads_init),
5005 (gst_collectpads_add_pad), (gst_collectpads_pop),
5006 (gst_collectpads_event), (gst_collectpads_chain):
5007 * gst/base/gstcollectpads.h: Handle EOS correctly.
5009 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
5011 * tools/gst-launch.c: (main):
5012 more null protecting
5014 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
5016 * gst/gst-i18n-lib.h:
5017 check for ENABLE_NLS, not GETTEXT_PACKAGE
5018 * gst/gstregistry.c: (gst_registry_add_plugin),
5019 (gst_registry_scan_path_level),
5020 (_gst_registry_remove_cache_plugins):
5021 protect possibly NULL strings
5022 * gst/parse/types.h:
5023 config.h already included before
5024 * tools/gst-inspect.c: (main):
5025 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
5026 check for ENABLE_NLS, not GETTEXT_PACKAGE
5027 * tools/gst-launch.c: (main):
5028 check for ENABLE_NLS, not GETTEXT_PACKAGE
5030 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
5033 if we don't have glib, fail before testing 2.8
5034 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
5035 fix a leak, should fix plugins-base testsuite
5037 2005-10-11 Andy Wingo <wingo@pobox.com>
5039 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
5040 take the mode we're going to as an arg. Go head and set the mode
5041 and flushing flags now, so that if the activate function starts a
5042 thread all the flags will be in the right state.
5043 (post_activate): Renamed also. Just handle making sure streaming
5044 finishes for the deactivation case, and setting the deactivated
5046 (gst_pad_set_active): Complain loudly if deactivation fails.
5047 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
5048 (gst_pad_activate_push): Adapt to pre/post_activate changes,
5049 remove the terrible hack.
5051 2005-10-11 Wim Taymans <wim@fluendo.com>
5053 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
5054 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
5055 (gst_bin_recalc_state), (gst_bin_change_state_func),
5056 (gst_bin_dispose), (bin_bus_handler):
5058 Prepare to make current EOS message queue more generic.
5061 * gst/gstevent.c: (gst_event_new_newsegment),
5062 (gst_event_parse_newsegment):
5064 Rename base to stream_time.
5069 2005-10-11 Wim Taymans <wim@fluendo.com>
5071 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
5072 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
5073 (gst_bin_change_state_func), (bin_bus_handler):
5075 Work on proper clock selection.
5077 2005-10-11 Edward Hervey <edward@fluendo.com>
5079 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
5080 * libs/gst/controller/gstcontroller.h:
5081 Added GList* version of _remove_properties() in order to be able to wrap
5084 2005-10-11 Wim Taymans <wim@fluendo.com>
5086 * docs/design/part-states.txt:
5089 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
5090 (gst_bin_change_state_func), (bin_bus_handler):
5091 Doc updates. Don't distribute the same clock over and over again.
5097 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
5098 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
5099 (gst_pad_send_event):
5101 Make probe emission threadsafe again.
5102 Register quarks and move _get_name() from utils.
5105 * gst/gstpipeline.c: (gst_pipeline_class_init),
5106 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
5107 Only redistribute the clock of it changed.
5109 * gst/gstsystemclock.h:
5114 Moved the _flow_get_name() to GstPad.
5116 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
5118 * check/gst-libs/gdp.c: (GST_START_TEST):
5119 * check/gst/gstcaps.c: (GST_START_TEST):
5120 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
5121 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
5122 (gst_dp_packet_from_caps):
5123 fix more valgrind warnings before turning up the heat
5125 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
5127 * gst/parse/grammar.y:
5128 some cleanup before the hacking
5130 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
5132 * gst/base/gstbasesrc.c: (gst_base_src_query):
5134 * gst/gstutils.c: (gst_guint64_to_gdouble),
5135 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
5137 externalize, basesrc uses it
5138 obviously the implementation needs testing
5140 2005-10-10 Wim Taymans <wim@fluendo.com>
5142 * tests/sched/Makefile.am:
5143 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
5144 (make_pipeline3), (make_pipeline4), (print_elem), (main):
5146 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
5148 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
5149 apparently converting from guint64 to double is not implemented
5152 2005-10-10 Wim Taymans <wim@fluendo.com>
5154 * check/Makefile.am:
5155 * check/generic/states.c: (GST_START_TEST):
5156 * check/gst/gstbin.c: (GST_START_TEST):
5157 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
5158 * check/states/sinks.c: (GST_START_TEST):
5159 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
5161 Check fixes, use API as stated in design docs, remove hacks.
5163 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5164 (gst_base_sink_change_state):
5165 Catch stopping our task while we're shutting down.
5167 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
5168 (gst_bin_remove_func), (gst_bin_get_state_func),
5169 (gst_bin_recalc_state), (gst_bin_change_state_func),
5172 * gst/gstelement.c: (gst_element_init),
5173 (gst_element_get_state_func), (gst_element_abort_state),
5174 (gst_element_commit_state), (gst_element_lost_state),
5175 (gst_element_set_state), (gst_element_change_state),
5176 (gst_element_change_state_func):
5178 New state change algorithm (see #318116)
5180 * gst/gstpipeline.c: (gst_pipeline_class_init),
5181 (gst_pipeline_init), (gst_pipeline_set_property),
5182 (gst_pipeline_get_property), (do_pipeline_seek),
5183 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
5184 * gst/gstpipeline.h:
5185 Remove crude state change hacks.
5190 * tools/gst-launch.c: (main):
5191 Fixes for state change. Needs some more work to fully use the
5194 2005-10-10 Andy Wingo <wingo@pobox.com>
5196 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
5198 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
5199 this flag, but it's not even in GLib 2.6. Odd. Hack around the
5202 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
5204 * gst/gstiterator.c: (gst_iterator_new):
5205 Fix my previous commit: GTypes passed to gst_iterator_new()
5206 can be fundamental types.
5208 2005-10-10 Wim Taymans <wim@fluendo.com>
5210 * gst/gstelement.c: (gst_element_iterate_pad_list),
5211 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
5212 (gst_element_iterate_sink_pads):
5213 Use src/sink pads lists for the respective iterators instead
5216 2005-10-10 Andy Wingo <wingo@pobox.com>
5218 Merged in popt removal + GOption addition patch from Ronald, bug
5221 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
5222 GstElement macros around, remove popt-related symbols, add goption
5225 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
5227 * docs/gst/Makefile.am:
5228 * docs/libs/Makefile.am: No POPT_CFLAGS.
5230 * examples/manual/Makefile.am:
5231 * docs/manual/basics-init.xml: Doc updates with an example.
5233 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
5234 (gst_init), (parse_one_option), (parse_goption_arg):
5235 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
5236 bit of hand merging and debugging to get the GOption stuff working
5239 * tests/Makefile.am:
5240 * tools/Makefile.am:
5241 * tools/gst-inspect.c: (main):
5242 * tools/gst-launch.c: (main):
5243 * tools/gst-run.c: (main):
5244 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
5246 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
5248 * gst/gstiterator.c: (gst_iterator_new):
5249 Add assertions to make sure passed GType is likely to really
5250 be a GType (as the compiler won't catch it if the size and
5251 GType arguments get mixed up, see #318447).
5253 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
5255 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
5257 * gst/gstbin.c: (gst_bin_iterate_sorted):
5258 Pass GType and size arguments to gst_iterator_new() in the right
5259 order (maybe we should make _new() take the GType as first argument
5260 just like _new_list()?) (#318447).
5263 2005-10-10 Wim Taymans <wim@fluendo.com>
5265 * gst/gstelement.c: (gst_element_finalize):
5266 And free the GStaticRecMutex too
5268 2005-10-10 Andy Wingo <wingo@pobox.com>
5270 * gst/gstelement.c (gst_element_init, gst_element_finalize):
5271 Allocate and free the mutex properly.
5273 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
5275 (GstElement): The state_lock is now recursive. Rebuild your
5276 plugins, suckers. Old macros adapted.
5278 * docs/gst/gstreamer-sections.txt: Doc updates.
5281 * gst/gstutils.c (g_static_rec_cond_timed_wait)
5282 (g_static_rec_cond_wait): Ported from state changes patch, while
5283 we wait on bug #317802 to be solved in a well-distributed GLib.
5285 * gst/gstelement.c (gst_element_change_state_func): Renamed from
5286 gst_element_change_state, variable name changes.
5287 (gst_element_change_state): Split out of gst_element_set_state in
5288 preparation for the state change merge. Doesn't pay attention to
5289 the 'transition' argument.
5290 (gst_element_set_state): Updates, hopefully purely cosmetic.
5291 (gst_element_sync_state_with_parent): MT-safety. Ported from the
5293 (gst_element_get_state_func): Renamed from get_state, cosmetic
5296 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
5298 * gst/elements/gstelements.c:
5299 * win32/GStreamer.vcproj:
5301 * win32/dirent.c: (_tseekdir):
5302 * win32/gst-inspect.vcproj:
5303 * win32/gst-launch.vcproj:
5304 * win32/gstconfig.h:
5305 * win32/gstelements.vcproj:
5306 * win32/gstenumtypes.c: (gst_object_flags_get_type):
5307 * win32/gstreamer.def:
5309 updates for the win32 build (patch from Sebastien Moutte)
5311 2005-10-10 Andy Wingo <wingo@pobox.com>
5313 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
5314 gst_bin_get_state, cleaned up (but no logic changes).
5315 (bin_element_is_sink): Comment updates.
5316 (sink_iterator_filter): Remove needless cast.
5317 (gst_bin_iterate_sinks): Doc update.
5318 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
5319 cleaned up (but no logic changes).
5321 * check/states/sinks.c (test_src_sink): Cleanups from the state
5323 (test_livesrc_sink): Sync on the state.
5325 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
5326 the state change patch.
5328 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
5331 * check/gst/gstbin.c: Merge in some style fixes and additional
5332 checks from Wim's state change patch.
5334 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
5336 * gst/base/gsttypefindhelper.c: (helper_find_peek),
5337 (gst_type_find_helper):
5338 Check whether we have the requested data already in our list of
5339 cached buffers before pulling a new buffer; also make the buffer
5340 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
5342 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
5347 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
5348 don't use long long, it's not portable. Replacing with
5349 gint64 seems to work; let's hope no skeletons fall out of the closet.
5351 2005-10-10 Andy Wingo <wingo@pobox.com>
5353 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
5355 2005-10-09 Stefan Kost <ensonic@users.sf.net>
5357 * docs/gst/gstreamer-sections.txt:
5362 * gst/gstmessage.c: (gst_message_parse_state_changed):
5365 more docs, fix compilation
5367 2005-10-09 Philippe Khalaf <burger@speedy.org>
5369 Fixed a few forgotten variables on previous commit
5371 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
5373 * gst/base/gsttypefindhelper.c: (helper_find_peek):
5374 Fix evil typefind crasher: getrange() might return a short
5375 buffer at the end of a file, but gst_type_find_peek() must
5376 either return the full data as requested or NULL, but
5377 never a short buffer.
5379 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
5381 * gst/gstmessage.c: (gst_message_new_state_changed),
5382 (gst_message_parse_state_changed):
5384 don't use "new", it's a C++ keyword
5386 2005-10-08 Wim Taymans <wim@fluendo.com>
5388 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
5389 * gst/gstelement.c: (gst_element_post_message):
5390 * gst/gstpipeline.c: (gst_pipeline_change_state):
5391 Small docs and debug updates.
5393 2005-10-08 Stefan Kost <ensonic@users.sf.net>
5395 * docs/gst/gstreamer-sections.txt:
5396 * gst/gstelementfactory.c:
5401 2005-10-08 Wim Taymans <wim@fluendo.com>
5403 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
5404 (gst_bin_dispose), (bin_bus_handler):
5405 Fix typos, add comments.
5406 Clear EOS list when going to PAUSED from any direction and do it
5407 in a threadsafe way.
5408 Get base time in a threadsafe way too.
5409 Fix confusing debug in the change_state function.
5410 Various other small cleanups.
5412 * gst/gstelement.c: (gst_element_post_message):
5413 Fix very verbose bus posting code.
5415 * gst/gstpipeline.c: (gst_pipeline_class_init),
5416 (gst_pipeline_set_property), (gst_pipeline_get_property),
5417 (gst_pipeline_change_state):
5418 Small ARG_ -> PROP_ cleanup
5420 2005-10-08 Wim Taymans <wim@fluendo.com>
5422 * gst/gstbin.c: (is_eos), (bin_bus_handler):
5423 Do a less CPU demanding EOS check because we can.
5425 2005-10-08 Wim Taymans <wim@fluendo.com>
5427 * libs/gst/dataprotocol/dataprotocol.c:
5428 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5429 (gst_dp_packet_from_event):
5430 * libs/gst/dataprotocol/dataprotocol.h:
5431 * libs/gst/dataprotocol/dp-private.h:
5432 It's about time we bump the version number.
5433 Since event types don't fit in the guint8 anymore describing
5434 the payload type, make payload type 16 bits wide.
5436 2005-10-08 Wim Taymans <wim@fluendo.com>
5438 * docs/design/part-TODO.txt:
5439 * docs/design/part-clocks.txt:
5440 * docs/design/part-events.txt:
5441 * docs/design/part-gstbin.txt:
5442 * docs/design/part-gstelement.txt:
5443 * docs/design/part-gstpipeline.txt:
5444 * docs/design/part-live-source.txt:
5445 * docs/design/part-messages.txt:
5446 * docs/design/part-overview.txt:
5447 * docs/design/part-states.txt:
5450 2005-10-08 Wim Taymans <wim@fluendo.com>
5454 Fix event quark registration.
5455 Add some space between events so we can insert them in the
5458 2005-10-08 Wim Taymans <wim@fluendo.com>
5460 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5461 (gst_base_sink_handle_buffer):
5468 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
5469 (gst_queue_set_property), (gst_queue_get_property):
5471 Remove old unused properties.
5473 2005-10-08 Stefan Kost <ensonic@users.sf.net>
5474 * docs/gst/gstreamer-sections.txt:
5477 * gst/gstminiobject.c:
5478 * gst/gstminiobject.h:
5482 lots of new docs and doc fixes
5484 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
5486 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
5488 * gst/gstregistry.c: (gst_registry_lookup_locked),
5489 (gst_registry_scan_path_level):
5490 * gst/gstregistryxml.c: (load_plugin):
5491 Only ever load one plugin for a given plugin basename.
5492 This ensures correct overriding of GST_PLUGIN_PATH over
5493 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
5494 system installed plugins.
5496 2005-10-08 Wim Taymans <wim@fluendo.com>
5498 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5499 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
5500 Prepare for doing QOS.
5502 2005-10-08 Wim Taymans <wim@fluendo.com>
5504 * check/gst/gstbin.c: (GST_START_TEST):
5505 * check/pipelines/cleanup.c: (GST_START_TEST):
5506 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
5507 Allow new clock message too.
5509 2005-10-08 Wim Taymans <wim@fluendo.com>
5511 * gst/gstmessage.c: (gst_message_new_error),
5512 (gst_message_new_warning), (gst_message_new_tag),
5513 (gst_message_new_state_changed), (gst_message_new_clock_provide),
5514 (gst_message_new_clock_lost), (gst_message_new_new_clock),
5515 (gst_message_new_segment_start), (gst_message_new_segment_done),
5516 (gst_message_parse_state_changed),
5517 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
5518 (gst_message_parse_new_clock):
5520 Also carry the clock in question.
5522 2005-10-08 Wim Taymans <wim@fluendo.com>
5524 * gst/gstmessage.c: (gst_message_new_custom),
5525 (gst_message_new_eos), (gst_message_new_error),
5526 (gst_message_new_warning), (gst_message_new_tag),
5527 (gst_message_new_state_changed), (gst_message_new_clock_provide),
5528 (gst_message_new_new_clock), (gst_message_new_segment_start),
5529 (gst_message_new_segment_done), (gst_message_parse_state_changed),
5530 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
5533 Added clock related messages.
5535 * gst/gstpipeline.c: (gst_pipeline_change_state):
5536 Post message when the clock changed.
5538 * tools/gst-launch.c: (event_loop):
5541 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
5543 * tools/gst-inspect.c: (print_element_properties_info):
5544 Can't pass NULL strings to g_print() on windows.
5546 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
5549 * docs/gst/Makefile.am:
5550 * docs/gst/gstreamer-docs.sgml:
5551 * docs/gst/running.xml:
5552 * docs/version.entities.in:
5553 add a chapter on running GStreamer.
5554 document GST_DEBUG and GST_PLUGIN* env vars
5556 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
5561 remove PLUGINS_BUILDDIR stuff
5562 * gst/gst.c: (init_post):
5563 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
5565 remove, it was condescending and not needed
5567 2005-10-08 Wim Taymans <wim@fluendo.com>
5569 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
5570 (gst_base_sink_handle_object), (gst_base_sink_event),
5571 (gst_base_sink_wait), (gst_base_sink_handle_event),
5572 (gst_base_sink_change_state):
5573 * gst/base/gstbasesink.h:
5574 Repost EOS message while going to PLAYING if still EOS.
5575 Make sure that when receiving a FLUSH_START we don't attempt
5576 to sync on the clock anymore.
5578 2005-10-08 Wim Taymans <wim@fluendo.com>
5580 * tools/gst-launch.c: (event_loop):
5581 Better message printout.
5583 2005-10-08 Wim Taymans <wim@fluendo.com>
5585 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
5586 (gst_bin_child_proxy_get_children_count):
5587 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
5588 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
5589 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
5590 (gst_child_proxy_set_valist):
5591 * gst/parse/grammar.y:
5592 Make ChildProxy threadsafe and fix mem leaks.
5594 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
5596 * gst/gst.c: (init_post):
5597 debug the GST_PLUGIN_ env vars
5599 2005-10-08 Wim Taymans <wim@fluendo.com>
5601 * check/gst/gstbin.c: (GST_START_TEST):
5602 * check/gst/gstmessage.c: (GST_START_TEST):
5603 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
5604 * gst/gstelement.c: (gst_element_commit_state),
5605 (gst_element_lost_state):
5606 * gst/gstmessage.c: (gst_message_new_state_changed),
5607 (gst_message_parse_state_changed):
5609 * tools/gst-launch.c: (event_loop):
5610 Added extra field to STATE_CHANGE message with the pending
5611 state, which will be different from the new state soon.
5613 2005-10-08 Wim Taymans <wim@fluendo.com>
5615 * gst/gstbus.c: (gst_bus_pop):
5617 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
5618 Small cleanups and doc updates.
5620 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
5622 * gst/gst.c: (init_pre):
5623 * gst/gstbin.c: (gst_bin_add_func):
5624 log distributing clocks and base time
5625 * gst/gstregistry.c: (gst_registry_add_plugin),
5626 (gst_registry_scan_path_level), (gst_registry_scan_path):
5627 clean up the debugging output a little
5628 * gst/gstutils.c: (gst_element_state_get_name):
5629 warn about a memleak (I've actually seen this be used, though
5630 it was probably a bug)
5632 2005-10-07 Wim Taymans <wim@fluendo.com>
5634 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
5635 (gst_base_src_init), (gst_base_src_default_newsegment),
5636 (gst_base_src_newsegment), (gst_base_src_do_seek),
5637 (gst_base_src_loop), (gst_base_src_start):
5638 * gst/base/gstbasesrc.h:
5639 Make the newsegment event customizable by subclasses.
5641 2005-10-07 Wim Taymans <wim@fluendo.com>
5643 * gst/gstevent.c: (gst_event_new_buffersize),
5644 (gst_event_parse_buffersize):
5646 New event for future idea.
5648 2005-10-07 Andy Wingo <wingo@pobox.com>
5650 * gst/gstelement.c (gst_element_post_message): Doc update.
5652 * docs/gst/gstreamer-sections.txt: Update.
5654 * gst/gstmessage.c (gst_message_new_application): Made into a
5655 function like honest API calls.
5656 (gst_message_new_element): New message type.
5658 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
5660 * check/elements/fakesrc.c (test_no_preroll): New check, checks
5661 that setting a live fakesrc to PAUSED returns NO_PREROLL both
5664 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
5665 NO_PREROLL from gst_element_change_state to fall through.
5667 2005-10-07 Wim Taymans <wim@fluendo.com>
5669 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
5670 (gst_ghost_pad_do_activate_push):
5671 Activating a ghostpad with no internal pad in push mode
5674 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
5677 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
5678 Fixes compilation on Windows.
5680 2005-10-07 Michael Smith <msmith@fluendo.com>
5682 * tools/gst-inspect.c:
5683 Print out feature and plugin count at the end when printing out
5686 2005-10-04 Michael Smith <msmith@fluendo.com>
5688 * gst/gsterror.c: (_gst_stream_errors_init):
5689 Add another error string used in a few existing plugins.
5692 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
5693 * tools/gst-inspect.c: (print_element_info):
5694 When a feature disappears from a plugin (and the feature exists in
5695 the cached registry file), things went horribly wrong. This isn't a
5696 complete fix, we should actually be removing the 'missing' features
5697 from the features list when we load the actual plugin. That's not
5700 2005-10-04 Johan Dahlin <johan@gnome.org>
5702 * check/gst/gstiterator.c: (GST_START_TEST):
5703 * gst/gstbin.c: (gst_bin_iterate_elements),
5704 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
5705 * gst/gstelement.c: (gst_element_iterate_pads):
5706 * gst/gstformat.c: (gst_format_iterate_definitions):
5707 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5708 (gst_iterator_new_list), (gst_iterator_filter):
5709 * gst/gstiterator.h:
5710 * gst/gstquery.c: (gst_query_type_iterate_definitions):
5711 Add a GType to GstIterator, update callsites and tests.
5713 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
5715 * gst/gstpad.c: (gst_pad_event_default_dispatch):
5716 give events a chance to be handled by event probes when the pad
5719 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
5721 * gst/gstevent.c: (gst_event_type_get_name),
5722 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
5724 add string representations for event types
5726 2005-10-06 Wim Taymans <wim@fluendo.com>
5728 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
5729 Don't use NULL pointers.
5731 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
5733 * gst/gst_private.h:
5737 * gst/gstpluginfeature.c:
5738 widen the debug category in output to fit the biggest one we have
5739 add a bus category and use it
5740 play with the colors
5741 fix up some categories
5743 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
5745 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
5746 add push activation of sink ghost pads.
5747 Andye, please verify
5749 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
5751 * gst/gstutils.c: (gst_element_link_pads):
5752 fix a bug in the case where neither element has a pad
5753 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
5754 add a test for that case
5756 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
5758 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
5759 emit have-data before checking for peers. This allows
5760 for probe handlers to connect elements. This helps autopluggers.
5761 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
5763 add six checks, linked/unlinked with no/true/false probe
5765 2005-10-04 Wim Taymans <wim@fluendo.com>
5767 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
5768 (gst_fake_sink_event), (gst_fake_sink_preroll),
5769 (gst_fake_sink_render), (gst_fake_sink_change_state):
5770 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
5771 (gst_fake_src_get_property), (gst_fake_src_create),
5772 (gst_fake_src_stop):
5773 * gst/elements/gstidentity.c: (gst_identity_stop):
5774 Protect last_message with lock.
5776 2005-10-04 Edward Hervey <edward@fluendo.com>
5779 Added precision in the comments for GST_FORMAT_DEFAULT
5781 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
5783 * tools/gst-launch.c: (main):
5784 Don't try to run erroneous pipelines.
5786 2005-10-04 Julien MOUTTE <julien@moutte.net>
5788 * gst/gstbus.c: We don't need this header.
5790 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
5795 === release 0.9.3 ===
5797 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
5801 Releasing 0.9.3, "Unregistered"
5803 2005-10-03 Andy Wingo <wingo@pobox.com>
5805 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
5806 whereby calling a pad's activatepush() function can start a thread
5807 that starts to push or pull before the pad gets the FLUSHING flag
5808 unset. Hack around it by holding the stream lock until the flag is
5809 set. Need to replace this with a proper solution. Together with
5810 the ghost pad fixes, this fixes mp3 playing/tagreading.
5812 * docs/design/part-gstghostpad.txt: Add a note about activation of
5813 proxy pads outside of ghost pads.
5815 * gst/gstghostpad.c: Implement the ghost pad activation design.
5817 2005-10-02 Andy Wingo <wingo@pobox.com>
5819 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
5820 It is volatile, after all.
5822 * docs/design/part-gstghostpad.txt: Flesh out activation with
5825 * gst/base/gstbasesrc.c (gst_base_src_init): Use
5828 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
5831 Fix (unused) AM_CONDITIONAL tests.
5833 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
5835 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
5837 * gst/gstutils.c: (gst_pad_query_convert):
5838 Add assertion that makes sure src_val is >=0, just like
5839 gst_query_new_convert() has. (#315895)
5841 2005-09-30 Edward Hervey <edward@fluendo.com>
5843 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
5844 Let's not iterate pads we're not interested in, it avoids getting
5845 sky-high refcounts on sinkpad.
5847 2005-09-30 Wim Taymans <wim@fluendo.com>
5849 * gst/gstelement.c: (gst_element_set_state),
5850 (gst_element_change_state):
5851 Small tweak, element in ASYNC remains ASYNC.
5853 2005-09-30 Wim Taymans <wim@fluendo.com>
5855 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
5856 Only error is an error.
5858 * gst/gstbin.c: (gst_bin_change_state):
5861 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
5862 Also call pad_block in pad alloc.
5864 * gst/gstutils.c: (gst_flow_get_name):
5867 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
5869 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
5870 (gst_base_src_get_range):
5871 Fix documentation typos. Add some more debug info.
5873 2005-09-29 David Schleef <ds@schleef.org>
5875 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
5876 more end-user friendly.
5877 * tools/gst-inspect.c: (main): Check if command-line argument is
5878 a file and attempt to load that file as a plugin.
5880 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
5882 * check/gst/gstbin.c:
5883 * check/states/sinks.c:
5884 fix tests for the new warning
5885 * check/gst/gstpipeline.c:
5886 add a test for pipeline and bus interaction
5888 elements should be NULL if they get disposed; add a warning if not
5890 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
5893 for 2.6 refcounting, make debug log more correct by printing
5894 the actual refcounts at the time of swap (Wim)
5896 2005-09-29 Andy Wingo <wingo@pobox.com>
5898 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
5899 removes signal watches previously added via
5900 gst_bus_add_signal_watch.
5901 (gst_bus_add_signal_watch): Don't return the source id, just store
5902 it on the bus if there wasn't an id already.
5904 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
5905 add_signal_watch and remove_signal_watch.
5907 2005-09-29 Edward Hervey <edward@fluendo.com>
5909 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
5910 Better if we actually iterate the list :)
5912 2005-09-29 Wim Taymans <wim@fluendo.com>
5914 * check/gst/gstbin.c: (GST_START_TEST):
5915 Change for new bus API.
5917 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
5918 (send_messages), (GST_START_TEST), (gstbus_suite):
5919 Change for new bus signal API.
5921 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
5922 (gst_bus_source_prepare), (gst_bus_source_check),
5923 (gst_bus_create_watch), (gst_bus_add_watch_full),
5924 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
5925 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
5927 Remove support for multiple GSources operating on different
5928 message types as it is too complex and unneeded when using
5930 Added support for receiving signals from the bus.
5932 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
5934 * docs/libs/tmpl/gstdataprotocol.sgml:
5935 * docs/manual/advanced-dataaccess.xml:
5936 * gst/elements/gstcapsfilter.c:
5938 rename filter-caps to caps property
5940 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
5942 * gst/gstvalue.c: (gst_value_deserialize_fraction):
5943 More robust fraction string parsing.
5945 * docs/pwg/appendix-porting.xml:
5946 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
5948 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
5950 * gst/gstcaps.c: (gst_caps_do_simplify):
5951 Thou shalt not free a structure and then continue using it
5952 in the next loop iteration.
5954 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
5956 Add test case for caps simplification.
5958 2005-09-29 Wim Taymans <wim@fluendo.com>
5960 * check/gst/gstbin.c: (GST_START_TEST):
5963 2005-09-29 Wim Taymans <wim@fluendo.com>
5965 * check/gst/gstbin.c: (GST_START_TEST):
5968 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
5969 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
5970 (find_element), (gst_bin_sort_iterator_next),
5971 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
5972 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
5973 (gst_bin_change_state), (gst_bin_dispose):
5974 A bin does not have a bus, it gets the bus from the parent.
5976 * gst/gstelement.c: (gst_element_requires_clock),
5977 (gst_element_provides_clock), (gst_element_is_indexable),
5978 (gst_element_is_locked_state), (gst_element_change_state),
5979 (gst_element_set_bus_func):
5982 * gst/gstpipeline.c: (gst_pipeline_class_init),
5983 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
5984 The pipeline provides a bus.
5986 2005-09-28 Johan Dahlin <johan@gnome.org>
5988 * gst/gstmessage.c (gst_message_parse_state_changed): Use
5989 gst_structure_get_enum instead of gst_structure_get_int
5991 * gst/gststructure.c (gst_structure_get_enum): Impl.
5993 * gst/gststructure.h (gst_structure_get_enum): Add
5995 * docs/gst/gstreamer-sections.txt: Ditto
5997 * gst/gstmessage.c (gst_message_new_state_changed): Use
5998 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
5999 which does introspection.
6000 Reviewed by Christian Schaller
6002 2005-09-28 Stefan Kost <ensonic@users.sf.net>
6004 * gst/gstinfo.c: (gst_debug_log_default):
6005 don't do dummy g_strdup()s
6006 * libs/gst/controller/gstcontroller.c:
6007 (on_object_controlled_property_changed),
6008 (gst_controlled_property_new), (gst_controller_new_valist),
6009 (gst_controller_new_list),
6010 (gst_controller_remove_properties_valist), (gst_controller_set),
6011 (gst_controller_get), (gst_controller_sync_values),
6012 (gst_controller_get_value_array), (_gst_controller_class_init),
6013 (gst_controller_get_type):
6014 * libs/gst/controller/gstcontroller.h:
6015 * libs/gst/controller/gstinterpolation.c:
6016 (gst_controlled_property_find_timed_value_node):
6017 convert // to /**/ comments
6019 2005-09-28 Wim Taymans <wim@fluendo.com>
6021 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
6022 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
6023 (gst_bus_sync_signal_handler):
6025 Added async-message and sync-message signals to the bus.
6026 Added helper BusFunc to emit signals for all posted messages.
6028 * gst/gstmessage.c: (gst_message_type_get_name),
6029 (gst_message_type_to_quark), (gst_message_get_type):
6031 Register quarks for message names.
6033 2005-09-28 Stefan Kost <ensonic@users.sf.net>
6035 * docs/libs/gstreamer-libs-sections.txt:
6036 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
6037 (gst_controller_new_list):
6038 * libs/gst/controller/gstcontroller.h:
6039 added another constructor for language bindings
6041 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
6043 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
6047 * gst/gstinfo.c: (_gst_debug_init):
6048 slightly more readable color for refcount debugging
6050 2005-09-28 Wim Taymans <wim@fluendo.com>
6052 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
6053 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
6054 (find_element), (gst_bin_sort_iterator_next),
6055 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6056 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6057 (gst_bin_change_state), (gst_bin_dispose):
6058 Small doc fixes. get_clock -> provide_clock.
6060 * gst/gstelement.c: (gst_element_class_init),
6061 (gst_element_provides_clock), (gst_element_provide_clock),
6062 (gst_element_get_clock), (gst_element_commit_state),
6063 (gst_element_lost_state):
6065 Make get/set_clock() symetric. Add provide_clock vmethod since
6066 that is actually what this function does.
6068 * gst/gstpipeline.c: (gst_pipeline_class_init),
6069 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
6070 (gst_pipeline_get_clock):
6071 get_clock -> provide_clock.
6073 2005-09-28 Andy Wingo <wingo@pobox.com>
6075 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
6076 lieu of real docs...
6078 * gst/elements/gstfdsrc.c: Cleaned up a bit.
6080 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
6082 * gst/elements/gstcapsfilter.c:
6083 * gst/elements/gstfakesink.c:
6084 * gst/elements/gstfakesrc.c:
6085 * gst/elements/gstfdsink.c:
6086 * gst/elements/gstfdsrc.c:
6087 * gst/elements/gstfilesink.c:
6088 * gst/elements/gstfilesrc.c:
6089 * gst/elements/gstidentity.c:
6090 * gst/elements/gsttee.c:
6091 * gst/elements/gsttypefindelement.c:
6092 Make element details static.
6094 2005-09-28 Wim Taymans <wim@fluendo.com>
6096 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6097 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6098 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6099 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6100 (gst_bin_change_state), (gst_bin_dispose):
6101 Some documentation updates.
6102 Clean up dispose handlers.
6104 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
6105 * gst/gstpad.c: (gst_pad_dispose):
6106 Clean up dispose handler.
6108 * gst/gstpipeline.c: (gst_pipeline_change_state):
6109 Removed spurious UNLOCK.
6111 2005-09-27 Stefan Kost <ensonic@users.sf.net>
6113 * docs/gst/gstreamer-sections.txt:
6114 * gst/base/gstbasesrc.h:
6119 * gst/gstpipeline.c:
6120 * gst/gstpipeline.h:
6123 added two new functions to the docs
6124 documents all undocumented GstXXXFlags
6125 completed some incomplete docs
6127 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
6129 * gst/gstbin.c: (gst_bin_dispose):
6130 * gst/gstelement.c: (gst_element_dispose):
6131 remove now useless and leaky resurrection code in dispose
6132 * gst/base/gstbasesrc.c: (gst_base_src_init):
6133 * gst/gstelementfactory.c: (gst_element_factory_create):
6134 * gst/gstobject.c: (gst_object_set_parent):
6137 2005-09-27 Wim Taymans <wim@fluendo.com>
6139 * docs/design/part-TODO.txt:
6142 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6143 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6144 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6145 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6146 (gst_bin_change_state):
6148 Remove element variable, we keep element info in the iterator now.
6150 2005-09-27 Andy Wingo <wingo@pobox.com>
6152 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
6155 2005-09-27 Wim Taymans <wim@fluendo.com>
6157 * check/gst/gstbin.c: (GST_START_TEST):
6158 Enable check that works now.
6160 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6161 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6162 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6163 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6164 (gst_bin_change_state):
6166 Redid the state change algorithm using a topological sort algo.
6167 Handles all cases correctly.
6168 Exposed iterator for state change order.
6171 Temp storage for state changes. Need to get rid of this soon.
6173 2005-09-27 Wim Taymans <wim@fluendo.com>
6175 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
6176 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
6177 (link_fold_func), (gst_pad_proxy_setcaps):
6178 Leak fixes, the fold functions need to unref the passed object and
6179 _get_parent_*() returns ref to parent.
6181 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
6183 * check/gst/gstbuffer.c: (test_make_writable):
6184 Plug leak in test case and fix 'make check-valgrind'
6186 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
6188 * gst/gstbuffer.c: (gst_subbuffer_init):
6189 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
6190 works correctly in all circumstances (we could have just copied
6191 the parent buffer's readonly flag, but conceptually it seems
6192 cleaner to mark all subbuffers as read-only). (based on patch
6193 by Alessandro Decina, #314710).
6195 * check/gst/gstbuffer.c: (create_read_only_buffer),
6196 (test_make_writable), (test_subbuffer_make_writable),
6198 Add some tests for gst_buffer_make_writable().
6200 2005-09-27 Wim Taymans <wim@fluendo.com>
6202 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
6203 use gst_object_has_ancestor().
6205 * gst/gstobject.c: (gst_object_has_ancestor):
6207 gst_object_has_ancestor() copied from gstbin.c as it is a
6210 * tests/instantiate/create.c: (create_all_elements):
6211 * tests/lat.c: (handoff_src), (handoff_sink):
6212 * tests/sched/runxml.c: (main):
6213 * tests/seeking/seeking1.c: (main):
6214 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
6216 Fix compilation of some tests.
6218 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
6221 Remove comment. GST_TYPE_G_ERROR is here to stay,
6222 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
6225 2005-09-26 Wim Taymans <wim@fluendo.com>
6227 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
6228 Added check that shows error in state change order.
6230 2005-09-26 Wim Taymans <wim@fluendo.com>
6232 * gst/gstbin.c: (gst_bin_change_state):
6233 Make state change function use 3 queues again, we were
6234 adding elements in the wrong order.
6236 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
6239 * gst/gstpad.c: (gst_pad_dispose):
6240 Added some debug info first.
6242 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
6244 * docs/design/draft-push-pull.txt:
6245 * docs/design/part-events.txt:
6246 * docs/design/part-overview.txt:
6247 * docs/design/part-scheduling.txt:
6248 Replace all _pull_region() with _pull_range()
6250 2005-09-26 Andy Wingo <wingo@pobox.com>
6252 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
6254 * check/gst-libs/controller.c: Update for controller api change.
6257 * tests/Makefile.am:
6258 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
6259 over by GLib bug 118439.
6261 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
6262 routines to a function.
6264 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
6266 * libs/gst/controller/gsthelper.c:
6267 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
6268 (gst_object_sync_values): Renamed from sink_values. Ugh.
6270 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
6272 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
6273 Renamed from controller_key, as it is exported.
6275 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
6277 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
6282 * gst/gstpadtemplate.h:
6285 * gst/gstqueryutils.c:
6286 * gst/gstqueryutils.h:
6287 remove queryutils headers after moving the two used functions
6288 to gstquery. also fixes build problem for gstsiddec
6290 2005-09-26 Michael Smith <msmith@fluendo.com>
6292 * tools/gst-launch.1.in:
6293 Correct documentation in manpage of debug syntax
6295 2005-09-26 Wim Taymans <wim@fluendo.com>
6297 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
6298 (gst_base_src_is_seekable), (gst_base_src_change_state):
6299 Some more debugging info.
6301 2005-09-25 Stefan Kost <ensonic@users.sf.net>
6303 * docs/gst/gstreamer-sections.txt:
6304 * gst/base/gstbasetransform.h:
6308 2005-09-25 Stefan Kost <ensonic@users.sf.net>
6310 * docs/gst/.cvsignore:
6311 * docs/gst/tmpl/.cvsignore:
6312 * docs/gst/tmpl/gstpipeline.sgml:
6313 * docs/gst/tmpl/gstplugin.sgml:
6314 * gst/gstpipeline.c:
6317 inlined the last two docs files
6318 removed the tmpl directory from cvs (no more conflicts here!)
6320 2005-09-25 Stefan Kost <ensonic@users.sf.net>
6322 * docs/gst/gstreamer-sections.txt:
6323 * docs/gst/tmpl/.cvsignore:
6324 * docs/gst/tmpl/gstpad.sgml:
6325 * docs/gst/tmpl/gstpadtemplate.sgml:
6327 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
6328 (gst_pad_finalize), (gst_pad_set_pad_template):
6330 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
6331 (gst_pad_template_class_init), (gst_pad_template_init),
6332 (gst_pad_template_dispose), (name_is_valid),
6333 (gst_static_pad_template_get), (gst_pad_template_new),
6334 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
6335 (gst_pad_template_pad_created):
6336 * gst/gstpadtemplate.h:
6337 inlined two more docs
6338 factored gstpadtemplate out of gstpad
6340 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
6342 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
6343 (test_children_state_change_order_semi_sink):
6344 Fix test case: we can't rely on a fixed state change order when
6345 going from READY => PAUSED because the sink might commit its
6346 new state first when the first buffer created by the source
6347 reaches the sink before the source has finished its change state.
6348 (Test case still fails at times, see #316856, comment 5 onwards)
6350 2005-09-24 Wim Taymans <wim@fluendo.com>
6352 * docs/design/part-events.txt:
6353 * docs/design/part-gstbus.txt:
6354 * docs/design/part-gstpipeline.txt:
6355 * docs/design/part-messages.txt:
6356 * docs/design/part-overview.txt:
6357 * docs/design/part-segments.txt:
6364 * gst/gstiterator.c:
6365 Various documentation updates.
6367 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
6370 Well, that's embarassing. Luckily we weren't using
6371 GST_CLOCK_DIFF anywhere.
6373 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
6375 * common/gtk-doc.mak:
6376 don't fail on building XML, FC4 slave shows a bunch of doc
6377 missing bits that I don't get
6379 * gst/gstpipeline.c:
6380 * gst/gststructure.c:
6383 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
6385 * docs/design/part-gstbin.txt:
6386 * docs/design/part-gstbus.txt:
6388 Add blurb about how the bus goes into flushing mode and
6389 drops all messages when its bin goes from READY into NULL
6392 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
6394 * docs/gst/gstreamer-sections.txt:
6395 * gst/gststructure.c: (gst_structure_get_clock_time):
6396 * gst/gststructure.h:
6397 add a method to get a GstClockTime out of a structure
6399 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
6401 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
6402 (test_children_state_change_order_semi_sink), (gst_bin_suite):
6403 Added test to check state change order in bins (can still be made
6404 to fail here under heavy disk load; bails out with 'Push on pad
6405 fakesink:sink0, but it was not activated in push mode').
6407 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
6408 Fix state change order when there is only a semi sink (#316856)
6410 * gst/gstbus.c: (gst_bus_class_init):
6411 Use _class_peek_parent(), not _class_ref(); fix docs to say
6412 'default main context' instead of 'mainloop' where that is
6415 * gst/gstelement.c: (gst_element_commit_state),
6416 (gst_element_set_state):
6417 Fix typos in debug messages
6419 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
6422 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
6423 * gst/gstpluginfeature.c:
6426 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6427 change an assert into an error until it gets fixed properly
6429 2005-09-23 Stefan Kost <ensonic@users.sf.net>
6431 * docs/gst/gstreamer-sections.txt:
6432 * docs/gst/tmpl/.cvsignore:
6433 * docs/gst/tmpl/gstelement.sgml:
6434 * docs/gst/tmpl/gstinfo.sgml:
6435 * docs/gst/tmpl/gstobject.sgml:
6440 * gst/gstobject.c: (gst_object_class_init):
6442 inlined 3 more biiiig doc files and added some missing docs on the fly
6444 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
6446 * check/gst/.cvsignore:
6447 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
6448 * gst/gstregistryxml.c: (load_plugin),
6449 (gst_registry_xml_save_plugin):
6450 put back source in registry. add checks for find_plugin.
6451 * testsuite/states/bin.c: (assert_state), (empty_bin),
6452 (test_adding_one_element), (main):
6453 * testsuite/states/locked.c: (main):
6454 some compile/run fixes
6456 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
6458 * check/gst/gstvalue.c: (GST_START_TEST):
6459 fix leaks in the test itself
6461 2005-09-22 Wim Taymans <wim@fluendo.com>
6463 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6464 (gst_base_sink_send_event), (gst_base_sink_peer_query),
6465 (gst_base_sink_query):
6466 Prepare for more accurate position reporting and query
6469 * gst/gstelement.c: (gst_element_send_event),
6470 (gst_element_set_state):
6473 2005-09-22 Wim Taymans <wim@fluendo.com>
6475 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
6476 (gst_query_parse_segment):
6479 Add segment query for future use.
6481 2005-09-22 Wim Taymans <wim@fluendo.com>
6483 * gst/gstbin.c: (gst_bin_add_func):
6484 Some more debug info.
6486 * gst/gstelement.c: (gst_element_send_event):
6490 Don't know how flags got broken.
6495 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
6497 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
6498 Add simplistic test suite for GST_TYPE_DATE serialisation and
6501 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
6503 * docs/gst/gstreamer-sections.txt:
6504 * gst/gststructure.c: (gst_structure_set_valist),
6505 (gst_structure_get_date):
6506 * gst/gststructure.h:
6507 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
6508 (gst_date_copy), (gst_value_compare_date),
6509 (gst_value_serialize_date), (gst_value_deserialize_date),
6510 (gst_value_transform_date_string),
6511 (gst_value_transform_string_date), (_gst_value_initialize):
6513 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
6514 bunch of utility functions along with a hack that checks that
6515 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
6516 is required. Part of the grand scheme in #170777.
6518 2005-09-22 Andy Wingo <wingo@pobox.com>
6520 * gst/gstconfig.h.in: Psych out gtk-doc.
6522 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
6524 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
6526 * tools/gst-inspect.c (print_element_list): Plug some
6527 inconsequential leaks.
6529 * gst/gstregistry.c (gst_registry_get_default): Doc.
6531 * check/gst/gstplugin.c:
6532 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
6533 * gst/gstelementfactory.c (gst_element_factory_create):
6534 * gst/gstindexfactory.c (gst_index_factory_create): Update for
6537 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
6538 (gst_plugin_feature_load): Doc, don't eat refs.
6540 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
6541 (gst_plugin_list_free): Doc.
6542 (gst_plugin_load_file): Doc updates.
6544 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
6545 accessors returning refcounted objects, return a ref.
6547 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
6548 accessor for caps. IDEMPOTENCE. Oh yes.
6550 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
6552 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
6554 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
6555 (_gst_debug_register_funcptr):
6556 Add mutex to serialise access to the hash table with
6557 the function pointer => function name string mapping;
6558 make that hash table static scope (#316809).
6560 * gst/registries/.cvsignore:
6561 Remove left-over file.
6563 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
6565 * docs/pwg/appendix-porting.xml:
6566 And something about newsegment events and caps-on-buffers to
6567 the porting guide (feel free to improve).
6569 2005-09-21 Andy Wingo <wingo@pobox.com>
6571 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
6572 data and event probes on the same pad.
6573 (test_buffer_probe_once): Test that removing probes from within
6574 the probe functions works.
6576 2005-09-21 Andy Wingo <wingo@pobox.com>
6578 * check/gst/gstutils.c: New file.
6579 (test_buffer_probe_n_times): A simple buffer probe test. More to
6582 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
6583 have-data::buffer, not have-data.
6584 (gst_pad_add_event_probe): Likewise for have-data::event.
6585 (gst_pad_add_data_probe): More docs. The part about 'resolving the
6586 peer' isn't quite right yet though.
6587 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
6588 (gst_pad_remove_data_probe): Change to take the guint handler_id
6589 as their arg, not the function+data, which is more glib-like.
6591 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
6592 the signal emission to indicate if the data is a buffer or an
6594 (gst_pad_get_type): Initialize buffer and event quarks.
6595 (gst_pad_class_init): have-data is now a detailed signal, yes it
6598 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
6600 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
6601 * gst/gstutils.c: (gst_util_set_value_from_string),
6602 (gst_util_set_object_arg):
6603 Don't put functional code in g_return_if_fail() or
6604 g_return_val_if_fail() statements, otherwise things will
6605 break when G_DISABLE_CHECKS is defined during compilation.
6607 2005-09-21 Stefan Kost <ensonic@users.sf.net>
6609 * docs/gst/tmpl/.cvsignore:
6610 * docs/gst/tmpl/gstvalue.sgml:
6613 inlied another one and added some obvious docs
6615 2005-09-21 Wim Taymans <wim@fluendo.com>
6617 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6618 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
6619 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
6620 (gst_fdsrc_get_property), (gst_fdsrc_create):
6621 * gst/elements/gstfdsrc.h:
6622 Properly implement fdsrc. Removed signal and timeout,
6623 better implemented somewhere else.
6625 2005-09-21 Stefan Kost <ensonic@users.sf.net>
6627 * docs/gst/tmpl/.cvsignore:
6628 * docs/gst/tmpl/gstimplementsinterface.sgml:
6629 * gst/gstinterface.c:
6632 2005-09-21 Stefan Kost <ensonic@users.sf.net>
6634 * docs/gst/gstreamer-sections.txt:
6635 * docs/gst/tmpl/.cvsignore:
6636 * docs/gst/tmpl/gstenumtypes.sgml:
6637 remove obsolete doc file
6639 2005-09-21 David Schleef <ds@schleef.org>
6641 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
6642 little beer, fix a little leak.
6644 2005-09-21 Stefan Kost <ensonic@users.sf.net>
6646 * docs/gst/gstreamer-docs.sgml:
6647 * docs/gst/gstreamer-sections.txt:
6648 * docs/gst/tmpl/.cvsignore:
6653 * gst/gstindex.c: (gst_index_class_init):
6655 * gst/gstindexfactory.c: (gst_index_factory_get_type),
6656 (gst_index_factory_class_init), (gst_index_factory_init),
6657 (gst_index_factory_finalize), (gst_index_factory_new),
6658 (gst_index_factory_destroy), (gst_index_factory_find),
6659 (gst_index_factory_create), (gst_index_factory_make):
6660 * gst/gstindexfactory.h:
6661 * gst/gstpluginfeature.c:
6662 * gst/gstpluginfeature.h:
6663 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6664 more docs inlined, splitted gstindex.{c,h}
6666 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
6668 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6671 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
6673 * gst/elements/gstfilesink.c: (gst_file_sink_init):
6674 Set sync to FALSE by default.
6676 2005-09-20 Wim Taymans <wim@fluendo.com>
6678 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6679 (gst_base_sink_init):
6680 Make sync property settable from subclass.
6682 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
6683 (gst_fake_sink_change_state):
6684 Set sync to FALSE by default.
6686 2005-09-20 Wim Taymans <wim@fluendo.com>
6688 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
6689 * tools/gst-launch.c: (main):
6690 The timeout handler should have lower priority than the source
6691 so we don't timeout before popping a message with 0 timeout.
6692 Dump error messages after failed state change.
6694 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
6696 * tools/gst-inspect.c: (print_element_properties_info):
6699 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
6701 * check/gst/gstevent.c:
6702 * gst/elements/gstfakesink.c:
6703 * gst/elements/gstfakesink.h:
6704 remove the sync property from fakesink.
6705 has the side effect of setting sync TRUE
6706 for fakesink, which is a change. Anyone who knows how
6707 to fix this nicely in a GObject-y way, feel free.
6709 2005-09-20 Stefan Kost <ensonic@users.sf.net>
6711 * docs/gst/gstreamer-docs.sgml:
6712 remove probe refsection
6714 2005-09-20 Stefan Kost <ensonic@users.sf.net>
6716 * check/Makefile.am:
6717 disable valgrinding the controller test again
6718 * docs/gst/gstreamer-sections.txt:
6719 update for api-changes
6721 2005-09-20 Wim Taymans <wim@fluendo.com>
6723 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6724 (gst_base_sink_set_property), (gst_base_sink_get_property),
6725 (gst_base_sink_do_sync):
6726 * gst/base/gstbasesink.h:
6727 Added sync property to basesink to disable clock sync.
6729 2005-09-20 Andy Wingo <wingo@pobox.com>
6731 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
6732 eating the caller's refcount.
6734 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
6735 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
6738 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
6739 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
6740 of GLib 2.8 public, so we can know which refcount to check in
6743 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
6744 (gst_object_init): Only set the gst refcount if we're going ahead
6745 with the refcount hack.
6747 2005-09-20 Stefan Kost <ensonic@users.sf.net>
6749 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
6750 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6751 more leaks plumbed, added more debug-logging
6755 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
6758 remove include of gstmemchunk.h
6760 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
6762 * gst/gstclock.c: (_gst_clock_id_free):
6763 Commit from the Political Party For More Atomic CVS Commits,
6764 so that people don't waste too much of their day fishing
6765 out obvious leaks out of massive commits.
6766 Oh, and fix a pretty damn obvious leak in the memchunk
6769 2005-09-20 Stefan Kost <ensonic@users.sf.net>
6771 * check/Makefile.am:
6772 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
6773 plug mem-leak, re-add to valgrindable tests
6775 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
6778 unbreak the build for those who have chronic arthritis
6779 and typing "make check" is just too taxing on the hands
6781 2005-09-20 Andy Wingo <wingo@pobox.com>
6783 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
6784 really want it out, you should fix plugins at the same time.
6786 2005-09-19 Stefan Kost <ensonic@users.sf.net>
6789 * docs/gst/gstreamer-sections.txt:
6791 added missing symbols to api docs
6792 disable ref-count hack if we have glib >= 2.8
6794 2005-09-19 David Schleef <ds@schleef.org>
6796 * docs/gst/Makefile.am: Ignore a few more internal headers
6797 * docs/gst/gstreamer-docs.sgml: Remove old sections
6798 * docs/gst/gstreamer-sections.txt: Remove old sections
6799 * docs/gst/tmpl/gstobject.sgml: update
6800 * docs/gst/tmpl/gstplugin.sgml: update
6801 * docs/gst/tmpl/gstpluginfeature.sgml: update
6802 * docs/random/ds/0.9-suggested-changes: update.
6803 * gst/Makefile.am: remove memchunk and trashstack, since they're
6805 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
6806 * gst/gst.h: don't include some headers
6807 * gst/gstchildproxy.c: add gstmarshal.h
6808 * gst/gstclock.c: Don't use memchunks
6809 * gst/gstminiobject.c: Add some docs
6810 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
6811 * gst/gstobject.h: same
6812 * gst/gstplugin.c: include gstmacros.h
6813 * gst/gstplugin.h: don't include gstmacros.h, since it's private
6814 * gst/gstquery.c: don't use memchunks
6815 * gst/gstregistry.c: rename gst_registry_deinit()
6816 * gst/gstregistry.h: same
6818 2005-09-19 David Schleef <ds@schleef.org>
6820 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
6821 * docs/libs/gstreamer-libs-sections.txt:
6822 * docs/libs/tmpl/gstgetbits.sgml:
6823 * docs/libs/tmpl/gstputbits.sgml:
6825 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
6827 * win32/gstenumtypes.c:
6828 * win32/gstenumtypes.h:
6831 2005-09-19 Wim Taymans <wim@fluendo.com>
6833 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
6834 Automatically PAUSE and RESUME a pipeline when a flushing seek
6837 2005-09-19 Andy Wingo <wingo@pobox.com>
6839 * gst/gstregistry.h: Spacing fixen.
6841 2005-09-19 Wim Taymans <wim@fluendo.com>
6843 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
6844 Handle state change failure more correctly.
6846 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
6848 * check/Makefile.am:
6849 * check/pipelines/cleanup.c: (run_pipeline):
6850 * check/pipelines/simple_launch_lines.c: (run_pipeline),
6852 enable cleanup again after fixing the leak
6854 some more info on docs
6856 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
6858 * check/Makefile.am:
6859 re-enable tests now that leaks are plugged
6861 * check/gst/gstbin.c:
6862 * check/gst/gstpipeline.c:
6863 add some more tests while fixing leaks
6865 make sure binaries are uptodate when valgrinding/gdbing
6867 * gst/gstelementfactory.c:
6868 remove a ref too many, and add a FIXME for when we get
6869 round to disposing of classes
6871 fix the refcounting when loading a plugin from a file and
6872 the code pretends that the pointer is the same even though
6873 of course it can change
6874 * gst/gstpluginfeature.c:
6875 unref plugins marked cached (a bit confusing as a name)
6876 as the docs state should be done
6877 various doc additions to explain refcounting
6878 * gst/gstregistry.c:
6879 * gst/gstregistryxml.c:
6882 2005-09-19 Wim Taymans <wim@fluendo.com>
6884 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
6885 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
6886 (send_messages), (GST_START_TEST), (gstbus_suite):
6887 * check/gst/gstpipeline.c: (GST_START_TEST):
6888 * check/pipelines/cleanup.c: (run_pipeline):
6889 * check/pipelines/simple_launch_lines.c: (run_pipeline),
6891 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
6892 (gst_bus_source_check), (gst_bus_source_dispatch),
6893 (gst_bus_create_watch), (gst_bus_add_watch_full),
6894 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
6896 * tools/gst-launch.c: (event_loop):
6897 * tools/gst-md5sum.c: (event_loop):
6898 GstBusHandler -> GstBusFunc, return value has the same meaning as
6899 any other GSource (FALSE == remove source).
6900 _add_watch() and _add_watch_full() now take a MessageType mask to
6901 only handle specific types of messages.
6902 _poll() returns the GstMessage instead of the message type to avoid
6904 _have_pending() takes a MessageType mask now too.
6905 Added testsuite for multiple bus watches.
6906 Fix testsuites and applications for new bus API.
6908 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
6910 * check/Makefile.am:
6911 mark a bunch of the tests as to fix until we fix them
6913 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
6916 use GST_PLUGIN settings for valgrind tests as well, so we're
6917 valgrinding the correct thing
6918 * gst/gst.c: (init_post):
6921 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
6923 * gst/gst.c: (init_post), (gst_deinit):
6924 * gst/gstelementfactory.c: (gst_element_factory_class_init),
6925 (gst_element_factory_finalize), (gst_element_factory_cleanup):
6926 * gst/gstindex.c: (gst_index_factory_class_init),
6927 (gst_index_factory_finalize):
6928 * gst/gstobject.c: (gst_object_dispose):
6929 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
6930 (gst_plugin_load_file), (gst_plugin_desc_free):
6931 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
6932 (gst_plugin_feature_finalize):
6933 * gst/gstregistry.c: (gst_registry_class_init),
6934 (gst_registry_init), (gst_registry_finalize),
6935 (gst_registry_get_default), (gst_registry_deinit):
6936 * gst/gstregistry.h:
6937 * gst/gstregistryxml.c: (load_feature), (load_plugin):
6938 various cleanups and memleak plugging. make valgrind is happy now.
6940 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
6943 add a check-valgrind target
6945 2005-09-18 David Schleef <ds@schleef.org>
6947 * tools/gst-inspect.c: Revert the GOption code.
6949 2005-09-17 David Schleef <ds@schleef.org>
6951 * check/Makefile.am: Fix environment variables.
6952 * check/gst/gstplugin.c: Fix for API changes.
6953 * tools/gst-inspect.c: Fix for API changes.
6954 * tools/gst-xmlinspect.c: Fix for API changes.
6955 * gst/gstelementfactory.c:
6958 * gst/gstpluginfeature.c:
6959 * gst/gstpluginfeature.h:
6960 * gst/gstregistry.c:
6961 * gst/gstregistry.h:
6962 * gst/gstregistryxml.c:
6963 * gst/gsttypefind.c:
6964 * gst/gsttypefindfactory.c:
6965 * gst/indexers/gstfileindex.c:
6966 * gst/indexers/gstmemindex.c:
6967 * gst/schedulers/Makefile.am:
6968 Change registry to keep track of both plugins and features,
6969 removing the feature tracking from plugins themselves.
6971 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
6973 * check/Makefile.am:
6974 * tools/gst-register.1.in:
6977 2005-09-15 David Schleef <ds@schleef.org>
6979 * check/gst/gstplugin.c:
6980 * gst/gstelementfactory.c:
6982 * gst/gstpluginfeature.c:
6983 * gst/gstregistry.c:
6984 Getting tired of debugging. Disabled all the unreffing of
6985 plugins and features, which fixes the segfaults, but of
6986 course leaks like crazy. At least playbin works.
6988 2005-09-15 David Schleef <ds@schleef.org>
6990 * check/gst/gstplugin.c: (register_check_elements),
6991 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
6993 * gst/elements/gsttypefindelement.c: Fix refcounting.
6994 * gst/gsttypefind.c:
6995 * gst/gsttypefindfactory.c:
6996 * gst/gsttypefindfactory.h:
6998 2005-09-15 David Schleef <ds@schleef.org>
7000 * gst/gstindex.c: get refcounting correct.
7001 * gst/gstregistry.c: Handle the case where a feature/plugin is
7004 2005-09-15 David Schleef <ds@schleef.org>
7006 * check/Makefile.am:
7007 * check/gst/gstplugin.c: Add test
7008 * gst/gstplugin.c: Fix problems noticed by testsuite
7010 * gst/gstregistry.c:
7011 * gst/gstregistry.h:
7013 2005-09-15 David Schleef <ds@schleef.org>
7015 * gst/gstplugin.c: Implement semi-decent recounting and locking
7016 in plugins and plugin features.
7018 * gst/gstpluginfeature.c:
7019 * gst/gstpluginfeature.h:
7020 * gst/gstregistry.c:
7022 2005-09-15 Michael Smith <msmith@fluendo.com>
7024 * gst/gstregistry.c: (gst_registry_get_feature_list):
7025 Implement this. Makes oggdemux work; decodebin still broken.
7027 2005-09-14 David Schleef <ds@schleef.org>
7029 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
7031 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
7032 * gst/check/Makefile.am:
7033 * libs/gst/controller/Makefile.am:
7034 * libs/gst/dataprotocol/Makefile.am:
7036 2005-09-14 David Schleef <ds@schleef.org>
7038 * configure.ac: Remove getbits library. Nothing uses it, and
7039 it should be in something like liboil if someone did want
7041 * libs/gst/Makefile.am:
7042 * libs/gst/getbits/Makefile.am:
7043 * libs/gst/getbits/gbtest.c:
7044 * libs/gst/getbits/getbits.c:
7045 * libs/gst/getbits/getbits.h:
7046 * libs/gst/getbits/gstgetbits_generic.c:
7047 * libs/gst/getbits/gstgetbits_i386.s:
7048 * libs/gst/getbits/gstgetbits_inl.h:
7050 2005-09-14 David Schleef <ds@schleef.org>
7052 * gst/Makefile.am: Dist glib-compat.h
7054 2005-09-14 David Schleef <ds@schleef.org>
7056 * configure.ac: Remove gst/registries, since it's no longer used.
7057 * gst/registries/Makefile.am:
7058 * gst/registries/gstlibxmlregistry.c:
7059 * gst/registries/gstlibxmlregistry.h:
7060 * gst/registries/gstxmlregistry.c:
7061 * gst/registries/gstxmlregistry.h:
7062 * gst/registries/registrytest.c:
7064 2005-09-14 David Schleef <ds@schleef.org>
7066 * gst/glib-compat.h:
7067 * gst/gstregistryxml.c:
7068 Convergence is near. Seriously.
7070 2005-09-14 David Schleef <ds@schleef.org>
7072 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7073 * gst/glib-compat.h:
7074 Attempt #4 to appease the buildbots.
7076 2005-09-14 David Schleef <ds@schleef.org>
7078 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7081 2005-09-14 David Schleef <ds@schleef.org>
7083 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7086 2005-09-14 David Schleef <ds@schleef.org>
7088 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
7091 2005-09-14 David Schleef <ds@schleef.org>
7093 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7094 * gst/glib-compat.h: Add some functions that are in newer versions
7095 of glib than we care to require.
7096 * gst/gstregistryxml.c: Use them.
7098 2005-09-14 David Schleef <ds@schleef.org>
7100 * po/POTFILES.in: remove gst-register.c
7102 2005-09-14 David Schleef <ds@schleef.org>
7104 * docs/gst/gstreamer-docs.sgml:
7105 * docs/gst/gstreamer-sections.txt:
7106 * docs/gst/gstreamer.types:
7107 * docs/gst/tmpl/gstelement.sgml:
7108 * docs/gst/tmpl/gstplugin.sgml:
7109 * docs/gst/tmpl/gstpluginfeature.sgml:
7110 Documentation updates for registry changes.
7112 2005-09-14 David Schleef <ds@schleef.org>
7114 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
7115 because we don't require glib-2.8.
7117 2005-09-14 David Schleef <ds@schleef.org>
7119 * gst/gstregistryxml.c: Added. Essentially moved out of the
7120 registries directory.
7122 2005-09-14 David Schleef <ds@schleef.org>
7124 * check/Makefile.am:
7125 * check/generic/states.c:
7129 * gst/gst_private.h:
7130 * gst/gstelementfactory.c:
7135 * gst/gstpluginfeature.c:
7136 * gst/gstpluginfeature.h:
7137 * gst/gstregistry.c:
7138 * gst/gstregistry.h:
7139 * gst/gstregistrypool.c: remove
7140 * gst/gstregistrypool.h: remove
7141 * gst/gsttypefind.c:
7142 * gst/gsttypefindfactory.c:
7144 * tools/Makefile.am:
7145 * tools/gst-compprep.c:
7146 * tools/gst-inspect.c:
7147 * tools/gst-register.c: remove
7148 * tools/gst-xmlinspect.c:
7149 Registry rewrite. Changes registry from being a file created
7150 by a tool into a simple cache file created automatically by
7151 libgstreamer. Removed gst-register (because it's no longer
7152 needed). Remove registry pools, because we only have one
7153 registry implementation (XML). Fix up other subsystems as
7156 2005-09-13 Michael Smith <msmith@fluendo.com>
7158 * gst/gstconfig.h.in:
7159 Don't Use windows linking attributes for MinGW. Fixes #316157
7161 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
7163 * gst/gstutils.c: (set_state_async_thread_func),
7164 (gst_element_set_state_async):
7165 Apparently people think it's better if this function doesn't
7166 try to set the state to whatever state was asked for on the first
7167 call to this function for any object. Seriously.
7169 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
7171 * check/gst/gstpipeline.c: (GST_START_TEST):
7172 * docs/gst/gstreamer-sections.txt:
7173 * gst/gstutils.c: (set_state_async_thread_func),
7174 (gst_element_set_state_async):
7176 add a "gst_element_set_state_async" method that
7177 sets the state and starts a thread to make sure the state
7178 change completes as best as it can
7180 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
7182 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
7183 codify design+behaviour in testsuite after discussion
7185 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
7187 * docs/gst/tmpl/gstelement.sgml:
7188 * docs/manual/appendix-quotes.xml:
7190 * gst/gstelement.c: (gst_element_set_state):
7193 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
7195 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
7196 (gst_base_transform_prepare_output_buf),
7197 (gst_base_transform_handle_buffer):
7198 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
7199 (gst_capsfilter_prepare_buf):
7200 Remove the requirement for sub-classes to call the parent
7201 implementation of prepare_output_buffer with a wrapper function.
7204 * gst/gsttagsetter.h:
7207 2005-09-11 Stefan Kost <ensonic@users.sf.net>
7209 * docs/gst/gstreamer-sections.txt:
7212 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
7214 * docs/gst/gstreamer-sections.txt:
7215 * docs/gst/tmpl/gstelement.sgml:
7216 * docs/gst/tmpl/gstplugin.sgml:
7217 * gst/gstminiobject.c:
7219 docs now stop throwing warnings
7221 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
7223 * docs/gst/gstreamer-sections.txt:
7224 * docs/gst/gstreamer.types:
7225 * docs/gst/tmpl/gstpad.sgml:
7226 * docs/gst/tmpl/gsttypes.sgml:
7227 * gst/base/gstadapter.h:
7228 * gst/base/gstbasesink.h:
7229 * gst/base/gstbasesrc.h:
7239 * gst/gststructure.c:
7240 * gst/registries/gstlibxmlregistry.h:
7241 various documentation fixes
7243 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
7245 * docs/gst/gstreamer-sections.txt:
7246 * docs/gst/tmpl/gstvalue.sgml:
7247 rearrange gstvalue section
7248 * gst/gstutils.c: (gst_element_state_get_name):
7250 * gst/gstvalue.c: (_gst_value_initialize):
7254 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
7256 * check/gst-libs/controller.c:
7258 * gst/base/gstbasetransform.c:
7259 (gst_base_transform_default_prepare_buf),
7260 (gst_base_transform_handle_buffer):
7261 * gst/base/gstbasetransform.h:
7262 Some more basetransform changes and fixes to enable sub-classes
7263 that modify buffer metadata only.
7264 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
7265 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
7266 (gst_capsfilter_prepare_buf):
7267 If the output pad has fixed allowed caps and input buffers
7268 don't have any, set the fixed caps on outgoing buffers.
7270 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
7271 * check/elements/identity.c: (GST_START_TEST):
7272 Make the error a little clearer when the test fails because
7273 identity made a copy of the buffer.
7274 * docs/gst/gstreamer-sections.txt:
7275 New symbols in gstbasetransform.h
7276 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
7277 (gst_base_transform_init), (gst_base_transform_transform_size),
7278 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
7279 (gst_base_transform_default_prepare_buf),
7280 (gst_base_transform_get_unit_size),
7281 (gst_base_transform_buffer_alloc),
7282 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
7283 (gst_base_transform_change_state),
7284 (gst_base_transform_set_passthrough),
7285 (gst_base_transform_set_in_place),
7286 (gst_base_transform_is_in_place):
7287 * gst/base/gstbasetransform.h:
7288 Change BaseTransform to separate in_place operate from same_caps
7289 output. in_place implies that the element can perform the transform
7290 on incoming buffers in-place, even if the caps on the output are
7292 Sub-class elements can now implement special buffer allocation
7293 methods for outgoing buffers if they wish to.
7294 Big documentation addition.
7295 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
7296 * gst/elements/gstelements.c:
7297 Changes for basetransform modifications.
7298 * gst/elements/Makefile.am:
7299 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
7300 Compile fix. Extra debug output.
7302 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
7304 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
7306 add tests for valid pad naming
7307 * gst/check/gstcheck.c: (gst_check_log_message_func),
7308 (gst_check_log_critical_func):
7310 remove printing of code, it is fragile when the code contains
7311 % and the line number is enough info
7312 * gst/check/gstcheck.h:
7313 * gst/gstpad.c: (gst_pad_template_new):
7316 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
7319 say what CHECK flags we use
7320 * docs/libs/gstreamer-libs.types:
7321 * libs/gst/controller/Makefile.am:
7322 * libs/gst/controller/gst-controller.c:
7323 * libs/gst/controller/gst-controller.h:
7324 * libs/gst/controller/gst-helper.c:
7325 * libs/gst/controller/gst-interpolation.c:
7326 * libs/gst/controller/gstcontroller.c:
7327 * libs/gst/controller/gsthelper.c:
7328 * libs/gst/controller/gstinterpolation.c:
7329 * tools/gst-inspect.c: (print_plugin_info):
7330 we don't use dashes in header names
7332 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
7334 * check/Makefile.am:
7335 * check/gst/.cvsignore:
7336 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
7337 (gst_pipeline_suite), (main):
7338 adding a test for pipelines and state changes
7339 * gst/gstutils.c: (get_state_func):
7341 * gstreamer.spec.in:
7344 2005-09-08 Michael Smith <msmith@fluendo.com>
7346 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
7347 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
7348 (gst_file_src_is_seekable), (gst_file_src_get_size),
7349 (gst_file_src_start):
7350 * gst/elements/gstfilesrc.h:
7351 Various fixes for unseekable, unmmapable, and non-normal files, so
7352 that fallback to read() rather than mmap() works.
7353 * gst/gstevent.c: (gst_event_new_newsegment):
7354 Allow newsegment events with segment_start == segment_end, as will
7355 correctly happen if you use filesrc on a zero-size file, for
7358 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
7360 * gst/gstplugin.c: (gst_plugin_load_file):
7361 Call g_module_close when we don't load the module
7363 * gst/registries/gstlibxmlregistry.c:
7364 (gst_xml_registry_get_property):
7365 Port leak fix from 0.8
7367 2005-09-07 Stefan Kost <ensonic@users.sf.net>
7369 * docs/gst/gstreamer-docs.sgml:
7370 * docs/gst/tmpl/.cvsignore:
7371 * docs/gst/tmpl/gsttrace.sgml:
7372 * docs/gst/tmpl/gsttrashstack.sgml:
7381 * gst/gsttaginterface.c:
7382 * gst/gsttaginterface.h:
7385 * gst/gsttagsetter.c:
7386 * gst/gsttagsetter.h:
7389 * gst/gsttrashstack.c:
7390 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
7391 inlined docs for gsttrace, gsttrashstack
7393 2005-09-07 Stefan Kost <ensonic@users.sf.net>
7396 * gst/elements/gstbufferstore.h:
7397 * gst/elements/gsttypefindelement.c:
7398 * gst/elements/gsttypefindelement.h:
7400 * gst/gsttypefind.c:
7401 * gst/gsttypefind.h:
7402 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
7403 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
7404 (gst_type_find_factory_dispose),
7405 (gst_type_find_factory_unload_thyself),
7406 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
7407 (gst_type_find_factory_get_caps),
7408 (gst_type_find_factory_get_extensions),
7409 (gst_type_find_factory_call_function):
7410 * gst/gsttypefindfactory.h:
7411 * gst/registries/gstlibxmlregistry.c:
7412 * gst/registries/gstxmlregistry.c:
7413 splitted gsttypefind into gsttypefind, gsttypefindfactory
7415 2005-09-07 Andy Wingo <wingo@pobox.com>
7417 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
7418 condition whereby the pad's task function is entered before the
7419 pad_mode variable was set.
7421 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
7423 * gst/gstpad.c: (gst_pad_alloc_buffer):
7424 Catch misbehaving pad_alloc functions that don't
7425 set up caps and do it for them.
7427 2005-09-07 Stefan Kost <ensonic@users.sf.net>
7429 * check/pipelines/simple_launch_lines.c: (run_pipeline):
7431 * docs/gst/tmpl/.cvsignore:
7432 * docs/gst/tmpl/gstmemchunk.sgml:
7433 * docs/gst/tmpl/gstparse.sgml:
7434 * docs/gst/tmpl/gsttaglist.sgml:
7435 * docs/gst/tmpl/gsttagsetter.sgml:
7436 * docs/gst/tmpl/gsttypefind.sgml:
7437 * docs/gst/tmpl/gsttypefindfactory.sgml:
7438 * gst/gstmemchunk.c:
7441 * gst/gsttaginterface.c:
7442 * gst/gsttypefind.c:
7443 * gst/gsttypefind.h:
7446 === release 0.9.2 ===
7448 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
7453 releasing 0.9.2, "South"
7455 2005-09-05 Andy Wingo <wingo@pobox.com>
7457 * gst/registries/gstxmlregistry.h:
7458 * gst/registries/gstxmlregistry.c: Um... resurrect...
7460 * gst/registries/gstxmlregistry.h:
7461 * gst/registries/gstxmlregistry.c: and update to newer API.
7462 Incidentally they should be a bit faster now that they don't have
7465 2005-09-05 Andy Wingo <wingo@pobox.com>
7467 * gst/registries/gstxmlregistry.h:
7468 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
7469 replaced by the libxml registry a while back
7471 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
7473 * docs/gst/tmpl/gstplugin.sgml:
7474 * gst/elements/gstelements.c:
7476 * gst/gstplugin.c: (gst_plugin_register_func),
7477 (gst_plugin_desc_copy), (gst_plugin_desc_free),
7478 (gst_plugin_get_source):
7480 * gst/registries/gstlibxmlregistry.c: (load_plugin),
7481 (gst_xml_registry_save_plugin):
7482 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
7483 (gst_xml_registry_save_plugin):
7484 * tools/gst-inspect.c: (print_plugin_info):
7485 add a "source" plugin description field, to represent the source
7486 module this plugin is a part of. By default GST_PLUGIN_DEFINE
7487 will set it to PACKAGE, which is automake's idea of the name of
7490 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
7496 * docs/faq/Makefile.am:
7497 * docs/gst/tmpl/gstelement.sgml:
7498 * docs/gst/tmpl/gsttypes.sgml:
7499 * docs/htmlinstall.mak:
7500 * docs/manual/Makefile.am:
7501 * docs/pwg/Makefile.am:
7502 reorganize doc build a little
7503 split out docbook and gtk-doc stuff
7504 have two separate --enable's and enable them through autogen
7505 but disable by default in configure (to be similar to other
7507 * gstreamer.spec.in:
7508 clean up docs install
7528 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
7530 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
7533 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
7534 (gst_fake_sink_change_state):
7535 Make state change function thread-safe.
7537 * gst/gstpad.c: (gst_pad_alloc_buffer):
7538 Set offset on generic buffer allocated by fallback.
7540 2005-09-03 Stefan Kost <ensonic@users.sf.net>
7542 * docs/gst/gstreamer-sections.txt:
7543 * docs/gst/tmpl/gstelement.sgml:
7545 * libs/gst/controller/gst-controller.c:
7546 (gst_controlled_property_set_interpolation_mode),
7547 (gst_controlled_property_new),
7548 (gst_controller_find_controlled_property):
7549 run the wingo-magic script against the docs
7551 2005-09-02 Stefan Kost <ensonic@users.sf.net>
7553 * docs/gst/gstreamer-docs.sgml:
7554 * docs/gst/gstreamer-sections.txt:
7555 * docs/gst/tmpl/.cvsignore:
7556 * docs/gst/tmpl/gstelementdetails.sgml:
7557 * docs/gst/tmpl/gstelementfactory.sgml:
7560 * gst/gstelementfactory.c:
7561 * gst/gstelementfactory.h:
7562 merged elementdetails docs into elementfactory docs
7565 2005-09-02 Andy Wingo <wingo@pobox.com>
7567 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
7568 consider this enum an enum and not a flags.
7570 2005-09-02 Stefan Kost <ensonic@users.sf.net>
7572 * docs/gst/gstreamer-docs.sgml:
7573 * docs/gst/tmpl/.cvsignore:
7574 * docs/gst/tmpl/gstghostpad.sgml:
7575 * docs/gst/tmpl/gstiterator.sgml:
7576 * docs/gst/tmpl/gstmacros.sgml:
7577 * docs/gst/tmpl/gstrealpad.sgml:
7578 * docs/gst/tmpl/gstregistry.sgml:
7579 * docs/gst/tmpl/gstregistrypool.sgml:
7580 * docs/gst/tmpl/gststructure.sgml:
7581 * docs/gst/tmpl/gstsystemclock.sgml:
7582 * docs/gst/tmpl/gsttrace.sgml:
7583 * gst/gstghostpad.c:
7585 * gst/gstmemchunk.c:
7586 * gst/gstmemchunk.h:
7588 * gst/gstregistry.c:
7589 * gst/gstregistrypool.c:
7590 * gst/gststructure.c:
7591 * gst/gstsystemclock.c:
7594 2005-09-02 Andy Wingo <wingo@pobox.com>
7596 * gst/gstelement.h (GstState): Renamed from GstElementState,
7597 changed to be a normal enum instead of flags.
7598 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
7599 munged to be GST_STATE_CHANGE_*.
7600 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
7601 work with the new state representation.
7602 (GstStateChange): New enumeration of possible state transitions.
7603 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
7604 (GstElementClass::change_state): Pass the GstStateChange along as
7605 an argument. Helps language bindings, so they don't have to use
7606 tricky lock-needing macros like GST_STATE_CHANGE ().
7608 * scripts/update-states (file): New script. Run it on a file to
7609 update it for state naming and API changes. Updates files in
7612 * All files updated for the new API.
7614 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
7616 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
7617 * gst/gstutils.c: (gst_util_set_value_from_string),
7618 (gst_util_set_object_arg):
7619 fix a bunch of unchecked return values
7620 * tools/gst-complete.c: (main):
7621 * gstreamer.spec.in:
7624 2005-09-01 Wim Taymans <wim@fluendo.com>
7626 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7627 (gst_base_sink_event), (gst_base_sink_do_sync),
7628 (gst_base_sink_handle_event):
7629 * gst/base/gstbasesink.h:
7630 Handle newsegments more correctly.
7635 * gst/gstevent.c: (gst_event_new_newsegment):
7636 A newsegment cannot have a start_time of -1
7638 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
7640 * win32/gstenumtypes.c:
7641 * win32/gstenumtypes.h:
7644 2005-08-31 Stefan Kost <ensonic@users.sf.net>
7646 * libs/gst/controller/gst-controller.c:
7647 (gst_controlled_property_set_interpolation_mode),
7648 (gst_controlled_property_new):
7651 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
7653 * docs/faq/gst-uninstalled:
7658 * gst/gstutils.c: (gst_element_link_filtered):
7660 add gst_element_link_filtered
7662 2005-08-31 Stefan Kost <ensonic@users.sf.net>
7664 * docs/gst/gstreamer-docs.sgml:
7665 * docs/gst/gstreamer-sections.txt:
7666 * docs/gst/tmpl/.cvsignore:
7667 * docs/gst/tmpl/gsterror.sgml:
7668 * docs/gst/tmpl/gstfilter.sgml:
7669 * docs/gst/tmpl/gsturihandler.sgml:
7670 * docs/gst/tmpl/gsturitype.sgml:
7671 * docs/gst/tmpl/gstutils.sgml:
7672 * docs/gst/tmpl/gstxml.sgml:
7680 inlined more docs, fixed double id-ref
7682 2005-08-31 Wim Taymans <wim@fluendo.com>
7684 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
7685 (gst_base_transform_handle_buffer):
7686 Passthrough elements don't need the caps as they don't care.
7688 2005-08-31 Wim Taymans <wim@fluendo.com>
7690 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
7691 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
7692 Don't leak refcounts on buffers.
7694 2005-08-31 Wim Taymans <wim@fluendo.com>
7696 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
7697 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
7698 (gst_base_transform_chain), (gst_base_transform_change_state):
7699 * gst/base/gstbasetransform.h:
7700 Handle the case where we are not negotiated more gracefully.
7702 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
7704 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
7705 (gst_file_src_map_region):
7706 Set READONLY flag on mmap'ed buffers, otherwise
7707 gst_buffer_make_writable() won't work properly (#314708).
7709 2005-08-31 Wim Taymans <wim@fluendo.com>
7711 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
7712 passthrough elements can even do inplace on non writable
7713 buffers (as they don't touch them).
7715 2005-08-31 Stefan Kost <ensonic@users.sf.net>
7717 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
7718 (gst_test_mono_source_set_property),
7719 (gst_test_mono_source_class_init), (GST_START_TEST),
7720 (gst_controller_suite):
7721 more tests (hehe I have the most)
7723 describe popping messages whenusing mulltiple sources
7724 * libs/gst/controller/gst-controller.c:
7725 (gst_controlled_property_set_interpolation_mode),
7726 (gst_controlled_property_new):
7727 * libs/gst/controller/gst-controller.h:
7728 * libs/gst/controller/gst-interpolation.c:
7729 implement boolean properties
7731 2005-08-31 Wim Taymans <wim@fluendo.com>
7733 * gst/gstminiobject.c: (gst_mini_object_ref):
7734 Cannot assert that the refcount has to be positive
7735 since a disposed object can be resurrected.
7737 2005-08-31 Wim Taymans <wim@fluendo.com>
7739 * gst/gstpad.c: (gst_pad_init):
7740 Revert change, need to first fix badly behaving
7743 2005-08-30 Wim Taymans <wim@fluendo.com>
7745 * check/elements/fakesrc.c: (setup_fakesrc):
7746 * check/elements/identity.c: (setup_identity):
7747 Activate pads before using them.
7749 2005-08-30 Wim Taymans <wim@fluendo.com>
7751 * gst/base/gstadapter.c: (gst_adapter_flush):
7752 Flushing out 0 bytes is ok for this function.
7754 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7755 no newsegment gives a warning and sets the start/stop to
7758 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
7759 (gst_base_transform_set_passthrough):
7762 * gst/gstminiobject.c: (gst_mini_object_ref):
7763 Check refcount here too.
7765 * gst/gstpad.c: (gst_pad_init):
7766 Pads are initially flushing and refusing data.
7768 * gst/gstutils.c: (gst_element_link_pads_filtered):
7769 When adding a capsfilter element make sure it has the
7770 same state as the parent bin.
7772 2005-08-30 Stefan Kost <ensonic@users.sf.net>
7774 * docs/gst/tmpl/.cvsignore:
7775 * docs/gst/tmpl/gstformat.sgml:
7776 * docs/gst/tmpl/gstversion.sgml:
7780 * gst/gstversion.h.in:
7781 more docs and two more inlined
7783 2005-08-30 Wim Taymans <wim@fluendo.com>
7785 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
7786 Don't sync to clock.
7788 2005-08-30 Stefan Kost <ensonic@users.sf.net>
7790 * docs/gst/gstreamer-sections.txt:
7791 ultral33t func10ns deserve to appear in the docs actually
7792 * docs/gst/tmpl/.cvsignore:
7793 * docs/gst/tmpl/gstcompat.sgml:
7794 * docs/gst/tmpl/gstconfig.sgml:
7795 * gst/check/gstcheck.c:
7797 * gst/gstconfig.h.in:
7800 2005-08-30 Stefan Kost <ensonic@users.sf.net>
7802 * docs/gst/tmpl/.cvsignore:
7803 * docs/gst/tmpl/gstquery.sgml:
7804 * docs/gst/tmpl/gstutils.sgml:
7807 inlined and extended docs
7809 2005-08-30 Stefan Kost <ensonic@users.sf.net>
7811 * check/gst-libs/controller.c: (GST_START_TEST),
7812 (gst_controller_suite):
7814 * docs/gst/tmpl/gstutils.sgml:
7815 * docs/libs/gstreamer-libs-sections.txt:
7816 * docs/libs/tmpl/gstdataprotocol.sgml:
7818 * examples/controller/audio-example.c: (main):
7819 controller example works now
7822 * tools/gst-inspect.c: (print_element_properties_info):
7823 show param spec flags
7825 2005-08-29 Andy Wingo <wingo@pobox.com>
7827 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
7829 2005-08-28 Andy Wingo <wingo@pobox.com>
7831 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
7832 as having two arguments instead of just one. Allows superclasses
7833 to access information on subclasses -- see the terrible for() loop
7834 in gtype.c:g_type_create_instance for the reason why. All callers
7837 2005-08-27 Stefan Kost <ensonic@users.sf.net>
7839 * docs/design/part-messages.txt:
7841 * docs/gst/tmpl/.cvsignore:
7842 * docs/gst/tmpl/gstcaps.sgml:
7843 * docs/gst/tmpl/gstclock.sgml:
7850 added descriptions for bus and message
7851 inline caps and clock docs
7853 2005-08-27 Stefan Kost <ensonic@users.sf.net>
7859 2005-08-27 Stefan Kost <ensonic@users.sf.net>
7861 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
7864 2005-08-26 Andy Wingo <wingo@pobox.com>
7866 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
7867 element_set_state's return val.
7868 (test_2_elements): Add test that's been disabled for months.
7870 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
7871 can-activate-pull properties.
7873 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
7874 can-activate-pull properties. Implement is_seekable so fakesrc can
7875 operate in pull mode.
7877 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
7879 (gst_base_sink_activate, gst_base_sink_activate_pull)
7880 (gst_base_sink_activate_push): Make activation mode choosing work.
7882 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
7883 is right. Make pull mode work. Post an eos before pausing in pull
7885 (gst_base_sink_change_state): Pay attention to the core's
7886 change_state() return val.
7888 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
7889 has-getrange properties. Cleanups.
7891 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
7892 has_getrange and replace with can_activate_pull and
7895 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
7896 locking comments. Remove has_loop, has_chain and replace with
7897 can_activate_pull and can_activate_push.
7899 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
7902 * examples/Makefile.am:
7903 * examples/metadata/Makefile.am:
7904 * examples/metadata/read-metadata.c: (message_loop),
7905 (have_pad_handler), (make_pipeline), (print_tag), (main):
7906 Add metadata reading example that loops over a list of filenames,
7907 dumping any tags found.
7909 * gst/gstbus.c: (gst_bus_dispose):
7910 * gst/gstelement.c: (gst_element_dispose):
7911 Release a few potentially-held references in dispose.
7913 2005-08-26 Stefan Kost <ensonic@users.sf.net>
7915 * docs/gst/tmpl/gstminiobject.sgml:
7916 do *not* add tmpl/*.sgml files to CVS!
7918 2005-08-26 Stefan Kost <ensonic@users.sf.net>
7920 * libs/gst/bytestream/.cvsignore:
7921 * libs/gst/bytestream/Makefile.am:
7922 * libs/gst/bytestream/adapter.c:
7923 * libs/gst/bytestream/adapter.h:
7924 * libs/gst/bytestream/bytestream.c:
7925 * libs/gst/bytestream/bytestream.h:
7926 * libs/gst/bytestream/filepad.c:
7927 * libs/gst/bytestream/filepad.h:
7928 removing obsolete files
7930 2005-08-26 Stefan Kost <ensonic@users.sf.net>
7932 * docs/gst/gstreamer-docs.sgml:
7933 * docs/libs/gstreamer-libs-docs.sgml:
7934 disabed additional index entries again, as this makes docs-gen just
7935 slow and they aren't useful yet
7936 * docs/libs/gstreamer-libs-sections.txt:
7937 little -section.txt cleanup for libs
7939 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
7941 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7942 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
7943 fix up some debugging
7944 (gst_base_transform_get_unit_size),
7945 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
7946 (gst_base_transform_handle_buffer):
7947 * gst/base/gstbasetransform.h:
7948 handle and store timed NEWSEGMENT events so that subclasses that
7949 calculate time by counting samples have a segment_start time they
7950 need to add to their timestamps - see audioresample
7952 2005-08-26 Stefan Kost <ensonic@users.sf.net>
7955 removed ';' from the end of macro defs
7956 * docs/gst/gstreamer-docs.sgml:
7957 * docs/gst/gstreamer-sections.txt:
7958 * docs/gst/tmpl/.cvsignore:
7960 * gst/gstelement.c: (gst_element_class_init),
7961 (gst_element_set_state), (activate_pads),
7962 (gst_element_save_thyself):
7963 * gst/gstevent.c: (gst_event_new_newsegment):
7965 * gst/gstiterator.c:
7966 * gst/gstiterator.h:
7969 * gst/gstutils.c: (gst_pad_query_convert):
7971 fixed parameter name mismatches between source, header and docs
7972 added some more docs, resolved the last batch of unused elements in
7973 docs (now someone needs to doc them)
7975 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
7977 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
7978 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
7979 don't walk through the plugins backwards. Where is all this
7980 reversed logic coming from ?
7982 2005-08-25 Wim Taymans <wim@fluendo.com>
7984 * gst/base/gstbasetransform.c: (gst_base_transform_init),
7985 (gst_base_transform_transform_size),
7986 (gst_base_transform_configure_caps),
7987 (gst_base_transform_get_unit_size),
7988 (gst_base_transform_buffer_alloc),
7989 (gst_base_transform_change_state):
7990 * gst/base/gstbasetransform.h:
7991 Cache caps unit_size.
7992 Make sure we cannot negotiate up and downstream at the
7995 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
7997 * gst/gst.c: (init_pre), (init_post):
7998 register the installed plugin path after the env var
7999 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
8000 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
8001 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
8002 directories, so the tests can prefer uninstalled over installed
8004 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
8006 * gst/base/gstbasetransform.h:
8011 2005-08-25 Wim Taymans <wim@fluendo.com>
8013 * gst/gstbin.c: (bin_bus_handler):
8014 Be a bit more conservative about the posted message.
8016 * gst/gstbus.c: (gst_bus_post):
8017 Some cleanups, warn wrong return values.
8019 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
8021 * check/gst/gstbin.c: (GST_START_TEST):
8022 * gst/gstbin.c: (bin_bus_handler):
8023 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
8024 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
8025 (gst_message_new_warning), (gst_message_new_tag),
8026 (gst_message_new_state_changed), (gst_message_new_segment_start),
8027 (gst_message_new_segment_done), (gst_message_new_custom):
8029 * tools/gst-launch.c: (event_loop):
8030 * tools/gst-md5sum.c: (event_loop):
8031 Revert unpopular change for GST_MESSAGE_SRC to GObject.
8033 2005-08-25 Wim Taymans <wim@fluendo.com>
8035 * check/generic/states.c: (GST_START_TEST):
8036 Cleanup can be done at the end.
8038 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
8039 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
8040 (gst_task_get_state), (gst_task_start), (gst_task_pause):
8041 Oh boy.. Thanks for finding this, Thomas.
8043 2005-08-25 Stefan Kost <ensonic@users.sf.net>
8045 * docs/gst/gstreamer.types:
8048 2005-08-25 Stefan Kost <ensonic@users.sf.net>
8050 * docs/gst/gstreamer-docs.sgml:
8051 * docs/gst/gstreamer-sections.txt:
8052 * docs/gst/tmpl/.cvsignore:
8054 * gst/gstiterator.c:
8056 * gst/registries/gstxmlregistry.h:
8057 added missing classes and symbols (123 more to go)
8058 removed removed symbols from section file
8059 fixed many doc-comments
8061 2005-08-24 Wim Taymans <wim@fluendo.com>
8063 * check/generic/states.c: (GST_START_TEST):
8064 Make sure all tasks are stopped.
8066 * check/gst/gstbin.c: (GST_START_TEST):
8067 Unref after usage for proper valgrinding.
8069 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
8070 Really wait for the task to stop before destroying the
8073 * gst/gstqueue.c: (gst_queue_sink_activate_push),
8074 (gst_queue_src_activate_push):
8075 Small cleanups. Don't stop the task when we did not start
8078 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
8079 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
8080 (gst_task_get_state), (gst_task_start), (gst_task_pause),
8083 Protect the stream lock with the object lock.
8084 Disallow setting the stream lock when running.
8085 Add cleanup_all to wait for the threadpool to finish.
8086 Remove code to autoallocate a mutex if none was provided.
8087 Add _join() to wait for a task to stop.
8088 Protect the thread pool with a global lock.
8090 2005-08-24 Wim Taymans <wim@fluendo.com>
8092 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8093 (gst_base_sink_get_times), (gst_base_sink_do_sync),
8094 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
8095 * gst/base/gstbasesink.h:
8096 Handle newsegment events correctly.
8097 Drop buffers out of the segment range.
8099 2005-08-22 Andy Wingo <wingo@pobox.com>
8101 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
8102 macro, implements an interface and gstimplementsinterface for a
8105 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
8107 * check/Makefile.am:
8108 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
8109 add a test that does a bunch of state changes on elements
8110 needs some fixing for valgrind
8111 * check/states/sinks.c: (gst_object_suite):
8114 add prototype for gst_caps_is_equal_fixed
8116 * gst/gstregistrypool.c:
8119 2005-08-24 Andy Wingo <wingo@pobox.com>
8121 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
8122 convert a negative value. Doesn't make much sense. Mostly this is
8123 here to force callers to ensure -1 maps to -1.
8125 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
8127 * docs/pwg/advanced-types.xml:
8128 Well done to Michael for catching my deliberate introduction
8129 of this spelling mistake.
8130 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
8132 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
8133 unlink pads before removing the element from the bin.
8135 2005-08-24 Andy Wingo <wingo@pobox.com>
8137 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
8138 the same thing as GST_DEBUG=*:4.
8139 (parse_debug_level, parse_debug_category): New helper parsers.
8141 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
8143 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
8144 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
8145 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
8146 (gst_base_transform_buffer_alloc),
8147 (gst_base_transform_handle_buffer):
8148 use gboolean return values and pointers to size so we can use the
8149 full GST_BUFFER_SIZE range (guint) for buffer sizes
8150 use GstPadDirection for transform_caps
8151 * gst/base/gstbasetransform.h:
8152 rename get_size to get_unit_size since that's what it is
8153 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
8154 use GstPadDirection for transform_caps
8155 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8157 cleanup and debugging
8159 2005-08-24 Stefan Kost <ensonic@users.sf.net>
8161 * gst/gstelement.c: (gst_element_class_init),
8162 (gst_element_set_state), (activate_pads),
8163 (gst_element_save_thyself):
8164 * tools/gst-compprep.c: (main):
8165 * tools/gst-inspect.c: (print_element_properties_info):
8166 * tools/gst-xmlinspect.c: (print_element_properties):
8167 Fixed long standing mem-leak
8169 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
8171 * check/gst/gstbin.c: (GST_START_TEST):
8172 * gst/gstbin.c: (bin_bus_handler):
8173 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
8174 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
8175 (gst_message_new_warning), (gst_message_new_tag),
8176 (gst_message_new_state_changed), (gst_message_new_segment_start),
8177 (gst_message_new_segment_done), (gst_message_new_custom):
8179 * tools/gst-launch.c: (event_loop):
8180 * tools/gst-md5sum.c: (event_loop):
8181 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
8182 that applications can sensibly post custom messages with references
8183 to their own objects.
8185 2005-08-24 Andy Wingo <wingo@pobox.com>
8187 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
8190 2005-08-24 Wim Taymans <wim@fluendo.com>
8192 * gst/base/gstbasetransform.c: (gst_base_transform_init),
8193 (gst_base_transform_transform_caps),
8194 (gst_base_transform_transform_size),
8195 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
8196 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
8197 (gst_base_transform_handle_buffer):
8198 * gst/base/gstbasetransform.h:
8199 Many fixes and new features added by Thomas. Can now also do
8200 transforms with variable sizes and a custom fixate_caps function.
8202 2005-08-24 Wim Taymans <wim@fluendo.com>
8204 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8208 Cast to ClockTime before formatting to time.
8213 2005-08-24 Stefan Kost <ensonic@users.sf.net>
8215 * check/gst-libs/controller.c: (GST_START_TEST),
8216 (gst_controller_suite):
8217 * docs/gst/tmpl/gstcaps.sgml:
8218 * docs/gst/tmpl/gstghostpad.sgml:
8219 * docs/gst/tmpl/gstquery.sgml:
8220 * docs/gst/tmpl/gstutils.sgml:
8221 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
8222 (gst_object_sink_values), (gst_object_get_value_arrays),
8223 (gst_object_get_value_array):
8224 gracefully handle helper method calls to objects that are not beeing
8225 controlled, added test case for that
8227 2005-08-23 Wim Taymans <wim@fluendo.com>
8229 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
8230 (gst_event_new_newsegment), (gst_event_parse_newsegment),
8231 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
8232 (gst_event_parse_qos), (gst_event_new_seek),
8233 (gst_event_parse_seek):
8235 Some more debugging output and doc cleanups.
8237 * gst/gstqueue.c: (gst_queue_handle_sink_event):
8238 Fix possible deadlock.
8240 2005-08-23 Stefan Kost <ensonic@users.sf.net>
8242 * docs/gst/gstreamer-docs.sgml:
8243 * docs/gst/gstreamer-sections.txt:
8244 * docs/gst/gstreamer.types:
8245 * docs/gst/tmpl/.cvsignore:
8250 added 100 symbols from gstreamer-unused.txt to the right sections
8251 fixed more broken comments
8252 added GstBus to docs
8254 2005-08-23 Stefan Kost <ensonic@users.sf.net>
8256 * docs/gst/gstreamer-sections.txt:
8257 * docs/gst/tmpl/.cvsignore:
8258 * docs/gst/tmpl/gstbin.sgml:
8259 * docs/gst/tmpl/gstbuffer.sgml:
8260 * gst/base/gstbasesrc.c:
8261 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
8264 * tools/gst-launch.1.in:
8265 inlined more doc comments, added missing comments and fixed comments
8268 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
8270 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8274 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
8276 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
8277 * gst/gststructure.h:
8278 add a fixate function for booleans; add a FIXME that these func
8279 names should probably be gst_structure_fixate_*
8281 2005-08-23 Stefan Kost <ensonic@users.sf.net>
8283 * docs/gst/gstreamer-docs.sgml:
8284 * docs/gst/gstreamer-sections.txt:
8286 * gst/gstbin.c: (gst_bin_get_type),
8287 (gst_bin_child_proxy_get_child_by_index),
8288 (gst_bin_child_proxy_get_children_count),
8289 (gst_bin_child_proxy_init):
8290 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
8291 (gst_child_proxy_get_child_by_index),
8292 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
8293 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
8294 (gst_child_proxy_get), (gst_child_proxy_set_property),
8295 (gst_child_proxy_set_valist), (gst_child_proxy_set),
8296 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
8297 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
8298 * gst/gstchildproxy.h:
8299 * gst/parse/grammar.y:
8300 * tools/gst-inspect.c: (print_interfaces),
8301 (print_element_properties_info), (print_element_info):
8302 ported gstchildproxy over from 0.8
8303 ported gst-inspect fixes and enhancements over from 0.8
8305 2005-08-22 Wim Taymans <wim@fluendo.com>
8307 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
8308 (gst_base_transform_handle_buffer):
8309 Also call the transform function if we have ANY caps.
8311 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
8314 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
8316 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
8317 Don't pretend to handle seek events if the source is not seekable
8319 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
8321 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8322 Remove extra parameter to debug output
8324 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
8325 (gst_base_src_do_seek), (gst_base_src_activate_push):
8326 Fix seek event handling.
8328 * gst/gstpipeline.c: (gst_pipeline_change_state):
8329 * gst/gstqueue.c: (gst_queue_handle_sink_event),
8330 (gst_queue_src_activate_push):
8331 Don't start the src pad task on FLUSH_STOP if the pad
8335 2005-08-22 Wim Taymans <wim@fluendo.com>
8337 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
8338 Added check for gst_static_caps_get() refcounting.
8340 2005-08-22 Wim Taymans <wim@fluendo.com>
8342 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
8343 Make _static_caps_get() refcounting sane.
8345 * gst/gstelement.c: (gst_element_set_state):
8346 Add g_return_val_if_fail() to protect against segfaults.
8348 2005-08-22 Stefan Kost <ensonic@users.sf.net>
8350 * docs/gst/tmpl/gstevent.sgml:
8353 inlined remaining docs, added missing doc comments
8355 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
8357 * check/gst/gstbin.c: (GST_START_TEST):
8358 since we don't know when preroll is done, use refcount range
8360 * gst/check/gstcheck.h:
8361 add macro for checking refcount range
8363 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
8365 * check/Makefile.am:
8366 clean up environment for when registry gets built versus
8367 when actual tests are run; valgrind seems to not report
8368 leaks if GST_PLUGIN_PATH is set to some specific values
8369 * check/gst/gstbin.c: (GST_START_TEST):
8370 add more refcounting checks; maybe this exposes a
8373 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8374 * gst/check/gstcheck.h:
8375 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
8376 (gst_bin_change_state):
8377 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
8378 add/fix debugging/whitespace
8380 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
8382 * check/gst/gstevent.c: (event_probe), (test_event),
8384 Er, don't call gst_bin_watch_for_state_change you idiot.
8386 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
8388 * check/Makefile.am:
8389 Use CHECK_CFLAGS and CHECK_LIBS
8390 * check/gst/gstevent.c: (event_probe), (test_event),
8393 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
8394 (gst_base_src_start), (gst_base_src_stop),
8395 (gst_base_src_activate_push), (gst_base_src_activate_pull),
8396 (gst_base_src_change_state):
8397 Sprinkle gst_base_src_stop liberally around error paths to fix
8398 problems reusing a source after failed state changes.
8399 * gst/base/gsttypefindhelper.c: (helper_find_peek),
8400 (helper_find_suggest), (gst_type_find_helper):
8401 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
8403 * docs/gst/tmpl/gstevent.sgml:
8404 Migrate part of the docs from the SGML file. Wait for ensonic to
8405 tell me how I did it wrong ;)
8406 * tools/gst-typefind.c: (main):
8407 Extra robustness to state changes between files.
8409 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
8411 * check/Makefile.am:
8412 don't valgrind the controller test - it's leaking - Stefan, HELP
8413 * gst/check/gstcheck.c: (gst_check_message_error),
8414 (gst_check_chain_func), (gst_check_setup_element),
8415 (gst_check_teardown_element), (gst_check_setup_src_pad),
8416 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
8417 (gst_check_teardown_sink_pad):
8418 * gst/check/gstcheck.h:
8419 add a bunch of methods to set up elements, and src and sink pads
8420 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
8421 * check/elements/identity.c: (setup_identity), (cleanup_identity),
8426 whitespace/doc fixes
8428 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
8431 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
8432 be handled by the application and not always printed as well
8434 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
8436 * check/Makefile.am:
8438 * gst/check/gstcheck.c: (gst_check_message_error):
8439 * gst/check/gstcheck.h:
8440 add a fail_unless_equals_int
8441 add fail_unless for error messages
8443 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
8445 * check/Makefile.am:
8447 * common/Makefile.am:
8450 factor out some of the common stuff so we can use it
8452 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
8454 * check/Makefile.am:
8455 * check/gst/gstiterator.c: (GST_START_TEST):
8456 * check/gst/gstsystemclock.c: (GST_START_TEST),
8457 (gst_systemclock_suite):
8458 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
8462 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
8464 * check/elements/.cvsignore:
8465 * check/elements/gstfakesrc.c:
8466 rename to name of element
8467 * check/elements/identity.c: (chain_func), (event_func),
8468 (setup_identity), (cleanup_identity), (GST_START_TEST),
8469 (identity_suite), (main):
8470 add a test for identity
8471 * check/Makefile.am:
8472 * pkgconfig/Makefile.am:
8473 * pkgconfig/gstreamer-check.pc.in:
8474 * pkgconfig/gstreamer-check-uninstalled.pc.in:
8478 move the check stuff to a library that gets installed
8479 * check/gst-libs/controller.c: (GST_START_TEST):
8480 * check/gst-libs/gdp.c:
8481 * check/gst/gst.c: (GST_START_TEST):
8482 * check/gst/gstbin.c:
8483 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
8484 * check/gst/gstbus.c:
8485 * check/gst/gstcaps.c: (GST_START_TEST):
8486 * check/gst/gstelement.c:
8487 * check/gst/gstghostpad.c:
8488 * check/gst/gstiterator.c:
8489 * check/gst/gstmessage.c:
8490 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
8491 * check/gst/gstobject.c:
8492 * check/gst/gstpad.c: (GST_START_TEST):
8493 * check/gst/gststructure.c: (GST_START_TEST):
8494 * check/gst/gstsystemclock.c: (GST_START_TEST),
8495 (gst_systemclock_suite):
8496 * check/gst/gsttag.c: (gst_tag_suite):
8497 * check/gst/gstvalue.c:
8498 * check/pipelines/cleanup.c:
8499 * check/pipelines/simple_launch_lines.c:
8500 * check/states/sinks.c:
8501 change include statement
8503 * docs/gst/gstreamer-sections.txt:
8504 * docs/gst/tmpl/gstpad.sgml:
8505 document more pad stuff
8506 * gst/gstminiobject.c: (gst_mini_object_ref),
8507 (gst_mini_object_unref):
8510 2005-08-19 Stefan Kost <ensonic@users.sf.net>
8512 * docs/gst/tmpl/gst.sgml:
8514 eliminate another tmpl file, fix spelling in the long-description
8516 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
8518 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8519 (test_event), (timediff), (gstevents_suite):
8520 Should fix build on 64-bit arch's
8522 2005-08-18 Andy Wingo <wingo@pobox.com>
8524 Make sure that when a pipeline goes to PLAYING, that data has
8525 actually hit the sink.
8527 * check/states/sinks.c (test_sink): A sink that doesn't get any
8528 data shouldn't return SUCCESS for going to either PLAYING or
8529 PAUSED. Test also the return values on the way back down.
8531 * gst/gstelement.c (gst_element_set_state): When changing the
8532 state of an element currently changing state asynchronously, go to
8533 lost-state after commiting the pending state. Makes future calls
8534 to get_state continue to return ASYNC.
8536 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
8537 ASYNC when going to PLAYING if we still don't have preroll, as can
8538 happen with live sources.
8540 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
8542 * docs/pwg/advanced-types.xml:
8543 Hack long paragraph into 2 chunks as a workaround for buggy
8544 jadetex version in sid and breezy that loops infinitely and
8547 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
8549 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8550 (test_event), (timediff), (gstevents_suite):
8551 Provide more error margin in clock measurements to allow for
8552 g_get_current_time inaccuracies.
8554 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
8556 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8557 (test_event), (timediff), (gstevents_suite):
8558 Fix error message output so I might be able to tell why the
8559 test works here but fails on the build farm.
8561 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
8563 * check/Makefile.am:
8564 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8565 (test_event), (timediff), (gstevents_suite), (main):
8568 * docs/design/part-seeking.txt:
8571 * docs/gst/tmpl/gstevent.sgml:
8572 * docs/gst/tmpl/gstfakesrc.sgml:
8575 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8576 Treat a buffer-without-newsegment the same as a receiving
8577 a newsegment not in time format, and disable syncing to the clock
8580 * gst/gstbus.c: (gst_bus_set_sync_handler):
8581 Assert if anyone tries to replace the existing sync_handler for bus,
8582 as only the owner should be setting it.
8585 Have a fixed set of custom event enums with events identified by
8586 their structure name (as in 0.8), rather than a free-for-all
8587 allowing collisions between enum values from different plugins.
8589 * gst/gstpad.c: (gst_pad_class_init):
8592 * gst/gstqueue.c: (gst_queue_handle_sink_event):
8593 Handle out-of-band downstream events from the sending thread.
8595 2005-08-17 Andy Wingo <wingo@pobox.com>
8597 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
8598 play-timeout==0 to mean no timeout at all. In that case, don't
8599 bother with a get_state or a warning, just return directly, even
8602 * gst/base/gstbasetransform.c: Debug changes.
8605 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
8606 ensure bins post state change messages. A bit of a hack but I can't
8607 think of a way to avoid it.
8609 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
8611 2005-08-16 Andy Wingo <wingo@pobox.com>
8613 * gst/base/gstadapter.h:
8614 * gst/base/gstadapter.c (gst_adapter_take): New function, like
8615 peek() but you own the data. Not terribly efficient atm.
8617 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
8619 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
8620 (gst_element_found_tags):
8622 Add two utility functions for tag handling.
8624 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
8626 * docs/manual/advanced-dataaccess.xml:
8627 * docs/manual/basics-helloworld.xml:
8628 Fix docs to use _bin_add() before _link(), which fixes the examples
8629 with recent core versions (reported by Madhan Raj M
8630 <raj_madan@rediffmail.com>, #313199).
8632 2005-08-16 Wim Taymans <wim@fluendo.com>
8634 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
8635 Added subtract checks.
8637 * docs/design/part-events.txt:
8638 Some more docs about newsegment
8640 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
8643 * gst/gstcaps.c: (gst_caps_to_string):
8644 Add comments, cleanups.
8646 * gst/gstelement.c: (gst_element_save_thyself):
8649 * gst/gstvalue.c: (gst_value_collect_int_range),
8650 (gst_string_unwrap), (gst_value_union_int_int_range),
8651 (gst_value_union_int_range_int_range),
8652 (gst_value_intersect_int_int_range),
8653 (gst_value_intersect_int_range_int_range),
8654 (gst_value_intersect_double_double_range),
8655 (gst_value_intersect_double_range_double_range),
8656 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
8657 (gst_value_subtract_int_range_int),
8658 (gst_value_subtract_double_range_double),
8659 (gst_value_subtract_double_range_double_range),
8660 (gst_value_subtract_from_list), (gst_value_subtract_list),
8661 (gst_value_can_compare), (gst_value_compare_fraction):
8662 Cleanups, add comments, remove unneeded asserts.
8664 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
8666 * tools/gst-launch.c: (event_loop):
8667 don't convert NULL structures to strings
8669 2005-08-15 Stefan Kost <ensonic@users.sf.net>
8671 * docs/gst/gstreamer-sections.txt:
8672 made some defines private
8673 * docs/gst/tmpl/gstconfig.sgml:
8674 * docs/gst/tmpl/gstqueue.sgml:
8675 * docs/gst/tmpl/gsttaglist.sgml:
8676 * docs/gst/tmpl/gsttypes.sgml:
8677 * docs/gst/tmpl/gstutils.sgml:
8678 * docs/pwg/appendix-porting.xml:
8679 * gst/base/gstbasesink.h:
8680 * gst/base/gstbasesrc.c:
8681 * gst/base/gstbasesrc.h:
8682 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
8683 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
8684 * gst/gstelement.c: (gst_element_class_init):
8685 * gst/gstpad.c: (gst_pad_class_init):
8686 * gst/gstqueue.c: (gst_queue_class_init):
8687 * gst/gstxml.c: (gst_xml_class_init):
8688 documented all undocumented signal inline
8689 * libs/gst/controller/gst-controller.h:
8692 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
8694 * docs/pwg/appendix-porting.xml:
8695 Document _set_link_function -> _set_setcaps_function.
8697 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
8699 * check/Makefile.am:
8700 add a .check target for running the check
8701 * check/gst-libs/controller.c: (GST_START_TEST):
8703 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
8704 complete checks for gstbuffer; would be nice if I could get the
8705 gcov stuff to work so I can see if I actually completed gstbuffer.c
8707 add ASSERT_BUFFER_REFCOUNT
8709 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
8711 * docs/gst/gstreamer-sections.txt:
8712 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
8714 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
8715 spew out a warning if a tag that is already registered
8716 is re-registered, unless it is re-registered with a
8717 different type (#308438).
8719 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
8721 * docs/pwg/appendix-porting.xml:
8722 * docs/pwg/building-state.xml:
8723 Add some paragraphs about state changes in 0.9 to the PWG
8724 and the porting guide, in particular about the new meaning
8725 of GST_STATE_PAUSED and how to write state change functions
8726 with concurrent access by multiple threads in mind.
8728 2005-08-11 Stefan Kost <ensonic@users.sf.net>
8730 * docs/gst/gstreamer-docs.sgml:
8731 * docs/libs/gstreamer-libs-docs.sgml:
8732 added deprecation and since indexes
8733 * libs/gst/controller/gst-controller.c:
8734 * libs/gst/controller/gst-helper.c:
8738 2005-08-11 Wim Taymans <wim@fluendo.com>
8740 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
8741 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
8742 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
8743 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
8744 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
8745 (gst_ghost_pad_set_target):
8746 Actually implement (re)setting the target on a ghostpad
8747 as described in the docs.
8749 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
8751 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
8752 Check whether GST_DEBUG_NO_COLOR environment variable is
8753 set and disable coloured debug output if that is the case.
8755 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
8757 * gst/base/gsttypefindhelper.c: (helper_find_peek),
8758 (gst_type_find_helper):
8759 The memory returned by gst_type_find_peek() needs to
8760 stay valid until the end of a typefind function, and
8761 typefind functions may keep results from different
8762 offsets around, so we can't just unref the buffer from
8763 the previous _peek(), but have to save all buffers
8764 returned by _peek() until typefinding is done and only
8767 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
8769 * docs/gst/gstreamer-sections.txt:
8771 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
8773 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
8775 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
8776 Fix a pretty good memleak.
8778 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
8780 * gst/gstiterator.h:
8781 Fix wrong include and 'make distcheck'.
8783 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
8785 * gst/gstbin.c: (bin_bus_handler):
8786 Use gst_element_post_message() instead.
8788 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
8790 * gst/base/gstadapter.h:
8791 * gst/base/gstbasesink.h:
8792 * gst/base/gstbasesrc.h:
8793 * gst/base/gstbasetransform.h:
8794 * gst/base/gstcollectpads.h:
8795 * gst/base/gstpushsrc.h:
8796 * gst/gstiterator.h:
8797 Add padding to our base elements' class and instance structs and
8798 to GstIterator (you will need to rebuild all plugins and apps!)
8800 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
8802 * gst/gstbin.c: (bin_bus_handler):
8803 Make default message forwarding from child->bus to bin->bus
8804 threadsafe and make it not emit warnings if the parent has no bus.
8806 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
8808 * gst/gstelement.c: (activate_pads):
8809 On paused->ready, set pad->caps to NULL, as is the documented
8810 behaviour in this state change. Fixes playback of series of
8811 media files when visualization is enabled in Totem.
8813 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
8815 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
8816 Allow NULL as filter-caps (which means "any").
8818 2005-08-05 Stefan Kost <ensonic@users.sf.net>
8820 * docs/libs/gstreamer-libs-sections.txt:
8821 * libs/gst/controller/gst-controller.c:
8822 * libs/gst/controller/gst-controller.h:
8823 * libs/gst/controller/gst-helper.c:
8824 adding more entries to the docs and fix small doc-bugs
8826 2005-08-05 Stefan Kost <ensonic@users.sf.net>
8828 * docs/gst/gstreamer-docs.sgml:
8829 * docs/gst/gstreamer-sections.txt:
8830 * docs/gst/gstreamer.types:
8831 * docs/gst/tmpl/gstbasesink.sgml:
8832 * docs/gst/tmpl/gstbasesrc.sgml:
8833 * docs/gst/tmpl/gstbasetransform.sgml:
8834 * docs/gst/tmpl/gstfakesrc.sgml:
8835 * gst/base/gstcollectpads.c:
8836 * gst/base/gstcollectpads.h:
8837 * libs/gst/controller/gst-controller.c:
8838 * libs/gst/controller/gst-controller.h:
8839 * libs/gst/controller/gst-helper.c:
8840 * libs/gst/controller/gst-interpolation.c:
8841 * libs/gst/controller/lib.c:
8842 added long/short desc for controller docs
8843 added collectpads base class docs
8844 added correct includes to base-class docs
8846 2005-08-05 Stefan Kost <ensonic@users.sf.net>
8848 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
8849 (gst_test_mono_source_set_property),
8850 (gst_test_mono_source_class_init), (GST_START_TEST),
8851 (gst_controller_suite):
8852 * docs/gst/gstreamer-docs.sgml:
8853 * docs/gst/gstreamer-sections.txt:
8854 * docs/gst/gstreamer.types:
8855 * docs/libs/gstreamer-libs-docs.sgml:
8856 * docs/libs/gstreamer-libs-sections.txt:
8857 * gst/base/gstadapter.c:
8858 * libs/gst/controller/gst-controller.c:
8859 (gst_controlled_property_new), (gst_controlled_property_free),
8860 (gst_controller_new_valist),
8861 (gst_controller_remove_properties_valist),
8862 (gst_controller_sink_values), (_gst_controller_finalize):
8863 * libs/gst/controller/gst-controller.h:
8864 * libs/gst/controller/gst-helper.c:
8865 (gst_object_control_properties), (gst_object_uncontrol_properties),
8866 (gst_object_get_controller), (gst_object_set_controller),
8867 (gst_object_sink_values), (gst_object_get_value_arrays),
8868 (gst_object_get_value_array):
8869 more tests (and fixes) for the controller
8870 more docs for the controller
8871 integrated companies docs for the adapter
8873 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
8875 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
8876 (GST_START_TEST), (fakesrc_suite):
8877 add tests for sizetype
8879 2005-08-04 Andy Wingo <wingo@pobox.com>
8881 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
8882 fixes buffer_alloc proxying among other things.
8884 * gst/base/gstbasetransform.c:
8885 * gst/base/gstbasetransform.h:
8886 Revert patch to gstbasetransform from 7-28 removing
8889 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
8890 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
8891 Semantics changed, should return not the size of the output buffer
8892 but the byte size of a buffer with a given caps.
8894 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
8896 (gst_base_transform_configure_caps): Don't set out_size here: (in,
8897 out) are not the pad caps until setcaps finishes.
8898 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
8899 not-in-place case as well. Deal with changing from in-place to
8900 not-in-place within calling pad_alloc_buffer. Still a bit
8901 concerned about the overhead here...
8903 2005-08-03 Andy Wingo <wingo@pobox.com>
8905 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
8906 fixating is an error.
8908 2005-08-04 Edward Hervey <edward@fluendo.com>
8910 * gst/base/gstadapter.h:
8911 Added gst_adapter_get_type() to the header
8913 2005-08-03 Stefan Kost <ensonic@users.sf.net>
8915 * check/Makefile.am:
8916 * check/gst-libs/controller.c:
8917 * libs/gst/controller/gst-controller.c:
8918 (gst_controller_new_valist):
8919 added check test suite for the controller
8920 * gst/base/gstpushsrc.c:
8923 2005-08-03 Stefan Kost <ensonic@users.sf.net>
8925 * docs/gst/Makefile.am:
8926 * docs/gst/gstreamer-docs.sgml:
8927 * docs/gst/gstreamer-sections.txt:
8928 * docs/gst/gstreamer.types:
8929 * docs/gst/tmpl/gstfakesrc.sgml:
8931 * gst/base/gstbasesink.c:
8932 * gst/base/gstbasesink.h:
8933 * gst/base/gstbasesrc.c:
8934 * gst/base/gstbasesrc.h:
8935 * gst/base/gstbasetransform.c:
8936 * gst/base/gstpushsrc.c:
8937 * gst/base/gstpushsrc.h:
8938 add short/long description docs to base classes
8939 add pushsrc to the docs
8940 remove consolidated doc fragments
8942 2005-08-03 Stefan Kost <ensonic@users.sf.net>
8945 * docs/libs/Makefile.am:
8946 * docs/libs/gstreamer-libs-docs.sgml:
8947 * docs/libs/gstreamer-libs-sections.txt:
8948 * docs/libs/gstreamer-libs.types:
8949 * examples/Makefile.am:
8950 * examples/controller/.cvsignore:
8951 * examples/controller/Makefile.am:
8952 * examples/controller/audio-example.c: (main):
8953 * libs/gst/Makefile.am:
8954 * libs/gst/controller/.cvsignore:
8955 * libs/gst/controller/Makefile.am:
8956 * libs/gst/controller/gst-controller.c:
8957 (on_object_controlled_property_changed), (gst_timed_value_compare),
8958 (gst_timed_value_find),
8959 (gst_controlled_property_set_interpolation_mode),
8960 (gst_controlled_property_new), (gst_controlled_property_free),
8961 (gst_controller_find_controlled_property),
8962 (gst_controller_new_valist), (gst_controller_new),
8963 (gst_controller_remove_properties_valist),
8964 (gst_controller_remove_properties), (gst_controller_set),
8965 (gst_controller_set_from_list), (gst_controller_unset),
8966 (gst_controller_get), (gst_controller_get_all),
8967 (gst_controller_sink_values), (gst_controller_get_value_arrays),
8968 (gst_controller_get_value_array),
8969 (gst_controller_set_interpolation_mode),
8970 (_gst_controller_finalize), (_gst_controller_init),
8971 (_gst_controller_class_init), (gst_controller_get_type):
8972 * libs/gst/controller/gst-controller.h:
8973 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
8974 (g_object_uncontrol_properties), (g_object_get_controller),
8975 (g_object_set_controller), (g_object_sink_values),
8976 (g_object_get_value_arrays), (g_object_get_value_array):
8977 * libs/gst/controller/gst-interpolation.c:
8978 (gst_controlled_property_find_timed_value_node),
8979 (interpolate_none_get), (interpolate_trigger_get),
8980 (interpolate_trigger_get_value_array):
8981 * libs/gst/controller/lib.c: (gst_controller_init):
8982 * pkgconfig/Makefile.am:
8983 * pkgconfig/gstreamer-control-uninstalled.pc.in:
8984 * pkgconfig/gstreamer-control.pc.in:
8985 * testsuite/Makefile.am:
8986 * testsuite/controller/.cvsignore:
8987 * testsuite/controller/Makefile.am:
8988 * testsuite/controller/interpolator.c: (main):
8989 added controller code
8990 removed dparam pc files
8992 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
8993 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
8994 (gst_collectpads_stop):
8995 Broadcast the condition when shutting down, to make sure we wake all
8996 threads up. Shut down pads on finalize, for safety.
8998 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
8999 * gst/base/gstbasetransform.c: (gst_base_transform_init),
9000 (gst_base_transform_handle_buffer),
9001 (gst_base_transform_change_state):
9002 Handle PAUSED->READY->PAUSED transition after negotiation
9004 * gst/gstmessage.c: (gst_message_init):
9005 Extra piece of debug for new messages.
9007 2005-08-01 Stefan Kost <ensonic@users.sf.net>
9010 * docs/gst/tmpl/gstbasesrc.sgml:
9011 * docs/gst/tmpl/gstelement.sgml:
9012 * docs/gst/tmpl/gstevent.sgml:
9013 * docs/gst/tmpl/gstfakesrc.sgml:
9014 * docs/gst/tmpl/gstformat.sgml:
9015 * docs/gst/tmpl/gstghostpad.sgml:
9016 * docs/gst/tmpl/gstpad.sgml:
9017 * docs/gst/tmpl/gstquery.sgml:
9018 * docs/gst/tmpl/gststructure.sgml:
9019 * docs/gst/tmpl/gsttaglist.sgml:
9020 * docs/gst/tmpl/gstvalue.sgml:
9021 * docs/libs/gstreamer-libs-docs.sgml:
9022 * docs/libs/gstreamer-libs-sections.txt:
9023 * docs/libs/gstreamer-libs.types:
9024 * libs/gst/Makefile.am:
9025 * libs/gst/control/.cvsignore:
9026 * libs/gst/control/Makefile.am:
9027 * libs/gst/control/control.c:
9028 * libs/gst/control/control.h:
9029 * libs/gst/control/dparam.c:
9030 * libs/gst/control/dparam.h:
9031 * libs/gst/control/dparam_smooth.c:
9032 * libs/gst/control/dparam_smooth.h:
9033 * libs/gst/control/dparamcommon.h:
9034 * libs/gst/control/dparammanager.c:
9035 * libs/gst/control/dparammanager.h:
9036 * libs/gst/control/dplinearinterp.c:
9037 * libs/gst/control/dplinearinterp.h:
9038 * libs/gst/control/unitconvert.c:
9039 * libs/gst/control/unitconvert.h:
9040 * testsuite/Makefile.am:
9041 * testsuite/dynparams/.cvsignore:
9042 * testsuite/dynparams/Makefile.am:
9043 * testsuite/dynparams/dparamstest.c:
9044 * tools/Makefile.am:
9045 * tools/gst-inspect.c: (print_element_info), (main):
9046 * tools/gst-xmlinspect.c: (print_element_info), (main):
9047 deactivate and remove dparams (libgstcontrol)
9049 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
9051 * gst/elements/gsttypefindelement.c:
9052 (gst_type_find_element_have_type), (gst_type_find_element_init),
9053 (stop_typefinding), (gst_type_find_element_handle_event),
9054 (gst_type_find_element_chain), (gst_type_find_element_getrange):
9055 * gst/elements/gsttypefindelement.h:
9056 Set caps on all outgoing buffers, not just the first one.
9058 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
9060 * gst/elements/gsttypefindelement.c:
9061 (gst_type_find_element_have_type),
9062 (gst_type_find_element_check_set_buffer_caps),
9063 (gst_type_find_element_init), (stop_typefinding),
9064 (gst_type_find_element_handle_event),
9065 (gst_type_find_element_chain), (gst_type_find_element_getrange):
9066 * gst/elements/gsttypefindelement.h:
9067 Set caps on first outgoing buffer when we've found the type.
9069 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
9071 * docs/gst/gstreamer-docs.sgml:
9072 * docs/gst/gstreamer-sections.txt:
9073 * docs/gst/tmpl/gstscheduler.sgml:
9074 * docs/gst/tmpl/gstschedulerfactory.sgml:
9075 Remove some old cruft from docs.
9077 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
9080 Fix inline docs for GstPadLinkReturn.
9082 * gst/gststructure.c: (gst_structure_has_name):
9083 * gst/gststructure.h:
9084 * docs/gst/gstreamer-sections.txt:
9085 New API: gst_structure_has_name().
9087 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
9090 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
9091 and _LARGEFILE_SOURCE in config.h as required. Do not
9092 export those flags in our .pc files any longer (#142209).
9094 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
9096 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
9097 (gst_file_sink_do_seek), (gst_file_sink_event),
9098 (gst_file_sink_get_current_offset), (gst_file_sink_render):
9099 Redo seek/tell calls with large file support in mind; add some
9100 debugging messages; add log message that tells us when large
9101 file support is unavailable or not enabled for some reason.
9103 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
9104 Add log message that tells us when large file support
9105 is unavailable or not enabled for some reason.
9107 2005-07-29 Wim Taymans <wim@fluendo.com>
9109 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
9110 Added test for removing an element with ghostpad from a bin.
9111 Fixed test as current implementation does the right thing.
9113 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
9114 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
9115 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
9116 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
9117 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
9118 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
9119 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
9120 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
9121 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
9122 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
9123 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
9124 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
9125 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
9126 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
9127 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
9128 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
9129 * gst/gstghostpad.h:
9130 Clean up ghostpads, remove properties for internal stuff.
9133 Prepare for switching targets, not all use cases work yet.
9135 2005-07-29 Wim Taymans <wim@fluendo.com>
9137 * docs/design/part-gstghostpad.txt:
9140 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
9141 (gst_bin_remove_func):
9142 Unlinking pads while holding the bin LOCK is not a good
9145 * gst/gstpad.c: (gst_pad_class_init),
9146 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
9147 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
9148 No prob setting template after creating the pad.
9150 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
9152 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
9153 (gst_bus_peek), (gst_bus_source_dispatch),
9154 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
9155 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
9156 gst_bus_poll may be called from other threads. Handle
9157 this nicely by not making poll_data disappear off the
9158 stack once gst_bus_poll returns.
9159 gst_bus_peek now increments the refcount on the returned
9162 2005-07-29 Wim Taymans <wim@fluendo.com>
9164 * docs/design/part-gstghostpad.txt:
9165 Overview of current GhostPad datastructures and use
9166 cases for changing the target.
9168 2005-07-28 Wim Taymans <wim@fluendo.com>
9170 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
9171 Added checks for hierarchy consistency whan adding linked
9174 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
9175 Added check to test element scheduling without bin/pipeline.
9177 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
9178 First add elements to bin, then link.
9180 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
9181 (gst_bin_remove_func):
9182 Unlink pads from elements added/removed from bin to maintain
9183 hierarchy consistency.
9185 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9187 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
9188 (gst_base_transform_handle_buffer):
9189 * gst/base/gstbasetransform.h:
9190 Remove broken delay_configure (fixes renegotiation of software
9191 scaling pipelines); remove some leftover printf()s.
9193 2005-07-28 Wim Taymans <wim@fluendo.com>
9195 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
9196 Added some more tests for wrong hierarchy
9198 * docs/design/part-overview.txt:
9201 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
9204 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
9205 (gst_element_dispose):
9208 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
9209 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
9210 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9211 (gst_pad_set_caps), (gst_pad_send_event):
9212 Check for correct hierarchy when linking pads. Moving to
9213 strict requirement for ghostpads when linking elements in
9217 Clean ups. Added WRONG_HIERARCHY return value.
9219 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9221 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
9222 Better debug if no transform is possible.
9224 2005-07-27 Wim Taymans <wim@fluendo.com>
9226 * docs/random/wtay/network-transp:
9229 2005-07-27 Wim Taymans <wim@fluendo.com>
9231 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
9232 (gst_dp_event_from_packet):
9233 Fix serialization of seek events.
9235 2005-07-27 Wim Taymans <wim@fluendo.com>
9237 * check/gst-libs/gdp.c: (GST_START_TEST):
9238 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9239 Fix compilation and fix event serialization.
9241 2005-07-27 Wim Taymans <wim@fluendo.com>
9244 * docs/design/part-TODO.txt:
9245 * docs/design/part-events.txt:
9248 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9249 (gst_base_sink_event), (gst_base_sink_do_sync),
9250 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
9251 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
9252 (gst_base_src_do_seek), (gst_base_src_event_handler),
9253 (gst_base_src_loop):
9254 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
9255 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9256 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
9257 (gst_base_transform_event), (gst_base_transform_handle_buffer),
9258 (gst_base_transform_set_passthrough),
9259 (gst_base_transform_is_passthrough):
9260 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9261 * gst/elements/gstfilesink.c: (gst_file_sink_event):
9267 * gst/gstelement.c: (gst_element_seek):
9269 Update gst_element_seek.
9271 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
9272 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
9273 (gst_event_new_flush_start), (gst_event_new_flush_stop),
9274 (gst_event_new_eos), (gst_event_new_newsegment),
9275 (gst_event_parse_newsegment), (gst_event_new_tag),
9276 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
9277 (gst_event_parse_qos), (gst_event_new_seek),
9278 (gst_event_parse_seek), (gst_event_new_navigation):
9280 Make GstEvent use GstStructure. Add parsing code, make sure the
9281 API is sufficiently generic.
9282 Mark possible directions of events and serialization.
9284 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
9285 (_gst_message_copy), (gst_message_new_segment_start),
9286 (gst_message_new_segment_done), (gst_message_new_custom),
9287 (gst_message_parse_segment_start),
9288 (gst_message_parse_segment_done):
9291 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9292 (gst_pad_set_caps), (gst_pad_send_event):
9293 Update for new events.
9294 Catch events sent in wrong directions.
9296 * gst/gstqueue.c: (gst_queue_link_src),
9297 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
9298 (gst_queue_handle_src_query):
9303 Remove event code from this file.
9305 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
9306 (gst_dp_event_from_packet):
9309 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9311 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
9312 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9313 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
9314 Make debugging actually useful.
9316 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9318 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
9319 (gst_pad_fixate_caps):
9320 Implement default fixation once again, so that gst_pad_fixate()
9321 actually does anything at all. This probably needs to be some
9322 sort of a last resort, and use profile-based fixation first, but
9323 since that doesn't exist yet, this is the best we have. Fixes
9324 visualization in Totem.
9326 2005-07-22 Wim Taymans <wim@fluendo.com>
9328 * docs/design/part-events.txt:
9331 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9332 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
9333 (gst_base_sink_activate_pull):
9336 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
9337 (gst_fake_src_create):
9338 Fix handoff marshall.
9340 * gst/elements/gstidentity.c: (gst_identity_class_init),
9341 (gst_identity_transform_ip):
9342 We're a real inplace element.
9344 * gst/gstbus.c: (gst_bus_post):
9345 Added some comments.
9347 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
9348 * tests/muxing/case1.c: (main):
9349 * tests/sched/dynamic-pipeline.c: (main):
9350 * tests/sched/interrupt1.c: (main):
9351 * tests/sched/interrupt2.c: (main):
9352 * tests/sched/interrupt3.c: (main):
9353 * tests/sched/runxml.c: (main):
9354 * tests/sched/sched-stress.c: (main):
9355 * tests/seeking/seeking1.c: (event_received), (main):
9356 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
9358 * tests/threadstate/threadstate3.c: (main):
9359 * tests/threadstate/threadstate4.c: (main):
9360 * tests/threadstate/threadstate5.c: (main):
9363 2005-07-21 Wim Taymans <wim@fluendo.com>
9365 * docs/design/part-seeking.txt:
9366 Some small additions.
9368 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9369 (gst_base_sink_get_times), (gst_base_sink_do_sync),
9370 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
9371 * gst/base/gstbasesink.h:
9372 discont values are gint64, handle the math correctly.
9374 * gst/base/gstbasesrc.c: (gst_base_src_loop):
9375 Make the basesrc report error if the source pad is not linked.
9377 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
9378 (gst_queue_loop), (gst_queue_handle_src_query),
9379 (gst_queue_src_activate_push):
9380 Make queue collect data even if the srcpad is not linked.
9381 Start pushing out data as soon as it is linked.
9383 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
9385 Added gst_flow_get_name() to ease error reporting.
9387 2005-07-20 Wim Taymans <wim@fluendo.com>
9389 * gst/gstmessage.c: (gst_message_new_segment_start),
9390 (gst_message_new_segment_done), (gst_message_parse_segment_start),
9391 (gst_message_parse_segment_done):
9393 Added a bunch of messages for advanced seeking.
9395 * gst/parse/grammar.y:
9396 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
9397 (gst_dpman_state_changed):
9398 Fix some new-pad -> pad-added signals
9400 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9402 * docs/manual/appendix-porting.xml:
9403 * docs/pwg/appendix-porting.xml:
9404 Document new-pad/state-change signal renames and the FixedList
9407 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9409 * docs/manual/advanced-autoplugging.xml:
9410 * docs/manual/basics-helloworld.xml:
9411 * docs/manual/basics-pads.xml:
9412 * docs/random/ds/0.9-suggested-changes:
9413 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
9418 * gst/gststructure.c: (gst_structure_value_get_generic_type),
9419 (gst_structure_parse_array), (gst_structure_parse_value):
9420 * gst/gstvalue.c: (gst_type_is_fixed),
9421 (gst_value_list_prepend_value), (gst_value_list_append_value),
9422 (gst_value_list_get_size), (gst_value_list_get_value),
9423 (gst_value_transform_array_string), (gst_value_serialize_array),
9424 (gst_value_deserialize_array), (gst_value_intersect_array),
9425 (gst_value_is_fixed), (_gst_value_initialize):
9427 GstElement::new-pad -> pad-added, GstElement::state-change ->
9428 state-changed, GstValueFixedList -> GstValueArray, add format and
9429 flags as their own arguments in gst_element_seek() (should improve
9430 "bindeability"), remove function generators since they don't work
9431 under a whole bunch of compilers (they were deprecated already
9434 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9436 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
9437 (_gst_debug_register_funcptr):
9439 Fix illegal cast on some platforms (#309253).
9441 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9443 * gst/gstmessage.c: (gst_message_new_custom):
9445 Add _new_custom, make _new_application a macro to _new_custom.
9447 2005-07-20 Wim Taymans <wim@fluendo.com>
9449 * gst/base/gstbasesrc.c: (gst_base_src_init),
9450 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
9451 * gst/base/gstbasesrc.h:
9452 Add a gboolean to decide when to push out a discont.
9454 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
9455 (gst_queue_loop), (gst_queue_handle_src_query),
9456 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
9457 (gst_queue_set_property), (gst_queue_get_property):
9460 * tests/threadstate/threadstate1.c: (main):
9461 Make a thread test compile and run... very silly..
9464 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9466 * docs/manual/appendix-porting.xml:
9467 Mention removal of libgstgconf-0.9.la and existence of gconf
9470 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
9472 * docs/pwg/advanced-clock.xml:
9473 * docs/pwg/appendix-porting.xml:
9474 * docs/pwg/intro-preface.xml:
9475 * docs/pwg/other-base.xml:
9476 * docs/pwg/other-manager.xml:
9477 * docs/pwg/other-nton.xml:
9478 * docs/pwg/other-ntoone.xml:
9479 * docs/pwg/other-oneton.xml:
9481 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
9482 demuxer), remove n-to-n (was never written), fix some code examples
9483 and links and update the porting section to include all this.
9485 2005-07-19 Wim Taymans <wim@fluendo.com>
9487 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
9488 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
9489 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
9490 (gst_queue_src_activate_push), (gst_queue_change_state),
9491 (gst_queue_get_property):
9493 Propagate GstFlowReturn more intelligently upstream and output
9494 an ERROR/EOS when streaming stopped due to fatal error.
9496 2005-07-19 Wim Taymans <wim@fluendo.com>
9498 * tools/gst-launch.c: (check_intr), (event_loop), (main):
9499 Don't block forever for the state change to complete, the
9500 pipeline already did with a sensible timeout.
9502 2005-07-19 Wim Taymans <wim@fluendo.com>
9504 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
9505 Make sure we never call the create function is we
9508 2005-07-19 Andy Wingo <wingo@pobox.com>
9510 * gst/parse/parse.l: Attempt to solve bug #172815.
9512 2005-07-19 Wim Taymans <wim@fluendo.com>
9514 * docs/design/part-clocks.txt:
9515 * docs/design/part-events.txt:
9516 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
9518 Only update the seeking values when we are not
9521 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
9523 * gst/base/gstbasesrc.c: (gst_base_src_loop):
9524 Oops, ignore the result of gst_pad_push_event here.
9526 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
9528 * gst/base/gstbasesrc.c: (gst_base_src_loop),
9529 (gst_base_src_activate_push):
9530 Send discont event from the loop function, as pads
9531 aren't activated yet in the activate_push handler.
9533 * gst/gstbin.c: (bin_bus_handler):
9534 Don't leak element name.
9536 2005-07-18 Andy Wingo <wingo@pobox.com>
9538 * configure.ac: Use AS_LIBTOOL_TAGS.
9540 2005-07-18 Wim Taymans <wim@fluendo.com>
9542 * docs/gst/gstreamer.types:
9543 Remove deleted types.
9545 2005-07-18 Wim Taymans <wim@fluendo.com>
9547 * check/elements/gstfakesrc.c: (GST_START_TEST):
9550 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9551 (init_popt_callback):
9553 * gst/gst_private.h:
9554 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
9555 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
9558 * gst/gstconfig.h.in:
9559 * gst/gstelement.c: (gst_element_class_init),
9560 (gst_element_set_base_time), (gst_element_get_base_time),
9561 (iterator_fold_with_resync), (gst_element_change_state),
9562 (gst_element_dispose), (gst_element_get_bus):
9564 * gst/gstelementfactory.h:
9565 * gst/gsterror.c: (_gst_core_errors_init):
9568 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
9570 * gst/gstinfo.c: (_gst_debug_init):
9571 * gst/gstmessage.c: (_gst_message_copy):
9573 * gst/gstminiobject.h:
9576 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9577 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
9580 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
9581 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
9582 (gst_pipeline_get_last_stream_time):
9583 * gst/gstpipeline.h:
9584 * gst/gstpluginfeature.h:
9586 * gst/gstscheduler.c:
9587 * gst/gstscheduler.h:
9588 * gst/gststructure.h:
9589 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
9590 (gst_task_finalize), (gst_task_func), (gst_task_create),
9591 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
9592 (gst_task_stop), (gst_task_pause):
9594 * gst/gsttypefind.h:
9596 * gst/registries/gstlibxmlregistry.c: (load_feature),
9597 (gst_xml_registry_load), (gst_xml_registry_save_feature):
9598 * gst/registries/gstxmlregistry.c:
9599 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
9600 * gst/schedulers/threadscheduler.c:
9601 * libs/gst/control/dparammanager.h:
9602 * tools/gst-inspect.c: (print_element_list),
9603 (print_plugin_features), (print_element_features):
9604 * tools/gst-xmlinspect.c: (print_element_list),
9605 (print_plugin_info), (main):
9606 Removed plugable schedulers.
9607 Removed Scheduler/Manager from elements.
9608 Removed gsttypes.h, rearranged includes.
9609 Removed dependency pad<->element, element<>pipeline, and
9610 various others, fix includes.
9611 implement gst_pad_get_parent() with gst_object_get_parent()
9612 Make GstTask sefcontained.
9613 Fix _get_state() on GstBin, it did not return ASYNC with a 0
9615 Fix endless loop in iterator_fold_with_resync.
9618 2005-07-18 Wim Taymans <wim@fluendo.com>
9624 2005-07-18 Wim Taymans <wim@fluendo.com>
9629 2005-07-18 Wim Taymans <wim@fluendo.com>
9635 2005-07-18 Wim Taymans <wim@fluendo.com>
9637 * docs/design/part-dynamic.txt:
9638 * docs/design/part-events.txt:
9639 * docs/design/part-seeking.txt:
9640 Some more docs in the works.
9642 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
9643 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
9644 (gst_base_transform_setcaps), (gst_base_transform_get_size),
9645 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
9646 (gst_base_transform_handle_buffer),
9647 (gst_base_transform_sink_activate_push),
9648 (gst_base_transform_src_activate_pull),
9649 (gst_base_transform_set_passthrough),
9650 (gst_base_transform_is_passthrough):
9653 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
9656 * gst/gstevent.c: (gst_event_finalize):
9659 * gst/gstutils.c: (gst_element_unlink),
9660 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
9661 (gst_pad_proxy_setcaps):
9663 Add _get_parent_element() to get a pads parent as an element.
9665 2005-07-18 Wim Taymans <wim@fluendo.com>
9667 * check/gst/gstbin.c: (GST_START_TEST):
9670 2005-07-18 Wim Taymans <wim@fluendo.com>
9672 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
9673 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
9674 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
9675 (gst_base_sink_event), (gst_base_sink_do_sync),
9676 (gst_base_sink_chain), (gst_base_sink_loop),
9677 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
9678 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
9680 Fix logic for returning ASYNC when not prerolled.
9682 2005-07-18 Wim Taymans <wim@fluendo.com>
9684 * gst/gstqueue.c: (gst_queue_handle_sink_event):
9685 Fix nasty refcount bug.
9687 2005-07-16 Philippe Khalaf <burger@speedy.org>
9689 * gst/elements/gstfdsrc.c:
9690 * gst/elements/gstfdsrc.h:
9691 * gst/elements/gstelements.c:
9692 * gst/elements/Makefile.am:
9693 Ported fdsrc to 0.9.
9695 2005-07-16 Wim Taymans <wim@fluendo.com>
9697 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9698 (gst_base_sink_do_sync):
9701 2005-07-16 Wim Taymans <wim@fluendo.com>
9703 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9704 (gst_base_sink_event), (gst_base_sink_get_times),
9705 (gst_base_sink_do_sync), (gst_base_sink_change_state):
9706 * gst/base/gstbasesink.h:
9707 Store and use discont values when syncing buffers as described
9710 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
9711 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
9712 (gst_base_src_activate_push):
9713 Push discont event when starting.
9715 * gst/elements/gstidentity.c: (gst_identity_transform):
9718 * gst/gstbin.c: (gst_bin_change_state):
9719 Small cleanups in base_time distribution.
9721 * gst/gstelement.c: (gst_element_set_base_time),
9722 (gst_element_get_base_time), (gst_element_change_state):
9724 Added methods for the base_time of the element.
9727 * gst/gstpipeline.c: (gst_pipeline_send_event),
9728 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
9729 (gst_pipeline_get_last_stream_time):
9730 * gst/gstpipeline.h:
9732 Handle seeking as described in design doc, remove stream_time
9734 Cleanups clock and stream_time selection code. Added accessors
9735 for the stream_time.
9738 2005-07-16 Andy Wingo <wingo@pobox.com>
9740 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
9743 2005-07-16 Wim Taymans <wim@fluendo.com>
9745 * check/gst/gstbin.c: (GST_START_TEST):
9746 Make elements silent as the deep_notify refs the
9747 parent, which might make the test fail.
9749 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
9750 Don't hold the lock for too long.
9752 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
9754 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
9755 Don't unref the caps we passed to gst_caps_make_writable() after
9756 passing them. gst_caps_make_writable() will do that for us.
9758 2005-07-15 Andy Wingo <wingo@pobox.com>
9760 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
9763 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
9764 own marshalling function for the handoff signal. Properly type the
9765 buffer as a buffer. Fixes some warnings. Should do a more general
9767 (gst_identity_class_init): Plug into the right marshaller.
9769 2005-07-15 Wim Taymans <wim@fluendo.com>
9771 * docs/design/part-TODO.txt:
9772 * docs/design/part-clocks.txt:
9773 * docs/design/part-element-sink.txt:
9774 * docs/design/part-events.txt:
9775 * docs/design/part-gstpipeline.txt:
9776 Updated docs, mostly DISCONT related.
9778 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
9780 * docs/pwg/building-pads.xml:
9781 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
9783 2005-07-15 Andy Wingo <wingo@pobox.com>
9785 * tools/gst-typefind.c: Update, add copyright block.
9787 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
9788 Normalize and truncate caps before fixation.
9791 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
9792 discards all but the first structure from its argument.
9794 2005-07-15 Wim Taymans <wim@fluendo.com>
9796 * gst/base/gstbasetransform.c: (gst_base_transform_init),
9797 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
9798 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9799 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
9800 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
9801 (gst_base_transform_chain), (gst_base_transform_change_state),
9802 (gst_base_transform_set_passthrough),
9803 (gst_base_transform_is_passthrough):
9804 * gst/base/gstbasetransform.h:
9805 Make passthrough work using the bufferpools.
9806 Changed API a bit, subclasses have to write into a buffer
9807 provided by the base class.
9808 More debug info in nego functions.
9810 * gst/elements/gstidentity.c: (gst_identity_init),
9811 (gst_identity_transform):
9812 Port to new base class.
9814 2005-07-15 Wim Taymans <wim@fluendo.com>
9816 * gst/gstmessage.c: (gst_message_new_state_changed):
9817 * tools/gst-launch.c: (event_loop), (main):
9818 Totally dump messages in -launch with the -m option.
9819 Fix message name for State messages,
9821 2005-07-14 Wim Taymans <wim@fluendo.com>
9823 * gst/base/gstbasesrc.c: (gst_base_src_loop):
9824 Post error messages on errors.
9826 2005-07-14 Wim Taymans <wim@fluendo.com>
9828 * gst/gstcaps.c: (gst_caps_do_simplify):
9832 Define error for stream stopped.
9834 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
9835 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
9836 Do proper return values.
9838 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9839 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
9840 (gst_pad_get_range):
9841 Better return values.
9844 Reorganise return values, add macro to check for fatal errors.
9846 * gst/gstqueue.c: (gst_queue_chain):
9847 Return proper GstFlowReturn values,
9849 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
9851 * docs/gst/gstreamer-sections.txt:
9852 * docs/gst/gstreamer.types:
9853 * docs/gst/tmpl/gst.sgml:
9854 * docs/gst/tmpl/gstbasesink.sgml:
9855 * docs/gst/tmpl/gstbasesrc.sgml:
9856 * docs/gst/tmpl/gstbasetransform.sgml:
9857 * docs/gst/tmpl/gstbin.sgml:
9858 * docs/gst/tmpl/gstbuffer.sgml:
9859 * docs/gst/tmpl/gstcaps.sgml:
9860 * docs/gst/tmpl/gstclock.sgml:
9861 * docs/gst/tmpl/gstcompat.sgml:
9862 * docs/gst/tmpl/gstconfig.sgml:
9863 * docs/gst/tmpl/gstelement.sgml:
9864 * docs/gst/tmpl/gstelementdetails.sgml:
9865 * docs/gst/tmpl/gstelementfactory.sgml:
9866 * docs/gst/tmpl/gstenumtypes.sgml:
9867 * docs/gst/tmpl/gsterror.sgml:
9868 * docs/gst/tmpl/gstevent.sgml:
9869 * docs/gst/tmpl/gstfakesink.sgml:
9870 * docs/gst/tmpl/gstfakesrc.sgml:
9871 * docs/gst/tmpl/gstfilesink.sgml:
9872 * docs/gst/tmpl/gstfilesrc.sgml:
9873 * docs/gst/tmpl/gstfilter.sgml:
9874 * docs/gst/tmpl/gstformat.sgml:
9875 * docs/gst/tmpl/gstghostpad.sgml:
9876 * docs/gst/tmpl/gstimplementsinterface.sgml:
9877 * docs/gst/tmpl/gstindex.sgml:
9878 * docs/gst/tmpl/gstindexfactory.sgml:
9879 * docs/gst/tmpl/gstinfo.sgml:
9880 * docs/gst/tmpl/gstiterator.sgml:
9881 * docs/gst/tmpl/gstmacros.sgml:
9882 * docs/gst/tmpl/gstmemchunk.sgml:
9883 * docs/gst/tmpl/gstminiobject.sgml:
9884 * docs/gst/tmpl/gstobject.sgml:
9885 * docs/gst/tmpl/gstpad.sgml:
9886 * docs/gst/tmpl/gstpadtemplate.sgml:
9887 * docs/gst/tmpl/gstparse.sgml:
9888 * docs/gst/tmpl/gstpipeline.sgml:
9889 * docs/gst/tmpl/gstplugin.sgml:
9890 * docs/gst/tmpl/gstpluginfeature.sgml:
9891 * docs/gst/tmpl/gstquery.sgml:
9892 * docs/gst/tmpl/gstqueue.sgml:
9893 * docs/gst/tmpl/gstregistry.sgml:
9894 * docs/gst/tmpl/gstregistrypool.sgml:
9895 * docs/gst/tmpl/gstscheduler.sgml:
9896 * docs/gst/tmpl/gstschedulerfactory.sgml:
9897 * docs/gst/tmpl/gststructure.sgml:
9898 * docs/gst/tmpl/gstsystemclock.sgml:
9899 * docs/gst/tmpl/gsttaglist.sgml:
9900 * docs/gst/tmpl/gsttagsetter.sgml:
9901 * docs/gst/tmpl/gsttrace.sgml:
9902 * docs/gst/tmpl/gsttrashstack.sgml:
9903 * docs/gst/tmpl/gsttypefind.sgml:
9904 * docs/gst/tmpl/gsttypefindfactory.sgml:
9905 * docs/gst/tmpl/gsttypes.sgml:
9906 * docs/gst/tmpl/gsturihandler.sgml:
9907 * docs/gst/tmpl/gsturitype.sgml:
9908 * docs/gst/tmpl/gstutils.sgml:
9909 * docs/gst/tmpl/gstvalue.sgml:
9910 * docs/gst/tmpl/gstversion.sgml:
9911 * docs/gst/tmpl/gstxml.sgml:
9912 * docs/libs/tmpl/gstcontrol.sgml:
9913 * docs/libs/tmpl/gstdataprotocol.sgml:
9914 * docs/libs/tmpl/gstdparam.sgml:
9915 * docs/libs/tmpl/gstdplinint.sgml:
9916 * docs/libs/tmpl/gstdpman.sgml:
9917 * docs/libs/tmpl/gstdpsmooth.sgml:
9918 * docs/libs/tmpl/gstgetbits.sgml:
9919 * docs/libs/tmpl/gstunitconvert.sgml:
9920 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
9921 (gst_push_src_base_init), (gst_push_src_class_init),
9922 (gst_push_src_init), (gst_push_src_create):
9923 * gst/base/gstpushsrc.h:
9924 * gst/elements/gstelements.c:
9925 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
9926 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
9927 (gst_fake_sink_init), (gst_fake_sink_set_property),
9928 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
9929 (gst_fake_sink_event), (gst_fake_sink_preroll),
9930 (gst_fake_sink_render), (gst_fake_sink_change_state):
9931 * gst/elements/gstfakesink.h:
9932 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
9933 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
9934 (gst_fake_src_base_init), (gst_fake_src_class_init),
9935 (gst_fake_src_init), (gst_fake_src_event_handler),
9936 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
9937 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
9938 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
9939 (gst_fake_src_create_buffer), (gst_fake_src_create),
9940 (gst_fake_src_start), (gst_fake_src_stop):
9941 * gst/elements/gstfakesrc.h:
9942 * gst/elements/gstfilesink.c: (_do_init),
9943 (gst_file_sink_base_init), (gst_file_sink_class_init),
9944 (gst_file_sink_init), (gst_file_sink_dispose),
9945 (gst_file_sink_set_location), (gst_file_sink_set_property),
9946 (gst_file_sink_get_property), (gst_file_sink_open_file),
9947 (gst_file_sink_close_file), (gst_file_sink_query),
9948 (gst_file_sink_event), (gst_file_sink_render),
9949 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
9950 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
9951 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
9952 * gst/elements/gstfilesink.h:
9953 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
9954 (gst_file_src_class_init), (gst_file_src_init),
9955 (gst_file_src_finalize), (gst_file_src_set_location),
9956 (gst_file_src_set_property), (gst_file_src_get_property),
9957 (gst_file_src_map_region), (gst_file_src_map_small_region),
9958 (gst_file_src_create_mmap), (gst_file_src_create_read),
9959 (gst_file_src_create), (gst_file_src_is_seekable),
9960 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
9961 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
9962 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
9963 (gst_file_src_uri_handler_init):
9964 * gst/elements/gstfilesrc.h:
9965 more autistic cleanliness in functions/names/defines
9967 2005-07-13 Andy Wingo <wingo@pobox.com>
9969 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
9970 source couldn't negotiate.
9972 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
9976 * gst/gstutils.c (gst_element_link_pads_filtered): New old
9977 function. I am channeling Hades. Put your boots on suckers!!!
9979 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
9981 * testsuite/caps/Makefile.am:
9982 * testsuite/caps/value_compare.c:
9983 * testsuite/caps/value_intersect.c:
9984 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
9985 move two testsuite apps over to the check dir
9987 2005-07-12 Wim Taymans <wim@fluendo.com>
9989 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
9990 Added more debug info in the negotiate process.
9993 Prepare for segment playback.
9995 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
10001 * tools/gst-launch.c: (main):
10002 NULL pipeline on errors.
10004 2005-07-12 Andy Wingo <wingo@pobox.com>
10006 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
10007 not it comes from a malloc region. Make sure our copy gets freed.
10009 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
10011 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
10012 * check/gst/gstmessage.c: (GST_START_TEST):
10013 * check/gst/gststructure.c: (GST_START_TEST),
10014 (gst_structure_suite), (main):
10016 * gst/gstelement.c: (gst_element_message_full):
10017 clean up GError and debug string now that they get copied
10018 * gst/gstmessage.c: (gst_message_new_error),
10019 (gst_message_new_warning), (gst_message_parse_error),
10020 (gst_message_parse_warning):
10021 use GST_TYPE_G_ERROR for structure_new, and take copies of
10022 arguments, so that we don't mess up refcounting
10024 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
10026 * check/Makefile.am:
10027 add per-test valgrind targets
10028 * check/gst-libs/gdp.c: (GST_START_TEST),
10029 (gst_data_protocol_suite), (main):
10032 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
10034 * check/Makefile.am:
10035 instate more valgrindable tests
10036 * check/elements/gstfakesrc.c: (chain_func), (event_func),
10037 (GST_START_TEST), (fakesrc_suite):
10038 * check/gst/gstpad.c: (GST_START_TEST):
10039 * check/gst/gststructure.c: (GST_START_TEST):
10041 * docs/gst/tmpl/gstminiobject.sgml:
10042 * gst/gstpad.c: (gst_pad_finalize):
10043 fix the static mutex leak
10045 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
10047 * check/Makefile.am:
10048 add two more tests for valgrinding
10049 * check/gst/gstvalue.c: (GST_START_TEST):
10050 test refcount of deserialized buffer, found a leak
10051 * docs/gst/gstreamer-docs.sgml:
10052 * docs/gst/gstreamer-sections.txt:
10053 * docs/gst/gstreamer.types:
10054 * docs/gst/tmpl/gstminiobject.sgml:
10055 add miniobject to docs
10056 * gst/gstminiobject.c:
10058 * gst/gstvalue.c: (gst_value_deserialize_buffer),
10059 (gst_string_unwrap):
10060 fix a hard-to-find invalid write for one of the tests
10061 fix a leak for deserialized buffers
10063 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10065 * docs/pwg/advanced-events.xml:
10066 * docs/pwg/advanced-request.xml:
10067 * docs/pwg/advanced-scheduling.xml:
10068 * docs/pwg/appendix-porting.xml:
10069 * docs/pwg/building-boiler.xml:
10070 * docs/pwg/intro-preface.xml:
10071 * docs/pwg/other-ntoone.xml:
10072 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
10073 of example code and explanation for pad activation, loop() and
10074 getrange() functions and a bit more. Remove old comments pointing
10076 * examples/pwg/Makefile.am:
10077 Add loop/getrange examples.
10079 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
10082 check for valgrind binary + some fixes
10084 valgrind suppressions for the tests
10085 * check/Makefile.am:
10086 add a valgrind: target that valgrinds the unit tests
10087 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
10088 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
10089 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
10090 * check/gst/gstghostpad.c:
10092 * check/gst/gstdata.c:
10094 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
10095 (thread_unref), (gst_mini_object_suite), (main):
10097 * gst/gst.c: (gst_deinit):
10099 add a method to clean up.
10100 * gst/gstsystemclock.c: (gst_system_clock_dispose),
10101 (gst_system_clock_obtain):
10102 allow for disposing the system clock.
10103 * tools/gst-launch.c: (main):
10106 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
10108 * docs/gst/tmpl/gstbasesrc.sgml:
10109 * docs/gst/tmpl/gstfakesrc.sgml:
10110 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10111 (gst_base_src_init), (gst_base_src_set_property),
10112 (gst_base_src_get_property), (gst_base_src_get_range),
10113 (gst_base_src_start):
10114 * gst/base/gstbasesrc.h:
10115 add num-buffers property
10116 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
10117 (gst_fakesrc_init), (gst_fakesrc_set_property),
10118 (gst_fakesrc_get_property), (gst_fakesrc_create),
10119 (gst_fakesrc_start):
10120 remove num-buffers property
10122 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
10124 * docs/gst/gstreamer-sections.txt:
10125 * docs/gst/tmpl/gstbasesink.sgml:
10126 * docs/gst/tmpl/gstbasesrc.sgml:
10127 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
10128 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
10129 (gst_base_sink_finalize), (gst_base_sink_set_clock),
10130 (gst_base_sink_set_property), (gst_base_sink_get_property),
10131 (gst_base_sink_handle_object), (gst_base_sink_event),
10132 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
10133 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
10134 (gst_base_sink_loop), (gst_base_sink_deactivate),
10135 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
10136 (gst_base_sink_change_state):
10137 * gst/base/gstbasesink.h:
10138 * gst/base/gstbasesrc.h:
10139 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
10140 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
10141 (gst_filesink_init):
10142 more macro splitting
10144 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
10146 * gst/gstelement.c: (gst_element_get_bus):
10148 * tools/gst-launch.c: (check_intr), (event_loop):
10151 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
10153 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
10156 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
10158 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10159 (gst_base_src_finalize):
10160 add finalize method and clean up properly
10161 * gst/gstpipeline.c: (gst_pipeline_dispose):
10164 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
10166 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
10168 add more things to check
10169 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
10170 * gst/gstelement.c:
10173 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
10175 * check/elements/gstfakesrc.c: (chain_func), (event_func),
10176 (GST_START_TEST), (fakesrc_suite):
10177 * check/gst-libs/gdp.c: (GST_START_TEST):
10178 * check/gst/gst.c: (GST_START_TEST):
10179 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
10180 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
10181 * check/gst/gstbus.c: (GST_START_TEST):
10182 * check/gst/gstcaps.c: (GST_START_TEST):
10183 * check/gst/gstdata.c: (GST_START_TEST):
10184 * check/gst/gstelement.c: (GST_START_TEST):
10185 * check/gst/gstghostpad.c: (GST_START_TEST):
10186 * check/gst/gstiterator.c: (GST_START_TEST):
10187 * check/gst/gstmessage.c: (GST_START_TEST):
10188 * check/gst/gstobject.c: (GST_START_TEST):
10189 * check/gst/gstpad.c: (GST_START_TEST):
10190 * check/gst/gststructure.c: (GST_START_TEST):
10191 * check/gst/gstsystemclock.c: (GST_START_TEST),
10192 (gst_systemclock_suite):
10193 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
10194 * check/gst/gstvalue.c: (GST_START_TEST):
10195 * check/pipelines/cleanup.c: (GST_START_TEST):
10196 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
10197 * check/states/sinks.c: (GST_START_TEST):
10198 * check/gstcheck.c: (gst_check_init):
10199 * check/gstcheck.h:
10200 add debugging category
10201 use GST_START_TEST now, so we add a debug line
10203 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
10205 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
10206 add test for state change message on a bin
10207 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
10209 * gst/gstbin.c: (gst_bin_init):
10210 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
10211 * gst/gstelement.c: (gst_element_post_message),
10212 (gst_element_set_state):
10213 * gst/gstelementfactory.c: (gst_element_factory_create):
10214 * gst/gstmessage.c: (gst_message_new):
10215 * gst/gstscheduler.c:
10216 various debugging additions and cleanups
10218 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
10220 * check/Makefile.am:
10221 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
10223 adding tests for elements
10224 * gst/gstelement.c: (gst_element_dispose):
10226 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
10228 * gst/registries/gstlibxmlregistry.c: (load_feature):
10229 plug more leaks. A simple gst_init() now is leakfree, yay.
10231 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
10233 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
10234 (gst_xml_registry_load):
10235 plug another memleak
10237 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
10240 use GST_SET_ERROR_CFLAGS
10241 * docs/faq/cvs.xml:
10242 change to ERROR_CFLAGS
10244 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
10247 make GST_ERROR_CFLAGS overridable and re-enable Werror
10248 * docs/faq/cvs.xml:
10249 add a note about error CFLAGS
10250 * docs/gst/tmpl/gstfakesrc.sgml:
10251 * gst/elements/gstfakesrc.c:
10252 comment out some unused code
10253 * gst/gst.c: (split_and_iterate):
10254 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
10258 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
10260 * common/Makefile.am:
10261 * common/gtk-doc.mak:
10262 * docs/gst/Makefile.am:
10263 factor out gtk-doc.mak
10265 2005-07-07 Wim Taymans <wim@fluendo.com>
10267 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
10268 (gst_thread_scheduler_dispose):
10269 Unlock the STREAM_LOCK completely.
10271 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
10273 * check/Makefile.am:
10274 * check/elements/.cvsignore:
10275 * check/elements/gstfakesrc.c: (chain_func), (event_func),
10276 (START_TEST), (fakesrc_suite), (main):
10277 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
10278 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
10279 (gst_fakesrc_create), (gst_fakesrc_start):
10280 * gst/elements/gstfakesrc.h:
10281 adding a first element test
10283 2005-07-07 Andy Wingo <wingo@pobox.com>
10285 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
10288 2005-07-07 Wim Taymans <wim@fluendo.com>
10294 2005-07-07 Wim Taymans <wim@fluendo.com>
10296 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
10297 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
10298 Allow subclasses to implement their own negotiation.
10300 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
10302 * docs/design/part-gstbin.txt:
10303 * docs/design/part-gstpipeline.txt:
10304 Update design notes to reflect the movement of
10305 responsibility for bus handling from GstPipeline to
10308 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
10311 Remove unnecessary queue2/3/4 examples.
10313 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
10315 * examples/Makefile.am:
10316 * examples/helloworld/helloworld.c: (event_loop), (main):
10317 * examples/queue/queue.c: (event_loop), (main):
10318 * examples/queue2/queue2.c: (main):
10319 Update a couple of the examples to work again.
10321 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10322 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
10323 Spelling corrections and extra debug.
10325 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
10326 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
10327 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
10329 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
10330 (gst_pipeline_change_state):
10331 * gst/gstpipeline.h:
10332 Move the bus handler for children to the GstBin, and create a
10333 separate bus for receiving messages from children to the one the
10334 bus sends 'upwards' on.
10336 2005-07-06 Wim Taymans <wim@fluendo.com>
10339 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10340 (gst_base_sink_handle_object), (gst_base_sink_loop),
10341 (gst_base_sink_change_state):
10342 * gst/base/gstbasesink.h:
10343 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10344 (gst_base_src_init), (gst_base_src_setcaps),
10345 (gst_base_src_getcaps), (gst_base_src_loop),
10346 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
10347 (gst_base_src_start), (gst_base_src_change_state):
10348 * gst/base/gstbasesrc.h:
10349 Make basesrc negotiate.
10350 Handle the case where preroll fails in basesink.
10353 2005-07-06 Wim Taymans <wim@fluendo.com>
10355 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
10356 Implement the fixate function.
10357 Clean up acceptcaps.
10359 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10361 * docs/pwg/building-filterfactory.xml:
10362 * docs/pwg/pwg.xml:
10363 Remove never-written filter-factory chapter; I'll add the various
10364 base classes to part 4 ("other element types") later on.
10366 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10368 * docs/pwg/advanced-negotiation.xml:
10369 * docs/pwg/building-boiler.xml:
10370 * docs/pwg/building-pads.xml:
10371 * docs/pwg/pwg.xml:
10372 * examples/pwg/Makefile.am:
10373 Add a chapter on caps negotiation, simplify the original code
10374 samples a bit w.r.t. caps negotiation, add link to the advanced
10375 section. Add a bunch of examples showing different use cases of
10376 different types of caps negotiation. Upstream renegotiation isn't
10377 fully documented yet since nobody knows how that works.
10379 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
10381 * check/gst/gstpad.c:
10382 * check/gstcheck.c:
10383 * gst/gstpad.c: (gst_pad_get_internal_links_default):
10384 if pad has no parent, return NULL as list of internal links
10386 2005-07-05 Andy Wingo <wingo@pobox.com>
10388 * gst/elements/gstfilesrc.c:
10389 * gst/elements/gstfakesrc.c:
10390 * gst/base/gstpushsrc.c:
10391 * gst/base/gstbasesrc.h:
10392 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
10394 2005-07-05 Stefan Kost <ensonic@users.sf.net>
10397 better report generation target (lcov needs a patch)
10399 2005-07-05 Andy Wingo <wingo@pobox.com>
10401 * gst/elements, testsuite: Null if we got it...
10403 2005-07-05 Wim Taymans <wim@fluendo.com>
10406 * libs/gst/dataprotocol/Makefile.am:
10407 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
10408 * libs/gst/dataprotocol/dataprotocol.h:
10409 * pkgconfig/Makefile.am:
10410 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
10411 * pkgconfig/gstreamer-dataprotocol.pc.in:
10412 Ported dataprotol to 0.9.
10413 Added pkgconfig files.
10415 2005-07-05 Andy Wingo <wingo@pobox.com>
10417 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
10418 Default to returning TRUE for the case when tranform_caps returns
10419 a fixed caps, like for identity or volume.
10421 * check/gst/gstbus.c (pound_bus_with_messages):
10422 * check/gst/gstmessage.c (START_TEST):
10423 * check/pipelines/simple_launch_lines.c (got_handoff): Application
10424 message API change.
10426 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
10427 logic weaks here: always run transform_caps, trying passthrough
10428 operation only if the original caps intersects with the transform.
10430 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
10431 source and sink caps.
10433 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
10434 Intersect the peer caps with the pad template before going into
10436 (gst_base_transform_transform_caps): More debugging.
10438 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
10441 2005-07-04 Edward Hervey <edward@fluendo.com>
10445 (gst_pad_add_*_probe): now returns the signal id for better wrapping
10448 2005-07-04 Andy Wingo <wingo@pobox.com>
10450 * check/gst/gstpad.c: Only set explicit caps on pads.
10452 2005-07-01 Andy Wingo <wingo@pobox.com>
10454 * tests/network-clock.scm: Commentary update.
10456 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
10457 Didn't really make sense, not implementable with basetransform,
10459 (gst_identity_transform): Unref inbuf via make_writable. Feeble
10460 attempt at implementing the sync property, needs an unlock method.
10462 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
10463 New func, by default returns the same caps (the identity
10465 (gst_base_transform_getcaps): Uses transform_caps to return
10466 something sensible.
10467 (gst_base_transform_setcaps): Complicated logic to get caps on
10468 both pads, even if they are different, and to call set_caps once
10469 for every time both pads get their caps set.
10470 (gst_base_transform_handle_buffer): Give the ref to the transform
10471 function. Allows in-place modification of the buffer.
10473 * gst/base/gstbasetransform.h (transform_caps): New class method.
10474 Given caps on one side, what can I do on the other.
10475 (set_caps): Take two caps, one for each side of the element.
10478 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
10479 caps in place. This is safe because we can check the mutability of
10480 the caps, and a good idea because fixate functions are just called
10481 as a matter of last resort. (Not actually implemented.)
10482 (gst_pad_set_caps): If the caps we're setting is actually the same
10483 as the existing pad caps, just update the pointer without calling
10484 setcaps. Assert that caps is either NULL or fixed, as per the
10487 * gst/gstghostpad.c: Update for fixate changes.
10489 2005-07-02 Andy Wingo <wingo@pobox.com>
10492 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
10493 two refcounts makes it immutable, which is enough. Doc more.
10495 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
10497 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
10498 Put the mini_object into GValue as a mini_object,
10499 not a gpointer, since that's how we declared
10502 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10504 * examples/pwg/Makefile.am:
10505 Fix buildbot again.
10507 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10509 * docs/pwg/building-testapp.xml:
10511 * examples/pwg/Makefile.am:
10514 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10517 * examples/Makefile.am:
10518 * examples/pwg/Makefile.am:
10519 * examples/pwg/extract.pl:
10520 Enable building the PWG examples.
10521 * docs/pwg/advanced-interfaces.xml:
10522 Add URI interface stub.
10523 * docs/pwg/advanced-types.xml:
10524 * docs/pwg/other-autoplugger.xml:
10525 * docs/pwg/appendix-porting.xml:
10526 * docs/pwg/pwg.xml:
10527 Add porting guide (mostly stubs), remove autoplugging (see ADM).
10528 * docs/pwg/building-boiler.xml:
10529 * docs/pwg/building-chainfn.xml:
10530 * docs/pwg/building-pads.xml:
10531 * docs/pwg/building-props.xml:
10532 * docs/pwg/building-state.xml:
10533 * docs/pwg/building-testapp.xml:
10534 Update the building-*.xml parts for 0.9 changes. All examples
10535 code blocks compile in examples/pwg/*.
10537 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10539 * docs/manual/advanced-autoplugging.xml:
10540 * docs/manual/appendix-checklist.xml:
10541 * docs/manual/appendix-integration.xml:
10542 * docs/manual/highlevel-components.xml:
10543 Fix playbin/decodebin examples, update docs a bit, mention bus
10544 instead of signals in various places, mention kmplayer and
10545 kaffeine since they have a working GStreamer backend in the KDE
10548 2005-06-30 Wim Taymans <wim@fluendo.com>
10551 * docs/design/draft-ghostpads.txt:
10552 * docs/design/draft-push-pull.txt:
10553 * docs/design/draft-query.txt:
10554 * docs/design/part-TODO.txt:
10555 * docs/design/part-query.txt:
10556 Added CHANGES-0.9 doc, updated status of other docs.
10561 2005-06-30 Wim Taymans <wim@fluendo.com>
10563 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10564 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
10565 (gst_base_sink_change_state):
10566 * gst/base/gstbasesink.h:
10567 Some tweaks, only EOS and a buffer complete a preroll.
10569 2005-06-30 Andy Wingo <wingo@pobox.com>
10571 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
10572 activate_push down to the internal pad as well.
10574 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
10576 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10578 * gst/gsttaginterface.c:
10579 Some documentation fixes (#307394 and #307397).
10581 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
10583 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10585 * gst/gstvalue.c: (gst_value_intersect_list):
10586 Fix memleak (#309125).
10588 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10590 * docs/manual/advanced-dataaccess.xml:
10591 Fix fakesrc example to compile; doesn't work, bug somewhere...?
10592 * docs/manual/basics-pads.xml:
10593 Add reference for filtered caps to above chapter.
10595 2005-06-30 Wim Taymans <wim@fluendo.com>
10597 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
10598 (gst_bin_change_state):
10600 Lame attempt at making the state change function a bit
10603 2005-06-30 Wim Taymans <wim@fluendo.com>
10605 * docs/design/part-clocks.txt:
10606 * docs/design/part-element-sink.txt:
10607 * docs/design/part-events.txt:
10608 * docs/design/part-preroll.txt:
10609 * docs/design/part-states.txt:
10610 Some more tweeks and additions to the docs.
10612 2005-06-30 Wim Taymans <wim@fluendo.com>
10614 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10615 (default_have_data), (gst_pad_class_init), (gst_pad_init),
10616 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
10617 (gst_pad_check_pull_range), (gst_pad_get_range),
10618 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
10620 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
10621 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
10622 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
10623 (gst_pad_remove_buffer_probe):
10624 Removed atomic operations, use existing LOCK.
10625 Move exception handling out of main code path.
10627 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10629 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10630 (silly_return_true_function), (gst_pad_class_init),
10631 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
10632 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
10633 (gst_pad_send_event):
10634 Fix accumulator, add default value by using _emitv() instead
10635 of _emit() for signal emission.
10637 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10639 * docs/manual/advanced-dataaccess.xml:
10640 * examples/manual/Makefile.am:
10642 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
10645 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
10647 * gst/elements/gstfilesink.c: (gst_filesink_render):
10648 Simplify code so that we don't have to handle short
10649 writes and return GST_FLOW_ERROR if an error occured.
10651 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10653 * docs/gst/gstreamer-docs.sgml:
10654 Remove probes more.
10656 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10658 * docs/gst/gstreamer-sections.txt:
10659 * docs/gst/tmpl/gstpad.sgml:
10660 * docs/gst/tmpl/gstprobe.sgml:
10662 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10663 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
10664 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
10665 (gst_pad_push_event), (gst_pad_send_event):
10667 * gst/gstutils.c: (gst_pad_add_data_probe),
10668 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
10669 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
10670 (gst_pad_remove_buffer_probe):
10672 Remove old probes, add new g-signal-based probes and some utility
10675 2005-06-29 Edward Hervey <edward@fluendo.com>
10677 * gst/gstelementfactory.c:
10680 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
10681 the definition to the header file.
10683 2005-06-29 Andy Wingo <wingo@pobox.com>
10685 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
10686 plugins from the source directory.
10688 2005-06-29 Wim Taymans <wim@fluendo.com>
10690 * docs/gst/tmpl/gstbuffer.sgml:
10691 * docs/gst/tmpl/gstclock.sgml:
10692 Some fixings for blantently wrong text.
10694 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
10696 * check/Makefile.am:
10697 * gst/gst.c: (add_path_func), (init_pre):
10698 * gst/gstregistry.c: (gst_registry_add_path):
10699 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
10700 only scan the GST_PLUGIN_PATH locations, and not add
10703 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
10705 * docs/gst/gstreamer-sections.txt:
10706 * docs/gst/tmpl/gstbasesrc.sgml:
10707 * gst/gstelement.c:
10708 * gst/gstelement.h:
10713 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10715 * docs/manual/advanced-autoplugging.xml:
10716 Fix autoplugging example.
10718 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10720 * docs/manual/advanced-autoplugging.xml:
10721 * docs/manual/mime-world.fig:
10722 Try to get autoplugging working, fix type detection. Fix text
10723 in hello-world image.
10725 2005-06-29 Wim Taymans <wim@fluendo.com>
10727 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10728 (gst_base_sink_change_state):
10732 map SIGNAL and BROADCAST to the right function.
10735 Remove redundant braces.
10737 * gst/gstpad.c: (gst_pad_set_caps):
10738 Don't call setcaps function when reseting caps to NULL.
10740 * gst/gstsystemclock.c: (gst_system_clock_dispose),
10741 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
10742 (gst_system_clock_id_unschedule):
10743 Use BROADCAST as this is what we do.
10745 2005-06-29 Wim Taymans <wim@fluendo.com>
10747 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10748 We are actually prerolling before commiting the state
10751 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10753 * docs/manual/advanced-clocks.xml:
10754 * docs/manual/advanced-interfaces.xml:
10755 * docs/manual/advanced-metadata.xml:
10756 * docs/manual/advanced-position.xml:
10757 * docs/manual/advanced-schedulers.xml:
10758 * docs/manual/advanced-threads.xml:
10759 * docs/manual/appendix-porting.xml:
10760 * docs/manual/basics-bins.xml:
10761 * docs/manual/basics-bus.xml:
10762 * docs/manual/basics-elements.xml:
10763 * docs/manual/basics-helloworld.xml:
10764 * docs/manual/basics-pads.xml:
10765 * docs/manual/highlevel-components.xml:
10766 * docs/manual/manual.xml:
10767 * docs/manual/thread.fig:
10768 Update (until threads/scheduling) Application Development Manual;
10769 remove GstThread, add GstBus, add simple porting checklist, add
10770 documentation for tag writing, clocks, make all examples until this
10771 part compile and run.
10772 * examples/manual/Makefile.am:
10773 Update from changes to Application Development Manual; add bus
10774 example, remove thread example.
10776 2005-06-28 Wim Taymans <wim@fluendo.com>
10778 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
10779 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
10780 (gst_bus_source_dispatch):
10781 Add debugging messages.
10782 Make internal methods static.
10783 Handle the case where the bus is flushed in the handler.
10785 * gst/gstelement.c: (gst_element_get_bus):
10786 Fix refcount in _get_bus();
10788 * gst/gstpipeline.c: (gst_pipeline_change_state),
10789 (gst_pipeline_get_clock_func):
10790 Clock refcounting fixes.
10791 Handle the case where preroll timed out more gracefully.
10793 * gst/gstsystemclock.c: (gst_system_clock_dispose):
10794 Clean up the internal thread in dispose. This is needed
10795 for subclasses that actually get disposed.
10797 * gst/schedulers/threadscheduler.c:
10798 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
10799 (gst_thread_scheduler_dispose):
10800 Free thread pool in dispose.
10802 2005-06-28 Andy Wingo <wingo@pobox.com>
10804 * tests/network-clock-utils.scm (debug, print-event): New utils.
10806 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
10807 (*packet-loss*): Unified loss probability.
10808 (network-time): Report out-of-band events.
10810 * tests/plot-data: Add support for out-of-band events. Hack it
10811 into this script instead of passing it down the pipe; should fix
10814 2005-06-28 Wim Taymans <wim@fluendo.com>
10816 * docs/gst/gstreamer.types:
10817 * docs/gst/tmpl/gstbasesrc.sgml:
10818 * docs/gst/tmpl/gstpad.sgml:
10821 2005-06-28 Wim Taymans <wim@fluendo.com>
10823 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10824 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
10825 (gst_proxy_pad_do_fixatecaps):
10826 Correctly proxy the check_pull_range function.
10828 2005-06-28 Andy Wingo <wingo@pobox.com>
10830 * tests/network-clock.scm: Removed need for slib.
10832 2005-06-28 Wim Taymans <wim@fluendo.com>
10834 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
10835 (gst_basesink_preroll_queue_flush):
10836 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
10837 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
10838 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10839 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
10840 (gst_proxy_pad_set_property):
10843 * gst/gstqueue.c: (gst_queue_init):
10844 The deprecated pad loop function is removed now.
10846 2005-06-28 Andy Wingo <wingo@pobox.com>
10848 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
10849 New parameters, simulate network packet loss.
10851 * tests/network-clock-utils.scm: Initialize the RNG.
10853 2005-06-28 Wim Taymans <wim@fluendo.com>
10855 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
10856 (gst_basesink_event), (gst_basesink_deactivate):
10857 Flushing the preroll queue always needs to unlock the waiters.
10859 2005-06-28 Edward Hervey <edward@fluendo.com>
10861 * gst/gstpipeline.c: (gst_pipeline_send_event):
10862 Wheen a seek was successful on a pipeline, set the stream_time to the
10863 seek offset in order to have a synchronized stream_time.
10865 2005-06-28 Wim Taymans <wim@fluendo.com>
10867 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10868 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
10869 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
10870 (gst_proxy_pad_do_fixatecaps):
10871 Call wrapper function instead of just calling the function
10872 pointers. This takes care of any locking and whatmore.
10874 2005-06-28 Wim Taymans <wim@fluendo.com>
10876 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
10877 (gst_pad_pull_range):
10879 CONNECTED -> LINKED.
10881 2005-06-28 Andy Wingo <wingo@pobox.com>
10883 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
10884 source-munging commit!!!
10886 * gst/gstobject.c (gst_object_unref, gst_object_ref)
10887 (gst_object_sink): Take gpointer arguments, not GstObject --
10888 avoids casts. Like GLib.
10890 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
10893 2005-06-27 Andy Wingo <wingo@pobox.com>
10895 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
10898 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
10899 returns a sorted copy of the trace list.
10900 (gst_alloc_trace_print_live): New API, only prints traces with
10901 live objects. Sort the list.
10902 (gst_alloc_trace_print_all): Sort the list.
10903 (gst_alloc_trace_print): Align columns.
10905 * gst/elements/gstttypefindelement.c:
10906 * gst/elements/gsttee.c:
10907 * gst/base/gstbasesrc.c:
10908 * gst/base/gstbasesink.c:
10909 * gst/base/gstbasetransform.c:
10910 * gst/gstqueue.c: Adapt for pad activation changes.
10912 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
10914 (gst_pipeline_dispose): Drop ref on sched.
10916 * gst/gstpad.c (gst_pad_init): Set the default activate func.
10917 (gst_pad_activate_default): Push mode by default.
10918 (pre_activate_switch, post_activate_switch): New stubs, things to
10919 do before and after switching activation modes on pads.
10920 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
10921 the pad's activate function to choose which mode to activate.
10922 Shortcut on deactivation and call the right function directly.
10923 (gst_pad_activate_pull): New API, (de)activates a pad in pull
10925 (gst_pad_activate_push): New API, same for push mode.
10926 (gst_pad_set_activate_function)
10927 (gst_pad_set_activatepull_function)
10928 (gst_pad_set_activatepush_function): Setters for new API.
10930 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
10931 Trace all miniobjects.
10932 (gst_mini_object_make_writable): Unref the arg if we copy, like
10933 gst_caps_make_writable.
10935 * gst/gstmessage.c (_gst_message_initialize): No trace init.
10937 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
10938 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
10939 Adapt for new pad API.
10941 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
10943 * gst/gstelement.h:
10944 * gst/gstelement.c (gst_element_iterate_src_pads)
10945 (gst_element_iterate_sink_pads): New API functions.
10947 * gst/gstelement.c (iterator_fold_with_resync): New utility,
10948 should fold into gstiterator.c in some form.
10949 (gst_element_pads_activate): Simplified via use of fold and
10950 delegation of decisions to gstpad->activate.
10952 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
10955 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
10956 class once in init, like gstmessage. Didn't run into this issue
10957 but it seems correct. Don't initialize a trace, gstminiobject does
10960 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
10961 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
10963 (assert_live_count): New util function, uses alloc traces to check
10966 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
10967 To be modified when unlink drops the internal pad.
10969 2005-06-27 Wim Taymans <wim@fluendo.com>
10971 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
10972 (gst_bin_change_state):
10973 Cleanup the get_state() function a little, make sure it
10974 iterates the same set of elements.
10975 Added stub iterate_state_order().
10977 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
10979 * docs/gst/gstreamer-docs.sgml:
10980 * docs/gst/gstreamer-sections.txt:
10981 * docs/gst/gstreamer.types:
10982 * docs/gst/tmpl/gstbasesink.sgml:
10983 * docs/gst/tmpl/gstbasesrc.sgml:
10984 * docs/gst/tmpl/gstbasetransform.sgml:
10985 * docs/gst/tmpl/gstelement.sgml:
10986 * docs/gst/tmpl/gstiterator.sgml:
10987 * gst/base/gstbasesrc.c:
10988 * gst/base/gstbasesrc.h:
10989 * gst/base/gstbasetransform.h:
10990 * gst/gstelement.c:
10991 * gst/gstiterator.h:
10992 adding basetransform and iterator docs
10994 2005-06-27 Andy Wingo <wingo@pobox.com>
10996 * docs/design/part-activation.txt: Notes on how activation should
10997 work -- not quite implemented yet.
10999 2005-06-25 Wim Taymans <wim@fluendo.com>
11001 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
11002 At least get the chain function correct, needs more
11005 2005-06-25 Wim Taymans <wim@fluendo.com>
11007 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
11008 (gst_basesink_handle_object), (gst_basesink_event),
11009 (gst_basesink_do_sync), (gst_basesink_handle_event),
11010 (gst_basesink_change_state):
11012 Right, two problems here: ghostpads don't take locks and
11013 glib _rec_mutex_lock_full() with depth==0 still locks.
11014 Catch illegal locking and g_warn them.
11016 2005-06-25 Wim Taymans <wim@fluendo.com>
11018 * check/states/sinks.c: (START_TEST), (gst_object_suite):
11019 Have to check for completion now...
11021 2005-06-25 Wim Taymans <wim@fluendo.com>
11023 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
11024 (gst_basesink_handle_object), (gst_basesink_event),
11025 (gst_basesink_do_sync), (gst_basesink_handle_event),
11026 (gst_basesink_change_state):
11028 Unlock STREAM_LOCK whatever the recursion was.
11030 2005-06-25 Wim Taymans <wim@fluendo.com>
11032 * gst/base/gstbasesink.c: (gst_basesink_set_property),
11033 (gst_basesink_preroll_queue_empty),
11034 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
11035 (gst_basesink_event), (gst_basesink_do_sync),
11036 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
11037 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
11038 (gst_basesink_change_state):
11039 Reworked the base sink, handle event and buffer serialisation
11040 correctly and removed possible deadlock.
11041 Handle EOS correctly.
11043 2005-06-25 Wim Taymans <wim@fluendo.com>
11045 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
11046 (gst_pipeline_change_state):
11047 * tools/gst-launch.c: (check_intr), (event_loop), (main):
11048 Allow elements to post EOS in the state change function.
11049 Fix up -launch, make it exit the poll loop when the
11050 pipeline actually changed state.
11051 Fix up warning parsing in -launch.
11053 2005-06-25 Wim Taymans <wim@fluendo.com>
11055 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
11056 (gst_tee_sink_activate):
11057 Core takes STREAM_LOCK for us now.
11059 2005-06-25 Wim Taymans <wim@fluendo.com>
11061 * gst/gstelement.c: (gst_element_get_state_func),
11062 (gst_element_set_state):
11063 * gst/gstelement.h:
11064 * gst/gstmessage.c: (gst_message_parse_error),
11065 (gst_message_parse_warning):
11066 Keep track of current target state while performing a state
11067 change so that subclasses can do something interesting.
11068 Fix parsing of warning/error messages when GError is NULL.
11070 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
11072 * docs/gst/Makefile.am:
11073 * docs/gst/gstreamer-docs.sgml:
11074 * docs/gst/gstreamer-sections.txt:
11075 * docs/gst/gstreamer.types:
11076 * docs/gst/tmpl/gstbasesink.sgml:
11077 * docs/gst/tmpl/gstbasesrc.sgml:
11078 * docs/gst/tmpl/gstbin.sgml:
11079 * docs/gst/tmpl/gstcompat.sgml:
11080 * docs/gst/tmpl/gstfakesink.sgml:
11081 * docs/gst/tmpl/gstfakesrc.sgml:
11082 * docs/gst/tmpl/gstfilesink.sgml:
11083 * docs/gst/tmpl/gstfilesrc.sgml:
11084 * docs/gst/tmpl/gstindex.sgml:
11085 * docs/manual/appendix-quotes.xml:
11086 * gst/base/gstbasesrc.h:
11087 * gst/elements/gstfakesrc.h:
11088 * gst/gstmessage.h:
11089 start pulling in base classes and elements in our docs
11091 2005-06-24 Stefan Kost <ensonic@users.sf.net>
11093 * docs/gst/Makefile.am:
11094 * docs/libs/Makefile.am:
11095 fixed make distcheck with gtk-doc 1.3
11097 2005-06-23 Wim Taymans <wim@fluendo.com>
11099 * gst/gstelement.c: (gst_element_get_state_func),
11100 (gst_element_set_state), (gst_element_change_state):
11101 When the state did not change, also report NO_PREROLL
11104 2005-06-23 Wim Taymans <wim@fluendo.com>
11106 * gst/gstpad.c: (gst_pad_event_default):
11107 * gst/gstqueue.c: (gst_queue_loop):
11108 No unsafe task pausing please.
11110 2005-06-23 Wim Taymans <wim@fluendo.com>
11112 * gst/schedulers/threadscheduler.c:
11113 (gst_thread_scheduler_task_start),
11114 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
11115 Ref the task before pushing it on the threadpool. This
11116 makes sure that we have a ref when the threadfunction is
11119 2005-06-23 Andy Wingo <wingo@pobox.com>
11121 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
11122 offset is greater than the file's size.
11124 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
11125 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
11126 * gst/gstobject.c (gst_object_class_init): Make the class lock
11127 recursive. Wim won't let me drop deep_notify. Decodebin works
11128 again, whoopdy doo.
11130 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
11131 internal pad, and hacks accordingly. Doesn't do it on the target
11132 pad because we change its caps. Probably catches all cases of
11134 (gst_ghost_pad_set_property): Connect to notify::caps as
11137 * tests/network-clock.scm (plot-simulation): Pipe data to the
11138 elite python skript.
11140 * tests/network-clock-utils.scm (define-parameter): New macro,
11141 defines a parameter that can be set via the command line.
11142 (set-parameter!, parse-parameter-arguments): Command line args
11145 * tests/plot-data: Simple matplotlib-based plotter, takes input on
11148 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
11150 * gst/elements/gsttypefindelement.c:
11151 (gst_type_find_element_handle_event):
11152 Don't restart typefinding on a discont.
11153 * gst/gstelement.c: (gst_element_set_state):
11154 Debug spelling fix.
11155 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
11156 Allow changing mode of an active pad.
11157 Debug output fixes.
11158 * gst/registries/gstlibxmlregistry.c: (load_feature):
11159 Don't cast a static pad template to a normal pad template.
11161 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
11163 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11164 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
11165 remove gst_strtoll completely, since it didn't actually do
11166 anything more than what g_ascii_strtoull already does.
11167 check for range errors when deserializing
11168 do a cast for the unsigned cases; but further fixing needs
11169 a decision on what the interpretation of "(int)" and
11170 deserialization should be for values that fall outside the
11171 type's boundaries (ie, refuse, or interpret as casting)
11173 2005-06-23 Wim Taymans <wim@fluendo.com>
11175 * check/Makefile.am:
11176 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
11177 * docs/design/part-live-source.txt:
11178 * docs/design/part-states.txt:
11179 * gst/base/gstbasesrc.c: (gst_basesrc_init),
11180 (gst_basesrc_set_live), (gst_basesrc_is_live),
11181 (gst_basesrc_get_range), (gst_basesrc_activate),
11182 (gst_basesrc_change_state):
11183 * gst/base/gstbasesrc.h:
11184 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
11185 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
11186 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
11187 * gst/gstelement.c: (gst_element_get_state_func),
11188 (gst_element_set_state):
11189 * gst/gstelement.h:
11191 * tools/gst-launch.c: (event_loop), (main):
11192 Added support for live sources and other elements that
11194 Updated design docs, added live-source design doc.
11195 Implemented live source functionality in basesrc
11196 Fix error condition in _bin_get_state()
11197 Implement live source handling in -launch.
11198 Added check for live sources.
11199 Fixed case in GstBin where elements were changed state
11203 2005-06-23 Andy Wingo <wingo@pobox.com>
11205 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
11206 borken refcounting.
11208 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
11209 gst_caps_replace takes care of this for us.
11211 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
11212 gst_pad_set_caps on the target, not just its setcaps() function.
11214 * tests/network-clock.scm:
11215 * tests/network-clock-utils.scm: A network clock simulator.
11216 Something of an algorithmic testbed before doing something in C.
11218 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
11220 * check/Makefile.am:
11221 * check/gst/capslist.h:
11222 copy over from 0.8, and add two with bitmasks specified with
11224 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
11225 add test to parse everything from capslist.h
11226 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
11228 add test for structure deserialization
11229 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11230 add tests for deserialization of strings to int types
11231 * gst/gststructure.c: (gst_structure_nth_field_name):
11232 * gst/gststructure.h:
11233 add a way to get the name of a field referenced by index
11234 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
11235 instead of checking if the resulting long long lies between
11236 min and max, we check if the long long would fit into
11237 a number of bytes for the final type.
11238 This fixes cases where a string represents 2^32 - 1, which
11239 when cast to int would be the (valid) -1, but is bigger than
11242 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
11244 * gst/parse/grammar.y:
11245 add a log line for type deserialization
11247 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
11249 * check/gst/gstvalue.c: (START_TEST):
11250 * gst/gstvalue.c: (gst_value_deserialize):
11251 return long long, not int, so gint64 deserialization actually
11252 works. Is there any flag that makes the compiler check this ?
11255 2005-06-22 Wim Taymans <wim@fluendo.com>
11258 Added convenience macros for setting buffers in GValue.
11260 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
11262 * check/gst/.cvsignore:
11263 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11264 add a test deserializing int64, and comment part out because
11267 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
11269 * check/Makefile.am:
11270 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
11271 * testsuite/Makefile.am:
11272 * testsuite/caps/Makefile.am:
11273 * testsuite/caps/value_serialize.c:
11274 * testsuite/test_gst_init.c:
11275 move a value_serialize test over
11277 2005-06-20 Wim Taymans <wim@fluendo.com>
11282 * gst/gstvalue.c: (gst_value_compare_buffer),
11283 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
11284 (gst_value_compare_flags), (gst_value_serialize_flags),
11285 (gst_value_deserialize_flags), (_gst_value_initialize):
11286 Fix serialisation of buffers, they are not boxed types anymore
11288 2005-06-20 Wim Taymans <wim@fluendo.com>
11290 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
11291 Testcase to show error in buffer-on-caps serialisation.
11293 2005-06-20 Andy Wingo <wingo@pobox.com>
11295 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
11296 will be adding to later.
11298 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
11299 if its socks fill with rocks.
11300 (gst_system_clock_obtain): Set the name on object construction.
11301 Avoid double-checked locking.
11303 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
11305 * gst/gsturi.c: (gst_element_make_from_uri):
11306 Fix potential endless loop.
11308 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
11310 * check/Makefile.am:
11312 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
11314 move over from testsuite dir and clean up
11317 * testsuite/Makefile.am:
11318 * testsuite/tags/.cvsignore:
11319 * testsuite/tags/Makefile.am:
11320 * testsuite/tags/merge.c:
11321 remove testsuite/tags
11323 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
11325 * docs/gst/gstreamer-sections.txt:
11326 * docs/gst/tmpl/gstenumtypes.sgml:
11327 * win32/gstenumtypes.c:
11328 clean up documentation build a little
11330 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
11332 * check/gstcheck.h:
11333 add macros for checking refcounts on objects and caps
11334 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
11335 add some more unit tests
11336 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
11337 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
11338 fix leaked refcounts (I hope :)) so unittest works
11342 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
11344 * configure.ac: back to HEAD
11346 === release 0.9.1 ===
11348 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
11354 2005-06-17 Andy Wingo <wingo@pobox.com>
11356 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
11357 assert; it's always possible that the pad gets deactivated in
11358 between the checks in gstpad.c and the implementation. Rely on
11359 finish_preroll() to return a FLUSHING or similar instead of on the
11362 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
11363 clock and post an EOS message if we come out of finish_preroll in
11366 2005-06-16 David Schleef <ds@schleef.org>
11368 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
11369 (gst_capsfilter_set_property): Allow NULL as possible value
11370 for filter_caps property, indicating GST_CAPS_ANY.
11372 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
11374 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
11376 * gst/schedulers/Makefile.am:
11378 * gstreamer.spec.in:
11381 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
11383 * gstreamer.spec.in:
11386 2005-06-08 Andy Wingo <wingo@pobox.com>
11388 * gst/gstutils.c: RPAD fixes all around.
11389 (gst_element_link_pads): Refcounting fixes.
11391 * tools/gst-inspect.c:
11392 * tools/gst-xmlinspect.c:
11394 * gst/base/gsttypefindhelper.c:
11395 * gst/base/gstbasesink.c:
11396 * gst/gstqueue.c: RPAD fixes.
11398 * gst/gstghostpad.h:
11399 * gst/gstghostpad.c: New ghost pad implementation as full proxy
11400 pads. The tricky thing is they provide both source and sink
11401 interfaces, since they proxy the internal pad for the external
11402 pad, and vice versa. Implement with lower-level ProxyPad objects,
11403 with the interior proxy pad as a child of the exterior ghost pad.
11404 Should write a doc on this.
11406 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
11407 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
11410 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
11411 pads are real pads. No ghost pads in this file. Not documenting
11412 the myriad s/RPAD/PAD/ and REALIZE fixes.
11413 (gst_pad_class_init): Add properties for "direction" and
11414 "template". Both are construct-only, so they can't change during
11415 the life of the pad. Fixes properly deriving from GstPad.
11416 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
11417 derived objects, just set properties when creating the objects via
11419 (gst_pad_get_parent): Implement as a function, return NULL if the
11420 parent is not an element.
11421 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
11422 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
11424 * gst/gstobject.c (gst_object_class_init): Make name a construct
11425 property. Don't set it in the object init.
11427 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
11428 with UNKNOWN direction.
11429 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
11430 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
11431 (gst_element_remove_pad): Remove ghost-pad special cases.
11432 (gst_element_pads_activate): Remove rpad cruft.
11434 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
11435 catch the pad's-parent-not-an-element case.
11437 * gst/gst.h: Include gstghostpad.h.
11439 * gst/gst.c (init_post): No more real, ghost pads.
11441 * gst/Makefile.am: Add gstghostpad.[ch].
11443 * check/Makefile.am:
11444 * check/gst/gstbin.c:
11445 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
11446 into a bin creates ghost pads, and that the refcounts are right.
11447 Partly moved from gstbin.c.
11449 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
11451 * check/gst-libs/.cvsignore:
11452 * check/gst/.cvsignore:
11453 * check/pipelines/.cvsignore:
11455 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
11456 (START_TEST), (cleanup_suite), (main):
11457 add some tests related to cleanup after running pipelines
11459 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
11461 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
11462 add a testsuite for GstBuffer
11464 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
11466 * gst/gstminiobject.h:
11467 add defines for accessing the refcount
11469 2005-06-03 Stefan Kost <ensonic@users.sf.net>
11471 * Makefile.am: added support for html unit test coverage reports
11473 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
11475 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
11476 Free existing caps if the capsfilter changes. Add a FIXME about
11477 setting those caps on the pads.
11479 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
11480 Before adding a ghost pad to a parent bin, check that there isn't
11481 already one for the element on the bin. Prevents infinite recursion
11482 when using decodebin in parse pipelines. Andy says he'll rewrite the
11483 way this works anyway, so ignore the hack.
11485 2005-06-02 Andy Wingo <wingo@pobox.com>
11487 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
11488 file size, pass it on to the type find helper.
11490 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
11491 segment_start and segment_end properly according to the seek
11492 method. Segment_end is still a bit flaky because offset can be
11493 negative for CUR and END cases, but it takes -1 as an "unset"
11496 2005-06-02 Wim Taymans <wim@fluendo.com>
11498 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
11499 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
11500 (gst_basesink_activate):
11501 * gst/base/gstbasesink.h:
11502 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11503 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
11504 (gst_pad_query), (gst_pad_start_task):
11506 * gst/gstqueue.c: (gst_queue_bufferalloc),
11507 (gst_queue_handle_sink_event), (gst_queue_chain):
11508 Bufferalloc: return GstFlowReturn to more accuratly report
11509 why allocation failed.
11511 2005-06-02 Wim Taymans <wim@fluendo.com>
11513 * gst/gstpipeline.c: (gst_pipeline_send_event):
11514 Take snapshot of state without blocking.
11516 2005-06-02 Wim Taymans <wim@fluendo.com>
11518 * docs/design/part-TODO.txt:
11519 * docs/design/part-caps.txt:
11520 * docs/design/part-clocks.txt:
11521 * docs/design/part-negotiation.txt:
11522 * docs/design/part-preroll.txt:
11525 2005-05-30 Wim Taymans <wim@fluendo.com>
11527 * gst/elements/gstidentity.c: (gst_identity_event),
11528 (gst_identity_transform), (gst_identity_get_property):
11529 Protect last_message property as it is accessed from
11532 2005-05-30 Wim Taymans <wim@fluendo.com>
11534 * gst/gstelement.c: (gst_element_init),
11535 (gst_element_pads_activate), (gst_element_change_state):
11536 Slicker pad activation code.
11538 2005-05-30 Wim Taymans <wim@fluendo.com>
11541 * gst/gstelement.h:
11542 * gst/gstelementfactory.h:
11544 Move elementfactory methods to separate .h file.
11546 2005-05-30 Wim Taymans <wim@fluendo.com>
11548 * docs/design/part-overview.txt:
11549 * gst/gstsystemclock.h:
11550 Small typo fixes, doc updates.
11552 2005-05-30 Wim Taymans <wim@fluendo.com>
11554 * gst/gst.c: (gst_init_get_popt_table), (init_post),
11555 (init_popt_callback):
11556 Remove cpu-opt flag.
11558 2005-05-30 Wim Taymans <wim@fluendo.com>
11560 * gst/gstbuffer.c: (gst_subbuffer_finalize),
11561 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
11563 Avoid typechecking in places where not needed.
11564 Added accessor for malloc_data.
11566 2005-05-30 Wim Taymans <wim@fluendo.com>
11568 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
11569 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
11570 (gst_pad_configure_sink), (gst_pad_configure_src),
11571 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
11572 (gst_pad_start_task):
11573 Propagate errors from _set_caps() in configure_src/sink
11574 functions instead of returning TRUE.
11575 FLUSH events can travel up and downstream
11578 2005-05-30 Wim Taymans <wim@fluendo.com>
11580 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
11581 (gst_basesink_activate):
11582 Handle EOS in preroll.
11584 2005-05-30 Wim Taymans <wim@fluendo.com>
11586 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
11587 (gst_queue_loop), (gst_queue_handle_src_event):
11588 Remove old pieces of code
11589 Flushing the queue in an upstream event is a very bad idea.
11591 2005-05-26 Andy Wingo <wingo@pobox.com>
11593 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
11594 gst_value_set_mini_object so as to add a ref on the object (which
11595 will be removed when the value is unset).
11597 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
11598 arg type in ::handoff.
11600 * gst/gstelement.c (gst_element_change_state): Also deactivate
11601 pads in READY->NULL, just in case the element didn't make it to
11602 PAUSED. Wingo tested, Wim approved.
11604 2005-05-26 Wim Taymans <wim@fluendo.com>
11606 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11607 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
11608 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
11609 A flushing pad cannot be used to alloc_buffer from.
11611 2005-05-26 Wim Taymans <wim@fluendo.com>
11613 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
11614 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
11615 (gst_bus_source_dispatch), (gst_bus_source_finalize),
11616 (gst_bus_create_watch), (gst_bus_add_watch_full):
11618 Implement a real GSource and use g_main_context_wakeup() to
11619 signal new messages instead of the socketpair.
11621 2005-05-25 Wim Taymans <wim@fluendo.com>
11623 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
11624 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
11625 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11626 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
11627 (gst_pad_send_event), (gst_pad_start_task):
11628 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
11629 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
11630 (gst_queue_sink_activate), (gst_queue_src_activate),
11631 (gst_queue_change_state):
11633 Fix state changes for non sinks. We now change sinks, then elements
11634 with unconnected srcpads, then the rest.
11635 More efficient queue unlocking in flush and state changes.
11636 Set the pad activate mode even if it does not have an activate
11639 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11641 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
11642 Don't go in pull mode for non-seekable sources.
11643 * gst/elements/gsttypefindelement.h:
11644 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
11645 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
11646 (free_entry), (stop_typefinding),
11647 (gst_type_find_element_handle_event), (find_peek),
11648 (gst_type_find_element_chain), (do_pull_typefind),
11649 (gst_type_find_element_change_state):
11650 Allow typefinding (w/o seeking) in push-mode, simplified version
11651 of what was in 0.8.
11652 * gst/gstutils.c: (gst_buffer_join):
11654 gst_buffer_join() from 0.8.
11656 2005-05-25 Wim Taymans <wim@fluendo.com>
11658 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11659 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
11660 (gst_pad_send_event), (gst_pad_start_task):
11661 Disable attempt at mode switching until it is figured out.
11663 2005-05-25 Wim Taymans <wim@fluendo.com>
11665 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
11666 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
11667 (gst_basesink_finish_preroll), (gst_basesink_chain),
11668 (gst_basesink_loop), (gst_basesink_activate),
11669 (gst_basesink_change_state):
11670 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
11671 (gst_basesrc_get_range), (gst_basesrc_loop),
11672 (gst_basesrc_activate):
11673 * gst/elements/gsttee.c: (gst_tee_sink_activate):
11674 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
11675 (gst_real_pad_init), (gst_real_pad_set_property),
11676 (gst_real_pad_get_property), (gst_pad_set_active),
11677 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
11678 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
11679 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
11680 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
11681 (gst_pad_event_default_dispatch), (gst_pad_event_default),
11682 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
11683 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
11684 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
11685 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
11686 (gst_pad_stop_task):
11688 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
11689 (gst_queue_loop), (gst_queue_src_activate):
11690 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
11691 (gst_task_get_state):
11693 * gst/schedulers/threadscheduler.c:
11694 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
11695 Implement gst_pad_pause/start/stop_task(), take STREAM lock
11697 Remove ACTIVE pad flag, use FLUSHING everywhere
11698 Added _pad_chain(), _pad_get_range() to call chain/getrange
11700 Add locks around IS_FLUSHING when reading.
11701 Take STREAM lock in chain(), get_range() functions so plugins
11702 don't need to take it anymore.
11706 2005-05-25 Wim Taymans <wim@fluendo.com>
11708 * tools/gst-launch.c: (event_loop):
11709 Unref message after using its contents instead of
11712 2005-05-24 Wim Taymans <wim@fluendo.com>
11714 * docs/design/draft-ghostpads.txt:
11715 * docs/design/draft-push-pull.txt:
11716 * docs/design/draft-query.txt:
11717 * docs/design/part-overview.txt:
11718 Docs updates, added general overview doc.
11720 2005-05-21 David Schleef <ds@schleef.org>
11722 * docs/gst/tmpl/old/GstBin.sgml:
11723 * docs/gst/tmpl/old/GstBuffer.sgml:
11724 * docs/gst/tmpl/old/GstCaps.sgml:
11725 * docs/gst/tmpl/old/GstClock.sgml:
11726 * docs/gst/tmpl/old/GstCompat.sgml:
11727 * docs/gst/tmpl/old/GstData.sgml:
11728 * docs/gst/tmpl/old/GstElement.sgml:
11729 * docs/gst/tmpl/old/GstEvent.sgml:
11730 * docs/gst/tmpl/old/GstIndex.sgml:
11731 * docs/gst/tmpl/old/GstStructure.sgml:
11732 * docs/gst/tmpl/old/GstTag.sgml:
11733 * docs/gst/tmpl/old/cothreads.sgml:
11734 * docs/gst/tmpl/old/cothreads_compat.sgml:
11735 * docs/gst/tmpl/old/gettext.sgml:
11736 * docs/gst/tmpl/old/gobject2gtk.sgml:
11737 * docs/gst/tmpl/old/grammar.tab.sgml:
11738 * docs/gst/tmpl/old/gst-i18n-app.sgml:
11739 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
11740 * docs/gst/tmpl/old/gst_private.sgml:
11741 * docs/gst/tmpl/old/gstaggregator.sgml:
11742 * docs/gst/tmpl/old/gstarch.sgml:
11743 * docs/gst/tmpl/old/gstatomic_impl.sgml:
11744 * docs/gst/tmpl/old/gstbufferstore.sgml:
11745 * docs/gst/tmpl/old/gstdata_private.sgml:
11746 * docs/gst/tmpl/old/gstdisksink.sgml:
11747 * docs/gst/tmpl/old/gstdisksrc.sgml:
11748 * docs/gst/tmpl/old/gstelementfactory.sgml:
11749 * docs/gst/tmpl/old/gstextratypes.sgml:
11750 * docs/gst/tmpl/old/gstfakesink.sgml:
11751 * docs/gst/tmpl/old/gstfakesrc.sgml:
11752 * docs/gst/tmpl/old/gstfdsink.sgml:
11753 * docs/gst/tmpl/old/gstfdsrc.sgml:
11754 * docs/gst/tmpl/old/gstfilesink.sgml:
11755 * docs/gst/tmpl/old/gstfilesrc.sgml:
11756 * docs/gst/tmpl/old/gsthttpsrc.sgml:
11757 * docs/gst/tmpl/old/gstidentity.sgml:
11758 * docs/gst/tmpl/old/gstindexfactory.sgml:
11759 * docs/gst/tmpl/old/gstmarshal.sgml:
11760 * docs/gst/tmpl/old/gstmd5sink.sgml:
11761 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
11762 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
11763 * docs/gst/tmpl/old/gstpadtemplate.sgml:
11764 * docs/gst/tmpl/old/gstpipefilter.sgml:
11765 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
11766 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
11767 * docs/gst/tmpl/old/gstshaper.sgml:
11768 * docs/gst/tmpl/old/gstspider.sgml:
11769 * docs/gst/tmpl/old/gstspideridentity.sgml:
11770 * docs/gst/tmpl/old/gststatistics.sgml:
11771 * docs/gst/tmpl/old/gsttee.sgml:
11772 * docs/gst/tmpl/old/gsttimecache.sgml:
11773 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
11774 * docs/gst/tmpl/old/gstxmlregistry.sgml:
11775 * docs/gst/tmpl/old/gthread-cothreads.sgml:
11776 * docs/gst/tmpl/old/types.sgml:
11777 I didn't intend to add these or check them in.
11779 2005-05-19 David Schleef <ds@schleef.org>
11781 * configure.ac: Use -no-common everywhere. In a sane world, it
11782 would be the default in libtool, because without it, you can't
11783 build DLLs on Windows.
11784 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
11785 * docs/gst/gstreamer-sections.txt:
11786 * docs/gst/tmpl/gstcpu.sgml:
11787 * docs/gst/tmpl/gstdata.sgml:
11788 * docs/gst/tmpl/gstthread.sgml:
11790 2005-05-19 David Schleef <ds@schleef.org>
11792 * gst/gstminiobject.c: (gst_value_set_mini_object),
11793 (gst_value_take_mini_object), (gst_value_get_mini_object):
11794 * gst/gstminiobject.h: Add GValue set/get functions.
11796 2005-05-19 Wim Taymans <wim@fluendo.com>
11798 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
11799 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
11800 (gst_subbuffer_init), (gst_buffer_is_span_fast):
11802 * gst/gstbus.c: (gst_bus_post):
11803 * gst/gstelement.c: (gst_element_get_random_pad):
11804 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
11805 Make subbufer unref the parent in finalize.
11806 some more debugging info.
11809 2005-05-19 Wim Taymans <wim@fluendo.com>
11811 * gst/base/gstbasesink.c: (gst_basesink_class_init),
11812 (gst_basesink_init), (gst_basesink_finalize),
11813 (gst_basesink_activate), (gst_basesink_change_state):
11814 Don't free preroll queue too early.
11816 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11820 Hi, I'm outdated. Please shoot me.
11822 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11824 * gst/gstpipeline.c: (gst_pipeline_send_event):
11825 Do not access variables after they have been deleted.
11827 2005-05-19 Wim Taymans <wim@fluendo.com>
11829 * tools/gst-inspect.c: (print_plugin_features):
11830 A plugin feature does unfortunatly not use the
11833 2005-05-18 Wim Taymans <wim@fluendo.com>
11835 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
11836 Port _span() functions to new subbuffers.
11838 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11840 * gst/gstbin.c: (gst_bin_add_func):
11841 Fix clock settery in bins when adding kids after the clock has
11844 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11846 * gst/elements/gstidentity.c: (gst_identity_class_init):
11847 Workaround until signals support GstMiniObject.
11849 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
11852 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
11854 2005-05-18 Wim Taymans <wim@fluendo.com>
11856 * gst/base/Makefile.am:
11857 * gst/base/gstadapter.c: (gst_adapter_base_init),
11858 (gst_adapter_class_init), (gst_adapter_init),
11859 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
11860 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
11861 (gst_adapter_flush), (gst_adapter_available),
11862 (gst_adapter_available_fast):
11863 * gst/base/gstadapter.h:
11864 Ported and added adapter to the base classes.
11866 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
11869 * gst/gstmessage.c:
11870 Make sure the class is reffed/unreffed once before threads can be
11871 used. Fixes #304551.
11873 2005-05-17 Wim Taymans <wim@fluendo.com>
11875 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
11876 (gst_basesink_chain_unlocked), (gst_basesink_activate):
11877 * gst/gstminiobject.c: (gst_mini_object_get_type),
11878 (gst_mini_object_free):
11879 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
11880 (gst_pad_push), (gst_pad_push_event):
11881 * gst/gstqueue.c: (gst_queue_change_state):
11882 Don't queue buffers in basesink when we are flushing.
11883 Unref buffer when flushing in basesink.
11884 Flush queue when going to READY
11885 Unref buffer when _push() returns an error.
11886 Don't free MiniObject instance when refcount is incremented
11887 in _finalize() so that we can recover objects.
11889 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
11891 * docs/manual/advanced-schedulers.xml:
11892 * docs/manual/appendix-checklist.xml:
11893 * docs/pwg/advanced-clock.xml:
11894 * docs/pwg/advanced-interfaces.xml:
11895 * docs/pwg/advanced-request.xml:
11896 * docs/pwg/advanced-types.xml:
11897 * docs/pwg/intro-preface.xml:
11898 * examples/plugins/example.c: (gst_example_get_type),
11899 (gst_example_class_init), (gst_example_chain),
11900 (gst_example_set_property), (gst_example_get_property),
11901 (gst_example_change_state), (plugin_init):
11902 * examples/plugins/example.h:
11905 2005-05-17 Wim Taymans <wim@fluendo.com>
11907 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
11908 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
11909 * gst/gstqueue.c: (gst_queue_change_state):
11910 Clear queue when going to READY.
11911 Remove IN_SETCAPS flag too.
11913 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
11915 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
11916 Remove implicit cast from gboolean to GstElementStateReturn;
11917 make sure we still return failure in paused => ready case if
11918 the parent class fails to change state and our own stop
11921 2005-05-17 Wim Taymans <wim@fluendo.com>
11923 * tools/gst-launch.c: (event_loop):
11924 Message was unreffed too soon.
11926 2005-05-16 Andy Wingo <wingo@pobox.com>
11928 * gst/gstbin.c (sink_iterator_filter): Err... um...
11930 * check/gst/gstbin.c (test_ghost_pads): New test for the
11931 ghosting-if-elements-not-in-same-bin behavior.
11933 2005-05-16 David Schleef <ds@schleef.org>
11935 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
11936 accessing refcount directly.
11938 2005-05-15 David Schleef <ds@schleef.org>
11940 * check/Makefile.am: remove GstData checks
11941 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
11942 * gst/Makefile.am: add miniobject, remove data
11943 * gst/gst.h: add miniobject, remove data
11944 * gst/gstdata.c: remove
11945 * gst/gstdata.h: remove
11946 * gst/gstdata_private.h: remove
11947 * gst/gsttypes.h: remove GstEvent and GstMessage
11948 * gst/gstelement.c: (gst_element_post_message): fix for API changes
11949 * gst/gstmarshal.list: change BOXED -> OBJECT
11951 Implement GstMiniObject.
11952 * gst/gstminiobject.c:
11953 * gst/gstminiobject.h:
11955 Modify to be subclasses of GstMiniObject.
11956 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
11957 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
11958 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
11959 (gst_subbuffer_get_type), (gst_subbuffer_init),
11960 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
11963 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
11964 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
11965 (_gst_event_copy), (gst_event_new):
11967 * gst/gstmessage.c: (_gst_message_initialize),
11968 (gst_message_get_type), (gst_message_class_init),
11969 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
11970 (gst_message_new), (gst_message_new_error),
11971 (gst_message_new_warning), (gst_message_new_tag),
11972 (gst_message_new_state_changed), (gst_message_new_application):
11973 * gst/gstmessage.h:
11974 * gst/gstprobe.c: (gst_probe_perform),
11975 (gst_probe_dispatcher_dispatch):
11977 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
11978 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
11979 (_gst_query_copy), (gst_query_new):
11981 Update elements for GstData -> GstMiniObject changes
11983 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
11984 (gst_queue_chain), (gst_queue_loop):
11985 * gst/elements/gstbufferstore.c:
11986 (gst_buffer_store_add_buffer_func),
11987 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
11988 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
11989 (gst_fakesink_render):
11990 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
11991 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
11992 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
11993 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
11994 (gst_filesrc_create_read):
11995 * gst/elements/gstidentity.c: (gst_identity_class_init):
11996 * gst/elements/gsttypefindelement.c:
11997 (gst_type_find_element_src_event), (free_entry_buffers),
11998 (gst_type_find_element_handle_event):
11999 * libs/gst/dataprotocol/dataprotocol.c:
12000 (gst_dp_header_from_buffer):
12001 * libs/gst/dataprotocol/dataprotocol.h:
12002 * libs/gst/dataprotocol/dp-private.h:
12004 2005-05-15 David Schleef <ds@schleef.org>
12006 * gst/elements/gstelements.c: Don't include headers that were
12009 2005-05-15 David Schleef <ds@schleef.org>
12011 * gst/elements/Makefile.am: Remove some elements that don't
12012 need to be in the core (or even exist at all).
12013 * gst/elements/gstaggregator.c:
12014 * gst/elements/gstaggregator.h:
12015 * gst/elements/gstmd5sink.c:
12016 * gst/elements/gstmd5sink.h:
12017 * gst/elements/gstmultifilesrc.c:
12018 * gst/elements/gstmultifilesrc.h:
12019 * gst/elements/gstpipefilter.c:
12020 * gst/elements/gstpipefilter.h:
12021 * gst/elements/gstshaper.c:
12022 * gst/elements/gstshaper.h:
12023 * gst/elements/gststatistics.c:
12024 * gst/elements/gststatistics.h:
12025 * po/POTFILES.in: Remove above files.
12027 2005-05-14 Andy Wingo <wingo@pobox.com>
12029 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
12030 so as to get the refs right.
12031 (sink_iterator_filter): New function, wraps bin_element_is_sink,
12032 unreffing objects that don't pass the filter.
12034 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
12035 gst_element_set_bus.
12036 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
12037 normal cases, this will destroy the bus.
12039 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
12042 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
12045 2005-05-13 Andy Wingo <wingo@pobox.com>
12047 * gst/gstutils.c (gst_element_link_pads): Instead of calling
12048 gst_pad_link, call pad_link_maybe_ghosting,
12049 (pad_link_maybe_ghosting): Links pads, making sure that the
12050 elements being linked are in the same bin.
12051 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
12052 Helpers for pad_link_maybe_ghosting.
12054 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
12057 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
12059 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
12061 * docs/design/part-element-source.txt:
12064 2005-05-12 Wim Taymans <wim@fluendo.com>
12066 * gst/base/gstbasesink.c: (gst_basesink_init),
12067 (gst_basesink_activate):
12068 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
12069 (gst_basesrc_is_seekable):
12070 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
12071 (bin_element_is_sink), (gst_bin_change_state):
12072 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
12073 * gst/gstelement.h:
12074 Identify sinks by their flag to avoid overly complicated
12076 Do state changes even for elements not reachable from the
12078 BaseSink is a sink now :)
12079 Some more debugging info in the basesrc.
12082 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12084 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
12085 Implement _query on a bin, similar to _send_event.
12087 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
12089 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
12090 Discont event offset format should be GST_FORMAT_BYTES,
12091 not GST_FORMAT_TIME.
12093 2005-05-12 Wim Taymans <wim@fluendo.com>
12095 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
12096 Same fix as Ronald's but without the signal.
12098 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12100 * gst/gstutils.c: (gst_element_query_position):
12101 No, an element is not a pad.
12103 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12105 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
12106 (gst_bin_get_state):
12107 If a child is removed from a bin while we remove the child from
12108 the bin and while we're retrieving its state, signal this to the
12109 get_state function so we abort the wait (instead of waiting for
12110 a timeout) and can immediately re-iterate over all other elements.
12112 2005-05-12 Wim Taymans <wim@fluendo.com>
12114 * gst/base/Makefile.am:
12115 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
12116 (gst_basesrc_start):
12117 * gst/base/gstbasesrc.h:
12118 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
12119 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
12120 (gst_pushsrc_init), (gst_pushsrc_create):
12121 * gst/base/gstpushsrc.h:
12122 Added is_seekable to BaseSrc
12123 Added simple PushSrc.
12125 2005-05-11 Wim Taymans <wim@fluendo.com>
12127 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
12128 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12129 (gst_element_link_pads), (gst_element_query_position),
12130 (gst_element_query_convert), (intersect_caps_func),
12131 (gst_pad_query_position), (gst_pad_query_convert):
12132 Fix refcounting in utils function.
12133 No point in trying to activate a pad when it's added, it could
12134 be added from the state change function and then we deadlock, the
12135 element has to decide what to do.
12137 2005-05-10 Andy Wingo <wingo@pobox.com>
12139 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
12140 *all* the arguments.
12142 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
12143 stream lock if it's a FLUSH_DONE; normal flushes don't get the
12144 lock (according to the docs -- if this is wrong change the docs).
12146 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
12147 flush messages in the NULL state.
12149 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
12150 message immediately and return.
12151 (gst_bus_set_flushing): New function. If a bus is flushing, it
12152 flushes out any queued messages and immediately unrefs new
12153 messages. This is so when an element goes to NULL, all of the
12154 unhandled messages coming from it can be freed, and their
12155 references to the element dropped. In other words: message source
12156 ref considered harmful :P
12158 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
12159 we're finished with it.
12161 * gst/gstmessage.c (gst_message_new_state_changed):
12163 2005-05-10 Wim Taymans <wim@fluendo.com>
12165 * gst/gstvalue.c: (gst_value_compare_flags),
12166 (gst_value_serialize_flags), (gst_value_deserialize_flags),
12167 (_gst_value_initialize):
12168 Added flags serialize/deserialize/compare code.
12170 2005-05-09 Andy Wingo <wingo@pobox.com>
12172 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
12173 Intersect the peer's caps with our caps.
12175 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12177 * gst/base/gsttypefindhelper.c: (helper_find_peek):
12178 * gst/elements/gsttypefindelement.c: (find_peek):
12179 Handle negative offsets better. Fixes decodebin.
12181 2005-05-09 Wim Taymans <wim@fluendo.com>
12183 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
12184 (gst_base_transform_event):
12185 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
12186 Implement accept_caps.
12187 Fix silly lock/unlock mismatch in base class.
12189 2005-05-09 Wim Taymans <wim@fluendo.com>
12191 * docs/design/draft-push-pull.txt:
12192 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
12193 * gst/elements/gstfilesink.c: (gst_filesink_init),
12194 (gst_filesink_query):
12195 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
12196 (gst_type_find_handle_src_query), (find_element_get_length):
12197 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
12198 * gst/gstelement.h:
12199 * gst/gstmessage.c:
12200 * gst/gstmessage.h:
12201 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
12202 (gst_real_pad_get_caps_unlocked),
12203 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
12204 (gst_pad_event_default_dispatch), (gst_pad_event_default),
12205 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
12206 (gst_real_pad_dispose), (gst_real_pad_finalize),
12207 (gst_pad_load_and_link), (gst_pad_save_thyself),
12208 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
12209 (gst_pad_check_pull_range), (gst_pad_pull_range),
12210 (gst_pad_template_get_type), (gst_pad_template_class_init),
12211 (gst_pad_template_init), (gst_pad_template_dispose),
12212 (name_is_valid), (gst_static_pad_template_get),
12213 (gst_pad_template_new), (gst_static_pad_template_get_caps),
12214 (gst_pad_template_get_caps), (gst_pad_set_element_private),
12215 (gst_pad_get_element_private), (gst_pad_start_task),
12216 (gst_pad_pause_task), (gst_pad_stop_task),
12217 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
12218 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
12219 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
12220 (gst_ghost_pad_new):
12222 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
12223 (gst_query_new_position), (gst_query_set_position),
12224 (gst_query_parse_position), (gst_query_new_convert),
12225 (gst_query_set_convert), (gst_query_parse_convert):
12227 * gst/gstqueryutils.c:
12228 * gst/gstqueryutils.h:
12229 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12230 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
12231 (gst_queue_handle_src_query):
12232 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12233 (gst_element_query_position), (gst_element_query_convert),
12234 (intersect_caps_func), (gst_pad_query_position),
12235 (gst_pad_query_convert):
12237 * tools/gst-inspect.c: (print_pad_info):
12238 * tools/gst-xmlinspect.c: (print_element_info):
12239 Remove old query functions. Ported old code.
12240 Added position/convert helper functions to gstutils.
12241 Reordered gstpad.c code, grouping relevant things.
12242 Remove gst_message_new(), always need to speficy a specific
12246 2005-05-09 Andy Wingo <wingo@pobox.com>
12248 * gst/gstiterator.h: Add some includes.
12250 * gst/gstqueryutils.h: Include more headers.
12253 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
12254 some uses of gst_pad_query.
12256 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
12257 NULL out parameters.
12258 (gst_query_new_position): New proc, allocates a new position
12261 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
12262 gstqueryutils.c to the build.
12264 * gst/gststructure.c (gst_structure_set_valist): Implement with
12265 the generic G_VALUE_COLLECT.
12267 2005-05-08 Edward Hervey <bilboed@bilboed.com>
12269 * gst/Makefile.am: (gst_headers):
12270 Added gstqueryutils.h to the list of headers to install, that was
12271 a 'nachty' move wingo :)
12273 2005-05-06 Andy Wingo <wingo@pobox.com>
12276 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
12277 GstData, init a memchunk.
12278 (standard_definitions): Add a few query types, deprecate a few.
12279 (gst_query_get_type): New proc.
12280 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
12282 (gst_query_new_application, gst_query_get_structure): New public
12285 * docs/design/draft-query.txt: Removed LINKS from the query types,
12286 because all the rest can be dispatched to other pads -- seemed
12287 ugly to have a query that couldn't be dispatched. internal_links
12288 is fine as a pad method.
12290 * gst/gstpad.h: Add query2 as a pad method, add the new functions
12291 in gstpad.c, but maintain binary compatibility for the moment.
12292 Will fix before 0.9 is out.
12294 * gst/gstqueryutils.c:
12295 * gst/gstqueryutils.h: New files, implement 3 methods for each
12296 query type: parse_query, parse_response, and set. Probably need an
12299 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
12301 * gst/elements/gstfilesink.c (gst_filesink_query2):
12302 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
12303 query_types, and formats methods.
12305 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
12306 (gst_pad_set_query2_function): New functions.
12307 (gst_real_pad_init): Set query2_default as the default query2
12308 function. Basically just dispatches to internally linked pads.
12312 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
12313 without using the atomic operations. Only one thread can possibly
12314 be accessing the data at this point. Changed so as to avoid
12315 gst_atomic operations.
12317 2005-05-06 Wim Taymans <wim@fluendo.com>
12319 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
12320 Also set caps if we use the fallback buffer alloc.
12322 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
12324 * docs/gst/Makefile.am:
12325 * docs/gst/gstreamer-docs.sgml:
12326 * docs/gst/gstreamer-sections.txt:
12327 * docs/gst/tmpl/gstatomic.sgml:
12328 * docs/gst/tmpl/gstmemchunk.sgml:
12329 * testsuite/elements/struct_i386.h:
12330 * win32/GStreamer.vcproj:
12332 Purge GstAtomic stuff from docs and win32 makefiles as well
12334 2005-05-06 Wim Taymans <wim@fluendo.com>
12336 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
12337 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
12338 * gst/gstpad.c: (gst_pad_peer_get_caps):
12339 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12340 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
12341 (gst_queue_src_activate), (gst_queue_change_state):
12343 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12344 (intersect_caps_func):
12345 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
12346 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
12347 Some fixes for the peer_get_caps() change.
12349 2005-05-06 Wim Taymans <wim@fluendo.com>
12351 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
12352 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
12353 (gst_basesink_activate):
12354 Actually do something with error codes returned from the push
12357 2005-05-06 Wim Taymans <wim@fluendo.com>
12359 * docs/design/part-element-sink.txt:
12360 * docs/design/part-element-source.txt:
12361 * gst/base/gstbasesink.c: (gst_basesink_class_init),
12362 (gst_basesink_event), (gst_basesink_activate):
12363 * gst/base/gstbasesink.h:
12364 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
12365 (gst_basesrc_activate):
12366 * gst/base/gstbasesrc.h:
12367 * gst/gstelement.c: (gst_element_pads_activate):
12368 Some more documentation.
12369 Fixed scheduling decision in _pads_activate().
12371 2005-05-05 Andy Wingo <wingo@pobox.com>
12373 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
12376 2005-05-05 Wim Taymans <wim@fluendo.com>
12378 * gst/base/Makefile.am:
12379 * gst/base/gstbasesink.h:
12380 * gst/base/gstbasesrc.c: (gst_basesrc_init),
12381 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
12382 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
12383 (gst_collectpads_class_init), (gst_collectpads_init),
12384 (gst_collectpads_finalize), (gst_collectpads_new),
12385 (gst_collectpads_set_function), (gst_collectpads_add_pad),
12386 (find_pad), (gst_collectpads_remove_pad),
12387 (gst_collectpads_is_active), (gst_collectpads_collect),
12388 (gst_collectpads_collect_range), (gst_collectpads_start),
12389 (gst_collectpads_stop), (gst_collectpads_peek),
12390 (gst_collectpads_pop), (gst_collectpads_available),
12391 (gst_collectpads_read), (gst_collectpads_flush),
12392 (gst_collectpads_chain):
12393 * gst/base/gstcollectpads.h:
12394 * gst/elements/Makefile.am:
12395 * gst/elements/gstelements.c:
12396 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
12397 (gst_fakesink_get_times), (gst_fakesink_event),
12398 (gst_fakesink_preroll), (gst_fakesink_render):
12399 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
12400 (gst_filesink_init), (gst_filesink_set_location),
12401 (gst_filesink_open_file), (gst_filesink_close_file),
12402 (gst_filesink_pad_query), (gst_filesink_event),
12403 (gst_filesink_render), (gst_filesink_change_state):
12404 * gst/elements/gstfilesink.h:
12405 Added object to help in making collect pad based elements.
12407 Make event function in sink baseclass return gboolean.
12409 2005-05-05 Wim Taymans <wim@fluendo.com>
12411 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
12412 (gst_bin_get_by_name):
12414 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
12415 (gst_clock_finalize):
12416 * gst/gstdata.c: (gst_data_replace):
12418 * gst/gstelement.c: (gst_element_request_pad),
12419 (gst_element_pads_activate):
12420 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
12421 (gst_object_unref):
12422 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12423 (gst_pad_set_checkgetrange_function),
12424 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
12425 (gst_pad_check_pull_range), (gst_pad_pull_range),
12426 (gst_static_pad_template_get_caps), (gst_pad_start_task),
12427 (gst_pad_pause_task), (gst_pad_stop_task):
12428 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12429 (gst_element_request_pad), (gst_pad_proxy_getcaps):
12430 Fix name lookup in GstBin.
12431 Added _data_replace() function and _buffer_replace()
12432 Use finalize method to clean up clock.
12433 Fix refcounting on request pads.
12434 Fix pad schedule mode error.
12435 Some more object refcounting debug info,
12438 2005-05-04 Andy Wingo <wingo@pobox.com>
12440 * check/Makefile.am:
12441 * docs/gst/tmpl/gstatomic.sgml:
12442 * docs/gst/tmpl/gstplugin.sgml:
12443 * gst/base/gstbasesink.c: (gst_basesink_activate):
12444 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
12445 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
12446 (gst_basesrc_query), (gst_basesrc_set_property),
12447 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
12448 (gst_basesrc_activate):
12449 * gst/base/gstbasesrc.h:
12450 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
12451 (gst_base_transform_src_activate):
12452 * gst/elements/gstelements.c:
12453 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
12454 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
12455 * gst/elements/gsttee.c: (gst_tee_sink_activate):
12456 * gst/elements/gsttypefindelement.c: (find_element_get_length),
12457 (gst_type_find_element_checkgetrange),
12458 (gst_type_find_element_activate):
12459 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
12460 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
12461 (gst_caps_load_thyself):
12462 * gst/gstelement.c: (gst_element_pads_activate),
12463 (gst_element_save_thyself), (gst_element_restore_thyself):
12464 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
12465 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
12467 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
12468 (gst_xml_parse_file), (gst_xml_parse_memory),
12469 (gst_xml_get_element), (gst_xml_make_element):
12470 * gst/indexers/gstfileindex.c: (gst_file_index_load),
12471 (_file_index_id_save_xml), (gst_file_index_commit):
12472 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
12473 (read_enum), (load_pad_template), (load_feature), (load_plugin),
12475 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
12476 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
12477 * tools/gst-complete.c: (main):
12478 * tools/gst-compprep.c: (main):
12479 * tools/gst-inspect.c: (print_element_properties_info):
12480 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
12481 * tools/gst-xmlinspect.c: (print_element_properties):
12484 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
12486 * gst/gstplugin.c: (gst_plugin_check_module),
12487 (gst_plugin_check_file), (gst_plugin_load_file):
12488 apply patch from #172526 to make register work on MacOSX
12490 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
12492 * docs/gst/tmpl/gstconfig.sgml:
12493 * gst/gstconfig.h.in:
12494 move documentation for some symbols. Add doc for GST_PTR_FORMAT
12495 * testsuite/debug/printf_extension.c: (main):
12496 Do not use GST_PTR_FORMAT on pointers to types with
12497 sizeof < sizeof(gpointer). Fixes test on 64-bit
12498 * testsuite/elements/property.h:
12499 use correct printf format
12501 2005-05-02 Wim Taymans <wim@fluendo.com>
12503 * docs/design/draft-push-pull.txt:
12504 * docs/design/draft-query.txt:
12505 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
12506 (gst_basesrc_start):
12507 Added draft for new query API.
12508 Added draft for better selecting scheduling methods.
12509 Make basesrc ignore length if the subclass does not support
12512 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
12515 possible fixes for automake-1.5 - _LIBADD is reserved
12517 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
12519 * docs/faq/Makefile.am:
12520 * docs/manual/Makefile.am:
12521 * docs/manuals.mak:
12522 * docs/pwg/Makefile.am:
12524 possible fixes for automake-1.5
12526 2005-04-28 Wim Taymans <wim@fluendo.com>
12528 * gst/base/gstbasesink.c: (gst_basesink_base_init),
12529 (gst_basesink_pad_getcaps), (gst_basesink_init),
12530 (gst_basesink_do_sync):
12531 * gst/gstclock.c: (gst_clock_entry_new):
12532 * gst/gstevent.c: (gst_event_discont_get_value):
12533 * gst/gstpipeline.c: (pipeline_bus_handler),
12534 (gst_pipeline_change_state):
12535 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
12536 Better debugging of clocking info.
12537 Allow NULL values when getting discont values.
12539 2005-04-27 Wim Taymans <wim@fluendo.com>
12541 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
12542 * check/gst/gstpad.c: (gst_pad_suite):
12543 Increase timeout for checks.
12545 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12547 * check/Makefile.am:
12548 fix the broken rule for cleanup. Apparently this rule is
12549 only needed on FC2, so maybe this warrants further autotool
12552 2005-04-26 Wim Taymans <wim@fluendo.com>
12554 * gst/gsttrashstack.h:
12555 Ooohh. a nasty one! After having a failed pop() from the stack,
12556 it's possible that the stack is empty. In that case, don't
12557 follow the NULL pointer.
12559 2005-04-25 Wim Taymans <wim@fluendo.com>
12561 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12562 (gst_pad_set_checkgetrange_function),
12563 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
12564 (gst_pad_check_pull_range), (gst_pad_pull_range),
12565 (gst_static_pad_template_get_caps), (gst_pad_start_task),
12566 (gst_pad_pause_task), (gst_pad_stop_task):
12567 * gst/gstplugin.c: (gst_plugin_load):
12569 Remove gst_library_load as it does more harm than good with
12570 the new g_module flags.
12571 Revert bogus caps template check in pad linking, pad caps
12572 are important when linking not the template, which is more
12573 general than the current caps.
12575 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12577 * gst/autoplug/.cvsignore:
12578 * gst/autoplug/Makefile.am:
12579 * gst/autoplug/gstsearchfuncs.c:
12580 * gst/autoplug/gstsearchfuncs.h:
12581 * gst/autoplug/gstspider.c:
12582 * gst/autoplug/gstspider.h:
12583 * gst/autoplug/gstspideridentity.c:
12584 * gst/autoplug/gstspideridentity.h:
12585 * gst/autoplug/spidertest.c:
12588 2005-04-25 Wim Taymans <wim@fluendo.com>
12590 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12591 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
12592 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
12593 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
12595 Added stubs for unimplemented functions.
12597 2005-04-24 David Schleef <ds@schleef.org>
12599 * gst/gstpad.h: Disable some unimplemented functions. Wim,
12602 2005-04-24 David Schleef <ds@schleef.org>
12604 Convert everything from GstAtomicInt to g_atomic_int_*, and
12609 * gst/gstatomic_impl.h:
12617 * gst/gstdata_private.h:
12621 * gst/gstmessage.c:
12624 * gst/gststructure.c:
12625 * gst/gststructure.h:
12626 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
12629 2005-04-24 David Schleef <ds@schleef.org>
12631 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
12632 make the regressions tests work. Remove some code that is no
12634 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
12635 Disable warning for pads without templates.
12637 2005-04-24 David Schleef <ds@schleef.org>
12639 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
12640 functions that handle filtered links.
12641 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
12643 * gst/gstutils.c: Fix/remove utility functions that handle
12646 * gst/gstvalue.c: Add serialization/deserialization of caps
12647 * gst/parse/grammar.y: Ignore filtered caps when linking. This
12648 requires fixing so that the filter caps notation creates
12649 a capsfilter element and sets the filter_caps property. I
12650 think everyone probably wants to keep the shorthand notation.
12651 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
12652 * docs/gst/tmpl/gstpad.sgml:
12654 * gst/elements/gstelements.c: Register capsfilter element.
12655 * gst/Makefile.am: fix spacing
12656 * docs/random/ds/0.9-suggested-changes: random
12658 2005-04-23 David Schleef <ds@schleef.org>
12660 * gst/elements/Makefile.am:
12661 * gst/elements/gstcapsfilter.c: New element that acts like an
12662 identity, but filters caps. Will eventually replace filtered
12663 caps in pad linking.
12664 * gst/gstutils.c: (gst_element_create_all_pads): New function
12665 to create all the ALWAYS pads that are registered with an
12666 element class. This functionality should eventually be
12667 merged in with GstElement initialization.
12669 * testsuite/trigger/README: part of trigger test code that should
12670 have been checked in a long time ago.
12672 2005-04-23 David Schleef <ds@schleef.org>
12674 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
12675 needed with new versions of libtool (nobody will confirm this),
12676 and hard to carry around.
12677 * gst/autoplug/Makefile.am:
12678 * gst/base/Makefile.am:
12679 * gst/elements/Makefile.am:
12680 * gst/indexers/Makefile.am:
12681 * gst/schedulers/Makefile.am:
12682 * libs/gst/bytestream/Makefile.am:
12683 * libs/gst/control/Makefile.am:
12684 * libs/gst/dataprotocol/Makefile.am:
12685 * libs/gst/getbits/Makefile.am:
12687 2005-04-21 Wim Taymans <wim@fluendo.com>
12689 * docs/design/draft-push-pull.txt:
12690 * docs/design/part-MT-refcounting.txt:
12691 * docs/design/part-TODO.txt:
12692 * docs/design/part-caps.txt:
12693 * docs/design/part-events.txt:
12694 * docs/design/part-gstbus.txt:
12695 * docs/design/part-gstpipeline.txt:
12696 * docs/design/part-messages.txt:
12697 * docs/design/part-push-pull.txt:
12698 * docs/design/part-query.txt:
12701 2005-04-21 Wim Taymans <wim@fluendo.com>
12703 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
12704 (gst_message_new), (gst_message_new_error),
12705 (gst_message_new_warning), (gst_message_new_tag),
12706 (gst_message_new_state_changed), (gst_message_new_application),
12707 (gst_message_get_structure):
12708 * gst/gstmessage.h:
12709 * gst/gststructure.c: (gst_structure_set_parent_refcount),
12710 (gst_structure_copy_conditional):
12711 Use parent refcount in GstMessage to ensure GstStructure
12713 Cleaned up headers a bit.
12716 2005-04-20 Wim Taymans <wim@fluendo.com>
12718 * gst/base/gstbasesink.c: (gst_basesink_base_init),
12719 (gst_basesink_pad_getcaps), (gst_basesink_init),
12720 (gst_basesink_chain_unlocked):
12721 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
12722 (gst_type_find_helper):
12723 * gst/elements/gsttypefindelement.c:
12724 (gst_type_find_element_have_type), (gst_type_find_element_init),
12725 (stop_typefinding), (gst_type_find_element_handle_event),
12726 (find_suggest), (gst_type_find_element_chain),
12727 (gst_type_find_element_checkgetrange),
12728 (gst_type_find_element_getrange), (do_typefind),
12729 (gst_type_find_element_activate):
12730 * gst/gstbuffer.c: (_gst_buffer_sub_free),
12731 (gst_buffer_default_free), (gst_buffer_default_copy),
12732 (gst_buffer_set_caps):
12733 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
12734 (gst_caps_replace):
12735 * gst/gstmessage.c: (gst_message_new),
12736 (gst_message_new_state_changed):
12737 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12738 (gst_pad_set_checkgetrange_function),
12739 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
12740 (gst_pad_set_caps), (gst_pad_check_pull_range),
12741 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
12743 * gst/gsttypefind.c: (gst_type_find_register):
12744 Make gst_caps_replace() work like other _replace() functions.
12745 Use _caps_replace() where possible.
12746 Make sure _message_new() initialises its field.
12747 Add gst_static_pad_template_get_caps()
12750 2005-04-18 Andy Wingo <wingo@pobox.com>
12752 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
12753 on the peer, not the pad. I think that was a typo. Pass an extra
12754 arg to see if random access is possible. Activate the pads as
12755 PULL_RANGE if possible.
12757 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
12759 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
12760 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
12763 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12765 * docs/faq/using.xml:
12766 Add note on gstreamer-properties (#154996).
12768 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12770 * docs/random/bbb/optional-properties:
12771 Some analysis on optional properties.
12773 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12775 * docs/gst/tmpl/gstelementfactory.sgml:
12776 * gst/gstelement.h:
12777 * gst/gstelementfactory.c: (gst_element_factory_init),
12778 (gst_element_factory_cleanup), (gst_element_register),
12779 (__gst_element_factory_add_static_pad_template),
12780 (gst_element_factory_get_static_pad_templates),
12781 (gst_element_factory_can_src_caps),
12782 (gst_element_factory_can_sink_caps):
12783 * gst/registries/Makefile.am:
12784 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
12785 (gst_xml_registry_class_init), (gst_xml_registry_init),
12786 (gst_xml_registry_new), (gst_xml_registry_set_property),
12787 (gst_xml_registry_get_property), (get_time), (make_dir),
12788 (gst_xml_registry_get_perms_func),
12789 (plugin_times_older_than_recurse), (plugin_times_older_than),
12790 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
12791 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
12792 (add_to_char_array), (read_string), (read_uint), (read_enum),
12793 (load_pad_template), (load_feature), (load_plugin), (load_paths),
12794 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
12795 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
12796 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
12797 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
12798 (gst_xml_registry_rebuild):
12799 * gst/registries/gstlibxmlregistry.h:
12800 * tools/gst-compprep.c: (main):
12801 * tools/gst-inspect.c: (print_pad_templates_info):
12802 * tools/gst-xmlinspect.c: (print_element_info):
12803 Use libxml2 for registry parsing, use staticpadtemplates in
12804 elementfactories. Makes gst_init() +/- 10x faster.
12806 2005-04-12 Wim Taymans <wim@fluendo.com>
12808 * gst/base/Makefile.am:
12809 * gst/base/gstbasesink.c: (gst_basesink_base_init),
12810 (gst_basesink_pad_getcaps), (gst_basesink_init),
12811 (gst_basesink_event), (gst_basesink_change_state):
12812 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12813 (gst_basesrc_init), (gst_basesrc_query),
12814 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
12815 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
12816 (gst_basesrc_check_get_range), (gst_basesrc_loop),
12817 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
12818 (gst_basesrc_stop), (gst_basesrc_activate),
12819 (gst_basesrc_change_state):
12820 * gst/base/gsttypefindhelper.c: (helper_find_peek),
12821 (helper_find_suggest), (gst_type_find_helper):
12822 * gst/base/gsttypefindhelper.h:
12823 * gst/elements/Makefile.am:
12824 * gst/elements/gstelements.c:
12825 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
12826 (gst_fakesink_get_times), (gst_fakesink_event),
12827 (gst_fakesink_preroll), (gst_fakesink_render):
12828 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
12829 (gst_fakesrc_init), (gst_fakesrc_event_handler),
12830 (gst_fakesrc_get_property), (gst_fakesrc_create),
12831 (gst_fakesrc_start), (gst_fakesrc_stop):
12832 * gst/elements/gstfakesrc.h:
12833 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
12834 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
12835 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
12836 (gst_filesrc_create_read), (gst_filesrc_create),
12837 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
12838 (gst_filesrc_start):
12839 * gst/elements/gsttypefindelement.c:
12840 (gst_type_find_element_have_type), (gst_type_find_element_init),
12841 (start_typefinding), (stop_typefinding), (push_buffer_store),
12842 (gst_type_find_element_handle_event),
12843 (gst_type_find_element_chain),
12844 (gst_type_find_element_checkgetrange),
12845 (gst_type_find_element_getrange), (do_typefind),
12846 (gst_type_find_element_activate),
12847 (gst_type_find_element_change_state):
12848 * gst/elements/gsttypefindelement.h:
12849 * gst/gstpipeline.c: (pipeline_bus_handler):
12850 Added typefind helper.
12851 Small preroll fix in the base sink.
12852 Disable typefind code in basesrc.
12853 Crude port of typefindelement.
12857 2005-04-11 Wim Taymans <wim@fluendo.com>
12859 * check/gst/gstbus.c: (gstbus_suite):
12860 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
12861 * check/gstcheck.h:
12862 Fix up the timeout so that the test does not fail.
12864 2005-04-06 Wim Taymans <wim@fluendo.com>
12867 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12868 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
12869 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
12870 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
12871 (gst_basesrc_check_get_range), (gst_basesrc_loop),
12872 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
12873 (gst_basesrc_stop), (gst_basesrc_activate),
12874 (gst_basesrc_change_state), (basesrc_find_peek),
12875 (basesrc_find_suggest), (gst_basesrc_type_find):
12876 * gst/base/gstbasesrc.h:
12877 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
12878 (gst_filesrc_class_init), (gst_filesrc_init),
12879 (gst_filesrc_finalize), (gst_filesrc_set_location),
12880 (gst_filesrc_set_property), (gst_filesrc_get_property),
12881 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
12882 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
12883 (gst_filesrc_create_read), (gst_filesrc_create),
12884 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
12885 * gst/elements/gstfilesrc.h:
12886 * gst/gstelement.c: (gst_element_get_state_func),
12887 (gst_element_lost_state), (gst_element_pads_activate):
12888 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12889 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
12890 (gst_pad_pull_range):
12892 More work on the generic source base class, implement seeking,
12894 Make filesrc extend the base source class.
12895 Added gst_pad_set_checkgetrange_function to GstPad.
12897 2005-04-06 Andy Wingo <wingo@pobox.com>
12899 * pkgconfig/gstreamer-base.pc.in:
12900 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
12902 * pkgconfig/Makefile.am:
12903 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
12905 2005-04-04 Wim Taymans <wim@fluendo.com>
12907 * gst/base/Makefile.am:
12909 * gst/base/gstbasesink.c: (gst_basesink_base_init),
12910 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
12911 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
12912 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
12913 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12914 (gst_basesrc_base_init), (gst_basesrc_class_init),
12915 (gst_basesrc_init), (gst_basesrc_get_formats),
12916 (gst_basesrc_get_query_types), (gst_basesrc_query),
12917 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
12918 (gst_basesrc_set_property), (gst_basesrc_get_property),
12919 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
12920 (gst_basesrc_loop), (gst_basesrc_activate),
12921 (gst_basesrc_change_state):
12922 * gst/base/gstbasesrc.h:
12923 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
12924 (gst_fakesrc_class_init), (gst_fakesrc_init),
12925 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
12926 (gst_fakesrc_get_property), (gst_fakesrc_create):
12927 * gst/elements/gstfakesrc.h:
12928 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
12929 (gst_filesrc_open_file), (gst_filesrc_loop),
12930 (gst_filesrc_activate), (filesrc_find_peek),
12931 (gst_filesrc_type_find):
12932 Made base source class, make fakesrc extend it.
12933 Add comments to basesink class.
12934 Some filesrc cleanup.
12936 2005-03-31 David Schleef <ds@schleef.org>
12938 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
12939 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
12940 expected to link against libgstreamer.
12941 * gst/base/Makefile.am: link against libgstreamer
12942 * gst/elements/Makefile.am: same
12944 2005-03-31 Andy Wingo <wingo@pobox.com>
12946 * tests/instantiate/Makefile.am:
12947 * tests/instantiate/caps.c: Add test to test speed of caps copy
12950 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
12951 GMemChunk to be fair.
12953 * gst/gsttrashstack.h: Remove warning about using the fallback
12954 trash stack implementation, it's still faster than malloc.
12956 2005-03-30 Andy Wingo <wingo@pobox.com>
12958 * tests/complexity.c: Add a copyright.
12960 2005-03-31 Wim Taymans <wim@fluendo.com>
12962 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
12963 (gst_base_transform_class_init), (gst_base_transform_init),
12964 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
12965 (gst_base_transform_get_property),
12966 (gst_base_transform_sink_activate),
12967 (gst_base_transform_src_activate),
12968 (gst_base_transform_change_state):
12969 * gst/base/gstbasetransform.h:
12970 * gst/elements/gstidentity.c: (gst_identity_class_init),
12971 (gst_identity_event), (gst_identity_check_perfect),
12972 (gst_identity_transform), (gst_identity_start),
12973 (gst_identity_stop):
12974 Added start/stop methods to transform base class so subclasses
12975 don't need to deal with state changes even.
12977 2005-03-31 Wim Taymans <wim@fluendo.com>
12979 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
12980 (gst_event_new_discontinuous), (gst_event_discont_get_value):
12982 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12983 (gst_pad_pull_range):
12984 Added rate to the discont event to prepare for variable speed
12985 and reverse playback.
12987 2005-03-29 David Schleef <ds@schleef.org>
12990 * testsuite/trigger/Makefile.am:
12991 * testsuite/trigger/trigger.c: A little example program to show
12992 how trigger-based elements can work.
12994 2005-03-29 Wim Taymans <wim@fluendo.com>
12996 * gst/base/Makefile.am:
12998 * gst/base/gstbasesink.c: (gst_basesink_get_type),
12999 (gst_basesink_base_init), (gst_basesink_class_init),
13000 (gst_basesink_pad_getcaps), (gst_basesink_init),
13001 (gst_basesink_activate), (gst_basesink_change_state):
13002 * gst/base/gstbasesink.h:
13003 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
13004 (gst_base_transform_base_init), (gst_base_transform_finalize),
13005 (gst_base_transform_class_init), (gst_base_transform_init),
13006 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
13007 (gst_base_transform_event), (gst_base_transform_getrange),
13008 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
13009 (gst_base_transform_set_property),
13010 (gst_base_transform_get_property),
13011 (gst_base_transform_sink_activate),
13012 (gst_base_transform_src_activate),
13013 (gst_base_transform_change_state):
13014 * gst/base/gstbasetransform.h:
13015 * gst/elements/gstidentity.c: (gst_identity_finalize),
13016 (gst_identity_class_init), (gst_identity_init),
13017 (gst_identity_event), (gst_identity_check_perfect),
13018 (gst_identity_transform), (gst_identity_set_property),
13019 (gst_identity_get_property), (gst_identity_change_state):
13020 * gst/elements/gstidentity.h:
13021 * gst/gstelement.c: (gst_element_get_state_func),
13022 (gst_element_lost_state), (gst_element_pads_activate):
13023 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
13024 (gst_pad_check_pull_range), (gst_pad_pull_range):
13026 Simplify pad activation.
13027 Added function to check if pull_range can be performed.
13028 Error out when pulling inactive or flushing pads.
13029 Removed const from refcounted types as it does not make sense.
13030 Simplify pad templates in basesink
13031 Added base class for simple 1-to-1 transforms.
13032 Make identity subclass the base transform.
13034 2005-03-29 Andy Wingo <wingo@pobox.com>
13036 * docs/libs/gstreamer-libs-overrides.txt:
13037 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
13038 really don't understand what's going on, but like whatever. I want
13041 * docs/gst/Makefile.am:
13042 * docs/libs/Makefile.am: Dist the overrides files.
13044 * check/Makefile.am (clean-local): Remove .libs directories.
13046 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
13047 elements to EXTRA_DIST, so po/ files are happy.
13049 * po/POTFILES.in: Er, remove it here.
13051 * po/POTFILES: Remove gstspider.c.
13053 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
13055 * docs/libs/gstreamer-libs-docs.sgml:
13056 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
13059 * tests/complexity.c (main): Set the length of the preroll queue
13060 on the sinks to prevent a lockup.
13062 * libs/gst/dataprotocol/Makefile.am:
13063 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
13064 the same as the one in check/gst-libs/gdp.c.
13066 * po/, docs/gst/: Commit automatic changes to docs and po files.
13068 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
13069 the versioned libgstbase.
13071 * check/Makefile.am: Depend on an unversioned gst-register, seems
13072 to make autoconf happier.
13074 * gst/base/Makefile.am: Make libgstbase a versioned lib.
13076 2005-03-28 Wim Taymans <wim@fluendo.com>
13079 * docs/design/part-gstelement.txt:
13080 * docs/design/part-negotiation.txt:
13081 * docs/design/part-preroll.txt:
13082 * docs/design/part-scheduling.txt:
13083 * docs/design/part-states.txt:
13085 * gst/base/Makefile.am:
13087 * gst/base/gstbasesink.c: (gst_basesink_get_template),
13088 (gst_basesink_base_init), (gst_basesink_class_init),
13089 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
13090 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
13091 (gst_basesink_set_pad_functions),
13092 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
13093 (gst_basesink_set_property), (gst_basesink_get_property),
13094 (gst_base_sink_get_template), (gst_base_sink_get_caps),
13095 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
13096 (gst_basesink_preroll_queue_push),
13097 (gst_basesink_preroll_queue_empty),
13098 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
13099 (gst_basesink_event), (gst_basesink_get_times),
13100 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
13101 (gst_basesink_chain_unlocked), (gst_basesink_chain),
13102 (gst_basesink_loop), (gst_basesink_activate),
13103 (gst_basesink_change_state):
13104 * gst/base/gstbasesink.h:
13105 * gst/elements/Makefile.am:
13106 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
13107 (gst_fakesink_class_init), (gst_fakesink_init),
13108 (gst_fakesink_set_property), (gst_fakesink_get_property),
13109 (gst_fakesink_get_times), (gst_fakesink_event),
13110 (gst_fakesink_preroll), (gst_fakesink_render),
13111 (gst_fakesink_change_state):
13112 * gst/elements/gstfakesink.h:
13113 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
13114 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
13115 * gst/gstelement.c: (gst_element_add_pad),
13116 (gst_element_get_state_func), (gst_element_abort_state),
13117 (gst_element_commit_state), (gst_element_lost_state),
13118 (gst_element_set_state), (gst_element_pads_activate):
13119 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
13120 * gst/gstpipeline.c: (gst_pipeline_send_event),
13121 (gst_pipeline_change_state):
13122 Added state change code.
13123 Added/updated docs.
13124 Added sink base class, make fakesink extend the base class.
13125 Small cleanups in GstPipeline.
13127 2005-03-26 David Schleef <ds@schleef.org>
13129 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
13130 is broken and should be implemented in a different library.
13131 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
13132 * gst/gst.h: remove gstcpu.h
13133 * gst/gstcpu.c: remove
13134 * gst/gstcpu.h: remove
13135 * gst/Makefile.am.future: Remove this file. It's ancient.
13137 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13139 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
13140 (gst_bin_send_event):
13141 Add default event/set_manager handlers. The set_manager handler
13142 takes care that the manager is distributed over kids that were
13143 already in the bin before the manager was set. The event handler
13144 is a utility virtual function that sends the event over all sinks,
13145 so that gst_element_send_event (bin, event); has the expected
13147 * gst/gstpad.c: (gst_pad_event_default):
13148 Re-install default event handling for discontinuities, so that
13149 seeking works without requiring hacks in applications or extra
13151 * gst/gstpipeline.c: (gst_pipeline_class_init),
13152 (gst_pipeline_send_event):
13153 Half hack, half utility: set a pipeline to PAUSED for seek events,
13154 since that is the only way we can guarantee a/v sync. Means that
13155 you can do gst_element_seek (pipeline, method, pos); on a pipeline
13156 and it "just works".
13158 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13160 * gst/gstpipeline.c: (gst_pipeline_use_clock):
13161 Lock/unlock mismatch.
13163 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
13165 * docs/faq/gst-uninstalled:
13166 add gst-plugins-base
13167 * docs/gst/Makefile.am:
13168 don't error out until docs are fixed
13169 * docs/gst/gstreamer.types:
13172 2005-03-22 Wim Taymans <wim@fluendo.com>
13174 * check/Makefile.am:
13175 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
13176 * gst/gststructure.c: (gst_structure_set_valist),
13177 (gst_structure_copy_conditional):
13178 Activated more tests.
13179 Added message test.
13180 Added G_TYPE_POINTER to GstStructure.
13183 2005-03-22 Wim Taymans <wim@fluendo.com>
13185 * docs/design/part-TODO.txt:
13186 * docs/design/part-events.txt:
13187 * docs/design/part-gstbin.txt:
13188 * docs/design/part-gstbus.txt:
13189 * docs/design/part-gstpipeline.txt:
13190 * docs/design/part-messages.txt:
13192 * gst/gstmessage.c:
13195 2005-03-21 Wim Taymans <wim@fluendo.com>
13197 * gst/gstbus.c: (gst_bus_post):
13198 Fix copy-and-paste error.
13200 2005-03-21 Wim Taymans <wim@fluendo.com>
13202 * check/Makefile.am:
13204 * gst/elements/Makefile.am:
13205 * gst/elements/gstelements.c:
13206 * gst/elements/gstfakesink.c: (gst_fakesink_init),
13207 (gst_fakesink_event), (gst_fakesink_chain):
13208 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
13209 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
13210 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
13211 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
13212 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
13213 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
13214 (gst_fakesrc_loop), (gst_fakesrc_activate),
13215 (gst_fakesrc_change_state):
13216 * gst/elements/gstfakesrc.h:
13217 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
13218 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
13219 (gst_filesrc_open_file), (gst_filesrc_loop),
13220 (gst_filesrc_activate), (gst_filesrc_change_state),
13221 (filesrc_find_peek), (filesrc_find_suggest),
13222 (gst_filesrc_type_find):
13223 * gst/elements/gstidentity.c: (gst_identity_finalize),
13224 (gst_identity_class_init), (gst_identity_init),
13225 (gst_identity_proxy_getcaps), (identity_queue_push),
13226 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
13227 (gst_identity_getrange), (gst_identity_chain),
13228 (gst_identity_sink_loop), (gst_identity_src_loop),
13229 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
13230 (gst_identity_set_property), (gst_identity_get_property),
13231 (gst_identity_change_state):
13232 * gst/elements/gstidentity.h:
13233 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
13234 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
13235 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
13236 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
13237 (gst_tee_sink_activate):
13238 * gst/elements/gsttee.h:
13239 * gst/gst.c: (gst_register_core_elements), (init_post):
13241 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
13242 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
13243 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
13244 (gst_bin_change_state):
13246 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
13247 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
13248 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
13249 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
13250 (gst_bus_set_sync_handler), (gst_bus_create_watch),
13251 (bus_watch_callback), (bus_watch_destroy),
13252 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
13253 (poll_timeout), (gst_bus_poll):
13257 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
13258 (gst_element_post_message), (gst_element_message_full),
13259 (gst_element_get_state_func), (gst_element_get_state),
13260 (gst_element_abort_state), (gst_element_commit_state),
13261 (gst_element_lost_state), (gst_element_set_state),
13262 (gst_element_pads_activate), (gst_element_change_state),
13263 (gst_element_dispose), (gst_element_set_manager_func),
13264 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
13265 (gst_element_set_manager), (gst_element_get_manager),
13266 (gst_element_set_bus), (gst_element_get_bus),
13267 (gst_element_set_scheduler), (gst_element_get_scheduler):
13268 * gst/gstelement.h:
13269 * gst/gstevent.c: (gst_event_new_segment_seek),
13270 (gst_event_new_flush):
13272 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
13273 (_gst_message_free), (gst_message_get_type), (gst_message_new),
13274 (gst_message_new_eos), (gst_message_new_error),
13275 (gst_message_new_warning), (gst_message_new_tag),
13276 (gst_message_new_state_changed), (gst_message_new_application),
13277 (gst_message_get_structure), (gst_message_parse_tag),
13278 (gst_message_parse_state_changed), (gst_message_parse_error),
13279 (gst_message_parse_warning):
13280 * gst/gstmessage.h:
13281 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
13282 (gst_real_pad_set_property), (gst_pad_set_active),
13283 (gst_pad_is_active), (gst_pad_set_blocked_async),
13284 (gst_pad_set_blocked), (gst_pad_is_blocked),
13285 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
13286 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
13287 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
13288 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
13289 (gst_pad_link_filtered), (gst_pad_relink_filtered),
13290 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
13291 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
13292 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
13293 (gst_pad_set_caps), (gst_pad_configure_sink),
13294 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
13295 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
13296 (gst_real_pad_dispose), (gst_real_pad_finalize),
13297 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
13298 (gst_pad_event_default_dispatch), (gst_pad_event_default),
13299 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
13301 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
13302 (pipeline_bus_handler), (gst_pipeline_change_state),
13303 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
13304 * gst/gstpipeline.h:
13306 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
13307 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
13308 (gst_queue_link_src), (gst_queue_bufferalloc),
13309 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
13310 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
13311 (gst_queue_loop), (gst_queue_handle_src_event),
13312 (gst_queue_handle_src_query), (gst_queue_src_activate),
13313 (gst_queue_change_state):
13315 * gst/gstscheduler.c: (gst_scheduler_init),
13316 (gst_scheduler_dispose), (gst_scheduler_create_task),
13317 (gst_scheduler_factory_create):
13318 * gst/gstscheduler.h:
13319 * gst/gststructure.c: (gst_structure_get_type),
13320 (gst_structure_copy_conditional):
13321 * gst/gststructure.h:
13322 * gst/gsttaginterface.h:
13323 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
13324 (gst_task_init), (gst_task_dispose), (gst_task_create),
13325 (gst_task_get_state), (gst_task_start), (gst_task_stop),
13331 * gst/schedulers/Makefile.am:
13332 * gst/schedulers/cothreads_compat.h:
13333 * gst/schedulers/entryscheduler.c:
13334 * gst/schedulers/faircothreads.c:
13335 * gst/schedulers/faircothreads.h:
13336 * gst/schedulers/fairscheduler.c:
13337 * gst/schedulers/gstbasicscheduler.c:
13338 * gst/schedulers/gstoptimalscheduler.c:
13339 * gst/schedulers/gthread-cothreads.h:
13340 * gst/schedulers/threadscheduler.c:
13341 (gst_thread_scheduler_task_get_type),
13342 (gst_thread_scheduler_task_class_init),
13343 (gst_thread_scheduler_task_init),
13344 (gst_thread_scheduler_task_start),
13345 (gst_thread_scheduler_task_stop),
13346 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
13347 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
13348 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
13349 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
13351 * libs/gst/Makefile.am:
13352 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
13353 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
13354 (gst_file_pad_parent_set):
13355 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13356 (gst_dp_event_from_packet):
13357 * tests/complexity.c: (main):
13358 * tests/mass_elements.c: (main):
13359 * testsuite/states/locked.c: (message_received), (main):
13360 * testsuite/states/parent.c: (main):
13361 * tools/gst-inspect.c: (print_element_flag_info),
13362 (print_implementation_info), (print_pad_info):
13363 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
13365 * tools/gst-md5sum.c: (event_loop), (main):
13366 * tools/gst-typefind.c: (main):
13367 * tools/gst-xmlinspect.c: (print_element_info):
13369 Added GstBus for mainloop integration.
13370 Added GstMessage for sending notifications on the bus.
13371 Added GstTask as an abstraction for pipeline entry points.
13373 Removed Schedulers.
13374 Simplified GstQueue for multithreaded core.
13375 Made _link threadsafe, removed old capsnego.
13376 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
13377 Added pad blocking functions.
13378 Reworked scheduling functions in GstPad to prepare for
13379 scheduling updates soon.
13380 Moved events out of data stream.
13381 Simplified GstEvent types.
13382 Added return values to push/pull.
13383 Removed clocking from GstElement.
13384 Added prototypes for state change function for next merge.
13385 Removed iterate from bins and state change management.
13386 Fixed some elements, disabled others for now.
13387 Fixed -inspect and -launch.
13388 Added check for GstBus.
13390 2005-03-10 Wim Taymans <wim@fluendo.com>
13392 * docs/design/part-MT-refcounting.txt:
13393 * docs/design/part-clocks.txt:
13394 * docs/design/part-gstelement.txt:
13395 * docs/design/part-gstobject.txt:
13396 * docs/design/part-standards.txt:
13397 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13398 (gst_bin_remove_func), (gst_bin_remove):
13402 * testsuite/clock/clock1.c: (main):
13403 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
13405 * testsuite/dlopen/loadgst.c: (do_test):
13406 * testsuite/refcounting/bin.c: (add_remove_test1),
13407 (add_remove_test2), (main):
13408 * testsuite/refcounting/element.c: (main):
13409 * testsuite/refcounting/element_pad.c: (main):
13410 * testsuite/refcounting/pad.c: (main):
13411 * tools/gst-launch.c: (sigint_handler_sighandler):
13412 * tools/gst-typefind.c: (main):
13414 Added doc about clock.
13415 removed gst_bin_iterate_recurse_up(), marked methods
13417 Fix more testsuites.
13419 2005-03-09 Wim Taymans <wim@fluendo.com>
13421 * gst/gstpad.c: (gst_pad_get_direction),
13422 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
13423 (gst_pad_collect_valist):
13424 * testsuite/bins/interface.c: (main):
13425 * testsuite/caps/audioscale.c: (test_caps):
13426 * testsuite/caps/caps.c: (test1), (test2), (test3):
13427 * testsuite/caps/deserialize.c: (main):
13428 * testsuite/caps/enumcaps.c: (main):
13429 * testsuite/caps/filtercaps.c: (main):
13430 * testsuite/caps/intersect2.c: (main):
13431 * testsuite/caps/random.c: (main):
13432 * testsuite/caps/renegotiate.c: (my_fixate), (main):
13433 * testsuite/caps/sets.c: (check_caps):
13434 * testsuite/caps/simplify.c: (check_caps), (main):
13435 * testsuite/caps/subtract.c: (check_caps):
13436 Fix _pad_get_direction wrt ghostpads.
13437 Fix caps testsuite.
13439 2005-03-09 Wim Taymans <wim@fluendo.com>
13441 * check/Makefile.am:
13442 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
13443 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
13444 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
13445 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
13446 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
13447 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
13448 (gst_bin_remove), (gst_bin_iterate_recurse_up),
13449 (bin_element_is_sink), (gst_bin_iterate_sinks),
13450 (gst_bin_iterate_all_by_interface):
13452 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
13453 (gst_element_change_state), (gst_element_dispose),
13454 (gst_element_finalize), (gst_element_set_loop_function):
13455 * gst/gstelement.h:
13456 * gst/gstiterator.c: (find_custom_fold_func):
13457 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
13458 (gst_pad_collectv), (gst_pad_collect_valist),
13459 (gst_pad_template_new):
13460 * gst/gstpipeline.c: (gst_pipeline_class_init),
13461 (gst_pipeline_dispose), (gst_pipeline_set_property),
13462 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
13463 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
13464 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
13466 * gst/schedulers/entryscheduler.c:
13467 * gst/schedulers/gstbasicscheduler.c:
13468 (gst_basic_scheduler_cothreaded_chain),
13469 (gst_basic_scheduler_chain_add_element):
13470 * testsuite/bins/interface.c: (main):
13472 Added GstSystemClock test.
13473 Implemented clock distribution code in GstBin.
13474 Implemented iterate sinks method for future use.
13475 Rearranged gstelement.h
13476 Fix GstIterator comparison bug.
13477 Moved some code to GstPipeline, mostly clocking related.
13479 2005-03-09 Wim Taymans <wim@fluendo.com>
13482 * gst/gst_private.h:
13483 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13484 (gst_bin_remove_func), (gst_bin_remove),
13485 (gst_bin_get_by_name_recurse_up):
13486 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
13487 (gst_clock_id_compare_func), (gst_clock_id_wait),
13488 (gst_clock_id_wait_async), (gst_clock_init),
13489 (gst_clock_adjust_unlocked), (gst_clock_get_time):
13490 * gst/gstelement.h:
13491 * gst/gstinfo.c: (_gst_debug_init):
13493 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
13494 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
13496 Bump version number, we're now 0.9.0
13497 Add future debugging category.
13498 Fix NULL _unref() in _get_by_name_recurse_up
13499 Rearrange gstpad.h.
13502 2005-03-08 Wim Taymans <wim@fluendo.com>
13504 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
13505 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
13506 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
13507 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
13508 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
13509 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
13510 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
13511 * gst/elements/gstidentity.c: (gst_identity_class_init):
13512 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
13513 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
13514 * gst/elements/gstshaper.c: (gst_shaper_class_init):
13515 * gst/elements/gststatistics.c: (gst_statistics_class_init):
13516 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
13518 * gst/gstelement.c: (gst_element_class_init),
13519 (gst_element_base_class_init), (gst_element_init),
13520 (gst_element_get_random_pad), (gst_element_wait_state_change),
13521 (gst_element_change_state), (gst_element_dispose),
13522 (gst_element_finalize), (gst_element_set_loop_function):
13523 * gst/gstelement.h:
13524 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
13525 * gst/gstthread.c: (gst_thread_class_init),
13526 (gst_thread_release_children_locks), (gst_thread_change_state):
13527 * gst/schedulers/gstbasicscheduler.c:
13528 (gst_basic_scheduler_loopfunc_wrapper),
13529 (gst_basic_scheduler_chain_wrapper),
13530 (gst_basic_scheduler_src_wrapper),
13531 (gst_basic_scheduler_remove_element):
13532 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
13533 Remove threadsafe properties. Fix elements because GObject
13534 complains when installing a property before declaring a
13535 set/get_property handler.
13536 Rearrange gstelement.h file, use STATE macros for state locks.
13537 Free mutexes in the finalize method instead of dispose.
13539 2005-03-08 Wim Taymans <wim@fluendo.com>
13541 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
13542 * gst/gstthread.c: (gst_thread_release_children_locks):
13543 Added parentage check.
13544 Fix build og GstThread again.
13546 2005-03-08 Wim Taymans <wim@fluendo.com>
13548 * docs/design/part-MT-refcounting.txt:
13549 * docs/design/part-conventions.txt:
13550 * docs/design/part-gstobject.txt:
13551 * docs/design/part-relations.txt:
13552 * docs/design/part-standards.txt:
13553 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13554 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
13555 (gst_bin_get_by_name), (gst_bin_get_by_interface),
13556 (gst_bin_iterate_all_by_interface):
13559 * gst/gstelement.c: (gst_element_class_init),
13560 (gst_element_change_state), (gst_element_set_loop_function):
13561 * gst/gstelement.h:
13562 * gst/gstiterator.c:
13563 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
13564 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
13565 (gst_object_dispatch_properties_changed), (gst_object_set_name),
13566 (gst_object_set_parent), (gst_object_unparent),
13567 (gst_object_check_uniqueness):
13569 Docs updates, clean up some headers.
13571 2005-03-07 Wim Taymans <wim@fluendo.com>
13573 * check/.cvsignore:
13574 * check/Makefile.am:
13575 * check/gst-libs/.cvsignore:
13576 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
13577 * check/gst/.cvsignore:
13578 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
13579 (START_TEST), (gstbus_suite), (main):
13580 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
13581 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
13582 (gst_data_suite), (main):
13583 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
13584 (add_fold_func), (gstiterator_suite), (main):
13585 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
13586 (thread_name_object), (thread_name_object_default),
13587 (gst_object_name_compare), (gst_object_suite), (main):
13588 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
13589 (gst_pad_suite), (main):
13590 * check/gstcheck.c: (gst_check_log_message_func),
13591 (gst_check_log_critical_func), (gst_check_init):
13592 * check/gstcheck.h:
13593 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
13594 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
13597 2005-03-07 Wim Taymans <wim@fluendo.com>
13599 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
13600 (gst_list_iterator_next), (gst_list_iterator_resync),
13601 (gst_list_iterator_free), (gst_iterator_new_list),
13602 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
13603 (gst_iterator_free), (gst_iterator_push), (filter_next),
13604 (filter_resync), (filter_uninit), (filter_free),
13605 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
13606 (gst_iterator_foreach), (find_custom_fold_func),
13607 (gst_iterator_find_custom):
13608 * gst/gstiterator.h:
13609 Added missing files.
13611 2005-03-07 Wim Taymans <wim@fluendo.com>
13615 * docs/design/part-MT-refcounting.txt:
13616 * docs/design/part-conventions.txt:
13617 * docs/design/part-gstobject.txt:
13618 * docs/design/part-relations.txt:
13619 * examples/mixer/mixer.c: (main):
13620 * examples/thread/thread.c: (eos), (main):
13622 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13623 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
13624 (gst_spider_plug_from_srcpad):
13625 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
13626 (gst_spider_identity_change_state),
13627 (gst_spider_identity_sink_loop_type_finding):
13628 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
13629 * gst/elements/gstidentity.c: (gst_identity_init):
13630 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
13631 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
13632 * gst/elements/gsttypefindelement.c: (free_entry):
13635 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
13636 (gst_bin_set_clock_func), (gst_bin_auto_clock),
13637 (gst_bin_set_index), (gst_bin_set_element_sched),
13638 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
13639 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
13640 (gst_bin_iterate_elements), (iterate_child_recurse),
13641 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
13642 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
13643 (compare_interface), (gst_bin_get_by_interface),
13644 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
13646 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
13647 (gst_buffer_default_free), (gst_buffer_default_copy),
13648 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
13649 (gst_buffer_create_sub):
13651 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
13652 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
13653 (gst_caps_unref), (gst_static_caps_get),
13654 (gst_caps_remove_and_get_structure), (gst_caps_append),
13655 (gst_caps_append_structure), (gst_caps_remove_structure),
13656 (gst_caps_copy_nth), (gst_caps_set_simple),
13657 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
13658 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
13659 (gst_caps_structure_intersect_field), (gst_caps_intersect),
13660 (gst_caps_structure_subtract_field), (gst_caps_subtract),
13661 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
13662 (gst_caps_structure_figure_out_union),
13663 (gst_caps_switch_structures), (gst_caps_do_simplify),
13664 (gst_caps_replace), (gst_caps_from_string),
13665 (gst_caps_copy_conditional):
13667 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
13668 (_gst_clock_id_free), (gst_clock_id_unref),
13669 (gst_clock_id_compare_func), (gst_clock_id_wait),
13670 (gst_clock_id_wait_async), (gst_clock_class_init),
13671 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
13672 (gst_clock_get_time), (gst_clock_set_time_adjust),
13673 (gst_clock_set_property), (gst_clock_get_property):
13676 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
13677 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
13679 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
13680 (gst_element_requires_clock), (gst_element_provides_clock),
13681 (gst_element_set_clock), (gst_element_clock_wait),
13682 (gst_element_wait), (gst_element_set_time_delay),
13683 (gst_element_is_indexable), (gst_element_add_pad),
13684 (gst_element_add_ghost_pad), (gst_element_remove_pad),
13685 (pad_compare_name), (gst_element_get_static_pad),
13686 (gst_element_request_pad), (gst_element_get_request_pad),
13687 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
13688 (gst_element_class_get_pad_template_list),
13689 (gst_element_class_get_pad_template), (gst_element_error_func),
13690 (gst_element_get_random_pad), (gst_element_get_event_masks),
13691 (gst_element_send_event), (gst_element_seek),
13692 (gst_element_get_query_types), (gst_element_query),
13693 (gst_element_get_formats), (gst_element_convert),
13694 (gst_element_is_locked_state), (gst_element_set_locked_state),
13695 (gst_element_sync_state_with_parent), (gst_element_change_state),
13696 (gst_element_finalize), (gst_element_yield),
13697 (gst_element_interrupt), (gst_element_set_scheduler),
13698 (gst_element_get_scheduler), (gst_element_set_loop_function):
13699 * gst/gstelement.h:
13701 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
13702 (gst_format_get_by_nick), (gst_format_get_details),
13703 (gst_format_iterate_definitions):
13705 * gst/gstindex.c: (gst_index_gtype_resolver):
13708 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
13709 (gst_mem_chunk_free):
13710 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
13711 (gst_object_ref), (gst_object_unref), (gst_object_sink),
13712 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
13713 (gst_object_dispatch_properties_changed),
13714 (gst_object_set_name_default), (gst_object_set_name),
13715 (gst_object_get_name), (gst_object_set_name_prefix),
13716 (gst_object_get_name_prefix), (gst_object_set_parent),
13717 (gst_object_get_parent), (gst_object_unparent),
13718 (gst_object_check_uniqueness), (gst_object_save_thyself),
13719 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
13720 (gst_object_set_property), (gst_object_get_property),
13721 (gst_object_get_path_string):
13723 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
13724 (gst_real_pad_init), (gst_real_pad_get_property),
13725 (gst_pad_custom_new), (gst_pad_get_direction),
13726 (gst_pad_set_active), (gst_pad_is_active),
13727 (gst_pad_set_event_function), (gst_pad_is_linked),
13728 (gst_pad_link_free), (gst_pad_link_intersect),
13729 (gst_pad_link_fixate), (gst_pad_set_caps),
13730 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
13731 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
13732 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
13733 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
13734 (gst_pad_get_caps), (gst_pad_peer_get_caps),
13735 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
13736 (gst_pad_realize), (gst_pad_get_allowed_caps),
13737 (gst_real_pad_dispose), (gst_real_pad_finalize),
13738 (gst_pad_collectv), (gst_pad_collect_valist),
13739 (gst_pad_template_dispose), (gst_pad_template_new),
13740 (gst_pad_get_internal_links):
13742 * gst/gstpipeline.c: (gst_pipeline_dispose),
13743 (gst_pipeline_change_state):
13744 * gst/gstpipeline.h:
13746 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
13747 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
13748 * gst/gstpluginfeature.h:
13749 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
13750 * gst/gstquery.c: (_gst_query_type_initialize),
13751 (gst_query_type_register), (gst_query_type_get_by_nick),
13752 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
13754 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
13755 * gst/gstscheduler.c: (gst_scheduler_add_element),
13756 (gst_scheduler_factory_create):
13757 * gst/gststructure.c: (gst_structure_set_parent_refcount),
13758 (gst_structure_free), (gst_structure_set_name),
13759 (gst_structure_id_set_value), (gst_structure_set_value),
13760 (gst_structure_set_valist), (gst_structure_remove_field),
13761 (gst_structure_remove_fields),
13762 (gst_structure_remove_fields_valist),
13763 (gst_structure_remove_all_fields), (gst_structure_foreach),
13764 (gst_structure_map_in_place),
13765 (gst_caps_structure_fixate_field_nearest_int),
13766 (gst_caps_structure_fixate_field_nearest_double):
13767 * gst/gststructure.h:
13768 * gst/gstsystemclock.c: (gst_system_clock_class_init),
13769 (gst_system_clock_init), (gst_system_clock_dispose),
13770 (gst_system_clock_async_thread),
13771 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
13772 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
13773 * gst/gstsystemclock.h:
13774 * gst/gsttag.c: (gst_tag_list_add_value_internal),
13775 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
13776 * gst/gsttaginterface.c:
13777 * gst/gstthread.c: (gst_thread_dispose),
13778 (gst_thread_release_children_locks), (gst_thread_change_state),
13779 (gst_thread_main_loop):
13780 * gst/gsttrashstack.h:
13781 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
13783 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
13784 (gst_element_request_pad), (gst_element_get_pad_from_template),
13785 (gst_element_request_compatible_pad),
13786 (gst_element_get_compatible_pad_filtered),
13787 (gst_element_get_compatible_pad), (gst_element_state_get_name),
13788 (gst_element_link_pads_filtered), (gst_element_link_filtered),
13789 (gst_element_link_many), (gst_element_link),
13790 (gst_element_link_pads), (gst_element_unlink_pads),
13791 (gst_element_unlink_many), (gst_element_unlink),
13792 (gst_pad_can_link_filtered), (gst_pad_can_link),
13793 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
13794 (gst_object_default_error), (gst_bin_add_many),
13795 (gst_bin_remove_many), (gst_element_populate_std_props),
13796 (gst_element_class_install_std_props), (gst_buffer_merge),
13797 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
13798 (link_fold_func), (gst_pad_proxy_setcaps):
13800 * gst/gstvalue.c: (gst_value_deserialize_string):
13801 * gst/parse/grammar.y:
13802 * gst/schedulers/gstbasicscheduler.c:
13803 (gst_basic_scheduler_cothreaded_chain),
13804 (gst_basic_scheduler_chain_recursive_add),
13805 (gst_basic_scheduler_pad_link):
13806 * gst/schedulers/gstoptimalscheduler.c:
13807 (get_group_schedule_function),
13808 (gst_opt_scheduler_state_transition),
13809 (gst_opt_scheduler_add_element), (element_get_reachables_func):
13810 * libs/gst/bytestream/bytestream.c:
13811 * libs/gst/dataprotocol/dataprotocol.c:
13812 (gst_dp_header_from_buffer):
13815 * tests/threadstate/threadstate2.c: (eos):
13816 * tools/gst-compprep.c: (main):
13817 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
13818 (print_pad_info), (print_children_info):
13819 * tools/gst-launch.c: (idle_func), (main):
13820 * tools/gst-md5sum.c: (idle_func), (main):
13821 * tools/gst-xmlinspect.c: (print_element_info):
13822 First THREADED backport attempt, focusing on adding locks and
13823 making sure the API is threadsafe. Needs more work. More docs
13826 2005-02-24 Andy Wingo <wingo@pobox.com>
13828 * tests/bench-complexity.scm:
13829 * tests/complexity.gnuplot: New files, good for running complexity
13832 * tests/Makefile.am:
13833 * tests/complexity.c: New test, sets up N elements, at each level
13834 teeing into M streams per element. Eeeenteresting.
13836 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
13837 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
13838 running bench-mass_elements.scm.
13840 * tests/bench-mass_elements.scm: New script, runs mass_elements
13841 for various numbers of identities, outputting the results to a
13842 file. Requires guile 1.6. Just for testing.
13844 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
13846 * gst/schedulers/fairscheduler.c:
13847 compile with debug disabled
13849 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
13852 hunting season on 0.9 is now OPEN