Commit graph

191 commits

Author SHA1 Message Date
Thomas Vander Stichele
b4e05d624b gst/: make sure some essential types used by events are registered as part of gst_init()
Original commit message from CVS:
* gst/gstevent.c: (_gst_event_initialize):
* gst/gstformat.c: (_gst_format_initialize):
make sure some essential types used by events are registered
as part of gst_init()
* gst/gstvalue.c: (gst_value_serialize_flags):
if no flags are set, serialize them to a value that represents NONE
so that deserializing them works
* tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
add tests for serialization and deserialization of flags
2006-05-10 14:05:46 +00:00
Tim-Philipp Müller
bd97801195 tests/check/gst/gstbuffer.c: Add test case for flags + gst_buffer_make_metadata_writable().
Original commit message from CVS:
* tests/check/gst/gstbuffer.c: (GST_START_TEST):
Add test case for flags + gst_buffer_make_metadata_writable().
2006-05-09 13:23:06 +00:00
Wim Taymans
b9dbb55105 docs/design/part-overview.txt: Make upsteam/downstream concepts more clear.
Original commit message from CVS:
* docs/design/part-overview.txt:
Make upsteam/downstream concepts more clear.
Give an example of serialized/non-serialized events.
* docs/design/part-events.txt:
* docs/design/part-streams.txt:
Mention applied_rate.
* docs/design/part-trickmodes.txt:
Mention applied rate, flesh out some more use cases.
* gst/gstevent.c: (gst_event_new_new_segment),
(gst_event_parse_new_segment), (gst_event_new_new_segment_full),
(gst_event_parse_new_segment_full), (gst_event_new_tag),
(gst_event_parse_tag), (gst_event_new_buffer_size),
(gst_event_parse_buffer_size), (gst_event_new_qos),
(gst_event_parse_qos), (gst_event_parse_seek),
(gst_event_new_navigation):
* gst/gstevent.h:
Add applied_rate field to NEWSEGMENT event.
API: gst_event_new_new_segment_full()
API: gst_event_parse_new_segment_full()
* gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
(gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
(gst_segment_to_stream_time), (gst_segment_to_running_time):
* gst/gstsegment.h:
Add applied_rate to GstSegment structure.
Make calculation of stream_time and running_time more correct
wrt rate/applied_rate.
Add some more docs.
API: GstSegment::applied_rate field
API: gst_segment_set_newsegment_full();
* libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
(gst_base_sink_get_sync_times), (gst_base_sink_get_position):
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_sink_eventfunc),
(gst_base_transform_handle_buffer):
Parse and use applied_rate in the GstSegment field.
* tests/check/gst/gstevent.c: (GST_START_TEST):
Add check for applied_rate field.
* tests/check/gst/gstsegment.c: (GST_START_TEST),
(gstsegments_suite):
Add more checks for various GstSegment operations.
2006-05-08 09:52:33 +00:00
Thomas Vander Stichele
da97c1dfe9 tests/check/gst/gstghostpad.c: add more asserts on refcounts do more cleanup at end of tests fix test leaks showing i...
Original commit message from CVS:
2006-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>

* tests/check/gst/gstghostpad.c: (GST_START_TEST):
add more asserts on refcounts
do more cleanup at end of tests
fix test leaks showing in FC5
2006-04-29 00:33:44 +00:00
Wim Taymans
14a89b387e gst/gstutils.c: Added some more docs.
Original commit message from CVS:
* gst/gstutils.c: (push_and_ref):
Added some more docs.
Fix refcount issue whith gst_element_found_tags() helper
function. Fixes #338335
* tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
Added testsuite for gst_element_found_tags().
2006-04-28 15:48:50 +00:00
Wim Taymans
1089154f2a gst/gstvalue.c: Don't try to serialize a GValue with a NULL buffer.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_serialize_buffer),
(gst_value_deserialize_buffer):
Don't try to serialize a GValue with a NULL buffer.
Fixes #339821.
* tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
Added check for serialisation of NULL buffers.
2006-04-28 13:13:23 +00:00
Wim Taymans
4c9ba80be2 tests/check/gst/gstelement.c: Don't leak the factory.
Original commit message from CVS:
* tests/check/gst/gstelement.c: (GST_START_TEST):
Don't leak the factory.
2006-04-12 11:58:43 +00:00
Wim Taymans
05aa66eb42 gst/gstelementfactory.c: Some cleanups.
Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_register),
(gst_element_factory_create), (gst_element_factory_make):
Some cleanups.
Fixed a FIXME.
Updated docs (Fixes #131079)
* gst/gstpluginfeature.c: (gst_plugin_feature_load):
Small cleanups.
* tests/check/gst/gstelement.c: (GST_START_TEST),
(gst_element_suite):
Added testcase for elementfactory class field.
2006-04-11 11:47:39 +00:00
Michael Smith
763b2d3278 tests/check/gst/gstghostpad.c: Unref a pad we reffed.
Original commit message from CVS:
* tests/check/gst/gstghostpad.c: (GST_START_TEST):
Unref a pad we reffed.
* tests/check/gst/gstutils.c: (GST_START_TEST):
Unref bins
2006-04-05 15:12:39 +00:00
Thomas Vander Stichele
07bb30df7e disable some tests when we don't have a registry
Original commit message from CVS:

* configure.ac:
* tests/check/Makefile.am:
disable some tests when we don't have a registry
* tests/check/gst/gstutils.c: (gst_utils_suite):
don't build the part that needs parsing
2006-03-21 19:27:15 +00:00
Edward Hervey
067db77499 gst/: gst_[buffer|event|message]_ref() macros are replaced by a static inline functions because gcc-4.1 will about if...
Original commit message from CVS:
* gst/gstbuffer.h:
* gst/gstevent.h:
* gst/gstmessage.h:
gst_[buffer|event|message]_ref() macros are replaced by a static
inline functions because gcc-4.1 will about if the return value
isn't used.
* tests/check/gst/gstevent.c: (event_probe):
gst_event_ref now has to be given a GstEvent* , fix check accordingly.
2006-03-21 13:50:52 +00:00
Wim Taymans
99a61247bc gst/gstclock.*: Review docs.
Original commit message from CVS:
* gst/gstclock.c: (gst_clock_entry_new),
(gst_clock_id_compare_func), (gst_clock_id_wait),
(gst_clock_id_wait_async), (gst_clock_id_unschedule),
(gst_clock_init), (gst_clock_get_internal_time),
(gst_clock_set_master), (do_linear_regression),
(gst_clock_add_observation), (gst_clock_set_property):
* gst/gstclock.h:
Review docs.
Small cleanups.
Fix a possible segfault when the window-size is made smaller.
Calculate jitter before performing the clock wait. Ideally
the clock implementation should calculate jitter but we need
API breakage for that.
* gst/gstsystemclock.c: (gst_system_clock_init):
Docs review.
* libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
Remove leftover else
* tests/check/gst/gstsystemclock.c: (GST_START_TEST),
(gst_systemclock_suite):
Added check to test GST_CLOCK_DIFF.
2006-03-09 11:45:14 +00:00
Tim-Philipp Müller
083e7eb417 Ignore more stuff.
Original commit message from CVS:
* docs/gst/tmpl/.cvsignore:
* docs/plugins/tmpl/.cvsignore:
* tests/check/gst/.cvsignore:
* tests/check/libs/.cvsignore:
* tests/check/pipelines/.cvsignore:
Ignore more stuff.
2006-02-23 18:06:31 +00:00
Tim-Philipp Müller
2402343a7d tests/check/gst/gstutils.c: Test case originally showed the problem fixed below, but was then amended. Add checks bac...
Original commit message from CVS:
* tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
Test case originally showed the problem fixed below,
but was then amended. Add checks back at the place
where they used to be.
2006-02-23 16:56:18 +00:00
Wim Taymans
70e4214ebf tests/check/gst/gstquery.c: Added another check.
Original commit message from CVS:
* tests/check/gst/gstquery.c: (GST_START_TEST):
Added another check.
2006-02-17 15:25:39 +00:00
Wim Taymans
2fbeada812 docs/gst/gstreamer-sections.txt: Reworked query docs.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Reworked query docs.

* gst/gstquery.c: (gst_query_new_formats),
(gst_query_list_add_format), (gst_query_set_formats),
(gst_query_set_formatsv), (gst_query_parse_formats_length),
(gst_query_parse_formats_nth):
* gst/gstquery.h:
Flesh out formats query, added some new methods.
Fix part of #324398.

* tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
Added query creation tests.
2006-02-14 12:07:16 +00:00
Wim Taymans
2681eaea50 gst/gsttask.*: Detect and warn for obvious deadlocks. fixes #320340
Original commit message from CVS:
* gst/gsttask.c: (gst_task_init), (gst_task_func),
(gst_task_set_lock), (gst_task_start), (gst_task_pause),
(gst_task_join):
* gst/gsttask.h:
Detect and warn for obvious deadlocks. fixes #320340
Fix error case where lock was not released.

* tests/check/Makefile.am:
* tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
(task_func), (gst_element_suite), (main):
Add task check.
2006-02-13 17:03:23 +00:00
Wim Taymans
8521262f84 tests/check/gst/gstutils.c: Only events up to the pipeline EOS are counted, there are some more when going to NULL cu...
Original commit message from CVS:
* tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
(event_probe), (GST_START_TEST):
Only events up to the pipeline EOS are counted, there are
some more when going to NULL currently which we don't care
about for now.
2006-02-13 10:54:03 +00:00
Tim-Philipp Müller
722f297238 tests/check/gst/gstutils.c: Add some simple tests for gst_parse_bin_from_description() and gst_bin_find_unconnected_p...
Original commit message from CVS:
* tests/check/gst/gstutils.c: (test_parse_bin_from_description),
(gst_utils_suite):
Add some simple tests for gst_parse_bin_from_description() and
gst_bin_find_unconnected_pad() (#329069).
2006-02-04 12:49:53 +00:00
Wim Taymans
1071a5979d tests/check/gst/gstbin.c: Wait for refcount to settle down before checking.
Original commit message from CVS:
* tests/check/gst/gstbin.c: (GST_START_TEST):
Wait for refcount to settle down before checking.
2006-01-30 15:57:43 +00:00
Jan Schmidt
1559c57a8e gst/gstutils.c: Don't leak pad references.
Original commit message from CVS:
* gst/gstutils.c: (gst_element_unlink_pads):
Don't leak pad references.

* tests/check/elements/fakesink.c: (GST_START_TEST):
* tests/check/generic/sinks.c: (GST_START_TEST):
* tests/check/generic/states.c: (GST_START_TEST):
* tests/check/gst/gstbin.c: (GST_START_TEST):
* tests/check/gst/gstcaps.c: (GST_START_TEST):
* tests/check/gst/gstelement.c: (GST_START_TEST):
* tests/check/gst/gstghostpad.c: (GST_START_TEST):
* tests/check/gst/gstiterator.c: (GST_START_TEST):
* tests/check/gst/gstvalue.c: (GST_START_TEST):
Fix a bunch of leaks. Make generic/sinks.c
use a bit less cpu by slowing the buffer rate
between fakesrc and fakesink.
2006-01-28 00:59:37 +00:00
Jan Schmidt
a25bb7be67 tests/check/: Add a very simple check that should have caught the memleak I fixed last night (if not for the slice al...
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
(main):
Add a very simple check that should have caught the memleak I fixed
last night (if not for the slice allocator hiding it)
2006-01-27 11:53:20 +00:00
Wim Taymans
33e1f68555 tests/check/: Added fakesink test that checks prerolling and clipping behaviour.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/fakesink.c: (chain_async_buffer),
(chain_async), (chain_async_return), (GST_START_TEST),
(fakesink_suite), (main):
Added fakesink test that checks prerolling and clipping
behaviour.

* tests/check/gst/gstutils.c: (GST_START_TEST):
Make check run faster so that buildbots don't timeout.
2006-01-18 17:57:57 +00:00
Jan Schmidt
0c0d5462a2 Replace gst_buffer_(make|is)_metadata_writable patch now that the release is out.
Original commit message from CVS:
* gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
(gst_buffer_make_metadata_writable):
* gst/gstbuffer.h:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf):
* plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
* tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
Replace gst_buffer_(make|is)_metadata_writable patch now
that the release is out.
2006-01-17 12:14:20 +00:00
Jan Schmidt
6876d64a29 Back out patch until after the release.
Original commit message from CVS:
* gst/gstbuffer.c:
* gst/gstbuffer.h:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf):
* plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
* tests/check/gst/gstbuffer.c: (gst_test_suite):
Back out patch until after the release.
2006-01-16 15:42:08 +00:00
Jan Schmidt
c7506c8b0a gst/gstbuffer.*: Add gst_buffer_(is|make)_metadata_writable as analogues of gst_buffer_(is|make)_writable.
Original commit message from CVS:
Reviewed By: Andy Wingo

* gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
(gst_buffer_make_metadata_writable):
* gst/gstbuffer.h:
Add gst_buffer_(is|make)_metadata_writable as analogues of
gst_buffer_(is|make)_writable.

* libs/gst/base/gstbasetransform.c:
(gst_base_transform_prepare_output_buf):
* plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
Use name gst_buffer_(is|make)_metadata_writable functions.

* tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
Test gst_buffer_(is|make)_metadata_writable

(Closes: #324162)
2006-01-16 14:32:33 +00:00
Thomas Vander Stichele
19e6cc15f1 add unlink and some asserts
Original commit message from CVS:
add unlink and some asserts
2006-01-14 14:12:26 +00:00
Andy Wingo
e70e7f7d95 plugins/elements/gstbufferstore.c
Original commit message from CVS:
2005-12-16  Andy Wingo  <wingo@pobox.com>

* plugins/elements/gstbufferstore.c
(gst_buffer_store_cleared_func): Pay attention to g_list_append
return value.

* tests/check/gst/gstobject.c
(test_fake_object_name_threaded_unique): Pay attention to
g_list_sort return value.
2005-12-16 14:44:49 +00:00
Tim-Philipp Müller
8ea948df92 gst/gstminiobject.c: Fix lcopy for mini objects, the mini object needs to be ref'ed.
Original commit message from CVS:
* gst/gstminiobject.c: (gst_value_mini_object_lcopy):
Fix lcopy for mini objects, the mini object needs to be ref'ed.
* tests/check/gst/gstminiobject.c: (my_foo_init),
(my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
(test_value_collection), (gst_mini_object_suite):
Add test to ensure refcounts end up as expected when passing
GstMiniObjects through g_object_get() and g_object_set().
2005-12-15 12:22:38 +00:00
Wim Taymans
8666c1597d gst/gstsegment.c: Added more documentation.
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_init),
(gst_segment_set_last_stop), (gst_segment_set_seek),
(gst_segment_set_newsegment), (gst_segment_to_stream_time),
(gst_segment_to_running_time):
Added more documentation.
Make sure the last_pos value is updated properly.
Make sure to_stream_time and to_running_time don't
operate on wrong values.

* tests/check/gst/gstsegment.c: (GST_START_TEST):
Update check.
2005-12-12 12:48:35 +00:00
Thomas Vander Stichele
72cf82552e tests/check/gst/struct_i386.h: ifdef out the XML structs
Original commit message from CVS:

* tests/check/gst/struct_i386.h:
ifdef out the XML structs
2005-12-12 11:40:11 +00:00
Thomas Vander Stichele
96b8d069e5 add a ; and an example
Original commit message from CVS:
add a ; and an example
2005-12-12 10:57:37 +00:00
Wim Taymans
a7fda4dfb2 tests/check/: Added check for ABI compatibility.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/gst/.cvsignore:
* tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
(main):
* tests/check/gst/struct_i386.h:
Added check for ABI compatibility.
2005-12-07 17:36:44 +00:00
Thomas Vander Stichele
288f61d21f expand tabs
Original commit message from CVS:
expand tabs
2005-12-06 19:29:15 +00:00
Thomas Vander Stichele
30dab643af really add the tests for the 64/double conversion
Original commit message from CVS:
really add the tests for the 64/double conversion
2005-12-05 12:33:44 +00:00
Thomas Vander Stichele
174304cf32 fix test
Original commit message from CVS:
fix test
2005-12-01 12:36:10 +00:00
Wim Taymans
2dc0ef57fd check/gst/gstutils.c: Updated check, add some scaling accuracy checking code.
Original commit message from CVS:
* check/gst/gstutils.c: (GST_START_TEST):
Updated check, add some scaling accuracy checking code.

* gst/gstutils.c: (gst_util_div128_64),
(gst_util_uint64_scale_int64), (gst_util_uint64_scale),
(gst_util_uint64_scale_int):
Fix 6 times faster division code. Optimize for common
1/1 and less common X/1 cases.
2005-11-28 18:44:11 +00:00
Wim Taymans
870d272630 check/gst/gstutils.c: More checks.
Original commit message from CVS:
* check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
More checks.

* gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
(do_linear_regression), (gst_clock_add_observation):
Cleanups.
Release lock when the clock cannot be slaved.
Catch the case where the regression returned an invalid denominator.

* gst/gstutils.c: (gst_util_div128_64_iterate),
(gst_util_div128_64), (gst_util_uint64_scale_int64),
(gst_util_uint64_scale), (gst_util_uint64_scale_int):
Add protentially more performant non-iterative 128/64 divide function
that unfortunatly does not work yet.
Shortcut the trivial 0/X = 0 case.
Remove the warnings on overflow.
2005-11-28 16:05:35 +00:00
Thomas Vander Stichele
1a92a78432 disable pipeline test until someone fixes the unreliable errors
Original commit message from CVS:
disable pipeline test until someone fixes the unreliable errors
2005-11-28 10:29:37 +00:00
Thomas Vander Stichele
11662f1307 add some additional fail_if's
Original commit message from CVS:
add some additional fail_if's
2005-11-27 14:03:22 +00:00
Wim Taymans
fb7302fc41 check/gst/gstutils.c: Added more checks for the high precision uint64 cases.
Original commit message from CVS:
* check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
Added more checks for the high precision uint64 cases.

* gst/gstutils.c: (gst_util_uint64_scale_int64),
(gst_util_uint64_scale), (gst_util_uint64_scale_int):
Implement high precission (guint64 * guint64) / guint64.
2005-11-25 00:02:05 +00:00
Thomas Vander Stichele
4251529223 remove wrongly commited comments
Original commit message from CVS:
remove wrongly commited comments
2005-11-24 18:44:43 +00:00
Thomas Vander Stichele
888bf79853 check/gst/gstminiobject.c: don't use check calls from threads; check probably isn't threadsafe and using a lock to ma...
Original commit message from CVS:

* check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
(gst_mini_object_suite):
don't use check calls from threads; check probably isn't
threadsafe and using a lock to make it threadsafe would
defeat the purpose of this check
* gst/check/gstcheck.c:
* gst/check/gstcheck.h:
use GST_DEBUG some more
2005-11-24 18:40:58 +00:00
Wim Taymans
fbf5f16d69 check/gst/gstutils.c: Added test for scaling.
Original commit message from CVS:
* check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
Added test for scaling.

* gst/gstclock.h:
Small doc fix.

* gst/gstutils.c: (gst_util_uint64_scale_int):
Implemented high precision scaling code.
2005-11-24 17:44:57 +00:00
Thomas Vander Stichele
7b2d3e5536 ignore more
Original commit message from CVS:
ignore more
2005-11-24 11:16:32 +00:00
Jan Schmidt
5f54f34216 Oops, broke automatic string type parsing.
Original commit message from CVS:
* check/gst/gststructure.c: (GST_START_TEST):
* gst/gststructure.c: (gst_structure_parse_value):
Oops, broke automatic string type parsing.
Add a test to catch it in future.
2005-11-22 13:14:51 +00:00
Jan Schmidt
32538f9ed2 check/gst/capslist.h: Comment test cases
Original commit message from CVS:

* check/gst/capslist.h:
Comment test cases
* check/gst/gststructure.c: (GST_START_TEST),
(gst_structure_suite):
Test automatic value type detection in gst_structure_from_string.
* gst/gststructure.c: (gst_structure_parse_value):
Add fraction as a type we try and guess automatically in
caps/structure strings.
2005-11-22 12:35:42 +00:00
Jan Schmidt
ba0d715dc8 check/gst/gstcaps.c: Extend caps string tests to check that a caps to string conversion is reversible and produces th...
Original commit message from CVS:
* check/gst/gstcaps.c: (GST_START_TEST):
Extend caps string tests to check that a caps to string
conversion is reversible and produces the same caps.

* gst/gststructure.c: (gst_structure_value_get_generic_type):
Output "fraction" as the generic type fraction range, so caps
serialisation and deserialisation works.
* check/gst/capslist.h:
* gst/gstvalue.c: (gst_value_deserialize_fraction):
Support 'MIN' and 'MAX' for deserialising fractions.
2005-11-22 11:56:01 +00:00
Andy Wingo
19858fd9f0 gst/gstevent.h (gst_event_new_new_segment) (gst_event_parse_new_segment, gst_event_new_buffer_size)
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

* gst/gstevent.h (gst_event_new_new_segment)
(gst_event_parse_new_segment, gst_event_new_buffer_size)
(gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
Renamed from *_newsegment, *_buffersize, *_notarget.

* scripts/update-funcnames: New script, performs the changes
listed above.
2005-11-22 11:48:58 +00:00
Jan Schmidt
819307ab28 check/gst/gstevent.c: Block the fakesrc srcpad when we send an event, to avoid contention on the stream_lock causing ...
Original commit message from CVS:
* check/gst/gstevent.c: (test_event), (GST_START_TEST):
Block the fakesrc srcpad when we send an event, to avoid
contention on the stream_lock causing random test failures.
2005-11-22 10:24:31 +00:00