Несмотря на то, что я ввожу разные значения bpm на входе, метроном продолжает нажимать со скоростью около 160 bpm.
Модуль Pygame просто используется для воспроизведения звука Metro 1.wav. Используйте любой WAV-файл.
import sched
import time
import contextlib
with contextlib.redirect_stdout(None):
import pygame
bpm = int(input("bpm : "))
sleep = float(60/bpm)
s = sched.scheduler(time.time, time.sleep)
pygame.mixer.init()
tick1 = pygame.mixer.Sound("Metro 1.wav")
def click():
tick1.play()
def metronome():
print(bpm)
while True:
s.enter(sleep, 1, click())
metronome()