Inter-Axis vst/au plugin (Beta test)

Hello all and thank you for your help last week! I started development on a virtual instrument plugin and have formed a small test group on FB. There is a beta PC VST3 version available and a MAC VST3 and AU version coming soon. If you have some spare time and would like to help ensure compatibility with MPE controllers and tinker around a bit with a plugin I would very much appreciate it. It contains 2 VCO and 2 physical models a string and tube.

Find me on facebook if you are interested and I can add you to the test group.


Keep me informed if you are planning on releasing this plugin for Linux under a gratis and libre open-source license, and not require creating a Facebook account just to simply test it.

1 Like

No linux version planned only PC and Mac, can also do over email if preferred. FB group just makes it a bit easier for some.

1 Like

Here are a couple sound examples. XYZ per note expression velocity and release velocity supported.


Hi Davidson,
For me (Jean-Marc) il will be also better via emails…
I will follow the insformation to my friend who has a Continuum. He is on Mac and doesn’t use Facebook at all :wink:


Great thanks Jean-Marc!

1 Like

It sounds just great to me; I am at the beach with only the iPad, but will try it at home Sunday with the PC and Striso, Lumi and QuNexus Red to give it a try. But I, too, would need the email version, since I don’t do FaceBook.


Sounds good colpitts, I can add you to the test group email me at.
Thank you!

1 Like

does this plugin have a name yet? even if for ‘dev purposes’

so we have a more descriptive title for topic…
note: we can rename later, if you decide to change to use a different project name at release.


Hi technobear,

Yes the plugin has a name now it is called Inter-Axis and beta testing on PC has started. I am getting together a MAC version, it will be ready this weekend or early next week.

It supports regular midi controllers and MPE controllers or a combination of both. Regular CC’s and per note expressions can be mixed and matched. Midi 2.0 is built in so when these devices arrive the plugin will be compatible with midi 2.0.

Controllers tested SeaBoard Block, Continuum Mini, QuNexus, Kboard, SensI, Joue, and Artiphon.

“per note XYZ pitch,bright,pressure” velocity, release velocity, and weighted BC is supported for source inputs. Synth/Filter/Model destinations respond to per note expression some single voice FX destinations do not support per note CC’s and use the last note pressed value if XYZ is chosen as a source.

Let me know if you have any questions thanks!


I did a side by side test with Surge and Inter-Axis is faster/smoother to respond to controller inputs. I run controller signals at audio sample rate so it makes it real snappy. The oscillator I have implemented has 130 or so coded wave forms that are super clean not wave-tables etc . The modeling features add a very organic character to the sound and overall I am pleased with the responsiveness and tonal character of the plugin.


Here is what I observed in Reaper rendering the same midi recording…

Inital preset MPE Inter-Axis

Baritonosaurus Saxus MPE Surge

1 Like

Hey, interesting. If you’re still looking for some feedback, I will be happy to do so when you have a Mac ARM build. I have a Sensel Morph and an Erae Touch, Congrats anyway


Sounds good philippe, I can add you to the test group email me at.
or find me and send a message on facebook
Thank you!

1 Like

I went to your website and checked out your plugs, honestly man, i know it sounds paradoxil but i know a couple forums that the audio software hackers release their software on that would be excellent places to go and get your plugs known…the hacker community for audio software is different - they loathe anyone that makes money off their software so while there are plenty of freeloaders, most of us buy the software we use before we go commercial with it. I call it fully operational extended demo and am actually weighing in on what I have to purchase in order to monetize now…Ive purchased all my plugs as a result of the extended demo as I can affrd, and actually in some cases if it hadnt have been for the said demo I would not have even purchased the software,
plus I always pass word of mouth when I find good software or in some cases such as your software which is reasonably priced and for a small company - ill argue against requests for cracked versions if a good demo is available as I strongly feel that people should in fact be paid for their labor…

that being said you dont have to release a cracked version or anything but that community is rather large and should you wish i can provide you with two that are very solid have a strong following and would give you a massive boost on exposure which would if they are as good as they appear to be provide a significant boost to revenue

1 Like

oh and when i get a chance id like to chat about a plug-in made for articulation of motion based midi instruments - seems like you might be the one to talk to

1 Like

crash report on apple m1 first gen current os,
segmentation 11 fault,attempt to access non-existant region looks like,

i put the relevant parts of the report below let me know if you need the full report.

Translated Report (Full Report Below)

Process: MidiDevise [47344]
Path: /Library/Caches/
Identifier: com.DavidsonAudio&Multimedia.MidiDevise
Version: 7.3.6 (f3836fc) (7.3.6)
Code Type: X86-64 (Translated)
Parent Process: launchd [1]
User ID: 666

Date/Time: 2023-08-07 19:12:35.4288 -0400
OS Version: macOS 13.1 (22C65)
Report Version: 12
Anonymous UUID: BE6687CA-6057-156B-FC17-263A52F0FF5F

Time Awake Since Boot: 770000 seconds

System Integrity Protection: disabled

Crashed Thread: 0 Dispatch queue:

Exception Codes: KERN_INVALID_ADDRESS at 0x00007ff8442772f7
Exception Codes: 0x0000000000000001, 0x00007ff8442772f7

Termination Reason: Namespace SIGNAL, Code 11 Segmentation fault: 11
Terminating Process: exc handler [47344]

VM Region Info: 0x7ff8442772f7 is not in any region. Bytes after previous region: 119141112 Bytes before following region: 384929033
mapped file 7ff83d0d6628-7ff83d0d8000 [ 6K] r-x/r-x SM=COW …t_id=38970bcb
—> GAP OF 0x1e0b8000 BYTES
__DATA_CONST 7ff85b190000-7ff85b192000 [ 8K] r–/rw- SM=COW …bobjc.A.dylib

Kernel Triage:
VM - pmap_enter retried due to resource shortage
VM - pmap_enter retried due to resource shortage
VM - pmap_enter retried due to resource shortage
VM - pmap_enter retried due to resource shortage
VM - pmap_enter retried due to resource shortage

Thread 0 Crashed:: Dispatch queue:
0 MidiDevise 0x10123cb32 juce::CoreGraphicsContext::gradientCallback(void*, double const*, double*) + 56
1 CoreGraphics 0x7ff8205a3de1 CGFunctionEvaluate + 224
2 CoreGraphics 0x7ff8205a3c5b function_evaluate + 318
3 CoreGraphics 0x7ff8205a3369 ripc_AcquireFunction + 845
4 CoreGraphics 0x7ff8205a2509 ripc_DrawShading + 6153
5 CoreGraphics 0x7ff820a836e7 CG::DisplayListExecutor::drawShading(CG::DisplayListEntryShading const*) + 533
6 CoreGraphics 0x7ff820b4581b CG::DisplayList::executeEntries(std::__1::__wrap_iter<std::__1::unique_ptr<CG::DisplayListEntry const, std::__1::default_delete<CG::DisplayListEntry const> >>, std::__1::__wrap_iter<std::__1::unique_ptr<CG::DisplayListEntry const, std::__1::default_delete<CG::DisplayListEntry const> >>, CGContextDelegate*, CGRenderingState*, CGGStack*, CGRect const*, __CFDictionary const*, bool) + 195
7 CoreGraphics 0x7ff82062f2e1 CG::DisplayList::execute(CGContextDelegate*, CGRenderingState*, CGGStack*, CGRect const*, CFDictionary const*) + 319
8 CoreGraphics 0x7ff82062f052 CGDisplayListDrawInContextDelegate + 632
9 QuartzCore 0x7ff823641220 CABackingStoreUpdate
+ 533
10 QuartzCore 0x7ff8236a48f1 invocation function for block in CA::Layer::display
() + 53
11 QuartzCore 0x7ff823640316 -[CALayer _display] + 2275
12 AppKit 0x7ff81e80a655 -[_NSBackingLayer display] + 462
13 AppKit 0x7ff81e7827ed -[_NSViewBackingLayer display] + 554
14 QuartzCore 0x7ff82363f2c8 CA::Layer::display_if_needed(CA::Transaction*) + 900
15 QuartzCore 0x7ff8237b88da CA::Context::commit_transaction(CA::Transaction*, double, double*) + 648
16 QuartzCore 0x7ff823620119 CA::Transaction::commit() + 725
17 AppKit 0x7ff81e81badf __62+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayLink]_block_invoke + 285
18 AppKit 0x7ff81f0339df ___NSRunLoopObserverCreateWithHandler_block_invoke + 41
20 CoreFoundation 0x7ff81b637319 __CFRunLoopDoObservers + 482
21 CoreFoundation 0x7ff81b636876 __CFRunLoopRun + 877
22 CoreFoundation 0x7ff81b635e8f CFRunLoopRunSpecific + 560
23 MidiDevise 0x101239d28 juce::MessageManager::runDispatchLoopUntil(int, bool) + 328
24 MidiDevise 0x101163632 juce::ModalComponentManager::runEventLoopForCurrentComponent() + 166
25 MidiDevise 0x1011a44a0 juce::PopupMenu::showMenu(juce::Rectangle const&, int, int, int, int, juce::Component*, juce::ModalComponentManager::Callback*) + 586
26 MidiDevise 0x1011a4722 juce::PopupMenu::showAt(juce::Rectangle const&, int, int, int, int, juce::ModalComponentManager::Callback*) + 30
27 MidiDevise 0x100f832a2 jpopupmenu_popup_nearbox + 122
28 umenu 0x1118776da jumenu_mousedown + 590
29 MidiDevise 0x100f2b6ac BoxComponent::sendMouseMessage(juce::MouseEvent const&, symbol*) + 158
30 MidiDevise 0x100f2bfde BoxComponent::mouseDown(juce::MouseEvent const&) + 1102
31 MidiDevise 0x10115eec5 juce::Component::internalMouseDown(juce::MouseInputSource&, juce::Point const&, juce::Time const&) + 661
32 MidiDevise 0x1011ab873 juce::MouseInputSourceInternal::sendMouseDown(juce::Component*, juce::Point const&, long long) + 79
33 MidiDevise 0x1011ab5b8 juce::MouseInputSourceInternal::setButtons(juce::Point const&, long long, juce::ModifierKeys const&) + 304
34 MidiDevise 0x1011aabeb juce::MouseInputSourceInternal::handleEvent(juce::ComponentPeer*, juce::Point const&, long long, juce::ModifierKeys const&) + 141
35 MidiDevise 0x1011aab4e juce::MouseInputSource::handleEvent(juce::ComponentPeer*, juce::Point const&, long long, juce::ModifierKeys const&) + 64
36 MidiDevise 0x1011af968 juce::ComponentPeer::handleMouseEvent(int, juce::Point const&, juce::ModifierKeys const&, long long) + 94
37 MidiDevise 0x10123457b juce::NSViewComponentPeer::sendMouseEvent(NSEvent*) + 121
38 MidiDevise 0x1012346a6 juce::NSViewComponentPeer::redirectMouseDown(NSEvent*) + 118
39 AppKit 0x7ff81e8ab642 -[NSWindow(NSEventRouting) _handleMouseDownEvent:isDelayedEvent:] + 4283
40 AppKit 0x7ff81e8216ae -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 2595
41 AppKit 0x7ff81e820a6f -[NSWindow(NSEventRouting) sendEvent:] + 345
42 AppKit 0x7ff81e81edde -[NSApplication(NSEvent) sendEvent:] + 358
43 AppKit 0x7ff81eadd885 -[NSApplication _handleEvent:] + 65
44 AppKit 0x7ff81e6ae41c -[NSApplication run] + 623
45 MidiDevise 0x101239890 juce::MessageManager::runDispatchLoop() + 80
46 MidiDevise 0x101108a77 juce::JUCEApplication::main(juce::StringArray const&) + 59
47 MidiDevise 0x101108b8e juce::JUCEApplication::main(int, char const**) + 68
48 MidiDevise 0x100e13a54 start + 52

Thread 1::
0 runtime 0x7ff7ffcad614 0x7ff7ffca9000 + 17940
1 runtime 0x7ff7ffcb9530 0x7ff7ffca9000 + 66864
2 runtime 0x7ff7ffcbaf30 0x7ff7ffca9000 + 73520

1 Like

Thank you for the warning about cracked software. I am not too worried about it, I focus of the users and try not to worry to much about if stuff gets cracked. My demos are unrestricted only sound burst every minute or so. I don’t spend a lot of time trying to fight it but there is a activation system to help combat pirating. I am small developer and I find that people that want to support it do. I like to make the cost low enough to make is easy.

Midi Device is nearing the 8 year mark and is soon to be discontinued for the lack of interest in it. It mostly works with breath controller and keyboard, but is not real popular and is out of date for MAC arm support I think only intel mac is supported. It is really one of my favorite apps as is coordinates midi controllers particularly breath and keyboard controllers.

The plugins are supported on MAC arm processors and more of my focus is going there as they are more popular. I am interested in all kinds of instruments and have seen some motion based instruments like the digi brass trumpet with tilt feature. For the sake of the thread Inter-Axis beta lets try to stay on topic, if you need direct support or something email me directly as not muck up the forum thread.

1 Like

Some progress on Inter-Axis MAC version coming soon and features are expanding. There are a couple people testing and I am happy that 5 axis integration has been achieved and is working good on PC. One of my favorite features is the glide lock. It is fun to play so I am motivated to get further make some presets.


Inter-Axis Beta is going great! Really fun new features/articulations have been discovered and I have added an arp/seq that is a joy to play. Overall testing is going smoothly and I am getting a fair amount of positive feedback and it appears most all MPE controllers are supported.

Arp/Seq section.