Доступ к аудиоустройству USB из блоков докеров - PullRequest
0 голосов
/ 15 октября 2019
  • USB-микрофон (respeaker 4 mic) подключен к хосту Ubuntu
  • на хосте Ubuntu работает контейнер докера
  • и контейнер, и хост запускают Ubuntu18.04
  • доступ к микрофону usb внутри докера через опцию --device /dev/bus/usb --device /dev/snd docker
  • моя программа внутри контейнера докера обращается к микрофону usb с помощью pulse audio -> portaudio -> pyaudio(a python wrapper of portaudio)

Моя проблема: иногда, при открытии микрофона для записи, открытие блокируется (pyaudio.PyAudio() блоков), если это происходит, последующий доступ к микрофону (открытый для записи) также блокируется. Если я остановлю док-контейнер, запустив на хосте pyaudio.PyAudio(), а затем снова запустив его из контейнера, проблема исчезнет.

Есть идеи, почему это происходит?

...