UNPKG

@omnimedia/omnitool

Version:

open source video processing tools

24 lines (19 loc) 770 B
import {Pub} from "@e280/stz" import {AsSchematic} from "@e280/comrade" import {LoaderEvents} from "../../../common/loader.js" import {ProgressItem, TranscriptionChunk, TranscriptionMessage, TranscriptionResult, Word} from "../parts/types.js" export type WhisperSchematic = AsSchematic<{ work: { transcribe(input: TranscriptionMessage): Promise<TranscriptionResult | null> }, host: { updateModelLoadProgress(item: ProgressItem): Promise<void> deliverTranscriptionChunk(chunk: TranscriptionChunk): Promise<void> updateTps(value: number): Promise<void> updateTranscribeProgress(value: number): Promise<void> } }> export interface SpeechRecognizerHostEvents extends LoaderEvents { onTranscriptionChunk: Pub<Word[]> onTranscribeProgress: Pub<[number]> }