LabVIEWForum.de
Soundanalyse für Musikinstrument - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Grafik & Sound (/Forum-Grafik-Sound)
+---- Thema: Soundanalyse für Musikinstrument (/Thread-Soundanalyse-fuer-Musikinstrument)



Soundanalyse für Musikinstrument - Touscht - 26.09.2008 16:15

Hallo Zusammen

Da ich noch ein LabVIEW Neuling bin, ist dieser Versuch vielleicht nicht der Beste um einzusteigen.
Jedoch möchte ich es trotzdem probieren.

Möchte mit einem Mikrofon oder direkt von der Soundkarte ein Lied abspielen,
verarbeiten und in Echtzeit die Tasten anzeigen, welche beim Instrument gedrückt werden müssen.
Das Instrument ist 3-chörig, dh. es werden 3 Töne gleichzeitig überlagert.
Bei den Bässen wären es bis zu 10.

Meine Idee wäre das Eingangssignal zu Filtern, da die Töne nur im Bereich bis 10kHz liegen.
Die Grundfrequenzen sind tiefer. Bei 10kHz ligen die höheren harmonischen Schwingungen.
Ein Bild des Spektrums von einem Ton den ich aufgenommen haben:

[attachment=14563]

Habe die einzelnen Grundfrequenzen schon gemessen. Jedoch haben manche Töne keine stabile Grundfrequenz, zB. sie wechselt zwischen 350/527 Hz oder ähnlich. Wenn mehrere Tasten gedrückt werden, gibt es eine Überlagerung der Töne. Jedoch sollten sie trotzdem getrennt und identifiziert werden können.


Nach dem Filter wird die FFT angewendet.
Die Grundfrequenz sowie die Frequenzen einiger harmonischen Schwingungen werden ausgelesen und mit einer Datenbank verglichen,
bei der die einzelnen Töne schon einmal aufgenommen wurden und der nächste Ton wird gewählt und angezeigt.

Wäre das machbar? Oder hat jemand eine andere Idee?
Gibt es irgendwo Beispiele zu den verschiedenen Vorgängen die ich Beschrieben habe?

Mit bestem Dank

Touscht


Soundanalyse für Musikinstrument - Lucki - 27.09.2008 10:23

Ja wenn das so einfach wäre...

Was man bei Software als "Backhacking" oder "Reverse Enginering" bezeichnet - aus einer exe den Quelllcode zurückgewinnen - das willst du also als LabVIEW-Neuling und so quasi nebenbei auf dem Gebiet der Musik schaffen - aus dem Sound das Notenbild zurückgewinnen.
Wenn Du das schaffst und das kommerziell geschickt verwertest, dann kannst Du reich werden, denn da gäbe es genug Leute, die daran interessiert sind und dafür bezahlen würden. Mit ist nicht bekannt, daß es da schon etwas gibt.

Das Problem: Die Töne sind nicht stationär, haben Oberwellen und Geräuschkomponenten, vor allem beim Anschlag bzw. beim Einschwingen. Dementsprechend sieht man bei Fourieranalyse von Musik immer nur ein mehr oder weniger kontinuierliches Spektrum.

Vor allem aber gibt es das grundsätzliche Dilemma - genau wie wie bei der Heisenbergschen Unschärferelation - zwischen Messdauer und Schärfe der Frequenzauflösung. Um dem zeitlichen Verlauf des Sounds mit einer kontinuierlichen Fourieranalyse genügend schnell folgen zu können, ist Terzanalyse üblich - d.h 3 Kanäle pro Oktave und nicht 12 für jeden Halbton, wie es wünschesnwert wäre.

Es gibt für die Früherkennung von Maschinenschäden mittels Geräuschanalyse die "Cepstrum-Analyse" Kannst ja mal googeln. Allerdings handelt es sich hier um ein stationäres Geräusch. Man kann damit im Rauschen (Maschinenlärm) versteckte Periodizitäten erkennen und z.B herausfinden, daß es die Kugel in einem Kugellager ist, die nicht mehr in Ordnung ist. (Funktioniert aber auch nur, wenn man das Cepstrum einer gesunden Maschine als Vergleich hat)

Mein Rat: Finger weg...