Artificial Soul
Stamgast
Aliasing komt vaak voor bij gesamplede instrumenten, met name bij de wat hogere tonen. Vooral bij sawsynth-klanken is het erg storend en er verschijnt dan een lelijke metaalachtige klank.
Ik weet dat hoe hoger de toon is hoe minder boventonen de klank heeft. Dus samples voor het hogere key-bereik bewerk ik met een lowpass-filter, waarmee ik wil voorkomen dat boventonen de Nyquist-rate kunnen overschrijden en aliasing creeren. Bijvoorbeeld voor de keys 96 t/m 108 (het hoogste akkoord van een keyboard met 88 toetsen) bewerk ik de sample met een lowpass-filer die ik instel op bijvoorbeeld 5000 Hz en een roll-off van 48 dB. Ik doe dit een aantal keer om er meer zeker van te zijn dat frequenties boven de 5000 worden weggefilterd. Want als je de betreffende sample 2x zo snel zou afspelen, dan gaan de frequenties nog steeds niet boven de 10000 Hz en zou er geen aliasing moeten optreden.
Maar dat blijkt te simpel gedacht te zijn. Ik had ook iets geprobeerd om noise toe te voegen - hetzelfde principe als dither - maar ook dat verhelpt het verschijnsel niet.
Ik heb wel ontdekt dat als je een loop wilt maken van een saw-wave, de bitdepth van beide looppoints echt exact gelijk moeten zijn. Als je de sample afspeelt met de toonhoogte die gelijk is aan de rootkey, dan klinkt het zoals het moet klinken. Maar als je een key hoger speelt, kan die metaalachtige bijklank alweer prominent verschijnen: dat kan verklaard worden omdat bij up- of downsampling de interpolatie van de samples ook verandert.
Ik hoop dat jullie mij een beetje begrijpen. En als jullie weten wat ik kan doen om aliasing te voorkomen, hoor ik dat graag
Ik weet dat hoe hoger de toon is hoe minder boventonen de klank heeft. Dus samples voor het hogere key-bereik bewerk ik met een lowpass-filter, waarmee ik wil voorkomen dat boventonen de Nyquist-rate kunnen overschrijden en aliasing creeren. Bijvoorbeeld voor de keys 96 t/m 108 (het hoogste akkoord van een keyboard met 88 toetsen) bewerk ik de sample met een lowpass-filer die ik instel op bijvoorbeeld 5000 Hz en een roll-off van 48 dB. Ik doe dit een aantal keer om er meer zeker van te zijn dat frequenties boven de 5000 worden weggefilterd. Want als je de betreffende sample 2x zo snel zou afspelen, dan gaan de frequenties nog steeds niet boven de 10000 Hz en zou er geen aliasing moeten optreden.
Maar dat blijkt te simpel gedacht te zijn. Ik had ook iets geprobeerd om noise toe te voegen - hetzelfde principe als dither - maar ook dat verhelpt het verschijnsel niet.
Ik heb wel ontdekt dat als je een loop wilt maken van een saw-wave, de bitdepth van beide looppoints echt exact gelijk moeten zijn. Als je de sample afspeelt met de toonhoogte die gelijk is aan de rootkey, dan klinkt het zoals het moet klinken. Maar als je een key hoger speelt, kan die metaalachtige bijklank alweer prominent verschijnen: dat kan verklaard worden omdat bij up- of downsampling de interpolatie van de samples ook verandert.
Ik hoop dat jullie mij een beetje begrijpen. En als jullie weten wat ik kan doen om aliasing te voorkomen, hoor ik dat graag