From 3e89d2998588f8e35c524e523ba2ee853f0f6475 Mon Sep 17 00:00:00 2001 From: Maze Winther Date: Mon, 20 Apr 2026 11:31:17 +0200 Subject: refactor: restructure files to their domains, new preview overlay system, and dep graph --- apps/web/src/lib/transcription/caption.ts | 49 ------------------------------- 1 file changed, 49 deletions(-) delete mode 100644 apps/web/src/lib/transcription/caption.ts (limited to 'apps/web/src/lib/transcription/caption.ts') diff --git a/apps/web/src/lib/transcription/caption.ts b/apps/web/src/lib/transcription/caption.ts deleted file mode 100644 index 5e23bad8..00000000 --- a/apps/web/src/lib/transcription/caption.ts +++ /dev/null @@ -1,49 +0,0 @@ -import type { TranscriptionSegment, CaptionChunk } from "@/lib/transcription/types"; -import { - DEFAULT_WORDS_PER_CAPTION, - MIN_CAPTION_DURATION_SECONDS, -} from "@/lib/transcription/caption-defaults"; - -export function buildCaptionChunks({ - segments, - wordsPerChunk = DEFAULT_WORDS_PER_CAPTION, - minDuration = MIN_CAPTION_DURATION_SECONDS, -}: { - segments: TranscriptionSegment[]; - wordsPerChunk?: number; - minDuration?: number; -}): CaptionChunk[] { - const captions: CaptionChunk[] = []; - let globalEndTime = 0; - - for (const segment of segments) { - const words = segment.text.trim().split(/\s+/); - if (words.length === 0 || (words.length === 1 && words[0] === "")) continue; - - const segmentDuration = segment.end - segment.start; - const wordsPerSecond = words.length / segmentDuration; - - const chunks: string[] = []; - for (let i = 0; i < words.length; i += wordsPerChunk) { - chunks.push(words.slice(i, i + wordsPerChunk).join(" ")); - } - - let chunkStartTime = segment.start; - for (const chunk of chunks) { - const chunkWords = chunk.split(/\s+/).length; - const chunkDuration = Math.max(minDuration, chunkWords / wordsPerSecond); - const adjustedStartTime = Math.max(chunkStartTime, globalEndTime); - - captions.push({ - text: chunk, - startTime: adjustedStartTime, - duration: chunkDuration, - }); - - globalEndTime = adjustedStartTime + chunkDuration; - chunkStartTime += chunkDuration; - } - } - - return captions; -} -- cgit v1.3.1