python - 如何指定与python sounddevice一起使用的录音设备

标签 python python-3.x audio microphone python-sounddevice

我想两次使用以下功能。

此功能将现场音频输入转换为wav文件。

第一次使用PC内置麦克风,第二次使用代码运行前插入的耳机麦克风。

但是,当我尝试功能时,它仅使用耳机的麦克风:

import sounddevice as sd
from scipy.io.wavfile import write
from playsound import playsound
def audio_to_wav(dst, device):
    """
    converts live audio to wav file
    :param dst: destination wav file
    """
    # Sample rate:
    fs = 4410
    # Duration of recording:
    seconds = 5

    myrecording = sd.rec(int(seconds * fs), samplerate=fs, channels=2, device=device)
    # Wait until recording is finished:
    sd.wait()
    # Save as WAV file:
    write(dst, fs, myrecording)

在我的主程序中,我两次调用了此函数:
def main():
    # transfer mic1 audio to wav:
    audio_to_wav("file1.wav", 0)
    # transfer mic2 audio to wav:
    audio_to_wav("file2.wav", 1)
    # play the wav files audio:
    playsound("file1.wav")
    playsound("file2.wav")

但是,当我运行此代码时,该功能仅使用耳机的麦克风。

如何同时使用PC内置麦克风和耳机的麦克风?

最佳答案

问题在于,在音频管理器(在我的情况下为Realtek音频管理器)中,录音设备的高级设置被设置为“ bundle 相同类型的输入插孔...”。

当我将其更改为“将所有输入插孔作为独立的输入设备分开”时,它解决了该问题。

关于python - 如何指定与python sounddevice一起使用的录音设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59400925/

相关文章:

python - 获取时间间隔内的所有日期

python - 如何制作解锁屏幕功能,并在成功登录 django 后在锁定之前引用他们打开的上一页

windows - 将声音输出到音频设备

java - Android MediaPlayer 不会在较新的 API 上播放声音

python - 将 ZMQ PUB 与 .connect() 或 .bind() 方法一起使用有什么区别?

python - 如何为 tensorflow 常量分配新值?

python - 为什么这个 hmac 摘要在 Python 2.7 和 Python 3.7 上不同?

python - 管理重复的关键字参数

python - Python 中的 URL 请求失败 - 找不到 SSL 证书

audio - SoundJS-将声音分配给变量