1 2006-05-10 Edward Hervey <edward@fluendo.com>
4 GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
5 GInterface type checking.
6 They were previously using non-defined macros.
8 2006-05-09 Wim Taymans <wim@fluendo.com>
10 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
11 (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
12 (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
13 (gst_collect_pads_start), (gst_collect_pads_stop),
14 (gst_collect_pads_peek), (gst_collect_pads_pop),
15 (gst_collect_pads_available), (gst_collect_pads_read),
16 (gst_collect_pads_flush), (gst_collect_pads_check_pads),
17 (gst_collect_pads_is_collected), (gst_collect_pads_event),
18 (gst_collect_pads_chain):
19 * libs/gst/base/gstcollectpads.h:
20 Clean up the mess that is collectpads, add comments and
22 Maintain a separate pad list so we can add pads while
23 collecting the other ones. For this we need a new separate
25 Fix memory leak in finalize.
26 Refactor some weird code to set/unset pad flushing flags, mark
28 Don't crash in _available, _read, _flush when we're EOS.
30 * tests/check/libs/.cvsignore:
31 Ignore adapter check binary.
33 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
35 * gst/gstindex.c: (gst_index_resolver_get_type):
36 * plugins/elements/gstfakesink.c:
37 (gst_fake_sink_state_error_get_type):
38 * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
39 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
40 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
41 Const-ify GEnumValue arrays.
43 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
45 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
46 Add test case for flags + gst_buffer_make_metadata_writable().
48 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
50 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
51 gst_buffer_make_metadata_writable() should maintain the
52 buffer flags (those that make sense at least) (see #340859).
54 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
56 * tools/gst-inspect.c:
58 * tools/gst-typefind.c:
59 * tools/gst-xmlinspect.c:
61 Fix up includes: need to include stdlib.h in tools.h for exit().
63 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
65 * gst/gsttaglist.c: (_gst_tag_initialize):
67 API: add GST_TAG_IMAGE tag (#340721).
69 2006-05-08 Wim Taymans <wim@fluendo.com>
72 Added some docs for the segment query.
74 2006-05-08 Wim Taymans <wim@fluendo.com>
76 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
77 (gst_base_src_loop), (gst_base_src_change_state):
78 Always push non-flushing serialized events in the streaming
81 2006-05-08 Thomas Vander Stichele <thomas at apestaart dot org>
83 * gst/gsterror.c: (_gst_stream_errors_init):
84 Add a missing error string.
86 2006-05-08 Jan Schmidt <thaytan@mad.scientist.com>
88 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
89 Add applied_rate to the debug
91 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
92 Copy applied_rate into the outgoing NEWSEGMENT event
94 2006-05-08 Wim Taymans <wim@fluendo.com>
96 Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
98 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
99 (gst_base_sink_change_state):
100 call ::unlock before taking the PREROLL_LOCK so we can safely
101 handle elements that lock in ::render.
104 2006-05-08 Edward Hervey <edward@fluendo.com>
106 * autogen.sh: (CONFIGURE_DEF_OPT):
107 Darwin's libtoolize is in fact called glibtoolize.
108 Adding glibtoolize to the list of accepted names for libtoolize.
110 2006-05-08 Wim Taymans <wim@fluendo.com>
112 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
113 Unify error handling, don't post an error message
114 when a push() returns EOS but perform our normal EOS
115 handling code. Fixes #340772.
117 2006-05-08 Wim Taymans <wim@fluendo.com>
119 * docs/design/part-overview.txt:
120 Make upsteam/downstream concepts more clear.
121 Give an example of serialized/non-serialized events.
123 * docs/design/part-events.txt:
124 * docs/design/part-streams.txt:
125 Mention applied_rate.
127 * docs/design/part-trickmodes.txt:
128 Mention applied rate, flesh out some more use cases.
130 * gst/gstevent.c: (gst_event_new_new_segment),
131 (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
132 (gst_event_parse_new_segment_full), (gst_event_new_tag),
133 (gst_event_parse_tag), (gst_event_new_buffer_size),
134 (gst_event_parse_buffer_size), (gst_event_new_qos),
135 (gst_event_parse_qos), (gst_event_parse_seek),
136 (gst_event_new_navigation):
138 Add applied_rate field to NEWSEGMENT event.
139 API: gst_event_new_new_segment_full()
140 API: gst_event_parse_new_segment_full()
142 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
143 (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
144 (gst_segment_to_stream_time), (gst_segment_to_running_time):
146 Add applied_rate to GstSegment structure.
147 Make calculation of stream_time and running_time more correct
148 wrt rate/applied_rate.
150 API: GstSegment::applied_rate field
151 API: gst_segment_set_newsegment_full();
153 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
154 (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
155 * libs/gst/base/gstbasetransform.c:
156 (gst_base_transform_sink_eventfunc),
157 (gst_base_transform_handle_buffer):
158 Parse and use applied_rate in the GstSegment field.
160 * tests/check/gst/gstevent.c: (GST_START_TEST):
161 Add check for applied_rate field.
163 * tests/check/gst/gstsegment.c: (GST_START_TEST),
165 Add more checks for various GstSegment operations.
167 2006-05-08 Wim Taymans <wim@fluendo.com>
169 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
170 (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
171 (gst_base_sink_get_position), (gst_base_sink_change_state):
172 Store the sync time of the buffer end position separatly in a
173 new variable eos_rtime so we can properly sync the EOS event.
175 Fix the docs for gst_base_sink_set_qos_enabled().
176 Don't set segment start to invalid value when we receive a
178 get closer to handling position reporting for negative rates
181 2006-05-07 Stefan Kost <ensonic@users.sf.net>
184 Docs about how to print caps for debug purposes.
186 * gst/gstpadtemplate.c: (gst_static_pad_template_get):
187 use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
189 2006-05-07 Stefan Kost <ensonic@users.sf.net>
192 use full enum names and preprend a '%' in docs strings to make recent
193 gtk-doc turn that into a link
195 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
197 * docs/manual/basics-bins.xml:
198 * docs/manual/basics-bus.xml:
199 * docs/manual/basics-pads.xml:
200 Some typo fixes, some additions, some clarifications.
202 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
204 * tools/gst-inspect.c: (main):
205 * tools/gst-launch.c: (main):
206 * tools/gst-run.c: (main):
207 * tools/gst-typefind.c: (main):
208 * tools/gst-xmlinspect.c: (main):
209 Use the string passed to g_option_context_new() for
210 what it's intended for - the program name is already
213 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
216 * tools/gst-inspect.c: (main):
217 * tools/gst-launch.c: (main):
218 * tools/gst-xmlinspect.c: (main):
220 Add back --version command line option (#340460).
222 * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
223 Add --version option and use GOption for argument parsing; refactor a
224 bit; accept directories as arguments and recurse into them; lastly,
225 print a decent error message when things go wrong.
227 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
229 * docs/manual/basics-bins.xml:
230 Don't mention GstThread (#340611)
231 * docs/manual/basics-elements.xml:
232 Update link to GObject tutorial (#340607)
234 2006-05-05 Wim Taymans <wim@fluendo.com>
237 * gst/gstminiobject.c:
238 Add note about refcounting and miniobject/buffer writeability
239 to docs. Fixes #340604
241 * gst/gstelementfactory.h:
242 Added some explanation about @klass.
244 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
246 * docs/manual/intro-motivation.xml:
247 * docs/manual/manual.xml:
248 Avoid CORBA & Bonobo references (#340598)
250 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
252 * docs/manual/basics-bus.xml:
253 * docs/manual/basics-pads.xml:
254 Fix up some inaccuracies and omissions (#340609)
256 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
259 Small typo in docs (#340625)
261 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
263 * gst/parse/Makefile.am:
264 Make 'make -j' proof (see #340698).
266 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
269 Require GLib-2.8 here as well.
271 2006-05-05 Wim Taymans <wim@fluendo.com>
274 * gst/gst.c: (init_pre):
275 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
276 (gst_object_unref), (gst_object_replace), (gst_object_dispose),
277 (gst_object_dispatch_properties_changed):
279 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
280 * gst/gststructure.c: (gst_structure_set_valist):
281 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
282 Remove pre glib2.8 compatibility, fixes #340508
284 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
287 Mention type of tags in doc blurbs.
289 2006-05-04 Jan Schmidt <thaytan@mad.scientist.com>
291 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
292 (gst_pad_configure_src), (gst_pad_push):
293 Restore acceptcaps checking behaviour now that good plugins have
296 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
298 Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
309 * gst/parse/Makefile.am:
310 * libs/gst/base/gstadapter.c:
311 * libs/gst/base/gstbasesrc.c:
312 * libs/gst/base/gstpushsrc.c:
313 * libs/gst/base/gsttypefindhelper.c:
314 * plugins/elements/gstfakesrc.c:
315 * plugins/elements/gstidentity.c:
316 Make sure gstprivate.h and/or config.h are
317 always included first, otherwise some of our
318 defines (like _FILE_OFFSET_BITS) might be
319 redefined in the system headers. Fixes build
320 on opensolaris (#340016).
322 2006-05-04 Wim Taymans <wim@fluendo.com>
324 * docs/libs/gstreamer-libs-sections.txt:
325 API: addition: gst_adapter_take_buffer()
327 * libs/gst/base/gstadapter.c: (gst_adapter_push),
328 (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
329 (gst_adapter_available_fast):
330 * libs/gst/base/gstadapter.h:
331 Prepare for optimizing the hell out of this hugely inefficient
333 Added gst_adapter_take_buffer() so we can at least start thinking
334 about subbuffering and merging.
337 * tests/check/Makefile.am:
338 * tests/check/libs/adapter.c: (GST_START_TEST),
339 (gst_adapter_suite), (main):
340 Added GstAdapter check.
342 2006-05-04 Wim Taymans <wim@fluendo.com>
344 * docs/design/part-overview.txt:
345 Fix some typos, add blurb about buffer flags.
347 2006-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
349 * docs/libs/gstreamer-libs-sections.txt:
350 make sure GstBaseTransformClass shows up in the docs
351 * libs/gst/base/gstbasetransform.c:
352 * libs/gst/base/gstbasetransform.h:
353 move docs so gtk-doc picks it up now
355 2006-05-02 Stefan Kost <ensonic@users.sf.net>
357 * docs/libs/gstreamer-libs-sections.txt:
358 add missing symbols to docs
360 2006-05-02 Stefan Kost <ensonic@users.sf.net>
362 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
363 back out the newsegment handling change, see #340060 for ongoing
366 2006-04-30 Tim-Philipp Müller <tim at centricular dot net>
368 * tools/gst-run.c: (get_candidates), (main):
369 Fix wrong g_file_test() usage (see glib docs for why it doesn't
370 work); fix typo in error message. Fixes #340079.
372 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
374 * common/Makefile.am:
376 * docs/faq/Makefile.am:
377 * docs/gst/Makefile.am:
378 * docs/libs/Makefile.am:
379 * docs/manual/Makefile.am:
380 * docs/plugins/Makefile.am:
381 * docs/pwg/Makefile.am:
382 * docs/slides/Makefile.am:
385 move upload.mak to common
387 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
389 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
390 add more asserts on refcounts
391 do more cleanup at end of tests
392 fix test leaks showing in FC5
394 2006-04-29 Stefan Kost <ensonic@users.sf.net>
396 * plugins/elements/gsttypefindelement.c:
397 (gst_type_find_element_handle_event):
398 reverted wrong change and reflowed code to avoid others falling into
401 2006-04-28 Stefan Kost <ensonic@users.sf.net>
403 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
404 fix changelog entry about last collectpads change,
405 add notes about proper fix
407 2006-04-28 Stefan Kost <ensonic@users.sf.net>
410 * gst/gstregistry.c: (gst_registry_scan_path_level),
411 (gst_registry_scan_path):
413 only write out registry if it has changed, fixes #338339
415 2006-04-28 Stefan Kost <ensonic@users.sf.net>
419 * plugins/elements/gstcapsfilter.c:
420 * plugins/elements/gstfakesink.c:
421 * plugins/elements/gstfakesrc.c:
422 * plugins/elements/gstfdsink.c:
423 * plugins/elements/gstfdsrc.c:
424 * plugins/elements/gstfilesink.c:
425 * plugins/elements/gstfilesrc.c:
426 * plugins/elements/gstidentity.c:
427 * plugins/elements/gstqueue.c:
428 * plugins/elements/gsttee.c:
429 * plugins/elements/gsttypefindelement.c:
430 (gst_type_find_element_handle_event):
431 make GstElementDetails const
433 2006-04-28 Stefan Kost <ensonic@users.sf.net>
435 * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
436 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
437 (gst_collect_pads_is_collected), (gst_collect_pads_event):
438 more detailed debug and formatting cleanup,
439 forward newsegments to src-pad (so that e.g. adder not eats them)
441 2006-04-28 Stefan Kost <ensonic@users.sf.net>
443 * gst/gstutils.c: (gst_element_link_pads):
446 2006-04-28 Stefan Kost <ensonic@users.sf.net>
448 * libs/gst/controller/gstcontroller.c:
449 (gst_controller_sync_values):
451 * tests/check/libs/controller.c: (GST_START_TEST),
452 (gst_controller_suite):
453 a new test for live value handling
455 2006-04-28 Wim Taymans <wim@fluendo.com>
457 * gst/gstutils.c: (push_and_ref):
458 Added some more docs.
459 Fix refcount issue whith gst_element_found_tags() helper
460 function. Fixes #338335
462 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
463 Added testsuite for gst_element_found_tags().
465 2006-04-28 Michael Smith <msmith@fluendo.com>
467 * gst/gstvalue.c: (gst_value_serialize_flags):
468 Avoid NULL dereference when trying to serialize flags containing
471 2006-04-28 Michael Smith <msmith@fluendo.com>
473 * plugins/elements/gsttypefindelement.c:
474 (gst_type_find_element_handle_event):
475 If we get EOS before any data is accumulated, don't use
476 uninitialised local variables.
478 2006-04-28 Michael Smith <msmith@fluendo.com>
480 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
481 (gst_dp_event_from_packet):
482 Fixes in reading/writing events over GDP (not currently used?) -
483 dereferencing NULL events for unknown/invalid event types, memory
484 leak, and change g_warning to GST_WARNING.
486 2006-04-28 Wim Taymans <wim@fluendo.com>
488 * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
489 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
490 (gst_base_sink_get_position), (gst_base_sink_change_state):
491 When frame dropping is enabled, we should not ignore frames
493 Update some documentation.
495 2006-04-28 Wim Taymans <wim@fluendo.com>
497 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
498 (gst_base_src_send_event), (gst_base_src_change_state):
499 Documentation updates.
501 2006-04-28 Wim Taymans <wim@fluendo.com>
503 * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
504 (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
505 handle EAGAIN, EINTR and short writes correctly. Also clean
506 up some error cases, avoid a deadlock on bad file descriptors and
507 use GST_DEBUG_OBJECT.
510 2006-04-28 Wim Taymans <wim@fluendo.com>
512 * gst/gstvalue.c: (gst_value_serialize_buffer),
513 (gst_value_deserialize_buffer):
514 Don't try to serialize a GValue with a NULL buffer.
517 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
518 Added check for serialisation of NULL buffers.
520 2006-04-28 Wim Taymans <wim@fluendo.com>
522 * gst/gstminiobject.c: (gst_value_take_mini_object):
523 Taking a NULL miniobject is valid, fix the case where
524 we try to unref the NULL miniobject.
526 2006-04-28 Wim Taymans <wim@fluendo.com>
528 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
530 * gst/gstbin.c: (gst_bin_handle_message_func):
532 Don't leak bin refcount when a state recalc is
533 in progress and we delay another one #339808.
535 2006-04-28 Wim Taymans <wim@fluendo.com>
537 * docs/design/part-TODO.txt:
538 Mention QoS as an ongoing work item.
540 * docs/design/part-buffering.txt:
541 New doc about buffering that needs to be fleshed out
544 * docs/design/part-qos.txt:
545 More QoS policy for decoders/demuxers/transforms
547 * docs/design/part-trickmodes.txt:
550 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
555 === release 0.10.5 ===
557 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
560 releasing 0.10.5, "Fogo"
562 2006-04-22 Thomas Vander Stichele <thomas at apestaart dot org>
564 patch by: Wim Taymans
566 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
567 (gst_pad_configure_src), (gst_pad_push):
568 * gst/gstpipeline.c: (gst_pipeline_init):
569 Fix internal data flow errors. Fixes #338711.
571 2006-04-12 Wim Taymans <wim@fluendo.com>
573 * tests/check/gst/gstelement.c: (GST_START_TEST):
574 Don't leak the factory.
576 2006-04-12 Thomas Vander Stichele <thomas at apestaart dot org>
579 * win32/common/config.h:
582 2006-04-12 Tim-Philipp Müller <tim at centricular dot net>
584 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
585 (gst_controller_unset_all):
586 Free allocated GstTimedValues when freeing list nodes.
587 Should fix leaks 'make check-valgrind' complains about.
589 * win32/common/libgstcontroller.def:
590 Add gst_controller_unset_all.
592 2006-04-11 Stefan Kost <ensonic@users.sf.net>
594 * docs/libs/gstreamer-libs-sections.txt:
595 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
596 (gst_controller_unset_all):
597 * libs/gst/controller/gstcontroller.h:
598 API: Added new method gst_controller_unset_all()
599 fixed gst_controller_unset()
600 * tests/check/libs/controller.c: (GST_START_TEST),
601 (gst_controller_suite):
602 Added two testcases for new and fixed method
604 2006-04-11 Tim-Philipp Müller <tim at centricular dot net>
606 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
607 MSG_DONTWAIT is not defined on Cygwin, so work
608 around that (fixes #317048).
610 2006-04-11 Wim Taymans <wim@fluendo.com>
612 * gst/gstelementfactory.c: (gst_element_register),
613 (gst_element_factory_create), (gst_element_factory_make):
616 Updated docs (Fixes #131079)
618 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
621 * tests/check/gst/gstelement.c: (GST_START_TEST),
623 Added testcase for elementfactory class field.
625 2006-04-10 Wim Taymans <wim@fluendo.com>
628 Added some more docs.
630 * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
631 (gst_base_sink_reset_qos):
632 Calculate more accurate rate values.
634 2006-04-09 Sebastien Moutte <sebastien@moutte.net>
637 add a new #ifdef to use __declspec(dllimport) only for
638 other modules and not for gstreamer core
639 * gst/gstbasesink.c: (gst_base_sink_perform_qos):
640 use gst_guint64_to_gdouble for conversion
641 * win32/common/libgstreamer.def:
642 add new exported functions
643 * win32/vs6/gst_inspect.dsp:
644 * win32/vs6/gst_launch.dsp:
645 * win32/vs6/libgstbase.dsp:
646 * win32/vs6/libgstcontroller.dsp:
647 * win32/vs6/libgstcoreelements.dsp:
648 * win32/vs6/libgstdataprotocol.dsp:
649 * win32/vs6/libgstnet.dsp:
652 2006-04-08 Stefan Kost <ensonic@users.sf.net>
654 * gst/gstbuffer.c: (gst_subbuffer_class_init):
655 * gst/gstclock.c: (gst_clock_class_init):
656 * gst/gstelement.c: (gst_element_class_init):
657 * gst/gstindex.c: (gst_index_class_init):
658 * gst/gstindexfactory.c: (gst_index_factory_class_init):
659 * gst/gstobject.c: (gst_object_class_init),
660 (gst_signal_object_class_init):
661 * gst/gstpad.c: (gst_pad_class_init):
662 * gst/gstpadtemplate.c: (gst_pad_template_class_init):
663 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
664 * gst/gstregistry.c: (gst_registry_class_init):
665 * gst/gstsystemclock.c: (gst_system_clock_class_init):
666 * gst/gsttask.c: (gst_task_class_init):
667 * gst/gstxml.c: (gst_xml_class_init):
668 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
669 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
671 * libs/gst/controller/gstcontroller.c:/
672 (_gst_controller_class_init):
673 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
674 * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
675 * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
676 * tests/old/examples/plugins/example.c: (gst_example_class_init):
677 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
678 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
680 2006-04-08 Tim-Philipp Müller <tim at centricular dot net>
682 * gst/gstpad.c: (gst_pad_link):
683 Must set peer pads before calling the link function, otherwise
684 a task started from a link function might get a flow-not-linked
685 result when trying to push because the other thread where the
686 linking happens hasn't had a chance to set the peers yet. This
687 might happen for example when a queue gets linked to a downstream
688 element, as queue starts a streaming task when its source pad
689 gets linked. Happens in real life when playing back flac/musepack
690 files in playbin (#332390).
692 2006-04-08 Stefan Kost <ensonic@users.sf.net>
696 * libs/gst/base/gstadapter.h:
697 * libs/gst/base/gstbasesink.h:
698 * libs/gst/base/gstbasesrc.h:
699 * libs/gst/base/gstbasetransform.h:
700 * libs/gst/base/gstcollectpads.h:
701 * libs/gst/base/gstpushsrc.h:
702 Fix broken GObject macros
704 2006-04-07 Wim Taymans <wim@fluendo.com>
706 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
707 Initialize start and stop times, thanks valgrind.
709 2006-04-07 Wim Taymans <wim@fluendo.com>
711 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
712 Be a bit nicer to badly behaving upstream elements that expect
713 us to deal with non TIME segments and timestamps (such as fakesrc
716 2006-04-07 Wim Taymans <wim@fluendo.com>
719 Small documentation clarification about the signal watch.
721 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
722 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
723 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
724 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
725 (gst_base_sink_get_position_last),
726 (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
727 Convert and store timestamps in stream time and running time, the
728 raw timestamps are not usefull, also document this better.
729 Use different window sizes for good and bad QoS observations so
730 we react to badness a little quicker.
731 Keep track of the amount of rendered and dropped buffers.
732 Send QoS timestamps in running time.
734 * libs/gst/base/gstbasetransform.c:
735 (gst_base_transform_sink_eventfunc),
736 (gst_base_transform_handle_buffer):
737 Compare QoS timestamps against running time.
739 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
744 2006-04-06 Michael Smith <msmith@fluendo.com>
746 * gst/gstpad.c: (gst_pad_set_property):
747 Use g_value_get_object() instead of g_value_dup_gst_object(),
748 to avoid double-reffing the pad template (which we then sink,
749 so this worked previously if (and only if) the pad template
752 * gst/gstpadtemplate.c: (gst_pad_template_init),
753 (gst_pad_template_pad_created):
754 Never return floating references to pad templates, create
755 them as initially-sunken.
757 Document an extra function (and make this stop sinking our
758 pad template, since that is now guaranteed to do nothing,
759 since we created it sunken).
764 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
766 * gst/gstinfo.c: (__gst_in_valgrind):
769 * plugins/elements/gsttypefindelement.c:
770 (gst_type_find_element_chain):
771 Don't leak buffer caps.
773 2006-04-06 Michael Smith <msmith@fluendo.com>
775 * gst/parse/grammar.y:
776 Fix a leak in parse-launch for any source-or-sink named element
779 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
780 Unref the pipeline if it exists after we've failed parsing.
782 2006-04-05 Michael Smith <msmith@fluendo.com>
784 * gst/gstpipeline.c: (gst_pipeline_init):
785 When we create a pipeline bus, initially create it in flushing mode.
786 Fixes leaks in at least one test, and makes a new pipeline work the
787 same as one that has gone to READY and then back to NULL.
792 2006-04-05 Michael Smith <msmith@fluendo.com>
794 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
795 Unref a pad we reffed.
796 * tests/check/gst/gstutils.c: (GST_START_TEST):
799 2006-04-05 Michael Smith <msmith@fluendo.com>
801 * gst/gstquery.c: (gst_query_set_formats),
802 (gst_query_set_formatsv):
803 Fix leaking GValues in queries, as shown by valgrind/testsuite.
805 2006-04-05 Michael Smith <msmith@fluendo.com>
807 * tests/check/generic/sinks.c: (GST_START_TEST):
808 Fix a variety of memleaks in sinks check, which are only sometimes
809 shown by running the tests under valgrind (weird?).
811 2006-04-05 Jan Schmidt <thaytan@mad.scientist.com>
813 * docs/version.entities.in:
814 Fix the substituted entity name after thomas' changes on the
817 2006-04-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
819 * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
822 2006-04-05 Andy Wingo <wingo@pobox.com>
824 * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
826 * libs/gst/base/gstbasetransform.c
827 (gst_base_transform_sink_eventfunc): When resetting our segment on
828 FLUSH_STOP, also update the flag saying we haven't seen a
831 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
833 Patch by: Paolo Borelli <pborelli at katamail dot com>
835 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
836 (gst_plugin_check_license):
837 minor clean-ups: G_DEFINE_TYPE already takes care of the
838 parent_class stuff, no need to do it twice. Mark array of
839 license strings as constant. (#337103)
841 2006-04-04 Michael Smith <msmith@fluendo.com>
843 * tools/gst-inspect.c: (print_element_list):
844 Free the right plugin list; fixes a memory leak.
846 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
848 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
850 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
851 Don't error out on empty buffers (#336945).
853 2006-04-04 Jan Schmidt <thaytan@mad.scientist.com>
855 * docs/libs/gstreamer-libs-sections.txt:
857 * libs/gst/base/gstbasesink.c:
858 * libs/gst/base/gstbasesink.h:
859 * libs/gst/base/gstbasesrc.c:
860 * libs/gst/base/gstbasesrc.h:
861 Documentation updates. Make BaseSink and BaseSrc docs contain the
862 class structure so that people can actually see the prototypes for
863 virtual functions they're supposed to be overriding.
865 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
867 * plugins/elements/gsttypefindelement.c:
868 (gst_type_find_element_chain):
869 More debug info; when skipping typefinding, send cached
872 2006-04-01 Thomas Vander Stichele <thomas at apestaart dot org>
875 use new AS_VERSION and AS_NANO macros
876 * gst/gst-i18n-lib.h:
879 * gst/gstversion.h.in:
880 * win32/common/config.h:
881 * win32/common/config.h.in:
884 2006-03-31 Michael Smith <msmith@fluendo.com>
886 * plugins/elements/gsttypefindelement.c:
887 (gst_type_find_element_chain):
888 Do not typefind content if the buffers already have caps.
889 Neccesary for icydemux (#333657), and the right thing to do anyway.
891 2006-03-30 Wim Taymans <wim@fluendo.com>
893 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
894 (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
895 (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
896 (gst_base_sink_record_qos_observation),
897 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
898 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
899 (gst_base_sink_change_state):
900 More QoS measurements as described in the design doc.
901 Get rid of ringbuffer with observations, running average is
902 more simple and equally good.
903 Calculates valid proportion now.
904 Added beginning of flood measurement.
906 2006-03-29 Wim Taymans <wim@fluendo.com>
908 * docs/design/part-qos.txt:
910 Small documentation updates and additions.
912 2006-03-29 Wim Taymans <wim@fluendo.com>
914 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
915 (gst_base_src_send_event), (gst_base_src_loop),
916 (gst_base_src_change_state):
917 Perform the EOS logic when we reach the segment stop position.
918 Fix compilation on gcc4.1
920 2006-03-29 Wim Taymans <wim@fluendo.com>
922 Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
924 * plugins/elements/gstqueue.c: (gst_queue_init),
925 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
926 (gst_queue_set_property):
927 * plugins/elements/gstqueue.h:
928 In queue, when EOS is received, if minimum threshold > max_size -
929 current_level, there is chance that queue blocks forever in conditional
930 item del wait. This is because the queue is not emptied completely due
931 to minimum threshold. Here is another approach. Instead of setting
932 cur_levels to max in EOS, just zero all minimum threshold levels. This
933 should make sure that queue gives out all data. When going to READY
934 (stop) state, just reset the original minimum threshold levels.
937 2006-03-29 Tim-Philipp Müller <tim at centricular dot net>
939 * plugins/elements/gsttypefindelement.c: (stop_typefinding),
940 (gst_type_find_element_handle_event),
941 (gst_type_find_element_send_cached_events),
942 (gst_type_find_element_change_state):
943 * plugins/elements/gsttypefindelement.h:
944 When typefinding is done in push mode, we should cache
945 events we receive during typefinding instead of just
946 dropping them (e.g. newsegment, custom events from
947 dvdreadsrc etc.) and then send them out once we've
948 determined the type of the stream (and decodebin
949 has had a chance to plug in a decoder/demuxer).
951 2006-03-27 Wim Taymans <wim@fluendo.com>
953 * docs/design/part-qos.txt:
956 2006-03-27 Wim Taymans <wim@fluendo.com>
958 Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
960 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
961 (gst_base_src_send_event), (gst_base_src_change_state):
962 Handle element seek correctly when we are streaming.
965 2006-03-24 Michael Smith <msmith@fluendo.com>
967 * docs/faq/gst-uninstalled:
968 Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
969 allow you to correctly run intalled applications built against old
970 core, using plugins that require updated core (e.g. running
971 installed totem against a full uninstalled gstreamer stack)
973 2006-03-24 Stefan Kost <ensonic@users.sf.net>
975 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
978 2006-03-24 Wim Taymans <wim@fluendo.com>
980 * docs/gst/gstreamer-sections.txt:
981 Rearrange the order of the methods so that related methods
982 are grouped together in sections.
984 2006-03-24 Stefan Kost <ensonic@users.sf.net>
987 Little clarification in the docs
989 2006-03-24 Stefan Kost <ensonic@users.sf.net>
993 * plugins/elements/gstidentity.c:
994 * plugins/elements/gstqueue.c:
995 * plugins/elements/gsttee.c:
996 * plugins/elements/gsttypefindelement.c:
997 GST_ELEMENT_DETAILS formatting
999 2006-03-24 Wim Taymans <wim@fluendo.com>
1001 * libs/gst/base/gstbasesink.h:
1002 Only add fields, not insert or we break ABI.
1004 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
1006 * win32/common/libgstbase.def:
1007 * win32/common/libgstreamer.def:
1008 Update, add recently added functions.
1010 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
1012 * docs/gst/gstreamer-sections.txt:
1013 * gst/gstutils.c: (gst_pad_query_peer_position),
1014 (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
1016 API: add some new utility functions:
1017 - gst_pad_query_peer_position()
1018 - gst_pad_query_peer_duration()
1019 - gst_pad_query_peer_convert()
1021 2006-03-23 Wim Taymans <wim@fluendo.com>
1023 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
1024 (gst_base_sink_init), (gst_base_sink_finalize),
1025 (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
1026 (gst_base_sink_set_property), (gst_base_sink_get_property),
1027 (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
1028 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
1029 (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
1030 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
1031 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
1032 (gst_base_sink_preroll_object), (gst_base_sink_event),
1033 (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
1034 (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
1035 (gst_base_sink_query), (gst_base_sink_change_state):
1036 Decouple max-lateness and the fact that QoS messages are generated
1037 with a new property (qos).
1038 added API: GstBaseSink::async_play()
1039 Add vmethod so subclasses can be notified of ASYNC playing
1041 Collect timestamp start and stop to report better current
1042 position in EOS/PLAYING/PAUSED/READY/NULL.
1043 Refactor QoS/frame dropping and other measurements.
1044 API: GstBaseSrc::qos
1047 * libs/gst/base/gstbasesink.h:
1048 Added Private struct.
1049 API: gst_base_sink_set_qos_enabled()
1050 API: gst_base_sink_is_qos_enabled()
1052 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
1054 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
1055 If compiling against GLib-2.8 or newer, try to read the
1056 registry file using GMappedFile first before falling back
1057 to fopen() + fread() (#332151).
1059 2006-03-22 Wim Taymans <wim@fluendo.com>
1061 * gst/gstinfo.c: (gst_debug_set_active),
1062 (gst_debug_category_set_threshold):
1063 Disable debugging unless explicitly activated.
1066 2006-03-22 Wim Taymans <wim@fluendo.com>
1068 * gst/gstelement.c: (gst_element_set_locked_state),
1069 (gst_element_dispose):
1070 Cleanup the error case.
1072 * gst/gstobject.c: (gst_object_dispose):
1073 print a critical when some object was disposed with
1074 a parent, also revive the object since it might
1077 2006-03-22 Tim-Philipp Müller <tim at centricular dot net>
1079 * tools/gst-launch.1.in:
1082 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
1085 * tests/check/Makefile.am:
1086 disable some tests when we don't have a registry
1087 * tests/check/gst/gstutils.c: (gst_utils_suite):
1088 don't build the part that needs parsing
1090 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
1093 * tests/examples/Makefile.am:
1094 fix --disable-parse build
1096 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1098 * tools/gst-feedback.1.in:
1099 Fix typo: s/feeback/feedback/ (#133494).
1101 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1103 * tools/Makefile.am:
1104 * tools/gst-launch.1.in:
1105 Add FILES section and correct entry about GST_REGISTRY_PATH
1106 environment variable (#133495; #133494).
1108 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1110 * tools/Makefile.am:
1111 * tools/gst-md5sum.1.in:
1112 * tools/gst-md5sum.c:
1113 Remove gst-md5sum and man page (the md5sink element
1114 required was removed ages ago)
1116 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1118 * gst/gststructure.c: (gst_structure_id_set_value):
1119 Make sure that string fields in structures/taglists
1120 contain valid UTF-8 - we don't want to pass rubbish to
1121 applications because of a buggy plugin (cp. #334167).
1123 2006-03-21 Edward Hervey <edward@fluendo.com>
1125 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
1126 (gst_bin_handle_message_func):
1127 * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
1128 * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
1129 (gst_element_set_bus_func):
1130 * gst/gstghostpad.c: (gst_proxy_pad_dispose):
1131 * gst/gstminiobject.c: (gst_value_set_mini_object),
1132 (gst_value_take_mini_object):
1133 * gst/gstpad.c: (gst_pad_set_pad_template):
1134 * gst/gstpipeline.c: (gst_pipeline_dispose),
1135 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
1136 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
1137 (gst_collect_pads_chain):
1138 * libs/gst/net/gstnettimeprovider.c:
1139 (gst_net_time_provider_set_property):
1140 Series of fixes for dereferenced pointers that gcc 4.1 complains about.
1141 It's in fact all issues with gst_*object_replace().
1143 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1145 Patch by: Loïc Minier <lool + gnome at via dot ecp dot fr>
1147 * pkgconfig/gstreamer-check-uninstalled.pc.in:
1148 * pkgconfig/gstreamer-check.pc.in:
1149 Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
1151 2006-03-21 Edward Hervey <edward@fluendo.com>
1156 gst_[buffer|event|message]_ref() macros are replaced by a static
1157 inline functions because gcc-4.1 will about if the return value
1159 * tests/check/gst/gstevent.c: (event_probe):
1160 gst_event_ref now has to be given a GstEvent* , fix check accordingly.
1162 2006-03-20 Jan Schmidt <thaytan@mad.scientist.com>
1165 Add G_UNLIKELY to our boilerplate to optimise the 'already registered
1166 the type' case. (Closes: #335195 for now). In the future, when we
1167 depend on GLib 2.10, we could also intern the type name using
1168 g_intern_static_string()
1170 2006-03-20 Wim Taymans <wim@fluendo.com>
1172 * gst/gstbin.c: (gst_bin_handle_message_func),
1173 (bin_query_max_init), (bin_query_position_fold),
1174 (bin_query_position_done), (gst_bin_query):
1175 Position query should also take max of all streams.
1177 2006-03-20 Wim Taymans <wim@fluendo.com>
1179 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
1180 (gst_fake_src_finalize):
1181 Fix leaks in fakesrc.
1183 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
1184 Fix leaks in the testcase.
1186 2006-03-19 Sebastien Moutte <sebastien@moutte.net>
1188 * gst/gst_private.h:
1189 add win32 specific import decoration(__declspec(dllimport))
1190 for all extern GstDebugCategory * variables
1191 * win32/common/libgstbase.def:
1192 * win32/common/libgstcontroller.def:
1193 * win32/common/libgstreamer.def:
1194 Add some exports, remove empty lines
1195 * win32/common/libgstdataprotocol.def:
1196 * win32/common/libgstdataprotocol.dsp:
1197 * win32/common/libgstnet.def:
1198 * win32/common/libgstnet.dsp:
1199 new project files and exportation files added
1201 2006-03-19 Wim Taymans <wim@fluendo.com>
1203 * tests/check/libs/basesrc.c: (eos_event_counter):
1204 Use proper return value for probe.
1206 2006-03-17 Wim Taymans <wim@fluendo.com>
1208 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
1210 Don't leak buffers, caps and pads on negotiation errors.
1212 2006-03-16 Stefan Kost <ensonic@users.sf.net>
1215 * docs/faq/dependencies.xml:
1216 * docs/faq/developing.xml:
1218 * docs/faq/general.xml:
1219 * docs/faq/getting.xml:
1220 * docs/faq/legal.xml:
1221 * docs/faq/troubleshooting.xml:
1222 * docs/faq/using.xml:
1223 Faq review and update.
1225 2006-03-16 Jan Schmidt <thaytan@mad.scientist.com>
1227 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
1229 Don't pound the cpu to pieces by checking get_caps when accept_caps
1230 is called with the same caps as the pad already has.
1231 Use GST_DEBUG_OBJECT when outputting caps change information.
1233 2006-03-15 Wim Taymans <wim@fluendo.com>
1235 * gst/gstclock.c: (gst_clock_class_init):
1238 2006-03-15 Jan Schmidt <thaytan@mad.scientist.com>
1243 * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
1244 (gst_pad_accept_caps), (gst_pad_configure_sink),
1245 (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
1246 Make the default acceptcaps behaviour be to check the requested
1247 caps against the gst_pad_get_caps output.
1249 Ensure that gst_pad_accept_caps is used to check caps when a pad
1250 doesn't have a setcaps function, so that pads automatically refuse
1251 caps that they don't allow in their pad template. (Fixes #332986)
1253 When a buffer with attached caps is pushed, ensure that the source
1254 pad receives those caps even if the element didn't call
1255 gst_pad_set_caps first.
1257 2006-03-15 Wim Taymans <wim@fluendo.com>
1259 * libs/gst/base/gstadapter.c:
1262 2006-03-15 Tim-Philipp Müller <tim at centricular dot net>
1264 * win32/common/libgstbase.def:
1265 * win32/common/libgstcontroller.def:
1266 * win32/common/libgstreamer.def:
1267 Add a whole bunch of missing functions (#334434).
1269 2006-03-14 Wim Taymans <wim@fluendo.com>
1271 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
1272 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
1273 (gst_base_sink_do_sync), (gst_base_sink_do_qos):
1274 Better debug info when we receive a segment event.
1275 Reorganize a bit so we can pass the get_times() results around.
1276 Use the segment format when calculating the running time.
1277 Don't do QoS is sync is disabled or we have no clock or the
1278 element does not want us to sync to the clock.
1279 Don't drop buffers if QoS is disabled for now.
1281 2006-03-14 Wim Taymans <wim@fluendo.com>
1283 * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
1284 Marked the stats property as unimplemented so people don't get
1286 Add debug message when regression goes wrong.
1287 Added some more docs.
1289 2006-03-14 Wim Taymans <wim@fluendo.com>
1291 * gst/gstsegment.c: (gst_segment_to_stream_time):
1292 Return correct return type in case of errors.
1294 2006-03-14 Wim Taymans <wim@fluendo.com>
1296 * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
1297 Don't segfault on invalid formats.
1299 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
1301 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
1302 Can't use gst_segment_to_running_time() when the segment
1303 is not in GST_TIME_FORMAT (like with filesink, for example).
1304 Stops flac encoding pipelines from spewing critical warnings
1307 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
1309 * gst/gstpipeline.c: (gst_pipeline_class_init):
1310 Add 'Since: 0.10.5' to gtk-doc blurb for added property.
1312 * plugins/elements/gsttypefindelement.c:
1313 (gst_type_find_element_handle_event):
1314 Don't try to typefind empty streams.
1316 2006-03-14 Wim Taymans <wim@fluendo.com>
1318 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
1319 (gst_base_sink_do_qos):
1320 Separate QoS calculation.
1321 Only drop buffers when lateness is bigger than the
1322 duration of the buffer.
1324 2006-03-13 Wim Taymans <wim@fluendo.com>
1326 * gst/gstpipeline.c: (gst_pipeline_set_property),
1327 (gst_pipeline_get_property), (do_pipeline_seek),
1328 (gst_pipeline_change_state), (gst_pipeline_set_delay),
1329 (gst_pipeline_get_delay):
1330 Don't deadlock when reading properties.
1332 2006-03-13 Wim Taymans <wim@fluendo.com>
1334 * libs/gst/base/gstbasetransform.c:
1335 (gst_base_transform_class_init), (gst_base_transform_init),
1336 (gst_base_transform_sink_event),
1337 (gst_base_transform_sink_eventfunc),
1338 (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
1339 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
1340 (gst_base_transform_set_property),
1341 (gst_base_transform_get_property),
1342 (gst_base_transform_change_state), (gst_base_transform_update_qos),
1343 (gst_base_transform_set_qos_enabled),
1344 (gst_base_transform_is_qos_enabled):
1345 * libs/gst/base/gstbasetransform.h:
1346 Make basetransform virtual method for src events too.
1347 Handle QOS in basetransform.
1348 API: gst_base_transform_update_qos()
1349 API: gst_base_transform_set_qos_enabled()
1350 API: gst_base_transform_is_qos_enabled()
1352 2006-03-13 Wim Taymans <wim@fluendo.com>
1354 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
1355 (gst_base_sink_do_sync):
1357 Use QOS debug category.
1359 2006-03-13 Wim Taymans <wim@fluendo.com>
1361 * plugins/elements/gstqueue.c:
1362 Very small doc update.
1364 2006-03-13 Wim Taymans <wim@fluendo.com>
1366 * gst/gst_private.h:
1367 * gst/gstinfo.c: (_gst_debug_init):
1368 Added QOS debug category
1370 2006-03-13 Wim Taymans <wim@fluendo.com>
1372 * docs/gst/gstreamer-sections.txt:
1373 * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
1375 * gst/gstbus.c: (gst_bus_class_init):
1378 * gst/gstelement.c: (gst_element_set_locked_state):
1380 Documentation updates.
1382 * gst/gstpipeline.c: (gst_pipeline_get_type),
1383 (gst_pipeline_class_init), (gst_pipeline_init),
1384 (gst_pipeline_dispose), (gst_pipeline_set_property),
1385 (gst_pipeline_get_property), (do_pipeline_seek),
1386 (gst_pipeline_send_event), (gst_pipeline_change_state),
1387 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
1388 (gst_pipeline_get_delay):
1389 * gst/gstpipeline.h:
1390 Added methods for setting the delay.
1391 API: gst_pipeline_set_delay()
1392 API: gst_pipeline_get_delay()
1393 Add pipeline debug category
1396 Don't reset stream time when seek failed.
1398 2006-03-13 Wim Taymans <wim@fluendo.com>
1400 * docs/design/draft-klass.txt:
1401 * docs/design/part-clocks.txt:
1402 * docs/design/part-events.txt:
1403 * docs/design/part-gstbin.txt:
1404 * docs/design/part-gstpipeline.txt:
1405 * docs/design/part-messages.txt:
1406 * docs/design/part-negotiation.txt:
1407 * docs/design/part-overview.txt:
1408 * docs/design/part-preroll.txt:
1409 * docs/design/part-seeking.txt:
1410 * docs/design/part-states.txt:
1411 * docs/design/part-streams.txt:
1412 Documentation updates.
1414 2006-03-12 Julien MOUTTE <julien@moutte.net>
1416 * gst/gsttaglist.c: Fix rubbish docs that are encouraging
1417 us to leak strings...
1419 2006-03-12 Thomas Vander Stichele <thomas at apestaart dot org>
1421 * libs/gst/net/gstnettimeprovider.c:
1423 * win32/common/config.h:
1426 2006-03-12 Tim-Philipp Müller <tim at centricular dot net>
1428 Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
1431 Don't check for libgnomeui (leftover from old examples
1432 that aren't built or disted any longer) (#334303).
1434 2006-03-11 Tim-Philipp Müller <tim at centricular dot net>
1436 * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
1437 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
1438 Emit RESOURCE_NO_SPACE_LEFT error here as well when
1439 there's no space left on the device.
1441 2006-03-10 Tim-Philipp Müller <tim at centricular dot net>
1444 Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
1445 to cast the input to GstClockTime before comparing with
1446 another GstClockTime value.
1448 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
1453 === release 0.10.4 ===
1455 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
1458 releasing 0.10.4, "Light"
1460 2006-03-10 Michael Smith <msmith@fluendo.com>
1462 * libs/gst/dataprotocol/dataprotocol.c:
1463 Fix docs for dataprocotol to not get the return types completely
1464 wrong for a few functions.
1466 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
1468 * docs/gst/gstreamer-sections.txt:
1469 * gst/gstpipeline.c: (gst_pipeline_class_init),
1470 (gst_pipeline_init), (gst_pipeline_set_property),
1471 (gst_pipeline_get_property), (gst_pipeline_change_state),
1472 (gst_pipeline_set_auto_flush_bus),
1473 (gst_pipeline_get_auto_flush_bus):
1474 * gst/gstpipeline.h:
1475 Add new API: gst_pipeline_set_auto_flush_bus() and
1476 gst_pipeline_get_auto_flush_bus() to disable automatic
1477 flushing of the pipeline's GstBus when going from READY
1478 to NULL state (#332045).
1480 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
1482 * docs/gst/gstreamer-sections.txt:
1483 * gst/gsturi.c: (gst_uri_has_protocol):
1485 Add new API: gst_uri_has_protocol() (#333779).
1487 2006-03-09 Wim Taymans <wim@fluendo.com>
1489 * gst/gstclock.c: (gst_clock_entry_new),
1490 (gst_clock_id_compare_func), (gst_clock_id_wait),
1491 (gst_clock_id_wait_async), (gst_clock_id_unschedule),
1492 (gst_clock_init), (gst_clock_get_internal_time),
1493 (gst_clock_set_master), (do_linear_regression),
1494 (gst_clock_add_observation), (gst_clock_set_property):
1498 Fix a possible segfault when the window-size is made smaller.
1499 Calculate jitter before performing the clock wait. Ideally
1500 the clock implementation should calculate jitter but we need
1501 API breakage for that.
1503 * gst/gstsystemclock.c: (gst_system_clock_init):
1506 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
1507 Remove leftover else
1509 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
1510 (gst_systemclock_suite):
1511 Added check to test GST_CLOCK_DIFF.
1513 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
1515 * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
1516 (gst_type_find_helper_get_range):
1517 If we are provided with the size, we should implement
1518 GstTypeFind::get_length, so that typefind functions who
1519 want to can actually peek at the middle of a file.
1521 2006-03-08 Tim-Philipp Müller <tim at centricular dot net>
1523 * docs/manual/advanced-dataaccess.xml:
1524 Add some very very basic error checking.
1526 * docs/pwg/appendix-checklist.xml:
1527 Some updates to the list of things to check when writing an element.
1529 2006-03-08 Wim Taymans <wim@fluendo.com>
1531 * docs/design/part-element-transform.txt:
1532 Added some docs about the design of tranform elements.
1534 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1535 (gst_base_src_loop), (gst_base_src_change_state):
1536 Mark buffers with the DISCONT flag.
1538 2006-03-08 Michael Smith <msmith@fluendo.com>
1540 * gst/gstregistry.h:
1541 * gst/gstregistryxml.c: (gst_registry_save),
1542 (gst_registry_save_escaped), (gst_registry_xml_save_caps),
1543 (gst_registry_xml_save_pad_template),
1544 (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
1545 (gst_registry_xml_write_cache):
1546 Rewrite registry-saving to avoid race conditions and check for
1549 2006-03-08 Wim Taymans <wim@fluendo.com>
1551 * libs/gst/base/gstbasetransform.c:
1552 (gst_base_transform_transform_caps),
1553 (gst_base_transform_transform_size),
1554 (gst_base_transform_prepare_output_buffer),
1555 (gst_base_transform_get_unit_size),
1556 (gst_base_transform_buffer_alloc),
1557 (gst_base_transform_handle_buffer),
1558 (gst_base_transform_change_state):
1559 Cleanups, separate normal flow from errors, add sensible
1561 Don't try to renegotiate when allocating an output buffer.
1562 Also copy DISCONT buffer flag when copying a buffer.
1563 Reset the transform after we finish streaming, not during.
1565 2006-03-08 Wim Taymans <wim@fluendo.com>
1567 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
1568 Use last buffer timestamp in qos message.
1570 2006-03-07 Wim Taymans <wim@fluendo.com>
1572 Patch by: Christophe Fergeau
1574 * docs/pwg/advanced-tagging.xml:
1575 * docs/pwg/building-pads.xml:
1578 2006-03-07 Wim Taymans <wim@fluendo.com>
1580 * docs/libs/gstreamer-libs-sections.txt:
1581 Added basesink new methods.
1585 Docs updates. Flesh out the QoS docs.
1587 * libs/gst/base/gstadapter.c:
1588 Small doc clarification about ownership and flushing.
1590 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
1591 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
1592 (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
1593 (gst_base_sink_get_property), (gst_base_sink_do_sync):
1594 * libs/gst/base/gstbasesink.h:
1596 Added new methods to allow subclass to control max-lateness
1598 Generate very basic QoS events based on last sync observation.
1599 Updated docs, fix typo, added some QoS blurb.
1601 * libs/gst/base/gstbasesrc.c:
1602 Remove obsolete _get_state() calls from docs.
1604 2006-03-07 Wim Taymans <wim@fluendo.com>
1606 * docs/libs/gstreamer-libs-sections.txt:
1607 * libs/gst/base/gstbasetransform.h:
1608 API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
1609 Fix docs for GstBaseSrc.
1611 2006-03-07 Wim Taymans <wim@fluendo.com>
1613 * docs/gst/gstreamer-sections.txt:
1616 * libs/gst/base/gstbasetransform.h:
1617 Small documentation fixes.
1619 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
1622 Document thread-unsafety of gst_value_register_foo_func()
1623 when used at the same time as gst_value_foo() (#322628).
1625 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
1627 * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
1628 (gst_push_src_check_get_range):
1629 Push sources don't support pull mode by default.
1631 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
1633 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
1634 (gst_base_src_init), (gst_base_src_pad_check_get_range),
1635 (gst_base_src_default_check_get_range):
1636 * libs/gst/base/gstbasesrc.h:
1637 API addition: Add ::check_get_range() vfunc to GstBaseSrc (#332611),
1638 provide default implementation, and rename
1639 gst_base_src_check_get_range() to
1640 gst_base_src_pad_check_get_range() for clarity.
1642 2006-03-06 Wim Taymans <wim@fluendo.com>
1644 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
1645 Make property overridable.
1647 2006-03-06 Wim Taymans <wim@fluendo.com>
1649 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
1650 (gst_base_sink_init), (gst_base_sink_set_property),
1651 (gst_base_sink_get_property), (gst_base_sink_do_sync):
1652 * libs/gst/base/gstbasesink.h:
1653 API addition: Make max-lateness a property.
1655 2006-03-06 Wim Taymans <wim@fluendo.com>
1657 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
1658 (gst_base_sink_do_sync), (gst_base_sink_render_object):
1659 Don't ever draw a frame that is >10ms late.
1661 2006-03-06 Michael Smith <msmith@fluendo.com>
1663 * gst/gstmessage.c: (_gst_message_copy):
1664 When copying a message, set the parent_refcount of the enclosed
1665 structure to point at the copy, not the original message.
1667 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
1669 Patch by: Christophe Fergeau
1672 Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
1673 usable in c++ code (#333417)
1675 2006-03-06 Thomas Vander Stichele <thomas at apestaart dot org>
1678 Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
1680 2006-03-05 Tim-Philipp Müller <tim at centricular dot net>
1682 * libs/gst/base/gstbasetransform.c:
1683 (gst_base_transform_transform_caps):
1684 Make sure caps are writable before passing them to
1687 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
1690 Fix some minor docs errors.
1692 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
1694 Patch by: Ross Burton <ross at burtonini dot com>
1696 * gst/gsterror.c: (_gst_resource_errors_init):
1698 Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
1700 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
1703 Add a check and output a g_warning when GStreamer is built
1704 against GLib 2.6 but running against 2.8 or higher, and vice
1705 versa. (Closes: #323542)
1707 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
1709 * gst/parse/parse.l:
1710 Commit patch for parse_launch syntax from #331255. Removes
1711 support for quoted strings and mimetypes when writing filtered
1712 caps. See the bug report for more details - I'm pretty sure this
1713 obscure feature is not in use by _anyone_ anywhere.
1715 With this simple change, the size of the gstreamer.so here
1716 drops from 2193KB to 1565KB.
1718 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
1720 * plugins/elements/gsttypefindelement.h:
1721 * plugins/elements/gsttypefindelement.c:
1722 (gst_type_find_element_src_event), (start_typefinding),
1723 (stop_typefinding), (gst_type_find_element_handle_event),
1724 (gst_type_find_element_chain),
1725 (gst_type_find_element_chain_do_typefinding):
1726 Use gst_type_find_helper_for_buffer() for chain-based
1729 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
1731 * plugins/elements/gsttypefindelement.c:
1732 (gst_type_find_element_class_init),
1733 (gst_type_find_element_set_property),
1734 (gst_type_find_element_get_property):
1735 Deprecate "maximum" property (not only was it only taken into
1736 account for typefinding in push-mode anyway, it also was never
1737 actually possible to set it in the first place because the
1738 property was registered with the numeric property ID for the
1739 "minimum" property). Register "maximum" property correctly,
1740 for the sake of future copy'n'pasters. Remove some cruft
1741 from property get/set functions.
1743 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
1745 * plugins/elements/gsttypefindelement.c:
1746 (gst_type_find_element_activate):
1747 Use gst_type_find_helper_get_range() here, so we
1748 can honour the "minimum" property and also emit
1749 the signal with the correct probability of the found caps.
1751 2006-03-02 Tim-Philipp Müller <tim at centricular dot net>
1753 * docs/libs/gstreamer-libs-sections.txt:
1754 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
1755 (helper_find_suggest), (gst_type_find_helper_get_range),
1756 (gst_type_find_helper):
1757 * libs/gst/base/gsttypefindhelper.h:
1758 New API: gst_type_find_helper_get_range() (#333042).
1760 2006-03-02 Michael Smith <msmith@fluendo.com>
1762 * gst/gstregistryxml.c: (load_feature):
1763 Asserting on a failure to read part of the registry is Not Cool.
1764 Just log a warning and return NULL (which is already handled)
1766 2006-02-28 Sebastien Moutte <sebastien@moutte.net>
1768 * win32/common/libgstbase.def:
1769 added export of gst_type_find_helper_for_buffer
1770 * win32/common/libgstbase.def:
1771 added some exports : gst_bin_iterate_elements, gst_iterator_resync,
1772 gst_ghost_pad_get_target
1774 2006-02-28 Wim Taymans <wim@fluendo.com>
1776 * docs/design/draft-klass.txt:
1778 Added Connector to mark elements that are only used to
1779 allow pipeline connections.
1780 Moved Debug to extra feature since most of them are
1781 functionally something else.
1783 2006-02-28 Wim Taymans <wim@fluendo.com>
1785 * docs/design/draft-klass.txt:
1786 Some updates and clarifications.
1788 2006-02-28 Wim Taymans <wim@fluendo.com>
1790 * docs/design/draft-klass.txt:
1791 Proposal for klass field values.
1793 * docs/design/part-streams.txt:
1794 Start of a doc describing stream anatomy.
1796 2006-02-28 Wim Taymans <wim@fluendo.com>
1798 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
1799 Help the compiler a bit with type registration.
1800 Use existing forward cod path instead of duplicating it when
1803 * gst/gstbus.c: (gst_bus_get_type):
1804 * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
1805 * gst/gstchildproxy.c: (gst_child_proxy_get_type):
1806 * gst/gstclock.c: (gst_clock_get_type):
1807 * gst/gstelement.c: (gst_element_get_type),
1808 * gst/gstelementfactory.c: (gst_element_factory_get_type):
1809 * gst/gstindexfactory.c: (gst_index_factory_get_type):
1810 * gst/gstminiobject.c: (gst_mini_object_get_type):
1811 * gst/gstpad.c: (gst_pad_get_type):
1812 * gst/gstsegment.c: (gst_segment_get_type):
1813 * gst/gststructure.c: (gst_structure_get_type):
1814 * gst/gstsystemclock.c: (gst_system_clock_get_type):
1815 * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
1817 Help compiler with type registration.
1819 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
1822 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
1824 * plugins/elements/gsttypefindelement.c:
1825 (gst_type_find_element_handle_event):
1826 When we get an EOS event and have not found a type yet
1827 (most likely because we had not yet accumulated
1828 TYPE_FIND_MIN_SIZE of data yet), try to determine the
1829 type given the data we have so far. Fixes typefinding
1830 for very short streams again, most notably quicktime
1831 redirections as used on Apple's trailer site (#331701).
1833 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
1835 * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
1836 (gst_type_find_helper):
1837 Try typefinding factories with the highest rank first.
1839 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
1841 * docs/libs/gstreamer-libs-docs.sgml:
1842 * docs/libs/gstreamer-libs-sections.txt:
1843 * libs/gst/base/gsttypefindhelper.c:
1844 Add section for typefind helper and add documentation
1845 for the old and the new function.
1847 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
1849 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
1850 (buf_helper_find_suggest), (type_find_factory_rank_cmp),
1851 (gst_type_find_helper_for_buffer):
1852 * libs/gst/base/gsttypefindhelper.h:
1853 New API: gst_type_find_helper_for_buffer() (#332723).
1855 2006-02-27 Michael Smith <msmith@fluendo.com>
1857 Patch by: Loïc Minier
1861 * docs/slides/Makefile.am:
1862 prevent CVS directories getting disted.
1864 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
1866 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
1867 Use the REFCOUNTING category for caps refcounting.
1869 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
1871 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
1872 This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
1874 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
1876 * plugins/elements/gsttypefindelement.c:
1877 (gst_type_find_element_activate):
1878 Use gst_pad_check_pull_range() before _activate_pull()
1879 to avoid unnecessary open/close (see #331690).
1881 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
1884 Docs enhancement: make it crystal clear what the
1885 gst_pad_add_*_probe() callbacks should look like.
1887 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
1889 * libs/gst/base/gstbasesrc.c:
1890 Document how applications can stop recording from
1891 live sources (see #330996).
1893 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
1895 * tests/check/Makefile.am:
1896 * tests/check/libs/basesrc.c: (eos_event_counter),
1897 (basesrc_eos_events_pull), (basesrc_eos_events_push),
1898 (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
1899 (gst_basesrc_suite), (main):
1900 ... and add some tests for the base source EOS stuff.
1902 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
1904 * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
1905 Test case originally showed the problem fixed below,
1906 but was then amended. Add checks back at the place
1907 where they used to be.
1909 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
1911 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
1912 (gst_base_src_init), (gst_base_src_loop),
1913 (gst_base_src_activate_push), (gst_base_src_activate_pull),
1914 (gst_base_src_change_state):
1915 * libs/gst/base/gstbasesrc.h:
1916 Don't unconditionally send EOS when going from PAUSED to
1917 READY state, esp. make sure we don't send two EOS events
1918 in some cases (e.g. one when reaching EOS and one when
1919 going from PAUSED to READY). Also, we don't want to send
1920 EOS events when operating in pull mode. However, we do
1921 want to send an EOS event when shutting down a live
1922 source explicitly, for example (fixes #330996).
1924 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
1926 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
1927 Update src->read_position after a seek when not using mmap.
1928 Fixes #332277, patch by: Renchi Raju <renchi gmail com>
1930 2006-02-21 Jan Schmidt <thaytan@mad.scientist.com>
1936 Make things work with --disable-parse as they do with
1937 --disable-load-save - the symbols involved disappear, but the
1938 header is still installed and GST_DISABLE_PARSE is included via
1941 2006-02-20 Julien MOUTTE <julien@moutte.net>
1943 * libs/gst/base/gstbasetransform.c:
1944 (gst_base_transform_change_state): Fix a stupid bug. I was
1945 sure I compiled that.
1947 2006-02-20 Julien MOUTTE <julien@moutte.net>
1949 * gst/gstpad.c: (gst_pad_set_blocked_async):
1950 * gst/gstutils.c: (gst_pad_add_data_probe),
1951 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1952 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1953 (gst_pad_remove_buffer_probe): Make those function act on the
1954 ghostpad target when it's a ghostpad. (Closes #331727)
1956 2006-02-20 Julien MOUTTE <julien@moutte.net>
1958 * libs/gst/base/gstbasetransform.c:
1959 (gst_base_transform_change_state): Make basetransform reusable.
1962 2006-02-20 Jan Schmidt <thaytan@mad.scientist.com>
1964 * docs/random/release:
1965 Move the current documentation of how to do a release to the top
1968 * gst/gstbin.c: (gst_bin_class_init),
1969 (gst_bin_handle_message_func):
1970 Allow multiple state-recalculation threads. (Closes #328873)
1972 2006-02-19 Julien MOUTTE <julien@moutte.net>
1974 * gst/gstinfo.h: Add GST_STR_NULL to the second string.
1975 * gst/gstpad.c: (gst_pad_set_event_function),
1976 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
1977 (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
1978 2 strings. You can't use the STR_NULL macro on that.
1980 2006-02-19 Sebastien Moutte <sebastien@moutte.net>
1982 * gst/gstpad.c: (gst_pad_set_event_function),
1983 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
1984 (gst_pad_set_getcaps_function)
1985 * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
1986 Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
1987 So now, we can use --gst-debug-level=5 on Windows
1988 * win32/common/libgstcontroller.def:
1989 Added export of gst_controller_init
1990 * win32/vs6/libgstcontroller.dsp:
1991 Fixed Release post build configuration
1993 2006-02-17 Wim Taymans <wim@fluendo.com>
1995 * tests/check/gst/gstquery.c: (GST_START_TEST):
1996 Added another check.
1998 2006-02-15 Tim-Philipp Müller <tim at centricular dot net>
2000 * plugins/elements/gsttypefindelement.c: (find_peek):
2001 We can do peeks at non-zero offsets, as long as they
2002 fall within the buffer we have.
2004 2006-02-15 Jan Schmidt <thaytan@mad.scientist.com>
2006 * tests/check/Makefile.am:
2007 * tests/check/pipelines/parse-launch.c: (setup_pipeline),
2008 (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
2009 (parse_suite), (main):
2010 Add testsuite for parse launch syntax
2012 2006-02-14 Tim-Philipp Müller <tim at centricular dot net>
2014 * plugins/elements/gsttypefindelement.c:
2015 (gst_type_find_element_chain):
2016 When typefinding is unsuccessful in the chain function, don't
2017 error out immediately. Only error out with NO_CAPS_FOUND if
2018 the amount of data is at least MAX_TYPEFIND_SIZE bytes,
2019 otherwise simply wait for more data so we can try typefinding
2020 again with more data later. Also, don't attempt to typefind
2021 if we have less than MIN_TYPEFIND_SIZE data available. Overall,
2022 this should improve typefinding from network sources where the
2023 size of the first buffer can be somewhat random.
2025 2006-02-14 Wim Taymans <wim@fluendo.com>
2027 * docs/gst/gstreamer-sections.txt:
2028 * gst/gstpadtemplate.c:
2029 * gst/gstpadtemplate.h:
2030 Fix padtemplate docs, fixes #328805.
2032 2006-02-14 Wim Taymans <wim@fluendo.com>
2034 * tools/gst-launch.c: (main):
2035 NO_PREROLL is not an ERROR so don't send confusing messages
2038 2006-02-14 Wim Taymans <wim@fluendo.com>
2040 Patch by: Torsten Schoenfeld
2042 * gst/gstregistry.c: (gst_registry_get_default),
2043 (_gst_registry_cleanup):
2044 Protect default registry with lock and ref/sink it.
2047 2006-02-14 Wim Taymans <wim@fluendo.com>
2050 * gst/gstquery.c: (gst_query_list_add_format),
2051 (gst_query_set_formatsv), (gst_query_parse_formats_length),
2052 (gst_query_parse_formats_nth):
2053 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2056 2006-02-14 Wim Taymans <wim@fluendo.com>
2058 * docs/gst/gstreamer-sections.txt:
2059 Reworked query docs.
2061 * gst/gstquery.c: (gst_query_new_formats),
2062 (gst_query_list_add_format), (gst_query_set_formats),
2063 (gst_query_set_formatsv), (gst_query_parse_formats_length),
2064 (gst_query_parse_formats_nth):
2066 Flesh out formats query, added some new methods.
2067 Fix part of #324398.
2069 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
2070 Added query creation tests.
2072 2006-02-14 Jan Schmidt <thaytan@mad.scientist.com>
2074 * gst/gstpad.c: (fixate_value):
2075 Add a default fixation for fraction lists.
2077 2006-02-13 Wim Taymans <wim@fluendo.com>
2079 * gst/gsttask.c: (gst_task_init), (gst_task_func),
2080 (gst_task_set_lock), (gst_task_start), (gst_task_pause),
2083 Detect and warn for obvious deadlocks. fixes #320340
2084 Fix error case where lock was not released.
2086 * tests/check/Makefile.am:
2087 * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
2088 (task_func), (gst_element_suite), (main):
2091 2006-02-13 Wim Taymans <wim@fluendo.com>
2093 * docs/gst/gstreamer-sections.txt:
2095 Add new functions to docs.
2097 2006-02-13 Wim Taymans <wim@fluendo.com>
2099 * docs/design/part-TODO.txt:
2100 Updated TODO list, basesrc supports seeking to non-bytes
2103 * docs/design/part-element-sink.txt:
2106 * gst/gstbin.c: (bin_replace_message),
2107 (gst_bin_handle_message_func):
2108 * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
2109 * gst/gstevent.c: (gst_event_finalize):
2110 * gst/gstpad.c: (gst_pad_event_default_dispatch),
2111 (gst_pad_send_event):
2112 Use shiny new _TYPE_NAME macros.
2114 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
2115 Move debug statement up.
2117 * gst/gstelement.c: (gst_element_set_locked_state):
2120 2006-02-13 Tim-Philipp Müller <tim at centricular dot net>
2122 * docs/gst/gstreamer-sections.txt:
2125 New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
2126 macros (#330906). Also, document the already existing
2127 GST_QUERY_TYPE macro.
2129 2006-02-13 Wim Taymans <wim@fluendo.com>
2131 * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
2132 (event_probe), (GST_START_TEST):
2133 Only events up to the pipeline EOS are counted, there are
2134 some more when going to NULL currently which we don't care
2137 2006-02-13 Wim Taymans <wim@fluendo.com>
2139 * gst/gstpad.c: (gst_pad_send_event):
2140 Correctly check flushing and emit probes. fixes #330125
2142 2006-02-10 Andy Wingo <wingo@pobox.com>
2144 * gst/gstbus.c (gst_bus_class_init): Declare our private data
2146 (gst_bus_init): Cache the location of the private data in the
2148 (gst_bus_enable_sync_message_emission)
2149 (gst_bus_disable_sync_message_emission): Implement new public
2151 (gst_bus_post): Emit the sync-message signal if the user asked for
2154 * gst/gstbus.h (GstBus): Use a padding pointer to cache the
2155 location of the bus-private structure.
2156 (gst_bus_enable_sync_message_emission)
2157 (gst_bus_disable_sync_message_emission): API addition
2159 2006-02-10 Jan Schmidt <thaytan@mad.scientist.com>
2161 Patch by: Vincent Torri
2163 * docs/pwg/building-boiler.xml:
2164 PWG patch from #326800
2166 2006-02-09 Tim-Philipp Müller <tim at centricular dot net>
2170 * docs/design/Makefile.am:
2173 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
2178 === release 0.10.3 ===
2180 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
2183 releasing 0.10.3, "Like a virgin"
2185 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
2188 2nd prerelease of 0.10.3
2189 Bump libtool versioning.
2191 2006-02-07 Andy Wingo <wingo@pobox.com>
2193 * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
2194 update last_stop if we're in TIME format and the timestamp is
2197 * libs/gst/base/gstcollectpads.c (gst_collect_pads_event)
2198 * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc):
2199 * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
2200 If we get a new newsegment with a different format, adapt
2203 * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
2204 of 0. Not a problem, really.
2206 * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
2209 2006-02-06 Jan Schmidt <thaytan@mad.scientist.com>
2214 2006-02-06 Sebastien Moutte <sebastien@moutte.net>
2217 project files updated to the default vs7 configuration
2218 * win32/common/libgstbase.def:
2219 * win32/common/libgstreamer.def:
2221 removed empty lines,
2222 sorted all exported symbols alphabetically
2223 * win32/common/dirent.c:
2224 * win32/common/dirent.h:
2225 * win32/common/gchar.h:
2226 use windows line end.
2228 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
2230 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
2231 Send EOS event when stopping.
2233 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
2236 Tell folks what to do if the plugin-foobar.xml file
2237 hasn't been generated for a newly-added plugin.
2239 2006-02-05 Julien MOUTTE <julien@moutte.net>
2241 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
2242 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
2243 (gst_collect_pads_start), (gst_collect_pads_stop),
2244 (gst_collect_pads_event): Collectpads now holds a reference
2245 to the GstPad that was added. Indeed we don't want to look
2246 at pads that might just go away with no warning...
2248 2006-02-05 Julien MOUTTE <julien@moutte.net>
2250 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
2251 (gst_collect_pads_start), (gst_collect_pads_stop),
2252 (gst_collect_pads_event), (gst_collect_pads_chain):
2253 * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
2254 Mark Nauwelaerts's patch on bug #328491.
2256 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
2258 * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
2260 Add some simple tests for gst_parse_bin_from_description() and
2261 gst_bin_find_unconnected_pad() (#329069).
2263 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
2265 * tools/gst-launch.c: (event_loop), (main):
2266 Catch errors during preroll (#320084).
2268 2006-02-03 Tim-Philipp Müller <tim at centricular dot net>
2270 * plugins/elements/gsttypefindelement.c:
2271 (gst_type_find_element_activate):
2272 Post TYPE_NOT_FOUND error message when typefinding
2273 is unsuccessful in the activate function as well.
2275 2006-02-02 Wim Taymans <wim@fluendo.com>
2277 * docs/design/part-element-sink.txt:
2280 2006-02-02 Wim Taymans <wim@fluendo.com>
2282 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
2283 (gst_base_sink_render_object),
2284 (gst_base_sink_queue_object_unlocked):
2285 Only keep track of prerollable items when we are
2287 Before rendering after preroll, always check if we
2289 Added some more debugging.
2291 2006-02-02 Wim Taymans <wim@fluendo.com>
2293 * gst/gstelement.c: (gst_element_continue_state),
2294 (gst_element_set_state_func), (gst_element_change_state):
2295 Fixed #326576, been running this for quite some time with
2296 no regressions at all.
2298 2006-02-02 Wim Taymans <wim@fluendo.com>
2301 Added more suppressions
2303 2006-02-02 Wim Taymans <wim@fluendo.com>
2305 * docs/design/part-element-sink.txt:
2308 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2309 (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
2310 (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
2311 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
2312 (gst_base_sink_do_sync), (gst_base_sink_render_object),
2313 (gst_base_sink_preroll_object),
2314 (gst_base_sink_queue_object_unlocked),
2315 (gst_base_sink_queue_object), (gst_base_sink_event),
2316 (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
2317 (gst_base_sink_loop), (gst_base_sink_activate_pull),
2318 (gst_base_sink_get_position), (gst_base_sink_change_state):
2319 * libs/gst/base/gstbasesink.h:
2320 Totally refactored matching the design doc.
2321 Use two segments, one to clip incomming buffers and another to
2323 Handle queueing correctly, bypass the queue when playing.
2324 Make EOS cancelable.
2325 Handle errors correctly when operating in pull based mode.
2327 * tests/check/elements/fakesink.c: (GST_START_TEST),
2329 Added new check for sinks.
2331 2006-02-02 Wim Taymans <wim@fluendo.com>
2333 * gst/gstsegment.c: (gst_segment_clip):
2334 No reason to refuse to clip when start == -1
2336 2006-02-02 Stefan Kost <ensonic@users.sf.net>
2339 * docs/manual/intro-basics.xml:
2340 * docs/manual/intro-preface.xml:
2341 * docs/manual/manual.xml:
2342 * docs/pwg/advanced-dparams.xml:
2343 * docs/pwg/intro-basics.xml:
2344 * docs/pwg/intro-preface.xml:
2346 describe dparams (controller) for plugins
2347 unify docs a little more
2349 2006-02-02 Tim-Philipp Müller <tim at centricular dot net>
2351 * docs/gst/gstreamer-sections.txt:
2352 * gst/gstutils.c: (element_find_unconnected_pad),
2353 (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
2355 Add new API: gst_parse_bin_from_description() and
2356 gst_bin_find_unconnected_pad() (#329069).
2358 2006-02-01 Stefan Kost <ensonic@users.sf.net>
2360 * docs/manual/README:
2361 uncover a nasty detail of the docs build
2363 2006-01-31 Wim Taymans <wim@fluendo.com>
2365 * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
2366 Don't cache duration messages if we're not going to use or
2369 2006-01-31 Stefan Kost <ensonic@users.sf.net>
2371 * docs/manual/advanced-dparams.xml:
2372 * docs/pwg/advanced-dparams.xml:
2376 * libs/gst/controller/lib.c: (gst_controller_init):
2379 2006-01-31 Thomas Vander Stichele <thomas at apestaart dot org>
2381 * gst/gstelement.c: (gst_element_message_full):
2382 also show file/line/func if no additional debug was given
2384 2006-01-31 Sebastien Moutte <sebastien@moutte.net>
2386 * win32/vs7/grammar.vcproj:
2387 activate copy of autogenerated files for Release mode
2389 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
2391 * win32/common/libgstreamer.def:
2392 export gst_value_compare
2394 2006-01-30 Jan Schmidt <thaytan@mad.scientist.com>
2396 * plugins/elements/Makefile.am:
2397 * plugins/elements/gstelements.c:
2398 * plugins/elements/gstfdsink.c: (_do_init),
2399 (gst_fd_sink_base_init), (gst_fd_sink_class_init),
2400 (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
2401 (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
2402 (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
2403 (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
2404 (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
2405 (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
2406 * plugins/elements/gstfdsink.h:
2407 Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
2409 2006-01-30 Stefan Kost <ensonic@users.sf.net>
2411 * docs/manual/advanced-dparams.xml:
2413 * docs/manual/advanced-position.xml:
2414 * docs/manual/basics-init.xml:
2415 * docs/manual/manual.xml:
2416 * docs/manual/titlepage.xml:
2418 * docs/pwg/titlepage.xml:
2419 cleanup xml (more to come)
2420 * libs/gst/controller/gstcontroller.c:
2423 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
2425 * win32/vs6/grammar.dsp:
2426 add autogen of gstmarshal.c,h for Release mode
2428 2006-01-30 Wim Taymans <wim@fluendo.com>
2430 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2431 (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
2432 (gst_base_sink_handle_object), (gst_base_sink_event),
2433 (gst_base_sink_is_prerolled), (gst_base_sink_wait),
2434 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
2435 (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
2436 (gst_base_sink_deactivate), (gst_base_sink_activate),
2437 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
2438 (gst_base_sink_query), (gst_base_sink_change_state):
2439 Basesink cleanups, remove some old code.
2440 Handle the case where a subclass can preroll in the render
2441 method (mostly audiosinks).
2443 Remove some locks around variables that are now protected
2444 with the PREROLL_LOCK (clock_id, flushing, ..).
2445 Optimize position query some more, do correct locking.
2446 Remove old code to push queue in state change, this is not
2447 needed anymore since preroll blocks on all prerollable items
2449 Almost implemented as described in design doc.
2451 2006-01-30 Wim Taymans <wim@fluendo.com>
2453 * tests/check/gst/gstbin.c: (GST_START_TEST):
2454 Wait for refcount to settle down before checking.
2456 2006-01-30 Wim Taymans <wim@fluendo.com>
2458 * docs/design/part-element-sink.txt:
2459 Pseudo code overview of desired sink behaviour regarding
2462 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
2463 * win32/vs6/grammar.dsp:
2464 fix some bugs in Release mode for autogenerated files
2466 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
2467 * win32/common/libgstbase.def:
2468 * win32/common/libgstreamer.def:
2469 export some new symbols: gst_base_src_set_format,
2470 gst_iterator_next, gst_structure_set_valist
2472 2006-01-29 Julien MOUTTE <julien@moutte.net>
2474 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
2475 Set pad functions unconditionally. Fixes #329105.
2477 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
2479 add vs8 project files created by Sergey Scobich
2481 2006-01-28 Jan Schmidt <thaytan@mad.scientist.com>
2483 * gst/gstutils.c: (gst_element_unlink_pads):
2484 Don't leak pad references.
2486 * tests/check/elements/fakesink.c: (GST_START_TEST):
2487 * tests/check/generic/sinks.c: (GST_START_TEST):
2488 * tests/check/generic/states.c: (GST_START_TEST):
2489 * tests/check/gst/gstbin.c: (GST_START_TEST):
2490 * tests/check/gst/gstcaps.c: (GST_START_TEST):
2491 * tests/check/gst/gstelement.c: (GST_START_TEST):
2492 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
2493 * tests/check/gst/gstiterator.c: (GST_START_TEST):
2494 * tests/check/gst/gstvalue.c: (GST_START_TEST):
2495 Fix a bunch of leaks. Make generic/sinks.c
2496 use a bit less cpu by slowing the buffer rate
2497 between fakesrc and fakesink.
2499 2006-01-27 Stefan Kost <ensonic@users.sf.net>
2501 * gst/gstelement.c: (gst_element_send_event):
2504 * gst/gstiterator.c:
2505 * gst/gstiterator.h:
2506 * gst/gstpad.c: (gst_pad_send_event):
2507 * gst/gststructure.c:
2511 * libs/gst/base/gstadapter.c:
2512 doc fixes, to link to function, just write gst_cool_function(), don't
2515 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
2517 * plugins/elements/gsttee.c: (gst_tee_do_push),
2518 (gst_tee_handle_buffer):
2519 Always prefer an actual return value from a src
2520 pad in place of NOT_LINKED. This means we return
2521 WRONG_STATE when all src pads are WRONG_STATE
2522 instead of NOT_LINKED.
2524 Lock when replacing the last message to prevent
2525 racing with the get_property method.
2529 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
2531 * tests/check/Makefile.am:
2532 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
2534 Add a very simple check that should have caught the memleak I fixed
2535 last night (if not for the slice allocator hiding it)
2537 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
2539 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2540 (gst_bin_remove_func), (gst_bin_handle_message_func),
2541 (bin_query_duration_fold), (bin_query_generic_fold):
2542 Clean up references to the clock provider when disposed or when
2543 handling a clock-lost message from it.
2545 Unref sinks when performing a query via gst_iterator_fold, as the
2546 gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
2548 * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
2549 (gst_clock_set_master):
2550 Drop our reference to the master clock, if any, when we are disposed.
2552 * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
2553 Chain up in dispose.
2555 2006-01-26 Wim Taymans <wim@fluendo.com>
2557 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
2560 2006-01-26 Julien MOUTTE <julien@moutte.net>
2562 * plugins/elements/gsttee.c: (gst_tee_do_push),
2563 (gst_tee_handle_buffer): Apply patch from #328715. Tee now
2564 handles pad being NOT_LINKED or in WRONG_STATE.
2566 2006-01-26 Stefan Kost <ensonic@users.sf.net>
2571 2006-01-26 Stefan Kost <ensonic@users.sf.net>
2574 remove obsolete entry
2576 2006-01-26 Stefan Kost <ensonic@users.sf.net>
2578 * docs/gst/gstreamer-sections.txt:
2579 * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
2580 (gst_bin_iterate_sources), (gst_bin_send_event):
2582 * gst/gstelement.c: (gst_element_send_event):
2584 * gst/gstpad.c: (gst_pad_send_event):
2585 added code for downstream events, reviewed docs in gstevent.c
2587 2006-01-25 Julien MOUTTE <julien@moutte.net>
2589 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
2590 We only query position using the clock in the playing state.
2591 Query peer in the other cases.
2592 * win32/common/config.h: Updates.
2594 2006-01-24 Wim Taymans <wim@fluendo.com>
2596 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
2597 A clock entry that is scheduled for the exact time of the
2598 clock is still in time.
2600 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2601 (gst_base_sink_do_sync):
2602 Add some more debug info.
2604 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
2607 Add new vs7 project files and solution.
2609 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
2612 all files removed as they were out-dated.
2614 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
2616 * docs/random/release:
2618 * gst/gstbin.c: (gst_bin_init):
2619 * gst/gstbus.c: (gst_bus_new):
2621 * gst/gstpipeline.c: (gst_pipeline_init):
2622 use gst_bus_new(), improve logging, fix docs
2623 * win32/common/config.h:
2624 update for cvs build
2626 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
2629 up required version of automake to 1.7
2631 2006-01-20 Sebastien Moutte <sebastien@moutte.net>
2633 * win32/common/libgstreamer.def:
2634 export gst_buffer_is_metadata_writable
2636 2006-01-20 Tim-Philipp Müller <tim at centricular dot net>
2638 * docs/gst/gstreamer-sections.txt:
2640 Add gst_event_replace() (#327001)
2642 2006-01-20 Wim Taymans <wim@fluendo.com>
2644 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
2645 Make it actually compile too..
2647 2006-01-20 Wim Taymans <wim@fluendo.com>
2650 Clarify behaviour of _is_equal() when passing NULL parameters.
2652 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2654 Cleanups. Don't unref NULL caps.
2655 When setting the same caps, protect caps of the pad with
2657 Use full functionality of _is_equal() when comparing caps.
2659 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
2661 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
2662 Don't loop infinitely if there are no buffers to present. Partially
2663 fixes #327197, but collectpads is just broken for reusing elements
2664 to do multiple encodes atm.
2666 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
2668 * tools/gst-inspect.c: (print_element_features):
2669 * tools/gst-xmlinspect.c: (main):
2670 URL_HANDLER is not a plugin feature we can search for in
2673 2006-01-19 Edward Hervey <edward@fluendo.com>
2675 * gst/gstelement.c: (gst_element_pads_activate):
2676 When activating, do src pads first, then sink pads.
2677 When de-activating, do sink pads first, then src pads.
2679 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
2681 * docs/gst/gstreamer-sections.txt:
2682 Add gst_index_add_associationv to the docs
2684 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
2689 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
2690 (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
2691 Do some refactoring. Doesn't actually change functionality,
2692 but makes landing the DRAIN event easier later.
2694 2006-01-19 Tim-Philipp Müller <tim at centricular dot net>
2696 * docs/pwg/advanced-scheduling.xml:
2697 Update from 0.9.x to 0.10 API and make example a bit
2700 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
2702 * docs/gst/gstreamer-sections.txt:
2703 Add gst_buffer_(is|make)_metadata_writable methods.
2705 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
2707 * docs/design/part-sparsestreams.txt:
2708 Update sparse streams doc, hopefully for greater clarity
2710 2006-01-18 Jan Schmidt <thaytan@mad.scientist.com>
2712 * docs/design/part-events.txt:
2713 Remove mention of FILLER events.
2716 * docs/design/part-sparsestreams.txt:
2717 Write some things about using NEWSEGMENT to keep sparse streams
2720 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
2722 * gst/gstbin.c: (gst_bin_dispose):
2723 Guard gst_object_unref call against a NULL object (dispose
2724 can theoretically be called multiple times).
2726 2006-01-18 Wim Taymans <wim@fluendo.com>
2728 * gst/gstbin.c: (gst_bin_element_set_state):
2729 * gst/gstclock.c: (gst_clock_id_wait):
2730 Added some more debug info.
2732 * libs/gst/base/gstadapter.c:
2735 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2736 (gst_base_sink_do_sync), (gst_base_sink_chain):
2737 Added some comments.
2739 2006-01-18 Wim Taymans <wim@fluendo.com>
2741 * tests/check/Makefile.am:
2742 * tests/check/elements/fakesink.c: (chain_async_buffer),
2743 (chain_async), (chain_async_return), (GST_START_TEST),
2744 (fakesink_suite), (main):
2745 Added fakesink test that checks prerolling and clipping
2748 * tests/check/gst/gstutils.c: (GST_START_TEST):
2749 Make check run faster so that buildbots don't timeout.
2751 2006-01-18 Wim Taymans <wim@fluendo.com>
2753 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2754 (gst_base_sink_do_sync):
2756 When the sink finishes blocking on the preroll buffer, it can
2757 immediatly render it instead of rendering when the next buffer
2760 2006-01-18 Wim Taymans <wim@fluendo.com>
2762 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
2763 (gst_base_sink_get_property), (gst_base_sink_do_sync),
2764 (gst_base_sink_chain):
2766 GST_ELEMENT_CLOCK and sync are protected with LOCK.
2767 Don't store _last_stop if the buffer is dropped.
2769 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
2771 * plugins/elements/gsttypefindelement.c:
2772 (gst_type_find_element_class_init):
2773 'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
2774 object method handler that sets the caps on the pad and we want
2775 that to happen before we emit the signal (fixes e.g. feeding a
2776 plain text file to decodebin).
2778 2006-01-18 Christian Schaller <Christian@fluendo.com>
2780 * gst/gstplugin.c: Add MPL and Proprietary as license options
2782 2006-01-18 Andy Wingo <wingo@pobox.com>
2784 * gst/gstindex.h (gst_index_add_associationv): Add to header. The
2785 symbol was exported before, it appears this was just an oversight.
2787 Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
2789 * gst/gstindex.c (gst_index_add_associationv): Changed int in
2790 prototype to gint. OK since this prototype was not in the header.
2792 2006-01-17 Andy Wingo <wingo@pobox.com>
2794 * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
2795 registry while we remove plugins.
2797 * tools/gst-inspect.c (print_element_info): Don't unref the
2798 factory arg, that should be the responsibility of whatever code
2799 received the ref. Fixes a double-free when called from
2800 print_element_list via gst-inspect-0.10 -a. Fixes #327324.
2801 (main): Unref the factory if we have one.
2802 (print_element_list): No change -- relies on the
2803 plugin_feature_list_free to free the list of features.
2805 2006-01-17 Jan Schmidt <thaytan@mad.scientist.com>
2807 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
2808 (gst_buffer_make_metadata_writable):
2810 * libs/gst/base/gstbasetransform.c:
2811 (gst_base_transform_prepare_output_buf):
2812 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
2813 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2814 Replace gst_buffer_(make|is)_metadata_writable patch now
2815 that the release is out.
2817 2006-01-17 Andy Wingo <wingo@pobox.com>
2819 * gst/gstregistry.c: Reflow design comment. Update so as to speak
2820 in the present tense without reference to versions.
2822 * gst/gstregistry.c (gst_registry_add_plugin)
2823 (gst_registry_remove_plugin, gst_registry_remove_feature)
2824 (gst_registry_find_feature, gst_registry_get_feature_list)
2825 (gst_registry_get_plugin_list, gst_registry_lookup_feature)
2826 (gst_registry_lookup, gst_registry_scan_path)
2827 (_gst_registry_remove_cache_plugins)
2828 (gst_registry_get_feature_list_by_plugin): Add argument
2831 === release 0.10.2 ===
2833 2006-01-16 Thomas Vander Stichele <thomas at apestaart dot org>
2836 releasing 0.10.2, "If man is five"
2838 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
2842 * libs/gst/base/gstbasetransform.c:
2843 (gst_base_transform_prepare_output_buf):
2844 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
2845 * tests/check/gst/gstbuffer.c: (gst_test_suite):
2846 Back out patch until after the release.
2848 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
2850 * gst/gstminiobject.c:
2851 Spelling fix in docs.
2852 * ChangeLog - remove conflict indicator
2854 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
2856 Reviewed By: Andy Wingo
2858 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
2859 (gst_buffer_make_metadata_writable):
2861 Add gst_buffer_(is|make)_metadata_writable as analogues of
2862 gst_buffer_(is|make)_writable.
2864 * libs/gst/base/gstbasetransform.c:
2865 (gst_base_transform_prepare_output_buf):
2866 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
2867 Use name gst_buffer_(is|make)_metadata_writable functions.
2869 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2870 Test gst_buffer_(is|make)_metadata_writable
2874 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
2876 * docs/manual/Makefile.am:
2877 don't do parallel make
2880 * win32/common/config.h.in:
2881 add generations for HOST_CPU and GST_MAJORMINOR
2882 * win32/common/config.h:
2883 commit generated result
2885 2006-01-13 Tim-Philipp Müller <tim at centricular dot net>
2887 * docs/manual/appendix-integration.xml:
2888 Update GNOME integration section to use gst_init_get_option_group()
2889 instead of the old popt stuff (#322911). Also, GNOME applications
2890 should now use gconf*sink and gconf*src instead of the old gconf
2893 2006-01-13 Stefan Kost <ensonic@users.sf.net>
2896 * docs/gst/gstreamer-docs.sgml:
2897 * docs/gst/gstreamer-sections.txt:
2898 * docs/libs/gstreamer-libs-sections.txt:
2899 add new API entries to the docs
2900 * libs/gst/controller/Makefile.am:
2901 * libs/gst/controller/gstcontroller.c:
2902 * libs/gst/controller/gstcontroller.h:
2903 * libs/gst/controller/gstcontrollerprivate.h:
2904 * libs/gst/controller/gsthelper.c:
2905 * libs/gst/controller/gstinterpolation.c:
2906 move private structs to private header
2908 gstreamer-0.7 -> gstreamer-0.10
2909 * tests/check/libs/struct_i386.h:
2910 remove private structs
2912 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
2914 * plugins/indexers/Makefile.am:
2915 Fixes as part of #317048
2917 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
2919 * plugins/indexers/Makefile.am:
2920 fix #316086 - compilation when mmap is missing
2922 2006-01-12 Sebastien Moutte <sebastien@moutte.net>
2924 * libs/gst/base/gstbasesink.c:
2925 *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
2926 *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
2927 * win32/common/config.h:
2928 added some defines GST_MAJORMINOR and HOST_CPU
2929 * win32/common/libgstbase.def:
2930 * win32/common/libgstreamer.def:
2931 added some exported functions.
2933 2006-01-12 Stefan Kost <ensonic@users.sf.net>
2935 * libs/gst/controller/gstcontroller.c:
2936 (gst_controlled_property_set_interpolation_mode),
2937 (gst_controlled_property_new):
2938 * libs/gst/controller/gstcontroller.h:
2939 * libs/gst/controller/gstinterpolation.c:
2940 (interpolate_none_get_string_value_array):
2941 make G_TYPE_STRING controlable
2943 2006-01-12 Stefan Kost <ensonic@users.sf.net>
2946 * tools/gst-feedback.1.in:
2947 * tools/gst-inspect.1.in:
2948 * tools/gst-launch.1.in:
2949 * tools/gst-md5sum.1.in:
2950 * tools/gst-typefind.1.in:
2951 * tools/gst-xmlinspect.1.in:
2952 * tools/gst-xmllaunch.1.in:
2953 cleanup man-pages, remove reference to gst-register, document env-vars
2955 2006-01-12 Jan Schmidt <thaytan@mad.scientist.com>
2957 * gst/gstbuffer.c: (gst_buffer_span):
2958 gst_buffer_span should copy the timestamp of the first buffer
2959 if they were both originally overlapping subbuffers of the
2960 same parent, using the same logic as the 'slow copy' case.
2962 2006-01-11 Jan Schmidt <thaytan@mad.scientist.com>
2964 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
2965 Need to awaken ALL the pads when we pop a buffer, otherwise
2966 collectpads only works when there is 2 input streams.
2968 2006-01-11 Stefan Kost <ensonic@users.sf.net>
2970 * docs/random/ensonic/media-device-daemon.txt:
2973 fix doc example, add clarification
2974 * tools/gst-launch.1.in:
2975 add initial info about GST_PLUGIN_PATH, needs more work
2977 2006-01-11 Tim-Philipp Müller <tim at centricular dot net>
2979 * docs/manual/basics-bins.xml:
2980 * docs/manual/basics-elements.xml:
2981 * docs/manual/intro-basics.xml:
2982 Some more minor docs additions and updates.
2984 2006-01-11 Wim Taymans <wim@fluendo.com>
2986 * docs/manual/basics-bins.xml:
2987 * docs/manual/basics-elements.xml:
2988 Some small fixes as pointed out by Ser-ver on IRC.
2990 2006-01-10 Edward Hervey <edward@fluendo.com>
2992 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
2993 Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
2994 the single-segment mode.
2996 2006-01-10 Brian Cameron <brian dot cameron at sun dot com>
2998 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
3000 * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
3001 (gst_base_src_perform_seek), (gst_base_src_send_event),
3002 (gst_base_src_set_property), (gst_base_src_get_property),
3003 (gst_base_src_loop), (gst_base_src_start),
3004 (gst_base_src_activate_push):
3005 * libs/gst/base/gstbasesrc.h:
3006 Name (private) union; makes Sun's Forte compiler happy (#324900).
3008 2006-01-09 Tim-Philipp Müller <tim at centricular dot net>
3011 gst-register is gone.
3013 2006-01-07 Thomas Vander Stichele <thomas at apestaart dot org>
3015 * gst/gstvalue.c: (_gst_value_initialize):
3016 make the G_TYPE_DATE instantiation work if debug is disabled
3018 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
3020 * gst/gstmessage.c: (gst_message_parse_tag),
3021 (gst_message_parse_error), (gst_message_parse_warning):
3022 Don't crash when return location for error/warning debug
3023 string is NULL; add fact that return locations can be
3024 NULL to docs where appropriate.
3026 2006-01-05 Wim Taymans <wim@fluendo.com>
3028 * gst/gstplugin.c: (gst_plugin_load_file):
3029 Replace strdup by g_strdup.
3031 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
3033 * docs/pwg/advanced-types.xml:
3036 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
3038 submitted by: Abel Cheung
3042 Added Chinese (traditional) translation
3044 2006-01-04 Wim Taymans <wim@fluendo.com>
3046 * docs/manual/basics-pads.xml:
3047 * docs/plugins/Makefile.am:
3048 * docs/plugins/gstreamer-plugins-docs.sgml:
3049 * docs/plugins/gstreamer-plugins-sections.txt:
3050 * docs/pwg/advanced-clock.xml:
3051 * docs/pwg/advanced-scheduling.xml:
3052 * docs/pwg/advanced-types.xml:
3053 * plugins/elements/gstfdsink.c:
3054 * plugins/elements/gstfdsrc.c:
3055 * plugins/elements/gstfdsrc.h:
3056 * plugins/elements/gstidentity.c: (gst_identity_class_init):
3057 * plugins/elements/gstidentity.h:
3058 * plugins/elements/gstqueue.h:
3059 * plugins/elements/gsttee.c:
3060 * plugins/elements/gsttee.h:
3061 * plugins/elements/gsttypefindelement.c:
3062 (gst_type_find_element_class_init):
3063 * plugins/elements/gsttypefindelement.h:
3064 Small updates to various docs.
3065 Added core plugins to docs.
3067 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3070 add a suppression for liboil's uninitialized variable
3072 2006-01-02 James Livingston <jrl at ids dot org dot au>
3074 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
3077 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
3078 macro, so that gcc doesn't complain if the -Wmissing-prototypes
3079 compiler switch is being used (#325429).
3081 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
3083 * gst/gstbin.c: (gst_bin_query):
3084 Disable duration query caching in bins until it gets
3085 fixed (see #324807).
3087 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
3089 * tools/gst-inspect.c: (print_element_properties_info):
3090 Handle properties of POINTER and BOXED type.
3092 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
3094 * gst/gst.c: (init_post):
3095 Init tags stuff and some other things before loading
3096 any static plugins (there may be other static plugins
3097 than just the GStreamer ones, and they may want to
3098 register their own tags or formats or whatever, and
3099 preferably without segfaulting).
3101 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
3102 Print at least a warning in the debug logs if we drop a
3103 query just because we don't know how to adjust the value
3104 in the particular format.
3106 2005-12-24 David Schleef <ds@schleef.org>
3108 * tools/gstreamer-completion:
3109 Replacement for gst-complete written in sh and sed. Only
3110 completes names of features, but that's 90% of what I want
3111 it for. Properties are not available in registry.xml. (Maybe
3114 === release 0.10.1 ===
3116 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
3119 releasing 0.10.1, "Nollaig chridheil"
3121 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
3124 Add missing quote, should be make ERROR_CFLAGS="".
3126 2005-12-20 Wim Taymans <wim@fluendo.com>
3128 * docs/design/part-trickmodes.txt:
3129 More documentation on trickmodes.
3131 2005-12-20 Edward Hervey <edward@fluendo.com>
3133 * gst/gstcaps.c: (gst_static_caps_get_type):
3135 API addition: GST_TYPE_STATIC_CAPS
3136 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
3137 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
3138 * gst/gstpadtemplate.h:
3139 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
3140 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
3143 2005-12-18 Wim Taymans <wim@fluendo.com>
3145 * libs/gst/base/gstadapter.c:
3146 * libs/gst/base/gstadapter.h:
3147 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3148 (gst_base_sink_get_position):
3149 * libs/gst/base/gstbasesink.h:
3150 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3151 (gst_base_src_default_query), (gst_base_src_default_do_seek),
3152 (gst_base_src_do_seek), (gst_base_src_perform_seek),
3153 (gst_base_src_send_event), (gst_base_src_update_length),
3154 (gst_base_src_get_range), (gst_base_src_loop),
3155 (gst_base_src_start):
3156 * libs/gst/base/gstbasesrc.h:
3157 * libs/gst/base/gstbasetransform.h:
3158 * libs/gst/base/gstcollectpads.h:
3159 * libs/gst/base/gstpushsrc.c:
3160 * libs/gst/base/gstpushsrc.h:
3161 * libs/gst/dataprotocol/dataprotocol.c:
3162 * libs/gst/dataprotocol/dataprotocol.h:
3163 * libs/gst/net/gstnetclientclock.h:
3164 * libs/gst/net/gstnettimeprovider.h:
3165 Documentation updates.
3167 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
3169 * docs/manual/basics-helloworld.xml:
3170 Remove superfluous closing bracket in helloworld example.
3172 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
3174 * tools/gst-launch.1.in:
3175 Update gst-launch man page; add a section with useful
3176 environment variables. Fixes #323882.
3178 2005-12-16 Stefan Kost <ensonic@users.sf.net>
3181 * gst/gst_private.h:
3182 change some char* into char[]
3184 2005-12-16 Wim Taymans <wim@fluendo.com>
3186 * gst/gstregistryxml.c: (load_feature):
3188 Don't use g_object_unref on GstObjects so that we avoid
3189 leaks on unsafe glibs.
3191 2005-12-16 Wim Taymans <wim@fluendo.com>
3193 * gst/gstbin.c: (gst_bin_recalc_state):
3196 2005-12-16 Wim Taymans <wim@fluendo.com>
3199 Added make forever target for check.
3201 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
3203 * gst/gst.c: (init_post):
3204 make the registry cache file HOST_CPU-dependent
3206 2005-12-16 Andy Wingo <wingo@pobox.com>
3208 * plugins/elements/gstbufferstore.c
3209 (gst_buffer_store_cleared_func): Pay attention to g_list_append
3212 * tests/check/gst/gstobject.c
3213 (test_fake_object_name_threaded_unique): Pay attention to
3214 g_list_sort return value.
3216 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
3218 * tools/gst-feedback-m.m:
3219 Update for 0.9/0.10 (fixes #323870).
3221 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
3223 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
3224 Fix lcopy for mini objects, the mini object needs to be ref'ed.
3226 * tests/check/gst/gstminiobject.c: (my_foo_init),
3227 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
3228 (test_value_collection), (gst_mini_object_suite):
3229 Add test to ensure refcounts end up as expected when passing
3230 GstMiniObjects through g_object_get() and g_object_set().
3232 2005-12-14 Julien MOUTTE <julien@moutte.net>
3234 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
3235 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
3236 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
3237 of collectpads. This version removes a lot of races without
3238 touching API/ABI. Yay !
3240 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
3242 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
3243 Don't allow activation of a srcpad in pull_range if it has no
3245 Change some debug statements to be a little clearer
3247 * plugins/elements/gsttypefindelement.c:
3248 (gst_type_find_handle_src_query):
3249 Check that we have a peer before executing queries thereupon.
3251 * tests/examples/metadata/read-metadata.c: (message_loop):
3252 Use gst_bus_pop instead of gst_bus_poll when we just want it to
3253 immediately return us any available message with 0 timeout.
3255 2005-12-12 Michael Smith <msmith@fluendo.com>
3257 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
3258 Don't unref factories after calling them.
3259 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
3260 * plugins/elements/gsttypefindelement.c:
3261 (gst_type_find_element_chain):
3262 Free lists of factories after using them. Fixing typefinding memory
3265 2005-12-12 Stefan Kost <ensonic@users.sf.net>
3267 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
3268 (gst_plugin_feature_load):
3269 more meaningful debug output
3271 * tests/Makefile.am:
3272 * tests/old/examples/Makefile.am:
3273 make make distcheck happy again
3275 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
3277 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
3278 Catch the special case where we are operating chain-based,
3279 but the downstream peer pad has no chain function. Emit a
3280 custom error message in this case instead of letting the
3281 core generate one implying that this is some sort of core
3282 bug. It's not, it just means that whatever got plugged
3283 into the pipeline downstream when we announced the type
3284 can only operate pull-based, while our source can only
3285 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
3286 Error string has not been marked for translation yet, as
3287 it probably needs some more work first.
3289 (gst_type_find_element_get_best_possibility):
3290 Add helper function to find the best of all available
3291 found possibilities that qualify given the min. threshold.
3293 (gst_type_find_element_handle_event):
3294 Fix the case where we get an EOS while still in TYPEFIND
3295 mode (we want to chose the best of all possible types,
3296 not just the first type that happens to be in our unsorted
3297 list of possible types).
3299 (gst_type_find_element_chain):
3300 Make sure we return GST_FLOW_ERROR when we errored out
3301 in stop_typefinding(); also, don't just find the best of
3302 all found type entries and then use the last examined
3303 type entry, but actually use the best entry.
3305 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
3307 * tests/examples/typefind/typefind.c: (type_found):
3308 * tests/examples/xml/runxml.c: (xml_loaded):
3309 More gcc4 fixes and a mem leak fix.
3311 2005-12-12 Stefan Kost <ensonic@users.sf.net>
3313 * tests/examples/xml/createxml.c: (object_saved):
3316 2005-12-12 Stefan Kost <ensonic@users.sf.net>
3318 * tests/Makefile.am:
3319 enable the examples even more
3321 2005-12-12 Andy Wingo <wingo@pobox.com>
3323 * libs/gst/net/gstnettimeprovider.c
3324 (gst_net_time_provider_class_init, gst_net_time_provider_init)
3325 (gst_net_time_provider_set_property)
3326 (gst_net_time_provider_get_property):
3327 API addition: Export "active" as a GObject property.
3328 (gst_net_time_provider_thread): Only respond to time queries if
3329 the time provider is active.
3331 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
3332 NetTimeProvider, preserving binary compat.
3334 2005-12-12 Stefan Kost <ensonic@users.sf.net>
3336 * tests/examples/controller/audio-example.c: (main):
3337 * tests/examples/launch/Makefile.am:
3338 convert comments again
3340 2005-12-12 Wim Taymans <wim@fluendo.com>
3342 * libs/gst/base/gstpushsrc.c:
3345 2005-12-12 Wim Taymans <wim@fluendo.com>
3347 * docs/libs/gstreamer-libs-sections.txt:
3348 Added new symbol to docs.
3350 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3351 (gst_base_src_init), (gst_base_src_set_format),
3352 (gst_base_src_default_query), (gst_base_src_query),
3353 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
3354 (gst_base_src_perform_seek), (gst_base_src_send_event),
3355 (gst_base_src_default_event), (gst_base_src_event_handler),
3356 (gst_base_src_set_property), (gst_base_src_get_property),
3357 (gst_base_src_wait), (gst_base_src_do_sync),
3358 (gst_base_src_update_length), (gst_base_src_get_range),
3359 (gst_base_src_check_get_range), (gst_base_src_loop),
3360 (gst_base_src_default_negotiate), (gst_base_src_start),
3361 (gst_base_src_activate_push), (gst_base_src_activate_pull),
3362 (gst_base_src_change_state):
3363 * libs/gst/base/gstbasesrc.h:
3364 Implement seeking to other formats than _BYTES.
3365 Implement more seeking methods correctly.
3367 Added query vmethod.
3368 Added do_seek vmethod to make life easier for subclasses
3370 API addition: gst_base_src_set_format()
3372 2005-12-12 Stefan Kost <ensonic@users.sf.net>
3374 * tests/examples/Makefile.am:
3377 2005-12-12 Stefan Kost <ensonic@users.sf.net>
3380 * docs/random/ensonic/media-device-daemon.txt:
3381 * tests/examples/controller/.cvsignore:
3382 * tests/examples/controller/Makefile.am:
3383 * tests/examples/controller/audio-example.c: (main):
3384 * tests/examples/helloworld/.cvsignore:
3385 * tests/examples/helloworld/Makefile.am:
3386 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
3387 * tests/examples/launch/.cvsignore:
3388 * tests/examples/launch/Makefile.am:
3389 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
3390 * tests/examples/metadata/.cvsignore:
3391 * tests/examples/metadata/Makefile.am:
3392 * tests/examples/metadata/read-metadata.c: (message_loop),
3393 (make_pipeline), (print_tag), (main):
3394 * tests/examples/queue/.cvsignore:
3395 * tests/examples/queue/Makefile.am:
3396 * tests/examples/queue/queue.c: (event_loop), (main):
3397 * tests/examples/typefind/.cvsignore:
3398 * tests/examples/typefind/Makefile.am:
3399 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
3401 * tests/examples/xml/.cvsignore:
3402 * tests/examples/xml/Makefile.am:
3403 * tests/examples/xml/createxml.c: (object_saved), (main):
3404 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
3405 * tests/old/examples/Makefile.am:
3406 * tests/old/examples/TODO:
3407 * tests/old/examples/controller/.cvsignore:
3408 * tests/old/examples/controller/Makefile.am:
3409 * tests/old/examples/controller/audio-example.c:
3410 * tests/old/examples/helloworld/.cvsignore:
3411 * tests/old/examples/helloworld/Makefile.am:
3412 * tests/old/examples/helloworld/helloworld.c:
3413 * tests/old/examples/launch/.cvsignore:
3414 * tests/old/examples/launch/Makefile.am:
3415 * tests/old/examples/launch/mp3parselaunch.c:
3416 * tests/old/examples/launch/mp3play:
3417 * tests/old/examples/manual/Makefile.am:
3418 * tests/old/examples/metadata/Makefile.am:
3419 * tests/old/examples/metadata/read-metadata.c:
3420 * tests/old/examples/queue/.cvsignore:
3421 * tests/old/examples/queue/Makefile.am:
3422 * tests/old/examples/queue/queue.c:
3423 * tests/old/examples/typefind/.cvsignore:
3424 * tests/old/examples/typefind/Makefile.am:
3425 * tests/old/examples/typefind/typefind.c:
3426 * tests/old/examples/xml/.cvsignore:
3427 * tests/old/examples/xml/Makefile.am:
3428 * tests/old/examples/xml/createxml.c:
3429 * tests/old/examples/xml/runxml.c:
3430 applied some simple fixing to some examples
3431 re-enabled the working examples
3433 2005-12-12 Wim Taymans <wim@fluendo.com>
3435 * gst/gstsegment.c: (gst_segment_init),
3436 (gst_segment_set_last_stop), (gst_segment_set_seek),
3437 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
3438 (gst_segment_to_running_time):
3439 Added more documentation.
3440 Make sure the last_pos value is updated properly.
3441 Make sure to_stream_time and to_running_time don't
3442 operate on wrong values.
3444 * tests/check/gst/gstsegment.c: (GST_START_TEST):
3447 2005-12-12 Michael Smith <msmith@fluendo.com>
3449 * plugins/elements/gsttypefindelement.c: (free_entry),
3450 (gst_type_find_element_chain):
3451 Now that we're not leaking factories, make sure we keep references
3452 to them while we need them.
3454 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
3456 * tests/check/gst/struct_i386.h:
3457 ifdef out the XML structs
3459 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
3461 * gst/gstvalue.c: (gst_value_transform_double_fraction):
3462 floor is not needed, F is always positive; this obviates the
3463 need for adding -lm when building without libxml
3465 2005-12-12 Wim Taymans <wim@fluendo.com>
3467 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
3468 Take current playback rate into account when reporting
3471 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
3473 * docs/manual/mime-world.fig:
3474 Let's try this again, this time with a file that is
3475 actually in XFig format.
3477 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
3479 * docs/manual/mime-world.fig:
3480 Add audioconvert element to diagram so that it
3481 matches the text and the code (fixes #319526).
3483 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
3485 * docs/pwg/building-chainfn.xml:
3486 * docs/pwg/building-pads.xml:
3487 * docs/pwg/building-state.xml:
3488 * docs/pwg/other-source.xml:
3489 Update state change stuff for 0.10 (fixes #322969).
3491 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
3493 * docs/manual/advanced-dataaccess.xml:
3494 * docs/manual/appendix-checklist.xml:
3495 * docs/manual/appendix-programs.xml:
3496 * docs/manual/basics-pads.xml:
3497 * docs/manual/highlevel-components.xml:
3498 * docs/manual/manual.xml:
3499 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
3500 add converters in front of pipelines; remove curly
3501 brackets for threads stuff, they no longer exist; use
3502 GST_TYPE_FRACTION for framerates; update some pieces of
3503 code to 0.10, but there's plenty more to do.
3505 * docs/manual/appendix-porting.xml:
3506 Expand on asynchroneous state changes; s/0.9/0.10/;
3507 mention disappearance of gst_init_get_popt_table()
3510 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
3512 * docs/faq/using.xml:
3513 Spider no longer exists, and neither does gst-launch-ext.
3514 Update examples to use decodebin and playbin and put
3515 converters in front of sinks (fixes #323726).
3517 2005-12-09 Michael Smith <msmith@fluendo.com>
3519 * plugins/elements/gsttypefindelement.c: (find_peek),
3520 (gst_type_find_element_chain):
3521 Fix leaking element factories in typefinding.
3522 Fix problem where we forgot about a probable type on non-seekable
3523 files, and thus later mis-typefound it.
3525 2005-12-09 Michael Smith <msmith@fluendo.com>
3527 * common/m4/gst-makecontext.m4:
3528 * common/m4/gst-mcsc.m4:
3530 * win32/common/config.h:
3531 * win32/common/config.h.in:
3532 Remove makecontext stuff; not used in 0.10 and causes problems on
3533 HPUX according to bug #322441
3535 2005-12-07 Wim Taymans <wim@fluendo.com>
3537 * tests/check/Makefile.am:
3538 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
3540 * tests/check/libs/struct_i386.h:
3541 Added ABI check for libs
3543 2005-12-07 Wim Taymans <wim@fluendo.com>
3545 * tests/check/Makefile.am:
3546 And add the struct_i386.h to dist.
3548 2005-12-07 Wim Taymans <wim@fluendo.com>
3550 * tests/check/Makefile.am:
3551 * tests/check/gst/.cvsignore:
3552 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
3554 * tests/check/gst/struct_i386.h:
3555 Added check for ABI compatibility.
3557 2005-12-07 Wim Taymans <wim@fluendo.com>
3559 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
3560 (gst_fake_src_get_times), (gst_fake_src_create):
3561 Fix broken sync option, fixes #323259
3563 2005-12-07 Wim Taymans <wim@fluendo.com>
3568 * gst/gstcaps.c: (gst_caps_is_equal):
3569 Don't assert on NULL <--> X. Fixes #323260
3571 * gst/gstminiobject.c: (gst_mini_object_replace):
3572 If we're doing atomic operations, we might just as well use
3573 the proper way to get an atomic pointer.
3575 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
3578 2005-12-07 Michael Smith <msmith@fluendo.com>
3580 * gst/parse/grammar.y:
3581 Remove handling of { } for threads.
3583 2005-12-06 David Schleef <ds@schleef.org>
3585 * libs/gst/base/gstbasetransform.c: speling fix.
3587 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
3589 * docs/libs/tmpl/gstdataprotocol.sgml:
3590 * docs/random/omega/testing/gstobject.c:
3594 * gst/gstelementfactory.c:
3597 * gst/gstghostpad.c:
3599 * gst/gstpadtemplate.c:
3600 * gst/gstregistryxml.c:
3602 * gst/gsttagsetter.c:
3603 * gst/gsttypefind.c:
3605 * libs/gst/base/gstbasesrc.c:
3606 * libs/gst/net/gstnetclientclock.c:
3607 * libs/gst/net/gstnettimeprovider.c:
3608 * plugins/elements/gstfakesrc.c:
3609 * plugins/elements/gstfdsrc.c:
3610 * plugins/elements/gstfilesrc.c:
3611 * plugins/elements/gstidentity.c:
3612 * plugins/elements/gstqueue.c:
3613 * plugins/elements/gsttypefindelement.c:
3614 * plugins/indexers/gstfileindex.c:
3615 * plugins/indexers/gstmemindex.c:
3616 * tests/check/gst/gsttag.c:
3617 * tests/old/examples/cutter/cutter.c:
3618 * tests/old/examples/mixer/mixer.c:
3619 * tests/old/examples/xml/runxml.c: (main):
3620 * tests/old/testsuite/caps/normalisation.c:
3621 * tests/old/testsuite/debug/global.c:
3622 * tests/old/testsuite/parse/parse1.c:
3623 * tools/gst-xmlinspect.c:
3624 * win32/common/dirent.c:
3627 === release 0.10.0 ===
3629 2005-12-05 <thomas (at) apestaart (dot) org>
3632 releasing 0.10.0, "Maroilles"
3634 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
3636 submitted by: Funda Wang <fundawang@linux.net.cn>
3640 added Chinese (Traditional) translation
3642 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
3644 * docs/gst/gstreamer-sections.txt:
3645 * docs/libs/tmpl/gstdataprotocol.sgml:
3646 * docs/random/thomasvs/TODO:
3651 2005-12-05 Andy Wingo <wingo@pobox.com>
3653 patch by: Wim Taymans <wim@fluendo.com>
3655 * libs/gst/base/gstbasetransform.c
3656 (gst_base_transform_prepare_output_buf)
3657 (gst_base_transform_buffer_alloc):
3658 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
3659 alloc_buffer_and_set_caps.
3661 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
3662 set_caps on the source pad.
3663 (gst_pad_alloc_buffer_and_set_caps): New function, does what
3664 alloc_buffer used to do. Fixes #322874.
3666 * docs/gst/gstreamer-sections.txt:
3667 * docs/design/part-negotiation.txt:
3668 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
3671 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
3673 patch by: Sebastien Moutte
3676 * win32/common/config.h.in:
3677 * win32/vs6/libgstcontroller.dsp:
3680 2005-12-05 Wim Taymans <wim@fluendo.com>
3682 * gst/gstcaps.c: (gst_caps_is_equal):
3683 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
3684 (gst_fake_src_create):
3685 Back out previous code changes, leave doc updates, file bugs
3688 2005-12-05 Wim Taymans <wim@fluendo.com>
3690 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
3691 (gst_fake_src_get_times), (gst_fake_src_create):
3692 * plugins/elements/gstfakesrc.h:
3693 Fix broken sync code.
3695 2005-12-05 Wim Taymans <wim@fluendo.com>
3697 * gst/gstcaps.c: (gst_caps_is_equal):
3698 Comparing NULL against !NULL yields different caps, not a
3701 2005-12-05 Wim Taymans <wim@fluendo.com>
3703 * gst/gstpipeline.c:
3704 Fix small typo in docs.
3706 2005-12-05 Andy Wingo <wingo@pobox.com>
3708 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
3710 * gst/gst.c (init_post): remove hard-coded 0.9 location for
3711 registries/plugins with a MAJORMINOR one.
3712 (plugin_desc): Rename library from gstcoreleements to
3713 staticelements. Fixes #323222.
3715 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
3717 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
3718 Change debug category to 'collectpads' from 'collect_pads'
3721 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
3723 patch by: Sebastien Moutte
3725 * libs/gst/controller/gstinterpolation.c:
3726 use convert function for uint64/double
3727 * win32/vs6/libgstcontroller.dsp:
3730 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
3732 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
3733 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
3735 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
3736 add tests that seem to show that the guint64/gdouble conversions
3739 2005-12-02 Wim Taymans <wim@fluendo.com>
3741 * gst/gstregistry.c: (gst_registry_add_path):
3742 * gst/gstregistry.h:
3743 * gst/gstregistryxml.c:
3746 2005-12-02 Wim Taymans <wim@fluendo.com>
3748 * gst/gstutils.c: (gst_util_uint64_scale_int64),
3749 (gst_util_uint64_scale_int):
3752 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3755 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
3758 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
3761 * win32/common/config.h:
3762 * win32/vs6/gstreamer.dsw:
3763 * win32/vs6/libgstcoreelements.dsp:
3764 * win32/vs6/libgstelements.dsp:
3765 renamed core elements plugin
3767 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
3769 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
3771 do piece-wise major/minor comparison so 0.9 < 0.10
3772 also allow .exe extensions for tools
3774 2005-12-02 Michael Smith <msmith@fluendo.com>
3777 Escape a % to make gtkdoc happier; bug 322958.
3779 === release 0.9.7 ===
3781 2005-12-01 <thomas (at) apestaart (dot) org>
3784 releasing 0.9.7, "My Dog Has No Nose"
3786 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3788 * common/gst-xmlinspect.py:
3790 * docs/libs/tmpl/gstdataprotocol.sgml:
3791 * docs/random/release:
3810 * win32/common/config.h:
3811 * win32/common/config.h.in:
3812 * win32/vs6/gst_inspect.dsp:
3813 * win32/vs6/gst_launch.dsp:
3814 * win32/vs6/libgstbase.dsp:
3815 * win32/vs6/libgstelements.dsp:
3816 * win32/vs6/libgstreamer.dsp:
3817 * win32/vs7/GStreamer.vcproj:
3818 * win32/vs7/gst-inspect.vcproj:
3819 * win32/vs7/gst-launch.vcproj:
3820 * win32/vs7/libgstbase.vcproj:
3821 bump GST_MAJORMINOR to 0.10
3822 reset libtool version
3824 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3828 Added Bulgarian translation by (Alexander Shopov)
3830 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3832 * tests/check/gst/gstplugin.c:
3835 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3837 * common/gst-xmlinspect.py:
3838 * common/gtk-doc-plugins.mak:
3841 * docs/gst/Makefile.am:
3842 * docs/gst/gstreamer-docs.sgml:
3843 * docs/gst/gstreamer-sections.txt:
3844 * docs/gst/gstreamer.types:
3845 * docs/gst/gstreamer.types.in:
3846 * docs/plugins/Makefile.am:
3847 * docs/plugins/gstreamer-plugins-docs.sgml:
3848 * docs/plugins/gstreamer-plugins-sections.txt:
3849 * docs/plugins/gstreamer-plugins.types:
3850 * docs/plugins/inspect.stamp:
3851 * docs/plugins/inspect/plugin-coreelements.xml:
3852 * docs/plugins/inspect/plugin-coreindexers.xml:
3853 * docs/plugins/scanobj-build.stamp:
3854 * gstreamer.spec.in:
3855 * plugins/elements/Makefile.am:
3856 * plugins/elements/gstelements.c:
3857 * plugins/elements/gstfakesink.c:
3858 * plugins/elements/gstfakesrc.c:
3859 * plugins/elements/gstfilesink.c:
3860 * plugins/elements/gstfilesrc.c:
3861 * plugins/elements/gstqueue.c:
3862 * plugins/indexers/Makefile.am:
3863 * plugins/indexers/gstindexers.c:
3864 document core plugins in a separate document just like all the
3866 rename these plugins to something starting with core
3868 2005-12-01 Andy Wingo <wingo@pobox.com>
3870 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
3871 padding here before, but it missed the commit.
3873 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
3875 * libs/gst/controller/gstinterpolation.c:
3876 whitespace prices have crashed, we should feel free to use some now
3877 use gst_guint64_to_gdouble
3879 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
3881 * libs/gst/controller/gstcontroller.c:
3882 * libs/gst/controller/gsthelper.c:
3883 * libs/gst/controller/gstinterpolation.c:
3884 * libs/gst/controller/lib.c:
3885 wrap config.h include
3887 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
3889 * docs/gst/gstreamer-sections.txt:
3892 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
3894 * plugins/elements/gstelements.c:
3895 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
3896 (gst_fd_sink__class_init), (gst_fd_sink__init),
3897 (gst_fd_sink__chain), (gst_fd_sink__set_property),
3898 (gst_fd_sink__get_property):
3899 * plugins/elements/gstfdsink.h:
3900 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
3901 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
3902 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
3903 (gst_fd_src_unlock), (gst_fd_src_set_property),
3904 (gst_fd_src_get_property), (gst_fd_src_create),
3905 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
3906 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
3907 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
3908 (gst_fd_src_uri_handler_init):
3909 * plugins/elements/gstfdsrc.h:
3910 * plugins/elements/gstqueue.c: (gst_queue_get_type):
3913 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3915 * docs/gst/Makefile.am:
3916 * docs/gst/gstreamer.types.in:
3920 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
3926 * gst/gstregistry.h:
3927 * tests/benchmarks/complexity.c:
3928 * tests/benchmarks/mass-elements.c:
3929 * tests/check/Makefile.am:
3930 * tools/Makefile.am:
3931 * tools/gst-inspect.c:
3932 * tools/gst-xmlinspect.c:
3933 various fixes to make
3934 --disable-nls --disable-registry --disable-loadsave
3935 --disable-parse --disable-gst-debug
3936 work and get the core .so down to 360444 bytes after stripping
3938 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
3943 * docs/random/thomasvs/TODO:
3944 * tests/Makefile.am:
3948 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
3950 * win32/GStreamer.vcproj:
3953 * win32/Makefile.inspect:
3954 * win32/Makefile.launch:
3955 * win32/Makefile.register:
3957 * win32/gst-inspect.vcproj:
3958 * win32/gst-launch.vcproj:
3959 * win32/gst-register.vcproj:
3960 * win32/gstelements.vcproj:
3961 * win32/gstgetbits.def:
3962 * win32/gstgetbits.vcproj:
3963 * win32/gstreamer-dbg.def:
3964 * win32/gstreamer.def:
3965 * win32/libgstbase.def:
3966 * win32/libgstbase.vcproj:
3967 * win32/link_oldruntime.c:
3972 move even more stuff, win32/ is nice and clean now
3974 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
3976 * libs/gst/control/.cvsignore:
3981 * win32/gstbytestream.def:
3982 * win32/gstbytestream.vcproj:
3983 * win32/gstconfig.h:
3984 * win32/gstenumtypes.c:
3985 * win32/gstenumtypes.h:
3986 * win32/gstoptimalscheduler.vcproj:
3987 * win32/gstversion.h:
3989 * win32/testsuite/bins.vcproj:
3990 * win32/testsuite/bytestream.vcproj:
3991 * win32/testsuite/caps.vcproj:
3992 * win32/testsuite/cleanup.vcproj:
3993 * win32/testsuite/clock.vcproj:
3994 * win32/testsuite/debug.vcproj:
3995 * win32/testsuite/dlopen.vcproj:
3996 * win32/testsuite/dynparams.vcproj:
3997 * win32/testsuite/elements.vcproj:
3998 * win32/testsuite/ghostpads.vcproj:
3999 * win32/testsuite/indexers.vcproj:
4000 * win32/testsuite/negotiation.vcproj:
4001 * win32/testsuite/parse.vcproj:
4002 * win32/testsuite/plugin.vcproj:
4003 * win32/testsuite/refcounting.vcproj:
4004 * win32/testsuite/schedulers.vcproj:
4005 * win32/testsuite/states.vcproj:
4006 * win32/testsuite/tags.vcproj:
4007 * win32/testsuite/threads.vcproj:
4008 remove old win32 stuff that isn't maintained and should be
4011 2005-11-30 Andy Wingo <wingo@pobox.com>
4013 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
4014 loading the gst.interfaces python module bork.
4016 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
4017 available since GLib 2.2. Fixes #318031.
4019 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4023 * check/Makefile.am:
4024 * check/elements/.cvsignore:
4025 * check/elements/fakesrc.c:
4026 * check/elements/fdsrc.c:
4027 * check/elements/identity.c:
4028 * check/generic/.cvsignore:
4029 * check/generic/states.c:
4030 * check/gst-libs/.cvsignore:
4031 * check/gst-libs/controller.c:
4032 * check/gst-libs/gdp.c:
4033 * check/gst/.cvsignore:
4034 * check/gst/capslist.h:
4036 * check/gst/gstbin.c:
4037 * check/gst/gstbuffer.c:
4038 * check/gst/gstbus.c:
4039 * check/gst/gstcaps.c:
4040 * check/gst/gstelement.c:
4041 * check/gst/gstevent.c:
4042 * check/gst/gstghostpad.c:
4043 * check/gst/gstiterator.c:
4044 * check/gst/gstmessage.c:
4045 * check/gst/gstminiobject.c:
4046 * check/gst/gstobject.c:
4047 * check/gst/gstpad.c:
4048 * check/gst/gstpipeline.c:
4049 * check/gst/gstplugin.c:
4050 * check/gst/gstsegment.c:
4051 * check/gst/gststructure.c:
4052 * check/gst/gstsystemclock.c:
4053 * check/gst/gsttag.c:
4054 * check/gst/gstutils.c:
4055 * check/gst/gstvalue.c:
4056 * check/net/.cvsignore:
4057 * check/net/gstnetclientclock.c:
4058 * check/net/gstnettimeprovider.c:
4059 * check/pipelines/.cvsignore:
4060 * check/pipelines/cleanup.c:
4061 * check/pipelines/simple_launch_lines.c:
4062 * check/pipelines/stress.c:
4063 * check/states/.cvsignore:
4064 * check/states/sinks.c:
4066 * examples/Makefile.am:
4067 * examples/appreader/.cvsignore:
4068 * examples/appreader/Makefile.am:
4069 * examples/appreader/appreader.c:
4070 * examples/controller/.cvsignore:
4071 * examples/controller/Makefile.am:
4072 * examples/controller/audio-example.c:
4073 * examples/cutter/.cvsignore:
4074 * examples/cutter/Makefile.am:
4075 * examples/cutter/cutter.c:
4076 * examples/cutter/cutter.h:
4077 * examples/events/Makefile.am:
4078 * examples/events/seek.c:
4079 * examples/helloworld/.cvsignore:
4080 * examples/helloworld/Makefile.am:
4081 * examples/helloworld/helloworld.c:
4082 * examples/helloworld2/.cvsignore:
4083 * examples/helloworld2/Makefile.am:
4084 * examples/helloworld2/helloworld2.c:
4085 * examples/launch/.cvsignore:
4086 * examples/launch/Makefile.am:
4087 * examples/launch/mp3parselaunch.c:
4088 * examples/launch/mp3play:
4089 * examples/manual/.cvsignore:
4090 * examples/manual/Makefile.am:
4091 * examples/manual/extract.pl:
4092 * examples/metadata/Makefile.am:
4093 * examples/metadata/read-metadata.c:
4094 * examples/mixer/.cvsignore:
4095 * examples/mixer/Makefile.am:
4096 * examples/mixer/mixer.c:
4097 * examples/mixer/mixer.h:
4098 * examples/pingpong/.cvsignore:
4099 * examples/pingpong/Makefile.am:
4100 * examples/pingpong/pingpong.c:
4101 * examples/plugins/.cvsignore:
4102 * examples/plugins/Makefile.am:
4103 * examples/plugins/example.c:
4104 * examples/plugins/example.h:
4105 * examples/pwg/.cvsignore:
4106 * examples/pwg/Makefile.am:
4107 * examples/pwg/extract.pl:
4108 * examples/queue/.cvsignore:
4109 * examples/queue/Makefile.am:
4110 * examples/queue/queue.c:
4111 * examples/queue2/.cvsignore:
4112 * examples/queue2/Makefile.am:
4113 * examples/queue2/queue2.c:
4114 * examples/queue3/.cvsignore:
4115 * examples/queue3/Makefile.am:
4116 * examples/queue3/queue3.c:
4117 * examples/queue4/.cvsignore:
4118 * examples/queue4/Makefile.am:
4119 * examples/queue4/queue4.c:
4120 * examples/retag/.cvsignore:
4121 * examples/retag/Makefile.am:
4122 * examples/retag/retag.c:
4123 * examples/retag/transcode.c:
4124 * examples/thread/.cvsignore:
4125 * examples/thread/Makefile.am:
4126 * examples/thread/thread.c:
4127 * examples/typefind/.cvsignore:
4128 * examples/typefind/Makefile.am:
4129 * examples/typefind/typefind.c:
4130 * examples/xml/.cvsignore:
4131 * examples/xml/Makefile.am:
4132 * examples/xml/createxml.c:
4133 * examples/xml/runxml.c:
4134 * tests/Makefile.am:
4135 * tests/check/Makefile.am:
4136 * testsuite/.cvsignore:
4137 * testsuite/Makefile.am:
4139 * testsuite/caps/.cvsignore:
4140 * testsuite/caps/Makefile.am:
4141 * testsuite/caps/app_fixate.c:
4142 * testsuite/caps/audioscale.c:
4143 * testsuite/caps/caps.c:
4144 * testsuite/caps/caps.h:
4145 * testsuite/caps/caps_strings:
4146 * testsuite/caps/compatibility.c:
4147 * testsuite/caps/deserialize.c:
4148 * testsuite/caps/enumcaps.c:
4149 * testsuite/caps/eratosthenes.c:
4150 * testsuite/caps/filtercaps.c:
4151 * testsuite/caps/fixed.c:
4152 * testsuite/caps/fraction-convert.c:
4153 * testsuite/caps/fraction-multiply-and-zero.c:
4154 * testsuite/caps/intersect2.c:
4155 * testsuite/caps/intersection.c:
4156 * testsuite/caps/normalisation.c:
4157 * testsuite/caps/random.c:
4158 * testsuite/caps/renegotiate.c:
4159 * testsuite/caps/sets.c:
4160 * testsuite/caps/simplify.c:
4161 * testsuite/caps/string-conversions.c:
4162 * testsuite/caps/structure.c:
4163 * testsuite/caps/subtract.c:
4164 * testsuite/caps/union.c:
4165 * testsuite/debug/.cvsignore:
4166 * testsuite/debug/Makefile.am:
4167 * testsuite/debug/category.c:
4168 * testsuite/debug/commandline.c:
4169 * testsuite/debug/global.c:
4170 * testsuite/debug/output.c:
4171 * testsuite/debug/printf_extension.c:
4172 * testsuite/dlopen/.cvsignore:
4173 * testsuite/dlopen/Makefile.am:
4174 * testsuite/dlopen/dlopen_gst.c:
4175 * testsuite/dlopen/loadgst.c:
4176 * testsuite/elements/.cvsignore:
4177 * testsuite/elements/Makefile.am:
4178 * testsuite/elements/gst-inspect-check.in:
4179 * testsuite/elements/struct_i386.h:
4180 * testsuite/elements/struct_size.c:
4181 * testsuite/indexers/.cvsignore:
4182 * testsuite/indexers/Makefile.am:
4183 * testsuite/indexers/cache1.c:
4184 * testsuite/indexers/indexdump.c:
4185 * testsuite/parse/.cvsignore:
4186 * testsuite/parse/Makefile.am:
4187 * testsuite/parse/parse1.c:
4188 * testsuite/parse/parse2.c:
4189 * testsuite/plugin/.cvsignore:
4190 * testsuite/plugin/Makefile.am:
4191 * testsuite/plugin/README:
4192 * testsuite/plugin/dynamic.c:
4193 * testsuite/plugin/linked.c:
4194 * testsuite/plugin/loading.c:
4195 * testsuite/plugin/registry.c:
4196 * testsuite/plugin/static.c:
4197 * testsuite/plugin/static2.c:
4198 * testsuite/plugin/testplugin.c:
4199 * testsuite/plugin/testplugin2.c:
4200 * testsuite/plugin/testplugin2_s.c:
4201 * testsuite/plugin/testplugin_s.c:
4202 * testsuite/refcounting/.cvsignore:
4203 * testsuite/refcounting/Makefile.am:
4204 * testsuite/refcounting/bin.c:
4205 * testsuite/refcounting/element.c:
4206 * testsuite/refcounting/element_pad.c:
4207 * testsuite/refcounting/mainloop.c:
4208 * testsuite/refcounting/mem.c:
4209 * testsuite/refcounting/mem.h:
4210 * testsuite/refcounting/object.c:
4211 * testsuite/refcounting/pad.c:
4212 * testsuite/refcounting/sched.c:
4213 * testsuite/refcounting/thread.c:
4214 * testsuite/states/.cvsignore:
4215 * testsuite/states/Makefile.am:
4216 * testsuite/states/bin.c:
4217 * testsuite/states/locked.c:
4218 * testsuite/states/parent.c:
4219 * testsuite/threads/.cvsignore:
4220 * testsuite/threads/159566.c:
4221 * testsuite/threads/159852.c:
4222 * testsuite/threads/Makefile.am:
4223 * testsuite/threads/queue.c:
4224 * testsuite/threads/signals.c:
4225 * testsuite/threads/staticrec.c:
4226 * testsuite/threads/thread.c:
4227 * testsuite/threads/threadb.c:
4228 * testsuite/threads/threadc.c:
4229 * testsuite/threads/threadd.c:
4230 * testsuite/threads/threade.c:
4231 * testsuite/threads/threadf.c:
4232 * testsuite/threads/threadg.c:
4233 * testsuite/threads/threadh.c:
4234 * testsuite/threads/threadi.c:
4235 move all of these under tests
4237 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4240 * tests/Makefile.am:
4243 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4245 * docs/gst/gstreamer-sections.txt:
4246 * tests/sched/.cvsignore:
4247 * tests/sched/Makefile.am:
4248 * tests/sched/cases/(fs-fs).xml:
4249 * tests/sched/cases/(fs-i-fs).xml:
4250 * tests/sched/cases/(fs-i-i-fs).xml:
4251 * tests/sched/cases/(fs-i-q[i-fs]).xml:
4252 * tests/sched/dynamic-pipeline.c:
4253 * tests/sched/interrupt1.c:
4254 * tests/sched/interrupt2.c:
4255 * tests/sched/interrupt3.c:
4256 * tests/sched/runtestcases:
4257 * tests/sched/runxml.c:
4258 * tests/sched/sched-stress.c:
4259 * tests/sched/sort.c:
4260 * tests/sched/testcases:
4261 * tests/sched/testcases1.tc:
4262 * tests/seeking/.cvsignore:
4263 * tests/seeking/Makefile.am:
4264 * tests/seeking/seeking1.c:
4265 * tests/threadstate/.cvsignore:
4266 * tests/threadstate/Makefile.am:
4267 * tests/threadstate/test1.c:
4268 * tests/threadstate/test2.c:
4269 * tests/threadstate/threadstate1.c:
4270 * tests/threadstate/threadstate2.c:
4271 * tests/threadstate/threadstate3.c:
4272 * tests/threadstate/threadstate4.c:
4273 * tests/threadstate/threadstate5.c:
4274 remove obsolete tests
4276 * tests/bench-complexity.scm:
4277 * tests/bench-mass_elements.scm:
4278 * tests/complexity.c:
4279 * tests/complexity.gnuplot:
4280 * tests/instantiate/.cvsignore:
4281 * tests/instantiate/Makefile.am:
4282 * tests/instantiate/caps.c:
4283 * tests/mass_elements.c:
4284 * tests/network-clock-utils.scm:
4285 * tests/network-clock.scm:
4287 First pass at cleaning up tests/ dir before moving the rest
4288 Combined with CVS surgery
4290 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4293 queue has moved, update
4295 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4297 * docs/gst/gstreamer-sections.txt:
4298 remove double entries from the docs
4299 * gst/gst_private.h:
4300 * gst/gstinfo.c: (_gst_debug_init):
4301 remove the THREAD debug category
4305 * docs/gst/gstreamer.types:
4306 * plugins/elements/gstqueue.c: (gst_queue_get_type),
4307 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
4308 completely move queue and fix up debugging categories
4310 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4312 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
4313 make initialization portable, using LL is not
4315 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4317 * win32/common/gstconfig.h:
4320 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4322 * win32/common/libgstreamer.def:
4323 rename symbols; sort base section
4325 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4327 * gst/gstclock.c: (do_linear_regression):
4328 remove crack non-portable handrolled DEBUG macro
4330 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4332 * docs/random/release:
4334 * win32/common/gstenumtypes.c: (register_gst_object_flags),
4335 (gst_object_flags_get_type), (register_gst_bin_flags),
4336 (gst_bin_flags_get_type), (register_gst_buffer_flag),
4337 (gst_buffer_flag_get_type), (register_gst_bus_flags),
4338 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
4339 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
4340 (gst_caps_flags_get_type), (register_gst_clock_return),
4341 (gst_clock_return_get_type), (register_gst_clock_entry_type),
4342 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
4343 (gst_clock_flags_get_type), (register_gst_state),
4344 (gst_state_get_type), (register_gst_state_change_return),
4345 (gst_state_change_return_get_type), (register_gst_state_change),
4346 (gst_state_change_get_type), (register_gst_element_flags),
4347 (gst_element_flags_get_type), (register_gst_core_error),
4348 (gst_core_error_get_type), (register_gst_library_error),
4349 (gst_library_error_get_type), (register_gst_resource_error),
4350 (gst_resource_error_get_type), (register_gst_stream_error),
4351 (gst_stream_error_get_type), (register_gst_event_type_flags),
4352 (gst_event_type_flags_get_type), (register_gst_event_type),
4353 (gst_event_type_get_type), (register_gst_seek_type),
4354 (gst_seek_type_get_type), (register_gst_seek_flags),
4355 (gst_seek_flags_get_type), (register_gst_format),
4356 (gst_format_get_type), (register_gst_index_certainty),
4357 (gst_index_certainty_get_type), (register_gst_index_entry_type),
4358 (gst_index_entry_type_get_type),
4359 (register_gst_index_lookup_method),
4360 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
4361 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
4362 (gst_index_resolver_method_get_type), (register_gst_index_flags),
4363 (gst_index_flags_get_type), (register_gst_debug_level),
4364 (gst_debug_level_get_type), (register_gst_debug_color_flags),
4365 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
4366 (gst_iterator_result_get_type), (register_gst_iterator_item),
4367 (gst_iterator_item_get_type), (register_gst_message_type),
4368 (gst_message_type_get_type), (register_gst_mini_object_flags),
4369 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
4370 (gst_pad_link_return_get_type), (register_gst_flow_return),
4371 (gst_flow_return_get_type), (register_gst_activate_mode),
4372 (gst_activate_mode_get_type), (register_gst_pad_direction),
4373 (gst_pad_direction_get_type), (register_gst_pad_flags),
4374 (gst_pad_flags_get_type), (register_gst_pad_presence),
4375 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
4376 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
4377 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
4378 (gst_plugin_error_get_type), (register_gst_plugin_flags),
4379 (gst_plugin_flags_get_type), (register_gst_rank),
4380 (gst_rank_get_type), (register_gst_query_type),
4381 (gst_query_type_get_type), (register_gst_tag_merge_mode),
4382 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
4383 (gst_tag_flag_get_type), (register_gst_task_state),
4384 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
4385 (gst_alloc_trace_flags_get_type),
4386 (register_gst_type_find_probability),
4387 (gst_type_find_probability_get_type), (register_gst_uri_type),
4388 (gst_uri_type_get_type), (register_gst_parse_error),
4389 (gst_parse_error_get_type):
4390 * win32/common/gstenumtypes.h:
4391 * win32/common/gstversion.h:
4392 update visual studio generated files
4394 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4396 * win32/vs6/libgstbase.dsp:
4397 * win32/vs6/libgstelements.dsp:
4398 update project files for new locations
4400 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4405 reinstate and update
4410 * docs/random/LICENSE:
4413 2005-11-30 Edward Hervey <edward@fluendo.com>
4415 * gst/gsttypefind.c: (gst_type_find_register):
4416 * gst/gsttypefind.h:
4417 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
4418 (gst_type_find_factory_dispose):
4419 * gst/gsttypefindfactory.h:
4420 Fix memory leak in GstTypeFindFactory.
4422 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4425 * plugins/elements/Makefile.am:
4426 * plugins/elements/gstelements.c:
4427 * plugins/elements/gstqueue.c:
4428 move queue from core to the elements plugin
4430 2005-11-29 Andy Wingo <wingo@pobox.com>
4432 * libs/gst/base/gstbasetransform.h:
4433 * libs/gst/base/gstbasesrc.h:
4434 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
4436 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
4437 of pointers by which to pad very extensible base classes (like the
4438 ones in libs/gst/base).
4440 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4442 * docs/gst/gstreamer-docs.sgml:
4443 * docs/gst/gstreamer-sections.txt:
4444 * docs/libs/gstreamer-libs-docs.sgml:
4445 * docs/libs/gstreamer-libs-sections.txt:
4446 moving documentation from core to lib
4448 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4450 * check/Makefile.am:
4452 * docs/gst/Makefile.am:
4454 * gst/base/.cvsignore:
4455 * gst/base/Makefile.am:
4457 * gst/base/gstadapter.c:
4458 * gst/base/gstadapter.h:
4459 * gst/base/gstbasesink.c:
4460 * gst/base/gstbasesink.h:
4461 * gst/base/gstbasesrc.c:
4462 * gst/base/gstbasesrc.h:
4463 * gst/base/gstbasetransform.c:
4464 * gst/base/gstbasetransform.h:
4465 * gst/base/gstcollectpads.c:
4466 * gst/base/gstcollectpads.h:
4467 * gst/base/gstpushsrc.c:
4468 * gst/base/gstpushsrc.h:
4469 * gst/base/gsttypefindhelper.c:
4470 * gst/base/gsttypefindhelper.h:
4471 * gst/check/Makefile.am:
4472 * gst/check/gstcheck.c:
4473 * gst/check/gstcheck.h:
4474 * gst/net/Makefile.am:
4476 * gst/net/gstnetclientclock.c:
4477 * gst/net/gstnetclientclock.h:
4478 * gst/net/gstnettimepacket.c:
4479 * gst/net/gstnettimepacket.h:
4480 * gst/net/gstnettimeprovider.c:
4481 * gst/net/gstnettimeprovider.h:
4482 * libs/gst/Makefile.am:
4483 * libs/gst/base/Makefile.am:
4484 * libs/gst/base/gstbasetransform.c:
4485 * libs/gst/check/Makefile.am:
4486 * plugins/elements/Makefile.am:
4488 CVS surgery + support to move base, check, and net out of gst
4491 2005-11-29 Andy Wingo <wingo@pobox.com>
4493 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
4495 * gst/gststructure.h (struct _GstStructure): Only one pointer of
4498 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
4500 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
4502 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
4504 * gst/gstobject.h: (struct _GstObject): Only one pointer of
4505 padding; reduces object size by about 30%. We don't expect
4506 anything else to go into gstobject.
4508 * gst/gstminiobject.h (struct _GstMiniObject)
4509 (struct _GstMiniObjectClass): Only one pointer of padding; the
4510 payload is only a pointer and two ints anyway. For the class there
4511 are only two methods as well.
4513 * gst/gstelement.h (struct _GstElementClass): Removed
4514 the state_changed signal callback, it is not used.
4516 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
4518 * docs/gst/gstreamer.types:
4519 fix includes, though they are a little dinky
4521 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4523 * check/Makefile.am:
4524 look in the right place for elements, a lot more chance of
4527 remove indexers and elements subdirs
4528 * plugins/Makefile.am:
4529 make indexers conditional
4531 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4535 * plugins/elements/Makefile.am:
4536 * plugins/elements/gstcapsfilter.c:
4537 * plugins/elements/gstfilesink.c:
4538 * plugins/elements/gstfilesrc.c:
4539 * plugins/elements/gstidentity.c:
4540 * plugins/indexers/Makefile.am:
4541 do CVS surgery and related build fixery to move elements
4542 and indexers in a new gstreamer/plugins directory, out of the
4545 2005-11-29 Andy Wingo <wingo@pobox.com>
4547 * check/Makefile.am:
4548 * pkgconfig/gstreamer-net-uninstalled.pc.in:
4549 * pkgconfig/gstreamer-net.pc.in:
4550 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
4553 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
4555 * tools/Makefile.am:
4556 * tools/gst-complete.1.in:
4557 * tools/gst-complete.c:
4558 * tools/gst-compprep.1.in:
4559 * tools/gst-compprep.c:
4560 removing -compprep and -complete
4562 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
4564 * gst/gstevent.c: (gst_event_new_new_segment),
4565 (gst_event_parse_new_segment):
4567 fix #320529 - clean up new_segment API and structure.
4568 Let's hope everyone was using the methods, and not the structure.
4570 2005-11-29 Edward Hervey <edward@fluendo.com>
4572 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4573 (gst_base_sink_event), (gst_base_sink_do_sync),
4574 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
4575 Properly handle non GST_FORMAT_TIME segment
4576 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
4577 Properly handle non GST_FORMAT_TIME segment
4579 This function is valid if the accumulator is 0 and the format
4580 is different from the requested format.
4582 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
4584 * docs/gst/gstreamer-sections.txt:
4585 Add gst_query_new_seeking and gst_query_parse_seeking to the
4588 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
4590 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
4591 Treat a pad alloc with new caps the same as if we were not
4592 negotiated, in order to allow a changing upstream output
4593 to produce a new format of data.
4595 2005-11-29 Edward Hervey <edward@fluendo.com>
4597 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
4598 (gst_base_transform_event), (gst_base_transform_eventfunc):
4599 The event virtual method is now properly implemented, with a default
4601 Sub classes should call the parent_class event method. They should
4602 return FALSE if they had a problem handling the given event, or don't
4603 want GstBaseTransform to send that even downstream
4604 * gst/elements/gstidentity.c: (gst_identity_class_init),
4605 (gst_identity_init), (gst_identity_event),
4606 (gst_identity_transform_ip), (gst_identity_set_property),
4607 (gst_identity_get_property):
4608 * gst/elements/gstidentity.h:
4609 Added the single-segment boolean property.
4610 If set to TRUE, it will output a single segment of data, starting from
4611 0, will eat up all incoming newsegment, and modify the timestamp of the
4614 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
4616 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
4617 Don't ref NULL target pad (#322751). Improve docs.
4619 2005-11-29 Michael Smith <msmith@fluendo.com>
4621 * gst/gstregistryxml.c: (load_plugin):
4622 Don't crash if we failed to load a feature from a plugin.
4624 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
4626 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4628 use more check API and less GLib API
4630 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
4633 don't run checks if we don't have check
4635 remove the registry when running make torture
4636 * docs/gst/gstreamer-sections.txt:
4637 remove second multiply
4638 * gst/gstqueue.c: (gst_queue_loop):
4639 fix a compile warning when disabling debug
4641 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
4644 Hey! Let's print the pad name if the pointer != NULL instead
4645 of when it == NULL :-)
4647 2005-11-28 Wim Taymans <wim@fluendo.com>
4649 * check/gst/gstutils.c: (GST_START_TEST):
4650 Updated check, add some scaling accuracy checking code.
4652 * gst/gstutils.c: (gst_util_div128_64),
4653 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
4654 (gst_util_uint64_scale_int):
4655 Fix 6 times faster division code. Optimize for common
4656 1/1 and less common X/1 cases.
4658 2005-11-28 Wim Taymans <wim@fluendo.com>
4660 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
4663 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
4664 (do_linear_regression), (gst_clock_add_observation):
4666 Release lock when the clock cannot be slaved.
4667 Catch the case where the regression returned an invalid denominator.
4669 * gst/gstutils.c: (gst_util_div128_64_iterate),
4670 (gst_util_div128_64), (gst_util_uint64_scale_int64),
4671 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
4672 Add protentially more performant non-iterative 128/64 divide function
4673 that unfortunatly does not work yet.
4674 Shortcut the trivial 0/X = 0 case.
4675 Remove the warnings on overflow.
4677 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
4679 * gst/gstplugin.c: (gst_plugin_register_func):
4680 everything causing a plugin not to load should be at least a WARNING
4682 2005-11-28 Stefan Kost <ensonic@users.sf.net>
4684 * docs/random/ensonic/dparams.txt:
4685 some TODOs for the next dev cycle
4686 * libs/gst/controller/gstcontroller.c:
4687 (gst_controlled_property_set_interpolation_mode),
4688 (gst_controlled_property_new):
4689 * libs/gst/controller/gstcontroller.h:
4690 use base type to assign acccessor functions
4692 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
4694 * check/Makefile.am:
4695 Oops, that should have been top_srcdir
4697 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
4699 * check/Makefile.am:
4700 * check/elements/fdsrc.c: (GST_START_TEST):
4701 Use a cmdline define to specify the location of a file to use for
4702 testing, to avoid breaking distcheck.
4704 2005-11-28 Andy Wingo <wingo@pobox.com>
4706 * gst/gstpad.c (fixate_value): Use array functions for arrays.
4708 2005-11-28 Edward Hervey <edward@fluendo.com>
4710 * tools/gst-launch.c: (main):
4711 Clarify the output strings, makes it easier to translate.
4714 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
4717 don't try and build net if we don't even have <sys/socket.h>
4719 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
4721 * check/Makefile.am:
4722 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
4723 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
4724 Add tests for fdsrc seekability
4726 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
4727 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
4728 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
4729 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
4730 * gst/elements/gstfdsrc.h:
4731 fdsrc should not be a 'live' source.
4732 Implement seeking on seekable fd's.
4734 * gst/gstquery.c: (gst_query_new_seeking),
4735 (gst_query_parse_seeking):
4737 Implement SEEKING query functions:
4738 *_new_seeking and *_parse_seeking
4740 2005-11-27 Stefan Kost <ensonic@users.sf.net>
4742 * gst/gstelement.c: (gst_element_dispose):
4745 * gst/gstiterator.c:
4746 * gst/gststructure.c:
4749 * libs/gst/controller/gstcontroller.c:
4750 (gst_controlled_property_set_interpolation_mode):
4751 * libs/gst/controller/gstcontroller.h:
4752 * libs/gst/controller/gstinterpolation.c:
4753 (interpolate_none_get_enum_value_array):
4754 support controlling enums
4756 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
4759 Improve documentation for gst_value_union().
4762 Change return value for union, intersect and subtract functions
4763 from gint to gboolean.
4765 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
4767 * gst/gstvalue.c: (gst_value_serialize_any_list),
4768 (gst_value_transform_any_list_string),
4769 (gst_value_deserialize_list), (gst_value_deserialize_array),
4770 (gst_value_set_int_range), (gst_value_deserialize_int_range),
4771 (gst_value_set_double_range), (gst_value_deserialize_double_range),
4772 (gst_value_set_fraction_range_full),
4773 (gst_value_deserialize_fraction_range),
4774 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
4775 (gst_value_deserialize_boolean),
4776 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
4777 (gst_value_serialize_float), (gst_value_deserialize_float),
4778 (gst_string_wrap), (gst_value_deserialize_string),
4779 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
4780 (gst_value_union_int_range_int_range),
4781 (gst_value_intersect_int_range_int_range),
4782 (gst_value_intersect_double_range_double_range),
4783 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
4784 (gst_value_subtract_int_range_int_range),
4785 (gst_value_subtract_double_double_range),
4786 (gst_value_subtract_double_range_double_range),
4787 (gst_value_deserialize_fraction):
4789 Use gint, gdouble and gchar in our API instead of int, double and
4790 char (and make usage in gstvalue.c more consistent).
4792 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
4794 * check/Makefile.am:
4795 * libs/gst/controller/Makefile.am:
4796 * libs/gst/dataprotocol/Makefile.am:
4797 fix up Makefile.am and remove GST_ENABLE_NEW
4799 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
4803 * gst/base/Makefile.am:
4804 * gst/check/Makefile.am:
4805 * gst/elements/Makefile.am:
4806 * gst/net/Makefile.am:
4807 update LDFLAGS use some more
4809 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
4811 * common/m4/gst-doc.m4:
4814 2005-11-26 Edward Hervey <edward@fluendo.com>
4816 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
4817 This shouldn't issue a g_warning since it returns NULL if it
4818 couldn't find the plugin, and all functions using this behave
4819 properly on a NULL return. Switching to a GST_WARNING.
4821 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
4823 * gst/gstbin.c: (gst_bin_handle_message_func):
4824 Don't leak clock messages.
4826 2005-11-25 Wim Taymans <wim@fluendo.com>
4828 * gst/gstutils.c: (gst_util_uint64_scale_int64),
4829 (gst_util_uint64_scale_int):
4830 Optimisations, remove unneeded vars.
4832 2005-11-25 Wim Taymans <wim@fluendo.com>
4834 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
4835 Added more checks for the high precision uint64 cases.
4837 * gst/gstutils.c: (gst_util_uint64_scale_int64),
4838 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
4839 Implement high precision (guint64 * guint64) / guint64.
4841 2005-11-24 Wim Taymans <wim@fluendo.com>
4843 * gst/base/gstbasesrc.c: (gst_base_src_query):
4844 Fix wrong percentage query.
4846 * gst/gstutils.c: (gst_util_uint64_scale),
4847 (gst_util_uint64_scale_int):
4848 Add some more common cases that can be handled
4849 efficiently to _scale.
4851 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
4853 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
4854 (gst_mini_object_suite):
4855 don't use check calls from threads; check probably isn't
4856 threadsafe and using a lock to make it threadsafe would
4857 defeat the purpose of this check
4858 * gst/check/gstcheck.c:
4859 * gst/check/gstcheck.h:
4860 use GST_DEBUG some more
4862 2005-11-24 Wim Taymans <wim@fluendo.com>
4864 * gst/gstutils.c: (gst_util_uint64_scale),
4865 (gst_util_uint64_scale_int):
4866 Chain trivial case to _scale_int.
4868 2005-11-24 Wim Taymans <wim@fluendo.com>
4870 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
4871 Added test for scaling.
4876 * gst/gstutils.c: (gst_util_uint64_scale_int):
4877 Implemented high precision scaling code.
4879 2005-11-24 Stefan Kost <ensonic@users.sf.net>
4882 do not crash on pad==NULL
4884 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
4886 Patch by: Stefan Kost
4888 * common/gtk-doc.mak:
4889 * docs/gst/Makefile.am:
4890 * docs/libs/Makefile.am:
4891 Fix distcheck issues for the libraries docs build
4894 2005-11-24 Michael Smith <msmith@fluendo.com>
4896 * docs/manual/basics-helloworld.xml:
4897 Fix bug #315027: memory leak in example code in docs.
4899 2005-11-24 Michael Smith <msmith@fluendo.com>
4901 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4902 Unlock the PREROLL_LOCK in a failure case.
4904 2005-11-24 Wim Taymans <wim@fluendo.com>
4906 * docs/gst/gstreamer-sections.txt:
4907 * gst/base/gstadapter.h:
4908 * gst/base/gstbasesink.h:
4909 * gst/base/gstbasesrc.h:
4910 * gst/base/gstbasetransform.h:
4911 * gst/base/gstpushsrc.h:
4912 * gst/elements/gstfakesink.h:
4913 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
4914 * gst/elements/gstfakesrc.h:
4915 * gst/elements/gstfilesink.h:
4916 * gst/elements/gstfilesrc.h:
4919 * gst/gstbuffer.c: (_gst_buffer_copy):
4922 * gst/gstchildproxy.c:
4925 * gst/gstelementfactory.c:
4926 * gst/gstelementfactory.h:
4928 * gst/gstghostpad.h:
4930 * gst/gstinterface.h:
4931 * gst/gstminiobject.c:
4932 * gst/gstminiobject.h:
4935 * gst/gstpadtemplate.h:
4936 * gst/gstpipeline.h:
4937 * gst/gstpluginfeature.h:
4942 * gst/gsttagsetter.c:
4943 * gst/gsttagsetter.h:
4946 * gst/gsttypefind.h:
4949 * gst/net/gstnetclientclock.c:
4950 * gst/net/gstnetclientclock.h:
4951 * gst/net/gstnettimepacket.c:
4952 * gst/net/gstnettimeprovider.c:
4953 * gst/net/gstnettimeprovider.h:
4956 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
4958 * configure.ac: back to HEAD
4960 === release 0.9.6 ===
4962 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
4965 releasing 0.9.6, "Always On Time"
4967 2005-11-23 Wim Taymans <wim@fluendo.com>
4969 * docs/gst/gstreamer-sections.txt:
4970 * gst/glib-compat.c:
4971 * gst/gsttagsetter.c:
4973 * gst/net/gstnetclientclock.c:
4974 * gst/net/gstnettimepacket.h:
4977 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
4979 * docs/faq/using.xml:
4980 * docs/libs/tmpl/gstcontrol.sgml:
4981 * docs/manual/advanced-dparams.xml:
4982 * docs/manual/appendix-checklist.xml:
4983 * docs/manual/basics-elements.xml:
4984 * docs/pwg/other-source.xml:
4985 * docs/random/moving-plugins:
4987 * tools/gst-launch.1.in:
4988 remove mentions of sinesrc
4990 2005-11-23 Michael Smith <msmith@fluendo.com>
4992 * docs/gst/gstreamer-sections.txt:
4993 Update for new API and API changes.
4995 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
4997 Documentation typo fix.
4998 * gst/net/gstnettimepacket.c:
4999 Documentation fixes for arguments.
5001 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
5003 * gst/gststructure.c: (gst_structure_get_fraction),
5004 (gst_structure_parse_value),
5005 (gst_structure_fixate_field_nearest_fraction):
5006 * gst/gststructure.h:
5007 * gst/gstutils.c: (gst_util_uint64_scale_int):
5009 * scripts/update-funcnames:
5011 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
5012 Make gst_structure_fixate_field_nearest_fraction take a numerator
5013 and denominator argument instead of a GValue
5014 add gst_structure_get_fraction helper function.
5016 2005-11-23 Wim Taymans <wim@fluendo.com>
5018 * docs/design/part-TODO.txt:
5021 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
5022 * gst/net/gstnetclientclock.h:
5023 Use parent fields for timeout and window_size.
5025 2005-11-23 Andy Wingo <wingo@pobox.com>
5027 * check/net/gstnetclientclock.c (test_functioning): Adjust to
5028 rate_num/rate_denom change.
5030 * gst/net/gstnetclientclock.c
5031 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
5032 OBJECT_LOCK. Don't call add_observation with the lock.
5034 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
5036 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
5038 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
5039 deal with rate as a fraction whose numerator and denominator are
5040 GstClockTime values.
5041 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
5042 master; the other fields are protected by the SLAVE_LOCK.
5043 (do_linear_regression): Note that this must be called with the
5045 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
5046 OBJECT_LOCK. Call set_calibration instead of touching the
5048 (gst_clock_set_property, gst_clock_get_property): Protect
5049 master/slave parameters with the SLAVE_LOCK.
5051 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
5052 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
5053 note that all of the instance variables that add_observation and
5054 the set_master functions use are protected by that lock and not
5056 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
5058 * gst/gstclock.c (gst_clock_add_observation): No longer requires
5059 the caller to take the object lock.
5061 2005-11-23 Wim Taymans <wim@fluendo.com>
5063 * gst/gsterror.c: (_gst_core_errors_init):
5065 Add error for clock stuff.
5067 * gst/gstpipeline.c: (gst_pipeline_change_state),
5068 (gst_pipeline_set_clock):
5069 Post clock error when clock cannot be used in a pipeline.
5071 2005-11-23 Stefan Kost <ensonic@users.sf.net>
5073 * docs/gst/gstreamer-sections.txt:
5074 make two symbols from gstinfo private for the docs
5075 * gst/base/gstcollectpads.h:
5077 fix doc typos, update docs
5079 2005-11-22 Wim Taymans <wim@fluendo.com>
5081 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
5082 (gst_base_sink_wait), (gst_base_sink_do_sync),
5083 (gst_base_sink_handle_event):
5084 * gst/base/gstbasesink.h:
5085 No need to store the clock, the parent element class already
5088 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
5089 Updates for clock_set returning a gboolean
5091 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
5092 (gst_clock_id_wait_async), (gst_clock_class_init),
5093 (gst_clock_init), (gst_clock_finalize),
5094 (gst_clock_get_internal_time), (gst_clock_get_time),
5095 (gst_clock_slave_callback), (gst_clock_set_master),
5096 (gst_clock_get_master), (do_linear_regression),
5097 (gst_clock_add_observation), (gst_clock_set_property),
5098 (gst_clock_get_property):
5100 Implement master/slave. When setting a clock as a slave, a
5101 periodic timeout is scheduled to sample master and slave times.
5102 Then the slave clock is recalibrated to match offset and rate
5103 of the master clock.
5104 Update logging a bit.
5105 Add flag so that a clock can state that is cannot be slaved to
5108 * gst/gstelement.c: (gst_element_set_clock):
5110 The set clock returns a gboolean for when an element cannot
5111 deal with the selected clock in the pipeline.
5113 * gst/gstpipeline.c: (gst_pipeline_change_state),
5114 (gst_pipeline_set_clock):
5115 * gst/gstpipeline.h:
5116 Handle the case where the selected clock cannot be set on
5119 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
5120 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
5121 (gst_net_client_clock_set_property),
5122 (gst_net_client_clock_get_property),
5123 (gst_net_client_clock_observe_times):
5124 * gst/net/gstnetclientclock.h:
5125 Use regression code in GstClock parent, remove duplicated
5128 2005-11-22 Michael Smith <msmith@fluendo.com>
5130 * gst/gstutils.c: (gst_util_clock_time_scale):
5132 * docs/gst/gstreamer-sections.txt:
5133 Rename method to have extra underscore.
5135 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
5137 * gst/elements/Makefile.am:
5138 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
5139 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
5140 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
5141 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
5142 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
5143 * gst/elements/gstfakesrc.h:
5144 * gst/gstqueue.c: (queue_leaky_get_type):
5145 correctly fix GEnumValues so that nick is the short lowercase
5147 * tools/gst-inspect.c: (print_element_properties_info):
5148 also show the nick, since it's useful to use from parse_launch
5152 2005-11-22 Michael Smith <msmith@fluendo.com>
5154 * gst/gstutils.c: (gst_util_clocktime_scale):
5156 * docs/gst/gstreamer-sections.txt:
5157 Add util method for scaling a clocktime by a fraction. Useful
5158 implementation is left as an exercise for the reader.
5160 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5162 * gst/gstvalue.c: (gst_value_collect_fraction_range):
5163 If needed, allocate storage in the destination value during
5166 2005-11-22 Edward Hervey <edward@fluendo.com>
5168 * docs/gst/gstreamer-sections.txt:
5173 * gst/gstutils.c: (gst_util_set_object_arg):
5174 * tools/gst-compprep.c: (main):
5175 * tools/gst-inspect.c: (print_element_properties_info):
5176 Removed GstURI, closes bug #321061
5178 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5180 * check/gst/gststructure.c: (GST_START_TEST):
5181 * gst/gststructure.c: (gst_structure_parse_value):
5182 Oops, broke automatic string type parsing.
5183 Add a test to catch it in future.
5185 2005-11-22 Andy Wingo <wingo@pobox.com>
5187 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
5188 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
5189 Actually rename the function implementations. Grr.
5191 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5193 * check/gst/capslist.h:
5195 * check/gst/gststructure.c: (GST_START_TEST),
5196 (gst_structure_suite):
5197 Test automatic value type detection in gst_structure_from_string.
5198 * gst/gststructure.c: (gst_structure_parse_value):
5199 Add fraction as a type we try and guess automatically in
5200 caps/structure strings.
5202 2005-11-22 Andy Wingo <wingo@pobox.com>
5204 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
5206 * gst/gsttagsetter.h:
5207 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
5208 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
5209 (gst_tag_setter_add_tag_valist)
5210 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
5211 _add_values, _add_valist, and _add_valist_values. Since this is an
5212 interface the function suffixes should be more explicit so
5213 language binding don't end up with element.add_valist ->
5214 gst_tag_setter_add_valist, for example. Fixes #322069.
5216 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5218 * check/gst/gstcaps.c: (GST_START_TEST):
5219 Extend caps string tests to check that a caps to string
5220 conversion is reversible and produces the same caps.
5222 * gst/gststructure.c: (gst_structure_value_get_generic_type):
5223 Output "fraction" as the generic type fraction range, so caps
5224 serialisation and deserialisation works.
5225 * check/gst/capslist.h:
5226 * gst/gstvalue.c: (gst_value_deserialize_fraction):
5227 Support 'MIN' and 'MAX' for deserialising fractions.
5229 2005-11-22 Andy Wingo <wingo@pobox.com>
5231 * gst/gstevent.h (gst_event_new_new_segment)
5232 (gst_event_parse_new_segment, gst_event_new_buffer_size)
5233 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
5234 Renamed from *_newsegment, *_buffersize, *_notarget.
5236 * scripts/update-funcnames: New script, performs the changes
5239 2005-11-22 Wim Taymans <wim@fluendo.com>
5241 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
5242 Make sure the GstFlowReturn is returned.
5244 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
5245 (gst_bus_add_signal_watch):
5247 add gst_bus_add_signal_watch_full.
5249 * gst/gstplugin.c: (gst_plugin_load_file):
5250 Small style cleanup.
5252 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5254 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
5255 Block the fakesrc srcpad when we send an event, to avoid
5256 contention on the stream_lock causing random test failures.
5258 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5260 * check/gst/gstvalue.c: (GST_START_TEST):
5261 * gst/gstvalue.c: (gst_value_fraction_subtract):
5264 2005-11-22 Stefan Kost <ensonic@users.sf.net>
5267 include "gstchildproxy.h"
5268 * gst/gstchildproxy.h:
5269 * libs/gst/controller/gstcontroller.h:
5270 use G_GNUC_NULL_TERMINATED
5272 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5274 * check/gst/capslist.h:
5275 * check/gst/gstcaps.c: (GST_START_TEST):
5276 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
5277 * gst/gststructure.c: (gst_structure_parse_range),
5278 (gst_structure_fixate_field_nearest_fraction):
5279 * gst/gststructure.h:
5280 * gst/gstvalue.c: (gst_value_init_fraction_range),
5281 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
5282 (gst_value_collect_fraction_range),
5283 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
5284 (gst_value_set_fraction_range_full),
5285 (gst_value_get_fraction_range_min),
5286 (gst_value_get_fraction_range_max),
5287 (gst_value_serialize_fraction_range),
5288 (gst_value_transform_fraction_range_string),
5289 (gst_value_compare_fraction_range),
5290 (gst_value_deserialize_fraction_range),
5291 (gst_value_intersect_fraction_fraction_range),
5292 (gst_value_intersect_fraction_range_fraction_range),
5293 (gst_value_subtract_fraction_fraction_range),
5294 (gst_value_subtract_fraction_range_fraction),
5295 (gst_value_subtract_fraction_range_fraction_range),
5296 (gst_value_collect_fraction), (gst_value_fraction_multiply),
5297 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
5298 (gst_value_transform_string_fraction), (_gst_value_initialize):
5300 Implement fraction ranges and extend GstFraction to support
5301 arithmetic subtraction, as well as deserialization from integer
5302 strings such as "100"
5303 Add a testsuite as for int and double range set operations
5305 2005-11-21 Andy Wingo <wingo@pobox.com>
5309 * gst/gststructure.h: Add glib-compat.h.
5311 2005-11-21 Wim Taymans <wim@fluendo.com>
5313 * gst/gstbin.c: (gst_bin_change_state_func):
5316 2005-11-21 Wim Taymans <wim@fluendo.com>
5319 And add a nice define too.
5321 2005-11-21 Wim Taymans <wim@fluendo.com>
5323 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
5324 (gst_segment_new), (gst_segment_free), (gst_segment_init),
5325 (gst_segment_set_duration), (gst_segment_set_last_stop),
5326 (gst_segment_set_seek), (gst_segment_set_newsegment),
5327 (gst_segment_to_stream_time), (gst_segment_to_running_time),
5330 Make binding friendly.
5332 2005-11-21 Andy Wingo <wingo@pobox.com>
5334 * gst/gsttagsetter.h:
5336 * gst/gststructure.h:
5338 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
5341 * gst/gsterror.c (_gst_core_errors_init):
5342 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
5345 * gst/Makefile.am (gst_headers): Add glib-compat.h.
5346 (noinst_HEADERS): noinst the -private.
5348 2005-11-21 Michael Smith <msmith@fluendo.com>
5351 * gst/gstregistry.h:
5352 Remove unimplemented declarations for which we can see no sensible
5355 2005-11-21 Andy Wingo <wingo@pobox.com>
5357 * gst/gst.h: Include glib-compat.h.
5359 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
5361 * gst/glib-compat.c: Include the public and the private header.
5363 * gst/glib-compat-private.h: Copied here from glib-compat.h.
5367 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
5369 * check/gst/gstevent.c (create_custom_events): Check that
5370 FLUSH_STOP is serialized.
5372 * check/elements/identity.c (event_func):
5373 * check/elements/fakesrc.c (event_func): No stream lock, the core
5376 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
5377 stream lock taking, yay.
5379 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
5380 ensure that core takes the stream lock.
5382 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
5385 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
5386 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
5387 it already. For the flush start we do take it though so we get the
5388 right preroll state change messages.
5390 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
5391 the stream lock here, the core does it for us.
5393 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
5394 GST_STREAM_GET_LOCK.
5395 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
5396 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
5397 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
5398 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
5399 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
5400 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
5402 * gst/gstpad.c: Update for stream lock name change.
5404 * gst/base/gstbasesink.c: Update for preroll lock name change.
5406 2005-11-21 Wim Taymans <wim@fluendo.com>
5408 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
5409 (gst_clock_get_master):
5411 * gst/gstsystemclock.c: (gst_system_clock_init):
5412 Convert Clock flags to object flags.
5413 Added methods to manage master/slave clocks.
5415 2005-11-21 Wim Taymans <wim@fluendo.com>
5417 * check/gst/gstsegment.c: (GST_START_TEST):
5418 * docs/design/part-TODO.txt:
5419 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5420 (gst_base_sink_event), (gst_base_sink_do_sync),
5421 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
5422 (gst_base_sink_query), (gst_base_sink_change_state):
5423 * gst/base/gstbasesink.h:
5424 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
5425 (gst_base_src_default_newsegment),
5426 (gst_base_src_configure_segment), (gst_base_src_do_seek),
5427 (gst_base_src_get_range), (gst_base_src_loop),
5428 (gst_base_src_change_state):
5429 * gst/base/gstbasesrc.h:
5430 * gst/base/gstbasetransform.c:
5431 (gst_base_transform_prepare_output_buf),
5432 (gst_base_transform_event), (gst_base_transform_change_state):
5433 * gst/base/gstbasetransform.h:
5434 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
5435 (gst_collect_pads_event):
5436 * gst/base/gstcollectpads.h:
5437 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
5438 (gst_fake_src_create):
5439 * gst/elements/gstfakesrc.h:
5440 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
5441 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
5442 (gst_segment_set_last_stop), (gst_segment_set_seek),
5443 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
5444 (gst_segment_to_running_time), (gst_segment_clip):
5446 More segment updates, replace code in plugins with segment
5449 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
5451 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
5452 Don't ignore sscanf results
5454 2005-11-21 Andy Wingo <wingo@pobox.com>
5456 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
5459 * *.c: Ran scripts/update-macros. Oh yes.
5461 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
5462 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
5465 * scripts/update-macros: New script. Run it on your files to
5466 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
5469 2005-11-21 Stefan Kost <ensonic@users.sf.net>
5471 * docs/gst/Makefile.am:
5472 * docs/gst/gstreamer-docs.sgml:
5473 * docs/gst/gstreamer-sections.txt:
5474 * docs/gst/gstreamer.types:
5476 more docs fixes, add new api to the docs
5478 2005-11-21 Andy Wingo <wingo@pobox.com>
5480 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
5481 state_broadcast call.
5483 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
5485 2005-11-21 Julien MOUTTE <julien@moutte.net>
5487 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
5488 function calls for arrays.
5490 2005-11-21 Stefan Kost <ensonic@users.sf.net>
5492 * docs/random/ensonic/media-device-daemon.txt:
5493 wild idea, can this be done?
5494 * docs/gst/gstreamer-sections.txt:
5499 * gst/gstpluginfeature.c:
5503 doc fixes and additions
5505 2005-11-21 Andy Wingo <wingo@pobox.com>
5507 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
5508 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
5509 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
5510 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
5511 private to the basesrc implementation.
5513 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
5514 behalf of event function if necessary. It should no longer be
5515 necessary to take the stream lock in pad's event functions. Fixes
5518 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
5519 * docs/gst/gstreamer-sections.txt:
5520 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
5521 (gst_structure_fixate_field_nearest_double),
5522 (gst_structure_fixate_field_boolean):
5523 * gst/gststructure.h:
5524 * win32/common/libgstreamer.def:
5525 * win32/gstreamer.def:
5527 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
5530 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
5532 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
5533 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
5534 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
5535 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
5536 (gst_fdsrc_uri_handler_init):
5537 * gst/elements/gstfdsrc.h:
5538 Port fd:// URI handler from 0.8 to fdsrc
5540 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
5542 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
5543 (gst_value_serialize_fourcc):
5545 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
5546 consistent with our other format defines (#320324).
5548 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
5550 * gst/gstvalue.c: (gst_value_is_fixed):
5551 Revert previous commit. Value lists are by definition
5552 not fixed, as they are a list of possible values.
5554 2005-11-21 Andy Wingo <wingo@pobox.com>
5556 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
5557 during the stable series if we need it. Fixes #319178.
5559 * gst/gstevent.c (gst_event_new_filler): Removed.
5561 * check/gst/gstevent.c: Update comment about filler events.
5563 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
5565 * gst/gstvalue.c: (gst_value_is_fixed):
5566 Should handle both value arrays and value lists.
5568 2005-11-21 Andy Wingo <wingo@pobox.com>
5570 patch by: Alessandro Dessina <alessandro nnva org>
5572 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
5573 functions to access arrays. Fixes #321962.
5575 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
5577 * docs/gst/gstreamer.types:
5578 gst_collectpads_get_type => gst_collect_pads_get_type.
5580 * gst/base/gstbasetransform.c:
5581 Remove unused SIGNAL_HANDOFF enum.
5583 2005-11-21 Andy Wingo <wingo@pobox.com>
5585 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
5586 the event type (upstream, downstream, serialized). Renamed
5587 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
5588 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
5589 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
5591 * gst/gstevent.c: Update for new CUSTOM event names.
5593 * check/gst/gstevent.c: Update check for new CUSTOM event names.
5596 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
5599 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
5601 * docs/gst/gstreamer-sections.txt:
5602 * win32/common/libgstbase.def:
5603 * win32/libgstbase.def:
5604 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
5605 (gst_collect_pads_class_init), (gst_collect_pads_init),
5606 (gst_collect_pads_finalize), (gst_collect_pads_new),
5607 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
5608 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
5609 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
5610 (gst_collect_pads_start), (gst_collect_pads_stop),
5611 (gst_collect_pads_peek), (gst_collect_pads_pop),
5612 (gst_collect_pads_available), (gst_collect_pads_read),
5613 (gst_collect_pads_flush), (gst_collect_pads_event),
5614 (gst_collect_pads_chain):
5615 * gst/base/gstcollectpads.h:
5616 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
5617 unimplemented functions as unimplemented. Add padding to
5618 GstCollectData. (#320766, #320423)
5620 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
5623 Improve docs for DURATION message (usage of duration parameter)
5626 2005-11-20 Wim Taymans <wim@fluendo.com>
5628 * check/Makefile.am:
5629 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
5633 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
5634 (gst_segment_set_seek), (gst_segment_set_newsegment),
5635 (gst_segment_to_stream_time), (gst_segment_to_running_time),
5638 Added segment helper structure and methods. Not fully implemented
5640 Added segment check.
5642 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
5644 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
5645 Add a deserialisation test for fractions
5646 * examples/metadata/read-metadata.c: (message_loop),
5647 (make_pipeline), (main):
5648 Fix up metadata reading sample.
5649 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
5651 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
5652 Don't try and fixate empty caps
5653 * gst/gst_private.h:
5654 Wrap in G_BEGIN_DECLS/G_END_DECLS
5655 * gst/gstvalue.c: (gst_value_collect_fraction),
5656 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
5657 (gst_value_transform_string_fraction),
5658 (gst_value_compare_fraction):
5659 Add some extra guards to ensure that we don't end up
5660 with an invalid denominator of 0 in a gstfraction and
5661 that fractions always get reduced.
5663 2005-11-20 Wim Taymans <wim@fluendo.com>
5665 * docs/gst/gstreamer-sections.txt:
5676 2005-11-20 Wim Taymans <wim@fluendo.com>
5678 * docs/design/part-TODO.txt:
5680 Make a proper enum of the flag.
5682 2005-11-19 Wim Taymans <wim@fluendo.com>
5684 * docs/design/part-TODO.txt:
5685 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
5686 (gst_format_to_quark), (gst_format_register):
5688 * gst/gstquery.c: (_gst_query_initialize),
5689 (gst_query_type_get_name), (gst_query_type_to_quark),
5690 (gst_query_type_register):
5692 Add type to quark and type to string conversions.
5694 2005-11-19 Andy Wingo <wingo@pobox.com>
5696 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
5699 2005-11-19 Wim Taymans <wim@fluendo.com>
5701 * docs/design/part-TODO.txt:
5702 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
5703 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
5704 (gst_bin_handle_message_func):
5706 Make message handling overridable.
5708 2005-11-19 Andy Wingo <wingo@pobox.com>
5710 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
5713 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
5715 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
5716 is a GstClockTime. Fixes #321710.
5718 * gst/gstclock.h (GstClock): Remove offset property. Add
5719 internal_calibration and external_calibration. Fix padding. Pad
5720 also by GstClockTime so we don't run into problems.
5722 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
5723 (gst_clock_get_rate_offset): Remove.
5724 (gst_clock_set_time_adjust): Remove. Fixes #321712.
5727 * gst/gstutils.c (g_static_rec_cond_wait)
5728 (g_static_rec_cond_timed_wait): Removed, no longer needed.
5730 * gst/gstbin.c: Remove terrible continue_state prototype.
5732 * gst/gstelement.h (gst_element_continue_state): Make public.
5735 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
5736 by continue_state. Fixes #319389.
5738 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
5739 Really fixes #168438. However I don't see anywhere where the
5740 filter function is called... stupid GStreamer...
5742 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
5743 don't have a dispose function, so it won't get called when the
5744 object is unreffed, but oh well!
5746 * gst/gstindex.c (gst_index_set_filter_full): New API function,
5747 allows a destroy function to be set so user_data can be freed.
5749 (gst_index_set_filter): Call gst_index_set_filter_full.
5751 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
5753 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
5754 string should produce an error, given the lack of a way to
5755 represent NULL strings. Fixes #165650.
5758 * gst/gstvalue.c (gst_value_array_append_value)
5759 (gst_value_array_prepend_value, gst_value_array_get_size)
5760 (gst_value_array_get_value): New API, copied from
5761 gst_value_list_*, only operates on arrays.
5762 (gst_value_list_append_value, gst_value_list_prepend_value)
5763 (gst_value_list_concat, gst_value_list_get_size)
5764 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
5766 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
5767 init_list, because it works on both.
5768 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
5769 (gst_value_copy_list_or_array): Renamed from copy_list.
5770 (gst_value_free_list_or_array): Renamed from free_list.
5771 (gst_value_collect_list_or_array): Renamed from collect_list.
5772 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
5773 (gst_value_list_or_array_peek_pointer): Renamed from
5775 (_gst_value_array_value_table, _gst_value_list_value_table):
5776 Update value table functions.
5777 (gst_value_compare_list_or_array): Renamed from compare_list.
5779 * gsttaglist.h: Whoops, foreach function returns void. Also fix
5783 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
5784 GstTagList*. Fixes #143472.
5786 * gst/gststructure.h: Clarify what the foreach/map functions can
5787 or can't do to their arguments.
5789 2005-11-18 Wim Taymans <wim@fluendo.com>
5791 * gst/gstclock.c: (gst_clock_set_calibration),
5792 (gst_clock_get_calibration):
5794 Calibration can be set with internal time equal to current
5797 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
5803 2005-11-18 Andy Wingo <wingo@pobox.com>
5806 * pkgconfig/gstreamer-net.pc.in:
5807 * pkgconfig/gstreamer-net-uninstalled.pc.in:
5808 * pkgconfig/Makefile.am: Add net pkgconfig files.
5810 2005-11-18 Stefan Kost <ensonic@users.sf.net>
5813 * gst/gstghostpad.c:
5819 2005-11-18 Andy Wingo <wingo@pobox.com>
5821 * gst/net/gstnetclientclock.c: Turn off debugging.
5823 * check/net/gstnetclientclock.c (test_functioning): Assert that the
5824 times connverge somewhat. Can't make a real test.
5826 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
5827 integer arithmetic. Return the minimum of the domain, which can be
5828 set as "internal" for gst_clock_set_calibration.
5829 (gst_net_client_clock_observe_times): Call _set_calibration.
5830 (gst_net_client_clock_new): Call _set_calibration instead of
5833 * check/net/gstnetclientclock.c (test_functioning): Use the right
5837 * gst/gstclock.c (gst_clock_get_calibration)
5838 (gst_clock_set_calibration): New functions, obsolete the ones I
5839 added yesterday. Doh. Precision issues mean we have to extrapolate
5840 from a point in the more recent past than 1970.
5841 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
5843 (gst_clock_adjust_unlocked): Use the right calibration data.
5845 2005-11-18 Edward Hervey <edward@fluendo.com>
5847 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
5848 Also reset the ->current_* values in READY->PAUSED
5850 2005-11-18 Andy Wingo <wingo@pobox.com>
5852 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
5853 Whoops, check the right fd. Also add some debugging.
5854 (gst_net_client_clock_observe_times): Adjust for int64 offset.
5855 (do_linear_regression): Add a crapload of debugging. Subtract off
5856 the minimum values from the input series to discard unneeded bits.
5857 Use only int arithmetic. There is still double arithmetic when
5858 calculating the intercept that needs fixing. Return boolean to
5859 indicate success; FALSE would mean the domain or range is too
5860 great. Still needs fixes.
5862 2005-11-18 Wim Taymans <wim@fluendo.com>
5864 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
5865 For the current position in stream time, we need to subtract
5868 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
5869 Release lock before calling the callback function of async
5872 2005-11-18 Andy Wingo <wingo@pobox.com>
5874 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
5875 Port goes all the way to MAXUINT16.
5877 * gst/net/gstnettimeprovider.c: Make the port range the same as
5878 for the kernel: 0 assigns, otherwise ports are less than
5881 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
5884 * check/net/gstnetclientclock.c (test_functioning): Add the start
5887 2005-11-18 Wim Taymans <wim@fluendo.com>
5889 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
5890 (gst_bin_remove_func), (bin_bus_handler):
5892 Removing a clock provider from a bin, triggers a clock lost message
5893 so that a new clock will be selected.
5894 Adding a clock to a bin triggers a clock provider message.
5895 Make sure we reselect a clock when we received a clock lost message.
5896 Keep a reference to the element that provided the clock.
5898 2005-11-18 Andy Wingo <wingo@pobox.com>
5900 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
5901 the clock initially so it produces values around the base time.
5902 (gst_net_client_clock_class_init): Typo fix.
5903 (gst_net_client_clock_thread): Add note on when the socket gets
5906 2005-11-17 Wim Taymans <wim@fluendo.com>
5908 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
5909 Free remote and local time arrays.
5911 2005-11-17 Wim Taymans <wim@fluendo.com>
5913 * gst/net/gstnetclientclock.c: (do_linear_regression),
5914 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
5915 Fix compilation, uninitialized vars and a forgotten continue.
5917 2005-11-17 Andy Wingo <wingo@pobox.com>
5919 * check/Makefile.am (check_PROGRAMS):
5920 * check/net/gstnetclientclock.c: Add a most minimal test for the
5921 net client clock. More to come later.
5924 * gst/net/Makefile.am: Add netclientclock.
5926 * gst/net/gstnetclientclock.h:
5927 * gst/net/gstnetclientclock.c: New files, implement an untested
5928 GstClock that takes its time from a network time provider.
5929 Implements the algorithm in network-clock.scm.
5931 * tests/network-clock.scm (*window-size*): Rename from
5933 * tests/network-clock.scm (network-time):
5934 * tests/network-clock-utils.scm (q-push): Update callers.
5936 2005-11-17 Wim Taymans <wim@fluendo.com>
5938 * gst/gstbin.c: (gst_bin_provide_clock_func),
5939 (gst_bin_sort_iterator_new):
5940 And unref the child too..
5942 2005-11-17 Wim Taymans <wim@fluendo.com>
5944 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
5945 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
5946 Refactor the sort iterator so it can be used while holding the
5948 Make clock selection select a clock closest to the source.
5950 2005-11-17 Michael Smith <msmith@fluendo.com>
5952 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
5953 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
5955 Anonymous structs are a gcc (and some other compilers) extension, so
5956 don't use them. Since this is only for ABI-compatibility, and our
5957 API/ABI freeze is over in a few days, this whole thing will only
5958 last a few days, so don't bother trying to think up a meaningful
5959 name for the struct.
5961 2005-11-17 Andy Wingo <wingo@pobox.com>
5963 * gst/gstclock.h (GstClock): Add rate and offset properties,
5964 preserving ABI stability. Add rate/offset accessors. Will file bug
5965 for the freeze break.
5967 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
5968 and offset, trying to keep precision and avoiding
5970 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
5971 functions. Make gst_clock_set_time_adjust obsolete.
5972 (gst_clock_set_time_adjust): Note that this function is obsolete.
5975 * gst/base/gstbasetransform.h: Make the ABI-stability hack
5976 greppable by using GST_PADDING-1+1.
5978 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
5980 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
5982 * gst/gstmessage.c: (gst_message_parse_clock_lost):
5983 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
5985 * gst/gstpadtemplate.h:
5986 * gst/gstpluginfeature.h:
5987 Don't use c++ style comments in headers (#321638).
5989 2005-11-16 Andy Wingo <wingo@pobox.com>
5991 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
5994 * check/net/gstnettimeprovider.c: Check to see that the time
5995 provider actually provides times. Works, yo!
5997 2005-11-16 Wim Taymans <wim@fluendo.com>
5999 * check/Makefile.am:
6002 * check/elements/fakesrc.c: (GST_START_TEST):
6003 Set element to NULL before disposing it.
6005 2005-11-16 Andy Wingo <wingo@pobox.com>
6007 * gst/net/Makefile.am:
6009 * gst/net/gstnettimeprovider.c:
6010 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
6011 provider, include it from gstnet.h, and add it to the build.
6013 * gst/net/gstnettimepacket.h:
6014 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
6015 sending and receiving.
6017 2005-11-16 Wim Taymans <wim@fluendo.com>
6019 * check/Makefile.am:
6020 Enable valgrind check.
6022 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
6023 (gst_fake_src_alloc_buffer):
6026 2005-11-16 Wim Taymans <wim@fluendo.com>
6028 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
6029 Call parent finalize too.
6031 2005-11-16 Wim Taymans <wim@fluendo.com>
6033 * check/Makefile.am:
6034 Enable valgrind check that should work fine now.
6036 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
6037 * gst/gstqueue.c: (gst_queue_init):
6038 Fix memleaks in pad allocation.
6040 2005-11-16 Andy Wingo <wingo@pobox.com>
6042 * gst/net/Makefile.am:
6043 * gst/net/gstnet.h: New part of core to hold network elements and
6044 objects. Put in core because it exposes API that applications want
6045 to use. The library is named libgstnet-tempname right now because
6046 of the existing libgstnet in gst-plugins-base. Solution is
6047 probably to rename the one in plugins-base; will file a bug for
6050 * gst/net/gstnettimeprovider.c:
6051 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
6052 get_time call over the network.
6055 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
6057 * check/Makefile.am:
6058 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
6059 get additions shortly.
6061 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6063 * gst/gstpad.c: (gst_pad_new_from_static_template):
6065 add gst_pad_new_from_static_template functions
6066 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
6067 (gst_check_setup_sink_pad):
6068 * gst/elements/gsttee.c: (gst_tee_init):
6071 2005-11-16 Wim Taymans <wim@fluendo.com>
6073 * gst/gstpad.c: (gst_pad_pause_task):
6074 Removed warning, it's not really an error either.
6076 2005-11-16 Wim Taymans <wim@fluendo.com>
6078 * gst/base/gstbasetransform.c:
6079 (gst_base_transform_prepare_output_buf),
6080 (gst_base_transform_event):
6081 Check if the caps are NULL, this can happen if the element
6082 is shutting down and the pad caps are set to NULL.
6084 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6086 * gst/elements/gsttee.c: (gst_tee_init):
6087 fix pad template leak in tee
6089 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6091 * gst/glib-compat.c: (g_value_dup_gst_object):
6092 * gst/glib-compat.h:
6093 * gst/gstpad.c: (gst_pad_set_property):
6094 use gst_object_ref when setting the pad template; this will
6095 trigger the pad template leaks on GLib 2.6 and the slaves
6097 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6099 * gst/glib-compat.c: (gst_flags_get_first_value):
6100 * gst/glib-compat.h:
6101 * gst/gstregistryxml.c:
6102 remove functions copied from GLib 2.6
6104 2005-11-16 Michael Smith <msmith@fluendo.com>
6107 Don't link against VALGRIND_LIBS. That was always the wrong thing to
6108 do, but only breaks with newer valgrind versions. We're not a
6109 valgrind tool, we have no link-time dependencies on libcoregrind.
6111 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6113 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
6118 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6120 * gst/base/gstbasesrc.c: (gst_base_src_init):
6121 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
6122 * gst/gstqueue.c: (gst_queue_init):
6123 * gst/gstregistryxml.c: (load_feature):
6124 Revert all these unrefs, they don't even pass make check !
6126 2005-11-15 Johan Dahlin <johan@gnome.org>
6128 * gst/base/gstbasesrc.c: (gst_base_src_init):
6129 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
6130 * gst/gstqueue.c: (gst_queue_init):
6131 Free pad templates, fixes a couple of leaks.
6133 2005-11-15 Daniel Fischer <dan at f3c dot com>
6135 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
6137 * gst/gstpad.c: (gst_pad_get_property):
6138 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
6139 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
6142 2005-11-15 Wim Taymans <wim@fluendo.com>
6147 2005-11-15 Andy Wingo <wingo@pobox.com>
6149 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
6151 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
6152 using GST_CLOCK_TIME_NONE to disable base time management.
6153 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
6154 time if it was NONE before.
6155 (gst_pipeline_change_state): Only munge the base time if
6156 stream_time != GST_CLOCK_TIME_NONE.
6158 * check/gst/gstpipeline.c (test_base_time): Punt around the
6159 problem of the probe not being called, because that's not the
6160 issue I'm looking at. Add a check that setting stream_time to NONE
6161 disables base time management.
6163 2005-11-15 Wim Taymans <wim@fluendo.com>
6165 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
6166 segment_stop == -1 at startup.
6168 * gst/base/gstbasetransform.c: (gst_base_transform_event),
6169 (gst_base_transform_change_state):
6170 Init segment values at start.
6172 2005-11-15 Wim Taymans <wim@fluendo.com>
6174 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6175 0 segment values are 0 in any format.
6177 * gst/base/gstbasetransform.c: (gst_base_transform_event):
6178 * gst/base/gstbasetransform.h:
6179 Parse newsegment correctly in basetransform
6181 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
6182 Sync to clock using updated segment values.
6184 2005-11-15 Andy Wingo <wingo@pobox.com>
6186 * check/gst/gstpipeline.c (test_base_time): Add check that the
6187 base time and stream time are reset correctly.
6189 2005-11-15 Wim Taymans <wim@fluendo.com>
6191 * docs/design/part-TODO.txt:
6192 Some more TODO items.
6194 2005-11-15 Andy Wingo <wingo@pobox.com>
6196 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
6197 error if the user selected "no clock" as the clocking method.
6199 * check/gst/gstpipeline.c (test_base_time): New test for buffer
6200 timestamps with live capture.
6202 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
6203 is 0 but we are a live source, timestamp the buffers using the
6206 2005-11-14 Stefan Kost <ensonic@users.sf.net>
6208 * docs/gst/gstreamer-sections.txt:
6210 * gst/gstghostpad.c:
6215 2005-11-14 Wim Taymans <wim@fluendo.com>
6218 add suppressions from Wim's Debian machine
6220 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
6223 add suppressions from Andy's AMD64 Ubuntu machine
6225 2005-11-14 Andy Wingo <wingo@pobox.com>
6227 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
6228 STATE_LOCK not necessary. Fixes #311489.
6230 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
6233 * gst/gstindex.c (gst_index_add_object): Note in the docs that
6234 this function is not implemented.
6236 2005-11-14 Julien MOUTTE <julien@moutte.net>
6238 * gst/base/gstbasetransform.c:
6239 (gst_base_transform_prepare_output_buf):
6240 Ref the source pad caps while we need them.
6243 2005-11-11 Wim Taymans <wim@fluendo.com>
6245 * docs/gst/gstreamer-sections.txt:
6246 Added some docs for GstCollectData.
6248 * gst/base/gstadapter.c:
6249 Some small code example fix.
6251 * gst/base/gstcollectpads.c:
6252 * gst/base/gstcollectpads.h:
6255 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
6257 * configure.ac: back to HEAD
6259 === release 0.9.5 ===
6261 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
6264 releasing 0.9.5, "Bike Lunch Day"
6266 2005-11-11 Wim Taymans <wim@fluendo.com>
6268 * gst/gstbuffer.c: (_gst_buffer_copy):
6271 * gst/gstcaps.c: (gst_caps_is_equal):
6273 Make _is_equal fast in the trivial cases.
6275 * gst/gstminiobject.c:
6276 * gst/gstminiobject.h:
6277 More docs. Spifify .h file.
6282 2005-11-11 Wim Taymans <wim@fluendo.com>
6284 * gst/base/gstbasetransform.c:
6285 (gst_base_transform_prepare_output_buf),
6286 (gst_base_transform_handle_buffer):
6288 If we're processing a buffer and need to allocate an output
6289 buffer, we cannot accept a format change. If we did get a
6290 format change, we have to alloc a buffer ourselves of the
6293 2005-11-11 Wim Taymans <wim@fluendo.com>
6295 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
6296 While checking the flag for reentrancy in the gstcaps function
6297 is nice to detect recursive invocations, it also makes it
6298 impossible to call getcaps from multiple threads, which must be
6299 possible. So, checking for recursive calls has to go.
6301 2005-11-11 Michael Smith <msmith@fluendo.com>
6303 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
6304 Don't sync on buffers that fall partially outside our current
6305 segment. Prevents an assertion failure/abort playing some files.
6307 2005-11-10 Andy Wingo <wingo@pobox.com>
6309 * check/gst/gstbin.c (test_message_state_changed_children): Style
6312 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
6313 gst_bus_poll with the signal watch. Ensures that poll and a signal
6314 watch see the same messages.
6316 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
6317 a poll and a watch at the same time get the same messages.
6319 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
6321 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
6322 * gst/gstcaps.c: (gst_caps_intersect):
6323 Don't call gst_caps_do_simplify - it doesn't respect order of caps
6324 and it's not needed.
6326 2005-11-10 Wim Taymans <wim@fluendo.com>
6328 * docs/design/part-TODO.txt:
6331 2005-11-10 Wim Taymans <wim@fluendo.com>
6333 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
6334 * gst/base/gstbasesrc.c: (gst_base_src_wait),
6335 (gst_base_src_do_sync), (gst_base_src_get_range):
6336 Implement clock sync in base class.
6338 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
6340 patch by: Tim-Philipp Müller <tim at centricular dot net>
6342 * gst/gststructure.c: (gst_structure_parse_field),
6343 (gst_structure_from_string):
6344 Forward-port a 0.8 patch to handle escaped spaces in structure string,
6345 so that gst_parse_launch() can deal with spaces in filtered link
6346 caps (fixes #164479)
6347 * check/gst/capslist.h:
6348 * check/gst/gststructure.c: (GST_START_TEST):
6349 add unit tests for this change
6351 2005-11-10 Wim Taymans <wim@fluendo.com>
6353 * docs/gst/gstreamer-sections.txt:
6356 Fix docs, move some STATE macros to private.
6358 2005-11-10 Wim Taymans <wim@fluendo.com>
6360 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
6361 Added check for bug #317341
6365 Some more spiffifying.
6367 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
6368 Call peer linkfunction if we are a source pad. Totally fixes
6372 Update docs, source pads should call the peer linkfunction
6373 so they can atomically perform the pad link.
6375 2005-11-09 Wim Taymans <wim@fluendo.com>
6379 Uber-spiffy-spiffify some more.
6381 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
6383 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
6384 * gst/elements/gstfilesink.c: (gst_file_sink_init):
6385 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
6386 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
6387 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
6388 * gst/gstpad.c: (gst_pad_init):
6389 Use GST_DEBUG_FUNCPTR() more extensively.
6391 2005-11-09 Wim Taymans <wim@fluendo.com>
6393 * gst/gstobject.c: (gst_object_class_init):
6395 Documentation fixes.
6397 2005-11-09 Edward Hervey <edward@fluendo.com>
6399 * gst/gsttypefindfactory.c:
6402 2005-11-09 Edward Hervey <edward@fluendo.com>
6404 * gst/base/gsttypefindhelper.c:
6405 * gst/gsttypefind.c:
6406 * gst/gsttypefind.h:
6409 2005-11-09 Wim Taymans <wim@fluendo.com>
6411 * gst/gstiterator.c:
6418 2005-11-09 Wim Taymans <wim@fluendo.com>
6424 2005-11-09 Wim Taymans <wim@fluendo.com>
6426 * docs/gst/gstreamer-sections.txt:
6427 Moved the message async delivery private lock and cond
6428 to the private section.
6434 2005-11-09 Edward Hervey <edward@fluendo.com>
6436 * docs/gst/gstreamer-sections.txt:
6439 Document GstURIHandler
6441 2005-11-09 Wim Taymans <wim@fluendo.com>
6443 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
6444 (gst_iterator_find_custom):
6445 * gst/gstiterator.h:
6448 2005-11-09 Wim Taymans <wim@fluendo.com>
6451 Document another field.
6453 * gst/gststructure.c:
6454 * gst/gststructure.h:
6457 2005-11-09 Wim Taymans <wim@fluendo.com>
6462 2005-11-09 Wim Taymans <wim@fluendo.com>
6464 * docs/gst/gstreamer-sections.txt:
6465 Added some new macros.
6472 2005-11-09 Wim Taymans <wim@fluendo.com>
6474 * docs/design/part-TODO.txt:
6475 Some more items for the TODO
6481 2005-11-09 Andy Wingo <wingo@pobox.com>
6483 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
6484 to work on something else now tho...
6486 * gst/base/gstadapter.c: More adapter docs.
6488 * gst/elements/gstfilesink.c (gst_file_sink_start)
6489 (gst_file_sink_stop): New functions, replace the state change
6491 (gst_file_sink_class_init): Hook up the start and stop functions.
6492 (gst_file_sink_base_init): Don't set the state change handler any
6493 more. It was a bit ugly too, being set from here...
6494 (gst_file_sink_get_property, gst_file_sink_set_property):
6496 (gst_file_sink_set_location): More robust check that doesn't call
6499 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
6501 * gst/base/gstbasetransform.c: (gst_base_transform_event):
6502 Hold STREAM_LOCK while pushing newsegment or tag events as well.
6504 2005-11-08 Wim Taymans <wim@fluendo.com>
6506 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
6507 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
6508 (gst_base_sink_chain), (gst_base_sink_change_state):
6509 * gst/base/gstbasesink.h:
6510 * gst/base/gstbasesrc.h:
6513 Avoid excessive typechecking in macros.
6515 * gst/gstminiobject.c: (gst_mini_object_get_type),
6516 (gst_mini_object_init), (gst_mini_object_new),
6517 (gst_mini_object_free):
6518 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
6519 (gst_object_finalize):
6520 Remove cruft code, optimize alloc_trace.
6522 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
6524 * docs/faq/gst-uninstalled:
6525 fix up PS1 for systems that try to reset it
6527 2005-11-07 Wim Taymans <wim@fluendo.com>
6529 * gst/base/gstbasesrc.c: (gst_base_src_init),
6530 (gst_base_src_get_range):
6531 Set the segment_end to -1 initially. Fixed typefind.
6533 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
6535 * gst/base/gstadapter.c:
6536 Debug category should be 'adapter', not 'GstAdapter'.
6538 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
6539 (gst_collectpads_class_init), (gst_collectpads_init),
6540 (gst_collectpads_peek), (gst_collectpads_pop),
6541 (gst_collectpads_event), (gst_collectpads_chain):
6542 Add debug category and some debugging output. Use boilerplate
6543 macros. Remove some extraneous words from docs.
6545 2005-11-05 Andy Wingo <wingo@pobox.com>
6547 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
6550 2005-11-04 Stefan Kost <ensonic@users.sf.net>
6552 * docs/gst/gstreamer-sections.txt:
6555 * gst/gstminiobject.h:
6560 2005-11-04 Wim Taymans <wim@fluendo.com>
6562 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
6563 Small update to stop at the configured segment_end
6566 2005-11-04 Stefan Kost <ensonic@users.sf.net>
6568 * gst/gstregistry.c:
6569 * gst/gstregistry.h:
6572 2005-11-04 Edward Hervey <edward@fluendo.com>
6574 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
6575 Check if we are doing a segment seek and have arrived at the
6576 end of that segment.
6578 2005-11-04 Wim Taymans <wim@fluendo.com>
6580 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
6581 Don't leak a mutex unlock in case of an error.
6586 2005-11-04 Wim Taymans <wim@fluendo.com>
6588 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
6590 Get the context to wake up only once.
6592 2005-11-03 Wim Taymans <wim@fluendo.com>
6594 * check/states/sinks.c: (GST_START_TEST):
6595 Uncomment fixed check.
6597 * docs/design/part-TODO.txt:
6600 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
6601 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
6602 (gst_base_sink_get_position):
6603 If we are going to PLAYING, post the right pending state
6604 when we post the intermediate paused message.
6606 * gst/gstelement.c: (gst_element_continue_state),
6607 (gst_element_set_state_func), (gst_element_change_state):
6608 Don't post state changes that were between the same state
6611 2005-11-03 Stefan Kost <ensonic@users.sf.net>
6613 * docs/gst/gstreamer-sections.txt:
6616 * gst/gstminiobject.h:
6619 more docs and doc style fixes
6621 2005-11-03 Stefan Kost <ensonic@users.sf.net>
6623 * docs/gst/gstreamer-sections.txt:
6625 * gst/gstminiobject.c:
6628 2005-11-03 Andy Wingo <wingo@pobox.com>
6630 * check/states/sinks.c (test_livesrc_sink): Add checks that the
6631 state-changed messages actually have the right order and the right
6634 2005-11-03 Wim Taymans <wim@fluendo.com>
6636 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
6637 Added some more checks. Specifically the case where NO_PREROLL
6638 elements are in the pipeline.
6640 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
6641 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
6642 (gst_base_sink_get_position):
6643 Post READY->PAUSED state change messages too.
6644 Fix bug where VOID was posted as pending state...
6646 * gst/gstbin.c: (gst_bin_recalc_state):
6647 use _element_continue_state() to continue the state change.
6649 * gst/gstelement.c: (gst_element_continue_state),
6650 (gst_element_commit_state), (gst_element_set_state_func),
6651 (gst_element_change_state), (gst_element_change_state_func):
6652 Lots of state change cleanups, assign the STATE_RETURN in
6653 a new continue_state() function that also propagates the
6654 last return value from a state change to the app.
6655 Update some debug statements with proper category.
6657 2005-11-03 Wim Taymans <wim@fluendo.com>
6659 * docs/design/part-events.txt:
6660 * docs/design/part-gstpipeline.txt:
6661 * docs/design/part-messages.txt:
6662 * docs/design/part-overview.txt:
6663 * docs/design/part-seeking.txt:
6664 * docs/design/part-states.txt:
6665 * docs/design/part-trickmodes.txt:
6666 * docs/manual/advanced-position.xml:
6670 People think !! is ugly, this looks better.
6672 * gst/gstpad.c: (gst_pad_set_blocked_async):
6673 Remove !! since it's fixed elsewhere now.
6675 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
6677 * gst/gstminiobject.h:
6679 Add !! to _FLAG_IS_SET macros to make the result boolean.
6681 2005-11-03 Edward Hervey <edward@fluendo.com>
6683 * gst/gstpad.c: (gst_pad_set_blocked_async):
6684 comparing a flag and a gboolean rarely returns coherent results...
6685 Added two characters (!!) to make that work correctly.
6687 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
6689 * gst/gstbus.c: (gst_bus_class_init):
6692 * gst/gstqueue.c: (gst_queue_loop):
6693 Don't assume a miniobject that isn't a buffer is an
6694 event (it could be that there is a refcounting
6695 problem somewhere and the pointer is stale and
6696 refers to an already destroyed miniobject).
6698 2005-11-03 Julien MOUTTE <julien@moutte.net>
6700 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
6702 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
6704 * docs/manual/advanced-position.xml:
6705 Update seek example and explanations to current 0.9 API.
6707 * gst/elements/gsttypefindelement.c:
6708 (gst_type_find_element_activate):
6709 Remove FIXME comment now that the found caps
6712 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
6714 * gst/gstregistryxml.c: (load_feature):
6715 Add another GST_STR_NULL instance
6717 2005-11-02 Edward Hervey <edward@fluendo.com>
6719 * gst/gstpad.c: (handle_pad_block):
6720 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
6722 2005-11-02 Wim Taymans <wim@fluendo.com>
6727 * gst/gstelement.c: (gst_element_commit_state):
6728 Remove unused value.
6730 * gst/gstiterator.c:
6731 Mention that the returned element is reffed in the docs.
6733 2005-11-02 Wim Taymans <wim@fluendo.com>
6735 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
6736 (gst_pad_push), (gst_pad_push_event):
6737 Unlock blocked pads when they are flushed.
6739 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
6742 * docs/gst/gstreamer-sections.txt:
6745 * gst/gstregistry.c: (gst_registry_scan_path_level):
6746 fix for a nasty little missed situation where an installed plug-in
6747 which was in the cache did not get overridden by an uninstalled one
6748 which was earlier in the plugin path because the newly created plugin
6749 for the uninstalled one (not in the registry) didn't get its
6750 ->registered set to TRUE
6752 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
6754 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
6755 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
6756 (gst_collectpads_is_active), (gst_collectpads_collect),
6757 (gst_collectpads_collect_range), (gst_collectpads_start),
6758 (gst_collectpads_stop), (gst_collectpads_peek),
6759 (gst_collectpads_pop), (gst_collectpads_available),
6760 (gst_collectpads_read), (gst_collectpads_flush):
6761 Guard public API with assertions.
6764 Fix docs for gst_pad_set_link_function().
6766 2005-11-02 Johan Dahlin <johan@gnome.org>
6768 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
6769 Unref found_caps after we used it.
6771 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
6773 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
6774 Don't try to ref NULL.
6776 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
6778 * win32/common/config.h.in:
6779 provide a GST_FUNCTION that just gives a string for now
6781 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
6783 * win32/common/gstenumtypes.c: (register_gst_object_flags),
6784 (gst_object_flags_get_type), (register_gst_bin_flags),
6785 (gst_bin_flags_get_type), (register_gst_buffer_flag),
6786 (gst_buffer_flag_get_type), (register_gst_bus_flags),
6787 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
6788 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
6789 (gst_clock_return_get_type), (register_gst_clock_entry_type),
6790 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
6791 (gst_clock_flags_get_type), (register_gst_state),
6792 (gst_state_get_type), (register_gst_state_change_return),
6793 (gst_state_change_return_get_type), (register_gst_state_change),
6794 (gst_state_change_get_type), (register_gst_element_flags),
6795 (gst_element_flags_get_type), (register_gst_core_error),
6796 (gst_core_error_get_type), (register_gst_library_error),
6797 (gst_library_error_get_type), (register_gst_resource_error),
6798 (gst_resource_error_get_type), (register_gst_stream_error),
6799 (gst_stream_error_get_type), (register_gst_event_type),
6800 (gst_event_type_get_type), (register_gst_seek_type),
6801 (gst_seek_type_get_type), (register_gst_seek_flags),
6802 (gst_seek_flags_get_type), (register_gst_format),
6803 (gst_format_get_type), (register_gst_index_certainty),
6804 (gst_index_certainty_get_type), (register_gst_index_entry_type),
6805 (gst_index_entry_type_get_type),
6806 (register_gst_index_lookup_method),
6807 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
6808 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
6809 (gst_index_resolver_method_get_type), (register_gst_index_flags),
6810 (gst_index_flags_get_type), (register_gst_debug_level),
6811 (gst_debug_level_get_type), (register_gst_debug_color_flags),
6812 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
6813 (gst_iterator_result_get_type), (register_gst_iterator_item),
6814 (gst_iterator_item_get_type), (register_gst_message_type),
6815 (gst_message_type_get_type), (register_gst_mini_object_flags),
6816 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
6817 (gst_pad_link_return_get_type), (register_gst_flow_return),
6818 (gst_flow_return_get_type), (register_gst_activate_mode),
6819 (gst_activate_mode_get_type), (register_gst_pad_direction),
6820 (gst_pad_direction_get_type), (register_gst_pad_flags),
6821 (gst_pad_flags_get_type), (register_gst_pad_presence),
6822 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
6823 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
6824 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
6825 (gst_plugin_error_get_type), (register_gst_plugin_flags),
6826 (gst_plugin_flags_get_type), (register_gst_rank),
6827 (gst_rank_get_type), (register_gst_query_type),
6828 (gst_query_type_get_type), (register_gst_tag_merge_mode),
6829 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
6830 (gst_tag_flag_get_type), (register_gst_task_state),
6831 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
6832 (gst_alloc_trace_flags_get_type),
6833 (register_gst_type_find_probability),
6834 (gst_type_find_probability_get_type), (register_gst_uri_type),
6835 (gst_uri_type_get_type), (register_gst_parse_error),
6836 (gst_parse_error_get_type):
6837 * win32/common/gstversion.h:
6840 2005-11-01 Luca Ognibene <luogni@tin.it>
6843 fix docs. popt is dead, long live GOption.
6845 2005-10-31 Wim Taymans <wim@fluendo.com>
6850 2005-10-31 Andy Wingo <wingo@pobox.com>
6854 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
6856 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
6857 need to serialize property notifications on GLib 2.8. GLib 2.6 has
6858 the possibility of deadlocks here if code calling notify() or
6859 set() has a lock that can be taken in another notify handler (ABBA
6860 with class lock and e.g. python GIL state lock).
6862 2005-10-28 Julien MOUTTE <julien@moutte.net>
6864 * gst/gstbus.c: Doc updates.
6866 2005-10-28 Wim Taymans <wim@fluendo.com>
6868 * docs/design/part-TODO.txt:
6869 * gst/gstiterator.c:
6870 * gst/gstsystemclock.c:
6871 * gst/gstsystemclock.h:
6874 2005-10-28 Edward Hervey <edward@fluendo.com>
6876 * docs/gst/gstreamer-docs.sgml:
6877 * docs/gst/gstreamer-sections.txt:
6878 the GstURIType documentation page is private, it only defines GstURIType
6879 which should be defined in the GstURIHandler page
6881 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
6883 * gst/gstbin.c: (gst_bin_class_init):
6886 Documentation updates.
6888 2005-10-28 Wim Taymans <wim@fluendo.com>
6890 * docs/gst/gstreamer-sections.txt:
6893 Documented the clocks.
6895 2005-10-28 Stefan Kost <ensonic@users.sf.net>
6897 * docs/gst/gstreamer-sections.txt:
6898 move some macros to private sections
6899 * gst/gstminiobject.c:
6900 * gst/gstminiobject.h:
6901 add descriptions provided by ds and some more
6903 mark macro as to be removed
6905 2005-10-28 Wim Taymans <wim@fluendo.com>
6907 * docs/design/part-TODO.txt:
6908 Add an item to TODO.
6910 * gst/gstiterator.c: (gst_iterator_fold),
6911 (gst_iterator_find_custom):
6912 * gst/gstiterator.h:
6915 2005-10-28 Wim Taymans <wim@fluendo.com>
6917 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
6918 (gst_base_transform_init):
6921 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
6922 An EOS event marks the queue as completely filled.
6924 2005-10-27 Wim Taymans <wim@fluendo.com>
6926 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6927 (gst_base_sink_do_sync), (gst_base_sink_get_position):
6928 Some more debugging.
6930 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
6931 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
6932 (gst_base_transform_event), (gst_base_transform_getrange),
6933 (gst_base_transform_chain):
6934 * gst/base/gstbasetransform.h:
6936 Protect transform and concurrent buffer alloc with a new lock.
6937 Try not to break ABI/API.
6939 2005-10-27 Wim Taymans <wim@fluendo.com>
6941 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
6942 (gst_base_src_init), (gst_base_src_query),
6943 (gst_base_src_default_newsegment),
6944 (gst_base_src_configure_segment), (gst_base_src_do_seek),
6945 (gst_base_src_send_event), (gst_base_src_event_handler),
6946 (gst_base_src_pad_get_range), (gst_base_src_loop),
6947 (gst_base_src_unlock), (gst_base_src_default_negotiate),
6948 (gst_base_src_start), (gst_base_src_deactivate),
6949 (gst_base_src_activate_push), (gst_base_src_change_state):
6950 Move some stuff around and cleanup things.
6952 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
6954 * gst/base/gstbasesrc.c: (gst_base_src_query):
6955 Add missing break statements.
6957 2005-10-27 Wim Taymans <wim@fluendo.com>
6959 * check/gst/gstbin.c: (GST_START_TEST):
6960 An extra refcount is taken in basesrc.
6962 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
6963 (gst_base_src_get_range), (gst_base_src_pad_get_range),
6964 (gst_base_src_loop):
6965 Small cleanups, check for flushing after being unlocked from the
6966 LIVE_LOCK. take refcounts correctly (not yet everywhere).
6967 Don't send out EOS when going to READY.
6969 2005-10-27 Wim Taymans <wim@fluendo.com>
6971 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6972 (gst_base_sink_get_position):
6975 * gst/gstbin.c: (message_check), (bin_replace_message),
6976 (bin_remove_messages), (is_eos), (gst_bin_add_func),
6977 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
6978 (bin_query_duration_init), (bin_query_duration_fold),
6979 (bin_query_duration_done), (bin_query_generic_fold),
6981 * tools/gst-launch.c: (main):
6984 2005-10-26 Stefan Kost <ensonic@users.sf.net>
6986 * examples/controller/audio-example.c: (main):
6987 * examples/queue/queue.c: (event_loop):
6988 * gst/base/gstbasetransform.h:
6989 * gst/gstelement.c: (gst_element_send_event):
6991 * gst/gstpad.c: (gst_pad_send_event):
6994 changing log priority in error situations
6996 2005-10-25 Wim Taymans <wim@fluendo.com>
6998 * gst/gstbin.c: (message_check), (bin_replace_message),
6999 (bin_remove_messages), (is_eos), (gst_bin_add_func),
7000 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
7001 (bin_query_duration_init), (bin_query_duration_fold),
7002 (bin_query_duration_done), (bin_query_generic_fold),
7004 Some doc and debug updates.
7005 Cache previously requested query DURATION for speed. invalidate
7006 cached duration if element posts a DURATION message.
7008 2005-10-25 Wim Taymans <wim@fluendo.com>
7010 * docs/design/part-TODO.txt:
7013 * gst/gstbin.c: (message_check), (bin_replace_message),
7014 (bin_remove_messages), (is_eos), (gst_bin_add_func),
7015 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
7016 (bin_query_duration_init), (bin_query_duration_fold),
7017 (bin_query_duration_done), (bin_query_generic_fold),
7019 Handle SEGMENT_START/DONE messages correctly.
7020 More evolved query algorithm that handles duration queries
7023 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
7024 (gst_element_get_state_func), (gst_element_abort_state),
7025 (gst_element_commit_state), (gst_element_lost_state):
7026 Some more debugging.
7031 2005-10-25 Wim Taymans <wim@fluendo.com>
7033 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
7034 Don't use invalid stream_time.
7036 * gst/gstevent.c: (gst_event_new_newsegment):
7037 stream_time in newsegment cannot be undefined.
7039 2005-10-24 Wim Taymans <wim@fluendo.com>
7044 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
7046 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
7048 2005-10-24 Stefan Kost <ensonic@users.sf.net>
7050 * docs/libs/tmpl/gstdparam.sgml:
7051 * docs/libs/tmpl/gstdplinint.sgml:
7052 * docs/libs/tmpl/gstdpman.sgml:
7053 * docs/libs/tmpl/gstdpsmooth.sgml:
7054 * docs/libs/tmpl/gstunitconvert.sgml:
7057 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
7062 === release 0.9.4 ===
7064 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
7067 releasing 0.9.4, "Tyrannosaurus Rex"
7069 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
7071 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
7072 (gst_file_sink_get_current_offset):
7073 Use fseeko() and ftello() if available. When falling back on
7074 lseek() to get the current offset, fflush() first to make sure
7075 everything is up-to-date and we get the right offset.
7077 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
7079 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7080 * gst/base/gstbasesrc.c: (gst_base_src_loop):
7081 * gst/gsterror.c: (_gst_stream_errors_init):
7083 * gst/gstqueue.c: (gst_queue_loop):
7085 remove prematurely added error category and clean up the instances
7087 2005-10-21 Wim Taymans <wim@fluendo.com>
7089 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7090 (gst_base_sink_get_position), (gst_base_sink_query),
7091 (gst_base_sink_change_state):
7092 Simply set the right flag when going to playing, that's all
7093 we need to do instead of calling a function inside the object
7094 lock (that could take the lock as well and deadlock)
7096 2005-10-21 Wim Taymans <wim@fluendo.com>
7098 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
7099 (gst_base_src_loop):
7100 Don't warn, the peer element knows what to do best when
7101 the seek failed, it might try something else.
7103 2005-10-21 Wim Taymans <wim@fluendo.com>
7105 * gst/base/gstbasesrc.c: (gst_base_src_init),
7106 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
7109 2005-10-21 Wim Taymans <wim@fluendo.com>
7111 * docs/design/part-segments.txt:
7114 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
7115 Correctly set caps, even on the subbufer.
7117 2005-10-21 Wim Taymans <wim@fluendo.com>
7119 * docs/gst/gstreamer-docs.sgml:
7120 * docs/gst/gstreamer-sections.txt:
7127 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
7131 And 2% more doc coverage.
7133 2005-10-21 Andy Wingo <wingo@pobox.com>
7135 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
7138 2005-10-20 Wim Taymans <wim@fluendo.com>
7140 * gst/gsterror.c: (gst_error_get_message):
7143 * gst/gststructure.c:
7148 2005-10-20 Wim Taymans <wim@fluendo.com>
7153 Another 1% more coverage.
7155 2005-10-20 Wim Taymans <wim@fluendo.com>
7157 * docs/gst/gstreamer-sections.txt:
7158 * gst/gstelement.c: (gst_element_get_state_func),
7159 (gst_element_abort_state), (gst_element_commit_state),
7160 (gst_element_lost_state):
7162 * gst/gstquery.c: (gst_query_set_position),
7163 (gst_query_parse_position), (gst_query_set_duration),
7164 (gst_query_parse_duration), (gst_query_new_convert):
7166 Yay! 1% more docs coverage.
7168 2005-10-20 Wim Taymans <wim@fluendo.com>
7171 * gst/gstquery.c: (gst_query_set_position),
7172 (gst_query_parse_position), (gst_query_set_duration),
7173 (gst_query_parse_duration), (gst_query_new_convert):
7175 * gst/gstutils.c: (gst_element_query_convert):
7177 Docs and consistency fixes.
7179 2005-10-20 Wim Taymans <wim@fluendo.com>
7185 2005-10-20 Wim Taymans <wim@fluendo.com>
7187 * gst/gstbin.c: (message_check), (bin_replace_message),
7188 (bin_remove_messages), (is_eos), (gst_bin_add_func),
7189 (update_degree), (gst_bin_sort_iterator_next),
7190 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
7191 Reworked the message handling a bit, cache the messages instead of
7192 only the senders. alows us to do more in the future.
7194 2005-10-20 Wim Taymans <wim@fluendo.com>
7196 * docs/design/part-TODO.txt:
7199 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
7200 (gst_base_sink_query):
7201 Don't use clock time to report position when in EOS.
7203 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
7205 * tools/gst-inspect.c: (print_interfaces),
7206 (print_element_properties_info), (print_element_info):
7207 Fix interface output with gst-inspect -a; don't print
7208 newlines after double/float properties.
7210 2005-10-20 Wim Taymans <wim@fluendo.com>
7212 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
7213 (gst_base_sink_query):
7214 Speed up current position calculation.
7216 * gst/base/gstbasesrc.c: (gst_base_src_query),
7217 (gst_base_src_default_newsegment):
7218 Correctly set stream position in newsegment.
7220 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
7221 (update_degree), (gst_bin_sort_iterator_next),
7222 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
7223 * gst/gstmessage.c: (gst_message_new_custom):
7224 Clean up debugging info
7226 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
7227 (gst_queue_loop), (gst_queue_handle_src_query):
7230 2005-10-19 Wim Taymans <wim@fluendo.com>
7232 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7233 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
7234 Fix query handling again.
7236 2005-10-19 Wim Taymans <wim@fluendo.com>
7238 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7239 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
7240 * gst/base/gstbasesrc.c: (gst_base_src_query):
7241 * gst/elements/gstfilesink.c: (gst_file_sink_query):
7242 * gst/elements/gsttypefindelement.c:
7243 (gst_type_find_handle_src_query), (find_element_get_length),
7244 (gst_type_find_element_activate):
7247 * gst/gstquery.c: (gst_query_new_position),
7248 (gst_query_set_position), (gst_query_parse_position),
7249 (gst_query_new_duration), (gst_query_set_duration),
7250 (gst_query_parse_duration), (gst_query_set_segment),
7251 (gst_query_parse_segment):
7253 Bundling query position/duration is not a good idea since duration
7254 does not change much and we don't want to recalculate it for every
7255 position query, so they are separated again..
7256 Base value in segment query is not needed.
7258 * gst/gstqueue.c: (gst_queue_handle_src_query):
7259 * gst/gstutils.c: (gst_element_query_position),
7260 (gst_element_query_duration), (gst_pad_query_position),
7261 (gst_pad_query_duration):
7263 Updates for query API change.
7264 Added some docs here and there.
7266 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
7268 * check/gst/gstbin.c: (GST_START_TEST):
7269 * check/gst/gstghostpad.c: (GST_START_TEST):
7270 * check/pipelines/cleanup.c: (GST_START_TEST):
7271 wait on thread to die so we can check refcount correctly
7273 2005-10-18 Wim Taymans <wim@fluendo.com>
7275 * check/pipelines/stress.c: (GST_START_TEST):
7276 Make check a little more time consuming.
7278 2005-10-18 Wim Taymans <wim@fluendo.com>
7280 * check/Makefile.am:
7281 * check/pipelines/stress.c: (GST_START_TEST),
7282 (simple_launch_lines_suite), (main):
7283 Small state change torture test.
7285 * docs/design/part-states.txt:
7286 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7287 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
7288 (gst_base_sink_change_state):
7289 Never take state lock from streaming thread, clean up ugly
7290 hacks. Unfortunatly core does not yet support nice ways to
7293 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
7295 Start state recalc if a STATE_DIRTY message is posted, but only
7296 on the toplevel bin.
7298 * gst/gstelement.c: (gst_element_sync_state_with_parent),
7299 (gst_element_get_state_func), (gst_element_abort_state),
7300 (gst_element_commit_state), (gst_element_lost_state),
7301 (gst_element_set_state_func), (gst_element_change_state):
7303 State variables are now protected with the LOCK, the state
7304 lock is only used to serialize _set_state().
7306 2005-10-18 Wim Taymans <wim@fluendo.com>
7308 * check/gst/gstbin.c: (GST_START_TEST):
7309 * check/gst/gstmessage.c: (GST_START_TEST):
7310 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
7311 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
7313 * gst/gstelement.c: (gst_element_abort_state),
7314 (gst_element_commit_state), (gst_element_lost_state):
7315 * gst/gstmessage.c: (gst_message_new_state_changed),
7316 (gst_message_new_state_dirty), (gst_message_new_segment_start),
7317 (gst_message_new_segment_done), (gst_message_new_duration),
7318 (gst_message_parse_state_changed),
7319 (gst_message_parse_segment_start),
7320 (gst_message_parse_segment_done), (gst_message_parse_duration):
7322 * tools/gst-launch.c: (event_loop):
7323 Seriously, this is better than a previous commit as we only need
7324 to notify the fact that an element changed state in a streaming
7325 thread, marking the state of the parents dirty, hence the
7326 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
7329 2005-10-18 Wim Taymans <wim@fluendo.com>
7331 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
7332 (gst_bin_recalc_func):
7333 * gst/gstelement.c: (gst_element_set_clock),
7334 (gst_element_abort_state), (gst_element_lost_state):
7335 Cleanups, prepare for state change fixes.
7337 2005-10-18 Wim Taymans <wim@fluendo.com>
7340 * gst/gstelement.c: (gst_element_class_init),
7341 (gst_element_set_state), (gst_element_set_state_func):
7343 Pending ABI changes.
7344 GThreadPool in GstBinClass to monitor async state changes.
7345 state_cookie in GstElement to detect concurrent gst/set state.
7346 set_state is now virtual too in case a very complicated element
7347 has to be constructed.
7349 2005-10-18 Wim Taymans <wim@fluendo.com>
7351 * check/gst/gstbin.c: (GST_START_TEST):
7352 * check/gst/gstmessage.c: (GST_START_TEST):
7353 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
7354 * gst/gstbin.c: (bin_bus_handler):
7355 * gst/gstelement.c: (gst_element_commit_state),
7356 (gst_element_lost_state):
7357 * gst/gstmessage.c: (gst_message_new_state_changed),
7358 (gst_message_new_segment_start), (gst_message_new_segment_done),
7359 (gst_message_new_duration), (gst_message_parse_state_changed),
7360 (gst_message_parse_segment_start),
7361 (gst_message_parse_segment_done), (gst_message_parse_duration):
7363 * tools/gst-launch.c: (event_loop):
7364 Make messages future proof.
7365 state-change gets a flag if it was a message comming from the
7367 segment-start/stop can also be specified in other formats.
7368 A message to notify an app that a pipeline changed playback
7370 Also fix a GstMessage leak in -launch
7372 2005-10-18 Andy Wingo <wingo@pobox.com>
7374 * gst/gstelement.c (gst_element_dispose): More helpful message.
7376 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
7378 reviewed by: <delete if not using a buddy>
7380 * common/gtk-doc.mak:
7382 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
7384 * gst/gstregistry.c: (gst_registry_scan_path_level):
7385 unref a plug-in we get that was already initialized
7387 2005-10-18 Stefan Kost <ensonic@users.sf.net>
7389 * docs/gst/gstreamer-sections.txt:
7390 * docs/libs/gstreamer-libs-sections.txt:
7395 2005-10-17 Andy Wingo <wingo@pobox.com>
7397 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
7400 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
7402 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
7404 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
7405 (gst_element_get_state_func): Better debug message.
7406 (gst_element_commit_state): s/INFO/DEBUG/.
7407 (gst_element_lost_state, gst_element_change_state):
7409 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
7410 (gst_message_new_custom): s/INFO/LOG/.
7412 2005-10-17 Michael Smith <msmith@fluendo.com>
7414 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7415 Check if end time is valid using end time, not start time.
7417 2005-10-17 Stefan Kost <ensonic@users.sf.net>
7419 * check/gst-libs/controller.c: (GST_START_TEST),
7420 (gst_controller_suite):
7421 * libs/gst/controller/gstcontroller.c:
7422 (gst_controlled_property_set_interpolation_mode):
7423 * libs/gst/controller/gstcontroller.h:
7424 * libs/gst/controller/gstinterpolation.c:
7425 * testsuite/controller/.cvsignore:
7426 * testsuite/controller/Makefile.am:
7427 * testsuite/controller/interpolator.c:
7428 merge controller testsuites
7430 remove mem-chunk from docs
7432 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
7434 * gst/gstmemchunk.c:
7435 * gst/gstmemchunk.h:
7436 * gst/gsttrashstack.c:
7437 * gst/gsttrashstack.h:
7438 out. get out. you're fired. to the Attic !
7440 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
7442 * gst/gstcaps.c: (gst_caps_intersect):
7443 fix signedness issues in a (hopefully) correct way
7444 * gst/gstelement.c: (gst_element_pads_activate):
7446 * gst/gstobject.c: (gst_object_set_parent):
7449 2005-10-17 Julien MOUTTE <julien@moutte.net>
7451 * gst/gstvalue.h: Fix prototypes.
7453 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
7455 * docs/gst/gstreamer-sections.txt:
7456 * gst/gst.c: (gst_version_string):
7458 * gst/gstversion.h.in:
7459 * win32/common/libgstreamer.def:
7460 add gst_version_string ()
7462 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
7466 * gst/gst.c: (init_post):
7467 * win32/common/config.h.in:
7469 * gst/gstcaps.c: (gst_caps_intersect):
7470 use gint64, the range could be bigger than a guint
7472 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
7475 document potential problem in 2038
7477 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
7479 * gst/gstcaps.c: (gst_caps_intersect):
7480 Fix guint j diving under 0
7482 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
7485 * win32/common/config.h:
7486 * win32/common/config.h.in:
7487 check for process.h, declares getpid() on Windows
7489 include process.h if we have it
7490 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
7491 * gst/gstmemchunk.h:
7492 fix signedness issues
7493 * win32/common/libgstreamer.def:
7496 2005-10-16 Julien MOUTTE <julien@moutte.net>
7498 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
7499 fix. Because of unsigned ints, caps intersection was going nuts and
7500 trying to access structures with G_MAXUINT index. That fixes
7501 videotestsrc ! ffmpegcolorspace ! fakesink
7502 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
7505 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
7508 use the gettext macro
7509 * gst/elements/gstelements.c:
7511 * gst/indexers/gstindexers.c:
7512 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
7513 * win32/common/config.h:
7515 * win32/common/config.h.in:
7516 add the template to generate config.h
7517 * win32/common/gstenumtypes.c:
7518 * win32/common/gstversion.h:
7521 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
7523 * gst/gst.c: (gst_version):
7524 * gst/gstversion.h.in:
7527 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
7530 Oops, add missing closing bracket.
7532 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7535 use common m4's for argument checking
7537 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
7539 * docs/gst/gstreamer-sections.txt:
7541 Add GST_EVENT_TYPE_NAME() macro.
7543 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7546 * gst/gstpluginfeature.c:
7548 privatize more symbols
7550 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7553 add srcdir, builddir includes to GST_ALL_CFLAGS, since
7554 everything that uses GStreamer API should have the includes
7556 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7558 * docs/gst/gstreamer-sections.txt:
7559 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
7561 give each value a _get_type, removes the DATA exports
7563 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7567 remove _gst_registry_auto_load, not used anymore
7568 * gst/gstbin.c: (gst_bin_get_type):
7570 * gst/gstelement.c: (gst_element_get_type):
7572 * gst/gstobject.c: (gst_object_get_type):
7574 * gst/gstpad.c: (gst_pad_get_type):
7576 make _get_type functions similar, fixes data export from library
7578 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7581 correctly make conditionals
7582 * gst/elements/Makefile.am:
7583 * gst/elements/gstelements.c:
7584 fix typo causing fdsrc not to build
7586 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7588 * testsuite/Makefile.am:
7589 * testsuite/bytestream/.cvsignore:
7590 * testsuite/bytestream/Makefile.am:
7591 * testsuite/bytestream/filepadsink.c:
7592 * testsuite/bytestream/gstbstest.c:
7593 * testsuite/bytestream/test1.c:
7594 * testsuite/bytestream/testfile1:
7595 * testsuite/caps/normalisation.c:
7596 * testsuite/caps/random.c: (main):
7597 * testsuite/cleanup/.cvsignore:
7598 * testsuite/cleanup/Makefile.am:
7599 * testsuite/cleanup/cleanup1.c:
7600 * testsuite/cleanup/cleanup2.c:
7601 * testsuite/cleanup/cleanup3.c:
7602 * testsuite/cleanup/cleanup4.c:
7603 * testsuite/cleanup/cleanup5.c:
7604 * testsuite/controller/interpolator.c:
7605 * testsuite/debug/printf_extension.c: (main):
7606 * testsuite/elements/tee.c:
7607 * testsuite/negotiation/.cvsignore:
7608 * testsuite/negotiation/Makefile.am:
7609 * testsuite/negotiation/pad_link.c:
7610 * testsuite/pad/Makefile.am:
7611 * testsuite/pad/chainnopull.c:
7612 * testsuite/pad/getnopush.c:
7613 * testsuite/pad/link.c:
7614 * testsuite/refcounting/sched.c: (create_pipeline):
7615 * testsuite/registry/Makefile.am:
7616 * testsuite/registry/gst-print-formats.c:
7617 * testsuite/schedulers/.cvsignore:
7618 * testsuite/schedulers/142183-2.c:
7619 * testsuite/schedulers/142183.c:
7620 * testsuite/schedulers/143777-2.c:
7621 * testsuite/schedulers/143777.c:
7622 * testsuite/schedulers/147713.c:
7623 * testsuite/schedulers/147819.c:
7624 * testsuite/schedulers/147894-2.c:
7625 * testsuite/schedulers/147894.c:
7626 * testsuite/schedulers/Makefile.am:
7627 * testsuite/schedulers/group_link.c:
7628 * testsuite/schedulers/queue_link.c:
7629 * testsuite/schedulers/relink.c:
7630 * testsuite/schedulers/unlink.c:
7631 * testsuite/schedulers/unref.c:
7632 * testsuite/schedulers/useless_iteration.c:
7633 * testsuite/states/bin.c:
7634 clean out/remove some stuff from the testsuite directories
7636 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7639 check for some headers
7640 * gst/elements/Makefile.am:
7641 * gst/elements/gstelements.c:
7642 don't compile fdsrc without sys/socket.h
7643 * gst/indexers/Makefile.am:
7644 * gst/indexers/gstindexers.c: (plugin_init):
7645 don't compile fileindex without mmap
7647 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
7654 * check/Makefile.am:
7655 * docs/gst/Makefile.am:
7656 * examples/helloworld/Makefile.am:
7658 * gst/base/Makefile.am:
7659 * gst/check/Makefile.am:
7660 * gst/elements/Makefile.am:
7661 * gst/indexers/Makefile.am:
7662 * gst/parse/Makefile.am:
7663 * libs/gst/controller/Makefile.am:
7664 * libs/gst/dataprotocol/Makefile.am:
7665 * examples/helloworld/helloworld.c: (event_loop):
7666 compile fixes, though it's not being compiled currently
7668 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
7670 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
7671 Add some simple tests for the new taglist date API.
7673 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
7675 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
7676 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
7677 Beautify 'last-message' output: print 'none' for buffer timestamps
7678 and durations if none is set; improve alignment with next messages.
7680 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
7682 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
7683 * gst/gstpluginfeature.h:
7684 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
7685 * gst/gstregistry.h:
7686 * docs/gst/gstreamer-sections.txt:
7687 Add new API to check plugin feature version requirements.
7689 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
7690 Some basic tests for the above.
7692 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
7694 * gst/gststructure.c: (gst_structure_to_string):
7695 guard against NULL printf - happens when for example
7696 a message structure with GstClock gets serialized
7698 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
7700 * gst/base/gstcollectpads.c: (gst_collectpads_event):
7701 Fix presumable copy'n'pasto.
7703 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
7705 * gst/elements/gstfakesrc.h:
7706 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
7707 * gst/elements/gsttypefindelement.c:
7709 * gst/elements/gstfilesink.c: (gst_file_sink_render):
7710 I wonder if this could actually write +2GB files before
7712 2005-10-13 Andy Wingo <wingo@pobox.com>
7714 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
7715 Fix Timmeke Waymans bug.
7716 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
7717 string of the proper length to gst_caps_from_string. There's a
7718 potential for, before this fix, that this could cause someone
7719 connecting over the network to cause a segfault if the payload is
7722 2005-10-13 Stefan Kost <ensonic@users.sf.net>
7724 * docs/design/draft-push-pull.txt:
7725 * docs/design/part-overview.txt:
7726 * docs/random/TODO-pre-0.9:
7727 * docs/random/old/ChangeLog.gstreamer:
7728 * gst/base/gstpushsrc.c:
7732 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
7734 * gst/glib-compat.c: (gst_flags_get_first_value):
7735 * gst/glib-compat.h:
7736 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
7737 (gst_value_compare_double), (gst_value_serialize_flags):
7738 GLib 2.6 g_flags_get_first_value has a bug that triggers an
7741 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
7743 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7744 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
7746 * tools/gst-launch.c: (event_loop):
7747 print out clock nicely
7749 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
7751 * docs/gst/gstreamer-sections.txt:
7753 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
7754 (gst_tag_list_get_date_index):
7755 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
7756 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
7758 2005-10-13 Julien MOUTTE <julien@moutte.net>
7760 * gst/base/gstcollectpads.c: (gst_collectpads_event),
7761 (gst_collectpads_chain):
7762 * gst/base/gstcollectpads.h: Handle newsegment and store informations
7765 2005-10-13 Stefan Kost <ensonic@users.sf.net>
7767 * docs/gst/gstreamer-sections.txt:
7770 * tools/gst-inspect.c: (main):
7771 * tools/gst-launch.c: (main):
7772 * tools/gst-run.c: (main):
7773 * tools/gst-xmlinspect.c: (main):
7774 fix GOption context leaks
7777 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
7781 * win32/common/config.h:
7783 * win32/vs6/grammar.dsp:
7784 * win32/vs6/libgstelements.dsp:
7785 * win32/vs6/libgstreamer.dsp:
7788 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
7790 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7791 * gst/base/gstbasesrc.c: (gst_base_src_query):
7792 fix more guint64<->gdouble conversions
7794 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
7797 add win32-update target
7798 * win32/common/gstconfig.h:
7799 * win32/common/gstenumtypes.c:
7800 * win32/common/gstenumtypes.h:
7801 * win32/common/gstversion.h:
7802 add files that visual studio can't generate
7804 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
7807 add a win32-update target
7810 2005-10-12 Wim Taymans <wim@fluendo.com>
7812 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
7813 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
7814 * gst/gstelement.c: (gst_element_commit_state),
7815 (gst_element_set_state):
7816 Protect flags with proper lock.
7817 unref provided cached clock in dispose.
7819 2005-10-12 Stefan Kost <ensonic@users.sf.net>
7822 * gst/gstminiobject.h:
7824 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
7825 removed unused flags from miniobject
7828 2005-10-12 Wim Taymans <wim@fluendo.com>
7830 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
7831 (gst_file_sink_event), (gst_file_sink_render):
7832 Flush before seeking.
7834 2005-10-12 Andy Wingo <wingo@pobox.com>
7836 * gst/gst.c (gst_init_check): Ignore unknown options, as has
7837 always been the case.
7839 2005-10-12 Stefan Kost <ensonic@users.sf.net>
7841 * check/gst/gstbin.c: (GST_START_TEST):
7842 * docs/gst/gstreamer-sections.txt:
7843 * gst/base/gstbasesink.c: (gst_base_sink_init):
7844 * gst/base/gstbasesrc.c: (gst_base_src_init),
7845 (gst_base_src_get_range), (gst_base_src_check_get_range),
7846 (gst_base_src_start), (gst_base_src_stop):
7847 * gst/base/gstbasesrc.h:
7848 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
7849 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
7850 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
7854 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
7856 * gst/gstelement.c: (gst_element_is_locked_state),
7857 (gst_element_set_locked_state), (gst_element_commit_state),
7858 (gst_element_set_state):
7860 * gst/gstindex.c: (gst_index_init):
7862 * gst/gstminiobject.h:
7863 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
7864 (gst_object_set_parent):
7866 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
7867 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
7869 * gst/gstpadtemplate.h:
7870 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
7871 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
7872 * gst/gstpipeline.h:
7873 * gst/indexers/gstfileindex.c: (gst_file_index_load),
7874 (gst_file_index_commit):
7875 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
7876 * testsuite/pad/link.c: (gst_test_src_init),
7877 (gst_test_filter_init), (gst_test_sink_init):
7878 * testsuite/states/locked.c: (main):
7879 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
7880 moved bitshift from macro to enum definition
7882 2005-10-12 Wim Taymans <wim@fluendo.com>
7884 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
7885 * gst/elements/gstfilesink.c: (gst_file_sink_event),
7886 (gst_file_sink_render):
7887 Some more debugging info.
7889 2005-10-12 Wim Taymans <wim@fluendo.com>
7891 * docs/design/part-states.txt:
7892 * tools/gst-launch.c: (main):
7894 Revert non-intentional change.
7896 2005-10-12 Wim Taymans <wim@fluendo.com>
7898 * check/gst/gstbin.c: (GST_START_TEST):
7899 * check/gst/gstelement.c: (GST_START_TEST):
7900 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
7901 * check/gst/gstghostpad.c: (GST_START_TEST):
7902 * check/gst/gstpipeline.c: (GST_START_TEST):
7903 * check/pipelines/simple_launch_lines.c: (run_pipeline):
7904 * check/states/sinks.c: (GST_START_TEST):
7905 * gst/elements/gsttypefindelement.c: (stop_typefinding):
7906 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
7907 (gst_bin_remove_func), (gst_bin_get_state_func),
7908 (gst_bin_recalc_state), (gst_bin_change_state_func),
7910 * gst/gstelement.c: (gst_element_get_state_func),
7911 (gst_element_get_state), (gst_element_abort_state),
7912 (gst_element_commit_state), (gst_element_set_state),
7913 (gst_element_change_state), (gst_element_change_state_func):
7915 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
7916 (gst_pipeline_provide_clock_func):
7917 * gst/gstutils.c: (gst_element_link_pads_filtered):
7918 * tools/gst-launch.c: (main):
7919 * tools/gst-typefind.c: (main):
7920 Use GstClockTime in _get_state() instead of GTimeVal.
7921 Remove old code in gstutils.c
7923 2005-10-12 Andy Wingo <wingo@pobox.com>
7925 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
7928 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
7929 there is no task. Shouldn't affect any code, as nothing in our
7930 plugins checks this return value.
7931 (gst_pad_stop_task): Also take the stream lock if the pad has no
7934 2005-10-12 Wim Taymans <wim@fluendo.com>
7936 * gst/gstpad.c: (pre_activate), (post_activate),
7937 (gst_pad_activate_pull), (gst_pad_activate_push):
7938 Cleanup activation code. Reset old state if
7941 2005-10-12 Wim Taymans <wim@fluendo.com>
7943 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7944 (gst_base_sink_change_state):
7945 No need to prerol after receiving EOS.
7947 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
7948 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
7949 * gst/elements/gstidentity.c: (gst_identity_event):
7950 Print events more verbosely.
7952 2005-10-12 Wim Taymans <wim@fluendo.com>
7954 * check/Makefile.am:
7955 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
7956 * check/states/sinks2.c:
7957 Moved sinks2 testcode in sinks check.
7959 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
7960 (gst_bin_remove_func), (gst_bin_recalc_state),
7961 (gst_bin_change_state_func), (bin_bus_handler):
7962 Fix potential race condition when _get_state() iterated over an
7963 ASYNC element right before it posted a state completion.
7966 Do proper cast here.
7968 * gst/gstevent.c: (gst_event_new_newsegment),
7969 (gst_event_parse_newsegment):
7970 A playback rate of 0.0 is not allowed.
7972 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
7974 * win32/common/config.h:
7975 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7976 (_trewinddir), (_ttelldir), (_tseekdir):
7977 * win32/common/dirent.h:
7978 * win32/common/gtchar.h:
7979 * win32/common/libgstbase.def:
7980 * win32/common/libgstreamer.def:
7981 * win32/vs6/grammar.dsp:
7982 * win32/vs6/gst_inspect.dsp:
7983 * win32/vs6/gst_launch.dsp:
7984 * win32/vs6/gstreamer.dsw:
7985 * win32/vs6/libgstbase.dsp:
7986 * win32/vs6/libgstelements.dsp:
7987 * win32/vs6/libgstreamer.dsp:
7988 Visual Studio 6 project files, and a new common directory.
7991 2005-10-11 Wim Taymans <wim@fluendo.com>
7993 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7994 (gst_base_sink_do_sync), (gst_base_sink_query),
7995 (gst_base_sink_change_state):
7996 * gst/base/gstbasesink.h:
7997 Correctly parse newsegment info.
7999 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8001 * gst/gst.c: (init_post):
8002 split plugin paths correctly
8004 2005-10-11 Wim Taymans <wim@fluendo.com>
8006 * check/gst/gstevent.c: (GST_START_TEST):
8007 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8008 (gst_base_sink_change_state):
8009 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
8010 * gst/base/gstbasetransform.c: (gst_base_transform_event):
8011 * gst/elements/gstfilesink.c: (gst_file_sink_event):
8012 * gst/gstevent.c: (gst_event_new_newsegment),
8013 (gst_event_parse_newsegment):
8015 Added extra flag to newsegment for future API freeze.
8016 Updated check and base elements.
8018 2005-10-11 Julien MOUTTE <julien@moutte.net>
8020 * gst/base/gstcollectpads.c: (gst_collectpads_init),
8021 (gst_collectpads_add_pad), (gst_collectpads_pop),
8022 (gst_collectpads_event), (gst_collectpads_chain):
8023 * gst/base/gstcollectpads.h: Handle EOS correctly.
8025 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8027 * tools/gst-launch.c: (main):
8028 more null protecting
8030 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8032 * gst/gst-i18n-lib.h:
8033 check for ENABLE_NLS, not GETTEXT_PACKAGE
8034 * gst/gstregistry.c: (gst_registry_add_plugin),
8035 (gst_registry_scan_path_level),
8036 (_gst_registry_remove_cache_plugins):
8037 protect possibly NULL strings
8038 * gst/parse/types.h:
8039 config.h already included before
8040 * tools/gst-inspect.c: (main):
8041 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
8042 check for ENABLE_NLS, not GETTEXT_PACKAGE
8043 * tools/gst-launch.c: (main):
8044 check for ENABLE_NLS, not GETTEXT_PACKAGE
8046 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8049 if we don't have glib, fail before testing 2.8
8050 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
8051 fix a leak, should fix plugins-base testsuite
8053 2005-10-11 Andy Wingo <wingo@pobox.com>
8055 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
8056 take the mode we're going to as an arg. Go head and set the mode
8057 and flushing flags now, so that if the activate function starts a
8058 thread all the flags will be in the right state.
8059 (post_activate): Renamed also. Just handle making sure streaming
8060 finishes for the deactivation case, and setting the deactivated
8062 (gst_pad_set_active): Complain loudly if deactivation fails.
8063 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
8064 (gst_pad_activate_push): Adapt to pre/post_activate changes,
8065 remove the terrible hack.
8067 2005-10-11 Wim Taymans <wim@fluendo.com>
8069 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
8070 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
8071 (gst_bin_recalc_state), (gst_bin_change_state_func),
8072 (gst_bin_dispose), (bin_bus_handler):
8074 Prepare to make current EOS message queue more generic.
8077 * gst/gstevent.c: (gst_event_new_newsegment),
8078 (gst_event_parse_newsegment):
8080 Rename base to stream_time.
8085 2005-10-11 Wim Taymans <wim@fluendo.com>
8087 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
8088 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
8089 (gst_bin_change_state_func), (bin_bus_handler):
8091 Work on proper clock selection.
8093 2005-10-11 Edward Hervey <edward@fluendo.com>
8095 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
8096 * libs/gst/controller/gstcontroller.h:
8097 Added GList* version of _remove_properties() in order to be able to wrap
8100 2005-10-11 Wim Taymans <wim@fluendo.com>
8102 * docs/design/part-states.txt:
8105 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
8106 (gst_bin_change_state_func), (bin_bus_handler):
8107 Doc updates. Don't distribute the same clock over and over again.
8113 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
8114 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
8115 (gst_pad_send_event):
8117 Make probe emission threadsafe again.
8118 Register quarks and move _get_name() from utils.
8121 * gst/gstpipeline.c: (gst_pipeline_class_init),
8122 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
8123 Only redistribute the clock of it changed.
8125 * gst/gstsystemclock.h:
8130 Moved the _flow_get_name() to GstPad.
8132 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8134 * check/gst-libs/gdp.c: (GST_START_TEST):
8135 * check/gst/gstcaps.c: (GST_START_TEST):
8136 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8137 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
8138 (gst_dp_packet_from_caps):
8139 fix more valgrind warnings before turning up the heat
8141 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8143 * gst/parse/grammar.y:
8144 some cleanup before the hacking
8146 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
8148 * gst/base/gstbasesrc.c: (gst_base_src_query):
8150 * gst/gstutils.c: (gst_guint64_to_gdouble),
8151 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
8153 externalize, basesrc uses it
8154 obviously the implementation needs testing
8156 2005-10-10 Wim Taymans <wim@fluendo.com>
8158 * tests/sched/Makefile.am:
8159 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
8160 (make_pipeline3), (make_pipeline4), (print_elem), (main):
8162 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
8164 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
8165 apparently converting from guint64 to double is not implemented
8168 2005-10-10 Wim Taymans <wim@fluendo.com>
8170 * check/Makefile.am:
8171 * check/generic/states.c: (GST_START_TEST):
8172 * check/gst/gstbin.c: (GST_START_TEST):
8173 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
8174 * check/states/sinks.c: (GST_START_TEST):
8175 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
8177 Check fixes, use API as stated in design docs, remove hacks.
8179 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8180 (gst_base_sink_change_state):
8181 Catch stopping our task while we're shutting down.
8183 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
8184 (gst_bin_remove_func), (gst_bin_get_state_func),
8185 (gst_bin_recalc_state), (gst_bin_change_state_func),
8188 * gst/gstelement.c: (gst_element_init),
8189 (gst_element_get_state_func), (gst_element_abort_state),
8190 (gst_element_commit_state), (gst_element_lost_state),
8191 (gst_element_set_state), (gst_element_change_state),
8192 (gst_element_change_state_func):
8194 New state change algorithm (see #318116)
8196 * gst/gstpipeline.c: (gst_pipeline_class_init),
8197 (gst_pipeline_init), (gst_pipeline_set_property),
8198 (gst_pipeline_get_property), (do_pipeline_seek),
8199 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
8200 * gst/gstpipeline.h:
8201 Remove crude state change hacks.
8206 * tools/gst-launch.c: (main):
8207 Fixes for state change. Needs some more work to fully use the
8210 2005-10-10 Andy Wingo <wingo@pobox.com>
8212 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
8214 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
8215 this flag, but it's not even in GLib 2.6. Odd. Hack around the
8218 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
8220 * gst/gstiterator.c: (gst_iterator_new):
8221 Fix my previous commit: GTypes passed to gst_iterator_new()
8222 can be fundamental types.
8224 2005-10-10 Wim Taymans <wim@fluendo.com>
8226 * gst/gstelement.c: (gst_element_iterate_pad_list),
8227 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
8228 (gst_element_iterate_sink_pads):
8229 Use src/sink pads lists for the respective iterators instead
8232 2005-10-10 Andy Wingo <wingo@pobox.com>
8234 Merged in popt removal + GOption addition patch from Ronald, bug
8237 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
8238 GstElement macros around, remove popt-related symbols, add goption
8241 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
8243 * docs/gst/Makefile.am:
8244 * docs/libs/Makefile.am: No POPT_CFLAGS.
8246 * examples/manual/Makefile.am:
8247 * docs/manual/basics-init.xml: Doc updates with an example.
8249 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
8250 (gst_init), (parse_one_option), (parse_goption_arg):
8251 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
8252 bit of hand merging and debugging to get the GOption stuff working
8255 * tests/Makefile.am:
8256 * tools/Makefile.am:
8257 * tools/gst-inspect.c: (main):
8258 * tools/gst-launch.c: (main):
8259 * tools/gst-run.c: (main):
8260 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
8262 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
8264 * gst/gstiterator.c: (gst_iterator_new):
8265 Add assertions to make sure passed GType is likely to really
8266 be a GType (as the compiler won't catch it if the size and
8267 GType arguments get mixed up, see #318447).
8269 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
8271 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
8273 * gst/gstbin.c: (gst_bin_iterate_sorted):
8274 Pass GType and size arguments to gst_iterator_new() in the right
8275 order (maybe we should make _new() take the GType as first argument
8276 just like _new_list()?) (#318447).
8279 2005-10-10 Wim Taymans <wim@fluendo.com>
8281 * gst/gstelement.c: (gst_element_finalize):
8282 And free the GStaticRecMutex too
8284 2005-10-10 Andy Wingo <wingo@pobox.com>
8286 * gst/gstelement.c (gst_element_init, gst_element_finalize):
8287 Allocate and free the mutex properly.
8289 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
8291 (GstElement): The state_lock is now recursive. Rebuild your
8292 plugins, suckers. Old macros adapted.
8294 * docs/gst/gstreamer-sections.txt: Doc updates.
8297 * gst/gstutils.c (g_static_rec_cond_timed_wait)
8298 (g_static_rec_cond_wait): Ported from state changes patch, while
8299 we wait on bug #317802 to be solved in a well-distributed GLib.
8301 * gst/gstelement.c (gst_element_change_state_func): Renamed from
8302 gst_element_change_state, variable name changes.
8303 (gst_element_change_state): Split out of gst_element_set_state in
8304 preparation for the state change merge. Doesn't pay attention to
8305 the 'transition' argument.
8306 (gst_element_set_state): Updates, hopefully purely cosmetic.
8307 (gst_element_sync_state_with_parent): MT-safety. Ported from the
8309 (gst_element_get_state_func): Renamed from get_state, cosmetic
8312 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
8314 * gst/elements/gstelements.c:
8315 * win32/GStreamer.vcproj:
8317 * win32/dirent.c: (_tseekdir):
8318 * win32/gst-inspect.vcproj:
8319 * win32/gst-launch.vcproj:
8320 * win32/gstconfig.h:
8321 * win32/gstelements.vcproj:
8322 * win32/gstenumtypes.c: (gst_object_flags_get_type):
8323 * win32/gstreamer.def:
8325 updates for the win32 build (patch from Sebastien Moutte)
8327 2005-10-10 Andy Wingo <wingo@pobox.com>
8329 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
8330 gst_bin_get_state, cleaned up (but no logic changes).
8331 (bin_element_is_sink): Comment updates.
8332 (sink_iterator_filter): Remove needless cast.
8333 (gst_bin_iterate_sinks): Doc update.
8334 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
8335 cleaned up (but no logic changes).
8337 * check/states/sinks.c (test_src_sink): Cleanups from the state
8339 (test_livesrc_sink): Sync on the state.
8341 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
8342 the state change patch.
8344 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
8347 * check/gst/gstbin.c: Merge in some style fixes and additional
8348 checks from Wim's state change patch.
8350 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
8352 * gst/base/gsttypefindhelper.c: (helper_find_peek),
8353 (gst_type_find_helper):
8354 Check whether we have the requested data already in our list of
8355 cached buffers before pulling a new buffer; also make the buffer
8356 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
8358 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
8363 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8364 don't use long long, it's not portable. Replacing with
8365 gint64 seems to work; let's hope no skeletons fall out of the closet.
8367 2005-10-10 Andy Wingo <wingo@pobox.com>
8369 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
8371 2005-10-09 Stefan Kost <ensonic@users.sf.net>
8373 * docs/gst/gstreamer-sections.txt:
8378 * gst/gstmessage.c: (gst_message_parse_state_changed):
8381 more docs, fix compilation
8383 2005-10-09 Philippe Khalaf <burger@speedy.org>
8385 Fixed a few forgotten variables on previous commit
8387 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
8389 * gst/base/gsttypefindhelper.c: (helper_find_peek):
8390 Fix evil typefind crasher: getrange() might return a short
8391 buffer at the end of a file, but gst_type_find_peek() must
8392 either return the full data as requested or NULL, but
8393 never a short buffer.
8395 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
8397 * gst/gstmessage.c: (gst_message_new_state_changed),
8398 (gst_message_parse_state_changed):
8400 don't use "new", it's a C++ keyword
8402 2005-10-08 Wim Taymans <wim@fluendo.com>
8404 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
8405 * gst/gstelement.c: (gst_element_post_message):
8406 * gst/gstpipeline.c: (gst_pipeline_change_state):
8407 Small docs and debug updates.
8409 2005-10-08 Stefan Kost <ensonic@users.sf.net>
8411 * docs/gst/gstreamer-sections.txt:
8412 * gst/gstelementfactory.c:
8417 2005-10-08 Wim Taymans <wim@fluendo.com>
8419 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
8420 (gst_bin_dispose), (bin_bus_handler):
8421 Fix typos, add comments.
8422 Clear EOS list when going to PAUSED from any direction and do it
8423 in a threadsafe way.
8424 Get base time in a threadsafe way too.
8425 Fix confusing debug in the change_state function.
8426 Various other small cleanups.
8428 * gst/gstelement.c: (gst_element_post_message):
8429 Fix very verbose bus posting code.
8431 * gst/gstpipeline.c: (gst_pipeline_class_init),
8432 (gst_pipeline_set_property), (gst_pipeline_get_property),
8433 (gst_pipeline_change_state):
8434 Small ARG_ -> PROP_ cleanup
8436 2005-10-08 Wim Taymans <wim@fluendo.com>
8438 * gst/gstbin.c: (is_eos), (bin_bus_handler):
8439 Do a less CPU demanding EOS check because we can.
8441 2005-10-08 Wim Taymans <wim@fluendo.com>
8443 * libs/gst/dataprotocol/dataprotocol.c:
8444 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8445 (gst_dp_packet_from_event):
8446 * libs/gst/dataprotocol/dataprotocol.h:
8447 * libs/gst/dataprotocol/dp-private.h:
8448 It's about time we bump the version number.
8449 Since event types don't fit in the guint8 anymore describing
8450 the payload type, make payload type 16 bits wide.
8452 2005-10-08 Wim Taymans <wim@fluendo.com>
8454 * docs/design/part-TODO.txt:
8455 * docs/design/part-clocks.txt:
8456 * docs/design/part-events.txt:
8457 * docs/design/part-gstbin.txt:
8458 * docs/design/part-gstelement.txt:
8459 * docs/design/part-gstpipeline.txt:
8460 * docs/design/part-live-source.txt:
8461 * docs/design/part-messages.txt:
8462 * docs/design/part-overview.txt:
8463 * docs/design/part-states.txt:
8466 2005-10-08 Wim Taymans <wim@fluendo.com>
8470 Fix event quark registration.
8471 Add some space between events so we can insert them in the
8474 2005-10-08 Wim Taymans <wim@fluendo.com>
8476 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8477 (gst_base_sink_handle_buffer):
8484 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
8485 (gst_queue_set_property), (gst_queue_get_property):
8487 Remove old unused properties.
8489 2005-10-08 Stefan Kost <ensonic@users.sf.net>
8490 * docs/gst/gstreamer-sections.txt:
8493 * gst/gstminiobject.c:
8494 * gst/gstminiobject.h:
8498 lots of new docs and doc fixes
8500 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
8502 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
8504 * gst/gstregistry.c: (gst_registry_lookup_locked),
8505 (gst_registry_scan_path_level):
8506 * gst/gstregistryxml.c: (load_plugin):
8507 Only ever load one plugin for a given plugin basename.
8508 This ensures correct overriding of GST_PLUGIN_PATH over
8509 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
8510 system installed plugins.
8512 2005-10-08 Wim Taymans <wim@fluendo.com>
8514 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8515 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
8516 Prepare for doing QOS.
8518 2005-10-08 Wim Taymans <wim@fluendo.com>
8520 * check/gst/gstbin.c: (GST_START_TEST):
8521 * check/pipelines/cleanup.c: (GST_START_TEST):
8522 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
8523 Allow new clock message too.
8525 2005-10-08 Wim Taymans <wim@fluendo.com>
8527 * gst/gstmessage.c: (gst_message_new_error),
8528 (gst_message_new_warning), (gst_message_new_tag),
8529 (gst_message_new_state_changed), (gst_message_new_clock_provide),
8530 (gst_message_new_clock_lost), (gst_message_new_new_clock),
8531 (gst_message_new_segment_start), (gst_message_new_segment_done),
8532 (gst_message_parse_state_changed),
8533 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
8534 (gst_message_parse_new_clock):
8536 Also carry the clock in question.
8538 2005-10-08 Wim Taymans <wim@fluendo.com>
8540 * gst/gstmessage.c: (gst_message_new_custom),
8541 (gst_message_new_eos), (gst_message_new_error),
8542 (gst_message_new_warning), (gst_message_new_tag),
8543 (gst_message_new_state_changed), (gst_message_new_clock_provide),
8544 (gst_message_new_new_clock), (gst_message_new_segment_start),
8545 (gst_message_new_segment_done), (gst_message_parse_state_changed),
8546 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
8549 Added clock related messages.
8551 * gst/gstpipeline.c: (gst_pipeline_change_state):
8552 Post message when the clock changed.
8554 * tools/gst-launch.c: (event_loop):
8557 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
8559 * tools/gst-inspect.c: (print_element_properties_info):
8560 Can't pass NULL strings to g_print() on windows.
8562 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
8565 * docs/gst/Makefile.am:
8566 * docs/gst/gstreamer-docs.sgml:
8567 * docs/gst/running.xml:
8568 * docs/version.entities.in:
8569 add a chapter on running GStreamer.
8570 document GST_DEBUG and GST_PLUGIN* env vars
8572 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
8577 remove PLUGINS_BUILDDIR stuff
8578 * gst/gst.c: (init_post):
8579 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
8581 remove, it was condescending and not needed
8583 2005-10-08 Wim Taymans <wim@fluendo.com>
8585 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
8586 (gst_base_sink_handle_object), (gst_base_sink_event),
8587 (gst_base_sink_wait), (gst_base_sink_handle_event),
8588 (gst_base_sink_change_state):
8589 * gst/base/gstbasesink.h:
8590 Repost EOS message while going to PLAYING if still EOS.
8591 Make sure that when receiving a FLUSH_START we don't attempt
8592 to sync on the clock anymore.
8594 2005-10-08 Wim Taymans <wim@fluendo.com>
8596 * tools/gst-launch.c: (event_loop):
8597 Better message printout.
8599 2005-10-08 Wim Taymans <wim@fluendo.com>
8601 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
8602 (gst_bin_child_proxy_get_children_count):
8603 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
8604 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
8605 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
8606 (gst_child_proxy_set_valist):
8607 * gst/parse/grammar.y:
8608 Make ChildProxy threadsafe and fix mem leaks.
8610 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
8612 * gst/gst.c: (init_post):
8613 debug the GST_PLUGIN_ env vars
8615 2005-10-08 Wim Taymans <wim@fluendo.com>
8617 * check/gst/gstbin.c: (GST_START_TEST):
8618 * check/gst/gstmessage.c: (GST_START_TEST):
8619 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
8620 * gst/gstelement.c: (gst_element_commit_state),
8621 (gst_element_lost_state):
8622 * gst/gstmessage.c: (gst_message_new_state_changed),
8623 (gst_message_parse_state_changed):
8625 * tools/gst-launch.c: (event_loop):
8626 Added extra field to STATE_CHANGE message with the pending
8627 state, which will be different from the new state soon.
8629 2005-10-08 Wim Taymans <wim@fluendo.com>
8631 * gst/gstbus.c: (gst_bus_pop):
8633 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
8634 Small cleanups and doc updates.
8636 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
8638 * gst/gst.c: (init_pre):
8639 * gst/gstbin.c: (gst_bin_add_func):
8640 log distributing clocks and base time
8641 * gst/gstregistry.c: (gst_registry_add_plugin),
8642 (gst_registry_scan_path_level), (gst_registry_scan_path):
8643 clean up the debugging output a little
8644 * gst/gstutils.c: (gst_element_state_get_name):
8645 warn about a memleak (I've actually seen this be used, though
8646 it was probably a bug)
8648 2005-10-07 Wim Taymans <wim@fluendo.com>
8650 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
8651 (gst_base_src_init), (gst_base_src_default_newsegment),
8652 (gst_base_src_newsegment), (gst_base_src_do_seek),
8653 (gst_base_src_loop), (gst_base_src_start):
8654 * gst/base/gstbasesrc.h:
8655 Make the newsegment event customizable by subclasses.
8657 2005-10-07 Wim Taymans <wim@fluendo.com>
8659 * gst/gstevent.c: (gst_event_new_buffersize),
8660 (gst_event_parse_buffersize):
8662 New event for future idea.
8664 2005-10-07 Andy Wingo <wingo@pobox.com>
8666 * gst/gstelement.c (gst_element_post_message): Doc update.
8668 * docs/gst/gstreamer-sections.txt: Update.
8670 * gst/gstmessage.c (gst_message_new_application): Made into a
8671 function like honest API calls.
8672 (gst_message_new_element): New message type.
8674 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
8676 * check/elements/fakesrc.c (test_no_preroll): New check, checks
8677 that setting a live fakesrc to PAUSED returns NO_PREROLL both
8680 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
8681 NO_PREROLL from gst_element_change_state to fall through.
8683 2005-10-07 Wim Taymans <wim@fluendo.com>
8685 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
8686 (gst_ghost_pad_do_activate_push):
8687 Activating a ghostpad with no internal pad in push mode
8690 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
8693 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
8694 Fixes compilation on Windows.
8696 2005-10-07 Michael Smith <msmith@fluendo.com>
8698 * tools/gst-inspect.c:
8699 Print out feature and plugin count at the end when printing out
8702 2005-10-04 Michael Smith <msmith@fluendo.com>
8704 * gst/gsterror.c: (_gst_stream_errors_init):
8705 Add another error string used in a few existing plugins.
8708 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
8709 * tools/gst-inspect.c: (print_element_info):
8710 When a feature disappears from a plugin (and the feature exists in
8711 the cached registry file), things went horribly wrong. This isn't a
8712 complete fix, we should actually be removing the 'missing' features
8713 from the features list when we load the actual plugin. That's not
8716 2005-10-04 Johan Dahlin <johan@gnome.org>
8718 * check/gst/gstiterator.c: (GST_START_TEST):
8719 * gst/gstbin.c: (gst_bin_iterate_elements),
8720 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
8721 * gst/gstelement.c: (gst_element_iterate_pads):
8722 * gst/gstformat.c: (gst_format_iterate_definitions):
8723 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
8724 (gst_iterator_new_list), (gst_iterator_filter):
8725 * gst/gstiterator.h:
8726 * gst/gstquery.c: (gst_query_type_iterate_definitions):
8727 Add a GType to GstIterator, update callsites and tests.
8729 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
8731 * gst/gstpad.c: (gst_pad_event_default_dispatch):
8732 give events a chance to be handled by event probes when the pad
8735 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
8737 * gst/gstevent.c: (gst_event_type_get_name),
8738 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
8740 add string representations for event types
8742 2005-10-06 Wim Taymans <wim@fluendo.com>
8744 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
8745 Don't use NULL pointers.
8747 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
8749 * gst/gst_private.h:
8753 * gst/gstpluginfeature.c:
8754 widen the debug category in output to fit the biggest one we have
8755 add a bus category and use it
8756 play with the colors
8757 fix up some categories
8759 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
8761 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
8762 add push activation of sink ghost pads.
8763 Andye, please verify
8765 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
8767 * gst/gstutils.c: (gst_element_link_pads):
8768 fix a bug in the case where neither element has a pad
8769 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
8770 add a test for that case
8772 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
8774 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
8775 emit have-data before checking for peers. This allows
8776 for probe handlers to connect elements. This helps autopluggers.
8777 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
8779 add six checks, linked/unlinked with no/true/false probe
8781 2005-10-04 Wim Taymans <wim@fluendo.com>
8783 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
8784 (gst_fake_sink_event), (gst_fake_sink_preroll),
8785 (gst_fake_sink_render), (gst_fake_sink_change_state):
8786 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
8787 (gst_fake_src_get_property), (gst_fake_src_create),
8788 (gst_fake_src_stop):
8789 * gst/elements/gstidentity.c: (gst_identity_stop):
8790 Protect last_message with lock.
8792 2005-10-04 Edward Hervey <edward@fluendo.com>
8795 Added precision in the comments for GST_FORMAT_DEFAULT
8797 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
8799 * tools/gst-launch.c: (main):
8800 Don't try to run erroneous pipelines.
8802 2005-10-04 Julien MOUTTE <julien@moutte.net>
8804 * gst/gstbus.c: We don't need this header.
8806 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
8811 === release 0.9.3 ===
8813 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
8817 Releasing 0.9.3, "Unregistered"
8819 2005-10-03 Andy Wingo <wingo@pobox.com>
8821 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
8822 whereby calling a pad's activatepush() function can start a thread
8823 that starts to push or pull before the pad gets the FLUSHING flag
8824 unset. Hack around it by holding the stream lock until the flag is
8825 set. Need to replace this with a proper solution. Together with
8826 the ghost pad fixes, this fixes mp3 playing/tagreading.
8828 * docs/design/part-gstghostpad.txt: Add a note about activation of
8829 proxy pads outside of ghost pads.
8831 * gst/gstghostpad.c: Implement the ghost pad activation design.
8833 2005-10-02 Andy Wingo <wingo@pobox.com>
8835 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
8836 It is volatile, after all.
8838 * docs/design/part-gstghostpad.txt: Flesh out activation with
8841 * gst/base/gstbasesrc.c (gst_base_src_init): Use
8844 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
8847 Fix (unused) AM_CONDITIONAL tests.
8849 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
8851 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
8853 * gst/gstutils.c: (gst_pad_query_convert):
8854 Add assertion that makes sure src_val is >=0, just like
8855 gst_query_new_convert() has. (#315895)
8857 2005-09-30 Edward Hervey <edward@fluendo.com>
8859 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
8860 Let's not iterate pads we're not interested in, it avoids getting
8861 sky-high refcounts on sinkpad.
8863 2005-09-30 Wim Taymans <wim@fluendo.com>
8865 * gst/gstelement.c: (gst_element_set_state),
8866 (gst_element_change_state):
8867 Small tweak, element in ASYNC remains ASYNC.
8869 2005-09-30 Wim Taymans <wim@fluendo.com>
8871 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
8872 Only error is an error.
8874 * gst/gstbin.c: (gst_bin_change_state):
8877 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
8878 Also call pad_block in pad alloc.
8880 * gst/gstutils.c: (gst_flow_get_name):
8883 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
8885 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
8886 (gst_base_src_get_range):
8887 Fix documentation typos. Add some more debug info.
8889 2005-09-29 David Schleef <ds@schleef.org>
8891 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
8892 more end-user friendly.
8893 * tools/gst-inspect.c: (main): Check if command-line argument is
8894 a file and attempt to load that file as a plugin.
8896 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
8898 * check/gst/gstbin.c:
8899 * check/states/sinks.c:
8900 fix tests for the new warning
8901 * check/gst/gstpipeline.c:
8902 add a test for pipeline and bus interaction
8904 elements should be NULL if they get disposed; add a warning if not
8906 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
8909 for 2.6 refcounting, make debug log more correct by printing
8910 the actual refcounts at the time of swap (Wim)
8912 2005-09-29 Andy Wingo <wingo@pobox.com>
8914 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
8915 removes signal watches previously added via
8916 gst_bus_add_signal_watch.
8917 (gst_bus_add_signal_watch): Don't return the source id, just store
8918 it on the bus if there wasn't an id already.
8920 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
8921 add_signal_watch and remove_signal_watch.
8923 2005-09-29 Edward Hervey <edward@fluendo.com>
8925 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
8926 Better if we actually iterate the list :)
8928 2005-09-29 Wim Taymans <wim@fluendo.com>
8930 * check/gst/gstbin.c: (GST_START_TEST):
8931 Change for new bus API.
8933 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
8934 (send_messages), (GST_START_TEST), (gstbus_suite):
8935 Change for new bus signal API.
8937 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
8938 (gst_bus_source_prepare), (gst_bus_source_check),
8939 (gst_bus_create_watch), (gst_bus_add_watch_full),
8940 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
8941 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
8943 Remove support for multiple GSources operating on different
8944 message types as it is too complex and unneeded when using
8946 Added support for receiving signals from the bus.
8948 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
8950 * docs/libs/tmpl/gstdataprotocol.sgml:
8951 * docs/manual/advanced-dataaccess.xml:
8952 * gst/elements/gstcapsfilter.c:
8954 rename filter-caps to caps property
8956 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
8958 * gst/gstvalue.c: (gst_value_deserialize_fraction):
8959 More robust fraction string parsing.
8961 * docs/pwg/appendix-porting.xml:
8962 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
8964 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
8966 * gst/gstcaps.c: (gst_caps_do_simplify):
8967 Thou shalt not free a structure and then continue using it
8968 in the next loop iteration.
8970 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
8972 Add test case for caps simplification.
8974 2005-09-29 Wim Taymans <wim@fluendo.com>
8976 * check/gst/gstbin.c: (GST_START_TEST):
8979 2005-09-29 Wim Taymans <wim@fluendo.com>
8981 * check/gst/gstbin.c: (GST_START_TEST):
8984 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
8985 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
8986 (find_element), (gst_bin_sort_iterator_next),
8987 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
8988 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
8989 (gst_bin_change_state), (gst_bin_dispose):
8990 A bin does not have a bus, it gets the bus from the parent.
8992 * gst/gstelement.c: (gst_element_requires_clock),
8993 (gst_element_provides_clock), (gst_element_is_indexable),
8994 (gst_element_is_locked_state), (gst_element_change_state),
8995 (gst_element_set_bus_func):
8998 * gst/gstpipeline.c: (gst_pipeline_class_init),
8999 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
9000 The pipeline provides a bus.
9002 2005-09-28 Johan Dahlin <johan@gnome.org>
9004 * gst/gstmessage.c (gst_message_parse_state_changed): Use
9005 gst_structure_get_enum instead of gst_structure_get_int
9007 * gst/gststructure.c (gst_structure_get_enum): Impl.
9009 * gst/gststructure.h (gst_structure_get_enum): Add
9011 * docs/gst/gstreamer-sections.txt: Ditto
9013 * gst/gstmessage.c (gst_message_new_state_changed): Use
9014 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
9015 which does introspection.
9016 Reviewed by Christian Schaller
9018 2005-09-28 Stefan Kost <ensonic@users.sf.net>
9020 * gst/gstinfo.c: (gst_debug_log_default):
9021 don't do dummy g_strdup()s
9022 * libs/gst/controller/gstcontroller.c:
9023 (on_object_controlled_property_changed),
9024 (gst_controlled_property_new), (gst_controller_new_valist),
9025 (gst_controller_new_list),
9026 (gst_controller_remove_properties_valist), (gst_controller_set),
9027 (gst_controller_get), (gst_controller_sync_values),
9028 (gst_controller_get_value_array), (_gst_controller_class_init),
9029 (gst_controller_get_type):
9030 * libs/gst/controller/gstcontroller.h:
9031 * libs/gst/controller/gstinterpolation.c:
9032 (gst_controlled_property_find_timed_value_node):
9033 convert // to /**/ comments
9035 2005-09-28 Wim Taymans <wim@fluendo.com>
9037 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
9038 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
9039 (gst_bus_sync_signal_handler):
9041 Added async-message and sync-message signals to the bus.
9042 Added helper BusFunc to emit signals for all posted messages.
9044 * gst/gstmessage.c: (gst_message_type_get_name),
9045 (gst_message_type_to_quark), (gst_message_get_type):
9047 Register quarks for message names.
9049 2005-09-28 Stefan Kost <ensonic@users.sf.net>
9051 * docs/libs/gstreamer-libs-sections.txt:
9052 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
9053 (gst_controller_new_list):
9054 * libs/gst/controller/gstcontroller.h:
9055 added another constructor for language bindings
9057 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
9059 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
9063 * gst/gstinfo.c: (_gst_debug_init):
9064 slightly more readable color for refcount debugging
9066 2005-09-28 Wim Taymans <wim@fluendo.com>
9068 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
9069 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
9070 (find_element), (gst_bin_sort_iterator_next),
9071 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9072 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9073 (gst_bin_change_state), (gst_bin_dispose):
9074 Small doc fixes. get_clock -> provide_clock.
9076 * gst/gstelement.c: (gst_element_class_init),
9077 (gst_element_provides_clock), (gst_element_provide_clock),
9078 (gst_element_get_clock), (gst_element_commit_state),
9079 (gst_element_lost_state):
9081 Make get/set_clock() symetric. Add provide_clock vmethod since
9082 that is actually what this function does.
9084 * gst/gstpipeline.c: (gst_pipeline_class_init),
9085 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
9086 (gst_pipeline_get_clock):
9087 get_clock -> provide_clock.
9089 2005-09-28 Andy Wingo <wingo@pobox.com>
9091 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
9092 lieu of real docs...
9094 * gst/elements/gstfdsrc.c: Cleaned up a bit.
9096 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
9098 * gst/elements/gstcapsfilter.c:
9099 * gst/elements/gstfakesink.c:
9100 * gst/elements/gstfakesrc.c:
9101 * gst/elements/gstfdsink.c:
9102 * gst/elements/gstfdsrc.c:
9103 * gst/elements/gstfilesink.c:
9104 * gst/elements/gstfilesrc.c:
9105 * gst/elements/gstidentity.c:
9106 * gst/elements/gsttee.c:
9107 * gst/elements/gsttypefindelement.c:
9108 Make element details static.
9110 2005-09-28 Wim Taymans <wim@fluendo.com>
9112 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
9113 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
9114 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9115 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9116 (gst_bin_change_state), (gst_bin_dispose):
9117 Some documentation updates.
9118 Clean up dispose handlers.
9120 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
9121 * gst/gstpad.c: (gst_pad_dispose):
9122 Clean up dispose handler.
9124 * gst/gstpipeline.c: (gst_pipeline_change_state):
9125 Removed spurious UNLOCK.
9127 2005-09-27 Stefan Kost <ensonic@users.sf.net>
9129 * docs/gst/gstreamer-sections.txt:
9130 * gst/base/gstbasesrc.h:
9135 * gst/gstpipeline.c:
9136 * gst/gstpipeline.h:
9139 added two new functions to the docs
9140 documents all undocumented GstXXXFlags
9141 completed some incomplete docs
9143 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
9145 * gst/gstbin.c: (gst_bin_dispose):
9146 * gst/gstelement.c: (gst_element_dispose):
9147 remove now useless and leaky resurrection code in dispose
9148 * gst/base/gstbasesrc.c: (gst_base_src_init):
9149 * gst/gstelementfactory.c: (gst_element_factory_create):
9150 * gst/gstobject.c: (gst_object_set_parent):
9153 2005-09-27 Wim Taymans <wim@fluendo.com>
9155 * docs/design/part-TODO.txt:
9158 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
9159 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
9160 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9161 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9162 (gst_bin_change_state):
9164 Remove element variable, we keep element info in the iterator now.
9166 2005-09-27 Andy Wingo <wingo@pobox.com>
9168 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
9171 2005-09-27 Wim Taymans <wim@fluendo.com>
9173 * check/gst/gstbin.c: (GST_START_TEST):
9174 Enable check that works now.
9176 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
9177 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
9178 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9179 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9180 (gst_bin_change_state):
9182 Redid the state change algorithm using a topological sort algo.
9183 Handles all cases correctly.
9184 Exposed iterator for state change order.
9187 Temp storage for state changes. Need to get rid of this soon.
9189 2005-09-27 Wim Taymans <wim@fluendo.com>
9191 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
9192 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
9193 (link_fold_func), (gst_pad_proxy_setcaps):
9194 Leak fixes, the fold functions need to unref the passed object and
9195 _get_parent_*() returns ref to parent.
9197 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
9199 * check/gst/gstbuffer.c: (test_make_writable):
9200 Plug leak in test case and fix 'make check-valgrind'
9202 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
9204 * gst/gstbuffer.c: (gst_subbuffer_init):
9205 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
9206 works correctly in all circumstances (we could have just copied
9207 the parent buffer's readonly flag, but conceptually it seems
9208 cleaner to mark all subbuffers as read-only). (based on patch
9209 by Alessandro Decina, #314710).
9211 * check/gst/gstbuffer.c: (create_read_only_buffer),
9212 (test_make_writable), (test_subbuffer_make_writable),
9214 Add some tests for gst_buffer_make_writable().
9216 2005-09-27 Wim Taymans <wim@fluendo.com>
9218 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
9219 use gst_object_has_ancestor().
9221 * gst/gstobject.c: (gst_object_has_ancestor):
9223 gst_object_has_ancestor() copied from gstbin.c as it is a
9226 * tests/instantiate/create.c: (create_all_elements):
9227 * tests/lat.c: (handoff_src), (handoff_sink):
9228 * tests/sched/runxml.c: (main):
9229 * tests/seeking/seeking1.c: (main):
9230 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
9232 Fix compilation of some tests.
9234 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
9237 Remove comment. GST_TYPE_G_ERROR is here to stay,
9238 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
9241 2005-09-26 Wim Taymans <wim@fluendo.com>
9243 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
9244 Added check that shows error in state change order.
9246 2005-09-26 Wim Taymans <wim@fluendo.com>
9248 * gst/gstbin.c: (gst_bin_change_state):
9249 Make state change function use 3 queues again, we were
9250 adding elements in the wrong order.
9252 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
9255 * gst/gstpad.c: (gst_pad_dispose):
9256 Added some debug info first.
9258 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
9260 * docs/design/draft-push-pull.txt:
9261 * docs/design/part-events.txt:
9262 * docs/design/part-overview.txt:
9263 * docs/design/part-scheduling.txt:
9264 Replace all _pull_region() with _pull_range()
9266 2005-09-26 Andy Wingo <wingo@pobox.com>
9268 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
9270 * check/gst-libs/controller.c: Update for controller api change.
9273 * tests/Makefile.am:
9274 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
9275 over by GLib bug 118439.
9277 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
9278 routines to a function.
9280 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
9282 * libs/gst/controller/gsthelper.c:
9283 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
9284 (gst_object_sync_values): Renamed from sink_values. Ugh.
9286 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
9288 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
9289 Renamed from controller_key, as it is exported.
9291 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
9293 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
9298 * gst/gstpadtemplate.h:
9301 * gst/gstqueryutils.c:
9302 * gst/gstqueryutils.h:
9303 remove queryutils headers after moving the two used functions
9304 to gstquery. also fixes build problem for gstsiddec
9306 2005-09-26 Michael Smith <msmith@fluendo.com>
9308 * tools/gst-launch.1.in:
9309 Correct documentation in manpage of debug syntax
9311 2005-09-26 Wim Taymans <wim@fluendo.com>
9313 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
9314 (gst_base_src_is_seekable), (gst_base_src_change_state):
9315 Some more debugging info.
9317 2005-09-25 Stefan Kost <ensonic@users.sf.net>
9319 * docs/gst/gstreamer-sections.txt:
9320 * gst/base/gstbasetransform.h:
9324 2005-09-25 Stefan Kost <ensonic@users.sf.net>
9326 * docs/gst/.cvsignore:
9327 * docs/gst/tmpl/.cvsignore:
9328 * docs/gst/tmpl/gstpipeline.sgml:
9329 * docs/gst/tmpl/gstplugin.sgml:
9330 * gst/gstpipeline.c:
9333 inlined the last two docs files
9334 removed the tmpl directory from cvs (no more conflicts here!)
9336 2005-09-25 Stefan Kost <ensonic@users.sf.net>
9338 * docs/gst/gstreamer-sections.txt:
9339 * docs/gst/tmpl/.cvsignore:
9340 * docs/gst/tmpl/gstpad.sgml:
9341 * docs/gst/tmpl/gstpadtemplate.sgml:
9343 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
9344 (gst_pad_finalize), (gst_pad_set_pad_template):
9346 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
9347 (gst_pad_template_class_init), (gst_pad_template_init),
9348 (gst_pad_template_dispose), (name_is_valid),
9349 (gst_static_pad_template_get), (gst_pad_template_new),
9350 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
9351 (gst_pad_template_pad_created):
9352 * gst/gstpadtemplate.h:
9353 inlined two more docs
9354 factored gstpadtemplate out of gstpad
9356 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
9358 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
9359 (test_children_state_change_order_semi_sink):
9360 Fix test case: we can't rely on a fixed state change order when
9361 going from READY => PAUSED because the sink might commit its
9362 new state first when the first buffer created by the source
9363 reaches the sink before the source has finished its change state.
9364 (Test case still fails at times, see #316856, comment 5 onwards)
9366 2005-09-24 Wim Taymans <wim@fluendo.com>
9368 * docs/design/part-events.txt:
9369 * docs/design/part-gstbus.txt:
9370 * docs/design/part-gstpipeline.txt:
9371 * docs/design/part-messages.txt:
9372 * docs/design/part-overview.txt:
9373 * docs/design/part-segments.txt:
9380 * gst/gstiterator.c:
9381 Various documentation updates.
9383 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
9386 Well, that's embarassing. Luckily we weren't using
9387 GST_CLOCK_DIFF anywhere.
9389 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
9391 * common/gtk-doc.mak:
9392 don't fail on building XML, FC4 slave shows a bunch of doc
9393 missing bits that I don't get
9395 * gst/gstpipeline.c:
9396 * gst/gststructure.c:
9399 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
9401 * docs/design/part-gstbin.txt:
9402 * docs/design/part-gstbus.txt:
9404 Add blurb about how the bus goes into flushing mode and
9405 drops all messages when its bin goes from READY into NULL
9408 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
9410 * docs/gst/gstreamer-sections.txt:
9411 * gst/gststructure.c: (gst_structure_get_clock_time):
9412 * gst/gststructure.h:
9413 add a method to get a GstClockTime out of a structure
9415 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
9417 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
9418 (test_children_state_change_order_semi_sink), (gst_bin_suite):
9419 Added test to check state change order in bins (can still be made
9420 to fail here under heavy disk load; bails out with 'Push on pad
9421 fakesink:sink0, but it was not activated in push mode').
9423 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
9424 Fix state change order when there is only a semi sink (#316856)
9426 * gst/gstbus.c: (gst_bus_class_init):
9427 Use _class_peek_parent(), not _class_ref(); fix docs to say
9428 'default main context' instead of 'mainloop' where that is
9431 * gst/gstelement.c: (gst_element_commit_state),
9432 (gst_element_set_state):
9433 Fix typos in debug messages
9435 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
9438 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
9439 * gst/gstpluginfeature.c:
9442 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9443 change an assert into an error until it gets fixed properly
9445 2005-09-23 Stefan Kost <ensonic@users.sf.net>
9447 * docs/gst/gstreamer-sections.txt:
9448 * docs/gst/tmpl/.cvsignore:
9449 * docs/gst/tmpl/gstelement.sgml:
9450 * docs/gst/tmpl/gstinfo.sgml:
9451 * docs/gst/tmpl/gstobject.sgml:
9456 * gst/gstobject.c: (gst_object_class_init):
9458 inlined 3 more biiiig doc files and added some missing docs on the fly
9460 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
9462 * check/gst/.cvsignore:
9463 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
9464 * gst/gstregistryxml.c: (load_plugin),
9465 (gst_registry_xml_save_plugin):
9466 put back source in registry. add checks for find_plugin.
9467 * testsuite/states/bin.c: (assert_state), (empty_bin),
9468 (test_adding_one_element), (main):
9469 * testsuite/states/locked.c: (main):
9470 some compile/run fixes
9472 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
9474 * check/gst/gstvalue.c: (GST_START_TEST):
9475 fix leaks in the test itself
9477 2005-09-22 Wim Taymans <wim@fluendo.com>
9479 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
9480 (gst_base_sink_send_event), (gst_base_sink_peer_query),
9481 (gst_base_sink_query):
9482 Prepare for more accurate position reporting and query
9485 * gst/gstelement.c: (gst_element_send_event),
9486 (gst_element_set_state):
9489 2005-09-22 Wim Taymans <wim@fluendo.com>
9491 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
9492 (gst_query_parse_segment):
9495 Add segment query for future use.
9497 2005-09-22 Wim Taymans <wim@fluendo.com>
9499 * gst/gstbin.c: (gst_bin_add_func):
9500 Some more debug info.
9502 * gst/gstelement.c: (gst_element_send_event):
9506 Don't know how flags got broken.
9511 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
9513 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
9514 Add simplistic test suite for GST_TYPE_DATE serialisation and
9517 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
9519 * docs/gst/gstreamer-sections.txt:
9520 * gst/gststructure.c: (gst_structure_set_valist),
9521 (gst_structure_get_date):
9522 * gst/gststructure.h:
9523 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
9524 (gst_date_copy), (gst_value_compare_date),
9525 (gst_value_serialize_date), (gst_value_deserialize_date),
9526 (gst_value_transform_date_string),
9527 (gst_value_transform_string_date), (_gst_value_initialize):
9529 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
9530 bunch of utility functions along with a hack that checks that
9531 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
9532 is required. Part of the grand scheme in #170777.
9534 2005-09-22 Andy Wingo <wingo@pobox.com>
9536 * gst/gstconfig.h.in: Psych out gtk-doc.
9538 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
9540 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
9542 * tools/gst-inspect.c (print_element_list): Plug some
9543 inconsequential leaks.
9545 * gst/gstregistry.c (gst_registry_get_default): Doc.
9547 * check/gst/gstplugin.c:
9548 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
9549 * gst/gstelementfactory.c (gst_element_factory_create):
9550 * gst/gstindexfactory.c (gst_index_factory_create): Update for
9553 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
9554 (gst_plugin_feature_load): Doc, don't eat refs.
9556 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
9557 (gst_plugin_list_free): Doc.
9558 (gst_plugin_load_file): Doc updates.
9560 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
9561 accessors returning refcounted objects, return a ref.
9563 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
9564 accessor for caps. IDEMPOTENCE. Oh yes.
9566 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
9568 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
9570 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
9571 (_gst_debug_register_funcptr):
9572 Add mutex to serialise access to the hash table with
9573 the function pointer => function name string mapping;
9574 make that hash table static scope (#316809).
9576 * gst/registries/.cvsignore:
9577 Remove left-over file.
9579 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
9581 * docs/pwg/appendix-porting.xml:
9582 And something about newsegment events and caps-on-buffers to
9583 the porting guide (feel free to improve).
9585 2005-09-21 Andy Wingo <wingo@pobox.com>
9587 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
9588 data and event probes on the same pad.
9589 (test_buffer_probe_once): Test that removing probes from within
9590 the probe functions works.
9592 2005-09-21 Andy Wingo <wingo@pobox.com>
9594 * check/gst/gstutils.c: New file.
9595 (test_buffer_probe_n_times): A simple buffer probe test. More to
9598 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
9599 have-data::buffer, not have-data.
9600 (gst_pad_add_event_probe): Likewise for have-data::event.
9601 (gst_pad_add_data_probe): More docs. The part about 'resolving the
9602 peer' isn't quite right yet though.
9603 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
9604 (gst_pad_remove_data_probe): Change to take the guint handler_id
9605 as their arg, not the function+data, which is more glib-like.
9607 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
9608 the signal emission to indicate if the data is a buffer or an
9610 (gst_pad_get_type): Initialize buffer and event quarks.
9611 (gst_pad_class_init): have-data is now a detailed signal, yes it
9614 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
9616 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
9617 * gst/gstutils.c: (gst_util_set_value_from_string),
9618 (gst_util_set_object_arg):
9619 Don't put functional code in g_return_if_fail() or
9620 g_return_val_if_fail() statements, otherwise things will
9621 break when G_DISABLE_CHECKS is defined during compilation.
9623 2005-09-21 Stefan Kost <ensonic@users.sf.net>
9625 * docs/gst/tmpl/.cvsignore:
9626 * docs/gst/tmpl/gstvalue.sgml:
9629 inlied another one and added some obvious docs
9631 2005-09-21 Wim Taymans <wim@fluendo.com>
9633 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9634 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
9635 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
9636 (gst_fdsrc_get_property), (gst_fdsrc_create):
9637 * gst/elements/gstfdsrc.h:
9638 Properly implement fdsrc. Removed signal and timeout,
9639 better implemented somewhere else.
9641 2005-09-21 Stefan Kost <ensonic@users.sf.net>
9643 * docs/gst/tmpl/.cvsignore:
9644 * docs/gst/tmpl/gstimplementsinterface.sgml:
9645 * gst/gstinterface.c:
9648 2005-09-21 Stefan Kost <ensonic@users.sf.net>
9650 * docs/gst/gstreamer-sections.txt:
9651 * docs/gst/tmpl/.cvsignore:
9652 * docs/gst/tmpl/gstenumtypes.sgml:
9653 remove obsolete doc file
9655 2005-09-21 David Schleef <ds@schleef.org>
9657 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
9658 little beer, fix a little leak.
9660 2005-09-21 Stefan Kost <ensonic@users.sf.net>
9662 * docs/gst/gstreamer-docs.sgml:
9663 * docs/gst/gstreamer-sections.txt:
9664 * docs/gst/tmpl/.cvsignore:
9669 * gst/gstindex.c: (gst_index_class_init):
9671 * gst/gstindexfactory.c: (gst_index_factory_get_type),
9672 (gst_index_factory_class_init), (gst_index_factory_init),
9673 (gst_index_factory_finalize), (gst_index_factory_new),
9674 (gst_index_factory_destroy), (gst_index_factory_find),
9675 (gst_index_factory_create), (gst_index_factory_make):
9676 * gst/gstindexfactory.h:
9677 * gst/gstpluginfeature.c:
9678 * gst/gstpluginfeature.h:
9679 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
9680 more docs inlined, splitted gstindex.{c,h}
9682 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
9684 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
9687 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
9689 * gst/elements/gstfilesink.c: (gst_file_sink_init):
9690 Set sync to FALSE by default.
9692 2005-09-20 Wim Taymans <wim@fluendo.com>
9694 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
9695 (gst_base_sink_init):
9696 Make sync property settable from subclass.
9698 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
9699 (gst_fake_sink_change_state):
9700 Set sync to FALSE by default.
9702 2005-09-20 Wim Taymans <wim@fluendo.com>
9704 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
9705 * tools/gst-launch.c: (main):
9706 The timeout handler should have lower priority than the source
9707 so we don't timeout before popping a message with 0 timeout.
9708 Dump error messages after failed state change.
9710 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
9712 * tools/gst-inspect.c: (print_element_properties_info):
9715 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
9717 * check/gst/gstevent.c:
9718 * gst/elements/gstfakesink.c:
9719 * gst/elements/gstfakesink.h:
9720 remove the sync property from fakesink.
9721 has the side effect of setting sync TRUE
9722 for fakesink, which is a change. Anyone who knows how
9723 to fix this nicely in a GObject-y way, feel free.
9725 2005-09-20 Stefan Kost <ensonic@users.sf.net>
9727 * docs/gst/gstreamer-docs.sgml:
9728 remove probe refsection
9730 2005-09-20 Stefan Kost <ensonic@users.sf.net>
9732 * check/Makefile.am:
9733 disable valgrinding the controller test again
9734 * docs/gst/gstreamer-sections.txt:
9735 update for api-changes
9737 2005-09-20 Wim Taymans <wim@fluendo.com>
9739 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
9740 (gst_base_sink_set_property), (gst_base_sink_get_property),
9741 (gst_base_sink_do_sync):
9742 * gst/base/gstbasesink.h:
9743 Added sync property to basesink to disable clock sync.
9745 2005-09-20 Andy Wingo <wingo@pobox.com>
9747 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
9748 eating the caller's refcount.
9750 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
9751 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
9754 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
9755 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
9756 of GLib 2.8 public, so we can know which refcount to check in
9759 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
9760 (gst_object_init): Only set the gst refcount if we're going ahead
9761 with the refcount hack.
9763 2005-09-20 Stefan Kost <ensonic@users.sf.net>
9765 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
9766 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
9767 more leaks plumbed, added more debug-logging
9771 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
9774 remove include of gstmemchunk.h
9776 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
9778 * gst/gstclock.c: (_gst_clock_id_free):
9779 Commit from the Political Party For More Atomic CVS Commits,
9780 so that people don't waste too much of their day fishing
9781 out obvious leaks out of massive commits.
9782 Oh, and fix a pretty damn obvious leak in the memchunk
9785 2005-09-20 Stefan Kost <ensonic@users.sf.net>
9787 * check/Makefile.am:
9788 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
9789 plug mem-leak, re-add to valgrindable tests
9791 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
9794 unbreak the build for those who have chronic arthritis
9795 and typing "make check" is just too taxing on the hands
9797 2005-09-20 Andy Wingo <wingo@pobox.com>
9799 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
9800 really want it out, you should fix plugins at the same time.
9802 2005-09-19 Stefan Kost <ensonic@users.sf.net>
9805 * docs/gst/gstreamer-sections.txt:
9807 added missing symbols to api docs
9808 disable ref-count hack if we have glib >= 2.8
9810 2005-09-19 David Schleef <ds@schleef.org>
9812 * docs/gst/Makefile.am: Ignore a few more internal headers
9813 * docs/gst/gstreamer-docs.sgml: Remove old sections
9814 * docs/gst/gstreamer-sections.txt: Remove old sections
9815 * docs/gst/tmpl/gstobject.sgml: update
9816 * docs/gst/tmpl/gstplugin.sgml: update
9817 * docs/gst/tmpl/gstpluginfeature.sgml: update
9818 * docs/random/ds/0.9-suggested-changes: update.
9819 * gst/Makefile.am: remove memchunk and trashstack, since they're
9821 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
9822 * gst/gst.h: don't include some headers
9823 * gst/gstchildproxy.c: add gstmarshal.h
9824 * gst/gstclock.c: Don't use memchunks
9825 * gst/gstminiobject.c: Add some docs
9826 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
9827 * gst/gstobject.h: same
9828 * gst/gstplugin.c: include gstmacros.h
9829 * gst/gstplugin.h: don't include gstmacros.h, since it's private
9830 * gst/gstquery.c: don't use memchunks
9831 * gst/gstregistry.c: rename gst_registry_deinit()
9832 * gst/gstregistry.h: same
9834 2005-09-19 David Schleef <ds@schleef.org>
9836 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
9837 * docs/libs/gstreamer-libs-sections.txt:
9838 * docs/libs/tmpl/gstgetbits.sgml:
9839 * docs/libs/tmpl/gstputbits.sgml:
9841 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
9843 * win32/gstenumtypes.c:
9844 * win32/gstenumtypes.h:
9847 2005-09-19 Wim Taymans <wim@fluendo.com>
9849 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
9850 Automatically PAUSE and RESUME a pipeline when a flushing seek
9853 2005-09-19 Andy Wingo <wingo@pobox.com>
9855 * gst/gstregistry.h: Spacing fixen.
9857 2005-09-19 Wim Taymans <wim@fluendo.com>
9859 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
9860 Handle state change failure more correctly.
9862 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
9864 * check/Makefile.am:
9865 * check/pipelines/cleanup.c: (run_pipeline):
9866 * check/pipelines/simple_launch_lines.c: (run_pipeline),
9868 enable cleanup again after fixing the leak
9870 some more info on docs
9872 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
9874 * check/Makefile.am:
9875 re-enable tests now that leaks are plugged
9877 * check/gst/gstbin.c:
9878 * check/gst/gstpipeline.c:
9879 add some more tests while fixing leaks
9881 make sure binaries are uptodate when valgrinding/gdbing
9883 * gst/gstelementfactory.c:
9884 remove a ref too many, and add a FIXME for when we get
9885 round to disposing of classes
9887 fix the refcounting when loading a plugin from a file and
9888 the code pretends that the pointer is the same even though
9889 of course it can change
9890 * gst/gstpluginfeature.c:
9891 unref plugins marked cached (a bit confusing as a name)
9892 as the docs state should be done
9893 various doc additions to explain refcounting
9894 * gst/gstregistry.c:
9895 * gst/gstregistryxml.c:
9898 2005-09-19 Wim Taymans <wim@fluendo.com>
9900 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
9901 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
9902 (send_messages), (GST_START_TEST), (gstbus_suite):
9903 * check/gst/gstpipeline.c: (GST_START_TEST):
9904 * check/pipelines/cleanup.c: (run_pipeline):
9905 * check/pipelines/simple_launch_lines.c: (run_pipeline),
9907 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
9908 (gst_bus_source_check), (gst_bus_source_dispatch),
9909 (gst_bus_create_watch), (gst_bus_add_watch_full),
9910 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
9912 * tools/gst-launch.c: (event_loop):
9913 * tools/gst-md5sum.c: (event_loop):
9914 GstBusHandler -> GstBusFunc, return value has the same meaning as
9915 any other GSource (FALSE == remove source).
9916 _add_watch() and _add_watch_full() now take a MessageType mask to
9917 only handle specific types of messages.
9918 _poll() returns the GstMessage instead of the message type to avoid
9920 _have_pending() takes a MessageType mask now too.
9921 Added testsuite for multiple bus watches.
9922 Fix testsuites and applications for new bus API.
9924 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
9926 * check/Makefile.am:
9927 mark a bunch of the tests as to fix until we fix them
9929 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
9932 use GST_PLUGIN settings for valgrind tests as well, so we're
9933 valgrinding the correct thing
9934 * gst/gst.c: (init_post):
9937 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
9939 * gst/gst.c: (init_post), (gst_deinit):
9940 * gst/gstelementfactory.c: (gst_element_factory_class_init),
9941 (gst_element_factory_finalize), (gst_element_factory_cleanup):
9942 * gst/gstindex.c: (gst_index_factory_class_init),
9943 (gst_index_factory_finalize):
9944 * gst/gstobject.c: (gst_object_dispose):
9945 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
9946 (gst_plugin_load_file), (gst_plugin_desc_free):
9947 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
9948 (gst_plugin_feature_finalize):
9949 * gst/gstregistry.c: (gst_registry_class_init),
9950 (gst_registry_init), (gst_registry_finalize),
9951 (gst_registry_get_default), (gst_registry_deinit):
9952 * gst/gstregistry.h:
9953 * gst/gstregistryxml.c: (load_feature), (load_plugin):
9954 various cleanups and memleak plugging. make valgrind is happy now.
9956 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
9959 add a check-valgrind target
9961 2005-09-18 David Schleef <ds@schleef.org>
9963 * tools/gst-inspect.c: Revert the GOption code.
9965 2005-09-17 David Schleef <ds@schleef.org>
9967 * check/Makefile.am: Fix environment variables.
9968 * check/gst/gstplugin.c: Fix for API changes.
9969 * tools/gst-inspect.c: Fix for API changes.
9970 * tools/gst-xmlinspect.c: Fix for API changes.
9971 * gst/gstelementfactory.c:
9974 * gst/gstpluginfeature.c:
9975 * gst/gstpluginfeature.h:
9976 * gst/gstregistry.c:
9977 * gst/gstregistry.h:
9978 * gst/gstregistryxml.c:
9979 * gst/gsttypefind.c:
9980 * gst/gsttypefindfactory.c:
9981 * gst/indexers/gstfileindex.c:
9982 * gst/indexers/gstmemindex.c:
9983 * gst/schedulers/Makefile.am:
9984 Change registry to keep track of both plugins and features,
9985 removing the feature tracking from plugins themselves.
9987 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
9989 * check/Makefile.am:
9990 * tools/gst-register.1.in:
9993 2005-09-15 David Schleef <ds@schleef.org>
9995 * check/gst/gstplugin.c:
9996 * gst/gstelementfactory.c:
9998 * gst/gstpluginfeature.c:
9999 * gst/gstregistry.c:
10000 Getting tired of debugging. Disabled all the unreffing of
10001 plugins and features, which fixes the segfaults, but of
10002 course leaks like crazy. At least playbin works.
10004 2005-09-15 David Schleef <ds@schleef.org>
10006 * check/gst/gstplugin.c: (register_check_elements),
10007 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
10009 * gst/elements/gsttypefindelement.c: Fix refcounting.
10010 * gst/gsttypefind.c:
10011 * gst/gsttypefindfactory.c:
10012 * gst/gsttypefindfactory.h:
10014 2005-09-15 David Schleef <ds@schleef.org>
10016 * gst/gstindex.c: get refcounting correct.
10017 * gst/gstregistry.c: Handle the case where a feature/plugin is
10020 2005-09-15 David Schleef <ds@schleef.org>
10022 * check/Makefile.am:
10023 * check/gst/gstplugin.c: Add test
10024 * gst/gstplugin.c: Fix problems noticed by testsuite
10026 * gst/gstregistry.c:
10027 * gst/gstregistry.h:
10029 2005-09-15 David Schleef <ds@schleef.org>
10031 * gst/gstplugin.c: Implement semi-decent recounting and locking
10032 in plugins and plugin features.
10034 * gst/gstpluginfeature.c:
10035 * gst/gstpluginfeature.h:
10036 * gst/gstregistry.c:
10038 2005-09-15 Michael Smith <msmith@fluendo.com>
10040 * gst/gstregistry.c: (gst_registry_get_feature_list):
10041 Implement this. Makes oggdemux work; decodebin still broken.
10043 2005-09-14 David Schleef <ds@schleef.org>
10045 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
10047 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
10048 * gst/check/Makefile.am:
10049 * libs/gst/controller/Makefile.am:
10050 * libs/gst/dataprotocol/Makefile.am:
10052 2005-09-14 David Schleef <ds@schleef.org>
10054 * configure.ac: Remove getbits library. Nothing uses it, and
10055 it should be in something like liboil if someone did want
10057 * libs/gst/Makefile.am:
10058 * libs/gst/getbits/Makefile.am:
10059 * libs/gst/getbits/gbtest.c:
10060 * libs/gst/getbits/getbits.c:
10061 * libs/gst/getbits/getbits.h:
10062 * libs/gst/getbits/gstgetbits_generic.c:
10063 * libs/gst/getbits/gstgetbits_i386.s:
10064 * libs/gst/getbits/gstgetbits_inl.h:
10066 2005-09-14 David Schleef <ds@schleef.org>
10068 * gst/Makefile.am: Dist glib-compat.h
10070 2005-09-14 David Schleef <ds@schleef.org>
10072 * configure.ac: Remove gst/registries, since it's no longer used.
10073 * gst/registries/Makefile.am:
10074 * gst/registries/gstlibxmlregistry.c:
10075 * gst/registries/gstlibxmlregistry.h:
10076 * gst/registries/gstxmlregistry.c:
10077 * gst/registries/gstxmlregistry.h:
10078 * gst/registries/registrytest.c:
10080 2005-09-14 David Schleef <ds@schleef.org>
10082 * gst/glib-compat.h:
10083 * gst/gstregistryxml.c:
10084 Convergence is near. Seriously.
10086 2005-09-14 David Schleef <ds@schleef.org>
10088 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
10089 * gst/glib-compat.h:
10090 Attempt #4 to appease the buildbots.
10092 2005-09-14 David Schleef <ds@schleef.org>
10094 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
10097 2005-09-14 David Schleef <ds@schleef.org>
10099 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
10102 2005-09-14 David Schleef <ds@schleef.org>
10104 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
10107 2005-09-14 David Schleef <ds@schleef.org>
10109 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
10110 * gst/glib-compat.h: Add some functions that are in newer versions
10111 of glib than we care to require.
10112 * gst/gstregistryxml.c: Use them.
10114 2005-09-14 David Schleef <ds@schleef.org>
10116 * po/POTFILES.in: remove gst-register.c
10118 2005-09-14 David Schleef <ds@schleef.org>
10120 * docs/gst/gstreamer-docs.sgml:
10121 * docs/gst/gstreamer-sections.txt:
10122 * docs/gst/gstreamer.types:
10123 * docs/gst/tmpl/gstelement.sgml:
10124 * docs/gst/tmpl/gstplugin.sgml:
10125 * docs/gst/tmpl/gstpluginfeature.sgml:
10126 Documentation updates for registry changes.
10128 2005-09-14 David Schleef <ds@schleef.org>
10130 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
10131 because we don't require glib-2.8.
10133 2005-09-14 David Schleef <ds@schleef.org>
10135 * gst/gstregistryxml.c: Added. Essentially moved out of the
10136 registries directory.
10138 2005-09-14 David Schleef <ds@schleef.org>
10140 * check/Makefile.am:
10141 * check/generic/states.c:
10145 * gst/gst_private.h:
10146 * gst/gstelementfactory.c:
10151 * gst/gstpluginfeature.c:
10152 * gst/gstpluginfeature.h:
10153 * gst/gstregistry.c:
10154 * gst/gstregistry.h:
10155 * gst/gstregistrypool.c: remove
10156 * gst/gstregistrypool.h: remove
10157 * gst/gsttypefind.c:
10158 * gst/gsttypefindfactory.c:
10160 * tools/Makefile.am:
10161 * tools/gst-compprep.c:
10162 * tools/gst-inspect.c:
10163 * tools/gst-register.c: remove
10164 * tools/gst-xmlinspect.c:
10165 Registry rewrite. Changes registry from being a file created
10166 by a tool into a simple cache file created automatically by
10167 libgstreamer. Removed gst-register (because it's no longer
10168 needed). Remove registry pools, because we only have one
10169 registry implementation (XML). Fix up other subsystems as
10172 2005-09-13 Michael Smith <msmith@fluendo.com>
10174 * gst/gstconfig.h.in:
10175 Don't Use windows linking attributes for MinGW. Fixes #316157
10177 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
10179 * gst/gstutils.c: (set_state_async_thread_func),
10180 (gst_element_set_state_async):
10181 Apparently people think it's better if this function doesn't
10182 try to set the state to whatever state was asked for on the first
10183 call to this function for any object. Seriously.
10185 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
10187 * check/gst/gstpipeline.c: (GST_START_TEST):
10188 * docs/gst/gstreamer-sections.txt:
10189 * gst/gstutils.c: (set_state_async_thread_func),
10190 (gst_element_set_state_async):
10192 add a "gst_element_set_state_async" method that
10193 sets the state and starts a thread to make sure the state
10194 change completes as best as it can
10196 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
10198 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
10199 codify design+behaviour in testsuite after discussion
10201 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
10203 * docs/gst/tmpl/gstelement.sgml:
10204 * docs/manual/appendix-quotes.xml:
10206 * gst/gstelement.c: (gst_element_set_state):
10209 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
10211 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
10212 (gst_base_transform_prepare_output_buf),
10213 (gst_base_transform_handle_buffer):
10214 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
10215 (gst_capsfilter_prepare_buf):
10216 Remove the requirement for sub-classes to call the parent
10217 implementation of prepare_output_buffer with a wrapper function.
10219 * gst/gsttaglist.h:
10220 * gst/gsttagsetter.h:
10221 Fix #define wrapper
10223 2005-09-11 Stefan Kost <ensonic@users.sf.net>
10225 * docs/gst/gstreamer-sections.txt:
10228 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
10230 * docs/gst/gstreamer-sections.txt:
10231 * docs/gst/tmpl/gstelement.sgml:
10232 * docs/gst/tmpl/gstplugin.sgml:
10233 * gst/gstminiobject.c:
10235 docs now stop throwing warnings
10237 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
10239 * docs/gst/gstreamer-sections.txt:
10240 * docs/gst/gstreamer.types:
10241 * docs/gst/tmpl/gstpad.sgml:
10242 * docs/gst/tmpl/gsttypes.sgml:
10243 * gst/base/gstadapter.h:
10244 * gst/base/gstbasesink.h:
10245 * gst/base/gstbasesrc.h:
10251 * gst/gstelement.h:
10253 * gst/gstmessage.h:
10255 * gst/gststructure.c:
10256 * gst/registries/gstlibxmlregistry.h:
10257 various documentation fixes
10259 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
10261 * docs/gst/gstreamer-sections.txt:
10262 * docs/gst/tmpl/gstvalue.sgml:
10263 rearrange gstvalue section
10264 * gst/gstutils.c: (gst_element_state_get_name):
10266 * gst/gstvalue.c: (_gst_value_initialize):
10270 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
10272 * check/gst-libs/controller.c:
10273 Header include fix.
10274 * gst/base/gstbasetransform.c:
10275 (gst_base_transform_default_prepare_buf),
10276 (gst_base_transform_handle_buffer):
10277 * gst/base/gstbasetransform.h:
10278 Some more basetransform changes and fixes to enable sub-classes
10279 that modify buffer metadata only.
10280 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
10281 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
10282 (gst_capsfilter_prepare_buf):
10283 If the output pad has fixed allowed caps and input buffers
10284 don't have any, set the fixed caps on outgoing buffers.
10286 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
10287 * check/elements/identity.c: (GST_START_TEST):
10288 Make the error a little clearer when the test fails because
10289 identity made a copy of the buffer.
10290 * docs/gst/gstreamer-sections.txt:
10291 New symbols in gstbasetransform.h
10292 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
10293 (gst_base_transform_init), (gst_base_transform_transform_size),
10294 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
10295 (gst_base_transform_default_prepare_buf),
10296 (gst_base_transform_get_unit_size),
10297 (gst_base_transform_buffer_alloc),
10298 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
10299 (gst_base_transform_change_state),
10300 (gst_base_transform_set_passthrough),
10301 (gst_base_transform_set_in_place),
10302 (gst_base_transform_is_in_place):
10303 * gst/base/gstbasetransform.h:
10304 Change BaseTransform to separate in_place operate from same_caps
10305 output. in_place implies that the element can perform the transform
10306 on incoming buffers in-place, even if the caps on the output are
10308 Sub-class elements can now implement special buffer allocation
10309 methods for outgoing buffers if they wish to.
10310 Big documentation addition.
10311 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
10312 * gst/elements/gstelements.c:
10313 Changes for basetransform modifications.
10314 * gst/elements/Makefile.am:
10315 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
10316 Compile fix. Extra debug output.
10318 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
10320 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
10322 add tests for valid pad naming
10323 * gst/check/gstcheck.c: (gst_check_log_message_func),
10324 (gst_check_log_critical_func):
10326 remove printing of code, it is fragile when the code contains
10327 % and the line number is enough info
10328 * gst/check/gstcheck.h:
10329 * gst/gstpad.c: (gst_pad_template_new):
10332 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
10335 say what CHECK flags we use
10336 * docs/libs/gstreamer-libs.types:
10337 * libs/gst/controller/Makefile.am:
10338 * libs/gst/controller/gst-controller.c:
10339 * libs/gst/controller/gst-controller.h:
10340 * libs/gst/controller/gst-helper.c:
10341 * libs/gst/controller/gst-interpolation.c:
10342 * libs/gst/controller/gstcontroller.c:
10343 * libs/gst/controller/gsthelper.c:
10344 * libs/gst/controller/gstinterpolation.c:
10345 * tools/gst-inspect.c: (print_plugin_info):
10346 we don't use dashes in header names
10348 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
10350 * check/Makefile.am:
10351 * check/gst/.cvsignore:
10352 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
10353 (gst_pipeline_suite), (main):
10354 adding a test for pipelines and state changes
10355 * gst/gstutils.c: (get_state_func):
10357 * gstreamer.spec.in:
10360 2005-09-08 Michael Smith <msmith@fluendo.com>
10362 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
10363 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
10364 (gst_file_src_is_seekable), (gst_file_src_get_size),
10365 (gst_file_src_start):
10366 * gst/elements/gstfilesrc.h:
10367 Various fixes for unseekable, unmmapable, and non-normal files, so
10368 that fallback to read() rather than mmap() works.
10369 * gst/gstevent.c: (gst_event_new_newsegment):
10370 Allow newsegment events with segment_start == segment_end, as will
10371 correctly happen if you use filesrc on a zero-size file, for
10374 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
10376 * gst/gstplugin.c: (gst_plugin_load_file):
10377 Call g_module_close when we don't load the module
10379 * gst/registries/gstlibxmlregistry.c:
10380 (gst_xml_registry_get_property):
10381 Port leak fix from 0.8
10383 2005-09-07 Stefan Kost <ensonic@users.sf.net>
10385 * docs/gst/gstreamer-docs.sgml:
10386 * docs/gst/tmpl/.cvsignore:
10387 * docs/gst/tmpl/gsttrace.sgml:
10388 * docs/gst/tmpl/gsttrashstack.sgml:
10391 * gst/gstelement.h:
10393 * gst/gstmessage.c:
10394 * gst/gstmessage.h:
10397 * gst/gsttaginterface.c:
10398 * gst/gsttaginterface.h:
10399 * gst/gsttaglist.c:
10400 * gst/gsttaglist.h:
10401 * gst/gsttagsetter.c:
10402 * gst/gsttagsetter.h:
10405 * gst/gsttrashstack.c:
10406 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
10407 inlined docs for gsttrace, gsttrashstack
10409 2005-09-07 Stefan Kost <ensonic@users.sf.net>
10412 * gst/elements/gstbufferstore.h:
10413 * gst/elements/gsttypefindelement.c:
10414 * gst/elements/gsttypefindelement.h:
10416 * gst/gsttypefind.c:
10417 * gst/gsttypefind.h:
10418 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
10419 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
10420 (gst_type_find_factory_dispose),
10421 (gst_type_find_factory_unload_thyself),
10422 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
10423 (gst_type_find_factory_get_caps),
10424 (gst_type_find_factory_get_extensions),
10425 (gst_type_find_factory_call_function):
10426 * gst/gsttypefindfactory.h:
10427 * gst/registries/gstlibxmlregistry.c:
10428 * gst/registries/gstxmlregistry.c:
10429 splitted gsttypefind into gsttypefind, gsttypefindfactory
10431 2005-09-07 Andy Wingo <wingo@pobox.com>
10433 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
10434 condition whereby the pad's task function is entered before the
10435 pad_mode variable was set.
10437 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
10439 * gst/gstpad.c: (gst_pad_alloc_buffer):
10440 Catch misbehaving pad_alloc functions that don't
10441 set up caps and do it for them.
10443 2005-09-07 Stefan Kost <ensonic@users.sf.net>
10445 * check/pipelines/simple_launch_lines.c: (run_pipeline):
10446 test for pipe!=NULL
10447 * docs/gst/tmpl/.cvsignore:
10448 * docs/gst/tmpl/gstmemchunk.sgml:
10449 * docs/gst/tmpl/gstparse.sgml:
10450 * docs/gst/tmpl/gsttaglist.sgml:
10451 * docs/gst/tmpl/gsttagsetter.sgml:
10452 * docs/gst/tmpl/gsttypefind.sgml:
10453 * docs/gst/tmpl/gsttypefindfactory.sgml:
10454 * gst/gstmemchunk.c:
10457 * gst/gsttaginterface.c:
10458 * gst/gsttypefind.c:
10459 * gst/gsttypefind.h:
10462 === release 0.9.2 ===
10464 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
10469 releasing 0.9.2, "South"
10471 2005-09-05 Andy Wingo <wingo@pobox.com>
10473 * gst/registries/gstxmlregistry.h:
10474 * gst/registries/gstxmlregistry.c: Um... resurrect...
10476 * gst/registries/gstxmlregistry.h:
10477 * gst/registries/gstxmlregistry.c: and update to newer API.
10478 Incidentally they should be a bit faster now that they don't have
10481 2005-09-05 Andy Wingo <wingo@pobox.com>
10483 * gst/registries/gstxmlregistry.h:
10484 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
10485 replaced by the libxml registry a while back
10487 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
10489 * docs/gst/tmpl/gstplugin.sgml:
10490 * gst/elements/gstelements.c:
10492 * gst/gstplugin.c: (gst_plugin_register_func),
10493 (gst_plugin_desc_copy), (gst_plugin_desc_free),
10494 (gst_plugin_get_source):
10496 * gst/registries/gstlibxmlregistry.c: (load_plugin),
10497 (gst_xml_registry_save_plugin):
10498 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
10499 (gst_xml_registry_save_plugin):
10500 * tools/gst-inspect.c: (print_plugin_info):
10501 add a "source" plugin description field, to represent the source
10502 module this plugin is a part of. By default GST_PLUGIN_DEFINE
10503 will set it to PACKAGE, which is automake's idea of the name of
10504 the source project.
10506 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
10511 * docs/Makefile.am:
10512 * docs/faq/Makefile.am:
10513 * docs/gst/tmpl/gstelement.sgml:
10514 * docs/gst/tmpl/gsttypes.sgml:
10515 * docs/htmlinstall.mak:
10516 * docs/manual/Makefile.am:
10517 * docs/pwg/Makefile.am:
10518 reorganize doc build a little
10519 split out docbook and gtk-doc stuff
10520 have two separate --enable's and enable them through autogen
10521 but disable by default in configure (to be similar to other
10523 * gstreamer.spec.in:
10524 clean up docs install
10542 translation updates
10544 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
10546 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
10549 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
10550 (gst_fake_sink_change_state):
10551 Make state change function thread-safe.
10553 * gst/gstpad.c: (gst_pad_alloc_buffer):
10554 Set offset on generic buffer allocated by fallback.
10556 2005-09-03 Stefan Kost <ensonic@users.sf.net>
10558 * docs/gst/gstreamer-sections.txt:
10559 * docs/gst/tmpl/gstelement.sgml:
10561 * libs/gst/controller/gst-controller.c:
10562 (gst_controlled_property_set_interpolation_mode),
10563 (gst_controlled_property_new),
10564 (gst_controller_find_controlled_property):
10565 run the wingo-magic script against the docs
10567 2005-09-02 Stefan Kost <ensonic@users.sf.net>
10569 * docs/gst/gstreamer-docs.sgml:
10570 * docs/gst/gstreamer-sections.txt:
10571 * docs/gst/tmpl/.cvsignore:
10572 * docs/gst/tmpl/gstelementdetails.sgml:
10573 * docs/gst/tmpl/gstelementfactory.sgml:
10576 * gst/gstelementfactory.c:
10577 * gst/gstelementfactory.h:
10578 merged elementdetails docs into elementfactory docs
10581 2005-09-02 Andy Wingo <wingo@pobox.com>
10583 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
10584 consider this enum an enum and not a flags.
10586 2005-09-02 Stefan Kost <ensonic@users.sf.net>
10588 * docs/gst/gstreamer-docs.sgml:
10589 * docs/gst/tmpl/.cvsignore:
10590 * docs/gst/tmpl/gstghostpad.sgml:
10591 * docs/gst/tmpl/gstiterator.sgml:
10592 * docs/gst/tmpl/gstmacros.sgml:
10593 * docs/gst/tmpl/gstrealpad.sgml:
10594 * docs/gst/tmpl/gstregistry.sgml:
10595 * docs/gst/tmpl/gstregistrypool.sgml:
10596 * docs/gst/tmpl/gststructure.sgml:
10597 * docs/gst/tmpl/gstsystemclock.sgml:
10598 * docs/gst/tmpl/gsttrace.sgml:
10599 * gst/gstghostpad.c:
10601 * gst/gstmemchunk.c:
10602 * gst/gstmemchunk.h:
10604 * gst/gstregistry.c:
10605 * gst/gstregistrypool.c:
10606 * gst/gststructure.c:
10607 * gst/gstsystemclock.c:
10610 2005-09-02 Andy Wingo <wingo@pobox.com>
10612 * gst/gstelement.h (GstState): Renamed from GstElementState,
10613 changed to be a normal enum instead of flags.
10614 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
10615 munged to be GST_STATE_CHANGE_*.
10616 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
10617 work with the new state representation.
10618 (GstStateChange): New enumeration of possible state transitions.
10619 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
10620 (GstElementClass::change_state): Pass the GstStateChange along as
10621 an argument. Helps language bindings, so they don't have to use
10622 tricky lock-needing macros like GST_STATE_CHANGE ().
10624 * scripts/update-states (file): New script. Run it on a file to
10625 update it for state naming and API changes. Updates files in
10628 * All files updated for the new API.
10630 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
10632 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
10633 * gst/gstutils.c: (gst_util_set_value_from_string),
10634 (gst_util_set_object_arg):
10635 fix a bunch of unchecked return values
10636 * tools/gst-complete.c: (main):
10637 * gstreamer.spec.in:
10640 2005-09-01 Wim Taymans <wim@fluendo.com>
10642 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10643 (gst_base_sink_event), (gst_base_sink_do_sync),
10644 (gst_base_sink_handle_event):
10645 * gst/base/gstbasesink.h:
10646 Handle newsegments more correctly.
10651 * gst/gstevent.c: (gst_event_new_newsegment):
10652 A newsegment cannot have a start_time of -1
10654 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
10656 * win32/gstenumtypes.c:
10657 * win32/gstenumtypes.h:
10660 2005-08-31 Stefan Kost <ensonic@users.sf.net>
10662 * libs/gst/controller/gst-controller.c:
10663 (gst_controlled_property_set_interpolation_mode),
10664 (gst_controlled_property_new):
10665 fixed boolean again
10667 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
10669 * docs/faq/gst-uninstalled:
10674 * gst/gstutils.c: (gst_element_link_filtered):
10676 add gst_element_link_filtered
10678 2005-08-31 Stefan Kost <ensonic@users.sf.net>
10680 * docs/gst/gstreamer-docs.sgml:
10681 * docs/gst/gstreamer-sections.txt:
10682 * docs/gst/tmpl/.cvsignore:
10683 * docs/gst/tmpl/gsterror.sgml:
10684 * docs/gst/tmpl/gstfilter.sgml:
10685 * docs/gst/tmpl/gsturihandler.sgml:
10686 * docs/gst/tmpl/gsturitype.sgml:
10687 * docs/gst/tmpl/gstutils.sgml:
10688 * docs/gst/tmpl/gstxml.sgml:
10693 * gst/gsturitype.c:
10696 inlined more docs, fixed double id-ref
10698 2005-08-31 Wim Taymans <wim@fluendo.com>
10700 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
10701 (gst_base_transform_handle_buffer):
10702 Passthrough elements don't need the caps as they don't care.
10704 2005-08-31 Wim Taymans <wim@fluendo.com>
10706 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
10707 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
10708 Don't leak refcounts on buffers.
10710 2005-08-31 Wim Taymans <wim@fluendo.com>
10712 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
10713 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
10714 (gst_base_transform_chain), (gst_base_transform_change_state):
10715 * gst/base/gstbasetransform.h:
10716 Handle the case where we are not negotiated more gracefully.
10718 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
10720 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
10721 (gst_file_src_map_region):
10722 Set READONLY flag on mmap'ed buffers, otherwise
10723 gst_buffer_make_writable() won't work properly (#314708).
10725 2005-08-31 Wim Taymans <wim@fluendo.com>
10727 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
10728 passthrough elements can even do inplace on non writable
10729 buffers (as they don't touch them).
10731 2005-08-31 Stefan Kost <ensonic@users.sf.net>
10733 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
10734 (gst_test_mono_source_set_property),
10735 (gst_test_mono_source_class_init), (GST_START_TEST),
10736 (gst_controller_suite):
10737 more tests (hehe I have the most)
10739 describe popping messages whenusing mulltiple sources
10740 * libs/gst/controller/gst-controller.c:
10741 (gst_controlled_property_set_interpolation_mode),
10742 (gst_controlled_property_new):
10743 * libs/gst/controller/gst-controller.h:
10744 * libs/gst/controller/gst-interpolation.c:
10745 implement boolean properties
10747 2005-08-31 Wim Taymans <wim@fluendo.com>
10749 * gst/gstminiobject.c: (gst_mini_object_ref):
10750 Cannot assert that the refcount has to be positive
10751 since a disposed object can be resurrected.
10753 2005-08-31 Wim Taymans <wim@fluendo.com>
10755 * gst/gstpad.c: (gst_pad_init):
10756 Revert change, need to first fix badly behaving
10759 2005-08-30 Wim Taymans <wim@fluendo.com>
10761 * check/elements/fakesrc.c: (setup_fakesrc):
10762 * check/elements/identity.c: (setup_identity):
10763 Activate pads before using them.
10765 2005-08-30 Wim Taymans <wim@fluendo.com>
10767 * gst/base/gstadapter.c: (gst_adapter_flush):
10768 Flushing out 0 bytes is ok for this function.
10770 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10771 no newsegment gives a warning and sets the start/stop to
10774 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
10775 (gst_base_transform_set_passthrough):
10778 * gst/gstminiobject.c: (gst_mini_object_ref):
10779 Check refcount here too.
10781 * gst/gstpad.c: (gst_pad_init):
10782 Pads are initially flushing and refusing data.
10784 * gst/gstutils.c: (gst_element_link_pads_filtered):
10785 When adding a capsfilter element make sure it has the
10786 same state as the parent bin.
10788 2005-08-30 Stefan Kost <ensonic@users.sf.net>
10790 * docs/gst/tmpl/.cvsignore:
10791 * docs/gst/tmpl/gstformat.sgml:
10792 * docs/gst/tmpl/gstversion.sgml:
10796 * gst/gstversion.h.in:
10797 more docs and two more inlined
10799 2005-08-30 Wim Taymans <wim@fluendo.com>
10801 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
10802 Don't sync to clock.
10804 2005-08-30 Stefan Kost <ensonic@users.sf.net>
10806 * docs/gst/gstreamer-sections.txt:
10807 ultral33t func10ns deserve to appear in the docs actually
10808 * docs/gst/tmpl/.cvsignore:
10809 * docs/gst/tmpl/gstcompat.sgml:
10810 * docs/gst/tmpl/gstconfig.sgml:
10811 * gst/check/gstcheck.c:
10813 * gst/gstconfig.h.in:
10816 2005-08-30 Stefan Kost <ensonic@users.sf.net>
10818 * docs/gst/tmpl/.cvsignore:
10819 * docs/gst/tmpl/gstquery.sgml:
10820 * docs/gst/tmpl/gstutils.sgml:
10823 inlined and extended docs
10825 2005-08-30 Stefan Kost <ensonic@users.sf.net>
10827 * check/gst-libs/controller.c: (GST_START_TEST),
10828 (gst_controller_suite):
10830 * docs/gst/tmpl/gstutils.sgml:
10831 * docs/libs/gstreamer-libs-sections.txt:
10832 * docs/libs/tmpl/gstdataprotocol.sgml:
10834 * examples/controller/audio-example.c: (main):
10835 controller example works now
10838 * tools/gst-inspect.c: (print_element_properties_info):
10839 show param spec flags
10841 2005-08-29 Andy Wingo <wingo@pobox.com>
10843 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
10845 2005-08-28 Andy Wingo <wingo@pobox.com>
10847 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
10848 as having two arguments instead of just one. Allows superclasses
10849 to access information on subclasses -- see the terrible for() loop
10850 in gtype.c:g_type_create_instance for the reason why. All callers
10853 2005-08-27 Stefan Kost <ensonic@users.sf.net>
10855 * docs/design/part-messages.txt:
10857 * docs/gst/tmpl/.cvsignore:
10858 * docs/gst/tmpl/gstcaps.sgml:
10859 * docs/gst/tmpl/gstclock.sgml:
10865 * gst/gstmessage.c:
10866 added descriptions for bus and message
10867 inline caps and clock docs
10869 2005-08-27 Stefan Kost <ensonic@users.sf.net>
10871 * gst/gstmessage.c:
10872 * gst/gstmessage.h:
10875 2005-08-27 Stefan Kost <ensonic@users.sf.net>
10877 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
10880 2005-08-26 Andy Wingo <wingo@pobox.com>
10882 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
10883 element_set_state's return val.
10884 (test_2_elements): Add test that's been disabled for months.
10886 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
10887 can-activate-pull properties.
10889 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
10890 can-activate-pull properties. Implement is_seekable so fakesrc can
10891 operate in pull mode.
10893 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
10895 (gst_base_sink_activate, gst_base_sink_activate_pull)
10896 (gst_base_sink_activate_push): Make activation mode choosing work.
10898 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
10899 is right. Make pull mode work. Post an eos before pausing in pull
10901 (gst_base_sink_change_state): Pay attention to the core's
10902 change_state() return val.
10904 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
10905 has-getrange properties. Cleanups.
10907 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
10908 has_getrange and replace with can_activate_pull and
10911 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
10912 locking comments. Remove has_loop, has_chain and replace with
10913 can_activate_pull and can_activate_push.
10915 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
10918 * examples/Makefile.am:
10919 * examples/metadata/Makefile.am:
10920 * examples/metadata/read-metadata.c: (message_loop),
10921 (have_pad_handler), (make_pipeline), (print_tag), (main):
10922 Add metadata reading example that loops over a list of filenames,
10923 dumping any tags found.
10925 * gst/gstbus.c: (gst_bus_dispose):
10926 * gst/gstelement.c: (gst_element_dispose):
10927 Release a few potentially-held references in dispose.
10929 2005-08-26 Stefan Kost <ensonic@users.sf.net>
10931 * docs/gst/tmpl/gstminiobject.sgml:
10932 do *not* add tmpl/*.sgml files to CVS!
10934 2005-08-26 Stefan Kost <ensonic@users.sf.net>
10936 * libs/gst/bytestream/.cvsignore:
10937 * libs/gst/bytestream/Makefile.am:
10938 * libs/gst/bytestream/adapter.c:
10939 * libs/gst/bytestream/adapter.h:
10940 * libs/gst/bytestream/bytestream.c:
10941 * libs/gst/bytestream/bytestream.h:
10942 * libs/gst/bytestream/filepad.c:
10943 * libs/gst/bytestream/filepad.h:
10944 removing obsolete files
10946 2005-08-26 Stefan Kost <ensonic@users.sf.net>
10948 * docs/gst/gstreamer-docs.sgml:
10949 * docs/libs/gstreamer-libs-docs.sgml:
10950 disabed additional index entries again, as this makes docs-gen just
10951 slow and they aren't useful yet
10952 * docs/libs/gstreamer-libs-sections.txt:
10953 little -section.txt cleanup for libs
10955 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
10957 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10958 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
10959 fix up some debugging
10960 (gst_base_transform_get_unit_size),
10961 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
10962 (gst_base_transform_handle_buffer):
10963 * gst/base/gstbasetransform.h:
10964 handle and store timed NEWSEGMENT events so that subclasses that
10965 calculate time by counting samples have a segment_start time they
10966 need to add to their timestamps - see audioresample
10968 2005-08-26 Stefan Kost <ensonic@users.sf.net>
10971 removed ';' from the end of macro defs
10972 * docs/gst/gstreamer-docs.sgml:
10973 * docs/gst/gstreamer-sections.txt:
10974 * docs/gst/tmpl/.cvsignore:
10976 * gst/gstelement.c: (gst_element_class_init),
10977 (gst_element_set_state), (activate_pads),
10978 (gst_element_save_thyself):
10979 * gst/gstevent.c: (gst_event_new_newsegment):
10981 * gst/gstiterator.c:
10982 * gst/gstiterator.h:
10985 * gst/gstutils.c: (gst_pad_query_convert):
10987 fixed parameter name mismatches between source, header and docs
10988 added some more docs, resolved the last batch of unused elements in
10989 docs (now someone needs to doc them)
10991 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
10993 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
10994 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
10995 don't walk through the plugins backwards. Where is all this
10996 reversed logic coming from ?
10998 2005-08-25 Wim Taymans <wim@fluendo.com>
11000 * gst/base/gstbasetransform.c: (gst_base_transform_init),
11001 (gst_base_transform_transform_size),
11002 (gst_base_transform_configure_caps),
11003 (gst_base_transform_get_unit_size),
11004 (gst_base_transform_buffer_alloc),
11005 (gst_base_transform_change_state):
11006 * gst/base/gstbasetransform.h:
11007 Cache caps unit_size.
11008 Make sure we cannot negotiate up and downstream at the
11011 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
11013 * gst/gst.c: (init_pre), (init_post):
11014 register the installed plugin path after the env var
11015 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
11016 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
11017 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
11018 directories, so the tests can prefer uninstalled over installed
11020 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
11022 * gst/base/gstbasetransform.h:
11027 2005-08-25 Wim Taymans <wim@fluendo.com>
11029 * gst/gstbin.c: (bin_bus_handler):
11030 Be a bit more conservative about the posted message.
11032 * gst/gstbus.c: (gst_bus_post):
11033 Some cleanups, warn wrong return values.
11035 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
11037 * check/gst/gstbin.c: (GST_START_TEST):
11038 * gst/gstbin.c: (bin_bus_handler):
11039 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
11040 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
11041 (gst_message_new_warning), (gst_message_new_tag),
11042 (gst_message_new_state_changed), (gst_message_new_segment_start),
11043 (gst_message_new_segment_done), (gst_message_new_custom):
11044 * gst/gstmessage.h:
11045 * tools/gst-launch.c: (event_loop):
11046 * tools/gst-md5sum.c: (event_loop):
11047 Revert unpopular change for GST_MESSAGE_SRC to GObject.
11049 2005-08-25 Wim Taymans <wim@fluendo.com>
11051 * check/generic/states.c: (GST_START_TEST):
11052 Cleanup can be done at the end.
11054 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
11055 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
11056 (gst_task_get_state), (gst_task_start), (gst_task_pause):
11057 Oh boy.. Thanks for finding this, Thomas.
11059 2005-08-25 Stefan Kost <ensonic@users.sf.net>
11061 * docs/gst/gstreamer.types:
11062 added missing types
11064 2005-08-25 Stefan Kost <ensonic@users.sf.net>
11066 * docs/gst/gstreamer-docs.sgml:
11067 * docs/gst/gstreamer-sections.txt:
11068 * docs/gst/tmpl/.cvsignore:
11070 * gst/gstiterator.c:
11072 * gst/registries/gstxmlregistry.h:
11073 added missing classes and symbols (123 more to go)
11074 removed removed symbols from section file
11075 fixed many doc-comments
11077 2005-08-24 Wim Taymans <wim@fluendo.com>
11079 * check/generic/states.c: (GST_START_TEST):
11080 Make sure all tasks are stopped.
11082 * check/gst/gstbin.c: (GST_START_TEST):
11083 Unref after usage for proper valgrinding.
11085 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
11086 Really wait for the task to stop before destroying the
11089 * gst/gstqueue.c: (gst_queue_sink_activate_push),
11090 (gst_queue_src_activate_push):
11091 Small cleanups. Don't stop the task when we did not start
11094 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
11095 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
11096 (gst_task_get_state), (gst_task_start), (gst_task_pause),
11099 Protect the stream lock with the object lock.
11100 Disallow setting the stream lock when running.
11101 Add cleanup_all to wait for the threadpool to finish.
11102 Remove code to autoallocate a mutex if none was provided.
11103 Add _join() to wait for a task to stop.
11104 Protect the thread pool with a global lock.
11106 2005-08-24 Wim Taymans <wim@fluendo.com>
11108 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11109 (gst_base_sink_get_times), (gst_base_sink_do_sync),
11110 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
11111 * gst/base/gstbasesink.h:
11112 Handle newsegment events correctly.
11113 Drop buffers out of the segment range.
11115 2005-08-22 Andy Wingo <wingo@pobox.com>
11117 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
11118 macro, implements an interface and gstimplementsinterface for a
11121 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
11123 * check/Makefile.am:
11124 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
11125 add a test that does a bunch of state changes on elements
11126 needs some fixing for valgrind
11127 * check/states/sinks.c: (gst_object_suite):
11130 add prototype for gst_caps_is_equal_fixed
11132 * gst/gstregistrypool.c:
11135 2005-08-24 Andy Wingo <wingo@pobox.com>
11137 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
11138 convert a negative value. Doesn't make much sense. Mostly this is
11139 here to force callers to ensure -1 maps to -1.
11141 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
11143 * docs/pwg/advanced-types.xml:
11144 Well done to Michael for catching my deliberate introduction
11145 of this spelling mistake.
11146 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
11147 * gst/gstelement.h:
11148 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
11149 unlink pads before removing the element from the bin.
11151 2005-08-24 Andy Wingo <wingo@pobox.com>
11153 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
11154 the same thing as GST_DEBUG=*:4.
11155 (parse_debug_level, parse_debug_category): New helper parsers.
11157 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
11159 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
11160 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
11161 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
11162 (gst_base_transform_buffer_alloc),
11163 (gst_base_transform_handle_buffer):
11164 use gboolean return values and pointers to size so we can use the
11165 full GST_BUFFER_SIZE range (guint) for buffer sizes
11166 use GstPadDirection for transform_caps
11167 * gst/base/gstbasetransform.h:
11168 rename get_size to get_unit_size since that's what it is
11169 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
11170 use GstPadDirection for transform_caps
11171 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
11173 cleanup and debugging
11175 2005-08-24 Stefan Kost <ensonic@users.sf.net>
11177 * gst/gstelement.c: (gst_element_class_init),
11178 (gst_element_set_state), (activate_pads),
11179 (gst_element_save_thyself):
11180 * tools/gst-compprep.c: (main):
11181 * tools/gst-inspect.c: (print_element_properties_info):
11182 * tools/gst-xmlinspect.c: (print_element_properties):
11183 Fixed long standing mem-leak
11185 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
11187 * check/gst/gstbin.c: (GST_START_TEST):
11188 * gst/gstbin.c: (bin_bus_handler):
11189 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
11190 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
11191 (gst_message_new_warning), (gst_message_new_tag),
11192 (gst_message_new_state_changed), (gst_message_new_segment_start),
11193 (gst_message_new_segment_done), (gst_message_new_custom):
11194 * gst/gstmessage.h:
11195 * tools/gst-launch.c: (event_loop):
11196 * tools/gst-md5sum.c: (event_loop):
11197 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
11198 that applications can sensibly post custom messages with references
11199 to their own objects.
11201 2005-08-24 Andy Wingo <wingo@pobox.com>
11203 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
11206 2005-08-24 Wim Taymans <wim@fluendo.com>
11208 * gst/base/gstbasetransform.c: (gst_base_transform_init),
11209 (gst_base_transform_transform_caps),
11210 (gst_base_transform_transform_size),
11211 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
11212 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
11213 (gst_base_transform_handle_buffer):
11214 * gst/base/gstbasetransform.h:
11215 Many fixes and new features added by Thomas. Can now also do
11216 transforms with variable sizes and a custom fixate_caps function.
11218 2005-08-24 Wim Taymans <wim@fluendo.com>
11220 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
11224 Cast to ClockTime before formatting to time.
11229 2005-08-24 Stefan Kost <ensonic@users.sf.net>
11231 * check/gst-libs/controller.c: (GST_START_TEST),
11232 (gst_controller_suite):
11233 * docs/gst/tmpl/gstcaps.sgml:
11234 * docs/gst/tmpl/gstghostpad.sgml:
11235 * docs/gst/tmpl/gstquery.sgml:
11236 * docs/gst/tmpl/gstutils.sgml:
11237 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
11238 (gst_object_sink_values), (gst_object_get_value_arrays),
11239 (gst_object_get_value_array):
11240 gracefully handle helper method calls to objects that are not beeing
11241 controlled, added test case for that
11243 2005-08-23 Wim Taymans <wim@fluendo.com>
11245 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
11246 (gst_event_new_newsegment), (gst_event_parse_newsegment),
11247 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
11248 (gst_event_parse_qos), (gst_event_new_seek),
11249 (gst_event_parse_seek):
11251 Some more debugging output and doc cleanups.
11253 * gst/gstqueue.c: (gst_queue_handle_sink_event):
11254 Fix possible deadlock.
11256 2005-08-23 Stefan Kost <ensonic@users.sf.net>
11258 * docs/gst/gstreamer-docs.sgml:
11259 * docs/gst/gstreamer-sections.txt:
11260 * docs/gst/gstreamer.types:
11261 * docs/gst/tmpl/.cvsignore:
11264 * gst/gstelement.c:
11266 added 100 symbols from gstreamer-unused.txt to the right sections
11267 fixed more broken comments
11268 added GstBus to docs
11270 2005-08-23 Stefan Kost <ensonic@users.sf.net>
11272 * docs/gst/gstreamer-sections.txt:
11273 * docs/gst/tmpl/.cvsignore:
11274 * docs/gst/tmpl/gstbin.sgml:
11275 * docs/gst/tmpl/gstbuffer.sgml:
11276 * gst/base/gstbasesrc.c:
11277 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
11280 * tools/gst-launch.1.in:
11281 inlined more doc comments, added missing comments and fixed comments
11284 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
11286 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
11290 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
11292 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
11293 * gst/gststructure.h:
11294 add a fixate function for booleans; add a FIXME that these func
11295 names should probably be gst_structure_fixate_*
11297 2005-08-23 Stefan Kost <ensonic@users.sf.net>
11299 * docs/gst/gstreamer-docs.sgml:
11300 * docs/gst/gstreamer-sections.txt:
11302 * gst/gstbin.c: (gst_bin_get_type),
11303 (gst_bin_child_proxy_get_child_by_index),
11304 (gst_bin_child_proxy_get_children_count),
11305 (gst_bin_child_proxy_init):
11306 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
11307 (gst_child_proxy_get_child_by_index),
11308 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
11309 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
11310 (gst_child_proxy_get), (gst_child_proxy_set_property),
11311 (gst_child_proxy_set_valist), (gst_child_proxy_set),
11312 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
11313 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
11314 * gst/gstchildproxy.h:
11315 * gst/parse/grammar.y:
11316 * tools/gst-inspect.c: (print_interfaces),
11317 (print_element_properties_info), (print_element_info):
11318 ported gstchildproxy over from 0.8
11319 ported gst-inspect fixes and enhancements over from 0.8
11321 2005-08-22 Wim Taymans <wim@fluendo.com>
11323 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
11324 (gst_base_transform_handle_buffer):
11325 Also call the transform function if we have ANY caps.
11327 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
11330 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
11332 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
11333 Don't pretend to handle seek events if the source is not seekable
11335 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
11337 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
11338 Remove extra parameter to debug output
11340 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
11341 (gst_base_src_do_seek), (gst_base_src_activate_push):
11342 Fix seek event handling.
11344 * gst/gstpipeline.c: (gst_pipeline_change_state):
11345 * gst/gstqueue.c: (gst_queue_handle_sink_event),
11346 (gst_queue_src_activate_push):
11347 Don't start the src pad task on FLUSH_STOP if the pad
11351 2005-08-22 Wim Taymans <wim@fluendo.com>
11353 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
11354 Added check for gst_static_caps_get() refcounting.
11356 2005-08-22 Wim Taymans <wim@fluendo.com>
11358 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
11359 Make _static_caps_get() refcounting sane.
11361 * gst/gstelement.c: (gst_element_set_state):
11362 Add g_return_val_if_fail() to protect against segfaults.
11364 2005-08-22 Stefan Kost <ensonic@users.sf.net>
11366 * docs/gst/tmpl/gstevent.sgml:
11369 inlined remaining docs, added missing doc comments
11371 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
11373 * check/gst/gstbin.c: (GST_START_TEST):
11374 since we don't know when preroll is done, use refcount range
11376 * gst/check/gstcheck.h:
11377 add macro for checking refcount range
11379 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
11381 * check/Makefile.am:
11382 clean up environment for when registry gets built versus
11383 when actual tests are run; valgrind seems to not report
11384 leaks if GST_PLUGIN_PATH is set to some specific values
11385 * check/gst/gstbin.c: (GST_START_TEST):
11386 add more refcounting checks; maybe this exposes a
11388 * common/check.mak:
11389 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
11390 * gst/check/gstcheck.h:
11391 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
11392 (gst_bin_change_state):
11393 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
11394 add/fix debugging/whitespace
11396 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
11398 * check/gst/gstevent.c: (event_probe), (test_event),
11400 Er, don't call gst_bin_watch_for_state_change you idiot.
11402 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
11404 * check/Makefile.am:
11405 Use CHECK_CFLAGS and CHECK_LIBS
11406 * check/gst/gstevent.c: (event_probe), (test_event),
11409 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
11410 (gst_base_src_start), (gst_base_src_stop),
11411 (gst_base_src_activate_push), (gst_base_src_activate_pull),
11412 (gst_base_src_change_state):
11413 Sprinkle gst_base_src_stop liberally around error paths to fix
11414 problems reusing a source after failed state changes.
11415 * gst/base/gsttypefindhelper.c: (helper_find_peek),
11416 (helper_find_suggest), (gst_type_find_helper):
11417 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
11419 * docs/gst/tmpl/gstevent.sgml:
11420 Migrate part of the docs from the SGML file. Wait for ensonic to
11421 tell me how I did it wrong ;)
11422 * tools/gst-typefind.c: (main):
11423 Extra robustness to state changes between files.
11425 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
11427 * check/Makefile.am:
11428 don't valgrind the controller test - it's leaking - Stefan, HELP
11429 * gst/check/gstcheck.c: (gst_check_message_error),
11430 (gst_check_chain_func), (gst_check_setup_element),
11431 (gst_check_teardown_element), (gst_check_setup_src_pad),
11432 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
11433 (gst_check_teardown_sink_pad):
11434 * gst/check/gstcheck.h:
11435 add a bunch of methods to set up elements, and src and sink pads
11436 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
11437 * check/elements/identity.c: (setup_identity), (cleanup_identity),
11440 * gst/gstmessage.c:
11442 whitespace/doc fixes
11444 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
11446 * gst/gstelement.h:
11447 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
11448 be handled by the application and not always printed as well
11450 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
11452 * check/Makefile.am:
11454 * gst/check/gstcheck.c: (gst_check_message_error):
11455 * gst/check/gstcheck.h:
11456 add a fail_unless_equals_int
11457 add fail_unless for error messages
11459 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
11461 * check/Makefile.am:
11463 * common/Makefile.am:
11464 * common/check.mak:
11466 factor out some of the common stuff so we can use it
11468 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
11470 * check/Makefile.am:
11471 * check/gst/gstiterator.c: (GST_START_TEST):
11472 * check/gst/gstsystemclock.c: (GST_START_TEST),
11473 (gst_systemclock_suite):
11474 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
11476 valgrind more tests
11478 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
11480 * check/elements/.cvsignore:
11481 * check/elements/gstfakesrc.c:
11482 rename to name of element
11483 * check/elements/identity.c: (chain_func), (event_func),
11484 (setup_identity), (cleanup_identity), (GST_START_TEST),
11485 (identity_suite), (main):
11486 add a test for identity
11487 * check/Makefile.am:
11488 * pkgconfig/Makefile.am:
11489 * pkgconfig/gstreamer-check.pc.in:
11490 * pkgconfig/gstreamer-check-uninstalled.pc.in:
11494 move the check stuff to a library that gets installed
11495 * check/gst-libs/controller.c: (GST_START_TEST):
11496 * check/gst-libs/gdp.c:
11497 * check/gst/gst.c: (GST_START_TEST):
11498 * check/gst/gstbin.c:
11499 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
11500 * check/gst/gstbus.c:
11501 * check/gst/gstcaps.c: (GST_START_TEST):
11502 * check/gst/gstelement.c:
11503 * check/gst/gstghostpad.c:
11504 * check/gst/gstiterator.c:
11505 * check/gst/gstmessage.c:
11506 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
11507 * check/gst/gstobject.c:
11508 * check/gst/gstpad.c: (GST_START_TEST):
11509 * check/gst/gststructure.c: (GST_START_TEST):
11510 * check/gst/gstsystemclock.c: (GST_START_TEST),
11511 (gst_systemclock_suite):
11512 * check/gst/gsttag.c: (gst_tag_suite):
11513 * check/gst/gstvalue.c:
11514 * check/pipelines/cleanup.c:
11515 * check/pipelines/simple_launch_lines.c:
11516 * check/states/sinks.c:
11517 change include statement
11519 * docs/gst/gstreamer-sections.txt:
11520 * docs/gst/tmpl/gstpad.sgml:
11521 document more pad stuff
11522 * gst/gstminiobject.c: (gst_mini_object_ref),
11523 (gst_mini_object_unref):
11526 2005-08-19 Stefan Kost <ensonic@users.sf.net>
11528 * docs/gst/tmpl/gst.sgml:
11530 eliminate another tmpl file, fix spelling in the long-description
11532 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
11534 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
11535 (test_event), (timediff), (gstevents_suite):
11536 Should fix build on 64-bit arch's
11538 2005-08-18 Andy Wingo <wingo@pobox.com>
11540 Make sure that when a pipeline goes to PLAYING, that data has
11541 actually hit the sink.
11543 * check/states/sinks.c (test_sink): A sink that doesn't get any
11544 data shouldn't return SUCCESS for going to either PLAYING or
11545 PAUSED. Test also the return values on the way back down.
11547 * gst/gstelement.c (gst_element_set_state): When changing the
11548 state of an element currently changing state asynchronously, go to
11549 lost-state after commiting the pending state. Makes future calls
11550 to get_state continue to return ASYNC.
11552 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
11553 ASYNC when going to PLAYING if we still don't have preroll, as can
11554 happen with live sources.
11556 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
11558 * docs/pwg/advanced-types.xml:
11559 Hack long paragraph into 2 chunks as a workaround for buggy
11560 jadetex version in sid and breezy that loops infinitely and
11563 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
11565 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
11566 (test_event), (timediff), (gstevents_suite):
11567 Provide more error margin in clock measurements to allow for
11568 g_get_current_time inaccuracies.
11570 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
11572 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
11573 (test_event), (timediff), (gstevents_suite):
11574 Fix error message output so I might be able to tell why the
11575 test works here but fails on the build farm.
11577 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
11579 * check/Makefile.am:
11580 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
11581 (test_event), (timediff), (gstevents_suite), (main):
11584 * docs/design/part-seeking.txt:
11585 Spelling correction
11587 * docs/gst/tmpl/gstevent.sgml:
11588 * docs/gst/tmpl/gstfakesrc.sgml:
11591 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
11592 Treat a buffer-without-newsegment the same as a receiving
11593 a newsegment not in time format, and disable syncing to the clock
11596 * gst/gstbus.c: (gst_bus_set_sync_handler):
11597 Assert if anyone tries to replace the existing sync_handler for bus,
11598 as only the owner should be setting it.
11601 Have a fixed set of custom event enums with events identified by
11602 their structure name (as in 0.8), rather than a free-for-all
11603 allowing collisions between enum values from different plugins.
11605 * gst/gstpad.c: (gst_pad_class_init):
11608 * gst/gstqueue.c: (gst_queue_handle_sink_event):
11609 Handle out-of-band downstream events from the sending thread.
11611 2005-08-17 Andy Wingo <wingo@pobox.com>
11613 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
11614 play-timeout==0 to mean no timeout at all. In that case, don't
11615 bother with a get_state or a warning, just return directly, even
11618 * gst/base/gstbasetransform.c: Debug changes.
11621 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
11622 ensure bins post state change messages. A bit of a hack but I can't
11623 think of a way to avoid it.
11625 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
11627 2005-08-16 Andy Wingo <wingo@pobox.com>
11629 * gst/base/gstadapter.h:
11630 * gst/base/gstadapter.c (gst_adapter_take): New function, like
11631 peek() but you own the data. Not terribly efficient atm.
11633 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11635 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
11636 (gst_element_found_tags):
11638 Add two utility functions for tag handling.
11640 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11642 * docs/manual/advanced-dataaccess.xml:
11643 * docs/manual/basics-helloworld.xml:
11644 Fix docs to use _bin_add() before _link(), which fixes the examples
11645 with recent core versions (reported by Madhan Raj M
11646 <raj_madan@rediffmail.com>, #313199).
11648 2005-08-16 Wim Taymans <wim@fluendo.com>
11650 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
11651 Added subtract checks.
11653 * docs/design/part-events.txt:
11654 Some more docs about newsegment
11656 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
11659 * gst/gstcaps.c: (gst_caps_to_string):
11660 Add comments, cleanups.
11662 * gst/gstelement.c: (gst_element_save_thyself):
11665 * gst/gstvalue.c: (gst_value_collect_int_range),
11666 (gst_string_unwrap), (gst_value_union_int_int_range),
11667 (gst_value_union_int_range_int_range),
11668 (gst_value_intersect_int_int_range),
11669 (gst_value_intersect_int_range_int_range),
11670 (gst_value_intersect_double_double_range),
11671 (gst_value_intersect_double_range_double_range),
11672 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
11673 (gst_value_subtract_int_range_int),
11674 (gst_value_subtract_double_range_double),
11675 (gst_value_subtract_double_range_double_range),
11676 (gst_value_subtract_from_list), (gst_value_subtract_list),
11677 (gst_value_can_compare), (gst_value_compare_fraction):
11678 Cleanups, add comments, remove unneeded asserts.
11680 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
11682 * tools/gst-launch.c: (event_loop):
11683 don't convert NULL structures to strings
11685 2005-08-15 Stefan Kost <ensonic@users.sf.net>
11687 * docs/gst/gstreamer-sections.txt:
11688 made some defines private
11689 * docs/gst/tmpl/gstconfig.sgml:
11690 * docs/gst/tmpl/gstqueue.sgml:
11691 * docs/gst/tmpl/gsttaglist.sgml:
11692 * docs/gst/tmpl/gsttypes.sgml:
11693 * docs/gst/tmpl/gstutils.sgml:
11694 * docs/pwg/appendix-porting.xml:
11695 * gst/base/gstbasesink.h:
11696 * gst/base/gstbasesrc.c:
11697 * gst/base/gstbasesrc.h:
11698 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
11699 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
11700 * gst/gstelement.c: (gst_element_class_init):
11701 * gst/gstpad.c: (gst_pad_class_init):
11702 * gst/gstqueue.c: (gst_queue_class_init):
11703 * gst/gstxml.c: (gst_xml_class_init):
11704 documented all undocumented signal inline
11705 * libs/gst/controller/gst-controller.h:
11708 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11710 * docs/pwg/appendix-porting.xml:
11711 Document _set_link_function -> _set_setcaps_function.
11713 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
11715 * check/Makefile.am:
11716 add a .check target for running the check
11717 * check/gst-libs/controller.c: (GST_START_TEST):
11719 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
11720 complete checks for gstbuffer; would be nice if I could get the
11721 gcov stuff to work so I can see if I actually completed gstbuffer.c
11722 * check/gstcheck.h:
11723 add ASSERT_BUFFER_REFCOUNT
11725 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
11727 * docs/gst/gstreamer-sections.txt:
11728 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
11730 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
11731 spew out a warning if a tag that is already registered
11732 is re-registered, unless it is re-registered with a
11733 different type (#308438).
11735 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
11737 * docs/pwg/appendix-porting.xml:
11738 * docs/pwg/building-state.xml:
11739 Add some paragraphs about state changes in 0.9 to the PWG
11740 and the porting guide, in particular about the new meaning
11741 of GST_STATE_PAUSED and how to write state change functions
11742 with concurrent access by multiple threads in mind.
11744 2005-08-11 Stefan Kost <ensonic@users.sf.net>
11746 * docs/gst/gstreamer-docs.sgml:
11747 * docs/libs/gstreamer-libs-docs.sgml:
11748 added deprecation and since indexes
11749 * libs/gst/controller/gst-controller.c:
11750 * libs/gst/controller/gst-helper.c:
11754 2005-08-11 Wim Taymans <wim@fluendo.com>
11756 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
11757 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
11758 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
11759 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
11760 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
11761 (gst_ghost_pad_set_target):
11762 Actually implement (re)setting the target on a ghostpad
11763 as described in the docs.
11765 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
11767 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
11768 Check whether GST_DEBUG_NO_COLOR environment variable is
11769 set and disable coloured debug output if that is the case.
11771 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
11773 * gst/base/gsttypefindhelper.c: (helper_find_peek),
11774 (gst_type_find_helper):
11775 The memory returned by gst_type_find_peek() needs to
11776 stay valid until the end of a typefind function, and
11777 typefind functions may keep results from different
11778 offsets around, so we can't just unref the buffer from
11779 the previous _peek(), but have to save all buffers
11780 returned by _peek() until typefinding is done and only
11783 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
11785 * docs/gst/gstreamer-sections.txt:
11787 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
11789 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11791 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
11792 Fix a pretty good memleak.
11794 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
11796 * gst/gstiterator.h:
11797 Fix wrong include and 'make distcheck'.
11799 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11801 * gst/gstbin.c: (bin_bus_handler):
11802 Use gst_element_post_message() instead.
11804 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
11806 * gst/base/gstadapter.h:
11807 * gst/base/gstbasesink.h:
11808 * gst/base/gstbasesrc.h:
11809 * gst/base/gstbasetransform.h:
11810 * gst/base/gstcollectpads.h:
11811 * gst/base/gstpushsrc.h:
11812 * gst/gstiterator.h:
11813 Add padding to our base elements' class and instance structs and
11814 to GstIterator (you will need to rebuild all plugins and apps!)
11816 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11818 * gst/gstbin.c: (bin_bus_handler):
11819 Make default message forwarding from child->bus to bin->bus
11820 threadsafe and make it not emit warnings if the parent has no bus.
11822 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11824 * gst/gstelement.c: (activate_pads):
11825 On paused->ready, set pad->caps to NULL, as is the documented
11826 behaviour in this state change. Fixes playback of series of
11827 media files when visualization is enabled in Totem.
11829 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11831 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
11832 Allow NULL as filter-caps (which means "any").
11834 2005-08-05 Stefan Kost <ensonic@users.sf.net>
11836 * docs/libs/gstreamer-libs-sections.txt:
11837 * libs/gst/controller/gst-controller.c:
11838 * libs/gst/controller/gst-controller.h:
11839 * libs/gst/controller/gst-helper.c:
11840 adding more entries to the docs and fix small doc-bugs
11842 2005-08-05 Stefan Kost <ensonic@users.sf.net>
11844 * docs/gst/gstreamer-docs.sgml:
11845 * docs/gst/gstreamer-sections.txt:
11846 * docs/gst/gstreamer.types:
11847 * docs/gst/tmpl/gstbasesink.sgml:
11848 * docs/gst/tmpl/gstbasesrc.sgml:
11849 * docs/gst/tmpl/gstbasetransform.sgml:
11850 * docs/gst/tmpl/gstfakesrc.sgml:
11851 * gst/base/gstcollectpads.c:
11852 * gst/base/gstcollectpads.h:
11853 * libs/gst/controller/gst-controller.c:
11854 * libs/gst/controller/gst-controller.h:
11855 * libs/gst/controller/gst-helper.c:
11856 * libs/gst/controller/gst-interpolation.c:
11857 * libs/gst/controller/lib.c:
11858 added long/short desc for controller docs
11859 added collectpads base class docs
11860 added correct includes to base-class docs
11862 2005-08-05 Stefan Kost <ensonic@users.sf.net>
11864 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
11865 (gst_test_mono_source_set_property),
11866 (gst_test_mono_source_class_init), (GST_START_TEST),
11867 (gst_controller_suite):
11868 * docs/gst/gstreamer-docs.sgml:
11869 * docs/gst/gstreamer-sections.txt:
11870 * docs/gst/gstreamer.types:
11871 * docs/libs/gstreamer-libs-docs.sgml:
11872 * docs/libs/gstreamer-libs-sections.txt:
11873 * gst/base/gstadapter.c:
11874 * libs/gst/controller/gst-controller.c:
11875 (gst_controlled_property_new), (gst_controlled_property_free),
11876 (gst_controller_new_valist),
11877 (gst_controller_remove_properties_valist),
11878 (gst_controller_sink_values), (_gst_controller_finalize):
11879 * libs/gst/controller/gst-controller.h:
11880 * libs/gst/controller/gst-helper.c:
11881 (gst_object_control_properties), (gst_object_uncontrol_properties),
11882 (gst_object_get_controller), (gst_object_set_controller),
11883 (gst_object_sink_values), (gst_object_get_value_arrays),
11884 (gst_object_get_value_array):
11885 more tests (and fixes) for the controller
11886 more docs for the controller
11887 integrated companies docs for the adapter
11889 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
11891 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
11892 (GST_START_TEST), (fakesrc_suite):
11893 add tests for sizetype
11895 2005-08-04 Andy Wingo <wingo@pobox.com>
11897 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
11898 fixes buffer_alloc proxying among other things.
11900 * gst/base/gstbasetransform.c:
11901 * gst/base/gstbasetransform.h:
11902 Revert patch to gstbasetransform from 7-28 removing
11905 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
11906 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
11907 Semantics changed, should return not the size of the output buffer
11908 but the byte size of a buffer with a given caps.
11910 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
11912 (gst_base_transform_configure_caps): Don't set out_size here: (in,
11913 out) are not the pad caps until setcaps finishes.
11914 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
11915 not-in-place case as well. Deal with changing from in-place to
11916 not-in-place within calling pad_alloc_buffer. Still a bit
11917 concerned about the overhead here...
11919 2005-08-03 Andy Wingo <wingo@pobox.com>
11921 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
11922 fixating is an error.
11924 2005-08-04 Edward Hervey <edward@fluendo.com>
11926 * gst/base/gstadapter.h:
11927 Added gst_adapter_get_type() to the header
11929 2005-08-03 Stefan Kost <ensonic@users.sf.net>
11931 * check/Makefile.am:
11932 * check/gst-libs/controller.c:
11933 * libs/gst/controller/gst-controller.c:
11934 (gst_controller_new_valist):
11935 added check test suite for the controller
11936 * gst/base/gstpushsrc.c:
11939 2005-08-03 Stefan Kost <ensonic@users.sf.net>
11941 * docs/gst/Makefile.am:
11942 * docs/gst/gstreamer-docs.sgml:
11943 * docs/gst/gstreamer-sections.txt:
11944 * docs/gst/gstreamer.types:
11945 * docs/gst/tmpl/gstfakesrc.sgml:
11947 * gst/base/gstbasesink.c:
11948 * gst/base/gstbasesink.h:
11949 * gst/base/gstbasesrc.c:
11950 * gst/base/gstbasesrc.h:
11951 * gst/base/gstbasetransform.c:
11952 * gst/base/gstpushsrc.c:
11953 * gst/base/gstpushsrc.h:
11954 add short/long description docs to base classes
11955 add pushsrc to the docs
11956 remove consolidated doc fragments
11958 2005-08-03 Stefan Kost <ensonic@users.sf.net>
11961 * docs/libs/Makefile.am:
11962 * docs/libs/gstreamer-libs-docs.sgml:
11963 * docs/libs/gstreamer-libs-sections.txt:
11964 * docs/libs/gstreamer-libs.types:
11965 * examples/Makefile.am:
11966 * examples/controller/.cvsignore:
11967 * examples/controller/Makefile.am:
11968 * examples/controller/audio-example.c: (main):
11969 * libs/gst/Makefile.am:
11970 * libs/gst/controller/.cvsignore:
11971 * libs/gst/controller/Makefile.am:
11972 * libs/gst/controller/gst-controller.c:
11973 (on_object_controlled_property_changed), (gst_timed_value_compare),
11974 (gst_timed_value_find),
11975 (gst_controlled_property_set_interpolation_mode),
11976 (gst_controlled_property_new), (gst_controlled_property_free),
11977 (gst_controller_find_controlled_property),
11978 (gst_controller_new_valist), (gst_controller_new),
11979 (gst_controller_remove_properties_valist),
11980 (gst_controller_remove_properties), (gst_controller_set),
11981 (gst_controller_set_from_list), (gst_controller_unset),
11982 (gst_controller_get), (gst_controller_get_all),
11983 (gst_controller_sink_values), (gst_controller_get_value_arrays),
11984 (gst_controller_get_value_array),
11985 (gst_controller_set_interpolation_mode),
11986 (_gst_controller_finalize), (_gst_controller_init),
11987 (_gst_controller_class_init), (gst_controller_get_type):
11988 * libs/gst/controller/gst-controller.h:
11989 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
11990 (g_object_uncontrol_properties), (g_object_get_controller),
11991 (g_object_set_controller), (g_object_sink_values),
11992 (g_object_get_value_arrays), (g_object_get_value_array):
11993 * libs/gst/controller/gst-interpolation.c:
11994 (gst_controlled_property_find_timed_value_node),
11995 (interpolate_none_get), (interpolate_trigger_get),
11996 (interpolate_trigger_get_value_array):
11997 * libs/gst/controller/lib.c: (gst_controller_init):
11998 * pkgconfig/Makefile.am:
11999 * pkgconfig/gstreamer-control-uninstalled.pc.in:
12000 * pkgconfig/gstreamer-control.pc.in:
12001 * testsuite/Makefile.am:
12002 * testsuite/controller/.cvsignore:
12003 * testsuite/controller/Makefile.am:
12004 * testsuite/controller/interpolator.c: (main):
12005 added controller code
12006 removed dparam pc files
12008 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
12009 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
12010 (gst_collectpads_stop):
12011 Broadcast the condition when shutting down, to make sure we wake all
12012 threads up. Shut down pads on finalize, for safety.
12014 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
12015 * gst/base/gstbasetransform.c: (gst_base_transform_init),
12016 (gst_base_transform_handle_buffer),
12017 (gst_base_transform_change_state):
12018 Handle PAUSED->READY->PAUSED transition after negotiation
12020 * gst/gstmessage.c: (gst_message_init):
12021 Extra piece of debug for new messages.
12023 2005-08-01 Stefan Kost <ensonic@users.sf.net>
12026 * docs/gst/tmpl/gstbasesrc.sgml:
12027 * docs/gst/tmpl/gstelement.sgml:
12028 * docs/gst/tmpl/gstevent.sgml:
12029 * docs/gst/tmpl/gstfakesrc.sgml:
12030 * docs/gst/tmpl/gstformat.sgml:
12031 * docs/gst/tmpl/gstghostpad.sgml:
12032 * docs/gst/tmpl/gstpad.sgml:
12033 * docs/gst/tmpl/gstquery.sgml:
12034 * docs/gst/tmpl/gststructure.sgml:
12035 * docs/gst/tmpl/gsttaglist.sgml:
12036 * docs/gst/tmpl/gstvalue.sgml:
12037 * docs/libs/gstreamer-libs-docs.sgml:
12038 * docs/libs/gstreamer-libs-sections.txt:
12039 * docs/libs/gstreamer-libs.types:
12040 * libs/gst/Makefile.am:
12041 * libs/gst/control/.cvsignore:
12042 * libs/gst/control/Makefile.am:
12043 * libs/gst/control/control.c:
12044 * libs/gst/control/control.h:
12045 * libs/gst/control/dparam.c:
12046 * libs/gst/control/dparam.h:
12047 * libs/gst/control/dparam_smooth.c:
12048 * libs/gst/control/dparam_smooth.h:
12049 * libs/gst/control/dparamcommon.h:
12050 * libs/gst/control/dparammanager.c:
12051 * libs/gst/control/dparammanager.h:
12052 * libs/gst/control/dplinearinterp.c:
12053 * libs/gst/control/dplinearinterp.h:
12054 * libs/gst/control/unitconvert.c:
12055 * libs/gst/control/unitconvert.h:
12056 * testsuite/Makefile.am:
12057 * testsuite/dynparams/.cvsignore:
12058 * testsuite/dynparams/Makefile.am:
12059 * testsuite/dynparams/dparamstest.c:
12060 * tools/Makefile.am:
12061 * tools/gst-inspect.c: (print_element_info), (main):
12062 * tools/gst-xmlinspect.c: (print_element_info), (main):
12063 deactivate and remove dparams (libgstcontrol)
12065 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
12067 * gst/elements/gsttypefindelement.c:
12068 (gst_type_find_element_have_type), (gst_type_find_element_init),
12069 (stop_typefinding), (gst_type_find_element_handle_event),
12070 (gst_type_find_element_chain), (gst_type_find_element_getrange):
12071 * gst/elements/gsttypefindelement.h:
12072 Set caps on all outgoing buffers, not just the first one.
12074 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
12076 * gst/elements/gsttypefindelement.c:
12077 (gst_type_find_element_have_type),
12078 (gst_type_find_element_check_set_buffer_caps),
12079 (gst_type_find_element_init), (stop_typefinding),
12080 (gst_type_find_element_handle_event),
12081 (gst_type_find_element_chain), (gst_type_find_element_getrange):
12082 * gst/elements/gsttypefindelement.h:
12083 Set caps on first outgoing buffer when we've found the type.
12085 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
12087 * docs/gst/gstreamer-docs.sgml:
12088 * docs/gst/gstreamer-sections.txt:
12089 * docs/gst/tmpl/gstscheduler.sgml:
12090 * docs/gst/tmpl/gstschedulerfactory.sgml:
12091 Remove some old cruft from docs.
12093 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
12096 Fix inline docs for GstPadLinkReturn.
12098 * gst/gststructure.c: (gst_structure_has_name):
12099 * gst/gststructure.h:
12100 * docs/gst/gstreamer-sections.txt:
12101 New API: gst_structure_has_name().
12103 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
12106 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
12107 and _LARGEFILE_SOURCE in config.h as required. Do not
12108 export those flags in our .pc files any longer (#142209).
12110 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
12112 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
12113 (gst_file_sink_do_seek), (gst_file_sink_event),
12114 (gst_file_sink_get_current_offset), (gst_file_sink_render):
12115 Redo seek/tell calls with large file support in mind; add some
12116 debugging messages; add log message that tells us when large
12117 file support is unavailable or not enabled for some reason.
12119 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
12120 Add log message that tells us when large file support
12121 is unavailable or not enabled for some reason.
12123 2005-07-29 Wim Taymans <wim@fluendo.com>
12125 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
12126 Added test for removing an element with ghostpad from a bin.
12127 Fixed test as current implementation does the right thing.
12129 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
12130 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
12131 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
12132 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
12133 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
12134 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
12135 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
12136 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
12137 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
12138 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
12139 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
12140 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
12141 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
12142 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
12143 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
12144 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
12145 * gst/gstghostpad.h:
12146 Clean up ghostpads, remove properties for internal stuff.
12149 Prepare for switching targets, not all use cases work yet.
12151 2005-07-29 Wim Taymans <wim@fluendo.com>
12153 * docs/design/part-gstghostpad.txt:
12156 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
12157 (gst_bin_remove_func):
12158 Unlinking pads while holding the bin LOCK is not a good
12161 * gst/gstpad.c: (gst_pad_class_init),
12162 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
12163 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
12164 No prob setting template after creating the pad.
12166 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
12168 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
12169 (gst_bus_peek), (gst_bus_source_dispatch),
12170 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
12171 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
12172 gst_bus_poll may be called from other threads. Handle
12173 this nicely by not making poll_data disappear off the
12174 stack once gst_bus_poll returns.
12175 gst_bus_peek now increments the refcount on the returned
12178 2005-07-29 Wim Taymans <wim@fluendo.com>
12180 * docs/design/part-gstghostpad.txt:
12181 Overview of current GhostPad datastructures and use
12182 cases for changing the target.
12184 2005-07-28 Wim Taymans <wim@fluendo.com>
12186 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
12187 Added checks for hierarchy consistency whan adding linked
12190 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
12191 Added check to test element scheduling without bin/pipeline.
12193 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
12194 First add elements to bin, then link.
12196 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
12197 (gst_bin_remove_func):
12198 Unlink pads from elements added/removed from bin to maintain
12199 hierarchy consistency.
12201 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12203 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12204 (gst_base_transform_handle_buffer):
12205 * gst/base/gstbasetransform.h:
12206 Remove broken delay_configure (fixes renegotiation of software
12207 scaling pipelines); remove some leftover printf()s.
12209 2005-07-28 Wim Taymans <wim@fluendo.com>
12211 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
12212 Added some more tests for wrong hierarchy
12214 * docs/design/part-overview.txt:
12217 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
12220 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
12221 (gst_element_dispose):
12222 Some more cleanups.
12224 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
12225 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
12226 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
12227 (gst_pad_set_caps), (gst_pad_send_event):
12228 Check for correct hierarchy when linking pads. Moving to
12229 strict requirement for ghostpads when linking elements in
12233 Clean ups. Added WRONG_HIERARCHY return value.
12235 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12237 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
12238 Better debug if no transform is possible.
12240 2005-07-27 Wim Taymans <wim@fluendo.com>
12242 * docs/random/wtay/network-transp:
12243 Some old doc I had.
12245 2005-07-27 Wim Taymans <wim@fluendo.com>
12247 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
12248 (gst_dp_event_from_packet):
12249 Fix serialization of seek events.
12251 2005-07-27 Wim Taymans <wim@fluendo.com>
12253 * check/gst-libs/gdp.c: (GST_START_TEST):
12254 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
12255 Fix compilation and fix event serialization.
12257 2005-07-27 Wim Taymans <wim@fluendo.com>
12260 * docs/design/part-TODO.txt:
12261 * docs/design/part-events.txt:
12264 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12265 (gst_base_sink_event), (gst_base_sink_do_sync),
12266 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
12267 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12268 (gst_base_src_do_seek), (gst_base_src_event_handler),
12269 (gst_base_src_loop):
12270 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12271 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
12272 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
12273 (gst_base_transform_event), (gst_base_transform_handle_buffer),
12274 (gst_base_transform_set_passthrough),
12275 (gst_base_transform_is_passthrough):
12276 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
12277 * gst/elements/gstfilesink.c: (gst_file_sink_event):
12283 * gst/gstelement.c: (gst_element_seek):
12284 * gst/gstelement.h:
12285 Update gst_element_seek.
12287 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
12288 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
12289 (gst_event_new_flush_start), (gst_event_new_flush_stop),
12290 (gst_event_new_eos), (gst_event_new_newsegment),
12291 (gst_event_parse_newsegment), (gst_event_new_tag),
12292 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
12293 (gst_event_parse_qos), (gst_event_new_seek),
12294 (gst_event_parse_seek), (gst_event_new_navigation):
12296 Make GstEvent use GstStructure. Add parsing code, make sure the
12297 API is sufficiently generic.
12298 Mark possible directions of events and serialization.
12300 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
12301 (_gst_message_copy), (gst_message_new_segment_start),
12302 (gst_message_new_segment_done), (gst_message_new_custom),
12303 (gst_message_parse_segment_start),
12304 (gst_message_parse_segment_done):
12307 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
12308 (gst_pad_set_caps), (gst_pad_send_event):
12309 Update for new events.
12310 Catch events sent in wrong directions.
12312 * gst/gstqueue.c: (gst_queue_link_src),
12313 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
12314 (gst_queue_handle_src_query):
12319 Remove event code from this file.
12321 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
12322 (gst_dp_event_from_packet):
12325 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12327 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
12328 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
12329 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
12330 Make debugging actually useful.
12332 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12334 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
12335 (gst_pad_fixate_caps):
12336 Implement default fixation once again, so that gst_pad_fixate()
12337 actually does anything at all. This probably needs to be some
12338 sort of a last resort, and use profile-based fixation first, but
12339 since that doesn't exist yet, this is the best we have. Fixes
12340 visualization in Totem.
12342 2005-07-22 Wim Taymans <wim@fluendo.com>
12344 * docs/design/part-events.txt:
12347 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12348 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
12349 (gst_base_sink_activate_pull):
12350 Some more comments.
12352 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
12353 (gst_fake_src_create):
12354 Fix handoff marshall.
12356 * gst/elements/gstidentity.c: (gst_identity_class_init),
12357 (gst_identity_transform_ip):
12358 We're a real inplace element.
12360 * gst/gstbus.c: (gst_bus_post):
12361 Added some comments.
12363 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
12364 * tests/muxing/case1.c: (main):
12365 * tests/sched/dynamic-pipeline.c: (main):
12366 * tests/sched/interrupt1.c: (main):
12367 * tests/sched/interrupt2.c: (main):
12368 * tests/sched/interrupt3.c: (main):
12369 * tests/sched/runxml.c: (main):
12370 * tests/sched/sched-stress.c: (main):
12371 * tests/seeking/seeking1.c: (event_received), (main):
12372 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
12374 * tests/threadstate/threadstate3.c: (main):
12375 * tests/threadstate/threadstate4.c: (main):
12376 * tests/threadstate/threadstate5.c: (main):
12379 2005-07-21 Wim Taymans <wim@fluendo.com>
12381 * docs/design/part-seeking.txt:
12382 Some small additions.
12384 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12385 (gst_base_sink_get_times), (gst_base_sink_do_sync),
12386 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
12387 * gst/base/gstbasesink.h:
12388 discont values are gint64, handle the math correctly.
12390 * gst/base/gstbasesrc.c: (gst_base_src_loop):
12391 Make the basesrc report error if the source pad is not linked.
12393 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
12394 (gst_queue_loop), (gst_queue_handle_src_query),
12395 (gst_queue_src_activate_push):
12396 Make queue collect data even if the srcpad is not linked.
12397 Start pushing out data as soon as it is linked.
12399 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
12401 Added gst_flow_get_name() to ease error reporting.
12403 2005-07-20 Wim Taymans <wim@fluendo.com>
12405 * gst/gstmessage.c: (gst_message_new_segment_start),
12406 (gst_message_new_segment_done), (gst_message_parse_segment_start),
12407 (gst_message_parse_segment_done):
12408 * gst/gstmessage.h:
12409 Added a bunch of messages for advanced seeking.
12411 * gst/parse/grammar.y:
12412 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
12413 (gst_dpman_state_changed):
12414 Fix some new-pad -> pad-added signals
12416 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12418 * docs/manual/appendix-porting.xml:
12419 * docs/pwg/appendix-porting.xml:
12420 Document new-pad/state-change signal renames and the FixedList
12423 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12425 * docs/manual/advanced-autoplugging.xml:
12426 * docs/manual/basics-helloworld.xml:
12427 * docs/manual/basics-pads.xml:
12428 * docs/random/ds/0.9-suggested-changes:
12429 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
12430 * gst/gstelement.h:
12434 * gst/gststructure.c: (gst_structure_value_get_generic_type),
12435 (gst_structure_parse_array), (gst_structure_parse_value):
12436 * gst/gstvalue.c: (gst_type_is_fixed),
12437 (gst_value_list_prepend_value), (gst_value_list_append_value),
12438 (gst_value_list_get_size), (gst_value_list_get_value),
12439 (gst_value_transform_array_string), (gst_value_serialize_array),
12440 (gst_value_deserialize_array), (gst_value_intersect_array),
12441 (gst_value_is_fixed), (_gst_value_initialize):
12443 GstElement::new-pad -> pad-added, GstElement::state-change ->
12444 state-changed, GstValueFixedList -> GstValueArray, add format and
12445 flags as their own arguments in gst_element_seek() (should improve
12446 "bindeability"), remove function generators since they don't work
12447 under a whole bunch of compilers (they were deprecated already
12450 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12452 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
12453 (_gst_debug_register_funcptr):
12455 Fix illegal cast on some platforms (#309253).
12457 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12459 * gst/gstmessage.c: (gst_message_new_custom):
12460 * gst/gstmessage.h:
12461 Add _new_custom, make _new_application a macro to _new_custom.
12463 2005-07-20 Wim Taymans <wim@fluendo.com>
12465 * gst/base/gstbasesrc.c: (gst_base_src_init),
12466 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
12467 * gst/base/gstbasesrc.h:
12468 Add a gboolean to decide when to push out a discont.
12470 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
12471 (gst_queue_loop), (gst_queue_handle_src_query),
12472 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
12473 (gst_queue_set_property), (gst_queue_get_property):
12476 * tests/threadstate/threadstate1.c: (main):
12477 Make a thread test compile and run... very silly..
12480 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12482 * docs/manual/appendix-porting.xml:
12483 Mention removal of libgstgconf-0.9.la and existence of gconf
12486 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12488 * docs/pwg/advanced-clock.xml:
12489 * docs/pwg/appendix-porting.xml:
12490 * docs/pwg/intro-preface.xml:
12491 * docs/pwg/other-base.xml:
12492 * docs/pwg/other-manager.xml:
12493 * docs/pwg/other-nton.xml:
12494 * docs/pwg/other-ntoone.xml:
12495 * docs/pwg/other-oneton.xml:
12496 * docs/pwg/pwg.xml:
12497 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
12498 demuxer), remove n-to-n (was never written), fix some code examples
12499 and links and update the porting section to include all this.
12501 2005-07-19 Wim Taymans <wim@fluendo.com>
12503 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
12504 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
12505 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
12506 (gst_queue_src_activate_push), (gst_queue_change_state),
12507 (gst_queue_get_property):
12509 Propagate GstFlowReturn more intelligently upstream and output
12510 an ERROR/EOS when streaming stopped due to fatal error.
12512 2005-07-19 Wim Taymans <wim@fluendo.com>
12514 * tools/gst-launch.c: (check_intr), (event_loop), (main):
12515 Don't block forever for the state change to complete, the
12516 pipeline already did with a sensible timeout.
12518 2005-07-19 Wim Taymans <wim@fluendo.com>
12520 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
12521 Make sure we never call the create function is we
12524 2005-07-19 Andy Wingo <wingo@pobox.com>
12526 * gst/parse/parse.l: Attempt to solve bug #172815.
12528 2005-07-19 Wim Taymans <wim@fluendo.com>
12530 * docs/design/part-clocks.txt:
12531 * docs/design/part-events.txt:
12532 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
12533 Small docs updates.
12534 Only update the seeking values when we are not
12537 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
12539 * gst/base/gstbasesrc.c: (gst_base_src_loop):
12540 Oops, ignore the result of gst_pad_push_event here.
12542 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
12544 * gst/base/gstbasesrc.c: (gst_base_src_loop),
12545 (gst_base_src_activate_push):
12546 Send discont event from the loop function, as pads
12547 aren't activated yet in the activate_push handler.
12549 * gst/gstbin.c: (bin_bus_handler):
12550 Don't leak element name.
12552 2005-07-18 Andy Wingo <wingo@pobox.com>
12554 * configure.ac: Use AS_LIBTOOL_TAGS.
12556 2005-07-18 Wim Taymans <wim@fluendo.com>
12558 * docs/gst/gstreamer.types:
12559 Remove deleted types.
12561 2005-07-18 Wim Taymans <wim@fluendo.com>
12563 * check/elements/gstfakesrc.c: (GST_START_TEST):
12566 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
12567 (init_popt_callback):
12569 * gst/gst_private.h:
12570 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
12571 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
12574 * gst/gstconfig.h.in:
12575 * gst/gstelement.c: (gst_element_class_init),
12576 (gst_element_set_base_time), (gst_element_get_base_time),
12577 (iterator_fold_with_resync), (gst_element_change_state),
12578 (gst_element_dispose), (gst_element_get_bus):
12579 * gst/gstelement.h:
12580 * gst/gstelementfactory.h:
12581 * gst/gsterror.c: (_gst_core_errors_init):
12584 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
12586 * gst/gstinfo.c: (_gst_debug_init):
12587 * gst/gstmessage.c: (_gst_message_copy):
12588 * gst/gstmessage.h:
12589 * gst/gstminiobject.h:
12592 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
12593 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
12596 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
12597 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
12598 (gst_pipeline_get_last_stream_time):
12599 * gst/gstpipeline.h:
12600 * gst/gstpluginfeature.h:
12602 * gst/gstscheduler.c:
12603 * gst/gstscheduler.h:
12604 * gst/gststructure.h:
12605 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
12606 (gst_task_finalize), (gst_task_func), (gst_task_create),
12607 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
12608 (gst_task_stop), (gst_task_pause):
12610 * gst/gsttypefind.h:
12612 * gst/registries/gstlibxmlregistry.c: (load_feature),
12613 (gst_xml_registry_load), (gst_xml_registry_save_feature):
12614 * gst/registries/gstxmlregistry.c:
12615 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
12616 * gst/schedulers/threadscheduler.c:
12617 * libs/gst/control/dparammanager.h:
12618 * tools/gst-inspect.c: (print_element_list),
12619 (print_plugin_features), (print_element_features):
12620 * tools/gst-xmlinspect.c: (print_element_list),
12621 (print_plugin_info), (main):
12622 Removed plugable schedulers.
12623 Removed Scheduler/Manager from elements.
12624 Removed gsttypes.h, rearranged includes.
12625 Removed dependency pad<->element, element<>pipeline, and
12626 various others, fix includes.
12627 implement gst_pad_get_parent() with gst_object_get_parent()
12628 Make GstTask sefcontained.
12629 Fix _get_state() on GstBin, it did not return ASYNC with a 0
12631 Fix endless loop in iterator_fold_with_resync.
12634 2005-07-18 Wim Taymans <wim@fluendo.com>
12640 2005-07-18 Wim Taymans <wim@fluendo.com>
12643 No more cothreads.h
12645 2005-07-18 Wim Taymans <wim@fluendo.com>
12649 Let's remove these.
12651 2005-07-18 Wim Taymans <wim@fluendo.com>
12653 * docs/design/part-dynamic.txt:
12654 * docs/design/part-events.txt:
12655 * docs/design/part-seeking.txt:
12656 Some more docs in the works.
12658 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12659 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
12660 (gst_base_transform_setcaps), (gst_base_transform_get_size),
12661 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
12662 (gst_base_transform_handle_buffer),
12663 (gst_base_transform_sink_activate_push),
12664 (gst_base_transform_src_activate_pull),
12665 (gst_base_transform_set_passthrough),
12666 (gst_base_transform_is_passthrough):
12669 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
12672 * gst/gstevent.c: (gst_event_finalize):
12675 * gst/gstutils.c: (gst_element_unlink),
12676 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
12677 (gst_pad_proxy_setcaps):
12679 Add _get_parent_element() to get a pads parent as an element.
12681 2005-07-18 Wim Taymans <wim@fluendo.com>
12683 * check/gst/gstbin.c: (GST_START_TEST):
12686 2005-07-18 Wim Taymans <wim@fluendo.com>
12688 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
12689 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
12690 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
12691 (gst_base_sink_event), (gst_base_sink_do_sync),
12692 (gst_base_sink_chain), (gst_base_sink_loop),
12693 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
12694 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
12696 Fix logic for returning ASYNC when not prerolled.
12698 2005-07-18 Wim Taymans <wim@fluendo.com>
12700 * gst/gstqueue.c: (gst_queue_handle_sink_event):
12701 Fix nasty refcount bug.
12703 2005-07-16 Philippe Khalaf <burger@speedy.org>
12705 * gst/elements/gstfdsrc.c:
12706 * gst/elements/gstfdsrc.h:
12707 * gst/elements/gstelements.c:
12708 * gst/elements/Makefile.am:
12709 Ported fdsrc to 0.9.
12711 2005-07-16 Wim Taymans <wim@fluendo.com>
12713 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12714 (gst_base_sink_do_sync):
12717 2005-07-16 Wim Taymans <wim@fluendo.com>
12719 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12720 (gst_base_sink_event), (gst_base_sink_get_times),
12721 (gst_base_sink_do_sync), (gst_base_sink_change_state):
12722 * gst/base/gstbasesink.h:
12723 Store and use discont values when syncing buffers as described
12726 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12727 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
12728 (gst_base_src_activate_push):
12729 Push discont event when starting.
12731 * gst/elements/gstidentity.c: (gst_identity_transform):
12734 * gst/gstbin.c: (gst_bin_change_state):
12735 Small cleanups in base_time distribution.
12737 * gst/gstelement.c: (gst_element_set_base_time),
12738 (gst_element_get_base_time), (gst_element_change_state):
12739 * gst/gstelement.h:
12740 Added methods for the base_time of the element.
12743 * gst/gstpipeline.c: (gst_pipeline_send_event),
12744 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
12745 (gst_pipeline_get_last_stream_time):
12746 * gst/gstpipeline.h:
12748 Handle seeking as described in design doc, remove stream_time
12750 Cleanups clock and stream_time selection code. Added accessors
12751 for the stream_time.
12754 2005-07-16 Andy Wingo <wingo@pobox.com>
12756 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
12759 2005-07-16 Wim Taymans <wim@fluendo.com>
12761 * check/gst/gstbin.c: (GST_START_TEST):
12762 Make elements silent as the deep_notify refs the
12763 parent, which might make the test fail.
12765 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
12766 Don't hold the lock for too long.
12768 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
12770 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
12771 Don't unref the caps we passed to gst_caps_make_writable() after
12772 passing them. gst_caps_make_writable() will do that for us.
12774 2005-07-15 Andy Wingo <wingo@pobox.com>
12776 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
12779 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
12780 own marshalling function for the handoff signal. Properly type the
12781 buffer as a buffer. Fixes some warnings. Should do a more general
12783 (gst_identity_class_init): Plug into the right marshaller.
12785 2005-07-15 Wim Taymans <wim@fluendo.com>
12787 * docs/design/part-TODO.txt:
12788 * docs/design/part-clocks.txt:
12789 * docs/design/part-element-sink.txt:
12790 * docs/design/part-events.txt:
12791 * docs/design/part-gstpipeline.txt:
12792 Updated docs, mostly DISCONT related.
12794 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
12796 * docs/pwg/building-pads.xml:
12797 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
12799 2005-07-15 Andy Wingo <wingo@pobox.com>
12801 * tools/gst-typefind.c: Update, add copyright block.
12803 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
12804 Normalize and truncate caps before fixation.
12807 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
12808 discards all but the first structure from its argument.
12810 2005-07-15 Wim Taymans <wim@fluendo.com>
12812 * gst/base/gstbasetransform.c: (gst_base_transform_init),
12813 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
12814 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
12815 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
12816 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
12817 (gst_base_transform_chain), (gst_base_transform_change_state),
12818 (gst_base_transform_set_passthrough),
12819 (gst_base_transform_is_passthrough):
12820 * gst/base/gstbasetransform.h:
12821 Make passthrough work using the bufferpools.
12822 Changed API a bit, subclasses have to write into a buffer
12823 provided by the base class.
12824 More debug info in nego functions.
12826 * gst/elements/gstidentity.c: (gst_identity_init),
12827 (gst_identity_transform):
12828 Port to new base class.
12830 2005-07-15 Wim Taymans <wim@fluendo.com>
12832 * gst/gstmessage.c: (gst_message_new_state_changed):
12833 * tools/gst-launch.c: (event_loop), (main):
12834 Totally dump messages in -launch with the -m option.
12835 Fix message name for State messages,
12837 2005-07-14 Wim Taymans <wim@fluendo.com>
12839 * gst/base/gstbasesrc.c: (gst_base_src_loop):
12840 Post error messages on errors.
12842 2005-07-14 Wim Taymans <wim@fluendo.com>
12844 * gst/gstcaps.c: (gst_caps_do_simplify):
12848 Define error for stream stopped.
12850 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
12851 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
12852 Do proper return values.
12854 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
12855 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
12856 (gst_pad_get_range):
12857 Better return values.
12860 Reorganise return values, add macro to check for fatal errors.
12862 * gst/gstqueue.c: (gst_queue_chain):
12863 Return proper GstFlowReturn values,
12865 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
12867 * docs/gst/gstreamer-sections.txt:
12868 * docs/gst/gstreamer.types:
12869 * docs/gst/tmpl/gst.sgml:
12870 * docs/gst/tmpl/gstbasesink.sgml:
12871 * docs/gst/tmpl/gstbasesrc.sgml:
12872 * docs/gst/tmpl/gstbasetransform.sgml:
12873 * docs/gst/tmpl/gstbin.sgml:
12874 * docs/gst/tmpl/gstbuffer.sgml:
12875 * docs/gst/tmpl/gstcaps.sgml:
12876 * docs/gst/tmpl/gstclock.sgml:
12877 * docs/gst/tmpl/gstcompat.sgml:
12878 * docs/gst/tmpl/gstconfig.sgml:
12879 * docs/gst/tmpl/gstelement.sgml:
12880 * docs/gst/tmpl/gstelementdetails.sgml:
12881 * docs/gst/tmpl/gstelementfactory.sgml:
12882 * docs/gst/tmpl/gstenumtypes.sgml:
12883 * docs/gst/tmpl/gsterror.sgml:
12884 * docs/gst/tmpl/gstevent.sgml:
12885 * docs/gst/tmpl/gstfakesink.sgml:
12886 * docs/gst/tmpl/gstfakesrc.sgml:
12887 * docs/gst/tmpl/gstfilesink.sgml:
12888 * docs/gst/tmpl/gstfilesrc.sgml:
12889 * docs/gst/tmpl/gstfilter.sgml:
12890 * docs/gst/tmpl/gstformat.sgml:
12891 * docs/gst/tmpl/gstghostpad.sgml:
12892 * docs/gst/tmpl/gstimplementsinterface.sgml:
12893 * docs/gst/tmpl/gstindex.sgml:
12894 * docs/gst/tmpl/gstindexfactory.sgml:
12895 * docs/gst/tmpl/gstinfo.sgml:
12896 * docs/gst/tmpl/gstiterator.sgml:
12897 * docs/gst/tmpl/gstmacros.sgml:
12898 * docs/gst/tmpl/gstmemchunk.sgml:
12899 * docs/gst/tmpl/gstminiobject.sgml:
12900 * docs/gst/tmpl/gstobject.sgml:
12901 * docs/gst/tmpl/gstpad.sgml:
12902 * docs/gst/tmpl/gstpadtemplate.sgml:
12903 * docs/gst/tmpl/gstparse.sgml:
12904 * docs/gst/tmpl/gstpipeline.sgml:
12905 * docs/gst/tmpl/gstplugin.sgml:
12906 * docs/gst/tmpl/gstpluginfeature.sgml:
12907 * docs/gst/tmpl/gstquery.sgml:
12908 * docs/gst/tmpl/gstqueue.sgml:
12909 * docs/gst/tmpl/gstregistry.sgml:
12910 * docs/gst/tmpl/gstregistrypool.sgml:
12911 * docs/gst/tmpl/gstscheduler.sgml:
12912 * docs/gst/tmpl/gstschedulerfactory.sgml:
12913 * docs/gst/tmpl/gststructure.sgml:
12914 * docs/gst/tmpl/gstsystemclock.sgml:
12915 * docs/gst/tmpl/gsttaglist.sgml:
12916 * docs/gst/tmpl/gsttagsetter.sgml:
12917 * docs/gst/tmpl/gsttrace.sgml:
12918 * docs/gst/tmpl/gsttrashstack.sgml:
12919 * docs/gst/tmpl/gsttypefind.sgml:
12920 * docs/gst/tmpl/gsttypefindfactory.sgml:
12921 * docs/gst/tmpl/gsttypes.sgml:
12922 * docs/gst/tmpl/gsturihandler.sgml:
12923 * docs/gst/tmpl/gsturitype.sgml:
12924 * docs/gst/tmpl/gstutils.sgml:
12925 * docs/gst/tmpl/gstvalue.sgml:
12926 * docs/gst/tmpl/gstversion.sgml:
12927 * docs/gst/tmpl/gstxml.sgml:
12928 * docs/libs/tmpl/gstcontrol.sgml:
12929 * docs/libs/tmpl/gstdataprotocol.sgml:
12930 * docs/libs/tmpl/gstdparam.sgml:
12931 * docs/libs/tmpl/gstdplinint.sgml:
12932 * docs/libs/tmpl/gstdpman.sgml:
12933 * docs/libs/tmpl/gstdpsmooth.sgml:
12934 * docs/libs/tmpl/gstgetbits.sgml:
12935 * docs/libs/tmpl/gstunitconvert.sgml:
12936 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
12937 (gst_push_src_base_init), (gst_push_src_class_init),
12938 (gst_push_src_init), (gst_push_src_create):
12939 * gst/base/gstpushsrc.h:
12940 * gst/elements/gstelements.c:
12941 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
12942 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
12943 (gst_fake_sink_init), (gst_fake_sink_set_property),
12944 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
12945 (gst_fake_sink_event), (gst_fake_sink_preroll),
12946 (gst_fake_sink_render), (gst_fake_sink_change_state):
12947 * gst/elements/gstfakesink.h:
12948 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
12949 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
12950 (gst_fake_src_base_init), (gst_fake_src_class_init),
12951 (gst_fake_src_init), (gst_fake_src_event_handler),
12952 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
12953 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
12954 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
12955 (gst_fake_src_create_buffer), (gst_fake_src_create),
12956 (gst_fake_src_start), (gst_fake_src_stop):
12957 * gst/elements/gstfakesrc.h:
12958 * gst/elements/gstfilesink.c: (_do_init),
12959 (gst_file_sink_base_init), (gst_file_sink_class_init),
12960 (gst_file_sink_init), (gst_file_sink_dispose),
12961 (gst_file_sink_set_location), (gst_file_sink_set_property),
12962 (gst_file_sink_get_property), (gst_file_sink_open_file),
12963 (gst_file_sink_close_file), (gst_file_sink_query),
12964 (gst_file_sink_event), (gst_file_sink_render),
12965 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
12966 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
12967 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
12968 * gst/elements/gstfilesink.h:
12969 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
12970 (gst_file_src_class_init), (gst_file_src_init),
12971 (gst_file_src_finalize), (gst_file_src_set_location),
12972 (gst_file_src_set_property), (gst_file_src_get_property),
12973 (gst_file_src_map_region), (gst_file_src_map_small_region),
12974 (gst_file_src_create_mmap), (gst_file_src_create_read),
12975 (gst_file_src_create), (gst_file_src_is_seekable),
12976 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
12977 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
12978 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
12979 (gst_file_src_uri_handler_init):
12980 * gst/elements/gstfilesrc.h:
12981 more autistic cleanliness in functions/names/defines
12983 2005-07-13 Andy Wingo <wingo@pobox.com>
12985 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
12986 source couldn't negotiate.
12988 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
12992 * gst/gstutils.c (gst_element_link_pads_filtered): New old
12993 function. I am channeling Hades. Put your boots on suckers!!!
12995 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
12997 * testsuite/caps/Makefile.am:
12998 * testsuite/caps/value_compare.c:
12999 * testsuite/caps/value_intersect.c:
13000 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
13001 move two testsuite apps over to the check dir
13003 2005-07-12 Wim Taymans <wim@fluendo.com>
13005 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
13006 Added more debug info in the negotiate process.
13008 * gst/gstmessage.h:
13009 Prepare for segment playback.
13011 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
13017 * tools/gst-launch.c: (main):
13018 NULL pipeline on errors.
13020 2005-07-12 Andy Wingo <wingo@pobox.com>
13022 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
13023 not it comes from a malloc region. Make sure our copy gets freed.
13025 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
13027 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
13028 * check/gst/gstmessage.c: (GST_START_TEST):
13029 * check/gst/gststructure.c: (GST_START_TEST),
13030 (gst_structure_suite), (main):
13032 * gst/gstelement.c: (gst_element_message_full):
13033 clean up GError and debug string now that they get copied
13034 * gst/gstmessage.c: (gst_message_new_error),
13035 (gst_message_new_warning), (gst_message_parse_error),
13036 (gst_message_parse_warning):
13037 use GST_TYPE_G_ERROR for structure_new, and take copies of
13038 arguments, so that we don't mess up refcounting
13040 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
13042 * check/Makefile.am:
13043 add per-test valgrind targets
13044 * check/gst-libs/gdp.c: (GST_START_TEST),
13045 (gst_data_protocol_suite), (main):
13048 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
13050 * check/Makefile.am:
13051 instate more valgrindable tests
13052 * check/elements/gstfakesrc.c: (chain_func), (event_func),
13053 (GST_START_TEST), (fakesrc_suite):
13054 * check/gst/gstpad.c: (GST_START_TEST):
13055 * check/gst/gststructure.c: (GST_START_TEST):
13057 * docs/gst/tmpl/gstminiobject.sgml:
13058 * gst/gstpad.c: (gst_pad_finalize):
13059 fix the static mutex leak
13061 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
13063 * check/Makefile.am:
13064 add two more tests for valgrinding
13065 * check/gst/gstvalue.c: (GST_START_TEST):
13066 test refcount of deserialized buffer, found a leak
13067 * docs/gst/gstreamer-docs.sgml:
13068 * docs/gst/gstreamer-sections.txt:
13069 * docs/gst/gstreamer.types:
13070 * docs/gst/tmpl/gstminiobject.sgml:
13071 add miniobject to docs
13072 * gst/gstminiobject.c:
13074 * gst/gstvalue.c: (gst_value_deserialize_buffer),
13075 (gst_string_unwrap):
13076 fix a hard-to-find invalid write for one of the tests
13077 fix a leak for deserialized buffers
13079 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13081 * docs/pwg/advanced-events.xml:
13082 * docs/pwg/advanced-request.xml:
13083 * docs/pwg/advanced-scheduling.xml:
13084 * docs/pwg/appendix-porting.xml:
13085 * docs/pwg/building-boiler.xml:
13086 * docs/pwg/intro-preface.xml:
13087 * docs/pwg/other-ntoone.xml:
13088 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
13089 of example code and explanation for pad activation, loop() and
13090 getrange() functions and a bit more. Remove old comments pointing
13092 * examples/pwg/Makefile.am:
13093 Add loop/getrange examples.
13095 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
13098 check for valgrind binary + some fixes
13100 valgrind suppressions for the tests
13101 * check/Makefile.am:
13102 add a valgrind: target that valgrinds the unit tests
13103 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
13104 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
13105 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13106 * check/gst/gstghostpad.c:
13108 * check/gst/gstdata.c:
13110 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
13111 (thread_unref), (gst_mini_object_suite), (main):
13113 * gst/gst.c: (gst_deinit):
13115 add a method to clean up.
13116 * gst/gstsystemclock.c: (gst_system_clock_dispose),
13117 (gst_system_clock_obtain):
13118 allow for disposing the system clock.
13119 * tools/gst-launch.c: (main):
13122 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
13124 * docs/gst/tmpl/gstbasesrc.sgml:
13125 * docs/gst/tmpl/gstfakesrc.sgml:
13126 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
13127 (gst_base_src_init), (gst_base_src_set_property),
13128 (gst_base_src_get_property), (gst_base_src_get_range),
13129 (gst_base_src_start):
13130 * gst/base/gstbasesrc.h:
13131 add num-buffers property
13132 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
13133 (gst_fakesrc_init), (gst_fakesrc_set_property),
13134 (gst_fakesrc_get_property), (gst_fakesrc_create),
13135 (gst_fakesrc_start):
13136 remove num-buffers property
13138 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
13140 * docs/gst/gstreamer-sections.txt:
13141 * docs/gst/tmpl/gstbasesink.sgml:
13142 * docs/gst/tmpl/gstbasesrc.sgml:
13143 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
13144 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
13145 (gst_base_sink_finalize), (gst_base_sink_set_clock),
13146 (gst_base_sink_set_property), (gst_base_sink_get_property),
13147 (gst_base_sink_handle_object), (gst_base_sink_event),
13148 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
13149 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
13150 (gst_base_sink_loop), (gst_base_sink_deactivate),
13151 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
13152 (gst_base_sink_change_state):
13153 * gst/base/gstbasesink.h:
13154 * gst/base/gstbasesrc.h:
13155 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
13156 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
13157 (gst_filesink_init):
13158 more macro splitting
13160 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
13162 * gst/gstelement.c: (gst_element_get_bus):
13164 * tools/gst-launch.c: (check_intr), (event_loop):
13167 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
13169 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
13172 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
13174 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
13175 (gst_base_src_finalize):
13176 add finalize method and clean up properly
13177 * gst/gstpipeline.c: (gst_pipeline_dispose):
13180 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
13182 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
13184 add more things to check
13185 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
13186 * gst/gstelement.c:
13189 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
13191 * check/elements/gstfakesrc.c: (chain_func), (event_func),
13192 (GST_START_TEST), (fakesrc_suite):
13193 * check/gst-libs/gdp.c: (GST_START_TEST):
13194 * check/gst/gst.c: (GST_START_TEST):
13195 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
13196 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13197 * check/gst/gstbus.c: (GST_START_TEST):
13198 * check/gst/gstcaps.c: (GST_START_TEST):
13199 * check/gst/gstdata.c: (GST_START_TEST):
13200 * check/gst/gstelement.c: (GST_START_TEST):
13201 * check/gst/gstghostpad.c: (GST_START_TEST):
13202 * check/gst/gstiterator.c: (GST_START_TEST):
13203 * check/gst/gstmessage.c: (GST_START_TEST):
13204 * check/gst/gstobject.c: (GST_START_TEST):
13205 * check/gst/gstpad.c: (GST_START_TEST):
13206 * check/gst/gststructure.c: (GST_START_TEST):
13207 * check/gst/gstsystemclock.c: (GST_START_TEST),
13208 (gst_systemclock_suite):
13209 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
13210 * check/gst/gstvalue.c: (GST_START_TEST):
13211 * check/pipelines/cleanup.c: (GST_START_TEST):
13212 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
13213 * check/states/sinks.c: (GST_START_TEST):
13214 * check/gstcheck.c: (gst_check_init):
13215 * check/gstcheck.h:
13216 add debugging category
13217 use GST_START_TEST now, so we add a debug line
13219 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
13221 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
13222 add test for state change message on a bin
13223 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
13225 * gst/gstbin.c: (gst_bin_init):
13226 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
13227 * gst/gstelement.c: (gst_element_post_message),
13228 (gst_element_set_state):
13229 * gst/gstelementfactory.c: (gst_element_factory_create):
13230 * gst/gstmessage.c: (gst_message_new):
13231 * gst/gstscheduler.c:
13232 various debugging additions and cleanups
13234 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
13236 * check/Makefile.am:
13237 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
13239 adding tests for elements
13240 * gst/gstelement.c: (gst_element_dispose):
13242 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
13244 * gst/registries/gstlibxmlregistry.c: (load_feature):
13245 plug more leaks. A simple gst_init() now is leakfree, yay.
13247 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
13249 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
13250 (gst_xml_registry_load):
13251 plug another memleak
13253 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
13256 use GST_SET_ERROR_CFLAGS
13257 * docs/faq/cvs.xml:
13258 change to ERROR_CFLAGS
13260 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
13263 make GST_ERROR_CFLAGS overridable and re-enable Werror
13264 * docs/faq/cvs.xml:
13265 add a note about error CFLAGS
13266 * docs/gst/tmpl/gstfakesrc.sgml:
13267 * gst/elements/gstfakesrc.c:
13268 comment out some unused code
13269 * gst/gst.c: (split_and_iterate):
13270 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
13274 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
13276 * common/Makefile.am:
13277 * common/gtk-doc.mak:
13278 * docs/gst/Makefile.am:
13279 factor out gtk-doc.mak
13281 2005-07-07 Wim Taymans <wim@fluendo.com>
13283 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
13284 (gst_thread_scheduler_dispose):
13285 Unlock the STREAM_LOCK completely.
13287 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
13289 * check/Makefile.am:
13290 * check/elements/.cvsignore:
13291 * check/elements/gstfakesrc.c: (chain_func), (event_func),
13292 (START_TEST), (fakesrc_suite), (main):
13293 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
13294 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
13295 (gst_fakesrc_create), (gst_fakesrc_start):
13296 * gst/elements/gstfakesrc.h:
13297 adding a first element test
13299 2005-07-07 Andy Wingo <wingo@pobox.com>
13301 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
13304 2005-07-07 Wim Taymans <wim@fluendo.com>
13310 2005-07-07 Wim Taymans <wim@fluendo.com>
13312 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
13313 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
13314 Allow subclasses to implement their own negotiation.
13316 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
13318 * docs/design/part-gstbin.txt:
13319 * docs/design/part-gstpipeline.txt:
13320 Update design notes to reflect the movement of
13321 responsibility for bus handling from GstPipeline to
13324 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
13327 Remove unnecessary queue2/3/4 examples.
13329 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
13331 * examples/Makefile.am:
13332 * examples/helloworld/helloworld.c: (event_loop), (main):
13333 * examples/queue/queue.c: (event_loop), (main):
13334 * examples/queue2/queue2.c: (main):
13335 Update a couple of the examples to work again.
13337 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
13338 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
13339 Spelling corrections and extra debug.
13341 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
13342 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
13343 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
13345 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
13346 (gst_pipeline_change_state):
13347 * gst/gstpipeline.h:
13348 Move the bus handler for children to the GstBin, and create a
13349 separate bus for receiving messages from children to the one the
13350 bus sends 'upwards' on.
13352 2005-07-06 Wim Taymans <wim@fluendo.com>
13355 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
13356 (gst_base_sink_handle_object), (gst_base_sink_loop),
13357 (gst_base_sink_change_state):
13358 * gst/base/gstbasesink.h:
13359 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
13360 (gst_base_src_init), (gst_base_src_setcaps),
13361 (gst_base_src_getcaps), (gst_base_src_loop),
13362 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
13363 (gst_base_src_start), (gst_base_src_change_state):
13364 * gst/base/gstbasesrc.h:
13365 Make basesrc negotiate.
13366 Handle the case where preroll fails in basesink.
13369 2005-07-06 Wim Taymans <wim@fluendo.com>
13371 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
13372 Implement the fixate function.
13373 Clean up acceptcaps.
13375 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13377 * docs/pwg/building-filterfactory.xml:
13378 * docs/pwg/pwg.xml:
13379 Remove never-written filter-factory chapter; I'll add the various
13380 base classes to part 4 ("other element types") later on.
13382 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13384 * docs/pwg/advanced-negotiation.xml:
13385 * docs/pwg/building-boiler.xml:
13386 * docs/pwg/building-pads.xml:
13387 * docs/pwg/pwg.xml:
13388 * examples/pwg/Makefile.am:
13389 Add a chapter on caps negotiation, simplify the original code
13390 samples a bit w.r.t. caps negotiation, add link to the advanced
13391 section. Add a bunch of examples showing different use cases of
13392 different types of caps negotiation. Upstream renegotiation isn't
13393 fully documented yet since nobody knows how that works.
13395 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
13397 * check/gst/gstpad.c:
13398 * check/gstcheck.c:
13399 * gst/gstpad.c: (gst_pad_get_internal_links_default):
13400 if pad has no parent, return NULL as list of internal links
13402 2005-07-05 Andy Wingo <wingo@pobox.com>
13404 * gst/elements/gstfilesrc.c:
13405 * gst/elements/gstfakesrc.c:
13406 * gst/base/gstpushsrc.c:
13407 * gst/base/gstbasesrc.h:
13408 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
13410 2005-07-05 Stefan Kost <ensonic@users.sf.net>
13413 better report generation target (lcov needs a patch)
13415 2005-07-05 Andy Wingo <wingo@pobox.com>
13417 * gst/elements, testsuite: Null if we got it...
13419 2005-07-05 Wim Taymans <wim@fluendo.com>
13422 * libs/gst/dataprotocol/Makefile.am:
13423 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
13424 * libs/gst/dataprotocol/dataprotocol.h:
13425 * pkgconfig/Makefile.am:
13426 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
13427 * pkgconfig/gstreamer-dataprotocol.pc.in:
13428 Ported dataprotol to 0.9.
13429 Added pkgconfig files.
13431 2005-07-05 Andy Wingo <wingo@pobox.com>
13433 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
13434 Default to returning TRUE for the case when tranform_caps returns
13435 a fixed caps, like for identity or volume.
13437 * check/gst/gstbus.c (pound_bus_with_messages):
13438 * check/gst/gstmessage.c (START_TEST):
13439 * check/pipelines/simple_launch_lines.c (got_handoff): Application
13440 message API change.
13442 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
13443 logic weaks here: always run transform_caps, trying passthrough
13444 operation only if the original caps intersects with the transform.
13446 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
13447 source and sink caps.
13449 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
13450 Intersect the peer caps with the pad template before going into
13452 (gst_base_transform_transform_caps): More debugging.
13454 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
13457 2005-07-04 Edward Hervey <edward@fluendo.com>
13461 (gst_pad_add_*_probe): now returns the signal id for better wrapping
13464 2005-07-04 Andy Wingo <wingo@pobox.com>
13466 * check/gst/gstpad.c: Only set explicit caps on pads.
13468 2005-07-01 Andy Wingo <wingo@pobox.com>
13470 * tests/network-clock.scm: Commentary update.
13472 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
13473 Didn't really make sense, not implementable with basetransform,
13475 (gst_identity_transform): Unref inbuf via make_writable. Feeble
13476 attempt at implementing the sync property, needs an unlock method.
13478 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
13479 New func, by default returns the same caps (the identity
13481 (gst_base_transform_getcaps): Uses transform_caps to return
13482 something sensible.
13483 (gst_base_transform_setcaps): Complicated logic to get caps on
13484 both pads, even if they are different, and to call set_caps once
13485 for every time both pads get their caps set.
13486 (gst_base_transform_handle_buffer): Give the ref to the transform
13487 function. Allows in-place modification of the buffer.
13489 * gst/base/gstbasetransform.h (transform_caps): New class method.
13490 Given caps on one side, what can I do on the other.
13491 (set_caps): Take two caps, one for each side of the element.
13494 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
13495 caps in place. This is safe because we can check the mutability of
13496 the caps, and a good idea because fixate functions are just called
13497 as a matter of last resort. (Not actually implemented.)
13498 (gst_pad_set_caps): If the caps we're setting is actually the same
13499 as the existing pad caps, just update the pointer without calling
13500 setcaps. Assert that caps is either NULL or fixed, as per the
13503 * gst/gstghostpad.c: Update for fixate changes.
13505 2005-07-02 Andy Wingo <wingo@pobox.com>
13508 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
13509 two refcounts makes it immutable, which is enough. Doc more.
13511 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
13513 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
13514 Put the mini_object into GValue as a mini_object,
13515 not a gpointer, since that's how we declared
13518 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13520 * examples/pwg/Makefile.am:
13521 Fix buildbot again.
13523 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13525 * docs/pwg/building-testapp.xml:
13527 * examples/pwg/Makefile.am:
13530 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13533 * examples/Makefile.am:
13534 * examples/pwg/Makefile.am:
13535 * examples/pwg/extract.pl:
13536 Enable building the PWG examples.
13537 * docs/pwg/advanced-interfaces.xml:
13538 Add URI interface stub.
13539 * docs/pwg/advanced-types.xml:
13540 * docs/pwg/other-autoplugger.xml:
13541 * docs/pwg/appendix-porting.xml:
13542 * docs/pwg/pwg.xml:
13543 Add porting guide (mostly stubs), remove autoplugging (see ADM).
13544 * docs/pwg/building-boiler.xml:
13545 * docs/pwg/building-chainfn.xml:
13546 * docs/pwg/building-pads.xml:
13547 * docs/pwg/building-props.xml:
13548 * docs/pwg/building-state.xml:
13549 * docs/pwg/building-testapp.xml:
13550 Update the building-*.xml parts for 0.9 changes. All examples
13551 code blocks compile in examples/pwg/*.
13553 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13555 * docs/manual/advanced-autoplugging.xml:
13556 * docs/manual/appendix-checklist.xml:
13557 * docs/manual/appendix-integration.xml:
13558 * docs/manual/highlevel-components.xml:
13559 Fix playbin/decodebin examples, update docs a bit, mention bus
13560 instead of signals in various places, mention kmplayer and
13561 kaffeine since they have a working GStreamer backend in the KDE
13564 2005-06-30 Wim Taymans <wim@fluendo.com>
13567 * docs/design/draft-ghostpads.txt:
13568 * docs/design/draft-push-pull.txt:
13569 * docs/design/draft-query.txt:
13570 * docs/design/part-TODO.txt:
13571 * docs/design/part-query.txt:
13572 Added CHANGES-0.9 doc, updated status of other docs.
13577 2005-06-30 Wim Taymans <wim@fluendo.com>
13579 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
13580 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
13581 (gst_base_sink_change_state):
13582 * gst/base/gstbasesink.h:
13583 Some tweaks, only EOS and a buffer complete a preroll.
13585 2005-06-30 Andy Wingo <wingo@pobox.com>
13587 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
13588 activate_push down to the internal pad as well.
13590 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
13592 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13594 * gst/gsttaginterface.c:
13595 Some documentation fixes (#307394 and #307397).
13597 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
13599 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13601 * gst/gstvalue.c: (gst_value_intersect_list):
13602 Fix memleak (#309125).
13604 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13606 * docs/manual/advanced-dataaccess.xml:
13607 Fix fakesrc example to compile; doesn't work, bug somewhere...?
13608 * docs/manual/basics-pads.xml:
13609 Add reference for filtered caps to above chapter.
13611 2005-06-30 Wim Taymans <wim@fluendo.com>
13613 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
13614 (gst_bin_change_state):
13616 Lame attempt at making the state change function a bit
13619 2005-06-30 Wim Taymans <wim@fluendo.com>
13621 * docs/design/part-clocks.txt:
13622 * docs/design/part-element-sink.txt:
13623 * docs/design/part-events.txt:
13624 * docs/design/part-preroll.txt:
13625 * docs/design/part-states.txt:
13626 Some more tweeks and additions to the docs.
13628 2005-06-30 Wim Taymans <wim@fluendo.com>
13630 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
13631 (default_have_data), (gst_pad_class_init), (gst_pad_init),
13632 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
13633 (gst_pad_check_pull_range), (gst_pad_get_range),
13634 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
13636 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
13637 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
13638 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
13639 (gst_pad_remove_buffer_probe):
13640 Removed atomic operations, use existing LOCK.
13641 Move exception handling out of main code path.
13643 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13645 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
13646 (silly_return_true_function), (gst_pad_class_init),
13647 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
13648 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
13649 (gst_pad_send_event):
13650 Fix accumulator, add default value by using _emitv() instead
13651 of _emit() for signal emission.
13653 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13655 * docs/manual/advanced-dataaccess.xml:
13656 * examples/manual/Makefile.am:
13658 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
13661 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
13663 * gst/elements/gstfilesink.c: (gst_filesink_render):
13664 Simplify code so that we don't have to handle short
13665 writes and return GST_FLOW_ERROR if an error occured.
13667 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13669 * docs/gst/gstreamer-docs.sgml:
13670 Remove probes more.
13672 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13674 * docs/gst/gstreamer-sections.txt:
13675 * docs/gst/tmpl/gstpad.sgml:
13676 * docs/gst/tmpl/gstprobe.sgml:
13678 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
13679 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
13680 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
13681 (gst_pad_push_event), (gst_pad_send_event):
13683 * gst/gstutils.c: (gst_pad_add_data_probe),
13684 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
13685 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
13686 (gst_pad_remove_buffer_probe):
13688 Remove old probes, add new g-signal-based probes and some utility
13691 2005-06-29 Edward Hervey <edward@fluendo.com>
13693 * gst/gstelementfactory.c:
13696 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
13697 the definition to the header file.
13699 2005-06-29 Andy Wingo <wingo@pobox.com>
13701 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
13702 plugins from the source directory.
13704 2005-06-29 Wim Taymans <wim@fluendo.com>
13706 * docs/gst/tmpl/gstbuffer.sgml:
13707 * docs/gst/tmpl/gstclock.sgml:
13708 Some fixings for blantently wrong text.
13710 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
13712 * check/Makefile.am:
13713 * gst/gst.c: (add_path_func), (init_pre):
13714 * gst/gstregistry.c: (gst_registry_add_path):
13715 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
13716 only scan the GST_PLUGIN_PATH locations, and not add
13719 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
13721 * docs/gst/gstreamer-sections.txt:
13722 * docs/gst/tmpl/gstbasesrc.sgml:
13723 * gst/gstelement.c:
13724 * gst/gstelement.h:
13729 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13731 * docs/manual/advanced-autoplugging.xml:
13732 Fix autoplugging example.
13734 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13736 * docs/manual/advanced-autoplugging.xml:
13737 * docs/manual/mime-world.fig:
13738 Try to get autoplugging working, fix type detection. Fix text
13739 in hello-world image.
13741 2005-06-29 Wim Taymans <wim@fluendo.com>
13743 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13744 (gst_base_sink_change_state):
13748 map SIGNAL and BROADCAST to the right function.
13751 Remove redundant braces.
13753 * gst/gstpad.c: (gst_pad_set_caps):
13754 Don't call setcaps function when reseting caps to NULL.
13756 * gst/gstsystemclock.c: (gst_system_clock_dispose),
13757 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
13758 (gst_system_clock_id_unschedule):
13759 Use BROADCAST as this is what we do.
13761 2005-06-29 Wim Taymans <wim@fluendo.com>
13763 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13764 We are actually prerolling before commiting the state
13767 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13769 * docs/manual/advanced-clocks.xml:
13770 * docs/manual/advanced-interfaces.xml:
13771 * docs/manual/advanced-metadata.xml:
13772 * docs/manual/advanced-position.xml:
13773 * docs/manual/advanced-schedulers.xml:
13774 * docs/manual/advanced-threads.xml:
13775 * docs/manual/appendix-porting.xml:
13776 * docs/manual/basics-bins.xml:
13777 * docs/manual/basics-bus.xml:
13778 * docs/manual/basics-elements.xml:
13779 * docs/manual/basics-helloworld.xml:
13780 * docs/manual/basics-pads.xml:
13781 * docs/manual/highlevel-components.xml:
13782 * docs/manual/manual.xml:
13783 * docs/manual/thread.fig:
13784 Update (until threads/scheduling) Application Development Manual;
13785 remove GstThread, add GstBus, add simple porting checklist, add
13786 documentation for tag writing, clocks, make all examples until this
13787 part compile and run.
13788 * examples/manual/Makefile.am:
13789 Update from changes to Application Development Manual; add bus
13790 example, remove thread example.
13792 2005-06-28 Wim Taymans <wim@fluendo.com>
13794 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
13795 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
13796 (gst_bus_source_dispatch):
13797 Add debugging messages.
13798 Make internal methods static.
13799 Handle the case where the bus is flushed in the handler.
13801 * gst/gstelement.c: (gst_element_get_bus):
13802 Fix refcount in _get_bus();
13804 * gst/gstpipeline.c: (gst_pipeline_change_state),
13805 (gst_pipeline_get_clock_func):
13806 Clock refcounting fixes.
13807 Handle the case where preroll timed out more gracefully.
13809 * gst/gstsystemclock.c: (gst_system_clock_dispose):
13810 Clean up the internal thread in dispose. This is needed
13811 for subclasses that actually get disposed.
13813 * gst/schedulers/threadscheduler.c:
13814 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
13815 (gst_thread_scheduler_dispose):
13816 Free thread pool in dispose.
13818 2005-06-28 Andy Wingo <wingo@pobox.com>
13820 * tests/network-clock-utils.scm (debug, print-event): New utils.
13822 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
13823 (*packet-loss*): Unified loss probability.
13824 (network-time): Report out-of-band events.
13826 * tests/plot-data: Add support for out-of-band events. Hack it
13827 into this script instead of passing it down the pipe; should fix
13830 2005-06-28 Wim Taymans <wim@fluendo.com>
13832 * docs/gst/gstreamer.types:
13833 * docs/gst/tmpl/gstbasesrc.sgml:
13834 * docs/gst/tmpl/gstpad.sgml:
13837 2005-06-28 Wim Taymans <wim@fluendo.com>
13839 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
13840 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
13841 (gst_proxy_pad_do_fixatecaps):
13842 Correctly proxy the check_pull_range function.
13844 2005-06-28 Andy Wingo <wingo@pobox.com>
13846 * tests/network-clock.scm: Removed need for slib.
13848 2005-06-28 Wim Taymans <wim@fluendo.com>
13850 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
13851 (gst_basesink_preroll_queue_flush):
13852 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
13853 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
13854 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
13855 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
13856 (gst_proxy_pad_set_property):
13859 * gst/gstqueue.c: (gst_queue_init):
13860 The deprecated pad loop function is removed now.
13862 2005-06-28 Andy Wingo <wingo@pobox.com>
13864 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
13865 New parameters, simulate network packet loss.
13867 * tests/network-clock-utils.scm: Initialize the RNG.
13869 2005-06-28 Wim Taymans <wim@fluendo.com>
13871 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
13872 (gst_basesink_event), (gst_basesink_deactivate):
13873 Flushing the preroll queue always needs to unlock the waiters.
13875 2005-06-28 Edward Hervey <edward@fluendo.com>
13877 * gst/gstpipeline.c: (gst_pipeline_send_event):
13878 Wheen a seek was successful on a pipeline, set the stream_time to the
13879 seek offset in order to have a synchronized stream_time.
13881 2005-06-28 Wim Taymans <wim@fluendo.com>
13883 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
13884 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
13885 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
13886 (gst_proxy_pad_do_fixatecaps):
13887 Call wrapper function instead of just calling the function
13888 pointers. This takes care of any locking and whatmore.
13890 2005-06-28 Wim Taymans <wim@fluendo.com>
13892 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
13893 (gst_pad_pull_range):
13895 CONNECTED -> LINKED.
13897 2005-06-28 Andy Wingo <wingo@pobox.com>
13899 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
13900 source-munging commit!!!
13902 * gst/gstobject.c (gst_object_unref, gst_object_ref)
13903 (gst_object_sink): Take gpointer arguments, not GstObject --
13904 avoids casts. Like GLib.
13906 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
13909 2005-06-27 Andy Wingo <wingo@pobox.com>
13911 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
13914 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
13915 returns a sorted copy of the trace list.
13916 (gst_alloc_trace_print_live): New API, only prints traces with
13917 live objects. Sort the list.
13918 (gst_alloc_trace_print_all): Sort the list.
13919 (gst_alloc_trace_print): Align columns.
13921 * gst/elements/gstttypefindelement.c:
13922 * gst/elements/gsttee.c:
13923 * gst/base/gstbasesrc.c:
13924 * gst/base/gstbasesink.c:
13925 * gst/base/gstbasetransform.c:
13926 * gst/gstqueue.c: Adapt for pad activation changes.
13928 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
13930 (gst_pipeline_dispose): Drop ref on sched.
13932 * gst/gstpad.c (gst_pad_init): Set the default activate func.
13933 (gst_pad_activate_default): Push mode by default.
13934 (pre_activate_switch, post_activate_switch): New stubs, things to
13935 do before and after switching activation modes on pads.
13936 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
13937 the pad's activate function to choose which mode to activate.
13938 Shortcut on deactivation and call the right function directly.
13939 (gst_pad_activate_pull): New API, (de)activates a pad in pull
13941 (gst_pad_activate_push): New API, same for push mode.
13942 (gst_pad_set_activate_function)
13943 (gst_pad_set_activatepull_function)
13944 (gst_pad_set_activatepush_function): Setters for new API.
13946 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
13947 Trace all miniobjects.
13948 (gst_mini_object_make_writable): Unref the arg if we copy, like
13949 gst_caps_make_writable.
13951 * gst/gstmessage.c (_gst_message_initialize): No trace init.
13953 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
13954 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
13955 Adapt for new pad API.
13957 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
13959 * gst/gstelement.h:
13960 * gst/gstelement.c (gst_element_iterate_src_pads)
13961 (gst_element_iterate_sink_pads): New API functions.
13963 * gst/gstelement.c (iterator_fold_with_resync): New utility,
13964 should fold into gstiterator.c in some form.
13965 (gst_element_pads_activate): Simplified via use of fold and
13966 delegation of decisions to gstpad->activate.
13968 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
13971 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
13972 class once in init, like gstmessage. Didn't run into this issue
13973 but it seems correct. Don't initialize a trace, gstminiobject does
13976 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
13977 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
13979 (assert_live_count): New util function, uses alloc traces to check
13982 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
13983 To be modified when unlink drops the internal pad.
13985 2005-06-27 Wim Taymans <wim@fluendo.com>
13987 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
13988 (gst_bin_change_state):
13989 Cleanup the get_state() function a little, make sure it
13990 iterates the same set of elements.
13991 Added stub iterate_state_order().
13993 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
13995 * docs/gst/gstreamer-docs.sgml:
13996 * docs/gst/gstreamer-sections.txt:
13997 * docs/gst/gstreamer.types:
13998 * docs/gst/tmpl/gstbasesink.sgml:
13999 * docs/gst/tmpl/gstbasesrc.sgml:
14000 * docs/gst/tmpl/gstbasetransform.sgml:
14001 * docs/gst/tmpl/gstelement.sgml:
14002 * docs/gst/tmpl/gstiterator.sgml:
14003 * gst/base/gstbasesrc.c:
14004 * gst/base/gstbasesrc.h:
14005 * gst/base/gstbasetransform.h:
14006 * gst/gstelement.c:
14007 * gst/gstiterator.h:
14008 adding basetransform and iterator docs
14010 2005-06-27 Andy Wingo <wingo@pobox.com>
14012 * docs/design/part-activation.txt: Notes on how activation should
14013 work -- not quite implemented yet.
14015 2005-06-25 Wim Taymans <wim@fluendo.com>
14017 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
14018 At least get the chain function correct, needs more
14021 2005-06-25 Wim Taymans <wim@fluendo.com>
14023 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
14024 (gst_basesink_handle_object), (gst_basesink_event),
14025 (gst_basesink_do_sync), (gst_basesink_handle_event),
14026 (gst_basesink_change_state):
14028 Right, two problems here: ghostpads don't take locks and
14029 glib _rec_mutex_lock_full() with depth==0 still locks.
14030 Catch illegal locking and g_warn them.
14032 2005-06-25 Wim Taymans <wim@fluendo.com>
14034 * check/states/sinks.c: (START_TEST), (gst_object_suite):
14035 Have to check for completion now...
14037 2005-06-25 Wim Taymans <wim@fluendo.com>
14039 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
14040 (gst_basesink_handle_object), (gst_basesink_event),
14041 (gst_basesink_do_sync), (gst_basesink_handle_event),
14042 (gst_basesink_change_state):
14044 Unlock STREAM_LOCK whatever the recursion was.
14046 2005-06-25 Wim Taymans <wim@fluendo.com>
14048 * gst/base/gstbasesink.c: (gst_basesink_set_property),
14049 (gst_basesink_preroll_queue_empty),
14050 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
14051 (gst_basesink_event), (gst_basesink_do_sync),
14052 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
14053 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
14054 (gst_basesink_change_state):
14055 Reworked the base sink, handle event and buffer serialisation
14056 correctly and removed possible deadlock.
14057 Handle EOS correctly.
14059 2005-06-25 Wim Taymans <wim@fluendo.com>
14061 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
14062 (gst_pipeline_change_state):
14063 * tools/gst-launch.c: (check_intr), (event_loop), (main):
14064 Allow elements to post EOS in the state change function.
14065 Fix up -launch, make it exit the poll loop when the
14066 pipeline actually changed state.
14067 Fix up warning parsing in -launch.
14069 2005-06-25 Wim Taymans <wim@fluendo.com>
14071 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
14072 (gst_tee_sink_activate):
14073 Core takes STREAM_LOCK for us now.
14075 2005-06-25 Wim Taymans <wim@fluendo.com>
14077 * gst/gstelement.c: (gst_element_get_state_func),
14078 (gst_element_set_state):
14079 * gst/gstelement.h:
14080 * gst/gstmessage.c: (gst_message_parse_error),
14081 (gst_message_parse_warning):
14082 Keep track of current target state while performing a state
14083 change so that subclasses can do something interesting.
14084 Fix parsing of warning/error messages when GError is NULL.
14086 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
14088 * docs/gst/Makefile.am:
14089 * docs/gst/gstreamer-docs.sgml:
14090 * docs/gst/gstreamer-sections.txt:
14091 * docs/gst/gstreamer.types:
14092 * docs/gst/tmpl/gstbasesink.sgml:
14093 * docs/gst/tmpl/gstbasesrc.sgml:
14094 * docs/gst/tmpl/gstbin.sgml:
14095 * docs/gst/tmpl/gstcompat.sgml:
14096 * docs/gst/tmpl/gstfakesink.sgml:
14097 * docs/gst/tmpl/gstfakesrc.sgml:
14098 * docs/gst/tmpl/gstfilesink.sgml:
14099 * docs/gst/tmpl/gstfilesrc.sgml:
14100 * docs/gst/tmpl/gstindex.sgml:
14101 * docs/manual/appendix-quotes.xml:
14102 * gst/base/gstbasesrc.h:
14103 * gst/elements/gstfakesrc.h:
14104 * gst/gstmessage.h:
14105 start pulling in base classes and elements in our docs
14107 2005-06-24 Stefan Kost <ensonic@users.sf.net>
14109 * docs/gst/Makefile.am:
14110 * docs/libs/Makefile.am:
14111 fixed make distcheck with gtk-doc 1.3
14113 2005-06-23 Wim Taymans <wim@fluendo.com>
14115 * gst/gstelement.c: (gst_element_get_state_func),
14116 (gst_element_set_state), (gst_element_change_state):
14117 When the state did not change, also report NO_PREROLL
14120 2005-06-23 Wim Taymans <wim@fluendo.com>
14122 * gst/gstpad.c: (gst_pad_event_default):
14123 * gst/gstqueue.c: (gst_queue_loop):
14124 No unsafe task pausing please.
14126 2005-06-23 Wim Taymans <wim@fluendo.com>
14128 * gst/schedulers/threadscheduler.c:
14129 (gst_thread_scheduler_task_start),
14130 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
14131 Ref the task before pushing it on the threadpool. This
14132 makes sure that we have a ref when the threadfunction is
14135 2005-06-23 Andy Wingo <wingo@pobox.com>
14137 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
14138 offset is greater than the file's size.
14140 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
14141 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
14142 * gst/gstobject.c (gst_object_class_init): Make the class lock
14143 recursive. Wim won't let me drop deep_notify. Decodebin works
14144 again, whoopdy doo.
14146 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
14147 internal pad, and hacks accordingly. Doesn't do it on the target
14148 pad because we change its caps. Probably catches all cases of
14150 (gst_ghost_pad_set_property): Connect to notify::caps as
14153 * tests/network-clock.scm (plot-simulation): Pipe data to the
14154 elite python skript.
14156 * tests/network-clock-utils.scm (define-parameter): New macro,
14157 defines a parameter that can be set via the command line.
14158 (set-parameter!, parse-parameter-arguments): Command line args
14161 * tests/plot-data: Simple matplotlib-based plotter, takes input on
14164 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
14166 * gst/elements/gsttypefindelement.c:
14167 (gst_type_find_element_handle_event):
14168 Don't restart typefinding on a discont.
14169 * gst/gstelement.c: (gst_element_set_state):
14170 Debug spelling fix.
14171 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
14172 Allow changing mode of an active pad.
14173 Debug output fixes.
14174 * gst/registries/gstlibxmlregistry.c: (load_feature):
14175 Don't cast a static pad template to a normal pad template.
14177 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
14179 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
14180 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
14181 remove gst_strtoll completely, since it didn't actually do
14182 anything more than what g_ascii_strtoull already does.
14183 check for range errors when deserializing
14184 do a cast for the unsigned cases; but further fixing needs
14185 a decision on what the interpretation of "(int)" and
14186 deserialization should be for values that fall outside the
14187 type's boundaries (ie, refuse, or interpret as casting)
14189 2005-06-23 Wim Taymans <wim@fluendo.com>
14191 * check/Makefile.am:
14192 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
14193 * docs/design/part-live-source.txt:
14194 * docs/design/part-states.txt:
14195 * gst/base/gstbasesrc.c: (gst_basesrc_init),
14196 (gst_basesrc_set_live), (gst_basesrc_is_live),
14197 (gst_basesrc_get_range), (gst_basesrc_activate),
14198 (gst_basesrc_change_state):
14199 * gst/base/gstbasesrc.h:
14200 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14201 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
14202 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
14203 * gst/gstelement.c: (gst_element_get_state_func),
14204 (gst_element_set_state):
14205 * gst/gstelement.h:
14207 * tools/gst-launch.c: (event_loop), (main):
14208 Added support for live sources and other elements that
14210 Updated design docs, added live-source design doc.
14211 Implemented live source functionality in basesrc
14212 Fix error condition in _bin_get_state()
14213 Implement live source handling in -launch.
14214 Added check for live sources.
14215 Fixed case in GstBin where elements were changed state
14219 2005-06-23 Andy Wingo <wingo@pobox.com>
14221 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
14222 borken refcounting.
14224 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
14225 gst_caps_replace takes care of this for us.
14227 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
14228 gst_pad_set_caps on the target, not just its setcaps() function.
14230 * tests/network-clock.scm:
14231 * tests/network-clock-utils.scm: A network clock simulator.
14232 Something of an algorithmic testbed before doing something in C.
14234 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
14236 * check/Makefile.am:
14237 * check/gst/capslist.h:
14238 copy over from 0.8, and add two with bitmasks specified with
14240 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
14241 add test to parse everything from capslist.h
14242 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
14244 add test for structure deserialization
14245 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
14246 add tests for deserialization of strings to int types
14247 * gst/gststructure.c: (gst_structure_nth_field_name):
14248 * gst/gststructure.h:
14249 add a way to get the name of a field referenced by index
14250 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
14251 instead of checking if the resulting long long lies between
14252 min and max, we check if the long long would fit into
14253 a number of bytes for the final type.
14254 This fixes cases where a string represents 2^32 - 1, which
14255 when cast to int would be the (valid) -1, but is bigger than
14258 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
14260 * gst/parse/grammar.y:
14261 add a log line for type deserialization
14263 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
14265 * check/gst/gstvalue.c: (START_TEST):
14266 * gst/gstvalue.c: (gst_value_deserialize):
14267 return long long, not int, so gint64 deserialization actually
14268 works. Is there any flag that makes the compiler check this ?
14271 2005-06-22 Wim Taymans <wim@fluendo.com>
14274 Added convenience macros for setting buffers in GValue.
14276 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
14278 * check/gst/.cvsignore:
14279 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
14280 add a test deserializing int64, and comment part out because
14283 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
14285 * check/Makefile.am:
14286 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
14287 * testsuite/Makefile.am:
14288 * testsuite/caps/Makefile.am:
14289 * testsuite/caps/value_serialize.c:
14290 * testsuite/test_gst_init.c:
14291 move a value_serialize test over
14293 2005-06-20 Wim Taymans <wim@fluendo.com>
14298 * gst/gstvalue.c: (gst_value_compare_buffer),
14299 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
14300 (gst_value_compare_flags), (gst_value_serialize_flags),
14301 (gst_value_deserialize_flags), (_gst_value_initialize):
14302 Fix serialisation of buffers, they are not boxed types anymore
14304 2005-06-20 Wim Taymans <wim@fluendo.com>
14306 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
14307 Testcase to show error in buffer-on-caps serialisation.
14309 2005-06-20 Andy Wingo <wingo@pobox.com>
14311 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
14312 will be adding to later.
14314 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
14315 if its socks fill with rocks.
14316 (gst_system_clock_obtain): Set the name on object construction.
14317 Avoid double-checked locking.
14319 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
14321 * gst/gsturi.c: (gst_element_make_from_uri):
14322 Fix potential endless loop.
14324 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
14326 * check/Makefile.am:
14328 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
14330 move over from testsuite dir and clean up
14333 * testsuite/Makefile.am:
14334 * testsuite/tags/.cvsignore:
14335 * testsuite/tags/Makefile.am:
14336 * testsuite/tags/merge.c:
14337 remove testsuite/tags
14339 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
14341 * docs/gst/gstreamer-sections.txt:
14342 * docs/gst/tmpl/gstenumtypes.sgml:
14343 * win32/gstenumtypes.c:
14344 clean up documentation build a little
14346 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
14348 * check/gstcheck.h:
14349 add macros for checking refcounts on objects and caps
14350 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
14351 add some more unit tests
14352 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
14353 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
14354 fix leaked refcounts (I hope :)) so unittest works
14358 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
14360 * configure.ac: back to HEAD
14362 === release 0.9.1 ===
14364 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
14370 2005-06-17 Andy Wingo <wingo@pobox.com>
14372 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
14373 assert; it's always possible that the pad gets deactivated in
14374 between the checks in gstpad.c and the implementation. Rely on
14375 finish_preroll() to return a FLUSHING or similar instead of on the
14378 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
14379 clock and post an EOS message if we come out of finish_preroll in
14382 2005-06-16 David Schleef <ds@schleef.org>
14384 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
14385 (gst_capsfilter_set_property): Allow NULL as possible value
14386 for filter_caps property, indicating GST_CAPS_ANY.
14388 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
14390 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
14392 * gst/schedulers/Makefile.am:
14394 * gstreamer.spec.in:
14397 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
14399 * gstreamer.spec.in:
14402 2005-06-08 Andy Wingo <wingo@pobox.com>
14404 * gst/gstutils.c: RPAD fixes all around.
14405 (gst_element_link_pads): Refcounting fixes.
14407 * tools/gst-inspect.c:
14408 * tools/gst-xmlinspect.c:
14410 * gst/base/gsttypefindhelper.c:
14411 * gst/base/gstbasesink.c:
14412 * gst/gstqueue.c: RPAD fixes.
14414 * gst/gstghostpad.h:
14415 * gst/gstghostpad.c: New ghost pad implementation as full proxy
14416 pads. The tricky thing is they provide both source and sink
14417 interfaces, since they proxy the internal pad for the external
14418 pad, and vice versa. Implement with lower-level ProxyPad objects,
14419 with the interior proxy pad as a child of the exterior ghost pad.
14420 Should write a doc on this.
14422 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
14423 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
14426 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
14427 pads are real pads. No ghost pads in this file. Not documenting
14428 the myriad s/RPAD/PAD/ and REALIZE fixes.
14429 (gst_pad_class_init): Add properties for "direction" and
14430 "template". Both are construct-only, so they can't change during
14431 the life of the pad. Fixes properly deriving from GstPad.
14432 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
14433 derived objects, just set properties when creating the objects via
14435 (gst_pad_get_parent): Implement as a function, return NULL if the
14436 parent is not an element.
14437 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
14438 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
14440 * gst/gstobject.c (gst_object_class_init): Make name a construct
14441 property. Don't set it in the object init.
14443 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
14444 with UNKNOWN direction.
14445 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
14446 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
14447 (gst_element_remove_pad): Remove ghost-pad special cases.
14448 (gst_element_pads_activate): Remove rpad cruft.
14450 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
14451 catch the pad's-parent-not-an-element case.
14453 * gst/gst.h: Include gstghostpad.h.
14455 * gst/gst.c (init_post): No more real, ghost pads.
14457 * gst/Makefile.am: Add gstghostpad.[ch].
14459 * check/Makefile.am:
14460 * check/gst/gstbin.c:
14461 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
14462 into a bin creates ghost pads, and that the refcounts are right.
14463 Partly moved from gstbin.c.
14465 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
14467 * check/gst-libs/.cvsignore:
14468 * check/gst/.cvsignore:
14469 * check/pipelines/.cvsignore:
14471 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
14472 (START_TEST), (cleanup_suite), (main):
14473 add some tests related to cleanup after running pipelines
14475 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
14477 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
14478 add a testsuite for GstBuffer
14480 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
14482 * gst/gstminiobject.h:
14483 add defines for accessing the refcount
14485 2005-06-03 Stefan Kost <ensonic@users.sf.net>
14487 * Makefile.am: added support for html unit test coverage reports
14489 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
14491 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
14492 Free existing caps if the capsfilter changes. Add a FIXME about
14493 setting those caps on the pads.
14495 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
14496 Before adding a ghost pad to a parent bin, check that there isn't
14497 already one for the element on the bin. Prevents infinite recursion
14498 when using decodebin in parse pipelines. Andy says he'll rewrite the
14499 way this works anyway, so ignore the hack.
14501 2005-06-02 Andy Wingo <wingo@pobox.com>
14503 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
14504 file size, pass it on to the type find helper.
14506 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
14507 segment_start and segment_end properly according to the seek
14508 method. Segment_end is still a bit flaky because offset can be
14509 negative for CUR and END cases, but it takes -1 as an "unset"
14512 2005-06-02 Wim Taymans <wim@fluendo.com>
14514 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
14515 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
14516 (gst_basesink_activate):
14517 * gst/base/gstbasesink.h:
14518 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
14519 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
14520 (gst_pad_query), (gst_pad_start_task):
14522 * gst/gstqueue.c: (gst_queue_bufferalloc),
14523 (gst_queue_handle_sink_event), (gst_queue_chain):
14524 Bufferalloc: return GstFlowReturn to more accuratly report
14525 why allocation failed.
14527 2005-06-02 Wim Taymans <wim@fluendo.com>
14529 * gst/gstpipeline.c: (gst_pipeline_send_event):
14530 Take snapshot of state without blocking.
14532 2005-06-02 Wim Taymans <wim@fluendo.com>
14534 * docs/design/part-TODO.txt:
14535 * docs/design/part-caps.txt:
14536 * docs/design/part-clocks.txt:
14537 * docs/design/part-negotiation.txt:
14538 * docs/design/part-preroll.txt:
14541 2005-05-30 Wim Taymans <wim@fluendo.com>
14543 * gst/elements/gstidentity.c: (gst_identity_event),
14544 (gst_identity_transform), (gst_identity_get_property):
14545 Protect last_message property as it is accessed from
14548 2005-05-30 Wim Taymans <wim@fluendo.com>
14550 * gst/gstelement.c: (gst_element_init),
14551 (gst_element_pads_activate), (gst_element_change_state):
14552 Slicker pad activation code.
14554 2005-05-30 Wim Taymans <wim@fluendo.com>
14557 * gst/gstelement.h:
14558 * gst/gstelementfactory.h:
14560 Move elementfactory methods to separate .h file.
14562 2005-05-30 Wim Taymans <wim@fluendo.com>
14564 * docs/design/part-overview.txt:
14565 * gst/gstsystemclock.h:
14566 Small typo fixes, doc updates.
14568 2005-05-30 Wim Taymans <wim@fluendo.com>
14570 * gst/gst.c: (gst_init_get_popt_table), (init_post),
14571 (init_popt_callback):
14572 Remove cpu-opt flag.
14574 2005-05-30 Wim Taymans <wim@fluendo.com>
14576 * gst/gstbuffer.c: (gst_subbuffer_finalize),
14577 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
14579 Avoid typechecking in places where not needed.
14580 Added accessor for malloc_data.
14582 2005-05-30 Wim Taymans <wim@fluendo.com>
14584 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
14585 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
14586 (gst_pad_configure_sink), (gst_pad_configure_src),
14587 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
14588 (gst_pad_start_task):
14589 Propagate errors from _set_caps() in configure_src/sink
14590 functions instead of returning TRUE.
14591 FLUSH events can travel up and downstream
14594 2005-05-30 Wim Taymans <wim@fluendo.com>
14596 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
14597 (gst_basesink_activate):
14598 Handle EOS in preroll.
14600 2005-05-30 Wim Taymans <wim@fluendo.com>
14602 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
14603 (gst_queue_loop), (gst_queue_handle_src_event):
14604 Remove old pieces of code
14605 Flushing the queue in an upstream event is a very bad idea.
14607 2005-05-26 Andy Wingo <wingo@pobox.com>
14609 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
14610 gst_value_set_mini_object so as to add a ref on the object (which
14611 will be removed when the value is unset).
14613 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
14614 arg type in ::handoff.
14616 * gst/gstelement.c (gst_element_change_state): Also deactivate
14617 pads in READY->NULL, just in case the element didn't make it to
14618 PAUSED. Wingo tested, Wim approved.
14620 2005-05-26 Wim Taymans <wim@fluendo.com>
14622 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
14623 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
14624 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
14625 A flushing pad cannot be used to alloc_buffer from.
14627 2005-05-26 Wim Taymans <wim@fluendo.com>
14629 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
14630 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
14631 (gst_bus_source_dispatch), (gst_bus_source_finalize),
14632 (gst_bus_create_watch), (gst_bus_add_watch_full):
14634 Implement a real GSource and use g_main_context_wakeup() to
14635 signal new messages instead of the socketpair.
14637 2005-05-25 Wim Taymans <wim@fluendo.com>
14639 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
14640 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
14641 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
14642 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
14643 (gst_pad_send_event), (gst_pad_start_task):
14644 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
14645 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
14646 (gst_queue_sink_activate), (gst_queue_src_activate),
14647 (gst_queue_change_state):
14649 Fix state changes for non sinks. We now change sinks, then elements
14650 with unconnected srcpads, then the rest.
14651 More efficient queue unlocking in flush and state changes.
14652 Set the pad activate mode even if it does not have an activate
14655 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14657 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
14658 Don't go in pull mode for non-seekable sources.
14659 * gst/elements/gsttypefindelement.h:
14660 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
14661 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
14662 (free_entry), (stop_typefinding),
14663 (gst_type_find_element_handle_event), (find_peek),
14664 (gst_type_find_element_chain), (do_pull_typefind),
14665 (gst_type_find_element_change_state):
14666 Allow typefinding (w/o seeking) in push-mode, simplified version
14667 of what was in 0.8.
14668 * gst/gstutils.c: (gst_buffer_join):
14670 gst_buffer_join() from 0.8.
14672 2005-05-25 Wim Taymans <wim@fluendo.com>
14674 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
14675 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
14676 (gst_pad_send_event), (gst_pad_start_task):
14677 Disable attempt at mode switching until it is figured out.
14679 2005-05-25 Wim Taymans <wim@fluendo.com>
14681 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
14682 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
14683 (gst_basesink_finish_preroll), (gst_basesink_chain),
14684 (gst_basesink_loop), (gst_basesink_activate),
14685 (gst_basesink_change_state):
14686 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
14687 (gst_basesrc_get_range), (gst_basesrc_loop),
14688 (gst_basesrc_activate):
14689 * gst/elements/gsttee.c: (gst_tee_sink_activate):
14690 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
14691 (gst_real_pad_init), (gst_real_pad_set_property),
14692 (gst_real_pad_get_property), (gst_pad_set_active),
14693 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
14694 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
14695 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
14696 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
14697 (gst_pad_event_default_dispatch), (gst_pad_event_default),
14698 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
14699 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
14700 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
14701 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
14702 (gst_pad_stop_task):
14704 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
14705 (gst_queue_loop), (gst_queue_src_activate):
14706 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
14707 (gst_task_get_state):
14709 * gst/schedulers/threadscheduler.c:
14710 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
14711 Implement gst_pad_pause/start/stop_task(), take STREAM lock
14713 Remove ACTIVE pad flag, use FLUSHING everywhere
14714 Added _pad_chain(), _pad_get_range() to call chain/getrange
14716 Add locks around IS_FLUSHING when reading.
14717 Take STREAM lock in chain(), get_range() functions so plugins
14718 don't need to take it anymore.
14722 2005-05-25 Wim Taymans <wim@fluendo.com>
14724 * tools/gst-launch.c: (event_loop):
14725 Unref message after using its contents instead of
14728 2005-05-24 Wim Taymans <wim@fluendo.com>
14730 * docs/design/draft-ghostpads.txt:
14731 * docs/design/draft-push-pull.txt:
14732 * docs/design/draft-query.txt:
14733 * docs/design/part-overview.txt:
14734 Docs updates, added general overview doc.
14736 2005-05-21 David Schleef <ds@schleef.org>
14738 * docs/gst/tmpl/old/GstBin.sgml:
14739 * docs/gst/tmpl/old/GstBuffer.sgml:
14740 * docs/gst/tmpl/old/GstCaps.sgml:
14741 * docs/gst/tmpl/old/GstClock.sgml:
14742 * docs/gst/tmpl/old/GstCompat.sgml:
14743 * docs/gst/tmpl/old/GstData.sgml:
14744 * docs/gst/tmpl/old/GstElement.sgml:
14745 * docs/gst/tmpl/old/GstEvent.sgml:
14746 * docs/gst/tmpl/old/GstIndex.sgml:
14747 * docs/gst/tmpl/old/GstStructure.sgml:
14748 * docs/gst/tmpl/old/GstTag.sgml:
14749 * docs/gst/tmpl/old/cothreads.sgml:
14750 * docs/gst/tmpl/old/cothreads_compat.sgml:
14751 * docs/gst/tmpl/old/gettext.sgml:
14752 * docs/gst/tmpl/old/gobject2gtk.sgml:
14753 * docs/gst/tmpl/old/grammar.tab.sgml:
14754 * docs/gst/tmpl/old/gst-i18n-app.sgml:
14755 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
14756 * docs/gst/tmpl/old/gst_private.sgml:
14757 * docs/gst/tmpl/old/gstaggregator.sgml:
14758 * docs/gst/tmpl/old/gstarch.sgml:
14759 * docs/gst/tmpl/old/gstatomic_impl.sgml:
14760 * docs/gst/tmpl/old/gstbufferstore.sgml:
14761 * docs/gst/tmpl/old/gstdata_private.sgml:
14762 * docs/gst/tmpl/old/gstdisksink.sgml:
14763 * docs/gst/tmpl/old/gstdisksrc.sgml:
14764 * docs/gst/tmpl/old/gstelementfactory.sgml:
14765 * docs/gst/tmpl/old/gstextratypes.sgml:
14766 * docs/gst/tmpl/old/gstfakesink.sgml:
14767 * docs/gst/tmpl/old/gstfakesrc.sgml:
14768 * docs/gst/tmpl/old/gstfdsink.sgml:
14769 * docs/gst/tmpl/old/gstfdsrc.sgml:
14770 * docs/gst/tmpl/old/gstfilesink.sgml:
14771 * docs/gst/tmpl/old/gstfilesrc.sgml:
14772 * docs/gst/tmpl/old/gsthttpsrc.sgml:
14773 * docs/gst/tmpl/old/gstidentity.sgml:
14774 * docs/gst/tmpl/old/gstindexfactory.sgml:
14775 * docs/gst/tmpl/old/gstmarshal.sgml:
14776 * docs/gst/tmpl/old/gstmd5sink.sgml:
14777 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
14778 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
14779 * docs/gst/tmpl/old/gstpadtemplate.sgml:
14780 * docs/gst/tmpl/old/gstpipefilter.sgml:
14781 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
14782 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
14783 * docs/gst/tmpl/old/gstshaper.sgml:
14784 * docs/gst/tmpl/old/gstspider.sgml:
14785 * docs/gst/tmpl/old/gstspideridentity.sgml:
14786 * docs/gst/tmpl/old/gststatistics.sgml:
14787 * docs/gst/tmpl/old/gsttee.sgml:
14788 * docs/gst/tmpl/old/gsttimecache.sgml:
14789 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
14790 * docs/gst/tmpl/old/gstxmlregistry.sgml:
14791 * docs/gst/tmpl/old/gthread-cothreads.sgml:
14792 * docs/gst/tmpl/old/types.sgml:
14793 I didn't intend to add these or check them in.
14795 2005-05-19 David Schleef <ds@schleef.org>
14797 * configure.ac: Use -no-common everywhere. In a sane world, it
14798 would be the default in libtool, because without it, you can't
14799 build DLLs on Windows.
14800 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
14801 * docs/gst/gstreamer-sections.txt:
14802 * docs/gst/tmpl/gstcpu.sgml:
14803 * docs/gst/tmpl/gstdata.sgml:
14804 * docs/gst/tmpl/gstthread.sgml:
14806 2005-05-19 David Schleef <ds@schleef.org>
14808 * gst/gstminiobject.c: (gst_value_set_mini_object),
14809 (gst_value_take_mini_object), (gst_value_get_mini_object):
14810 * gst/gstminiobject.h: Add GValue set/get functions.
14812 2005-05-19 Wim Taymans <wim@fluendo.com>
14814 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
14815 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
14816 (gst_subbuffer_init), (gst_buffer_is_span_fast):
14818 * gst/gstbus.c: (gst_bus_post):
14819 * gst/gstelement.c: (gst_element_get_random_pad):
14820 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
14821 Make subbufer unref the parent in finalize.
14822 some more debugging info.
14825 2005-05-19 Wim Taymans <wim@fluendo.com>
14827 * gst/base/gstbasesink.c: (gst_basesink_class_init),
14828 (gst_basesink_init), (gst_basesink_finalize),
14829 (gst_basesink_activate), (gst_basesink_change_state):
14830 Don't free preroll queue too early.
14832 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14836 Hi, I'm outdated. Please shoot me.
14838 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14840 * gst/gstpipeline.c: (gst_pipeline_send_event):
14841 Do not access variables after they have been deleted.
14843 2005-05-19 Wim Taymans <wim@fluendo.com>
14845 * tools/gst-inspect.c: (print_plugin_features):
14846 A plugin feature does unfortunatly not use the
14849 2005-05-18 Wim Taymans <wim@fluendo.com>
14851 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
14852 Port _span() functions to new subbuffers.
14854 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14856 * gst/gstbin.c: (gst_bin_add_func):
14857 Fix clock settery in bins when adding kids after the clock has
14860 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14862 * gst/elements/gstidentity.c: (gst_identity_class_init):
14863 Workaround until signals support GstMiniObject.
14865 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
14868 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
14870 2005-05-18 Wim Taymans <wim@fluendo.com>
14872 * gst/base/Makefile.am:
14873 * gst/base/gstadapter.c: (gst_adapter_base_init),
14874 (gst_adapter_class_init), (gst_adapter_init),
14875 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
14876 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
14877 (gst_adapter_flush), (gst_adapter_available),
14878 (gst_adapter_available_fast):
14879 * gst/base/gstadapter.h:
14880 Ported and added adapter to the base classes.
14882 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
14885 * gst/gstmessage.c:
14886 Make sure the class is reffed/unreffed once before threads can be
14887 used. Fixes #304551.
14889 2005-05-17 Wim Taymans <wim@fluendo.com>
14891 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
14892 (gst_basesink_chain_unlocked), (gst_basesink_activate):
14893 * gst/gstminiobject.c: (gst_mini_object_get_type),
14894 (gst_mini_object_free):
14895 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
14896 (gst_pad_push), (gst_pad_push_event):
14897 * gst/gstqueue.c: (gst_queue_change_state):
14898 Don't queue buffers in basesink when we are flushing.
14899 Unref buffer when flushing in basesink.
14900 Flush queue when going to READY
14901 Unref buffer when _push() returns an error.
14902 Don't free MiniObject instance when refcount is incremented
14903 in _finalize() so that we can recover objects.
14905 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
14907 * docs/manual/advanced-schedulers.xml:
14908 * docs/manual/appendix-checklist.xml:
14909 * docs/pwg/advanced-clock.xml:
14910 * docs/pwg/advanced-interfaces.xml:
14911 * docs/pwg/advanced-request.xml:
14912 * docs/pwg/advanced-types.xml:
14913 * docs/pwg/intro-preface.xml:
14914 * examples/plugins/example.c: (gst_example_get_type),
14915 (gst_example_class_init), (gst_example_chain),
14916 (gst_example_set_property), (gst_example_get_property),
14917 (gst_example_change_state), (plugin_init):
14918 * examples/plugins/example.h:
14921 2005-05-17 Wim Taymans <wim@fluendo.com>
14923 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
14924 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
14925 * gst/gstqueue.c: (gst_queue_change_state):
14926 Clear queue when going to READY.
14927 Remove IN_SETCAPS flag too.
14929 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
14931 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
14932 Remove implicit cast from gboolean to GstElementStateReturn;
14933 make sure we still return failure in paused => ready case if
14934 the parent class fails to change state and our own stop
14937 2005-05-17 Wim Taymans <wim@fluendo.com>
14939 * tools/gst-launch.c: (event_loop):
14940 Message was unreffed too soon.
14942 2005-05-16 Andy Wingo <wingo@pobox.com>
14944 * gst/gstbin.c (sink_iterator_filter): Err... um...
14946 * check/gst/gstbin.c (test_ghost_pads): New test for the
14947 ghosting-if-elements-not-in-same-bin behavior.
14949 2005-05-16 David Schleef <ds@schleef.org>
14951 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
14952 accessing refcount directly.
14954 2005-05-15 David Schleef <ds@schleef.org>
14956 * check/Makefile.am: remove GstData checks
14957 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
14958 * gst/Makefile.am: add miniobject, remove data
14959 * gst/gst.h: add miniobject, remove data
14960 * gst/gstdata.c: remove
14961 * gst/gstdata.h: remove
14962 * gst/gstdata_private.h: remove
14963 * gst/gsttypes.h: remove GstEvent and GstMessage
14964 * gst/gstelement.c: (gst_element_post_message): fix for API changes
14965 * gst/gstmarshal.list: change BOXED -> OBJECT
14967 Implement GstMiniObject.
14968 * gst/gstminiobject.c:
14969 * gst/gstminiobject.h:
14971 Modify to be subclasses of GstMiniObject.
14972 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
14973 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
14974 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
14975 (gst_subbuffer_get_type), (gst_subbuffer_init),
14976 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
14979 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
14980 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
14981 (_gst_event_copy), (gst_event_new):
14983 * gst/gstmessage.c: (_gst_message_initialize),
14984 (gst_message_get_type), (gst_message_class_init),
14985 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
14986 (gst_message_new), (gst_message_new_error),
14987 (gst_message_new_warning), (gst_message_new_tag),
14988 (gst_message_new_state_changed), (gst_message_new_application):
14989 * gst/gstmessage.h:
14990 * gst/gstprobe.c: (gst_probe_perform),
14991 (gst_probe_dispatcher_dispatch):
14993 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
14994 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
14995 (_gst_query_copy), (gst_query_new):
14997 Update elements for GstData -> GstMiniObject changes
14999 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
15000 (gst_queue_chain), (gst_queue_loop):
15001 * gst/elements/gstbufferstore.c:
15002 (gst_buffer_store_add_buffer_func),
15003 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
15004 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
15005 (gst_fakesink_render):
15006 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
15007 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
15008 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
15009 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
15010 (gst_filesrc_create_read):
15011 * gst/elements/gstidentity.c: (gst_identity_class_init):
15012 * gst/elements/gsttypefindelement.c:
15013 (gst_type_find_element_src_event), (free_entry_buffers),
15014 (gst_type_find_element_handle_event):
15015 * libs/gst/dataprotocol/dataprotocol.c:
15016 (gst_dp_header_from_buffer):
15017 * libs/gst/dataprotocol/dataprotocol.h:
15018 * libs/gst/dataprotocol/dp-private.h:
15020 2005-05-15 David Schleef <ds@schleef.org>
15022 * gst/elements/gstelements.c: Don't include headers that were
15025 2005-05-15 David Schleef <ds@schleef.org>
15027 * gst/elements/Makefile.am: Remove some elements that don't
15028 need to be in the core (or even exist at all).
15029 * gst/elements/gstaggregator.c:
15030 * gst/elements/gstaggregator.h:
15031 * gst/elements/gstmd5sink.c:
15032 * gst/elements/gstmd5sink.h:
15033 * gst/elements/gstmultifilesrc.c:
15034 * gst/elements/gstmultifilesrc.h:
15035 * gst/elements/gstpipefilter.c:
15036 * gst/elements/gstpipefilter.h:
15037 * gst/elements/gstshaper.c:
15038 * gst/elements/gstshaper.h:
15039 * gst/elements/gststatistics.c:
15040 * gst/elements/gststatistics.h:
15041 * po/POTFILES.in: Remove above files.
15043 2005-05-14 Andy Wingo <wingo@pobox.com>
15045 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
15046 so as to get the refs right.
15047 (sink_iterator_filter): New function, wraps bin_element_is_sink,
15048 unreffing objects that don't pass the filter.
15050 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
15051 gst_element_set_bus.
15052 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
15053 normal cases, this will destroy the bus.
15055 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
15058 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
15061 2005-05-13 Andy Wingo <wingo@pobox.com>
15063 * gst/gstutils.c (gst_element_link_pads): Instead of calling
15064 gst_pad_link, call pad_link_maybe_ghosting,
15065 (pad_link_maybe_ghosting): Links pads, making sure that the
15066 elements being linked are in the same bin.
15067 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
15068 Helpers for pad_link_maybe_ghosting.
15070 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
15073 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
15075 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
15077 * docs/design/part-element-source.txt:
15080 2005-05-12 Wim Taymans <wim@fluendo.com>
15082 * gst/base/gstbasesink.c: (gst_basesink_init),
15083 (gst_basesink_activate):
15084 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
15085 (gst_basesrc_is_seekable):
15086 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
15087 (bin_element_is_sink), (gst_bin_change_state):
15088 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
15089 * gst/gstelement.h:
15090 Identify sinks by their flag to avoid overly complicated
15092 Do state changes even for elements not reachable from the
15094 BaseSink is a sink now :)
15095 Some more debugging info in the basesrc.
15098 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15100 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
15101 Implement _query on a bin, similar to _send_event.
15103 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
15105 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
15106 Discont event offset format should be GST_FORMAT_BYTES,
15107 not GST_FORMAT_TIME.
15109 2005-05-12 Wim Taymans <wim@fluendo.com>
15111 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
15112 Same fix as Ronald's but without the signal.
15114 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15116 * gst/gstutils.c: (gst_element_query_position):
15117 No, an element is not a pad.
15119 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15121 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
15122 (gst_bin_get_state):
15123 If a child is removed from a bin while we remove the child from
15124 the bin and while we're retrieving its state, signal this to the
15125 get_state function so we abort the wait (instead of waiting for
15126 a timeout) and can immediately re-iterate over all other elements.
15128 2005-05-12 Wim Taymans <wim@fluendo.com>
15130 * gst/base/Makefile.am:
15131 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
15132 (gst_basesrc_start):
15133 * gst/base/gstbasesrc.h:
15134 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
15135 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
15136 (gst_pushsrc_init), (gst_pushsrc_create):
15137 * gst/base/gstpushsrc.h:
15138 Added is_seekable to BaseSrc
15139 Added simple PushSrc.
15141 2005-05-11 Wim Taymans <wim@fluendo.com>
15143 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
15144 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
15145 (gst_element_link_pads), (gst_element_query_position),
15146 (gst_element_query_convert), (intersect_caps_func),
15147 (gst_pad_query_position), (gst_pad_query_convert):
15148 Fix refcounting in utils function.
15149 No point in trying to activate a pad when it's added, it could
15150 be added from the state change function and then we deadlock, the
15151 element has to decide what to do.
15153 2005-05-10 Andy Wingo <wingo@pobox.com>
15155 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
15156 *all* the arguments.
15158 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
15159 stream lock if it's a FLUSH_DONE; normal flushes don't get the
15160 lock (according to the docs -- if this is wrong change the docs).
15162 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
15163 flush messages in the NULL state.
15165 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
15166 message immediately and return.
15167 (gst_bus_set_flushing): New function. If a bus is flushing, it
15168 flushes out any queued messages and immediately unrefs new
15169 messages. This is so when an element goes to NULL, all of the
15170 unhandled messages coming from it can be freed, and their
15171 references to the element dropped. In other words: message source
15172 ref considered harmful :P
15174 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
15175 we're finished with it.
15177 * gst/gstmessage.c (gst_message_new_state_changed):
15179 2005-05-10 Wim Taymans <wim@fluendo.com>
15181 * gst/gstvalue.c: (gst_value_compare_flags),
15182 (gst_value_serialize_flags), (gst_value_deserialize_flags),
15183 (_gst_value_initialize):
15184 Added flags serialize/deserialize/compare code.
15186 2005-05-09 Andy Wingo <wingo@pobox.com>
15188 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
15189 Intersect the peer's caps with our caps.
15191 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15193 * gst/base/gsttypefindhelper.c: (helper_find_peek):
15194 * gst/elements/gsttypefindelement.c: (find_peek):
15195 Handle negative offsets better. Fixes decodebin.
15197 2005-05-09 Wim Taymans <wim@fluendo.com>
15199 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
15200 (gst_base_transform_event):
15201 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
15202 Implement accept_caps.
15203 Fix silly lock/unlock mismatch in base class.
15205 2005-05-09 Wim Taymans <wim@fluendo.com>
15207 * docs/design/draft-push-pull.txt:
15208 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
15209 * gst/elements/gstfilesink.c: (gst_filesink_init),
15210 (gst_filesink_query):
15211 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
15212 (gst_type_find_handle_src_query), (find_element_get_length):
15213 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
15214 * gst/gstelement.h:
15215 * gst/gstmessage.c:
15216 * gst/gstmessage.h:
15217 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
15218 (gst_real_pad_get_caps_unlocked),
15219 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
15220 (gst_pad_event_default_dispatch), (gst_pad_event_default),
15221 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
15222 (gst_real_pad_dispose), (gst_real_pad_finalize),
15223 (gst_pad_load_and_link), (gst_pad_save_thyself),
15224 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
15225 (gst_pad_check_pull_range), (gst_pad_pull_range),
15226 (gst_pad_template_get_type), (gst_pad_template_class_init),
15227 (gst_pad_template_init), (gst_pad_template_dispose),
15228 (name_is_valid), (gst_static_pad_template_get),
15229 (gst_pad_template_new), (gst_static_pad_template_get_caps),
15230 (gst_pad_template_get_caps), (gst_pad_set_element_private),
15231 (gst_pad_get_element_private), (gst_pad_start_task),
15232 (gst_pad_pause_task), (gst_pad_stop_task),
15233 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
15234 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
15235 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
15236 (gst_ghost_pad_new):
15238 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
15239 (gst_query_new_position), (gst_query_set_position),
15240 (gst_query_parse_position), (gst_query_new_convert),
15241 (gst_query_set_convert), (gst_query_parse_convert):
15243 * gst/gstqueryutils.c:
15244 * gst/gstqueryutils.h:
15245 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
15246 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
15247 (gst_queue_handle_src_query):
15248 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
15249 (gst_element_query_position), (gst_element_query_convert),
15250 (intersect_caps_func), (gst_pad_query_position),
15251 (gst_pad_query_convert):
15253 * tools/gst-inspect.c: (print_pad_info):
15254 * tools/gst-xmlinspect.c: (print_element_info):
15255 Remove old query functions. Ported old code.
15256 Added position/convert helper functions to gstutils.
15257 Reordered gstpad.c code, grouping relevant things.
15258 Remove gst_message_new(), always need to speficy a specific
15262 2005-05-09 Andy Wingo <wingo@pobox.com>
15264 * gst/gstiterator.h: Add some includes.
15266 * gst/gstqueryutils.h: Include more headers.
15269 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
15270 some uses of gst_pad_query.
15272 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
15273 NULL out parameters.
15274 (gst_query_new_position): New proc, allocates a new position
15277 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
15278 gstqueryutils.c to the build.
15280 * gst/gststructure.c (gst_structure_set_valist): Implement with
15281 the generic G_VALUE_COLLECT.
15283 2005-05-08 Edward Hervey <bilboed@bilboed.com>
15285 * gst/Makefile.am: (gst_headers):
15286 Added gstqueryutils.h to the list of headers to install, that was
15287 a 'nachty' move wingo :)
15289 2005-05-06 Andy Wingo <wingo@pobox.com>
15292 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
15293 GstData, init a memchunk.
15294 (standard_definitions): Add a few query types, deprecate a few.
15295 (gst_query_get_type): New proc.
15296 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
15298 (gst_query_new_application, gst_query_get_structure): New public
15301 * docs/design/draft-query.txt: Removed LINKS from the query types,
15302 because all the rest can be dispatched to other pads -- seemed
15303 ugly to have a query that couldn't be dispatched. internal_links
15304 is fine as a pad method.
15306 * gst/gstpad.h: Add query2 as a pad method, add the new functions
15307 in gstpad.c, but maintain binary compatibility for the moment.
15308 Will fix before 0.9 is out.
15310 * gst/gstqueryutils.c:
15311 * gst/gstqueryutils.h: New files, implement 3 methods for each
15312 query type: parse_query, parse_response, and set. Probably need an
15315 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
15317 * gst/elements/gstfilesink.c (gst_filesink_query2):
15318 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
15319 query_types, and formats methods.
15321 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
15322 (gst_pad_set_query2_function): New functions.
15323 (gst_real_pad_init): Set query2_default as the default query2
15324 function. Basically just dispatches to internally linked pads.
15328 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
15329 without using the atomic operations. Only one thread can possibly
15330 be accessing the data at this point. Changed so as to avoid
15331 gst_atomic operations.
15333 2005-05-06 Wim Taymans <wim@fluendo.com>
15335 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
15336 Also set caps if we use the fallback buffer alloc.
15338 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
15340 * docs/gst/Makefile.am:
15341 * docs/gst/gstreamer-docs.sgml:
15342 * docs/gst/gstreamer-sections.txt:
15343 * docs/gst/tmpl/gstatomic.sgml:
15344 * docs/gst/tmpl/gstmemchunk.sgml:
15345 * testsuite/elements/struct_i386.h:
15346 * win32/GStreamer.vcproj:
15348 Purge GstAtomic stuff from docs and win32 makefiles as well
15350 2005-05-06 Wim Taymans <wim@fluendo.com>
15352 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
15353 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
15354 * gst/gstpad.c: (gst_pad_peer_get_caps):
15355 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
15356 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
15357 (gst_queue_src_activate), (gst_queue_change_state):
15359 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
15360 (intersect_caps_func):
15361 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
15362 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
15363 Some fixes for the peer_get_caps() change.
15365 2005-05-06 Wim Taymans <wim@fluendo.com>
15367 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15368 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
15369 (gst_basesink_activate):
15370 Actually do something with error codes returned from the push
15373 2005-05-06 Wim Taymans <wim@fluendo.com>
15375 * docs/design/part-element-sink.txt:
15376 * docs/design/part-element-source.txt:
15377 * gst/base/gstbasesink.c: (gst_basesink_class_init),
15378 (gst_basesink_event), (gst_basesink_activate):
15379 * gst/base/gstbasesink.h:
15380 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
15381 (gst_basesrc_activate):
15382 * gst/base/gstbasesrc.h:
15383 * gst/gstelement.c: (gst_element_pads_activate):
15384 Some more documentation.
15385 Fixed scheduling decision in _pads_activate().
15387 2005-05-05 Andy Wingo <wingo@pobox.com>
15389 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
15392 2005-05-05 Wim Taymans <wim@fluendo.com>
15394 * gst/base/Makefile.am:
15395 * gst/base/gstbasesink.h:
15396 * gst/base/gstbasesrc.c: (gst_basesrc_init),
15397 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
15398 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
15399 (gst_collectpads_class_init), (gst_collectpads_init),
15400 (gst_collectpads_finalize), (gst_collectpads_new),
15401 (gst_collectpads_set_function), (gst_collectpads_add_pad),
15402 (find_pad), (gst_collectpads_remove_pad),
15403 (gst_collectpads_is_active), (gst_collectpads_collect),
15404 (gst_collectpads_collect_range), (gst_collectpads_start),
15405 (gst_collectpads_stop), (gst_collectpads_peek),
15406 (gst_collectpads_pop), (gst_collectpads_available),
15407 (gst_collectpads_read), (gst_collectpads_flush),
15408 (gst_collectpads_chain):
15409 * gst/base/gstcollectpads.h:
15410 * gst/elements/Makefile.am:
15411 * gst/elements/gstelements.c:
15412 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
15413 (gst_fakesink_get_times), (gst_fakesink_event),
15414 (gst_fakesink_preroll), (gst_fakesink_render):
15415 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
15416 (gst_filesink_init), (gst_filesink_set_location),
15417 (gst_filesink_open_file), (gst_filesink_close_file),
15418 (gst_filesink_pad_query), (gst_filesink_event),
15419 (gst_filesink_render), (gst_filesink_change_state):
15420 * gst/elements/gstfilesink.h:
15421 Added object to help in making collect pad based elements.
15423 Make event function in sink baseclass return gboolean.
15425 2005-05-05 Wim Taymans <wim@fluendo.com>
15427 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
15428 (gst_bin_get_by_name):
15430 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
15431 (gst_clock_finalize):
15432 * gst/gstdata.c: (gst_data_replace):
15434 * gst/gstelement.c: (gst_element_request_pad),
15435 (gst_element_pads_activate):
15436 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
15437 (gst_object_unref):
15438 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
15439 (gst_pad_set_checkgetrange_function),
15440 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
15441 (gst_pad_check_pull_range), (gst_pad_pull_range),
15442 (gst_static_pad_template_get_caps), (gst_pad_start_task),
15443 (gst_pad_pause_task), (gst_pad_stop_task):
15444 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
15445 (gst_element_request_pad), (gst_pad_proxy_getcaps):
15446 Fix name lookup in GstBin.
15447 Added _data_replace() function and _buffer_replace()
15448 Use finalize method to clean up clock.
15449 Fix refcounting on request pads.
15450 Fix pad schedule mode error.
15451 Some more object refcounting debug info,
15454 2005-05-04 Andy Wingo <wingo@pobox.com>
15456 * check/Makefile.am:
15457 * docs/gst/tmpl/gstatomic.sgml:
15458 * docs/gst/tmpl/gstplugin.sgml:
15459 * gst/base/gstbasesink.c: (gst_basesink_activate):
15460 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
15461 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
15462 (gst_basesrc_query), (gst_basesrc_set_property),
15463 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
15464 (gst_basesrc_activate):
15465 * gst/base/gstbasesrc.h:
15466 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
15467 (gst_base_transform_src_activate):
15468 * gst/elements/gstelements.c:
15469 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
15470 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
15471 * gst/elements/gsttee.c: (gst_tee_sink_activate):
15472 * gst/elements/gsttypefindelement.c: (find_element_get_length),
15473 (gst_type_find_element_checkgetrange),
15474 (gst_type_find_element_activate):
15475 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
15476 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
15477 (gst_caps_load_thyself):
15478 * gst/gstelement.c: (gst_element_pads_activate),
15479 (gst_element_save_thyself), (gst_element_restore_thyself):
15480 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
15481 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
15483 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
15484 (gst_xml_parse_file), (gst_xml_parse_memory),
15485 (gst_xml_get_element), (gst_xml_make_element):
15486 * gst/indexers/gstfileindex.c: (gst_file_index_load),
15487 (_file_index_id_save_xml), (gst_file_index_commit):
15488 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
15489 (read_enum), (load_pad_template), (load_feature), (load_plugin),
15491 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
15492 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
15493 * tools/gst-complete.c: (main):
15494 * tools/gst-compprep.c: (main):
15495 * tools/gst-inspect.c: (print_element_properties_info):
15496 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
15497 * tools/gst-xmlinspect.c: (print_element_properties):
15500 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
15502 * gst/gstplugin.c: (gst_plugin_check_module),
15503 (gst_plugin_check_file), (gst_plugin_load_file):
15504 apply patch from #172526 to make register work on MacOSX
15506 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
15508 * docs/gst/tmpl/gstconfig.sgml:
15509 * gst/gstconfig.h.in:
15510 move documentation for some symbols. Add doc for GST_PTR_FORMAT
15511 * testsuite/debug/printf_extension.c: (main):
15512 Do not use GST_PTR_FORMAT on pointers to types with
15513 sizeof < sizeof(gpointer). Fixes test on 64-bit
15514 * testsuite/elements/property.h:
15515 use correct printf format
15517 2005-05-02 Wim Taymans <wim@fluendo.com>
15519 * docs/design/draft-push-pull.txt:
15520 * docs/design/draft-query.txt:
15521 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
15522 (gst_basesrc_start):
15523 Added draft for new query API.
15524 Added draft for better selecting scheduling methods.
15525 Make basesrc ignore length if the subclass does not support
15528 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
15531 possible fixes for automake-1.5 - _LIBADD is reserved
15533 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
15535 * docs/faq/Makefile.am:
15536 * docs/manual/Makefile.am:
15537 * docs/manuals.mak:
15538 * docs/pwg/Makefile.am:
15540 possible fixes for automake-1.5
15542 2005-04-28 Wim Taymans <wim@fluendo.com>
15544 * gst/base/gstbasesink.c: (gst_basesink_base_init),
15545 (gst_basesink_pad_getcaps), (gst_basesink_init),
15546 (gst_basesink_do_sync):
15547 * gst/gstclock.c: (gst_clock_entry_new):
15548 * gst/gstevent.c: (gst_event_discont_get_value):
15549 * gst/gstpipeline.c: (pipeline_bus_handler),
15550 (gst_pipeline_change_state):
15551 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
15552 Better debugging of clocking info.
15553 Allow NULL values when getting discont values.
15555 2005-04-27 Wim Taymans <wim@fluendo.com>
15557 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
15558 * check/gst/gstpad.c: (gst_pad_suite):
15559 Increase timeout for checks.
15561 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
15563 * check/Makefile.am:
15564 fix the broken rule for cleanup. Apparently this rule is
15565 only needed on FC2, so maybe this warrants further autotool
15568 2005-04-26 Wim Taymans <wim@fluendo.com>
15570 * gst/gsttrashstack.h:
15571 Ooohh. a nasty one! After having a failed pop() from the stack,
15572 it's possible that the stack is empty. In that case, don't
15573 follow the NULL pointer.
15575 2005-04-25 Wim Taymans <wim@fluendo.com>
15577 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
15578 (gst_pad_set_checkgetrange_function),
15579 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
15580 (gst_pad_check_pull_range), (gst_pad_pull_range),
15581 (gst_static_pad_template_get_caps), (gst_pad_start_task),
15582 (gst_pad_pause_task), (gst_pad_stop_task):
15583 * gst/gstplugin.c: (gst_plugin_load):
15585 Remove gst_library_load as it does more harm than good with
15586 the new g_module flags.
15587 Revert bogus caps template check in pad linking, pad caps
15588 are important when linking not the template, which is more
15589 general than the current caps.
15591 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15593 * gst/autoplug/.cvsignore:
15594 * gst/autoplug/Makefile.am:
15595 * gst/autoplug/gstsearchfuncs.c:
15596 * gst/autoplug/gstsearchfuncs.h:
15597 * gst/autoplug/gstspider.c:
15598 * gst/autoplug/gstspider.h:
15599 * gst/autoplug/gstspideridentity.c:
15600 * gst/autoplug/gstspideridentity.h:
15601 * gst/autoplug/spidertest.c:
15604 2005-04-25 Wim Taymans <wim@fluendo.com>
15606 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
15607 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
15608 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
15609 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
15611 Added stubs for unimplemented functions.
15613 2005-04-24 David Schleef <ds@schleef.org>
15615 * gst/gstpad.h: Disable some unimplemented functions. Wim,
15618 2005-04-24 David Schleef <ds@schleef.org>
15620 Convert everything from GstAtomicInt to g_atomic_int_*, and
15625 * gst/gstatomic_impl.h:
15633 * gst/gstdata_private.h:
15637 * gst/gstmessage.c:
15640 * gst/gststructure.c:
15641 * gst/gststructure.h:
15642 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
15645 2005-04-24 David Schleef <ds@schleef.org>
15647 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
15648 make the regressions tests work. Remove some code that is no
15650 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
15651 Disable warning for pads without templates.
15653 2005-04-24 David Schleef <ds@schleef.org>
15655 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
15656 functions that handle filtered links.
15657 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
15659 * gst/gstutils.c: Fix/remove utility functions that handle
15662 * gst/gstvalue.c: Add serialization/deserialization of caps
15663 * gst/parse/grammar.y: Ignore filtered caps when linking. This
15664 requires fixing so that the filter caps notation creates
15665 a capsfilter element and sets the filter_caps property. I
15666 think everyone probably wants to keep the shorthand notation.
15667 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
15668 * docs/gst/tmpl/gstpad.sgml:
15670 * gst/elements/gstelements.c: Register capsfilter element.
15671 * gst/Makefile.am: fix spacing
15672 * docs/random/ds/0.9-suggested-changes: random
15674 2005-04-23 David Schleef <ds@schleef.org>
15676 * gst/elements/Makefile.am:
15677 * gst/elements/gstcapsfilter.c: New element that acts like an
15678 identity, but filters caps. Will eventually replace filtered
15679 caps in pad linking.
15680 * gst/gstutils.c: (gst_element_create_all_pads): New function
15681 to create all the ALWAYS pads that are registered with an
15682 element class. This functionality should eventually be
15683 merged in with GstElement initialization.
15685 * testsuite/trigger/README: part of trigger test code that should
15686 have been checked in a long time ago.
15688 2005-04-23 David Schleef <ds@schleef.org>
15690 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
15691 needed with new versions of libtool (nobody will confirm this),
15692 and hard to carry around.
15693 * gst/autoplug/Makefile.am:
15694 * gst/base/Makefile.am:
15695 * gst/elements/Makefile.am:
15696 * gst/indexers/Makefile.am:
15697 * gst/schedulers/Makefile.am:
15698 * libs/gst/bytestream/Makefile.am:
15699 * libs/gst/control/Makefile.am:
15700 * libs/gst/dataprotocol/Makefile.am:
15701 * libs/gst/getbits/Makefile.am:
15703 2005-04-21 Wim Taymans <wim@fluendo.com>
15705 * docs/design/draft-push-pull.txt:
15706 * docs/design/part-MT-refcounting.txt:
15707 * docs/design/part-TODO.txt:
15708 * docs/design/part-caps.txt:
15709 * docs/design/part-events.txt:
15710 * docs/design/part-gstbus.txt:
15711 * docs/design/part-gstpipeline.txt:
15712 * docs/design/part-messages.txt:
15713 * docs/design/part-push-pull.txt:
15714 * docs/design/part-query.txt:
15717 2005-04-21 Wim Taymans <wim@fluendo.com>
15719 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
15720 (gst_message_new), (gst_message_new_error),
15721 (gst_message_new_warning), (gst_message_new_tag),
15722 (gst_message_new_state_changed), (gst_message_new_application),
15723 (gst_message_get_structure):
15724 * gst/gstmessage.h:
15725 * gst/gststructure.c: (gst_structure_set_parent_refcount),
15726 (gst_structure_copy_conditional):
15727 Use parent refcount in GstMessage to ensure GstStructure
15729 Cleaned up headers a bit.
15732 2005-04-20 Wim Taymans <wim@fluendo.com>
15734 * gst/base/gstbasesink.c: (gst_basesink_base_init),
15735 (gst_basesink_pad_getcaps), (gst_basesink_init),
15736 (gst_basesink_chain_unlocked):
15737 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
15738 (gst_type_find_helper):
15739 * gst/elements/gsttypefindelement.c:
15740 (gst_type_find_element_have_type), (gst_type_find_element_init),
15741 (stop_typefinding), (gst_type_find_element_handle_event),
15742 (find_suggest), (gst_type_find_element_chain),
15743 (gst_type_find_element_checkgetrange),
15744 (gst_type_find_element_getrange), (do_typefind),
15745 (gst_type_find_element_activate):
15746 * gst/gstbuffer.c: (_gst_buffer_sub_free),
15747 (gst_buffer_default_free), (gst_buffer_default_copy),
15748 (gst_buffer_set_caps):
15749 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
15750 (gst_caps_replace):
15751 * gst/gstmessage.c: (gst_message_new),
15752 (gst_message_new_state_changed):
15753 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
15754 (gst_pad_set_checkgetrange_function),
15755 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
15756 (gst_pad_set_caps), (gst_pad_check_pull_range),
15757 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
15759 * gst/gsttypefind.c: (gst_type_find_register):
15760 Make gst_caps_replace() work like other _replace() functions.
15761 Use _caps_replace() where possible.
15762 Make sure _message_new() initialises its field.
15763 Add gst_static_pad_template_get_caps()
15766 2005-04-18 Andy Wingo <wingo@pobox.com>
15768 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
15769 on the peer, not the pad. I think that was a typo. Pass an extra
15770 arg to see if random access is possible. Activate the pads as
15771 PULL_RANGE if possible.
15773 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
15775 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
15776 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
15779 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15781 * docs/faq/using.xml:
15782 Add note on gstreamer-properties (#154996).
15784 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15786 * docs/random/bbb/optional-properties:
15787 Some analysis on optional properties.
15789 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15791 * docs/gst/tmpl/gstelementfactory.sgml:
15792 * gst/gstelement.h:
15793 * gst/gstelementfactory.c: (gst_element_factory_init),
15794 (gst_element_factory_cleanup), (gst_element_register),
15795 (__gst_element_factory_add_static_pad_template),
15796 (gst_element_factory_get_static_pad_templates),
15797 (gst_element_factory_can_src_caps),
15798 (gst_element_factory_can_sink_caps):
15799 * gst/registries/Makefile.am:
15800 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
15801 (gst_xml_registry_class_init), (gst_xml_registry_init),
15802 (gst_xml_registry_new), (gst_xml_registry_set_property),
15803 (gst_xml_registry_get_property), (get_time), (make_dir),
15804 (gst_xml_registry_get_perms_func),
15805 (plugin_times_older_than_recurse), (plugin_times_older_than),
15806 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
15807 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
15808 (add_to_char_array), (read_string), (read_uint), (read_enum),
15809 (load_pad_template), (load_feature), (load_plugin), (load_paths),
15810 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
15811 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
15812 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
15813 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
15814 (gst_xml_registry_rebuild):
15815 * gst/registries/gstlibxmlregistry.h:
15816 * tools/gst-compprep.c: (main):
15817 * tools/gst-inspect.c: (print_pad_templates_info):
15818 * tools/gst-xmlinspect.c: (print_element_info):
15819 Use libxml2 for registry parsing, use staticpadtemplates in
15820 elementfactories. Makes gst_init() +/- 10x faster.
15822 2005-04-12 Wim Taymans <wim@fluendo.com>
15824 * gst/base/Makefile.am:
15825 * gst/base/gstbasesink.c: (gst_basesink_base_init),
15826 (gst_basesink_pad_getcaps), (gst_basesink_init),
15827 (gst_basesink_event), (gst_basesink_change_state):
15828 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
15829 (gst_basesrc_init), (gst_basesrc_query),
15830 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
15831 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
15832 (gst_basesrc_check_get_range), (gst_basesrc_loop),
15833 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
15834 (gst_basesrc_stop), (gst_basesrc_activate),
15835 (gst_basesrc_change_state):
15836 * gst/base/gsttypefindhelper.c: (helper_find_peek),
15837 (helper_find_suggest), (gst_type_find_helper):
15838 * gst/base/gsttypefindhelper.h:
15839 * gst/elements/Makefile.am:
15840 * gst/elements/gstelements.c:
15841 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
15842 (gst_fakesink_get_times), (gst_fakesink_event),
15843 (gst_fakesink_preroll), (gst_fakesink_render):
15844 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
15845 (gst_fakesrc_init), (gst_fakesrc_event_handler),
15846 (gst_fakesrc_get_property), (gst_fakesrc_create),
15847 (gst_fakesrc_start), (gst_fakesrc_stop):
15848 * gst/elements/gstfakesrc.h:
15849 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
15850 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
15851 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
15852 (gst_filesrc_create_read), (gst_filesrc_create),
15853 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
15854 (gst_filesrc_start):
15855 * gst/elements/gsttypefindelement.c:
15856 (gst_type_find_element_have_type), (gst_type_find_element_init),
15857 (start_typefinding), (stop_typefinding), (push_buffer_store),
15858 (gst_type_find_element_handle_event),
15859 (gst_type_find_element_chain),
15860 (gst_type_find_element_checkgetrange),
15861 (gst_type_find_element_getrange), (do_typefind),
15862 (gst_type_find_element_activate),
15863 (gst_type_find_element_change_state):
15864 * gst/elements/gsttypefindelement.h:
15865 * gst/gstpipeline.c: (pipeline_bus_handler):
15866 Added typefind helper.
15867 Small preroll fix in the base sink.
15868 Disable typefind code in basesrc.
15869 Crude port of typefindelement.
15873 2005-04-11 Wim Taymans <wim@fluendo.com>
15875 * check/gst/gstbus.c: (gstbus_suite):
15876 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
15877 * check/gstcheck.h:
15878 Fix up the timeout so that the test does not fail.
15880 2005-04-06 Wim Taymans <wim@fluendo.com>
15883 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
15884 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
15885 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
15886 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
15887 (gst_basesrc_check_get_range), (gst_basesrc_loop),
15888 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
15889 (gst_basesrc_stop), (gst_basesrc_activate),
15890 (gst_basesrc_change_state), (basesrc_find_peek),
15891 (basesrc_find_suggest), (gst_basesrc_type_find):
15892 * gst/base/gstbasesrc.h:
15893 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
15894 (gst_filesrc_class_init), (gst_filesrc_init),
15895 (gst_filesrc_finalize), (gst_filesrc_set_location),
15896 (gst_filesrc_set_property), (gst_filesrc_get_property),
15897 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
15898 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
15899 (gst_filesrc_create_read), (gst_filesrc_create),
15900 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
15901 * gst/elements/gstfilesrc.h:
15902 * gst/gstelement.c: (gst_element_get_state_func),
15903 (gst_element_lost_state), (gst_element_pads_activate):
15904 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
15905 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
15906 (gst_pad_pull_range):
15908 More work on the generic source base class, implement seeking,
15910 Make filesrc extend the base source class.
15911 Added gst_pad_set_checkgetrange_function to GstPad.
15913 2005-04-06 Andy Wingo <wingo@pobox.com>
15915 * pkgconfig/gstreamer-base.pc.in:
15916 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
15918 * pkgconfig/Makefile.am:
15919 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
15921 2005-04-04 Wim Taymans <wim@fluendo.com>
15923 * gst/base/Makefile.am:
15925 * gst/base/gstbasesink.c: (gst_basesink_base_init),
15926 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
15927 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
15928 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
15929 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
15930 (gst_basesrc_base_init), (gst_basesrc_class_init),
15931 (gst_basesrc_init), (gst_basesrc_get_formats),
15932 (gst_basesrc_get_query_types), (gst_basesrc_query),
15933 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
15934 (gst_basesrc_set_property), (gst_basesrc_get_property),
15935 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
15936 (gst_basesrc_loop), (gst_basesrc_activate),
15937 (gst_basesrc_change_state):
15938 * gst/base/gstbasesrc.h:
15939 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
15940 (gst_fakesrc_class_init), (gst_fakesrc_init),
15941 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
15942 (gst_fakesrc_get_property), (gst_fakesrc_create):
15943 * gst/elements/gstfakesrc.h:
15944 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
15945 (gst_filesrc_open_file), (gst_filesrc_loop),
15946 (gst_filesrc_activate), (filesrc_find_peek),
15947 (gst_filesrc_type_find):
15948 Made base source class, make fakesrc extend it.
15949 Add comments to basesink class.
15950 Some filesrc cleanup.
15952 2005-03-31 David Schleef <ds@schleef.org>
15954 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
15955 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
15956 expected to link against libgstreamer.
15957 * gst/base/Makefile.am: link against libgstreamer
15958 * gst/elements/Makefile.am: same
15960 2005-03-31 Andy Wingo <wingo@pobox.com>
15962 * tests/instantiate/Makefile.am:
15963 * tests/instantiate/caps.c: Add test to test speed of caps copy
15966 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
15967 GMemChunk to be fair.
15969 * gst/gsttrashstack.h: Remove warning about using the fallback
15970 trash stack implementation, it's still faster than malloc.
15972 2005-03-30 Andy Wingo <wingo@pobox.com>
15974 * tests/complexity.c: Add a copyright.
15976 2005-03-31 Wim Taymans <wim@fluendo.com>
15978 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
15979 (gst_base_transform_class_init), (gst_base_transform_init),
15980 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
15981 (gst_base_transform_get_property),
15982 (gst_base_transform_sink_activate),
15983 (gst_base_transform_src_activate),
15984 (gst_base_transform_change_state):
15985 * gst/base/gstbasetransform.h:
15986 * gst/elements/gstidentity.c: (gst_identity_class_init),
15987 (gst_identity_event), (gst_identity_check_perfect),
15988 (gst_identity_transform), (gst_identity_start),
15989 (gst_identity_stop):
15990 Added start/stop methods to transform base class so subclasses
15991 don't need to deal with state changes even.
15993 2005-03-31 Wim Taymans <wim@fluendo.com>
15995 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
15996 (gst_event_new_discontinuous), (gst_event_discont_get_value):
15998 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
15999 (gst_pad_pull_range):
16000 Added rate to the discont event to prepare for variable speed
16001 and reverse playback.
16003 2005-03-29 David Schleef <ds@schleef.org>
16006 * testsuite/trigger/Makefile.am:
16007 * testsuite/trigger/trigger.c: A little example program to show
16008 how trigger-based elements can work.
16010 2005-03-29 Wim Taymans <wim@fluendo.com>
16012 * gst/base/Makefile.am:
16014 * gst/base/gstbasesink.c: (gst_basesink_get_type),
16015 (gst_basesink_base_init), (gst_basesink_class_init),
16016 (gst_basesink_pad_getcaps), (gst_basesink_init),
16017 (gst_basesink_activate), (gst_basesink_change_state):
16018 * gst/base/gstbasesink.h:
16019 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
16020 (gst_base_transform_base_init), (gst_base_transform_finalize),
16021 (gst_base_transform_class_init), (gst_base_transform_init),
16022 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
16023 (gst_base_transform_event), (gst_base_transform_getrange),
16024 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
16025 (gst_base_transform_set_property),
16026 (gst_base_transform_get_property),
16027 (gst_base_transform_sink_activate),
16028 (gst_base_transform_src_activate),
16029 (gst_base_transform_change_state):
16030 * gst/base/gstbasetransform.h:
16031 * gst/elements/gstidentity.c: (gst_identity_finalize),
16032 (gst_identity_class_init), (gst_identity_init),
16033 (gst_identity_event), (gst_identity_check_perfect),
16034 (gst_identity_transform), (gst_identity_set_property),
16035 (gst_identity_get_property), (gst_identity_change_state):
16036 * gst/elements/gstidentity.h:
16037 * gst/gstelement.c: (gst_element_get_state_func),
16038 (gst_element_lost_state), (gst_element_pads_activate):
16039 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16040 (gst_pad_check_pull_range), (gst_pad_pull_range):
16042 Simplify pad activation.
16043 Added function to check if pull_range can be performed.
16044 Error out when pulling inactive or flushing pads.
16045 Removed const from refcounted types as it does not make sense.
16046 Simplify pad templates in basesink
16047 Added base class for simple 1-to-1 transforms.
16048 Make identity subclass the base transform.
16050 2005-03-29 Andy Wingo <wingo@pobox.com>
16052 * docs/libs/gstreamer-libs-overrides.txt:
16053 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
16054 really don't understand what's going on, but like whatever. I want
16057 * docs/gst/Makefile.am:
16058 * docs/libs/Makefile.am: Dist the overrides files.
16060 * check/Makefile.am (clean-local): Remove .libs directories.
16062 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
16063 elements to EXTRA_DIST, so po/ files are happy.
16065 * po/POTFILES.in: Er, remove it here.
16067 * po/POTFILES: Remove gstspider.c.
16069 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
16071 * docs/libs/gstreamer-libs-docs.sgml:
16072 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
16075 * tests/complexity.c (main): Set the length of the preroll queue
16076 on the sinks to prevent a lockup.
16078 * libs/gst/dataprotocol/Makefile.am:
16079 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
16080 the same as the one in check/gst-libs/gdp.c.
16082 * po/, docs/gst/: Commit automatic changes to docs and po files.
16084 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
16085 the versioned libgstbase.
16087 * check/Makefile.am: Depend on an unversioned gst-register, seems
16088 to make autoconf happier.
16090 * gst/base/Makefile.am: Make libgstbase a versioned lib.
16092 2005-03-28 Wim Taymans <wim@fluendo.com>
16095 * docs/design/part-gstelement.txt:
16096 * docs/design/part-negotiation.txt:
16097 * docs/design/part-preroll.txt:
16098 * docs/design/part-scheduling.txt:
16099 * docs/design/part-states.txt:
16101 * gst/base/Makefile.am:
16103 * gst/base/gstbasesink.c: (gst_basesink_get_template),
16104 (gst_basesink_base_init), (gst_basesink_class_init),
16105 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
16106 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
16107 (gst_basesink_set_pad_functions),
16108 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
16109 (gst_basesink_set_property), (gst_basesink_get_property),
16110 (gst_base_sink_get_template), (gst_base_sink_get_caps),
16111 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
16112 (gst_basesink_preroll_queue_push),
16113 (gst_basesink_preroll_queue_empty),
16114 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
16115 (gst_basesink_event), (gst_basesink_get_times),
16116 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
16117 (gst_basesink_chain_unlocked), (gst_basesink_chain),
16118 (gst_basesink_loop), (gst_basesink_activate),
16119 (gst_basesink_change_state):
16120 * gst/base/gstbasesink.h:
16121 * gst/elements/Makefile.am:
16122 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
16123 (gst_fakesink_class_init), (gst_fakesink_init),
16124 (gst_fakesink_set_property), (gst_fakesink_get_property),
16125 (gst_fakesink_get_times), (gst_fakesink_event),
16126 (gst_fakesink_preroll), (gst_fakesink_render),
16127 (gst_fakesink_change_state):
16128 * gst/elements/gstfakesink.h:
16129 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
16130 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
16131 * gst/gstelement.c: (gst_element_add_pad),
16132 (gst_element_get_state_func), (gst_element_abort_state),
16133 (gst_element_commit_state), (gst_element_lost_state),
16134 (gst_element_set_state), (gst_element_pads_activate):
16135 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
16136 * gst/gstpipeline.c: (gst_pipeline_send_event),
16137 (gst_pipeline_change_state):
16138 Added state change code.
16139 Added/updated docs.
16140 Added sink base class, make fakesink extend the base class.
16141 Small cleanups in GstPipeline.
16143 2005-03-26 David Schleef <ds@schleef.org>
16145 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
16146 is broken and should be implemented in a different library.
16147 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
16148 * gst/gst.h: remove gstcpu.h
16149 * gst/gstcpu.c: remove
16150 * gst/gstcpu.h: remove
16151 * gst/Makefile.am.future: Remove this file. It's ancient.
16153 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16155 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
16156 (gst_bin_send_event):
16157 Add default event/set_manager handlers. The set_manager handler
16158 takes care that the manager is distributed over kids that were
16159 already in the bin before the manager was set. The event handler
16160 is a utility virtual function that sends the event over all sinks,
16161 so that gst_element_send_event (bin, event); has the expected
16163 * gst/gstpad.c: (gst_pad_event_default):
16164 Re-install default event handling for discontinuities, so that
16165 seeking works without requiring hacks in applications or extra
16167 * gst/gstpipeline.c: (gst_pipeline_class_init),
16168 (gst_pipeline_send_event):
16169 Half hack, half utility: set a pipeline to PAUSED for seek events,
16170 since that is the only way we can guarantee a/v sync. Means that
16171 you can do gst_element_seek (pipeline, method, pos); on a pipeline
16172 and it "just works".
16174 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16176 * gst/gstpipeline.c: (gst_pipeline_use_clock):
16177 Lock/unlock mismatch.
16179 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
16181 * docs/faq/gst-uninstalled:
16182 add gst-plugins-base
16183 * docs/gst/Makefile.am:
16184 don't error out until docs are fixed
16185 * docs/gst/gstreamer.types:
16188 2005-03-22 Wim Taymans <wim@fluendo.com>
16190 * check/Makefile.am:
16191 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
16192 * gst/gststructure.c: (gst_structure_set_valist),
16193 (gst_structure_copy_conditional):
16194 Activated more tests.
16195 Added message test.
16196 Added G_TYPE_POINTER to GstStructure.
16199 2005-03-22 Wim Taymans <wim@fluendo.com>
16201 * docs/design/part-TODO.txt:
16202 * docs/design/part-events.txt:
16203 * docs/design/part-gstbin.txt:
16204 * docs/design/part-gstbus.txt:
16205 * docs/design/part-gstpipeline.txt:
16206 * docs/design/part-messages.txt:
16208 * gst/gstmessage.c:
16211 2005-03-21 Wim Taymans <wim@fluendo.com>
16213 * gst/gstbus.c: (gst_bus_post):
16214 Fix copy-and-paste error.
16216 2005-03-21 Wim Taymans <wim@fluendo.com>
16218 * check/Makefile.am:
16220 * gst/elements/Makefile.am:
16221 * gst/elements/gstelements.c:
16222 * gst/elements/gstfakesink.c: (gst_fakesink_init),
16223 (gst_fakesink_event), (gst_fakesink_chain):
16224 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
16225 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
16226 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
16227 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
16228 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
16229 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
16230 (gst_fakesrc_loop), (gst_fakesrc_activate),
16231 (gst_fakesrc_change_state):
16232 * gst/elements/gstfakesrc.h:
16233 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
16234 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
16235 (gst_filesrc_open_file), (gst_filesrc_loop),
16236 (gst_filesrc_activate), (gst_filesrc_change_state),
16237 (filesrc_find_peek), (filesrc_find_suggest),
16238 (gst_filesrc_type_find):
16239 * gst/elements/gstidentity.c: (gst_identity_finalize),
16240 (gst_identity_class_init), (gst_identity_init),
16241 (gst_identity_proxy_getcaps), (identity_queue_push),
16242 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
16243 (gst_identity_getrange), (gst_identity_chain),
16244 (gst_identity_sink_loop), (gst_identity_src_loop),
16245 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
16246 (gst_identity_set_property), (gst_identity_get_property),
16247 (gst_identity_change_state):
16248 * gst/elements/gstidentity.h:
16249 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
16250 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
16251 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
16252 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
16253 (gst_tee_sink_activate):
16254 * gst/elements/gsttee.h:
16255 * gst/gst.c: (gst_register_core_elements), (init_post):
16257 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
16258 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
16259 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
16260 (gst_bin_change_state):
16262 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
16263 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
16264 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
16265 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
16266 (gst_bus_set_sync_handler), (gst_bus_create_watch),
16267 (bus_watch_callback), (bus_watch_destroy),
16268 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
16269 (poll_timeout), (gst_bus_poll):
16273 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
16274 (gst_element_post_message), (gst_element_message_full),
16275 (gst_element_get_state_func), (gst_element_get_state),
16276 (gst_element_abort_state), (gst_element_commit_state),
16277 (gst_element_lost_state), (gst_element_set_state),
16278 (gst_element_pads_activate), (gst_element_change_state),
16279 (gst_element_dispose), (gst_element_set_manager_func),
16280 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
16281 (gst_element_set_manager), (gst_element_get_manager),
16282 (gst_element_set_bus), (gst_element_get_bus),
16283 (gst_element_set_scheduler), (gst_element_get_scheduler):
16284 * gst/gstelement.h:
16285 * gst/gstevent.c: (gst_event_new_segment_seek),
16286 (gst_event_new_flush):
16288 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
16289 (_gst_message_free), (gst_message_get_type), (gst_message_new),
16290 (gst_message_new_eos), (gst_message_new_error),
16291 (gst_message_new_warning), (gst_message_new_tag),
16292 (gst_message_new_state_changed), (gst_message_new_application),
16293 (gst_message_get_structure), (gst_message_parse_tag),
16294 (gst_message_parse_state_changed), (gst_message_parse_error),
16295 (gst_message_parse_warning):
16296 * gst/gstmessage.h:
16297 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
16298 (gst_real_pad_set_property), (gst_pad_set_active),
16299 (gst_pad_is_active), (gst_pad_set_blocked_async),
16300 (gst_pad_set_blocked), (gst_pad_is_blocked),
16301 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
16302 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
16303 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
16304 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
16305 (gst_pad_link_filtered), (gst_pad_relink_filtered),
16306 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
16307 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
16308 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
16309 (gst_pad_set_caps), (gst_pad_configure_sink),
16310 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
16311 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
16312 (gst_real_pad_dispose), (gst_real_pad_finalize),
16313 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
16314 (gst_pad_event_default_dispatch), (gst_pad_event_default),
16315 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
16317 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
16318 (pipeline_bus_handler), (gst_pipeline_change_state),
16319 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
16320 * gst/gstpipeline.h:
16322 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
16323 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
16324 (gst_queue_link_src), (gst_queue_bufferalloc),
16325 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
16326 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
16327 (gst_queue_loop), (gst_queue_handle_src_event),
16328 (gst_queue_handle_src_query), (gst_queue_src_activate),
16329 (gst_queue_change_state):
16331 * gst/gstscheduler.c: (gst_scheduler_init),
16332 (gst_scheduler_dispose), (gst_scheduler_create_task),
16333 (gst_scheduler_factory_create):
16334 * gst/gstscheduler.h:
16335 * gst/gststructure.c: (gst_structure_get_type),
16336 (gst_structure_copy_conditional):
16337 * gst/gststructure.h:
16338 * gst/gsttaginterface.h:
16339 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
16340 (gst_task_init), (gst_task_dispose), (gst_task_create),
16341 (gst_task_get_state), (gst_task_start), (gst_task_stop),
16347 * gst/schedulers/Makefile.am:
16348 * gst/schedulers/cothreads_compat.h:
16349 * gst/schedulers/entryscheduler.c:
16350 * gst/schedulers/faircothreads.c:
16351 * gst/schedulers/faircothreads.h:
16352 * gst/schedulers/fairscheduler.c:
16353 * gst/schedulers/gstbasicscheduler.c:
16354 * gst/schedulers/gstoptimalscheduler.c:
16355 * gst/schedulers/gthread-cothreads.h:
16356 * gst/schedulers/threadscheduler.c:
16357 (gst_thread_scheduler_task_get_type),
16358 (gst_thread_scheduler_task_class_init),
16359 (gst_thread_scheduler_task_init),
16360 (gst_thread_scheduler_task_start),
16361 (gst_thread_scheduler_task_stop),
16362 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
16363 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
16364 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
16365 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
16367 * libs/gst/Makefile.am:
16368 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
16369 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
16370 (gst_file_pad_parent_set):
16371 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
16372 (gst_dp_event_from_packet):
16373 * tests/complexity.c: (main):
16374 * tests/mass_elements.c: (main):
16375 * testsuite/states/locked.c: (message_received), (main):
16376 * testsuite/states/parent.c: (main):
16377 * tools/gst-inspect.c: (print_element_flag_info),
16378 (print_implementation_info), (print_pad_info):
16379 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
16381 * tools/gst-md5sum.c: (event_loop), (main):
16382 * tools/gst-typefind.c: (main):
16383 * tools/gst-xmlinspect.c: (print_element_info):
16385 Added GstBus for mainloop integration.
16386 Added GstMessage for sending notifications on the bus.
16387 Added GstTask as an abstraction for pipeline entry points.
16389 Removed Schedulers.
16390 Simplified GstQueue for multithreaded core.
16391 Made _link threadsafe, removed old capsnego.
16392 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
16393 Added pad blocking functions.
16394 Reworked scheduling functions in GstPad to prepare for
16395 scheduling updates soon.
16396 Moved events out of data stream.
16397 Simplified GstEvent types.
16398 Added return values to push/pull.
16399 Removed clocking from GstElement.
16400 Added prototypes for state change function for next merge.
16401 Removed iterate from bins and state change management.
16402 Fixed some elements, disabled others for now.
16403 Fixed -inspect and -launch.
16404 Added check for GstBus.
16406 2005-03-10 Wim Taymans <wim@fluendo.com>
16408 * docs/design/part-MT-refcounting.txt:
16409 * docs/design/part-clocks.txt:
16410 * docs/design/part-gstelement.txt:
16411 * docs/design/part-gstobject.txt:
16412 * docs/design/part-standards.txt:
16413 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
16414 (gst_bin_remove_func), (gst_bin_remove):
16418 * testsuite/clock/clock1.c: (main):
16419 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
16421 * testsuite/dlopen/loadgst.c: (do_test):
16422 * testsuite/refcounting/bin.c: (add_remove_test1),
16423 (add_remove_test2), (main):
16424 * testsuite/refcounting/element.c: (main):
16425 * testsuite/refcounting/element_pad.c: (main):
16426 * testsuite/refcounting/pad.c: (main):
16427 * tools/gst-launch.c: (sigint_handler_sighandler):
16428 * tools/gst-typefind.c: (main):
16430 Added doc about clock.
16431 removed gst_bin_iterate_recurse_up(), marked methods
16433 Fix more testsuites.
16435 2005-03-09 Wim Taymans <wim@fluendo.com>
16437 * gst/gstpad.c: (gst_pad_get_direction),
16438 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
16439 (gst_pad_collect_valist):
16440 * testsuite/bins/interface.c: (main):
16441 * testsuite/caps/audioscale.c: (test_caps):
16442 * testsuite/caps/caps.c: (test1), (test2), (test3):
16443 * testsuite/caps/deserialize.c: (main):
16444 * testsuite/caps/enumcaps.c: (main):
16445 * testsuite/caps/filtercaps.c: (main):
16446 * testsuite/caps/intersect2.c: (main):
16447 * testsuite/caps/random.c: (main):
16448 * testsuite/caps/renegotiate.c: (my_fixate), (main):
16449 * testsuite/caps/sets.c: (check_caps):
16450 * testsuite/caps/simplify.c: (check_caps), (main):
16451 * testsuite/caps/subtract.c: (check_caps):
16452 Fix _pad_get_direction wrt ghostpads.
16453 Fix caps testsuite.
16455 2005-03-09 Wim Taymans <wim@fluendo.com>
16457 * check/Makefile.am:
16458 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
16459 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
16460 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
16461 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
16462 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
16463 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
16464 (gst_bin_remove), (gst_bin_iterate_recurse_up),
16465 (bin_element_is_sink), (gst_bin_iterate_sinks),
16466 (gst_bin_iterate_all_by_interface):
16468 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
16469 (gst_element_change_state), (gst_element_dispose),
16470 (gst_element_finalize), (gst_element_set_loop_function):
16471 * gst/gstelement.h:
16472 * gst/gstiterator.c: (find_custom_fold_func):
16473 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
16474 (gst_pad_collectv), (gst_pad_collect_valist),
16475 (gst_pad_template_new):
16476 * gst/gstpipeline.c: (gst_pipeline_class_init),
16477 (gst_pipeline_dispose), (gst_pipeline_set_property),
16478 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
16479 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
16480 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
16482 * gst/schedulers/entryscheduler.c:
16483 * gst/schedulers/gstbasicscheduler.c:
16484 (gst_basic_scheduler_cothreaded_chain),
16485 (gst_basic_scheduler_chain_add_element):
16486 * testsuite/bins/interface.c: (main):
16488 Added GstSystemClock test.
16489 Implemented clock distribution code in GstBin.
16490 Implemented iterate sinks method for future use.
16491 Rearranged gstelement.h
16492 Fix GstIterator comparison bug.
16493 Moved some code to GstPipeline, mostly clocking related.
16495 2005-03-09 Wim Taymans <wim@fluendo.com>
16498 * gst/gst_private.h:
16499 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
16500 (gst_bin_remove_func), (gst_bin_remove),
16501 (gst_bin_get_by_name_recurse_up):
16502 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
16503 (gst_clock_id_compare_func), (gst_clock_id_wait),
16504 (gst_clock_id_wait_async), (gst_clock_init),
16505 (gst_clock_adjust_unlocked), (gst_clock_get_time):
16506 * gst/gstelement.h:
16507 * gst/gstinfo.c: (_gst_debug_init):
16509 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
16510 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
16512 Bump version number, we're now 0.9.0
16513 Add future debugging category.
16514 Fix NULL _unref() in _get_by_name_recurse_up
16515 Rearrange gstpad.h.
16518 2005-03-08 Wim Taymans <wim@fluendo.com>
16520 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
16521 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
16522 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
16523 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
16524 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
16525 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
16526 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
16527 * gst/elements/gstidentity.c: (gst_identity_class_init):
16528 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
16529 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
16530 * gst/elements/gstshaper.c: (gst_shaper_class_init):
16531 * gst/elements/gststatistics.c: (gst_statistics_class_init):
16532 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
16534 * gst/gstelement.c: (gst_element_class_init),
16535 (gst_element_base_class_init), (gst_element_init),
16536 (gst_element_get_random_pad), (gst_element_wait_state_change),
16537 (gst_element_change_state), (gst_element_dispose),
16538 (gst_element_finalize), (gst_element_set_loop_function):
16539 * gst/gstelement.h:
16540 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
16541 * gst/gstthread.c: (gst_thread_class_init),
16542 (gst_thread_release_children_locks), (gst_thread_change_state):
16543 * gst/schedulers/gstbasicscheduler.c:
16544 (gst_basic_scheduler_loopfunc_wrapper),
16545 (gst_basic_scheduler_chain_wrapper),
16546 (gst_basic_scheduler_src_wrapper),
16547 (gst_basic_scheduler_remove_element):
16548 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
16549 Remove threadsafe properties. Fix elements because GObject
16550 complains when installing a property before declaring a
16551 set/get_property handler.
16552 Rearrange gstelement.h file, use STATE macros for state locks.
16553 Free mutexes in the finalize method instead of dispose.
16555 2005-03-08 Wim Taymans <wim@fluendo.com>
16557 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
16558 * gst/gstthread.c: (gst_thread_release_children_locks):
16559 Added parentage check.
16560 Fix build og GstThread again.
16562 2005-03-08 Wim Taymans <wim@fluendo.com>
16564 * docs/design/part-MT-refcounting.txt:
16565 * docs/design/part-conventions.txt:
16566 * docs/design/part-gstobject.txt:
16567 * docs/design/part-relations.txt:
16568 * docs/design/part-standards.txt:
16569 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
16570 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
16571 (gst_bin_get_by_name), (gst_bin_get_by_interface),
16572 (gst_bin_iterate_all_by_interface):
16575 * gst/gstelement.c: (gst_element_class_init),
16576 (gst_element_change_state), (gst_element_set_loop_function):
16577 * gst/gstelement.h:
16578 * gst/gstiterator.c:
16579 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
16580 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
16581 (gst_object_dispatch_properties_changed), (gst_object_set_name),
16582 (gst_object_set_parent), (gst_object_unparent),
16583 (gst_object_check_uniqueness):
16585 Docs updates, clean up some headers.
16587 2005-03-07 Wim Taymans <wim@fluendo.com>
16589 * check/.cvsignore:
16590 * check/Makefile.am:
16591 * check/gst-libs/.cvsignore:
16592 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
16593 * check/gst/.cvsignore:
16594 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
16595 (START_TEST), (gstbus_suite), (main):
16596 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
16597 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
16598 (gst_data_suite), (main):
16599 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
16600 (add_fold_func), (gstiterator_suite), (main):
16601 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
16602 (thread_name_object), (thread_name_object_default),
16603 (gst_object_name_compare), (gst_object_suite), (main):
16604 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
16605 (gst_pad_suite), (main):
16606 * check/gstcheck.c: (gst_check_log_message_func),
16607 (gst_check_log_critical_func), (gst_check_init):
16608 * check/gstcheck.h:
16609 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
16610 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
16613 2005-03-07 Wim Taymans <wim@fluendo.com>
16615 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
16616 (gst_list_iterator_next), (gst_list_iterator_resync),
16617 (gst_list_iterator_free), (gst_iterator_new_list),
16618 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
16619 (gst_iterator_free), (gst_iterator_push), (filter_next),
16620 (filter_resync), (filter_uninit), (filter_free),
16621 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
16622 (gst_iterator_foreach), (find_custom_fold_func),
16623 (gst_iterator_find_custom):
16624 * gst/gstiterator.h:
16625 Added missing files.
16627 2005-03-07 Wim Taymans <wim@fluendo.com>
16631 * docs/design/part-MT-refcounting.txt:
16632 * docs/design/part-conventions.txt:
16633 * docs/design/part-gstobject.txt:
16634 * docs/design/part-relations.txt:
16635 * examples/mixer/mixer.c: (main):
16636 * examples/thread/thread.c: (eos), (main):
16638 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
16639 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
16640 (gst_spider_plug_from_srcpad):
16641 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
16642 (gst_spider_identity_change_state),
16643 (gst_spider_identity_sink_loop_type_finding):
16644 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
16645 * gst/elements/gstidentity.c: (gst_identity_init):
16646 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
16647 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
16648 * gst/elements/gsttypefindelement.c: (free_entry):
16651 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
16652 (gst_bin_set_clock_func), (gst_bin_auto_clock),
16653 (gst_bin_set_index), (gst_bin_set_element_sched),
16654 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
16655 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
16656 (gst_bin_iterate_elements), (iterate_child_recurse),
16657 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
16658 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
16659 (compare_interface), (gst_bin_get_by_interface),
16660 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
16662 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
16663 (gst_buffer_default_free), (gst_buffer_default_copy),
16664 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
16665 (gst_buffer_create_sub):
16667 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
16668 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
16669 (gst_caps_unref), (gst_static_caps_get),
16670 (gst_caps_remove_and_get_structure), (gst_caps_append),
16671 (gst_caps_append_structure), (gst_caps_remove_structure),
16672 (gst_caps_copy_nth), (gst_caps_set_simple),
16673 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
16674 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
16675 (gst_caps_structure_intersect_field), (gst_caps_intersect),
16676 (gst_caps_structure_subtract_field), (gst_caps_subtract),
16677 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
16678 (gst_caps_structure_figure_out_union),
16679 (gst_caps_switch_structures), (gst_caps_do_simplify),
16680 (gst_caps_replace), (gst_caps_from_string),
16681 (gst_caps_copy_conditional):
16683 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
16684 (_gst_clock_id_free), (gst_clock_id_unref),
16685 (gst_clock_id_compare_func), (gst_clock_id_wait),
16686 (gst_clock_id_wait_async), (gst_clock_class_init),
16687 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
16688 (gst_clock_get_time), (gst_clock_set_time_adjust),
16689 (gst_clock_set_property), (gst_clock_get_property):
16692 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
16693 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
16695 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
16696 (gst_element_requires_clock), (gst_element_provides_clock),
16697 (gst_element_set_clock), (gst_element_clock_wait),
16698 (gst_element_wait), (gst_element_set_time_delay),
16699 (gst_element_is_indexable), (gst_element_add_pad),
16700 (gst_element_add_ghost_pad), (gst_element_remove_pad),
16701 (pad_compare_name), (gst_element_get_static_pad),
16702 (gst_element_request_pad), (gst_element_get_request_pad),
16703 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
16704 (gst_element_class_get_pad_template_list),
16705 (gst_element_class_get_pad_template), (gst_element_error_func),
16706 (gst_element_get_random_pad), (gst_element_get_event_masks),
16707 (gst_element_send_event), (gst_element_seek),
16708 (gst_element_get_query_types), (gst_element_query),
16709 (gst_element_get_formats), (gst_element_convert),
16710 (gst_element_is_locked_state), (gst_element_set_locked_state),
16711 (gst_element_sync_state_with_parent), (gst_element_change_state),
16712 (gst_element_finalize), (gst_element_yield),
16713 (gst_element_interrupt), (gst_element_set_scheduler),
16714 (gst_element_get_scheduler), (gst_element_set_loop_function):
16715 * gst/gstelement.h:
16717 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
16718 (gst_format_get_by_nick), (gst_format_get_details),
16719 (gst_format_iterate_definitions):
16721 * gst/gstindex.c: (gst_index_gtype_resolver):
16724 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
16725 (gst_mem_chunk_free):
16726 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
16727 (gst_object_ref), (gst_object_unref), (gst_object_sink),
16728 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
16729 (gst_object_dispatch_properties_changed),
16730 (gst_object_set_name_default), (gst_object_set_name),
16731 (gst_object_get_name), (gst_object_set_name_prefix),
16732 (gst_object_get_name_prefix), (gst_object_set_parent),
16733 (gst_object_get_parent), (gst_object_unparent),
16734 (gst_object_check_uniqueness), (gst_object_save_thyself),
16735 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
16736 (gst_object_set_property), (gst_object_get_property),
16737 (gst_object_get_path_string):
16739 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
16740 (gst_real_pad_init), (gst_real_pad_get_property),
16741 (gst_pad_custom_new), (gst_pad_get_direction),
16742 (gst_pad_set_active), (gst_pad_is_active),
16743 (gst_pad_set_event_function), (gst_pad_is_linked),
16744 (gst_pad_link_free), (gst_pad_link_intersect),
16745 (gst_pad_link_fixate), (gst_pad_set_caps),
16746 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
16747 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
16748 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
16749 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
16750 (gst_pad_get_caps), (gst_pad_peer_get_caps),
16751 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
16752 (gst_pad_realize), (gst_pad_get_allowed_caps),
16753 (gst_real_pad_dispose), (gst_real_pad_finalize),
16754 (gst_pad_collectv), (gst_pad_collect_valist),
16755 (gst_pad_template_dispose), (gst_pad_template_new),
16756 (gst_pad_get_internal_links):
16758 * gst/gstpipeline.c: (gst_pipeline_dispose),
16759 (gst_pipeline_change_state):
16760 * gst/gstpipeline.h:
16762 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
16763 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
16764 * gst/gstpluginfeature.h:
16765 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
16766 * gst/gstquery.c: (_gst_query_type_initialize),
16767 (gst_query_type_register), (gst_query_type_get_by_nick),
16768 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
16770 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
16771 * gst/gstscheduler.c: (gst_scheduler_add_element),
16772 (gst_scheduler_factory_create):
16773 * gst/gststructure.c: (gst_structure_set_parent_refcount),
16774 (gst_structure_free), (gst_structure_set_name),
16775 (gst_structure_id_set_value), (gst_structure_set_value),
16776 (gst_structure_set_valist), (gst_structure_remove_field),
16777 (gst_structure_remove_fields),
16778 (gst_structure_remove_fields_valist),
16779 (gst_structure_remove_all_fields), (gst_structure_foreach),
16780 (gst_structure_map_in_place),
16781 (gst_caps_structure_fixate_field_nearest_int),
16782 (gst_caps_structure_fixate_field_nearest_double):
16783 * gst/gststructure.h:
16784 * gst/gstsystemclock.c: (gst_system_clock_class_init),
16785 (gst_system_clock_init), (gst_system_clock_dispose),
16786 (gst_system_clock_async_thread),
16787 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
16788 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
16789 * gst/gstsystemclock.h:
16790 * gst/gsttag.c: (gst_tag_list_add_value_internal),
16791 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
16792 * gst/gsttaginterface.c:
16793 * gst/gstthread.c: (gst_thread_dispose),
16794 (gst_thread_release_children_locks), (gst_thread_change_state),
16795 (gst_thread_main_loop):
16796 * gst/gsttrashstack.h:
16797 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
16799 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16800 (gst_element_request_pad), (gst_element_get_pad_from_template),
16801 (gst_element_request_compatible_pad),
16802 (gst_element_get_compatible_pad_filtered),
16803 (gst_element_get_compatible_pad), (gst_element_state_get_name),
16804 (gst_element_link_pads_filtered), (gst_element_link_filtered),
16805 (gst_element_link_many), (gst_element_link),
16806 (gst_element_link_pads), (gst_element_unlink_pads),
16807 (gst_element_unlink_many), (gst_element_unlink),
16808 (gst_pad_can_link_filtered), (gst_pad_can_link),
16809 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
16810 (gst_object_default_error), (gst_bin_add_many),
16811 (gst_bin_remove_many), (gst_element_populate_std_props),
16812 (gst_element_class_install_std_props), (gst_buffer_merge),
16813 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
16814 (link_fold_func), (gst_pad_proxy_setcaps):
16816 * gst/gstvalue.c: (gst_value_deserialize_string):
16817 * gst/parse/grammar.y:
16818 * gst/schedulers/gstbasicscheduler.c:
16819 (gst_basic_scheduler_cothreaded_chain),
16820 (gst_basic_scheduler_chain_recursive_add),
16821 (gst_basic_scheduler_pad_link):
16822 * gst/schedulers/gstoptimalscheduler.c:
16823 (get_group_schedule_function),
16824 (gst_opt_scheduler_state_transition),
16825 (gst_opt_scheduler_add_element), (element_get_reachables_func):
16826 * libs/gst/bytestream/bytestream.c:
16827 * libs/gst/dataprotocol/dataprotocol.c:
16828 (gst_dp_header_from_buffer):
16831 * tests/threadstate/threadstate2.c: (eos):
16832 * tools/gst-compprep.c: (main):
16833 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
16834 (print_pad_info), (print_children_info):
16835 * tools/gst-launch.c: (idle_func), (main):
16836 * tools/gst-md5sum.c: (idle_func), (main):
16837 * tools/gst-xmlinspect.c: (print_element_info):
16838 First THREADED backport attempt, focusing on adding locks and
16839 making sure the API is threadsafe. Needs more work. More docs
16842 2005-02-24 Andy Wingo <wingo@pobox.com>
16844 * tests/bench-complexity.scm:
16845 * tests/complexity.gnuplot: New files, good for running complexity
16848 * tests/Makefile.am:
16849 * tests/complexity.c: New test, sets up N elements, at each level
16850 teeing into M streams per element. Eeeenteresting.
16852 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
16853 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
16854 running bench-mass_elements.scm.
16856 * tests/bench-mass_elements.scm: New script, runs mass_elements
16857 for various numbers of identities, outputting the results to a
16858 file. Requires guile 1.6. Just for testing.
16860 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
16862 * gst/schedulers/fairscheduler.c:
16863 compile with debug disabled
16865 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
16868 hunting season on 0.9 is now OPEN