0
SpeakHereクラスからオーディオ入力信号レベルをクラスAQRecorder.mmに取得するメソッドを追加したいとします。 OSStatusインスタンスは "kAudioQueueErr_InvalidPropertyValue"に対応するエラーコードを私に与えます。私はプロパティの定義済みの定数を使用するため、このエラーがどのように起こるか理解できません。どうすればいいのですが、どうしたらこのエラーを修正できますか?iOS AudioQueue:kAudioQueueErr_InvalidPropertyValueプロパティkAudioQueueProperty_CurrentLevelMeter
float AQRecorder::getAveragePower()
{
assert(mQueue!=NULL);
UInt32 expectedSize = sizeof(AudioQueueLevelMeterState);
assert(expectedSize>0);
AudioQueueLevelMeterState* audioLevels = (AudioQueueLevelMeterState*)malloc(sizeof(AudioQueueLevelMeterState));
OSStatus status = AudioQueueGetProperty(mQueue,kAudioQueueProperty_CurrentLevelMeterDB, audioLevels, &expectedSize);
if(status!=noErr)
{
printf("Error getting the average power: error code %i",status);
return 0;
}
return audioLevels->mAveragePower;
}