Ubuntu / Linuxでsshを介してリモートマシンでサウンドを再生する


6

X11を使用せずに、SSH経由でリモートマシンでサウンドを再生したい。これは、ユーザーがコンソールまたはXにログインしているかどうかに関係なく機能するはずです。

基本的に、ssh経由でログインした後、次のようなコマンドライン

mpg123 test.mp3

このリモートマシンでtest.mp3を再生する必要があります。言い換えれば、貧しい人のPAシステム。paprefsパネルでネットワーク経由でパスワードなしのオーディオアクセスを許可しましたが、sshで再生しようとしても音がしません。

これを達成する最も簡単で信頼性の高い方法は何ですか?

PS:過去の質問には質の低い回答があり、これには答えられません。


1
明確にするために、コンソールから直接アクセスしたときにサウンドを再生できますか?
クロー14年

1
Music Player Deamonはこれを目的としているようですが、私は試していません。
クロー14年

1
リモートdebianマシンにsshしてmpg123、音楽ファイルをリモートで再生するのに使用する場合、私は問題ありません。したがって、おそらくセットアップに関する詳細情報を含める必要があります。
mpy 14年

@krowe:はい、コンソール経由で音をうまく再生できます。MPDは、オンザフライで生成されたファイルを再生できる場合、ソリューションになる可能性があります。
emk2203 14年

1
いいえ、動作するためにデーモンは必要ありません。たとえば、Pulseaudioを実行している場合、アクセス許可の問題である可能性が非常に高くなります。適切なアクセス許可を使用すると、リモートマシンで問題sshなくサウンドを再生できます。したがって、システムの構成方法(Pulseaudio)、取得するエラーなどに関する情報を使用して質問を更新してください。また、最初にaplay(ALSA)またはpaplay(Pulseaudio)を介してWAVサウンドを再生してみてください。表示されるエラーに注意してください。
dirkt

回答:


2

DISPLAY変数を設定し:0て問題を解決します。次のようなコマンドを実行してみてください。

$ DISPLAY=:0 mpg123 test.mp3

巧妙なソリューションですが、特別な場合にのみ-同じユーザーが両方のマシンにログインしました。ログインしているユーザーまたは別のユーザーがいない場合、が表示されますInvalid MIT-MAGIC-COOKIE-1 keyxcb_connection_has_error() returned true。今のところデーモンを実行していない限り、解決策は見当たりません。それにもかかわらず、この特別なケースで他の人を助けるかもしれません。
emk2203

1

最近のUbuntuシステム(この場合17.10)では、pulseaudiossh経由でオーディオを取得するためにシステム起動時または手動で実行する必要があります。pulseaudioはデフォルトでユーザーごとに開始されるため、誰もログインしていない場合は、SSHログインのnullシンクのみが取得され、すべての音声が静かに消えます。

永続的なソリューションの場合、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 -DSSHを介して発行することです。

pulseaudioインスタンスが既に実行されている場合、新しいインスタンスがハードウェアを検出できるように、それを強制終了する必要があります。これは、ログインしているすべてのユーザーの音声に影響を与えるため、ケースバイケースで処理する必要があります。

いずれの場合でも、ログインしたユーザーはパルスアクセスグループの一部である必要があります。

sudo usermod -a -G pulse-access userName

これで、リモートシステム(mpg123mpvまたはその他)でSSH経由でサウンドを再生できるようになりました。pactl list short sinks適切なオーディオシンク検出を行うことで、成功を確認できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.