La funzione mixer.music() di pygame

La funzione mixer.music di pygame mi permette di inserire una musica di sottofondo in un gioco.

mixer.music

La funzione mixer.music ha tre argomenti:

  • load()
  • play()
  • stop()

Il metodo load() carica in memoria un file audio digitale (es. mp3, wav, midi, ecc.) e lo trasforma in un oggetto di tipo sound.

mixer.music.load(file)

Il metodo play() avvia la riproduzione del brano musicale.

mixer.music.play(loop, start)

Il metodo ha due argomenti

  • Loop
    Il primo parametro permette di impostare il loop (-1) per riprodurre automaticamente il brano quando termina. In alternativa si può inserire un numero intero (0 o superiore) per indicare il numero preciso di ripetizioni.
  • Start
    Il secondo parametro indica a quale secondo (a partire dall'inizio) comincia la riproduzione del brano. Se indico 0.0 la riproduzione comincia dall'inizio.

Il metodo stop() interrompe la riproduzione del brano.

mixer.music.stop()

Il metodo stop() non ha argomenti.

    Un esempio pratico

    Questo script riproduce un brano musicale.

    1. import pygame
    2. pygame.init()
    3. pygame.mixer.music.load('background.wav')
    4. pygame.mixer.music.play(-1)
    5. running=True
    6. while running:
    7. for event in pygame.event.get():
    8. if event.type == pygame.QUIT:
    9. running=False

    Nella riga 3 carico in memoria il file "background.wav".

    mixer.music.load('background.wav')

    Nella riga 4 avvio la riproduzione del brano musicale tramite il metodo play() con loop infinito (-1).

    mixer.music.play(-1)

    Lo script riproduce l'audio fin quando il programma è in esecuzione.

    Nota. Per fermare la riproduzione della musica è sufficiente eseguire il metodo stop() in corrispondenza di un determinato evento di gioco.

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    PyGame