//Change voice properties according to selected voice index. private void ChangeVoiceProperties(int iVoiceIndex) { Jtts.JTTS_VOICEATTRIBUTE vAtt = new InfoQuick.SinoVoice.Tts.Jtts.JTTS_VOICEATTRIBUTE(); Jtts.jTTS_GetVoiceAttribute(iVoiceIndex, out vAtt); textBoxVoiceID.Text = vAtt.szVoiceID; textBoxAge.Text = strAge[vAtt.nAge]; textBoxDomain.Text = ""; for (int i = Jtts.DOMAIN_MIN; i <= Jtts.DOMAIN_MAX; i++) { uint uiTemp = (vAtt.dwDomainArray & ((uint)0x01 << i)); if (uiTemp != 0) { Jtts.JTTS_DOMAINATTRIBUTE dAtt = new InfoQuick.SinoVoice.Tts.Jtts.JTTS_DOMAINATTRIBUTE(); Jtts.jTTS_GetDomainAttributeByValue((uint)i, out dAtt); textBoxDomain.Text += dAtt.szName + " "; } } textBoxEngine.Text = vAtt.szDLLName; uint uiVersion1 = (vAtt.dwVersionMS & (uint)0xFFFF0000) >> 16; uint uiVersion2 = (vAtt.dwVersionMS & (uint)0x0000FFFF); uint uiVersion3 = (vAtt.dwVersionLS & (uint)0xFFFF0000) >> 16; uint uiVersion4 = (vAtt.dwVersionLS & (uint)0x0000FFFF); textBoxVersion.Text = uiVersion1.ToString() + '.' + uiVersion2.ToString() + '.' + uiVersion3.ToString() + '.' + uiVersion4.ToString(); textBoxVendor.Text = vAtt.szVendor; }
//Initialize dialog's state according to in-param[config]. public void SetJttsConfig(Jtts.JTTS_CONFIG config) { int i = 0; //Get all voice and add to "comboBoxVoice". int iVoiceCount = Jtts.jTTS_GetVoiceCount(); int iDefaultVoiceIndex = 0; //Index of default voice. for (i = 0; i < iVoiceCount; i++) { Jtts.JTTS_VOICEATTRIBUTE vAtt = new InfoQuick.SinoVoice.Tts.Jtts.JTTS_VOICEATTRIBUTE(); Jtts.jTTS_GetVoiceAttribute(i, out vAtt); Jtts.JTTS_LANGATTRIBUTE lAtt = new InfoQuick.SinoVoice.Tts.Jtts.JTTS_LANGATTRIBUTE(); Jtts.jTTS_GetLangAttributeByValue(vAtt.nLanguage, out lAtt); string strVoiceDescribe = vAtt.szName + '(' + lAtt.szName + " " + strGender[vAtt.nGender] + ')'; comboBoxVoice.Items.Add(strVoiceDescribe); //Get index of default voice. if (config.szVoiceID == vAtt.szVoiceID) { iDefaultVoiceIndex = i; } } //Set default voice. comboBoxVoice.SelectedIndex = iDefaultVoiceIndex; comboBoxDomain.SelectedIndex = config.nDomain; comboBoxCodePage.SelectedIndex = CodePageFromValueToIndex(config.nCodePage); comboBoxDigital.SelectedIndex = config.nDigitMode; comboBoxEnglish.SelectedIndex = config.nEngMode; comboBoxTag.SelectedIndex = config.nTagMode; trackBarVolume.Value = config.nVolume; trackBarSpeed.Value = config.nSpeed; trackBarPitch.Value = config.nPitch; checkBoxPunctuation.Checked = ((config.nPuncMode & (short)0x01) != 0)? true : false; checkBoxReturnCutSentence.Checked = ((config.nPuncMode & (short)0x02) != 0)? true : false; }