Aktualna verzia whisperx 3.3.1
Testované s torch 2.6.0+cpu, pyannote.audio 3.3.2.

Pri transkripci problem so segmentovanými súbormi
Krátke alebo nemé audio súbory vedú k zastaveniu Whisperu => Whisper nerozpozná fonémy a padne bez erroru (super)
Pokus použitia exceptniov na odchytenie erroru => neuspešné 
Je potrebné overiť veľkosť alebo čas jednotlivých súborov pred transkripciou
Môže dôjsť k problému že netraskriptne audio ktoré slová obsahuje

TODO:
Detekovat speakerov # Done
Nasegmetovat dlhsie segmenty a rozlizit jazyky
Whisper nastavit natvrdo jazyky speakera # Done
Pri detekci jazyka brat do uvahy 5 sekund pri segmente 
Pri jednotlivých segmentoch detekovat jazyk 
Pomocou časových značiek (Time-Stamps) pospájať speakera s rozlišným jazykom 


Este doplnit o dalsi transkript Phi-4 pre lepsie porovanenie 
Skusit pouzit normalizaciu od open ai vo whispere
Zobrat 3-5 najdlhsich segmetov pre detekciu jazyka(nie vsetky segmenty) 

Pospajat segmenti podla casovych znaciek pre vyssiu presnost v rovnakom jazyku a fazi transkripcie 

Porovnat transkripciu s normalizacoi hlasitosti a bez normalizacie hlasitosti 

Do práce doplniť blokovy vývojový diagram (rozhodavanie fázi), doplniť o grafy pre lepšiu čítateľnosť

pozn. pretty print pre lepsiu prehladnost 
    orientovat sa podla parametrov pri modeloch 
Pokusit sa zobrat tri najdlhsie segmeti

Preskusat SeamlessM4T s určením cielového jazyka

Opätovne preskusat  facebook/mms-1b, možná chyba pri postupe  # EN = 22.8% , CZ = 56.6% , SK = 21.6 %, UTB = 61.1 %
                    facebook/seamless-m4t-v2-large # CZ = 35.6 %, SK = 41.6 %, UTB = 48.4 %, EN = %

Pridat WER od Gemini-Flash 2.5 
Prompt pre UTB podcast: You are a expert transcription system, which transcribes a podcast made by Tomas Bata University in Czech republic in a city named Zlin. The podcast has two moderators: Rasťo who speaks in Slovak language and Lea who speaks in Czech language. Their guests consist mainly of teachers and employees from the University. Diarize the speakers and assign correct languages the speakers are talking in. Ignore words such as: eh, mhm 
WER : 7 %
Prompt pre CZ: You are a expert transcription system, which transcribes a podcast made in Czech language. Diarize the speakers.
WER : 10 %
prompt pre SK: You are a expert transcription system, which transcribes a podcast made in Slovak language. Diarize the speakers.
WER : 7 %
Prompt pre EN: You are a expert transcription system, which transcribes a podcast made in English. Diarize the speakers.
WER : 11 %
Preskusat commercial modely Azure STT 

Possible fix : transkriptovat text audio segmenty, ktoré majú detekovaný iný jazyk ako v prvotnom transkripte napr.
Pri transkriptovaný orig. audia bol detekovaný cs jazyk, transkriptovať znova segmenty ktoré majú detekovaný iný jazyk napr. sk (Potrebujem zachovat casove znacky) 
WORD level timestamps - pospajat segmenti a potom podla word level time stamps preorganizovat aby to vyhovovalo casovym usekom
Pokusit sa Fine tunovat model -   

Microsoft Azure dokaze robit segmentaciu - (popripade vyskusat)


Davat pozor na diery, 
Pozriet na prvy timestap potom zdrojovy, 

zapisat presne sekundy, audio navratit pomocou tohoto postupu 

speaker 1 0-10 A
speaker 2 10-20
speaker 1 20-27 B
speaker 2 27-35

speaker 1 0-10 A
10
speaker 1 10-17 B
17

AB 17 

2 sekunda spada pod prvy segment speakera 1 
12 sekunda spada pod druhy segment speakera 1 
Pocitat rozdieli v casovych znackach

Faster-Whisper  -> menej presné časové značky, whisperX pravdepodobne lepší (zvláštne že ide o rovnaký model a majú iné timestampy)

Problém s nepresnými časovými značkami rečniká => slovíćka sa vkladajú do nesprávnych segmentov (Possible fix - miesto časových značiek prvého transkriptu, boli prevedené dĺžky vytvorených audio segmentov)
Potrebne integrovat software pre prehravanie podcastu spolu s trasnkriptom (Spravne rozlozene casove znacky)

9.57%
10.45%

Problem s dlhymi segmentami 
Export na titulky -> Pravdepodobny problem, ze casove znacky by uz nenadvezovaly na originalny transkript po druhej transkripci

Titulky pri dlhych segmentov teraz prechadzaju skor nez recnik dohovori
Percentny bod 
Skusit cez Gemini promptnut a vylepsit casove znacky, pridat audio aj titulky

Pouzit pre lepšie ukladanie segmentov pre titulky
Špecifikovať speakera pri zmene speakera 
--max_line_width and --max_line_count  ->   Vznikli problémy pri opätovnej transkripcii, aj napriek spájaní segmentov jazykovo odlišného speakera spôsobilo halucinácie.
                                            Pravdepodobny dôvod môžu byť pauzy spôsobené skrátenými segmentami.

Pri diarizaci skontrolovať veľkosť wav2vec model

Upravit kód aby bol spustitelny cez konzolu
Zobrazovať len časovú os a potrebné buttony, pauza, hlasitost

Gemini pro na refactoring, vyskusat novu verziu omni