video_transcript_whisper 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +7 -1
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
- package/src/cli.ts +9 -1
package/dist/cli.js
CHANGED
|
@@ -14,6 +14,8 @@ async function main() {
|
|
|
14
14
|
program
|
|
15
15
|
.option('-i, --input-video-path <path>', 'Path to the video file to transcribe')
|
|
16
16
|
.option('-o, --output-path <path>', 'Path to save the transcribed captions')
|
|
17
|
+
.option('-m, --model-name <modelName>', 'The whisper model to use. Default is "medium.en". See https://www.remotion.dev/docs/install-whisper-cpp/#models for available models. "medium.en" is a good default for English audio. If you are transcribing non-English audio, you may want to use "medium" or a model without the ".en" suffix.', 'medium.en')
|
|
18
|
+
.option('-l, --language <language>', 'The language of the audio. This is used to help whisper.cpp transcribe better. Default is "en" (English). See https://www.remotion.dev/docs/install-whisper-cpp/#languages for available languages', 'en')
|
|
17
19
|
.option('-v, --verbose', 'Enable verbose logging', false)
|
|
18
20
|
.parse(process.argv);
|
|
19
21
|
const options = program.opts();
|
|
@@ -27,7 +29,11 @@ async function main() {
|
|
|
27
29
|
}
|
|
28
30
|
// transcribe audio to captions
|
|
29
31
|
const whisperPath = Path.join(__dirname, '../output', 'whisper.cpp');
|
|
30
|
-
const transcribedText = await TranscriptionWordHelper.transcribeVoice(whisperPath, extractedAudioPath, {
|
|
32
|
+
const transcribedText = await TranscriptionWordHelper.transcribeVoice(whisperPath, extractedAudioPath, {
|
|
33
|
+
verbose: options.verbose,
|
|
34
|
+
modelName: options.modelName,
|
|
35
|
+
language: options.language
|
|
36
|
+
});
|
|
31
37
|
if (options.verbose) {
|
|
32
38
|
console.timeEnd('transcribeAudioToCaptions');
|
|
33
39
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,eAAe;AACf,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,cAAc;AACd,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AAEvC,gBAAgB;AAChB,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;AAEzD,KAAK,UAAU,IAAI;IAClB,+BAA+B;IAC/B,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;IACxC,OAAO;SACL,MAAM,CAAC,+BAA+B,EAAE,sCAAsC,CAAC;SAC/E,MAAM,CAAC,0BAA0B,EAAE,uCAAuC,CAAC;SAC3E,MAAM,CAAC,eAAe,EAAE,wBAAwB,EAAE,KAAK,CAAC;SACxD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAGtB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,eAAe;AACf,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,cAAc;AACd,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AAEvC,gBAAgB;AAChB,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;AAEzD,KAAK,UAAU,IAAI;IAClB,+BAA+B;IAC/B,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;IACxC,OAAO;SACL,MAAM,CAAC,+BAA+B,EAAE,sCAAsC,CAAC;SAC/E,MAAM,CAAC,0BAA0B,EAAE,uCAAuC,CAAC;SAC3E,MAAM,CAAC,8BAA8B,EAAE,qSAAqS,EAAE,WAAW,CAAC;SAC1V,MAAM,CAAC,2BAA2B,EAAE,oMAAoM,EAAE,IAAI,CAAC;SAC/O,MAAM,CAAC,eAAe,EAAE,wBAAwB,EAAE,KAAK,CAAC;SACxD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAGtB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAMxB,CAAC;IAKL,iDAAiD;IACjD,wEAAwE;IACxE,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,+BAA+B,CAAC,CAAC;IACjF,MAAM,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAElF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;IAED,+BAA+B;IAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;IACrE,MAAM,eAAe,GAAG,MAAM,uBAAuB,CAAC,eAAe,CAAC,WAAW,EAAE,kBAAkB,EAAE;QACtG,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC1B,CAAC,CAAC;IAGH,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC9C,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC9B,CAAC;SAAM,CAAC;QACP,oCAAoC;QACpC,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;AACF,CAAC;AAED,+EAA+E;AAC/E,+EAA+E;AAC/E,GAAG;AACH,+EAA+E;AAC/E,+EAA+E;AAE/E,KAAK,IAAI,EAAE,CAAC"}
|
package/package.json
CHANGED
package/src/cli.ts
CHANGED
|
@@ -18,6 +18,8 @@ async function main() {
|
|
|
18
18
|
program
|
|
19
19
|
.option('-i, --input-video-path <path>', 'Path to the video file to transcribe')
|
|
20
20
|
.option('-o, --output-path <path>', 'Path to save the transcribed captions')
|
|
21
|
+
.option('-m, --model-name <modelName>', 'The whisper model to use. Default is "medium.en". See https://www.remotion.dev/docs/install-whisper-cpp/#models for available models. "medium.en" is a good default for English audio. If you are transcribing non-English audio, you may want to use "medium" or a model without the ".en" suffix.', 'medium.en')
|
|
22
|
+
.option('-l, --language <language>', 'The language of the audio. This is used to help whisper.cpp transcribe better. Default is "en" (English). See https://www.remotion.dev/docs/install-whisper-cpp/#languages for available languages', 'en')
|
|
21
23
|
.option('-v, --verbose', 'Enable verbose logging', false)
|
|
22
24
|
.parse(process.argv);
|
|
23
25
|
|
|
@@ -25,6 +27,8 @@ async function main() {
|
|
|
25
27
|
const options = program.opts<{
|
|
26
28
|
inputVideoPath: string;
|
|
27
29
|
outputPath?: string;
|
|
30
|
+
modelName: "medium.en" | "base" | "base.en" | "large-v1" | "large-v2" | "large-v3" | "large-v3-turbo" | "medium" | "small" | "small.en" | "tiny" | "tiny.en";
|
|
31
|
+
language: "en" | "es" | "fr" | "de" | "it" | "pt" | "ru" | "zh" | "ja" | "ko";
|
|
28
32
|
verbose: boolean;
|
|
29
33
|
}>();
|
|
30
34
|
|
|
@@ -43,7 +47,11 @@ async function main() {
|
|
|
43
47
|
|
|
44
48
|
// transcribe audio to captions
|
|
45
49
|
const whisperPath = Path.join(__dirname, '../output', 'whisper.cpp');
|
|
46
|
-
const transcribedText = await TranscriptionWordHelper.transcribeVoice(whisperPath, extractedAudioPath, {
|
|
50
|
+
const transcribedText = await TranscriptionWordHelper.transcribeVoice(whisperPath, extractedAudioPath, {
|
|
51
|
+
verbose: options.verbose,
|
|
52
|
+
modelName: options.modelName,
|
|
53
|
+
language: options.language
|
|
54
|
+
});
|
|
47
55
|
|
|
48
56
|
|
|
49
57
|
if (options.verbose) {
|