У меня есть программа, похожая на Soundpad. В настоящее время он воспроизводит звук через виртуальный аудиокабель (VAC).
Однако пользователи должны вручную установить VAC и установить в качестве источника звука «Выход аудиокабеля» в каждом приложении, в котором они хотят используйте мою программу.
Я хочу упростить свою программу, чтобы пользователю не нужно было ничего делать, а звук воспроизводился напрямую в устройство «Микрофон», как в оригинальный Soundpad.
Я знаю только Python, и даже библиотеки самого низкого уровня не позволяют писать() на устройство ввода.
Я также знаю, что в Python можно импортировать собственный код C++, но я никогда раньше этого не делал.
Как мне реализовать эту идею?
import pyaudio
import audio_metadata
import numpy as np
def play_sound(audio_file):
p = pyaudio.PyAudio()
metadata = audio_metadata.loads(audio_file.read())
audio_file.seek(0)
stream = p.open(format=pyaudio.paInt16,
channels=metadata.streaminfo.channels,
rate=metadata.streaminfo.sample_rate,
output_device_index=SETTINGS["OUTPUT_DEVICE"],
output=True)
chunk = SETTINGS["CHUNK_SIZE"]
data = audio_file.read(chunk)
while data:
datachuck = np.frombuffer(data, np.int16)
datachuck = datachuck * SETTINGS["VOLUME"]
datachuck = datachuck.astype(np.int16)
datachuck = datachuck.tobytes()
stream.write(datachuck)
data = audio_file.read(chunk)
stream.stop_stream()
stream.close()
p.terminate()
Подробнее здесь: https://stackoverflow.com/questions/792 ... -in-python
Как воспроизводить звуки прямо в микрофон в Python? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение