Frage

Was ist der Unterschied zwischen peakPowerForChannel und averagePowerForChannel Methoden der AVAudioRecorder?

Und warum wird der Wert zurückgegeben wird, ist negativ? Ist es nicht soll für keinen Ton zu 0 und steigen, wenn die Amplitude des Schalls steigt? Wie kann ich zu einem „lesbar“ Format konvertieren?

Danke.

War es hilfreich?

Lösung

Während ich bei diesen Werten nicht geschaut haben, da es sich um Audio-Lautstärke in engem Zusammenhang steht, würde ich vermuten, dass es in Dezibel als eine Änderung gemessen wird.

0 wäre die maximale Lautstärke und etwas leiser als die als Tropfen in Dezibel ausgedrückt werden könnte.

Positive und negative keine Rolle spielen. Denken Sie daran, dass es sich um eine logarithmische Skala ist, wo Sie den Unterschied in der Lautstärke sind die Messung (oder empfundene Lautstärke).

Andere Tipps

Die Spitzenleistung bedeutet den maximalen Wert aller absoluten Werte aller Proben nehmen. Es ist nützlich für ein Abschneiden des Audio zu verhindern.

Mittlere Leistung der RMS ist (root mean square) der Proben. Dies ist nützlich, um zu bestimmen, wie laut der Ton für das menschliche Ohr klingt.

Der Wert ist negativ, weil es in Dezibel ausgedrückt wird, wobei 0 dB auf den Maximalwert des Audiosystems gleich ist. Es ist eine log10 Skala, und die Formel für die Umwandlung ist:

db = 10 * log10 (level);

wobei db ist Dezibel und Pegel ist die Skalarwert von 0,0 bis 1,0 reicht. Also, wenn der Pegel 0,0 (stumm) ist, ist das Ergebnis negativ unendlich.

Wenn Sie einen „lesbar“ Format mögen, können Sie ein Pegelmesser (UIProgressView oder eigene) verwenden, wenn der max 0.0 ist und die min ist -60,0 (Sie je nach Grundrauschen einstellen können). Sobald du mit Dezibel gewöhnt sind, machen sie mehr Sinn als lineare Ebenen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top