64 bit plugins -what support is available in Juce?

Discuss issues relating to audio plugins

Re: 64 bit plugins -what support is available in Juce?

Postby ckk » Fri Oct 14, 2011 12:49 pm

I'm also using an older juce version (1.53.87) and I was able to build a 32/64-bit vst with the suggestions given in this thread.

I made the following changes:
- enable 64-bit VST build in juce_IncludeCharacteristics.h (post) :
(I think already done in the latest non-modules tip)
Code: Select all
#if __LP64__  // (disable VSTs and RTAS in a 64-bit build)
//    #undef JucePlugin_Build_VST
    #undef JucePlugin_Build_RTAS
#endif


- disable compiling of updateComponentPos() and viewBoundsChangedEvent() in juce_VST_Wrapper.mm (post):
(also already done in latest non-modules tip)
Code: Select all
#if ! JUCE_64BIT // new
static void updateComponentPos (Component* const comp)
{
   HIViewRef dummyView = (HIViewRef) (void*) (pointer_sized_int)
   comp->getProperties() ["dummyViewRef"].toString().getHexValue64();
   
   HIRect r;
   HIViewGetFrame (dummyView, &r);
   HIViewRef root;
   HIViewFindByID (HIViewGetRoot (HIViewGetWindow (dummyView)), kHIViewWindowContentID, &root);
   HIViewConvertRect (&r, HIViewGetSuperview (dummyView), root);
   
   Rect windowPos;
   GetWindowBounds (HIViewGetWindow (dummyView), kWindowContentRgn, &windowPos);
   
   comp->setTopLeftPosition ((int) (windowPos.left + r.origin.x),
                                          (int) (windowPos.top + r.origin.y));
}

static pascal OSStatus viewBoundsChangedEvent (EventHandlerCallRef, EventRef, void* user)
{
   updateComponentPos ((Component*) user);
   return noErr;
}
#endif  // new


- The changes given here for resizing.

The plugin seems to run in Cubase, Reaper but not Studio One with the mentioned GUI not showing in Studio One, though I only tested on 10.6.


Chris
ckk
JUCE UberWeenie
 
Posts: 218
Joined: Thu May 20, 2010 7:43 pm

Re: 64 bit plugins -what support is available in Juce?

Postby lelepar » Fri Oct 28, 2011 2:16 pm

Thank you very much Chris, now my 64 bit VST plugin is recognized by Cubase 6 on Mac!
User avatar
lelepar
JUCE Geek
 
Posts: 31
Joined: Thu Apr 01, 2010 11:36 am

Re: 64 bit plugins -what support is available in Juce?

Postby Salvator » Tue Nov 15, 2011 2:23 pm

Hello,

Thanks to this useful thread, I was able to build hudge universal 32UB/64 bits plugins.
Now on a fresh OSX 10.7.2 with Xcode 4.2, errors are back when trying to do 64 bits.
Code: Select all
/juce/trunk/extras/audio plugin demo/Builds/MacOSX/../../../../modules/juce_audio_plugin_client/VST/../utility/juce_CarbonVisibility.h:60:5: error: use of undeclared identifier 'GetWindowEventTarget' [3]

This is building the juce demo plugin, straight out from the git tip.

Note : I need to use the 10.7 SDK otherwise, when trying 10.6 there's plenty of semantic errors like this one :
In ComponentBase.h : Unknown type name 'AudioComponentPlugInInterface'; did you mean 'AudioComponentPlugInInstance'?


Would be great to be able to use the latest OS/Xcode.
Even if it looks like it's time to stop PPC support...

Any idea ?

Salvator
Salvator
JUCE UberWeenie
 
Posts: 179
Joined: Mon May 18, 2009 9:01 pm

Re: 64 bit plugins -what support is available in Juce?

Postby valhallasound » Tue Dec 13, 2011 5:14 am

I followed the suggestions at the top of this page, and things are working great in OSX Cubase 6! Woo-hoo! Thanks to everyone in this thread for the valuable suggestions!

Two questions:

- When I test the 64-bit VST in OSX Reaper, it is unable to find my presets. I keep my cross-platform presets in the same directory as the Audio Unit presets. Any idea why Reaper can't see these? It doesn't matter all that much, as Reaper can run 64-bit AUs as well, but it is a weird little bug.

- Are there any other 64-bit VST hosts for OSX that I need to worry about, that are unable to run 64-bit AUs? People have discussed the issues with Studio One and 64-bit Juce VSTs, and have also mentioned that Studio One can run Audio Units, which seems like a fine solution to me.

Sean Costello
valhallasound
JUCE UberWeenie
 
Posts: 393
Joined: Wed Apr 09, 2008 1:30 am

Re: 64 bit plugins -what support is available in Juce?

Postby in23d » Fri Mar 23, 2012 9:34 am

- disable compiling of updateComponentPos() and viewBoundsChangedEvent() in juce_VST_Wrapper.mm (post):
(also already done in latest non-modules tip)


How do you disable compiling? I don't get it. thanks! It's late hear:)
in23d
JUCE Obsessive
 
Posts: 55
Joined: Fri May 22, 2009 4:59 am

Re: 64 bit plugins -what support is available in Juce?

Postby ckk » Fri Mar 23, 2012 10:03 am

in23d wrote:How do you disable compiling? I don't get it. thanks! It's late hear:)

The "#if ! JUCE_64BIT" ... "#endif" block won't get compiled for 64-bit targets.


Chris
ckk
JUCE UberWeenie
 
Posts: 218
Joined: Thu May 20, 2010 7:43 pm

Re: 64 bit plugins -what support is available in Juce?

Postby valhallasound » Mon Apr 23, 2012 6:46 pm

Just thought I'd mention that the latest update of Presonus Studio One (version 2.0.5) fixes an issue that Studio One had with Juce-based 64-bit OSX VSTs. Previously, such plugins would show up with grey (blank) GUIs. I just tested my 64-bit OSX VSTs in the 2.0.5 update, and the GUIs work well and are responsive. So, kudos to Presonus!

Sean Costello
valhallasound
JUCE UberWeenie
 
Posts: 393
Joined: Wed Apr 09, 2008 1:30 am

Previous

Return to Audio Plugins

Who is online

Users browsing this forum: No registered users and 1 guest