Linux Instruments For Renoise

Does anyone know if the Lua scripting in 2.6 will support coding native synths? That would kind of solve the problem for us Linux people.

And yes, Wine probably works, but at least for me getting rid of Wine (for running Reaper e.g.) is one of the main reasons to try Renoise right now.

fladd

The answer to that has been given as an almost definite not so I wouldn’t hold your breath. I would look more at future refinements of Renoise’s XRNI structure.

Too bad! Under Linux you really have to have everything in the box. There are no real VSTi out there and using external synths is a strange workflow. I was thinking about buying Renoise for making some stuff on my netbook, but I am still in doubt whether Renoise will really help me there. I also already own XT2.

Who gave the answer to the native synths Lua question already? And what was it? They said it is not possible? I read somewhere else, that the Lua scripting will go quite far and that you can even make GUIs. I hope it doesn’t stop there. I was also very happy when Reaper got Python scripting, but it also does not go far enough for me.

fladd

Well we have been told we will not be able to make DSPs and access to sample level will not be provided. From that I am thinking it sounds unlikely you will be able to do a native synth.

A surprising amount can already be done with basic waveforms and Renoise’s native DSP and other sample effects. Scripting may enable it so you can enter multiple notes from a single entry, making it easier if you have detuned waveforms/different envelopes so you don’t need to put multiple entries yourself but I don’t see it giving deep enough access for a full-blown synth.

Exactly. Very unlikely.

For now using VST works just fine, doesn’t? This way you can also create synths that are not just for Renoise…

Wow, no DSP, no access to sample level. Seems that the scripting will not be as cool as everyone thought. (I read in some review that it might enable users to do more stuff than Max for Live does, but apparently this will not be the case at all).

Well, yes, it is true that a lot can be done with simple waveforms and the sampler. But not everything. A real synth with wavetable synthesis, several oscillators, arpeggiator, unison. Also, for brief sounds the sampler works quite well, but for longer ones, like strings or pads, it doesn’t.

I just hate having a Windows around, just to make some music!!!

You do realize though that the topic of this thread is about the absence of VSTi on Linux, right? :slight_smile:

fladd

Yes, but the problem seems to be that there are very few “choose any plugin architecture here” for Linux in general?
Adding LV2 support, DSSI or doing this with Renoise internal scripts, would not change this.

As it hasn’t been mentioned yet: I’m hacking on a VSTi softsynth for Linux from time to time. (Native VSTi, no Wine required!) Current version is 0.2, you can download binaries+source at http://tumbetoene.tuxfamily.org/ . I’m developing other plugins too, so I’d recommend you subscribe the low-volume RSS/Atom feed to be notified when something is released.

The real problem with VST on Linux is the license. The VST SDK license prohibits redistributing it, while the GPL, which is commonly used on Linux, requires that all source code for any GPL-ed program is made available without restriction. This makes the VST SDK a pain to use together with open source software.

Some kind of workaround would be to reverse engineer the VST interface and create something that’s open source and binary-compatible. The VST SDK forbids reverse engineering, but if we don’t use the SDK, we don’t have to agree to its terms, so as far as I can tell, such a reverse-engineered VST-ish thing would be legal. It has been done for the host side already (search for Vestige), but so far, I haven’t found anyone who would join me in creating the plugin part.

Looks nice! Good to see people working on Linux instruments.

About the licensing: Yes, that is probplematic of course. You could, instead of GPL, use a less restrictive Open Source license. Or make your own license :slight_smile:

fladd

The Loomer synths linked above work great in Linux as does DiscoDSP’s Discovery. They’re fairly straightforward synths but you can do a lot with them.

I also don’t find the workflow with external synths in Renoise that strange. I just record patterns as loops the same way I would in Live.

I was testing your synth today, and immediately ran into the problem of it steeling focus and thus preventing me from playing it with the keyboard.

fladd

Still not sure about this, I could imagine a native version being better adopted by users than having to deal with Steinberg SDKs. Also, internal synths/scripts could be distributed with the songs! VSTi cannot.

Yes, that is true, but again, one big problem here is the Steinberg SDK (the problem is a different one though, as mentioned by sk123). LV2 or DSSI support would help here I think!

fladd

Yes, the VST SDK license issues are indeed a problem.

We are taking a look into DSSI now. LV2 unfortunately puzzles us with some technical problems (this turtle RDF stuff adds a lot of dependencies).
DSSI seems not to be that popular compared to LV2, but it still would useful to have for a start?

DSSI would be useful. There’s a small number of interesting synths, and the calf instruments are also available in DSSI.

Yes, at least it’s got my vote, provided that the implementation is not too complicated and doesn’t add too much bloat.

Wouldn’t a waveform generator (sine, square, triangle, pulse etc) available in Renoises Track dsp tab be a solution for Linux users?

Have it controllable with the keyboard through a vst fx alias in the ‘vst instrument properties’ selection window. This way users can create their own additive/subtractive instrument chains with lfo’s, filters and what not.

A more powerfull instrument editor then we currently have, would omit the need for a native wavetable’esque synth, maybe?

@ jonas…something a bit like quikquak’s glass viper? this is a good idea.

Well, yes, that would give us a monophonic synth at least.

fladd

Oh, this is the ideal moment for a shameless plug!! B)

I’ve been working on a simple monophonic synth for Linux. It’s available now:
http://soledadpenades.com/projects/sorollet/

Right now it’s got sine, triangle, square and saw generators. Two oscillators (but monophonic!) can be combined (added, multiplied, divided!). It’s also got a noise generator. And envelopes.

Here’s a sample song:

I have compiled a version for x86, 32bit, which is what Renoise is compiled against (the 64 bit version wouldn’t work with Renoise). It’s available in the downloads page:

The source is here just in case you want to hack it or improve it (shouldn’t be too complicated, since it’s super basic!!):

I would love some feedback, but make sure to read the ‘to do’ list to know what I have already on mind! :w00t:

Ok… done with the plug! :D

Hope you like the synth ^_^

The VST does get focus when you open the editor. If you want to play it with the keyboard, you can click on the Renoise window after opening the editor. Does that help?

I thought grabbing focus is the expected behavior when you open a new window, but I see it could be kind of annoying. Are there other synth plugins that do this differently?

@supersole: Nice stuff. I like the demo song :D
I read you’re doing additive synthesis… I’m currently just generating naive tri/saw/square waveforms, with lots of aliasing of course (which doesn’t matter that much when I run it through the heavy bandpass filtering)… Thinking about using MinBLEPs or oversampling later.
Have you checked JUCE for the GUI? Quite a nice library, supports VST, is cross-platform, GPL, can be used to create VST + standalone app from the same code…

Oh, and about your VST SDK patch: You can just do something like

  
#if defined(__GNUC__)  
 #define __cdecl  
#endif  
  

before including the VST headers. Then you won’t need the patch.