是否可以在 Linux 上录制程序的所有音频?我使用的是普通的 Ubuntu 9.10,我希望能够执行类似的操作。
$ audiorecord PROGNAME
我想要录制音频的程序名称在哪里PROGNAME
?有点像扬声器和麦克风的键盘记录器。我只使用原版 Ubuntu 9.10,所以我假设那是 PulseAudio 之类的?例如,我可以录制我播放的音乐
$ audiorecord banshee
并记录我的 Skype 对话
$ audiorecord skype
它适用于像 Skype 这样的设备,我也想在其中录制音频。
这可能吗?
答案1
没有简单的命令行方式可以做到这一点,没有。
对于支持它的程序来说,最好的方法是 JACK。告诉程序使用 JACK 输出,并使用支持 JACK 的录制工具(可能包括命令行工具,例如jack_capture
、qarecord
,ecasound
甚至是普通的jackrec
)连接到该应用程序的输出端口并保存它。
对于 ALSA 应用程序,这是可能的,但可能需要做更多工作。您需要安装pavucontrol
Synaptic 的软件包。这是 PulseAudio 的一部分,出于某种原因,Ubuntu 默认不包含它。将它与录音应用程序一起运行,gnome-sound-recorder
当您开始录音时,您应该在“录音”选项卡中看到它。然后,您可以将其输入切换到“(声卡)监视器”,以拾取正在产生的所有声音。
不幸的是,这并不能隔离某个特定的应用程序。如果您需要使用 ALSA/Pulse 应用程序执行此操作,则必须创建一个.asoundrc
文件来配置一个假声卡,只有您选择的应用程序才能在该声卡上发出声音,然后从该声卡录制。或者,您可以安装包含 ALSA->JACK 插头的正确 libasound2-plugins,然后只使用 JACK 插件。不幸的是,Ubuntu 的 libasound2-plugins 不包括它,因为那太简单了,不是吗?
Skype 是另一个麻烦,它总是难以选择将输出发送到哪里。对我来说,最新版本似乎只想直接与 Pulse 对话,无法配置,这让我试图将它连接到其他任何东西的尝试泡汤了。
唉。Linux 音频太乱了。Skype 也太乱了。两者合在一起简直是太恐怖了。