UP | HOME

PolarPlayer-Studio

1. Introduction

I’ve owned a ROLI Seaboard for over 3 years now and when the news that ROLI would retire the seaboard got to me I was somewhat disappointed ­ I was probably one of the last people wait for a linux native version.

But then I realized that I’m a software developer which means that I can build my own MIDI synthesizer software. And this is how PolarPlayer was bord.

2. The rise and fall of PolarPlayer

Acctually I have had plans to write PolarPlayer ever since I got my seaboard as 5D-touch1 gives you so many oportunities for gestures.

I designed a couple of web-based UIs but never acctually wrote code for them because I came to realize that webmidi support is not as widespread as I hoped.

So in January this year (2022) I started working on what has become my first working version of polarplayer. This version is written in rust and was supposed to be run from a linux terminal, where one was able to specify the MIDI port and the supercollider instance. Yes, you heard that correctly, this version did not include it’s own audio processing engine but instead relied on supercollider to do the work. In the end the supercollider library did not provide enough functionallity to control the synths in the way I wanted to. So I stopped working on this cli version and archived it. You can still check it out over on codeberg.

3. Setting sail

popups.png

After retiring polarplayer, I got into rust gui libraries and started experimenting with [[][egui]].

This led to me forking my old polarplayer version and rewriting it as a gui application. 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: Build a cross platform MIDI synthesizer.

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

4. Current status

Most of the work on PolarPlayer Studio has been done. At least it is usable and I released the first stable version.

Additionally I’ve had problems with the current graph library as I would really like to have different connection types, so I’m able to map the notes to generators instead of only being able to play with one generator at a time.

Even though I released the first version, PolarPlayer Studio is still missing some important features. For example I would really like to be able to save the node layout as preset so I can build instruments and reuse them.

As of right now I’m taking a break from PolarPlayer Studio as I’m working on my own MIDI instrument, which is supposed to be compatible with PolarPlayer Studio. I will probably publish a blog post one I get it done.

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

Footnotes:

1

Not really 5D but you also have preassure sensitivity like with a piano

Author: Jakob Meier (comcloudway@ccw.icu)

Date: 2022-06-17 Fri 10:30

All content is licensed under CC BY-SA 4.0