LV2 plug ins (Jupiter 8/MT-32)

Hi, wondering if TAL’s superb J8 or similar (I saw the Bristol engine still seems to have some interest) could be LV2 ported to work on Zynthian? The OBX engine proves that something that complex could work esp. on a PI4. Also the MUNT MT-32 (aka a D110) would be a superb addition… again, any thoughts?

Tal j8 seems to be a commercial vst?

Without source code or a precompiled lv2 binary for raspberry pi, it’s really not possible.

There is probably another plugin that can do similar though.

1 Like

Indeed, the oscillator structure of the Jupiter 8 has been cloned by Arturia/TAL and obviously Roland with their cloud system, so it must be possible

Bristol was discussed in this thread :-

I suspected Bristol would not be so good, but the Disco DSP OBXD really does deliver on a very good emulation, for a synth architecture not dissimilar to the Jupiter 9 (meaning that a JUNO 60/106/JX3P etc should be easier still)

If you can find an open source Jupiter 9 lv2, or write one, we could try and implement on raspberry pi / zynthian.

This may be a useful starting point

K Brown Synth Plugins - Home (weebly.com)

Says “windows only” so I’m not sure how.

As it was a “free” project I was hoping the DSP code would be usable as a starting point perhaps

Also TAL have already got a Linux version of their Juno 60 emulator (again free), so maybe some arm twisting for an LV2 port

TAL Software (tal-software.com)

Raspberry Pi’s have a totally different CPU architecture to Intel & AMD processors. Listing different free windows plugins is the equivalent to buying petrol (or gas if you are American) for a Tesla. You can try and shove it in there but you’re just going to get a smelly, more flammable, car that still doesn’t go. If there is no source code available they’re pretty useless.

TAL have made it pretty clear they’re not releasing source code any more.

1 Like

You could try the Noize Mak3r plugin in zynthian. The original code is from TAL, it can sound very like Juno 6 and has more opportunities.

1 Like

I have, and this is the point w.r.t. Baggypants. DSP code is very easy to port over (I worked at Yamaha R&D for 20 years), and whilst the underlying architecture I agree fully is more complex, if you have an engine in place (TAL or DiscoDSP) then the task becomes that much easier. Agreed, it’s no walk in the park, but just saying.

1 Like

If DSP is easy to port, we look forward to seeing your results :slight_smile:

Zynthian is an open source environment and community, and while we are keen to add features and plugins, we are often not best placed to develop them ourselves fully.

That said, we do welcome experts like yourself, who have a better understanding from previous developments. If you do work on or find something you think we might be able to compile up and test, let us know.

I was a test engineer at Yamaha R&D and sound designer, not an embedded dev, and a DSP algo is a DSP algo is all I was saying… but yes, the underlying code is very different. My thinking was as TAL already have implemented a very good multi oscialltor synth engine in noisemaker, maybe a JP8 style retweak would not be as complex as a ground up write

Zynthian is mostly glue sticking together audio and MIDI processors and generators, e.g. synths. (I may undersell it a little but we do stand on the shoulders of giants.) There are a lot of very good synth engines already included and some less good ones too. I am trying to weed out the weak to reduce the confusion for users, i.e. why have 12 reverbs when only 2 of them are any good? We often get asked if we can add a new module and previously, if that module can be made to work on Zynthian it has been added but we need to apply a bit more quality control, i.e. only add stuff that has tangible benefit, e.g. does something different or better. You may tweak the interest of lurking DSP developers who may want to collaborate on something new but it won’t make it back into Zynthian until it is fully developed and tested as working reliably on the Zynthian platform.

As mentioned above, there are similar synth engines in Zynthian and the engineering effort here is focused on making Zynthian better rather than creating new sound modules. (Not to say that some of us don’t do that but we may contribute as upstream developers.)

6 Likes

Excellent post riban, and agreed… superb effort by all to get this far

3 Likes

Hi @howesnickhowes,

many thanks for the Links to some really nice plugins! Especuially the TAL JUNO60 is nice (inside my Windows-DAW).

I learned much about synth plugins while porting Dexed from a JUCE based application to a LV2 plugin. In fact you have to extract “only” the DSP related things from the code. With Dexed, the source code was not really written for a real DSP, so it was still relatively simple. But if you don’t have the source code, you’re screwed. Even a BLOB with the DSP code is useless, because it wouldn’t be binary compatible for the Zynthian. But even DSP source code is IMHO often written in assembler and then only for the instruction set of exactly this DSP.

The next thing is that you need a common framework which can use the functions of the synth, like note-on/off, setting/getting parameters, getting generated audio blocks, …

Currently there are two common “frameworks”: VST(2/3) and LV2. The last one is an open source framework which much free/open audio plugins are using, so it is used with Zynthian and was my favorite framework for Dexed.

For VST2/3 there is a SDK available from Steinberg, so it is possible to use plugins on other architectures (like on the Raspi), but for this

  1. the plugins has to be compiled for the Raspi (ARM)
  2. an appropriate pluginshost for the Raspi must be used

There are pluginshosts for (x86-)Linux which can load VSTs for Windows using the WINE emulator, but for ARM-Linux (=Raspian) I don’t know that this would work.

It would be ideal if the manufacturers would offer LV2 plugins for ARM - or the source code. Then one has a possibility to run these plugins also on the Zynthian. BTW: Modartt does the same with Pianoteq: You get a binary ARM LV2 plugin or at least an binary ARM plugin that can connect to the Jack audio interface.

Regards, Holger

3 Likes

Holger, thank you for your succinct and very thoughtful and excellent reply, and of course you’re correct.

1 Like