WaveGuide7
Gedeactiveerd account
- Lid sinds
- 12 november 2009
- Berichten
- 1.152
Convolutie implementeren d.m.v. delay-componenten of -modules?
Convolutie implementeren d.m.v. delay-componenten of -modules?
Een paar vereisten:
(1) de delays kunnen alleen maar feedforward zijn. Aan feedback-delays heb je niets.
(2) Binnen de software die je gebruikt moet het mogelijk zijn om de delay-tijd (echo-tijd) uit te drukken als aantal samples (bij een gegeven sampling periode Ts = 1/Fs, waarin Fs de sampling rate voorstelt).
Voorbeeld: als de echotijd 0,1 seconde is en Fs = 44100, dan is de delay-tijd in samples gelijk aan 0,1*44100 = 4410 samples. Je hebt dan dus evenzoveel delay-componenten nodig.
(3) Als een pulsrespons bijv. 0,1 sec duurt dan heb je 4410 delay-modules nodig, met echotijden, in samples uitgedrukt, die stap voor stap oplopen: 1, 2, 3, ..., 4409, 4410. Elke delaylijn krijgt z'n eigen versterkingsfactor. Dat zijn er in dit voorbeeld dan eveneens 4410.
(4) Ook de versterkingsfactor van de output van de delay moet specificeerbaar zijn; daarbij moet het ook mogelijk zijn om een negatieve waarde op te geven. Aangezien het bij convolutie vaak al gauw om honderden of zelfs duizenden delays gaat (bijv. Pori concertzaal pulsrespons: 70.000 delays) moet je software de versterkingfactoren gemakkelijk kunnen toewijzen of zelfs direct bewerken uit een wav of uit de (gesampelde) output van een functie- of toongenerator.
Convolutie implementeren d.m.v. delay-componenten of -modules?
Een paar vereisten:
(1) de delays kunnen alleen maar feedforward zijn. Aan feedback-delays heb je niets.
(2) Binnen de software die je gebruikt moet het mogelijk zijn om de delay-tijd (echo-tijd) uit te drukken als aantal samples (bij een gegeven sampling periode Ts = 1/Fs, waarin Fs de sampling rate voorstelt).
Voorbeeld: als de echotijd 0,1 seconde is en Fs = 44100, dan is de delay-tijd in samples gelijk aan 0,1*44100 = 4410 samples. Je hebt dan dus evenzoveel delay-componenten nodig.
(3) Als een pulsrespons bijv. 0,1 sec duurt dan heb je 4410 delay-modules nodig, met echotijden, in samples uitgedrukt, die stap voor stap oplopen: 1, 2, 3, ..., 4409, 4410. Elke delaylijn krijgt z'n eigen versterkingsfactor. Dat zijn er in dit voorbeeld dan eveneens 4410.
(4) Ook de versterkingsfactor van de output van de delay moet specificeerbaar zijn; daarbij moet het ook mogelijk zijn om een negatieve waarde op te geven. Aangezien het bij convolutie vaak al gauw om honderden of zelfs duizenden delays gaat (bijv. Pori concertzaal pulsrespons: 70.000 delays) moet je software de versterkingfactoren gemakkelijk kunnen toewijzen of zelfs direct bewerken uit een wav of uit de (gesampelde) output van een functie- of toongenerator.




