WebDataSSML — это дополнение для программы экранного доступа NVDA, которое позволяет веб-разработчикам использовать SSML (Speech Synthesis Markup Language) разметку для улучшения звукового воспроизведения контента.
Дополнение распознает специальные атрибуты в HTML-коде и преобразует их в команды синтеза речи.
Дополнение обрабатывает атрибуты data-ssml на веб-страницах в соответствии с https://www.w3.org/TR/spoken-html
Дополнение настраивается через диалог настроек NVDA:
Дополнение автоматически активируется при посещении веб-страниц, содержащих разметку data-ssml. Поддерживаются три техники внедрения SSML:
SSML-команды встраиваются непосредственно в текст с использованием специальных невидимых символов.
SSML-команды хранятся в скрытом контейнере и ссылаются по индексу.
Создается глобальный словарь соответствий обычного текста и SSML-представлений.
<say-as>Управляет способом произношения текста:
- characters или spell — побуквенное произношение
- Автоматически использует команду CharacterModeCommand когда возможно
<sub>Замещение текста:
<span data-ssml='{"sub": {"alias": "произносимый текст"}}'>исходный текст</span>
<phoneme>Фонетическое произношение с использованием IPA:
<span data-ssml='{"phoneme": {"ph": "θ"}}'>th</span>
<break>Вставка паузы:
<span data-ssml='{"break": {"time": "500ms"}}'> </span>
Дополнение тестировалось с:
Некоторые команды (особенно PhonemeCommand) могут работать по-разному в разных синтезаторах.
При включенной опции логирования брайля, дополнение записывает в лог информацию о выводе на брайлевский дисплей, что помогает в отладке.
При включении соответствующей опции становится доступно сочетание клавиш NVDA+Ctrl+Alt+N для циклического переключения между доступными синтезаторами речи.
Для диагностики проблем включите ведение логов:
При возникновении проблем попробуйте:
Примечание: Для полной функциональности дополнения веб-страницы должны содержать соответствующий JavaScript код, обрабатывающий атрибуты data-ssml.