Vi har udviklet transskriberingsværktøjet T-Tex der er bygget på OpenAI’s Whisper. Det består af en eksekverbar fil, der kan køre på Windows-computere. Programmet tager imod en lydfil (for nu enten .wav eller .mp3) og producerer en SRT-fil, der er lige til at importere i for eksempel et Premiere Pro-projekt. Programmet er ikke signeret og vil derfor sandsynligvis give en sikkerhedsadvarsel.
Du kan se koden her: https://github.com/MartinDreyer/transcription_app.
Og du kan downloade appen her: https://drive.google.com/drive/folders/16Amr_RAxK7wLo435C9kDkVJgpk2j009k?usp=sharing
På TV 2 Fyn drømmer vi om at have undertekster på al video, der bliver udgivet på vores hjemmeside og SoMe-kanaler. Men det er ikke altid, vi når det. Det er en langvarig proces at skrive gode undertekster – det ved de fleste, der har skullet transskribere et bare 10 minutter langt lydklip.
Vi har forsøgt at imødegå problemet ved at lave vores eget transskriberingsværktøj. Det er bygget på Whisper, som er et automatic speech recognition (ASR) system skabt af OpenAI, som også står bag ChatGPT. Whisper er open source og er gratis at bruge, og man kan læse mere om det her:
Open AI: https://openai.com/research/whisper
Github repo: https://github.com/openai/whisper
I vores nuværende videosystem bliver videoer transskriberet efterhånden, som de bliver uploadet. Men transskriberingen er ikke af en kvalitet, der giver mening at bruge til undertekster. Det skyldes især, at systemet ikke leverer høj nok kvalitet, både når det gælder tegnsætning og små og store bogstaver de rigtige steder.
Og hvis man skal sidde og rette i hver eneste sætning, er tidsbesparelsen på at bruge en automatisk genereret undertekstfil pludselig ikke så stor. I hvert fald ikke så stor, at det for alvor kan betale sig at bruge kræfter på den i stedet for selv at skrive undertekster.
Indledende øvelser
For at sikre at det var værd at bruge kræfter på at bygge noget baseret på Whisper, indledte vi projektet med at sammenligne vores nuværende system og Whisper. Sammenligningen, der – skal det siges – foregik på stikprøveniveau, viste, at Whisper præsterede bedre både i forhold til Word Error Rate (WER), tegnsætning og stort begyndelsesbogstav.
Vi gik i gang med at udtænke en måde, hvor vi kunne udnytte Whispers kræfter internt i huset. Whisper kan køres i computerens terminal og ved hjælp af programmeringssproget Python. Og selvom TV 2 Fyns journalister er skarpe udi det digitale, forventer vi trods alt hverken kendskab til terminalen eller programmering.
Første idé var en hjemmeside, hvor journalister kunne uploade lyd til en lokalt kørende server, der returnerede en srt-fil. Vi afprøvede det, og selvom det egentlig fungerede efter hensigten, betød en server og en hjemmeside et niveau af kompleksitet, som ikke var nødvendigt. Derfor valgte vi at gå en helt anden vej.
Lokalt forankret
Vores transskriberingsværktøj er bygget i Python og består af en lille brugerflade bygget med Python-bibliotektet tkinter. Brugeren vælger en fil, og den bliver transskriberet ved hjælp af Whisper, og en lille funktion omdanner teksten til SRT-format.
Mere om tkinter: https://docs.python.org/3/library/tkinter.html
For at sikre at brugerne ikke behøver at installere hverken Python eller nogen af de afhængigheder, programmet har, har vi ved hjælp af Python-pakken PyInstaller pakket hele appen ind i en eksekverbar fil (.exe-fil).
Mere om PyInstaller: https://pyinstaller.org/en/stable/
På den måde er programmet tilgængeligt for alle, der har den eksekverbare fil på en Windows-computer. Man skal blot køre filen, og slipper for at installere et program, Python eller nogen former for afhængigheder.
Første gang man transskriberer en fil, vil programmet downloade Whispers store model, som fylder omkring 2,8 gigabyte, men ved efterfølgende transskriberingsopgaver går den direkte til transskriberingen.
På arbejdscomputerne på TV 2 Fyn bliver to minutters video transskriberet på omkring fire minutter. Præstationen vil selvfølgelig afhænge af, hvilken maskine man kører programmet på, ligesom længden af videoer vil have indflydelse.
Muligheder
Programmet er stadig i en version 0.0. Derfor er der stadig kun en lille håndfuld journalister i huset, der benytter det. Men de gevinster, vi allerede kan se, er, at vi får en mere præcis transskribering, end den vi har været vant til. Samtidig er transskriberingen målrettet, så vi ikke transskriberer råbånd, som vi ikke bruger. På den her måde, får journalisterne en næsten færdig undertekstfil til den færdige video.
Derudover giver det, at programmet er udviklet in-house, os muligheden for selv at tilpasse det til vores behov. Det giver os fleksibilitet, hvis vi gerne vil ændre i, hvordan teksten bliver formateret, hvis vi vil fintune Whisper-modellen til vores behov, og hvis vi ønsker at bygge det ind i vores redigeringsprogram.
Kildekoden til programmet kan ses her: https://github.com/MartinDreyer/transcription_app
Programmet kan downloades her: https://drive.google.com/file/d/1YwwN8307Vou2KOLKoC3tHZ38rMP63Zh-/view
OBS: Hvis man vælger at downloade programmet og forsøge sig med det, er der et par ting, man skal være opmærksom på. For det første er programmet under GNU General Public License. Kort sagt betyder, at programmet kommer uden garantier, og at man frit kan videreudvikle på det, så længe man deler videre, så det forbliver open source. Man kan læse mere om GNU her: https://www.gnu.org/licenses/gpl-3.0.html
Programmet er ikke signeret, og vil derfor sandsynligvis give sikkerhedsadvarsler, hvis man kører det på sin Windows computer. Programmets tidlige stadie betyder også, at brugerfladen stadig kun består af det mest nødvendige. Sidst men ikke mindst skal det siges, at selvom programmet leverer bedre undertekster, er de ikke fejlfri. Derfor læser vi dem altid igennem og retter, inden vi udgiver.
Næste skridt
Næste skridt herfra vil være at optimere koden for at få programmet til at køre hurtigere. Særligt opstarten kan være langvarig. Derudover vil vi løbende kigge på feedback fra de journalister i huset, der bruger programmet for at se, hvorvidt vi kan forbedre præstationen endnu mere.
Giv lyd
Hvis du forsøger dig med programmet eller bare har idéer, input, ris eller ros, er du velkommen til at række ud til Martin Dreyer på madr@tv2fyn.dk
Leave a Reply