VS1053b audio drivers: play music, speech or sound FX

Discuss development of drivers for external hardware and components, such as LCD screens, sensors, motor drivers, etc.
Target audience: Users and developers of drivers.
Post Reply
User avatar
Posts: 4234
Joined: Fri Jul 18, 2014 8:01 am
Location: UK

VS1053b audio drivers: play music, speech or sound FX

Post by pythoncoder » Sat May 16, 2020 3:09 pm

Synchronous and asynchronous drivers may be found in this repo. The have been tested on this Adafruit breakout on Pyboards, ESP32 and ESP8266.

The capabilities of the synchronous driver are as follows.

On all platforms 128Kbps and 256Kbbs MP3 files may be played back. Files may be located on the onboard SD card or elsewhere. On the Pyboard CD quality FLAC files may also be played; audio may also be recorded, but not to audiophile standards. It produces excellent quality speech recordings.

The asynchronous driver is effectively Pyboard only - MP3 playback (up to 256Kbps) is the limit. The problem here is the limited buffering on the chip coupled with the overhead of task scheduling. Application design needs some care. When uasyncio acquires priority I/O scheduling the constraints will be reduced.
Peter Hinch

Post Reply