Ik zie het patroon wel, 2410+2000+2410+2000..., maar ik ben nu wel het spoor bijster mbt wat je eigenlijk gedaan hebt, Hoe kan de uitkomst anders zijn dan jij verwacht, gezien je zelf alles hebt ingevoerd?
"hangt van de frequentie van het signaal af" < welk signaal? het invoersignaal of de gatenkaas?
Dat is inderdaad
'n manier om het patroon te beschrijven, maar de relatie met die twee afhankelijkheden wordt er niet direct helder door. Wat dacht je van de volgende omschrijving:
Code:
0*4410 + 1000 = 1000
1*4410 - 1000 = 3410
1*4410 + 1000 = 5410
2*4410 - 1000 = 7820
2*4410 + 1000 = 9820
3*4410 - 1000 = 12230
3*4410 + 1000 = 14230
4*4410 - 1000 = 16640
4*4410 + 1000 = 18640
5*4410 - 1000 = 21050
'n stelling uit de signaaltheorie: als je een tijdsignaal
uitrekt met een factor 10 (wat we hier doen), dan
krimpt het spectrum met een factor 10.
We hadden oorspronkelijk een sinus van 10.000 Hz. Die gingen we uitrekken zo dat de samples op 10 sample-afstanden van elkaar komen te liggen (dus 9 nulsamples tussen elke twee oorspronkelijke sinussamples). We krijgen daardoor die gatensinus van 1000 Hz. Dat is die 1000 die je hierboven in het patroon steeds terugziet, de eerste afhankelijkheid.
Die tweede afhankelijkheid zit 'm in spectrumkrimp met factor 10. Het oorspronkelijke spectrum strekte zich uit van 0 Hz tot de samplingfrequentie 44100 Hz. Dat is nu dus ineengeschrompeld van 0 Hz tot 4410 Hz. Combineren we dat met een ander feit uit de signaaltheorie, nl. dat het spectrum van een digitaal signaal periodiek is, dan kunnen we die kopieën verklaren; dus tien kopieën tot aan de oorspronkelijke samplingfrequentie van 44100 Hz. Bovendien bevat elke kopie een spiegelsymmetrie, vandaar telkens die plus 1000 en min 1000.
Daarmee is het patroon verklaard vanuit de twee afhankelijkheden:
(1) de frequentie van de oorspronkelijke 10 kHz sinustoon;
(2) de strek/krimpfactor 10.
maar ik ben nu wel het spoor bijster mbt wat je eigenlijk gedaan hebt, Hoe kan de uitkomst anders zijn dan jij verwacht, gezien je zelf alles hebt ingevoerd
Toen ik de vraag stelde (in post #120) had ik me dat allemaal nog niet zo gerealiseerd. Toen jij en Arv met antwoorden kwamen ging ik zelf pas het geluid eens maken en beluisteren. Ik was nogal verbaasd dat ik een niet-harmonische toon hoorde en kon die niet een-twee-drie verklaren, want een pulstoon (= gaten-toon met alle samples even hard) is harmonisch en dat hoor je direct. Pas toen begon ik er echt erover na te denken...
Je kunt dus die gatensinus op
twee manieren maken; de tweede manier is: tien precies even harde sinustonen met de frequentiereeks van hierboven bij elkaar mixen!
Om nu terug te keren naar het onderwerp, we wilden uit een sinustoon van 10 kHz een sinustoon van 1000 Hz afleiden. Als eerste benadering maakten we die gatensinus. Nu blijkt dat we daarmee in feite tien sinussen met verschillende toonhoogten hebben opgewekt! Als we die al die sinussen, op de eerste na, kunnen wegfilteren, zijn we klaar, want dan houden we de 1000 Hz-sinus over. We hebben daar een heel bijzonder filter voor nodig, nl. een zg.
interpolatiefilter.
Maar hoe komen we aan dat interpolatiefilter? Wel, we hoeven alleen maar op een heel speciale manier te Schalen, Schuiven & Mixen!!! Dus een van die ontelbaar vele mooie dingen die we met SSM kunnen doen is dit heel bijzondere interpolatiefilter realiseren! I love it when a plan comes together!
Tot nu toe hebben we alleen nog maar geschoven en gemixt. Daar moet ik nog een paar dingen over zeggen. Als we daarna ook nog gaan schalen, ontstaat er een heel nieuwe situatie die de kern van de signaaltheorie blootlegt
