On Tue, 2010-05-11 at 09:41 -0400, Bill Cox wrote: > A huge problem we have is supporting blind users. In some cases, they > can open VNC ports for me, and I can often find out what's wrong with > their system. However, I never know for sure if speech is playing. > What I really want is to mirror the pulseaudio output stream over the > internet to my machine, so I can hear what they hear. > > Is this possible? We might be able to write a bit of code to make all > this a bit easier for users. I don't think Pulseaudio's native streaming protocol is suitable for over-the-internet streaming. If the requirement is really just to know whether speech is playing (i.e. you don't care about latency), I think a proper internet streaming program (e.g. icecast) can do the job. I remember seeing gstreamer one-liners that are supposed to set up a simple temporary icecast server. Indeed, googling for "gst-launch pulsesrc shout2send" gives good looking results. Unfortunately, it looks like the gst-launch one-liner requires setting up a "proper" icecast server beforehand, which at least I wouldn't like to do if I wanted to just temporarily stream audio out of my machine for debug purposes. Anyway, I'd personally look for solutions that allow you to just hook into the sound card's monitor source in Pulseaudio and easily set up a temporary streaming server. If you want to try if Pulseaudio's native protocol is good enough, setting up a debug session would consist of loading module-native-protocol-tcp with the "auth-anonymous=1" argument, opening a port in the firewall if needed, and then on your own machine running $ parec --server=123.123.123.123 --device=foobar.monitor | pacat where "123.123.123.123" is the IP address of the machine that needs debugging and "foobar.monitor" is the name of the monitor source of the sound card on the user's machine. Tearing down the debug setup requires just unloading the module that was loaded earlier, and closing the firewall port. -- Tanu Kaskinen