[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] Reopen libao device handles when audio parameters change.
From: |
Andrei Kholodnyi |
Subject: |
[PATCH] Reopen libao device handles when audio parameters change. |
Date: |
Tue, 31 Aug 2010 23:04:26 +0200 |
> Why should how sound icons are played depend on the synth? imho this
> should go into module_utils.c ?It seems to me that unless an audio
> backend doesn't support resampling itself we should have the audio
> system we are using pulse / alsa / libao do the resampling instead of
> writing our own code to do.
Hi Trev,
IMO it is a responsibility of the TTS engine.
we have a special type for it called MSGTYPE_SOUND_ICON
which is processed by the corresponding synth e.g.
case MSGTYPE_SOUND_ICON:
{
char *msg = g_strdup_printf("<audio
src=\"%s%s\">%s</audio>",
EspeakSoundIconFolder, data, data);
result = espeak_Synth(msg, strlen(msg) + 1, 0,
POS_CHARACTER, 0,
flags, NULL,
NULL);
g_free(msg);
break;
}
And if synth can not do it, then we should do something like:
case MSGTYPE_SOUND_ICON:
convertSoundIcon(icon, &track);
Andrei.