Apple's 'auval' can't see my Symbiosis-ported AU plugins.
- KVRist
- Topic Starter
- 103 posts since 28 Aug, 2011 from United Kingdom
Hi,
I've had a report that the AU version of my plugin 'Gater' fails AU validation in Logic Pro in OS X 10.6.8. Is this the same validation that is performed by Apple's 'auval' tool? I ask because I've been unable to get auval to even register the existence of any of my AU plugins, or any other third-party AU plugins. If I type:
auval -a
I get a list of Apple plugins and nothing alse. My AU plugins run fine, as far as I can tell, in Garage Band, Reaper, Studio One 2 and AU Lab - two of which are made by Apple! I've used Symbiosis's method 2 to port the VSTs over, i.e. copying the VST to the pre-built component package.
Steven Cook.
http://www.spcplugins.com
I've had a report that the AU version of my plugin 'Gater' fails AU validation in Logic Pro in OS X 10.6.8. Is this the same validation that is performed by Apple's 'auval' tool? I ask because I've been unable to get auval to even register the existence of any of my AU plugins, or any other third-party AU plugins. If I type:
auval -a
I get a list of Apple plugins and nothing alse. My AU plugins run fine, as far as I can tell, in Garage Band, Reaper, Studio One 2 and AU Lab - two of which are made by Apple! I've used Symbiosis's method 2 to port the VSTs over, i.e. copying the VST to the pre-built component package.
Steven Cook.
http://www.spcplugins.com
-
- KVRist
- 231 posts since 15 Apr, 2012 from Toronto, ON
I've come across this issue before myself. No, Logic's AU validation is not the same as auval. I'm not exactly sure of the details, but Logic is even more picky about validation than auval.
I tested the plug-in out, and it does indeed fail validation. Here's the report from Logic:
Hope that helps.
I tested the plug-in out, and it does indeed fail validation. Here's the report from Logic:
Code: Select all
PUBLISHED PARAMETER INFO:
# # # 17 Global Scope Parameters:
ERROR: -10879 IN CALL Parameter Value's String
ERROR: -10879 IN CALL Parameter Value's String
ERROR: -10879 IN CALL Parameter Value's String
* * FAIL
--------------------------------------------------
AU VALIDATION FAILED: CORRECT THE ERRORS ABOVE.
--------------------------------------------------
validation result: failed validation
- KVRist
- Topic Starter
- 103 posts since 28 Aug, 2011 from United Kingdom
Thank you. At least it gives me some idea of where to look. I wish I could get auval to work, though.
Steven Cook.
http://www.spcplugins.com
Steven Cook.
http://www.spcplugins.com
-
- KVRist
- 231 posts since 15 Apr, 2012 from Toronto, ON
Since your AUs seem to work in GarageBand, AULab, etc., do they pass validation using "auval -v" after you build the component (in Xcode I assume)?
I'm not quite clear on what you mean by auval not working.
I'm not quite clear on what you mean by auval not working.
- KVRian
- 519 posts since 12 Apr, 2010 from The Netherlands
Weird, because auval -a lists Gater just fine at my end (on Mac OS X 10.6.8 ).
BTW, it reports the same failures as Logic:
BTW, it reports the same failures as Logic:
Code: Select all
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
AU Validation Tool
Version: 1.6.1a1
Copyright 2003-2007, Apple, Inc. All Rights Reserved.
Specify -h (-help) for command options
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
--------------------------------------------------
VALIDATING AUDIO UNIT: 'aumf' - 'SPCg' - 'SPCP'
--------------------------------------------------
Manufacturer String: SPC Plugins
AudioUnit name: Gater
Component Version: 1.3.0 (0x10300)
* * PASS
--------------------------------------------------
TESTING OPEN TIMES:
COLD:
Time to open AudioUnit: 17.670 ms
WARM:
Time to open AudioUnit: 2.919 ms
FIRST TIME:
Time for initialization: 0.004 ms
* * PASS
--------------------------------------------------
VERIFYING DEFAULT SCOPE FORMATS:
Input Scope Bus Configuration:
Default Bus Count:1
Bus Name: input 1
Default Format: AudioStreamBasicDescription: 2 ch, 44100 Hz, 'lpcm' (0x00000029) 32-bit little-endian float, deinterleaved
Output Scope Bus Configuration:
Default Bus Count:1
Bus Name: output 1
Default Format: AudioStreamBasicDescription: 2 ch, 44100 Hz, 'lpcm' (0x00000029) 32-bit little-endian float, deinterleaved
* * PASS
--------------------------------------------------
VERIFYING REQUIRED PROPERTIES:
VERIFYING PROPERTY: Sample Rate
PASS
VERIFYING PROPERTY: Stream Format
PASS
VERIFYING PROPERTY: Maximum Frames Per Slice
PASS
VERIFYING PROPERTY: Last Render Error
PASS
* * PASS
--------------------------------------------------
VERIFYING RECOMMENDED PROPERTIES:
VERIFYING PROPERTY: Latency
PASS
VERIFYING PROPERTY: Tail Time
WARNING: Recommended Property is not supported
VERIFYING PROPERTY: Bypass Effect
WARNING: Recommended Property is not supported
* * PASS
--------------------------------------------------
VERIFYING OPTIONAL PROPERTIES:
VERIFYING PROPERTY Supported Number of Channels
PASS
VERIFYING PROPERTY Host Callbacks
PASS
VERIFYING PROPERTY Instrument Count
PASS
* * PASS
--------------------------------------------------
VERIFYING SPECIAL PROPERTIES:
VERIFYING CUSTOM UI
Carbon View Components Available: 1
auvw SPCg SPCP - SPC Plugins: Gater AUView
PASS
Cocoa Views Available: 0
HAS FACTORY PRESETS
ID: 0 Name: Program 01
ID: 1 Name: Program 02
ID: 2 Name: Program 03
ID: 3 Name: Program 04
ID: 4 Name: Program 05
ID: 5 Name: Program 06
ID: 6 Name: Program 07
ID: 7 Name: Program 08
ID: 8 Name: Program 09
ID: 9 Name: Program 10
ID: 10 Name: Program 11
ID: 11 Name: Program 12
ID: 12 Name: Program 13
ID: 13 Name: Program 14
ID: 14 Name: Program 15
ID: 15 Name: Program 16
VERIFYING CLASS INFO
PASS
TESTING HOST CALLBACKS
PASS
* * PASS
--------------------------------------------------
PUBLISHED PARAMETER INFO:
# # # 17 Global Scope Parameters:
Parameter ID:0
Name: Gate 1
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:1
Name: Gate 2
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:2
Name: Gate 3
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:3
Name: Gate 4
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:4
Name: Gate 5
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:5
Name: Gate 6
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:6
Name: Gate 7
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:7
Name: Gate 8
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:8
Name: Gate 9
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:9
Name: Gate 10
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:10
Name: Gate 11
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:11
Name: Gate 12
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:12
Name: Gate 13
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:13
Name: Gate 14
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:14
Name: Gate 15
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:15
Name: Gate 16
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Parameter ID:16
Name: Mode
Parameter Type: Generic
Values: Minimum = ERROR: -10879 IN CALL Parameter Value's String
, Default = ERROR: -10879 IN CALL Parameter Value's String
, Maximum = ERROR: -10879 IN CALL Parameter Value's String
Flags: Values Have Strings, Readable, Writable
-parameter FAIL
Testing that parameters retain value across reset and initialization
PASS
* * FAIL
--------------------------------------------------
FORMAT TESTS:
Reported Channel Capabilities (explicit):
[2, 2]
Input/Output Channel Handling:
1-1 1-2 1-4 1-5 1-6 1-7 1-8 2-2 2-4 2-5 2-6 2-7 2-8 4-4 4-5 5-5 6-6 7-7 8-8
X
* * PASS
--------------------------------------------------
RENDER TESTS:
Input Format: AudioStreamBasicDescription: 2 ch, 44100 Hz, 'lpcm' (0x00000029) 32-bit little-endian float, deinterleaved
Output Format: AudioStreamBasicDescription: 2 ch, 44100 Hz, 'lpcm' (0x00000029) 32-bit little-endian float, deinterleaved
Render Test at 512 frames
Slicing Render Test at 64 frames
PASS
Render Test at 64 frames, sample rate: 22050 Hz
Render Test at 137 frames, sample rate: 96000 Hz
Render Test at 4096 frames, sample rate: 48000 Hz
Render Test at 4096 frames, sample rate: 192000 Hz
Render Test at 4096 frames, sample rate: 11025 Hz
Render Test at 512 frames, sample rate: 44100 Hz
PASS
Checking connection semantics:
Connection format:
AudioStreamBasicDescription: 2 ch, 44100 Hz, 'lpcm' (0x00000029) 32-bit little-endian float, deinterleaved
PASS
Bad Max Frames - Render should fail
PASS
Checking parameter setting
Using AudioUnitSetParameter
Using AudioUnitScheduleParameter
PASS
* * PASS
--------------------------------------------------
AU VALIDATION FAILED: CORRECT THE ERRORS ABOVE.
--------------------------------------------------
- KVRist
- Topic Starter
- 103 posts since 28 Aug, 2011 from United Kingdom
If I enter: auval -a, I get only Apple AUs listed,
If I enter: auval -v aufx SPCg SPCP, I get:
ERROR: Cannot get Component's Name strings
ERROR: Cannot get Component's Info strings
ERROR: Error from retrieving Component Version for resource: -3000
FATAL ERROR: didn't find the component
If you're thinking that I don't know how to use Terminal, you're right (-;, i'm basically a newbie on OS X. BTW, I'm also using 10.6.8.
With regards to the actual problem reported with my plugin, I think I've tracked it down - another one of those "doh" moments )-;
Steven Cook,
http://www.spcplugins.com
If I enter: auval -v aufx SPCg SPCP, I get:
ERROR: Cannot get Component's Name strings
ERROR: Cannot get Component's Info strings
ERROR: Error from retrieving Component Version for resource: -3000
FATAL ERROR: didn't find the component
If you're thinking that I don't know how to use Terminal, you're right (-;, i'm basically a newbie on OS X. BTW, I'm also using 10.6.8.
With regards to the actual problem reported with my plugin, I think I've tracked it down - another one of those "doh" moments )-;
Steven Cook,
http://www.spcplugins.com
-
- KVRist
- 231 posts since 15 Apr, 2012 from Toronto, ON
According to the auval output above, your plug-in's class is "aumf", not "aufx", which is why auval can't find it when you type in auval -v aufx ...
Also (I'm sure you know this, but just in case) make sure that your component is located either in the /MacintoshHD/Library/Audio/Plug-Ins/Components or /Users/<username>/Library/Audio/Plug-Ins/Components folder. You can have Xcode automatically copy the built component to the appropriate folder in Build Phases.
Also (I'm sure you know this, but just in case) make sure that your component is located either in the /MacintoshHD/Library/Audio/Plug-Ins/Components or /Users/<username>/Library/Audio/Plug-Ins/Components folder. You can have Xcode automatically copy the built component to the appropriate folder in Build Phases.
- KVRist
- Topic Starter
- 103 posts since 28 Aug, 2011 from United Kingdom
I don't think this is the problem as I tried both "aufx" and "aumf" - I've changed it to "aufx" now because I've removed MIDI reception from Gater and changed the appropriate field in .r to "kAudioUnitType_Effect", but it didn't work previously with "aumf".LemonLime wrote:According to the auval output above, your plug-in's class is "aumf", not "aufx", which is why auval can't find it when you type in auval -v aufx ...
Yes, I've tried it (and my previous AUs) in both these locations but it doesn't make any difference. None of them show up and neither do any third-party AUs. I've just tried [as I type] installing a third-party AU, restarting just-to-make-sure, running Terminal, typing "auval -a" and the only thing I get is a list of Apple AUs. I'm sure I'm somehow using auval wrong...LemonLime wrote:Also (I'm sure you know this, but just in case) make sure that your component is located either in the /MacintoshHD/Library/Audio/Plug-Ins/Components or /Users/<username>/Library/Audio/Plug-Ins/Components folder. You can have Xcode automatically copy the built component to the appropriate folder in Build Phases.
Steven Cook,
http://www.spcplugins.com
- KVRist
- Topic Starter
- 103 posts since 28 Aug, 2011 from United Kingdom
I'm going to try bumping this because I've made no progress with this problem: I run Terminal, enter auval -a and get a list of Apple AUs - no third-party AUs appear, including my own. What am I doing wrong?
- KVRian
- 872 posts since 6 Aug, 2005 from England
The names are case sensitive BTW, it's caught me out a couple of times.
Also your resource version number has to match everywhere in your plug-in. So maybe 'kVersion' has two different values in the resource file and elsewhere?
Also your resource version number has to match everywhere in your plug-in. So maybe 'kVersion' has two different values in the resource file and elsewhere?
Dave Hoskins. http://www.quikquak.com
-
- KVRist
- 150 posts since 6 Mar, 2008
- KVRist
- Topic Starter
- 103 posts since 28 Aug, 2011 from United Kingdom
Thank you quikquak and yeahtuna: After doing some more experiments this morning it seems that the problem is (somehow) to do with my Mac because if I try the same command line calls on a different Mac my plug-ins appear on the list along with the Apple ones and validate without any errors. My auval appears to be faulty...
Steven Cook,
http://www.spcplugins.com
Steven Cook,
http://www.spcplugins.com
-
- KVRist
- 150 posts since 6 Mar, 2008
- KVRist
- Topic Starter
- 103 posts since 28 Aug, 2011 from United Kingdom
32 vs 64 bit? I've no idea. My Mac and the other Mac I tried are both 64 bit, my plug-ins are 32/64 bit. I think auval defaults to 32 bit mode but I'm not sure how that affects things - I used the same "auval -a" command on both Macs followed by the same "auval -v aumf SCgp SPCP" command on both Macs. Mine doesn't work!
-
- KVRist
- 150 posts since 6 Mar, 2008
Maybe you're system is looking at a cached version. Have you trashed you're AU cache?