Frage

Ich möchte MIC -Audio kontinuierlich analysieren (nicht nur ein Snipper oder ein aufgezeichnetes Beispiel) und Frequenzdiagramm anzuzeigen und bestimmte Aspekte des Audios herauszufiltern. Ist das iPhone dafür leistungsfähig genug? Ich vermute, die Antwort ist ein Ja, angesichts der Google- und iPhone -Spracherkennung, Shazaam und anderen Apps für Musikerkennung sowie Gitarrentuner -Apps. Ich weiß jedoch nicht, mit welchen Einschränkungen ich mich befassen muss.

Spielt jemand mit dieser Gegend herum?

War es hilfreich?

Lösung

Der Beispielcode Auriotouch von Apple verfügt über eine FFT -Implementierung.

Andere Tipps

Die Apps, die ich gesehen habe, machen eine Art Musik-/Spracherkennung eine Internetverbindung. Daher ist es sehr wahrscheinlich, dass diese nur eine Art Feature -Berechnung auf dem Audio und diese Funktionen über HTTP senden, um die Erkennung auf dem Server durchzuführen.

In jedem Fall wurden vor einem Dutzend Jahren Frequenzdiagramme und Filterung vor einem weniger CPUs durchgeführt. Das iPhone sollte kein Problem sein.

"Schnell genug" kann eine Funktion Ihrer (oder der) Erwartungen Ihres Kunden darüber sein, wie viel Frequenzauflösung Sie suchen, und Ihre Basis -Beispielrate.

Ein n-Punkt-FFT befindet sich in der Reihenfolge von N*log2 (n) -Rechnungen. Wenn Sie also nicht genügend MIPS haben, ist die Reduzierung von N für Sie ein potenzieller Konzessionsbereich.

In vielen Anwendungen ist die Stichprobenrate nicht verhandelbar, aber wenn dies der Fall wäre, wäre dies eine weitere Möglichkeit.

Ich habe eine App gemacht, die die FFT live berechnet

http://www.itunes.com/apps/oscope

Sie finden meinen Code für die FFT auf GitHub (obwohl er etwas rau ist)

http://github.com/alexbw/iphonefft

Das neue iPhone OS 4.0 SDK von Apple ermöglicht eine integrierte Berechnung der FFT mit der "Beschleunigung" -Bibliothek. Ich würde also definitiv mit dem neuen Betriebssystem zusammenarbeiten, wenn es sich um einen zentralen Teil der Funktion der App handelt.

Sie können nicht einfach in C in C in Ihre App geschrieben. Es gibt die Option für Daumen Compiler, die die Gleitkomma -Arithmetik kompliziert. Sie müssen es in den Armmodus setzen

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