randy's Recent Posts

Another Soundplane software update is available. This release is recommended for all Soundplane owners. It's coming out hot on the heels of the 1.5 version in order to fix a problem that some users were having under Mac OS 10.10.

To keep up with Apple's code-signing recommendations I'm now distributing the application as a signed .dmg file. Just drag the Soundplane app to the Applications shortcut to install in typical Mac fashion.

Finally, latency is also decreased with this version, for the first time since the initial release! I hesitate to throw out precise numbers yet, because latency measurements are hard to do right. Roughly speaking, an underlying isochronous USB layer that added 10–20 milliseconds of latency previously is now down to just a few ms. I'm looking forward to doing some accurate tests. Maybe this will make a cool movie?

For those of you who write computer program and are doing things like compiling Soundplane apps for Linux, the C++ API is now settled down, so that you won't have to keep up with any further changes for a long while. As always the code is available on github: https://github.com/madronalabs/soundplane

Direct link: Soundplane 1.6.0.dmg, 5.9MB

version 1.6 changes:

  • improved isochronous USB driver: lower latency, allows restart after pausing app
  • fixed an issue selecting cleanest carriers after "select carriers"
  • now distributing as signed .dmg
  • fixed a possible crash on shutdown

Stay tuned for a maintenance update of Aalto, Kaivo and Virta very shortly.

and done, see hardware forum.

Thanks for the help Phil.

Thanks for the thoughts about OSC parameter access. I would really like to do it. I don't think it will be too hard. It's been on my list for a long time but lower priority than some other things people have been asking for.

Found another couple issues I need to fix before sending out the beta. Should be able to take care of them Monday.

The low latency isoch callback routines are called by the Mac at main interrupt time in order to allow low latency, which makes them kind of dangerous. Being careful about when these are called and comprehensive about their errors are handled seems to have eliminated the crashing.

This looks like very interesting work. Thanks for sharing. I would be interested to add NKS directly to Aalto (and the other synths) but I just haven't had time to look at it yet.

I'm very happy if you want to convert the factory patches as well.

I look forward to learning more about all this...

Can you look in Activity Monitor and tell me what Live's CPU use is first with one instance of Aalto, then with Aalto disabled? Then I can tell you if it seems reasonable.

Your system should do well with Aalto. CPU is the only really important thing for Aalto, disk and memory won't affect it much.

I ended up taking a deep dive into things and fixing some other issues that made development slow. (Kernel panics when debugging, no more!) I will be wrapping the app up and sending out a beta this week. Since the internals changed so much, I'll be upping the version to 1.7 (1.6, we hardly knew ye) and starting afresh with a proper beta.

In addition to the improvements to lower layers I did find the bug that was causing the intermittent issues with output.

You definitely have all the information you need in the file. Probably the line-endings are getting mixed up, depending on what program you use to save it. I'll try to find time to write a quick tutorial on this soon.

We are not yet sure. It's a battle to make it skiff-friendly, but yet not overly wide, and we are still working out the details.

I'm reading again where you say the format is changed. Did you try registering a plugin with the saved text? Maybe there is no problem. The spacing you see when text is centered is completely a result of the presentation on the website and not of the text itself. So the apparent change to left alignment is normal.

There may also be a setting in notepad++ needed to fix the line endings under Windows. I'm sorry I can't find details for you right now, but I know I have made this work in the past.

Thanks for the good words. I'm looking forward to getting this release out ASAP so I can focus on the next plugin! Hopefully, before this month is over. Thanks for your patience.

Hi, I guess you are on Windows? It's common for text editors to use a different character for "end of line" there, and maybe the slash characters are confusing your editor. But it should be no problem to find an editor that makes it look right. I have good luck with notepad++. If you can see it on the website, then you have all the data.

In any case, I plan to be still operating for years to come. I appreciate your concern about longevity.

Thanks for the additional info. I put the bug in my system and will check it out for the next release.

I'll have to investigate this. I'm not familiar with what you are describing.

In all the MPE and MIDI code, notes are all handled equally, so it's hard to think of why certain combinations would not be working. Can you confirm that you don't have this issue with other MPE-capable synths?

Are these failing note combinations the same if you launch the DAW and everything again?

Thanks for the note. Enjoy!

It is definitely possible. There's a program message, or some kind of message, to the vst~ object that should change the program and there should be a way to get a list of programs as well. I don't have Max/MSP on this computer so it's hard for me to look it up right now.

What I found out today is that there is an intermittent problem. I can start up the Soundplane app and have it work fine, then start up again in the same way and it gives the symptoms you are describing. This is why I was able to test and think it was functional. I'll work to fix this ASAP.

What I found out today is that there is an intermittent problem. I can start up the Soundplane app and have it work fine, then start up again in the same way and it gives the symptoms you are describing. This is why I was able to test and think it was functional. I'll work to fix this ASAP.

Oh no! I'll investigate today, thanks for the report.

Hi, you can just register the demo versions if you have downloaded them in the past year. Before Jan 2017 I had a different registration system that required downloading a watermarked version.

It's not a secret—the Madrona Labs modular environment I have been working towards for ages gets ever closer to a first release (though still, don't hold your breath) and I'm planning to put the Aaltoverb algorithm out there as one of the free example plugins people can use on release. There aren't really any more details I can spill besides that because many decisions are down the road a little ways.

Makes sense. Thanks for the input.

It's coming, but as part of a more ambitious project, so it's going to be a while still.

Hi Timm, I hope you got my email. Sorry about the server burp last time!

if we didn't sort this out, please email support@madronalabs.com and I can help!

Hi nice person, thanks for the good words. I get the idea of a Kaivo audio input. When I eventually come out with a modular environment it will allow combining, say, Virta's input module with Kaivo's physical models.

Kaivo's granulator can't currently do anything with live input, because it is designed to analyze sound clips and find the best grain transition points ahead of time. So it's not as useful to have audio input for Kaivo, I think.

I was making a little music with Aalto over the holidays. I was trying to set up a flow where I could just tweak the knobs while recording audio out of Aalto, and record a lot of tracks that I would just mix together to get the finished piece. But, as you may have found, this is easier said than done! I have ideas on how to make things better.

Tweaking while recording


One problem is that the main DAWs don't let you record audio while tweaking knobs of a synth or effect. Logic has a real time bounce, for example, but locks out control changes while it's going on. Live won't record audio out of a synth unless you are in render mode.


One workaround is to use Numerology from Five12. It's great for on-the-fly sequencing and tweaking, and will let you record audio while you do this. It's a little less than ideal in that the audio is all sent to automatically-named files that you have to sort out later. But in even allowing recording while tweaking it offers a cool feature that the big DAWs don't. The drawback for me is that it's not the environment I want to mix in.


I checked out Reaper and did not get far enough to decide whether this would be a good solution for live recording. I could deal with learning to mix in it if it offered this capability. Anyone tried this in Reaper?


Finally, one solution might be a simple record button in Aalto. But I try to avoid adding things that the DAW should be doing well. Anyone up for writing a DAW this year with Live’s ease-of-use and timing, Logic’s MIDI implementation and Reaper’s efficiency?

Resetting


Another problem with the flow as it stands is resetting Aalto back to a patch at the start of a loop or arrangement. I'd like to set up one patch, do a take of knob-tweaking, and then automatically have Aalto recall a previous patch or saved state back at the beginning to set up the same jumping-off point for exploration. This is a little difficult now.


One way to do it, currently, is using MIDI program automation. Aalto 1.3 added the ability (underdocumented, currently) to switch programs via MIDI program change messages. See here for details. So, you can make a patch, save it to the "MIDI Programs" directory, and record a program change message in your DAW of choice. This is fairly easy in Logic, and in Live looks clunky but possible. There's an extra step of saving a patch, though, every time you want to define a new starting point. Not ideal. Maybe I don't care about the patch in general but just as an element in one song.


Resetting the patch is also needed to make the flow sort-of-good in programs like Live and Logic that don't allow control changes. An offline bounce (much faster than real time) after each tweaking pass may not be a bad price to pay for recording in my environment of choice, and so I can simply record the parameter change data---but the reset is also essential here.


There are a few ideas I have for a solution. One is to add a menu choice "broadcast all parameters." This would do what it says, allowing parameter automation systems to capture the entire state of the plugin. I think that with more than 100 parameters, though, this might overwhelm the capabilities of the DAW, and would certainly make a mess of the param menus.


A refinement of that idea is to have two menu options, one to say "start keeping track of what parameters I changed," and another to reset only those changed parameters. This would definitely work, the only drawback is a little added complexity. You would still need to be careful to save your song with all the params at their initial states!


I'm happy that Aalto 1.3.1 is very solid after the 1.3 shakeup, and I'm looking forward to working on some of these workflow details now. I welcome your suggestions!

I'll do a little something this winter.