The process of researching, building and packaging a SI as an audio plugin was a process that took over nine months. This blog post is about the issues I encountered along the way that have not been discussed in other blog posts.
Features:
There were some features I wanted to implement in my Pd work, though was unable to given limitations outside of my control.
1. Keyboard & Sustain GUI
I initially wanted to build an interactive Keyboard & Sustain GUI. I managed to get this working in Pd, using canvas' and changing their colour based on a MIDI input.
After generating a plugin using Camomile, I found that this feature didn't work in a DAW because Camomile doesn't support the updating of canvases. I decided to remove the feature entirely, as having it there not functioning was an eye-sore.
2. String Resonance
Another feature I wanted to implement was string resonance. To add this, I created a patch which took the note value of the sample currently playing and used it to trigger the samples for the first five notes in the harmonic series.
This initially seemed to have worked well, though when testing it I got an error message from Pd stating: Too many open files. After some investigating, I found this was due to a limitation of MacOS and so removed the feature from my patch.
Camomile
In my previous blog post, Building a Sample Player, I discuss how the sample player uses a process called disk-streaming to read the samples. Prior to this, I was loading the entirety of the sample into the computer's memory which was using enormous amounts of space. Implementing disk-streaming into my Pd work was surprisingly easy, though I was unable to get this to work with Camomile as every time I loaded the plugin into a DAW, it would either fail verification or crash once a note was played.
I couldn't find a fix to this issue, so reported it to Camomile's developer (click here to view the thread). It turned out this was due to an issue with Pd, so I simply had to wait for this to be fixed in a new update.
Comments