xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.



Version 4 (modified by Antoine Martin, 8 years ago) (diff)

re-order things

Sound

Note: at the moment sound is disabled by default so all commands must be started with the environment variable XPRA_SOUND set to any non-zero value. ie:

export XPRA_SOUND=1
xpra start :10

Once the sound has started forwarding (and not before), you may get more diagnostic messages by setting XPRA_SOUND_DEBUG=1. (see Debugging)

Requirements

You will need:

  • a build/installation including gstreamer support for both client and server
  • a client with sound output of any kind (even virtual)
  • a server with pulseaudio (for going beyond the simple test step)

Test Sound Source Setup

The easiest way of testing that a system is capable of forwarding and receiving sound is on a Posix system (Linux, BSD, etc). Using the XPRA_SOUND_TEST environment variable, we can instruct the xpra server to use a fake sound source instead of hooking into a pulseaudio server:

XPRA_SOUND_TEST=1 xpra start :10

Then we can attach the client and start the speaker from the tray:

xpra attach

Getting this far ensures that sound forwarding does work on this system, albeit from a fake source instead of pulseaudio.

Using an existing pulseaudio server

Next, we want to add pulseaudio, but without starting it ourselves, so we can simply re-use the existing server that gets started with most modern desktops.
Check that pulseaudio is running in your Posix desktop:

pactl info

Start an xpra server:

xpra start :10

Attach from the same machine:

xpra attach

The server log file should contain the warning message:

identical pulseaudio server, refusing to create a sound loop - sound disabled

Getting this far should ensure that all the components are installed, enabled and that the xpra server found the pulseaudio device to connect to.

Test Remote Setup

Using a second client machine (or a second desktop session, virtual machine, etc), we can connect this new client to the server and get the sound from the desktop session forwarded to the client. The server can be running the test source or a the desktop session's pulseaudio server. In the case of an existing pulseaudio server, simply start any sound application. pavucontrol on the server should show an Xpra entry in the Recording tab. The client should show an Xpra entry in the Playback tab (or whatever mixer/sound tool you have installed)

Attachments (3)

Download all attachments as: .zip