Plugin with file browser

Been a while since I could find much time for Mod Devices plugin I wanted to write, but current contract comes to an end and the end of the year so 2023, at least the start of it, will mean more time. I’ll have a few weeks off to get to grips with things. Could even do a weeks holiday in Berlin, if anyone in mod devices fancied a beverage…

I have a lot of work done, writing on a laptop and running my code there, but should be able to port without much issue. Quicker testing the guts of the functionality on the laptop.

So what does the plugin aim to do?

The plugin is aimed at interactively playing a backing track which is specified in a file. So for example I might have a file that contains a 12 bar blues in the key of E. The file specifies the notes going to different MIDI channels, so I can send channel 10 to a drum synth, channel 1 to a Piano synth and channel 11 to a Bass. So in a sense it’s like a plain old backing track but it’s interactive. That means is that if I’m learning the Bass part I can increase the volume of the Bass whilst I’m learning it and then when I’m comfortable with it I can decrease the volume of the Bass part and play along with the Drums and Piano. Alternatively if I was learning the Drums I could adjust the volume of that channel.

Because this is MIDI we could transpose the key so the file specifying the ‘12 Bar Blues in the Key of E’ could be read and then transposed to the Key of F, up a semi-tone. So I’ve learned that piece in E but now master it in F. Not a great deal of use for the drummer but for the rest of us possibly useful.

And of course since this is MIDI the tempo of the playback is interactive as well, so practice the 12 bar blues in E at 70bpm until you’re comfortable and then increase the tempo to 80bpm and see how you get on.

Additionally because it’s interactive you could loop various parts of a tune. Say for example you have a tune with two parts A & B, you could simple constantly loop the A part until you’re happy with it, hit a foot switch, (space bar in the case of my laptop) and move on to the B part of the tune to practice that. Once you’ve mastered the B part you can hit the foot switch again and have the two parts A & B playing sequentially as they would be played.

I think that’s it at the moment. I have most of it working on my laptop but started a rewrite a few weeks back, I wasn’t happy with the structure of the code, so still have to finish off all the features again.

So back to the topic of the question. In a previous iteration I’d compiled this plugin for the mod dwarf and was hard coding the file to open into the code. That worked great in terms of the functionality, but it’s not ideal if I wanted to change from the 12 bar blues file to the ABAB file and have to recompile and install the plugin again. So have to get into the GUI parts of plugins, which I dread. Where to start with that?

So all of that is not what Mod Dwarf was created for, but it might be a useful feature for people learning an even for Performance. If I’d a file that contained various parts for synths that could be external to the Mod Dwarf or the Mod DuoX have Mod device sequence the various synths and I play away.

Sorry sprawling message, but though I might throw it out there. Thanks for taking the time…



Great! I would love to have some backing track plug-ins…

Perhaps you can have a look to this backing drum plugin, I think it is facing similar functionalities…


For dealing with files you want to go into LV2 path parameters, eg-sampler is an example plugin from the LV2 codebase.
If using DPF, files can just be defined as a state with a special hint, for which DPF does the work behind the scenes.

On MOD side, we plan to have plugin-specific/dedicated folders for them to have their specific files.
Working with the file manager just like all other files.
We will add these plugin-specific folders on request, as new plugins come along.


Brilliant Idea! I’m trying to replace my ableton liveset with hardware devices and this could be super interesting for storing midi data that goes to my synthesizers, when playing live.

One crucial feature forwould be the ability to add cue points, to trigger specific moments in the song, also to loop portions on the fly is great. I think this feature might be usefull for practicing as well.

I’m playing a liveset at Kater Blau (Heinz Hopper Floor, 3-4:30 PM), pm me if you want a Guest list. Most likely my Dwarf will be on stage too :wink:


Thanks for that one @Blindsmyth I’m considering how I’d to this. Still finalising a rewrite but that’s an interesting idea.