1 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
5 * gst-element-check.m4:
6 * gst-element-check.m4.in:
7 Make gst-element-check-$VERSION.m4 call gst-inspect-$VERSION
8 instead of the unversioned gst-inspect (#324176, #168659).
10 2006-07-06 Wim Taymans <wim@fluendo.com>
13 Use a valid int for the _MESSAGE_ANY enum value to avoid compiler
16 2006-07-06 Wim Taymans <wim@fluendo.com>
18 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
19 (gst_base_src_wait), (gst_base_src_update_length),
20 (gst_base_src_get_range), (gst_base_src_default_check_get_range),
21 (gst_base_src_check_get_range), (gst_base_src_pad_check_get_range),
22 (gst_base_src_loop), (gst_base_src_start),
23 (gst_base_src_activate_pull):
25 blocksize == 0 now means the default blocksize when working in push
27 Remove some pointless asserts in _wait function.
28 Fix offset/length calculations and EOS handling. We can now pull 0
29 bytes as well, which is allowed.
30 use _check_get_range() to decide if we can operate in _pull based
32 Fix refcounting leak when check_get_range function was not
34 API GstBaseSrc::blocksize range can be 0 too now (default)
36 * tests/check/elements/filesrc.c: (GST_START_TEST),
38 Added check to test _get_range() behaviour.
40 2006-07-06 Wim Taymans <wim@fluendo.com>
42 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
43 (gst_pad_push), (gst_pad_check_pull_range), (gst_pad_get_range),
46 Lots of comments and docs added to the pad functions.
47 Flesh out the expected behaviour of the get_range() functions.
49 2006-07-06 Wim Taymans <wim@fluendo.com>
58 Remove comma at end of enumerator list.
60 2006-07-05 Sebastien Moutte <sebastien@moutte.net>
62 * win32/common/libgstbase.def:
63 * win32/common/libgstdataprotocol.def:
64 * win32/common/libsgtreamer.def:
65 Add new exported functions.
67 2006-07-05 Wim Taymans <wim@fluendo.com>
69 * libs/gst/base/gstpushsrc.c: (gst_push_src_check_get_range):
70 Add some more docs here and there.
72 2006-07-05 Wim Taymans <wim@fluendo.com>
74 * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_object),
75 (gst_base_sink_loop), (gst_base_sink_get_position):
76 When operating in pull mode update the offset so that we
79 2006-07-05 Wim Taymans <wim@fluendo.com>
81 * gst/gstregistryxml.c: (read_string):
82 Avoid strdup. (will happen in libxml, but hey!)
87 2006-07-05 Wim Taymans <wim@fluendo.com>
89 * gst/gstbuffer.c: (_gst_buffer_copy), (gst_buffer_create_sub):
90 * tests/check/gst/gstbuffer.c: (GST_START_TEST),
92 No point in checking if the size of the subbuffer > 0, the
93 code handles it correclty as demonstrated by unit test.
94 Also add a unit test for the zero sized _new_and_alloc and
97 2006-07-05 Wim Taymans <wim@fluendo.com>
99 * libs/gst/base/gstbasetransform.c:
100 (gst_base_transform_prepare_output_buffer),
101 (gst_base_transform_buffer_alloc),
102 (gst_base_transform_handle_buffer):
103 Make sure the buffer we pass to transform_ip has a refcount of
104 1 and thus is writable. Fixes #343196
106 2006-07-04 Jan Schmidt <thaytan@mad.scientist.com>
108 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
109 (gst_file_src_init), (gst_file_src_set_property),
110 (gst_file_src_get_property), (gst_file_src_map_region):
111 * plugins/elements/gstfilesrc.h:
112 Add "sequential" property, off by default, to use madvise and hint
113 to the kernel that sequential access is desired.
114 Touch all retrieved pages by default to ensure they are pulled
115 into memory. (Closes #345720)
117 2006-07-03 Wim Taymans <wim@fluendo.com>
119 * docs/design/part-block.txt:
120 * docs/design/part-dynamic.txt:
123 2006-07-03 Wim Taymans <wim@fluendo.com>
125 * gst/gstcaps.c: (gst_caps_new_empty), (_gst_caps_free),
126 (gst_caps_unref), (gst_static_caps_get),
127 (gst_caps_append_structure):
128 * gst/gstclock.c: (gst_clock_entry_new), (_gst_clock_id_free):
129 Use GSlice when the glib we build against is >= 2.10
131 2006-07-03 Wim Taymans <wim@fluendo.com>
133 * gst/gstelement.c: (gst_element_pads_activate):
134 Small cleanup in pad activation code.
136 2006-07-03 Wim Taymans <wim@fluendo.com>
138 Patch by: Peter Kjellerstedt <pkj at axis dot com>
140 * gst/gst-i18n-app.h:
141 * gst/gst-i18n-lib.h:
142 * tools/gst-inspect.c: (print_signal_info):
143 The attached patch will make the inclusion of gettext.h unconditional in
144 gst/gst-i18n-app.h and gst/gst-i18n-lib.h, and it will remove the inclusion of
145 libintl.h in tools/gst-inspect.c.
146 This allows use of --disable-nls again and fixes #344642.
148 2006-07-03 Edward Hervey <edward@fluendo.com>
150 * gst/gstpad.c: (handle_pad_block), (gst_pad_push_event):
151 Implement pad blocking on events according to part-block.txt.
152 More comments on behaviour.
153 * tests/check/gst/gstevent.c: (test_event):
154 Send event to peer pad of blocked pad (else it will block).
156 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
158 * libs/gst/check/gstcheck.c: (gst_check_message_error),
159 (gst_check_run_suite):
160 if we get the wrong message, give us the types as string
161 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
163 * tests/check/elements/filesrc.c: (GST_START_TEST):
164 add a test for trying to open a non-existing file
166 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
168 * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
169 add a test for adding self
171 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
173 * libs/gst/check/gstcheck.h:
174 add some assert_ as alias for fail_unless_*
175 * tests/check/gst/gst.c: (GST_START_TEST), (gst_suite):
176 increase test coverage
178 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
181 include lcov.mak for lcov coverage generation
185 2006-07-02 Edward Hervey <edward@fluendo.com>
187 * tests/check/elements/.cvsignore:
190 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
193 don't set CFLAGS and friends for gcov, done from GST_GCOV now
194 * tests/check/Makefile.am:
197 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
199 * gst/gstcaps.c: (gst_caps_remove_and_get_structure):
200 remove gst_caps_simplify; it was not declared and not used
201 and deprecated in 0.8
203 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
205 * docs/faq/gst-uninstalled:
206 don't put empty paths on PYTHONPATH
207 * docs/gst/gstreamer-sections.txt:
208 remove some symbols that are not there
210 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
212 * gst/gstcaps.c: (gst_caps_compare_structures):
214 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
215 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
218 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
220 * libs/gst/dataprotocol/Makefile.am:
221 build dataprotocol test by linking to the lib, instead of
222 compiling the source, so we get coverage
223 * tests/check/Makefile.am:
224 * tests/check/elements/filesrc.c: (event_func), (setup_filesrc),
225 (cleanup_filesrc), (GST_START_TEST), (filesrc_suite):
226 add a test for filesrc
228 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
230 * tests/check/gst/gststructure.c: (GST_START_TEST),
231 (gst_structure_suite):
232 Push coverage from 59.04% to 70.00%
234 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
236 * tests/check/Makefile.am:
237 gst-inspect every element; this makes sure that we also get
238 coverage on element's get/set functions
240 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
243 set CFLAGS and friends to -O0 if gcov is being used
246 * libs/gst/base/Makefile.am:
247 * libs/gst/check/Makefile.am:
248 * libs/gst/controller/Makefile.am:
249 * libs/gst/dataprotocol/Makefile.am:
250 * libs/gst/net/Makefile.am:
251 * plugins/elements/Makefile.am:
252 * plugins/indexers/Makefile.am:
253 add makefile rules to generate gcov data and clean up
254 * tests/check/Makefile.am:
255 add a coverage target that generates an html overview
258 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
260 * tests/check/elements/fakesink.c:
261 * tests/check/elements/fakesrc.c:
262 * tests/check/elements/fdsrc.c:
263 * tests/check/elements/identity.c:
264 * tests/check/generic/sinks.c: (gst_sinks_suite):
265 * tests/check/generic/states.c:
266 * tests/check/gst/gst.c:
267 * tests/check/gst/gstabi.c:
268 * tests/check/gst/gstbin.c:
269 * tests/check/gst/gstbuffer.c: (gst_buffer_suite):
270 * tests/check/gst/gstbus.c: (gst_bus_suite):
271 * tests/check/gst/gstcaps.c: (GST_START_TEST):
272 * tests/check/gst/gstelement.c:
273 * tests/check/gst/gstevent.c: (gst_event_suite):
274 * tests/check/gst/gstghostpad.c:
275 * tests/check/gst/gstiterator.c: (gst_iterator_suite):
276 * tests/check/gst/gstmessage.c: (gst_message_suite):
277 * tests/check/gst/gstminiobject.c:
278 * tests/check/gst/gstobject.c:
279 * tests/check/gst/gstpad.c:
280 * tests/check/gst/gstpipeline.c:
281 * tests/check/gst/gstplugin.c:
282 * tests/check/gst/gstquery.c: (gst_query_suite):
283 * tests/check/gst/gstsegment.c: (gst_segment_suite):
284 * tests/check/gst/gststructure.c:
285 * tests/check/gst/gstsystemclock.c:
286 * tests/check/gst/gsttag.c:
287 * tests/check/gst/gsttask.c: (gst_task_suite):
288 * tests/check/gst/gstutils.c:
289 * tests/check/gst/gstvalue.c:
290 * tests/check/libs/adapter.c:
291 * tests/check/libs/basesrc.c:
292 * tests/check/libs/collectpads.c:
293 * tests/check/libs/controller.c:
294 * tests/check/libs/gdp.c: (gst_dp_suite):
295 * tests/check/libs/gstnetclientclock.c:
296 * tests/check/libs/gstnettimeprovider.c:
297 * tests/check/libs/libsabi.c: (libsabi_suite):
298 * tests/check/libs/typefindhelper.c:
299 * tests/check/pipelines/cleanup.c:
300 * tests/check/pipelines/parse-launch.c:
301 * tests/check/pipelines/simple-launch-lines.c:
302 * tests/check/pipelines/stress.c: (stress_suite):
305 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
307 * libs/gst/check/gstcheck.c: (gst_check_run_suite):
308 * libs/gst/check/gstcheck.h:
309 create a macro and function so that the simple unit test
310 case can be just one macro to create main()
312 2006-06-30 Tim-Philipp Müller <tim at centricular dot net>
314 * gst/gstbin.c: (gst_bin_restore_thyself):
315 * gst/gstxml.c: (gst_xml_make_element):
316 Fix deserialisation from XML. Set parent manually
317 instead of using gst_bin_add(), since gst_bin_add()
318 will unlink all pads of the element being added.
321 2006-06-28 Tim-Philipp Müller <tim at centricular dot net>
323 Patch by: Peter Kjellerstedt <pkj at axis com>
325 * gst/gst.c: (prepare_for_load_plugin_func), (split_and_iterate):
326 Fix missing g_strdup() and double free when using the
327 --gst-plugin-load command line option (#346097).
329 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
332 Promote GST_DEBUG_CATEGORY_STATIC in example in docs.
334 * libs/gst/net/gstnetclientclock.c:
335 * libs/gst/net/gstnettimeprovider.c:
336 Use GST_DEBUG_CATEGORY_STATIC here too (#342503).
338 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
340 * docs/manual/advanced-dataaccess.xml:
341 Fix buffer probe example compilation in
344 2006-06-22 Edward Hervey <edward@fluendo.com>
346 * gst/gstelement.c: (gst_element_pads_activate):
347 We need to deactivate src pads first and then sink pads.
348 The reason is the src pads might be blocking while holding the streaming
349 lock, so we need to deactivate them first so that deactivating the sink
350 pads doesn't block (since it will require the streaming lock).
352 2006-06-22 Wim Taymans <wim@fluendo.com>
354 * libs/gst/base/gstbasetransform.c:
355 (gst_base_transform_buffer_alloc):
356 Forgot to remove two unneeded unrefs.
357 Simplify a check _is_equal allready checks the obvious case.
359 2006-06-22 Wim Taymans <wim@fluendo.com>
361 * docs/design/part-block.txt:
362 Some docs about what pad_block should do.
364 2006-06-22 Wim Taymans <wim@fluendo.com>
366 * gst/gstcaps.c: (gst_caps_replace):
367 Fix crasher when passed NULL. Doc clarification.
368 Optimize for the trivial case.
370 * gst/gstpipeline.c: (gst_pipeline_change_state):
373 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
374 Small documentation cleanup.
376 * libs/gst/base/gstbasetransform.c:
377 (gst_base_transform_buffer_alloc):
378 Don't use silly gst_pad_get_negotiated_caps, GST_PAD_CAPS
379 is what we need and it avoids a whole lot of redundant
382 2006-06-22 Tim-Philipp Müller <tim at centricular dot net>
384 Patch by: Philip Jägenstedt <philip at lysator liu se>
386 * docs/manual/advanced-dataaccess.xml:
387 Fix 'Embedding static elements' section to use
388 GST_PLUGIN_DEFINE_STATIC (#345607).
390 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
392 * tests/check/pipelines/simple-launch-lines.c: (test_stop_from_app):
393 Attempt to 'fix' spuriously failing test case: it seems like the
394 timeout of half a second is simply too small when the system is under
395 load otherwise, and the timeout doesn't really seem to serve any
396 particular purpose here. Give the pipeline a few seconds to preroll
397 first, and then give it another half a second to go from PAUSED to
398 PLAYING and marshal the message into the main thread.
400 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
402 * tools/gst-feedback-m.m:
403 Don't only use unversioned tools, try versioned tools as well
406 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
408 * gst/gstbus.c: (gst_bus_class_init):
409 Fix some typos, make docs more explicit.
411 2006-06-20 Wim Taymans <wim@fluendo.com>
413 * tests/check/gst/gstghostpad.c: (block_callback),
414 (GST_START_TEST), (gst_ghost_pad_suite):
415 Added some more ghostpad tests, mainly blocking
418 2006-06-16 Wim Taymans <wim@fluendo.com>
420 * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
421 (gst_file_sink_close_file), (gst_file_sink_do_seek),
422 (gst_file_sink_event), (gst_file_sink_render):
423 * plugins/elements/gstfilesink.h:
424 Check if we can seek in the file instead of assuming
425 we always can. Post an error when we are asked to seek in a
426 non-seekable file (like a fifo). Fixes #343312.
429 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
431 * tools/gst-launch.1.in:
432 Un-garble (fourcc) bit in filtered caps section.
434 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
436 * docs/manual/advanced-autoplugging.xml:
437 * docs/manual/basics-helloworld.xml:
438 * docs/manual/highlevel-components.xml:
439 Don't leak bus reference in sample code.
441 2006-06-15 Tim-Philipp Müller <tim at centricular dot net>
444 Add default for new --enable-plugin-docs switch.
447 Use new GST_PLUGIN_DOCS macro to check for pyxml etc.
451 Use new ENABLE_PLUGIN_DOCS conditional.
453 2006-06-14 Wim Taymans <wim@fluendo.com>
455 * gst/gstbin.c: (bin_query_duration_done), (gst_bin_query):
456 Make it clear with a FIXME and a real define what the #if 0
459 2006-06-14 Wim Taymans <wim@fluendo.com>
461 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
462 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
463 * libs/gst/base/gstbasetransform.c:
464 (gst_base_transform_sink_eventfunc):
465 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
466 Don't randomly and silently reset a segment when the format
467 changes as this is a bug somewhere upstream. Fixes #330379.
469 2006-06-14 Tim-Philipp Müller <tim at centricular dot net>
471 Patch by: Wouter Paesen <wouter at kangaroot net>
473 * libs/gst/controller/gstcontroller.c:
474 (gst_controlled_property_new):
475 Fix controlling of float properties (#344849).
477 * tests/check/libs/controller.c:
478 (gst_test_mono_source_get_property),
479 (gst_test_mono_source_set_property),
480 (gst_test_mono_source_class_init), (GST_START_TEST):
481 While we're at it, add some float stuff to unit test.
483 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
486 * docs/images/gdp-header.svg:
488 * docs/libs/Makefile.am:
489 * docs/libs/gdp-header.png:
490 * libs/gst/dataprotocol/dataprotocol.c:
491 add it to the API docs
492 * docs/manual/intro-motivation.xml:
495 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
497 * gst/gst.c: (scan_and_update_registry), (init_post):
498 If the fork()'ed child process can't write the updated registry cache
499 file to disk for some reason, make it exit with a failure exit code,
500 so that the parent can then re-scan the plugins itself and update the
501 registry structures in memory and work with that (rather than failing
502 when creating elements because seemingly no plugins are available).
503 Refactor registry scanning code into separate function for this and
504 also separate fork() and non-fork() code paths. Fixes #344748.
506 2006-06-13 Wim Taymans <wim@fluendo.com>
508 * docs/manual/advanced-dataaccess.xml:
509 Fix wrong PluginDesc. Fixes #344755.
511 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
513 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
514 Fix silly bug that prevented us from creating
515 ~/.gstreamer-0.10 and writing the registry in one
516 go (the first call to g_mkstemp() would overwrite the
517 placeholder in the template string, so the second call
518 to g_mkstemp() after creating the missing directory
519 would then error out with 'invalid argument').
521 2006-06-13 Edward Hervey <edward@fluendo.com>
523 * gst/gst.c: (init_post):
526 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
528 * gst/glib-compat-private.h:
531 * gst/gstvalue.c: (gst_value_serialize_flags):
532 remove GLib 2.6 compatibility code
534 2006-06-12 Tim-Philipp Müller <tim at centricular dot net>
536 * gst/parse/Makefile.am:
537 Fix build with 'make -j N' even more (#340016).
539 2006-06-12 Wim Taymans <wim@fluendo.com>
541 * docs/gst/gstreamer-sections.txt:
544 2006-06-12 Wim Taymans <wim@fluendo.com>
546 * gst/gstsegment.c: (gst_segment_set_duration),
547 (gst_segment_set_last_stop), (gst_segment_set_seek),
548 (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
549 (gst_segment_to_running_time), (gst_segment_clip):
550 Use G_UNLIKELY to help the compiler a bit.
552 2006-06-12 Wim Taymans <wim@fluendo.com>
554 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
556 * gst/gstevent.c: (gst_event_get_type):
558 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
560 constify quark registration strings. Fixes #344115
561 Avoid unneeded type checking is _pad_push() by internally
562 calling gst_pad_chain_unchecked().
564 2006-06-12 Wim Taymans <wim@fluendo.com>
566 * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_finalize),
567 (_gst_buffer_copy), (gst_buffer_is_metadata_writable),
568 (gst_subbuffer_finalize), (gst_buffer_create_sub),
569 (gst_buffer_is_span_fast), (gst_buffer_span):
570 Init _type for consistency.
571 Use _FLAGS macro to avoid type check.
572 Avoid unneeded type checks in subbufer code.
574 2006-06-12 Wim Taymans <wim@fluendo.com>
576 * gst/gst.c: (gst_debug_help):
577 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_list_free):
578 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
579 (gst_plugin_feature_list_free):
580 * gst/gstregistry.c: (gst_registry_add_plugin),
581 (gst_registry_add_feature), (gst_registry_plugin_filter),
582 (gst_registry_feature_filter), (gst_registry_find_plugin),
583 (gst_registry_find_feature), (gst_registry_get_plugin_list),
584 (gst_registry_lookup_feature_locked), (gst_registry_lookup_locked):
585 * gst/gstregistryxml.c: (load_feature),
586 (gst_registry_xml_read_cache), (gst_registry_xml_write_cache):
587 * gst/gstminiobject.c: (gst_mini_object_unref),
588 (gst_mini_object_replace), (gst_value_mini_object_free),
589 (gst_value_mini_object_copy):
590 Use _CAST macros to avoid unneeded type checking.
591 Added some more G_UNLIKELY.
593 2006-06-12 Wim Taymans <wim@fluendo.com>
596 Avoid unneeded type checking.
597 API: GST_BUFFER_IS_DISCONT
599 * gst/gstminiobject.h:
600 Avoid type check in flag accessor.
602 * gst/gstelementfactory.h:
604 * gst/gstpluginfeature.h:
606 API: GST_ELEMENT_FACTORY_CAST
608 API: GST_PLUGIN_FEATURE_CAST
610 2006-06-12 Wim Taymans <wim@fluendo.com>
612 * gst/gstobject.c: (gst_object_get_type), (gst_object_ref),
614 Add G_UNLIKELY in type registration.
615 Avoid type check in _ref/_unref since that is also
618 2006-06-12 Wim Taymans <wim@fluendo.com>
620 * gst/gsterror.c: (gst_g_error_get_type):
621 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
622 (gst_static_pad_template_get_type):
623 * gst/gsttaglist.c: (gst_tag_list_get_type):
624 * gst/gsttagsetter.c: (gst_tag_setter_get_type):
625 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type):
626 * gst/gsturi.c: (gst_uri_handler_get_type):
627 * gst/gstvalue.c: (gst_date_get_type):
628 * gst/gstxml.c: (gst_xml_get_type):
629 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_type),
630 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
631 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_type):
632 Add G_UNLIKELY in type registration.
634 2006-06-12 Wim Taymans <wim@fluendo.com>
636 * tools/gst-inspect.c: (print_signal_info):
637 Properly print enum values.
639 2006-06-12 Wim Taymans <wim@fluendo.com>
641 * gst/gstinfo.c: (gst_debug_set_active),
642 (gst_debug_category_set_threshold), (_gst_debug_nameof_funcptr):
644 Add some G_[UN]LIKELY.
645 Maintain __gst_debug_min to avoid formatting the arguments of
646 debug messages that will be dropped anyway to avoid a lot of
647 overhead from the debugging system.
649 2006-06-11 Stefan Kost <ensonic@users.sf.net>
653 add missing files containing translatable strings, tell intltool about
656 2006-06-11 Stefan Kost <ensonic@users.sf.net>
658 * tests/check/libs/.cvsignore:
659 add test-binary to ignore list
661 2006-06-11 Stefan Kost <ensonic@users.sf.net>
663 * docs/libs/gstreamer-libs-docs.sgml:
664 reorder (put dp into a chapter) and indent
666 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
671 === release 0.10.8 ===
673 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
676 releasing 0.10.8, "Soepeke, ik zie ou nog altijd nie"
678 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
680 * gst/gst.c: (init_post):
681 move pid declaration to declaration block
683 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
685 * gst/gst.c: (init_post):
686 use _exit() instead of exit() in our forked child; this ensures
687 that none of the registered exit handlers from whatever is using
688 GStreamer get executed. This fixes gnome-mixer-applet failing
689 to load, because ORBit would shut down.
690 Spotted by: Edward Hervey <edward@fluendo.com>
691 Fix suggested by: Tim-Philipp Müller <tim at centricular dot net>
694 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
699 === release 0.10.7 ===
701 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
704 releasing 0.10.7, "Soepeke, ik zie ou"
706 2006-06-07 Thomas Vander Stichele <thomas at apestaart dot org>
729 * win32/common/config.h:
732 2006-06-07 Wim Taymans <wim@fluendo.com>
734 * gst/gstindex.c: (gst_index_gtype_resolver):
735 * tools/gst-xmlinspect.c: (print_plugin_info):
736 Fix leak spotted by coverity checker. Fixes #343827
737 Fix another other leak found by paolo borelli.
739 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
741 * libs/gst/dataprotocol/dataprotocol.c:
742 (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
743 (gst_dp_version_get_type), (gst_dp_init),
744 (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
745 (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
746 (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
747 (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
748 (gst_dp_event_from_packet), (gst_dp_packetizer_new),
749 (gst_dp_packetizer_free):
750 * libs/gst/dataprotocol/dataprotocol.h:
751 API: add a GstDPPacketizer object, and create/free functions
752 API: add GstDPVersion enum
753 Add 1.0 event function that uses the string serialization
754 Serialize more useful buffer flags
757 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
759 * tests/check/Makefile.am:
760 * tests/check/gst/gstabi.c:
761 * tests/check/gst/struct_ppc64.h:
762 * tests/check/libs/libsabi.c:
763 * tests/check/libs/struct_ppc64.h:
764 add ppc64 structure sizes
766 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
768 * tests/check/Makefile.am:
769 * tests/check/gst/gstabi.c:
770 * tests/check/gst/struct_x86_64.h:
771 * tests/check/libs/libsabi.c:
772 * tests/check/libs/struct_x86_64.h:
773 generate and add structure size lists for x86_64
775 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
777 * libs/gst/check/gstcheck.c: (gst_check_abi_list):
778 * libs/gst/check/gstcheck.h:
779 factor out the method from tests that checks size of structures,
780 and add code to generate the header containing these sizes
781 * tests/check/gst/gstabi.c: (GST_START_TEST):
782 * tests/check/gst/struct_i386.h:
783 * tests/check/libs/libsabi.c: (GST_START_TEST):
784 * tests/check/libs/struct_i386.h:
787 2006-06-06 Michael Smith <msmith@fluendo.com>
790 Don't use c++-style comments, fixes #343929
792 2006-06-05 Edward Hervey <edward@fluendo.com>
795 plugin_paths is not used if we build without registry support.
797 * gst/gstsegment.c: (gst_segment_copy):
798 _copy() was always returning NULL...
800 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
802 * libs/gst/dataprotocol/dataprotocol.c:
803 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
804 (gst_dp_packet_from_event):
807 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
809 * libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
810 make sure we unset caps
812 2006-06-02 Michael Smith <msmith@fluendo.com>
814 * libs/gst/check/gstcheck.c: (gst_check_init),
815 (gst_check_chain_func):
816 * libs/gst/check/gstcheck.h:
817 Add a cond/mutex to the check support lib, signal this whenever we
818 add to the buffers list. This will allow tests to not busy-wait on
821 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
823 * libs/gst/dataprotocol/dataprotocol.c:
824 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
825 (gst_dp_packet_from_event):
826 factor out some common header init code
828 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
830 * docs/libs/gstreamer-libs-sections.txt:
831 * docs/libs/tmpl/gstdataprotocol.sgml:
832 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
833 * libs/gst/dataprotocol/dataprotocol.h:
834 API: make gst_dp_crc() public
836 2006-06-01 Stefan Kost <ensonic@users.sf.net>
838 * plugins/indexers/gstindexers.c: (plugin_init):
839 conditionally register fileindexer (fixes #343598)
841 2006-06-01 Stefan Kost <ensonic@users.sf.net>
843 * gst/gsttagsetter.h:
844 Can't cast ifaces to a class
846 * libs/gst/net/gstnetclientclock.h:
847 * libs/gst/net/gstnettimeprovider.h:
848 * plugins/elements/gstfakesink.h:
849 * plugins/elements/gstfakesrc.h:
850 * plugins/elements/gstfdsink.h:
851 * plugins/elements/gstfdsrc.h:
852 * plugins/elements/gstfilesink.h:
853 * plugins/elements/gstfilesrc.h:
854 * plugins/elements/gstidentity.h:
855 * plugins/elements/gstqueue.h:
856 * plugins/elements/gsttee.h:
857 * plugins/indexers/gstfileindex.c:
858 * plugins/indexers/gstmemindex.c:
859 * tests/old/examples/plugins/example.h:
860 Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
862 2006-06-01 Thomas Vander Stichele <thomas at apestaart dot org>
864 * libs/gst/dataprotocol/dataprotocol.c:
865 (gst_dp_header_from_buffer):
866 make sure we zero the whole ABI-compatible area
868 2006-06-01 Wim Taymans <wim@fluendo.com>
870 Patch by: Alessandro Decina <alessandro at nnva dot org>
872 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop):
873 Make sure the EOS flag is cleared from pads after a flush
874 or stop. Fixes #343538.
876 * tests/check/libs/collectpads.c: (GST_START_TEST),
877 (gst_collect_pads_suite):
878 Added test for collectpads reusage after EOS.
880 2006-05-30 Sebastien Moutte <sebastien@moutte.net>
883 set #include <sys/wait.h> in a #ifdef #ifdef HAVE_FORK
884 * win32/common/libgstbase.def:
885 export gst_collect_pads_set_flushing
886 * win32/common/libgstreamer.def:
887 export gst_pad_set_acceptcaps_function, gst_structure_empty_new,
888 gst_value_fraction_multiply
889 * win32/vs6/gst_inspect.dsp:
890 add a link to intl.lib
892 2006-05-30 Wim Taymans <wim@fluendo.com>
894 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
895 (gst_collect_pads_chain):
896 Handle the case where a pad is removed from the collection
897 that could cause the other pads to become collectable.
899 2006-05-30 Wim Taymans <wim@fluendo.com>
902 Clarify the use of _release_request_pad() and
903 _get_request_pad() a bit better.
905 * libs/gst/base/gstadapter.c: (gst_adapter_peek),
906 (gst_adapter_take_buffer):
907 Fix some doc and comment typos.
909 2006-05-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
911 * docs/gst/gstreamer-sections.txt:
912 * docs/libs/gstreamer-libs-sections.txt:
915 2006-05-30 Jan Schmidt <thaytan@mad.scientist.com>
917 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
918 Add debug that can be enabled using a #define at the top of the file,
919 for dumping stats about how late/early we were when waking up from
920 waiting on the clock.
922 2006-05-30 Wim Taymans <wim@fluendo.com>
924 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_check_pads):
925 When rebuilding the pad list, don't leak the previous list.
927 2006-05-30 Wim Taymans <wim@fluendo.com>
929 Patch by: Lutz Mueller <lutz at topfrose dot de>
931 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
932 (gst_base_src_get_query_types), (gst_base_src_update_length):
933 Publish supported query types.
934 Update last_stop field in get_range mode so the position
935 query works. Fixes #342321.
937 2006-05-30 Tim-Philipp Müller <tim at centricular dot net>
939 * docs/gst/gstreamer-sections.txt:
940 * gst/gsttaglist.c: (_gst_tag_initialize):
942 API: add GST_TAG_PREVIEW_IMAGE (#343341).
944 2006-05-30 Wim Taymans <wim@fluendo.com>
946 Patch by: Alessandro Decina <alessandro at nnva dot org>
948 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
949 Unlock mutex when removing an unknown pad.
952 * tests/check/Makefile.am:
953 * tests/check/libs/collectpads.c: (collected_cb), (push_buffer),
954 (push_event), (setup), (teardown), (GST_START_TEST),
955 (gst_collect_pads_suite), (main):
956 Added collecpads check, disabled for now as check crashes for
959 2006-05-29 Wim Taymans <wim@fluendo.com>
961 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize):
962 Don't leak pads lists.
964 2006-05-29 Wim Taymans <wim@fluendo.com>
966 * docs/libs/gstreamer-libs-sections.txt:
967 * libs/gst/base/gstcollectpads.c:
968 (gst_collect_pads_set_flushing_unlocked),
969 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
970 (gst_collect_pads_stop):
971 * libs/gst/base/gstcollectpads.h:
972 API: gst_collect_pads_set_flushing()
973 Added api to set the pads to flushing, useful for seeking
974 code in elements using collectpads.
975 Clear segment when receiving a flush.
977 2006-05-29 Tim-Philipp Müller <tim at centricular dot net>
979 * gst/gst.c: (add_path_func), (init_post):
980 Don't scan registry paths passed via --gst-plugin-path immediately
981 (will crash, because absolutely nothing is set up and no types are
982 registered etc.); do this later in init_post(). Fixes #343057.
984 2006-05-28 Thomas Vander Stichele <thomas at apestaart dot org>
986 * gst/gst.c: (init_post):
987 if we have fork, fork while reading/rebuilding the registry
988 so the parent doesn't take the hit of having all plugins loaded
989 in memory. Fixes #342777.
991 Check if we have fork()
992 * win32/common/config.h.in:
995 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
997 * plugins/elements/gstelements.c:
998 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
999 (gst_file_src_init), (gst_file_src_set_property),
1000 (gst_file_src_get_property), (gst_file_src_start):
1001 * plugins/elements/gstfilesrc.h:
1002 API: GstFileSrc::use-mmap
1004 Add a use-mmap property to enable easier testing of all code paths.
1005 Bump rank to PRIMARY, so filesrc is the preferred file reader and used
1006 in the absence of gnomevfssrc. (Closes #340501)
1008 2006-05-26 Zaheer Abbas Merali <zaheerabbas at merali dot org>
1010 * tools/gst-inspect.c:
1011 Add missing include, removes warning of ngettext not being defined on
1014 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
1016 * gst/gstvalue.c: (gst_value_deserialize_fraction):
1017 Handle NULL input and output pointers silently as a failed conversion,
1018 rather than g_warnings.
1020 2006-05-25 Wim Taymans <wim@fluendo.com>
1022 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_start):
1023 Initialize variable before using. Fixes #342820.
1025 2006-05-24 Tim-Philipp Müller <tim at centricular dot net>
1027 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek):
1028 Fix off-by-one bug that would only allow peeks of N-1 bytes
1029 from the start even if the buffer to typefind on contains
1030 in fact N bytes of data (makes vorbis typefinding from a
1031 vorbis identification header buffer work).
1033 * tests/check/Makefile.am:
1034 * tests/check/libs/.cvsignore:
1035 * tests/check/libs/typefindhelper.c: (GST_START_TEST),
1036 (gst_typefindhelper_suite), (main), (foobar_typefind),
1038 Add very basic unit test for gst_type_find_helper_for_buffer()
1039 that checks for the problem fixed above.
1041 2006-05-24 Thomas Vander Stichele <thomas at apestaart dot org>
1043 * tools/gst-inspect.c: (print_interfaces),
1044 (print_element_properties_info), (print_element_list), (main):
1045 add more translatable strings
1047 2006-05-23 Tim-Philipp Müller <tim at centricular dot net>
1049 Patch by: Julien Moutte <julien at moutte net>
1051 * docs/gst/gstreamer-sections.txt:
1052 Make new GST_FLOW_IS_SUCCESS macro visible in docs.
1054 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
1055 (gst_fake_sink_preroll):
1056 * plugins/elements/gstfakesink.h:
1057 API: Add new GstFakeSink::preroll-handoff signal (#337100).
1059 2006-05-23 Wim Taymans <wim@fluendo.com>
1061 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark):
1063 Added _CUSTOM error and success GstFlowReturn that can be
1064 used be elements internally.
1065 Added macro to check for SUCCESS flowreturns.
1066 API: GST_FLOW_CUSTOM_SUCCESS
1067 API: GST_FLOW_CUSTOM_ERROR
1068 API: GST_FLOW_IS_SUCCESS
1070 * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
1071 Added check for GstFlowReturn sanity.
1073 2006-05-23 Wim Taymans <wim@fluendo.com>
1075 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
1077 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
1078 (gst_collect_pads_event):
1079 clear/reset segment info in FLUSH_STOP.
1082 2006-05-22 Stefan Kost <ensonic@users.sf.net>
1084 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
1085 (gst_collect_pads_check_collected):
1086 Flush queued buffer on _stop(), fixes playing again (#342454)
1088 2006-05-22 Thomas Vander Stichele <thomas at apestaart dot org>
1090 * tests/check/gst/gststructure.c: (GST_START_TEST),
1091 (gst_structure_suite):
1092 add a test for a complete structure
1094 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
1096 * docs/faq/developing.xml:
1098 * docs/faq/troubleshooting.xml:
1099 * docs/faq/using.xml:
1100 Some minor FAQ updates that won't change the fact that
1101 our FAQ is badly structured, full of information hardly
1102 anyone new to GStreamer needs to know and lacking lots
1103 of information people constantly ask for.
1105 2006-05-19 Jan Schmidt <thaytan@mad.scientist.com>
1107 * gst/gstpad.c: (gst_pad_set_caps):
1108 Short-circuit gst_pad_set_caps if setting the existing
1109 caps pointer again, and avoid printing debug and
1110 reffing/unreffing the caps.
1112 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1113 There's actually no need to set the caps before pushing -
1114 the acceptcaps method will handle it anyway.
1116 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
1118 * docs/gst/gstreamer-sections.txt:
1119 * win32/common/libgstreamer.def:
1120 * gst/gstutils.c: (gst_element_seek_simple):
1122 API: add gst_element_seek_simple() (#342238).
1124 2006-05-18 Edward Hervey <edward@fluendo.com>
1126 * gst/gsttypefind.c: (gst_type_find_get_type):
1127 * gst/gsttypefind.h:
1128 Added GST_TYPE_TYPE_FIND and gst_type_find_get_type() so a GType gets
1129 registered for GstTypeFind pointers. This allows wrapping the structure
1130 in bindings (i.e. gst-python).
1132 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
1134 * gst/gsttagsetter.c:
1135 Docs additions and fixes (see #339918).
1137 2006-05-18 Jan Schmidt <thaytan@mad.scientist.com>
1139 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
1140 The caps intersection algorithm can produce multiple copies of the
1141 caps. Until that is fixed, we need to simplify the result to be
1142 sure whether the allowed caps are fixed or not.
1144 * plugins/elements/gstqueue.c: (gst_queue_init),
1145 (gst_queue_bufferalloc), (gst_queue_acceptcaps),
1146 (gst_queue_push_one):
1147 Proxied buffer alloc should not set the caps on the source pad.
1148 When pushing buffers, we always accept the caps change that triggers.
1149 This prevents negotiation errors caused by caps changing mid-stream
1150 and then being refused on our source pad (because upstream is now
1151 refusing those caps).
1153 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
1155 * tests/examples/helloworld/helloworld.c: (main):
1156 Must plug audioconvert and audioresample between decoder
1159 2006-05-17 Jan Schmidt <thaytan@mad.scientist.com>
1161 * gst/gstregistryxml.c: (read_string), (load_pad_template),
1162 (load_feature), (load_plugin):
1163 Allow empty strings for some of the plugin fields so we don't
1164 drop valid plugin entries that were written out correctly
1167 2006-05-17 Sebastien Moutte <sebastien@moutte.net>
1169 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
1170 Use g_remove and g_rename instead of remove and rename that don't
1171 handle utf8 characters. rename was failing for users who had specific
1172 characters in their name then the registry was built at each
1174 * win32/vs6/gst_inspect.dsp:
1175 * win32/vs6/gst_launch.dsp:
1176 * win32/vs6/libgstbase.dsp:
1177 * win32/vs6/libgstcoreelements.dsp:
1178 * win32/vs6/libgstreamer.dsp:
1179 Use a debug version of libxml2 (libxml2D.lib,libxml2D.dll) for DEBUG
1180 build of libgstreamer and clean unused libraries in projects link
1183 2006-05-17 Edward Hervey <edward@fluendo.com>
1185 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1186 The queue is not responsible for pushing an EOS when receiving a fatal
1187 flow error. It's up to the real element driving the pipeline to do that.
1189 2006-05-16 Edward Hervey <edward@fluendo.com>
1191 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1192 The queue was posting a non-needed GST_MESSAGE_ERROR when pushing a
1193 buffer returned a fatal error. It should just send an EOS and stop
1195 Upstream elements will then properly receive the GST_FLOW_UNEXPECTED
1196 when pushing buffers on the queue and will be able to handle the event.
1198 2006-05-16 Tim-Philipp Müller <tim at centricular dot net>
1200 * docs/manual/basics-bins.xml:
1201 * docs/manual/basics-init.xml:
1202 Fix typos and minor errors in sample code (#341856).
1204 2006-05-16 Wim Taymans <wim@fluendo.com>
1206 * docs/design/part-qos.txt:
1207 Fix indexes in formulas to make more sense.
1209 2006-05-15 Wim Taymans <wim@fluendo.com>
1211 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
1212 Don't report POSITION based on clock time if sync is
1215 2006-05-15 Tim-Philipp Müller <tim at centricular dot net>
1218 Add cast to make compiler happy - refcount variable was a gint
1219 in GstObject but is a guint in GObject and g_atomic_int_get()
1222 2006-05-15 Thomas Vander Stichele <thomas at apestaart dot org>
1224 * gst/parse/Makefile.am:
1225 chain commands using &&, which also makes parallel make work
1227 2006-05-14 Tim-Philipp Müller <tim at centricular dot net>
1229 * docs/gst/gstreamer-sections.txt:
1235 === release 0.10.6 ===
1237 2006-05-14 Jan Schmidt <thaytan@mad.scientist.com>
1240 releasing 0.10.6, "Take the cannoli"
1242 2006-05-13 Tim-Philipp Müller <tim at centricular dot net>
1244 * tools/gst-launch.c: (print_tag):
1245 Fix use of uninitialized variable in the hypothetical
1246 case that some broken plugin creates a GST_TAG_IMAGE
1247 tag containing a NULL buffer (#341667).
1249 2006-05-12 Tim-Philipp Müller <tim at centricular dot net>
1251 * tools/gst-launch.c: (print_tag):
1252 Print something more intelligible for image tags when
1253 using the -t switch (#341556).
1255 2006-05-12 Thomas Vander Stichele <thomas at apestaart dot org>
1260 define GST_MAJORMINOR so we have it available in win32/common/config.h
1261 Possibly remove it from our Makefile.am files later
1262 * win32/common/config.h:
1263 * win32/common/config.h.in:
1264 added GST_MAJORMINOR
1265 * win32/common/gstenumtypes.c: (register_gst_resource_error):
1266 * win32/common/gstversion.h:
1269 2006-05-12 Sebastien Moutte <sebastien@moutte.net>
1272 Update win32 files listing.
1273 * win32/common/gstversion.h:
1274 Add GST_MAJORMINOR definition.
1275 * win32/common/libgstreamer.def:
1276 Add new exported functions.
1278 2006-05-12 Michael Smith <msmith@fluendo.com>
1280 * gst/gstplugin.c: (gst_plugin_load_file):
1281 If an so file has no plugin entry point, unload the module.
1283 2006-05-11 Wim Taymans <wim@fluendo.com>
1285 * plugins/elements/gstqueue.c: (gst_queue_chain), (gst_queue_loop),
1286 (gst_queue_set_property):
1287 Don't forget to signal the _chain or _loop function
1288 when the queue size or thresholds change since that might
1289 cause them to make progres again.
1291 2006-05-11 Stefan Kost <ensonic@users.sf.net>
1293 * gst/gstclock.c: (gst_clock_class_init):
1294 * gst/gstindex.c: (gst_index_class_init):
1295 * gst/gstobject.c: (gst_object_class_init):
1296 * gst/gstpad.c: (gst_pad_class_init):
1297 * gst/gstpipeline.c: (gst_pipeline_class_init):
1298 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
1299 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init):
1300 * libs/gst/base/gstbasetransform.c:
1301 (gst_base_transform_class_init):
1302 * libs/gst/net/gstnetclientclock.c:
1303 (gst_net_client_clock_class_init):
1304 * libs/gst/net/gstnettimeprovider.c:
1305 (gst_net_time_provider_class_init):
1306 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init):
1307 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
1308 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
1309 * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init):
1310 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
1311 * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
1312 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
1313 * plugins/elements/gstidentity.c: (gst_identity_class_init):
1314 * plugins/elements/gsttee.c: (gst_tee_class_init):
1315 * tests/old/examples/plugins/example.c: (gst_example_class_init):
1316 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
1317 G_OBJECT_CLASS macro usage batch cleanup, fixes #337747 for core
1319 2006-05-11 Wim Taymans <wim@fluendo.com>
1321 * gst/gstbuffer.c: (_gst_buffer_initialize):
1322 Register subbufer along with the buffer type so that
1323 it does not accidentally gets registered from N
1324 different streaming threads in a non threadsafe way.
1326 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
1331 Make gtk-doc generate docs for our inlined gst_buffer_ref(),
1332 gst_event_ref() and gst_message_ref() functions again
1333 (ugly hack, please do fix if there's a better way besides
1334 overrides.txt, which doesn't seem to work).
1336 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1338 * libs/gst/check/gstcheck.h:
1339 add an assert for setting state to avoid lots of repetitive code
1342 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1344 * gst/gstvalue.c: (gst_value_serialize_flags):
1345 fix a leak if no flags are set
1346 * tests/check/gst/gstvalue.c: (GST_START_TEST):
1349 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
1351 * docs/manual/basics-pads.xml:
1352 Expand a bit on caps and filtered links and update
1353 examples that were still using the no longer existing
1354 gst_pad_link_filtered() (#338206).
1356 2006-05-10 Wim Taymans <wim@fluendo.com>
1358 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
1359 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
1360 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
1361 (gst_collect_pads_stop):
1362 * libs/gst/base/gstcollectpads.h:
1363 No need to call _stop in _finalize.
1364 Iterate the main pad list in _finalize.
1365 Added some more debug.
1366 Free lists and data in the right order.
1367 Also free data whem doing _remove_pad when stopped for
1368 backward compatibility protect ::started with PAD_LOCK as
1371 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1373 * gst/gststructure.c: (gst_structure_gtype_from_abbr),
1374 (gst_structure_parse_value):
1376 rename a method so that it actually says what it does better
1378 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1380 * gst/gstevent.c: (_gst_event_initialize):
1381 * gst/gstformat.c: (_gst_format_initialize):
1382 make sure some essential types used by events are registered
1383 as part of gst_init()
1384 * gst/gstvalue.c: (gst_value_serialize_flags):
1385 if no flags are set, serialize them to a value that represents NONE
1386 so that deserializing them works
1387 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1388 add tests for serialization and deserialization of flags
1390 2006-05-10 Wim Taymans <wim@fluendo.com>
1392 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_collect),
1393 (gst_collect_pads_collect_range), (gst_collect_pads_available),
1394 (gst_collect_pads_check_pads), (gst_collect_pads_check_collected),
1395 (gst_collect_pads_event), (gst_collect_pads_chain):
1398 Catch and return errors from the collect function
1399 Refuse data on eos pads.
1401 2006-05-10 Edward Hervey <edward@fluendo.com>
1403 * gst/gstinterface.h:
1404 GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
1405 GInterface type checking.
1406 They were previously using non-defined macros.
1408 2006-05-09 Wim Taymans <wim@fluendo.com>
1410 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
1411 (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
1412 (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
1413 (gst_collect_pads_start), (gst_collect_pads_stop),
1414 (gst_collect_pads_peek), (gst_collect_pads_pop),
1415 (gst_collect_pads_available), (gst_collect_pads_read),
1416 (gst_collect_pads_flush), (gst_collect_pads_check_pads),
1417 (gst_collect_pads_is_collected), (gst_collect_pads_event),
1418 (gst_collect_pads_chain):
1419 * libs/gst/base/gstcollectpads.h:
1420 Clean up the mess that is collectpads, add comments and
1421 FIXMEs where needed.
1422 Maintain a separate pad list so we can add pads while
1423 collecting the other ones. For this we need a new separate
1425 Fix memory leak in finalize.
1426 Refactor some weird code to set/unset pad flushing flags, mark
1428 Don't crash in _available, _read, _flush when we're EOS.
1430 * tests/check/libs/.cvsignore:
1431 Ignore adapter check binary.
1433 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1435 * gst/gstindex.c: (gst_index_resolver_get_type):
1436 * plugins/elements/gstfakesink.c:
1437 (gst_fake_sink_state_error_get_type):
1438 * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1439 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
1440 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
1441 Const-ify GEnumValue arrays.
1443 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1445 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
1446 Add test case for flags + gst_buffer_make_metadata_writable().
1448 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1450 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
1451 gst_buffer_make_metadata_writable() should maintain the
1452 buffer flags (those that make sense at least) (see #340859).
1454 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1456 * tools/gst-inspect.c:
1457 * tools/gst-launch.c:
1458 * tools/gst-typefind.c:
1459 * tools/gst-xmlinspect.c:
1461 Fix up includes: need to include stdlib.h in tools.h for exit().
1463 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1465 * gst/gsttaglist.c: (_gst_tag_initialize):
1467 API: add GST_TAG_IMAGE tag (#340721).
1469 2006-05-08 Wim Taymans <wim@fluendo.com>
1472 Added some docs for the segment query.
1474 2006-05-08 Wim Taymans <wim@fluendo.com>
1476 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1477 (gst_base_src_loop), (gst_base_src_change_state):
1478 Always push non-flushing serialized events in the streaming
1481 2006-05-08 Thomas Vander Stichele <thomas at apestaart dot org>
1483 * gst/gsterror.c: (_gst_stream_errors_init):
1484 Add a missing error string.
1486 2006-05-08 Jan Schmidt <thaytan@mad.scientist.com>
1488 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
1489 Add applied_rate to the debug
1491 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
1492 Copy applied_rate into the outgoing NEWSEGMENT event
1494 2006-05-08 Wim Taymans <wim@fluendo.com>
1496 Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
1498 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
1499 (gst_base_sink_change_state):
1500 call ::unlock before taking the PREROLL_LOCK so we can safely
1501 handle elements that lock in ::render.
1504 2006-05-08 Edward Hervey <edward@fluendo.com>
1506 * autogen.sh: (CONFIGURE_DEF_OPT):
1507 Darwin's libtoolize is in fact called glibtoolize.
1508 Adding glibtoolize to the list of accepted names for libtoolize.
1510 2006-05-08 Wim Taymans <wim@fluendo.com>
1512 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
1513 Unify error handling, don't post an error message
1514 when a push() returns EOS but perform our normal EOS
1515 handling code. Fixes #340772.
1517 2006-05-08 Wim Taymans <wim@fluendo.com>
1519 * docs/design/part-overview.txt:
1520 Make upsteam/downstream concepts more clear.
1521 Give an example of serialized/non-serialized events.
1523 * docs/design/part-events.txt:
1524 * docs/design/part-streams.txt:
1525 Mention applied_rate.
1527 * docs/design/part-trickmodes.txt:
1528 Mention applied rate, flesh out some more use cases.
1530 * gst/gstevent.c: (gst_event_new_new_segment),
1531 (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
1532 (gst_event_parse_new_segment_full), (gst_event_new_tag),
1533 (gst_event_parse_tag), (gst_event_new_buffer_size),
1534 (gst_event_parse_buffer_size), (gst_event_new_qos),
1535 (gst_event_parse_qos), (gst_event_parse_seek),
1536 (gst_event_new_navigation):
1538 Add applied_rate field to NEWSEGMENT event.
1539 API: gst_event_new_new_segment_full()
1540 API: gst_event_parse_new_segment_full()
1542 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
1543 (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
1544 (gst_segment_to_stream_time), (gst_segment_to_running_time):
1546 Add applied_rate to GstSegment structure.
1547 Make calculation of stream_time and running_time more correct
1548 wrt rate/applied_rate.
1550 API: GstSegment::applied_rate field
1551 API: gst_segment_set_newsegment_full();
1553 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
1554 (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
1555 * libs/gst/base/gstbasetransform.c:
1556 (gst_base_transform_sink_eventfunc),
1557 (gst_base_transform_handle_buffer):
1558 Parse and use applied_rate in the GstSegment field.
1560 * tests/check/gst/gstevent.c: (GST_START_TEST):
1561 Add check for applied_rate field.
1563 * tests/check/gst/gstsegment.c: (GST_START_TEST),
1564 (gstsegments_suite):
1565 Add more checks for various GstSegment operations.
1567 2006-05-08 Wim Taymans <wim@fluendo.com>
1569 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
1570 (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
1571 (gst_base_sink_get_position), (gst_base_sink_change_state):
1572 Store the sync time of the buffer end position separatly in a
1573 new variable eos_rtime so we can properly sync the EOS event.
1575 Fix the docs for gst_base_sink_set_qos_enabled().
1576 Don't set segment start to invalid value when we receive a
1577 non TIME newsegment.
1578 get closer to handling position reporting for negative rates
1581 2006-05-07 Stefan Kost <ensonic@users.sf.net>
1584 Docs about how to print caps for debug purposes.
1586 * gst/gstpadtemplate.c: (gst_static_pad_template_get):
1587 use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
1589 2006-05-07 Stefan Kost <ensonic@users.sf.net>
1592 use full enum names and preprend a '%' in docs strings to make recent
1593 gtk-doc turn that into a link
1595 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1597 * docs/manual/basics-bins.xml:
1598 * docs/manual/basics-bus.xml:
1599 * docs/manual/basics-pads.xml:
1600 Some typo fixes, some additions, some clarifications.
1602 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1604 * tools/gst-inspect.c: (main):
1605 * tools/gst-launch.c: (main):
1606 * tools/gst-run.c: (main):
1607 * tools/gst-typefind.c: (main):
1608 * tools/gst-xmlinspect.c: (main):
1609 Use the string passed to g_option_context_new() for
1610 what it's intended for - the program name is already
1613 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1615 * tools/Makefile.am:
1616 * tools/gst-inspect.c: (main):
1617 * tools/gst-launch.c: (main):
1618 * tools/gst-xmlinspect.c: (main):
1620 Add back --version command line option (#340460).
1622 * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
1623 Add --version option and use GOption for argument parsing; refactor a
1624 bit; accept directories as arguments and recurse into them; lastly,
1625 print a decent error message when things go wrong.
1627 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1629 * docs/manual/basics-bins.xml:
1630 Don't mention GstThread (#340611)
1631 * docs/manual/basics-elements.xml:
1632 Update link to GObject tutorial (#340607)
1634 2006-05-05 Wim Taymans <wim@fluendo.com>
1637 * gst/gstminiobject.c:
1638 Add note about refcounting and miniobject/buffer writeability
1639 to docs. Fixes #340604
1641 * gst/gstelementfactory.h:
1642 Added some explanation about @klass.
1644 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1646 * docs/manual/intro-motivation.xml:
1647 * docs/manual/manual.xml:
1648 Avoid CORBA & Bonobo references (#340598)
1650 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1652 * docs/manual/basics-bus.xml:
1653 * docs/manual/basics-pads.xml:
1654 Fix up some inaccuracies and omissions (#340609)
1656 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1658 * gst/gstghostpad.c:
1659 Small typo in docs (#340625)
1661 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1663 * gst/parse/Makefile.am:
1664 Make 'make -j' proof (see #340698).
1666 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1669 Require GLib-2.8 here as well.
1671 2006-05-05 Wim Taymans <wim@fluendo.com>
1673 * gst/glib-compat.c:
1674 * gst/gst.c: (init_pre):
1675 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1676 (gst_object_unref), (gst_object_replace), (gst_object_dispose),
1677 (gst_object_dispatch_properties_changed):
1679 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
1680 * gst/gststructure.c: (gst_structure_set_valist):
1681 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
1682 Remove pre glib2.8 compatibility, fixes #340508
1684 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
1687 Mention type of tags in doc blurbs.
1689 2006-05-04 Jan Schmidt <thaytan@mad.scientist.com>
1691 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1692 (gst_pad_configure_src), (gst_pad_push):
1693 Restore acceptcaps checking behaviour now that good plugins have
1696 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
1698 Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
1709 * gst/parse/Makefile.am:
1710 * libs/gst/base/gstadapter.c:
1711 * libs/gst/base/gstbasesrc.c:
1712 * libs/gst/base/gstpushsrc.c:
1713 * libs/gst/base/gsttypefindhelper.c:
1714 * plugins/elements/gstfakesrc.c:
1715 * plugins/elements/gstidentity.c:
1716 Make sure gstprivate.h and/or config.h are
1717 always included first, otherwise some of our
1718 defines (like _FILE_OFFSET_BITS) might be
1719 redefined in the system headers. Fixes build
1720 on opensolaris (#340016).
1722 2006-05-04 Wim Taymans <wim@fluendo.com>
1724 * docs/libs/gstreamer-libs-sections.txt:
1725 API: addition: gst_adapter_take_buffer()
1727 * libs/gst/base/gstadapter.c: (gst_adapter_push),
1728 (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
1729 (gst_adapter_available_fast):
1730 * libs/gst/base/gstadapter.h:
1731 Prepare for optimizing the hell out of this hugely inefficient
1733 Added gst_adapter_take_buffer() so we can at least start thinking
1734 about subbuffering and merging.
1735 Added some comments.
1737 * tests/check/Makefile.am:
1738 * tests/check/libs/adapter.c: (GST_START_TEST),
1739 (gst_adapter_suite), (main):
1740 Added GstAdapter check.
1742 2006-05-04 Wim Taymans <wim@fluendo.com>
1744 * docs/design/part-overview.txt:
1745 Fix some typos, add blurb about buffer flags.
1747 2006-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
1749 * docs/libs/gstreamer-libs-sections.txt:
1750 make sure GstBaseTransformClass shows up in the docs
1751 * libs/gst/base/gstbasetransform.c:
1752 * libs/gst/base/gstbasetransform.h:
1753 move docs so gtk-doc picks it up now
1755 2006-05-02 Stefan Kost <ensonic@users.sf.net>
1757 * docs/libs/gstreamer-libs-sections.txt:
1758 add missing symbols to docs
1760 2006-05-02 Stefan Kost <ensonic@users.sf.net>
1762 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
1763 back out the newsegment handling change, see #340060 for ongoing
1766 2006-04-30 Tim-Philipp Müller <tim at centricular dot net>
1768 * tools/gst-run.c: (get_candidates), (main):
1769 Fix wrong g_file_test() usage (see glib docs for why it doesn't
1770 work); fix typo in error message. Fixes #340079.
1772 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
1774 * common/Makefile.am:
1776 * docs/faq/Makefile.am:
1777 * docs/gst/Makefile.am:
1778 * docs/libs/Makefile.am:
1779 * docs/manual/Makefile.am:
1780 * docs/plugins/Makefile.am:
1781 * docs/pwg/Makefile.am:
1782 * docs/slides/Makefile.am:
1784 * common/upload.mak:
1785 move upload.mak to common
1787 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
1789 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
1790 add more asserts on refcounts
1791 do more cleanup at end of tests
1792 fix test leaks showing in FC5
1794 2006-04-29 Stefan Kost <ensonic@users.sf.net>
1796 * plugins/elements/gsttypefindelement.c:
1797 (gst_type_find_element_handle_event):
1798 reverted wrong change and reflowed code to avoid others falling into
1801 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1803 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
1804 fix changelog entry about last collectpads change,
1805 add notes about proper fix
1807 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1810 * gst/gstregistry.c: (gst_registry_scan_path_level),
1811 (gst_registry_scan_path):
1812 * gst/gstregistry.h:
1813 only write out registry if it has changed, fixes #338339
1815 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1818 * gst/gstpipeline.c:
1819 * plugins/elements/gstcapsfilter.c:
1820 * plugins/elements/gstfakesink.c:
1821 * plugins/elements/gstfakesrc.c:
1822 * plugins/elements/gstfdsink.c:
1823 * plugins/elements/gstfdsrc.c:
1824 * plugins/elements/gstfilesink.c:
1825 * plugins/elements/gstfilesrc.c:
1826 * plugins/elements/gstidentity.c:
1827 * plugins/elements/gstqueue.c:
1828 * plugins/elements/gsttee.c:
1829 * plugins/elements/gsttypefindelement.c:
1830 (gst_type_find_element_handle_event):
1831 make GstElementDetails const
1833 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1835 * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
1836 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
1837 (gst_collect_pads_is_collected), (gst_collect_pads_event):
1838 more detailed debug and formatting cleanup,
1839 forward newsegments to src-pad (so that e.g. adder not eats them)
1841 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1843 * gst/gstutils.c: (gst_element_link_pads):
1846 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1848 * libs/gst/controller/gstcontroller.c:
1849 (gst_controller_sync_values):
1851 * tests/check/libs/controller.c: (GST_START_TEST),
1852 (gst_controller_suite):
1853 a new test for live value handling
1855 2006-04-28 Wim Taymans <wim@fluendo.com>
1857 * gst/gstutils.c: (push_and_ref):
1858 Added some more docs.
1859 Fix refcount issue whith gst_element_found_tags() helper
1860 function. Fixes #338335
1862 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1863 Added testsuite for gst_element_found_tags().
1865 2006-04-28 Michael Smith <msmith@fluendo.com>
1867 * gst/gstvalue.c: (gst_value_serialize_flags):
1868 Avoid NULL dereference when trying to serialize flags containing
1871 2006-04-28 Michael Smith <msmith@fluendo.com>
1873 * plugins/elements/gsttypefindelement.c:
1874 (gst_type_find_element_handle_event):
1875 If we get EOS before any data is accumulated, don't use
1876 uninitialised local variables.
1878 2006-04-28 Michael Smith <msmith@fluendo.com>
1880 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1881 (gst_dp_event_from_packet):
1882 Fixes in reading/writing events over GDP (not currently used?) -
1883 dereferencing NULL events for unknown/invalid event types, memory
1884 leak, and change g_warning to GST_WARNING.
1886 2006-04-28 Wim Taymans <wim@fluendo.com>
1888 * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
1889 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
1890 (gst_base_sink_get_position), (gst_base_sink_change_state):
1891 When frame dropping is enabled, we should not ignore frames
1893 Update some documentation.
1895 2006-04-28 Wim Taymans <wim@fluendo.com>
1897 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1898 (gst_base_src_send_event), (gst_base_src_change_state):
1899 Documentation updates.
1901 2006-04-28 Wim Taymans <wim@fluendo.com>
1903 * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
1904 (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
1905 handle EAGAIN, EINTR and short writes correctly. Also clean
1906 up some error cases, avoid a deadlock on bad file descriptors and
1907 use GST_DEBUG_OBJECT.
1910 2006-04-28 Wim Taymans <wim@fluendo.com>
1912 * gst/gstvalue.c: (gst_value_serialize_buffer),
1913 (gst_value_deserialize_buffer):
1914 Don't try to serialize a GValue with a NULL buffer.
1917 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1918 Added check for serialisation of NULL buffers.
1920 2006-04-28 Wim Taymans <wim@fluendo.com>
1922 * gst/gstminiobject.c: (gst_value_take_mini_object):
1923 Taking a NULL miniobject is valid, fix the case where
1924 we try to unref the NULL miniobject.
1926 2006-04-28 Wim Taymans <wim@fluendo.com>
1928 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
1930 * gst/gstbin.c: (gst_bin_handle_message_func):
1932 Don't leak bin refcount when a state recalc is
1933 in progress and we delay another one #339808.
1935 2006-04-28 Wim Taymans <wim@fluendo.com>
1937 * docs/design/part-TODO.txt:
1938 Mention QoS as an ongoing work item.
1940 * docs/design/part-buffering.txt:
1941 New doc about buffering that needs to be fleshed out
1944 * docs/design/part-qos.txt:
1945 More QoS policy for decoders/demuxers/transforms
1947 * docs/design/part-trickmodes.txt:
1950 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
1955 === release 0.10.5 ===
1957 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
1960 releasing 0.10.5, "Fogo"
1962 2006-04-22 Thomas Vander Stichele <thomas at apestaart dot org>
1964 patch by: Wim Taymans
1966 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1967 (gst_pad_configure_src), (gst_pad_push):
1968 * gst/gstpipeline.c: (gst_pipeline_init):
1969 Fix internal data flow errors. Fixes #338711.
1971 2006-04-12 Wim Taymans <wim@fluendo.com>
1973 * tests/check/gst/gstelement.c: (GST_START_TEST):
1974 Don't leak the factory.
1976 2006-04-12 Thomas Vander Stichele <thomas at apestaart dot org>
1979 * win32/common/config.h:
1982 2006-04-12 Tim-Philipp Müller <tim at centricular dot net>
1984 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1985 (gst_controller_unset_all):
1986 Free allocated GstTimedValues when freeing list nodes.
1987 Should fix leaks 'make check-valgrind' complains about.
1989 * win32/common/libgstcontroller.def:
1990 Add gst_controller_unset_all.
1992 2006-04-11 Stefan Kost <ensonic@users.sf.net>
1994 * docs/libs/gstreamer-libs-sections.txt:
1995 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1996 (gst_controller_unset_all):
1997 * libs/gst/controller/gstcontroller.h:
1998 API: Added new method gst_controller_unset_all()
1999 fixed gst_controller_unset()
2000 * tests/check/libs/controller.c: (GST_START_TEST),
2001 (gst_controller_suite):
2002 Added two testcases for new and fixed method
2004 2006-04-11 Tim-Philipp Müller <tim at centricular dot net>
2006 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
2007 MSG_DONTWAIT is not defined on Cygwin, so work
2008 around that (fixes #317048).
2010 2006-04-11 Wim Taymans <wim@fluendo.com>
2012 * gst/gstelementfactory.c: (gst_element_register),
2013 (gst_element_factory_create), (gst_element_factory_make):
2016 Updated docs (Fixes #131079)
2018 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
2021 * tests/check/gst/gstelement.c: (GST_START_TEST),
2022 (gst_element_suite):
2023 Added testcase for elementfactory class field.
2025 2006-04-10 Wim Taymans <wim@fluendo.com>
2028 Added some more docs.
2030 * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
2031 (gst_base_sink_reset_qos):
2032 Calculate more accurate rate values.
2034 2006-04-09 Sebastien Moutte <sebastien@moutte.net>
2036 * gst/gst_private.h:
2037 add a new #ifdef to use __declspec(dllimport) only for
2038 other modules and not for gstreamer core
2039 * gst/gstbasesink.c: (gst_base_sink_perform_qos):
2040 use gst_guint64_to_gdouble for conversion
2041 * win32/common/libgstreamer.def:
2042 add new exported functions
2043 * win32/vs6/gst_inspect.dsp:
2044 * win32/vs6/gst_launch.dsp:
2045 * win32/vs6/libgstbase.dsp:
2046 * win32/vs6/libgstcontroller.dsp:
2047 * win32/vs6/libgstcoreelements.dsp:
2048 * win32/vs6/libgstdataprotocol.dsp:
2049 * win32/vs6/libgstnet.dsp:
2050 update project files
2052 2006-04-08 Stefan Kost <ensonic@users.sf.net>
2054 * gst/gstbuffer.c: (gst_subbuffer_class_init):
2055 * gst/gstclock.c: (gst_clock_class_init):
2056 * gst/gstelement.c: (gst_element_class_init):
2057 * gst/gstindex.c: (gst_index_class_init):
2058 * gst/gstindexfactory.c: (gst_index_factory_class_init):
2059 * gst/gstobject.c: (gst_object_class_init),
2060 (gst_signal_object_class_init):
2061 * gst/gstpad.c: (gst_pad_class_init):
2062 * gst/gstpadtemplate.c: (gst_pad_template_class_init):
2063 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
2064 * gst/gstregistry.c: (gst_registry_class_init):
2065 * gst/gstsystemclock.c: (gst_system_clock_class_init):
2066 * gst/gsttask.c: (gst_task_class_init):
2067 * gst/gstxml.c: (gst_xml_class_init):
2068 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
2069 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2070 (gst_base_src_loop):
2071 * libs/gst/controller/gstcontroller.c:/
2072 (_gst_controller_class_init):
2073 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
2074 * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
2075 * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
2076 * tests/old/examples/plugins/example.c: (gst_example_class_init):
2077 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
2078 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2080 2006-04-08 Tim-Philipp Müller <tim at centricular dot net>
2082 * gst/gstpad.c: (gst_pad_link):
2083 Must set peer pads before calling the link function, otherwise
2084 a task started from a link function might get a flow-not-linked
2085 result when trying to push because the other thread where the
2086 linking happens hasn't had a chance to set the peers yet. This
2087 might happen for example when a queue gets linked to a downstream
2088 element, as queue starts a streaming task when its source pad
2089 gets linked. Happens in real life when playing back flac/musepack
2090 files in playbin (#332390).
2092 2006-04-08 Stefan Kost <ensonic@users.sf.net>
2096 * libs/gst/base/gstadapter.h:
2097 * libs/gst/base/gstbasesink.h:
2098 * libs/gst/base/gstbasesrc.h:
2099 * libs/gst/base/gstbasetransform.h:
2100 * libs/gst/base/gstcollectpads.h:
2101 * libs/gst/base/gstpushsrc.h:
2102 Fix broken GObject macros
2104 2006-04-07 Wim Taymans <wim@fluendo.com>
2106 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2107 Initialize start and stop times, thanks valgrind.
2109 2006-04-07 Wim Taymans <wim@fluendo.com>
2111 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2112 Be a bit nicer to badly behaving upstream elements that expect
2113 us to deal with non TIME segments and timestamps (such as fakesrc
2116 2006-04-07 Wim Taymans <wim@fluendo.com>
2119 Small documentation clarification about the signal watch.
2121 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
2122 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2123 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2124 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
2125 (gst_base_sink_get_position_last),
2126 (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
2127 Convert and store timestamps in stream time and running time, the
2128 raw timestamps are not usefull, also document this better.
2129 Use different window sizes for good and bad QoS observations so
2130 we react to badness a little quicker.
2131 Keep track of the amount of rendered and dropped buffers.
2132 Send QoS timestamps in running time.
2134 * libs/gst/base/gstbasetransform.c:
2135 (gst_base_transform_sink_eventfunc),
2136 (gst_base_transform_handle_buffer):
2137 Compare QoS timestamps against running time.
2139 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
2144 2006-04-06 Michael Smith <msmith@fluendo.com>
2146 * gst/gstpad.c: (gst_pad_set_property):
2147 Use g_value_get_object() instead of g_value_dup_gst_object(),
2148 to avoid double-reffing the pad template (which we then sink,
2149 so this worked previously if (and only if) the pad template
2152 * gst/gstpadtemplate.c: (gst_pad_template_init),
2153 (gst_pad_template_pad_created):
2154 Never return floating references to pad templates, create
2155 them as initially-sunken.
2157 Document an extra function (and make this stop sinking our
2158 pad template, since that is now guaranteed to do nothing,
2159 since we created it sunken).
2161 * gst/gstghostpad.c:
2164 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
2166 * gst/gstinfo.c: (__gst_in_valgrind):
2169 * plugins/elements/gsttypefindelement.c:
2170 (gst_type_find_element_chain):
2171 Don't leak buffer caps.
2173 2006-04-06 Michael Smith <msmith@fluendo.com>
2175 * gst/parse/grammar.y:
2176 Fix a leak in parse-launch for any source-or-sink named element
2179 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
2180 Unref the pipeline if it exists after we've failed parsing.
2182 2006-04-05 Michael Smith <msmith@fluendo.com>
2184 * gst/gstpipeline.c: (gst_pipeline_init):
2185 When we create a pipeline bus, initially create it in flushing mode.
2186 Fixes leaks in at least one test, and makes a new pipeline work the
2187 same as one that has gone to READY and then back to NULL.
2192 2006-04-05 Michael Smith <msmith@fluendo.com>
2194 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
2195 Unref a pad we reffed.
2196 * tests/check/gst/gstutils.c: (GST_START_TEST):
2199 2006-04-05 Michael Smith <msmith@fluendo.com>
2201 * gst/gstquery.c: (gst_query_set_formats),
2202 (gst_query_set_formatsv):
2203 Fix leaking GValues in queries, as shown by valgrind/testsuite.
2205 2006-04-05 Michael Smith <msmith@fluendo.com>
2207 * tests/check/generic/sinks.c: (GST_START_TEST):
2208 Fix a variety of memleaks in sinks check, which are only sometimes
2209 shown by running the tests under valgrind (weird?).
2211 2006-04-05 Jan Schmidt <thaytan@mad.scientist.com>
2213 * docs/version.entities.in:
2214 Fix the substituted entity name after thomas' changes on the
2217 2006-04-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2219 * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
2222 2006-04-05 Andy Wingo <wingo@pobox.com>
2224 * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
2226 * libs/gst/base/gstbasetransform.c
2227 (gst_base_transform_sink_eventfunc): When resetting our segment on
2228 FLUSH_STOP, also update the flag saying we haven't seen a
2231 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2233 Patch by: Paolo Borelli <pborelli at katamail dot com>
2235 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
2236 (gst_plugin_check_license):
2237 minor clean-ups: G_DEFINE_TYPE already takes care of the
2238 parent_class stuff, no need to do it twice. Mark array of
2239 license strings as constant. (#337103)
2241 2006-04-04 Michael Smith <msmith@fluendo.com>
2243 * tools/gst-inspect.c: (print_element_list):
2244 Free the right plugin list; fixes a memory leak.
2246 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2248 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
2250 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2251 Don't error out on empty buffers (#336945).
2253 2006-04-04 Jan Schmidt <thaytan@mad.scientist.com>
2255 * docs/libs/gstreamer-libs-sections.txt:
2257 * libs/gst/base/gstbasesink.c:
2258 * libs/gst/base/gstbasesink.h:
2259 * libs/gst/base/gstbasesrc.c:
2260 * libs/gst/base/gstbasesrc.h:
2261 Documentation updates. Make BaseSink and BaseSrc docs contain the
2262 class structure so that people can actually see the prototypes for
2263 virtual functions they're supposed to be overriding.
2265 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2267 * plugins/elements/gsttypefindelement.c:
2268 (gst_type_find_element_chain):
2269 More debug info; when skipping typefinding, send cached
2270 events in all cases.
2272 2006-04-01 Thomas Vander Stichele <thomas at apestaart dot org>
2275 use new AS_VERSION and AS_NANO macros
2276 * gst/gst-i18n-lib.h:
2279 * gst/gstversion.h.in:
2280 * win32/common/config.h:
2281 * win32/common/config.h.in:
2284 2006-03-31 Michael Smith <msmith@fluendo.com>
2286 * plugins/elements/gsttypefindelement.c:
2287 (gst_type_find_element_chain):
2288 Do not typefind content if the buffers already have caps.
2289 Neccesary for icydemux (#333657), and the right thing to do anyway.
2291 2006-03-30 Wim Taymans <wim@fluendo.com>
2293 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2294 (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
2295 (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
2296 (gst_base_sink_record_qos_observation),
2297 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2298 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2299 (gst_base_sink_change_state):
2300 More QoS measurements as described in the design doc.
2301 Get rid of ringbuffer with observations, running average is
2302 more simple and equally good.
2303 Calculates valid proportion now.
2304 Added beginning of flood measurement.
2306 2006-03-29 Wim Taymans <wim@fluendo.com>
2308 * docs/design/part-qos.txt:
2310 Small documentation updates and additions.
2312 2006-03-29 Wim Taymans <wim@fluendo.com>
2314 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2315 (gst_base_src_send_event), (gst_base_src_loop),
2316 (gst_base_src_change_state):
2317 Perform the EOS logic when we reach the segment stop position.
2318 Fix compilation on gcc4.1
2320 2006-03-29 Wim Taymans <wim@fluendo.com>
2322 Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
2324 * plugins/elements/gstqueue.c: (gst_queue_init),
2325 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2326 (gst_queue_set_property):
2327 * plugins/elements/gstqueue.h:
2328 In queue, when EOS is received, if minimum threshold > max_size -
2329 current_level, there is chance that queue blocks forever in conditional
2330 item del wait. This is because the queue is not emptied completely due
2331 to minimum threshold. Here is another approach. Instead of setting
2332 cur_levels to max in EOS, just zero all minimum threshold levels. This
2333 should make sure that queue gives out all data. When going to READY
2334 (stop) state, just reset the original minimum threshold levels.
2337 2006-03-29 Tim-Philipp Müller <tim at centricular dot net>
2339 * plugins/elements/gsttypefindelement.c: (stop_typefinding),
2340 (gst_type_find_element_handle_event),
2341 (gst_type_find_element_send_cached_events),
2342 (gst_type_find_element_change_state):
2343 * plugins/elements/gsttypefindelement.h:
2344 When typefinding is done in push mode, we should cache
2345 events we receive during typefinding instead of just
2346 dropping them (e.g. newsegment, custom events from
2347 dvdreadsrc etc.) and then send them out once we've
2348 determined the type of the stream (and decodebin
2349 has had a chance to plug in a decoder/demuxer).
2351 2006-03-27 Wim Taymans <wim@fluendo.com>
2353 * docs/design/part-qos.txt:
2356 2006-03-27 Wim Taymans <wim@fluendo.com>
2358 Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
2360 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2361 (gst_base_src_send_event), (gst_base_src_change_state):
2362 Handle element seek correctly when we are streaming.
2365 2006-03-24 Michael Smith <msmith@fluendo.com>
2367 * docs/faq/gst-uninstalled:
2368 Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
2369 allow you to correctly run intalled applications built against old
2370 core, using plugins that require updated core (e.g. running
2371 installed totem against a full uninstalled gstreamer stack)
2373 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2375 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
2378 2006-03-24 Wim Taymans <wim@fluendo.com>
2380 * docs/gst/gstreamer-sections.txt:
2381 Rearrange the order of the methods so that related methods
2382 are grouped together in sections.
2384 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2387 Little clarification in the docs
2389 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2393 * plugins/elements/gstidentity.c:
2394 * plugins/elements/gstqueue.c:
2395 * plugins/elements/gsttee.c:
2396 * plugins/elements/gsttypefindelement.c:
2397 GST_ELEMENT_DETAILS formatting
2399 2006-03-24 Wim Taymans <wim@fluendo.com>
2401 * libs/gst/base/gstbasesink.h:
2402 Only add fields, not insert or we break ABI.
2404 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2406 * win32/common/libgstbase.def:
2407 * win32/common/libgstreamer.def:
2408 Update, add recently added functions.
2410 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2412 * docs/gst/gstreamer-sections.txt:
2413 * gst/gstutils.c: (gst_pad_query_peer_position),
2414 (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
2416 API: add some new utility functions:
2417 - gst_pad_query_peer_position()
2418 - gst_pad_query_peer_duration()
2419 - gst_pad_query_peer_convert()
2421 2006-03-23 Wim Taymans <wim@fluendo.com>
2423 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
2424 (gst_base_sink_init), (gst_base_sink_finalize),
2425 (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
2426 (gst_base_sink_set_property), (gst_base_sink_get_property),
2427 (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
2428 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2429 (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
2430 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2431 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2432 (gst_base_sink_preroll_object), (gst_base_sink_event),
2433 (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
2434 (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
2435 (gst_base_sink_query), (gst_base_sink_change_state):
2436 Decouple max-lateness and the fact that QoS messages are generated
2437 with a new property (qos).
2438 added API: GstBaseSink::async_play()
2439 Add vmethod so subclasses can be notified of ASYNC playing
2441 Collect timestamp start and stop to report better current
2442 position in EOS/PLAYING/PAUSED/READY/NULL.
2443 Refactor QoS/frame dropping and other measurements.
2444 API: GstBaseSrc::qos
2447 * libs/gst/base/gstbasesink.h:
2448 Added Private struct.
2449 API: gst_base_sink_set_qos_enabled()
2450 API: gst_base_sink_is_qos_enabled()
2452 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2454 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
2455 If compiling against GLib-2.8 or newer, try to read the
2456 registry file using GMappedFile first before falling back
2457 to fopen() + fread() (#332151).
2459 2006-03-22 Wim Taymans <wim@fluendo.com>
2461 * gst/gstinfo.c: (gst_debug_set_active),
2462 (gst_debug_category_set_threshold):
2463 Disable debugging unless explicitly activated.
2466 2006-03-22 Wim Taymans <wim@fluendo.com>
2468 * gst/gstelement.c: (gst_element_set_locked_state),
2469 (gst_element_dispose):
2470 Cleanup the error case.
2472 * gst/gstobject.c: (gst_object_dispose):
2473 print a critical when some object was disposed with
2474 a parent, also revive the object since it might
2477 2006-03-22 Tim-Philipp Müller <tim at centricular dot net>
2479 * tools/gst-launch.1.in:
2482 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
2485 * tests/check/Makefile.am:
2486 disable some tests when we don't have a registry
2487 * tests/check/gst/gstutils.c: (gst_utils_suite):
2488 don't build the part that needs parsing
2490 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
2493 * tests/examples/Makefile.am:
2494 fix --disable-parse build
2496 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2498 * tools/gst-feedback.1.in:
2499 Fix typo: s/feeback/feedback/ (#133494).
2501 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2503 * tools/Makefile.am:
2504 * tools/gst-launch.1.in:
2505 Add FILES section and correct entry about GST_REGISTRY_PATH
2506 environment variable (#133495; #133494).
2508 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2510 * tools/Makefile.am:
2511 * tools/gst-md5sum.1.in:
2512 * tools/gst-md5sum.c:
2513 Remove gst-md5sum and man page (the md5sink element
2514 required was removed ages ago)
2516 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2518 * gst/gststructure.c: (gst_structure_id_set_value):
2519 Make sure that string fields in structures/taglists
2520 contain valid UTF-8 - we don't want to pass rubbish to
2521 applications because of a buggy plugin (cp. #334167).
2523 2006-03-21 Edward Hervey <edward@fluendo.com>
2525 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2526 (gst_bin_handle_message_func):
2527 * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
2528 * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
2529 (gst_element_set_bus_func):
2530 * gst/gstghostpad.c: (gst_proxy_pad_dispose):
2531 * gst/gstminiobject.c: (gst_value_set_mini_object),
2532 (gst_value_take_mini_object):
2533 * gst/gstpad.c: (gst_pad_set_pad_template):
2534 * gst/gstpipeline.c: (gst_pipeline_dispose),
2535 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
2536 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
2537 (gst_collect_pads_chain):
2538 * libs/gst/net/gstnettimeprovider.c:
2539 (gst_net_time_provider_set_property):
2540 Series of fixes for dereferenced pointers that gcc 4.1 complains about.
2541 It's in fact all issues with gst_*object_replace().
2543 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2545 Patch by: Loïc Minier <lool + gnome at via dot ecp dot fr>
2547 * pkgconfig/gstreamer-check-uninstalled.pc.in:
2548 * pkgconfig/gstreamer-check.pc.in:
2549 Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
2551 2006-03-21 Edward Hervey <edward@fluendo.com>
2556 gst_[buffer|event|message]_ref() macros are replaced by a static
2557 inline functions because gcc-4.1 will about if the return value
2559 * tests/check/gst/gstevent.c: (event_probe):
2560 gst_event_ref now has to be given a GstEvent* , fix check accordingly.
2562 2006-03-20 Jan Schmidt <thaytan@mad.scientist.com>
2565 Add G_UNLIKELY to our boilerplate to optimise the 'already registered
2566 the type' case. (Closes: #335195 for now). In the future, when we
2567 depend on GLib 2.10, we could also intern the type name using
2568 g_intern_static_string()
2570 2006-03-20 Wim Taymans <wim@fluendo.com>
2572 * gst/gstbin.c: (gst_bin_handle_message_func),
2573 (bin_query_max_init), (bin_query_position_fold),
2574 (bin_query_position_done), (gst_bin_query):
2575 Position query should also take max of all streams.
2577 2006-03-20 Wim Taymans <wim@fluendo.com>
2579 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
2580 (gst_fake_src_finalize):
2581 Fix leaks in fakesrc.
2583 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
2584 Fix leaks in the testcase.
2586 2006-03-19 Sebastien Moutte <sebastien@moutte.net>
2588 * gst/gst_private.h:
2589 add win32 specific import decoration(__declspec(dllimport))
2590 for all extern GstDebugCategory * variables
2591 * win32/common/libgstbase.def:
2592 * win32/common/libgstcontroller.def:
2593 * win32/common/libgstreamer.def:
2594 Add some exports, remove empty lines
2595 * win32/common/libgstdataprotocol.def:
2596 * win32/common/libgstdataprotocol.dsp:
2597 * win32/common/libgstnet.def:
2598 * win32/common/libgstnet.dsp:
2599 new project files and exportation files added
2601 2006-03-19 Wim Taymans <wim@fluendo.com>
2603 * tests/check/libs/basesrc.c: (eos_event_counter):
2604 Use proper return value for probe.
2606 2006-03-17 Wim Taymans <wim@fluendo.com>
2608 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
2610 Don't leak buffers, caps and pads on negotiation errors.
2612 2006-03-16 Stefan Kost <ensonic@users.sf.net>
2615 * docs/faq/dependencies.xml:
2616 * docs/faq/developing.xml:
2618 * docs/faq/general.xml:
2619 * docs/faq/getting.xml:
2620 * docs/faq/legal.xml:
2621 * docs/faq/troubleshooting.xml:
2622 * docs/faq/using.xml:
2623 Faq review and update.
2625 2006-03-16 Jan Schmidt <thaytan@mad.scientist.com>
2627 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
2629 Don't pound the cpu to pieces by checking get_caps when accept_caps
2630 is called with the same caps as the pad already has.
2631 Use GST_DEBUG_OBJECT when outputting caps change information.
2633 2006-03-15 Wim Taymans <wim@fluendo.com>
2635 * gst/gstclock.c: (gst_clock_class_init):
2638 2006-03-15 Jan Schmidt <thaytan@mad.scientist.com>
2643 * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
2644 (gst_pad_accept_caps), (gst_pad_configure_sink),
2645 (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
2646 Make the default acceptcaps behaviour be to check the requested
2647 caps against the gst_pad_get_caps output.
2649 Ensure that gst_pad_accept_caps is used to check caps when a pad
2650 doesn't have a setcaps function, so that pads automatically refuse
2651 caps that they don't allow in their pad template. (Fixes #332986)
2653 When a buffer with attached caps is pushed, ensure that the source
2654 pad receives those caps even if the element didn't call
2655 gst_pad_set_caps first.
2657 2006-03-15 Wim Taymans <wim@fluendo.com>
2659 * libs/gst/base/gstadapter.c:
2662 2006-03-15 Tim-Philipp Müller <tim at centricular dot net>
2664 * win32/common/libgstbase.def:
2665 * win32/common/libgstcontroller.def:
2666 * win32/common/libgstreamer.def:
2667 Add a whole bunch of missing functions (#334434).
2669 2006-03-14 Wim Taymans <wim@fluendo.com>
2671 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
2672 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
2673 (gst_base_sink_do_sync), (gst_base_sink_do_qos):
2674 Better debug info when we receive a segment event.
2675 Reorganize a bit so we can pass the get_times() results around.
2676 Use the segment format when calculating the running time.
2677 Don't do QoS is sync is disabled or we have no clock or the
2678 element does not want us to sync to the clock.
2679 Don't drop buffers if QoS is disabled for now.
2681 2006-03-14 Wim Taymans <wim@fluendo.com>
2683 * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
2684 Marked the stats property as unimplemented so people don't get
2686 Add debug message when regression goes wrong.
2687 Added some more docs.
2689 2006-03-14 Wim Taymans <wim@fluendo.com>
2691 * gst/gstsegment.c: (gst_segment_to_stream_time):
2692 Return correct return type in case of errors.
2694 2006-03-14 Wim Taymans <wim@fluendo.com>
2696 * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
2697 Don't segfault on invalid formats.
2699 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
2701 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2702 Can't use gst_segment_to_running_time() when the segment
2703 is not in GST_TIME_FORMAT (like with filesink, for example).
2704 Stops flac encoding pipelines from spewing critical warnings
2707 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
2709 * gst/gstpipeline.c: (gst_pipeline_class_init):
2710 Add 'Since: 0.10.5' to gtk-doc blurb for added property.
2712 * plugins/elements/gsttypefindelement.c:
2713 (gst_type_find_element_handle_event):
2714 Don't try to typefind empty streams.
2716 2006-03-14 Wim Taymans <wim@fluendo.com>
2718 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
2719 (gst_base_sink_do_qos):
2720 Separate QoS calculation.
2721 Only drop buffers when lateness is bigger than the
2722 duration of the buffer.
2724 2006-03-13 Wim Taymans <wim@fluendo.com>
2726 * gst/gstpipeline.c: (gst_pipeline_set_property),
2727 (gst_pipeline_get_property), (do_pipeline_seek),
2728 (gst_pipeline_change_state), (gst_pipeline_set_delay),
2729 (gst_pipeline_get_delay):
2730 Don't deadlock when reading properties.
2732 2006-03-13 Wim Taymans <wim@fluendo.com>
2734 * libs/gst/base/gstbasetransform.c:
2735 (gst_base_transform_class_init), (gst_base_transform_init),
2736 (gst_base_transform_sink_event),
2737 (gst_base_transform_sink_eventfunc),
2738 (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
2739 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
2740 (gst_base_transform_set_property),
2741 (gst_base_transform_get_property),
2742 (gst_base_transform_change_state), (gst_base_transform_update_qos),
2743 (gst_base_transform_set_qos_enabled),
2744 (gst_base_transform_is_qos_enabled):
2745 * libs/gst/base/gstbasetransform.h:
2746 Make basetransform virtual method for src events too.
2747 Handle QOS in basetransform.
2748 API: gst_base_transform_update_qos()
2749 API: gst_base_transform_set_qos_enabled()
2750 API: gst_base_transform_is_qos_enabled()
2752 2006-03-13 Wim Taymans <wim@fluendo.com>
2754 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2755 (gst_base_sink_do_sync):
2757 Use QOS debug category.
2759 2006-03-13 Wim Taymans <wim@fluendo.com>
2761 * plugins/elements/gstqueue.c:
2762 Very small doc update.
2764 2006-03-13 Wim Taymans <wim@fluendo.com>
2766 * gst/gst_private.h:
2767 * gst/gstinfo.c: (_gst_debug_init):
2768 Added QOS debug category
2770 2006-03-13 Wim Taymans <wim@fluendo.com>
2772 * docs/gst/gstreamer-sections.txt:
2773 * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
2775 * gst/gstbus.c: (gst_bus_class_init):
2778 * gst/gstelement.c: (gst_element_set_locked_state):
2780 Documentation updates.
2782 * gst/gstpipeline.c: (gst_pipeline_get_type),
2783 (gst_pipeline_class_init), (gst_pipeline_init),
2784 (gst_pipeline_dispose), (gst_pipeline_set_property),
2785 (gst_pipeline_get_property), (do_pipeline_seek),
2786 (gst_pipeline_send_event), (gst_pipeline_change_state),
2787 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
2788 (gst_pipeline_get_delay):
2789 * gst/gstpipeline.h:
2790 Added methods for setting the delay.
2791 API: gst_pipeline_set_delay()
2792 API: gst_pipeline_get_delay()
2793 Add pipeline debug category
2796 Don't reset stream time when seek failed.
2798 2006-03-13 Wim Taymans <wim@fluendo.com>
2800 * docs/design/draft-klass.txt:
2801 * docs/design/part-clocks.txt:
2802 * docs/design/part-events.txt:
2803 * docs/design/part-gstbin.txt:
2804 * docs/design/part-gstpipeline.txt:
2805 * docs/design/part-messages.txt:
2806 * docs/design/part-negotiation.txt:
2807 * docs/design/part-overview.txt:
2808 * docs/design/part-preroll.txt:
2809 * docs/design/part-seeking.txt:
2810 * docs/design/part-states.txt:
2811 * docs/design/part-streams.txt:
2812 Documentation updates.
2814 2006-03-12 Julien MOUTTE <julien@moutte.net>
2816 * gst/gsttaglist.c: Fix rubbish docs that are encouraging
2817 us to leak strings...
2819 2006-03-12 Thomas Vander Stichele <thomas at apestaart dot org>
2821 * libs/gst/net/gstnettimeprovider.c:
2823 * win32/common/config.h:
2826 2006-03-12 Tim-Philipp Müller <tim at centricular dot net>
2828 Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
2831 Don't check for libgnomeui (leftover from old examples
2832 that aren't built or disted any longer) (#334303).
2834 2006-03-11 Tim-Philipp Müller <tim at centricular dot net>
2836 * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
2837 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2838 Emit RESOURCE_NO_SPACE_LEFT error here as well when
2839 there's no space left on the device.
2841 2006-03-10 Tim-Philipp Müller <tim at centricular dot net>
2844 Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
2845 to cast the input to GstClockTime before comparing with
2846 another GstClockTime value.
2848 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
2853 === release 0.10.4 ===
2855 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
2858 releasing 0.10.4, "Light"
2860 2006-03-10 Michael Smith <msmith@fluendo.com>
2862 * libs/gst/dataprotocol/dataprotocol.c:
2863 Fix docs for dataprocotol to not get the return types completely
2864 wrong for a few functions.
2866 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2868 * docs/gst/gstreamer-sections.txt:
2869 * gst/gstpipeline.c: (gst_pipeline_class_init),
2870 (gst_pipeline_init), (gst_pipeline_set_property),
2871 (gst_pipeline_get_property), (gst_pipeline_change_state),
2872 (gst_pipeline_set_auto_flush_bus),
2873 (gst_pipeline_get_auto_flush_bus):
2874 * gst/gstpipeline.h:
2875 Add new API: gst_pipeline_set_auto_flush_bus() and
2876 gst_pipeline_get_auto_flush_bus() to disable automatic
2877 flushing of the pipeline's GstBus when going from READY
2878 to NULL state (#332045).
2880 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2882 * docs/gst/gstreamer-sections.txt:
2883 * gst/gsturi.c: (gst_uri_has_protocol):
2885 Add new API: gst_uri_has_protocol() (#333779).
2887 2006-03-09 Wim Taymans <wim@fluendo.com>
2889 * gst/gstclock.c: (gst_clock_entry_new),
2890 (gst_clock_id_compare_func), (gst_clock_id_wait),
2891 (gst_clock_id_wait_async), (gst_clock_id_unschedule),
2892 (gst_clock_init), (gst_clock_get_internal_time),
2893 (gst_clock_set_master), (do_linear_regression),
2894 (gst_clock_add_observation), (gst_clock_set_property):
2898 Fix a possible segfault when the window-size is made smaller.
2899 Calculate jitter before performing the clock wait. Ideally
2900 the clock implementation should calculate jitter but we need
2901 API breakage for that.
2903 * gst/gstsystemclock.c: (gst_system_clock_init):
2906 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2907 Remove leftover else
2909 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
2910 (gst_systemclock_suite):
2911 Added check to test GST_CLOCK_DIFF.
2913 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2915 * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
2916 (gst_type_find_helper_get_range):
2917 If we are provided with the size, we should implement
2918 GstTypeFind::get_length, so that typefind functions who
2919 want to can actually peek at the middle of a file.
2921 2006-03-08 Tim-Philipp Müller <tim at centricular dot net>
2923 * docs/manual/advanced-dataaccess.xml:
2924 Add some very very basic error checking.
2926 * docs/pwg/appendix-checklist.xml:
2927 Some updates to the list of things to check when writing an element.
2929 2006-03-08 Wim Taymans <wim@fluendo.com>
2931 * docs/design/part-element-transform.txt:
2932 Added some docs about the design of tranform elements.
2934 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
2935 (gst_base_src_loop), (gst_base_src_change_state):
2936 Mark buffers with the DISCONT flag.
2938 2006-03-08 Michael Smith <msmith@fluendo.com>
2940 * gst/gstregistry.h:
2941 * gst/gstregistryxml.c: (gst_registry_save),
2942 (gst_registry_save_escaped), (gst_registry_xml_save_caps),
2943 (gst_registry_xml_save_pad_template),
2944 (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
2945 (gst_registry_xml_write_cache):
2946 Rewrite registry-saving to avoid race conditions and check for
2949 2006-03-08 Wim Taymans <wim@fluendo.com>
2951 * libs/gst/base/gstbasetransform.c:
2952 (gst_base_transform_transform_caps),
2953 (gst_base_transform_transform_size),
2954 (gst_base_transform_prepare_output_buffer),
2955 (gst_base_transform_get_unit_size),
2956 (gst_base_transform_buffer_alloc),
2957 (gst_base_transform_handle_buffer),
2958 (gst_base_transform_change_state):
2959 Cleanups, separate normal flow from errors, add sensible
2961 Don't try to renegotiate when allocating an output buffer.
2962 Also copy DISCONT buffer flag when copying a buffer.
2963 Reset the transform after we finish streaming, not during.
2965 2006-03-08 Wim Taymans <wim@fluendo.com>
2967 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2968 Use last buffer timestamp in qos message.
2970 2006-03-07 Wim Taymans <wim@fluendo.com>
2972 Patch by: Christophe Fergeau
2974 * docs/pwg/advanced-tagging.xml:
2975 * docs/pwg/building-pads.xml:
2978 2006-03-07 Wim Taymans <wim@fluendo.com>
2980 * docs/libs/gstreamer-libs-sections.txt:
2981 Added basesink new methods.
2985 Docs updates. Flesh out the QoS docs.
2987 * libs/gst/base/gstadapter.c:
2988 Small doc clarification about ownership and flushing.
2990 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
2991 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
2992 (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
2993 (gst_base_sink_get_property), (gst_base_sink_do_sync):
2994 * libs/gst/base/gstbasesink.h:
2996 Added new methods to allow subclass to control max-lateness
2998 Generate very basic QoS events based on last sync observation.
2999 Updated docs, fix typo, added some QoS blurb.
3001 * libs/gst/base/gstbasesrc.c:
3002 Remove obsolete _get_state() calls from docs.
3004 2006-03-07 Wim Taymans <wim@fluendo.com>
3006 * docs/libs/gstreamer-libs-sections.txt:
3007 * libs/gst/base/gstbasetransform.h:
3008 API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
3009 Fix docs for GstBaseSrc.
3011 2006-03-07 Wim Taymans <wim@fluendo.com>
3013 * docs/gst/gstreamer-sections.txt:
3016 * libs/gst/base/gstbasetransform.h:
3017 Small documentation fixes.
3019 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
3022 Document thread-unsafety of gst_value_register_foo_func()
3023 when used at the same time as gst_value_foo() (#322628).
3025 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
3027 * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
3028 (gst_push_src_check_get_range):
3029 Push sources don't support pull mode by default.
3031 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
3033 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3034 (gst_base_src_init), (gst_base_src_pad_check_get_range),
3035 (gst_base_src_default_check_get_range):
3036 * libs/gst/base/gstbasesrc.h:
3037 API addition: Add ::check_get_range() vfunc to GstBaseSrc (#332611),
3038 provide default implementation, and rename
3039 gst_base_src_check_get_range() to
3040 gst_base_src_pad_check_get_range() for clarity.
3042 2006-03-06 Wim Taymans <wim@fluendo.com>
3044 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
3045 Make property overridable.
3047 2006-03-06 Wim Taymans <wim@fluendo.com>
3049 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3050 (gst_base_sink_init), (gst_base_sink_set_property),
3051 (gst_base_sink_get_property), (gst_base_sink_do_sync):
3052 * libs/gst/base/gstbasesink.h:
3053 API addition: Make max-lateness a property.
3055 2006-03-06 Wim Taymans <wim@fluendo.com>
3057 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
3058 (gst_base_sink_do_sync), (gst_base_sink_render_object):
3059 Don't ever draw a frame that is >10ms late.
3061 2006-03-06 Michael Smith <msmith@fluendo.com>
3063 * gst/gstmessage.c: (_gst_message_copy):
3064 When copying a message, set the parent_refcount of the enclosed
3065 structure to point at the copy, not the original message.
3067 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
3069 Patch by: Christophe Fergeau
3072 Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
3073 usable in c++ code (#333417)
3075 2006-03-06 Thomas Vander Stichele <thomas at apestaart dot org>
3078 Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
3080 2006-03-05 Tim-Philipp Müller <tim at centricular dot net>
3082 * libs/gst/base/gstbasetransform.c:
3083 (gst_base_transform_transform_caps):
3084 Make sure caps are writable before passing them to
3087 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
3090 Fix some minor docs errors.
3092 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
3094 Patch by: Ross Burton <ross at burtonini dot com>
3096 * gst/gsterror.c: (_gst_resource_errors_init):
3098 Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
3100 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
3103 Add a check and output a g_warning when GStreamer is built
3104 against GLib 2.6 but running against 2.8 or higher, and vice
3105 versa. (Closes: #323542)
3107 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
3109 * gst/parse/parse.l:
3110 Commit patch for parse_launch syntax from #331255. Removes
3111 support for quoted strings and mimetypes when writing filtered
3112 caps. See the bug report for more details - I'm pretty sure this
3113 obscure feature is not in use by _anyone_ anywhere.
3115 With this simple change, the size of the gstreamer.so here
3116 drops from 2193KB to 1565KB.
3118 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3120 * plugins/elements/gsttypefindelement.h:
3121 * plugins/elements/gsttypefindelement.c:
3122 (gst_type_find_element_src_event), (start_typefinding),
3123 (stop_typefinding), (gst_type_find_element_handle_event),
3124 (gst_type_find_element_chain),
3125 (gst_type_find_element_chain_do_typefinding):
3126 Use gst_type_find_helper_for_buffer() for chain-based
3129 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3131 * plugins/elements/gsttypefindelement.c:
3132 (gst_type_find_element_class_init),
3133 (gst_type_find_element_set_property),
3134 (gst_type_find_element_get_property):
3135 Deprecate "maximum" property (not only was it only taken into
3136 account for typefinding in push-mode anyway, it also was never
3137 actually possible to set it in the first place because the
3138 property was registered with the numeric property ID for the
3139 "minimum" property). Register "maximum" property correctly,
3140 for the sake of future copy'n'pasters. Remove some cruft
3141 from property get/set functions.
3143 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3145 * plugins/elements/gsttypefindelement.c:
3146 (gst_type_find_element_activate):
3147 Use gst_type_find_helper_get_range() here, so we
3148 can honour the "minimum" property and also emit
3149 the signal with the correct probability of the found caps.
3151 2006-03-02 Tim-Philipp Müller <tim at centricular dot net>
3153 * docs/libs/gstreamer-libs-sections.txt:
3154 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
3155 (helper_find_suggest), (gst_type_find_helper_get_range),
3156 (gst_type_find_helper):
3157 * libs/gst/base/gsttypefindhelper.h:
3158 New API: gst_type_find_helper_get_range() (#333042).
3160 2006-03-02 Michael Smith <msmith@fluendo.com>
3162 * gst/gstregistryxml.c: (load_feature):
3163 Asserting on a failure to read part of the registry is Not Cool.
3164 Just log a warning and return NULL (which is already handled)
3166 2006-02-28 Sebastien Moutte <sebastien@moutte.net>
3168 * win32/common/libgstbase.def:
3169 added export of gst_type_find_helper_for_buffer
3170 * win32/common/libgstbase.def:
3171 added some exports : gst_bin_iterate_elements, gst_iterator_resync,
3172 gst_ghost_pad_get_target
3174 2006-02-28 Wim Taymans <wim@fluendo.com>
3176 * docs/design/draft-klass.txt:
3178 Added Connector to mark elements that are only used to
3179 allow pipeline connections.
3180 Moved Debug to extra feature since most of them are
3181 functionally something else.
3183 2006-02-28 Wim Taymans <wim@fluendo.com>
3185 * docs/design/draft-klass.txt:
3186 Some updates and clarifications.
3188 2006-02-28 Wim Taymans <wim@fluendo.com>
3190 * docs/design/draft-klass.txt:
3191 Proposal for klass field values.
3193 * docs/design/part-streams.txt:
3194 Start of a doc describing stream anatomy.
3196 2006-02-28 Wim Taymans <wim@fluendo.com>
3198 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
3199 Help the compiler a bit with type registration.
3200 Use existing forward cod path instead of duplicating it when
3203 * gst/gstbus.c: (gst_bus_get_type):
3204 * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
3205 * gst/gstchildproxy.c: (gst_child_proxy_get_type):
3206 * gst/gstclock.c: (gst_clock_get_type):
3207 * gst/gstelement.c: (gst_element_get_type),
3208 * gst/gstelementfactory.c: (gst_element_factory_get_type):
3209 * gst/gstindexfactory.c: (gst_index_factory_get_type):
3210 * gst/gstminiobject.c: (gst_mini_object_get_type):
3211 * gst/gstpad.c: (gst_pad_get_type):
3212 * gst/gstsegment.c: (gst_segment_get_type):
3213 * gst/gststructure.c: (gst_structure_get_type):
3214 * gst/gstsystemclock.c: (gst_system_clock_get_type):
3215 * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
3217 Help compiler with type registration.
3219 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
3222 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3224 * plugins/elements/gsttypefindelement.c:
3225 (gst_type_find_element_handle_event):
3226 When we get an EOS event and have not found a type yet
3227 (most likely because we had not yet accumulated
3228 TYPE_FIND_MIN_SIZE of data yet), try to determine the
3229 type given the data we have so far. Fixes typefinding
3230 for very short streams again, most notably quicktime
3231 redirections as used on Apple's trailer site (#331701).
3233 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3235 * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
3236 (gst_type_find_helper):
3237 Try typefinding factories with the highest rank first.
3239 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3241 * docs/libs/gstreamer-libs-docs.sgml:
3242 * docs/libs/gstreamer-libs-sections.txt:
3243 * libs/gst/base/gsttypefindhelper.c:
3244 Add section for typefind helper and add documentation
3245 for the old and the new function.
3247 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3249 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
3250 (buf_helper_find_suggest), (type_find_factory_rank_cmp),
3251 (gst_type_find_helper_for_buffer):
3252 * libs/gst/base/gsttypefindhelper.h:
3253 New API: gst_type_find_helper_for_buffer() (#332723).
3255 2006-02-27 Michael Smith <msmith@fluendo.com>
3257 Patch by: Loïc Minier
3261 * docs/slides/Makefile.am:
3262 prevent CVS directories getting disted.
3264 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3266 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
3267 Use the REFCOUNTING category for caps refcounting.
3269 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
3271 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
3272 This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
3274 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
3276 * plugins/elements/gsttypefindelement.c:
3277 (gst_type_find_element_activate):
3278 Use gst_pad_check_pull_range() before _activate_pull()
3279 to avoid unnecessary open/close (see #331690).
3281 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
3284 Docs enhancement: make it crystal clear what the
3285 gst_pad_add_*_probe() callbacks should look like.
3287 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
3289 * libs/gst/base/gstbasesrc.c:
3290 Document how applications can stop recording from
3291 live sources (see #330996).
3293 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3295 * tests/check/Makefile.am:
3296 * tests/check/libs/basesrc.c: (eos_event_counter),
3297 (basesrc_eos_events_pull), (basesrc_eos_events_push),
3298 (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
3299 (gst_basesrc_suite), (main):
3300 ... and add some tests for the base source EOS stuff.
3302 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3304 * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
3305 Test case originally showed the problem fixed below,
3306 but was then amended. Add checks back at the place
3307 where they used to be.
3309 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3311 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3312 (gst_base_src_init), (gst_base_src_loop),
3313 (gst_base_src_activate_push), (gst_base_src_activate_pull),
3314 (gst_base_src_change_state):
3315 * libs/gst/base/gstbasesrc.h:
3316 Don't unconditionally send EOS when going from PAUSED to
3317 READY state, esp. make sure we don't send two EOS events
3318 in some cases (e.g. one when reaching EOS and one when
3319 going from PAUSED to READY). Also, we don't want to send
3320 EOS events when operating in pull mode. However, we do
3321 want to send an EOS event when shutting down a live
3322 source explicitly, for example (fixes #330996).
3324 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3326 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3327 Update src->read_position after a seek when not using mmap.
3328 Fixes #332277, patch by: Renchi Raju <renchi gmail com>
3330 2006-02-21 Jan Schmidt <thaytan@mad.scientist.com>
3336 Make things work with --disable-parse as they do with
3337 --disable-load-save - the symbols involved disappear, but the
3338 header is still installed and GST_DISABLE_PARSE is included via
3341 2006-02-20 Julien MOUTTE <julien@moutte.net>
3343 * libs/gst/base/gstbasetransform.c:
3344 (gst_base_transform_change_state): Fix a stupid bug. I was
3345 sure I compiled that.
3347 2006-02-20 Julien MOUTTE <julien@moutte.net>
3349 * gst/gstpad.c: (gst_pad_set_blocked_async):
3350 * gst/gstutils.c: (gst_pad_add_data_probe),
3351 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3352 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3353 (gst_pad_remove_buffer_probe): Make those function act on the
3354 ghostpad target when it's a ghostpad. (Closes #331727)
3356 2006-02-20 Julien MOUTTE <julien@moutte.net>
3358 * libs/gst/base/gstbasetransform.c:
3359 (gst_base_transform_change_state): Make basetransform reusable.
3362 2006-02-20 Jan Schmidt <thaytan@mad.scientist.com>
3364 * docs/random/release:
3365 Move the current documentation of how to do a release to the top
3368 * gst/gstbin.c: (gst_bin_class_init),
3369 (gst_bin_handle_message_func):
3370 Allow multiple state-recalculation threads. (Closes #328873)
3372 2006-02-19 Julien MOUTTE <julien@moutte.net>
3374 * gst/gstinfo.h: Add GST_STR_NULL to the second string.
3375 * gst/gstpad.c: (gst_pad_set_event_function),
3376 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3377 (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
3378 2 strings. You can't use the STR_NULL macro on that.
3380 2006-02-19 Sebastien Moutte <sebastien@moutte.net>
3382 * gst/gstpad.c: (gst_pad_set_event_function),
3383 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3384 (gst_pad_set_getcaps_function)
3385 * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
3386 Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
3387 So now, we can use --gst-debug-level=5 on Windows
3388 * win32/common/libgstcontroller.def:
3389 Added export of gst_controller_init
3390 * win32/vs6/libgstcontroller.dsp:
3391 Fixed Release post build configuration
3393 2006-02-17 Wim Taymans <wim@fluendo.com>
3395 * tests/check/gst/gstquery.c: (GST_START_TEST):
3396 Added another check.
3398 2006-02-15 Tim-Philipp Müller <tim at centricular dot net>
3400 * plugins/elements/gsttypefindelement.c: (find_peek):
3401 We can do peeks at non-zero offsets, as long as they
3402 fall within the buffer we have.
3404 2006-02-15 Jan Schmidt <thaytan@mad.scientist.com>
3406 * tests/check/Makefile.am:
3407 * tests/check/pipelines/parse-launch.c: (setup_pipeline),
3408 (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
3409 (parse_suite), (main):
3410 Add testsuite for parse launch syntax
3412 2006-02-14 Tim-Philipp Müller <tim at centricular dot net>
3414 * plugins/elements/gsttypefindelement.c:
3415 (gst_type_find_element_chain):
3416 When typefinding is unsuccessful in the chain function, don't
3417 error out immediately. Only error out with NO_CAPS_FOUND if
3418 the amount of data is at least MAX_TYPEFIND_SIZE bytes,
3419 otherwise simply wait for more data so we can try typefinding
3420 again with more data later. Also, don't attempt to typefind
3421 if we have less than MIN_TYPEFIND_SIZE data available. Overall,
3422 this should improve typefinding from network sources where the
3423 size of the first buffer can be somewhat random.
3425 2006-02-14 Wim Taymans <wim@fluendo.com>
3427 * docs/gst/gstreamer-sections.txt:
3428 * gst/gstpadtemplate.c:
3429 * gst/gstpadtemplate.h:
3430 Fix padtemplate docs, fixes #328805.
3432 2006-02-14 Wim Taymans <wim@fluendo.com>
3434 * tools/gst-launch.c: (main):
3435 NO_PREROLL is not an ERROR so don't send confusing messages
3438 2006-02-14 Wim Taymans <wim@fluendo.com>
3440 Patch by: Torsten Schoenfeld
3442 * gst/gstregistry.c: (gst_registry_get_default),
3443 (_gst_registry_cleanup):
3444 Protect default registry with lock and ref/sink it.
3447 2006-02-14 Wim Taymans <wim@fluendo.com>
3450 * gst/gstquery.c: (gst_query_list_add_format),
3451 (gst_query_set_formatsv), (gst_query_parse_formats_length),
3452 (gst_query_parse_formats_nth):
3453 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
3456 2006-02-14 Wim Taymans <wim@fluendo.com>
3458 * docs/gst/gstreamer-sections.txt:
3459 Reworked query docs.
3461 * gst/gstquery.c: (gst_query_new_formats),
3462 (gst_query_list_add_format), (gst_query_set_formats),
3463 (gst_query_set_formatsv), (gst_query_parse_formats_length),
3464 (gst_query_parse_formats_nth):
3466 Flesh out formats query, added some new methods.
3467 Fix part of #324398.
3469 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
3470 Added query creation tests.
3472 2006-02-14 Jan Schmidt <thaytan@mad.scientist.com>
3474 * gst/gstpad.c: (fixate_value):
3475 Add a default fixation for fraction lists.
3477 2006-02-13 Wim Taymans <wim@fluendo.com>
3479 * gst/gsttask.c: (gst_task_init), (gst_task_func),
3480 (gst_task_set_lock), (gst_task_start), (gst_task_pause),
3483 Detect and warn for obvious deadlocks. fixes #320340
3484 Fix error case where lock was not released.
3486 * tests/check/Makefile.am:
3487 * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
3488 (task_func), (gst_element_suite), (main):
3491 2006-02-13 Wim Taymans <wim@fluendo.com>
3493 * docs/gst/gstreamer-sections.txt:
3495 Add new functions to docs.
3497 2006-02-13 Wim Taymans <wim@fluendo.com>
3499 * docs/design/part-TODO.txt:
3500 Updated TODO list, basesrc supports seeking to non-bytes
3503 * docs/design/part-element-sink.txt:
3506 * gst/gstbin.c: (bin_replace_message),
3507 (gst_bin_handle_message_func):
3508 * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
3509 * gst/gstevent.c: (gst_event_finalize):
3510 * gst/gstpad.c: (gst_pad_event_default_dispatch),
3511 (gst_pad_send_event):
3512 Use shiny new _TYPE_NAME macros.
3514 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
3515 Move debug statement up.
3517 * gst/gstelement.c: (gst_element_set_locked_state):
3520 2006-02-13 Tim-Philipp Müller <tim at centricular dot net>
3522 * docs/gst/gstreamer-sections.txt:
3525 New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
3526 macros (#330906). Also, document the already existing
3527 GST_QUERY_TYPE macro.
3529 2006-02-13 Wim Taymans <wim@fluendo.com>
3531 * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
3532 (event_probe), (GST_START_TEST):
3533 Only events up to the pipeline EOS are counted, there are
3534 some more when going to NULL currently which we don't care
3537 2006-02-13 Wim Taymans <wim@fluendo.com>
3539 * gst/gstpad.c: (gst_pad_send_event):
3540 Correctly check flushing and emit probes. fixes #330125
3542 2006-02-10 Andy Wingo <wingo@pobox.com>
3544 * gst/gstbus.c (gst_bus_class_init): Declare our private data
3546 (gst_bus_init): Cache the location of the private data in the
3548 (gst_bus_enable_sync_message_emission)
3549 (gst_bus_disable_sync_message_emission): Implement new public
3551 (gst_bus_post): Emit the sync-message signal if the user asked for
3554 * gst/gstbus.h (GstBus): Use a padding pointer to cache the
3555 location of the bus-private structure.
3556 (gst_bus_enable_sync_message_emission)
3557 (gst_bus_disable_sync_message_emission): API addition
3559 2006-02-10 Jan Schmidt <thaytan@mad.scientist.com>
3561 Patch by: Vincent Torri
3563 * docs/pwg/building-boiler.xml:
3564 PWG patch from #326800
3566 2006-02-09 Tim-Philipp Müller <tim at centricular dot net>
3570 * docs/design/Makefile.am:
3573 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3578 === release 0.10.3 ===
3580 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3583 releasing 0.10.3, "Like a virgin"
3585 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3588 2nd prerelease of 0.10.3
3589 Bump libtool versioning.
3591 2006-02-07 Andy Wingo <wingo@pobox.com>
3593 * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
3594 update last_stop if we're in TIME format and the timestamp is
3597 * libs/gst/base/gstcollectpads.c (gst_collect_pads_event)
3598 * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc):
3599 * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
3600 If we get a new newsegment with a different format, adapt
3603 * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
3604 of 0. Not a problem, really.
3606 * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
3609 2006-02-06 Jan Schmidt <thaytan@mad.scientist.com>
3614 2006-02-06 Sebastien Moutte <sebastien@moutte.net>
3617 project files updated to the default vs7 configuration
3618 * win32/common/libgstbase.def:
3619 * win32/common/libgstreamer.def:
3621 removed empty lines,
3622 sorted all exported symbols alphabetically
3623 * win32/common/dirent.c:
3624 * win32/common/dirent.h:
3625 * win32/common/gchar.h:
3626 use windows line end.
3628 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
3630 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
3631 Send EOS event when stopping.
3633 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
3636 Tell folks what to do if the plugin-foobar.xml file
3637 hasn't been generated for a newly-added plugin.
3639 2006-02-05 Julien MOUTTE <julien@moutte.net>
3641 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
3642 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
3643 (gst_collect_pads_start), (gst_collect_pads_stop),
3644 (gst_collect_pads_event): Collectpads now holds a reference
3645 to the GstPad that was added. Indeed we don't want to look
3646 at pads that might just go away with no warning...
3648 2006-02-05 Julien MOUTTE <julien@moutte.net>
3650 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
3651 (gst_collect_pads_start), (gst_collect_pads_stop),
3652 (gst_collect_pads_event), (gst_collect_pads_chain):
3653 * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
3654 Mark Nauwelaerts's patch on bug #328491.
3656 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
3658 * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
3660 Add some simple tests for gst_parse_bin_from_description() and
3661 gst_bin_find_unconnected_pad() (#329069).
3663 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
3665 * tools/gst-launch.c: (event_loop), (main):
3666 Catch errors during preroll (#320084).
3668 2006-02-03 Tim-Philipp Müller <tim at centricular dot net>
3670 * plugins/elements/gsttypefindelement.c:
3671 (gst_type_find_element_activate):
3672 Post TYPE_NOT_FOUND error message when typefinding
3673 is unsuccessful in the activate function as well.
3675 2006-02-02 Wim Taymans <wim@fluendo.com>
3677 * docs/design/part-element-sink.txt:
3680 2006-02-02 Wim Taymans <wim@fluendo.com>
3682 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
3683 (gst_base_sink_render_object),
3684 (gst_base_sink_queue_object_unlocked):
3685 Only keep track of prerollable items when we are
3687 Before rendering after preroll, always check if we
3689 Added some more debugging.
3691 2006-02-02 Wim Taymans <wim@fluendo.com>
3693 * gst/gstelement.c: (gst_element_continue_state),
3694 (gst_element_set_state_func), (gst_element_change_state):
3695 Fixed #326576, been running this for quite some time with
3696 no regressions at all.
3698 2006-02-02 Wim Taymans <wim@fluendo.com>
3701 Added more suppressions
3703 2006-02-02 Wim Taymans <wim@fluendo.com>
3705 * docs/design/part-element-sink.txt:
3708 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3709 (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
3710 (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
3711 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
3712 (gst_base_sink_do_sync), (gst_base_sink_render_object),
3713 (gst_base_sink_preroll_object),
3714 (gst_base_sink_queue_object_unlocked),
3715 (gst_base_sink_queue_object), (gst_base_sink_event),
3716 (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
3717 (gst_base_sink_loop), (gst_base_sink_activate_pull),
3718 (gst_base_sink_get_position), (gst_base_sink_change_state):
3719 * libs/gst/base/gstbasesink.h:
3720 Totally refactored matching the design doc.
3721 Use two segments, one to clip incomming buffers and another to
3723 Handle queueing correctly, bypass the queue when playing.
3724 Make EOS cancelable.
3725 Handle errors correctly when operating in pull based mode.
3727 * tests/check/elements/fakesink.c: (GST_START_TEST),
3729 Added new check for sinks.
3731 2006-02-02 Wim Taymans <wim@fluendo.com>
3733 * gst/gstsegment.c: (gst_segment_clip):
3734 No reason to refuse to clip when start == -1
3736 2006-02-02 Stefan Kost <ensonic@users.sf.net>
3739 * docs/manual/intro-basics.xml:
3740 * docs/manual/intro-preface.xml:
3741 * docs/manual/manual.xml:
3742 * docs/pwg/advanced-dparams.xml:
3743 * docs/pwg/intro-basics.xml:
3744 * docs/pwg/intro-preface.xml:
3746 describe dparams (controller) for plugins
3747 unify docs a little more
3749 2006-02-02 Tim-Philipp Müller <tim at centricular dot net>
3751 * docs/gst/gstreamer-sections.txt:
3752 * gst/gstutils.c: (element_find_unconnected_pad),
3753 (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
3755 Add new API: gst_parse_bin_from_description() and
3756 gst_bin_find_unconnected_pad() (#329069).
3758 2006-02-01 Stefan Kost <ensonic@users.sf.net>
3760 * docs/manual/README:
3761 uncover a nasty detail of the docs build
3763 2006-01-31 Wim Taymans <wim@fluendo.com>
3765 * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
3766 Don't cache duration messages if we're not going to use or
3769 2006-01-31 Stefan Kost <ensonic@users.sf.net>
3771 * docs/manual/advanced-dparams.xml:
3772 * docs/pwg/advanced-dparams.xml:
3776 * libs/gst/controller/lib.c: (gst_controller_init):
3779 2006-01-31 Thomas Vander Stichele <thomas at apestaart dot org>
3781 * gst/gstelement.c: (gst_element_message_full):
3782 also show file/line/func if no additional debug was given
3784 2006-01-31 Sebastien Moutte <sebastien@moutte.net>
3786 * win32/vs7/grammar.vcproj:
3787 activate copy of autogenerated files for Release mode
3789 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
3791 * win32/common/libgstreamer.def:
3792 export gst_value_compare
3794 2006-01-30 Jan Schmidt <thaytan@mad.scientist.com>
3796 * plugins/elements/Makefile.am:
3797 * plugins/elements/gstelements.c:
3798 * plugins/elements/gstfdsink.c: (_do_init),
3799 (gst_fd_sink_base_init), (gst_fd_sink_class_init),
3800 (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
3801 (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
3802 (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
3803 (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
3804 (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
3805 (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
3806 * plugins/elements/gstfdsink.h:
3807 Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
3809 2006-01-30 Stefan Kost <ensonic@users.sf.net>
3811 * docs/manual/advanced-dparams.xml:
3813 * docs/manual/advanced-position.xml:
3814 * docs/manual/basics-init.xml:
3815 * docs/manual/manual.xml:
3816 * docs/manual/titlepage.xml:
3818 * docs/pwg/titlepage.xml:
3819 cleanup xml (more to come)
3820 * libs/gst/controller/gstcontroller.c:
3823 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
3825 * win32/vs6/grammar.dsp:
3826 add autogen of gstmarshal.c,h for Release mode
3828 2006-01-30 Wim Taymans <wim@fluendo.com>
3830 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3831 (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
3832 (gst_base_sink_handle_object), (gst_base_sink_event),
3833 (gst_base_sink_is_prerolled), (gst_base_sink_wait),
3834 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
3835 (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
3836 (gst_base_sink_deactivate), (gst_base_sink_activate),
3837 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
3838 (gst_base_sink_query), (gst_base_sink_change_state):
3839 Basesink cleanups, remove some old code.
3840 Handle the case where a subclass can preroll in the render
3841 method (mostly audiosinks).
3843 Remove some locks around variables that are now protected
3844 with the PREROLL_LOCK (clock_id, flushing, ..).
3845 Optimize position query some more, do correct locking.
3846 Remove old code to push queue in state change, this is not
3847 needed anymore since preroll blocks on all prerollable items
3849 Almost implemented as described in design doc.
3851 2006-01-30 Wim Taymans <wim@fluendo.com>
3853 * tests/check/gst/gstbin.c: (GST_START_TEST):
3854 Wait for refcount to settle down before checking.
3856 2006-01-30 Wim Taymans <wim@fluendo.com>
3858 * docs/design/part-element-sink.txt:
3859 Pseudo code overview of desired sink behaviour regarding
3862 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3863 * win32/vs6/grammar.dsp:
3864 fix some bugs in Release mode for autogenerated files
3866 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3867 * win32/common/libgstbase.def:
3868 * win32/common/libgstreamer.def:
3869 export some new symbols: gst_base_src_set_format,
3870 gst_iterator_next, gst_structure_set_valist
3872 2006-01-29 Julien MOUTTE <julien@moutte.net>
3874 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
3875 Set pad functions unconditionally. Fixes #329105.
3877 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3879 add vs8 project files created by Sergey Scobich
3881 2006-01-28 Jan Schmidt <thaytan@mad.scientist.com>
3883 * gst/gstutils.c: (gst_element_unlink_pads):
3884 Don't leak pad references.
3886 * tests/check/elements/fakesink.c: (GST_START_TEST):
3887 * tests/check/generic/sinks.c: (GST_START_TEST):
3888 * tests/check/generic/states.c: (GST_START_TEST):
3889 * tests/check/gst/gstbin.c: (GST_START_TEST):
3890 * tests/check/gst/gstcaps.c: (GST_START_TEST):
3891 * tests/check/gst/gstelement.c: (GST_START_TEST):
3892 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
3893 * tests/check/gst/gstiterator.c: (GST_START_TEST):
3894 * tests/check/gst/gstvalue.c: (GST_START_TEST):
3895 Fix a bunch of leaks. Make generic/sinks.c
3896 use a bit less cpu by slowing the buffer rate
3897 between fakesrc and fakesink.
3899 2006-01-27 Stefan Kost <ensonic@users.sf.net>
3901 * gst/gstelement.c: (gst_element_send_event):
3904 * gst/gstiterator.c:
3905 * gst/gstiterator.h:
3906 * gst/gstpad.c: (gst_pad_send_event):
3907 * gst/gststructure.c:
3911 * libs/gst/base/gstadapter.c:
3912 doc fixes, to link to function, just write gst_cool_function(), don't
3915 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3917 * plugins/elements/gsttee.c: (gst_tee_do_push),
3918 (gst_tee_handle_buffer):
3919 Always prefer an actual return value from a src
3920 pad in place of NOT_LINKED. This means we return
3921 WRONG_STATE when all src pads are WRONG_STATE
3922 instead of NOT_LINKED.
3924 Lock when replacing the last message to prevent
3925 racing with the get_property method.
3929 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3931 * tests/check/Makefile.am:
3932 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
3934 Add a very simple check that should have caught the memleak I fixed
3935 last night (if not for the slice allocator hiding it)
3937 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3939 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
3940 (gst_bin_remove_func), (gst_bin_handle_message_func),
3941 (bin_query_duration_fold), (bin_query_generic_fold):
3942 Clean up references to the clock provider when disposed or when
3943 handling a clock-lost message from it.
3945 Unref sinks when performing a query via gst_iterator_fold, as the
3946 gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
3948 * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
3949 (gst_clock_set_master):
3950 Drop our reference to the master clock, if any, when we are disposed.
3952 * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
3953 Chain up in dispose.
3955 2006-01-26 Wim Taymans <wim@fluendo.com>
3957 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
3960 2006-01-26 Julien MOUTTE <julien@moutte.net>
3962 * plugins/elements/gsttee.c: (gst_tee_do_push),
3963 (gst_tee_handle_buffer): Apply patch from #328715. Tee now
3964 handles pad being NOT_LINKED or in WRONG_STATE.
3966 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3971 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3974 remove obsolete entry
3976 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3978 * docs/gst/gstreamer-sections.txt:
3979 * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
3980 (gst_bin_iterate_sources), (gst_bin_send_event):
3982 * gst/gstelement.c: (gst_element_send_event):
3984 * gst/gstpad.c: (gst_pad_send_event):
3985 added code for downstream events, reviewed docs in gstevent.c
3987 2006-01-25 Julien MOUTTE <julien@moutte.net>
3989 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
3990 We only query position using the clock in the playing state.
3991 Query peer in the other cases.
3992 * win32/common/config.h: Updates.
3994 2006-01-24 Wim Taymans <wim@fluendo.com>
3996 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3997 A clock entry that is scheduled for the exact time of the
3998 clock is still in time.
4000 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4001 (gst_base_sink_do_sync):
4002 Add some more debug info.
4004 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
4007 Add new vs7 project files and solution.
4009 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
4012 all files removed as they were out-dated.
4014 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
4016 * docs/random/release:
4018 * gst/gstbin.c: (gst_bin_init):
4019 * gst/gstbus.c: (gst_bus_new):
4021 * gst/gstpipeline.c: (gst_pipeline_init):
4022 use gst_bus_new(), improve logging, fix docs
4023 * win32/common/config.h:
4024 update for cvs build
4026 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
4029 up required version of automake to 1.7
4031 2006-01-20 Sebastien Moutte <sebastien@moutte.net>
4033 * win32/common/libgstreamer.def:
4034 export gst_buffer_is_metadata_writable
4036 2006-01-20 Tim-Philipp Müller <tim at centricular dot net>
4038 * docs/gst/gstreamer-sections.txt:
4040 Add gst_event_replace() (#327001)
4042 2006-01-20 Wim Taymans <wim@fluendo.com>
4044 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
4045 Make it actually compile too..
4047 2006-01-20 Wim Taymans <wim@fluendo.com>
4050 Clarify behaviour of _is_equal() when passing NULL parameters.
4052 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
4054 Cleanups. Don't unref NULL caps.
4055 When setting the same caps, protect caps of the pad with
4057 Use full functionality of _is_equal() when comparing caps.
4059 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
4061 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
4062 Don't loop infinitely if there are no buffers to present. Partially
4063 fixes #327197, but collectpads is just broken for reusing elements
4064 to do multiple encodes atm.
4066 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
4068 * tools/gst-inspect.c: (print_element_features):
4069 * tools/gst-xmlinspect.c: (main):
4070 URL_HANDLER is not a plugin feature we can search for in
4073 2006-01-19 Edward Hervey <edward@fluendo.com>
4075 * gst/gstelement.c: (gst_element_pads_activate):
4076 When activating, do src pads first, then sink pads.
4077 When de-activating, do sink pads first, then src pads.
4079 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4081 * docs/gst/gstreamer-sections.txt:
4082 Add gst_index_add_associationv to the docs
4084 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4089 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
4090 (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
4091 Do some refactoring. Doesn't actually change functionality,
4092 but makes landing the DRAIN event easier later.
4094 2006-01-19 Tim-Philipp Müller <tim at centricular dot net>
4096 * docs/pwg/advanced-scheduling.xml:
4097 Update from 0.9.x to 0.10 API and make example a bit
4100 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4102 * docs/gst/gstreamer-sections.txt:
4103 Add gst_buffer_(is|make)_metadata_writable methods.
4105 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4107 * docs/design/part-sparsestreams.txt:
4108 Update sparse streams doc, hopefully for greater clarity
4110 2006-01-18 Jan Schmidt <thaytan@mad.scientist.com>
4112 * docs/design/part-events.txt:
4113 Remove mention of FILLER events.
4116 * docs/design/part-sparsestreams.txt:
4117 Write some things about using NEWSEGMENT to keep sparse streams
4120 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
4122 * gst/gstbin.c: (gst_bin_dispose):
4123 Guard gst_object_unref call against a NULL object (dispose
4124 can theoretically be called multiple times).
4126 2006-01-18 Wim Taymans <wim@fluendo.com>
4128 * gst/gstbin.c: (gst_bin_element_set_state):
4129 * gst/gstclock.c: (gst_clock_id_wait):
4130 Added some more debug info.
4132 * libs/gst/base/gstadapter.c:
4135 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4136 (gst_base_sink_do_sync), (gst_base_sink_chain):
4137 Added some comments.
4139 2006-01-18 Wim Taymans <wim@fluendo.com>
4141 * tests/check/Makefile.am:
4142 * tests/check/elements/fakesink.c: (chain_async_buffer),
4143 (chain_async), (chain_async_return), (GST_START_TEST),
4144 (fakesink_suite), (main):
4145 Added fakesink test that checks prerolling and clipping
4148 * tests/check/gst/gstutils.c: (GST_START_TEST):
4149 Make check run faster so that buildbots don't timeout.
4151 2006-01-18 Wim Taymans <wim@fluendo.com>
4153 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4154 (gst_base_sink_do_sync):
4156 When the sink finishes blocking on the preroll buffer, it can
4157 immediatly render it instead of rendering when the next buffer
4160 2006-01-18 Wim Taymans <wim@fluendo.com>
4162 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
4163 (gst_base_sink_get_property), (gst_base_sink_do_sync),
4164 (gst_base_sink_chain):
4166 GST_ELEMENT_CLOCK and sync are protected with LOCK.
4167 Don't store _last_stop if the buffer is dropped.
4169 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
4171 * plugins/elements/gsttypefindelement.c:
4172 (gst_type_find_element_class_init):
4173 'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
4174 object method handler that sets the caps on the pad and we want
4175 that to happen before we emit the signal (fixes e.g. feeding a
4176 plain text file to decodebin).
4178 2006-01-18 Christian Schaller <Christian@fluendo.com>
4180 * gst/gstplugin.c: Add MPL and Proprietary as license options
4182 2006-01-18 Andy Wingo <wingo@pobox.com>
4184 * gst/gstindex.h (gst_index_add_associationv): Add to header. The
4185 symbol was exported before, it appears this was just an oversight.
4187 Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
4189 * gst/gstindex.c (gst_index_add_associationv): Changed int in
4190 prototype to gint. OK since this prototype was not in the header.
4192 2006-01-17 Andy Wingo <wingo@pobox.com>
4194 * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
4195 registry while we remove plugins.
4197 * tools/gst-inspect.c (print_element_info): Don't unref the
4198 factory arg, that should be the responsibility of whatever code
4199 received the ref. Fixes a double-free when called from
4200 print_element_list via gst-inspect-0.10 -a. Fixes #327324.
4201 (main): Unref the factory if we have one.
4202 (print_element_list): No change -- relies on the
4203 plugin_feature_list_free to free the list of features.
4205 2006-01-17 Jan Schmidt <thaytan@mad.scientist.com>
4207 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
4208 (gst_buffer_make_metadata_writable):
4210 * libs/gst/base/gstbasetransform.c:
4211 (gst_base_transform_prepare_output_buf):
4212 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4213 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4214 Replace gst_buffer_(make|is)_metadata_writable patch now
4215 that the release is out.
4217 2006-01-17 Andy Wingo <wingo@pobox.com>
4219 * gst/gstregistry.c: Reflow design comment. Update so as to speak
4220 in the present tense without reference to versions.
4222 * gst/gstregistry.c (gst_registry_add_plugin)
4223 (gst_registry_remove_plugin, gst_registry_remove_feature)
4224 (gst_registry_find_feature, gst_registry_get_feature_list)
4225 (gst_registry_get_plugin_list, gst_registry_lookup_feature)
4226 (gst_registry_lookup, gst_registry_scan_path)
4227 (_gst_registry_remove_cache_plugins)
4228 (gst_registry_get_feature_list_by_plugin): Add argument
4231 === release 0.10.2 ===
4233 2006-01-16 Thomas Vander Stichele <thomas at apestaart dot org>
4236 releasing 0.10.2, "If man is five"
4238 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4242 * libs/gst/base/gstbasetransform.c:
4243 (gst_base_transform_prepare_output_buf):
4244 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4245 * tests/check/gst/gstbuffer.c: (gst_test_suite):
4246 Back out patch until after the release.
4248 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4250 * gst/gstminiobject.c:
4251 Spelling fix in docs.
4252 * ChangeLog - remove conflict indicator
4254 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4256 Reviewed By: Andy Wingo
4258 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
4259 (gst_buffer_make_metadata_writable):
4261 Add gst_buffer_(is|make)_metadata_writable as analogues of
4262 gst_buffer_(is|make)_writable.
4264 * libs/gst/base/gstbasetransform.c:
4265 (gst_base_transform_prepare_output_buf):
4266 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4267 Use name gst_buffer_(is|make)_metadata_writable functions.
4269 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4270 Test gst_buffer_(is|make)_metadata_writable
4274 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
4276 * docs/manual/Makefile.am:
4277 don't do parallel make
4280 * win32/common/config.h.in:
4281 add generations for HOST_CPU and GST_MAJORMINOR
4282 * win32/common/config.h:
4283 commit generated result
4285 2006-01-13 Tim-Philipp Müller <tim at centricular dot net>
4287 * docs/manual/appendix-integration.xml:
4288 Update GNOME integration section to use gst_init_get_option_group()
4289 instead of the old popt stuff (#322911). Also, GNOME applications
4290 should now use gconf*sink and gconf*src instead of the old gconf
4293 2006-01-13 Stefan Kost <ensonic@users.sf.net>
4296 * docs/gst/gstreamer-docs.sgml:
4297 * docs/gst/gstreamer-sections.txt:
4298 * docs/libs/gstreamer-libs-sections.txt:
4299 add new API entries to the docs
4300 * libs/gst/controller/Makefile.am:
4301 * libs/gst/controller/gstcontroller.c:
4302 * libs/gst/controller/gstcontroller.h:
4303 * libs/gst/controller/gstcontrollerprivate.h:
4304 * libs/gst/controller/gsthelper.c:
4305 * libs/gst/controller/gstinterpolation.c:
4306 move private structs to private header
4308 gstreamer-0.7 -> gstreamer-0.10
4309 * tests/check/libs/struct_i386.h:
4310 remove private structs
4312 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
4314 * plugins/indexers/Makefile.am:
4315 Fixes as part of #317048
4317 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
4319 * plugins/indexers/Makefile.am:
4320 fix #316086 - compilation when mmap is missing
4322 2006-01-12 Sebastien Moutte <sebastien@moutte.net>
4324 * libs/gst/base/gstbasesink.c:
4325 *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
4326 *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
4327 * win32/common/config.h:
4328 added some defines GST_MAJORMINOR and HOST_CPU
4329 * win32/common/libgstbase.def:
4330 * win32/common/libgstreamer.def:
4331 added some exported functions.
4333 2006-01-12 Stefan Kost <ensonic@users.sf.net>
4335 * libs/gst/controller/gstcontroller.c:
4336 (gst_controlled_property_set_interpolation_mode),
4337 (gst_controlled_property_new):
4338 * libs/gst/controller/gstcontroller.h:
4339 * libs/gst/controller/gstinterpolation.c:
4340 (interpolate_none_get_string_value_array):
4341 make G_TYPE_STRING controlable
4343 2006-01-12 Stefan Kost <ensonic@users.sf.net>
4346 * tools/gst-feedback.1.in:
4347 * tools/gst-inspect.1.in:
4348 * tools/gst-launch.1.in:
4349 * tools/gst-md5sum.1.in:
4350 * tools/gst-typefind.1.in:
4351 * tools/gst-xmlinspect.1.in:
4352 * tools/gst-xmllaunch.1.in:
4353 cleanup man-pages, remove reference to gst-register, document env-vars
4355 2006-01-12 Jan Schmidt <thaytan@mad.scientist.com>
4357 * gst/gstbuffer.c: (gst_buffer_span):
4358 gst_buffer_span should copy the timestamp of the first buffer
4359 if they were both originally overlapping subbuffers of the
4360 same parent, using the same logic as the 'slow copy' case.
4362 2006-01-11 Jan Schmidt <thaytan@mad.scientist.com>
4364 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
4365 Need to awaken ALL the pads when we pop a buffer, otherwise
4366 collectpads only works when there is 2 input streams.
4368 2006-01-11 Stefan Kost <ensonic@users.sf.net>
4370 * docs/random/ensonic/media-device-daemon.txt:
4373 fix doc example, add clarification
4374 * tools/gst-launch.1.in:
4375 add initial info about GST_PLUGIN_PATH, needs more work
4377 2006-01-11 Tim-Philipp Müller <tim at centricular dot net>
4379 * docs/manual/basics-bins.xml:
4380 * docs/manual/basics-elements.xml:
4381 * docs/manual/intro-basics.xml:
4382 Some more minor docs additions and updates.
4384 2006-01-11 Wim Taymans <wim@fluendo.com>
4386 * docs/manual/basics-bins.xml:
4387 * docs/manual/basics-elements.xml:
4388 Some small fixes as pointed out by Ser-ver on IRC.
4390 2006-01-10 Edward Hervey <edward@fluendo.com>
4392 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
4393 Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
4394 the single-segment mode.
4396 2006-01-10 Brian Cameron <brian dot cameron at sun dot com>
4398 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
4400 * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
4401 (gst_base_src_perform_seek), (gst_base_src_send_event),
4402 (gst_base_src_set_property), (gst_base_src_get_property),
4403 (gst_base_src_loop), (gst_base_src_start),
4404 (gst_base_src_activate_push):
4405 * libs/gst/base/gstbasesrc.h:
4406 Name (private) union; makes Sun's Forte compiler happy (#324900).
4408 2006-01-09 Tim-Philipp Müller <tim at centricular dot net>
4411 gst-register is gone.
4413 2006-01-07 Thomas Vander Stichele <thomas at apestaart dot org>
4415 * gst/gstvalue.c: (_gst_value_initialize):
4416 make the G_TYPE_DATE instantiation work if debug is disabled
4418 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
4420 * gst/gstmessage.c: (gst_message_parse_tag),
4421 (gst_message_parse_error), (gst_message_parse_warning):
4422 Don't crash when return location for error/warning debug
4423 string is NULL; add fact that return locations can be
4424 NULL to docs where appropriate.
4426 2006-01-05 Wim Taymans <wim@fluendo.com>
4428 * gst/gstplugin.c: (gst_plugin_load_file):
4429 Replace strdup by g_strdup.
4431 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
4433 * docs/pwg/advanced-types.xml:
4436 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
4438 submitted by: Abel Cheung
4442 Added Chinese (traditional) translation
4444 2006-01-04 Wim Taymans <wim@fluendo.com>
4446 * docs/manual/basics-pads.xml:
4447 * docs/plugins/Makefile.am:
4448 * docs/plugins/gstreamer-plugins-docs.sgml:
4449 * docs/plugins/gstreamer-plugins-sections.txt:
4450 * docs/pwg/advanced-clock.xml:
4451 * docs/pwg/advanced-scheduling.xml:
4452 * docs/pwg/advanced-types.xml:
4453 * plugins/elements/gstfdsink.c:
4454 * plugins/elements/gstfdsrc.c:
4455 * plugins/elements/gstfdsrc.h:
4456 * plugins/elements/gstidentity.c: (gst_identity_class_init):
4457 * plugins/elements/gstidentity.h:
4458 * plugins/elements/gstqueue.h:
4459 * plugins/elements/gsttee.c:
4460 * plugins/elements/gsttee.h:
4461 * plugins/elements/gsttypefindelement.c:
4462 (gst_type_find_element_class_init):
4463 * plugins/elements/gsttypefindelement.h:
4464 Small updates to various docs.
4465 Added core plugins to docs.
4467 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4470 add a suppression for liboil's uninitialized variable
4472 2006-01-02 James Livingston <jrl at ids dot org dot au>
4474 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
4477 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
4478 macro, so that gcc doesn't complain if the -Wmissing-prototypes
4479 compiler switch is being used (#325429).
4481 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
4483 * gst/gstbin.c: (gst_bin_query):
4484 Disable duration query caching in bins until it gets
4485 fixed (see #324807).
4487 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
4489 * tools/gst-inspect.c: (print_element_properties_info):
4490 Handle properties of POINTER and BOXED type.
4492 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
4494 * gst/gst.c: (init_post):
4495 Init tags stuff and some other things before loading
4496 any static plugins (there may be other static plugins
4497 than just the GStreamer ones, and they may want to
4498 register their own tags or formats or whatever, and
4499 preferably without segfaulting).
4501 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
4502 Print at least a warning in the debug logs if we drop a
4503 query just because we don't know how to adjust the value
4504 in the particular format.
4506 2005-12-24 David Schleef <ds@schleef.org>
4508 * tools/gstreamer-completion:
4509 Replacement for gst-complete written in sh and sed. Only
4510 completes names of features, but that's 90% of what I want
4511 it for. Properties are not available in registry.xml. (Maybe
4514 === release 0.10.1 ===
4516 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
4519 releasing 0.10.1, "Nollaig chridheil"
4521 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
4524 Add missing quote, should be make ERROR_CFLAGS="".
4526 2005-12-20 Wim Taymans <wim@fluendo.com>
4528 * docs/design/part-trickmodes.txt:
4529 More documentation on trickmodes.
4531 2005-12-20 Edward Hervey <edward@fluendo.com>
4533 * gst/gstcaps.c: (gst_static_caps_get_type):
4535 API addition: GST_TYPE_STATIC_CAPS
4536 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
4537 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
4538 * gst/gstpadtemplate.h:
4539 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
4540 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
4543 2005-12-18 Wim Taymans <wim@fluendo.com>
4545 * libs/gst/base/gstadapter.c:
4546 * libs/gst/base/gstadapter.h:
4547 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
4548 (gst_base_sink_get_position):
4549 * libs/gst/base/gstbasesink.h:
4550 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4551 (gst_base_src_default_query), (gst_base_src_default_do_seek),
4552 (gst_base_src_do_seek), (gst_base_src_perform_seek),
4553 (gst_base_src_send_event), (gst_base_src_update_length),
4554 (gst_base_src_get_range), (gst_base_src_loop),
4555 (gst_base_src_start):
4556 * libs/gst/base/gstbasesrc.h:
4557 * libs/gst/base/gstbasetransform.h:
4558 * libs/gst/base/gstcollectpads.h:
4559 * libs/gst/base/gstpushsrc.c:
4560 * libs/gst/base/gstpushsrc.h:
4561 * libs/gst/dataprotocol/dataprotocol.c:
4562 * libs/gst/dataprotocol/dataprotocol.h:
4563 * libs/gst/net/gstnetclientclock.h:
4564 * libs/gst/net/gstnettimeprovider.h:
4565 Documentation updates.
4567 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
4569 * docs/manual/basics-helloworld.xml:
4570 Remove superfluous closing bracket in helloworld example.
4572 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
4574 * tools/gst-launch.1.in:
4575 Update gst-launch man page; add a section with useful
4576 environment variables. Fixes #323882.
4578 2005-12-16 Stefan Kost <ensonic@users.sf.net>
4581 * gst/gst_private.h:
4582 change some char* into char[]
4584 2005-12-16 Wim Taymans <wim@fluendo.com>
4586 * gst/gstregistryxml.c: (load_feature):
4588 Don't use g_object_unref on GstObjects so that we avoid
4589 leaks on unsafe glibs.
4591 2005-12-16 Wim Taymans <wim@fluendo.com>
4593 * gst/gstbin.c: (gst_bin_recalc_state):
4596 2005-12-16 Wim Taymans <wim@fluendo.com>
4599 Added make forever target for check.
4601 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
4603 * gst/gst.c: (init_post):
4604 make the registry cache file HOST_CPU-dependent
4606 2005-12-16 Andy Wingo <wingo@pobox.com>
4608 * plugins/elements/gstbufferstore.c
4609 (gst_buffer_store_cleared_func): Pay attention to g_list_append
4612 * tests/check/gst/gstobject.c
4613 (test_fake_object_name_threaded_unique): Pay attention to
4614 g_list_sort return value.
4616 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
4618 * tools/gst-feedback-m.m:
4619 Update for 0.9/0.10 (fixes #323870).
4621 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
4623 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
4624 Fix lcopy for mini objects, the mini object needs to be ref'ed.
4626 * tests/check/gst/gstminiobject.c: (my_foo_init),
4627 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
4628 (test_value_collection), (gst_mini_object_suite):
4629 Add test to ensure refcounts end up as expected when passing
4630 GstMiniObjects through g_object_get() and g_object_set().
4632 2005-12-14 Julien MOUTTE <julien@moutte.net>
4634 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
4635 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
4636 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
4637 of collectpads. This version removes a lot of races without
4638 touching API/ABI. Yay !
4640 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
4642 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
4643 Don't allow activation of a srcpad in pull_range if it has no
4645 Change some debug statements to be a little clearer
4647 * plugins/elements/gsttypefindelement.c:
4648 (gst_type_find_handle_src_query):
4649 Check that we have a peer before executing queries thereupon.
4651 * tests/examples/metadata/read-metadata.c: (message_loop):
4652 Use gst_bus_pop instead of gst_bus_poll when we just want it to
4653 immediately return us any available message with 0 timeout.
4655 2005-12-12 Michael Smith <msmith@fluendo.com>
4657 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
4658 Don't unref factories after calling them.
4659 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
4660 * plugins/elements/gsttypefindelement.c:
4661 (gst_type_find_element_chain):
4662 Free lists of factories after using them. Fixing typefinding memory
4665 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4667 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
4668 (gst_plugin_feature_load):
4669 more meaningful debug output
4671 * tests/Makefile.am:
4672 * tests/old/examples/Makefile.am:
4673 make make distcheck happy again
4675 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
4677 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
4678 Catch the special case where we are operating chain-based,
4679 but the downstream peer pad has no chain function. Emit a
4680 custom error message in this case instead of letting the
4681 core generate one implying that this is some sort of core
4682 bug. It's not, it just means that whatever got plugged
4683 into the pipeline downstream when we announced the type
4684 can only operate pull-based, while our source can only
4685 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
4686 Error string has not been marked for translation yet, as
4687 it probably needs some more work first.
4689 (gst_type_find_element_get_best_possibility):
4690 Add helper function to find the best of all available
4691 found possibilities that qualify given the min. threshold.
4693 (gst_type_find_element_handle_event):
4694 Fix the case where we get an EOS while still in TYPEFIND
4695 mode (we want to chose the best of all possible types,
4696 not just the first type that happens to be in our unsorted
4697 list of possible types).
4699 (gst_type_find_element_chain):
4700 Make sure we return GST_FLOW_ERROR when we errored out
4701 in stop_typefinding(); also, don't just find the best of
4702 all found type entries and then use the last examined
4703 type entry, but actually use the best entry.
4705 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
4707 * tests/examples/typefind/typefind.c: (type_found):
4708 * tests/examples/xml/runxml.c: (xml_loaded):
4709 More gcc4 fixes and a mem leak fix.
4711 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4713 * tests/examples/xml/createxml.c: (object_saved):
4716 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4718 * tests/Makefile.am:
4719 enable the examples even more
4721 2005-12-12 Andy Wingo <wingo@pobox.com>
4723 * libs/gst/net/gstnettimeprovider.c
4724 (gst_net_time_provider_class_init, gst_net_time_provider_init)
4725 (gst_net_time_provider_set_property)
4726 (gst_net_time_provider_get_property):
4727 API addition: Export "active" as a GObject property.
4728 (gst_net_time_provider_thread): Only respond to time queries if
4729 the time provider is active.
4731 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
4732 NetTimeProvider, preserving binary compat.
4734 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4736 * tests/examples/controller/audio-example.c: (main):
4737 * tests/examples/launch/Makefile.am:
4738 convert comments again
4740 2005-12-12 Wim Taymans <wim@fluendo.com>
4742 * libs/gst/base/gstpushsrc.c:
4745 2005-12-12 Wim Taymans <wim@fluendo.com>
4747 * docs/libs/gstreamer-libs-sections.txt:
4748 Added new symbol to docs.
4750 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4751 (gst_base_src_init), (gst_base_src_set_format),
4752 (gst_base_src_default_query), (gst_base_src_query),
4753 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
4754 (gst_base_src_perform_seek), (gst_base_src_send_event),
4755 (gst_base_src_default_event), (gst_base_src_event_handler),
4756 (gst_base_src_set_property), (gst_base_src_get_property),
4757 (gst_base_src_wait), (gst_base_src_do_sync),
4758 (gst_base_src_update_length), (gst_base_src_get_range),
4759 (gst_base_src_check_get_range), (gst_base_src_loop),
4760 (gst_base_src_default_negotiate), (gst_base_src_start),
4761 (gst_base_src_activate_push), (gst_base_src_activate_pull),
4762 (gst_base_src_change_state):
4763 * libs/gst/base/gstbasesrc.h:
4764 Implement seeking to other formats than _BYTES.
4765 Implement more seeking methods correctly.
4767 Added query vmethod.
4768 Added do_seek vmethod to make life easier for subclasses
4770 API addition: gst_base_src_set_format()
4772 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4774 * tests/examples/Makefile.am:
4777 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4780 * docs/random/ensonic/media-device-daemon.txt:
4781 * tests/examples/controller/.cvsignore:
4782 * tests/examples/controller/Makefile.am:
4783 * tests/examples/controller/audio-example.c: (main):
4784 * tests/examples/helloworld/.cvsignore:
4785 * tests/examples/helloworld/Makefile.am:
4786 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
4787 * tests/examples/launch/.cvsignore:
4788 * tests/examples/launch/Makefile.am:
4789 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
4790 * tests/examples/metadata/.cvsignore:
4791 * tests/examples/metadata/Makefile.am:
4792 * tests/examples/metadata/read-metadata.c: (message_loop),
4793 (make_pipeline), (print_tag), (main):
4794 * tests/examples/queue/.cvsignore:
4795 * tests/examples/queue/Makefile.am:
4796 * tests/examples/queue/queue.c: (event_loop), (main):
4797 * tests/examples/typefind/.cvsignore:
4798 * tests/examples/typefind/Makefile.am:
4799 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
4801 * tests/examples/xml/.cvsignore:
4802 * tests/examples/xml/Makefile.am:
4803 * tests/examples/xml/createxml.c: (object_saved), (main):
4804 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
4805 * tests/old/examples/Makefile.am:
4806 * tests/old/examples/TODO:
4807 * tests/old/examples/controller/.cvsignore:
4808 * tests/old/examples/controller/Makefile.am:
4809 * tests/old/examples/controller/audio-example.c:
4810 * tests/old/examples/helloworld/.cvsignore:
4811 * tests/old/examples/helloworld/Makefile.am:
4812 * tests/old/examples/helloworld/helloworld.c:
4813 * tests/old/examples/launch/.cvsignore:
4814 * tests/old/examples/launch/Makefile.am:
4815 * tests/old/examples/launch/mp3parselaunch.c:
4816 * tests/old/examples/launch/mp3play:
4817 * tests/old/examples/manual/Makefile.am:
4818 * tests/old/examples/metadata/Makefile.am:
4819 * tests/old/examples/metadata/read-metadata.c:
4820 * tests/old/examples/queue/.cvsignore:
4821 * tests/old/examples/queue/Makefile.am:
4822 * tests/old/examples/queue/queue.c:
4823 * tests/old/examples/typefind/.cvsignore:
4824 * tests/old/examples/typefind/Makefile.am:
4825 * tests/old/examples/typefind/typefind.c:
4826 * tests/old/examples/xml/.cvsignore:
4827 * tests/old/examples/xml/Makefile.am:
4828 * tests/old/examples/xml/createxml.c:
4829 * tests/old/examples/xml/runxml.c:
4830 applied some simple fixing to some examples
4831 re-enabled the working examples
4833 2005-12-12 Wim Taymans <wim@fluendo.com>
4835 * gst/gstsegment.c: (gst_segment_init),
4836 (gst_segment_set_last_stop), (gst_segment_set_seek),
4837 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
4838 (gst_segment_to_running_time):
4839 Added more documentation.
4840 Make sure the last_pos value is updated properly.
4841 Make sure to_stream_time and to_running_time don't
4842 operate on wrong values.
4844 * tests/check/gst/gstsegment.c: (GST_START_TEST):
4847 2005-12-12 Michael Smith <msmith@fluendo.com>
4849 * plugins/elements/gsttypefindelement.c: (free_entry),
4850 (gst_type_find_element_chain):
4851 Now that we're not leaking factories, make sure we keep references
4852 to them while we need them.
4854 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
4856 * tests/check/gst/struct_i386.h:
4857 ifdef out the XML structs
4859 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
4861 * gst/gstvalue.c: (gst_value_transform_double_fraction):
4862 floor is not needed, F is always positive; this obviates the
4863 need for adding -lm when building without libxml
4865 2005-12-12 Wim Taymans <wim@fluendo.com>
4867 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
4868 Take current playback rate into account when reporting
4871 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4873 * docs/manual/mime-world.fig:
4874 Let's try this again, this time with a file that is
4875 actually in XFig format.
4877 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4879 * docs/manual/mime-world.fig:
4880 Add audioconvert element to diagram so that it
4881 matches the text and the code (fixes #319526).
4883 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4885 * docs/pwg/building-chainfn.xml:
4886 * docs/pwg/building-pads.xml:
4887 * docs/pwg/building-state.xml:
4888 * docs/pwg/other-source.xml:
4889 Update state change stuff for 0.10 (fixes #322969).
4891 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4893 * docs/manual/advanced-dataaccess.xml:
4894 * docs/manual/appendix-checklist.xml:
4895 * docs/manual/appendix-programs.xml:
4896 * docs/manual/basics-pads.xml:
4897 * docs/manual/highlevel-components.xml:
4898 * docs/manual/manual.xml:
4899 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
4900 add converters in front of pipelines; remove curly
4901 brackets for threads stuff, they no longer exist; use
4902 GST_TYPE_FRACTION for framerates; update some pieces of
4903 code to 0.10, but there's plenty more to do.
4905 * docs/manual/appendix-porting.xml:
4906 Expand on asynchroneous state changes; s/0.9/0.10/;
4907 mention disappearance of gst_init_get_popt_table()
4910 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4912 * docs/faq/using.xml:
4913 Spider no longer exists, and neither does gst-launch-ext.
4914 Update examples to use decodebin and playbin and put
4915 converters in front of sinks (fixes #323726).
4917 2005-12-09 Michael Smith <msmith@fluendo.com>
4919 * plugins/elements/gsttypefindelement.c: (find_peek),
4920 (gst_type_find_element_chain):
4921 Fix leaking element factories in typefinding.
4922 Fix problem where we forgot about a probable type on non-seekable
4923 files, and thus later mis-typefound it.
4925 2005-12-09 Michael Smith <msmith@fluendo.com>
4927 * common/m4/gst-makecontext.m4:
4928 * common/m4/gst-mcsc.m4:
4930 * win32/common/config.h:
4931 * win32/common/config.h.in:
4932 Remove makecontext stuff; not used in 0.10 and causes problems on
4933 HPUX according to bug #322441
4935 2005-12-07 Wim Taymans <wim@fluendo.com>
4937 * tests/check/Makefile.am:
4938 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
4940 * tests/check/libs/struct_i386.h:
4941 Added ABI check for libs
4943 2005-12-07 Wim Taymans <wim@fluendo.com>
4945 * tests/check/Makefile.am:
4946 And add the struct_i386.h to dist.
4948 2005-12-07 Wim Taymans <wim@fluendo.com>
4950 * tests/check/Makefile.am:
4951 * tests/check/gst/.cvsignore:
4952 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
4954 * tests/check/gst/struct_i386.h:
4955 Added check for ABI compatibility.
4957 2005-12-07 Wim Taymans <wim@fluendo.com>
4959 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
4960 (gst_fake_src_get_times), (gst_fake_src_create):
4961 Fix broken sync option, fixes #323259
4963 2005-12-07 Wim Taymans <wim@fluendo.com>
4968 * gst/gstcaps.c: (gst_caps_is_equal):
4969 Don't assert on NULL <--> X. Fixes #323260
4971 * gst/gstminiobject.c: (gst_mini_object_replace):
4972 If we're doing atomic operations, we might just as well use
4973 the proper way to get an atomic pointer.
4975 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
4978 2005-12-07 Michael Smith <msmith@fluendo.com>
4980 * gst/parse/grammar.y:
4981 Remove handling of { } for threads.
4983 2005-12-06 David Schleef <ds@schleef.org>
4985 * libs/gst/base/gstbasetransform.c: speling fix.
4987 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
4989 * docs/libs/tmpl/gstdataprotocol.sgml:
4990 * docs/random/omega/testing/gstobject.c:
4994 * gst/gstelementfactory.c:
4997 * gst/gstghostpad.c:
4999 * gst/gstpadtemplate.c:
5000 * gst/gstregistryxml.c:
5002 * gst/gsttagsetter.c:
5003 * gst/gsttypefind.c:
5005 * libs/gst/base/gstbasesrc.c:
5006 * libs/gst/net/gstnetclientclock.c:
5007 * libs/gst/net/gstnettimeprovider.c:
5008 * plugins/elements/gstfakesrc.c:
5009 * plugins/elements/gstfdsrc.c:
5010 * plugins/elements/gstfilesrc.c:
5011 * plugins/elements/gstidentity.c:
5012 * plugins/elements/gstqueue.c:
5013 * plugins/elements/gsttypefindelement.c:
5014 * plugins/indexers/gstfileindex.c:
5015 * plugins/indexers/gstmemindex.c:
5016 * tests/check/gst/gsttag.c:
5017 * tests/old/examples/cutter/cutter.c:
5018 * tests/old/examples/mixer/mixer.c:
5019 * tests/old/examples/xml/runxml.c: (main):
5020 * tests/old/testsuite/caps/normalisation.c:
5021 * tests/old/testsuite/debug/global.c:
5022 * tests/old/testsuite/parse/parse1.c:
5023 * tools/gst-xmlinspect.c:
5024 * win32/common/dirent.c:
5027 === release 0.10.0 ===
5029 2005-12-05 <thomas (at) apestaart (dot) org>
5032 releasing 0.10.0, "Maroilles"
5034 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5036 submitted by: Funda Wang <fundawang@linux.net.cn>
5040 added Chinese (Traditional) translation
5042 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5044 * docs/gst/gstreamer-sections.txt:
5045 * docs/libs/tmpl/gstdataprotocol.sgml:
5046 * docs/random/thomasvs/TODO:
5051 2005-12-05 Andy Wingo <wingo@pobox.com>
5053 patch by: Wim Taymans <wim@fluendo.com>
5055 * libs/gst/base/gstbasetransform.c
5056 (gst_base_transform_prepare_output_buf)
5057 (gst_base_transform_buffer_alloc):
5058 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
5059 alloc_buffer_and_set_caps.
5061 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
5062 set_caps on the source pad.
5063 (gst_pad_alloc_buffer_and_set_caps): New function, does what
5064 alloc_buffer used to do. Fixes #322874.
5066 * docs/gst/gstreamer-sections.txt:
5067 * docs/design/part-negotiation.txt:
5068 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
5071 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5073 patch by: Sebastien Moutte
5076 * win32/common/config.h.in:
5077 * win32/vs6/libgstcontroller.dsp:
5080 2005-12-05 Wim Taymans <wim@fluendo.com>
5082 * gst/gstcaps.c: (gst_caps_is_equal):
5083 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5084 (gst_fake_src_create):
5085 Back out previous code changes, leave doc updates, file bugs
5088 2005-12-05 Wim Taymans <wim@fluendo.com>
5090 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5091 (gst_fake_src_get_times), (gst_fake_src_create):
5092 * plugins/elements/gstfakesrc.h:
5093 Fix broken sync code.
5095 2005-12-05 Wim Taymans <wim@fluendo.com>
5097 * gst/gstcaps.c: (gst_caps_is_equal):
5098 Comparing NULL against !NULL yields different caps, not a
5101 2005-12-05 Wim Taymans <wim@fluendo.com>
5103 * gst/gstpipeline.c:
5104 Fix small typo in docs.
5106 2005-12-05 Andy Wingo <wingo@pobox.com>
5108 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
5110 * gst/gst.c (init_post): remove hard-coded 0.9 location for
5111 registries/plugins with a MAJORMINOR one.
5112 (plugin_desc): Rename library from gstcoreleements to
5113 staticelements. Fixes #323222.
5115 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
5117 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
5118 Change debug category to 'collectpads' from 'collect_pads'
5121 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
5123 patch by: Sebastien Moutte
5125 * libs/gst/controller/gstinterpolation.c:
5126 use convert function for uint64/double
5127 * win32/vs6/libgstcontroller.dsp:
5130 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
5132 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
5133 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
5135 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
5136 add tests that seem to show that the guint64/gdouble conversions
5139 2005-12-02 Wim Taymans <wim@fluendo.com>
5141 * gst/gstregistry.c: (gst_registry_add_path):
5142 * gst/gstregistry.h:
5143 * gst/gstregistryxml.c:
5146 2005-12-02 Wim Taymans <wim@fluendo.com>
5148 * gst/gstutils.c: (gst_util_uint64_scale_int64),
5149 (gst_util_uint64_scale_int):
5152 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
5155 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
5158 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
5161 * win32/common/config.h:
5162 * win32/vs6/gstreamer.dsw:
5163 * win32/vs6/libgstcoreelements.dsp:
5164 * win32/vs6/libgstelements.dsp:
5165 renamed core elements plugin
5167 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
5169 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
5171 do piece-wise major/minor comparison so 0.9 < 0.10
5172 also allow .exe extensions for tools
5174 2005-12-02 Michael Smith <msmith@fluendo.com>
5177 Escape a % to make gtkdoc happier; bug 322958.
5179 === release 0.9.7 ===
5181 2005-12-01 <thomas (at) apestaart (dot) org>
5184 releasing 0.9.7, "My Dog Has No Nose"
5186 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5188 * common/gst-xmlinspect.py:
5190 * docs/libs/tmpl/gstdataprotocol.sgml:
5191 * docs/random/release:
5210 * win32/common/config.h:
5211 * win32/common/config.h.in:
5212 * win32/vs6/gst_inspect.dsp:
5213 * win32/vs6/gst_launch.dsp:
5214 * win32/vs6/libgstbase.dsp:
5215 * win32/vs6/libgstelements.dsp:
5216 * win32/vs6/libgstreamer.dsp:
5217 * win32/vs7/GStreamer.vcproj:
5218 * win32/vs7/gst-inspect.vcproj:
5219 * win32/vs7/gst-launch.vcproj:
5220 * win32/vs7/libgstbase.vcproj:
5221 bump GST_MAJORMINOR to 0.10
5222 reset libtool version
5224 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5228 Added Bulgarian translation by (Alexander Shopov)
5230 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5232 * tests/check/gst/gstplugin.c:
5235 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5237 * common/gst-xmlinspect.py:
5238 * common/gtk-doc-plugins.mak:
5241 * docs/gst/Makefile.am:
5242 * docs/gst/gstreamer-docs.sgml:
5243 * docs/gst/gstreamer-sections.txt:
5244 * docs/gst/gstreamer.types:
5245 * docs/gst/gstreamer.types.in:
5246 * docs/plugins/Makefile.am:
5247 * docs/plugins/gstreamer-plugins-docs.sgml:
5248 * docs/plugins/gstreamer-plugins-sections.txt:
5249 * docs/plugins/gstreamer-plugins.types:
5250 * docs/plugins/inspect.stamp:
5251 * docs/plugins/inspect/plugin-coreelements.xml:
5252 * docs/plugins/inspect/plugin-coreindexers.xml:
5253 * docs/plugins/scanobj-build.stamp:
5254 * gstreamer.spec.in:
5255 * plugins/elements/Makefile.am:
5256 * plugins/elements/gstelements.c:
5257 * plugins/elements/gstfakesink.c:
5258 * plugins/elements/gstfakesrc.c:
5259 * plugins/elements/gstfilesink.c:
5260 * plugins/elements/gstfilesrc.c:
5261 * plugins/elements/gstqueue.c:
5262 * plugins/indexers/Makefile.am:
5263 * plugins/indexers/gstindexers.c:
5264 document core plugins in a separate document just like all the
5266 rename these plugins to something starting with core
5268 2005-12-01 Andy Wingo <wingo@pobox.com>
5270 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
5271 padding here before, but it missed the commit.
5273 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5275 * libs/gst/controller/gstinterpolation.c:
5276 whitespace prices have crashed, we should feel free to use some now
5277 use gst_guint64_to_gdouble
5279 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5281 * libs/gst/controller/gstcontroller.c:
5282 * libs/gst/controller/gsthelper.c:
5283 * libs/gst/controller/gstinterpolation.c:
5284 * libs/gst/controller/lib.c:
5285 wrap config.h include
5287 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5289 * docs/gst/gstreamer-sections.txt:
5292 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5294 * plugins/elements/gstelements.c:
5295 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
5296 (gst_fd_sink__class_init), (gst_fd_sink__init),
5297 (gst_fd_sink__chain), (gst_fd_sink__set_property),
5298 (gst_fd_sink__get_property):
5299 * plugins/elements/gstfdsink.h:
5300 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
5301 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
5302 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
5303 (gst_fd_src_unlock), (gst_fd_src_set_property),
5304 (gst_fd_src_get_property), (gst_fd_src_create),
5305 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
5306 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
5307 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
5308 (gst_fd_src_uri_handler_init):
5309 * plugins/elements/gstfdsrc.h:
5310 * plugins/elements/gstqueue.c: (gst_queue_get_type):
5313 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5315 * docs/gst/Makefile.am:
5316 * docs/gst/gstreamer.types.in:
5320 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5326 * gst/gstregistry.h:
5327 * tests/benchmarks/complexity.c:
5328 * tests/benchmarks/mass-elements.c:
5329 * tests/check/Makefile.am:
5330 * tools/Makefile.am:
5331 * tools/gst-inspect.c:
5332 * tools/gst-xmlinspect.c:
5333 various fixes to make
5334 --disable-nls --disable-registry --disable-loadsave
5335 --disable-parse --disable-gst-debug
5336 work and get the core .so down to 360444 bytes after stripping
5338 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5343 * docs/random/thomasvs/TODO:
5344 * tests/Makefile.am:
5348 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5350 * win32/GStreamer.vcproj:
5353 * win32/Makefile.inspect:
5354 * win32/Makefile.launch:
5355 * win32/Makefile.register:
5357 * win32/gst-inspect.vcproj:
5358 * win32/gst-launch.vcproj:
5359 * win32/gst-register.vcproj:
5360 * win32/gstelements.vcproj:
5361 * win32/gstgetbits.def:
5362 * win32/gstgetbits.vcproj:
5363 * win32/gstreamer-dbg.def:
5364 * win32/gstreamer.def:
5365 * win32/libgstbase.def:
5366 * win32/libgstbase.vcproj:
5367 * win32/link_oldruntime.c:
5372 move even more stuff, win32/ is nice and clean now
5374 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5376 * libs/gst/control/.cvsignore:
5381 * win32/gstbytestream.def:
5382 * win32/gstbytestream.vcproj:
5383 * win32/gstconfig.h:
5384 * win32/gstenumtypes.c:
5385 * win32/gstenumtypes.h:
5386 * win32/gstoptimalscheduler.vcproj:
5387 * win32/gstversion.h:
5389 * win32/testsuite/bins.vcproj:
5390 * win32/testsuite/bytestream.vcproj:
5391 * win32/testsuite/caps.vcproj:
5392 * win32/testsuite/cleanup.vcproj:
5393 * win32/testsuite/clock.vcproj:
5394 * win32/testsuite/debug.vcproj:
5395 * win32/testsuite/dlopen.vcproj:
5396 * win32/testsuite/dynparams.vcproj:
5397 * win32/testsuite/elements.vcproj:
5398 * win32/testsuite/ghostpads.vcproj:
5399 * win32/testsuite/indexers.vcproj:
5400 * win32/testsuite/negotiation.vcproj:
5401 * win32/testsuite/parse.vcproj:
5402 * win32/testsuite/plugin.vcproj:
5403 * win32/testsuite/refcounting.vcproj:
5404 * win32/testsuite/schedulers.vcproj:
5405 * win32/testsuite/states.vcproj:
5406 * win32/testsuite/tags.vcproj:
5407 * win32/testsuite/threads.vcproj:
5408 remove old win32 stuff that isn't maintained and should be
5411 2005-11-30 Andy Wingo <wingo@pobox.com>
5413 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
5414 loading the gst.interfaces python module bork.
5416 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
5417 available since GLib 2.2. Fixes #318031.
5419 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5423 * check/Makefile.am:
5424 * check/elements/.cvsignore:
5425 * check/elements/fakesrc.c:
5426 * check/elements/fdsrc.c:
5427 * check/elements/identity.c:
5428 * check/generic/.cvsignore:
5429 * check/generic/states.c:
5430 * check/gst-libs/.cvsignore:
5431 * check/gst-libs/controller.c:
5432 * check/gst-libs/gdp.c:
5433 * check/gst/.cvsignore:
5434 * check/gst/capslist.h:
5436 * check/gst/gstbin.c:
5437 * check/gst/gstbuffer.c:
5438 * check/gst/gstbus.c:
5439 * check/gst/gstcaps.c:
5440 * check/gst/gstelement.c:
5441 * check/gst/gstevent.c:
5442 * check/gst/gstghostpad.c:
5443 * check/gst/gstiterator.c:
5444 * check/gst/gstmessage.c:
5445 * check/gst/gstminiobject.c:
5446 * check/gst/gstobject.c:
5447 * check/gst/gstpad.c:
5448 * check/gst/gstpipeline.c:
5449 * check/gst/gstplugin.c:
5450 * check/gst/gstsegment.c:
5451 * check/gst/gststructure.c:
5452 * check/gst/gstsystemclock.c:
5453 * check/gst/gsttag.c:
5454 * check/gst/gstutils.c:
5455 * check/gst/gstvalue.c:
5456 * check/net/.cvsignore:
5457 * check/net/gstnetclientclock.c:
5458 * check/net/gstnettimeprovider.c:
5459 * check/pipelines/.cvsignore:
5460 * check/pipelines/cleanup.c:
5461 * check/pipelines/simple_launch_lines.c:
5462 * check/pipelines/stress.c:
5463 * check/states/.cvsignore:
5464 * check/states/sinks.c:
5466 * examples/Makefile.am:
5467 * examples/appreader/.cvsignore:
5468 * examples/appreader/Makefile.am:
5469 * examples/appreader/appreader.c:
5470 * examples/controller/.cvsignore:
5471 * examples/controller/Makefile.am:
5472 * examples/controller/audio-example.c:
5473 * examples/cutter/.cvsignore:
5474 * examples/cutter/Makefile.am:
5475 * examples/cutter/cutter.c:
5476 * examples/cutter/cutter.h:
5477 * examples/events/Makefile.am:
5478 * examples/events/seek.c:
5479 * examples/helloworld/.cvsignore:
5480 * examples/helloworld/Makefile.am:
5481 * examples/helloworld/helloworld.c:
5482 * examples/helloworld2/.cvsignore:
5483 * examples/helloworld2/Makefile.am:
5484 * examples/helloworld2/helloworld2.c:
5485 * examples/launch/.cvsignore:
5486 * examples/launch/Makefile.am:
5487 * examples/launch/mp3parselaunch.c:
5488 * examples/launch/mp3play:
5489 * examples/manual/.cvsignore:
5490 * examples/manual/Makefile.am:
5491 * examples/manual/extract.pl:
5492 * examples/metadata/Makefile.am:
5493 * examples/metadata/read-metadata.c:
5494 * examples/mixer/.cvsignore:
5495 * examples/mixer/Makefile.am:
5496 * examples/mixer/mixer.c:
5497 * examples/mixer/mixer.h:
5498 * examples/pingpong/.cvsignore:
5499 * examples/pingpong/Makefile.am:
5500 * examples/pingpong/pingpong.c:
5501 * examples/plugins/.cvsignore:
5502 * examples/plugins/Makefile.am:
5503 * examples/plugins/example.c:
5504 * examples/plugins/example.h:
5505 * examples/pwg/.cvsignore:
5506 * examples/pwg/Makefile.am:
5507 * examples/pwg/extract.pl:
5508 * examples/queue/.cvsignore:
5509 * examples/queue/Makefile.am:
5510 * examples/queue/queue.c:
5511 * examples/queue2/.cvsignore:
5512 * examples/queue2/Makefile.am:
5513 * examples/queue2/queue2.c:
5514 * examples/queue3/.cvsignore:
5515 * examples/queue3/Makefile.am:
5516 * examples/queue3/queue3.c:
5517 * examples/queue4/.cvsignore:
5518 * examples/queue4/Makefile.am:
5519 * examples/queue4/queue4.c:
5520 * examples/retag/.cvsignore:
5521 * examples/retag/Makefile.am:
5522 * examples/retag/retag.c:
5523 * examples/retag/transcode.c:
5524 * examples/thread/.cvsignore:
5525 * examples/thread/Makefile.am:
5526 * examples/thread/thread.c:
5527 * examples/typefind/.cvsignore:
5528 * examples/typefind/Makefile.am:
5529 * examples/typefind/typefind.c:
5530 * examples/xml/.cvsignore:
5531 * examples/xml/Makefile.am:
5532 * examples/xml/createxml.c:
5533 * examples/xml/runxml.c:
5534 * tests/Makefile.am:
5535 * tests/check/Makefile.am:
5536 * testsuite/.cvsignore:
5537 * testsuite/Makefile.am:
5539 * testsuite/caps/.cvsignore:
5540 * testsuite/caps/Makefile.am:
5541 * testsuite/caps/app_fixate.c:
5542 * testsuite/caps/audioscale.c:
5543 * testsuite/caps/caps.c:
5544 * testsuite/caps/caps.h:
5545 * testsuite/caps/caps_strings:
5546 * testsuite/caps/compatibility.c:
5547 * testsuite/caps/deserialize.c:
5548 * testsuite/caps/enumcaps.c:
5549 * testsuite/caps/eratosthenes.c:
5550 * testsuite/caps/filtercaps.c:
5551 * testsuite/caps/fixed.c:
5552 * testsuite/caps/fraction-convert.c:
5553 * testsuite/caps/fraction-multiply-and-zero.c:
5554 * testsuite/caps/intersect2.c:
5555 * testsuite/caps/intersection.c:
5556 * testsuite/caps/normalisation.c:
5557 * testsuite/caps/random.c:
5558 * testsuite/caps/renegotiate.c:
5559 * testsuite/caps/sets.c:
5560 * testsuite/caps/simplify.c:
5561 * testsuite/caps/string-conversions.c:
5562 * testsuite/caps/structure.c:
5563 * testsuite/caps/subtract.c:
5564 * testsuite/caps/union.c:
5565 * testsuite/debug/.cvsignore:
5566 * testsuite/debug/Makefile.am:
5567 * testsuite/debug/category.c:
5568 * testsuite/debug/commandline.c:
5569 * testsuite/debug/global.c:
5570 * testsuite/debug/output.c:
5571 * testsuite/debug/printf_extension.c:
5572 * testsuite/dlopen/.cvsignore:
5573 * testsuite/dlopen/Makefile.am:
5574 * testsuite/dlopen/dlopen_gst.c:
5575 * testsuite/dlopen/loadgst.c:
5576 * testsuite/elements/.cvsignore:
5577 * testsuite/elements/Makefile.am:
5578 * testsuite/elements/gst-inspect-check.in:
5579 * testsuite/elements/struct_i386.h:
5580 * testsuite/elements/struct_size.c:
5581 * testsuite/indexers/.cvsignore:
5582 * testsuite/indexers/Makefile.am:
5583 * testsuite/indexers/cache1.c:
5584 * testsuite/indexers/indexdump.c:
5585 * testsuite/parse/.cvsignore:
5586 * testsuite/parse/Makefile.am:
5587 * testsuite/parse/parse1.c:
5588 * testsuite/parse/parse2.c:
5589 * testsuite/plugin/.cvsignore:
5590 * testsuite/plugin/Makefile.am:
5591 * testsuite/plugin/README:
5592 * testsuite/plugin/dynamic.c:
5593 * testsuite/plugin/linked.c:
5594 * testsuite/plugin/loading.c:
5595 * testsuite/plugin/registry.c:
5596 * testsuite/plugin/static.c:
5597 * testsuite/plugin/static2.c:
5598 * testsuite/plugin/testplugin.c:
5599 * testsuite/plugin/testplugin2.c:
5600 * testsuite/plugin/testplugin2_s.c:
5601 * testsuite/plugin/testplugin_s.c:
5602 * testsuite/refcounting/.cvsignore:
5603 * testsuite/refcounting/Makefile.am:
5604 * testsuite/refcounting/bin.c:
5605 * testsuite/refcounting/element.c:
5606 * testsuite/refcounting/element_pad.c:
5607 * testsuite/refcounting/mainloop.c:
5608 * testsuite/refcounting/mem.c:
5609 * testsuite/refcounting/mem.h:
5610 * testsuite/refcounting/object.c:
5611 * testsuite/refcounting/pad.c:
5612 * testsuite/refcounting/sched.c:
5613 * testsuite/refcounting/thread.c:
5614 * testsuite/states/.cvsignore:
5615 * testsuite/states/Makefile.am:
5616 * testsuite/states/bin.c:
5617 * testsuite/states/locked.c:
5618 * testsuite/states/parent.c:
5619 * testsuite/threads/.cvsignore:
5620 * testsuite/threads/159566.c:
5621 * testsuite/threads/159852.c:
5622 * testsuite/threads/Makefile.am:
5623 * testsuite/threads/queue.c:
5624 * testsuite/threads/signals.c:
5625 * testsuite/threads/staticrec.c:
5626 * testsuite/threads/thread.c:
5627 * testsuite/threads/threadb.c:
5628 * testsuite/threads/threadc.c:
5629 * testsuite/threads/threadd.c:
5630 * testsuite/threads/threade.c:
5631 * testsuite/threads/threadf.c:
5632 * testsuite/threads/threadg.c:
5633 * testsuite/threads/threadh.c:
5634 * testsuite/threads/threadi.c:
5635 move all of these under tests
5637 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5640 * tests/Makefile.am:
5643 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5645 * docs/gst/gstreamer-sections.txt:
5646 * tests/sched/.cvsignore:
5647 * tests/sched/Makefile.am:
5648 * tests/sched/cases/(fs-fs).xml:
5649 * tests/sched/cases/(fs-i-fs).xml:
5650 * tests/sched/cases/(fs-i-i-fs).xml:
5651 * tests/sched/cases/(fs-i-q[i-fs]).xml:
5652 * tests/sched/dynamic-pipeline.c:
5653 * tests/sched/interrupt1.c:
5654 * tests/sched/interrupt2.c:
5655 * tests/sched/interrupt3.c:
5656 * tests/sched/runtestcases:
5657 * tests/sched/runxml.c:
5658 * tests/sched/sched-stress.c:
5659 * tests/sched/sort.c:
5660 * tests/sched/testcases:
5661 * tests/sched/testcases1.tc:
5662 * tests/seeking/.cvsignore:
5663 * tests/seeking/Makefile.am:
5664 * tests/seeking/seeking1.c:
5665 * tests/threadstate/.cvsignore:
5666 * tests/threadstate/Makefile.am:
5667 * tests/threadstate/test1.c:
5668 * tests/threadstate/test2.c:
5669 * tests/threadstate/threadstate1.c:
5670 * tests/threadstate/threadstate2.c:
5671 * tests/threadstate/threadstate3.c:
5672 * tests/threadstate/threadstate4.c:
5673 * tests/threadstate/threadstate5.c:
5674 remove obsolete tests
5676 * tests/bench-complexity.scm:
5677 * tests/bench-mass_elements.scm:
5678 * tests/complexity.c:
5679 * tests/complexity.gnuplot:
5680 * tests/instantiate/.cvsignore:
5681 * tests/instantiate/Makefile.am:
5682 * tests/instantiate/caps.c:
5683 * tests/mass_elements.c:
5684 * tests/network-clock-utils.scm:
5685 * tests/network-clock.scm:
5687 First pass at cleaning up tests/ dir before moving the rest
5688 Combined with CVS surgery
5690 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5693 queue has moved, update
5695 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5697 * docs/gst/gstreamer-sections.txt:
5698 remove double entries from the docs
5699 * gst/gst_private.h:
5700 * gst/gstinfo.c: (_gst_debug_init):
5701 remove the THREAD debug category
5705 * docs/gst/gstreamer.types:
5706 * plugins/elements/gstqueue.c: (gst_queue_get_type),
5707 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
5708 completely move queue and fix up debugging categories
5710 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5712 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
5713 make initialization portable, using LL is not
5715 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5717 * win32/common/gstconfig.h:
5720 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5722 * win32/common/libgstreamer.def:
5723 rename symbols; sort base section
5725 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5727 * gst/gstclock.c: (do_linear_regression):
5728 remove crack non-portable handrolled DEBUG macro
5730 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5732 * docs/random/release:
5734 * win32/common/gstenumtypes.c: (register_gst_object_flags),
5735 (gst_object_flags_get_type), (register_gst_bin_flags),
5736 (gst_bin_flags_get_type), (register_gst_buffer_flag),
5737 (gst_buffer_flag_get_type), (register_gst_bus_flags),
5738 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
5739 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
5740 (gst_caps_flags_get_type), (register_gst_clock_return),
5741 (gst_clock_return_get_type), (register_gst_clock_entry_type),
5742 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
5743 (gst_clock_flags_get_type), (register_gst_state),
5744 (gst_state_get_type), (register_gst_state_change_return),
5745 (gst_state_change_return_get_type), (register_gst_state_change),
5746 (gst_state_change_get_type), (register_gst_element_flags),
5747 (gst_element_flags_get_type), (register_gst_core_error),
5748 (gst_core_error_get_type), (register_gst_library_error),
5749 (gst_library_error_get_type), (register_gst_resource_error),
5750 (gst_resource_error_get_type), (register_gst_stream_error),
5751 (gst_stream_error_get_type), (register_gst_event_type_flags),
5752 (gst_event_type_flags_get_type), (register_gst_event_type),
5753 (gst_event_type_get_type), (register_gst_seek_type),
5754 (gst_seek_type_get_type), (register_gst_seek_flags),
5755 (gst_seek_flags_get_type), (register_gst_format),
5756 (gst_format_get_type), (register_gst_index_certainty),
5757 (gst_index_certainty_get_type), (register_gst_index_entry_type),
5758 (gst_index_entry_type_get_type),
5759 (register_gst_index_lookup_method),
5760 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
5761 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
5762 (gst_index_resolver_method_get_type), (register_gst_index_flags),
5763 (gst_index_flags_get_type), (register_gst_debug_level),
5764 (gst_debug_level_get_type), (register_gst_debug_color_flags),
5765 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
5766 (gst_iterator_result_get_type), (register_gst_iterator_item),
5767 (gst_iterator_item_get_type), (register_gst_message_type),
5768 (gst_message_type_get_type), (register_gst_mini_object_flags),
5769 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
5770 (gst_pad_link_return_get_type), (register_gst_flow_return),
5771 (gst_flow_return_get_type), (register_gst_activate_mode),
5772 (gst_activate_mode_get_type), (register_gst_pad_direction),
5773 (gst_pad_direction_get_type), (register_gst_pad_flags),
5774 (gst_pad_flags_get_type), (register_gst_pad_presence),
5775 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
5776 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
5777 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
5778 (gst_plugin_error_get_type), (register_gst_plugin_flags),
5779 (gst_plugin_flags_get_type), (register_gst_rank),
5780 (gst_rank_get_type), (register_gst_query_type),
5781 (gst_query_type_get_type), (register_gst_tag_merge_mode),
5782 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
5783 (gst_tag_flag_get_type), (register_gst_task_state),
5784 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
5785 (gst_alloc_trace_flags_get_type),
5786 (register_gst_type_find_probability),
5787 (gst_type_find_probability_get_type), (register_gst_uri_type),
5788 (gst_uri_type_get_type), (register_gst_parse_error),
5789 (gst_parse_error_get_type):
5790 * win32/common/gstenumtypes.h:
5791 * win32/common/gstversion.h:
5792 update visual studio generated files
5794 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5796 * win32/vs6/libgstbase.dsp:
5797 * win32/vs6/libgstelements.dsp:
5798 update project files for new locations
5800 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5805 reinstate and update
5810 * docs/random/LICENSE:
5813 2005-11-30 Edward Hervey <edward@fluendo.com>
5815 * gst/gsttypefind.c: (gst_type_find_register):
5816 * gst/gsttypefind.h:
5817 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
5818 (gst_type_find_factory_dispose):
5819 * gst/gsttypefindfactory.h:
5820 Fix memory leak in GstTypeFindFactory.
5822 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5825 * plugins/elements/Makefile.am:
5826 * plugins/elements/gstelements.c:
5827 * plugins/elements/gstqueue.c:
5828 move queue from core to the elements plugin
5830 2005-11-29 Andy Wingo <wingo@pobox.com>
5832 * libs/gst/base/gstbasetransform.h:
5833 * libs/gst/base/gstbasesrc.h:
5834 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
5836 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
5837 of pointers by which to pad very extensible base classes (like the
5838 ones in libs/gst/base).
5840 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5842 * docs/gst/gstreamer-docs.sgml:
5843 * docs/gst/gstreamer-sections.txt:
5844 * docs/libs/gstreamer-libs-docs.sgml:
5845 * docs/libs/gstreamer-libs-sections.txt:
5846 moving documentation from core to lib
5848 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5850 * check/Makefile.am:
5852 * docs/gst/Makefile.am:
5854 * gst/base/.cvsignore:
5855 * gst/base/Makefile.am:
5857 * gst/base/gstadapter.c:
5858 * gst/base/gstadapter.h:
5859 * gst/base/gstbasesink.c:
5860 * gst/base/gstbasesink.h:
5861 * gst/base/gstbasesrc.c:
5862 * gst/base/gstbasesrc.h:
5863 * gst/base/gstbasetransform.c:
5864 * gst/base/gstbasetransform.h:
5865 * gst/base/gstcollectpads.c:
5866 * gst/base/gstcollectpads.h:
5867 * gst/base/gstpushsrc.c:
5868 * gst/base/gstpushsrc.h:
5869 * gst/base/gsttypefindhelper.c:
5870 * gst/base/gsttypefindhelper.h:
5871 * gst/check/Makefile.am:
5872 * gst/check/gstcheck.c:
5873 * gst/check/gstcheck.h:
5874 * gst/net/Makefile.am:
5876 * gst/net/gstnetclientclock.c:
5877 * gst/net/gstnetclientclock.h:
5878 * gst/net/gstnettimepacket.c:
5879 * gst/net/gstnettimepacket.h:
5880 * gst/net/gstnettimeprovider.c:
5881 * gst/net/gstnettimeprovider.h:
5882 * libs/gst/Makefile.am:
5883 * libs/gst/base/Makefile.am:
5884 * libs/gst/base/gstbasetransform.c:
5885 * libs/gst/check/Makefile.am:
5886 * plugins/elements/Makefile.am:
5888 CVS surgery + support to move base, check, and net out of gst
5891 2005-11-29 Andy Wingo <wingo@pobox.com>
5893 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
5895 * gst/gststructure.h (struct _GstStructure): Only one pointer of
5898 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
5900 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
5902 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
5904 * gst/gstobject.h: (struct _GstObject): Only one pointer of
5905 padding; reduces object size by about 30%. We don't expect
5906 anything else to go into gstobject.
5908 * gst/gstminiobject.h (struct _GstMiniObject)
5909 (struct _GstMiniObjectClass): Only one pointer of padding; the
5910 payload is only a pointer and two ints anyway. For the class there
5911 are only two methods as well.
5913 * gst/gstelement.h (struct _GstElementClass): Removed
5914 the state_changed signal callback, it is not used.
5916 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5918 * docs/gst/gstreamer.types:
5919 fix includes, though they are a little dinky
5921 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5923 * check/Makefile.am:
5924 look in the right place for elements, a lot more chance of
5927 remove indexers and elements subdirs
5928 * plugins/Makefile.am:
5929 make indexers conditional
5931 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5935 * plugins/elements/Makefile.am:
5936 * plugins/elements/gstcapsfilter.c:
5937 * plugins/elements/gstfilesink.c:
5938 * plugins/elements/gstfilesrc.c:
5939 * plugins/elements/gstidentity.c:
5940 * plugins/indexers/Makefile.am:
5941 do CVS surgery and related build fixery to move elements
5942 and indexers in a new gstreamer/plugins directory, out of the
5945 2005-11-29 Andy Wingo <wingo@pobox.com>
5947 * check/Makefile.am:
5948 * pkgconfig/gstreamer-net-uninstalled.pc.in:
5949 * pkgconfig/gstreamer-net.pc.in:
5950 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
5953 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5955 * tools/Makefile.am:
5956 * tools/gst-complete.1.in:
5957 * tools/gst-complete.c:
5958 * tools/gst-compprep.1.in:
5959 * tools/gst-compprep.c:
5960 removing -compprep and -complete
5962 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5964 * gst/gstevent.c: (gst_event_new_new_segment),
5965 (gst_event_parse_new_segment):
5967 fix #320529 - clean up new_segment API and structure.
5968 Let's hope everyone was using the methods, and not the structure.
5970 2005-11-29 Edward Hervey <edward@fluendo.com>
5972 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5973 (gst_base_sink_event), (gst_base_sink_do_sync),
5974 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
5975 Properly handle non GST_FORMAT_TIME segment
5976 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
5977 Properly handle non GST_FORMAT_TIME segment
5979 This function is valid if the accumulator is 0 and the format
5980 is different from the requested format.
5982 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
5984 * docs/gst/gstreamer-sections.txt:
5985 Add gst_query_new_seeking and gst_query_parse_seeking to the
5988 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
5990 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
5991 Treat a pad alloc with new caps the same as if we were not
5992 negotiated, in order to allow a changing upstream output
5993 to produce a new format of data.
5995 2005-11-29 Edward Hervey <edward@fluendo.com>
5997 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
5998 (gst_base_transform_event), (gst_base_transform_eventfunc):
5999 The event virtual method is now properly implemented, with a default
6001 Sub classes should call the parent_class event method. They should
6002 return FALSE if they had a problem handling the given event, or don't
6003 want GstBaseTransform to send that even downstream
6004 * gst/elements/gstidentity.c: (gst_identity_class_init),
6005 (gst_identity_init), (gst_identity_event),
6006 (gst_identity_transform_ip), (gst_identity_set_property),
6007 (gst_identity_get_property):
6008 * gst/elements/gstidentity.h:
6009 Added the single-segment boolean property.
6010 If set to TRUE, it will output a single segment of data, starting from
6011 0, will eat up all incoming newsegment, and modify the timestamp of the
6014 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
6016 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
6017 Don't ref NULL target pad (#322751). Improve docs.
6019 2005-11-29 Michael Smith <msmith@fluendo.com>
6021 * gst/gstregistryxml.c: (load_plugin):
6022 Don't crash if we failed to load a feature from a plugin.
6024 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6026 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
6028 use more check API and less GLib API
6030 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6033 don't run checks if we don't have check
6035 remove the registry when running make torture
6036 * docs/gst/gstreamer-sections.txt:
6037 remove second multiply
6038 * gst/gstqueue.c: (gst_queue_loop):
6039 fix a compile warning when disabling debug
6041 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6044 Hey! Let's print the pad name if the pointer != NULL instead
6045 of when it == NULL :-)
6047 2005-11-28 Wim Taymans <wim@fluendo.com>
6049 * check/gst/gstutils.c: (GST_START_TEST):
6050 Updated check, add some scaling accuracy checking code.
6052 * gst/gstutils.c: (gst_util_div128_64),
6053 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
6054 (gst_util_uint64_scale_int):
6055 Fix 6 times faster division code. Optimize for common
6056 1/1 and less common X/1 cases.
6058 2005-11-28 Wim Taymans <wim@fluendo.com>
6060 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6063 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
6064 (do_linear_regression), (gst_clock_add_observation):
6066 Release lock when the clock cannot be slaved.
6067 Catch the case where the regression returned an invalid denominator.
6069 * gst/gstutils.c: (gst_util_div128_64_iterate),
6070 (gst_util_div128_64), (gst_util_uint64_scale_int64),
6071 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
6072 Add protentially more performant non-iterative 128/64 divide function
6073 that unfortunatly does not work yet.
6074 Shortcut the trivial 0/X = 0 case.
6075 Remove the warnings on overflow.
6077 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6079 * gst/gstplugin.c: (gst_plugin_register_func):
6080 everything causing a plugin not to load should be at least a WARNING
6082 2005-11-28 Stefan Kost <ensonic@users.sf.net>
6084 * docs/random/ensonic/dparams.txt:
6085 some TODOs for the next dev cycle
6086 * libs/gst/controller/gstcontroller.c:
6087 (gst_controlled_property_set_interpolation_mode),
6088 (gst_controlled_property_new):
6089 * libs/gst/controller/gstcontroller.h:
6090 use base type to assign acccessor functions
6092 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6094 * check/Makefile.am:
6095 Oops, that should have been top_srcdir
6097 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6099 * check/Makefile.am:
6100 * check/elements/fdsrc.c: (GST_START_TEST):
6101 Use a cmdline define to specify the location of a file to use for
6102 testing, to avoid breaking distcheck.
6104 2005-11-28 Andy Wingo <wingo@pobox.com>
6106 * gst/gstpad.c (fixate_value): Use array functions for arrays.
6108 2005-11-28 Edward Hervey <edward@fluendo.com>
6110 * tools/gst-launch.c: (main):
6111 Clarify the output strings, makes it easier to translate.
6114 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6117 don't try and build net if we don't even have <sys/socket.h>
6119 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
6121 * check/Makefile.am:
6122 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
6123 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
6124 Add tests for fdsrc seekability
6126 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6127 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
6128 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
6129 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
6130 * gst/elements/gstfdsrc.h:
6131 fdsrc should not be a 'live' source.
6132 Implement seeking on seekable fd's.
6134 * gst/gstquery.c: (gst_query_new_seeking),
6135 (gst_query_parse_seeking):
6137 Implement SEEKING query functions:
6138 *_new_seeking and *_parse_seeking
6140 2005-11-27 Stefan Kost <ensonic@users.sf.net>
6142 * gst/gstelement.c: (gst_element_dispose):
6145 * gst/gstiterator.c:
6146 * gst/gststructure.c:
6149 * libs/gst/controller/gstcontroller.c:
6150 (gst_controlled_property_set_interpolation_mode):
6151 * libs/gst/controller/gstcontroller.h:
6152 * libs/gst/controller/gstinterpolation.c:
6153 (interpolate_none_get_enum_value_array):
6154 support controlling enums
6156 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
6159 Improve documentation for gst_value_union().
6162 Change return value for union, intersect and subtract functions
6163 from gint to gboolean.
6165 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
6167 * gst/gstvalue.c: (gst_value_serialize_any_list),
6168 (gst_value_transform_any_list_string),
6169 (gst_value_deserialize_list), (gst_value_deserialize_array),
6170 (gst_value_set_int_range), (gst_value_deserialize_int_range),
6171 (gst_value_set_double_range), (gst_value_deserialize_double_range),
6172 (gst_value_set_fraction_range_full),
6173 (gst_value_deserialize_fraction_range),
6174 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
6175 (gst_value_deserialize_boolean),
6176 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
6177 (gst_value_serialize_float), (gst_value_deserialize_float),
6178 (gst_string_wrap), (gst_value_deserialize_string),
6179 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
6180 (gst_value_union_int_range_int_range),
6181 (gst_value_intersect_int_range_int_range),
6182 (gst_value_intersect_double_range_double_range),
6183 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
6184 (gst_value_subtract_int_range_int_range),
6185 (gst_value_subtract_double_double_range),
6186 (gst_value_subtract_double_range_double_range),
6187 (gst_value_deserialize_fraction):
6189 Use gint, gdouble and gchar in our API instead of int, double and
6190 char (and make usage in gstvalue.c more consistent).
6192 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6194 * check/Makefile.am:
6195 * libs/gst/controller/Makefile.am:
6196 * libs/gst/dataprotocol/Makefile.am:
6197 fix up Makefile.am and remove GST_ENABLE_NEW
6199 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6203 * gst/base/Makefile.am:
6204 * gst/check/Makefile.am:
6205 * gst/elements/Makefile.am:
6206 * gst/net/Makefile.am:
6207 update LDFLAGS use some more
6209 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6211 * common/m4/gst-doc.m4:
6214 2005-11-26 Edward Hervey <edward@fluendo.com>
6216 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
6217 This shouldn't issue a g_warning since it returns NULL if it
6218 couldn't find the plugin, and all functions using this behave
6219 properly on a NULL return. Switching to a GST_WARNING.
6221 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
6223 * gst/gstbin.c: (gst_bin_handle_message_func):
6224 Don't leak clock messages.
6226 2005-11-25 Wim Taymans <wim@fluendo.com>
6228 * gst/gstutils.c: (gst_util_uint64_scale_int64),
6229 (gst_util_uint64_scale_int):
6230 Optimisations, remove unneeded vars.
6232 2005-11-25 Wim Taymans <wim@fluendo.com>
6234 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6235 Added more checks for the high precision uint64 cases.
6237 * gst/gstutils.c: (gst_util_uint64_scale_int64),
6238 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
6239 Implement high precision (guint64 * guint64) / guint64.
6241 2005-11-24 Wim Taymans <wim@fluendo.com>
6243 * gst/base/gstbasesrc.c: (gst_base_src_query):
6244 Fix wrong percentage query.
6246 * gst/gstutils.c: (gst_util_uint64_scale),
6247 (gst_util_uint64_scale_int):
6248 Add some more common cases that can be handled
6249 efficiently to _scale.
6251 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
6253 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
6254 (gst_mini_object_suite):
6255 don't use check calls from threads; check probably isn't
6256 threadsafe and using a lock to make it threadsafe would
6257 defeat the purpose of this check
6258 * gst/check/gstcheck.c:
6259 * gst/check/gstcheck.h:
6260 use GST_DEBUG some more
6262 2005-11-24 Wim Taymans <wim@fluendo.com>
6264 * gst/gstutils.c: (gst_util_uint64_scale),
6265 (gst_util_uint64_scale_int):
6266 Chain trivial case to _scale_int.
6268 2005-11-24 Wim Taymans <wim@fluendo.com>
6270 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6271 Added test for scaling.
6276 * gst/gstutils.c: (gst_util_uint64_scale_int):
6277 Implemented high precision scaling code.
6279 2005-11-24 Stefan Kost <ensonic@users.sf.net>
6282 do not crash on pad==NULL
6284 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
6286 Patch by: Stefan Kost
6288 * common/gtk-doc.mak:
6289 * docs/gst/Makefile.am:
6290 * docs/libs/Makefile.am:
6291 Fix distcheck issues for the libraries docs build
6294 2005-11-24 Michael Smith <msmith@fluendo.com>
6296 * docs/manual/basics-helloworld.xml:
6297 Fix bug #315027: memory leak in example code in docs.
6299 2005-11-24 Michael Smith <msmith@fluendo.com>
6301 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6302 Unlock the PREROLL_LOCK in a failure case.
6304 2005-11-24 Wim Taymans <wim@fluendo.com>
6306 * docs/gst/gstreamer-sections.txt:
6307 * gst/base/gstadapter.h:
6308 * gst/base/gstbasesink.h:
6309 * gst/base/gstbasesrc.h:
6310 * gst/base/gstbasetransform.h:
6311 * gst/base/gstpushsrc.h:
6312 * gst/elements/gstfakesink.h:
6313 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
6314 * gst/elements/gstfakesrc.h:
6315 * gst/elements/gstfilesink.h:
6316 * gst/elements/gstfilesrc.h:
6319 * gst/gstbuffer.c: (_gst_buffer_copy):
6322 * gst/gstchildproxy.c:
6325 * gst/gstelementfactory.c:
6326 * gst/gstelementfactory.h:
6328 * gst/gstghostpad.h:
6330 * gst/gstinterface.h:
6331 * gst/gstminiobject.c:
6332 * gst/gstminiobject.h:
6335 * gst/gstpadtemplate.h:
6336 * gst/gstpipeline.h:
6337 * gst/gstpluginfeature.h:
6342 * gst/gsttagsetter.c:
6343 * gst/gsttagsetter.h:
6346 * gst/gsttypefind.h:
6349 * gst/net/gstnetclientclock.c:
6350 * gst/net/gstnetclientclock.h:
6351 * gst/net/gstnettimepacket.c:
6352 * gst/net/gstnettimeprovider.c:
6353 * gst/net/gstnettimeprovider.h:
6356 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6358 * configure.ac: back to HEAD
6360 === release 0.9.6 ===
6362 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6365 releasing 0.9.6, "Always On Time"
6367 2005-11-23 Wim Taymans <wim@fluendo.com>
6369 * docs/gst/gstreamer-sections.txt:
6370 * gst/glib-compat.c:
6371 * gst/gsttagsetter.c:
6373 * gst/net/gstnetclientclock.c:
6374 * gst/net/gstnettimepacket.h:
6377 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6379 * docs/faq/using.xml:
6380 * docs/libs/tmpl/gstcontrol.sgml:
6381 * docs/manual/advanced-dparams.xml:
6382 * docs/manual/appendix-checklist.xml:
6383 * docs/manual/basics-elements.xml:
6384 * docs/pwg/other-source.xml:
6385 * docs/random/moving-plugins:
6387 * tools/gst-launch.1.in:
6388 remove mentions of sinesrc
6390 2005-11-23 Michael Smith <msmith@fluendo.com>
6392 * docs/gst/gstreamer-sections.txt:
6393 Update for new API and API changes.
6395 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
6397 Documentation typo fix.
6398 * gst/net/gstnettimepacket.c:
6399 Documentation fixes for arguments.
6401 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
6403 * gst/gststructure.c: (gst_structure_get_fraction),
6404 (gst_structure_parse_value),
6405 (gst_structure_fixate_field_nearest_fraction):
6406 * gst/gststructure.h:
6407 * gst/gstutils.c: (gst_util_uint64_scale_int):
6409 * scripts/update-funcnames:
6411 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
6412 Make gst_structure_fixate_field_nearest_fraction take a numerator
6413 and denominator argument instead of a GValue
6414 add gst_structure_get_fraction helper function.
6416 2005-11-23 Wim Taymans <wim@fluendo.com>
6418 * docs/design/part-TODO.txt:
6421 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
6422 * gst/net/gstnetclientclock.h:
6423 Use parent fields for timeout and window_size.
6425 2005-11-23 Andy Wingo <wingo@pobox.com>
6427 * check/net/gstnetclientclock.c (test_functioning): Adjust to
6428 rate_num/rate_denom change.
6430 * gst/net/gstnetclientclock.c
6431 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
6432 OBJECT_LOCK. Don't call add_observation with the lock.
6434 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
6436 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
6438 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
6439 deal with rate as a fraction whose numerator and denominator are
6440 GstClockTime values.
6441 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
6442 master; the other fields are protected by the SLAVE_LOCK.
6443 (do_linear_regression): Note that this must be called with the
6445 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
6446 OBJECT_LOCK. Call set_calibration instead of touching the
6448 (gst_clock_set_property, gst_clock_get_property): Protect
6449 master/slave parameters with the SLAVE_LOCK.
6451 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
6452 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
6453 note that all of the instance variables that add_observation and
6454 the set_master functions use are protected by that lock and not
6456 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
6458 * gst/gstclock.c (gst_clock_add_observation): No longer requires
6459 the caller to take the object lock.
6461 2005-11-23 Wim Taymans <wim@fluendo.com>
6463 * gst/gsterror.c: (_gst_core_errors_init):
6465 Add error for clock stuff.
6467 * gst/gstpipeline.c: (gst_pipeline_change_state),
6468 (gst_pipeline_set_clock):
6469 Post clock error when clock cannot be used in a pipeline.
6471 2005-11-23 Stefan Kost <ensonic@users.sf.net>
6473 * docs/gst/gstreamer-sections.txt:
6474 make two symbols from gstinfo private for the docs
6475 * gst/base/gstcollectpads.h:
6477 fix doc typos, update docs
6479 2005-11-22 Wim Taymans <wim@fluendo.com>
6481 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6482 (gst_base_sink_wait), (gst_base_sink_do_sync),
6483 (gst_base_sink_handle_event):
6484 * gst/base/gstbasesink.h:
6485 No need to store the clock, the parent element class already
6488 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
6489 Updates for clock_set returning a gboolean
6491 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
6492 (gst_clock_id_wait_async), (gst_clock_class_init),
6493 (gst_clock_init), (gst_clock_finalize),
6494 (gst_clock_get_internal_time), (gst_clock_get_time),
6495 (gst_clock_slave_callback), (gst_clock_set_master),
6496 (gst_clock_get_master), (do_linear_regression),
6497 (gst_clock_add_observation), (gst_clock_set_property),
6498 (gst_clock_get_property):
6500 Implement master/slave. When setting a clock as a slave, a
6501 periodic timeout is scheduled to sample master and slave times.
6502 Then the slave clock is recalibrated to match offset and rate
6503 of the master clock.
6504 Update logging a bit.
6505 Add flag so that a clock can state that is cannot be slaved to
6508 * gst/gstelement.c: (gst_element_set_clock):
6510 The set clock returns a gboolean for when an element cannot
6511 deal with the selected clock in the pipeline.
6513 * gst/gstpipeline.c: (gst_pipeline_change_state),
6514 (gst_pipeline_set_clock):
6515 * gst/gstpipeline.h:
6516 Handle the case where the selected clock cannot be set on
6519 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
6520 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
6521 (gst_net_client_clock_set_property),
6522 (gst_net_client_clock_get_property),
6523 (gst_net_client_clock_observe_times):
6524 * gst/net/gstnetclientclock.h:
6525 Use regression code in GstClock parent, remove duplicated
6528 2005-11-22 Michael Smith <msmith@fluendo.com>
6530 * gst/gstutils.c: (gst_util_clock_time_scale):
6532 * docs/gst/gstreamer-sections.txt:
6533 Rename method to have extra underscore.
6535 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
6537 * gst/elements/Makefile.am:
6538 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
6539 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
6540 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
6541 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
6542 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
6543 * gst/elements/gstfakesrc.h:
6544 * gst/gstqueue.c: (queue_leaky_get_type):
6545 correctly fix GEnumValues so that nick is the short lowercase
6547 * tools/gst-inspect.c: (print_element_properties_info):
6548 also show the nick, since it's useful to use from parse_launch
6552 2005-11-22 Michael Smith <msmith@fluendo.com>
6554 * gst/gstutils.c: (gst_util_clocktime_scale):
6556 * docs/gst/gstreamer-sections.txt:
6557 Add util method for scaling a clocktime by a fraction. Useful
6558 implementation is left as an exercise for the reader.
6560 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6562 * gst/gstvalue.c: (gst_value_collect_fraction_range):
6563 If needed, allocate storage in the destination value during
6566 2005-11-22 Edward Hervey <edward@fluendo.com>
6568 * docs/gst/gstreamer-sections.txt:
6573 * gst/gstutils.c: (gst_util_set_object_arg):
6574 * tools/gst-compprep.c: (main):
6575 * tools/gst-inspect.c: (print_element_properties_info):
6576 Removed GstURI, closes bug #321061
6578 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6580 * check/gst/gststructure.c: (GST_START_TEST):
6581 * gst/gststructure.c: (gst_structure_parse_value):
6582 Oops, broke automatic string type parsing.
6583 Add a test to catch it in future.
6585 2005-11-22 Andy Wingo <wingo@pobox.com>
6587 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
6588 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
6589 Actually rename the function implementations. Grr.
6591 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6593 * check/gst/capslist.h:
6595 * check/gst/gststructure.c: (GST_START_TEST),
6596 (gst_structure_suite):
6597 Test automatic value type detection in gst_structure_from_string.
6598 * gst/gststructure.c: (gst_structure_parse_value):
6599 Add fraction as a type we try and guess automatically in
6600 caps/structure strings.
6602 2005-11-22 Andy Wingo <wingo@pobox.com>
6604 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
6606 * gst/gsttagsetter.h:
6607 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
6608 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
6609 (gst_tag_setter_add_tag_valist)
6610 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
6611 _add_values, _add_valist, and _add_valist_values. Since this is an
6612 interface the function suffixes should be more explicit so
6613 language binding don't end up with element.add_valist ->
6614 gst_tag_setter_add_valist, for example. Fixes #322069.
6616 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6618 * check/gst/gstcaps.c: (GST_START_TEST):
6619 Extend caps string tests to check that a caps to string
6620 conversion is reversible and produces the same caps.
6622 * gst/gststructure.c: (gst_structure_value_get_generic_type):
6623 Output "fraction" as the generic type fraction range, so caps
6624 serialisation and deserialisation works.
6625 * check/gst/capslist.h:
6626 * gst/gstvalue.c: (gst_value_deserialize_fraction):
6627 Support 'MIN' and 'MAX' for deserialising fractions.
6629 2005-11-22 Andy Wingo <wingo@pobox.com>
6631 * gst/gstevent.h (gst_event_new_new_segment)
6632 (gst_event_parse_new_segment, gst_event_new_buffer_size)
6633 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
6634 Renamed from *_newsegment, *_buffersize, *_notarget.
6636 * scripts/update-funcnames: New script, performs the changes
6639 2005-11-22 Wim Taymans <wim@fluendo.com>
6641 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6642 Make sure the GstFlowReturn is returned.
6644 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
6645 (gst_bus_add_signal_watch):
6647 add gst_bus_add_signal_watch_full.
6649 * gst/gstplugin.c: (gst_plugin_load_file):
6650 Small style cleanup.
6652 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6654 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
6655 Block the fakesrc srcpad when we send an event, to avoid
6656 contention on the stream_lock causing random test failures.
6658 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6660 * check/gst/gstvalue.c: (GST_START_TEST):
6661 * gst/gstvalue.c: (gst_value_fraction_subtract):
6664 2005-11-22 Stefan Kost <ensonic@users.sf.net>
6667 include "gstchildproxy.h"
6668 * gst/gstchildproxy.h:
6669 * libs/gst/controller/gstcontroller.h:
6670 use G_GNUC_NULL_TERMINATED
6672 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6674 * check/gst/capslist.h:
6675 * check/gst/gstcaps.c: (GST_START_TEST):
6676 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
6677 * gst/gststructure.c: (gst_structure_parse_range),
6678 (gst_structure_fixate_field_nearest_fraction):
6679 * gst/gststructure.h:
6680 * gst/gstvalue.c: (gst_value_init_fraction_range),
6681 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
6682 (gst_value_collect_fraction_range),
6683 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
6684 (gst_value_set_fraction_range_full),
6685 (gst_value_get_fraction_range_min),
6686 (gst_value_get_fraction_range_max),
6687 (gst_value_serialize_fraction_range),
6688 (gst_value_transform_fraction_range_string),
6689 (gst_value_compare_fraction_range),
6690 (gst_value_deserialize_fraction_range),
6691 (gst_value_intersect_fraction_fraction_range),
6692 (gst_value_intersect_fraction_range_fraction_range),
6693 (gst_value_subtract_fraction_fraction_range),
6694 (gst_value_subtract_fraction_range_fraction),
6695 (gst_value_subtract_fraction_range_fraction_range),
6696 (gst_value_collect_fraction), (gst_value_fraction_multiply),
6697 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
6698 (gst_value_transform_string_fraction), (_gst_value_initialize):
6700 Implement fraction ranges and extend GstFraction to support
6701 arithmetic subtraction, as well as deserialization from integer
6702 strings such as "100"
6703 Add a testsuite as for int and double range set operations
6705 2005-11-21 Andy Wingo <wingo@pobox.com>
6709 * gst/gststructure.h: Add glib-compat.h.
6711 2005-11-21 Wim Taymans <wim@fluendo.com>
6713 * gst/gstbin.c: (gst_bin_change_state_func):
6716 2005-11-21 Wim Taymans <wim@fluendo.com>
6719 And add a nice define too.
6721 2005-11-21 Wim Taymans <wim@fluendo.com>
6723 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
6724 (gst_segment_new), (gst_segment_free), (gst_segment_init),
6725 (gst_segment_set_duration), (gst_segment_set_last_stop),
6726 (gst_segment_set_seek), (gst_segment_set_newsegment),
6727 (gst_segment_to_stream_time), (gst_segment_to_running_time),
6730 Make binding friendly.
6732 2005-11-21 Andy Wingo <wingo@pobox.com>
6734 * gst/gsttagsetter.h:
6736 * gst/gststructure.h:
6738 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
6741 * gst/gsterror.c (_gst_core_errors_init):
6742 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
6745 * gst/Makefile.am (gst_headers): Add glib-compat.h.
6746 (noinst_HEADERS): noinst the -private.
6748 2005-11-21 Michael Smith <msmith@fluendo.com>
6751 * gst/gstregistry.h:
6752 Remove unimplemented declarations for which we can see no sensible
6755 2005-11-21 Andy Wingo <wingo@pobox.com>
6757 * gst/gst.h: Include glib-compat.h.
6759 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
6761 * gst/glib-compat.c: Include the public and the private header.
6763 * gst/glib-compat-private.h: Copied here from glib-compat.h.
6767 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
6769 * check/gst/gstevent.c (create_custom_events): Check that
6770 FLUSH_STOP is serialized.
6772 * check/elements/identity.c (event_func):
6773 * check/elements/fakesrc.c (event_func): No stream lock, the core
6776 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
6777 stream lock taking, yay.
6779 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
6780 ensure that core takes the stream lock.
6782 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
6785 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
6786 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
6787 it already. For the flush start we do take it though so we get the
6788 right preroll state change messages.
6790 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
6791 the stream lock here, the core does it for us.
6793 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
6794 GST_STREAM_GET_LOCK.
6795 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
6796 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
6797 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
6798 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
6799 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
6800 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
6802 * gst/gstpad.c: Update for stream lock name change.
6804 * gst/base/gstbasesink.c: Update for preroll lock name change.
6806 2005-11-21 Wim Taymans <wim@fluendo.com>
6808 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
6809 (gst_clock_get_master):
6811 * gst/gstsystemclock.c: (gst_system_clock_init):
6812 Convert Clock flags to object flags.
6813 Added methods to manage master/slave clocks.
6815 2005-11-21 Wim Taymans <wim@fluendo.com>
6817 * check/gst/gstsegment.c: (GST_START_TEST):
6818 * docs/design/part-TODO.txt:
6819 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6820 (gst_base_sink_event), (gst_base_sink_do_sync),
6821 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
6822 (gst_base_sink_query), (gst_base_sink_change_state):
6823 * gst/base/gstbasesink.h:
6824 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
6825 (gst_base_src_default_newsegment),
6826 (gst_base_src_configure_segment), (gst_base_src_do_seek),
6827 (gst_base_src_get_range), (gst_base_src_loop),
6828 (gst_base_src_change_state):
6829 * gst/base/gstbasesrc.h:
6830 * gst/base/gstbasetransform.c:
6831 (gst_base_transform_prepare_output_buf),
6832 (gst_base_transform_event), (gst_base_transform_change_state):
6833 * gst/base/gstbasetransform.h:
6834 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
6835 (gst_collect_pads_event):
6836 * gst/base/gstcollectpads.h:
6837 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
6838 (gst_fake_src_create):
6839 * gst/elements/gstfakesrc.h:
6840 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
6841 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
6842 (gst_segment_set_last_stop), (gst_segment_set_seek),
6843 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
6844 (gst_segment_to_running_time), (gst_segment_clip):
6846 More segment updates, replace code in plugins with segment
6849 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6851 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
6852 Don't ignore sscanf results
6854 2005-11-21 Andy Wingo <wingo@pobox.com>
6856 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
6859 * *.c: Ran scripts/update-macros. Oh yes.
6861 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
6862 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
6865 * scripts/update-macros: New script. Run it on your files to
6866 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
6869 2005-11-21 Stefan Kost <ensonic@users.sf.net>
6871 * docs/gst/Makefile.am:
6872 * docs/gst/gstreamer-docs.sgml:
6873 * docs/gst/gstreamer-sections.txt:
6874 * docs/gst/gstreamer.types:
6876 more docs fixes, add new api to the docs
6878 2005-11-21 Andy Wingo <wingo@pobox.com>
6880 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
6881 state_broadcast call.
6883 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
6885 2005-11-21 Julien MOUTTE <julien@moutte.net>
6887 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
6888 function calls for arrays.
6890 2005-11-21 Stefan Kost <ensonic@users.sf.net>
6892 * docs/random/ensonic/media-device-daemon.txt:
6893 wild idea, can this be done?
6894 * docs/gst/gstreamer-sections.txt:
6899 * gst/gstpluginfeature.c:
6903 doc fixes and additions
6905 2005-11-21 Andy Wingo <wingo@pobox.com>
6907 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
6908 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
6909 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
6910 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
6911 private to the basesrc implementation.
6913 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
6914 behalf of event function if necessary. It should no longer be
6915 necessary to take the stream lock in pad's event functions. Fixes
6918 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6919 * docs/gst/gstreamer-sections.txt:
6920 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
6921 (gst_structure_fixate_field_nearest_double),
6922 (gst_structure_fixate_field_boolean):
6923 * gst/gststructure.h:
6924 * win32/common/libgstreamer.def:
6925 * win32/gstreamer.def:
6927 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
6930 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6932 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
6933 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
6934 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
6935 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
6936 (gst_fdsrc_uri_handler_init):
6937 * gst/elements/gstfdsrc.h:
6938 Port fd:// URI handler from 0.8 to fdsrc
6940 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6942 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
6943 (gst_value_serialize_fourcc):
6945 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
6946 consistent with our other format defines (#320324).
6948 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6950 * gst/gstvalue.c: (gst_value_is_fixed):
6951 Revert previous commit. Value lists are by definition
6952 not fixed, as they are a list of possible values.
6954 2005-11-21 Andy Wingo <wingo@pobox.com>
6956 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
6957 during the stable series if we need it. Fixes #319178.
6959 * gst/gstevent.c (gst_event_new_filler): Removed.
6961 * check/gst/gstevent.c: Update comment about filler events.
6963 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6965 * gst/gstvalue.c: (gst_value_is_fixed):
6966 Should handle both value arrays and value lists.
6968 2005-11-21 Andy Wingo <wingo@pobox.com>
6970 patch by: Alessandro Dessina <alessandro nnva org>
6972 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
6973 functions to access arrays. Fixes #321962.
6975 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6977 * docs/gst/gstreamer.types:
6978 gst_collectpads_get_type => gst_collect_pads_get_type.
6980 * gst/base/gstbasetransform.c:
6981 Remove unused SIGNAL_HANDOFF enum.
6983 2005-11-21 Andy Wingo <wingo@pobox.com>
6985 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
6986 the event type (upstream, downstream, serialized). Renamed
6987 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
6988 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
6989 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
6991 * gst/gstevent.c: Update for new CUSTOM event names.
6993 * check/gst/gstevent.c: Update check for new CUSTOM event names.
6996 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
6999 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7001 * docs/gst/gstreamer-sections.txt:
7002 * win32/common/libgstbase.def:
7003 * win32/libgstbase.def:
7004 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
7005 (gst_collect_pads_class_init), (gst_collect_pads_init),
7006 (gst_collect_pads_finalize), (gst_collect_pads_new),
7007 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
7008 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
7009 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
7010 (gst_collect_pads_start), (gst_collect_pads_stop),
7011 (gst_collect_pads_peek), (gst_collect_pads_pop),
7012 (gst_collect_pads_available), (gst_collect_pads_read),
7013 (gst_collect_pads_flush), (gst_collect_pads_event),
7014 (gst_collect_pads_chain):
7015 * gst/base/gstcollectpads.h:
7016 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
7017 unimplemented functions as unimplemented. Add padding to
7018 GstCollectData. (#320766, #320423)
7020 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7023 Improve docs for DURATION message (usage of duration parameter)
7026 2005-11-20 Wim Taymans <wim@fluendo.com>
7028 * check/Makefile.am:
7029 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
7033 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
7034 (gst_segment_set_seek), (gst_segment_set_newsegment),
7035 (gst_segment_to_stream_time), (gst_segment_to_running_time),
7038 Added segment helper structure and methods. Not fully implemented
7040 Added segment check.
7042 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
7044 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
7045 Add a deserialisation test for fractions
7046 * examples/metadata/read-metadata.c: (message_loop),
7047 (make_pipeline), (main):
7048 Fix up metadata reading sample.
7049 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7051 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
7052 Don't try and fixate empty caps
7053 * gst/gst_private.h:
7054 Wrap in G_BEGIN_DECLS/G_END_DECLS
7055 * gst/gstvalue.c: (gst_value_collect_fraction),
7056 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
7057 (gst_value_transform_string_fraction),
7058 (gst_value_compare_fraction):
7059 Add some extra guards to ensure that we don't end up
7060 with an invalid denominator of 0 in a gstfraction and
7061 that fractions always get reduced.
7063 2005-11-20 Wim Taymans <wim@fluendo.com>
7065 * docs/gst/gstreamer-sections.txt:
7076 2005-11-20 Wim Taymans <wim@fluendo.com>
7078 * docs/design/part-TODO.txt:
7080 Make a proper enum of the flag.
7082 2005-11-19 Wim Taymans <wim@fluendo.com>
7084 * docs/design/part-TODO.txt:
7085 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
7086 (gst_format_to_quark), (gst_format_register):
7088 * gst/gstquery.c: (_gst_query_initialize),
7089 (gst_query_type_get_name), (gst_query_type_to_quark),
7090 (gst_query_type_register):
7092 Add type to quark and type to string conversions.
7094 2005-11-19 Andy Wingo <wingo@pobox.com>
7096 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
7099 2005-11-19 Wim Taymans <wim@fluendo.com>
7101 * docs/design/part-TODO.txt:
7102 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
7103 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
7104 (gst_bin_handle_message_func):
7106 Make message handling overridable.
7108 2005-11-19 Andy Wingo <wingo@pobox.com>
7110 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
7113 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
7115 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
7116 is a GstClockTime. Fixes #321710.
7118 * gst/gstclock.h (GstClock): Remove offset property. Add
7119 internal_calibration and external_calibration. Fix padding. Pad
7120 also by GstClockTime so we don't run into problems.
7122 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
7123 (gst_clock_get_rate_offset): Remove.
7124 (gst_clock_set_time_adjust): Remove. Fixes #321712.
7127 * gst/gstutils.c (g_static_rec_cond_wait)
7128 (g_static_rec_cond_timed_wait): Removed, no longer needed.
7130 * gst/gstbin.c: Remove terrible continue_state prototype.
7132 * gst/gstelement.h (gst_element_continue_state): Make public.
7135 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
7136 by continue_state. Fixes #319389.
7138 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
7139 Really fixes #168438. However I don't see anywhere where the
7140 filter function is called... stupid GStreamer...
7142 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
7143 don't have a dispose function, so it won't get called when the
7144 object is unreffed, but oh well!
7146 * gst/gstindex.c (gst_index_set_filter_full): New API function,
7147 allows a destroy function to be set so user_data can be freed.
7149 (gst_index_set_filter): Call gst_index_set_filter_full.
7151 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
7153 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
7154 string should produce an error, given the lack of a way to
7155 represent NULL strings. Fixes #165650.
7158 * gst/gstvalue.c (gst_value_array_append_value)
7159 (gst_value_array_prepend_value, gst_value_array_get_size)
7160 (gst_value_array_get_value): New API, copied from
7161 gst_value_list_*, only operates on arrays.
7162 (gst_value_list_append_value, gst_value_list_prepend_value)
7163 (gst_value_list_concat, gst_value_list_get_size)
7164 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
7166 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
7167 init_list, because it works on both.
7168 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
7169 (gst_value_copy_list_or_array): Renamed from copy_list.
7170 (gst_value_free_list_or_array): Renamed from free_list.
7171 (gst_value_collect_list_or_array): Renamed from collect_list.
7172 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
7173 (gst_value_list_or_array_peek_pointer): Renamed from
7175 (_gst_value_array_value_table, _gst_value_list_value_table):
7176 Update value table functions.
7177 (gst_value_compare_list_or_array): Renamed from compare_list.
7179 * gsttaglist.h: Whoops, foreach function returns void. Also fix
7183 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
7184 GstTagList*. Fixes #143472.
7186 * gst/gststructure.h: Clarify what the foreach/map functions can
7187 or can't do to their arguments.
7189 2005-11-18 Wim Taymans <wim@fluendo.com>
7191 * gst/gstclock.c: (gst_clock_set_calibration),
7192 (gst_clock_get_calibration):
7194 Calibration can be set with internal time equal to current
7197 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
7203 2005-11-18 Andy Wingo <wingo@pobox.com>
7206 * pkgconfig/gstreamer-net.pc.in:
7207 * pkgconfig/gstreamer-net-uninstalled.pc.in:
7208 * pkgconfig/Makefile.am: Add net pkgconfig files.
7210 2005-11-18 Stefan Kost <ensonic@users.sf.net>
7213 * gst/gstghostpad.c:
7219 2005-11-18 Andy Wingo <wingo@pobox.com>
7221 * gst/net/gstnetclientclock.c: Turn off debugging.
7223 * check/net/gstnetclientclock.c (test_functioning): Assert that the
7224 times connverge somewhat. Can't make a real test.
7226 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
7227 integer arithmetic. Return the minimum of the domain, which can be
7228 set as "internal" for gst_clock_set_calibration.
7229 (gst_net_client_clock_observe_times): Call _set_calibration.
7230 (gst_net_client_clock_new): Call _set_calibration instead of
7233 * check/net/gstnetclientclock.c (test_functioning): Use the right
7237 * gst/gstclock.c (gst_clock_get_calibration)
7238 (gst_clock_set_calibration): New functions, obsolete the ones I
7239 added yesterday. Doh. Precision issues mean we have to extrapolate
7240 from a point in the more recent past than 1970.
7241 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
7243 (gst_clock_adjust_unlocked): Use the right calibration data.
7245 2005-11-18 Edward Hervey <edward@fluendo.com>
7247 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
7248 Also reset the ->current_* values in READY->PAUSED
7250 2005-11-18 Andy Wingo <wingo@pobox.com>
7252 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
7253 Whoops, check the right fd. Also add some debugging.
7254 (gst_net_client_clock_observe_times): Adjust for int64 offset.
7255 (do_linear_regression): Add a crapload of debugging. Subtract off
7256 the minimum values from the input series to discard unneeded bits.
7257 Use only int arithmetic. There is still double arithmetic when
7258 calculating the intercept that needs fixing. Return boolean to
7259 indicate success; FALSE would mean the domain or range is too
7260 great. Still needs fixes.
7262 2005-11-18 Wim Taymans <wim@fluendo.com>
7264 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
7265 For the current position in stream time, we need to subtract
7268 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
7269 Release lock before calling the callback function of async
7272 2005-11-18 Andy Wingo <wingo@pobox.com>
7274 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
7275 Port goes all the way to MAXUINT16.
7277 * gst/net/gstnettimeprovider.c: Make the port range the same as
7278 for the kernel: 0 assigns, otherwise ports are less than
7281 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
7284 * check/net/gstnetclientclock.c (test_functioning): Add the start
7287 2005-11-18 Wim Taymans <wim@fluendo.com>
7289 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
7290 (gst_bin_remove_func), (bin_bus_handler):
7292 Removing a clock provider from a bin, triggers a clock lost message
7293 so that a new clock will be selected.
7294 Adding a clock to a bin triggers a clock provider message.
7295 Make sure we reselect a clock when we received a clock lost message.
7296 Keep a reference to the element that provided the clock.
7298 2005-11-18 Andy Wingo <wingo@pobox.com>
7300 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
7301 the clock initially so it produces values around the base time.
7302 (gst_net_client_clock_class_init): Typo fix.
7303 (gst_net_client_clock_thread): Add note on when the socket gets
7306 2005-11-17 Wim Taymans <wim@fluendo.com>
7308 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
7309 Free remote and local time arrays.
7311 2005-11-17 Wim Taymans <wim@fluendo.com>
7313 * gst/net/gstnetclientclock.c: (do_linear_regression),
7314 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
7315 Fix compilation, uninitialized vars and a forgotten continue.
7317 2005-11-17 Andy Wingo <wingo@pobox.com>
7319 * check/Makefile.am (check_PROGRAMS):
7320 * check/net/gstnetclientclock.c: Add a most minimal test for the
7321 net client clock. More to come later.
7324 * gst/net/Makefile.am: Add netclientclock.
7326 * gst/net/gstnetclientclock.h:
7327 * gst/net/gstnetclientclock.c: New files, implement an untested
7328 GstClock that takes its time from a network time provider.
7329 Implements the algorithm in network-clock.scm.
7331 * tests/network-clock.scm (*window-size*): Rename from
7333 * tests/network-clock.scm (network-time):
7334 * tests/network-clock-utils.scm (q-push): Update callers.
7336 2005-11-17 Wim Taymans <wim@fluendo.com>
7338 * gst/gstbin.c: (gst_bin_provide_clock_func),
7339 (gst_bin_sort_iterator_new):
7340 And unref the child too..
7342 2005-11-17 Wim Taymans <wim@fluendo.com>
7344 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
7345 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
7346 Refactor the sort iterator so it can be used while holding the
7348 Make clock selection select a clock closest to the source.
7350 2005-11-17 Michael Smith <msmith@fluendo.com>
7352 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
7353 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
7355 Anonymous structs are a gcc (and some other compilers) extension, so
7356 don't use them. Since this is only for ABI-compatibility, and our
7357 API/ABI freeze is over in a few days, this whole thing will only
7358 last a few days, so don't bother trying to think up a meaningful
7359 name for the struct.
7361 2005-11-17 Andy Wingo <wingo@pobox.com>
7363 * gst/gstclock.h (GstClock): Add rate and offset properties,
7364 preserving ABI stability. Add rate/offset accessors. Will file bug
7365 for the freeze break.
7367 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
7368 and offset, trying to keep precision and avoiding
7370 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
7371 functions. Make gst_clock_set_time_adjust obsolete.
7372 (gst_clock_set_time_adjust): Note that this function is obsolete.
7375 * gst/base/gstbasetransform.h: Make the ABI-stability hack
7376 greppable by using GST_PADDING-1+1.
7378 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
7380 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
7382 * gst/gstmessage.c: (gst_message_parse_clock_lost):
7383 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
7385 * gst/gstpadtemplate.h:
7386 * gst/gstpluginfeature.h:
7387 Don't use c++ style comments in headers (#321638).
7389 2005-11-16 Andy Wingo <wingo@pobox.com>
7391 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
7394 * check/net/gstnettimeprovider.c: Check to see that the time
7395 provider actually provides times. Works, yo!
7397 2005-11-16 Wim Taymans <wim@fluendo.com>
7399 * check/Makefile.am:
7402 * check/elements/fakesrc.c: (GST_START_TEST):
7403 Set element to NULL before disposing it.
7405 2005-11-16 Andy Wingo <wingo@pobox.com>
7407 * gst/net/Makefile.am:
7409 * gst/net/gstnettimeprovider.c:
7410 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
7411 provider, include it from gstnet.h, and add it to the build.
7413 * gst/net/gstnettimepacket.h:
7414 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
7415 sending and receiving.
7417 2005-11-16 Wim Taymans <wim@fluendo.com>
7419 * check/Makefile.am:
7420 Enable valgrind check.
7422 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
7423 (gst_fake_src_alloc_buffer):
7426 2005-11-16 Wim Taymans <wim@fluendo.com>
7428 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
7429 Call parent finalize too.
7431 2005-11-16 Wim Taymans <wim@fluendo.com>
7433 * check/Makefile.am:
7434 Enable valgrind check that should work fine now.
7436 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7437 * gst/gstqueue.c: (gst_queue_init):
7438 Fix memleaks in pad allocation.
7440 2005-11-16 Andy Wingo <wingo@pobox.com>
7442 * gst/net/Makefile.am:
7443 * gst/net/gstnet.h: New part of core to hold network elements and
7444 objects. Put in core because it exposes API that applications want
7445 to use. The library is named libgstnet-tempname right now because
7446 of the existing libgstnet in gst-plugins-base. Solution is
7447 probably to rename the one in plugins-base; will file a bug for
7450 * gst/net/gstnettimeprovider.c:
7451 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
7452 get_time call over the network.
7455 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
7457 * check/Makefile.am:
7458 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
7459 get additions shortly.
7461 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7463 * gst/gstpad.c: (gst_pad_new_from_static_template):
7465 add gst_pad_new_from_static_template functions
7466 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
7467 (gst_check_setup_sink_pad):
7468 * gst/elements/gsttee.c: (gst_tee_init):
7471 2005-11-16 Wim Taymans <wim@fluendo.com>
7473 * gst/gstpad.c: (gst_pad_pause_task):
7474 Removed warning, it's not really an error either.
7476 2005-11-16 Wim Taymans <wim@fluendo.com>
7478 * gst/base/gstbasetransform.c:
7479 (gst_base_transform_prepare_output_buf),
7480 (gst_base_transform_event):
7481 Check if the caps are NULL, this can happen if the element
7482 is shutting down and the pad caps are set to NULL.
7484 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7486 * gst/elements/gsttee.c: (gst_tee_init):
7487 fix pad template leak in tee
7489 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7491 * gst/glib-compat.c: (g_value_dup_gst_object):
7492 * gst/glib-compat.h:
7493 * gst/gstpad.c: (gst_pad_set_property):
7494 use gst_object_ref when setting the pad template; this will
7495 trigger the pad template leaks on GLib 2.6 and the slaves
7497 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7499 * gst/glib-compat.c: (gst_flags_get_first_value):
7500 * gst/glib-compat.h:
7501 * gst/gstregistryxml.c:
7502 remove functions copied from GLib 2.6
7504 2005-11-16 Michael Smith <msmith@fluendo.com>
7507 Don't link against VALGRIND_LIBS. That was always the wrong thing to
7508 do, but only breaks with newer valgrind versions. We're not a
7509 valgrind tool, we have no link-time dependencies on libcoregrind.
7511 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7513 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
7518 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7520 * gst/base/gstbasesrc.c: (gst_base_src_init):
7521 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7522 * gst/gstqueue.c: (gst_queue_init):
7523 * gst/gstregistryxml.c: (load_feature):
7524 Revert all these unrefs, they don't even pass make check !
7526 2005-11-15 Johan Dahlin <johan@gnome.org>
7528 * gst/base/gstbasesrc.c: (gst_base_src_init):
7529 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7530 * gst/gstqueue.c: (gst_queue_init):
7531 Free pad templates, fixes a couple of leaks.
7533 2005-11-15 Daniel Fischer <dan at f3c dot com>
7535 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
7537 * gst/gstpad.c: (gst_pad_get_property):
7538 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
7539 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
7542 2005-11-15 Wim Taymans <wim@fluendo.com>
7547 2005-11-15 Andy Wingo <wingo@pobox.com>
7549 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
7551 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
7552 using GST_CLOCK_TIME_NONE to disable base time management.
7553 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
7554 time if it was NONE before.
7555 (gst_pipeline_change_state): Only munge the base time if
7556 stream_time != GST_CLOCK_TIME_NONE.
7558 * check/gst/gstpipeline.c (test_base_time): Punt around the
7559 problem of the probe not being called, because that's not the
7560 issue I'm looking at. Add a check that setting stream_time to NONE
7561 disables base time management.
7563 2005-11-15 Wim Taymans <wim@fluendo.com>
7565 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
7566 segment_stop == -1 at startup.
7568 * gst/base/gstbasetransform.c: (gst_base_transform_event),
7569 (gst_base_transform_change_state):
7570 Init segment values at start.
7572 2005-11-15 Wim Taymans <wim@fluendo.com>
7574 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7575 0 segment values are 0 in any format.
7577 * gst/base/gstbasetransform.c: (gst_base_transform_event):
7578 * gst/base/gstbasetransform.h:
7579 Parse newsegment correctly in basetransform
7581 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
7582 Sync to clock using updated segment values.
7584 2005-11-15 Andy Wingo <wingo@pobox.com>
7586 * check/gst/gstpipeline.c (test_base_time): Add check that the
7587 base time and stream time are reset correctly.
7589 2005-11-15 Wim Taymans <wim@fluendo.com>
7591 * docs/design/part-TODO.txt:
7592 Some more TODO items.
7594 2005-11-15 Andy Wingo <wingo@pobox.com>
7596 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
7597 error if the user selected "no clock" as the clocking method.
7599 * check/gst/gstpipeline.c (test_base_time): New test for buffer
7600 timestamps with live capture.
7602 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
7603 is 0 but we are a live source, timestamp the buffers using the
7606 2005-11-14 Stefan Kost <ensonic@users.sf.net>
7608 * docs/gst/gstreamer-sections.txt:
7610 * gst/gstghostpad.c:
7615 2005-11-14 Wim Taymans <wim@fluendo.com>
7618 add suppressions from Wim's Debian machine
7620 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
7623 add suppressions from Andy's AMD64 Ubuntu machine
7625 2005-11-14 Andy Wingo <wingo@pobox.com>
7627 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
7628 STATE_LOCK not necessary. Fixes #311489.
7630 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
7633 * gst/gstindex.c (gst_index_add_object): Note in the docs that
7634 this function is not implemented.
7636 2005-11-14 Julien MOUTTE <julien@moutte.net>
7638 * gst/base/gstbasetransform.c:
7639 (gst_base_transform_prepare_output_buf):
7640 Ref the source pad caps while we need them.
7643 2005-11-11 Wim Taymans <wim@fluendo.com>
7645 * docs/gst/gstreamer-sections.txt:
7646 Added some docs for GstCollectData.
7648 * gst/base/gstadapter.c:
7649 Some small code example fix.
7651 * gst/base/gstcollectpads.c:
7652 * gst/base/gstcollectpads.h:
7655 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
7657 * configure.ac: back to HEAD
7659 === release 0.9.5 ===
7661 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
7664 releasing 0.9.5, "Bike Lunch Day"
7666 2005-11-11 Wim Taymans <wim@fluendo.com>
7668 * gst/gstbuffer.c: (_gst_buffer_copy):
7671 * gst/gstcaps.c: (gst_caps_is_equal):
7673 Make _is_equal fast in the trivial cases.
7675 * gst/gstminiobject.c:
7676 * gst/gstminiobject.h:
7677 More docs. Spifify .h file.
7682 2005-11-11 Wim Taymans <wim@fluendo.com>
7684 * gst/base/gstbasetransform.c:
7685 (gst_base_transform_prepare_output_buf),
7686 (gst_base_transform_handle_buffer):
7688 If we're processing a buffer and need to allocate an output
7689 buffer, we cannot accept a format change. If we did get a
7690 format change, we have to alloc a buffer ourselves of the
7693 2005-11-11 Wim Taymans <wim@fluendo.com>
7695 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
7696 While checking the flag for reentrancy in the gstcaps function
7697 is nice to detect recursive invocations, it also makes it
7698 impossible to call getcaps from multiple threads, which must be
7699 possible. So, checking for recursive calls has to go.
7701 2005-11-11 Michael Smith <msmith@fluendo.com>
7703 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7704 Don't sync on buffers that fall partially outside our current
7705 segment. Prevents an assertion failure/abort playing some files.
7707 2005-11-10 Andy Wingo <wingo@pobox.com>
7709 * check/gst/gstbin.c (test_message_state_changed_children): Style
7712 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
7713 gst_bus_poll with the signal watch. Ensures that poll and a signal
7714 watch see the same messages.
7716 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
7717 a poll and a watch at the same time get the same messages.
7719 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
7721 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
7722 * gst/gstcaps.c: (gst_caps_intersect):
7723 Don't call gst_caps_do_simplify - it doesn't respect order of caps
7724 and it's not needed.
7726 2005-11-10 Wim Taymans <wim@fluendo.com>
7728 * docs/design/part-TODO.txt:
7731 2005-11-10 Wim Taymans <wim@fluendo.com>
7733 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7734 * gst/base/gstbasesrc.c: (gst_base_src_wait),
7735 (gst_base_src_do_sync), (gst_base_src_get_range):
7736 Implement clock sync in base class.
7738 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
7740 patch by: Tim-Philipp Müller <tim at centricular dot net>
7742 * gst/gststructure.c: (gst_structure_parse_field),
7743 (gst_structure_from_string):
7744 Forward-port a 0.8 patch to handle escaped spaces in structure string,
7745 so that gst_parse_launch() can deal with spaces in filtered link
7746 caps (fixes #164479)
7747 * check/gst/capslist.h:
7748 * check/gst/gststructure.c: (GST_START_TEST):
7749 add unit tests for this change
7751 2005-11-10 Wim Taymans <wim@fluendo.com>
7753 * docs/gst/gstreamer-sections.txt:
7756 Fix docs, move some STATE macros to private.
7758 2005-11-10 Wim Taymans <wim@fluendo.com>
7760 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
7761 Added check for bug #317341
7765 Some more spiffifying.
7767 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
7768 Call peer linkfunction if we are a source pad. Totally fixes
7772 Update docs, source pads should call the peer linkfunction
7773 so they can atomically perform the pad link.
7775 2005-11-09 Wim Taymans <wim@fluendo.com>
7779 Uber-spiffy-spiffify some more.
7781 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
7783 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
7784 * gst/elements/gstfilesink.c: (gst_file_sink_init):
7785 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7786 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
7787 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
7788 * gst/gstpad.c: (gst_pad_init):
7789 Use GST_DEBUG_FUNCPTR() more extensively.
7791 2005-11-09 Wim Taymans <wim@fluendo.com>
7793 * gst/gstobject.c: (gst_object_class_init):
7795 Documentation fixes.
7797 2005-11-09 Edward Hervey <edward@fluendo.com>
7799 * gst/gsttypefindfactory.c:
7802 2005-11-09 Edward Hervey <edward@fluendo.com>
7804 * gst/base/gsttypefindhelper.c:
7805 * gst/gsttypefind.c:
7806 * gst/gsttypefind.h:
7809 2005-11-09 Wim Taymans <wim@fluendo.com>
7811 * gst/gstiterator.c:
7818 2005-11-09 Wim Taymans <wim@fluendo.com>
7824 2005-11-09 Wim Taymans <wim@fluendo.com>
7826 * docs/gst/gstreamer-sections.txt:
7827 Moved the message async delivery private lock and cond
7828 to the private section.
7834 2005-11-09 Edward Hervey <edward@fluendo.com>
7836 * docs/gst/gstreamer-sections.txt:
7839 Document GstURIHandler
7841 2005-11-09 Wim Taymans <wim@fluendo.com>
7843 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
7844 (gst_iterator_find_custom):
7845 * gst/gstiterator.h:
7848 2005-11-09 Wim Taymans <wim@fluendo.com>
7851 Document another field.
7853 * gst/gststructure.c:
7854 * gst/gststructure.h:
7857 2005-11-09 Wim Taymans <wim@fluendo.com>
7862 2005-11-09 Wim Taymans <wim@fluendo.com>
7864 * docs/gst/gstreamer-sections.txt:
7865 Added some new macros.
7872 2005-11-09 Wim Taymans <wim@fluendo.com>
7874 * docs/design/part-TODO.txt:
7875 Some more items for the TODO
7881 2005-11-09 Andy Wingo <wingo@pobox.com>
7883 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
7884 to work on something else now tho...
7886 * gst/base/gstadapter.c: More adapter docs.
7888 * gst/elements/gstfilesink.c (gst_file_sink_start)
7889 (gst_file_sink_stop): New functions, replace the state change
7891 (gst_file_sink_class_init): Hook up the start and stop functions.
7892 (gst_file_sink_base_init): Don't set the state change handler any
7893 more. It was a bit ugly too, being set from here...
7894 (gst_file_sink_get_property, gst_file_sink_set_property):
7896 (gst_file_sink_set_location): More robust check that doesn't call
7899 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
7901 * gst/base/gstbasetransform.c: (gst_base_transform_event):
7902 Hold STREAM_LOCK while pushing newsegment or tag events as well.
7904 2005-11-08 Wim Taymans <wim@fluendo.com>
7906 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
7907 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
7908 (gst_base_sink_chain), (gst_base_sink_change_state):
7909 * gst/base/gstbasesink.h:
7910 * gst/base/gstbasesrc.h:
7913 Avoid excessive typechecking in macros.
7915 * gst/gstminiobject.c: (gst_mini_object_get_type),
7916 (gst_mini_object_init), (gst_mini_object_new),
7917 (gst_mini_object_free):
7918 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
7919 (gst_object_finalize):
7920 Remove cruft code, optimize alloc_trace.
7922 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
7924 * docs/faq/gst-uninstalled:
7925 fix up PS1 for systems that try to reset it
7927 2005-11-07 Wim Taymans <wim@fluendo.com>
7929 * gst/base/gstbasesrc.c: (gst_base_src_init),
7930 (gst_base_src_get_range):
7931 Set the segment_end to -1 initially. Fixed typefind.
7933 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
7935 * gst/base/gstadapter.c:
7936 Debug category should be 'adapter', not 'GstAdapter'.
7938 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
7939 (gst_collectpads_class_init), (gst_collectpads_init),
7940 (gst_collectpads_peek), (gst_collectpads_pop),
7941 (gst_collectpads_event), (gst_collectpads_chain):
7942 Add debug category and some debugging output. Use boilerplate
7943 macros. Remove some extraneous words from docs.
7945 2005-11-05 Andy Wingo <wingo@pobox.com>
7947 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
7950 2005-11-04 Stefan Kost <ensonic@users.sf.net>
7952 * docs/gst/gstreamer-sections.txt:
7955 * gst/gstminiobject.h:
7960 2005-11-04 Wim Taymans <wim@fluendo.com>
7962 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
7963 Small update to stop at the configured segment_end
7966 2005-11-04 Stefan Kost <ensonic@users.sf.net>
7968 * gst/gstregistry.c:
7969 * gst/gstregistry.h:
7972 2005-11-04 Edward Hervey <edward@fluendo.com>
7974 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
7975 Check if we are doing a segment seek and have arrived at the
7976 end of that segment.
7978 2005-11-04 Wim Taymans <wim@fluendo.com>
7980 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
7981 Don't leak a mutex unlock in case of an error.
7986 2005-11-04 Wim Taymans <wim@fluendo.com>
7988 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
7990 Get the context to wake up only once.
7992 2005-11-03 Wim Taymans <wim@fluendo.com>
7994 * check/states/sinks.c: (GST_START_TEST):
7995 Uncomment fixed check.
7997 * docs/design/part-TODO.txt:
8000 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8001 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
8002 (gst_base_sink_get_position):
8003 If we are going to PLAYING, post the right pending state
8004 when we post the intermediate paused message.
8006 * gst/gstelement.c: (gst_element_continue_state),
8007 (gst_element_set_state_func), (gst_element_change_state):
8008 Don't post state changes that were between the same state
8011 2005-11-03 Stefan Kost <ensonic@users.sf.net>
8013 * docs/gst/gstreamer-sections.txt:
8016 * gst/gstminiobject.h:
8019 more docs and doc style fixes
8021 2005-11-03 Stefan Kost <ensonic@users.sf.net>
8023 * docs/gst/gstreamer-sections.txt:
8025 * gst/gstminiobject.c:
8028 2005-11-03 Andy Wingo <wingo@pobox.com>
8030 * check/states/sinks.c (test_livesrc_sink): Add checks that the
8031 state-changed messages actually have the right order and the right
8034 2005-11-03 Wim Taymans <wim@fluendo.com>
8036 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
8037 Added some more checks. Specifically the case where NO_PREROLL
8038 elements are in the pipeline.
8040 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8041 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
8042 (gst_base_sink_get_position):
8043 Post READY->PAUSED state change messages too.
8044 Fix bug where VOID was posted as pending state...
8046 * gst/gstbin.c: (gst_bin_recalc_state):
8047 use _element_continue_state() to continue the state change.
8049 * gst/gstelement.c: (gst_element_continue_state),
8050 (gst_element_commit_state), (gst_element_set_state_func),
8051 (gst_element_change_state), (gst_element_change_state_func):
8052 Lots of state change cleanups, assign the STATE_RETURN in
8053 a new continue_state() function that also propagates the
8054 last return value from a state change to the app.
8055 Update some debug statements with proper category.
8057 2005-11-03 Wim Taymans <wim@fluendo.com>
8059 * docs/design/part-events.txt:
8060 * docs/design/part-gstpipeline.txt:
8061 * docs/design/part-messages.txt:
8062 * docs/design/part-overview.txt:
8063 * docs/design/part-seeking.txt:
8064 * docs/design/part-states.txt:
8065 * docs/design/part-trickmodes.txt:
8066 * docs/manual/advanced-position.xml:
8070 People think !! is ugly, this looks better.
8072 * gst/gstpad.c: (gst_pad_set_blocked_async):
8073 Remove !! since it's fixed elsewhere now.
8075 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8077 * gst/gstminiobject.h:
8079 Add !! to _FLAG_IS_SET macros to make the result boolean.
8081 2005-11-03 Edward Hervey <edward@fluendo.com>
8083 * gst/gstpad.c: (gst_pad_set_blocked_async):
8084 comparing a flag and a gboolean rarely returns coherent results...
8085 Added two characters (!!) to make that work correctly.
8087 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8089 * gst/gstbus.c: (gst_bus_class_init):
8092 * gst/gstqueue.c: (gst_queue_loop):
8093 Don't assume a miniobject that isn't a buffer is an
8094 event (it could be that there is a refcounting
8095 problem somewhere and the pointer is stale and
8096 refers to an already destroyed miniobject).
8098 2005-11-03 Julien MOUTTE <julien@moutte.net>
8100 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
8102 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8104 * docs/manual/advanced-position.xml:
8105 Update seek example and explanations to current 0.9 API.
8107 * gst/elements/gsttypefindelement.c:
8108 (gst_type_find_element_activate):
8109 Remove FIXME comment now that the found caps
8112 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
8114 * gst/gstregistryxml.c: (load_feature):
8115 Add another GST_STR_NULL instance
8117 2005-11-02 Edward Hervey <edward@fluendo.com>
8119 * gst/gstpad.c: (handle_pad_block):
8120 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
8122 2005-11-02 Wim Taymans <wim@fluendo.com>
8127 * gst/gstelement.c: (gst_element_commit_state):
8128 Remove unused value.
8130 * gst/gstiterator.c:
8131 Mention that the returned element is reffed in the docs.
8133 2005-11-02 Wim Taymans <wim@fluendo.com>
8135 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
8136 (gst_pad_push), (gst_pad_push_event):
8137 Unlock blocked pads when they are flushed.
8139 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8142 * docs/gst/gstreamer-sections.txt:
8145 * gst/gstregistry.c: (gst_registry_scan_path_level):
8146 fix for a nasty little missed situation where an installed plug-in
8147 which was in the cache did not get overridden by an uninstalled one
8148 which was earlier in the plugin path because the newly created plugin
8149 for the uninstalled one (not in the registry) didn't get its
8150 ->registered set to TRUE
8152 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
8154 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
8155 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
8156 (gst_collectpads_is_active), (gst_collectpads_collect),
8157 (gst_collectpads_collect_range), (gst_collectpads_start),
8158 (gst_collectpads_stop), (gst_collectpads_peek),
8159 (gst_collectpads_pop), (gst_collectpads_available),
8160 (gst_collectpads_read), (gst_collectpads_flush):
8161 Guard public API with assertions.
8164 Fix docs for gst_pad_set_link_function().
8166 2005-11-02 Johan Dahlin <johan@gnome.org>
8168 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
8169 Unref found_caps after we used it.
8171 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
8173 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
8174 Don't try to ref NULL.
8176 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8178 * win32/common/config.h.in:
8179 provide a GST_FUNCTION that just gives a string for now
8181 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8183 * win32/common/gstenumtypes.c: (register_gst_object_flags),
8184 (gst_object_flags_get_type), (register_gst_bin_flags),
8185 (gst_bin_flags_get_type), (register_gst_buffer_flag),
8186 (gst_buffer_flag_get_type), (register_gst_bus_flags),
8187 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
8188 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
8189 (gst_clock_return_get_type), (register_gst_clock_entry_type),
8190 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
8191 (gst_clock_flags_get_type), (register_gst_state),
8192 (gst_state_get_type), (register_gst_state_change_return),
8193 (gst_state_change_return_get_type), (register_gst_state_change),
8194 (gst_state_change_get_type), (register_gst_element_flags),
8195 (gst_element_flags_get_type), (register_gst_core_error),
8196 (gst_core_error_get_type), (register_gst_library_error),
8197 (gst_library_error_get_type), (register_gst_resource_error),
8198 (gst_resource_error_get_type), (register_gst_stream_error),
8199 (gst_stream_error_get_type), (register_gst_event_type),
8200 (gst_event_type_get_type), (register_gst_seek_type),
8201 (gst_seek_type_get_type), (register_gst_seek_flags),
8202 (gst_seek_flags_get_type), (register_gst_format),
8203 (gst_format_get_type), (register_gst_index_certainty),
8204 (gst_index_certainty_get_type), (register_gst_index_entry_type),
8205 (gst_index_entry_type_get_type),
8206 (register_gst_index_lookup_method),
8207 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
8208 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
8209 (gst_index_resolver_method_get_type), (register_gst_index_flags),
8210 (gst_index_flags_get_type), (register_gst_debug_level),
8211 (gst_debug_level_get_type), (register_gst_debug_color_flags),
8212 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
8213 (gst_iterator_result_get_type), (register_gst_iterator_item),
8214 (gst_iterator_item_get_type), (register_gst_message_type),
8215 (gst_message_type_get_type), (register_gst_mini_object_flags),
8216 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
8217 (gst_pad_link_return_get_type), (register_gst_flow_return),
8218 (gst_flow_return_get_type), (register_gst_activate_mode),
8219 (gst_activate_mode_get_type), (register_gst_pad_direction),
8220 (gst_pad_direction_get_type), (register_gst_pad_flags),
8221 (gst_pad_flags_get_type), (register_gst_pad_presence),
8222 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
8223 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
8224 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
8225 (gst_plugin_error_get_type), (register_gst_plugin_flags),
8226 (gst_plugin_flags_get_type), (register_gst_rank),
8227 (gst_rank_get_type), (register_gst_query_type),
8228 (gst_query_type_get_type), (register_gst_tag_merge_mode),
8229 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
8230 (gst_tag_flag_get_type), (register_gst_task_state),
8231 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
8232 (gst_alloc_trace_flags_get_type),
8233 (register_gst_type_find_probability),
8234 (gst_type_find_probability_get_type), (register_gst_uri_type),
8235 (gst_uri_type_get_type), (register_gst_parse_error),
8236 (gst_parse_error_get_type):
8237 * win32/common/gstversion.h:
8240 2005-11-01 Luca Ognibene <luogni@tin.it>
8243 fix docs. popt is dead, long live GOption.
8245 2005-10-31 Wim Taymans <wim@fluendo.com>
8250 2005-10-31 Andy Wingo <wingo@pobox.com>
8254 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
8256 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
8257 need to serialize property notifications on GLib 2.8. GLib 2.6 has
8258 the possibility of deadlocks here if code calling notify() or
8259 set() has a lock that can be taken in another notify handler (ABBA
8260 with class lock and e.g. python GIL state lock).
8262 2005-10-28 Julien MOUTTE <julien@moutte.net>
8264 * gst/gstbus.c: Doc updates.
8266 2005-10-28 Wim Taymans <wim@fluendo.com>
8268 * docs/design/part-TODO.txt:
8269 * gst/gstiterator.c:
8270 * gst/gstsystemclock.c:
8271 * gst/gstsystemclock.h:
8274 2005-10-28 Edward Hervey <edward@fluendo.com>
8276 * docs/gst/gstreamer-docs.sgml:
8277 * docs/gst/gstreamer-sections.txt:
8278 the GstURIType documentation page is private, it only defines GstURIType
8279 which should be defined in the GstURIHandler page
8281 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
8283 * gst/gstbin.c: (gst_bin_class_init):
8286 Documentation updates.
8288 2005-10-28 Wim Taymans <wim@fluendo.com>
8290 * docs/gst/gstreamer-sections.txt:
8293 Documented the clocks.
8295 2005-10-28 Stefan Kost <ensonic@users.sf.net>
8297 * docs/gst/gstreamer-sections.txt:
8298 move some macros to private sections
8299 * gst/gstminiobject.c:
8300 * gst/gstminiobject.h:
8301 add descriptions provided by ds and some more
8303 mark macro as to be removed
8305 2005-10-28 Wim Taymans <wim@fluendo.com>
8307 * docs/design/part-TODO.txt:
8308 Add an item to TODO.
8310 * gst/gstiterator.c: (gst_iterator_fold),
8311 (gst_iterator_find_custom):
8312 * gst/gstiterator.h:
8315 2005-10-28 Wim Taymans <wim@fluendo.com>
8317 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
8318 (gst_base_transform_init):
8321 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
8322 An EOS event marks the queue as completely filled.
8324 2005-10-27 Wim Taymans <wim@fluendo.com>
8326 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8327 (gst_base_sink_do_sync), (gst_base_sink_get_position):
8328 Some more debugging.
8330 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
8331 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
8332 (gst_base_transform_event), (gst_base_transform_getrange),
8333 (gst_base_transform_chain):
8334 * gst/base/gstbasetransform.h:
8336 Protect transform and concurrent buffer alloc with a new lock.
8337 Try not to break ABI/API.
8339 2005-10-27 Wim Taymans <wim@fluendo.com>
8341 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
8342 (gst_base_src_init), (gst_base_src_query),
8343 (gst_base_src_default_newsegment),
8344 (gst_base_src_configure_segment), (gst_base_src_do_seek),
8345 (gst_base_src_send_event), (gst_base_src_event_handler),
8346 (gst_base_src_pad_get_range), (gst_base_src_loop),
8347 (gst_base_src_unlock), (gst_base_src_default_negotiate),
8348 (gst_base_src_start), (gst_base_src_deactivate),
8349 (gst_base_src_activate_push), (gst_base_src_change_state):
8350 Move some stuff around and cleanup things.
8352 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
8354 * gst/base/gstbasesrc.c: (gst_base_src_query):
8355 Add missing break statements.
8357 2005-10-27 Wim Taymans <wim@fluendo.com>
8359 * check/gst/gstbin.c: (GST_START_TEST):
8360 An extra refcount is taken in basesrc.
8362 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
8363 (gst_base_src_get_range), (gst_base_src_pad_get_range),
8364 (gst_base_src_loop):
8365 Small cleanups, check for flushing after being unlocked from the
8366 LIVE_LOCK. take refcounts correctly (not yet everywhere).
8367 Don't send out EOS when going to READY.
8369 2005-10-27 Wim Taymans <wim@fluendo.com>
8371 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8372 (gst_base_sink_get_position):
8375 * gst/gstbin.c: (message_check), (bin_replace_message),
8376 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8377 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8378 (bin_query_duration_init), (bin_query_duration_fold),
8379 (bin_query_duration_done), (bin_query_generic_fold),
8381 * tools/gst-launch.c: (main):
8384 2005-10-26 Stefan Kost <ensonic@users.sf.net>
8386 * examples/controller/audio-example.c: (main):
8387 * examples/queue/queue.c: (event_loop):
8388 * gst/base/gstbasetransform.h:
8389 * gst/gstelement.c: (gst_element_send_event):
8391 * gst/gstpad.c: (gst_pad_send_event):
8394 changing log priority in error situations
8396 2005-10-25 Wim Taymans <wim@fluendo.com>
8398 * gst/gstbin.c: (message_check), (bin_replace_message),
8399 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8400 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8401 (bin_query_duration_init), (bin_query_duration_fold),
8402 (bin_query_duration_done), (bin_query_generic_fold),
8404 Some doc and debug updates.
8405 Cache previously requested query DURATION for speed. invalidate
8406 cached duration if element posts a DURATION message.
8408 2005-10-25 Wim Taymans <wim@fluendo.com>
8410 * docs/design/part-TODO.txt:
8413 * gst/gstbin.c: (message_check), (bin_replace_message),
8414 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8415 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8416 (bin_query_duration_init), (bin_query_duration_fold),
8417 (bin_query_duration_done), (bin_query_generic_fold),
8419 Handle SEGMENT_START/DONE messages correctly.
8420 More evolved query algorithm that handles duration queries
8423 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
8424 (gst_element_get_state_func), (gst_element_abort_state),
8425 (gst_element_commit_state), (gst_element_lost_state):
8426 Some more debugging.
8431 2005-10-25 Wim Taymans <wim@fluendo.com>
8433 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
8434 Don't use invalid stream_time.
8436 * gst/gstevent.c: (gst_event_new_newsegment):
8437 stream_time in newsegment cannot be undefined.
8439 2005-10-24 Wim Taymans <wim@fluendo.com>
8444 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
8446 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
8448 2005-10-24 Stefan Kost <ensonic@users.sf.net>
8450 * docs/libs/tmpl/gstdparam.sgml:
8451 * docs/libs/tmpl/gstdplinint.sgml:
8452 * docs/libs/tmpl/gstdpman.sgml:
8453 * docs/libs/tmpl/gstdpsmooth.sgml:
8454 * docs/libs/tmpl/gstunitconvert.sgml:
8457 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
8462 === release 0.9.4 ===
8464 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
8467 releasing 0.9.4, "Tyrannosaurus Rex"
8469 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
8471 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
8472 (gst_file_sink_get_current_offset):
8473 Use fseeko() and ftello() if available. When falling back on
8474 lseek() to get the current offset, fflush() first to make sure
8475 everything is up-to-date and we get the right offset.
8477 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
8479 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8480 * gst/base/gstbasesrc.c: (gst_base_src_loop):
8481 * gst/gsterror.c: (_gst_stream_errors_init):
8483 * gst/gstqueue.c: (gst_queue_loop):
8485 remove prematurely added error category and clean up the instances
8487 2005-10-21 Wim Taymans <wim@fluendo.com>
8489 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8490 (gst_base_sink_get_position), (gst_base_sink_query),
8491 (gst_base_sink_change_state):
8492 Simply set the right flag when going to playing, that's all
8493 we need to do instead of calling a function inside the object
8494 lock (that could take the lock as well and deadlock)
8496 2005-10-21 Wim Taymans <wim@fluendo.com>
8498 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
8499 (gst_base_src_loop):
8500 Don't warn, the peer element knows what to do best when
8501 the seek failed, it might try something else.
8503 2005-10-21 Wim Taymans <wim@fluendo.com>
8505 * gst/base/gstbasesrc.c: (gst_base_src_init),
8506 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
8509 2005-10-21 Wim Taymans <wim@fluendo.com>
8511 * docs/design/part-segments.txt:
8514 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
8515 Correctly set caps, even on the subbufer.
8517 2005-10-21 Wim Taymans <wim@fluendo.com>
8519 * docs/gst/gstreamer-docs.sgml:
8520 * docs/gst/gstreamer-sections.txt:
8527 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
8531 And 2% more doc coverage.
8533 2005-10-21 Andy Wingo <wingo@pobox.com>
8535 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
8538 2005-10-20 Wim Taymans <wim@fluendo.com>
8540 * gst/gsterror.c: (gst_error_get_message):
8543 * gst/gststructure.c:
8548 2005-10-20 Wim Taymans <wim@fluendo.com>
8553 Another 1% more coverage.
8555 2005-10-20 Wim Taymans <wim@fluendo.com>
8557 * docs/gst/gstreamer-sections.txt:
8558 * gst/gstelement.c: (gst_element_get_state_func),
8559 (gst_element_abort_state), (gst_element_commit_state),
8560 (gst_element_lost_state):
8562 * gst/gstquery.c: (gst_query_set_position),
8563 (gst_query_parse_position), (gst_query_set_duration),
8564 (gst_query_parse_duration), (gst_query_new_convert):
8566 Yay! 1% more docs coverage.
8568 2005-10-20 Wim Taymans <wim@fluendo.com>
8571 * gst/gstquery.c: (gst_query_set_position),
8572 (gst_query_parse_position), (gst_query_set_duration),
8573 (gst_query_parse_duration), (gst_query_new_convert):
8575 * gst/gstutils.c: (gst_element_query_convert):
8577 Docs and consistency fixes.
8579 2005-10-20 Wim Taymans <wim@fluendo.com>
8585 2005-10-20 Wim Taymans <wim@fluendo.com>
8587 * gst/gstbin.c: (message_check), (bin_replace_message),
8588 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8589 (update_degree), (gst_bin_sort_iterator_next),
8590 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
8591 Reworked the message handling a bit, cache the messages instead of
8592 only the senders. alows us to do more in the future.
8594 2005-10-20 Wim Taymans <wim@fluendo.com>
8596 * docs/design/part-TODO.txt:
8599 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
8600 (gst_base_sink_query):
8601 Don't use clock time to report position when in EOS.
8603 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
8605 * tools/gst-inspect.c: (print_interfaces),
8606 (print_element_properties_info), (print_element_info):
8607 Fix interface output with gst-inspect -a; don't print
8608 newlines after double/float properties.
8610 2005-10-20 Wim Taymans <wim@fluendo.com>
8612 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
8613 (gst_base_sink_query):
8614 Speed up current position calculation.
8616 * gst/base/gstbasesrc.c: (gst_base_src_query),
8617 (gst_base_src_default_newsegment):
8618 Correctly set stream position in newsegment.
8620 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
8621 (update_degree), (gst_bin_sort_iterator_next),
8622 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
8623 * gst/gstmessage.c: (gst_message_new_custom):
8624 Clean up debugging info
8626 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
8627 (gst_queue_loop), (gst_queue_handle_src_query):
8630 2005-10-19 Wim Taymans <wim@fluendo.com>
8632 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8633 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
8634 Fix query handling again.
8636 2005-10-19 Wim Taymans <wim@fluendo.com>
8638 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8639 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
8640 * gst/base/gstbasesrc.c: (gst_base_src_query):
8641 * gst/elements/gstfilesink.c: (gst_file_sink_query):
8642 * gst/elements/gsttypefindelement.c:
8643 (gst_type_find_handle_src_query), (find_element_get_length),
8644 (gst_type_find_element_activate):
8647 * gst/gstquery.c: (gst_query_new_position),
8648 (gst_query_set_position), (gst_query_parse_position),
8649 (gst_query_new_duration), (gst_query_set_duration),
8650 (gst_query_parse_duration), (gst_query_set_segment),
8651 (gst_query_parse_segment):
8653 Bundling query position/duration is not a good idea since duration
8654 does not change much and we don't want to recalculate it for every
8655 position query, so they are separated again..
8656 Base value in segment query is not needed.
8658 * gst/gstqueue.c: (gst_queue_handle_src_query):
8659 * gst/gstutils.c: (gst_element_query_position),
8660 (gst_element_query_duration), (gst_pad_query_position),
8661 (gst_pad_query_duration):
8663 Updates for query API change.
8664 Added some docs here and there.
8666 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
8668 * check/gst/gstbin.c: (GST_START_TEST):
8669 * check/gst/gstghostpad.c: (GST_START_TEST):
8670 * check/pipelines/cleanup.c: (GST_START_TEST):
8671 wait on thread to die so we can check refcount correctly
8673 2005-10-18 Wim Taymans <wim@fluendo.com>
8675 * check/pipelines/stress.c: (GST_START_TEST):
8676 Make check a little more time consuming.
8678 2005-10-18 Wim Taymans <wim@fluendo.com>
8680 * check/Makefile.am:
8681 * check/pipelines/stress.c: (GST_START_TEST),
8682 (simple_launch_lines_suite), (main):
8683 Small state change torture test.
8685 * docs/design/part-states.txt:
8686 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8687 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
8688 (gst_base_sink_change_state):
8689 Never take state lock from streaming thread, clean up ugly
8690 hacks. Unfortunatly core does not yet support nice ways to
8693 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
8695 Start state recalc if a STATE_DIRTY message is posted, but only
8696 on the toplevel bin.
8698 * gst/gstelement.c: (gst_element_sync_state_with_parent),
8699 (gst_element_get_state_func), (gst_element_abort_state),
8700 (gst_element_commit_state), (gst_element_lost_state),
8701 (gst_element_set_state_func), (gst_element_change_state):
8703 State variables are now protected with the LOCK, the state
8704 lock is only used to serialize _set_state().
8706 2005-10-18 Wim Taymans <wim@fluendo.com>
8708 * check/gst/gstbin.c: (GST_START_TEST):
8709 * check/gst/gstmessage.c: (GST_START_TEST):
8710 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
8711 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
8713 * gst/gstelement.c: (gst_element_abort_state),
8714 (gst_element_commit_state), (gst_element_lost_state):
8715 * gst/gstmessage.c: (gst_message_new_state_changed),
8716 (gst_message_new_state_dirty), (gst_message_new_segment_start),
8717 (gst_message_new_segment_done), (gst_message_new_duration),
8718 (gst_message_parse_state_changed),
8719 (gst_message_parse_segment_start),
8720 (gst_message_parse_segment_done), (gst_message_parse_duration):
8722 * tools/gst-launch.c: (event_loop):
8723 Seriously, this is better than a previous commit as we only need
8724 to notify the fact that an element changed state in a streaming
8725 thread, marking the state of the parents dirty, hence the
8726 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
8729 2005-10-18 Wim Taymans <wim@fluendo.com>
8731 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
8732 (gst_bin_recalc_func):
8733 * gst/gstelement.c: (gst_element_set_clock),
8734 (gst_element_abort_state), (gst_element_lost_state):
8735 Cleanups, prepare for state change fixes.
8737 2005-10-18 Wim Taymans <wim@fluendo.com>
8740 * gst/gstelement.c: (gst_element_class_init),
8741 (gst_element_set_state), (gst_element_set_state_func):
8743 Pending ABI changes.
8744 GThreadPool in GstBinClass to monitor async state changes.
8745 state_cookie in GstElement to detect concurrent gst/set state.
8746 set_state is now virtual too in case a very complicated element
8747 has to be constructed.
8749 2005-10-18 Wim Taymans <wim@fluendo.com>
8751 * check/gst/gstbin.c: (GST_START_TEST):
8752 * check/gst/gstmessage.c: (GST_START_TEST):
8753 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
8754 * gst/gstbin.c: (bin_bus_handler):
8755 * gst/gstelement.c: (gst_element_commit_state),
8756 (gst_element_lost_state):
8757 * gst/gstmessage.c: (gst_message_new_state_changed),
8758 (gst_message_new_segment_start), (gst_message_new_segment_done),
8759 (gst_message_new_duration), (gst_message_parse_state_changed),
8760 (gst_message_parse_segment_start),
8761 (gst_message_parse_segment_done), (gst_message_parse_duration):
8763 * tools/gst-launch.c: (event_loop):
8764 Make messages future proof.
8765 state-change gets a flag if it was a message comming from the
8767 segment-start/stop can also be specified in other formats.
8768 A message to notify an app that a pipeline changed playback
8770 Also fix a GstMessage leak in -launch
8772 2005-10-18 Andy Wingo <wingo@pobox.com>
8774 * gst/gstelement.c (gst_element_dispose): More helpful message.
8776 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
8778 reviewed by: <delete if not using a buddy>
8780 * common/gtk-doc.mak:
8782 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
8784 * gst/gstregistry.c: (gst_registry_scan_path_level):
8785 unref a plug-in we get that was already initialized
8787 2005-10-18 Stefan Kost <ensonic@users.sf.net>
8789 * docs/gst/gstreamer-sections.txt:
8790 * docs/libs/gstreamer-libs-sections.txt:
8795 2005-10-17 Andy Wingo <wingo@pobox.com>
8797 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
8800 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
8802 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
8804 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
8805 (gst_element_get_state_func): Better debug message.
8806 (gst_element_commit_state): s/INFO/DEBUG/.
8807 (gst_element_lost_state, gst_element_change_state):
8809 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
8810 (gst_message_new_custom): s/INFO/LOG/.
8812 2005-10-17 Michael Smith <msmith@fluendo.com>
8814 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
8815 Check if end time is valid using end time, not start time.
8817 2005-10-17 Stefan Kost <ensonic@users.sf.net>
8819 * check/gst-libs/controller.c: (GST_START_TEST),
8820 (gst_controller_suite):
8821 * libs/gst/controller/gstcontroller.c:
8822 (gst_controlled_property_set_interpolation_mode):
8823 * libs/gst/controller/gstcontroller.h:
8824 * libs/gst/controller/gstinterpolation.c:
8825 * testsuite/controller/.cvsignore:
8826 * testsuite/controller/Makefile.am:
8827 * testsuite/controller/interpolator.c:
8828 merge controller testsuites
8830 remove mem-chunk from docs
8832 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
8834 * gst/gstmemchunk.c:
8835 * gst/gstmemchunk.h:
8836 * gst/gsttrashstack.c:
8837 * gst/gsttrashstack.h:
8838 out. get out. you're fired. to the Attic !
8840 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
8842 * gst/gstcaps.c: (gst_caps_intersect):
8843 fix signedness issues in a (hopefully) correct way
8844 * gst/gstelement.c: (gst_element_pads_activate):
8846 * gst/gstobject.c: (gst_object_set_parent):
8849 2005-10-17 Julien MOUTTE <julien@moutte.net>
8851 * gst/gstvalue.h: Fix prototypes.
8853 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8855 * docs/gst/gstreamer-sections.txt:
8856 * gst/gst.c: (gst_version_string):
8858 * gst/gstversion.h.in:
8859 * win32/common/libgstreamer.def:
8860 add gst_version_string ()
8862 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8866 * gst/gst.c: (init_post):
8867 * win32/common/config.h.in:
8869 * gst/gstcaps.c: (gst_caps_intersect):
8870 use gint64, the range could be bigger than a guint
8872 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8875 document potential problem in 2038
8877 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8879 * gst/gstcaps.c: (gst_caps_intersect):
8880 Fix guint j diving under 0
8882 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8885 * win32/common/config.h:
8886 * win32/common/config.h.in:
8887 check for process.h, declares getpid() on Windows
8889 include process.h if we have it
8890 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
8891 * gst/gstmemchunk.h:
8892 fix signedness issues
8893 * win32/common/libgstreamer.def:
8896 2005-10-16 Julien MOUTTE <julien@moutte.net>
8898 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
8899 fix. Because of unsigned ints, caps intersection was going nuts and
8900 trying to access structures with G_MAXUINT index. That fixes
8901 videotestsrc ! ffmpegcolorspace ! fakesink
8902 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
8905 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8908 use the gettext macro
8909 * gst/elements/gstelements.c:
8911 * gst/indexers/gstindexers.c:
8912 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
8913 * win32/common/config.h:
8915 * win32/common/config.h.in:
8916 add the template to generate config.h
8917 * win32/common/gstenumtypes.c:
8918 * win32/common/gstversion.h:
8921 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8923 * gst/gst.c: (gst_version):
8924 * gst/gstversion.h.in:
8927 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
8930 Oops, add missing closing bracket.
8932 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8935 use common m4's for argument checking
8937 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
8939 * docs/gst/gstreamer-sections.txt:
8941 Add GST_EVENT_TYPE_NAME() macro.
8943 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8946 * gst/gstpluginfeature.c:
8948 privatize more symbols
8950 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8953 add srcdir, builddir includes to GST_ALL_CFLAGS, since
8954 everything that uses GStreamer API should have the includes
8956 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8958 * docs/gst/gstreamer-sections.txt:
8959 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
8961 give each value a _get_type, removes the DATA exports
8963 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8967 remove _gst_registry_auto_load, not used anymore
8968 * gst/gstbin.c: (gst_bin_get_type):
8970 * gst/gstelement.c: (gst_element_get_type):
8972 * gst/gstobject.c: (gst_object_get_type):
8974 * gst/gstpad.c: (gst_pad_get_type):
8976 make _get_type functions similar, fixes data export from library
8978 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8981 correctly make conditionals
8982 * gst/elements/Makefile.am:
8983 * gst/elements/gstelements.c:
8984 fix typo causing fdsrc not to build
8986 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8988 * testsuite/Makefile.am:
8989 * testsuite/bytestream/.cvsignore:
8990 * testsuite/bytestream/Makefile.am:
8991 * testsuite/bytestream/filepadsink.c:
8992 * testsuite/bytestream/gstbstest.c:
8993 * testsuite/bytestream/test1.c:
8994 * testsuite/bytestream/testfile1:
8995 * testsuite/caps/normalisation.c:
8996 * testsuite/caps/random.c: (main):
8997 * testsuite/cleanup/.cvsignore:
8998 * testsuite/cleanup/Makefile.am:
8999 * testsuite/cleanup/cleanup1.c:
9000 * testsuite/cleanup/cleanup2.c:
9001 * testsuite/cleanup/cleanup3.c:
9002 * testsuite/cleanup/cleanup4.c:
9003 * testsuite/cleanup/cleanup5.c:
9004 * testsuite/controller/interpolator.c:
9005 * testsuite/debug/printf_extension.c: (main):
9006 * testsuite/elements/tee.c:
9007 * testsuite/negotiation/.cvsignore:
9008 * testsuite/negotiation/Makefile.am:
9009 * testsuite/negotiation/pad_link.c:
9010 * testsuite/pad/Makefile.am:
9011 * testsuite/pad/chainnopull.c:
9012 * testsuite/pad/getnopush.c:
9013 * testsuite/pad/link.c:
9014 * testsuite/refcounting/sched.c: (create_pipeline):
9015 * testsuite/registry/Makefile.am:
9016 * testsuite/registry/gst-print-formats.c:
9017 * testsuite/schedulers/.cvsignore:
9018 * testsuite/schedulers/142183-2.c:
9019 * testsuite/schedulers/142183.c:
9020 * testsuite/schedulers/143777-2.c:
9021 * testsuite/schedulers/143777.c:
9022 * testsuite/schedulers/147713.c:
9023 * testsuite/schedulers/147819.c:
9024 * testsuite/schedulers/147894-2.c:
9025 * testsuite/schedulers/147894.c:
9026 * testsuite/schedulers/Makefile.am:
9027 * testsuite/schedulers/group_link.c:
9028 * testsuite/schedulers/queue_link.c:
9029 * testsuite/schedulers/relink.c:
9030 * testsuite/schedulers/unlink.c:
9031 * testsuite/schedulers/unref.c:
9032 * testsuite/schedulers/useless_iteration.c:
9033 * testsuite/states/bin.c:
9034 clean out/remove some stuff from the testsuite directories
9036 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9039 check for some headers
9040 * gst/elements/Makefile.am:
9041 * gst/elements/gstelements.c:
9042 don't compile fdsrc without sys/socket.h
9043 * gst/indexers/Makefile.am:
9044 * gst/indexers/gstindexers.c: (plugin_init):
9045 don't compile fileindex without mmap
9047 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9054 * check/Makefile.am:
9055 * docs/gst/Makefile.am:
9056 * examples/helloworld/Makefile.am:
9058 * gst/base/Makefile.am:
9059 * gst/check/Makefile.am:
9060 * gst/elements/Makefile.am:
9061 * gst/indexers/Makefile.am:
9062 * gst/parse/Makefile.am:
9063 * libs/gst/controller/Makefile.am:
9064 * libs/gst/dataprotocol/Makefile.am:
9065 * examples/helloworld/helloworld.c: (event_loop):
9066 compile fixes, though it's not being compiled currently
9068 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9070 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
9071 Add some simple tests for the new taglist date API.
9073 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9075 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
9076 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
9077 Beautify 'last-message' output: print 'none' for buffer timestamps
9078 and durations if none is set; improve alignment with next messages.
9080 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9082 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
9083 * gst/gstpluginfeature.h:
9084 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
9085 * gst/gstregistry.h:
9086 * docs/gst/gstreamer-sections.txt:
9087 Add new API to check plugin feature version requirements.
9089 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
9090 Some basic tests for the above.
9092 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9094 * gst/gststructure.c: (gst_structure_to_string):
9095 guard against NULL printf - happens when for example
9096 a message structure with GstClock gets serialized
9098 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
9100 * gst/base/gstcollectpads.c: (gst_collectpads_event):
9101 Fix presumable copy'n'pasto.
9103 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9105 * gst/elements/gstfakesrc.h:
9106 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
9107 * gst/elements/gsttypefindelement.c:
9109 * gst/elements/gstfilesink.c: (gst_file_sink_render):
9110 I wonder if this could actually write +2GB files before
9112 2005-10-13 Andy Wingo <wingo@pobox.com>
9114 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
9115 Fix Timmeke Waymans bug.
9116 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
9117 string of the proper length to gst_caps_from_string. There's a
9118 potential for, before this fix, that this could cause someone
9119 connecting over the network to cause a segfault if the payload is
9122 2005-10-13 Stefan Kost <ensonic@users.sf.net>
9124 * docs/design/draft-push-pull.txt:
9125 * docs/design/part-overview.txt:
9126 * docs/random/TODO-pre-0.9:
9127 * docs/random/old/ChangeLog.gstreamer:
9128 * gst/base/gstpushsrc.c:
9132 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9134 * gst/glib-compat.c: (gst_flags_get_first_value):
9135 * gst/glib-compat.h:
9136 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
9137 (gst_value_compare_double), (gst_value_serialize_flags):
9138 GLib 2.6 g_flags_get_first_value has a bug that triggers an
9141 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9143 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9144 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
9146 * tools/gst-launch.c: (event_loop):
9147 print out clock nicely
9149 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
9151 * docs/gst/gstreamer-sections.txt:
9153 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
9154 (gst_tag_list_get_date_index):
9155 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
9156 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
9158 2005-10-13 Julien MOUTTE <julien@moutte.net>
9160 * gst/base/gstcollectpads.c: (gst_collectpads_event),
9161 (gst_collectpads_chain):
9162 * gst/base/gstcollectpads.h: Handle newsegment and store informations
9165 2005-10-13 Stefan Kost <ensonic@users.sf.net>
9167 * docs/gst/gstreamer-sections.txt:
9170 * tools/gst-inspect.c: (main):
9171 * tools/gst-launch.c: (main):
9172 * tools/gst-run.c: (main):
9173 * tools/gst-xmlinspect.c: (main):
9174 fix GOption context leaks
9177 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9181 * win32/common/config.h:
9183 * win32/vs6/grammar.dsp:
9184 * win32/vs6/libgstelements.dsp:
9185 * win32/vs6/libgstreamer.dsp:
9188 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9190 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9191 * gst/base/gstbasesrc.c: (gst_base_src_query):
9192 fix more guint64<->gdouble conversions
9194 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9197 add win32-update target
9198 * win32/common/gstconfig.h:
9199 * win32/common/gstenumtypes.c:
9200 * win32/common/gstenumtypes.h:
9201 * win32/common/gstversion.h:
9202 add files that visual studio can't generate
9204 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9207 add a win32-update target
9210 2005-10-12 Wim Taymans <wim@fluendo.com>
9212 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
9213 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
9214 * gst/gstelement.c: (gst_element_commit_state),
9215 (gst_element_set_state):
9216 Protect flags with proper lock.
9217 unref provided cached clock in dispose.
9219 2005-10-12 Stefan Kost <ensonic@users.sf.net>
9222 * gst/gstminiobject.h:
9224 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
9225 removed unused flags from miniobject
9228 2005-10-12 Wim Taymans <wim@fluendo.com>
9230 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
9231 (gst_file_sink_event), (gst_file_sink_render):
9232 Flush before seeking.
9234 2005-10-12 Andy Wingo <wingo@pobox.com>
9236 * gst/gst.c (gst_init_check): Ignore unknown options, as has
9237 always been the case.
9239 2005-10-12 Stefan Kost <ensonic@users.sf.net>
9241 * check/gst/gstbin.c: (GST_START_TEST):
9242 * docs/gst/gstreamer-sections.txt:
9243 * gst/base/gstbasesink.c: (gst_base_sink_init):
9244 * gst/base/gstbasesrc.c: (gst_base_src_init),
9245 (gst_base_src_get_range), (gst_base_src_check_get_range),
9246 (gst_base_src_start), (gst_base_src_stop):
9247 * gst/base/gstbasesrc.h:
9248 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
9249 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
9250 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
9254 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
9256 * gst/gstelement.c: (gst_element_is_locked_state),
9257 (gst_element_set_locked_state), (gst_element_commit_state),
9258 (gst_element_set_state):
9260 * gst/gstindex.c: (gst_index_init):
9262 * gst/gstminiobject.h:
9263 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
9264 (gst_object_set_parent):
9266 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
9267 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
9269 * gst/gstpadtemplate.h:
9270 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
9271 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
9272 * gst/gstpipeline.h:
9273 * gst/indexers/gstfileindex.c: (gst_file_index_load),
9274 (gst_file_index_commit):
9275 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
9276 * testsuite/pad/link.c: (gst_test_src_init),
9277 (gst_test_filter_init), (gst_test_sink_init):
9278 * testsuite/states/locked.c: (main):
9279 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
9280 moved bitshift from macro to enum definition
9282 2005-10-12 Wim Taymans <wim@fluendo.com>
9284 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
9285 * gst/elements/gstfilesink.c: (gst_file_sink_event),
9286 (gst_file_sink_render):
9287 Some more debugging info.
9289 2005-10-12 Wim Taymans <wim@fluendo.com>
9291 * docs/design/part-states.txt:
9292 * tools/gst-launch.c: (main):
9294 Revert non-intentional change.
9296 2005-10-12 Wim Taymans <wim@fluendo.com>
9298 * check/gst/gstbin.c: (GST_START_TEST):
9299 * check/gst/gstelement.c: (GST_START_TEST):
9300 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
9301 * check/gst/gstghostpad.c: (GST_START_TEST):
9302 * check/gst/gstpipeline.c: (GST_START_TEST):
9303 * check/pipelines/simple_launch_lines.c: (run_pipeline):
9304 * check/states/sinks.c: (GST_START_TEST):
9305 * gst/elements/gsttypefindelement.c: (stop_typefinding):
9306 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
9307 (gst_bin_remove_func), (gst_bin_get_state_func),
9308 (gst_bin_recalc_state), (gst_bin_change_state_func),
9310 * gst/gstelement.c: (gst_element_get_state_func),
9311 (gst_element_get_state), (gst_element_abort_state),
9312 (gst_element_commit_state), (gst_element_set_state),
9313 (gst_element_change_state), (gst_element_change_state_func):
9315 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
9316 (gst_pipeline_provide_clock_func):
9317 * gst/gstutils.c: (gst_element_link_pads_filtered):
9318 * tools/gst-launch.c: (main):
9319 * tools/gst-typefind.c: (main):
9320 Use GstClockTime in _get_state() instead of GTimeVal.
9321 Remove old code in gstutils.c
9323 2005-10-12 Andy Wingo <wingo@pobox.com>
9325 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
9328 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
9329 there is no task. Shouldn't affect any code, as nothing in our
9330 plugins checks this return value.
9331 (gst_pad_stop_task): Also take the stream lock if the pad has no
9334 2005-10-12 Wim Taymans <wim@fluendo.com>
9336 * gst/gstpad.c: (pre_activate), (post_activate),
9337 (gst_pad_activate_pull), (gst_pad_activate_push):
9338 Cleanup activation code. Reset old state if
9341 2005-10-12 Wim Taymans <wim@fluendo.com>
9343 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9344 (gst_base_sink_change_state):
9345 No need to prerol after receiving EOS.
9347 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9348 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
9349 * gst/elements/gstidentity.c: (gst_identity_event):
9350 Print events more verbosely.
9352 2005-10-12 Wim Taymans <wim@fluendo.com>
9354 * check/Makefile.am:
9355 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
9356 * check/states/sinks2.c:
9357 Moved sinks2 testcode in sinks check.
9359 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
9360 (gst_bin_remove_func), (gst_bin_recalc_state),
9361 (gst_bin_change_state_func), (bin_bus_handler):
9362 Fix potential race condition when _get_state() iterated over an
9363 ASYNC element right before it posted a state completion.
9366 Do proper cast here.
9368 * gst/gstevent.c: (gst_event_new_newsegment),
9369 (gst_event_parse_newsegment):
9370 A playback rate of 0.0 is not allowed.
9372 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9374 * win32/common/config.h:
9375 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9376 (_trewinddir), (_ttelldir), (_tseekdir):
9377 * win32/common/dirent.h:
9378 * win32/common/gtchar.h:
9379 * win32/common/libgstbase.def:
9380 * win32/common/libgstreamer.def:
9381 * win32/vs6/grammar.dsp:
9382 * win32/vs6/gst_inspect.dsp:
9383 * win32/vs6/gst_launch.dsp:
9384 * win32/vs6/gstreamer.dsw:
9385 * win32/vs6/libgstbase.dsp:
9386 * win32/vs6/libgstelements.dsp:
9387 * win32/vs6/libgstreamer.dsp:
9388 Visual Studio 6 project files, and a new common directory.
9391 2005-10-11 Wim Taymans <wim@fluendo.com>
9393 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9394 (gst_base_sink_do_sync), (gst_base_sink_query),
9395 (gst_base_sink_change_state):
9396 * gst/base/gstbasesink.h:
9397 Correctly parse newsegment info.
9399 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9401 * gst/gst.c: (init_post):
9402 split plugin paths correctly
9404 2005-10-11 Wim Taymans <wim@fluendo.com>
9406 * check/gst/gstevent.c: (GST_START_TEST):
9407 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9408 (gst_base_sink_change_state):
9409 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
9410 * gst/base/gstbasetransform.c: (gst_base_transform_event):
9411 * gst/elements/gstfilesink.c: (gst_file_sink_event):
9412 * gst/gstevent.c: (gst_event_new_newsegment),
9413 (gst_event_parse_newsegment):
9415 Added extra flag to newsegment for future API freeze.
9416 Updated check and base elements.
9418 2005-10-11 Julien MOUTTE <julien@moutte.net>
9420 * gst/base/gstcollectpads.c: (gst_collectpads_init),
9421 (gst_collectpads_add_pad), (gst_collectpads_pop),
9422 (gst_collectpads_event), (gst_collectpads_chain):
9423 * gst/base/gstcollectpads.h: Handle EOS correctly.
9425 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9427 * tools/gst-launch.c: (main):
9428 more null protecting
9430 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9432 * gst/gst-i18n-lib.h:
9433 check for ENABLE_NLS, not GETTEXT_PACKAGE
9434 * gst/gstregistry.c: (gst_registry_add_plugin),
9435 (gst_registry_scan_path_level),
9436 (_gst_registry_remove_cache_plugins):
9437 protect possibly NULL strings
9438 * gst/parse/types.h:
9439 config.h already included before
9440 * tools/gst-inspect.c: (main):
9441 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
9442 check for ENABLE_NLS, not GETTEXT_PACKAGE
9443 * tools/gst-launch.c: (main):
9444 check for ENABLE_NLS, not GETTEXT_PACKAGE
9446 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9449 if we don't have glib, fail before testing 2.8
9450 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
9451 fix a leak, should fix plugins-base testsuite
9453 2005-10-11 Andy Wingo <wingo@pobox.com>
9455 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
9456 take the mode we're going to as an arg. Go head and set the mode
9457 and flushing flags now, so that if the activate function starts a
9458 thread all the flags will be in the right state.
9459 (post_activate): Renamed also. Just handle making sure streaming
9460 finishes for the deactivation case, and setting the deactivated
9462 (gst_pad_set_active): Complain loudly if deactivation fails.
9463 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
9464 (gst_pad_activate_push): Adapt to pre/post_activate changes,
9465 remove the terrible hack.
9467 2005-10-11 Wim Taymans <wim@fluendo.com>
9469 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
9470 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
9471 (gst_bin_recalc_state), (gst_bin_change_state_func),
9472 (gst_bin_dispose), (bin_bus_handler):
9474 Prepare to make current EOS message queue more generic.
9477 * gst/gstevent.c: (gst_event_new_newsegment),
9478 (gst_event_parse_newsegment):
9480 Rename base to stream_time.
9485 2005-10-11 Wim Taymans <wim@fluendo.com>
9487 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
9488 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
9489 (gst_bin_change_state_func), (bin_bus_handler):
9491 Work on proper clock selection.
9493 2005-10-11 Edward Hervey <edward@fluendo.com>
9495 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
9496 * libs/gst/controller/gstcontroller.h:
9497 Added GList* version of _remove_properties() in order to be able to wrap
9500 2005-10-11 Wim Taymans <wim@fluendo.com>
9502 * docs/design/part-states.txt:
9505 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
9506 (gst_bin_change_state_func), (bin_bus_handler):
9507 Doc updates. Don't distribute the same clock over and over again.
9513 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
9514 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
9515 (gst_pad_send_event):
9517 Make probe emission threadsafe again.
9518 Register quarks and move _get_name() from utils.
9521 * gst/gstpipeline.c: (gst_pipeline_class_init),
9522 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
9523 Only redistribute the clock of it changed.
9525 * gst/gstsystemclock.h:
9530 Moved the _flow_get_name() to GstPad.
9532 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9534 * check/gst-libs/gdp.c: (GST_START_TEST):
9535 * check/gst/gstcaps.c: (GST_START_TEST):
9536 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9537 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
9538 (gst_dp_packet_from_caps):
9539 fix more valgrind warnings before turning up the heat
9541 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9543 * gst/parse/grammar.y:
9544 some cleanup before the hacking
9546 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9548 * gst/base/gstbasesrc.c: (gst_base_src_query):
9550 * gst/gstutils.c: (gst_guint64_to_gdouble),
9551 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
9553 externalize, basesrc uses it
9554 obviously the implementation needs testing
9556 2005-10-10 Wim Taymans <wim@fluendo.com>
9558 * tests/sched/Makefile.am:
9559 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
9560 (make_pipeline3), (make_pipeline4), (print_elem), (main):
9562 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9564 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
9565 apparently converting from guint64 to double is not implemented
9568 2005-10-10 Wim Taymans <wim@fluendo.com>
9570 * check/Makefile.am:
9571 * check/generic/states.c: (GST_START_TEST):
9572 * check/gst/gstbin.c: (GST_START_TEST):
9573 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
9574 * check/states/sinks.c: (GST_START_TEST):
9575 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
9577 Check fixes, use API as stated in design docs, remove hacks.
9579 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9580 (gst_base_sink_change_state):
9581 Catch stopping our task while we're shutting down.
9583 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
9584 (gst_bin_remove_func), (gst_bin_get_state_func),
9585 (gst_bin_recalc_state), (gst_bin_change_state_func),
9588 * gst/gstelement.c: (gst_element_init),
9589 (gst_element_get_state_func), (gst_element_abort_state),
9590 (gst_element_commit_state), (gst_element_lost_state),
9591 (gst_element_set_state), (gst_element_change_state),
9592 (gst_element_change_state_func):
9594 New state change algorithm (see #318116)
9596 * gst/gstpipeline.c: (gst_pipeline_class_init),
9597 (gst_pipeline_init), (gst_pipeline_set_property),
9598 (gst_pipeline_get_property), (do_pipeline_seek),
9599 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
9600 * gst/gstpipeline.h:
9601 Remove crude state change hacks.
9606 * tools/gst-launch.c: (main):
9607 Fixes for state change. Needs some more work to fully use the
9610 2005-10-10 Andy Wingo <wingo@pobox.com>
9612 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
9614 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
9615 this flag, but it's not even in GLib 2.6. Odd. Hack around the
9618 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
9620 * gst/gstiterator.c: (gst_iterator_new):
9621 Fix my previous commit: GTypes passed to gst_iterator_new()
9622 can be fundamental types.
9624 2005-10-10 Wim Taymans <wim@fluendo.com>
9626 * gst/gstelement.c: (gst_element_iterate_pad_list),
9627 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
9628 (gst_element_iterate_sink_pads):
9629 Use src/sink pads lists for the respective iterators instead
9632 2005-10-10 Andy Wingo <wingo@pobox.com>
9634 Merged in popt removal + GOption addition patch from Ronald, bug
9637 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
9638 GstElement macros around, remove popt-related symbols, add goption
9641 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
9643 * docs/gst/Makefile.am:
9644 * docs/libs/Makefile.am: No POPT_CFLAGS.
9646 * examples/manual/Makefile.am:
9647 * docs/manual/basics-init.xml: Doc updates with an example.
9649 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
9650 (gst_init), (parse_one_option), (parse_goption_arg):
9651 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
9652 bit of hand merging and debugging to get the GOption stuff working
9655 * tests/Makefile.am:
9656 * tools/Makefile.am:
9657 * tools/gst-inspect.c: (main):
9658 * tools/gst-launch.c: (main):
9659 * tools/gst-run.c: (main):
9660 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
9662 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
9664 * gst/gstiterator.c: (gst_iterator_new):
9665 Add assertions to make sure passed GType is likely to really
9666 be a GType (as the compiler won't catch it if the size and
9667 GType arguments get mixed up, see #318447).
9669 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
9671 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
9673 * gst/gstbin.c: (gst_bin_iterate_sorted):
9674 Pass GType and size arguments to gst_iterator_new() in the right
9675 order (maybe we should make _new() take the GType as first argument
9676 just like _new_list()?) (#318447).
9679 2005-10-10 Wim Taymans <wim@fluendo.com>
9681 * gst/gstelement.c: (gst_element_finalize):
9682 And free the GStaticRecMutex too
9684 2005-10-10 Andy Wingo <wingo@pobox.com>
9686 * gst/gstelement.c (gst_element_init, gst_element_finalize):
9687 Allocate and free the mutex properly.
9689 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
9691 (GstElement): The state_lock is now recursive. Rebuild your
9692 plugins, suckers. Old macros adapted.
9694 * docs/gst/gstreamer-sections.txt: Doc updates.
9697 * gst/gstutils.c (g_static_rec_cond_timed_wait)
9698 (g_static_rec_cond_wait): Ported from state changes patch, while
9699 we wait on bug #317802 to be solved in a well-distributed GLib.
9701 * gst/gstelement.c (gst_element_change_state_func): Renamed from
9702 gst_element_change_state, variable name changes.
9703 (gst_element_change_state): Split out of gst_element_set_state in
9704 preparation for the state change merge. Doesn't pay attention to
9705 the 'transition' argument.
9706 (gst_element_set_state): Updates, hopefully purely cosmetic.
9707 (gst_element_sync_state_with_parent): MT-safety. Ported from the
9709 (gst_element_get_state_func): Renamed from get_state, cosmetic
9712 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9714 * gst/elements/gstelements.c:
9715 * win32/GStreamer.vcproj:
9717 * win32/dirent.c: (_tseekdir):
9718 * win32/gst-inspect.vcproj:
9719 * win32/gst-launch.vcproj:
9720 * win32/gstconfig.h:
9721 * win32/gstelements.vcproj:
9722 * win32/gstenumtypes.c: (gst_object_flags_get_type):
9723 * win32/gstreamer.def:
9725 updates for the win32 build (patch from Sebastien Moutte)
9727 2005-10-10 Andy Wingo <wingo@pobox.com>
9729 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
9730 gst_bin_get_state, cleaned up (but no logic changes).
9731 (bin_element_is_sink): Comment updates.
9732 (sink_iterator_filter): Remove needless cast.
9733 (gst_bin_iterate_sinks): Doc update.
9734 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
9735 cleaned up (but no logic changes).
9737 * check/states/sinks.c (test_src_sink): Cleanups from the state
9739 (test_livesrc_sink): Sync on the state.
9741 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
9742 the state change patch.
9744 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
9747 * check/gst/gstbin.c: Merge in some style fixes and additional
9748 checks from Wim's state change patch.
9750 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
9752 * gst/base/gsttypefindhelper.c: (helper_find_peek),
9753 (gst_type_find_helper):
9754 Check whether we have the requested data already in our list of
9755 cached buffers before pulling a new buffer; also make the buffer
9756 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
9758 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9763 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9764 don't use long long, it's not portable. Replacing with
9765 gint64 seems to work; let's hope no skeletons fall out of the closet.
9767 2005-10-10 Andy Wingo <wingo@pobox.com>
9769 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
9771 2005-10-09 Stefan Kost <ensonic@users.sf.net>
9773 * docs/gst/gstreamer-sections.txt:
9778 * gst/gstmessage.c: (gst_message_parse_state_changed):
9781 more docs, fix compilation
9783 2005-10-09 Philippe Khalaf <burger@speedy.org>
9785 Fixed a few forgotten variables on previous commit
9787 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
9789 * gst/base/gsttypefindhelper.c: (helper_find_peek):
9790 Fix evil typefind crasher: getrange() might return a short
9791 buffer at the end of a file, but gst_type_find_peek() must
9792 either return the full data as requested or NULL, but
9793 never a short buffer.
9795 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
9797 * gst/gstmessage.c: (gst_message_new_state_changed),
9798 (gst_message_parse_state_changed):
9800 don't use "new", it's a C++ keyword
9802 2005-10-08 Wim Taymans <wim@fluendo.com>
9804 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
9805 * gst/gstelement.c: (gst_element_post_message):
9806 * gst/gstpipeline.c: (gst_pipeline_change_state):
9807 Small docs and debug updates.
9809 2005-10-08 Stefan Kost <ensonic@users.sf.net>
9811 * docs/gst/gstreamer-sections.txt:
9812 * gst/gstelementfactory.c:
9817 2005-10-08 Wim Taymans <wim@fluendo.com>
9819 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
9820 (gst_bin_dispose), (bin_bus_handler):
9821 Fix typos, add comments.
9822 Clear EOS list when going to PAUSED from any direction and do it
9823 in a threadsafe way.
9824 Get base time in a threadsafe way too.
9825 Fix confusing debug in the change_state function.
9826 Various other small cleanups.
9828 * gst/gstelement.c: (gst_element_post_message):
9829 Fix very verbose bus posting code.
9831 * gst/gstpipeline.c: (gst_pipeline_class_init),
9832 (gst_pipeline_set_property), (gst_pipeline_get_property),
9833 (gst_pipeline_change_state):
9834 Small ARG_ -> PROP_ cleanup
9836 2005-10-08 Wim Taymans <wim@fluendo.com>
9838 * gst/gstbin.c: (is_eos), (bin_bus_handler):
9839 Do a less CPU demanding EOS check because we can.
9841 2005-10-08 Wim Taymans <wim@fluendo.com>
9843 * libs/gst/dataprotocol/dataprotocol.c:
9844 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9845 (gst_dp_packet_from_event):
9846 * libs/gst/dataprotocol/dataprotocol.h:
9847 * libs/gst/dataprotocol/dp-private.h:
9848 It's about time we bump the version number.
9849 Since event types don't fit in the guint8 anymore describing
9850 the payload type, make payload type 16 bits wide.
9852 2005-10-08 Wim Taymans <wim@fluendo.com>
9854 * docs/design/part-TODO.txt:
9855 * docs/design/part-clocks.txt:
9856 * docs/design/part-events.txt:
9857 * docs/design/part-gstbin.txt:
9858 * docs/design/part-gstelement.txt:
9859 * docs/design/part-gstpipeline.txt:
9860 * docs/design/part-live-source.txt:
9861 * docs/design/part-messages.txt:
9862 * docs/design/part-overview.txt:
9863 * docs/design/part-states.txt:
9866 2005-10-08 Wim Taymans <wim@fluendo.com>
9870 Fix event quark registration.
9871 Add some space between events so we can insert them in the
9874 2005-10-08 Wim Taymans <wim@fluendo.com>
9876 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9877 (gst_base_sink_handle_buffer):
9884 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
9885 (gst_queue_set_property), (gst_queue_get_property):
9887 Remove old unused properties.
9889 2005-10-08 Stefan Kost <ensonic@users.sf.net>
9890 * docs/gst/gstreamer-sections.txt:
9893 * gst/gstminiobject.c:
9894 * gst/gstminiobject.h:
9898 lots of new docs and doc fixes
9900 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9902 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
9904 * gst/gstregistry.c: (gst_registry_lookup_locked),
9905 (gst_registry_scan_path_level):
9906 * gst/gstregistryxml.c: (load_plugin):
9907 Only ever load one plugin for a given plugin basename.
9908 This ensures correct overriding of GST_PLUGIN_PATH over
9909 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
9910 system installed plugins.
9912 2005-10-08 Wim Taymans <wim@fluendo.com>
9914 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9915 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
9916 Prepare for doing QOS.
9918 2005-10-08 Wim Taymans <wim@fluendo.com>
9920 * check/gst/gstbin.c: (GST_START_TEST):
9921 * check/pipelines/cleanup.c: (GST_START_TEST):
9922 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
9923 Allow new clock message too.
9925 2005-10-08 Wim Taymans <wim@fluendo.com>
9927 * gst/gstmessage.c: (gst_message_new_error),
9928 (gst_message_new_warning), (gst_message_new_tag),
9929 (gst_message_new_state_changed), (gst_message_new_clock_provide),
9930 (gst_message_new_clock_lost), (gst_message_new_new_clock),
9931 (gst_message_new_segment_start), (gst_message_new_segment_done),
9932 (gst_message_parse_state_changed),
9933 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
9934 (gst_message_parse_new_clock):
9936 Also carry the clock in question.
9938 2005-10-08 Wim Taymans <wim@fluendo.com>
9940 * gst/gstmessage.c: (gst_message_new_custom),
9941 (gst_message_new_eos), (gst_message_new_error),
9942 (gst_message_new_warning), (gst_message_new_tag),
9943 (gst_message_new_state_changed), (gst_message_new_clock_provide),
9944 (gst_message_new_new_clock), (gst_message_new_segment_start),
9945 (gst_message_new_segment_done), (gst_message_parse_state_changed),
9946 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
9949 Added clock related messages.
9951 * gst/gstpipeline.c: (gst_pipeline_change_state):
9952 Post message when the clock changed.
9954 * tools/gst-launch.c: (event_loop):
9957 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
9959 * tools/gst-inspect.c: (print_element_properties_info):
9960 Can't pass NULL strings to g_print() on windows.
9962 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9965 * docs/gst/Makefile.am:
9966 * docs/gst/gstreamer-docs.sgml:
9967 * docs/gst/running.xml:
9968 * docs/version.entities.in:
9969 add a chapter on running GStreamer.
9970 document GST_DEBUG and GST_PLUGIN* env vars
9972 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9977 remove PLUGINS_BUILDDIR stuff
9978 * gst/gst.c: (init_post):
9979 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
9981 remove, it was condescending and not needed
9983 2005-10-08 Wim Taymans <wim@fluendo.com>
9985 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
9986 (gst_base_sink_handle_object), (gst_base_sink_event),
9987 (gst_base_sink_wait), (gst_base_sink_handle_event),
9988 (gst_base_sink_change_state):
9989 * gst/base/gstbasesink.h:
9990 Repost EOS message while going to PLAYING if still EOS.
9991 Make sure that when receiving a FLUSH_START we don't attempt
9992 to sync on the clock anymore.
9994 2005-10-08 Wim Taymans <wim@fluendo.com>
9996 * tools/gst-launch.c: (event_loop):
9997 Better message printout.
9999 2005-10-08 Wim Taymans <wim@fluendo.com>
10001 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
10002 (gst_bin_child_proxy_get_children_count):
10003 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
10004 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
10005 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
10006 (gst_child_proxy_set_valist):
10007 * gst/parse/grammar.y:
10008 Make ChildProxy threadsafe and fix mem leaks.
10010 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10012 * gst/gst.c: (init_post):
10013 debug the GST_PLUGIN_ env vars
10015 2005-10-08 Wim Taymans <wim@fluendo.com>
10017 * check/gst/gstbin.c: (GST_START_TEST):
10018 * check/gst/gstmessage.c: (GST_START_TEST):
10019 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
10020 * gst/gstelement.c: (gst_element_commit_state),
10021 (gst_element_lost_state):
10022 * gst/gstmessage.c: (gst_message_new_state_changed),
10023 (gst_message_parse_state_changed):
10024 * gst/gstmessage.h:
10025 * tools/gst-launch.c: (event_loop):
10026 Added extra field to STATE_CHANGE message with the pending
10027 state, which will be different from the new state soon.
10029 2005-10-08 Wim Taymans <wim@fluendo.com>
10031 * gst/gstbus.c: (gst_bus_pop):
10033 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
10034 Small cleanups and doc updates.
10036 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10038 * gst/gst.c: (init_pre):
10039 * gst/gstbin.c: (gst_bin_add_func):
10040 log distributing clocks and base time
10041 * gst/gstregistry.c: (gst_registry_add_plugin),
10042 (gst_registry_scan_path_level), (gst_registry_scan_path):
10043 clean up the debugging output a little
10044 * gst/gstutils.c: (gst_element_state_get_name):
10045 warn about a memleak (I've actually seen this be used, though
10046 it was probably a bug)
10048 2005-10-07 Wim Taymans <wim@fluendo.com>
10050 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10051 (gst_base_src_init), (gst_base_src_default_newsegment),
10052 (gst_base_src_newsegment), (gst_base_src_do_seek),
10053 (gst_base_src_loop), (gst_base_src_start):
10054 * gst/base/gstbasesrc.h:
10055 Make the newsegment event customizable by subclasses.
10057 2005-10-07 Wim Taymans <wim@fluendo.com>
10059 * gst/gstevent.c: (gst_event_new_buffersize),
10060 (gst_event_parse_buffersize):
10062 New event for future idea.
10064 2005-10-07 Andy Wingo <wingo@pobox.com>
10066 * gst/gstelement.c (gst_element_post_message): Doc update.
10068 * docs/gst/gstreamer-sections.txt: Update.
10070 * gst/gstmessage.c (gst_message_new_application): Made into a
10071 function like honest API calls.
10072 (gst_message_new_element): New message type.
10074 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
10076 * check/elements/fakesrc.c (test_no_preroll): New check, checks
10077 that setting a live fakesrc to PAUSED returns NO_PREROLL both
10080 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
10081 NO_PREROLL from gst_element_change_state to fall through.
10083 2005-10-07 Wim Taymans <wim@fluendo.com>
10085 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
10086 (gst_ghost_pad_do_activate_push):
10087 Activating a ghostpad with no internal pad in push mode
10090 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
10093 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
10094 Fixes compilation on Windows.
10096 2005-10-07 Michael Smith <msmith@fluendo.com>
10098 * tools/gst-inspect.c:
10099 Print out feature and plugin count at the end when printing out
10102 2005-10-04 Michael Smith <msmith@fluendo.com>
10104 * gst/gsterror.c: (_gst_stream_errors_init):
10105 Add another error string used in a few existing plugins.
10108 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
10109 * tools/gst-inspect.c: (print_element_info):
10110 When a feature disappears from a plugin (and the feature exists in
10111 the cached registry file), things went horribly wrong. This isn't a
10112 complete fix, we should actually be removing the 'missing' features
10113 from the features list when we load the actual plugin. That's not
10116 2005-10-04 Johan Dahlin <johan@gnome.org>
10118 * check/gst/gstiterator.c: (GST_START_TEST):
10119 * gst/gstbin.c: (gst_bin_iterate_elements),
10120 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
10121 * gst/gstelement.c: (gst_element_iterate_pads):
10122 * gst/gstformat.c: (gst_format_iterate_definitions):
10123 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
10124 (gst_iterator_new_list), (gst_iterator_filter):
10125 * gst/gstiterator.h:
10126 * gst/gstquery.c: (gst_query_type_iterate_definitions):
10127 Add a GType to GstIterator, update callsites and tests.
10129 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10131 * gst/gstpad.c: (gst_pad_event_default_dispatch):
10132 give events a chance to be handled by event probes when the pad
10135 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10137 * gst/gstevent.c: (gst_event_type_get_name),
10138 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
10140 add string representations for event types
10142 2005-10-06 Wim Taymans <wim@fluendo.com>
10144 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
10145 Don't use NULL pointers.
10147 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10149 * gst/gst_private.h:
10151 * gst/gstelement.c:
10153 * gst/gstpluginfeature.c:
10154 widen the debug category in output to fit the biggest one we have
10155 add a bus category and use it
10156 play with the colors
10157 fix up some categories
10159 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10161 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
10162 add push activation of sink ghost pads.
10163 Andye, please verify
10165 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
10167 * gst/gstutils.c: (gst_element_link_pads):
10168 fix a bug in the case where neither element has a pad
10169 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
10170 add a test for that case
10172 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
10174 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
10175 emit have-data before checking for peers. This allows
10176 for probe handlers to connect elements. This helps autopluggers.
10177 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
10179 add six checks, linked/unlinked with no/true/false probe
10181 2005-10-04 Wim Taymans <wim@fluendo.com>
10183 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
10184 (gst_fake_sink_event), (gst_fake_sink_preroll),
10185 (gst_fake_sink_render), (gst_fake_sink_change_state):
10186 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
10187 (gst_fake_src_get_property), (gst_fake_src_create),
10188 (gst_fake_src_stop):
10189 * gst/elements/gstidentity.c: (gst_identity_stop):
10190 Protect last_message with lock.
10192 2005-10-04 Edward Hervey <edward@fluendo.com>
10195 Added precision in the comments for GST_FORMAT_DEFAULT
10197 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
10199 * tools/gst-launch.c: (main):
10200 Don't try to run erroneous pipelines.
10202 2005-10-04 Julien MOUTTE <julien@moutte.net>
10204 * gst/gstbus.c: We don't need this header.
10206 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
10209 back to development
10211 === release 0.9.3 ===
10213 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
10217 Releasing 0.9.3, "Unregistered"
10219 2005-10-03 Andy Wingo <wingo@pobox.com>
10221 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
10222 whereby calling a pad's activatepush() function can start a thread
10223 that starts to push or pull before the pad gets the FLUSHING flag
10224 unset. Hack around it by holding the stream lock until the flag is
10225 set. Need to replace this with a proper solution. Together with
10226 the ghost pad fixes, this fixes mp3 playing/tagreading.
10228 * docs/design/part-gstghostpad.txt: Add a note about activation of
10229 proxy pads outside of ghost pads.
10231 * gst/gstghostpad.c: Implement the ghost pad activation design.
10233 2005-10-02 Andy Wingo <wingo@pobox.com>
10235 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
10236 It is volatile, after all.
10238 * docs/design/part-gstghostpad.txt: Flesh out activation with
10241 * gst/base/gstbasesrc.c (gst_base_src_init): Use
10244 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
10247 Fix (unused) AM_CONDITIONAL tests.
10249 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
10251 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
10253 * gst/gstutils.c: (gst_pad_query_convert):
10254 Add assertion that makes sure src_val is >=0, just like
10255 gst_query_new_convert() has. (#315895)
10257 2005-09-30 Edward Hervey <edward@fluendo.com>
10259 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
10260 Let's not iterate pads we're not interested in, it avoids getting
10261 sky-high refcounts on sinkpad.
10263 2005-09-30 Wim Taymans <wim@fluendo.com>
10265 * gst/gstelement.c: (gst_element_set_state),
10266 (gst_element_change_state):
10267 Small tweak, element in ASYNC remains ASYNC.
10269 2005-09-30 Wim Taymans <wim@fluendo.com>
10271 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
10272 Only error is an error.
10274 * gst/gstbin.c: (gst_bin_change_state):
10277 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
10278 Also call pad_block in pad alloc.
10280 * gst/gstutils.c: (gst_flow_get_name):
10283 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10285 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10286 (gst_base_src_get_range):
10287 Fix documentation typos. Add some more debug info.
10289 2005-09-29 David Schleef <ds@schleef.org>
10291 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
10292 more end-user friendly.
10293 * tools/gst-inspect.c: (main): Check if command-line argument is
10294 a file and attempt to load that file as a plugin.
10296 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10298 * check/gst/gstbin.c:
10299 * check/states/sinks.c:
10300 fix tests for the new warning
10301 * check/gst/gstpipeline.c:
10302 add a test for pipeline and bus interaction
10303 * gst/gstelement.c:
10304 elements should be NULL if they get disposed; add a warning if not
10306 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10309 for 2.6 refcounting, make debug log more correct by printing
10310 the actual refcounts at the time of swap (Wim)
10312 2005-09-29 Andy Wingo <wingo@pobox.com>
10314 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
10315 removes signal watches previously added via
10316 gst_bus_add_signal_watch.
10317 (gst_bus_add_signal_watch): Don't return the source id, just store
10318 it on the bus if there wasn't an id already.
10320 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
10321 add_signal_watch and remove_signal_watch.
10323 2005-09-29 Edward Hervey <edward@fluendo.com>
10325 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
10326 Better if we actually iterate the list :)
10328 2005-09-29 Wim Taymans <wim@fluendo.com>
10330 * check/gst/gstbin.c: (GST_START_TEST):
10331 Change for new bus API.
10333 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
10334 (send_messages), (GST_START_TEST), (gstbus_suite):
10335 Change for new bus signal API.
10337 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
10338 (gst_bus_source_prepare), (gst_bus_source_check),
10339 (gst_bus_create_watch), (gst_bus_add_watch_full),
10340 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
10341 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
10343 Remove support for multiple GSources operating on different
10344 message types as it is too complex and unneeded when using
10346 Added support for receiving signals from the bus.
10348 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10350 * docs/libs/tmpl/gstdataprotocol.sgml:
10351 * docs/manual/advanced-dataaccess.xml:
10352 * gst/elements/gstcapsfilter.c:
10354 rename filter-caps to caps property
10356 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10358 * gst/gstvalue.c: (gst_value_deserialize_fraction):
10359 More robust fraction string parsing.
10361 * docs/pwg/appendix-porting.xml:
10362 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
10364 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10366 * gst/gstcaps.c: (gst_caps_do_simplify):
10367 Thou shalt not free a structure and then continue using it
10368 in the next loop iteration.
10370 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
10372 Add test case for caps simplification.
10374 2005-09-29 Wim Taymans <wim@fluendo.com>
10376 * check/gst/gstbin.c: (GST_START_TEST):
10379 2005-09-29 Wim Taymans <wim@fluendo.com>
10381 * check/gst/gstbin.c: (GST_START_TEST):
10384 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
10385 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
10386 (find_element), (gst_bin_sort_iterator_next),
10387 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10388 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10389 (gst_bin_change_state), (gst_bin_dispose):
10390 A bin does not have a bus, it gets the bus from the parent.
10392 * gst/gstelement.c: (gst_element_requires_clock),
10393 (gst_element_provides_clock), (gst_element_is_indexable),
10394 (gst_element_is_locked_state), (gst_element_change_state),
10395 (gst_element_set_bus_func):
10398 * gst/gstpipeline.c: (gst_pipeline_class_init),
10399 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
10400 The pipeline provides a bus.
10402 2005-09-28 Johan Dahlin <johan@gnome.org>
10404 * gst/gstmessage.c (gst_message_parse_state_changed): Use
10405 gst_structure_get_enum instead of gst_structure_get_int
10407 * gst/gststructure.c (gst_structure_get_enum): Impl.
10409 * gst/gststructure.h (gst_structure_get_enum): Add
10411 * docs/gst/gstreamer-sections.txt: Ditto
10413 * gst/gstmessage.c (gst_message_new_state_changed): Use
10414 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
10415 which does introspection.
10416 Reviewed by Christian Schaller
10418 2005-09-28 Stefan Kost <ensonic@users.sf.net>
10420 * gst/gstinfo.c: (gst_debug_log_default):
10421 don't do dummy g_strdup()s
10422 * libs/gst/controller/gstcontroller.c:
10423 (on_object_controlled_property_changed),
10424 (gst_controlled_property_new), (gst_controller_new_valist),
10425 (gst_controller_new_list),
10426 (gst_controller_remove_properties_valist), (gst_controller_set),
10427 (gst_controller_get), (gst_controller_sync_values),
10428 (gst_controller_get_value_array), (_gst_controller_class_init),
10429 (gst_controller_get_type):
10430 * libs/gst/controller/gstcontroller.h:
10431 * libs/gst/controller/gstinterpolation.c:
10432 (gst_controlled_property_find_timed_value_node):
10433 convert // to /**/ comments
10435 2005-09-28 Wim Taymans <wim@fluendo.com>
10437 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
10438 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
10439 (gst_bus_sync_signal_handler):
10441 Added async-message and sync-message signals to the bus.
10442 Added helper BusFunc to emit signals for all posted messages.
10444 * gst/gstmessage.c: (gst_message_type_get_name),
10445 (gst_message_type_to_quark), (gst_message_get_type):
10446 * gst/gstmessage.h:
10447 Register quarks for message names.
10449 2005-09-28 Stefan Kost <ensonic@users.sf.net>
10451 * docs/libs/gstreamer-libs-sections.txt:
10452 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
10453 (gst_controller_new_list):
10454 * libs/gst/controller/gstcontroller.h:
10455 added another constructor for language bindings
10457 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
10459 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
10463 * gst/gstinfo.c: (_gst_debug_init):
10464 slightly more readable color for refcount debugging
10466 2005-09-28 Wim Taymans <wim@fluendo.com>
10468 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
10469 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
10470 (find_element), (gst_bin_sort_iterator_next),
10471 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10472 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10473 (gst_bin_change_state), (gst_bin_dispose):
10474 Small doc fixes. get_clock -> provide_clock.
10476 * gst/gstelement.c: (gst_element_class_init),
10477 (gst_element_provides_clock), (gst_element_provide_clock),
10478 (gst_element_get_clock), (gst_element_commit_state),
10479 (gst_element_lost_state):
10480 * gst/gstelement.h:
10481 Make get/set_clock() symetric. Add provide_clock vmethod since
10482 that is actually what this function does.
10484 * gst/gstpipeline.c: (gst_pipeline_class_init),
10485 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
10486 (gst_pipeline_get_clock):
10487 get_clock -> provide_clock.
10489 2005-09-28 Andy Wingo <wingo@pobox.com>
10491 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
10492 lieu of real docs...
10494 * gst/elements/gstfdsrc.c: Cleaned up a bit.
10496 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
10498 * gst/elements/gstcapsfilter.c:
10499 * gst/elements/gstfakesink.c:
10500 * gst/elements/gstfakesrc.c:
10501 * gst/elements/gstfdsink.c:
10502 * gst/elements/gstfdsrc.c:
10503 * gst/elements/gstfilesink.c:
10504 * gst/elements/gstfilesrc.c:
10505 * gst/elements/gstidentity.c:
10506 * gst/elements/gsttee.c:
10507 * gst/elements/gsttypefindelement.c:
10508 Make element details static.
10510 2005-09-28 Wim Taymans <wim@fluendo.com>
10512 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10513 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10514 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10515 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10516 (gst_bin_change_state), (gst_bin_dispose):
10517 Some documentation updates.
10518 Clean up dispose handlers.
10520 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
10521 * gst/gstpad.c: (gst_pad_dispose):
10522 Clean up dispose handler.
10524 * gst/gstpipeline.c: (gst_pipeline_change_state):
10525 Removed spurious UNLOCK.
10527 2005-09-27 Stefan Kost <ensonic@users.sf.net>
10529 * docs/gst/gstreamer-sections.txt:
10530 * gst/base/gstbasesrc.h:
10531 * gst/gstelement.h:
10535 * gst/gstpipeline.c:
10536 * gst/gstpipeline.h:
10539 added two new functions to the docs
10540 documents all undocumented GstXXXFlags
10541 completed some incomplete docs
10543 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
10545 * gst/gstbin.c: (gst_bin_dispose):
10546 * gst/gstelement.c: (gst_element_dispose):
10547 remove now useless and leaky resurrection code in dispose
10548 * gst/base/gstbasesrc.c: (gst_base_src_init):
10549 * gst/gstelementfactory.c: (gst_element_factory_create):
10550 * gst/gstobject.c: (gst_object_set_parent):
10553 2005-09-27 Wim Taymans <wim@fluendo.com>
10555 * docs/design/part-TODO.txt:
10558 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10559 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10560 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10561 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10562 (gst_bin_change_state):
10563 * gst/gstelement.h:
10564 Remove element variable, we keep element info in the iterator now.
10566 2005-09-27 Andy Wingo <wingo@pobox.com>
10568 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
10571 2005-09-27 Wim Taymans <wim@fluendo.com>
10573 * check/gst/gstbin.c: (GST_START_TEST):
10574 Enable check that works now.
10576 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10577 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10578 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10579 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10580 (gst_bin_change_state):
10582 Redid the state change algorithm using a topological sort algo.
10583 Handles all cases correctly.
10584 Exposed iterator for state change order.
10586 * gst/gstelement.h:
10587 Temp storage for state changes. Need to get rid of this soon.
10589 2005-09-27 Wim Taymans <wim@fluendo.com>
10591 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
10592 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
10593 (link_fold_func), (gst_pad_proxy_setcaps):
10594 Leak fixes, the fold functions need to unref the passed object and
10595 _get_parent_*() returns ref to parent.
10597 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
10599 * check/gst/gstbuffer.c: (test_make_writable):
10600 Plug leak in test case and fix 'make check-valgrind'
10602 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
10604 * gst/gstbuffer.c: (gst_subbuffer_init):
10605 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
10606 works correctly in all circumstances (we could have just copied
10607 the parent buffer's readonly flag, but conceptually it seems
10608 cleaner to mark all subbuffers as read-only). (based on patch
10609 by Alessandro Decina, #314710).
10611 * check/gst/gstbuffer.c: (create_read_only_buffer),
10612 (test_make_writable), (test_subbuffer_make_writable),
10614 Add some tests for gst_buffer_make_writable().
10616 2005-09-27 Wim Taymans <wim@fluendo.com>
10618 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
10619 use gst_object_has_ancestor().
10621 * gst/gstobject.c: (gst_object_has_ancestor):
10623 gst_object_has_ancestor() copied from gstbin.c as it is a
10626 * tests/instantiate/create.c: (create_all_elements):
10627 * tests/lat.c: (handoff_src), (handoff_sink):
10628 * tests/sched/runxml.c: (main):
10629 * tests/seeking/seeking1.c: (main):
10630 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
10632 Fix compilation of some tests.
10634 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
10637 Remove comment. GST_TYPE_G_ERROR is here to stay,
10638 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
10639 (#316961, #300610).
10641 2005-09-26 Wim Taymans <wim@fluendo.com>
10643 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
10644 Added check that shows error in state change order.
10646 2005-09-26 Wim Taymans <wim@fluendo.com>
10648 * gst/gstbin.c: (gst_bin_change_state):
10649 Make state change function use 3 queues again, we were
10650 adding elements in the wrong order.
10652 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
10655 * gst/gstpad.c: (gst_pad_dispose):
10656 Added some debug info first.
10658 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
10660 * docs/design/draft-push-pull.txt:
10661 * docs/design/part-events.txt:
10662 * docs/design/part-overview.txt:
10663 * docs/design/part-scheduling.txt:
10664 Replace all _pull_region() with _pull_range()
10666 2005-09-26 Andy Wingo <wingo@pobox.com>
10668 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
10670 * check/gst-libs/controller.c: Update for controller api change.
10673 * tests/Makefile.am:
10674 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
10675 over by GLib bug 118439.
10677 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
10678 routines to a function.
10680 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
10682 * libs/gst/controller/gsthelper.c:
10683 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
10684 (gst_object_sync_values): Renamed from sink_values. Ugh.
10686 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
10688 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
10689 Renamed from controller_key, as it is exported.
10691 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
10693 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
10698 * gst/gstpadtemplate.h:
10701 * gst/gstqueryutils.c:
10702 * gst/gstqueryutils.h:
10703 remove queryutils headers after moving the two used functions
10704 to gstquery. also fixes build problem for gstsiddec
10706 2005-09-26 Michael Smith <msmith@fluendo.com>
10708 * tools/gst-launch.1.in:
10709 Correct documentation in manpage of debug syntax
10711 2005-09-26 Wim Taymans <wim@fluendo.com>
10713 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
10714 (gst_base_src_is_seekable), (gst_base_src_change_state):
10715 Some more debugging info.
10717 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10719 * docs/gst/gstreamer-sections.txt:
10720 * gst/base/gstbasetransform.h:
10724 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10726 * docs/gst/.cvsignore:
10727 * docs/gst/tmpl/.cvsignore:
10728 * docs/gst/tmpl/gstpipeline.sgml:
10729 * docs/gst/tmpl/gstplugin.sgml:
10730 * gst/gstpipeline.c:
10733 inlined the last two docs files
10734 removed the tmpl directory from cvs (no more conflicts here!)
10736 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10738 * docs/gst/gstreamer-sections.txt:
10739 * docs/gst/tmpl/.cvsignore:
10740 * docs/gst/tmpl/gstpad.sgml:
10741 * docs/gst/tmpl/gstpadtemplate.sgml:
10743 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
10744 (gst_pad_finalize), (gst_pad_set_pad_template):
10746 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
10747 (gst_pad_template_class_init), (gst_pad_template_init),
10748 (gst_pad_template_dispose), (name_is_valid),
10749 (gst_static_pad_template_get), (gst_pad_template_new),
10750 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
10751 (gst_pad_template_pad_created):
10752 * gst/gstpadtemplate.h:
10753 inlined two more docs
10754 factored gstpadtemplate out of gstpad
10756 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
10758 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
10759 (test_children_state_change_order_semi_sink):
10760 Fix test case: we can't rely on a fixed state change order when
10761 going from READY => PAUSED because the sink might commit its
10762 new state first when the first buffer created by the source
10763 reaches the sink before the source has finished its change state.
10764 (Test case still fails at times, see #316856, comment 5 onwards)
10766 2005-09-24 Wim Taymans <wim@fluendo.com>
10768 * docs/design/part-events.txt:
10769 * docs/design/part-gstbus.txt:
10770 * docs/design/part-gstpipeline.txt:
10771 * docs/design/part-messages.txt:
10772 * docs/design/part-overview.txt:
10773 * docs/design/part-segments.txt:
10777 * gst/gstelement.c:
10780 * gst/gstiterator.c:
10781 Various documentation updates.
10783 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
10786 Well, that's embarassing. Luckily we weren't using
10787 GST_CLOCK_DIFF anywhere.
10789 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10791 * common/gtk-doc.mak:
10792 don't fail on building XML, FC4 slave shows a bunch of doc
10793 missing bits that I don't get
10795 * gst/gstpipeline.c:
10796 * gst/gststructure.c:
10799 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
10801 * docs/design/part-gstbin.txt:
10802 * docs/design/part-gstbus.txt:
10804 Add blurb about how the bus goes into flushing mode and
10805 drops all messages when its bin goes from READY into NULL
10808 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10810 * docs/gst/gstreamer-sections.txt:
10811 * gst/gststructure.c: (gst_structure_get_clock_time):
10812 * gst/gststructure.h:
10813 add a method to get a GstClockTime out of a structure
10815 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
10817 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
10818 (test_children_state_change_order_semi_sink), (gst_bin_suite):
10819 Added test to check state change order in bins (can still be made
10820 to fail here under heavy disk load; bails out with 'Push on pad
10821 fakesink:sink0, but it was not activated in push mode').
10823 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
10824 Fix state change order when there is only a semi sink (#316856)
10826 * gst/gstbus.c: (gst_bus_class_init):
10827 Use _class_peek_parent(), not _class_ref(); fix docs to say
10828 'default main context' instead of 'mainloop' where that is
10831 * gst/gstelement.c: (gst_element_commit_state),
10832 (gst_element_set_state):
10833 Fix typos in debug messages
10835 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10838 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
10839 * gst/gstpluginfeature.c:
10841 various doc updates
10842 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10843 change an assert into an error until it gets fixed properly
10845 2005-09-23 Stefan Kost <ensonic@users.sf.net>
10847 * docs/gst/gstreamer-sections.txt:
10848 * docs/gst/tmpl/.cvsignore:
10849 * docs/gst/tmpl/gstelement.sgml:
10850 * docs/gst/tmpl/gstinfo.sgml:
10851 * docs/gst/tmpl/gstobject.sgml:
10852 * gst/gstelement.c:
10853 * gst/gstelement.h:
10856 * gst/gstobject.c: (gst_object_class_init):
10858 inlined 3 more biiiig doc files and added some missing docs on the fly
10860 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10862 * check/gst/.cvsignore:
10863 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
10864 * gst/gstregistryxml.c: (load_plugin),
10865 (gst_registry_xml_save_plugin):
10866 put back source in registry. add checks for find_plugin.
10867 * testsuite/states/bin.c: (assert_state), (empty_bin),
10868 (test_adding_one_element), (main):
10869 * testsuite/states/locked.c: (main):
10870 some compile/run fixes
10872 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
10874 * check/gst/gstvalue.c: (GST_START_TEST):
10875 fix leaks in the test itself
10877 2005-09-22 Wim Taymans <wim@fluendo.com>
10879 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
10880 (gst_base_sink_send_event), (gst_base_sink_peer_query),
10881 (gst_base_sink_query):
10882 Prepare for more accurate position reporting and query
10885 * gst/gstelement.c: (gst_element_send_event),
10886 (gst_element_set_state):
10889 2005-09-22 Wim Taymans <wim@fluendo.com>
10891 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
10892 (gst_query_parse_segment):
10894 More documentation.
10895 Add segment query for future use.
10897 2005-09-22 Wim Taymans <wim@fluendo.com>
10899 * gst/gstbin.c: (gst_bin_add_func):
10900 Some more debug info.
10902 * gst/gstelement.c: (gst_element_send_event):
10903 Simplify send_event
10905 * gst/gstelement.h:
10906 Don't know how flags got broken.
10911 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
10913 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
10914 Add simplistic test suite for GST_TYPE_DATE serialisation and
10917 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
10919 * docs/gst/gstreamer-sections.txt:
10920 * gst/gststructure.c: (gst_structure_set_valist),
10921 (gst_structure_get_date):
10922 * gst/gststructure.h:
10923 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
10924 (gst_date_copy), (gst_value_compare_date),
10925 (gst_value_serialize_date), (gst_value_deserialize_date),
10926 (gst_value_transform_date_string),
10927 (gst_value_transform_string_date), (_gst_value_initialize):
10929 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
10930 bunch of utility functions along with a hack that checks that
10931 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
10932 is required. Part of the grand scheme in #170777.
10934 2005-09-22 Andy Wingo <wingo@pobox.com>
10936 * gst/gstconfig.h.in: Psych out gtk-doc.
10938 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
10940 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
10942 * tools/gst-inspect.c (print_element_list): Plug some
10943 inconsequential leaks.
10945 * gst/gstregistry.c (gst_registry_get_default): Doc.
10947 * check/gst/gstplugin.c:
10948 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
10949 * gst/gstelementfactory.c (gst_element_factory_create):
10950 * gst/gstindexfactory.c (gst_index_factory_create): Update for
10953 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
10954 (gst_plugin_feature_load): Doc, don't eat refs.
10956 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
10957 (gst_plugin_list_free): Doc.
10958 (gst_plugin_load_file): Doc updates.
10960 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
10961 accessors returning refcounted objects, return a ref.
10963 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
10964 accessor for caps. IDEMPOTENCE. Oh yes.
10966 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
10968 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
10970 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
10971 (_gst_debug_register_funcptr):
10972 Add mutex to serialise access to the hash table with
10973 the function pointer => function name string mapping;
10974 make that hash table static scope (#316809).
10976 * gst/registries/.cvsignore:
10977 Remove left-over file.
10979 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
10981 * docs/pwg/appendix-porting.xml:
10982 And something about newsegment events and caps-on-buffers to
10983 the porting guide (feel free to improve).
10985 2005-09-21 Andy Wingo <wingo@pobox.com>
10987 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
10988 data and event probes on the same pad.
10989 (test_buffer_probe_once): Test that removing probes from within
10990 the probe functions works.
10992 2005-09-21 Andy Wingo <wingo@pobox.com>
10994 * check/gst/gstutils.c: New file.
10995 (test_buffer_probe_n_times): A simple buffer probe test. More to
10998 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
10999 have-data::buffer, not have-data.
11000 (gst_pad_add_event_probe): Likewise for have-data::event.
11001 (gst_pad_add_data_probe): More docs. The part about 'resolving the
11002 peer' isn't quite right yet though.
11003 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
11004 (gst_pad_remove_data_probe): Change to take the guint handler_id
11005 as their arg, not the function+data, which is more glib-like.
11007 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
11008 the signal emission to indicate if the data is a buffer or an
11010 (gst_pad_get_type): Initialize buffer and event quarks.
11011 (gst_pad_class_init): have-data is now a detailed signal, yes it
11014 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
11016 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
11017 * gst/gstutils.c: (gst_util_set_value_from_string),
11018 (gst_util_set_object_arg):
11019 Don't put functional code in g_return_if_fail() or
11020 g_return_val_if_fail() statements, otherwise things will
11021 break when G_DISABLE_CHECKS is defined during compilation.
11023 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11025 * docs/gst/tmpl/.cvsignore:
11026 * docs/gst/tmpl/gstvalue.sgml:
11029 inlied another one and added some obvious docs
11031 2005-09-21 Wim Taymans <wim@fluendo.com>
11033 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11034 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
11035 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
11036 (gst_fdsrc_get_property), (gst_fdsrc_create):
11037 * gst/elements/gstfdsrc.h:
11038 Properly implement fdsrc. Removed signal and timeout,
11039 better implemented somewhere else.
11041 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11043 * docs/gst/tmpl/.cvsignore:
11044 * docs/gst/tmpl/gstimplementsinterface.sgml:
11045 * gst/gstinterface.c:
11048 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11050 * docs/gst/gstreamer-sections.txt:
11051 * docs/gst/tmpl/.cvsignore:
11052 * docs/gst/tmpl/gstenumtypes.sgml:
11053 remove obsolete doc file
11055 2005-09-21 David Schleef <ds@schleef.org>
11057 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
11058 little beer, fix a little leak.
11060 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11062 * docs/gst/gstreamer-docs.sgml:
11063 * docs/gst/gstreamer-sections.txt:
11064 * docs/gst/tmpl/.cvsignore:
11068 * gst/gstelement.h:
11069 * gst/gstindex.c: (gst_index_class_init):
11071 * gst/gstindexfactory.c: (gst_index_factory_get_type),
11072 (gst_index_factory_class_init), (gst_index_factory_init),
11073 (gst_index_factory_finalize), (gst_index_factory_new),
11074 (gst_index_factory_destroy), (gst_index_factory_find),
11075 (gst_index_factory_create), (gst_index_factory_make):
11076 * gst/gstindexfactory.h:
11077 * gst/gstpluginfeature.c:
11078 * gst/gstpluginfeature.h:
11079 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11080 more docs inlined, splitted gstindex.{c,h}
11082 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11084 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11087 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
11089 * gst/elements/gstfilesink.c: (gst_file_sink_init):
11090 Set sync to FALSE by default.
11092 2005-09-20 Wim Taymans <wim@fluendo.com>
11094 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11095 (gst_base_sink_init):
11096 Make sync property settable from subclass.
11098 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
11099 (gst_fake_sink_change_state):
11100 Set sync to FALSE by default.
11102 2005-09-20 Wim Taymans <wim@fluendo.com>
11104 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
11105 * tools/gst-launch.c: (main):
11106 The timeout handler should have lower priority than the source
11107 so we don't timeout before popping a message with 0 timeout.
11108 Dump error messages after failed state change.
11110 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
11112 * tools/gst-inspect.c: (print_element_properties_info):
11115 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11117 * check/gst/gstevent.c:
11118 * gst/elements/gstfakesink.c:
11119 * gst/elements/gstfakesink.h:
11120 remove the sync property from fakesink.
11121 has the side effect of setting sync TRUE
11122 for fakesink, which is a change. Anyone who knows how
11123 to fix this nicely in a GObject-y way, feel free.
11125 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11127 * docs/gst/gstreamer-docs.sgml:
11128 remove probe refsection
11130 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11132 * check/Makefile.am:
11133 disable valgrinding the controller test again
11134 * docs/gst/gstreamer-sections.txt:
11135 update for api-changes
11137 2005-09-20 Wim Taymans <wim@fluendo.com>
11139 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11140 (gst_base_sink_set_property), (gst_base_sink_get_property),
11141 (gst_base_sink_do_sync):
11142 * gst/base/gstbasesink.h:
11143 Added sync property to basesink to disable clock sync.
11145 2005-09-20 Andy Wingo <wingo@pobox.com>
11147 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
11148 eating the caller's refcount.
11150 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
11151 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
11154 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
11155 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
11156 of GLib 2.8 public, so we can know which refcount to check in
11159 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
11160 (gst_object_init): Only set the gst refcount if we're going ahead
11161 with the refcount hack.
11163 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11165 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
11166 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11167 more leaks plumbed, added more debug-logging
11171 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11173 * gst/gstmessage.c:
11174 remove include of gstmemchunk.h
11176 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11178 * gst/gstclock.c: (_gst_clock_id_free):
11179 Commit from the Political Party For More Atomic CVS Commits,
11180 so that people don't waste too much of their day fishing
11181 out obvious leaks out of massive commits.
11182 Oh, and fix a pretty damn obvious leak in the memchunk
11185 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11187 * check/Makefile.am:
11188 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
11189 plug mem-leak, re-add to valgrindable tests
11191 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11194 unbreak the build for those who have chronic arthritis
11195 and typing "make check" is just too taxing on the hands
11197 2005-09-20 Andy Wingo <wingo@pobox.com>
11199 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
11200 really want it out, you should fix plugins at the same time.
11202 2005-09-19 Stefan Kost <ensonic@users.sf.net>
11205 * docs/gst/gstreamer-sections.txt:
11207 added missing symbols to api docs
11208 disable ref-count hack if we have glib >= 2.8
11210 2005-09-19 David Schleef <ds@schleef.org>
11212 * docs/gst/Makefile.am: Ignore a few more internal headers
11213 * docs/gst/gstreamer-docs.sgml: Remove old sections
11214 * docs/gst/gstreamer-sections.txt: Remove old sections
11215 * docs/gst/tmpl/gstobject.sgml: update
11216 * docs/gst/tmpl/gstplugin.sgml: update
11217 * docs/gst/tmpl/gstpluginfeature.sgml: update
11218 * docs/random/ds/0.9-suggested-changes: update.
11219 * gst/Makefile.am: remove memchunk and trashstack, since they're
11221 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
11222 * gst/gst.h: don't include some headers
11223 * gst/gstchildproxy.c: add gstmarshal.h
11224 * gst/gstclock.c: Don't use memchunks
11225 * gst/gstminiobject.c: Add some docs
11226 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
11227 * gst/gstobject.h: same
11228 * gst/gstplugin.c: include gstmacros.h
11229 * gst/gstplugin.h: don't include gstmacros.h, since it's private
11230 * gst/gstquery.c: don't use memchunks
11231 * gst/gstregistry.c: rename gst_registry_deinit()
11232 * gst/gstregistry.h: same
11234 2005-09-19 David Schleef <ds@schleef.org>
11236 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
11237 * docs/libs/gstreamer-libs-sections.txt:
11238 * docs/libs/tmpl/gstgetbits.sgml:
11239 * docs/libs/tmpl/gstputbits.sgml:
11241 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
11243 * win32/gstenumtypes.c:
11244 * win32/gstenumtypes.h:
11247 2005-09-19 Wim Taymans <wim@fluendo.com>
11249 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
11250 Automatically PAUSE and RESUME a pipeline when a flushing seek
11253 2005-09-19 Andy Wingo <wingo@pobox.com>
11255 * gst/gstregistry.h: Spacing fixen.
11257 2005-09-19 Wim Taymans <wim@fluendo.com>
11259 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
11260 Handle state change failure more correctly.
11262 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11264 * check/Makefile.am:
11265 * check/pipelines/cleanup.c: (run_pipeline):
11266 * check/pipelines/simple_launch_lines.c: (run_pipeline),
11268 enable cleanup again after fixing the leak
11270 some more info on docs
11272 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11274 * check/Makefile.am:
11275 re-enable tests now that leaks are plugged
11277 * check/gst/gstbin.c:
11278 * check/gst/gstpipeline.c:
11279 add some more tests while fixing leaks
11280 * common/check.mak:
11281 make sure binaries are uptodate when valgrinding/gdbing
11283 * gst/gstelementfactory.c:
11284 remove a ref too many, and add a FIXME for when we get
11285 round to disposing of classes
11287 fix the refcounting when loading a plugin from a file and
11288 the code pretends that the pointer is the same even though
11289 of course it can change
11290 * gst/gstpluginfeature.c:
11291 unref plugins marked cached (a bit confusing as a name)
11292 as the docs state should be done
11293 various doc additions to explain refcounting
11294 * gst/gstregistry.c:
11295 * gst/gstregistryxml.c:
11298 2005-09-19 Wim Taymans <wim@fluendo.com>
11300 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
11301 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
11302 (send_messages), (GST_START_TEST), (gstbus_suite):
11303 * check/gst/gstpipeline.c: (GST_START_TEST):
11304 * check/pipelines/cleanup.c: (run_pipeline):
11305 * check/pipelines/simple_launch_lines.c: (run_pipeline),
11307 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
11308 (gst_bus_source_check), (gst_bus_source_dispatch),
11309 (gst_bus_create_watch), (gst_bus_add_watch_full),
11310 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
11312 * tools/gst-launch.c: (event_loop):
11313 * tools/gst-md5sum.c: (event_loop):
11314 GstBusHandler -> GstBusFunc, return value has the same meaning as
11315 any other GSource (FALSE == remove source).
11316 _add_watch() and _add_watch_full() now take a MessageType mask to
11317 only handle specific types of messages.
11318 _poll() returns the GstMessage instead of the message type to avoid
11320 _have_pending() takes a MessageType mask now too.
11321 Added testsuite for multiple bus watches.
11322 Fix testsuites and applications for new bus API.
11324 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11326 * check/Makefile.am:
11327 mark a bunch of the tests as to fix until we fix them
11329 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11331 * common/check.mak:
11332 use GST_PLUGIN settings for valgrind tests as well, so we're
11333 valgrinding the correct thing
11334 * gst/gst.c: (init_post):
11337 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11339 * gst/gst.c: (init_post), (gst_deinit):
11340 * gst/gstelementfactory.c: (gst_element_factory_class_init),
11341 (gst_element_factory_finalize), (gst_element_factory_cleanup):
11342 * gst/gstindex.c: (gst_index_factory_class_init),
11343 (gst_index_factory_finalize):
11344 * gst/gstobject.c: (gst_object_dispose):
11345 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
11346 (gst_plugin_load_file), (gst_plugin_desc_free):
11347 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
11348 (gst_plugin_feature_finalize):
11349 * gst/gstregistry.c: (gst_registry_class_init),
11350 (gst_registry_init), (gst_registry_finalize),
11351 (gst_registry_get_default), (gst_registry_deinit):
11352 * gst/gstregistry.h:
11353 * gst/gstregistryxml.c: (load_feature), (load_plugin):
11354 various cleanups and memleak plugging. make valgrind is happy now.
11356 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11358 * common/check.mak:
11359 add a check-valgrind target
11361 2005-09-18 David Schleef <ds@schleef.org>
11363 * tools/gst-inspect.c: Revert the GOption code.
11365 2005-09-17 David Schleef <ds@schleef.org>
11367 * check/Makefile.am: Fix environment variables.
11368 * check/gst/gstplugin.c: Fix for API changes.
11369 * tools/gst-inspect.c: Fix for API changes.
11370 * tools/gst-xmlinspect.c: Fix for API changes.
11371 * gst/gstelementfactory.c:
11374 * gst/gstpluginfeature.c:
11375 * gst/gstpluginfeature.h:
11376 * gst/gstregistry.c:
11377 * gst/gstregistry.h:
11378 * gst/gstregistryxml.c:
11379 * gst/gsttypefind.c:
11380 * gst/gsttypefindfactory.c:
11381 * gst/indexers/gstfileindex.c:
11382 * gst/indexers/gstmemindex.c:
11383 * gst/schedulers/Makefile.am:
11384 Change registry to keep track of both plugins and features,
11385 removing the feature tracking from plugins themselves.
11387 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
11389 * check/Makefile.am:
11390 * tools/gst-register.1.in:
11391 remove gst-register
11393 2005-09-15 David Schleef <ds@schleef.org>
11395 * check/gst/gstplugin.c:
11396 * gst/gstelementfactory.c:
11398 * gst/gstpluginfeature.c:
11399 * gst/gstregistry.c:
11400 Getting tired of debugging. Disabled all the unreffing of
11401 plugins and features, which fixes the segfaults, but of
11402 course leaks like crazy. At least playbin works.
11404 2005-09-15 David Schleef <ds@schleef.org>
11406 * check/gst/gstplugin.c: (register_check_elements),
11407 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
11409 * gst/elements/gsttypefindelement.c: Fix refcounting.
11410 * gst/gsttypefind.c:
11411 * gst/gsttypefindfactory.c:
11412 * gst/gsttypefindfactory.h:
11414 2005-09-15 David Schleef <ds@schleef.org>
11416 * gst/gstindex.c: get refcounting correct.
11417 * gst/gstregistry.c: Handle the case where a feature/plugin is
11420 2005-09-15 David Schleef <ds@schleef.org>
11422 * check/Makefile.am:
11423 * check/gst/gstplugin.c: Add test
11424 * gst/gstplugin.c: Fix problems noticed by testsuite
11426 * gst/gstregistry.c:
11427 * gst/gstregistry.h:
11429 2005-09-15 David Schleef <ds@schleef.org>
11431 * gst/gstplugin.c: Implement semi-decent recounting and locking
11432 in plugins and plugin features.
11434 * gst/gstpluginfeature.c:
11435 * gst/gstpluginfeature.h:
11436 * gst/gstregistry.c:
11438 2005-09-15 Michael Smith <msmith@fluendo.com>
11440 * gst/gstregistry.c: (gst_registry_get_feature_list):
11441 Implement this. Makes oggdemux work; decodebin still broken.
11443 2005-09-14 David Schleef <ds@schleef.org>
11445 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
11447 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
11448 * gst/check/Makefile.am:
11449 * libs/gst/controller/Makefile.am:
11450 * libs/gst/dataprotocol/Makefile.am:
11452 2005-09-14 David Schleef <ds@schleef.org>
11454 * configure.ac: Remove getbits library. Nothing uses it, and
11455 it should be in something like liboil if someone did want
11457 * libs/gst/Makefile.am:
11458 * libs/gst/getbits/Makefile.am:
11459 * libs/gst/getbits/gbtest.c:
11460 * libs/gst/getbits/getbits.c:
11461 * libs/gst/getbits/getbits.h:
11462 * libs/gst/getbits/gstgetbits_generic.c:
11463 * libs/gst/getbits/gstgetbits_i386.s:
11464 * libs/gst/getbits/gstgetbits_inl.h:
11466 2005-09-14 David Schleef <ds@schleef.org>
11468 * gst/Makefile.am: Dist glib-compat.h
11470 2005-09-14 David Schleef <ds@schleef.org>
11472 * configure.ac: Remove gst/registries, since it's no longer used.
11473 * gst/registries/Makefile.am:
11474 * gst/registries/gstlibxmlregistry.c:
11475 * gst/registries/gstlibxmlregistry.h:
11476 * gst/registries/gstxmlregistry.c:
11477 * gst/registries/gstxmlregistry.h:
11478 * gst/registries/registrytest.c:
11480 2005-09-14 David Schleef <ds@schleef.org>
11482 * gst/glib-compat.h:
11483 * gst/gstregistryxml.c:
11484 Convergence is near. Seriously.
11486 2005-09-14 David Schleef <ds@schleef.org>
11488 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11489 * gst/glib-compat.h:
11490 Attempt #4 to appease the buildbots.
11492 2005-09-14 David Schleef <ds@schleef.org>
11494 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11497 2005-09-14 David Schleef <ds@schleef.org>
11499 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11502 2005-09-14 David Schleef <ds@schleef.org>
11504 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
11507 2005-09-14 David Schleef <ds@schleef.org>
11509 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11510 * gst/glib-compat.h: Add some functions that are in newer versions
11511 of glib than we care to require.
11512 * gst/gstregistryxml.c: Use them.
11514 2005-09-14 David Schleef <ds@schleef.org>
11516 * po/POTFILES.in: remove gst-register.c
11518 2005-09-14 David Schleef <ds@schleef.org>
11520 * docs/gst/gstreamer-docs.sgml:
11521 * docs/gst/gstreamer-sections.txt:
11522 * docs/gst/gstreamer.types:
11523 * docs/gst/tmpl/gstelement.sgml:
11524 * docs/gst/tmpl/gstplugin.sgml:
11525 * docs/gst/tmpl/gstpluginfeature.sgml:
11526 Documentation updates for registry changes.
11528 2005-09-14 David Schleef <ds@schleef.org>
11530 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
11531 because we don't require glib-2.8.
11533 2005-09-14 David Schleef <ds@schleef.org>
11535 * gst/gstregistryxml.c: Added. Essentially moved out of the
11536 registries directory.
11538 2005-09-14 David Schleef <ds@schleef.org>
11540 * check/Makefile.am:
11541 * check/generic/states.c:
11545 * gst/gst_private.h:
11546 * gst/gstelementfactory.c:
11551 * gst/gstpluginfeature.c:
11552 * gst/gstpluginfeature.h:
11553 * gst/gstregistry.c:
11554 * gst/gstregistry.h:
11555 * gst/gstregistrypool.c: remove
11556 * gst/gstregistrypool.h: remove
11557 * gst/gsttypefind.c:
11558 * gst/gsttypefindfactory.c:
11560 * tools/Makefile.am:
11561 * tools/gst-compprep.c:
11562 * tools/gst-inspect.c:
11563 * tools/gst-register.c: remove
11564 * tools/gst-xmlinspect.c:
11565 Registry rewrite. Changes registry from being a file created
11566 by a tool into a simple cache file created automatically by
11567 libgstreamer. Removed gst-register (because it's no longer
11568 needed). Remove registry pools, because we only have one
11569 registry implementation (XML). Fix up other subsystems as
11572 2005-09-13 Michael Smith <msmith@fluendo.com>
11574 * gst/gstconfig.h.in:
11575 Don't Use windows linking attributes for MinGW. Fixes #316157
11577 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
11579 * gst/gstutils.c: (set_state_async_thread_func),
11580 (gst_element_set_state_async):
11581 Apparently people think it's better if this function doesn't
11582 try to set the state to whatever state was asked for on the first
11583 call to this function for any object. Seriously.
11585 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
11587 * check/gst/gstpipeline.c: (GST_START_TEST):
11588 * docs/gst/gstreamer-sections.txt:
11589 * gst/gstutils.c: (set_state_async_thread_func),
11590 (gst_element_set_state_async):
11592 add a "gst_element_set_state_async" method that
11593 sets the state and starts a thread to make sure the state
11594 change completes as best as it can
11596 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
11598 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
11599 codify design+behaviour in testsuite after discussion
11601 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
11603 * docs/gst/tmpl/gstelement.sgml:
11604 * docs/manual/appendix-quotes.xml:
11606 * gst/gstelement.c: (gst_element_set_state):
11609 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
11611 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
11612 (gst_base_transform_prepare_output_buf),
11613 (gst_base_transform_handle_buffer):
11614 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
11615 (gst_capsfilter_prepare_buf):
11616 Remove the requirement for sub-classes to call the parent
11617 implementation of prepare_output_buffer with a wrapper function.
11619 * gst/gsttaglist.h:
11620 * gst/gsttagsetter.h:
11621 Fix #define wrapper
11623 2005-09-11 Stefan Kost <ensonic@users.sf.net>
11625 * docs/gst/gstreamer-sections.txt:
11628 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
11630 * docs/gst/gstreamer-sections.txt:
11631 * docs/gst/tmpl/gstelement.sgml:
11632 * docs/gst/tmpl/gstplugin.sgml:
11633 * gst/gstminiobject.c:
11635 docs now stop throwing warnings
11637 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
11639 * docs/gst/gstreamer-sections.txt:
11640 * docs/gst/gstreamer.types:
11641 * docs/gst/tmpl/gstpad.sgml:
11642 * docs/gst/tmpl/gsttypes.sgml:
11643 * gst/base/gstadapter.h:
11644 * gst/base/gstbasesink.h:
11645 * gst/base/gstbasesrc.h:
11651 * gst/gstelement.h:
11653 * gst/gstmessage.h:
11655 * gst/gststructure.c:
11656 * gst/registries/gstlibxmlregistry.h:
11657 various documentation fixes
11659 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
11661 * docs/gst/gstreamer-sections.txt:
11662 * docs/gst/tmpl/gstvalue.sgml:
11663 rearrange gstvalue section
11664 * gst/gstutils.c: (gst_element_state_get_name):
11666 * gst/gstvalue.c: (_gst_value_initialize):
11670 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
11672 * check/gst-libs/controller.c:
11673 Header include fix.
11674 * gst/base/gstbasetransform.c:
11675 (gst_base_transform_default_prepare_buf),
11676 (gst_base_transform_handle_buffer):
11677 * gst/base/gstbasetransform.h:
11678 Some more basetransform changes and fixes to enable sub-classes
11679 that modify buffer metadata only.
11680 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
11681 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
11682 (gst_capsfilter_prepare_buf):
11683 If the output pad has fixed allowed caps and input buffers
11684 don't have any, set the fixed caps on outgoing buffers.
11686 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
11687 * check/elements/identity.c: (GST_START_TEST):
11688 Make the error a little clearer when the test fails because
11689 identity made a copy of the buffer.
11690 * docs/gst/gstreamer-sections.txt:
11691 New symbols in gstbasetransform.h
11692 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
11693 (gst_base_transform_init), (gst_base_transform_transform_size),
11694 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
11695 (gst_base_transform_default_prepare_buf),
11696 (gst_base_transform_get_unit_size),
11697 (gst_base_transform_buffer_alloc),
11698 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
11699 (gst_base_transform_change_state),
11700 (gst_base_transform_set_passthrough),
11701 (gst_base_transform_set_in_place),
11702 (gst_base_transform_is_in_place):
11703 * gst/base/gstbasetransform.h:
11704 Change BaseTransform to separate in_place operate from same_caps
11705 output. in_place implies that the element can perform the transform
11706 on incoming buffers in-place, even if the caps on the output are
11708 Sub-class elements can now implement special buffer allocation
11709 methods for outgoing buffers if they wish to.
11710 Big documentation addition.
11711 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
11712 * gst/elements/gstelements.c:
11713 Changes for basetransform modifications.
11714 * gst/elements/Makefile.am:
11715 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
11716 Compile fix. Extra debug output.
11718 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11720 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
11722 add tests for valid pad naming
11723 * gst/check/gstcheck.c: (gst_check_log_message_func),
11724 (gst_check_log_critical_func):
11726 remove printing of code, it is fragile when the code contains
11727 % and the line number is enough info
11728 * gst/check/gstcheck.h:
11729 * gst/gstpad.c: (gst_pad_template_new):
11732 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11735 say what CHECK flags we use
11736 * docs/libs/gstreamer-libs.types:
11737 * libs/gst/controller/Makefile.am:
11738 * libs/gst/controller/gst-controller.c:
11739 * libs/gst/controller/gst-controller.h:
11740 * libs/gst/controller/gst-helper.c:
11741 * libs/gst/controller/gst-interpolation.c:
11742 * libs/gst/controller/gstcontroller.c:
11743 * libs/gst/controller/gsthelper.c:
11744 * libs/gst/controller/gstinterpolation.c:
11745 * tools/gst-inspect.c: (print_plugin_info):
11746 we don't use dashes in header names
11748 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11750 * check/Makefile.am:
11751 * check/gst/.cvsignore:
11752 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
11753 (gst_pipeline_suite), (main):
11754 adding a test for pipelines and state changes
11755 * gst/gstutils.c: (get_state_func):
11757 * gstreamer.spec.in:
11760 2005-09-08 Michael Smith <msmith@fluendo.com>
11762 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
11763 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
11764 (gst_file_src_is_seekable), (gst_file_src_get_size),
11765 (gst_file_src_start):
11766 * gst/elements/gstfilesrc.h:
11767 Various fixes for unseekable, unmmapable, and non-normal files, so
11768 that fallback to read() rather than mmap() works.
11769 * gst/gstevent.c: (gst_event_new_newsegment):
11770 Allow newsegment events with segment_start == segment_end, as will
11771 correctly happen if you use filesrc on a zero-size file, for
11774 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
11776 * gst/gstplugin.c: (gst_plugin_load_file):
11777 Call g_module_close when we don't load the module
11779 * gst/registries/gstlibxmlregistry.c:
11780 (gst_xml_registry_get_property):
11781 Port leak fix from 0.8
11783 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11785 * docs/gst/gstreamer-docs.sgml:
11786 * docs/gst/tmpl/.cvsignore:
11787 * docs/gst/tmpl/gsttrace.sgml:
11788 * docs/gst/tmpl/gsttrashstack.sgml:
11791 * gst/gstelement.h:
11793 * gst/gstmessage.c:
11794 * gst/gstmessage.h:
11797 * gst/gsttaginterface.c:
11798 * gst/gsttaginterface.h:
11799 * gst/gsttaglist.c:
11800 * gst/gsttaglist.h:
11801 * gst/gsttagsetter.c:
11802 * gst/gsttagsetter.h:
11805 * gst/gsttrashstack.c:
11806 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
11807 inlined docs for gsttrace, gsttrashstack
11809 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11812 * gst/elements/gstbufferstore.h:
11813 * gst/elements/gsttypefindelement.c:
11814 * gst/elements/gsttypefindelement.h:
11816 * gst/gsttypefind.c:
11817 * gst/gsttypefind.h:
11818 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
11819 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
11820 (gst_type_find_factory_dispose),
11821 (gst_type_find_factory_unload_thyself),
11822 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
11823 (gst_type_find_factory_get_caps),
11824 (gst_type_find_factory_get_extensions),
11825 (gst_type_find_factory_call_function):
11826 * gst/gsttypefindfactory.h:
11827 * gst/registries/gstlibxmlregistry.c:
11828 * gst/registries/gstxmlregistry.c:
11829 splitted gsttypefind into gsttypefind, gsttypefindfactory
11831 2005-09-07 Andy Wingo <wingo@pobox.com>
11833 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
11834 condition whereby the pad's task function is entered before the
11835 pad_mode variable was set.
11837 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
11839 * gst/gstpad.c: (gst_pad_alloc_buffer):
11840 Catch misbehaving pad_alloc functions that don't
11841 set up caps and do it for them.
11843 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11845 * check/pipelines/simple_launch_lines.c: (run_pipeline):
11846 test for pipe!=NULL
11847 * docs/gst/tmpl/.cvsignore:
11848 * docs/gst/tmpl/gstmemchunk.sgml:
11849 * docs/gst/tmpl/gstparse.sgml:
11850 * docs/gst/tmpl/gsttaglist.sgml:
11851 * docs/gst/tmpl/gsttagsetter.sgml:
11852 * docs/gst/tmpl/gsttypefind.sgml:
11853 * docs/gst/tmpl/gsttypefindfactory.sgml:
11854 * gst/gstmemchunk.c:
11857 * gst/gsttaginterface.c:
11858 * gst/gsttypefind.c:
11859 * gst/gsttypefind.h:
11862 === release 0.9.2 ===
11864 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
11869 releasing 0.9.2, "South"
11871 2005-09-05 Andy Wingo <wingo@pobox.com>
11873 * gst/registries/gstxmlregistry.h:
11874 * gst/registries/gstxmlregistry.c: Um... resurrect...
11876 * gst/registries/gstxmlregistry.h:
11877 * gst/registries/gstxmlregistry.c: and update to newer API.
11878 Incidentally they should be a bit faster now that they don't have
11881 2005-09-05 Andy Wingo <wingo@pobox.com>
11883 * gst/registries/gstxmlregistry.h:
11884 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
11885 replaced by the libxml registry a while back
11887 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
11889 * docs/gst/tmpl/gstplugin.sgml:
11890 * gst/elements/gstelements.c:
11892 * gst/gstplugin.c: (gst_plugin_register_func),
11893 (gst_plugin_desc_copy), (gst_plugin_desc_free),
11894 (gst_plugin_get_source):
11896 * gst/registries/gstlibxmlregistry.c: (load_plugin),
11897 (gst_xml_registry_save_plugin):
11898 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
11899 (gst_xml_registry_save_plugin):
11900 * tools/gst-inspect.c: (print_plugin_info):
11901 add a "source" plugin description field, to represent the source
11902 module this plugin is a part of. By default GST_PLUGIN_DEFINE
11903 will set it to PACKAGE, which is automake's idea of the name of
11904 the source project.
11906 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
11911 * docs/Makefile.am:
11912 * docs/faq/Makefile.am:
11913 * docs/gst/tmpl/gstelement.sgml:
11914 * docs/gst/tmpl/gsttypes.sgml:
11915 * docs/htmlinstall.mak:
11916 * docs/manual/Makefile.am:
11917 * docs/pwg/Makefile.am:
11918 reorganize doc build a little
11919 split out docbook and gtk-doc stuff
11920 have two separate --enable's and enable them through autogen
11921 but disable by default in configure (to be similar to other
11923 * gstreamer.spec.in:
11924 clean up docs install
11942 translation updates
11944 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
11946 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
11949 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
11950 (gst_fake_sink_change_state):
11951 Make state change function thread-safe.
11953 * gst/gstpad.c: (gst_pad_alloc_buffer):
11954 Set offset on generic buffer allocated by fallback.
11956 2005-09-03 Stefan Kost <ensonic@users.sf.net>
11958 * docs/gst/gstreamer-sections.txt:
11959 * docs/gst/tmpl/gstelement.sgml:
11961 * libs/gst/controller/gst-controller.c:
11962 (gst_controlled_property_set_interpolation_mode),
11963 (gst_controlled_property_new),
11964 (gst_controller_find_controlled_property):
11965 run the wingo-magic script against the docs
11967 2005-09-02 Stefan Kost <ensonic@users.sf.net>
11969 * docs/gst/gstreamer-docs.sgml:
11970 * docs/gst/gstreamer-sections.txt:
11971 * docs/gst/tmpl/.cvsignore:
11972 * docs/gst/tmpl/gstelementdetails.sgml:
11973 * docs/gst/tmpl/gstelementfactory.sgml:
11976 * gst/gstelementfactory.c:
11977 * gst/gstelementfactory.h:
11978 merged elementdetails docs into elementfactory docs
11981 2005-09-02 Andy Wingo <wingo@pobox.com>
11983 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
11984 consider this enum an enum and not a flags.
11986 2005-09-02 Stefan Kost <ensonic@users.sf.net>
11988 * docs/gst/gstreamer-docs.sgml:
11989 * docs/gst/tmpl/.cvsignore:
11990 * docs/gst/tmpl/gstghostpad.sgml:
11991 * docs/gst/tmpl/gstiterator.sgml:
11992 * docs/gst/tmpl/gstmacros.sgml:
11993 * docs/gst/tmpl/gstrealpad.sgml:
11994 * docs/gst/tmpl/gstregistry.sgml:
11995 * docs/gst/tmpl/gstregistrypool.sgml:
11996 * docs/gst/tmpl/gststructure.sgml:
11997 * docs/gst/tmpl/gstsystemclock.sgml:
11998 * docs/gst/tmpl/gsttrace.sgml:
11999 * gst/gstghostpad.c:
12001 * gst/gstmemchunk.c:
12002 * gst/gstmemchunk.h:
12004 * gst/gstregistry.c:
12005 * gst/gstregistrypool.c:
12006 * gst/gststructure.c:
12007 * gst/gstsystemclock.c:
12010 2005-09-02 Andy Wingo <wingo@pobox.com>
12012 * gst/gstelement.h (GstState): Renamed from GstElementState,
12013 changed to be a normal enum instead of flags.
12014 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
12015 munged to be GST_STATE_CHANGE_*.
12016 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
12017 work with the new state representation.
12018 (GstStateChange): New enumeration of possible state transitions.
12019 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
12020 (GstElementClass::change_state): Pass the GstStateChange along as
12021 an argument. Helps language bindings, so they don't have to use
12022 tricky lock-needing macros like GST_STATE_CHANGE ().
12024 * scripts/update-states (file): New script. Run it on a file to
12025 update it for state naming and API changes. Updates files in
12028 * All files updated for the new API.
12030 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
12032 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
12033 * gst/gstutils.c: (gst_util_set_value_from_string),
12034 (gst_util_set_object_arg):
12035 fix a bunch of unchecked return values
12036 * tools/gst-complete.c: (main):
12037 * gstreamer.spec.in:
12040 2005-09-01 Wim Taymans <wim@fluendo.com>
12042 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12043 (gst_base_sink_event), (gst_base_sink_do_sync),
12044 (gst_base_sink_handle_event):
12045 * gst/base/gstbasesink.h:
12046 Handle newsegments more correctly.
12051 * gst/gstevent.c: (gst_event_new_newsegment):
12052 A newsegment cannot have a start_time of -1
12054 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
12056 * win32/gstenumtypes.c:
12057 * win32/gstenumtypes.h:
12060 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12062 * libs/gst/controller/gst-controller.c:
12063 (gst_controlled_property_set_interpolation_mode),
12064 (gst_controlled_property_new):
12065 fixed boolean again
12067 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
12069 * docs/faq/gst-uninstalled:
12074 * gst/gstutils.c: (gst_element_link_filtered):
12076 add gst_element_link_filtered
12078 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12080 * docs/gst/gstreamer-docs.sgml:
12081 * docs/gst/gstreamer-sections.txt:
12082 * docs/gst/tmpl/.cvsignore:
12083 * docs/gst/tmpl/gsterror.sgml:
12084 * docs/gst/tmpl/gstfilter.sgml:
12085 * docs/gst/tmpl/gsturihandler.sgml:
12086 * docs/gst/tmpl/gsturitype.sgml:
12087 * docs/gst/tmpl/gstutils.sgml:
12088 * docs/gst/tmpl/gstxml.sgml:
12093 * gst/gsturitype.c:
12096 inlined more docs, fixed double id-ref
12098 2005-08-31 Wim Taymans <wim@fluendo.com>
12100 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12101 (gst_base_transform_handle_buffer):
12102 Passthrough elements don't need the caps as they don't care.
12104 2005-08-31 Wim Taymans <wim@fluendo.com>
12106 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12107 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
12108 Don't leak refcounts on buffers.
12110 2005-08-31 Wim Taymans <wim@fluendo.com>
12112 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
12113 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
12114 (gst_base_transform_chain), (gst_base_transform_change_state):
12115 * gst/base/gstbasetransform.h:
12116 Handle the case where we are not negotiated more gracefully.
12118 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
12120 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
12121 (gst_file_src_map_region):
12122 Set READONLY flag on mmap'ed buffers, otherwise
12123 gst_buffer_make_writable() won't work properly (#314708).
12125 2005-08-31 Wim Taymans <wim@fluendo.com>
12127 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
12128 passthrough elements can even do inplace on non writable
12129 buffers (as they don't touch them).
12131 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12133 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
12134 (gst_test_mono_source_set_property),
12135 (gst_test_mono_source_class_init), (GST_START_TEST),
12136 (gst_controller_suite):
12137 more tests (hehe I have the most)
12139 describe popping messages whenusing mulltiple sources
12140 * libs/gst/controller/gst-controller.c:
12141 (gst_controlled_property_set_interpolation_mode),
12142 (gst_controlled_property_new):
12143 * libs/gst/controller/gst-controller.h:
12144 * libs/gst/controller/gst-interpolation.c:
12145 implement boolean properties
12147 2005-08-31 Wim Taymans <wim@fluendo.com>
12149 * gst/gstminiobject.c: (gst_mini_object_ref):
12150 Cannot assert that the refcount has to be positive
12151 since a disposed object can be resurrected.
12153 2005-08-31 Wim Taymans <wim@fluendo.com>
12155 * gst/gstpad.c: (gst_pad_init):
12156 Revert change, need to first fix badly behaving
12159 2005-08-30 Wim Taymans <wim@fluendo.com>
12161 * check/elements/fakesrc.c: (setup_fakesrc):
12162 * check/elements/identity.c: (setup_identity):
12163 Activate pads before using them.
12165 2005-08-30 Wim Taymans <wim@fluendo.com>
12167 * gst/base/gstadapter.c: (gst_adapter_flush):
12168 Flushing out 0 bytes is ok for this function.
12170 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12171 no newsegment gives a warning and sets the start/stop to
12174 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
12175 (gst_base_transform_set_passthrough):
12178 * gst/gstminiobject.c: (gst_mini_object_ref):
12179 Check refcount here too.
12181 * gst/gstpad.c: (gst_pad_init):
12182 Pads are initially flushing and refusing data.
12184 * gst/gstutils.c: (gst_element_link_pads_filtered):
12185 When adding a capsfilter element make sure it has the
12186 same state as the parent bin.
12188 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12190 * docs/gst/tmpl/.cvsignore:
12191 * docs/gst/tmpl/gstformat.sgml:
12192 * docs/gst/tmpl/gstversion.sgml:
12196 * gst/gstversion.h.in:
12197 more docs and two more inlined
12199 2005-08-30 Wim Taymans <wim@fluendo.com>
12201 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
12202 Don't sync to clock.
12204 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12206 * docs/gst/gstreamer-sections.txt:
12207 ultral33t func10ns deserve to appear in the docs actually
12208 * docs/gst/tmpl/.cvsignore:
12209 * docs/gst/tmpl/gstcompat.sgml:
12210 * docs/gst/tmpl/gstconfig.sgml:
12211 * gst/check/gstcheck.c:
12213 * gst/gstconfig.h.in:
12216 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12218 * docs/gst/tmpl/.cvsignore:
12219 * docs/gst/tmpl/gstquery.sgml:
12220 * docs/gst/tmpl/gstutils.sgml:
12223 inlined and extended docs
12225 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12227 * check/gst-libs/controller.c: (GST_START_TEST),
12228 (gst_controller_suite):
12230 * docs/gst/tmpl/gstutils.sgml:
12231 * docs/libs/gstreamer-libs-sections.txt:
12232 * docs/libs/tmpl/gstdataprotocol.sgml:
12234 * examples/controller/audio-example.c: (main):
12235 controller example works now
12238 * tools/gst-inspect.c: (print_element_properties_info):
12239 show param spec flags
12241 2005-08-29 Andy Wingo <wingo@pobox.com>
12243 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
12245 2005-08-28 Andy Wingo <wingo@pobox.com>
12247 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
12248 as having two arguments instead of just one. Allows superclasses
12249 to access information on subclasses -- see the terrible for() loop
12250 in gtype.c:g_type_create_instance for the reason why. All callers
12253 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12255 * docs/design/part-messages.txt:
12257 * docs/gst/tmpl/.cvsignore:
12258 * docs/gst/tmpl/gstcaps.sgml:
12259 * docs/gst/tmpl/gstclock.sgml:
12265 * gst/gstmessage.c:
12266 added descriptions for bus and message
12267 inline caps and clock docs
12269 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12271 * gst/gstmessage.c:
12272 * gst/gstmessage.h:
12275 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12277 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
12280 2005-08-26 Andy Wingo <wingo@pobox.com>
12282 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
12283 element_set_state's return val.
12284 (test_2_elements): Add test that's been disabled for months.
12286 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
12287 can-activate-pull properties.
12289 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
12290 can-activate-pull properties. Implement is_seekable so fakesrc can
12291 operate in pull mode.
12293 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
12295 (gst_base_sink_activate, gst_base_sink_activate_pull)
12296 (gst_base_sink_activate_push): Make activation mode choosing work.
12298 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
12299 is right. Make pull mode work. Post an eos before pausing in pull
12301 (gst_base_sink_change_state): Pay attention to the core's
12302 change_state() return val.
12304 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
12305 has-getrange properties. Cleanups.
12307 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
12308 has_getrange and replace with can_activate_pull and
12311 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
12312 locking comments. Remove has_loop, has_chain and replace with
12313 can_activate_pull and can_activate_push.
12315 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
12318 * examples/Makefile.am:
12319 * examples/metadata/Makefile.am:
12320 * examples/metadata/read-metadata.c: (message_loop),
12321 (have_pad_handler), (make_pipeline), (print_tag), (main):
12322 Add metadata reading example that loops over a list of filenames,
12323 dumping any tags found.
12325 * gst/gstbus.c: (gst_bus_dispose):
12326 * gst/gstelement.c: (gst_element_dispose):
12327 Release a few potentially-held references in dispose.
12329 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12331 * docs/gst/tmpl/gstminiobject.sgml:
12332 do *not* add tmpl/*.sgml files to CVS!
12334 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12336 * libs/gst/bytestream/.cvsignore:
12337 * libs/gst/bytestream/Makefile.am:
12338 * libs/gst/bytestream/adapter.c:
12339 * libs/gst/bytestream/adapter.h:
12340 * libs/gst/bytestream/bytestream.c:
12341 * libs/gst/bytestream/bytestream.h:
12342 * libs/gst/bytestream/filepad.c:
12343 * libs/gst/bytestream/filepad.h:
12344 removing obsolete files
12346 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12348 * docs/gst/gstreamer-docs.sgml:
12349 * docs/libs/gstreamer-libs-docs.sgml:
12350 disabed additional index entries again, as this makes docs-gen just
12351 slow and they aren't useful yet
12352 * docs/libs/gstreamer-libs-sections.txt:
12353 little -section.txt cleanup for libs
12355 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
12357 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12358 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
12359 fix up some debugging
12360 (gst_base_transform_get_unit_size),
12361 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
12362 (gst_base_transform_handle_buffer):
12363 * gst/base/gstbasetransform.h:
12364 handle and store timed NEWSEGMENT events so that subclasses that
12365 calculate time by counting samples have a segment_start time they
12366 need to add to their timestamps - see audioresample
12368 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12371 removed ';' from the end of macro defs
12372 * docs/gst/gstreamer-docs.sgml:
12373 * docs/gst/gstreamer-sections.txt:
12374 * docs/gst/tmpl/.cvsignore:
12376 * gst/gstelement.c: (gst_element_class_init),
12377 (gst_element_set_state), (activate_pads),
12378 (gst_element_save_thyself):
12379 * gst/gstevent.c: (gst_event_new_newsegment):
12381 * gst/gstiterator.c:
12382 * gst/gstiterator.h:
12385 * gst/gstutils.c: (gst_pad_query_convert):
12387 fixed parameter name mismatches between source, header and docs
12388 added some more docs, resolved the last batch of unused elements in
12389 docs (now someone needs to doc them)
12391 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12393 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
12394 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
12395 don't walk through the plugins backwards. Where is all this
12396 reversed logic coming from ?
12398 2005-08-25 Wim Taymans <wim@fluendo.com>
12400 * gst/base/gstbasetransform.c: (gst_base_transform_init),
12401 (gst_base_transform_transform_size),
12402 (gst_base_transform_configure_caps),
12403 (gst_base_transform_get_unit_size),
12404 (gst_base_transform_buffer_alloc),
12405 (gst_base_transform_change_state):
12406 * gst/base/gstbasetransform.h:
12407 Cache caps unit_size.
12408 Make sure we cannot negotiate up and downstream at the
12411 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12413 * gst/gst.c: (init_pre), (init_post):
12414 register the installed plugin path after the env var
12415 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
12416 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
12417 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
12418 directories, so the tests can prefer uninstalled over installed
12420 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12422 * gst/base/gstbasetransform.h:
12427 2005-08-25 Wim Taymans <wim@fluendo.com>
12429 * gst/gstbin.c: (bin_bus_handler):
12430 Be a bit more conservative about the posted message.
12432 * gst/gstbus.c: (gst_bus_post):
12433 Some cleanups, warn wrong return values.
12435 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
12437 * check/gst/gstbin.c: (GST_START_TEST):
12438 * gst/gstbin.c: (bin_bus_handler):
12439 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
12440 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
12441 (gst_message_new_warning), (gst_message_new_tag),
12442 (gst_message_new_state_changed), (gst_message_new_segment_start),
12443 (gst_message_new_segment_done), (gst_message_new_custom):
12444 * gst/gstmessage.h:
12445 * tools/gst-launch.c: (event_loop):
12446 * tools/gst-md5sum.c: (event_loop):
12447 Revert unpopular change for GST_MESSAGE_SRC to GObject.
12449 2005-08-25 Wim Taymans <wim@fluendo.com>
12451 * check/generic/states.c: (GST_START_TEST):
12452 Cleanup can be done at the end.
12454 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
12455 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
12456 (gst_task_get_state), (gst_task_start), (gst_task_pause):
12457 Oh boy.. Thanks for finding this, Thomas.
12459 2005-08-25 Stefan Kost <ensonic@users.sf.net>
12461 * docs/gst/gstreamer.types:
12462 added missing types
12464 2005-08-25 Stefan Kost <ensonic@users.sf.net>
12466 * docs/gst/gstreamer-docs.sgml:
12467 * docs/gst/gstreamer-sections.txt:
12468 * docs/gst/tmpl/.cvsignore:
12470 * gst/gstiterator.c:
12472 * gst/registries/gstxmlregistry.h:
12473 added missing classes and symbols (123 more to go)
12474 removed removed symbols from section file
12475 fixed many doc-comments
12477 2005-08-24 Wim Taymans <wim@fluendo.com>
12479 * check/generic/states.c: (GST_START_TEST):
12480 Make sure all tasks are stopped.
12482 * check/gst/gstbin.c: (GST_START_TEST):
12483 Unref after usage for proper valgrinding.
12485 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
12486 Really wait for the task to stop before destroying the
12489 * gst/gstqueue.c: (gst_queue_sink_activate_push),
12490 (gst_queue_src_activate_push):
12491 Small cleanups. Don't stop the task when we did not start
12494 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
12495 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
12496 (gst_task_get_state), (gst_task_start), (gst_task_pause),
12499 Protect the stream lock with the object lock.
12500 Disallow setting the stream lock when running.
12501 Add cleanup_all to wait for the threadpool to finish.
12502 Remove code to autoallocate a mutex if none was provided.
12503 Add _join() to wait for a task to stop.
12504 Protect the thread pool with a global lock.
12506 2005-08-24 Wim Taymans <wim@fluendo.com>
12508 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12509 (gst_base_sink_get_times), (gst_base_sink_do_sync),
12510 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
12511 * gst/base/gstbasesink.h:
12512 Handle newsegment events correctly.
12513 Drop buffers out of the segment range.
12515 2005-08-22 Andy Wingo <wingo@pobox.com>
12517 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
12518 macro, implements an interface and gstimplementsinterface for a
12521 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
12523 * check/Makefile.am:
12524 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
12525 add a test that does a bunch of state changes on elements
12526 needs some fixing for valgrind
12527 * check/states/sinks.c: (gst_object_suite):
12530 add prototype for gst_caps_is_equal_fixed
12532 * gst/gstregistrypool.c:
12535 2005-08-24 Andy Wingo <wingo@pobox.com>
12537 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
12538 convert a negative value. Doesn't make much sense. Mostly this is
12539 here to force callers to ensure -1 maps to -1.
12541 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
12543 * docs/pwg/advanced-types.xml:
12544 Well done to Michael for catching my deliberate introduction
12545 of this spelling mistake.
12546 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
12547 * gst/gstelement.h:
12548 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
12549 unlink pads before removing the element from the bin.
12551 2005-08-24 Andy Wingo <wingo@pobox.com>
12553 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
12554 the same thing as GST_DEBUG=*:4.
12555 (parse_debug_level, parse_debug_category): New helper parsers.
12557 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
12559 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12560 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
12561 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
12562 (gst_base_transform_buffer_alloc),
12563 (gst_base_transform_handle_buffer):
12564 use gboolean return values and pointers to size so we can use the
12565 full GST_BUFFER_SIZE range (guint) for buffer sizes
12566 use GstPadDirection for transform_caps
12567 * gst/base/gstbasetransform.h:
12568 rename get_size to get_unit_size since that's what it is
12569 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
12570 use GstPadDirection for transform_caps
12571 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12573 cleanup and debugging
12575 2005-08-24 Stefan Kost <ensonic@users.sf.net>
12577 * gst/gstelement.c: (gst_element_class_init),
12578 (gst_element_set_state), (activate_pads),
12579 (gst_element_save_thyself):
12580 * tools/gst-compprep.c: (main):
12581 * tools/gst-inspect.c: (print_element_properties_info):
12582 * tools/gst-xmlinspect.c: (print_element_properties):
12583 Fixed long standing mem-leak
12585 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
12587 * check/gst/gstbin.c: (GST_START_TEST):
12588 * gst/gstbin.c: (bin_bus_handler):
12589 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
12590 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
12591 (gst_message_new_warning), (gst_message_new_tag),
12592 (gst_message_new_state_changed), (gst_message_new_segment_start),
12593 (gst_message_new_segment_done), (gst_message_new_custom):
12594 * gst/gstmessage.h:
12595 * tools/gst-launch.c: (event_loop):
12596 * tools/gst-md5sum.c: (event_loop):
12597 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
12598 that applications can sensibly post custom messages with references
12599 to their own objects.
12601 2005-08-24 Andy Wingo <wingo@pobox.com>
12603 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
12606 2005-08-24 Wim Taymans <wim@fluendo.com>
12608 * gst/base/gstbasetransform.c: (gst_base_transform_init),
12609 (gst_base_transform_transform_caps),
12610 (gst_base_transform_transform_size),
12611 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
12612 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
12613 (gst_base_transform_handle_buffer):
12614 * gst/base/gstbasetransform.h:
12615 Many fixes and new features added by Thomas. Can now also do
12616 transforms with variable sizes and a custom fixate_caps function.
12618 2005-08-24 Wim Taymans <wim@fluendo.com>
12620 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12624 Cast to ClockTime before formatting to time.
12629 2005-08-24 Stefan Kost <ensonic@users.sf.net>
12631 * check/gst-libs/controller.c: (GST_START_TEST),
12632 (gst_controller_suite):
12633 * docs/gst/tmpl/gstcaps.sgml:
12634 * docs/gst/tmpl/gstghostpad.sgml:
12635 * docs/gst/tmpl/gstquery.sgml:
12636 * docs/gst/tmpl/gstutils.sgml:
12637 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
12638 (gst_object_sink_values), (gst_object_get_value_arrays),
12639 (gst_object_get_value_array):
12640 gracefully handle helper method calls to objects that are not beeing
12641 controlled, added test case for that
12643 2005-08-23 Wim Taymans <wim@fluendo.com>
12645 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
12646 (gst_event_new_newsegment), (gst_event_parse_newsegment),
12647 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
12648 (gst_event_parse_qos), (gst_event_new_seek),
12649 (gst_event_parse_seek):
12651 Some more debugging output and doc cleanups.
12653 * gst/gstqueue.c: (gst_queue_handle_sink_event):
12654 Fix possible deadlock.
12656 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12658 * docs/gst/gstreamer-docs.sgml:
12659 * docs/gst/gstreamer-sections.txt:
12660 * docs/gst/gstreamer.types:
12661 * docs/gst/tmpl/.cvsignore:
12664 * gst/gstelement.c:
12666 added 100 symbols from gstreamer-unused.txt to the right sections
12667 fixed more broken comments
12668 added GstBus to docs
12670 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12672 * docs/gst/gstreamer-sections.txt:
12673 * docs/gst/tmpl/.cvsignore:
12674 * docs/gst/tmpl/gstbin.sgml:
12675 * docs/gst/tmpl/gstbuffer.sgml:
12676 * gst/base/gstbasesrc.c:
12677 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
12680 * tools/gst-launch.1.in:
12681 inlined more doc comments, added missing comments and fixed comments
12684 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
12686 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12690 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
12692 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
12693 * gst/gststructure.h:
12694 add a fixate function for booleans; add a FIXME that these func
12695 names should probably be gst_structure_fixate_*
12697 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12699 * docs/gst/gstreamer-docs.sgml:
12700 * docs/gst/gstreamer-sections.txt:
12702 * gst/gstbin.c: (gst_bin_get_type),
12703 (gst_bin_child_proxy_get_child_by_index),
12704 (gst_bin_child_proxy_get_children_count),
12705 (gst_bin_child_proxy_init):
12706 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
12707 (gst_child_proxy_get_child_by_index),
12708 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
12709 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
12710 (gst_child_proxy_get), (gst_child_proxy_set_property),
12711 (gst_child_proxy_set_valist), (gst_child_proxy_set),
12712 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
12713 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
12714 * gst/gstchildproxy.h:
12715 * gst/parse/grammar.y:
12716 * tools/gst-inspect.c: (print_interfaces),
12717 (print_element_properties_info), (print_element_info):
12718 ported gstchildproxy over from 0.8
12719 ported gst-inspect fixes and enhancements over from 0.8
12721 2005-08-22 Wim Taymans <wim@fluendo.com>
12723 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12724 (gst_base_transform_handle_buffer):
12725 Also call the transform function if we have ANY caps.
12727 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
12730 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
12732 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
12733 Don't pretend to handle seek events if the source is not seekable
12735 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
12737 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12738 Remove extra parameter to debug output
12740 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12741 (gst_base_src_do_seek), (gst_base_src_activate_push):
12742 Fix seek event handling.
12744 * gst/gstpipeline.c: (gst_pipeline_change_state):
12745 * gst/gstqueue.c: (gst_queue_handle_sink_event),
12746 (gst_queue_src_activate_push):
12747 Don't start the src pad task on FLUSH_STOP if the pad
12751 2005-08-22 Wim Taymans <wim@fluendo.com>
12753 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
12754 Added check for gst_static_caps_get() refcounting.
12756 2005-08-22 Wim Taymans <wim@fluendo.com>
12758 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
12759 Make _static_caps_get() refcounting sane.
12761 * gst/gstelement.c: (gst_element_set_state):
12762 Add g_return_val_if_fail() to protect against segfaults.
12764 2005-08-22 Stefan Kost <ensonic@users.sf.net>
12766 * docs/gst/tmpl/gstevent.sgml:
12769 inlined remaining docs, added missing doc comments
12771 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
12773 * check/gst/gstbin.c: (GST_START_TEST):
12774 since we don't know when preroll is done, use refcount range
12776 * gst/check/gstcheck.h:
12777 add macro for checking refcount range
12779 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
12781 * check/Makefile.am:
12782 clean up environment for when registry gets built versus
12783 when actual tests are run; valgrind seems to not report
12784 leaks if GST_PLUGIN_PATH is set to some specific values
12785 * check/gst/gstbin.c: (GST_START_TEST):
12786 add more refcounting checks; maybe this exposes a
12788 * common/check.mak:
12789 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12790 * gst/check/gstcheck.h:
12791 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
12792 (gst_bin_change_state):
12793 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
12794 add/fix debugging/whitespace
12796 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
12798 * check/gst/gstevent.c: (event_probe), (test_event),
12800 Er, don't call gst_bin_watch_for_state_change you idiot.
12802 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
12804 * check/Makefile.am:
12805 Use CHECK_CFLAGS and CHECK_LIBS
12806 * check/gst/gstevent.c: (event_probe), (test_event),
12809 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12810 (gst_base_src_start), (gst_base_src_stop),
12811 (gst_base_src_activate_push), (gst_base_src_activate_pull),
12812 (gst_base_src_change_state):
12813 Sprinkle gst_base_src_stop liberally around error paths to fix
12814 problems reusing a source after failed state changes.
12815 * gst/base/gsttypefindhelper.c: (helper_find_peek),
12816 (helper_find_suggest), (gst_type_find_helper):
12817 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
12819 * docs/gst/tmpl/gstevent.sgml:
12820 Migrate part of the docs from the SGML file. Wait for ensonic to
12821 tell me how I did it wrong ;)
12822 * tools/gst-typefind.c: (main):
12823 Extra robustness to state changes between files.
12825 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
12827 * check/Makefile.am:
12828 don't valgrind the controller test - it's leaking - Stefan, HELP
12829 * gst/check/gstcheck.c: (gst_check_message_error),
12830 (gst_check_chain_func), (gst_check_setup_element),
12831 (gst_check_teardown_element), (gst_check_setup_src_pad),
12832 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
12833 (gst_check_teardown_sink_pad):
12834 * gst/check/gstcheck.h:
12835 add a bunch of methods to set up elements, and src and sink pads
12836 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
12837 * check/elements/identity.c: (setup_identity), (cleanup_identity),
12840 * gst/gstmessage.c:
12842 whitespace/doc fixes
12844 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12846 * gst/gstelement.h:
12847 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
12848 be handled by the application and not always printed as well
12850 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12852 * check/Makefile.am:
12854 * gst/check/gstcheck.c: (gst_check_message_error):
12855 * gst/check/gstcheck.h:
12856 add a fail_unless_equals_int
12857 add fail_unless for error messages
12859 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12861 * check/Makefile.am:
12863 * common/Makefile.am:
12864 * common/check.mak:
12866 factor out some of the common stuff so we can use it
12868 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12870 * check/Makefile.am:
12871 * check/gst/gstiterator.c: (GST_START_TEST):
12872 * check/gst/gstsystemclock.c: (GST_START_TEST),
12873 (gst_systemclock_suite):
12874 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
12876 valgrind more tests
12878 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12880 * check/elements/.cvsignore:
12881 * check/elements/gstfakesrc.c:
12882 rename to name of element
12883 * check/elements/identity.c: (chain_func), (event_func),
12884 (setup_identity), (cleanup_identity), (GST_START_TEST),
12885 (identity_suite), (main):
12886 add a test for identity
12887 * check/Makefile.am:
12888 * pkgconfig/Makefile.am:
12889 * pkgconfig/gstreamer-check.pc.in:
12890 * pkgconfig/gstreamer-check-uninstalled.pc.in:
12894 move the check stuff to a library that gets installed
12895 * check/gst-libs/controller.c: (GST_START_TEST):
12896 * check/gst-libs/gdp.c:
12897 * check/gst/gst.c: (GST_START_TEST):
12898 * check/gst/gstbin.c:
12899 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
12900 * check/gst/gstbus.c:
12901 * check/gst/gstcaps.c: (GST_START_TEST):
12902 * check/gst/gstelement.c:
12903 * check/gst/gstghostpad.c:
12904 * check/gst/gstiterator.c:
12905 * check/gst/gstmessage.c:
12906 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
12907 * check/gst/gstobject.c:
12908 * check/gst/gstpad.c: (GST_START_TEST):
12909 * check/gst/gststructure.c: (GST_START_TEST):
12910 * check/gst/gstsystemclock.c: (GST_START_TEST),
12911 (gst_systemclock_suite):
12912 * check/gst/gsttag.c: (gst_tag_suite):
12913 * check/gst/gstvalue.c:
12914 * check/pipelines/cleanup.c:
12915 * check/pipelines/simple_launch_lines.c:
12916 * check/states/sinks.c:
12917 change include statement
12919 * docs/gst/gstreamer-sections.txt:
12920 * docs/gst/tmpl/gstpad.sgml:
12921 document more pad stuff
12922 * gst/gstminiobject.c: (gst_mini_object_ref),
12923 (gst_mini_object_unref):
12926 2005-08-19 Stefan Kost <ensonic@users.sf.net>
12928 * docs/gst/tmpl/gst.sgml:
12930 eliminate another tmpl file, fix spelling in the long-description
12932 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12934 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12935 (test_event), (timediff), (gstevents_suite):
12936 Should fix build on 64-bit arch's
12938 2005-08-18 Andy Wingo <wingo@pobox.com>
12940 Make sure that when a pipeline goes to PLAYING, that data has
12941 actually hit the sink.
12943 * check/states/sinks.c (test_sink): A sink that doesn't get any
12944 data shouldn't return SUCCESS for going to either PLAYING or
12945 PAUSED. Test also the return values on the way back down.
12947 * gst/gstelement.c (gst_element_set_state): When changing the
12948 state of an element currently changing state asynchronously, go to
12949 lost-state after commiting the pending state. Makes future calls
12950 to get_state continue to return ASYNC.
12952 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
12953 ASYNC when going to PLAYING if we still don't have preroll, as can
12954 happen with live sources.
12956 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12958 * docs/pwg/advanced-types.xml:
12959 Hack long paragraph into 2 chunks as a workaround for buggy
12960 jadetex version in sid and breezy that loops infinitely and
12963 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12965 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12966 (test_event), (timediff), (gstevents_suite):
12967 Provide more error margin in clock measurements to allow for
12968 g_get_current_time inaccuracies.
12970 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12972 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12973 (test_event), (timediff), (gstevents_suite):
12974 Fix error message output so I might be able to tell why the
12975 test works here but fails on the build farm.
12977 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12979 * check/Makefile.am:
12980 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12981 (test_event), (timediff), (gstevents_suite), (main):
12984 * docs/design/part-seeking.txt:
12985 Spelling correction
12987 * docs/gst/tmpl/gstevent.sgml:
12988 * docs/gst/tmpl/gstfakesrc.sgml:
12991 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12992 Treat a buffer-without-newsegment the same as a receiving
12993 a newsegment not in time format, and disable syncing to the clock
12996 * gst/gstbus.c: (gst_bus_set_sync_handler):
12997 Assert if anyone tries to replace the existing sync_handler for bus,
12998 as only the owner should be setting it.
13001 Have a fixed set of custom event enums with events identified by
13002 their structure name (as in 0.8), rather than a free-for-all
13003 allowing collisions between enum values from different plugins.
13005 * gst/gstpad.c: (gst_pad_class_init):
13008 * gst/gstqueue.c: (gst_queue_handle_sink_event):
13009 Handle out-of-band downstream events from the sending thread.
13011 2005-08-17 Andy Wingo <wingo@pobox.com>
13013 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
13014 play-timeout==0 to mean no timeout at all. In that case, don't
13015 bother with a get_state or a warning, just return directly, even
13018 * gst/base/gstbasetransform.c: Debug changes.
13021 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
13022 ensure bins post state change messages. A bit of a hack but I can't
13023 think of a way to avoid it.
13025 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
13027 2005-08-16 Andy Wingo <wingo@pobox.com>
13029 * gst/base/gstadapter.h:
13030 * gst/base/gstadapter.c (gst_adapter_take): New function, like
13031 peek() but you own the data. Not terribly efficient atm.
13033 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13035 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
13036 (gst_element_found_tags):
13038 Add two utility functions for tag handling.
13040 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13042 * docs/manual/advanced-dataaccess.xml:
13043 * docs/manual/basics-helloworld.xml:
13044 Fix docs to use _bin_add() before _link(), which fixes the examples
13045 with recent core versions (reported by Madhan Raj M
13046 <raj_madan@rediffmail.com>, #313199).
13048 2005-08-16 Wim Taymans <wim@fluendo.com>
13050 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
13051 Added subtract checks.
13053 * docs/design/part-events.txt:
13054 Some more docs about newsegment
13056 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
13059 * gst/gstcaps.c: (gst_caps_to_string):
13060 Add comments, cleanups.
13062 * gst/gstelement.c: (gst_element_save_thyself):
13065 * gst/gstvalue.c: (gst_value_collect_int_range),
13066 (gst_string_unwrap), (gst_value_union_int_int_range),
13067 (gst_value_union_int_range_int_range),
13068 (gst_value_intersect_int_int_range),
13069 (gst_value_intersect_int_range_int_range),
13070 (gst_value_intersect_double_double_range),
13071 (gst_value_intersect_double_range_double_range),
13072 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
13073 (gst_value_subtract_int_range_int),
13074 (gst_value_subtract_double_range_double),
13075 (gst_value_subtract_double_range_double_range),
13076 (gst_value_subtract_from_list), (gst_value_subtract_list),
13077 (gst_value_can_compare), (gst_value_compare_fraction):
13078 Cleanups, add comments, remove unneeded asserts.
13080 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
13082 * tools/gst-launch.c: (event_loop):
13083 don't convert NULL structures to strings
13085 2005-08-15 Stefan Kost <ensonic@users.sf.net>
13087 * docs/gst/gstreamer-sections.txt:
13088 made some defines private
13089 * docs/gst/tmpl/gstconfig.sgml:
13090 * docs/gst/tmpl/gstqueue.sgml:
13091 * docs/gst/tmpl/gsttaglist.sgml:
13092 * docs/gst/tmpl/gsttypes.sgml:
13093 * docs/gst/tmpl/gstutils.sgml:
13094 * docs/pwg/appendix-porting.xml:
13095 * gst/base/gstbasesink.h:
13096 * gst/base/gstbasesrc.c:
13097 * gst/base/gstbasesrc.h:
13098 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
13099 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
13100 * gst/gstelement.c: (gst_element_class_init):
13101 * gst/gstpad.c: (gst_pad_class_init):
13102 * gst/gstqueue.c: (gst_queue_class_init):
13103 * gst/gstxml.c: (gst_xml_class_init):
13104 documented all undocumented signal inline
13105 * libs/gst/controller/gst-controller.h:
13108 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13110 * docs/pwg/appendix-porting.xml:
13111 Document _set_link_function -> _set_setcaps_function.
13113 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
13115 * check/Makefile.am:
13116 add a .check target for running the check
13117 * check/gst-libs/controller.c: (GST_START_TEST):
13119 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13120 complete checks for gstbuffer; would be nice if I could get the
13121 gcov stuff to work so I can see if I actually completed gstbuffer.c
13122 * check/gstcheck.h:
13123 add ASSERT_BUFFER_REFCOUNT
13125 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
13127 * docs/gst/gstreamer-sections.txt:
13128 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13130 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
13131 spew out a warning if a tag that is already registered
13132 is re-registered, unless it is re-registered with a
13133 different type (#308438).
13135 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
13137 * docs/pwg/appendix-porting.xml:
13138 * docs/pwg/building-state.xml:
13139 Add some paragraphs about state changes in 0.9 to the PWG
13140 and the porting guide, in particular about the new meaning
13141 of GST_STATE_PAUSED and how to write state change functions
13142 with concurrent access by multiple threads in mind.
13144 2005-08-11 Stefan Kost <ensonic@users.sf.net>
13146 * docs/gst/gstreamer-docs.sgml:
13147 * docs/libs/gstreamer-libs-docs.sgml:
13148 added deprecation and since indexes
13149 * libs/gst/controller/gst-controller.c:
13150 * libs/gst/controller/gst-helper.c:
13154 2005-08-11 Wim Taymans <wim@fluendo.com>
13156 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
13157 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
13158 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
13159 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
13160 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
13161 (gst_ghost_pad_set_target):
13162 Actually implement (re)setting the target on a ghostpad
13163 as described in the docs.
13165 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
13167 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
13168 Check whether GST_DEBUG_NO_COLOR environment variable is
13169 set and disable coloured debug output if that is the case.
13171 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
13173 * gst/base/gsttypefindhelper.c: (helper_find_peek),
13174 (gst_type_find_helper):
13175 The memory returned by gst_type_find_peek() needs to
13176 stay valid until the end of a typefind function, and
13177 typefind functions may keep results from different
13178 offsets around, so we can't just unref the buffer from
13179 the previous _peek(), but have to save all buffers
13180 returned by _peek() until typefinding is done and only
13183 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
13185 * docs/gst/gstreamer-sections.txt:
13187 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
13189 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13191 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
13192 Fix a pretty good memleak.
13194 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
13196 * gst/gstiterator.h:
13197 Fix wrong include and 'make distcheck'.
13199 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13201 * gst/gstbin.c: (bin_bus_handler):
13202 Use gst_element_post_message() instead.
13204 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
13206 * gst/base/gstadapter.h:
13207 * gst/base/gstbasesink.h:
13208 * gst/base/gstbasesrc.h:
13209 * gst/base/gstbasetransform.h:
13210 * gst/base/gstcollectpads.h:
13211 * gst/base/gstpushsrc.h:
13212 * gst/gstiterator.h:
13213 Add padding to our base elements' class and instance structs and
13214 to GstIterator (you will need to rebuild all plugins and apps!)
13216 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13218 * gst/gstbin.c: (bin_bus_handler):
13219 Make default message forwarding from child->bus to bin->bus
13220 threadsafe and make it not emit warnings if the parent has no bus.
13222 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13224 * gst/gstelement.c: (activate_pads):
13225 On paused->ready, set pad->caps to NULL, as is the documented
13226 behaviour in this state change. Fixes playback of series of
13227 media files when visualization is enabled in Totem.
13229 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13231 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
13232 Allow NULL as filter-caps (which means "any").
13234 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13236 * docs/libs/gstreamer-libs-sections.txt:
13237 * libs/gst/controller/gst-controller.c:
13238 * libs/gst/controller/gst-controller.h:
13239 * libs/gst/controller/gst-helper.c:
13240 adding more entries to the docs and fix small doc-bugs
13242 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13244 * docs/gst/gstreamer-docs.sgml:
13245 * docs/gst/gstreamer-sections.txt:
13246 * docs/gst/gstreamer.types:
13247 * docs/gst/tmpl/gstbasesink.sgml:
13248 * docs/gst/tmpl/gstbasesrc.sgml:
13249 * docs/gst/tmpl/gstbasetransform.sgml:
13250 * docs/gst/tmpl/gstfakesrc.sgml:
13251 * gst/base/gstcollectpads.c:
13252 * gst/base/gstcollectpads.h:
13253 * libs/gst/controller/gst-controller.c:
13254 * libs/gst/controller/gst-controller.h:
13255 * libs/gst/controller/gst-helper.c:
13256 * libs/gst/controller/gst-interpolation.c:
13257 * libs/gst/controller/lib.c:
13258 added long/short desc for controller docs
13259 added collectpads base class docs
13260 added correct includes to base-class docs
13262 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13264 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
13265 (gst_test_mono_source_set_property),
13266 (gst_test_mono_source_class_init), (GST_START_TEST),
13267 (gst_controller_suite):
13268 * docs/gst/gstreamer-docs.sgml:
13269 * docs/gst/gstreamer-sections.txt:
13270 * docs/gst/gstreamer.types:
13271 * docs/libs/gstreamer-libs-docs.sgml:
13272 * docs/libs/gstreamer-libs-sections.txt:
13273 * gst/base/gstadapter.c:
13274 * libs/gst/controller/gst-controller.c:
13275 (gst_controlled_property_new), (gst_controlled_property_free),
13276 (gst_controller_new_valist),
13277 (gst_controller_remove_properties_valist),
13278 (gst_controller_sink_values), (_gst_controller_finalize):
13279 * libs/gst/controller/gst-controller.h:
13280 * libs/gst/controller/gst-helper.c:
13281 (gst_object_control_properties), (gst_object_uncontrol_properties),
13282 (gst_object_get_controller), (gst_object_set_controller),
13283 (gst_object_sink_values), (gst_object_get_value_arrays),
13284 (gst_object_get_value_array):
13285 more tests (and fixes) for the controller
13286 more docs for the controller
13287 integrated companies docs for the adapter
13289 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
13291 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
13292 (GST_START_TEST), (fakesrc_suite):
13293 add tests for sizetype
13295 2005-08-04 Andy Wingo <wingo@pobox.com>
13297 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
13298 fixes buffer_alloc proxying among other things.
13300 * gst/base/gstbasetransform.c:
13301 * gst/base/gstbasetransform.h:
13302 Revert patch to gstbasetransform from 7-28 removing
13305 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
13306 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
13307 Semantics changed, should return not the size of the output buffer
13308 but the byte size of a buffer with a given caps.
13310 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
13312 (gst_base_transform_configure_caps): Don't set out_size here: (in,
13313 out) are not the pad caps until setcaps finishes.
13314 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
13315 not-in-place case as well. Deal with changing from in-place to
13316 not-in-place within calling pad_alloc_buffer. Still a bit
13317 concerned about the overhead here...
13319 2005-08-03 Andy Wingo <wingo@pobox.com>
13321 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
13322 fixating is an error.
13324 2005-08-04 Edward Hervey <edward@fluendo.com>
13326 * gst/base/gstadapter.h:
13327 Added gst_adapter_get_type() to the header
13329 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13331 * check/Makefile.am:
13332 * check/gst-libs/controller.c:
13333 * libs/gst/controller/gst-controller.c:
13334 (gst_controller_new_valist):
13335 added check test suite for the controller
13336 * gst/base/gstpushsrc.c:
13339 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13341 * docs/gst/Makefile.am:
13342 * docs/gst/gstreamer-docs.sgml:
13343 * docs/gst/gstreamer-sections.txt:
13344 * docs/gst/gstreamer.types:
13345 * docs/gst/tmpl/gstfakesrc.sgml:
13347 * gst/base/gstbasesink.c:
13348 * gst/base/gstbasesink.h:
13349 * gst/base/gstbasesrc.c:
13350 * gst/base/gstbasesrc.h:
13351 * gst/base/gstbasetransform.c:
13352 * gst/base/gstpushsrc.c:
13353 * gst/base/gstpushsrc.h:
13354 add short/long description docs to base classes
13355 add pushsrc to the docs
13356 remove consolidated doc fragments
13358 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13361 * docs/libs/Makefile.am:
13362 * docs/libs/gstreamer-libs-docs.sgml:
13363 * docs/libs/gstreamer-libs-sections.txt:
13364 * docs/libs/gstreamer-libs.types:
13365 * examples/Makefile.am:
13366 * examples/controller/.cvsignore:
13367 * examples/controller/Makefile.am:
13368 * examples/controller/audio-example.c: (main):
13369 * libs/gst/Makefile.am:
13370 * libs/gst/controller/.cvsignore:
13371 * libs/gst/controller/Makefile.am:
13372 * libs/gst/controller/gst-controller.c:
13373 (on_object_controlled_property_changed), (gst_timed_value_compare),
13374 (gst_timed_value_find),
13375 (gst_controlled_property_set_interpolation_mode),
13376 (gst_controlled_property_new), (gst_controlled_property_free),
13377 (gst_controller_find_controlled_property),
13378 (gst_controller_new_valist), (gst_controller_new),
13379 (gst_controller_remove_properties_valist),
13380 (gst_controller_remove_properties), (gst_controller_set),
13381 (gst_controller_set_from_list), (gst_controller_unset),
13382 (gst_controller_get), (gst_controller_get_all),
13383 (gst_controller_sink_values), (gst_controller_get_value_arrays),
13384 (gst_controller_get_value_array),
13385 (gst_controller_set_interpolation_mode),
13386 (_gst_controller_finalize), (_gst_controller_init),
13387 (_gst_controller_class_init), (gst_controller_get_type):
13388 * libs/gst/controller/gst-controller.h:
13389 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
13390 (g_object_uncontrol_properties), (g_object_get_controller),
13391 (g_object_set_controller), (g_object_sink_values),
13392 (g_object_get_value_arrays), (g_object_get_value_array):
13393 * libs/gst/controller/gst-interpolation.c:
13394 (gst_controlled_property_find_timed_value_node),
13395 (interpolate_none_get), (interpolate_trigger_get),
13396 (interpolate_trigger_get_value_array):
13397 * libs/gst/controller/lib.c: (gst_controller_init):
13398 * pkgconfig/Makefile.am:
13399 * pkgconfig/gstreamer-control-uninstalled.pc.in:
13400 * pkgconfig/gstreamer-control.pc.in:
13401 * testsuite/Makefile.am:
13402 * testsuite/controller/.cvsignore:
13403 * testsuite/controller/Makefile.am:
13404 * testsuite/controller/interpolator.c: (main):
13405 added controller code
13406 removed dparam pc files
13408 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
13409 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
13410 (gst_collectpads_stop):
13411 Broadcast the condition when shutting down, to make sure we wake all
13412 threads up. Shut down pads on finalize, for safety.
13414 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
13415 * gst/base/gstbasetransform.c: (gst_base_transform_init),
13416 (gst_base_transform_handle_buffer),
13417 (gst_base_transform_change_state):
13418 Handle PAUSED->READY->PAUSED transition after negotiation
13420 * gst/gstmessage.c: (gst_message_init):
13421 Extra piece of debug for new messages.
13423 2005-08-01 Stefan Kost <ensonic@users.sf.net>
13426 * docs/gst/tmpl/gstbasesrc.sgml:
13427 * docs/gst/tmpl/gstelement.sgml:
13428 * docs/gst/tmpl/gstevent.sgml:
13429 * docs/gst/tmpl/gstfakesrc.sgml:
13430 * docs/gst/tmpl/gstformat.sgml:
13431 * docs/gst/tmpl/gstghostpad.sgml:
13432 * docs/gst/tmpl/gstpad.sgml:
13433 * docs/gst/tmpl/gstquery.sgml:
13434 * docs/gst/tmpl/gststructure.sgml:
13435 * docs/gst/tmpl/gsttaglist.sgml:
13436 * docs/gst/tmpl/gstvalue.sgml:
13437 * docs/libs/gstreamer-libs-docs.sgml:
13438 * docs/libs/gstreamer-libs-sections.txt:
13439 * docs/libs/gstreamer-libs.types:
13440 * libs/gst/Makefile.am:
13441 * libs/gst/control/.cvsignore:
13442 * libs/gst/control/Makefile.am:
13443 * libs/gst/control/control.c:
13444 * libs/gst/control/control.h:
13445 * libs/gst/control/dparam.c:
13446 * libs/gst/control/dparam.h:
13447 * libs/gst/control/dparam_smooth.c:
13448 * libs/gst/control/dparam_smooth.h:
13449 * libs/gst/control/dparamcommon.h:
13450 * libs/gst/control/dparammanager.c:
13451 * libs/gst/control/dparammanager.h:
13452 * libs/gst/control/dplinearinterp.c:
13453 * libs/gst/control/dplinearinterp.h:
13454 * libs/gst/control/unitconvert.c:
13455 * libs/gst/control/unitconvert.h:
13456 * testsuite/Makefile.am:
13457 * testsuite/dynparams/.cvsignore:
13458 * testsuite/dynparams/Makefile.am:
13459 * testsuite/dynparams/dparamstest.c:
13460 * tools/Makefile.am:
13461 * tools/gst-inspect.c: (print_element_info), (main):
13462 * tools/gst-xmlinspect.c: (print_element_info), (main):
13463 deactivate and remove dparams (libgstcontrol)
13465 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13467 * gst/elements/gsttypefindelement.c:
13468 (gst_type_find_element_have_type), (gst_type_find_element_init),
13469 (stop_typefinding), (gst_type_find_element_handle_event),
13470 (gst_type_find_element_chain), (gst_type_find_element_getrange):
13471 * gst/elements/gsttypefindelement.h:
13472 Set caps on all outgoing buffers, not just the first one.
13474 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13476 * gst/elements/gsttypefindelement.c:
13477 (gst_type_find_element_have_type),
13478 (gst_type_find_element_check_set_buffer_caps),
13479 (gst_type_find_element_init), (stop_typefinding),
13480 (gst_type_find_element_handle_event),
13481 (gst_type_find_element_chain), (gst_type_find_element_getrange):
13482 * gst/elements/gsttypefindelement.h:
13483 Set caps on first outgoing buffer when we've found the type.
13485 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13487 * docs/gst/gstreamer-docs.sgml:
13488 * docs/gst/gstreamer-sections.txt:
13489 * docs/gst/tmpl/gstscheduler.sgml:
13490 * docs/gst/tmpl/gstschedulerfactory.sgml:
13491 Remove some old cruft from docs.
13493 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
13496 Fix inline docs for GstPadLinkReturn.
13498 * gst/gststructure.c: (gst_structure_has_name):
13499 * gst/gststructure.h:
13500 * docs/gst/gstreamer-sections.txt:
13501 New API: gst_structure_has_name().
13503 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
13506 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
13507 and _LARGEFILE_SOURCE in config.h as required. Do not
13508 export those flags in our .pc files any longer (#142209).
13510 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
13512 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
13513 (gst_file_sink_do_seek), (gst_file_sink_event),
13514 (gst_file_sink_get_current_offset), (gst_file_sink_render):
13515 Redo seek/tell calls with large file support in mind; add some
13516 debugging messages; add log message that tells us when large
13517 file support is unavailable or not enabled for some reason.
13519 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
13520 Add log message that tells us when large file support
13521 is unavailable or not enabled for some reason.
13523 2005-07-29 Wim Taymans <wim@fluendo.com>
13525 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
13526 Added test for removing an element with ghostpad from a bin.
13527 Fixed test as current implementation does the right thing.
13529 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
13530 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
13531 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
13532 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
13533 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
13534 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
13535 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
13536 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
13537 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
13538 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
13539 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
13540 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
13541 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
13542 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
13543 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
13544 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
13545 * gst/gstghostpad.h:
13546 Clean up ghostpads, remove properties for internal stuff.
13549 Prepare for switching targets, not all use cases work yet.
13551 2005-07-29 Wim Taymans <wim@fluendo.com>
13553 * docs/design/part-gstghostpad.txt:
13556 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
13557 (gst_bin_remove_func):
13558 Unlinking pads while holding the bin LOCK is not a good
13561 * gst/gstpad.c: (gst_pad_class_init),
13562 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
13563 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
13564 No prob setting template after creating the pad.
13566 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
13568 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
13569 (gst_bus_peek), (gst_bus_source_dispatch),
13570 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
13571 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
13572 gst_bus_poll may be called from other threads. Handle
13573 this nicely by not making poll_data disappear off the
13574 stack once gst_bus_poll returns.
13575 gst_bus_peek now increments the refcount on the returned
13578 2005-07-29 Wim Taymans <wim@fluendo.com>
13580 * docs/design/part-gstghostpad.txt:
13581 Overview of current GhostPad datastructures and use
13582 cases for changing the target.
13584 2005-07-28 Wim Taymans <wim@fluendo.com>
13586 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
13587 Added checks for hierarchy consistency whan adding linked
13590 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
13591 Added check to test element scheduling without bin/pipeline.
13593 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
13594 First add elements to bin, then link.
13596 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
13597 (gst_bin_remove_func):
13598 Unlink pads from elements added/removed from bin to maintain
13599 hierarchy consistency.
13601 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13603 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
13604 (gst_base_transform_handle_buffer):
13605 * gst/base/gstbasetransform.h:
13606 Remove broken delay_configure (fixes renegotiation of software
13607 scaling pipelines); remove some leftover printf()s.
13609 2005-07-28 Wim Taymans <wim@fluendo.com>
13611 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
13612 Added some more tests for wrong hierarchy
13614 * docs/design/part-overview.txt:
13617 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
13620 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
13621 (gst_element_dispose):
13622 Some more cleanups.
13624 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
13625 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
13626 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13627 (gst_pad_set_caps), (gst_pad_send_event):
13628 Check for correct hierarchy when linking pads. Moving to
13629 strict requirement for ghostpads when linking elements in
13633 Clean ups. Added WRONG_HIERARCHY return value.
13635 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13637 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
13638 Better debug if no transform is possible.
13640 2005-07-27 Wim Taymans <wim@fluendo.com>
13642 * docs/random/wtay/network-transp:
13643 Some old doc I had.
13645 2005-07-27 Wim Taymans <wim@fluendo.com>
13647 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13648 (gst_dp_event_from_packet):
13649 Fix serialization of seek events.
13651 2005-07-27 Wim Taymans <wim@fluendo.com>
13653 * check/gst-libs/gdp.c: (GST_START_TEST):
13654 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13655 Fix compilation and fix event serialization.
13657 2005-07-27 Wim Taymans <wim@fluendo.com>
13660 * docs/design/part-TODO.txt:
13661 * docs/design/part-events.txt:
13664 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13665 (gst_base_sink_event), (gst_base_sink_do_sync),
13666 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
13667 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
13668 (gst_base_src_do_seek), (gst_base_src_event_handler),
13669 (gst_base_src_loop):
13670 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
13671 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13672 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
13673 (gst_base_transform_event), (gst_base_transform_handle_buffer),
13674 (gst_base_transform_set_passthrough),
13675 (gst_base_transform_is_passthrough):
13676 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13677 * gst/elements/gstfilesink.c: (gst_file_sink_event):
13683 * gst/gstelement.c: (gst_element_seek):
13684 * gst/gstelement.h:
13685 Update gst_element_seek.
13687 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
13688 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
13689 (gst_event_new_flush_start), (gst_event_new_flush_stop),
13690 (gst_event_new_eos), (gst_event_new_newsegment),
13691 (gst_event_parse_newsegment), (gst_event_new_tag),
13692 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
13693 (gst_event_parse_qos), (gst_event_new_seek),
13694 (gst_event_parse_seek), (gst_event_new_navigation):
13696 Make GstEvent use GstStructure. Add parsing code, make sure the
13697 API is sufficiently generic.
13698 Mark possible directions of events and serialization.
13700 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
13701 (_gst_message_copy), (gst_message_new_segment_start),
13702 (gst_message_new_segment_done), (gst_message_new_custom),
13703 (gst_message_parse_segment_start),
13704 (gst_message_parse_segment_done):
13707 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13708 (gst_pad_set_caps), (gst_pad_send_event):
13709 Update for new events.
13710 Catch events sent in wrong directions.
13712 * gst/gstqueue.c: (gst_queue_link_src),
13713 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
13714 (gst_queue_handle_src_query):
13719 Remove event code from this file.
13721 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13722 (gst_dp_event_from_packet):
13725 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13727 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
13728 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13729 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
13730 Make debugging actually useful.
13732 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13734 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
13735 (gst_pad_fixate_caps):
13736 Implement default fixation once again, so that gst_pad_fixate()
13737 actually does anything at all. This probably needs to be some
13738 sort of a last resort, and use profile-based fixation first, but
13739 since that doesn't exist yet, this is the best we have. Fixes
13740 visualization in Totem.
13742 2005-07-22 Wim Taymans <wim@fluendo.com>
13744 * docs/design/part-events.txt:
13747 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13748 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
13749 (gst_base_sink_activate_pull):
13750 Some more comments.
13752 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
13753 (gst_fake_src_create):
13754 Fix handoff marshall.
13756 * gst/elements/gstidentity.c: (gst_identity_class_init),
13757 (gst_identity_transform_ip):
13758 We're a real inplace element.
13760 * gst/gstbus.c: (gst_bus_post):
13761 Added some comments.
13763 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
13764 * tests/muxing/case1.c: (main):
13765 * tests/sched/dynamic-pipeline.c: (main):
13766 * tests/sched/interrupt1.c: (main):
13767 * tests/sched/interrupt2.c: (main):
13768 * tests/sched/interrupt3.c: (main):
13769 * tests/sched/runxml.c: (main):
13770 * tests/sched/sched-stress.c: (main):
13771 * tests/seeking/seeking1.c: (event_received), (main):
13772 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
13774 * tests/threadstate/threadstate3.c: (main):
13775 * tests/threadstate/threadstate4.c: (main):
13776 * tests/threadstate/threadstate5.c: (main):
13779 2005-07-21 Wim Taymans <wim@fluendo.com>
13781 * docs/design/part-seeking.txt:
13782 Some small additions.
13784 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13785 (gst_base_sink_get_times), (gst_base_sink_do_sync),
13786 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
13787 * gst/base/gstbasesink.h:
13788 discont values are gint64, handle the math correctly.
13790 * gst/base/gstbasesrc.c: (gst_base_src_loop):
13791 Make the basesrc report error if the source pad is not linked.
13793 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
13794 (gst_queue_loop), (gst_queue_handle_src_query),
13795 (gst_queue_src_activate_push):
13796 Make queue collect data even if the srcpad is not linked.
13797 Start pushing out data as soon as it is linked.
13799 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
13801 Added gst_flow_get_name() to ease error reporting.
13803 2005-07-20 Wim Taymans <wim@fluendo.com>
13805 * gst/gstmessage.c: (gst_message_new_segment_start),
13806 (gst_message_new_segment_done), (gst_message_parse_segment_start),
13807 (gst_message_parse_segment_done):
13808 * gst/gstmessage.h:
13809 Added a bunch of messages for advanced seeking.
13811 * gst/parse/grammar.y:
13812 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
13813 (gst_dpman_state_changed):
13814 Fix some new-pad -> pad-added signals
13816 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13818 * docs/manual/appendix-porting.xml:
13819 * docs/pwg/appendix-porting.xml:
13820 Document new-pad/state-change signal renames and the FixedList
13823 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13825 * docs/manual/advanced-autoplugging.xml:
13826 * docs/manual/basics-helloworld.xml:
13827 * docs/manual/basics-pads.xml:
13828 * docs/random/ds/0.9-suggested-changes:
13829 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
13830 * gst/gstelement.h:
13834 * gst/gststructure.c: (gst_structure_value_get_generic_type),
13835 (gst_structure_parse_array), (gst_structure_parse_value):
13836 * gst/gstvalue.c: (gst_type_is_fixed),
13837 (gst_value_list_prepend_value), (gst_value_list_append_value),
13838 (gst_value_list_get_size), (gst_value_list_get_value),
13839 (gst_value_transform_array_string), (gst_value_serialize_array),
13840 (gst_value_deserialize_array), (gst_value_intersect_array),
13841 (gst_value_is_fixed), (_gst_value_initialize):
13843 GstElement::new-pad -> pad-added, GstElement::state-change ->
13844 state-changed, GstValueFixedList -> GstValueArray, add format and
13845 flags as their own arguments in gst_element_seek() (should improve
13846 "bindeability"), remove function generators since they don't work
13847 under a whole bunch of compilers (they were deprecated already
13850 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13852 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
13853 (_gst_debug_register_funcptr):
13855 Fix illegal cast on some platforms (#309253).
13857 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13859 * gst/gstmessage.c: (gst_message_new_custom):
13860 * gst/gstmessage.h:
13861 Add _new_custom, make _new_application a macro to _new_custom.
13863 2005-07-20 Wim Taymans <wim@fluendo.com>
13865 * gst/base/gstbasesrc.c: (gst_base_src_init),
13866 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
13867 * gst/base/gstbasesrc.h:
13868 Add a gboolean to decide when to push out a discont.
13870 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
13871 (gst_queue_loop), (gst_queue_handle_src_query),
13872 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
13873 (gst_queue_set_property), (gst_queue_get_property):
13876 * tests/threadstate/threadstate1.c: (main):
13877 Make a thread test compile and run... very silly..
13880 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13882 * docs/manual/appendix-porting.xml:
13883 Mention removal of libgstgconf-0.9.la and existence of gconf
13886 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13888 * docs/pwg/advanced-clock.xml:
13889 * docs/pwg/appendix-porting.xml:
13890 * docs/pwg/intro-preface.xml:
13891 * docs/pwg/other-base.xml:
13892 * docs/pwg/other-manager.xml:
13893 * docs/pwg/other-nton.xml:
13894 * docs/pwg/other-ntoone.xml:
13895 * docs/pwg/other-oneton.xml:
13896 * docs/pwg/pwg.xml:
13897 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
13898 demuxer), remove n-to-n (was never written), fix some code examples
13899 and links and update the porting section to include all this.
13901 2005-07-19 Wim Taymans <wim@fluendo.com>
13903 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
13904 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
13905 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
13906 (gst_queue_src_activate_push), (gst_queue_change_state),
13907 (gst_queue_get_property):
13909 Propagate GstFlowReturn more intelligently upstream and output
13910 an ERROR/EOS when streaming stopped due to fatal error.
13912 2005-07-19 Wim Taymans <wim@fluendo.com>
13914 * tools/gst-launch.c: (check_intr), (event_loop), (main):
13915 Don't block forever for the state change to complete, the
13916 pipeline already did with a sensible timeout.
13918 2005-07-19 Wim Taymans <wim@fluendo.com>
13920 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
13921 Make sure we never call the create function is we
13924 2005-07-19 Andy Wingo <wingo@pobox.com>
13926 * gst/parse/parse.l: Attempt to solve bug #172815.
13928 2005-07-19 Wim Taymans <wim@fluendo.com>
13930 * docs/design/part-clocks.txt:
13931 * docs/design/part-events.txt:
13932 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
13933 Small docs updates.
13934 Only update the seeking values when we are not
13937 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
13939 * gst/base/gstbasesrc.c: (gst_base_src_loop):
13940 Oops, ignore the result of gst_pad_push_event here.
13942 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
13944 * gst/base/gstbasesrc.c: (gst_base_src_loop),
13945 (gst_base_src_activate_push):
13946 Send discont event from the loop function, as pads
13947 aren't activated yet in the activate_push handler.
13949 * gst/gstbin.c: (bin_bus_handler):
13950 Don't leak element name.
13952 2005-07-18 Andy Wingo <wingo@pobox.com>
13954 * configure.ac: Use AS_LIBTOOL_TAGS.
13956 2005-07-18 Wim Taymans <wim@fluendo.com>
13958 * docs/gst/gstreamer.types:
13959 Remove deleted types.
13961 2005-07-18 Wim Taymans <wim@fluendo.com>
13963 * check/elements/gstfakesrc.c: (GST_START_TEST):
13966 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
13967 (init_popt_callback):
13969 * gst/gst_private.h:
13970 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
13971 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
13974 * gst/gstconfig.h.in:
13975 * gst/gstelement.c: (gst_element_class_init),
13976 (gst_element_set_base_time), (gst_element_get_base_time),
13977 (iterator_fold_with_resync), (gst_element_change_state),
13978 (gst_element_dispose), (gst_element_get_bus):
13979 * gst/gstelement.h:
13980 * gst/gstelementfactory.h:
13981 * gst/gsterror.c: (_gst_core_errors_init):
13984 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
13986 * gst/gstinfo.c: (_gst_debug_init):
13987 * gst/gstmessage.c: (_gst_message_copy):
13988 * gst/gstmessage.h:
13989 * gst/gstminiobject.h:
13992 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13993 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
13996 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
13997 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
13998 (gst_pipeline_get_last_stream_time):
13999 * gst/gstpipeline.h:
14000 * gst/gstpluginfeature.h:
14002 * gst/gstscheduler.c:
14003 * gst/gstscheduler.h:
14004 * gst/gststructure.h:
14005 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
14006 (gst_task_finalize), (gst_task_func), (gst_task_create),
14007 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
14008 (gst_task_stop), (gst_task_pause):
14010 * gst/gsttypefind.h:
14012 * gst/registries/gstlibxmlregistry.c: (load_feature),
14013 (gst_xml_registry_load), (gst_xml_registry_save_feature):
14014 * gst/registries/gstxmlregistry.c:
14015 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
14016 * gst/schedulers/threadscheduler.c:
14017 * libs/gst/control/dparammanager.h:
14018 * tools/gst-inspect.c: (print_element_list),
14019 (print_plugin_features), (print_element_features):
14020 * tools/gst-xmlinspect.c: (print_element_list),
14021 (print_plugin_info), (main):
14022 Removed plugable schedulers.
14023 Removed Scheduler/Manager from elements.
14024 Removed gsttypes.h, rearranged includes.
14025 Removed dependency pad<->element, element<>pipeline, and
14026 various others, fix includes.
14027 implement gst_pad_get_parent() with gst_object_get_parent()
14028 Make GstTask sefcontained.
14029 Fix _get_state() on GstBin, it did not return ASYNC with a 0
14031 Fix endless loop in iterator_fold_with_resync.
14034 2005-07-18 Wim Taymans <wim@fluendo.com>
14040 2005-07-18 Wim Taymans <wim@fluendo.com>
14043 No more cothreads.h
14045 2005-07-18 Wim Taymans <wim@fluendo.com>
14049 Let's remove these.
14051 2005-07-18 Wim Taymans <wim@fluendo.com>
14053 * docs/design/part-dynamic.txt:
14054 * docs/design/part-events.txt:
14055 * docs/design/part-seeking.txt:
14056 Some more docs in the works.
14058 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
14059 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
14060 (gst_base_transform_setcaps), (gst_base_transform_get_size),
14061 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
14062 (gst_base_transform_handle_buffer),
14063 (gst_base_transform_sink_activate_push),
14064 (gst_base_transform_src_activate_pull),
14065 (gst_base_transform_set_passthrough),
14066 (gst_base_transform_is_passthrough):
14069 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
14072 * gst/gstevent.c: (gst_event_finalize):
14075 * gst/gstutils.c: (gst_element_unlink),
14076 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
14077 (gst_pad_proxy_setcaps):
14079 Add _get_parent_element() to get a pads parent as an element.
14081 2005-07-18 Wim Taymans <wim@fluendo.com>
14083 * check/gst/gstbin.c: (GST_START_TEST):
14086 2005-07-18 Wim Taymans <wim@fluendo.com>
14088 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
14089 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
14090 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
14091 (gst_base_sink_event), (gst_base_sink_do_sync),
14092 (gst_base_sink_chain), (gst_base_sink_loop),
14093 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
14094 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
14096 Fix logic for returning ASYNC when not prerolled.
14098 2005-07-18 Wim Taymans <wim@fluendo.com>
14100 * gst/gstqueue.c: (gst_queue_handle_sink_event):
14101 Fix nasty refcount bug.
14103 2005-07-16 Philippe Khalaf <burger@speedy.org>
14105 * gst/elements/gstfdsrc.c:
14106 * gst/elements/gstfdsrc.h:
14107 * gst/elements/gstelements.c:
14108 * gst/elements/Makefile.am:
14109 Ported fdsrc to 0.9.
14111 2005-07-16 Wim Taymans <wim@fluendo.com>
14113 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14114 (gst_base_sink_do_sync):
14117 2005-07-16 Wim Taymans <wim@fluendo.com>
14119 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14120 (gst_base_sink_event), (gst_base_sink_get_times),
14121 (gst_base_sink_do_sync), (gst_base_sink_change_state):
14122 * gst/base/gstbasesink.h:
14123 Store and use discont values when syncing buffers as described
14126 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
14127 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
14128 (gst_base_src_activate_push):
14129 Push discont event when starting.
14131 * gst/elements/gstidentity.c: (gst_identity_transform):
14134 * gst/gstbin.c: (gst_bin_change_state):
14135 Small cleanups in base_time distribution.
14137 * gst/gstelement.c: (gst_element_set_base_time),
14138 (gst_element_get_base_time), (gst_element_change_state):
14139 * gst/gstelement.h:
14140 Added methods for the base_time of the element.
14143 * gst/gstpipeline.c: (gst_pipeline_send_event),
14144 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
14145 (gst_pipeline_get_last_stream_time):
14146 * gst/gstpipeline.h:
14148 Handle seeking as described in design doc, remove stream_time
14150 Cleanups clock and stream_time selection code. Added accessors
14151 for the stream_time.
14154 2005-07-16 Andy Wingo <wingo@pobox.com>
14156 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
14159 2005-07-16 Wim Taymans <wim@fluendo.com>
14161 * check/gst/gstbin.c: (GST_START_TEST):
14162 Make elements silent as the deep_notify refs the
14163 parent, which might make the test fail.
14165 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
14166 Don't hold the lock for too long.
14168 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
14170 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
14171 Don't unref the caps we passed to gst_caps_make_writable() after
14172 passing them. gst_caps_make_writable() will do that for us.
14174 2005-07-15 Andy Wingo <wingo@pobox.com>
14176 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
14179 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
14180 own marshalling function for the handoff signal. Properly type the
14181 buffer as a buffer. Fixes some warnings. Should do a more general
14183 (gst_identity_class_init): Plug into the right marshaller.
14185 2005-07-15 Wim Taymans <wim@fluendo.com>
14187 * docs/design/part-TODO.txt:
14188 * docs/design/part-clocks.txt:
14189 * docs/design/part-element-sink.txt:
14190 * docs/design/part-events.txt:
14191 * docs/design/part-gstpipeline.txt:
14192 Updated docs, mostly DISCONT related.
14194 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
14196 * docs/pwg/building-pads.xml:
14197 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
14199 2005-07-15 Andy Wingo <wingo@pobox.com>
14201 * tools/gst-typefind.c: Update, add copyright block.
14203 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
14204 Normalize and truncate caps before fixation.
14207 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
14208 discards all but the first structure from its argument.
14210 2005-07-15 Wim Taymans <wim@fluendo.com>
14212 * gst/base/gstbasetransform.c: (gst_base_transform_init),
14213 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
14214 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
14215 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
14216 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
14217 (gst_base_transform_chain), (gst_base_transform_change_state),
14218 (gst_base_transform_set_passthrough),
14219 (gst_base_transform_is_passthrough):
14220 * gst/base/gstbasetransform.h:
14221 Make passthrough work using the bufferpools.
14222 Changed API a bit, subclasses have to write into a buffer
14223 provided by the base class.
14224 More debug info in nego functions.
14226 * gst/elements/gstidentity.c: (gst_identity_init),
14227 (gst_identity_transform):
14228 Port to new base class.
14230 2005-07-15 Wim Taymans <wim@fluendo.com>
14232 * gst/gstmessage.c: (gst_message_new_state_changed):
14233 * tools/gst-launch.c: (event_loop), (main):
14234 Totally dump messages in -launch with the -m option.
14235 Fix message name for State messages,
14237 2005-07-14 Wim Taymans <wim@fluendo.com>
14239 * gst/base/gstbasesrc.c: (gst_base_src_loop):
14240 Post error messages on errors.
14242 2005-07-14 Wim Taymans <wim@fluendo.com>
14244 * gst/gstcaps.c: (gst_caps_do_simplify):
14248 Define error for stream stopped.
14250 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
14251 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
14252 Do proper return values.
14254 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
14255 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
14256 (gst_pad_get_range):
14257 Better return values.
14260 Reorganise return values, add macro to check for fatal errors.
14262 * gst/gstqueue.c: (gst_queue_chain):
14263 Return proper GstFlowReturn values,
14265 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
14267 * docs/gst/gstreamer-sections.txt:
14268 * docs/gst/gstreamer.types:
14269 * docs/gst/tmpl/gst.sgml:
14270 * docs/gst/tmpl/gstbasesink.sgml:
14271 * docs/gst/tmpl/gstbasesrc.sgml:
14272 * docs/gst/tmpl/gstbasetransform.sgml:
14273 * docs/gst/tmpl/gstbin.sgml:
14274 * docs/gst/tmpl/gstbuffer.sgml:
14275 * docs/gst/tmpl/gstcaps.sgml:
14276 * docs/gst/tmpl/gstclock.sgml:
14277 * docs/gst/tmpl/gstcompat.sgml:
14278 * docs/gst/tmpl/gstconfig.sgml:
14279 * docs/gst/tmpl/gstelement.sgml:
14280 * docs/gst/tmpl/gstelementdetails.sgml:
14281 * docs/gst/tmpl/gstelementfactory.sgml:
14282 * docs/gst/tmpl/gstenumtypes.sgml:
14283 * docs/gst/tmpl/gsterror.sgml:
14284 * docs/gst/tmpl/gstevent.sgml:
14285 * docs/gst/tmpl/gstfakesink.sgml:
14286 * docs/gst/tmpl/gstfakesrc.sgml:
14287 * docs/gst/tmpl/gstfilesink.sgml:
14288 * docs/gst/tmpl/gstfilesrc.sgml:
14289 * docs/gst/tmpl/gstfilter.sgml:
14290 * docs/gst/tmpl/gstformat.sgml:
14291 * docs/gst/tmpl/gstghostpad.sgml:
14292 * docs/gst/tmpl/gstimplementsinterface.sgml:
14293 * docs/gst/tmpl/gstindex.sgml:
14294 * docs/gst/tmpl/gstindexfactory.sgml:
14295 * docs/gst/tmpl/gstinfo.sgml:
14296 * docs/gst/tmpl/gstiterator.sgml:
14297 * docs/gst/tmpl/gstmacros.sgml:
14298 * docs/gst/tmpl/gstmemchunk.sgml:
14299 * docs/gst/tmpl/gstminiobject.sgml:
14300 * docs/gst/tmpl/gstobject.sgml:
14301 * docs/gst/tmpl/gstpad.sgml:
14302 * docs/gst/tmpl/gstpadtemplate.sgml:
14303 * docs/gst/tmpl/gstparse.sgml:
14304 * docs/gst/tmpl/gstpipeline.sgml:
14305 * docs/gst/tmpl/gstplugin.sgml:
14306 * docs/gst/tmpl/gstpluginfeature.sgml:
14307 * docs/gst/tmpl/gstquery.sgml:
14308 * docs/gst/tmpl/gstqueue.sgml:
14309 * docs/gst/tmpl/gstregistry.sgml:
14310 * docs/gst/tmpl/gstregistrypool.sgml:
14311 * docs/gst/tmpl/gstscheduler.sgml:
14312 * docs/gst/tmpl/gstschedulerfactory.sgml:
14313 * docs/gst/tmpl/gststructure.sgml:
14314 * docs/gst/tmpl/gstsystemclock.sgml:
14315 * docs/gst/tmpl/gsttaglist.sgml:
14316 * docs/gst/tmpl/gsttagsetter.sgml:
14317 * docs/gst/tmpl/gsttrace.sgml:
14318 * docs/gst/tmpl/gsttrashstack.sgml:
14319 * docs/gst/tmpl/gsttypefind.sgml:
14320 * docs/gst/tmpl/gsttypefindfactory.sgml:
14321 * docs/gst/tmpl/gsttypes.sgml:
14322 * docs/gst/tmpl/gsturihandler.sgml:
14323 * docs/gst/tmpl/gsturitype.sgml:
14324 * docs/gst/tmpl/gstutils.sgml:
14325 * docs/gst/tmpl/gstvalue.sgml:
14326 * docs/gst/tmpl/gstversion.sgml:
14327 * docs/gst/tmpl/gstxml.sgml:
14328 * docs/libs/tmpl/gstcontrol.sgml:
14329 * docs/libs/tmpl/gstdataprotocol.sgml:
14330 * docs/libs/tmpl/gstdparam.sgml:
14331 * docs/libs/tmpl/gstdplinint.sgml:
14332 * docs/libs/tmpl/gstdpman.sgml:
14333 * docs/libs/tmpl/gstdpsmooth.sgml:
14334 * docs/libs/tmpl/gstgetbits.sgml:
14335 * docs/libs/tmpl/gstunitconvert.sgml:
14336 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
14337 (gst_push_src_base_init), (gst_push_src_class_init),
14338 (gst_push_src_init), (gst_push_src_create):
14339 * gst/base/gstpushsrc.h:
14340 * gst/elements/gstelements.c:
14341 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
14342 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
14343 (gst_fake_sink_init), (gst_fake_sink_set_property),
14344 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
14345 (gst_fake_sink_event), (gst_fake_sink_preroll),
14346 (gst_fake_sink_render), (gst_fake_sink_change_state):
14347 * gst/elements/gstfakesink.h:
14348 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
14349 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
14350 (gst_fake_src_base_init), (gst_fake_src_class_init),
14351 (gst_fake_src_init), (gst_fake_src_event_handler),
14352 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
14353 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
14354 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
14355 (gst_fake_src_create_buffer), (gst_fake_src_create),
14356 (gst_fake_src_start), (gst_fake_src_stop):
14357 * gst/elements/gstfakesrc.h:
14358 * gst/elements/gstfilesink.c: (_do_init),
14359 (gst_file_sink_base_init), (gst_file_sink_class_init),
14360 (gst_file_sink_init), (gst_file_sink_dispose),
14361 (gst_file_sink_set_location), (gst_file_sink_set_property),
14362 (gst_file_sink_get_property), (gst_file_sink_open_file),
14363 (gst_file_sink_close_file), (gst_file_sink_query),
14364 (gst_file_sink_event), (gst_file_sink_render),
14365 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
14366 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
14367 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
14368 * gst/elements/gstfilesink.h:
14369 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
14370 (gst_file_src_class_init), (gst_file_src_init),
14371 (gst_file_src_finalize), (gst_file_src_set_location),
14372 (gst_file_src_set_property), (gst_file_src_get_property),
14373 (gst_file_src_map_region), (gst_file_src_map_small_region),
14374 (gst_file_src_create_mmap), (gst_file_src_create_read),
14375 (gst_file_src_create), (gst_file_src_is_seekable),
14376 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
14377 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
14378 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
14379 (gst_file_src_uri_handler_init):
14380 * gst/elements/gstfilesrc.h:
14381 more autistic cleanliness in functions/names/defines
14383 2005-07-13 Andy Wingo <wingo@pobox.com>
14385 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
14386 source couldn't negotiate.
14388 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
14392 * gst/gstutils.c (gst_element_link_pads_filtered): New old
14393 function. I am channeling Hades. Put your boots on suckers!!!
14395 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
14397 * testsuite/caps/Makefile.am:
14398 * testsuite/caps/value_compare.c:
14399 * testsuite/caps/value_intersect.c:
14400 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
14401 move two testsuite apps over to the check dir
14403 2005-07-12 Wim Taymans <wim@fluendo.com>
14405 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
14406 Added more debug info in the negotiate process.
14408 * gst/gstmessage.h:
14409 Prepare for segment playback.
14411 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
14417 * tools/gst-launch.c: (main):
14418 NULL pipeline on errors.
14420 2005-07-12 Andy Wingo <wingo@pobox.com>
14422 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
14423 not it comes from a malloc region. Make sure our copy gets freed.
14425 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14427 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
14428 * check/gst/gstmessage.c: (GST_START_TEST):
14429 * check/gst/gststructure.c: (GST_START_TEST),
14430 (gst_structure_suite), (main):
14432 * gst/gstelement.c: (gst_element_message_full):
14433 clean up GError and debug string now that they get copied
14434 * gst/gstmessage.c: (gst_message_new_error),
14435 (gst_message_new_warning), (gst_message_parse_error),
14436 (gst_message_parse_warning):
14437 use GST_TYPE_G_ERROR for structure_new, and take copies of
14438 arguments, so that we don't mess up refcounting
14440 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14442 * check/Makefile.am:
14443 add per-test valgrind targets
14444 * check/gst-libs/gdp.c: (GST_START_TEST),
14445 (gst_data_protocol_suite), (main):
14448 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14450 * check/Makefile.am:
14451 instate more valgrindable tests
14452 * check/elements/gstfakesrc.c: (chain_func), (event_func),
14453 (GST_START_TEST), (fakesrc_suite):
14454 * check/gst/gstpad.c: (GST_START_TEST):
14455 * check/gst/gststructure.c: (GST_START_TEST):
14457 * docs/gst/tmpl/gstminiobject.sgml:
14458 * gst/gstpad.c: (gst_pad_finalize):
14459 fix the static mutex leak
14461 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14463 * check/Makefile.am:
14464 add two more tests for valgrinding
14465 * check/gst/gstvalue.c: (GST_START_TEST):
14466 test refcount of deserialized buffer, found a leak
14467 * docs/gst/gstreamer-docs.sgml:
14468 * docs/gst/gstreamer-sections.txt:
14469 * docs/gst/gstreamer.types:
14470 * docs/gst/tmpl/gstminiobject.sgml:
14471 add miniobject to docs
14472 * gst/gstminiobject.c:
14474 * gst/gstvalue.c: (gst_value_deserialize_buffer),
14475 (gst_string_unwrap):
14476 fix a hard-to-find invalid write for one of the tests
14477 fix a leak for deserialized buffers
14479 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14481 * docs/pwg/advanced-events.xml:
14482 * docs/pwg/advanced-request.xml:
14483 * docs/pwg/advanced-scheduling.xml:
14484 * docs/pwg/appendix-porting.xml:
14485 * docs/pwg/building-boiler.xml:
14486 * docs/pwg/intro-preface.xml:
14487 * docs/pwg/other-ntoone.xml:
14488 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
14489 of example code and explanation for pad activation, loop() and
14490 getrange() functions and a bit more. Remove old comments pointing
14492 * examples/pwg/Makefile.am:
14493 Add loop/getrange examples.
14495 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14498 check for valgrind binary + some fixes
14500 valgrind suppressions for the tests
14501 * check/Makefile.am:
14502 add a valgrind: target that valgrinds the unit tests
14503 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
14504 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
14505 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
14506 * check/gst/gstghostpad.c:
14508 * check/gst/gstdata.c:
14510 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
14511 (thread_unref), (gst_mini_object_suite), (main):
14513 * gst/gst.c: (gst_deinit):
14515 add a method to clean up.
14516 * gst/gstsystemclock.c: (gst_system_clock_dispose),
14517 (gst_system_clock_obtain):
14518 allow for disposing the system clock.
14519 * tools/gst-launch.c: (main):
14522 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14524 * docs/gst/tmpl/gstbasesrc.sgml:
14525 * docs/gst/tmpl/gstfakesrc.sgml:
14526 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14527 (gst_base_src_init), (gst_base_src_set_property),
14528 (gst_base_src_get_property), (gst_base_src_get_range),
14529 (gst_base_src_start):
14530 * gst/base/gstbasesrc.h:
14531 add num-buffers property
14532 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14533 (gst_fakesrc_init), (gst_fakesrc_set_property),
14534 (gst_fakesrc_get_property), (gst_fakesrc_create),
14535 (gst_fakesrc_start):
14536 remove num-buffers property
14538 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14540 * docs/gst/gstreamer-sections.txt:
14541 * docs/gst/tmpl/gstbasesink.sgml:
14542 * docs/gst/tmpl/gstbasesrc.sgml:
14543 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
14544 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
14545 (gst_base_sink_finalize), (gst_base_sink_set_clock),
14546 (gst_base_sink_set_property), (gst_base_sink_get_property),
14547 (gst_base_sink_handle_object), (gst_base_sink_event),
14548 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
14549 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
14550 (gst_base_sink_loop), (gst_base_sink_deactivate),
14551 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
14552 (gst_base_sink_change_state):
14553 * gst/base/gstbasesink.h:
14554 * gst/base/gstbasesrc.h:
14555 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
14556 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
14557 (gst_filesink_init):
14558 more macro splitting
14560 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14562 * gst/gstelement.c: (gst_element_get_bus):
14564 * tools/gst-launch.c: (check_intr), (event_loop):
14567 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14569 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
14572 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14574 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14575 (gst_base_src_finalize):
14576 add finalize method and clean up properly
14577 * gst/gstpipeline.c: (gst_pipeline_dispose):
14580 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
14582 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
14584 add more things to check
14585 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
14586 * gst/gstelement.c:
14589 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
14591 * check/elements/gstfakesrc.c: (chain_func), (event_func),
14592 (GST_START_TEST), (fakesrc_suite):
14593 * check/gst-libs/gdp.c: (GST_START_TEST):
14594 * check/gst/gst.c: (GST_START_TEST):
14595 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
14596 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
14597 * check/gst/gstbus.c: (GST_START_TEST):
14598 * check/gst/gstcaps.c: (GST_START_TEST):
14599 * check/gst/gstdata.c: (GST_START_TEST):
14600 * check/gst/gstelement.c: (GST_START_TEST):
14601 * check/gst/gstghostpad.c: (GST_START_TEST):
14602 * check/gst/gstiterator.c: (GST_START_TEST):
14603 * check/gst/gstmessage.c: (GST_START_TEST):
14604 * check/gst/gstobject.c: (GST_START_TEST):
14605 * check/gst/gstpad.c: (GST_START_TEST):
14606 * check/gst/gststructure.c: (GST_START_TEST):
14607 * check/gst/gstsystemclock.c: (GST_START_TEST),
14608 (gst_systemclock_suite):
14609 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
14610 * check/gst/gstvalue.c: (GST_START_TEST):
14611 * check/pipelines/cleanup.c: (GST_START_TEST):
14612 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
14613 * check/states/sinks.c: (GST_START_TEST):
14614 * check/gstcheck.c: (gst_check_init):
14615 * check/gstcheck.h:
14616 add debugging category
14617 use GST_START_TEST now, so we add a debug line
14619 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
14621 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
14622 add test for state change message on a bin
14623 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
14625 * gst/gstbin.c: (gst_bin_init):
14626 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
14627 * gst/gstelement.c: (gst_element_post_message),
14628 (gst_element_set_state):
14629 * gst/gstelementfactory.c: (gst_element_factory_create):
14630 * gst/gstmessage.c: (gst_message_new):
14631 * gst/gstscheduler.c:
14632 various debugging additions and cleanups
14634 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14636 * check/Makefile.am:
14637 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
14639 adding tests for elements
14640 * gst/gstelement.c: (gst_element_dispose):
14642 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14644 * gst/registries/gstlibxmlregistry.c: (load_feature):
14645 plug more leaks. A simple gst_init() now is leakfree, yay.
14647 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14649 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
14650 (gst_xml_registry_load):
14651 plug another memleak
14653 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14656 use GST_SET_ERROR_CFLAGS
14657 * docs/faq/cvs.xml:
14658 change to ERROR_CFLAGS
14660 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14663 make GST_ERROR_CFLAGS overridable and re-enable Werror
14664 * docs/faq/cvs.xml:
14665 add a note about error CFLAGS
14666 * docs/gst/tmpl/gstfakesrc.sgml:
14667 * gst/elements/gstfakesrc.c:
14668 comment out some unused code
14669 * gst/gst.c: (split_and_iterate):
14670 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
14674 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
14676 * common/Makefile.am:
14677 * common/gtk-doc.mak:
14678 * docs/gst/Makefile.am:
14679 factor out gtk-doc.mak
14681 2005-07-07 Wim Taymans <wim@fluendo.com>
14683 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
14684 (gst_thread_scheduler_dispose):
14685 Unlock the STREAM_LOCK completely.
14687 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
14689 * check/Makefile.am:
14690 * check/elements/.cvsignore:
14691 * check/elements/gstfakesrc.c: (chain_func), (event_func),
14692 (START_TEST), (fakesrc_suite), (main):
14693 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14694 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
14695 (gst_fakesrc_create), (gst_fakesrc_start):
14696 * gst/elements/gstfakesrc.h:
14697 adding a first element test
14699 2005-07-07 Andy Wingo <wingo@pobox.com>
14701 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
14704 2005-07-07 Wim Taymans <wim@fluendo.com>
14710 2005-07-07 Wim Taymans <wim@fluendo.com>
14712 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
14713 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
14714 Allow subclasses to implement their own negotiation.
14716 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14718 * docs/design/part-gstbin.txt:
14719 * docs/design/part-gstpipeline.txt:
14720 Update design notes to reflect the movement of
14721 responsibility for bus handling from GstPipeline to
14724 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14727 Remove unnecessary queue2/3/4 examples.
14729 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14731 * examples/Makefile.am:
14732 * examples/helloworld/helloworld.c: (event_loop), (main):
14733 * examples/queue/queue.c: (event_loop), (main):
14734 * examples/queue2/queue2.c: (main):
14735 Update a couple of the examples to work again.
14737 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14738 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
14739 Spelling corrections and extra debug.
14741 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
14742 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
14743 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
14745 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
14746 (gst_pipeline_change_state):
14747 * gst/gstpipeline.h:
14748 Move the bus handler for children to the GstBin, and create a
14749 separate bus for receiving messages from children to the one the
14750 bus sends 'upwards' on.
14752 2005-07-06 Wim Taymans <wim@fluendo.com>
14755 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14756 (gst_base_sink_handle_object), (gst_base_sink_loop),
14757 (gst_base_sink_change_state):
14758 * gst/base/gstbasesink.h:
14759 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14760 (gst_base_src_init), (gst_base_src_setcaps),
14761 (gst_base_src_getcaps), (gst_base_src_loop),
14762 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
14763 (gst_base_src_start), (gst_base_src_change_state):
14764 * gst/base/gstbasesrc.h:
14765 Make basesrc negotiate.
14766 Handle the case where preroll fails in basesink.
14769 2005-07-06 Wim Taymans <wim@fluendo.com>
14771 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
14772 Implement the fixate function.
14773 Clean up acceptcaps.
14775 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14777 * docs/pwg/building-filterfactory.xml:
14778 * docs/pwg/pwg.xml:
14779 Remove never-written filter-factory chapter; I'll add the various
14780 base classes to part 4 ("other element types") later on.
14782 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14784 * docs/pwg/advanced-negotiation.xml:
14785 * docs/pwg/building-boiler.xml:
14786 * docs/pwg/building-pads.xml:
14787 * docs/pwg/pwg.xml:
14788 * examples/pwg/Makefile.am:
14789 Add a chapter on caps negotiation, simplify the original code
14790 samples a bit w.r.t. caps negotiation, add link to the advanced
14791 section. Add a bunch of examples showing different use cases of
14792 different types of caps negotiation. Upstream renegotiation isn't
14793 fully documented yet since nobody knows how that works.
14795 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
14797 * check/gst/gstpad.c:
14798 * check/gstcheck.c:
14799 * gst/gstpad.c: (gst_pad_get_internal_links_default):
14800 if pad has no parent, return NULL as list of internal links
14802 2005-07-05 Andy Wingo <wingo@pobox.com>
14804 * gst/elements/gstfilesrc.c:
14805 * gst/elements/gstfakesrc.c:
14806 * gst/base/gstpushsrc.c:
14807 * gst/base/gstbasesrc.h:
14808 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
14810 2005-07-05 Stefan Kost <ensonic@users.sf.net>
14813 better report generation target (lcov needs a patch)
14815 2005-07-05 Andy Wingo <wingo@pobox.com>
14817 * gst/elements, testsuite: Null if we got it...
14819 2005-07-05 Wim Taymans <wim@fluendo.com>
14822 * libs/gst/dataprotocol/Makefile.am:
14823 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
14824 * libs/gst/dataprotocol/dataprotocol.h:
14825 * pkgconfig/Makefile.am:
14826 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
14827 * pkgconfig/gstreamer-dataprotocol.pc.in:
14828 Ported dataprotol to 0.9.
14829 Added pkgconfig files.
14831 2005-07-05 Andy Wingo <wingo@pobox.com>
14833 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
14834 Default to returning TRUE for the case when tranform_caps returns
14835 a fixed caps, like for identity or volume.
14837 * check/gst/gstbus.c (pound_bus_with_messages):
14838 * check/gst/gstmessage.c (START_TEST):
14839 * check/pipelines/simple_launch_lines.c (got_handoff): Application
14840 message API change.
14842 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
14843 logic weaks here: always run transform_caps, trying passthrough
14844 operation only if the original caps intersects with the transform.
14846 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
14847 source and sink caps.
14849 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
14850 Intersect the peer caps with the pad template before going into
14852 (gst_base_transform_transform_caps): More debugging.
14854 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
14857 2005-07-04 Edward Hervey <edward@fluendo.com>
14861 (gst_pad_add_*_probe): now returns the signal id for better wrapping
14864 2005-07-04 Andy Wingo <wingo@pobox.com>
14866 * check/gst/gstpad.c: Only set explicit caps on pads.
14868 2005-07-01 Andy Wingo <wingo@pobox.com>
14870 * tests/network-clock.scm: Commentary update.
14872 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
14873 Didn't really make sense, not implementable with basetransform,
14875 (gst_identity_transform): Unref inbuf via make_writable. Feeble
14876 attempt at implementing the sync property, needs an unlock method.
14878 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
14879 New func, by default returns the same caps (the identity
14881 (gst_base_transform_getcaps): Uses transform_caps to return
14882 something sensible.
14883 (gst_base_transform_setcaps): Complicated logic to get caps on
14884 both pads, even if they are different, and to call set_caps once
14885 for every time both pads get their caps set.
14886 (gst_base_transform_handle_buffer): Give the ref to the transform
14887 function. Allows in-place modification of the buffer.
14889 * gst/base/gstbasetransform.h (transform_caps): New class method.
14890 Given caps on one side, what can I do on the other.
14891 (set_caps): Take two caps, one for each side of the element.
14894 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
14895 caps in place. This is safe because we can check the mutability of
14896 the caps, and a good idea because fixate functions are just called
14897 as a matter of last resort. (Not actually implemented.)
14898 (gst_pad_set_caps): If the caps we're setting is actually the same
14899 as the existing pad caps, just update the pointer without calling
14900 setcaps. Assert that caps is either NULL or fixed, as per the
14903 * gst/gstghostpad.c: Update for fixate changes.
14905 2005-07-02 Andy Wingo <wingo@pobox.com>
14908 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
14909 two refcounts makes it immutable, which is enough. Doc more.
14911 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
14913 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
14914 Put the mini_object into GValue as a mini_object,
14915 not a gpointer, since that's how we declared
14918 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14920 * examples/pwg/Makefile.am:
14921 Fix buildbot again.
14923 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14925 * docs/pwg/building-testapp.xml:
14927 * examples/pwg/Makefile.am:
14930 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14933 * examples/Makefile.am:
14934 * examples/pwg/Makefile.am:
14935 * examples/pwg/extract.pl:
14936 Enable building the PWG examples.
14937 * docs/pwg/advanced-interfaces.xml:
14938 Add URI interface stub.
14939 * docs/pwg/advanced-types.xml:
14940 * docs/pwg/other-autoplugger.xml:
14941 * docs/pwg/appendix-porting.xml:
14942 * docs/pwg/pwg.xml:
14943 Add porting guide (mostly stubs), remove autoplugging (see ADM).
14944 * docs/pwg/building-boiler.xml:
14945 * docs/pwg/building-chainfn.xml:
14946 * docs/pwg/building-pads.xml:
14947 * docs/pwg/building-props.xml:
14948 * docs/pwg/building-state.xml:
14949 * docs/pwg/building-testapp.xml:
14950 Update the building-*.xml parts for 0.9 changes. All examples
14951 code blocks compile in examples/pwg/*.
14953 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14955 * docs/manual/advanced-autoplugging.xml:
14956 * docs/manual/appendix-checklist.xml:
14957 * docs/manual/appendix-integration.xml:
14958 * docs/manual/highlevel-components.xml:
14959 Fix playbin/decodebin examples, update docs a bit, mention bus
14960 instead of signals in various places, mention kmplayer and
14961 kaffeine since they have a working GStreamer backend in the KDE
14964 2005-06-30 Wim Taymans <wim@fluendo.com>
14967 * docs/design/draft-ghostpads.txt:
14968 * docs/design/draft-push-pull.txt:
14969 * docs/design/draft-query.txt:
14970 * docs/design/part-TODO.txt:
14971 * docs/design/part-query.txt:
14972 Added CHANGES-0.9 doc, updated status of other docs.
14977 2005-06-30 Wim Taymans <wim@fluendo.com>
14979 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14980 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
14981 (gst_base_sink_change_state):
14982 * gst/base/gstbasesink.h:
14983 Some tweaks, only EOS and a buffer complete a preroll.
14985 2005-06-30 Andy Wingo <wingo@pobox.com>
14987 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
14988 activate_push down to the internal pad as well.
14990 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
14992 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14994 * gst/gsttaginterface.c:
14995 Some documentation fixes (#307394 and #307397).
14997 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
14999 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15001 * gst/gstvalue.c: (gst_value_intersect_list):
15002 Fix memleak (#309125).
15004 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15006 * docs/manual/advanced-dataaccess.xml:
15007 Fix fakesrc example to compile; doesn't work, bug somewhere...?
15008 * docs/manual/basics-pads.xml:
15009 Add reference for filtered caps to above chapter.
15011 2005-06-30 Wim Taymans <wim@fluendo.com>
15013 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
15014 (gst_bin_change_state):
15016 Lame attempt at making the state change function a bit
15019 2005-06-30 Wim Taymans <wim@fluendo.com>
15021 * docs/design/part-clocks.txt:
15022 * docs/design/part-element-sink.txt:
15023 * docs/design/part-events.txt:
15024 * docs/design/part-preroll.txt:
15025 * docs/design/part-states.txt:
15026 Some more tweeks and additions to the docs.
15028 2005-06-30 Wim Taymans <wim@fluendo.com>
15030 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15031 (default_have_data), (gst_pad_class_init), (gst_pad_init),
15032 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
15033 (gst_pad_check_pull_range), (gst_pad_get_range),
15034 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
15036 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
15037 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
15038 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
15039 (gst_pad_remove_buffer_probe):
15040 Removed atomic operations, use existing LOCK.
15041 Move exception handling out of main code path.
15043 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15045 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15046 (silly_return_true_function), (gst_pad_class_init),
15047 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
15048 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
15049 (gst_pad_send_event):
15050 Fix accumulator, add default value by using _emitv() instead
15051 of _emit() for signal emission.
15053 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15055 * docs/manual/advanced-dataaccess.xml:
15056 * examples/manual/Makefile.am:
15058 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
15061 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
15063 * gst/elements/gstfilesink.c: (gst_filesink_render):
15064 Simplify code so that we don't have to handle short
15065 writes and return GST_FLOW_ERROR if an error occured.
15067 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15069 * docs/gst/gstreamer-docs.sgml:
15070 Remove probes more.
15072 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15074 * docs/gst/gstreamer-sections.txt:
15075 * docs/gst/tmpl/gstpad.sgml:
15076 * docs/gst/tmpl/gstprobe.sgml:
15078 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15079 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
15080 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
15081 (gst_pad_push_event), (gst_pad_send_event):
15083 * gst/gstutils.c: (gst_pad_add_data_probe),
15084 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
15085 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
15086 (gst_pad_remove_buffer_probe):
15088 Remove old probes, add new g-signal-based probes and some utility
15091 2005-06-29 Edward Hervey <edward@fluendo.com>
15093 * gst/gstelementfactory.c:
15096 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
15097 the definition to the header file.
15099 2005-06-29 Andy Wingo <wingo@pobox.com>
15101 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
15102 plugins from the source directory.
15104 2005-06-29 Wim Taymans <wim@fluendo.com>
15106 * docs/gst/tmpl/gstbuffer.sgml:
15107 * docs/gst/tmpl/gstclock.sgml:
15108 Some fixings for blantently wrong text.
15110 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
15112 * check/Makefile.am:
15113 * gst/gst.c: (add_path_func), (init_pre):
15114 * gst/gstregistry.c: (gst_registry_add_path):
15115 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
15116 only scan the GST_PLUGIN_PATH locations, and not add
15119 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
15121 * docs/gst/gstreamer-sections.txt:
15122 * docs/gst/tmpl/gstbasesrc.sgml:
15123 * gst/gstelement.c:
15124 * gst/gstelement.h:
15129 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15131 * docs/manual/advanced-autoplugging.xml:
15132 Fix autoplugging example.
15134 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15136 * docs/manual/advanced-autoplugging.xml:
15137 * docs/manual/mime-world.fig:
15138 Try to get autoplugging working, fix type detection. Fix text
15139 in hello-world image.
15141 2005-06-29 Wim Taymans <wim@fluendo.com>
15143 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
15144 (gst_base_sink_change_state):
15148 map SIGNAL and BROADCAST to the right function.
15151 Remove redundant braces.
15153 * gst/gstpad.c: (gst_pad_set_caps):
15154 Don't call setcaps function when reseting caps to NULL.
15156 * gst/gstsystemclock.c: (gst_system_clock_dispose),
15157 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
15158 (gst_system_clock_id_unschedule):
15159 Use BROADCAST as this is what we do.
15161 2005-06-29 Wim Taymans <wim@fluendo.com>
15163 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
15164 We are actually prerolling before commiting the state
15167 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15169 * docs/manual/advanced-clocks.xml:
15170 * docs/manual/advanced-interfaces.xml:
15171 * docs/manual/advanced-metadata.xml:
15172 * docs/manual/advanced-position.xml:
15173 * docs/manual/advanced-schedulers.xml:
15174 * docs/manual/advanced-threads.xml:
15175 * docs/manual/appendix-porting.xml:
15176 * docs/manual/basics-bins.xml:
15177 * docs/manual/basics-bus.xml:
15178 * docs/manual/basics-elements.xml:
15179 * docs/manual/basics-helloworld.xml:
15180 * docs/manual/basics-pads.xml:
15181 * docs/manual/highlevel-components.xml:
15182 * docs/manual/manual.xml:
15183 * docs/manual/thread.fig:
15184 Update (until threads/scheduling) Application Development Manual;
15185 remove GstThread, add GstBus, add simple porting checklist, add
15186 documentation for tag writing, clocks, make all examples until this
15187 part compile and run.
15188 * examples/manual/Makefile.am:
15189 Update from changes to Application Development Manual; add bus
15190 example, remove thread example.
15192 2005-06-28 Wim Taymans <wim@fluendo.com>
15194 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
15195 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
15196 (gst_bus_source_dispatch):
15197 Add debugging messages.
15198 Make internal methods static.
15199 Handle the case where the bus is flushed in the handler.
15201 * gst/gstelement.c: (gst_element_get_bus):
15202 Fix refcount in _get_bus();
15204 * gst/gstpipeline.c: (gst_pipeline_change_state),
15205 (gst_pipeline_get_clock_func):
15206 Clock refcounting fixes.
15207 Handle the case where preroll timed out more gracefully.
15209 * gst/gstsystemclock.c: (gst_system_clock_dispose):
15210 Clean up the internal thread in dispose. This is needed
15211 for subclasses that actually get disposed.
15213 * gst/schedulers/threadscheduler.c:
15214 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
15215 (gst_thread_scheduler_dispose):
15216 Free thread pool in dispose.
15218 2005-06-28 Andy Wingo <wingo@pobox.com>
15220 * tests/network-clock-utils.scm (debug, print-event): New utils.
15222 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
15223 (*packet-loss*): Unified loss probability.
15224 (network-time): Report out-of-band events.
15226 * tests/plot-data: Add support for out-of-band events. Hack it
15227 into this script instead of passing it down the pipe; should fix
15230 2005-06-28 Wim Taymans <wim@fluendo.com>
15232 * docs/gst/gstreamer.types:
15233 * docs/gst/tmpl/gstbasesrc.sgml:
15234 * docs/gst/tmpl/gstpad.sgml:
15237 2005-06-28 Wim Taymans <wim@fluendo.com>
15239 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15240 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
15241 (gst_proxy_pad_do_fixatecaps):
15242 Correctly proxy the check_pull_range function.
15244 2005-06-28 Andy Wingo <wingo@pobox.com>
15246 * tests/network-clock.scm: Removed need for slib.
15248 2005-06-28 Wim Taymans <wim@fluendo.com>
15250 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
15251 (gst_basesink_preroll_queue_flush):
15252 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
15253 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
15254 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15255 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
15256 (gst_proxy_pad_set_property):
15259 * gst/gstqueue.c: (gst_queue_init):
15260 The deprecated pad loop function is removed now.
15262 2005-06-28 Andy Wingo <wingo@pobox.com>
15264 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
15265 New parameters, simulate network packet loss.
15267 * tests/network-clock-utils.scm: Initialize the RNG.
15269 2005-06-28 Wim Taymans <wim@fluendo.com>
15271 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
15272 (gst_basesink_event), (gst_basesink_deactivate):
15273 Flushing the preroll queue always needs to unlock the waiters.
15275 2005-06-28 Edward Hervey <edward@fluendo.com>
15277 * gst/gstpipeline.c: (gst_pipeline_send_event):
15278 Wheen a seek was successful on a pipeline, set the stream_time to the
15279 seek offset in order to have a synchronized stream_time.
15281 2005-06-28 Wim Taymans <wim@fluendo.com>
15283 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15284 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
15285 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
15286 (gst_proxy_pad_do_fixatecaps):
15287 Call wrapper function instead of just calling the function
15288 pointers. This takes care of any locking and whatmore.
15290 2005-06-28 Wim Taymans <wim@fluendo.com>
15292 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
15293 (gst_pad_pull_range):
15295 CONNECTED -> LINKED.
15297 2005-06-28 Andy Wingo <wingo@pobox.com>
15299 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
15300 source-munging commit!!!
15302 * gst/gstobject.c (gst_object_unref, gst_object_ref)
15303 (gst_object_sink): Take gpointer arguments, not GstObject --
15304 avoids casts. Like GLib.
15306 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
15309 2005-06-27 Andy Wingo <wingo@pobox.com>
15311 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
15314 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
15315 returns a sorted copy of the trace list.
15316 (gst_alloc_trace_print_live): New API, only prints traces with
15317 live objects. Sort the list.
15318 (gst_alloc_trace_print_all): Sort the list.
15319 (gst_alloc_trace_print): Align columns.
15321 * gst/elements/gstttypefindelement.c:
15322 * gst/elements/gsttee.c:
15323 * gst/base/gstbasesrc.c:
15324 * gst/base/gstbasesink.c:
15325 * gst/base/gstbasetransform.c:
15326 * gst/gstqueue.c: Adapt for pad activation changes.
15328 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
15330 (gst_pipeline_dispose): Drop ref on sched.
15332 * gst/gstpad.c (gst_pad_init): Set the default activate func.
15333 (gst_pad_activate_default): Push mode by default.
15334 (pre_activate_switch, post_activate_switch): New stubs, things to
15335 do before and after switching activation modes on pads.
15336 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
15337 the pad's activate function to choose which mode to activate.
15338 Shortcut on deactivation and call the right function directly.
15339 (gst_pad_activate_pull): New API, (de)activates a pad in pull
15341 (gst_pad_activate_push): New API, same for push mode.
15342 (gst_pad_set_activate_function)
15343 (gst_pad_set_activatepull_function)
15344 (gst_pad_set_activatepush_function): Setters for new API.
15346 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
15347 Trace all miniobjects.
15348 (gst_mini_object_make_writable): Unref the arg if we copy, like
15349 gst_caps_make_writable.
15351 * gst/gstmessage.c (_gst_message_initialize): No trace init.
15353 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
15354 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
15355 Adapt for new pad API.
15357 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
15359 * gst/gstelement.h:
15360 * gst/gstelement.c (gst_element_iterate_src_pads)
15361 (gst_element_iterate_sink_pads): New API functions.
15363 * gst/gstelement.c (iterator_fold_with_resync): New utility,
15364 should fold into gstiterator.c in some form.
15365 (gst_element_pads_activate): Simplified via use of fold and
15366 delegation of decisions to gstpad->activate.
15368 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
15371 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
15372 class once in init, like gstmessage. Didn't run into this issue
15373 but it seems correct. Don't initialize a trace, gstminiobject does
15376 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
15377 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
15379 (assert_live_count): New util function, uses alloc traces to check
15382 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
15383 To be modified when unlink drops the internal pad.
15385 2005-06-27 Wim Taymans <wim@fluendo.com>
15387 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
15388 (gst_bin_change_state):
15389 Cleanup the get_state() function a little, make sure it
15390 iterates the same set of elements.
15391 Added stub iterate_state_order().
15393 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
15395 * docs/gst/gstreamer-docs.sgml:
15396 * docs/gst/gstreamer-sections.txt:
15397 * docs/gst/gstreamer.types:
15398 * docs/gst/tmpl/gstbasesink.sgml:
15399 * docs/gst/tmpl/gstbasesrc.sgml:
15400 * docs/gst/tmpl/gstbasetransform.sgml:
15401 * docs/gst/tmpl/gstelement.sgml:
15402 * docs/gst/tmpl/gstiterator.sgml:
15403 * gst/base/gstbasesrc.c:
15404 * gst/base/gstbasesrc.h:
15405 * gst/base/gstbasetransform.h:
15406 * gst/gstelement.c:
15407 * gst/gstiterator.h:
15408 adding basetransform and iterator docs
15410 2005-06-27 Andy Wingo <wingo@pobox.com>
15412 * docs/design/part-activation.txt: Notes on how activation should
15413 work -- not quite implemented yet.
15415 2005-06-25 Wim Taymans <wim@fluendo.com>
15417 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
15418 At least get the chain function correct, needs more
15421 2005-06-25 Wim Taymans <wim@fluendo.com>
15423 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15424 (gst_basesink_handle_object), (gst_basesink_event),
15425 (gst_basesink_do_sync), (gst_basesink_handle_event),
15426 (gst_basesink_change_state):
15428 Right, two problems here: ghostpads don't take locks and
15429 glib _rec_mutex_lock_full() with depth==0 still locks.
15430 Catch illegal locking and g_warn them.
15432 2005-06-25 Wim Taymans <wim@fluendo.com>
15434 * check/states/sinks.c: (START_TEST), (gst_object_suite):
15435 Have to check for completion now...
15437 2005-06-25 Wim Taymans <wim@fluendo.com>
15439 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15440 (gst_basesink_handle_object), (gst_basesink_event),
15441 (gst_basesink_do_sync), (gst_basesink_handle_event),
15442 (gst_basesink_change_state):
15444 Unlock STREAM_LOCK whatever the recursion was.
15446 2005-06-25 Wim Taymans <wim@fluendo.com>
15448 * gst/base/gstbasesink.c: (gst_basesink_set_property),
15449 (gst_basesink_preroll_queue_empty),
15450 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
15451 (gst_basesink_event), (gst_basesink_do_sync),
15452 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
15453 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
15454 (gst_basesink_change_state):
15455 Reworked the base sink, handle event and buffer serialisation
15456 correctly and removed possible deadlock.
15457 Handle EOS correctly.
15459 2005-06-25 Wim Taymans <wim@fluendo.com>
15461 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
15462 (gst_pipeline_change_state):
15463 * tools/gst-launch.c: (check_intr), (event_loop), (main):
15464 Allow elements to post EOS in the state change function.
15465 Fix up -launch, make it exit the poll loop when the
15466 pipeline actually changed state.
15467 Fix up warning parsing in -launch.
15469 2005-06-25 Wim Taymans <wim@fluendo.com>
15471 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
15472 (gst_tee_sink_activate):
15473 Core takes STREAM_LOCK for us now.
15475 2005-06-25 Wim Taymans <wim@fluendo.com>
15477 * gst/gstelement.c: (gst_element_get_state_func),
15478 (gst_element_set_state):
15479 * gst/gstelement.h:
15480 * gst/gstmessage.c: (gst_message_parse_error),
15481 (gst_message_parse_warning):
15482 Keep track of current target state while performing a state
15483 change so that subclasses can do something interesting.
15484 Fix parsing of warning/error messages when GError is NULL.
15486 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
15488 * docs/gst/Makefile.am:
15489 * docs/gst/gstreamer-docs.sgml:
15490 * docs/gst/gstreamer-sections.txt:
15491 * docs/gst/gstreamer.types:
15492 * docs/gst/tmpl/gstbasesink.sgml:
15493 * docs/gst/tmpl/gstbasesrc.sgml:
15494 * docs/gst/tmpl/gstbin.sgml:
15495 * docs/gst/tmpl/gstcompat.sgml:
15496 * docs/gst/tmpl/gstfakesink.sgml:
15497 * docs/gst/tmpl/gstfakesrc.sgml:
15498 * docs/gst/tmpl/gstfilesink.sgml:
15499 * docs/gst/tmpl/gstfilesrc.sgml:
15500 * docs/gst/tmpl/gstindex.sgml:
15501 * docs/manual/appendix-quotes.xml:
15502 * gst/base/gstbasesrc.h:
15503 * gst/elements/gstfakesrc.h:
15504 * gst/gstmessage.h:
15505 start pulling in base classes and elements in our docs
15507 2005-06-24 Stefan Kost <ensonic@users.sf.net>
15509 * docs/gst/Makefile.am:
15510 * docs/libs/Makefile.am:
15511 fixed make distcheck with gtk-doc 1.3
15513 2005-06-23 Wim Taymans <wim@fluendo.com>
15515 * gst/gstelement.c: (gst_element_get_state_func),
15516 (gst_element_set_state), (gst_element_change_state):
15517 When the state did not change, also report NO_PREROLL
15520 2005-06-23 Wim Taymans <wim@fluendo.com>
15522 * gst/gstpad.c: (gst_pad_event_default):
15523 * gst/gstqueue.c: (gst_queue_loop):
15524 No unsafe task pausing please.
15526 2005-06-23 Wim Taymans <wim@fluendo.com>
15528 * gst/schedulers/threadscheduler.c:
15529 (gst_thread_scheduler_task_start),
15530 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
15531 Ref the task before pushing it on the threadpool. This
15532 makes sure that we have a ref when the threadfunction is
15535 2005-06-23 Andy Wingo <wingo@pobox.com>
15537 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
15538 offset is greater than the file's size.
15540 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
15541 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
15542 * gst/gstobject.c (gst_object_class_init): Make the class lock
15543 recursive. Wim won't let me drop deep_notify. Decodebin works
15544 again, whoopdy doo.
15546 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
15547 internal pad, and hacks accordingly. Doesn't do it on the target
15548 pad because we change its caps. Probably catches all cases of
15550 (gst_ghost_pad_set_property): Connect to notify::caps as
15553 * tests/network-clock.scm (plot-simulation): Pipe data to the
15554 elite python skript.
15556 * tests/network-clock-utils.scm (define-parameter): New macro,
15557 defines a parameter that can be set via the command line.
15558 (set-parameter!, parse-parameter-arguments): Command line args
15561 * tests/plot-data: Simple matplotlib-based plotter, takes input on
15564 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
15566 * gst/elements/gsttypefindelement.c:
15567 (gst_type_find_element_handle_event):
15568 Don't restart typefinding on a discont.
15569 * gst/gstelement.c: (gst_element_set_state):
15570 Debug spelling fix.
15571 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
15572 Allow changing mode of an active pad.
15573 Debug output fixes.
15574 * gst/registries/gstlibxmlregistry.c: (load_feature):
15575 Don't cast a static pad template to a normal pad template.
15577 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
15579 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15580 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
15581 remove gst_strtoll completely, since it didn't actually do
15582 anything more than what g_ascii_strtoull already does.
15583 check for range errors when deserializing
15584 do a cast for the unsigned cases; but further fixing needs
15585 a decision on what the interpretation of "(int)" and
15586 deserialization should be for values that fall outside the
15587 type's boundaries (ie, refuse, or interpret as casting)
15589 2005-06-23 Wim Taymans <wim@fluendo.com>
15591 * check/Makefile.am:
15592 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
15593 * docs/design/part-live-source.txt:
15594 * docs/design/part-states.txt:
15595 * gst/base/gstbasesrc.c: (gst_basesrc_init),
15596 (gst_basesrc_set_live), (gst_basesrc_is_live),
15597 (gst_basesrc_get_range), (gst_basesrc_activate),
15598 (gst_basesrc_change_state):
15599 * gst/base/gstbasesrc.h:
15600 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
15601 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
15602 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
15603 * gst/gstelement.c: (gst_element_get_state_func),
15604 (gst_element_set_state):
15605 * gst/gstelement.h:
15607 * tools/gst-launch.c: (event_loop), (main):
15608 Added support for live sources and other elements that
15610 Updated design docs, added live-source design doc.
15611 Implemented live source functionality in basesrc
15612 Fix error condition in _bin_get_state()
15613 Implement live source handling in -launch.
15614 Added check for live sources.
15615 Fixed case in GstBin where elements were changed state
15619 2005-06-23 Andy Wingo <wingo@pobox.com>
15621 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
15622 borken refcounting.
15624 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
15625 gst_caps_replace takes care of this for us.
15627 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
15628 gst_pad_set_caps on the target, not just its setcaps() function.
15630 * tests/network-clock.scm:
15631 * tests/network-clock-utils.scm: A network clock simulator.
15632 Something of an algorithmic testbed before doing something in C.
15634 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
15636 * check/Makefile.am:
15637 * check/gst/capslist.h:
15638 copy over from 0.8, and add two with bitmasks specified with
15640 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
15641 add test to parse everything from capslist.h
15642 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
15644 add test for structure deserialization
15645 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15646 add tests for deserialization of strings to int types
15647 * gst/gststructure.c: (gst_structure_nth_field_name):
15648 * gst/gststructure.h:
15649 add a way to get the name of a field referenced by index
15650 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
15651 instead of checking if the resulting long long lies between
15652 min and max, we check if the long long would fit into
15653 a number of bytes for the final type.
15654 This fixes cases where a string represents 2^32 - 1, which
15655 when cast to int would be the (valid) -1, but is bigger than
15658 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
15660 * gst/parse/grammar.y:
15661 add a log line for type deserialization
15663 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
15665 * check/gst/gstvalue.c: (START_TEST):
15666 * gst/gstvalue.c: (gst_value_deserialize):
15667 return long long, not int, so gint64 deserialization actually
15668 works. Is there any flag that makes the compiler check this ?
15671 2005-06-22 Wim Taymans <wim@fluendo.com>
15674 Added convenience macros for setting buffers in GValue.
15676 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
15678 * check/gst/.cvsignore:
15679 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15680 add a test deserializing int64, and comment part out because
15683 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
15685 * check/Makefile.am:
15686 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
15687 * testsuite/Makefile.am:
15688 * testsuite/caps/Makefile.am:
15689 * testsuite/caps/value_serialize.c:
15690 * testsuite/test_gst_init.c:
15691 move a value_serialize test over
15693 2005-06-20 Wim Taymans <wim@fluendo.com>
15698 * gst/gstvalue.c: (gst_value_compare_buffer),
15699 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
15700 (gst_value_compare_flags), (gst_value_serialize_flags),
15701 (gst_value_deserialize_flags), (_gst_value_initialize):
15702 Fix serialisation of buffers, they are not boxed types anymore
15704 2005-06-20 Wim Taymans <wim@fluendo.com>
15706 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
15707 Testcase to show error in buffer-on-caps serialisation.
15709 2005-06-20 Andy Wingo <wingo@pobox.com>
15711 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
15712 will be adding to later.
15714 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
15715 if its socks fill with rocks.
15716 (gst_system_clock_obtain): Set the name on object construction.
15717 Avoid double-checked locking.
15719 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
15721 * gst/gsturi.c: (gst_element_make_from_uri):
15722 Fix potential endless loop.
15724 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15726 * check/Makefile.am:
15728 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
15730 move over from testsuite dir and clean up
15733 * testsuite/Makefile.am:
15734 * testsuite/tags/.cvsignore:
15735 * testsuite/tags/Makefile.am:
15736 * testsuite/tags/merge.c:
15737 remove testsuite/tags
15739 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15741 * docs/gst/gstreamer-sections.txt:
15742 * docs/gst/tmpl/gstenumtypes.sgml:
15743 * win32/gstenumtypes.c:
15744 clean up documentation build a little
15746 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15748 * check/gstcheck.h:
15749 add macros for checking refcounts on objects and caps
15750 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
15751 add some more unit tests
15752 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
15753 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
15754 fix leaked refcounts (I hope :)) so unittest works
15758 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15760 * configure.ac: back to HEAD
15762 === release 0.9.1 ===
15764 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
15770 2005-06-17 Andy Wingo <wingo@pobox.com>
15772 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
15773 assert; it's always possible that the pad gets deactivated in
15774 between the checks in gstpad.c and the implementation. Rely on
15775 finish_preroll() to return a FLUSHING or similar instead of on the
15778 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
15779 clock and post an EOS message if we come out of finish_preroll in
15782 2005-06-16 David Schleef <ds@schleef.org>
15784 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
15785 (gst_capsfilter_set_property): Allow NULL as possible value
15786 for filter_caps property, indicating GST_CAPS_ANY.
15788 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
15790 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
15792 * gst/schedulers/Makefile.am:
15794 * gstreamer.spec.in:
15797 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
15799 * gstreamer.spec.in:
15802 2005-06-08 Andy Wingo <wingo@pobox.com>
15804 * gst/gstutils.c: RPAD fixes all around.
15805 (gst_element_link_pads): Refcounting fixes.
15807 * tools/gst-inspect.c:
15808 * tools/gst-xmlinspect.c:
15810 * gst/base/gsttypefindhelper.c:
15811 * gst/base/gstbasesink.c:
15812 * gst/gstqueue.c: RPAD fixes.
15814 * gst/gstghostpad.h:
15815 * gst/gstghostpad.c: New ghost pad implementation as full proxy
15816 pads. The tricky thing is they provide both source and sink
15817 interfaces, since they proxy the internal pad for the external
15818 pad, and vice versa. Implement with lower-level ProxyPad objects,
15819 with the interior proxy pad as a child of the exterior ghost pad.
15820 Should write a doc on this.
15822 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
15823 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
15826 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
15827 pads are real pads. No ghost pads in this file. Not documenting
15828 the myriad s/RPAD/PAD/ and REALIZE fixes.
15829 (gst_pad_class_init): Add properties for "direction" and
15830 "template". Both are construct-only, so they can't change during
15831 the life of the pad. Fixes properly deriving from GstPad.
15832 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
15833 derived objects, just set properties when creating the objects via
15835 (gst_pad_get_parent): Implement as a function, return NULL if the
15836 parent is not an element.
15837 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
15838 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
15840 * gst/gstobject.c (gst_object_class_init): Make name a construct
15841 property. Don't set it in the object init.
15843 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
15844 with UNKNOWN direction.
15845 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
15846 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
15847 (gst_element_remove_pad): Remove ghost-pad special cases.
15848 (gst_element_pads_activate): Remove rpad cruft.
15850 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
15851 catch the pad's-parent-not-an-element case.
15853 * gst/gst.h: Include gstghostpad.h.
15855 * gst/gst.c (init_post): No more real, ghost pads.
15857 * gst/Makefile.am: Add gstghostpad.[ch].
15859 * check/Makefile.am:
15860 * check/gst/gstbin.c:
15861 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
15862 into a bin creates ghost pads, and that the refcounts are right.
15863 Partly moved from gstbin.c.
15865 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15867 * check/gst-libs/.cvsignore:
15868 * check/gst/.cvsignore:
15869 * check/pipelines/.cvsignore:
15871 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
15872 (START_TEST), (cleanup_suite), (main):
15873 add some tests related to cleanup after running pipelines
15875 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15877 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
15878 add a testsuite for GstBuffer
15880 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15882 * gst/gstminiobject.h:
15883 add defines for accessing the refcount
15885 2005-06-03 Stefan Kost <ensonic@users.sf.net>
15887 * Makefile.am: added support for html unit test coverage reports
15889 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
15891 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
15892 Free existing caps if the capsfilter changes. Add a FIXME about
15893 setting those caps on the pads.
15895 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
15896 Before adding a ghost pad to a parent bin, check that there isn't
15897 already one for the element on the bin. Prevents infinite recursion
15898 when using decodebin in parse pipelines. Andy says he'll rewrite the
15899 way this works anyway, so ignore the hack.
15901 2005-06-02 Andy Wingo <wingo@pobox.com>
15903 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
15904 file size, pass it on to the type find helper.
15906 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
15907 segment_start and segment_end properly according to the seek
15908 method. Segment_end is still a bit flaky because offset can be
15909 negative for CUR and END cases, but it takes -1 as an "unset"
15912 2005-06-02 Wim Taymans <wim@fluendo.com>
15914 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
15915 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
15916 (gst_basesink_activate):
15917 * gst/base/gstbasesink.h:
15918 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
15919 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
15920 (gst_pad_query), (gst_pad_start_task):
15922 * gst/gstqueue.c: (gst_queue_bufferalloc),
15923 (gst_queue_handle_sink_event), (gst_queue_chain):
15924 Bufferalloc: return GstFlowReturn to more accuratly report
15925 why allocation failed.
15927 2005-06-02 Wim Taymans <wim@fluendo.com>
15929 * gst/gstpipeline.c: (gst_pipeline_send_event):
15930 Take snapshot of state without blocking.
15932 2005-06-02 Wim Taymans <wim@fluendo.com>
15934 * docs/design/part-TODO.txt:
15935 * docs/design/part-caps.txt:
15936 * docs/design/part-clocks.txt:
15937 * docs/design/part-negotiation.txt:
15938 * docs/design/part-preroll.txt:
15941 2005-05-30 Wim Taymans <wim@fluendo.com>
15943 * gst/elements/gstidentity.c: (gst_identity_event),
15944 (gst_identity_transform), (gst_identity_get_property):
15945 Protect last_message property as it is accessed from
15948 2005-05-30 Wim Taymans <wim@fluendo.com>
15950 * gst/gstelement.c: (gst_element_init),
15951 (gst_element_pads_activate), (gst_element_change_state):
15952 Slicker pad activation code.
15954 2005-05-30 Wim Taymans <wim@fluendo.com>
15957 * gst/gstelement.h:
15958 * gst/gstelementfactory.h:
15960 Move elementfactory methods to separate .h file.
15962 2005-05-30 Wim Taymans <wim@fluendo.com>
15964 * docs/design/part-overview.txt:
15965 * gst/gstsystemclock.h:
15966 Small typo fixes, doc updates.
15968 2005-05-30 Wim Taymans <wim@fluendo.com>
15970 * gst/gst.c: (gst_init_get_popt_table), (init_post),
15971 (init_popt_callback):
15972 Remove cpu-opt flag.
15974 2005-05-30 Wim Taymans <wim@fluendo.com>
15976 * gst/gstbuffer.c: (gst_subbuffer_finalize),
15977 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
15979 Avoid typechecking in places where not needed.
15980 Added accessor for malloc_data.
15982 2005-05-30 Wim Taymans <wim@fluendo.com>
15984 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
15985 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
15986 (gst_pad_configure_sink), (gst_pad_configure_src),
15987 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
15988 (gst_pad_start_task):
15989 Propagate errors from _set_caps() in configure_src/sink
15990 functions instead of returning TRUE.
15991 FLUSH events can travel up and downstream
15994 2005-05-30 Wim Taymans <wim@fluendo.com>
15996 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
15997 (gst_basesink_activate):
15998 Handle EOS in preroll.
16000 2005-05-30 Wim Taymans <wim@fluendo.com>
16002 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
16003 (gst_queue_loop), (gst_queue_handle_src_event):
16004 Remove old pieces of code
16005 Flushing the queue in an upstream event is a very bad idea.
16007 2005-05-26 Andy Wingo <wingo@pobox.com>
16009 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
16010 gst_value_set_mini_object so as to add a ref on the object (which
16011 will be removed when the value is unset).
16013 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
16014 arg type in ::handoff.
16016 * gst/gstelement.c (gst_element_change_state): Also deactivate
16017 pads in READY->NULL, just in case the element didn't make it to
16018 PAUSED. Wingo tested, Wim approved.
16020 2005-05-26 Wim Taymans <wim@fluendo.com>
16022 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16023 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
16024 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
16025 A flushing pad cannot be used to alloc_buffer from.
16027 2005-05-26 Wim Taymans <wim@fluendo.com>
16029 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
16030 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
16031 (gst_bus_source_dispatch), (gst_bus_source_finalize),
16032 (gst_bus_create_watch), (gst_bus_add_watch_full):
16034 Implement a real GSource and use g_main_context_wakeup() to
16035 signal new messages instead of the socketpair.
16037 2005-05-25 Wim Taymans <wim@fluendo.com>
16039 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
16040 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
16041 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16042 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
16043 (gst_pad_send_event), (gst_pad_start_task):
16044 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
16045 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
16046 (gst_queue_sink_activate), (gst_queue_src_activate),
16047 (gst_queue_change_state):
16049 Fix state changes for non sinks. We now change sinks, then elements
16050 with unconnected srcpads, then the rest.
16051 More efficient queue unlocking in flush and state changes.
16052 Set the pad activate mode even if it does not have an activate
16055 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16057 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
16058 Don't go in pull mode for non-seekable sources.
16059 * gst/elements/gsttypefindelement.h:
16060 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
16061 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
16062 (free_entry), (stop_typefinding),
16063 (gst_type_find_element_handle_event), (find_peek),
16064 (gst_type_find_element_chain), (do_pull_typefind),
16065 (gst_type_find_element_change_state):
16066 Allow typefinding (w/o seeking) in push-mode, simplified version
16067 of what was in 0.8.
16068 * gst/gstutils.c: (gst_buffer_join):
16070 gst_buffer_join() from 0.8.
16072 2005-05-25 Wim Taymans <wim@fluendo.com>
16074 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16075 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
16076 (gst_pad_send_event), (gst_pad_start_task):
16077 Disable attempt at mode switching until it is figured out.
16079 2005-05-25 Wim Taymans <wim@fluendo.com>
16081 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
16082 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
16083 (gst_basesink_finish_preroll), (gst_basesink_chain),
16084 (gst_basesink_loop), (gst_basesink_activate),
16085 (gst_basesink_change_state):
16086 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
16087 (gst_basesrc_get_range), (gst_basesrc_loop),
16088 (gst_basesrc_activate):
16089 * gst/elements/gsttee.c: (gst_tee_sink_activate):
16090 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
16091 (gst_real_pad_init), (gst_real_pad_set_property),
16092 (gst_real_pad_get_property), (gst_pad_set_active),
16093 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
16094 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
16095 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
16096 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
16097 (gst_pad_event_default_dispatch), (gst_pad_event_default),
16098 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
16099 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
16100 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
16101 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
16102 (gst_pad_stop_task):
16104 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
16105 (gst_queue_loop), (gst_queue_src_activate):
16106 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
16107 (gst_task_get_state):
16109 * gst/schedulers/threadscheduler.c:
16110 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
16111 Implement gst_pad_pause/start/stop_task(), take STREAM lock
16113 Remove ACTIVE pad flag, use FLUSHING everywhere
16114 Added _pad_chain(), _pad_get_range() to call chain/getrange
16116 Add locks around IS_FLUSHING when reading.
16117 Take STREAM lock in chain(), get_range() functions so plugins
16118 don't need to take it anymore.
16122 2005-05-25 Wim Taymans <wim@fluendo.com>
16124 * tools/gst-launch.c: (event_loop):
16125 Unref message after using its contents instead of
16128 2005-05-24 Wim Taymans <wim@fluendo.com>
16130 * docs/design/draft-ghostpads.txt:
16131 * docs/design/draft-push-pull.txt:
16132 * docs/design/draft-query.txt:
16133 * docs/design/part-overview.txt:
16134 Docs updates, added general overview doc.
16136 2005-05-21 David Schleef <ds@schleef.org>
16138 * docs/gst/tmpl/old/GstBin.sgml:
16139 * docs/gst/tmpl/old/GstBuffer.sgml:
16140 * docs/gst/tmpl/old/GstCaps.sgml:
16141 * docs/gst/tmpl/old/GstClock.sgml:
16142 * docs/gst/tmpl/old/GstCompat.sgml:
16143 * docs/gst/tmpl/old/GstData.sgml:
16144 * docs/gst/tmpl/old/GstElement.sgml:
16145 * docs/gst/tmpl/old/GstEvent.sgml:
16146 * docs/gst/tmpl/old/GstIndex.sgml:
16147 * docs/gst/tmpl/old/GstStructure.sgml:
16148 * docs/gst/tmpl/old/GstTag.sgml:
16149 * docs/gst/tmpl/old/cothreads.sgml:
16150 * docs/gst/tmpl/old/cothreads_compat.sgml:
16151 * docs/gst/tmpl/old/gettext.sgml:
16152 * docs/gst/tmpl/old/gobject2gtk.sgml:
16153 * docs/gst/tmpl/old/grammar.tab.sgml:
16154 * docs/gst/tmpl/old/gst-i18n-app.sgml:
16155 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
16156 * docs/gst/tmpl/old/gst_private.sgml:
16157 * docs/gst/tmpl/old/gstaggregator.sgml:
16158 * docs/gst/tmpl/old/gstarch.sgml:
16159 * docs/gst/tmpl/old/gstatomic_impl.sgml:
16160 * docs/gst/tmpl/old/gstbufferstore.sgml:
16161 * docs/gst/tmpl/old/gstdata_private.sgml:
16162 * docs/gst/tmpl/old/gstdisksink.sgml:
16163 * docs/gst/tmpl/old/gstdisksrc.sgml:
16164 * docs/gst/tmpl/old/gstelementfactory.sgml:
16165 * docs/gst/tmpl/old/gstextratypes.sgml:
16166 * docs/gst/tmpl/old/gstfakesink.sgml:
16167 * docs/gst/tmpl/old/gstfakesrc.sgml:
16168 * docs/gst/tmpl/old/gstfdsink.sgml:
16169 * docs/gst/tmpl/old/gstfdsrc.sgml:
16170 * docs/gst/tmpl/old/gstfilesink.sgml:
16171 * docs/gst/tmpl/old/gstfilesrc.sgml:
16172 * docs/gst/tmpl/old/gsthttpsrc.sgml:
16173 * docs/gst/tmpl/old/gstidentity.sgml:
16174 * docs/gst/tmpl/old/gstindexfactory.sgml:
16175 * docs/gst/tmpl/old/gstmarshal.sgml:
16176 * docs/gst/tmpl/old/gstmd5sink.sgml:
16177 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
16178 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
16179 * docs/gst/tmpl/old/gstpadtemplate.sgml:
16180 * docs/gst/tmpl/old/gstpipefilter.sgml:
16181 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
16182 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
16183 * docs/gst/tmpl/old/gstshaper.sgml:
16184 * docs/gst/tmpl/old/gstspider.sgml:
16185 * docs/gst/tmpl/old/gstspideridentity.sgml:
16186 * docs/gst/tmpl/old/gststatistics.sgml:
16187 * docs/gst/tmpl/old/gsttee.sgml:
16188 * docs/gst/tmpl/old/gsttimecache.sgml:
16189 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
16190 * docs/gst/tmpl/old/gstxmlregistry.sgml:
16191 * docs/gst/tmpl/old/gthread-cothreads.sgml:
16192 * docs/gst/tmpl/old/types.sgml:
16193 I didn't intend to add these or check them in.
16195 2005-05-19 David Schleef <ds@schleef.org>
16197 * configure.ac: Use -no-common everywhere. In a sane world, it
16198 would be the default in libtool, because without it, you can't
16199 build DLLs on Windows.
16200 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
16201 * docs/gst/gstreamer-sections.txt:
16202 * docs/gst/tmpl/gstcpu.sgml:
16203 * docs/gst/tmpl/gstdata.sgml:
16204 * docs/gst/tmpl/gstthread.sgml:
16206 2005-05-19 David Schleef <ds@schleef.org>
16208 * gst/gstminiobject.c: (gst_value_set_mini_object),
16209 (gst_value_take_mini_object), (gst_value_get_mini_object):
16210 * gst/gstminiobject.h: Add GValue set/get functions.
16212 2005-05-19 Wim Taymans <wim@fluendo.com>
16214 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
16215 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
16216 (gst_subbuffer_init), (gst_buffer_is_span_fast):
16218 * gst/gstbus.c: (gst_bus_post):
16219 * gst/gstelement.c: (gst_element_get_random_pad):
16220 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
16221 Make subbufer unref the parent in finalize.
16222 some more debugging info.
16225 2005-05-19 Wim Taymans <wim@fluendo.com>
16227 * gst/base/gstbasesink.c: (gst_basesink_class_init),
16228 (gst_basesink_init), (gst_basesink_finalize),
16229 (gst_basesink_activate), (gst_basesink_change_state):
16230 Don't free preroll queue too early.
16232 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16236 Hi, I'm outdated. Please shoot me.
16238 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16240 * gst/gstpipeline.c: (gst_pipeline_send_event):
16241 Do not access variables after they have been deleted.
16243 2005-05-19 Wim Taymans <wim@fluendo.com>
16245 * tools/gst-inspect.c: (print_plugin_features):
16246 A plugin feature does unfortunatly not use the
16249 2005-05-18 Wim Taymans <wim@fluendo.com>
16251 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
16252 Port _span() functions to new subbuffers.
16254 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16256 * gst/gstbin.c: (gst_bin_add_func):
16257 Fix clock settery in bins when adding kids after the clock has
16260 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16262 * gst/elements/gstidentity.c: (gst_identity_class_init):
16263 Workaround until signals support GstMiniObject.
16265 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
16268 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
16270 2005-05-18 Wim Taymans <wim@fluendo.com>
16272 * gst/base/Makefile.am:
16273 * gst/base/gstadapter.c: (gst_adapter_base_init),
16274 (gst_adapter_class_init), (gst_adapter_init),
16275 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
16276 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
16277 (gst_adapter_flush), (gst_adapter_available),
16278 (gst_adapter_available_fast):
16279 * gst/base/gstadapter.h:
16280 Ported and added adapter to the base classes.
16282 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
16285 * gst/gstmessage.c:
16286 Make sure the class is reffed/unreffed once before threads can be
16287 used. Fixes #304551.
16289 2005-05-17 Wim Taymans <wim@fluendo.com>
16291 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
16292 (gst_basesink_chain_unlocked), (gst_basesink_activate):
16293 * gst/gstminiobject.c: (gst_mini_object_get_type),
16294 (gst_mini_object_free):
16295 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
16296 (gst_pad_push), (gst_pad_push_event):
16297 * gst/gstqueue.c: (gst_queue_change_state):
16298 Don't queue buffers in basesink when we are flushing.
16299 Unref buffer when flushing in basesink.
16300 Flush queue when going to READY
16301 Unref buffer when _push() returns an error.
16302 Don't free MiniObject instance when refcount is incremented
16303 in _finalize() so that we can recover objects.
16305 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
16307 * docs/manual/advanced-schedulers.xml:
16308 * docs/manual/appendix-checklist.xml:
16309 * docs/pwg/advanced-clock.xml:
16310 * docs/pwg/advanced-interfaces.xml:
16311 * docs/pwg/advanced-request.xml:
16312 * docs/pwg/advanced-types.xml:
16313 * docs/pwg/intro-preface.xml:
16314 * examples/plugins/example.c: (gst_example_get_type),
16315 (gst_example_class_init), (gst_example_chain),
16316 (gst_example_set_property), (gst_example_get_property),
16317 (gst_example_change_state), (plugin_init):
16318 * examples/plugins/example.h:
16321 2005-05-17 Wim Taymans <wim@fluendo.com>
16323 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
16324 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
16325 * gst/gstqueue.c: (gst_queue_change_state):
16326 Clear queue when going to READY.
16327 Remove IN_SETCAPS flag too.
16329 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
16331 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
16332 Remove implicit cast from gboolean to GstElementStateReturn;
16333 make sure we still return failure in paused => ready case if
16334 the parent class fails to change state and our own stop
16337 2005-05-17 Wim Taymans <wim@fluendo.com>
16339 * tools/gst-launch.c: (event_loop):
16340 Message was unreffed too soon.
16342 2005-05-16 Andy Wingo <wingo@pobox.com>
16344 * gst/gstbin.c (sink_iterator_filter): Err... um...
16346 * check/gst/gstbin.c (test_ghost_pads): New test for the
16347 ghosting-if-elements-not-in-same-bin behavior.
16349 2005-05-16 David Schleef <ds@schleef.org>
16351 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
16352 accessing refcount directly.
16354 2005-05-15 David Schleef <ds@schleef.org>
16356 * check/Makefile.am: remove GstData checks
16357 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
16358 * gst/Makefile.am: add miniobject, remove data
16359 * gst/gst.h: add miniobject, remove data
16360 * gst/gstdata.c: remove
16361 * gst/gstdata.h: remove
16362 * gst/gstdata_private.h: remove
16363 * gst/gsttypes.h: remove GstEvent and GstMessage
16364 * gst/gstelement.c: (gst_element_post_message): fix for API changes
16365 * gst/gstmarshal.list: change BOXED -> OBJECT
16367 Implement GstMiniObject.
16368 * gst/gstminiobject.c:
16369 * gst/gstminiobject.h:
16371 Modify to be subclasses of GstMiniObject.
16372 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
16373 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
16374 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
16375 (gst_subbuffer_get_type), (gst_subbuffer_init),
16376 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
16379 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
16380 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
16381 (_gst_event_copy), (gst_event_new):
16383 * gst/gstmessage.c: (_gst_message_initialize),
16384 (gst_message_get_type), (gst_message_class_init),
16385 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
16386 (gst_message_new), (gst_message_new_error),
16387 (gst_message_new_warning), (gst_message_new_tag),
16388 (gst_message_new_state_changed), (gst_message_new_application):
16389 * gst/gstmessage.h:
16390 * gst/gstprobe.c: (gst_probe_perform),
16391 (gst_probe_dispatcher_dispatch):
16393 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
16394 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
16395 (_gst_query_copy), (gst_query_new):
16397 Update elements for GstData -> GstMiniObject changes
16399 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
16400 (gst_queue_chain), (gst_queue_loop):
16401 * gst/elements/gstbufferstore.c:
16402 (gst_buffer_store_add_buffer_func),
16403 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
16404 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
16405 (gst_fakesink_render):
16406 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
16407 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
16408 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
16409 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
16410 (gst_filesrc_create_read):
16411 * gst/elements/gstidentity.c: (gst_identity_class_init):
16412 * gst/elements/gsttypefindelement.c:
16413 (gst_type_find_element_src_event), (free_entry_buffers),
16414 (gst_type_find_element_handle_event):
16415 * libs/gst/dataprotocol/dataprotocol.c:
16416 (gst_dp_header_from_buffer):
16417 * libs/gst/dataprotocol/dataprotocol.h:
16418 * libs/gst/dataprotocol/dp-private.h:
16420 2005-05-15 David Schleef <ds@schleef.org>
16422 * gst/elements/gstelements.c: Don't include headers that were
16425 2005-05-15 David Schleef <ds@schleef.org>
16427 * gst/elements/Makefile.am: Remove some elements that don't
16428 need to be in the core (or even exist at all).
16429 * gst/elements/gstaggregator.c:
16430 * gst/elements/gstaggregator.h:
16431 * gst/elements/gstmd5sink.c:
16432 * gst/elements/gstmd5sink.h:
16433 * gst/elements/gstmultifilesrc.c:
16434 * gst/elements/gstmultifilesrc.h:
16435 * gst/elements/gstpipefilter.c:
16436 * gst/elements/gstpipefilter.h:
16437 * gst/elements/gstshaper.c:
16438 * gst/elements/gstshaper.h:
16439 * gst/elements/gststatistics.c:
16440 * gst/elements/gststatistics.h:
16441 * po/POTFILES.in: Remove above files.
16443 2005-05-14 Andy Wingo <wingo@pobox.com>
16445 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
16446 so as to get the refs right.
16447 (sink_iterator_filter): New function, wraps bin_element_is_sink,
16448 unreffing objects that don't pass the filter.
16450 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
16451 gst_element_set_bus.
16452 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
16453 normal cases, this will destroy the bus.
16455 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
16458 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
16461 2005-05-13 Andy Wingo <wingo@pobox.com>
16463 * gst/gstutils.c (gst_element_link_pads): Instead of calling
16464 gst_pad_link, call pad_link_maybe_ghosting,
16465 (pad_link_maybe_ghosting): Links pads, making sure that the
16466 elements being linked are in the same bin.
16467 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
16468 Helpers for pad_link_maybe_ghosting.
16470 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
16473 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
16475 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
16477 * docs/design/part-element-source.txt:
16480 2005-05-12 Wim Taymans <wim@fluendo.com>
16482 * gst/base/gstbasesink.c: (gst_basesink_init),
16483 (gst_basesink_activate):
16484 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
16485 (gst_basesrc_is_seekable):
16486 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
16487 (bin_element_is_sink), (gst_bin_change_state):
16488 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
16489 * gst/gstelement.h:
16490 Identify sinks by their flag to avoid overly complicated
16492 Do state changes even for elements not reachable from the
16494 BaseSink is a sink now :)
16495 Some more debugging info in the basesrc.
16498 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16500 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
16501 Implement _query on a bin, similar to _send_event.
16503 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
16505 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
16506 Discont event offset format should be GST_FORMAT_BYTES,
16507 not GST_FORMAT_TIME.
16509 2005-05-12 Wim Taymans <wim@fluendo.com>
16511 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
16512 Same fix as Ronald's but without the signal.
16514 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16516 * gst/gstutils.c: (gst_element_query_position):
16517 No, an element is not a pad.
16519 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16521 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
16522 (gst_bin_get_state):
16523 If a child is removed from a bin while we remove the child from
16524 the bin and while we're retrieving its state, signal this to the
16525 get_state function so we abort the wait (instead of waiting for
16526 a timeout) and can immediately re-iterate over all other elements.
16528 2005-05-12 Wim Taymans <wim@fluendo.com>
16530 * gst/base/Makefile.am:
16531 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
16532 (gst_basesrc_start):
16533 * gst/base/gstbasesrc.h:
16534 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
16535 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
16536 (gst_pushsrc_init), (gst_pushsrc_create):
16537 * gst/base/gstpushsrc.h:
16538 Added is_seekable to BaseSrc
16539 Added simple PushSrc.
16541 2005-05-11 Wim Taymans <wim@fluendo.com>
16543 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
16544 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16545 (gst_element_link_pads), (gst_element_query_position),
16546 (gst_element_query_convert), (intersect_caps_func),
16547 (gst_pad_query_position), (gst_pad_query_convert):
16548 Fix refcounting in utils function.
16549 No point in trying to activate a pad when it's added, it could
16550 be added from the state change function and then we deadlock, the
16551 element has to decide what to do.
16553 2005-05-10 Andy Wingo <wingo@pobox.com>
16555 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
16556 *all* the arguments.
16558 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
16559 stream lock if it's a FLUSH_DONE; normal flushes don't get the
16560 lock (according to the docs -- if this is wrong change the docs).
16562 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
16563 flush messages in the NULL state.
16565 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
16566 message immediately and return.
16567 (gst_bus_set_flushing): New function. If a bus is flushing, it
16568 flushes out any queued messages and immediately unrefs new
16569 messages. This is so when an element goes to NULL, all of the
16570 unhandled messages coming from it can be freed, and their
16571 references to the element dropped. In other words: message source
16572 ref considered harmful :P
16574 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
16575 we're finished with it.
16577 * gst/gstmessage.c (gst_message_new_state_changed):
16579 2005-05-10 Wim Taymans <wim@fluendo.com>
16581 * gst/gstvalue.c: (gst_value_compare_flags),
16582 (gst_value_serialize_flags), (gst_value_deserialize_flags),
16583 (_gst_value_initialize):
16584 Added flags serialize/deserialize/compare code.
16586 2005-05-09 Andy Wingo <wingo@pobox.com>
16588 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
16589 Intersect the peer's caps with our caps.
16591 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16593 * gst/base/gsttypefindhelper.c: (helper_find_peek):
16594 * gst/elements/gsttypefindelement.c: (find_peek):
16595 Handle negative offsets better. Fixes decodebin.
16597 2005-05-09 Wim Taymans <wim@fluendo.com>
16599 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
16600 (gst_base_transform_event):
16601 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
16602 Implement accept_caps.
16603 Fix silly lock/unlock mismatch in base class.
16605 2005-05-09 Wim Taymans <wim@fluendo.com>
16607 * docs/design/draft-push-pull.txt:
16608 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
16609 * gst/elements/gstfilesink.c: (gst_filesink_init),
16610 (gst_filesink_query):
16611 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
16612 (gst_type_find_handle_src_query), (find_element_get_length):
16613 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
16614 * gst/gstelement.h:
16615 * gst/gstmessage.c:
16616 * gst/gstmessage.h:
16617 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
16618 (gst_real_pad_get_caps_unlocked),
16619 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
16620 (gst_pad_event_default_dispatch), (gst_pad_event_default),
16621 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
16622 (gst_real_pad_dispose), (gst_real_pad_finalize),
16623 (gst_pad_load_and_link), (gst_pad_save_thyself),
16624 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
16625 (gst_pad_check_pull_range), (gst_pad_pull_range),
16626 (gst_pad_template_get_type), (gst_pad_template_class_init),
16627 (gst_pad_template_init), (gst_pad_template_dispose),
16628 (name_is_valid), (gst_static_pad_template_get),
16629 (gst_pad_template_new), (gst_static_pad_template_get_caps),
16630 (gst_pad_template_get_caps), (gst_pad_set_element_private),
16631 (gst_pad_get_element_private), (gst_pad_start_task),
16632 (gst_pad_pause_task), (gst_pad_stop_task),
16633 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
16634 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
16635 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
16636 (gst_ghost_pad_new):
16638 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
16639 (gst_query_new_position), (gst_query_set_position),
16640 (gst_query_parse_position), (gst_query_new_convert),
16641 (gst_query_set_convert), (gst_query_parse_convert):
16643 * gst/gstqueryutils.c:
16644 * gst/gstqueryutils.h:
16645 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
16646 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
16647 (gst_queue_handle_src_query):
16648 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16649 (gst_element_query_position), (gst_element_query_convert),
16650 (intersect_caps_func), (gst_pad_query_position),
16651 (gst_pad_query_convert):
16653 * tools/gst-inspect.c: (print_pad_info):
16654 * tools/gst-xmlinspect.c: (print_element_info):
16655 Remove old query functions. Ported old code.
16656 Added position/convert helper functions to gstutils.
16657 Reordered gstpad.c code, grouping relevant things.
16658 Remove gst_message_new(), always need to speficy a specific
16662 2005-05-09 Andy Wingo <wingo@pobox.com>
16664 * gst/gstiterator.h: Add some includes.
16666 * gst/gstqueryutils.h: Include more headers.
16669 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
16670 some uses of gst_pad_query.
16672 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
16673 NULL out parameters.
16674 (gst_query_new_position): New proc, allocates a new position
16677 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
16678 gstqueryutils.c to the build.
16680 * gst/gststructure.c (gst_structure_set_valist): Implement with
16681 the generic G_VALUE_COLLECT.
16683 2005-05-08 Edward Hervey <bilboed@bilboed.com>
16685 * gst/Makefile.am: (gst_headers):
16686 Added gstqueryutils.h to the list of headers to install, that was
16687 a 'nachty' move wingo :)
16689 2005-05-06 Andy Wingo <wingo@pobox.com>
16692 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
16693 GstData, init a memchunk.
16694 (standard_definitions): Add a few query types, deprecate a few.
16695 (gst_query_get_type): New proc.
16696 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
16698 (gst_query_new_application, gst_query_get_structure): New public
16701 * docs/design/draft-query.txt: Removed LINKS from the query types,
16702 because all the rest can be dispatched to other pads -- seemed
16703 ugly to have a query that couldn't be dispatched. internal_links
16704 is fine as a pad method.
16706 * gst/gstpad.h: Add query2 as a pad method, add the new functions
16707 in gstpad.c, but maintain binary compatibility for the moment.
16708 Will fix before 0.9 is out.
16710 * gst/gstqueryutils.c:
16711 * gst/gstqueryutils.h: New files, implement 3 methods for each
16712 query type: parse_query, parse_response, and set. Probably need an
16715 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
16717 * gst/elements/gstfilesink.c (gst_filesink_query2):
16718 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
16719 query_types, and formats methods.
16721 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
16722 (gst_pad_set_query2_function): New functions.
16723 (gst_real_pad_init): Set query2_default as the default query2
16724 function. Basically just dispatches to internally linked pads.
16728 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
16729 without using the atomic operations. Only one thread can possibly
16730 be accessing the data at this point. Changed so as to avoid
16731 gst_atomic operations.
16733 2005-05-06 Wim Taymans <wim@fluendo.com>
16735 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
16736 Also set caps if we use the fallback buffer alloc.
16738 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
16740 * docs/gst/Makefile.am:
16741 * docs/gst/gstreamer-docs.sgml:
16742 * docs/gst/gstreamer-sections.txt:
16743 * docs/gst/tmpl/gstatomic.sgml:
16744 * docs/gst/tmpl/gstmemchunk.sgml:
16745 * testsuite/elements/struct_i386.h:
16746 * win32/GStreamer.vcproj:
16748 Purge GstAtomic stuff from docs and win32 makefiles as well
16750 2005-05-06 Wim Taymans <wim@fluendo.com>
16752 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
16753 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
16754 * gst/gstpad.c: (gst_pad_peer_get_caps):
16755 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
16756 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
16757 (gst_queue_src_activate), (gst_queue_change_state):
16759 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16760 (intersect_caps_func):
16761 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
16762 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
16763 Some fixes for the peer_get_caps() change.
16765 2005-05-06 Wim Taymans <wim@fluendo.com>
16767 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
16768 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
16769 (gst_basesink_activate):
16770 Actually do something with error codes returned from the push
16773 2005-05-06 Wim Taymans <wim@fluendo.com>
16775 * docs/design/part-element-sink.txt:
16776 * docs/design/part-element-source.txt:
16777 * gst/base/gstbasesink.c: (gst_basesink_class_init),
16778 (gst_basesink_event), (gst_basesink_activate):
16779 * gst/base/gstbasesink.h:
16780 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
16781 (gst_basesrc_activate):
16782 * gst/base/gstbasesrc.h:
16783 * gst/gstelement.c: (gst_element_pads_activate):
16784 Some more documentation.
16785 Fixed scheduling decision in _pads_activate().
16787 2005-05-05 Andy Wingo <wingo@pobox.com>
16789 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
16792 2005-05-05 Wim Taymans <wim@fluendo.com>
16794 * gst/base/Makefile.am:
16795 * gst/base/gstbasesink.h:
16796 * gst/base/gstbasesrc.c: (gst_basesrc_init),
16797 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
16798 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
16799 (gst_collectpads_class_init), (gst_collectpads_init),
16800 (gst_collectpads_finalize), (gst_collectpads_new),
16801 (gst_collectpads_set_function), (gst_collectpads_add_pad),
16802 (find_pad), (gst_collectpads_remove_pad),
16803 (gst_collectpads_is_active), (gst_collectpads_collect),
16804 (gst_collectpads_collect_range), (gst_collectpads_start),
16805 (gst_collectpads_stop), (gst_collectpads_peek),
16806 (gst_collectpads_pop), (gst_collectpads_available),
16807 (gst_collectpads_read), (gst_collectpads_flush),
16808 (gst_collectpads_chain):
16809 * gst/base/gstcollectpads.h:
16810 * gst/elements/Makefile.am:
16811 * gst/elements/gstelements.c:
16812 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
16813 (gst_fakesink_get_times), (gst_fakesink_event),
16814 (gst_fakesink_preroll), (gst_fakesink_render):
16815 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
16816 (gst_filesink_init), (gst_filesink_set_location),
16817 (gst_filesink_open_file), (gst_filesink_close_file),
16818 (gst_filesink_pad_query), (gst_filesink_event),
16819 (gst_filesink_render), (gst_filesink_change_state):
16820 * gst/elements/gstfilesink.h:
16821 Added object to help in making collect pad based elements.
16823 Make event function in sink baseclass return gboolean.
16825 2005-05-05 Wim Taymans <wim@fluendo.com>
16827 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
16828 (gst_bin_get_by_name):
16830 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
16831 (gst_clock_finalize):
16832 * gst/gstdata.c: (gst_data_replace):
16834 * gst/gstelement.c: (gst_element_request_pad),
16835 (gst_element_pads_activate):
16836 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
16837 (gst_object_unref):
16838 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16839 (gst_pad_set_checkgetrange_function),
16840 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
16841 (gst_pad_check_pull_range), (gst_pad_pull_range),
16842 (gst_static_pad_template_get_caps), (gst_pad_start_task),
16843 (gst_pad_pause_task), (gst_pad_stop_task):
16844 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16845 (gst_element_request_pad), (gst_pad_proxy_getcaps):
16846 Fix name lookup in GstBin.
16847 Added _data_replace() function and _buffer_replace()
16848 Use finalize method to clean up clock.
16849 Fix refcounting on request pads.
16850 Fix pad schedule mode error.
16851 Some more object refcounting debug info,
16854 2005-05-04 Andy Wingo <wingo@pobox.com>
16856 * check/Makefile.am:
16857 * docs/gst/tmpl/gstatomic.sgml:
16858 * docs/gst/tmpl/gstplugin.sgml:
16859 * gst/base/gstbasesink.c: (gst_basesink_activate):
16860 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
16861 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
16862 (gst_basesrc_query), (gst_basesrc_set_property),
16863 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
16864 (gst_basesrc_activate):
16865 * gst/base/gstbasesrc.h:
16866 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
16867 (gst_base_transform_src_activate):
16868 * gst/elements/gstelements.c:
16869 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
16870 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
16871 * gst/elements/gsttee.c: (gst_tee_sink_activate):
16872 * gst/elements/gsttypefindelement.c: (find_element_get_length),
16873 (gst_type_find_element_checkgetrange),
16874 (gst_type_find_element_activate):
16875 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
16876 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
16877 (gst_caps_load_thyself):
16878 * gst/gstelement.c: (gst_element_pads_activate),
16879 (gst_element_save_thyself), (gst_element_restore_thyself):
16880 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
16881 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
16883 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
16884 (gst_xml_parse_file), (gst_xml_parse_memory),
16885 (gst_xml_get_element), (gst_xml_make_element):
16886 * gst/indexers/gstfileindex.c: (gst_file_index_load),
16887 (_file_index_id_save_xml), (gst_file_index_commit):
16888 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
16889 (read_enum), (load_pad_template), (load_feature), (load_plugin),
16891 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
16892 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
16893 * tools/gst-complete.c: (main):
16894 * tools/gst-compprep.c: (main):
16895 * tools/gst-inspect.c: (print_element_properties_info):
16896 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
16897 * tools/gst-xmlinspect.c: (print_element_properties):
16900 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
16902 * gst/gstplugin.c: (gst_plugin_check_module),
16903 (gst_plugin_check_file), (gst_plugin_load_file):
16904 apply patch from #172526 to make register work on MacOSX
16906 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16908 * docs/gst/tmpl/gstconfig.sgml:
16909 * gst/gstconfig.h.in:
16910 move documentation for some symbols. Add doc for GST_PTR_FORMAT
16911 * testsuite/debug/printf_extension.c: (main):
16912 Do not use GST_PTR_FORMAT on pointers to types with
16913 sizeof < sizeof(gpointer). Fixes test on 64-bit
16914 * testsuite/elements/property.h:
16915 use correct printf format
16917 2005-05-02 Wim Taymans <wim@fluendo.com>
16919 * docs/design/draft-push-pull.txt:
16920 * docs/design/draft-query.txt:
16921 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
16922 (gst_basesrc_start):
16923 Added draft for new query API.
16924 Added draft for better selecting scheduling methods.
16925 Make basesrc ignore length if the subclass does not support
16928 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16931 possible fixes for automake-1.5 - _LIBADD is reserved
16933 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16935 * docs/faq/Makefile.am:
16936 * docs/manual/Makefile.am:
16937 * docs/manuals.mak:
16938 * docs/pwg/Makefile.am:
16940 possible fixes for automake-1.5
16942 2005-04-28 Wim Taymans <wim@fluendo.com>
16944 * gst/base/gstbasesink.c: (gst_basesink_base_init),
16945 (gst_basesink_pad_getcaps), (gst_basesink_init),
16946 (gst_basesink_do_sync):
16947 * gst/gstclock.c: (gst_clock_entry_new):
16948 * gst/gstevent.c: (gst_event_discont_get_value):
16949 * gst/gstpipeline.c: (pipeline_bus_handler),
16950 (gst_pipeline_change_state):
16951 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
16952 Better debugging of clocking info.
16953 Allow NULL values when getting discont values.
16955 2005-04-27 Wim Taymans <wim@fluendo.com>
16957 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
16958 * check/gst/gstpad.c: (gst_pad_suite):
16959 Increase timeout for checks.
16961 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
16963 * check/Makefile.am:
16964 fix the broken rule for cleanup. Apparently this rule is
16965 only needed on FC2, so maybe this warrants further autotool
16968 2005-04-26 Wim Taymans <wim@fluendo.com>
16970 * gst/gsttrashstack.h:
16971 Ooohh. a nasty one! After having a failed pop() from the stack,
16972 it's possible that the stack is empty. In that case, don't
16973 follow the NULL pointer.
16975 2005-04-25 Wim Taymans <wim@fluendo.com>
16977 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16978 (gst_pad_set_checkgetrange_function),
16979 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
16980 (gst_pad_check_pull_range), (gst_pad_pull_range),
16981 (gst_static_pad_template_get_caps), (gst_pad_start_task),
16982 (gst_pad_pause_task), (gst_pad_stop_task):
16983 * gst/gstplugin.c: (gst_plugin_load):
16985 Remove gst_library_load as it does more harm than good with
16986 the new g_module flags.
16987 Revert bogus caps template check in pad linking, pad caps
16988 are important when linking not the template, which is more
16989 general than the current caps.
16991 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16993 * gst/autoplug/.cvsignore:
16994 * gst/autoplug/Makefile.am:
16995 * gst/autoplug/gstsearchfuncs.c:
16996 * gst/autoplug/gstsearchfuncs.h:
16997 * gst/autoplug/gstspider.c:
16998 * gst/autoplug/gstspider.h:
16999 * gst/autoplug/gstspideridentity.c:
17000 * gst/autoplug/gstspideridentity.h:
17001 * gst/autoplug/spidertest.c:
17004 2005-04-25 Wim Taymans <wim@fluendo.com>
17006 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17007 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
17008 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
17009 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
17011 Added stubs for unimplemented functions.
17013 2005-04-24 David Schleef <ds@schleef.org>
17015 * gst/gstpad.h: Disable some unimplemented functions. Wim,
17018 2005-04-24 David Schleef <ds@schleef.org>
17020 Convert everything from GstAtomicInt to g_atomic_int_*, and
17025 * gst/gstatomic_impl.h:
17033 * gst/gstdata_private.h:
17037 * gst/gstmessage.c:
17040 * gst/gststructure.c:
17041 * gst/gststructure.h:
17042 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
17045 2005-04-24 David Schleef <ds@schleef.org>
17047 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
17048 make the regressions tests work. Remove some code that is no
17050 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
17051 Disable warning for pads without templates.
17053 2005-04-24 David Schleef <ds@schleef.org>
17055 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
17056 functions that handle filtered links.
17057 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
17059 * gst/gstutils.c: Fix/remove utility functions that handle
17062 * gst/gstvalue.c: Add serialization/deserialization of caps
17063 * gst/parse/grammar.y: Ignore filtered caps when linking. This
17064 requires fixing so that the filter caps notation creates
17065 a capsfilter element and sets the filter_caps property. I
17066 think everyone probably wants to keep the shorthand notation.
17067 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
17068 * docs/gst/tmpl/gstpad.sgml:
17070 * gst/elements/gstelements.c: Register capsfilter element.
17071 * gst/Makefile.am: fix spacing
17072 * docs/random/ds/0.9-suggested-changes: random
17074 2005-04-23 David Schleef <ds@schleef.org>
17076 * gst/elements/Makefile.am:
17077 * gst/elements/gstcapsfilter.c: New element that acts like an
17078 identity, but filters caps. Will eventually replace filtered
17079 caps in pad linking.
17080 * gst/gstutils.c: (gst_element_create_all_pads): New function
17081 to create all the ALWAYS pads that are registered with an
17082 element class. This functionality should eventually be
17083 merged in with GstElement initialization.
17085 * testsuite/trigger/README: part of trigger test code that should
17086 have been checked in a long time ago.
17088 2005-04-23 David Schleef <ds@schleef.org>
17090 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
17091 needed with new versions of libtool (nobody will confirm this),
17092 and hard to carry around.
17093 * gst/autoplug/Makefile.am:
17094 * gst/base/Makefile.am:
17095 * gst/elements/Makefile.am:
17096 * gst/indexers/Makefile.am:
17097 * gst/schedulers/Makefile.am:
17098 * libs/gst/bytestream/Makefile.am:
17099 * libs/gst/control/Makefile.am:
17100 * libs/gst/dataprotocol/Makefile.am:
17101 * libs/gst/getbits/Makefile.am:
17103 2005-04-21 Wim Taymans <wim@fluendo.com>
17105 * docs/design/draft-push-pull.txt:
17106 * docs/design/part-MT-refcounting.txt:
17107 * docs/design/part-TODO.txt:
17108 * docs/design/part-caps.txt:
17109 * docs/design/part-events.txt:
17110 * docs/design/part-gstbus.txt:
17111 * docs/design/part-gstpipeline.txt:
17112 * docs/design/part-messages.txt:
17113 * docs/design/part-push-pull.txt:
17114 * docs/design/part-query.txt:
17117 2005-04-21 Wim Taymans <wim@fluendo.com>
17119 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
17120 (gst_message_new), (gst_message_new_error),
17121 (gst_message_new_warning), (gst_message_new_tag),
17122 (gst_message_new_state_changed), (gst_message_new_application),
17123 (gst_message_get_structure):
17124 * gst/gstmessage.h:
17125 * gst/gststructure.c: (gst_structure_set_parent_refcount),
17126 (gst_structure_copy_conditional):
17127 Use parent refcount in GstMessage to ensure GstStructure
17129 Cleaned up headers a bit.
17132 2005-04-20 Wim Taymans <wim@fluendo.com>
17134 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17135 (gst_basesink_pad_getcaps), (gst_basesink_init),
17136 (gst_basesink_chain_unlocked):
17137 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
17138 (gst_type_find_helper):
17139 * gst/elements/gsttypefindelement.c:
17140 (gst_type_find_element_have_type), (gst_type_find_element_init),
17141 (stop_typefinding), (gst_type_find_element_handle_event),
17142 (find_suggest), (gst_type_find_element_chain),
17143 (gst_type_find_element_checkgetrange),
17144 (gst_type_find_element_getrange), (do_typefind),
17145 (gst_type_find_element_activate):
17146 * gst/gstbuffer.c: (_gst_buffer_sub_free),
17147 (gst_buffer_default_free), (gst_buffer_default_copy),
17148 (gst_buffer_set_caps):
17149 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
17150 (gst_caps_replace):
17151 * gst/gstmessage.c: (gst_message_new),
17152 (gst_message_new_state_changed):
17153 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17154 (gst_pad_set_checkgetrange_function),
17155 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
17156 (gst_pad_set_caps), (gst_pad_check_pull_range),
17157 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
17159 * gst/gsttypefind.c: (gst_type_find_register):
17160 Make gst_caps_replace() work like other _replace() functions.
17161 Use _caps_replace() where possible.
17162 Make sure _message_new() initialises its field.
17163 Add gst_static_pad_template_get_caps()
17166 2005-04-18 Andy Wingo <wingo@pobox.com>
17168 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
17169 on the peer, not the pad. I think that was a typo. Pass an extra
17170 arg to see if random access is possible. Activate the pads as
17171 PULL_RANGE if possible.
17173 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
17175 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
17176 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
17179 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17181 * docs/faq/using.xml:
17182 Add note on gstreamer-properties (#154996).
17184 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17186 * docs/random/bbb/optional-properties:
17187 Some analysis on optional properties.
17189 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17191 * docs/gst/tmpl/gstelementfactory.sgml:
17192 * gst/gstelement.h:
17193 * gst/gstelementfactory.c: (gst_element_factory_init),
17194 (gst_element_factory_cleanup), (gst_element_register),
17195 (__gst_element_factory_add_static_pad_template),
17196 (gst_element_factory_get_static_pad_templates),
17197 (gst_element_factory_can_src_caps),
17198 (gst_element_factory_can_sink_caps):
17199 * gst/registries/Makefile.am:
17200 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
17201 (gst_xml_registry_class_init), (gst_xml_registry_init),
17202 (gst_xml_registry_new), (gst_xml_registry_set_property),
17203 (gst_xml_registry_get_property), (get_time), (make_dir),
17204 (gst_xml_registry_get_perms_func),
17205 (plugin_times_older_than_recurse), (plugin_times_older_than),
17206 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
17207 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
17208 (add_to_char_array), (read_string), (read_uint), (read_enum),
17209 (load_pad_template), (load_feature), (load_plugin), (load_paths),
17210 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
17211 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
17212 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
17213 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
17214 (gst_xml_registry_rebuild):
17215 * gst/registries/gstlibxmlregistry.h:
17216 * tools/gst-compprep.c: (main):
17217 * tools/gst-inspect.c: (print_pad_templates_info):
17218 * tools/gst-xmlinspect.c: (print_element_info):
17219 Use libxml2 for registry parsing, use staticpadtemplates in
17220 elementfactories. Makes gst_init() +/- 10x faster.
17222 2005-04-12 Wim Taymans <wim@fluendo.com>
17224 * gst/base/Makefile.am:
17225 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17226 (gst_basesink_pad_getcaps), (gst_basesink_init),
17227 (gst_basesink_event), (gst_basesink_change_state):
17228 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17229 (gst_basesrc_init), (gst_basesrc_query),
17230 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
17231 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
17232 (gst_basesrc_check_get_range), (gst_basesrc_loop),
17233 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
17234 (gst_basesrc_stop), (gst_basesrc_activate),
17235 (gst_basesrc_change_state):
17236 * gst/base/gsttypefindhelper.c: (helper_find_peek),
17237 (helper_find_suggest), (gst_type_find_helper):
17238 * gst/base/gsttypefindhelper.h:
17239 * gst/elements/Makefile.am:
17240 * gst/elements/gstelements.c:
17241 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
17242 (gst_fakesink_get_times), (gst_fakesink_event),
17243 (gst_fakesink_preroll), (gst_fakesink_render):
17244 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17245 (gst_fakesrc_init), (gst_fakesrc_event_handler),
17246 (gst_fakesrc_get_property), (gst_fakesrc_create),
17247 (gst_fakesrc_start), (gst_fakesrc_stop):
17248 * gst/elements/gstfakesrc.h:
17249 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
17250 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
17251 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
17252 (gst_filesrc_create_read), (gst_filesrc_create),
17253 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
17254 (gst_filesrc_start):
17255 * gst/elements/gsttypefindelement.c:
17256 (gst_type_find_element_have_type), (gst_type_find_element_init),
17257 (start_typefinding), (stop_typefinding), (push_buffer_store),
17258 (gst_type_find_element_handle_event),
17259 (gst_type_find_element_chain),
17260 (gst_type_find_element_checkgetrange),
17261 (gst_type_find_element_getrange), (do_typefind),
17262 (gst_type_find_element_activate),
17263 (gst_type_find_element_change_state):
17264 * gst/elements/gsttypefindelement.h:
17265 * gst/gstpipeline.c: (pipeline_bus_handler):
17266 Added typefind helper.
17267 Small preroll fix in the base sink.
17268 Disable typefind code in basesrc.
17269 Crude port of typefindelement.
17273 2005-04-11 Wim Taymans <wim@fluendo.com>
17275 * check/gst/gstbus.c: (gstbus_suite):
17276 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
17277 * check/gstcheck.h:
17278 Fix up the timeout so that the test does not fail.
17280 2005-04-06 Wim Taymans <wim@fluendo.com>
17283 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17284 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
17285 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
17286 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
17287 (gst_basesrc_check_get_range), (gst_basesrc_loop),
17288 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
17289 (gst_basesrc_stop), (gst_basesrc_activate),
17290 (gst_basesrc_change_state), (basesrc_find_peek),
17291 (basesrc_find_suggest), (gst_basesrc_type_find):
17292 * gst/base/gstbasesrc.h:
17293 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
17294 (gst_filesrc_class_init), (gst_filesrc_init),
17295 (gst_filesrc_finalize), (gst_filesrc_set_location),
17296 (gst_filesrc_set_property), (gst_filesrc_get_property),
17297 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
17298 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
17299 (gst_filesrc_create_read), (gst_filesrc_create),
17300 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
17301 * gst/elements/gstfilesrc.h:
17302 * gst/gstelement.c: (gst_element_get_state_func),
17303 (gst_element_lost_state), (gst_element_pads_activate):
17304 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17305 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
17306 (gst_pad_pull_range):
17308 More work on the generic source base class, implement seeking,
17310 Make filesrc extend the base source class.
17311 Added gst_pad_set_checkgetrange_function to GstPad.
17313 2005-04-06 Andy Wingo <wingo@pobox.com>
17315 * pkgconfig/gstreamer-base.pc.in:
17316 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
17318 * pkgconfig/Makefile.am:
17319 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
17321 2005-04-04 Wim Taymans <wim@fluendo.com>
17323 * gst/base/Makefile.am:
17325 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17326 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
17327 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
17328 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
17329 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17330 (gst_basesrc_base_init), (gst_basesrc_class_init),
17331 (gst_basesrc_init), (gst_basesrc_get_formats),
17332 (gst_basesrc_get_query_types), (gst_basesrc_query),
17333 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
17334 (gst_basesrc_set_property), (gst_basesrc_get_property),
17335 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
17336 (gst_basesrc_loop), (gst_basesrc_activate),
17337 (gst_basesrc_change_state):
17338 * gst/base/gstbasesrc.h:
17339 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
17340 (gst_fakesrc_class_init), (gst_fakesrc_init),
17341 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
17342 (gst_fakesrc_get_property), (gst_fakesrc_create):
17343 * gst/elements/gstfakesrc.h:
17344 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
17345 (gst_filesrc_open_file), (gst_filesrc_loop),
17346 (gst_filesrc_activate), (filesrc_find_peek),
17347 (gst_filesrc_type_find):
17348 Made base source class, make fakesrc extend it.
17349 Add comments to basesink class.
17350 Some filesrc cleanup.
17352 2005-03-31 David Schleef <ds@schleef.org>
17354 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
17355 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
17356 expected to link against libgstreamer.
17357 * gst/base/Makefile.am: link against libgstreamer
17358 * gst/elements/Makefile.am: same
17360 2005-03-31 Andy Wingo <wingo@pobox.com>
17362 * tests/instantiate/Makefile.am:
17363 * tests/instantiate/caps.c: Add test to test speed of caps copy
17366 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
17367 GMemChunk to be fair.
17369 * gst/gsttrashstack.h: Remove warning about using the fallback
17370 trash stack implementation, it's still faster than malloc.
17372 2005-03-30 Andy Wingo <wingo@pobox.com>
17374 * tests/complexity.c: Add a copyright.
17376 2005-03-31 Wim Taymans <wim@fluendo.com>
17378 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
17379 (gst_base_transform_class_init), (gst_base_transform_init),
17380 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
17381 (gst_base_transform_get_property),
17382 (gst_base_transform_sink_activate),
17383 (gst_base_transform_src_activate),
17384 (gst_base_transform_change_state):
17385 * gst/base/gstbasetransform.h:
17386 * gst/elements/gstidentity.c: (gst_identity_class_init),
17387 (gst_identity_event), (gst_identity_check_perfect),
17388 (gst_identity_transform), (gst_identity_start),
17389 (gst_identity_stop):
17390 Added start/stop methods to transform base class so subclasses
17391 don't need to deal with state changes even.
17393 2005-03-31 Wim Taymans <wim@fluendo.com>
17395 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
17396 (gst_event_new_discontinuous), (gst_event_discont_get_value):
17398 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17399 (gst_pad_pull_range):
17400 Added rate to the discont event to prepare for variable speed
17401 and reverse playback.
17403 2005-03-29 David Schleef <ds@schleef.org>
17406 * testsuite/trigger/Makefile.am:
17407 * testsuite/trigger/trigger.c: A little example program to show
17408 how trigger-based elements can work.
17410 2005-03-29 Wim Taymans <wim@fluendo.com>
17412 * gst/base/Makefile.am:
17414 * gst/base/gstbasesink.c: (gst_basesink_get_type),
17415 (gst_basesink_base_init), (gst_basesink_class_init),
17416 (gst_basesink_pad_getcaps), (gst_basesink_init),
17417 (gst_basesink_activate), (gst_basesink_change_state):
17418 * gst/base/gstbasesink.h:
17419 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
17420 (gst_base_transform_base_init), (gst_base_transform_finalize),
17421 (gst_base_transform_class_init), (gst_base_transform_init),
17422 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
17423 (gst_base_transform_event), (gst_base_transform_getrange),
17424 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
17425 (gst_base_transform_set_property),
17426 (gst_base_transform_get_property),
17427 (gst_base_transform_sink_activate),
17428 (gst_base_transform_src_activate),
17429 (gst_base_transform_change_state):
17430 * gst/base/gstbasetransform.h:
17431 * gst/elements/gstidentity.c: (gst_identity_finalize),
17432 (gst_identity_class_init), (gst_identity_init),
17433 (gst_identity_event), (gst_identity_check_perfect),
17434 (gst_identity_transform), (gst_identity_set_property),
17435 (gst_identity_get_property), (gst_identity_change_state):
17436 * gst/elements/gstidentity.h:
17437 * gst/gstelement.c: (gst_element_get_state_func),
17438 (gst_element_lost_state), (gst_element_pads_activate):
17439 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17440 (gst_pad_check_pull_range), (gst_pad_pull_range):
17442 Simplify pad activation.
17443 Added function to check if pull_range can be performed.
17444 Error out when pulling inactive or flushing pads.
17445 Removed const from refcounted types as it does not make sense.
17446 Simplify pad templates in basesink
17447 Added base class for simple 1-to-1 transforms.
17448 Make identity subclass the base transform.
17450 2005-03-29 Andy Wingo <wingo@pobox.com>
17452 * docs/libs/gstreamer-libs-overrides.txt:
17453 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
17454 really don't understand what's going on, but like whatever. I want
17457 * docs/gst/Makefile.am:
17458 * docs/libs/Makefile.am: Dist the overrides files.
17460 * check/Makefile.am (clean-local): Remove .libs directories.
17462 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
17463 elements to EXTRA_DIST, so po/ files are happy.
17465 * po/POTFILES.in: Er, remove it here.
17467 * po/POTFILES: Remove gstspider.c.
17469 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
17471 * docs/libs/gstreamer-libs-docs.sgml:
17472 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
17475 * tests/complexity.c (main): Set the length of the preroll queue
17476 on the sinks to prevent a lockup.
17478 * libs/gst/dataprotocol/Makefile.am:
17479 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
17480 the same as the one in check/gst-libs/gdp.c.
17482 * po/, docs/gst/: Commit automatic changes to docs and po files.
17484 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
17485 the versioned libgstbase.
17487 * check/Makefile.am: Depend on an unversioned gst-register, seems
17488 to make autoconf happier.
17490 * gst/base/Makefile.am: Make libgstbase a versioned lib.
17492 2005-03-28 Wim Taymans <wim@fluendo.com>
17495 * docs/design/part-gstelement.txt:
17496 * docs/design/part-negotiation.txt:
17497 * docs/design/part-preroll.txt:
17498 * docs/design/part-scheduling.txt:
17499 * docs/design/part-states.txt:
17501 * gst/base/Makefile.am:
17503 * gst/base/gstbasesink.c: (gst_basesink_get_template),
17504 (gst_basesink_base_init), (gst_basesink_class_init),
17505 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
17506 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
17507 (gst_basesink_set_pad_functions),
17508 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
17509 (gst_basesink_set_property), (gst_basesink_get_property),
17510 (gst_base_sink_get_template), (gst_base_sink_get_caps),
17511 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
17512 (gst_basesink_preroll_queue_push),
17513 (gst_basesink_preroll_queue_empty),
17514 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
17515 (gst_basesink_event), (gst_basesink_get_times),
17516 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
17517 (gst_basesink_chain_unlocked), (gst_basesink_chain),
17518 (gst_basesink_loop), (gst_basesink_activate),
17519 (gst_basesink_change_state):
17520 * gst/base/gstbasesink.h:
17521 * gst/elements/Makefile.am:
17522 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
17523 (gst_fakesink_class_init), (gst_fakesink_init),
17524 (gst_fakesink_set_property), (gst_fakesink_get_property),
17525 (gst_fakesink_get_times), (gst_fakesink_event),
17526 (gst_fakesink_preroll), (gst_fakesink_render),
17527 (gst_fakesink_change_state):
17528 * gst/elements/gstfakesink.h:
17529 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
17530 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
17531 * gst/gstelement.c: (gst_element_add_pad),
17532 (gst_element_get_state_func), (gst_element_abort_state),
17533 (gst_element_commit_state), (gst_element_lost_state),
17534 (gst_element_set_state), (gst_element_pads_activate):
17535 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
17536 * gst/gstpipeline.c: (gst_pipeline_send_event),
17537 (gst_pipeline_change_state):
17538 Added state change code.
17539 Added/updated docs.
17540 Added sink base class, make fakesink extend the base class.
17541 Small cleanups in GstPipeline.
17543 2005-03-26 David Schleef <ds@schleef.org>
17545 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
17546 is broken and should be implemented in a different library.
17547 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
17548 * gst/gst.h: remove gstcpu.h
17549 * gst/gstcpu.c: remove
17550 * gst/gstcpu.h: remove
17551 * gst/Makefile.am.future: Remove this file. It's ancient.
17553 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17555 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
17556 (gst_bin_send_event):
17557 Add default event/set_manager handlers. The set_manager handler
17558 takes care that the manager is distributed over kids that were
17559 already in the bin before the manager was set. The event handler
17560 is a utility virtual function that sends the event over all sinks,
17561 so that gst_element_send_event (bin, event); has the expected
17563 * gst/gstpad.c: (gst_pad_event_default):
17564 Re-install default event handling for discontinuities, so that
17565 seeking works without requiring hacks in applications or extra
17567 * gst/gstpipeline.c: (gst_pipeline_class_init),
17568 (gst_pipeline_send_event):
17569 Half hack, half utility: set a pipeline to PAUSED for seek events,
17570 since that is the only way we can guarantee a/v sync. Means that
17571 you can do gst_element_seek (pipeline, method, pos); on a pipeline
17572 and it "just works".
17574 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17576 * gst/gstpipeline.c: (gst_pipeline_use_clock):
17577 Lock/unlock mismatch.
17579 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
17581 * docs/faq/gst-uninstalled:
17582 add gst-plugins-base
17583 * docs/gst/Makefile.am:
17584 don't error out until docs are fixed
17585 * docs/gst/gstreamer.types:
17588 2005-03-22 Wim Taymans <wim@fluendo.com>
17590 * check/Makefile.am:
17591 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
17592 * gst/gststructure.c: (gst_structure_set_valist),
17593 (gst_structure_copy_conditional):
17594 Activated more tests.
17595 Added message test.
17596 Added G_TYPE_POINTER to GstStructure.
17599 2005-03-22 Wim Taymans <wim@fluendo.com>
17601 * docs/design/part-TODO.txt:
17602 * docs/design/part-events.txt:
17603 * docs/design/part-gstbin.txt:
17604 * docs/design/part-gstbus.txt:
17605 * docs/design/part-gstpipeline.txt:
17606 * docs/design/part-messages.txt:
17608 * gst/gstmessage.c:
17611 2005-03-21 Wim Taymans <wim@fluendo.com>
17613 * gst/gstbus.c: (gst_bus_post):
17614 Fix copy-and-paste error.
17616 2005-03-21 Wim Taymans <wim@fluendo.com>
17618 * check/Makefile.am:
17620 * gst/elements/Makefile.am:
17621 * gst/elements/gstelements.c:
17622 * gst/elements/gstfakesink.c: (gst_fakesink_init),
17623 (gst_fakesink_event), (gst_fakesink_chain):
17624 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17625 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
17626 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
17627 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
17628 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
17629 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
17630 (gst_fakesrc_loop), (gst_fakesrc_activate),
17631 (gst_fakesrc_change_state):
17632 * gst/elements/gstfakesrc.h:
17633 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
17634 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
17635 (gst_filesrc_open_file), (gst_filesrc_loop),
17636 (gst_filesrc_activate), (gst_filesrc_change_state),
17637 (filesrc_find_peek), (filesrc_find_suggest),
17638 (gst_filesrc_type_find):
17639 * gst/elements/gstidentity.c: (gst_identity_finalize),
17640 (gst_identity_class_init), (gst_identity_init),
17641 (gst_identity_proxy_getcaps), (identity_queue_push),
17642 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
17643 (gst_identity_getrange), (gst_identity_chain),
17644 (gst_identity_sink_loop), (gst_identity_src_loop),
17645 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
17646 (gst_identity_set_property), (gst_identity_get_property),
17647 (gst_identity_change_state):
17648 * gst/elements/gstidentity.h:
17649 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
17650 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
17651 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
17652 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
17653 (gst_tee_sink_activate):
17654 * gst/elements/gsttee.h:
17655 * gst/gst.c: (gst_register_core_elements), (init_post):
17657 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
17658 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
17659 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
17660 (gst_bin_change_state):
17662 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
17663 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
17664 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
17665 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
17666 (gst_bus_set_sync_handler), (gst_bus_create_watch),
17667 (bus_watch_callback), (bus_watch_destroy),
17668 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
17669 (poll_timeout), (gst_bus_poll):
17673 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
17674 (gst_element_post_message), (gst_element_message_full),
17675 (gst_element_get_state_func), (gst_element_get_state),
17676 (gst_element_abort_state), (gst_element_commit_state),
17677 (gst_element_lost_state), (gst_element_set_state),
17678 (gst_element_pads_activate), (gst_element_change_state),
17679 (gst_element_dispose), (gst_element_set_manager_func),
17680 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
17681 (gst_element_set_manager), (gst_element_get_manager),
17682 (gst_element_set_bus), (gst_element_get_bus),
17683 (gst_element_set_scheduler), (gst_element_get_scheduler):
17684 * gst/gstelement.h:
17685 * gst/gstevent.c: (gst_event_new_segment_seek),
17686 (gst_event_new_flush):
17688 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
17689 (_gst_message_free), (gst_message_get_type), (gst_message_new),
17690 (gst_message_new_eos), (gst_message_new_error),
17691 (gst_message_new_warning), (gst_message_new_tag),
17692 (gst_message_new_state_changed), (gst_message_new_application),
17693 (gst_message_get_structure), (gst_message_parse_tag),
17694 (gst_message_parse_state_changed), (gst_message_parse_error),
17695 (gst_message_parse_warning):
17696 * gst/gstmessage.h:
17697 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
17698 (gst_real_pad_set_property), (gst_pad_set_active),
17699 (gst_pad_is_active), (gst_pad_set_blocked_async),
17700 (gst_pad_set_blocked), (gst_pad_is_blocked),
17701 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
17702 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
17703 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
17704 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
17705 (gst_pad_link_filtered), (gst_pad_relink_filtered),
17706 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
17707 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
17708 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
17709 (gst_pad_set_caps), (gst_pad_configure_sink),
17710 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
17711 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
17712 (gst_real_pad_dispose), (gst_real_pad_finalize),
17713 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
17714 (gst_pad_event_default_dispatch), (gst_pad_event_default),
17715 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
17717 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
17718 (pipeline_bus_handler), (gst_pipeline_change_state),
17719 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
17720 * gst/gstpipeline.h:
17722 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
17723 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
17724 (gst_queue_link_src), (gst_queue_bufferalloc),
17725 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
17726 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
17727 (gst_queue_loop), (gst_queue_handle_src_event),
17728 (gst_queue_handle_src_query), (gst_queue_src_activate),
17729 (gst_queue_change_state):
17731 * gst/gstscheduler.c: (gst_scheduler_init),
17732 (gst_scheduler_dispose), (gst_scheduler_create_task),
17733 (gst_scheduler_factory_create):
17734 * gst/gstscheduler.h:
17735 * gst/gststructure.c: (gst_structure_get_type),
17736 (gst_structure_copy_conditional):
17737 * gst/gststructure.h:
17738 * gst/gsttaginterface.h:
17739 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
17740 (gst_task_init), (gst_task_dispose), (gst_task_create),
17741 (gst_task_get_state), (gst_task_start), (gst_task_stop),
17747 * gst/schedulers/Makefile.am:
17748 * gst/schedulers/cothreads_compat.h:
17749 * gst/schedulers/entryscheduler.c:
17750 * gst/schedulers/faircothreads.c:
17751 * gst/schedulers/faircothreads.h:
17752 * gst/schedulers/fairscheduler.c:
17753 * gst/schedulers/gstbasicscheduler.c:
17754 * gst/schedulers/gstoptimalscheduler.c:
17755 * gst/schedulers/gthread-cothreads.h:
17756 * gst/schedulers/threadscheduler.c:
17757 (gst_thread_scheduler_task_get_type),
17758 (gst_thread_scheduler_task_class_init),
17759 (gst_thread_scheduler_task_init),
17760 (gst_thread_scheduler_task_start),
17761 (gst_thread_scheduler_task_stop),
17762 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
17763 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
17764 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
17765 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
17767 * libs/gst/Makefile.am:
17768 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
17769 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
17770 (gst_file_pad_parent_set):
17771 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
17772 (gst_dp_event_from_packet):
17773 * tests/complexity.c: (main):
17774 * tests/mass_elements.c: (main):
17775 * testsuite/states/locked.c: (message_received), (main):
17776 * testsuite/states/parent.c: (main):
17777 * tools/gst-inspect.c: (print_element_flag_info),
17778 (print_implementation_info), (print_pad_info):
17779 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
17781 * tools/gst-md5sum.c: (event_loop), (main):
17782 * tools/gst-typefind.c: (main):
17783 * tools/gst-xmlinspect.c: (print_element_info):
17785 Added GstBus for mainloop integration.
17786 Added GstMessage for sending notifications on the bus.
17787 Added GstTask as an abstraction for pipeline entry points.
17789 Removed Schedulers.
17790 Simplified GstQueue for multithreaded core.
17791 Made _link threadsafe, removed old capsnego.
17792 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
17793 Added pad blocking functions.
17794 Reworked scheduling functions in GstPad to prepare for
17795 scheduling updates soon.
17796 Moved events out of data stream.
17797 Simplified GstEvent types.
17798 Added return values to push/pull.
17799 Removed clocking from GstElement.
17800 Added prototypes for state change function for next merge.
17801 Removed iterate from bins and state change management.
17802 Fixed some elements, disabled others for now.
17803 Fixed -inspect and -launch.
17804 Added check for GstBus.
17806 2005-03-10 Wim Taymans <wim@fluendo.com>
17808 * docs/design/part-MT-refcounting.txt:
17809 * docs/design/part-clocks.txt:
17810 * docs/design/part-gstelement.txt:
17811 * docs/design/part-gstobject.txt:
17812 * docs/design/part-standards.txt:
17813 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17814 (gst_bin_remove_func), (gst_bin_remove):
17818 * testsuite/clock/clock1.c: (main):
17819 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
17821 * testsuite/dlopen/loadgst.c: (do_test):
17822 * testsuite/refcounting/bin.c: (add_remove_test1),
17823 (add_remove_test2), (main):
17824 * testsuite/refcounting/element.c: (main):
17825 * testsuite/refcounting/element_pad.c: (main):
17826 * testsuite/refcounting/pad.c: (main):
17827 * tools/gst-launch.c: (sigint_handler_sighandler):
17828 * tools/gst-typefind.c: (main):
17830 Added doc about clock.
17831 removed gst_bin_iterate_recurse_up(), marked methods
17833 Fix more testsuites.
17835 2005-03-09 Wim Taymans <wim@fluendo.com>
17837 * gst/gstpad.c: (gst_pad_get_direction),
17838 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
17839 (gst_pad_collect_valist):
17840 * testsuite/bins/interface.c: (main):
17841 * testsuite/caps/audioscale.c: (test_caps):
17842 * testsuite/caps/caps.c: (test1), (test2), (test3):
17843 * testsuite/caps/deserialize.c: (main):
17844 * testsuite/caps/enumcaps.c: (main):
17845 * testsuite/caps/filtercaps.c: (main):
17846 * testsuite/caps/intersect2.c: (main):
17847 * testsuite/caps/random.c: (main):
17848 * testsuite/caps/renegotiate.c: (my_fixate), (main):
17849 * testsuite/caps/sets.c: (check_caps):
17850 * testsuite/caps/simplify.c: (check_caps), (main):
17851 * testsuite/caps/subtract.c: (check_caps):
17852 Fix _pad_get_direction wrt ghostpads.
17853 Fix caps testsuite.
17855 2005-03-09 Wim Taymans <wim@fluendo.com>
17857 * check/Makefile.am:
17858 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
17859 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
17860 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
17861 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
17862 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
17863 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
17864 (gst_bin_remove), (gst_bin_iterate_recurse_up),
17865 (bin_element_is_sink), (gst_bin_iterate_sinks),
17866 (gst_bin_iterate_all_by_interface):
17868 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
17869 (gst_element_change_state), (gst_element_dispose),
17870 (gst_element_finalize), (gst_element_set_loop_function):
17871 * gst/gstelement.h:
17872 * gst/gstiterator.c: (find_custom_fold_func):
17873 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
17874 (gst_pad_collectv), (gst_pad_collect_valist),
17875 (gst_pad_template_new):
17876 * gst/gstpipeline.c: (gst_pipeline_class_init),
17877 (gst_pipeline_dispose), (gst_pipeline_set_property),
17878 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
17879 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
17880 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
17882 * gst/schedulers/entryscheduler.c:
17883 * gst/schedulers/gstbasicscheduler.c:
17884 (gst_basic_scheduler_cothreaded_chain),
17885 (gst_basic_scheduler_chain_add_element):
17886 * testsuite/bins/interface.c: (main):
17888 Added GstSystemClock test.
17889 Implemented clock distribution code in GstBin.
17890 Implemented iterate sinks method for future use.
17891 Rearranged gstelement.h
17892 Fix GstIterator comparison bug.
17893 Moved some code to GstPipeline, mostly clocking related.
17895 2005-03-09 Wim Taymans <wim@fluendo.com>
17898 * gst/gst_private.h:
17899 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17900 (gst_bin_remove_func), (gst_bin_remove),
17901 (gst_bin_get_by_name_recurse_up):
17902 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
17903 (gst_clock_id_compare_func), (gst_clock_id_wait),
17904 (gst_clock_id_wait_async), (gst_clock_init),
17905 (gst_clock_adjust_unlocked), (gst_clock_get_time):
17906 * gst/gstelement.h:
17907 * gst/gstinfo.c: (_gst_debug_init):
17909 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
17910 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
17912 Bump version number, we're now 0.9.0
17913 Add future debugging category.
17914 Fix NULL _unref() in _get_by_name_recurse_up
17915 Rearrange gstpad.h.
17918 2005-03-08 Wim Taymans <wim@fluendo.com>
17920 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
17921 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
17922 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
17923 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
17924 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
17925 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
17926 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
17927 * gst/elements/gstidentity.c: (gst_identity_class_init):
17928 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
17929 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
17930 * gst/elements/gstshaper.c: (gst_shaper_class_init):
17931 * gst/elements/gststatistics.c: (gst_statistics_class_init):
17932 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
17934 * gst/gstelement.c: (gst_element_class_init),
17935 (gst_element_base_class_init), (gst_element_init),
17936 (gst_element_get_random_pad), (gst_element_wait_state_change),
17937 (gst_element_change_state), (gst_element_dispose),
17938 (gst_element_finalize), (gst_element_set_loop_function):
17939 * gst/gstelement.h:
17940 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
17941 * gst/gstthread.c: (gst_thread_class_init),
17942 (gst_thread_release_children_locks), (gst_thread_change_state):
17943 * gst/schedulers/gstbasicscheduler.c:
17944 (gst_basic_scheduler_loopfunc_wrapper),
17945 (gst_basic_scheduler_chain_wrapper),
17946 (gst_basic_scheduler_src_wrapper),
17947 (gst_basic_scheduler_remove_element):
17948 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
17949 Remove threadsafe properties. Fix elements because GObject
17950 complains when installing a property before declaring a
17951 set/get_property handler.
17952 Rearrange gstelement.h file, use STATE macros for state locks.
17953 Free mutexes in the finalize method instead of dispose.
17955 2005-03-08 Wim Taymans <wim@fluendo.com>
17957 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
17958 * gst/gstthread.c: (gst_thread_release_children_locks):
17959 Added parentage check.
17960 Fix build og GstThread again.
17962 2005-03-08 Wim Taymans <wim@fluendo.com>
17964 * docs/design/part-MT-refcounting.txt:
17965 * docs/design/part-conventions.txt:
17966 * docs/design/part-gstobject.txt:
17967 * docs/design/part-relations.txt:
17968 * docs/design/part-standards.txt:
17969 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17970 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
17971 (gst_bin_get_by_name), (gst_bin_get_by_interface),
17972 (gst_bin_iterate_all_by_interface):
17975 * gst/gstelement.c: (gst_element_class_init),
17976 (gst_element_change_state), (gst_element_set_loop_function):
17977 * gst/gstelement.h:
17978 * gst/gstiterator.c:
17979 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
17980 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
17981 (gst_object_dispatch_properties_changed), (gst_object_set_name),
17982 (gst_object_set_parent), (gst_object_unparent),
17983 (gst_object_check_uniqueness):
17985 Docs updates, clean up some headers.
17987 2005-03-07 Wim Taymans <wim@fluendo.com>
17989 * check/.cvsignore:
17990 * check/Makefile.am:
17991 * check/gst-libs/.cvsignore:
17992 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
17993 * check/gst/.cvsignore:
17994 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
17995 (START_TEST), (gstbus_suite), (main):
17996 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
17997 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
17998 (gst_data_suite), (main):
17999 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
18000 (add_fold_func), (gstiterator_suite), (main):
18001 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
18002 (thread_name_object), (thread_name_object_default),
18003 (gst_object_name_compare), (gst_object_suite), (main):
18004 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
18005 (gst_pad_suite), (main):
18006 * check/gstcheck.c: (gst_check_log_message_func),
18007 (gst_check_log_critical_func), (gst_check_init):
18008 * check/gstcheck.h:
18009 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
18010 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
18013 2005-03-07 Wim Taymans <wim@fluendo.com>
18015 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
18016 (gst_list_iterator_next), (gst_list_iterator_resync),
18017 (gst_list_iterator_free), (gst_iterator_new_list),
18018 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
18019 (gst_iterator_free), (gst_iterator_push), (filter_next),
18020 (filter_resync), (filter_uninit), (filter_free),
18021 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
18022 (gst_iterator_foreach), (find_custom_fold_func),
18023 (gst_iterator_find_custom):
18024 * gst/gstiterator.h:
18025 Added missing files.
18027 2005-03-07 Wim Taymans <wim@fluendo.com>
18031 * docs/design/part-MT-refcounting.txt:
18032 * docs/design/part-conventions.txt:
18033 * docs/design/part-gstobject.txt:
18034 * docs/design/part-relations.txt:
18035 * examples/mixer/mixer.c: (main):
18036 * examples/thread/thread.c: (eos), (main):
18038 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
18039 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
18040 (gst_spider_plug_from_srcpad):
18041 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
18042 (gst_spider_identity_change_state),
18043 (gst_spider_identity_sink_loop_type_finding):
18044 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
18045 * gst/elements/gstidentity.c: (gst_identity_init):
18046 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
18047 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
18048 * gst/elements/gsttypefindelement.c: (free_entry):
18051 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
18052 (gst_bin_set_clock_func), (gst_bin_auto_clock),
18053 (gst_bin_set_index), (gst_bin_set_element_sched),
18054 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
18055 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
18056 (gst_bin_iterate_elements), (iterate_child_recurse),
18057 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
18058 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
18059 (compare_interface), (gst_bin_get_by_interface),
18060 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
18062 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
18063 (gst_buffer_default_free), (gst_buffer_default_copy),
18064 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
18065 (gst_buffer_create_sub):
18067 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
18068 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
18069 (gst_caps_unref), (gst_static_caps_get),
18070 (gst_caps_remove_and_get_structure), (gst_caps_append),
18071 (gst_caps_append_structure), (gst_caps_remove_structure),
18072 (gst_caps_copy_nth), (gst_caps_set_simple),
18073 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
18074 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
18075 (gst_caps_structure_intersect_field), (gst_caps_intersect),
18076 (gst_caps_structure_subtract_field), (gst_caps_subtract),
18077 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
18078 (gst_caps_structure_figure_out_union),
18079 (gst_caps_switch_structures), (gst_caps_do_simplify),
18080 (gst_caps_replace), (gst_caps_from_string),
18081 (gst_caps_copy_conditional):
18083 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
18084 (_gst_clock_id_free), (gst_clock_id_unref),
18085 (gst_clock_id_compare_func), (gst_clock_id_wait),
18086 (gst_clock_id_wait_async), (gst_clock_class_init),
18087 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
18088 (gst_clock_get_time), (gst_clock_set_time_adjust),
18089 (gst_clock_set_property), (gst_clock_get_property):
18092 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
18093 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
18095 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
18096 (gst_element_requires_clock), (gst_element_provides_clock),
18097 (gst_element_set_clock), (gst_element_clock_wait),
18098 (gst_element_wait), (gst_element_set_time_delay),
18099 (gst_element_is_indexable), (gst_element_add_pad),
18100 (gst_element_add_ghost_pad), (gst_element_remove_pad),
18101 (pad_compare_name), (gst_element_get_static_pad),
18102 (gst_element_request_pad), (gst_element_get_request_pad),
18103 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
18104 (gst_element_class_get_pad_template_list),
18105 (gst_element_class_get_pad_template), (gst_element_error_func),
18106 (gst_element_get_random_pad), (gst_element_get_event_masks),
18107 (gst_element_send_event), (gst_element_seek),
18108 (gst_element_get_query_types), (gst_element_query),
18109 (gst_element_get_formats), (gst_element_convert),
18110 (gst_element_is_locked_state), (gst_element_set_locked_state),
18111 (gst_element_sync_state_with_parent), (gst_element_change_state),
18112 (gst_element_finalize), (gst_element_yield),
18113 (gst_element_interrupt), (gst_element_set_scheduler),
18114 (gst_element_get_scheduler), (gst_element_set_loop_function):
18115 * gst/gstelement.h:
18117 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
18118 (gst_format_get_by_nick), (gst_format_get_details),
18119 (gst_format_iterate_definitions):
18121 * gst/gstindex.c: (gst_index_gtype_resolver):
18124 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
18125 (gst_mem_chunk_free):
18126 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
18127 (gst_object_ref), (gst_object_unref), (gst_object_sink),
18128 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
18129 (gst_object_dispatch_properties_changed),
18130 (gst_object_set_name_default), (gst_object_set_name),
18131 (gst_object_get_name), (gst_object_set_name_prefix),
18132 (gst_object_get_name_prefix), (gst_object_set_parent),
18133 (gst_object_get_parent), (gst_object_unparent),
18134 (gst_object_check_uniqueness), (gst_object_save_thyself),
18135 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
18136 (gst_object_set_property), (gst_object_get_property),
18137 (gst_object_get_path_string):
18139 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
18140 (gst_real_pad_init), (gst_real_pad_get_property),
18141 (gst_pad_custom_new), (gst_pad_get_direction),
18142 (gst_pad_set_active), (gst_pad_is_active),
18143 (gst_pad_set_event_function), (gst_pad_is_linked),
18144 (gst_pad_link_free), (gst_pad_link_intersect),
18145 (gst_pad_link_fixate), (gst_pad_set_caps),
18146 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
18147 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
18148 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
18149 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
18150 (gst_pad_get_caps), (gst_pad_peer_get_caps),
18151 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
18152 (gst_pad_realize), (gst_pad_get_allowed_caps),
18153 (gst_real_pad_dispose), (gst_real_pad_finalize),
18154 (gst_pad_collectv), (gst_pad_collect_valist),
18155 (gst_pad_template_dispose), (gst_pad_template_new),
18156 (gst_pad_get_internal_links):
18158 * gst/gstpipeline.c: (gst_pipeline_dispose),
18159 (gst_pipeline_change_state):
18160 * gst/gstpipeline.h:
18162 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
18163 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
18164 * gst/gstpluginfeature.h:
18165 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
18166 * gst/gstquery.c: (_gst_query_type_initialize),
18167 (gst_query_type_register), (gst_query_type_get_by_nick),
18168 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
18170 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
18171 * gst/gstscheduler.c: (gst_scheduler_add_element),
18172 (gst_scheduler_factory_create):
18173 * gst/gststructure.c: (gst_structure_set_parent_refcount),
18174 (gst_structure_free), (gst_structure_set_name),
18175 (gst_structure_id_set_value), (gst_structure_set_value),
18176 (gst_structure_set_valist), (gst_structure_remove_field),
18177 (gst_structure_remove_fields),
18178 (gst_structure_remove_fields_valist),
18179 (gst_structure_remove_all_fields), (gst_structure_foreach),
18180 (gst_structure_map_in_place),
18181 (gst_caps_structure_fixate_field_nearest_int),
18182 (gst_caps_structure_fixate_field_nearest_double):
18183 * gst/gststructure.h:
18184 * gst/gstsystemclock.c: (gst_system_clock_class_init),
18185 (gst_system_clock_init), (gst_system_clock_dispose),
18186 (gst_system_clock_async_thread),
18187 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
18188 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
18189 * gst/gstsystemclock.h:
18190 * gst/gsttag.c: (gst_tag_list_add_value_internal),
18191 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
18192 * gst/gsttaginterface.c:
18193 * gst/gstthread.c: (gst_thread_dispose),
18194 (gst_thread_release_children_locks), (gst_thread_change_state),
18195 (gst_thread_main_loop):
18196 * gst/gsttrashstack.h:
18197 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
18199 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
18200 (gst_element_request_pad), (gst_element_get_pad_from_template),
18201 (gst_element_request_compatible_pad),
18202 (gst_element_get_compatible_pad_filtered),
18203 (gst_element_get_compatible_pad), (gst_element_state_get_name),
18204 (gst_element_link_pads_filtered), (gst_element_link_filtered),
18205 (gst_element_link_many), (gst_element_link),
18206 (gst_element_link_pads), (gst_element_unlink_pads),
18207 (gst_element_unlink_many), (gst_element_unlink),
18208 (gst_pad_can_link_filtered), (gst_pad_can_link),
18209 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
18210 (gst_object_default_error), (gst_bin_add_many),
18211 (gst_bin_remove_many), (gst_element_populate_std_props),
18212 (gst_element_class_install_std_props), (gst_buffer_merge),
18213 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
18214 (link_fold_func), (gst_pad_proxy_setcaps):
18216 * gst/gstvalue.c: (gst_value_deserialize_string):
18217 * gst/parse/grammar.y:
18218 * gst/schedulers/gstbasicscheduler.c:
18219 (gst_basic_scheduler_cothreaded_chain),
18220 (gst_basic_scheduler_chain_recursive_add),
18221 (gst_basic_scheduler_pad_link):
18222 * gst/schedulers/gstoptimalscheduler.c:
18223 (get_group_schedule_function),
18224 (gst_opt_scheduler_state_transition),
18225 (gst_opt_scheduler_add_element), (element_get_reachables_func):
18226 * libs/gst/bytestream/bytestream.c:
18227 * libs/gst/dataprotocol/dataprotocol.c:
18228 (gst_dp_header_from_buffer):
18231 * tests/threadstate/threadstate2.c: (eos):
18232 * tools/gst-compprep.c: (main):
18233 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
18234 (print_pad_info), (print_children_info):
18235 * tools/gst-launch.c: (idle_func), (main):
18236 * tools/gst-md5sum.c: (idle_func), (main):
18237 * tools/gst-xmlinspect.c: (print_element_info):
18238 First THREADED backport attempt, focusing on adding locks and
18239 making sure the API is threadsafe. Needs more work. More docs
18242 2005-02-24 Andy Wingo <wingo@pobox.com>
18244 * tests/bench-complexity.scm:
18245 * tests/complexity.gnuplot: New files, good for running complexity
18248 * tests/Makefile.am:
18249 * tests/complexity.c: New test, sets up N elements, at each level
18250 teeing into M streams per element. Eeeenteresting.
18252 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
18253 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
18254 running bench-mass_elements.scm.
18256 * tests/bench-mass_elements.scm: New script, runs mass_elements
18257 for various numbers of identities, outputting the results to a
18258 file. Requires guile 1.6. Just for testing.
18260 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
18262 * gst/schedulers/fairscheduler.c:
18263 compile with debug disabled
18265 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
18268 hunting season on 0.9 is now OPEN