1 2005-09-30 Wim Taymans <wim@fluendo.com>
3 * gst/gstelement.c: (gst_element_set_state),
4 (gst_element_change_state):
5 Small tweak, element in ASYNC remains ASYNC.
7 2005-09-30 Wim Taymans <wim@fluendo.com>
9 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
10 Only error is an error.
12 * gst/gstbin.c: (gst_bin_change_state):
13 Better debugging.
15 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
16 Also call pad_block in pad alloc.
18 * gst/gstutils.c: (gst_flow_get_name):
19 Better debugging.
21 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
23 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
24 (gst_base_src_get_range):
25 Fix documentation typos. Add some more debug info.
27 2005-09-29 David Schleef <ds@schleef.org>
29 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
30 more end-user friendly.
31 * tools/gst-inspect.c: (main): Check if command-line argument is
32 a file and attempt to load that file as a plugin.
34 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
36 * check/gst/gstbin.c:
37 * check/states/sinks.c:
38 fix tests for the new warning
39 * check/gst/gstpipeline.c:
40 add a test for pipeline and bus interaction
41 * gst/gstelement.c:
42 elements should be NULL if they get disposed; add a warning if not
44 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
46 * gst/gstobject.c:
47 for 2.6 refcounting, make debug log more correct by printing
48 the actual refcounts at the time of swap (Wim)
50 2005-09-29 Andy Wingo <wingo@pobox.com>
52 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
53 removes signal watches previously added via
54 gst_bus_add_signal_watch.
55 (gst_bus_add_signal_watch): Don't return the source id, just store
56 it on the bus if there wasn't an id already.
58 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
59 add_signal_watch and remove_signal_watch.
61 2005-09-29 Edward Hervey <edward@fluendo.com>
63 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
64 Better if we actually iterate the list :)
66 2005-09-29 Wim Taymans <wim@fluendo.com>
68 * check/gst/gstbin.c: (GST_START_TEST):
69 Change for new bus API.
71 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
72 (send_messages), (GST_START_TEST), (gstbus_suite):
73 Change for new bus signal API.
75 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
76 (gst_bus_source_prepare), (gst_bus_source_check),
77 (gst_bus_create_watch), (gst_bus_add_watch_full),
78 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
79 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
80 * gst/gstbus.h:
81 Remove support for multiple GSources operating on different
82 message types as it is too complex and unneeded when using
83 signals.
84 Added support for receiving signals from the bus.
86 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
88 * docs/libs/tmpl/gstdataprotocol.sgml:
89 * docs/manual/advanced-dataaccess.xml:
90 * gst/elements/gstcapsfilter.c:
91 * gst/gstutils.c:
92 rename filter-caps to caps property
94 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
96 * gst/gstvalue.c: (gst_value_deserialize_fraction):
97 More robust fraction string parsing.
99 * docs/pwg/appendix-porting.xml:
100 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
102 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
104 * gst/gstcaps.c: (gst_caps_do_simplify):
105 Thou shalt not free a structure and then continue using it
106 in the next loop iteration.
108 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
109 (gst_caps_suite):
110 Add test case for caps simplification.
112 2005-09-29 Wim Taymans <wim@fluendo.com>
114 * check/gst/gstbin.c: (GST_START_TEST):
115 Oops.
117 2005-09-29 Wim Taymans <wim@fluendo.com>
119 * check/gst/gstbin.c: (GST_START_TEST):
120 Add bus to bin.
122 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
123 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
124 (find_element), (gst_bin_sort_iterator_next),
125 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
126 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
127 (gst_bin_change_state), (gst_bin_dispose):
128 A bin does not have a bus, it gets the bus from the parent.
130 * gst/gstelement.c: (gst_element_requires_clock),
131 (gst_element_provides_clock), (gst_element_is_indexable),
132 (gst_element_is_locked_state), (gst_element_change_state),
133 (gst_element_set_bus_func):
134 Small cleanups.
136 * gst/gstpipeline.c: (gst_pipeline_class_init),
137 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
138 The pipeline provides a bus.
140 2005-09-28 Johan Dahlin <johan@gnome.org>
142 * gst/gstmessage.c (gst_message_parse_state_changed): Use
143 gst_structure_get_enum instead of gst_structure_get_int
145 * gst/gststructure.c (gst_structure_get_enum): Impl.
147 * gst/gststructure.h (gst_structure_get_enum): Add
149 * docs/gst/gstreamer-sections.txt: Ditto
151 * gst/gstmessage.c (gst_message_new_state_changed): Use
152 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
153 which does introspection.
154 Reviewed by Christian Schaller
156 2005-09-28 Stefan Kost <ensonic@users.sf.net>
158 * gst/gstinfo.c: (gst_debug_log_default):
159 don't do dummy g_strdup()s
160 * libs/gst/controller/gstcontroller.c:
161 (on_object_controlled_property_changed),
162 (gst_controlled_property_new), (gst_controller_new_valist),
163 (gst_controller_new_list),
164 (gst_controller_remove_properties_valist), (gst_controller_set),
165 (gst_controller_get), (gst_controller_sync_values),
166 (gst_controller_get_value_array), (_gst_controller_class_init),
167 (gst_controller_get_type):
168 * libs/gst/controller/gstcontroller.h:
169 * libs/gst/controller/gstinterpolation.c:
170 (gst_controlled_property_find_timed_value_node):
171 convert // to /**/ comments
173 2005-09-28 Wim Taymans <wim@fluendo.com>
175 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
176 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
177 (gst_bus_sync_signal_handler):
178 * gst/gstbus.h:
179 Added async-message and sync-message signals to the bus.
180 Added helper BusFunc to emit signals for all posted messages.
182 * gst/gstmessage.c: (gst_message_type_get_name),
183 (gst_message_type_to_quark), (gst_message_get_type):
184 * gst/gstmessage.h:
185 Register quarks for message names.
187 2005-09-28 Stefan Kost <ensonic@users.sf.net>
189 * docs/libs/gstreamer-libs-sections.txt:
190 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
191 (gst_controller_new_list):
192 * libs/gst/controller/gstcontroller.h:
193 added another constructor for language bindings
195 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
197 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
198 add another check
199 * gst/gstbus.c:
200 add some doc
201 * gst/gstinfo.c: (_gst_debug_init):
202 slightly more readable color for refcount debugging
204 2005-09-28 Wim Taymans <wim@fluendo.com>
206 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
207 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
208 (find_element), (gst_bin_sort_iterator_next),
209 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
210 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
211 (gst_bin_change_state), (gst_bin_dispose):
212 Small doc fixes. get_clock -> provide_clock.
214 * gst/gstelement.c: (gst_element_class_init),
215 (gst_element_provides_clock), (gst_element_provide_clock),
216 (gst_element_get_clock), (gst_element_commit_state),
217 (gst_element_lost_state):
218 * gst/gstelement.h:
219 Make get/set_clock() symetric. Add provide_clock vmethod since
220 that is actually what this function does.
222 * gst/gstpipeline.c: (gst_pipeline_class_init),
223 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
224 (gst_pipeline_get_clock):
225 get_clock -> provide_clock.
227 2005-09-28 Andy Wingo <wingo@pobox.com>
229 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
230 lieu of real docs...
232 * gst/elements/gstfdsrc.c: Cleaned up a bit.
234 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
236 * gst/elements/gstcapsfilter.c:
237 * gst/elements/gstfakesink.c:
238 * gst/elements/gstfakesrc.c:
239 * gst/elements/gstfdsink.c:
240 * gst/elements/gstfdsrc.c:
241 * gst/elements/gstfilesink.c:
242 * gst/elements/gstfilesrc.c:
243 * gst/elements/gstidentity.c:
244 * gst/elements/gsttee.c:
245 * gst/elements/gsttypefindelement.c:
246 Make element details static.
248 2005-09-28 Wim Taymans <wim@fluendo.com>
250 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
251 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
252 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
253 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
254 (gst_bin_change_state), (gst_bin_dispose):
255 Some documentation updates.
256 Clean up dispose handlers.
258 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
259 * gst/gstpad.c: (gst_pad_dispose):
260 Clean up dispose handler.
262 * gst/gstpipeline.c: (gst_pipeline_change_state):
263 Removed spurious UNLOCK.
265 2005-09-27 Stefan Kost <ensonic@users.sf.net>
267 * docs/gst/gstreamer-sections.txt:
268 * gst/base/gstbasesrc.h:
269 * gst/gstelement.h:
270 * gst/gstevent.h:
271 * gst/gstobject.h:
272 * gst/gstpad.h:
273 * gst/gstpipeline.c:
274 * gst/gstpipeline.h:
275 * gst/gstutils.h:
276 * gst/gstxml.h:
277 added two new functions to the docs
278 documents all undocumented GstXXXFlags
279 completed some incomplete docs
281 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
283 * gst/gstbin.c: (gst_bin_dispose):
284 * gst/gstelement.c: (gst_element_dispose):
285 remove now useless and leaky resurrection code in dispose
286 * gst/base/gstbasesrc.c: (gst_base_src_init):
287 * gst/gstelementfactory.c: (gst_element_factory_create):
288 * gst/gstobject.c: (gst_object_set_parent):
289 add some debugging
291 2005-09-27 Wim Taymans <wim@fluendo.com>
293 * docs/design/part-TODO.txt:
294 Update TODO.
296 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
297 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
298 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
299 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
300 (gst_bin_change_state):
301 * gst/gstelement.h:
302 Remove element variable, we keep element info in the iterator now.
304 2005-09-27 Andy Wingo <wingo@pobox.com>
306 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
307 values.
309 2005-09-27 Wim Taymans <wim@fluendo.com>
311 * check/gst/gstbin.c: (GST_START_TEST):
312 Enable check that works now.
314 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
315 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
316 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
317 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
318 (gst_bin_change_state):
319 * gst/gstbin.h:
320 Redid the state change algorithm using a topological sort algo.
321 Handles all cases correctly.
322 Exposed iterator for state change order.
324 * gst/gstelement.h:
325 Temp storage for state changes. Need to get rid of this soon.
327 2005-09-27 Wim Taymans <wim@fluendo.com>
329 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
330 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
331 (link_fold_func), (gst_pad_proxy_setcaps):
332 Leak fixes, the fold functions need to unref the passed object and
333 _get_parent_*() returns ref to parent.
335 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
337 * check/gst/gstbuffer.c: (test_make_writable):
338 Plug leak in test case and fix 'make check-valgrind'
340 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
342 * gst/gstbuffer.c: (gst_subbuffer_init):
343 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
344 works correctly in all circumstances (we could have just copied
345 the parent buffer's readonly flag, but conceptually it seems
346 cleaner to mark all subbuffers as read-only). (based on patch
347 by Alessandro Decina, #314710).
349 * check/gst/gstbuffer.c: (create_read_only_buffer),
350 (test_make_writable), (test_subbuffer_make_writable),
351 (gst_test_suite):
352 Add some tests for gst_buffer_make_writable().
354 2005-09-27 Wim Taymans <wim@fluendo.com>
356 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
357 use gst_object_has_ancestor().
359 * gst/gstobject.c: (gst_object_has_ancestor):
360 * gst/gstobject.h:
361 gst_object_has_ancestor() copied from gstbin.c as it is a
362 usefull function.
364 * tests/instantiate/create.c: (create_all_elements):
365 * tests/lat.c: (handoff_src), (handoff_sink):
366 * tests/sched/runxml.c: (main):
367 * tests/seeking/seeking1.c: (main):
368 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
369 (main):
370 Fix compilation of some tests.
372 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
374 * gst/gsterror.h:
375 Remove comment. GST_TYPE_G_ERROR is here to stay,
376 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
377 (#316961, #300610).
379 2005-09-26 Wim Taymans <wim@fluendo.com>
381 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
382 Added check that shows error in state change order.
384 2005-09-26 Wim Taymans <wim@fluendo.com>
386 * gst/gstbin.c: (gst_bin_change_state):
387 Make state change function use 3 queues again, we were
388 adding elements in the wrong order.
390 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
391 Some debug info,
393 * gst/gstpad.c: (gst_pad_dispose):
394 Added some debug info first.
396 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
398 * docs/design/draft-push-pull.txt:
399 * docs/design/part-events.txt:
400 * docs/design/part-overview.txt:
401 * docs/design/part-scheduling.txt:
402 Replace all _pull_region() with _pull_range()
404 2005-09-26 Andy Wingo <wingo@pobox.com>
406 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
408 * check/gst-libs/controller.c: Update for controller api change.
410 * configure.ac:
411 * tests/Makefile.am:
412 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
413 over by GLib bug 118439.
415 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
416 routines to a function.
418 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
420 * libs/gst/controller/gsthelper.c:
421 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
422 (gst_object_sync_values): Renamed from sink_values. Ugh.
424 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
426 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
427 Renamed from controller_key, as it is exported.
429 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
431 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
433 * gst/Makefile.am:
434 * gst/gst.h:
435 * gst/gstpad.h:
436 * gst/gstpadtemplate.h:
437 * gst/gstquery.c:
438 * gst/gstquery.h:
439 * gst/gstqueryutils.c:
440 * gst/gstqueryutils.h:
441 remove queryutils headers after moving the two used functions
442 to gstquery. also fixes build problem for gstsiddec
444 2005-09-26 Michael Smith <msmith@fluendo.com>
446 * tools/gst-launch.1.in:
447 Correct documentation in manpage of debug syntax
449 2005-09-26 Wim Taymans <wim@fluendo.com>
451 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
452 (gst_base_src_is_seekable), (gst_base_src_change_state):
453 Some more debugging info.
455 2005-09-25 Stefan Kost <ensonic@users.sf.net>
457 * docs/gst/gstreamer-sections.txt:
458 * gst/base/gstbasetransform.h:
459 * gst/gstindex.h:
460 added more docs
462 2005-09-25 Stefan Kost <ensonic@users.sf.net>
464 * docs/gst/.cvsignore:
465 * docs/gst/tmpl/.cvsignore:
466 * docs/gst/tmpl/gstpipeline.sgml:
467 * docs/gst/tmpl/gstplugin.sgml:
468 * gst/gstpipeline.c:
469 * gst/gstplugin.c:
470 * gst/gstplugin.h:
471 inlined the last two docs files
472 removed the tmpl directory from cvs (no more conflicts here!)
474 2005-09-25 Stefan Kost <ensonic@users.sf.net>
476 * docs/gst/gstreamer-sections.txt:
477 * docs/gst/tmpl/.cvsignore:
478 * docs/gst/tmpl/gstpad.sgml:
479 * docs/gst/tmpl/gstpadtemplate.sgml:
480 * gst/Makefile.am:
481 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
482 (gst_pad_finalize), (gst_pad_set_pad_template):
483 * gst/gstpad.h:
484 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
485 (gst_pad_template_class_init), (gst_pad_template_init),
486 (gst_pad_template_dispose), (name_is_valid),
487 (gst_static_pad_template_get), (gst_pad_template_new),
488 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
489 (gst_pad_template_pad_created):
490 * gst/gstpadtemplate.h:
491 inlined two more docs
492 factored gstpadtemplate out of gstpad
494 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
496 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
497 (test_children_state_change_order_semi_sink):
498 Fix test case: we can't rely on a fixed state change order when
499 going from READY => PAUSED because the sink might commit its
500 new state first when the first buffer created by the source
501 reaches the sink before the source has finished its change state.
502 (Test case still fails at times, see #316856, comment 5 onwards)
504 2005-09-24 Wim Taymans <wim@fluendo.com>
506 * docs/design/part-events.txt:
507 * docs/design/part-gstbus.txt:
508 * docs/design/part-gstpipeline.txt:
509 * docs/design/part-messages.txt:
510 * docs/design/part-overview.txt:
511 * docs/design/part-segments.txt:
512 * gst/gstbin.c:
513 * gst/gstbuffer.c:
514 * gst/gstclock.c:
515 * gst/gstelement.c:
516 * gst/gstevent.c:
517 * gst/gstfilter.c:
518 * gst/gstiterator.c:
519 Various documentation updates.
521 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
523 * gst/gstclock.h:
524 Well, that's embarassing. Luckily we weren't using
525 GST_CLOCK_DIFF anywhere.
527 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
529 * common/gtk-doc.mak:
530 don't fail on building XML, FC4 slave shows a bunch of doc
531 missing bits that I don't get
532 * gst/gstpad.c:
533 * gst/gstpipeline.c:
534 * gst/gststructure.c:
535 some doc updates
537 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
539 * docs/design/part-gstbin.txt:
540 * docs/design/part-gstbus.txt:
541 * gst/gstbus.c:
542 Add blurb about how the bus goes into flushing mode and
543 drops all messages when its bin goes from READY into NULL
544 state.
546 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
548 * docs/gst/gstreamer-sections.txt:
549 * gst/gststructure.c: (gst_structure_get_clock_time):
550 * gst/gststructure.h:
551 add a method to get a GstClockTime out of a structure
553 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
555 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
556 (test_children_state_change_order_semi_sink), (gst_bin_suite):
557 Added test to check state change order in bins (can still be made
558 to fail here under heavy disk load; bails out with 'Push on pad
559 fakesink:sink0, but it was not activated in push mode').
561 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
562 Fix state change order when there is only a semi sink (#316856)
564 * gst/gstbus.c: (gst_bus_class_init):
565 Use _class_peek_parent(), not _class_ref(); fix docs to say
566 'default main context' instead of 'mainloop' where that is
567 what's meant.
569 * gst/gstelement.c: (gst_element_commit_state),
570 (gst_element_set_state):
571 Fix typos in debug messages
573 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
575 * docs/README:
576 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
577 * gst/gstpluginfeature.c:
578 * gst/gstutils.c:
579 various doc updates
580 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
581 change an assert into an error until it gets fixed properly
583 2005-09-23 Stefan Kost <ensonic@users.sf.net>
585 * docs/gst/gstreamer-sections.txt:
586 * docs/gst/tmpl/.cvsignore:
587 * docs/gst/tmpl/gstelement.sgml:
588 * docs/gst/tmpl/gstinfo.sgml:
589 * docs/gst/tmpl/gstobject.sgml:
590 * gst/gstelement.c:
591 * gst/gstelement.h:
592 * gst/gstinfo.c:
593 * gst/gstinfo.h:
594 * gst/gstobject.c: (gst_object_class_init):
595 * gst/gstobject.h:
596 inlined 3 more biiiig doc files and added some missing docs on the fly
598 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
600 * check/gst/.cvsignore:
601 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
602 * gst/gstregistryxml.c: (load_plugin),
603 (gst_registry_xml_save_plugin):
604 put back source in registry. add checks for find_plugin.
605 * testsuite/states/bin.c: (assert_state), (empty_bin),
606 (test_adding_one_element), (main):
607 * testsuite/states/locked.c: (main):
608 some compile/run fixes
610 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
612 * check/gst/gstvalue.c: (GST_START_TEST):
613 fix leaks in the test itself
615 2005-09-22 Wim Taymans <wim@fluendo.com>
617 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
618 (gst_base_sink_send_event), (gst_base_sink_peer_query),
619 (gst_base_sink_query):
620 Prepare for more accurate position reporting and query
621 handling.
623 * gst/gstelement.c: (gst_element_send_event),
624 (gst_element_set_state):
625 Add some comment.
627 2005-09-22 Wim Taymans <wim@fluendo.com>
629 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
630 (gst_query_parse_segment):
631 * gst/gstquery.h:
632 More documentation.
633 Add segment query for future use.
635 2005-09-22 Wim Taymans <wim@fluendo.com>
637 * gst/gstbin.c: (gst_bin_add_func):
638 Some more debug info.
640 * gst/gstelement.c: (gst_element_send_event):
641 Simplify send_event
643 * gst/gstelement.h:
644 Don't know how flags got broken.
646 * gst/gstquery.h:
647 Added new query.
649 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
651 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
652 Add simplistic test suite for GST_TYPE_DATE serialisation and
653 deserialisation.
655 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
657 * docs/gst/gstreamer-sections.txt:
658 * gst/gststructure.c: (gst_structure_set_valist),
659 (gst_structure_get_date):
660 * gst/gststructure.h:
661 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
662 (gst_date_copy), (gst_value_compare_date),
663 (gst_value_serialize_date), (gst_value_deserialize_date),
664 (gst_value_transform_date_string),
665 (gst_value_transform_string_date), (_gst_value_initialize):
666 * gst/gstvalue.h:
667 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
668 bunch of utility functions along with a hack that checks that
669 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
670 is required. Part of the grand scheme in #170777.
672 2005-09-22 Andy Wingo <wingo@pobox.com>
674 * gst/gstconfig.h.in: Psych out gtk-doc.
676 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
678 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
680 * tools/gst-inspect.c (print_element_list): Plug some
681 inconsequential leaks.
683 * gst/gstregistry.c (gst_registry_get_default): Doc.
685 * check/gst/gstplugin.c:
686 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
687 * gst/gstelementfactory.c (gst_element_factory_create):
688 * gst/gstindexfactory.c (gst_index_factory_create): Update for
689 refcount changes.
691 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
692 (gst_plugin_feature_load): Doc, don't eat refs.
694 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
695 (gst_plugin_list_free): Doc.
696 (gst_plugin_load_file): Doc updates.
698 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
699 accessors returning refcounted objects, return a ref.
701 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
702 accessor for caps. IDEMPOTENCE. Oh yes.
704 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
706 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
708 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
709 (_gst_debug_register_funcptr):
710 Add mutex to serialise access to the hash table with
711 the function pointer => function name string mapping;
712 make that hash table static scope (#316809).
714 * gst/registries/.cvsignore:
715 Remove left-over file.
717 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
719 * docs/pwg/appendix-porting.xml:
720 And something about newsegment events and caps-on-buffers to
721 the porting guide (feel free to improve).
723 2005-09-21 Andy Wingo <wingo@pobox.com>
725 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
726 data and event probes on the same pad.
727 (test_buffer_probe_once): Test that removing probes from within
728 the probe functions works.
730 2005-09-21 Andy Wingo <wingo@pobox.com>
732 * check/gst/gstutils.c: New file.
733 (test_buffer_probe_n_times): A simple buffer probe test. More to
734 come, foolios.
736 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
737 have-data::buffer, not have-data.
738 (gst_pad_add_event_probe): Likewise for have-data::event.
739 (gst_pad_add_data_probe): More docs. The part about 'resolving the
740 peer' isn't quite right yet though.
741 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
742 (gst_pad_remove_data_probe): Change to take the guint handler_id
743 as their arg, not the function+data, which is more glib-like.
745 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
746 the signal emission to indicate if the data is a buffer or an
747 event.
748 (gst_pad_get_type): Initialize buffer and event quarks.
749 (gst_pad_class_init): have-data is now a detailed signal, yes it
750 is.
752 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
754 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
755 * gst/gstutils.c: (gst_util_set_value_from_string),
756 (gst_util_set_object_arg):
757 Don't put functional code in g_return_if_fail() or
758 g_return_val_if_fail() statements, otherwise things will
759 break when G_DISABLE_CHECKS is defined during compilation.
761 2005-09-21 Stefan Kost <ensonic@users.sf.net>
763 * docs/gst/tmpl/.cvsignore:
764 * docs/gst/tmpl/gstvalue.sgml:
765 * gst/gstvalue.c:
766 * gst/gstvalue.h:
767 inlied another one and added some obvious docs
769 2005-09-21 Wim Taymans <wim@fluendo.com>
771 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
772 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
773 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
774 (gst_fdsrc_get_property), (gst_fdsrc_create):
775 * gst/elements/gstfdsrc.h:
776 Properly implement fdsrc. Removed signal and timeout,
777 better implemented somewhere else.
779 2005-09-21 Stefan Kost <ensonic@users.sf.net>
781 * docs/gst/tmpl/.cvsignore:
782 * docs/gst/tmpl/gstimplementsinterface.sgml:
783 * gst/gstinterface.c:
784 inlined more docs
786 2005-09-21 Stefan Kost <ensonic@users.sf.net>
788 * docs/gst/gstreamer-sections.txt:
789 * docs/gst/tmpl/.cvsignore:
790 * docs/gst/tmpl/gstenumtypes.sgml:
791 remove obsolete doc file
793 2005-09-21 David Schleef <ds@schleef.org>
795 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
796 little beer, fix a little leak.
798 2005-09-21 Stefan Kost <ensonic@users.sf.net>
800 * docs/gst/gstreamer-docs.sgml:
801 * docs/gst/gstreamer-sections.txt:
802 * docs/gst/tmpl/.cvsignore:
803 * gst/Makefile.am:
804 * gst/gst.h:
805 * gst/gstbin.c:
806 * gst/gstelement.h:
807 * gst/gstindex.c: (gst_index_class_init):
808 * gst/gstindex.h:
809 * gst/gstindexfactory.c: (gst_index_factory_get_type),
810 (gst_index_factory_class_init), (gst_index_factory_init),
811 (gst_index_factory_finalize), (gst_index_factory_new),
812 (gst_index_factory_destroy), (gst_index_factory_find),
813 (gst_index_factory_create), (gst_index_factory_make):
814 * gst/gstindexfactory.h:
815 * gst/gstpluginfeature.c:
816 * gst/gstpluginfeature.h:
817 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
818 more docs inlined, splitted gstindex.{c,h}
820 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
822 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
823 fix a leak
825 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
827 * gst/elements/gstfilesink.c: (gst_file_sink_init):
828 Set sync to FALSE by default.
830 2005-09-20 Wim Taymans <wim@fluendo.com>
832 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
833 (gst_base_sink_init):
834 Make sync property settable from subclass.
836 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
837 (gst_fake_sink_change_state):
838 Set sync to FALSE by default.
840 2005-09-20 Wim Taymans <wim@fluendo.com>
842 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
843 * tools/gst-launch.c: (main):
844 The timeout handler should have lower priority than the source
845 so we don't timeout before popping a message with 0 timeout.
846 Dump error messages after failed state change.
848 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
850 * tools/gst-inspect.c: (print_element_properties_info):
851 Fix two typos.
853 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
855 * check/gst/gstevent.c:
856 * gst/elements/gstfakesink.c:
857 * gst/elements/gstfakesink.h:
858 remove the sync property from fakesink.
859 has the side effect of setting sync TRUE
860 for fakesink, which is a change. Anyone who knows how
861 to fix this nicely in a GObject-y way, feel free.
863 2005-09-20 Stefan Kost <ensonic@users.sf.net>
865 * docs/gst/gstreamer-docs.sgml:
866 remove probe refsection
868 2005-09-20 Stefan Kost <ensonic@users.sf.net>
870 * check/Makefile.am:
871 disable valgrinding the controller test again
872 * docs/gst/gstreamer-sections.txt:
873 update for api-changes
875 2005-09-20 Wim Taymans <wim@fluendo.com>
877 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
878 (gst_base_sink_set_property), (gst_base_sink_get_property),
879 (gst_base_sink_do_sync):
880 * gst/base/gstbasesink.h:
881 Added sync property to basesink to disable clock sync.
883 2005-09-20 Andy Wingo <wingo@pobox.com>
885 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
886 eating the caller's refcount.
888 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
889 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
890 refcount.
892 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
893 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
894 of GLib 2.8 public, so we can know which refcount to check in
895 tests.
897 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
898 (gst_object_init): Only set the gst refcount if we're going ahead
899 with the refcount hack.
901 2005-09-20 Stefan Kost <ensonic@users.sf.net>
903 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
904 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
905 more leaks plumbed, added more debug-logging
906 * gst/gstmacros.h:
907 whitespace fix
909 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
911 * gst/gstmessage.c:
912 remove include of gstmemchunk.h
914 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
916 * gst/gstclock.c: (_gst_clock_id_free):
917 Commit from the Political Party For More Atomic CVS Commits,
918 so that people don't waste too much of their day fishing
919 out obvious leaks out of massive commits.
920 Oh, and fix a pretty damn obvious leak in the memchunk
921 removal code.
923 2005-09-20 Stefan Kost <ensonic@users.sf.net>
925 * check/Makefile.am:
926 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
927 plug mem-leak, re-add to valgrindable tests
929 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
931 * gst/gstplugin.h:
932 unbreak the build for those who have chronic arthritis
933 and typing "make check" is just too taxing on the hands
935 2005-09-20 Andy Wingo <wingo@pobox.com>
937 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
938 really want it out, you should fix plugins at the same time.
940 2005-09-19 Stefan Kost <ensonic@users.sf.net>
942 * configure.ac:
943 * docs/gst/gstreamer-sections.txt:
944 * gst/gstobject.c:
945 added missing symbols to api docs
946 disable ref-count hack if we have glib >= 2.8
948 2005-09-19 David Schleef <ds@schleef.org>
950 * docs/gst/Makefile.am: Ignore a few more internal headers
951 * docs/gst/gstreamer-docs.sgml: Remove old sections
952 * docs/gst/gstreamer-sections.txt: Remove old sections
953 * docs/gst/tmpl/gstobject.sgml: update
954 * docs/gst/tmpl/gstplugin.sgml: update
955 * docs/gst/tmpl/gstpluginfeature.sgml: update
956 * docs/random/ds/0.9-suggested-changes: update.
957 * gst/Makefile.am: remove memchunk and trashstack, since they're
958 not used.
959 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
960 * gst/gst.h: don't include some headers
961 * gst/gstchildproxy.c: add gstmarshal.h
962 * gst/gstclock.c: Don't use memchunks
963 * gst/gstminiobject.c: Add some docs
964 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
965 * gst/gstobject.h: same
966 * gst/gstplugin.c: include gstmacros.h
967 * gst/gstplugin.h: don't include gstmacros.h, since it's private
968 * gst/gstquery.c: don't use memchunks
969 * gst/gstregistry.c: rename gst_registry_deinit()
970 * gst/gstregistry.h: same
972 2005-09-19 David Schleef <ds@schleef.org>
974 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
975 * docs/libs/gstreamer-libs-sections.txt:
976 * docs/libs/tmpl/gstgetbits.sgml:
977 * docs/libs/tmpl/gstputbits.sgml:
979 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
981 * win32/gstenumtypes.c:
982 * win32/gstenumtypes.h:
983 Update.
985 2005-09-19 Wim Taymans <wim@fluendo.com>
987 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
988 Automatically PAUSE and RESUME a pipeline when a flushing seek
989 is performed.
991 2005-09-19 Andy Wingo <wingo@pobox.com>
993 * gst/gstregistry.h: Spacing fixen.
995 2005-09-19 Wim Taymans <wim@fluendo.com>
997 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
998 Handle state change failure more correctly.
1000 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
1002 * check/Makefile.am:
1003 * check/pipelines/cleanup.c: (run_pipeline):
1004 * check/pipelines/simple_launch_lines.c: (run_pipeline),
1005 (GST_START_TEST):
1006 enable cleanup again after fixing the leak
1007 * docs/README:
1008 some more info on docs
1010 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
1012 * check/Makefile.am:
1013 re-enable tests now that leaks are plugged
1014 * check/gst/gst.c:
1015 * check/gst/gstbin.c:
1016 * check/gst/gstpipeline.c:
1017 add some more tests while fixing leaks
1018 * common/check.mak:
1019 make sure binaries are uptodate when valgrinding/gdbing
1020 * gst/gst.c:
1021 * gst/gstelementfactory.c:
1022 remove a ref too many, and add a FIXME for when we get
1023 round to disposing of classes
1024 * gst/gstplugin.c:
1025 fix the refcounting when loading a plugin from a file and
1026 the code pretends that the pointer is the same even though
1027 of course it can change
1028 * gst/gstpluginfeature.c:
1029 unref plugins marked cached (a bit confusing as a name)
1030 as the docs state should be done
1031 various doc additions to explain refcounting
1032 * gst/gstregistry.c:
1033 * gst/gstregistryxml.c:
1034 debugging
1036 2005-09-19 Wim Taymans <wim@fluendo.com>
1038 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1039 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
1040 (send_messages), (GST_START_TEST), (gstbus_suite):
1041 * check/gst/gstpipeline.c: (GST_START_TEST):
1042 * check/pipelines/cleanup.c: (run_pipeline):
1043 * check/pipelines/simple_launch_lines.c: (run_pipeline),
1044 (GST_START_TEST):
1045 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
1046 (gst_bus_source_check), (gst_bus_source_dispatch),
1047 (gst_bus_create_watch), (gst_bus_add_watch_full),
1048 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
1049 * gst/gstbus.h:
1050 * tools/gst-launch.c: (event_loop):
1051 * tools/gst-md5sum.c: (event_loop):
1052 GstBusHandler -> GstBusFunc, return value has the same meaning as
1053 any other GSource (FALSE == remove source).
1054 _add_watch() and _add_watch_full() now take a MessageType mask to
1055 only handle specific types of messages.
1056 _poll() returns the GstMessage instead of the message type to avoid
1057 race conditions.
1058 _have_pending() takes a MessageType mask now too.
1059 Added testsuite for multiple bus watches.
1060 Fix testsuites and applications for new bus API.
1062 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
1064 * check/Makefile.am:
1065 mark a bunch of the tests as to fix until we fix them
1067 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
1069 * common/check.mak:
1070 use GST_PLUGIN settings for valgrind tests as well, so we're
1071 valgrinding the correct thing
1072 * gst/gst.c: (init_post):
1073 plug another leak
1075 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
1077 * gst/gst.c: (init_post), (gst_deinit):
1078 * gst/gstelementfactory.c: (gst_element_factory_class_init),
1079 (gst_element_factory_finalize), (gst_element_factory_cleanup):
1080 * gst/gstindex.c: (gst_index_factory_class_init),
1081 (gst_index_factory_finalize):
1082 * gst/gstobject.c: (gst_object_dispose):
1083 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
1084 (gst_plugin_load_file), (gst_plugin_desc_free):
1085 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
1086 (gst_plugin_feature_finalize):
1087 * gst/gstregistry.c: (gst_registry_class_init),
1088 (gst_registry_init), (gst_registry_finalize),
1089 (gst_registry_get_default), (gst_registry_deinit):
1090 * gst/gstregistry.h:
1091 * gst/gstregistryxml.c: (load_feature), (load_plugin):
1092 various cleanups and memleak plugging. make valgrind is happy now.
1094 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
1096 * common/check.mak:
1097 add a check-valgrind target
1099 2005-09-18 David Schleef <ds@schleef.org>
1101 * tools/gst-inspect.c: Revert the GOption code.
1103 2005-09-17 David Schleef <ds@schleef.org>
1105 * check/Makefile.am: Fix environment variables.
1106 * check/gst/gstplugin.c: Fix for API changes.
1107 * tools/gst-inspect.c: Fix for API changes.
1108 * tools/gst-xmlinspect.c: Fix for API changes.
1109 * gst/gstelementfactory.c:
1110 * gst/gstplugin.c:
1111 * gst/gstplugin.h:
1112 * gst/gstpluginfeature.c:
1113 * gst/gstpluginfeature.h:
1114 * gst/gstregistry.c:
1115 * gst/gstregistry.h:
1116 * gst/gstregistryxml.c:
1117 * gst/gsttypefind.c:
1118 * gst/gsttypefindfactory.c:
1119 * gst/indexers/gstfileindex.c:
1120 * gst/indexers/gstmemindex.c:
1121 * gst/schedulers/Makefile.am:
1122 Change registry to keep track of both plugins and features,
1123 removing the feature tracking from plugins themselves.
1125 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
1127 * check/Makefile.am:
1128 * tools/gst-register.1.in:
1129 remove gst-register
1131 2005-09-15 David Schleef <ds@schleef.org>
1133 * check/gst/gstplugin.c:
1134 * gst/gstelementfactory.c:
1135 * gst/gstplugin.c:
1136 * gst/gstpluginfeature.c:
1137 * gst/gstregistry.c:
1138 Getting tired of debugging. Disabled all the unreffing of
1139 plugins and features, which fixes the segfaults, but of
1140 course leaks like crazy. At least playbin works.
1142 2005-09-15 David Schleef <ds@schleef.org>
1144 * check/gst/gstplugin.c: (register_check_elements),
1145 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
1146 More testing
1147 * gst/elements/gsttypefindelement.c: Fix refcounting.
1148 * gst/gsttypefind.c:
1149 * gst/gsttypefindfactory.c:
1150 * gst/gsttypefindfactory.h:
1152 2005-09-15 David Schleef <ds@schleef.org>
1154 * gst/gstindex.c: get refcounting correct.
1155 * gst/gstregistry.c: Handle the case where a feature/plugin is
1156 not found.
1158 2005-09-15 David Schleef <ds@schleef.org>
1160 * check/Makefile.am:
1161 * check/gst/gstplugin.c: Add test
1162 * gst/gstplugin.c: Fix problems noticed by testsuite
1163 * gst/gstplugin.h:
1164 * gst/gstregistry.c:
1165 * gst/gstregistry.h:
1167 2005-09-15 David Schleef <ds@schleef.org>
1169 * gst/gstplugin.c: Implement semi-decent recounting and locking
1170 in plugins and plugin features.
1171 * gst/gstplugin.h:
1172 * gst/gstpluginfeature.c:
1173 * gst/gstpluginfeature.h:
1174 * gst/gstregistry.c:
1176 2005-09-15 Michael Smith <msmith@fluendo.com>
1178 * gst/gstregistry.c: (gst_registry_get_feature_list):
1179 Implement this. Makes oggdemux work; decodebin still broken.
1181 2005-09-14 David Schleef <ds@schleef.org>
1183 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
1184 #316076)
1185 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
1186 * gst/check/Makefile.am:
1187 * libs/gst/controller/Makefile.am:
1188 * libs/gst/dataprotocol/Makefile.am:
1190 2005-09-14 David Schleef <ds@schleef.org>
1192 * configure.ac: Remove getbits library. Nothing uses it, and
1193 it should be in something like liboil if someone did want
1194 to use it.
1195 * libs/gst/Makefile.am:
1196 * libs/gst/getbits/Makefile.am:
1197 * libs/gst/getbits/gbtest.c:
1198 * libs/gst/getbits/getbits.c:
1199 * libs/gst/getbits/getbits.h:
1200 * libs/gst/getbits/gstgetbits_generic.c:
1201 * libs/gst/getbits/gstgetbits_i386.s:
1202 * libs/gst/getbits/gstgetbits_inl.h:
1204 2005-09-14 David Schleef <ds@schleef.org>
1206 * gst/Makefile.am: Dist glib-compat.h
1208 2005-09-14 David Schleef <ds@schleef.org>
1210 * configure.ac: Remove gst/registries, since it's no longer used.
1211 * gst/registries/Makefile.am:
1212 * gst/registries/gstlibxmlregistry.c:
1213 * gst/registries/gstlibxmlregistry.h:
1214 * gst/registries/gstxmlregistry.c:
1215 * gst/registries/gstxmlregistry.h:
1216 * gst/registries/registrytest.c:
1218 2005-09-14 David Schleef <ds@schleef.org>
1220 * gst/glib-compat.h:
1221 * gst/gstregistryxml.c:
1222 Convergence is near. Seriously.
1224 2005-09-14 David Schleef <ds@schleef.org>
1226 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
1227 * gst/glib-compat.h:
1228 Attempt #4 to appease the buildbots.
1230 2005-09-14 David Schleef <ds@schleef.org>
1232 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
1233 Attempt #3.
1235 2005-09-14 David Schleef <ds@schleef.org>
1237 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
1238 Attempt #2.
1240 2005-09-14 David Schleef <ds@schleef.org>
1242 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
1243 the new functions.
1245 2005-09-14 David Schleef <ds@schleef.org>
1247 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
1248 * gst/glib-compat.h: Add some functions that are in newer versions
1249 of glib than we care to require.
1250 * gst/gstregistryxml.c: Use them.
1252 2005-09-14 David Schleef <ds@schleef.org>
1254 * po/POTFILES.in: remove gst-register.c
1256 2005-09-14 David Schleef <ds@schleef.org>
1258 * docs/gst/gstreamer-docs.sgml:
1259 * docs/gst/gstreamer-sections.txt:
1260 * docs/gst/gstreamer.types:
1261 * docs/gst/tmpl/gstelement.sgml:
1262 * docs/gst/tmpl/gstplugin.sgml:
1263 * docs/gst/tmpl/gstpluginfeature.sgml:
1264 Documentation updates for registry changes.
1266 2005-09-14 David Schleef <ds@schleef.org>
1268 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
1269 because we don't require glib-2.8.
1271 2005-09-14 David Schleef <ds@schleef.org>
1273 * gst/gstregistryxml.c: Added. Essentially moved out of the
1274 registries directory.
1276 2005-09-14 David Schleef <ds@schleef.org>
1278 * check/Makefile.am:
1279 * check/generic/states.c:
1280 * gst/Makefile.am:
1281 * gst/gst.c:
1282 * gst/gst.h:
1283 * gst/gst_private.h:
1284 * gst/gstelementfactory.c:
1285 * gst/gstindex.c:
1286 * gst/gstinfo.c:
1287 * gst/gstplugin.c:
1288 * gst/gstplugin.h:
1289 * gst/gstpluginfeature.c:
1290 * gst/gstpluginfeature.h:
1291 * gst/gstregistry.c:
1292 * gst/gstregistry.h:
1293 * gst/gstregistrypool.c: remove
1294 * gst/gstregistrypool.h: remove
1295 * gst/gsttypefind.c:
1296 * gst/gsttypefindfactory.c:
1297 * gst/gsturi.c:
1298 * tools/Makefile.am:
1299 * tools/gst-compprep.c:
1300 * tools/gst-inspect.c:
1301 * tools/gst-register.c: remove
1302 * tools/gst-xmlinspect.c:
1303 Registry rewrite. Changes registry from being a file created
1304 by a tool into a simple cache file created automatically by
1305 libgstreamer. Removed gst-register (because it's no longer
1306 needed). Remove registry pools, because we only have one
1307 registry implementation (XML). Fix up other subsystems as
1308 necessary.
1310 2005-09-13 Michael Smith <msmith@fluendo.com>
1312 * gst/gstconfig.h.in:
1313 Don't Use windows linking attributes for MinGW. Fixes #316157
1315 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
1317 * gst/gstutils.c: (set_state_async_thread_func),
1318 (gst_element_set_state_async):
1319 Apparently people think it's better if this function doesn't
1320 try to set the state to whatever state was asked for on the first
1321 call to this function for any object. Seriously.
1323 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
1325 * check/gst/gstpipeline.c: (GST_START_TEST):
1326 * docs/gst/gstreamer-sections.txt:
1327 * gst/gstutils.c: (set_state_async_thread_func),
1328 (gst_element_set_state_async):
1329 * gst/gstutils.h:
1330 add a "gst_element_set_state_async" method that
1331 sets the state and starts a thread to make sure the state
1332 change completes as best as it can
1334 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
1336 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
1337 codify design+behaviour in testsuite after discussion
1339 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
1341 * docs/gst/tmpl/gstelement.sgml:
1342 * docs/manual/appendix-quotes.xml:
1343 add a quote
1344 * gst/gstelement.c: (gst_element_set_state):
1345 add some debug
1347 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
1349 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
1350 (gst_base_transform_prepare_output_buf),
1351 (gst_base_transform_handle_buffer):
1352 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
1353 (gst_capsfilter_prepare_buf):
1354 Remove the requirement for sub-classes to call the parent
1355 implementation of prepare_output_buffer with a wrapper function.
1357 * gst/gsttaglist.h:
1358 * gst/gsttagsetter.h:
1359 Fix #define wrapper
1361 2005-09-11 Stefan Kost <ensonic@users.sf.net>
1363 * docs/gst/gstreamer-sections.txt:
1364 more doc cleanups
1366 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
1368 * docs/gst/gstreamer-sections.txt:
1369 * docs/gst/tmpl/gstelement.sgml:
1370 * docs/gst/tmpl/gstplugin.sgml:
1371 * gst/gstminiobject.c:
1372 * gst/gstvalue.h:
1373 docs now stop throwing warnings
1375 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
1377 * docs/gst/gstreamer-sections.txt:
1378 * docs/gst/gstreamer.types:
1379 * docs/gst/tmpl/gstpad.sgml:
1380 * docs/gst/tmpl/gsttypes.sgml:
1381 * gst/base/gstadapter.h:
1382 * gst/base/gstbasesink.h:
1383 * gst/base/gstbasesrc.h:
1384 * gst/gstbin.h:
1385 * gst/gstbuffer.h:
1386 * gst/gstbus.h:
1387 * gst/gstcaps.h:
1388 * gst/gstclock.h:
1389 * gst/gstelement.h:
1390 * gst/gstevent.h:
1391 * gst/gstmessage.h:
1392 * gst/gstpad.h:
1393 * gst/gststructure.c:
1394 * gst/registries/gstlibxmlregistry.h:
1395 various documentation fixes
1397 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
1399 * docs/gst/gstreamer-sections.txt:
1400 * docs/gst/tmpl/gstvalue.sgml:
1401 rearrange gstvalue section
1402 * gst/gstutils.c: (gst_element_state_get_name):
1403 NONE -> VOID
1404 * gst/gstvalue.c: (_gst_value_initialize):
1405 * gst/gstvalue.h:
1406 doc updates
1408 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
1410 * check/gst-libs/controller.c:
1411 Header include fix.
1412 * gst/base/gstbasetransform.c:
1413 (gst_base_transform_default_prepare_buf),
1414 (gst_base_transform_handle_buffer):
1415 * gst/base/gstbasetransform.h:
1416 Some more basetransform changes and fixes to enable sub-classes
1417 that modify buffer metadata only.
1418 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1419 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
1420 (gst_capsfilter_prepare_buf):
1421 If the output pad has fixed allowed caps and input buffers
1422 don't have any, set the fixed caps on outgoing buffers.
1424 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
1425 * check/elements/identity.c: (GST_START_TEST):
1426 Make the error a little clearer when the test fails because
1427 identity made a copy of the buffer.
1428 * docs/gst/gstreamer-sections.txt:
1429 New symbols in gstbasetransform.h
1430 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
1431 (gst_base_transform_init), (gst_base_transform_transform_size),
1432 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1433 (gst_base_transform_default_prepare_buf),
1434 (gst_base_transform_get_unit_size),
1435 (gst_base_transform_buffer_alloc),
1436 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
1437 (gst_base_transform_change_state),
1438 (gst_base_transform_set_passthrough),
1439 (gst_base_transform_set_in_place),
1440 (gst_base_transform_is_in_place):
1441 * gst/base/gstbasetransform.h:
1442 Change BaseTransform to separate in_place operate from same_caps
1443 output. in_place implies that the element can perform the transform
1444 on incoming buffers in-place, even if the caps on the output are
1445 different.
1446 Sub-class elements can now implement special buffer allocation
1447 methods for outgoing buffers if they wish to.
1448 Big documentation addition.
1449 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
1450 * gst/elements/gstelements.c:
1451 Changes for basetransform modifications.
1452 * gst/elements/Makefile.am:
1453 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
1454 Compile fix. Extra debug output.
1456 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
1458 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
1459 (gst_pad_suite):
1460 add tests for valid pad naming
1461 * gst/check/gstcheck.c: (gst_check_log_message_func),
1462 (gst_check_log_critical_func):
1463 add ASSERT_WARNING
1464 remove printing of code, it is fragile when the code contains
1465 % and the line number is enough info
1466 * gst/check/gstcheck.h:
1467 * gst/gstpad.c: (gst_pad_template_new):
1468 fix memleaks
1470 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
1472 * configure.ac:
1473 say what CHECK flags we use
1474 * docs/libs/gstreamer-libs.types:
1475 * libs/gst/controller/Makefile.am:
1476 * libs/gst/controller/gst-controller.c:
1477 * libs/gst/controller/gst-controller.h:
1478 * libs/gst/controller/gst-helper.c:
1479 * libs/gst/controller/gst-interpolation.c:
1480 * libs/gst/controller/gstcontroller.c:
1481 * libs/gst/controller/gsthelper.c:
1482 * libs/gst/controller/gstinterpolation.c:
1483 * tools/gst-inspect.c: (print_plugin_info):
1484 we don't use dashes in header names
1486 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
1488 * check/Makefile.am:
1489 * check/gst/.cvsignore:
1490 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
1491 (gst_pipeline_suite), (main):
1492 adding a test for pipelines and state changes
1493 * gst/gstutils.c: (get_state_func):
1494 add some debugging
1495 * gstreamer.spec.in:
1496 fix up spec file
1498 2005-09-08 Michael Smith <msmith@fluendo.com>
1500 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
1501 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
1502 (gst_file_src_is_seekable), (gst_file_src_get_size),
1503 (gst_file_src_start):
1504 * gst/elements/gstfilesrc.h:
1505 Various fixes for unseekable, unmmapable, and non-normal files, so
1506 that fallback to read() rather than mmap() works.
1507 * gst/gstevent.c: (gst_event_new_newsegment):
1508 Allow newsegment events with segment_start == segment_end, as will
1509 correctly happen if you use filesrc on a zero-size file, for
1510 example.
1512 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
1514 * gst/gstplugin.c: (gst_plugin_load_file):
1515 Call g_module_close when we don't load the module
1517 * gst/registries/gstlibxmlregistry.c:
1518 (gst_xml_registry_get_property):
1519 Port leak fix from 0.8
1521 2005-09-07 Stefan Kost <ensonic@users.sf.net>
1523 * docs/gst/gstreamer-docs.sgml:
1524 * docs/gst/tmpl/.cvsignore:
1525 * docs/gst/tmpl/gsttrace.sgml:
1526 * docs/gst/tmpl/gsttrashstack.sgml:
1527 * gst/Makefile.am:
1528 * gst/gst.h:
1529 * gst/gstelement.h:
1530 * gst/gstevent.h:
1531 * gst/gstmessage.c:
1532 * gst/gstmessage.h:
1533 * gst/gsttag.c:
1534 * gst/gsttag.h:
1535 * gst/gsttaginterface.c:
1536 * gst/gsttaginterface.h:
1537 * gst/gsttaglist.c:
1538 * gst/gsttaglist.h:
1539 * gst/gsttagsetter.c:
1540 * gst/gsttagsetter.h:
1541 * gst/gsttrace.c:
1542 * gst/gsttrace.h:
1543 * gst/gsttrashstack.c:
1544 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
1545 inlined docs for gsttrace, gsttrashstack
1547 2005-09-07 Stefan Kost <ensonic@users.sf.net>
1549 * gst/Makefile.am:
1550 * gst/elements/gstbufferstore.h:
1551 * gst/elements/gsttypefindelement.c:
1552 * gst/elements/gsttypefindelement.h:
1553 * gst/gst.h:
1554 * gst/gsttypefind.c:
1555 * gst/gsttypefind.h:
1556 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
1557 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
1558 (gst_type_find_factory_dispose),
1559 (gst_type_find_factory_unload_thyself),
1560 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
1561 (gst_type_find_factory_get_caps),
1562 (gst_type_find_factory_get_extensions),
1563 (gst_type_find_factory_call_function):
1564 * gst/gsttypefindfactory.h:
1565 * gst/registries/gstlibxmlregistry.c:
1566 * gst/registries/gstxmlregistry.c:
1567 splitted gsttypefind into gsttypefind, gsttypefindfactory
1569 2005-09-07 Andy Wingo <wingo@pobox.com>
1571 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
1572 condition whereby the pad's task function is entered before the
1573 pad_mode variable was set.
1575 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
1577 * gst/gstpad.c: (gst_pad_alloc_buffer):
1578 Catch misbehaving pad_alloc functions that don't
1579 set up caps and do it for them.
1581 2005-09-07 Stefan Kost <ensonic@users.sf.net>
1583 * check/pipelines/simple_launch_lines.c: (run_pipeline):
1584 test for pipe!=NULL
1585 * docs/gst/tmpl/.cvsignore:
1586 * docs/gst/tmpl/gstmemchunk.sgml:
1587 * docs/gst/tmpl/gstparse.sgml:
1588 * docs/gst/tmpl/gsttaglist.sgml:
1589 * docs/gst/tmpl/gsttagsetter.sgml:
1590 * docs/gst/tmpl/gsttypefind.sgml:
1591 * docs/gst/tmpl/gsttypefindfactory.sgml:
1592 * gst/gstmemchunk.c:
1593 * gst/gstparse.c:
1594 * gst/gsttag.c:
1595 * gst/gsttaginterface.c:
1596 * gst/gsttypefind.c:
1597 * gst/gsttypefind.h:
1598 inlined more docs
1600 === release 0.9.2 ===
1602 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
1604 * NEWS:
1605 * RELEASE:
1606 * configure.ac:
1607 releasing 0.9.2, "South"
1609 2005-09-05 Andy Wingo <wingo@pobox.com>
1611 * gst/registries/gstxmlregistry.h:
1612 * gst/registries/gstxmlregistry.c: Um... resurrect...
1614 * gst/registries/gstxmlregistry.h:
1615 * gst/registries/gstxmlregistry.c: and update to newer API.
1616 Incidentally they should be a bit faster now that they don't have
1617 to parse the caps.
1619 2005-09-05 Andy Wingo <wingo@pobox.com>
1621 * gst/registries/gstxmlregistry.h:
1622 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
1623 replaced by the libxml registry a while back
1625 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
1627 * docs/gst/tmpl/gstplugin.sgml:
1628 * gst/elements/gstelements.c:
1629 * gst/gst.c:
1630 * gst/gstplugin.c: (gst_plugin_register_func),
1631 (gst_plugin_desc_copy), (gst_plugin_desc_free),
1632 (gst_plugin_get_source):
1633 * gst/gstplugin.h:
1634 * gst/registries/gstlibxmlregistry.c: (load_plugin),
1635 (gst_xml_registry_save_plugin):
1636 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
1637 (gst_xml_registry_save_plugin):
1638 * tools/gst-inspect.c: (print_plugin_info):
1639 add a "source" plugin description field, to represent the source
1640 module this plugin is a part of. By default GST_PLUGIN_DEFINE
1641 will set it to PACKAGE, which is automake's idea of the name of
1642 the source project.
1644 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
1646 * Makefile.am:
1647 * autogen.sh:
1648 * configure.ac:
1649 * docs/Makefile.am:
1650 * docs/faq/Makefile.am:
1651 * docs/gst/tmpl/gstelement.sgml:
1652 * docs/gst/tmpl/gsttypes.sgml:
1653 * docs/htmlinstall.mak:
1654 * docs/manual/Makefile.am:
1655 * docs/pwg/Makefile.am:
1656 reorganize doc build a little
1657 split out docbook and gtk-doc stuff
1658 have two separate --enable's and enable them through autogen
1659 but disable by default in configure (to be similar to other
1660 projects)
1661 * gstreamer.spec.in:
1662 clean up docs install
1663 * po/af.po:
1664 * po/az.po:
1665 * po/ca.po:
1666 * po/cs.po:
1667 * po/de.po:
1668 * po/en_GB.po:
1669 * po/fr.po:
1670 * po/it.po:
1671 * po/nb.po:
1672 * po/nl.po:
1673 * po/ru.po:
1674 * po/sq.po:
1675 * po/sr.po:
1676 * po/sv.po:
1677 * po/tr.po:
1678 * po/uk.po:
1679 * po/vi.po:
1680 translation updates
1682 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
1684 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
1685 Add comment.
1687 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
1688 (gst_fake_sink_change_state):
1689 Make state change function thread-safe.
1691 * gst/gstpad.c: (gst_pad_alloc_buffer):
1692 Set offset on generic buffer allocated by fallback.
1694 2005-09-03 Stefan Kost <ensonic@users.sf.net>
1696 * docs/gst/gstreamer-sections.txt:
1697 * docs/gst/tmpl/gstelement.sgml:
1698 * gst/gstpad.c:
1699 * libs/gst/controller/gst-controller.c:
1700 (gst_controlled_property_set_interpolation_mode),
1701 (gst_controlled_property_new),
1702 (gst_controller_find_controlled_property):
1703 run the wingo-magic script against the docs
1705 2005-09-02 Stefan Kost <ensonic@users.sf.net>
1707 * docs/gst/gstreamer-docs.sgml:
1708 * docs/gst/gstreamer-sections.txt:
1709 * docs/gst/tmpl/.cvsignore:
1710 * docs/gst/tmpl/gstelementdetails.sgml:
1711 * docs/gst/tmpl/gstelementfactory.sgml:
1712 * gst/gst.c:
1713 * gst/gstbus.c:
1714 * gst/gstelementfactory.c:
1715 * gst/gstelementfactory.h:
1716 merged elementdetails docs into elementfactory docs
1717 inlined both
1719 2005-09-02 Andy Wingo <wingo@pobox.com>
1721 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
1722 consider this enum an enum and not a flags.
1724 2005-09-02 Stefan Kost <ensonic@users.sf.net>
1726 * docs/gst/gstreamer-docs.sgml:
1727 * docs/gst/tmpl/.cvsignore:
1728 * docs/gst/tmpl/gstghostpad.sgml:
1729 * docs/gst/tmpl/gstiterator.sgml:
1730 * docs/gst/tmpl/gstmacros.sgml:
1731 * docs/gst/tmpl/gstrealpad.sgml:
1732 * docs/gst/tmpl/gstregistry.sgml:
1733 * docs/gst/tmpl/gstregistrypool.sgml:
1734 * docs/gst/tmpl/gststructure.sgml:
1735 * docs/gst/tmpl/gstsystemclock.sgml:
1736 * docs/gst/tmpl/gsttrace.sgml:
1737 * gst/gstghostpad.c:
1738 * gst/gstmacros.h:
1739 * gst/gstmemchunk.c:
1740 * gst/gstmemchunk.h:
1741 * gst/gstqueue.c:
1742 * gst/gstregistry.c:
1743 * gst/gstregistrypool.c:
1744 * gst/gststructure.c:
1745 * gst/gstsystemclock.c:
1746 more docs inlined
1748 2005-09-02 Andy Wingo <wingo@pobox.com>
1750 * gst/gstelement.h (GstState): Renamed from GstElementState,
1751 changed to be a normal enum instead of flags.
1752 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
1753 munged to be GST_STATE_CHANGE_*.
1754 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
1755 work with the new state representation.
1756 (GstStateChange): New enumeration of possible state transitions.
1757 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
1758 (GstElementClass::change_state): Pass the GstStateChange along as
1759 an argument. Helps language bindings, so they don't have to use
1760 tricky lock-needing macros like GST_STATE_CHANGE ().
1762 * scripts/update-states (file): New script. Run it on a file to
1763 update it for state naming and API changes. Updates files in
1764 place.
1766 * All files updated for the new API.
1768 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
1770 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
1771 * gst/gstutils.c: (gst_util_set_value_from_string),
1772 (gst_util_set_object_arg):
1773 fix a bunch of unchecked return values
1774 * tools/gst-complete.c: (main):
1775 * gstreamer.spec.in:
1776 clean up a little
1778 2005-09-01 Wim Taymans <wim@fluendo.com>
1780 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1781 (gst_base_sink_event), (gst_base_sink_do_sync),
1782 (gst_base_sink_handle_event):
1783 * gst/base/gstbasesink.h:
1784 Handle newsegments more correctly.
1786 * gst/gstbus.c:
1787 Fix docs.
1789 * gst/gstevent.c: (gst_event_new_newsegment):
1790 A newsegment cannot have a start_time of -1
1792 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
1794 * win32/gstenumtypes.c:
1795 * win32/gstenumtypes.h:
1796 Update
1798 2005-08-31 Stefan Kost <ensonic@users.sf.net>
1800 * libs/gst/controller/gst-controller.c:
1801 (gst_controlled_property_set_interpolation_mode),
1802 (gst_controlled_property_new):
1803 fixed boolean again
1805 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
1807 * docs/faq/gst-uninstalled:
1808 add -good
1809 * gst/gstevent.c:
1810 * gst/gstevent.h:
1811 remove wrong docs
1812 * gst/gstutils.c: (gst_element_link_filtered):
1813 * gst/gstutils.h:
1814 add gst_element_link_filtered
1816 2005-08-31 Stefan Kost <ensonic@users.sf.net>
1818 * docs/gst/gstreamer-docs.sgml:
1819 * docs/gst/gstreamer-sections.txt:
1820 * docs/gst/tmpl/.cvsignore:
1821 * docs/gst/tmpl/gsterror.sgml:
1822 * docs/gst/tmpl/gstfilter.sgml:
1823 * docs/gst/tmpl/gsturihandler.sgml:
1824 * docs/gst/tmpl/gsturitype.sgml:
1825 * docs/gst/tmpl/gstutils.sgml:
1826 * docs/gst/tmpl/gstxml.sgml:
1827 * gst/gsterror.c:
1828 * gst/gsterror.h:
1829 * gst/gstfilter.c:
1830 * gst/gsturi.c:
1831 * gst/gsturitype.c:
1832 * gst/gstutils.c:
1833 * gst/gstxml.c:
1834 inlined more docs, fixed double id-ref
1836 2005-08-31 Wim Taymans <wim@fluendo.com>
1838 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
1839 (gst_base_transform_handle_buffer):
1840 Passthrough elements don't need the caps as they don't care.
1842 2005-08-31 Wim Taymans <wim@fluendo.com>
1844 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
1845 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
1846 Don't leak refcounts on buffers.
1848 2005-08-31 Wim Taymans <wim@fluendo.com>
1850 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
1851 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1852 (gst_base_transform_chain), (gst_base_transform_change_state):
1853 * gst/base/gstbasetransform.h:
1854 Handle the case where we are not negotiated more gracefully.
1856 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
1858 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
1859 (gst_file_src_map_region):
1860 Set READONLY flag on mmap'ed buffers, otherwise
1861 gst_buffer_make_writable() won't work properly (#314708).
1863 2005-08-31 Wim Taymans <wim@fluendo.com>
1865 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
1866 passthrough elements can even do inplace on non writable
1867 buffers (as they don't touch them).
1869 2005-08-31 Stefan Kost <ensonic@users.sf.net>
1871 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
1872 (gst_test_mono_source_set_property),
1873 (gst_test_mono_source_class_init), (GST_START_TEST),
1874 (gst_controller_suite):
1875 more tests (hehe I have the most)
1876 * gst/gstbus.c:
1877 describe popping messages whenusing mulltiple sources
1878 * libs/gst/controller/gst-controller.c:
1879 (gst_controlled_property_set_interpolation_mode),
1880 (gst_controlled_property_new):
1881 * libs/gst/controller/gst-controller.h:
1882 * libs/gst/controller/gst-interpolation.c:
1883 implement boolean properties
1885 2005-08-31 Wim Taymans <wim@fluendo.com>
1887 * gst/gstminiobject.c: (gst_mini_object_ref):
1888 Cannot assert that the refcount has to be positive
1889 since a disposed object can be resurrected.
1891 2005-08-31 Wim Taymans <wim@fluendo.com>
1893 * gst/gstpad.c: (gst_pad_init):
1894 Revert change, need to first fix badly behaving
1895 apps.
1897 2005-08-30 Wim Taymans <wim@fluendo.com>
1899 * check/elements/fakesrc.c: (setup_fakesrc):
1900 * check/elements/identity.c: (setup_identity):
1901 Activate pads before using them.
1903 2005-08-30 Wim Taymans <wim@fluendo.com>
1905 * gst/base/gstadapter.c: (gst_adapter_flush):
1906 Flushing out 0 bytes is ok for this function.
1908 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1909 no newsegment gives a warning and sets the start/stop to
1910 invalid.
1912 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
1913 (gst_base_transform_set_passthrough):
1914 Some debug info.
1916 * gst/gstminiobject.c: (gst_mini_object_ref):
1917 Check refcount here too.
1919 * gst/gstpad.c: (gst_pad_init):
1920 Pads are initially flushing and refusing data.
1922 * gst/gstutils.c: (gst_element_link_pads_filtered):
1923 When adding a capsfilter element make sure it has the
1924 same state as the parent bin.
1926 2005-08-30 Stefan Kost <ensonic@users.sf.net>
1928 * docs/gst/tmpl/.cvsignore:
1929 * docs/gst/tmpl/gstformat.sgml:
1930 * docs/gst/tmpl/gstversion.sgml:
1931 * gst/gstbus.h:
1932 * gst/gstformat.c:
1933 * gst/gstformat.h:
1934 * gst/gstversion.h.in:
1935 more docs and two more inlined
1937 2005-08-30 Wim Taymans <wim@fluendo.com>
1939 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
1940 Don't sync to clock.
1942 2005-08-30 Stefan Kost <ensonic@users.sf.net>
1944 * docs/gst/gstreamer-sections.txt:
1945 ultral33t func10ns deserve to appear in the docs actually
1946 * docs/gst/tmpl/.cvsignore:
1947 * docs/gst/tmpl/gstcompat.sgml:
1948 * docs/gst/tmpl/gstconfig.sgml:
1949 * gst/check/gstcheck.c:
1950 * gst/gstcompat.h:
1951 * gst/gstconfig.h.in:
1952 inlined more docs
1954 2005-08-30 Stefan Kost <ensonic@users.sf.net>
1956 * docs/gst/tmpl/.cvsignore:
1957 * docs/gst/tmpl/gstquery.sgml:
1958 * docs/gst/tmpl/gstutils.sgml:
1959 * gst/gstquery.c:
1960 * gst/gstquery.h:
1961 inlined and extended docs
1963 2005-08-30 Stefan Kost <ensonic@users.sf.net>
1965 * check/gst-libs/controller.c: (GST_START_TEST),
1966 (gst_controller_suite):
1967 more tests
1968 * docs/gst/tmpl/gstutils.sgml:
1969 * docs/libs/gstreamer-libs-sections.txt:
1970 * docs/libs/tmpl/gstdataprotocol.sgml:
1971 include path fixes
1972 * examples/controller/audio-example.c: (main):
1973 controller example works now
1974 * gst/gstclock.h:
1975 doc fixes
1976 * tools/gst-inspect.c: (print_element_properties_info):
1977 show param spec flags
1979 2005-08-29 Andy Wingo <wingo@pobox.com>
1981 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
1983 2005-08-28 Andy Wingo <wingo@pobox.com>
1985 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
1986 as having two arguments instead of just one. Allows superclasses
1987 to access information on subclasses -- see the terrible for() loop
1988 in gtype.c:g_type_create_instance for the reason why. All callers
1989 changed.
1991 2005-08-27 Stefan Kost <ensonic@users.sf.net>
1993 * docs/design/part-messages.txt:
1994 update info
1995 * docs/gst/tmpl/.cvsignore:
1996 * docs/gst/tmpl/gstcaps.sgml:
1997 * docs/gst/tmpl/gstclock.sgml:
1998 * gst/gstbus.c:
1999 * gst/gstcaps.c:
2000 * gst/gstcaps.h:
2001 * gst/gstclock.c:
2002 * gst/gstclock.h:
2003 * gst/gstmessage.c:
2004 added descriptions for bus and message
2005 inline caps and clock docs
2007 2005-08-27 Stefan Kost <ensonic@users.sf.net>
2009 * gst/gstmessage.c:
2010 * gst/gstmessage.h:
2011 doc fixes
2013 2005-08-27 Stefan Kost <ensonic@users.sf.net>
2015 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
2016 fix div-by-zero
2018 2005-08-26 Andy Wingo <wingo@pobox.com>
2020 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
2021 element_set_state's return val.
2022 (test_2_elements): Add test that's been disabled for months.
2024 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
2025 can-activate-pull properties.
2027 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
2028 can-activate-pull properties. Implement is_seekable so fakesrc can
2029 operate in pull mode.
2031 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
2032 properties.
2033 (gst_base_sink_activate, gst_base_sink_activate_pull)
2034 (gst_base_sink_activate_push): Make activation mode choosing work.
2035 Cleanups.
2036 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
2037 is right. Make pull mode work. Post an eos before pausing in pull
2038 mode.
2039 (gst_base_sink_change_state): Pay attention to the core's
2040 change_state() return val.
2042 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
2043 has-getrange properties. Cleanups.
2045 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
2046 has_getrange and replace with can_activate_pull and
2047 can_activate_push.
2049 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
2050 locking comments. Remove has_loop, has_chain and replace with
2051 can_activate_pull and can_activate_push.
2053 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
2055 * configure.ac:
2056 * examples/Makefile.am:
2057 * examples/metadata/Makefile.am:
2058 * examples/metadata/read-metadata.c: (message_loop),
2059 (have_pad_handler), (make_pipeline), (print_tag), (main):
2060 Add metadata reading example that loops over a list of filenames,
2061 dumping any tags found.
2063 * gst/gstbus.c: (gst_bus_dispose):
2064 * gst/gstelement.c: (gst_element_dispose):
2065 Release a few potentially-held references in dispose.
2067 2005-08-26 Stefan Kost <ensonic@users.sf.net>
2069 * docs/gst/tmpl/gstminiobject.sgml:
2070 do *not* add tmpl/*.sgml files to CVS!
2072 2005-08-26 Stefan Kost <ensonic@users.sf.net>
2074 * libs/gst/bytestream/.cvsignore:
2075 * libs/gst/bytestream/Makefile.am:
2076 * libs/gst/bytestream/adapter.c:
2077 * libs/gst/bytestream/adapter.h:
2078 * libs/gst/bytestream/bytestream.c:
2079 * libs/gst/bytestream/bytestream.h:
2080 * libs/gst/bytestream/filepad.c:
2081 * libs/gst/bytestream/filepad.h:
2082 removing obsolete files
2084 2005-08-26 Stefan Kost <ensonic@users.sf.net>
2086 * docs/gst/gstreamer-docs.sgml:
2087 * docs/libs/gstreamer-libs-docs.sgml:
2088 disabed additional index entries again, as this makes docs-gen just
2089 slow and they aren't useful yet
2090 * docs/libs/gstreamer-libs-sections.txt:
2091 little -section.txt cleanup for libs
2093 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
2095 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2096 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
2097 fix up some debugging
2098 (gst_base_transform_get_unit_size),
2099 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
2100 (gst_base_transform_handle_buffer):
2101 * gst/base/gstbasetransform.h:
2102 handle and store timed NEWSEGMENT events so that subclasses that
2103 calculate time by counting samples have a segment_start time they
2104 need to add to their timestamps - see audioresample
2106 2005-08-26 Stefan Kost <ensonic@users.sf.net>
2108 * gst/gstbin.h:
2109 removed ';' from the end of macro defs
2110 * docs/gst/gstreamer-docs.sgml:
2111 * docs/gst/gstreamer-sections.txt:
2112 * docs/gst/tmpl/.cvsignore:
2113 * gst/gstbus.h:
2114 * gst/gstelement.c: (gst_element_class_init),
2115 (gst_element_set_state), (activate_pads),
2116 (gst_element_save_thyself):
2117 * gst/gstevent.c: (gst_event_new_newsegment):
2118 * gst/gstevent.h:
2119 * gst/gstiterator.c:
2120 * gst/gstiterator.h:
2121 * gst/gstpad.c:
2122 * gst/gstprobe.h:
2123 * gst/gstutils.c: (gst_pad_query_convert):
2124 * gst/gstutils.h:
2125 fixed parameter name mismatches between source, header and docs
2126 added some more docs, resolved the last batch of unused elements in
2127 docs (now someone needs to doc them)
2129 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
2131 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
2132 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
2133 don't walk through the plugins backwards. Where is all this
2134 reversed logic coming from ?
2136 2005-08-25 Wim Taymans <wim@fluendo.com>
2138 * gst/base/gstbasetransform.c: (gst_base_transform_init),
2139 (gst_base_transform_transform_size),
2140 (gst_base_transform_configure_caps),
2141 (gst_base_transform_get_unit_size),
2142 (gst_base_transform_buffer_alloc),
2143 (gst_base_transform_change_state):
2144 * gst/base/gstbasetransform.h:
2145 Cache caps unit_size.
2146 Make sure we cannot negotiate up and downstream at the
2147 same time.
2149 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
2151 * gst/gst.c: (init_pre), (init_post):
2152 register the installed plugin path after the env var
2153 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
2154 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
2155 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
2156 directories, so the tests can prefer uninstalled over installed
2158 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
2160 * gst/base/gstbasetransform.h:
2161 comment
2162 * gst/gstpad.c:
2163 add to docs
2165 2005-08-25 Wim Taymans <wim@fluendo.com>
2167 * gst/gstbin.c: (bin_bus_handler):
2168 Be a bit more conservative about the posted message.
2170 * gst/gstbus.c: (gst_bus_post):
2171 Some cleanups, warn wrong return values.
2173 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
2175 * check/gst/gstbin.c: (GST_START_TEST):
2176 * gst/gstbin.c: (bin_bus_handler):
2177 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
2178 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
2179 (gst_message_new_warning), (gst_message_new_tag),
2180 (gst_message_new_state_changed), (gst_message_new_segment_start),
2181 (gst_message_new_segment_done), (gst_message_new_custom):
2182 * gst/gstmessage.h:
2183 * tools/gst-launch.c: (event_loop):
2184 * tools/gst-md5sum.c: (event_loop):
2185 Revert unpopular change for GST_MESSAGE_SRC to GObject.
2187 2005-08-25 Wim Taymans <wim@fluendo.com>
2189 * check/generic/states.c: (GST_START_TEST):
2190 Cleanup can be done at the end.
2192 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
2193 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
2194 (gst_task_get_state), (gst_task_start), (gst_task_pause):
2195 Oh boy.. Thanks for finding this, Thomas.
2197 2005-08-25 Stefan Kost <ensonic@users.sf.net>
2199 * docs/gst/gstreamer.types:
2200 added missing types
2202 2005-08-25 Stefan Kost <ensonic@users.sf.net>
2204 * docs/gst/gstreamer-docs.sgml:
2205 * docs/gst/gstreamer-sections.txt:
2206 * docs/gst/tmpl/.cvsignore:
2207 * gst/gstbin.c:
2208 * gst/gstiterator.c:
2209 * gst/gstutils.c:
2210 * gst/registries/gstxmlregistry.h:
2211 added missing classes and symbols (123 more to go)
2212 removed removed symbols from section file
2213 fixed many doc-comments
2215 2005-08-24 Wim Taymans <wim@fluendo.com>
2217 * check/generic/states.c: (GST_START_TEST):
2218 Make sure all tasks are stopped.
2220 * check/gst/gstbin.c: (GST_START_TEST):
2221 Unref after usage for proper valgrinding.
2223 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
2224 Really wait for the task to stop before destroying the
2225 mutex.
2227 * gst/gstqueue.c: (gst_queue_sink_activate_push),
2228 (gst_queue_src_activate_push):
2229 Small cleanups. Don't stop the task when we did not start
2230 it.
2232 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
2233 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
2234 (gst_task_get_state), (gst_task_start), (gst_task_pause),
2235 (gst_task_join):
2236 * gst/gsttask.h:
2237 Protect the stream lock with the object lock.
2238 Disallow setting the stream lock when running.
2239 Add cleanup_all to wait for the threadpool to finish.
2240 Remove code to autoallocate a mutex if none was provided.
2241 Add _join() to wait for a task to stop.
2242 Protect the thread pool with a global lock.
2244 2005-08-24 Wim Taymans <wim@fluendo.com>
2246 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2247 (gst_base_sink_get_times), (gst_base_sink_do_sync),
2248 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
2249 * gst/base/gstbasesink.h:
2250 Handle newsegment events correctly.
2251 Drop buffers out of the segment range.
2253 2005-08-22 Andy Wingo <wingo@pobox.com>
2255 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
2256 macro, implements an interface and gstimplementsinterface for a
2257 new type.
2259 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
2261 * check/Makefile.am:
2262 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
2263 add a test that does a bunch of state changes on elements
2264 needs some fixing for valgrind
2265 * check/states/sinks.c: (gst_object_suite):
2266 whitespace
2267 * gst/gstcaps.h:
2268 add prototype for gst_caps_is_equal_fixed
2269 * gst/gstplugin.c:
2270 * gst/gstregistrypool.c:
2271 doc fixes
2273 2005-08-24 Andy Wingo <wingo@pobox.com>
2275 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
2276 convert a negative value. Doesn't make much sense. Mostly this is
2277 here to force callers to ensure -1 maps to -1.
2279 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
2281 * docs/pwg/advanced-types.xml:
2282 Well done to Michael for catching my deliberate introduction
2283 of this spelling mistake.
2284 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
2285 * gst/gstelement.h:
2286 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
2287 unlink pads before removing the element from the bin.
2289 2005-08-24 Andy Wingo <wingo@pobox.com>
2291 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
2292 the same thing as GST_DEBUG=*:4.
2293 (parse_debug_level, parse_debug_category): New helper parsers.
2295 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
2297 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
2298 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
2299 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
2300 (gst_base_transform_buffer_alloc),
2301 (gst_base_transform_handle_buffer):
2302 use gboolean return values and pointers to size so we can use the
2303 full GST_BUFFER_SIZE range (guint) for buffer sizes
2304 use GstPadDirection for transform_caps
2305 * gst/base/gstbasetransform.h:
2306 rename get_size to get_unit_size since that's what it is
2307 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
2308 use GstPadDirection for transform_caps
2309 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
2310 * gst/gstutils.h:
2311 cleanup and debugging
2313 2005-08-24 Stefan Kost <ensonic@users.sf.net>
2315 * gst/gstelement.c: (gst_element_class_init),
2316 (gst_element_set_state), (activate_pads),
2317 (gst_element_save_thyself):
2318 * tools/gst-compprep.c: (main):
2319 * tools/gst-inspect.c: (print_element_properties_info):
2320 * tools/gst-xmlinspect.c: (print_element_properties):
2321 Fixed long standing mem-leak
2323 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
2325 * check/gst/gstbin.c: (GST_START_TEST):
2326 * gst/gstbin.c: (bin_bus_handler):
2327 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
2328 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
2329 (gst_message_new_warning), (gst_message_new_tag),
2330 (gst_message_new_state_changed), (gst_message_new_segment_start),
2331 (gst_message_new_segment_done), (gst_message_new_custom):
2332 * gst/gstmessage.h:
2333 * tools/gst-launch.c: (event_loop):
2334 * tools/gst-md5sum.c: (event_loop):
2335 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
2336 that applications can sensibly post custom messages with references
2337 to their own objects.
2339 2005-08-24 Andy Wingo <wingo@pobox.com>
2341 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
2342 already.
2344 2005-08-24 Wim Taymans <wim@fluendo.com>
2346 * gst/base/gstbasetransform.c: (gst_base_transform_init),
2347 (gst_base_transform_transform_caps),
2348 (gst_base_transform_transform_size),
2349 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
2350 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
2351 (gst_base_transform_handle_buffer):
2352 * gst/base/gstbasetransform.h:
2353 Many fixes and new features added by Thomas. Can now also do
2354 transforms with variable sizes and a custom fixate_caps function.
2356 2005-08-24 Wim Taymans <wim@fluendo.com>
2358 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
2359 Some debugging.
2361 * gst/gstclock.h:
2362 Cast to ClockTime before formatting to time.
2364 * gst/gstutils.h:
2365 Cleanups.
2367 2005-08-24 Stefan Kost <ensonic@users.sf.net>
2369 * check/gst-libs/controller.c: (GST_START_TEST),
2370 (gst_controller_suite):
2371 * docs/gst/tmpl/gstcaps.sgml:
2372 * docs/gst/tmpl/gstghostpad.sgml:
2373 * docs/gst/tmpl/gstquery.sgml:
2374 * docs/gst/tmpl/gstutils.sgml:
2375 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
2376 (gst_object_sink_values), (gst_object_get_value_arrays),
2377 (gst_object_get_value_array):
2378 gracefully handle helper method calls to objects that are not beeing
2379 controlled, added test case for that
2381 2005-08-23 Wim Taymans <wim@fluendo.com>
2383 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
2384 (gst_event_new_newsegment), (gst_event_parse_newsegment),
2385 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
2386 (gst_event_parse_qos), (gst_event_new_seek),
2387 (gst_event_parse_seek):
2388 * gst/gstevent.h:
2389 Some more debugging output and doc cleanups.
2391 * gst/gstqueue.c: (gst_queue_handle_sink_event):
2392 Fix possible deadlock.
2394 2005-08-23 Stefan Kost <ensonic@users.sf.net>
2396 * docs/gst/gstreamer-docs.sgml:
2397 * docs/gst/gstreamer-sections.txt:
2398 * docs/gst/gstreamer.types:
2399 * docs/gst/tmpl/.cvsignore:
2400 * gst/gstbin.h:
2401 * gst/gstbus.c:
2402 * gst/gstelement.c:
2403 * gst/gstevent.h:
2404 added 100 symbols from gstreamer-unused.txt to the right sections
2405 fixed more broken comments
2406 added GstBus to docs
2408 2005-08-23 Stefan Kost <ensonic@users.sf.net>
2410 * docs/gst/gstreamer-sections.txt:
2411 * docs/gst/tmpl/.cvsignore:
2412 * docs/gst/tmpl/gstbin.sgml:
2413 * docs/gst/tmpl/gstbuffer.sgml:
2414 * gst/base/gstbasesrc.c:
2415 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
2416 * gst/gstbuffer.c:
2417 * gst/gstbuffer.h:
2418 * tools/gst-launch.1.in:
2419 inlined more doc comments, added missing comments and fixed comments
2420 fixed typos
2422 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
2424 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
2425 some debugging
2426 * gst/gstcaps.h:
2427 whitespace fixes
2428 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
2429 more debugging
2430 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
2431 * gst/gststructure.h:
2432 add a fixate function for booleans; add a FIXME that these func
2433 names should probably be gst_structure_fixate_*
2435 2005-08-23 Stefan Kost <ensonic@users.sf.net>
2437 * docs/gst/gstreamer-docs.sgml:
2438 * docs/gst/gstreamer-sections.txt:
2439 * gst/Makefile.am:
2440 * gst/gstbin.c: (gst_bin_get_type),
2441 (gst_bin_child_proxy_get_child_by_index),
2442 (gst_bin_child_proxy_get_children_count),
2443 (gst_bin_child_proxy_init):
2444 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
2445 (gst_child_proxy_get_child_by_index),
2446 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
2447 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
2448 (gst_child_proxy_get), (gst_child_proxy_set_property),
2449 (gst_child_proxy_set_valist), (gst_child_proxy_set),
2450 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
2451 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
2452 * gst/gstchildproxy.h:
2453 * gst/parse/grammar.y:
2454 * tools/gst-inspect.c: (print_interfaces),
2455 (print_element_properties_info), (print_element_info):
2456 ported gstchildproxy over from 0.8
2457 ported gst-inspect fixes and enhancements over from 0.8
2459 2005-08-22 Wim Taymans <wim@fluendo.com>
2461 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
2462 (gst_base_transform_handle_buffer):
2463 Also call the transform function if we have ANY caps.
2465 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
2466 Fix debug info.
2468 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
2470 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
2471 Don't pretend to handle seek events if the source is not seekable
2473 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
2475 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2476 Remove extra parameter to debug output
2478 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
2479 (gst_base_src_do_seek), (gst_base_src_activate_push):
2480 Fix seek event handling.
2482 * gst/gstpipeline.c: (gst_pipeline_change_state):
2483 * gst/gstqueue.c: (gst_queue_handle_sink_event),
2484 (gst_queue_src_activate_push):
2485 Don't start the src pad task on FLUSH_STOP if the pad
2486 isn't linked.
2487 Debug changes.
2489 2005-08-22 Wim Taymans <wim@fluendo.com>
2491 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
2492 Added check for gst_static_caps_get() refcounting.
2494 2005-08-22 Wim Taymans <wim@fluendo.com>
2496 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
2497 Make _static_caps_get() refcounting sane.
2499 * gst/gstelement.c: (gst_element_set_state):
2500 Add g_return_val_if_fail() to protect against segfaults.
2502 2005-08-22 Stefan Kost <ensonic@users.sf.net>
2504 * docs/gst/tmpl/gstevent.sgml:
2505 * gst/gstevent.c:
2506 * gst/gstevent.h:
2507 inlined remaining docs, added missing doc comments
2509 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
2511 * check/gst/gstbin.c: (GST_START_TEST):
2512 since we don't know when preroll is done, use refcount range
2513 check for the sink
2514 * gst/check/gstcheck.h:
2515 add macro for checking refcount range
2517 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
2519 * check/Makefile.am:
2520 clean up environment for when registry gets built versus
2521 when actual tests are run; valgrind seems to not report
2522 leaks if GST_PLUGIN_PATH is set to some specific values
2523 * check/gst/gstbin.c: (GST_START_TEST):
2524 add more refcounting checks; maybe this exposes a
2525 preroll lock bug ?
2526 * common/check.mak:
2527 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2528 * gst/check/gstcheck.h:
2529 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
2530 (gst_bin_change_state):
2531 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
2532 add/fix debugging/whitespace
2534 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
2536 * check/gst/gstevent.c: (event_probe), (test_event),
2537 (GST_START_TEST):
2538 Er, don't call gst_bin_watch_for_state_change you idiot.
2540 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
2542 * check/Makefile.am:
2543 Use CHECK_CFLAGS and CHECK_LIBS
2544 * check/gst/gstevent.c: (event_probe), (test_event),
2545 (GST_START_TEST):
2546 Don't leak events.
2547 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
2548 (gst_base_src_start), (gst_base_src_stop),
2549 (gst_base_src_activate_push), (gst_base_src_activate_pull),
2550 (gst_base_src_change_state):
2551 Sprinkle gst_base_src_stop liberally around error paths to fix
2552 problems reusing a source after failed state changes.
2553 * gst/base/gsttypefindhelper.c: (helper_find_peek),
2554 (helper_find_suggest), (gst_type_find_helper):
2555 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
2556 * gst/gstevent.h:
2557 * docs/gst/tmpl/gstevent.sgml:
2558 Migrate part of the docs from the SGML file. Wait for ensonic to
2559 tell me how I did it wrong ;)
2560 * tools/gst-typefind.c: (main):
2561 Extra robustness to state changes between files.
2563 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
2565 * check/Makefile.am:
2566 don't valgrind the controller test - it's leaking - Stefan, HELP
2567 * gst/check/gstcheck.c: (gst_check_message_error),
2568 (gst_check_chain_func), (gst_check_setup_element),
2569 (gst_check_teardown_element), (gst_check_setup_src_pad),
2570 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
2571 (gst_check_teardown_sink_pad):
2572 * gst/check/gstcheck.h:
2573 add a bunch of methods to set up elements, and src and sink pads
2574 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
2575 * check/elements/identity.c: (setup_identity), (cleanup_identity),
2576 (GST_START_TEST):
2577 use them
2578 * gst/gstmessage.c:
2579 * gst/gsttag.h:
2580 whitespace/doc fixes
2582 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
2584 * gst/gstelement.h:
2585 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
2586 be handled by the application and not always printed as well
2588 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
2590 * check/Makefile.am:
2591 set GST_TOOLS_DIR
2592 * gst/check/gstcheck.c: (gst_check_message_error):
2593 * gst/check/gstcheck.h:
2594 add a fail_unless_equals_int
2595 add fail_unless for error messages
2597 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
2599 * check/Makefile.am:
2600 * check/gst.supp:
2601 * common/Makefile.am:
2602 * common/check.mak:
2603 * common/gst.supp:
2604 factor out some of the common stuff so we can use it
2606 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
2608 * check/Makefile.am:
2609 * check/gst/gstiterator.c: (GST_START_TEST):
2610 * check/gst/gstsystemclock.c: (GST_START_TEST),
2611 (gst_systemclock_suite):
2612 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
2613 * gst/gstclock.c:
2614 valgrind more tests
2616 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
2618 * check/elements/.cvsignore:
2619 * check/elements/gstfakesrc.c:
2620 rename to name of element
2621 * check/elements/identity.c: (chain_func), (event_func),
2622 (setup_identity), (cleanup_identity), (GST_START_TEST),
2623 (identity_suite), (main):
2624 add a test for identity
2625 * check/Makefile.am:
2626 * pkgconfig/Makefile.am:
2627 * pkgconfig/gstreamer-check.pc.in:
2628 * pkgconfig/gstreamer-check-uninstalled.pc.in:
2629 * gst/check:
2630 * gst/Makefile.am:
2631 * configure.ac:
2632 move the check stuff to a library that gets installed
2633 * check/gst-libs/controller.c: (GST_START_TEST):
2634 * check/gst-libs/gdp.c:
2635 * check/gst/gst.c: (GST_START_TEST):
2636 * check/gst/gstbin.c:
2637 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2638 * check/gst/gstbus.c:
2639 * check/gst/gstcaps.c: (GST_START_TEST):
2640 * check/gst/gstelement.c:
2641 * check/gst/gstghostpad.c:
2642 * check/gst/gstiterator.c:
2643 * check/gst/gstmessage.c:
2644 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
2645 * check/gst/gstobject.c:
2646 * check/gst/gstpad.c: (GST_START_TEST):
2647 * check/gst/gststructure.c: (GST_START_TEST):
2648 * check/gst/gstsystemclock.c: (GST_START_TEST),
2649 (gst_systemclock_suite):
2650 * check/gst/gsttag.c: (gst_tag_suite):
2651 * check/gst/gstvalue.c:
2652 * check/pipelines/cleanup.c:
2653 * check/pipelines/simple_launch_lines.c:
2654 * check/states/sinks.c:
2655 change include statement
2657 * docs/gst/gstreamer-sections.txt:
2658 * docs/gst/tmpl/gstpad.sgml:
2659 document more pad stuff
2660 * gst/gstminiobject.c: (gst_mini_object_ref),
2661 (gst_mini_object_unref):
2662 debug refcounting
2664 2005-08-19 Stefan Kost <ensonic@users.sf.net>
2666 * docs/gst/tmpl/gst.sgml:
2667 * gst/gst.c:
2668 eliminate another tmpl file, fix spelling in the long-description
2670 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
2672 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
2673 (test_event), (timediff), (gstevents_suite):
2674 Should fix build on 64-bit arch's
2676 2005-08-18 Andy Wingo <wingo@pobox.com>
2678 Make sure that when a pipeline goes to PLAYING, that data has
2679 actually hit the sink.
2681 * check/states/sinks.c (test_sink): A sink that doesn't get any
2682 data shouldn't return SUCCESS for going to either PLAYING or
2683 PAUSED. Test also the return values on the way back down.
2685 * gst/gstelement.c (gst_element_set_state): When changing the
2686 state of an element currently changing state asynchronously, go to
2687 lost-state after commiting the pending state. Makes future calls
2688 to get_state continue to return ASYNC.
2690 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
2691 ASYNC when going to PLAYING if we still don't have preroll, as can
2692 happen with live sources.
2694 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
2696 * docs/pwg/advanced-types.xml:
2697 Hack long paragraph into 2 chunks as a workaround for buggy
2698 jadetex version in sid and breezy that loops infinitely and
2699 eats all RAM.
2701 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
2703 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
2704 (test_event), (timediff), (gstevents_suite):
2705 Provide more error margin in clock measurements to allow for
2706 g_get_current_time inaccuracies.
2708 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
2710 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
2711 (test_event), (timediff), (gstevents_suite):
2712 Fix error message output so I might be able to tell why the
2713 test works here but fails on the build farm.
2715 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
2717 * check/Makefile.am:
2718 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
2719 (test_event), (timediff), (gstevents_suite), (main):
2720 I wrote a test!
2722 * docs/design/part-seeking.txt:
2723 Spelling correction
2725 * docs/gst/tmpl/gstevent.sgml:
2726 * docs/gst/tmpl/gstfakesrc.sgml:
2727 Docs updates.
2729 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2730 Treat a buffer-without-newsegment the same as a receiving
2731 a newsegment not in time format, and disable syncing to the clock
2732 with a warning.
2734 * gst/gstbus.c: (gst_bus_set_sync_handler):
2735 Assert if anyone tries to replace the existing sync_handler for bus,
2736 as only the owner should be setting it.
2738 * gst/gstevent.h:
2739 Have a fixed set of custom event enums with events identified by
2740 their structure name (as in 0.8), rather than a free-for-all
2741 allowing collisions between enum values from different plugins.
2743 * gst/gstpad.c: (gst_pad_class_init):
2744 Docs change.
2746 * gst/gstqueue.c: (gst_queue_handle_sink_event):
2747 Handle out-of-band downstream events from the sending thread.
2749 2005-08-17 Andy Wingo <wingo@pobox.com>
2751 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
2752 play-timeout==0 to mean no timeout at all. In that case, don't
2753 bother with a get_state or a warning, just return directly, even
2754 if it's ASYNC.
2756 * gst/base/gstbasetransform.c: Debug changes.
2758 * gst/gstutils.h:
2759 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
2760 ensure bins post state change messages. A bit of a hack but I can't
2761 think of a way to avoid it.
2763 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
2765 2005-08-16 Andy Wingo <wingo@pobox.com>
2767 * gst/base/gstadapter.h:
2768 * gst/base/gstadapter.c (gst_adapter_take): New function, like
2769 peek() but you own the data. Not terribly efficient atm.
2771 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
2773 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
2774 (gst_element_found_tags):
2775 * gst/gstutils.h:
2776 Add two utility functions for tag handling.
2778 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
2780 * docs/manual/advanced-dataaccess.xml:
2781 * docs/manual/basics-helloworld.xml:
2782 Fix docs to use _bin_add() before _link(), which fixes the examples
2783 with recent core versions (reported by Madhan Raj M
2784 <raj_madan@rediffmail.com>, #313199).
2786 2005-08-16 Wim Taymans <wim@fluendo.com>
2788 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2789 Added subtract checks.
2791 * docs/design/part-events.txt:
2792 Some more docs about newsegment
2794 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
2795 Fix FIXME
2797 * gst/gstcaps.c: (gst_caps_to_string):
2798 Add comments, cleanups.
2800 * gst/gstelement.c: (gst_element_save_thyself):
2801 cleanups
2803 * gst/gstvalue.c: (gst_value_collect_int_range),
2804 (gst_string_unwrap), (gst_value_union_int_int_range),
2805 (gst_value_union_int_range_int_range),
2806 (gst_value_intersect_int_int_range),
2807 (gst_value_intersect_int_range_int_range),
2808 (gst_value_intersect_double_double_range),
2809 (gst_value_intersect_double_range_double_range),
2810 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
2811 (gst_value_subtract_int_range_int),
2812 (gst_value_subtract_double_range_double),
2813 (gst_value_subtract_double_range_double_range),
2814 (gst_value_subtract_from_list), (gst_value_subtract_list),
2815 (gst_value_can_compare), (gst_value_compare_fraction):
2816 Cleanups, add comments, remove unneeded asserts.
2818 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
2820 * tools/gst-launch.c: (event_loop):
2821 don't convert NULL structures to strings
2823 2005-08-15 Stefan Kost <ensonic@users.sf.net>
2825 * docs/gst/gstreamer-sections.txt:
2826 made some defines private
2827 * docs/gst/tmpl/gstconfig.sgml:
2828 * docs/gst/tmpl/gstqueue.sgml:
2829 * docs/gst/tmpl/gsttaglist.sgml:
2830 * docs/gst/tmpl/gsttypes.sgml:
2831 * docs/gst/tmpl/gstutils.sgml:
2832 * docs/pwg/appendix-porting.xml:
2833 * gst/base/gstbasesink.h:
2834 * gst/base/gstbasesrc.c:
2835 * gst/base/gstbasesrc.h:
2836 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
2837 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
2838 * gst/gstelement.c: (gst_element_class_init):
2839 * gst/gstpad.c: (gst_pad_class_init):
2840 * gst/gstqueue.c: (gst_queue_class_init):
2841 * gst/gstxml.c: (gst_xml_class_init):
2842 documented all undocumented signal inline
2843 * libs/gst/controller/gst-controller.h:
2844 added padding
2846 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
2848 * docs/pwg/appendix-porting.xml:
2849 Document _set_link_function -> _set_setcaps_function.
2851 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
2853 * check/Makefile.am:
2854 add a .check target for running the check
2855 * check/gst-libs/controller.c: (GST_START_TEST):
2856 cosmetic fixups
2857 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2858 complete checks for gstbuffer; would be nice if I could get the
2859 gcov stuff to work so I can see if I actually completed gstbuffer.c
2860 * check/gstcheck.h:
2861 add ASSERT_BUFFER_REFCOUNT
2863 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
2865 * docs/gst/gstreamer-sections.txt:
2866 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
2867 * gst/gsttag.h:
2868 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
2869 spew out a warning if a tag that is already registered
2870 is re-registered, unless it is re-registered with a
2871 different type (#308438).
2873 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
2875 * docs/pwg/appendix-porting.xml:
2876 * docs/pwg/building-state.xml:
2877 Add some paragraphs about state changes in 0.9 to the PWG
2878 and the porting guide, in particular about the new meaning
2879 of GST_STATE_PAUSED and how to write state change functions
2880 with concurrent access by multiple threads in mind.
2882 2005-08-11 Stefan Kost <ensonic@users.sf.net>
2884 * docs/gst/gstreamer-docs.sgml:
2885 * docs/libs/gstreamer-libs-docs.sgml:
2886 added deprecation and since indexes
2887 * libs/gst/controller/gst-controller.c:
2888 * libs/gst/controller/gst-helper.c:
2889 added since tags
2892 2005-08-11 Wim Taymans <wim@fluendo.com>
2894 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
2895 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
2896 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
2897 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
2898 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
2899 (gst_ghost_pad_set_target):
2900 Actually implement (re)setting the target on a ghostpad
2901 as described in the docs.
2903 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
2905 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
2906 Check whether GST_DEBUG_NO_COLOR environment variable is
2907 set and disable coloured debug output if that is the case.
2909 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
2911 * gst/base/gsttypefindhelper.c: (helper_find_peek),
2912 (gst_type_find_helper):
2913 The memory returned by gst_type_find_peek() needs to
2914 stay valid until the end of a typefind function, and
2915 typefind functions may keep results from different
2916 offsets around, so we can't just unref the buffer from
2917 the previous _peek(), but have to save all buffers
2918 returned by _peek() until typefinding is done and only
2919 free them then.
2921 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
2923 * docs/gst/gstreamer-sections.txt:
2924 * gst/gstutils.h:
2925 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
2927 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
2929 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
2930 Fix a pretty good memleak.
2932 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
2934 * gst/gstiterator.h:
2935 Fix wrong include and 'make distcheck'.
2937 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
2939 * gst/gstbin.c: (bin_bus_handler):
2940 Use gst_element_post_message() instead.
2942 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
2944 * gst/base/gstadapter.h:
2945 * gst/base/gstbasesink.h:
2946 * gst/base/gstbasesrc.h:
2947 * gst/base/gstbasetransform.h:
2948 * gst/base/gstcollectpads.h:
2949 * gst/base/gstpushsrc.h:
2950 * gst/gstiterator.h:
2951 Add padding to our base elements' class and instance structs and
2952 to GstIterator (you will need to rebuild all plugins and apps!)
2954 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
2956 * gst/gstbin.c: (bin_bus_handler):
2957 Make default message forwarding from child->bus to bin->bus
2958 threadsafe and make it not emit warnings if the parent has no bus.
2960 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
2962 * gst/gstelement.c: (activate_pads):
2963 On paused->ready, set pad->caps to NULL, as is the documented
2964 behaviour in this state change. Fixes playback of series of
2965 media files when visualization is enabled in Totem.
2967 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
2969 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2970 Allow NULL as filter-caps (which means "any").
2972 2005-08-05 Stefan Kost <ensonic@users.sf.net>
2974 * docs/libs/gstreamer-libs-sections.txt:
2975 * libs/gst/controller/gst-controller.c:
2976 * libs/gst/controller/gst-controller.h:
2977 * libs/gst/controller/gst-helper.c:
2978 adding more entries to the docs and fix small doc-bugs
2980 2005-08-05 Stefan Kost <ensonic@users.sf.net>
2982 * docs/gst/gstreamer-docs.sgml:
2983 * docs/gst/gstreamer-sections.txt:
2984 * docs/gst/gstreamer.types:
2985 * docs/gst/tmpl/gstbasesink.sgml:
2986 * docs/gst/tmpl/gstbasesrc.sgml:
2987 * docs/gst/tmpl/gstbasetransform.sgml:
2988 * docs/gst/tmpl/gstfakesrc.sgml:
2989 * gst/base/gstcollectpads.c:
2990 * gst/base/gstcollectpads.h:
2991 * libs/gst/controller/gst-controller.c:
2992 * libs/gst/controller/gst-controller.h:
2993 * libs/gst/controller/gst-helper.c:
2994 * libs/gst/controller/gst-interpolation.c:
2995 * libs/gst/controller/lib.c:
2996 added long/short desc for controller docs
2997 added collectpads base class docs
2998 added correct includes to base-class docs
3000 2005-08-05 Stefan Kost <ensonic@users.sf.net>
3002 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
3003 (gst_test_mono_source_set_property),
3004 (gst_test_mono_source_class_init), (GST_START_TEST),
3005 (gst_controller_suite):
3006 * docs/gst/gstreamer-docs.sgml:
3007 * docs/gst/gstreamer-sections.txt:
3008 * docs/gst/gstreamer.types:
3009 * docs/libs/gstreamer-libs-docs.sgml:
3010 * docs/libs/gstreamer-libs-sections.txt:
3011 * gst/base/gstadapter.c:
3012 * libs/gst/controller/gst-controller.c:
3013 (gst_controlled_property_new), (gst_controlled_property_free),
3014 (gst_controller_new_valist),
3015 (gst_controller_remove_properties_valist),
3016 (gst_controller_sink_values), (_gst_controller_finalize):
3017 * libs/gst/controller/gst-controller.h:
3018 * libs/gst/controller/gst-helper.c:
3019 (gst_object_control_properties), (gst_object_uncontrol_properties),
3020 (gst_object_get_controller), (gst_object_set_controller),
3021 (gst_object_sink_values), (gst_object_get_value_arrays),
3022 (gst_object_get_value_array):
3023 more tests (and fixes) for the controller
3024 more docs for the controller
3025 integrated companies docs for the adapter
3027 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
3029 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
3030 (GST_START_TEST), (fakesrc_suite):
3031 add tests for sizetype
3033 2005-08-04 Andy Wingo <wingo@pobox.com>
3035 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
3036 fixes buffer_alloc proxying among other things.
3038 * gst/base/gstbasetransform.c:
3039 * gst/base/gstbasetransform.h:
3040 Revert patch to gstbasetransform from 7-28 removing
3041 delay_configure.
3043 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
3044 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
3045 Semantics changed, should return not the size of the output buffer
3046 but the byte size of a buffer with a given caps.
3048 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
3049 debug object.
3050 (gst_base_transform_configure_caps): Don't set out_size here: (in,
3051 out) are not the pad caps until setcaps finishes.
3052 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
3053 not-in-place case as well. Deal with changing from in-place to
3054 not-in-place within calling pad_alloc_buffer. Still a bit
3055 concerned about the overhead here...
3057 2005-08-03 Andy Wingo <wingo@pobox.com>
3059 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
3060 fixating is an error.
3062 2005-08-04 Edward Hervey <edward@fluendo.com>
3064 * gst/base/gstadapter.h:
3065 Added gst_adapter_get_type() to the header
3067 2005-08-03 Stefan Kost <ensonic@users.sf.net>
3069 * check/Makefile.am:
3070 * check/gst-libs/controller.c:
3071 * libs/gst/controller/gst-controller.c:
3072 (gst_controller_new_valist):
3073 added check test suite for the controller
3074 * gst/base/gstpushsrc.c:
3075 fixed a doc typo
3077 2005-08-03 Stefan Kost <ensonic@users.sf.net>
3079 * docs/gst/Makefile.am:
3080 * docs/gst/gstreamer-docs.sgml:
3081 * docs/gst/gstreamer-sections.txt:
3082 * docs/gst/gstreamer.types:
3083 * docs/gst/tmpl/gstfakesrc.sgml:
3084 * gst/base/README:
3085 * gst/base/gstbasesink.c:
3086 * gst/base/gstbasesink.h:
3087 * gst/base/gstbasesrc.c:
3088 * gst/base/gstbasesrc.h:
3089 * gst/base/gstbasetransform.c:
3090 * gst/base/gstpushsrc.c:
3091 * gst/base/gstpushsrc.h:
3092 add short/long description docs to base classes
3093 add pushsrc to the docs
3094 remove consolidated doc fragments
3096 2005-08-03 Stefan Kost <ensonic@users.sf.net>
3098 * configure.ac:
3099 * docs/libs/Makefile.am:
3100 * docs/libs/gstreamer-libs-docs.sgml:
3101 * docs/libs/gstreamer-libs-sections.txt:
3102 * docs/libs/gstreamer-libs.types:
3103 * examples/Makefile.am:
3104 * examples/controller/.cvsignore:
3105 * examples/controller/Makefile.am:
3106 * examples/controller/audio-example.c: (main):
3107 * libs/gst/Makefile.am:
3108 * libs/gst/controller/.cvsignore:
3109 * libs/gst/controller/Makefile.am:
3110 * libs/gst/controller/gst-controller.c:
3111 (on_object_controlled_property_changed), (gst_timed_value_compare),
3112 (gst_timed_value_find),
3113 (gst_controlled_property_set_interpolation_mode),
3114 (gst_controlled_property_new), (gst_controlled_property_free),
3115 (gst_controller_find_controlled_property),
3116 (gst_controller_new_valist), (gst_controller_new),
3117 (gst_controller_remove_properties_valist),
3118 (gst_controller_remove_properties), (gst_controller_set),
3119 (gst_controller_set_from_list), (gst_controller_unset),
3120 (gst_controller_get), (gst_controller_get_all),
3121 (gst_controller_sink_values), (gst_controller_get_value_arrays),
3122 (gst_controller_get_value_array),
3123 (gst_controller_set_interpolation_mode),
3124 (_gst_controller_finalize), (_gst_controller_init),
3125 (_gst_controller_class_init), (gst_controller_get_type):
3126 * libs/gst/controller/gst-controller.h:
3127 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
3128 (g_object_uncontrol_properties), (g_object_get_controller),
3129 (g_object_set_controller), (g_object_sink_values),
3130 (g_object_get_value_arrays), (g_object_get_value_array):
3131 * libs/gst/controller/gst-interpolation.c:
3132 (gst_controlled_property_find_timed_value_node),
3133 (interpolate_none_get), (interpolate_trigger_get),
3134 (interpolate_trigger_get_value_array):
3135 * libs/gst/controller/lib.c: (gst_controller_init):
3136 * pkgconfig/Makefile.am:
3137 * pkgconfig/gstreamer-control-uninstalled.pc.in:
3138 * pkgconfig/gstreamer-control.pc.in:
3139 * testsuite/Makefile.am:
3140 * testsuite/controller/.cvsignore:
3141 * testsuite/controller/Makefile.am:
3142 * testsuite/controller/interpolator.c: (main):
3143 added controller code
3144 removed dparam pc files
3146 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
3147 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
3148 (gst_collectpads_stop):
3149 Broadcast the condition when shutting down, to make sure we wake all
3150 threads up. Shut down pads on finalize, for safety.
3152 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
3153 * gst/base/gstbasetransform.c: (gst_base_transform_init),
3154 (gst_base_transform_handle_buffer),
3155 (gst_base_transform_change_state):
3156 Handle PAUSED->READY->PAUSED transition after negotiation
3157 occurred already.
3158 * gst/gstmessage.c: (gst_message_init):
3159 Extra piece of debug for new messages.
3161 2005-08-01 Stefan Kost <ensonic@users.sf.net>
3163 * configure.ac:
3164 * docs/gst/tmpl/gstbasesrc.sgml:
3165 * docs/gst/tmpl/gstelement.sgml:
3166 * docs/gst/tmpl/gstevent.sgml:
3167 * docs/gst/tmpl/gstfakesrc.sgml:
3168 * docs/gst/tmpl/gstformat.sgml:
3169 * docs/gst/tmpl/gstghostpad.sgml:
3170 * docs/gst/tmpl/gstpad.sgml:
3171 * docs/gst/tmpl/gstquery.sgml:
3172 * docs/gst/tmpl/gststructure.sgml:
3173 * docs/gst/tmpl/gsttaglist.sgml:
3174 * docs/gst/tmpl/gstvalue.sgml:
3175 * docs/libs/gstreamer-libs-docs.sgml:
3176 * docs/libs/gstreamer-libs-sections.txt:
3177 * docs/libs/gstreamer-libs.types:
3178 * libs/gst/Makefile.am:
3179 * libs/gst/control/.cvsignore:
3180 * libs/gst/control/Makefile.am:
3181 * libs/gst/control/control.c:
3182 * libs/gst/control/control.h:
3183 * libs/gst/control/dparam.c:
3184 * libs/gst/control/dparam.h:
3185 * libs/gst/control/dparam_smooth.c:
3186 * libs/gst/control/dparam_smooth.h:
3187 * libs/gst/control/dparamcommon.h:
3188 * libs/gst/control/dparammanager.c:
3189 * libs/gst/control/dparammanager.h:
3190 * libs/gst/control/dplinearinterp.c:
3191 * libs/gst/control/dplinearinterp.h:
3192 * libs/gst/control/unitconvert.c:
3193 * libs/gst/control/unitconvert.h:
3194 * testsuite/Makefile.am:
3195 * testsuite/dynparams/.cvsignore:
3196 * testsuite/dynparams/Makefile.am:
3197 * testsuite/dynparams/dparamstest.c:
3198 * tools/Makefile.am:
3199 * tools/gst-inspect.c: (print_element_info), (main):
3200 * tools/gst-xmlinspect.c: (print_element_info), (main):
3201 deactivate and remove dparams (libgstcontrol)
3203 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
3205 * gst/elements/gsttypefindelement.c:
3206 (gst_type_find_element_have_type), (gst_type_find_element_init),
3207 (stop_typefinding), (gst_type_find_element_handle_event),
3208 (gst_type_find_element_chain), (gst_type_find_element_getrange):
3209 * gst/elements/gsttypefindelement.h:
3210 Set caps on all outgoing buffers, not just the first one.
3212 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
3214 * gst/elements/gsttypefindelement.c:
3215 (gst_type_find_element_have_type),
3216 (gst_type_find_element_check_set_buffer_caps),
3217 (gst_type_find_element_init), (stop_typefinding),
3218 (gst_type_find_element_handle_event),
3219 (gst_type_find_element_chain), (gst_type_find_element_getrange):
3220 * gst/elements/gsttypefindelement.h:
3221 Set caps on first outgoing buffer when we've found the type.
3223 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
3225 * docs/gst/gstreamer-docs.sgml:
3226 * docs/gst/gstreamer-sections.txt:
3227 * docs/gst/tmpl/gstscheduler.sgml:
3228 * docs/gst/tmpl/gstschedulerfactory.sgml:
3229 Remove some old cruft from docs.
3231 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
3233 * gst/gstpad.h:
3234 Fix inline docs for GstPadLinkReturn.
3236 * gst/gststructure.c: (gst_structure_has_name):
3237 * gst/gststructure.h:
3238 * docs/gst/gstreamer-sections.txt:
3239 New API: gst_structure_has_name().
3241 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
3243 * configure.ac:
3244 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
3245 and _LARGEFILE_SOURCE in config.h as required. Do not
3246 export those flags in our .pc files any longer (#142209).
3248 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
3250 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
3251 (gst_file_sink_do_seek), (gst_file_sink_event),
3252 (gst_file_sink_get_current_offset), (gst_file_sink_render):
3253 Redo seek/tell calls with large file support in mind; add some
3254 debugging messages; add log message that tells us when large
3255 file support is unavailable or not enabled for some reason.
3257 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
3258 Add log message that tells us when large file support
3259 is unavailable or not enabled for some reason.
3261 2005-07-29 Wim Taymans <wim@fluendo.com>
3263 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
3264 Added test for removing an element with ghostpad from a bin.
3265 Fixed test as current implementation does the right thing.
3267 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
3268 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
3269 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
3270 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
3271 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
3272 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
3273 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
3274 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
3275 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
3276 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
3277 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
3278 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
3279 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
3280 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
3281 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
3282 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
3283 * gst/gstghostpad.h:
3284 Clean up ghostpads, remove properties for internal stuff.
3285 Make threadsafe.
3286 Fix refcounting.
3287 Prepare for switching targets, not all use cases work yet.
3289 2005-07-29 Wim Taymans <wim@fluendo.com>
3291 * docs/design/part-gstghostpad.txt:
3292 Small update.
3294 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
3295 (gst_bin_remove_func):
3296 Unlinking pads while holding the bin LOCK is not a good
3297 idea.
3299 * gst/gstpad.c: (gst_pad_class_init),
3300 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
3301 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
3302 No prob setting template after creating the pad.
3304 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
3306 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
3307 (gst_bus_peek), (gst_bus_source_dispatch),
3308 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
3309 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
3310 gst_bus_poll may be called from other threads. Handle
3311 this nicely by not making poll_data disappear off the
3312 stack once gst_bus_poll returns.
3313 gst_bus_peek now increments the refcount on the returned
3314 message.
3316 2005-07-29 Wim Taymans <wim@fluendo.com>
3318 * docs/design/part-gstghostpad.txt:
3319 Overview of current GhostPad datastructures and use
3320 cases for changing the target.
3322 2005-07-28 Wim Taymans <wim@fluendo.com>
3324 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
3325 Added checks for hierarchy consistency whan adding linked
3326 elements to bins.
3328 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
3329 Added check to test element scheduling without bin/pipeline.
3331 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
3332 First add elements to bin, then link.
3334 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
3335 (gst_bin_remove_func):
3336 Unlink pads from elements added/removed from bin to maintain
3337 hierarchy consistency.
3339 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3341 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
3342 (gst_base_transform_handle_buffer):
3343 * gst/base/gstbasetransform.h:
3344 Remove broken delay_configure (fixes renegotiation of software
3345 scaling pipelines); remove some leftover printf()s.
3347 2005-07-28 Wim Taymans <wim@fluendo.com>
3349 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
3350 Added some more tests for wrong hierarchy
3352 * docs/design/part-overview.txt:
3353 Some updates.
3355 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
3356 Cleanups.
3358 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
3359 (gst_element_dispose):
3360 Some more cleanups.
3362 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
3363 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
3364 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
3365 (gst_pad_set_caps), (gst_pad_send_event):
3366 Check for correct hierarchy when linking pads. Moving to
3367 strict requirement for ghostpads when linking elements in
3368 different bins.
3370 * gst/gstpad.h:
3371 Clean ups. Added WRONG_HIERARCHY return value.
3373 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3375 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
3376 Better debug if no transform is possible.
3378 2005-07-27 Wim Taymans <wim@fluendo.com>
3380 * docs/random/wtay/network-transp:
3381 Some old doc I had.
3383 2005-07-27 Wim Taymans <wim@fluendo.com>
3385 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3386 (gst_dp_event_from_packet):
3387 Fix serialization of seek events.
3389 2005-07-27 Wim Taymans <wim@fluendo.com>
3391 * check/gst-libs/gdp.c: (GST_START_TEST):
3392 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
3393 Fix compilation and fix event serialization.
3395 2005-07-27 Wim Taymans <wim@fluendo.com>
3397 * CHANGES-0.9:
3398 * docs/design/part-TODO.txt:
3399 * docs/design/part-events.txt:
3400 Some docs updates
3402 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3403 (gst_base_sink_event), (gst_base_sink_do_sync),
3404 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
3405 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
3406 (gst_base_src_do_seek), (gst_base_src_event_handler),
3407 (gst_base_src_loop):
3408 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
3409 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
3410 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
3411 (gst_base_transform_event), (gst_base_transform_handle_buffer),
3412 (gst_base_transform_set_passthrough),
3413 (gst_base_transform_is_passthrough):
3414 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
3415 * gst/elements/gstfilesink.c: (gst_file_sink_event):
3416 Event updates.
3418 * gst/gstbuffer.h:
3419 Use faster casts.
3421 * gst/gstelement.c: (gst_element_seek):
3422 * gst/gstelement.h:
3423 Update gst_element_seek.
3425 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
3426 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
3427 (gst_event_new_flush_start), (gst_event_new_flush_stop),
3428 (gst_event_new_eos), (gst_event_new_newsegment),
3429 (gst_event_parse_newsegment), (gst_event_new_tag),
3430 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
3431 (gst_event_parse_qos), (gst_event_new_seek),
3432 (gst_event_parse_seek), (gst_event_new_navigation):
3433 * gst/gstevent.h:
3434 Make GstEvent use GstStructure. Add parsing code, make sure the
3435 API is sufficiently generic.
3436 Mark possible directions of events and serialization.
3438 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
3439 (_gst_message_copy), (gst_message_new_segment_start),
3440 (gst_message_new_segment_done), (gst_message_new_custom),
3441 (gst_message_parse_segment_start),
3442 (gst_message_parse_segment_done):
3443 Small cleanups.
3445 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
3446 (gst_pad_set_caps), (gst_pad_send_event):
3447 Update for new events.
3448 Catch events sent in wrong directions.
3450 * gst/gstqueue.c: (gst_queue_link_src),
3451 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3452 (gst_queue_handle_src_query):
3453 Event updates.
3455 * gst/gsttag.c:
3456 * gst/gsttag.h:
3457 Remove event code from this file.
3459 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3460 (gst_dp_event_from_packet):
3461 Event updates.
3463 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3465 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
3466 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
3467 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
3468 Make debugging actually useful.
3470 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3472 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
3473 (gst_pad_fixate_caps):
3474 Implement default fixation once again, so that gst_pad_fixate()
3475 actually does anything at all. This probably needs to be some
3476 sort of a last resort, and use profile-based fixation first, but
3477 since that doesn't exist yet, this is the best we have. Fixes
3478 visualization in Totem.
3480 2005-07-22 Wim Taymans <wim@fluendo.com>
3482 * docs/design/part-events.txt:
3483 Small update.
3485 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3486 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
3487 (gst_base_sink_activate_pull):
3488 Some more comments.
3490 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
3491 (gst_fake_src_create):
3492 Fix handoff marshall.
3494 * gst/elements/gstidentity.c: (gst_identity_class_init),
3495 (gst_identity_transform_ip):
3496 We're a real inplace element.
3498 * gst/gstbus.c: (gst_bus_post):
3499 Added some comments.
3501 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
3502 * tests/muxing/case1.c: (main):
3503 * tests/sched/dynamic-pipeline.c: (main):
3504 * tests/sched/interrupt1.c: (main):
3505 * tests/sched/interrupt2.c: (main):
3506 * tests/sched/interrupt3.c: (main):
3507 * tests/sched/runxml.c: (main):
3508 * tests/sched/sched-stress.c: (main):
3509 * tests/seeking/seeking1.c: (event_received), (main):
3510 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
3511 (main):
3512 * tests/threadstate/threadstate3.c: (main):
3513 * tests/threadstate/threadstate4.c: (main):
3514 * tests/threadstate/threadstate5.c: (main):
3515 Fix the tests.
3517 2005-07-21 Wim Taymans <wim@fluendo.com>
3519 * docs/design/part-seeking.txt:
3520 Some small additions.
3522 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3523 (gst_base_sink_get_times), (gst_base_sink_do_sync),
3524 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
3525 * gst/base/gstbasesink.h:
3526 discont values are gint64, handle the math correctly.
3528 * gst/base/gstbasesrc.c: (gst_base_src_loop):
3529 Make the basesrc report error if the source pad is not linked.
3531 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
3532 (gst_queue_loop), (gst_queue_handle_src_query),
3533 (gst_queue_src_activate_push):
3534 Make queue collect data even if the srcpad is not linked.
3535 Start pushing out data as soon as it is linked.
3537 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
3538 * gst/gstutils.h:
3539 Added gst_flow_get_name() to ease error reporting.
3541 2005-07-20 Wim Taymans <wim@fluendo.com>
3543 * gst/gstmessage.c: (gst_message_new_segment_start),
3544 (gst_message_new_segment_done), (gst_message_parse_segment_start),
3545 (gst_message_parse_segment_done):
3546 * gst/gstmessage.h:
3547 Added a bunch of messages for advanced seeking.
3549 * gst/parse/grammar.y:
3550 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
3551 (gst_dpman_state_changed):
3552 Fix some new-pad -> pad-added signals
3554 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3556 * docs/manual/appendix-porting.xml:
3557 * docs/pwg/appendix-porting.xml:
3558 Document new-pad/state-change signal renames and the FixedList
3559 type rename.
3561 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3563 * docs/manual/advanced-autoplugging.xml:
3564 * docs/manual/basics-helloworld.xml:
3565 * docs/manual/basics-pads.xml:
3566 * docs/random/ds/0.9-suggested-changes:
3567 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
3568 * gst/gstelement.h:
3569 * gst/gstevent.h:
3570 * gst/gstformat.h:
3571 * gst/gstquery.h:
3572 * gst/gststructure.c: (gst_structure_value_get_generic_type),
3573 (gst_structure_parse_array), (gst_structure_parse_value):
3574 * gst/gstvalue.c: (gst_type_is_fixed),
3575 (gst_value_list_prepend_value), (gst_value_list_append_value),
3576 (gst_value_list_get_size), (gst_value_list_get_value),
3577 (gst_value_transform_array_string), (gst_value_serialize_array),
3578 (gst_value_deserialize_array), (gst_value_intersect_array),
3579 (gst_value_is_fixed), (_gst_value_initialize):
3580 * gst/gstvalue.h:
3581 GstElement::new-pad -> pad-added, GstElement::state-change ->
3582 state-changed, GstValueFixedList -> GstValueArray, add format and
3583 flags as their own arguments in gst_element_seek() (should improve
3584 "bindeability"), remove function generators since they don't work
3585 under a whole bunch of compilers (they were deprecated already
3586 anyway).
3588 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3590 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
3591 (_gst_debug_register_funcptr):
3592 * gst/gstinfo.h:
3593 Fix illegal cast on some platforms (#309253).
3595 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3597 * gst/gstmessage.c: (gst_message_new_custom):
3598 * gst/gstmessage.h:
3599 Add _new_custom, make _new_application a macro to _new_custom.
3601 2005-07-20 Wim Taymans <wim@fluendo.com>
3603 * gst/base/gstbasesrc.c: (gst_base_src_init),
3604 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
3605 * gst/base/gstbasesrc.h:
3606 Add a gboolean to decide when to push out a discont.
3608 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3609 (gst_queue_loop), (gst_queue_handle_src_query),
3610 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
3611 (gst_queue_set_property), (gst_queue_get_property):
3612 Some cleanups.
3614 * tests/threadstate/threadstate1.c: (main):
3615 Make a thread test compile and run... very silly..
3618 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3620 * docs/manual/appendix-porting.xml:
3621 Mention removal of libgstgconf-0.9.la and existence of gconf
3622 elements.
3624 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
3626 * docs/pwg/advanced-clock.xml:
3627 * docs/pwg/appendix-porting.xml:
3628 * docs/pwg/intro-preface.xml:
3629 * docs/pwg/other-base.xml:
3630 * docs/pwg/other-manager.xml:
3631 * docs/pwg/other-nton.xml:
3632 * docs/pwg/other-ntoone.xml:
3633 * docs/pwg/other-oneton.xml:
3634 * docs/pwg/pwg.xml:
3635 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
3636 demuxer), remove n-to-n (was never written), fix some code examples
3637 and links and update the porting section to include all this.
3639 2005-07-19 Wim Taymans <wim@fluendo.com>
3641 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
3642 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
3643 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
3644 (gst_queue_src_activate_push), (gst_queue_change_state),
3645 (gst_queue_get_property):
3646 * gst/gstqueue.h:
3647 Propagate GstFlowReturn more intelligently upstream and output
3648 an ERROR/EOS when streaming stopped due to fatal error.
3650 2005-07-19 Wim Taymans <wim@fluendo.com>
3652 * tools/gst-launch.c: (check_intr), (event_loop), (main):
3653 Don't block forever for the state change to complete, the
3654 pipeline already did with a sensible timeout.
3656 2005-07-19 Wim Taymans <wim@fluendo.com>
3658 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
3659 Make sure we never call the create function is we
3660 got deactivated.
3662 2005-07-19 Andy Wingo <wingo@pobox.com>
3664 * gst/parse/parse.l: Attempt to solve bug #172815.
3666 2005-07-19 Wim Taymans <wim@fluendo.com>
3668 * docs/design/part-clocks.txt:
3669 * docs/design/part-events.txt:
3670 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
3671 Small docs updates.
3672 Only update the seeking values when we are not
3673 busy streaming.
3675 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
3677 * gst/base/gstbasesrc.c: (gst_base_src_loop):
3678 Oops, ignore the result of gst_pad_push_event here.
3680 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
3682 * gst/base/gstbasesrc.c: (gst_base_src_loop),
3683 (gst_base_src_activate_push):
3684 Send discont event from the loop function, as pads
3685 aren't activated yet in the activate_push handler.
3687 * gst/gstbin.c: (bin_bus_handler):
3688 Don't leak element name.
3690 2005-07-18 Andy Wingo <wingo@pobox.com>
3692 * configure.ac: Use AS_LIBTOOL_TAGS.
3694 2005-07-18 Wim Taymans <wim@fluendo.com>
3696 * docs/gst/gstreamer.types:
3697 Remove deleted types.
3699 2005-07-18 Wim Taymans <wim@fluendo.com>
3701 * check/elements/gstfakesrc.c: (GST_START_TEST):
3702 * configure.ac:
3703 * gst/Makefile.am:
3704 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
3705 (init_popt_callback):
3706 * gst/gst.h:
3707 * gst/gst_private.h:
3708 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
3709 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
3710 * gst/gstbin.h:
3711 * gst/gstbus.h:
3712 * gst/gstconfig.h.in:
3713 * gst/gstelement.c: (gst_element_class_init),
3714 (gst_element_set_base_time), (gst_element_get_base_time),
3715 (iterator_fold_with_resync), (gst_element_change_state),
3716 (gst_element_dispose), (gst_element_get_bus):
3717 * gst/gstelement.h:
3718 * gst/gstelementfactory.h:
3719 * gst/gsterror.c: (_gst_core_errors_init):
3720 * gst/gsterror.h:
3721 * gst/gstevent.h:
3722 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
3723 * gst/gstindex.c:
3724 * gst/gstinfo.c: (_gst_debug_init):
3725 * gst/gstmessage.c: (_gst_message_copy):
3726 * gst/gstmessage.h:
3727 * gst/gstminiobject.h:
3728 * gst/gstobject.c:
3729 * gst/gstobject.h:
3730 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
3731 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
3732 * gst/gstpad.h:
3733 * gst/gstparse.h:
3734 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
3735 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
3736 (gst_pipeline_get_last_stream_time):
3737 * gst/gstpipeline.h:
3738 * gst/gstpluginfeature.h:
3739 * gst/gstquery.h:
3740 * gst/gstscheduler.c:
3741 * gst/gstscheduler.h:
3742 * gst/gststructure.h:
3743 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3744 (gst_task_finalize), (gst_task_func), (gst_task_create),
3745 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
3746 (gst_task_stop), (gst_task_pause):
3747 * gst/gsttask.h:
3748 * gst/gsttypefind.h:
3749 * gst/gsttypes.h:
3750 * gst/registries/gstlibxmlregistry.c: (load_feature),
3751 (gst_xml_registry_load), (gst_xml_registry_save_feature):
3752 * gst/registries/gstxmlregistry.c:
3753 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
3754 * gst/schedulers/threadscheduler.c:
3755 * libs/gst/control/dparammanager.h:
3756 * tools/gst-inspect.c: (print_element_list),
3757 (print_plugin_features), (print_element_features):
3758 * tools/gst-xmlinspect.c: (print_element_list),
3759 (print_plugin_info), (main):
3760 Removed plugable schedulers.
3761 Removed Scheduler/Manager from elements.
3762 Removed gsttypes.h, rearranged includes.
3763 Removed dependency pad<->element, element<>pipeline, and
3764 various others, fix includes.
3765 implement gst_pad_get_parent() with gst_object_get_parent()
3766 Make GstTask sefcontained.
3767 Fix _get_state() on GstBin, it did not return ASYNC with a 0
3768 timeout.
3769 Fix endless loop in iterator_fold_with_resync.
3772 2005-07-18 Wim Taymans <wim@fluendo.com>
3774 * gst/Makefile.am:
3775 * gst/gstarch.h:
3776 Remove old file.
3778 2005-07-18 Wim Taymans <wim@fluendo.com>
3780 * gst/Makefile.am:
3781 No more cothreads.h
3783 2005-07-18 Wim Taymans <wim@fluendo.com>
3785 * gst/cothreads.c:
3786 * gst/cothreads.h:
3787 Let's remove these.
3789 2005-07-18 Wim Taymans <wim@fluendo.com>
3791 * docs/design/part-dynamic.txt:
3792 * docs/design/part-events.txt:
3793 * docs/design/part-seeking.txt:
3794 Some more docs in the works.
3796 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
3797 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
3798 (gst_base_transform_setcaps), (gst_base_transform_get_size),
3799 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
3800 (gst_base_transform_handle_buffer),
3801 (gst_base_transform_sink_activate_push),
3802 (gst_base_transform_src_activate_pull),
3803 (gst_base_transform_set_passthrough),
3804 (gst_base_transform_is_passthrough):
3805 Refcounting fixes.
3807 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
3808 Cleanups.
3810 * gst/gstevent.c: (gst_event_finalize):
3811 Set SRC to NULL.
3813 * gst/gstutils.c: (gst_element_unlink),
3814 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
3815 (gst_pad_proxy_setcaps):
3816 * gst/gstutils.h:
3817 Add _get_parent_element() to get a pads parent as an element.
3819 2005-07-18 Wim Taymans <wim@fluendo.com>
3821 * check/gst/gstbin.c: (GST_START_TEST):
3822 Remove bogus test.
3824 2005-07-18 Wim Taymans <wim@fluendo.com>
3826 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
3827 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
3828 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
3829 (gst_base_sink_event), (gst_base_sink_do_sync),
3830 (gst_base_sink_chain), (gst_base_sink_loop),
3831 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
3832 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
3833 Refcounting fixes.
3834 Fix logic for returning ASYNC when not prerolled.
3836 2005-07-18 Wim Taymans <wim@fluendo.com>
3838 * gst/gstqueue.c: (gst_queue_handle_sink_event):
3839 Fix nasty refcount bug.
3841 2005-07-16 Philippe Khalaf <burger@speedy.org>
3843 * gst/elements/gstfdsrc.c:
3844 * gst/elements/gstfdsrc.h:
3845 * gst/elements/gstelements.c:
3846 * gst/elements/Makefile.am:
3847 Ported fdsrc to 0.9.
3849 2005-07-16 Wim Taymans <wim@fluendo.com>
3851 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3852 (gst_base_sink_do_sync):
3853 Fix compile error.
3855 2005-07-16 Wim Taymans <wim@fluendo.com>
3857 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3858 (gst_base_sink_event), (gst_base_sink_get_times),
3859 (gst_base_sink_do_sync), (gst_base_sink_change_state):
3860 * gst/base/gstbasesink.h:
3861 Store and use discont values when syncing buffers as described
3862 in design docs.
3864 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
3865 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
3866 (gst_base_src_activate_push):
3867 Push discont event when starting.
3869 * gst/elements/gstidentity.c: (gst_identity_transform):
3870 Small cleanups.
3872 * gst/gstbin.c: (gst_bin_change_state):
3873 Small cleanups in base_time distribution.
3875 * gst/gstelement.c: (gst_element_set_base_time),
3876 (gst_element_get_base_time), (gst_element_change_state):
3877 * gst/gstelement.h:
3878 Added methods for the base_time of the element.
3879 Some MT fixes.
3881 * gst/gstpipeline.c: (gst_pipeline_send_event),
3882 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
3883 (gst_pipeline_get_last_stream_time):
3884 * gst/gstpipeline.h:
3885 MT fixes.
3886 Handle seeking as described in design doc, remove stream_time
3887 hack.
3888 Cleanups clock and stream_time selection code. Added accessors
3889 for the stream_time.
3892 2005-07-16 Andy Wingo <wingo@pobox.com>
3894 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
3895 (#305291).
3897 2005-07-16 Wim Taymans <wim@fluendo.com>
3899 * check/gst/gstbin.c: (GST_START_TEST):
3900 Make elements silent as the deep_notify refs the
3901 parent, which might make the test fail.
3903 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
3904 Don't hold the lock for too long.
3906 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
3908 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
3909 Don't unref the caps we passed to gst_caps_make_writable() after
3910 passing them. gst_caps_make_writable() will do that for us.
3912 2005-07-15 Andy Wingo <wingo@pobox.com>
3914 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
3915 (#157311).
3917 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
3918 own marshalling function for the handoff signal. Properly type the
3919 buffer as a buffer. Fixes some warnings. Should do a more general
3920 solution.
3921 (gst_identity_class_init): Plug into the right marshaller.
3923 2005-07-15 Wim Taymans <wim@fluendo.com>
3925 * docs/design/part-TODO.txt:
3926 * docs/design/part-clocks.txt:
3927 * docs/design/part-element-sink.txt:
3928 * docs/design/part-events.txt:
3929 * docs/design/part-gstpipeline.txt:
3930 Updated docs, mostly DISCONT related.
3932 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
3934 * docs/pwg/building-pads.xml:
3935 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
3937 2005-07-15 Andy Wingo <wingo@pobox.com>
3939 * tools/gst-typefind.c: Update, add copyright block.
3941 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
3942 Normalize and truncate caps before fixation.
3944 * gst/gstcaps.h:
3945 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
3946 discards all but the first structure from its argument.
3948 2005-07-15 Wim Taymans <wim@fluendo.com>
3950 * gst/base/gstbasetransform.c: (gst_base_transform_init),
3951 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
3952 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
3953 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
3954 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
3955 (gst_base_transform_chain), (gst_base_transform_change_state),
3956 (gst_base_transform_set_passthrough),
3957 (gst_base_transform_is_passthrough):
3958 * gst/base/gstbasetransform.h:
3959 Make passthrough work using the bufferpools.
3960 Changed API a bit, subclasses have to write into a buffer
3961 provided by the base class.
3962 More debug info in nego functions.
3964 * gst/elements/gstidentity.c: (gst_identity_init),
3965 (gst_identity_transform):
3966 Port to new base class.
3968 2005-07-15 Wim Taymans <wim@fluendo.com>
3970 * gst/gstmessage.c: (gst_message_new_state_changed):
3971 * tools/gst-launch.c: (event_loop), (main):
3972 Totally dump messages in -launch with the -m option.
3973 Fix message name for State messages,
3975 2005-07-14 Wim Taymans <wim@fluendo.com>
3977 * gst/base/gstbasesrc.c: (gst_base_src_loop):
3978 Post error messages on errors.
3980 2005-07-14 Wim Taymans <wim@fluendo.com>
3982 * gst/gstcaps.c: (gst_caps_do_simplify):
3983 Remove debug info.
3985 * gst/gsterror.h:
3986 Define error for stream stopped.
3988 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3989 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
3990 Do proper return values.
3992 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
3993 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
3994 (gst_pad_get_range):
3995 Better return values.
3997 * gst/gstpad.h:
3998 Reorganise return values, add macro to check for fatal errors.
4000 * gst/gstqueue.c: (gst_queue_chain):
4001 Return proper GstFlowReturn values,
4003 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
4005 * docs/gst/gstreamer-sections.txt:
4006 * docs/gst/gstreamer.types:
4007 * docs/gst/tmpl/gst.sgml:
4008 * docs/gst/tmpl/gstbasesink.sgml:
4009 * docs/gst/tmpl/gstbasesrc.sgml:
4010 * docs/gst/tmpl/gstbasetransform.sgml:
4011 * docs/gst/tmpl/gstbin.sgml:
4012 * docs/gst/tmpl/gstbuffer.sgml:
4013 * docs/gst/tmpl/gstcaps.sgml:
4014 * docs/gst/tmpl/gstclock.sgml:
4015 * docs/gst/tmpl/gstcompat.sgml:
4016 * docs/gst/tmpl/gstconfig.sgml:
4017 * docs/gst/tmpl/gstelement.sgml:
4018 * docs/gst/tmpl/gstelementdetails.sgml:
4019 * docs/gst/tmpl/gstelementfactory.sgml:
4020 * docs/gst/tmpl/gstenumtypes.sgml:
4021 * docs/gst/tmpl/gsterror.sgml:
4022 * docs/gst/tmpl/gstevent.sgml:
4023 * docs/gst/tmpl/gstfakesink.sgml:
4024 * docs/gst/tmpl/gstfakesrc.sgml:
4025 * docs/gst/tmpl/gstfilesink.sgml:
4026 * docs/gst/tmpl/gstfilesrc.sgml:
4027 * docs/gst/tmpl/gstfilter.sgml:
4028 * docs/gst/tmpl/gstformat.sgml:
4029 * docs/gst/tmpl/gstghostpad.sgml:
4030 * docs/gst/tmpl/gstimplementsinterface.sgml:
4031 * docs/gst/tmpl/gstindex.sgml:
4032 * docs/gst/tmpl/gstindexfactory.sgml:
4033 * docs/gst/tmpl/gstinfo.sgml:
4034 * docs/gst/tmpl/gstiterator.sgml:
4035 * docs/gst/tmpl/gstmacros.sgml:
4036 * docs/gst/tmpl/gstmemchunk.sgml:
4037 * docs/gst/tmpl/gstminiobject.sgml:
4038 * docs/gst/tmpl/gstobject.sgml:
4039 * docs/gst/tmpl/gstpad.sgml:
4040 * docs/gst/tmpl/gstpadtemplate.sgml:
4041 * docs/gst/tmpl/gstparse.sgml:
4042 * docs/gst/tmpl/gstpipeline.sgml:
4043 * docs/gst/tmpl/gstplugin.sgml:
4044 * docs/gst/tmpl/gstpluginfeature.sgml:
4045 * docs/gst/tmpl/gstquery.sgml:
4046 * docs/gst/tmpl/gstqueue.sgml:
4047 * docs/gst/tmpl/gstregistry.sgml:
4048 * docs/gst/tmpl/gstregistrypool.sgml:
4049 * docs/gst/tmpl/gstscheduler.sgml:
4050 * docs/gst/tmpl/gstschedulerfactory.sgml:
4051 * docs/gst/tmpl/gststructure.sgml:
4052 * docs/gst/tmpl/gstsystemclock.sgml:
4053 * docs/gst/tmpl/gsttaglist.sgml:
4054 * docs/gst/tmpl/gsttagsetter.sgml:
4055 * docs/gst/tmpl/gsttrace.sgml:
4056 * docs/gst/tmpl/gsttrashstack.sgml:
4057 * docs/gst/tmpl/gsttypefind.sgml:
4058 * docs/gst/tmpl/gsttypefindfactory.sgml:
4059 * docs/gst/tmpl/gsttypes.sgml:
4060 * docs/gst/tmpl/gsturihandler.sgml:
4061 * docs/gst/tmpl/gsturitype.sgml:
4062 * docs/gst/tmpl/gstutils.sgml:
4063 * docs/gst/tmpl/gstvalue.sgml:
4064 * docs/gst/tmpl/gstversion.sgml:
4065 * docs/gst/tmpl/gstxml.sgml:
4066 * docs/libs/tmpl/gstcontrol.sgml:
4067 * docs/libs/tmpl/gstdataprotocol.sgml:
4068 * docs/libs/tmpl/gstdparam.sgml:
4069 * docs/libs/tmpl/gstdplinint.sgml:
4070 * docs/libs/tmpl/gstdpman.sgml:
4071 * docs/libs/tmpl/gstdpsmooth.sgml:
4072 * docs/libs/tmpl/gstgetbits.sgml:
4073 * docs/libs/tmpl/gstunitconvert.sgml:
4074 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
4075 (gst_push_src_base_init), (gst_push_src_class_init),
4076 (gst_push_src_init), (gst_push_src_create):
4077 * gst/base/gstpushsrc.h:
4078 * gst/elements/gstelements.c:
4079 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
4080 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
4081 (gst_fake_sink_init), (gst_fake_sink_set_property),
4082 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
4083 (gst_fake_sink_event), (gst_fake_sink_preroll),
4084 (gst_fake_sink_render), (gst_fake_sink_change_state):
4085 * gst/elements/gstfakesink.h:
4086 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
4087 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
4088 (gst_fake_src_base_init), (gst_fake_src_class_init),
4089 (gst_fake_src_init), (gst_fake_src_event_handler),
4090 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
4091 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
4092 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
4093 (gst_fake_src_create_buffer), (gst_fake_src_create),
4094 (gst_fake_src_start), (gst_fake_src_stop):
4095 * gst/elements/gstfakesrc.h:
4096 * gst/elements/gstfilesink.c: (_do_init),
4097 (gst_file_sink_base_init), (gst_file_sink_class_init),
4098 (gst_file_sink_init), (gst_file_sink_dispose),
4099 (gst_file_sink_set_location), (gst_file_sink_set_property),
4100 (gst_file_sink_get_property), (gst_file_sink_open_file),
4101 (gst_file_sink_close_file), (gst_file_sink_query),
4102 (gst_file_sink_event), (gst_file_sink_render),
4103 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
4104 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
4105 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
4106 * gst/elements/gstfilesink.h:
4107 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
4108 (gst_file_src_class_init), (gst_file_src_init),
4109 (gst_file_src_finalize), (gst_file_src_set_location),
4110 (gst_file_src_set_property), (gst_file_src_get_property),
4111 (gst_file_src_map_region), (gst_file_src_map_small_region),
4112 (gst_file_src_create_mmap), (gst_file_src_create_read),
4113 (gst_file_src_create), (gst_file_src_is_seekable),
4114 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
4115 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
4116 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
4117 (gst_file_src_uri_handler_init):
4118 * gst/elements/gstfilesrc.h:
4119 more autistic cleanliness in functions/names/defines
4121 2005-07-13 Andy Wingo <wingo@pobox.com>
4123 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
4124 source couldn't negotiate.
4126 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
4127 connections again.
4129 * gst/gstutils.h:
4130 * gst/gstutils.c (gst_element_link_pads_filtered): New old
4131 function. I am channeling Hades. Put your boots on suckers!!!
4133 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
4135 * testsuite/caps/Makefile.am:
4136 * testsuite/caps/value_compare.c:
4137 * testsuite/caps/value_intersect.c:
4138 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
4139 move two testsuite apps over to the check dir
4141 2005-07-12 Wim Taymans <wim@fluendo.com>
4143 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
4144 Added more debug info in the negotiate process.
4146 * gst/gstmessage.h:
4147 Prepare for segment playback.
4149 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
4150 Better debugging.
4152 * gst/gstutils.c:
4153 Some more docs.
4155 * tools/gst-launch.c: (main):
4156 NULL pipeline on errors.
4158 2005-07-12 Andy Wingo <wingo@pobox.com>
4160 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
4161 not it comes from a malloc region. Make sure our copy gets freed.
4163 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
4165 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
4166 * check/gst/gstmessage.c: (GST_START_TEST):
4167 * check/gst/gststructure.c: (GST_START_TEST),
4168 (gst_structure_suite), (main):
4169 more testing
4170 * gst/gstelement.c: (gst_element_message_full):
4171 clean up GError and debug string now that they get copied
4172 * gst/gstmessage.c: (gst_message_new_error),
4173 (gst_message_new_warning), (gst_message_parse_error),
4174 (gst_message_parse_warning):
4175 use GST_TYPE_G_ERROR for structure_new, and take copies of
4176 arguments, so that we don't mess up refcounting
4178 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
4180 * check/Makefile.am:
4181 add per-test valgrind targets
4182 * check/gst-libs/gdp.c: (GST_START_TEST),
4183 (gst_data_protocol_suite), (main):
4184 clean up
4186 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
4188 * check/Makefile.am:
4189 instate more valgrindable tests
4190 * check/elements/gstfakesrc.c: (chain_func), (event_func),
4191 (GST_START_TEST), (fakesrc_suite):
4192 * check/gst/gstpad.c: (GST_START_TEST):
4193 * check/gst/gststructure.c: (GST_START_TEST):
4194 fix test leaks
4195 * docs/gst/tmpl/gstminiobject.sgml:
4196 * gst/gstpad.c: (gst_pad_finalize):
4197 fix the static mutex leak
4199 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
4201 * check/Makefile.am:
4202 add two more tests for valgrinding
4203 * check/gst/gstvalue.c: (GST_START_TEST):
4204 test refcount of deserialized buffer, found a leak
4205 * docs/gst/gstreamer-docs.sgml:
4206 * docs/gst/gstreamer-sections.txt:
4207 * docs/gst/gstreamer.types:
4208 * docs/gst/tmpl/gstminiobject.sgml:
4209 add miniobject to docs
4210 * gst/gstminiobject.c:
4211 add some docs
4212 * gst/gstvalue.c: (gst_value_deserialize_buffer),
4213 (gst_string_unwrap):
4214 fix a hard-to-find invalid write for one of the tests
4215 fix a leak for deserialized buffers
4217 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4219 * docs/pwg/advanced-events.xml:
4220 * docs/pwg/advanced-request.xml:
4221 * docs/pwg/advanced-scheduling.xml:
4222 * docs/pwg/appendix-porting.xml:
4223 * docs/pwg/building-boiler.xml:
4224 * docs/pwg/intro-preface.xml:
4225 * docs/pwg/other-ntoone.xml:
4226 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
4227 of example code and explanation for pad activation, loop() and
4228 getrange() functions and a bit more. Remove old comments pointing
4229 to loop-functions.
4230 * examples/pwg/Makefile.am:
4231 Add loop/getrange examples.
4233 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
4235 * configure.ac:
4236 check for valgrind binary + some fixes
4237 * check/gst.supp:
4238 valgrind suppressions for the tests
4239 * check/Makefile.am:
4240 add a valgrind: target that valgrinds the unit tests
4241 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
4242 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
4243 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4244 * check/gst/gstghostpad.c:
4245 added some cleanup
4246 * check/gst/gstdata.c:
4247 removed
4248 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
4249 (thread_unref), (gst_mini_object_suite), (main):
4250 added
4251 * gst/gst.c: (gst_deinit):
4252 * gst/gst.h:
4253 add a method to clean up.
4254 * gst/gstsystemclock.c: (gst_system_clock_dispose),
4255 (gst_system_clock_obtain):
4256 allow for disposing the system clock.
4257 * tools/gst-launch.c: (main):
4258 deinit
4260 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
4262 * docs/gst/tmpl/gstbasesrc.sgml:
4263 * docs/gst/tmpl/gstfakesrc.sgml:
4264 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
4265 (gst_base_src_init), (gst_base_src_set_property),
4266 (gst_base_src_get_property), (gst_base_src_get_range),
4267 (gst_base_src_start):
4268 * gst/base/gstbasesrc.h:
4269 add num-buffers property
4270 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4271 (gst_fakesrc_init), (gst_fakesrc_set_property),
4272 (gst_fakesrc_get_property), (gst_fakesrc_create),
4273 (gst_fakesrc_start):
4274 remove num-buffers property
4276 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
4278 * docs/gst/gstreamer-sections.txt:
4279 * docs/gst/tmpl/gstbasesink.sgml:
4280 * docs/gst/tmpl/gstbasesrc.sgml:
4281 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
4282 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
4283 (gst_base_sink_finalize), (gst_base_sink_set_clock),
4284 (gst_base_sink_set_property), (gst_base_sink_get_property),
4285 (gst_base_sink_handle_object), (gst_base_sink_event),
4286 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
4287 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
4288 (gst_base_sink_loop), (gst_base_sink_deactivate),
4289 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
4290 (gst_base_sink_change_state):
4291 * gst/base/gstbasesink.h:
4292 * gst/base/gstbasesrc.h:
4293 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
4294 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
4295 (gst_filesink_init):
4296 more macro splitting
4298 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
4300 * gst/gstelement.c: (gst_element_get_bus):
4301 add debug
4302 * tools/gst-launch.c: (check_intr), (event_loop):
4303 fix bus leaks
4305 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
4307 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
4308 fix a caps leak
4310 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
4312 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
4313 (gst_base_src_finalize):
4314 add finalize method and clean up properly
4315 * gst/gstpipeline.c: (gst_pipeline_dispose):
4316 add debug
4318 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
4320 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
4321 (gst_bin_suite):
4322 add more things to check
4323 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
4324 * gst/gstelement.c:
4325 more debug
4327 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
4329 * check/elements/gstfakesrc.c: (chain_func), (event_func),
4330 (GST_START_TEST), (fakesrc_suite):
4331 * check/gst-libs/gdp.c: (GST_START_TEST):
4332 * check/gst/gst.c: (GST_START_TEST):
4333 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
4334 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4335 * check/gst/gstbus.c: (GST_START_TEST):
4336 * check/gst/gstcaps.c: (GST_START_TEST):
4337 * check/gst/gstdata.c: (GST_START_TEST):
4338 * check/gst/gstelement.c: (GST_START_TEST):
4339 * check/gst/gstghostpad.c: (GST_START_TEST):
4340 * check/gst/gstiterator.c: (GST_START_TEST):
4341 * check/gst/gstmessage.c: (GST_START_TEST):
4342 * check/gst/gstobject.c: (GST_START_TEST):
4343 * check/gst/gstpad.c: (GST_START_TEST):
4344 * check/gst/gststructure.c: (GST_START_TEST):
4345 * check/gst/gstsystemclock.c: (GST_START_TEST),
4346 (gst_systemclock_suite):
4347 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
4348 * check/gst/gstvalue.c: (GST_START_TEST):
4349 * check/pipelines/cleanup.c: (GST_START_TEST):
4350 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
4351 * check/states/sinks.c: (GST_START_TEST):
4352 * check/gstcheck.c: (gst_check_init):
4353 * check/gstcheck.h:
4354 add debugging category
4355 use GST_START_TEST now, so we add a debug line
4357 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
4359 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
4360 add test for state change message on a bin
4361 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
4362 add another test
4363 * gst/gstbin.c: (gst_bin_init):
4364 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
4365 * gst/gstelement.c: (gst_element_post_message),
4366 (gst_element_set_state):
4367 * gst/gstelementfactory.c: (gst_element_factory_create):
4368 * gst/gstmessage.c: (gst_message_new):
4369 * gst/gstscheduler.c:
4370 various debugging additions and cleanups
4372 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
4374 * check/Makefile.am:
4375 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
4376 (main):
4377 adding tests for elements
4378 * gst/gstelement.c: (gst_element_dispose):
4380 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
4382 * gst/registries/gstlibxmlregistry.c: (load_feature):
4383 plug more leaks. A simple gst_init() now is leakfree, yay.
4385 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
4387 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
4388 (gst_xml_registry_load):
4389 plug another memleak
4391 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
4393 * configure.ac:
4394 use GST_SET_ERROR_CFLAGS
4395 * docs/faq/cvs.xml:
4396 change to ERROR_CFLAGS
4398 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
4400 * configure.ac:
4401 make GST_ERROR_CFLAGS overridable and re-enable Werror
4402 * docs/faq/cvs.xml:
4403 add a note about error CFLAGS
4404 * docs/gst/tmpl/gstfakesrc.sgml:
4405 * gst/elements/gstfakesrc.c:
4406 comment out some unused code
4407 * gst/gst.c: (split_and_iterate):
4408 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
4409 (load_feature):
4410 plug some memleaks
4412 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
4414 * common/Makefile.am:
4415 * common/gtk-doc.mak:
4416 * docs/gst/Makefile.am:
4417 factor out gtk-doc.mak
4419 2005-07-07 Wim Taymans <wim@fluendo.com>
4421 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
4422 (gst_thread_scheduler_dispose):
4423 Unlock the STREAM_LOCK completely.
4425 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
4427 * check/Makefile.am:
4428 * check/elements/.cvsignore:
4429 * check/elements/gstfakesrc.c: (chain_func), (event_func),
4430 (START_TEST), (fakesrc_suite), (main):
4431 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4432 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4433 (gst_fakesrc_create), (gst_fakesrc_start):
4434 * gst/elements/gstfakesrc.h:
4435 adding a first element test
4437 2005-07-07 Andy Wingo <wingo@pobox.com>
4439 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
4440 debug message.
4442 2005-07-07 Wim Taymans <wim@fluendo.com>
4444 * gst/gstquery.c:
4445 * gst/gstquery.h:
4446 Remove old types
4448 2005-07-07 Wim Taymans <wim@fluendo.com>
4450 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
4451 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
4452 Allow subclasses to implement their own negotiation.
4454 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
4456 * docs/design/part-gstbin.txt:
4457 * docs/design/part-gstpipeline.txt:
4458 Update design notes to reflect the movement of
4459 responsibility for bus handling from GstPipeline to
4460 GstBin
4462 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
4464 * configure.ac:
4465 Remove unnecessary queue2/3/4 examples.
4467 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
4469 * examples/Makefile.am:
4470 * examples/helloworld/helloworld.c: (event_loop), (main):
4471 * examples/queue/queue.c: (event_loop), (main):
4472 * examples/queue2/queue2.c: (main):
4473 Update a couple of the examples to work again.
4475 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
4476 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
4477 Spelling corrections and extra debug.
4479 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
4480 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
4481 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
4482 * gst/gstbin.h:
4483 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
4484 (gst_pipeline_change_state):
4485 * gst/gstpipeline.h:
4486 Move the bus handler for children to the GstBin, and create a
4487 separate bus for receiving messages from children to the one the
4488 bus sends 'upwards' on.
4490 2005-07-06 Wim Taymans <wim@fluendo.com>
4492 * gst/base/README:
4493 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
4494 (gst_base_sink_handle_object), (gst_base_sink_loop),
4495 (gst_base_sink_change_state):
4496 * gst/base/gstbasesink.h:
4497 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
4498 (gst_base_src_init), (gst_base_src_setcaps),
4499 (gst_base_src_getcaps), (gst_base_src_loop),
4500 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
4501 (gst_base_src_start), (gst_base_src_change_state):
4502 * gst/base/gstbasesrc.h:
4503 Make basesrc negotiate.
4504 Handle the case where preroll fails in basesink.
4505 Update README.
4507 2005-07-06 Wim Taymans <wim@fluendo.com>
4509 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
4510 Implement the fixate function.
4511 Clean up acceptcaps.
4513 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4515 * docs/pwg/building-filterfactory.xml:
4516 * docs/pwg/pwg.xml:
4517 Remove never-written filter-factory chapter; I'll add the various
4518 base classes to part 4 ("other element types") later on.
4520 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4522 * docs/pwg/advanced-negotiation.xml:
4523 * docs/pwg/building-boiler.xml:
4524 * docs/pwg/building-pads.xml:
4525 * docs/pwg/pwg.xml:
4526 * examples/pwg/Makefile.am:
4527 Add a chapter on caps negotiation, simplify the original code
4528 samples a bit w.r.t. caps negotiation, add link to the advanced
4529 section. Add a bunch of examples showing different use cases of
4530 different types of caps negotiation. Upstream renegotiation isn't
4531 fully documented yet since nobody knows how that works.
4533 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
4535 * check/gst/gstpad.c:
4536 * check/gstcheck.c:
4537 * gst/gstpad.c: (gst_pad_get_internal_links_default):
4538 if pad has no parent, return NULL as list of internal links
4540 2005-07-05 Andy Wingo <wingo@pobox.com>
4542 * gst/elements/gstfilesrc.c:
4543 * gst/elements/gstfakesrc.c:
4544 * gst/base/gstpushsrc.c:
4545 * gst/base/gstbasesrc.h:
4546 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
4548 2005-07-05 Stefan Kost <ensonic@users.sf.net>
4550 * Makefile.am:
4551 better report generation target (lcov needs a patch)
4553 2005-07-05 Andy Wingo <wingo@pobox.com>
4555 * gst/elements, testsuite: Null if we got it...
4557 2005-07-05 Wim Taymans <wim@fluendo.com>
4559 * configure.ac:
4560 * libs/gst/dataprotocol/Makefile.am:
4561 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
4562 * libs/gst/dataprotocol/dataprotocol.h:
4563 * pkgconfig/Makefile.am:
4564 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
4565 * pkgconfig/gstreamer-dataprotocol.pc.in:
4566 Ported dataprotol to 0.9.
4567 Added pkgconfig files.
4569 2005-07-05 Andy Wingo <wingo@pobox.com>
4571 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
4572 Default to returning TRUE for the case when tranform_caps returns
4573 a fixed caps, like for identity or volume.
4575 * check/gst/gstbus.c (pound_bus_with_messages):
4576 * check/gst/gstmessage.c (START_TEST):
4577 * check/pipelines/simple_launch_lines.c (got_handoff): Application
4578 message API change.
4580 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
4581 logic weaks here: always run transform_caps, trying passthrough
4582 operation only if the original caps intersects with the transform.
4584 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
4585 source and sink caps.
4587 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
4588 Intersect the peer caps with the pad template before going into
4589 transform_caps.
4590 (gst_base_transform_transform_caps): More debugging.
4592 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
4593 src argument.
4595 2005-07-04 Edward Hervey <edward@fluendo.com>
4597 * gst/gstutils.c:
4598 * gst/gstutils.h:
4599 (gst_pad_add_*_probe): now returns the signal id for better wrapping
4600 in bindings.
4602 2005-07-04 Andy Wingo <wingo@pobox.com>
4604 * check/gst/gstpad.c: Only set explicit caps on pads.
4606 2005-07-01 Andy Wingo <wingo@pobox.com>
4608 * tests/network-clock.scm: Commentary update.
4610 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
4611 Didn't really make sense, not implementable with basetransform,
4612 etc.
4613 (gst_identity_transform): Unref inbuf via make_writable. Feeble
4614 attempt at implementing the sync property, needs an unlock method.
4616 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
4617 New func, by default returns the same caps (the identity
4618 transformation).
4619 (gst_base_transform_getcaps): Uses transform_caps to return
4620 something sensible.
4621 (gst_base_transform_setcaps): Complicated logic to get caps on
4622 both pads, even if they are different, and to call set_caps once
4623 for every time both pads get their caps set.
4624 (gst_base_transform_handle_buffer): Give the ref to the transform
4625 function. Allows in-place modification of the buffer.
4627 * gst/base/gstbasetransform.h (transform_caps): New class method.
4628 Given caps on one side, what can I do on the other.
4629 (set_caps): Take two caps, one for each side of the element.
4631 * gst/gstpad.h:
4632 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
4633 caps in place. This is safe because we can check the mutability of
4634 the caps, and a good idea because fixate functions are just called
4635 as a matter of last resort. (Not actually implemented.)
4636 (gst_pad_set_caps): If the caps we're setting is actually the same
4637 as the existing pad caps, just update the pointer without calling
4638 setcaps. Assert that caps is either NULL or fixed, as per the
4639 docs.
4641 * gst/gstghostpad.c: Update for fixate changes.
4643 2005-07-02 Andy Wingo <wingo@pobox.com>
4645 * gst/gstcaps.c:
4646 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
4647 two refcounts makes it immutable, which is enough. Doc more.
4649 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
4651 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
4652 Put the mini_object into GValue as a mini_object,
4653 not a gpointer, since that's how we declared
4654 the signal.
4656 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4658 * examples/pwg/Makefile.am:
4659 Fix buildbot again.
4661 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4663 * docs/pwg/building-testapp.xml:
4664 Add extra check.
4665 * examples/pwg/Makefile.am:
4666 Fix buildbot.
4668 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4670 * configure.ac:
4671 * examples/Makefile.am:
4672 * examples/pwg/Makefile.am:
4673 * examples/pwg/extract.pl:
4674 Enable building the PWG examples.
4675 * docs/pwg/advanced-interfaces.xml:
4676 Add URI interface stub.
4677 * docs/pwg/advanced-types.xml:
4678 * docs/pwg/other-autoplugger.xml:
4679 * docs/pwg/appendix-porting.xml:
4680 * docs/pwg/pwg.xml:
4681 Add porting guide (mostly stubs), remove autoplugging (see ADM).
4682 * docs/pwg/building-boiler.xml:
4683 * docs/pwg/building-chainfn.xml:
4684 * docs/pwg/building-pads.xml:
4685 * docs/pwg/building-props.xml:
4686 * docs/pwg/building-state.xml:
4687 * docs/pwg/building-testapp.xml:
4688 Update the building-*.xml parts for 0.9 changes. All examples
4689 code blocks compile in examples/pwg/*.
4691 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4693 * docs/manual/advanced-autoplugging.xml:
4694 * docs/manual/appendix-checklist.xml:
4695 * docs/manual/appendix-integration.xml:
4696 * docs/manual/highlevel-components.xml:
4697 Fix playbin/decodebin examples, update docs a bit, mention bus
4698 instead of signals in various places, mention kmplayer and
4699 kaffeine since they have a working GStreamer backend in the KDE
4700 section.
4702 2005-06-30 Wim Taymans <wim@fluendo.com>
4704 * CHANGES-0.9:
4705 * docs/design/draft-ghostpads.txt:
4706 * docs/design/draft-push-pull.txt:
4707 * docs/design/draft-query.txt:
4708 * docs/design/part-TODO.txt:
4709 * docs/design/part-query.txt:
4710 Added CHANGES-0.9 doc, updated status of other docs.
4712 * gst/gstquery.h:
4713 Remove "hmm" macro
4715 2005-06-30 Wim Taymans <wim@fluendo.com>
4717 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
4718 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
4719 (gst_base_sink_change_state):
4720 * gst/base/gstbasesink.h:
4721 Some tweaks, only EOS and a buffer complete a preroll.
4723 2005-06-30 Andy Wingo <wingo@pobox.com>
4725 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
4726 activate_push down to the internal pad as well.
4728 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
4730 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4732 * gst/gsttaginterface.c:
4733 Some documentation fixes (#307394 and #307397).
4735 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
4737 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4739 * gst/gstvalue.c: (gst_value_intersect_list):
4740 Fix memleak (#309125).
4742 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4744 * docs/manual/advanced-dataaccess.xml:
4745 Fix fakesrc example to compile; doesn't work, bug somewhere...?
4746 * docs/manual/basics-pads.xml:
4747 Add reference for filtered caps to above chapter.
4749 2005-06-30 Wim Taymans <wim@fluendo.com>
4751 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
4752 (gst_bin_change_state):
4753 Probes are gone.
4754 Lame attempt at making the state change function a bit
4755 more readable.
4757 2005-06-30 Wim Taymans <wim@fluendo.com>
4759 * docs/design/part-clocks.txt:
4760 * docs/design/part-element-sink.txt:
4761 * docs/design/part-events.txt:
4762 * docs/design/part-preroll.txt:
4763 * docs/design/part-states.txt:
4764 Some more tweeks and additions to the docs.
4766 2005-06-30 Wim Taymans <wim@fluendo.com>
4768 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
4769 (default_have_data), (gst_pad_class_init), (gst_pad_init),
4770 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
4771 (gst_pad_check_pull_range), (gst_pad_get_range),
4772 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
4773 * gst/gstpad.h:
4774 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
4775 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
4776 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
4777 (gst_pad_remove_buffer_probe):
4778 Removed atomic operations, use existing LOCK.
4779 Move exception handling out of main code path.
4781 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4783 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
4784 (silly_return_true_function), (gst_pad_class_init),
4785 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
4786 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
4787 (gst_pad_send_event):
4788 Fix accumulator, add default value by using _emitv() instead
4789 of _emit() for signal emission.
4791 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4793 * docs/manual/advanced-dataaccess.xml:
4794 * examples/manual/Makefile.am:
4795 Add probe example.
4796 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
4797 Make work (??).
4799 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
4801 * gst/elements/gstfilesink.c: (gst_filesink_render):
4802 Simplify code so that we don't have to handle short
4803 writes and return GST_FLOW_ERROR if an error occured.
4805 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4807 * docs/gst/gstreamer-docs.sgml:
4808 Remove probes more.
4810 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4812 * docs/gst/gstreamer-sections.txt:
4813 * docs/gst/tmpl/gstpad.sgml:
4814 * docs/gst/tmpl/gstprobe.sgml:
4815 * gst/Makefile.am:
4816 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
4817 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
4818 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
4819 (gst_pad_push_event), (gst_pad_send_event):
4820 * gst/gstpad.h:
4821 * gst/gstutils.c: (gst_pad_add_data_probe),
4822 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
4823 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
4824 (gst_pad_remove_buffer_probe):
4825 * gst/gstutils.h:
4826 Remove old probes, add new g-signal-based probes and some utility
4827 functions.
4829 2005-06-29 Edward Hervey <edward@fluendo.com>
4831 * gst/gstelementfactory.c:
4832 * gst/gstutils.h:
4833 * gst/gstutils.c:
4834 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
4835 the definition to the header file.
4837 2005-06-29 Andy Wingo <wingo@pobox.com>
4839 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
4840 plugins from the source directory.
4842 2005-06-29 Wim Taymans <wim@fluendo.com>
4844 * docs/gst/tmpl/gstbuffer.sgml:
4845 * docs/gst/tmpl/gstclock.sgml:
4846 Some fixings for blantently wrong text.
4848 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
4850 * check/Makefile.am:
4851 * gst/gst.c: (add_path_func), (init_pre):
4852 * gst/gstregistry.c: (gst_registry_add_path):
4853 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
4854 only scan the GST_PLUGIN_PATH locations, and not add
4855 system locations
4857 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
4859 * docs/gst/gstreamer-sections.txt:
4860 * docs/gst/tmpl/gstbasesrc.sgml:
4861 * gst/gstelement.c:
4862 * gst/gstelement.h:
4863 * gst/gstevent.c:
4864 * gst/gstutils.c:
4865 doc fixes
4867 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4869 * docs/manual/advanced-autoplugging.xml:
4870 Fix autoplugging example.
4872 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4874 * docs/manual/advanced-autoplugging.xml:
4875 * docs/manual/mime-world.fig:
4876 Try to get autoplugging working, fix type detection. Fix text
4877 in hello-world image.
4879 2005-06-29 Wim Taymans <wim@fluendo.com>
4881 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4882 (gst_base_sink_change_state):
4883 Small debug line.
4885 * gst/gstclock.h:
4886 map SIGNAL and BROADCAST to the right function.
4888 * gst/gstobject.h:
4889 Remove redundant braces.
4891 * gst/gstpad.c: (gst_pad_set_caps):
4892 Don't call setcaps function when reseting caps to NULL.
4894 * gst/gstsystemclock.c: (gst_system_clock_dispose),
4895 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
4896 (gst_system_clock_id_unschedule):
4897 Use BROADCAST as this is what we do.
4899 2005-06-29 Wim Taymans <wim@fluendo.com>
4901 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4902 We are actually prerolling before commiting the state
4903 change.
4905 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
4907 * docs/manual/advanced-clocks.xml:
4908 * docs/manual/advanced-interfaces.xml:
4909 * docs/manual/advanced-metadata.xml:
4910 * docs/manual/advanced-position.xml:
4911 * docs/manual/advanced-schedulers.xml:
4912 * docs/manual/advanced-threads.xml:
4913 * docs/manual/appendix-porting.xml:
4914 * docs/manual/basics-bins.xml:
4915 * docs/manual/basics-bus.xml:
4916 * docs/manual/basics-elements.xml:
4917 * docs/manual/basics-helloworld.xml:
4918 * docs/manual/basics-pads.xml:
4919 * docs/manual/highlevel-components.xml:
4920 * docs/manual/manual.xml:
4921 * docs/manual/thread.fig:
4922 Update (until threads/scheduling) Application Development Manual;
4923 remove GstThread, add GstBus, add simple porting checklist, add
4924 documentation for tag writing, clocks, make all examples until this
4925 part compile and run.
4926 * examples/manual/Makefile.am:
4927 Update from changes to Application Development Manual; add bus
4928 example, remove thread example.
4930 2005-06-28 Wim Taymans <wim@fluendo.com>
4932 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
4933 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
4934 (gst_bus_source_dispatch):
4935 Add debugging messages.
4936 Make internal methods static.
4937 Handle the case where the bus is flushed in the handler.
4939 * gst/gstelement.c: (gst_element_get_bus):
4940 Fix refcount in _get_bus();
4942 * gst/gstpipeline.c: (gst_pipeline_change_state),
4943 (gst_pipeline_get_clock_func):
4944 Clock refcounting fixes.
4945 Handle the case where preroll timed out more gracefully.
4947 * gst/gstsystemclock.c: (gst_system_clock_dispose):
4948 Clean up the internal thread in dispose. This is needed
4949 for subclasses that actually get disposed.
4951 * gst/schedulers/threadscheduler.c:
4952 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4953 (gst_thread_scheduler_dispose):
4954 Free thread pool in dispose.
4956 2005-06-28 Andy Wingo <wingo@pobox.com>
4958 * tests/network-clock-utils.scm (debug, print-event): New utils.
4960 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
4961 (*packet-loss*): Unified loss probability.
4962 (network-time): Report out-of-band events.
4964 * tests/plot-data: Add support for out-of-band events. Hack it
4965 into this script instead of passing it down the pipe; should fix
4966 this later.
4968 2005-06-28 Wim Taymans <wim@fluendo.com>
4970 * docs/gst/gstreamer.types:
4971 * docs/gst/tmpl/gstbasesrc.sgml:
4972 * docs/gst/tmpl/gstpad.sgml:
4973 Docs fixes.
4975 2005-06-28 Wim Taymans <wim@fluendo.com>
4977 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
4978 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
4979 (gst_proxy_pad_do_fixatecaps):
4980 Correctly proxy the check_pull_range function.
4982 2005-06-28 Andy Wingo <wingo@pobox.com>
4984 * tests/network-clock.scm: Removed need for slib.
4986 2005-06-28 Wim Taymans <wim@fluendo.com>
4988 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
4989 (gst_basesink_preroll_queue_flush):
4990 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
4991 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
4992 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
4993 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
4994 (gst_proxy_pad_set_property):
4995 * gst/gstpad.c:
4996 * gst/gstpad.h:
4997 * gst/gstqueue.c: (gst_queue_init):
4998 The deprecated pad loop function is removed now.
5000 2005-06-28 Andy Wingo <wingo@pobox.com>
5002 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
5003 New parameters, simulate network packet loss.
5005 * tests/network-clock-utils.scm: Initialize the RNG.
5007 2005-06-28 Wim Taymans <wim@fluendo.com>
5009 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
5010 (gst_basesink_event), (gst_basesink_deactivate):
5011 Flushing the preroll queue always needs to unlock the waiters.
5013 2005-06-28 Edward Hervey <edward@fluendo.com>
5015 * gst/gstpipeline.c: (gst_pipeline_send_event):
5016 Wheen a seek was successful on a pipeline, set the stream_time to the
5017 seek offset in order to have a synchronized stream_time.
5019 2005-06-28 Wim Taymans <wim@fluendo.com>
5021 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
5022 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
5023 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
5024 (gst_proxy_pad_do_fixatecaps):
5025 Call wrapper function instead of just calling the function
5026 pointers. This takes care of any locking and whatmore.
5028 2005-06-28 Wim Taymans <wim@fluendo.com>
5030 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
5031 (gst_pad_pull_range):
5032 * gst/gstpad.h:
5033 CONNECTED -> LINKED.
5035 2005-06-28 Andy Wingo <wingo@pobox.com>
5037 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
5038 source-munging commit!!!
5040 * gst/gstobject.c (gst_object_unref, gst_object_ref)
5041 (gst_object_sink): Take gpointer arguments, not GstObject --
5042 avoids casts. Like GLib.
5044 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
5045 activate.
5047 2005-06-27 Andy Wingo <wingo@pobox.com>
5049 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
5050 remaining buffer.
5052 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
5053 returns a sorted copy of the trace list.
5054 (gst_alloc_trace_print_live): New API, only prints traces with
5055 live objects. Sort the list.
5056 (gst_alloc_trace_print_all): Sort the list.
5057 (gst_alloc_trace_print): Align columns.
5059 * gst/elements/gstttypefindelement.c:
5060 * gst/elements/gsttee.c:
5061 * gst/base/gstbasesrc.c:
5062 * gst/base/gstbasesink.c:
5063 * gst/base/gstbasetransform.c:
5064 * gst/gstqueue.c: Adapt for pad activation changes.
5066 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
5067 sched.
5068 (gst_pipeline_dispose): Drop ref on sched.
5070 * gst/gstpad.c (gst_pad_init): Set the default activate func.
5071 (gst_pad_activate_default): Push mode by default.
5072 (pre_activate_switch, post_activate_switch): New stubs, things to
5073 do before and after switching activation modes on pads.
5074 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
5075 the pad's activate function to choose which mode to activate.
5076 Shortcut on deactivation and call the right function directly.
5077 (gst_pad_activate_pull): New API, (de)activates a pad in pull
5078 mode.
5079 (gst_pad_activate_push): New API, same for push mode.
5080 (gst_pad_set_activate_function)
5081 (gst_pad_set_activatepull_function)
5082 (gst_pad_set_activatepush_function): Setters for new API.
5084 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
5085 Trace all miniobjects.
5086 (gst_mini_object_make_writable): Unref the arg if we copy, like
5087 gst_caps_make_writable.
5089 * gst/gstmessage.c (_gst_message_initialize): No trace init.
5091 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
5092 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
5093 Adapt for new pad API.
5095 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
5097 * gst/gstelement.h:
5098 * gst/gstelement.c (gst_element_iterate_src_pads)
5099 (gst_element_iterate_sink_pads): New API functions.
5101 * gst/gstelement.c (iterator_fold_with_resync): New utility,
5102 should fold into gstiterator.c in some form.
5103 (gst_element_pads_activate): Simplified via use of fold and
5104 delegation of decisions to gstpad->activate.
5106 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
5107 help in debugging.
5109 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
5110 class once in init, like gstmessage. Didn't run into this issue
5111 but it seems correct. Don't initialize a trace, gstminiobject does
5112 that.
5114 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
5115 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
5116 to the bus.
5117 (assert_live_count): New util function, uses alloc traces to check
5118 cleanup.
5120 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
5121 To be modified when unlink drops the internal pad.
5123 2005-06-27 Wim Taymans <wim@fluendo.com>
5125 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
5126 (gst_bin_change_state):
5127 Cleanup the get_state() function a little, make sure it
5128 iterates the same set of elements.
5129 Added stub iterate_state_order().
5131 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
5133 * docs/gst/gstreamer-docs.sgml:
5134 * docs/gst/gstreamer-sections.txt:
5135 * docs/gst/gstreamer.types:
5136 * docs/gst/tmpl/gstbasesink.sgml:
5137 * docs/gst/tmpl/gstbasesrc.sgml:
5138 * docs/gst/tmpl/gstbasetransform.sgml:
5139 * docs/gst/tmpl/gstelement.sgml:
5140 * docs/gst/tmpl/gstiterator.sgml:
5141 * gst/base/gstbasesrc.c:
5142 * gst/base/gstbasesrc.h:
5143 * gst/base/gstbasetransform.h:
5144 * gst/gstelement.c:
5145 * gst/gstiterator.h:
5146 adding basetransform and iterator docs
5148 2005-06-27 Andy Wingo <wingo@pobox.com>
5150 * docs/design/part-activation.txt: Notes on how activation should
5151 work -- not quite implemented yet.
5153 2005-06-25 Wim Taymans <wim@fluendo.com>
5155 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
5156 At least get the chain function correct, needs more
5157 fixing.
5159 2005-06-25 Wim Taymans <wim@fluendo.com>
5161 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
5162 (gst_basesink_handle_object), (gst_basesink_event),
5163 (gst_basesink_do_sync), (gst_basesink_handle_event),
5164 (gst_basesink_change_state):
5165 * gst/gsttask.h:
5166 Right, two problems here: ghostpads don't take locks and
5167 glib _rec_mutex_lock_full() with depth==0 still locks.
5168 Catch illegal locking and g_warn them.
5170 2005-06-25 Wim Taymans <wim@fluendo.com>
5172 * check/states/sinks.c: (START_TEST), (gst_object_suite):
5173 Have to check for completion now...
5175 2005-06-25 Wim Taymans <wim@fluendo.com>
5177 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
5178 (gst_basesink_handle_object), (gst_basesink_event),
5179 (gst_basesink_do_sync), (gst_basesink_handle_event),
5180 (gst_basesink_change_state):
5181 * gst/gstpad.h:
5182 Unlock STREAM_LOCK whatever the recursion was.
5184 2005-06-25 Wim Taymans <wim@fluendo.com>
5186 * gst/base/gstbasesink.c: (gst_basesink_set_property),
5187 (gst_basesink_preroll_queue_empty),
5188 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
5189 (gst_basesink_event), (gst_basesink_do_sync),
5190 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
5191 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
5192 (gst_basesink_change_state):
5193 Reworked the base sink, handle event and buffer serialisation
5194 correctly and removed possible deadlock.
5195 Handle EOS correctly.
5197 2005-06-25 Wim Taymans <wim@fluendo.com>
5199 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
5200 (gst_pipeline_change_state):
5201 * tools/gst-launch.c: (check_intr), (event_loop), (main):
5202 Allow elements to post EOS in the state change function.
5203 Fix up -launch, make it exit the poll loop when the
5204 pipeline actually changed state.
5205 Fix up warning parsing in -launch.
5207 2005-06-25 Wim Taymans <wim@fluendo.com>
5209 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
5210 (gst_tee_sink_activate):
5211 Core takes STREAM_LOCK for us now.
5213 2005-06-25 Wim Taymans <wim@fluendo.com>
5215 * gst/gstelement.c: (gst_element_get_state_func),
5216 (gst_element_set_state):
5217 * gst/gstelement.h:
5218 * gst/gstmessage.c: (gst_message_parse_error),
5219 (gst_message_parse_warning):
5220 Keep track of current target state while performing a state
5221 change so that subclasses can do something interesting.
5222 Fix parsing of warning/error messages when GError is NULL.
5224 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
5226 * docs/gst/Makefile.am:
5227 * docs/gst/gstreamer-docs.sgml:
5228 * docs/gst/gstreamer-sections.txt:
5229 * docs/gst/gstreamer.types:
5230 * docs/gst/tmpl/gstbasesink.sgml:
5231 * docs/gst/tmpl/gstbasesrc.sgml:
5232 * docs/gst/tmpl/gstbin.sgml:
5233 * docs/gst/tmpl/gstcompat.sgml:
5234 * docs/gst/tmpl/gstfakesink.sgml:
5235 * docs/gst/tmpl/gstfakesrc.sgml:
5236 * docs/gst/tmpl/gstfilesink.sgml:
5237 * docs/gst/tmpl/gstfilesrc.sgml:
5238 * docs/gst/tmpl/gstindex.sgml:
5239 * docs/manual/appendix-quotes.xml:
5240 * gst/base/gstbasesrc.h:
5241 * gst/elements/gstfakesrc.h:
5242 * gst/gstmessage.h:
5243 start pulling in base classes and elements in our docs
5245 2005-06-24 Stefan Kost <ensonic@users.sf.net>
5247 * docs/gst/Makefile.am:
5248 * docs/libs/Makefile.am:
5249 fixed make distcheck with gtk-doc 1.3
5251 2005-06-23 Wim Taymans <wim@fluendo.com>
5253 * gst/gstelement.c: (gst_element_get_state_func),
5254 (gst_element_set_state), (gst_element_change_state):
5255 When the state did not change, also report NO_PREROLL
5256 when it matters.
5258 2005-06-23 Wim Taymans <wim@fluendo.com>
5260 * gst/gstpad.c: (gst_pad_event_default):
5261 * gst/gstqueue.c: (gst_queue_loop):
5262 No unsafe task pausing please.
5264 2005-06-23 Wim Taymans <wim@fluendo.com>
5266 * gst/schedulers/threadscheduler.c:
5267 (gst_thread_scheduler_task_start),
5268 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
5269 Ref the task before pushing it on the threadpool. This
5270 makes sure that we have a ref when the threadfunction is
5271 actually called.
5273 2005-06-23 Andy Wingo <wingo@pobox.com>
5275 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
5276 offset is greater than the file's size.
5278 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
5279 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
5280 * gst/gstobject.c (gst_object_class_init): Make the class lock
5281 recursive. Wim won't let me drop deep_notify. Decodebin works
5282 again, whoopdy doo.
5284 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
5285 internal pad, and hacks accordingly. Doesn't do it on the target
5286 pad because we change its caps. Probably catches all cases of
5287 interest tho.
5288 (gst_ghost_pad_set_property): Connect to notify::caps as
5289 appropritate.
5291 * tests/network-clock.scm (plot-simulation): Pipe data to the
5292 elite python skript.
5294 * tests/network-clock-utils.scm (define-parameter): New macro,
5295 defines a parameter that can be set via the command line.
5296 (set-parameter!, parse-parameter-arguments): Command line args
5297 parser.
5299 * tests/plot-data: Simple matplotlib-based plotter, takes input on
5300 stdin.
5302 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
5304 * gst/elements/gsttypefindelement.c:
5305 (gst_type_find_element_handle_event):
5306 Don't restart typefinding on a discont.
5307 * gst/gstelement.c: (gst_element_set_state):
5308 Debug spelling fix.
5309 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
5310 Allow changing mode of an active pad.
5311 Debug output fixes.
5312 * gst/registries/gstlibxmlregistry.c: (load_feature):
5313 Don't cast a static pad template to a normal pad template.
5315 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
5317 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
5318 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
5319 remove gst_strtoll completely, since it didn't actually do
5320 anything more than what g_ascii_strtoull already does.
5321 check for range errors when deserializing
5322 do a cast for the unsigned cases; but further fixing needs
5323 a decision on what the interpretation of "(int)" and
5324 deserialization should be for values that fall outside the
5325 type's boundaries (ie, refuse, or interpret as casting)
5327 2005-06-23 Wim Taymans <wim@fluendo.com>
5329 * check/Makefile.am:
5330 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
5331 * docs/design/part-live-source.txt:
5332 * docs/design/part-states.txt:
5333 * gst/base/gstbasesrc.c: (gst_basesrc_init),
5334 (gst_basesrc_set_live), (gst_basesrc_is_live),
5335 (gst_basesrc_get_range), (gst_basesrc_activate),
5336 (gst_basesrc_change_state):
5337 * gst/base/gstbasesrc.h:
5338 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5339 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
5340 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
5341 * gst/gstelement.c: (gst_element_get_state_func),
5342 (gst_element_set_state):
5343 * gst/gstelement.h:
5344 * gst/gsttypes.h:
5345 * tools/gst-launch.c: (event_loop), (main):
5346 Added support for live sources and other elements that
5347 cannot do preroll.
5348 Updated design docs, added live-source design doc.
5349 Implemented live source functionality in basesrc
5350 Fix error condition in _bin_get_state()
5351 Implement live source handling in -launch.
5352 Added check for live sources.
5353 Fixed case in GstBin where elements were changed state
5354 multiple times.
5357 2005-06-23 Andy Wingo <wingo@pobox.com>
5359 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
5360 borken refcounting.
5362 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
5363 gst_caps_replace takes care of this for us.
5365 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
5366 gst_pad_set_caps on the target, not just its setcaps() function.
5368 * tests/network-clock.scm:
5369 * tests/network-clock-utils.scm: A network clock simulator.
5370 Something of an algorithmic testbed before doing something in C.
5372 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
5374 * check/Makefile.am:
5375 * check/gst/capslist.h:
5376 copy over from 0.8, and add two with bitmasks specified with
5377 (int) 0xFF...
5378 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
5379 add test to parse everything from capslist.h
5380 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
5381 (main):
5382 add test for structure deserialization
5383 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
5384 add tests for deserialization of strings to int types
5385 * gst/gststructure.c: (gst_structure_nth_field_name):
5386 * gst/gststructure.h:
5387 add a way to get the name of a field referenced by index
5388 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
5389 instead of checking if the resulting long long lies between
5390 min and max, we check if the long long would fit into
5391 a number of bytes for the final type.
5392 This fixes cases where a string represents 2^32 - 1, which
5393 when cast to int would be the (valid) -1, but is bigger than
5394 G_MAXINT
5396 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
5398 * gst/parse/grammar.y:
5399 add a log line for type deserialization
5401 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
5403 * check/gst/gstvalue.c: (START_TEST):
5404 * gst/gstvalue.c: (gst_value_deserialize):
5405 return long long, not int, so gint64 deserialization actually
5406 works. Is there any flag that makes the compiler check this ?
5407 Fixes #308559
5409 2005-06-22 Wim Taymans <wim@fluendo.com>
5411 * gst/gstbuffer.h:
5412 Added convenience macros for setting buffers in GValue.
5414 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
5416 * check/gst/.cvsignore:
5417 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
5418 add a test deserializing int64, and comment part out because
5419 it fails, yay !
5421 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
5423 * check/Makefile.am:
5424 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
5425 * testsuite/Makefile.am:
5426 * testsuite/caps/Makefile.am:
5427 * testsuite/caps/value_serialize.c:
5428 * testsuite/test_gst_init.c:
5429 move a value_serialize test over
5431 2005-06-20 Wim Taymans <wim@fluendo.com>
5433 * gst/gstpad.c:
5434 Small doc updates.
5436 * gst/gstvalue.c: (gst_value_compare_buffer),
5437 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
5438 (gst_value_compare_flags), (gst_value_serialize_flags),
5439 (gst_value_deserialize_flags), (_gst_value_initialize):
5440 Fix serialisation of buffers, they are not boxed types anymore
5442 2005-06-20 Wim Taymans <wim@fluendo.com>
5444 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
5445 Testcase to show error in buffer-on-caps serialisation.
5447 2005-06-20 Andy Wingo <wingo@pobox.com>
5449 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
5450 will be adding to later.
5452 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
5453 if its socks fill with rocks.
5454 (gst_system_clock_obtain): Set the name on object construction.
5455 Avoid double-checked locking.
5457 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
5459 * gst/gsturi.c: (gst_element_make_from_uri):
5460 Fix potential endless loop.
5462 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
5464 * check/Makefile.am:
5465 add gsttag
5466 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
5467 (main):
5468 move over from testsuite dir and clean up
5469 * configure.ac:
5470 * gst/gsttag.c:
5471 * testsuite/Makefile.am:
5472 * testsuite/tags/.cvsignore:
5473 * testsuite/tags/Makefile.am:
5474 * testsuite/tags/merge.c:
5475 remove testsuite/tags
5477 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
5479 * docs/gst/gstreamer-sections.txt:
5480 * docs/gst/tmpl/gstenumtypes.sgml:
5481 * win32/gstenumtypes.c:
5482 clean up documentation build a little
5484 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
5486 * check/gstcheck.h:
5487 add macros for checking refcounts on objects and caps
5488 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
5489 add some more unit tests
5490 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
5491 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
5492 fix leaked refcounts (I hope :)) so unittest works
5493 * gst/gstpad.h:
5494 whitespace removal
5496 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
5498 * configure.ac: back to HEAD
5500 === release 0.9.1 ===
5502 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
5504 * NEWS:
5505 * RELEASE:
5506 updated
5508 2005-06-17 Andy Wingo <wingo@pobox.com>
5510 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
5511 assert; it's always possible that the pad gets deactivated in
5512 between the checks in gstpad.c and the implementation. Rely on
5513 finish_preroll() to return a FLUSHING or similar instead of on the
5514 assert.
5516 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
5517 clock and post an EOS message if we come out of finish_preroll in
5518 the playing state.
5520 2005-06-16 David Schleef <ds@schleef.org>
5522 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
5523 (gst_capsfilter_set_property): Allow NULL as possible value
5524 for filter_caps property, indicating GST_CAPS_ANY.
5526 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
5528 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
5529 fix debug output
5530 * gst/schedulers/Makefile.am:
5531 use libgst prefix
5532 * gstreamer.spec.in:
5533 fix spec for it
5535 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
5537 * gstreamer.spec.in:
5538 clean up
5540 2005-06-08 Andy Wingo <wingo@pobox.com>
5542 * gst/gstutils.c: RPAD fixes all around.
5543 (gst_element_link_pads): Refcounting fixes.
5545 * tools/gst-inspect.c:
5546 * tools/gst-xmlinspect.c:
5547 * parse/grammar.y:
5548 * gst/base/gsttypefindhelper.c:
5549 * gst/base/gstbasesink.c:
5550 * gst/gstqueue.c: RPAD fixes.
5552 * gst/gstghostpad.h:
5553 * gst/gstghostpad.c: New ghost pad implementation as full proxy
5554 pads. The tricky thing is they provide both source and sink
5555 interfaces, since they proxy the internal pad for the external
5556 pad, and vice versa. Implement with lower-level ProxyPad objects,
5557 with the interior proxy pad as a child of the exterior ghost pad.
5558 Should write a doc on this.
5560 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
5561 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
5562 gst_object API.
5564 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
5565 pads are real pads. No ghost pads in this file. Not documenting
5566 the myriad s/RPAD/PAD/ and REALIZE fixes.
5567 (gst_pad_class_init): Add properties for "direction" and
5568 "template". Both are construct-only, so they can't change during
5569 the life of the pad. Fixes properly deriving from GstPad.
5570 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
5571 derived objects, just set properties when creating the objects via
5572 g_object_new.
5573 (gst_pad_get_parent): Implement as a function, return NULL if the
5574 parent is not an element.
5575 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
5576 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
5578 * gst/gstobject.c (gst_object_class_init): Make name a construct
5579 property. Don't set it in the object init.
5581 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
5582 with UNKNOWN direction.
5583 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
5584 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
5585 (gst_element_remove_pad): Remove ghost-pad special cases.
5586 (gst_element_pads_activate): Remove rpad cruft.
5588 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
5589 catch the pad's-parent-not-an-element case.
5591 * gst/gst.h: Include gstghostpad.h.
5593 * gst/gst.c (init_post): No more real, ghost pads.
5595 * gst/Makefile.am: Add gstghostpad.[ch].
5597 * check/Makefile.am:
5598 * check/gst/gstbin.c:
5599 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
5600 into a bin creates ghost pads, and that the refcounts are right.
5601 Partly moved from gstbin.c.
5603 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
5605 * check/gst-libs/.cvsignore:
5606 * check/gst/.cvsignore:
5607 * check/pipelines/.cvsignore:
5608 ignore more
5609 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
5610 (START_TEST), (cleanup_suite), (main):
5611 add some tests related to cleanup after running pipelines
5613 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
5615 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
5616 add a testsuite for GstBuffer
5618 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
5620 * gst/gstminiobject.h:
5621 add defines for accessing the refcount
5623 2005-06-03 Stefan Kost <ensonic@users.sf.net>
5625 * Makefile.am: added support for html unit test coverage reports
5627 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
5629 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
5630 Free existing caps if the capsfilter changes. Add a FIXME about
5631 setting those caps on the pads.
5633 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
5634 Before adding a ghost pad to a parent bin, check that there isn't
5635 already one for the element on the bin. Prevents infinite recursion
5636 when using decodebin in parse pipelines. Andy says he'll rewrite the
5637 way this works anyway, so ignore the hack.
5639 2005-06-02 Andy Wingo <wingo@pobox.com>
5641 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
5642 file size, pass it on to the type find helper.
5644 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
5645 segment_start and segment_end properly according to the seek
5646 method. Segment_end is still a bit flaky because offset can be
5647 negative for CUR and END cases, but it takes -1 as an "unset"
5648 value.
5650 2005-06-02 Wim Taymans <wim@fluendo.com>
5652 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
5653 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
5654 (gst_basesink_activate):
5655 * gst/base/gstbasesink.h:
5656 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
5657 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
5658 (gst_pad_query), (gst_pad_start_task):
5659 * gst/gstpad.h:
5660 * gst/gstqueue.c: (gst_queue_bufferalloc),
5661 (gst_queue_handle_sink_event), (gst_queue_chain):
5662 Bufferalloc: return GstFlowReturn to more accuratly report
5663 why allocation failed.
5665 2005-06-02 Wim Taymans <wim@fluendo.com>
5667 * gst/gstpipeline.c: (gst_pipeline_send_event):
5668 Take snapshot of state without blocking.
5670 2005-06-02 Wim Taymans <wim@fluendo.com>
5672 * docs/design/part-TODO.txt:
5673 * docs/design/part-caps.txt:
5674 * docs/design/part-clocks.txt:
5675 * docs/design/part-negotiation.txt:
5676 * docs/design/part-preroll.txt:
5677 Small doc updates
5679 2005-05-30 Wim Taymans <wim@fluendo.com>
5681 * gst/elements/gstidentity.c: (gst_identity_event),
5682 (gst_identity_transform), (gst_identity_get_property):
5683 Protect last_message property as it is accessed from
5684 multiple threads.
5686 2005-05-30 Wim Taymans <wim@fluendo.com>
5688 * gst/gstelement.c: (gst_element_init),
5689 (gst_element_pads_activate), (gst_element_change_state):
5690 Slicker pad activation code.
5692 2005-05-30 Wim Taymans <wim@fluendo.com>
5694 * gst/Makefile.am:
5695 * gst/gstelement.h:
5696 * gst/gstelementfactory.h:
5697 * gst/gsttypes.h:
5698 Move elementfactory methods to separate .h file.
5700 2005-05-30 Wim Taymans <wim@fluendo.com>
5702 * docs/design/part-overview.txt:
5703 * gst/gstsystemclock.h:
5704 Small typo fixes, doc updates.
5706 2005-05-30 Wim Taymans <wim@fluendo.com>
5708 * gst/gst.c: (gst_init_get_popt_table), (init_post),
5709 (init_popt_callback):
5710 Remove cpu-opt flag.
5712 2005-05-30 Wim Taymans <wim@fluendo.com>
5714 * gst/gstbuffer.c: (gst_subbuffer_finalize),
5715 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
5716 * gst/gstbuffer.h:
5717 Avoid typechecking in places where not needed.
5718 Added accessor for malloc_data.
5720 2005-05-30 Wim Taymans <wim@fluendo.com>
5722 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
5723 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
5724 (gst_pad_configure_sink), (gst_pad_configure_src),
5725 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
5726 (gst_pad_start_task):
5727 Propagate errors from _set_caps() in configure_src/sink
5728 functions instead of returning TRUE.
5729 FLUSH events can travel up and downstream
5732 2005-05-30 Wim Taymans <wim@fluendo.com>
5734 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
5735 (gst_basesink_activate):
5736 Handle EOS in preroll.
5738 2005-05-30 Wim Taymans <wim@fluendo.com>
5740 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
5741 (gst_queue_loop), (gst_queue_handle_src_event):
5742 Remove old pieces of code
5743 Flushing the queue in an upstream event is a very bad idea.
5745 2005-05-26 Andy Wingo <wingo@pobox.com>
5747 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
5748 gst_value_set_mini_object so as to add a ref on the object (which
5749 will be removed when the value is unset).
5751 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
5752 arg type in ::handoff.
5754 * gst/gstelement.c (gst_element_change_state): Also deactivate
5755 pads in READY->NULL, just in case the element didn't make it to
5756 PAUSED. Wingo tested, Wim approved.
5758 2005-05-26 Wim Taymans <wim@fluendo.com>
5760 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
5761 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
5762 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
5763 A flushing pad cannot be used to alloc_buffer from.
5765 2005-05-26 Wim Taymans <wim@fluendo.com>
5767 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
5768 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
5769 (gst_bus_source_dispatch), (gst_bus_source_finalize),
5770 (gst_bus_create_watch), (gst_bus_add_watch_full):
5771 * gst/gstbus.h:
5772 Implement a real GSource and use g_main_context_wakeup() to
5773 signal new messages instead of the socketpair.
5775 2005-05-25 Wim Taymans <wim@fluendo.com>
5777 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
5778 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
5779 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
5780 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
5781 (gst_pad_send_event), (gst_pad_start_task):
5782 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
5783 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
5784 (gst_queue_sink_activate), (gst_queue_src_activate),
5785 (gst_queue_change_state):
5786 * gst/gstqueue.h:
5787 Fix state changes for non sinks. We now change sinks, then elements
5788 with unconnected srcpads, then the rest.
5789 More efficient queue unlocking in flush and state changes.
5790 Set the pad activate mode even if it does not have an activate
5791 function.
5793 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
5795 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
5796 Don't go in pull mode for non-seekable sources.
5797 * gst/elements/gsttypefindelement.h:
5798 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5799 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
5800 (free_entry), (stop_typefinding),
5801 (gst_type_find_element_handle_event), (find_peek),
5802 (gst_type_find_element_chain), (do_pull_typefind),
5803 (gst_type_find_element_change_state):
5804 Allow typefinding (w/o seeking) in push-mode, simplified version
5805 of what was in 0.8.
5806 * gst/gstutils.c: (gst_buffer_join):
5807 * gst/gstutils.h:
5808 gst_buffer_join() from 0.8.
5810 2005-05-25 Wim Taymans <wim@fluendo.com>
5812 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
5813 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
5814 (gst_pad_send_event), (gst_pad_start_task):
5815 Disable attempt at mode switching until it is figured out.
5817 2005-05-25 Wim Taymans <wim@fluendo.com>
5819 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
5820 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
5821 (gst_basesink_finish_preroll), (gst_basesink_chain),
5822 (gst_basesink_loop), (gst_basesink_activate),
5823 (gst_basesink_change_state):
5824 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
5825 (gst_basesrc_get_range), (gst_basesrc_loop),
5826 (gst_basesrc_activate):
5827 * gst/elements/gsttee.c: (gst_tee_sink_activate):
5828 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5829 (gst_real_pad_init), (gst_real_pad_set_property),
5830 (gst_real_pad_get_property), (gst_pad_set_active),
5831 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
5832 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
5833 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
5834 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
5835 (gst_pad_event_default_dispatch), (gst_pad_event_default),
5836 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
5837 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
5838 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
5839 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
5840 (gst_pad_stop_task):
5841 * gst/gstpad.h:
5842 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
5843 (gst_queue_loop), (gst_queue_src_activate):
5844 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
5845 (gst_task_get_state):
5846 * gst/gsttask.h:
5847 * gst/schedulers/threadscheduler.c:
5848 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
5849 Implement gst_pad_pause/start/stop_task(), take STREAM lock
5850 in task function.
5851 Remove ACTIVE pad flag, use FLUSHING everywhere
5852 Added _pad_chain(), _pad_get_range() to call chain/getrange
5853 functions.
5854 Add locks around IS_FLUSHING when reading.
5855 Take STREAM lock in chain(), get_range() functions so plugins
5856 don't need to take it anymore.
5860 2005-05-25 Wim Taymans <wim@fluendo.com>
5862 * tools/gst-launch.c: (event_loop):
5863 Unref message after using its contents instead of
5864 before.
5866 2005-05-24 Wim Taymans <wim@fluendo.com>
5868 * docs/design/draft-ghostpads.txt:
5869 * docs/design/draft-push-pull.txt:
5870 * docs/design/draft-query.txt:
5871 * docs/design/part-overview.txt:
5872 Docs updates, added general overview doc.
5874 2005-05-21 David Schleef <ds@schleef.org>
5876 * docs/gst/tmpl/old/GstBin.sgml:
5877 * docs/gst/tmpl/old/GstBuffer.sgml:
5878 * docs/gst/tmpl/old/GstCaps.sgml:
5879 * docs/gst/tmpl/old/GstClock.sgml:
5880 * docs/gst/tmpl/old/GstCompat.sgml:
5881 * docs/gst/tmpl/old/GstData.sgml:
5882 * docs/gst/tmpl/old/GstElement.sgml:
5883 * docs/gst/tmpl/old/GstEvent.sgml:
5884 * docs/gst/tmpl/old/GstIndex.sgml:
5885 * docs/gst/tmpl/old/GstStructure.sgml:
5886 * docs/gst/tmpl/old/GstTag.sgml:
5887 * docs/gst/tmpl/old/cothreads.sgml:
5888 * docs/gst/tmpl/old/cothreads_compat.sgml:
5889 * docs/gst/tmpl/old/gettext.sgml:
5890 * docs/gst/tmpl/old/gobject2gtk.sgml:
5891 * docs/gst/tmpl/old/grammar.tab.sgml:
5892 * docs/gst/tmpl/old/gst-i18n-app.sgml:
5893 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
5894 * docs/gst/tmpl/old/gst_private.sgml:
5895 * docs/gst/tmpl/old/gstaggregator.sgml:
5896 * docs/gst/tmpl/old/gstarch.sgml:
5897 * docs/gst/tmpl/old/gstatomic_impl.sgml:
5898 * docs/gst/tmpl/old/gstbufferstore.sgml:
5899 * docs/gst/tmpl/old/gstdata_private.sgml:
5900 * docs/gst/tmpl/old/gstdisksink.sgml:
5901 * docs/gst/tmpl/old/gstdisksrc.sgml:
5902 * docs/gst/tmpl/old/gstelementfactory.sgml:
5903 * docs/gst/tmpl/old/gstextratypes.sgml:
5904 * docs/gst/tmpl/old/gstfakesink.sgml:
5905 * docs/gst/tmpl/old/gstfakesrc.sgml:
5906 * docs/gst/tmpl/old/gstfdsink.sgml:
5907 * docs/gst/tmpl/old/gstfdsrc.sgml:
5908 * docs/gst/tmpl/old/gstfilesink.sgml:
5909 * docs/gst/tmpl/old/gstfilesrc.sgml:
5910 * docs/gst/tmpl/old/gsthttpsrc.sgml:
5911 * docs/gst/tmpl/old/gstidentity.sgml:
5912 * docs/gst/tmpl/old/gstindexfactory.sgml:
5913 * docs/gst/tmpl/old/gstmarshal.sgml:
5914 * docs/gst/tmpl/old/gstmd5sink.sgml:
5915 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
5916 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
5917 * docs/gst/tmpl/old/gstpadtemplate.sgml:
5918 * docs/gst/tmpl/old/gstpipefilter.sgml:
5919 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
5920 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
5921 * docs/gst/tmpl/old/gstshaper.sgml:
5922 * docs/gst/tmpl/old/gstspider.sgml:
5923 * docs/gst/tmpl/old/gstspideridentity.sgml:
5924 * docs/gst/tmpl/old/gststatistics.sgml:
5925 * docs/gst/tmpl/old/gsttee.sgml:
5926 * docs/gst/tmpl/old/gsttimecache.sgml:
5927 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
5928 * docs/gst/tmpl/old/gstxmlregistry.sgml:
5929 * docs/gst/tmpl/old/gthread-cothreads.sgml:
5930 * docs/gst/tmpl/old/types.sgml:
5931 I didn't intend to add these or check them in.
5933 2005-05-19 David Schleef <ds@schleef.org>
5935 * configure.ac: Use -no-common everywhere. In a sane world, it
5936 would be the default in libtool, because without it, you can't
5937 build DLLs on Windows.
5938 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
5939 * docs/gst/gstreamer-sections.txt:
5940 * docs/gst/tmpl/gstcpu.sgml:
5941 * docs/gst/tmpl/gstdata.sgml:
5942 * docs/gst/tmpl/gstthread.sgml:
5944 2005-05-19 David Schleef <ds@schleef.org>
5946 * gst/gstminiobject.c: (gst_value_set_mini_object),
5947 (gst_value_take_mini_object), (gst_value_get_mini_object):
5948 * gst/gstminiobject.h: Add GValue set/get functions.
5950 2005-05-19 Wim Taymans <wim@fluendo.com>
5952 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
5953 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
5954 (gst_subbuffer_init), (gst_buffer_is_span_fast):
5955 * gst/gstbuffer.h:
5956 * gst/gstbus.c: (gst_bus_post):
5957 * gst/gstelement.c: (gst_element_get_random_pad):
5958 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
5959 Make subbufer unref the parent in finalize.
5960 some more debugging info.
5963 2005-05-19 Wim Taymans <wim@fluendo.com>
5965 * gst/base/gstbasesink.c: (gst_basesink_class_init),
5966 (gst_basesink_init), (gst_basesink_finalize),
5967 (gst_basesink_activate), (gst_basesink_change_state):
5968 Don't free preroll queue too early.
5970 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
5972 * gst/Makefile.am:
5973 * gst/ROADMAP:
5974 Hi, I'm outdated. Please shoot me.
5976 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
5978 * gst/gstpipeline.c: (gst_pipeline_send_event):
5979 Do not access variables after they have been deleted.
5981 2005-05-19 Wim Taymans <wim@fluendo.com>
5983 * tools/gst-inspect.c: (print_plugin_features):
5984 A plugin feature does unfortunatly not use the
5985 object name yet...
5987 2005-05-18 Wim Taymans <wim@fluendo.com>
5989 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
5990 Port _span() functions to new subbuffers.
5992 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
5994 * gst/gstbin.c: (gst_bin_add_func):
5995 Fix clock settery in bins when adding kids after the clock has
5996 been selected.
5998 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6000 * gst/elements/gstidentity.c: (gst_identity_class_init):
6001 Workaround until signals support GstMiniObject.
6003 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
6005 * gst/gstbuffer.c:
6006 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
6008 2005-05-18 Wim Taymans <wim@fluendo.com>
6010 * gst/base/Makefile.am:
6011 * gst/base/gstadapter.c: (gst_adapter_base_init),
6012 (gst_adapter_class_init), (gst_adapter_init),
6013 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
6014 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
6015 (gst_adapter_flush), (gst_adapter_available),
6016 (gst_adapter_available_fast):
6017 * gst/base/gstadapter.h:
6018 Ported and added adapter to the base classes.
6020 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
6022 * gst/gst.c:
6023 * gst/gstmessage.c:
6024 Make sure the class is reffed/unreffed once before threads can be
6025 used. Fixes #304551.
6027 2005-05-17 Wim Taymans <wim@fluendo.com>
6029 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
6030 (gst_basesink_chain_unlocked), (gst_basesink_activate):
6031 * gst/gstminiobject.c: (gst_mini_object_get_type),
6032 (gst_mini_object_free):
6033 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
6034 (gst_pad_push), (gst_pad_push_event):
6035 * gst/gstqueue.c: (gst_queue_change_state):
6036 Don't queue buffers in basesink when we are flushing.
6037 Unref buffer when flushing in basesink.
6038 Flush queue when going to READY
6039 Unref buffer when _push() returns an error.
6040 Don't free MiniObject instance when refcount is incremented
6041 in _finalize() so that we can recover objects.
6043 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
6045 * docs/manual/advanced-schedulers.xml:
6046 * docs/manual/appendix-checklist.xml:
6047 * docs/pwg/advanced-clock.xml:
6048 * docs/pwg/advanced-interfaces.xml:
6049 * docs/pwg/advanced-request.xml:
6050 * docs/pwg/advanced-types.xml:
6051 * docs/pwg/intro-preface.xml:
6052 * examples/plugins/example.c: (gst_example_get_type),
6053 (gst_example_class_init), (gst_example_chain),
6054 (gst_example_set_property), (gst_example_get_property),
6055 (gst_example_change_state), (plugin_init):
6056 * examples/plugins/example.h:
6057 small doc fixes
6059 2005-05-17 Wim Taymans <wim@fluendo.com>
6061 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
6062 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
6063 * gst/gstqueue.c: (gst_queue_change_state):
6064 Clear queue when going to READY.
6065 Remove IN_SETCAPS flag too.
6067 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
6069 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
6070 Remove implicit cast from gboolean to GstElementStateReturn;
6071 make sure we still return failure in paused => ready case if
6072 the parent class fails to change state and our own stop
6073 vfunc succeeds.
6075 2005-05-17 Wim Taymans <wim@fluendo.com>
6077 * tools/gst-launch.c: (event_loop):
6078 Message was unreffed too soon.
6080 2005-05-16 Andy Wingo <wingo@pobox.com>
6082 * gst/gstbin.c (sink_iterator_filter): Err... um...
6084 * check/gst/gstbin.c (test_ghost_pads): New test for the
6085 ghosting-if-elements-not-in-same-bin behavior.
6087 2005-05-16 David Schleef <ds@schleef.org>
6089 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
6090 accessing refcount directly.
6092 2005-05-15 David Schleef <ds@schleef.org>
6094 * check/Makefile.am: remove GstData checks
6095 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
6096 * gst/Makefile.am: add miniobject, remove data
6097 * gst/gst.h: add miniobject, remove data
6098 * gst/gstdata.c: remove
6099 * gst/gstdata.h: remove
6100 * gst/gstdata_private.h: remove
6101 * gst/gsttypes.h: remove GstEvent and GstMessage
6102 * gst/gstelement.c: (gst_element_post_message): fix for API changes
6103 * gst/gstmarshal.list: change BOXED -> OBJECT
6105 Implement GstMiniObject.
6106 * gst/gstminiobject.c:
6107 * gst/gstminiobject.h:
6109 Modify to be subclasses of GstMiniObject.
6110 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
6111 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
6112 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
6113 (gst_subbuffer_get_type), (gst_subbuffer_init),
6114 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
6115 (gst_buffer_span):
6116 * gst/gstbuffer.h:
6117 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
6118 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
6119 (_gst_event_copy), (gst_event_new):
6120 * gst/gstevent.h:
6121 * gst/gstmessage.c: (_gst_message_initialize),
6122 (gst_message_get_type), (gst_message_class_init),
6123 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
6124 (gst_message_new), (gst_message_new_error),
6125 (gst_message_new_warning), (gst_message_new_tag),
6126 (gst_message_new_state_changed), (gst_message_new_application):
6127 * gst/gstmessage.h:
6128 * gst/gstprobe.c: (gst_probe_perform),
6129 (gst_probe_dispatcher_dispatch):
6130 * gst/gstprobe.h:
6131 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
6132 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
6133 (_gst_query_copy), (gst_query_new):
6135 Update elements for GstData -> GstMiniObject changes
6136 * gst/gstquery.h:
6137 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
6138 (gst_queue_chain), (gst_queue_loop):
6139 * gst/elements/gstbufferstore.c:
6140 (gst_buffer_store_add_buffer_func),
6141 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
6142 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
6143 (gst_fakesink_render):
6144 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6145 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
6146 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
6147 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
6148 (gst_filesrc_create_read):
6149 * gst/elements/gstidentity.c: (gst_identity_class_init):
6150 * gst/elements/gsttypefindelement.c:
6151 (gst_type_find_element_src_event), (free_entry_buffers),
6152 (gst_type_find_element_handle_event):
6153 * libs/gst/dataprotocol/dataprotocol.c:
6154 (gst_dp_header_from_buffer):
6155 * libs/gst/dataprotocol/dataprotocol.h:
6156 * libs/gst/dataprotocol/dp-private.h:
6158 2005-05-15 David Schleef <ds@schleef.org>
6160 * gst/elements/gstelements.c: Don't include headers that were
6161 just removed.
6163 2005-05-15 David Schleef <ds@schleef.org>
6165 * gst/elements/Makefile.am: Remove some elements that don't
6166 need to be in the core (or even exist at all).
6167 * gst/elements/gstaggregator.c:
6168 * gst/elements/gstaggregator.h:
6169 * gst/elements/gstmd5sink.c:
6170 * gst/elements/gstmd5sink.h:
6171 * gst/elements/gstmultifilesrc.c:
6172 * gst/elements/gstmultifilesrc.h:
6173 * gst/elements/gstpipefilter.c:
6174 * gst/elements/gstpipefilter.h:
6175 * gst/elements/gstshaper.c:
6176 * gst/elements/gstshaper.h:
6177 * gst/elements/gststatistics.c:
6178 * gst/elements/gststatistics.h:
6179 * po/POTFILES.in: Remove above files.
6181 2005-05-14 Andy Wingo <wingo@pobox.com>
6183 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
6184 so as to get the refs right.
6185 (sink_iterator_filter): New function, wraps bin_element_is_sink,
6186 unreffing objects that don't pass the filter.
6188 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
6189 gst_element_set_bus.
6190 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
6191 normal cases, this will destroy the bus.
6193 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
6194 object.
6196 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
6197 has no sinks.
6199 2005-05-13 Andy Wingo <wingo@pobox.com>
6201 * gst/gstutils.c (gst_element_link_pads): Instead of calling
6202 gst_pad_link, call pad_link_maybe_ghosting,
6203 (pad_link_maybe_ghosting): Links pads, making sure that the
6204 elements being linked are in the same bin.
6205 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
6206 Helpers for pad_link_maybe_ghosting.
6208 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
6210 * configure.ac:
6211 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
6213 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
6215 * docs/design/part-element-source.txt:
6216 Mention GstPushSrc
6218 2005-05-12 Wim Taymans <wim@fluendo.com>
6220 * gst/base/gstbasesink.c: (gst_basesink_init),
6221 (gst_basesink_activate):
6222 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
6223 (gst_basesrc_is_seekable):
6224 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6225 (bin_element_is_sink), (gst_bin_change_state):
6226 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
6227 * gst/gstelement.h:
6228 Identify sinks by their flag to avoid overly complicated
6229 checks (fow now).
6230 Do state changes even for elements not reachable from the
6231 sinks.
6232 BaseSink is a sink now :)
6233 Some more debugging info in the basesrc.
6236 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6238 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
6239 Implement _query on a bin, similar to _send_event.
6241 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
6243 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
6244 Discont event offset format should be GST_FORMAT_BYTES,
6245 not GST_FORMAT_TIME.
6247 2005-05-12 Wim Taymans <wim@fluendo.com>
6249 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
6250 Same fix as Ronald's but without the signal.
6252 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6254 * gst/gstutils.c: (gst_element_query_position):
6255 No, an element is not a pad.
6257 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6259 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
6260 (gst_bin_get_state):
6261 If a child is removed from a bin while we remove the child from
6262 the bin and while we're retrieving its state, signal this to the
6263 get_state function so we abort the wait (instead of waiting for
6264 a timeout) and can immediately re-iterate over all other elements.
6266 2005-05-12 Wim Taymans <wim@fluendo.com>
6268 * gst/base/Makefile.am:
6269 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
6270 (gst_basesrc_start):
6271 * gst/base/gstbasesrc.h:
6272 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
6273 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
6274 (gst_pushsrc_init), (gst_pushsrc_create):
6275 * gst/base/gstpushsrc.h:
6276 Added is_seekable to BaseSrc
6277 Added simple PushSrc.
6279 2005-05-11 Wim Taymans <wim@fluendo.com>
6281 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
6282 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
6283 (gst_element_link_pads), (gst_element_query_position),
6284 (gst_element_query_convert), (intersect_caps_func),
6285 (gst_pad_query_position), (gst_pad_query_convert):
6286 Fix refcounting in utils function.
6287 No point in trying to activate a pad when it's added, it could
6288 be added from the state change function and then we deadlock, the
6289 element has to decide what to do.
6291 2005-05-10 Andy Wingo <wingo@pobox.com>
6293 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
6294 *all* the arguments.
6296 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
6297 stream lock if it's a FLUSH_DONE; normal flushes don't get the
6298 lock (according to the docs -- if this is wrong change the docs).
6300 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
6301 flush messages in the NULL state.
6303 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
6304 message immediately and return.
6305 (gst_bus_set_flushing): New function. If a bus is flushing, it
6306 flushes out any queued messages and immediately unrefs new
6307 messages. This is so when an element goes to NULL, all of the
6308 unhandled messages coming from it can be freed, and their
6309 references to the element dropped. In other words: message source
6310 ref considered harmful :P
6312 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
6313 we're finished with it.
6315 * gst/gstmessage.c (gst_message_new_state_changed):
6317 2005-05-10 Wim Taymans <wim@fluendo.com>
6319 * gst/gstvalue.c: (gst_value_compare_flags),
6320 (gst_value_serialize_flags), (gst_value_deserialize_flags),
6321 (_gst_value_initialize):
6322 Added flags serialize/deserialize/compare code.
6324 2005-05-09 Andy Wingo <wingo@pobox.com>
6326 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
6327 Intersect the peer's caps with our caps.
6329 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6331 * gst/base/gsttypefindhelper.c: (helper_find_peek):
6332 * gst/elements/gsttypefindelement.c: (find_peek):
6333 Handle negative offsets better. Fixes decodebin.
6335 2005-05-09 Wim Taymans <wim@fluendo.com>
6337 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
6338 (gst_base_transform_event):
6339 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
6340 Implement accept_caps.
6341 Fix silly lock/unlock mismatch in base class.
6343 2005-05-09 Wim Taymans <wim@fluendo.com>
6345 * docs/design/draft-push-pull.txt:
6346 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
6347 * gst/elements/gstfilesink.c: (gst_filesink_init),
6348 (gst_filesink_query):
6349 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6350 (gst_type_find_handle_src_query), (find_element_get_length):
6351 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
6352 * gst/gstelement.h:
6353 * gst/gstmessage.c:
6354 * gst/gstmessage.h:
6355 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
6356 (gst_real_pad_get_caps_unlocked),
6357 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
6358 (gst_pad_event_default_dispatch), (gst_pad_event_default),
6359 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
6360 (gst_real_pad_dispose), (gst_real_pad_finalize),
6361 (gst_pad_load_and_link), (gst_pad_save_thyself),
6362 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
6363 (gst_pad_check_pull_range), (gst_pad_pull_range),
6364 (gst_pad_template_get_type), (gst_pad_template_class_init),
6365 (gst_pad_template_init), (gst_pad_template_dispose),
6366 (name_is_valid), (gst_static_pad_template_get),
6367 (gst_pad_template_new), (gst_static_pad_template_get_caps),
6368 (gst_pad_template_get_caps), (gst_pad_set_element_private),
6369 (gst_pad_get_element_private), (gst_pad_start_task),
6370 (gst_pad_pause_task), (gst_pad_stop_task),
6371 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
6372 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
6373 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
6374 (gst_ghost_pad_new):
6375 * gst/gstpad.h:
6376 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
6377 (gst_query_new_position), (gst_query_set_position),
6378 (gst_query_parse_position), (gst_query_new_convert),
6379 (gst_query_set_convert), (gst_query_parse_convert):
6380 * gst/gstquery.h:
6381 * gst/gstqueryutils.c:
6382 * gst/gstqueryutils.h:
6383 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6384 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
6385 (gst_queue_handle_src_query):
6386 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
6387 (gst_element_query_position), (gst_element_query_convert),
6388 (intersect_caps_func), (gst_pad_query_position),
6389 (gst_pad_query_convert):
6390 * gst/gstutils.h:
6391 * tools/gst-inspect.c: (print_pad_info):
6392 * tools/gst-xmlinspect.c: (print_element_info):
6393 Remove old query functions. Ported old code.
6394 Added position/convert helper functions to gstutils.
6395 Reordered gstpad.c code, grouping relevant things.
6396 Remove gst_message_new(), always need to speficy a specific
6397 message.
6400 2005-05-09 Andy Wingo <wingo@pobox.com>
6402 * gst/gstiterator.h: Add some includes.
6404 * gst/gstqueryutils.h: Include more headers.
6406 * gst/gstpad.h:
6407 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
6408 some uses of gst_pad_query.
6410 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
6411 NULL out parameters.
6412 (gst_query_new_position): New proc, allocates a new position
6413 query.
6415 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
6416 gstqueryutils.c to the build.
6418 * gst/gststructure.c (gst_structure_set_valist): Implement with
6419 the generic G_VALUE_COLLECT.
6421 2005-05-08 Edward Hervey <bilboed@bilboed.com>
6423 * gst/Makefile.am: (gst_headers):
6424 Added gstqueryutils.h to the list of headers to install, that was
6425 a 'nachty' move wingo :)
6427 2005-05-06 Andy Wingo <wingo@pobox.com>
6429 * gst/gstquery.h
6430 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
6431 GstData, init a memchunk.
6432 (standard_definitions): Add a few query types, deprecate a few.
6433 (gst_query_get_type): New proc.
6434 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
6435 implementation.
6436 (gst_query_new_application, gst_query_get_structure): New public
6437 procs.
6439 * docs/design/draft-query.txt: Removed LINKS from the query types,
6440 because all the rest can be dispatched to other pads -- seemed
6441 ugly to have a query that couldn't be dispatched. internal_links
6442 is fine as a pad method.
6444 * gst/gstpad.h: Add query2 as a pad method, add the new functions
6445 in gstpad.c, but maintain binary compatibility for the moment.
6446 Will fix before 0.9 is out.
6448 * gst/gstqueryutils.c:
6449 * gst/gstqueryutils.h: New files, implement 3 methods for each
6450 query type: parse_query, parse_response, and set. Probably need an
6451 allocator as well.
6453 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
6455 * gst/elements/gstfilesink.c (gst_filesink_query2):
6456 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
6457 query_types, and formats methods.
6459 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
6460 (gst_pad_set_query2_function): New functions.
6461 (gst_real_pad_init): Set query2_default as the default query2
6462 function. Basically just dispatches to internally linked pads.
6464 Needs review!
6466 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
6467 without using the atomic operations. Only one thread can possibly
6468 be accessing the data at this point. Changed so as to avoid
6469 gst_atomic operations.
6471 2005-05-06 Wim Taymans <wim@fluendo.com>
6473 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
6474 Also set caps if we use the fallback buffer alloc.
6476 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
6478 * docs/gst/Makefile.am:
6479 * docs/gst/gstreamer-docs.sgml:
6480 * docs/gst/gstreamer-sections.txt:
6481 * docs/gst/tmpl/gstatomic.sgml:
6482 * docs/gst/tmpl/gstmemchunk.sgml:
6483 * testsuite/elements/struct_i386.h:
6484 * win32/GStreamer.vcproj:
6485 * win32/Makefile:
6486 Purge GstAtomic stuff from docs and win32 makefiles as well
6488 2005-05-06 Wim Taymans <wim@fluendo.com>
6490 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
6491 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
6492 * gst/gstpad.c: (gst_pad_peer_get_caps):
6493 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6494 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
6495 (gst_queue_src_activate), (gst_queue_change_state):
6496 * gst/gstqueue.h:
6497 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
6498 (intersect_caps_func):
6499 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
6500 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
6501 Some fixes for the peer_get_caps() change.
6503 2005-05-06 Wim Taymans <wim@fluendo.com>
6505 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
6506 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
6507 (gst_basesink_activate):
6508 Actually do something with error codes returned from the push
6509 functions.
6511 2005-05-06 Wim Taymans <wim@fluendo.com>
6513 * docs/design/part-element-sink.txt:
6514 * docs/design/part-element-source.txt:
6515 * gst/base/gstbasesink.c: (gst_basesink_class_init),
6516 (gst_basesink_event), (gst_basesink_activate):
6517 * gst/base/gstbasesink.h:
6518 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
6519 (gst_basesrc_activate):
6520 * gst/base/gstbasesrc.h:
6521 * gst/gstelement.c: (gst_element_pads_activate):
6522 Some more documentation.
6523 Fixed scheduling decision in _pads_activate().
6525 2005-05-05 Andy Wingo <wingo@pobox.com>
6527 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
6528 the test suite.
6530 2005-05-05 Wim Taymans <wim@fluendo.com>
6532 * gst/base/Makefile.am:
6533 * gst/base/gstbasesink.h:
6534 * gst/base/gstbasesrc.c: (gst_basesrc_init),
6535 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
6536 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
6537 (gst_collectpads_class_init), (gst_collectpads_init),
6538 (gst_collectpads_finalize), (gst_collectpads_new),
6539 (gst_collectpads_set_function), (gst_collectpads_add_pad),
6540 (find_pad), (gst_collectpads_remove_pad),
6541 (gst_collectpads_is_active), (gst_collectpads_collect),
6542 (gst_collectpads_collect_range), (gst_collectpads_start),
6543 (gst_collectpads_stop), (gst_collectpads_peek),
6544 (gst_collectpads_pop), (gst_collectpads_available),
6545 (gst_collectpads_read), (gst_collectpads_flush),
6546 (gst_collectpads_chain):
6547 * gst/base/gstcollectpads.h:
6548 * gst/elements/Makefile.am:
6549 * gst/elements/gstelements.c:
6550 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
6551 (gst_fakesink_get_times), (gst_fakesink_event),
6552 (gst_fakesink_preroll), (gst_fakesink_render):
6553 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
6554 (gst_filesink_init), (gst_filesink_set_location),
6555 (gst_filesink_open_file), (gst_filesink_close_file),
6556 (gst_filesink_pad_query), (gst_filesink_event),
6557 (gst_filesink_render), (gst_filesink_change_state):
6558 * gst/elements/gstfilesink.h:
6559 Added object to help in making collect pad based elements.
6560 Ported filesink.
6561 Make event function in sink baseclass return gboolean.
6563 2005-05-05 Wim Taymans <wim@fluendo.com>
6565 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
6566 (gst_bin_get_by_name):
6567 * gst/gstbuffer.h:
6568 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
6569 (gst_clock_finalize):
6570 * gst/gstdata.c: (gst_data_replace):
6571 * gst/gstdata.h:
6572 * gst/gstelement.c: (gst_element_request_pad),
6573 (gst_element_pads_activate):
6574 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
6575 (gst_object_unref):
6576 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
6577 (gst_pad_set_checkgetrange_function),
6578 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
6579 (gst_pad_check_pull_range), (gst_pad_pull_range),
6580 (gst_static_pad_template_get_caps), (gst_pad_start_task),
6581 (gst_pad_pause_task), (gst_pad_stop_task):
6582 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
6583 (gst_element_request_pad), (gst_pad_proxy_getcaps):
6584 Fix name lookup in GstBin.
6585 Added _data_replace() function and _buffer_replace()
6586 Use finalize method to clean up clock.
6587 Fix refcounting on request pads.
6588 Fix pad schedule mode error.
6589 Some more object refcounting debug info,
6592 2005-05-04 Andy Wingo <wingo@pobox.com>
6594 * check/Makefile.am:
6595 * docs/gst/tmpl/gstatomic.sgml:
6596 * docs/gst/tmpl/gstplugin.sgml:
6597 * gst/base/gstbasesink.c: (gst_basesink_activate):
6598 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
6599 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
6600 (gst_basesrc_query), (gst_basesrc_set_property),
6601 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
6602 (gst_basesrc_activate):
6603 * gst/base/gstbasesrc.h:
6604 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
6605 (gst_base_transform_src_activate):
6606 * gst/elements/gstelements.c:
6607 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6608 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
6609 * gst/elements/gsttee.c: (gst_tee_sink_activate):
6610 * gst/elements/gsttypefindelement.c: (find_element_get_length),
6611 (gst_type_find_element_checkgetrange),
6612 (gst_type_find_element_activate):
6613 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
6614 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
6615 (gst_caps_load_thyself):
6616 * gst/gstelement.c: (gst_element_pads_activate),
6617 (gst_element_save_thyself), (gst_element_restore_thyself):
6618 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
6619 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
6620 * gst/gstpad.h:
6621 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
6622 (gst_xml_parse_file), (gst_xml_parse_memory),
6623 (gst_xml_get_element), (gst_xml_make_element):
6624 * gst/indexers/gstfileindex.c: (gst_file_index_load),
6625 (_file_index_id_save_xml), (gst_file_index_commit):
6626 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
6627 (read_enum), (load_pad_template), (load_feature), (load_plugin),
6628 (load_paths):
6629 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
6630 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
6631 * tools/gst-complete.c: (main):
6632 * tools/gst-compprep.c: (main):
6633 * tools/gst-inspect.c: (print_element_properties_info):
6634 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
6635 * tools/gst-xmlinspect.c: (print_element_properties):
6636 GCC 4 fixen.
6638 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
6640 * gst/gstplugin.c: (gst_plugin_check_module),
6641 (gst_plugin_check_file), (gst_plugin_load_file):
6642 apply patch from #172526 to make register work on MacOSX
6644 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
6646 * docs/gst/tmpl/gstconfig.sgml:
6647 * gst/gstconfig.h.in:
6648 move documentation for some symbols. Add doc for GST_PTR_FORMAT
6649 * testsuite/debug/printf_extension.c: (main):
6650 Do not use GST_PTR_FORMAT on pointers to types with
6651 sizeof < sizeof(gpointer). Fixes test on 64-bit
6652 * testsuite/elements/property.h:
6653 use correct printf format
6655 2005-05-02 Wim Taymans <wim@fluendo.com>
6657 * docs/design/draft-push-pull.txt:
6658 * docs/design/draft-query.txt:
6659 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
6660 (gst_basesrc_start):
6661 Added draft for new query API.
6662 Added draft for better selecting scheduling methods.
6663 Make basesrc ignore length if the subclass does not support
6664 it.
6666 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
6668 * gst/Makefile.am:
6669 possible fixes for automake-1.5 - _LIBADD is reserved
6671 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
6673 * docs/faq/Makefile.am:
6674 * docs/manual/Makefile.am:
6675 * docs/manuals.mak:
6676 * docs/pwg/Makefile.am:
6677 * gst/Makefile.am:
6678 possible fixes for automake-1.5
6680 2005-04-28 Wim Taymans <wim@fluendo.com>
6682 * gst/base/gstbasesink.c: (gst_basesink_base_init),
6683 (gst_basesink_pad_getcaps), (gst_basesink_init),
6684 (gst_basesink_do_sync):
6685 * gst/gstclock.c: (gst_clock_entry_new):
6686 * gst/gstevent.c: (gst_event_discont_get_value):
6687 * gst/gstpipeline.c: (pipeline_bus_handler),
6688 (gst_pipeline_change_state):
6689 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
6690 Better debugging of clocking info.
6691 Allow NULL values when getting discont values.
6693 2005-04-27 Wim Taymans <wim@fluendo.com>
6695 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
6696 * check/gst/gstpad.c: (gst_pad_suite):
6697 Increase timeout for checks.
6699 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
6701 * check/Makefile.am:
6702 fix the broken rule for cleanup. Apparently this rule is
6703 only needed on FC2, so maybe this warrants further autotool
6704 inspection.
6706 2005-04-26 Wim Taymans <wim@fluendo.com>
6708 * gst/gsttrashstack.h:
6709 Ooohh. a nasty one! After having a failed pop() from the stack,
6710 it's possible that the stack is empty. In that case, don't
6711 follow the NULL pointer.
6713 2005-04-25 Wim Taymans <wim@fluendo.com>
6715 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
6716 (gst_pad_set_checkgetrange_function),
6717 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
6718 (gst_pad_check_pull_range), (gst_pad_pull_range),
6719 (gst_static_pad_template_get_caps), (gst_pad_start_task),
6720 (gst_pad_pause_task), (gst_pad_stop_task):
6721 * gst/gstplugin.c: (gst_plugin_load):
6722 * gst/gstplugin.h:
6723 Remove gst_library_load as it does more harm than good with
6724 the new g_module flags.
6725 Revert bogus caps template check in pad linking, pad caps
6726 are important when linking not the template, which is more
6727 general than the current caps.
6729 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6731 * gst/autoplug/.cvsignore:
6732 * gst/autoplug/Makefile.am:
6733 * gst/autoplug/gstsearchfuncs.c:
6734 * gst/autoplug/gstsearchfuncs.h:
6735 * gst/autoplug/gstspider.c:
6736 * gst/autoplug/gstspider.h:
6737 * gst/autoplug/gstspideridentity.c:
6738 * gst/autoplug/gstspideridentity.h:
6739 * gst/autoplug/spidertest.c:
6740 Die, spider, die.
6742 2005-04-25 Wim Taymans <wim@fluendo.com>
6744 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
6745 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
6746 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
6747 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
6748 * gst/gstpad.h:
6749 Added stubs for unimplemented functions.
6751 2005-04-24 David Schleef <ds@schleef.org>
6753 * gst/gstpad.h: Disable some unimplemented functions. Wim,
6754 please fix.
6756 2005-04-24 David Schleef <ds@schleef.org>
6758 Convert everything from GstAtomicInt to g_atomic_int_*, and
6759 remove gstatomic.
6760 * gst/Makefile.am:
6761 * gst/gstatomic.c:
6762 * gst/gstatomic.h:
6763 * gst/gstatomic_impl.h:
6764 * gst/gstbuffer.c:
6765 * gst/gstcaps.c:
6766 * gst/gstcaps.h:
6767 * gst/gstclock.c:
6768 * gst/gstclock.h:
6769 * gst/gstdata.c:
6770 * gst/gstdata.h:
6771 * gst/gstdata_private.h:
6772 * gst/gstevent.c:
6773 * gst/gstinfo.c:
6774 * gst/gstinfo.h:
6775 * gst/gstmessage.c:
6776 * gst/gstobject.c:
6777 * gst/gstobject.h:
6778 * gst/gststructure.c:
6779 * gst/gststructure.h:
6780 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
6781 * gst/gstutils.h:
6783 2005-04-24 David Schleef <ds@schleef.org>
6785 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
6786 make the regressions tests work. Remove some code that is no
6787 longer true.
6788 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
6789 Disable warning for pads without templates.
6791 2005-04-24 David Schleef <ds@schleef.org>
6793 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
6794 functions that handle filtered links.
6795 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
6796 removed functions.
6797 * gst/gstutils.c: Fix/remove utility functions that handle
6798 filtered caps.
6799 * gst/gstutils.h:
6800 * gst/gstvalue.c: Add serialization/deserialization of caps
6801 * gst/parse/grammar.y: Ignore filtered caps when linking. This
6802 requires fixing so that the filter caps notation creates
6803 a capsfilter element and sets the filter_caps property. I
6804 think everyone probably wants to keep the shorthand notation.
6805 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
6806 * docs/gst/tmpl/gstpad.sgml:
6808 * gst/elements/gstelements.c: Register capsfilter element.
6809 * gst/Makefile.am: fix spacing
6810 * docs/random/ds/0.9-suggested-changes: random
6812 2005-04-23 David Schleef <ds@schleef.org>
6814 * gst/elements/Makefile.am:
6815 * gst/elements/gstcapsfilter.c: New element that acts like an
6816 identity, but filters caps. Will eventually replace filtered
6817 caps in pad linking.
6818 * gst/gstutils.c: (gst_element_create_all_pads): New function
6819 to create all the ALWAYS pads that are registered with an
6820 element class. This functionality should eventually be
6821 merged in with GstElement initialization.
6822 * gst/gstutils.h:
6823 * testsuite/trigger/README: part of trigger test code that should
6824 have been checked in a long time ago.
6826 2005-04-23 David Schleef <ds@schleef.org>
6828 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
6829 needed with new versions of libtool (nobody will confirm this),
6830 and hard to carry around.
6831 * gst/autoplug/Makefile.am:
6832 * gst/base/Makefile.am:
6833 * gst/elements/Makefile.am:
6834 * gst/indexers/Makefile.am:
6835 * gst/schedulers/Makefile.am:
6836 * libs/gst/bytestream/Makefile.am:
6837 * libs/gst/control/Makefile.am:
6838 * libs/gst/dataprotocol/Makefile.am:
6839 * libs/gst/getbits/Makefile.am:
6841 2005-04-21 Wim Taymans <wim@fluendo.com>
6843 * docs/design/draft-push-pull.txt:
6844 * docs/design/part-MT-refcounting.txt:
6845 * docs/design/part-TODO.txt:
6846 * docs/design/part-caps.txt:
6847 * docs/design/part-events.txt:
6848 * docs/design/part-gstbus.txt:
6849 * docs/design/part-gstpipeline.txt:
6850 * docs/design/part-messages.txt:
6851 * docs/design/part-push-pull.txt:
6852 * docs/design/part-query.txt:
6853 Some more docs.
6855 2005-04-21 Wim Taymans <wim@fluendo.com>
6857 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
6858 (gst_message_new), (gst_message_new_error),
6859 (gst_message_new_warning), (gst_message_new_tag),
6860 (gst_message_new_state_changed), (gst_message_new_application),
6861 (gst_message_get_structure):
6862 * gst/gstmessage.h:
6863 * gst/gststructure.c: (gst_structure_set_parent_refcount),
6864 (gst_structure_copy_conditional):
6865 Use parent refcount in GstMessage to ensure GstStructure
6866 consistency.
6867 Cleaned up headers a bit.
6870 2005-04-20 Wim Taymans <wim@fluendo.com>
6872 * gst/base/gstbasesink.c: (gst_basesink_base_init),
6873 (gst_basesink_pad_getcaps), (gst_basesink_init),
6874 (gst_basesink_chain_unlocked):
6875 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
6876 (gst_type_find_helper):
6877 * gst/elements/gsttypefindelement.c:
6878 (gst_type_find_element_have_type), (gst_type_find_element_init),
6879 (stop_typefinding), (gst_type_find_element_handle_event),
6880 (find_suggest), (gst_type_find_element_chain),
6881 (gst_type_find_element_checkgetrange),
6882 (gst_type_find_element_getrange), (do_typefind),
6883 (gst_type_find_element_activate):
6884 * gst/gstbuffer.c: (_gst_buffer_sub_free),
6885 (gst_buffer_default_free), (gst_buffer_default_copy),
6886 (gst_buffer_set_caps):
6887 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
6888 (gst_caps_replace):
6889 * gst/gstmessage.c: (gst_message_new),
6890 (gst_message_new_state_changed):
6891 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
6892 (gst_pad_set_checkgetrange_function),
6893 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
6894 (gst_pad_set_caps), (gst_pad_check_pull_range),
6895 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
6896 * gst/gstpad.h:
6897 * gst/gsttypefind.c: (gst_type_find_register):
6898 Make gst_caps_replace() work like other _replace() functions.
6899 Use _caps_replace() where possible.
6900 Make sure _message_new() initialises its field.
6901 Add gst_static_pad_template_get_caps()
6904 2005-04-18 Andy Wingo <wingo@pobox.com>
6906 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
6907 on the peer, not the pad. I think that was a typo. Pass an extra
6908 arg to see if random access is possible. Activate the pads as
6909 PULL_RANGE if possible.
6911 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
6913 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
6914 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
6915 to PROP_....
6917 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6919 * docs/faq/using.xml:
6920 Add note on gstreamer-properties (#154996).
6922 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6924 * docs/random/bbb/optional-properties:
6925 Some analysis on optional properties.
6927 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
6929 * docs/gst/tmpl/gstelementfactory.sgml:
6930 * gst/gstelement.h:
6931 * gst/gstelementfactory.c: (gst_element_factory_init),
6932 (gst_element_factory_cleanup), (gst_element_register),
6933 (__gst_element_factory_add_static_pad_template),
6934 (gst_element_factory_get_static_pad_templates),
6935 (gst_element_factory_can_src_caps),
6936 (gst_element_factory_can_sink_caps):
6937 * gst/registries/Makefile.am:
6938 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
6939 (gst_xml_registry_class_init), (gst_xml_registry_init),
6940 (gst_xml_registry_new), (gst_xml_registry_set_property),
6941 (gst_xml_registry_get_property), (get_time), (make_dir),
6942 (gst_xml_registry_get_perms_func),
6943 (plugin_times_older_than_recurse), (plugin_times_older_than),
6944 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
6945 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
6946 (add_to_char_array), (read_string), (read_uint), (read_enum),
6947 (load_pad_template), (load_feature), (load_plugin), (load_paths),
6948 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
6949 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
6950 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
6951 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
6952 (gst_xml_registry_rebuild):
6953 * gst/registries/gstlibxmlregistry.h:
6954 * tools/gst-compprep.c: (main):
6955 * tools/gst-inspect.c: (print_pad_templates_info):
6956 * tools/gst-xmlinspect.c: (print_element_info):
6957 Use libxml2 for registry parsing, use staticpadtemplates in
6958 elementfactories. Makes gst_init() +/- 10x faster.
6960 2005-04-12 Wim Taymans <wim@fluendo.com>
6962 * gst/base/Makefile.am:
6963 * gst/base/gstbasesink.c: (gst_basesink_base_init),
6964 (gst_basesink_pad_getcaps), (gst_basesink_init),
6965 (gst_basesink_event), (gst_basesink_change_state):
6966 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
6967 (gst_basesrc_init), (gst_basesrc_query),
6968 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
6969 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
6970 (gst_basesrc_check_get_range), (gst_basesrc_loop),
6971 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
6972 (gst_basesrc_stop), (gst_basesrc_activate),
6973 (gst_basesrc_change_state):
6974 * gst/base/gsttypefindhelper.c: (helper_find_peek),
6975 (helper_find_suggest), (gst_type_find_helper):
6976 * gst/base/gsttypefindhelper.h:
6977 * gst/elements/Makefile.am:
6978 * gst/elements/gstelements.c:
6979 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
6980 (gst_fakesink_get_times), (gst_fakesink_event),
6981 (gst_fakesink_preroll), (gst_fakesink_render):
6982 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6983 (gst_fakesrc_init), (gst_fakesrc_event_handler),
6984 (gst_fakesrc_get_property), (gst_fakesrc_create),
6985 (gst_fakesrc_start), (gst_fakesrc_stop):
6986 * gst/elements/gstfakesrc.h:
6987 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
6988 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
6989 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
6990 (gst_filesrc_create_read), (gst_filesrc_create),
6991 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
6992 (gst_filesrc_start):
6993 * gst/elements/gsttypefindelement.c:
6994 (gst_type_find_element_have_type), (gst_type_find_element_init),
6995 (start_typefinding), (stop_typefinding), (push_buffer_store),
6996 (gst_type_find_element_handle_event),
6997 (gst_type_find_element_chain),
6998 (gst_type_find_element_checkgetrange),
6999 (gst_type_find_element_getrange), (do_typefind),
7000 (gst_type_find_element_activate),
7001 (gst_type_find_element_change_state):
7002 * gst/elements/gsttypefindelement.h:
7003 * gst/gstpipeline.c: (pipeline_bus_handler):
7004 Added typefind helper.
7005 Small preroll fix in the base sink.
7006 Disable typefind code in basesrc.
7007 Crude port of typefindelement.
7008 Fakesrc cleanups.
7011 2005-04-11 Wim Taymans <wim@fluendo.com>
7013 * check/gst/gstbus.c: (gstbus_suite):
7014 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
7015 * check/gstcheck.h:
7016 Fix up the timeout so that the test does not fail.
7018 2005-04-06 Wim Taymans <wim@fluendo.com>
7020 * gst/base/README:
7021 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
7022 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
7023 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
7024 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
7025 (gst_basesrc_check_get_range), (gst_basesrc_loop),
7026 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
7027 (gst_basesrc_stop), (gst_basesrc_activate),
7028 (gst_basesrc_change_state), (basesrc_find_peek),
7029 (basesrc_find_suggest), (gst_basesrc_type_find):
7030 * gst/base/gstbasesrc.h:
7031 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7032 (gst_filesrc_class_init), (gst_filesrc_init),
7033 (gst_filesrc_finalize), (gst_filesrc_set_location),
7034 (gst_filesrc_set_property), (gst_filesrc_get_property),
7035 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
7036 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
7037 (gst_filesrc_create_read), (gst_filesrc_create),
7038 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
7039 * gst/elements/gstfilesrc.h:
7040 * gst/gstelement.c: (gst_element_get_state_func),
7041 (gst_element_lost_state), (gst_element_pads_activate):
7042 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
7043 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
7044 (gst_pad_pull_range):
7045 * gst/gstpad.h:
7046 More work on the generic source base class, implement seeking,
7047 query.
7048 Make filesrc extend the base source class.
7049 Added gst_pad_set_checkgetrange_function to GstPad.
7051 2005-04-06 Andy Wingo <wingo@pobox.com>
7053 * pkgconfig/gstreamer-base.pc.in:
7054 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
7056 * pkgconfig/Makefile.am:
7057 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
7059 2005-04-04 Wim Taymans <wim@fluendo.com>
7061 * gst/base/Makefile.am:
7062 * gst/base/README:
7063 * gst/base/gstbasesink.c: (gst_basesink_base_init),
7064 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
7065 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
7066 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
7067 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
7068 (gst_basesrc_base_init), (gst_basesrc_class_init),
7069 (gst_basesrc_init), (gst_basesrc_get_formats),
7070 (gst_basesrc_get_query_types), (gst_basesrc_query),
7071 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
7072 (gst_basesrc_set_property), (gst_basesrc_get_property),
7073 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
7074 (gst_basesrc_loop), (gst_basesrc_activate),
7075 (gst_basesrc_change_state):
7076 * gst/base/gstbasesrc.h:
7077 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
7078 (gst_fakesrc_class_init), (gst_fakesrc_init),
7079 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
7080 (gst_fakesrc_get_property), (gst_fakesrc_create):
7081 * gst/elements/gstfakesrc.h:
7082 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
7083 (gst_filesrc_open_file), (gst_filesrc_loop),
7084 (gst_filesrc_activate), (filesrc_find_peek),
7085 (gst_filesrc_type_find):
7086 Made base source class, make fakesrc extend it.
7087 Add comments to basesink class.
7088 Some filesrc cleanup.
7090 2005-03-31 David Schleef <ds@schleef.org>
7092 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7093 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
7094 expected to link against libgstreamer.
7095 * gst/base/Makefile.am: link against libgstreamer
7096 * gst/elements/Makefile.am: same
7098 2005-03-31 Andy Wingo <wingo@pobox.com>
7100 * tests/instantiate/Makefile.am:
7101 * tests/instantiate/caps.c: Add test to test speed of caps copy
7102 and free.
7104 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
7105 GMemChunk to be fair.
7107 * gst/gsttrashstack.h: Remove warning about using the fallback
7108 trash stack implementation, it's still faster than malloc.
7110 2005-03-30 Andy Wingo <wingo@pobox.com>
7112 * tests/complexity.c: Add a copyright.
7114 2005-03-31 Wim Taymans <wim@fluendo.com>
7116 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
7117 (gst_base_transform_class_init), (gst_base_transform_init),
7118 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
7119 (gst_base_transform_get_property),
7120 (gst_base_transform_sink_activate),
7121 (gst_base_transform_src_activate),
7122 (gst_base_transform_change_state):
7123 * gst/base/gstbasetransform.h:
7124 * gst/elements/gstidentity.c: (gst_identity_class_init),
7125 (gst_identity_event), (gst_identity_check_perfect),
7126 (gst_identity_transform), (gst_identity_start),
7127 (gst_identity_stop):
7128 Added start/stop methods to transform base class so subclasses
7129 don't need to deal with state changes even.
7131 2005-03-31 Wim Taymans <wim@fluendo.com>
7133 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
7134 (gst_event_new_discontinuous), (gst_event_discont_get_value):
7135 * gst/gstevent.h:
7136 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
7137 (gst_pad_pull_range):
7138 Added rate to the discont event to prepare for variable speed
7139 and reverse playback.
7141 2005-03-29 David Schleef <ds@schleef.org>
7143 * configure.ac:
7144 * testsuite/trigger/Makefile.am:
7145 * testsuite/trigger/trigger.c: A little example program to show
7146 how trigger-based elements can work.
7148 2005-03-29 Wim Taymans <wim@fluendo.com>
7150 * gst/base/Makefile.am:
7151 * gst/base/README:
7152 * gst/base/gstbasesink.c: (gst_basesink_get_type),
7153 (gst_basesink_base_init), (gst_basesink_class_init),
7154 (gst_basesink_pad_getcaps), (gst_basesink_init),
7155 (gst_basesink_activate), (gst_basesink_change_state):
7156 * gst/base/gstbasesink.h:
7157 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
7158 (gst_base_transform_base_init), (gst_base_transform_finalize),
7159 (gst_base_transform_class_init), (gst_base_transform_init),
7160 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
7161 (gst_base_transform_event), (gst_base_transform_getrange),
7162 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
7163 (gst_base_transform_set_property),
7164 (gst_base_transform_get_property),
7165 (gst_base_transform_sink_activate),
7166 (gst_base_transform_src_activate),
7167 (gst_base_transform_change_state):
7168 * gst/base/gstbasetransform.h:
7169 * gst/elements/gstidentity.c: (gst_identity_finalize),
7170 (gst_identity_class_init), (gst_identity_init),
7171 (gst_identity_event), (gst_identity_check_perfect),
7172 (gst_identity_transform), (gst_identity_set_property),
7173 (gst_identity_get_property), (gst_identity_change_state):
7174 * gst/elements/gstidentity.h:
7175 * gst/gstelement.c: (gst_element_get_state_func),
7176 (gst_element_lost_state), (gst_element_pads_activate):
7177 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
7178 (gst_pad_check_pull_range), (gst_pad_pull_range):
7179 * gst/gstpad.h:
7180 Simplify pad activation.
7181 Added function to check if pull_range can be performed.
7182 Error out when pulling inactive or flushing pads.
7183 Removed const from refcounted types as it does not make sense.
7184 Simplify pad templates in basesink
7185 Added base class for simple 1-to-1 transforms.
7186 Make identity subclass the base transform.
7188 2005-03-29 Andy Wingo <wingo@pobox.com>
7190 * docs/libs/gstreamer-libs-overrides.txt:
7191 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
7192 really don't understand what's going on, but like whatever. I want
7193 green buildbot!
7195 * docs/gst/Makefile.am:
7196 * docs/libs/Makefile.am: Dist the overrides files.
7198 * check/Makefile.am (clean-local): Remove .libs directories.
7200 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
7201 elements to EXTRA_DIST, so po/ files are happy.
7203 * po/POTFILES.in: Er, remove it here.
7205 * po/POTFILES: Remove gstspider.c.
7207 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
7209 * docs/libs/gstreamer-libs-docs.sgml:
7210 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
7211 bytestream.
7213 * tests/complexity.c (main): Set the length of the preroll queue
7214 on the sinks to prevent a lockup.
7216 * libs/gst/dataprotocol/Makefile.am:
7217 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
7218 the same as the one in check/gst-libs/gdp.c.
7220 * po/, docs/gst/: Commit automatic changes to docs and po files.
7222 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
7223 the versioned libgstbase.
7225 * check/Makefile.am: Depend on an unversioned gst-register, seems
7226 to make autoconf happier.
7228 * gst/base/Makefile.am: Make libgstbase a versioned lib.
7230 2005-03-28 Wim Taymans <wim@fluendo.com>
7232 * configure.ac:
7233 * docs/design/part-gstelement.txt:
7234 * docs/design/part-negotiation.txt:
7235 * docs/design/part-preroll.txt:
7236 * docs/design/part-scheduling.txt:
7237 * docs/design/part-states.txt:
7238 * gst/Makefile.am:
7239 * gst/base/Makefile.am:
7240 * gst/base/README:
7241 * gst/base/gstbasesink.c: (gst_basesink_get_template),
7242 (gst_basesink_base_init), (gst_basesink_class_init),
7243 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
7244 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
7245 (gst_basesink_set_pad_functions),
7246 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
7247 (gst_basesink_set_property), (gst_basesink_get_property),
7248 (gst_base_sink_get_template), (gst_base_sink_get_caps),
7249 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
7250 (gst_basesink_preroll_queue_push),
7251 (gst_basesink_preroll_queue_empty),
7252 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
7253 (gst_basesink_event), (gst_basesink_get_times),
7254 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
7255 (gst_basesink_chain_unlocked), (gst_basesink_chain),
7256 (gst_basesink_loop), (gst_basesink_activate),
7257 (gst_basesink_change_state):
7258 * gst/base/gstbasesink.h:
7259 * gst/elements/Makefile.am:
7260 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
7261 (gst_fakesink_class_init), (gst_fakesink_init),
7262 (gst_fakesink_set_property), (gst_fakesink_get_property),
7263 (gst_fakesink_get_times), (gst_fakesink_event),
7264 (gst_fakesink_preroll), (gst_fakesink_render),
7265 (gst_fakesink_change_state):
7266 * gst/elements/gstfakesink.h:
7267 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
7268 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
7269 * gst/gstelement.c: (gst_element_add_pad),
7270 (gst_element_get_state_func), (gst_element_abort_state),
7271 (gst_element_commit_state), (gst_element_lost_state),
7272 (gst_element_set_state), (gst_element_pads_activate):
7273 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
7274 * gst/gstpipeline.c: (gst_pipeline_send_event),
7275 (gst_pipeline_change_state):
7276 Added state change code.
7277 Added/updated docs.
7278 Added sink base class, make fakesink extend the base class.
7279 Small cleanups in GstPipeline.
7281 2005-03-26 David Schleef <ds@schleef.org>
7283 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
7284 is broken and should be implemented in a different library.
7285 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
7286 * gst/gst.h: remove gstcpu.h
7287 * gst/gstcpu.c: remove
7288 * gst/gstcpu.h: remove
7289 * gst/Makefile.am.future: Remove this file. It's ancient.
7291 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
7293 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
7294 (gst_bin_send_event):
7295 Add default event/set_manager handlers. The set_manager handler
7296 takes care that the manager is distributed over kids that were
7297 already in the bin before the manager was set. The event handler
7298 is a utility virtual function that sends the event over all sinks,
7299 so that gst_element_send_event (bin, event); has the expected
7300 behaviour.
7301 * gst/gstpad.c: (gst_pad_event_default):
7302 Re-install default event handling for discontinuities, so that
7303 seeking works without requiring hacks in applications or extra
7304 code in sinks.
7305 * gst/gstpipeline.c: (gst_pipeline_class_init),
7306 (gst_pipeline_send_event):
7307 Half hack, half utility: set a pipeline to PAUSED for seek events,
7308 since that is the only way we can guarantee a/v sync. Means that
7309 you can do gst_element_seek (pipeline, method, pos); on a pipeline
7310 and it "just works".
7312 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
7314 * gst/gstpipeline.c: (gst_pipeline_use_clock):
7315 Lock/unlock mismatch.
7317 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
7319 * docs/faq/gst-uninstalled:
7320 add gst-plugins-base
7321 * docs/gst/Makefile.am:
7322 don't error out until docs are fixed
7323 * docs/gst/gstreamer.types:
7324 remove thread
7326 2005-03-22 Wim Taymans <wim@fluendo.com>
7328 * check/Makefile.am:
7329 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
7330 * gst/gststructure.c: (gst_structure_set_valist),
7331 (gst_structure_copy_conditional):
7332 Activated more tests.
7333 Added message test.
7334 Added G_TYPE_POINTER to GstStructure.
7337 2005-03-22 Wim Taymans <wim@fluendo.com>
7339 * docs/design/part-TODO.txt:
7340 * docs/design/part-events.txt:
7341 * docs/design/part-gstbin.txt:
7342 * docs/design/part-gstbus.txt:
7343 * docs/design/part-gstpipeline.txt:
7344 * docs/design/part-messages.txt:
7345 * gst/gstbus.c:
7346 * gst/gstmessage.c:
7347 Docs updates
7349 2005-03-21 Wim Taymans <wim@fluendo.com>
7351 * gst/gstbus.c: (gst_bus_post):
7352 Fix copy-and-paste error.
7354 2005-03-21 Wim Taymans <wim@fluendo.com>
7356 * check/Makefile.am:
7357 * gst/Makefile.am:
7358 * gst/elements/Makefile.am:
7359 * gst/elements/gstelements.c:
7360 * gst/elements/gstfakesink.c: (gst_fakesink_init),
7361 (gst_fakesink_event), (gst_fakesink_chain):
7362 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
7363 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
7364 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
7365 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
7366 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
7367 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
7368 (gst_fakesrc_loop), (gst_fakesrc_activate),
7369 (gst_fakesrc_change_state):
7370 * gst/elements/gstfakesrc.h:
7371 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7372 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
7373 (gst_filesrc_open_file), (gst_filesrc_loop),
7374 (gst_filesrc_activate), (gst_filesrc_change_state),
7375 (filesrc_find_peek), (filesrc_find_suggest),
7376 (gst_filesrc_type_find):
7377 * gst/elements/gstidentity.c: (gst_identity_finalize),
7378 (gst_identity_class_init), (gst_identity_init),
7379 (gst_identity_proxy_getcaps), (identity_queue_push),
7380 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
7381 (gst_identity_getrange), (gst_identity_chain),
7382 (gst_identity_sink_loop), (gst_identity_src_loop),
7383 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
7384 (gst_identity_set_property), (gst_identity_get_property),
7385 (gst_identity_change_state):
7386 * gst/elements/gstidentity.h:
7387 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
7388 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
7389 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
7390 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
7391 (gst_tee_sink_activate):
7392 * gst/elements/gsttee.h:
7393 * gst/gst.c: (gst_register_core_elements), (init_post):
7394 * gst/gst.h:
7395 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
7396 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
7397 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
7398 (gst_bin_change_state):
7399 * gst/gstbin.h:
7400 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
7401 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
7402 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
7403 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
7404 (gst_bus_set_sync_handler), (gst_bus_create_watch),
7405 (bus_watch_callback), (bus_watch_destroy),
7406 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
7407 (poll_timeout), (gst_bus_poll):
7408 * gst/gstbus.h:
7409 * gst/gstcaps.h:
7410 * gst/gstdata.h:
7411 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
7412 (gst_element_post_message), (gst_element_message_full),
7413 (gst_element_get_state_func), (gst_element_get_state),
7414 (gst_element_abort_state), (gst_element_commit_state),
7415 (gst_element_lost_state), (gst_element_set_state),
7416 (gst_element_pads_activate), (gst_element_change_state),
7417 (gst_element_dispose), (gst_element_set_manager_func),
7418 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
7419 (gst_element_set_manager), (gst_element_get_manager),
7420 (gst_element_set_bus), (gst_element_get_bus),
7421 (gst_element_set_scheduler), (gst_element_get_scheduler):
7422 * gst/gstelement.h:
7423 * gst/gstevent.c: (gst_event_new_segment_seek),
7424 (gst_event_new_flush):
7425 * gst/gstevent.h:
7426 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
7427 (_gst_message_free), (gst_message_get_type), (gst_message_new),
7428 (gst_message_new_eos), (gst_message_new_error),
7429 (gst_message_new_warning), (gst_message_new_tag),
7430 (gst_message_new_state_changed), (gst_message_new_application),
7431 (gst_message_get_structure), (gst_message_parse_tag),
7432 (gst_message_parse_state_changed), (gst_message_parse_error),
7433 (gst_message_parse_warning):
7434 * gst/gstmessage.h:
7435 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
7436 (gst_real_pad_set_property), (gst_pad_set_active),
7437 (gst_pad_is_active), (gst_pad_set_blocked_async),
7438 (gst_pad_set_blocked), (gst_pad_is_blocked),
7439 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
7440 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
7441 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
7442 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
7443 (gst_pad_link_filtered), (gst_pad_relink_filtered),
7444 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
7445 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
7446 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
7447 (gst_pad_set_caps), (gst_pad_configure_sink),
7448 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
7449 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
7450 (gst_real_pad_dispose), (gst_real_pad_finalize),
7451 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
7452 (gst_pad_event_default_dispatch), (gst_pad_event_default),
7453 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
7454 * gst/gstpad.h:
7455 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
7456 (pipeline_bus_handler), (gst_pipeline_change_state),
7457 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
7458 * gst/gstpipeline.h:
7459 * gst/gstprobe.h:
7460 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
7461 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
7462 (gst_queue_link_src), (gst_queue_bufferalloc),
7463 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
7464 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
7465 (gst_queue_loop), (gst_queue_handle_src_event),
7466 (gst_queue_handle_src_query), (gst_queue_src_activate),
7467 (gst_queue_change_state):
7468 * gst/gstqueue.h:
7469 * gst/gstscheduler.c: (gst_scheduler_init),
7470 (gst_scheduler_dispose), (gst_scheduler_create_task),
7471 (gst_scheduler_factory_create):
7472 * gst/gstscheduler.h:
7473 * gst/gststructure.c: (gst_structure_get_type),
7474 (gst_structure_copy_conditional):
7475 * gst/gststructure.h:
7476 * gst/gsttaginterface.h:
7477 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
7478 (gst_task_init), (gst_task_dispose), (gst_task_create),
7479 (gst_task_get_state), (gst_task_start), (gst_task_stop),
7480 (gst_task_pause):
7481 * gst/gsttask.h:
7482 * gst/gstthread.c:
7483 * gst/gstthread.h:
7484 * gst/gsttypes.h:
7485 * gst/schedulers/Makefile.am:
7486 * gst/schedulers/cothreads_compat.h:
7487 * gst/schedulers/entryscheduler.c:
7488 * gst/schedulers/faircothreads.c:
7489 * gst/schedulers/faircothreads.h:
7490 * gst/schedulers/fairscheduler.c:
7491 * gst/schedulers/gstbasicscheduler.c:
7492 * gst/schedulers/gstoptimalscheduler.c:
7493 * gst/schedulers/gthread-cothreads.h:
7494 * gst/schedulers/threadscheduler.c:
7495 (gst_thread_scheduler_task_get_type),
7496 (gst_thread_scheduler_task_class_init),
7497 (gst_thread_scheduler_task_init),
7498 (gst_thread_scheduler_task_start),
7499 (gst_thread_scheduler_task_stop),
7500 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
7501 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
7502 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
7503 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
7504 (plugin_init):
7505 * libs/gst/Makefile.am:
7506 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
7507 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
7508 (gst_file_pad_parent_set):
7509 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
7510 (gst_dp_event_from_packet):
7511 * tests/complexity.c: (main):
7512 * tests/mass_elements.c: (main):
7513 * testsuite/states/locked.c: (message_received), (main):
7514 * testsuite/states/parent.c: (main):
7515 * tools/gst-inspect.c: (print_element_flag_info),
7516 (print_implementation_info), (print_pad_info):
7517 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
7518 (main):
7519 * tools/gst-md5sum.c: (event_loop), (main):
7520 * tools/gst-typefind.c: (main):
7521 * tools/gst-xmlinspect.c: (print_element_info):
7522 Next big merge.
7523 Added GstBus for mainloop integration.
7524 Added GstMessage for sending notifications on the bus.
7525 Added GstTask as an abstraction for pipeline entry points.
7526 Removed GstThread.
7527 Removed Schedulers.
7528 Simplified GstQueue for multithreaded core.
7529 Made _link threadsafe, removed old capsnego.
7530 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
7531 Added pad blocking functions.
7532 Reworked scheduling functions in GstPad to prepare for
7533 scheduling updates soon.
7534 Moved events out of data stream.
7535 Simplified GstEvent types.
7536 Added return values to push/pull.
7537 Removed clocking from GstElement.
7538 Added prototypes for state change function for next merge.
7539 Removed iterate from bins and state change management.
7540 Fixed some elements, disabled others for now.
7541 Fixed -inspect and -launch.
7542 Added check for GstBus.
7544 2005-03-10 Wim Taymans <wim@fluendo.com>
7546 * docs/design/part-MT-refcounting.txt:
7547 * docs/design/part-clocks.txt:
7548 * docs/design/part-gstelement.txt:
7549 * docs/design/part-gstobject.txt:
7550 * docs/design/part-standards.txt:
7551 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
7552 (gst_bin_remove_func), (gst_bin_remove):
7553 * gst/gstbin.h:
7554 * gst/gstbuffer.c:
7555 * gst/gstcaps.h:
7556 * testsuite/clock/clock1.c: (main):
7557 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
7558 (main):
7559 * testsuite/dlopen/loadgst.c: (do_test):
7560 * testsuite/refcounting/bin.c: (add_remove_test1),
7561 (add_remove_test2), (main):
7562 * testsuite/refcounting/element.c: (main):
7563 * testsuite/refcounting/element_pad.c: (main):
7564 * testsuite/refcounting/pad.c: (main):
7565 * tools/gst-launch.c: (sigint_handler_sighandler):
7566 * tools/gst-typefind.c: (main):
7567 Doc updates.
7568 Added doc about clock.
7569 removed gst_bin_iterate_recurse_up(), marked methods
7570 for removal.
7571 Fix more testsuites.
7573 2005-03-09 Wim Taymans <wim@fluendo.com>
7575 * gst/gstpad.c: (gst_pad_get_direction),
7576 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
7577 (gst_pad_collect_valist):
7578 * testsuite/bins/interface.c: (main):
7579 * testsuite/caps/audioscale.c: (test_caps):
7580 * testsuite/caps/caps.c: (test1), (test2), (test3):
7581 * testsuite/caps/deserialize.c: (main):
7582 * testsuite/caps/enumcaps.c: (main):
7583 * testsuite/caps/filtercaps.c: (main):
7584 * testsuite/caps/intersect2.c: (main):
7585 * testsuite/caps/random.c: (main):
7586 * testsuite/caps/renegotiate.c: (my_fixate), (main):
7587 * testsuite/caps/sets.c: (check_caps):
7588 * testsuite/caps/simplify.c: (check_caps), (main):
7589 * testsuite/caps/subtract.c: (check_caps):
7590 Fix _pad_get_direction wrt ghostpads.
7591 Fix caps testsuite.
7593 2005-03-09 Wim Taymans <wim@fluendo.com>
7595 * check/Makefile.am:
7596 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
7597 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
7598 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
7599 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
7600 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
7601 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
7602 (gst_bin_remove), (gst_bin_iterate_recurse_up),
7603 (bin_element_is_sink), (gst_bin_iterate_sinks),
7604 (gst_bin_iterate_all_by_interface):
7605 * gst/gstbin.h:
7606 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
7607 (gst_element_change_state), (gst_element_dispose),
7608 (gst_element_finalize), (gst_element_set_loop_function):
7609 * gst/gstelement.h:
7610 * gst/gstiterator.c: (find_custom_fold_func):
7611 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
7612 (gst_pad_collectv), (gst_pad_collect_valist),
7613 (gst_pad_template_new):
7614 * gst/gstpipeline.c: (gst_pipeline_class_init),
7615 (gst_pipeline_dispose), (gst_pipeline_set_property),
7616 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
7617 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
7618 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
7619 * gst/gstutils.h:
7620 * gst/schedulers/entryscheduler.c:
7621 * gst/schedulers/gstbasicscheduler.c:
7622 (gst_basic_scheduler_cothreaded_chain),
7623 (gst_basic_scheduler_chain_add_element):
7624 * testsuite/bins/interface.c: (main):
7625 Added GstBin test.
7626 Added GstSystemClock test.
7627 Implemented clock distribution code in GstBin.
7628 Implemented iterate sinks method for future use.
7629 Rearranged gstelement.h
7630 Fix GstIterator comparison bug.
7631 Moved some code to GstPipeline, mostly clocking related.
7633 2005-03-09 Wim Taymans <wim@fluendo.com>
7635 * configure.ac:
7636 * gst/gst_private.h:
7637 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
7638 (gst_bin_remove_func), (gst_bin_remove),
7639 (gst_bin_get_by_name_recurse_up):
7640 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
7641 (gst_clock_id_compare_func), (gst_clock_id_wait),
7642 (gst_clock_id_wait_async), (gst_clock_init),
7643 (gst_clock_adjust_unlocked), (gst_clock_get_time):
7644 * gst/gstelement.h:
7645 * gst/gstinfo.c: (_gst_debug_init):
7646 * gst/gstobject.h:
7647 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
7648 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
7649 * gst/gstpad.h:
7650 Bump version number, we're now 0.9.0
7651 Add future debugging category.
7652 Fix NULL _unref() in _get_by_name_recurse_up
7653 Rearrange gstpad.h.
7654 Update some docs.
7656 2005-03-08 Wim Taymans <wim@fluendo.com>
7658 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
7659 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7660 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7661 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
7662 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
7663 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
7664 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
7665 * gst/elements/gstidentity.c: (gst_identity_class_init):
7666 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
7667 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
7668 * gst/elements/gstshaper.c: (gst_shaper_class_init):
7669 * gst/elements/gststatistics.c: (gst_statistics_class_init):
7670 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
7671 (gst_tee_link):
7672 * gst/gstelement.c: (gst_element_class_init),
7673 (gst_element_base_class_init), (gst_element_init),
7674 (gst_element_get_random_pad), (gst_element_wait_state_change),
7675 (gst_element_change_state), (gst_element_dispose),
7676 (gst_element_finalize), (gst_element_set_loop_function):
7677 * gst/gstelement.h:
7678 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
7679 * gst/gstthread.c: (gst_thread_class_init),
7680 (gst_thread_release_children_locks), (gst_thread_change_state):
7681 * gst/schedulers/gstbasicscheduler.c:
7682 (gst_basic_scheduler_loopfunc_wrapper),
7683 (gst_basic_scheduler_chain_wrapper),
7684 (gst_basic_scheduler_src_wrapper),
7685 (gst_basic_scheduler_remove_element):
7686 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
7687 Remove threadsafe properties. Fix elements because GObject
7688 complains when installing a property before declaring a
7689 set/get_property handler.
7690 Rearrange gstelement.h file, use STATE macros for state locks.
7691 Free mutexes in the finalize method instead of dispose.
7693 2005-03-08 Wim Taymans <wim@fluendo.com>
7695 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
7696 * gst/gstthread.c: (gst_thread_release_children_locks):
7697 Added parentage check.
7698 Fix build og GstThread again.
7700 2005-03-08 Wim Taymans <wim@fluendo.com>
7702 * docs/design/part-MT-refcounting.txt:
7703 * docs/design/part-conventions.txt:
7704 * docs/design/part-gstobject.txt:
7705 * docs/design/part-relations.txt:
7706 * docs/design/part-standards.txt:
7707 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
7708 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
7709 (gst_bin_get_by_name), (gst_bin_get_by_interface),
7710 (gst_bin_iterate_all_by_interface):
7711 * gst/gstbuffer.h:
7712 * gst/gstclock.h:
7713 * gst/gstelement.c: (gst_element_class_init),
7714 (gst_element_change_state), (gst_element_set_loop_function):
7715 * gst/gstelement.h:
7716 * gst/gstiterator.c:
7717 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
7718 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
7719 (gst_object_dispatch_properties_changed), (gst_object_set_name),
7720 (gst_object_set_parent), (gst_object_unparent),
7721 (gst_object_check_uniqueness):
7722 * gst/gstobject.h:
7723 Docs updates, clean up some headers.
7725 2005-03-07 Wim Taymans <wim@fluendo.com>
7727 * check/.cvsignore:
7728 * check/Makefile.am:
7729 * check/gst-libs/.cvsignore:
7730 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
7731 * check/gst/.cvsignore:
7732 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
7733 (START_TEST), (gstbus_suite), (main):
7734 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
7735 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
7736 (gst_data_suite), (main):
7737 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
7738 (add_fold_func), (gstiterator_suite), (main):
7739 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
7740 (thread_name_object), (thread_name_object_default),
7741 (gst_object_name_compare), (gst_object_suite), (main):
7742 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
7743 (gst_pad_suite), (main):
7744 * check/gstcheck.c: (gst_check_log_message_func),
7745 (gst_check_log_critical_func), (gst_check_init):
7746 * check/gstcheck.h:
7747 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
7748 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
7749 Added checks.
7751 2005-03-07 Wim Taymans <wim@fluendo.com>
7753 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
7754 (gst_list_iterator_next), (gst_list_iterator_resync),
7755 (gst_list_iterator_free), (gst_iterator_new_list),
7756 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
7757 (gst_iterator_free), (gst_iterator_push), (filter_next),
7758 (filter_resync), (filter_uninit), (filter_free),
7759 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
7760 (gst_iterator_foreach), (find_custom_fold_func),
7761 (gst_iterator_find_custom):
7762 * gst/gstiterator.h:
7763 Added missing files.
7765 2005-03-07 Wim Taymans <wim@fluendo.com>
7767 * Makefile.am:
7768 * configure.ac:
7769 * docs/design/part-MT-refcounting.txt:
7770 * docs/design/part-conventions.txt:
7771 * docs/design/part-gstobject.txt:
7772 * docs/design/part-relations.txt:
7773 * examples/mixer/mixer.c: (main):
7774 * examples/thread/thread.c: (eos), (main):
7775 * gst/Makefile.am:
7776 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
7777 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
7778 (gst_spider_plug_from_srcpad):
7779 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
7780 (gst_spider_identity_change_state),
7781 (gst_spider_identity_sink_loop_type_finding):
7782 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
7783 * gst/elements/gstidentity.c: (gst_identity_init):
7784 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
7785 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
7786 * gst/elements/gsttypefindelement.c: (free_entry):
7787 * gst/gst.c:
7788 * gst/gst.h:
7789 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
7790 (gst_bin_set_clock_func), (gst_bin_auto_clock),
7791 (gst_bin_set_index), (gst_bin_set_element_sched),
7792 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
7793 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
7794 (gst_bin_iterate_elements), (iterate_child_recurse),
7795 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
7796 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
7797 (compare_interface), (gst_bin_get_by_interface),
7798 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
7799 * gst/gstbin.h:
7800 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
7801 (gst_buffer_default_free), (gst_buffer_default_copy),
7802 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
7803 (gst_buffer_create_sub):
7804 * gst/gstbuffer.h:
7805 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
7806 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
7807 (gst_caps_unref), (gst_static_caps_get),
7808 (gst_caps_remove_and_get_structure), (gst_caps_append),
7809 (gst_caps_append_structure), (gst_caps_remove_structure),
7810 (gst_caps_copy_nth), (gst_caps_set_simple),
7811 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
7812 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
7813 (gst_caps_structure_intersect_field), (gst_caps_intersect),
7814 (gst_caps_structure_subtract_field), (gst_caps_subtract),
7815 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
7816 (gst_caps_structure_figure_out_union),
7817 (gst_caps_switch_structures), (gst_caps_do_simplify),
7818 (gst_caps_replace), (gst_caps_from_string),
7819 (gst_caps_copy_conditional):
7820 * gst/gstcaps.h:
7821 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
7822 (_gst_clock_id_free), (gst_clock_id_unref),
7823 (gst_clock_id_compare_func), (gst_clock_id_wait),
7824 (gst_clock_id_wait_async), (gst_clock_class_init),
7825 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
7826 (gst_clock_get_time), (gst_clock_set_time_adjust),
7827 (gst_clock_set_property), (gst_clock_get_property):
7828 * gst/gstclock.h:
7829 * gst/gstcompat.h:
7830 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
7831 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
7832 * gst/gstdata.h:
7833 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
7834 (gst_element_requires_clock), (gst_element_provides_clock),
7835 (gst_element_set_clock), (gst_element_clock_wait),
7836 (gst_element_wait), (gst_element_set_time_delay),
7837 (gst_element_is_indexable), (gst_element_add_pad),
7838 (gst_element_add_ghost_pad), (gst_element_remove_pad),
7839 (pad_compare_name), (gst_element_get_static_pad),
7840 (gst_element_request_pad), (gst_element_get_request_pad),
7841 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
7842 (gst_element_class_get_pad_template_list),
7843 (gst_element_class_get_pad_template), (gst_element_error_func),
7844 (gst_element_get_random_pad), (gst_element_get_event_masks),
7845 (gst_element_send_event), (gst_element_seek),
7846 (gst_element_get_query_types), (gst_element_query),
7847 (gst_element_get_formats), (gst_element_convert),
7848 (gst_element_is_locked_state), (gst_element_set_locked_state),
7849 (gst_element_sync_state_with_parent), (gst_element_change_state),
7850 (gst_element_finalize), (gst_element_yield),
7851 (gst_element_interrupt), (gst_element_set_scheduler),
7852 (gst_element_get_scheduler), (gst_element_set_loop_function):
7853 * gst/gstelement.h:
7854 * gst/gstevent.h:
7855 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
7856 (gst_format_get_by_nick), (gst_format_get_details),
7857 (gst_format_iterate_definitions):
7858 * gst/gstformat.h:
7859 * gst/gstindex.c: (gst_index_gtype_resolver):
7860 * gst/gstinfo.c:
7861 * gst/gstinfo.h:
7862 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
7863 (gst_mem_chunk_free):
7864 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
7865 (gst_object_ref), (gst_object_unref), (gst_object_sink),
7866 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
7867 (gst_object_dispatch_properties_changed),
7868 (gst_object_set_name_default), (gst_object_set_name),
7869 (gst_object_get_name), (gst_object_set_name_prefix),
7870 (gst_object_get_name_prefix), (gst_object_set_parent),
7871 (gst_object_get_parent), (gst_object_unparent),
7872 (gst_object_check_uniqueness), (gst_object_save_thyself),
7873 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
7874 (gst_object_set_property), (gst_object_get_property),
7875 (gst_object_get_path_string):
7876 * gst/gstobject.h:
7877 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
7878 (gst_real_pad_init), (gst_real_pad_get_property),
7879 (gst_pad_custom_new), (gst_pad_get_direction),
7880 (gst_pad_set_active), (gst_pad_is_active),
7881 (gst_pad_set_event_function), (gst_pad_is_linked),
7882 (gst_pad_link_free), (gst_pad_link_intersect),
7883 (gst_pad_link_fixate), (gst_pad_set_caps),
7884 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
7885 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
7886 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
7887 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
7888 (gst_pad_get_caps), (gst_pad_peer_get_caps),
7889 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
7890 (gst_pad_realize), (gst_pad_get_allowed_caps),
7891 (gst_real_pad_dispose), (gst_real_pad_finalize),
7892 (gst_pad_collectv), (gst_pad_collect_valist),
7893 (gst_pad_template_dispose), (gst_pad_template_new),
7894 (gst_pad_get_internal_links):
7895 * gst/gstpad.h:
7896 * gst/gstpipeline.c: (gst_pipeline_dispose),
7897 (gst_pipeline_change_state):
7898 * gst/gstpipeline.h:
7899 * gst/gstplugin.c:
7900 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
7901 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
7902 * gst/gstpluginfeature.h:
7903 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
7904 * gst/gstquery.c: (_gst_query_type_initialize),
7905 (gst_query_type_register), (gst_query_type_get_by_nick),
7906 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
7907 * gst/gstquery.h:
7908 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
7909 * gst/gstscheduler.c: (gst_scheduler_add_element),
7910 (gst_scheduler_factory_create):
7911 * gst/gststructure.c: (gst_structure_set_parent_refcount),
7912 (gst_structure_free), (gst_structure_set_name),
7913 (gst_structure_id_set_value), (gst_structure_set_value),
7914 (gst_structure_set_valist), (gst_structure_remove_field),
7915 (gst_structure_remove_fields),
7916 (gst_structure_remove_fields_valist),
7917 (gst_structure_remove_all_fields), (gst_structure_foreach),
7918 (gst_structure_map_in_place),
7919 (gst_caps_structure_fixate_field_nearest_int),
7920 (gst_caps_structure_fixate_field_nearest_double):
7921 * gst/gststructure.h:
7922 * gst/gstsystemclock.c: (gst_system_clock_class_init),
7923 (gst_system_clock_init), (gst_system_clock_dispose),
7924 (gst_system_clock_async_thread),
7925 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
7926 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
7927 * gst/gstsystemclock.h:
7928 * gst/gsttag.c: (gst_tag_list_add_value_internal),
7929 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
7930 * gst/gsttaginterface.c:
7931 * gst/gstthread.c: (gst_thread_dispose),
7932 (gst_thread_release_children_locks), (gst_thread_change_state),
7933 (gst_thread_main_loop):
7934 * gst/gsttrashstack.h:
7935 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
7936 * gst/gsttypes.h:
7937 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
7938 (gst_element_request_pad), (gst_element_get_pad_from_template),
7939 (gst_element_request_compatible_pad),
7940 (gst_element_get_compatible_pad_filtered),
7941 (gst_element_get_compatible_pad), (gst_element_state_get_name),
7942 (gst_element_link_pads_filtered), (gst_element_link_filtered),
7943 (gst_element_link_many), (gst_element_link),
7944 (gst_element_link_pads), (gst_element_unlink_pads),
7945 (gst_element_unlink_many), (gst_element_unlink),
7946 (gst_pad_can_link_filtered), (gst_pad_can_link),
7947 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
7948 (gst_object_default_error), (gst_bin_add_many),
7949 (gst_bin_remove_many), (gst_element_populate_std_props),
7950 (gst_element_class_install_std_props), (gst_buffer_merge),
7951 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
7952 (link_fold_func), (gst_pad_proxy_setcaps):
7953 * gst/gstutils.h:
7954 * gst/gstvalue.c: (gst_value_deserialize_string):
7955 * gst/parse/grammar.y:
7956 * gst/schedulers/gstbasicscheduler.c:
7957 (gst_basic_scheduler_cothreaded_chain),
7958 (gst_basic_scheduler_chain_recursive_add),
7959 (gst_basic_scheduler_pad_link):
7960 * gst/schedulers/gstoptimalscheduler.c:
7961 (get_group_schedule_function),
7962 (gst_opt_scheduler_state_transition),
7963 (gst_opt_scheduler_add_element), (element_get_reachables_func):
7964 * libs/gst/bytestream/bytestream.c:
7965 * libs/gst/dataprotocol/dataprotocol.c:
7966 (gst_dp_header_from_buffer):
7967 * po/nb.po:
7968 * po/ru.po:
7969 * tests/threadstate/threadstate2.c: (eos):
7970 * tools/gst-compprep.c: (main):
7971 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
7972 (print_pad_info), (print_children_info):
7973 * tools/gst-launch.c: (idle_func), (main):
7974 * tools/gst-md5sum.c: (idle_func), (main):
7975 * tools/gst-xmlinspect.c: (print_element_info):
7976 First THREADED backport attempt, focusing on adding locks and
7977 making sure the API is threadsafe. Needs more work. More docs
7978 follow this week.
7980 2005-02-24 Andy Wingo <wingo@pobox.com>
7982 * tests/bench-complexity.scm:
7983 * tests/complexity.gnuplot: New files, good for running complexity
7984 benchmarks.
7986 * tests/Makefile.am:
7987 * tests/complexity.c: New test, sets up N elements, at each level
7988 teeing into M streams per element. Eeeenteresting.
7990 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
7991 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
7992 running bench-mass_elements.scm.
7994 * tests/bench-mass_elements.scm: New script, runs mass_elements
7995 for various numbers of identities, outputting the results to a
7996 file. Requires guile 1.6. Just for testing.
7998 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
8000 * gst/schedulers/fairscheduler.c:
8001 compile with debug disabled
8003 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
8005 * configure.ac:
8006 hunting season on 0.9 is now OPEN