我正在尝试使用 Audacity 录制计算机上播放的声音,但遇到了一些麻烦。
我已将立体声混音设置为默认录音机,但它无法拾取通过我的 HDMI 显示器扬声器播放的音频:
回放
记录
当我插入耳机时,立体声混音会拾取音频流,我可以录制,但通过 HDMI 播放时则不行。我安装了最新的音频驱动程序,并尝试了所有不同的录制选项,但都无济于事。
我如何捕捉通过 HDMI 传输的音频流?
答案1
立体声混音是声卡的一项功能,它提供了一种镜像声卡输出的录音设备。如果您使用的播放设备不是 Realtek,例如使用 HDMI 时,其输出上将没有信号,因此立体声混音录音设备上也没有信号。
在这种情况下,您的播放设备是您的 GPU,它不太可能具有类似的功能。您需要使用虚拟声卡等专用软件来拦截音频。
答案2
几年过去了。我们可以使用 gstreamer 管道来录制音频并将其传输出去。
从麦克风录音。
gst-launch-1.0 -e pulsesrc ! audioconvert ! wavenc ! filesink location=output.wav
在播放声音或视频时记录“您听到的内容”。
gst-launch-1.0 -e pulsesrc device=alsa_output.pci-0000_00_1b.0.analog-stereo.monitor ! audioconvert ! wavenc ! filesink location=output.wav
录制您听到的内容,并将其转发到 HDMI
gst-launch-1.0 pulsesrc device=alsa_output.pci-0000_00_1b.0.analog-stereo.monitor ! audioconvert ! wavenc ! filesink location=output.wav ! audioconvert ! audio/x-raw, rate=44100, channels=2, format=S16LE ! pulsesink device=hdmi-stereo
您的系统上的设备可能有所不同。查找其他设备。
pactl list|grep source
pactl list|grep sink