소스 뷰어
print( "\nHello ...\n" )

import os, wave as wave_reader
from picozero import Speaker, LED
from time import sleep
import struct

led = LED(25)
speaker = Speaker(4)

led.on()

folder = "/sounds"

for file_name in sorted( os.listdir( folder ) ) :
    path = f"{folder}/{file_name}"
    wav = f = wave_reader.open( path, "rb" )
    print( f"{file_name:<40} framerate: {f.getframerate():>5,}, sampwidth: {f.getsampwidth():>5,} channels: {f.getnchannels():>6}, frames: {f.getnframes():>6,}" )
    channels = f.getnchannels()
    if channels == 1 :
        framerate = f.getframerate()
        frameCount = f.getnframes()
        beat = 1/framerate
        
        print( f"beat = {beat}" )
        
        frames = f.readframes(-1)
        for idx in range( frameCount ) :
            freq = frames[2*idx + 1]*255 + frames[2*idx]
            #print( f"freq = {freq}" )
            speaker.play( freq, beat )
        pass
    else :
        print( f"Invalid channel = {channels}" )
    pass

    f.close()
    
    break
pass

led.off()

print( "\nGood bye!\n" )