如何通过 SSH 连接远程播放远程机器上的声音

如何通过 SSH 连接远程播放远程机器上的声音

例如,我坐在工作站的一台笔记本电脑上(Windows 和 PuTTY)。我的目标坐在另一个房间里,和他的用户一起拿着他自己的 Ubuntu 笔记本电脑。

我想使用该程序mpg321播放 WAV 文件他的通过使用我的用户通过 SSH 登录并执行 mpg321 命令,在他的用户上登录机器。

我曾尝试使用sudo -u his_username正常 sudo、不使用 sudo,但由于某种原因,声音无法播放。

答案1

可能已经太晚了,无法从原始发帖人那里得到确认,但原因可能是

  1. 仅使用 ALSA,Ubuntu 笔记本电脑用户已登录,并且 ALSA 已拥有音频设备的独占所有权;或者

  2. 使用 PulseAudio,PulseAudio 作为 Ubuntu 机器上的登录用户运行,并拥有音频设备的独占所有权;这意味着以新用户身份启动的第二个 PulseAudio 无法接管。

情况应该是这样的:实际坐在机器旁的人(或至少是第一个登录的人)应该拥有本地设备(如音频)的所有权。您不能通过突然在机器上播放声音来远程恶作剧他。要实现这一点,必须配置某种“声音共享”(有几种方法可以做到这一点)。

答案2

如果它只是一个简单的 .wav 文件,为什么不使用代替?有一段时间,我在我的 (Ubuntu) 工作站上设置了这个,如果 cron'd 脚本检测到我们的生产数据库服务器上出现特定(不幸的是,很常见)故障情况,就会播放星际迷航“红色警报”警报。效果很好!

sudo apt-get install sox如果系统上还没有这个,你可能需要安装它。玩得开心!

相关内容