Totally tearing my hair out trying to get mainstage to find components built with JUCE

Anyone have any tips ?
Sometimes they appear sometimes not.
Once they appear they stay there but if I rename and rebuild they are gone and I spend hours trying to make them show up.



This has consumed hours and hours today.
Maybe I should be in the apple forums not here. :ambulance: :fire: :fire_engine: :fire_extinguisher: :firefighter:

Sean :sos: :person_tipping_hand: :skull: :skull_and_crossbones: :man_with_gua_pi_mao:

Have you tried this?

1 Like

I tried that killall command. I also tried dragging the file from the caches folder into the trash. I also tried clicking
β€œFull audio unit reset” in Mainstage.
I have put all other components into the trash so I can scan faster .

I also have this horrible looking command which I run too and I am sure someone will tell me is a terrible idea.

sudo xattr -rd com.apple.quarantine *.*


Hardware Overview:

  Model Name:	MacBook Air
  Model Identifier:	Mac14,2
  Model Number:	Z15T0005NLL/A
  Chip:	Apple M2
  Total Number of Cores:	8 (4 performance and 4 efficiency)
  Memory:	24 GB
  System Firmware Version:	8419.80.7
  OS Loader Version:	8419.80.7
  Serial Number (system):	XCK2P29KG5
  Hardware UUID:	493211E1-4015-535F-B450-63371CC8416B
  Provisioning UDID:	00008112-0008318026F9401E
  Activation Lock Status:	Enabled

Screenshot 2023-06-18 at 10.24.55 PM

I tried putting copies in both the user library and the root library

mac os 13.2.1 (22D68)

hmm its not being found by auval

Last login: Sun Jun 18 22:17:33 on console
seanwayland@Air-de-sean ~ % auval -a

    AU Validation Tool
    Version: 1.10.0 
    Copyright 2003-2019, Apple Inc. All Rights Reserved.
    Specify -h (-help) for command options

aufx C5fd Manu  -  seanwayland.com: waylodelayUD2023
aufx Dzgb Manu  -  seanwayland.com: waylodelayUD
aufx bpas appl  -  Apple: AUBandpass
aufx dcmp appl  -  Apple: AUDynamicsProcessor
aufx dely appl  -  Apple: AUDelay
aufx dist appl  -  Apple: AUDistortion
aufx filt appl  -  Apple: AUFilter
aufx greq appl  -  Apple: AUGraphicEQ
aufx hpas appl  -  Apple: AUHipass
aufx hshf appl  -  Apple: AUHighShelfFilter
aufx lmtr appl  -  Apple: AUPeakLimiter
aufx lpas appl  -  Apple: AULowpass
aufx lshf appl  -  Apple: AULowShelfFilter
aufx mcmp appl  -  Apple: AUMultibandCompressor
aufx mrev appl  -  Apple: AUMatrixReverb
aufx nbeq appl  -  Apple: AUNBandEQ
aufx nsnd appl  -  Apple: AUNetSend
aufx nutp appl  -  Apple: AUNewPitch
aufx pmeq appl  -  Apple: AUParametricEQ
aufx raac appl  -  Apple: AURoundTripAAC
aufx rogr appl  -  Apple: AURogerBeep
aufx rvb2 appl  -  Apple: AUReverb2
aufx sdly appl  -  Apple: AUSampleDelay
aufx tmpt appl  -  Apple: AUPitch
aufx vois appl  -  Apple: AUSoundIsolation
aupn ambi appl  -  Apple: AUSoundFieldPanner
aupn hrtf appl  -  Apple: HRTFPanner
aupn sphr appl  -  Apple: AUSphericalHeadPanner
aupn vbas appl  -  Apple: AUVectorPanner
aumu Dvxu Manu  -  JUCE: AUv3SynthPlugin
aumu Ssym Manu  -  www.Seanwayland.com: waylosynth3    Cannot open component: -10875

aumu Ssym Manu  -  Seanwayland: Waylosynth3
aumu dls  appl  -  Apple: DLSMusicDevice
aumu msyn appl  -  Apple: AUMIDISynth
aumu samp appl  -  Apple: AUSampler
aumx 3dem appl  -  Apple: AUSpatialMixer
aumx 3dmx appl  -  Apple: AUMixer3D
aumx mcmx appl  -  Apple: AUMultiChannelMixer
aumx mspl appl  -  Apple: AUMultiSplitter
aumx mxmx appl  -  Apple: AUMatrixMixer
aumx smxr appl  -  Apple: AUMixer
aufc conv appl  -  Apple: AUConverter
aufc defr appl  -  Apple: AUDeferredRenderer
aufc ipto appl  -  Apple: AUNotQuiteSoSimpleTime
aufc merg appl  -  Apple: AUMerger
aufc nutp appl  -  Apple: AUNewTimePitch
aufc splt appl  -  Apple: AUSplitter
aufc tmpt appl  -  Apple: AUTimePitch
aufc vari appl  -  Apple: AUVarispeed
auou ahal appl  -  Apple: AudioDeviceOutput
auou def  appl  -  Apple: DefaultOutputUnit
auou genr appl  -  Apple: GenericOutput
auou rioc appl  -  Apple: AUAudioIO
auou sys  appl  -  Apple: SystemOutputUnit
auou vpio appl  -  Apple: AUVoiceProcessor
augn afpl appl  -  Apple: AUAudioFilePlayer
augn nrcv appl  -  Apple: AUNetReceive
augn sspl appl  -  Apple: AUScheduledSoundPlayer
augn ttsp appl  -  Apple: AUSpeechSynthesis
auol tmpt appl  -  Apple: AUTimePitch
auol vari appl  -  Apple: AUVarispeed
seanwayland@Air-de-sean ~ % 

Well I think I found the reason why.
JUCE wasnt complaining about the parameter version hints it was just building the component file.
I THINK that adding them solved it and made the plugin appear in auval
ie changing

    parameters.push_back(std::make_unique<Parameter>(String("filtFM"), String("filtFM"), String(),
                                                     NormalisableRange<float>(0.f, 1.f, 0.0001f, 0.5f),
                                                     0.3f, filtAttackSliderValueToText, filtAttackSliderTextToValue));

to this

parameters.push_back(std::make_unique<Parameter>(ParameterID(String("filtFM"),1)

Yes, that makes sense. With JUCE 6 based plugins, we used to pass a string as the 1st argument when creating a parameter object. Since JUCE 7 we have been using the ParameterID class. I thought that we had seen a compiler warning while building. Maybe you can see if your compiler warnings could be increased…

thanks I feel like I dont see those compiler warnings all the time … It’s a jassert when I encountered it.