JamKazam

Uit Sessie
Versie door Arent (overleg | bijdragen) op 30 okt 2020 om 10:31
Naar navigatie springen Naar zoeken springen

JamKazam is een programma waarmee je met behulp van je eigen computer thuis kunt meedoen met andere muzikanten/zangers. JamKazam bestaat (voor de gebruiker) uit twee componenten: website en applicatie op de lokale computer. Om te kunnen jammen moet de applicatie geïnstalleerd en ingeregeld zijn.

Inregelen

  • gebruik een (bedrade) koptelefoon
  • gebruik een losse microfoon; de microfoon in een laptop pikt allerlei onbedoelde geluiden op en is voor de andere jammers onprettig
  • gebruik geen WIFI
  • optimaliseer audio gear in Jamkazam - instellingen met als hoofddoel het zo klein mogelijk maken van latency met behoud van geluidskwaliteit

Geen wifi

WIFI is reuze handig als het niet uitmaakt of gegevens een paar honderd milliseconden eerder of later weergegeven worden; een film kijken waarbij beeld en geluid een seconde of meer vertraging oploopt is geen enkel probleem, maar vertraging van een halve seconde maakt een videogesprek al lastiger, en samenspelen volstrekt onmogelijk. De term die in dit verband gebruikt wordt is 'latency': vertraging in milliseconden tussen twee partijen. Een grote latency kan een boel oorzaken hebben. WIFI is daar een grote factor in.

  • Kijk wat je huidige internetverbinding 'doet' met dslreports.com/speedtest. Bandbreedte is voor JamKazam meestal geen bottle neck tenzij de uploadbandbreedte echt veel te klein is.
  • Gebruik zo mogelijk een directe netwerkkabel tussen je modem en de computer; hubs en switches leveren allemaal weer een beetje extra latency...
  • Stel Windows zo in dat de kabelverbinding ook echt gebruikt wordt: in Windows 10 mag het wifi-icoontje Wifi-icon.png rechtsonderin niet zichtbaar zijn en het teken voor vaste verbinding Fixedethernet.png weergeven.

Latency klein houden

Om een beetje idee te krijgen van latency is een (heel klein) beetje natuurkunde handig. Geluid plant zich voort door lucht met ongeveer 340 meter per seconde. Als onweer een kilometer ver weg is duurt het 1000/340 ofwel ongeveer 3 seconden voor je de knal hoort na de flits. Als je medemuzikant op 34 meter afstand staat te spelen dan doet het geluid er 34/340 ofwel 100ms over - samenspelen lukt dan niet meer. De latency moet daarom minder dan ca 25ms blijven (vergelijkbaar met 8,5 meter afstand - niet ideaal maar waarschijnlijk nog net te doen).

Latency wordt veroorzaakt door:

  • de tijd die het geluid nodig heeft om van het instrument naar de microfoon te komen (doorgaans verwaarloosbaar);
  • de tijd die de computer nodig heeft om van een analoog microfoonsignaal een digitaal signaal te maken - op een langzame computer kan dat een serieuze bijdrage geven; gebruik dan een USB-microfoon of een USB Audio interface zoals de Behringer U-Phoria UM2 van Thomann of Bax waar je ook een condensatormicrofoon en/of gitaar/piano direct op aan kunt sluiten, evenals je hoofdtelefoon.
  • de tijd die de pakketjes nodig hebben om van de ene computer naar de andere computer te komen. Hierbij speelt fysieke afstand en de route die de pakketjes nemen een rol. Even versimpeld voorgesteld, digitale pakketjes reizen in ieder geval niet sneller dan met de lichtsnelheid ca 300.000km/s, dus iemand in Nieuw-Zeeland krijgt dus een extra latency van 20.000/300.000 ofwel 67ms. In Nederland zullen afstanden niet veel meer dan 300km zijn en de (theoretische) extra latency ten gevolge van de afstand niet meer dan 1 ms, ofwel meestal verwaarloosbaar. In de praktijk zal de latency ten gevolge van afstand overigens altijd groter zijn dan de zo berekende.
  • de tijd die nodig is om van de digitale audio weer iets hoorbaars te maken. Ook hier zal de computerhardware weer een vergelijkbare rol spelen als bij het microfoonsignaal.
  • de afstand tussen de luidspreker en je oren; bij koptelefoongebruik nagenoeg 0.

Jitter

Jitter is het verschijnsel dat het signaal geen stabiele/constante tijd nodig heeft. Als pakketjes er soms kort en dan weer langer over doen moet het signaal tussentijds worden opgeslagen (gebufferd worden) wat extra latency veroorzaakt.

Frame Size

Voor een robuust signaal is het prettig om grotere pakketjes te gebruiken. Kleinere pakketjes maken de totale latency (veel) kleiner. Als je basisverbinding op orde is (geen wifi) kun je je Frame Size kleiner maken, je loopt wel risico op slechtere audiokwaliteit (klik/kraakgeluiden) maar de totale latency wordt kleiner.

  • In JamKazam: Manage -> network -> packet rate configuration
    maak buffers zo klein mogelijk: FrameSize ca 2.5 ms

Overige optimalisaties