This patch set adds a new time smoother to PA, which delivers higher precision than the current version. More details in the commit message of the first patch. The first patch adds the functionality, the other patches are a straight forward addition of the new smoother functions to all callers of the time smoother. A configure option is used to switch between the two smoother implementations. It is currently disabled by default but should be enabled once some broader testing was done. The last three patches could not be tested, so any tests would be appreciated. Georg Chini (10): pulsecore: Add alternative time smoother implementation Add configure option --enable-smoother-2 to enable alternative smoother code alsa sink/source: Allow alsa to use alternative smoother code bluetooth: Allow bluetooth to use alternative smoother code stream: Allow stream.c to use alternative smoother code combine-sink: Allow module-combine-sink to use alternative smoother code tunnel: Allow module-tunnel to use alternative smoother code esound-sink: Allow module-esound-sink to use alternative smoother code raop-sink: Allow module-raop-sink to use alternative smoother code solaris: Allow module-solaris to use alternative smoother code configure.ac | 7 + po/POTFILES.in | 1 + src/Makefile.am | 1 + src/modules/alsa/alsa-sink.c | 86 +++++- src/modules/alsa/alsa-source.c | 67 ++++- src/modules/bluetooth/module-bluez5-device.c | 57 +++- src/modules/module-combine-sink.c | 52 +++- src/modules/module-esound-sink.c | 51 +++- src/modules/module-solaris.c | 43 +++ src/modules/module-tunnel.c | 72 ++++- src/modules/raop/raop-sink.c | 40 ++- src/pulse/internal.h | 10 + src/pulse/stream.c | 52 +++- src/pulsecore/time-smoother_2.c | 408 +++++++++++++++++++++++++++ src/pulsecore/time-smoother_2.h | 53 ++++ 15 files changed, 979 insertions(+), 21 deletions(-) create mode 100644 src/pulsecore/time-smoother_2.c create mode 100644 src/pulsecore/time-smoother_2.h -- 2.14.1