[pulseaudio-discuss] weirdly choppy sound with remote ALSA plugin, only if pavucontrol is not running (!)

Nix nix at esperi.org.uk
Fri Jan 22 05:52:21 PST 2010


On 14 Jan 2010, Lennart Poettering outgrape:

> On Sat, 09.01.10 23:06, Nix (nix at esperi.org.uk) wrote:
>
>> (symptoms also observed with qemu, world of goo and scorched3d, yes I
>> tried to run *that* over the network, I'm a glutton for punishment).
>> 
>> This only happens with a remote connection: a local connection, even
>> using the ALSA plugin, works fine. (This is a mostly-idle gigabit
>> network, so I doubt network saturation is to blame).
>
> Could you please try
> http://git.0pointer.de/?p=pulseaudio.git;a=patch;h=8d356659e69556fa25d0579a66084f820683e2b8
> and see if that fixes things for you?

Unfortunately not :( at least not when cherry-picked atop 0.9.21.

> How do you acces the other server? directly or via module-tunnel?

Directly (assuming I interpret 'other server' correctly). I have an
SSH connection from my local machine to the big QEMU server, and
that talks via ALSA, and the ALSA plugin then has a connection
listed as

Client #12
        Driver: protocol-native.c
        Owner Module: 11
        Properties:
                application.name = "ALSA plug-in [qemu-system-x86_64]"
                native-protocol.peer = "TCP/IP client from 192.168.16.15:56430"
                native-protocol.version = "17"
                application.process.id = "22341"
                application.process.user = "root"
                application.process.host = "spindle"
                application.process.binary = "qemu-system-x86_64"
                application.language = "C"
                window.x11.display = "localhost:20.0"
                application.process.machine_id = "3ce2f2ae19c325857508e0244a3df344"
                application.process.session_id = "3ce2f2ae19c325857508e0244a3df344-1264167643.918879-667916282"

and stutters like anything. While it's stuttering, qemu prints vast
swathes of

alsa: Unexpected state 1

to stderr (more than 100Mb of it in thirty seconds), which qemu prints
when it calls snd_pcm_state() and gets a result other than
SND_PCM_STATE_{XRUN,SUSPENDED,PREPARED,RUNNING}. Getting
SND_PCM_STATE_SETUP back when the connection should be up is rather odd,
and may be related.

If I tell e.g. qemu to use PulseAudio native communication, no
stuttering. So this is an ALSA pulseaudio plugin problem, or, I suppose,
an alsa-lib problem (I'm using 1.0.22).

Obviously having everything have PA native support is ideal, but,
let's be honest, it's been years and not everything's migrated off
OSS yet. The likelihood that I'll have to use this stuttering ALSA
plugin is high so I'd like to fix this :)

I suppose the next step is a packet capture?



More information about the pulseaudio-discuss mailing list