Laagst mogelijke latency met USB

Een tijdje terug kwam er een draadje voorbij op de Linux Audio User mailinglijst over wat de laagst mogelijke softwarematige latency zou kunnen zijn. USB geluidskaarten draaien kennelijk het beste met een latency die een veelvoud is van 1ms omdat dat de “interrupt period” van USB apparaten is. Kan zo snel niet vinden wat dat nou precies inhoudt, een “interrupt period”, maar dit verklaart wel waarom er veelal wordt aangeraden om USB geluidskaarten op 48000Hz en een buffer van 3 in te stellen. Hierdoor wordt de latency inderdaad een veelvoud van 1ms. De minimale latency die je op deze manier met een USB geluidskaart zou kunnen bereiken zou dan 4ms moeten zijn (48000 Hz en een buffer van 3 met 64 frames: 64/48000 * 3 = 4ms) want met een frames waarde van 32 zal JACK gaan protesteren. Maar is de waarde 64 voor het aantal frames echt het laagste wat je kunt gaan? Wat nu als je bijvoorbeeld 48 frames gebruikt en een buffer van 2 zodat het rekensommetje 48/48000 * 2 = 2ms wordt? Heb de proef op de som genomen met mijn Edirol UA-25 en inderdaad, het werkt. En nog redelijk stabiel ook. Niet dat het veel zin heeft want wat is nou een verschil van 2ms op de totale latency, maar voor real-time applicaties, zoals effecten op akoestische analoge bronnen, kan het nog van pas komen.

Laagst mogelijke latency met USB

Leave a Reply

Your email address will not be published.