Skip to main content

@remotion/install-whisper-cpp

从v4.0.115版本开始可用

使用Whisper.cpp,您可以在本地计算机上转录音频。
该软件包提供了易于使用的跨平台功能,用于安装Whisper.cpp和一个模型。

npm i --save-exact @remotion/install-whisper-cpp@4.0.206
npm i --save-exact @remotion/install-whisper-cpp@4.0.206
This assumes you are currently using v4.0.206 of Remotion.
Also update remotion and all `@remotion/*` packages to the same version.
Remove all ^ character in front of the version numbers of it as it can lead to a version conflict.

示例用法

将Whisper安装为1.5.5(在撰写时我们发现的最新版本,支持令牌级时间戳)并将medium.en模型安装到whisper.cpp文件夹中。

install-whisper.cpp
tsx
import path from "path";
import {
downloadWhisperModel,
installWhisperCpp,
transcribe,
convertToCaptions,
} from "@remotion/install-whisper-cpp";
 
const to = path.join(process.cwd(), "whisper.cpp");
 
await installWhisperCpp({
to,
version: "1.5.5",
});
 
await downloadWhisperModel({
model: "medium.en",
folder: to,
});
 
const { transcription } = await transcribe({
model: "medium.en",
whisperPath: to,
inputPath: "/path/to/audio.wav",
tokenLevelTimestamps: true,
});
 
for (const token of transcription) {
console.log(token.timestamps.from, token.timestamps.to, token.text);
}
 
// Optional: Apply our recommended postprocessing
const { captions } = convertToCaptions({
transcription,
combineTokensWithinMilliseconds: 200,
});
 
for (const line of captions) {
console.log(line.text, line.startInSeconds);
}
install-whisper.cpp
tsx
import path from "path";
import {
downloadWhisperModel,
installWhisperCpp,
transcribe,
convertToCaptions,
} from "@remotion/install-whisper-cpp";
 
const to = path.join(process.cwd(), "whisper.cpp");
 
await installWhisperCpp({
to,
version: "1.5.5",
});
 
await downloadWhisperModel({
model: "medium.en",
folder: to,
});
 
const { transcription } = await transcribe({
model: "medium.en",
whisperPath: to,
inputPath: "/path/to/audio.wav",
tokenLevelTimestamps: true,
});
 
for (const token of transcription) {
console.log(token.timestamps.from, token.timestamps.to, token.text);
}
 
// Optional: Apply our recommended postprocessing
const { captions } = convertToCaptions({
transcription,
combineTokensWithinMilliseconds: 200,
});
 
for (const line of captions) {
console.log(line.text, line.startInSeconds);
}

函数

许可证

MIT