Перейти к основному содержимому Главная страница каталога дополнений для NVDA от русскоязычного сообщества NVDA.RU.

Официальный русскоязычный каталог дополнений NVDA

Крупнейший каталог дополнений для программы экранного доступа NVDA, доступный в Интернете

Каталог дополнений от «🇷🇺 Русскоязычного сообщества NVDA.RU.»

Pravka TTS (Интеллектуальная маршрутизация голосов)

Автор:

Краткое описание

Дополнение Pravka TTS позволяет автоматически переключать голоса и синтезаторы речи в зависимости от типа текста: латиница, кириллица, цифры, эмодзи и другие.
Поддерживается создание правил для переключения на основе символов-маркеров (например, для текста в скобках или кавычках).
Работает с любыми SAPI5 и OneCore голосами, а также сторонними синтезаторами.
Идеально подходит для многоязычных пользователей и работы со специализированными текстами.
Функционал подробнее описан в справочном руководстве.
Примечание: Разработчик дополнения PairSynthesizer изменил название и концепцию дополнения, поэтому оно теперь называется PravkaTTS. Перед использованием нового дополнения, предыдущие PairSynthesizer нужно обязательно удалить.

⬇ Перейти к подробной справке 🔝 Назад к оглавлению

Основная информация

Название Версия Совместимость с API NVDA Последняя протестированная версия NVDA Минимальная версия NVDA Дата загрузки в каталог Размер Лицензия
pravka 2.0 2026.1 2026.1 2021.1 24-02-2026 12:35:38 112 Кб. GPL v2
🔝 Назад к оглавлению

Информация о локализации на русский язык

🔝 Назад к оглавлению

Скачать

Pravka-V.2.0.nvda-addon

⬇ Перейти к истории версий 🔝 Назад к оглавлению

Разделы

🔝 Назад к оглавлению

Справка

Подробнее

Pravka TTS — интеллектуальная маршрутизация голосов для NVDA

Введение

Pravka TTS — это дополнение для программы экранного доступа NVDA (NonVisual Desktop Access), которое кардинально расширяет возможности управления речью. Основная задача дополнения — предоставить пользователю возможность использовать разные голоса и синтезаторы для различных типов текста в автоматическом режиме.

Зачем это нужно?

Представьте, что вы читаете документ, содержащий текст на нескольких языках. Обычно NVDA использует один голос для всего текста, что может приводить к некорректному произношению слов на других языках. С Pravka TTS вы можете настроить автоматическое переключение:

Дополнение работает как интеллектуальный диспетчер, анализируя каждый фрагмент текста и направляя его в нужный синтезатор с правильным голосом.

Быстрый старт

Чтобы начать использовать Pravka TTS, выполните следующие шаги:

  1. Активируйте дополнение:

    • Откройте меню NVDA → «Настройки» → «Синтезатор речи»
    • В списке синтезаторов выберите «pravka TTS»
  2. Откройте настройки дополнения:

    • Меню NVDA → «Сервис» → «настройки pravka TTS...»
  3. Выберите основной движок:

    • На вкладке «Основной речевой движок» выберите синтезатор, который будет использоваться по умолчанию (например, «SAPI5» или «OneCore»)
  4. Настройте голоса для разных типов текста:

    • Перейдите на вкладку «Скрипты»
    • Дождитесь загрузки списков голосов
    • Для каждого типа текста выберите подходящий голос
  5. Сохраните настройки:

    • Нажмите кнопку «Сохранить»

Готово! Теперь NVDA будет автоматически переключать голоса в зависимости от типа текста.

Интерфейс настроек

Окно настроек Pravka TTS открывается из меню «Сервис» NVDA. Оно содержит три основных раздела.

Основной речевой движок

В верхней части окна расположена панель выбора основного речевого движка. Это обязательная настройка, определяющая, какой синтезатор будет использоваться по умолчанию.

Что здесь настраивается:

Важно: При изменении основного движка автоматически перезагружаются списки голосов на всех вкладках.

Вкладка «Скрипты»

Эта вкладка содержит настройки голосов для различных типов текста (скриптов — в терминологии Unicode).

Поддерживаемые типы текста:

Тип текста Описание Примеры языков
Текст на латинице Все языки, использующие латинский алфавит Английский, французский, немецкий, испанский
Текст на кириллице Языки с кириллическим письмом Русский, украинский, болгарский, сербский
Арабский текст Арабское письмо Арабский, персидский, урду
Текст на хинди/деванагари Письмо деванагари Хинди, санскрит, маратхи
Цифры Числовые символы 0-9 Все языки
Эмодзи и символы Эмодзи, спецсимволы, пиктограммы
Греческий текст Греческий алфавит Греческий
Китайские иероглифы Китайское, японское, корейское письмо Китайский, японский, корейский
Тайский текст Тайское письмо Тайский

Как настроить:

  1. Для каждого типа текста представлен выпадающий список голосов
  2. Изначально списки отображают «(Загрузка...)» — это нормально, подождите несколько секунд
  3. После загрузки выберите нужный голос из списка
  4. Если голос не выбран, будет использоваться голос основного движка

Вкладка «Условное переключение»

Эта вкладка предназначена для создания более сложных правил переключения голосов на основе контекста — символов, окружающих текст.

Основные элементы:

Структура таблицы правил:

Создание правил условного переключения

Диалог добавления/редактирования правила

При нажатии кнопки «Добавить правило» или «Изменить правило» открывается диалог со следующими полями:

1. Имя правила

Произвольное название, помогающее идентифицировать правило. По умолчанию предлагается «Новое правило».

2. Включено

Флажок, определяющий, активно ли правило. Можно временно отключать правила без их удаления.

3. Начальный символ

Символ или последовательность символов, с которых начинается целевой фрагмент. Можно выбрать из предопределённого списка или ввести свой символ.

Доступные предопределённые символы:

Важно: Допускаются только символы пунктуации. Буквы и цифры использовать нельзя — это ограничение предотвращает некорректную работу.

4. Конечный символ

Символ, которым заканчивается целевой фрагмент. Работает аналогично начальному символу.

5. Целевой голос

Голос, который будет использоваться для текста между начальным и конечным символами. Список загружается автоматически после выбора основного движка.

Процесс загрузки голосов:

Управление правилами

Добавление правила

  1. Нажмите «Добавить правило»
  2. Заполните все поля в открывшемся диалоге
  3. Нажмите «OK» для сохранения
  4. Новое правило появится в таблице

Редактирование правила

  1. Выберите правило в таблице (одиночный клик)
  2. Нажмите «Изменить правило»
  3. Внесите необходимые изменения
  4. Нажмите «OK» для сохранения

Удаление правила

  1. Выберите правило в таблице
  2. Нажмите «Удалить правило»
  3. Подтвердите удаление в диалоговом окне

Включение/отключение правила

Для временного отключения правила без удаления:

  1. Выберите правило и нажмите «Изменить правило»
  2. Снимите флажок «Включено»
  3. Сохраните изменения

Правило останется в таблице, но не будет применяться при озвучивании.

Примеры настройки

Пример 1: Двуязычное озвучивание (русский + английский)

Задача: Русский текст должен озвучиваться голосом «Михаил», английский — голосом «David».

Необходимые голоса:

Настройка:

  1. Откройте настройки Pravka TTS (Инструменты → pravka TTS Settings...)

  2. На вкладке «Основной речевой движок» выберите «SAPI5»

  3. Перейдите на вкладку «Скрипты»

  4. Дождитесь загрузки голосов (около 5-10 секунд)

  5. В разделе «Текст на кириллице» выберите «Михаил»

  6. В разделе «Текст на латинице» выберите «David»

  7. Нажмите «Сохранить»

Результат: При чтении документа, содержащего русский и английский текст, NVDA будет автоматически переключаться между голосами Михаил и David.

Пример 2: Выделение цитат другим голосом

Задача: Текст, заключённый в двойные кавычки, озвучивать голосом с более высоким тоном для лучшего восприятия.

Необходимые голоса:

Настройка:

  1. Откройте настройки Pravka TTS

  2. На вкладке «Основной речевой движок» выберите нужный синтезатор

  3. Перейдите на вкладку «Условное переключение»

  4. Нажмите «Добавить правило»

  5. Заполните диалог:

    • Имя правила: Цитаты в кавычках
    • Включено: установите флажок
    • Начальный символ: выберите " - Double Quote
    • Конечный символ: выберите " - Double Quote
    • Целевой голос: дождитесь загрузки и выберите голос с нужным тоном
  6. Нажмите «OK»

  7. Нажмите «Сохранить» в главном окне

Результат: Любой текст между двойными кавычками будет озвучиваться выбранным голосом, остальной текст — основным голосом.

Пример 3: Озвучивание математических выражений

Задача: Математические формулы, заключённые в символы доллара (как в LaTeX), озвучивать голосом с чёткой артикуляцией для лучшего восприятия символов и цифр.

Необходимые голос:

Настройка:

  1. Откройте настройки Pravka TTS

  2. Перейдите на вкладку «Условное переключение»

  3. Нажмите «Добавить правило»

  4. Заполните диалог:

    • Имя правила: Математические формулы
    • Включено: установите флажок
    • Начальный символ: выберите $ - Dollar Sign
    • Конечный символ: выберите $ - Dollar Sign
    • Целевой голос: выберите голос с хорошей артикуляцией
  5. Нажмите «OK»

  6. На вкладке «Скрипты» дополнительно можно настроить:

    • Для «Цифр» выбрать тот же голос, что и для формул
    • Для «Эмодзи и символов» также выбрать этот голос
  7. Нажмите «Сохранить»

Результат: Текст вида $E = mc^2$ будет озвучиваться выбранным техническим голосом, что обеспечит чёткое произношение символов.

Пример 4: Техническая документация с кодом

Задача: При чтении технической документации фрагменты кода, выделенные обратными кавычками, озвучивать монотонным голосом, а обычный текст — основным голосом.

Необходимые голоса:

Настройка:

  1. Откройте настройки Pravka TTS

  2. Перейдите на вкладку «Условное переключение»

  3. Нажмите «Добавить правило»

  4. Заполните диалог:

    • Имя правила: Фрагменты кода
    • Включено: установите флажок
    • Начальный символ: выберите ` - Backtick
    • Конечный символ: выберите ` - Backtick
    • Целевой голос: выберите монотонный голос
  5. Нажмите «OK»

  6. Нажмите «Сохранить»

Результат: Фрагменты кода в обратных кавычках будут чётко выделяться монотонным голосом, что помогает отличать код от описания.


Принцип работы

Pravka TTS функционирует как многоуровневый диспетчер речи, перехватывающий весь текст, направляемый NVDA на озвучивание. Рассмотрим этот процесс подробно.

Этапы обработки текста

Этап 1: Перехват речи

Когда NVDA отправляет текст для озвучивания, он сначала попадает в диспетчер Pravka TTS. Это происходит потому, что в настройках NVDA выбран синтезатор «pravka TTS».

Этап 2: Анализ текста

Диспетчер разбивает текст на логические фрагменты и анализирует каждый фрагмент по нескольким критериям:

Анализ типа текста (скрипта):

Анализ контекста (условное переключение):

Этап 3: Выбор голоса

На основе результатов анализа принимается решение о выборе голоса:

  1. Проверка условных правил: Если текст находится внутри маркеров активного правила, выбирается голос, указанный в этом правиле

  2. Проверка типа текста: Если активных правил нет или текст не соответствует ни одному правилу, проверяется, назначен ли отдельный голос для данного типа текста в настройках

  3. Использование основного голоса: Если ни одно из вышеуказанных условий не выполнено, используется голос основного движка

Этап 4: Маршрутизация

Выбранный голос принадлежит конкретному синтезатору. Диспетчер:

Этап 5: Кэширование

Для оптимизации производительности диспетчер сохраняет ссылки на уже использованные синтезаторы. При повторном обращении к тому же синтезатору загрузка не требуется.

Пример работы

Рассмотрим пример текста: Он сказал: "Hello, world!" и улыбнулся.

Обработка:

  1. Фрагмент «Он сказал: » — определяется как кириллица → направляется в русский голос
  2. Встречается символ " — активируется правило для кавычек
  3. Фрагмент «Hello, world!» — определяется как латиница, но применяется правило → направляется в голос для цитат
  4. Встречается закрывающий символ " — правило деактивируется
  5. Фрагмент « и улыбнулся.» — снова кириллица → русский голос

Технические особенности

Поддерживаемые синтезаторы

Pravka TTS работает с любыми синтезаторами, которые поддерживаются NVDA. Это обеспечивает максимальную гибкость при настройке.

Типы синтезаторов

Тип Примеры Особенности
SAPI5 Голоса Microsoft, сторонние SAPI5-голоса Широкий выбор, совместимость со старыми версиями Windows
OneCore Голоса Windows 10/11 (Microsoft David, Zira и др.) Высокое качество, естественное звучание
RhVoice Голоса RHVoice (Александр, Ирина, Elena и др.) Бесплатные, хорошее качество, поддержка многих языков
Vocalizer Голоса Nuance Vocalizer Высокое качество, коммерческие голоса
eSpeak eSpeak NG Компактный, быстрый, синтез на лету
Другие Любые синтезаторы с драйверами для NVDA

Особенности работы с разными синтезаторами

SAPI5 и OneCore:

RhVoice и Vocalizer:

Производительность

Pravka TTS оптимизирован для минимального влияния на скорость работы NVDA:

Асинхронная загрузка

Кэширование синтезаторов

Оптимизация для OneCore

Минимальные задержки переключения

Часто задаваемые вопросы

Общие вопросы

Вопрос: Нужно ли устанавливать какие-то дополнительные программы?

Ответ: Нет, Pravka TTS работает с уже установленными в системе синтезаторами. Дополнительного ПО не требуется.

Вопрос: Можно ли использовать Pravka TTS одновременно с другими речевыми дополнениями?

Ответ: Да, Pravka TTS является синтезатором, поэтому он не конфликтует с другими дополнениями. Вы просто выбираете его как основной синтезатор в NVDA.

Вопрос: Влияет ли расширение на скорость работы NVDA?

Ответ: Влияние минимально и практически незаметно. Первое переключение на новый синтезатор может занять доли секунды, но затем все голоса работают с обычной скоростью.

Вопросы по настройке

Вопрос: Почему не загружаются голоса в настройках?

Ответ: Это нормально, загрузка может занимать 5-10 секунд. Если голоса не загружаются дольше:

Вопрос: Можно ли использовать разные синтезаторы для разных языков?

Ответ: Да, это одна из ключевых возможностей. Например:

Вопрос: Почему правило условного переключения не срабатывает?

Ответ: Проверьте следующее:

Вопрос: Можно ли использовать несколько символов в качестве маркера?

Ответ: В текущей версии поддерживаются только одиночные символы. Поддержка последовательностей символов планируется в будущих версиях.

Вопросы по голосам

Вопрос: Где взять дополнительные голоса?

Ответ:

Вопрос: Поддерживаются ли голоса с несколькими языками (многоязычные)?

Ответ: Да, многие современные голоса поддерживают несколько языков. Pravka TTS будет использовать их для соответствующих типов текста.

Вопрос: Можно ли настроить скорость и тон для каждого голоса отдельно?

Ответ: В текущей версии скорость и тон настраиваются глобально. Индивидуальные настройки для каждого голоса планируются в будущих версиях.

Устранение неполадок

Проблема 1: NVDA не говорит после выбора pravka TTS

Возможные причины:

Решение:

  1. Откройте настройки NVDA (NVDA+N → Настройки → Настройки)
  2. Переключитесь временно на любой другой синтезатор (например, eSpeak)
  3. Убедитесь, что речь работает
  4. Снова переключитесь на pravka TTS
  5. Если проблема сохраняется, проверьте настройки pravka TTS

Проблема 2: Голоса не переключаются автоматически

Возможные причины:

Решение:

  1. Откройте настройки pravka TTS
  2. На вкладке «Скрипты» проверьте, что для нужных типов текста выбраны голоса
  3. Убедитесь, что выбранные голоса действительно установлены в системе
  4. Попробуйте выбрать другой голос для проверки

Проблема 3: Ошибка при загрузке голосов

Возможные причины:

Решение:

  1. Перезапустите NVDA
  2. Временно отключите другие дополнения для проверки
  3. Проверьте работу синтезатора отдельно (выберите его в NVDA без pravka TTS)
  4. Если проблема в конкретном синтезаторе, попробуйте переустановить его голоса

Проблема 4: Правила условного переключения работают некорректно

Возможные причины:

Решение:

  1. Проверьте точность указанных символов
  2. Убедитесь, что символы присутствуют в тексте в явном виде
  3. Временно отключите другие правила для проверки
  4. Создайте простое тестовое правило с круглыми скобками

Проблема 5: Зависание при открытии настроек

Возможные причины:

Решение:

  1. Подождите немного (до 30 секунд) — загрузка может идти долго
  2. Перезапустите NVDA в безопасном режиме (с отключёнными дополнениями)
  3. Временно удалите неиспользуемые голоса из системы
  4. Проверьте журнал NVDA (NVDA+F1) на наличие ошибок

Получение диагностической информации

Если проблема не решается, соберите информацию для разработчиков:

  1. Откройте журнал NVDA: NVDA+Н (русская раскладка) или NVDA+F1 (английская)
  2. Скопируйте содержимое журнала
  3. Выполните действия, приводящие к проблеме
  4. Снова откройте журнал и скопируйте новые записи
  5. Отправьте эту информацию в разработчику дополнения

Сообщение об ошибках

При сообщении об ошибке, пожалуйста, укажите:

Предложения по улучшению

Мы всегда рады слышать предложения пользователей! Если у вас есть идеи по улучшению дополнения:

  1. Опишите вашу идею подробно
  2. Объясните, какую проблему она решает
  3. Если возможно, приведите пример использования
🔝 Назад к оглавлению

История версий

История версий
Версия файлаТестируемая версия NVDAМинимальная версия NVDAРазмер файла (КБ)Ссылка на загрузку
2.02026.12021.1112Pravka-V.2.0.nvda-addon
🔝 Назад к оглавлению