feat: 将视频转写重构为纯文字异步语音识别

This commit is contained in:
2026-10-03 21:58:06 +08:00
parent 040273586b
commit 6f0e38054b
34 changed files with 2283 additions and 1771 deletions
+33
View File
@@ -0,0 +1,33 @@
export type TranscriptionStatus =
| "PENDING"
| "QUEUED"
| "PROCESSING"
| "SUCCEEDED"
| "FAILED";
export type Transcript = { transcript: string[] };
export type TranscriptionState = {
status: TranscriptionStatus;
error: string | null;
transcript: string[] | null;
};
export const statusLabels: Record<TranscriptionStatus, string> = {
PENDING: "待转写",
QUEUED: "排队中",
PROCESSING: "处理中",
SUCCEEDED: "已完成",
FAILED: "失败",
};
export function isActive(status: string) {
return status === "QUEUED" || status === "PROCESSING";
}
export function transcriptionState(
transcript: Transcript | null,
task: { status: string; lastError: string | null } | null,
): TranscriptionState {
return {
status: (task?.status ??
(transcript ? "SUCCEEDED" : "PENDING")) as TranscriptionStatus,
error: task?.lastError ?? null,
transcript: transcript?.transcript ?? null,
};
}