Hello. I’m just wondering about how you manage to create plugins for Audacity using compiled dynamic libraries (eighter *.dll for Windows or *.so for GNU/Linux).
For Windows, how I can debug and test the plugin inside Audacity using Visual Studio’s debugging session (and create the plugin using Visual Studio, too)?
How Linux debugging for Audacity compiled plugins is performed?
I’m going to create a plugin for Audacity (both for Windows and Linux) using Visual Studio on Windows and GNU programming tools on Linux, so that’s why I’m asking…
Wrong place to ask. This is the Audacity Forum. We only ship one shared library plugin (SC4 - LADSPA) and we don’t debug it. It is old and has not been updated in years. We don’t ship VST’s at all.
Wait. All DLL plugins are using an obsolete and further not supported nor updated DLL core? Or how I can understand your words? I’m creating plugin, not looking for some plugin to work with. You probably misunderstood me.
I’m looking for some tutorial or a guide on creating plugins for Audacity. Google didn’t help (perhaps I asked wrong question, I’m not Google master at all), so I decided to ask here, since this is Audacity forum and perhaps somebody could help me there. Well, I registered to devel mailing list, but unfortunately I didn’t get the whole concept - where can I seek for something? Always use an archive to search or just list? Are there some general rules on using devel? Like how to form questions, how to submit plugins, etc.
If somebody adds new post to devel, I guess it will arrive in my inbox, right?
To Nyquist plugin: As Nyquist has great deal with manipulating audio data, it can create various sample tracks, various wave functions, but I actually do not get Nyquist, it’s a language I just do not understand and seems too hard to implement. Also, I heard that Nyquist does not support handling with files. That’s why I got to use Visual Studio and C# (and C++) for compiled DLL/SO dynamic linked library instead of interpreted Nyquist script. Because I practice in procedual programming and I believe that plugin should remember it’s own settings from last session. One thing is to use registers (or something similar to save system and application settings), the other is to use files to store settings. Both ways require compiled library, it’s something Nyquist can’t ever achieve. Of course I could do hybrid plugin and use Nyquist scripting to actually generate the data, but DLL and EXE for saving files and show settings window, which would use user input for generating Nyquist script call command… But then it just would be very long as I have to learn Nyquist first before using it.
Audacity supports various plug-in types. See: http://manual.audacityteam.org/man/customization.html#Plugins
See also the pages linked to from the above.
If you keep strictly to the format for any supported plug-in type, then it should work in Audacity.
What are you talking about there? I am saying the one DLL plugin we ship (SC4) is old. The author does not develop it further.
No I didn’t misundertand.
As I said, we almost exclusively ship only Nyquist plugins. If you don’t want to create Nyquist plugins, then the plugins you create are not only for Audacity but can also be used in other applications that support your chosen format.
Or do you want to propose a new built-in effect for Audacity? That will be LADSPA-based, programmed in C++.
I think it fair to say that we are more likely to ship a Nyquist plugin than in other formats. LADSPA is old and quite limited and has been effectively replaced by LV2, but our support for LV2 still has rough edges and omissions, especially on Windows. We would likely not directly ship VST, because suppliers of some of our third-party libraries oppose the patented format.