From cf67bfffa0acec5d09d9756d47e4333c57c92e8c Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 18 Oct 2022 00:53:06 +0300 Subject: [PATCH] Fix EOT token handling If it is the end of the audio, pick all sampled tokens. Otherwise, print error message. --- whisper.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/whisper.cpp b/whisper.cpp index 9885278..ab22988 100644 --- a/whisper.cpp +++ b/whisper.cpp @@ -2445,9 +2445,12 @@ int whisper_full( // end of text token if (id == whisper_token_eot(ctx)) { if (result_len == 0) { - // TODO: figure out how to resolve this - fprintf(stderr, "\n%s: failed to generate timestamp token - this should not happen\n\n", __func__); - //result_len = i + 1; + if (seek + seek_delta + 100 >= whisper_n_len(ctx)) { + result_len = i + 1; + } else { + // TODO: figure out how to resolve this + fprintf(stderr, "\n%s: failed to generate timestamp token - this should not happen\n\n", __func__); + } } break; }