Native Speech Generation для NVDA

Автор: Muhammad Gagah muha.aku@gmail.com

Native Speech Generation — это дополнение для NVDA, которое интегрирует Google Gemini AI для генерации высококачественной, естественно звучащей речи непосредственно в NVDA. Оно предоставляет чистый, полностью доступный интерфейс для преобразования текста в аудио, поддерживая как повествование от одного диктора, так и динамические диалоги с несколькими дикторами.

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


Возможности

Высококачественная генерация речи

Режимы одного и нескольких дикторов

Расширенное управление голосом

Доступный и чистый интерфейс

Бесшовный рабочий процесс

Умная загрузка голосов и кэширование

Разговор с ИИ (Живой диалог)


Требования


Установка

  1. Загрузите последний пакет дополнения со страницы релизов: https://github.com/MuhammadGagah/native-speech-generation/releases
  2. Установите его как стандартное дополнение NVDA.
  3. Перезапустите NVDA при появлении запроса.

Настройка ключа API (Обязательно)

  1. Создайте ключ API в Google AI Studio: https://aistudio.google.com/apikey
  2. Откройте NVDA и перейдите в: Меню NVDA → Сервис → Native Speech Generation
  3. Нажмите «Настройки ключа API».
  4. Это откроет настройки NVDA непосредственно в категории Native Speech Generation.
  5. Вставьте ваш ключ Gemini API в поле GEMINI API Key.
  6. Нажмите OK, чтобы сохранить.

Сохранённые ключи хранятся в безопасности с помощью Windows DPAPI, поэтому зашифрованное значение не может быть расшифровано на другом компьютере с Windows или учётной записи пользователя.

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


Как использовать

Откройте диалог с помощью:

Основные элементы интерфейса


Генерация речи

Режим одного диктора

  1. Выберите Один диктор.
  2. Выберите голос из раскрывающегося списка Выберите голос.
  3. Введите ваш текст.
  4. При желании добавьте инструкции по стилю.
  5. Нажмите Сгенерировать речь.
  6. Аудио воспроизведётся автоматически после генерации.

Режим нескольких дикторов

  1. Выберите Несколько дикторов (2).
  2. Для каждого диктора:

  3. Введите уникальное Имя диктора.

  4. Выберите отдельный Голос.
  5. Отформатируйте текст так, чтобы каждая строка начиналась с имени диктора, за которым следует двоеточие.

Пример:

Алиса: Привет, Боб, как у тебя дела сегодня? Боб: У меня всё отлично, Алиса! Погода замечательная.

  1. Нажмите Сгенерировать речь. Голоса будут назначены автоматически на основе имён дикторов.

Разговор с ИИ (Живой режим)

Ведите естественный двусторонний голосовой разговор с Gemini.

  1. Настройте желаемый Голос и Инструкции по стилю в основном диалоге. (Примечание: «Разговор с ИИ» в настоящее время поддерживает только режим одного диктора)
  2. Нажмите Разговор с ИИ.
  3. В новом окне:
  4. Начать диалог: Начинает сеанс. Говорите в микрофон.
  5. Остановить диалог: Завершает сеанс.
  6. Привязка к Google Search: Установите этот флажок, чтобы разрешить Gemini искать ответы в интернете (например, текущие новости, погоду).
  7. Уровень мышления: Выберите No Thinking (Без мышления), Low (Низкий), Medium (Средний) или High (Высокий).
  8. Переключение микрофона: Включите/выключите микрофон.
  9. Громкость: Регулируйте громкость воспроизведения голоса ИИ.

Расширенные настройки


Обзор кнопок


Жесты ввода

Настраивается через: Меню NVDA → Параметры → Жесты ввода → Native Speech Generation

Жест по умолчанию:


Руководство по разработке и внесению вклада

Если вы хотите разрабатывать или модифицировать это дополнение, выполните следующие шаги.

Настройка окружения

uv sync uv run pre-commit run --all-files uv run scons uv run scons pot

SCons 4.10.1, Markdown 3.10, Ruff 0.14.10, Pyright 1.1.407 и другие инструменты сборки устанавливаются из uv.lock. * GNU Gettext Tools (опционально, рекомендуется для локализации)

Дополнительные зависимости

Только для локальной разработки установите зависимости «Разговора с ИИ» (только аудио) напрямую в путь библиотеки дополнения, используя версию Python и архитектуру, соответствующие тестируемой среде выполнения NVDA:

python.exe -m pip install google-genai pyaudio --target "D:/myAdd-on/Native-Speech-Generation/addon/globalPlugins/NativeSpeechGeneration/lib"

Откорректируйте путь в соответствии с вашей локальной директорией исходного кода дополнения.

Для текущей реализации «Разговора с ИИ» (только аудио) вам не нужны opencv-python, pillow или mss.

Для релизных пакетов дополнение загружает последний проверенный архив зависимостей на основе запущенной версии NVDA:

Дополнение считывает SHA-256 данные из последнего релиза зависимостей на GitHub, используя дайджест релизного ассета или файлы контрольных сумм. Встроенные утверждённые контрольные суммы сохраняются только как запасной вариант для первой установки, когда поиск последнего релиза не удаётся. Ручная переустановка библиотек требует последнего проверенного релиза. Извлечённая папка всегда устанавливается как addon/globalPlugins/NativeSpeechGeneration/lib.

Затем скопируйте следующее из вашей установки Python в:

addon/globalPlugins/NativeSpeechGeneration/lib


Внесение вклада

Приветствуются вклад, предложения и сообщения об ошибках.

Контакты