如何将输出录制到扬声器?

Ami*_*zoR 144 sound output audio-recording

是否有适用于 Ubuntu 的程序,它只能录制扬声器输出的声音,而不能录制来自 PC 外部的任何声音?

小智 172

如果我没猜错,那么我猜您是在谈论录制“立体声混音”或环回输出。

通俗地说,录制立体声混音意味着从扬声器输出录制声音。

这是如何做到的:

  1. pavucontrol从 Ubuntu 软件中心安装。
  2. audacity从 Ubuntu 软件中心安装。
  3. pulse*在 Audacity 中选择作为录音设备。
  4. 单击录制按钮。
  5. 打开 PulseAudio 音量控制(在 Dash 中搜索 PulseAudio 音量控制)。
  6. 选择录制选项卡。
  7. 现在您应该看到 ALSA 插件 [audacity]。如果你没有看到 ALSA 插件 [audacity],请确保你在 audacity 中点击了 Record Button。在执行下一步时,您应该大胆地进行录音。
  8. 选择“从*监视”。请参阅屏幕截图。 PulseAudio 音量控制的屏幕截图
  9. 现在您应该能够录制从扬声器或耳机听到的声音。

注意:在 Ubuntu 12.10
参考PulseAudio 中测试- Ubuntu Wiki

  • 我确实找到了“pulse”,但找不到“pulse:Mix:0”或类似 mix 0 的任何东西。我只是转到首选项,然后转到设备,然后单击录制,那里只有脉冲,我在哪里可以找到脉冲:混合:0? (3认同)
  • 每个步骤都按照您的描述进行,但最终 Audacity (Ubuntu 14.04) 中不会记录任何音频。“pulse*”后面的“*”是什么意思? (2认同)

小智 92

一个非常小的准系统软件,可以完全满足您的需要,被称为(很明显)“录音机”,安装如下:

sudo add-apt-repository ppa:audio-recorder/ppa
sudo apt-get update && sudo apt-get install audio-recorder
Run Code Online (Sandbox Code Playgroud)

文件会自动保存到~/Audio目录中。

Ubuntu 录音机

  • 这很可爱,谢谢!非常简洁,虽然 Audacity 设置有效,但如果您*只**需要录制音频(到 ogg、wav、mp3 等),这就是解决方案。 (8认同)
  • 它也像魅力一样!:) (6认同)
  • 当 Audacity 只需单击一下即可完成您需要的工作时,您为什么要通过 Audacity 完成所有“喧嚣”......击败了我。 (6认同)
  • @poelinca 因为 Audacity 和脉冲音频是 2 个非常强大和有用的软件,如果我无论如何都要安装它们,因为我将它们用于其他用途,那么我为什么要安装第三个工具来执行我当前的程序已经可以做到的事情达到?此外,大胆对此更好,因为您可以在所需的重新编码部分之前和之后切断任何额外的音频。顺便说一句,这很麻烦。Hustle 的意思是推或偷。 (2认同)

b-a*_*-ak 48

命令行

  1. 安装 sudo apt-get install pulseaudio-utils lame mpg123

  2. 搜索您的扬声器并点击您的扬声器的监听

    pacmd list-sinks | grep -e 'name:' -e 'index' -e 'Speakers'

    或者

    pacmd list-sources | grep -e 'name:' -e 'index' -e 'Speakers'

在此处输入图片说明

  1. 播放您想录制和输入的任何内容 parec -d alsa_output.pci-0000_00_1f.3.analog-stereo.monitor | lame -r -V0 - out.mp3

  2. 点击ctrl+c停止录制并播放录制的文件mpg123 out.mp3

简约的图形用户界面

一个非常简单的 GUI 来执行此操作,从此处提取所有文件并运行install.sh Goto Dash 并搜索Record Speakers

  • 考虑删除`| lame [...]` 管道并使用`--file-format=wav output.wav`(例如)。您可以使用 `parec --list-file-formats` 列出支持的格式。另外,请考虑更清楚地说明您需要在末尾使用“.monitor”指定设备的事实。^^ (10认同)
  • 最佳解决方案... <3 (7认同)
  • 您不一定需要源的名称...您也可以选择源的索引:`parec -d 0 | 跛脚 -r -V0 - out.mp3` (4认同)

小智 7

我只是做了一个小别名,用一个命令记录 PC 音频输出,并以 opus 格式而不是 mp3 格式存储。

  1. 安装所需的软件包:

    sudo apt-get install pulseaudio-utils opus-tools
    
    Run Code Online (Sandbox Code Playgroud)
  2. 编辑您的.bashrc文件:

    nano ~/.bashrc
    
    Run Code Online (Sandbox Code Playgroud)

    复制下面的行并将其附加到您的末尾~.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"
    
    Run Code Online (Sandbox Code Playgroud)

    Ctrl+ X(关闭nano),然后Y(对于“是”)和Enter(确认文件名)保存文件。

  3. 现在加载新的~/.bashrc(或简单地打开一个新终端):

    source $HOME/.bashrc
    
    Run Code Online (Sandbox Code Playgroud)

然后尝试,只需键入

recaudio
Run Code Online (Sandbox Code Playgroud)

它将在您的音乐主文件夹中创建一个名为recording-[DATE].opus.

享受。

  • `--monitor-stream=...` 部分的作用/含义是什么?我的 list-sink-inputs 为零,除非确实有东西在播放声音,然后它会返回一个数字。那么这必须在声音已经播放之后才开始吗? (2认同)