Autor Beitrag
GIGI
Hält's aus hier
Beiträge: 8

Win2003 Server Enterprise, Suse Linux 9.1
D6 Prof, D7 Enterprise, Kylix 3 Enterprise/Open Edition
BeitragVerfasst: Mo 24.11.03 21:23 
Hi an alle,
bin neu hier und hab zuerst schon mal ein Proplem.
ich benötige die Frequenz des Tons den die Soundkarte ausgibt wenn ich z.b Mp3's hör oder Spiel.
Aus der Frequenz will ich dann wenn eine Signal unter z.B. 50HZ ausgegeben wird das eine Aktion passiert. (ne eins am 4er Parallelportausgabepin, aber das ist nicht das Proplem).

Ich hoffe irgendwer versteht die Fragestellung. mfg GIGI
KarlKoch
Hält's aus hier
Beiträge: 12



BeitragVerfasst: Do 27.11.03 21:20 
Titel: FFT
In einer MP3 kommen für gewöhnlich mehrere Frequenzen gleichzeitig vor.

Zunächst einmal brauchst du das Soundsignal im Zeitbereich. Ich weiß jetzt nicht genau ob du das schon hast, aber wenn du z.B. eine MP3 über DirectSound abspielst, dann wirst du das Signal sicher schon haben.

Das wäre also das erste was du bewältigen musst, du musst das Signal auslesen (MP3 decodieren).

Jetzt hast du ein Signal im Zeitbereich und musst es in den Frequenzbereich umwandeln. Das macht man über die Fourier Transformation. Das ist kein leichtes Thema, aber schau dich mal im Internet nach der FFT (Fast Fourier Transformation) um.

Mit dieser FFT kommst du an die vorhandenen Frequenzen samt Amplitude der jeweiligen Frequenzen. Gut und ab dann isses nicht mehr schwer auf eine Frequenz unter 50 Hz zu überprüfen.

karlkoch