ID.nl logo
Huis

Jasper-tutorial: Bouw je eigen spraakassistent

Google en Amazon proberen hun spraak-gestuurde apparaten Home en Echo als een centraal punt voor slimme apparaten aan te bieden. Maar deze bedrijven hebben het niet zo op privacy. Gelukkig is er een opensource-alternatief. Lees in deze Jasper-tutorial hoe je je eigen spraakassistent bouwt!

Aan het einde van dit artikel heb je dus je eigen Google Home of Amazon Echo, maar dan een die je privacy respecteert en waar je zelf volledige controle over hebt. Daarvoor zetten we een Raspberry Pi 3 in. Dat minicomputertje heeft ingebouwde wifi, zodat we een kabel minder nodig hebben. Het besturingssysteem plaatsen we op een micro-sd-kaartje. Het enige wat we dan naast de voeding nog dienen aan te sluiten, zijn een microfoon en luidsprekers. De luidsprekers sluiten we aan op de analoge uitgang van de Pi. De geluidskwaliteit daarvan is niet geweldig, maar voor zo’n computerstem is het voldoende.

Een analoge ingang heeft de Pi niet, maar we sluiten eenvoudig een usb-microfoon aan. Het resultaat van ons knutselwerk is uiteraard niet zo mooi als een Google Home of Amazon Echo, maar als je wat handig bent, bouw je het geheel eenvoudig in een houten behuizing die niet misstaat in je woonkamer. Die afwerking laten we als oefening voor jou!

Jasper downloaden

Voor de software gebruiken we Jasper, een opensource-spraakassistent. De oorspronkelijke ontwikkelaars hebben het project al een tijdje geen update meer gegeven, maar Matt Curry heeft de ontwikkeling op zich genomen en al enkele nieuwe releases uitgebracht. We werken in deze masterclass met versie 1.5 van Matt Curry.

Let dus op dat je niet een officieel image van het Jasper-project downloadt, want dat is niet meer up-to-date. Download een image van de website van Matt Curry (http://bit.ly/2nwRBV9). Vink het bestand op de Amazon Drive van Matt Curry aan en klik onderaan op Download. Het is 1,4 GB groot en het duurt wel even voor je het binnen hebt.

Pak het tar.gz-bestand uit, bijvoorbeeld met het programma 7-Zip dat allerlei compressieformaten ondersteunt. Open het bestand daarvoor met 7-Zip en klik op Extract om het img-bestand erin uit te pakken.

Schrijf dan het uitgepakte bestand naar het micro-sd-kaartje. Dat kan met het programma Win32DiskImager. Steek je micro-sd-kaartje in de kaartlezer van je computer en kies in Win32DiskImager de schijfletter van je kaartje. Selecteer het img-bestand van Jasper en klik op Write om het naar je kaartje te schrijven.

Let op: het programma overschrijft de volledige inhoud van het kaartje! Gebruik dus alleen een kaartje waar geen data meer op staan die je nodig hebt, en controleer dubbel of je de juiste schijfletter kiest voordat je op Write klikt. Nadat het image naar het kaartje is geschreven, haal je het uit je kaartlezer en steek je het in je Pi.

Raspbian op Raspberry Pi

Sluit tijdelijk een toetsenbord en scherm op je Pi aan voor de configuratie, sluit je luidsprekers en usb-microfoon aan en tot slot de voedingskabel. Als alles goed gaat, start je Pi nu en krijg je een inlogprompt van Raspbian te zien. Log in met gebruikersnaam pi en wachtwoord raspberry. Voer het configuratieprogramma van Raspbian uit met

sudo raspi-config

Kies eerst Expand Filesystem zodat het bestandssysteem je volledige micro-sd-kaart inneemt. Kies daarna Change User Password om het standaardwachtwoord te wijzigen.

Zorg dat Wait for Network at Boot ingeschakeld is. Bij Internationalisation Options kies je je taal, tijdzone, toetsenbordindeling en je land. Ga dan naar Advanced Options en zet onder Memory Split de hoeveelheid geheugen voor de gpu op 16 megabytes, zodat je zoveel mogelijk geheugen voor de cpu overhoudt. Schakel ook de ssh-server in onder SSH, zodat je het toetsenbord en beeldscherm niet aangesloten hoeft te houden, maar met Putty via het netwerk kunt inloggen. Ga tot slot met de Tab-toets naar Finish en antwoord No bij de vraag om nu te herstarten.

Nu hoeven we alleen nog wifi te configureren. Scan naar de aanwezige wifi-netwerken met

sudo iwlist wlan0 scan

Achter ESSID staat de naam van het netwerk. Open daarna het configuratiebestand met

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

en voeg de configuratie voor je netwerk toe met regels

network={, ssid="JouwESSID", psk="JouwWifiWachtwoord"

En

}

Herstart daarna je Pi met

sudo reboot

©PXimport

Audio instellen

We gaan ervan uit dat je speakers hebt aangesloten op de 3,5mm-uitgang van de Pi en een usb-luidspreker op een usb-poort. We zorgen dat Raspbian de usb-audiodrivers eerst laadt. Open daarvoor het juiste bestand met

sudo nano /etc/modprobe.d/alsa-base.conf

en zorg dat bij snd_usb_audio als index 0 staat en bij snd_bcm2835 als index 1. Zorg ook dat op de laatste regel van dit bestand bij slots eerst snd-usb-audio komt en daarna pas snd-bcm2835. Sla het bestand op met Ctrl+O en sluit nano af met Ctrl+X. Voer daarna

sudo nano /usr/share/alsa/alsa.conf

uit en zoek met Ctrl+W naar defaults.ctl.card. Controleer of hier en bij defaults.pcm.card als waarde 0 staat en verander dit indien nodig. Controleer nu of je met de luidspreker iets kunt opnemen. Voer daarvoor de opdracht

arecord temp.wav

uit en spreek iets in. Sluit de opname af met Ctrl+C. Speel de opname daarna af met

aplay -D hw:1,0 temp.wav

Hoor je wat je zojuist hebt ingesproken, dan is je audio correct geconfigureerd.

Lees verder op de volgende pagina.

Nu is ons besturingssysteem klaar om Jasper te installeren.

Jasper installeren en configureren

Ga naar de juiste directory met

cd Jasper-RPI-Tools/installers

en voer het installatieprogramma uit met

./jasper-repo-installer.sh

Druk op Enter om te bevestigen dat je Jasper wilt downloaden, bevestig dat gebruiker pi het programma draait, dat je het programma in de directory /home/pi wilt installeren en kies de versie main. Herstart daarna je Pi.

Met de standaardinstellingen werkt Jasper al bijna, maar je hebt nog één ding nodig: een server-token voor Wit.ai. Log op die website in met een GitHub- of Facebook-account. Klik zodra je ingelogd bent bovenaan rechts op Settings en kopieer het Server Access Token. Voer dan op je Pi de opdracht

nano ~/.jasper/profile.yml

uit en vul wat gegevens in, zoals je naam, Gmail-adres, Gmail-wachtwoord, telefoonnummer, locatie, tijdzone enzovoort. Informatie die je niet wilt invullen, laat je gewoon open.

Vul bij stt_engine de engine witai in. Voeg ook de regels

witai-stt:

En

access_token: ERJKGE86SOMERANDOMTOKEN23471AB

toe, waarbij je uiteraard je eigen token van Wit.ai invult. Sla het bestand op met Ctrl+O en sluit het af met Ctrl+X. Herstart Jasper met

sudo systemctl restart jasper-daemon.service

©PXimport

Debuggen

Als Jasper niet doet wat hij moet doen, is het moeilijk om te zien wat er juist misloopt. Is het omdat Jasper je accent niet verstaat, of omdat je een fout in het configuratiebestand hebt staan? Sluit daarom alle draaiende Jasper-instanties af met

pkill python2

en start Jasper manueel op met

jasper-client/jasper.py --debug

Het programma toont nu zijn uitvoer en met de optie --debug krijg je nog meer informatie te zien. Als er iets mis is met het configuratiebestand, krijg je hier een waarschuwing of foutmelding te zien. En als je een opdracht inspreekt, krijg je de tekst te zien die Jasper uit je spraak herkent. Zo weet je onmiddellijk wanneer je wat duidelijker moet articuleren. Is je probleem opgelost, sluit Jasper dan af met Ctrl+C en start het programma terug op de achtergrond op met

sudo systemctl start jasper-daemon.service

Praten met Jasper

Wanneer Jasper start, zegt hij “How can I be of service?” gevolgd door je naam. Vanaf dan luistert je assistent naar jou. Als je “Jasper” zegt, laat Jasper een hoog biepje horen. Dan spreek je je opdracht in, bijvoorbeeld “What’s the time?”, waarna Jasper een laag biepje genereert. Daarna spreekt Jasper zijn antwoord uit. Let wel op dat je onmiddellijk na het eerste biepje je opdracht inspreekt, want Jasper wacht niet lang.

Elke opdracht die Jasper verstaat, zit in een afzonderlijke module. Standaard komt Jasper al met enkele modules, zoals de tijd, “How’s the weather”, “What’s in the news”, “What’s the meaning of life”, “Tell me a joke”, enzovoort.

Voor de integratie met Gmail vul je de variabelen gmail_address en gmail_password in het configuratiebestand ~/.jasper/profile.yml in met nano. Let op: iedereen die het micro-sd-kaartje van je Pi steelt of via het netwerk op je Pi inbreekt omdat je het standaardwachtwoord niet hebt veranderd, is zo in staat om je Gmail-wachtwoord te lezen.

Gebruik daarom authenticatie in twee stappen voor Gmail en stel een app-wachtwoord in voor Jasper, dat je in zijn configuratiebestand invult. Dit wachtwoord kun je op elk moment intrekken op https://myaccount.google.com/security. Als je Gmail-gegevens geconfigureerd zijn, vraag je aan Jasper “Do I have any email?” en antwoordt hij met het aantal ongelezen e-mails.

Ook integratie met Facebook is mogelijk: dan kun je je Facebook-notificaties opvragen of Jasper vragen wie er vandaag jarig is. En heb je Spotify Premium, dan laat je eenvoudig je afspeellijsten van Spotify door je Pi afspelen met stembesturing. Beide modules vereisen wel wat meer configuratie, we verwijzen daarvoor naar de documentatie van Jasper.

Pocketsphinx, een andere speech-to-text-engine

We hebben nu met de standaard speech-to-text-engine (STT) Wit.ai gewerkt, omdat die eenvoudig te activeren is. Een nadeel is dat die al je spraak over internet stuurt naar de servers van Wit.ai, wat vanuit privacystandpunt niet aan te raden is. Bovendien levert het sturen van je spraak over internet ook een vertraging op. We tonen hier daarom hoe je naar een offline stt-engine overschakelt, Pocketsphinx. Let wel op: die herkent iets minder goed spraak dan Wit.ai.

Ververs eerst de pakketbronnen van Raspbian met

sudo apt-get update

Installeer daarna Pocketsphinx en de Python-module voor Pocketsphinx met

sudo apt-get install pocketsphinx python-pocketsphinx

Daarna dienen we enkele afhankelijkheden zelf te compileren. Dat is nogal een omslachtig proces. We verwijzen daarvoor naar de documentatie van Jasper, maar niet alles klopt meer. Volg eerst de uitleg onder het kopje ‘Installing CMUCLMTK’.

Download nu OpenFST 1.3.4 met de opdracht

wget -O openfst_1.3.4-1_armhf.deb https://docs.google.com/uc?id=0ByR-0pXyV40pNlZZY0p6MUVpWW8&export=download

En installeer het met

sudo dpkg -i openfst_1.3.4-1_armhf.deb

Download dan m2m-aligner 1.2 met

wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/m2m-aligner/m2m-aligner-1.2.tar.gz

Pak het uit met

tar xvzf m2m-alifner-1.2.tar.gz

Open de directory en compileer het met

cd m2m-aligner-1.2 en sudo make

Ga terug naar de home-directory met

cd

en download mitlm 0.4.1 met

wget https://github.com/mitlm/mitlm/releases/download/v0.4.1/mitlm_0.4.1.tar.gz

Pak het uit met

tar xvzf mitlm_0.4.1.tar.gz

Ga in de directory met

cd mitlm-0.4.1/

configureer het pakket met

./configure

en installeer het met

sudo make install

©PXimport

Ga terug naar de home-directory met

cd

en download Phonetisaurus 0.8.1 met

wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/phonetisaurus/is2013-conversion.tgz

Pak het bestand uit met

tar xvzf is2013-conversion.tgz

Ga naar de juiste directory met

cd is2013-conversion/phonetisaurus/src

en compileer Phonetisaurus met

sudo make

Maak ondertussen maar een wandeling met de hond, want het compileren duurt een tijdje. Ga dan terug naar de home-directory (met cd) en kopieer enkele gecompileerde bestanden met

sudo cp ~/m2m-aligner-1.2/m2m-aligner is2013-conversion/bin/phonetisaurus-g2p /usr/local/bin

Download dan het Phonetisaurus FST-model met

wget https://www.dropbox.com/s/kfht75czdwucni1/g014b2b.tgz

en pak het uit met

tar xvzf g014b2b.tgz

Ga daarna naar de uitgepakte directory met

cd g014b2b/

en bouw het FST-model met

./compile-fst.sh

Ga daarna terug naar de home-directory en geef de uitgepakte directory een andere naam met

mv ~/g014b2b ~/phonetisaurus

Je bent nu eindelijk klaar met de installatie van Pocketsphinx! Pas daarna in ~/.jasper/profile.yml de stt-engine aan door de regel

stt_engine: sphinx

Voeg ook de regel

pocketsphinx:

En daaronder

hmm_dir: '/usr/share/pocketsphinx/model/hmm/en_US/hub4wsj_sc_8k'

toe. Sla op met Ctrl+O en sluit nano af met Ctrl+X. Start Jasper nu opnieuw, waarna je spraakassistent werkt zonder je spraak het internet op te sturen. Het heeft dus wat moeite gekost, maar daar krijg je wel wat voor terug!

Jasper ondersteunt dus meerdere speech-to-text engines. Drie daarvan sturen wat je tegen Jasper zegt door over internet om de spraak daar te analyseren en de herkende tekst terug te sturen. De engine van Wit.ai werkt met het Wit.ai-platform dat spraakherkenningsalgoritmes door crowdsourcing traint. De engine van Google is dezelfde als die je op Android gebruikt als je “OK, Google” zegt. En de engine van AT&T bouwt voort op de diensten van het gelijknamige telecommunicatiebedrijf.

Als je niet wilt dat anderen in principe kunnen meeluisteren in je woonkamer naar wat je tegen Jasper zegt, laat je deze engines links liggen. Maar toevallig zijn het wel de engines die het beste werken. Wil je een offline stt-engine, dan is Pocketsphinx de eerste keuze. Deze opensource-engine werkt snel en is geoptimaliseerd voor systemen met weinig processorkracht zoals de Raspberry Pi.

De spraakherkenning is wel duidelijk minder goed dan die van de online engines. Een andere offline engine is Julius. Die dien je echter met je eigen akoestisch model te trainen, wat nogal een complexe taak is.

Een andere stem voor Jasper

De stem van Jasper klinkt standaard nogal robotachtig. Dat is de verantwoordelijkheid van de standaard text-to-speech engine die Jasper gebruikt, espeak. Gelukkig is het kiezen van een andere text-to-speech-engine niet zo’n lijdensweg als de installatie van Pocketsphinx. De SVOX Pico tts-engine installeer je eenvoudig met

sudo apt-get install libttspico-utils

Ook de configuratie is eenvoudig. Open het bestand ~/.jasper/profile.yml met nano en voeg de regel

tts_engine: pico-tts

toe. Sla het bestand op met Ctrl+O en sluit nano af met Ctrl+X. Als je nu Jasper opnieuw start, krijg je een veel menselijker klinkende stem te horen. Bovendien hebben we nog altijd het voordeel Jasper zijn uitgesproken woorden niet over internet stuurt, zodat je spraakassistent je privacy garandeert.

Een schoonheidsfoutje is dat de stem van de Pico-tts-engine vrouwelijk is en onze spraakassistent nog altijd naar de mannelijke naam Jasper luistert. In Jasper 1.6 zal de naam eenvoudig te veranderen zijn.

Jasper ondersteunt maar liefst acht text-to-speech engines. Is je privacy je lief, dan vallen verschillende al af omdat ze online werken en de tekst die Jasper naar spraak wil omzetten naar een server sturen. Het zijn wel de tts-engines die de beste spraakherkenning hebben.

Google TTS gebruikt dezelfde text-to-speech-api als die van nieuwere Android-apparaten. De spraaksynthese gebeurt op servers van Google. Ivona TTS werkt met de Ivona Speech Cloud van Amazon, die we ook van in de Kindle Fire kennen. Ook hier gebeurt de spraaksynthese online. MaryTTS werkt ook met een server, maar het voordeel is dat de server opensource is en dat je ze op je eigen machine kunt installeren. Voor de Raspberry Pi is het programma echter nogal zwaar.

Maak je gebruik van een publieke MaryTTS-server, dan is je privacy uiteraard niet gegarandeerd. Tot de offline engines behoren eSpeak, Festival en Flite, die nogal robotachtig klinken. SVOX Pico TTS is de engine die in Android 1.6 gebruikt werd en heeft een vrij goede kwaliteit. Draai je Jasper op een Mac, dan kun je ook Mac OS X TTS inzetten, die de say-opdracht van macOS aanroept.

▼ Volgende artikel
Wat is wifi 6(E) eigenlijk en merk je echt verschil?
© A Stockphoto
Huis

Wat is wifi 6(E) eigenlijk en merk je echt verschil?

Heb je last van haperende streams of traag internet wanneer iedereen thuis tegelijk online is? Wifi 6 belooft dé oplossing te zijn voor overvolle netwerken en betere prestaties. Maar wat is deze nieuwe standaard precies en merk je in de praktijk echt verschil? We duiken in de voordelen van wifi 6 en de supersnelle wifi 6E-variant. Lees snel verder en ontdek of een upgrade voor jouw situatie de investering waard is.

Ben jij ook klaar met haperende videocalls of films die precies op het spannendste moment beginnen te bufferen omdat iedereen in huis tegelijk online is? Dan wordt het hoog tijd om kennis te maken met wifi 6, dat korte metten maakt met overbelaste netwerken. Maar is deze technologie echt een revolutie voor je dagelijkse internetgebruik of merk je in de praktijk eigenlijk weinig van die veelbelovende specificaties? In dit artikel duiken we dieper in de wereld van wifi 6 en zijn nog krachtiger broertje wifi 6E. We leggen helder uit wat de technische verschillen zijn en helpen je bepalen of een overstap voor jouw huishouden de investering waard is, zodat jij precies weet of je klaar bent voor de toekomst van razendsnel en stabiel draadloos internet.

Tijd voor een nieuwe wifi 6-router? Kijk snel op Kieskeurig.nl!

Efficiëntie is het hoofddoel

Wifi 6 is de huidige standaard voor draadloos internet, technisch ook wel bekend als 802.11ax. Waar voorgaande upgrades zich voornamelijk richtten op het verhogen van de maximale topsnelheid per apparaat, gooit wifi 6 het over een andere boeg. Het hoofddoel van deze technologie is niet alleen snelheid, maar vooral efficiëntie en capaciteit. Je kunt het vergelijken met een verbreding van de snelweg: je mag misschien niet veel harder rijden, maar doordat er meer rijbanen zijn en het verkeer slimmer wordt geregeld, sta je nooit meer in de file, zelfs niet tijdens de spits.

Het antwoord op de vraag of je het verschil echt merkt, hangt sterk af van je thuissituatie. Als je alleen woont en slechts één laptop en een telefoon gebruikt, zal de sprong van wifi 5 naar wifi 6 wellicht aanvoelen als een kleine, nauwelijks merkbare verbetering. Het echte verschil wordt pas duidelijk in een huishouden vol slimme apparaten. Wifi 6 excelleert namelijk in omgevingen waar meerdere mensen tegelijkertijd streamen, gamen en videobellen, terwijl op de achtergrond slimme thermostaten en deurbellen ook verbinding zoeken. De router kan met wifi 6 gelijktijdig data naar meerdere apparaten sturen in plaats van snel tussen alle apparaten te moeten wisselen, wat zorgt voor een stabielere verbinding zonder haperingen. Daarnaast communiceren wifi 6-routers efficiënter met je apparaten over wanneer ze moeten 'slapen' en 'wakker worden', wat een positief effect heeft op de batterijduur van je smartphone en laptop.

©YurolaitsAlbert

Snel over de VIP-strook

Om het plaatje compleet te maken is er ook nog wifi 6E. Dat is een uitbreiding van de wifi 6-standaard die gebruikmaakt van een volledig nieuwe frequentieband: 6 GHz. De traditionele 2,4GHz- en 5GHz-banden die we al jaren gebruiken, zitten inmiddels overvol met signalen van de buren, magnetrons en babyfoons. Wifi 6E opent als het ware een exclusieve VIP-strook waar alleen de allernieuwste apparaten gebruik van mogen maken. Hierdoor heb je geen last van interferentie en haal je extreem hoge snelheden met een zeer lage vertraging. Dat is echter alleen relevant als zowel je router als je ontvangende apparatuur (zoals je nieuwste smartphone) wifi 6E ondersteunen.

Al met al is de overstap naar wifi 6 of 6E zeker de moeite waard als je toe bent aan een nieuwe router en in een druk huishouden woont of in een appartementencomplex waar veel signalen door elkaar lopen. Je zult het verschil vooral merken in de stabiliteit van de verbinding wanneer iedereen thuis tegelijk online is. Voor wie weinig apparaten heeft en tevreden is met de huidige snelheid, is een directe upgrade minder noodzakelijk, al is het wel de standaard voor de toekomst.

🎯 Populairste merken routers in NL

TP-Link |  Netgear | Ubiquity AVM Fritz! | ASUS

Wi-Fi 6-routers worden op Kieskeurig.nl steeds populairder, vooral vanwege hun veel hogere snelheid, betere stabiliteit en het vermogen om veel apparaten tegelijk te verbinden zonder snelheidverlies. Merken als AVM (met de FRITZ!Box-serie), TP-Link (o.a. Deco en Archer), en Linksys (Velop) scoren daarbij hoog.

Aanraders per merk

AVM FRITZ!Box 5590 Fiber AON
Krachtige glasvezelrouter met 4×4 Wi-Fi 6, 2,5G-poort en uitgebreide mesh- en telefoniefuncties. Geschikt voor hoge snelheden via AON of XGS-PON. Reviewscore op Kieskeurig.nl: 9,5.

AVM FRITZ!Box 6690 Cable

High-end kabelrouter met ingebouwde DOCSIS-3.1-modem, 4×4 Wi-Fi 6 en een 2,5G-poort voor extra hoge snelheden. Ondersteunt DECT-smart-home, mesh en uitgebreide netwerkfuncties. Reviewscore op Kieskeurig.nl: 9,0.

TP-Link Deco X60 3-Pack

Mesh-systeem voor stabiele dekking door het hele huis met Wi-Fi 6-snelheden tot 2402 Mbit/s op 5 GHz. Inclusief WPA3-beveiliging en ouderlijk toezicht. Reviewscore op Kieskeurig.nl: 9,3.

Linksys Velop Pro 6E 2-Pack

Tri-band mesh-systeem met een snelle 6 GHz-band voor 4K/8K-streaming en lage latency, geschikt voor grotere woningen. Ondersteunt WPA3 en slimme netwerkoptimalisatie. Reviewscore op Kieskeurig.nl: 8,6.

TP-Link Archer AX73

Zeer snelle dual-band Wi-Fi 6-router met 5400 Mbit/s totale bandbreedte en sterke beveiliging (WPA3). Met vier gigabit-poorten en USB-aansluiting ideaal voor veeleisende huishoudens. Reviewscore op Kieskeurig.nl: 10,0.

🔟 Over de reviewscores op Kieskeurig.nlOp Kieskeurig.nl schrijven consumenten reviews over producten. Elke review moet voldoen aan kwaliteitscriteria: de reviewer moet aangeven of het product gekocht, gekregen of getest is, er mag geen misleidende taal in staan en de inhoud moet betrouwbaar zijn. Zo worden nep- of spamreacties tegengegaan. Bij de beoordeling zie je niet alleen het gemiddelde cijfer, maar ook hoeveel reviews er zijn. Zo krijg je meteen een indruk of de score op basis van één enkele review is of op basis van veel gebruikerservaringen.

▼ Volgende artikel
Online samenwerken in LibreOffice versie 25.8
© monticellllo
Huis

Online samenwerken in LibreOffice versie 25.8

De opensource kantoorsuite LibreOffice blaast 40 kaarsjes uit en viert dat met een sprong voorwaarts. Welke vernieuwingen vallen ons op in de recente versie en hoe maken ze de onderlinge samenwerking tussen gebruikers makkelijker?

LibreOffice kent een lange geschiedenis in verschillende vormen die teruggaat tot 1985. Toen verscheen het eerste programma onder de naam StarWriter. Vijftien jaar later belandde de suite bij de open-sourcegemeenschap en werd ondergebracht bij The Document Foundation, die het pakket de naam gaf waaronder we het nu kennen. Het is sindsdien uitgegroeid tot een volwaardig, gratis alternatief voor Microsoft Office. Ook de nieuwste versie blijft trouw aan de klassieke reeks toepassingen, al zijn die verder verfijnd en nauwer met elkaar geïntegreerd. LibreOffice 25.8 is beschikbaar op www.libreoffice.org/download.

De suite bestaat uit zes kernprogramma’s. Writer voor tekstverwerking, Calc als spreadsheet-programma, Impress is presentatiesoftware vergelijkbaar met PowerPoint, Draw is een vectorgebaseerde tekenapplicatie, Base gebruik je voor databases en ten slotte is er de formule-editor Math. Naast deze zes is er nog de component Chart om grafieken te maken binnen Calc, Writer en Impress. Bovendien heeft LibreOffice een bibliotheek met extra functies, sjablonen en steeds vaker ook AI-tools. Op de mogelijkheden van die kernprogramma’s zijn we al dieper ingegaan in een eerder artikel Aan de slag met LibreOffice. Hier bespreken we wat nieuw is en onderzoeken we de mogelijkheden van onderling samenwerken.

Aanpasbare interface

Wanneer je voor het eerst een applicatie opent, toont LibreOffice hoe je de interface kunt aanpassen. Wil je de standaardwerkbalk of wil je tabbladen? Daarnaast kun je kiezen voor een enkelvoudige werkbalk, voor compacte tabbladen, voor de zijbalk en meer. Telkens beslis je of je de gekozen interface alleen op het huidige programma wilt toepassen of op alle programma’s van LibreOffice.

De werkomgeving met tabbladen lijkt het meest op wat we van Microsoft Office gewend zijn.

Uiterlijk aanpassen

Met Extra / Opties / LibreOffice zet je de weergave van LibreOffice op licht, donker of de systeeminstelling. In hetzelfde venster bepaal je de kleuren waarmee spelfouten, tabelgrenzen, niet-afdrukbare tekens in Writer, de documentachtergrond en alle speciale markeeritems worden weergegeven. Door op het pictogram van het puzzelstukje te klikken bij Uiterlijk / LibreOffice-thema kom je bij de thema’s voor deze suite. Als je op de knop Internetpagina klikt, zie je telkens hoe ieder thema in de verschillende basisprogramma’s van LibreOffice eruitziet. Daarbij lees je welke versie van LibreOffice vereist is om het gekozen thema toe te passen. Gebruik de knop Installeren om het gekozen thema binnen te halen. Na een klik op OK past LibreOffice het thema onmiddellijk toe.

Daarnaast ondersteunen Writer, Calc en Impress ook kleurenschema’s voor specifieke documenten. Nadat je een van de drie applicaties hebt geopend, ga je naar Opmaak / Thema. Kies een van de bestaande thema’s uit Rainbow, Beach, Sunset … Je kunt via de knop Toevoegen ook zelf een thema samenstellen. Bevestig met de knop Toepassen. Alle elementen die met stijlen en thema-kleuren werken (koppen, tabellen, grafieken et cetera) worden meteen aangepast.

Met een thema pas je in één keer het volledige uiterlijk van de LibreOffice-applicatie aan.

Wijzigingen tonen

Een eerste opvallende vernieuwing is de manier waarop je tijdens het samenwerken veel duidelijker zicht krijgt op de voorgestelde wijzigingen. Activeer dit via Bewerken / Wijzigingen / Wijzigingen bijhouden of met de sneltoets Ctrl+Shift+C. Vanaf dat moment markeert Writer automatisch alles wat je typt, verplaatst of aanpast.

Met Bewerken / Wijzigingen / Tonen
maak je de aanpassingen zichtbaar. Toevoegingen verschijnen onderstreept of in kleur, verwijderingen worden doorgestreept en opmaakwijzigingen krijgen een ballon of markering in de kantlijn.

De voorgestelde wijzigingen worden zichtbaar.

Wijzigingen beheren

In het venster Wijzigingen beheren (Alt+7) zie je in één oogopslag alle voorgestelde aanpassingen. Klik je in de lijst op een item, dan wordt de bijbehorende wijziging meteen in de tekst gemarkeerd. En omgekeerd: selecteer je een wijziging in de tekst, dan springt Writer automatisch naar de juiste entry in de lijst. Dat was vroeger veel minder overzichtelijk, waardoor correcties in lange documenten lastig te volgen waren.

Nu kun je niet alleen sneller door honderden wijzigingen bladeren, maar ook instellen hoe elk type wijziging wordt weergegeven, van kleur tot markering. Met de knoppen Accepteren en Verwerpen beslis je per wijziging of je alles in één keer verwerkt. Bovendien kun je de lijst filteren op auteur en/of tijdstip, wat vooral bij samenwerking met meerdere gebruikers tijd bespaart.

Je kunt de wijzigingen filteren op auteur en op datum.

Commentaren geïntegreerd in Navigator

Commentaren zijn in de nieuwe versie beter geïntegreerd in de Navigator, waardoor je ze als overzichtslijst kunt gebruiken. Open het zijpaneel Navigator met F5 of via het kompas-pictogram in de zijbalk. Vanuit dit venster navigeer je met één klik naar koppen, afbeeldingen, secties en tabellen. Voeg je in de tekst een commentaar toe via rechtermuisknop en de optie Notitie toevoegen of de sneltoets Ctrl+Alt+C, dan verschijnt deze niet alleen in de tekst, maar ook in de Navigator. Klik je daar op een commentaar, dan springt Writer meteen naar de juiste plaats in het document.

In het panel Navigator vind je alle opmerkingen.

Extern opslaan

Onder het menu Bestand vind je ook de optie Extern opslaan. Hiermee sla je een bestand op een andere locatie op dan je eigen computer. Dit kan bijvoorbeeld een netwerkschijf of gedeelde map zijn, via WebDAV, FTP, SSH of een andere netwerkverbinding, of in een cloudomgeving zoals Nextcloud, Google Drive of OneDrive.

Het voordeel is dat het document direct op een plek staat waar anderen toegang toe hebben, of waar je er zelf vanaf meerdere apparaten bij kunt. Om een externe opslaglocatie in te stellen, klik je bij Extern opslaan op Service beheren. Daarna selecteer je de gewenste online dienst en vul je de gebruikersnaam en het wachtwoord in.

Je kunt verschillende externe bestandsservices aanspreken.

Multi opslaan als

Aanvullend kun je de mogelijkheden van LibreOffice uitbreiden door middel van extensies. Bijvoorbeeld met MultiFormatSave sla je hetzelfde document meteen in meerdere indelingen tegelijk op. Deze extensie ondersteunt het OpenDocument-formaat, het Microsoft Office-formaat en tegelijk de pdf-indeling. Handig bij samenwerking met mensen die Microsoft Office gebruiken, zodat iedereen toch over een kopie beschikt waarmee hij of zij kan werken. Daarnaast is er de extensie MultiFormatSave-Draw die hetzelfde doet voor illustraties. Hiermee bewaar je dezelfde afbeelding tegelijk in het odf-, png-, svg- en pdf-formaat.

Eerst moet je de extensie installeren via het menu Extra / Extensies. Daar klik je linksonder op de knop Haal meer extensies online. Dan kom je in een store om extensies te zoeken en te downloaden. Wanneer de download binnen is, dubbelklik je op het bestand multiformatsave-v1-5-6.oxt in de map Downloads. Er verschijnt een waarschuwing die aangeeft dat je op het punt staat om een extensie te installeren voor LibreOffice. Klik op OK. Daarna moet je LibreOffice opnieuw opstarten. Vanaf nu heb je in het menu Bestand een nieuwe functie: Multi Opslaan als. Als je die functie aanspreekt, krijg je een pop-up waar je verschillende indelingen kunt selecteren. Via Extra / Extensie kun je achteraf ook extensies verwijderen.

Plaats vinkjes bij de verschillende bestandsindelingen die LibreOffice simultaan moet opslaan.

AI-afbeeldingsgenerator

Een nieuwe interessante extensie is Stable Diffusion for LibreOffice. Hiermee kun je via prompts AI-gegenereerde afbeeldingen rechtstreeks toevoegen dankzij de gratis AI Horde backend. Je hebt hiervoor geen account of abonnement nodig, maar wel een internetverbinding. Bovendien krijg je het beste resultaat met Engelse prompts. Dit is een interessante manier om op een eenvoudige manier visuals toe te voegen. Ga naar Extra / Extensies / Haal meer extensies online en gebruik de zoekmachine om Stable Diffusion for LibreOffice te downloaden. De extensie gebruikt een cluster van Stable Diffusion-servers die door vrijwilligers wordt onderhouden, de zogenaamde AIHorde.

Zodra de extensie is geïnstalleerd, kies je Invoegen / Image from text. Dan opent zich de pop-up Stable Horde for LibreOffice waar je de prompt typt. Daarbij geef je zowel de hoogte als de breedte in van de illustratie die je nodig hebt en je klikt op de knop Process. Even later staat de illustratie in het tekstdocument of in de presentatie. Na de installatie vind je de knop naar deze extensie in Writer, Draw en Impress.

Onder de afbeelding komt ook de prompt die je hebt ingegeven.

Echte open standaarden

Wat LibreOffice uniek maakt, is dat het volledig inzet op open standaardformaten die door iedereen gebruikt en geïmplementeerd kunnen worden. Voor elk type document is er een open formaat: odt voor tekstdocumenten, ods voor spreadsheets en odp voor presentaties. Deze formaten zijn vastgelegd door de internationale standaardisatieorganisatie OASIS en officieel erkend door ISO/IEC. Dat betekent dat ze vrij beschikbaar zijn, zonder dat er een bedrijf de spelregels bepaalt.

Daarnaast kan LibreOffice ook werken met de Microsoft Office-formaten zoals docx, xlsx en pptx. Het kan bestanden in die formaten zowel openen als opslaan, zodat uitwisseling met gebruikers van Microsoft Office vlot verloopt. Het belangrijkste voordeel van de open formaten is dat de documenten in LibreOffice er hetzelfde uitzien wanneer je ze opnieuw opent, of wanneer iemand anders ze opent in een toepassing die deze standaard ondersteunt. Je verliest geen opmaak, inhoud of metadata.

Bij de Microsoft-formaten ligt dat genuanceerder. De typische Microsoft-indelingen zoals docx, xlsx en pptx bevatten vaak functies of elementen die alleen door Microsoft Office volledig worden ondersteund. Dit is deels een bewuste strategie. Microsoft hanteert zijn eigen implementatie en voegt soms afwijkingen toe, waardoor bestanden niet altijd 100 procent identiek openen buiten het eigen ecosysteem. Daardoor wordt het overstappen naar alternatieve software bemoeilijkt.

LibreOffice ondersteunt echte open standaarden.

Documenten schoon opslaan

Alle applicaties zijn bovendien in staat om documenten te creëren die de privacy van de gebruiker respecteren. Bij het opslaan kun je namelijk aangeven of je het bestand zonder persoonlijke metadata wilt bewaren, zoals de auteur of de tijdstempels. Dit kan belangrijk zijn als je documenten deelt in een professionele of juridische context. Terwijl het bestand geopend is, ga je naar het menu Bestand / Eigenschappen. Dan kies je het tabblad Algemeen. Je zult zien dat hierbij je naam als auteur al ingevuld is en ook de wijzigingsdatum, de totale bewerkingstijd enzovoort …

Klik op de knop Eigenschappen terugzetten. Hiermee wis je auteur, wijzigingsdatum, bewerkingstijd en woordentelling. Sla het bestand dan opnieuw op. Wil je het programma instellen zodat je de metadata altijd wist bij het opslaan, zodat je dit niet kunt vergeten? Ga naar Extra / Opties. Kies links in de lijst LibreOffice / Beveiligen. In de groep Beveiligingsopties en waarschuwingen klik je op de knop Opties. Daarna vink je de optie aan: Persoonlijke informatie verwijderen bij het opslaan. Bevestig met OK. Vanaf nu worden alle documenten automatisch schoon opgeslagen.

Het is mogelijk om de metadata in LibreOffice te verwijderen.

Samenwerken

Er zijn drie manieren om samen te werken met LibreOffice. De eerste is de klassieke aanpak. Je werkt alleen op je eigen computer en deelt het bestand via e-mail of usb. Andere gebruikers kunnen het document vervolgens aanpassen en opmerkingen toevoegen. Alle wijzigingen zie je overzichtelijk terug in het venster Wijzigingen beheren. De tweede manier is het gebruik van een gedeelde map in de cloud. Iedereen met toegang kan het bestand bewerken, zij het niet tegelijkertijd. Dankzij kleurmarkeringen blijft zichtbaar wie welke aanpassing heeft gedaan. De derde optie is de online variant van LibreOffice. Daarmee werk je in realtime samen aan hetzelfde document. Het grote voordeel is de simultane bewerking, maar het nadeel is dat de installatie en configuratie van deze oplossing wat complexer is.

Zo versleutelen we het bestand op Dropbox, de ander moet dan het wachtwoord kennen.

Online versie

De oplossing om online de opensource tekstverwerker, spreadsheet- of presentatie-applicatie te gebruiken, is een combinatie van een online platform en een online toepassing. LibreOffice 25.8 heeft de mogelijkheden om met anderen samen te werken uitgebreid door koppelingen met cloudoplossingen zoals Nextcloud. De bijbehorende online toepassing heet Collabora Online. Het gaat om een webgebaseerde Office-omgeving op basis van LibreOffice die zich integreert met cloudplatformen zoals Nextcloud. Hiermee kunnen teams, onderzoekers en scholieren in realtime veilig samenwerken, zonder afhankelijk te zijn van commerciële clouddiensten zoals Google of Microsoft. Bovendien is de privacy beter gewaarborgd.

Om te starten heb je een Nextcloud- of ownCloud-account nodig. Wij vonden Nextcloud het meest gebruiksvriendelijk, omdat deze Collabora al standaard aanbiedt. Nextcloud heeft clients voor Windows, macOS, Linux, iOS en Android (https://nextcloud.com/install). De laatste versie (31.0.8) verscheen op 14 augustus 2025. Wil je geen tijd besteden aan installatie en onderhoud, dan kun je kiezen voor een beheerde Nextcloud-hostingdienst. Er zijn verschillende aanbieders en de prijzen variëren volgens opslagcapaciteit. Je kunt er ook voor kiezen om op een eigen server Collabora CODE te installeren (Collabora Online Development Edition, een gratis community-versie), maar dat is meer iets voor specialisten.

Maak eerst een account aan bij Nextcloud.

Compatibel met de courante Office-indelingen

Met Collabora Online krijg je een webversie van LibreOffice, volledig opensource en privacy-vriendelijk. Op https://collaboraonline.com kun je een gratis demo uitproberen. Je vult je naam, e-mailadres en herkomst van je aanvraag in, waarna je een e-mail ontvangt met een link, login en wachtwoord. Vervolgens kom je in een omgeving waar je tekstverwerkingsdocumenten, spreadsheets en presentaties kunt openen. Het gaat om een set online documenten in de odt-, docx-, pdf-, pptx-, xlsx-, odg-, doc- en ods-indeling. Met een dubbelklik opent Collabora Online het bestand rechtstreeks in de browser, zonder dat je iets hoeft te installeren.

Je ziet in Nextcloud welke bestanden je in Collabora kunt openen.

Alle bewerkingen in de browser

Wanneer een document geopend is, herken je meteen de vertrouwde LibreOffice-modules. De interface van Collabora Online is niet 100 procent identiek aan de desktopversie van LibreOffice, maar de functies en compatibiliteit zijn zeer vergelijkbaar. De interface past zich aan de taalinstellingen van je systeem aan (in ons geval Nederlands). Je kunt elk bestand bewerken en opslaan in verschillende formaten. Zo kun je een geopende odp-presentatie bewaren als odf-presentatie, PowerPoint-bestand (.pptx) of PowerPoint 2003-presentatie (.ppt). Een tekstdocument in odt-formaat kun je opslaan als rtf, Word (.docx) of Word 2003-document (.doc). Ook exporteren naar pdf of epub is mogelijk. Alles gebeurt volledig in de internetbrowser, zonder dat je een lokale toepassing nodig hebt. Bovendien ben je niet beperkt tot de demo-bestanden: je kunt zelf ook eigen bestanden uploaden, bewerken en opslaan in deze indelingen.

De interface van Collabora Online werkt ook in het Nederlands.

Delen

In Nextcloud klik je op de Deel-knop en voeg je een gebruiker of groep toe. Je kunt zelfs een openbare link aanmaken. Daarbij bepaal je of de ander het document alleen mag lezen of ook mag bewerken. Vanaf dat moment kunnen meerdere mensen tegelijk in hetzelfde document werken. Elke auteur krijgt een eigen kleur voor de cursor en de selecties en alle wijzigingen verschijnen direct op het scherm. Net als in de desktopversie kun je opmerkingen toevoegen en wijzigingen bijhouden. Ondertussen kun je chatten en altijd teruggaan naar eerdere versies.

Je kunt het document delen met een of meer personen en je kunt een openbare link creëren.