Альтернативы AVSpeechSynthesizer() для Swift / Xcode?

1
9

Требованием моего приложения является реализация TTS. Я могу использовать следующий code для перебора доступных голосов и выбора одного. Однако все доступные системные голоса очень низкого качества. Нет доступных версий голосов "(Enhanced)". Насколько я понимаю, они есть только на устройстве, если пользователь ранее загрузили и настроили его в своих системных настройках.

Голоса, доступные на устройстве по умолчанию (отображаются для "en-US"):

Как я могу загрузить и упаковать голос более высокого качества с моим приложением, чтобы всегда использовать этот голос при выполнении TTS?

Если это невозможно с помощью AVSpeechSynthesizer(), существуют ли альтернативные библиотеки Swift, которые могут достичь этой цели?

let voices = AVSpeechSynthesisVoice.speechVoices()
for voice in voices {
    if voice.language == "en-US" {
        print("Language: \(voice.language), Name: \(voice.name)")
     }
}
let desiredVoice = voices.first { $0.name == "Samantha" }
let utterance = AVSpeechUtterance(string: dictionaryEntry.word)
utterance.voice = desiredVoice
Self.synthesizer.speak(utterance)
Language: en-US, Name: Trinoids
Language: en-US, Name: Albert
Language: en-US, Name: Jester
Language: en-US, Name: Samantha
Language: en-US, Name: Whisper
Language: en-US, Name: Superstar
Language: en-US, Name: Bells
Language: en-US, Name: Organ
Language: en-US, Name: Bad News
Language: en-US, Name: Bubbles
Language: en-US, Name: Junior
Language: en-US, Name: Bahh
Language: en-US, Name: Wobble
Language: en-US, Name: Boing
Language: en-US, Name: Good News
Language: en-US, Name: Zarvox
Language: en-US, Name: Ralph
Language: en-US, Name: Cellos
Language: en-US, Name: Kathy
Language: en-US, Name: Fred
Фока
Вопрос задан3 сентября 2024 г.

1 Ответ

2
Тамара
Ответ получен2 сентября 2024 г.

Ваш ответ

Загрузить файл.