Advanced Linux Sound Architecture ALSA is a boon for software TTS users --- you can now use your soundcard to produce spoken output while not losing audio output from other applications such as music players and streaming radio stations.
Emacspeak implements an ALSA-enabled TTS server for the IBM
ViaVoice engine ---
using this server effectively requires appropriately tuning the
parameters in the user's asoundrc file to:
DMix plugin to enable software mixing
of multiple channels of audio.Depending on how well your sound-card is supported by ALSA, the above can be either trivially simple or a tedious process of trial and error. I'm writing this up to:
asoundrc provided with Emacspeak works as
expected.For the above, works effectively means the following:
mplayer.At the end of this entry, you can find the relevant section
from the asoundrc file from the Emacspeak
distribution, with comments indicating which sound cards perform
well.
An example of a card that does not work well with these
settings is the Audigy-LS from Creative; the TTS engine works on
that card, but performs degrades:
asoundrc file.
Id: asoundrc,v 1.3 2006/05/23 00:22:16 raman Exp $
#these numbers work on the following:
# aplay -l | head 1
# I82801DBICH4 [Intel 82801DB-ICH4] (IBM Thinkpads)
# ICH6 [Intel ICH6],
# default device is a mixer
pcm.!default {
type plug
slave.pcm "dmixer"
}
pcm.dmixer {
type dmix
ipc_key 1024
slave {
pcm "hw:0,0"
format s16_LE
period_time 0
period_size 1024
buffer_size 4096
rate 44100
}
bindings {
0 0
1 1
}
}