PLUGIN AUTHORS: Help migrating existing plugins to Rack v1

I did a lot of PRs for open source plugins for 0.5 -to-0.6 myself and the changes were not as significant as the 1.0 changes in terms of amount of work especially.

I see anything pre-1.0 as at most beta state of the API. Per Andrew’s comments, with 1.0 the API is stable and developers can expect it to change far less frequent and with far less impact than it did up until now. The fact that even in beta state Rack took off like it did was probably not expected.

In the end, developers that care about the platform will update their modules and for those that don’t there is the option of others taking on maintenance and development if the plugin is open-source.

1 Like

And that’s unpaid work, right? All the more appreciated. :+1:

But “no benefit”? Keep in mind that v1.0 enabled me (and possibly many other people) to use many plugins for the first time. Only after v1.0 I could run a meaningful number of plugins with good performances, without constant dropouts and clicks. I wasn’t able to even try many of the existing plugins before v1.0.

2 Likes

@Skrylar meant no benefit for the plugin developer and for the functioning of the plugin itself.

@mixer, what you are talking about is benefit for the user, and in fact the benefit of running more plugins with better performance comes from the improvements of the engine in rack version 1, not from the porting of plugins to the v1 API.

2 Likes

i am working on porting aepelzen’s modules (which were abandoned a long time ago) to version 1, and implementing a redesign of the graphics by @pyer. i am pretty much a noob developer, tho i have some experience as a package maintainer in the past with gentoo linux, so i am not unfamiliar with the tools.

i have successfully ported the burst module, but ran into an issue with the folder module. in the right-click menu there is an option for an alternative folding algo, but clicking it results in nothing or in rack crashing. i am probably overlooking something simple, but i have not been able to track it down.

can anyone lend a hand? the code is at https://github.com/wiqid/repelzen/blob/v1/src/folder.cpp

5 Likes

I don’t see module of FolderMenuItem anywhere set?

thanks! got it.

Oh, these panel designs look amazing, great work @pyer, again!

1 Like

Yea, if you forget a setModule call you get a crash. And don’t expect gdb to explain why either. The stack trace will just show a death deep in Rack with no mention of your plugin :thinking:

There really should be an assertion and “this plugin is broken” pop-up for that.

1 Like

I just opened a pull request on Github to update the StochKit modules:

Waiting for the owner to (hopefully) get back to me…

4 Likes

i’ve started implementing polyphony in the repelzen modules, starting with refold. i would like to implement the “advanced” simd optimization, but i’m a bit out of my depth here. where do i need to add float_4, where [c / 4], and where not? if someone wants to lend a hand, i would be much obliged: https://github.com/wiqid/repelzen/blob/master/src/folder.cpp

(i’m also considering dropping the alternative mode, since it doesn’t seem to make a difference.)

float_4 is a vector of 4 floats. If you want to support up to 16 channels, you need an array of 4 float_4s. See How polyphonic cables will work in Rack v1 for more information.

the PR was merged :slight_smile:

1 Like

i had found that, and that was my starting point. i have also found a couple of examples of how it was done in open source modules (tho to my surprise i also saw quite a few who didn’t use the advanced method), since that is the way i learn best. but i am too much of a noob… i guess i’ll need to keep trying, and study more c++, until i figure it out.

Hello all, the author of the fine PvC plugin just announced that he will try to port his plugin to v1.
Maybe someone could assist and help him if he needs help?

2 Likes

Hi, I could use some help with porting the plugin I’ve developed for Rack v0.6.2c. It is a single plugin called Vocode-O-Matic (which you will find under the name Sculpt-O-Sound), so that should not be too much work to convert.
I’ve managed to create a working copy for v0.6.2c by looking at example code but since I’m not really fluent in C++ I have difficulties in understanding the changes needed for v1.x. I tried to follow the migration steps but am running into troubles after that (see branch here: https://github.com/josbouten/Sculpt-O-Sound/tree/v0.6_to_v1.1). Possibly it is best to start again but with the guidance of someone more experienced in C++. Can anybody help?

Hello rackeadz!
The long lethargy had made me forgot I made a small plugin for the 0.6.2 VCV version. Nothing too big, just a collection of panels inspired by the sacred art of 8 bit games!
Here there is the repo on GitHub --> https://github.com/The-Great-Assyr/Chiptuner-0.6.2

Now, I would like to update them to the latest version of VCV and, finally, put them on the official repository but being all but a programmer I have found some difficulties in the upgrade process.

Again, I have the subtle suspect I am missing something “small but essential”.

Can someone point me out some documents to fill my numerous gaps of ignorance about?

I am still searching but maybe someone has come across this thing before me and can point the right path…

Thanks in advance! :smiley:

How far did you get in the migration process?

Well, I didn’t even started.
I read THIS and honestly I understood less than 5% of what was written there so very likely I will ask for someone for help and… Well…

Do the migration job for me or something like that because really… It is like an obscure lingo to me! :frowning:

I mean, maybe I could do it but very likely it will take eons.

Hello there!
I badly need a help for the migration of my plugin… :frowning:
It’s just a collection of panels, nothing active but I am not a programmer and when I read the steps for manually migrating the plugins I totally got lost so…

My GitHub is HERE (sorry if this post is eventually redundant).

I hope I will be able to expand, eventually, the panels in the future… But for the moment it is more important to update them and hopefully to include them in the official VCV repository

Thanks a lot! :grinning:

1 Like

I’ll do it.

4 Likes