没有麦克风的 sox 和 rec

Mit*_*ops 5 audio-recording sox

我正在尝试记录扬声器的输出,但是当我这样做时,它也会从麦克风记录。我只想录制非麦克风设备。

试:

$ (AUDIODEV=hw:0,0; rec test.mp3)    
$ rec -d hw:0,0 test.mp3
Run Code Online (Sandbox Code Playgroud)

我也试过 ffmpeg:

$ ffmpeg -f alsa -i hw:CARD=PCH,DEV=0 test.mp3
$ ffmpeg -f alsa -i front:CARD=PCH,DEV=0 test.mp3
$ ffmpeg -f alsa -i surround40:CARD=PCH,DEV=0 test.mp3
Run Code Online (Sandbox Code Playgroud)

我见过一些复杂的东西,例如:

$ parec -v -d analog-output-speaker | sox -t raw -e signed-integer b 16 -r 44100 -c 2 test.mp3
Run Code Online (Sandbox Code Playgroud)

在线提议,但这仍然记录麦克风,并带有过时的袜子选项。

如何在 ubuntu 14.04+ 中仅录制非麦克风输入?

use*_*.dz 3

脉冲音频

  1. 检查可用的来源

    $ pactl list short sources
    0    alsa_output.pci-0000_00_05.0.analog-stereo.monitor  module-alsa-card.c  s16le 2ch 44100Hz   SUSPENDED
    1    alsa_input.pci-0000_00_05.0.analog-stereo   module-alsa-card.c  s16le 2ch 44100Hz   SUSPENDED
    
    Run Code Online (Sandbox Code Playgroud)
  2. 指定监控设备作为录制命令的输入。

阿尔萨斯

直接使用ALSA,参考: https: //trac.ffmpeg.org/wiki/Capture/ALSA

检查录音设备

arecord -l
Run Code Online (Sandbox Code Playgroud)

记录(改变对应<card><device>索引)

ffmpeg -f alsa -i hw:<card>,<device> test.mp3
Run Code Online (Sandbox Code Playgroud)

图形用户界面工具

还有一些高级 GUI 工具,例如:audacity