PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : WAVE-File (.wav) erstellen (auf PC)



deuterius
02.10.2006, 15:30
Hallo zusammen

Ich versuche gerade WAVE-Files (.wav) mit Daten für Rechteckschwingungen zu erstellen.

Dazu schreibe ich einfach in einer Schleife einige Samples lang einen gewissen Wert in eine Datei und nachher der selbe Betrag negativ. => Rechteck-Schwingung
Dies funktioniert problemlos bei Frequenzen dessen Periodendauern ein ganzes Vielfaches der Länge eines Samples ist. (z.B. 4410 Hz bei 44100 Samples pro Sekunde).

Wie kann ich jetzt aber "krumme" Frequenzen produzieren?
Ich kann ja die Periodendauer nur in ganzen Samples ändern.

Bei einer Samplerate von 44100 dauert ein Sample etwa 22,68 Mikrosekunden (=1/44100). Die Periodendauer von 4410 Hz ist 226,8 Mikrosekunden. Denn nächst tieferen Ton unter 4410 Hz kann ich jetzt produzieren in dem ich jede Hälfte der Periode (d.h. der LOW- und der HIGH-Teil) um ein Sample verlängere. Die Periodendauer beträgt dann 226,8 + 2 * 22,68 us = 272,16 us. Die zugehörige Frequenz ist rund 3675 Hz.

Wie kann ich jetzt Schwingungen zwischen 3675 Hz und 4410 Hz produzieren?

Eure Antworten dazu würden mich interessieren. Das Problem müsste doch eigentlich allgemein bekannt sein, tritt es doch bei jeder digitalen Signalsynthese auf.

Besten Dank für jede Antwort!

PicNick
02.10.2006, 16:15
ganz normal. d.h. Die gewünschte funktion (Rechteck oder sonstwas) ist immer f(x).
dabei ist x aus den Samples abzuleiten.
Bei einem Rechteck o.Ä werden natürlich die Flanken genaugenommen mal zu früh oder zu spät sein. Das liegt aber daran, daß du ein wirkliches (beliebiges) Rechteck durch die Oberwellen ins Unendliche garnicht als Sample-File abbilden kannst

deuterius
02.10.2006, 21:18
Danke für die Antwort

Die Idee, die Flanken einfach mal zu früh und dann wieder zuspät zu setzen, so dass sich im Durchschnitt die richtige Frequenz ergibt, hatte ich auch. Dies würde aber zu einem frequenzmodulierten Signal, sprich zu einem unbegrenzten Spektrum führen.

Das zweite Problem, dass nämlich eigentlich unendlich viele Oberwellen nötig wären, kommt natürlich noch dazu. Dieses besteht aber unabhängig davon, ob die gewünschte Frequenz ein ganzzahliger Bruchteil der Samplingfrequenz ist oder nicht. Dieses Problem ist aber eigentlich auch egal, wenn das folgende System in der Signalverarbeitung (z.B. mein Gehör) auch eine beschränkte Bandbreite hat.

PicNick
03.10.2006, 08:18
WIe gesagt, wir brauchen nicht drüber nachzudenken, ob Sampling in HiFi Qualität möglich ist oder nicht, schließlich gibt es das.
Aber es ist eben das Limit bei ~20kHz da, wenn ich die 5.Harmonische annehme, wär das ein Rechteck von 4 kHz, daß mit einem gewissen Klirrfaktor rüberkommt. Mehr ist sowieso nicht.
Was hast Du denn vor damit ?