echogarden 1.4.3 → 1.5.0

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.
Files changed (152) hide show
  1. package/README.md +1 -1
  2. package/data/schemas/options.json +267 -19
  3. package/data/tables/lcid-table.json +9 -0
  4. package/dist/alignment/DTWMfccSequenceAlignment.d.ts +1 -1
  5. package/dist/alignment/DTWMfccSequenceAlignment.js +9 -5
  6. package/dist/alignment/DTWMfccSequenceAlignment.js.map +1 -1
  7. package/dist/alignment/DTWSequenceAlignmentWindowed.js +4 -4
  8. package/dist/alignment/DTWSequenceAlignmentWindowed.js.map +1 -1
  9. package/dist/alignment/{TextAlignment.d.ts → SemanticTextAlignment.d.ts} +10 -1
  10. package/dist/alignment/SemanticTextAlignment.js +336 -0
  11. package/dist/alignment/SemanticTextAlignment.js.map +1 -0
  12. package/dist/alignment/SpeechAlignment.d.ts +2 -1
  13. package/dist/alignment/SpeechAlignment.js +106 -38
  14. package/dist/alignment/SpeechAlignment.js.map +1 -1
  15. package/dist/api/API.d.ts +7 -2
  16. package/dist/api/API.js +7 -2
  17. package/dist/api/API.js.map +1 -1
  18. package/dist/api/APIOptions.d.ts +4 -1
  19. package/dist/api/Alignment.d.ts +1 -1
  20. package/dist/api/Alignment.js +14 -6
  21. package/dist/api/Alignment.js.map +1 -1
  22. package/dist/api/LanguageDetectionCommon.d.ts +6 -0
  23. package/dist/api/LanguageDetectionCommon.js +2 -0
  24. package/dist/api/LanguageDetectionCommon.js.map +1 -0
  25. package/dist/api/Recognition.js.map +1 -1
  26. package/dist/api/{LanguageDetection.d.ts → SpeechLanguageDetection.d.ts} +1 -25
  27. package/dist/api/{LanguageDetection.js → SpeechLanguageDetection.js} +1 -68
  28. package/dist/api/SpeechLanguageDetection.js.map +1 -0
  29. package/dist/api/{Translation.js → SpeechTranslation.js} +3 -3
  30. package/dist/api/SpeechTranslation.js.map +1 -0
  31. package/dist/api/Synthesis.js +4 -4
  32. package/dist/api/TextLanguageDetection.d.ts +21 -0
  33. package/dist/api/TextLanguageDetection.js +67 -0
  34. package/dist/api/TextLanguageDetection.js.map +1 -0
  35. package/dist/api/TextTranslation.d.ts +5 -0
  36. package/dist/api/TextTranslation.js +4 -0
  37. package/dist/api/TextTranslation.js.map +1 -0
  38. package/dist/api/TimelineTranslationAlignment.d.ts +23 -0
  39. package/dist/api/TimelineTranslationAlignment.js +92 -0
  40. package/dist/api/TimelineTranslationAlignment.js.map +1 -0
  41. package/dist/api/TranscriptAndTranslationAlignment.d.ts +35 -0
  42. package/dist/api/TranscriptAndTranslationAlignment.js +78 -0
  43. package/dist/api/TranscriptAndTranslationAlignment.js.map +1 -0
  44. package/dist/api/TranslationAlignment.d.ts +4 -3
  45. package/dist/api/TranslationAlignment.js +9 -8
  46. package/dist/api/TranslationAlignment.js.map +1 -1
  47. package/dist/api/VoiceActivityDetection.js +16 -1
  48. package/dist/api/VoiceActivityDetection.js.map +1 -1
  49. package/dist/cli/CLI.d.ts +27 -7
  50. package/dist/cli/CLI.js +205 -34
  51. package/dist/cli/CLI.js.map +1 -1
  52. package/dist/codecs/FFMpegTranscoder.js +7 -0
  53. package/dist/codecs/FFMpegTranscoder.js.map +1 -1
  54. package/dist/dsp/FFT.d.ts +1 -1
  55. package/dist/dsp/FFT.js +6 -0
  56. package/dist/dsp/FFT.js.map +1 -1
  57. package/dist/dsp/KWeightingFilter.js +1 -1
  58. package/dist/dsp/KWeightingFilter.js.map +1 -1
  59. package/dist/dsp/MelSpectogram.d.ts +3 -2
  60. package/dist/dsp/MelSpectogram.js +14 -8
  61. package/dist/dsp/MelSpectogram.js.map +1 -1
  62. package/dist/math/VectorMath.d.ts +22 -20
  63. package/dist/math/VectorMath.js +57 -30
  64. package/dist/math/VectorMath.js.map +1 -1
  65. package/dist/recognition/WhisperCppSTT.d.ts +1 -1
  66. package/dist/recognition/WhisperCppSTT.js +2 -2
  67. package/dist/recognition/WhisperCppSTT.js.map +1 -1
  68. package/dist/recognition/WhisperSTT.js +9 -6
  69. package/dist/recognition/WhisperSTT.js.map +1 -1
  70. package/dist/server/Client.d.ts +3 -2
  71. package/dist/server/Client.js.map +1 -1
  72. package/dist/server/Worker.d.ts +3 -2
  73. package/dist/server/Worker.js +3 -2
  74. package/dist/server/Worker.js.map +1 -1
  75. package/dist/source-separation/MDXNetSourceSeparation.js +1 -1
  76. package/dist/source-separation/MDXNetSourceSeparation.js.map +1 -1
  77. package/dist/speech-embeddings/WavToVec2BertFeatureEmbeddings.d.ts +13 -0
  78. package/dist/speech-embeddings/WavToVec2BertFeatureEmbeddings.js +68 -0
  79. package/dist/speech-embeddings/WavToVec2BertFeatureEmbeddings.js.map +1 -0
  80. package/dist/speech-language-detection/SileroLanguageDetection.d.ts +1 -1
  81. package/dist/speech-language-detection/SileroLanguageDetection.js +1 -1
  82. package/dist/speech-language-detection/SileroLanguageDetection.js.map +1 -1
  83. package/dist/synthesis/EspeakTTS.js +4 -5
  84. package/dist/synthesis/EspeakTTS.js.map +1 -1
  85. package/dist/tests/Test.js +0 -8
  86. package/dist/tests/Test.js.map +1 -1
  87. package/dist/text-language-detection/FastTextLanguageDetection.d.ts +1 -1
  88. package/dist/text-language-detection/FastTextLanguageDetection.js.map +1 -1
  89. package/dist/text-language-detection/TinyLDLanguageDetection.d.ts +1 -1
  90. package/dist/text-language-detection/TinyLDLanguageDetection.js.map +1 -1
  91. package/dist/text-translation/NLLBTextTranslation.js +1 -1
  92. package/dist/text-translation/NLLBTextTranslation.js.map +1 -1
  93. package/dist/utilities/Locale.d.ts +1 -1
  94. package/dist/utilities/Locale.js +1 -1
  95. package/dist/utilities/OnnxUtilities.d.ts +1 -1
  96. package/dist/utilities/PackageManager.js +8 -2
  97. package/dist/utilities/PackageManager.js.map +1 -1
  98. package/dist/utilities/Timeline.d.ts +1 -0
  99. package/dist/utilities/Timeline.js +12 -0
  100. package/dist/utilities/Timeline.js.map +1 -1
  101. package/docs/API.md +81 -3
  102. package/docs/CLI.md +51 -1
  103. package/docs/Engines.md +24 -0
  104. package/docs/Options.md +33 -1
  105. package/docs/Tasklist.md +4 -1
  106. package/package.json +11 -11
  107. package/src/alignment/DTWMfccSequenceAlignment.ts +11 -5
  108. package/src/alignment/DTWSequenceAlignmentWindowed.ts +4 -4
  109. package/src/alignment/SemanticTextAlignment.ts +467 -0
  110. package/src/alignment/SpeechAlignment.ts +180 -53
  111. package/src/api/API.ts +18 -2
  112. package/src/api/APIOptions.ts +14 -1
  113. package/src/api/Alignment.ts +32 -10
  114. package/src/api/LanguageDetectionCommon.ts +7 -0
  115. package/src/api/Recognition.ts +2 -0
  116. package/src/api/{LanguageDetection.ts → SpeechLanguageDetection.ts} +1 -119
  117. package/src/api/{Translation.ts → SpeechTranslation.ts} +2 -2
  118. package/src/api/Synthesis.ts +4 -4
  119. package/src/api/TextLanguageDetection.ts +116 -0
  120. package/src/api/TextTranslation.ts +9 -0
  121. package/src/api/TimelineTranslationAlignment.ts +162 -0
  122. package/src/api/TranscriptAndTranslationAlignment.ts +164 -0
  123. package/src/api/TranslationAlignment.ts +12 -10
  124. package/src/api/VoiceActivityDetection.ts +24 -3
  125. package/src/cli/CLI.ts +276 -34
  126. package/src/codecs/FFMpegTranscoder.ts +6 -0
  127. package/src/dsp/FFT.ts +8 -2
  128. package/src/dsp/KWeightingFilter.ts +1 -1
  129. package/src/dsp/MelSpectogram.ts +17 -8
  130. package/src/math/VectorMath.ts +87 -52
  131. package/src/recognition/WhisperCppSTT.ts +2 -2
  132. package/src/recognition/WhisperSTT.ts +10 -6
  133. package/src/server/Client.ts +3 -2
  134. package/src/server/Worker.ts +3 -2
  135. package/src/source-separation/MDXNetSourceSeparation.ts +1 -1
  136. package/src/speech-embeddings/WavToVec2BertFeatureEmbeddings.ts +107 -0
  137. package/src/speech-language-detection/SileroLanguageDetection.ts +2 -1
  138. package/src/synthesis/EspeakTTS.ts +6 -8
  139. package/src/tests/Test.ts +1 -12
  140. package/src/text-language-detection/FastTextLanguageDetection.ts +1 -1
  141. package/src/text-language-detection/TinyLDLanguageDetection.ts +1 -1
  142. package/src/text-translation/NLLBTextTranslation.ts +1 -1
  143. package/src/utilities/Locale.ts +1 -1
  144. package/src/utilities/OnnxUtilities.ts +1 -1
  145. package/src/utilities/PackageManager.ts +9 -2
  146. package/src/utilities/Timeline.ts +14 -0
  147. package/dist/alignment/TextAlignment.js +0 -63
  148. package/dist/alignment/TextAlignment.js.map +0 -1
  149. package/dist/api/LanguageDetection.js.map +0 -1
  150. package/dist/api/Translation.js.map +0 -1
  151. package/src/alignment/TextAlignment.ts +0 -96
  152. /package/dist/api/{Translation.d.ts → SpeechTranslation.d.ts} +0 -0
@@ -0,0 +1,92 @@
1
+ import chalk from 'chalk';
2
+ import { ensureRawAudio } from '../audio/AudioUtilities.js';
3
+ import { formatLanguageCodeWithName, getShortLanguageCode, parseLangIdentifier } from '../utilities/Locale.js';
4
+ import { Logger } from '../utilities/Logger.js';
5
+ import { extendDeep } from '../utilities/ObjectUtilities.js';
6
+ import { addWordTextOffsetsToTimeline, wordTimelineToSegmentSentenceTimeline } from '../utilities/Timeline.js';
7
+ import * as API from './API.js';
8
+ export async function alignTimelineTranslation(inputTimeline, translatedTranscript, options) {
9
+ const logger = new Logger();
10
+ const startTimestamp = logger.getTimestamp();
11
+ options = extendDeep(defaultTimelineTranslationAlignmentOptions, options);
12
+ let rawAudio;
13
+ if (options.audio) {
14
+ rawAudio = await ensureRawAudio(options.audio);
15
+ }
16
+ let sourceLanguage = options.sourceLanguage;
17
+ if (options.sourceLanguage) {
18
+ const languageData = await parseLangIdentifier(options.sourceLanguage);
19
+ sourceLanguage = languageData.Name;
20
+ logger.end();
21
+ logger.logTitledMessage('Source language specified', formatLanguageCodeWithName(sourceLanguage));
22
+ }
23
+ else {
24
+ logger.start('No source language specified. Detect source language');
25
+ const timelineText = inputTimeline.map(entry => entry.text).join(' ');
26
+ const { detectedLanguage } = await API.detectTextLanguage(timelineText, options.languageDetection || {});
27
+ sourceLanguage = detectedLanguage;
28
+ logger.end();
29
+ logger.logTitledMessage('Source language detected', formatLanguageCodeWithName(detectedLanguage));
30
+ }
31
+ let targetLanguage;
32
+ if (options.targetLanguage) {
33
+ const languageData = await parseLangIdentifier(options.targetLanguage);
34
+ targetLanguage = languageData.Name;
35
+ logger.end();
36
+ logger.logTitledMessage('Target language specified', formatLanguageCodeWithName(targetLanguage));
37
+ }
38
+ else {
39
+ logger.start('No target language specified. Detect target language');
40
+ const { detectedLanguage } = await API.detectTextLanguage(translatedTranscript, options.languageDetection || {});
41
+ targetLanguage = detectedLanguage;
42
+ logger.end();
43
+ logger.logTitledMessage('Target language detected', formatLanguageCodeWithName(detectedLanguage));
44
+ }
45
+ logger.log(`Load ${options.engine} module`);
46
+ let mappedWordTimeline;
47
+ switch (options.engine) {
48
+ case 'e5': {
49
+ const { alignTimelineToTextSemantically, e5SupportedLanguages } = await import('../alignment/SemanticTextAlignment.js');
50
+ const shortSourceLanguageCode = getShortLanguageCode(sourceLanguage);
51
+ if (!e5SupportedLanguages.includes(shortSourceLanguageCode)) {
52
+ throw new Error(`Source language ${formatLanguageCodeWithName(sourceLanguage)} is not supported by the E5 embedding model.`);
53
+ }
54
+ const shortTargetLanguageCode = getShortLanguageCode(targetLanguage);
55
+ if (!e5SupportedLanguages.includes(shortTargetLanguageCode)) {
56
+ throw new Error(`Target language ${formatLanguageCodeWithName(targetLanguage)} is not supported by the E5 embedding model.`);
57
+ }
58
+ logger.end();
59
+ mappedWordTimeline = await alignTimelineToTextSemantically(inputTimeline, translatedTranscript, targetLanguage);
60
+ break;
61
+ }
62
+ default: {
63
+ throw new Error(`Unsupported engine: ${options.engine}`);
64
+ }
65
+ }
66
+ logger.start(`Postprocess timeline`);
67
+ addWordTextOffsetsToTimeline(mappedWordTimeline, translatedTranscript);
68
+ const { segmentTimeline: mappedTimeline } = await wordTimelineToSegmentSentenceTimeline(mappedWordTimeline, translatedTranscript, targetLanguage);
69
+ logger.end();
70
+ logger.logDuration(`Total timeline translation alignment time`, startTimestamp, chalk.magentaBright);
71
+ logger.end();
72
+ return {
73
+ timeline: mappedTimeline,
74
+ wordTimeline: mappedWordTimeline,
75
+ sourceLanguage,
76
+ targetLanguage,
77
+ rawAudio,
78
+ };
79
+ }
80
+ // Constants
81
+ const defaultTimelineTranslationAlignmentOptions = {
82
+ engine: 'e5',
83
+ sourceLanguage: undefined,
84
+ targetLanguage: undefined,
85
+ audio: undefined,
86
+ languageDetection: undefined,
87
+ subtitles: undefined,
88
+ e5: {
89
+ model: 'small-fp16',
90
+ }
91
+ };
92
+ //# sourceMappingURL=TimelineTranslationAlignment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelineTranslationAlignment.js","sourceRoot":"","sources":["../../src/api/TimelineTranslationAlignment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { AudioSourceParam, RawAudio } from '../audio/AudioUtilities.js';
2
+ import * as API from './API.js';
3
+ import { Timeline } from '../utilities/Timeline.js';
4
+ import { type SubtitlesConfig } from '../subtitles/Subtitles.js';
5
+ export declare function alignTranscriptAndTranslation(input: AudioSourceParam, transcript: string, translatedTranscript: string, options: TranscriptAndTranslationAlignmentOptions): Promise<TranscriptAndTranslationAlignmentResult>;
6
+ export interface TranscriptAndTranslationAlignmentResult {
7
+ timeline: Timeline;
8
+ wordTimeline: Timeline;
9
+ translatedTimeline: Timeline;
10
+ translatedWordTimeline: Timeline;
11
+ transcript: string;
12
+ translatedTranscript: string;
13
+ sourceLanguage: string;
14
+ targetLanguage: string;
15
+ inputRawAudio: RawAudio;
16
+ isolatedRawAudio?: RawAudio;
17
+ backgroundRawAudio?: RawAudio;
18
+ }
19
+ export type TranscriptAndTranslationAlignmentEngine = 'two-stage';
20
+ export interface TranscriptAndTranslationAlignmentOptions {
21
+ engine?: TranscriptAndTranslationAlignmentEngine;
22
+ sourceLanguage?: string;
23
+ targetLanguage?: string;
24
+ isolate?: boolean;
25
+ crop?: boolean;
26
+ alignment?: API.AlignmentOptions;
27
+ timelineAlignment?: API.TimelineTranslationAlignmentOptions;
28
+ languageDetection?: API.TextLanguageDetectionOptions;
29
+ vad?: API.VADOptions;
30
+ plainText?: API.PlainTextOptions;
31
+ subtitles?: SubtitlesConfig;
32
+ sourceSeparation?: API.SourceSeparationOptions;
33
+ }
34
+ export declare const defaultTranscriptAndTranslationAlignmentOptions: TranscriptAndTranslationAlignmentOptions;
35
+ export declare const TranscriptAndTranslationAlignmentEngines: API.EngineMetadata[];
@@ -0,0 +1,78 @@
1
+ import { extendDeep } from '../utilities/ObjectUtilities.js';
2
+ import { logToStderr } from '../utilities/Utilities.js';
3
+ import { Logger } from '../utilities/Logger.js';
4
+ import * as API from './API.js';
5
+ import chalk from 'chalk';
6
+ const log = logToStderr;
7
+ export async function alignTranscriptAndTranslation(input, transcript, translatedTranscript, options) {
8
+ const logger = new Logger();
9
+ const startTimestamp = logger.getTimestamp();
10
+ options = extendDeep(defaultTranscriptAndTranslationAlignmentOptions, options);
11
+ if (options.sourceLanguage && !options.alignment?.language) {
12
+ options.alignment = extendDeep(options.alignment || {}, { language: options.sourceLanguage });
13
+ }
14
+ if (options.targetLanguage && !options.timelineAlignment?.targetLanguage) {
15
+ options.timelineAlignment = extendDeep(options.timelineAlignment || {}, { targetLanguage: options.targetLanguage });
16
+ }
17
+ let alignmentResult;
18
+ let timelineAlignmentResult;
19
+ switch (options.engine) {
20
+ case 'two-stage': {
21
+ logger.logTitledMessage(`Start stage 1`, `Align speech to transcript`, chalk.magentaBright);
22
+ logger.end();
23
+ alignmentResult = await API.align(input, transcript, options.alignment || {});
24
+ logger.log(``);
25
+ logger.logTitledMessage(`Start stage 2`, `Align timeline to translated transcript`, chalk.magentaBright);
26
+ logger.end();
27
+ timelineAlignmentResult = await API.alignTimelineTranslation(alignmentResult.timeline, translatedTranscript, options.timelineAlignment || {});
28
+ break;
29
+ }
30
+ default: {
31
+ throw new Error(`Engine '${options.engine}' is not supported`);
32
+ }
33
+ }
34
+ logger.end();
35
+ logger.log(``);
36
+ logger.logDuration(`Total transcript and translation alignment time`, startTimestamp, chalk.magentaBright);
37
+ return {
38
+ timeline: alignmentResult.timeline,
39
+ wordTimeline: alignmentResult.wordTimeline,
40
+ translatedTimeline: timelineAlignmentResult.timeline,
41
+ translatedWordTimeline: timelineAlignmentResult.wordTimeline,
42
+ transcript,
43
+ translatedTranscript,
44
+ sourceLanguage: alignmentResult.language,
45
+ targetLanguage: timelineAlignmentResult.targetLanguage,
46
+ inputRawAudio: alignmentResult.inputRawAudio,
47
+ isolatedRawAudio: alignmentResult.isolatedRawAudio,
48
+ backgroundRawAudio: alignmentResult.backgroundRawAudio,
49
+ };
50
+ }
51
+ export const defaultTranscriptAndTranslationAlignmentOptions = {
52
+ engine: 'two-stage',
53
+ sourceLanguage: undefined,
54
+ targetLanguage: undefined,
55
+ isolate: false,
56
+ crop: true,
57
+ alignment: {},
58
+ timelineAlignment: {},
59
+ languageDetection: {},
60
+ plainText: {
61
+ paragraphBreaks: 'double',
62
+ whitespace: 'collapse'
63
+ },
64
+ subtitles: {},
65
+ vad: {
66
+ engine: 'adaptive-gate'
67
+ },
68
+ sourceSeparation: {},
69
+ };
70
+ export const TranscriptAndTranslationAlignmentEngines = [
71
+ {
72
+ id: 'two-stage',
73
+ name: 'Two-stage translation alignment',
74
+ description: 'Applies two-stage translation alignment to the spoken audio. First stage aligns the speech to the native language transcript. Second stage aligns the resulting timeline with the translated transcript.',
75
+ type: 'local'
76
+ }
77
+ ];
78
+ //# sourceMappingURL=TranscriptAndTranslationAlignment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TranscriptAndTranslationAlignment.js","sourceRoot":"","sources":["../../src/api/TranscriptAndTranslationAlignment.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,13 @@ import * as API from './API.js';
3
3
  import { Timeline } from '../utilities/Timeline.js';
4
4
  import { type WhisperAlignmentOptions } from '../recognition/WhisperSTT.js';
5
5
  import { type SubtitlesConfig } from '../subtitles/Subtitles.js';
6
- export declare function alignTranslation(input: AudioSourceParam, transcript: string, options: TranslationAlignmentOptions): Promise<TranslationAlignmentResult>;
6
+ export declare function alignTranslation(input: AudioSourceParam, translatedTranscript: string, options: TranslationAlignmentOptions): Promise<TranslationAlignmentResult>;
7
7
  export interface TranslationAlignmentResult {
8
8
  timeline: Timeline;
9
9
  wordTimeline: Timeline;
10
- transcript: string;
11
- language: string;
10
+ translatedTranscript: string;
11
+ sourceLanguage: string;
12
+ targetLanguage: string;
12
13
  inputRawAudio: RawAudio;
13
14
  isolatedRawAudio?: RawAudio;
14
15
  backgroundRawAudio?: RawAudio;
@@ -4,10 +4,10 @@ import { ensureRawAudio, normalizeAudioLevel, trimAudioEnd } from '../audio/Audi
4
4
  import { Logger } from '../utilities/Logger.js';
5
5
  import * as API from './API.js';
6
6
  import { addWordTextOffsetsToTimeline, wordTimelineToSegmentSentenceTimeline } from '../utilities/Timeline.js';
7
- import { formatLanguageCodeWithName, getShortLanguageCode, normalizeIdentifierToLangaugeCode, parseLangIdentifier } from '../utilities/Locale.js';
7
+ import { formatLanguageCodeWithName, getShortLanguageCode, normalizeIdentifierToLanguageCode, parseLangIdentifier } from '../utilities/Locale.js';
8
8
  import chalk from 'chalk';
9
9
  const log = logToStderr;
10
- export async function alignTranslation(input, transcript, options) {
10
+ export async function alignTranslation(input, translatedTranscript, options) {
11
11
  const logger = new Logger();
12
12
  const startTimestamp = logger.getTimestamp();
13
13
  options = extendDeep(defaultTranslationAlignmentOptions, options);
@@ -52,7 +52,7 @@ export async function alignTranslation(input, transcript, options) {
52
52
  logger.end();
53
53
  logger.logTitledMessage('Source language detected', formatLanguageCodeWithName(detectedLanguage));
54
54
  }
55
- const targetLanguage = await normalizeIdentifierToLangaugeCode(options.targetLanguage);
55
+ const targetLanguage = await normalizeIdentifierToLanguageCode(options.targetLanguage);
56
56
  logger.logTitledMessage('Target language', formatLanguageCodeWithName(targetLanguage));
57
57
  let mappedTimeline;
58
58
  switch (options.engine) {
@@ -72,7 +72,7 @@ export async function alignTranslation(input, transcript, options) {
72
72
  if (modelName.endsWith('.en')) {
73
73
  throw new Error('Whisper translation tasks are only possible with a multilingual model');
74
74
  }
75
- mappedTimeline = await WhisperSTT.alignEnglishTranslation(sourceRawAudio, transcript, modelName, modelDir, shortSourceLanguageCode, whisperAlignmnentOptions);
75
+ mappedTimeline = await WhisperSTT.alignEnglishTranslation(sourceRawAudio, translatedTranscript, modelName, modelDir, shortSourceLanguageCode, whisperAlignmnentOptions);
76
76
  break;
77
77
  }
78
78
  default: {
@@ -84,16 +84,17 @@ export async function alignTranslation(input, transcript, options) {
84
84
  API.convertCroppedToUncroppedTimeline(mappedTimeline, sourceUncropTimeline);
85
85
  }
86
86
  // Add text offsets
87
- addWordTextOffsetsToTimeline(mappedTimeline, transcript);
87
+ addWordTextOffsetsToTimeline(mappedTimeline, translatedTranscript);
88
88
  // Make segment timeline
89
- const { segmentTimeline } = await wordTimelineToSegmentSentenceTimeline(mappedTimeline, transcript, sourceLanguage, options.plainText?.paragraphBreaks, options.plainText?.whitespace);
89
+ const { segmentTimeline } = await wordTimelineToSegmentSentenceTimeline(mappedTimeline, translatedTranscript, sourceLanguage, options.plainText?.paragraphBreaks, options.plainText?.whitespace);
90
90
  logger.end();
91
91
  logger.logDuration(`Total translation alignment time`, startTimestamp, chalk.magentaBright);
92
92
  return {
93
93
  timeline: segmentTimeline,
94
94
  wordTimeline: mappedTimeline,
95
- transcript,
96
- language: sourceLanguage,
95
+ translatedTranscript,
96
+ sourceLanguage,
97
+ targetLanguage,
97
98
  inputRawAudio,
98
99
  isolatedRawAudio,
99
100
  backgroundRawAudio,
@@ -1 +1 @@
1
- {"version":3,"file":"TranslationAlignment.js","sourceRoot":"","sources":["../../src/api/TranslationAlignment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TranslationAlignment.js","sourceRoot":"","sources":["../../src/api/TranslationAlignment.ts"],"names":[],"mappings":"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"}
@@ -138,6 +138,12 @@ export function convertCroppedToUncroppedTimeline(timeline, uncropTimeline) {
138
138
  }
139
139
  }
140
140
  function mapUsingUncropTimeline(startTimeInCroppedAudio, endTimeInCroppedAudio, uncropTimeline) {
141
+ if (uncropTimeline.length === 0) {
142
+ return {
143
+ mappedStartTime: 0,
144
+ mappedEndTime: 0,
145
+ };
146
+ }
141
147
  let offsetInCroppedAudio = 0;
142
148
  if (endTimeInCroppedAudio < startTimeInCroppedAudio) {
143
149
  endTimeInCroppedAudio = startTimeInCroppedAudio;
@@ -158,7 +164,16 @@ function mapUsingUncropTimeline(startTimeInCroppedAudio, endTimeInCroppedAudio,
158
164
  offsetInCroppedAudio += uncropEntryDuration;
159
165
  }
160
166
  if (bestOverlapDuration === -1) {
161
- throw new Error(`No match found in uncrop timeline (should not occur)`);
167
+ if (startTimeInCroppedAudio >= offsetInCroppedAudio) {
168
+ const maxTimestamp = uncropTimeline[uncropTimeline.length - 1].endTime;
169
+ return {
170
+ mappedStartTime: maxTimestamp,
171
+ mappedEndTime: maxTimestamp
172
+ };
173
+ }
174
+ else {
175
+ throw new Error(`Given start time ${startTimeInCroppedAudio} was smaller than audio duration but no match was found in uncrop timeline (should not occur)`);
176
+ }
162
177
  }
163
178
  return {
164
179
  mappedStartTime,
@@ -1 +1 @@
1
- {"version":3,"file":"VoiceActivityDetection.js","sourceRoot":"","sources":["../../src/api/VoiceActivityDetection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VoiceActivityDetection.js","sourceRoot":"","sources":["../../src/api/VoiceActivityDetection.ts"],"names":[],"mappings":"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"}
package/dist/cli/CLI.d.ts CHANGED
@@ -1,8 +1,28 @@
1
- import { RawAudio } from '../audio/AudioUtilities.js';
2
- import { Timeline } from '../utilities/Timeline.js';
1
+ import * as API from '../api/API.js';
2
+ import { CLIOptions } from './CLIOptions.js';
3
+ type CLIOperationData = {
4
+ operation: string;
5
+ operationArgs: string[];
6
+ globalOptions: API.GlobalOptions;
7
+ cliOptions: CLIOptions;
8
+ operationOptionsLookup: Map<string, string>;
9
+ };
3
10
  export declare function start(processArgs: string[]): Promise<void>;
4
- export declare function getOptionsSchema(): Promise<any>;
5
- export declare function checkOutputFilenames(outputFilenames: string[], acceptMediaOutputs: boolean, acceptMetadataOutputs: boolean, acceptSubtitleOutputs: boolean): Promise<{
6
- includesPlaceholderPattern: boolean;
7
- }>;
8
- export declare function writeOutputFilesForSegment(outputFilenames: string[], index: number, total: number, audio: RawAudio, timeline: Timeline, text: string, language: string, allowOverwrite: boolean): Promise<void>;
11
+ export declare function speak(operationData: CLIOperationData): Promise<void>;
12
+ export declare function transcribe(operationData: CLIOperationData): Promise<void>;
13
+ export declare function align(operationData: CLIOperationData): Promise<void>;
14
+ export declare function alignTranslation(operationData: CLIOperationData): Promise<void>;
15
+ export declare function alignTranscriptAndTranslation(operationData: CLIOperationData): Promise<void>;
16
+ export declare function alignTimelineTranslation(operationData: CLIOperationData): Promise<void>;
17
+ export declare function translateSpeech(operationData: CLIOperationData): Promise<void>;
18
+ export declare function detectLanguage(operationData: CLIOperationData, mode: 'speech' | 'text' | 'auto'): Promise<void>;
19
+ export declare function detectVoiceActivity(operationData: CLIOperationData): Promise<void>;
20
+ export declare function denoise(operationData: CLIOperationData): Promise<void>;
21
+ export declare function isolate(operationData: CLIOperationData): Promise<void>;
22
+ export declare function listEngines(operationData: CLIOperationData): Promise<void>;
23
+ export declare function listTTSVoices(operationData: CLIOperationData): Promise<void>;
24
+ export declare function installPackages(operationData: CLIOperationData): Promise<void>;
25
+ export declare function uninstallPackages(operationData: CLIOperationData): Promise<void>;
26
+ export declare function listPackages(operationData: CLIOperationData): Promise<void>;
27
+ export declare function serve(operationData: CLIOperationData): Promise<void>;
28
+ export {};