Commit graph

38 commits

Author SHA1 Message Date
Edward Hervey
7eb98ba4f3 check: Don't use real audio devices for tests
When checking the behaviour of live seeking on audiomixer or
adder we don't *really* need real audio devices. audiotestsrc
in live mode is enough to test the behaviour of those elements.

Also avoids people repeatedly wasting hours trying to figure out
whether that failing behaviour is due to their code or not.
2019-10-10 16:58:26 +02:00
Mathieu Duponchelle
f72e71903a aggregator tests: fix seek event seqnums
In
https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/207,
aggregator starts ignoring seek events with duplicate seqnums. We thus
need to update the seqnum of events when reusing them multiple times.
2019-07-19 18:53:43 +02:00
Tim-Philipp Müller
6f6c73b223 tests: audiomixer: fix leaks in unit test 2019-03-06 10:51:40 +00:00
Mathieu Duponchelle
225651e6c5 tests/audiomixer: fix caps leak 2018-04-13 01:07:21 +02:00
Tim-Philipp Müller
57516c5153 tests: audiomixer: remove unistd.h include
Not needed and breaks the build with MVSC.
2018-03-16 09:29:41 +00:00
Mathieu Duponchelle
10835e9919 audioaggregator: refactor conversion API
For the rationale, see:

https://bugzilla.gnome.org/show_bug.cgi?id=793917

Also test audiomixer conversion of current output buffer
2018-03-01 00:40:24 +01:00
Mathieu Duponchelle
164b5a7f94 audioaggregator: implement input conversion
https://bugzilla.gnome.org/show_bug.cgi?id=786344
2017-12-19 23:39:37 +01:00
Stefan Sauer
73381c8475 tests: comment and logging cleanups for audiomixer and aggregator
Remove some references to 'collectpads'. Logs pads through the object variants.
Add some more comments. Remove a left over comment.
2017-10-23 11:54:53 +02:00
Stefan Sauer
9c0a2a9ad4 tests: simplify audiomixer test
Use _link_many() and reuse a helper to reduce the test code.
2017-09-17 10:20:09 -07:00
Stefan Sauer
d176e8bd01 tests: audiomixer: set all properties at once 2017-07-15 21:28:38 +02:00
Stefan Sauer
db8482baaf tests: audiomixer: use the buffer helper for other tests too 2017-07-15 19:34:15 +02:00
Stefan Sauer
2ae763cc34 audiomixer: add a helper for buffer creation
This makes the test setup easier to read.
2017-07-14 08:09:25 +02:00
Stefan Sauer
14a9ba2fa4 audiomixer: use test helper once more 2017-07-13 22:02:17 +02:00
Stefan Sauer
6d53284450 audiomixer: more test cleanups
Port over the test helpers from the adder tests.
2017-07-10 21:08:09 +02:00
Stefan Sauer
ecf38a3ade audiomixer: refactor test
Apply cleanups from the adder tests. Use a fixture for common code.
2017-07-10 20:16:56 +02:00
Olivier Crête
7108cd2fc8 tests: Make audiomixer test_clip verify the resulting timestamps too 2017-05-23 12:35:58 +02:00
Guillaume Desmottes
8d6d6bd2aa tests: fix bus leak
gst_bus_remove_signal_watch() has to be called to release the ref
taken by gst_bus_add_signal_watch().

https://bugzilla.gnome.org/show_bug.cgi?id=768843
2016-07-18 12:41:12 +01:00
Guillaume Desmottes
f1f13de8d7 fix event leaks in tests
The events are supposed to be unreffed when finishing the test, not
reffed.

https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
hoonhee.lee
1a4f037bc1 tests: audiomixer: remove duplicated word in comment
https://bugzilla.gnome.org/show_bug.cgi?id=753915
2015-08-21 11:12:04 +03:00
Nirbheek Chauhan
74d7944cbb audioaggregator: Sync pad values before aggregating
We need to sync the pad values before taking the aggregator and pad locks
otherwise the element will just deadlock if there's any property changes
scheduled using GstController since that involves taking the aggregator and pad
locks.

Also add a test for this.

https://bugzilla.gnome.org/show_bug.cgi?id=749574
2015-07-22 19:50:38 +01:00
Vincent Penquerc'h
609f6703f4 tests: fix type mismatch in varargs passing
A bitmask is 64 bits, but integer immediates are passed as int
in varargs, which happen to be 32 bit with high probability.

This triggered a valgrind jump-relies-on-uninitalized-value
report well away from the site, since it doesn't trigger on
stack accesses, and there must have been enough zeroes to stop
g_object_set at the right place.
2015-04-09 16:20:44 +01:00
Olivier Crête
5d78c5cca6 audiomixer: Allow downstream caps with a non-default channel-mask
Instead of failing, take the downstream channel mask if the channel
count is 1.
2015-04-01 20:32:41 -04:00
Tim-Philipp Müller
91ff1a2957 tests: remove GST_DISABLE_PARSE guards from two tests that don't require it 2015-02-13 16:25:14 +00:00
Tim-Philipp Müller
e54829aa4f tests: audiomixer: add unit test for proper segment.base handling
As adjusted by gst_pad_set_offset(), or when doing segment seeks
or looping for example. See previous audiomixer commit.
2015-02-05 15:23:04 +00:00
Olivier Crête
660ddd40c2 audiomixer: Make flush start/stop test non-racy
The flush stop could have happened between the source trying
to push the segment event and the buffer, this would cause a warning.
Prevent that by taking the source's stream lock while flushing.

https://bugzilla.gnome.org/show_bug.cgi?id=742684
2015-01-29 10:24:18 +01:00
Olivier Crête
0955a39a3d audiomixer: Replace racy timeout based tested with drain query
Using the drain query, we can be certain that the buffer has done going
through the aggregator by taking the stream locks.

https://bugzilla.gnome.org/show_bug.cgi?id=742684
2015-01-29 10:24:18 +01:00
Olivier Crête
402c0d4c5c audiomixer: Avoid race in caps negotiation
With the current audiomixer, the input caps need to be the same,
otherwise there is an unavoidable race in the caps negotiation. So
enforce that using capsfilters

https://bugzilla.gnome.org/show_bug.cgi?id=742684
2015-01-29 10:24:18 +01:00
Sebastian Dröge
8465c0915e audiomixer: Change blocksize property to output-buffer-duration in time format
This makes the interface of audiomixer independent of the actual caps.
2014-12-23 11:45:50 +01:00
Sebastian Dröge
67ef96c82d audiomixer: Add queues after the (live) sources in the unit test 2014-12-17 18:41:41 +01:00
Tim-Philipp Müller
7e75f21a41 tests: fix audiomixer test on big endian systems 2014-10-25 21:09:30 +01:00
Aurélien Zanelli
c5224553c4 test: use G_GSIZE_FORMAT in audiomixer test
https://bugzilla.gnome.org/show_bug.cgi?id=738227
2014-10-09 16:20:07 +03:00
Thibault Saunier
183f4b3227 audiomixer: Port to GstAggregator
https://bugzilla.gnome.org/show_bug.cgi?id=737183

Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
2014-10-06 18:57:28 +02:00
Sebastian Dröge
5fcc53e552 audiomixer: Add unit test for handling unaligned buffers
That is, buffers that start or end in the middle of an output block.
2013-11-07 14:12:17 +01:00
Sebastian Dröge
6e48dcfe47 audiomixer: Add test for the discont handling 2013-11-07 13:57:35 +01:00
Sebastian Dröge
73854f8c02 audiomixer: Refactor sync test to be more reusable 2013-11-07 13:55:32 +01:00
Sebastian Dröge
b78316dc06 audiomixer: Remove some racy-ness from the unit test
We might already be EOS when we start the mainloop, so only
set the pipeline to PLAYING from the main loop.
2013-11-07 13:48:06 +01:00
Sebastian Dröge
e368bee1a9 audiomixer: Add simply synchronization test 2013-11-06 15:35:45 +01:00
Sebastian Dröge
39459b2f30 audiomixer: Add new element based on adder that does synchronized audio mixing 2013-11-06 15:35:38 +01:00