Funzione mixer.Sound() di pygame

La funzione mixer.Sound() di pygame crea un oggetto di tipo sound a partire da un file WAV, MP3 o OGG.

mixer.Sound(file)

L'argomento file è il nome del file digitale che contiene l'effetto sonoro.

Come avviare e fermare la riproduzione del suono

  • play()
    per avviare la riproduzione del suono uso il metodo play() dell'oggetto sound.
  • stop()
    per fermare la riproduzione, invece, uso il metodo stop().

Nota. La funzione Sound() è utile per creare effetti sonori brevi e one-shot. Ad esempio, un'esplosione, il suono di un urto, ecc. Per riprodurre una musica di sottofondo è meglio creare un oggetto di tipo music tramite la funzione mixer.music.

    Un esempio pratico

    Questo script riproduce un effetto sonoro.

    1. import time
    2. suono = pygame.mixer.Sound('musica.wav')
    3. suono.play()
    4. time.sleep(10)
    5. suono.stop()

    Nella riga 2 carico il file digitale "musica.wav" tramite la funzione mixer.Sound() creando un oggetto di tipo Sound nella variabile suono.

    suono = pygame.mixer.Sound('musica.wav')

    Nella riga 3 utilizzo il metodo play() dell'oggetto suono per riprodurre l'audio.

    suono.play()

    Nota. La chiamata del metodo play() non sospende l'esecuzione del programma che passa alla riga seguente senza attendere l'inizio della riproduzione audio.

    Nella riga 4 fisso un ritardo nell'esecuzione dello script per consentire.

    Nella riga 5 fermo la riproduzione dell'audio tramite il metodo stop() dell'oggetto suono.

    suono.stop()

    Va detto che il metodo stop() non è necessario se il suono è di breve durata.

    Al termine della riproduzione del suono il metodo stop() è invocato automaticamente da pygame. Quindi, non occorre scriverlo.

    Il metodo stop() è utile soprattutto se voglio sospendere la riproduzione del suono prima del termine.

    E così via.

     


     

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

    FacebookTwitterLinkedinLinkedin
    knowledge base

    PyGame