Подтвердить что ты не робот

Фонетические символы для речи

Моя цель состоит в том, чтобы позволить моему приложению говорить на менее популярном языке (например, Hokkien, Malay и т.д.). Мой текущий подход - использование записанного mp3.

Я хочу знать, существует ли механизм "фонетических символов для речи" для .net или любой платформы?

Фонетические символы здесь точно так же, как фонетическая запись в бумажном словаре. Любая идея?

4b9b3361

Ответ 1

Вот код VB.NET:

'create the object. This object will store your phonetic 'characters'
Dim PBuilder As New System.Speech.Synthesis.PromptBuilder

'add your phonetic 'characters' here. Just ignore the first parameter.
'The second parameter is your phonetic 'characters'
PBuilder.AppendTextWithPronunciation("test", "riːdɪŋ")

'now create a speaker to speak your phonetic 'characters'
Dim SpeechSynthesizer2 As New System.Speech.Synthesis.SpeechSynthesizer

'now actually speaking. It will speak 'reading'
SpeechSynthesizer2.Speak(PBuilder)

И вот конвертированный код С#:

//create the object. This object will store your phonetic 'characters'
System.Speech.Synthesis.PromptBuilder PBuilder = new System.Speech.Synthesis.PromptBuilder();

//add your phonetic 'characters' here. Just ignore the first parameter.
//The second parameter is your phonetic 'characters'
PBuilder.AppendTextWithPronunciation("test", "riːdɪŋ");

//now create a speaker to speak your phonetic 'characters'
System.Speech.Synthesis.SpeechSynthesizer SpeechSynthesizer2 = new System.Speech.Synthesis.SpeechSynthesizer();

//now actually speaking. It will speak 'reading'
SpeechSynthesizer2.Speak(PBuilder);

Ответ 2

Вам нужен большой словарь TTS Engine. Microsoft имеет речевой SDK, который позволяет вам говорить, когда вы печатаете между прочим, а также Windows SAPI (Speech API - не уверен, что SDK и API - это то же самое). Я знаю, что у них есть мужские и женские голоса для английского языка, но, возможно, не для других языков, таких как малайский (где, возможно, не так много рынка). Вы можете взглянуть на Фестивальный проект в CMU. У них обычно много голосов на разных языках, но некоторые из менее известных могут быть не так хорошо развиты, как те, которые используются для английского языка.

Дальнейшее обновление:
Проверьте сайт MBROLA. Это проект с открытым исходным кодом для разработки многоязычных мощных движков TAT, и у них также есть расширение для малай. Я не знаю, насколько это хорошо. Я попробовал хинди и почувствовал, что предстоит еще много работы.

Кроме того, проверьте сайт BabelFish. У них есть ссылки на множество бесплатных движков TTS, которые должны иметь некоторую поддержку для малайцев.

Обновление 3:. Я не знаю, подходит ли это для вашей цели, но если текст, который приложение должно говорить, низок, вы можете попробовать concatenative speech synthesis через limited vocabulary тоже, Записывайте фрагменты предложений на малайском языке (или на любом другом языке) и передавайте выходные данные своей программы на свой собственный ограниченный движок vocab tts, где вы создаете вывод. Одним из примеров может быть (на английском языке): "был самым ценным игроком". Здесь "самый ценный игрок" становится одним фрагментом, а "Player X" можно изменить по своему усмотрению. Это, если оно служит вашей цели, должно хорошо работать.

Ответ 4

Класс .Net System.Speech.Synthesis.PromptBuilder создаст аудио из SSML. Вы можете использовать их для создания звуков из сырых фонем и дискретизированного звука. Звук не зависит от языка.

Ответ 5

Может быть, это? System.Speech.Recognition.SrgsGrammar.SrgsPhoneticAlphabet

Ответ 6

Я попробовал System.Speech.Synthesis.PromptBuilder. И я должен сказать, что текущая реализация фонетических символов очень элементарна и неточна. Например, PromptBuilder испытывает недостаток в речевой интонации, и в то же время отсутствие стресса в одном слове. PromptBuilder только способен выводить монотонный и роботизированный звук, который очень раздражает.

Моя рекомендация состоит в том, чтобы продолжать использовать ваш текущий подход. Использование mp3 для доставки сообщения является более естественным и экономически эффективным с точки зрения времени, необходимого для перевода совершенных фонетических символов вашей речи.