Skip to content

Commit

Permalink
Incorrect timetstamps
Browse files Browse the repository at this point in the history
Fixes ggerganov#2271

- Adds consecutive timestamps after end of last segment as the new starting ts
- Add these timestamp to output when "print-special" enabled
- Fixes fflush usage in live reporting

I was not able to test this with the special "token_timestamps" option.
  • Loading branch information
bviksoe committed Jul 3, 2024
1 parent c118733 commit 3e99276
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions src/whisper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6240,11 +6240,15 @@ int whisper_full_with_state(
}
}
text = "";
t0 = t1;
while (i < (int) tokens_cur.size() && tokens_cur[i].id > whisper_token_beg(ctx)) {
if (params.print_special) {
text += whisper_token_to_str(ctx, tokens_cur[i].id);
}
t0 = seek + 2 * (tokens_cur[i].tid - whisper_token_beg(ctx));
i++;
}
i--;
t0 = t1;
i0 = i + 1;
speaker_turn_next = false;
}
Expand All @@ -6261,8 +6265,8 @@ int whisper_full_with_state(
printf("[%s --> %s] %s\n", to_timestamp(tt0).c_str(), to_timestamp(tt1).c_str(), text.c_str());
} else {
printf("%s", text.c_str());
fflush(stdout);
}
fflush(stdout);
}

result_all.push_back({ tt0, tt1, text, {} , speaker_turn_next });
Expand Down

0 comments on commit 3e99276

Please sign in to comment.