Проблемы с AVSpeechSynthesizer для iOS 8

После обновления до xCode 6 и iOS 8 я заметил серьезные проблемы с AVSpeechSynthesizer. До обновления все работало отлично, но теперь возникли некоторые проблемы.

  1. Речевые высказывания воспроизводятся гораздо быстрее, чем до обновления.
  2. Когда я ставлю в очередь 2 речевых высказывания, оно просто пропускает первое высказывание и сначала воспроизводит второе. (Это происходит только при первом запуске синтезатора речи. При втором запуске и включении работает нормально.)

Пожалуйста, любая помощь будет принята с благодарностью. Заранее спасибо.


person Mike Simz    schedule 16.09.2014    source источник


Ответы (3)



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

person Jon Woodhead    schedule 30.09.2014

Я обнаружил ужасный хак, позволяющий воспроизводить голоса, которые не были специально загружены. Для этого мне нужно было запустить два синтезатора и заставить один пропускать все голоса, говорящие что-то. Тогда другой синтезатор мог использовать любой из голосов. Как я уже сказал, это ужасный взлом, и я не могу гарантировать его надежность. Кроме того, он может перестать работать в будущей версии ios8.

В своих собственных приложениях я решил создать библиотеку и заставить ее циклически перебирать все голоса. Там, где им требуется больше нуля времени, чтобы произнести фразу, это «хороший» голос, и я предлагаю его пользователю. Это имеет то преимущество, что оно, вероятно, будет устойчивым к изменениям в версии ios.

person Jon Woodhead    schedule 30.09.2014