Jump to content
Unity Insider Forum
Sign in to follow this  
Siebenkeim

Tonhöhe ermitteln

Recommended Posts

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:

oww3nxd7.png

 

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

Share this post


Link to post
Share on other sites

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).

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...