2012-04-09 13 views
0

In der grundlegendsten Frage, ist es überhaupt möglich, die Noten zu erkennen, die in einem bestimmten Klavierstück gespielt werden, nur mit dem Android-Mikrofon? In Zukunft wird das iPad Mic wenn das gut geht. Um zu beginnen, möchte ich nur ein paar Tasten am Klavier drücken und das Telefon hören lassen und mir sagen, welche Noten ich spiele. Dies könnte bedeuten, dass ich die Tonhöhe und die Frequenz der Noten auf dem Klavier (auf dem ich spielen werde) vorher festlege, um die tatsächliche Frequenz zu definieren.Android-Java: Erkennen bestimmter Noten (nach Frequenz und Tonhöhe)

Ich habe über FFT gelesen, aber ich bin mir nicht sicher, ob ich danach suchen werde. Meine größte Angst ist, dass das Gerät einfach nicht leistungsfähig genug ist, um all das in Echtzeit zu berechnen, was das Ziel ist. Wenn mir jemand erklären könnte, was ich suche, würde ich es sehr schätzen.

Antwort

1

Ja, es ist theoretisch möglich, eine FFT oder andere verwandte Techniken wie Wavelets zu verwenden.

Ob ein Telefon stark genug sein wird, vermute ich die Antwort ist "ja", aber ich habe keine spezifischen Beweise. Ich würde versuchen, Libfft oder ähnliches für Android zu kompilieren und einige Vorversuche zu machen, um zu sehen, ob es wie ein praktikabler Ansatz aussieht.

Auch nur ein Wort der Vorsicht - es kann möglich sein, aber das bedeutet nicht unbedingt, dass es einfach ist. Vor allem, wenn Sie gleichzeitige Noten erkennen möchten. Ein einfacher Einzeltondetektor sollte jedoch nicht zu schwierig sein.