Twee dingen die “offline” kan betekenen
Het woord wordt voor twee totaal verschillende dingen gebruikt, en maar één daarvan is waar je naar op zoek bent.
Sommige apps bedoelen dat je aantekeningen op je telefoon bewaard blijven. Handig, maar het zegt niets over je stem: de audio kan nog steeds omhoog gaan, op een server worden uitgeschreven en als tekst terugkomen, waarna het resultaat lokaal wordt opgeslagen. De privacyvraag blijft onaangeroerd en de app houdt ermee op zodra je bereik wegvalt.
Wat je wilt, is dat het herkennen zelf op je telefoon gebeurt. Er staat een modelbestand op je telefoon, je spraak wordt daardoor verwerkt, en het netwerk komt er na het eerste binnenhalen op geen enkel moment meer aan te pas.
Twee minuten zijn genoeg om erachter te komen. Installeer de app, laat hem afmaken wat hij bij de eerste start wil ophalen, sluit hem één keer helemaal af en open hem opnieuw. Zet dan vliegtuigstand aan en controleer of wifi ook uit ging, want die twee schakelen op veel telefoons los van elkaar. Spreek een zin in. Er verschijnen woorden, of er verschijnt een melding over de verbinding.
Let tijdens die test op de woorden “offline stand” in de instellingen. Een app die offline als stand aanbiedt, vertelt je iets belangrijks: er is een andere stand, en iets bepaalt in welke van de twee je zit. Die bepaling kan afhangen van je telefoon, van de taal die je koos, van de vraag of een pakket helemaal binnen is, of van een wijziging in een toekomstige update die niemand aankondigt.
Standen zijn prima als je reden om offline te willen wisselend bereik is. Ze zijn veel zwakker als je reden is dat je liever niet hebt dat je stem op reis gaat, want dan hangt alles aan een schakelaar die blijft staan waar je hem achterliet. Een app zonder enige route naar de cloud kan dat probleem niet krijgen. Het verschil zit in het ontwerp en niet in een belofte, dus zoek uit welke van de twee je krijgt voordat je iets besluit.
De opties die het op je telefoon zelf doen
Hieronder staat per optie voor wie hij gebouwd is.
FUTO Voice Input is voor wie een toetsenbord heeft waar hij niet vanaf wil. Het is een herkenningsdienst en geen toetsenbord, dus het schuift achter wat je al gebruikt. Open source, één keer betalen en geen abonnement, geen account, en een project met een echte staat van dienst op dit punt.
Whisper IME is voor de knutselaar die gratis en inzichtelijk wil, en die in korte stukjes schrijft. Er zit een grens op hoe lang één opname mag duren, wat prettig is voor antwoorden en onhandig voor alinea’s. Je haalt het uit F-Droid, dus de Play Store heb je er niet voor nodig.
Transcribro is voor wie in het Engels schrijft, de code wil kunnen lezen, en liever niet uit de winkel van Google installeert. Het levert een toetsenbord en biedt zich daarnaast aan andere apps aan als herkenningsdienst, dus je kunt het achter dingen hangen.
Gboard met een binnengehaald taalpakket is voor wie hier geen project van wil maken. Het staat er al, en op veel telefoons is het snel. De kanttekening is dat het van je telefoon, je taal en het geïnstalleerde pakket afhangt of het lokaal blijft, dus je krijgt een stand en geen garantie.
LocalType is voor de meertalige schrijver die één afgemaakt ding wil: een toetsenbord met inspreken erin, nergens in de app een route naar de cloud, en niets om zelf in elkaar te zetten. Betaald na een gratis proefperiode, en niet open source.
Vier vragen die de keuze maken
Beantwoord deze vier voordat je waar dan ook nog een vergelijkingstabel leest.
Schrijf je in meer dan één taal? Dit schift sneller dan wat ook. Meerdere van de opties op je telefoon doen alleen Engels, omdat meertalige modellen groter zijn en een klein project heel redelijk één taal kiest en die goed doet. Wissel je van taal, dan valt het merendeel af.
Moet je de broncode kunnen lezen? Zo ja, dan zijn de open opties het antwoord en is er geen concurrentie. Voor sommige mensen is dat een harde eis, en daar valt niet over te discussiëren.
Wil je een toetsenbord, of een onderdeel? Een spraakdienst plus je bestaande toetsenbord laat je typen precies zoals het is. Een gecombineerd toetsenbord betekent één installatie en één instellingenscherm, en dan weten het inspreken en het woordenboek van elkaar. Wissel je geregeld van toetsenbord, neem dan de losse dienst. Wil je één plek waar alles staat, neem dan het toetsenbord.
Hoe oud is je telefoon? Herkennen op je telefoon wordt begrensd door geheugen. Een klein model op een oudere telefoon levert je sneller tekst op dan een groot model dat er net niet in past. Elke app die je de maat niet laat kiezen, kiest hem voor je.
LocalType langs dezelfde vier vragen
Op de eerste vraag: achttien talen met één meertalig model, en LocalType leidt uit de opname zelf af welke daarvan je spreekt. Je wijst het van tevoren nergens aan, dus van taal wisselen tussen twee berichten vraagt niets van je. Zet je het vast op één taal, dan bewegen de indeling, het woordenboek en de taal van het inspreken samen mee.
Op de derde: het is in de eerste plaats een toetsenbord. Autocorrectie en woordsuggesties uit een woordenboek dat bij je taal past, QWERTY, QWERTZ en AZERTY waar die de nationale standaard zijn, een volledige set emoji, en je eigen achternamen en vaktaal die je met de hand toevoegt. Die toegevoegde woorden blijven op je telefoon en gaan als context naar het spraakmodel, zodat de namen die je echt gebruikt goed gespeld tevoorschijn komen.
Op de vierde krijg je de keuze zelf. Er komen drie modelmaten mee, van een lichte die gebouwd is voor telefoons die krap in het geheugen zitten, via een middelste die het standaardadvies is, tot een grote voor mensen die liever even wachten dan achteraf een woord verbeteren. De maten zijn 60, 190 en 539 MB. Op een testtelefoon met 4 GB geheugen zette de middelste 6,9 seconden spraak om in 4,1 seconden.
Op de tweede vraag verliest het gewoon. De broncode is niet gepubliceerd, en is dat jouw eis, dan gaf de lijst hierboven je al betere antwoorden.
Wat er verder aan vastzit, komt uit hetzelfde ontwerp. Zonder server in het spel is er nergens om je voor aan te melden, en niets dat een toetsenbord aan een persoon knoopt. Reclame ontbreekt, dus niets van wat je inspreekt voedt een profiel dat je achterna reist. Er draait geen tracking binnen het product. Het modelbestand is alleen leesbaar voor de app die het gebruikt, de back-up van Android slaat de gegevens van de app met opzet over, en audio wordt tekst en is daarna weg, zonder dat er onderweg ergens een archief van opnames wordt aangelegd. In wachtwoordvelden gaat de microfoon ronduit uit. Om het netwerk wordt één keer gevraagd, om het model op te halen dat je koos, en daarna nooit meer.
Welke je moet nemen, per geval
Moet de code leesbaar zijn en schrijf je in het Engels, neem dan een van de open opties. Hang je aan je huidige toetsenbord, koppel er dan een spraakdienst achter. Is je telefoon een recente Pixel of Samsung en heb je hier nooit over nagedacht, dan zijn de ingebouwde offline pakketten al beter dan de meeste mensen denken.
Schrijf je in meerdere talen en wil je inspreken binnen een toetsenbord dat je toch al zou gebruiken, zonder het uit onderdelen samen te stellen, dan is dat het gat waarvoor LocalType gebouwd is.