я немой; как я могу использовать TTS в качестве речи?
Этот вопрос касается разбора аудиоданных в качестве входа микрофона.
Как я хочу это использовать?
Поскольку я немой, я хочу иметь возможность использовать данные TTS, такие как:
espeak-ng "Hello World" --stdout | some-magical-program
Позволяет мне использовать ввод текста, чтобы говорить, без необходимости каждый раз проверять текстовый чат.
1 ответ
Примечание. Это обновленная версия ответа U&L , на который ссылается pLumo.
PulseAudio позволяет перенаправлять звук в приложение, как если бы звук исходил от микрофона. К счастью, это можно сделать и с помощью графического интерфейса.
Предпосылки:
Если у вас еще нет PulseAudio Control (
pavucontrol
) на свой компьютер, вы захотите установить это. Это можно сделать через Терминал следующим образом:
sudo apt install pavucontrol
Настройка PulseAudio:
Откройте управление PulseAudio:
Перейдите на вкладку «Устройства ввода», затем выберите «Мониторы» в нижнем фильтре:
Нажмите на вкладку «Запись». Скорее всего, вы увидите, что список пуст:
Теперь наступает часть, где мы перенаправляем звук в приложение. Для этого у нас должно быть что-то, что активно использует микрофон. Для этого примера я буду использовать видеовызов, выполняемый в браузере, но он будет работать с любым приложением, которое может использовать микрофон, от Audacity до OBS и Zoom.
Из приложения, с которым вы хотите общаться, начните вызов. Ваш микрофон может быть отключен во время этого процесса.
На вкладке «Запись» в PulseAudio Control теперь будет отображаться приложение, использующее микрофон: Примечание. Полоса под «Тишина» теперь будет двигаться, указывая на то, что оно улавливает звук.
Измените выбор «от» с текущего микрофона на «Монитор встроенного аналогового стерео». В вашей системе это может называться немного по-другому, но значение будет начинаться как «Монитор ...":
Использовать
espeak-ng
(или любое другое приложение) для отправки звука:espeak-ng "Here we have a basic message that will be heard locally as well as over the call."
Подтвердили работу во время звонка ранее сегодня.
Если вы используете
pico2wave
, вам нужно будет запустить две команды, чтобы это работало:pico2wave -w out.wav -l en-US "Here is another basic message that will be heard locally as well as over the call."; aplay out.wav
Что нужно знать:
- все звуки с компьютера передаются по вызову, когда этот механизм активен, поэтому любые звонки уведомлений будут слышны громко и четко для людей, участвующих в вызове.
- использование кнопки отключения звука во время вызова работает точно так, как ожидалось, что может решить проблему отвлечения внимания, вызванную предыдущим пунктом.
- ваш аппаратный микрофон не будет активен, когда он работает, поэтому люди не услышат, как вы кашляете, печатаете или делаете глоток кофе