Oppure

Loading
14/06/11 2:25
nick0
sto cercando di realizzare un metronomo con pygame

il problema è che quando avvio lo script i battiti non vengono suonati in modo omogeneo,sembra che il programma vada quasi a scatti

nell'esempio ho usato 200bpm

ecco il codice

import pygame.mixer,time

bpm = float(0.3)
pygame.mixer.init()
pygame.mixer.music.load("beat.mp3")

while 1:
	pygame.mixer.music.play()
	time.sleep(bpm)


qualche suggerimento? grazie :)
aaa
14/06/11 8:27
The Newbie
i motivi potrebbero essere due:
- ogni volta che riproduci il file devi considerare lo scarto di tempo in cui esso è attivo
- se non ricordo male, considerato che da mesi ormai non uso pygame, la riproduzione di file mp3 implica un utilizzo profuso di memoria il che induce un rallentamento del programma stesso

penso che sia più probabile la prima ipotesi considerato sia che nel file che hai postato si nota un certo ritardo sia che subito dopo questo c'è una pausa; ricorda che pygame permette che il programma continui la sua esecuzione liberamente dopo che è stato attivato il suono.
comunque ti consiglio vivamente di non utilizzare un mp3 per quel suono, bensì la semplice funzione beep (il modulo è diverso da OS a OS :_doubt: )

spero di essere stato di qualche aiuto...
Ultima modifica effettuata da The Newbie 14/06/11 8:54
aaa