PolarPlayer-Studio

January 30, 2023

Introduction

I've owned a ROLI Seaboard Block for over 3 years now, and I think that ROLI is a perfect example for proprietary hardware & software: Ever since ROLI released Equator Player, people have been asking for a Linux version 1, but that never happened, and given that ROLI is sunsetting the Seaboard and rebranding itself as Lumi2 this probably won't ever happen.

I've experienced with the idea of writing my own synth before, but the fact, that there won't ever be an official Equator Player version for Linux, motivated me to finally go through with it.

So I made some design mockups and started working on a prototype web app, but gave up pretty quickly, because webmidi lacked availability in browsers. Additionally, I was learning rust at that point in time, and honestly preferred it over JavaScript.

The rise and fall of PolarPlayer

This gets us to the beginning of 2022, when I started working on what has become my first working version of PolarPlayer.

Actually, I originally intended PolarPlayer to become a command-line application, that you had to run from the terminal. But supercollider, the audio processing engine, I relied on, didn't provide the features I was looking for. And having to start two applications just to make music got really annoying, really quick.

This led to me sunsetting the PolarPlayer CLI version, but if you want to take a look at it, you can still check it out over on codeberg.

Setting sail

./popups.webp

After retiring PolarPlayer, I got into rust GUI libraries and started experimenting with egui.

To indicate that PolarPlayer Studio was an extended version of PolarPlayer, I forked my own repo and rewrote most, if not all the existing code. The first three alpha versions used SDL as the backend (They can also be found on codeberg) But I later switched to miniquad because I had one goal in mind: Building a cross-platform MIDI synthesizer.

And because this new version featured a GUI I called it PolarPlayer Studio

Current status

Most of the work on PolarPlayer Studio is completed. At least it is usable and I released the first stable version, titles Arctic circle.

I've also added support for connector-types, allowing for fine-tuned configurations. Additionally, one can now save and load presets, although, the positions are currently not persevered.

Unfortunately, university is currently taking up a lot of my time, which is why PolarPlayer Studio hasn't seen updated in over 4 months now. Hopefully I'll be able to get back to it at some point.

For now, you can track PolarPlayer Studio's progress over on codeberg