Battery-powered, 5-buttons sound frame


I am making a picture frame for 5 pictures, and below each picture I want to have a button that plays a sound related to the picture. I would like this to be battery powered (lipo) and not take too long to wake up (or require an on/off switch that will always be forgotten), and play sound about 30 seconds long.

I have tried the DFPlayer and Adafruit Audio FX Sound Board modules, but I can't leave them powered on all the time and I don't know how to turn them on/off without a relay which seems overkill for such a simple application. Also, the DFPlayer takes about 10 seconds to get up and running.

So I am wondering, how are the musical books for children working usually (they wake up instantly, can play relatively long songs and last a long time on small batteries). And most importantly, what would be the best approach to do something like this with Arduino ?

Thanks !

There exist µC which better support sound output, having much memory and a DAC for the sound. That’s how musical books are built. If you want to do the same with an Arduino, you need some module with such a more suitable controller, eventually also a sound memory module, and only control these modules by the Arduino.

For battery saving choose a sound module that does not deserve such a long startup time. Eventually such a module has a sleep mode, selectable from an input pin, otherwise a transistor can be used to power off the module. The built-in sleep mode is preferable, else you may get a click from the speaker when turning power on and off.