Introduction and Goal

Experiments need to be slotted into some larger context of research, and their results need to be communicated to other practitioners. That's what makes them true "experiments" instead of private fetishes.

— Bruce Sterling, The Last Viridian Note

Methodology

The Problem(s)

For VoIP Ekiga Skype Twinkle Ventrilo (via WINE) Adobe Flash 10

For Gaming

World of Warcraft (via Cedega) Neverwinter Nights Quake4 On the Rain-Slick Precipice of Darkness (in other words, Torque)

For Media Playback

Quod Libet Totem-GStreamer VLC



The Solution (Not Really)

Death of 1000 Bugs

Application Bugs

ALSA Configuration

pcm.c

.c

~/.asoundrc

Broken By Default

Which device?

aplay -l

arecord -l

A Detour: The Mystery of ALSA Device Enumeration

libasound

~/.asoundrc

No really, which device?

ALSA_PCM_CARD

ALSA_CARD

ALSA_PCM_DEVICE

pcm.!default = pcm.default

sh -c 'ALSA_PCM=mypcm ekiga'

pcm.!default "headset"

ctl.!default "headset"



Okay, this device!

Surprise! It Doesn't Quite Work

Probably Enough for Now

To Audio Infrastructure Programmers

To Audio Application Programmers

To You Poor Users