Ich versuche, den AVAudioPlayer und die Audiopegelmessung zu verstehen
Ich versuche den AVAudioPlayer und die Audiopegelmessung zu verstehen. Was ich unten habe, ist ein Objekt "AudioPlayer", das einen kurzen Audioton wiedergibt. Jetzt möchte ich die Leistung dieses Klangs (Dezibel) ausgeben. Irgendwie glaube ich nicht, dass ich das richtig mache.
<code> audioPlayer.meteringEnabled = YES; [audioPlayer play]; int channels = audioPlayer.numberOfChannels; [audioPlayer updateMeters]; for (int i=0; i<channels; i++) { //Log the peak and average power NSLog(@"%d %0.2f %0.2f", i, [audioPlayer peakPowerForChannel:0],[audioPlayer averagePowerForChannel:0]); </code>
Die NSLog-Ausgabe davon ist 0 -160,00 -160,00 1 -160,00 -160,00
Laut Apple bedeutet "ein Rückgabewert von 0 dB volle Leistung oder maximale Leistung; ein Rückgabewert von -160 dB minimale Leistung". Ich glaube nicht, dass dies der Fall ist, da das Audio-Snippet ziemlich laut ist. Ich denke, ich vermisse hier etwas, jede Klarstellung wäre dankbar.