Sie müssen zunächst #import
CAAUParameter und AUParamInfo ( die unter /Developer/Extras/CoreAudio/PublicUtility zu finden ist ).
EDITAR : Diese Dateien befinden sich jetzt im Paket "Audio Tools For Xcode". Sie erhalten es, indem Sie auf Xcode > Open Developer Tool > More Developer Tools...
Angenommen, Sie haben eine AudioUnit namens theUnit
Mit dem folgenden Code können Sie eine Iteration durch theUnit
Parameter:
bool includeExpert = false;
bool includeReadOnly = false;
AUParamInfo info (theUnit, includeExpert, includeReadOnly);
for(int i = 0; i < info.NumParams(); i++)
{
if(NULL != info.GetParamInfo(i))
{
// Do things with info here
}
}
Zum Beispiel, info.GetParamInfo(i))->ParamInfo()
gibt Ihnen eine AudioUnitParameterInfo-Struktur, die wie folgt definiert ist:
typedef struct AudioUnitParameterInfo
{
char name[52];
CFStringRef unitName;
UInt32 clumpID;
CFStringRef cfNameString;
AudioUnitParameterUnit unit;
AudioUnitParameterValue minValue;
AudioUnitParameterValue maxValue;
AudioUnitParameterValue defaultValue;
UInt32 flags;
} AudioUnitParameterInfo;
Beachten Sie, dass Sie die AudioUnit zuerst öffnen müssen (z.B. durch Aufruf von AUGraphOpen() auf dem Graphen, der die Unit enthält).