使用pactl
,我得到以下接收器:
pactl list sinks short
# 0 alsa_output.pci-0000_00_1f.3.analog-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
由于只有一个接收器,我希望它是默认接收器,因此以下命令将具有相同的行为:
ffmpeg -f pulse -i 0 -c:a flac "$HOME/audio.flac"
ffmpeg -f pulse -i default -c:a flac "$HOME/audio.flac"
但是,第一个从播放的媒体复制音频(它是从源录制的吗?),而后者使用内置麦克风录制从扬声器捕获的音频。
最重要的是,虽然看起来更像第一个选项,但使用alsa的以下命令的行为类似于第二个选项(来自内置麦克风的记录):
ffmpeg -f alsa -i hw:0 -c:a flac "$HOME/audio.flac"
我的目标是了解如何区分这些输入以及何时使用 alsa 或脉冲来记录播放的媒体音频和 pactl 列出的任何其他接收器(即内置或外部麦克风)。
我知道很可能需要特定于设备的配置,并希望获得指导,而不是一个通用的解决方案。