Linux teamspeak

From MatureAsskickers Wiki

Jump to: navigation, search

Most of this information was obtained from the linux-gamers' howto [Sound & Teamspeak2 Howto]

Download the linux client. [goteamspeak.com]

Contents

Teamspeak 2 Client Setup

With SBLive! (Value) and Audigy cards, Teamspeak 2 should run without any extra configuration. If you have one of these cards and can't hear sounds, or your mic isn't transmitting, try adjusting your mixer properties. Make sure you have your microphone and Capture devices selected, and unmuted in the Input tab. It was also necessary for me to adjusted the AC97 volume slider in the Input tab, as it actually controlled the mic volume.

If using Teamspeak 2 with an older card (eg SBPCI 128), refer to the original document [[1]]

If using Teamspeak 2 with an onboard sound device (AC97), try this thread: [[2]]

TeamSpeak 2 Client and Sound Devices

Any modern linux distribution comes with a great software mixing utility called [ALSA]. Unfortunalty, Teamspeak 2 does not support ALSA. This section deals with setting up Teamspeak2 to use a secondary Playback/Capture device (if available). This allows games that use OSS sound to use the default Playback device (usually /dev/dsp). (Note: there is a way to use the alsa-oss wrapper for software mixing [[3]])

Getting Your Sound System Information

List the available wave devices:

$ cat /proc/asound/pcm
00-03: emu10k1 : Multichannel Playback : playback 1
00-02: emu10k1 efx : Multichannel Capture/PT Playback : playback 8 : capture 1
00-01: emu10k1 mic : Mic Capture : capture 1
00-00: emu10k1 : ADC Capture/Standard PCM Playback : playback 32 : capture 1

This is the output from a SBLive! Value. Your info may differ. You'll need at least one playback/capture device, and at least one other playback only or playback/capture device

List the available OSS devices:

$ cat /proc/asound/oss/devices
0: [0- 0]: mixer
1:       : sequencer
2: [0- 0]: raw midi
3: [0- 0]: digital audio
4: [0- 0]: digital audio
8:       : sequencer
9: [0- 0]: raw midi
12: [0- 1]: digital audio
13: [0- 1]: raw midi
14: [0- 1]: raw midi

The first column displays the minor device numbers. The devices 3,4, and 12, labeled 'digital audio', are the ones to remember.

List the installed devices:

$ ls -l /dev | grep dsp
lrwxrwxrwx 1 root   root         14 Oct  8 17:28 dsp -> /dev/sound/dsp
lrwxrwxrwx 1 root   root          9 Oct  8 16:04 dsp0 -> sound/dsp
$ ls -l /dev/sound
total 0
crw------- 1 user root 14, 12 Oct  8 16:04 adsp
crw------- 1 user root 14,  3 Oct  8 16:04 dsp

Creating a New Sound Device

(It is also possible to create new devices with udev rules: http://www.reactivated.net/writing_udev_rules.html)

With the information above, you can now switch your default capture/playback device for a playback only device. The following console commands can be appended to the '/etc/rc.local' file to be executed at boot time.

# shuffle sound devices for teamspeak and oss games
rm -f /dev/dsp
mknod /dev/dsp c 14 4
mknod /dev/dsp1 c 14 3
chown user:root /dev/dsp*

# enemy territory audio weirdness
echo "et.x86 0 0 direct">/proc/asound/card0/pcm0p/oss
echo "et.x86 0 0 disable">/proc/asound/card0/pcm0c/oss

Line 4 'chown user:root /dev/dsp*' is necessary because programs started with a non-root uid (user-id) need write access to the sound devices. The last 2 lines are only needed for quake3 engine games.

Automating the Device

Add the following lines to /etc/rc.local

# make device nodes for teamspeak
/bin/rm -f /dev/dsp
/bin/rm -f /dev/dsp1
/bin/mknod /dev/dsp c 14 4
/bin/mknod /dev/dsp1 c 14 3
/bin/chmod 0666 /dev/dsp
/bin/chmod 0666 /dev/dsp1

Capture and Playback Test

/* Capture to file */
$ cat /dev/dsp > test.wav

/* Playback file */
$ cat test.wav > /dev/dsp

Capture and Playback Mixer

In most cases you will be able to adjust your capture and playback gain controls using kmix.

$ /usr/bin/kmix

If kmix does not seem to be doing the trick try using the alsamixer. The alsamixer contains some gain controls not available through kmix. One of these may allow you to get enough mic gain when the kmix gain's don't seem to produce enough.

$ /usr/bin/alsamixer

Set TeamSpeak 2 Client to use the Device

In Settings > Options > Sound Devices > Sound Driver, choose Other and type in /dev/dsp1

Teamspeak 2 Client Extra's

Adding a teamspeak:// protocol handler to FireFox

about:config

Launch FireFox and type about:config in the address bar

network.protocol-handler.app
Right-click and select New->String
Name: "network.protocol-handler.app.teamspeak"
Value: "TeamSpeak"

The full path to the above script (value) should either be in your $PATH, or you need to include the full path to the script.

Value: "/home/user/TeamSpeak2RC2/TeamSpeak"
network.protocol-handler.external
Right-click and select New->Boolean
Name: "network.protocol-handler.external.teamspeak"
Value: "true"
Personal tools