private void TtsCallback(int lParam1, int lParam2, uint drCallbackParameter, uint uiMsg) { if (uiMsg == UiPhonemeMsg && Phoneme != null) { var tag = new PhonemeTag { DWData = lParam2 }; Phoneme(this, new PhonemeEventArgs((char)tag.PMData.ThisPhoneme, tag.PMData.Duration)); } else if (uiMsg == UiBufferMsg) { _bufferStream.Write(_buffer.GetBufferBytes(), 0, (int)_buffer.Length); var full = _buffer.Full; _buffer.Reset(); unsafe { Check(TextToSpeechAddBuffer(_handle, _buffer.ValuePointer)); } } else if (uiMsg == UiErrorMsg) { // You f****d up! } else if (uiMsg == UiIndexMsg) { // I don't even know what index messages are for... } }
private void TtsCallback(int lParam1, int lParam2, uint drCallbackParameter, uint uiMsg) { if (uiMsg == UiPhonemeMsg && Phoneme != null) { var tag = new PhonemeTag { DWData = lParam2 }; Phoneme(this, new PhonemeEventArgs((char)tag.PMData.ThisPhoneme, tag.PMData.Duration)); } else if (uiMsg == UiBufferMsg) { _bufferStream.Write(_buffer.GetBufferBytes(), 0, (int)_buffer.Length); var full = _buffer.Full; _buffer.Reset(); unsafe { Check(TextToSpeechAddBuffer(_handle, _buffer.ValuePointer)); } } else if (uiMsg == UiErrorMsg) { // You f****d up! } else if (uiMsg == UiIndexMsg) { // I don't even know what index messages are for... } }