Запись звука без блокировки пользовательского интерфейса Pygame - PullRequest
0 голосов
/ 18 июня 2020

Я делаю простую Python утилиту, которая показывает темп воспроизводимой песни (BPM). Я записываю короткие фрагменты по несколько секунд, чтобы рассчитать темп. Проблема в том, что теперь я хочу показать это на дисплее с помощью пользовательского интерфейса Pygame, но когда я записываю звук, пользовательский интерфейс не отвечает. Я хочу сделать так, чтобы пользовательский интерфейс оставался отзывчивым во время записи звука, а затем обновлял значение на экране после расчета темпа для нового фрагмента. Как я могу это реализовать?

Я посмотрел на многопоточность, но не уверен, что это подходящее решение для этого.

1 Ответ

0 голосов
/ 18 июня 2020

Я бы использовал python threading библиотеку.

Используйте модуль pygame в основном потоке (просто обычную python оболочку, по сути) и создайте отдельный поток для функции, которая определяет BPM.

Затем этот BPM можно сохранить в глобальной переменной, к которой PyGame может получить доступ для отображения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...