Questions about synth

Hello. I'm still learning the ropes of playdate development while working on my first project. I plan to add synth audio into my game (as a challenge and for creative reasons):

  • Was the playdate synth based around an existing synth?
  • How does the playdate play audio? Is there a special chip involved?
  • By any chance, is there a soundfont file around?
  • Is there a way to emulate playdate audio in a DAW?

To be honest, I'm not even sure if I'm approaching this problem from the right angle.

As a newbie also, I had very similar questions, made a few single-note "boops" and then decided to just use Wave files :confused:

  • Was the playdate synth based around an existing synth?

The synth code is my own creation, a fairly standard softsynth implementation with generators, modulators, filters, etc.

  • How does the playdate play audio? Is there a special chip involved?

It's all generated in code, there's no synthesizer or DSP chip involved on the device.

  • By any chance, is there a soundfont file around?

We don't have soundfont support yet, but I'd love to add that one day. A while back Takuya ported the TinySoundFont library to Playdate but reported that it didn't perform well on the hardware. One of these days I'd like to take another look at that and see if I can make it work better.

  • Is there a way to emulate playdate audio in a DAW?

I'm not quite sure what you mean by that. :thinking: If you're looking for a way to use the sound engine but avoid using code I've seen some tools like Simple tool for checking synth sounds on device that let you explore different parameters, but eventually you'll have to set everything up in code. After that you can trigger notes in code, possibly in reaction to buttons or events in a game, or you can play a .mid file as a sequence.

I know a lot of the API expects that you already know what all of the term mean. If I ever have the time I'd love to have the time to write a full tutorial on how the synth engine works; until then, there's sample code in the Examples folder that might be useful.

3 Likes

One of the reasons TinySoundFont was running slow on the device was that it was using a dobule. When I replaced all doubles with floats as a test, the device now produces sound.

1 Like

<spam deleted> -dave