Purfview / whisper-standalone-win

Whisper & Faster-Whisper standalone executables for those who don't want to bother with Python.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Missing whole parts of the text [r186.1]

Sonnenfleck opened this issue · comments

In every file I transcribe, big chunks of text are missing. An example - this is a small part of a 40 min audio that whisper.cpp transcribed, and it's spot on (sorry, German):

Es geht im Kern darum, angemessene Vertragslaufzeiten zu gewährleisten und die Vereinbarkeit von Beruf und Familie zu verbessern. Zugleich soll die Attraktivität der Arbeit in der Wissenschaft erhöht und die Leistungs- und Wettbewerbsfähigkeit des Wissenschaftssystems hierzulande gestärkt werden. Soweit mein knapper Bericht aus dem Kabinett von heute. Vielen Dank, dann kommen wir gleich zu den Fragen.

And this is the same part with whisper-faster (or whisper-faster-xxl test 2, for that matter):

Es geht im Kern darum, angemessene Vertragslaufzeiten zu gewährleisten Vielen Dank, dann kommen wir gleich zu den Fragen.

You can see that the whole middle part is missing. This happens maybe 5-10 times in a one hour audio file. The audio files I use are always good quality, low noise and well leveled.

If I change beam_size and/or best_of, it may not be this part, but another one that's missing. There's no rhyme or reason to it, sometimes it's 20 seconds that are missing, sometimes 30, sometimes a whole minute. With beam_size 1, it seems to be a bit worse, but it happens with 5 or 10, too.

My settings are:

--model large-v3 --task transcribe --language de --condition_on_previous_text false

Other than that, I only tested beam_size 1, 5, 10 and best_of 1, 5, 10.

Both whisper.cpp and faster-whisper (Python) don't seem to have this problem.

Do you have and idea which settings could lead to this? Is there any way I can see the default settings you use? I really have no idea what the problem could be. I would love to switch from Mac/whisper.cpp to PC/CUDA/whiper-faster, but the results completely are unpredictable like this. :/

Can you share the file where it happens somewhere near start? [+srt file]

Purfview edit: link deleted

5 minute audio/video, the whole part from 0:30-1:00 is missing.
The .srt is from whisper-faster-xxl test 2, the .html is from whisper.cpp.

I'll check it later

--condition_on_previous_text false can make some discontinuities, it's not recommended to disable it.
Try to disable VAD: -vad=false

I thought --condition_on_previous_text false would be the same as -mc 0 in whisper.cpp (number of context tokens = 0), which I use because of frequent hallucinations with German language and model large-v3 when context is used. I guess it's not the same?

BUT: No 30 second gap with --condition_on_previous_text true, so that was the culprit here.

Tested it with the whole 40 minute file: Only minor differences in transcription quality now, no big missing parts. Thanks for steering me in the right direction!

Btw, I'd really like an overview of the default settings and an explanation of all the settings. But I'm not complaining, the existence of whisper-standalone makes me very happy. :)

I thought --condition_on_previous_text false would be the same as -mc 0 in whisper.cpp (number of context tokens = 0), which I use because of frequent hallucinations with German language and model large-v3 when context is used. I guess it's not the same?

I think effect should be same.
I don't think that conditioning is direct culprit for hallucinations, it's more about content of the prompt.

BUT: No 30 second gap with --condition_on_previous_text true, so that was the culprit here.

Try --condition_on_previous_text false -prompt None

I suspect that the culprit is that custom prompt is still running when conditioning is disabled, it's because experimental --reprompt is enabled by default ( its effect should be similar as this PR -> SYSTRAN/faster-whisper#731 ).
Maybe I should disable it by default or rewrite its approach.

Btw, I'd really like an overview of the default settings and an explanation of all the settings.

That's in --help

Try --condition_on_previous_text false -prompt None

Yep, that or --condition_on_previous_text false --reprompt 0 works, too. Maybe --condition_on_previous_text false should also trigger the --reprompt 0 setting?

But even with context enabled I have way less problems with hallucinations in whisper-faster than in whisper.cpp.

That's in --help

Thanks! Now I can test different settings more systematically.

Yep, that or --condition_on_previous_text false --reprompt 0 works, too. Maybe --condition_on_previous_text false should also trigger the --reprompt 0 setting?

Need to think about it.

But even with context enabled I have way less problems with hallucinations in whisper-faster than in whisper.cpp.

Share a hallucination if you'll get one, btw you can try -hst=2 to reduce potential hallucinations.

Just now I looked at your shared sample, I don't think it's the reprompt culprit, segment is not missing its just some random hallucination in its place:

I couldn't reproduce it, probably because of different compute type [int8_float32]:

whisper-faster _test.mp3 -l de -m large-v3 --verbose true --condition_on_previous_text false

  Processing segment at 00:28.380
[00:28.380 --> 00:56.440]  ... an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Ostkonflikt nachhaltig zu lösen. Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln freizubekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:58.380

Can you reproduce the issue with --verbose=true and post the output directly from the console [just the part around hallucination], maybe there will be more info.

I think the culprit is large-v3 model as it hallucinates a lot, I think that large-v2 is much better.
Proper approach for such hallucinations is to use -hst 2 option.

Sorry, too busy the last two days.

I can reproduce it with these settings:

-m large-v3 --language de --verbose true --condition_on_previous_text false

The console output for the problematic half-minute segment:

  Processing segment at 00:28.380
[00:28.380 --> 00:45.780]  Vielen Dank für die Aufmerksamkeit.
  Processing segment at 00:58.380
[00:58.380 --> 01:09.060]  Ja, das war jetzt auch ganz allgemein...

With -hst 2 added:

  Processing segment at 00:28.380
* HST_2: DETECTED HALLUCINATION:  Vielen Dank für die Aufmerksamkeit.
  Processing segment at 00:29.380
* HST_2: DETECTED HALLUCINATION:  Das ist der erste Satz.
  Processing segment at 00:30.380
[00:57.440 --> 01:00.220]  Ja, das war jetzt auch ganz allgemein auch die
  Processing segment at 01:00.220

With additional options -prompt None --reprompt 0, I get no hallucinations:

[00:23.840 --> 00:30.120]  auch. Das sind Fragen, wie wir in einen politischen Prozess kommen können, an dessen Ende dann eine
[00:30.120 --> 00:35.120]  Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist,
[00:35.560 --> 00:41.240]  diesen Konflikt, den Ostkonflikt nachhaltig zu lösen. Das ist der Austausch mit unseren Partnern
[00:41.240 --> 00:45.240]  in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln frei zu
[00:45.240 --> 00:53.320]  bekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen,
[00:53.320 --> 00:56.460]  dass wir vorankommen an konkreten Punkten.
[00:57.820 --> 01:02.920]  Ja, das war jetzt auch ganz allgemein, auch die letzten Wochen haben Sie das Gleiche gesagt,

With whisper.cpp default settings, pretty much the same:

[00:00:24.120 --> 00:00:32.160]   Das sind Fragen, wie wir in einen politischen Prozess kommen können, an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss,
[00:00:32.160 --> 00:00:38.720]   weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Nahostkonflikt nachhaltig zu lösen.
[00:00:38.720 --> 00:00:43.200]   Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen.
[00:00:43.200 --> 00:00:45.780]   Das sind unsere Bemühungen, die Geiseln freizubekommen.
[00:00:45.780 --> 00:00:53.360]   Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen,
[00:00:53.360 --> 00:00:56.360]   dass wir vorankommen an konkreten Punkten.
[00:00:56.360 --> 00:01:03.020]   Ja, das war jetzt auch ganz allgemein, auch die letzten Wochen haben Sie das Gleiche gesagt.

Maybe just a hallucination, but previously I always had repeating nonsensical text then, not just one short sentence and the rest just missing.

The second hallucination with -hst 2 ("Das ist der erste Satz" - "This is the first sentence") is one I seem to be getting a lot, also in slight variations ("Das ist der dritte Satz" - "This is the third sentence").

With whisper.cpp and model large-v3 I sometimes get other, even weirder hallucinations, but never this one. There it can be remedied with -mc 0. In this case, that wasn't necessary.

Curious, that the choice of hallucination changes with different parameters and/or different whisper variants.

Yep, large-v3 has the worst hallucinations, but if that can be remedied (by deactivating context, it seems), it still leads to better results in German than large-v2, at least in my experience.

Hmm, hst detected the hallucinations, but still model just refused to transcribe anything on this segment.
Try incrementally, check if it starts transcribing this segment [if it will then try same cmd without -hst]:

-m large-v3 -l de -v true -condition false -hst 2 --patience 1.2
-m large-v3 -l de -v true -condition false -hst 2 --patience 1.5
-m large-v3 -l de -v true -condition false -hst 2 --patience 2
-m large-v3 -l de -v true -condition false -hst 2 --patience 3
-m large-v3 -l de -v true -condition false -hst 2 --patience 5

patience 1.2:

  Processing segment at 00:28.380
* HST_2: DETECTED HALLUCINATION:  Vielen Dank für die Aufmerksamkeit.
  Processing segment at 00:29.380
* HST_2: DETECTED HALLUCINATION:  Das ist der erste Satz.
  Processing segment at 00:30.380
[00:57.440 --> 01:00.220]  Ja, das war jetzt auch ganz allgemein auch die

patience 1.5:

  Processing segment at 00:28.380
* HST_2: DETECTED HALLUCINATION:  Vielen Dank für die Aufmerksamkeit.
  Processing segment at 00:29.380
* Compression ratio threshold is not met with temperature 0.0 (4.235294 > 2.400000)
[00:34.700 --> 00:56.440]  ... in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln frei zu bekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:56.440
[00:57.860 --> 01:09.060]  Ja, das war jetzt auch ganz allgemein. Auch in den letzten Wochen haben Sie das 

patience 2, 3 and 5:

  Processing segment at 00:28.380
* HST_1: DETECTED HALLUCINATION:  Vielen Dank für die Aufmerksamkeit.
  Processing segment at 00:30.620
[00:56.780 --> 01:00.000]  Ja, das war jetzt auch ganz allgemein

Weird.

patience 1.5 without hst 2:

  Processing segment at 00:28.380
[00:28.380 --> 00:45.780]  Vielen Dank für die Aufmerksamkeit.
  Processing segment at 00:58.380

Looks like the fallback triggered something, try these:

-m large-v3 -l de -v true -condition false --compression_ratio_threshold 2.2 --logprob_threshold -0.7
-m large-v3 -l de -v true -condition false --compression_ratio_threshold 2.0 --logprob_threshold -0.5
-m large-v3 -l de -v true -condition false --compression_ratio_threshold 1.8 --logprob_threshold -0.3

-m large-v3 -l de -v true -condition false --compression_ratio_threshold 2.2 --logprob_threshold -0.7

  Processing segment at 00:28.380
* Log probability threshold is not met with temperature 0.0 (-0.830729 < -0.700000)
* Log probability threshold is not met with temperature 0.2 (-0.769702 < -0.700000)
* Log probability threshold is not met with temperature 0.4 (-0.769702 < -0.700000)
* Log probability threshold is not met with temperature 0.6 (-0.769702 < -0.700000)
[00:28.380 --> 00:56.460]  ...an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Nahrost-Konflikt nachhaltig zu lösen. Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln frei zu bekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:56.460

-m large-v3 -l de -v true -condition false --compression_ratio_threshold 2.0 --logprob_threshold -0.5

  Processing segment at 00:28.380
* Log probability threshold is not met with temperature 0.0 (-0.830729 < -0.500000)
* Log probability threshold is not met with temperature 0.2 (-0.769702 < -0.500000)
[00:28.380 --> 00:56.460]  ...an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Ostkonflikt nachhaltig zu lösen. Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln frei zu bekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:58.380

-m large-v3 -l de -v true -condition false --compression_ratio_threshold 1.8 --logprob_threshold -0.3

  Processing segment at 00:28.380
* Log probability threshold is not met with temperature 0.0 (-0.830729 < -0.300000)
* Log probability threshold is not met with temperature 0.2 (-0.769702 < -0.300000)
[00:28.380 --> 00:56.460]  ... an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Ostkonflikt nachhaltig zu lösen. Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln freizubekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:58.380

So all three worked (kind of, that's a very long line) and had identical results.

As I always suspected - large-v3 needs more sensitive pseudo vad thresholds.
I think I'll add a default preset for it: --compression_ratio_threshold 2.2 --logprob_threshold -0.7.

Later I'll look at the current custom prompt behaviour, keep this files around for test.

So all three worked (kind of, that's a very long line)..

That's irrelevant, just use --sentence or --standard to get normal subtitles.

Do one more test:
-m large-v3 -l de -v true -condition false --compression_ratio_threshold 2.2 --logprob_threshold -0.8

-m large-v3 -l de -v true -condition false --compression_ratio_threshold 2.2 --logprob_threshold -0.8

  Processing segment at 00:28.380
* Log probability threshold is not met with temperature 0.0 (-0.830729 < -0.800000)
[00:28.380 --> 00:56.460]  ... an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Nahostkonflikt nachhaltig zu lösen. Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln freizubekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:58.380

But now I'm confused. I ran it again a few times. Same settings. Sometimes I get the result above, sometimes I get this:

  Processing segment at 00:28.380
* Log probability threshold is not met with temperature 0.0 (-0.830729 < -0.800000)
[00:28.380 --> 00:29.000]  Vielen Dank.
  Processing segment at 00:58.380

I always thought Whisper is a bit unpredictable. But also non-deterministic?

Sometimes I get the result above, sometimes I get this..

Use 0.7, 0.8 is too close to log probabilities of the hallucinations.

But also non-deterministic?

It's deterministic till temperature is 0. You can prevent temperature going up with -fallback None, for example:
-m large-v3 -l de -v true -condition false --logprob_threshold -0.7 -fallback None

Can you share output of that command from the above post?

Yep:

-m large-v3 -l de -v true -condition false --logprob_threshold -0.7 -fallback None

  Processing segment at 00:28.380
* Log probability threshold is not met with temperature 0.0 (-0.830729 < -0.700000)
[00:28.380 --> 00:45.780]  Vielen Dank für die Aufmerksamkeit.
  Processing segment at 00:58.380

However, additionally with -prompt None --reprompt 0:

  Processing segment at 00:23.840
[00:23.840 --> 00:30.120]  auch. Das sind Fragen, wie wir in einen politischen Prozess kommen können, an dessen Ende dann eine
[00:30.120 --> 00:35.120]  Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist,
[00:35.560 --> 00:41.240]  diesen Konflikt, den Ostkonflikt nachhaltig zu lösen. Das ist der Austausch mit unseren Partnern
[00:41.240 --> 00:45.240]  in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln frei zu
[00:45.240 --> 00:53.320]  bekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen,
  Processing segment at 00:53.320

Sorry if this is not useful, I'm just playing with what worked so far.

However, additionally with -prompt None --reprompt 0

Yeah, not useful. -prompt None auto disables --reprompt, no need to set it.

I always thought Whisper is a bit unpredictable.

Yes, one byte change in audio can trigger whole transcription to be different, like the butterfly effect.
Test audio altering filters:
-m large-v3 -l de -v true -condition false --ff_mp3
-m large-v3 -l de -v true -condition false --ff_rnndn_sh
-m large-v3 -l de -v true -condition false --ff_rnndn_xiph
-m large-v3 -l de -v true -condition false --ff_speechnorm
-m large-v3 -l de -v true -condition false --ff_silence_suppress -40 0.3

-m large-v3 -l de -v true -condition false

  Processing segment at 00:28.380
[00:28.380 --> 00:45.780]  Vielen Dank für die Aufmerksamkeit.
  Processing segment at 00:58.380

-m large-v3 -l de -v true -condition false --ff_mp3

  Processing segment at 00:23.840
[00:23.840 --> 00:38.640]  Das sind Fragen, wie wir in einen politischen Prozess kommen können, an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Nahostkonflikt nachhaltig zu lösen.
  Processing segment at 00:38.640
[00:38.640 --> 00:56.440]  Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln freizubekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:56.440

-m large-v3 -l de -v true -condition false --ff_rnndn_sh

  Processing segment at 00:28.400
[00:28.400 --> 00:38.620]  Ich glaube, dass es eine große Herausforderung ist, wenn an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Ostkonflikt nachhaltig zu lösen.
[00:39.040 --> 00:45.600]  Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln frei zu bekommen.
[00:47.620 --> 00:56.460]  Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:56.460

-m large-v3 -l de -v true -condition false --ff_rnndn_xiph

  Processing segment at 00:28.400
[00:28.400 --> 00:38.620]  Ich glaube, dass es eine große Herausforderung sein wird, wenn an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Ostkonflikt nachhaltig zu lösen.
[00:39.040 --> 00:45.600]  Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln frei zu bekommen.
[00:47.600 --> 00:56.460]  Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:56.460

-m large-v3 -l de -v true -condition false --ff_speechnorm

  Processing segment at 00:23.840
[00:23.840 --> 00:38.620]  Das sind Fragen, wie wir in einen politischen Prozess kommen können, an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Ostkonflikt nachhaltig zu lösen.
  Processing segment at 00:38.620
[00:38.620 --> 00:56.440]  Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln freizubekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:56.440

-m large-v3 -l de -v true -condition false --ff_silence_suppress -40 0.3

  Processing segment at 00:23.840
[00:23.840 --> 00:38.620]  Das sind Fragen, wie wir in einen politischen Prozess kommen können, an dessen Ende dann eine Zwei-Staaten-Lösung stehen muss, weil wir der Überzeugung sind, dass das der einzige Weg ist, diesen Konflikt, den Nahostkonflikt nachhaltig zu lösen.
  Processing segment at 00:38.620
[00:38.620 --> 00:56.460]  Das ist der Austausch mit unseren Partnern in der Region, die da eine wichtige Rolle spielen. Das sind unsere Bemühungen, die Geiseln freizubekommen. Insofern machen wir Tag und Nacht nichts anderes, um uns da einzubringen und zu schauen, dass wir vorankommen an konkreten Punkten.
  Processing segment at 00:56.460

So all filters lead to better results than the unfiltered audio. Even though the source file sounds fine to me. Just butterfly effect or an issue with the source audio?

I'm not sure I understand --ff_mp3. How does that do anything but decrease the audio quality? Is it used because the source material used for training the models often was mp3?

So all filters lead to better results than the unfiltered audio. Even though the source file sounds fine to me. Just butterfly effect or an issue with the source audio?

In case of this hallucination I think mostly "butterfly effect", but those filters suppose to make things better, so, who knows. 😆
Even the ffmpeg version can have an impact.

Btw, comparing to cpp is futile too, because of different quantizations [aka compute types] of model.
Test various quantizations [that's just few from dozens possible variations]:
-m large-v3 -l de -v true -condition false --compute_type=int8_float32
-m large-v3 -l de -v true -condition false --compute_type=float32
-m large-v3 -l de -v true -condition false --compute_type=bfloat16

On your hardware probably one from those is running by default:
-m large-v3 -l de -v true -condition false --compute_type=int8_float16
-m large-v3 -l de -v true -condition false --compute_type=float16

I'm not sure I understand --ff_mp3. How does that do anything but decrease the audio quality? Is it used because the source material used for training the models often was mp3?

Yeah, it's more like a fun filter. No scientific data behind it. Imo, it's just to trigger the butterfly effect.
But... some users claim that it's like some magic filter making transcriptions better... so I made it available. 😆
"training the models often was mp3" - could be, but as we don't have access to the training data we will never know.

Hallucination?

float16: YES
int8_float16: YES
int8_float32: NO
float32: YES
bfloat16: NO

This really feels like voodoo / butterfly herding. Enough for today. 😉

I'll have to try this again with some other problematic audio files when I'm proofreading the transcripts. Hopefully there'll be some trends which options work better and it's not just random.

Auto offsets for defaults are implemented in r189.1, large-v3 should work better with defaults.

Will try and compare again with a bigger file.

If your audios are just ~clean podcasts and you prefer v3 model, then I recommend these settings:

-m large-v3 -l de -hst 2 --ff_rnndn_sh --sentence or -m large-v3 -l de -hst 2 --ff_rnndn_sh --standard

If there is noise in background like music ect.. then you would want to use Faster-Whisper-XXL.