summaryrefslogtreecommitdiff
path: root/apps/web/src/constants/transcription-constants.ts
diff options
context:
space:
mode:
authorMaze <167211895+mazeincoding@users.noreply.github.com>2026-01-31 00:20:04 +0100
committerGitHub <noreply@github.com>2026-01-31 00:20:04 +0100
commit7bf0984698e43b9aa2dd879f65951318ed410390 (patch)
treeccf2cd590a47d550152afc07129cb55c71a9ec35 /apps/web/src/constants/transcription-constants.ts
parent0173db99448d1c4c6415dcf15272e17551b48b04 (diff)
downloadopencut-7bf0984698e43b9aa2dd879f65951318ed410390.tar.gz
codebase overhaul (#697)
Diffstat (limited to 'apps/web/src/constants/transcription-constants.ts')
-rw-r--r--apps/web/src/constants/transcription-constants.ts58
1 files changed, 58 insertions, 0 deletions
diff --git a/apps/web/src/constants/transcription-constants.ts b/apps/web/src/constants/transcription-constants.ts
new file mode 100644
index 00000000..3fa914f2
--- /dev/null
+++ b/apps/web/src/constants/transcription-constants.ts
@@ -0,0 +1,58 @@
+import { LANGUAGES } from "@/constants/language-constants";
+import type {
+ TranscriptionModel,
+ TranscriptionModelId,
+} from "@/types/transcription";
+import type { LanguageCode } from "@/types/language";
+
+const SUPPORTED_TRANSCRIPTION_LANGS: ReadonlyArray<LanguageCode> = [
+ "en",
+ "es",
+ "it",
+ "fr",
+ "de",
+ "pt",
+ "ru",
+ "ja",
+ "zh",
+];
+
+export const TRANSCRIPTION_LANGUAGES = LANGUAGES.filter((language) =>
+ SUPPORTED_TRANSCRIPTION_LANGS.includes(language.code),
+);
+
+export const TRANSCRIPTION_MODELS: TranscriptionModel[] = [
+ {
+ id: "whisper-tiny",
+ name: "Tiny",
+ huggingFaceId: "onnx-community/whisper-tiny",
+ description: "Fastest, lower accuracy",
+ },
+ {
+ id: "whisper-small",
+ name: "Small",
+ huggingFaceId: "onnx-community/whisper-small",
+ description: "Good balance of speed and accuracy",
+ },
+ {
+ id: "whisper-medium",
+ name: "Medium",
+ huggingFaceId: "onnx-community/whisper-medium",
+ description: "Higher accuracy, slower",
+ },
+ {
+ id: "whisper-large-v3-turbo",
+ name: "Large v3 Turbo",
+ huggingFaceId: "onnx-community/whisper-large-v3-turbo",
+ description: "Best accuracy, requires WebGPU for good performance",
+ },
+];
+
+export const DEFAULT_TRANSCRIPTION_MODEL: TranscriptionModelId =
+ "whisper-small";
+
+export const DEFAULT_CHUNK_LENGTH_SECONDS = 30;
+export const DEFAULT_STRIDE_SECONDS = 5;
+
+export const DEFAULT_WORDS_PER_CAPTION = 3;
+export const MIN_CAPTION_DURATION_SECONDS = 0.8;