avfilter/af_whisper: fix srt index

The srt index should be incremented for each segment.

(cherry picked from commit 9970dc32bf85628e53ed0952d87d384080d8976e)
This commit is contained in:
Vittorio Palmisano 2025-09-21 15:33:17 +02:00 committed by Zhao Zhili
parent d8049e01d7
commit 7cbc26267b

View file

@ -251,6 +251,8 @@ static void run_transcription(AVFilterContext *ctx, AVFrame *frame, int samples)
(start_t / 60000) % 60, (start_t / 1000) % 60,
start_t % 1000, end_t / 3600000, (end_t / 60000) % 60,
(end_t / 1000) % 60, end_t % 1000, text_cleaned);
wctx->index++;
} else if (!av_strcasecmp(wctx->format, "json")) {
buf = av_asprintf("{\"start\":%" PRId64 ",\"end\":%" PRId64 ",\"text\":\"%s\"}\n", start_t, end_t, text_cleaned);
} else
@ -265,8 +267,6 @@ static void run_transcription(AVFilterContext *ctx, AVFrame *frame, int samples)
av_freep(&text_cleaned);
}
wctx->index++;
AVDictionary **metadata = &frame->metadata;
if (metadata && segments_text) {
av_dict_set(metadata, "lavfi.whisper.text", segments_text, 0);