Closed keybreak closed 5 years ago
Added bug 7 about routing.
Something is clearly off with routing of VSTi now, here's Windows / Airwave output for super simple 4Front Bass VSTi:
And this is current LinVST for same VSTi having 2 outputs without labels:
I think that plugin is never going to work in a great way with Wine.
The standalone exe can't even start on my system.
The drag and drop errors are Wine related and it looks like user32 related.
The routing/labels might be because I'm not using certain functions that require the vst2 sdk because I don't use the vst2sdk.
I think that plugin is never going to work in a great way with Wine.
Actually compared to most other wrappers it works pretty damn good.
The standalone exe can't even start on my system.
Yep, i confirm that, but that i don't care - we're testing vst plugins here :smile: Besides, i'm really interested in this one for personal workflow.
The drag and drop errors are Wine related and it looks like user32 related.
- Is this already reported to Wine?
- Any suggestions on proper .dll replacement?
?
?
?
You think it's same drag & drop problem as 1?
?
The routing/labels might be because I'm not using certain functions that require the vst2 sdk because I don't use the vst2sdk.
Wow...Then you need to make sure it's the case, coz if it is then it would produce problem with projects compatibility (at least for multi-output plugins).
So then if you don't want to use vst2sdk as dependency (which i totally understand), i would suggest to maybe create some settings file with vstsdk_path variable, and if there is path and vst2sdk is in use - extend LinVST functions so that routing would be same as Windows.
You think twice more outputs, than in Windows also caused by lack of those functions?
The multi outputs isn't a problem for most plugins (all that I've tested anyway).
This plugin is probably using some older vst functions that Airwave supports through the vst sdk but I'm not and I don't plan to because I don't want to be dependent on the vst2 sdk.
There are also other problems with this plugin and Wine and stability.
Drag and drop works for a lot of plugins but for this plugin it's some sort of Wine problem and it's a 32 bit plugin which makes it a Wine 32 bit problem/32 bit library problem.
I'm having a look at the multi inputs/outputs.
Seems like something might have changed in more recent LinVst versions.
I think the changes that I made for the Renoise vendor have interfered with the in/out functions.
I think the changes that I made for the Renoise vendor have interfered with the in/out functions.
Yes you're right, i approve that - just tested previous version it has 7 output, instead of 14.
Also this affected (dblue Crusher) which doesn't have GUI, before vendor changes:
After:
No values, just thought you might wanna know as well :wink:
Thanks for letting me know about the vendor bug.
It turned out to be old code that should have been updated and it mainly affected Renoise and I wasn't that aware of it because I don't use Renoise that much.
The vendor changes I first made affected the in/outs (whoops) and that has been fixed.
I can't do much about the in/out names because they use routines from the vst2sdk which I'm not using.
The vendor changes I first made affected the in/outs (whoops) and that has been fixed.
Thx, so it's safe to compile source now to continue testing, or better to wait for new release?
I can't do much about the in/out names because they use routines from the vst2sdk which I'm not using.
Yep, that i totally get, but if it's matter of 1-2 functions, maybe it's still a good idea to make something like:
if (config_vstsdk_path) {
doSomeVstSdk();
}
If it's not extremely hard, then please consider such option, it would improve experience and compatibility if user want to use SDK - after all what we're trying to achieve full Windows compatibility / experience here without altering plugin behavior in any way :wink:
Yes the source is ok.
If you want to use the sdk then just change all occurrences of -DVESTIGE with -DMIDIEFF in the Makefile and the in/out names should work.
If you want to use the sdk then just change all occurrences of -DVESTIGE with -DMIDIEFF in the Makefile and the in/out names should work.
Great i'll try that out, and what's the path of vstsdk will be used then? That's worth mentioning in docs though!
It's in the docs.
Just place the pluginterfaces folder in the LinVst folder.
I might be able to do a workaround for the in/out names without the sdk, I'll see how it turns out.
@osxmidi Tested 2.65, so bug 7 solved and works exactly as intended! Kudos for quality workaround! :smile:
Although maybe closing is a bit overkill yet :laughing:
Are you 100% sure 1-6 bugs is only Wine, and not LinVST?
About drag & drop since you have some thoughts on user32, should i try real win7 user32 with replacement to confirm it?
Between 2 of us, i assume that you know a little bit much about Wine than me, so do you know if any of those issues were previously reported to Wine?
Since i've already heavily tested 79 plugins with LinVST for my list, and all of them are working 100% perfect, except this one...I still assume we can accidentally find more Wine related problems on the way.
So please, let's establish some guidelines to proceed with quality bugtest / bugfix.
I suggest, in case of stumbling across bugs related 100% to Wine itself:
One of us should post link to existing issue from WineHQ (i assume bugs are living here?) here to our issue on Github, so one of could easily trace and really close it for good once it's solved.
If there is none - one of us should create such issue in Wine, with video / example / console output to let them know problems that we need to be resolved
Drag and Drop into the plugin window works for some DAW's.
Each DAW can implement drag and drop differently.
Also, Wine's drag and drop is not guaranteed to be the same as Windows.
The Sforzando drag and drop sfz files works in Reaper and a few other DAW's.
Getting bugs dealt with by WineHQ is not straight forward.
First, the Wine devs have lot to do, and then the bug needs to be worked out in the Wine source code and most devs are not going to be interested for some vst that they have probably never heard of.
For the Waves Central and Native Access bugs and missing functions, I had to do it all myself and then submit it to WineHQ to be approved which took a lot of time and my fixes were rejected at first and then accepted on the second submission.
Some things might not work in Wine for years and maybe never, so it's best to just forget them and move on.
One of the main things I'd like to see is Wine getting to grips with d2d1.
Good to know that you're experienced enough to submit some of the fixes to Wine! :smiley:
One of the main things I'd like to see is Wine getting to grips with d2d1.
Oh yeah, absolute most of the problems in VST plugins comes now to d2d1 & / or C++ runtimes, so it would be great to fix.
My goal now is to create as wide and detailed database of VSTs as it can get, and try to catch all the possible bugs / differences. I've already tested 176 (when i'll test all of my free plugins, i'll release this database and start to test commercial plugs)
Your goal, i assume is to create best possible bridge and eliminate all bugs on your level without getting too deep in Wine (that's why i share all my findings here immediately)
Wine's ultimate goal - full compatibility with everything Windows.
So yeah, sure we both know it could takes years to fix something in Wine, but at the same time i think we must report all the stuff that we're 100% sure is Wine related.
Besides, they've started to move way faster last year, and fixed for example a lot of bugs related to Photoshop CC.
In my opinion, question on reporting to WineHQ only come from perspective of is it wise to report stuff immediately, or in a batch after whole list will be finished :rocket:
Stanton Deckadance v2.72
Description
Drag & Drop of songs (specifically drop) on playlists or from playlist to deck causes lin-vst-servertrack32 crash: https://i.imgur.com/h73ObCl.mp4
Some rotary buttons causes crash of lin-vst-servertrack32, for example in FX section (that must be GUI bug, since FX are audible & working): https://i.imgur.com/QxWQ2QO.mp4
Resize of GUI is buggy and doesn't update main window frame (unless you reopen plugin's GUI in host) https://i.imgur.com/HpxZY71.mp4
While playing - decks are pretty laggy (visually), but if you open settings they become smooth as silk 60 fps https://i.imgur.com/lKq1jKW.mp4
Drag & Drop of settings is buggy (position jumps around mouse) https://i.imgur.com/tT0gbhP.mp4
I suspect there is some memory leaks that wasn't there on Windows (watch DSP meter on top), when decks are played it's normal, when stopped - percentage is way more, when not played and GUI closed - even more. No this video results are more or less reasonable, but over time it got like 40-50% which is...not good https://i.imgur.com/6uE3EOh.mp4
Routing is very different from Windows (which can break compatibility with some projects), for example:
deck 1
Bus #03
Bus #06
deck 2
Bus #04
Bus #07
And most importantly Current Track mode doesn't work on any output (technically it works but just always routes to master, not selected track)
Here's how current LinVST looks (twice more outputs):
Also routing buses doesn't have Any labels (for example like Airwave here):
Dependencies
strings Deckadance2.dll | grep -i dll
Enviroments
Winetricks