-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ladspa++ #282
Comments
Nice work :) I dont know though if it should wait until after 1.0.0 release On Sunday, February 09, 2014 12:21:46 AM JohannesLorenz wrote:
|
I'm not really sure what we'd be trying to accomplish with this. Is the purpose to make this an actual standard that other projects would follow as well? Most of the rest of Linux Audio apart from LMMS and Audacity seem to have mostly moved beyond LADSPA, for better or worse, and anyone wanting to do effects with graphical GUIs is probably going to use LV2 or LinuxVST. So I'm not sure how easy it would be to gather support for this standard from other Linux Audio projects or LADSPA plugin developers. If we're only looking to do this for the benefit of LMMS, then it raises the question... why not just use the LMMS native plugin framework? It allows whatever graphical widgets you want, can be extended in any way you like, and is capable of anything LADSPA is. I'm not saying it's a bad idea necessarily, but it needs some clarification, as to what exactly are we trying to do here? |
I don't think this should be restricted to lmms. My idea was to make this What would be an advantage that a plugin knows that it is connected to lmms? |
On 02/09/2014 11:07 AM, JohannesLorenz wrote:
Completely independent of a GUI, in what way? We define a set of widgets So I really don't see this as likely to catch on in the community. Of Otherwise, it'd just be another plugin format supported by LMMS only, |
I vote for LV2. |
I also think we should not waste time by trying to improve deprecated technologies, even though the intention is good. It would be optimal to invest that time into implementing proper LV2 support (some basics are done in the old-master branch but it was nothing usable). If support for Linux VST plugins works with our reverse engineered header, it would be an option as well (I'd not go for VST support which would depend on the proprietary VST SDK). The best of course is to develop native LMMS plugins ;-) This allows to make use of all components and models/views in LMMS so the plugin integrates well into LMMS. A generic plugin framework which just provides information about the controls will always result in a poor UI - the current LADSPA plugins are just a bunch of knobs and LEDs which isn't very user friendly and looks ugly compared to what is possible with native or VST plugins. |
On 02/09/2014 07:21 PM, Tobias Doerffel wrote:
For LinuxVST, maybe we should take a look at how Qtractor implements I think LinuxVST support would be a great idea, as we already support |
It would be great to get rid of any external plugins such as vst's. It woudl On Sunday, February 09, 2014 09:21:45 AM Tobias Doerffel wrote:
|
On 02/09/2014 07:31 PM, eagles051387 wrote:
Why would we need to get rid of VST's or other external plugins? |
That came out wrong. Maybe windows based VST support should go. It seems like On Sunday, February 09, 2014 09:34:32 AM Vesa V wrote:
|
On 02/09/2014 07:39 PM, eagles051387 wrote:
One bug report is "lots of problems"? Why remove functionality? It's an optional feature anyway, that can be We shouldn't remove anything we already have working, especially |
I don't think we will ever discuss the removal of VST support as it got quite mature and advanced over the years. It's not our fault if the interaction between WINE/Qt gets broken due to an improper XEMBED implementation inside Qt and a change in the developer version (!) of WINE. There never has been a problem if you're using stable versions of WINE. |
The current issue of vst's bug 573 on sourceforge I think we need to bump the Their ppa though doesnt have a package available, but the person compiled wine On Sunday, February 09, 2014 09:45:33 AM Vesa V wrote:
|
The problem will be gone soon automatically so IMHO we should not make too much noise about it. Also it'd be a bad idea to depend on version >= 1.7.2 as there's no reason to exclude stable and well-proven versions like 1.4.x and 1.6.x. Again: if people are using a development version of WINE, they have to do it on their own risk. |
Here's Qtractor's VST code for comparison https://sourceforge.net/p/qtractor/code/HEAD/tree/trunk/src/qtractorVstPlugin.cpp They also have this file, which seems to contain code lifted straight https://sourceforge.net/p/qtractor/code/HEAD/tree/trunk/src/vestige/aeffectx.h So maybe this means we could look at these files to figure out how to |
I've bee looking at LV2, but it does not really convince me:
Are you guys really sure that LV2 is designed well? Have you really looked [1] Amplifier example: http://lv2plug.in/repo/trunk/plugins/eg01-amp.lv2/ |
Johannes you could actually work on porting it to c/c++ if you are versed On Wed, Feb 12, 2014 at 1:48 PM, JohannesLorenz notifications@github.comwrote:
Jonathan Aquilina |
I personally feel this is all a waste of time at this point. LV2 plugins need a real-time safe host anyway, which is half the reason I sparked the Unison effort forever ago. I hate to see people spinning their wheels on things like this. eagles051387 notifications@github.com wrote:
|
In that case coudl this spur off the integration efforts of unison? On Wed, Feb 12, 2014 at 3:00 PM, Paul Giblock notifications@github.comwrote:
Jonathan Aquilina |
On 02/12/2014 02:48 PM, JohannesLorenz wrote:
There's always LinuxVST, which would be easy to implement support for |
Unison has to get done at some point though On Wed, Feb 12, 2014 at 3:25 PM, Vesa V notifications@github.com wrote:
Jonathan Aquilina |
On 02/12/2014 05:18 PM, eagles051387 wrote:
Well yes but is anyone working on it yet? I'm not even sure what all needs to be changed/updated to make LMMS Meanwhile, LinuxVST support would be easier to implement, and would |
From what Paul and I spoke about alot of rewriting. Integration of unison On Wed, Feb 12, 2014 at 5:18 PM, Vesa V notifications@github.com wrote:
Jonathan Aquilina |
On 2/12/14, 11:18 AM, Vesa V wrote:
A hell of a lot, that is why I am starting with the engine, then moving
Yeah, I don't think Ladspa++ would offer much at this point. -- Paul
|
To help with this could you submit bugs to the tracker that people can pick On Wed, Feb 12, 2014 at 5:29 PM, Paul Giblock notifications@github.comwrote:
Jonathan Aquilina |
On 2/12/14, 11:18 AM, Vesa V wrote:
I realize that Unison had stalled out. I'm working on revamping it. As |
On 02/12/2014 06:29 PM, Paul Giblock wrote:
What about existing plugins, instruments, new fx mixer, etc.? Will these |
Paul Wouldnt it be best to integrate and fix as things progress? On Wed, Feb 12, 2014 at 5:32 PM, Vesa V notifications@github.com wrote:
Jonathan Aquilina |
What do you mean? I'm not sure we are using the same definition of -- Paul On 2/12/14, 11:34 AM, eagles051387 wrote:
|
Lets say Vesa mentioned the Fx mixer. Since that has been changed why not On Wed, Feb 12, 2014 at 5:36 PM, Paul Giblock notifications@github.comwrote:
Jonathan Aquilina |
New FX Mixer? I could care less about that. The FX Mixer will be so Or, are you referring to the Mixer graphical overhaul? Sure, I'd be Regarding instruments and stuff -- no, they are not immediately -- Paul On 2/12/14, 11:32 AM, Vesa V wrote:
|
Is that something that can be sorted as first thing and top priority at On Wed, Feb 12, 2014 at 5:40 PM, Paul Giblock notifications@github.comwrote:
Jonathan Aquilina |
On 02/12/2014 06:40 PM, Paul Giblock wrote:
So this means that all the instruments and native effect plugins would Would we still retain all the functionality LMMS offers right now in I admit I have a bit of self-interest in mind here, as I've just written |
Right, and I want to know: What do you think integrating the mixer into Integrating the GUI makes sense, but only to a limited degree. My view Maybe I'm an outlier here, but my goal isn't to pull in all the problems Honestly: I don't care if I have absolutely zero support from others for That being said: I really appreciate the effort everyone has put into -- Paul On 2/12/14, 11:39 AM, eagles051387 wrote:
|
I agree that unless we make the move maintenance is going to become an Vesa do you think you could help him out in terms of getting things sorted? On Wed, Feb 12, 2014 at 5:49 PM, Paul Giblock notifications@github.comwrote:
Jonathan Aquilina |
"Re-written from scratch" is a bit harsh. From what I see, the juicy On 2/12/14, 11:45 AM, Vesa V wrote:
|
On 02/12/2014 06:55 PM, Paul Giblock wrote:
Ok, I assume the same applies to effect plugins... Just one more question then, is there anything that could be done to |
Paul let me suggest this. I would fork the current lmms repo and then On Wed, Feb 12, 2014 at 6:13 PM, Vesa V notifications@github.com wrote:
Jonathan Aquilina |
Am Mittwoch, 12. Februar 2014, 06:00:13 schrieb Paul Giblock:
Sorry - my English is very bad. What do you mean by this? That developping |
LinuxVST has been mentioned multiple times in this thread, as if it was an but I did not see anything that looked similar to ladspa. They just say that So what do you guys mean by LinuxVST, and how far is it an alternative to any |
On 02/13/2014 08:50 PM, JohannesLorenz wrote:
LinuxVST is the same as VST, except it's native for Linux. We can pretty Why would it have to be similar to LADSPA? It supports everything regular VST's does: GUIs, instruments, tempo |
It does not seem to be very free: "Because of license restrictions you need to get your own copy of the VST Despite that I can not find the header files there I would not suggest to |
On 02/14/2014 10:06 AM, JohannesLorenz wrote:
Well firstly, we already support VST via wine, so adding support to Also, there are reverse-engineered open source alternatives to the As for developing our own standard, why? We already have our own |
The main reason for me is the code size of native plugins. You need 6 files Right now I have ~ 100 effects in my plugin browser, almost all LADSPA. We'd Of course, we'd have graphics for all of them, then. But I really do not need |
On 02/14/2014 10:34 AM, JohannesLorenz wrote:
You don't actually need 6 files, you can just put everything in one if And regardless of the amount of code - it's not that much work. What I Source bloat? Why do you even worry about that? Text files don't take There's no need to convert existing LADSPA plugins to native LMMS |
I can only back diizy. As the native plugins are more powerful and provide a UI, they are of course a little bit more complex. Instead of putting and mixing all things together, we have a strict separation of model, view and actual DSP processing. This is state of the art |
I can only back diizy. As the native plugins are more powerful and provide a UI, they are of course a little bit more complex. Instead of putting and mixing all things together, we have a strict separation of model, view and actual DSP processing. This is state of the art |
In software engineering. If you only want to wire together data models and DSP code, LADSPA should be für. |
Fine. Wah, mobile devices can suck... ;-) |
There has been a long discussion and most people disagreed. However, if I'll ladspa++.h is right now a one-header-project. It is a C++ wrapper for ladspa,
I know it sounds to you like a waste of time, but if it's so much fun for me, Am Sonntag, 9. Februar 2014, 09:21:46 schrieb Tobias Doerffel:
|
On 04/05/2014 09:35 PM, JohannesLorenz wrote:
Doesn't DSSI basically already do all of this which you wish to achieve Writing a host for DSSI for LMMS might actually get DSSI some more Take a look at the spec here, is there anything DSSI lacks that LADSPA++ Apart from that... Problem with your LADSPA++ is, it's not as simple as I'm not trying to rain on your parade, but it's just that if no one else I've said it before, but IMHO, the only way this LADSPA++ thing makes |
Enough of a reason: DSSI is written in C. Despite from that, what do I need MIDI or OSC for if I just want to write a |
On 04/06/2014 12:54 AM, JohannesLorenz wrote:
So is LADSPA. Nothing says that you can't write DSSI plugins in C++, or Plus it's an already established plugin format, so there's plenty of
Counter-question: what do you need LADSPA++ for if you just want to If you need something more sophisticated than LADSPA, you can write My native LMMS amplifier's DSP portion is around 40-50 lines (could be |
Everyone has his/her arguments, and there are enough reasons to justify either I do not mean it bad, but this discussion leeds to nothing (else than flame |
On 04/06/2014 01:32 AM, JohannesLorenz wrote:
Why not try writing a native LMMS plugin? I think you'd be pleasantly |
I think the point that Vesa is making with ldasp++ you are kind of I think a very valid question here is this. Dose DSSI that was discussed On Sun, Apr 6, 2014 at 12:40 AM, Vesa V notifications@github.com wrote:
Jonathan Aquilina |
I fully support Vesa here. I won't stop anybody to develop something but I'm sure, we'll not include it as long as it's not a widely supported standard with many available plugins which would make it worth to support it. Otherwise it's just another kind of LMMS-specific plugin standard which is something, we absolutely don't need. The current plugin infrastructure is fine and allows providing LMMS' functionality to plugins (like (sample-exact) controllers, automation etc.) without any additional effort - look at LadspaControl & co to see what kind of inconvenient wrappers need to be built around every LADSPA(++) control in order to support it - completely unneccessary overhead (RAM, CPU, code complexity) if one could have all that native instead. If you have fun, go ahead but please don't expect any support from our side. I think your work on Qt-ZASF is a lot more appreciated by everybody out there! ;-) |
On 04/06/2014 10:41 PM, Tobias Doerffel wrote:
I second this. I didn't even know about it, but Qt-ZASF sounds like a |
I have been developing this the last weeks, and it is almost finished. It is a C++ wrapper for LADSPA which will make
For an example: I have appended links to an old style amplifier [1] and a ladspa++ version of the same plugin [2]. You'll see that the new code is 6 times shorter.
But this is not all. LADSPA misses some things imo:
How to implement this without changing anything about ladspa?
What do you think? Should we do the extensions?
[1] http://pastebin.com/RKmbS3xB (old style LADSPA plugin)
[2] https://github.com/JohannesLorenz/ladspa--/blob/master/test_effect.cpp (new ladspa++ plugin)
The text was updated successfully, but these errors were encountered: