backup luis | 27 Jun 09:03 2016

Pulseaudio bluetooth sink problems

After days compiling and trying different configurations and versions with the bluez stack,
I got pulseaudio running in a tiny router with OpenWrt, but not very well, the sound
get some distortion, stops, echo, delay, chop and so on...

Anyway, I know that is a very limited hardware for my needs, but I need to resolve one specific
problem because if I can resolve it I will buy a better hardware for my project.

When I play a song from the cell phone, if the sound level of the song is low, what I hear is almost
perfect, but if the sound level rise, by the song itself or if I rise the volume in the cell phone
the sound get very distorted, I check sink and output volumes in the pulseaudio, testing from 1% to 100%
and nothing changes, only the level of the audio card output, but the distortion persist. Testing the same
sound/songs in mp3 and wav formats.
And when I try to play with an old Nokia phone, I only ear noise, like white noise regardless of the volume, this
noise is constant, not like a distorted sound.

Pulseaudio: 6.00, 6.22.9 and 8.99.2 compiled for dbus
Bluez: 5.30
Cell Phone: Android
Old Cell Phone: Nokia

paplay with some wav files sounds good.
the sound board and the router is running well with another programs like madplay, alsamixer, mpd.

Some tip is really apreciated.

pulseaudio-discuss mailing list
pulseaudio-discuss <at>
(Continue reading)

Dark Shadow | 26 Jun 19:25 2016

How can I record from multiple inputs

I'm trying to record some game footage and include some talking but I
can't get audio to record from multiple sources.

I have the game audio coming into the system via a loop back cable
into line-in which works
I also have a Bluetooth headset which can work for my voice on its own

But I can't record from both simultaneously since Pulseaudio only lets
me select one

My ideal setup would be
audio output via BT headset
I can hear the line-in input also via module-loopback which I already do
but I see problems if the voice is multiplexed with since I don't want
voice looped back to the output
the OBS recording software records both line-in and voice (BT) either
via some virtual multiplexed virtual input or being presented with
multiple input options from Pulseaudio (prefered over virtual)

I tried going through the list of modules on the wiki but couldn't
figure out how to do anything.
pulseaudio-discuss mailing list
pulseaudio-discuss <at>
Julian Orth | 24 Jun 05:01 2016

Flushing other programs' streams


I have a program that automatically mutes/unmutes other programs'
streams. A problem I've encountered is that, after unmuting, a small
portion of the audio that was supposed to be muted is played.

I think this is related to buffering. Is there a way to work around
this problem? Ideally I would like to discard the buffers every time I
unmute a sink-input. I've considered using a timer that delays the
unmute action by the buffer length (as reported in the
pa_sink_input_info structure) but I'm afraid that might not work if
the other program flushes its buffer at the same time.

pacmd reports that the sink-input I'm dealing with has a latency of 1
second. I don't know how latency and buffering are related but maybe
this information makes a difference.

pulseaudio-discuss mailing list
pulseaudio-discuss <at>
김정연 | 24 Jun 04:37 2016

Volume ramping APIs

Dear all,

Recently, I noticed volume ramping patches are currently staging at below link:

I looks nice feature but, they didn't accepted to upstream.
Anyone who share us any information or history? Or, any plans to apply them in future?


pulseaudio-discuss mailing list
pulseaudio-discuss <at>
Arun Raghavan | 22 Jun 09:15 2016

[ANNOUNCE] PulseAudio 9.0 is out

I've pushed the tag and tarballs out for PulseAudio 9.0. A quick summary
of the changes:

 * Automatic routing improvements
 * Beamforming and various other new features in the WebRTC echo
 * Various improvements in module-role-cork and module-role-ducking
 * LFE remixing disabled by default
 * memfd-backed shared memory transport
 * Support for sample rates up to 384 kHz
 * webrtc-audio-processing dependency minimum version bumped to 0.2
 * Changed the C standard from C99 to C11.

For packagers, the webrtc-audio-processing dependency is the thing to

Tanu's written a more detailed changelog at:

The release is at the usual place:
MD5: da7162541b3a9bc20576dbd0d7d1489a
SHA1: d9a9d7cb667ed95ee1de4b6544d5c7444c5a0064

Thanks to all our contributors who made this release possible (with a
special shout-out to Ahmed Darwish for the exciting memfd work)!

pulseaudio-discuss mailing list
pulseaudio-discuss <at>
Arun Raghavan | 22 Jun 09:00 2016

[ANNOUNCE] WebRTC AudioProcessing v0.3

Hi folks,
I've made a quick release with a couple of build fixes for
webrtc-audio-processing. Should make it slightly easier for packagers
updating this before PulseAudio 9.0.

Release is at:
MD5: 336ae032f608e65808ac577cde0ab72c
SHA1: 65ed41129bcded398c37860ccb38a8cd7ae4dfe3



Release 0.3

Minor build fixes.

--- git shortlog v0.2..v0.3 ----

Arun Raghavan (2):
      doc: Update NEWS for release
      build: Bump version to 0.3

Rex Dieter (2):
      build: enforce linking with --no-undefined, add explicit -lpthread
      build: Make sure files with SSE2 code are compiled with -msse2
pulseaudio-discuss mailing list
pulseaudio-discuss <at>
Laszlo KERTESZ | 20 Jun 08:11 2016

Prevent sound being lost on all applications after a pulseaudio restart?


Is this possible to somehow configure pulseaudio in such a way that a restart of the daemon will not prevent already running applications from using sound? 
pulseaudio-discuss mailing list
pulseaudio-discuss <at>
Ahmed S. Darwish | 18 Jun 15:37 2016

Notes on pulse latest GCC 6 warnings

Hi :-)

Compiling pulse master with gcc v6.1.1 emits several warnings from
the `padsp' utility. I was going to send a fixing patch, but upon
further inspection most of them seems to be problems either from
GCC itself, or from its zealous interpreatation of glibc headers.

Do we want to release a v9.0 with such warnings? Your input is

==> GCC -Wlogical-op not probably understanding macros

The first warning is the following:

   utils/padsp.c: In function ‘sndstat_open’:
   utils/padsp.c:1440:9: warning: logical ‘and’ of equal expressions [-Wlogical-op]
            && flags != (O_RDONLY|O_LARGEFILE)

and it comes from below if condition:

       if (flags != O_RDONLY
   #ifdef O_LARGEFILE
           && flags != (O_RDONLY|O_LARGEFILE)

Since O_RDONLY and O_LARGEFILE effectively have the value of
_zero_ in modern Linux systems, thus it complains because we are
effectively doing:

   if (flags != 0 && flags != 0)

Nonetheless, gcc should've been smart enough to detect we're
comparing flags with different macros. Other projects also raised
a similar concern, and this is tracked in the following GCC
bugzilla entry:

   "Over-ambitious logical-op warning on EAGAIN vs EWOULDBLOCK"

==> GCC's tough interpreatation of __nonnull arguments

The second class of warnigns is the following:

   utils/padsp.c: In function ‘access’:
   utils/padsp.c:2450:8: warning: nonnull argument ‘pathname’ compared to NULL [-Wnonnull-compare]
        if (!pathname ||
   ... and similar other 7 warnings ...

Here padsp is re-implementing libc's access(3) function. GCC is
complaining because glibc's declaration of access() marks the
first string parameter with gcc's __attribute__((nonnull)):

   /* /usr/include/unistd.h */
   extern int access (const char *__name, int __type) __THROW __nonnull ((1));

The same warnings are also issued for padsp's re-implementation
of stat(), stat64(), __xstat(), etc.

This is even more strange because the GCC nonnull attribute docs
state that "The compiler may also choose to make optimizations
based on the knowledge that certain function arguments will not be

And this is stated to be the main reason of the new GCC 6 warning.
Namely, that GCC __will optimize away__ the NULL checks and the
main reason of this warning is to warn the developer about that:

   "GCC might optimize such checks away so warn the user when the
   function contains such comparisions."

   "So the new warning essentially says 'you promised this check
   is redundant and it will be removed'."

So what is the suggested action for pulse here? For now, we're at
odds with the system call headers provided by glibc.



pulseaudio-discuss mailing list
pulseaudio-discuss <at>
Ahmed S. Darwish | 17 Jun 21:53 2016

[PATCH 0/2] v9.0: Fix valgrind warnings


This mini patch series fixes the valgrind warnings earlier reported
by Alexander here:

They are generated over 'master' -- hopefully be merged there, if
everything is OK, before the v9.0 release.



pulseaudio-discuss mailing list
pulseaudio-discuss <at>
Marco Trapanese | 17 Jun 10:28 2016

pulseaudio 8.99.2 compiled from sources doesn't work

I compiled pulseaudio in this way in Debian Jessie Lite for RPi3:

> wget 
> ./configure --disable-bluez4 --disable-bluez5-native-headset 
> --prefix=/usr --sysconfdir=/etc
> make
> make install

without changing anything in the configuration files. When I launch 
pulseaudio it returns this error:

> |[pulseaudio] main.c: Daemon startup without any loaded modules, 
> refusing to work.|

here a more verbose output:

> I: [pulseaudio] main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: 
> Operazione non permessa
> I: [pulseaudio] main.c: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: 
> Operazione non permessa
> D: [pulseaudio] core-rtclock.c: Timer slack is set to 50 us.
> I: [pulseaudio] core-util.c: Failed to acquire high-priority 
> scheduling: File o directory non esistente
> I: [pulseaudio] main.c: This is PulseAudio 8.99.2
> D: [pulseaudio] main.c: Compilation host: armv7l-unknown-linux-gnueabihf
> D: [pulseaudio] main.c: Compilation CFLAGS: -g -O2 -Wall -W -Wextra 
> -pipe -Wno-long-long -Wno-overlength-strings 
> -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op 
> -Wsign-compare -Wformat-security -Wmissing-include-dirs 
> -Wformat-nonliteral -Wpointer-arith -Winit-self 
> -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes 
> -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow 
> -Wendif-labels -Wcast-align -Wstrict-aliasing -Wwrite-strings 
> -Wno-unused-parameter -ffast-math -fno-common 
> -fdiagnostics-show-option -fdiagnostics-color=auto
> D: [pulseaudio] main.c: Running on host: Linux armv7l 4.4.11-v7+ #888 
> SMP Mon May 23 20:10:33 BST 2016
> D: [pulseaudio] main.c: Found 4 CPUs.
> I: [pulseaudio] main.c: Page size is 4096 bytes
> D: [pulseaudio] main.c: Compiled with Valgrind support: no
> D: [pulseaudio] main.c: Running in valgrind mode: no
> D: [pulseaudio] main.c: Running in VM: no
> D: [pulseaudio] main.c: Optimized build: yes
> D: [pulseaudio] main.c: FASTPATH defined, only fast path asserts disabled.
> I: [pulseaudio] main.c: Machine ID is 18634e1404184594bc66ddacfba0bf43.
> I: [pulseaudio] main.c: Using runtime directory 
> /home/pi/.config/pulse/18634e1404184594bc66ddacfba0bf43-runtime.
> I: [pulseaudio] main.c: Using state directory /home/pi/.config/pulse.
> I: [pulseaudio] main.c: Using modules directory 
> /usr/lib/pulse-8.99/modules.
> I: [pulseaudio] main.c: Running in system mode: no
> I: [pulseaudio] main.c: System supports high resolution timers
> D: [pulseaudio] memblock.c: Using shared posix-shm memory pool with 
> 1024 slots of size 64,0 KiB each, total size is 64,0 MiB, maximum 
> usable slot size is 65496
> I: [pulseaudio] cpu-arm.c: CPU flags: V6 V7 VFP EDSP NEON VFPV3
> I: [pulseaudio] svolume_arm.c: Initialising ARM optimized volume 
> functions.
> I: [pulseaudio] sconv_neon.c: Initialising ARM NEON optimized conversions.
> I: [pulseaudio] mix_neon.c: Initialising ARM NEON optimized mixing 
> functions.
> I: [pulseaudio] remap_neon.c: Initialising ARM NEON optimized remappers.
> E: [pulseaudio] main.c: Avvio del demone senza alcun modulo caricato, 
> rifiuta di lavorare.
> I: [pulseaudio] main.c: Daemon terminated.
ls /usr/lib/pulse-8.99/modules shows the modules are there...

Perhaps is changed something in the latest version?

pulseaudio-discuss mailing list
pulseaudio-discuss <at>
Tanu Kaskinen | 16 Jun 16:07 2016

Mostly away until June 28th

I'm leaving on a trip in a few hours, and I'll be back on Tuesday. Soon
after that (probably Thursday evening) I'll leave on another trip, from
which I expect to be back on the following week's Tuesday. I'll be
offline during the trips, so if I seem unresponsive, that's the reason.

pulseaudio-discuss mailing list
pulseaudio-discuss <at>