internal LinSynth(PluginControl pc, string[] beeps)
{
BeepNames = beeps;
ToASCII = new System.Text.ASCIIEncoding();
OSDMap speech = pc.config["synthesizer"] as OSDMap;
if (speech == null)
{
speech = new OSDMap();
speech["server"] = new OSDString("localhost:1314");
speech["speed"] = new OSDInteger(0);
pc.config["synthesizer"] = speech;
pc.SaveSpeechSettings();
}
string server = speech["server"].AsString() ?? "localhost:1314";
string[] parts = server.Split(':');
serverhost = parts[0];
if (parts.Length > 1)
{
serverport = parts[1];
}
else
{
serverport = "1314";
}
rateBias = speech["speed"].AsInteger();
// Build the festival command line args
ActualArgs = Regex.Replace(SynthArgs, @"%S", serverhost);
ActualArgs = Regex.Replace(ActualArgs, @"%P", serverport);
voiceProperties = pc.config["properties"] as OSDMap;
}