更改采样率以使用声音设备播放声音

时间:2019-11-01 08:03:29

标签: python audio python-sounddevice

在播放80000采样率的现有声音时遇到一些问题。

首先,我会在终端机中找到以下声音设备列表:

python -m sounddevice

我得到:

   0 Xonar DX: Multichannel (hw:0, 0), ALSA (2 in, 8 out)
   …
* 19 default, ALSA (32 in, 32 out)

我想使用Xonar声卡:

sd.default.device = 0
sd.default.samplerate = 80000
sd.play(myarray)

我从端口音频收到无效的采样率错误。

如果我简单地做:

sd.play(myarray, 80000)

那很好。

但是,如果我使用多重处理,并且从Process内部调用play函数,则会收到ALSA欠载错误,是什么原因引起的?

我尝试使用流:

sd.Stream(device=0, samplerate=80000)

但是我又得到了端口音频的无效采样率。

当我不指定要使用的声卡时,实际上发生了什么?什么是:默认ALSA(32进32出)?

有没有一种方法可以使用流?

0 个答案:

没有答案
相关问题