3

Начиная с Windows XP, во всех версиях ОС Windows установлен Narrator.

Это может быть запрограммировано, чтобы говорить в приложениях.

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

import os
etc
os.exec("c:/users/Admin/python/lowvolt.vbs")

где lowvolt.vbs выглядит так:

Dim sez, speech
sez = "Low Voltage on 24"
Set speech = CreateObject("sapi.spvoice")
speech.Speak sez
Wscript.Quit

Который прекрасно работает.

(Вы можете увидеть входные данные, построенные ЗДЕСЬ)


Было бы полезно, чтобы он также объявлял время в начале каждого часа.

Вопрос в заголовке - как это сделать?

1 ответ1

4

Создайте текстовый файл VBscript с именем saytime.vbs

Dim speech, hr, sez
hr=hour(time)
if hr=0 then
    hr = 12
end if
if hr>12 then
   hr = hr - 12
end if
sez = hr & " O'clock"
Set speech = CreateObject("sapi.spvoice")
speech.Speak sez
Wscript.Quit

Затем настройте запланированное задание для его запуска.

  • Откройте планировщик заданий - нажмите кнопку "Пуск", введите "планировщик" и нажмите клавишу ввода.

  • На правой панели нажмите «Создать задачу ...»

  • Дайте ему имя - возможно, "Say Time" - ниже, что вы увидите параметры безопасности по умолчанию, при которых он запускается только тогда, когда текущий пользователь вошел в систему.

  • Выберите (щелкните) на вкладке "Триггеры", затем кнопку «Создать ...» - она будет установлена на Один раз.

  • Измените Время начала так, чтобы время выглядело как: 12:00:00, чтобы оно срабатывало в верхней части каждого часа.

  • Установите флажок "Повторять задачу каждый" - установите его на 1 час и на неопределенный срок.

  • Установите флажок «Остановить задачу, если она выполняется дольше, чем», и установите для нее значение 30 минут.

  • Нажмите ОК

  • Нажмите на вкладку "Действия", затем на кнопку «Создать ...» - она откроется с действием, установленным для запуска программы.

  • Перейдите к файлу saytime.vbs

  • Нажмите ОК, затем ОК

  • Теперь с левой стороны нажмите "Библиотека планировщика заданий".

  • Найдите новую запись, щелкните ее правой кнопкой мыши и выберите "Выполнить".

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

На этом этапе ваша настройка завершена.

Вуаля - ваш компьютер будет говорить час.


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

Чтобы настроить параметры голоса диктора (Microsoft)

Есть методы для загрузки большего количества голосов, которые будут работать с Рассказчиком:

Получите больше голоса Microsoft для преобразования текста в речь (Superuser.com)

Лучшие бесплатные голоса Windows Narrator, которые вы можете использовать (Zero2000.com)


Я настроил свои машины Windows и Ubuntu так, чтобы все они были настроены на Master Clock, и научил их говорить. Слышать, как они объявляют время одновременно, очень приятно:

https://askubuntu.com/questions/972799/how-do-i-set-ubuntu-to-use-the-primary-time-server-time-nist-gov/972800#972800

https://askubuntu.com/questions/977613/16-04-lts-how-to-make-the-system-announce-the-time-at-the-top-of-the-hour-with-e


Кроме того, для любителей VBscript это ссылка на сценарий VBS, который может воспроизводить файлы MP3 под управлением программы:

https://stackoverflow.com/questions/1569765/how-to-play-audio-file-on-windows-from-command-line/18165191#18165191

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .