Commit graph

327 commits

Author SHA1 Message Date
Arun Raghavan
257bdcafe3 stream: Simplify passing of formats in extended API
Passing a NULL-terminated array of pa_format_info pointers is a bit
unwieldy for clients. Instead of this, let's pass in an array of
pointers and the number of elements in the array.
2011-06-19 17:46:35 -07:00
Arun Raghavan
5c8b4abab2 tests: Update extended API test
The test wasn't updated after we changed the pa_format_info proplist
format.
2011-06-12 11:11:18 -07:00
Colin Guthrie
3e0332b071 tests: Fix resampler-test.
This has been broken since c376ac5920 when run
without any arguments. Passing in -v (verbose) caused the test to work fine.

I think this oversight is just a thinko in the original work but it obviously
broke 'make check' and thus distcheck.

Also fix a couple compiler warnings.
2011-05-15 14:16:52 +01:00
Arun Raghavan
8d076d0990 format: Extend properties to handle lists/ranges
This replaces the simple string used by pa_format_info's proplist with a
JSON string (accessed via new API only). This allows us to express lists
and ranges more cleanly, and embed type information for future
extensibility.

We use json-c for JSON parsing. This is a lightweight depdency (32 KB on
my system) and avoids the hassle of having to reinvent a JSON parser.

Also included is a test which verifies functionality and is
valgrind-clean.
2011-05-15 10:09:35 +05:30
Arun Raghavan
e64f02ad9e tests: Add a trivial test for the extended API
This is just sync-playback.c modified to use the extended API. We need
something more sophisticated for properly testing the compressed
formats, but that is a non-trivial task in itself.
2011-05-02 11:54:48 +05:30
Maarten Bosmans
6e319e5182 Make connect-stress test compile for win32 2011-04-30 22:25:54 +01:00
Colin Guthrie
b620e32289 test: Make the connect-stress less likely to bail out due to >32 streams.
When running two connect-stress tests at the same time the liklihood of >32 streams
per sink increases. All it takes is for an event sound to fire to trigger an abort of
the test.

This leaves just a little bit of wriggle room for a couple external streams.
Of course the overall problem is still there but this just makes it
slightly less likely without really affecting the test itself.
2011-04-23 18:23:38 +01:00
Marc-André Lureau
c376ac5920 tests: improve resampler test 2011-04-19 12:20:19 +01:00
Marc-André Lureau
1f602ded57 interpol-test: remove unused include getopt.h 2011-04-19 12:00:33 +02:00
Daniel Mack
c083259464 tests: add a connection stress test
This test is based on a threaded main loop and was written to hunt an
evil race condition.
2011-04-01 14:15:01 +01:00
Colin Guthrie
d7ce59de88 Merge remote-tracking branch 'mkbosmans/mingw32-build' 2011-03-20 11:18:19 +00:00
Maarten Bosmans
c470680e1b Use pulsecore/arpa-inet.h to make arpa/inet.h functionality available
Automatically use replacement function on platforms (win32) where not all arpa/inet.h is available natively.
2011-03-19 13:41:05 +01:00
Maarten Bosmans
684b89c639 Fix up some double spaces 2011-03-18 09:20:07 +00:00
Maarten Bosmans
b3721a12c5 Fixup #include directives according to Coding Style
Use #include "header.h" if functionality of header.h is implemented
and #include <header.h> if functionality of header.h is used.
2011-03-11 11:49:39 +00:00
Maarten Bosmans
ecf09f2cd6 Fix up according to Coding Style
Only whitespace changes in here
2011-03-11 11:49:35 +00:00
Maarten Bosmans
9cbf19b59b Various fixes for build warnings 2011-03-02 15:02:42 +00:00
Maarten Bosmans
38d0f4d15f Include <time.h> where necessary 2011-03-01 18:06:28 +01:00
Arun Raghavan
50e289d52a Revert "Add new subsystem for applying envelopes (such as volume ramps) to audio signals"
This reverts commit 95a98fe6f2.

Conflicts:

	src/Makefile.am
	src/pulsecore/envelope.c
	src/pulsecore/envelope.h
	src/tests/envelope-test.c

(part of a patch series removing all ramping code)
2011-02-28 17:13:13 +05:30
Maarten Bosmans
30c7c95184 tests/rtstutter: Use pa_rtclock 2011-02-17 12:02:31 +01:00
Maarten Bosmans
aebf66bef6 Use pa_* instead of generic functions to improve portability 2011-02-17 12:02:31 +01:00
Maarten Bosmans
2de2c735c9 Fix dependencies and include necessary headers 2011-02-17 11:58:22 +01:00
Maarten Bosmans
bb12ff8356 Apply #ifdefs around functionality not available on win32
And also the reverse: around some win32 specific functionality
2011-02-17 11:58:22 +01:00
Maarten Bosmans
4f1d4044f8 Use <pulsecore/socket.h> instead of <sys/socket.h>
The check whether POSIX socket.h or WIN32 winsock2.h must be included can be
made centrally.  The downside is that some functionality of e.g. arpa/inet.h is
also implemented in winsock.h, so that some files that don't use socket
functions, but do use inet.h functions, must also include pulsecore/socket.h.
(as well as arpa/inet.h)
2011-02-17 11:58:21 +01:00
Maarten Bosmans
974af43507 build: Don't include empty Makefile.am in subdirs 2011-01-31 12:40:43 +00:00
Colin Guthrie
3e28f60592 build-sys: Replace dummy Makefiles with proper Makefile.am's
This is needed to better support out of tree builds (including
distcheck) and to ensure the necessary folders are created in the
build tree on configure and also works around an intl-tools bug
(https://bugs.launchpad.net/intltool/+bug/605826)

The Makefile.am's used are minimal (and in some cases completely
blank). At present they do not include anything interesting
with the majority of the real work still done by the monolitic
src/Makefile.am

It may make sense to start splitting out src/Makefile.am into
smaller chunks but this commit makes the minimum changes to address
the issues that result from using make distcheck and other out of
tree builds.

Note: This 'breaks' the ability to type make in e.g. the src/modules
folder and have all of PA rebuilt accordingly (this is because the
static Makefiles previously present just did a "make -C ..") which
was purportedly for use in emacs. But I'm sure there will be a better
and more robust way to configure emacs to do your builds properly if
this behaviour is still desirable.
2010-12-05 15:58:59 +00:00
Wim Taymans
b0042cec71 alsa-time-test: make test usable for capture too
Extend the test to also work for capture devices.
2010-09-07 12:23:14 +02:00
Lennart Poettering
abb05d610d tests: fix once test 2010-05-08 01:50:05 +02:00
Lennart Poettering
cdc2769162 thread: name all threads so that the names appear in /proc/$PID/task/$TID/comm 2010-05-07 23:58:59 +02:00
Lennart Poettering
34bb996e69 virtual: document how to implement fixed block size filters 2010-02-25 02:26:03 +01:00
Lennart Poettering
87cc741d0e memblockq: implement new call pa_memblockq_peek_fixed_size() 2010-02-25 02:10:45 +01:00
Lennart Poettering
323f0ad403 build-sys: fix check for pthread_setaffinity_np() 2010-02-21 20:11:23 +01:00
Lennart Poettering
ba255bfc42 tests: add pa_once_xxx() test 2010-01-13 17:40:31 +01:00
Daniel Mack
17d34462ea poll() is totally broken on Mac OS X
Even on 10.5.8, poll() does not do the right thing. Haven't checked on
newer versions. Hence, wrap all occurences of poll() to pa_poll and
emulate that call with select() on OSX. This is totally embarassing.
2009-12-16 16:11:36 +08:00
Lennart Poettering
49bc6bcf08 stripnul: initialize 'found' bool properly (llvm-clang-analyzer) 2009-09-08 23:53:56 +02:00
Lennart Poettering
ab5ac06ac7 Merge commit 'wtay/optimize' 2009-08-23 00:06:35 +02:00
Ted Percival
15eb03a5b3 core: Add thread-safe group info functions with dynamic buffers
Provides getgrgid, getgrnam, getpwuid & getpwnam replacements that are
thread safe (a la getgrgid_r() and friends) that internally
handle allocating big-enough buffers to avoid ERANGE errors
on large users or groups.
2009-08-22 00:53:39 +02:00
Wim Taymans
25724cdd40 Get rid of liboil
Get rid of the liboil dependency and reimplement the liboil functions with an
equivalent C implementation. Note that most of these functions are deprecated in
liboil and that none of them had  any optimisations. We can further specialize
our handrolled versions for some extra speedups.
2009-08-20 11:31:03 +02:00
Lennart Poettering
a69b729414 voltest: extend test to verify correctness of _multiply() and _divide() 2009-08-19 01:02:32 +02:00
Lennart Poettering
0f2a4ed422 volume: guarantee dB/linear conversion is reversible 2009-08-14 20:03:30 +02:00
Lennart Poettering
9bd3398f94 mix-test: fix test for s24-32 samples 2009-08-08 04:30:42 +02:00
Lennart Poettering
49fd8ee72e core-util: replace remaining fixed size destination string functions by _malloc() versions
This helps portability to GNU/Hurd.

Patch originally from Samuel Thibault but modified.

Closes ticket #546
2009-08-01 02:03:22 +02:00
Lennart Poettering
59659e1db6 interpol-test: allow configuration of latency 2009-07-24 20:22:19 +02:00
Lennart Poettering
88d5749f6a Merge branch 'master' of ssh://rootserver/home/lennart/git/public/pulseaudio
Conflicts:
	src/daemon/main.c
2009-07-23 15:18:06 +02:00
Lennart Poettering
a2b207e38a daemon: before exec'ing ourselves, make sure nobody plays games with /proc/self/exe 2009-07-20 15:48:36 +01:00
Diego Elio 'Flameeyes' Pettenò
542607f4c6 Make the rtstutter tests mostly pointless without CLOCK_REALTIME.
On the other hand, this actually makes the test build, and test at least
that it doesn't abort away, when the CLOCK_REALTIME interface is not
present (or when clock_gettime is not found).
2009-07-17 21:03:22 +02:00
Diego Elio 'Flameeyes' Pettenò
ad4e025ef5 Implement mix-test for s24le and s24be sample formats. 2009-06-29 17:40:42 +02:00
Diego Elio 'Flameeyes' Pettenò
595f80fef7 Use static constants to keep the generated sample blocks. 2009-06-29 17:40:35 +02:00
Diego Elio 'Flameeyes' Pettenò
080f6308f2 Ignore IPv6 tests, if IPv6 was built in but the system doesn't have it.
This removes a test failure when an IPv6-enabled PulseAudio is tested on a
system where IPv6 is not enabled in kernel.
2009-06-29 17:40:28 +02:00
Lennart Poettering
3ee29004a9 rtclock: fix build after merge 2009-06-22 23:15:01 +02:00
Lennart Poettering
fc33f7ee97 Merge most of elmarco/rtclock2
Merge commit 'e4d914c945'
2009-06-22 23:09:46 +02:00