Nikita написал:
ASBer написал:
я планировал в будущем добавить озвучку с помощью speechSynthesis, его большинство современных браузеров поддерживает. Но и вашу разметку конечно оставлю. Надеюсь, 2 технологии чтения не будут конфликтовать друг с другом.
Если вы о слепых пользователях, то TTS здесь будет лишней сущностью. В чём-то даже вредной, так как ваш речевой поток будет накладываться на речевой поток их вспомогательной технологии.
TTS я сделаю в первую очередь для себя. Как показывает практика - очень удобная штука для выявления ошибок. Вычитывать один и тот-же текст в сотый раз очень напряжно, а голос в самый раз
И да, конечно по умолчанию TTS будет выключен.
Неактивен
К сообщению прикреплён патч для версии 2.a.4.21 альфа.
Изменения:
Удачи.
P.S. Браузерный TTS ужасен: не читает id="location_div", неотфильтрованы теги, постоянно отваливается и жуткая фрагментация всей технологии по разным браузерам. Забейте, весь этот технологический стек сырой, пилите пока основной парсер.
Неактивен
Nikita написал:
К сообщению прикреплён патч для версии 2.a.4.21 альфа.
Ого! спасибо огромное, пойду разбираться.
Nikita написал:
P.S. Браузерный TTS ужасен: не читает id="location_div", неотфильтрованы теги, постоянно отваливается и жуткая фрагментация всей технологии по разным браузерам. Забейте, весь этот технологический стек сырой, пилите пока основной парсер.
Да, я это уже понял, поковырявшись пару дней.
У меня есть наработки по windows-TTS, их очень просто прикрутить к локальной системе и немного сложнее к клиент-серверной.
Плюс здесь в том, что платформа сама управляет озвучкой вплоть до ударения отдельных слов.
Но это уже как-нибудь потом, парсер приоритетней.
Неактивен
Вопрос касательно ударений.
Все системы озвучки безбожно путают ударения, и очевидно, для русского языка это неисправимо.
Сама платформа ТОМ поддерживает ударения в полном объёме, но сейчас знаки ударений отсеиваются при формировании HTML.
Предполагаю, что наличие ударений в HTML позволит системам WAI-ARIA правильно читать слова. Но тогда текст начинает пестрить надстрочными знаками и визуально выглядит хуже.
В идеале, лучшим решением был бы скрытый знак ударения, но найти что-то подобное для WAI-ARIA не удалось
Компромиссным вариантом может быть чекбокс "показывать ударения" в настройках, но это не снимает проблему для онлайн-игр.
Если у вас есть мысли по этой теме, буду рад их услышать.
Неактивен
Предполагаю, что наличие ударений в HTML позволит системам WAI-ARIA правильно читать слова.
Это легко проверить: https://ru.wikisource.org/wiki/Категори … ударениями
Неактивен
ASBer написал:
Предполагаю, что наличие ударений в HTML позволит системам WAI-ARIA правильно читать слова. Но тогда текст начинает пестрить надстрочными знаками и визуально выглядит хуже.
Нарушение орфоэпических норм при синтезе речи - это проблема, которая возникает на уровне самого TTS. Именно на нём она и решается. То есть к предметной области WAI-ARIA этот вопрос не относится. Более того, те же надстрочные знаки ударения даже могут портить произношения, порождая разрыв слова на месте вставки: "програ́ммное обеспе́чение" может дойти до синтезатора уже как "програ ммное обеспе чение" (зависит от алгоритмов предобработки строки перед генерацией звукового сигнала). Я не знаю ни одного синтезатора, который типографские знаки ударения в тексте воспринимает как директиву для коррекции речи, хотя из русских знаком наверное со всеми существующими, плюс с существенным количеством для других языков.
Каждый пользователь синтеза речи решает эту проблему самостоятельно: либо использованием специальных словарей коррекции произношения (для распространённых голосов их можно найти в Интернете или создать самостоятельно посредством прилагающихся утилит), либо использованием синтезаторов с нейтральной постановкой ударения (ударение ставится на каждый слог, и в обмен на меньшую естественность речи пользователь получает большую правильность произношения), либо простым принятием синтеза речи таким, какой он есть.
Резюме: Вам просто не нужно думать о явной расстановке ударений в тексте. Это не ваша проблема. Отдавайте обычный текст как и везде, пользователь подстроиться теми способами, которыми подстраивается во всех остальных случаях при работе с прочими текстами. Ну а в случае целевой аудитории WAI-ARIA вообще надо понимать, что эти пользователи уже как-то до вашего web-интерфейса добрались, а значит решили все фундаментальные проблемы ещё до этого.
Неактивен
Нарушение орфоэпических норм при синтезе речи - это проблема, которая возникает на уровне самого TTS. Именно на нём она и решается.
К сожалению не решается. TTS не понимает смысла того где стоит ваза и сколько она стоит, и следовательно не может сделать правильный выбор в такой ситуации, поэтому только внешнее управление помочь может. Но если сквозного интерфейса нет, то и управления ударением нет
Если вы привыкли к такой ситуации, то это не значит что она правильная
P.S. Русскоязычные TTS имеют возможность внешнего управления ударением, по крайней мере Николай и Алёна точно. Правда способ управления у каждого движка свой, стандарта нет ...
Неактивен
ASBer написал:
К сожалению не решается. TTS не понимает смысла того где стоит ваза и сколько она стоит, и следовательно не может сделать правильный выбор в такой ситуации, поэтому только внешнее управление помочь может. Но если сквозного интерфейса нет, то и управления ударением нет
Проблема омографов может решаться словарями с контекстным окружением, но с этим довольно плохо и это в любом случае история с наработкой наиболее часто встречающихся случаев, а не серебряная пуля.
Варианты внешнего управления в строгом смысле есть, но они преимущественно сводятся к предобработке строки набором замен, например, словари в программах Говорилка или Balabolka. Тут коррекция произношения осуществляется очень топорными средствами, типа подбора варианта удвоения каких-то литер или разбиения слова, чтобы получить подобие более правильного ударения.
Также ещё одним вариантом внешнего управления является универсальная разметка, типа XML TTS, JSML или её преемница SSML. Тут проблема в том, что поддержка даже SSML, являющейся рекомендованной на уровне W3C, различается от синтезатора к синтезатору из-за некоторой неопределённости отдельных параметров. Да и в любом случае, с управлением ударением там всё не очень хорошо. Плюс поддержка SSML обычно по умолчанию отключена. То есть в стандартном варианте отправление на движок строки, размеченной в SSML, никакого результата не даст, а TTS будет читать все знаки, включая разметочные. К тому же надо понимать, что здесь вообще-то нужно разделение отображаемого и посылаемого на TTS текста, чтобы теги не были видны визуально. В итоге, адекватная реализация подобной функциональности без контроля за системой синтеза речи невозможна. Это даже без учёта того, что конкретно в контексте WAI-ARIA часто речь вообще идёт о таких TTS на стороне клиента, которые разметку не поддерживают в принципе, так как некоторые из них появились ещё в эпоху аппаратных синтезаторов речи.
Это я всё пишу поскольку зашёл разговор о технологии в целом. Так-то в практическом смысле ещё раз повторяю, что работающих способов контролировать постановку ударения на уровне предоставления исключительно текстового контента нет. Вы можете разве что поднять серверную генерацию синтеза речи, где получить полный контроль за произношением и отдавать пользователям уже звук через объектную модель контейнера audio, но, думаю, это в серьёз рассматривать не стоит.
Неактивен
Добавлю: в стандартах Unicode и HTML нет знаков и разметки для русского ударения. Знак акут (acute) ставится только потому, что он выглядит нужным образом. О том, что он обозначает не диакритику, как обычно, а ударение, парсер обычной HTML разметки может догадаться, только имея продвинутые знания об этой особенности русских текстов.
Неактивен