Siebenkeim Posted February 2, 2014 Report Share Posted February 2, 2014 Hallo, ich schreibe gerade ein Spiel wo ich die Tonhöhe von Liedern (MP3 Dateien) brauche. Habe jetzt aus dem Stream der Audiodatei mittels dem FFT Algorithmus mehrere 1024 Byte Blobs bearbeitet. Habe leider nicht soviel Ahnung von digitaler Signalverarbeitung (musste für den jetzigen Projektstand mehrere englische Foren durchwühlen). Und wollte fragen ob sich hier jemand damit auskennt und mir vielleicht ein paar Tipps geben könnte wie ich jetzt mit den X und Y Coords die ich durch den FFT Algorithmus zurückbekomme den Pitch herausbekomme. Ziel ist es dann durch den Pitch die Tonarten herauszufeinden (wenn dies überhaupt möglich ist). EDIT: Die Frequenzbereiche ermittle ich so: _FftSize = 1024; for (int i = 0; i < _FftSize; i++) listBox1.Items.Add(i * _Aggregator.WaveFormat.SampleRate / _FftSize); EDIT2: Habe jetzt etwas weiter rumprobiert und mir die Frequenzbereiche mit den Y - Werten ausgegeben: Bei 93Hz ist ein sehr hoher Effektivwert. Heißt dies jetzt das der Ton dort "sehr stark" vorkommt? Laut der Tabelle http://www.phy.mtu.e.../notefreqs.html müsste es ein F#2/Gb2 Ton sein. Und was ist dann mit den Hertz Werten ab 20kHz aufwärts? Die kann doch der Mensch garnicht wahrnehmen oder? <Cat>: das liegt daran, dass die Disketisierung im Zeitraum einer periodischen Wiederholung des Frequenzspektrums im Frequenzraum entspricht <Cat>: das Frequenzspektrum geht aber von -höchste Frequenz bis +höchste Frequenz <Cat>: d.h. damit die Perioden sich nicht überlappen, brauchen sie 2x Frequenz als Abstand Mit freundlichen Grüßen Siebenkeim Quote Link to comment Share on other sites More sharing options...
Siebenkeim Posted February 2, 2014 Author Report Share Posted February 2, 2014 Scheint wie es aussieht richtig zu sein. Meine Stimme hat er als Männerstimme erkannt, bei Dragonforce hat er Gitarren und eine Männerstimme erkannt und bei "Celine Dion - My Heart Will Go On" hat er eine hohe Frauenstimme erkannt und am Anfang eine Männerstimme (Sprecher). Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.