Hoppa till innehållet
kenjtecJournal
Sök i Journal

Undertexter utan molnet: så omvandlar du tal till text lokalt med whisper.cpp

En lokal transkription är ännu inte ett färdigt undertextspår. En kort egen inspelning och ett WebVTT-exempel visar hur ordalydelse, översättning och tidssättning hänger ihop.

Lena lägger korta pappersbitar som undertexter under en pappersremsa med en ljudvåg; runt halsen hänger hörlurar. AI-illustration.

”Vi tar fyra, nej, sex pärmar.” Ett igenkänningssystem kan transkribera meningen korrekt. För en lättläst undertext kanske du vill korta ner upprepningen. När du gör det får sex inte bli fyra igen. Den tekniska vägen från ljud till textfil är därför bara början på det redaktionella arbetet.

whisper.cpp dokumenterar lokal taligenkänning, inklusive CPU-stöd. Lämplig modell och lämpliga körtidsfiler måste förberedas. Varianter enbart för engelska och flerspråkiga varianter, liksom transkription och översättning, är separata beslut; ett program som startas lokalt utför inte automatiskt den uppgift du vill ha.

Bestäm källspråket och målet

Avgör först om det som sägs ska behållas på sitt eget språk eller återges på engelska. En tysk inspelning med en tysk transkription är ett annat uppdrag än en engelsk översättning. En flytande engelsk text vore ändå fel resultat för det första syftet.

I serverinstruktionerna används –translate för översättning från källspråket till engelska; –language anger det talade språket. För ditt faktiska anrop bör du hämta alternativen från motsvarande hjälptext i stället för att blanda inställningar från olika exempel.

Förbered en kort egen inspelning

Spela själv in några icke-känsliga meningar: en ändring av antal, ett påhittat egennamn och en begränsning som ”först efter avstämning”. Skriv ner den kända ordalydelsen i förväg. En medvetet kort paus hjälper också till att hålla isär ordigenkänning och segmentering i tid.

Använd en förberedd lokal miljö och ett passande ljudformat. Ta först fram ett textunderlag som ligger nära de talade orden. Lyssna igen på avsnitten med siffran och namnet, och markera allt som är oklart. En förväntad stavning från din namnlista får inte i tysthet ersätta ett avsnitt som faktiskt är otydligt.

Håll detta underlag åtskilt från den senare, förkortade undertextversionen. På så sätt kan du spåra vilken ändring som kommer från igenkänningen och vilken som kommer från ditt redaktionella arbete. Den här artikeln beskriver metoden, inte en transkription som har utförts här.

Tiden blir en del av filformatet

Ett undertextspår kopplar text till början och slutet av ett tidsintervall. Formatet WebVTT i W3C-specifikationen beskriver sådana tidsjusterade textsegment. Ett enkelt eget formatexempel ser ut så här; tiderna är undervisningsvärden och måste anpassas för en verklig inspelning:

WEBVTT

00:00:00.000 --> 00:00:04.000
We need six folders for the course.

00:00:04.500 --> 00:00:07.000
Open sealed material only after checking back.

Spara en text som faktiskt har redigerats för att passa som en UTF-8-fil och kontrollera den tillsammans med motsvarande inspelning i en lämplig spelare eller ett lämpligt undertextverktyg. Text, tidssättning och läsbarhet är tre separata iakttagelser. En korrekt rad kan visas för tidigt eller synas för kort tid.

Placera radbrytningar vid meningsfulla enheter. Ett ”inte” som står ensamt kan missförstås vid snabb läsning. Ett villkor för godkännande bör också förbli igenkännbart i sitt sammanhang i stället för att försvinna genom en olämplig brytning.

Ge originalljudet, transkriptionen och undertexterna samma filnamnsstam men olika filändelser. En kort anteckning om språk och redigeringsstatus förhindrar att en gammal översatt version av misstag hamnar bredvid den nya originalinspelningen.

Vad ett lokalt arbetsflöde visar

Med det här provet kan du undersöka om din förberedda uppsättning levererar den text du vill ha och hur mycket redigering undertexterna behöver. Det säger ingenting generellt om igenkänningskvaliteten för alla språk, accenter eller bakgrundsljud.

En översättningskörning är sedan ett separat test. Den kräver en jämförelse av betydelse, inte bara av stavning. Om det finns flera språk i samma inspelning bör du uttryckligen ta med de berörda avsnitten i avlyssningskontrollen.

Nyttan med lokal bearbetning ligger i en egen arbetsväg som du kan beskriva. Användbara undertexter uppstår när du kopplar denna väg till den faktiska inspelningen: välj rätt uppgift, kontrollera ordalydelsen, redigera medvetet och granska texten mot dess tidsstämplar.

Källor och status

Källor per den 25 oktober 2026. whisper.cpp README · whisper.cpp – alternativ i serverexemplet.

W3C: WebVTT som kompletterande källa om formatet.

Hamburg är vår utgångspunkt.

Det användbara följer med dig.

Praktisk AI från Hamburg, förklarad för alla.

Sparade artiklar