From: SourceForge.net <no...@so...> - 2012-04-10 02:19:11
|
Feature Requests item #3515971, was opened at 2012-04-08 18:12 Message generated for change (Comment added) made by jhubbard651 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=604225&aid=3515971&group_id=93414 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Jeff Hubbard (jhubbard651) Assigned to: Nobody/Anonymous (nobody) Summary: Support for DSSI effects Initial Comment: Hello, I think this one will be pretty easy for you... Could you add support for DSSI effects? As far as I know, it should be a pretty trivial thing to do, as you already have support for DSSI instruments. The reason I'm requesting it is because my project's suite of DSSI plugins (search for "LibModSynth" here on Sourceforge), currently contains 5 DSSI effects that can't be used in Muse2. Currently Qtractor, Rosegarden and jack-dssi-host are the only hosts I know of that support DSSI effects. I'm also working on a super-easy visual DSSI plugin designer, so I'd be willling to wager that there will be many more DSSI effects in the future. ---------------------------------------------------------------------- >Comment By: Jeff Hubbard (jhubbard651) Date: 2012-04-09 19:19 Message: First off, thank you for taking the time to reply. I'll join your mailing list here in a moment, and I'll test the latest SVN build of Muse2 tomorrow night. Regarding illegal instruction errors: What distro and CPU are you using? It's probably an issue with one of the default CFLAGS I'm using, admittedly I probably went overboard on some of the compiler optimizations. Regarding LADSPA-fying the pure effect plugins: I'm not opposed to doing so, as long as it doesn't cause any negative side effects. Admittedly, I'm still very new to Linux audio, 99% of my experience was on the Windows platform. I'm sure there are still plenty of things I could be doing better with my project, so I do appreciate input and opinions of more experienced Linux developers like yourself. ---------------------------------------------------------------------- Comment By: terminator356 (terminator356) Date: 2012-04-09 17:56 Message: Hi Jeff. After careful consideration, I'm allowing DSSI synths (those with a run_*synth* function) to be displayed in the LADSPA browser. Committed to release_2_0 branch. Just, for now, you'll have to be aware of what's a synth and what is not. We'll put some kind of check box, or new browser column showing this. Enjoy. Hope it makes life easier. Let me know if any trouble. Tested OK with Calf Rotary Speaker in a rack (and a synth too), saving and loading. Tim. ---------------------------------------------------------------------- Comment By: Robert Jonsson (spamatica) Date: 2012-04-09 14:43 Message: Hi Jeff, As Tim suggests, please do consider joining us on the mailinglist (it's low traffic) Also, your plugin building venture looks great :) ---------------------------------------------------------------------- Comment By: terminator356 (terminator356) Date: 2012-04-09 14:23 Message: Hello. From the viewpoint of MusE, your plugins are not DSSI effects, they are DSSI synthesizers. This is because they define a run_synth function. Primer: In MusE, there are two different places where DSSI modules are detected, listed for the user, and instantiated. The first is our effect rack plugins, as seen on each audio track. The second is our synthesizer section, as seen on our track list's right-click 'add synth' menu. One of my goals was to ensure that DSSI synthesizers were kept out of the effect rack plugin list, because it didn't make sense to clutter the list with synthesizers, which really shouldn't be there. How is the determination made "what is a synthesizer and what is an effect"? When listing effect rack plugins I IGNORE ANY module which has run_synth, run_synth_adding, run_multiple_synths, or run_multiple_synths_adding functions. (I simply adopted the technique from the DSSI file dssi-vst.cpp which does the same thing.) Conversely, when listing synthesizers for the user, I do the exact opposite - I list ONLY modules which have ANY of those functions. One of the reasons this makes sense for MusE is that our effect rack plugin support has NO MECHANISM to deliver midi events to the plugins. In fact MusE doesn't even have a mechanism to assign midi controllers to LADSPA or DSSI controller ports. (This is a sorely lacking feature, hopefully adding down the road.) Note that some DSSI plugins DO NOT define a run*_synth* function. They only define the standard LADSPA run function. Technically as I understand it, these are properly called 'effects'. Thus these DSSI modules DO show up in our effect rack plugins list. Examples: Several of the Calf plugins, also many DSSI-VST effect plugins. Observations: Rosegarden appears to take an extra step to determine "what is an effect". It appears to exclude any plugin from its effects list which has NO audio inputs. MusE does not, as there are several plugins which are 'generators' which are perfectly legal in our effects rack. Search for 'noise' or 'white noise' or 'pink noise' generators in Rosegarden's effect list (I found only one - with audio inputs) and then in MusE's effect list (all there). Meanwhile, QTractor appears to abandon any attempt to determine effects versus synths, as it appears to just list everything, even showing obviously dedicated synthesizers in the effect list. As I mention above, I'm not crazy about doing that, as it clutters the list and confuses users. But this may simply be how QTractor works, allowing a synth on an audio track, I'm not sure how it works exactly ... And yet, it is understandable because certain plugins 'blur' the line between synth and effect. They may rightly be called effects, but they may wish to repond to midi, using run_synth, thus they cross the line into the definition of a synthesizer, so MusE unfortunately excludes them from its effects list. I examined a couple of your plugins and noted you are not using the midi 'events' parameter in your run_synth function. I gather at some point you might wish to use midi events? If you will NOT be using midi, consider writing a LADSPA run function instead of the DSSI run_synth function, so that they will show up in our effects list. C'mon over to our developer list. We've got a few devs knowledgeable in DSSI, and one who currently may be interested in you wrappers. Sometimes even Chris, the DSSI and RG guy, lurks around... Maybe they can offer some insight. Something I missed or I'm wrong about? Meanwhile I'm examining our rack effect plugin code to see if there's anything I can do. With some tweaks I may be able to allow your synths er, effects, to be shown. But it's a question of whether we should. It does seem 'Draconian' to exclude certain plugins, like yours, however some of them might not even be able to produce sound at all without MusE providing midi to the plugins. PS: I get "Illegal instruction" crash when I try to load your plugins in MusE, RG, or QTractor. It's a 64-bit PC. Built from your source. Thanks. Tim. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=604225&aid=3515971&group_id=93414 |