我希望能够在 Skype 上共享我的计算机声音。Linux 版 Skype 似乎没有此选项,但我了解到(从我在本论坛上看到的答案 - “在 Skype 上共享计算机声音?”)有一种涉及 paprefs 和 pavucontrol 的解决方法。我已成功安装了它们,并在 paprefs 中勾选了“同时输出”框,但我真的不明白如何从这里继续。我所需要的只是让对方能够听到我以及我共享屏幕时计算机上播放的音频。非常感谢任何人提供的帮助。ps
,我的系统是 Ubuntu MATE(18.04.4 LTS Mate 1.20.1),我正在运行最新版本的 Skype(8.61.0.95)
答案1
您可以创建一个虚假的设备,向其推送音频,并让 Skype 将其用作您的麦克风。
# Determine "Computer Audio" Sink
pacmd list-sinks | egrep '^\s+name:'
name: alsa_output.pci-0000_00_1b.0.analog-surround-21
# Determine "Microphone" Source
pacmd list-sources | egrep '^\s+name:'
name: alsa_input.usb-Blue_Microphones_Yeti_Stereo_Microphone_X-00.analog-stereo
# Create Fake Microphone for Skype
pactl load-module module-null-sink sink_name="FakeMicrophone" sink_properties=device.description="FakeMicrophone"
# Tie "Microphone" to FakeMicrophone
pactl load-module module-loopback latency_msec=1 source=alsa_input.usb-Blue_Microphones_Yeti_Stereo_Microphone_X-00.analog-stereo sink=FakeMicrophone
# Tie "Computer Audio" Monitor to FakeMicrophone
pactl load-module module-loopback latency_msec=1 source=alsa_output.pci-0000_00_1b.0.analog-surround-21.monitor sink=FakeMicrophone
虽然FakeMicrophone
是接收器(输出),但它有一个监视器FakeMicrophone.monitor
,它是源(输入)。出于同样的原因,“Computer Audio” 也出现.monitor
在上述命令中。
如果您使用pavucontrol
,您可以看到它出现并根据需要进行调整。您甚至可以调整哪些源映射到新的接收器。
一旦您弄清楚了所需的命令,您可以通过将它们添加到/etc/pulse/default.pa
(底部就可以)并删除pactl
部分来使其持久:
# Create Fake Microphone for Skype
load-module module-null-sink sink_name="FakeMicrophoneSink" sink_properties=device.description="FakeMicrophoneSink"
# Tie "Microphone" to FakeMicrophoneSink
load-module module-loopback latency_msec=1 source=alsa_input.usb-Blue_Microphones_Yeti_Stereo_Microphone_X-00.analog-stereo sink=FakeMicrophoneSink
# Tie "Computer Audio" Monitor to FakeMicrophoneSink
load-module module-loopback latency_msec=1 source=alsa_output.pci-0000_00_1b.0.analog-surround-21.monitor sink=FakeMicrophoneSink
从命令行启动应用程序时,您可以通过设置来调整它们将使用的音频输出PULSE_SINK
:
PULSE_SINK="WhateverSink" mpv /path/to/video
export PULSE_SINK="WhateverSink"
mpv /path/to/video
答案2
一种方法是使用两台设备,例如一台笔记本电脑和一部手机以及两个 Microsoft 帐户。可以直接使用pavucontrol
将声音输出连接到麦克风输入。
使用此方法就不需要任何额外的脚本或 shell 命令。
就我而言,我还使用了一副耳机用于笔记本电脑,一副耳机用于手机。
(注:我实际上使用的是 Debian 12(bookworm),但我认为它也可以在 Debian 衍生发行版(如 Ubuntu)上正常运行)
根据微软的说法,一个人可以拥有两个帐户:
https://www.bing.com/search?q=is+it+okay+to+have+two+microsoft+accounts
在手机上,可以使用主 Skype 帐户登录,然后在运行 Linux 的笔记本电脑上,可以使用用于发送声音的额外 Skype 帐户登录(也可以同时选择共享屏幕)。
可以在两个帐户(笔记本电脑上的额外帐户和使用手机登录的主帐户)之间创建测试呼叫。
然后可以使用这个解决方案,它涉及pavucontrol
将声音输出连接到麦克风输入:
https://unix.stackexchange.com/questions/82259/how-to-pipe-audio-output-to-mic-input
在pavucontrol
“录音”选项卡中,我刚刚将 Skype:输入设置为“内置音频模拟立体声监视器”。
pavucontrol
Linux 版 Skype 中共享声音的设置图像
然后在电话上我就能听到通过 Skype 连接播放的音乐。
我将耳机插入笔记本电脑,也将耳机插入手机。
当然,可以将其他人添加到通话中,他们也可以从登录在笔记本电脑上的帐户获取音频。
质量似乎有所下降,这可能是因为 Skype 并不是专门设计用于通过常规麦克风连接发送高质量音频。
对于音乐视频之类的内容,在 Windows 上的声音共享效果更好,但在测试中它在 Linux 上运行良好。
我不太确定,但也许 Skype 的某些功能可以适应传入的音频,因为 YouTube 音乐视频中的音乐在一分钟左右后似乎变得更好了。
从评论来看,最初的提问者 Simona 也有可能做了这样的事情:
再次感谢 earthmeLon。我不确定到底发生了什么,但最终问题不知怎么解决了:在我给你发的最后一条消息和这条消息之间,我调整了我的 pavucontrol 设置,不知怎么地我设法解决了这个问题。不幸的是,我在那里捣鼓了很长时间,我真的不知道我做对了什么 :|
另外两种方法是:
-Zoom 在 Linux 中内置了带音频的屏幕共享功能。我在 2022 年 4 月的一次会议上使用了它,效果很好,但我不需要保留 Zoom,所以我取消了订阅。
-可以尝试在 Linux 主机上运行 Windows 虚拟机。我还没有尝试过,但我突然想到了这一点。
注意:这个问题至少有两个重复:
如何在 Ubuntu 20.04 中通过 Skype 共享带有音频的屏幕?
不过,Meta Stack Exchange 上说,人们不应该将相同的答案复制并粘贴到不同的问题中: