问题描述
有没有Ubuntu的程序可以记录只有扬声器输出的声音,而不是来自PC外部的任何声音?
最佳解决思路
如果我没有错,那么我想你正在谈论录制”Stereo Mix”或环回输出。
In layman’s terms, Recording Stereo Mix means recording sound from speaker output.
以下是如何做到这一点:
-
从Ubuntu软件中心安装
pavucontrol
。 -
从Ubuntu软件中心安装
audacity
。 -
在Audacity中选择
pulse*
作为录音设备。 -
点击录制按钮。
-
打开PulseAudio音量控制(在Pulse中搜索PulseAudio音量控制)。
-
选择录制选项卡。
-
现在你应该看到ALSA plug-in [大胆]。如果您没有看到ALSA plug-in [audacity],请确保您已经点击了大胆的Record Button。您应该在执行下一步时以大胆的方式运行录音。
-
选择“从*监视器”。请参阅截图。
-
现在您应该能够录制您从扬声器或耳机听到的声音。
Note: Tested in Ubuntu 12.10
Reference PulseAudio – Ubuntu Wiki
次佳解决思路
一个非常小的bare-bones软件可以完全满足您的需求,它被称为(相当明显)”Audio Recorder”,像这样安装:
sudo add-apt-repository ppa:audio-recorder/ppa
sudo apt-get update && sudo apt-get install audio-recorder
第三种解决思路
命令行
-
安装
sudo apt-get install pulseaudio-utils lame mpg123
-
搜索您的扬声器并点击扬声器的监听器流
pacmd list-sinks | grep -e 'name:' -e 'index' -e 'Speakers'
-
播放任何你想要录制的内容并输入
parec -d alsa_output.pci-0000_00_1f.3.analog-stereo.monitor | lame -r -V0 - out.mp3
-
点击
ctrl+c
停止录制并播放录制的文件mpg123 out.mp3
简约的GUI
我修复了一个非常简单的GUI来做到这一点。从here中拉出所有文件并运行install.sh
Goto Dash并搜索Record Speakers
第四种思路
我只是用一个小别名来记录PC音频输出,只用一个命令,并以opus格式而不是mp3格式存储。
-
安装所需的软件包:
sudo apt-get install pulseaudio-utils opus-tools
-
编辑您的
.bashrc
文件:nano ~/.bashrc
复制下面的行并将其追加到
~.bashrc
的末尾:alias recaudio="parec --monitor-stream="$(pacmd list-sink-inputs | awk '$1 == "index:" {print $2}')" | opusenc --raw - $(xdg-user-dir MUSIC)/recording-$(date +"%F_%H-%M-%S").opus"
按
Ctrl
+X
(关闭nano
),然后按Y
(用于”Yes”)和Enter
(确认文件名)保存文件。 -
现在加载新的
~/.bashrc
(或简单地打开一个新的终端):source $HOME/.bashrc
然后尝试,只需键入
recaudio
它将在您的音乐主文件夹中创建一个名为recording-[DATE].opus
的文件。
请享用。