Commit graph

479 commits

Author SHA1 Message Date
Maarten Bosmans
bca44b7700 tests: Revisit which tests to run with make check
Some tests (remix-test, sig2str) only display information, so they are not
useful for automated testing.  Others (interpol-test, once-test, thread-test)
do return an error on failure, so should be included in TESTS.
2011-11-02 23:44:55 +05:30
Maarten Bosmans
07dd717bc0 tests: Rename voltest to volume-test 2011-11-02 19:26:23 +05:30
Maarten Bosmans
681aaf7a9a tests: More useful output of make check
Instead of spilling thousands of lines of output, make check now runs the
test-suite in about 100 lines or so.  If running under make check, the output of
tests is reduced. The MAKE_CHECK environment variable is used for this, so that
when running the test manually, the full output is still shown.  Furthermore,
pa_log is used consistently instead of printf, so that all test output goes to
stderr by default.  Colored output from make check goes to stdout.
2011-11-02 19:26:23 +05:30
Colin Guthrie
3c5cc34547 role-cork: Rename module-cork-music-on-phone to module-role-cork.
This module will be extended to be a bit more generic so the
old name will soon be obsolete.
2011-10-25 14:01:32 +02:00
Daniel Mack
9a1eee5c43 osx: module_bonjour_publish needs to be linked against libprotocol-native.la 2011-10-19 23:57:00 +01:00
Arun Raghavan
31a9f195fa build-sys: Minor CXXFLAGS fix
Set it on echo-cancel-test only if webrtc support is enabled.
2011-10-17 17:09:24 +05:30
Arun Raghavan
6df6eb959e echo-cancel: Add the WebRTC echo canceller
This adds the WebRTC echo canceller as another module-echo-cancel
backend. We're exposing both the full echo canceller as well as the
mobile echo control version as modargs.

Pending items:

1. The mobile canceller doesn't seem to work at the moment.

2. We still need to add bits to hook in drift compensation (to support
   sink and source from different devices).

The most controversial part of this patch would probably be the
mandatory build-time dependency on a C++ compiler. If the optional
--enable-webrtc-aec is set, then there's also a dependency on libstdc++.
2011-10-17 16:42:59 +05:30
Arun Raghavan
bb4b8f896e build-sys: Drop libsamplerate from pulsecommon deps
This was erroneously added in:

    commit d766b38e1b
    build: Remove unnecessary flags in AM_CFLAGS
2011-10-17 09:43:38 +05:30
Arun Raghavan
3f5c5582f4 echo-cancel: Add a standalone test program
This is useful to test the canceller implementation on data from disk
rather than testing live. Handy for comparing implementations reliably.
2011-10-10 13:25:25 +05:30
Daniel Mack
0f363d252c osx: don't build the once-test binary on OS X
This patch was already added earlier with commit ID 2f86ba4f, but the
changes got reverted by commit 3adc43b ("win32: Make once-test work").

However, this still doesn't work on OSX as here, pthread is in general
available, but the barrier APIs aren't.
2011-10-01 13:25:16 +01:00
Arun Raghavan
38be4a2d44 echo-cancel: Use volume sharing by default
Uses the shared volume infrastructure by default with an option to
fallback on the old pretend-volume-sharing-that-kind-of-works if someone
wants it that way.

Users who keep left != right (or any sort of unbalanced channel volumes)
will likely want to disable shared volumes since it will cause their
master sink/source volume to be balanced.

This really isn't a very pleasant scenario since users would need to
manually set up echo cancellation in their config for this (until we
have a way to store module configuration). That said, the majority case
benefits from the volume sharing, so let's not wait for the
configuration infrastructure to be ready to use this.
2011-09-14 14:15:01 +05:30
Arun Raghavan
ec099f9306 equalizer: Use volume sharing by default
Uses the shared volume infrastructure by default with an option to
fallback on the old pretend-volume-sharing-that-kind-of-works if someone
wants it that way.
2011-09-14 14:15:01 +05:30
Arun Raghavan
a9c85074cb def: Hide server-side sink/source flags
This makes sure that sink/source flags that are used on the server side
only are not leaked to clients.
2011-09-14 14:02:12 +05:30
Colin Guthrie
83577aa373 build-sys: Oops forgot to add the Kinect profile to the build system. 2011-09-09 19:55:09 +01:00
Colin Guthrie
1595608b0b formats: The format code should be in libpulse, not libpulsecommon
Without this change any applications calling e.g. pa_format_info_new()
and friends will be explicitly linked against libpulsecommon-$MAJORMINOR.so
which is something we specifically avoid as it may contain ABI/API unstable
functions.

Also ensure we export pa_format_info_from_string() for external use.

fdo#40616
2011-09-05 10:32:28 +02:00
Arun Raghavan
460a24778b build-sys: Fix some LDFLAGS vs. LDADD usage
Thanks to Stefan Kost for pointing these out.
2011-08-24 17:56:34 +05:30
Maarten Bosmans
b4e938e194 Move i18n.[ch] to src/pulsecore
The header is used in files troughout the tree and is not included in the public api,
so it belongs in pulsecore, not in pulse.
2011-08-11 13:23:42 +02:00
Colin Guthrie
906e99b792 alsa-mixer: Remove workaround for USB head/handsets
Now that subset mixer paths are removed, this workaround is no longer needed.

This effectively reverts 1c38b5d478 but due
to me forgetting to add files and adding a couple extra workarounds after,
it's easier to just do this manually rather than run git-revert.
2011-07-20 22:23:11 +01:00
Colin Guthrie
6addadc574 build-sys: equalizer-sink needs DBus aswell as FFTW 2011-06-30 11:58:30 +01:00
Maarten Bosmans
107106afd4 build-sys: Process configuration files with m4
This allows for build-time conditionals to be processed,
eliminating the need for a separate default.pa.win32.
2011-06-30 11:54:03 +01:00
Maarten Bosmans
3722dbbcb3 build-sys: Use configure AC_OUTPUT to process config files
Don't use sed to replace @variable@ in file.in.
2011-06-30 11:54:03 +01:00
Maarten Bosmans
e42bc02dc6 build-sys: Move some more defines to configure.ac 2011-06-30 11:54:03 +01:00
Maarten Bosmans
df41b8c948 build-sys: Move some more defines from CFLAGS to config.h 2011-06-26 13:48:24 +01:00
Maarten Bosmans
08631831cb build-sys: Use AX_DEFINE_DIR macro instead of setting AM_CFLAGS
This makes the compiler command line a bit shorter, useful for compiling with make V=1.
2011-06-26 13:48:11 +01:00
Maarten Bosmans
7eba9d92f7 build-sys: Use ax_check_flag macros from autoconf archive
Those macros cover almost all functionality of attributes.m4 that was
used, so that file can be removed.
The CC_NOUNDEFINED macro is used directly in configure.ac.
2011-06-26 13:47:58 +01:00
David Henningsson
1c38b5d478 alsa-mixer: Add workaround for some USB headsets
This is a workaround - these usb headsets have one output volume
control only, labeled "Speaker". This causes the default profile
set to not control the volume at all, which is a bug. Workaround
that by creating a separate profile set.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2011-06-25 12:53:44 +01:00
Maarten Bosmans
ebf93404b6 Remove libpulse-browse and pabrowse 2011-06-24 10:08:11 +01:00
Maarten Bosmans
3adc43b8fe win32: Make once-test work
The barrier is not used when pthread is not available.
2011-06-24 00:32:22 +01:00
Maarten Bosmans
2cfacc6f55 build-sys: Cleanup Makefile.am
No need to keep some tests in two lists.
2011-06-24 00:30:25 +01:00
Colin Guthrie
35f99c6e31 device-restore: Add a new protocol extension for device-restore.
This simply exposes the formats that a device supports
via a simple protocol extension that will allow clients
to setup what a connected receiver supports format wise.
2011-06-22 23:12:19 +01:00
Colin Guthrie
c3056ce530 build-sys: module-equalizer-sink needs dbus. 2011-06-22 14:16:21 +01:00
Maarten Bosmans
6c3f05574a build-sys: Reset CFLAGS after DBUS check 2011-06-20 16:01:37 +02:00
Daniel Mack
71e936da58 osx: pass -headerpad_max_install_names to the linker, too
This option won't make it to the actual libtool command which does the
linking when not prefixed with -Wl,
2011-05-30 11:26:09 +01:00
Sjoerd Simons
2bc2abc68a build-sys: Link libpulse directly to libdbus-1 if needed
Linking libpulse with gold or when using ld --no-add-needed fails
as libpulse uses dbus methods directly but isn't explicitly linked to it.
So link to it when needed :)
2011-05-16 11:08:32 +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
20f1fa17be alsa-mixer: Remove passthrough profiles
These aren't used any more - we handle passthrough mode in the iec958*
profiles now.
2011-05-02 11:55:38 +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
Arun Raghavan
c3839c7637 core: Add a pa_format_info structure
This will be used to represent the format of data provided by the client
for both compressed and PCM formats in a new extended API.
2011-05-02 10:17:20 +05:30
Colin Guthrie
512baa1a1f combine: Rename module-combine to module-combine-sink.
This also includes a compatibility module that will ultimately be removed in
a future release.
2011-04-30 15:12:45 +01:00
Marc-André Lureau
4c3f7b0f30 module-null-source: New null-source module 2011-04-28 10:45:20 +01:00
Colin Guthrie
0e60a80afa filter-heuristics: New module that applies some basic heuristics regarding filters.
At present the only heuristic is one to apply the echo-cancel filter
when dealing with phone streams.
2011-04-18 10:31:51 +02:00
Colin Guthrie
9a2a045d7c filter-apply: New module to automatically load filter sinks (and move streams) based on sink-input property hints.
This module does not yet deal with modules that need matched inputs/outputs
(i.e. echo-cancel) but this will be added in due course.
2011-04-18 10:31:51 +02:00
Michael Terry
6ed3a7dcc9 switch-on-connect: Add a new module to allow for hotplugged devices to be used by default.
This module implements a simply policy decision that any newly plugged
in devices should be used.

This is a reasonable approach and paprefs will be updated to allow for
this option to be turned on or off.

This is more or less a stop-gap solution. When priority lists are
implemented in the core, then policy modules may ultimately be
re-engineered to adjust the priority lists rather than doing any of
their own routing per-se.
2011-04-03 13:42:44 +01: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
Arun Raghavan
62f181aa28 bluetooth: Pull a2dp-codecs.h from BlueZ
This pulls a2dp-codecs.h from BlueZ which contains the capabilities
structures for SBC and MPEG. We currently have these manually added to
ipc.h, so pulling this header makes our files identical to upstream.
2011-03-31 11:04:39 +01:00
Colin Guthrie
ae35ec1ed5 Merge remote-tracking branch 'zonique/osx' 2011-03-24 09:08:05 +00:00
Daniel Mack
00d96c04dc osx: add -headerpad_max_install_names to LDFLAGS
This is needed for sufficient padding of library names in linked
binaries.
2011-03-21 00:32:29 +01:00
Daniel Mack
249384c7a2 osx: re-order module locations
move all Mac OS X related modules to own location.
2011-03-21 00:32:29 +01:00
Colin Guthrie
1674e1ca53 build-sys: Make update-sbc, update-reserve and update-rtkit work in OOT builds 2011-03-20 12:42:28 +00:00
Colin Guthrie
d7ce59de88 Merge remote-tracking branch 'mkbosmans/mingw32-build' 2011-03-20 11:18:19 +00:00