Try rebooting once after playing some audio. Also make sure you have our latest alsa configuration (check the detailed install page on the Raspberry Pi Setup page for the
If its still not working, you can still change the volume, just use alsamixer from a Terminal command prompt.
Yep, this is a known Raspbian Linux thing. Yay Linux! We don't have a fix for it. If it makes you feel better, my fancy Windows development computer does the same thing with my desktop speakers.
You can reduce popping a lot with the '/dev/zero play' option in the i2s setup script. (We added it in October 2018) but you still might get that one initial pop
Make sure you've lowered the volume. The default is 100% which is waaaay too high! Use alsamixer to reduce the volume to 50% or so
It will work with anything that has alsa audio support. There's thousands of linux programs so we can't guarantee all of them will work but here's what we found does for sure!
- PyGame - see our page on playing audio with PyGame for example code. Volume can be controlled within pygame
- mpg123 - command line mp3 audio playback. use alsamixer to control the volume
- aplay - for playing wav files on the command line
- Sonic Pi - tested in the Pixel Desktop. Use the Sonic Pi settings panel to change the volume - it does not seem to care about what global audio volume you set!
- Scratch 2 - tested in the Pixel Desktop. Works fine but may have a delay and make a popping sound the first time you play audio. You can set volume with alsamixer and also via the app by using the set volume to nn% block
- Scratch 1 - doesn't work, something not set up with Scratch 1 to use alsa?
- RetroPie/Emulation Station - audio works within games (we tested NES and MAME libretro) but does not work in the 'main screen' (selecting which game to play interface)