如何使用 ffmpeg 只录制内部音频?

如何使用 ffmpeg 只录制内部音频?
ffmpeg -f x11grab -s 1920x1080 -i :0.0 -f alsa -i default -c:a aac -c:v libx264 -crf 18 -preset slower ~/Videos/recording-(date +%F-%I-%M).mp4

我正在使用此命令来录制屏幕,我的目的是仅录制内部音频。但似乎源设置为麦克风。这里正确的命令是什么?

答案1

好吧,折腾了一个小时后我找到了解决方案。起初我通过运行获得了pulseaudio输出源pactl list short sources。这给我看了这个清单 -

0   alsa_input.usb-046d_0825_3AC10B90-02.mono-fallback  module-alsa-card.c  s16le 1ch 48000Hz   RUNNING
1   alsa_output.pci-0000_06_00.1.hdmi-stereo.monitor    module-alsa-card.c  s16le 2ch 44100Hz   RUNNING
2   alsa_output.pci-0000_06_00.6.analog-stereo.monitor  module-alsa-card.c  s16le 2ch 44100Hz   RUNNING
3   ladspa_output.mbeq_1197.mbeq.monitor    module-ladspa-sink.c    float32le 2ch 44100Hz   RUNNING

就我而言,来源是ladspa_output.mbeq_1197.mbeq.monitor.

最后我运行这个命令选择输出源 -

ffmpeg -f x11grab -s 1920x1080 -i :0.0 -f pulse -i ladspa_output.mbeq_1197.mbeq.monitor -c:a ac3 -c:v libx265 -crf 22 -preset slower ~/Videos/Recording-$(date +%F-%I-%M-%N).mp4

希望这可以帮助。

相关内容