ID.nl logo
Alles over Smart Queue Management (SQM) voor sneller internet
© Reshift Digital
Huis

Alles over Smart Queue Management (SQM) voor sneller internet

Je hebt net een download gestart of je hoort al klachten dat online gamen niet meer soepel loopt. Of je videogesprekken haperen als andere gebruikers gaan downloaden. Waarschijnlijk is de snelheid niet je echte probleem, maar is je router niet slim genoeg om al het verkeer tegelijkertijd in goede banen te leiden.Smart Queue Management (SMQ) is een van de oplossingen.

Wellicht is er toen we massaal thuis bleven en werken een probleem met je internetverbinding aan het licht gekomen waar je eerder nog geen last van had. Bovenstaande problemen worden veroorzaakt door iets wat bufferbloat genoemd wordt, een verstopping van de buffer in de router.

De meeste routers hebben één wachtrij voor pakketjes die verwerkt moeten worden, waardoor die wachtrij overbelast raakt als er bijvoorbeeld een grote download gestart wordt. Pakketjes voor kritieke applicaties als gamen of voip raken dan verstopt tussen de pakketjes voor het downloaden. Alle pakketjes worden simpelweg in de buffer gezet en verwerkt op basis van binnenkomt, een fifo-principe (first in first out).

Routers zijn al jaren voorzien van QoS (Quality of Service), een techniek die belooft dergelijke verstoppingsproblemen te voorkomen, maar in de praktijk blijkt dit vaak niet goed genoeg te werken. Dat begint al bij de configuratie, die meestal erg lastig is. Al snel ben je bezig een lijst te maken waarin je bepaald verkeer, bepaalde apparaten of applicaties prioriteit geeft ten opzichte van andere apparaten of applicaties.

Maar wat als je toepassing niet in die lijst staat? Of als alles belangrijk is? En je kunt jouw apparaat wel voor alles voorrang geven, maar dan gaan de andere netwerkgebruikers gegarandeerd klagen. In de praktijk wordt het instellen van QoS hierdoor al snel een heel ingewikkelde klus waar nooit een einde aan komt.

Het echte probleem blijft ook bij het toepassen van QoS uiteindelijk dat de router nog steeds met één wachtrij voor pakketjes werkt. QoS zorgt er alleen voor dat bepaalde pakketjes direct vooraan in de rij worden geplaatst. Natuurlijk zijn de QoS-instellingen wel het eerste waar je mee kunt experimenteren als je dat nog niet gedaan hebt. En als je weinig gebruikers of apparaten in je thuisnetwerk hebt, zou QoS je probleem wellicht op kunnen lossen.

©PXimport

Smart Queue Management

Er is gelukkig wel een oplossing voor bufferbloat bedacht in de vorm van Smart Queue Management (SQM), dat kun je beschouwen als een geavanceerde variant van QoS. Hierbij wordt de pakketjes niet in één wachtrij op een hoop gegooid, maar opgedeeld in meerdere wachtrijen. Iedere datastroom krijgt een eigen wachtrij. Vervolgens wordt aan iedere wachtrij om de beurt evenveel tijd toegekend voor de afwikkeling van de pakketjes. Zo krijgt iedere toepassing de kans om soepel door te lopen zonder dat één toepassing die veel pakketjes genereert de boel ophoudt.

Er wordt ook bijgehouden hoelang een pakketje in een wachtrij zit. Op het moment dat blijkt dat pakketjes te lang in een wachtrij zitten, worden ze simpelweg verwijderd. Dat lijkt een slecht idee, maar er moet iets vertraagd worden om te voorkomen dat een datastroom de complete buffer van een router vol laat lopen. En een datastroom die zoveel pakketjes genereert dat alles vol loopt, is doorgaans iets als een download waarbij het niet uitmaakt als die iets vertraagd wordt.

Bovenstaande beschrijving is grofweg hoe het eerste werkende SQM-algoritme FQ_CoDel (Fair Queuing with Controlled Delay) werkt. Dit wordt gecombineerd met HTB (Hierarchical Token Bucket) dat zorgt voor een snelheidsbegrenzing aangepast aan de internetsnelheid. Een snelheidsbegrenzer is nodig om te voorkomen dat de pakketjes vervolgens niet alsnog in de modem(router) in één wachtrij worden gebufferd en al het werk voor niks is.

FQ_CoDel is niet de enige vorm van SQM, zo is er in de vorm van CAKE (Common Applications Kept Enhanced) een doorontwikkeld algoritme. CAKE kan ook netwerkapparaten onderscheiden, iets wat handig is als één netwerkapparaat veel meer datastomen genereert dan andere netwerkapparaten. Ook kan CAKE tot op een bepaalde hoogte net wat meer prioriteit geven aan bijvoorbeeld voip-verkeer.

Uiteindelijk biedt iedere vorm van SQM een fikse verbetering ten opzichte een router zonder SQM. Wil je meer weten over bufferbloat en de werking van HTB/FQ_CoDel en CAKE? Kijk dan zeker eens op de website www.bufferbloat.net.

Testen op bufferbloat

Hoe kom je er achter of je echt bufferbloat gerelateerde problemen hebt? Mocht je jezelf herkennen in de eerder beschreven problemen, dan is de kans erg groot. Maar meten is natuurlijk weten en de DSLReports Speed Test die je vindt op www.dslreports.com/speedtest kan je daarbij helpen. Deze speedtest test niet alleen je maximaal haalbare snelheden, maar houdt ook de variatie in latency (de pingtijden) in de gaten. Een hoge variatie in of oplopende pingtijden vertaalt zich als bijvoorbeeld ‘lag’ (vertraging) in een online spel.

Je kunt de test het beste uitvoeren op een pc die bedraad is verbonden met je router. Om de test uit te voeren, selecteer wat voor soort verbinding je hebt (glasvezel, kabel of dsl). Vervolgens wordt de test uitgevoerd en krijg je een score voor bufferbloat en de kwaliteit van je lijn variërend van A+ voor een optimale verbinding tot F voor een dramatische verbinding.

Is de score voor bufferbloat slechter dan een B, dan heb je hoogstwaarschijnlijk last van bufferbloat. Het zou natuurlijk ook kunnen dat je last hebt van een misconfiguratie in het netwerk van je provider waar je geen invloed op hebt, maar die kans is veel kleiner. Onze eigen vdsl-internetverbinding (100/30 Mbit/s) scoort doorgaans een B of C.

©PXimport

Router met SQM

Nu weet je wat SQM is en je hebt het probleem vastgesteld. Er is dan alleen nog één probleem: vrijwel geen enkele consumentenrouter is voorzien van SQM. We weten dat de Netgear X4S (een gamingrouter) is voorzien van SQM gebaseerd op FQ_CoDel en wellicht is er nog een handjevol andere modellen. Dat betekent gelukkig niet dat er geen betaalbare opties zijn.

De eerste optie die we hebben gevonden is een Ubiquiti EdgeRouter die voorzien is van SQM gebaseerd op FQ_CoDel. De voor dit artikel gebruikte ER-X kost zo’n 50 euro en zou geschikt moeten zijn om SQM toe te passen op een internetsnelheid tot zo’n 125 Mbit/s. Is de ER-X niet krachtig genoeg, dan is er voor 180 euro de ER-4 die volgens gebruikers SQM zou moeten kunnen toepassen tot zo’n 350 Mbit/s.

©PXimport

Een groot verschil met consumentenrouters is dat een Ubiquiti EdgeRouter puur een router is, er is dus geen wifi ingebouwd. Een ander verschil is dat de router net zoals de meeste zakelijke oplossingen ontworpen is om te configureren met commando’s via een commandline-interface. Gelukkig is er wel een overzichtelijke webinterface en zolang je de router gebruikt in de standaardconfiguratie die de installatiewizard voor je instelt, werkt een EdgeRouter eigenlijk niet anders als een doorsnee (consumenten)router. Zo vind je de instellingen voor de dhcp-server gewoon in de webinterface en ook SQM schakel je via de webinterface in.

Een voordeel van de ER-X ten opzichte van de duurdere ER-4 is dat de ER-X voorzien is van een hardwareswitch. Hierdoor werkt de ER-X zoals je van een typische consumentenrouter gewend bent: één poort doet dienst als wan-aansluiting en de vier andere poorten zijn identieke lan-aansluitingen die fullspeed met elkaar communiceren. Op de krachtigere ER-4 configureer je één poort als lan-aansluiting en sluit je vervolgens altijd een losse switch aan.

De naamgeving die Ubiquiti aan de EdgeRouters geeft is nogal onnavolgbaar en grotendeels gebaseerd op het aantal poorten. De ER-X, ER-X-SFP en ER-10X bevatten dezelfde cpu en zijn dus even krachtig. Vervolgens bevatten ook de ER-4, ER-6P en ER-12 dezelfde cpu. De ER-12 is een variant van de ER-4 met een ingebouwde hardwareswitch. De ERLite-3 is duurder dan de ER-X, maar voor SQM-toepassingen langzamer.

©PXimport

Een andere optie is overigens een router voorzien van OpenWRT versie 18.06 of nieuwer die is voorzien van een SQM gebaseerd op CAKE. Omdat er allerlei routers zijn met OpenWRT-ondersteuning is het lastig om iets te zeggen over de maximale snelheden waarop SQM kan worden toegepast. Dat hangt puur van de processorkracht van de router af. Wij gebruiken voor dit artikel de relatief krachtige Linksys WRT3200ACM die volgens gebruikers SQM tot zo’n 400 Mbit/s moet kunnen toepassen.

Ook andere alternatieve firmware zoals DD-WRT of Merlin hebben de mogelijkheid tot SQM en ook een pakket als pfSense is geschikt voor SQM. Je sluit je eigen router met SQM aan op de (modem)router van je internetprovider door de (modem)router van je internetprovider in bridgemodus in te (laten) stellen of door je eigen router in de DMZ van de (modem)router te hangen.

SQM inschakelen op een EdgeRouter

Het instellen van SQM op de EdgeRouter is erg eenvoudig. Meet voordat je naar de instellingen gaat wat je download- en uploadsnelheid is, bijvoorbeeld met de eerder benoemde DSLReports Speed Test. Klik in het menu op QoS en zorgt dat het eerste tabblad Smart Queue open staat. Vul een zelfgekozen Policy name in, bijvoorbeeld Bufferbloat en selecteer bij WAN Interface de juiste netwerkpoort (waarschijnlijk eth0). Op het dashboard van de webinterface vind je eventueel welke poort er als wan-poort (internet) wordt gebruikt.

Vink vervolgens de optie Apply to upload traffic aan en vul je uploadsnelheid in Mbit/s in. Doe vervolgens hetzelfde voor de optie Apply to download traffic en vul je downloadsnelheid in Mbit/s in. Klik vervolgens op Apply. Je kunt eventueel via Show advanced options nog extra instellingen tonen, maar die zijn niet noodzakelijk.

De EdgeRouter stelt zelf een gelimiteerde snelheid in op basis van de door jou ingevoerde echte snelheden. Optioneel kun je proberen de instellingen nog wat tunen door snelheidstesten uit te voeren, terwijl je de ingevoerde download- en uploadsnelheid een procentpunt of vijf verlaagd om te zien of de latency in de DSLReports Speed Test nog lager en stabieler wordt. Je zoekt naar het punt met de hoogte snelheid en de laagste latency.

©PXimport

SQM inschakelen op een OpenWRT-router

Op OpenWRT is het instellen van SQM net iets lastiger, omdat de benodigde software niet standaard op de router is geïnstalleerd. Ook moet je eerst controleren of de ‘normale’ QoS-software geïnstalleerd is. Klik in het menu op System / Software en controleer of de packages qos-scripts en luci-app-qos geïnstalleerd zijn. Indien dat het geval is, klik dan op Remove om deze packages te verwijderen.

Klik vervolgens op Update Lists en klik het venster weg. Zoek vervolgens naar het package luci-app-sqm en klik op Install / Install. Klik het venster weg met Dismiss.

Vervolgens moet je het SQM-script activeren door in het menu te klikken op System / Startup. Zoek naar Initscript SQM en klik op Start. Controleer of de eerste knop op Enabled staat.

Je schakelt SQM in door in het menu te klikken op Network / SQM QoS. Vink op het tabblad Basic Settings de optie Enable this SQM instance aan. Selecteer bij Interface name je wan-poort. Doorgaans is dit eth0, maar op onze router eth1.2. Je kunt dit controleren door in het menu op Network / interfaces te klikken. Vervolgens moet je je download- en uploadsnelheid in Kbit/s invullen. Neem hiervoor een snelheid van 80 tot 95 procent van de gemeten snelheid, 90 procent is een mooi startpunt. De speedtest op www.speedtest.net kun je instellen op Kbit/s.

Open vervolgens het tabblad Queue Discipline en kies cake als Queueing Discipline. Kies vervolgens piece_of_cake.qos als Queue Setup Script. Open het tabblad Link Layer Adaptation en selecteer hier Ethernet als je een glasvezel- vdsl(2)- of kabelinternet-verbinding hebt. Heb je een dsl-verbinding die niet op basis van vdsl(2) is, kies dan ATM. Vervolgens verschijnt er een nieuw invulveld. Vul hier 34 in als je vdsl(2) gebruikt, 44 als je een oudere variant van dsl gebruikt, 22 als je kabelinternet gebruikt en 44 als je glasvezelinternet hebt. Klik vervolgens op Save & Apply waarna de router de instellingen toepast.

In tegenstelling tot bij de EdgeRouter geef je zelf al een lagere snelheid dan de daadwerkelijke snelheid op. Tunen is daarom interessanter dan bij een EdgeRouter. Je kunt snelheidstesten uitvoeren terwijl je de ingevoerde download- en uploadsnelheid steeds wat verhoogd tot dat de latency omhoog gaat. Verlaag de snelheid dan weer wat totdat je het punt met de hoogste snelheid en laagste latency bereikt hebt.

©PXimport

Beperkte snelheid

Het is je misschien al opgevallen dat we schreven dat je SQM afhankelijk van de gebruikte router kunt toepassen op internetsnelheden tot zo’n 400 Mbit/s. Wellicht vreemd, omdat er uiteraard veel snellere internetabonnementen bestaan en ook de goedkoopste routers voorzien zijn van gigabitpoorten die op zich prima werken in combinatie met de snelste internetabonnementen. Toch is dat maar het halve verhaal, want je router is vermoedelijk veel langzamer dan je denkt.

Veel routers maken namelijk gebruik van hardwareversnelling, ook wel hardware accelation, nat acceleration, hardware offloading, CTF (cut-through-forwarding) of Flow Accelerator genoemd. De precieze werking kan verschillen, maar in de basis wordt bij een ingeschakelde hardwareversnelling niet ieder pakketje geïnspecteerd om te beslissen wat er moet gebeuren. Een groot gedeelte van de pakketjes wordt na de inspectie van de eerste paar pakketjes afgehandeld door een gespecialiseerd gedeelte van de soc/cpu.

Voor het toepassen van QoS en SQM moeten de pakketjes echter allemaal (softwarematig) geïnspecteerd worden en dan gaat de normale processorsnelheid van de router tellen. Ook zonder SQM, maar met uitschakelde hardwarversnelling komen veel routers niet verder dan zo’n 400 Mbit/s. Wat je bij een snellere asynchrone verbinding zoals kabelinternet kunt proberen is SQM alleen toepassen op de upload.

Wil je SQM toepassen op een heel snelle internetverbinding, dan zul je aan de slag moeten met een zelfgemaakte router op basis van een relatief krachtige x86-processor in combinatie met software als pfSense.

©PXimport

Nadelen van SQM?

Het toepassen van Smart Queue Management heeft eigenlijk maar een nadeel: je maximaal haalbare snelheden worden zo’n 5 tot 15 procent lager. Dus vooral bij het downloaden van grote bestanden of het werken met cloudopslag zul je verschil merken. Ter illustratie: zonder SQM heeft onze internetverbinding een maximale down- en uploadsnelheid van zo’n 103,3 en 31,8 Mbit/s. Met een ingeschakelde SQM wordt dat maximaal 90,1 en 27,2 Mbit/s.

Uiteraard gaan we er voor die genoemde circa tien procent snelheidsverlaging er wel van uit dat de router de snelheid van je internetverbinding daadwerkelijk kan bijhouden, anders liggen de maximale snelheden met ingeschakelde SQM natuurlijk veel lager.

Resultaat

Waar we zonder het toepassen van een router met SQM in DSLReports Speed Test een bufferbloatscore van B of C haalden, is dat na het instellen van SQM een A+. Het toepassen van SQM zorgt dus ook meetbaar voor een soepeler werkende internetverbinding.

Heb je geen last van de in de inleiding omschreven problemen, dan hoef je niet meteen aan de slag met SQM. Maar heb je al een router met de mogelijkheid tot SQM, dan zouden we zeker aanraden hier mee te experimenteren. Zeker als je veelvuldig online games speelt, is SQM een waardevolle aanvulling. Heb je een relatief langzaam asynchroon internetabonnement (tot 100 Mbit/s) op basis van dsl of kabel, en last van de omschreven problemen, dan is het toepassen van SQM zonder al te hoge kosten mogelijk.

Lagere internetsnelheden hebben hier bovendien het meeste profijt van omdat de buffer sneller vol loopt. Voor de snelste gigabit-abbonementen is SQM doorgaans (nog) ongeschikt omdat het inschakelen van SQM betekent dat de hardwareversnelling van de router wordt uitgeschakeld. Op een snelle synchrone glasverbinding zul je echter veel minder snel last van bufferbloat hebben.

▼ Volgende artikel
Check de nieuwe The Super Mario Galaxy Movie-trailer
Huis

Check de nieuwe The Super Mario Galaxy Movie-trailer

Nintendo heeft gisteren tijdens een speciale Direct-livestream een nieuwe trailer getoond van de aankomende animatiefilm The Super Mario Galaxy Movie.

Het bedrijf liet afgelopen vrijdag al weten een Direct uit te zenden rondom de aankomende film, en afgelopen zondag was deze te zien. In de nieuwe trailer die werd vertoond is te zien hoe Mario en Luigi bij een soort omgekeerde piramide aankomen - een bouwwerk dat ook in het spel Super Mario Odyssey zat - en hoe ze hier vervolgens in gaan.

Daar maken ze kennis met Yoshi, een dinosaurus die al sinds Super Mario World deel uitmaakt van de Mario-spellen. Ook personages als Baby Mario, Baby Luigi en Birdo worden voor het eerst gespot.

Watch on YouTube

Over The Super Mario Galaxy Movie

Nadat enkele jaren geleden de uiterst succesvolle animatiefilm The Super Mario Bros. Movie uitkwam - logischerwijs gebaseerd op de langlopende Mario-reeks van Nintendo - werkt het bedrijf samen met Illumination al enige tijd aan het vervolg, The Super Mario Galaxy Movie.

Net zoals The Super Mario Bros. Movie lijkt ook het vervolg elementen uit allerlei verschillende Mario-games te pakken, al gebruikt deze nieuwe film de insteek van de twee Super Mario Galaxy-games, waarin Mario het universum afreist.

Diverse acteurs uit de eerste film keren terug in dit vervolg. Mario en Luigi worden wederom ingesproken door Chris Pratt en Charlie Day, en Jack Black vertolkt wederom de stem van Bowser. Ook acteurs als Keegan-Michael Key en Anya Taylor-Joy keren terug. De stem van Bowser Jr. zal in deze film ingesproken worden door Benny Safdie - vooral bekend voor zijn regiewerk - en het personage Rosalina krijgt een stem via Oscar-winnares Brie Larson.

Nintendo heeft daarnaast aangekondigd dat The Super Mario Galaxy Movie wereldwijd - op sommige markten na - op 1 april dit jaar in première zal gaan. Eerst was sprake van 3 april, maar dit is dus naar voren gehaald. In Japan gaat de film pas later die maand in première.

Nintendo-films

Nintendo zet steeds meer in op het uitbrengen van films gebaseerd op IP van het bedrijf. Naast deze Mario-films werkt Nintendo ook aan een live-action verfilming van The Legend of Zelda-reeks, die in 2027 in de bioscoop zal draaien en daarna naar Netflix komt. Volgens geruchten gaat het bedrijf ook werken aan een spin-off-animatiefilm rondom Donkey Kong, die in de Mario-films wordt ingesproken door Seth Rogen.

Nintendo gaf onlangs in een gesprek met investeerders aan dat ze de verfilmingen niet maken om op korte termijn winst te maken, maar om de franchises van het bedrijf bij een nog groter publiek vanzelfsprekend te maken - wat op de lange termijn de games van het bedrijf nog populairder moet maken.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.

▼ Volgende artikel
Dialogen beter volgen? Zo maak en bewerk je zelf ondertitels met Subtitle Edit
© Reshift Digital BV
Huis

Dialogen beter volgen? Zo maak en bewerk je zelf ondertitels met Subtitle Edit

Anderstalige of slecht verstaanbare dialogen, of video's die je in een rumoerige omgeving bekijkt: met goede ondertiteling los je zulke problemen op. We tonen hoe je zelf ondertitels maakt, aanpast, opmaakt, synchroniseert en vertaalt. We gebruiken hiervoor het gratis en opensource Subtitle Edit.

Dit gaan we doen

In dit artikel zie je hoe je in Subtitle Edit ondertitels maakt, aanpast en synchroniseert met beeld en geluid. Je leert werken met start- en eindtijden, dialogen timen via de golfvorm van het audiospoor en ondertitels automatisch laten genereren met AI-modellen als Whisper en Vosk/Kaldi. We laten ook zien hoe je teksten controleert, vormgeeft en vertaalt, en hoe je de ondertitels daarna probleemloos inzet in mediaspelers zoals VLC en Kodi.

Subtitle Edit

We gaan ervan uit dat je een of meer video's wilt ondertitelen. Daarvoor gebruiken we het gratis opensource-programma Subtitle Edit. Kies bij voorkeur de installeerbare versie en download het zip-archief. Pak dit uit en dubbelklik op het exe-bestand; je kunt de standaardopties tijdens de installatie gerust behouden.

Bij de eerste keer opstarten stel je (bijvoorbeeld) Nederlands in als interfacetaal via Options / Choose language. Standaard gebruikt de app DirectShow om video's af te spelen tijdens het timen van de ondertiteling, maar je kunt beter VLC media player installeren, dat met vrijwel alle codecs werkt. In Subtitle Edit verwijs je daarna naar VLC via Instellingen / Voorkeuren, waar je in de rubriek Videospeler de optie VLC media player activeert. Wordt deze niet automatisch gevonden door Subtitle Edit, vul hier dan handmatig het pad in naar de VLC-installatiemap (bijvoorbeeld C:\Program Files\VideoLAN\VLC) en bevestig met OK.

Subtitle Edit staat klaar: de gewenste interfacetaal en VLC als mediaspeler.

Lees ook: VLC: het Zwitsers zakmes onder de mediaplayers

Handmatig

Subtitle Edit is nu klaar voor gebruik. Haal het gewenste videobestand op via Video / Videobestand openen, of eventueel via Video via URL openen, waarvoor de benodigde onderdelen automatisch kunnen worden gedownload. Je kunt de video bekijken in het afspeelvenster en met de blauwgerande vierkante knop onderin schermvullend afspelen (druk op Esc om terug te keren).

Maak nu een nieuw ondertitelingsbestand aan via Bestand / Nieuw. Open het tabblad Aanmaken (linksonder) en speel de video af tot de eerste zin die je wilt ondertitelen, of tot het punt waar je commentaar wilt toevoegen.

Klik op Nieuwe ondertitel toevoegen en typ de tekst in het veld Tekst. De app schat de duur automatisch in op basis van het aantal tekens, maar je kunt deze altijd aanpassen met de pijltjesknoppen. Klik op Begintijd instellen (of druk op F11) om de huidige positie als starttijd te nemen en op Eindtijd instellen (of druk op F12) voor het eindpunt. De tijdsduur wordt dan automatisch hierop berekend.

Positioneer de videospeler op het punt voor de volgende ondertitel en klik op Nieuwe ondertitel toevoegen om verder te gaan. Herhaal dit voor alle gewenste ondertitels. Met Naar tekstpositie en pauzeren spring je direct naar de begintijd van een geselecteerde ondertitel.

Je kunt de ondertitels handmatig toevoegen en nauwkeurig timen.

Audio-visualisatie

Je kunt sneltoetsen instellen om preciezer door het videobeeld te navigeren. Ga naar Instellingen / Voorkeuren / Sneltoetsen en scrol in het rechterdeelvenster naar het onderdeel Video. Daar vind je opties als Eén frame terug/vooruit en Eén seconde terug/vooruit, waaraan je onderaan de gewenste toetscombinatie kunt toewijzen.

Terug in het hoofdvenster klik je in het onderste vak om een golfvorm toe te voegen. Het audiospoor wordt nu uit je video gehaald en als golfvorm weergegeven, wat even kan duren. De pieken tonen waar gesproken wordt. Klik net voor het begin van een gesproken zin, typ de bijbehorende ondertitel bij Tekst en druk op F11 (Begintijd instellen). Doe hetzelfde bij het eindpunt met F12. Je kunt het ondertitelblok op de golfvorm ook met de muis verplaatsen en de begin- en eindpunten ervan aanpassen. Zet tot slot een vinkje bij Ondertitelselectie synchroon met afspelen, zodat de ondertitelblokken rood oplichten tijdens het afspelen, wat controle vergemakkelijkt.

De ondertitels netjes synchroon met de audiogolfvormen.

AI-gestuurd

Vind je handmatig ondertitels maken te tijdrovend, genereer ze dan automatisch met artificiële intelligentie. Subtitle Edit biedt dit standaard aan. Open Video en kies Audio naar tekst (Whisper) of Audio naar tekst (Vosk/Kaldi). Beide zijn AI-modellen voor spraakherkenning. Whisper is moderner en accurater, maar werkt trager en vergt meer rekenkracht dan het opensource-duo Vosk/Kaldi dat volledig offline werkt. Antwoord Ja op de vraag om FFmpeg te downloaden en, indien gevraagd, ook op het ophalen van extra componenten als libvosk of Purfview Faster-Whisper-XLL. Na de automatische download kun je verder.

Bij Whisper klik je op de knop met drie puntjes en kies je het gewenste model. Groter betekent doorgaans accurater, maar ook zwaarder en trager. Modellen met .en ondersteunen enkel Engels. Voor andere talen kies je bijvoorbeeld medium (1,5GB) of large-v3 (3,5GB), afhankelijk van de videolengte en de kracht van je pc (RAM, cpu en gpu). Bevestig met Downloaden. Selecteer vervolgens de audiotaal bij Taal kiezen. Dit wordt ook de ondertitelingstaal, tenzij je Vertaal naar Engels activeert. Laat de overige opties ingeschakeld. Bij Geavanceerd kun je met talrijke parameters bijsturen, maar we hebben niet de ruimte hier verder op in te gaan. Start het proces met Genereren (of via Batchmodus voor meerdere video's tegelijk). De duurtijd hangt onder meer af van de hoeveelheid gesproken audio.

De opties bij Vosk/Kaldi zijn beperkter. Kies een passend taalmodel uit circa 25 talen, waaronder Dutch (large, 860 MB), download het model en klik op Genereren, waarbij je Nabewerking inschakelen geactiveerd laat.

Whisper is het meest geavanceerde AI-model, maar de verwerking vergt rekenkracht en tijd.

Vertalen (semi-automatisch)

Wil je je ondertiteling vertalen voor een anderstalig publiek, dan hoef je dat niet handmatig te doen. Beginnen we met de semi-automatische methode. Open Vertalen en kies Automatisch vertalen via kopiëren en plakken. Laat de standaardinstellingen ongewijzigd. Open vervolgens Google Vertalen in je browser en stel de gewenste bron- en doeltaal in. Deze dienst blijkt het beste samen te werken met de app. Klik in Subtitle Edit op Vertalen om het eerste tekstblok naar het klembord te sturen. Klik daarna in Google Vertalen op de knop Vertaling kopiëren en keer terug naar Subtitle Edit. Klik op Vertaalde tekst van klembord halen zodat de vertaling in het rechterdeelvenster verschijnt. Klik vervolgens op Brontekst naar klembord kopiëren om het volgende blok te vertalen. Herhaal dit tot alle tekst is vertaald en bevestig met OK. De vertaalde ondertitels verschijnen netjes naast de originele tekst in Subtitle Edit.

Met wat kopieer- en plakwerk kom je ook vrij snel tot een goede vertaling.

Vertalen (volautomatisch)

Het kan ook eenvoudiger, maar daarvoor heb je een API-sleutel nodig van een vertaaldienst als Google, Bing, Microsoft, DeepL of een AI-bot als ChatGPT. We nemen ChatGPT als voorbeeld.

Ga naar platform.openai.com/api-keys, meld je aan met je account en klik op + Create new secret key. Geef een naam op en bevestig met Create secret key. Kopieer de sleutel met Copy. Open in Subtitle Edit Vertalen / Automatisch vertalen, kies ChatGPT in het uitklapmenu en plak de sleutel met Ctrl+V bij API-sleutel. Selecteer het gewenste model, zoals gpt-4, en stel de bron- en doeltaal in. Via Geavanceerd kun je eventueel extra instructies meegeven. Klik op Vertalen om het vertaalproces te starten.

Met een (betaalde) API-sleutel kun je ondertitels volautomatisch laten vertalen.

Optimaliseren

Bij AI-gegenereerde ondertitels is de kans groot dat je nog wat moet bijwerken. Daarvoor zijn verschillende hulpmiddelen voorzien. Zo kun je een ingebouwde spellingscontrole uitvoeren via Spelling / Spellingcontrole. Haal het juiste woordenboek op via het knopje met de drie puntjes en klik op Downloaden. De rest verloopt vanzelf. Je kunt ook nieuwe woorden aan het gebruikerswoordenboek toevoegen. In het menu Spelling vind je verder handige functies als Dubbele woorden zoeken en Dubbele regels zoeken.

Bij Bewerken / Lange titels opdelen kun je instellen dat te lange ondertitels automatisch worden gesplitst zodra ze een bepaalde regellengte overschrijden, bijvoorbeeld 43 tekens. Via Tekens voor in-/uitpunten titels kun je deze gesplitste regels ook laten eindigen met een specifiek leesteken, zoals - of .

Wanneer je door de ondertitels bladert, zie je mogelijk dat sommige regels een oranje achtergrond hebben in de kolom Tijdsduur. Dat betekent dat ze te kort of te lang zichtbaar blijven in verhouding tot de tekst of de ingestelde leessnelheid. Je kunt de bijbehorende drempelwaarden aanpassen via Instellingen / Voorkeuren, rubriek Algemeen, bij Min. en Max. tijdsduur in milliseconden (standaard respectievelijk 1000 en 8000) en Maximaal aantal tekens/sec (standaard 25). Via Extra / Lijst met fouten krijg je een overzicht van alle ondertitels die deze waarden overschrijden. In dit menu vind je ook nuttige functies als Hoofd-/kleine letters wijzigen en Netflix kwaliteitscontrole, waarmee je de ondertiteling aan verschillende kwaliteitscriteria kunt toetsen.

In het voorkeurenmenu kun je zelf heel wat 'drempelwaarden' instellen.

Weergave bewerken

Standaard slaat Subtitle Edit je ondertiteling op via Bestand / Opslaan in het populaire srt-formaat (SubRip Subtitle). Zo'n srt-bestand bestaat uit platte tekst met sequentienummers, start- en eindtijden en ondertitelregels. Het formaat wordt breed ondersteund en is eenvoudig te bewerken, desnoods met een editor als Kladblok, maar biedt beperkte opmaakopties.

De belangrijkste vormgevingsfuncties zie je wanneer je in Subtitle Edit met rechts klikt op een of meer geselecteerde ondertitels. In het snelmenu vind je opties als Vet, Cursief, Onderstrepen, Kleur, Lettertype en Uitlijnen. Deze opmaak verschijnt als html-tags in de ondertitels en is zichtbaar in de voorbeeldweergave en in videospelers die dit ondersteunen. Via Opmaak verwijderen kun je specifieke opmaakelementen weer weghalen.

Het ASS/SSA-formaat (Advanced SubStation Alpha) biedt meer opmaakmogelijkheden dan srt. Je stelt dit in via Opmaak, in de knoppenbalk van Subtitle Edit, en slaat het resultaat op als .ass-bestand. De gratis tool Aegisub waarover je meer leest in het kader biedt op dit vlak nog meer opties.

De opmaakmogelijkheden van srt zijn relatief beperkt.

Opmaak met Aegisub

Het srt-ondertitelingsbestand is ongetwijfeld het populairste en meest ondersteunde formaat, maar het ass-formaat is handig voor wie de opmaak van de ondertiteling, zoals stijl, positie en zelfs animatie, belangrijk vindt. Ook Subtitle Edit kan hiermee overweg, maar Aegisub is flexibeler. Start de app na installatie op en haal het gewenste ondertitelingsbestand (zoals srt of ass) op. Ga naar Ondertitels en kies Stijlbeheerder. Klik onderaan rechts op Nieuw en vul een stijlnaam in. Leg alle gewenste opmaakelementen vast, zoals lettertype, grootte, vet, cursief, onderstrepen, kleuren (ook voor rand en schaduw), marges, uitlijning, positionering, rotatie en meer.

Bevestig met OK en met Sluiten. Selecteer nu de (gewenste) ondertitels en selecteer net onder de knoppenbalk de gewenste stijl (standaard Default). Bewaar je ondertiteling via Bestand / Ondertitels opslaan als en kies het .ass-formaat. Je zult zelf moeten ondervinden in hoeverre de opmaak door je mediaspeler(s) wordt ondersteund.

Synchroniseren

Een van de vervelendste problemen bij het bekijken van video met ondertiteling is dat de tekst niet synchroon loopt met de dialogen: ze verschijnt net te vroeg of te laat. Dit kun je deels corrigeren in de meeste mediaspelers, maar het gaat vaak beter met een ondertitelingseditor als Subtitle Edit. Kleine afwijkingen kun je handmatig bijsturen door de tijdcodes (begintijd, eindtijd, tijdsduur) aan te passen, al wordt dat snel tijdrovend. Gelukkig kan Subtitle Edit dit ook grotendeels automatisch corrigeren.

Bij een constante verschuiving, waarbij alle ondertitels evenveel afwijken, is de oplossing eenvoudig. Selecteer de gewenste (eventueel alle) ondertitels, ga naar Synchroniseren en kies Verschuiven. Vul de exacte tijdsduur in, bijvoorbeeld 00:00:05,500, en klik op Eerder weergeven of Later weergeven.

Moeilijker is het als de ondertitels geleidelijk verder uit de pas lopen naarmate de video vordert, bijvoorbeeld 5 seconden te vroeg aan het begin en 2 seconden te laat op het einde (lineaire verschuiving). Open dan Synchroniseren / Puntsynchronisatie. Dubbelklik op het eerste foutpunt, stel de juiste tijd in en bevestig met Sync-punt instellen. Doe dit opnieuw bij een volgend foutpunt en klik op Toepassen om de tussenliggende tijdcodes automatisch te laten herberekenen.

Een alternatief is Synchroniseren / Visuele synchronisatie. Kies daarbij de juiste ondertitel (via Tekst) bij het begin van de scène en eventueel een tweede bij het eindpunt. Met de knop Synchroniseren worden de overige tijdcodes verhoudingsgewijs aangepast.

Lineaire verschuiving is vaak wat lastiger om te corrigeren.

Gebruiken in VLC

We gaan ervan uit dat je nu een geschikt ondertitelingsbestand hebt dat je wilt gebruiken in je favoriete mediaspeler. We tonen hoe dit werkt in VLC media player voor Windows. Via het menu Ondertitels kun je het juiste audiospoor kiezen als de video meerdere sporen bevat, of indien er meertalige ondertitelingsbestanden in de videomap werden geplaatst (zoals <filmnaam>.mp4, <filmnaam>.nl.srt en <filmnaam>.en.srt). Tijdens het afspelen kun je met de V-toets ook snel naar het volgende ondertitelspoor schakelen. Via Ondertitelbestand toevoegen verwijs je naar het gewenste ondertitelingsbestand.

Je kunt in VLC ook de timing bijstellen. Druk tijdens het afspelen op G om de ondertitels 100 ms eerder te tonen of op H om ze 100 ms later te laten verschijnen. Via Gereedschap / Spoorsynchronisatie kun je op het tabblad Synchronisatie exact een tijdswaarde invoeren. Met Ondertitelsnelheid bepaal je hoe snel ondertitels verschijnen en verdwijnen, wat handig is bij een afwijkende framerate. Met Ondertitelduur-factor stel je in hoelang ondertitels in beeld blijven; een waarde van 0,500 bijvoorbeeld houdt ze iets langer zichtbaar.

Om de weergave aan te passen open je Gereedschap / Voorkeuren / Ondertitels/OSD. Bij Ondertiteleffecten kun je onder meer het lettertype, de tekstgrootte, de standaardkleur en de positie van de ondertitels wijzigen.

Je kunt de ondertitelweergave ook in VLC zelf aanpassen.

Gebruiken in Kodi

Tot slot bekijken we hoe je met ondertiteling omgaat in het populaire mediacenterprogramma Kodi.

Tijdens het afspelen klik je rechtsonder op het tekstballonicoon Ondertiteling. Schakel Ondertiteling activeren in en selecteer bij Subtitel het gewenste ondertitelspoor. Je kunt ook kiezen voor Ondertiteling zoeken en verwijzen naar het juiste ondertitelingsbestand. Verder is er de optie Download ondertiteling, maar daarvoor moet je eerst een ondertitelingsservice instellen.

Ga hiervoor in het algemene instellingenmenu - druk eventueel enkele keren op Esc - via het tandwielpictogram linksboven naar Add-ons en kies (Installeer van repository /) Ondertiteling. Selecteer een dienst, bijvoorbeeld OpenSubtitles.org, klik op Installeren en daarna op Configureren. Vul hier je accountgegevens in (in ons voorbeeld aan te maken via www.opensubtitles.org/nl).

Ga terug naar Instellingen en open Speler / Ondertiteling. Bij Talen van te downloaden ondertiteling stel je je voorkeurstaal in (bijvoorbeeld Dutch) en bij Standaard filmdienst verwijs je naar OpenSubtitles.org. In dit menu kun je ook de weergave van ondertitels aanpassen, met opties voor onder meer Positie op het scherm, Lettertype, Grootte, Stijl en Kleur.

Om de timing van ondertitels te corrigeren, klik je tijdens het afspelen opnieuw op het tekstballon-pictogram en kies je Ondertitelsynchronisatie. Met een schuifbalk kun je de ondertiteling enkele seconden vroeger of later laten verschijnen. Simpel, maar wel doeltreffend bij een constante verschuiving.

Ook in Kodi kun je de weergave van ondertitels mooi aanpassen.

Lees ook: Films, muziek en meer: beheer al je media met Kodi

🍿 Lekker voor erbij

(wanneer je een ondertiteld filmpje gaat kijken)