Whisper eller YouTubes undertexter: när ska man betala för transkribering?

Whisper mot YouTubes undertexter är ett val som de flesta ramar in fel. Det behandlas som en kvalitetsduell — vilken transkriberare som är "bäst" — när det egentligen handlar om huruvida transkriptionen redan existerar. För det stora flertalet YouTube-videor gör den det: YouTube genererar undertexter automatiskt, och att hämta dem är ett enda HTTP-anrop. Att köra Whisper på de videorna innebär att ladda ner ljud, betala för beräkningskraft och vänta — för att återskapa text som låg där hela tiden.
Men Whisper är inte heller bara hajp. Det finns specifika situationer där det uppenbart är rätt val, och bygger du en pipeline kommer du förr eller senare att stöta på dem. Här är den rättvisa uppdelningen, med siffror.
Vad respektive alternativ faktiskt ger dig
YouTubes undertexter — tillgängliga direkt för de flesta publika videor. Manuellt uppladdade spår är utmärkta; automatgenererade är hyfsade och blir bättre för varje år, med de klassiska svagheterna: gles interpunktion, förvanskade egennamn och facktermer, enstaka homofonförväxlingar. Kostnad att hämta: i praktiken noll.
Whisper (eller faster-whisper) — transkriberar själva ljudet. Riktig interpunktion och versalisering, bättre hantering av tekniskt ordförråd (särskilt med en initial prompt), stabila tidsstämplar på ordnivå, och det fungerar på videor som helt saknar undertexter. Kostnad: OpenAI:s API ligger på cirka 0,006 USD per ljudminut; egen hosting kräver en GPU eller mycket CPU-tålamod. Och du måste först få tag i ljudet — vanligtvis via yt-dlp — vilket drar med sig egna problem på servrar (blockering av datacenter-IP, underhåll av binärer).
Matematiken för en backlog på 100 videor
Anta att du bearbetar en kanals bakkatalog: 100 videor, i snitt 15 minuter.
Whisper-vägen: 100 × 15 min × 0,006 USD = ungefär 9 USD i API-avgifter. Låter billigt — och det är det — men det är inte hela notan. Du behöver också ladda ner ungefär 100 ljudfiler via yt-dlp (från en moln-IP kan du räkna med "Sign in to confirm you're not a bot"-fel och proxykostnader), lagra dem, köa jobben och vänta. Realistiskt är det en eftermiddags pipelinearbete plus över en timmes faktisk bearbetningstid.
Undertextvägen: 100 GET-requests. Klart på ett par minuter, inget ljud rör någonsin din disk:
curl -s "https://youtube2text.org/api/transcribe?url=VIDEO_ID" \
-H "x-api-key: yt_YOUR_KEY"
Med youtube2text.org:s prissättning ryms 100 videor i planen för 9,99 USD/månad (500 videor). Ungefär samma dollarbelopp som Whispers API-avgift — men noll infrastruktur, och resultaten kommer omedelbart som ren JSON. När jag matar transkriptioner till en LLM för sammanfattning eller RAG i kanalskala är det här vägen varje gång; språkmodeller rycker på axlarna åt de små transkriberingsfelen i auto-undertexter.
Där Whisper faktiskt vinner
Jag vill vara klarsynt här, för det finns uppgifter där undertexter förlorar rakt av:
- Inga undertexter finns. Vissa videor — olistade uppladdningar, visst musikinnehåll, en del icke-engelska videor — returnerar
TRANSCRIPT_UNAVAILABLE. Whisper är enda alternativet. - Noggrannheten är själva produkten. Publicering av citat, juridisk eller medicinsk granskning, undertextning av eget innehåll — auto-undertexternas felfrekvens är oacceptabel och Whispers utdata är märkbart renare.
- Du behöver pålitliga tidsstämplar på ordnivå för klippning, karaokeliknande markering eller aligneringsarbete. Undertexternas timing är på segmentnivå och ungefärlig.
- Svårt ljud. Kraftiga brytningar, folk som pratar i mun på varandra, dåliga inspelningar — Whispers stora modeller slår ofta YouTubes ASR.
För föreläsningsanteckningar och poddsammanfattningar räcker undertexter dock nästan alltid — LLM:en längre ner i kedjan slätar över bruset.
Beslutslistan
- Matar du en LLM (sammanfattningar, RAG, research)? → Undertexter. Felen tvättas bort.
- Publicerar du transkriptionen ordagrant? → Whisper, sedan mänsklig granskning.
- Behöver du tidsstämplar på ordnivå? → Whisper.
- Stor backlog med budget och deadline? → Undertexter först.
- Videon returnerar
TRANSCRIPT_UNAVAILABLE(404)? → Fall tillbaka på Whisper. Det här är mönstret jag faktiskt kör: prova undertextanropet och skicka bara missarna till en Whisper-kö. I praktiken utlöses fallbacken på en liten minoritet av videorna, så du får Whisper-nivå på täckningen till undertextnivå på kostnaden.
Om din undertexthämtning ständigt misslyckas från en molnserver i stället för att returnera resultat är det ett annat problem — en IP-blockering, inte saknade undertexter — som täcks i varför youtube-transcript-api blir blockerat.
För att koppla in undertexter-först-halvan: en gratisnyckel är en Google-inloggning bort på youtube2text.org/app/keys (5 videor/månad gratis, inget kort), och den fullständiga API-referensen finns på youtube2text.org/api.md.