0

I am in the process of making a talking robot and I have linked my ESP32 to a Google text-to-speech service. The service returns me a base64 8-bit audio response.

I need to play this audio and I can't figure out how to do it. I know that an audio playing library exist for PCM but the data that it requires is not base64.

ocrdu
  • 1,795
  • 3
  • 12
  • 24

1 Answers1

1

Base64 has nothing to do with audio. It is merely a way of encapsulating binary data into ASCII text so that it can safely be included in text-based structures like JSON, or transmitted over a text-based communication channel.

There is no library to "play" base64 simply because base64 is not something you play.

First you decode the base64 text into raw 8-bit binary. It's then that data that you play through whatever library is most suitable for your hardware.

For example on the ESP32 you have the function base64_decode() available. You can read up on how to use it in this tutorial.

Majenko
  • 105,851
  • 5
  • 82
  • 139