1 2006-07-27 Wim Taymans <wim@fluendo.com>
3 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_get_structure):
4 Fix useless assert, a uint is always positive.
6 * gst/gststructure.c: (gst_structure_nth_field_name),
7 (gst_structure_foreach), (gst_structure_map_in_place):
8 Check input arguments for public functions to avoid obvious crashes.
10 * plugins/elements/gstfakesink.c: (gst_fake_sink_render):
11 * plugins/elements/gstfakesink.h:
12 Do less useless typechecking.
14 2006-07-27 Tim-Philipp Müller <tim at centricular dot net>
16 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
17 Do not use mmap() by default since there are a number of error
18 conditions that we would like to handle in a non-fatal way that
19 will result in a SIGBUS if we use mmap(). Examples: external
20 devices (USB harddrive, portable music player) being unplugged
21 while in use; file on mounted CD/DVD that can't be read because
22 the medium is partly damaged. Fixes #348455 and #348475.
24 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
27 Delete unused and misleading define of GST_QUERY_TYPE_RATE_DEN -
30 2006-07-26 Stefan Kost <ensonic@users.sf.net>
33 Move big documentation comment into class section header, so that it
34 appears in the API docs.
36 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
38 * docs/gst/gstreamer-sections.txt:
39 Oops. Commit the docs additions too for new API.
40 Also, remove the mention of the non-existent GST_QUERY_TYPE_RATE_DEN
42 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
44 * gst/gststructure.c: (gst_structure_id_set),
45 (gst_structure_id_set_valist):
47 Add API for setting values into structures without performing
48 a quark lookup, if the appropriate quark is already known.
50 API: gst_structure_id_set
51 API: gst_structure_id_set_valist
53 * gst/parse/grammar.y:
55 Remove some dead code shown by the coverage information.
56 Don't throw a critical g_warning when encountering a syntax error,
57 just warn and let the normal error path handle it.
59 * plugins/elements/gstelements.c:
60 Bump the rank of filesink up to PRIMARY so that it is preferred over
61 gnomevfssink for file:// sink uri's
63 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe),
64 (GST_START_TEST), (run_delayed_test),
65 (gst_parse_test_element_base_init),
66 (gst_parse_test_element_class_init), (gst_parse_test_element_init),
67 (gst_parse_test_element_change_state),
68 (gst_register_parse_element), (parse_suite):
69 Beef up the tests for parse syntax to check that more error cases
70 fail as they are supposed to. Increases the test coverage a bit.
72 2006-07-26 Tim-Philipp Müller <tim at centricular dot net>
74 * docs/manual/basics-elements.xml:
75 Fix gst_element_link() example.
78 Mention in API docs that one should usually gst_bin_add()
79 elements to a bin or pipeline before doing the linking.
81 2006-07-26 Wim Taymans <wim@fluendo.com>
83 * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_new),
84 (gst_subbuffer_get_type), (gst_buffer_create_sub):
85 Avoid function call for known types by keeping the buffer and
86 subbuffer GType global.
88 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
89 Random silly optimisations in read() path.
91 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
93 * tools/gst-launch.c: (main):
94 If the top-level of the parse is a normal bin, it doesn't do the
95 right logic to run as a top-level element, so place it inside a
98 2006-07-25 Tim-Philipp Müller <tim at centricular dot net>
100 * plugins/elements/gstfilesrc.c: (gst_file_src_set_property):
101 Remove superfluous g_object_notify() calls, GObject does
102 that for us automatically.
104 2006-07-25 Stefan Kost <ensonic@users.sf.net>
107 Move the Win32 version from gst-plugins-good/gst/avi/avidemux.c to
110 2006-07-24 Tim-Philipp Müller <tim at centricular dot net>
112 * gst/gsttaglist.c: (_gst_tag_initialize):
113 Allow more than one GST_TAG_IMAGE per taglist.
115 2006-07-24 Thomas Vander Stichele <thomas at apestaart dot org>
117 * gst/gstminiobject.c:
119 * plugins/elements/gstfdsrc.c: (gst_fd_src_set_property),
121 log recurring events at LOG level
122 add more debug for when the fd gets set
124 2006-07-21 Stefan Kost <ensonic@users.sf.net>
126 * gst/gstparse.c: (gst_parse_launch):
127 Also remove reentrance checks if flex is MT save (#348179)
128 Fix my empty ChangeLog entry below
130 2006-07-21 Andy Wingo <wingo@pobox.com>
132 * docs/libs/gstreamer-libs-sections.txt: Attempt to pacify buildbot.
134 * libs/gst/check/Makefile.am
135 (libgstcheck_@GST_MAJORMINOR@include_HEADERS)
136 (libgstcheck_@GST_MAJORMINOR@_la_SOURCES):
137 * libs/gst/check/gstbufferstraw.h:
138 * libs/gst/check/gstbufferstraw.c: Add some new hype testing
139 functions, thus proving I am still a GStreamer haxor. OK I wrote
140 them a long time ago, but anyways.
142 2006-07-21 Stefan Kost <ensonic@users.sf.net>
145 * gst/gstparse.c: (gst_parse_launch):
146 Check for flex version and omit mutex if we have a MT save flex
149 2006-07-21 Wim Taymans <wim@fluendo.com>
151 * gst/gstparse.c: (gst_parse_launch):
152 Protect recursive calls to _parse with a recursive mutex
155 2006-07-21 Wim Taymans <wim@fluendo.com>
157 * tests/check/gst/gstpad.c: (GST_START_TEST):
160 2006-07-20 Stefan Kost <ensonic@users.sf.net>
162 * gst/gstparse.c: (gst_parse_launch):
163 Do not hange on recursive uasge of gst_parse_launch()
165 2006-07-20 Tim-Philipp Müller <tim at centricular dot net>
168 Add some more docs, comments and FIXME 0.11s here and there
169 and also fix some typos.
171 2006-07-20 Tim-Philipp Müller <tim at centricular dot net>
174 Convert tabs to spaces for better readability.
176 2006-07-20 Edward Hervey <edward@fluendo.com>
178 * tests/check/libs/gdp.c: (gst_dp_suite):
179 the test_buffer test fails at line 140 on ppc64 at the following
181 fail_unless (GST_BUFFER_FLAG_IS_SET (newbuffer, GST_BUFFER_FLAG_IN_CAPS),
182 "GST_BUFFER_IN_CAPS flag should have been copied !");
183 See bug #348114 for more details.
185 2006-07-19 Tim-Philipp Müller <tim at centricular dot net>
187 * docs/pwg/advanced-scheduling.xml:
191 2006-07-18 Tim-Philipp Müller <tim at centricular dot net>
193 * docs/pwg/intro-basics.xml:
194 Fix wrong links (#347927).
196 2006-07-18 Stefan Kost <ensonic@users.sf.net>
199 * gst/gstregistryxml.c: (load_feature),
200 (gst_registry_xml_read_cache), (gst_registry_xml_save_feature):
201 * win32/common/config.h:
202 make --disable-index work (#342564)
204 2006-07-18 Wim Taymans <wim@fluendo.com>
206 Patch by: Peter Kjellerstedt <pkj at axis dot com>
210 The attached patch adds two missing defines to gsttrace.h when tracing
211 is disabled. It also corrects one existing define.
214 2006-07-17 Wim Taymans <wim@fluendo.com>
216 * docs/gst/gstreamer-sections.txt:
217 * gst/gst.c: (gst_segtrap_is_enabled), (gst_segtrap_set_enabled):
219 * gst/gstplugin.c: (_gst_plugin_fault_handler_restore):
220 Add two functions to check and change the SIGSEGV behaviour
221 when loading plugins.
222 Don't mess with the SIGSEGV handler when we were told not to.
224 API: gst_segtrap_is_enabled
225 API: gst_segtrap_set_enabled
227 2006-07-14 Wim Taymans <wim@fluendo.com>
229 * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
230 * tests/check/elements/filesrc.c: (GST_START_TEST):
231 Revert fix for regression in #347408 after release.
233 2006-07-14 Tim-Philipp Müller <tim at centricular dot net>
235 Patch by: Antoine Tremblay <hexa00 at gmail com>
237 * gst/gstutils.c: (gst_element_unlink):
238 Free iterator when done (#347311).
240 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
241 And add a test case for this.
243 2006-07-14 Jan Schmidt <thaytan@mad.scientist.com>
246 Bump nano back to CVS
248 === release 0.10.9 ===
250 2006-07-13 Jan Schmidt <thaytan@mad.scientist.com>
253 releasing 0.10.9, "On the road again"
255 2006-07-13 Wim Taymans <wim@fluendo.com>
257 * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
258 * tests/check/elements/filesrc.c: (GST_START_TEST):
259 Revert pull-0 fix for release. Disable check. Fixes #347408.
261 2006-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
263 * libs/gst/dataprotocol/dataprotocol.c:
264 (gst_dp_event_from_packet_1_0):
265 Fixes #347337: failure to deserialize event packets with
266 empty payload (only event type)
268 2006-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
271 do not install a .c file in the header directory
273 2006-07-13 Edward Hervey <edward@fluendo.com>
275 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
276 GhostPad no longer implicitely use the padtemplates of the targets.
279 2006-07-11 Jan Schmidt <thaytan@mad.scientist.com>
281 * gst/gstvalue.c: (gst_value_compare_list),
282 (gst_value_compare_array), (_gst_value_initialize):
283 * tests/check/gst/gstvalue.c: (GST_START_TEST):
284 Make GstValueArray comparison be order dependent as designed.
285 Add checks for value lists and value array comparisons.
288 2006-07-11 Edward Hervey <edward@fluendo.com>
290 * gst/gstbin.c: (activate_pads),
291 (iterator_activate_fold_with_resync), (gst_bin_src_pads_activate),
292 (gst_bin_change_state_func):
293 (de)activate src pads before calling state_change on the childs.
294 This is to avoid the case where a src ghostpad is blocked (holding the
295 stream lock), which would block the deactivation of the ghostpad's
297 * gst/gstghostpad.c: (gst_proxy_pad_do_query_type),
298 (gst_proxy_pad_do_event), (gst_proxy_pad_do_query),
299 (gst_proxy_pad_do_internal_link), (gst_proxy_pad_do_bufferalloc),
300 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
301 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
302 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
303 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target_unlocked),
304 (gst_proxy_pad_set_target), (gst_proxy_pad_get_internal),
305 (gst_proxy_pad_dispose), (gst_proxy_pad_init),
306 (gst_ghost_pad_parent_set), (gst_ghost_pad_parent_unset),
307 (gst_ghost_pad_class_init),
308 (gst_ghost_pad_internal_do_activate_push),
309 (gst_ghost_pad_internal_do_activate_pull),
310 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
311 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
312 (gst_ghost_pad_dispose), (gst_ghost_pad_new_no_target),
313 (gst_ghost_pad_new), (gst_ghost_pad_set_target):
314 GhostPads now create their internal GstProxyPad at creation (and not
315 when they're linked, as it was being done previously).
316 The internal and target pads are linked straight away.
317 The data will also travel through the other pad in order to make
318 pad blocking and probes non-hackish (the probe/block now really happens
319 on the GhostPad and not on the target).
320 * gst/gstpad.c: (gst_pad_set_blocked_async),
321 (gst_pad_link_prepare), (gst_pad_push_event):
322 Remove previous ghostpad cruft.
323 * gst/gstutils.c: (gst_pad_add_data_probe),
324 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
325 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
326 (gst_pad_remove_buffer_probe):
327 Remove previous ghost pad cruft.
328 Added more detailed debug statements.
329 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
330 Fix the testsuite for refcounting changes.
331 The comments about who has references were correct, but the refcount
332 being checked wasn't the same (!?!).
336 2006-07-10 Stefan Kost <ensonic@users.sf.net>
338 * docs/gst/gstreamer-sections.txt:
339 * gst/gstconfig.h.in:
340 More docs for configuration options, add docs to gtk-doc.
342 2006-07-10 Stefan Kost <ensonic@users.sf.net>
345 * gst/gstconfig.h.in:
346 * win32/common/config.h:
347 Fix build when disabling tracing (fixes #344016). Also start to document
348 the defines that disable the sub-systems.
350 2006-07-10 Edward Hervey <edward@fluendo.com>
352 * gst/gst.c: (ensure_current_registry_forking):
353 let's make valgrind happy...
355 2006-07-09 Wim Taymans <wim@fluendo.com>
357 * gst/gstelement.c: (activate_pads),
358 (iterator_activate_fold_with_resync), (gst_element_pads_activate):
359 Better pad activation code: Reset the collect value too on resync.
362 2006-07-09 Wim Taymans <wim@fluendo.com>
364 * gst/gstpad.c: (gst_pad_init), (gst_pad_activate_pull),
365 (gst_pad_activate_push):
366 Use some more macros where it makes sense.
367 Allow pad mode switching instead of asserting. When a pad
368 is activated in one mode and we activate it in another,
369 deactivate it first before activating it in a different mode.
372 2006-07-08 Andy Wingo <wingo@pobox.com>
374 * tools/gst-launch.c (main): Handle err == NULL.
376 * gst/gst.c (init_post, ensure_current_registry)
377 (ensure_current_registry_forking)
378 (ensure_current_registry_nonforking): Reduce #ifdef ratnest by
379 factoring out the registry scanning into separate functions. Don't
380 fork for the rescan is GST_REGISTRY_FORK=no; useful in debugging.
381 Better environment var name/interface suggestions accepted.
383 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
385 * gst/gstobject.c: (gst_object_set_name_default),
386 (gst_object_set_name):
387 Random micro-optimisation: don't use a hash table
388 with strings as keys and the usual strdup/strcmp
389 involved, but rather just use the GQuark of the
390 type name as key, since it needs to be looked up
391 anyway to get the type name string.
393 * tests/check/gst/gstobject.c: (GST_START_TEST):
396 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
398 * gst/gstbin.c: (compare_interface), (gst_bin_get_by_interface),
399 (gst_bin_iterate_all_by_interface):
400 Can't use GPOINTER_TO_INT and GINT_TO_POINTER with GTypes.
401 GTypes are gulongs and thus the top 4 bytes might be cut
402 off on some platforms when doing GPOINTER_TO_INT, leading
403 to invalid GTypes and bad things happening (see RH bug #179654).
404 Also add a check to make sure the type passed in is really
407 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
412 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
416 * gst-element-check.m4:
417 * gst-element-check.m4.in:
418 Make gst-element-check-$VERSION.m4 call gst-inspect-$VERSION
419 instead of the unversioned gst-inspect (#324176, #168659).
421 2006-07-06 Wim Taymans <wim@fluendo.com>
424 Use a valid int for the _MESSAGE_ANY enum value to avoid compiler
427 2006-07-06 Wim Taymans <wim@fluendo.com>
429 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
430 (gst_base_src_wait), (gst_base_src_update_length),
431 (gst_base_src_get_range), (gst_base_src_default_check_get_range),
432 (gst_base_src_check_get_range), (gst_base_src_pad_check_get_range),
433 (gst_base_src_loop), (gst_base_src_start),
434 (gst_base_src_activate_pull):
436 blocksize == 0 now means the default blocksize when working in push
438 Remove some pointless asserts in _wait function.
439 Fix offset/length calculations and EOS handling. We can now pull 0
440 bytes as well, which is allowed.
441 use _check_get_range() to decide if we can operate in _pull based
443 Fix refcounting leak when check_get_range function was not
445 API GstBaseSrc::blocksize range can be 0 too now (default)
447 * tests/check/elements/filesrc.c: (GST_START_TEST),
449 Added check to test _get_range() behaviour.
451 2006-07-06 Wim Taymans <wim@fluendo.com>
453 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
454 (gst_pad_push), (gst_pad_check_pull_range), (gst_pad_get_range),
455 (gst_pad_pull_range):
457 Lots of comments and docs added to the pad functions.
458 Flesh out the expected behaviour of the get_range() functions.
460 2006-07-06 Wim Taymans <wim@fluendo.com>
469 Remove comma at end of enumerator list.
471 2006-07-05 Sebastien Moutte <sebastien@moutte.net>
473 * win32/common/libgstbase.def:
474 * win32/common/libgstdataprotocol.def:
475 * win32/common/libsgtreamer.def:
476 Add new exported functions.
478 2006-07-05 Wim Taymans <wim@fluendo.com>
480 * libs/gst/base/gstpushsrc.c: (gst_push_src_check_get_range):
481 Add some more docs here and there.
483 2006-07-05 Wim Taymans <wim@fluendo.com>
485 * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_object),
486 (gst_base_sink_loop), (gst_base_sink_get_position):
487 When operating in pull mode update the offset so that we
490 2006-07-05 Wim Taymans <wim@fluendo.com>
492 * gst/gstregistryxml.c: (read_string):
493 Avoid strdup. (will happen in libxml, but hey!)
498 2006-07-05 Wim Taymans <wim@fluendo.com>
500 * gst/gstbuffer.c: (_gst_buffer_copy), (gst_buffer_create_sub):
501 * tests/check/gst/gstbuffer.c: (GST_START_TEST),
503 No point in checking if the size of the subbuffer > 0, the
504 code handles it correclty as demonstrated by unit test.
505 Also add a unit test for the zero sized _new_and_alloc and
506 _copy. Fixes #346663.
508 2006-07-05 Wim Taymans <wim@fluendo.com>
510 * libs/gst/base/gstbasetransform.c:
511 (gst_base_transform_prepare_output_buffer),
512 (gst_base_transform_buffer_alloc),
513 (gst_base_transform_handle_buffer):
514 Make sure the buffer we pass to transform_ip has a refcount of
515 1 and thus is writable. Fixes #343196
517 2006-07-04 Jan Schmidt <thaytan@mad.scientist.com>
519 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
520 (gst_file_src_init), (gst_file_src_set_property),
521 (gst_file_src_get_property), (gst_file_src_map_region):
522 * plugins/elements/gstfilesrc.h:
523 Add "sequential" property, off by default, to use madvise and hint
524 to the kernel that sequential access is desired.
525 Touch all retrieved pages by default to ensure they are pulled
526 into memory. (Closes #345720)
528 2006-07-03 Wim Taymans <wim@fluendo.com>
530 * docs/design/part-block.txt:
531 * docs/design/part-dynamic.txt:
534 2006-07-03 Wim Taymans <wim@fluendo.com>
536 * gst/gstcaps.c: (gst_caps_new_empty), (_gst_caps_free),
537 (gst_caps_unref), (gst_static_caps_get),
538 (gst_caps_append_structure):
539 * gst/gstclock.c: (gst_clock_entry_new), (_gst_clock_id_free):
540 Use GSlice when the glib we build against is >= 2.10
542 2006-07-03 Wim Taymans <wim@fluendo.com>
544 * gst/gstelement.c: (gst_element_pads_activate):
545 Small cleanup in pad activation code.
547 2006-07-03 Wim Taymans <wim@fluendo.com>
549 Patch by: Peter Kjellerstedt <pkj at axis dot com>
551 * gst/gst-i18n-app.h:
552 * gst/gst-i18n-lib.h:
553 * tools/gst-inspect.c: (print_signal_info):
554 The attached patch will make the inclusion of gettext.h unconditional in
555 gst/gst-i18n-app.h and gst/gst-i18n-lib.h, and it will remove the inclusion of
556 libintl.h in tools/gst-inspect.c.
557 This allows use of --disable-nls again and fixes #344642.
559 2006-07-03 Edward Hervey <edward@fluendo.com>
561 * gst/gstpad.c: (handle_pad_block), (gst_pad_push_event):
562 Implement pad blocking on events according to part-block.txt.
563 More comments on behaviour.
564 * tests/check/gst/gstevent.c: (test_event):
565 Send event to peer pad of blocked pad (else it will block).
567 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
569 * libs/gst/check/gstcheck.c: (gst_check_message_error),
570 (gst_check_run_suite):
571 if we get the wrong message, give us the types as string
572 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
574 * tests/check/elements/filesrc.c: (GST_START_TEST):
575 add a test for trying to open a non-existing file
577 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
579 * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
580 add a test for adding self
582 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
584 * libs/gst/check/gstcheck.h:
585 add some assert_ as alias for fail_unless_*
586 * tests/check/gst/gst.c: (GST_START_TEST), (gst_suite):
587 increase test coverage
589 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
592 include lcov.mak for lcov coverage generation
596 2006-07-02 Edward Hervey <edward@fluendo.com>
598 * tests/check/elements/.cvsignore:
601 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
604 don't set CFLAGS and friends for gcov, done from GST_GCOV now
605 * tests/check/Makefile.am:
608 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
610 * gst/gstcaps.c: (gst_caps_remove_and_get_structure):
611 remove gst_caps_simplify; it was not declared and not used
612 and deprecated in 0.8
614 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
616 * docs/faq/gst-uninstalled:
617 don't put empty paths on PYTHONPATH
618 * docs/gst/gstreamer-sections.txt:
619 remove some symbols that are not there
621 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
623 * gst/gstcaps.c: (gst_caps_compare_structures):
625 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
626 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
629 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
631 * libs/gst/dataprotocol/Makefile.am:
632 build dataprotocol test by linking to the lib, instead of
633 compiling the source, so we get coverage
634 * tests/check/Makefile.am:
635 * tests/check/elements/filesrc.c: (event_func), (setup_filesrc),
636 (cleanup_filesrc), (GST_START_TEST), (filesrc_suite):
637 add a test for filesrc
639 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
641 * tests/check/gst/gststructure.c: (GST_START_TEST),
642 (gst_structure_suite):
643 Push coverage from 59.04% to 70.00%
645 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
647 * tests/check/Makefile.am:
648 gst-inspect every element; this makes sure that we also get
649 coverage on element's get/set functions
651 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
654 set CFLAGS and friends to -O0 if gcov is being used
657 * libs/gst/base/Makefile.am:
658 * libs/gst/check/Makefile.am:
659 * libs/gst/controller/Makefile.am:
660 * libs/gst/dataprotocol/Makefile.am:
661 * libs/gst/net/Makefile.am:
662 * plugins/elements/Makefile.am:
663 * plugins/indexers/Makefile.am:
664 add makefile rules to generate gcov data and clean up
665 * tests/check/Makefile.am:
666 add a coverage target that generates an html overview
669 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
671 * tests/check/elements/fakesink.c:
672 * tests/check/elements/fakesrc.c:
673 * tests/check/elements/fdsrc.c:
674 * tests/check/elements/identity.c:
675 * tests/check/generic/sinks.c: (gst_sinks_suite):
676 * tests/check/generic/states.c:
677 * tests/check/gst/gst.c:
678 * tests/check/gst/gstabi.c:
679 * tests/check/gst/gstbin.c:
680 * tests/check/gst/gstbuffer.c: (gst_buffer_suite):
681 * tests/check/gst/gstbus.c: (gst_bus_suite):
682 * tests/check/gst/gstcaps.c: (GST_START_TEST):
683 * tests/check/gst/gstelement.c:
684 * tests/check/gst/gstevent.c: (gst_event_suite):
685 * tests/check/gst/gstghostpad.c:
686 * tests/check/gst/gstiterator.c: (gst_iterator_suite):
687 * tests/check/gst/gstmessage.c: (gst_message_suite):
688 * tests/check/gst/gstminiobject.c:
689 * tests/check/gst/gstobject.c:
690 * tests/check/gst/gstpad.c:
691 * tests/check/gst/gstpipeline.c:
692 * tests/check/gst/gstplugin.c:
693 * tests/check/gst/gstquery.c: (gst_query_suite):
694 * tests/check/gst/gstsegment.c: (gst_segment_suite):
695 * tests/check/gst/gststructure.c:
696 * tests/check/gst/gstsystemclock.c:
697 * tests/check/gst/gsttag.c:
698 * tests/check/gst/gsttask.c: (gst_task_suite):
699 * tests/check/gst/gstutils.c:
700 * tests/check/gst/gstvalue.c:
701 * tests/check/libs/adapter.c:
702 * tests/check/libs/basesrc.c:
703 * tests/check/libs/collectpads.c:
704 * tests/check/libs/controller.c:
705 * tests/check/libs/gdp.c: (gst_dp_suite):
706 * tests/check/libs/gstnetclientclock.c:
707 * tests/check/libs/gstnettimeprovider.c:
708 * tests/check/libs/libsabi.c: (libsabi_suite):
709 * tests/check/libs/typefindhelper.c:
710 * tests/check/pipelines/cleanup.c:
711 * tests/check/pipelines/parse-launch.c:
712 * tests/check/pipelines/simple-launch-lines.c:
713 * tests/check/pipelines/stress.c: (stress_suite):
716 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
718 * libs/gst/check/gstcheck.c: (gst_check_run_suite):
719 * libs/gst/check/gstcheck.h:
720 create a macro and function so that the simple unit test
721 case can be just one macro to create main()
723 2006-06-30 Tim-Philipp Müller <tim at centricular dot net>
725 * gst/gstbin.c: (gst_bin_restore_thyself):
726 * gst/gstxml.c: (gst_xml_make_element):
727 Fix deserialisation from XML. Set parent manually
728 instead of using gst_bin_add(), since gst_bin_add()
729 will unlink all pads of the element being added.
732 2006-06-28 Tim-Philipp Müller <tim at centricular dot net>
734 Patch by: Peter Kjellerstedt <pkj at axis com>
736 * gst/gst.c: (prepare_for_load_plugin_func), (split_and_iterate):
737 Fix missing g_strdup() and double free when using the
738 --gst-plugin-load command line option (#346097).
740 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
743 Promote GST_DEBUG_CATEGORY_STATIC in example in docs.
745 * libs/gst/net/gstnetclientclock.c:
746 * libs/gst/net/gstnettimeprovider.c:
747 Use GST_DEBUG_CATEGORY_STATIC here too (#342503).
749 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
751 * docs/manual/advanced-dataaccess.xml:
752 Fix buffer probe example compilation in
755 2006-06-22 Edward Hervey <edward@fluendo.com>
757 * gst/gstelement.c: (gst_element_pads_activate):
758 We need to deactivate src pads first and then sink pads.
759 The reason is the src pads might be blocking while holding the streaming
760 lock, so we need to deactivate them first so that deactivating the sink
761 pads doesn't block (since it will require the streaming lock).
763 2006-06-22 Wim Taymans <wim@fluendo.com>
765 * libs/gst/base/gstbasetransform.c:
766 (gst_base_transform_buffer_alloc):
767 Forgot to remove two unneeded unrefs.
768 Simplify a check _is_equal allready checks the obvious case.
770 2006-06-22 Wim Taymans <wim@fluendo.com>
772 * docs/design/part-block.txt:
773 Some docs about what pad_block should do.
775 2006-06-22 Wim Taymans <wim@fluendo.com>
777 * gst/gstcaps.c: (gst_caps_replace):
778 Fix crasher when passed NULL. Doc clarification.
779 Optimize for the trivial case.
781 * gst/gstpipeline.c: (gst_pipeline_change_state):
784 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
785 Small documentation cleanup.
787 * libs/gst/base/gstbasetransform.c:
788 (gst_base_transform_buffer_alloc):
789 Don't use silly gst_pad_get_negotiated_caps, GST_PAD_CAPS
790 is what we need and it avoids a whole lot of redundant
793 2006-06-22 Tim-Philipp Müller <tim at centricular dot net>
795 Patch by: Philip Jägenstedt <philip at lysator liu se>
797 * docs/manual/advanced-dataaccess.xml:
798 Fix 'Embedding static elements' section to use
799 GST_PLUGIN_DEFINE_STATIC (#345607).
801 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
803 * tests/check/pipelines/simple-launch-lines.c: (test_stop_from_app):
804 Attempt to 'fix' spuriously failing test case: it seems like the
805 timeout of half a second is simply too small when the system is under
806 load otherwise, and the timeout doesn't really seem to serve any
807 particular purpose here. Give the pipeline a few seconds to preroll
808 first, and then give it another half a second to go from PAUSED to
809 PLAYING and marshal the message into the main thread.
811 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
813 * tools/gst-feedback-m.m:
814 Don't only use unversioned tools, try versioned tools as well
817 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
819 * gst/gstbus.c: (gst_bus_class_init):
820 Fix some typos, make docs more explicit.
822 2006-06-20 Wim Taymans <wim@fluendo.com>
824 * tests/check/gst/gstghostpad.c: (block_callback),
825 (GST_START_TEST), (gst_ghost_pad_suite):
826 Added some more ghostpad tests, mainly blocking
829 2006-06-16 Wim Taymans <wim@fluendo.com>
831 * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
832 (gst_file_sink_close_file), (gst_file_sink_do_seek),
833 (gst_file_sink_event), (gst_file_sink_render):
834 * plugins/elements/gstfilesink.h:
835 Check if we can seek in the file instead of assuming
836 we always can. Post an error when we are asked to seek in a
837 non-seekable file (like a fifo). Fixes #343312.
840 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
842 * tools/gst-launch.1.in:
843 Un-garble (fourcc) bit in filtered caps section.
845 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
847 * docs/manual/advanced-autoplugging.xml:
848 * docs/manual/basics-helloworld.xml:
849 * docs/manual/highlevel-components.xml:
850 Don't leak bus reference in sample code.
852 2006-06-15 Tim-Philipp Müller <tim at centricular dot net>
855 Add default for new --enable-plugin-docs switch.
858 Use new GST_PLUGIN_DOCS macro to check for pyxml etc.
862 Use new ENABLE_PLUGIN_DOCS conditional.
864 2006-06-14 Wim Taymans <wim@fluendo.com>
866 * gst/gstbin.c: (bin_query_duration_done), (gst_bin_query):
867 Make it clear with a FIXME and a real define what the #if 0
870 2006-06-14 Wim Taymans <wim@fluendo.com>
872 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
873 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
874 * libs/gst/base/gstbasetransform.c:
875 (gst_base_transform_sink_eventfunc):
876 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
877 Don't randomly and silently reset a segment when the format
878 changes as this is a bug somewhere upstream. Fixes #330379.
880 2006-06-14 Tim-Philipp Müller <tim at centricular dot net>
882 Patch by: Wouter Paesen <wouter at kangaroot net>
884 * libs/gst/controller/gstcontroller.c:
885 (gst_controlled_property_new):
886 Fix controlling of float properties (#344849).
888 * tests/check/libs/controller.c:
889 (gst_test_mono_source_get_property),
890 (gst_test_mono_source_set_property),
891 (gst_test_mono_source_class_init), (GST_START_TEST):
892 While we're at it, add some float stuff to unit test.
894 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
897 * docs/images/gdp-header.svg:
899 * docs/libs/Makefile.am:
900 * docs/libs/gdp-header.png:
901 * libs/gst/dataprotocol/dataprotocol.c:
902 add it to the API docs
903 * docs/manual/intro-motivation.xml:
906 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
908 * gst/gst.c: (scan_and_update_registry), (init_post):
909 If the fork()'ed child process can't write the updated registry cache
910 file to disk for some reason, make it exit with a failure exit code,
911 so that the parent can then re-scan the plugins itself and update the
912 registry structures in memory and work with that (rather than failing
913 when creating elements because seemingly no plugins are available).
914 Refactor registry scanning code into separate function for this and
915 also separate fork() and non-fork() code paths. Fixes #344748.
917 2006-06-13 Wim Taymans <wim@fluendo.com>
919 * docs/manual/advanced-dataaccess.xml:
920 Fix wrong PluginDesc. Fixes #344755.
922 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
924 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
925 Fix silly bug that prevented us from creating
926 ~/.gstreamer-0.10 and writing the registry in one
927 go (the first call to g_mkstemp() would overwrite the
928 placeholder in the template string, so the second call
929 to g_mkstemp() after creating the missing directory
930 would then error out with 'invalid argument').
932 2006-06-13 Edward Hervey <edward@fluendo.com>
934 * gst/gst.c: (init_post):
937 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
939 * gst/glib-compat-private.h:
942 * gst/gstvalue.c: (gst_value_serialize_flags):
943 remove GLib 2.6 compatibility code
945 2006-06-12 Tim-Philipp Müller <tim at centricular dot net>
947 * gst/parse/Makefile.am:
948 Fix build with 'make -j N' even more (#340016).
950 2006-06-12 Wim Taymans <wim@fluendo.com>
952 * docs/gst/gstreamer-sections.txt:
955 2006-06-12 Wim Taymans <wim@fluendo.com>
957 * gst/gstsegment.c: (gst_segment_set_duration),
958 (gst_segment_set_last_stop), (gst_segment_set_seek),
959 (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
960 (gst_segment_to_running_time), (gst_segment_clip):
961 Use G_UNLIKELY to help the compiler a bit.
963 2006-06-12 Wim Taymans <wim@fluendo.com>
965 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
967 * gst/gstevent.c: (gst_event_get_type):
969 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
971 constify quark registration strings. Fixes #344115
972 Avoid unneeded type checking is _pad_push() by internally
973 calling gst_pad_chain_unchecked().
975 2006-06-12 Wim Taymans <wim@fluendo.com>
977 * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_finalize),
978 (_gst_buffer_copy), (gst_buffer_is_metadata_writable),
979 (gst_subbuffer_finalize), (gst_buffer_create_sub),
980 (gst_buffer_is_span_fast), (gst_buffer_span):
981 Init _type for consistency.
982 Use _FLAGS macro to avoid type check.
983 Avoid unneeded type checks in subbufer code.
985 2006-06-12 Wim Taymans <wim@fluendo.com>
987 * gst/gst.c: (gst_debug_help):
988 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_list_free):
989 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
990 (gst_plugin_feature_list_free):
991 * gst/gstregistry.c: (gst_registry_add_plugin),
992 (gst_registry_add_feature), (gst_registry_plugin_filter),
993 (gst_registry_feature_filter), (gst_registry_find_plugin),
994 (gst_registry_find_feature), (gst_registry_get_plugin_list),
995 (gst_registry_lookup_feature_locked), (gst_registry_lookup_locked):
996 * gst/gstregistryxml.c: (load_feature),
997 (gst_registry_xml_read_cache), (gst_registry_xml_write_cache):
998 * gst/gstminiobject.c: (gst_mini_object_unref),
999 (gst_mini_object_replace), (gst_value_mini_object_free),
1000 (gst_value_mini_object_copy):
1001 Use _CAST macros to avoid unneeded type checking.
1002 Added some more G_UNLIKELY.
1004 2006-06-12 Wim Taymans <wim@fluendo.com>
1007 Avoid unneeded type checking.
1008 API: GST_BUFFER_IS_DISCONT
1010 * gst/gstminiobject.h:
1011 Avoid type check in flag accessor.
1013 * gst/gstelementfactory.h:
1015 * gst/gstpluginfeature.h:
1017 API: GST_ELEMENT_FACTORY_CAST
1018 API: GST_PLUGIN_CAST
1019 API: GST_PLUGIN_FEATURE_CAST
1021 2006-06-12 Wim Taymans <wim@fluendo.com>
1023 * gst/gstobject.c: (gst_object_get_type), (gst_object_ref),
1025 Add G_UNLIKELY in type registration.
1026 Avoid type check in _ref/_unref since that is also
1029 2006-06-12 Wim Taymans <wim@fluendo.com>
1031 * gst/gsterror.c: (gst_g_error_get_type):
1032 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
1033 (gst_static_pad_template_get_type):
1034 * gst/gsttaglist.c: (gst_tag_list_get_type):
1035 * gst/gsttagsetter.c: (gst_tag_setter_get_type):
1036 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type):
1037 * gst/gsturi.c: (gst_uri_handler_get_type):
1038 * gst/gstvalue.c: (gst_date_get_type):
1039 * gst/gstxml.c: (gst_xml_get_type):
1040 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_type),
1041 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
1042 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_type):
1043 Add G_UNLIKELY in type registration.
1045 2006-06-12 Wim Taymans <wim@fluendo.com>
1047 * tools/gst-inspect.c: (print_signal_info):
1048 Properly print enum values.
1050 2006-06-12 Wim Taymans <wim@fluendo.com>
1052 * gst/gstinfo.c: (gst_debug_set_active),
1053 (gst_debug_category_set_threshold), (_gst_debug_nameof_funcptr):
1055 Add some G_[UN]LIKELY.
1056 Maintain __gst_debug_min to avoid formatting the arguments of
1057 debug messages that will be dropped anyway to avoid a lot of
1058 overhead from the debugging system.
1060 2006-06-11 Stefan Kost <ensonic@users.sf.net>
1064 add missing files containing translatable strings, tell intltool about
1067 2006-06-11 Stefan Kost <ensonic@users.sf.net>
1069 * tests/check/libs/.cvsignore:
1070 add test-binary to ignore list
1072 2006-06-11 Stefan Kost <ensonic@users.sf.net>
1074 * docs/libs/gstreamer-libs-docs.sgml:
1075 reorder (put dp into a chapter) and indent
1077 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
1082 === release 0.10.8 ===
1084 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
1087 releasing 0.10.8, "Soepeke, ik zie ou nog altijd nie"
1089 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
1091 * gst/gst.c: (init_post):
1092 move pid declaration to declaration block
1094 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
1096 * gst/gst.c: (init_post):
1097 use _exit() instead of exit() in our forked child; this ensures
1098 that none of the registered exit handlers from whatever is using
1099 GStreamer get executed. This fixes gnome-mixer-applet failing
1100 to load, because ORBit would shut down.
1101 Spotted by: Edward Hervey <edward@fluendo.com>
1102 Fix suggested by: Tim-Philipp Müller <tim at centricular dot net>
1105 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
1110 === release 0.10.7 ===
1112 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
1115 releasing 0.10.7, "Soepeke, ik zie ou"
1117 2006-06-07 Thomas Vander Stichele <thomas at apestaart dot org>
1140 * win32/common/config.h:
1143 2006-06-07 Wim Taymans <wim@fluendo.com>
1145 * gst/gstindex.c: (gst_index_gtype_resolver):
1146 * tools/gst-xmlinspect.c: (print_plugin_info):
1147 Fix leak spotted by coverity checker. Fixes #343827
1148 Fix another other leak found by paolo borelli.
1150 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
1152 * libs/gst/dataprotocol/dataprotocol.c:
1153 (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
1154 (gst_dp_version_get_type), (gst_dp_init),
1155 (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
1156 (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
1157 (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
1158 (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
1159 (gst_dp_event_from_packet), (gst_dp_packetizer_new),
1160 (gst_dp_packetizer_free):
1161 * libs/gst/dataprotocol/dataprotocol.h:
1162 API: add a GstDPPacketizer object, and create/free functions
1163 API: add GstDPVersion enum
1164 Add 1.0 event function that uses the string serialization
1165 Serialize more useful buffer flags
1168 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
1170 * tests/check/Makefile.am:
1171 * tests/check/gst/gstabi.c:
1172 * tests/check/gst/struct_ppc64.h:
1173 * tests/check/libs/libsabi.c:
1174 * tests/check/libs/struct_ppc64.h:
1175 add ppc64 structure sizes
1177 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
1179 * tests/check/Makefile.am:
1180 * tests/check/gst/gstabi.c:
1181 * tests/check/gst/struct_x86_64.h:
1182 * tests/check/libs/libsabi.c:
1183 * tests/check/libs/struct_x86_64.h:
1184 generate and add structure size lists for x86_64
1186 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
1188 * libs/gst/check/gstcheck.c: (gst_check_abi_list):
1189 * libs/gst/check/gstcheck.h:
1190 factor out the method from tests that checks size of structures,
1191 and add code to generate the header containing these sizes
1192 * tests/check/gst/gstabi.c: (GST_START_TEST):
1193 * tests/check/gst/struct_i386.h:
1194 * tests/check/libs/libsabi.c: (GST_START_TEST):
1195 * tests/check/libs/struct_i386.h:
1198 2006-06-06 Michael Smith <msmith@fluendo.com>
1201 Don't use c++-style comments, fixes #343929
1203 2006-06-05 Edward Hervey <edward@fluendo.com>
1206 plugin_paths is not used if we build without registry support.
1208 * gst/gstsegment.c: (gst_segment_copy):
1209 _copy() was always returning NULL...
1211 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
1213 * libs/gst/dataprotocol/dataprotocol.c:
1214 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
1215 (gst_dp_packet_from_event):
1218 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
1220 * libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
1221 make sure we unset caps
1223 2006-06-02 Michael Smith <msmith@fluendo.com>
1225 * libs/gst/check/gstcheck.c: (gst_check_init),
1226 (gst_check_chain_func):
1227 * libs/gst/check/gstcheck.h:
1228 Add a cond/mutex to the check support lib, signal this whenever we
1229 add to the buffers list. This will allow tests to not busy-wait on
1232 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
1234 * libs/gst/dataprotocol/dataprotocol.c:
1235 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
1236 (gst_dp_packet_from_event):
1237 factor out some common header init code
1239 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
1241 * docs/libs/gstreamer-libs-sections.txt:
1242 * docs/libs/tmpl/gstdataprotocol.sgml:
1243 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
1244 * libs/gst/dataprotocol/dataprotocol.h:
1245 API: make gst_dp_crc() public
1247 2006-06-01 Stefan Kost <ensonic@users.sf.net>
1249 * plugins/indexers/gstindexers.c: (plugin_init):
1250 conditionally register fileindexer (fixes #343598)
1252 2006-06-01 Stefan Kost <ensonic@users.sf.net>
1254 * gst/gsttagsetter.h:
1255 Can't cast ifaces to a class
1257 * libs/gst/net/gstnetclientclock.h:
1258 * libs/gst/net/gstnettimeprovider.h:
1259 * plugins/elements/gstfakesink.h:
1260 * plugins/elements/gstfakesrc.h:
1261 * plugins/elements/gstfdsink.h:
1262 * plugins/elements/gstfdsrc.h:
1263 * plugins/elements/gstfilesink.h:
1264 * plugins/elements/gstfilesrc.h:
1265 * plugins/elements/gstidentity.h:
1266 * plugins/elements/gstqueue.h:
1267 * plugins/elements/gsttee.h:
1268 * plugins/indexers/gstfileindex.c:
1269 * plugins/indexers/gstmemindex.c:
1270 * tests/old/examples/plugins/example.h:
1271 Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
1273 2006-06-01 Thomas Vander Stichele <thomas at apestaart dot org>
1275 * libs/gst/dataprotocol/dataprotocol.c:
1276 (gst_dp_header_from_buffer):
1277 make sure we zero the whole ABI-compatible area
1279 2006-06-01 Wim Taymans <wim@fluendo.com>
1281 Patch by: Alessandro Decina <alessandro at nnva dot org>
1283 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop):
1284 Make sure the EOS flag is cleared from pads after a flush
1285 or stop. Fixes #343538.
1287 * tests/check/libs/collectpads.c: (GST_START_TEST),
1288 (gst_collect_pads_suite):
1289 Added test for collectpads reusage after EOS.
1291 2006-05-30 Sebastien Moutte <sebastien@moutte.net>
1294 set #include <sys/wait.h> in a #ifdef #ifdef HAVE_FORK
1295 * win32/common/libgstbase.def:
1296 export gst_collect_pads_set_flushing
1297 * win32/common/libgstreamer.def:
1298 export gst_pad_set_acceptcaps_function, gst_structure_empty_new,
1299 gst_value_fraction_multiply
1300 * win32/vs6/gst_inspect.dsp:
1301 add a link to intl.lib
1303 2006-05-30 Wim Taymans <wim@fluendo.com>
1305 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
1306 (gst_collect_pads_chain):
1307 Handle the case where a pad is removed from the collection
1308 that could cause the other pads to become collectable.
1310 2006-05-30 Wim Taymans <wim@fluendo.com>
1313 Clarify the use of _release_request_pad() and
1314 _get_request_pad() a bit better.
1316 * libs/gst/base/gstadapter.c: (gst_adapter_peek),
1317 (gst_adapter_take_buffer):
1318 Fix some doc and comment typos.
1320 2006-05-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
1322 * docs/gst/gstreamer-sections.txt:
1323 * docs/libs/gstreamer-libs-sections.txt:
1324 add declared symbols
1326 2006-05-30 Jan Schmidt <thaytan@mad.scientist.com>
1328 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1329 Add debug that can be enabled using a #define at the top of the file,
1330 for dumping stats about how late/early we were when waking up from
1331 waiting on the clock.
1333 2006-05-30 Wim Taymans <wim@fluendo.com>
1335 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_check_pads):
1336 When rebuilding the pad list, don't leak the previous list.
1338 2006-05-30 Wim Taymans <wim@fluendo.com>
1340 Patch by: Lutz Mueller <lutz at topfrose dot de>
1342 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
1343 (gst_base_src_get_query_types), (gst_base_src_update_length):
1344 Publish supported query types.
1345 Update last_stop field in get_range mode so the position
1346 query works. Fixes #342321.
1348 2006-05-30 Tim-Philipp Müller <tim at centricular dot net>
1350 * docs/gst/gstreamer-sections.txt:
1351 * gst/gsttaglist.c: (_gst_tag_initialize):
1353 API: add GST_TAG_PREVIEW_IMAGE (#343341).
1355 2006-05-30 Wim Taymans <wim@fluendo.com>
1357 Patch by: Alessandro Decina <alessandro at nnva dot org>
1359 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
1360 Unlock mutex when removing an unknown pad.
1363 * tests/check/Makefile.am:
1364 * tests/check/libs/collectpads.c: (collected_cb), (push_buffer),
1365 (push_event), (setup), (teardown), (GST_START_TEST),
1366 (gst_collect_pads_suite), (main):
1367 Added collecpads check, disabled for now as check crashes for
1370 2006-05-29 Wim Taymans <wim@fluendo.com>
1372 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize):
1373 Don't leak pads lists.
1375 2006-05-29 Wim Taymans <wim@fluendo.com>
1377 * docs/libs/gstreamer-libs-sections.txt:
1378 * libs/gst/base/gstcollectpads.c:
1379 (gst_collect_pads_set_flushing_unlocked),
1380 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
1381 (gst_collect_pads_stop):
1382 * libs/gst/base/gstcollectpads.h:
1383 API: gst_collect_pads_set_flushing()
1384 Added api to set the pads to flushing, useful for seeking
1385 code in elements using collectpads.
1386 Clear segment when receiving a flush.
1388 2006-05-29 Tim-Philipp Müller <tim at centricular dot net>
1390 * gst/gst.c: (add_path_func), (init_post):
1391 Don't scan registry paths passed via --gst-plugin-path immediately
1392 (will crash, because absolutely nothing is set up and no types are
1393 registered etc.); do this later in init_post(). Fixes #343057.
1395 2006-05-28 Thomas Vander Stichele <thomas at apestaart dot org>
1397 * gst/gst.c: (init_post):
1398 if we have fork, fork while reading/rebuilding the registry
1399 so the parent doesn't take the hit of having all plugins loaded
1400 in memory. Fixes #342777.
1402 Check if we have fork()
1403 * win32/common/config.h.in:
1406 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
1408 * plugins/elements/gstelements.c:
1409 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
1410 (gst_file_src_init), (gst_file_src_set_property),
1411 (gst_file_src_get_property), (gst_file_src_start):
1412 * plugins/elements/gstfilesrc.h:
1413 API: GstFileSrc::use-mmap
1415 Add a use-mmap property to enable easier testing of all code paths.
1416 Bump rank to PRIMARY, so filesrc is the preferred file reader and used
1417 in the absence of gnomevfssrc. (Closes #340501)
1419 2006-05-26 Zaheer Abbas Merali <zaheerabbas at merali dot org>
1421 * tools/gst-inspect.c:
1422 Add missing include, removes warning of ngettext not being defined on
1425 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
1427 * gst/gstvalue.c: (gst_value_deserialize_fraction):
1428 Handle NULL input and output pointers silently as a failed conversion,
1429 rather than g_warnings.
1431 2006-05-25 Wim Taymans <wim@fluendo.com>
1433 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_start):
1434 Initialize variable before using. Fixes #342820.
1436 2006-05-24 Tim-Philipp Müller <tim at centricular dot net>
1438 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek):
1439 Fix off-by-one bug that would only allow peeks of N-1 bytes
1440 from the start even if the buffer to typefind on contains
1441 in fact N bytes of data (makes vorbis typefinding from a
1442 vorbis identification header buffer work).
1444 * tests/check/Makefile.am:
1445 * tests/check/libs/.cvsignore:
1446 * tests/check/libs/typefindhelper.c: (GST_START_TEST),
1447 (gst_typefindhelper_suite), (main), (foobar_typefind),
1449 Add very basic unit test for gst_type_find_helper_for_buffer()
1450 that checks for the problem fixed above.
1452 2006-05-24 Thomas Vander Stichele <thomas at apestaart dot org>
1454 * tools/gst-inspect.c: (print_interfaces),
1455 (print_element_properties_info), (print_element_list), (main):
1456 add more translatable strings
1458 2006-05-23 Tim-Philipp Müller <tim at centricular dot net>
1460 Patch by: Julien Moutte <julien at moutte net>
1462 * docs/gst/gstreamer-sections.txt:
1463 Make new GST_FLOW_IS_SUCCESS macro visible in docs.
1465 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
1466 (gst_fake_sink_preroll):
1467 * plugins/elements/gstfakesink.h:
1468 API: Add new GstFakeSink::preroll-handoff signal (#337100).
1470 2006-05-23 Wim Taymans <wim@fluendo.com>
1472 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark):
1474 Added _CUSTOM error and success GstFlowReturn that can be
1475 used be elements internally.
1476 Added macro to check for SUCCESS flowreturns.
1477 API: GST_FLOW_CUSTOM_SUCCESS
1478 API: GST_FLOW_CUSTOM_ERROR
1479 API: GST_FLOW_IS_SUCCESS
1481 * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
1482 Added check for GstFlowReturn sanity.
1484 2006-05-23 Wim Taymans <wim@fluendo.com>
1486 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
1488 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
1489 (gst_collect_pads_event):
1490 clear/reset segment info in FLUSH_STOP.
1493 2006-05-22 Stefan Kost <ensonic@users.sf.net>
1495 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
1496 (gst_collect_pads_check_collected):
1497 Flush queued buffer on _stop(), fixes playing again (#342454)
1499 2006-05-22 Thomas Vander Stichele <thomas at apestaart dot org>
1501 * tests/check/gst/gststructure.c: (GST_START_TEST),
1502 (gst_structure_suite):
1503 add a test for a complete structure
1505 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
1507 * docs/faq/developing.xml:
1509 * docs/faq/troubleshooting.xml:
1510 * docs/faq/using.xml:
1511 Some minor FAQ updates that won't change the fact that
1512 our FAQ is badly structured, full of information hardly
1513 anyone new to GStreamer needs to know and lacking lots
1514 of information people constantly ask for.
1516 2006-05-19 Jan Schmidt <thaytan@mad.scientist.com>
1518 * gst/gstpad.c: (gst_pad_set_caps):
1519 Short-circuit gst_pad_set_caps if setting the existing
1520 caps pointer again, and avoid printing debug and
1521 reffing/unreffing the caps.
1523 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1524 There's actually no need to set the caps before pushing -
1525 the acceptcaps method will handle it anyway.
1527 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
1529 * docs/gst/gstreamer-sections.txt:
1530 * win32/common/libgstreamer.def:
1531 * gst/gstutils.c: (gst_element_seek_simple):
1533 API: add gst_element_seek_simple() (#342238).
1535 2006-05-18 Edward Hervey <edward@fluendo.com>
1537 * gst/gsttypefind.c: (gst_type_find_get_type):
1538 * gst/gsttypefind.h:
1539 Added GST_TYPE_TYPE_FIND and gst_type_find_get_type() so a GType gets
1540 registered for GstTypeFind pointers. This allows wrapping the structure
1541 in bindings (i.e. gst-python).
1543 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
1545 * gst/gsttagsetter.c:
1546 Docs additions and fixes (see #339918).
1548 2006-05-18 Jan Schmidt <thaytan@mad.scientist.com>
1550 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
1551 The caps intersection algorithm can produce multiple copies of the
1552 caps. Until that is fixed, we need to simplify the result to be
1553 sure whether the allowed caps are fixed or not.
1555 * plugins/elements/gstqueue.c: (gst_queue_init),
1556 (gst_queue_bufferalloc), (gst_queue_acceptcaps),
1557 (gst_queue_push_one):
1558 Proxied buffer alloc should not set the caps on the source pad.
1559 When pushing buffers, we always accept the caps change that triggers.
1560 This prevents negotiation errors caused by caps changing mid-stream
1561 and then being refused on our source pad (because upstream is now
1562 refusing those caps).
1564 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
1566 * tests/examples/helloworld/helloworld.c: (main):
1567 Must plug audioconvert and audioresample between decoder
1570 2006-05-17 Jan Schmidt <thaytan@mad.scientist.com>
1572 * gst/gstregistryxml.c: (read_string), (load_pad_template),
1573 (load_feature), (load_plugin):
1574 Allow empty strings for some of the plugin fields so we don't
1575 drop valid plugin entries that were written out correctly
1578 2006-05-17 Sebastien Moutte <sebastien@moutte.net>
1580 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
1581 Use g_remove and g_rename instead of remove and rename that don't
1582 handle utf8 characters. rename was failing for users who had specific
1583 characters in their name then the registry was built at each
1585 * win32/vs6/gst_inspect.dsp:
1586 * win32/vs6/gst_launch.dsp:
1587 * win32/vs6/libgstbase.dsp:
1588 * win32/vs6/libgstcoreelements.dsp:
1589 * win32/vs6/libgstreamer.dsp:
1590 Use a debug version of libxml2 (libxml2D.lib,libxml2D.dll) for DEBUG
1591 build of libgstreamer and clean unused libraries in projects link
1594 2006-05-17 Edward Hervey <edward@fluendo.com>
1596 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1597 The queue is not responsible for pushing an EOS when receiving a fatal
1598 flow error. It's up to the real element driving the pipeline to do that.
1600 2006-05-16 Edward Hervey <edward@fluendo.com>
1602 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1603 The queue was posting a non-needed GST_MESSAGE_ERROR when pushing a
1604 buffer returned a fatal error. It should just send an EOS and stop
1606 Upstream elements will then properly receive the GST_FLOW_UNEXPECTED
1607 when pushing buffers on the queue and will be able to handle the event.
1609 2006-05-16 Tim-Philipp Müller <tim at centricular dot net>
1611 * docs/manual/basics-bins.xml:
1612 * docs/manual/basics-init.xml:
1613 Fix typos and minor errors in sample code (#341856).
1615 2006-05-16 Wim Taymans <wim@fluendo.com>
1617 * docs/design/part-qos.txt:
1618 Fix indexes in formulas to make more sense.
1620 2006-05-15 Wim Taymans <wim@fluendo.com>
1622 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
1623 Don't report POSITION based on clock time if sync is
1626 2006-05-15 Tim-Philipp Müller <tim at centricular dot net>
1629 Add cast to make compiler happy - refcount variable was a gint
1630 in GstObject but is a guint in GObject and g_atomic_int_get()
1633 2006-05-15 Thomas Vander Stichele <thomas at apestaart dot org>
1635 * gst/parse/Makefile.am:
1636 chain commands using &&, which also makes parallel make work
1638 2006-05-14 Tim-Philipp Müller <tim at centricular dot net>
1640 * docs/gst/gstreamer-sections.txt:
1646 === release 0.10.6 ===
1648 2006-05-14 Jan Schmidt <thaytan@mad.scientist.com>
1651 releasing 0.10.6, "Take the cannoli"
1653 2006-05-13 Tim-Philipp Müller <tim at centricular dot net>
1655 * tools/gst-launch.c: (print_tag):
1656 Fix use of uninitialized variable in the hypothetical
1657 case that some broken plugin creates a GST_TAG_IMAGE
1658 tag containing a NULL buffer (#341667).
1660 2006-05-12 Tim-Philipp Müller <tim at centricular dot net>
1662 * tools/gst-launch.c: (print_tag):
1663 Print something more intelligible for image tags when
1664 using the -t switch (#341556).
1666 2006-05-12 Thomas Vander Stichele <thomas at apestaart dot org>
1671 define GST_MAJORMINOR so we have it available in win32/common/config.h
1672 Possibly remove it from our Makefile.am files later
1673 * win32/common/config.h:
1674 * win32/common/config.h.in:
1675 added GST_MAJORMINOR
1676 * win32/common/gstenumtypes.c: (register_gst_resource_error):
1677 * win32/common/gstversion.h:
1680 2006-05-12 Sebastien Moutte <sebastien@moutte.net>
1683 Update win32 files listing.
1684 * win32/common/gstversion.h:
1685 Add GST_MAJORMINOR definition.
1686 * win32/common/libgstreamer.def:
1687 Add new exported functions.
1689 2006-05-12 Michael Smith <msmith@fluendo.com>
1691 * gst/gstplugin.c: (gst_plugin_load_file):
1692 If an so file has no plugin entry point, unload the module.
1694 2006-05-11 Wim Taymans <wim@fluendo.com>
1696 * plugins/elements/gstqueue.c: (gst_queue_chain), (gst_queue_loop),
1697 (gst_queue_set_property):
1698 Don't forget to signal the _chain or _loop function
1699 when the queue size or thresholds change since that might
1700 cause them to make progres again.
1702 2006-05-11 Stefan Kost <ensonic@users.sf.net>
1704 * gst/gstclock.c: (gst_clock_class_init):
1705 * gst/gstindex.c: (gst_index_class_init):
1706 * gst/gstobject.c: (gst_object_class_init):
1707 * gst/gstpad.c: (gst_pad_class_init):
1708 * gst/gstpipeline.c: (gst_pipeline_class_init):
1709 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
1710 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init):
1711 * libs/gst/base/gstbasetransform.c:
1712 (gst_base_transform_class_init):
1713 * libs/gst/net/gstnetclientclock.c:
1714 (gst_net_client_clock_class_init):
1715 * libs/gst/net/gstnettimeprovider.c:
1716 (gst_net_time_provider_class_init):
1717 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init):
1718 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
1719 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
1720 * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init):
1721 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
1722 * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
1723 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
1724 * plugins/elements/gstidentity.c: (gst_identity_class_init):
1725 * plugins/elements/gsttee.c: (gst_tee_class_init):
1726 * tests/old/examples/plugins/example.c: (gst_example_class_init):
1727 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
1728 G_OBJECT_CLASS macro usage batch cleanup, fixes #337747 for core
1730 2006-05-11 Wim Taymans <wim@fluendo.com>
1732 * gst/gstbuffer.c: (_gst_buffer_initialize):
1733 Register subbufer along with the buffer type so that
1734 it does not accidentally gets registered from N
1735 different streaming threads in a non threadsafe way.
1737 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
1742 Make gtk-doc generate docs for our inlined gst_buffer_ref(),
1743 gst_event_ref() and gst_message_ref() functions again
1744 (ugly hack, please do fix if there's a better way besides
1745 overrides.txt, which doesn't seem to work).
1747 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1749 * libs/gst/check/gstcheck.h:
1750 add an assert for setting state to avoid lots of repetitive code
1753 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1755 * gst/gstvalue.c: (gst_value_serialize_flags):
1756 fix a leak if no flags are set
1757 * tests/check/gst/gstvalue.c: (GST_START_TEST):
1760 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
1762 * docs/manual/basics-pads.xml:
1763 Expand a bit on caps and filtered links and update
1764 examples that were still using the no longer existing
1765 gst_pad_link_filtered() (#338206).
1767 2006-05-10 Wim Taymans <wim@fluendo.com>
1769 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
1770 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
1771 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
1772 (gst_collect_pads_stop):
1773 * libs/gst/base/gstcollectpads.h:
1774 No need to call _stop in _finalize.
1775 Iterate the main pad list in _finalize.
1776 Added some more debug.
1777 Free lists and data in the right order.
1778 Also free data whem doing _remove_pad when stopped for
1779 backward compatibility protect ::started with PAD_LOCK as
1782 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1784 * gst/gststructure.c: (gst_structure_gtype_from_abbr),
1785 (gst_structure_parse_value):
1787 rename a method so that it actually says what it does better
1789 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1791 * gst/gstevent.c: (_gst_event_initialize):
1792 * gst/gstformat.c: (_gst_format_initialize):
1793 make sure some essential types used by events are registered
1794 as part of gst_init()
1795 * gst/gstvalue.c: (gst_value_serialize_flags):
1796 if no flags are set, serialize them to a value that represents NONE
1797 so that deserializing them works
1798 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1799 add tests for serialization and deserialization of flags
1801 2006-05-10 Wim Taymans <wim@fluendo.com>
1803 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_collect),
1804 (gst_collect_pads_collect_range), (gst_collect_pads_available),
1805 (gst_collect_pads_check_pads), (gst_collect_pads_check_collected),
1806 (gst_collect_pads_event), (gst_collect_pads_chain):
1809 Catch and return errors from the collect function
1810 Refuse data on eos pads.
1812 2006-05-10 Edward Hervey <edward@fluendo.com>
1814 * gst/gstinterface.h:
1815 GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
1816 GInterface type checking.
1817 They were previously using non-defined macros.
1819 2006-05-09 Wim Taymans <wim@fluendo.com>
1821 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
1822 (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
1823 (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
1824 (gst_collect_pads_start), (gst_collect_pads_stop),
1825 (gst_collect_pads_peek), (gst_collect_pads_pop),
1826 (gst_collect_pads_available), (gst_collect_pads_read),
1827 (gst_collect_pads_flush), (gst_collect_pads_check_pads),
1828 (gst_collect_pads_is_collected), (gst_collect_pads_event),
1829 (gst_collect_pads_chain):
1830 * libs/gst/base/gstcollectpads.h:
1831 Clean up the mess that is collectpads, add comments and
1832 FIXMEs where needed.
1833 Maintain a separate pad list so we can add pads while
1834 collecting the other ones. For this we need a new separate
1836 Fix memory leak in finalize.
1837 Refactor some weird code to set/unset pad flushing flags, mark
1839 Don't crash in _available, _read, _flush when we're EOS.
1841 * tests/check/libs/.cvsignore:
1842 Ignore adapter check binary.
1844 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1846 * gst/gstindex.c: (gst_index_resolver_get_type):
1847 * plugins/elements/gstfakesink.c:
1848 (gst_fake_sink_state_error_get_type):
1849 * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1850 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
1851 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
1852 Const-ify GEnumValue arrays.
1854 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1856 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
1857 Add test case for flags + gst_buffer_make_metadata_writable().
1859 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1861 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
1862 gst_buffer_make_metadata_writable() should maintain the
1863 buffer flags (those that make sense at least) (see #340859).
1865 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1867 * tools/gst-inspect.c:
1868 * tools/gst-launch.c:
1869 * tools/gst-typefind.c:
1870 * tools/gst-xmlinspect.c:
1872 Fix up includes: need to include stdlib.h in tools.h for exit().
1874 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1876 * gst/gsttaglist.c: (_gst_tag_initialize):
1878 API: add GST_TAG_IMAGE tag (#340721).
1880 2006-05-08 Wim Taymans <wim@fluendo.com>
1883 Added some docs for the segment query.
1885 2006-05-08 Wim Taymans <wim@fluendo.com>
1887 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1888 (gst_base_src_loop), (gst_base_src_change_state):
1889 Always push non-flushing serialized events in the streaming
1892 2006-05-08 Thomas Vander Stichele <thomas at apestaart dot org>
1894 * gst/gsterror.c: (_gst_stream_errors_init):
1895 Add a missing error string.
1897 2006-05-08 Jan Schmidt <thaytan@mad.scientist.com>
1899 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
1900 Add applied_rate to the debug
1902 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
1903 Copy applied_rate into the outgoing NEWSEGMENT event
1905 2006-05-08 Wim Taymans <wim@fluendo.com>
1907 Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
1909 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
1910 (gst_base_sink_change_state):
1911 call ::unlock before taking the PREROLL_LOCK so we can safely
1912 handle elements that lock in ::render.
1915 2006-05-08 Edward Hervey <edward@fluendo.com>
1917 * autogen.sh: (CONFIGURE_DEF_OPT):
1918 Darwin's libtoolize is in fact called glibtoolize.
1919 Adding glibtoolize to the list of accepted names for libtoolize.
1921 2006-05-08 Wim Taymans <wim@fluendo.com>
1923 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
1924 Unify error handling, don't post an error message
1925 when a push() returns EOS but perform our normal EOS
1926 handling code. Fixes #340772.
1928 2006-05-08 Wim Taymans <wim@fluendo.com>
1930 * docs/design/part-overview.txt:
1931 Make upsteam/downstream concepts more clear.
1932 Give an example of serialized/non-serialized events.
1934 * docs/design/part-events.txt:
1935 * docs/design/part-streams.txt:
1936 Mention applied_rate.
1938 * docs/design/part-trickmodes.txt:
1939 Mention applied rate, flesh out some more use cases.
1941 * gst/gstevent.c: (gst_event_new_new_segment),
1942 (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
1943 (gst_event_parse_new_segment_full), (gst_event_new_tag),
1944 (gst_event_parse_tag), (gst_event_new_buffer_size),
1945 (gst_event_parse_buffer_size), (gst_event_new_qos),
1946 (gst_event_parse_qos), (gst_event_parse_seek),
1947 (gst_event_new_navigation):
1949 Add applied_rate field to NEWSEGMENT event.
1950 API: gst_event_new_new_segment_full()
1951 API: gst_event_parse_new_segment_full()
1953 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
1954 (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
1955 (gst_segment_to_stream_time), (gst_segment_to_running_time):
1957 Add applied_rate to GstSegment structure.
1958 Make calculation of stream_time and running_time more correct
1959 wrt rate/applied_rate.
1961 API: GstSegment::applied_rate field
1962 API: gst_segment_set_newsegment_full();
1964 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
1965 (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
1966 * libs/gst/base/gstbasetransform.c:
1967 (gst_base_transform_sink_eventfunc),
1968 (gst_base_transform_handle_buffer):
1969 Parse and use applied_rate in the GstSegment field.
1971 * tests/check/gst/gstevent.c: (GST_START_TEST):
1972 Add check for applied_rate field.
1974 * tests/check/gst/gstsegment.c: (GST_START_TEST),
1975 (gstsegments_suite):
1976 Add more checks for various GstSegment operations.
1978 2006-05-08 Wim Taymans <wim@fluendo.com>
1980 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
1981 (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
1982 (gst_base_sink_get_position), (gst_base_sink_change_state):
1983 Store the sync time of the buffer end position separatly in a
1984 new variable eos_rtime so we can properly sync the EOS event.
1986 Fix the docs for gst_base_sink_set_qos_enabled().
1987 Don't set segment start to invalid value when we receive a
1988 non TIME newsegment.
1989 get closer to handling position reporting for negative rates
1992 2006-05-07 Stefan Kost <ensonic@users.sf.net>
1995 Docs about how to print caps for debug purposes.
1997 * gst/gstpadtemplate.c: (gst_static_pad_template_get):
1998 use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
2000 2006-05-07 Stefan Kost <ensonic@users.sf.net>
2003 use full enum names and preprend a '%' in docs strings to make recent
2004 gtk-doc turn that into a link
2006 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
2008 * docs/manual/basics-bins.xml:
2009 * docs/manual/basics-bus.xml:
2010 * docs/manual/basics-pads.xml:
2011 Some typo fixes, some additions, some clarifications.
2013 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
2015 * tools/gst-inspect.c: (main):
2016 * tools/gst-launch.c: (main):
2017 * tools/gst-run.c: (main):
2018 * tools/gst-typefind.c: (main):
2019 * tools/gst-xmlinspect.c: (main):
2020 Use the string passed to g_option_context_new() for
2021 what it's intended for - the program name is already
2024 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
2026 * tools/Makefile.am:
2027 * tools/gst-inspect.c: (main):
2028 * tools/gst-launch.c: (main):
2029 * tools/gst-xmlinspect.c: (main):
2031 Add back --version command line option (#340460).
2033 * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
2034 Add --version option and use GOption for argument parsing; refactor a
2035 bit; accept directories as arguments and recurse into them; lastly,
2036 print a decent error message when things go wrong.
2038 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
2040 * docs/manual/basics-bins.xml:
2041 Don't mention GstThread (#340611)
2042 * docs/manual/basics-elements.xml:
2043 Update link to GObject tutorial (#340607)
2045 2006-05-05 Wim Taymans <wim@fluendo.com>
2048 * gst/gstminiobject.c:
2049 Add note about refcounting and miniobject/buffer writeability
2050 to docs. Fixes #340604
2052 * gst/gstelementfactory.h:
2053 Added some explanation about @klass.
2055 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
2057 * docs/manual/intro-motivation.xml:
2058 * docs/manual/manual.xml:
2059 Avoid CORBA & Bonobo references (#340598)
2061 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
2063 * docs/manual/basics-bus.xml:
2064 * docs/manual/basics-pads.xml:
2065 Fix up some inaccuracies and omissions (#340609)
2067 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
2069 * gst/gstghostpad.c:
2070 Small typo in docs (#340625)
2072 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
2074 * gst/parse/Makefile.am:
2075 Make 'make -j' proof (see #340698).
2077 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
2080 Require GLib-2.8 here as well.
2082 2006-05-05 Wim Taymans <wim@fluendo.com>
2084 * gst/glib-compat.c:
2085 * gst/gst.c: (init_pre):
2086 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2087 (gst_object_unref), (gst_object_replace), (gst_object_dispose),
2088 (gst_object_dispatch_properties_changed):
2090 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
2091 * gst/gststructure.c: (gst_structure_set_valist):
2092 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
2093 Remove pre glib2.8 compatibility, fixes #340508
2095 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
2098 Mention type of tags in doc blurbs.
2100 2006-05-04 Jan Schmidt <thaytan@mad.scientist.com>
2102 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
2103 (gst_pad_configure_src), (gst_pad_push):
2104 Restore acceptcaps checking behaviour now that good plugins have
2107 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
2109 Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
2120 * gst/parse/Makefile.am:
2121 * libs/gst/base/gstadapter.c:
2122 * libs/gst/base/gstbasesrc.c:
2123 * libs/gst/base/gstpushsrc.c:
2124 * libs/gst/base/gsttypefindhelper.c:
2125 * plugins/elements/gstfakesrc.c:
2126 * plugins/elements/gstidentity.c:
2127 Make sure gstprivate.h and/or config.h are
2128 always included first, otherwise some of our
2129 defines (like _FILE_OFFSET_BITS) might be
2130 redefined in the system headers. Fixes build
2131 on opensolaris (#340016).
2133 2006-05-04 Wim Taymans <wim@fluendo.com>
2135 * docs/libs/gstreamer-libs-sections.txt:
2136 API: addition: gst_adapter_take_buffer()
2138 * libs/gst/base/gstadapter.c: (gst_adapter_push),
2139 (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
2140 (gst_adapter_available_fast):
2141 * libs/gst/base/gstadapter.h:
2142 Prepare for optimizing the hell out of this hugely inefficient
2144 Added gst_adapter_take_buffer() so we can at least start thinking
2145 about subbuffering and merging.
2146 Added some comments.
2148 * tests/check/Makefile.am:
2149 * tests/check/libs/adapter.c: (GST_START_TEST),
2150 (gst_adapter_suite), (main):
2151 Added GstAdapter check.
2153 2006-05-04 Wim Taymans <wim@fluendo.com>
2155 * docs/design/part-overview.txt:
2156 Fix some typos, add blurb about buffer flags.
2158 2006-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
2160 * docs/libs/gstreamer-libs-sections.txt:
2161 make sure GstBaseTransformClass shows up in the docs
2162 * libs/gst/base/gstbasetransform.c:
2163 * libs/gst/base/gstbasetransform.h:
2164 move docs so gtk-doc picks it up now
2166 2006-05-02 Stefan Kost <ensonic@users.sf.net>
2168 * docs/libs/gstreamer-libs-sections.txt:
2169 add missing symbols to docs
2171 2006-05-02 Stefan Kost <ensonic@users.sf.net>
2173 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
2174 back out the newsegment handling change, see #340060 for ongoing
2177 2006-04-30 Tim-Philipp Müller <tim at centricular dot net>
2179 * tools/gst-run.c: (get_candidates), (main):
2180 Fix wrong g_file_test() usage (see glib docs for why it doesn't
2181 work); fix typo in error message. Fixes #340079.
2183 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
2185 * common/Makefile.am:
2187 * docs/faq/Makefile.am:
2188 * docs/gst/Makefile.am:
2189 * docs/libs/Makefile.am:
2190 * docs/manual/Makefile.am:
2191 * docs/plugins/Makefile.am:
2192 * docs/pwg/Makefile.am:
2193 * docs/slides/Makefile.am:
2195 * common/upload.mak:
2196 move upload.mak to common
2198 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
2200 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
2201 add more asserts on refcounts
2202 do more cleanup at end of tests
2203 fix test leaks showing in FC5
2205 2006-04-29 Stefan Kost <ensonic@users.sf.net>
2207 * plugins/elements/gsttypefindelement.c:
2208 (gst_type_find_element_handle_event):
2209 reverted wrong change and reflowed code to avoid others falling into
2212 2006-04-28 Stefan Kost <ensonic@users.sf.net>
2214 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
2215 fix changelog entry about last collectpads change,
2216 add notes about proper fix
2218 2006-04-28 Stefan Kost <ensonic@users.sf.net>
2221 * gst/gstregistry.c: (gst_registry_scan_path_level),
2222 (gst_registry_scan_path):
2223 * gst/gstregistry.h:
2224 only write out registry if it has changed, fixes #338339
2226 2006-04-28 Stefan Kost <ensonic@users.sf.net>
2229 * gst/gstpipeline.c:
2230 * plugins/elements/gstcapsfilter.c:
2231 * plugins/elements/gstfakesink.c:
2232 * plugins/elements/gstfakesrc.c:
2233 * plugins/elements/gstfdsink.c:
2234 * plugins/elements/gstfdsrc.c:
2235 * plugins/elements/gstfilesink.c:
2236 * plugins/elements/gstfilesrc.c:
2237 * plugins/elements/gstidentity.c:
2238 * plugins/elements/gstqueue.c:
2239 * plugins/elements/gsttee.c:
2240 * plugins/elements/gsttypefindelement.c:
2241 (gst_type_find_element_handle_event):
2242 make GstElementDetails const
2244 2006-04-28 Stefan Kost <ensonic@users.sf.net>
2246 * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
2247 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
2248 (gst_collect_pads_is_collected), (gst_collect_pads_event):
2249 more detailed debug and formatting cleanup,
2250 forward newsegments to src-pad (so that e.g. adder not eats them)
2252 2006-04-28 Stefan Kost <ensonic@users.sf.net>
2254 * gst/gstutils.c: (gst_element_link_pads):
2257 2006-04-28 Stefan Kost <ensonic@users.sf.net>
2259 * libs/gst/controller/gstcontroller.c:
2260 (gst_controller_sync_values):
2262 * tests/check/libs/controller.c: (GST_START_TEST),
2263 (gst_controller_suite):
2264 a new test for live value handling
2266 2006-04-28 Wim Taymans <wim@fluendo.com>
2268 * gst/gstutils.c: (push_and_ref):
2269 Added some more docs.
2270 Fix refcount issue whith gst_element_found_tags() helper
2271 function. Fixes #338335
2273 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
2274 Added testsuite for gst_element_found_tags().
2276 2006-04-28 Michael Smith <msmith@fluendo.com>
2278 * gst/gstvalue.c: (gst_value_serialize_flags):
2279 Avoid NULL dereference when trying to serialize flags containing
2282 2006-04-28 Michael Smith <msmith@fluendo.com>
2284 * plugins/elements/gsttypefindelement.c:
2285 (gst_type_find_element_handle_event):
2286 If we get EOS before any data is accumulated, don't use
2287 uninitialised local variables.
2289 2006-04-28 Michael Smith <msmith@fluendo.com>
2291 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2292 (gst_dp_event_from_packet):
2293 Fixes in reading/writing events over GDP (not currently used?) -
2294 dereferencing NULL events for unknown/invalid event types, memory
2295 leak, and change g_warning to GST_WARNING.
2297 2006-04-28 Wim Taymans <wim@fluendo.com>
2299 * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
2300 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
2301 (gst_base_sink_get_position), (gst_base_sink_change_state):
2302 When frame dropping is enabled, we should not ignore frames
2304 Update some documentation.
2306 2006-04-28 Wim Taymans <wim@fluendo.com>
2308 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
2309 (gst_base_src_send_event), (gst_base_src_change_state):
2310 Documentation updates.
2312 2006-04-28 Wim Taymans <wim@fluendo.com>
2314 * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
2315 (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
2316 handle EAGAIN, EINTR and short writes correctly. Also clean
2317 up some error cases, avoid a deadlock on bad file descriptors and
2318 use GST_DEBUG_OBJECT.
2321 2006-04-28 Wim Taymans <wim@fluendo.com>
2323 * gst/gstvalue.c: (gst_value_serialize_buffer),
2324 (gst_value_deserialize_buffer):
2325 Don't try to serialize a GValue with a NULL buffer.
2328 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2329 Added check for serialisation of NULL buffers.
2331 2006-04-28 Wim Taymans <wim@fluendo.com>
2333 * gst/gstminiobject.c: (gst_value_take_mini_object):
2334 Taking a NULL miniobject is valid, fix the case where
2335 we try to unref the NULL miniobject.
2337 2006-04-28 Wim Taymans <wim@fluendo.com>
2339 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
2341 * gst/gstbin.c: (gst_bin_handle_message_func):
2343 Don't leak bin refcount when a state recalc is
2344 in progress and we delay another one #339808.
2346 2006-04-28 Wim Taymans <wim@fluendo.com>
2348 * docs/design/part-TODO.txt:
2349 Mention QoS as an ongoing work item.
2351 * docs/design/part-buffering.txt:
2352 New doc about buffering that needs to be fleshed out
2355 * docs/design/part-qos.txt:
2356 More QoS policy for decoders/demuxers/transforms
2358 * docs/design/part-trickmodes.txt:
2361 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
2366 === release 0.10.5 ===
2368 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
2371 releasing 0.10.5, "Fogo"
2373 2006-04-22 Thomas Vander Stichele <thomas at apestaart dot org>
2375 patch by: Wim Taymans
2377 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
2378 (gst_pad_configure_src), (gst_pad_push):
2379 * gst/gstpipeline.c: (gst_pipeline_init):
2380 Fix internal data flow errors. Fixes #338711.
2382 2006-04-12 Wim Taymans <wim@fluendo.com>
2384 * tests/check/gst/gstelement.c: (GST_START_TEST):
2385 Don't leak the factory.
2387 2006-04-12 Thomas Vander Stichele <thomas at apestaart dot org>
2390 * win32/common/config.h:
2393 2006-04-12 Tim-Philipp Müller <tim at centricular dot net>
2395 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
2396 (gst_controller_unset_all):
2397 Free allocated GstTimedValues when freeing list nodes.
2398 Should fix leaks 'make check-valgrind' complains about.
2400 * win32/common/libgstcontroller.def:
2401 Add gst_controller_unset_all.
2403 2006-04-11 Stefan Kost <ensonic@users.sf.net>
2405 * docs/libs/gstreamer-libs-sections.txt:
2406 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
2407 (gst_controller_unset_all):
2408 * libs/gst/controller/gstcontroller.h:
2409 API: Added new method gst_controller_unset_all()
2410 fixed gst_controller_unset()
2411 * tests/check/libs/controller.c: (GST_START_TEST),
2412 (gst_controller_suite):
2413 Added two testcases for new and fixed method
2415 2006-04-11 Tim-Philipp Müller <tim at centricular dot net>
2417 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
2418 MSG_DONTWAIT is not defined on Cygwin, so work
2419 around that (fixes #317048).
2421 2006-04-11 Wim Taymans <wim@fluendo.com>
2423 * gst/gstelementfactory.c: (gst_element_register),
2424 (gst_element_factory_create), (gst_element_factory_make):
2427 Updated docs (Fixes #131079)
2429 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
2432 * tests/check/gst/gstelement.c: (GST_START_TEST),
2433 (gst_element_suite):
2434 Added testcase for elementfactory class field.
2436 2006-04-10 Wim Taymans <wim@fluendo.com>
2439 Added some more docs.
2441 * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
2442 (gst_base_sink_reset_qos):
2443 Calculate more accurate rate values.
2445 2006-04-09 Sebastien Moutte <sebastien@moutte.net>
2447 * gst/gst_private.h:
2448 add a new #ifdef to use __declspec(dllimport) only for
2449 other modules and not for gstreamer core
2450 * gst/gstbasesink.c: (gst_base_sink_perform_qos):
2451 use gst_guint64_to_gdouble for conversion
2452 * win32/common/libgstreamer.def:
2453 add new exported functions
2454 * win32/vs6/gst_inspect.dsp:
2455 * win32/vs6/gst_launch.dsp:
2456 * win32/vs6/libgstbase.dsp:
2457 * win32/vs6/libgstcontroller.dsp:
2458 * win32/vs6/libgstcoreelements.dsp:
2459 * win32/vs6/libgstdataprotocol.dsp:
2460 * win32/vs6/libgstnet.dsp:
2461 update project files
2463 2006-04-08 Stefan Kost <ensonic@users.sf.net>
2465 * gst/gstbuffer.c: (gst_subbuffer_class_init):
2466 * gst/gstclock.c: (gst_clock_class_init):
2467 * gst/gstelement.c: (gst_element_class_init):
2468 * gst/gstindex.c: (gst_index_class_init):
2469 * gst/gstindexfactory.c: (gst_index_factory_class_init):
2470 * gst/gstobject.c: (gst_object_class_init),
2471 (gst_signal_object_class_init):
2472 * gst/gstpad.c: (gst_pad_class_init):
2473 * gst/gstpadtemplate.c: (gst_pad_template_class_init):
2474 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
2475 * gst/gstregistry.c: (gst_registry_class_init):
2476 * gst/gstsystemclock.c: (gst_system_clock_class_init):
2477 * gst/gsttask.c: (gst_task_class_init):
2478 * gst/gstxml.c: (gst_xml_class_init):
2479 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
2480 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2481 (gst_base_src_loop):
2482 * libs/gst/controller/gstcontroller.c:/
2483 (_gst_controller_class_init):
2484 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
2485 * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
2486 * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
2487 * tests/old/examples/plugins/example.c: (gst_example_class_init):
2488 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
2489 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2491 2006-04-08 Tim-Philipp Müller <tim at centricular dot net>
2493 * gst/gstpad.c: (gst_pad_link):
2494 Must set peer pads before calling the link function, otherwise
2495 a task started from a link function might get a flow-not-linked
2496 result when trying to push because the other thread where the
2497 linking happens hasn't had a chance to set the peers yet. This
2498 might happen for example when a queue gets linked to a downstream
2499 element, as queue starts a streaming task when its source pad
2500 gets linked. Happens in real life when playing back flac/musepack
2501 files in playbin (#332390).
2503 2006-04-08 Stefan Kost <ensonic@users.sf.net>
2507 * libs/gst/base/gstadapter.h:
2508 * libs/gst/base/gstbasesink.h:
2509 * libs/gst/base/gstbasesrc.h:
2510 * libs/gst/base/gstbasetransform.h:
2511 * libs/gst/base/gstcollectpads.h:
2512 * libs/gst/base/gstpushsrc.h:
2513 Fix broken GObject macros
2515 2006-04-07 Wim Taymans <wim@fluendo.com>
2517 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2518 Initialize start and stop times, thanks valgrind.
2520 2006-04-07 Wim Taymans <wim@fluendo.com>
2522 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2523 Be a bit nicer to badly behaving upstream elements that expect
2524 us to deal with non TIME segments and timestamps (such as fakesrc
2527 2006-04-07 Wim Taymans <wim@fluendo.com>
2530 Small documentation clarification about the signal watch.
2532 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
2533 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2534 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2535 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
2536 (gst_base_sink_get_position_last),
2537 (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
2538 Convert and store timestamps in stream time and running time, the
2539 raw timestamps are not usefull, also document this better.
2540 Use different window sizes for good and bad QoS observations so
2541 we react to badness a little quicker.
2542 Keep track of the amount of rendered and dropped buffers.
2543 Send QoS timestamps in running time.
2545 * libs/gst/base/gstbasetransform.c:
2546 (gst_base_transform_sink_eventfunc),
2547 (gst_base_transform_handle_buffer):
2548 Compare QoS timestamps against running time.
2550 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
2555 2006-04-06 Michael Smith <msmith@fluendo.com>
2557 * gst/gstpad.c: (gst_pad_set_property):
2558 Use g_value_get_object() instead of g_value_dup_gst_object(),
2559 to avoid double-reffing the pad template (which we then sink,
2560 so this worked previously if (and only if) the pad template
2563 * gst/gstpadtemplate.c: (gst_pad_template_init),
2564 (gst_pad_template_pad_created):
2565 Never return floating references to pad templates, create
2566 them as initially-sunken.
2568 Document an extra function (and make this stop sinking our
2569 pad template, since that is now guaranteed to do nothing,
2570 since we created it sunken).
2572 * gst/gstghostpad.c:
2575 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
2577 * gst/gstinfo.c: (__gst_in_valgrind):
2580 * plugins/elements/gsttypefindelement.c:
2581 (gst_type_find_element_chain):
2582 Don't leak buffer caps.
2584 2006-04-06 Michael Smith <msmith@fluendo.com>
2586 * gst/parse/grammar.y:
2587 Fix a leak in parse-launch for any source-or-sink named element
2590 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
2591 Unref the pipeline if it exists after we've failed parsing.
2593 2006-04-05 Michael Smith <msmith@fluendo.com>
2595 * gst/gstpipeline.c: (gst_pipeline_init):
2596 When we create a pipeline bus, initially create it in flushing mode.
2597 Fixes leaks in at least one test, and makes a new pipeline work the
2598 same as one that has gone to READY and then back to NULL.
2603 2006-04-05 Michael Smith <msmith@fluendo.com>
2605 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
2606 Unref a pad we reffed.
2607 * tests/check/gst/gstutils.c: (GST_START_TEST):
2610 2006-04-05 Michael Smith <msmith@fluendo.com>
2612 * gst/gstquery.c: (gst_query_set_formats),
2613 (gst_query_set_formatsv):
2614 Fix leaking GValues in queries, as shown by valgrind/testsuite.
2616 2006-04-05 Michael Smith <msmith@fluendo.com>
2618 * tests/check/generic/sinks.c: (GST_START_TEST):
2619 Fix a variety of memleaks in sinks check, which are only sometimes
2620 shown by running the tests under valgrind (weird?).
2622 2006-04-05 Jan Schmidt <thaytan@mad.scientist.com>
2624 * docs/version.entities.in:
2625 Fix the substituted entity name after thomas' changes on the
2628 2006-04-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2630 * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
2633 2006-04-05 Andy Wingo <wingo@pobox.com>
2635 * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
2637 * libs/gst/base/gstbasetransform.c
2638 (gst_base_transform_sink_eventfunc): When resetting our segment on
2639 FLUSH_STOP, also update the flag saying we haven't seen a
2642 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2644 Patch by: Paolo Borelli <pborelli at katamail dot com>
2646 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
2647 (gst_plugin_check_license):
2648 minor clean-ups: G_DEFINE_TYPE already takes care of the
2649 parent_class stuff, no need to do it twice. Mark array of
2650 license strings as constant. (#337103)
2652 2006-04-04 Michael Smith <msmith@fluendo.com>
2654 * tools/gst-inspect.c: (print_element_list):
2655 Free the right plugin list; fixes a memory leak.
2657 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2659 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
2661 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2662 Don't error out on empty buffers (#336945).
2664 2006-04-04 Jan Schmidt <thaytan@mad.scientist.com>
2666 * docs/libs/gstreamer-libs-sections.txt:
2668 * libs/gst/base/gstbasesink.c:
2669 * libs/gst/base/gstbasesink.h:
2670 * libs/gst/base/gstbasesrc.c:
2671 * libs/gst/base/gstbasesrc.h:
2672 Documentation updates. Make BaseSink and BaseSrc docs contain the
2673 class structure so that people can actually see the prototypes for
2674 virtual functions they're supposed to be overriding.
2676 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2678 * plugins/elements/gsttypefindelement.c:
2679 (gst_type_find_element_chain):
2680 More debug info; when skipping typefinding, send cached
2681 events in all cases.
2683 2006-04-01 Thomas Vander Stichele <thomas at apestaart dot org>
2686 use new AS_VERSION and AS_NANO macros
2687 * gst/gst-i18n-lib.h:
2690 * gst/gstversion.h.in:
2691 * win32/common/config.h:
2692 * win32/common/config.h.in:
2695 2006-03-31 Michael Smith <msmith@fluendo.com>
2697 * plugins/elements/gsttypefindelement.c:
2698 (gst_type_find_element_chain):
2699 Do not typefind content if the buffers already have caps.
2700 Neccesary for icydemux (#333657), and the right thing to do anyway.
2702 2006-03-30 Wim Taymans <wim@fluendo.com>
2704 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2705 (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
2706 (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
2707 (gst_base_sink_record_qos_observation),
2708 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2709 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2710 (gst_base_sink_change_state):
2711 More QoS measurements as described in the design doc.
2712 Get rid of ringbuffer with observations, running average is
2713 more simple and equally good.
2714 Calculates valid proportion now.
2715 Added beginning of flood measurement.
2717 2006-03-29 Wim Taymans <wim@fluendo.com>
2719 * docs/design/part-qos.txt:
2721 Small documentation updates and additions.
2723 2006-03-29 Wim Taymans <wim@fluendo.com>
2725 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2726 (gst_base_src_send_event), (gst_base_src_loop),
2727 (gst_base_src_change_state):
2728 Perform the EOS logic when we reach the segment stop position.
2729 Fix compilation on gcc4.1
2731 2006-03-29 Wim Taymans <wim@fluendo.com>
2733 Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
2735 * plugins/elements/gstqueue.c: (gst_queue_init),
2736 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2737 (gst_queue_set_property):
2738 * plugins/elements/gstqueue.h:
2739 In queue, when EOS is received, if minimum threshold > max_size -
2740 current_level, there is chance that queue blocks forever in conditional
2741 item del wait. This is because the queue is not emptied completely due
2742 to minimum threshold. Here is another approach. Instead of setting
2743 cur_levels to max in EOS, just zero all minimum threshold levels. This
2744 should make sure that queue gives out all data. When going to READY
2745 (stop) state, just reset the original minimum threshold levels.
2748 2006-03-29 Tim-Philipp Müller <tim at centricular dot net>
2750 * plugins/elements/gsttypefindelement.c: (stop_typefinding),
2751 (gst_type_find_element_handle_event),
2752 (gst_type_find_element_send_cached_events),
2753 (gst_type_find_element_change_state):
2754 * plugins/elements/gsttypefindelement.h:
2755 When typefinding is done in push mode, we should cache
2756 events we receive during typefinding instead of just
2757 dropping them (e.g. newsegment, custom events from
2758 dvdreadsrc etc.) and then send them out once we've
2759 determined the type of the stream (and decodebin
2760 has had a chance to plug in a decoder/demuxer).
2762 2006-03-27 Wim Taymans <wim@fluendo.com>
2764 * docs/design/part-qos.txt:
2767 2006-03-27 Wim Taymans <wim@fluendo.com>
2769 Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
2771 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2772 (gst_base_src_send_event), (gst_base_src_change_state):
2773 Handle element seek correctly when we are streaming.
2776 2006-03-24 Michael Smith <msmith@fluendo.com>
2778 * docs/faq/gst-uninstalled:
2779 Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
2780 allow you to correctly run intalled applications built against old
2781 core, using plugins that require updated core (e.g. running
2782 installed totem against a full uninstalled gstreamer stack)
2784 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2786 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
2789 2006-03-24 Wim Taymans <wim@fluendo.com>
2791 * docs/gst/gstreamer-sections.txt:
2792 Rearrange the order of the methods so that related methods
2793 are grouped together in sections.
2795 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2798 Little clarification in the docs
2800 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2804 * plugins/elements/gstidentity.c:
2805 * plugins/elements/gstqueue.c:
2806 * plugins/elements/gsttee.c:
2807 * plugins/elements/gsttypefindelement.c:
2808 GST_ELEMENT_DETAILS formatting
2810 2006-03-24 Wim Taymans <wim@fluendo.com>
2812 * libs/gst/base/gstbasesink.h:
2813 Only add fields, not insert or we break ABI.
2815 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2817 * win32/common/libgstbase.def:
2818 * win32/common/libgstreamer.def:
2819 Update, add recently added functions.
2821 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2823 * docs/gst/gstreamer-sections.txt:
2824 * gst/gstutils.c: (gst_pad_query_peer_position),
2825 (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
2827 API: add some new utility functions:
2828 - gst_pad_query_peer_position()
2829 - gst_pad_query_peer_duration()
2830 - gst_pad_query_peer_convert()
2832 2006-03-23 Wim Taymans <wim@fluendo.com>
2834 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
2835 (gst_base_sink_init), (gst_base_sink_finalize),
2836 (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
2837 (gst_base_sink_set_property), (gst_base_sink_get_property),
2838 (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
2839 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2840 (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
2841 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2842 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2843 (gst_base_sink_preroll_object), (gst_base_sink_event),
2844 (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
2845 (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
2846 (gst_base_sink_query), (gst_base_sink_change_state):
2847 Decouple max-lateness and the fact that QoS messages are generated
2848 with a new property (qos).
2849 added API: GstBaseSink::async_play()
2850 Add vmethod so subclasses can be notified of ASYNC playing
2852 Collect timestamp start and stop to report better current
2853 position in EOS/PLAYING/PAUSED/READY/NULL.
2854 Refactor QoS/frame dropping and other measurements.
2855 API: GstBaseSrc::qos
2858 * libs/gst/base/gstbasesink.h:
2859 Added Private struct.
2860 API: gst_base_sink_set_qos_enabled()
2861 API: gst_base_sink_is_qos_enabled()
2863 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2865 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
2866 If compiling against GLib-2.8 or newer, try to read the
2867 registry file using GMappedFile first before falling back
2868 to fopen() + fread() (#332151).
2870 2006-03-22 Wim Taymans <wim@fluendo.com>
2872 * gst/gstinfo.c: (gst_debug_set_active),
2873 (gst_debug_category_set_threshold):
2874 Disable debugging unless explicitly activated.
2877 2006-03-22 Wim Taymans <wim@fluendo.com>
2879 * gst/gstelement.c: (gst_element_set_locked_state),
2880 (gst_element_dispose):
2881 Cleanup the error case.
2883 * gst/gstobject.c: (gst_object_dispose):
2884 print a critical when some object was disposed with
2885 a parent, also revive the object since it might
2888 2006-03-22 Tim-Philipp Müller <tim at centricular dot net>
2890 * tools/gst-launch.1.in:
2893 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
2896 * tests/check/Makefile.am:
2897 disable some tests when we don't have a registry
2898 * tests/check/gst/gstutils.c: (gst_utils_suite):
2899 don't build the part that needs parsing
2901 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
2904 * tests/examples/Makefile.am:
2905 fix --disable-parse build
2907 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2909 * tools/gst-feedback.1.in:
2910 Fix typo: s/feeback/feedback/ (#133494).
2912 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2914 * tools/Makefile.am:
2915 * tools/gst-launch.1.in:
2916 Add FILES section and correct entry about GST_REGISTRY_PATH
2917 environment variable (#133495; #133494).
2919 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2921 * tools/Makefile.am:
2922 * tools/gst-md5sum.1.in:
2923 * tools/gst-md5sum.c:
2924 Remove gst-md5sum and man page (the md5sink element
2925 required was removed ages ago)
2927 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2929 * gst/gststructure.c: (gst_structure_id_set_value):
2930 Make sure that string fields in structures/taglists
2931 contain valid UTF-8 - we don't want to pass rubbish to
2932 applications because of a buggy plugin (cp. #334167).
2934 2006-03-21 Edward Hervey <edward@fluendo.com>
2936 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2937 (gst_bin_handle_message_func):
2938 * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
2939 * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
2940 (gst_element_set_bus_func):
2941 * gst/gstghostpad.c: (gst_proxy_pad_dispose):
2942 * gst/gstminiobject.c: (gst_value_set_mini_object),
2943 (gst_value_take_mini_object):
2944 * gst/gstpad.c: (gst_pad_set_pad_template):
2945 * gst/gstpipeline.c: (gst_pipeline_dispose),
2946 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
2947 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
2948 (gst_collect_pads_chain):
2949 * libs/gst/net/gstnettimeprovider.c:
2950 (gst_net_time_provider_set_property):
2951 Series of fixes for dereferenced pointers that gcc 4.1 complains about.
2952 It's in fact all issues with gst_*object_replace().
2954 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2956 Patch by: Loïc Minier <lool + gnome at via dot ecp dot fr>
2958 * pkgconfig/gstreamer-check-uninstalled.pc.in:
2959 * pkgconfig/gstreamer-check.pc.in:
2960 Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
2962 2006-03-21 Edward Hervey <edward@fluendo.com>
2967 gst_[buffer|event|message]_ref() macros are replaced by a static
2968 inline functions because gcc-4.1 will about if the return value
2970 * tests/check/gst/gstevent.c: (event_probe):
2971 gst_event_ref now has to be given a GstEvent* , fix check accordingly.
2973 2006-03-20 Jan Schmidt <thaytan@mad.scientist.com>
2976 Add G_UNLIKELY to our boilerplate to optimise the 'already registered
2977 the type' case. (Closes: #335195 for now). In the future, when we
2978 depend on GLib 2.10, we could also intern the type name using
2979 g_intern_static_string()
2981 2006-03-20 Wim Taymans <wim@fluendo.com>
2983 * gst/gstbin.c: (gst_bin_handle_message_func),
2984 (bin_query_max_init), (bin_query_position_fold),
2985 (bin_query_position_done), (gst_bin_query):
2986 Position query should also take max of all streams.
2988 2006-03-20 Wim Taymans <wim@fluendo.com>
2990 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
2991 (gst_fake_src_finalize):
2992 Fix leaks in fakesrc.
2994 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
2995 Fix leaks in the testcase.
2997 2006-03-19 Sebastien Moutte <sebastien@moutte.net>
2999 * gst/gst_private.h:
3000 add win32 specific import decoration(__declspec(dllimport))
3001 for all extern GstDebugCategory * variables
3002 * win32/common/libgstbase.def:
3003 * win32/common/libgstcontroller.def:
3004 * win32/common/libgstreamer.def:
3005 Add some exports, remove empty lines
3006 * win32/common/libgstdataprotocol.def:
3007 * win32/common/libgstdataprotocol.dsp:
3008 * win32/common/libgstnet.def:
3009 * win32/common/libgstnet.dsp:
3010 new project files and exportation files added
3012 2006-03-19 Wim Taymans <wim@fluendo.com>
3014 * tests/check/libs/basesrc.c: (eos_event_counter):
3015 Use proper return value for probe.
3017 2006-03-17 Wim Taymans <wim@fluendo.com>
3019 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
3021 Don't leak buffers, caps and pads on negotiation errors.
3023 2006-03-16 Stefan Kost <ensonic@users.sf.net>
3026 * docs/faq/dependencies.xml:
3027 * docs/faq/developing.xml:
3029 * docs/faq/general.xml:
3030 * docs/faq/getting.xml:
3031 * docs/faq/legal.xml:
3032 * docs/faq/troubleshooting.xml:
3033 * docs/faq/using.xml:
3034 Faq review and update.
3036 2006-03-16 Jan Schmidt <thaytan@mad.scientist.com>
3038 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
3040 Don't pound the cpu to pieces by checking get_caps when accept_caps
3041 is called with the same caps as the pad already has.
3042 Use GST_DEBUG_OBJECT when outputting caps change information.
3044 2006-03-15 Wim Taymans <wim@fluendo.com>
3046 * gst/gstclock.c: (gst_clock_class_init):
3049 2006-03-15 Jan Schmidt <thaytan@mad.scientist.com>
3054 * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
3055 (gst_pad_accept_caps), (gst_pad_configure_sink),
3056 (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
3057 Make the default acceptcaps behaviour be to check the requested
3058 caps against the gst_pad_get_caps output.
3060 Ensure that gst_pad_accept_caps is used to check caps when a pad
3061 doesn't have a setcaps function, so that pads automatically refuse
3062 caps that they don't allow in their pad template. (Fixes #332986)
3064 When a buffer with attached caps is pushed, ensure that the source
3065 pad receives those caps even if the element didn't call
3066 gst_pad_set_caps first.
3068 2006-03-15 Wim Taymans <wim@fluendo.com>
3070 * libs/gst/base/gstadapter.c:
3073 2006-03-15 Tim-Philipp Müller <tim at centricular dot net>
3075 * win32/common/libgstbase.def:
3076 * win32/common/libgstcontroller.def:
3077 * win32/common/libgstreamer.def:
3078 Add a whole bunch of missing functions (#334434).
3080 2006-03-14 Wim Taymans <wim@fluendo.com>
3082 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
3083 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
3084 (gst_base_sink_do_sync), (gst_base_sink_do_qos):
3085 Better debug info when we receive a segment event.
3086 Reorganize a bit so we can pass the get_times() results around.
3087 Use the segment format when calculating the running time.
3088 Don't do QoS is sync is disabled or we have no clock or the
3089 element does not want us to sync to the clock.
3090 Don't drop buffers if QoS is disabled for now.
3092 2006-03-14 Wim Taymans <wim@fluendo.com>
3094 * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
3095 Marked the stats property as unimplemented so people don't get
3097 Add debug message when regression goes wrong.
3098 Added some more docs.
3100 2006-03-14 Wim Taymans <wim@fluendo.com>
3102 * gst/gstsegment.c: (gst_segment_to_stream_time):
3103 Return correct return type in case of errors.
3105 2006-03-14 Wim Taymans <wim@fluendo.com>
3107 * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
3108 Don't segfault on invalid formats.
3110 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
3112 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
3113 Can't use gst_segment_to_running_time() when the segment
3114 is not in GST_TIME_FORMAT (like with filesink, for example).
3115 Stops flac encoding pipelines from spewing critical warnings
3118 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
3120 * gst/gstpipeline.c: (gst_pipeline_class_init):
3121 Add 'Since: 0.10.5' to gtk-doc blurb for added property.
3123 * plugins/elements/gsttypefindelement.c:
3124 (gst_type_find_element_handle_event):
3125 Don't try to typefind empty streams.
3127 2006-03-14 Wim Taymans <wim@fluendo.com>
3129 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
3130 (gst_base_sink_do_qos):
3131 Separate QoS calculation.
3132 Only drop buffers when lateness is bigger than the
3133 duration of the buffer.
3135 2006-03-13 Wim Taymans <wim@fluendo.com>
3137 * gst/gstpipeline.c: (gst_pipeline_set_property),
3138 (gst_pipeline_get_property), (do_pipeline_seek),
3139 (gst_pipeline_change_state), (gst_pipeline_set_delay),
3140 (gst_pipeline_get_delay):
3141 Don't deadlock when reading properties.
3143 2006-03-13 Wim Taymans <wim@fluendo.com>
3145 * libs/gst/base/gstbasetransform.c:
3146 (gst_base_transform_class_init), (gst_base_transform_init),
3147 (gst_base_transform_sink_event),
3148 (gst_base_transform_sink_eventfunc),
3149 (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
3150 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
3151 (gst_base_transform_set_property),
3152 (gst_base_transform_get_property),
3153 (gst_base_transform_change_state), (gst_base_transform_update_qos),
3154 (gst_base_transform_set_qos_enabled),
3155 (gst_base_transform_is_qos_enabled):
3156 * libs/gst/base/gstbasetransform.h:
3157 Make basetransform virtual method for src events too.
3158 Handle QOS in basetransform.
3159 API: gst_base_transform_update_qos()
3160 API: gst_base_transform_set_qos_enabled()
3161 API: gst_base_transform_is_qos_enabled()
3163 2006-03-13 Wim Taymans <wim@fluendo.com>
3165 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3166 (gst_base_sink_do_sync):
3168 Use QOS debug category.
3170 2006-03-13 Wim Taymans <wim@fluendo.com>
3172 * plugins/elements/gstqueue.c:
3173 Very small doc update.
3175 2006-03-13 Wim Taymans <wim@fluendo.com>
3177 * gst/gst_private.h:
3178 * gst/gstinfo.c: (_gst_debug_init):
3179 Added QOS debug category
3181 2006-03-13 Wim Taymans <wim@fluendo.com>
3183 * docs/gst/gstreamer-sections.txt:
3184 * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
3186 * gst/gstbus.c: (gst_bus_class_init):
3189 * gst/gstelement.c: (gst_element_set_locked_state):
3191 Documentation updates.
3193 * gst/gstpipeline.c: (gst_pipeline_get_type),
3194 (gst_pipeline_class_init), (gst_pipeline_init),
3195 (gst_pipeline_dispose), (gst_pipeline_set_property),
3196 (gst_pipeline_get_property), (do_pipeline_seek),
3197 (gst_pipeline_send_event), (gst_pipeline_change_state),
3198 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
3199 (gst_pipeline_get_delay):
3200 * gst/gstpipeline.h:
3201 Added methods for setting the delay.
3202 API: gst_pipeline_set_delay()
3203 API: gst_pipeline_get_delay()
3204 Add pipeline debug category
3207 Don't reset stream time when seek failed.
3209 2006-03-13 Wim Taymans <wim@fluendo.com>
3211 * docs/design/draft-klass.txt:
3212 * docs/design/part-clocks.txt:
3213 * docs/design/part-events.txt:
3214 * docs/design/part-gstbin.txt:
3215 * docs/design/part-gstpipeline.txt:
3216 * docs/design/part-messages.txt:
3217 * docs/design/part-negotiation.txt:
3218 * docs/design/part-overview.txt:
3219 * docs/design/part-preroll.txt:
3220 * docs/design/part-seeking.txt:
3221 * docs/design/part-states.txt:
3222 * docs/design/part-streams.txt:
3223 Documentation updates.
3225 2006-03-12 Julien MOUTTE <julien@moutte.net>
3227 * gst/gsttaglist.c: Fix rubbish docs that are encouraging
3228 us to leak strings...
3230 2006-03-12 Thomas Vander Stichele <thomas at apestaart dot org>
3232 * libs/gst/net/gstnettimeprovider.c:
3234 * win32/common/config.h:
3237 2006-03-12 Tim-Philipp Müller <tim at centricular dot net>
3239 Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
3242 Don't check for libgnomeui (leftover from old examples
3243 that aren't built or disted any longer) (#334303).
3245 2006-03-11 Tim-Philipp Müller <tim at centricular dot net>
3247 * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
3248 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
3249 Emit RESOURCE_NO_SPACE_LEFT error here as well when
3250 there's no space left on the device.
3252 2006-03-10 Tim-Philipp Müller <tim at centricular dot net>
3255 Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
3256 to cast the input to GstClockTime before comparing with
3257 another GstClockTime value.
3259 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
3264 === release 0.10.4 ===
3266 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
3269 releasing 0.10.4, "Light"
3271 2006-03-10 Michael Smith <msmith@fluendo.com>
3273 * libs/gst/dataprotocol/dataprotocol.c:
3274 Fix docs for dataprocotol to not get the return types completely
3275 wrong for a few functions.
3277 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
3279 * docs/gst/gstreamer-sections.txt:
3280 * gst/gstpipeline.c: (gst_pipeline_class_init),
3281 (gst_pipeline_init), (gst_pipeline_set_property),
3282 (gst_pipeline_get_property), (gst_pipeline_change_state),
3283 (gst_pipeline_set_auto_flush_bus),
3284 (gst_pipeline_get_auto_flush_bus):
3285 * gst/gstpipeline.h:
3286 Add new API: gst_pipeline_set_auto_flush_bus() and
3287 gst_pipeline_get_auto_flush_bus() to disable automatic
3288 flushing of the pipeline's GstBus when going from READY
3289 to NULL state (#332045).
3291 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
3293 * docs/gst/gstreamer-sections.txt:
3294 * gst/gsturi.c: (gst_uri_has_protocol):
3296 Add new API: gst_uri_has_protocol() (#333779).
3298 2006-03-09 Wim Taymans <wim@fluendo.com>
3300 * gst/gstclock.c: (gst_clock_entry_new),
3301 (gst_clock_id_compare_func), (gst_clock_id_wait),
3302 (gst_clock_id_wait_async), (gst_clock_id_unschedule),
3303 (gst_clock_init), (gst_clock_get_internal_time),
3304 (gst_clock_set_master), (do_linear_regression),
3305 (gst_clock_add_observation), (gst_clock_set_property):
3309 Fix a possible segfault when the window-size is made smaller.
3310 Calculate jitter before performing the clock wait. Ideally
3311 the clock implementation should calculate jitter but we need
3312 API breakage for that.
3314 * gst/gstsystemclock.c: (gst_system_clock_init):
3317 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3318 Remove leftover else
3320 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
3321 (gst_systemclock_suite):
3322 Added check to test GST_CLOCK_DIFF.
3324 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
3326 * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
3327 (gst_type_find_helper_get_range):
3328 If we are provided with the size, we should implement
3329 GstTypeFind::get_length, so that typefind functions who
3330 want to can actually peek at the middle of a file.
3332 2006-03-08 Tim-Philipp Müller <tim at centricular dot net>
3334 * docs/manual/advanced-dataaccess.xml:
3335 Add some very very basic error checking.
3337 * docs/pwg/appendix-checklist.xml:
3338 Some updates to the list of things to check when writing an element.
3340 2006-03-08 Wim Taymans <wim@fluendo.com>
3342 * docs/design/part-element-transform.txt:
3343 Added some docs about the design of tranform elements.
3345 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
3346 (gst_base_src_loop), (gst_base_src_change_state):
3347 Mark buffers with the DISCONT flag.
3349 2006-03-08 Michael Smith <msmith@fluendo.com>
3351 * gst/gstregistry.h:
3352 * gst/gstregistryxml.c: (gst_registry_save),
3353 (gst_registry_save_escaped), (gst_registry_xml_save_caps),
3354 (gst_registry_xml_save_pad_template),
3355 (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
3356 (gst_registry_xml_write_cache):
3357 Rewrite registry-saving to avoid race conditions and check for
3360 2006-03-08 Wim Taymans <wim@fluendo.com>
3362 * libs/gst/base/gstbasetransform.c:
3363 (gst_base_transform_transform_caps),
3364 (gst_base_transform_transform_size),
3365 (gst_base_transform_prepare_output_buffer),
3366 (gst_base_transform_get_unit_size),
3367 (gst_base_transform_buffer_alloc),
3368 (gst_base_transform_handle_buffer),
3369 (gst_base_transform_change_state):
3370 Cleanups, separate normal flow from errors, add sensible
3372 Don't try to renegotiate when allocating an output buffer.
3373 Also copy DISCONT buffer flag when copying a buffer.
3374 Reset the transform after we finish streaming, not during.
3376 2006-03-08 Wim Taymans <wim@fluendo.com>
3378 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3379 Use last buffer timestamp in qos message.
3381 2006-03-07 Wim Taymans <wim@fluendo.com>
3383 Patch by: Christophe Fergeau
3385 * docs/pwg/advanced-tagging.xml:
3386 * docs/pwg/building-pads.xml:
3389 2006-03-07 Wim Taymans <wim@fluendo.com>
3391 * docs/libs/gstreamer-libs-sections.txt:
3392 Added basesink new methods.
3396 Docs updates. Flesh out the QoS docs.
3398 * libs/gst/base/gstadapter.c:
3399 Small doc clarification about ownership and flushing.
3401 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
3402 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
3403 (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
3404 (gst_base_sink_get_property), (gst_base_sink_do_sync):
3405 * libs/gst/base/gstbasesink.h:
3407 Added new methods to allow subclass to control max-lateness
3409 Generate very basic QoS events based on last sync observation.
3410 Updated docs, fix typo, added some QoS blurb.
3412 * libs/gst/base/gstbasesrc.c:
3413 Remove obsolete _get_state() calls from docs.
3415 2006-03-07 Wim Taymans <wim@fluendo.com>
3417 * docs/libs/gstreamer-libs-sections.txt:
3418 * libs/gst/base/gstbasetransform.h:
3419 API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
3420 Fix docs for GstBaseSrc.
3422 2006-03-07 Wim Taymans <wim@fluendo.com>
3424 * docs/gst/gstreamer-sections.txt:
3427 * libs/gst/base/gstbasetransform.h:
3428 Small documentation fixes.
3430 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
3433 Document thread-unsafety of gst_value_register_foo_func()
3434 when used at the same time as gst_value_foo() (#322628).
3436 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
3438 * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
3439 (gst_push_src_check_get_range):
3440 Push sources don't support pull mode by default.
3442 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
3444 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3445 (gst_base_src_init), (gst_base_src_pad_check_get_range),
3446 (gst_base_src_default_check_get_range):
3447 * libs/gst/base/gstbasesrc.h:
3448 API addition: Add ::check_get_range() vfunc to GstBaseSrc (#332611),
3449 provide default implementation, and rename
3450 gst_base_src_check_get_range() to
3451 gst_base_src_pad_check_get_range() for clarity.
3453 2006-03-06 Wim Taymans <wim@fluendo.com>
3455 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
3456 Make property overridable.
3458 2006-03-06 Wim Taymans <wim@fluendo.com>
3460 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3461 (gst_base_sink_init), (gst_base_sink_set_property),
3462 (gst_base_sink_get_property), (gst_base_sink_do_sync):
3463 * libs/gst/base/gstbasesink.h:
3464 API addition: Make max-lateness a property.
3466 2006-03-06 Wim Taymans <wim@fluendo.com>
3468 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
3469 (gst_base_sink_do_sync), (gst_base_sink_render_object):
3470 Don't ever draw a frame that is >10ms late.
3472 2006-03-06 Michael Smith <msmith@fluendo.com>
3474 * gst/gstmessage.c: (_gst_message_copy):
3475 When copying a message, set the parent_refcount of the enclosed
3476 structure to point at the copy, not the original message.
3478 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
3480 Patch by: Christophe Fergeau
3483 Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
3484 usable in c++ code (#333417)
3486 2006-03-06 Thomas Vander Stichele <thomas at apestaart dot org>
3489 Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
3491 2006-03-05 Tim-Philipp Müller <tim at centricular dot net>
3493 * libs/gst/base/gstbasetransform.c:
3494 (gst_base_transform_transform_caps):
3495 Make sure caps are writable before passing them to
3498 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
3501 Fix some minor docs errors.
3503 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
3505 Patch by: Ross Burton <ross at burtonini dot com>
3507 * gst/gsterror.c: (_gst_resource_errors_init):
3509 Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
3511 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
3514 Add a check and output a g_warning when GStreamer is built
3515 against GLib 2.6 but running against 2.8 or higher, and vice
3516 versa. (Closes: #323542)
3518 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
3520 * gst/parse/parse.l:
3521 Commit patch for parse_launch syntax from #331255. Removes
3522 support for quoted strings and mimetypes when writing filtered
3523 caps. See the bug report for more details - I'm pretty sure this
3524 obscure feature is not in use by _anyone_ anywhere.
3526 With this simple change, the size of the gstreamer.so here
3527 drops from 2193KB to 1565KB.
3529 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3531 * plugins/elements/gsttypefindelement.h:
3532 * plugins/elements/gsttypefindelement.c:
3533 (gst_type_find_element_src_event), (start_typefinding),
3534 (stop_typefinding), (gst_type_find_element_handle_event),
3535 (gst_type_find_element_chain),
3536 (gst_type_find_element_chain_do_typefinding):
3537 Use gst_type_find_helper_for_buffer() for chain-based
3540 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3542 * plugins/elements/gsttypefindelement.c:
3543 (gst_type_find_element_class_init),
3544 (gst_type_find_element_set_property),
3545 (gst_type_find_element_get_property):
3546 Deprecate "maximum" property (not only was it only taken into
3547 account for typefinding in push-mode anyway, it also was never
3548 actually possible to set it in the first place because the
3549 property was registered with the numeric property ID for the
3550 "minimum" property). Register "maximum" property correctly,
3551 for the sake of future copy'n'pasters. Remove some cruft
3552 from property get/set functions.
3554 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3556 * plugins/elements/gsttypefindelement.c:
3557 (gst_type_find_element_activate):
3558 Use gst_type_find_helper_get_range() here, so we
3559 can honour the "minimum" property and also emit
3560 the signal with the correct probability of the found caps.
3562 2006-03-02 Tim-Philipp Müller <tim at centricular dot net>
3564 * docs/libs/gstreamer-libs-sections.txt:
3565 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
3566 (helper_find_suggest), (gst_type_find_helper_get_range),
3567 (gst_type_find_helper):
3568 * libs/gst/base/gsttypefindhelper.h:
3569 New API: gst_type_find_helper_get_range() (#333042).
3571 2006-03-02 Michael Smith <msmith@fluendo.com>
3573 * gst/gstregistryxml.c: (load_feature):
3574 Asserting on a failure to read part of the registry is Not Cool.
3575 Just log a warning and return NULL (which is already handled)
3577 2006-02-28 Sebastien Moutte <sebastien@moutte.net>
3579 * win32/common/libgstbase.def:
3580 added export of gst_type_find_helper_for_buffer
3581 * win32/common/libgstbase.def:
3582 added some exports : gst_bin_iterate_elements, gst_iterator_resync,
3583 gst_ghost_pad_get_target
3585 2006-02-28 Wim Taymans <wim@fluendo.com>
3587 * docs/design/draft-klass.txt:
3589 Added Connector to mark elements that are only used to
3590 allow pipeline connections.
3591 Moved Debug to extra feature since most of them are
3592 functionally something else.
3594 2006-02-28 Wim Taymans <wim@fluendo.com>
3596 * docs/design/draft-klass.txt:
3597 Some updates and clarifications.
3599 2006-02-28 Wim Taymans <wim@fluendo.com>
3601 * docs/design/draft-klass.txt:
3602 Proposal for klass field values.
3604 * docs/design/part-streams.txt:
3605 Start of a doc describing stream anatomy.
3607 2006-02-28 Wim Taymans <wim@fluendo.com>
3609 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
3610 Help the compiler a bit with type registration.
3611 Use existing forward cod path instead of duplicating it when
3614 * gst/gstbus.c: (gst_bus_get_type):
3615 * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
3616 * gst/gstchildproxy.c: (gst_child_proxy_get_type):
3617 * gst/gstclock.c: (gst_clock_get_type):
3618 * gst/gstelement.c: (gst_element_get_type),
3619 * gst/gstelementfactory.c: (gst_element_factory_get_type):
3620 * gst/gstindexfactory.c: (gst_index_factory_get_type):
3621 * gst/gstminiobject.c: (gst_mini_object_get_type):
3622 * gst/gstpad.c: (gst_pad_get_type):
3623 * gst/gstsegment.c: (gst_segment_get_type):
3624 * gst/gststructure.c: (gst_structure_get_type):
3625 * gst/gstsystemclock.c: (gst_system_clock_get_type):
3626 * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
3628 Help compiler with type registration.
3630 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
3633 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3635 * plugins/elements/gsttypefindelement.c:
3636 (gst_type_find_element_handle_event):
3637 When we get an EOS event and have not found a type yet
3638 (most likely because we had not yet accumulated
3639 TYPE_FIND_MIN_SIZE of data yet), try to determine the
3640 type given the data we have so far. Fixes typefinding
3641 for very short streams again, most notably quicktime
3642 redirections as used on Apple's trailer site (#331701).
3644 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3646 * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
3647 (gst_type_find_helper):
3648 Try typefinding factories with the highest rank first.
3650 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3652 * docs/libs/gstreamer-libs-docs.sgml:
3653 * docs/libs/gstreamer-libs-sections.txt:
3654 * libs/gst/base/gsttypefindhelper.c:
3655 Add section for typefind helper and add documentation
3656 for the old and the new function.
3658 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3660 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
3661 (buf_helper_find_suggest), (type_find_factory_rank_cmp),
3662 (gst_type_find_helper_for_buffer):
3663 * libs/gst/base/gsttypefindhelper.h:
3664 New API: gst_type_find_helper_for_buffer() (#332723).
3666 2006-02-27 Michael Smith <msmith@fluendo.com>
3668 Patch by: Loïc Minier
3672 * docs/slides/Makefile.am:
3673 prevent CVS directories getting disted.
3675 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3677 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
3678 Use the REFCOUNTING category for caps refcounting.
3680 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
3682 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
3683 This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
3685 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
3687 * plugins/elements/gsttypefindelement.c:
3688 (gst_type_find_element_activate):
3689 Use gst_pad_check_pull_range() before _activate_pull()
3690 to avoid unnecessary open/close (see #331690).
3692 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
3695 Docs enhancement: make it crystal clear what the
3696 gst_pad_add_*_probe() callbacks should look like.
3698 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
3700 * libs/gst/base/gstbasesrc.c:
3701 Document how applications can stop recording from
3702 live sources (see #330996).
3704 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3706 * tests/check/Makefile.am:
3707 * tests/check/libs/basesrc.c: (eos_event_counter),
3708 (basesrc_eos_events_pull), (basesrc_eos_events_push),
3709 (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
3710 (gst_basesrc_suite), (main):
3711 ... and add some tests for the base source EOS stuff.
3713 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3715 * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
3716 Test case originally showed the problem fixed below,
3717 but was then amended. Add checks back at the place
3718 where they used to be.
3720 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3722 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3723 (gst_base_src_init), (gst_base_src_loop),
3724 (gst_base_src_activate_push), (gst_base_src_activate_pull),
3725 (gst_base_src_change_state):
3726 * libs/gst/base/gstbasesrc.h:
3727 Don't unconditionally send EOS when going from PAUSED to
3728 READY state, esp. make sure we don't send two EOS events
3729 in some cases (e.g. one when reaching EOS and one when
3730 going from PAUSED to READY). Also, we don't want to send
3731 EOS events when operating in pull mode. However, we do
3732 want to send an EOS event when shutting down a live
3733 source explicitly, for example (fixes #330996).
3735 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3737 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3738 Update src->read_position after a seek when not using mmap.
3739 Fixes #332277, patch by: Renchi Raju <renchi gmail com>
3741 2006-02-21 Jan Schmidt <thaytan@mad.scientist.com>
3747 Make things work with --disable-parse as they do with
3748 --disable-load-save - the symbols involved disappear, but the
3749 header is still installed and GST_DISABLE_PARSE is included via
3752 2006-02-20 Julien MOUTTE <julien@moutte.net>
3754 * libs/gst/base/gstbasetransform.c:
3755 (gst_base_transform_change_state): Fix a stupid bug. I was
3756 sure I compiled that.
3758 2006-02-20 Julien MOUTTE <julien@moutte.net>
3760 * gst/gstpad.c: (gst_pad_set_blocked_async):
3761 * gst/gstutils.c: (gst_pad_add_data_probe),
3762 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3763 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3764 (gst_pad_remove_buffer_probe): Make those function act on the
3765 ghostpad target when it's a ghostpad. (Closes #331727)
3767 2006-02-20 Julien MOUTTE <julien@moutte.net>
3769 * libs/gst/base/gstbasetransform.c:
3770 (gst_base_transform_change_state): Make basetransform reusable.
3773 2006-02-20 Jan Schmidt <thaytan@mad.scientist.com>
3775 * docs/random/release:
3776 Move the current documentation of how to do a release to the top
3779 * gst/gstbin.c: (gst_bin_class_init),
3780 (gst_bin_handle_message_func):
3781 Allow multiple state-recalculation threads. (Closes #328873)
3783 2006-02-19 Julien MOUTTE <julien@moutte.net>
3785 * gst/gstinfo.h: Add GST_STR_NULL to the second string.
3786 * gst/gstpad.c: (gst_pad_set_event_function),
3787 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3788 (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
3789 2 strings. You can't use the STR_NULL macro on that.
3791 2006-02-19 Sebastien Moutte <sebastien@moutte.net>
3793 * gst/gstpad.c: (gst_pad_set_event_function),
3794 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3795 (gst_pad_set_getcaps_function)
3796 * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
3797 Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
3798 So now, we can use --gst-debug-level=5 on Windows
3799 * win32/common/libgstcontroller.def:
3800 Added export of gst_controller_init
3801 * win32/vs6/libgstcontroller.dsp:
3802 Fixed Release post build configuration
3804 2006-02-17 Wim Taymans <wim@fluendo.com>
3806 * tests/check/gst/gstquery.c: (GST_START_TEST):
3807 Added another check.
3809 2006-02-15 Tim-Philipp Müller <tim at centricular dot net>
3811 * plugins/elements/gsttypefindelement.c: (find_peek):
3812 We can do peeks at non-zero offsets, as long as they
3813 fall within the buffer we have.
3815 2006-02-15 Jan Schmidt <thaytan@mad.scientist.com>
3817 * tests/check/Makefile.am:
3818 * tests/check/pipelines/parse-launch.c: (setup_pipeline),
3819 (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
3820 (parse_suite), (main):
3821 Add testsuite for parse launch syntax
3823 2006-02-14 Tim-Philipp Müller <tim at centricular dot net>
3825 * plugins/elements/gsttypefindelement.c:
3826 (gst_type_find_element_chain):
3827 When typefinding is unsuccessful in the chain function, don't
3828 error out immediately. Only error out with NO_CAPS_FOUND if
3829 the amount of data is at least MAX_TYPEFIND_SIZE bytes,
3830 otherwise simply wait for more data so we can try typefinding
3831 again with more data later. Also, don't attempt to typefind
3832 if we have less than MIN_TYPEFIND_SIZE data available. Overall,
3833 this should improve typefinding from network sources where the
3834 size of the first buffer can be somewhat random.
3836 2006-02-14 Wim Taymans <wim@fluendo.com>
3838 * docs/gst/gstreamer-sections.txt:
3839 * gst/gstpadtemplate.c:
3840 * gst/gstpadtemplate.h:
3841 Fix padtemplate docs, fixes #328805.
3843 2006-02-14 Wim Taymans <wim@fluendo.com>
3845 * tools/gst-launch.c: (main):
3846 NO_PREROLL is not an ERROR so don't send confusing messages
3849 2006-02-14 Wim Taymans <wim@fluendo.com>
3851 Patch by: Torsten Schoenfeld
3853 * gst/gstregistry.c: (gst_registry_get_default),
3854 (_gst_registry_cleanup):
3855 Protect default registry with lock and ref/sink it.
3858 2006-02-14 Wim Taymans <wim@fluendo.com>
3861 * gst/gstquery.c: (gst_query_list_add_format),
3862 (gst_query_set_formatsv), (gst_query_parse_formats_length),
3863 (gst_query_parse_formats_nth):
3864 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
3867 2006-02-14 Wim Taymans <wim@fluendo.com>
3869 * docs/gst/gstreamer-sections.txt:
3870 Reworked query docs.
3872 * gst/gstquery.c: (gst_query_new_formats),
3873 (gst_query_list_add_format), (gst_query_set_formats),
3874 (gst_query_set_formatsv), (gst_query_parse_formats_length),
3875 (gst_query_parse_formats_nth):
3877 Flesh out formats query, added some new methods.
3878 Fix part of #324398.
3880 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
3881 Added query creation tests.
3883 2006-02-14 Jan Schmidt <thaytan@mad.scientist.com>
3885 * gst/gstpad.c: (fixate_value):
3886 Add a default fixation for fraction lists.
3888 2006-02-13 Wim Taymans <wim@fluendo.com>
3890 * gst/gsttask.c: (gst_task_init), (gst_task_func),
3891 (gst_task_set_lock), (gst_task_start), (gst_task_pause),
3894 Detect and warn for obvious deadlocks. fixes #320340
3895 Fix error case where lock was not released.
3897 * tests/check/Makefile.am:
3898 * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
3899 (task_func), (gst_element_suite), (main):
3902 2006-02-13 Wim Taymans <wim@fluendo.com>
3904 * docs/gst/gstreamer-sections.txt:
3906 Add new functions to docs.
3908 2006-02-13 Wim Taymans <wim@fluendo.com>
3910 * docs/design/part-TODO.txt:
3911 Updated TODO list, basesrc supports seeking to non-bytes
3914 * docs/design/part-element-sink.txt:
3917 * gst/gstbin.c: (bin_replace_message),
3918 (gst_bin_handle_message_func):
3919 * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
3920 * gst/gstevent.c: (gst_event_finalize):
3921 * gst/gstpad.c: (gst_pad_event_default_dispatch),
3922 (gst_pad_send_event):
3923 Use shiny new _TYPE_NAME macros.
3925 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
3926 Move debug statement up.
3928 * gst/gstelement.c: (gst_element_set_locked_state):
3931 2006-02-13 Tim-Philipp Müller <tim at centricular dot net>
3933 * docs/gst/gstreamer-sections.txt:
3936 New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
3937 macros (#330906). Also, document the already existing
3938 GST_QUERY_TYPE macro.
3940 2006-02-13 Wim Taymans <wim@fluendo.com>
3942 * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
3943 (event_probe), (GST_START_TEST):
3944 Only events up to the pipeline EOS are counted, there are
3945 some more when going to NULL currently which we don't care
3948 2006-02-13 Wim Taymans <wim@fluendo.com>
3950 * gst/gstpad.c: (gst_pad_send_event):
3951 Correctly check flushing and emit probes. fixes #330125
3953 2006-02-10 Andy Wingo <wingo@pobox.com>
3955 * gst/gstbus.c (gst_bus_class_init): Declare our private data
3957 (gst_bus_init): Cache the location of the private data in the
3959 (gst_bus_enable_sync_message_emission)
3960 (gst_bus_disable_sync_message_emission): Implement new public
3962 (gst_bus_post): Emit the sync-message signal if the user asked for
3965 * gst/gstbus.h (GstBus): Use a padding pointer to cache the
3966 location of the bus-private structure.
3967 (gst_bus_enable_sync_message_emission)
3968 (gst_bus_disable_sync_message_emission): API addition
3970 2006-02-10 Jan Schmidt <thaytan@mad.scientist.com>
3972 Patch by: Vincent Torri
3974 * docs/pwg/building-boiler.xml:
3975 PWG patch from #326800
3977 2006-02-09 Tim-Philipp Müller <tim at centricular dot net>
3981 * docs/design/Makefile.am:
3984 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3989 === release 0.10.3 ===
3991 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3994 releasing 0.10.3, "Like a virgin"
3996 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3999 2nd prerelease of 0.10.3
4000 Bump libtool versioning.
4002 2006-02-07 Andy Wingo <wingo@pobox.com>
4004 * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
4005 update last_stop if we're in TIME format and the timestamp is
4008 * libs/gst/base/gstcollectpads.c (gst_collect_pads_event)
4009 * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc):
4010 * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
4011 If we get a new newsegment with a different format, adapt
4014 * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
4015 of 0. Not a problem, really.
4017 * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
4020 2006-02-06 Jan Schmidt <thaytan@mad.scientist.com>
4025 2006-02-06 Sebastien Moutte <sebastien@moutte.net>
4028 project files updated to the default vs7 configuration
4029 * win32/common/libgstbase.def:
4030 * win32/common/libgstreamer.def:
4032 removed empty lines,
4033 sorted all exported symbols alphabetically
4034 * win32/common/dirent.c:
4035 * win32/common/dirent.h:
4036 * win32/common/gchar.h:
4037 use windows line end.
4039 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
4041 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
4042 Send EOS event when stopping.
4044 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
4047 Tell folks what to do if the plugin-foobar.xml file
4048 hasn't been generated for a newly-added plugin.
4050 2006-02-05 Julien MOUTTE <julien@moutte.net>
4052 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
4053 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
4054 (gst_collect_pads_start), (gst_collect_pads_stop),
4055 (gst_collect_pads_event): Collectpads now holds a reference
4056 to the GstPad that was added. Indeed we don't want to look
4057 at pads that might just go away with no warning...
4059 2006-02-05 Julien MOUTTE <julien@moutte.net>
4061 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
4062 (gst_collect_pads_start), (gst_collect_pads_stop),
4063 (gst_collect_pads_event), (gst_collect_pads_chain):
4064 * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
4065 Mark Nauwelaerts's patch on bug #328491.
4067 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
4069 * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
4071 Add some simple tests for gst_parse_bin_from_description() and
4072 gst_bin_find_unconnected_pad() (#329069).
4074 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
4076 * tools/gst-launch.c: (event_loop), (main):
4077 Catch errors during preroll (#320084).
4079 2006-02-03 Tim-Philipp Müller <tim at centricular dot net>
4081 * plugins/elements/gsttypefindelement.c:
4082 (gst_type_find_element_activate):
4083 Post TYPE_NOT_FOUND error message when typefinding
4084 is unsuccessful in the activate function as well.
4086 2006-02-02 Wim Taymans <wim@fluendo.com>
4088 * docs/design/part-element-sink.txt:
4091 2006-02-02 Wim Taymans <wim@fluendo.com>
4093 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
4094 (gst_base_sink_render_object),
4095 (gst_base_sink_queue_object_unlocked):
4096 Only keep track of prerollable items when we are
4098 Before rendering after preroll, always check if we
4100 Added some more debugging.
4102 2006-02-02 Wim Taymans <wim@fluendo.com>
4104 * gst/gstelement.c: (gst_element_continue_state),
4105 (gst_element_set_state_func), (gst_element_change_state):
4106 Fixed #326576, been running this for quite some time with
4107 no regressions at all.
4109 2006-02-02 Wim Taymans <wim@fluendo.com>
4112 Added more suppressions
4114 2006-02-02 Wim Taymans <wim@fluendo.com>
4116 * docs/design/part-element-sink.txt:
4119 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
4120 (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
4121 (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
4122 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
4123 (gst_base_sink_do_sync), (gst_base_sink_render_object),
4124 (gst_base_sink_preroll_object),
4125 (gst_base_sink_queue_object_unlocked),
4126 (gst_base_sink_queue_object), (gst_base_sink_event),
4127 (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
4128 (gst_base_sink_loop), (gst_base_sink_activate_pull),
4129 (gst_base_sink_get_position), (gst_base_sink_change_state):
4130 * libs/gst/base/gstbasesink.h:
4131 Totally refactored matching the design doc.
4132 Use two segments, one to clip incomming buffers and another to
4134 Handle queueing correctly, bypass the queue when playing.
4135 Make EOS cancelable.
4136 Handle errors correctly when operating in pull based mode.
4138 * tests/check/elements/fakesink.c: (GST_START_TEST),
4140 Added new check for sinks.
4142 2006-02-02 Wim Taymans <wim@fluendo.com>
4144 * gst/gstsegment.c: (gst_segment_clip):
4145 No reason to refuse to clip when start == -1
4147 2006-02-02 Stefan Kost <ensonic@users.sf.net>
4150 * docs/manual/intro-basics.xml:
4151 * docs/manual/intro-preface.xml:
4152 * docs/manual/manual.xml:
4153 * docs/pwg/advanced-dparams.xml:
4154 * docs/pwg/intro-basics.xml:
4155 * docs/pwg/intro-preface.xml:
4157 describe dparams (controller) for plugins
4158 unify docs a little more
4160 2006-02-02 Tim-Philipp Müller <tim at centricular dot net>
4162 * docs/gst/gstreamer-sections.txt:
4163 * gst/gstutils.c: (element_find_unconnected_pad),
4164 (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
4166 Add new API: gst_parse_bin_from_description() and
4167 gst_bin_find_unconnected_pad() (#329069).
4169 2006-02-01 Stefan Kost <ensonic@users.sf.net>
4171 * docs/manual/README:
4172 uncover a nasty detail of the docs build
4174 2006-01-31 Wim Taymans <wim@fluendo.com>
4176 * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
4177 Don't cache duration messages if we're not going to use or
4180 2006-01-31 Stefan Kost <ensonic@users.sf.net>
4182 * docs/manual/advanced-dparams.xml:
4183 * docs/pwg/advanced-dparams.xml:
4187 * libs/gst/controller/lib.c: (gst_controller_init):
4190 2006-01-31 Thomas Vander Stichele <thomas at apestaart dot org>
4192 * gst/gstelement.c: (gst_element_message_full):
4193 also show file/line/func if no additional debug was given
4195 2006-01-31 Sebastien Moutte <sebastien@moutte.net>
4197 * win32/vs7/grammar.vcproj:
4198 activate copy of autogenerated files for Release mode
4200 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
4202 * win32/common/libgstreamer.def:
4203 export gst_value_compare
4205 2006-01-30 Jan Schmidt <thaytan@mad.scientist.com>
4207 * plugins/elements/Makefile.am:
4208 * plugins/elements/gstelements.c:
4209 * plugins/elements/gstfdsink.c: (_do_init),
4210 (gst_fd_sink_base_init), (gst_fd_sink_class_init),
4211 (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
4212 (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
4213 (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
4214 (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
4215 (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
4216 (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
4217 * plugins/elements/gstfdsink.h:
4218 Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
4220 2006-01-30 Stefan Kost <ensonic@users.sf.net>
4222 * docs/manual/advanced-dparams.xml:
4224 * docs/manual/advanced-position.xml:
4225 * docs/manual/basics-init.xml:
4226 * docs/manual/manual.xml:
4227 * docs/manual/titlepage.xml:
4229 * docs/pwg/titlepage.xml:
4230 cleanup xml (more to come)
4231 * libs/gst/controller/gstcontroller.c:
4234 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
4236 * win32/vs6/grammar.dsp:
4237 add autogen of gstmarshal.c,h for Release mode
4239 2006-01-30 Wim Taymans <wim@fluendo.com>
4241 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
4242 (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
4243 (gst_base_sink_handle_object), (gst_base_sink_event),
4244 (gst_base_sink_is_prerolled), (gst_base_sink_wait),
4245 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
4246 (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
4247 (gst_base_sink_deactivate), (gst_base_sink_activate),
4248 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
4249 (gst_base_sink_query), (gst_base_sink_change_state):
4250 Basesink cleanups, remove some old code.
4251 Handle the case where a subclass can preroll in the render
4252 method (mostly audiosinks).
4254 Remove some locks around variables that are now protected
4255 with the PREROLL_LOCK (clock_id, flushing, ..).
4256 Optimize position query some more, do correct locking.
4257 Remove old code to push queue in state change, this is not
4258 needed anymore since preroll blocks on all prerollable items
4260 Almost implemented as described in design doc.
4262 2006-01-30 Wim Taymans <wim@fluendo.com>
4264 * tests/check/gst/gstbin.c: (GST_START_TEST):
4265 Wait for refcount to settle down before checking.
4267 2006-01-30 Wim Taymans <wim@fluendo.com>
4269 * docs/design/part-element-sink.txt:
4270 Pseudo code overview of desired sink behaviour regarding
4273 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
4274 * win32/vs6/grammar.dsp:
4275 fix some bugs in Release mode for autogenerated files
4277 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
4278 * win32/common/libgstbase.def:
4279 * win32/common/libgstreamer.def:
4280 export some new symbols: gst_base_src_set_format,
4281 gst_iterator_next, gst_structure_set_valist
4283 2006-01-29 Julien MOUTTE <julien@moutte.net>
4285 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
4286 Set pad functions unconditionally. Fixes #329105.
4288 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
4290 add vs8 project files created by Sergey Scobich
4292 2006-01-28 Jan Schmidt <thaytan@mad.scientist.com>
4294 * gst/gstutils.c: (gst_element_unlink_pads):
4295 Don't leak pad references.
4297 * tests/check/elements/fakesink.c: (GST_START_TEST):
4298 * tests/check/generic/sinks.c: (GST_START_TEST):
4299 * tests/check/generic/states.c: (GST_START_TEST):
4300 * tests/check/gst/gstbin.c: (GST_START_TEST):
4301 * tests/check/gst/gstcaps.c: (GST_START_TEST):
4302 * tests/check/gst/gstelement.c: (GST_START_TEST):
4303 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
4304 * tests/check/gst/gstiterator.c: (GST_START_TEST):
4305 * tests/check/gst/gstvalue.c: (GST_START_TEST):
4306 Fix a bunch of leaks. Make generic/sinks.c
4307 use a bit less cpu by slowing the buffer rate
4308 between fakesrc and fakesink.
4310 2006-01-27 Stefan Kost <ensonic@users.sf.net>
4312 * gst/gstelement.c: (gst_element_send_event):
4315 * gst/gstiterator.c:
4316 * gst/gstiterator.h:
4317 * gst/gstpad.c: (gst_pad_send_event):
4318 * gst/gststructure.c:
4322 * libs/gst/base/gstadapter.c:
4323 doc fixes, to link to function, just write gst_cool_function(), don't
4326 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
4328 * plugins/elements/gsttee.c: (gst_tee_do_push),
4329 (gst_tee_handle_buffer):
4330 Always prefer an actual return value from a src
4331 pad in place of NOT_LINKED. This means we return
4332 WRONG_STATE when all src pads are WRONG_STATE
4333 instead of NOT_LINKED.
4335 Lock when replacing the last message to prevent
4336 racing with the get_property method.
4340 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
4342 * tests/check/Makefile.am:
4343 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
4345 Add a very simple check that should have caught the memleak I fixed
4346 last night (if not for the slice allocator hiding it)
4348 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
4350 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
4351 (gst_bin_remove_func), (gst_bin_handle_message_func),
4352 (bin_query_duration_fold), (bin_query_generic_fold):
4353 Clean up references to the clock provider when disposed or when
4354 handling a clock-lost message from it.
4356 Unref sinks when performing a query via gst_iterator_fold, as the
4357 gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
4359 * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
4360 (gst_clock_set_master):
4361 Drop our reference to the master clock, if any, when we are disposed.
4363 * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
4364 Chain up in dispose.
4366 2006-01-26 Wim Taymans <wim@fluendo.com>
4368 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
4371 2006-01-26 Julien MOUTTE <julien@moutte.net>
4373 * plugins/elements/gsttee.c: (gst_tee_do_push),
4374 (gst_tee_handle_buffer): Apply patch from #328715. Tee now
4375 handles pad being NOT_LINKED or in WRONG_STATE.
4377 2006-01-26 Stefan Kost <ensonic@users.sf.net>
4382 2006-01-26 Stefan Kost <ensonic@users.sf.net>
4385 remove obsolete entry
4387 2006-01-26 Stefan Kost <ensonic@users.sf.net>
4389 * docs/gst/gstreamer-sections.txt:
4390 * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
4391 (gst_bin_iterate_sources), (gst_bin_send_event):
4393 * gst/gstelement.c: (gst_element_send_event):
4395 * gst/gstpad.c: (gst_pad_send_event):
4396 added code for downstream events, reviewed docs in gstevent.c
4398 2006-01-25 Julien MOUTTE <julien@moutte.net>
4400 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
4401 We only query position using the clock in the playing state.
4402 Query peer in the other cases.
4403 * win32/common/config.h: Updates.
4405 2006-01-24 Wim Taymans <wim@fluendo.com>
4407 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4408 A clock entry that is scheduled for the exact time of the
4409 clock is still in time.
4411 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4412 (gst_base_sink_do_sync):
4413 Add some more debug info.
4415 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
4418 Add new vs7 project files and solution.
4420 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
4423 all files removed as they were out-dated.
4425 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
4427 * docs/random/release:
4429 * gst/gstbin.c: (gst_bin_init):
4430 * gst/gstbus.c: (gst_bus_new):
4432 * gst/gstpipeline.c: (gst_pipeline_init):
4433 use gst_bus_new(), improve logging, fix docs
4434 * win32/common/config.h:
4435 update for cvs build
4437 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
4440 up required version of automake to 1.7
4442 2006-01-20 Sebastien Moutte <sebastien@moutte.net>
4444 * win32/common/libgstreamer.def:
4445 export gst_buffer_is_metadata_writable
4447 2006-01-20 Tim-Philipp Müller <tim at centricular dot net>
4449 * docs/gst/gstreamer-sections.txt:
4451 Add gst_event_replace() (#327001)
4453 2006-01-20 Wim Taymans <wim@fluendo.com>
4455 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
4456 Make it actually compile too..
4458 2006-01-20 Wim Taymans <wim@fluendo.com>
4461 Clarify behaviour of _is_equal() when passing NULL parameters.
4463 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
4465 Cleanups. Don't unref NULL caps.
4466 When setting the same caps, protect caps of the pad with
4468 Use full functionality of _is_equal() when comparing caps.
4470 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
4472 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
4473 Don't loop infinitely if there are no buffers to present. Partially
4474 fixes #327197, but collectpads is just broken for reusing elements
4475 to do multiple encodes atm.
4477 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
4479 * tools/gst-inspect.c: (print_element_features):
4480 * tools/gst-xmlinspect.c: (main):
4481 URL_HANDLER is not a plugin feature we can search for in
4484 2006-01-19 Edward Hervey <edward@fluendo.com>
4486 * gst/gstelement.c: (gst_element_pads_activate):
4487 When activating, do src pads first, then sink pads.
4488 When de-activating, do sink pads first, then src pads.
4490 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4492 * docs/gst/gstreamer-sections.txt:
4493 Add gst_index_add_associationv to the docs
4495 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4500 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
4501 (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
4502 Do some refactoring. Doesn't actually change functionality,
4503 but makes landing the DRAIN event easier later.
4505 2006-01-19 Tim-Philipp Müller <tim at centricular dot net>
4507 * docs/pwg/advanced-scheduling.xml:
4508 Update from 0.9.x to 0.10 API and make example a bit
4511 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4513 * docs/gst/gstreamer-sections.txt:
4514 Add gst_buffer_(is|make)_metadata_writable methods.
4516 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4518 * docs/design/part-sparsestreams.txt:
4519 Update sparse streams doc, hopefully for greater clarity
4521 2006-01-18 Jan Schmidt <thaytan@mad.scientist.com>
4523 * docs/design/part-events.txt:
4524 Remove mention of FILLER events.
4527 * docs/design/part-sparsestreams.txt:
4528 Write some things about using NEWSEGMENT to keep sparse streams
4531 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
4533 * gst/gstbin.c: (gst_bin_dispose):
4534 Guard gst_object_unref call against a NULL object (dispose
4535 can theoretically be called multiple times).
4537 2006-01-18 Wim Taymans <wim@fluendo.com>
4539 * gst/gstbin.c: (gst_bin_element_set_state):
4540 * gst/gstclock.c: (gst_clock_id_wait):
4541 Added some more debug info.
4543 * libs/gst/base/gstadapter.c:
4546 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4547 (gst_base_sink_do_sync), (gst_base_sink_chain):
4548 Added some comments.
4550 2006-01-18 Wim Taymans <wim@fluendo.com>
4552 * tests/check/Makefile.am:
4553 * tests/check/elements/fakesink.c: (chain_async_buffer),
4554 (chain_async), (chain_async_return), (GST_START_TEST),
4555 (fakesink_suite), (main):
4556 Added fakesink test that checks prerolling and clipping
4559 * tests/check/gst/gstutils.c: (GST_START_TEST):
4560 Make check run faster so that buildbots don't timeout.
4562 2006-01-18 Wim Taymans <wim@fluendo.com>
4564 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4565 (gst_base_sink_do_sync):
4567 When the sink finishes blocking on the preroll buffer, it can
4568 immediatly render it instead of rendering when the next buffer
4571 2006-01-18 Wim Taymans <wim@fluendo.com>
4573 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
4574 (gst_base_sink_get_property), (gst_base_sink_do_sync),
4575 (gst_base_sink_chain):
4577 GST_ELEMENT_CLOCK and sync are protected with LOCK.
4578 Don't store _last_stop if the buffer is dropped.
4580 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
4582 * plugins/elements/gsttypefindelement.c:
4583 (gst_type_find_element_class_init):
4584 'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
4585 object method handler that sets the caps on the pad and we want
4586 that to happen before we emit the signal (fixes e.g. feeding a
4587 plain text file to decodebin).
4589 2006-01-18 Christian Schaller <Christian@fluendo.com>
4591 * gst/gstplugin.c: Add MPL and Proprietary as license options
4593 2006-01-18 Andy Wingo <wingo@pobox.com>
4595 * gst/gstindex.h (gst_index_add_associationv): Add to header. The
4596 symbol was exported before, it appears this was just an oversight.
4598 Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
4600 * gst/gstindex.c (gst_index_add_associationv): Changed int in
4601 prototype to gint. OK since this prototype was not in the header.
4603 2006-01-17 Andy Wingo <wingo@pobox.com>
4605 * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
4606 registry while we remove plugins.
4608 * tools/gst-inspect.c (print_element_info): Don't unref the
4609 factory arg, that should be the responsibility of whatever code
4610 received the ref. Fixes a double-free when called from
4611 print_element_list via gst-inspect-0.10 -a. Fixes #327324.
4612 (main): Unref the factory if we have one.
4613 (print_element_list): No change -- relies on the
4614 plugin_feature_list_free to free the list of features.
4616 2006-01-17 Jan Schmidt <thaytan@mad.scientist.com>
4618 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
4619 (gst_buffer_make_metadata_writable):
4621 * libs/gst/base/gstbasetransform.c:
4622 (gst_base_transform_prepare_output_buf):
4623 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4624 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4625 Replace gst_buffer_(make|is)_metadata_writable patch now
4626 that the release is out.
4628 2006-01-17 Andy Wingo <wingo@pobox.com>
4630 * gst/gstregistry.c: Reflow design comment. Update so as to speak
4631 in the present tense without reference to versions.
4633 * gst/gstregistry.c (gst_registry_add_plugin)
4634 (gst_registry_remove_plugin, gst_registry_remove_feature)
4635 (gst_registry_find_feature, gst_registry_get_feature_list)
4636 (gst_registry_get_plugin_list, gst_registry_lookup_feature)
4637 (gst_registry_lookup, gst_registry_scan_path)
4638 (_gst_registry_remove_cache_plugins)
4639 (gst_registry_get_feature_list_by_plugin): Add argument
4642 === release 0.10.2 ===
4644 2006-01-16 Thomas Vander Stichele <thomas at apestaart dot org>
4647 releasing 0.10.2, "If man is five"
4649 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4653 * libs/gst/base/gstbasetransform.c:
4654 (gst_base_transform_prepare_output_buf):
4655 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4656 * tests/check/gst/gstbuffer.c: (gst_test_suite):
4657 Back out patch until after the release.
4659 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4661 * gst/gstminiobject.c:
4662 Spelling fix in docs.
4663 * ChangeLog - remove conflict indicator
4665 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4667 Reviewed By: Andy Wingo
4669 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
4670 (gst_buffer_make_metadata_writable):
4672 Add gst_buffer_(is|make)_metadata_writable as analogues of
4673 gst_buffer_(is|make)_writable.
4675 * libs/gst/base/gstbasetransform.c:
4676 (gst_base_transform_prepare_output_buf):
4677 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4678 Use name gst_buffer_(is|make)_metadata_writable functions.
4680 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4681 Test gst_buffer_(is|make)_metadata_writable
4685 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
4687 * docs/manual/Makefile.am:
4688 don't do parallel make
4691 * win32/common/config.h.in:
4692 add generations for HOST_CPU and GST_MAJORMINOR
4693 * win32/common/config.h:
4694 commit generated result
4696 2006-01-13 Tim-Philipp Müller <tim at centricular dot net>
4698 * docs/manual/appendix-integration.xml:
4699 Update GNOME integration section to use gst_init_get_option_group()
4700 instead of the old popt stuff (#322911). Also, GNOME applications
4701 should now use gconf*sink and gconf*src instead of the old gconf
4704 2006-01-13 Stefan Kost <ensonic@users.sf.net>
4707 * docs/gst/gstreamer-docs.sgml:
4708 * docs/gst/gstreamer-sections.txt:
4709 * docs/libs/gstreamer-libs-sections.txt:
4710 add new API entries to the docs
4711 * libs/gst/controller/Makefile.am:
4712 * libs/gst/controller/gstcontroller.c:
4713 * libs/gst/controller/gstcontroller.h:
4714 * libs/gst/controller/gstcontrollerprivate.h:
4715 * libs/gst/controller/gsthelper.c:
4716 * libs/gst/controller/gstinterpolation.c:
4717 move private structs to private header
4719 gstreamer-0.7 -> gstreamer-0.10
4720 * tests/check/libs/struct_i386.h:
4721 remove private structs
4723 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
4725 * plugins/indexers/Makefile.am:
4726 Fixes as part of #317048
4728 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
4730 * plugins/indexers/Makefile.am:
4731 fix #316086 - compilation when mmap is missing
4733 2006-01-12 Sebastien Moutte <sebastien@moutte.net>
4735 * libs/gst/base/gstbasesink.c:
4736 *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
4737 *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
4738 * win32/common/config.h:
4739 added some defines GST_MAJORMINOR and HOST_CPU
4740 * win32/common/libgstbase.def:
4741 * win32/common/libgstreamer.def:
4742 added some exported functions.
4744 2006-01-12 Stefan Kost <ensonic@users.sf.net>
4746 * libs/gst/controller/gstcontroller.c:
4747 (gst_controlled_property_set_interpolation_mode),
4748 (gst_controlled_property_new):
4749 * libs/gst/controller/gstcontroller.h:
4750 * libs/gst/controller/gstinterpolation.c:
4751 (interpolate_none_get_string_value_array):
4752 make G_TYPE_STRING controlable
4754 2006-01-12 Stefan Kost <ensonic@users.sf.net>
4757 * tools/gst-feedback.1.in:
4758 * tools/gst-inspect.1.in:
4759 * tools/gst-launch.1.in:
4760 * tools/gst-md5sum.1.in:
4761 * tools/gst-typefind.1.in:
4762 * tools/gst-xmlinspect.1.in:
4763 * tools/gst-xmllaunch.1.in:
4764 cleanup man-pages, remove reference to gst-register, document env-vars
4766 2006-01-12 Jan Schmidt <thaytan@mad.scientist.com>
4768 * gst/gstbuffer.c: (gst_buffer_span):
4769 gst_buffer_span should copy the timestamp of the first buffer
4770 if they were both originally overlapping subbuffers of the
4771 same parent, using the same logic as the 'slow copy' case.
4773 2006-01-11 Jan Schmidt <thaytan@mad.scientist.com>
4775 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
4776 Need to awaken ALL the pads when we pop a buffer, otherwise
4777 collectpads only works when there is 2 input streams.
4779 2006-01-11 Stefan Kost <ensonic@users.sf.net>
4781 * docs/random/ensonic/media-device-daemon.txt:
4784 fix doc example, add clarification
4785 * tools/gst-launch.1.in:
4786 add initial info about GST_PLUGIN_PATH, needs more work
4788 2006-01-11 Tim-Philipp Müller <tim at centricular dot net>
4790 * docs/manual/basics-bins.xml:
4791 * docs/manual/basics-elements.xml:
4792 * docs/manual/intro-basics.xml:
4793 Some more minor docs additions and updates.
4795 2006-01-11 Wim Taymans <wim@fluendo.com>
4797 * docs/manual/basics-bins.xml:
4798 * docs/manual/basics-elements.xml:
4799 Some small fixes as pointed out by Ser-ver on IRC.
4801 2006-01-10 Edward Hervey <edward@fluendo.com>
4803 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
4804 Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
4805 the single-segment mode.
4807 2006-01-10 Brian Cameron <brian dot cameron at sun dot com>
4809 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
4811 * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
4812 (gst_base_src_perform_seek), (gst_base_src_send_event),
4813 (gst_base_src_set_property), (gst_base_src_get_property),
4814 (gst_base_src_loop), (gst_base_src_start),
4815 (gst_base_src_activate_push):
4816 * libs/gst/base/gstbasesrc.h:
4817 Name (private) union; makes Sun's Forte compiler happy (#324900).
4819 2006-01-09 Tim-Philipp Müller <tim at centricular dot net>
4822 gst-register is gone.
4824 2006-01-07 Thomas Vander Stichele <thomas at apestaart dot org>
4826 * gst/gstvalue.c: (_gst_value_initialize):
4827 make the G_TYPE_DATE instantiation work if debug is disabled
4829 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
4831 * gst/gstmessage.c: (gst_message_parse_tag),
4832 (gst_message_parse_error), (gst_message_parse_warning):
4833 Don't crash when return location for error/warning debug
4834 string is NULL; add fact that return locations can be
4835 NULL to docs where appropriate.
4837 2006-01-05 Wim Taymans <wim@fluendo.com>
4839 * gst/gstplugin.c: (gst_plugin_load_file):
4840 Replace strdup by g_strdup.
4842 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
4844 * docs/pwg/advanced-types.xml:
4847 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
4849 submitted by: Abel Cheung
4853 Added Chinese (traditional) translation
4855 2006-01-04 Wim Taymans <wim@fluendo.com>
4857 * docs/manual/basics-pads.xml:
4858 * docs/plugins/Makefile.am:
4859 * docs/plugins/gstreamer-plugins-docs.sgml:
4860 * docs/plugins/gstreamer-plugins-sections.txt:
4861 * docs/pwg/advanced-clock.xml:
4862 * docs/pwg/advanced-scheduling.xml:
4863 * docs/pwg/advanced-types.xml:
4864 * plugins/elements/gstfdsink.c:
4865 * plugins/elements/gstfdsrc.c:
4866 * plugins/elements/gstfdsrc.h:
4867 * plugins/elements/gstidentity.c: (gst_identity_class_init):
4868 * plugins/elements/gstidentity.h:
4869 * plugins/elements/gstqueue.h:
4870 * plugins/elements/gsttee.c:
4871 * plugins/elements/gsttee.h:
4872 * plugins/elements/gsttypefindelement.c:
4873 (gst_type_find_element_class_init):
4874 * plugins/elements/gsttypefindelement.h:
4875 Small updates to various docs.
4876 Added core plugins to docs.
4878 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4881 add a suppression for liboil's uninitialized variable
4883 2006-01-02 James Livingston <jrl at ids dot org dot au>
4885 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
4888 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
4889 macro, so that gcc doesn't complain if the -Wmissing-prototypes
4890 compiler switch is being used (#325429).
4892 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
4894 * gst/gstbin.c: (gst_bin_query):
4895 Disable duration query caching in bins until it gets
4896 fixed (see #324807).
4898 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
4900 * tools/gst-inspect.c: (print_element_properties_info):
4901 Handle properties of POINTER and BOXED type.
4903 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
4905 * gst/gst.c: (init_post):
4906 Init tags stuff and some other things before loading
4907 any static plugins (there may be other static plugins
4908 than just the GStreamer ones, and they may want to
4909 register their own tags or formats or whatever, and
4910 preferably without segfaulting).
4912 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
4913 Print at least a warning in the debug logs if we drop a
4914 query just because we don't know how to adjust the value
4915 in the particular format.
4917 2005-12-24 David Schleef <ds@schleef.org>
4919 * tools/gstreamer-completion:
4920 Replacement for gst-complete written in sh and sed. Only
4921 completes names of features, but that's 90% of what I want
4922 it for. Properties are not available in registry.xml. (Maybe
4925 === release 0.10.1 ===
4927 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
4930 releasing 0.10.1, "Nollaig chridheil"
4932 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
4935 Add missing quote, should be make ERROR_CFLAGS="".
4937 2005-12-20 Wim Taymans <wim@fluendo.com>
4939 * docs/design/part-trickmodes.txt:
4940 More documentation on trickmodes.
4942 2005-12-20 Edward Hervey <edward@fluendo.com>
4944 * gst/gstcaps.c: (gst_static_caps_get_type):
4946 API addition: GST_TYPE_STATIC_CAPS
4947 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
4948 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
4949 * gst/gstpadtemplate.h:
4950 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
4951 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
4954 2005-12-18 Wim Taymans <wim@fluendo.com>
4956 * libs/gst/base/gstadapter.c:
4957 * libs/gst/base/gstadapter.h:
4958 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
4959 (gst_base_sink_get_position):
4960 * libs/gst/base/gstbasesink.h:
4961 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4962 (gst_base_src_default_query), (gst_base_src_default_do_seek),
4963 (gst_base_src_do_seek), (gst_base_src_perform_seek),
4964 (gst_base_src_send_event), (gst_base_src_update_length),
4965 (gst_base_src_get_range), (gst_base_src_loop),
4966 (gst_base_src_start):
4967 * libs/gst/base/gstbasesrc.h:
4968 * libs/gst/base/gstbasetransform.h:
4969 * libs/gst/base/gstcollectpads.h:
4970 * libs/gst/base/gstpushsrc.c:
4971 * libs/gst/base/gstpushsrc.h:
4972 * libs/gst/dataprotocol/dataprotocol.c:
4973 * libs/gst/dataprotocol/dataprotocol.h:
4974 * libs/gst/net/gstnetclientclock.h:
4975 * libs/gst/net/gstnettimeprovider.h:
4976 Documentation updates.
4978 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
4980 * docs/manual/basics-helloworld.xml:
4981 Remove superfluous closing bracket in helloworld example.
4983 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
4985 * tools/gst-launch.1.in:
4986 Update gst-launch man page; add a section with useful
4987 environment variables. Fixes #323882.
4989 2005-12-16 Stefan Kost <ensonic@users.sf.net>
4992 * gst/gst_private.h:
4993 change some char* into char[]
4995 2005-12-16 Wim Taymans <wim@fluendo.com>
4997 * gst/gstregistryxml.c: (load_feature):
4999 Don't use g_object_unref on GstObjects so that we avoid
5000 leaks on unsafe glibs.
5002 2005-12-16 Wim Taymans <wim@fluendo.com>
5004 * gst/gstbin.c: (gst_bin_recalc_state):
5007 2005-12-16 Wim Taymans <wim@fluendo.com>
5010 Added make forever target for check.
5012 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
5014 * gst/gst.c: (init_post):
5015 make the registry cache file HOST_CPU-dependent
5017 2005-12-16 Andy Wingo <wingo@pobox.com>
5019 * plugins/elements/gstbufferstore.c
5020 (gst_buffer_store_cleared_func): Pay attention to g_list_append
5023 * tests/check/gst/gstobject.c
5024 (test_fake_object_name_threaded_unique): Pay attention to
5025 g_list_sort return value.
5027 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
5029 * tools/gst-feedback-m.m:
5030 Update for 0.9/0.10 (fixes #323870).
5032 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
5034 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
5035 Fix lcopy for mini objects, the mini object needs to be ref'ed.
5037 * tests/check/gst/gstminiobject.c: (my_foo_init),
5038 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
5039 (test_value_collection), (gst_mini_object_suite):
5040 Add test to ensure refcounts end up as expected when passing
5041 GstMiniObjects through g_object_get() and g_object_set().
5043 2005-12-14 Julien MOUTTE <julien@moutte.net>
5045 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
5046 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
5047 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
5048 of collectpads. This version removes a lot of races without
5049 touching API/ABI. Yay !
5051 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
5053 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
5054 Don't allow activation of a srcpad in pull_range if it has no
5056 Change some debug statements to be a little clearer
5058 * plugins/elements/gsttypefindelement.c:
5059 (gst_type_find_handle_src_query):
5060 Check that we have a peer before executing queries thereupon.
5062 * tests/examples/metadata/read-metadata.c: (message_loop):
5063 Use gst_bus_pop instead of gst_bus_poll when we just want it to
5064 immediately return us any available message with 0 timeout.
5066 2005-12-12 Michael Smith <msmith@fluendo.com>
5068 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
5069 Don't unref factories after calling them.
5070 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
5071 * plugins/elements/gsttypefindelement.c:
5072 (gst_type_find_element_chain):
5073 Free lists of factories after using them. Fixing typefinding memory
5076 2005-12-12 Stefan Kost <ensonic@users.sf.net>
5078 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
5079 (gst_plugin_feature_load):
5080 more meaningful debug output
5082 * tests/Makefile.am:
5083 * tests/old/examples/Makefile.am:
5084 make make distcheck happy again
5086 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
5088 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
5089 Catch the special case where we are operating chain-based,
5090 but the downstream peer pad has no chain function. Emit a
5091 custom error message in this case instead of letting the
5092 core generate one implying that this is some sort of core
5093 bug. It's not, it just means that whatever got plugged
5094 into the pipeline downstream when we announced the type
5095 can only operate pull-based, while our source can only
5096 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
5097 Error string has not been marked for translation yet, as
5098 it probably needs some more work first.
5100 (gst_type_find_element_get_best_possibility):
5101 Add helper function to find the best of all available
5102 found possibilities that qualify given the min. threshold.
5104 (gst_type_find_element_handle_event):
5105 Fix the case where we get an EOS while still in TYPEFIND
5106 mode (we want to chose the best of all possible types,
5107 not just the first type that happens to be in our unsorted
5108 list of possible types).
5110 (gst_type_find_element_chain):
5111 Make sure we return GST_FLOW_ERROR when we errored out
5112 in stop_typefinding(); also, don't just find the best of
5113 all found type entries and then use the last examined
5114 type entry, but actually use the best entry.
5116 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
5118 * tests/examples/typefind/typefind.c: (type_found):
5119 * tests/examples/xml/runxml.c: (xml_loaded):
5120 More gcc4 fixes and a mem leak fix.
5122 2005-12-12 Stefan Kost <ensonic@users.sf.net>
5124 * tests/examples/xml/createxml.c: (object_saved):
5127 2005-12-12 Stefan Kost <ensonic@users.sf.net>
5129 * tests/Makefile.am:
5130 enable the examples even more
5132 2005-12-12 Andy Wingo <wingo@pobox.com>
5134 * libs/gst/net/gstnettimeprovider.c
5135 (gst_net_time_provider_class_init, gst_net_time_provider_init)
5136 (gst_net_time_provider_set_property)
5137 (gst_net_time_provider_get_property):
5138 API addition: Export "active" as a GObject property.
5139 (gst_net_time_provider_thread): Only respond to time queries if
5140 the time provider is active.
5142 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
5143 NetTimeProvider, preserving binary compat.
5145 2005-12-12 Stefan Kost <ensonic@users.sf.net>
5147 * tests/examples/controller/audio-example.c: (main):
5148 * tests/examples/launch/Makefile.am:
5149 convert comments again
5151 2005-12-12 Wim Taymans <wim@fluendo.com>
5153 * libs/gst/base/gstpushsrc.c:
5156 2005-12-12 Wim Taymans <wim@fluendo.com>
5158 * docs/libs/gstreamer-libs-sections.txt:
5159 Added new symbol to docs.
5161 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
5162 (gst_base_src_init), (gst_base_src_set_format),
5163 (gst_base_src_default_query), (gst_base_src_query),
5164 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
5165 (gst_base_src_perform_seek), (gst_base_src_send_event),
5166 (gst_base_src_default_event), (gst_base_src_event_handler),
5167 (gst_base_src_set_property), (gst_base_src_get_property),
5168 (gst_base_src_wait), (gst_base_src_do_sync),
5169 (gst_base_src_update_length), (gst_base_src_get_range),
5170 (gst_base_src_check_get_range), (gst_base_src_loop),
5171 (gst_base_src_default_negotiate), (gst_base_src_start),
5172 (gst_base_src_activate_push), (gst_base_src_activate_pull),
5173 (gst_base_src_change_state):
5174 * libs/gst/base/gstbasesrc.h:
5175 Implement seeking to other formats than _BYTES.
5176 Implement more seeking methods correctly.
5178 Added query vmethod.
5179 Added do_seek vmethod to make life easier for subclasses
5181 API addition: gst_base_src_set_format()
5183 2005-12-12 Stefan Kost <ensonic@users.sf.net>
5185 * tests/examples/Makefile.am:
5188 2005-12-12 Stefan Kost <ensonic@users.sf.net>
5191 * docs/random/ensonic/media-device-daemon.txt:
5192 * tests/examples/controller/.cvsignore:
5193 * tests/examples/controller/Makefile.am:
5194 * tests/examples/controller/audio-example.c: (main):
5195 * tests/examples/helloworld/.cvsignore:
5196 * tests/examples/helloworld/Makefile.am:
5197 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
5198 * tests/examples/launch/.cvsignore:
5199 * tests/examples/launch/Makefile.am:
5200 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
5201 * tests/examples/metadata/.cvsignore:
5202 * tests/examples/metadata/Makefile.am:
5203 * tests/examples/metadata/read-metadata.c: (message_loop),
5204 (make_pipeline), (print_tag), (main):
5205 * tests/examples/queue/.cvsignore:
5206 * tests/examples/queue/Makefile.am:
5207 * tests/examples/queue/queue.c: (event_loop), (main):
5208 * tests/examples/typefind/.cvsignore:
5209 * tests/examples/typefind/Makefile.am:
5210 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
5212 * tests/examples/xml/.cvsignore:
5213 * tests/examples/xml/Makefile.am:
5214 * tests/examples/xml/createxml.c: (object_saved), (main):
5215 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
5216 * tests/old/examples/Makefile.am:
5217 * tests/old/examples/TODO:
5218 * tests/old/examples/controller/.cvsignore:
5219 * tests/old/examples/controller/Makefile.am:
5220 * tests/old/examples/controller/audio-example.c:
5221 * tests/old/examples/helloworld/.cvsignore:
5222 * tests/old/examples/helloworld/Makefile.am:
5223 * tests/old/examples/helloworld/helloworld.c:
5224 * tests/old/examples/launch/.cvsignore:
5225 * tests/old/examples/launch/Makefile.am:
5226 * tests/old/examples/launch/mp3parselaunch.c:
5227 * tests/old/examples/launch/mp3play:
5228 * tests/old/examples/manual/Makefile.am:
5229 * tests/old/examples/metadata/Makefile.am:
5230 * tests/old/examples/metadata/read-metadata.c:
5231 * tests/old/examples/queue/.cvsignore:
5232 * tests/old/examples/queue/Makefile.am:
5233 * tests/old/examples/queue/queue.c:
5234 * tests/old/examples/typefind/.cvsignore:
5235 * tests/old/examples/typefind/Makefile.am:
5236 * tests/old/examples/typefind/typefind.c:
5237 * tests/old/examples/xml/.cvsignore:
5238 * tests/old/examples/xml/Makefile.am:
5239 * tests/old/examples/xml/createxml.c:
5240 * tests/old/examples/xml/runxml.c:
5241 applied some simple fixing to some examples
5242 re-enabled the working examples
5244 2005-12-12 Wim Taymans <wim@fluendo.com>
5246 * gst/gstsegment.c: (gst_segment_init),
5247 (gst_segment_set_last_stop), (gst_segment_set_seek),
5248 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
5249 (gst_segment_to_running_time):
5250 Added more documentation.
5251 Make sure the last_pos value is updated properly.
5252 Make sure to_stream_time and to_running_time don't
5253 operate on wrong values.
5255 * tests/check/gst/gstsegment.c: (GST_START_TEST):
5258 2005-12-12 Michael Smith <msmith@fluendo.com>
5260 * plugins/elements/gsttypefindelement.c: (free_entry),
5261 (gst_type_find_element_chain):
5262 Now that we're not leaking factories, make sure we keep references
5263 to them while we need them.
5265 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
5267 * tests/check/gst/struct_i386.h:
5268 ifdef out the XML structs
5270 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
5272 * gst/gstvalue.c: (gst_value_transform_double_fraction):
5273 floor is not needed, F is always positive; this obviates the
5274 need for adding -lm when building without libxml
5276 2005-12-12 Wim Taymans <wim@fluendo.com>
5278 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
5279 Take current playback rate into account when reporting
5282 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
5284 * docs/manual/mime-world.fig:
5285 Let's try this again, this time with a file that is
5286 actually in XFig format.
5288 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
5290 * docs/manual/mime-world.fig:
5291 Add audioconvert element to diagram so that it
5292 matches the text and the code (fixes #319526).
5294 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
5296 * docs/pwg/building-chainfn.xml:
5297 * docs/pwg/building-pads.xml:
5298 * docs/pwg/building-state.xml:
5299 * docs/pwg/other-source.xml:
5300 Update state change stuff for 0.10 (fixes #322969).
5302 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
5304 * docs/manual/advanced-dataaccess.xml:
5305 * docs/manual/appendix-checklist.xml:
5306 * docs/manual/appendix-programs.xml:
5307 * docs/manual/basics-pads.xml:
5308 * docs/manual/highlevel-components.xml:
5309 * docs/manual/manual.xml:
5310 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
5311 add converters in front of pipelines; remove curly
5312 brackets for threads stuff, they no longer exist; use
5313 GST_TYPE_FRACTION for framerates; update some pieces of
5314 code to 0.10, but there's plenty more to do.
5316 * docs/manual/appendix-porting.xml:
5317 Expand on asynchroneous state changes; s/0.9/0.10/;
5318 mention disappearance of gst_init_get_popt_table()
5321 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
5323 * docs/faq/using.xml:
5324 Spider no longer exists, and neither does gst-launch-ext.
5325 Update examples to use decodebin and playbin and put
5326 converters in front of sinks (fixes #323726).
5328 2005-12-09 Michael Smith <msmith@fluendo.com>
5330 * plugins/elements/gsttypefindelement.c: (find_peek),
5331 (gst_type_find_element_chain):
5332 Fix leaking element factories in typefinding.
5333 Fix problem where we forgot about a probable type on non-seekable
5334 files, and thus later mis-typefound it.
5336 2005-12-09 Michael Smith <msmith@fluendo.com>
5338 * common/m4/gst-makecontext.m4:
5339 * common/m4/gst-mcsc.m4:
5341 * win32/common/config.h:
5342 * win32/common/config.h.in:
5343 Remove makecontext stuff; not used in 0.10 and causes problems on
5344 HPUX according to bug #322441
5346 2005-12-07 Wim Taymans <wim@fluendo.com>
5348 * tests/check/Makefile.am:
5349 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
5351 * tests/check/libs/struct_i386.h:
5352 Added ABI check for libs
5354 2005-12-07 Wim Taymans <wim@fluendo.com>
5356 * tests/check/Makefile.am:
5357 And add the struct_i386.h to dist.
5359 2005-12-07 Wim Taymans <wim@fluendo.com>
5361 * tests/check/Makefile.am:
5362 * tests/check/gst/.cvsignore:
5363 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
5365 * tests/check/gst/struct_i386.h:
5366 Added check for ABI compatibility.
5368 2005-12-07 Wim Taymans <wim@fluendo.com>
5370 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5371 (gst_fake_src_get_times), (gst_fake_src_create):
5372 Fix broken sync option, fixes #323259
5374 2005-12-07 Wim Taymans <wim@fluendo.com>
5379 * gst/gstcaps.c: (gst_caps_is_equal):
5380 Don't assert on NULL <--> X. Fixes #323260
5382 * gst/gstminiobject.c: (gst_mini_object_replace):
5383 If we're doing atomic operations, we might just as well use
5384 the proper way to get an atomic pointer.
5386 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
5389 2005-12-07 Michael Smith <msmith@fluendo.com>
5391 * gst/parse/grammar.y:
5392 Remove handling of { } for threads.
5394 2005-12-06 David Schleef <ds@schleef.org>
5396 * libs/gst/base/gstbasetransform.c: speling fix.
5398 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
5400 * docs/libs/tmpl/gstdataprotocol.sgml:
5401 * docs/random/omega/testing/gstobject.c:
5405 * gst/gstelementfactory.c:
5408 * gst/gstghostpad.c:
5410 * gst/gstpadtemplate.c:
5411 * gst/gstregistryxml.c:
5413 * gst/gsttagsetter.c:
5414 * gst/gsttypefind.c:
5416 * libs/gst/base/gstbasesrc.c:
5417 * libs/gst/net/gstnetclientclock.c:
5418 * libs/gst/net/gstnettimeprovider.c:
5419 * plugins/elements/gstfakesrc.c:
5420 * plugins/elements/gstfdsrc.c:
5421 * plugins/elements/gstfilesrc.c:
5422 * plugins/elements/gstidentity.c:
5423 * plugins/elements/gstqueue.c:
5424 * plugins/elements/gsttypefindelement.c:
5425 * plugins/indexers/gstfileindex.c:
5426 * plugins/indexers/gstmemindex.c:
5427 * tests/check/gst/gsttag.c:
5428 * tests/old/examples/cutter/cutter.c:
5429 * tests/old/examples/mixer/mixer.c:
5430 * tests/old/examples/xml/runxml.c: (main):
5431 * tests/old/testsuite/caps/normalisation.c:
5432 * tests/old/testsuite/debug/global.c:
5433 * tests/old/testsuite/parse/parse1.c:
5434 * tools/gst-xmlinspect.c:
5435 * win32/common/dirent.c:
5438 === release 0.10.0 ===
5440 2005-12-05 <thomas (at) apestaart (dot) org>
5443 releasing 0.10.0, "Maroilles"
5445 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5447 submitted by: Funda Wang <fundawang@linux.net.cn>
5451 added Chinese (Traditional) translation
5453 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5455 * docs/gst/gstreamer-sections.txt:
5456 * docs/libs/tmpl/gstdataprotocol.sgml:
5457 * docs/random/thomasvs/TODO:
5462 2005-12-05 Andy Wingo <wingo@pobox.com>
5464 patch by: Wim Taymans <wim@fluendo.com>
5466 * libs/gst/base/gstbasetransform.c
5467 (gst_base_transform_prepare_output_buf)
5468 (gst_base_transform_buffer_alloc):
5469 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
5470 alloc_buffer_and_set_caps.
5472 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
5473 set_caps on the source pad.
5474 (gst_pad_alloc_buffer_and_set_caps): New function, does what
5475 alloc_buffer used to do. Fixes #322874.
5477 * docs/gst/gstreamer-sections.txt:
5478 * docs/design/part-negotiation.txt:
5479 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
5482 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5484 patch by: Sebastien Moutte
5487 * win32/common/config.h.in:
5488 * win32/vs6/libgstcontroller.dsp:
5491 2005-12-05 Wim Taymans <wim@fluendo.com>
5493 * gst/gstcaps.c: (gst_caps_is_equal):
5494 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5495 (gst_fake_src_create):
5496 Back out previous code changes, leave doc updates, file bugs
5499 2005-12-05 Wim Taymans <wim@fluendo.com>
5501 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5502 (gst_fake_src_get_times), (gst_fake_src_create):
5503 * plugins/elements/gstfakesrc.h:
5504 Fix broken sync code.
5506 2005-12-05 Wim Taymans <wim@fluendo.com>
5508 * gst/gstcaps.c: (gst_caps_is_equal):
5509 Comparing NULL against !NULL yields different caps, not a
5512 2005-12-05 Wim Taymans <wim@fluendo.com>
5514 * gst/gstpipeline.c:
5515 Fix small typo in docs.
5517 2005-12-05 Andy Wingo <wingo@pobox.com>
5519 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
5521 * gst/gst.c (init_post): remove hard-coded 0.9 location for
5522 registries/plugins with a MAJORMINOR one.
5523 (plugin_desc): Rename library from gstcoreleements to
5524 staticelements. Fixes #323222.
5526 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
5528 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
5529 Change debug category to 'collectpads' from 'collect_pads'
5532 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
5534 patch by: Sebastien Moutte
5536 * libs/gst/controller/gstinterpolation.c:
5537 use convert function for uint64/double
5538 * win32/vs6/libgstcontroller.dsp:
5541 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
5543 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
5544 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
5546 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
5547 add tests that seem to show that the guint64/gdouble conversions
5550 2005-12-02 Wim Taymans <wim@fluendo.com>
5552 * gst/gstregistry.c: (gst_registry_add_path):
5553 * gst/gstregistry.h:
5554 * gst/gstregistryxml.c:
5557 2005-12-02 Wim Taymans <wim@fluendo.com>
5559 * gst/gstutils.c: (gst_util_uint64_scale_int64),
5560 (gst_util_uint64_scale_int):
5563 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
5566 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
5569 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
5572 * win32/common/config.h:
5573 * win32/vs6/gstreamer.dsw:
5574 * win32/vs6/libgstcoreelements.dsp:
5575 * win32/vs6/libgstelements.dsp:
5576 renamed core elements plugin
5578 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
5580 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
5582 do piece-wise major/minor comparison so 0.9 < 0.10
5583 also allow .exe extensions for tools
5585 2005-12-02 Michael Smith <msmith@fluendo.com>
5588 Escape a % to make gtkdoc happier; bug 322958.
5590 === release 0.9.7 ===
5592 2005-12-01 <thomas (at) apestaart (dot) org>
5595 releasing 0.9.7, "My Dog Has No Nose"
5597 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5599 * common/gst-xmlinspect.py:
5601 * docs/libs/tmpl/gstdataprotocol.sgml:
5602 * docs/random/release:
5621 * win32/common/config.h:
5622 * win32/common/config.h.in:
5623 * win32/vs6/gst_inspect.dsp:
5624 * win32/vs6/gst_launch.dsp:
5625 * win32/vs6/libgstbase.dsp:
5626 * win32/vs6/libgstelements.dsp:
5627 * win32/vs6/libgstreamer.dsp:
5628 * win32/vs7/GStreamer.vcproj:
5629 * win32/vs7/gst-inspect.vcproj:
5630 * win32/vs7/gst-launch.vcproj:
5631 * win32/vs7/libgstbase.vcproj:
5632 bump GST_MAJORMINOR to 0.10
5633 reset libtool version
5635 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5639 Added Bulgarian translation by (Alexander Shopov)
5641 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5643 * tests/check/gst/gstplugin.c:
5646 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5648 * common/gst-xmlinspect.py:
5649 * common/gtk-doc-plugins.mak:
5652 * docs/gst/Makefile.am:
5653 * docs/gst/gstreamer-docs.sgml:
5654 * docs/gst/gstreamer-sections.txt:
5655 * docs/gst/gstreamer.types:
5656 * docs/gst/gstreamer.types.in:
5657 * docs/plugins/Makefile.am:
5658 * docs/plugins/gstreamer-plugins-docs.sgml:
5659 * docs/plugins/gstreamer-plugins-sections.txt:
5660 * docs/plugins/gstreamer-plugins.types:
5661 * docs/plugins/inspect.stamp:
5662 * docs/plugins/inspect/plugin-coreelements.xml:
5663 * docs/plugins/inspect/plugin-coreindexers.xml:
5664 * docs/plugins/scanobj-build.stamp:
5665 * gstreamer.spec.in:
5666 * plugins/elements/Makefile.am:
5667 * plugins/elements/gstelements.c:
5668 * plugins/elements/gstfakesink.c:
5669 * plugins/elements/gstfakesrc.c:
5670 * plugins/elements/gstfilesink.c:
5671 * plugins/elements/gstfilesrc.c:
5672 * plugins/elements/gstqueue.c:
5673 * plugins/indexers/Makefile.am:
5674 * plugins/indexers/gstindexers.c:
5675 document core plugins in a separate document just like all the
5677 rename these plugins to something starting with core
5679 2005-12-01 Andy Wingo <wingo@pobox.com>
5681 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
5682 padding here before, but it missed the commit.
5684 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5686 * libs/gst/controller/gstinterpolation.c:
5687 whitespace prices have crashed, we should feel free to use some now
5688 use gst_guint64_to_gdouble
5690 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5692 * libs/gst/controller/gstcontroller.c:
5693 * libs/gst/controller/gsthelper.c:
5694 * libs/gst/controller/gstinterpolation.c:
5695 * libs/gst/controller/lib.c:
5696 wrap config.h include
5698 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5700 * docs/gst/gstreamer-sections.txt:
5703 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5705 * plugins/elements/gstelements.c:
5706 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
5707 (gst_fd_sink__class_init), (gst_fd_sink__init),
5708 (gst_fd_sink__chain), (gst_fd_sink__set_property),
5709 (gst_fd_sink__get_property):
5710 * plugins/elements/gstfdsink.h:
5711 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
5712 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
5713 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
5714 (gst_fd_src_unlock), (gst_fd_src_set_property),
5715 (gst_fd_src_get_property), (gst_fd_src_create),
5716 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
5717 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
5718 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
5719 (gst_fd_src_uri_handler_init):
5720 * plugins/elements/gstfdsrc.h:
5721 * plugins/elements/gstqueue.c: (gst_queue_get_type):
5724 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5726 * docs/gst/Makefile.am:
5727 * docs/gst/gstreamer.types.in:
5731 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5737 * gst/gstregistry.h:
5738 * tests/benchmarks/complexity.c:
5739 * tests/benchmarks/mass-elements.c:
5740 * tests/check/Makefile.am:
5741 * tools/Makefile.am:
5742 * tools/gst-inspect.c:
5743 * tools/gst-xmlinspect.c:
5744 various fixes to make
5745 --disable-nls --disable-registry --disable-loadsave
5746 --disable-parse --disable-gst-debug
5747 work and get the core .so down to 360444 bytes after stripping
5749 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5754 * docs/random/thomasvs/TODO:
5755 * tests/Makefile.am:
5759 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5761 * win32/GStreamer.vcproj:
5764 * win32/Makefile.inspect:
5765 * win32/Makefile.launch:
5766 * win32/Makefile.register:
5768 * win32/gst-inspect.vcproj:
5769 * win32/gst-launch.vcproj:
5770 * win32/gst-register.vcproj:
5771 * win32/gstelements.vcproj:
5772 * win32/gstgetbits.def:
5773 * win32/gstgetbits.vcproj:
5774 * win32/gstreamer-dbg.def:
5775 * win32/gstreamer.def:
5776 * win32/libgstbase.def:
5777 * win32/libgstbase.vcproj:
5778 * win32/link_oldruntime.c:
5783 move even more stuff, win32/ is nice and clean now
5785 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5787 * libs/gst/control/.cvsignore:
5792 * win32/gstbytestream.def:
5793 * win32/gstbytestream.vcproj:
5794 * win32/gstconfig.h:
5795 * win32/gstenumtypes.c:
5796 * win32/gstenumtypes.h:
5797 * win32/gstoptimalscheduler.vcproj:
5798 * win32/gstversion.h:
5800 * win32/testsuite/bins.vcproj:
5801 * win32/testsuite/bytestream.vcproj:
5802 * win32/testsuite/caps.vcproj:
5803 * win32/testsuite/cleanup.vcproj:
5804 * win32/testsuite/clock.vcproj:
5805 * win32/testsuite/debug.vcproj:
5806 * win32/testsuite/dlopen.vcproj:
5807 * win32/testsuite/dynparams.vcproj:
5808 * win32/testsuite/elements.vcproj:
5809 * win32/testsuite/ghostpads.vcproj:
5810 * win32/testsuite/indexers.vcproj:
5811 * win32/testsuite/negotiation.vcproj:
5812 * win32/testsuite/parse.vcproj:
5813 * win32/testsuite/plugin.vcproj:
5814 * win32/testsuite/refcounting.vcproj:
5815 * win32/testsuite/schedulers.vcproj:
5816 * win32/testsuite/states.vcproj:
5817 * win32/testsuite/tags.vcproj:
5818 * win32/testsuite/threads.vcproj:
5819 remove old win32 stuff that isn't maintained and should be
5822 2005-11-30 Andy Wingo <wingo@pobox.com>
5824 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
5825 loading the gst.interfaces python module bork.
5827 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
5828 available since GLib 2.2. Fixes #318031.
5830 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5834 * check/Makefile.am:
5835 * check/elements/.cvsignore:
5836 * check/elements/fakesrc.c:
5837 * check/elements/fdsrc.c:
5838 * check/elements/identity.c:
5839 * check/generic/.cvsignore:
5840 * check/generic/states.c:
5841 * check/gst-libs/.cvsignore:
5842 * check/gst-libs/controller.c:
5843 * check/gst-libs/gdp.c:
5844 * check/gst/.cvsignore:
5845 * check/gst/capslist.h:
5847 * check/gst/gstbin.c:
5848 * check/gst/gstbuffer.c:
5849 * check/gst/gstbus.c:
5850 * check/gst/gstcaps.c:
5851 * check/gst/gstelement.c:
5852 * check/gst/gstevent.c:
5853 * check/gst/gstghostpad.c:
5854 * check/gst/gstiterator.c:
5855 * check/gst/gstmessage.c:
5856 * check/gst/gstminiobject.c:
5857 * check/gst/gstobject.c:
5858 * check/gst/gstpad.c:
5859 * check/gst/gstpipeline.c:
5860 * check/gst/gstplugin.c:
5861 * check/gst/gstsegment.c:
5862 * check/gst/gststructure.c:
5863 * check/gst/gstsystemclock.c:
5864 * check/gst/gsttag.c:
5865 * check/gst/gstutils.c:
5866 * check/gst/gstvalue.c:
5867 * check/net/.cvsignore:
5868 * check/net/gstnetclientclock.c:
5869 * check/net/gstnettimeprovider.c:
5870 * check/pipelines/.cvsignore:
5871 * check/pipelines/cleanup.c:
5872 * check/pipelines/simple_launch_lines.c:
5873 * check/pipelines/stress.c:
5874 * check/states/.cvsignore:
5875 * check/states/sinks.c:
5877 * examples/Makefile.am:
5878 * examples/appreader/.cvsignore:
5879 * examples/appreader/Makefile.am:
5880 * examples/appreader/appreader.c:
5881 * examples/controller/.cvsignore:
5882 * examples/controller/Makefile.am:
5883 * examples/controller/audio-example.c:
5884 * examples/cutter/.cvsignore:
5885 * examples/cutter/Makefile.am:
5886 * examples/cutter/cutter.c:
5887 * examples/cutter/cutter.h:
5888 * examples/events/Makefile.am:
5889 * examples/events/seek.c:
5890 * examples/helloworld/.cvsignore:
5891 * examples/helloworld/Makefile.am:
5892 * examples/helloworld/helloworld.c:
5893 * examples/helloworld2/.cvsignore:
5894 * examples/helloworld2/Makefile.am:
5895 * examples/helloworld2/helloworld2.c:
5896 * examples/launch/.cvsignore:
5897 * examples/launch/Makefile.am:
5898 * examples/launch/mp3parselaunch.c:
5899 * examples/launch/mp3play:
5900 * examples/manual/.cvsignore:
5901 * examples/manual/Makefile.am:
5902 * examples/manual/extract.pl:
5903 * examples/metadata/Makefile.am:
5904 * examples/metadata/read-metadata.c:
5905 * examples/mixer/.cvsignore:
5906 * examples/mixer/Makefile.am:
5907 * examples/mixer/mixer.c:
5908 * examples/mixer/mixer.h:
5909 * examples/pingpong/.cvsignore:
5910 * examples/pingpong/Makefile.am:
5911 * examples/pingpong/pingpong.c:
5912 * examples/plugins/.cvsignore:
5913 * examples/plugins/Makefile.am:
5914 * examples/plugins/example.c:
5915 * examples/plugins/example.h:
5916 * examples/pwg/.cvsignore:
5917 * examples/pwg/Makefile.am:
5918 * examples/pwg/extract.pl:
5919 * examples/queue/.cvsignore:
5920 * examples/queue/Makefile.am:
5921 * examples/queue/queue.c:
5922 * examples/queue2/.cvsignore:
5923 * examples/queue2/Makefile.am:
5924 * examples/queue2/queue2.c:
5925 * examples/queue3/.cvsignore:
5926 * examples/queue3/Makefile.am:
5927 * examples/queue3/queue3.c:
5928 * examples/queue4/.cvsignore:
5929 * examples/queue4/Makefile.am:
5930 * examples/queue4/queue4.c:
5931 * examples/retag/.cvsignore:
5932 * examples/retag/Makefile.am:
5933 * examples/retag/retag.c:
5934 * examples/retag/transcode.c:
5935 * examples/thread/.cvsignore:
5936 * examples/thread/Makefile.am:
5937 * examples/thread/thread.c:
5938 * examples/typefind/.cvsignore:
5939 * examples/typefind/Makefile.am:
5940 * examples/typefind/typefind.c:
5941 * examples/xml/.cvsignore:
5942 * examples/xml/Makefile.am:
5943 * examples/xml/createxml.c:
5944 * examples/xml/runxml.c:
5945 * tests/Makefile.am:
5946 * tests/check/Makefile.am:
5947 * testsuite/.cvsignore:
5948 * testsuite/Makefile.am:
5950 * testsuite/caps/.cvsignore:
5951 * testsuite/caps/Makefile.am:
5952 * testsuite/caps/app_fixate.c:
5953 * testsuite/caps/audioscale.c:
5954 * testsuite/caps/caps.c:
5955 * testsuite/caps/caps.h:
5956 * testsuite/caps/caps_strings:
5957 * testsuite/caps/compatibility.c:
5958 * testsuite/caps/deserialize.c:
5959 * testsuite/caps/enumcaps.c:
5960 * testsuite/caps/eratosthenes.c:
5961 * testsuite/caps/filtercaps.c:
5962 * testsuite/caps/fixed.c:
5963 * testsuite/caps/fraction-convert.c:
5964 * testsuite/caps/fraction-multiply-and-zero.c:
5965 * testsuite/caps/intersect2.c:
5966 * testsuite/caps/intersection.c:
5967 * testsuite/caps/normalisation.c:
5968 * testsuite/caps/random.c:
5969 * testsuite/caps/renegotiate.c:
5970 * testsuite/caps/sets.c:
5971 * testsuite/caps/simplify.c:
5972 * testsuite/caps/string-conversions.c:
5973 * testsuite/caps/structure.c:
5974 * testsuite/caps/subtract.c:
5975 * testsuite/caps/union.c:
5976 * testsuite/debug/.cvsignore:
5977 * testsuite/debug/Makefile.am:
5978 * testsuite/debug/category.c:
5979 * testsuite/debug/commandline.c:
5980 * testsuite/debug/global.c:
5981 * testsuite/debug/output.c:
5982 * testsuite/debug/printf_extension.c:
5983 * testsuite/dlopen/.cvsignore:
5984 * testsuite/dlopen/Makefile.am:
5985 * testsuite/dlopen/dlopen_gst.c:
5986 * testsuite/dlopen/loadgst.c:
5987 * testsuite/elements/.cvsignore:
5988 * testsuite/elements/Makefile.am:
5989 * testsuite/elements/gst-inspect-check.in:
5990 * testsuite/elements/struct_i386.h:
5991 * testsuite/elements/struct_size.c:
5992 * testsuite/indexers/.cvsignore:
5993 * testsuite/indexers/Makefile.am:
5994 * testsuite/indexers/cache1.c:
5995 * testsuite/indexers/indexdump.c:
5996 * testsuite/parse/.cvsignore:
5997 * testsuite/parse/Makefile.am:
5998 * testsuite/parse/parse1.c:
5999 * testsuite/parse/parse2.c:
6000 * testsuite/plugin/.cvsignore:
6001 * testsuite/plugin/Makefile.am:
6002 * testsuite/plugin/README:
6003 * testsuite/plugin/dynamic.c:
6004 * testsuite/plugin/linked.c:
6005 * testsuite/plugin/loading.c:
6006 * testsuite/plugin/registry.c:
6007 * testsuite/plugin/static.c:
6008 * testsuite/plugin/static2.c:
6009 * testsuite/plugin/testplugin.c:
6010 * testsuite/plugin/testplugin2.c:
6011 * testsuite/plugin/testplugin2_s.c:
6012 * testsuite/plugin/testplugin_s.c:
6013 * testsuite/refcounting/.cvsignore:
6014 * testsuite/refcounting/Makefile.am:
6015 * testsuite/refcounting/bin.c:
6016 * testsuite/refcounting/element.c:
6017 * testsuite/refcounting/element_pad.c:
6018 * testsuite/refcounting/mainloop.c:
6019 * testsuite/refcounting/mem.c:
6020 * testsuite/refcounting/mem.h:
6021 * testsuite/refcounting/object.c:
6022 * testsuite/refcounting/pad.c:
6023 * testsuite/refcounting/sched.c:
6024 * testsuite/refcounting/thread.c:
6025 * testsuite/states/.cvsignore:
6026 * testsuite/states/Makefile.am:
6027 * testsuite/states/bin.c:
6028 * testsuite/states/locked.c:
6029 * testsuite/states/parent.c:
6030 * testsuite/threads/.cvsignore:
6031 * testsuite/threads/159566.c:
6032 * testsuite/threads/159852.c:
6033 * testsuite/threads/Makefile.am:
6034 * testsuite/threads/queue.c:
6035 * testsuite/threads/signals.c:
6036 * testsuite/threads/staticrec.c:
6037 * testsuite/threads/thread.c:
6038 * testsuite/threads/threadb.c:
6039 * testsuite/threads/threadc.c:
6040 * testsuite/threads/threadd.c:
6041 * testsuite/threads/threade.c:
6042 * testsuite/threads/threadf.c:
6043 * testsuite/threads/threadg.c:
6044 * testsuite/threads/threadh.c:
6045 * testsuite/threads/threadi.c:
6046 move all of these under tests
6048 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6051 * tests/Makefile.am:
6054 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6056 * docs/gst/gstreamer-sections.txt:
6057 * tests/sched/.cvsignore:
6058 * tests/sched/Makefile.am:
6059 * tests/sched/cases/(fs-fs).xml:
6060 * tests/sched/cases/(fs-i-fs).xml:
6061 * tests/sched/cases/(fs-i-i-fs).xml:
6062 * tests/sched/cases/(fs-i-q[i-fs]).xml:
6063 * tests/sched/dynamic-pipeline.c:
6064 * tests/sched/interrupt1.c:
6065 * tests/sched/interrupt2.c:
6066 * tests/sched/interrupt3.c:
6067 * tests/sched/runtestcases:
6068 * tests/sched/runxml.c:
6069 * tests/sched/sched-stress.c:
6070 * tests/sched/sort.c:
6071 * tests/sched/testcases:
6072 * tests/sched/testcases1.tc:
6073 * tests/seeking/.cvsignore:
6074 * tests/seeking/Makefile.am:
6075 * tests/seeking/seeking1.c:
6076 * tests/threadstate/.cvsignore:
6077 * tests/threadstate/Makefile.am:
6078 * tests/threadstate/test1.c:
6079 * tests/threadstate/test2.c:
6080 * tests/threadstate/threadstate1.c:
6081 * tests/threadstate/threadstate2.c:
6082 * tests/threadstate/threadstate3.c:
6083 * tests/threadstate/threadstate4.c:
6084 * tests/threadstate/threadstate5.c:
6085 remove obsolete tests
6087 * tests/bench-complexity.scm:
6088 * tests/bench-mass_elements.scm:
6089 * tests/complexity.c:
6090 * tests/complexity.gnuplot:
6091 * tests/instantiate/.cvsignore:
6092 * tests/instantiate/Makefile.am:
6093 * tests/instantiate/caps.c:
6094 * tests/mass_elements.c:
6095 * tests/network-clock-utils.scm:
6096 * tests/network-clock.scm:
6098 First pass at cleaning up tests/ dir before moving the rest
6099 Combined with CVS surgery
6101 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6104 queue has moved, update
6106 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6108 * docs/gst/gstreamer-sections.txt:
6109 remove double entries from the docs
6110 * gst/gst_private.h:
6111 * gst/gstinfo.c: (_gst_debug_init):
6112 remove the THREAD debug category
6116 * docs/gst/gstreamer.types:
6117 * plugins/elements/gstqueue.c: (gst_queue_get_type),
6118 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
6119 completely move queue and fix up debugging categories
6121 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6123 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
6124 make initialization portable, using LL is not
6126 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6128 * win32/common/gstconfig.h:
6131 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6133 * win32/common/libgstreamer.def:
6134 rename symbols; sort base section
6136 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6138 * gst/gstclock.c: (do_linear_regression):
6139 remove crack non-portable handrolled DEBUG macro
6141 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6143 * docs/random/release:
6145 * win32/common/gstenumtypes.c: (register_gst_object_flags),
6146 (gst_object_flags_get_type), (register_gst_bin_flags),
6147 (gst_bin_flags_get_type), (register_gst_buffer_flag),
6148 (gst_buffer_flag_get_type), (register_gst_bus_flags),
6149 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
6150 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
6151 (gst_caps_flags_get_type), (register_gst_clock_return),
6152 (gst_clock_return_get_type), (register_gst_clock_entry_type),
6153 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
6154 (gst_clock_flags_get_type), (register_gst_state),
6155 (gst_state_get_type), (register_gst_state_change_return),
6156 (gst_state_change_return_get_type), (register_gst_state_change),
6157 (gst_state_change_get_type), (register_gst_element_flags),
6158 (gst_element_flags_get_type), (register_gst_core_error),
6159 (gst_core_error_get_type), (register_gst_library_error),
6160 (gst_library_error_get_type), (register_gst_resource_error),
6161 (gst_resource_error_get_type), (register_gst_stream_error),
6162 (gst_stream_error_get_type), (register_gst_event_type_flags),
6163 (gst_event_type_flags_get_type), (register_gst_event_type),
6164 (gst_event_type_get_type), (register_gst_seek_type),
6165 (gst_seek_type_get_type), (register_gst_seek_flags),
6166 (gst_seek_flags_get_type), (register_gst_format),
6167 (gst_format_get_type), (register_gst_index_certainty),
6168 (gst_index_certainty_get_type), (register_gst_index_entry_type),
6169 (gst_index_entry_type_get_type),
6170 (register_gst_index_lookup_method),
6171 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
6172 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
6173 (gst_index_resolver_method_get_type), (register_gst_index_flags),
6174 (gst_index_flags_get_type), (register_gst_debug_level),
6175 (gst_debug_level_get_type), (register_gst_debug_color_flags),
6176 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
6177 (gst_iterator_result_get_type), (register_gst_iterator_item),
6178 (gst_iterator_item_get_type), (register_gst_message_type),
6179 (gst_message_type_get_type), (register_gst_mini_object_flags),
6180 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
6181 (gst_pad_link_return_get_type), (register_gst_flow_return),
6182 (gst_flow_return_get_type), (register_gst_activate_mode),
6183 (gst_activate_mode_get_type), (register_gst_pad_direction),
6184 (gst_pad_direction_get_type), (register_gst_pad_flags),
6185 (gst_pad_flags_get_type), (register_gst_pad_presence),
6186 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
6187 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
6188 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
6189 (gst_plugin_error_get_type), (register_gst_plugin_flags),
6190 (gst_plugin_flags_get_type), (register_gst_rank),
6191 (gst_rank_get_type), (register_gst_query_type),
6192 (gst_query_type_get_type), (register_gst_tag_merge_mode),
6193 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
6194 (gst_tag_flag_get_type), (register_gst_task_state),
6195 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
6196 (gst_alloc_trace_flags_get_type),
6197 (register_gst_type_find_probability),
6198 (gst_type_find_probability_get_type), (register_gst_uri_type),
6199 (gst_uri_type_get_type), (register_gst_parse_error),
6200 (gst_parse_error_get_type):
6201 * win32/common/gstenumtypes.h:
6202 * win32/common/gstversion.h:
6203 update visual studio generated files
6205 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6207 * win32/vs6/libgstbase.dsp:
6208 * win32/vs6/libgstelements.dsp:
6209 update project files for new locations
6211 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
6216 reinstate and update
6221 * docs/random/LICENSE:
6224 2005-11-30 Edward Hervey <edward@fluendo.com>
6226 * gst/gsttypefind.c: (gst_type_find_register):
6227 * gst/gsttypefind.h:
6228 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
6229 (gst_type_find_factory_dispose):
6230 * gst/gsttypefindfactory.h:
6231 Fix memory leak in GstTypeFindFactory.
6233 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
6236 * plugins/elements/Makefile.am:
6237 * plugins/elements/gstelements.c:
6238 * plugins/elements/gstqueue.c:
6239 move queue from core to the elements plugin
6241 2005-11-29 Andy Wingo <wingo@pobox.com>
6243 * libs/gst/base/gstbasetransform.h:
6244 * libs/gst/base/gstbasesrc.h:
6245 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
6247 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
6248 of pointers by which to pad very extensible base classes (like the
6249 ones in libs/gst/base).
6251 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
6253 * docs/gst/gstreamer-docs.sgml:
6254 * docs/gst/gstreamer-sections.txt:
6255 * docs/libs/gstreamer-libs-docs.sgml:
6256 * docs/libs/gstreamer-libs-sections.txt:
6257 moving documentation from core to lib
6259 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
6261 * check/Makefile.am:
6263 * docs/gst/Makefile.am:
6265 * gst/base/.cvsignore:
6266 * gst/base/Makefile.am:
6268 * gst/base/gstadapter.c:
6269 * gst/base/gstadapter.h:
6270 * gst/base/gstbasesink.c:
6271 * gst/base/gstbasesink.h:
6272 * gst/base/gstbasesrc.c:
6273 * gst/base/gstbasesrc.h:
6274 * gst/base/gstbasetransform.c:
6275 * gst/base/gstbasetransform.h:
6276 * gst/base/gstcollectpads.c:
6277 * gst/base/gstcollectpads.h:
6278 * gst/base/gstpushsrc.c:
6279 * gst/base/gstpushsrc.h:
6280 * gst/base/gsttypefindhelper.c:
6281 * gst/base/gsttypefindhelper.h:
6282 * gst/check/Makefile.am:
6283 * gst/check/gstcheck.c:
6284 * gst/check/gstcheck.h:
6285 * gst/net/Makefile.am:
6287 * gst/net/gstnetclientclock.c:
6288 * gst/net/gstnetclientclock.h:
6289 * gst/net/gstnettimepacket.c:
6290 * gst/net/gstnettimepacket.h:
6291 * gst/net/gstnettimeprovider.c:
6292 * gst/net/gstnettimeprovider.h:
6293 * libs/gst/Makefile.am:
6294 * libs/gst/base/Makefile.am:
6295 * libs/gst/base/gstbasetransform.c:
6296 * libs/gst/check/Makefile.am:
6297 * plugins/elements/Makefile.am:
6299 CVS surgery + support to move base, check, and net out of gst
6302 2005-11-29 Andy Wingo <wingo@pobox.com>
6304 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
6306 * gst/gststructure.h (struct _GstStructure): Only one pointer of
6309 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
6311 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
6313 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
6315 * gst/gstobject.h: (struct _GstObject): Only one pointer of
6316 padding; reduces object size by about 30%. We don't expect
6317 anything else to go into gstobject.
6319 * gst/gstminiobject.h (struct _GstMiniObject)
6320 (struct _GstMiniObjectClass): Only one pointer of padding; the
6321 payload is only a pointer and two ints anyway. For the class there
6322 are only two methods as well.
6324 * gst/gstelement.h (struct _GstElementClass): Removed
6325 the state_changed signal callback, it is not used.
6327 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
6329 * docs/gst/gstreamer.types:
6330 fix includes, though they are a little dinky
6332 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
6334 * check/Makefile.am:
6335 look in the right place for elements, a lot more chance of
6338 remove indexers and elements subdirs
6339 * plugins/Makefile.am:
6340 make indexers conditional
6342 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
6346 * plugins/elements/Makefile.am:
6347 * plugins/elements/gstcapsfilter.c:
6348 * plugins/elements/gstfilesink.c:
6349 * plugins/elements/gstfilesrc.c:
6350 * plugins/elements/gstidentity.c:
6351 * plugins/indexers/Makefile.am:
6352 do CVS surgery and related build fixery to move elements
6353 and indexers in a new gstreamer/plugins directory, out of the
6356 2005-11-29 Andy Wingo <wingo@pobox.com>
6358 * check/Makefile.am:
6359 * pkgconfig/gstreamer-net-uninstalled.pc.in:
6360 * pkgconfig/gstreamer-net.pc.in:
6361 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
6364 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
6366 * tools/Makefile.am:
6367 * tools/gst-complete.1.in:
6368 * tools/gst-complete.c:
6369 * tools/gst-compprep.1.in:
6370 * tools/gst-compprep.c:
6371 removing -compprep and -complete
6373 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
6375 * gst/gstevent.c: (gst_event_new_new_segment),
6376 (gst_event_parse_new_segment):
6378 fix #320529 - clean up new_segment API and structure.
6379 Let's hope everyone was using the methods, and not the structure.
6381 2005-11-29 Edward Hervey <edward@fluendo.com>
6383 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6384 (gst_base_sink_event), (gst_base_sink_do_sync),
6385 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
6386 Properly handle non GST_FORMAT_TIME segment
6387 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
6388 Properly handle non GST_FORMAT_TIME segment
6390 This function is valid if the accumulator is 0 and the format
6391 is different from the requested format.
6393 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
6395 * docs/gst/gstreamer-sections.txt:
6396 Add gst_query_new_seeking and gst_query_parse_seeking to the
6399 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
6401 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
6402 Treat a pad alloc with new caps the same as if we were not
6403 negotiated, in order to allow a changing upstream output
6404 to produce a new format of data.
6406 2005-11-29 Edward Hervey <edward@fluendo.com>
6408 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
6409 (gst_base_transform_event), (gst_base_transform_eventfunc):
6410 The event virtual method is now properly implemented, with a default
6412 Sub classes should call the parent_class event method. They should
6413 return FALSE if they had a problem handling the given event, or don't
6414 want GstBaseTransform to send that even downstream
6415 * gst/elements/gstidentity.c: (gst_identity_class_init),
6416 (gst_identity_init), (gst_identity_event),
6417 (gst_identity_transform_ip), (gst_identity_set_property),
6418 (gst_identity_get_property):
6419 * gst/elements/gstidentity.h:
6420 Added the single-segment boolean property.
6421 If set to TRUE, it will output a single segment of data, starting from
6422 0, will eat up all incoming newsegment, and modify the timestamp of the
6425 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
6427 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
6428 Don't ref NULL target pad (#322751). Improve docs.
6430 2005-11-29 Michael Smith <msmith@fluendo.com>
6432 * gst/gstregistryxml.c: (load_plugin):
6433 Don't crash if we failed to load a feature from a plugin.
6435 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6437 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
6439 use more check API and less GLib API
6441 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6444 don't run checks if we don't have check
6446 remove the registry when running make torture
6447 * docs/gst/gstreamer-sections.txt:
6448 remove second multiply
6449 * gst/gstqueue.c: (gst_queue_loop):
6450 fix a compile warning when disabling debug
6452 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6455 Hey! Let's print the pad name if the pointer != NULL instead
6456 of when it == NULL :-)
6458 2005-11-28 Wim Taymans <wim@fluendo.com>
6460 * check/gst/gstutils.c: (GST_START_TEST):
6461 Updated check, add some scaling accuracy checking code.
6463 * gst/gstutils.c: (gst_util_div128_64),
6464 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
6465 (gst_util_uint64_scale_int):
6466 Fix 6 times faster division code. Optimize for common
6467 1/1 and less common X/1 cases.
6469 2005-11-28 Wim Taymans <wim@fluendo.com>
6471 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6474 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
6475 (do_linear_regression), (gst_clock_add_observation):
6477 Release lock when the clock cannot be slaved.
6478 Catch the case where the regression returned an invalid denominator.
6480 * gst/gstutils.c: (gst_util_div128_64_iterate),
6481 (gst_util_div128_64), (gst_util_uint64_scale_int64),
6482 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
6483 Add protentially more performant non-iterative 128/64 divide function
6484 that unfortunatly does not work yet.
6485 Shortcut the trivial 0/X = 0 case.
6486 Remove the warnings on overflow.
6488 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6490 * gst/gstplugin.c: (gst_plugin_register_func):
6491 everything causing a plugin not to load should be at least a WARNING
6493 2005-11-28 Stefan Kost <ensonic@users.sf.net>
6495 * docs/random/ensonic/dparams.txt:
6496 some TODOs for the next dev cycle
6497 * libs/gst/controller/gstcontroller.c:
6498 (gst_controlled_property_set_interpolation_mode),
6499 (gst_controlled_property_new):
6500 * libs/gst/controller/gstcontroller.h:
6501 use base type to assign acccessor functions
6503 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6505 * check/Makefile.am:
6506 Oops, that should have been top_srcdir
6508 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6510 * check/Makefile.am:
6511 * check/elements/fdsrc.c: (GST_START_TEST):
6512 Use a cmdline define to specify the location of a file to use for
6513 testing, to avoid breaking distcheck.
6515 2005-11-28 Andy Wingo <wingo@pobox.com>
6517 * gst/gstpad.c (fixate_value): Use array functions for arrays.
6519 2005-11-28 Edward Hervey <edward@fluendo.com>
6521 * tools/gst-launch.c: (main):
6522 Clarify the output strings, makes it easier to translate.
6525 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6528 don't try and build net if we don't even have <sys/socket.h>
6530 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
6532 * check/Makefile.am:
6533 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
6534 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
6535 Add tests for fdsrc seekability
6537 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6538 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
6539 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
6540 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
6541 * gst/elements/gstfdsrc.h:
6542 fdsrc should not be a 'live' source.
6543 Implement seeking on seekable fd's.
6545 * gst/gstquery.c: (gst_query_new_seeking),
6546 (gst_query_parse_seeking):
6548 Implement SEEKING query functions:
6549 *_new_seeking and *_parse_seeking
6551 2005-11-27 Stefan Kost <ensonic@users.sf.net>
6553 * gst/gstelement.c: (gst_element_dispose):
6556 * gst/gstiterator.c:
6557 * gst/gststructure.c:
6560 * libs/gst/controller/gstcontroller.c:
6561 (gst_controlled_property_set_interpolation_mode):
6562 * libs/gst/controller/gstcontroller.h:
6563 * libs/gst/controller/gstinterpolation.c:
6564 (interpolate_none_get_enum_value_array):
6565 support controlling enums
6567 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
6570 Improve documentation for gst_value_union().
6573 Change return value for union, intersect and subtract functions
6574 from gint to gboolean.
6576 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
6578 * gst/gstvalue.c: (gst_value_serialize_any_list),
6579 (gst_value_transform_any_list_string),
6580 (gst_value_deserialize_list), (gst_value_deserialize_array),
6581 (gst_value_set_int_range), (gst_value_deserialize_int_range),
6582 (gst_value_set_double_range), (gst_value_deserialize_double_range),
6583 (gst_value_set_fraction_range_full),
6584 (gst_value_deserialize_fraction_range),
6585 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
6586 (gst_value_deserialize_boolean),
6587 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
6588 (gst_value_serialize_float), (gst_value_deserialize_float),
6589 (gst_string_wrap), (gst_value_deserialize_string),
6590 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
6591 (gst_value_union_int_range_int_range),
6592 (gst_value_intersect_int_range_int_range),
6593 (gst_value_intersect_double_range_double_range),
6594 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
6595 (gst_value_subtract_int_range_int_range),
6596 (gst_value_subtract_double_double_range),
6597 (gst_value_subtract_double_range_double_range),
6598 (gst_value_deserialize_fraction):
6600 Use gint, gdouble and gchar in our API instead of int, double and
6601 char (and make usage in gstvalue.c more consistent).
6603 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6605 * check/Makefile.am:
6606 * libs/gst/controller/Makefile.am:
6607 * libs/gst/dataprotocol/Makefile.am:
6608 fix up Makefile.am and remove GST_ENABLE_NEW
6610 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6614 * gst/base/Makefile.am:
6615 * gst/check/Makefile.am:
6616 * gst/elements/Makefile.am:
6617 * gst/net/Makefile.am:
6618 update LDFLAGS use some more
6620 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6622 * common/m4/gst-doc.m4:
6625 2005-11-26 Edward Hervey <edward@fluendo.com>
6627 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
6628 This shouldn't issue a g_warning since it returns NULL if it
6629 couldn't find the plugin, and all functions using this behave
6630 properly on a NULL return. Switching to a GST_WARNING.
6632 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
6634 * gst/gstbin.c: (gst_bin_handle_message_func):
6635 Don't leak clock messages.
6637 2005-11-25 Wim Taymans <wim@fluendo.com>
6639 * gst/gstutils.c: (gst_util_uint64_scale_int64),
6640 (gst_util_uint64_scale_int):
6641 Optimisations, remove unneeded vars.
6643 2005-11-25 Wim Taymans <wim@fluendo.com>
6645 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6646 Added more checks for the high precision uint64 cases.
6648 * gst/gstutils.c: (gst_util_uint64_scale_int64),
6649 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
6650 Implement high precision (guint64 * guint64) / guint64.
6652 2005-11-24 Wim Taymans <wim@fluendo.com>
6654 * gst/base/gstbasesrc.c: (gst_base_src_query):
6655 Fix wrong percentage query.
6657 * gst/gstutils.c: (gst_util_uint64_scale),
6658 (gst_util_uint64_scale_int):
6659 Add some more common cases that can be handled
6660 efficiently to _scale.
6662 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
6664 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
6665 (gst_mini_object_suite):
6666 don't use check calls from threads; check probably isn't
6667 threadsafe and using a lock to make it threadsafe would
6668 defeat the purpose of this check
6669 * gst/check/gstcheck.c:
6670 * gst/check/gstcheck.h:
6671 use GST_DEBUG some more
6673 2005-11-24 Wim Taymans <wim@fluendo.com>
6675 * gst/gstutils.c: (gst_util_uint64_scale),
6676 (gst_util_uint64_scale_int):
6677 Chain trivial case to _scale_int.
6679 2005-11-24 Wim Taymans <wim@fluendo.com>
6681 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6682 Added test for scaling.
6687 * gst/gstutils.c: (gst_util_uint64_scale_int):
6688 Implemented high precision scaling code.
6690 2005-11-24 Stefan Kost <ensonic@users.sf.net>
6693 do not crash on pad==NULL
6695 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
6697 Patch by: Stefan Kost
6699 * common/gtk-doc.mak:
6700 * docs/gst/Makefile.am:
6701 * docs/libs/Makefile.am:
6702 Fix distcheck issues for the libraries docs build
6705 2005-11-24 Michael Smith <msmith@fluendo.com>
6707 * docs/manual/basics-helloworld.xml:
6708 Fix bug #315027: memory leak in example code in docs.
6710 2005-11-24 Michael Smith <msmith@fluendo.com>
6712 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6713 Unlock the PREROLL_LOCK in a failure case.
6715 2005-11-24 Wim Taymans <wim@fluendo.com>
6717 * docs/gst/gstreamer-sections.txt:
6718 * gst/base/gstadapter.h:
6719 * gst/base/gstbasesink.h:
6720 * gst/base/gstbasesrc.h:
6721 * gst/base/gstbasetransform.h:
6722 * gst/base/gstpushsrc.h:
6723 * gst/elements/gstfakesink.h:
6724 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
6725 * gst/elements/gstfakesrc.h:
6726 * gst/elements/gstfilesink.h:
6727 * gst/elements/gstfilesrc.h:
6730 * gst/gstbuffer.c: (_gst_buffer_copy):
6733 * gst/gstchildproxy.c:
6736 * gst/gstelementfactory.c:
6737 * gst/gstelementfactory.h:
6739 * gst/gstghostpad.h:
6741 * gst/gstinterface.h:
6742 * gst/gstminiobject.c:
6743 * gst/gstminiobject.h:
6746 * gst/gstpadtemplate.h:
6747 * gst/gstpipeline.h:
6748 * gst/gstpluginfeature.h:
6753 * gst/gsttagsetter.c:
6754 * gst/gsttagsetter.h:
6757 * gst/gsttypefind.h:
6760 * gst/net/gstnetclientclock.c:
6761 * gst/net/gstnetclientclock.h:
6762 * gst/net/gstnettimepacket.c:
6763 * gst/net/gstnettimeprovider.c:
6764 * gst/net/gstnettimeprovider.h:
6767 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6769 * configure.ac: back to HEAD
6771 === release 0.9.6 ===
6773 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6776 releasing 0.9.6, "Always On Time"
6778 2005-11-23 Wim Taymans <wim@fluendo.com>
6780 * docs/gst/gstreamer-sections.txt:
6781 * gst/glib-compat.c:
6782 * gst/gsttagsetter.c:
6784 * gst/net/gstnetclientclock.c:
6785 * gst/net/gstnettimepacket.h:
6788 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6790 * docs/faq/using.xml:
6791 * docs/libs/tmpl/gstcontrol.sgml:
6792 * docs/manual/advanced-dparams.xml:
6793 * docs/manual/appendix-checklist.xml:
6794 * docs/manual/basics-elements.xml:
6795 * docs/pwg/other-source.xml:
6796 * docs/random/moving-plugins:
6798 * tools/gst-launch.1.in:
6799 remove mentions of sinesrc
6801 2005-11-23 Michael Smith <msmith@fluendo.com>
6803 * docs/gst/gstreamer-sections.txt:
6804 Update for new API and API changes.
6806 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
6808 Documentation typo fix.
6809 * gst/net/gstnettimepacket.c:
6810 Documentation fixes for arguments.
6812 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
6814 * gst/gststructure.c: (gst_structure_get_fraction),
6815 (gst_structure_parse_value),
6816 (gst_structure_fixate_field_nearest_fraction):
6817 * gst/gststructure.h:
6818 * gst/gstutils.c: (gst_util_uint64_scale_int):
6820 * scripts/update-funcnames:
6822 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
6823 Make gst_structure_fixate_field_nearest_fraction take a numerator
6824 and denominator argument instead of a GValue
6825 add gst_structure_get_fraction helper function.
6827 2005-11-23 Wim Taymans <wim@fluendo.com>
6829 * docs/design/part-TODO.txt:
6832 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
6833 * gst/net/gstnetclientclock.h:
6834 Use parent fields for timeout and window_size.
6836 2005-11-23 Andy Wingo <wingo@pobox.com>
6838 * check/net/gstnetclientclock.c (test_functioning): Adjust to
6839 rate_num/rate_denom change.
6841 * gst/net/gstnetclientclock.c
6842 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
6843 OBJECT_LOCK. Don't call add_observation with the lock.
6845 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
6847 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
6849 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
6850 deal with rate as a fraction whose numerator and denominator are
6851 GstClockTime values.
6852 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
6853 master; the other fields are protected by the SLAVE_LOCK.
6854 (do_linear_regression): Note that this must be called with the
6856 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
6857 OBJECT_LOCK. Call set_calibration instead of touching the
6859 (gst_clock_set_property, gst_clock_get_property): Protect
6860 master/slave parameters with the SLAVE_LOCK.
6862 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
6863 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
6864 note that all of the instance variables that add_observation and
6865 the set_master functions use are protected by that lock and not
6867 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
6869 * gst/gstclock.c (gst_clock_add_observation): No longer requires
6870 the caller to take the object lock.
6872 2005-11-23 Wim Taymans <wim@fluendo.com>
6874 * gst/gsterror.c: (_gst_core_errors_init):
6876 Add error for clock stuff.
6878 * gst/gstpipeline.c: (gst_pipeline_change_state),
6879 (gst_pipeline_set_clock):
6880 Post clock error when clock cannot be used in a pipeline.
6882 2005-11-23 Stefan Kost <ensonic@users.sf.net>
6884 * docs/gst/gstreamer-sections.txt:
6885 make two symbols from gstinfo private for the docs
6886 * gst/base/gstcollectpads.h:
6888 fix doc typos, update docs
6890 2005-11-22 Wim Taymans <wim@fluendo.com>
6892 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6893 (gst_base_sink_wait), (gst_base_sink_do_sync),
6894 (gst_base_sink_handle_event):
6895 * gst/base/gstbasesink.h:
6896 No need to store the clock, the parent element class already
6899 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
6900 Updates for clock_set returning a gboolean
6902 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
6903 (gst_clock_id_wait_async), (gst_clock_class_init),
6904 (gst_clock_init), (gst_clock_finalize),
6905 (gst_clock_get_internal_time), (gst_clock_get_time),
6906 (gst_clock_slave_callback), (gst_clock_set_master),
6907 (gst_clock_get_master), (do_linear_regression),
6908 (gst_clock_add_observation), (gst_clock_set_property),
6909 (gst_clock_get_property):
6911 Implement master/slave. When setting a clock as a slave, a
6912 periodic timeout is scheduled to sample master and slave times.
6913 Then the slave clock is recalibrated to match offset and rate
6914 of the master clock.
6915 Update logging a bit.
6916 Add flag so that a clock can state that is cannot be slaved to
6919 * gst/gstelement.c: (gst_element_set_clock):
6921 The set clock returns a gboolean for when an element cannot
6922 deal with the selected clock in the pipeline.
6924 * gst/gstpipeline.c: (gst_pipeline_change_state),
6925 (gst_pipeline_set_clock):
6926 * gst/gstpipeline.h:
6927 Handle the case where the selected clock cannot be set on
6930 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
6931 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
6932 (gst_net_client_clock_set_property),
6933 (gst_net_client_clock_get_property),
6934 (gst_net_client_clock_observe_times):
6935 * gst/net/gstnetclientclock.h:
6936 Use regression code in GstClock parent, remove duplicated
6939 2005-11-22 Michael Smith <msmith@fluendo.com>
6941 * gst/gstutils.c: (gst_util_clock_time_scale):
6943 * docs/gst/gstreamer-sections.txt:
6944 Rename method to have extra underscore.
6946 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
6948 * gst/elements/Makefile.am:
6949 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
6950 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
6951 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
6952 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
6953 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
6954 * gst/elements/gstfakesrc.h:
6955 * gst/gstqueue.c: (queue_leaky_get_type):
6956 correctly fix GEnumValues so that nick is the short lowercase
6958 * tools/gst-inspect.c: (print_element_properties_info):
6959 also show the nick, since it's useful to use from parse_launch
6963 2005-11-22 Michael Smith <msmith@fluendo.com>
6965 * gst/gstutils.c: (gst_util_clocktime_scale):
6967 * docs/gst/gstreamer-sections.txt:
6968 Add util method for scaling a clocktime by a fraction. Useful
6969 implementation is left as an exercise for the reader.
6971 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6973 * gst/gstvalue.c: (gst_value_collect_fraction_range):
6974 If needed, allocate storage in the destination value during
6977 2005-11-22 Edward Hervey <edward@fluendo.com>
6979 * docs/gst/gstreamer-sections.txt:
6984 * gst/gstutils.c: (gst_util_set_object_arg):
6985 * tools/gst-compprep.c: (main):
6986 * tools/gst-inspect.c: (print_element_properties_info):
6987 Removed GstURI, closes bug #321061
6989 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6991 * check/gst/gststructure.c: (GST_START_TEST):
6992 * gst/gststructure.c: (gst_structure_parse_value):
6993 Oops, broke automatic string type parsing.
6994 Add a test to catch it in future.
6996 2005-11-22 Andy Wingo <wingo@pobox.com>
6998 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
6999 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
7000 Actually rename the function implementations. Grr.
7002 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
7004 * check/gst/capslist.h:
7006 * check/gst/gststructure.c: (GST_START_TEST),
7007 (gst_structure_suite):
7008 Test automatic value type detection in gst_structure_from_string.
7009 * gst/gststructure.c: (gst_structure_parse_value):
7010 Add fraction as a type we try and guess automatically in
7011 caps/structure strings.
7013 2005-11-22 Andy Wingo <wingo@pobox.com>
7015 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
7017 * gst/gsttagsetter.h:
7018 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
7019 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
7020 (gst_tag_setter_add_tag_valist)
7021 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
7022 _add_values, _add_valist, and _add_valist_values. Since this is an
7023 interface the function suffixes should be more explicit so
7024 language binding don't end up with element.add_valist ->
7025 gst_tag_setter_add_valist, for example. Fixes #322069.
7027 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
7029 * check/gst/gstcaps.c: (GST_START_TEST):
7030 Extend caps string tests to check that a caps to string
7031 conversion is reversible and produces the same caps.
7033 * gst/gststructure.c: (gst_structure_value_get_generic_type):
7034 Output "fraction" as the generic type fraction range, so caps
7035 serialisation and deserialisation works.
7036 * check/gst/capslist.h:
7037 * gst/gstvalue.c: (gst_value_deserialize_fraction):
7038 Support 'MIN' and 'MAX' for deserialising fractions.
7040 2005-11-22 Andy Wingo <wingo@pobox.com>
7042 * gst/gstevent.h (gst_event_new_new_segment)
7043 (gst_event_parse_new_segment, gst_event_new_buffer_size)
7044 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
7045 Renamed from *_newsegment, *_buffersize, *_notarget.
7047 * scripts/update-funcnames: New script, performs the changes
7050 2005-11-22 Wim Taymans <wim@fluendo.com>
7052 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7053 Make sure the GstFlowReturn is returned.
7055 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
7056 (gst_bus_add_signal_watch):
7058 add gst_bus_add_signal_watch_full.
7060 * gst/gstplugin.c: (gst_plugin_load_file):
7061 Small style cleanup.
7063 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
7065 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
7066 Block the fakesrc srcpad when we send an event, to avoid
7067 contention on the stream_lock causing random test failures.
7069 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
7071 * check/gst/gstvalue.c: (GST_START_TEST):
7072 * gst/gstvalue.c: (gst_value_fraction_subtract):
7075 2005-11-22 Stefan Kost <ensonic@users.sf.net>
7078 include "gstchildproxy.h"
7079 * gst/gstchildproxy.h:
7080 * libs/gst/controller/gstcontroller.h:
7081 use G_GNUC_NULL_TERMINATED
7083 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
7085 * check/gst/capslist.h:
7086 * check/gst/gstcaps.c: (GST_START_TEST):
7087 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
7088 * gst/gststructure.c: (gst_structure_parse_range),
7089 (gst_structure_fixate_field_nearest_fraction):
7090 * gst/gststructure.h:
7091 * gst/gstvalue.c: (gst_value_init_fraction_range),
7092 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
7093 (gst_value_collect_fraction_range),
7094 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
7095 (gst_value_set_fraction_range_full),
7096 (gst_value_get_fraction_range_min),
7097 (gst_value_get_fraction_range_max),
7098 (gst_value_serialize_fraction_range),
7099 (gst_value_transform_fraction_range_string),
7100 (gst_value_compare_fraction_range),
7101 (gst_value_deserialize_fraction_range),
7102 (gst_value_intersect_fraction_fraction_range),
7103 (gst_value_intersect_fraction_range_fraction_range),
7104 (gst_value_subtract_fraction_fraction_range),
7105 (gst_value_subtract_fraction_range_fraction),
7106 (gst_value_subtract_fraction_range_fraction_range),
7107 (gst_value_collect_fraction), (gst_value_fraction_multiply),
7108 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
7109 (gst_value_transform_string_fraction), (_gst_value_initialize):
7111 Implement fraction ranges and extend GstFraction to support
7112 arithmetic subtraction, as well as deserialization from integer
7113 strings such as "100"
7114 Add a testsuite as for int and double range set operations
7116 2005-11-21 Andy Wingo <wingo@pobox.com>
7120 * gst/gststructure.h: Add glib-compat.h.
7122 2005-11-21 Wim Taymans <wim@fluendo.com>
7124 * gst/gstbin.c: (gst_bin_change_state_func):
7127 2005-11-21 Wim Taymans <wim@fluendo.com>
7130 And add a nice define too.
7132 2005-11-21 Wim Taymans <wim@fluendo.com>
7134 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
7135 (gst_segment_new), (gst_segment_free), (gst_segment_init),
7136 (gst_segment_set_duration), (gst_segment_set_last_stop),
7137 (gst_segment_set_seek), (gst_segment_set_newsegment),
7138 (gst_segment_to_stream_time), (gst_segment_to_running_time),
7141 Make binding friendly.
7143 2005-11-21 Andy Wingo <wingo@pobox.com>
7145 * gst/gsttagsetter.h:
7147 * gst/gststructure.h:
7149 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
7152 * gst/gsterror.c (_gst_core_errors_init):
7153 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
7156 * gst/Makefile.am (gst_headers): Add glib-compat.h.
7157 (noinst_HEADERS): noinst the -private.
7159 2005-11-21 Michael Smith <msmith@fluendo.com>
7162 * gst/gstregistry.h:
7163 Remove unimplemented declarations for which we can see no sensible
7166 2005-11-21 Andy Wingo <wingo@pobox.com>
7168 * gst/gst.h: Include glib-compat.h.
7170 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
7172 * gst/glib-compat.c: Include the public and the private header.
7174 * gst/glib-compat-private.h: Copied here from glib-compat.h.
7178 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
7180 * check/gst/gstevent.c (create_custom_events): Check that
7181 FLUSH_STOP is serialized.
7183 * check/elements/identity.c (event_func):
7184 * check/elements/fakesrc.c (event_func): No stream lock, the core
7187 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
7188 stream lock taking, yay.
7190 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
7191 ensure that core takes the stream lock.
7193 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
7196 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
7197 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
7198 it already. For the flush start we do take it though so we get the
7199 right preroll state change messages.
7201 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
7202 the stream lock here, the core does it for us.
7204 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
7205 GST_STREAM_GET_LOCK.
7206 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
7207 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
7208 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
7209 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
7210 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
7211 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
7213 * gst/gstpad.c: Update for stream lock name change.
7215 * gst/base/gstbasesink.c: Update for preroll lock name change.
7217 2005-11-21 Wim Taymans <wim@fluendo.com>
7219 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
7220 (gst_clock_get_master):
7222 * gst/gstsystemclock.c: (gst_system_clock_init):
7223 Convert Clock flags to object flags.
7224 Added methods to manage master/slave clocks.
7226 2005-11-21 Wim Taymans <wim@fluendo.com>
7228 * check/gst/gstsegment.c: (GST_START_TEST):
7229 * docs/design/part-TODO.txt:
7230 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7231 (gst_base_sink_event), (gst_base_sink_do_sync),
7232 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
7233 (gst_base_sink_query), (gst_base_sink_change_state):
7234 * gst/base/gstbasesink.h:
7235 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
7236 (gst_base_src_default_newsegment),
7237 (gst_base_src_configure_segment), (gst_base_src_do_seek),
7238 (gst_base_src_get_range), (gst_base_src_loop),
7239 (gst_base_src_change_state):
7240 * gst/base/gstbasesrc.h:
7241 * gst/base/gstbasetransform.c:
7242 (gst_base_transform_prepare_output_buf),
7243 (gst_base_transform_event), (gst_base_transform_change_state):
7244 * gst/base/gstbasetransform.h:
7245 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
7246 (gst_collect_pads_event):
7247 * gst/base/gstcollectpads.h:
7248 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
7249 (gst_fake_src_create):
7250 * gst/elements/gstfakesrc.h:
7251 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
7252 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
7253 (gst_segment_set_last_stop), (gst_segment_set_seek),
7254 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
7255 (gst_segment_to_running_time), (gst_segment_clip):
7257 More segment updates, replace code in plugins with segment
7260 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
7262 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
7263 Don't ignore sscanf results
7265 2005-11-21 Andy Wingo <wingo@pobox.com>
7267 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
7270 * *.c: Ran scripts/update-macros. Oh yes.
7272 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
7273 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
7276 * scripts/update-macros: New script. Run it on your files to
7277 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
7280 2005-11-21 Stefan Kost <ensonic@users.sf.net>
7282 * docs/gst/Makefile.am:
7283 * docs/gst/gstreamer-docs.sgml:
7284 * docs/gst/gstreamer-sections.txt:
7285 * docs/gst/gstreamer.types:
7287 more docs fixes, add new api to the docs
7289 2005-11-21 Andy Wingo <wingo@pobox.com>
7291 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
7292 state_broadcast call.
7294 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
7296 2005-11-21 Julien MOUTTE <julien@moutte.net>
7298 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
7299 function calls for arrays.
7301 2005-11-21 Stefan Kost <ensonic@users.sf.net>
7303 * docs/random/ensonic/media-device-daemon.txt:
7304 wild idea, can this be done?
7305 * docs/gst/gstreamer-sections.txt:
7310 * gst/gstpluginfeature.c:
7314 doc fixes and additions
7316 2005-11-21 Andy Wingo <wingo@pobox.com>
7318 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
7319 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
7320 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
7321 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
7322 private to the basesrc implementation.
7324 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
7325 behalf of event function if necessary. It should no longer be
7326 necessary to take the stream lock in pad's event functions. Fixes
7329 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
7330 * docs/gst/gstreamer-sections.txt:
7331 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
7332 (gst_structure_fixate_field_nearest_double),
7333 (gst_structure_fixate_field_boolean):
7334 * gst/gststructure.h:
7335 * win32/common/libgstreamer.def:
7336 * win32/gstreamer.def:
7338 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
7341 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
7343 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
7344 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
7345 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
7346 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
7347 (gst_fdsrc_uri_handler_init):
7348 * gst/elements/gstfdsrc.h:
7349 Port fd:// URI handler from 0.8 to fdsrc
7351 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7353 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
7354 (gst_value_serialize_fourcc):
7356 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
7357 consistent with our other format defines (#320324).
7359 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7361 * gst/gstvalue.c: (gst_value_is_fixed):
7362 Revert previous commit. Value lists are by definition
7363 not fixed, as they are a list of possible values.
7365 2005-11-21 Andy Wingo <wingo@pobox.com>
7367 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
7368 during the stable series if we need it. Fixes #319178.
7370 * gst/gstevent.c (gst_event_new_filler): Removed.
7372 * check/gst/gstevent.c: Update comment about filler events.
7374 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7376 * gst/gstvalue.c: (gst_value_is_fixed):
7377 Should handle both value arrays and value lists.
7379 2005-11-21 Andy Wingo <wingo@pobox.com>
7381 patch by: Alessandro Dessina <alessandro nnva org>
7383 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
7384 functions to access arrays. Fixes #321962.
7386 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7388 * docs/gst/gstreamer.types:
7389 gst_collectpads_get_type => gst_collect_pads_get_type.
7391 * gst/base/gstbasetransform.c:
7392 Remove unused SIGNAL_HANDOFF enum.
7394 2005-11-21 Andy Wingo <wingo@pobox.com>
7396 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
7397 the event type (upstream, downstream, serialized). Renamed
7398 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
7399 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
7400 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
7402 * gst/gstevent.c: Update for new CUSTOM event names.
7404 * check/gst/gstevent.c: Update check for new CUSTOM event names.
7407 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
7410 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7412 * docs/gst/gstreamer-sections.txt:
7413 * win32/common/libgstbase.def:
7414 * win32/libgstbase.def:
7415 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
7416 (gst_collect_pads_class_init), (gst_collect_pads_init),
7417 (gst_collect_pads_finalize), (gst_collect_pads_new),
7418 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
7419 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
7420 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
7421 (gst_collect_pads_start), (gst_collect_pads_stop),
7422 (gst_collect_pads_peek), (gst_collect_pads_pop),
7423 (gst_collect_pads_available), (gst_collect_pads_read),
7424 (gst_collect_pads_flush), (gst_collect_pads_event),
7425 (gst_collect_pads_chain):
7426 * gst/base/gstcollectpads.h:
7427 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
7428 unimplemented functions as unimplemented. Add padding to
7429 GstCollectData. (#320766, #320423)
7431 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7434 Improve docs for DURATION message (usage of duration parameter)
7437 2005-11-20 Wim Taymans <wim@fluendo.com>
7439 * check/Makefile.am:
7440 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
7444 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
7445 (gst_segment_set_seek), (gst_segment_set_newsegment),
7446 (gst_segment_to_stream_time), (gst_segment_to_running_time),
7449 Added segment helper structure and methods. Not fully implemented
7451 Added segment check.
7453 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
7455 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
7456 Add a deserialisation test for fractions
7457 * examples/metadata/read-metadata.c: (message_loop),
7458 (make_pipeline), (main):
7459 Fix up metadata reading sample.
7460 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7462 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
7463 Don't try and fixate empty caps
7464 * gst/gst_private.h:
7465 Wrap in G_BEGIN_DECLS/G_END_DECLS
7466 * gst/gstvalue.c: (gst_value_collect_fraction),
7467 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
7468 (gst_value_transform_string_fraction),
7469 (gst_value_compare_fraction):
7470 Add some extra guards to ensure that we don't end up
7471 with an invalid denominator of 0 in a gstfraction and
7472 that fractions always get reduced.
7474 2005-11-20 Wim Taymans <wim@fluendo.com>
7476 * docs/gst/gstreamer-sections.txt:
7487 2005-11-20 Wim Taymans <wim@fluendo.com>
7489 * docs/design/part-TODO.txt:
7491 Make a proper enum of the flag.
7493 2005-11-19 Wim Taymans <wim@fluendo.com>
7495 * docs/design/part-TODO.txt:
7496 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
7497 (gst_format_to_quark), (gst_format_register):
7499 * gst/gstquery.c: (_gst_query_initialize),
7500 (gst_query_type_get_name), (gst_query_type_to_quark),
7501 (gst_query_type_register):
7503 Add type to quark and type to string conversions.
7505 2005-11-19 Andy Wingo <wingo@pobox.com>
7507 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
7510 2005-11-19 Wim Taymans <wim@fluendo.com>
7512 * docs/design/part-TODO.txt:
7513 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
7514 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
7515 (gst_bin_handle_message_func):
7517 Make message handling overridable.
7519 2005-11-19 Andy Wingo <wingo@pobox.com>
7521 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
7524 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
7526 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
7527 is a GstClockTime. Fixes #321710.
7529 * gst/gstclock.h (GstClock): Remove offset property. Add
7530 internal_calibration and external_calibration. Fix padding. Pad
7531 also by GstClockTime so we don't run into problems.
7533 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
7534 (gst_clock_get_rate_offset): Remove.
7535 (gst_clock_set_time_adjust): Remove. Fixes #321712.
7538 * gst/gstutils.c (g_static_rec_cond_wait)
7539 (g_static_rec_cond_timed_wait): Removed, no longer needed.
7541 * gst/gstbin.c: Remove terrible continue_state prototype.
7543 * gst/gstelement.h (gst_element_continue_state): Make public.
7546 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
7547 by continue_state. Fixes #319389.
7549 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
7550 Really fixes #168438. However I don't see anywhere where the
7551 filter function is called... stupid GStreamer...
7553 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
7554 don't have a dispose function, so it won't get called when the
7555 object is unreffed, but oh well!
7557 * gst/gstindex.c (gst_index_set_filter_full): New API function,
7558 allows a destroy function to be set so user_data can be freed.
7560 (gst_index_set_filter): Call gst_index_set_filter_full.
7562 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
7564 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
7565 string should produce an error, given the lack of a way to
7566 represent NULL strings. Fixes #165650.
7569 * gst/gstvalue.c (gst_value_array_append_value)
7570 (gst_value_array_prepend_value, gst_value_array_get_size)
7571 (gst_value_array_get_value): New API, copied from
7572 gst_value_list_*, only operates on arrays.
7573 (gst_value_list_append_value, gst_value_list_prepend_value)
7574 (gst_value_list_concat, gst_value_list_get_size)
7575 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
7577 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
7578 init_list, because it works on both.
7579 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
7580 (gst_value_copy_list_or_array): Renamed from copy_list.
7581 (gst_value_free_list_or_array): Renamed from free_list.
7582 (gst_value_collect_list_or_array): Renamed from collect_list.
7583 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
7584 (gst_value_list_or_array_peek_pointer): Renamed from
7586 (_gst_value_array_value_table, _gst_value_list_value_table):
7587 Update value table functions.
7588 (gst_value_compare_list_or_array): Renamed from compare_list.
7590 * gsttaglist.h: Whoops, foreach function returns void. Also fix
7594 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
7595 GstTagList*. Fixes #143472.
7597 * gst/gststructure.h: Clarify what the foreach/map functions can
7598 or can't do to their arguments.
7600 2005-11-18 Wim Taymans <wim@fluendo.com>
7602 * gst/gstclock.c: (gst_clock_set_calibration),
7603 (gst_clock_get_calibration):
7605 Calibration can be set with internal time equal to current
7608 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
7614 2005-11-18 Andy Wingo <wingo@pobox.com>
7617 * pkgconfig/gstreamer-net.pc.in:
7618 * pkgconfig/gstreamer-net-uninstalled.pc.in:
7619 * pkgconfig/Makefile.am: Add net pkgconfig files.
7621 2005-11-18 Stefan Kost <ensonic@users.sf.net>
7624 * gst/gstghostpad.c:
7630 2005-11-18 Andy Wingo <wingo@pobox.com>
7632 * gst/net/gstnetclientclock.c: Turn off debugging.
7634 * check/net/gstnetclientclock.c (test_functioning): Assert that the
7635 times connverge somewhat. Can't make a real test.
7637 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
7638 integer arithmetic. Return the minimum of the domain, which can be
7639 set as "internal" for gst_clock_set_calibration.
7640 (gst_net_client_clock_observe_times): Call _set_calibration.
7641 (gst_net_client_clock_new): Call _set_calibration instead of
7644 * check/net/gstnetclientclock.c (test_functioning): Use the right
7648 * gst/gstclock.c (gst_clock_get_calibration)
7649 (gst_clock_set_calibration): New functions, obsolete the ones I
7650 added yesterday. Doh. Precision issues mean we have to extrapolate
7651 from a point in the more recent past than 1970.
7652 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
7654 (gst_clock_adjust_unlocked): Use the right calibration data.
7656 2005-11-18 Edward Hervey <edward@fluendo.com>
7658 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
7659 Also reset the ->current_* values in READY->PAUSED
7661 2005-11-18 Andy Wingo <wingo@pobox.com>
7663 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
7664 Whoops, check the right fd. Also add some debugging.
7665 (gst_net_client_clock_observe_times): Adjust for int64 offset.
7666 (do_linear_regression): Add a crapload of debugging. Subtract off
7667 the minimum values from the input series to discard unneeded bits.
7668 Use only int arithmetic. There is still double arithmetic when
7669 calculating the intercept that needs fixing. Return boolean to
7670 indicate success; FALSE would mean the domain or range is too
7671 great. Still needs fixes.
7673 2005-11-18 Wim Taymans <wim@fluendo.com>
7675 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
7676 For the current position in stream time, we need to subtract
7679 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
7680 Release lock before calling the callback function of async
7683 2005-11-18 Andy Wingo <wingo@pobox.com>
7685 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
7686 Port goes all the way to MAXUINT16.
7688 * gst/net/gstnettimeprovider.c: Make the port range the same as
7689 for the kernel: 0 assigns, otherwise ports are less than
7692 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
7695 * check/net/gstnetclientclock.c (test_functioning): Add the start
7698 2005-11-18 Wim Taymans <wim@fluendo.com>
7700 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
7701 (gst_bin_remove_func), (bin_bus_handler):
7703 Removing a clock provider from a bin, triggers a clock lost message
7704 so that a new clock will be selected.
7705 Adding a clock to a bin triggers a clock provider message.
7706 Make sure we reselect a clock when we received a clock lost message.
7707 Keep a reference to the element that provided the clock.
7709 2005-11-18 Andy Wingo <wingo@pobox.com>
7711 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
7712 the clock initially so it produces values around the base time.
7713 (gst_net_client_clock_class_init): Typo fix.
7714 (gst_net_client_clock_thread): Add note on when the socket gets
7717 2005-11-17 Wim Taymans <wim@fluendo.com>
7719 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
7720 Free remote and local time arrays.
7722 2005-11-17 Wim Taymans <wim@fluendo.com>
7724 * gst/net/gstnetclientclock.c: (do_linear_regression),
7725 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
7726 Fix compilation, uninitialized vars and a forgotten continue.
7728 2005-11-17 Andy Wingo <wingo@pobox.com>
7730 * check/Makefile.am (check_PROGRAMS):
7731 * check/net/gstnetclientclock.c: Add a most minimal test for the
7732 net client clock. More to come later.
7735 * gst/net/Makefile.am: Add netclientclock.
7737 * gst/net/gstnetclientclock.h:
7738 * gst/net/gstnetclientclock.c: New files, implement an untested
7739 GstClock that takes its time from a network time provider.
7740 Implements the algorithm in network-clock.scm.
7742 * tests/network-clock.scm (*window-size*): Rename from
7744 * tests/network-clock.scm (network-time):
7745 * tests/network-clock-utils.scm (q-push): Update callers.
7747 2005-11-17 Wim Taymans <wim@fluendo.com>
7749 * gst/gstbin.c: (gst_bin_provide_clock_func),
7750 (gst_bin_sort_iterator_new):
7751 And unref the child too..
7753 2005-11-17 Wim Taymans <wim@fluendo.com>
7755 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
7756 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
7757 Refactor the sort iterator so it can be used while holding the
7759 Make clock selection select a clock closest to the source.
7761 2005-11-17 Michael Smith <msmith@fluendo.com>
7763 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
7764 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
7766 Anonymous structs are a gcc (and some other compilers) extension, so
7767 don't use them. Since this is only for ABI-compatibility, and our
7768 API/ABI freeze is over in a few days, this whole thing will only
7769 last a few days, so don't bother trying to think up a meaningful
7770 name for the struct.
7772 2005-11-17 Andy Wingo <wingo@pobox.com>
7774 * gst/gstclock.h (GstClock): Add rate and offset properties,
7775 preserving ABI stability. Add rate/offset accessors. Will file bug
7776 for the freeze break.
7778 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
7779 and offset, trying to keep precision and avoiding
7781 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
7782 functions. Make gst_clock_set_time_adjust obsolete.
7783 (gst_clock_set_time_adjust): Note that this function is obsolete.
7786 * gst/base/gstbasetransform.h: Make the ABI-stability hack
7787 greppable by using GST_PADDING-1+1.
7789 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
7791 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
7793 * gst/gstmessage.c: (gst_message_parse_clock_lost):
7794 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
7796 * gst/gstpadtemplate.h:
7797 * gst/gstpluginfeature.h:
7798 Don't use c++ style comments in headers (#321638).
7800 2005-11-16 Andy Wingo <wingo@pobox.com>
7802 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
7805 * check/net/gstnettimeprovider.c: Check to see that the time
7806 provider actually provides times. Works, yo!
7808 2005-11-16 Wim Taymans <wim@fluendo.com>
7810 * check/Makefile.am:
7813 * check/elements/fakesrc.c: (GST_START_TEST):
7814 Set element to NULL before disposing it.
7816 2005-11-16 Andy Wingo <wingo@pobox.com>
7818 * gst/net/Makefile.am:
7820 * gst/net/gstnettimeprovider.c:
7821 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
7822 provider, include it from gstnet.h, and add it to the build.
7824 * gst/net/gstnettimepacket.h:
7825 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
7826 sending and receiving.
7828 2005-11-16 Wim Taymans <wim@fluendo.com>
7830 * check/Makefile.am:
7831 Enable valgrind check.
7833 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
7834 (gst_fake_src_alloc_buffer):
7837 2005-11-16 Wim Taymans <wim@fluendo.com>
7839 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
7840 Call parent finalize too.
7842 2005-11-16 Wim Taymans <wim@fluendo.com>
7844 * check/Makefile.am:
7845 Enable valgrind check that should work fine now.
7847 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7848 * gst/gstqueue.c: (gst_queue_init):
7849 Fix memleaks in pad allocation.
7851 2005-11-16 Andy Wingo <wingo@pobox.com>
7853 * gst/net/Makefile.am:
7854 * gst/net/gstnet.h: New part of core to hold network elements and
7855 objects. Put in core because it exposes API that applications want
7856 to use. The library is named libgstnet-tempname right now because
7857 of the existing libgstnet in gst-plugins-base. Solution is
7858 probably to rename the one in plugins-base; will file a bug for
7861 * gst/net/gstnettimeprovider.c:
7862 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
7863 get_time call over the network.
7866 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
7868 * check/Makefile.am:
7869 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
7870 get additions shortly.
7872 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7874 * gst/gstpad.c: (gst_pad_new_from_static_template):
7876 add gst_pad_new_from_static_template functions
7877 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
7878 (gst_check_setup_sink_pad):
7879 * gst/elements/gsttee.c: (gst_tee_init):
7882 2005-11-16 Wim Taymans <wim@fluendo.com>
7884 * gst/gstpad.c: (gst_pad_pause_task):
7885 Removed warning, it's not really an error either.
7887 2005-11-16 Wim Taymans <wim@fluendo.com>
7889 * gst/base/gstbasetransform.c:
7890 (gst_base_transform_prepare_output_buf),
7891 (gst_base_transform_event):
7892 Check if the caps are NULL, this can happen if the element
7893 is shutting down and the pad caps are set to NULL.
7895 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7897 * gst/elements/gsttee.c: (gst_tee_init):
7898 fix pad template leak in tee
7900 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7902 * gst/glib-compat.c: (g_value_dup_gst_object):
7903 * gst/glib-compat.h:
7904 * gst/gstpad.c: (gst_pad_set_property):
7905 use gst_object_ref when setting the pad template; this will
7906 trigger the pad template leaks on GLib 2.6 and the slaves
7908 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7910 * gst/glib-compat.c: (gst_flags_get_first_value):
7911 * gst/glib-compat.h:
7912 * gst/gstregistryxml.c:
7913 remove functions copied from GLib 2.6
7915 2005-11-16 Michael Smith <msmith@fluendo.com>
7918 Don't link against VALGRIND_LIBS. That was always the wrong thing to
7919 do, but only breaks with newer valgrind versions. We're not a
7920 valgrind tool, we have no link-time dependencies on libcoregrind.
7922 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7924 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
7929 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7931 * gst/base/gstbasesrc.c: (gst_base_src_init):
7932 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7933 * gst/gstqueue.c: (gst_queue_init):
7934 * gst/gstregistryxml.c: (load_feature):
7935 Revert all these unrefs, they don't even pass make check !
7937 2005-11-15 Johan Dahlin <johan@gnome.org>
7939 * gst/base/gstbasesrc.c: (gst_base_src_init):
7940 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7941 * gst/gstqueue.c: (gst_queue_init):
7942 Free pad templates, fixes a couple of leaks.
7944 2005-11-15 Daniel Fischer <dan at f3c dot com>
7946 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
7948 * gst/gstpad.c: (gst_pad_get_property):
7949 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
7950 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
7953 2005-11-15 Wim Taymans <wim@fluendo.com>
7958 2005-11-15 Andy Wingo <wingo@pobox.com>
7960 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
7962 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
7963 using GST_CLOCK_TIME_NONE to disable base time management.
7964 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
7965 time if it was NONE before.
7966 (gst_pipeline_change_state): Only munge the base time if
7967 stream_time != GST_CLOCK_TIME_NONE.
7969 * check/gst/gstpipeline.c (test_base_time): Punt around the
7970 problem of the probe not being called, because that's not the
7971 issue I'm looking at. Add a check that setting stream_time to NONE
7972 disables base time management.
7974 2005-11-15 Wim Taymans <wim@fluendo.com>
7976 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
7977 segment_stop == -1 at startup.
7979 * gst/base/gstbasetransform.c: (gst_base_transform_event),
7980 (gst_base_transform_change_state):
7981 Init segment values at start.
7983 2005-11-15 Wim Taymans <wim@fluendo.com>
7985 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7986 0 segment values are 0 in any format.
7988 * gst/base/gstbasetransform.c: (gst_base_transform_event):
7989 * gst/base/gstbasetransform.h:
7990 Parse newsegment correctly in basetransform
7992 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
7993 Sync to clock using updated segment values.
7995 2005-11-15 Andy Wingo <wingo@pobox.com>
7997 * check/gst/gstpipeline.c (test_base_time): Add check that the
7998 base time and stream time are reset correctly.
8000 2005-11-15 Wim Taymans <wim@fluendo.com>
8002 * docs/design/part-TODO.txt:
8003 Some more TODO items.
8005 2005-11-15 Andy Wingo <wingo@pobox.com>
8007 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
8008 error if the user selected "no clock" as the clocking method.
8010 * check/gst/gstpipeline.c (test_base_time): New test for buffer
8011 timestamps with live capture.
8013 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
8014 is 0 but we are a live source, timestamp the buffers using the
8017 2005-11-14 Stefan Kost <ensonic@users.sf.net>
8019 * docs/gst/gstreamer-sections.txt:
8021 * gst/gstghostpad.c:
8026 2005-11-14 Wim Taymans <wim@fluendo.com>
8029 add suppressions from Wim's Debian machine
8031 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
8034 add suppressions from Andy's AMD64 Ubuntu machine
8036 2005-11-14 Andy Wingo <wingo@pobox.com>
8038 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
8039 STATE_LOCK not necessary. Fixes #311489.
8041 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
8044 * gst/gstindex.c (gst_index_add_object): Note in the docs that
8045 this function is not implemented.
8047 2005-11-14 Julien MOUTTE <julien@moutte.net>
8049 * gst/base/gstbasetransform.c:
8050 (gst_base_transform_prepare_output_buf):
8051 Ref the source pad caps while we need them.
8054 2005-11-11 Wim Taymans <wim@fluendo.com>
8056 * docs/gst/gstreamer-sections.txt:
8057 Added some docs for GstCollectData.
8059 * gst/base/gstadapter.c:
8060 Some small code example fix.
8062 * gst/base/gstcollectpads.c:
8063 * gst/base/gstcollectpads.h:
8066 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
8068 * configure.ac: back to HEAD
8070 === release 0.9.5 ===
8072 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
8075 releasing 0.9.5, "Bike Lunch Day"
8077 2005-11-11 Wim Taymans <wim@fluendo.com>
8079 * gst/gstbuffer.c: (_gst_buffer_copy):
8082 * gst/gstcaps.c: (gst_caps_is_equal):
8084 Make _is_equal fast in the trivial cases.
8086 * gst/gstminiobject.c:
8087 * gst/gstminiobject.h:
8088 More docs. Spifify .h file.
8093 2005-11-11 Wim Taymans <wim@fluendo.com>
8095 * gst/base/gstbasetransform.c:
8096 (gst_base_transform_prepare_output_buf),
8097 (gst_base_transform_handle_buffer):
8099 If we're processing a buffer and need to allocate an output
8100 buffer, we cannot accept a format change. If we did get a
8101 format change, we have to alloc a buffer ourselves of the
8104 2005-11-11 Wim Taymans <wim@fluendo.com>
8106 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
8107 While checking the flag for reentrancy in the gstcaps function
8108 is nice to detect recursive invocations, it also makes it
8109 impossible to call getcaps from multiple threads, which must be
8110 possible. So, checking for recursive calls has to go.
8112 2005-11-11 Michael Smith <msmith@fluendo.com>
8114 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
8115 Don't sync on buffers that fall partially outside our current
8116 segment. Prevents an assertion failure/abort playing some files.
8118 2005-11-10 Andy Wingo <wingo@pobox.com>
8120 * check/gst/gstbin.c (test_message_state_changed_children): Style
8123 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
8124 gst_bus_poll with the signal watch. Ensures that poll and a signal
8125 watch see the same messages.
8127 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
8128 a poll and a watch at the same time get the same messages.
8130 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
8132 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
8133 * gst/gstcaps.c: (gst_caps_intersect):
8134 Don't call gst_caps_do_simplify - it doesn't respect order of caps
8135 and it's not needed.
8137 2005-11-10 Wim Taymans <wim@fluendo.com>
8139 * docs/design/part-TODO.txt:
8142 2005-11-10 Wim Taymans <wim@fluendo.com>
8144 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
8145 * gst/base/gstbasesrc.c: (gst_base_src_wait),
8146 (gst_base_src_do_sync), (gst_base_src_get_range):
8147 Implement clock sync in base class.
8149 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
8151 patch by: Tim-Philipp Müller <tim at centricular dot net>
8153 * gst/gststructure.c: (gst_structure_parse_field),
8154 (gst_structure_from_string):
8155 Forward-port a 0.8 patch to handle escaped spaces in structure string,
8156 so that gst_parse_launch() can deal with spaces in filtered link
8157 caps (fixes #164479)
8158 * check/gst/capslist.h:
8159 * check/gst/gststructure.c: (GST_START_TEST):
8160 add unit tests for this change
8162 2005-11-10 Wim Taymans <wim@fluendo.com>
8164 * docs/gst/gstreamer-sections.txt:
8167 Fix docs, move some STATE macros to private.
8169 2005-11-10 Wim Taymans <wim@fluendo.com>
8171 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
8172 Added check for bug #317341
8176 Some more spiffifying.
8178 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
8179 Call peer linkfunction if we are a source pad. Totally fixes
8183 Update docs, source pads should call the peer linkfunction
8184 so they can atomically perform the pad link.
8186 2005-11-09 Wim Taymans <wim@fluendo.com>
8190 Uber-spiffy-spiffify some more.
8192 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
8194 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
8195 * gst/elements/gstfilesink.c: (gst_file_sink_init):
8196 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
8197 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
8198 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
8199 * gst/gstpad.c: (gst_pad_init):
8200 Use GST_DEBUG_FUNCPTR() more extensively.
8202 2005-11-09 Wim Taymans <wim@fluendo.com>
8204 * gst/gstobject.c: (gst_object_class_init):
8206 Documentation fixes.
8208 2005-11-09 Edward Hervey <edward@fluendo.com>
8210 * gst/gsttypefindfactory.c:
8213 2005-11-09 Edward Hervey <edward@fluendo.com>
8215 * gst/base/gsttypefindhelper.c:
8216 * gst/gsttypefind.c:
8217 * gst/gsttypefind.h:
8220 2005-11-09 Wim Taymans <wim@fluendo.com>
8222 * gst/gstiterator.c:
8229 2005-11-09 Wim Taymans <wim@fluendo.com>
8235 2005-11-09 Wim Taymans <wim@fluendo.com>
8237 * docs/gst/gstreamer-sections.txt:
8238 Moved the message async delivery private lock and cond
8239 to the private section.
8245 2005-11-09 Edward Hervey <edward@fluendo.com>
8247 * docs/gst/gstreamer-sections.txt:
8250 Document GstURIHandler
8252 2005-11-09 Wim Taymans <wim@fluendo.com>
8254 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
8255 (gst_iterator_find_custom):
8256 * gst/gstiterator.h:
8259 2005-11-09 Wim Taymans <wim@fluendo.com>
8262 Document another field.
8264 * gst/gststructure.c:
8265 * gst/gststructure.h:
8268 2005-11-09 Wim Taymans <wim@fluendo.com>
8273 2005-11-09 Wim Taymans <wim@fluendo.com>
8275 * docs/gst/gstreamer-sections.txt:
8276 Added some new macros.
8283 2005-11-09 Wim Taymans <wim@fluendo.com>
8285 * docs/design/part-TODO.txt:
8286 Some more items for the TODO
8292 2005-11-09 Andy Wingo <wingo@pobox.com>
8294 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
8295 to work on something else now tho...
8297 * gst/base/gstadapter.c: More adapter docs.
8299 * gst/elements/gstfilesink.c (gst_file_sink_start)
8300 (gst_file_sink_stop): New functions, replace the state change
8302 (gst_file_sink_class_init): Hook up the start and stop functions.
8303 (gst_file_sink_base_init): Don't set the state change handler any
8304 more. It was a bit ugly too, being set from here...
8305 (gst_file_sink_get_property, gst_file_sink_set_property):
8307 (gst_file_sink_set_location): More robust check that doesn't call
8310 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
8312 * gst/base/gstbasetransform.c: (gst_base_transform_event):
8313 Hold STREAM_LOCK while pushing newsegment or tag events as well.
8315 2005-11-08 Wim Taymans <wim@fluendo.com>
8317 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
8318 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
8319 (gst_base_sink_chain), (gst_base_sink_change_state):
8320 * gst/base/gstbasesink.h:
8321 * gst/base/gstbasesrc.h:
8324 Avoid excessive typechecking in macros.
8326 * gst/gstminiobject.c: (gst_mini_object_get_type),
8327 (gst_mini_object_init), (gst_mini_object_new),
8328 (gst_mini_object_free):
8329 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
8330 (gst_object_finalize):
8331 Remove cruft code, optimize alloc_trace.
8333 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
8335 * docs/faq/gst-uninstalled:
8336 fix up PS1 for systems that try to reset it
8338 2005-11-07 Wim Taymans <wim@fluendo.com>
8340 * gst/base/gstbasesrc.c: (gst_base_src_init),
8341 (gst_base_src_get_range):
8342 Set the segment_end to -1 initially. Fixed typefind.
8344 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
8346 * gst/base/gstadapter.c:
8347 Debug category should be 'adapter', not 'GstAdapter'.
8349 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
8350 (gst_collectpads_class_init), (gst_collectpads_init),
8351 (gst_collectpads_peek), (gst_collectpads_pop),
8352 (gst_collectpads_event), (gst_collectpads_chain):
8353 Add debug category and some debugging output. Use boilerplate
8354 macros. Remove some extraneous words from docs.
8356 2005-11-05 Andy Wingo <wingo@pobox.com>
8358 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
8361 2005-11-04 Stefan Kost <ensonic@users.sf.net>
8363 * docs/gst/gstreamer-sections.txt:
8366 * gst/gstminiobject.h:
8371 2005-11-04 Wim Taymans <wim@fluendo.com>
8373 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
8374 Small update to stop at the configured segment_end
8377 2005-11-04 Stefan Kost <ensonic@users.sf.net>
8379 * gst/gstregistry.c:
8380 * gst/gstregistry.h:
8383 2005-11-04 Edward Hervey <edward@fluendo.com>
8385 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
8386 Check if we are doing a segment seek and have arrived at the
8387 end of that segment.
8389 2005-11-04 Wim Taymans <wim@fluendo.com>
8391 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
8392 Don't leak a mutex unlock in case of an error.
8397 2005-11-04 Wim Taymans <wim@fluendo.com>
8399 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
8401 Get the context to wake up only once.
8403 2005-11-03 Wim Taymans <wim@fluendo.com>
8405 * check/states/sinks.c: (GST_START_TEST):
8406 Uncomment fixed check.
8408 * docs/design/part-TODO.txt:
8411 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8412 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
8413 (gst_base_sink_get_position):
8414 If we are going to PLAYING, post the right pending state
8415 when we post the intermediate paused message.
8417 * gst/gstelement.c: (gst_element_continue_state),
8418 (gst_element_set_state_func), (gst_element_change_state):
8419 Don't post state changes that were between the same state
8422 2005-11-03 Stefan Kost <ensonic@users.sf.net>
8424 * docs/gst/gstreamer-sections.txt:
8427 * gst/gstminiobject.h:
8430 more docs and doc style fixes
8432 2005-11-03 Stefan Kost <ensonic@users.sf.net>
8434 * docs/gst/gstreamer-sections.txt:
8436 * gst/gstminiobject.c:
8439 2005-11-03 Andy Wingo <wingo@pobox.com>
8441 * check/states/sinks.c (test_livesrc_sink): Add checks that the
8442 state-changed messages actually have the right order and the right
8445 2005-11-03 Wim Taymans <wim@fluendo.com>
8447 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
8448 Added some more checks. Specifically the case where NO_PREROLL
8449 elements are in the pipeline.
8451 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8452 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
8453 (gst_base_sink_get_position):
8454 Post READY->PAUSED state change messages too.
8455 Fix bug where VOID was posted as pending state...
8457 * gst/gstbin.c: (gst_bin_recalc_state):
8458 use _element_continue_state() to continue the state change.
8460 * gst/gstelement.c: (gst_element_continue_state),
8461 (gst_element_commit_state), (gst_element_set_state_func),
8462 (gst_element_change_state), (gst_element_change_state_func):
8463 Lots of state change cleanups, assign the STATE_RETURN in
8464 a new continue_state() function that also propagates the
8465 last return value from a state change to the app.
8466 Update some debug statements with proper category.
8468 2005-11-03 Wim Taymans <wim@fluendo.com>
8470 * docs/design/part-events.txt:
8471 * docs/design/part-gstpipeline.txt:
8472 * docs/design/part-messages.txt:
8473 * docs/design/part-overview.txt:
8474 * docs/design/part-seeking.txt:
8475 * docs/design/part-states.txt:
8476 * docs/design/part-trickmodes.txt:
8477 * docs/manual/advanced-position.xml:
8481 People think !! is ugly, this looks better.
8483 * gst/gstpad.c: (gst_pad_set_blocked_async):
8484 Remove !! since it's fixed elsewhere now.
8486 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8488 * gst/gstminiobject.h:
8490 Add !! to _FLAG_IS_SET macros to make the result boolean.
8492 2005-11-03 Edward Hervey <edward@fluendo.com>
8494 * gst/gstpad.c: (gst_pad_set_blocked_async):
8495 comparing a flag and a gboolean rarely returns coherent results...
8496 Added two characters (!!) to make that work correctly.
8498 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8500 * gst/gstbus.c: (gst_bus_class_init):
8503 * gst/gstqueue.c: (gst_queue_loop):
8504 Don't assume a miniobject that isn't a buffer is an
8505 event (it could be that there is a refcounting
8506 problem somewhere and the pointer is stale and
8507 refers to an already destroyed miniobject).
8509 2005-11-03 Julien MOUTTE <julien@moutte.net>
8511 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
8513 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8515 * docs/manual/advanced-position.xml:
8516 Update seek example and explanations to current 0.9 API.
8518 * gst/elements/gsttypefindelement.c:
8519 (gst_type_find_element_activate):
8520 Remove FIXME comment now that the found caps
8523 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
8525 * gst/gstregistryxml.c: (load_feature):
8526 Add another GST_STR_NULL instance
8528 2005-11-02 Edward Hervey <edward@fluendo.com>
8530 * gst/gstpad.c: (handle_pad_block):
8531 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
8533 2005-11-02 Wim Taymans <wim@fluendo.com>
8538 * gst/gstelement.c: (gst_element_commit_state):
8539 Remove unused value.
8541 * gst/gstiterator.c:
8542 Mention that the returned element is reffed in the docs.
8544 2005-11-02 Wim Taymans <wim@fluendo.com>
8546 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
8547 (gst_pad_push), (gst_pad_push_event):
8548 Unlock blocked pads when they are flushed.
8550 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8553 * docs/gst/gstreamer-sections.txt:
8556 * gst/gstregistry.c: (gst_registry_scan_path_level):
8557 fix for a nasty little missed situation where an installed plug-in
8558 which was in the cache did not get overridden by an uninstalled one
8559 which was earlier in the plugin path because the newly created plugin
8560 for the uninstalled one (not in the registry) didn't get its
8561 ->registered set to TRUE
8563 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
8565 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
8566 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
8567 (gst_collectpads_is_active), (gst_collectpads_collect),
8568 (gst_collectpads_collect_range), (gst_collectpads_start),
8569 (gst_collectpads_stop), (gst_collectpads_peek),
8570 (gst_collectpads_pop), (gst_collectpads_available),
8571 (gst_collectpads_read), (gst_collectpads_flush):
8572 Guard public API with assertions.
8575 Fix docs for gst_pad_set_link_function().
8577 2005-11-02 Johan Dahlin <johan@gnome.org>
8579 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
8580 Unref found_caps after we used it.
8582 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
8584 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
8585 Don't try to ref NULL.
8587 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8589 * win32/common/config.h.in:
8590 provide a GST_FUNCTION that just gives a string for now
8592 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8594 * win32/common/gstenumtypes.c: (register_gst_object_flags),
8595 (gst_object_flags_get_type), (register_gst_bin_flags),
8596 (gst_bin_flags_get_type), (register_gst_buffer_flag),
8597 (gst_buffer_flag_get_type), (register_gst_bus_flags),
8598 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
8599 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
8600 (gst_clock_return_get_type), (register_gst_clock_entry_type),
8601 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
8602 (gst_clock_flags_get_type), (register_gst_state),
8603 (gst_state_get_type), (register_gst_state_change_return),
8604 (gst_state_change_return_get_type), (register_gst_state_change),
8605 (gst_state_change_get_type), (register_gst_element_flags),
8606 (gst_element_flags_get_type), (register_gst_core_error),
8607 (gst_core_error_get_type), (register_gst_library_error),
8608 (gst_library_error_get_type), (register_gst_resource_error),
8609 (gst_resource_error_get_type), (register_gst_stream_error),
8610 (gst_stream_error_get_type), (register_gst_event_type),
8611 (gst_event_type_get_type), (register_gst_seek_type),
8612 (gst_seek_type_get_type), (register_gst_seek_flags),
8613 (gst_seek_flags_get_type), (register_gst_format),
8614 (gst_format_get_type), (register_gst_index_certainty),
8615 (gst_index_certainty_get_type), (register_gst_index_entry_type),
8616 (gst_index_entry_type_get_type),
8617 (register_gst_index_lookup_method),
8618 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
8619 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
8620 (gst_index_resolver_method_get_type), (register_gst_index_flags),
8621 (gst_index_flags_get_type), (register_gst_debug_level),
8622 (gst_debug_level_get_type), (register_gst_debug_color_flags),
8623 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
8624 (gst_iterator_result_get_type), (register_gst_iterator_item),
8625 (gst_iterator_item_get_type), (register_gst_message_type),
8626 (gst_message_type_get_type), (register_gst_mini_object_flags),
8627 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
8628 (gst_pad_link_return_get_type), (register_gst_flow_return),
8629 (gst_flow_return_get_type), (register_gst_activate_mode),
8630 (gst_activate_mode_get_type), (register_gst_pad_direction),
8631 (gst_pad_direction_get_type), (register_gst_pad_flags),
8632 (gst_pad_flags_get_type), (register_gst_pad_presence),
8633 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
8634 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
8635 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
8636 (gst_plugin_error_get_type), (register_gst_plugin_flags),
8637 (gst_plugin_flags_get_type), (register_gst_rank),
8638 (gst_rank_get_type), (register_gst_query_type),
8639 (gst_query_type_get_type), (register_gst_tag_merge_mode),
8640 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
8641 (gst_tag_flag_get_type), (register_gst_task_state),
8642 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
8643 (gst_alloc_trace_flags_get_type),
8644 (register_gst_type_find_probability),
8645 (gst_type_find_probability_get_type), (register_gst_uri_type),
8646 (gst_uri_type_get_type), (register_gst_parse_error),
8647 (gst_parse_error_get_type):
8648 * win32/common/gstversion.h:
8651 2005-11-01 Luca Ognibene <luogni@tin.it>
8654 fix docs. popt is dead, long live GOption.
8656 2005-10-31 Wim Taymans <wim@fluendo.com>
8661 2005-10-31 Andy Wingo <wingo@pobox.com>
8665 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
8667 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
8668 need to serialize property notifications on GLib 2.8. GLib 2.6 has
8669 the possibility of deadlocks here if code calling notify() or
8670 set() has a lock that can be taken in another notify handler (ABBA
8671 with class lock and e.g. python GIL state lock).
8673 2005-10-28 Julien MOUTTE <julien@moutte.net>
8675 * gst/gstbus.c: Doc updates.
8677 2005-10-28 Wim Taymans <wim@fluendo.com>
8679 * docs/design/part-TODO.txt:
8680 * gst/gstiterator.c:
8681 * gst/gstsystemclock.c:
8682 * gst/gstsystemclock.h:
8685 2005-10-28 Edward Hervey <edward@fluendo.com>
8687 * docs/gst/gstreamer-docs.sgml:
8688 * docs/gst/gstreamer-sections.txt:
8689 the GstURIType documentation page is private, it only defines GstURIType
8690 which should be defined in the GstURIHandler page
8692 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
8694 * gst/gstbin.c: (gst_bin_class_init):
8697 Documentation updates.
8699 2005-10-28 Wim Taymans <wim@fluendo.com>
8701 * docs/gst/gstreamer-sections.txt:
8704 Documented the clocks.
8706 2005-10-28 Stefan Kost <ensonic@users.sf.net>
8708 * docs/gst/gstreamer-sections.txt:
8709 move some macros to private sections
8710 * gst/gstminiobject.c:
8711 * gst/gstminiobject.h:
8712 add descriptions provided by ds and some more
8714 mark macro as to be removed
8716 2005-10-28 Wim Taymans <wim@fluendo.com>
8718 * docs/design/part-TODO.txt:
8719 Add an item to TODO.
8721 * gst/gstiterator.c: (gst_iterator_fold),
8722 (gst_iterator_find_custom):
8723 * gst/gstiterator.h:
8726 2005-10-28 Wim Taymans <wim@fluendo.com>
8728 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
8729 (gst_base_transform_init):
8732 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
8733 An EOS event marks the queue as completely filled.
8735 2005-10-27 Wim Taymans <wim@fluendo.com>
8737 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8738 (gst_base_sink_do_sync), (gst_base_sink_get_position):
8739 Some more debugging.
8741 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
8742 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
8743 (gst_base_transform_event), (gst_base_transform_getrange),
8744 (gst_base_transform_chain):
8745 * gst/base/gstbasetransform.h:
8747 Protect transform and concurrent buffer alloc with a new lock.
8748 Try not to break ABI/API.
8750 2005-10-27 Wim Taymans <wim@fluendo.com>
8752 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
8753 (gst_base_src_init), (gst_base_src_query),
8754 (gst_base_src_default_newsegment),
8755 (gst_base_src_configure_segment), (gst_base_src_do_seek),
8756 (gst_base_src_send_event), (gst_base_src_event_handler),
8757 (gst_base_src_pad_get_range), (gst_base_src_loop),
8758 (gst_base_src_unlock), (gst_base_src_default_negotiate),
8759 (gst_base_src_start), (gst_base_src_deactivate),
8760 (gst_base_src_activate_push), (gst_base_src_change_state):
8761 Move some stuff around and cleanup things.
8763 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
8765 * gst/base/gstbasesrc.c: (gst_base_src_query):
8766 Add missing break statements.
8768 2005-10-27 Wim Taymans <wim@fluendo.com>
8770 * check/gst/gstbin.c: (GST_START_TEST):
8771 An extra refcount is taken in basesrc.
8773 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
8774 (gst_base_src_get_range), (gst_base_src_pad_get_range),
8775 (gst_base_src_loop):
8776 Small cleanups, check for flushing after being unlocked from the
8777 LIVE_LOCK. take refcounts correctly (not yet everywhere).
8778 Don't send out EOS when going to READY.
8780 2005-10-27 Wim Taymans <wim@fluendo.com>
8782 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8783 (gst_base_sink_get_position):
8786 * gst/gstbin.c: (message_check), (bin_replace_message),
8787 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8788 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8789 (bin_query_duration_init), (bin_query_duration_fold),
8790 (bin_query_duration_done), (bin_query_generic_fold),
8792 * tools/gst-launch.c: (main):
8795 2005-10-26 Stefan Kost <ensonic@users.sf.net>
8797 * examples/controller/audio-example.c: (main):
8798 * examples/queue/queue.c: (event_loop):
8799 * gst/base/gstbasetransform.h:
8800 * gst/gstelement.c: (gst_element_send_event):
8802 * gst/gstpad.c: (gst_pad_send_event):
8805 changing log priority in error situations
8807 2005-10-25 Wim Taymans <wim@fluendo.com>
8809 * gst/gstbin.c: (message_check), (bin_replace_message),
8810 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8811 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8812 (bin_query_duration_init), (bin_query_duration_fold),
8813 (bin_query_duration_done), (bin_query_generic_fold),
8815 Some doc and debug updates.
8816 Cache previously requested query DURATION for speed. invalidate
8817 cached duration if element posts a DURATION message.
8819 2005-10-25 Wim Taymans <wim@fluendo.com>
8821 * docs/design/part-TODO.txt:
8824 * gst/gstbin.c: (message_check), (bin_replace_message),
8825 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8826 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8827 (bin_query_duration_init), (bin_query_duration_fold),
8828 (bin_query_duration_done), (bin_query_generic_fold),
8830 Handle SEGMENT_START/DONE messages correctly.
8831 More evolved query algorithm that handles duration queries
8834 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
8835 (gst_element_get_state_func), (gst_element_abort_state),
8836 (gst_element_commit_state), (gst_element_lost_state):
8837 Some more debugging.
8842 2005-10-25 Wim Taymans <wim@fluendo.com>
8844 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
8845 Don't use invalid stream_time.
8847 * gst/gstevent.c: (gst_event_new_newsegment):
8848 stream_time in newsegment cannot be undefined.
8850 2005-10-24 Wim Taymans <wim@fluendo.com>
8855 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
8857 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
8859 2005-10-24 Stefan Kost <ensonic@users.sf.net>
8861 * docs/libs/tmpl/gstdparam.sgml:
8862 * docs/libs/tmpl/gstdplinint.sgml:
8863 * docs/libs/tmpl/gstdpman.sgml:
8864 * docs/libs/tmpl/gstdpsmooth.sgml:
8865 * docs/libs/tmpl/gstunitconvert.sgml:
8868 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
8873 === release 0.9.4 ===
8875 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
8878 releasing 0.9.4, "Tyrannosaurus Rex"
8880 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
8882 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
8883 (gst_file_sink_get_current_offset):
8884 Use fseeko() and ftello() if available. When falling back on
8885 lseek() to get the current offset, fflush() first to make sure
8886 everything is up-to-date and we get the right offset.
8888 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
8890 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8891 * gst/base/gstbasesrc.c: (gst_base_src_loop):
8892 * gst/gsterror.c: (_gst_stream_errors_init):
8894 * gst/gstqueue.c: (gst_queue_loop):
8896 remove prematurely added error category and clean up the instances
8898 2005-10-21 Wim Taymans <wim@fluendo.com>
8900 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8901 (gst_base_sink_get_position), (gst_base_sink_query),
8902 (gst_base_sink_change_state):
8903 Simply set the right flag when going to playing, that's all
8904 we need to do instead of calling a function inside the object
8905 lock (that could take the lock as well and deadlock)
8907 2005-10-21 Wim Taymans <wim@fluendo.com>
8909 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
8910 (gst_base_src_loop):
8911 Don't warn, the peer element knows what to do best when
8912 the seek failed, it might try something else.
8914 2005-10-21 Wim Taymans <wim@fluendo.com>
8916 * gst/base/gstbasesrc.c: (gst_base_src_init),
8917 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
8920 2005-10-21 Wim Taymans <wim@fluendo.com>
8922 * docs/design/part-segments.txt:
8925 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
8926 Correctly set caps, even on the subbufer.
8928 2005-10-21 Wim Taymans <wim@fluendo.com>
8930 * docs/gst/gstreamer-docs.sgml:
8931 * docs/gst/gstreamer-sections.txt:
8938 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
8942 And 2% more doc coverage.
8944 2005-10-21 Andy Wingo <wingo@pobox.com>
8946 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
8949 2005-10-20 Wim Taymans <wim@fluendo.com>
8951 * gst/gsterror.c: (gst_error_get_message):
8954 * gst/gststructure.c:
8959 2005-10-20 Wim Taymans <wim@fluendo.com>
8964 Another 1% more coverage.
8966 2005-10-20 Wim Taymans <wim@fluendo.com>
8968 * docs/gst/gstreamer-sections.txt:
8969 * gst/gstelement.c: (gst_element_get_state_func),
8970 (gst_element_abort_state), (gst_element_commit_state),
8971 (gst_element_lost_state):
8973 * gst/gstquery.c: (gst_query_set_position),
8974 (gst_query_parse_position), (gst_query_set_duration),
8975 (gst_query_parse_duration), (gst_query_new_convert):
8977 Yay! 1% more docs coverage.
8979 2005-10-20 Wim Taymans <wim@fluendo.com>
8982 * gst/gstquery.c: (gst_query_set_position),
8983 (gst_query_parse_position), (gst_query_set_duration),
8984 (gst_query_parse_duration), (gst_query_new_convert):
8986 * gst/gstutils.c: (gst_element_query_convert):
8988 Docs and consistency fixes.
8990 2005-10-20 Wim Taymans <wim@fluendo.com>
8996 2005-10-20 Wim Taymans <wim@fluendo.com>
8998 * gst/gstbin.c: (message_check), (bin_replace_message),
8999 (bin_remove_messages), (is_eos), (gst_bin_add_func),
9000 (update_degree), (gst_bin_sort_iterator_next),
9001 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
9002 Reworked the message handling a bit, cache the messages instead of
9003 only the senders. alows us to do more in the future.
9005 2005-10-20 Wim Taymans <wim@fluendo.com>
9007 * docs/design/part-TODO.txt:
9010 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
9011 (gst_base_sink_query):
9012 Don't use clock time to report position when in EOS.
9014 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
9016 * tools/gst-inspect.c: (print_interfaces),
9017 (print_element_properties_info), (print_element_info):
9018 Fix interface output with gst-inspect -a; don't print
9019 newlines after double/float properties.
9021 2005-10-20 Wim Taymans <wim@fluendo.com>
9023 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
9024 (gst_base_sink_query):
9025 Speed up current position calculation.
9027 * gst/base/gstbasesrc.c: (gst_base_src_query),
9028 (gst_base_src_default_newsegment):
9029 Correctly set stream position in newsegment.
9031 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
9032 (update_degree), (gst_bin_sort_iterator_next),
9033 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
9034 * gst/gstmessage.c: (gst_message_new_custom):
9035 Clean up debugging info
9037 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
9038 (gst_queue_loop), (gst_queue_handle_src_query):
9041 2005-10-19 Wim Taymans <wim@fluendo.com>
9043 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
9044 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
9045 Fix query handling again.
9047 2005-10-19 Wim Taymans <wim@fluendo.com>
9049 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
9050 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
9051 * gst/base/gstbasesrc.c: (gst_base_src_query):
9052 * gst/elements/gstfilesink.c: (gst_file_sink_query):
9053 * gst/elements/gsttypefindelement.c:
9054 (gst_type_find_handle_src_query), (find_element_get_length),
9055 (gst_type_find_element_activate):
9058 * gst/gstquery.c: (gst_query_new_position),
9059 (gst_query_set_position), (gst_query_parse_position),
9060 (gst_query_new_duration), (gst_query_set_duration),
9061 (gst_query_parse_duration), (gst_query_set_segment),
9062 (gst_query_parse_segment):
9064 Bundling query position/duration is not a good idea since duration
9065 does not change much and we don't want to recalculate it for every
9066 position query, so they are separated again..
9067 Base value in segment query is not needed.
9069 * gst/gstqueue.c: (gst_queue_handle_src_query):
9070 * gst/gstutils.c: (gst_element_query_position),
9071 (gst_element_query_duration), (gst_pad_query_position),
9072 (gst_pad_query_duration):
9074 Updates for query API change.
9075 Added some docs here and there.
9077 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
9079 * check/gst/gstbin.c: (GST_START_TEST):
9080 * check/gst/gstghostpad.c: (GST_START_TEST):
9081 * check/pipelines/cleanup.c: (GST_START_TEST):
9082 wait on thread to die so we can check refcount correctly
9084 2005-10-18 Wim Taymans <wim@fluendo.com>
9086 * check/pipelines/stress.c: (GST_START_TEST):
9087 Make check a little more time consuming.
9089 2005-10-18 Wim Taymans <wim@fluendo.com>
9091 * check/Makefile.am:
9092 * check/pipelines/stress.c: (GST_START_TEST),
9093 (simple_launch_lines_suite), (main):
9094 Small state change torture test.
9096 * docs/design/part-states.txt:
9097 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
9098 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
9099 (gst_base_sink_change_state):
9100 Never take state lock from streaming thread, clean up ugly
9101 hacks. Unfortunatly core does not yet support nice ways to
9104 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
9106 Start state recalc if a STATE_DIRTY message is posted, but only
9107 on the toplevel bin.
9109 * gst/gstelement.c: (gst_element_sync_state_with_parent),
9110 (gst_element_get_state_func), (gst_element_abort_state),
9111 (gst_element_commit_state), (gst_element_lost_state),
9112 (gst_element_set_state_func), (gst_element_change_state):
9114 State variables are now protected with the LOCK, the state
9115 lock is only used to serialize _set_state().
9117 2005-10-18 Wim Taymans <wim@fluendo.com>
9119 * check/gst/gstbin.c: (GST_START_TEST):
9120 * check/gst/gstmessage.c: (GST_START_TEST):
9121 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
9122 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
9124 * gst/gstelement.c: (gst_element_abort_state),
9125 (gst_element_commit_state), (gst_element_lost_state):
9126 * gst/gstmessage.c: (gst_message_new_state_changed),
9127 (gst_message_new_state_dirty), (gst_message_new_segment_start),
9128 (gst_message_new_segment_done), (gst_message_new_duration),
9129 (gst_message_parse_state_changed),
9130 (gst_message_parse_segment_start),
9131 (gst_message_parse_segment_done), (gst_message_parse_duration):
9133 * tools/gst-launch.c: (event_loop):
9134 Seriously, this is better than a previous commit as we only need
9135 to notify the fact that an element changed state in a streaming
9136 thread, marking the state of the parents dirty, hence the
9137 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
9140 2005-10-18 Wim Taymans <wim@fluendo.com>
9142 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
9143 (gst_bin_recalc_func):
9144 * gst/gstelement.c: (gst_element_set_clock),
9145 (gst_element_abort_state), (gst_element_lost_state):
9146 Cleanups, prepare for state change fixes.
9148 2005-10-18 Wim Taymans <wim@fluendo.com>
9151 * gst/gstelement.c: (gst_element_class_init),
9152 (gst_element_set_state), (gst_element_set_state_func):
9154 Pending ABI changes.
9155 GThreadPool in GstBinClass to monitor async state changes.
9156 state_cookie in GstElement to detect concurrent gst/set state.
9157 set_state is now virtual too in case a very complicated element
9158 has to be constructed.
9160 2005-10-18 Wim Taymans <wim@fluendo.com>
9162 * check/gst/gstbin.c: (GST_START_TEST):
9163 * check/gst/gstmessage.c: (GST_START_TEST):
9164 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
9165 * gst/gstbin.c: (bin_bus_handler):
9166 * gst/gstelement.c: (gst_element_commit_state),
9167 (gst_element_lost_state):
9168 * gst/gstmessage.c: (gst_message_new_state_changed),
9169 (gst_message_new_segment_start), (gst_message_new_segment_done),
9170 (gst_message_new_duration), (gst_message_parse_state_changed),
9171 (gst_message_parse_segment_start),
9172 (gst_message_parse_segment_done), (gst_message_parse_duration):
9174 * tools/gst-launch.c: (event_loop):
9175 Make messages future proof.
9176 state-change gets a flag if it was a message comming from the
9178 segment-start/stop can also be specified in other formats.
9179 A message to notify an app that a pipeline changed playback
9181 Also fix a GstMessage leak in -launch
9183 2005-10-18 Andy Wingo <wingo@pobox.com>
9185 * gst/gstelement.c (gst_element_dispose): More helpful message.
9187 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
9189 reviewed by: <delete if not using a buddy>
9191 * common/gtk-doc.mak:
9193 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
9195 * gst/gstregistry.c: (gst_registry_scan_path_level):
9196 unref a plug-in we get that was already initialized
9198 2005-10-18 Stefan Kost <ensonic@users.sf.net>
9200 * docs/gst/gstreamer-sections.txt:
9201 * docs/libs/gstreamer-libs-sections.txt:
9206 2005-10-17 Andy Wingo <wingo@pobox.com>
9208 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
9211 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
9213 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
9215 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
9216 (gst_element_get_state_func): Better debug message.
9217 (gst_element_commit_state): s/INFO/DEBUG/.
9218 (gst_element_lost_state, gst_element_change_state):
9220 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
9221 (gst_message_new_custom): s/INFO/LOG/.
9223 2005-10-17 Michael Smith <msmith@fluendo.com>
9225 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
9226 Check if end time is valid using end time, not start time.
9228 2005-10-17 Stefan Kost <ensonic@users.sf.net>
9230 * check/gst-libs/controller.c: (GST_START_TEST),
9231 (gst_controller_suite):
9232 * libs/gst/controller/gstcontroller.c:
9233 (gst_controlled_property_set_interpolation_mode):
9234 * libs/gst/controller/gstcontroller.h:
9235 * libs/gst/controller/gstinterpolation.c:
9236 * testsuite/controller/.cvsignore:
9237 * testsuite/controller/Makefile.am:
9238 * testsuite/controller/interpolator.c:
9239 merge controller testsuites
9241 remove mem-chunk from docs
9243 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
9245 * gst/gstmemchunk.c:
9246 * gst/gstmemchunk.h:
9247 * gst/gsttrashstack.c:
9248 * gst/gsttrashstack.h:
9249 out. get out. you're fired. to the Attic !
9251 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
9253 * gst/gstcaps.c: (gst_caps_intersect):
9254 fix signedness issues in a (hopefully) correct way
9255 * gst/gstelement.c: (gst_element_pads_activate):
9257 * gst/gstobject.c: (gst_object_set_parent):
9260 2005-10-17 Julien MOUTTE <julien@moutte.net>
9262 * gst/gstvalue.h: Fix prototypes.
9264 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
9266 * docs/gst/gstreamer-sections.txt:
9267 * gst/gst.c: (gst_version_string):
9269 * gst/gstversion.h.in:
9270 * win32/common/libgstreamer.def:
9271 add gst_version_string ()
9273 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
9277 * gst/gst.c: (init_post):
9278 * win32/common/config.h.in:
9280 * gst/gstcaps.c: (gst_caps_intersect):
9281 use gint64, the range could be bigger than a guint
9283 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
9286 document potential problem in 2038
9288 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
9290 * gst/gstcaps.c: (gst_caps_intersect):
9291 Fix guint j diving under 0
9293 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
9296 * win32/common/config.h:
9297 * win32/common/config.h.in:
9298 check for process.h, declares getpid() on Windows
9300 include process.h if we have it
9301 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
9302 * gst/gstmemchunk.h:
9303 fix signedness issues
9304 * win32/common/libgstreamer.def:
9307 2005-10-16 Julien MOUTTE <julien@moutte.net>
9309 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
9310 fix. Because of unsigned ints, caps intersection was going nuts and
9311 trying to access structures with G_MAXUINT index. That fixes
9312 videotestsrc ! ffmpegcolorspace ! fakesink
9313 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
9316 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
9319 use the gettext macro
9320 * gst/elements/gstelements.c:
9322 * gst/indexers/gstindexers.c:
9323 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
9324 * win32/common/config.h:
9326 * win32/common/config.h.in:
9327 add the template to generate config.h
9328 * win32/common/gstenumtypes.c:
9329 * win32/common/gstversion.h:
9332 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
9334 * gst/gst.c: (gst_version):
9335 * gst/gstversion.h.in:
9338 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
9341 Oops, add missing closing bracket.
9343 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9346 use common m4's for argument checking
9348 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
9350 * docs/gst/gstreamer-sections.txt:
9352 Add GST_EVENT_TYPE_NAME() macro.
9354 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9357 * gst/gstpluginfeature.c:
9359 privatize more symbols
9361 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9364 add srcdir, builddir includes to GST_ALL_CFLAGS, since
9365 everything that uses GStreamer API should have the includes
9367 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9369 * docs/gst/gstreamer-sections.txt:
9370 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
9372 give each value a _get_type, removes the DATA exports
9374 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9378 remove _gst_registry_auto_load, not used anymore
9379 * gst/gstbin.c: (gst_bin_get_type):
9381 * gst/gstelement.c: (gst_element_get_type):
9383 * gst/gstobject.c: (gst_object_get_type):
9385 * gst/gstpad.c: (gst_pad_get_type):
9387 make _get_type functions similar, fixes data export from library
9389 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9392 correctly make conditionals
9393 * gst/elements/Makefile.am:
9394 * gst/elements/gstelements.c:
9395 fix typo causing fdsrc not to build
9397 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9399 * testsuite/Makefile.am:
9400 * testsuite/bytestream/.cvsignore:
9401 * testsuite/bytestream/Makefile.am:
9402 * testsuite/bytestream/filepadsink.c:
9403 * testsuite/bytestream/gstbstest.c:
9404 * testsuite/bytestream/test1.c:
9405 * testsuite/bytestream/testfile1:
9406 * testsuite/caps/normalisation.c:
9407 * testsuite/caps/random.c: (main):
9408 * testsuite/cleanup/.cvsignore:
9409 * testsuite/cleanup/Makefile.am:
9410 * testsuite/cleanup/cleanup1.c:
9411 * testsuite/cleanup/cleanup2.c:
9412 * testsuite/cleanup/cleanup3.c:
9413 * testsuite/cleanup/cleanup4.c:
9414 * testsuite/cleanup/cleanup5.c:
9415 * testsuite/controller/interpolator.c:
9416 * testsuite/debug/printf_extension.c: (main):
9417 * testsuite/elements/tee.c:
9418 * testsuite/negotiation/.cvsignore:
9419 * testsuite/negotiation/Makefile.am:
9420 * testsuite/negotiation/pad_link.c:
9421 * testsuite/pad/Makefile.am:
9422 * testsuite/pad/chainnopull.c:
9423 * testsuite/pad/getnopush.c:
9424 * testsuite/pad/link.c:
9425 * testsuite/refcounting/sched.c: (create_pipeline):
9426 * testsuite/registry/Makefile.am:
9427 * testsuite/registry/gst-print-formats.c:
9428 * testsuite/schedulers/.cvsignore:
9429 * testsuite/schedulers/142183-2.c:
9430 * testsuite/schedulers/142183.c:
9431 * testsuite/schedulers/143777-2.c:
9432 * testsuite/schedulers/143777.c:
9433 * testsuite/schedulers/147713.c:
9434 * testsuite/schedulers/147819.c:
9435 * testsuite/schedulers/147894-2.c:
9436 * testsuite/schedulers/147894.c:
9437 * testsuite/schedulers/Makefile.am:
9438 * testsuite/schedulers/group_link.c:
9439 * testsuite/schedulers/queue_link.c:
9440 * testsuite/schedulers/relink.c:
9441 * testsuite/schedulers/unlink.c:
9442 * testsuite/schedulers/unref.c:
9443 * testsuite/schedulers/useless_iteration.c:
9444 * testsuite/states/bin.c:
9445 clean out/remove some stuff from the testsuite directories
9447 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9450 check for some headers
9451 * gst/elements/Makefile.am:
9452 * gst/elements/gstelements.c:
9453 don't compile fdsrc without sys/socket.h
9454 * gst/indexers/Makefile.am:
9455 * gst/indexers/gstindexers.c: (plugin_init):
9456 don't compile fileindex without mmap
9458 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9465 * check/Makefile.am:
9466 * docs/gst/Makefile.am:
9467 * examples/helloworld/Makefile.am:
9469 * gst/base/Makefile.am:
9470 * gst/check/Makefile.am:
9471 * gst/elements/Makefile.am:
9472 * gst/indexers/Makefile.am:
9473 * gst/parse/Makefile.am:
9474 * libs/gst/controller/Makefile.am:
9475 * libs/gst/dataprotocol/Makefile.am:
9476 * examples/helloworld/helloworld.c: (event_loop):
9477 compile fixes, though it's not being compiled currently
9479 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9481 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
9482 Add some simple tests for the new taglist date API.
9484 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9486 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
9487 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
9488 Beautify 'last-message' output: print 'none' for buffer timestamps
9489 and durations if none is set; improve alignment with next messages.
9491 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9493 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
9494 * gst/gstpluginfeature.h:
9495 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
9496 * gst/gstregistry.h:
9497 * docs/gst/gstreamer-sections.txt:
9498 Add new API to check plugin feature version requirements.
9500 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
9501 Some basic tests for the above.
9503 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9505 * gst/gststructure.c: (gst_structure_to_string):
9506 guard against NULL printf - happens when for example
9507 a message structure with GstClock gets serialized
9509 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
9511 * gst/base/gstcollectpads.c: (gst_collectpads_event):
9512 Fix presumable copy'n'pasto.
9514 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9516 * gst/elements/gstfakesrc.h:
9517 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
9518 * gst/elements/gsttypefindelement.c:
9520 * gst/elements/gstfilesink.c: (gst_file_sink_render):
9521 I wonder if this could actually write +2GB files before
9523 2005-10-13 Andy Wingo <wingo@pobox.com>
9525 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
9526 Fix Timmeke Waymans bug.
9527 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
9528 string of the proper length to gst_caps_from_string. There's a
9529 potential for, before this fix, that this could cause someone
9530 connecting over the network to cause a segfault if the payload is
9533 2005-10-13 Stefan Kost <ensonic@users.sf.net>
9535 * docs/design/draft-push-pull.txt:
9536 * docs/design/part-overview.txt:
9537 * docs/random/TODO-pre-0.9:
9538 * docs/random/old/ChangeLog.gstreamer:
9539 * gst/base/gstpushsrc.c:
9543 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9545 * gst/glib-compat.c: (gst_flags_get_first_value):
9546 * gst/glib-compat.h:
9547 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
9548 (gst_value_compare_double), (gst_value_serialize_flags):
9549 GLib 2.6 g_flags_get_first_value has a bug that triggers an
9552 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9554 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9555 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
9557 * tools/gst-launch.c: (event_loop):
9558 print out clock nicely
9560 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
9562 * docs/gst/gstreamer-sections.txt:
9564 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
9565 (gst_tag_list_get_date_index):
9566 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
9567 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
9569 2005-10-13 Julien MOUTTE <julien@moutte.net>
9571 * gst/base/gstcollectpads.c: (gst_collectpads_event),
9572 (gst_collectpads_chain):
9573 * gst/base/gstcollectpads.h: Handle newsegment and store informations
9576 2005-10-13 Stefan Kost <ensonic@users.sf.net>
9578 * docs/gst/gstreamer-sections.txt:
9581 * tools/gst-inspect.c: (main):
9582 * tools/gst-launch.c: (main):
9583 * tools/gst-run.c: (main):
9584 * tools/gst-xmlinspect.c: (main):
9585 fix GOption context leaks
9588 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9592 * win32/common/config.h:
9594 * win32/vs6/grammar.dsp:
9595 * win32/vs6/libgstelements.dsp:
9596 * win32/vs6/libgstreamer.dsp:
9599 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9601 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9602 * gst/base/gstbasesrc.c: (gst_base_src_query):
9603 fix more guint64<->gdouble conversions
9605 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9608 add win32-update target
9609 * win32/common/gstconfig.h:
9610 * win32/common/gstenumtypes.c:
9611 * win32/common/gstenumtypes.h:
9612 * win32/common/gstversion.h:
9613 add files that visual studio can't generate
9615 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9618 add a win32-update target
9621 2005-10-12 Wim Taymans <wim@fluendo.com>
9623 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
9624 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
9625 * gst/gstelement.c: (gst_element_commit_state),
9626 (gst_element_set_state):
9627 Protect flags with proper lock.
9628 unref provided cached clock in dispose.
9630 2005-10-12 Stefan Kost <ensonic@users.sf.net>
9633 * gst/gstminiobject.h:
9635 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
9636 removed unused flags from miniobject
9639 2005-10-12 Wim Taymans <wim@fluendo.com>
9641 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
9642 (gst_file_sink_event), (gst_file_sink_render):
9643 Flush before seeking.
9645 2005-10-12 Andy Wingo <wingo@pobox.com>
9647 * gst/gst.c (gst_init_check): Ignore unknown options, as has
9648 always been the case.
9650 2005-10-12 Stefan Kost <ensonic@users.sf.net>
9652 * check/gst/gstbin.c: (GST_START_TEST):
9653 * docs/gst/gstreamer-sections.txt:
9654 * gst/base/gstbasesink.c: (gst_base_sink_init):
9655 * gst/base/gstbasesrc.c: (gst_base_src_init),
9656 (gst_base_src_get_range), (gst_base_src_check_get_range),
9657 (gst_base_src_start), (gst_base_src_stop):
9658 * gst/base/gstbasesrc.h:
9659 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
9660 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
9661 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
9665 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
9667 * gst/gstelement.c: (gst_element_is_locked_state),
9668 (gst_element_set_locked_state), (gst_element_commit_state),
9669 (gst_element_set_state):
9671 * gst/gstindex.c: (gst_index_init):
9673 * gst/gstminiobject.h:
9674 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
9675 (gst_object_set_parent):
9677 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
9678 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
9680 * gst/gstpadtemplate.h:
9681 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
9682 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
9683 * gst/gstpipeline.h:
9684 * gst/indexers/gstfileindex.c: (gst_file_index_load),
9685 (gst_file_index_commit):
9686 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
9687 * testsuite/pad/link.c: (gst_test_src_init),
9688 (gst_test_filter_init), (gst_test_sink_init):
9689 * testsuite/states/locked.c: (main):
9690 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
9691 moved bitshift from macro to enum definition
9693 2005-10-12 Wim Taymans <wim@fluendo.com>
9695 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
9696 * gst/elements/gstfilesink.c: (gst_file_sink_event),
9697 (gst_file_sink_render):
9698 Some more debugging info.
9700 2005-10-12 Wim Taymans <wim@fluendo.com>
9702 * docs/design/part-states.txt:
9703 * tools/gst-launch.c: (main):
9705 Revert non-intentional change.
9707 2005-10-12 Wim Taymans <wim@fluendo.com>
9709 * check/gst/gstbin.c: (GST_START_TEST):
9710 * check/gst/gstelement.c: (GST_START_TEST):
9711 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
9712 * check/gst/gstghostpad.c: (GST_START_TEST):
9713 * check/gst/gstpipeline.c: (GST_START_TEST):
9714 * check/pipelines/simple_launch_lines.c: (run_pipeline):
9715 * check/states/sinks.c: (GST_START_TEST):
9716 * gst/elements/gsttypefindelement.c: (stop_typefinding):
9717 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
9718 (gst_bin_remove_func), (gst_bin_get_state_func),
9719 (gst_bin_recalc_state), (gst_bin_change_state_func),
9721 * gst/gstelement.c: (gst_element_get_state_func),
9722 (gst_element_get_state), (gst_element_abort_state),
9723 (gst_element_commit_state), (gst_element_set_state),
9724 (gst_element_change_state), (gst_element_change_state_func):
9726 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
9727 (gst_pipeline_provide_clock_func):
9728 * gst/gstutils.c: (gst_element_link_pads_filtered):
9729 * tools/gst-launch.c: (main):
9730 * tools/gst-typefind.c: (main):
9731 Use GstClockTime in _get_state() instead of GTimeVal.
9732 Remove old code in gstutils.c
9734 2005-10-12 Andy Wingo <wingo@pobox.com>
9736 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
9739 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
9740 there is no task. Shouldn't affect any code, as nothing in our
9741 plugins checks this return value.
9742 (gst_pad_stop_task): Also take the stream lock if the pad has no
9745 2005-10-12 Wim Taymans <wim@fluendo.com>
9747 * gst/gstpad.c: (pre_activate), (post_activate),
9748 (gst_pad_activate_pull), (gst_pad_activate_push):
9749 Cleanup activation code. Reset old state if
9752 2005-10-12 Wim Taymans <wim@fluendo.com>
9754 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9755 (gst_base_sink_change_state):
9756 No need to prerol after receiving EOS.
9758 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9759 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
9760 * gst/elements/gstidentity.c: (gst_identity_event):
9761 Print events more verbosely.
9763 2005-10-12 Wim Taymans <wim@fluendo.com>
9765 * check/Makefile.am:
9766 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
9767 * check/states/sinks2.c:
9768 Moved sinks2 testcode in sinks check.
9770 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
9771 (gst_bin_remove_func), (gst_bin_recalc_state),
9772 (gst_bin_change_state_func), (bin_bus_handler):
9773 Fix potential race condition when _get_state() iterated over an
9774 ASYNC element right before it posted a state completion.
9777 Do proper cast here.
9779 * gst/gstevent.c: (gst_event_new_newsegment),
9780 (gst_event_parse_newsegment):
9781 A playback rate of 0.0 is not allowed.
9783 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9785 * win32/common/config.h:
9786 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9787 (_trewinddir), (_ttelldir), (_tseekdir):
9788 * win32/common/dirent.h:
9789 * win32/common/gtchar.h:
9790 * win32/common/libgstbase.def:
9791 * win32/common/libgstreamer.def:
9792 * win32/vs6/grammar.dsp:
9793 * win32/vs6/gst_inspect.dsp:
9794 * win32/vs6/gst_launch.dsp:
9795 * win32/vs6/gstreamer.dsw:
9796 * win32/vs6/libgstbase.dsp:
9797 * win32/vs6/libgstelements.dsp:
9798 * win32/vs6/libgstreamer.dsp:
9799 Visual Studio 6 project files, and a new common directory.
9802 2005-10-11 Wim Taymans <wim@fluendo.com>
9804 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9805 (gst_base_sink_do_sync), (gst_base_sink_query),
9806 (gst_base_sink_change_state):
9807 * gst/base/gstbasesink.h:
9808 Correctly parse newsegment info.
9810 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9812 * gst/gst.c: (init_post):
9813 split plugin paths correctly
9815 2005-10-11 Wim Taymans <wim@fluendo.com>
9817 * check/gst/gstevent.c: (GST_START_TEST):
9818 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9819 (gst_base_sink_change_state):
9820 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
9821 * gst/base/gstbasetransform.c: (gst_base_transform_event):
9822 * gst/elements/gstfilesink.c: (gst_file_sink_event):
9823 * gst/gstevent.c: (gst_event_new_newsegment),
9824 (gst_event_parse_newsegment):
9826 Added extra flag to newsegment for future API freeze.
9827 Updated check and base elements.
9829 2005-10-11 Julien MOUTTE <julien@moutte.net>
9831 * gst/base/gstcollectpads.c: (gst_collectpads_init),
9832 (gst_collectpads_add_pad), (gst_collectpads_pop),
9833 (gst_collectpads_event), (gst_collectpads_chain):
9834 * gst/base/gstcollectpads.h: Handle EOS correctly.
9836 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9838 * tools/gst-launch.c: (main):
9839 more null protecting
9841 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9843 * gst/gst-i18n-lib.h:
9844 check for ENABLE_NLS, not GETTEXT_PACKAGE
9845 * gst/gstregistry.c: (gst_registry_add_plugin),
9846 (gst_registry_scan_path_level),
9847 (_gst_registry_remove_cache_plugins):
9848 protect possibly NULL strings
9849 * gst/parse/types.h:
9850 config.h already included before
9851 * tools/gst-inspect.c: (main):
9852 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
9853 check for ENABLE_NLS, not GETTEXT_PACKAGE
9854 * tools/gst-launch.c: (main):
9855 check for ENABLE_NLS, not GETTEXT_PACKAGE
9857 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9860 if we don't have glib, fail before testing 2.8
9861 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
9862 fix a leak, should fix plugins-base testsuite
9864 2005-10-11 Andy Wingo <wingo@pobox.com>
9866 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
9867 take the mode we're going to as an arg. Go head and set the mode
9868 and flushing flags now, so that if the activate function starts a
9869 thread all the flags will be in the right state.
9870 (post_activate): Renamed also. Just handle making sure streaming
9871 finishes for the deactivation case, and setting the deactivated
9873 (gst_pad_set_active): Complain loudly if deactivation fails.
9874 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
9875 (gst_pad_activate_push): Adapt to pre/post_activate changes,
9876 remove the terrible hack.
9878 2005-10-11 Wim Taymans <wim@fluendo.com>
9880 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
9881 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
9882 (gst_bin_recalc_state), (gst_bin_change_state_func),
9883 (gst_bin_dispose), (bin_bus_handler):
9885 Prepare to make current EOS message queue more generic.
9888 * gst/gstevent.c: (gst_event_new_newsegment),
9889 (gst_event_parse_newsegment):
9891 Rename base to stream_time.
9896 2005-10-11 Wim Taymans <wim@fluendo.com>
9898 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
9899 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
9900 (gst_bin_change_state_func), (bin_bus_handler):
9902 Work on proper clock selection.
9904 2005-10-11 Edward Hervey <edward@fluendo.com>
9906 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
9907 * libs/gst/controller/gstcontroller.h:
9908 Added GList* version of _remove_properties() in order to be able to wrap
9911 2005-10-11 Wim Taymans <wim@fluendo.com>
9913 * docs/design/part-states.txt:
9916 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
9917 (gst_bin_change_state_func), (bin_bus_handler):
9918 Doc updates. Don't distribute the same clock over and over again.
9924 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
9925 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
9926 (gst_pad_send_event):
9928 Make probe emission threadsafe again.
9929 Register quarks and move _get_name() from utils.
9932 * gst/gstpipeline.c: (gst_pipeline_class_init),
9933 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
9934 Only redistribute the clock of it changed.
9936 * gst/gstsystemclock.h:
9941 Moved the _flow_get_name() to GstPad.
9943 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9945 * check/gst-libs/gdp.c: (GST_START_TEST):
9946 * check/gst/gstcaps.c: (GST_START_TEST):
9947 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9948 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
9949 (gst_dp_packet_from_caps):
9950 fix more valgrind warnings before turning up the heat
9952 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9954 * gst/parse/grammar.y:
9955 some cleanup before the hacking
9957 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9959 * gst/base/gstbasesrc.c: (gst_base_src_query):
9961 * gst/gstutils.c: (gst_guint64_to_gdouble),
9962 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
9964 externalize, basesrc uses it
9965 obviously the implementation needs testing
9967 2005-10-10 Wim Taymans <wim@fluendo.com>
9969 * tests/sched/Makefile.am:
9970 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
9971 (make_pipeline3), (make_pipeline4), (print_elem), (main):
9973 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9975 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
9976 apparently converting from guint64 to double is not implemented
9979 2005-10-10 Wim Taymans <wim@fluendo.com>
9981 * check/Makefile.am:
9982 * check/generic/states.c: (GST_START_TEST):
9983 * check/gst/gstbin.c: (GST_START_TEST):
9984 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
9985 * check/states/sinks.c: (GST_START_TEST):
9986 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
9988 Check fixes, use API as stated in design docs, remove hacks.
9990 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9991 (gst_base_sink_change_state):
9992 Catch stopping our task while we're shutting down.
9994 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
9995 (gst_bin_remove_func), (gst_bin_get_state_func),
9996 (gst_bin_recalc_state), (gst_bin_change_state_func),
9999 * gst/gstelement.c: (gst_element_init),
10000 (gst_element_get_state_func), (gst_element_abort_state),
10001 (gst_element_commit_state), (gst_element_lost_state),
10002 (gst_element_set_state), (gst_element_change_state),
10003 (gst_element_change_state_func):
10004 * gst/gstelement.h:
10005 New state change algorithm (see #318116)
10007 * gst/gstpipeline.c: (gst_pipeline_class_init),
10008 (gst_pipeline_init), (gst_pipeline_set_property),
10009 (gst_pipeline_get_property), (do_pipeline_seek),
10010 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
10011 * gst/gstpipeline.h:
10012 Remove crude state change hacks.
10015 Remove crude hacks.
10017 * tools/gst-launch.c: (main):
10018 Fixes for state change. Needs some more work to fully use the
10021 2005-10-10 Andy Wingo <wingo@pobox.com>
10023 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
10025 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
10026 this flag, but it's not even in GLib 2.6. Odd. Hack around the
10029 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
10031 * gst/gstiterator.c: (gst_iterator_new):
10032 Fix my previous commit: GTypes passed to gst_iterator_new()
10033 can be fundamental types.
10035 2005-10-10 Wim Taymans <wim@fluendo.com>
10037 * gst/gstelement.c: (gst_element_iterate_pad_list),
10038 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
10039 (gst_element_iterate_sink_pads):
10040 Use src/sink pads lists for the respective iterators instead
10043 2005-10-10 Andy Wingo <wingo@pobox.com>
10045 Merged in popt removal + GOption addition patch from Ronald, bug
10048 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
10049 GstElement macros around, remove popt-related symbols, add goption
10052 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
10054 * docs/gst/Makefile.am:
10055 * docs/libs/Makefile.am: No POPT_CFLAGS.
10057 * examples/manual/Makefile.am:
10058 * docs/manual/basics-init.xml: Doc updates with an example.
10060 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
10061 (gst_init), (parse_one_option), (parse_goption_arg):
10062 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
10063 bit of hand merging and debugging to get the GOption stuff working
10066 * tests/Makefile.am:
10067 * tools/Makefile.am:
10068 * tools/gst-inspect.c: (main):
10069 * tools/gst-launch.c: (main):
10070 * tools/gst-run.c: (main):
10071 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
10073 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
10075 * gst/gstiterator.c: (gst_iterator_new):
10076 Add assertions to make sure passed GType is likely to really
10077 be a GType (as the compiler won't catch it if the size and
10078 GType arguments get mixed up, see #318447).
10080 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
10082 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
10084 * gst/gstbin.c: (gst_bin_iterate_sorted):
10085 Pass GType and size arguments to gst_iterator_new() in the right
10086 order (maybe we should make _new() take the GType as first argument
10087 just like _new_list()?) (#318447).
10090 2005-10-10 Wim Taymans <wim@fluendo.com>
10092 * gst/gstelement.c: (gst_element_finalize):
10093 And free the GStaticRecMutex too
10095 2005-10-10 Andy Wingo <wingo@pobox.com>
10097 * gst/gstelement.c (gst_element_init, gst_element_finalize):
10098 Allocate and free the mutex properly.
10100 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
10102 (GstElement): The state_lock is now recursive. Rebuild your
10103 plugins, suckers. Old macros adapted.
10105 * docs/gst/gstreamer-sections.txt: Doc updates.
10108 * gst/gstutils.c (g_static_rec_cond_timed_wait)
10109 (g_static_rec_cond_wait): Ported from state changes patch, while
10110 we wait on bug #317802 to be solved in a well-distributed GLib.
10112 * gst/gstelement.c (gst_element_change_state_func): Renamed from
10113 gst_element_change_state, variable name changes.
10114 (gst_element_change_state): Split out of gst_element_set_state in
10115 preparation for the state change merge. Doesn't pay attention to
10116 the 'transition' argument.
10117 (gst_element_set_state): Updates, hopefully purely cosmetic.
10118 (gst_element_sync_state_with_parent): MT-safety. Ported from the
10119 state change patch.
10120 (gst_element_get_state_func): Renamed from get_state, cosmetic
10123 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
10125 * gst/elements/gstelements.c:
10126 * win32/GStreamer.vcproj:
10128 * win32/dirent.c: (_tseekdir):
10129 * win32/gst-inspect.vcproj:
10130 * win32/gst-launch.vcproj:
10131 * win32/gstconfig.h:
10132 * win32/gstelements.vcproj:
10133 * win32/gstenumtypes.c: (gst_object_flags_get_type):
10134 * win32/gstreamer.def:
10135 * win32/msvc71.sln:
10136 updates for the win32 build (patch from Sebastien Moutte)
10138 2005-10-10 Andy Wingo <wingo@pobox.com>
10140 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
10141 gst_bin_get_state, cleaned up (but no logic changes).
10142 (bin_element_is_sink): Comment updates.
10143 (sink_iterator_filter): Remove needless cast.
10144 (gst_bin_iterate_sinks): Doc update.
10145 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
10146 cleaned up (but no logic changes).
10148 * check/states/sinks.c (test_src_sink): Cleanups from the state
10150 (test_livesrc_sink): Sync on the state.
10152 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
10153 the state change patch.
10155 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
10158 * check/gst/gstbin.c: Merge in some style fixes and additional
10159 checks from Wim's state change patch.
10161 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
10163 * gst/base/gsttypefindhelper.c: (helper_find_peek),
10164 (gst_type_find_helper):
10165 Check whether we have the requested data already in our list of
10166 cached buffers before pulling a new buffer; also make the buffer
10167 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
10169 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
10174 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
10175 don't use long long, it's not portable. Replacing with
10176 gint64 seems to work; let's hope no skeletons fall out of the closet.
10178 2005-10-10 Andy Wingo <wingo@pobox.com>
10180 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
10182 2005-10-09 Stefan Kost <ensonic@users.sf.net>
10184 * docs/gst/gstreamer-sections.txt:
10189 * gst/gstmessage.c: (gst_message_parse_state_changed):
10192 more docs, fix compilation
10194 2005-10-09 Philippe Khalaf <burger@speedy.org>
10195 * gst/gstmessage.c:
10196 Fixed a few forgotten variables on previous commit
10198 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
10200 * gst/base/gsttypefindhelper.c: (helper_find_peek):
10201 Fix evil typefind crasher: getrange() might return a short
10202 buffer at the end of a file, but gst_type_find_peek() must
10203 either return the full data as requested or NULL, but
10204 never a short buffer.
10206 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
10208 * gst/gstmessage.c: (gst_message_new_state_changed),
10209 (gst_message_parse_state_changed):
10210 * gst/gstmessage.h:
10211 don't use "new", it's a C++ keyword
10213 2005-10-08 Wim Taymans <wim@fluendo.com>
10215 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
10216 * gst/gstelement.c: (gst_element_post_message):
10217 * gst/gstpipeline.c: (gst_pipeline_change_state):
10218 Small docs and debug updates.
10220 2005-10-08 Stefan Kost <ensonic@users.sf.net>
10222 * docs/gst/gstreamer-sections.txt:
10223 * gst/gstelementfactory.c:
10225 * gst/gsttaglist.c:
10228 2005-10-08 Wim Taymans <wim@fluendo.com>
10230 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
10231 (gst_bin_dispose), (bin_bus_handler):
10232 Fix typos, add comments.
10233 Clear EOS list when going to PAUSED from any direction and do it
10234 in a threadsafe way.
10235 Get base time in a threadsafe way too.
10236 Fix confusing debug in the change_state function.
10237 Various other small cleanups.
10239 * gst/gstelement.c: (gst_element_post_message):
10240 Fix very verbose bus posting code.
10242 * gst/gstpipeline.c: (gst_pipeline_class_init),
10243 (gst_pipeline_set_property), (gst_pipeline_get_property),
10244 (gst_pipeline_change_state):
10245 Small ARG_ -> PROP_ cleanup
10247 2005-10-08 Wim Taymans <wim@fluendo.com>
10249 * gst/gstbin.c: (is_eos), (bin_bus_handler):
10250 Do a less CPU demanding EOS check because we can.
10252 2005-10-08 Wim Taymans <wim@fluendo.com>
10254 * libs/gst/dataprotocol/dataprotocol.c:
10255 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
10256 (gst_dp_packet_from_event):
10257 * libs/gst/dataprotocol/dataprotocol.h:
10258 * libs/gst/dataprotocol/dp-private.h:
10259 It's about time we bump the version number.
10260 Since event types don't fit in the guint8 anymore describing
10261 the payload type, make payload type 16 bits wide.
10263 2005-10-08 Wim Taymans <wim@fluendo.com>
10265 * docs/design/part-TODO.txt:
10266 * docs/design/part-clocks.txt:
10267 * docs/design/part-events.txt:
10268 * docs/design/part-gstbin.txt:
10269 * docs/design/part-gstelement.txt:
10270 * docs/design/part-gstpipeline.txt:
10271 * docs/design/part-live-source.txt:
10272 * docs/design/part-messages.txt:
10273 * docs/design/part-overview.txt:
10274 * docs/design/part-states.txt:
10277 2005-10-08 Wim Taymans <wim@fluendo.com>
10281 Fix event quark registration.
10282 Add some space between events so we can insert them in the
10285 2005-10-08 Wim Taymans <wim@fluendo.com>
10287 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10288 (gst_base_sink_handle_buffer):
10289 Better log message.
10292 * gst/gstelement.h:
10295 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
10296 (gst_queue_set_property), (gst_queue_get_property):
10298 Remove old unused properties.
10300 2005-10-08 Stefan Kost <ensonic@users.sf.net>
10301 * docs/gst/gstreamer-sections.txt:
10302 * gst/gstmessage.c:
10303 * gst/gstmessage.h:
10304 * gst/gstminiobject.c:
10305 * gst/gstminiobject.h:
10309 lots of new docs and doc fixes
10311 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10313 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
10315 * gst/gstregistry.c: (gst_registry_lookup_locked),
10316 (gst_registry_scan_path_level):
10317 * gst/gstregistryxml.c: (load_plugin):
10318 Only ever load one plugin for a given plugin basename.
10319 This ensures correct overriding of GST_PLUGIN_PATH over
10320 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
10321 system installed plugins.
10323 2005-10-08 Wim Taymans <wim@fluendo.com>
10325 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10326 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
10327 Prepare for doing QOS.
10329 2005-10-08 Wim Taymans <wim@fluendo.com>
10331 * check/gst/gstbin.c: (GST_START_TEST):
10332 * check/pipelines/cleanup.c: (GST_START_TEST):
10333 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
10334 Allow new clock message too.
10336 2005-10-08 Wim Taymans <wim@fluendo.com>
10338 * gst/gstmessage.c: (gst_message_new_error),
10339 (gst_message_new_warning), (gst_message_new_tag),
10340 (gst_message_new_state_changed), (gst_message_new_clock_provide),
10341 (gst_message_new_clock_lost), (gst_message_new_new_clock),
10342 (gst_message_new_segment_start), (gst_message_new_segment_done),
10343 (gst_message_parse_state_changed),
10344 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
10345 (gst_message_parse_new_clock):
10346 * gst/gstmessage.h:
10347 Also carry the clock in question.
10349 2005-10-08 Wim Taymans <wim@fluendo.com>
10351 * gst/gstmessage.c: (gst_message_new_custom),
10352 (gst_message_new_eos), (gst_message_new_error),
10353 (gst_message_new_warning), (gst_message_new_tag),
10354 (gst_message_new_state_changed), (gst_message_new_clock_provide),
10355 (gst_message_new_new_clock), (gst_message_new_segment_start),
10356 (gst_message_new_segment_done), (gst_message_parse_state_changed),
10357 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
10358 * gst/gstmessage.h:
10360 Added clock related messages.
10362 * gst/gstpipeline.c: (gst_pipeline_change_state):
10363 Post message when the clock changed.
10365 * tools/gst-launch.c: (event_loop):
10368 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
10370 * tools/gst-inspect.c: (print_element_properties_info):
10371 Can't pass NULL strings to g_print() on windows.
10373 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10375 * docs/Makefile.am:
10376 * docs/gst/Makefile.am:
10377 * docs/gst/gstreamer-docs.sgml:
10378 * docs/gst/running.xml:
10379 * docs/version.entities.in:
10380 add a chapter on running GStreamer.
10381 document GST_DEBUG and GST_PLUGIN* env vars
10383 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10388 remove PLUGINS_BUILDDIR stuff
10389 * gst/gst.c: (init_post):
10390 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
10392 remove, it was condescending and not needed
10394 2005-10-08 Wim Taymans <wim@fluendo.com>
10396 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
10397 (gst_base_sink_handle_object), (gst_base_sink_event),
10398 (gst_base_sink_wait), (gst_base_sink_handle_event),
10399 (gst_base_sink_change_state):
10400 * gst/base/gstbasesink.h:
10401 Repost EOS message while going to PLAYING if still EOS.
10402 Make sure that when receiving a FLUSH_START we don't attempt
10403 to sync on the clock anymore.
10405 2005-10-08 Wim Taymans <wim@fluendo.com>
10407 * tools/gst-launch.c: (event_loop):
10408 Better message printout.
10410 2005-10-08 Wim Taymans <wim@fluendo.com>
10412 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
10413 (gst_bin_child_proxy_get_children_count):
10414 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
10415 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
10416 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
10417 (gst_child_proxy_set_valist):
10418 * gst/parse/grammar.y:
10419 Make ChildProxy threadsafe and fix mem leaks.
10421 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10423 * gst/gst.c: (init_post):
10424 debug the GST_PLUGIN_ env vars
10426 2005-10-08 Wim Taymans <wim@fluendo.com>
10428 * check/gst/gstbin.c: (GST_START_TEST):
10429 * check/gst/gstmessage.c: (GST_START_TEST):
10430 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
10431 * gst/gstelement.c: (gst_element_commit_state),
10432 (gst_element_lost_state):
10433 * gst/gstmessage.c: (gst_message_new_state_changed),
10434 (gst_message_parse_state_changed):
10435 * gst/gstmessage.h:
10436 * tools/gst-launch.c: (event_loop):
10437 Added extra field to STATE_CHANGE message with the pending
10438 state, which will be different from the new state soon.
10440 2005-10-08 Wim Taymans <wim@fluendo.com>
10442 * gst/gstbus.c: (gst_bus_pop):
10444 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
10445 Small cleanups and doc updates.
10447 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10449 * gst/gst.c: (init_pre):
10450 * gst/gstbin.c: (gst_bin_add_func):
10451 log distributing clocks and base time
10452 * gst/gstregistry.c: (gst_registry_add_plugin),
10453 (gst_registry_scan_path_level), (gst_registry_scan_path):
10454 clean up the debugging output a little
10455 * gst/gstutils.c: (gst_element_state_get_name):
10456 warn about a memleak (I've actually seen this be used, though
10457 it was probably a bug)
10459 2005-10-07 Wim Taymans <wim@fluendo.com>
10461 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10462 (gst_base_src_init), (gst_base_src_default_newsegment),
10463 (gst_base_src_newsegment), (gst_base_src_do_seek),
10464 (gst_base_src_loop), (gst_base_src_start):
10465 * gst/base/gstbasesrc.h:
10466 Make the newsegment event customizable by subclasses.
10468 2005-10-07 Wim Taymans <wim@fluendo.com>
10470 * gst/gstevent.c: (gst_event_new_buffersize),
10471 (gst_event_parse_buffersize):
10473 New event for future idea.
10475 2005-10-07 Andy Wingo <wingo@pobox.com>
10477 * gst/gstelement.c (gst_element_post_message): Doc update.
10479 * docs/gst/gstreamer-sections.txt: Update.
10481 * gst/gstmessage.c (gst_message_new_application): Made into a
10482 function like honest API calls.
10483 (gst_message_new_element): New message type.
10485 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
10487 * check/elements/fakesrc.c (test_no_preroll): New check, checks
10488 that setting a live fakesrc to PAUSED returns NO_PREROLL both
10491 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
10492 NO_PREROLL from gst_element_change_state to fall through.
10494 2005-10-07 Wim Taymans <wim@fluendo.com>
10496 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
10497 (gst_ghost_pad_do_activate_push):
10498 Activating a ghostpad with no internal pad in push mode
10501 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
10504 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
10505 Fixes compilation on Windows.
10507 2005-10-07 Michael Smith <msmith@fluendo.com>
10509 * tools/gst-inspect.c:
10510 Print out feature and plugin count at the end when printing out
10513 2005-10-04 Michael Smith <msmith@fluendo.com>
10515 * gst/gsterror.c: (_gst_stream_errors_init):
10516 Add another error string used in a few existing plugins.
10519 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
10520 * tools/gst-inspect.c: (print_element_info):
10521 When a feature disappears from a plugin (and the feature exists in
10522 the cached registry file), things went horribly wrong. This isn't a
10523 complete fix, we should actually be removing the 'missing' features
10524 from the features list when we load the actual plugin. That's not
10527 2005-10-04 Johan Dahlin <johan@gnome.org>
10529 * check/gst/gstiterator.c: (GST_START_TEST):
10530 * gst/gstbin.c: (gst_bin_iterate_elements),
10531 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
10532 * gst/gstelement.c: (gst_element_iterate_pads):
10533 * gst/gstformat.c: (gst_format_iterate_definitions):
10534 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
10535 (gst_iterator_new_list), (gst_iterator_filter):
10536 * gst/gstiterator.h:
10537 * gst/gstquery.c: (gst_query_type_iterate_definitions):
10538 Add a GType to GstIterator, update callsites and tests.
10540 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10542 * gst/gstpad.c: (gst_pad_event_default_dispatch):
10543 give events a chance to be handled by event probes when the pad
10546 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10548 * gst/gstevent.c: (gst_event_type_get_name),
10549 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
10551 add string representations for event types
10553 2005-10-06 Wim Taymans <wim@fluendo.com>
10555 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
10556 Don't use NULL pointers.
10558 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10560 * gst/gst_private.h:
10562 * gst/gstelement.c:
10564 * gst/gstpluginfeature.c:
10565 widen the debug category in output to fit the biggest one we have
10566 add a bus category and use it
10567 play with the colors
10568 fix up some categories
10570 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10572 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
10573 add push activation of sink ghost pads.
10574 Andye, please verify
10576 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
10578 * gst/gstutils.c: (gst_element_link_pads):
10579 fix a bug in the case where neither element has a pad
10580 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
10581 add a test for that case
10583 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
10585 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
10586 emit have-data before checking for peers. This allows
10587 for probe handlers to connect elements. This helps autopluggers.
10588 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
10590 add six checks, linked/unlinked with no/true/false probe
10592 2005-10-04 Wim Taymans <wim@fluendo.com>
10594 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
10595 (gst_fake_sink_event), (gst_fake_sink_preroll),
10596 (gst_fake_sink_render), (gst_fake_sink_change_state):
10597 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
10598 (gst_fake_src_get_property), (gst_fake_src_create),
10599 (gst_fake_src_stop):
10600 * gst/elements/gstidentity.c: (gst_identity_stop):
10601 Protect last_message with lock.
10603 2005-10-04 Edward Hervey <edward@fluendo.com>
10606 Added precision in the comments for GST_FORMAT_DEFAULT
10608 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
10610 * tools/gst-launch.c: (main):
10611 Don't try to run erroneous pipelines.
10613 2005-10-04 Julien MOUTTE <julien@moutte.net>
10615 * gst/gstbus.c: We don't need this header.
10617 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
10620 back to development
10622 === release 0.9.3 ===
10624 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
10628 Releasing 0.9.3, "Unregistered"
10630 2005-10-03 Andy Wingo <wingo@pobox.com>
10632 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
10633 whereby calling a pad's activatepush() function can start a thread
10634 that starts to push or pull before the pad gets the FLUSHING flag
10635 unset. Hack around it by holding the stream lock until the flag is
10636 set. Need to replace this with a proper solution. Together with
10637 the ghost pad fixes, this fixes mp3 playing/tagreading.
10639 * docs/design/part-gstghostpad.txt: Add a note about activation of
10640 proxy pads outside of ghost pads.
10642 * gst/gstghostpad.c: Implement the ghost pad activation design.
10644 2005-10-02 Andy Wingo <wingo@pobox.com>
10646 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
10647 It is volatile, after all.
10649 * docs/design/part-gstghostpad.txt: Flesh out activation with
10652 * gst/base/gstbasesrc.c (gst_base_src_init): Use
10655 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
10658 Fix (unused) AM_CONDITIONAL tests.
10660 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
10662 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
10664 * gst/gstutils.c: (gst_pad_query_convert):
10665 Add assertion that makes sure src_val is >=0, just like
10666 gst_query_new_convert() has. (#315895)
10668 2005-09-30 Edward Hervey <edward@fluendo.com>
10670 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
10671 Let's not iterate pads we're not interested in, it avoids getting
10672 sky-high refcounts on sinkpad.
10674 2005-09-30 Wim Taymans <wim@fluendo.com>
10676 * gst/gstelement.c: (gst_element_set_state),
10677 (gst_element_change_state):
10678 Small tweak, element in ASYNC remains ASYNC.
10680 2005-09-30 Wim Taymans <wim@fluendo.com>
10682 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
10683 Only error is an error.
10685 * gst/gstbin.c: (gst_bin_change_state):
10688 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
10689 Also call pad_block in pad alloc.
10691 * gst/gstutils.c: (gst_flow_get_name):
10694 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10696 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10697 (gst_base_src_get_range):
10698 Fix documentation typos. Add some more debug info.
10700 2005-09-29 David Schleef <ds@schleef.org>
10702 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
10703 more end-user friendly.
10704 * tools/gst-inspect.c: (main): Check if command-line argument is
10705 a file and attempt to load that file as a plugin.
10707 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10709 * check/gst/gstbin.c:
10710 * check/states/sinks.c:
10711 fix tests for the new warning
10712 * check/gst/gstpipeline.c:
10713 add a test for pipeline and bus interaction
10714 * gst/gstelement.c:
10715 elements should be NULL if they get disposed; add a warning if not
10717 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10720 for 2.6 refcounting, make debug log more correct by printing
10721 the actual refcounts at the time of swap (Wim)
10723 2005-09-29 Andy Wingo <wingo@pobox.com>
10725 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
10726 removes signal watches previously added via
10727 gst_bus_add_signal_watch.
10728 (gst_bus_add_signal_watch): Don't return the source id, just store
10729 it on the bus if there wasn't an id already.
10731 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
10732 add_signal_watch and remove_signal_watch.
10734 2005-09-29 Edward Hervey <edward@fluendo.com>
10736 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
10737 Better if we actually iterate the list :)
10739 2005-09-29 Wim Taymans <wim@fluendo.com>
10741 * check/gst/gstbin.c: (GST_START_TEST):
10742 Change for new bus API.
10744 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
10745 (send_messages), (GST_START_TEST), (gstbus_suite):
10746 Change for new bus signal API.
10748 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
10749 (gst_bus_source_prepare), (gst_bus_source_check),
10750 (gst_bus_create_watch), (gst_bus_add_watch_full),
10751 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
10752 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
10754 Remove support for multiple GSources operating on different
10755 message types as it is too complex and unneeded when using
10757 Added support for receiving signals from the bus.
10759 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10761 * docs/libs/tmpl/gstdataprotocol.sgml:
10762 * docs/manual/advanced-dataaccess.xml:
10763 * gst/elements/gstcapsfilter.c:
10765 rename filter-caps to caps property
10767 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10769 * gst/gstvalue.c: (gst_value_deserialize_fraction):
10770 More robust fraction string parsing.
10772 * docs/pwg/appendix-porting.xml:
10773 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
10775 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10777 * gst/gstcaps.c: (gst_caps_do_simplify):
10778 Thou shalt not free a structure and then continue using it
10779 in the next loop iteration.
10781 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
10783 Add test case for caps simplification.
10785 2005-09-29 Wim Taymans <wim@fluendo.com>
10787 * check/gst/gstbin.c: (GST_START_TEST):
10790 2005-09-29 Wim Taymans <wim@fluendo.com>
10792 * check/gst/gstbin.c: (GST_START_TEST):
10795 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
10796 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
10797 (find_element), (gst_bin_sort_iterator_next),
10798 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10799 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10800 (gst_bin_change_state), (gst_bin_dispose):
10801 A bin does not have a bus, it gets the bus from the parent.
10803 * gst/gstelement.c: (gst_element_requires_clock),
10804 (gst_element_provides_clock), (gst_element_is_indexable),
10805 (gst_element_is_locked_state), (gst_element_change_state),
10806 (gst_element_set_bus_func):
10809 * gst/gstpipeline.c: (gst_pipeline_class_init),
10810 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
10811 The pipeline provides a bus.
10813 2005-09-28 Johan Dahlin <johan@gnome.org>
10815 * gst/gstmessage.c (gst_message_parse_state_changed): Use
10816 gst_structure_get_enum instead of gst_structure_get_int
10818 * gst/gststructure.c (gst_structure_get_enum): Impl.
10820 * gst/gststructure.h (gst_structure_get_enum): Add
10822 * docs/gst/gstreamer-sections.txt: Ditto
10824 * gst/gstmessage.c (gst_message_new_state_changed): Use
10825 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
10826 which does introspection.
10827 Reviewed by Christian Schaller
10829 2005-09-28 Stefan Kost <ensonic@users.sf.net>
10831 * gst/gstinfo.c: (gst_debug_log_default):
10832 don't do dummy g_strdup()s
10833 * libs/gst/controller/gstcontroller.c:
10834 (on_object_controlled_property_changed),
10835 (gst_controlled_property_new), (gst_controller_new_valist),
10836 (gst_controller_new_list),
10837 (gst_controller_remove_properties_valist), (gst_controller_set),
10838 (gst_controller_get), (gst_controller_sync_values),
10839 (gst_controller_get_value_array), (_gst_controller_class_init),
10840 (gst_controller_get_type):
10841 * libs/gst/controller/gstcontroller.h:
10842 * libs/gst/controller/gstinterpolation.c:
10843 (gst_controlled_property_find_timed_value_node):
10844 convert // to /**/ comments
10846 2005-09-28 Wim Taymans <wim@fluendo.com>
10848 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
10849 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
10850 (gst_bus_sync_signal_handler):
10852 Added async-message and sync-message signals to the bus.
10853 Added helper BusFunc to emit signals for all posted messages.
10855 * gst/gstmessage.c: (gst_message_type_get_name),
10856 (gst_message_type_to_quark), (gst_message_get_type):
10857 * gst/gstmessage.h:
10858 Register quarks for message names.
10860 2005-09-28 Stefan Kost <ensonic@users.sf.net>
10862 * docs/libs/gstreamer-libs-sections.txt:
10863 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
10864 (gst_controller_new_list):
10865 * libs/gst/controller/gstcontroller.h:
10866 added another constructor for language bindings
10868 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
10870 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
10874 * gst/gstinfo.c: (_gst_debug_init):
10875 slightly more readable color for refcount debugging
10877 2005-09-28 Wim Taymans <wim@fluendo.com>
10879 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
10880 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
10881 (find_element), (gst_bin_sort_iterator_next),
10882 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10883 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10884 (gst_bin_change_state), (gst_bin_dispose):
10885 Small doc fixes. get_clock -> provide_clock.
10887 * gst/gstelement.c: (gst_element_class_init),
10888 (gst_element_provides_clock), (gst_element_provide_clock),
10889 (gst_element_get_clock), (gst_element_commit_state),
10890 (gst_element_lost_state):
10891 * gst/gstelement.h:
10892 Make get/set_clock() symetric. Add provide_clock vmethod since
10893 that is actually what this function does.
10895 * gst/gstpipeline.c: (gst_pipeline_class_init),
10896 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
10897 (gst_pipeline_get_clock):
10898 get_clock -> provide_clock.
10900 2005-09-28 Andy Wingo <wingo@pobox.com>
10902 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
10903 lieu of real docs...
10905 * gst/elements/gstfdsrc.c: Cleaned up a bit.
10907 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
10909 * gst/elements/gstcapsfilter.c:
10910 * gst/elements/gstfakesink.c:
10911 * gst/elements/gstfakesrc.c:
10912 * gst/elements/gstfdsink.c:
10913 * gst/elements/gstfdsrc.c:
10914 * gst/elements/gstfilesink.c:
10915 * gst/elements/gstfilesrc.c:
10916 * gst/elements/gstidentity.c:
10917 * gst/elements/gsttee.c:
10918 * gst/elements/gsttypefindelement.c:
10919 Make element details static.
10921 2005-09-28 Wim Taymans <wim@fluendo.com>
10923 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10924 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10925 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10926 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10927 (gst_bin_change_state), (gst_bin_dispose):
10928 Some documentation updates.
10929 Clean up dispose handlers.
10931 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
10932 * gst/gstpad.c: (gst_pad_dispose):
10933 Clean up dispose handler.
10935 * gst/gstpipeline.c: (gst_pipeline_change_state):
10936 Removed spurious UNLOCK.
10938 2005-09-27 Stefan Kost <ensonic@users.sf.net>
10940 * docs/gst/gstreamer-sections.txt:
10941 * gst/base/gstbasesrc.h:
10942 * gst/gstelement.h:
10946 * gst/gstpipeline.c:
10947 * gst/gstpipeline.h:
10950 added two new functions to the docs
10951 documents all undocumented GstXXXFlags
10952 completed some incomplete docs
10954 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
10956 * gst/gstbin.c: (gst_bin_dispose):
10957 * gst/gstelement.c: (gst_element_dispose):
10958 remove now useless and leaky resurrection code in dispose
10959 * gst/base/gstbasesrc.c: (gst_base_src_init):
10960 * gst/gstelementfactory.c: (gst_element_factory_create):
10961 * gst/gstobject.c: (gst_object_set_parent):
10964 2005-09-27 Wim Taymans <wim@fluendo.com>
10966 * docs/design/part-TODO.txt:
10969 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10970 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10971 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10972 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10973 (gst_bin_change_state):
10974 * gst/gstelement.h:
10975 Remove element variable, we keep element info in the iterator now.
10977 2005-09-27 Andy Wingo <wingo@pobox.com>
10979 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
10982 2005-09-27 Wim Taymans <wim@fluendo.com>
10984 * check/gst/gstbin.c: (GST_START_TEST):
10985 Enable check that works now.
10987 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10988 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10989 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10990 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10991 (gst_bin_change_state):
10993 Redid the state change algorithm using a topological sort algo.
10994 Handles all cases correctly.
10995 Exposed iterator for state change order.
10997 * gst/gstelement.h:
10998 Temp storage for state changes. Need to get rid of this soon.
11000 2005-09-27 Wim Taymans <wim@fluendo.com>
11002 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
11003 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
11004 (link_fold_func), (gst_pad_proxy_setcaps):
11005 Leak fixes, the fold functions need to unref the passed object and
11006 _get_parent_*() returns ref to parent.
11008 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
11010 * check/gst/gstbuffer.c: (test_make_writable):
11011 Plug leak in test case and fix 'make check-valgrind'
11013 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
11015 * gst/gstbuffer.c: (gst_subbuffer_init):
11016 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
11017 works correctly in all circumstances (we could have just copied
11018 the parent buffer's readonly flag, but conceptually it seems
11019 cleaner to mark all subbuffers as read-only). (based on patch
11020 by Alessandro Decina, #314710).
11022 * check/gst/gstbuffer.c: (create_read_only_buffer),
11023 (test_make_writable), (test_subbuffer_make_writable),
11025 Add some tests for gst_buffer_make_writable().
11027 2005-09-27 Wim Taymans <wim@fluendo.com>
11029 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
11030 use gst_object_has_ancestor().
11032 * gst/gstobject.c: (gst_object_has_ancestor):
11034 gst_object_has_ancestor() copied from gstbin.c as it is a
11037 * tests/instantiate/create.c: (create_all_elements):
11038 * tests/lat.c: (handoff_src), (handoff_sink):
11039 * tests/sched/runxml.c: (main):
11040 * tests/seeking/seeking1.c: (main):
11041 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
11043 Fix compilation of some tests.
11045 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
11048 Remove comment. GST_TYPE_G_ERROR is here to stay,
11049 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
11050 (#316961, #300610).
11052 2005-09-26 Wim Taymans <wim@fluendo.com>
11054 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
11055 Added check that shows error in state change order.
11057 2005-09-26 Wim Taymans <wim@fluendo.com>
11059 * gst/gstbin.c: (gst_bin_change_state):
11060 Make state change function use 3 queues again, we were
11061 adding elements in the wrong order.
11063 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
11066 * gst/gstpad.c: (gst_pad_dispose):
11067 Added some debug info first.
11069 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
11071 * docs/design/draft-push-pull.txt:
11072 * docs/design/part-events.txt:
11073 * docs/design/part-overview.txt:
11074 * docs/design/part-scheduling.txt:
11075 Replace all _pull_region() with _pull_range()
11077 2005-09-26 Andy Wingo <wingo@pobox.com>
11079 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
11081 * check/gst-libs/controller.c: Update for controller api change.
11084 * tests/Makefile.am:
11085 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
11086 over by GLib bug 118439.
11088 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
11089 routines to a function.
11091 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
11093 * libs/gst/controller/gsthelper.c:
11094 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
11095 (gst_object_sync_values): Renamed from sink_values. Ugh.
11097 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
11099 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
11100 Renamed from controller_key, as it is exported.
11102 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
11104 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
11109 * gst/gstpadtemplate.h:
11112 * gst/gstqueryutils.c:
11113 * gst/gstqueryutils.h:
11114 remove queryutils headers after moving the two used functions
11115 to gstquery. also fixes build problem for gstsiddec
11117 2005-09-26 Michael Smith <msmith@fluendo.com>
11119 * tools/gst-launch.1.in:
11120 Correct documentation in manpage of debug syntax
11122 2005-09-26 Wim Taymans <wim@fluendo.com>
11124 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
11125 (gst_base_src_is_seekable), (gst_base_src_change_state):
11126 Some more debugging info.
11128 2005-09-25 Stefan Kost <ensonic@users.sf.net>
11130 * docs/gst/gstreamer-sections.txt:
11131 * gst/base/gstbasetransform.h:
11135 2005-09-25 Stefan Kost <ensonic@users.sf.net>
11137 * docs/gst/.cvsignore:
11138 * docs/gst/tmpl/.cvsignore:
11139 * docs/gst/tmpl/gstpipeline.sgml:
11140 * docs/gst/tmpl/gstplugin.sgml:
11141 * gst/gstpipeline.c:
11144 inlined the last two docs files
11145 removed the tmpl directory from cvs (no more conflicts here!)
11147 2005-09-25 Stefan Kost <ensonic@users.sf.net>
11149 * docs/gst/gstreamer-sections.txt:
11150 * docs/gst/tmpl/.cvsignore:
11151 * docs/gst/tmpl/gstpad.sgml:
11152 * docs/gst/tmpl/gstpadtemplate.sgml:
11154 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
11155 (gst_pad_finalize), (gst_pad_set_pad_template):
11157 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
11158 (gst_pad_template_class_init), (gst_pad_template_init),
11159 (gst_pad_template_dispose), (name_is_valid),
11160 (gst_static_pad_template_get), (gst_pad_template_new),
11161 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
11162 (gst_pad_template_pad_created):
11163 * gst/gstpadtemplate.h:
11164 inlined two more docs
11165 factored gstpadtemplate out of gstpad
11167 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
11169 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
11170 (test_children_state_change_order_semi_sink):
11171 Fix test case: we can't rely on a fixed state change order when
11172 going from READY => PAUSED because the sink might commit its
11173 new state first when the first buffer created by the source
11174 reaches the sink before the source has finished its change state.
11175 (Test case still fails at times, see #316856, comment 5 onwards)
11177 2005-09-24 Wim Taymans <wim@fluendo.com>
11179 * docs/design/part-events.txt:
11180 * docs/design/part-gstbus.txt:
11181 * docs/design/part-gstpipeline.txt:
11182 * docs/design/part-messages.txt:
11183 * docs/design/part-overview.txt:
11184 * docs/design/part-segments.txt:
11188 * gst/gstelement.c:
11191 * gst/gstiterator.c:
11192 Various documentation updates.
11194 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
11197 Well, that's embarassing. Luckily we weren't using
11198 GST_CLOCK_DIFF anywhere.
11200 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
11202 * common/gtk-doc.mak:
11203 don't fail on building XML, FC4 slave shows a bunch of doc
11204 missing bits that I don't get
11206 * gst/gstpipeline.c:
11207 * gst/gststructure.c:
11210 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
11212 * docs/design/part-gstbin.txt:
11213 * docs/design/part-gstbus.txt:
11215 Add blurb about how the bus goes into flushing mode and
11216 drops all messages when its bin goes from READY into NULL
11219 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
11221 * docs/gst/gstreamer-sections.txt:
11222 * gst/gststructure.c: (gst_structure_get_clock_time):
11223 * gst/gststructure.h:
11224 add a method to get a GstClockTime out of a structure
11226 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
11228 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
11229 (test_children_state_change_order_semi_sink), (gst_bin_suite):
11230 Added test to check state change order in bins (can still be made
11231 to fail here under heavy disk load; bails out with 'Push on pad
11232 fakesink:sink0, but it was not activated in push mode').
11234 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
11235 Fix state change order when there is only a semi sink (#316856)
11237 * gst/gstbus.c: (gst_bus_class_init):
11238 Use _class_peek_parent(), not _class_ref(); fix docs to say
11239 'default main context' instead of 'mainloop' where that is
11242 * gst/gstelement.c: (gst_element_commit_state),
11243 (gst_element_set_state):
11244 Fix typos in debug messages
11246 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
11249 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
11250 * gst/gstpluginfeature.c:
11252 various doc updates
11253 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
11254 change an assert into an error until it gets fixed properly
11256 2005-09-23 Stefan Kost <ensonic@users.sf.net>
11258 * docs/gst/gstreamer-sections.txt:
11259 * docs/gst/tmpl/.cvsignore:
11260 * docs/gst/tmpl/gstelement.sgml:
11261 * docs/gst/tmpl/gstinfo.sgml:
11262 * docs/gst/tmpl/gstobject.sgml:
11263 * gst/gstelement.c:
11264 * gst/gstelement.h:
11267 * gst/gstobject.c: (gst_object_class_init):
11269 inlined 3 more biiiig doc files and added some missing docs on the fly
11271 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
11273 * check/gst/.cvsignore:
11274 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
11275 * gst/gstregistryxml.c: (load_plugin),
11276 (gst_registry_xml_save_plugin):
11277 put back source in registry. add checks for find_plugin.
11278 * testsuite/states/bin.c: (assert_state), (empty_bin),
11279 (test_adding_one_element), (main):
11280 * testsuite/states/locked.c: (main):
11281 some compile/run fixes
11283 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
11285 * check/gst/gstvalue.c: (GST_START_TEST):
11286 fix leaks in the test itself
11288 2005-09-22 Wim Taymans <wim@fluendo.com>
11290 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11291 (gst_base_sink_send_event), (gst_base_sink_peer_query),
11292 (gst_base_sink_query):
11293 Prepare for more accurate position reporting and query
11296 * gst/gstelement.c: (gst_element_send_event),
11297 (gst_element_set_state):
11300 2005-09-22 Wim Taymans <wim@fluendo.com>
11302 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
11303 (gst_query_parse_segment):
11305 More documentation.
11306 Add segment query for future use.
11308 2005-09-22 Wim Taymans <wim@fluendo.com>
11310 * gst/gstbin.c: (gst_bin_add_func):
11311 Some more debug info.
11313 * gst/gstelement.c: (gst_element_send_event):
11314 Simplify send_event
11316 * gst/gstelement.h:
11317 Don't know how flags got broken.
11322 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
11324 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
11325 Add simplistic test suite for GST_TYPE_DATE serialisation and
11328 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
11330 * docs/gst/gstreamer-sections.txt:
11331 * gst/gststructure.c: (gst_structure_set_valist),
11332 (gst_structure_get_date):
11333 * gst/gststructure.h:
11334 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
11335 (gst_date_copy), (gst_value_compare_date),
11336 (gst_value_serialize_date), (gst_value_deserialize_date),
11337 (gst_value_transform_date_string),
11338 (gst_value_transform_string_date), (_gst_value_initialize):
11340 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
11341 bunch of utility functions along with a hack that checks that
11342 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
11343 is required. Part of the grand scheme in #170777.
11345 2005-09-22 Andy Wingo <wingo@pobox.com>
11347 * gst/gstconfig.h.in: Psych out gtk-doc.
11349 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
11351 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
11353 * tools/gst-inspect.c (print_element_list): Plug some
11354 inconsequential leaks.
11356 * gst/gstregistry.c (gst_registry_get_default): Doc.
11358 * check/gst/gstplugin.c:
11359 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
11360 * gst/gstelementfactory.c (gst_element_factory_create):
11361 * gst/gstindexfactory.c (gst_index_factory_create): Update for
11364 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
11365 (gst_plugin_feature_load): Doc, don't eat refs.
11367 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
11368 (gst_plugin_list_free): Doc.
11369 (gst_plugin_load_file): Doc updates.
11371 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
11372 accessors returning refcounted objects, return a ref.
11374 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
11375 accessor for caps. IDEMPOTENCE. Oh yes.
11377 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
11379 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
11381 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
11382 (_gst_debug_register_funcptr):
11383 Add mutex to serialise access to the hash table with
11384 the function pointer => function name string mapping;
11385 make that hash table static scope (#316809).
11387 * gst/registries/.cvsignore:
11388 Remove left-over file.
11390 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
11392 * docs/pwg/appendix-porting.xml:
11393 And something about newsegment events and caps-on-buffers to
11394 the porting guide (feel free to improve).
11396 2005-09-21 Andy Wingo <wingo@pobox.com>
11398 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
11399 data and event probes on the same pad.
11400 (test_buffer_probe_once): Test that removing probes from within
11401 the probe functions works.
11403 2005-09-21 Andy Wingo <wingo@pobox.com>
11405 * check/gst/gstutils.c: New file.
11406 (test_buffer_probe_n_times): A simple buffer probe test. More to
11409 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
11410 have-data::buffer, not have-data.
11411 (gst_pad_add_event_probe): Likewise for have-data::event.
11412 (gst_pad_add_data_probe): More docs. The part about 'resolving the
11413 peer' isn't quite right yet though.
11414 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
11415 (gst_pad_remove_data_probe): Change to take the guint handler_id
11416 as their arg, not the function+data, which is more glib-like.
11418 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
11419 the signal emission to indicate if the data is a buffer or an
11421 (gst_pad_get_type): Initialize buffer and event quarks.
11422 (gst_pad_class_init): have-data is now a detailed signal, yes it
11425 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
11427 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
11428 * gst/gstutils.c: (gst_util_set_value_from_string),
11429 (gst_util_set_object_arg):
11430 Don't put functional code in g_return_if_fail() or
11431 g_return_val_if_fail() statements, otherwise things will
11432 break when G_DISABLE_CHECKS is defined during compilation.
11434 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11436 * docs/gst/tmpl/.cvsignore:
11437 * docs/gst/tmpl/gstvalue.sgml:
11440 inlied another one and added some obvious docs
11442 2005-09-21 Wim Taymans <wim@fluendo.com>
11444 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11445 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
11446 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
11447 (gst_fdsrc_get_property), (gst_fdsrc_create):
11448 * gst/elements/gstfdsrc.h:
11449 Properly implement fdsrc. Removed signal and timeout,
11450 better implemented somewhere else.
11452 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11454 * docs/gst/tmpl/.cvsignore:
11455 * docs/gst/tmpl/gstimplementsinterface.sgml:
11456 * gst/gstinterface.c:
11459 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11461 * docs/gst/gstreamer-sections.txt:
11462 * docs/gst/tmpl/.cvsignore:
11463 * docs/gst/tmpl/gstenumtypes.sgml:
11464 remove obsolete doc file
11466 2005-09-21 David Schleef <ds@schleef.org>
11468 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
11469 little beer, fix a little leak.
11471 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11473 * docs/gst/gstreamer-docs.sgml:
11474 * docs/gst/gstreamer-sections.txt:
11475 * docs/gst/tmpl/.cvsignore:
11479 * gst/gstelement.h:
11480 * gst/gstindex.c: (gst_index_class_init):
11482 * gst/gstindexfactory.c: (gst_index_factory_get_type),
11483 (gst_index_factory_class_init), (gst_index_factory_init),
11484 (gst_index_factory_finalize), (gst_index_factory_new),
11485 (gst_index_factory_destroy), (gst_index_factory_find),
11486 (gst_index_factory_create), (gst_index_factory_make):
11487 * gst/gstindexfactory.h:
11488 * gst/gstpluginfeature.c:
11489 * gst/gstpluginfeature.h:
11490 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11491 more docs inlined, splitted gstindex.{c,h}
11493 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11495 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11498 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
11500 * gst/elements/gstfilesink.c: (gst_file_sink_init):
11501 Set sync to FALSE by default.
11503 2005-09-20 Wim Taymans <wim@fluendo.com>
11505 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11506 (gst_base_sink_init):
11507 Make sync property settable from subclass.
11509 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
11510 (gst_fake_sink_change_state):
11511 Set sync to FALSE by default.
11513 2005-09-20 Wim Taymans <wim@fluendo.com>
11515 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
11516 * tools/gst-launch.c: (main):
11517 The timeout handler should have lower priority than the source
11518 so we don't timeout before popping a message with 0 timeout.
11519 Dump error messages after failed state change.
11521 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
11523 * tools/gst-inspect.c: (print_element_properties_info):
11526 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11528 * check/gst/gstevent.c:
11529 * gst/elements/gstfakesink.c:
11530 * gst/elements/gstfakesink.h:
11531 remove the sync property from fakesink.
11532 has the side effect of setting sync TRUE
11533 for fakesink, which is a change. Anyone who knows how
11534 to fix this nicely in a GObject-y way, feel free.
11536 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11538 * docs/gst/gstreamer-docs.sgml:
11539 remove probe refsection
11541 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11543 * check/Makefile.am:
11544 disable valgrinding the controller test again
11545 * docs/gst/gstreamer-sections.txt:
11546 update for api-changes
11548 2005-09-20 Wim Taymans <wim@fluendo.com>
11550 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11551 (gst_base_sink_set_property), (gst_base_sink_get_property),
11552 (gst_base_sink_do_sync):
11553 * gst/base/gstbasesink.h:
11554 Added sync property to basesink to disable clock sync.
11556 2005-09-20 Andy Wingo <wingo@pobox.com>
11558 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
11559 eating the caller's refcount.
11561 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
11562 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
11565 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
11566 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
11567 of GLib 2.8 public, so we can know which refcount to check in
11570 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
11571 (gst_object_init): Only set the gst refcount if we're going ahead
11572 with the refcount hack.
11574 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11576 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
11577 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11578 more leaks plumbed, added more debug-logging
11582 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11584 * gst/gstmessage.c:
11585 remove include of gstmemchunk.h
11587 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11589 * gst/gstclock.c: (_gst_clock_id_free):
11590 Commit from the Political Party For More Atomic CVS Commits,
11591 so that people don't waste too much of their day fishing
11592 out obvious leaks out of massive commits.
11593 Oh, and fix a pretty damn obvious leak in the memchunk
11596 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11598 * check/Makefile.am:
11599 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
11600 plug mem-leak, re-add to valgrindable tests
11602 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11605 unbreak the build for those who have chronic arthritis
11606 and typing "make check" is just too taxing on the hands
11608 2005-09-20 Andy Wingo <wingo@pobox.com>
11610 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
11611 really want it out, you should fix plugins at the same time.
11613 2005-09-19 Stefan Kost <ensonic@users.sf.net>
11616 * docs/gst/gstreamer-sections.txt:
11618 added missing symbols to api docs
11619 disable ref-count hack if we have glib >= 2.8
11621 2005-09-19 David Schleef <ds@schleef.org>
11623 * docs/gst/Makefile.am: Ignore a few more internal headers
11624 * docs/gst/gstreamer-docs.sgml: Remove old sections
11625 * docs/gst/gstreamer-sections.txt: Remove old sections
11626 * docs/gst/tmpl/gstobject.sgml: update
11627 * docs/gst/tmpl/gstplugin.sgml: update
11628 * docs/gst/tmpl/gstpluginfeature.sgml: update
11629 * docs/random/ds/0.9-suggested-changes: update.
11630 * gst/Makefile.am: remove memchunk and trashstack, since they're
11632 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
11633 * gst/gst.h: don't include some headers
11634 * gst/gstchildproxy.c: add gstmarshal.h
11635 * gst/gstclock.c: Don't use memchunks
11636 * gst/gstminiobject.c: Add some docs
11637 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
11638 * gst/gstobject.h: same
11639 * gst/gstplugin.c: include gstmacros.h
11640 * gst/gstplugin.h: don't include gstmacros.h, since it's private
11641 * gst/gstquery.c: don't use memchunks
11642 * gst/gstregistry.c: rename gst_registry_deinit()
11643 * gst/gstregistry.h: same
11645 2005-09-19 David Schleef <ds@schleef.org>
11647 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
11648 * docs/libs/gstreamer-libs-sections.txt:
11649 * docs/libs/tmpl/gstgetbits.sgml:
11650 * docs/libs/tmpl/gstputbits.sgml:
11652 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
11654 * win32/gstenumtypes.c:
11655 * win32/gstenumtypes.h:
11658 2005-09-19 Wim Taymans <wim@fluendo.com>
11660 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
11661 Automatically PAUSE and RESUME a pipeline when a flushing seek
11664 2005-09-19 Andy Wingo <wingo@pobox.com>
11666 * gst/gstregistry.h: Spacing fixen.
11668 2005-09-19 Wim Taymans <wim@fluendo.com>
11670 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
11671 Handle state change failure more correctly.
11673 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11675 * check/Makefile.am:
11676 * check/pipelines/cleanup.c: (run_pipeline):
11677 * check/pipelines/simple_launch_lines.c: (run_pipeline),
11679 enable cleanup again after fixing the leak
11681 some more info on docs
11683 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11685 * check/Makefile.am:
11686 re-enable tests now that leaks are plugged
11688 * check/gst/gstbin.c:
11689 * check/gst/gstpipeline.c:
11690 add some more tests while fixing leaks
11691 * common/check.mak:
11692 make sure binaries are uptodate when valgrinding/gdbing
11694 * gst/gstelementfactory.c:
11695 remove a ref too many, and add a FIXME for when we get
11696 round to disposing of classes
11698 fix the refcounting when loading a plugin from a file and
11699 the code pretends that the pointer is the same even though
11700 of course it can change
11701 * gst/gstpluginfeature.c:
11702 unref plugins marked cached (a bit confusing as a name)
11703 as the docs state should be done
11704 various doc additions to explain refcounting
11705 * gst/gstregistry.c:
11706 * gst/gstregistryxml.c:
11709 2005-09-19 Wim Taymans <wim@fluendo.com>
11711 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
11712 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
11713 (send_messages), (GST_START_TEST), (gstbus_suite):
11714 * check/gst/gstpipeline.c: (GST_START_TEST):
11715 * check/pipelines/cleanup.c: (run_pipeline):
11716 * check/pipelines/simple_launch_lines.c: (run_pipeline),
11718 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
11719 (gst_bus_source_check), (gst_bus_source_dispatch),
11720 (gst_bus_create_watch), (gst_bus_add_watch_full),
11721 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
11723 * tools/gst-launch.c: (event_loop):
11724 * tools/gst-md5sum.c: (event_loop):
11725 GstBusHandler -> GstBusFunc, return value has the same meaning as
11726 any other GSource (FALSE == remove source).
11727 _add_watch() and _add_watch_full() now take a MessageType mask to
11728 only handle specific types of messages.
11729 _poll() returns the GstMessage instead of the message type to avoid
11731 _have_pending() takes a MessageType mask now too.
11732 Added testsuite for multiple bus watches.
11733 Fix testsuites and applications for new bus API.
11735 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11737 * check/Makefile.am:
11738 mark a bunch of the tests as to fix until we fix them
11740 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11742 * common/check.mak:
11743 use GST_PLUGIN settings for valgrind tests as well, so we're
11744 valgrinding the correct thing
11745 * gst/gst.c: (init_post):
11748 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11750 * gst/gst.c: (init_post), (gst_deinit):
11751 * gst/gstelementfactory.c: (gst_element_factory_class_init),
11752 (gst_element_factory_finalize), (gst_element_factory_cleanup):
11753 * gst/gstindex.c: (gst_index_factory_class_init),
11754 (gst_index_factory_finalize):
11755 * gst/gstobject.c: (gst_object_dispose):
11756 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
11757 (gst_plugin_load_file), (gst_plugin_desc_free):
11758 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
11759 (gst_plugin_feature_finalize):
11760 * gst/gstregistry.c: (gst_registry_class_init),
11761 (gst_registry_init), (gst_registry_finalize),
11762 (gst_registry_get_default), (gst_registry_deinit):
11763 * gst/gstregistry.h:
11764 * gst/gstregistryxml.c: (load_feature), (load_plugin):
11765 various cleanups and memleak plugging. make valgrind is happy now.
11767 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11769 * common/check.mak:
11770 add a check-valgrind target
11772 2005-09-18 David Schleef <ds@schleef.org>
11774 * tools/gst-inspect.c: Revert the GOption code.
11776 2005-09-17 David Schleef <ds@schleef.org>
11778 * check/Makefile.am: Fix environment variables.
11779 * check/gst/gstplugin.c: Fix for API changes.
11780 * tools/gst-inspect.c: Fix for API changes.
11781 * tools/gst-xmlinspect.c: Fix for API changes.
11782 * gst/gstelementfactory.c:
11785 * gst/gstpluginfeature.c:
11786 * gst/gstpluginfeature.h:
11787 * gst/gstregistry.c:
11788 * gst/gstregistry.h:
11789 * gst/gstregistryxml.c:
11790 * gst/gsttypefind.c:
11791 * gst/gsttypefindfactory.c:
11792 * gst/indexers/gstfileindex.c:
11793 * gst/indexers/gstmemindex.c:
11794 * gst/schedulers/Makefile.am:
11795 Change registry to keep track of both plugins and features,
11796 removing the feature tracking from plugins themselves.
11798 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
11800 * check/Makefile.am:
11801 * tools/gst-register.1.in:
11802 remove gst-register
11804 2005-09-15 David Schleef <ds@schleef.org>
11806 * check/gst/gstplugin.c:
11807 * gst/gstelementfactory.c:
11809 * gst/gstpluginfeature.c:
11810 * gst/gstregistry.c:
11811 Getting tired of debugging. Disabled all the unreffing of
11812 plugins and features, which fixes the segfaults, but of
11813 course leaks like crazy. At least playbin works.
11815 2005-09-15 David Schleef <ds@schleef.org>
11817 * check/gst/gstplugin.c: (register_check_elements),
11818 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
11820 * gst/elements/gsttypefindelement.c: Fix refcounting.
11821 * gst/gsttypefind.c:
11822 * gst/gsttypefindfactory.c:
11823 * gst/gsttypefindfactory.h:
11825 2005-09-15 David Schleef <ds@schleef.org>
11827 * gst/gstindex.c: get refcounting correct.
11828 * gst/gstregistry.c: Handle the case where a feature/plugin is
11831 2005-09-15 David Schleef <ds@schleef.org>
11833 * check/Makefile.am:
11834 * check/gst/gstplugin.c: Add test
11835 * gst/gstplugin.c: Fix problems noticed by testsuite
11837 * gst/gstregistry.c:
11838 * gst/gstregistry.h:
11840 2005-09-15 David Schleef <ds@schleef.org>
11842 * gst/gstplugin.c: Implement semi-decent recounting and locking
11843 in plugins and plugin features.
11845 * gst/gstpluginfeature.c:
11846 * gst/gstpluginfeature.h:
11847 * gst/gstregistry.c:
11849 2005-09-15 Michael Smith <msmith@fluendo.com>
11851 * gst/gstregistry.c: (gst_registry_get_feature_list):
11852 Implement this. Makes oggdemux work; decodebin still broken.
11854 2005-09-14 David Schleef <ds@schleef.org>
11856 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
11858 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
11859 * gst/check/Makefile.am:
11860 * libs/gst/controller/Makefile.am:
11861 * libs/gst/dataprotocol/Makefile.am:
11863 2005-09-14 David Schleef <ds@schleef.org>
11865 * configure.ac: Remove getbits library. Nothing uses it, and
11866 it should be in something like liboil if someone did want
11868 * libs/gst/Makefile.am:
11869 * libs/gst/getbits/Makefile.am:
11870 * libs/gst/getbits/gbtest.c:
11871 * libs/gst/getbits/getbits.c:
11872 * libs/gst/getbits/getbits.h:
11873 * libs/gst/getbits/gstgetbits_generic.c:
11874 * libs/gst/getbits/gstgetbits_i386.s:
11875 * libs/gst/getbits/gstgetbits_inl.h:
11877 2005-09-14 David Schleef <ds@schleef.org>
11879 * gst/Makefile.am: Dist glib-compat.h
11881 2005-09-14 David Schleef <ds@schleef.org>
11883 * configure.ac: Remove gst/registries, since it's no longer used.
11884 * gst/registries/Makefile.am:
11885 * gst/registries/gstlibxmlregistry.c:
11886 * gst/registries/gstlibxmlregistry.h:
11887 * gst/registries/gstxmlregistry.c:
11888 * gst/registries/gstxmlregistry.h:
11889 * gst/registries/registrytest.c:
11891 2005-09-14 David Schleef <ds@schleef.org>
11893 * gst/glib-compat.h:
11894 * gst/gstregistryxml.c:
11895 Convergence is near. Seriously.
11897 2005-09-14 David Schleef <ds@schleef.org>
11899 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11900 * gst/glib-compat.h:
11901 Attempt #4 to appease the buildbots.
11903 2005-09-14 David Schleef <ds@schleef.org>
11905 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11908 2005-09-14 David Schleef <ds@schleef.org>
11910 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11913 2005-09-14 David Schleef <ds@schleef.org>
11915 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
11918 2005-09-14 David Schleef <ds@schleef.org>
11920 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11921 * gst/glib-compat.h: Add some functions that are in newer versions
11922 of glib than we care to require.
11923 * gst/gstregistryxml.c: Use them.
11925 2005-09-14 David Schleef <ds@schleef.org>
11927 * po/POTFILES.in: remove gst-register.c
11929 2005-09-14 David Schleef <ds@schleef.org>
11931 * docs/gst/gstreamer-docs.sgml:
11932 * docs/gst/gstreamer-sections.txt:
11933 * docs/gst/gstreamer.types:
11934 * docs/gst/tmpl/gstelement.sgml:
11935 * docs/gst/tmpl/gstplugin.sgml:
11936 * docs/gst/tmpl/gstpluginfeature.sgml:
11937 Documentation updates for registry changes.
11939 2005-09-14 David Schleef <ds@schleef.org>
11941 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
11942 because we don't require glib-2.8.
11944 2005-09-14 David Schleef <ds@schleef.org>
11946 * gst/gstregistryxml.c: Added. Essentially moved out of the
11947 registries directory.
11949 2005-09-14 David Schleef <ds@schleef.org>
11951 * check/Makefile.am:
11952 * check/generic/states.c:
11956 * gst/gst_private.h:
11957 * gst/gstelementfactory.c:
11962 * gst/gstpluginfeature.c:
11963 * gst/gstpluginfeature.h:
11964 * gst/gstregistry.c:
11965 * gst/gstregistry.h:
11966 * gst/gstregistrypool.c: remove
11967 * gst/gstregistrypool.h: remove
11968 * gst/gsttypefind.c:
11969 * gst/gsttypefindfactory.c:
11971 * tools/Makefile.am:
11972 * tools/gst-compprep.c:
11973 * tools/gst-inspect.c:
11974 * tools/gst-register.c: remove
11975 * tools/gst-xmlinspect.c:
11976 Registry rewrite. Changes registry from being a file created
11977 by a tool into a simple cache file created automatically by
11978 libgstreamer. Removed gst-register (because it's no longer
11979 needed). Remove registry pools, because we only have one
11980 registry implementation (XML). Fix up other subsystems as
11983 2005-09-13 Michael Smith <msmith@fluendo.com>
11985 * gst/gstconfig.h.in:
11986 Don't Use windows linking attributes for MinGW. Fixes #316157
11988 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
11990 * gst/gstutils.c: (set_state_async_thread_func),
11991 (gst_element_set_state_async):
11992 Apparently people think it's better if this function doesn't
11993 try to set the state to whatever state was asked for on the first
11994 call to this function for any object. Seriously.
11996 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
11998 * check/gst/gstpipeline.c: (GST_START_TEST):
11999 * docs/gst/gstreamer-sections.txt:
12000 * gst/gstutils.c: (set_state_async_thread_func),
12001 (gst_element_set_state_async):
12003 add a "gst_element_set_state_async" method that
12004 sets the state and starts a thread to make sure the state
12005 change completes as best as it can
12007 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
12009 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
12010 codify design+behaviour in testsuite after discussion
12012 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
12014 * docs/gst/tmpl/gstelement.sgml:
12015 * docs/manual/appendix-quotes.xml:
12017 * gst/gstelement.c: (gst_element_set_state):
12020 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
12022 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
12023 (gst_base_transform_prepare_output_buf),
12024 (gst_base_transform_handle_buffer):
12025 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
12026 (gst_capsfilter_prepare_buf):
12027 Remove the requirement for sub-classes to call the parent
12028 implementation of prepare_output_buffer with a wrapper function.
12030 * gst/gsttaglist.h:
12031 * gst/gsttagsetter.h:
12032 Fix #define wrapper
12034 2005-09-11 Stefan Kost <ensonic@users.sf.net>
12036 * docs/gst/gstreamer-sections.txt:
12039 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
12041 * docs/gst/gstreamer-sections.txt:
12042 * docs/gst/tmpl/gstelement.sgml:
12043 * docs/gst/tmpl/gstplugin.sgml:
12044 * gst/gstminiobject.c:
12046 docs now stop throwing warnings
12048 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
12050 * docs/gst/gstreamer-sections.txt:
12051 * docs/gst/gstreamer.types:
12052 * docs/gst/tmpl/gstpad.sgml:
12053 * docs/gst/tmpl/gsttypes.sgml:
12054 * gst/base/gstadapter.h:
12055 * gst/base/gstbasesink.h:
12056 * gst/base/gstbasesrc.h:
12062 * gst/gstelement.h:
12064 * gst/gstmessage.h:
12066 * gst/gststructure.c:
12067 * gst/registries/gstlibxmlregistry.h:
12068 various documentation fixes
12070 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
12072 * docs/gst/gstreamer-sections.txt:
12073 * docs/gst/tmpl/gstvalue.sgml:
12074 rearrange gstvalue section
12075 * gst/gstutils.c: (gst_element_state_get_name):
12077 * gst/gstvalue.c: (_gst_value_initialize):
12081 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
12083 * check/gst-libs/controller.c:
12084 Header include fix.
12085 * gst/base/gstbasetransform.c:
12086 (gst_base_transform_default_prepare_buf),
12087 (gst_base_transform_handle_buffer):
12088 * gst/base/gstbasetransform.h:
12089 Some more basetransform changes and fixes to enable sub-classes
12090 that modify buffer metadata only.
12091 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
12092 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
12093 (gst_capsfilter_prepare_buf):
12094 If the output pad has fixed allowed caps and input buffers
12095 don't have any, set the fixed caps on outgoing buffers.
12097 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
12098 * check/elements/identity.c: (GST_START_TEST):
12099 Make the error a little clearer when the test fails because
12100 identity made a copy of the buffer.
12101 * docs/gst/gstreamer-sections.txt:
12102 New symbols in gstbasetransform.h
12103 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
12104 (gst_base_transform_init), (gst_base_transform_transform_size),
12105 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
12106 (gst_base_transform_default_prepare_buf),
12107 (gst_base_transform_get_unit_size),
12108 (gst_base_transform_buffer_alloc),
12109 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
12110 (gst_base_transform_change_state),
12111 (gst_base_transform_set_passthrough),
12112 (gst_base_transform_set_in_place),
12113 (gst_base_transform_is_in_place):
12114 * gst/base/gstbasetransform.h:
12115 Change BaseTransform to separate in_place operate from same_caps
12116 output. in_place implies that the element can perform the transform
12117 on incoming buffers in-place, even if the caps on the output are
12119 Sub-class elements can now implement special buffer allocation
12120 methods for outgoing buffers if they wish to.
12121 Big documentation addition.
12122 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
12123 * gst/elements/gstelements.c:
12124 Changes for basetransform modifications.
12125 * gst/elements/Makefile.am:
12126 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
12127 Compile fix. Extra debug output.
12129 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
12131 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
12133 add tests for valid pad naming
12134 * gst/check/gstcheck.c: (gst_check_log_message_func),
12135 (gst_check_log_critical_func):
12137 remove printing of code, it is fragile when the code contains
12138 % and the line number is enough info
12139 * gst/check/gstcheck.h:
12140 * gst/gstpad.c: (gst_pad_template_new):
12143 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
12146 say what CHECK flags we use
12147 * docs/libs/gstreamer-libs.types:
12148 * libs/gst/controller/Makefile.am:
12149 * libs/gst/controller/gst-controller.c:
12150 * libs/gst/controller/gst-controller.h:
12151 * libs/gst/controller/gst-helper.c:
12152 * libs/gst/controller/gst-interpolation.c:
12153 * libs/gst/controller/gstcontroller.c:
12154 * libs/gst/controller/gsthelper.c:
12155 * libs/gst/controller/gstinterpolation.c:
12156 * tools/gst-inspect.c: (print_plugin_info):
12157 we don't use dashes in header names
12159 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
12161 * check/Makefile.am:
12162 * check/gst/.cvsignore:
12163 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
12164 (gst_pipeline_suite), (main):
12165 adding a test for pipelines and state changes
12166 * gst/gstutils.c: (get_state_func):
12168 * gstreamer.spec.in:
12171 2005-09-08 Michael Smith <msmith@fluendo.com>
12173 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
12174 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
12175 (gst_file_src_is_seekable), (gst_file_src_get_size),
12176 (gst_file_src_start):
12177 * gst/elements/gstfilesrc.h:
12178 Various fixes for unseekable, unmmapable, and non-normal files, so
12179 that fallback to read() rather than mmap() works.
12180 * gst/gstevent.c: (gst_event_new_newsegment):
12181 Allow newsegment events with segment_start == segment_end, as will
12182 correctly happen if you use filesrc on a zero-size file, for
12185 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
12187 * gst/gstplugin.c: (gst_plugin_load_file):
12188 Call g_module_close when we don't load the module
12190 * gst/registries/gstlibxmlregistry.c:
12191 (gst_xml_registry_get_property):
12192 Port leak fix from 0.8
12194 2005-09-07 Stefan Kost <ensonic@users.sf.net>
12196 * docs/gst/gstreamer-docs.sgml:
12197 * docs/gst/tmpl/.cvsignore:
12198 * docs/gst/tmpl/gsttrace.sgml:
12199 * docs/gst/tmpl/gsttrashstack.sgml:
12202 * gst/gstelement.h:
12204 * gst/gstmessage.c:
12205 * gst/gstmessage.h:
12208 * gst/gsttaginterface.c:
12209 * gst/gsttaginterface.h:
12210 * gst/gsttaglist.c:
12211 * gst/gsttaglist.h:
12212 * gst/gsttagsetter.c:
12213 * gst/gsttagsetter.h:
12216 * gst/gsttrashstack.c:
12217 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
12218 inlined docs for gsttrace, gsttrashstack
12220 2005-09-07 Stefan Kost <ensonic@users.sf.net>
12223 * gst/elements/gstbufferstore.h:
12224 * gst/elements/gsttypefindelement.c:
12225 * gst/elements/gsttypefindelement.h:
12227 * gst/gsttypefind.c:
12228 * gst/gsttypefind.h:
12229 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
12230 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
12231 (gst_type_find_factory_dispose),
12232 (gst_type_find_factory_unload_thyself),
12233 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
12234 (gst_type_find_factory_get_caps),
12235 (gst_type_find_factory_get_extensions),
12236 (gst_type_find_factory_call_function):
12237 * gst/gsttypefindfactory.h:
12238 * gst/registries/gstlibxmlregistry.c:
12239 * gst/registries/gstxmlregistry.c:
12240 splitted gsttypefind into gsttypefind, gsttypefindfactory
12242 2005-09-07 Andy Wingo <wingo@pobox.com>
12244 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
12245 condition whereby the pad's task function is entered before the
12246 pad_mode variable was set.
12248 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
12250 * gst/gstpad.c: (gst_pad_alloc_buffer):
12251 Catch misbehaving pad_alloc functions that don't
12252 set up caps and do it for them.
12254 2005-09-07 Stefan Kost <ensonic@users.sf.net>
12256 * check/pipelines/simple_launch_lines.c: (run_pipeline):
12257 test for pipe!=NULL
12258 * docs/gst/tmpl/.cvsignore:
12259 * docs/gst/tmpl/gstmemchunk.sgml:
12260 * docs/gst/tmpl/gstparse.sgml:
12261 * docs/gst/tmpl/gsttaglist.sgml:
12262 * docs/gst/tmpl/gsttagsetter.sgml:
12263 * docs/gst/tmpl/gsttypefind.sgml:
12264 * docs/gst/tmpl/gsttypefindfactory.sgml:
12265 * gst/gstmemchunk.c:
12268 * gst/gsttaginterface.c:
12269 * gst/gsttypefind.c:
12270 * gst/gsttypefind.h:
12273 === release 0.9.2 ===
12275 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
12280 releasing 0.9.2, "South"
12282 2005-09-05 Andy Wingo <wingo@pobox.com>
12284 * gst/registries/gstxmlregistry.h:
12285 * gst/registries/gstxmlregistry.c: Um... resurrect...
12287 * gst/registries/gstxmlregistry.h:
12288 * gst/registries/gstxmlregistry.c: and update to newer API.
12289 Incidentally they should be a bit faster now that they don't have
12292 2005-09-05 Andy Wingo <wingo@pobox.com>
12294 * gst/registries/gstxmlregistry.h:
12295 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
12296 replaced by the libxml registry a while back
12298 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
12300 * docs/gst/tmpl/gstplugin.sgml:
12301 * gst/elements/gstelements.c:
12303 * gst/gstplugin.c: (gst_plugin_register_func),
12304 (gst_plugin_desc_copy), (gst_plugin_desc_free),
12305 (gst_plugin_get_source):
12307 * gst/registries/gstlibxmlregistry.c: (load_plugin),
12308 (gst_xml_registry_save_plugin):
12309 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
12310 (gst_xml_registry_save_plugin):
12311 * tools/gst-inspect.c: (print_plugin_info):
12312 add a "source" plugin description field, to represent the source
12313 module this plugin is a part of. By default GST_PLUGIN_DEFINE
12314 will set it to PACKAGE, which is automake's idea of the name of
12315 the source project.
12317 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
12322 * docs/Makefile.am:
12323 * docs/faq/Makefile.am:
12324 * docs/gst/tmpl/gstelement.sgml:
12325 * docs/gst/tmpl/gsttypes.sgml:
12326 * docs/htmlinstall.mak:
12327 * docs/manual/Makefile.am:
12328 * docs/pwg/Makefile.am:
12329 reorganize doc build a little
12330 split out docbook and gtk-doc stuff
12331 have two separate --enable's and enable them through autogen
12332 but disable by default in configure (to be similar to other
12334 * gstreamer.spec.in:
12335 clean up docs install
12353 translation updates
12355 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
12357 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
12360 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
12361 (gst_fake_sink_change_state):
12362 Make state change function thread-safe.
12364 * gst/gstpad.c: (gst_pad_alloc_buffer):
12365 Set offset on generic buffer allocated by fallback.
12367 2005-09-03 Stefan Kost <ensonic@users.sf.net>
12369 * docs/gst/gstreamer-sections.txt:
12370 * docs/gst/tmpl/gstelement.sgml:
12372 * libs/gst/controller/gst-controller.c:
12373 (gst_controlled_property_set_interpolation_mode),
12374 (gst_controlled_property_new),
12375 (gst_controller_find_controlled_property):
12376 run the wingo-magic script against the docs
12378 2005-09-02 Stefan Kost <ensonic@users.sf.net>
12380 * docs/gst/gstreamer-docs.sgml:
12381 * docs/gst/gstreamer-sections.txt:
12382 * docs/gst/tmpl/.cvsignore:
12383 * docs/gst/tmpl/gstelementdetails.sgml:
12384 * docs/gst/tmpl/gstelementfactory.sgml:
12387 * gst/gstelementfactory.c:
12388 * gst/gstelementfactory.h:
12389 merged elementdetails docs into elementfactory docs
12392 2005-09-02 Andy Wingo <wingo@pobox.com>
12394 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
12395 consider this enum an enum and not a flags.
12397 2005-09-02 Stefan Kost <ensonic@users.sf.net>
12399 * docs/gst/gstreamer-docs.sgml:
12400 * docs/gst/tmpl/.cvsignore:
12401 * docs/gst/tmpl/gstghostpad.sgml:
12402 * docs/gst/tmpl/gstiterator.sgml:
12403 * docs/gst/tmpl/gstmacros.sgml:
12404 * docs/gst/tmpl/gstrealpad.sgml:
12405 * docs/gst/tmpl/gstregistry.sgml:
12406 * docs/gst/tmpl/gstregistrypool.sgml:
12407 * docs/gst/tmpl/gststructure.sgml:
12408 * docs/gst/tmpl/gstsystemclock.sgml:
12409 * docs/gst/tmpl/gsttrace.sgml:
12410 * gst/gstghostpad.c:
12412 * gst/gstmemchunk.c:
12413 * gst/gstmemchunk.h:
12415 * gst/gstregistry.c:
12416 * gst/gstregistrypool.c:
12417 * gst/gststructure.c:
12418 * gst/gstsystemclock.c:
12421 2005-09-02 Andy Wingo <wingo@pobox.com>
12423 * gst/gstelement.h (GstState): Renamed from GstElementState,
12424 changed to be a normal enum instead of flags.
12425 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
12426 munged to be GST_STATE_CHANGE_*.
12427 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
12428 work with the new state representation.
12429 (GstStateChange): New enumeration of possible state transitions.
12430 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
12431 (GstElementClass::change_state): Pass the GstStateChange along as
12432 an argument. Helps language bindings, so they don't have to use
12433 tricky lock-needing macros like GST_STATE_CHANGE ().
12435 * scripts/update-states (file): New script. Run it on a file to
12436 update it for state naming and API changes. Updates files in
12439 * All files updated for the new API.
12441 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
12443 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
12444 * gst/gstutils.c: (gst_util_set_value_from_string),
12445 (gst_util_set_object_arg):
12446 fix a bunch of unchecked return values
12447 * tools/gst-complete.c: (main):
12448 * gstreamer.spec.in:
12451 2005-09-01 Wim Taymans <wim@fluendo.com>
12453 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12454 (gst_base_sink_event), (gst_base_sink_do_sync),
12455 (gst_base_sink_handle_event):
12456 * gst/base/gstbasesink.h:
12457 Handle newsegments more correctly.
12462 * gst/gstevent.c: (gst_event_new_newsegment):
12463 A newsegment cannot have a start_time of -1
12465 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
12467 * win32/gstenumtypes.c:
12468 * win32/gstenumtypes.h:
12471 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12473 * libs/gst/controller/gst-controller.c:
12474 (gst_controlled_property_set_interpolation_mode),
12475 (gst_controlled_property_new):
12476 fixed boolean again
12478 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
12480 * docs/faq/gst-uninstalled:
12485 * gst/gstutils.c: (gst_element_link_filtered):
12487 add gst_element_link_filtered
12489 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12491 * docs/gst/gstreamer-docs.sgml:
12492 * docs/gst/gstreamer-sections.txt:
12493 * docs/gst/tmpl/.cvsignore:
12494 * docs/gst/tmpl/gsterror.sgml:
12495 * docs/gst/tmpl/gstfilter.sgml:
12496 * docs/gst/tmpl/gsturihandler.sgml:
12497 * docs/gst/tmpl/gsturitype.sgml:
12498 * docs/gst/tmpl/gstutils.sgml:
12499 * docs/gst/tmpl/gstxml.sgml:
12504 * gst/gsturitype.c:
12507 inlined more docs, fixed double id-ref
12509 2005-08-31 Wim Taymans <wim@fluendo.com>
12511 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12512 (gst_base_transform_handle_buffer):
12513 Passthrough elements don't need the caps as they don't care.
12515 2005-08-31 Wim Taymans <wim@fluendo.com>
12517 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12518 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
12519 Don't leak refcounts on buffers.
12521 2005-08-31 Wim Taymans <wim@fluendo.com>
12523 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
12524 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
12525 (gst_base_transform_chain), (gst_base_transform_change_state):
12526 * gst/base/gstbasetransform.h:
12527 Handle the case where we are not negotiated more gracefully.
12529 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
12531 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
12532 (gst_file_src_map_region):
12533 Set READONLY flag on mmap'ed buffers, otherwise
12534 gst_buffer_make_writable() won't work properly (#314708).
12536 2005-08-31 Wim Taymans <wim@fluendo.com>
12538 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
12539 passthrough elements can even do inplace on non writable
12540 buffers (as they don't touch them).
12542 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12544 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
12545 (gst_test_mono_source_set_property),
12546 (gst_test_mono_source_class_init), (GST_START_TEST),
12547 (gst_controller_suite):
12548 more tests (hehe I have the most)
12550 describe popping messages whenusing mulltiple sources
12551 * libs/gst/controller/gst-controller.c:
12552 (gst_controlled_property_set_interpolation_mode),
12553 (gst_controlled_property_new):
12554 * libs/gst/controller/gst-controller.h:
12555 * libs/gst/controller/gst-interpolation.c:
12556 implement boolean properties
12558 2005-08-31 Wim Taymans <wim@fluendo.com>
12560 * gst/gstminiobject.c: (gst_mini_object_ref):
12561 Cannot assert that the refcount has to be positive
12562 since a disposed object can be resurrected.
12564 2005-08-31 Wim Taymans <wim@fluendo.com>
12566 * gst/gstpad.c: (gst_pad_init):
12567 Revert change, need to first fix badly behaving
12570 2005-08-30 Wim Taymans <wim@fluendo.com>
12572 * check/elements/fakesrc.c: (setup_fakesrc):
12573 * check/elements/identity.c: (setup_identity):
12574 Activate pads before using them.
12576 2005-08-30 Wim Taymans <wim@fluendo.com>
12578 * gst/base/gstadapter.c: (gst_adapter_flush):
12579 Flushing out 0 bytes is ok for this function.
12581 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12582 no newsegment gives a warning and sets the start/stop to
12585 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
12586 (gst_base_transform_set_passthrough):
12589 * gst/gstminiobject.c: (gst_mini_object_ref):
12590 Check refcount here too.
12592 * gst/gstpad.c: (gst_pad_init):
12593 Pads are initially flushing and refusing data.
12595 * gst/gstutils.c: (gst_element_link_pads_filtered):
12596 When adding a capsfilter element make sure it has the
12597 same state as the parent bin.
12599 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12601 * docs/gst/tmpl/.cvsignore:
12602 * docs/gst/tmpl/gstformat.sgml:
12603 * docs/gst/tmpl/gstversion.sgml:
12607 * gst/gstversion.h.in:
12608 more docs and two more inlined
12610 2005-08-30 Wim Taymans <wim@fluendo.com>
12612 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
12613 Don't sync to clock.
12615 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12617 * docs/gst/gstreamer-sections.txt:
12618 ultral33t func10ns deserve to appear in the docs actually
12619 * docs/gst/tmpl/.cvsignore:
12620 * docs/gst/tmpl/gstcompat.sgml:
12621 * docs/gst/tmpl/gstconfig.sgml:
12622 * gst/check/gstcheck.c:
12624 * gst/gstconfig.h.in:
12627 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12629 * docs/gst/tmpl/.cvsignore:
12630 * docs/gst/tmpl/gstquery.sgml:
12631 * docs/gst/tmpl/gstutils.sgml:
12634 inlined and extended docs
12636 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12638 * check/gst-libs/controller.c: (GST_START_TEST),
12639 (gst_controller_suite):
12641 * docs/gst/tmpl/gstutils.sgml:
12642 * docs/libs/gstreamer-libs-sections.txt:
12643 * docs/libs/tmpl/gstdataprotocol.sgml:
12645 * examples/controller/audio-example.c: (main):
12646 controller example works now
12649 * tools/gst-inspect.c: (print_element_properties_info):
12650 show param spec flags
12652 2005-08-29 Andy Wingo <wingo@pobox.com>
12654 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
12656 2005-08-28 Andy Wingo <wingo@pobox.com>
12658 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
12659 as having two arguments instead of just one. Allows superclasses
12660 to access information on subclasses -- see the terrible for() loop
12661 in gtype.c:g_type_create_instance for the reason why. All callers
12664 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12666 * docs/design/part-messages.txt:
12668 * docs/gst/tmpl/.cvsignore:
12669 * docs/gst/tmpl/gstcaps.sgml:
12670 * docs/gst/tmpl/gstclock.sgml:
12676 * gst/gstmessage.c:
12677 added descriptions for bus and message
12678 inline caps and clock docs
12680 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12682 * gst/gstmessage.c:
12683 * gst/gstmessage.h:
12686 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12688 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
12691 2005-08-26 Andy Wingo <wingo@pobox.com>
12693 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
12694 element_set_state's return val.
12695 (test_2_elements): Add test that's been disabled for months.
12697 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
12698 can-activate-pull properties.
12700 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
12701 can-activate-pull properties. Implement is_seekable so fakesrc can
12702 operate in pull mode.
12704 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
12706 (gst_base_sink_activate, gst_base_sink_activate_pull)
12707 (gst_base_sink_activate_push): Make activation mode choosing work.
12709 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
12710 is right. Make pull mode work. Post an eos before pausing in pull
12712 (gst_base_sink_change_state): Pay attention to the core's
12713 change_state() return val.
12715 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
12716 has-getrange properties. Cleanups.
12718 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
12719 has_getrange and replace with can_activate_pull and
12722 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
12723 locking comments. Remove has_loop, has_chain and replace with
12724 can_activate_pull and can_activate_push.
12726 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
12729 * examples/Makefile.am:
12730 * examples/metadata/Makefile.am:
12731 * examples/metadata/read-metadata.c: (message_loop),
12732 (have_pad_handler), (make_pipeline), (print_tag), (main):
12733 Add metadata reading example that loops over a list of filenames,
12734 dumping any tags found.
12736 * gst/gstbus.c: (gst_bus_dispose):
12737 * gst/gstelement.c: (gst_element_dispose):
12738 Release a few potentially-held references in dispose.
12740 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12742 * docs/gst/tmpl/gstminiobject.sgml:
12743 do *not* add tmpl/*.sgml files to CVS!
12745 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12747 * libs/gst/bytestream/.cvsignore:
12748 * libs/gst/bytestream/Makefile.am:
12749 * libs/gst/bytestream/adapter.c:
12750 * libs/gst/bytestream/adapter.h:
12751 * libs/gst/bytestream/bytestream.c:
12752 * libs/gst/bytestream/bytestream.h:
12753 * libs/gst/bytestream/filepad.c:
12754 * libs/gst/bytestream/filepad.h:
12755 removing obsolete files
12757 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12759 * docs/gst/gstreamer-docs.sgml:
12760 * docs/libs/gstreamer-libs-docs.sgml:
12761 disabed additional index entries again, as this makes docs-gen just
12762 slow and they aren't useful yet
12763 * docs/libs/gstreamer-libs-sections.txt:
12764 little -section.txt cleanup for libs
12766 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
12768 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12769 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
12770 fix up some debugging
12771 (gst_base_transform_get_unit_size),
12772 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
12773 (gst_base_transform_handle_buffer):
12774 * gst/base/gstbasetransform.h:
12775 handle and store timed NEWSEGMENT events so that subclasses that
12776 calculate time by counting samples have a segment_start time they
12777 need to add to their timestamps - see audioresample
12779 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12782 removed ';' from the end of macro defs
12783 * docs/gst/gstreamer-docs.sgml:
12784 * docs/gst/gstreamer-sections.txt:
12785 * docs/gst/tmpl/.cvsignore:
12787 * gst/gstelement.c: (gst_element_class_init),
12788 (gst_element_set_state), (activate_pads),
12789 (gst_element_save_thyself):
12790 * gst/gstevent.c: (gst_event_new_newsegment):
12792 * gst/gstiterator.c:
12793 * gst/gstiterator.h:
12796 * gst/gstutils.c: (gst_pad_query_convert):
12798 fixed parameter name mismatches between source, header and docs
12799 added some more docs, resolved the last batch of unused elements in
12800 docs (now someone needs to doc them)
12802 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12804 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
12805 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
12806 don't walk through the plugins backwards. Where is all this
12807 reversed logic coming from ?
12809 2005-08-25 Wim Taymans <wim@fluendo.com>
12811 * gst/base/gstbasetransform.c: (gst_base_transform_init),
12812 (gst_base_transform_transform_size),
12813 (gst_base_transform_configure_caps),
12814 (gst_base_transform_get_unit_size),
12815 (gst_base_transform_buffer_alloc),
12816 (gst_base_transform_change_state):
12817 * gst/base/gstbasetransform.h:
12818 Cache caps unit_size.
12819 Make sure we cannot negotiate up and downstream at the
12822 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12824 * gst/gst.c: (init_pre), (init_post):
12825 register the installed plugin path after the env var
12826 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
12827 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
12828 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
12829 directories, so the tests can prefer uninstalled over installed
12831 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12833 * gst/base/gstbasetransform.h:
12838 2005-08-25 Wim Taymans <wim@fluendo.com>
12840 * gst/gstbin.c: (bin_bus_handler):
12841 Be a bit more conservative about the posted message.
12843 * gst/gstbus.c: (gst_bus_post):
12844 Some cleanups, warn wrong return values.
12846 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
12848 * check/gst/gstbin.c: (GST_START_TEST):
12849 * gst/gstbin.c: (bin_bus_handler):
12850 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
12851 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
12852 (gst_message_new_warning), (gst_message_new_tag),
12853 (gst_message_new_state_changed), (gst_message_new_segment_start),
12854 (gst_message_new_segment_done), (gst_message_new_custom):
12855 * gst/gstmessage.h:
12856 * tools/gst-launch.c: (event_loop):
12857 * tools/gst-md5sum.c: (event_loop):
12858 Revert unpopular change for GST_MESSAGE_SRC to GObject.
12860 2005-08-25 Wim Taymans <wim@fluendo.com>
12862 * check/generic/states.c: (GST_START_TEST):
12863 Cleanup can be done at the end.
12865 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
12866 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
12867 (gst_task_get_state), (gst_task_start), (gst_task_pause):
12868 Oh boy.. Thanks for finding this, Thomas.
12870 2005-08-25 Stefan Kost <ensonic@users.sf.net>
12872 * docs/gst/gstreamer.types:
12873 added missing types
12875 2005-08-25 Stefan Kost <ensonic@users.sf.net>
12877 * docs/gst/gstreamer-docs.sgml:
12878 * docs/gst/gstreamer-sections.txt:
12879 * docs/gst/tmpl/.cvsignore:
12881 * gst/gstiterator.c:
12883 * gst/registries/gstxmlregistry.h:
12884 added missing classes and symbols (123 more to go)
12885 removed removed symbols from section file
12886 fixed many doc-comments
12888 2005-08-24 Wim Taymans <wim@fluendo.com>
12890 * check/generic/states.c: (GST_START_TEST):
12891 Make sure all tasks are stopped.
12893 * check/gst/gstbin.c: (GST_START_TEST):
12894 Unref after usage for proper valgrinding.
12896 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
12897 Really wait for the task to stop before destroying the
12900 * gst/gstqueue.c: (gst_queue_sink_activate_push),
12901 (gst_queue_src_activate_push):
12902 Small cleanups. Don't stop the task when we did not start
12905 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
12906 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
12907 (gst_task_get_state), (gst_task_start), (gst_task_pause),
12910 Protect the stream lock with the object lock.
12911 Disallow setting the stream lock when running.
12912 Add cleanup_all to wait for the threadpool to finish.
12913 Remove code to autoallocate a mutex if none was provided.
12914 Add _join() to wait for a task to stop.
12915 Protect the thread pool with a global lock.
12917 2005-08-24 Wim Taymans <wim@fluendo.com>
12919 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12920 (gst_base_sink_get_times), (gst_base_sink_do_sync),
12921 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
12922 * gst/base/gstbasesink.h:
12923 Handle newsegment events correctly.
12924 Drop buffers out of the segment range.
12926 2005-08-22 Andy Wingo <wingo@pobox.com>
12928 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
12929 macro, implements an interface and gstimplementsinterface for a
12932 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
12934 * check/Makefile.am:
12935 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
12936 add a test that does a bunch of state changes on elements
12937 needs some fixing for valgrind
12938 * check/states/sinks.c: (gst_object_suite):
12941 add prototype for gst_caps_is_equal_fixed
12943 * gst/gstregistrypool.c:
12946 2005-08-24 Andy Wingo <wingo@pobox.com>
12948 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
12949 convert a negative value. Doesn't make much sense. Mostly this is
12950 here to force callers to ensure -1 maps to -1.
12952 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
12954 * docs/pwg/advanced-types.xml:
12955 Well done to Michael for catching my deliberate introduction
12956 of this spelling mistake.
12957 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
12958 * gst/gstelement.h:
12959 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
12960 unlink pads before removing the element from the bin.
12962 2005-08-24 Andy Wingo <wingo@pobox.com>
12964 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
12965 the same thing as GST_DEBUG=*:4.
12966 (parse_debug_level, parse_debug_category): New helper parsers.
12968 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
12970 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12971 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
12972 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
12973 (gst_base_transform_buffer_alloc),
12974 (gst_base_transform_handle_buffer):
12975 use gboolean return values and pointers to size so we can use the
12976 full GST_BUFFER_SIZE range (guint) for buffer sizes
12977 use GstPadDirection for transform_caps
12978 * gst/base/gstbasetransform.h:
12979 rename get_size to get_unit_size since that's what it is
12980 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
12981 use GstPadDirection for transform_caps
12982 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12984 cleanup and debugging
12986 2005-08-24 Stefan Kost <ensonic@users.sf.net>
12988 * gst/gstelement.c: (gst_element_class_init),
12989 (gst_element_set_state), (activate_pads),
12990 (gst_element_save_thyself):
12991 * tools/gst-compprep.c: (main):
12992 * tools/gst-inspect.c: (print_element_properties_info):
12993 * tools/gst-xmlinspect.c: (print_element_properties):
12994 Fixed long standing mem-leak
12996 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
12998 * check/gst/gstbin.c: (GST_START_TEST):
12999 * gst/gstbin.c: (bin_bus_handler):
13000 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
13001 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
13002 (gst_message_new_warning), (gst_message_new_tag),
13003 (gst_message_new_state_changed), (gst_message_new_segment_start),
13004 (gst_message_new_segment_done), (gst_message_new_custom):
13005 * gst/gstmessage.h:
13006 * tools/gst-launch.c: (event_loop):
13007 * tools/gst-md5sum.c: (event_loop):
13008 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
13009 that applications can sensibly post custom messages with references
13010 to their own objects.
13012 2005-08-24 Andy Wingo <wingo@pobox.com>
13014 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
13017 2005-08-24 Wim Taymans <wim@fluendo.com>
13019 * gst/base/gstbasetransform.c: (gst_base_transform_init),
13020 (gst_base_transform_transform_caps),
13021 (gst_base_transform_transform_size),
13022 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13023 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
13024 (gst_base_transform_handle_buffer):
13025 * gst/base/gstbasetransform.h:
13026 Many fixes and new features added by Thomas. Can now also do
13027 transforms with variable sizes and a custom fixate_caps function.
13029 2005-08-24 Wim Taymans <wim@fluendo.com>
13031 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
13035 Cast to ClockTime before formatting to time.
13040 2005-08-24 Stefan Kost <ensonic@users.sf.net>
13042 * check/gst-libs/controller.c: (GST_START_TEST),
13043 (gst_controller_suite):
13044 * docs/gst/tmpl/gstcaps.sgml:
13045 * docs/gst/tmpl/gstghostpad.sgml:
13046 * docs/gst/tmpl/gstquery.sgml:
13047 * docs/gst/tmpl/gstutils.sgml:
13048 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
13049 (gst_object_sink_values), (gst_object_get_value_arrays),
13050 (gst_object_get_value_array):
13051 gracefully handle helper method calls to objects that are not beeing
13052 controlled, added test case for that
13054 2005-08-23 Wim Taymans <wim@fluendo.com>
13056 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
13057 (gst_event_new_newsegment), (gst_event_parse_newsegment),
13058 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
13059 (gst_event_parse_qos), (gst_event_new_seek),
13060 (gst_event_parse_seek):
13062 Some more debugging output and doc cleanups.
13064 * gst/gstqueue.c: (gst_queue_handle_sink_event):
13065 Fix possible deadlock.
13067 2005-08-23 Stefan Kost <ensonic@users.sf.net>
13069 * docs/gst/gstreamer-docs.sgml:
13070 * docs/gst/gstreamer-sections.txt:
13071 * docs/gst/gstreamer.types:
13072 * docs/gst/tmpl/.cvsignore:
13075 * gst/gstelement.c:
13077 added 100 symbols from gstreamer-unused.txt to the right sections
13078 fixed more broken comments
13079 added GstBus to docs
13081 2005-08-23 Stefan Kost <ensonic@users.sf.net>
13083 * docs/gst/gstreamer-sections.txt:
13084 * docs/gst/tmpl/.cvsignore:
13085 * docs/gst/tmpl/gstbin.sgml:
13086 * docs/gst/tmpl/gstbuffer.sgml:
13087 * gst/base/gstbasesrc.c:
13088 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
13091 * tools/gst-launch.1.in:
13092 inlined more doc comments, added missing comments and fixed comments
13095 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
13097 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
13101 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
13103 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
13104 * gst/gststructure.h:
13105 add a fixate function for booleans; add a FIXME that these func
13106 names should probably be gst_structure_fixate_*
13108 2005-08-23 Stefan Kost <ensonic@users.sf.net>
13110 * docs/gst/gstreamer-docs.sgml:
13111 * docs/gst/gstreamer-sections.txt:
13113 * gst/gstbin.c: (gst_bin_get_type),
13114 (gst_bin_child_proxy_get_child_by_index),
13115 (gst_bin_child_proxy_get_children_count),
13116 (gst_bin_child_proxy_init):
13117 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
13118 (gst_child_proxy_get_child_by_index),
13119 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
13120 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
13121 (gst_child_proxy_get), (gst_child_proxy_set_property),
13122 (gst_child_proxy_set_valist), (gst_child_proxy_set),
13123 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
13124 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
13125 * gst/gstchildproxy.h:
13126 * gst/parse/grammar.y:
13127 * tools/gst-inspect.c: (print_interfaces),
13128 (print_element_properties_info), (print_element_info):
13129 ported gstchildproxy over from 0.8
13130 ported gst-inspect fixes and enhancements over from 0.8
13132 2005-08-22 Wim Taymans <wim@fluendo.com>
13134 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
13135 (gst_base_transform_handle_buffer):
13136 Also call the transform function if we have ANY caps.
13138 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
13141 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
13143 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
13144 Don't pretend to handle seek events if the source is not seekable
13146 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
13148 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13149 Remove extra parameter to debug output
13151 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
13152 (gst_base_src_do_seek), (gst_base_src_activate_push):
13153 Fix seek event handling.
13155 * gst/gstpipeline.c: (gst_pipeline_change_state):
13156 * gst/gstqueue.c: (gst_queue_handle_sink_event),
13157 (gst_queue_src_activate_push):
13158 Don't start the src pad task on FLUSH_STOP if the pad
13162 2005-08-22 Wim Taymans <wim@fluendo.com>
13164 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
13165 Added check for gst_static_caps_get() refcounting.
13167 2005-08-22 Wim Taymans <wim@fluendo.com>
13169 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
13170 Make _static_caps_get() refcounting sane.
13172 * gst/gstelement.c: (gst_element_set_state):
13173 Add g_return_val_if_fail() to protect against segfaults.
13175 2005-08-22 Stefan Kost <ensonic@users.sf.net>
13177 * docs/gst/tmpl/gstevent.sgml:
13180 inlined remaining docs, added missing doc comments
13182 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
13184 * check/gst/gstbin.c: (GST_START_TEST):
13185 since we don't know when preroll is done, use refcount range
13187 * gst/check/gstcheck.h:
13188 add macro for checking refcount range
13190 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
13192 * check/Makefile.am:
13193 clean up environment for when registry gets built versus
13194 when actual tests are run; valgrind seems to not report
13195 leaks if GST_PLUGIN_PATH is set to some specific values
13196 * check/gst/gstbin.c: (GST_START_TEST):
13197 add more refcounting checks; maybe this exposes a
13199 * common/check.mak:
13200 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13201 * gst/check/gstcheck.h:
13202 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
13203 (gst_bin_change_state):
13204 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
13205 add/fix debugging/whitespace
13207 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
13209 * check/gst/gstevent.c: (event_probe), (test_event),
13211 Er, don't call gst_bin_watch_for_state_change you idiot.
13213 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
13215 * check/Makefile.am:
13216 Use CHECK_CFLAGS and CHECK_LIBS
13217 * check/gst/gstevent.c: (event_probe), (test_event),
13220 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
13221 (gst_base_src_start), (gst_base_src_stop),
13222 (gst_base_src_activate_push), (gst_base_src_activate_pull),
13223 (gst_base_src_change_state):
13224 Sprinkle gst_base_src_stop liberally around error paths to fix
13225 problems reusing a source after failed state changes.
13226 * gst/base/gsttypefindhelper.c: (helper_find_peek),
13227 (helper_find_suggest), (gst_type_find_helper):
13228 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
13230 * docs/gst/tmpl/gstevent.sgml:
13231 Migrate part of the docs from the SGML file. Wait for ensonic to
13232 tell me how I did it wrong ;)
13233 * tools/gst-typefind.c: (main):
13234 Extra robustness to state changes between files.
13236 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
13238 * check/Makefile.am:
13239 don't valgrind the controller test - it's leaking - Stefan, HELP
13240 * gst/check/gstcheck.c: (gst_check_message_error),
13241 (gst_check_chain_func), (gst_check_setup_element),
13242 (gst_check_teardown_element), (gst_check_setup_src_pad),
13243 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
13244 (gst_check_teardown_sink_pad):
13245 * gst/check/gstcheck.h:
13246 add a bunch of methods to set up elements, and src and sink pads
13247 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
13248 * check/elements/identity.c: (setup_identity), (cleanup_identity),
13251 * gst/gstmessage.c:
13253 whitespace/doc fixes
13255 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
13257 * gst/gstelement.h:
13258 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
13259 be handled by the application and not always printed as well
13261 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
13263 * check/Makefile.am:
13265 * gst/check/gstcheck.c: (gst_check_message_error):
13266 * gst/check/gstcheck.h:
13267 add a fail_unless_equals_int
13268 add fail_unless for error messages
13270 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
13272 * check/Makefile.am:
13274 * common/Makefile.am:
13275 * common/check.mak:
13277 factor out some of the common stuff so we can use it
13279 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
13281 * check/Makefile.am:
13282 * check/gst/gstiterator.c: (GST_START_TEST):
13283 * check/gst/gstsystemclock.c: (GST_START_TEST),
13284 (gst_systemclock_suite):
13285 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
13287 valgrind more tests
13289 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
13291 * check/elements/.cvsignore:
13292 * check/elements/gstfakesrc.c:
13293 rename to name of element
13294 * check/elements/identity.c: (chain_func), (event_func),
13295 (setup_identity), (cleanup_identity), (GST_START_TEST),
13296 (identity_suite), (main):
13297 add a test for identity
13298 * check/Makefile.am:
13299 * pkgconfig/Makefile.am:
13300 * pkgconfig/gstreamer-check.pc.in:
13301 * pkgconfig/gstreamer-check-uninstalled.pc.in:
13305 move the check stuff to a library that gets installed
13306 * check/gst-libs/controller.c: (GST_START_TEST):
13307 * check/gst-libs/gdp.c:
13308 * check/gst/gst.c: (GST_START_TEST):
13309 * check/gst/gstbin.c:
13310 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13311 * check/gst/gstbus.c:
13312 * check/gst/gstcaps.c: (GST_START_TEST):
13313 * check/gst/gstelement.c:
13314 * check/gst/gstghostpad.c:
13315 * check/gst/gstiterator.c:
13316 * check/gst/gstmessage.c:
13317 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
13318 * check/gst/gstobject.c:
13319 * check/gst/gstpad.c: (GST_START_TEST):
13320 * check/gst/gststructure.c: (GST_START_TEST):
13321 * check/gst/gstsystemclock.c: (GST_START_TEST),
13322 (gst_systemclock_suite):
13323 * check/gst/gsttag.c: (gst_tag_suite):
13324 * check/gst/gstvalue.c:
13325 * check/pipelines/cleanup.c:
13326 * check/pipelines/simple_launch_lines.c:
13327 * check/states/sinks.c:
13328 change include statement
13330 * docs/gst/gstreamer-sections.txt:
13331 * docs/gst/tmpl/gstpad.sgml:
13332 document more pad stuff
13333 * gst/gstminiobject.c: (gst_mini_object_ref),
13334 (gst_mini_object_unref):
13337 2005-08-19 Stefan Kost <ensonic@users.sf.net>
13339 * docs/gst/tmpl/gst.sgml:
13341 eliminate another tmpl file, fix spelling in the long-description
13343 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
13345 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
13346 (test_event), (timediff), (gstevents_suite):
13347 Should fix build on 64-bit arch's
13349 2005-08-18 Andy Wingo <wingo@pobox.com>
13351 Make sure that when a pipeline goes to PLAYING, that data has
13352 actually hit the sink.
13354 * check/states/sinks.c (test_sink): A sink that doesn't get any
13355 data shouldn't return SUCCESS for going to either PLAYING or
13356 PAUSED. Test also the return values on the way back down.
13358 * gst/gstelement.c (gst_element_set_state): When changing the
13359 state of an element currently changing state asynchronously, go to
13360 lost-state after commiting the pending state. Makes future calls
13361 to get_state continue to return ASYNC.
13363 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
13364 ASYNC when going to PLAYING if we still don't have preroll, as can
13365 happen with live sources.
13367 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
13369 * docs/pwg/advanced-types.xml:
13370 Hack long paragraph into 2 chunks as a workaround for buggy
13371 jadetex version in sid and breezy that loops infinitely and
13374 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
13376 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
13377 (test_event), (timediff), (gstevents_suite):
13378 Provide more error margin in clock measurements to allow for
13379 g_get_current_time inaccuracies.
13381 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
13383 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
13384 (test_event), (timediff), (gstevents_suite):
13385 Fix error message output so I might be able to tell why the
13386 test works here but fails on the build farm.
13388 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
13390 * check/Makefile.am:
13391 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
13392 (test_event), (timediff), (gstevents_suite), (main):
13395 * docs/design/part-seeking.txt:
13396 Spelling correction
13398 * docs/gst/tmpl/gstevent.sgml:
13399 * docs/gst/tmpl/gstfakesrc.sgml:
13402 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13403 Treat a buffer-without-newsegment the same as a receiving
13404 a newsegment not in time format, and disable syncing to the clock
13407 * gst/gstbus.c: (gst_bus_set_sync_handler):
13408 Assert if anyone tries to replace the existing sync_handler for bus,
13409 as only the owner should be setting it.
13412 Have a fixed set of custom event enums with events identified by
13413 their structure name (as in 0.8), rather than a free-for-all
13414 allowing collisions between enum values from different plugins.
13416 * gst/gstpad.c: (gst_pad_class_init):
13419 * gst/gstqueue.c: (gst_queue_handle_sink_event):
13420 Handle out-of-band downstream events from the sending thread.
13422 2005-08-17 Andy Wingo <wingo@pobox.com>
13424 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
13425 play-timeout==0 to mean no timeout at all. In that case, don't
13426 bother with a get_state or a warning, just return directly, even
13429 * gst/base/gstbasetransform.c: Debug changes.
13432 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
13433 ensure bins post state change messages. A bit of a hack but I can't
13434 think of a way to avoid it.
13436 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
13438 2005-08-16 Andy Wingo <wingo@pobox.com>
13440 * gst/base/gstadapter.h:
13441 * gst/base/gstadapter.c (gst_adapter_take): New function, like
13442 peek() but you own the data. Not terribly efficient atm.
13444 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13446 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
13447 (gst_element_found_tags):
13449 Add two utility functions for tag handling.
13451 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13453 * docs/manual/advanced-dataaccess.xml:
13454 * docs/manual/basics-helloworld.xml:
13455 Fix docs to use _bin_add() before _link(), which fixes the examples
13456 with recent core versions (reported by Madhan Raj M
13457 <raj_madan@rediffmail.com>, #313199).
13459 2005-08-16 Wim Taymans <wim@fluendo.com>
13461 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
13462 Added subtract checks.
13464 * docs/design/part-events.txt:
13465 Some more docs about newsegment
13467 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
13470 * gst/gstcaps.c: (gst_caps_to_string):
13471 Add comments, cleanups.
13473 * gst/gstelement.c: (gst_element_save_thyself):
13476 * gst/gstvalue.c: (gst_value_collect_int_range),
13477 (gst_string_unwrap), (gst_value_union_int_int_range),
13478 (gst_value_union_int_range_int_range),
13479 (gst_value_intersect_int_int_range),
13480 (gst_value_intersect_int_range_int_range),
13481 (gst_value_intersect_double_double_range),
13482 (gst_value_intersect_double_range_double_range),
13483 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
13484 (gst_value_subtract_int_range_int),
13485 (gst_value_subtract_double_range_double),
13486 (gst_value_subtract_double_range_double_range),
13487 (gst_value_subtract_from_list), (gst_value_subtract_list),
13488 (gst_value_can_compare), (gst_value_compare_fraction):
13489 Cleanups, add comments, remove unneeded asserts.
13491 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
13493 * tools/gst-launch.c: (event_loop):
13494 don't convert NULL structures to strings
13496 2005-08-15 Stefan Kost <ensonic@users.sf.net>
13498 * docs/gst/gstreamer-sections.txt:
13499 made some defines private
13500 * docs/gst/tmpl/gstconfig.sgml:
13501 * docs/gst/tmpl/gstqueue.sgml:
13502 * docs/gst/tmpl/gsttaglist.sgml:
13503 * docs/gst/tmpl/gsttypes.sgml:
13504 * docs/gst/tmpl/gstutils.sgml:
13505 * docs/pwg/appendix-porting.xml:
13506 * gst/base/gstbasesink.h:
13507 * gst/base/gstbasesrc.c:
13508 * gst/base/gstbasesrc.h:
13509 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
13510 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
13511 * gst/gstelement.c: (gst_element_class_init):
13512 * gst/gstpad.c: (gst_pad_class_init):
13513 * gst/gstqueue.c: (gst_queue_class_init):
13514 * gst/gstxml.c: (gst_xml_class_init):
13515 documented all undocumented signal inline
13516 * libs/gst/controller/gst-controller.h:
13519 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13521 * docs/pwg/appendix-porting.xml:
13522 Document _set_link_function -> _set_setcaps_function.
13524 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
13526 * check/Makefile.am:
13527 add a .check target for running the check
13528 * check/gst-libs/controller.c: (GST_START_TEST):
13530 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13531 complete checks for gstbuffer; would be nice if I could get the
13532 gcov stuff to work so I can see if I actually completed gstbuffer.c
13533 * check/gstcheck.h:
13534 add ASSERT_BUFFER_REFCOUNT
13536 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
13538 * docs/gst/gstreamer-sections.txt:
13539 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13541 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
13542 spew out a warning if a tag that is already registered
13543 is re-registered, unless it is re-registered with a
13544 different type (#308438).
13546 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
13548 * docs/pwg/appendix-porting.xml:
13549 * docs/pwg/building-state.xml:
13550 Add some paragraphs about state changes in 0.9 to the PWG
13551 and the porting guide, in particular about the new meaning
13552 of GST_STATE_PAUSED and how to write state change functions
13553 with concurrent access by multiple threads in mind.
13555 2005-08-11 Stefan Kost <ensonic@users.sf.net>
13557 * docs/gst/gstreamer-docs.sgml:
13558 * docs/libs/gstreamer-libs-docs.sgml:
13559 added deprecation and since indexes
13560 * libs/gst/controller/gst-controller.c:
13561 * libs/gst/controller/gst-helper.c:
13565 2005-08-11 Wim Taymans <wim@fluendo.com>
13567 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
13568 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
13569 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
13570 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
13571 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
13572 (gst_ghost_pad_set_target):
13573 Actually implement (re)setting the target on a ghostpad
13574 as described in the docs.
13576 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
13578 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
13579 Check whether GST_DEBUG_NO_COLOR environment variable is
13580 set and disable coloured debug output if that is the case.
13582 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
13584 * gst/base/gsttypefindhelper.c: (helper_find_peek),
13585 (gst_type_find_helper):
13586 The memory returned by gst_type_find_peek() needs to
13587 stay valid until the end of a typefind function, and
13588 typefind functions may keep results from different
13589 offsets around, so we can't just unref the buffer from
13590 the previous _peek(), but have to save all buffers
13591 returned by _peek() until typefinding is done and only
13594 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
13596 * docs/gst/gstreamer-sections.txt:
13598 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
13600 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13602 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
13603 Fix a pretty good memleak.
13605 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
13607 * gst/gstiterator.h:
13608 Fix wrong include and 'make distcheck'.
13610 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13612 * gst/gstbin.c: (bin_bus_handler):
13613 Use gst_element_post_message() instead.
13615 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
13617 * gst/base/gstadapter.h:
13618 * gst/base/gstbasesink.h:
13619 * gst/base/gstbasesrc.h:
13620 * gst/base/gstbasetransform.h:
13621 * gst/base/gstcollectpads.h:
13622 * gst/base/gstpushsrc.h:
13623 * gst/gstiterator.h:
13624 Add padding to our base elements' class and instance structs and
13625 to GstIterator (you will need to rebuild all plugins and apps!)
13627 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13629 * gst/gstbin.c: (bin_bus_handler):
13630 Make default message forwarding from child->bus to bin->bus
13631 threadsafe and make it not emit warnings if the parent has no bus.
13633 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13635 * gst/gstelement.c: (activate_pads):
13636 On paused->ready, set pad->caps to NULL, as is the documented
13637 behaviour in this state change. Fixes playback of series of
13638 media files when visualization is enabled in Totem.
13640 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13642 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
13643 Allow NULL as filter-caps (which means "any").
13645 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13647 * docs/libs/gstreamer-libs-sections.txt:
13648 * libs/gst/controller/gst-controller.c:
13649 * libs/gst/controller/gst-controller.h:
13650 * libs/gst/controller/gst-helper.c:
13651 adding more entries to the docs and fix small doc-bugs
13653 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13655 * docs/gst/gstreamer-docs.sgml:
13656 * docs/gst/gstreamer-sections.txt:
13657 * docs/gst/gstreamer.types:
13658 * docs/gst/tmpl/gstbasesink.sgml:
13659 * docs/gst/tmpl/gstbasesrc.sgml:
13660 * docs/gst/tmpl/gstbasetransform.sgml:
13661 * docs/gst/tmpl/gstfakesrc.sgml:
13662 * gst/base/gstcollectpads.c:
13663 * gst/base/gstcollectpads.h:
13664 * libs/gst/controller/gst-controller.c:
13665 * libs/gst/controller/gst-controller.h:
13666 * libs/gst/controller/gst-helper.c:
13667 * libs/gst/controller/gst-interpolation.c:
13668 * libs/gst/controller/lib.c:
13669 added long/short desc for controller docs
13670 added collectpads base class docs
13671 added correct includes to base-class docs
13673 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13675 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
13676 (gst_test_mono_source_set_property),
13677 (gst_test_mono_source_class_init), (GST_START_TEST),
13678 (gst_controller_suite):
13679 * docs/gst/gstreamer-docs.sgml:
13680 * docs/gst/gstreamer-sections.txt:
13681 * docs/gst/gstreamer.types:
13682 * docs/libs/gstreamer-libs-docs.sgml:
13683 * docs/libs/gstreamer-libs-sections.txt:
13684 * gst/base/gstadapter.c:
13685 * libs/gst/controller/gst-controller.c:
13686 (gst_controlled_property_new), (gst_controlled_property_free),
13687 (gst_controller_new_valist),
13688 (gst_controller_remove_properties_valist),
13689 (gst_controller_sink_values), (_gst_controller_finalize):
13690 * libs/gst/controller/gst-controller.h:
13691 * libs/gst/controller/gst-helper.c:
13692 (gst_object_control_properties), (gst_object_uncontrol_properties),
13693 (gst_object_get_controller), (gst_object_set_controller),
13694 (gst_object_sink_values), (gst_object_get_value_arrays),
13695 (gst_object_get_value_array):
13696 more tests (and fixes) for the controller
13697 more docs for the controller
13698 integrated companies docs for the adapter
13700 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
13702 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
13703 (GST_START_TEST), (fakesrc_suite):
13704 add tests for sizetype
13706 2005-08-04 Andy Wingo <wingo@pobox.com>
13708 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
13709 fixes buffer_alloc proxying among other things.
13711 * gst/base/gstbasetransform.c:
13712 * gst/base/gstbasetransform.h:
13713 Revert patch to gstbasetransform from 7-28 removing
13716 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
13717 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
13718 Semantics changed, should return not the size of the output buffer
13719 but the byte size of a buffer with a given caps.
13721 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
13723 (gst_base_transform_configure_caps): Don't set out_size here: (in,
13724 out) are not the pad caps until setcaps finishes.
13725 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
13726 not-in-place case as well. Deal with changing from in-place to
13727 not-in-place within calling pad_alloc_buffer. Still a bit
13728 concerned about the overhead here...
13730 2005-08-03 Andy Wingo <wingo@pobox.com>
13732 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
13733 fixating is an error.
13735 2005-08-04 Edward Hervey <edward@fluendo.com>
13737 * gst/base/gstadapter.h:
13738 Added gst_adapter_get_type() to the header
13740 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13742 * check/Makefile.am:
13743 * check/gst-libs/controller.c:
13744 * libs/gst/controller/gst-controller.c:
13745 (gst_controller_new_valist):
13746 added check test suite for the controller
13747 * gst/base/gstpushsrc.c:
13750 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13752 * docs/gst/Makefile.am:
13753 * docs/gst/gstreamer-docs.sgml:
13754 * docs/gst/gstreamer-sections.txt:
13755 * docs/gst/gstreamer.types:
13756 * docs/gst/tmpl/gstfakesrc.sgml:
13758 * gst/base/gstbasesink.c:
13759 * gst/base/gstbasesink.h:
13760 * gst/base/gstbasesrc.c:
13761 * gst/base/gstbasesrc.h:
13762 * gst/base/gstbasetransform.c:
13763 * gst/base/gstpushsrc.c:
13764 * gst/base/gstpushsrc.h:
13765 add short/long description docs to base classes
13766 add pushsrc to the docs
13767 remove consolidated doc fragments
13769 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13772 * docs/libs/Makefile.am:
13773 * docs/libs/gstreamer-libs-docs.sgml:
13774 * docs/libs/gstreamer-libs-sections.txt:
13775 * docs/libs/gstreamer-libs.types:
13776 * examples/Makefile.am:
13777 * examples/controller/.cvsignore:
13778 * examples/controller/Makefile.am:
13779 * examples/controller/audio-example.c: (main):
13780 * libs/gst/Makefile.am:
13781 * libs/gst/controller/.cvsignore:
13782 * libs/gst/controller/Makefile.am:
13783 * libs/gst/controller/gst-controller.c:
13784 (on_object_controlled_property_changed), (gst_timed_value_compare),
13785 (gst_timed_value_find),
13786 (gst_controlled_property_set_interpolation_mode),
13787 (gst_controlled_property_new), (gst_controlled_property_free),
13788 (gst_controller_find_controlled_property),
13789 (gst_controller_new_valist), (gst_controller_new),
13790 (gst_controller_remove_properties_valist),
13791 (gst_controller_remove_properties), (gst_controller_set),
13792 (gst_controller_set_from_list), (gst_controller_unset),
13793 (gst_controller_get), (gst_controller_get_all),
13794 (gst_controller_sink_values), (gst_controller_get_value_arrays),
13795 (gst_controller_get_value_array),
13796 (gst_controller_set_interpolation_mode),
13797 (_gst_controller_finalize), (_gst_controller_init),
13798 (_gst_controller_class_init), (gst_controller_get_type):
13799 * libs/gst/controller/gst-controller.h:
13800 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
13801 (g_object_uncontrol_properties), (g_object_get_controller),
13802 (g_object_set_controller), (g_object_sink_values),
13803 (g_object_get_value_arrays), (g_object_get_value_array):
13804 * libs/gst/controller/gst-interpolation.c:
13805 (gst_controlled_property_find_timed_value_node),
13806 (interpolate_none_get), (interpolate_trigger_get),
13807 (interpolate_trigger_get_value_array):
13808 * libs/gst/controller/lib.c: (gst_controller_init):
13809 * pkgconfig/Makefile.am:
13810 * pkgconfig/gstreamer-control-uninstalled.pc.in:
13811 * pkgconfig/gstreamer-control.pc.in:
13812 * testsuite/Makefile.am:
13813 * testsuite/controller/.cvsignore:
13814 * testsuite/controller/Makefile.am:
13815 * testsuite/controller/interpolator.c: (main):
13816 added controller code
13817 removed dparam pc files
13819 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
13820 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
13821 (gst_collectpads_stop):
13822 Broadcast the condition when shutting down, to make sure we wake all
13823 threads up. Shut down pads on finalize, for safety.
13825 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
13826 * gst/base/gstbasetransform.c: (gst_base_transform_init),
13827 (gst_base_transform_handle_buffer),
13828 (gst_base_transform_change_state):
13829 Handle PAUSED->READY->PAUSED transition after negotiation
13831 * gst/gstmessage.c: (gst_message_init):
13832 Extra piece of debug for new messages.
13834 2005-08-01 Stefan Kost <ensonic@users.sf.net>
13837 * docs/gst/tmpl/gstbasesrc.sgml:
13838 * docs/gst/tmpl/gstelement.sgml:
13839 * docs/gst/tmpl/gstevent.sgml:
13840 * docs/gst/tmpl/gstfakesrc.sgml:
13841 * docs/gst/tmpl/gstformat.sgml:
13842 * docs/gst/tmpl/gstghostpad.sgml:
13843 * docs/gst/tmpl/gstpad.sgml:
13844 * docs/gst/tmpl/gstquery.sgml:
13845 * docs/gst/tmpl/gststructure.sgml:
13846 * docs/gst/tmpl/gsttaglist.sgml:
13847 * docs/gst/tmpl/gstvalue.sgml:
13848 * docs/libs/gstreamer-libs-docs.sgml:
13849 * docs/libs/gstreamer-libs-sections.txt:
13850 * docs/libs/gstreamer-libs.types:
13851 * libs/gst/Makefile.am:
13852 * libs/gst/control/.cvsignore:
13853 * libs/gst/control/Makefile.am:
13854 * libs/gst/control/control.c:
13855 * libs/gst/control/control.h:
13856 * libs/gst/control/dparam.c:
13857 * libs/gst/control/dparam.h:
13858 * libs/gst/control/dparam_smooth.c:
13859 * libs/gst/control/dparam_smooth.h:
13860 * libs/gst/control/dparamcommon.h:
13861 * libs/gst/control/dparammanager.c:
13862 * libs/gst/control/dparammanager.h:
13863 * libs/gst/control/dplinearinterp.c:
13864 * libs/gst/control/dplinearinterp.h:
13865 * libs/gst/control/unitconvert.c:
13866 * libs/gst/control/unitconvert.h:
13867 * testsuite/Makefile.am:
13868 * testsuite/dynparams/.cvsignore:
13869 * testsuite/dynparams/Makefile.am:
13870 * testsuite/dynparams/dparamstest.c:
13871 * tools/Makefile.am:
13872 * tools/gst-inspect.c: (print_element_info), (main):
13873 * tools/gst-xmlinspect.c: (print_element_info), (main):
13874 deactivate and remove dparams (libgstcontrol)
13876 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13878 * gst/elements/gsttypefindelement.c:
13879 (gst_type_find_element_have_type), (gst_type_find_element_init),
13880 (stop_typefinding), (gst_type_find_element_handle_event),
13881 (gst_type_find_element_chain), (gst_type_find_element_getrange):
13882 * gst/elements/gsttypefindelement.h:
13883 Set caps on all outgoing buffers, not just the first one.
13885 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13887 * gst/elements/gsttypefindelement.c:
13888 (gst_type_find_element_have_type),
13889 (gst_type_find_element_check_set_buffer_caps),
13890 (gst_type_find_element_init), (stop_typefinding),
13891 (gst_type_find_element_handle_event),
13892 (gst_type_find_element_chain), (gst_type_find_element_getrange):
13893 * gst/elements/gsttypefindelement.h:
13894 Set caps on first outgoing buffer when we've found the type.
13896 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13898 * docs/gst/gstreamer-docs.sgml:
13899 * docs/gst/gstreamer-sections.txt:
13900 * docs/gst/tmpl/gstscheduler.sgml:
13901 * docs/gst/tmpl/gstschedulerfactory.sgml:
13902 Remove some old cruft from docs.
13904 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
13907 Fix inline docs for GstPadLinkReturn.
13909 * gst/gststructure.c: (gst_structure_has_name):
13910 * gst/gststructure.h:
13911 * docs/gst/gstreamer-sections.txt:
13912 New API: gst_structure_has_name().
13914 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
13917 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
13918 and _LARGEFILE_SOURCE in config.h as required. Do not
13919 export those flags in our .pc files any longer (#142209).
13921 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
13923 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
13924 (gst_file_sink_do_seek), (gst_file_sink_event),
13925 (gst_file_sink_get_current_offset), (gst_file_sink_render):
13926 Redo seek/tell calls with large file support in mind; add some
13927 debugging messages; add log message that tells us when large
13928 file support is unavailable or not enabled for some reason.
13930 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
13931 Add log message that tells us when large file support
13932 is unavailable or not enabled for some reason.
13934 2005-07-29 Wim Taymans <wim@fluendo.com>
13936 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
13937 Added test for removing an element with ghostpad from a bin.
13938 Fixed test as current implementation does the right thing.
13940 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
13941 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
13942 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
13943 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
13944 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
13945 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
13946 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
13947 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
13948 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
13949 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
13950 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
13951 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
13952 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
13953 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
13954 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
13955 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
13956 * gst/gstghostpad.h:
13957 Clean up ghostpads, remove properties for internal stuff.
13960 Prepare for switching targets, not all use cases work yet.
13962 2005-07-29 Wim Taymans <wim@fluendo.com>
13964 * docs/design/part-gstghostpad.txt:
13967 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
13968 (gst_bin_remove_func):
13969 Unlinking pads while holding the bin LOCK is not a good
13972 * gst/gstpad.c: (gst_pad_class_init),
13973 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
13974 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
13975 No prob setting template after creating the pad.
13977 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
13979 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
13980 (gst_bus_peek), (gst_bus_source_dispatch),
13981 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
13982 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
13983 gst_bus_poll may be called from other threads. Handle
13984 this nicely by not making poll_data disappear off the
13985 stack once gst_bus_poll returns.
13986 gst_bus_peek now increments the refcount on the returned
13989 2005-07-29 Wim Taymans <wim@fluendo.com>
13991 * docs/design/part-gstghostpad.txt:
13992 Overview of current GhostPad datastructures and use
13993 cases for changing the target.
13995 2005-07-28 Wim Taymans <wim@fluendo.com>
13997 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
13998 Added checks for hierarchy consistency whan adding linked
14001 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
14002 Added check to test element scheduling without bin/pipeline.
14004 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
14005 First add elements to bin, then link.
14007 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
14008 (gst_bin_remove_func):
14009 Unlink pads from elements added/removed from bin to maintain
14010 hierarchy consistency.
14012 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14014 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
14015 (gst_base_transform_handle_buffer):
14016 * gst/base/gstbasetransform.h:
14017 Remove broken delay_configure (fixes renegotiation of software
14018 scaling pipelines); remove some leftover printf()s.
14020 2005-07-28 Wim Taymans <wim@fluendo.com>
14022 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
14023 Added some more tests for wrong hierarchy
14025 * docs/design/part-overview.txt:
14028 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
14031 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
14032 (gst_element_dispose):
14033 Some more cleanups.
14035 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
14036 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
14037 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
14038 (gst_pad_set_caps), (gst_pad_send_event):
14039 Check for correct hierarchy when linking pads. Moving to
14040 strict requirement for ghostpads when linking elements in
14044 Clean ups. Added WRONG_HIERARCHY return value.
14046 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14048 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
14049 Better debug if no transform is possible.
14051 2005-07-27 Wim Taymans <wim@fluendo.com>
14053 * docs/random/wtay/network-transp:
14054 Some old doc I had.
14056 2005-07-27 Wim Taymans <wim@fluendo.com>
14058 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
14059 (gst_dp_event_from_packet):
14060 Fix serialization of seek events.
14062 2005-07-27 Wim Taymans <wim@fluendo.com>
14064 * check/gst-libs/gdp.c: (GST_START_TEST):
14065 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
14066 Fix compilation and fix event serialization.
14068 2005-07-27 Wim Taymans <wim@fluendo.com>
14071 * docs/design/part-TODO.txt:
14072 * docs/design/part-events.txt:
14075 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14076 (gst_base_sink_event), (gst_base_sink_do_sync),
14077 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
14078 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
14079 (gst_base_src_do_seek), (gst_base_src_event_handler),
14080 (gst_base_src_loop):
14081 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
14082 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
14083 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
14084 (gst_base_transform_event), (gst_base_transform_handle_buffer),
14085 (gst_base_transform_set_passthrough),
14086 (gst_base_transform_is_passthrough):
14087 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
14088 * gst/elements/gstfilesink.c: (gst_file_sink_event):
14094 * gst/gstelement.c: (gst_element_seek):
14095 * gst/gstelement.h:
14096 Update gst_element_seek.
14098 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
14099 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
14100 (gst_event_new_flush_start), (gst_event_new_flush_stop),
14101 (gst_event_new_eos), (gst_event_new_newsegment),
14102 (gst_event_parse_newsegment), (gst_event_new_tag),
14103 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
14104 (gst_event_parse_qos), (gst_event_new_seek),
14105 (gst_event_parse_seek), (gst_event_new_navigation):
14107 Make GstEvent use GstStructure. Add parsing code, make sure the
14108 API is sufficiently generic.
14109 Mark possible directions of events and serialization.
14111 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
14112 (_gst_message_copy), (gst_message_new_segment_start),
14113 (gst_message_new_segment_done), (gst_message_new_custom),
14114 (gst_message_parse_segment_start),
14115 (gst_message_parse_segment_done):
14118 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
14119 (gst_pad_set_caps), (gst_pad_send_event):
14120 Update for new events.
14121 Catch events sent in wrong directions.
14123 * gst/gstqueue.c: (gst_queue_link_src),
14124 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
14125 (gst_queue_handle_src_query):
14130 Remove event code from this file.
14132 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
14133 (gst_dp_event_from_packet):
14136 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14138 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
14139 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
14140 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
14141 Make debugging actually useful.
14143 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14145 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
14146 (gst_pad_fixate_caps):
14147 Implement default fixation once again, so that gst_pad_fixate()
14148 actually does anything at all. This probably needs to be some
14149 sort of a last resort, and use profile-based fixation first, but
14150 since that doesn't exist yet, this is the best we have. Fixes
14151 visualization in Totem.
14153 2005-07-22 Wim Taymans <wim@fluendo.com>
14155 * docs/design/part-events.txt:
14158 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14159 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
14160 (gst_base_sink_activate_pull):
14161 Some more comments.
14163 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
14164 (gst_fake_src_create):
14165 Fix handoff marshall.
14167 * gst/elements/gstidentity.c: (gst_identity_class_init),
14168 (gst_identity_transform_ip):
14169 We're a real inplace element.
14171 * gst/gstbus.c: (gst_bus_post):
14172 Added some comments.
14174 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
14175 * tests/muxing/case1.c: (main):
14176 * tests/sched/dynamic-pipeline.c: (main):
14177 * tests/sched/interrupt1.c: (main):
14178 * tests/sched/interrupt2.c: (main):
14179 * tests/sched/interrupt3.c: (main):
14180 * tests/sched/runxml.c: (main):
14181 * tests/sched/sched-stress.c: (main):
14182 * tests/seeking/seeking1.c: (event_received), (main):
14183 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
14185 * tests/threadstate/threadstate3.c: (main):
14186 * tests/threadstate/threadstate4.c: (main):
14187 * tests/threadstate/threadstate5.c: (main):
14190 2005-07-21 Wim Taymans <wim@fluendo.com>
14192 * docs/design/part-seeking.txt:
14193 Some small additions.
14195 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14196 (gst_base_sink_get_times), (gst_base_sink_do_sync),
14197 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
14198 * gst/base/gstbasesink.h:
14199 discont values are gint64, handle the math correctly.
14201 * gst/base/gstbasesrc.c: (gst_base_src_loop):
14202 Make the basesrc report error if the source pad is not linked.
14204 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
14205 (gst_queue_loop), (gst_queue_handle_src_query),
14206 (gst_queue_src_activate_push):
14207 Make queue collect data even if the srcpad is not linked.
14208 Start pushing out data as soon as it is linked.
14210 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
14212 Added gst_flow_get_name() to ease error reporting.
14214 2005-07-20 Wim Taymans <wim@fluendo.com>
14216 * gst/gstmessage.c: (gst_message_new_segment_start),
14217 (gst_message_new_segment_done), (gst_message_parse_segment_start),
14218 (gst_message_parse_segment_done):
14219 * gst/gstmessage.h:
14220 Added a bunch of messages for advanced seeking.
14222 * gst/parse/grammar.y:
14223 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
14224 (gst_dpman_state_changed):
14225 Fix some new-pad -> pad-added signals
14227 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14229 * docs/manual/appendix-porting.xml:
14230 * docs/pwg/appendix-porting.xml:
14231 Document new-pad/state-change signal renames and the FixedList
14234 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14236 * docs/manual/advanced-autoplugging.xml:
14237 * docs/manual/basics-helloworld.xml:
14238 * docs/manual/basics-pads.xml:
14239 * docs/random/ds/0.9-suggested-changes:
14240 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
14241 * gst/gstelement.h:
14245 * gst/gststructure.c: (gst_structure_value_get_generic_type),
14246 (gst_structure_parse_array), (gst_structure_parse_value):
14247 * gst/gstvalue.c: (gst_type_is_fixed),
14248 (gst_value_list_prepend_value), (gst_value_list_append_value),
14249 (gst_value_list_get_size), (gst_value_list_get_value),
14250 (gst_value_transform_array_string), (gst_value_serialize_array),
14251 (gst_value_deserialize_array), (gst_value_intersect_array),
14252 (gst_value_is_fixed), (_gst_value_initialize):
14254 GstElement::new-pad -> pad-added, GstElement::state-change ->
14255 state-changed, GstValueFixedList -> GstValueArray, add format and
14256 flags as their own arguments in gst_element_seek() (should improve
14257 "bindeability"), remove function generators since they don't work
14258 under a whole bunch of compilers (they were deprecated already
14261 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14263 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
14264 (_gst_debug_register_funcptr):
14266 Fix illegal cast on some platforms (#309253).
14268 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14270 * gst/gstmessage.c: (gst_message_new_custom):
14271 * gst/gstmessage.h:
14272 Add _new_custom, make _new_application a macro to _new_custom.
14274 2005-07-20 Wim Taymans <wim@fluendo.com>
14276 * gst/base/gstbasesrc.c: (gst_base_src_init),
14277 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
14278 * gst/base/gstbasesrc.h:
14279 Add a gboolean to decide when to push out a discont.
14281 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
14282 (gst_queue_loop), (gst_queue_handle_src_query),
14283 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
14284 (gst_queue_set_property), (gst_queue_get_property):
14287 * tests/threadstate/threadstate1.c: (main):
14288 Make a thread test compile and run... very silly..
14291 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14293 * docs/manual/appendix-porting.xml:
14294 Mention removal of libgstgconf-0.9.la and existence of gconf
14297 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14299 * docs/pwg/advanced-clock.xml:
14300 * docs/pwg/appendix-porting.xml:
14301 * docs/pwg/intro-preface.xml:
14302 * docs/pwg/other-base.xml:
14303 * docs/pwg/other-manager.xml:
14304 * docs/pwg/other-nton.xml:
14305 * docs/pwg/other-ntoone.xml:
14306 * docs/pwg/other-oneton.xml:
14307 * docs/pwg/pwg.xml:
14308 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
14309 demuxer), remove n-to-n (was never written), fix some code examples
14310 and links and update the porting section to include all this.
14312 2005-07-19 Wim Taymans <wim@fluendo.com>
14314 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
14315 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
14316 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
14317 (gst_queue_src_activate_push), (gst_queue_change_state),
14318 (gst_queue_get_property):
14320 Propagate GstFlowReturn more intelligently upstream and output
14321 an ERROR/EOS when streaming stopped due to fatal error.
14323 2005-07-19 Wim Taymans <wim@fluendo.com>
14325 * tools/gst-launch.c: (check_intr), (event_loop), (main):
14326 Don't block forever for the state change to complete, the
14327 pipeline already did with a sensible timeout.
14329 2005-07-19 Wim Taymans <wim@fluendo.com>
14331 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
14332 Make sure we never call the create function is we
14335 2005-07-19 Andy Wingo <wingo@pobox.com>
14337 * gst/parse/parse.l: Attempt to solve bug #172815.
14339 2005-07-19 Wim Taymans <wim@fluendo.com>
14341 * docs/design/part-clocks.txt:
14342 * docs/design/part-events.txt:
14343 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
14344 Small docs updates.
14345 Only update the seeking values when we are not
14348 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
14350 * gst/base/gstbasesrc.c: (gst_base_src_loop):
14351 Oops, ignore the result of gst_pad_push_event here.
14353 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
14355 * gst/base/gstbasesrc.c: (gst_base_src_loop),
14356 (gst_base_src_activate_push):
14357 Send discont event from the loop function, as pads
14358 aren't activated yet in the activate_push handler.
14360 * gst/gstbin.c: (bin_bus_handler):
14361 Don't leak element name.
14363 2005-07-18 Andy Wingo <wingo@pobox.com>
14365 * configure.ac: Use AS_LIBTOOL_TAGS.
14367 2005-07-18 Wim Taymans <wim@fluendo.com>
14369 * docs/gst/gstreamer.types:
14370 Remove deleted types.
14372 2005-07-18 Wim Taymans <wim@fluendo.com>
14374 * check/elements/gstfakesrc.c: (GST_START_TEST):
14377 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
14378 (init_popt_callback):
14380 * gst/gst_private.h:
14381 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
14382 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
14385 * gst/gstconfig.h.in:
14386 * gst/gstelement.c: (gst_element_class_init),
14387 (gst_element_set_base_time), (gst_element_get_base_time),
14388 (iterator_fold_with_resync), (gst_element_change_state),
14389 (gst_element_dispose), (gst_element_get_bus):
14390 * gst/gstelement.h:
14391 * gst/gstelementfactory.h:
14392 * gst/gsterror.c: (_gst_core_errors_init):
14395 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
14397 * gst/gstinfo.c: (_gst_debug_init):
14398 * gst/gstmessage.c: (_gst_message_copy):
14399 * gst/gstmessage.h:
14400 * gst/gstminiobject.h:
14403 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
14404 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
14407 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
14408 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
14409 (gst_pipeline_get_last_stream_time):
14410 * gst/gstpipeline.h:
14411 * gst/gstpluginfeature.h:
14413 * gst/gstscheduler.c:
14414 * gst/gstscheduler.h:
14415 * gst/gststructure.h:
14416 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
14417 (gst_task_finalize), (gst_task_func), (gst_task_create),
14418 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
14419 (gst_task_stop), (gst_task_pause):
14421 * gst/gsttypefind.h:
14423 * gst/registries/gstlibxmlregistry.c: (load_feature),
14424 (gst_xml_registry_load), (gst_xml_registry_save_feature):
14425 * gst/registries/gstxmlregistry.c:
14426 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
14427 * gst/schedulers/threadscheduler.c:
14428 * libs/gst/control/dparammanager.h:
14429 * tools/gst-inspect.c: (print_element_list),
14430 (print_plugin_features), (print_element_features):
14431 * tools/gst-xmlinspect.c: (print_element_list),
14432 (print_plugin_info), (main):
14433 Removed plugable schedulers.
14434 Removed Scheduler/Manager from elements.
14435 Removed gsttypes.h, rearranged includes.
14436 Removed dependency pad<->element, element<>pipeline, and
14437 various others, fix includes.
14438 implement gst_pad_get_parent() with gst_object_get_parent()
14439 Make GstTask sefcontained.
14440 Fix _get_state() on GstBin, it did not return ASYNC with a 0
14442 Fix endless loop in iterator_fold_with_resync.
14445 2005-07-18 Wim Taymans <wim@fluendo.com>
14451 2005-07-18 Wim Taymans <wim@fluendo.com>
14454 No more cothreads.h
14456 2005-07-18 Wim Taymans <wim@fluendo.com>
14460 Let's remove these.
14462 2005-07-18 Wim Taymans <wim@fluendo.com>
14464 * docs/design/part-dynamic.txt:
14465 * docs/design/part-events.txt:
14466 * docs/design/part-seeking.txt:
14467 Some more docs in the works.
14469 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
14470 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
14471 (gst_base_transform_setcaps), (gst_base_transform_get_size),
14472 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
14473 (gst_base_transform_handle_buffer),
14474 (gst_base_transform_sink_activate_push),
14475 (gst_base_transform_src_activate_pull),
14476 (gst_base_transform_set_passthrough),
14477 (gst_base_transform_is_passthrough):
14480 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
14483 * gst/gstevent.c: (gst_event_finalize):
14486 * gst/gstutils.c: (gst_element_unlink),
14487 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
14488 (gst_pad_proxy_setcaps):
14490 Add _get_parent_element() to get a pads parent as an element.
14492 2005-07-18 Wim Taymans <wim@fluendo.com>
14494 * check/gst/gstbin.c: (GST_START_TEST):
14497 2005-07-18 Wim Taymans <wim@fluendo.com>
14499 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
14500 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
14501 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
14502 (gst_base_sink_event), (gst_base_sink_do_sync),
14503 (gst_base_sink_chain), (gst_base_sink_loop),
14504 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
14505 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
14507 Fix logic for returning ASYNC when not prerolled.
14509 2005-07-18 Wim Taymans <wim@fluendo.com>
14511 * gst/gstqueue.c: (gst_queue_handle_sink_event):
14512 Fix nasty refcount bug.
14514 2005-07-16 Philippe Khalaf <burger@speedy.org>
14516 * gst/elements/gstfdsrc.c:
14517 * gst/elements/gstfdsrc.h:
14518 * gst/elements/gstelements.c:
14519 * gst/elements/Makefile.am:
14520 Ported fdsrc to 0.9.
14522 2005-07-16 Wim Taymans <wim@fluendo.com>
14524 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14525 (gst_base_sink_do_sync):
14528 2005-07-16 Wim Taymans <wim@fluendo.com>
14530 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14531 (gst_base_sink_event), (gst_base_sink_get_times),
14532 (gst_base_sink_do_sync), (gst_base_sink_change_state):
14533 * gst/base/gstbasesink.h:
14534 Store and use discont values when syncing buffers as described
14537 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
14538 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
14539 (gst_base_src_activate_push):
14540 Push discont event when starting.
14542 * gst/elements/gstidentity.c: (gst_identity_transform):
14545 * gst/gstbin.c: (gst_bin_change_state):
14546 Small cleanups in base_time distribution.
14548 * gst/gstelement.c: (gst_element_set_base_time),
14549 (gst_element_get_base_time), (gst_element_change_state):
14550 * gst/gstelement.h:
14551 Added methods for the base_time of the element.
14554 * gst/gstpipeline.c: (gst_pipeline_send_event),
14555 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
14556 (gst_pipeline_get_last_stream_time):
14557 * gst/gstpipeline.h:
14559 Handle seeking as described in design doc, remove stream_time
14561 Cleanups clock and stream_time selection code. Added accessors
14562 for the stream_time.
14565 2005-07-16 Andy Wingo <wingo@pobox.com>
14567 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
14570 2005-07-16 Wim Taymans <wim@fluendo.com>
14572 * check/gst/gstbin.c: (GST_START_TEST):
14573 Make elements silent as the deep_notify refs the
14574 parent, which might make the test fail.
14576 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
14577 Don't hold the lock for too long.
14579 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
14581 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
14582 Don't unref the caps we passed to gst_caps_make_writable() after
14583 passing them. gst_caps_make_writable() will do that for us.
14585 2005-07-15 Andy Wingo <wingo@pobox.com>
14587 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
14590 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
14591 own marshalling function for the handoff signal. Properly type the
14592 buffer as a buffer. Fixes some warnings. Should do a more general
14594 (gst_identity_class_init): Plug into the right marshaller.
14596 2005-07-15 Wim Taymans <wim@fluendo.com>
14598 * docs/design/part-TODO.txt:
14599 * docs/design/part-clocks.txt:
14600 * docs/design/part-element-sink.txt:
14601 * docs/design/part-events.txt:
14602 * docs/design/part-gstpipeline.txt:
14603 Updated docs, mostly DISCONT related.
14605 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
14607 * docs/pwg/building-pads.xml:
14608 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
14610 2005-07-15 Andy Wingo <wingo@pobox.com>
14612 * tools/gst-typefind.c: Update, add copyright block.
14614 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
14615 Normalize and truncate caps before fixation.
14618 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
14619 discards all but the first structure from its argument.
14621 2005-07-15 Wim Taymans <wim@fluendo.com>
14623 * gst/base/gstbasetransform.c: (gst_base_transform_init),
14624 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
14625 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
14626 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
14627 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
14628 (gst_base_transform_chain), (gst_base_transform_change_state),
14629 (gst_base_transform_set_passthrough),
14630 (gst_base_transform_is_passthrough):
14631 * gst/base/gstbasetransform.h:
14632 Make passthrough work using the bufferpools.
14633 Changed API a bit, subclasses have to write into a buffer
14634 provided by the base class.
14635 More debug info in nego functions.
14637 * gst/elements/gstidentity.c: (gst_identity_init),
14638 (gst_identity_transform):
14639 Port to new base class.
14641 2005-07-15 Wim Taymans <wim@fluendo.com>
14643 * gst/gstmessage.c: (gst_message_new_state_changed):
14644 * tools/gst-launch.c: (event_loop), (main):
14645 Totally dump messages in -launch with the -m option.
14646 Fix message name for State messages,
14648 2005-07-14 Wim Taymans <wim@fluendo.com>
14650 * gst/base/gstbasesrc.c: (gst_base_src_loop):
14651 Post error messages on errors.
14653 2005-07-14 Wim Taymans <wim@fluendo.com>
14655 * gst/gstcaps.c: (gst_caps_do_simplify):
14659 Define error for stream stopped.
14661 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
14662 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
14663 Do proper return values.
14665 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
14666 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
14667 (gst_pad_get_range):
14668 Better return values.
14671 Reorganise return values, add macro to check for fatal errors.
14673 * gst/gstqueue.c: (gst_queue_chain):
14674 Return proper GstFlowReturn values,
14676 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
14678 * docs/gst/gstreamer-sections.txt:
14679 * docs/gst/gstreamer.types:
14680 * docs/gst/tmpl/gst.sgml:
14681 * docs/gst/tmpl/gstbasesink.sgml:
14682 * docs/gst/tmpl/gstbasesrc.sgml:
14683 * docs/gst/tmpl/gstbasetransform.sgml:
14684 * docs/gst/tmpl/gstbin.sgml:
14685 * docs/gst/tmpl/gstbuffer.sgml:
14686 * docs/gst/tmpl/gstcaps.sgml:
14687 * docs/gst/tmpl/gstclock.sgml:
14688 * docs/gst/tmpl/gstcompat.sgml:
14689 * docs/gst/tmpl/gstconfig.sgml:
14690 * docs/gst/tmpl/gstelement.sgml:
14691 * docs/gst/tmpl/gstelementdetails.sgml:
14692 * docs/gst/tmpl/gstelementfactory.sgml:
14693 * docs/gst/tmpl/gstenumtypes.sgml:
14694 * docs/gst/tmpl/gsterror.sgml:
14695 * docs/gst/tmpl/gstevent.sgml:
14696 * docs/gst/tmpl/gstfakesink.sgml:
14697 * docs/gst/tmpl/gstfakesrc.sgml:
14698 * docs/gst/tmpl/gstfilesink.sgml:
14699 * docs/gst/tmpl/gstfilesrc.sgml:
14700 * docs/gst/tmpl/gstfilter.sgml:
14701 * docs/gst/tmpl/gstformat.sgml:
14702 * docs/gst/tmpl/gstghostpad.sgml:
14703 * docs/gst/tmpl/gstimplementsinterface.sgml:
14704 * docs/gst/tmpl/gstindex.sgml:
14705 * docs/gst/tmpl/gstindexfactory.sgml:
14706 * docs/gst/tmpl/gstinfo.sgml:
14707 * docs/gst/tmpl/gstiterator.sgml:
14708 * docs/gst/tmpl/gstmacros.sgml:
14709 * docs/gst/tmpl/gstmemchunk.sgml:
14710 * docs/gst/tmpl/gstminiobject.sgml:
14711 * docs/gst/tmpl/gstobject.sgml:
14712 * docs/gst/tmpl/gstpad.sgml:
14713 * docs/gst/tmpl/gstpadtemplate.sgml:
14714 * docs/gst/tmpl/gstparse.sgml:
14715 * docs/gst/tmpl/gstpipeline.sgml:
14716 * docs/gst/tmpl/gstplugin.sgml:
14717 * docs/gst/tmpl/gstpluginfeature.sgml:
14718 * docs/gst/tmpl/gstquery.sgml:
14719 * docs/gst/tmpl/gstqueue.sgml:
14720 * docs/gst/tmpl/gstregistry.sgml:
14721 * docs/gst/tmpl/gstregistrypool.sgml:
14722 * docs/gst/tmpl/gstscheduler.sgml:
14723 * docs/gst/tmpl/gstschedulerfactory.sgml:
14724 * docs/gst/tmpl/gststructure.sgml:
14725 * docs/gst/tmpl/gstsystemclock.sgml:
14726 * docs/gst/tmpl/gsttaglist.sgml:
14727 * docs/gst/tmpl/gsttagsetter.sgml:
14728 * docs/gst/tmpl/gsttrace.sgml:
14729 * docs/gst/tmpl/gsttrashstack.sgml:
14730 * docs/gst/tmpl/gsttypefind.sgml:
14731 * docs/gst/tmpl/gsttypefindfactory.sgml:
14732 * docs/gst/tmpl/gsttypes.sgml:
14733 * docs/gst/tmpl/gsturihandler.sgml:
14734 * docs/gst/tmpl/gsturitype.sgml:
14735 * docs/gst/tmpl/gstutils.sgml:
14736 * docs/gst/tmpl/gstvalue.sgml:
14737 * docs/gst/tmpl/gstversion.sgml:
14738 * docs/gst/tmpl/gstxml.sgml:
14739 * docs/libs/tmpl/gstcontrol.sgml:
14740 * docs/libs/tmpl/gstdataprotocol.sgml:
14741 * docs/libs/tmpl/gstdparam.sgml:
14742 * docs/libs/tmpl/gstdplinint.sgml:
14743 * docs/libs/tmpl/gstdpman.sgml:
14744 * docs/libs/tmpl/gstdpsmooth.sgml:
14745 * docs/libs/tmpl/gstgetbits.sgml:
14746 * docs/libs/tmpl/gstunitconvert.sgml:
14747 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
14748 (gst_push_src_base_init), (gst_push_src_class_init),
14749 (gst_push_src_init), (gst_push_src_create):
14750 * gst/base/gstpushsrc.h:
14751 * gst/elements/gstelements.c:
14752 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
14753 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
14754 (gst_fake_sink_init), (gst_fake_sink_set_property),
14755 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
14756 (gst_fake_sink_event), (gst_fake_sink_preroll),
14757 (gst_fake_sink_render), (gst_fake_sink_change_state):
14758 * gst/elements/gstfakesink.h:
14759 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
14760 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
14761 (gst_fake_src_base_init), (gst_fake_src_class_init),
14762 (gst_fake_src_init), (gst_fake_src_event_handler),
14763 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
14764 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
14765 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
14766 (gst_fake_src_create_buffer), (gst_fake_src_create),
14767 (gst_fake_src_start), (gst_fake_src_stop):
14768 * gst/elements/gstfakesrc.h:
14769 * gst/elements/gstfilesink.c: (_do_init),
14770 (gst_file_sink_base_init), (gst_file_sink_class_init),
14771 (gst_file_sink_init), (gst_file_sink_dispose),
14772 (gst_file_sink_set_location), (gst_file_sink_set_property),
14773 (gst_file_sink_get_property), (gst_file_sink_open_file),
14774 (gst_file_sink_close_file), (gst_file_sink_query),
14775 (gst_file_sink_event), (gst_file_sink_render),
14776 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
14777 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
14778 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
14779 * gst/elements/gstfilesink.h:
14780 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
14781 (gst_file_src_class_init), (gst_file_src_init),
14782 (gst_file_src_finalize), (gst_file_src_set_location),
14783 (gst_file_src_set_property), (gst_file_src_get_property),
14784 (gst_file_src_map_region), (gst_file_src_map_small_region),
14785 (gst_file_src_create_mmap), (gst_file_src_create_read),
14786 (gst_file_src_create), (gst_file_src_is_seekable),
14787 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
14788 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
14789 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
14790 (gst_file_src_uri_handler_init):
14791 * gst/elements/gstfilesrc.h:
14792 more autistic cleanliness in functions/names/defines
14794 2005-07-13 Andy Wingo <wingo@pobox.com>
14796 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
14797 source couldn't negotiate.
14799 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
14803 * gst/gstutils.c (gst_element_link_pads_filtered): New old
14804 function. I am channeling Hades. Put your boots on suckers!!!
14806 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
14808 * testsuite/caps/Makefile.am:
14809 * testsuite/caps/value_compare.c:
14810 * testsuite/caps/value_intersect.c:
14811 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
14812 move two testsuite apps over to the check dir
14814 2005-07-12 Wim Taymans <wim@fluendo.com>
14816 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
14817 Added more debug info in the negotiate process.
14819 * gst/gstmessage.h:
14820 Prepare for segment playback.
14822 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
14828 * tools/gst-launch.c: (main):
14829 NULL pipeline on errors.
14831 2005-07-12 Andy Wingo <wingo@pobox.com>
14833 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
14834 not it comes from a malloc region. Make sure our copy gets freed.
14836 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14838 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
14839 * check/gst/gstmessage.c: (GST_START_TEST):
14840 * check/gst/gststructure.c: (GST_START_TEST),
14841 (gst_structure_suite), (main):
14843 * gst/gstelement.c: (gst_element_message_full):
14844 clean up GError and debug string now that they get copied
14845 * gst/gstmessage.c: (gst_message_new_error),
14846 (gst_message_new_warning), (gst_message_parse_error),
14847 (gst_message_parse_warning):
14848 use GST_TYPE_G_ERROR for structure_new, and take copies of
14849 arguments, so that we don't mess up refcounting
14851 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14853 * check/Makefile.am:
14854 add per-test valgrind targets
14855 * check/gst-libs/gdp.c: (GST_START_TEST),
14856 (gst_data_protocol_suite), (main):
14859 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14861 * check/Makefile.am:
14862 instate more valgrindable tests
14863 * check/elements/gstfakesrc.c: (chain_func), (event_func),
14864 (GST_START_TEST), (fakesrc_suite):
14865 * check/gst/gstpad.c: (GST_START_TEST):
14866 * check/gst/gststructure.c: (GST_START_TEST):
14868 * docs/gst/tmpl/gstminiobject.sgml:
14869 * gst/gstpad.c: (gst_pad_finalize):
14870 fix the static mutex leak
14872 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14874 * check/Makefile.am:
14875 add two more tests for valgrinding
14876 * check/gst/gstvalue.c: (GST_START_TEST):
14877 test refcount of deserialized buffer, found a leak
14878 * docs/gst/gstreamer-docs.sgml:
14879 * docs/gst/gstreamer-sections.txt:
14880 * docs/gst/gstreamer.types:
14881 * docs/gst/tmpl/gstminiobject.sgml:
14882 add miniobject to docs
14883 * gst/gstminiobject.c:
14885 * gst/gstvalue.c: (gst_value_deserialize_buffer),
14886 (gst_string_unwrap):
14887 fix a hard-to-find invalid write for one of the tests
14888 fix a leak for deserialized buffers
14890 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14892 * docs/pwg/advanced-events.xml:
14893 * docs/pwg/advanced-request.xml:
14894 * docs/pwg/advanced-scheduling.xml:
14895 * docs/pwg/appendix-porting.xml:
14896 * docs/pwg/building-boiler.xml:
14897 * docs/pwg/intro-preface.xml:
14898 * docs/pwg/other-ntoone.xml:
14899 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
14900 of example code and explanation for pad activation, loop() and
14901 getrange() functions and a bit more. Remove old comments pointing
14903 * examples/pwg/Makefile.am:
14904 Add loop/getrange examples.
14906 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14909 check for valgrind binary + some fixes
14911 valgrind suppressions for the tests
14912 * check/Makefile.am:
14913 add a valgrind: target that valgrinds the unit tests
14914 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
14915 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
14916 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
14917 * check/gst/gstghostpad.c:
14919 * check/gst/gstdata.c:
14921 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
14922 (thread_unref), (gst_mini_object_suite), (main):
14924 * gst/gst.c: (gst_deinit):
14926 add a method to clean up.
14927 * gst/gstsystemclock.c: (gst_system_clock_dispose),
14928 (gst_system_clock_obtain):
14929 allow for disposing the system clock.
14930 * tools/gst-launch.c: (main):
14933 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14935 * docs/gst/tmpl/gstbasesrc.sgml:
14936 * docs/gst/tmpl/gstfakesrc.sgml:
14937 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14938 (gst_base_src_init), (gst_base_src_set_property),
14939 (gst_base_src_get_property), (gst_base_src_get_range),
14940 (gst_base_src_start):
14941 * gst/base/gstbasesrc.h:
14942 add num-buffers property
14943 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14944 (gst_fakesrc_init), (gst_fakesrc_set_property),
14945 (gst_fakesrc_get_property), (gst_fakesrc_create),
14946 (gst_fakesrc_start):
14947 remove num-buffers property
14949 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14951 * docs/gst/gstreamer-sections.txt:
14952 * docs/gst/tmpl/gstbasesink.sgml:
14953 * docs/gst/tmpl/gstbasesrc.sgml:
14954 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
14955 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
14956 (gst_base_sink_finalize), (gst_base_sink_set_clock),
14957 (gst_base_sink_set_property), (gst_base_sink_get_property),
14958 (gst_base_sink_handle_object), (gst_base_sink_event),
14959 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
14960 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
14961 (gst_base_sink_loop), (gst_base_sink_deactivate),
14962 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
14963 (gst_base_sink_change_state):
14964 * gst/base/gstbasesink.h:
14965 * gst/base/gstbasesrc.h:
14966 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
14967 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
14968 (gst_filesink_init):
14969 more macro splitting
14971 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14973 * gst/gstelement.c: (gst_element_get_bus):
14975 * tools/gst-launch.c: (check_intr), (event_loop):
14978 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14980 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
14983 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14985 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14986 (gst_base_src_finalize):
14987 add finalize method and clean up properly
14988 * gst/gstpipeline.c: (gst_pipeline_dispose):
14991 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
14993 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
14995 add more things to check
14996 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
14997 * gst/gstelement.c:
15000 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
15002 * check/elements/gstfakesrc.c: (chain_func), (event_func),
15003 (GST_START_TEST), (fakesrc_suite):
15004 * check/gst-libs/gdp.c: (GST_START_TEST):
15005 * check/gst/gst.c: (GST_START_TEST):
15006 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
15007 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
15008 * check/gst/gstbus.c: (GST_START_TEST):
15009 * check/gst/gstcaps.c: (GST_START_TEST):
15010 * check/gst/gstdata.c: (GST_START_TEST):
15011 * check/gst/gstelement.c: (GST_START_TEST):
15012 * check/gst/gstghostpad.c: (GST_START_TEST):
15013 * check/gst/gstiterator.c: (GST_START_TEST):
15014 * check/gst/gstmessage.c: (GST_START_TEST):
15015 * check/gst/gstobject.c: (GST_START_TEST):
15016 * check/gst/gstpad.c: (GST_START_TEST):
15017 * check/gst/gststructure.c: (GST_START_TEST):
15018 * check/gst/gstsystemclock.c: (GST_START_TEST),
15019 (gst_systemclock_suite):
15020 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
15021 * check/gst/gstvalue.c: (GST_START_TEST):
15022 * check/pipelines/cleanup.c: (GST_START_TEST):
15023 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
15024 * check/states/sinks.c: (GST_START_TEST):
15025 * check/gstcheck.c: (gst_check_init):
15026 * check/gstcheck.h:
15027 add debugging category
15028 use GST_START_TEST now, so we add a debug line
15030 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
15032 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
15033 add test for state change message on a bin
15034 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
15036 * gst/gstbin.c: (gst_bin_init):
15037 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
15038 * gst/gstelement.c: (gst_element_post_message),
15039 (gst_element_set_state):
15040 * gst/gstelementfactory.c: (gst_element_factory_create):
15041 * gst/gstmessage.c: (gst_message_new):
15042 * gst/gstscheduler.c:
15043 various debugging additions and cleanups
15045 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
15047 * check/Makefile.am:
15048 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
15050 adding tests for elements
15051 * gst/gstelement.c: (gst_element_dispose):
15053 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
15055 * gst/registries/gstlibxmlregistry.c: (load_feature):
15056 plug more leaks. A simple gst_init() now is leakfree, yay.
15058 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
15060 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
15061 (gst_xml_registry_load):
15062 plug another memleak
15064 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
15067 use GST_SET_ERROR_CFLAGS
15068 * docs/faq/cvs.xml:
15069 change to ERROR_CFLAGS
15071 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
15074 make GST_ERROR_CFLAGS overridable and re-enable Werror
15075 * docs/faq/cvs.xml:
15076 add a note about error CFLAGS
15077 * docs/gst/tmpl/gstfakesrc.sgml:
15078 * gst/elements/gstfakesrc.c:
15079 comment out some unused code
15080 * gst/gst.c: (split_and_iterate):
15081 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
15085 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
15087 * common/Makefile.am:
15088 * common/gtk-doc.mak:
15089 * docs/gst/Makefile.am:
15090 factor out gtk-doc.mak
15092 2005-07-07 Wim Taymans <wim@fluendo.com>
15094 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
15095 (gst_thread_scheduler_dispose):
15096 Unlock the STREAM_LOCK completely.
15098 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
15100 * check/Makefile.am:
15101 * check/elements/.cvsignore:
15102 * check/elements/gstfakesrc.c: (chain_func), (event_func),
15103 (START_TEST), (fakesrc_suite), (main):
15104 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
15105 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
15106 (gst_fakesrc_create), (gst_fakesrc_start):
15107 * gst/elements/gstfakesrc.h:
15108 adding a first element test
15110 2005-07-07 Andy Wingo <wingo@pobox.com>
15112 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
15115 2005-07-07 Wim Taymans <wim@fluendo.com>
15121 2005-07-07 Wim Taymans <wim@fluendo.com>
15123 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
15124 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
15125 Allow subclasses to implement their own negotiation.
15127 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
15129 * docs/design/part-gstbin.txt:
15130 * docs/design/part-gstpipeline.txt:
15131 Update design notes to reflect the movement of
15132 responsibility for bus handling from GstPipeline to
15135 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
15138 Remove unnecessary queue2/3/4 examples.
15140 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
15142 * examples/Makefile.am:
15143 * examples/helloworld/helloworld.c: (event_loop), (main):
15144 * examples/queue/queue.c: (event_loop), (main):
15145 * examples/queue2/queue2.c: (main):
15146 Update a couple of the examples to work again.
15148 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
15149 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
15150 Spelling corrections and extra debug.
15152 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
15153 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
15154 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
15156 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
15157 (gst_pipeline_change_state):
15158 * gst/gstpipeline.h:
15159 Move the bus handler for children to the GstBin, and create a
15160 separate bus for receiving messages from children to the one the
15161 bus sends 'upwards' on.
15163 2005-07-06 Wim Taymans <wim@fluendo.com>
15166 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
15167 (gst_base_sink_handle_object), (gst_base_sink_loop),
15168 (gst_base_sink_change_state):
15169 * gst/base/gstbasesink.h:
15170 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
15171 (gst_base_src_init), (gst_base_src_setcaps),
15172 (gst_base_src_getcaps), (gst_base_src_loop),
15173 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
15174 (gst_base_src_start), (gst_base_src_change_state):
15175 * gst/base/gstbasesrc.h:
15176 Make basesrc negotiate.
15177 Handle the case where preroll fails in basesink.
15180 2005-07-06 Wim Taymans <wim@fluendo.com>
15182 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
15183 Implement the fixate function.
15184 Clean up acceptcaps.
15186 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15188 * docs/pwg/building-filterfactory.xml:
15189 * docs/pwg/pwg.xml:
15190 Remove never-written filter-factory chapter; I'll add the various
15191 base classes to part 4 ("other element types") later on.
15193 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15195 * docs/pwg/advanced-negotiation.xml:
15196 * docs/pwg/building-boiler.xml:
15197 * docs/pwg/building-pads.xml:
15198 * docs/pwg/pwg.xml:
15199 * examples/pwg/Makefile.am:
15200 Add a chapter on caps negotiation, simplify the original code
15201 samples a bit w.r.t. caps negotiation, add link to the advanced
15202 section. Add a bunch of examples showing different use cases of
15203 different types of caps negotiation. Upstream renegotiation isn't
15204 fully documented yet since nobody knows how that works.
15206 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
15208 * check/gst/gstpad.c:
15209 * check/gstcheck.c:
15210 * gst/gstpad.c: (gst_pad_get_internal_links_default):
15211 if pad has no parent, return NULL as list of internal links
15213 2005-07-05 Andy Wingo <wingo@pobox.com>
15215 * gst/elements/gstfilesrc.c:
15216 * gst/elements/gstfakesrc.c:
15217 * gst/base/gstpushsrc.c:
15218 * gst/base/gstbasesrc.h:
15219 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
15221 2005-07-05 Stefan Kost <ensonic@users.sf.net>
15224 better report generation target (lcov needs a patch)
15226 2005-07-05 Andy Wingo <wingo@pobox.com>
15228 * gst/elements, testsuite: Null if we got it...
15230 2005-07-05 Wim Taymans <wim@fluendo.com>
15233 * libs/gst/dataprotocol/Makefile.am:
15234 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
15235 * libs/gst/dataprotocol/dataprotocol.h:
15236 * pkgconfig/Makefile.am:
15237 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
15238 * pkgconfig/gstreamer-dataprotocol.pc.in:
15239 Ported dataprotol to 0.9.
15240 Added pkgconfig files.
15242 2005-07-05 Andy Wingo <wingo@pobox.com>
15244 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
15245 Default to returning TRUE for the case when tranform_caps returns
15246 a fixed caps, like for identity or volume.
15248 * check/gst/gstbus.c (pound_bus_with_messages):
15249 * check/gst/gstmessage.c (START_TEST):
15250 * check/pipelines/simple_launch_lines.c (got_handoff): Application
15251 message API change.
15253 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
15254 logic weaks here: always run transform_caps, trying passthrough
15255 operation only if the original caps intersects with the transform.
15257 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
15258 source and sink caps.
15260 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
15261 Intersect the peer caps with the pad template before going into
15263 (gst_base_transform_transform_caps): More debugging.
15265 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
15268 2005-07-04 Edward Hervey <edward@fluendo.com>
15272 (gst_pad_add_*_probe): now returns the signal id for better wrapping
15275 2005-07-04 Andy Wingo <wingo@pobox.com>
15277 * check/gst/gstpad.c: Only set explicit caps on pads.
15279 2005-07-01 Andy Wingo <wingo@pobox.com>
15281 * tests/network-clock.scm: Commentary update.
15283 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
15284 Didn't really make sense, not implementable with basetransform,
15286 (gst_identity_transform): Unref inbuf via make_writable. Feeble
15287 attempt at implementing the sync property, needs an unlock method.
15289 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
15290 New func, by default returns the same caps (the identity
15292 (gst_base_transform_getcaps): Uses transform_caps to return
15293 something sensible.
15294 (gst_base_transform_setcaps): Complicated logic to get caps on
15295 both pads, even if they are different, and to call set_caps once
15296 for every time both pads get their caps set.
15297 (gst_base_transform_handle_buffer): Give the ref to the transform
15298 function. Allows in-place modification of the buffer.
15300 * gst/base/gstbasetransform.h (transform_caps): New class method.
15301 Given caps on one side, what can I do on the other.
15302 (set_caps): Take two caps, one for each side of the element.
15305 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
15306 caps in place. This is safe because we can check the mutability of
15307 the caps, and a good idea because fixate functions are just called
15308 as a matter of last resort. (Not actually implemented.)
15309 (gst_pad_set_caps): If the caps we're setting is actually the same
15310 as the existing pad caps, just update the pointer without calling
15311 setcaps. Assert that caps is either NULL or fixed, as per the
15314 * gst/gstghostpad.c: Update for fixate changes.
15316 2005-07-02 Andy Wingo <wingo@pobox.com>
15319 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
15320 two refcounts makes it immutable, which is enough. Doc more.
15322 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
15324 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
15325 Put the mini_object into GValue as a mini_object,
15326 not a gpointer, since that's how we declared
15329 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15331 * examples/pwg/Makefile.am:
15332 Fix buildbot again.
15334 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15336 * docs/pwg/building-testapp.xml:
15338 * examples/pwg/Makefile.am:
15341 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15344 * examples/Makefile.am:
15345 * examples/pwg/Makefile.am:
15346 * examples/pwg/extract.pl:
15347 Enable building the PWG examples.
15348 * docs/pwg/advanced-interfaces.xml:
15349 Add URI interface stub.
15350 * docs/pwg/advanced-types.xml:
15351 * docs/pwg/other-autoplugger.xml:
15352 * docs/pwg/appendix-porting.xml:
15353 * docs/pwg/pwg.xml:
15354 Add porting guide (mostly stubs), remove autoplugging (see ADM).
15355 * docs/pwg/building-boiler.xml:
15356 * docs/pwg/building-chainfn.xml:
15357 * docs/pwg/building-pads.xml:
15358 * docs/pwg/building-props.xml:
15359 * docs/pwg/building-state.xml:
15360 * docs/pwg/building-testapp.xml:
15361 Update the building-*.xml parts for 0.9 changes. All examples
15362 code blocks compile in examples/pwg/*.
15364 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15366 * docs/manual/advanced-autoplugging.xml:
15367 * docs/manual/appendix-checklist.xml:
15368 * docs/manual/appendix-integration.xml:
15369 * docs/manual/highlevel-components.xml:
15370 Fix playbin/decodebin examples, update docs a bit, mention bus
15371 instead of signals in various places, mention kmplayer and
15372 kaffeine since they have a working GStreamer backend in the KDE
15375 2005-06-30 Wim Taymans <wim@fluendo.com>
15378 * docs/design/draft-ghostpads.txt:
15379 * docs/design/draft-push-pull.txt:
15380 * docs/design/draft-query.txt:
15381 * docs/design/part-TODO.txt:
15382 * docs/design/part-query.txt:
15383 Added CHANGES-0.9 doc, updated status of other docs.
15388 2005-06-30 Wim Taymans <wim@fluendo.com>
15390 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
15391 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
15392 (gst_base_sink_change_state):
15393 * gst/base/gstbasesink.h:
15394 Some tweaks, only EOS and a buffer complete a preroll.
15396 2005-06-30 Andy Wingo <wingo@pobox.com>
15398 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
15399 activate_push down to the internal pad as well.
15401 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
15403 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15405 * gst/gsttaginterface.c:
15406 Some documentation fixes (#307394 and #307397).
15408 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
15410 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15412 * gst/gstvalue.c: (gst_value_intersect_list):
15413 Fix memleak (#309125).
15415 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15417 * docs/manual/advanced-dataaccess.xml:
15418 Fix fakesrc example to compile; doesn't work, bug somewhere...?
15419 * docs/manual/basics-pads.xml:
15420 Add reference for filtered caps to above chapter.
15422 2005-06-30 Wim Taymans <wim@fluendo.com>
15424 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
15425 (gst_bin_change_state):
15427 Lame attempt at making the state change function a bit
15430 2005-06-30 Wim Taymans <wim@fluendo.com>
15432 * docs/design/part-clocks.txt:
15433 * docs/design/part-element-sink.txt:
15434 * docs/design/part-events.txt:
15435 * docs/design/part-preroll.txt:
15436 * docs/design/part-states.txt:
15437 Some more tweeks and additions to the docs.
15439 2005-06-30 Wim Taymans <wim@fluendo.com>
15441 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15442 (default_have_data), (gst_pad_class_init), (gst_pad_init),
15443 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
15444 (gst_pad_check_pull_range), (gst_pad_get_range),
15445 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
15447 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
15448 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
15449 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
15450 (gst_pad_remove_buffer_probe):
15451 Removed atomic operations, use existing LOCK.
15452 Move exception handling out of main code path.
15454 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15456 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15457 (silly_return_true_function), (gst_pad_class_init),
15458 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
15459 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
15460 (gst_pad_send_event):
15461 Fix accumulator, add default value by using _emitv() instead
15462 of _emit() for signal emission.
15464 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15466 * docs/manual/advanced-dataaccess.xml:
15467 * examples/manual/Makefile.am:
15469 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
15472 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
15474 * gst/elements/gstfilesink.c: (gst_filesink_render):
15475 Simplify code so that we don't have to handle short
15476 writes and return GST_FLOW_ERROR if an error occured.
15478 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15480 * docs/gst/gstreamer-docs.sgml:
15481 Remove probes more.
15483 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15485 * docs/gst/gstreamer-sections.txt:
15486 * docs/gst/tmpl/gstpad.sgml:
15487 * docs/gst/tmpl/gstprobe.sgml:
15489 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15490 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
15491 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
15492 (gst_pad_push_event), (gst_pad_send_event):
15494 * gst/gstutils.c: (gst_pad_add_data_probe),
15495 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
15496 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
15497 (gst_pad_remove_buffer_probe):
15499 Remove old probes, add new g-signal-based probes and some utility
15502 2005-06-29 Edward Hervey <edward@fluendo.com>
15504 * gst/gstelementfactory.c:
15507 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
15508 the definition to the header file.
15510 2005-06-29 Andy Wingo <wingo@pobox.com>
15512 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
15513 plugins from the source directory.
15515 2005-06-29 Wim Taymans <wim@fluendo.com>
15517 * docs/gst/tmpl/gstbuffer.sgml:
15518 * docs/gst/tmpl/gstclock.sgml:
15519 Some fixings for blantently wrong text.
15521 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
15523 * check/Makefile.am:
15524 * gst/gst.c: (add_path_func), (init_pre):
15525 * gst/gstregistry.c: (gst_registry_add_path):
15526 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
15527 only scan the GST_PLUGIN_PATH locations, and not add
15530 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
15532 * docs/gst/gstreamer-sections.txt:
15533 * docs/gst/tmpl/gstbasesrc.sgml:
15534 * gst/gstelement.c:
15535 * gst/gstelement.h:
15540 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15542 * docs/manual/advanced-autoplugging.xml:
15543 Fix autoplugging example.
15545 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15547 * docs/manual/advanced-autoplugging.xml:
15548 * docs/manual/mime-world.fig:
15549 Try to get autoplugging working, fix type detection. Fix text
15550 in hello-world image.
15552 2005-06-29 Wim Taymans <wim@fluendo.com>
15554 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
15555 (gst_base_sink_change_state):
15559 map SIGNAL and BROADCAST to the right function.
15562 Remove redundant braces.
15564 * gst/gstpad.c: (gst_pad_set_caps):
15565 Don't call setcaps function when reseting caps to NULL.
15567 * gst/gstsystemclock.c: (gst_system_clock_dispose),
15568 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
15569 (gst_system_clock_id_unschedule):
15570 Use BROADCAST as this is what we do.
15572 2005-06-29 Wim Taymans <wim@fluendo.com>
15574 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
15575 We are actually prerolling before commiting the state
15578 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15580 * docs/manual/advanced-clocks.xml:
15581 * docs/manual/advanced-interfaces.xml:
15582 * docs/manual/advanced-metadata.xml:
15583 * docs/manual/advanced-position.xml:
15584 * docs/manual/advanced-schedulers.xml:
15585 * docs/manual/advanced-threads.xml:
15586 * docs/manual/appendix-porting.xml:
15587 * docs/manual/basics-bins.xml:
15588 * docs/manual/basics-bus.xml:
15589 * docs/manual/basics-elements.xml:
15590 * docs/manual/basics-helloworld.xml:
15591 * docs/manual/basics-pads.xml:
15592 * docs/manual/highlevel-components.xml:
15593 * docs/manual/manual.xml:
15594 * docs/manual/thread.fig:
15595 Update (until threads/scheduling) Application Development Manual;
15596 remove GstThread, add GstBus, add simple porting checklist, add
15597 documentation for tag writing, clocks, make all examples until this
15598 part compile and run.
15599 * examples/manual/Makefile.am:
15600 Update from changes to Application Development Manual; add bus
15601 example, remove thread example.
15603 2005-06-28 Wim Taymans <wim@fluendo.com>
15605 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
15606 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
15607 (gst_bus_source_dispatch):
15608 Add debugging messages.
15609 Make internal methods static.
15610 Handle the case where the bus is flushed in the handler.
15612 * gst/gstelement.c: (gst_element_get_bus):
15613 Fix refcount in _get_bus();
15615 * gst/gstpipeline.c: (gst_pipeline_change_state),
15616 (gst_pipeline_get_clock_func):
15617 Clock refcounting fixes.
15618 Handle the case where preroll timed out more gracefully.
15620 * gst/gstsystemclock.c: (gst_system_clock_dispose):
15621 Clean up the internal thread in dispose. This is needed
15622 for subclasses that actually get disposed.
15624 * gst/schedulers/threadscheduler.c:
15625 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
15626 (gst_thread_scheduler_dispose):
15627 Free thread pool in dispose.
15629 2005-06-28 Andy Wingo <wingo@pobox.com>
15631 * tests/network-clock-utils.scm (debug, print-event): New utils.
15633 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
15634 (*packet-loss*): Unified loss probability.
15635 (network-time): Report out-of-band events.
15637 * tests/plot-data: Add support for out-of-band events. Hack it
15638 into this script instead of passing it down the pipe; should fix
15641 2005-06-28 Wim Taymans <wim@fluendo.com>
15643 * docs/gst/gstreamer.types:
15644 * docs/gst/tmpl/gstbasesrc.sgml:
15645 * docs/gst/tmpl/gstpad.sgml:
15648 2005-06-28 Wim Taymans <wim@fluendo.com>
15650 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15651 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
15652 (gst_proxy_pad_do_fixatecaps):
15653 Correctly proxy the check_pull_range function.
15655 2005-06-28 Andy Wingo <wingo@pobox.com>
15657 * tests/network-clock.scm: Removed need for slib.
15659 2005-06-28 Wim Taymans <wim@fluendo.com>
15661 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
15662 (gst_basesink_preroll_queue_flush):
15663 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
15664 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
15665 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15666 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
15667 (gst_proxy_pad_set_property):
15670 * gst/gstqueue.c: (gst_queue_init):
15671 The deprecated pad loop function is removed now.
15673 2005-06-28 Andy Wingo <wingo@pobox.com>
15675 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
15676 New parameters, simulate network packet loss.
15678 * tests/network-clock-utils.scm: Initialize the RNG.
15680 2005-06-28 Wim Taymans <wim@fluendo.com>
15682 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
15683 (gst_basesink_event), (gst_basesink_deactivate):
15684 Flushing the preroll queue always needs to unlock the waiters.
15686 2005-06-28 Edward Hervey <edward@fluendo.com>
15688 * gst/gstpipeline.c: (gst_pipeline_send_event):
15689 Wheen a seek was successful on a pipeline, set the stream_time to the
15690 seek offset in order to have a synchronized stream_time.
15692 2005-06-28 Wim Taymans <wim@fluendo.com>
15694 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15695 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
15696 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
15697 (gst_proxy_pad_do_fixatecaps):
15698 Call wrapper function instead of just calling the function
15699 pointers. This takes care of any locking and whatmore.
15701 2005-06-28 Wim Taymans <wim@fluendo.com>
15703 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
15704 (gst_pad_pull_range):
15706 CONNECTED -> LINKED.
15708 2005-06-28 Andy Wingo <wingo@pobox.com>
15710 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
15711 source-munging commit!!!
15713 * gst/gstobject.c (gst_object_unref, gst_object_ref)
15714 (gst_object_sink): Take gpointer arguments, not GstObject --
15715 avoids casts. Like GLib.
15717 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
15720 2005-06-27 Andy Wingo <wingo@pobox.com>
15722 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
15725 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
15726 returns a sorted copy of the trace list.
15727 (gst_alloc_trace_print_live): New API, only prints traces with
15728 live objects. Sort the list.
15729 (gst_alloc_trace_print_all): Sort the list.
15730 (gst_alloc_trace_print): Align columns.
15732 * gst/elements/gstttypefindelement.c:
15733 * gst/elements/gsttee.c:
15734 * gst/base/gstbasesrc.c:
15735 * gst/base/gstbasesink.c:
15736 * gst/base/gstbasetransform.c:
15737 * gst/gstqueue.c: Adapt for pad activation changes.
15739 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
15741 (gst_pipeline_dispose): Drop ref on sched.
15743 * gst/gstpad.c (gst_pad_init): Set the default activate func.
15744 (gst_pad_activate_default): Push mode by default.
15745 (pre_activate_switch, post_activate_switch): New stubs, things to
15746 do before and after switching activation modes on pads.
15747 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
15748 the pad's activate function to choose which mode to activate.
15749 Shortcut on deactivation and call the right function directly.
15750 (gst_pad_activate_pull): New API, (de)activates a pad in pull
15752 (gst_pad_activate_push): New API, same for push mode.
15753 (gst_pad_set_activate_function)
15754 (gst_pad_set_activatepull_function)
15755 (gst_pad_set_activatepush_function): Setters for new API.
15757 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
15758 Trace all miniobjects.
15759 (gst_mini_object_make_writable): Unref the arg if we copy, like
15760 gst_caps_make_writable.
15762 * gst/gstmessage.c (_gst_message_initialize): No trace init.
15764 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
15765 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
15766 Adapt for new pad API.
15768 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
15770 * gst/gstelement.h:
15771 * gst/gstelement.c (gst_element_iterate_src_pads)
15772 (gst_element_iterate_sink_pads): New API functions.
15774 * gst/gstelement.c (iterator_fold_with_resync): New utility,
15775 should fold into gstiterator.c in some form.
15776 (gst_element_pads_activate): Simplified via use of fold and
15777 delegation of decisions to gstpad->activate.
15779 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
15782 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
15783 class once in init, like gstmessage. Didn't run into this issue
15784 but it seems correct. Don't initialize a trace, gstminiobject does
15787 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
15788 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
15790 (assert_live_count): New util function, uses alloc traces to check
15793 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
15794 To be modified when unlink drops the internal pad.
15796 2005-06-27 Wim Taymans <wim@fluendo.com>
15798 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
15799 (gst_bin_change_state):
15800 Cleanup the get_state() function a little, make sure it
15801 iterates the same set of elements.
15802 Added stub iterate_state_order().
15804 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
15806 * docs/gst/gstreamer-docs.sgml:
15807 * docs/gst/gstreamer-sections.txt:
15808 * docs/gst/gstreamer.types:
15809 * docs/gst/tmpl/gstbasesink.sgml:
15810 * docs/gst/tmpl/gstbasesrc.sgml:
15811 * docs/gst/tmpl/gstbasetransform.sgml:
15812 * docs/gst/tmpl/gstelement.sgml:
15813 * docs/gst/tmpl/gstiterator.sgml:
15814 * gst/base/gstbasesrc.c:
15815 * gst/base/gstbasesrc.h:
15816 * gst/base/gstbasetransform.h:
15817 * gst/gstelement.c:
15818 * gst/gstiterator.h:
15819 adding basetransform and iterator docs
15821 2005-06-27 Andy Wingo <wingo@pobox.com>
15823 * docs/design/part-activation.txt: Notes on how activation should
15824 work -- not quite implemented yet.
15826 2005-06-25 Wim Taymans <wim@fluendo.com>
15828 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
15829 At least get the chain function correct, needs more
15832 2005-06-25 Wim Taymans <wim@fluendo.com>
15834 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15835 (gst_basesink_handle_object), (gst_basesink_event),
15836 (gst_basesink_do_sync), (gst_basesink_handle_event),
15837 (gst_basesink_change_state):
15839 Right, two problems here: ghostpads don't take locks and
15840 glib _rec_mutex_lock_full() with depth==0 still locks.
15841 Catch illegal locking and g_warn them.
15843 2005-06-25 Wim Taymans <wim@fluendo.com>
15845 * check/states/sinks.c: (START_TEST), (gst_object_suite):
15846 Have to check for completion now...
15848 2005-06-25 Wim Taymans <wim@fluendo.com>
15850 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15851 (gst_basesink_handle_object), (gst_basesink_event),
15852 (gst_basesink_do_sync), (gst_basesink_handle_event),
15853 (gst_basesink_change_state):
15855 Unlock STREAM_LOCK whatever the recursion was.
15857 2005-06-25 Wim Taymans <wim@fluendo.com>
15859 * gst/base/gstbasesink.c: (gst_basesink_set_property),
15860 (gst_basesink_preroll_queue_empty),
15861 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
15862 (gst_basesink_event), (gst_basesink_do_sync),
15863 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
15864 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
15865 (gst_basesink_change_state):
15866 Reworked the base sink, handle event and buffer serialisation
15867 correctly and removed possible deadlock.
15868 Handle EOS correctly.
15870 2005-06-25 Wim Taymans <wim@fluendo.com>
15872 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
15873 (gst_pipeline_change_state):
15874 * tools/gst-launch.c: (check_intr), (event_loop), (main):
15875 Allow elements to post EOS in the state change function.
15876 Fix up -launch, make it exit the poll loop when the
15877 pipeline actually changed state.
15878 Fix up warning parsing in -launch.
15880 2005-06-25 Wim Taymans <wim@fluendo.com>
15882 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
15883 (gst_tee_sink_activate):
15884 Core takes STREAM_LOCK for us now.
15886 2005-06-25 Wim Taymans <wim@fluendo.com>
15888 * gst/gstelement.c: (gst_element_get_state_func),
15889 (gst_element_set_state):
15890 * gst/gstelement.h:
15891 * gst/gstmessage.c: (gst_message_parse_error),
15892 (gst_message_parse_warning):
15893 Keep track of current target state while performing a state
15894 change so that subclasses can do something interesting.
15895 Fix parsing of warning/error messages when GError is NULL.
15897 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
15899 * docs/gst/Makefile.am:
15900 * docs/gst/gstreamer-docs.sgml:
15901 * docs/gst/gstreamer-sections.txt:
15902 * docs/gst/gstreamer.types:
15903 * docs/gst/tmpl/gstbasesink.sgml:
15904 * docs/gst/tmpl/gstbasesrc.sgml:
15905 * docs/gst/tmpl/gstbin.sgml:
15906 * docs/gst/tmpl/gstcompat.sgml:
15907 * docs/gst/tmpl/gstfakesink.sgml:
15908 * docs/gst/tmpl/gstfakesrc.sgml:
15909 * docs/gst/tmpl/gstfilesink.sgml:
15910 * docs/gst/tmpl/gstfilesrc.sgml:
15911 * docs/gst/tmpl/gstindex.sgml:
15912 * docs/manual/appendix-quotes.xml:
15913 * gst/base/gstbasesrc.h:
15914 * gst/elements/gstfakesrc.h:
15915 * gst/gstmessage.h:
15916 start pulling in base classes and elements in our docs
15918 2005-06-24 Stefan Kost <ensonic@users.sf.net>
15920 * docs/gst/Makefile.am:
15921 * docs/libs/Makefile.am:
15922 fixed make distcheck with gtk-doc 1.3
15924 2005-06-23 Wim Taymans <wim@fluendo.com>
15926 * gst/gstelement.c: (gst_element_get_state_func),
15927 (gst_element_set_state), (gst_element_change_state):
15928 When the state did not change, also report NO_PREROLL
15931 2005-06-23 Wim Taymans <wim@fluendo.com>
15933 * gst/gstpad.c: (gst_pad_event_default):
15934 * gst/gstqueue.c: (gst_queue_loop):
15935 No unsafe task pausing please.
15937 2005-06-23 Wim Taymans <wim@fluendo.com>
15939 * gst/schedulers/threadscheduler.c:
15940 (gst_thread_scheduler_task_start),
15941 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
15942 Ref the task before pushing it on the threadpool. This
15943 makes sure that we have a ref when the threadfunction is
15946 2005-06-23 Andy Wingo <wingo@pobox.com>
15948 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
15949 offset is greater than the file's size.
15951 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
15952 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
15953 * gst/gstobject.c (gst_object_class_init): Make the class lock
15954 recursive. Wim won't let me drop deep_notify. Decodebin works
15955 again, whoopdy doo.
15957 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
15958 internal pad, and hacks accordingly. Doesn't do it on the target
15959 pad because we change its caps. Probably catches all cases of
15961 (gst_ghost_pad_set_property): Connect to notify::caps as
15964 * tests/network-clock.scm (plot-simulation): Pipe data to the
15965 elite python skript.
15967 * tests/network-clock-utils.scm (define-parameter): New macro,
15968 defines a parameter that can be set via the command line.
15969 (set-parameter!, parse-parameter-arguments): Command line args
15972 * tests/plot-data: Simple matplotlib-based plotter, takes input on
15975 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
15977 * gst/elements/gsttypefindelement.c:
15978 (gst_type_find_element_handle_event):
15979 Don't restart typefinding on a discont.
15980 * gst/gstelement.c: (gst_element_set_state):
15981 Debug spelling fix.
15982 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
15983 Allow changing mode of an active pad.
15984 Debug output fixes.
15985 * gst/registries/gstlibxmlregistry.c: (load_feature):
15986 Don't cast a static pad template to a normal pad template.
15988 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
15990 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15991 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
15992 remove gst_strtoll completely, since it didn't actually do
15993 anything more than what g_ascii_strtoull already does.
15994 check for range errors when deserializing
15995 do a cast for the unsigned cases; but further fixing needs
15996 a decision on what the interpretation of "(int)" and
15997 deserialization should be for values that fall outside the
15998 type's boundaries (ie, refuse, or interpret as casting)
16000 2005-06-23 Wim Taymans <wim@fluendo.com>
16002 * check/Makefile.am:
16003 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
16004 * docs/design/part-live-source.txt:
16005 * docs/design/part-states.txt:
16006 * gst/base/gstbasesrc.c: (gst_basesrc_init),
16007 (gst_basesrc_set_live), (gst_basesrc_is_live),
16008 (gst_basesrc_get_range), (gst_basesrc_activate),
16009 (gst_basesrc_change_state):
16010 * gst/base/gstbasesrc.h:
16011 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
16012 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
16013 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
16014 * gst/gstelement.c: (gst_element_get_state_func),
16015 (gst_element_set_state):
16016 * gst/gstelement.h:
16018 * tools/gst-launch.c: (event_loop), (main):
16019 Added support for live sources and other elements that
16021 Updated design docs, added live-source design doc.
16022 Implemented live source functionality in basesrc
16023 Fix error condition in _bin_get_state()
16024 Implement live source handling in -launch.
16025 Added check for live sources.
16026 Fixed case in GstBin where elements were changed state
16030 2005-06-23 Andy Wingo <wingo@pobox.com>
16032 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
16033 borken refcounting.
16035 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
16036 gst_caps_replace takes care of this for us.
16038 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
16039 gst_pad_set_caps on the target, not just its setcaps() function.
16041 * tests/network-clock.scm:
16042 * tests/network-clock-utils.scm: A network clock simulator.
16043 Something of an algorithmic testbed before doing something in C.
16045 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
16047 * check/Makefile.am:
16048 * check/gst/capslist.h:
16049 copy over from 0.8, and add two with bitmasks specified with
16051 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
16052 add test to parse everything from capslist.h
16053 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
16055 add test for structure deserialization
16056 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
16057 add tests for deserialization of strings to int types
16058 * gst/gststructure.c: (gst_structure_nth_field_name):
16059 * gst/gststructure.h:
16060 add a way to get the name of a field referenced by index
16061 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
16062 instead of checking if the resulting long long lies between
16063 min and max, we check if the long long would fit into
16064 a number of bytes for the final type.
16065 This fixes cases where a string represents 2^32 - 1, which
16066 when cast to int would be the (valid) -1, but is bigger than
16069 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
16071 * gst/parse/grammar.y:
16072 add a log line for type deserialization
16074 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
16076 * check/gst/gstvalue.c: (START_TEST):
16077 * gst/gstvalue.c: (gst_value_deserialize):
16078 return long long, not int, so gint64 deserialization actually
16079 works. Is there any flag that makes the compiler check this ?
16082 2005-06-22 Wim Taymans <wim@fluendo.com>
16085 Added convenience macros for setting buffers in GValue.
16087 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
16089 * check/gst/.cvsignore:
16090 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
16091 add a test deserializing int64, and comment part out because
16094 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
16096 * check/Makefile.am:
16097 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
16098 * testsuite/Makefile.am:
16099 * testsuite/caps/Makefile.am:
16100 * testsuite/caps/value_serialize.c:
16101 * testsuite/test_gst_init.c:
16102 move a value_serialize test over
16104 2005-06-20 Wim Taymans <wim@fluendo.com>
16109 * gst/gstvalue.c: (gst_value_compare_buffer),
16110 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
16111 (gst_value_compare_flags), (gst_value_serialize_flags),
16112 (gst_value_deserialize_flags), (_gst_value_initialize):
16113 Fix serialisation of buffers, they are not boxed types anymore
16115 2005-06-20 Wim Taymans <wim@fluendo.com>
16117 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
16118 Testcase to show error in buffer-on-caps serialisation.
16120 2005-06-20 Andy Wingo <wingo@pobox.com>
16122 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
16123 will be adding to later.
16125 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
16126 if its socks fill with rocks.
16127 (gst_system_clock_obtain): Set the name on object construction.
16128 Avoid double-checked locking.
16130 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
16132 * gst/gsturi.c: (gst_element_make_from_uri):
16133 Fix potential endless loop.
16135 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
16137 * check/Makefile.am:
16139 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
16141 move over from testsuite dir and clean up
16144 * testsuite/Makefile.am:
16145 * testsuite/tags/.cvsignore:
16146 * testsuite/tags/Makefile.am:
16147 * testsuite/tags/merge.c:
16148 remove testsuite/tags
16150 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
16152 * docs/gst/gstreamer-sections.txt:
16153 * docs/gst/tmpl/gstenumtypes.sgml:
16154 * win32/gstenumtypes.c:
16155 clean up documentation build a little
16157 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
16159 * check/gstcheck.h:
16160 add macros for checking refcounts on objects and caps
16161 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
16162 add some more unit tests
16163 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
16164 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
16165 fix leaked refcounts (I hope :)) so unittest works
16169 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
16171 * configure.ac: back to HEAD
16173 === release 0.9.1 ===
16175 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
16181 2005-06-17 Andy Wingo <wingo@pobox.com>
16183 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
16184 assert; it's always possible that the pad gets deactivated in
16185 between the checks in gstpad.c and the implementation. Rely on
16186 finish_preroll() to return a FLUSHING or similar instead of on the
16189 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
16190 clock and post an EOS message if we come out of finish_preroll in
16193 2005-06-16 David Schleef <ds@schleef.org>
16195 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
16196 (gst_capsfilter_set_property): Allow NULL as possible value
16197 for filter_caps property, indicating GST_CAPS_ANY.
16199 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
16201 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
16203 * gst/schedulers/Makefile.am:
16205 * gstreamer.spec.in:
16208 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
16210 * gstreamer.spec.in:
16213 2005-06-08 Andy Wingo <wingo@pobox.com>
16215 * gst/gstutils.c: RPAD fixes all around.
16216 (gst_element_link_pads): Refcounting fixes.
16218 * tools/gst-inspect.c:
16219 * tools/gst-xmlinspect.c:
16221 * gst/base/gsttypefindhelper.c:
16222 * gst/base/gstbasesink.c:
16223 * gst/gstqueue.c: RPAD fixes.
16225 * gst/gstghostpad.h:
16226 * gst/gstghostpad.c: New ghost pad implementation as full proxy
16227 pads. The tricky thing is they provide both source and sink
16228 interfaces, since they proxy the internal pad for the external
16229 pad, and vice versa. Implement with lower-level ProxyPad objects,
16230 with the interior proxy pad as a child of the exterior ghost pad.
16231 Should write a doc on this.
16233 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
16234 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
16237 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
16238 pads are real pads. No ghost pads in this file. Not documenting
16239 the myriad s/RPAD/PAD/ and REALIZE fixes.
16240 (gst_pad_class_init): Add properties for "direction" and
16241 "template". Both are construct-only, so they can't change during
16242 the life of the pad. Fixes properly deriving from GstPad.
16243 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
16244 derived objects, just set properties when creating the objects via
16246 (gst_pad_get_parent): Implement as a function, return NULL if the
16247 parent is not an element.
16248 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
16249 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
16251 * gst/gstobject.c (gst_object_class_init): Make name a construct
16252 property. Don't set it in the object init.
16254 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
16255 with UNKNOWN direction.
16256 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
16257 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
16258 (gst_element_remove_pad): Remove ghost-pad special cases.
16259 (gst_element_pads_activate): Remove rpad cruft.
16261 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
16262 catch the pad's-parent-not-an-element case.
16264 * gst/gst.h: Include gstghostpad.h.
16266 * gst/gst.c (init_post): No more real, ghost pads.
16268 * gst/Makefile.am: Add gstghostpad.[ch].
16270 * check/Makefile.am:
16271 * check/gst/gstbin.c:
16272 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
16273 into a bin creates ghost pads, and that the refcounts are right.
16274 Partly moved from gstbin.c.
16276 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
16278 * check/gst-libs/.cvsignore:
16279 * check/gst/.cvsignore:
16280 * check/pipelines/.cvsignore:
16282 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
16283 (START_TEST), (cleanup_suite), (main):
16284 add some tests related to cleanup after running pipelines
16286 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
16288 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
16289 add a testsuite for GstBuffer
16291 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
16293 * gst/gstminiobject.h:
16294 add defines for accessing the refcount
16296 2005-06-03 Stefan Kost <ensonic@users.sf.net>
16298 * Makefile.am: added support for html unit test coverage reports
16300 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
16302 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
16303 Free existing caps if the capsfilter changes. Add a FIXME about
16304 setting those caps on the pads.
16306 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
16307 Before adding a ghost pad to a parent bin, check that there isn't
16308 already one for the element on the bin. Prevents infinite recursion
16309 when using decodebin in parse pipelines. Andy says he'll rewrite the
16310 way this works anyway, so ignore the hack.
16312 2005-06-02 Andy Wingo <wingo@pobox.com>
16314 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
16315 file size, pass it on to the type find helper.
16317 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
16318 segment_start and segment_end properly according to the seek
16319 method. Segment_end is still a bit flaky because offset can be
16320 negative for CUR and END cases, but it takes -1 as an "unset"
16323 2005-06-02 Wim Taymans <wim@fluendo.com>
16325 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
16326 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
16327 (gst_basesink_activate):
16328 * gst/base/gstbasesink.h:
16329 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16330 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
16331 (gst_pad_query), (gst_pad_start_task):
16333 * gst/gstqueue.c: (gst_queue_bufferalloc),
16334 (gst_queue_handle_sink_event), (gst_queue_chain):
16335 Bufferalloc: return GstFlowReturn to more accuratly report
16336 why allocation failed.
16338 2005-06-02 Wim Taymans <wim@fluendo.com>
16340 * gst/gstpipeline.c: (gst_pipeline_send_event):
16341 Take snapshot of state without blocking.
16343 2005-06-02 Wim Taymans <wim@fluendo.com>
16345 * docs/design/part-TODO.txt:
16346 * docs/design/part-caps.txt:
16347 * docs/design/part-clocks.txt:
16348 * docs/design/part-negotiation.txt:
16349 * docs/design/part-preroll.txt:
16352 2005-05-30 Wim Taymans <wim@fluendo.com>
16354 * gst/elements/gstidentity.c: (gst_identity_event),
16355 (gst_identity_transform), (gst_identity_get_property):
16356 Protect last_message property as it is accessed from
16359 2005-05-30 Wim Taymans <wim@fluendo.com>
16361 * gst/gstelement.c: (gst_element_init),
16362 (gst_element_pads_activate), (gst_element_change_state):
16363 Slicker pad activation code.
16365 2005-05-30 Wim Taymans <wim@fluendo.com>
16368 * gst/gstelement.h:
16369 * gst/gstelementfactory.h:
16371 Move elementfactory methods to separate .h file.
16373 2005-05-30 Wim Taymans <wim@fluendo.com>
16375 * docs/design/part-overview.txt:
16376 * gst/gstsystemclock.h:
16377 Small typo fixes, doc updates.
16379 2005-05-30 Wim Taymans <wim@fluendo.com>
16381 * gst/gst.c: (gst_init_get_popt_table), (init_post),
16382 (init_popt_callback):
16383 Remove cpu-opt flag.
16385 2005-05-30 Wim Taymans <wim@fluendo.com>
16387 * gst/gstbuffer.c: (gst_subbuffer_finalize),
16388 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
16390 Avoid typechecking in places where not needed.
16391 Added accessor for malloc_data.
16393 2005-05-30 Wim Taymans <wim@fluendo.com>
16395 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
16396 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
16397 (gst_pad_configure_sink), (gst_pad_configure_src),
16398 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
16399 (gst_pad_start_task):
16400 Propagate errors from _set_caps() in configure_src/sink
16401 functions instead of returning TRUE.
16402 FLUSH events can travel up and downstream
16405 2005-05-30 Wim Taymans <wim@fluendo.com>
16407 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
16408 (gst_basesink_activate):
16409 Handle EOS in preroll.
16411 2005-05-30 Wim Taymans <wim@fluendo.com>
16413 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
16414 (gst_queue_loop), (gst_queue_handle_src_event):
16415 Remove old pieces of code
16416 Flushing the queue in an upstream event is a very bad idea.
16418 2005-05-26 Andy Wingo <wingo@pobox.com>
16420 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
16421 gst_value_set_mini_object so as to add a ref on the object (which
16422 will be removed when the value is unset).
16424 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
16425 arg type in ::handoff.
16427 * gst/gstelement.c (gst_element_change_state): Also deactivate
16428 pads in READY->NULL, just in case the element didn't make it to
16429 PAUSED. Wingo tested, Wim approved.
16431 2005-05-26 Wim Taymans <wim@fluendo.com>
16433 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16434 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
16435 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
16436 A flushing pad cannot be used to alloc_buffer from.
16438 2005-05-26 Wim Taymans <wim@fluendo.com>
16440 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
16441 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
16442 (gst_bus_source_dispatch), (gst_bus_source_finalize),
16443 (gst_bus_create_watch), (gst_bus_add_watch_full):
16445 Implement a real GSource and use g_main_context_wakeup() to
16446 signal new messages instead of the socketpair.
16448 2005-05-25 Wim Taymans <wim@fluendo.com>
16450 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
16451 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
16452 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16453 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
16454 (gst_pad_send_event), (gst_pad_start_task):
16455 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
16456 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
16457 (gst_queue_sink_activate), (gst_queue_src_activate),
16458 (gst_queue_change_state):
16460 Fix state changes for non sinks. We now change sinks, then elements
16461 with unconnected srcpads, then the rest.
16462 More efficient queue unlocking in flush and state changes.
16463 Set the pad activate mode even if it does not have an activate
16466 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16468 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
16469 Don't go in pull mode for non-seekable sources.
16470 * gst/elements/gsttypefindelement.h:
16471 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
16472 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
16473 (free_entry), (stop_typefinding),
16474 (gst_type_find_element_handle_event), (find_peek),
16475 (gst_type_find_element_chain), (do_pull_typefind),
16476 (gst_type_find_element_change_state):
16477 Allow typefinding (w/o seeking) in push-mode, simplified version
16478 of what was in 0.8.
16479 * gst/gstutils.c: (gst_buffer_join):
16481 gst_buffer_join() from 0.8.
16483 2005-05-25 Wim Taymans <wim@fluendo.com>
16485 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16486 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
16487 (gst_pad_send_event), (gst_pad_start_task):
16488 Disable attempt at mode switching until it is figured out.
16490 2005-05-25 Wim Taymans <wim@fluendo.com>
16492 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
16493 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
16494 (gst_basesink_finish_preroll), (gst_basesink_chain),
16495 (gst_basesink_loop), (gst_basesink_activate),
16496 (gst_basesink_change_state):
16497 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
16498 (gst_basesrc_get_range), (gst_basesrc_loop),
16499 (gst_basesrc_activate):
16500 * gst/elements/gsttee.c: (gst_tee_sink_activate):
16501 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
16502 (gst_real_pad_init), (gst_real_pad_set_property),
16503 (gst_real_pad_get_property), (gst_pad_set_active),
16504 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
16505 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
16506 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
16507 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
16508 (gst_pad_event_default_dispatch), (gst_pad_event_default),
16509 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
16510 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
16511 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
16512 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
16513 (gst_pad_stop_task):
16515 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
16516 (gst_queue_loop), (gst_queue_src_activate):
16517 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
16518 (gst_task_get_state):
16520 * gst/schedulers/threadscheduler.c:
16521 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
16522 Implement gst_pad_pause/start/stop_task(), take STREAM lock
16524 Remove ACTIVE pad flag, use FLUSHING everywhere
16525 Added _pad_chain(), _pad_get_range() to call chain/getrange
16527 Add locks around IS_FLUSHING when reading.
16528 Take STREAM lock in chain(), get_range() functions so plugins
16529 don't need to take it anymore.
16533 2005-05-25 Wim Taymans <wim@fluendo.com>
16535 * tools/gst-launch.c: (event_loop):
16536 Unref message after using its contents instead of
16539 2005-05-24 Wim Taymans <wim@fluendo.com>
16541 * docs/design/draft-ghostpads.txt:
16542 * docs/design/draft-push-pull.txt:
16543 * docs/design/draft-query.txt:
16544 * docs/design/part-overview.txt:
16545 Docs updates, added general overview doc.
16547 2005-05-21 David Schleef <ds@schleef.org>
16549 * docs/gst/tmpl/old/GstBin.sgml:
16550 * docs/gst/tmpl/old/GstBuffer.sgml:
16551 * docs/gst/tmpl/old/GstCaps.sgml:
16552 * docs/gst/tmpl/old/GstClock.sgml:
16553 * docs/gst/tmpl/old/GstCompat.sgml:
16554 * docs/gst/tmpl/old/GstData.sgml:
16555 * docs/gst/tmpl/old/GstElement.sgml:
16556 * docs/gst/tmpl/old/GstEvent.sgml:
16557 * docs/gst/tmpl/old/GstIndex.sgml:
16558 * docs/gst/tmpl/old/GstStructure.sgml:
16559 * docs/gst/tmpl/old/GstTag.sgml:
16560 * docs/gst/tmpl/old/cothreads.sgml:
16561 * docs/gst/tmpl/old/cothreads_compat.sgml:
16562 * docs/gst/tmpl/old/gettext.sgml:
16563 * docs/gst/tmpl/old/gobject2gtk.sgml:
16564 * docs/gst/tmpl/old/grammar.tab.sgml:
16565 * docs/gst/tmpl/old/gst-i18n-app.sgml:
16566 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
16567 * docs/gst/tmpl/old/gst_private.sgml:
16568 * docs/gst/tmpl/old/gstaggregator.sgml:
16569 * docs/gst/tmpl/old/gstarch.sgml:
16570 * docs/gst/tmpl/old/gstatomic_impl.sgml:
16571 * docs/gst/tmpl/old/gstbufferstore.sgml:
16572 * docs/gst/tmpl/old/gstdata_private.sgml:
16573 * docs/gst/tmpl/old/gstdisksink.sgml:
16574 * docs/gst/tmpl/old/gstdisksrc.sgml:
16575 * docs/gst/tmpl/old/gstelementfactory.sgml:
16576 * docs/gst/tmpl/old/gstextratypes.sgml:
16577 * docs/gst/tmpl/old/gstfakesink.sgml:
16578 * docs/gst/tmpl/old/gstfakesrc.sgml:
16579 * docs/gst/tmpl/old/gstfdsink.sgml:
16580 * docs/gst/tmpl/old/gstfdsrc.sgml:
16581 * docs/gst/tmpl/old/gstfilesink.sgml:
16582 * docs/gst/tmpl/old/gstfilesrc.sgml:
16583 * docs/gst/tmpl/old/gsthttpsrc.sgml:
16584 * docs/gst/tmpl/old/gstidentity.sgml:
16585 * docs/gst/tmpl/old/gstindexfactory.sgml:
16586 * docs/gst/tmpl/old/gstmarshal.sgml:
16587 * docs/gst/tmpl/old/gstmd5sink.sgml:
16588 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
16589 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
16590 * docs/gst/tmpl/old/gstpadtemplate.sgml:
16591 * docs/gst/tmpl/old/gstpipefilter.sgml:
16592 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
16593 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
16594 * docs/gst/tmpl/old/gstshaper.sgml:
16595 * docs/gst/tmpl/old/gstspider.sgml:
16596 * docs/gst/tmpl/old/gstspideridentity.sgml:
16597 * docs/gst/tmpl/old/gststatistics.sgml:
16598 * docs/gst/tmpl/old/gsttee.sgml:
16599 * docs/gst/tmpl/old/gsttimecache.sgml:
16600 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
16601 * docs/gst/tmpl/old/gstxmlregistry.sgml:
16602 * docs/gst/tmpl/old/gthread-cothreads.sgml:
16603 * docs/gst/tmpl/old/types.sgml:
16604 I didn't intend to add these or check them in.
16606 2005-05-19 David Schleef <ds@schleef.org>
16608 * configure.ac: Use -no-common everywhere. In a sane world, it
16609 would be the default in libtool, because without it, you can't
16610 build DLLs on Windows.
16611 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
16612 * docs/gst/gstreamer-sections.txt:
16613 * docs/gst/tmpl/gstcpu.sgml:
16614 * docs/gst/tmpl/gstdata.sgml:
16615 * docs/gst/tmpl/gstthread.sgml:
16617 2005-05-19 David Schleef <ds@schleef.org>
16619 * gst/gstminiobject.c: (gst_value_set_mini_object),
16620 (gst_value_take_mini_object), (gst_value_get_mini_object):
16621 * gst/gstminiobject.h: Add GValue set/get functions.
16623 2005-05-19 Wim Taymans <wim@fluendo.com>
16625 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
16626 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
16627 (gst_subbuffer_init), (gst_buffer_is_span_fast):
16629 * gst/gstbus.c: (gst_bus_post):
16630 * gst/gstelement.c: (gst_element_get_random_pad):
16631 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
16632 Make subbufer unref the parent in finalize.
16633 some more debugging info.
16636 2005-05-19 Wim Taymans <wim@fluendo.com>
16638 * gst/base/gstbasesink.c: (gst_basesink_class_init),
16639 (gst_basesink_init), (gst_basesink_finalize),
16640 (gst_basesink_activate), (gst_basesink_change_state):
16641 Don't free preroll queue too early.
16643 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16647 Hi, I'm outdated. Please shoot me.
16649 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16651 * gst/gstpipeline.c: (gst_pipeline_send_event):
16652 Do not access variables after they have been deleted.
16654 2005-05-19 Wim Taymans <wim@fluendo.com>
16656 * tools/gst-inspect.c: (print_plugin_features):
16657 A plugin feature does unfortunatly not use the
16660 2005-05-18 Wim Taymans <wim@fluendo.com>
16662 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
16663 Port _span() functions to new subbuffers.
16665 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16667 * gst/gstbin.c: (gst_bin_add_func):
16668 Fix clock settery in bins when adding kids after the clock has
16671 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16673 * gst/elements/gstidentity.c: (gst_identity_class_init):
16674 Workaround until signals support GstMiniObject.
16676 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
16679 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
16681 2005-05-18 Wim Taymans <wim@fluendo.com>
16683 * gst/base/Makefile.am:
16684 * gst/base/gstadapter.c: (gst_adapter_base_init),
16685 (gst_adapter_class_init), (gst_adapter_init),
16686 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
16687 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
16688 (gst_adapter_flush), (gst_adapter_available),
16689 (gst_adapter_available_fast):
16690 * gst/base/gstadapter.h:
16691 Ported and added adapter to the base classes.
16693 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
16696 * gst/gstmessage.c:
16697 Make sure the class is reffed/unreffed once before threads can be
16698 used. Fixes #304551.
16700 2005-05-17 Wim Taymans <wim@fluendo.com>
16702 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
16703 (gst_basesink_chain_unlocked), (gst_basesink_activate):
16704 * gst/gstminiobject.c: (gst_mini_object_get_type),
16705 (gst_mini_object_free):
16706 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
16707 (gst_pad_push), (gst_pad_push_event):
16708 * gst/gstqueue.c: (gst_queue_change_state):
16709 Don't queue buffers in basesink when we are flushing.
16710 Unref buffer when flushing in basesink.
16711 Flush queue when going to READY
16712 Unref buffer when _push() returns an error.
16713 Don't free MiniObject instance when refcount is incremented
16714 in _finalize() so that we can recover objects.
16716 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
16718 * docs/manual/advanced-schedulers.xml:
16719 * docs/manual/appendix-checklist.xml:
16720 * docs/pwg/advanced-clock.xml:
16721 * docs/pwg/advanced-interfaces.xml:
16722 * docs/pwg/advanced-request.xml:
16723 * docs/pwg/advanced-types.xml:
16724 * docs/pwg/intro-preface.xml:
16725 * examples/plugins/example.c: (gst_example_get_type),
16726 (gst_example_class_init), (gst_example_chain),
16727 (gst_example_set_property), (gst_example_get_property),
16728 (gst_example_change_state), (plugin_init):
16729 * examples/plugins/example.h:
16732 2005-05-17 Wim Taymans <wim@fluendo.com>
16734 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
16735 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
16736 * gst/gstqueue.c: (gst_queue_change_state):
16737 Clear queue when going to READY.
16738 Remove IN_SETCAPS flag too.
16740 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
16742 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
16743 Remove implicit cast from gboolean to GstElementStateReturn;
16744 make sure we still return failure in paused => ready case if
16745 the parent class fails to change state and our own stop
16748 2005-05-17 Wim Taymans <wim@fluendo.com>
16750 * tools/gst-launch.c: (event_loop):
16751 Message was unreffed too soon.
16753 2005-05-16 Andy Wingo <wingo@pobox.com>
16755 * gst/gstbin.c (sink_iterator_filter): Err... um...
16757 * check/gst/gstbin.c (test_ghost_pads): New test for the
16758 ghosting-if-elements-not-in-same-bin behavior.
16760 2005-05-16 David Schleef <ds@schleef.org>
16762 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
16763 accessing refcount directly.
16765 2005-05-15 David Schleef <ds@schleef.org>
16767 * check/Makefile.am: remove GstData checks
16768 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
16769 * gst/Makefile.am: add miniobject, remove data
16770 * gst/gst.h: add miniobject, remove data
16771 * gst/gstdata.c: remove
16772 * gst/gstdata.h: remove
16773 * gst/gstdata_private.h: remove
16774 * gst/gsttypes.h: remove GstEvent and GstMessage
16775 * gst/gstelement.c: (gst_element_post_message): fix for API changes
16776 * gst/gstmarshal.list: change BOXED -> OBJECT
16778 Implement GstMiniObject.
16779 * gst/gstminiobject.c:
16780 * gst/gstminiobject.h:
16782 Modify to be subclasses of GstMiniObject.
16783 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
16784 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
16785 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
16786 (gst_subbuffer_get_type), (gst_subbuffer_init),
16787 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
16790 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
16791 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
16792 (_gst_event_copy), (gst_event_new):
16794 * gst/gstmessage.c: (_gst_message_initialize),
16795 (gst_message_get_type), (gst_message_class_init),
16796 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
16797 (gst_message_new), (gst_message_new_error),
16798 (gst_message_new_warning), (gst_message_new_tag),
16799 (gst_message_new_state_changed), (gst_message_new_application):
16800 * gst/gstmessage.h:
16801 * gst/gstprobe.c: (gst_probe_perform),
16802 (gst_probe_dispatcher_dispatch):
16804 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
16805 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
16806 (_gst_query_copy), (gst_query_new):
16808 Update elements for GstData -> GstMiniObject changes
16810 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
16811 (gst_queue_chain), (gst_queue_loop):
16812 * gst/elements/gstbufferstore.c:
16813 (gst_buffer_store_add_buffer_func),
16814 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
16815 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
16816 (gst_fakesink_render):
16817 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
16818 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
16819 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
16820 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
16821 (gst_filesrc_create_read):
16822 * gst/elements/gstidentity.c: (gst_identity_class_init):
16823 * gst/elements/gsttypefindelement.c:
16824 (gst_type_find_element_src_event), (free_entry_buffers),
16825 (gst_type_find_element_handle_event):
16826 * libs/gst/dataprotocol/dataprotocol.c:
16827 (gst_dp_header_from_buffer):
16828 * libs/gst/dataprotocol/dataprotocol.h:
16829 * libs/gst/dataprotocol/dp-private.h:
16831 2005-05-15 David Schleef <ds@schleef.org>
16833 * gst/elements/gstelements.c: Don't include headers that were
16836 2005-05-15 David Schleef <ds@schleef.org>
16838 * gst/elements/Makefile.am: Remove some elements that don't
16839 need to be in the core (or even exist at all).
16840 * gst/elements/gstaggregator.c:
16841 * gst/elements/gstaggregator.h:
16842 * gst/elements/gstmd5sink.c:
16843 * gst/elements/gstmd5sink.h:
16844 * gst/elements/gstmultifilesrc.c:
16845 * gst/elements/gstmultifilesrc.h:
16846 * gst/elements/gstpipefilter.c:
16847 * gst/elements/gstpipefilter.h:
16848 * gst/elements/gstshaper.c:
16849 * gst/elements/gstshaper.h:
16850 * gst/elements/gststatistics.c:
16851 * gst/elements/gststatistics.h:
16852 * po/POTFILES.in: Remove above files.
16854 2005-05-14 Andy Wingo <wingo@pobox.com>
16856 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
16857 so as to get the refs right.
16858 (sink_iterator_filter): New function, wraps bin_element_is_sink,
16859 unreffing objects that don't pass the filter.
16861 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
16862 gst_element_set_bus.
16863 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
16864 normal cases, this will destroy the bus.
16866 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
16869 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
16872 2005-05-13 Andy Wingo <wingo@pobox.com>
16874 * gst/gstutils.c (gst_element_link_pads): Instead of calling
16875 gst_pad_link, call pad_link_maybe_ghosting,
16876 (pad_link_maybe_ghosting): Links pads, making sure that the
16877 elements being linked are in the same bin.
16878 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
16879 Helpers for pad_link_maybe_ghosting.
16881 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
16884 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
16886 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
16888 * docs/design/part-element-source.txt:
16891 2005-05-12 Wim Taymans <wim@fluendo.com>
16893 * gst/base/gstbasesink.c: (gst_basesink_init),
16894 (gst_basesink_activate):
16895 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
16896 (gst_basesrc_is_seekable):
16897 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
16898 (bin_element_is_sink), (gst_bin_change_state):
16899 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
16900 * gst/gstelement.h:
16901 Identify sinks by their flag to avoid overly complicated
16903 Do state changes even for elements not reachable from the
16905 BaseSink is a sink now :)
16906 Some more debugging info in the basesrc.
16909 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16911 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
16912 Implement _query on a bin, similar to _send_event.
16914 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
16916 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
16917 Discont event offset format should be GST_FORMAT_BYTES,
16918 not GST_FORMAT_TIME.
16920 2005-05-12 Wim Taymans <wim@fluendo.com>
16922 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
16923 Same fix as Ronald's but without the signal.
16925 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16927 * gst/gstutils.c: (gst_element_query_position):
16928 No, an element is not a pad.
16930 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16932 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
16933 (gst_bin_get_state):
16934 If a child is removed from a bin while we remove the child from
16935 the bin and while we're retrieving its state, signal this to the
16936 get_state function so we abort the wait (instead of waiting for
16937 a timeout) and can immediately re-iterate over all other elements.
16939 2005-05-12 Wim Taymans <wim@fluendo.com>
16941 * gst/base/Makefile.am:
16942 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
16943 (gst_basesrc_start):
16944 * gst/base/gstbasesrc.h:
16945 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
16946 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
16947 (gst_pushsrc_init), (gst_pushsrc_create):
16948 * gst/base/gstpushsrc.h:
16949 Added is_seekable to BaseSrc
16950 Added simple PushSrc.
16952 2005-05-11 Wim Taymans <wim@fluendo.com>
16954 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
16955 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16956 (gst_element_link_pads), (gst_element_query_position),
16957 (gst_element_query_convert), (intersect_caps_func),
16958 (gst_pad_query_position), (gst_pad_query_convert):
16959 Fix refcounting in utils function.
16960 No point in trying to activate a pad when it's added, it could
16961 be added from the state change function and then we deadlock, the
16962 element has to decide what to do.
16964 2005-05-10 Andy Wingo <wingo@pobox.com>
16966 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
16967 *all* the arguments.
16969 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
16970 stream lock if it's a FLUSH_DONE; normal flushes don't get the
16971 lock (according to the docs -- if this is wrong change the docs).
16973 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
16974 flush messages in the NULL state.
16976 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
16977 message immediately and return.
16978 (gst_bus_set_flushing): New function. If a bus is flushing, it
16979 flushes out any queued messages and immediately unrefs new
16980 messages. This is so when an element goes to NULL, all of the
16981 unhandled messages coming from it can be freed, and their
16982 references to the element dropped. In other words: message source
16983 ref considered harmful :P
16985 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
16986 we're finished with it.
16988 * gst/gstmessage.c (gst_message_new_state_changed):
16990 2005-05-10 Wim Taymans <wim@fluendo.com>
16992 * gst/gstvalue.c: (gst_value_compare_flags),
16993 (gst_value_serialize_flags), (gst_value_deserialize_flags),
16994 (_gst_value_initialize):
16995 Added flags serialize/deserialize/compare code.
16997 2005-05-09 Andy Wingo <wingo@pobox.com>
16999 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
17000 Intersect the peer's caps with our caps.
17002 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17004 * gst/base/gsttypefindhelper.c: (helper_find_peek):
17005 * gst/elements/gsttypefindelement.c: (find_peek):
17006 Handle negative offsets better. Fixes decodebin.
17008 2005-05-09 Wim Taymans <wim@fluendo.com>
17010 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
17011 (gst_base_transform_event):
17012 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
17013 Implement accept_caps.
17014 Fix silly lock/unlock mismatch in base class.
17016 2005-05-09 Wim Taymans <wim@fluendo.com>
17018 * docs/design/draft-push-pull.txt:
17019 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
17020 * gst/elements/gstfilesink.c: (gst_filesink_init),
17021 (gst_filesink_query):
17022 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
17023 (gst_type_find_handle_src_query), (find_element_get_length):
17024 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
17025 * gst/gstelement.h:
17026 * gst/gstmessage.c:
17027 * gst/gstmessage.h:
17028 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
17029 (gst_real_pad_get_caps_unlocked),
17030 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
17031 (gst_pad_event_default_dispatch), (gst_pad_event_default),
17032 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
17033 (gst_real_pad_dispose), (gst_real_pad_finalize),
17034 (gst_pad_load_and_link), (gst_pad_save_thyself),
17035 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
17036 (gst_pad_check_pull_range), (gst_pad_pull_range),
17037 (gst_pad_template_get_type), (gst_pad_template_class_init),
17038 (gst_pad_template_init), (gst_pad_template_dispose),
17039 (name_is_valid), (gst_static_pad_template_get),
17040 (gst_pad_template_new), (gst_static_pad_template_get_caps),
17041 (gst_pad_template_get_caps), (gst_pad_set_element_private),
17042 (gst_pad_get_element_private), (gst_pad_start_task),
17043 (gst_pad_pause_task), (gst_pad_stop_task),
17044 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
17045 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
17046 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
17047 (gst_ghost_pad_new):
17049 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
17050 (gst_query_new_position), (gst_query_set_position),
17051 (gst_query_parse_position), (gst_query_new_convert),
17052 (gst_query_set_convert), (gst_query_parse_convert):
17054 * gst/gstqueryutils.c:
17055 * gst/gstqueryutils.h:
17056 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
17057 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
17058 (gst_queue_handle_src_query):
17059 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
17060 (gst_element_query_position), (gst_element_query_convert),
17061 (intersect_caps_func), (gst_pad_query_position),
17062 (gst_pad_query_convert):
17064 * tools/gst-inspect.c: (print_pad_info):
17065 * tools/gst-xmlinspect.c: (print_element_info):
17066 Remove old query functions. Ported old code.
17067 Added position/convert helper functions to gstutils.
17068 Reordered gstpad.c code, grouping relevant things.
17069 Remove gst_message_new(), always need to speficy a specific
17073 2005-05-09 Andy Wingo <wingo@pobox.com>
17075 * gst/gstiterator.h: Add some includes.
17077 * gst/gstqueryutils.h: Include more headers.
17080 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
17081 some uses of gst_pad_query.
17083 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
17084 NULL out parameters.
17085 (gst_query_new_position): New proc, allocates a new position
17088 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
17089 gstqueryutils.c to the build.
17091 * gst/gststructure.c (gst_structure_set_valist): Implement with
17092 the generic G_VALUE_COLLECT.
17094 2005-05-08 Edward Hervey <bilboed@bilboed.com>
17096 * gst/Makefile.am: (gst_headers):
17097 Added gstqueryutils.h to the list of headers to install, that was
17098 a 'nachty' move wingo :)
17100 2005-05-06 Andy Wingo <wingo@pobox.com>
17103 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
17104 GstData, init a memchunk.
17105 (standard_definitions): Add a few query types, deprecate a few.
17106 (gst_query_get_type): New proc.
17107 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
17109 (gst_query_new_application, gst_query_get_structure): New public
17112 * docs/design/draft-query.txt: Removed LINKS from the query types,
17113 because all the rest can be dispatched to other pads -- seemed
17114 ugly to have a query that couldn't be dispatched. internal_links
17115 is fine as a pad method.
17117 * gst/gstpad.h: Add query2 as a pad method, add the new functions
17118 in gstpad.c, but maintain binary compatibility for the moment.
17119 Will fix before 0.9 is out.
17121 * gst/gstqueryutils.c:
17122 * gst/gstqueryutils.h: New files, implement 3 methods for each
17123 query type: parse_query, parse_response, and set. Probably need an
17126 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
17128 * gst/elements/gstfilesink.c (gst_filesink_query2):
17129 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
17130 query_types, and formats methods.
17132 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
17133 (gst_pad_set_query2_function): New functions.
17134 (gst_real_pad_init): Set query2_default as the default query2
17135 function. Basically just dispatches to internally linked pads.
17139 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
17140 without using the atomic operations. Only one thread can possibly
17141 be accessing the data at this point. Changed so as to avoid
17142 gst_atomic operations.
17144 2005-05-06 Wim Taymans <wim@fluendo.com>
17146 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
17147 Also set caps if we use the fallback buffer alloc.
17149 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
17151 * docs/gst/Makefile.am:
17152 * docs/gst/gstreamer-docs.sgml:
17153 * docs/gst/gstreamer-sections.txt:
17154 * docs/gst/tmpl/gstatomic.sgml:
17155 * docs/gst/tmpl/gstmemchunk.sgml:
17156 * testsuite/elements/struct_i386.h:
17157 * win32/GStreamer.vcproj:
17159 Purge GstAtomic stuff from docs and win32 makefiles as well
17161 2005-05-06 Wim Taymans <wim@fluendo.com>
17163 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
17164 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
17165 * gst/gstpad.c: (gst_pad_peer_get_caps):
17166 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
17167 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
17168 (gst_queue_src_activate), (gst_queue_change_state):
17170 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
17171 (intersect_caps_func):
17172 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
17173 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
17174 Some fixes for the peer_get_caps() change.
17176 2005-05-06 Wim Taymans <wim@fluendo.com>
17178 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
17179 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
17180 (gst_basesink_activate):
17181 Actually do something with error codes returned from the push
17184 2005-05-06 Wim Taymans <wim@fluendo.com>
17186 * docs/design/part-element-sink.txt:
17187 * docs/design/part-element-source.txt:
17188 * gst/base/gstbasesink.c: (gst_basesink_class_init),
17189 (gst_basesink_event), (gst_basesink_activate):
17190 * gst/base/gstbasesink.h:
17191 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
17192 (gst_basesrc_activate):
17193 * gst/base/gstbasesrc.h:
17194 * gst/gstelement.c: (gst_element_pads_activate):
17195 Some more documentation.
17196 Fixed scheduling decision in _pads_activate().
17198 2005-05-05 Andy Wingo <wingo@pobox.com>
17200 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
17203 2005-05-05 Wim Taymans <wim@fluendo.com>
17205 * gst/base/Makefile.am:
17206 * gst/base/gstbasesink.h:
17207 * gst/base/gstbasesrc.c: (gst_basesrc_init),
17208 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
17209 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
17210 (gst_collectpads_class_init), (gst_collectpads_init),
17211 (gst_collectpads_finalize), (gst_collectpads_new),
17212 (gst_collectpads_set_function), (gst_collectpads_add_pad),
17213 (find_pad), (gst_collectpads_remove_pad),
17214 (gst_collectpads_is_active), (gst_collectpads_collect),
17215 (gst_collectpads_collect_range), (gst_collectpads_start),
17216 (gst_collectpads_stop), (gst_collectpads_peek),
17217 (gst_collectpads_pop), (gst_collectpads_available),
17218 (gst_collectpads_read), (gst_collectpads_flush),
17219 (gst_collectpads_chain):
17220 * gst/base/gstcollectpads.h:
17221 * gst/elements/Makefile.am:
17222 * gst/elements/gstelements.c:
17223 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
17224 (gst_fakesink_get_times), (gst_fakesink_event),
17225 (gst_fakesink_preroll), (gst_fakesink_render):
17226 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
17227 (gst_filesink_init), (gst_filesink_set_location),
17228 (gst_filesink_open_file), (gst_filesink_close_file),
17229 (gst_filesink_pad_query), (gst_filesink_event),
17230 (gst_filesink_render), (gst_filesink_change_state):
17231 * gst/elements/gstfilesink.h:
17232 Added object to help in making collect pad based elements.
17234 Make event function in sink baseclass return gboolean.
17236 2005-05-05 Wim Taymans <wim@fluendo.com>
17238 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
17239 (gst_bin_get_by_name):
17241 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
17242 (gst_clock_finalize):
17243 * gst/gstdata.c: (gst_data_replace):
17245 * gst/gstelement.c: (gst_element_request_pad),
17246 (gst_element_pads_activate):
17247 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
17248 (gst_object_unref):
17249 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17250 (gst_pad_set_checkgetrange_function),
17251 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
17252 (gst_pad_check_pull_range), (gst_pad_pull_range),
17253 (gst_static_pad_template_get_caps), (gst_pad_start_task),
17254 (gst_pad_pause_task), (gst_pad_stop_task):
17255 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
17256 (gst_element_request_pad), (gst_pad_proxy_getcaps):
17257 Fix name lookup in GstBin.
17258 Added _data_replace() function and _buffer_replace()
17259 Use finalize method to clean up clock.
17260 Fix refcounting on request pads.
17261 Fix pad schedule mode error.
17262 Some more object refcounting debug info,
17265 2005-05-04 Andy Wingo <wingo@pobox.com>
17267 * check/Makefile.am:
17268 * docs/gst/tmpl/gstatomic.sgml:
17269 * docs/gst/tmpl/gstplugin.sgml:
17270 * gst/base/gstbasesink.c: (gst_basesink_activate):
17271 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
17272 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
17273 (gst_basesrc_query), (gst_basesrc_set_property),
17274 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
17275 (gst_basesrc_activate):
17276 * gst/base/gstbasesrc.h:
17277 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
17278 (gst_base_transform_src_activate):
17279 * gst/elements/gstelements.c:
17280 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17281 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
17282 * gst/elements/gsttee.c: (gst_tee_sink_activate):
17283 * gst/elements/gsttypefindelement.c: (find_element_get_length),
17284 (gst_type_find_element_checkgetrange),
17285 (gst_type_find_element_activate):
17286 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
17287 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
17288 (gst_caps_load_thyself):
17289 * gst/gstelement.c: (gst_element_pads_activate),
17290 (gst_element_save_thyself), (gst_element_restore_thyself):
17291 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
17292 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
17294 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
17295 (gst_xml_parse_file), (gst_xml_parse_memory),
17296 (gst_xml_get_element), (gst_xml_make_element):
17297 * gst/indexers/gstfileindex.c: (gst_file_index_load),
17298 (_file_index_id_save_xml), (gst_file_index_commit):
17299 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
17300 (read_enum), (load_pad_template), (load_feature), (load_plugin),
17302 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
17303 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
17304 * tools/gst-complete.c: (main):
17305 * tools/gst-compprep.c: (main):
17306 * tools/gst-inspect.c: (print_element_properties_info):
17307 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
17308 * tools/gst-xmlinspect.c: (print_element_properties):
17311 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
17313 * gst/gstplugin.c: (gst_plugin_check_module),
17314 (gst_plugin_check_file), (gst_plugin_load_file):
17315 apply patch from #172526 to make register work on MacOSX
17317 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
17319 * docs/gst/tmpl/gstconfig.sgml:
17320 * gst/gstconfig.h.in:
17321 move documentation for some symbols. Add doc for GST_PTR_FORMAT
17322 * testsuite/debug/printf_extension.c: (main):
17323 Do not use GST_PTR_FORMAT on pointers to types with
17324 sizeof < sizeof(gpointer). Fixes test on 64-bit
17325 * testsuite/elements/property.h:
17326 use correct printf format
17328 2005-05-02 Wim Taymans <wim@fluendo.com>
17330 * docs/design/draft-push-pull.txt:
17331 * docs/design/draft-query.txt:
17332 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
17333 (gst_basesrc_start):
17334 Added draft for new query API.
17335 Added draft for better selecting scheduling methods.
17336 Make basesrc ignore length if the subclass does not support
17339 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
17342 possible fixes for automake-1.5 - _LIBADD is reserved
17344 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
17346 * docs/faq/Makefile.am:
17347 * docs/manual/Makefile.am:
17348 * docs/manuals.mak:
17349 * docs/pwg/Makefile.am:
17351 possible fixes for automake-1.5
17353 2005-04-28 Wim Taymans <wim@fluendo.com>
17355 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17356 (gst_basesink_pad_getcaps), (gst_basesink_init),
17357 (gst_basesink_do_sync):
17358 * gst/gstclock.c: (gst_clock_entry_new):
17359 * gst/gstevent.c: (gst_event_discont_get_value):
17360 * gst/gstpipeline.c: (pipeline_bus_handler),
17361 (gst_pipeline_change_state):
17362 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
17363 Better debugging of clocking info.
17364 Allow NULL values when getting discont values.
17366 2005-04-27 Wim Taymans <wim@fluendo.com>
17368 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
17369 * check/gst/gstpad.c: (gst_pad_suite):
17370 Increase timeout for checks.
17372 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
17374 * check/Makefile.am:
17375 fix the broken rule for cleanup. Apparently this rule is
17376 only needed on FC2, so maybe this warrants further autotool
17379 2005-04-26 Wim Taymans <wim@fluendo.com>
17381 * gst/gsttrashstack.h:
17382 Ooohh. a nasty one! After having a failed pop() from the stack,
17383 it's possible that the stack is empty. In that case, don't
17384 follow the NULL pointer.
17386 2005-04-25 Wim Taymans <wim@fluendo.com>
17388 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17389 (gst_pad_set_checkgetrange_function),
17390 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
17391 (gst_pad_check_pull_range), (gst_pad_pull_range),
17392 (gst_static_pad_template_get_caps), (gst_pad_start_task),
17393 (gst_pad_pause_task), (gst_pad_stop_task):
17394 * gst/gstplugin.c: (gst_plugin_load):
17396 Remove gst_library_load as it does more harm than good with
17397 the new g_module flags.
17398 Revert bogus caps template check in pad linking, pad caps
17399 are important when linking not the template, which is more
17400 general than the current caps.
17402 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17404 * gst/autoplug/.cvsignore:
17405 * gst/autoplug/Makefile.am:
17406 * gst/autoplug/gstsearchfuncs.c:
17407 * gst/autoplug/gstsearchfuncs.h:
17408 * gst/autoplug/gstspider.c:
17409 * gst/autoplug/gstspider.h:
17410 * gst/autoplug/gstspideridentity.c:
17411 * gst/autoplug/gstspideridentity.h:
17412 * gst/autoplug/spidertest.c:
17415 2005-04-25 Wim Taymans <wim@fluendo.com>
17417 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17418 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
17419 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
17420 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
17422 Added stubs for unimplemented functions.
17424 2005-04-24 David Schleef <ds@schleef.org>
17426 * gst/gstpad.h: Disable some unimplemented functions. Wim,
17429 2005-04-24 David Schleef <ds@schleef.org>
17431 Convert everything from GstAtomicInt to g_atomic_int_*, and
17436 * gst/gstatomic_impl.h:
17444 * gst/gstdata_private.h:
17448 * gst/gstmessage.c:
17451 * gst/gststructure.c:
17452 * gst/gststructure.h:
17453 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
17456 2005-04-24 David Schleef <ds@schleef.org>
17458 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
17459 make the regressions tests work. Remove some code that is no
17461 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
17462 Disable warning for pads without templates.
17464 2005-04-24 David Schleef <ds@schleef.org>
17466 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
17467 functions that handle filtered links.
17468 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
17470 * gst/gstutils.c: Fix/remove utility functions that handle
17473 * gst/gstvalue.c: Add serialization/deserialization of caps
17474 * gst/parse/grammar.y: Ignore filtered caps when linking. This
17475 requires fixing so that the filter caps notation creates
17476 a capsfilter element and sets the filter_caps property. I
17477 think everyone probably wants to keep the shorthand notation.
17478 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
17479 * docs/gst/tmpl/gstpad.sgml:
17481 * gst/elements/gstelements.c: Register capsfilter element.
17482 * gst/Makefile.am: fix spacing
17483 * docs/random/ds/0.9-suggested-changes: random
17485 2005-04-23 David Schleef <ds@schleef.org>
17487 * gst/elements/Makefile.am:
17488 * gst/elements/gstcapsfilter.c: New element that acts like an
17489 identity, but filters caps. Will eventually replace filtered
17490 caps in pad linking.
17491 * gst/gstutils.c: (gst_element_create_all_pads): New function
17492 to create all the ALWAYS pads that are registered with an
17493 element class. This functionality should eventually be
17494 merged in with GstElement initialization.
17496 * testsuite/trigger/README: part of trigger test code that should
17497 have been checked in a long time ago.
17499 2005-04-23 David Schleef <ds@schleef.org>
17501 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
17502 needed with new versions of libtool (nobody will confirm this),
17503 and hard to carry around.
17504 * gst/autoplug/Makefile.am:
17505 * gst/base/Makefile.am:
17506 * gst/elements/Makefile.am:
17507 * gst/indexers/Makefile.am:
17508 * gst/schedulers/Makefile.am:
17509 * libs/gst/bytestream/Makefile.am:
17510 * libs/gst/control/Makefile.am:
17511 * libs/gst/dataprotocol/Makefile.am:
17512 * libs/gst/getbits/Makefile.am:
17514 2005-04-21 Wim Taymans <wim@fluendo.com>
17516 * docs/design/draft-push-pull.txt:
17517 * docs/design/part-MT-refcounting.txt:
17518 * docs/design/part-TODO.txt:
17519 * docs/design/part-caps.txt:
17520 * docs/design/part-events.txt:
17521 * docs/design/part-gstbus.txt:
17522 * docs/design/part-gstpipeline.txt:
17523 * docs/design/part-messages.txt:
17524 * docs/design/part-push-pull.txt:
17525 * docs/design/part-query.txt:
17528 2005-04-21 Wim Taymans <wim@fluendo.com>
17530 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
17531 (gst_message_new), (gst_message_new_error),
17532 (gst_message_new_warning), (gst_message_new_tag),
17533 (gst_message_new_state_changed), (gst_message_new_application),
17534 (gst_message_get_structure):
17535 * gst/gstmessage.h:
17536 * gst/gststructure.c: (gst_structure_set_parent_refcount),
17537 (gst_structure_copy_conditional):
17538 Use parent refcount in GstMessage to ensure GstStructure
17540 Cleaned up headers a bit.
17543 2005-04-20 Wim Taymans <wim@fluendo.com>
17545 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17546 (gst_basesink_pad_getcaps), (gst_basesink_init),
17547 (gst_basesink_chain_unlocked):
17548 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
17549 (gst_type_find_helper):
17550 * gst/elements/gsttypefindelement.c:
17551 (gst_type_find_element_have_type), (gst_type_find_element_init),
17552 (stop_typefinding), (gst_type_find_element_handle_event),
17553 (find_suggest), (gst_type_find_element_chain),
17554 (gst_type_find_element_checkgetrange),
17555 (gst_type_find_element_getrange), (do_typefind),
17556 (gst_type_find_element_activate):
17557 * gst/gstbuffer.c: (_gst_buffer_sub_free),
17558 (gst_buffer_default_free), (gst_buffer_default_copy),
17559 (gst_buffer_set_caps):
17560 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
17561 (gst_caps_replace):
17562 * gst/gstmessage.c: (gst_message_new),
17563 (gst_message_new_state_changed):
17564 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17565 (gst_pad_set_checkgetrange_function),
17566 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
17567 (gst_pad_set_caps), (gst_pad_check_pull_range),
17568 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
17570 * gst/gsttypefind.c: (gst_type_find_register):
17571 Make gst_caps_replace() work like other _replace() functions.
17572 Use _caps_replace() where possible.
17573 Make sure _message_new() initialises its field.
17574 Add gst_static_pad_template_get_caps()
17577 2005-04-18 Andy Wingo <wingo@pobox.com>
17579 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
17580 on the peer, not the pad. I think that was a typo. Pass an extra
17581 arg to see if random access is possible. Activate the pads as
17582 PULL_RANGE if possible.
17584 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
17586 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
17587 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
17590 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17592 * docs/faq/using.xml:
17593 Add note on gstreamer-properties (#154996).
17595 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17597 * docs/random/bbb/optional-properties:
17598 Some analysis on optional properties.
17600 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17602 * docs/gst/tmpl/gstelementfactory.sgml:
17603 * gst/gstelement.h:
17604 * gst/gstelementfactory.c: (gst_element_factory_init),
17605 (gst_element_factory_cleanup), (gst_element_register),
17606 (__gst_element_factory_add_static_pad_template),
17607 (gst_element_factory_get_static_pad_templates),
17608 (gst_element_factory_can_src_caps),
17609 (gst_element_factory_can_sink_caps):
17610 * gst/registries/Makefile.am:
17611 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
17612 (gst_xml_registry_class_init), (gst_xml_registry_init),
17613 (gst_xml_registry_new), (gst_xml_registry_set_property),
17614 (gst_xml_registry_get_property), (get_time), (make_dir),
17615 (gst_xml_registry_get_perms_func),
17616 (plugin_times_older_than_recurse), (plugin_times_older_than),
17617 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
17618 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
17619 (add_to_char_array), (read_string), (read_uint), (read_enum),
17620 (load_pad_template), (load_feature), (load_plugin), (load_paths),
17621 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
17622 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
17623 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
17624 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
17625 (gst_xml_registry_rebuild):
17626 * gst/registries/gstlibxmlregistry.h:
17627 * tools/gst-compprep.c: (main):
17628 * tools/gst-inspect.c: (print_pad_templates_info):
17629 * tools/gst-xmlinspect.c: (print_element_info):
17630 Use libxml2 for registry parsing, use staticpadtemplates in
17631 elementfactories. Makes gst_init() +/- 10x faster.
17633 2005-04-12 Wim Taymans <wim@fluendo.com>
17635 * gst/base/Makefile.am:
17636 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17637 (gst_basesink_pad_getcaps), (gst_basesink_init),
17638 (gst_basesink_event), (gst_basesink_change_state):
17639 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17640 (gst_basesrc_init), (gst_basesrc_query),
17641 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
17642 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
17643 (gst_basesrc_check_get_range), (gst_basesrc_loop),
17644 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
17645 (gst_basesrc_stop), (gst_basesrc_activate),
17646 (gst_basesrc_change_state):
17647 * gst/base/gsttypefindhelper.c: (helper_find_peek),
17648 (helper_find_suggest), (gst_type_find_helper):
17649 * gst/base/gsttypefindhelper.h:
17650 * gst/elements/Makefile.am:
17651 * gst/elements/gstelements.c:
17652 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
17653 (gst_fakesink_get_times), (gst_fakesink_event),
17654 (gst_fakesink_preroll), (gst_fakesink_render):
17655 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17656 (gst_fakesrc_init), (gst_fakesrc_event_handler),
17657 (gst_fakesrc_get_property), (gst_fakesrc_create),
17658 (gst_fakesrc_start), (gst_fakesrc_stop):
17659 * gst/elements/gstfakesrc.h:
17660 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
17661 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
17662 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
17663 (gst_filesrc_create_read), (gst_filesrc_create),
17664 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
17665 (gst_filesrc_start):
17666 * gst/elements/gsttypefindelement.c:
17667 (gst_type_find_element_have_type), (gst_type_find_element_init),
17668 (start_typefinding), (stop_typefinding), (push_buffer_store),
17669 (gst_type_find_element_handle_event),
17670 (gst_type_find_element_chain),
17671 (gst_type_find_element_checkgetrange),
17672 (gst_type_find_element_getrange), (do_typefind),
17673 (gst_type_find_element_activate),
17674 (gst_type_find_element_change_state):
17675 * gst/elements/gsttypefindelement.h:
17676 * gst/gstpipeline.c: (pipeline_bus_handler):
17677 Added typefind helper.
17678 Small preroll fix in the base sink.
17679 Disable typefind code in basesrc.
17680 Crude port of typefindelement.
17684 2005-04-11 Wim Taymans <wim@fluendo.com>
17686 * check/gst/gstbus.c: (gstbus_suite):
17687 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
17688 * check/gstcheck.h:
17689 Fix up the timeout so that the test does not fail.
17691 2005-04-06 Wim Taymans <wim@fluendo.com>
17694 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17695 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
17696 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
17697 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
17698 (gst_basesrc_check_get_range), (gst_basesrc_loop),
17699 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
17700 (gst_basesrc_stop), (gst_basesrc_activate),
17701 (gst_basesrc_change_state), (basesrc_find_peek),
17702 (basesrc_find_suggest), (gst_basesrc_type_find):
17703 * gst/base/gstbasesrc.h:
17704 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
17705 (gst_filesrc_class_init), (gst_filesrc_init),
17706 (gst_filesrc_finalize), (gst_filesrc_set_location),
17707 (gst_filesrc_set_property), (gst_filesrc_get_property),
17708 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
17709 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
17710 (gst_filesrc_create_read), (gst_filesrc_create),
17711 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
17712 * gst/elements/gstfilesrc.h:
17713 * gst/gstelement.c: (gst_element_get_state_func),
17714 (gst_element_lost_state), (gst_element_pads_activate):
17715 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17716 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
17717 (gst_pad_pull_range):
17719 More work on the generic source base class, implement seeking,
17721 Make filesrc extend the base source class.
17722 Added gst_pad_set_checkgetrange_function to GstPad.
17724 2005-04-06 Andy Wingo <wingo@pobox.com>
17726 * pkgconfig/gstreamer-base.pc.in:
17727 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
17729 * pkgconfig/Makefile.am:
17730 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
17732 2005-04-04 Wim Taymans <wim@fluendo.com>
17734 * gst/base/Makefile.am:
17736 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17737 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
17738 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
17739 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
17740 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17741 (gst_basesrc_base_init), (gst_basesrc_class_init),
17742 (gst_basesrc_init), (gst_basesrc_get_formats),
17743 (gst_basesrc_get_query_types), (gst_basesrc_query),
17744 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
17745 (gst_basesrc_set_property), (gst_basesrc_get_property),
17746 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
17747 (gst_basesrc_loop), (gst_basesrc_activate),
17748 (gst_basesrc_change_state):
17749 * gst/base/gstbasesrc.h:
17750 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
17751 (gst_fakesrc_class_init), (gst_fakesrc_init),
17752 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
17753 (gst_fakesrc_get_property), (gst_fakesrc_create):
17754 * gst/elements/gstfakesrc.h:
17755 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
17756 (gst_filesrc_open_file), (gst_filesrc_loop),
17757 (gst_filesrc_activate), (filesrc_find_peek),
17758 (gst_filesrc_type_find):
17759 Made base source class, make fakesrc extend it.
17760 Add comments to basesink class.
17761 Some filesrc cleanup.
17763 2005-03-31 David Schleef <ds@schleef.org>
17765 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
17766 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
17767 expected to link against libgstreamer.
17768 * gst/base/Makefile.am: link against libgstreamer
17769 * gst/elements/Makefile.am: same
17771 2005-03-31 Andy Wingo <wingo@pobox.com>
17773 * tests/instantiate/Makefile.am:
17774 * tests/instantiate/caps.c: Add test to test speed of caps copy
17777 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
17778 GMemChunk to be fair.
17780 * gst/gsttrashstack.h: Remove warning about using the fallback
17781 trash stack implementation, it's still faster than malloc.
17783 2005-03-30 Andy Wingo <wingo@pobox.com>
17785 * tests/complexity.c: Add a copyright.
17787 2005-03-31 Wim Taymans <wim@fluendo.com>
17789 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
17790 (gst_base_transform_class_init), (gst_base_transform_init),
17791 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
17792 (gst_base_transform_get_property),
17793 (gst_base_transform_sink_activate),
17794 (gst_base_transform_src_activate),
17795 (gst_base_transform_change_state):
17796 * gst/base/gstbasetransform.h:
17797 * gst/elements/gstidentity.c: (gst_identity_class_init),
17798 (gst_identity_event), (gst_identity_check_perfect),
17799 (gst_identity_transform), (gst_identity_start),
17800 (gst_identity_stop):
17801 Added start/stop methods to transform base class so subclasses
17802 don't need to deal with state changes even.
17804 2005-03-31 Wim Taymans <wim@fluendo.com>
17806 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
17807 (gst_event_new_discontinuous), (gst_event_discont_get_value):
17809 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17810 (gst_pad_pull_range):
17811 Added rate to the discont event to prepare for variable speed
17812 and reverse playback.
17814 2005-03-29 David Schleef <ds@schleef.org>
17817 * testsuite/trigger/Makefile.am:
17818 * testsuite/trigger/trigger.c: A little example program to show
17819 how trigger-based elements can work.
17821 2005-03-29 Wim Taymans <wim@fluendo.com>
17823 * gst/base/Makefile.am:
17825 * gst/base/gstbasesink.c: (gst_basesink_get_type),
17826 (gst_basesink_base_init), (gst_basesink_class_init),
17827 (gst_basesink_pad_getcaps), (gst_basesink_init),
17828 (gst_basesink_activate), (gst_basesink_change_state):
17829 * gst/base/gstbasesink.h:
17830 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
17831 (gst_base_transform_base_init), (gst_base_transform_finalize),
17832 (gst_base_transform_class_init), (gst_base_transform_init),
17833 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
17834 (gst_base_transform_event), (gst_base_transform_getrange),
17835 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
17836 (gst_base_transform_set_property),
17837 (gst_base_transform_get_property),
17838 (gst_base_transform_sink_activate),
17839 (gst_base_transform_src_activate),
17840 (gst_base_transform_change_state):
17841 * gst/base/gstbasetransform.h:
17842 * gst/elements/gstidentity.c: (gst_identity_finalize),
17843 (gst_identity_class_init), (gst_identity_init),
17844 (gst_identity_event), (gst_identity_check_perfect),
17845 (gst_identity_transform), (gst_identity_set_property),
17846 (gst_identity_get_property), (gst_identity_change_state):
17847 * gst/elements/gstidentity.h:
17848 * gst/gstelement.c: (gst_element_get_state_func),
17849 (gst_element_lost_state), (gst_element_pads_activate):
17850 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17851 (gst_pad_check_pull_range), (gst_pad_pull_range):
17853 Simplify pad activation.
17854 Added function to check if pull_range can be performed.
17855 Error out when pulling inactive or flushing pads.
17856 Removed const from refcounted types as it does not make sense.
17857 Simplify pad templates in basesink
17858 Added base class for simple 1-to-1 transforms.
17859 Make identity subclass the base transform.
17861 2005-03-29 Andy Wingo <wingo@pobox.com>
17863 * docs/libs/gstreamer-libs-overrides.txt:
17864 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
17865 really don't understand what's going on, but like whatever. I want
17868 * docs/gst/Makefile.am:
17869 * docs/libs/Makefile.am: Dist the overrides files.
17871 * check/Makefile.am (clean-local): Remove .libs directories.
17873 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
17874 elements to EXTRA_DIST, so po/ files are happy.
17876 * po/POTFILES.in: Er, remove it here.
17878 * po/POTFILES: Remove gstspider.c.
17880 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
17882 * docs/libs/gstreamer-libs-docs.sgml:
17883 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
17886 * tests/complexity.c (main): Set the length of the preroll queue
17887 on the sinks to prevent a lockup.
17889 * libs/gst/dataprotocol/Makefile.am:
17890 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
17891 the same as the one in check/gst-libs/gdp.c.
17893 * po/, docs/gst/: Commit automatic changes to docs and po files.
17895 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
17896 the versioned libgstbase.
17898 * check/Makefile.am: Depend on an unversioned gst-register, seems
17899 to make autoconf happier.
17901 * gst/base/Makefile.am: Make libgstbase a versioned lib.
17903 2005-03-28 Wim Taymans <wim@fluendo.com>
17906 * docs/design/part-gstelement.txt:
17907 * docs/design/part-negotiation.txt:
17908 * docs/design/part-preroll.txt:
17909 * docs/design/part-scheduling.txt:
17910 * docs/design/part-states.txt:
17912 * gst/base/Makefile.am:
17914 * gst/base/gstbasesink.c: (gst_basesink_get_template),
17915 (gst_basesink_base_init), (gst_basesink_class_init),
17916 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
17917 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
17918 (gst_basesink_set_pad_functions),
17919 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
17920 (gst_basesink_set_property), (gst_basesink_get_property),
17921 (gst_base_sink_get_template), (gst_base_sink_get_caps),
17922 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
17923 (gst_basesink_preroll_queue_push),
17924 (gst_basesink_preroll_queue_empty),
17925 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
17926 (gst_basesink_event), (gst_basesink_get_times),
17927 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
17928 (gst_basesink_chain_unlocked), (gst_basesink_chain),
17929 (gst_basesink_loop), (gst_basesink_activate),
17930 (gst_basesink_change_state):
17931 * gst/base/gstbasesink.h:
17932 * gst/elements/Makefile.am:
17933 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
17934 (gst_fakesink_class_init), (gst_fakesink_init),
17935 (gst_fakesink_set_property), (gst_fakesink_get_property),
17936 (gst_fakesink_get_times), (gst_fakesink_event),
17937 (gst_fakesink_preroll), (gst_fakesink_render),
17938 (gst_fakesink_change_state):
17939 * gst/elements/gstfakesink.h:
17940 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
17941 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
17942 * gst/gstelement.c: (gst_element_add_pad),
17943 (gst_element_get_state_func), (gst_element_abort_state),
17944 (gst_element_commit_state), (gst_element_lost_state),
17945 (gst_element_set_state), (gst_element_pads_activate):
17946 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
17947 * gst/gstpipeline.c: (gst_pipeline_send_event),
17948 (gst_pipeline_change_state):
17949 Added state change code.
17950 Added/updated docs.
17951 Added sink base class, make fakesink extend the base class.
17952 Small cleanups in GstPipeline.
17954 2005-03-26 David Schleef <ds@schleef.org>
17956 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
17957 is broken and should be implemented in a different library.
17958 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
17959 * gst/gst.h: remove gstcpu.h
17960 * gst/gstcpu.c: remove
17961 * gst/gstcpu.h: remove
17962 * gst/Makefile.am.future: Remove this file. It's ancient.
17964 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17966 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
17967 (gst_bin_send_event):
17968 Add default event/set_manager handlers. The set_manager handler
17969 takes care that the manager is distributed over kids that were
17970 already in the bin before the manager was set. The event handler
17971 is a utility virtual function that sends the event over all sinks,
17972 so that gst_element_send_event (bin, event); has the expected
17974 * gst/gstpad.c: (gst_pad_event_default):
17975 Re-install default event handling for discontinuities, so that
17976 seeking works without requiring hacks in applications or extra
17978 * gst/gstpipeline.c: (gst_pipeline_class_init),
17979 (gst_pipeline_send_event):
17980 Half hack, half utility: set a pipeline to PAUSED for seek events,
17981 since that is the only way we can guarantee a/v sync. Means that
17982 you can do gst_element_seek (pipeline, method, pos); on a pipeline
17983 and it "just works".
17985 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17987 * gst/gstpipeline.c: (gst_pipeline_use_clock):
17988 Lock/unlock mismatch.
17990 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
17992 * docs/faq/gst-uninstalled:
17993 add gst-plugins-base
17994 * docs/gst/Makefile.am:
17995 don't error out until docs are fixed
17996 * docs/gst/gstreamer.types:
17999 2005-03-22 Wim Taymans <wim@fluendo.com>
18001 * check/Makefile.am:
18002 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
18003 * gst/gststructure.c: (gst_structure_set_valist),
18004 (gst_structure_copy_conditional):
18005 Activated more tests.
18006 Added message test.
18007 Added G_TYPE_POINTER to GstStructure.
18010 2005-03-22 Wim Taymans <wim@fluendo.com>
18012 * docs/design/part-TODO.txt:
18013 * docs/design/part-events.txt:
18014 * docs/design/part-gstbin.txt:
18015 * docs/design/part-gstbus.txt:
18016 * docs/design/part-gstpipeline.txt:
18017 * docs/design/part-messages.txt:
18019 * gst/gstmessage.c:
18022 2005-03-21 Wim Taymans <wim@fluendo.com>
18024 * gst/gstbus.c: (gst_bus_post):
18025 Fix copy-and-paste error.
18027 2005-03-21 Wim Taymans <wim@fluendo.com>
18029 * check/Makefile.am:
18031 * gst/elements/Makefile.am:
18032 * gst/elements/gstelements.c:
18033 * gst/elements/gstfakesink.c: (gst_fakesink_init),
18034 (gst_fakesink_event), (gst_fakesink_chain):
18035 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
18036 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
18037 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
18038 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
18039 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
18040 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
18041 (gst_fakesrc_loop), (gst_fakesrc_activate),
18042 (gst_fakesrc_change_state):
18043 * gst/elements/gstfakesrc.h:
18044 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
18045 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
18046 (gst_filesrc_open_file), (gst_filesrc_loop),
18047 (gst_filesrc_activate), (gst_filesrc_change_state),
18048 (filesrc_find_peek), (filesrc_find_suggest),
18049 (gst_filesrc_type_find):
18050 * gst/elements/gstidentity.c: (gst_identity_finalize),
18051 (gst_identity_class_init), (gst_identity_init),
18052 (gst_identity_proxy_getcaps), (identity_queue_push),
18053 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
18054 (gst_identity_getrange), (gst_identity_chain),
18055 (gst_identity_sink_loop), (gst_identity_src_loop),
18056 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
18057 (gst_identity_set_property), (gst_identity_get_property),
18058 (gst_identity_change_state):
18059 * gst/elements/gstidentity.h:
18060 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
18061 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
18062 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
18063 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
18064 (gst_tee_sink_activate):
18065 * gst/elements/gsttee.h:
18066 * gst/gst.c: (gst_register_core_elements), (init_post):
18068 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
18069 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
18070 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
18071 (gst_bin_change_state):
18073 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
18074 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
18075 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
18076 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
18077 (gst_bus_set_sync_handler), (gst_bus_create_watch),
18078 (bus_watch_callback), (bus_watch_destroy),
18079 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
18080 (poll_timeout), (gst_bus_poll):
18084 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
18085 (gst_element_post_message), (gst_element_message_full),
18086 (gst_element_get_state_func), (gst_element_get_state),
18087 (gst_element_abort_state), (gst_element_commit_state),
18088 (gst_element_lost_state), (gst_element_set_state),
18089 (gst_element_pads_activate), (gst_element_change_state),
18090 (gst_element_dispose), (gst_element_set_manager_func),
18091 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
18092 (gst_element_set_manager), (gst_element_get_manager),
18093 (gst_element_set_bus), (gst_element_get_bus),
18094 (gst_element_set_scheduler), (gst_element_get_scheduler):
18095 * gst/gstelement.h:
18096 * gst/gstevent.c: (gst_event_new_segment_seek),
18097 (gst_event_new_flush):
18099 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
18100 (_gst_message_free), (gst_message_get_type), (gst_message_new),
18101 (gst_message_new_eos), (gst_message_new_error),
18102 (gst_message_new_warning), (gst_message_new_tag),
18103 (gst_message_new_state_changed), (gst_message_new_application),
18104 (gst_message_get_structure), (gst_message_parse_tag),
18105 (gst_message_parse_state_changed), (gst_message_parse_error),
18106 (gst_message_parse_warning):
18107 * gst/gstmessage.h:
18108 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
18109 (gst_real_pad_set_property), (gst_pad_set_active),
18110 (gst_pad_is_active), (gst_pad_set_blocked_async),
18111 (gst_pad_set_blocked), (gst_pad_is_blocked),
18112 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
18113 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
18114 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
18115 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
18116 (gst_pad_link_filtered), (gst_pad_relink_filtered),
18117 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
18118 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
18119 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
18120 (gst_pad_set_caps), (gst_pad_configure_sink),
18121 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
18122 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
18123 (gst_real_pad_dispose), (gst_real_pad_finalize),
18124 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
18125 (gst_pad_event_default_dispatch), (gst_pad_event_default),
18126 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
18128 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
18129 (pipeline_bus_handler), (gst_pipeline_change_state),
18130 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
18131 * gst/gstpipeline.h:
18133 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
18134 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
18135 (gst_queue_link_src), (gst_queue_bufferalloc),
18136 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
18137 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
18138 (gst_queue_loop), (gst_queue_handle_src_event),
18139 (gst_queue_handle_src_query), (gst_queue_src_activate),
18140 (gst_queue_change_state):
18142 * gst/gstscheduler.c: (gst_scheduler_init),
18143 (gst_scheduler_dispose), (gst_scheduler_create_task),
18144 (gst_scheduler_factory_create):
18145 * gst/gstscheduler.h:
18146 * gst/gststructure.c: (gst_structure_get_type),
18147 (gst_structure_copy_conditional):
18148 * gst/gststructure.h:
18149 * gst/gsttaginterface.h:
18150 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
18151 (gst_task_init), (gst_task_dispose), (gst_task_create),
18152 (gst_task_get_state), (gst_task_start), (gst_task_stop),
18158 * gst/schedulers/Makefile.am:
18159 * gst/schedulers/cothreads_compat.h:
18160 * gst/schedulers/entryscheduler.c:
18161 * gst/schedulers/faircothreads.c:
18162 * gst/schedulers/faircothreads.h:
18163 * gst/schedulers/fairscheduler.c:
18164 * gst/schedulers/gstbasicscheduler.c:
18165 * gst/schedulers/gstoptimalscheduler.c:
18166 * gst/schedulers/gthread-cothreads.h:
18167 * gst/schedulers/threadscheduler.c:
18168 (gst_thread_scheduler_task_get_type),
18169 (gst_thread_scheduler_task_class_init),
18170 (gst_thread_scheduler_task_init),
18171 (gst_thread_scheduler_task_start),
18172 (gst_thread_scheduler_task_stop),
18173 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
18174 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
18175 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
18176 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
18178 * libs/gst/Makefile.am:
18179 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
18180 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
18181 (gst_file_pad_parent_set):
18182 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
18183 (gst_dp_event_from_packet):
18184 * tests/complexity.c: (main):
18185 * tests/mass_elements.c: (main):
18186 * testsuite/states/locked.c: (message_received), (main):
18187 * testsuite/states/parent.c: (main):
18188 * tools/gst-inspect.c: (print_element_flag_info),
18189 (print_implementation_info), (print_pad_info):
18190 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
18192 * tools/gst-md5sum.c: (event_loop), (main):
18193 * tools/gst-typefind.c: (main):
18194 * tools/gst-xmlinspect.c: (print_element_info):
18196 Added GstBus for mainloop integration.
18197 Added GstMessage for sending notifications on the bus.
18198 Added GstTask as an abstraction for pipeline entry points.
18200 Removed Schedulers.
18201 Simplified GstQueue for multithreaded core.
18202 Made _link threadsafe, removed old capsnego.
18203 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
18204 Added pad blocking functions.
18205 Reworked scheduling functions in GstPad to prepare for
18206 scheduling updates soon.
18207 Moved events out of data stream.
18208 Simplified GstEvent types.
18209 Added return values to push/pull.
18210 Removed clocking from GstElement.
18211 Added prototypes for state change function for next merge.
18212 Removed iterate from bins and state change management.
18213 Fixed some elements, disabled others for now.
18214 Fixed -inspect and -launch.
18215 Added check for GstBus.
18217 2005-03-10 Wim Taymans <wim@fluendo.com>
18219 * docs/design/part-MT-refcounting.txt:
18220 * docs/design/part-clocks.txt:
18221 * docs/design/part-gstelement.txt:
18222 * docs/design/part-gstobject.txt:
18223 * docs/design/part-standards.txt:
18224 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
18225 (gst_bin_remove_func), (gst_bin_remove):
18229 * testsuite/clock/clock1.c: (main):
18230 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
18232 * testsuite/dlopen/loadgst.c: (do_test):
18233 * testsuite/refcounting/bin.c: (add_remove_test1),
18234 (add_remove_test2), (main):
18235 * testsuite/refcounting/element.c: (main):
18236 * testsuite/refcounting/element_pad.c: (main):
18237 * testsuite/refcounting/pad.c: (main):
18238 * tools/gst-launch.c: (sigint_handler_sighandler):
18239 * tools/gst-typefind.c: (main):
18241 Added doc about clock.
18242 removed gst_bin_iterate_recurse_up(), marked methods
18244 Fix more testsuites.
18246 2005-03-09 Wim Taymans <wim@fluendo.com>
18248 * gst/gstpad.c: (gst_pad_get_direction),
18249 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
18250 (gst_pad_collect_valist):
18251 * testsuite/bins/interface.c: (main):
18252 * testsuite/caps/audioscale.c: (test_caps):
18253 * testsuite/caps/caps.c: (test1), (test2), (test3):
18254 * testsuite/caps/deserialize.c: (main):
18255 * testsuite/caps/enumcaps.c: (main):
18256 * testsuite/caps/filtercaps.c: (main):
18257 * testsuite/caps/intersect2.c: (main):
18258 * testsuite/caps/random.c: (main):
18259 * testsuite/caps/renegotiate.c: (my_fixate), (main):
18260 * testsuite/caps/sets.c: (check_caps):
18261 * testsuite/caps/simplify.c: (check_caps), (main):
18262 * testsuite/caps/subtract.c: (check_caps):
18263 Fix _pad_get_direction wrt ghostpads.
18264 Fix caps testsuite.
18266 2005-03-09 Wim Taymans <wim@fluendo.com>
18268 * check/Makefile.am:
18269 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
18270 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
18271 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
18272 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
18273 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
18274 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
18275 (gst_bin_remove), (gst_bin_iterate_recurse_up),
18276 (bin_element_is_sink), (gst_bin_iterate_sinks),
18277 (gst_bin_iterate_all_by_interface):
18279 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
18280 (gst_element_change_state), (gst_element_dispose),
18281 (gst_element_finalize), (gst_element_set_loop_function):
18282 * gst/gstelement.h:
18283 * gst/gstiterator.c: (find_custom_fold_func):
18284 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
18285 (gst_pad_collectv), (gst_pad_collect_valist),
18286 (gst_pad_template_new):
18287 * gst/gstpipeline.c: (gst_pipeline_class_init),
18288 (gst_pipeline_dispose), (gst_pipeline_set_property),
18289 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
18290 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
18291 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
18293 * gst/schedulers/entryscheduler.c:
18294 * gst/schedulers/gstbasicscheduler.c:
18295 (gst_basic_scheduler_cothreaded_chain),
18296 (gst_basic_scheduler_chain_add_element):
18297 * testsuite/bins/interface.c: (main):
18299 Added GstSystemClock test.
18300 Implemented clock distribution code in GstBin.
18301 Implemented iterate sinks method for future use.
18302 Rearranged gstelement.h
18303 Fix GstIterator comparison bug.
18304 Moved some code to GstPipeline, mostly clocking related.
18306 2005-03-09 Wim Taymans <wim@fluendo.com>
18309 * gst/gst_private.h:
18310 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
18311 (gst_bin_remove_func), (gst_bin_remove),
18312 (gst_bin_get_by_name_recurse_up):
18313 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
18314 (gst_clock_id_compare_func), (gst_clock_id_wait),
18315 (gst_clock_id_wait_async), (gst_clock_init),
18316 (gst_clock_adjust_unlocked), (gst_clock_get_time):
18317 * gst/gstelement.h:
18318 * gst/gstinfo.c: (_gst_debug_init):
18320 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
18321 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
18323 Bump version number, we're now 0.9.0
18324 Add future debugging category.
18325 Fix NULL _unref() in _get_by_name_recurse_up
18326 Rearrange gstpad.h.
18329 2005-03-08 Wim Taymans <wim@fluendo.com>
18331 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
18332 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
18333 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
18334 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
18335 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
18336 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
18337 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
18338 * gst/elements/gstidentity.c: (gst_identity_class_init):
18339 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
18340 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
18341 * gst/elements/gstshaper.c: (gst_shaper_class_init):
18342 * gst/elements/gststatistics.c: (gst_statistics_class_init):
18343 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
18345 * gst/gstelement.c: (gst_element_class_init),
18346 (gst_element_base_class_init), (gst_element_init),
18347 (gst_element_get_random_pad), (gst_element_wait_state_change),
18348 (gst_element_change_state), (gst_element_dispose),
18349 (gst_element_finalize), (gst_element_set_loop_function):
18350 * gst/gstelement.h:
18351 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
18352 * gst/gstthread.c: (gst_thread_class_init),
18353 (gst_thread_release_children_locks), (gst_thread_change_state):
18354 * gst/schedulers/gstbasicscheduler.c:
18355 (gst_basic_scheduler_loopfunc_wrapper),
18356 (gst_basic_scheduler_chain_wrapper),
18357 (gst_basic_scheduler_src_wrapper),
18358 (gst_basic_scheduler_remove_element):
18359 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
18360 Remove threadsafe properties. Fix elements because GObject
18361 complains when installing a property before declaring a
18362 set/get_property handler.
18363 Rearrange gstelement.h file, use STATE macros for state locks.
18364 Free mutexes in the finalize method instead of dispose.
18366 2005-03-08 Wim Taymans <wim@fluendo.com>
18368 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
18369 * gst/gstthread.c: (gst_thread_release_children_locks):
18370 Added parentage check.
18371 Fix build og GstThread again.
18373 2005-03-08 Wim Taymans <wim@fluendo.com>
18375 * docs/design/part-MT-refcounting.txt:
18376 * docs/design/part-conventions.txt:
18377 * docs/design/part-gstobject.txt:
18378 * docs/design/part-relations.txt:
18379 * docs/design/part-standards.txt:
18380 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
18381 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
18382 (gst_bin_get_by_name), (gst_bin_get_by_interface),
18383 (gst_bin_iterate_all_by_interface):
18386 * gst/gstelement.c: (gst_element_class_init),
18387 (gst_element_change_state), (gst_element_set_loop_function):
18388 * gst/gstelement.h:
18389 * gst/gstiterator.c:
18390 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
18391 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
18392 (gst_object_dispatch_properties_changed), (gst_object_set_name),
18393 (gst_object_set_parent), (gst_object_unparent),
18394 (gst_object_check_uniqueness):
18396 Docs updates, clean up some headers.
18398 2005-03-07 Wim Taymans <wim@fluendo.com>
18400 * check/.cvsignore:
18401 * check/Makefile.am:
18402 * check/gst-libs/.cvsignore:
18403 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
18404 * check/gst/.cvsignore:
18405 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
18406 (START_TEST), (gstbus_suite), (main):
18407 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
18408 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
18409 (gst_data_suite), (main):
18410 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
18411 (add_fold_func), (gstiterator_suite), (main):
18412 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
18413 (thread_name_object), (thread_name_object_default),
18414 (gst_object_name_compare), (gst_object_suite), (main):
18415 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
18416 (gst_pad_suite), (main):
18417 * check/gstcheck.c: (gst_check_log_message_func),
18418 (gst_check_log_critical_func), (gst_check_init):
18419 * check/gstcheck.h:
18420 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
18421 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
18424 2005-03-07 Wim Taymans <wim@fluendo.com>
18426 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
18427 (gst_list_iterator_next), (gst_list_iterator_resync),
18428 (gst_list_iterator_free), (gst_iterator_new_list),
18429 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
18430 (gst_iterator_free), (gst_iterator_push), (filter_next),
18431 (filter_resync), (filter_uninit), (filter_free),
18432 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
18433 (gst_iterator_foreach), (find_custom_fold_func),
18434 (gst_iterator_find_custom):
18435 * gst/gstiterator.h:
18436 Added missing files.
18438 2005-03-07 Wim Taymans <wim@fluendo.com>
18442 * docs/design/part-MT-refcounting.txt:
18443 * docs/design/part-conventions.txt:
18444 * docs/design/part-gstobject.txt:
18445 * docs/design/part-relations.txt:
18446 * examples/mixer/mixer.c: (main):
18447 * examples/thread/thread.c: (eos), (main):
18449 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
18450 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
18451 (gst_spider_plug_from_srcpad):
18452 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
18453 (gst_spider_identity_change_state),
18454 (gst_spider_identity_sink_loop_type_finding):
18455 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
18456 * gst/elements/gstidentity.c: (gst_identity_init):
18457 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
18458 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
18459 * gst/elements/gsttypefindelement.c: (free_entry):
18462 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
18463 (gst_bin_set_clock_func), (gst_bin_auto_clock),
18464 (gst_bin_set_index), (gst_bin_set_element_sched),
18465 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
18466 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
18467 (gst_bin_iterate_elements), (iterate_child_recurse),
18468 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
18469 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
18470 (compare_interface), (gst_bin_get_by_interface),
18471 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
18473 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
18474 (gst_buffer_default_free), (gst_buffer_default_copy),
18475 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
18476 (gst_buffer_create_sub):
18478 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
18479 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
18480 (gst_caps_unref), (gst_static_caps_get),
18481 (gst_caps_remove_and_get_structure), (gst_caps_append),
18482 (gst_caps_append_structure), (gst_caps_remove_structure),
18483 (gst_caps_copy_nth), (gst_caps_set_simple),
18484 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
18485 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
18486 (gst_caps_structure_intersect_field), (gst_caps_intersect),
18487 (gst_caps_structure_subtract_field), (gst_caps_subtract),
18488 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
18489 (gst_caps_structure_figure_out_union),
18490 (gst_caps_switch_structures), (gst_caps_do_simplify),
18491 (gst_caps_replace), (gst_caps_from_string),
18492 (gst_caps_copy_conditional):
18494 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
18495 (_gst_clock_id_free), (gst_clock_id_unref),
18496 (gst_clock_id_compare_func), (gst_clock_id_wait),
18497 (gst_clock_id_wait_async), (gst_clock_class_init),
18498 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
18499 (gst_clock_get_time), (gst_clock_set_time_adjust),
18500 (gst_clock_set_property), (gst_clock_get_property):
18503 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
18504 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
18506 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
18507 (gst_element_requires_clock), (gst_element_provides_clock),
18508 (gst_element_set_clock), (gst_element_clock_wait),
18509 (gst_element_wait), (gst_element_set_time_delay),
18510 (gst_element_is_indexable), (gst_element_add_pad),
18511 (gst_element_add_ghost_pad), (gst_element_remove_pad),
18512 (pad_compare_name), (gst_element_get_static_pad),
18513 (gst_element_request_pad), (gst_element_get_request_pad),
18514 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
18515 (gst_element_class_get_pad_template_list),
18516 (gst_element_class_get_pad_template), (gst_element_error_func),
18517 (gst_element_get_random_pad), (gst_element_get_event_masks),
18518 (gst_element_send_event), (gst_element_seek),
18519 (gst_element_get_query_types), (gst_element_query),
18520 (gst_element_get_formats), (gst_element_convert),
18521 (gst_element_is_locked_state), (gst_element_set_locked_state),
18522 (gst_element_sync_state_with_parent), (gst_element_change_state),
18523 (gst_element_finalize), (gst_element_yield),
18524 (gst_element_interrupt), (gst_element_set_scheduler),
18525 (gst_element_get_scheduler), (gst_element_set_loop_function):
18526 * gst/gstelement.h:
18528 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
18529 (gst_format_get_by_nick), (gst_format_get_details),
18530 (gst_format_iterate_definitions):
18532 * gst/gstindex.c: (gst_index_gtype_resolver):
18535 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
18536 (gst_mem_chunk_free):
18537 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
18538 (gst_object_ref), (gst_object_unref), (gst_object_sink),
18539 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
18540 (gst_object_dispatch_properties_changed),
18541 (gst_object_set_name_default), (gst_object_set_name),
18542 (gst_object_get_name), (gst_object_set_name_prefix),
18543 (gst_object_get_name_prefix), (gst_object_set_parent),
18544 (gst_object_get_parent), (gst_object_unparent),
18545 (gst_object_check_uniqueness), (gst_object_save_thyself),
18546 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
18547 (gst_object_set_property), (gst_object_get_property),
18548 (gst_object_get_path_string):
18550 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
18551 (gst_real_pad_init), (gst_real_pad_get_property),
18552 (gst_pad_custom_new), (gst_pad_get_direction),
18553 (gst_pad_set_active), (gst_pad_is_active),
18554 (gst_pad_set_event_function), (gst_pad_is_linked),
18555 (gst_pad_link_free), (gst_pad_link_intersect),
18556 (gst_pad_link_fixate), (gst_pad_set_caps),
18557 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
18558 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
18559 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
18560 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
18561 (gst_pad_get_caps), (gst_pad_peer_get_caps),
18562 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
18563 (gst_pad_realize), (gst_pad_get_allowed_caps),
18564 (gst_real_pad_dispose), (gst_real_pad_finalize),
18565 (gst_pad_collectv), (gst_pad_collect_valist),
18566 (gst_pad_template_dispose), (gst_pad_template_new),
18567 (gst_pad_get_internal_links):
18569 * gst/gstpipeline.c: (gst_pipeline_dispose),
18570 (gst_pipeline_change_state):
18571 * gst/gstpipeline.h:
18573 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
18574 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
18575 * gst/gstpluginfeature.h:
18576 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
18577 * gst/gstquery.c: (_gst_query_type_initialize),
18578 (gst_query_type_register), (gst_query_type_get_by_nick),
18579 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
18581 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
18582 * gst/gstscheduler.c: (gst_scheduler_add_element),
18583 (gst_scheduler_factory_create):
18584 * gst/gststructure.c: (gst_structure_set_parent_refcount),
18585 (gst_structure_free), (gst_structure_set_name),
18586 (gst_structure_id_set_value), (gst_structure_set_value),
18587 (gst_structure_set_valist), (gst_structure_remove_field),
18588 (gst_structure_remove_fields),
18589 (gst_structure_remove_fields_valist),
18590 (gst_structure_remove_all_fields), (gst_structure_foreach),
18591 (gst_structure_map_in_place),
18592 (gst_caps_structure_fixate_field_nearest_int),
18593 (gst_caps_structure_fixate_field_nearest_double):
18594 * gst/gststructure.h:
18595 * gst/gstsystemclock.c: (gst_system_clock_class_init),
18596 (gst_system_clock_init), (gst_system_clock_dispose),
18597 (gst_system_clock_async_thread),
18598 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
18599 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
18600 * gst/gstsystemclock.h:
18601 * gst/gsttag.c: (gst_tag_list_add_value_internal),
18602 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
18603 * gst/gsttaginterface.c:
18604 * gst/gstthread.c: (gst_thread_dispose),
18605 (gst_thread_release_children_locks), (gst_thread_change_state),
18606 (gst_thread_main_loop):
18607 * gst/gsttrashstack.h:
18608 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
18610 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
18611 (gst_element_request_pad), (gst_element_get_pad_from_template),
18612 (gst_element_request_compatible_pad),
18613 (gst_element_get_compatible_pad_filtered),
18614 (gst_element_get_compatible_pad), (gst_element_state_get_name),
18615 (gst_element_link_pads_filtered), (gst_element_link_filtered),
18616 (gst_element_link_many), (gst_element_link),
18617 (gst_element_link_pads), (gst_element_unlink_pads),
18618 (gst_element_unlink_many), (gst_element_unlink),
18619 (gst_pad_can_link_filtered), (gst_pad_can_link),
18620 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
18621 (gst_object_default_error), (gst_bin_add_many),
18622 (gst_bin_remove_many), (gst_element_populate_std_props),
18623 (gst_element_class_install_std_props), (gst_buffer_merge),
18624 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
18625 (link_fold_func), (gst_pad_proxy_setcaps):
18627 * gst/gstvalue.c: (gst_value_deserialize_string):
18628 * gst/parse/grammar.y:
18629 * gst/schedulers/gstbasicscheduler.c:
18630 (gst_basic_scheduler_cothreaded_chain),
18631 (gst_basic_scheduler_chain_recursive_add),
18632 (gst_basic_scheduler_pad_link):
18633 * gst/schedulers/gstoptimalscheduler.c:
18634 (get_group_schedule_function),
18635 (gst_opt_scheduler_state_transition),
18636 (gst_opt_scheduler_add_element), (element_get_reachables_func):
18637 * libs/gst/bytestream/bytestream.c:
18638 * libs/gst/dataprotocol/dataprotocol.c:
18639 (gst_dp_header_from_buffer):
18642 * tests/threadstate/threadstate2.c: (eos):
18643 * tools/gst-compprep.c: (main):
18644 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
18645 (print_pad_info), (print_children_info):
18646 * tools/gst-launch.c: (idle_func), (main):
18647 * tools/gst-md5sum.c: (idle_func), (main):
18648 * tools/gst-xmlinspect.c: (print_element_info):
18649 First THREADED backport attempt, focusing on adding locks and
18650 making sure the API is threadsafe. Needs more work. More docs
18653 2005-02-24 Andy Wingo <wingo@pobox.com>
18655 * tests/bench-complexity.scm:
18656 * tests/complexity.gnuplot: New files, good for running complexity
18659 * tests/Makefile.am:
18660 * tests/complexity.c: New test, sets up N elements, at each level
18661 teeing into M streams per element. Eeeenteresting.
18663 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
18664 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
18665 running bench-mass_elements.scm.
18667 * tests/bench-mass_elements.scm: New script, runs mass_elements
18668 for various numbers of identities, outputting the results to a
18669 file. Requires guile 1.6. Just for testing.
18671 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
18673 * gst/schedulers/fairscheduler.c:
18674 compile with debug disabled
18676 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
18679 hunting season on 0.9 is now OPEN