Ik maak een simpel programma dat een .WAV file kan aanmaken met een instelbare frequentie (bv 440 Hz), bitdepth(8/16 bit) en sample rate(8000-44100). Ook de vorm van de golf is instelbaar (sinus, square, triangular, sawtooth).
Voor de eerste 2 heb ik de y-waarden kunnen berekenen met de standaard formules voor sinus of blokgolf.
De triangular en sawtooth wave heb ik laten berekenen door de amplitude geleidelijk te laten stijgen, en weer te laten dalen wanneer de maxamplitude bereikt werd.
Het programma werkt, en de .wav files klinken zoals een sinus, sawtooth, square, ... golf hoort te klinken
Nu wou ik die 2 laatste ook eens met Fast Fourier Transformaties laten berekenen. Ik vind verschillende bruikbare code library's op internet. Je kan dan de FFT laten berekenen door een double[] met reele getallen en een double[] met complexe getalwaarden in de parameter in te vullen van de fft methode. En daar loop ik vast. Na uren zoeken heb ik nog steeds niets bruikbaars gevonden.
Kan je deze reele en complexe waarden van bijvoorbeeld een blokgolf/sawtooth/triangular wave vinden? Ik vermoed met een for-lus? Welke vergelijkingen zou je dan gebruiken? Het is al jaren geleden dat ik fourier analyse (beperkt) gezien heb, en mijn kennis schiet te kort vrees ik. Alvast bedankt als iemand mij verder kan helpen