Commit graph

337 commits

Author SHA1 Message Date
Wim Taymans
5905655ead Reworked the GstThread implementation, make more operations threadsafe and more reliable.
Original commit message from CVS:
* gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
(gst_thread_change_state), (gst_thread_child_state_change),
(gst_thread_main_loop):
* gst/gstthread.h:
* testsuite/threads/Makefile.am:
* testsuite/threads/queue.c:
* testsuite/threads/thread.c: (construct_pipeline), (change_state),
(main):
* testsuite/threads/threadc.c: (construct_pipeline):
* testsuite/threads/threadd.c: (main):
* testsuite/threads/threade.c: (main):
* testsuite/threads/threadf.c:
Reworked the GstThread implementation, make more operations
threadsafe and more reliable.
Moved testcases from the failing to the working list.
2004-09-06 15:57:11 +00:00
Benjamin Otte
e1ef5586cd testsuite/: s/gst_pad_new/&_from_template/ prepare deprecation of gst_pad_new
Original commit message from CVS:
* testsuite/bytestream/gstbstest.c: (gst_bstest_init):
* testsuite/dynparams/dparamstest.c: (gst_dptest_init):
* testsuite/refcounting/pad.c: (main):
* testsuite/refcounting/thread.c: (create_thread_ghostpads):
s/gst_pad_new/&_from_template/
prepare deprecation of gst_pad_new
2004-08-17 10:16:35 +00:00
Thomas Vander Stichele
8f0fda26d0 revert state change changes as agreed so we can rework them gradually
Original commit message from CVS:
revert state change changes as agreed so we can rework them gradually
2004-07-29 20:33:49 +00:00
Wim Taymans
ab1a23ffa2 More pendatic checks removed.
Original commit message from CVS:
More pendatic checks removed.
2004-07-29 16:01:58 +00:00
Wim Taymans
8615072540 testsuite/caps/fraction-convert.c: Make the test less pedantic about float roundoff errors.
Original commit message from CVS:
* testsuite/caps/fraction-convert.c: (check_from_double_convert),
(check_from_fraction_convert), (transform_test), (main):
Make the test less pedantic about float roundoff errors.
2004-07-29 15:40:00 +00:00
Benjamin Otte
3d67acc6cd /me kicks ds
Original commit message from CVS:
/me kicks ds
2004-07-29 15:37:44 +00:00
Benjamin Otte
6788d167d6 gst/elements/gstfilesrc.c: make seek events to before start/after end of file not fail, but seek to start/end instead
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
(gst_filesrc_srcpad_event):
make seek events to before start/after end of file not fail, but
seek to start/end instead
* testsuite/caps/fraction-convert.c: (check_from_double_convert):
add more output
2004-07-29 15:34:25 +00:00
Thomas Vander Stichele
0dc1a2b42f fix distchekc
Original commit message from CVS:
fix distchekc
2004-07-29 15:15:16 +00:00
David Schleef
2c4c302945 testsuite/elements/: A little test to keep distcheck from working if someone changes a structure size accidentally.
Original commit message from CVS:
* testsuite/elements/Makefile.am:
* testsuite/elements/struct_i386.h:
* testsuite/elements/struct_size.c: (main):  A little test
to keep distcheck from working if someone changes a structure
size accidentally.
2004-07-28 19:16:44 +00:00
Thomas Vander Stichele
576559bba9 sigh, remove here too of course
Original commit message from CVS:
sigh, remove here too of course
2004-07-28 12:02:24 +00:00
Thomas Vander Stichele
567bd4a202 more ignore, add enumcaps.c
Original commit message from CVS:
more ignore, add enumcaps.c
2004-07-28 11:58:42 +00:00
Thomas Vander Stichele
cc62cef6fa fold enumcaps into caps/; clean up Makefile.am files
Original commit message from CVS:
fold enumcaps into caps/; clean up Makefile.am files
2004-07-28 11:43:04 +00:00
Wim Taymans
36b41f4666 Added transform functions between double and fraction.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_transform_double_fraction),
(gst_value_transform_fraction_double), (_gst_value_initialize):
* testsuite/caps/Makefile.am:
* testsuite/caps/fraction-convert.c: (check_from_double_convert),
(check_from_fraction_convert), (transform_test), (main):
Added transform functions between double and fraction.
Added testcase to verify transforms
2004-07-27 16:45:30 +00:00
David Schleef
4fa4267105 gst/gststructure.c: Set type field correctly.
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_id_empty_new),
(gst_structure_empty_new):  Set type field correctly.
* gst/gststructure.h: Check type field correctly.
* testsuite/caps/Makefile.am:
* testsuite/caps/structure.c: (test1), (main): Add a very small
test for structures.
2004-07-23 00:12:57 +00:00
Wim Taymans
96c58fdeab group_link works now
Original commit message from CVS:
group_link works now
2004-07-22 09:44:50 +00:00
Wim Taymans
efa80cd2c9 testsuite/schedulers/: Show bug in scheduler when linking chain and loop based element where the chain based element ...
Original commit message from CVS:
* testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
(handoff_identity), (main):
* testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
(handoff_identity), (main):
* testsuite/schedulers/Makefile.am:
* testsuite/schedulers/group_link.c: (main):
Show bug in scheduler when linking chain and loop based element
where the chain based element was not yet in a group.
2004-07-22 09:39:28 +00:00
Benjamin Otte
228cef489a keep this up to date, since I seem to be the only one who cares about not missing files on commits
Original commit message from CVS:
* gst/.cvsignore:
* gst/autoplug/.cvsignore:
* gst/elements/.cvsignore:
* gst/indexers/.cvsignore:
* libs/gst/bytestream/.cvsignore:
* libs/gst/control/.cvsignore:
* libs/gst/getbits/.cvsignore:
* testsuite/states/.cvsignore:
* testsuite/threads/.cvsignore:
keep this up to date, since I seem to be the only one who cares
about not missing files on commits
2004-07-21 21:37:31 +00:00
Benjamin Otte
28bf20507e gst/gstbin.c: make state changes work correctly and reentrant (so removing elements from bins during state changes of...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
(gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
(gst_bin_child_state_change_func), (set_kid_state_func),
(gst_bin_set_state), (gst_bin_change_state_norecurse):
make state changes work correctly and reentrant (so removing
elements from bins during state changes of bins doesn't cause
segfaults or even wrong states)
add debugging category and debugging output to print children states
* gst/gstbin.c: (gst_bin_dispose):
add some assertion checks
* gst/gstbin.h:
* gst/gstbin.c: (gst_bin_sync_children_state):
deprecate this function - it just does gst_bin_set_state (bin,
GST_STATE (bin))
* testsuite/threads/queue.c: (main):
don't use gst_bin_sync_children_state anymore
* testsuite/states/Makefile.am:
* testsuite/states/bin.c:
test that the state changes of bins work as expected
* gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
some adjustments to change states correctly, too
* gst/gstthread.c: (gst_thread_change_state):
don't enable/disable "threadsafe" properties, they're unused and
cause random segfaults
* testsuite/threads/Makefile.am:
the queue check randomly passes now, ignore it
2004-07-21 21:28:58 +00:00
Ronald S. Bultje
8b895dadce docs/random/ds/0.9-suggested-changes: Make note about renaming fixed-list to array.
Original commit message from CVS:
* docs/random/ds/0.9-suggested-changes:
Make note about renaming fixed-list to array.
* gst/gstvalue.c: (gst_value_intersect_fixed_list),
(_gst_value_initialize):
Add array intersections.
* testsuite/caps/intersect2.c: (main):
Add test for array intersections.
2004-07-20 19:35:15 +00:00
Wim Taymans
0344b6b464 testsuite/schedulers/: Added failing testcase for variant of #147894
Original commit message from CVS:
* testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
(handoff_identity), (main):
* testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
(handoff_identity), (main):
* testsuite/schedulers/Makefile.am:
Added failing testcase for variant of #147894
2004-07-20 11:21:03 +00:00
Thomas Vander Stichele
050631f63b fix for #142813 - deadlock in opt
Original commit message from CVS:
fix for #142813 - deadlock in opt
2004-07-20 10:57:38 +00:00
Thomas Vander Stichele
add97dd1ce fix for #147819 (Add some checks in the opt scheduler)
Original commit message from CVS:
fix for #147819 (Add some checks in the opt scheduler)
2004-07-20 10:40:09 +00:00
Thomas Vander Stichele
b515b8a729 fix for #147894 (opt scheduler decoupled elements mismanagement)
Original commit message from CVS:
fix for #147894 (opt scheduler decoupled elements mismanagement)
2004-07-20 09:55:13 +00:00
Wim Taymans
dfb5f38351 Added testcase for 147819
Original commit message from CVS:
Added testcase for 147819
2004-07-19 15:48:14 +00:00
Wim Taymans
282255877d testsuite/schedulers/: Added testcase for bug 147894
Original commit message from CVS:
* testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
(handoff_identity), (main):
* testsuite/schedulers/Makefile.am:
Added testcase for bug 147894
2004-07-19 14:53:13 +00:00
Wim Taymans
6f82a0ea1a testsuite/schedulers/: Added testsuite for bug 142183 in its two incarnations. Refcount is not increased for schedule...
Original commit message from CVS:
* testsuite/schedulers/142183-2.c: (handoff_identity), (main):
* testsuite/schedulers/142183.c: (handoff_identity), (main):
* testsuite/schedulers/Makefile.am:
Added testsuite for bug 142183 in its two incarnations. Refcount
is not increased for scheduled elements and threadsafe properties
mutexes are not properly unlocked.
2004-07-16 17:19:54 +00:00
Wim Taymans
77d9b2648d testsuite/schedulers/: Added cleanup code to testcase 143777-2.
Original commit message from CVS:
* testsuite/schedulers/143777-2.c: (main):
* testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
(main):
* testsuite/schedulers/Makefile.am:
Added cleanup code to testcase 143777-2.
Added testcase to show bug 147713, does not really show the
deadlock as I can't figure out how to trigger it, but it does
demonstrate bad ordering in the scheduler.
2004-07-16 15:45:29 +00:00
Benjamin Otte
ae7fb01363 gst/gstvalue.c: use ints and return ints, fractions only use ints, too, so this avoids accidently casting multiplicat...
Original commit message from CVS:
* gst/gstvalue.c: (gst_greatest_common_divisor):
use ints and return ints, fractions only use ints, too, so this
avoids accidently casting multiplications to unsigned
(gst_value_lcopy_fraction): it's ints, not uint32
(gst_value_set_fraction): disallow minint, multiplying and negation
are broken with it
(gst_value_fraction_multiply): fix to make large numbers work and get
rid of the assumption that the multiplication of two ints fits an
int64 - dunno if that's true for all systems
* testsuite/caps/Makefile.am:
* testsuite/caps/fraction-multiply-and-zero.c:
(check_multiplication), (check_equal), (zero_test), (main):
add tests for all the stuff above
* testsuite/caps/value_compare.c: (test1):
fix comment
* tests/.cvsignore:
* testsuite/caps/.cvsignore:
* testsuite/debug/.cvsignore:
* testsuite/dlopen/.cvsignore:
* testsuite/states/.cvsignore:
get up to date
2004-07-16 01:16:53 +00:00
Thomas Vander Stichele
e684907eb2 remove this for later gvalue testsuite dir
Original commit message from CVS:
remove this for later gvalue testsuite dir
2004-07-15 23:25:11 +00:00
Thomas Vander Stichele
76f329603c adding GstFraction GValue type
Original commit message from CVS:
adding GstFraction GValue type
2004-07-15 20:27:20 +00:00
Thomas Vander Stichele
1c5150d393 debugging additions and style cleanups
Original commit message from CVS:
debugging additions and style cleanups
2004-07-15 16:20:50 +00:00
Benjamin Otte
f1d9a4c380 gst/gsttypes.h: get rid of GST_O_READONLY, GST_FILE_MODE_READ and
Original commit message from CVS:
* gst/gsttypes.h:
get rid of GST_O_READONLY, GST_FILE_MODE_READ and
GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
just causes support madness
* gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
make it work without this
* gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
(gst_file_index_commit):
glib IO channels don't want binary mode
* testsuite/bytestream/filepadsink.c: (main):
* testsuite/bytestream/test1.c: (read_param_file):
use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
2004-07-12 21:57:35 +00:00
Steve Lhomme
fb7d3a201c Handle binary files under Windows
Original commit message from CVS:
Handle binary files under Windows
2004-07-12 20:24:45 +00:00
Thomas Vander Stichele
14e4ff51de set PENDING on bin correctly for special case. fixes testsuite again.
Original commit message from CVS:
set PENDING on bin correctly for special case. fixes testsuite again.
2004-07-12 10:03:04 +00:00
Benjamin Otte
9b9a151d43 gst/gstclock.h: GST_SECOND shouldn't cause a conversion to unsigned.
Original commit message from CVS:
* gst/gstclock.h:
GST_SECOND shouldn't cause a conversion to unsigned.
* testsuite/clock/.cvsignore:
* testsuite/clock/Makefile.am:
* testsuite/clock/signedness.c: (main):
make sure it never will again
2004-07-11 18:19:54 +00:00
Zaheer Abbas Merali
becad99a95 testsuite/threads/: added test to check if problem when removing all elements from a
Original commit message from CVS:
2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* testsuite/threads/Makefile.am:
* testsuite/threads/threadg.c:
added test to check if problem when removing all elements from a
GstThread before setting GstThread state to NULL
2004-07-09 14:18:35 +00:00
Thomas Vander Stichele
b645d7ab8c fixes 123774 - setting state on a bin should set state on children as well
Original commit message from CVS:
fixes 123774 - setting state on a bin should set state on children as well
2004-07-09 13:26:12 +00:00
Thomas Vander Stichele
a074393f26 re-enable states and add test
Original commit message from CVS:
re-enable states and add test
2004-07-09 08:43:34 +00:00
Wim Taymans
40a0fb9794 Implemented group splitting and rechaining.
Original commit message from CVS:
* gst/schedulers/gstoptimalscheduler.c:
(chain_recursively_migrate_group), (create_group),
(schedule_group), (gst_opt_scheduler_pad_link),
(group_elements_set_visited), (element_get_reachables_func),
(element_get_reachables), (group_can_reach_group), (debug_element),
(rechain_group), (group_migrate_connected),
(gst_opt_scheduler_pad_unlink):
* testsuite/schedulers/Makefile.am:
Implemented group splitting and rechaining.
Fixes 143777 and 143777-2 in the testsuite.
2004-07-08 15:24:20 +00:00
Ronald S. Bultje
73f74ccb58 Oops, forgot new files
Original commit message from CVS:
Oops, forgot new files
2004-07-07 04:25:23 +00:00
Ronald S. Bultje
938884918c Fix enum serialization, deserialization, comparison in caps, add a test to ensure that this continues working in the ...
Original commit message from CVS:
* configure.ac:
* gst/gstvalue.c: (gst_value_compare_enum),
(gst_value_serialize_enum), (gst_value_deserialize_enum),
(gst_value_can_compare), (gst_value_compare):
* testsuite/Makefile.am:
Fix enum serialization, deserialization, comparison in caps, add
a test to ensure that this continues working in the future.
2004-07-07 04:22:28 +00:00
Thomas Vander Stichele
11243f20be more tests fixing
Original commit message from CVS:
more tests fixing
2004-07-02 13:54:59 +00:00
Thomas Vander Stichele
b44d2194c8 fix testsuite
Original commit message from CVS:
fix testsuite
2004-07-02 13:29:11 +00:00
Thomas Vander Stichele
f54b157806 fix some dparams stuff
Original commit message from CVS:
fix some dparams stuff
2004-07-02 13:24:33 +00:00
Thomas Vander Stichele
b6a4764807 change plugin path
Original commit message from CVS:
change plugin path
2004-07-02 10:15:14 +00:00
Benjamin Otte
a0873781bf testsuite/schedulers/: add test for opt breakage in bug #143777
Original commit message from CVS:
* testsuite/schedulers/.cvsignore:
* testsuite/schedulers/Makefile.am:
* testsuite/schedulers/143777-2.c: (main):
add test for opt breakage in bug #143777
2004-06-20 20:25:32 +00:00
Benjamin Otte
94821aea61 gst/gstpad.c: check for if we were unlinked while inside the chainfunction (fixes entrygthread having issues with #14...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_call_chain_function):
check for if we were unlinked while inside the chainfunction (fixes
entrygthread having issues with #143777)
* testsuite/schedulers/143777.c: (main):
* testsuite/schedulers/Makefile.am:
add a test for that fix
2004-06-20 19:42:58 +00:00
Benjamin Otte
8700681d60 whoops, forgot to update Makefile - let's see if the buildbots like this one
Original commit message from CVS:
whoops, forgot to update Makefile - let's see if the buildbots like this one
2004-06-20 17:35:33 +00:00
Benjamin Otte
02c304efb9 gst/gstvalue.c: test that start is smaller then end
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_set_int_range):
test that start is smaller then end
* libs/gst/bytestream/Makefile.am:
* libs/gst/bytestream/filepad.c:
* libs/gst/bytestream/filepad.h:
add GstFilePad - a pad that behaves like a FILE*
* testsuite/bytestream/.cvsignore:
* testsuite/bytestream/Makefile.am:
* testsuite/bytestream/filepadsink.c:
test for the GstFilePad
2004-06-20 17:05:40 +00:00
Benjamin Otte
7193393c18 gst/gstcaps.c: don't print error messages when there is no error
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_structure_simplify):
don't print error messages when there is no error
* gst/gstvalue.c: (gst_value_compare_int_range):
compare the second value, too
* testsuite/caps/Makefile.am:
* testsuite/caps/random.c: (assert_on_error), (main):
add tests to make sure the two things above are checked for
2004-05-25 19:52:02 +00:00