Each time a user logs in to a Sun Ray Client, a script
automatically assigns the $AUDIODEV
environment variable to that session. One
utaudio process is assigned to each
session. Refer to the utaudio
and
audio
man pages for more information.
During hotdesking, an emulated audio device follows the user
to the new session. The name of the emulated device is carried
in the $AUDIODEV
environment variable. It
is the responsibility of the audio application to inspect
$AUDIODEV
and direct its output to that
device.
The emulated audio devices are created as device nodes in the
/tmp/SUNWut/dev/utaudio
directory. This
directory tree is recreated at boot time.
Do not remove the /tmp/SUNWut/dev/utaudio
directory. If you delete this directory, users with
utaudio sessions cannot use their audio
pseudo device nodes.
Use the Sun audio keys (top right of keyboard) and check the volume and mute buttons.
Display the Sun Ray session's audio settings:
$ utsettings
and verify that the audio output is selected properly, for example, for headphones or speakers.
Make sure the volume is not muted in your desktop session.
Try a set of external speakers plugged into the Sun Ray's audio out or headphones port. If that works, the Sun Ray might have a broken speaker.
To test whether the audio is working, type the following:
$ cat audiofile
> $AUDIODEV
Solaris provides suitable sample PCM-encoded audio files
in /usr/share/audio/samples/au
, so for
instance this command:
$ cat /usr/share/audio/samples/au/gong.au > $AUDIODEV
should produce the sound of a gong.
Linux generally does not provide PCM-encoded audio files. If you can not locate a suitable file then this command can be used to generate a continuous tone:
$ perl -e 'foreach(-8..8){push(@v,pack("n",4*$_))} while(1){print @v}' > $AUDIODEV
If the cat or perl command hangs, you might need to quit any other applications that are currently trying to play audio, for example, a browser.
Check the current release of the Flash plugin and make
sure it is at version 9.0.r125 or later. To check the
Flash plugin version, type
about:plugins
as the URL in the
browser.
Try quitting Firefox and explicitly restart it in a terminal window.
If all else fails, quit Firefox, go to your
.mozilla
directory, and rename the
"firefox" directory to something else, for example,
firefox.jan09
. Then, restart Firefox
and see whether the audio works with a completely clean
configuration.
If the audio works with the clean configuration, then something is wrong in your browser's previous configuration.
Some applications fail to honor $AUDIODEV
and unconditionally use a specific audio device node such as
/dev/audio
or /dev/dsp
.
To work around this shortcoming, Sun Ray Software provides a
preloadable shared library libc_ut.so
that
can be used to interpose on an application and redirect its
activities to the device specified by
$AUDIODEV
. To put this redirection into
effect:
Navigate to the shell or wrapper from which you started the audio player.
Set the environment variable LD_PRELOAD
in the player application's environment to refer to the
libc_ut.so
interposer:
$ LD_PRELOAD=libc_ut.so $ export LD_PRELOAD
Restart the application.