randy's Recent Posts

I think you have exactly the right ideas in mind. Most of the difficulty in the touch tracking is doing multiple points. A single-point tracker could just look for the highest peak and would be very simple.

Hi Mark,

The Soundplane is a continuous controller first and foremost, not a keyboard. So the protocol reflects this. The touch number is the only thing that two ongoing touches cannot share. It's fine for them to be on the same note. Or for a touch to start on one note and end on another. So we don't want to be comparing notes to tell touches apart in any case.

I tried to make t3d useful in any environment that can receive OSC controllers and treat them as control signals. The idea would be to have a controller /t3d/tch1/z for touch 1 amplitude and so on. I don't know if Reaktor makes it easy to build things at this level. I know that Max/MSP does.

A visualizer would be pretty easy to do in Max. I believe I already have one in my Max examples folder that came with the Soundplane distribution.

Hi Scott,

It sounds like you are finding the right stuff. I took a look at SoundplaneDriver.h where the whole isoch buffer format is documented in the comments. This should be the main info you need. All the code that runs the Soundplane app is in the repo.

The low-level stuff in SoundplaneDriver gets the isoch data. SoundplaneModel::processCallback() is called on its own thread to get the latest frames.

My guess is that a Due will not have the CPU needed to run the algorithm I am currently using for touch detection. The emphasis was on speed and sensitivity, but CPU use is rather high. I am going to be working on the efficiency thing, so even if it doesn't work on your platform at first, I hope you push forward and see what happens, and we can work on this together over time.

The Soundplane's output protocol has not changed since the first Soundplanes were released.

December.

I'm glad to help you play with this stuff. It is not documented anywhere apart from the C++ code, though I hope that is very readable. One reason it's not documented better is that the algorithm is fairly often in flux as I try and do a better job. In particular there will be a big change coming within a few months as I do a rewrite to make adjacent touches work better. If this is a big step up, then spending some time documenting things will make sense at that point.

Some algorithms are really clean and profound, this one not so much. I am using quite a few techniques to get smooth yet fast touches and increase the sensitivity. It's like a grab bag of everything that helped. So explore and feel free to ask questions along the way.

The basic interesting idea is that it's not just peak picking, but distance comparing the 2D images from a template representing the ideal touch. This helps pick light touches out of noise.

The matrix output over OSC is calibrated to set levels but otherwise unfiltered, if memory serves.

I support your efforts to get something going in Max, but in my experience that is a pretty bad environment for this kind of task. Or rather, flow-based programming is not a good fit. If I had to do something in Max I would use javascript in max.

I realize this only scratches the surface but feel free to ask more questions.

You won't see Aalto or Kaivo in Pro Tools because there are no RTAS or AAX versions.

Here's an article from the Pro Tools Expert blog that covers some options for using VST plugins in Pro Tools: http://www.pro-tools-expert.com/home-page/2013/7/10/7-ways-to-host-vst-or-au-plug-ins-in-pro-tools-11-and-earlie.html

DDMF Metaplugin is a kind of super wrapper that lets combinations of AU or VST plugins run in Pro Tools. It may be another option for you.

I just meant, use the VST version to run the VST presets. Anyway, very soon this issue will go away...

Thanks for catching that. There is an AU version number I have to set separately from my internal version and apparently I forgot to do this. I will automate that step now!

Hiya,

The 'note' property sets the start note of each zone. You can edit this in the JSON file to make your own zone maps. Do you see the zoneExample1 preset and so on? If so, the presets are in the right place. You can put your own zone maps there with notes, sliders and other controls laid out as you wish.

I'm attaching the JSON for the built-in "rows in fourths" below. You can edit this to your liking, and save it in the presets directory for use. Let me know if this makes sense.

{
"zone": {
"name": "B2",
"type": "note_row",
"rect": [0, 0, 30, 1],
"note": 50
},
"zone": {
"name": "E2",
"type": "note_row",
"rect": [0, 1, 30, 1],
"note": 55
},
"zone": {
"name": "A2",
"type": "note_row",
"rect": [0, 2, 30, 1],
"note": 60
},
"zone": {
"name": "D3",
"type": "note_row",
"rect": [0, 3, 30, 1],
"note": 65
},
"zone": {
"name": "G3",
"type": "note_row",
"rect": [0, 4, 30, 1],
"note": 70
}
}

I'm hoping to sneak OSC control of parameters into the next update. But if not now, soon.

Well, I will still have to check out the Yosemite performance soon, but I'm very relieved to hear that there are no serious issues now.

Yes, I have only had Logic do that thing with occasional OSC latency. As OSC is system-wide the problem could be elsewhere, but something Logic is causing somehow.

Amazing, thanks for sharing! I don't have time to try it this week but I hope someone does and reports back.

This really makes me want to add better formatting for things like code to the forums here... we are always tweaking and have some more redesign in the works.

OK, good to hear. The hub may not be capable of transmitting the Soundplane's isochronous data for some reason. Some hubs do work OK.

Sorry the preset situation is a bit frustrating right now. The preset converter has been broken in version 1.5. I'm fixing it and also moving to a new unified preset format for 1.6. This will be out very soon.

I plan to add search to the site, but meanwhile you can use Google with a query like "site:madronalabs.com presets" to see results.

Hmm. This is the first time I have heard of this happening. The Soundplane is being recognized by the app, but data is not flowing.

Can you go to the Expert page and tell me any messages you see there?

Also try plugging the Soundplane in without any other USB devices connected (except keyboard / mouse).

Fixed for the new build, will release ASAP. Thanks for the info.

Thank you for the offer! Since it's a general performance issue but not a crash, there's not too much I can do to move forward short of running some profiling tools on your system.

Meanwhile, if you could look at some things for my sanity, here are my requests:

  • pull up a new Live project and make one instance of Aalto running "ancient 4-voice" preset.
  • close the Aalto window (we are ruling out graphics for now)
  • what is the CPU use in Live's meter?
  • what is the CPU use in Activity Monitor? (will vary by 2--3% after settling down)
  • what is the buffer size in Live under Preferences / Audio?

if you have a minute to look at this on both 10.9 and 10.10 with the same buffer settings and audio interface I would appreciate it. Also be sure Multicore / Multiprocessor support in Live is the same setting on both machines.

Also, please let me know the CPU details for each machine, or if it's the same machine so much the better.

MANY THANKS

Thanks for the info Joel. Looking around I see a lot of complaints like "Yosemite made my audio / view slow."

Try running Aalto with animations ("anim") disabled. Does it help?

@copernikit, there may be a couple of things at play here. Let's separate the OSC issue out first.

The OSC outputs from the KEY module are not compatible with the MIDI outputs. This is by design because the Soundplane over OSC just puts out different kinds of data. So you can't plug in a Soundplane and get anything out of an arbitrary preset. You could have a situation where the ENV is triggering but the pressure from OSC is coming out in place of a gate, and things sound weird and delayed.

Here's a zip of Aalto presets for Soundplane:
http://www.madronalabs.com/media/soundplane/Aalto%20Soundplane.zip

Now, regarding latency, once in a while I have seen Aalto in Logic go into a mode where latency is just horrible, 1/2 second or something. It happens very rarely, and remaking the plugin instance seems to take care of it. I don't know if this is a Logic problem or what and haven't been able to track it down yet.

There is a known fixed latency in Aalto 1.5 of 256 samples. I have reduced this to 64 samples in the 1.6 version coming out soon. The reason it's there is because in a patchable, modular synth with feedback you need some kind of latency to implement patching.

Also there is an issue in 1.5 with playback timing, fixed in 1.6. But it sounds like you are just talking about playing live.

I haven't tried Yosemite yet, but getting Logic + Apple's latest + my plugins running smoothly is always a high priority so it should work. People seem to be saying things work well overall. As soon as I can get Aalto 1.6 out, I will upgrade here and then do more testing myself.

Kaivo can be very CPU heavy, but there are plenty of ways to make it less so. I wrote an article on the topic here: http://madronalabs.com/topics/3565-getting-the-most-out-of-kaivo

I don't know why Reaper is so different in its CPU reporting from Live in your experience. Each host can have its own idea of what CPU means, so it's not always a good comparison to look at in-host meters.

A good way to compare different apps is to look at Activity Monitor (or Task Manager on Windows.)

I found 5-6 small in the box and one large. If you want one, email me your address and I'll request money via PayPal. randy at madronalabs.

Run 3 of Soundplanes is all wrapped up, and for a couple of weeks most of the instruments have been in happy new hands. Some people weren’t available to receive them, so here are a couple of stragglers going out this week.



stragglers


After this run, I find myself with two or three remaining sets of good parts, as well as some prototype cases I had milled from walnut. I look forward to building out these instruments when I have time to get back into the shop, so watch this space for info if you're looking for a Soundplane because I plan to put one or more them up for sale if they make the cut.


Right now, though, I am on a dive back into Aalto land, and I'm not coming out until the 1.6 version is ready. This will fix the bug with the preset converter in version 1.5, as well as many other issues. This won't be a "fancy new features" release, rather the result of a whole lot of work under the hood that should make everything more solid and efficient. You know, the kind of release you wish companies would devote more time to.


Apple just released a new version of MacOS called Yosemite. I haven't tried it yet because of the aforementioned Aalto work. I have heard a few rumblings about problems with window management in VST plugins. So for now, I would recommend that you not upgrade, unless you can't resist all the nice new eye candy, and you're not in the middle of a project. If you do try it out, please drop by the forums and let us all know how it's going.

I want to believe...

More seriously, I want to get this done well again (with local printing, sewn-in tags, etc) but that takes time. Especially the mailing part.

I could just use some online service but that's not very Madrona Labs-like!

I'll look at getting some local help and doing another run once I get Aalto out...

Yosemite: I haven't tried it here because I have software to write. Someone on another thread was saying that closing windows on the VST versions wasn't working? Hopefully others can chime in with their experiences.

What version are you using?

Can you go back to the previous version with your previous installer?

Some OSC issues should be fixed in the 1.6 release coming very soon, so if nothing else is working please wait just a bit and try 1.6.

Oops, looks like I deleted part of my comment when posting.

I wrote something about how with overlap, isn't an overlap of

[EDIT] Oh wow, it did it again, looks like a problem with writing the "less than" sign in our Markdown engine. Will look into this.

was trying to say, with overlap less than 1, it sounds like what you are describing to me, how is that different than what you want?

Good feedback all around, thanks for the good words Tobias.

I have plans to address some of these mixer features soon.

With overlap

It sounds like the OSC port got "stuck" at some point and now Aalto can't reconnect. Hopefully a restart will fix this.

I mean, use the VST plugin.