изменение частоты дискретизации для воспроизведения звуков с помощью звукового устройства - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть некоторые проблемы при воспроизведении существующих звуков с частотой дискретизации 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)

Я получаю неверную ошибку частоты дискретизации из порта audio.

ЕслиЯ делаю просто:

sd.play(myarray, 80000)

Это хорошо работает.

Но если я использую многопроцессорность и вызываю функцию воспроизведения изнутри Процесса, я получаю ошибки опустошения ALSA, что их вызывает?

Я пытался использовать потоки:

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

Но я снова получаю неверную частоту дискретизации аудио порта.

Что на самом деле происходит, когда я не указываю звуковую карту, которую хочу использовать? Что такое: по умолчанию, ALSA (32 входа, 32 выхода)?

Можно ли использовать потоки?

...