PyAudio: как захватить внутренний звук (не с микрофона)?

Пробовал так:

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. Мне просто нужно получить эту работу


person AshFTW    schedule 22.08.2017    source источник
comment
Возможный дубликат Запись вывода динамиков с помощью PyAudio   -  person Loïc    schedule 22.08.2017


Ответы (1)


Попробуйте следующее: https://github.com/intxcc/pyaudio_portaudio

PyAudio не предназначен для записи вывода, только ввода. Однако эта вилка представляет API, который дает вам возможность делать это в режиме обратной связи. Чтобы использовать это, установите флаг как AUDCLNT_STREAMFLAGS_LOOPBACK. Надеюсь, это сработает и удачи!

person Liam    schedule 22.08.2017
comment
я использую линукс - person AshFTW; 22.08.2017
comment
@ AshFTW Что, если бы вы использовали разъем 3,5 мм «папа-папа»? Вы также можете приобрести разветвитель 3,5 мм, чтобы один выход можно было подключить к наушникам, а другой — к разъему для микрофона компьютера. - person Liam; 22.08.2017
comment
[вставить] шина.png - person AshFTW; 23.08.2017