Commit graph

3389 commits

Author SHA1 Message Date
Stefan Kost
f1235bdbd8 gst/gstregistrybinary.c: Print error just once and with additional info.
Original commit message from CVS:
* gst/gstregistrybinary.c: (gst_registry_binary_check_magic),
(gst_registry_binary_load_feature),
(gst_registry_binary_load_plugin),
(gst_registry_binary_read_cache):
Print error just once and with additional info.
2007-07-24 13:44:04 +00:00
Stefan Kost
308e3f4410 libs/gst/base/gsttypefindhelper.c: Cleanup the typefindhelper code and add private doc comments.
Original commit message from CVS:
* libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
(helper_find_suggest), (helper_find_get_length),
(gst_type_find_helper_get_range), (buf_helper_find_suggest),
(gst_type_find_helper_for_buffer):
Cleanup the typefindhelper code and add private doc comments.
2007-07-24 13:38:21 +00:00
Edward Hervey
44dbaa02d5 plugins/elements/gstcapsfilter.c: Fix capsfilter for cases where the caps set on capsfilter will provide additional i...
Original commit message from CVS:
* plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
(gst_capsfilter_transform_size), (gst_capsfilter_prepare_buf):
Fix capsfilter for cases where the caps set on capsfilter will provide
additional information.
Fixes #449197
2007-07-24 12:32:31 +00:00
Stefan Kost
6a246a8954 gst/gsttypefindfactory.c: Fix docs that recommened wrong function to use.
Original commit message from CVS:
* gst/gsttypefindfactory.c:
Fix docs that recommened wrong function to use.
2007-07-24 11:31:09 +00:00
Stefan Kost
ab00ed8989 tools/gst-inspect.c: Also give media-type for typefinders in element output.
Original commit message from CVS:
* tools/gst-inspect.c: (print_plugin_features):
Also give media-type for typefinders in element output.
2007-07-23 13:03:43 +00:00
Stefan Kost
a6b990938e gst/gstregistry.*: Speed up gst_registry_lookup_feature_locked() by using a hashmap.
Original commit message from CVS:
* gst/gstregistry.c: (gst_registry_init), (gst_registry_finalize),
(gst_registry_remove_features_for_plugin_unlocked),
(gst_registry_add_feature), (gst_registry_remove_feature),
(gst_registry_lookup_feature_locked):
* gst/gstregistry.h:
Speed up gst_registry_lookup_feature_locked() by using a hashmap.
Fixes #459501.
2007-07-23 11:42:12 +00:00
Stefan Kost
163242c644 gst/gstpluginfeature.c: Avoid double memory usage for pluginfeature names. Fixes #459466.
Original commit message from CVS:
* gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
(gst_plugin_feature_set_name):
Avoid double memory usage for pluginfeature names. Fixes #459466.
2007-07-23 10:39:10 +00:00
Tim-Philipp Müller
2a97e6f23e gst/gstpad.h: Small addition to GST_FLOW_IS_FATAL() docs: mention that elements driving the pipeline may need to expl...
Original commit message from CVS:
* gst/gstpad.h:
Small addition to GST_FLOW_IS_FATAL() docs: mention that elements
driving the pipeline may need to explicitly check for NOT_LINKED as
well, since IS_FATAL doesn't cover that.
2007-07-22 18:26:32 +00:00
Tim-Philipp Müller
fc135f7f7c docs/pwg/advanced-types.xml: Fix typo and duplicate entry in video formats list.
Original commit message from CVS:
* docs/pwg/advanced-types.xml:
Fix typo and duplicate entry in video formats list.
2007-07-22 18:16:19 +00:00
Sebastian Dröge
4a99b7d300 libs/gst/controller/gstinterpolation.c: Also round to the nearest int when using cubic interpolation.
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c:
Also round to the nearest int when using cubic interpolation.
2007-07-22 12:18:46 +00:00
Jan Schmidt
a6df9f4bac libs/gst/controller/gstinterpolation.c: When linearly interpolating integer types, round to the nearest int by adding...
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c:
When linearly interpolating integer types, round to the nearest int
by adding 0.5. Don't do it for float/double types.
Fixes the failing controller test on my machine, which is somehow
rounding differently than on the buildbots.
2007-07-21 21:20:37 +00:00
Stefan Kost
833590f239 tools/gst-plot-timeline.py: Better log parsing (categories can have -). Adjust text vs. lines, so that they span the ...
Original commit message from CVS:
* tools/gst-plot-timeline.py:
Better log parsing (categories can have -). Adjust text vs. lines, so
that they span the same y-range.
2007-07-20 07:36:44 +00:00
Stefan Kost
1a140c99a6 docs/random/ensonic/: Save my thoughts.
Original commit message from CVS:
* docs/random/ensonic/audiobaseclasses.txt:
* docs/random/ensonic/dynlink.txt:
* docs/random/ensonic/profiling.txt:
Save my thoughts.
* docs/random/moving-plugins:
Add note to use g_assert type macros.
2007-07-20 07:26:39 +00:00
Stefan Kost
e99d464ea9 Add libm check as we use in for plugins.
Original commit message from CVS:
* configure.ac:
* libs/gst/check/Makefile.am:
Add libm check as we use in for plugins.
2007-07-20 07:09:11 +00:00
Jan Schmidt
6c0e00bba0 gst/gstbin.c: Check that the state_cookie hasn't changed since the continue_func was scheduled. Avoids problems where...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_continue_func):
Check that the state_cookie hasn't changed since the continue_func
was scheduled. Avoids problems where the state changes back to
something it shouldn't be because it was changed in the meantime.
2007-07-18 14:31:21 +00:00
Stefan Kost
2a643f27d1 gst/gstregistrybinary.c: Fix memory leak. Be less verbose in the log.
Original commit message from CVS:
* gst/gstregistrybinary.c: (gst_registry_binary_save_const_string),
(gst_registry_binary_save_string),
(gst_registry_binary_save_pad_template),
(gst_registry_binary_save_feature),
(gst_registry_binary_save_plugin),
(gst_registry_binary_load_feature),
(gst_registry_binary_load_plugin),
(gst_registry_binary_read_cache):
Fix memory leak. Be less verbose in the log.
2007-07-17 09:44:51 +00:00
Jan Schmidt
6dd78d6bed tests/check/elements/.cvsignore: Add file to cvsignore as commanded.
Original commit message from CVS:
* tests/check/elements/.cvsignore:
Add file to cvsignore as commanded.
2007-07-16 16:44:31 +00:00
Jan Schmidt
4fb00301dd tests/check/elements/multiqueue.c: Use a GStaticMutex to protect all cases where libcheck fail_if/fail_unless macros ...
Original commit message from CVS:
* tests/check/elements/multiqueue.c: (mq_dummypad_chain),
(mq_dummypad_event), (run_output_order_test):
Use a GStaticMutex to protect all cases where libcheck
fail_if/fail_unless macros might be called from multiple threads
simultaneously to avoid errors like:
"check_pack.c:107: :-1081725400:Bad message type arg"
2007-07-16 16:04:49 +00:00
Jan Schmidt
54eb646c3e tests/check/pipelines/stress.c: Make sure we set the pipeline back to the NULL state before dropping our final refere...
Original commit message from CVS:
* tests/check/pipelines/stress.c: (GST_START_TEST):
Make sure we set the pipeline back to the NULL state before
dropping our final reference.
2007-07-16 15:19:06 +00:00
Jan Schmidt
615cc36296 tests/check/elements/tee.c: Make the tee stress-test a little less stressful so it doesn't just time out on slow-mach...
Original commit message from CVS:
* tests/check/elements/tee.c: (GST_START_TEST):
Make the tee stress-test a little less stressful so it doesn't just
time out on slow-machines, and remove a small race when it's starting
up by adding a get_state() call.
2007-07-16 14:55:26 +00:00
Stefan Kost
8575f8f068 gst/gst.c: Avoid reading registry twice on startup. Fixes #457322.
Original commit message from CVS:
* gst/gst.c:
Avoid reading registry twice on startup. Fixes #457322.
2007-07-16 12:36:18 +00:00
Jan Schmidt
b24276b207 pkgconfig/: Substitute the CFLAGS for libcheck into our .pc file too so that dependent modules will pick it up proper...
Original commit message from CVS:
* pkgconfig/gstreamer-check-uninstalled.pc.in:
* pkgconfig/gstreamer-check.pc.in:
Substitute the CFLAGS for libcheck into our .pc file too so that
dependent modules will pick it up properly if libcheck is installed
into some other prefix.
2007-07-13 14:11:22 +00:00
Jan Schmidt
dd064a2a2d configure.ac: Revert the pkg-config check for libcheck, since it pulls in the wrong non-PIC libcheck.a on Ubuntu and ...
Original commit message from CVS:
* configure.ac:
Revert the pkg-config check for libcheck, since it pulls in the
wrong non-PIC libcheck.a on Ubuntu and probably Fedora too. We need
a proper solution, either from the check project, or something else.
2007-07-13 13:49:14 +00:00
Stefan Kost
0e4bd38e13 configure.ac: Use pkg-config to locate check.
Original commit message from CVS:
* configure.ac:
Use pkg-config to locate check.
2007-07-12 11:10:22 +00:00
Stefan Kost
54529a756e gst/gsttaglist.c: Fix doc syntax.
Original commit message from CVS:
* gst/gsttaglist.c:
Fix doc syntax.
* gst/gstutils.c:
* gst/gstutils.h:
Add deprecation guards.
* libs/gst/base/gstcollectpads.h:
Don't document object (this is implicitly private).
2007-07-10 20:10:16 +00:00
Tim-Philipp Müller
cf8abdf3a3 gst/gststructure.c: When deserialising foo=bar without a type cast, check if it's a boolean before falling back to a ...
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_parse_value):
When deserialising foo=bar without a type cast, check if it's a
boolean before falling back to a string type, otherwise things like
audiotestsrc ! audio/x-raw-int,signed=true ! fakesink won't work,
because the filtercaps end up having a signed=(string)true field,
which causes problems later when intersection caps.
* tests/check/gst/gststructure.c: (GST_START_TEST):
Add a unit test for this.
2007-07-08 14:11:53 +00:00
Sebastian Dröge
286cd75855 libs/gst/controller/: API: Refactor GstController into the core controller which can take a GstControlSource for prov...
Original commit message from CVS:
Reviewed by: Stefan Kost <ensonic@users.sf.net>
* libs/gst/controller/Makefile.am:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_add_interpolation_control_source),
(gst_controlled_property_new), (gst_controlled_property_free),
(gst_controller_find_controlled_property),
(gst_controller_new_valist), (gst_controller_new_list),
(gst_controller_new), (gst_controller_remove_properties_valist),
(gst_controller_remove_properties_list),
(gst_controller_remove_properties),
(gst_controller_set_property_disabled),
(gst_controller_set_disabled), (gst_controller_set_control_source),
(gst_controller_get_control_source), (gst_controller_get),
(gst_controller_sync_values), (gst_controller_get_value_array),
(_gst_controller_dispose), (gst_controller_get_type),
(gst_controlled_property_set_interpolation_mode),
(gst_controller_set), (gst_controller_set_from_list),
(gst_controller_unset), (gst_controller_unset_all),
(gst_controller_get_all), (gst_controller_set_interpolation_mode):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gstcontrolsource.c:
(gst_control_source_class_init), (gst_control_source_init),
(gst_control_source_get_value),
(gst_control_source_get_value_array), (gst_control_source_bind):
* libs/gst/controller/gstcontrolsource.h:
* libs/gst/controller/gsthelper.c: (gst_object_set_control_source),
(gst_object_get_control_source):
* libs/gst/controller/gstinterpolation.c:
(gst_interpolation_control_source_find_control_point_node),
(gst_interpolation_control_source_get_first_value),
(_interpolate_none_get), (interpolate_none_get),
(interpolate_none_get_boolean_value_array),
(interpolate_none_get_enum_value_array),
(interpolate_none_get_string_value_array),
(_interpolate_trigger_get), (interpolate_trigger_get),
(interpolate_trigger_get_boolean_value_array),
(interpolate_trigger_get_enum_value_array),
(interpolate_trigger_get_string_value_array):
* libs/gst/controller/gstinterpolationcontrolsource.c:
(gst_control_point_free), (gst_interpolation_control_source_reset),
(gst_interpolation_control_source_new),
(gst_interpolation_control_source_set_interpolation_mode),
(gst_interpolation_control_source_bind),
(gst_control_point_compare), (gst_control_point_find),
(gst_interpolation_control_source_set_internal),
(gst_interpolation_control_source_set),
(gst_interpolation_control_source_set_from_list),
(gst_interpolation_control_source_unset),
(gst_interpolation_control_source_unset_all),
(gst_interpolation_control_source_get_all),
(gst_interpolation_control_source_get_count),
(gst_interpolation_control_source_init),
(gst_interpolation_control_source_finalize),
(gst_interpolation_control_source_dispose),
(gst_interpolation_control_source_class_init):
* libs/gst/controller/gstinterpolationcontrolsource.h:
* libs/gst/controller/gstinterpolationcontrolsourceprivate.h:
API: Refactor GstController into the core controller which can take
a GstControlSource for providing actual values for timestamps.
Implement a interpolation control source and use this for backward
compatibility, deprecate a bunch of functions that are now handled
by GstControlSource or GstInterpolationControlSource.
Make it possible to disable the controller completely or only for
specific properties. Fixes #450711.
* docs/libs/gstreamer-libs-docs.sgml:
* docs/libs/gstreamer-libs-sections.txt:
* docs/libs/gstreamer-libs.types:
Add new functions and classes to the docs.
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
* tests/examples/controller/audio-example.c: (main):
Port unit test and example to the new API and add some new
unit tests.
2007-07-06 21:50:02 +00:00
Mark Nauwelaerts
fc70188d3e plugins/elements/gstmultiqueue.c: Implement non-default GstPadIntLinkFunction for multiqueue pads so that the pipelin...
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet be>
* plugins/elements/gstmultiqueue.c:
(gst_multi_queue_get_internal_links), (apply_buffer),
(single_queue_overrun_cb), (gst_single_queue_new):
Implement non-default GstPadIntLinkFunction for multiqueue pads so that
the pipeline layout can be tracked correctly. Fixes #453732.
2007-07-05 09:06:02 +00:00
Stefan Kost
06aa9c442b docs/: Simplity --extra-dir as gtkdoc scans recursively.
Original commit message from CVS:
* docs/gst/Makefile.am:
* docs/libs/Makefile.am:
* docs/plugins/Makefile.am:
Simplity --extra-dir as gtkdoc scans recursively.
2007-07-05 08:42:42 +00:00
Wim Taymans
94828d9ac6 tools/gst-launch.c: When we got an error, there is no point in waiting for preroll when shutting down.
Original commit message from CVS:
* tools/gst-launch.c: (main):
When we got an error, there is no point in waiting for preroll when
shutting down.
2007-07-03 17:01:51 +00:00
Wim Taymans
4cc7b818fd plugins/elements/gsttee.c: Be a lot smarter when deciding what srcpad to use for proxying the buffer_alloc. Also hand...
Original commit message from CVS:
* plugins/elements/gsttee.c: (gst_tee_base_init),
(gst_tee_request_new_pad), (gst_tee_release_pad),
(gst_tee_find_buffer_alloc), (gst_tee_buffer_alloc),
(gst_tee_do_push), (clear_pads), (gst_tee_handle_buffer),
(gst_tee_chain):
Be a lot smarter when deciding what srcpad to use for proxying
the buffer_alloc. Also handle pad added/removed when doing so.
Fixes #357959.
Keep track of what pads we already pushed on in case we have pads
added/removed while pushing. Fixes #374639
* tests/check/Makefile.am:
* tests/check/elements/tee.c: (handoff), (GST_START_TEST),
(tee_suite):
Added unit test for pad resync.
2007-07-03 16:26:29 +00:00
Thomas Vander Stichele
f26d1795b9 po/: Updated translations.
Original commit message from CVS:
* po/nl.po:
* po/sv.po:
Updated translations.
2007-07-01 21:31:18 +00:00
Thomas Vander Stichele
5a992c1370 po/: Added new Finnish translation.
Original commit message from CVS:
translation by: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>
* po/LINGUAS:
* po/fi.po:
Added new Finnish translation.
2007-07-01 21:30:09 +00:00
Wim Taymans
45bed69a60 plugins/elements/gstmultiqueue.c: When figuring out when a queue is filled, use our internal time estimate based on s...
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (apply_buffer),
(single_queue_overrun_cb):
When figuring out when a queue is filled, use our internal time estimate
based on segments, just like check_full does.
2007-06-28 11:25:17 +00:00
Jan Schmidt
4b239eb63b Mention bug 430682 closed by previous commit.
Original commit message from CVS:

Mention bug 430682 closed by previous commit.
2007-06-27 11:47:46 +00:00
Stefan Kost
d661fd332c gst/gstminiobject.c: Remove 3 do-nothing methods.
Original commit message from CVS:
* gst/gstminiobject.c: (gst_mini_object_get_type):
Remove 3 do-nothing methods.
2007-06-27 11:43:04 +00:00
Tim Angus
463f0b09f3 plugins/elements/gstcapsfilter.c: Take a reference instead of a copy when setting "caps".
Original commit message from CVS:
Patch by: Tim Angus <tim at ngus dot net>
* plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
(gst_capsfilter_set_property):
Take a reference instead of a copy when setting "caps".
Fix documentation to clarify this behaviour. Fixes #449414.
2007-06-27 11:24:08 +00:00
Stefan Kost
1756e6aa87 gst/: Remove empty instance_init() functions to save relocs and lessen the noise. Remove some of the function prototy...
Original commit message from CVS:
* gst/gstindexfactory.c: (gst_index_factory_get_type):
* gst/gstplugin.c: (gst_plugin_init):
* gst/gstpluginfeature.c: (gst_plugin_feature_init):
* gst/gstquery.c: (gst_query_get_type):
* gst/gstregistry.c: (gst_registry_init):
* gst/gsturi.c: (gst_uri_handler_base_init):
Remove empty instance_init() functions to save relocs and lessen the
noise. Remove some of the function prototypes that are doubled by
G_DEFINE_TYPE.
2007-06-27 10:12:14 +00:00
Étienne Noreau-Hébert
8aff242e77 gst/gstghostpad.c: Add peer and direction in the XML serialisation of ghostpads.
Original commit message from CVS:
Patch by: Étienne Noreau-Hébert <etienne at deepunder dot org>
* gst/gstghostpad.c: (gst_proxy_pad_save_thyself):
Add peer and direction in the XML serialisation of ghostpads.
Fixes #449226.
2007-06-27 09:34:01 +00:00
Stefan Kost
90f4e13ae7 configure.ac: Preserve useful information, thanks Tim.
Original commit message from CVS:
* configure.ac:
Preserve useful information, thanks Tim.
2007-06-26 16:24:20 +00:00
Jan Schmidt
afebd394fa plugins/elements/gstmultiqueue.*: Take the multiqueue lock when updating the fill level so we don't get confused.
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (gst_multi_queue_init),
(gst_single_queue_flush), (apply_segment), (apply_buffer),
(gst_single_queue_push_one), (gst_multi_queue_loop),
(gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
(gst_multi_queue_src_activate_push), (wake_up_next_non_linked),
(compute_high_id), (gst_single_queue_new):
* plugins/elements/gstmultiqueue.h:
Take the multiqueue lock when updating the fill level so we don't get
confused.
After applying a buffer or event on the src pad segment, make sure to
call gst_data_queue_limits_changed() to get the data queue to unblock
and check the filled state again.
Rework the not-linked pad handling so the logic is that not-linked
pads can push as fast as they like, but only so they never get
ahead of any linked pads.
* tests/check/elements/multiqueue.c: (mq_sinkpad_to_srcpad),
(mq_dummypad_getcaps), (mq_dummypad_chain), (mq_dummypad_event),
(run_output_order_test), (GST_START_TEST), (multiqueue_suite):
Add a test to check that not-linked pads always stay behind
linked pads.
2007-06-26 14:45:15 +00:00
Jan Schmidt
5c14a4f3d8 docs/random/release: Some updates to the release procedure.
Original commit message from CVS:
* docs/random/release:
Some updates to the release procedure.
2007-06-26 11:57:23 +00:00
Stefan Kost
0aeac41ffd gst/gstelementfactory.c: Microoptimization that saves stunning 80 bytes.
Original commit message from CVS:
* gst/gstelementfactory.c: (__gst_element_details_clear):
Microoptimization that saves stunning 80 bytes.
2007-06-26 08:26:36 +00:00
Stefan Kost
c38d50ed06 docs/plugins/: Update docs with caps info.
Original commit message from CVS:
* docs/plugins/gstreamer-plugins.args:
* docs/plugins/inspect/plugin-coreelements.xml:
* docs/plugins/inspect/plugin-coreindexers.xml:
Update docs with caps info.
2007-06-25 12:35:46 +00:00
Thomas Vander Stichele
961278918e po/it.po: Updated Italian translation.
Original commit message from CVS:
* po/it.po:
Updated Italian translation.
2007-06-23 22:56:28 +00:00
Thomas Vander Stichele
aefa676451 po/: Update Vietnamese translations.
Original commit message from CVS:
* ChangeLog:
* po/vi.po:
Update Vietnamese translations.
2007-06-23 11:15:11 +00:00
Tim-Philipp Müller
1a87e450ee libs/gst/base/gstbasesink.c: Remove unused signal enum.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c:
Remove unused signal enum.
2007-06-21 22:37:27 +00:00
Jan Schmidt
71766af8c2 Beef up and include the docs for gst_type_register_static_full and gst_element_class_set_details_simple and add the A...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstelement.c:
* gst/gstutils.c: (gst_type_register_static_full):
Beef up and include the docs for gst_type_register_static_full and
gst_element_class_set_details_simple and add the API keyword
in the ChangeLog.
2007-06-21 16:39:01 +00:00
Wim Taymans
a689b50cab plugins/elements/gstmultiqueue.c: Fix setting max-* properties after adding queues.
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (gst_multi_queue_set_property),
(update_time_level), (gst_single_queue_push_one),
(gst_multi_queue_chain), (gst_multi_queue_sink_event),
(single_queue_overrun_cb), (single_queue_underrun_cb),
(single_queue_check_full):
Fix setting max-* properties after adding queues.
Use IS_FILLED for checking visible items.
Signal overrun if multiple queues overrun.
Add extra debug output.
Patch by: Wim Taymans <wim@fluendo.com>
2007-06-21 14:35:03 +00:00
Stefan Kost
9eeb1c8e2b Saving relocations for GTypeInfo and GstElementDetails. Fixes #437457.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_class_set_details_simple):
* gst/gstelement.h:
* gst/gstutils.c: (gst_type_register_static_full):
* gst/gstutils.h:
* plugins/elements/gstcapsfilter.c: (gst_capsfilter_base_init):
* plugins/elements/gstfakesink.c: (gst_fake_sink_base_init):
* plugins/elements/gstfakesrc.c: (gst_fake_src_base_init):
* plugins/elements/gstfdsink.c: (gst_fd_sink_base_init):
* plugins/elements/gstfdsrc.c: (gst_fd_src_base_init):
* plugins/elements/gstfilesink.c: (gst_file_sink_base_init):
* plugins/elements/gstfilesrc.c: (gst_file_src_base_init):
* plugins/elements/gstidentity.c: (gst_identity_base_init):
* plugins/elements/gstmultiqueue.c: (gst_multi_queue_base_init):
* plugins/elements/gstqueue.c: (gst_queue_base_init),
(apply_buffer), (gst_queue_chain):
* plugins/elements/gsttee.c: (gst_tee_base_init):
* plugins/elements/gsttypefindelement.c:
(gst_type_find_element_base_init),
(gst_type_find_element_class_init):
Saving relocations for GTypeInfo and GstElementDetails. Fixes #437457.
2007-06-21 14:29:05 +00:00
Tim-Philipp Müller
9dd0ba7c8f docs/pwg/advanced-types.xml: Fix typo in iana.org URI.
Original commit message from CVS:
* docs/pwg/advanced-types.xml:
Fix typo in iana.org URI.
2007-06-21 09:46:02 +00:00
Andy Wingo
4e1c9c226a tests/check/pipelines/simple-launch-lines.c
Original commit message from CVS:
2007-06-19  Andy Wingo  <wingo@pobox.com>

* tests/check/pipelines/simple-launch-lines.c
(test_state_change_returns): Enable pull-mode tests now that
basesink has been fixed.

* libs/gst/base/gstbasesink.c (gst_base_sink_needs_preroll):
Changed from gst_base_sink_is_prerolled, reversing the sense of
the return value. Returns FALSE also if the sink is in pull mode,
in which case it needs no preroll.
(gst_base_sink_query, gst_base_sink_change_state): Update for
needs_preroll change.
(gst_base_sink_change_state): Add a case for READY_TO_PAUSED after
chaining up, in which we return SUCCESS directly if we activated
in pull mode instead of ASYNC. Involves countering an async_start
message sent before chaining up; not sure if this is correct, in
an ideal world we only send async-start when activating in push
mode.
2007-06-19 21:58:30 +00:00
Andy Wingo
b0c2d05640 tests/check/pipelines/simple-launch-lines.c
Original commit message from CVS:
2007-06-19  Andy Wingo  <wingo@pobox.com>

* tests/check/pipelines/simple-launch-lines.c
(test_state_change_returns): New test, partially disabled until
basesink is fixed.
2007-06-19 21:28:54 +00:00
Wim Taymans
919dfdbfb3 plugins/elements/gstmultiqueue.c: Fix event leak.
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (apply_buffer),
(gst_multi_queue_sink_event):
Fix event leak.
2007-06-19 16:05:11 +00:00
Wim Taymans
e599053491 gst/gstbin.c: Move the common code for posting state-change messages into one function.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
(gst_bin_change_state_func), (bin_push_state_continue),
(bin_handle_async_start), (bin_handle_async_done),
(gst_bin_handle_message_func):
Move the common code for posting state-change messages into
one function.
Broadcast the state signal after we posted the messages.
Mark the bin as busy when it's doing a state-change.
Make sure async-start/done messages don't interfere with the bin's
state when it's busy.
After the state change, let the bin check which elements completed the
state change while it was busy so that it can update its state.
2007-06-19 10:41:33 +00:00
Jan Schmidt
1c0bafd86f docs/random/release: Add a note about updating the doap file to the release checklist
Original commit message from CVS:
* docs/random/release:
Add a note about updating the doap file to the release checklist
2007-06-19 10:38:39 +00:00
Wim Taymans
d6efd96ec4 plugins/elements/gstmultiqueue.c: Make sure we don't reference the buffer/event after we have given away ownership in...
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (apply_buffer),
(gst_single_queue_push_one), (gst_multi_queue_chain),
(gst_multi_queue_sink_event):
Make sure we don't reference the buffer/event after we have given away
ownership in the queue.
2007-06-18 16:44:07 +00:00
Wim Taymans
8fb713783b plugins/elements/gstmultiqueue.c: Update queue state _after_ adding the item in the queue because else we could end u...
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (gst_single_queue_flush),
(gst_multi_queue_chain), (gst_multi_queue_sink_event):
Update queue state _after_ adding the item in the queue because else we
could end up being full without the element added yet.
2007-06-18 15:15:32 +00:00
Wim Taymans
0b3153873b gst/gstbin.*: Immediatly commit the toplevel bin state when receiving an async-done message. This enables us to avoid...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
(gst_bin_remove_func), (gst_bin_get_state_func),
(gst_bin_element_set_state), (gst_bin_continue_func),
(bin_push_state_continue), (bin_handle_async_start),
(bin_handle_async_done), (gst_bin_handle_message_func):
* gst/gstbin.h:
Immediatly commit the toplevel bin state when receiving an async-done
message. This enables us to avoid spawning a thread to commit the state
in some common cases and it also avoids some races.
Avoid spawning a state thread when adding/removing async elements to a
toplevel bin. Instead we immediatly update the bin state.
Get rid of iterating all the children when getting the state in the bin
because it is now always up-to-date.
Fix bug where locked elements would always return _SUCCESS even it they
returned NO_PREROLL before being locked.
Fix the order of the state_change, async-start/done messages that was
sometimes incorrect.
Mark the state_dirty field as deprecated, we don't need it anymore as we
are always up-to-date.
* gst/gstelement.c: (gst_element_get_state_func),
(gst_element_continue_state):
Small debug inprovements.
Return the previous element state return when nothing is pending instead
of blindly returning SUCCESS.
* tests/check/generic/sinks.c: (GST_START_TEST), (pad_blocked_cb),
(gst_sinks_suite):
Add a whole bunch of new testcases.
2007-06-18 15:12:28 +00:00
Thomas Vander Stichele
43efcf4222 po/: Update translations.
Original commit message from CVS:
* po/uk.po:
* po/vi.po:
Update translations.
2007-06-17 17:26:48 +00:00
Jan Schmidt
ba9acc9b57 gst/gstpad.c: Fix typo in the docs.
Original commit message from CVS:
* gst/gstpad.c:
Fix typo in the docs.
2007-06-15 14:37:28 +00:00
Wim Taymans
864d257e83 docs/libs/gstreamer-libs-sections.txt: Add docs for new methods.
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
Add docs for new methods.
2007-06-15 11:49:24 +00:00
Wim Taymans
b0801cc962 plugins/elements/gstmultiqueue.c: Don't use GSlice because we don't depend on >= 2.10 yet.
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (gst_multi_queue_item_destroy),
(gst_multi_queue_item_new):
Don't use GSlice because we don't depend on >= 2.10 yet.
2007-06-15 11:35:22 +00:00
Wim Taymans
7eeb31033d plugins/elements/gstmultiqueue.c: Remove debug printf.
Original commit message from CVS:
* plugins/elements/gstmultiqueue.c: (gst_single_queue_flush),
(update_time_level), (apply_segment), (apply_buffer),
(gst_single_queue_push_one), (gst_multi_queue_item_new),
(gst_multi_queue_loop), (gst_multi_queue_sink_activate_push),
(gst_multi_queue_sink_event), (single_queue_overrun_cb),
(single_queue_underrun_cb), (single_queue_check_full):
Remove debug printf.
2007-06-15 11:09:38 +00:00
Wim Taymans
0a3da772bb libs/gst/base/gstdataqueue.*: Various cleanups.
Original commit message from CVS:
* libs/gst/base/gstdataqueue.c: (gst_data_queue_cleanup),
(gst_data_queue_finalize), (gst_data_queue_locked_is_empty),
(gst_data_queue_set_flushing), (gst_data_queue_push),
(gst_data_queue_pop), (gst_data_queue_drop_head),
(gst_data_queue_limits_changed), (gst_data_queue_get_level):
* libs/gst/base/gstdataqueue.h:
Various cleanups.
Added methods to get the current levels and to inform the queue that the
'full' limits changed.
* plugins/elements/gstmultiqueue.c: (gst_multi_queue_init),
(gst_multi_queue_finalize), (gst_multi_queue_set_property),
(gst_single_queue_flush), (update_time_level), (apply_segment),
(apply_buffer), (gst_single_queue_push_one),
(gst_multi_queue_item_steal_object),
(gst_multi_queue_item_destroy), (gst_multi_queue_item_new),
(gst_multi_queue_loop), (gst_multi_queue_chain),
(gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
(gst_multi_queue_getcaps), (gst_multi_queue_src_activate_push),
(gst_multi_queue_src_query), (single_queue_overrun_cb),
(single_queue_underrun_cb), (single_queue_check_full),
(gst_single_queue_new):
Keep track of time in the queue by measuring the difference between
running_time on input and output. This gives more accurate results and
can compensate for segments correctly.
Make a queue by default only 5 buffers deep. We will now increase the
buffer size depending on the filledness of the other queues.
Factor out commong flush code.
Make sure we don't add additional refcounts to buffers when we can avoid
it.
Propagate GstFlowReturn differently.
Use GSlice for intermediate GstMultiQueueItems.
Keep track of EOS.
Resize queues on over and underruns based on filled level of other
queues.
When checking if the queue is filled, prefer to measure in time if we
can and fall back to bytes when no time is known.
* plugins/elements/gstqueue.c:
Fix return value.
2007-06-15 11:00:32 +00:00
Wim Taymans
58cc3d675b libs/gst/base/gstbasetransform.c: Work around the brokenness of the event vmethod in basetransform. Prefer to return ...
Original commit message from CVS:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_sink_event):
Work around the brokenness of the event vmethod in basetransform. Prefer
to return TRUE when the subclass returned FALSE (meaning don't forward
the event).
* libs/gst/base/gstbasetransform.h:
Clarify the docs.
2007-06-15 10:48:19 +00:00
Wim Taymans
3d4e515e77 Improve debugging.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_push_event), (gst_pad_send_event):
* libs/gst/base/gstbasesrc.c: (gst_base_src_query_latency),
(gst_base_src_default_query), (gst_base_src_get_range),
(gst_base_src_start):
* tests/check/pipelines/parse-launch.c: (setup_pipeline):
Improve debugging.
2007-06-15 10:43:51 +00:00
Stefan Kost
0caaa7deee docs/pwg/advanced-types.xml: Added more formats to caps table.
Original commit message from CVS:
* docs/pwg/advanced-types.xml:
Added more formats to caps table.
2007-06-15 07:27:00 +00:00
Stefan Kost
ce6c77cf48 tools/gst-launch.c: Remove crufy code. GOption does not need this workaround.
Original commit message from CVS:
* tools/gst-launch.c: (main):
Remove crufy code. GOption does not need this workaround.
2007-06-15 07:02:04 +00:00
Stefan Kost
fd12f4b150 libs/gst/controller/gstcontroller.c: Fix wrong getter for enums in controller.
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode):
Fix wrong getter for enums in controller.
2007-06-14 20:29:09 +00:00
Tim-Philipp Müller
b896ba8452 libs/gst/check/gstcheck.c: Intercept criticals and warnings in the Gst-Phonon log domain, so
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_init):
Intercept criticals and warnings in the Gst-Phonon log domain, so
ASSERT_CRITICAL() etc. can be used in gst-phonon's unit tests as
well.
2007-06-14 17:36:19 +00:00
Edward Hervey
032bd4cbd8 gst/gstparamspecs.c: Since this file doesn't include "gst.h" it will not go through the macros that disable GST_LOG i...
Original commit message from CVS:
* gst/gstparamspecs.c: (_gst_param_fraction_validate):
Since this file doesn't include "gst.h" it will not go through the
macros that disable GST_LOG if debugging was disabled.
2007-06-14 16:07:09 +00:00
Tim-Philipp Müller
3ee7f4c8a4 Ugly 'fix' for the controller unit test on the p5 bot: in fail_unless_equals_float() check whether the values are 'al...
Original commit message from CVS:
* libs/gst/check/Makefile.am:
* libs/gst/check/gstcheck.h:
* pkgconfig/gstreamer-check-uninstalled.pc.in:
* pkgconfig/gstreamer-check.pc.in:
Ugly 'fix' for the controller unit test on the p5 bot: in
fail_unless_equals_float() check whether the values are 'almost
equal' by allowing a small absolute error, which should be good
enough for our use cases (normal numbers and values close to 0).
Proper fixage left to floating point arithmetic aficionados.
2007-06-14 15:56:03 +00:00
Stefan Kost
86e3999647 libs/gst/base/gstbasesink.c: Add two breaks thats where missing.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_reset_qos),
(gst_base_sink_render_object), (gst_base_sink_get_position):
Add two breaks thats where missing.
2007-06-14 12:03:44 +00:00
Tim-Philipp Müller
9dc9602829 API: add fail_unless_equals_float() and assert_equals_float().
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/check/gstcheck.h:
API: add fail_unless_equals_float() and assert_equals_float().
Add documentation for some of the macros.
* tests/check/libs/controller.c: (GST_START_TEST):
Use newly-added asserts.
2007-06-14 11:56:44 +00:00
Stefan Kost
239d09ecdc gst/gstpad.c: Show the caps change in the log to help spotting the case of not exactly matching caps.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_alloc_buffer_full), (gst_pad_push):
Show the caps change in the log to help spotting the case of not
exactly matching caps.
2007-06-14 10:33:28 +00:00
Tim-Philipp Müller
1b343395e7 docs/pwg/building-boiler.xml: Fix typos, spotted by Thijs Vermeir (#447190).
Original commit message from CVS:
* docs/pwg/building-boiler.xml:
Fix typos, spotted by Thijs Vermeir (#447190).
2007-06-14 08:52:51 +00:00
Jan Schmidt
72d16840ae docs/plugins/tmpl/.cvsignore: Ignore file to keep the buildbots happy
Original commit message from CVS:
* docs/plugins/tmpl/.cvsignore:
Ignore file to keep the buildbots happy
2007-06-13 16:15:23 +00:00
Jan Schmidt
146df0eccb docs/plugins/: Pull fdsink into the docs too.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gstreamer-plugins-docs.sgml:
* docs/plugins/gstreamer-plugins-sections.txt:
Pull fdsink into the docs too.
2007-06-13 15:39:53 +00:00
Sebastian Dröge
ca50216942 libs/gst/controller/gstinterpolation.c: Actually use the new functions with min/max checks for the trigger and none i...
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c:
Actually use the new functions with min/max checks for the trigger and
none interpolation modes for get() and get_value_array() instead of
just the latter.
2007-06-11 07:14:53 +00:00
Sebastian Dröge
f8742ef131 libs/gst/controller/gstcontroller.c: Unset the minimum and maximum GValues when freeing the corresponding
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_free):
Unset the minimum and maximum GValues when freeing the corresponding
GstControllerProperty struct.
2007-06-10 12:38:11 +00:00
Sebastian Dröge
bdcc0329ef libs/gst/controller/: Protect against values larger or smaller than the minimum or maximum allowed value for the prop...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_new):
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gstinterpolation.c:
(gst_controlled_property_find_control_point_node),
(interpolate_none_get), (interpolate_none_get_enum_value_array),
(interpolate_none_get_string_value_array),
(interpolate_trigger_get),
(interpolate_trigger_get_enum_value_array),
(interpolate_trigger_get_string_value_array):
Protect against values larger or smaller than the minimum or maximum
allowed value for the property when using values that can be compared.
Optimize trigger interpolator a bit by taking the last requested value
into account instead of always looping through the complete list.
Fix coding style a bit, everywhere else we use "return foo" instead
of "return (foo)".
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
Add unit test for the protection against too large or too small
values.
2007-06-09 16:58:30 +00:00
Sebastian Dröge
4ae4b8e75f docs/random/slomo/controller.txt: Add some thoughts about the future of the controller.
Original commit message from CVS:
* docs/random/slomo/controller.txt:
Add some thoughts about the future of the controller.
2007-06-08 21:08:24 +00:00
Wim Taymans
4a39d4d4dd plugins/elements/gstidentity.c: Don't overflow in retimestamping code.
Original commit message from CVS:
* plugins/elements/gstidentity.c: (gst_identity_transform_ip):
Don't overflow in retimestamping code.
2007-06-08 11:00:59 +00:00
Sébastien Moutte
45ed0f91b9 libs/gst/controller/gstinterpolation.c: Use gst_util_guint64_to_gdouble for conversions.
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c: (DEFINE_CUBIC_GET):
Use gst_util_guint64_to_gdouble for conversions.
* win32/common/libgstreamer.def:
Add new exported functions.
2007-06-07 20:51:35 +00:00
Tim-Philipp Müller
25a11b83e1 gst/gstutils.c: Small docs addition.
Original commit message from CVS:
* gst/gstutils.c:
Small docs addition.
2007-06-07 17:22:47 +00:00
Stefan Kost
08dc9b5d41 README: Remove that test line again.
Original commit message from CVS:
* README:
Remove that test line again.
2007-06-07 14:49:00 +00:00
Stefan Kost
686efc6455 README: Test commit mail sending.
Original commit message from CVS:
* README:
Test commit mail sending.
2007-06-07 14:36:02 +00:00
Stefan Kost
fa81d90908 configure.ac: Fix typo and test commit mail sending.
Original commit message from CVS:
* configure.ac:
Fix typo and test commit mail sending.
2007-06-07 14:17:46 +00:00
Stefan Kost
3b43fd8d3c tests/examples/controller/audio-example.c: Improve comment and test commit mail sending.
Original commit message from CVS:
* tests/examples/controller/audio-example.c:
Improve comment and test commit mail sending.
2007-06-07 14:12:07 +00:00
Wim Taymans
491de61f5a gst/gstbin.c: Add helper function to find messages.
Original commit message from CVS:
* gst/gstbin.c: (find_message), (bin_replace_message), (is_eos),
(gst_bin_remove_func), (gst_bin_element_set_state),
(bin_handle_async_start), (bin_handle_async_done),
(gst_bin_handle_message_func):
Add helper function to find messages.
Generate the async-done messages together with the state change
messages.
Small cleanups in handling toplevel bins.
2007-06-07 10:11:47 +00:00
Tim-Philipp Müller
2a3d26e66e Fix multiqueue leaking buffers and events when downstream or the queue are flushing. Make refcounting assumptions exp...
Original commit message from CVS:
* libs/gst/base/gstdataqueue.c:
* libs/gst/base/gstdataqueue.h:
* plugins/elements/gstmultiqueue.c: (gst_single_queue_push_one),
(gst_multi_queue_item_new), (gst_multi_queue_chain),
(gst_multi_queue_sink_event):
* tests/check/elements/multiqueue.c: (multiqueue_suite):
Fix multiqueue leaking buffers and events when downstream or the
queue are flushing. Make refcounting assumptions explicit and
document them (shouldn't break existing code that uses it other than
maybe leak miniobjects, but that already happens anyway). Add unit
test for the most common flushing case. Fixes #423700.
2007-06-06 18:11:10 +00:00
Sebastian Dröge
7b9fb5505f libs/gst/controller/gstcontroller.c: Clarify docs: The get_all, get_value_array(s) functions don't modify the GObject...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
Clarify docs: The get_all, get_value_array(s) functions
don't modify the GObject properties.
2007-06-06 14:20:01 +00:00
Sebastian Dröge
c478fb4813 libs/gst/controller/: Factor out the 'set' logic into gst_controller_set_unlocked for the gst_controller_set and gst_...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_prepend_default),
(gst_controlled_property_new), (gst_controller_set_unlocked),
(gst_controller_set), (gst_controller_set_from_list),
(gst_controller_unset), (gst_controller_unset_all):
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gstinterpolation.c:
Factor out the 'set' logic into gst_controller_set_unlocked for the
gst_controller_set and gst_controller_set_from_list functions.
To make life of the interpolators easier always add a control point
at timestamp zero with the default value.
In the linear interpolator make things more obvious by better variable
naming (slope).
Implement cubic interpolation mode (by using a natural cubic spline)
and map the quadratic interpolation mode to this too (as quadratic
doesn't make much sense, see discussion on the list).
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
Add unit test for the cubic interpolation mode and check everywhere
if the interpolation mode could be set as expected.
2007-06-06 14:01:56 +00:00
Tim-Philipp Müller
ce5a853516 gst/gstparamspecs.c: Don't use GLib-2.10 functions, we still depend on
Original commit message from CVS:
* gst/gstparamspecs.c: (gst_param_spec_fraction_get_type):
Don't use GLib-2.10 functions, we still depend on
GLib-how-old-is-it-again-2.8.
2007-06-06 11:38:25 +00:00
Tim-Philipp Müller
505f3889ca API: add GstParamSpecFraction, so elements can have fraction properties without lots of painful string parsing (#4446...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/Makefile.am:
* gst/gst.c:
* gst/gst.h:
* gst/gstparamspecs.c: (_gst_param_fraction_init),
(_gst_param_fraction_set_default), (_gst_param_fraction_validate),
(_gst_param_fraction_values_cmp),
(gst_param_spec_fraction_get_type), (gst_param_spec_fraction):
* gst/gstparamspecs.h:
* gst/gstvalue.c:
* tests/check/Makefile.am:
* tests/check/gst/.cvsignore:
* tests/check/gst/gstparamspecs.c: (gst_dummy_obj_base_init),
(gst_dummy_obj_class_init), (gst_dummy_obj_init),
(gst_dummy_obj_set_property), (gst_dummy_obj_get_property),
(GST_START_TEST), (gst_param_spec_suite):
API: add GstParamSpecFraction, so elements can have fraction
properties without lots of painful string parsing (#444648).
2007-06-06 11:18:12 +00:00
Wim Taymans
fbceb95076 gst/gstobject.c: Fix signal signature.
Original commit message from CVS:
* gst/gstobject.c: (gst_object_class_init):
Fix signal signature.
* gst/gstsegment.c:
Add small clarification in the api docs.
* plugins/elements/gstfilesrc.c: (gst_file_src_set_location):
States are protected with object lock.
2007-06-05 16:25:06 +00:00
Jan Schmidt
b82f181d72 AUTHORS: I should probably be listed as an author by now.
Original commit message from CVS:
* AUTHORS:
I should probably be listed as an author by now.
* docs/random/release:
Update the release doc
2007-06-05 14:11:59 +00:00
Tim-Philipp Müller
4e12ed7a53 gst/gstvalue.c: Make docs for gst_value_compare() mention return enums that actually exist.
Original commit message from CVS:
* gst/gstvalue.c:
Make docs for gst_value_compare() mention return enums that
actually exist.
2007-06-05 13:49:10 +00:00
Jan Schmidt
ef9af3ef8b configure.ac: Back to CVS
Original commit message from CVS:
* configure.ac:
Back to CVS
2007-06-05 13:21:41 +00:00