2016-04-06 7 views
-1

Ich bin neu in der Signalverarbeitung und ich entwickle eine Anwendung, die das Extrahieren von Tonhöhe einer Sound-WAV-Datei beinhaltet, versuchte ein paar Ansätze, um direkt Pitch mit Java (mit FFT und DFT) zu extrahieren, aber es war nicht möglich gehen Sie damit wegen der geringen Genauigkeit fort, die durch Extraktion gewonnen wird.Wie kann ich mit Matlab ein Tonsignal verarbeiten, die Frequenzen abrufen und auf Java anwenden?

Ich wurde von einem Ansatz zur Bestimmung der Frequenzen der Noten im Tonsignal mit Matlab erzählt und dann schließlich ein .csv Format Skript, das in Java konvertiert werden muss. Problem ist, dass ich keine Ahnung habe, wie man das macht, also kann jemand etwas Licht darauf werfen, wie man die Frequenzen extrahiert? Wie benutzt man diese Informationen in Java?

+0

Sie können die Tonhöhe nicht direkt oder genau mit FFT/DFT allein schätzen. Sie brauchen etwas etwas ausgeklügelteres, versuchen Sie etwas wie RAPT (Robuster Algorithmus für Pitch Tracking), können Sie die Funktion herunterladen und in Matlab aufrufen, um den Tonhöhenvektor für Ihre WAV-Datei zu schätzen. Danach können Sie es als 'csv' speichern und es in Ihr Java-Programm – GameOfThrows

Antwort

0

Ich sehe nicht, warum Sie Matlab verwenden und dann zu Java wechseln sollten. Sie können ziemlich gute Ergebnisse mit optimierten Algorithmen direkt in Java erzielen. Ein Beispiel für eine Java-Bibliothek, die Sie sich ansehen möchten, ist TarsosDSP.

+0

lesen. Ich fand es ein wenig schwierig, damit anzufangen – dav191

Verwandte Themen