Drag & Drop files into plugin GUIs (Linux)

I have been interested in this topic for a while and have learned that there is quite a bit of confusion associated with this within Linux. This post is meant to try to help explain drag & dropping audio files into plugin GUIs that accept this functionality.

Some great information was shared from other users in a separate post of mine which greatly helped me test / generate the information that I am sharing here. I think it is worth it to make a separate post to explain this.
Here is the link to that post if anyone is interested

Thank you to all the users who tested / helped provide information about this topic.

TEST NOTES
-All of these tests were done in a GTK based desktop environment
-I have not tried any of this in a QT based desktop environment so if you are using one your results may be different
-The plugin formats tested were LV2, VST2 & VST3
-Apparently the toolkit (GTK / QT) your 3rd party file manager uses can make a difference in your results

LV2
-Does not support D&D internally from inside Ardour
-Supports D&D from 3rd party file managers
-LSP plugins (LV2) support D&D from both GTK & QT based FMs
-The “rncbc” plugins “samplv1” & “drumkv1” are LV2 plugins that only seem to support D&D from QT based FMs

VST2
-Does not support D&D internally from inside Ardour
-Does not seem to support D&D from any GTK based FMs
-Does support D&D from QT based FMs
-LSP plugins (VST2) do not support D&D from GTK based FMs but they do support D&D from QT based FMs

VST3
-Supports D&D internally from inside Ardour (from Import window & Side bar clips)
-Supports D&D from 3rd party file managers into Ardour

One more thing, this information above is not limited to D&D with audio files, plugins that support other file types such as virtual instrument formats (SF2, SFZ, etc.) seem to work the same way as well. Ardour does not allow access to non media based file formats so cannot D&D internally within Ardour, but can be achieved using 3rd party FMs.

If anyone experiences different results compared to what I have mentioned above please let me know so I can test / update this to be as accurate as possible.

Hopefully other users will find this information helpful
Thank you again to all the users that helped me generate this information.

1 Like

There is no relationship of plugin standards at all.

Any VST2 VST3, AU and LV2 plugin UI can accept drag/drop. It depends on the plugin GUI, not the plugin standard.

LSP plugins only implement DnD for their LV2 GUI, but not for their VST variant. It works just fine with VST2 UIs of vendors.

While DnD inside GTK apps is special, and can be limiting, there nothing Ardour can do. It’s really up to plugin vendors to implement this for each variant.

Yeah, thanks for diving deep!

@x42
Thank you Robin, but just to clarify some things.
No I know I mentioned this at the top of my post that this only applies to plugin GUIs that accept this functionality of D&D.

Not sure if I am understanding your comment about LSP plugins.
From my tests the VST2 versions of the LSP plugins do accept D&D, as I mentioned from my testing it just appears that D&D is only working from QT based file managers but not from GTK based ones.
I do have a question though, based on your coding knowledge / experience do my observations make sense. Could the toolkit that a file manager is based on effect the D&D?
I am basing this on some of my tests for example the LSP plugins (VST2) that I just mentioned as well as the “rncbc” LV2 plugins I mentioned. Both of these only seem to support D&D from QT based FMs only. Does this make sense, would QT have something to do with this?

Sorry, also just one more question. In my other D&D post I mentioned to you to keep in mind that it appears that VST3 plugins support D&D from within Ardour itself, this was surprising to find out. By any chance do you know why this is? The only VST3 based plugin that I was able to test that supports D&D was the plugin “Speedrum” which comes in VST2 & VST3 versions. The VST2 version does not support D&D within Ardour but the VST3 one does.
Do you know if this has something to do with the VST3 format? that allows D&D within Ardour from Ardours import window & side bar clips? In past post I was told that this was not possible, especially from the side bar clips but it does work.
I don’t think the Speedrum developer specially programmed D&D in Ardour, so it must have something to do with the VST3 format itself? Again sorry I don’t have any other VST3 plugins to test this theory.

I thank you for your time

Yes, it is what I’d expect. and yes QT/X11 handles DnD differently under the hood (QT unconditionally uses a XdndProxy).

I expect this only works using the clip-list in the sidebar (which can provide file URIs as mime-type). Some plugins (also the LV2/X11 example I posted) can accept this drag-type.

The UI accepts some mime-types of drop-data that other plugin UIs don’t.

The plugin spec has nothing to do with this at all. A developer can use whatever UI framework they want with every plugin format. - On GNU/Linux, a plugin UI just has to pass a X11 Window ID to the host. That mechanism is identical for all plugin formats!

@x42
Thank you very much Robin for taking the time to answer my questions, I really appreciate it.
I don’t have coding knowledge obviously so forgive me if I make any mistakes in discribing things.
QT based FMs
That is interesting to hear about QT, I think of tookits more regarding GUI based elements, I would never have thought that a toolkit would have an effect on DnD. It was only because of what that other user mentioned that he was able to get DnD to work with FMs such as Dolphin, that I even thought to try it. This is very good to know.
VST3
As mentioned though, not only from the sidebar, that Speedrum Lite plugin also accepts DnD from Ardours import window as well. I was surprised that either of them worked, but was also surprised that they both did. I remember in a past post Paul mentioned that the sidebar handles DnD differently than the import window, which sounds like that is what you are saying as well.
So that plugin accepts the two different DnDs “methods” that Ardour uses.
Like I said only know of this one VST3 plugin for Linux that accepts DnD, so I cannot really confirm how other VST3 plugins function in Ardour at the moment.
LV2/X11 example
It sounds like you mentioned that the example you posted can also accept DnD from within Ardour.
If you are speaking of the LV2 plugins “Rui’s vee-one suite” (samplv1, drumkv1, etc.)
As mentioned neither of these plugins worked for me when trying to DnD internally from Ardour with either the sidebar or the import window. Might just be my system but just letting you and others know that I was not able to achieve this.

Thank you again for your time / help.

@Anyone interested
I unfortunately cannot edit my orginal post.
I am / was aware that it is not the plugin format itself, but was just kind of tricky to explain because there were a couple of different factors that determined if DnD worked on my system.
Understand that I do not have coding knowledge about this kind of stuff, so I apologize if my explanations are not correct.
The main purpose was to just be able to inform Linux users about DnD because as can be seen it is pretty confusing in Linux.
The main takeaways though is just to know that if having difficultly with DnD or seeing that others can use DnD and you cannot for some reason. Know that it is not necessarily an issue with your system or some kind of “permission” as myself and other users have thought / mentioned.
It could come down to the plugin itself, the format of that plugin you are using, as well as what toolkit (GTK / QT) your file manager is based on that could determine how DnD works or does not work for you. This just provides some things that you could try.

Again hopefully someone in the future will find all of this information useful
Thank You again to everyone that helped me generate this info