Воспроизведение звука * на * удаленной машине через ssh на Ubuntu / Linux

Я хочу играть звук на удаленной машине через SSH, без участия X11. Это должно работать независимо от того, вошел ли пользователь в консоль или X или нет.

в основном, после входа в систему через SSH, командная строка типа

mpg123 test.mp3

должно сыграть тест.mp3 на этой удаленной машине. Другими словами, система ПА бедного человека. Я разрешил доступ к аудио без пароля через сеть на панели paprefs, но все еще нет звука, когда я пытаюсь играть через тссс.

что самый простой и самый надежный путь достигнуть этого?

PS: вопросы из прошлого имеют низкокачественные ответы, которые не отвечают на это.

27
задан emk2203
19.05.2023 22:07 Количество просмотров материала 3169
Распечатать страницу

2 ответа

задание DISPLAY переменная :0 решает проблему для меня. Попробуйте выполнить команду следующим образом:

$ DISPLAY=:0 mpg123 test.mp3
2
отвечен gmoshkin 2023-05-21 05:55

С последними Ubuntu систем (17.10 в данном случае), необходимо запустить pulseaudio при запуске системы или вручную, чтобы получить аудио через SSH. pulseaudio запускается для каждого пользователя по умолчанию, поэтому, если никто не вошел в систему, вы получаете только нулевой приемник для входа в SSH, где все аудио тихо исчезает.

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

cat <<EOF >/etc/systemd/system/pulseaudio.service
[Unit]
Description=Pulse Audio

[Service]
Type=simple
ExecStart=/usr/bin/pulseaudio --system --disallow-exit --disable-shm --exit-idle-time=-1

[Install]
WantedBy=multi-user.target
EOF

, который гарантирует, что демон pulseaudio запускается как пользовательский импульс при запуске. так как это крайне не рекомендуется разработчиками, предпочтительным решением для временного использования должен быть вопрос sudo pulseaudio --system -D через SSH.

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

в любом случае, вошедший в систему пользователь должен быть частью импульсного доступа группа:

sudo usermod -a -G pulse-access userName

теперь можно воспроизводить звуки по SSH на удаленной системе (mpg123,mpv или другим). Успех может быть проверен pactl list short sinks для правильного определения аудио раковину.

1
отвечен emk2203 2023-05-21 08:12

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх