KVR :: DSP and Plug-in Development » Win-to-OSX VST wrapper/adapter [View Original Topic]
There are 277 posts in this topic. Page: 1 2 3


mustgroove - Wed Apr 29, 2009 4:37 am
Forgive me if this has been shot down in flames before, but I'm just wondering whether anything like this is at least technically possible?
djanthonyw - Wed Apr 29, 2009 4:45 am
Yes, it's possible. It's not going to be easy, but can be done.

Also check out, jVSTwRapper: http://www.kvraudio.com/get/925.html

Another option would be using JUCE, which is what Andrew Simper uses to wrap "The Glue".

I believe both options are open source.
ZenPunkHippy - Wed Apr 29, 2009 5:08 am
Do you mean for development purposes, or run-time purposes i.e. to use in conjunction with your host?

In the latter case the folks behind the V-Machine (SM Pro Audio) have a free tool based on Wine which will run Windows audio plug-in DLL's on OS X. This was posted on the Apple site a few days ago, sounds quite promising:

http://www.apple.com/downloads/macosx/audio/vfxapplication.html

Not tried it myself, but going to download now and have a play when I get the chance.

Peace,
Andy.
djanthonyw - Wed Apr 29, 2009 5:11 am
Yes, but it doesn't allow you to run windows plugins inside of your native OS X host.
mustgroove - Wed Apr 29, 2009 5:13 am
I mean for run-time purposes... as in, something to take a DLL and allow it to be run on OS X as a VST plugin.

That V-Machine thing looks great but having a hardware box is kind of annoying... if there were a purely software solution that would be ideal. Is a purely software solution impossible? Or perhaps too CPU intensive to be feasible?
mustgroove - Wed Apr 29, 2009 5:16 am
Hmm this V Machine is also quite expensive...

http://www.thomann.de/gb/sm_pro_audio_v-machine.htm

411 Euro?? Daaaaaamn...
ZenPunkHippy - Wed Apr 29, 2009 5:20 am
You do not need to own a V-Machine to run this software only solution, it is completely free. The V-Machine plug-in hardware, on the other hand, which is for hosting plug-ins outside of your computer, and taking a load off the CPU, is what costs.

djanthonyw wrote:
Yes, but it doesn't allow you to run windows plugins inside of your native OS X host.

Sure.

You could always use Jack OS X or Soundflower to route the audio back in to your host. Presumably the V-Machine app accepts a MIDI connection, so as long as the latency is OK it is a slightly inconvenient solution to a mega-problem. Well, mega if you really need to run a Windows plug-in. Can't think of anything I really need from the Windows free- or pay-ware world ...

Peace,
Andy.
retroware - Fri May 01, 2009 6:11 pm
About a year ago I started working on a project to run Windows VSTs in a OS X host. I got to the point were I could wrap a Windows VST dll and load it directly via a OS X host (I was using Ableton at the time). The project was based on the open source dssi-vst project and used Wine as the windows emulation engine. I got the project to a point were all of the audio and GUI processing was working correctly across a range of Vsts. Some things that weren't working included parameter save/restore plus the whole wrapping process needed some streamlining.

It was actually pretty cool to see a windows vst running "natively" on an OS X system. Plus, the added latency/overhead didn't seem that bad. At that point I lost some interest in that the VST I was interested in using became available natively for Mac OS X. But, I'd be more than happy to share the somewhat crufty code with anyone who would like to pick up the ball and run with it.
MeldaProduction - Sat May 02, 2009 4:21 pm
Whau Guys that's interesting!

I don't think that emulation would solve the problem since we are talking about high-speed processing. But most macs are now running on Intels, right? So technically it differs only in the libraries & subsystems and the executable format. I think many developers would be willing to pay for such a solution, that would take source DLL and convert it into Mac OS X format (others may be grateful for the other way). Yet I don't know if it is feasible... But if so... Love
retroware - Sun May 03, 2009 9:42 am
The wine emulator basically does what you are suggesting. It runs your code natively using the intel instruction set. The "emulation" part comes into play when you issue a call to a Windows library function. These get vectored off to native code that performs the same function as the corresponding windows library call. Most of these emulations are actually faster than the corresponding windows implementation. In theory, a plugin running under wine should run almost as fast as the same plugin on Windows.

My wrapper runs the wine emulator as a separate process from the host DAW and as such requires some interprocess communication to get data back and forth between the two processes. This makes the whole setup more stable but adds some overhead. In my experience, this overhead has been low and I've been able to run a range of windows VSTs without appreciable slowdown.
hill_matthew - Tue May 05, 2009 1:25 pm
retroware wrote:
I'd be more than happy to share the somewhat crufty code with anyone who would like to pick up the ball and run with it.
Perhaps if you're no longer interested in developing this it would make a good open source project?
mustgroove - Sun May 10, 2009 1:06 am
retroware - would you be at all interested in developing it further? because it sounds like exactly the thing I've been looking for Smile
hibrasil - Sun May 10, 2009 1:25 am
sounds like a great project to me, please release it in some form!

oli
Angus_FX - Sun May 10, 2009 2:09 am
@ retroware - I tip my hat to you, sir - very good work! I looked in to this in some length two years ago, even discussed at some length with the guys from Codeweavers; we really wanted to get it running in-process but that seemed like a step too far (getting WINE working as a client dylib in an arbitrary OS X process is scary hard).

Are/were you using an "OS X Native" port of WINE (i.e. using Carbon-Cocoa-Quartz for UI services), or a "UNIX Native" (i.e. using X Window System) port? We were trying to use DarWine/Quartz as we felt that X was too demanding and too unMac for most potential users, but DarWine/Quartz was too buggy to be useful.

The out-of-process approach has some advantages actually, as long as the latency/synchronization/IPC penalty isn't too bad and provided it can be made to work reasonably reliably against the variety of host buffering/threading models you'll find out there (esp. when running multiple instances.. from the results I've seen, some of the big DAW vendors employ some seriously warped individuals as audio engine programmers Laughing ). It's a similar issue the guys developing outboard accelerators and DSP cards run in to (asynchronous, out-of-process VST processing basically) and the variation in host behaviour is the bane of all those guys' lives.

Cheers,
Angus.
Angus_FX - Sun May 10, 2009 2:17 am
p.s. you can of course already run any Windows VST host (I'd suggest Forte or Minihost perhaps) with Crossover and an ASIO MME driver, but the latency blows hard; it looks like the shipping version of Crossover is still based on X Window System, so while it's better than running Parallels Desktop, it's still very very unMac. I had a quick google and unfortunately it looks like QuartzDrv (the OS X native, non-XWindow driver for Wine and Crossover) hasn't moved on much in the past two years. Shame Sad
mustgroove - Sun May 10, 2009 7:30 pm
Thanks for the posts Angus Smile Interesting that you can already run hosts with WINE, but my ultimate aim is rather to "wrap" Windows VST plugins so that they run (hopefully seemlessly) in a native OS X host, as if they were OS X VST plugins in the first place...

I really hope this is achievable... and am actually willing to throw some money at it to see it developed.
Angus_FX - Sun May 10, 2009 11:55 pm
Nothing's impossible, but I'd file that one under "very substantially difficult". It's not achievable without WINE/Crossover or some other Windows library emulation layer (that's what SM Pro Audio are no doubt using); for as long as WINE on OS X is dependent on XWindow, it's just not going to work in-process.

If the people developing the native OS X driver for WINE ever get their act together, that'll bring it somewhat closer, but in the mean time, out-of-process wrappers like retroware's are the closest you're likely to get.

The other issue you run in to is getting compatibility between VSTs and WINE better. Both Receptor and V-Machine are WINE-based, and even after quite a few years, big VSTs seem to require special attention to get them working properly on Receptor. SM Pro Audio are actually in quite a strong position here, because they can take the work they do to make WINE compatible with VSTs on their hardware, and translate that in to the software platform too. Looking forward to their V-Rack which actually has a decently powerful chip in it.
retroware - Tue May 12, 2009 4:46 pm
Angus_FX wrote:
@ retroware - I tip my hat to you, sir - very good work! I looked in to this in some length two years ago, even discussed at some length with the guys from Codeweavers; we really wanted to get it running in-process but that seemed like a step too far (getting WINE working as a client dylib in an arbitrary OS X process is scary hard).


Yeah, I thought about trying to get it to run in process as well and was worried about getting Wine to run in the same address space as complex programs such as Logic and Live. Instead I chickened out and went with the out of process approach.

Angus_FX wrote:
Are/were you using an "OS X Native" port of WINE (i.e. using Carbon-Cocoa-Quartz for UI services), or a "UNIX Native" (i.e. using X Window System) port? We were trying to use DarWine/Quartz as we felt that X was too demanding and too unMac for most potential users, but DarWine/Quartz was too buggy to be useful.


I was using the X windows version of Wine. I agree not the most user friendly approach but I was just trying to get a proof-of-concept to start.

Angus_FX wrote:
The out-of-process approach has some advantages actually, as long as the latency/synchronization/IPC penalty isn't too bad and provided it can be made to work reasonably reliably against the variety of host buffering/threading models you'll find out there (esp. when running multiple instances.. from the results I've seen, some of the big DAW vendors employ some seriously warped individuals as audio engine programmers Laughing ). It's a similar issue the guys developing outboard accelerators and DSP cards run in to (asynchronous, out-of-process VST processing basically) and the variation in host behaviour is the bane of all those guys' lives.


I'm using unix pipes for low-bandwidth communication and a shared memory region for high-bandwidth communication (the results of the "process" call). This seems to give a pretty good latency results. I'm guessing there are all sort of issues waiting to bite me when trying to do this "for real". Nevertheless, I have been able to host fairly sophisticated VSTs such as dbGlitch from within Live.

I have no problem with open-sourcing it but the code is pretty rough right now and would take a bit of work to get it to the point that I'd feel comfortable starting a project. But, I'd be happy to throw together a tarball and send it on its way to someone who was committed to starting a project with it.

Cheers,
Dave
Angus_FX - Fri May 15, 2009 2:53 am
hmm.. are you using locking objects to synchronize all that? Would be interested to see how it scales with 6 or 8 Windows VSTs in a session.

Cheers,
Angus.
Dewdman42 - Sun May 17, 2009 11:19 pm
Wow. That is really impressive. I agree that IPC is the way to go instead of trying to get the wine stuff in-process of a major DAW. I would really like to try that out sometime.

I have been running Jamstix with Crossover Games for a while now, it works good, but I have to host it inside the windows version of Reaper (under Wine), and use virtual midi ports to get the midi back and forth, and JackOSX to get the audio. Its kind of a pain to get setup and sometimes the midi is flakey due to bugs in Reaper. I can't imagine I'm using less CPU cycles or getting less latency problems this way then I would with what you have done.

But it basically works. By the way, related to a comment Angus made earlier, its possible to use the wineasio driver under CrossoverGames to have low latency audio under Wine. The wineasio driver basically acts like ASIO on the windows side and connects to JackOSX on the mac side. (there is a linux version too). The OSX version had to be specially coded in order to deal with some unix incompatabilities between darwin and linux, I can't remember what it was right now. But if you google for it, the guy did it has it posted on his website, and it works with slightly older versions of CrossoverGames and Wine. I'm using it with CrossoverGames 7.0.0.

I also run OP-X, Glitch and a few other windows only plugins that way.

Anyway, if you're willing to share, I'm willing to try.
djanthonyw - Tue Jul 07, 2009 2:59 pm
retroware wrote:
About a year ago I started working on a project to run Windows VSTs in a OS X host. I got to the point were I could wrap a Windows VST dll and load it directly via a OS X host (I was using Ableton at the time). The project was based on the open source dssi-vst project and used Wine as the windows emulation engine. I got the project to a point were all of the audio and GUI processing was working correctly across a range of Vsts. Some things that weren't working included parameter save/restore plus the whole wrapping process needed some streamlining.

It was actually pretty cool to see a windows vst running "natively" on an OS X system. Plus, the added latency/overhead didn't seem that bad. At that point I lost some interest in that the VST I was interested in using became available natively for Mac OS X. But, I'd be more than happy to share the somewhat crufty code with anyone who would like to pick up the ball and run with it.

Shocked As mentioned before, is there any chance of making this an open source project? I would love to be able to run z3ta natively inside of an OS X host! Possibly even just offer the latest version that you had built? Prayer
retroware - Wed Jul 08, 2009 7:32 pm
I've created a sourceforge project for the Windows to Mac OS X VST adapter. It should be accessible at:

http://sourceforge.net/projects/wacvst

It is still very much a work in progress. But, I've been able to get plugins such as glitch and op-x to operate at a somewhat useable level. Your mileage will definitely vary.

There are two released files - the source distribution for those who want to hack on it and a binary distribution for those who just want to give it a spin. In either case you'll need to download and install Wine.

I'll try and get the svn repository populated this weekend. Let me know if you are serious about doing some development work on it.

Feel free to shoot me any questions or use the sourceforge forums.

Good luck!
Dave
djanthonyw - Wed Jul 08, 2009 7:40 pm
Dave, thank you! I'm going to give this a spin!
djanthonyw - Wed Jul 08, 2009 8:53 pm
It's not showing up for me in Live.
Bryan J - Wed Jul 22, 2009 2:43 am
Ummm... ok... this is kickass. After a few hours tonight and last night I finally got it working... AND... get this... it's ALMOST working in Logic 8 with Messiah running through WACVST running through "VST to AU Adaptor V2.0"... almost... AND it seems to be very low latency too. It almost feels like Christmas in July =) .

So here's what I was able to find... First of all, the GUI comes up in Logic. When you load Messiah in Logic it will look like the plugin crashes. Suffice it to say, it wasn't actually crashing. Rather, the X11 Window immediately get's pushed back behind all of the open Logic windows just after the VST GUI opens making it look as if it crashed. I only emphasize this because it took me about 25 or 30 minutes to figure this out... lol... When it appeared to crash, I'd just close out of Logic which would close the plugin as well, and I'd never see it. Luckily, at some point I moved the Logic Environment window out of the way to find that Messiah had been clandestinely hiding out in an X11 window.

Now here's the real joy.. When I play keys on Messiah's GUI in Logic, Messiah's audio plays *through Logic's mixer*... just like any other native AU. It so cool. Unfortunately there's no MIDI... as of yet.

I currently suspect that this *might* be due to XQuartz and not necessarily with WACVST. Here's why:

I started testing with Quartz 2.3.3.2, and was not able to use my controller to play MIDI Messiah through either WACVST, or VFX, despite the fact my controller works fine in Logic and other regular Mac apps.

I then tried the shareware application VST Host with WACVST and Messiah. Similar to Logic and VFX was that when I played keys on the GUI I was able to get sound, but when I played keys on my controller I got nothing... BUT... what was interesting is that the MIDI activity indicator on VST Host showed that it *was* receiving the data... It just wasn't passing it on to WACVST, or WACVST wasn't sending it to Messiah.

In essence, it was clear that only those applications using XQuartz (VFX and WACVST) seemed to have a problem with MIDI, so I downgraded to XQuartz 2.2.0.1.

With XQuartz 2.2.0.1 I now have MIDI from my controller successfully playing Messiah running on VFX, and successfully playing Messiah running through WACVST on VST Host. I'm just still not able to get MIDI to work through Logic running Messiah through WACVST running through "VST to AU v2.0".

The MIDI problem could also have to do with the "VST to AU" plugin as well, since VST Host and VFX are now working, but I still think that XQuartz is suspect given the fact that downgrading seemed to fix MIDI on the other two apps.

All this to say, Dave, you rock. Thanks for putting this out there. With a little massaging, I think we'll have Windows VSTs running pretty seamlessly through Logic too. How cool is that?

For anyone trying to get this to work, here are a couple of other tips:

1. Don't try using DarWine. I wasn't really aware there was much of a difference DarWine and regular Wine, but it seems there is, and I was unable to get DarWine to work with WACVST at all. Just use regular Wine.

2. I did my Wine installation using MacPorts. The installation I selected was wine-devel . Be aware that Wine will be installed in /OPT directory by default when you use MacPorts instead of /USR. I wasn't sure how delicate the pathing was in Wine (I assume it is), so I just left it there and changed the path in WACVST to reflect this, which seemed to be fine.

I've only just started playing with this, but so far it looks like this could really work well for those PC only plugins... especially if we can get the installation down to a step-by-step procedure, or maybe a script of some sort. Hopefully I can work on this a little more tomorrow and see if I can get MIDI working through Logic on a VSTi.

Thanks Dave!

-Bryan J
retroware - Wed Jul 22, 2009 7:08 pm
Glad to hear that wacvst is working for someone besides myself. I must say that I'm pretty surprised that it somewhat works in conjunction with the vst to au wrapper.

It would be great if you came up with a step by step guide for using it. I sort of suck when it comes to documentation.

You shouldn't expect midi to work - I never got around to implementing the effProcessEvents opcode. It shouldn't be too hard to add. Hopefully, I'll get some time in the next couple of days to add it in.
Bryan J - Thu Jul 23, 2009 3:24 am
Sweet... I look forward to checking it out. If this works pretty well (as it might seem) then I'll probably start to make the transition from PC to Mac for real.

I'll try to put to together a streamlined procedure for getting this installed in the next day.

For anyone trying to get WINE going already, I also just found out that there's a new GUI interface called "Porticus" that can be used in place of MacPorts, so it should end up being pretty straight forward without the need for anything on the command line (for better or for worse).
gustavokch - Thu Jul 23, 2009 7:29 pm
Sounds really promising, really looking forward to this.
retroware - Sat Jul 25, 2009 6:43 pm
A new version of wacvst has been uploaded to sourceforge.net:

https://sourceforge.net/projects/wacvst/files/wacvst

This new version should support midi events from the host. Plus, there is better support for saving and restoring the state of the plugin.

The source is now checked into svn.
djanthonyw - Sat Jul 25, 2009 6:52 pm
Where can I download the binary of Wine from?
Bryan J - Sat Jul 25, 2009 11:21 pm
djanthonyw wrote:
Where can I download the binary of Wine from?


lol... I guess that means I gotta get a procedure down, since Dave held up his end!! =)

First of all, this looks like a lot of steps, but it's not at all complicated if you read everything carefully.:

Installing XCode (Necessary to build Wine):

1. First, you'll need to download Xcode from Apple's developer site. In order to do so, you'll first need to register with Apple's developer program. This is free. To do so, click on this link: https://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa, and click "Join Now", and follow all the steps to fill in the required information to get a username and password for the Apple Developer Program.

2. Once you get your username and password, go here: https://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa/wa/promo?source=ADCLOG&code=ADCLOG-NEX and log in with your credentials.

3. Once you're logged in, you'll see the member's page. From here you should click on the Downloads link.

4. Next, click on the link on the right that says "Developer Tools"

5. Now, locate "Xcode 3.1.3 Developer DVD (Disk Image)" and click on it to download the Xcode installer.

6. Once it downloads, double click on the .dmg file and then the .pkg file contained within. Follow he instructions and allow it to install. You shouldn't need to customize the installation.

Installing MacPorts, Porticus, and Wine:

7. Click here to download MacPorts: http://svn.macports.org/repository/macports/downloads/MacPorts-1.7.1/MacPorts-1.7.1-10.5-Leopard.dmg. Once it downloads, double click on the .dmg file and then the .pkg file contained within. Follow he instructions and allow it to install.

8. Next, click here to install Porticus. http://porticus.alittledrop.com/downloads/Porticus_1_6_3.dmg. Once it downloads, double click on the .dmg file and drag Porticus to your apps folder.

9. Open the Porticus app.

10. Click on the folder that says "All Ports". (You should see almost 6000 available.)

11. Type "wine-devel" (without quotes) in the search box in the upper right.

12. Click on "wine-devel" in the main window.

13. Click the green "install" button in the upper left.

14. Click the install button in the confirmation window and enter your admin password for osx. This will automate the entire process needed to download, compile, and install Wine and all it's dependencies. It will take a long time... maybe an hour or more if I remember correctly, so be patient.

Installing XQuartz:

15. Click here to download XQuartz: http://xquartz.macosforge.org/downloads/X11-2.3.3.2.dmg. Once it downloads, double click on the .dmg file and then the .pkg file contained within. Follow he instructions and allow it to install. NOTE: The MIDI related problems I made mention of earlier in this thread might not be XQuartz related, but may instead be due to a known bug in 10.5.7. This is the link to the latest version.

Installing and configuring WACVST:

16. Follow this link to get to the latest version of WACVST and click on the "Download Now!" button to download the binaries: http://sourceforge.net/projects/wacvst/.

17. One the file is downloaded, go ahead and unzip it.

18. Once unzipped, double-click on the wacvst folder to open it.

19. Control-click on the wacvst.vst file and select "Show Package Contents" from the drop down menu. This will open an new window showing the contents of wacvst.vst.

20. Double-click on the "Resources" folder in the new window.

21. Double-click on config.plist. If you've correctly installed Xcode, this should open up easily with the Property List Editor.

22. Change the plugin-name value to be the name of your Windows VST filename *without* the extension. So if your plugin's filename is messiah.dll, then you should change the plugin-name to be "messiah" (without quotations).

23. Change the wine-path to reflect the location in your wine install. By default, this will likely appear as: /usr/local/bin/wine . If you've been following these instructions, then you should change this to: /opt/local/bin/wine

24. Type command-Q to quite the Property List Manager and then click "Save".

25. Drag the Windows VST .ddl file you wish to wrap and any supporting files into the "Resources" folder window that should still be open on your desktop. (If you're not sure about the "supporting files" (which can get pretty involved, depending on the plug-in), then I might recommend that you start off experimenting with some of the more simple freeware plug-ins that only comprise of a simple user interface and a single .dll file. At this point, you can close the "Resources" folder window, but leave the "wacvst-bin" folder open.

26. Double-click on Macintosh HD.

27. Double-click on Library.

28. Double-click on Audio.

29. Double-click on Plug-Ins.

30. Double-click on VST.

31. Drag the wacvst.vst file from the "wacvst" folder to the "VST" folder.

32. Cross your fingers.

33. Open up VST host you like and see if your plug-in shows up.

34. Regardless of whether your plug-in works or doesn't work with wacvst, you should come back here and share your experience with others in this thread so that others can learn from it, so this project can move forward, and to give props to Dave (retroware) for all his hard work and his willingness to donate it to the open source community.

Also... as Dave mentions in the wacvst readme file... "One may need to copy support dlls to wine's windows\system32 directory." This is very similar to Receptor in that some Windows plug-ins rely on features within the Windows libraries that aren't included as a part of Wine by default. I'll add some details regarding how to do this soon, but it should be assumed that any techniques used to "hack" a specific plug-in onto the Receptor (which is using Wine in a similar fashion) would also apply in this case as well.

Additionally, it's also worth mentioning that Wine's registry (similar to the Windows registry) may also need to be edited. In fact, this is frquently the case for commercial plug-ins you've purchased that require a serial number during installation. Again, I'll add additional details soon, but I'd also look toward the forums for the Receptor for techniques regarding specific plugins.

Hopefully this helps a few of you get started with this project. Also, don't hesitate to suggest any edits I can make to this procedure to help clarify the installation.

Thanks,
Bryan J [/b]
jngpng - Sun Jul 26, 2009 4:29 am
Fantastic work Dave, and nice write-up Bryan!

I have SQ8L running beautifully in Live 8 now. Receiving MIDI appears to work flawlessly.

I'm not really too up on the VST spec - does each plug-in have a unique identification code like AU? Or would making multiple wrapped plug-ins be simply a case of copying the wacvst bundle and renaming it?
djanthonyw - Sun Jul 26, 2009 5:44 am
Hey Bryan, thanks for all the steps!
douglashorner - Sun Jul 26, 2009 7:13 am
Doug
djanthonyw - Sun Jul 26, 2009 7:16 am
Wine is building for me right now, the only thing I really want to do is see if z3ta works. That's the only thing I REALLY would like to have that's not already on OS X now.
douglashorner - Sun Jul 26, 2009 7:38 am
Forget that last post, i worked it out. Novation automap wrapper prevented the plugins from loading. Wacvst succefully wrapped in live and fxpansion vst - au still working on.
douglashorner - Sun Jul 26, 2009 7:52 am
jngpng wrote:
Fantastic work Dave, and nice write-up Bryan!



I'm not really too up on the VST spec - does each plug-in have a unique identification code like AU? Or would making multiple wrapped plug-ins be simply a case of copying the wacvst bundle and renaming it?



Hi There,

I have made multiple instances of wacvst By
1. changing the plugins name from "wacvst.vst" to "desired name"
2. in info.plist- in package contents; changed all "wacvst" entries to "desired name"
3. and finally the MacOS package from wacvst to "desired name".

Although running more than one instance of the same plugin has not worked for me.

Doug
Gamma-UT - Sun Jul 26, 2009 11:13 am
I've got it up and running with SQ8L on OS X 10.5.7. The instructions were brilliant.

Live didn't recognise Wacvst with the additional files for SQ8L (a folder containing a .ini file and a readme). Removing those let both Kore and Live recognise the VST and it seems to run fine. The applications seem to have some trouble quitting and attempting to run two instances of the same plug-in causes both to go silent whether the plug-ins are run from Live direct or inside different instances of Kore. However, I'm happy enough to have just one running: I can at least sample the output.
Gamma-UT - Sun Jul 26, 2009 11:43 am
It's a bit crashy, but it remains a big step forward from having to use network MIDI to talk to a second machine running Windows.
douglashorner - Sun Jul 26, 2009 11:49 am
Wow vst - au works.
Projects with drop down pluginshell folders cannot be recalled.
retroware - Sun Jul 26, 2009 4:36 pm
A couple of comments from the developer:

First, thanks to Bryan for the documentation.

Second, I wouldn't expect that one could wrap multiple different vsts. There is a hard coded package name in the source code which wacvst uses to find the configuration file. I've yet to come up with a good way of wrapping multiple vsts. Douglas, did your technique work? If so, I'm a bit surprised.

I'm also not surprised that multiple instances of a vst is not working. I'm guessing that there are one or more state variables that are being shared incorrectly.

Wacvst currently supports all of the vst1.0 spec and about 30% of the vst 2.1/2.2 spec. A lot of the un-implemented functionality has to deal with automation and plugin to host midi. Supporting the full spec is basically a matter of some relatively simple but time consuming programming. Once the full spec is implemented, most vsts should work. If you are interested in adding the additional functionality, drop me a pm and I'll add you to the svn access list.

As Bryan mentioned, if one is having problems getting a particular vst working, try adding all of the vsts's support files to wacvst's resource directory and/or adding dlls to the system32 directory.

Has anyone tried getting wacvst working with codeweaver's crossover mac product? This is a commercial version of wine and would negate the need to download and build wine. Maybe when I get the time I'll download codeweaver's demo and give it a try.

Finally, I second Byran's suggestion to post one's experiences with wacvst. It will help move it forward to a useful tool.
Bryan J - Mon Jul 27, 2009 2:21 am
Thanks for the positive feedback on the instructions... Writing them was well worth the effort if this continues as it has.

Unfortunately, I sadly have to report that my MacBook HD crashed pretty hardcore this morning (argh)... Not like a "fix it with Disk Warrior" type crash, but rather, the "clicks of death" type crash. As a result, I wasn't able to do as thorough of a test on the new version as I'd wanted... but here's what I was able to find so far before it croaked:

I was able to get Messiah running in Logic with *some* response over MIDI, but it was very intermittent... almost like the behavior that you get from having a bad MIDI cable. If I pressed down on just one key then I usually wouldn't get any response, but if I pressed a bunch of keys simultaniously, then a few notes would get through to Messiah, and most of them would end up being stuck notes. I should also point out that I could clearly see that Logic was receiving all the events. They're just not reaching Messiah... like they were just getting dropped. I also noticed that the the CPU meter was bouncing around quite a bit. This didn't however seem to be the case when I was playing Messiah's keyboard with the mouse.

All this to say Dave, don't spend a bunch of time on this yet... I only want to mention this right now in the event that there might be something glaringly obvious that might be the cause for MIDI events getting dropped. Otherwise, let me get more information... i.e. whether or not Messiah will work with a true VST host through wacdav (rather than being double-wrapped), and also what other plugins work or don't work when they're double-wrapped. Also... I am curious Dave (or anyone else)... since XQuartz and Wine are involved in this solution, is there any way that we can influence the priority of those processes and/or their processor affinity? (Can we even specify processor affinity on a Mac?)

Another observation is that it does appear that program names are indeed being updated correctly in Logic and Logic's program changes are now being received correctly on the plugin. Way cool.

Other than that, I probably won't be of much help until after this coming weekend when I'll have the time to get my computer back in order... but I hope everyone keeps trying this out in the mean time. It's good stuff!! =)
koalaboy - Mon Jul 27, 2009 3:55 am
It's probably a very (very) silly question, but I'll risk it anyway Laughing

Is the main reason that Wine is required, due to the GUIs ? I'm assuming (probably very stupidly) that the audio API should be pretty much cross-platform ?

I'm just wondering if things would be simpler with host-generated parameter GUIs, or if the windows runtime DLLs are often referenced a lot from the plugins which is why Wine is required.

Equally, with mention of IPC, has anyone thought about (if it's possible) working with umd to build an AU plugin that acts as an IPC client to a wine-based IPC server ?

Just brain-dumping and probably all highly unfeasible Embarassed
mustgroove - Mon Jul 27, 2009 11:50 pm
Wow, haven't checked back on this thread in a while and what do you know, progress!!!

Will check that method out tonight, but hopefully something with Crossover is feasible to avoid all that compilin' Wink
mustgroove - Tue Jul 28, 2009 12:59 am
Also, Bryan J - is there any particular reason why downloading Xcode from ADC is required, or will the copy that comes on the OS X install disc suffice?
arakula - Tue Jul 28, 2009 1:48 am
koalaboy wrote:
Is the main reason that Wine is required, due to the GUIs ? I'm assuming (probably very stupidly) that the audio API should be pretty much cross-platform ?

The problem starts at a much deeper level... the executable file format used by Windows differs from the one used by Mac OSX (and Linux). Wine is necessary to load the Windows DLLs; and these as sure as hell contain quite a lot of references to other Windows DLLs, which are provided by Wine. Even without any graphics operations.
analoguesamples909 - Tue Jul 28, 2009 2:15 am
I have a Crossover installation - would anybody mind advising me on how the wacvst installation differes from the previous page when using Crossover over Wine?
Bryan J - Tue Jul 28, 2009 8:21 am
SWAN808 wrote:
I have a Crossover installation - would anybody mind advising me on how the wacvst installation differs from the previous page when using Crossover over Wine?


In this case, you would probably just need to know the path to Wine used by Crossover for wacvst when you're editing the config.plist file.
Bryan J - Tue Jul 28, 2009 8:38 am
mustgroove wrote:
Also, Bryan J - is there any particular reason why downloading Xcode from ADC is required, or will the copy that comes on the OS X install disc suffice?


There are several versions out there of Wine, XQuartz, and Xcode. I made an effort to document a procedure that would get people up and running with what I know was working on my system in order to avoid questioning to many variables afterward. With that said, versions from other sources may or may not work just fine. If so, let us know. It would certainly be ideal to shorten the install procedure as much as possible.
goonzy - Tue Jul 28, 2009 9:20 am
One of teh best news of this month for me.. GREAT JOB...

I'll have a try with the VSTi I want to use on my mac (which is not fully standard as it's a controller for a hardware synth. Bought it as the dev promised an OSX version and itnever occured...

I'll try it tonight when I'm home :p
retroware - Tue Jul 28, 2009 2:41 pm
Bryan J wrote:
SWAN808 wrote:
I have a Crossover installation - would anybody mind advising me on how the wacvst installation differs from the previous page when using Crossover over Wine?


In this case, you would probably just need to know the path to Wine used by Crossover for wacvst when you're editing the config.plist file.


I've been playing with this a bit and unfortunately, its not going to be quite that easy. Crossover uses a bunch of environment variables to get all of their components to communicate with each other, several of which change somewhat dynamically with each launch of crossover. Getting this to work with the current wacvst architecture might be a bit tricky.
djsubject - Wed Jul 29, 2009 1:56 am
interesting thread!!!
sin night - Mon Aug 03, 2009 1:06 am
I just tried it and it seems to work, now I have to test it carefully with some plugins I'm missing from my windows days to find out how much stable is the current release, however this is a great piece of software! Praise to the dev! Love
mustgroove - Tue Aug 04, 2009 4:46 am
Just tried this procedure out and it's all worked out so far, except that wacvst.vst appears as a folder in Finder, so there's no "Show Package Contents" option in the right-click menu... Live doesn't seem to be recognising wacvst.vst as a plugin either.

Any tips on this situation?
djanthonyw - Tue Aug 04, 2009 4:54 am
I had the same problem when trying it twice with it not showing up as a plugin.
mustgroove - Tue Aug 04, 2009 4:56 am
Not sure how, but it works perfectly now, even with the wacvst.vst appearing as a folder rather than a package.

Wow it works spectacularly well for simple stand-alone plugins... The Voxengo plugins which haven't been ported yet (like Marquis) run in demo mode, and considering that their registration scheme is registry-based (from what I can gather) I'm not entirely sure how to get them to run properly using this system... anyone have any clues?

But overall I'm very impressed and it seems entirely possible that this could be turned into a commercial product - Crossover Studio or something similar. I'd buy it for sure, I'd even invest in it's development.
djanthonyw - Tue Aug 04, 2009 5:03 am
djanthonyw wrote:
I had the same problem when trying it twice with it not showing up as a plugin.
Crying or Very sad
Gamma-UT - Tue Aug 04, 2009 5:09 am
mustgroove wrote:
Just tried this procedure out and it's all worked out so far, except that wacvst.vst appears as a folder in Finder, so there's no "Show Package Contents" option in the right-click menu... Live doesn't seem to be recognising wacvst.vst as a plugin either.

Any tips on this situation?


You need to set the 'bundle bit'. This is easy in Pathfinder, just choose Show Info and find the bit where it says 'Set bundle bit'. I don't think there's an easy way to do that from the Finder.
mustgroove - Tue Aug 04, 2009 5:15 am
Electri-Q works as well but looks like it would face a copy protection issue too - $20 says that if I sent the challenge code off to Aixcoustic, the response generated wouldn't be "valid" to actually register the plugin
mustgroove - Tue Aug 04, 2009 5:33 am
There's also the issue of whether it's possible to have PC-to-Mac compatibility of projects containing wacvst instances of plugins... having wacvst just load the plugins is great, but if it's possible to have compatibility for PCs to open wacvst-containing projects (and vice versa) that would tip this over the edge into super-awesome land Smile
djanthonyw - Tue Aug 04, 2009 5:36 am
Maybe I'll try it again when I'm back on location... I really just want to use z3ta on my Mac. Prayer
djanthonyw - Tue Aug 04, 2009 12:16 pm
Does X11 have to be running for wrapper plugin to show up in the host?
Gamma-UT - Tue Aug 04, 2009 12:33 pm
djanthonyw wrote:
Does X11 have to be running for wrapper plugin to show up in the host?


X11 should fire up automatically when the plug-in starts but it doesn't have to be running to show up in the host list - however I've only tried this in Live because Logic doesn't like VSTs. Have you tried loading Wacvst into Bidule - I think one of the versions of that is free. It might help with debugging the problem rather than trying to use an AU-VST adapter in Logic, especially as Logic does the preload AU testing thing, which can cause its own problems.

Also try wrapping a simple VST first, such as SQ8L (which I know does work), as that can help get it up and running before trying a more complex VST.
djanthonyw - Tue Aug 04, 2009 12:35 pm
I've been trying it in Live 7, there's a demo of Bidule standalone, but not the plugin.
Gamma-UT - Tue Aug 04, 2009 12:41 pm
djanthonyw wrote:
I've been trying it in Live 7, there's a demo of Bidule standalone, but not the plugin.


It didn't show up at first in Live 8 with SQ8L. I first set the bundle bit on the Wacvst folder then removed a couple of ancillary files that came with SQ8L and then it worked (I think that was all that I changed to get that to work).
djsubject - Sun Aug 16, 2009 3:59 am
Hmmmm,

anyone got energyXT vst (demo or full) working?

this project is looking really interesting!!

Subz
mustgroove - Sun Aug 16, 2009 4:32 am
Anyone using this succesfully on Snow Leopard as yet? I upgraded tonight and unfortunately it deleted the /opt folder (where wine compiled to), and I haven't recompiled it as yet unfortunately...
beeswaks - Wed Aug 19, 2009 6:04 am
Hi,

Just letting you know none of Bootsie's plugins (http://varietyofsound.wordpress.com/downloads/) work, X11 2.4.0 crashing here on OSX.5.8...

A lot of other (even SE based) plugins do work,,, brilliant!
mustgroove - Mon Aug 24, 2009 6:16 pm
Just wanted to bump this one, on the Snow Leopard issue... wacvst isn't working in Snow Leopard unfortunately, been playing around with it an although Wine is correctly compiled and sitting in the appropriate directory, when I load a wacvst-wrapped plugin, Live 8 crashes.

My theory is it could be to do with the version of X11 that comes with SL (2.3.4). I tried installing 2.3.3.2 from the link Bryan J included in his awesome instructions, but it refused to install (saying "This version is designed for Leopard").

Any chance you might be able to revisit wacvst from a Snow Leopard-compatibility point of view?
djsubject - Mon Aug 24, 2009 6:25 pm
why dose wine OSX need compiling? Crying or Very sad
Fidelity - Wed Sep 23, 2009 10:49 am
Does anyone have this working on OS X 10.6.1? I tried installing wine through macports using porticus and it looks like there's a problem with freetype -- when I try to install fontconfig after installing freetype 2.3.9_1 with the +macosx+universal options it gives me the following error:

Quote:
checking for freetype-config.. no
configure: error: You must have freetype installed; see http://www.freetype.org/

Error: Status 1 encountered during processing.
Executing: /opt/local/bin/port install fontconfig +universal +macosx


...and ends up not installing it. I tried building freetype previously without the universal option and wine-devel said it wasn't installed...Help
mustgroove - Thu Sep 24, 2009 5:28 am
I'm having a different issue - trying to compile wine on 10.6.1 doesn't seem to work at all... I think it's related to Macports rather than Porticus but I'm not sure.. Here's the error message:

"Port command started with PID 1070
Computing dependencies for wine-devel
Error: Unable to execute port: can't read "build.cmd": Failed to locate 'make' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?"

I've tried uninstalling & reinstalling both Porticus and Macports, to no avail... any ideas what could be going wrong? Or is it simply a case of waiting for Macports and/or Porticus to be updated?
Fidelity - Thu Sep 24, 2009 6:15 am
mustgroove wrote:
I'm having a different issue - trying to compile wine on 10.6.1 doesn't seem to work at all... I think it's related to Macports rather than Porticus but I'm not sure.. Here's the error message:

"Port command started with PID 1070
Computing dependencies for wine-devel
Error: Unable to execute port: can't read "build.cmd": Failed to locate 'make' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?"

I've tried uninstalling & reinstalling both Porticus and Macports, to no avail... any ideas what could be going wrong? Or is it simply a case of waiting for Macports and/or Porticus to be updated?


Did you install Xcode and the rest of the dev. tools off the OS X CD? If you haven't, try that. 'Make' is a binary and isn't tied to macports/porticus, so your issue extends systemwide (thankfully, unlike linux, mac OS is heavily based on self installers and not software that builds on spot from code). While you're at it, make sure you have X11 installed on your system (available under "optional installs" on the OS X cd)

If you've already installed/reinstalled xcode, try searching for a mac installer of 'make' (I tried searching google but it saw 'make' as english and not as the software's name).
Fidelity - Thu Sep 24, 2009 6:41 am
djanthonyw wrote:
Where can I download the binary of Wine from?


Darwine is the OS X binary version, but as stated earlier in the thread, it's not exactly the same. It also made my system kernel panic yesterday while running TriX to install a number of updates that would be *really* useful for me to run other programs (though I'm not sure if they're necessary for WACVST).

You're better off getting macports and porticus -- with the gui, it's really easy to use. Type in wine, select from list, press install, ignore options and click ok, sit back and relax (for two hours) while it installs Very Happy
mustgroove - Thu Sep 24, 2009 7:32 am
Hmm ok so installing Xcode from the Snow Leopard DVD did the trick for my previous issue, but now I have a new one... one all the dependent packages were installed, I got the following error when trying to compile Wine itself:

Quote:
Port command started with PID 22507
Computing dependencies for wine-devel
Configuring wine-devel
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_x11_wine-devel/work/wine-1.1.29" && ./configure --prefix=/opt/local --x-include=/opt/local/include --x-lib=/opt/local/lib --disable-win16 " returned error 1
Command output: checking for xmlParseMemory in -lxml2... no
checking for xmlReadMemory in -lxml2... no
checking for xmlNewDocPI in -lxml2... no
checking for libxslt/pattern.h... yes
checking for libxslt/transform.h... yes
checking for -lxslt... not found
checking dbus/dbus.h usability... no
checking dbus/dbus.h presence... no
checking for dbus/dbus.h... no
checking hal/libhal.h usability... no
checking hal/libhal.h presence... no
checking for hal/libhal.h... no
checking gnutls/gnutls.h usability... no
checking gnutls/gnutls.h presence... no
checking for gnutls/gnutls.h... no
checking for -lncurses... not found
checking for mousemask... no
checking for sane-config... no
checking sane/sane.h usability... no
checking sane/sane.h presence... no
checking for sane/sane.h... no
checking for gphoto2-config... no
checking for gphoto2-port-config... no
checking gphoto2-camera.h usability... no
checking gphoto2-camera.h presence... no
checking for gphoto2-camera.h... no
checking for freetype-config... freetype-config
checking for -lfreetype... not found
configure: error: FreeType 32-bit development files not found. Fonts will not be built.
Use the --without-freetype option if you really want this.
Error: Status 1 encountered during processing.
Executing: /opt/local/bin/port install wine-devel


Any clue what could be going on?
Fidelity - Thu Sep 24, 2009 3:59 pm
mustgroove wrote:
Hmm ok so installing Xcode from the Snow Leopard DVD did the trick for my previous issue, but now I have a new one... one all the dependent packages were installed, I got the following error when trying to compile Wine itself:

Quote:
Port command started with PID 22507
Computing dependencies for wine-devel
Configuring wine-devel
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_x11_wine-devel/work/wine-1.1.29" && ./configure --prefix=/opt/local --x-include=/opt/local/include --x-lib=/opt/local/lib --disable-win16 " returned error 1
Command output: checking for xmlParseMemory in -lxml2... no
checking for xmlReadMemory in -lxml2... no
checking for xmlNewDocPI in -lxml2... no
checking for libxslt/pattern.h... yes
checking for libxslt/transform.h... yes
checking for -lxslt... not found
checking dbus/dbus.h usability... no
checking dbus/dbus.h presence... no
checking for dbus/dbus.h... no
checking hal/libhal.h usability... no
checking hal/libhal.h presence... no
checking for hal/libhal.h... no
checking gnutls/gnutls.h usability... no
checking gnutls/gnutls.h presence... no
checking for gnutls/gnutls.h... no
checking for -lncurses... not found
checking for mousemask... no
checking for sane-config... no
checking sane/sane.h usability... no
checking sane/sane.h presence... no
checking for sane/sane.h... no
checking for gphoto2-config... no
checking for gphoto2-port-config... no
checking gphoto2-camera.h usability... no
checking gphoto2-camera.h presence... no
checking for gphoto2-camera.h... no
checking for freetype-config... freetype-config
checking for -lfreetype... not found
configure: error: FreeType 32-bit development files not found. Fonts will not be built.
Use the --without-freetype option if you really want this.
Error: Status 1 encountered during processing.
Executing: /opt/local/bin/port install wine-devel


Any clue what could be going on?


Freetype is only building a 64-bit version. You need to uninstall fontconfig first, uninstall freetype and reinstall it with the "Universal" option -- and then reinstall fontconfig. That last bit is the part I'm getting tripped up on -- but if it works for you, go ahead and try building wine after that.
Fidelity - Thu Sep 24, 2009 4:12 pm
False alarm. No luck still using macports and "port install freetype +universal" -> "port install fontconfig" ><
Fidelity - Sat Sep 26, 2009 4:52 pm
Successfully built wine on snow leopard! Uninstalled macports (and all related files -- run "port uninstall installed" before you delete it), reinstalled snow leopard version and self updated, ran "port install freetype +universal" and then "port install fontconfig +universal", then "port install wine-devel +universal" and it compiled -- there's the answer for those of you still trying to get it to work.
mustgroove - Mon Sep 28, 2009 5:32 am
Awesome Smile But can you confirm that wacvst actually works? That being the ultimate aim of all this...
Fidelity - Mon Sep 28, 2009 8:57 am
Well, I messed up the install trying to get wine-crossover-games installed instead (thinking it'd be better optimized for audio) and no amount of cleaning installs / deleting files / uninstalling and reinstalling macports has gotten wine to compile since. I'll keep you posted when I figure out how to make wine-devel compile again.
Fidelity - Mon Sep 28, 2009 3:36 pm
Ok, rebuilt wine, installed and ran winetricks (with a number of updates, don't remember which) and tried running wacvst through Ableton Live. Wrapped plugin doesn't show up in list of VSTs -- I think DSSI is crashing in wine when it tests it.

Anyone find a workaround for this issue? I tried building DSSI but it doesn't want to compile with GCC.
Fidelity - Mon Sep 28, 2009 8:34 pm
Wow, this thread's gotten over 8000 views but nobody else is saying anything Shocked
mistertoast - Mon Sep 28, 2009 8:49 pm
Fidelity wrote:
Wow, this thread's gotten over 8000 views but nobody else is saying anything Shocked


Well, it's interesting to watch. If something like this were solid, I'd do more music on the Mac.
retroware - Tue Sep 29, 2009 6:04 pm
I've managed to get wacvst working on 10.6. However, it does require the use of the terminal as opposed to one of the GUI based ports solutions. The good news is that one doesn't have to build X11 and the wine build is pretty simple.

Here is what I did:

Install Xcode 3.2

Check the /Applications/Utilities directory. If the X11 application is not there, install it
from the Optional Installs directory off of the 10.6 install disk

download wine from:

http://sourceforge.net/projects/wine/files/Source/wine-1.1.30.tar.bz2

mkdir wine-build

cp wine-1.1.30.tar.bz2 wine-build

cd wine-build

bunzip2 wine-1.1.30.tar.bz2

tar xf wine-1.1.30.tar

cd wine-1.1.30

./configure

make depend

make (go get a cup of coffee - this will take a while)

sudo make install (this will install wine in /usr/local)

winecfg (this will create a ~/.wine directory)
mustgroove - Tue Sep 29, 2009 11:59 pm
Thanks so much for that retroware Smile I completed those instructions sucessfully, and I made sure to update the wacvst plist files to reflect the new location of wine (/usr/local instead of /opt/local), but unfortunately the plugins themselves aren't working...

When I try to load wacvst plugins, X11 starts up but Live 8.0.5 gives an error saying the plugin is not compatible with Live... this is better than what was happening before (Live was crashing entirely) but still the plugins aren't working... do you have any other clues as to what might need to be done?
retroware - Wed Sep 30, 2009 4:37 am
mustgroove wrote:
Thanks so much for that retroware Smile I completed those instructions sucessfully, and I made sure to update the wacvst plist files to reflect the new location of wine (/usr/local instead of /opt/local), but unfortunately the plugins themselves aren't working...

When I try to load wacvst plugins, X11 starts up but Live 8.0.5 gives an error saying the plugin is not compatible with Live... this is better than what was happening before (Live was crashing entirely) but still the plugins aren't working... do you have any other clues as to what might need to be done?


I only have live 7 and am somewhat hesitant to install the 8 demo in fear that it will conflict with my 7 installation. Wacvst wrapped plugins seem to work under 7. Did wacvst wrapped plugins work for you under 10.5 and Live 8? If not, maybe 8 is pickier about what functions a plugin needs to advertise. Do you have a version of Live 7 that you could try wacvst on?
mustgroove - Thu Oct 01, 2009 3:18 am
wacvst-wrapped plugins were working fine in 10.5.8 with Live 8.0.4 (which was the most recent version available at the time)... I upgraded to Snow Leopard from 10.5.8 (rather than reformatting & starting fresh), and wacvst plugins didn't work - they crashed Live...

I then tried compiling wine again but came up with all the issues I've posted earlier in this thread... and now I've just tried your new method of compiling wine, which appears to have worked, but still isn't loading wacvst plugins properly - I get the "not compatible with Live" error Sad
Fidelity - Thu Oct 01, 2009 11:58 am
Can't get wacvst to show up in live -- built wine according to your latest post (it's in /usr/local/bin/wine), moved it to /library/audio/plug-ins/VST, set the bundle bit using setfile -a B /library/audio/plugins/VST/wacvst, copied glitch (dblue_Glitch_v1_3.dll) to the resources folder, set the config.plist file to reflect the filename (dblue_Glitch_v1_3 with no .dll at the end) -- and when live 7 scans VSTs, it covers it and X starts -- nothing happens (although minutes later I get a 'wineboot' error)...
Fidelity - Tue Oct 06, 2009 8:19 am
Can't make wacvst work no matter what I do. It start up X when live scans for plugins, but nothing happens after that. Now testing w/ Greenoak's crystal; file in resources directory, config.plist set to "Crystal" for file name. Help
retroware - Sun Oct 11, 2009 1:39 pm
I've managed to replicate the problem that Fidelity was having with Live and 10.6. It doesn't look to be a fundamental problem and hopefully I'll have a new version shortly.
mustgroove - Sun Oct 11, 2009 8:51 pm
Excellent news!!! Much appreciated Smile
Fidelity - Tue Oct 13, 2009 4:16 pm
Yay! Thanks! hyper
retroware - Wed Oct 14, 2009 3:37 pm
Hmmm, the problem seems to be a bit more subtle than I originally thought. I am however working on it and hope to have a 10.6 compatible version out not to far in the future.

What is curious is that wacvst works fine using Live 7.0.10 under Snow Leopard but not 7.0.16. I'm still trying to figure out exactly why. I'm guessing that whatever the problem is, its the same problem that is causing Live 8/Snow Leopard to fail.

Are any other developer types playing with wacvst? Any help in figuring out what might be the problem would be greatly appreciated. I pretty much just work on wacvst in my spare time as an interesting "experiment".
retroware - Mon Oct 26, 2009 6:02 pm
A new version of wacvst is available at:

https://sourceforge.net/projects/wacvst/files/wacvst/wacvst-bin-0.3.zip/download

This new version:

Appears to work under 10.6
Allows for more than one wacvst instance
Tracks with a wacvst plugin can be deleted without crashing the host.

Source tarballs are no longer being distributed. The source is available through sourceforge svn.
mustgroove - Mon Oct 26, 2009 8:55 pm
Much appreciated mate!!! Have only had a couple minutes to test it so far and I can't get to work as yet, Live [8.0.8] is scanning and recognising my wacvst-wrapped plugin, and X11 is opening while it does this, but when the Live GUI eventually pops up the plugin is missing from my plugin folder...

I'll retry your newer method for compiling Wine and give it a more thorough go later tonight, and post my results back here.
retroware - Tue Oct 27, 2009 3:04 am
mustgroove wrote:
Much appreciated mate!!! Have only had a couple minutes to test it so far and I can't get to work as yet, Live [8.0.8] is scanning and recognising my wacvst-wrapped plugin, and X11 is opening while it does this, but when the Live GUI eventually pops up the plugin is missing from my plugin folder...

I'll retry your newer method for compiling Wine and give it a more thorough go later tonight, and post my results back here.


Also try this:

Remove wacvst from your plugin directory.
Start Live and then exit.
Put wacvst back into the plugin directory (to force a rescan)
Start X11 by just double clicking the X11 icon. - Do this before starting Live
Start Live.

When Live first scans, I've found that if a plugin doesn't fully initialize within a certain amount of time, then Live doesn't recognize it. If X isn't running, initialization can take a bit of time since X needs to get fired up. Prestarting X solves this problem. This is only an issue the first time one adds wacvst to the plugin folder. After that, Live will wait for X to get started.
mustgroove - Tue Oct 27, 2009 3:44 am
Yup I did the remove-to-rescan trick Smile Just tried having X11 open when Live rescanned wacvst but didn't work unfortunately... am now retrying everything from scratch - recompiling Wine using your command line method is up first...

Will post back with my results
mustgroove - Tue Oct 27, 2009 4:49 am
OK so still no love unfortunately...

- I removed wacvst.vst from my VST folder & ran Live to clear the plugin from its cache...

- Then I ran X11 as you suggested, to hopefully ease the scanning process

- Then I copied wacvst.vst back to my VST folder and ran Live... it scanned wacvst.vst for a good 10 seconds or so, but when the Live is done booting up and the GUI finally shows up, the plugin is nowhere to be found in the plugins folder.

X11 isn't crashing, Live isn't crashing, Live isn't giving a "wacvst isn't compatible with Live" (which it used to do), it's just not showing up in the plugins list...

Are there any logs I can send which would help you pinpoint the problem? Or perhaps is my Wine no compiled properly? I used your commandline method but there's so much verbose feedback from the compiler, who knows if there's any error messages in there I may have missed...
Fidelity - Mon Nov 09, 2009 9:57 pm
mustgroove - the following should help wacvst show up in scans.


Open terminal.

Type "/library/audio/plug-ins/VST/"
Type "SetFile -a BI wacvst.vst"

Close terminal.

As far as clearing the live plugin cache goes, here's an easier trick --

Go to /library/audio/plug-ins in finder, and make a new folder (e.g. WinVST).
In live's preferences, choose "use custom VST plugin folder", and select the folder you just made.
Every time you want to rescan wacvst, turn the "use custom VST plugin folder" off and on.







FYI, the snow leopard alpha of XQuartz works smoothly with SL / wine / wacvst.

My desktop is back on leopard (had massive issues with snow leopard not recognizing drives and freezing constantly...I think there might be something wrong with my mac that apple's retail stores can't seem to find) and I've found that wacvst 0.2 works a lot better than 0.3.

Here's my latest bug report --

- 0.3 breaks firebird+ (at least in demo mode, waiting for license transfer to use full version), mostly works in 0.2 (changing presets occasionally causes Live to crash, I haven't pinpointed the issue -- I believe it has something to do with any voices playing at all when it shifts, but even when it seems like they're all off, it'll crash after I've changed waveforms and then picking a different preset). Perhaps the process needs to be paused when a preset change is sent and then resumed after it enters the wrapped plugins' queue?

- Application focus with XQuartz/X11 causes sound to stop if I leave the mouse button down for too long while tweaking a knob or selecting from a drop-down box's list. Perhaps some sort of client/server accelerator or hook (I don't know the mac equivalents) would solve this?

- (Known) - you can only have one plugin wrapped with WacVST, regardless of what parameters you change in the .plist files (bundle identifier, etc) or ableton crashes on VST scan. Could this have something to do with DSSI and how it hooks into the wrapped audio drivers? If so, it looks like you may need to do a server/client setup with DSSI running in the background and connecting to plugins on demand.
Ad0 - Tue Nov 10, 2009 5:09 pm
What host can I test this in?
I have wine-devel installed with X11 2.4.1 alpha 3
I tried MissWatson but it gave me:

EDIT: nevermind, got it to work Smile

There are 277 posts in this topic.
Page: 1 2 3