PyAudio:如何捕获内部音频(而不是麦克风)?

4
尝试像这样:
p = pyaudio.PyAudio()

stream = p.open(format=FORMAT,
            channels=CHANNELS,
            rate=RATE,
            output=True,
            frames_per_buffer=chunk)

all = []
for i in range(0, int(RATE / chunk * RECORD_SECONDS)):
    data = stream.read(chunk)

但是它会抛出 paCanNotReadFromAnOutputOnlyStream 错误。
使用 input=True 可以从麦克风中读取音频,但这不是我需要的。
请帮忙,谢谢。
编辑:我正在使用 Linux 操作系统。
我也可以使用其他库,不仅限于 PyAudio。我只需要让它正常工作。


1个回答

2
尝试这个:https://github.com/intxcc/pyaudio_portaudio PyAudio不仅可以录制输入,还可以录制输出。但是这个分支引入了一个API,通过回环模式使您能够这样做。要使用此功能,请将标志设置为AUDCLNT_STREAMFLAGS_LOOPBACK。希望这有用,祝好运!

我正在使用Linux。 - AshFTW
@AshFTW 如果你使用男性到男性的3.5毫米插头会怎样?你也可以获得一个3.5毫米分配器,这样一个输出可以连接到你的耳机,另一个可以连接到电脑麦克风插孔。 - Liam
[paste] splint.png - AshFTW

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接