echogarden 1.7.0 → 1.8.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 (54) hide show
  1. package/data/schemas/options.json +22 -10
  2. package/dist/api/Alignment.js +2 -2
  3. package/dist/api/Alignment.js.map +1 -1
  4. package/dist/api/Denoising.js +5 -4
  5. package/dist/api/Denoising.js.map +1 -1
  6. package/dist/api/Recognition.js +2 -2
  7. package/dist/api/Recognition.js.map +1 -1
  8. package/dist/api/SourceSeparation.d.ts +2 -6
  9. package/dist/api/SourceSeparation.js +8 -9
  10. package/dist/api/SourceSeparation.js.map +1 -1
  11. package/dist/api/SpeechLanguageDetection.js +2 -2
  12. package/dist/api/SpeechLanguageDetection.js.map +1 -1
  13. package/dist/api/SpeechTranslation.js +2 -2
  14. package/dist/api/SpeechTranslation.js.map +1 -1
  15. package/dist/api/Synthesis.js +5 -5
  16. package/dist/api/Synthesis.js.map +1 -1
  17. package/dist/api/TranslationAlignment.js +2 -2
  18. package/dist/api/TranslationAlignment.js.map +1 -1
  19. package/dist/audio/AudioUtilities.d.ts +5 -3
  20. package/dist/audio/AudioUtilities.js +39 -25
  21. package/dist/audio/AudioUtilities.js.map +1 -1
  22. package/dist/dsp/FFT.d.ts +2 -1
  23. package/dist/dsp/FFT.js +37 -18
  24. package/dist/dsp/FFT.js.map +1 -1
  25. package/dist/nlp/IPA.d.ts +3 -3
  26. package/dist/recognition/WhisperSTT.d.ts +3 -0
  27. package/dist/recognition/WhisperSTT.js +12 -5
  28. package/dist/recognition/WhisperSTT.js.map +1 -1
  29. package/dist/source-separation/MDXNetSourceSeparation.d.ts +8 -3
  30. package/dist/source-separation/MDXNetSourceSeparation.js +35 -13
  31. package/dist/source-separation/MDXNetSourceSeparation.js.map +1 -1
  32. package/dist/utilities/PackageManager.js +3 -6
  33. package/dist/utilities/PackageManager.js.map +1 -1
  34. package/dist/utilities/WasmMemoryManager.d.ts +9 -1
  35. package/dist/utilities/WasmMemoryManager.js +24 -3
  36. package/dist/utilities/WasmMemoryManager.js.map +1 -1
  37. package/docs/Options.md +9 -9
  38. package/package.json +6 -5
  39. package/src/alignment/SpeechAlignment.ts +1 -1
  40. package/src/api/Alignment.ts +2 -2
  41. package/src/api/Denoising.ts +5 -4
  42. package/src/api/Recognition.ts +3 -3
  43. package/src/api/SourceSeparation.ts +12 -16
  44. package/src/api/SpeechLanguageDetection.ts +2 -2
  45. package/src/api/SpeechTranslation.ts +2 -2
  46. package/src/api/Synthesis.ts +5 -5
  47. package/src/api/TranslationAlignment.ts +2 -2
  48. package/src/audio/AudioUtilities.ts +53 -33
  49. package/src/dsp/FFT.ts +45 -19
  50. package/src/recognition/WhisperSTT.ts +18 -6
  51. package/src/source-separation/MDXNetSourceSeparation.ts +44 -12
  52. package/src/typings/Fillers.d.ts +2 -0
  53. package/src/utilities/PackageManager.ts +3 -7
  54. package/src/utilities/WasmMemoryManager.ts +38 -4
@@ -1 +1 @@
1
- {"version":3,"file":"Synthesis.js","sourceRoot":"","sources":["../../src/api/Synthesis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Synthesis.js","sourceRoot":"","sources":["../../src/api/Synthesis.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { extendDeep } from '../utilities/ObjectUtilities.js';
2
2
  import { logToStderr } from '../utilities/Utilities.js';
3
- import { ensureRawAudio, normalizeAudioLevel, trimAudioEnd } from '../audio/AudioUtilities.js';
3
+ import { ensureRawAudio, normalizeAudioLevelInPlace, trimAudioEnd } from '../audio/AudioUtilities.js';
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';
@@ -35,7 +35,7 @@ export async function alignTranslation(input, translatedTranscript, options) {
35
35
  logger.end();
36
36
  }
37
37
  logger.start('Normalize and trim audio');
38
- sourceRawAudio = normalizeAudioLevel(sourceRawAudio);
38
+ normalizeAudioLevelInPlace(sourceRawAudio);
39
39
  sourceRawAudio.audioChannels[0] = trimAudioEnd(sourceRawAudio.audioChannels[0]);
40
40
  logger.end();
41
41
  let sourceLanguage;
@@ -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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"}
@@ -15,11 +15,13 @@ export declare function trimAudioEnd(audioSamples: Float32Array, targetEndSilent
15
15
  export declare function getStartingSilentSampleCount(audioSamples: Float32Array, amplitudeThresholdDecibels?: number): number;
16
16
  export declare function getEndingSilentSampleCount(audioSamples: Float32Array, amplitudeThresholdDecibels?: number): number;
17
17
  export declare function downmixToMonoAndNormalize(rawAudio: RawAudio, targetPeakDecibels?: number): RawAudio;
18
- export declare function attenuateIfClipping(rawAudio: RawAudio): RawAudio;
18
+ export declare function attenuateIfClippingInPlace(rawAudio: RawAudio, clippingThreshold?: number): void;
19
19
  export declare function normalizeAudioLevel(rawAudio: RawAudio, targetPeakDecibels?: number, maxGainIncreaseDecibels?: number): RawAudio;
20
- export declare function correctDCBias(rawAudio: RawAudio): RawAudio;
20
+ export declare function normalizeAudioLevelInPlace(rawAudio: RawAudio, targetPeakDecibels?: number, maxGainIncreaseDecibels?: number): void;
21
+ export declare function correctDCBiasInPlace(rawAudio: RawAudio): void;
21
22
  export declare function applyGainDecibels(rawAudio: RawAudio, gainDecibels: number): RawAudio;
22
- export declare function applyGainFactor(rawAudio: RawAudio, gainFactor: number): RawAudio;
23
+ export declare function applyGainDecibelsInPlace(rawAudio: RawAudio, gainDecibels: number): void;
24
+ export declare function applyGainFactorInPlace(rawAudio: RawAudio, gainFactor: number): void;
23
25
  export declare function downmixToMono(rawAudio: RawAudio): RawAudio;
24
26
  export declare function getSamplePeakDecibels(audioChannels: Float32Array[]): number;
25
27
  export declare function getSamplePeakAmplitude(audioChannels: Float32Array[]): number;
@@ -33,9 +33,10 @@ export function trimAudioEnd(audioSamples, targetEndSilentSampleCount = 0, ampli
33
33
  return trimmedAudioSamples;
34
34
  }
35
35
  export function getStartingSilentSampleCount(audioSamples, amplitudeThresholdDecibels = defaultSilenceThresholdDecibels) {
36
+ const sampleCount = audioSamples.length;
36
37
  const minSampleAmplitude = decibelsToGainFactor(amplitudeThresholdDecibels);
37
38
  let silentSampleCount = 0;
38
- for (let i = 0; i < audioSamples.length - 1; i++) {
39
+ for (let i = 0; i < sampleCount - 1; i++) {
39
40
  if (Math.abs(audioSamples[i]) > minSampleAmplitude) {
40
41
  break;
41
42
  }
@@ -44,9 +45,10 @@ export function getStartingSilentSampleCount(audioSamples, amplitudeThresholdDec
44
45
  return silentSampleCount;
45
46
  }
46
47
  export function getEndingSilentSampleCount(audioSamples, amplitudeThresholdDecibels = defaultSilenceThresholdDecibels) {
48
+ const sampleCount = audioSamples.length;
47
49
  const minSampleAmplitude = decibelsToGainFactor(amplitudeThresholdDecibels);
48
50
  let silentSampleCount = 0;
49
- for (let i = audioSamples.length - 1; i >= 0; i--) {
51
+ for (let i = sampleCount - 1; i >= 0; i--) {
50
52
  if (Math.abs(audioSamples[i]) > minSampleAmplitude) {
51
53
  break;
52
54
  }
@@ -58,21 +60,27 @@ export function getEndingSilentSampleCount(audioSamples, amplitudeThresholdDecib
58
60
  // Gain, normalization, mixing, and channel downmixing
59
61
  ////////////////////////////////////////////////////////////////////////////////////////////////
60
62
  export function downmixToMonoAndNormalize(rawAudio, targetPeakDecibels = -3) {
61
- return normalizeAudioLevel(downmixToMono(rawAudio), targetPeakDecibels);
63
+ const downmixedAudio = downmixToMono(rawAudio);
64
+ normalizeAudioLevelInPlace(downmixedAudio, targetPeakDecibels);
65
+ return downmixedAudio;
62
66
  }
63
- export function attenuateIfClipping(rawAudio) {
64
- return normalizeAudioLevel(rawAudio, -0.1, 0);
67
+ export function attenuateIfClippingInPlace(rawAudio, clippingThreshold = -0.1) {
68
+ normalizeAudioLevelInPlace(rawAudio, clippingThreshold, 0);
65
69
  }
66
70
  export function normalizeAudioLevel(rawAudio, targetPeakDecibels = -3, maxGainIncreaseDecibels = 30) {
67
- //rawAudio = correctDCBias(rawAudio)
71
+ const clonedRawAudio = cloneRawAudio(rawAudio);
72
+ normalizeAudioLevelInPlace(clonedRawAudio, targetPeakDecibels, maxGainIncreaseDecibels);
73
+ return clonedRawAudio;
74
+ }
75
+ export function normalizeAudioLevelInPlace(rawAudio, targetPeakDecibels = -3, maxGainIncreaseDecibels = 30) {
76
+ //correctDCBiasInPlace(rawAudio)
68
77
  const targetPeakAmplitude = decibelsToGainFactor(targetPeakDecibels);
69
78
  const maxGainFactor = decibelsToGainFactor(maxGainIncreaseDecibels);
70
79
  const peakAmplitude = getSamplePeakAmplitude(rawAudio.audioChannels);
71
80
  const gainFactor = Math.min(targetPeakAmplitude / peakAmplitude, maxGainFactor);
72
- return applyGainFactor(rawAudio, gainFactor);
81
+ applyGainFactorInPlace(rawAudio, gainFactor);
73
82
  }
74
- export function correctDCBias(rawAudio) {
75
- const outputAudioChannels = [];
83
+ export function correctDCBiasInPlace(rawAudio) {
76
84
  for (const channelSamples of rawAudio.audioChannels) {
77
85
  const sampleCount = channelSamples.length;
78
86
  let sampleSum = 0;
@@ -80,28 +88,29 @@ export function correctDCBias(rawAudio) {
80
88
  sampleSum += channelSamples[i];
81
89
  }
82
90
  const sampleAverage = sampleSum / sampleCount;
83
- const outputChannelSamples = new Float32Array(sampleCount);
84
91
  for (let i = 0; i < sampleCount; i++) {
85
- outputChannelSamples[i] = channelSamples[i] - sampleAverage;
92
+ channelSamples[i] -= sampleAverage;
86
93
  }
87
- outputAudioChannels.push(outputChannelSamples);
88
94
  }
89
- return { audioChannels: outputAudioChannels, sampleRate: rawAudio.sampleRate };
90
95
  }
91
96
  export function applyGainDecibels(rawAudio, gainDecibels) {
92
- return applyGainFactor(rawAudio, decibelsToGainFactor(gainDecibels));
97
+ const clonedRawAudio = cloneRawAudio(rawAudio);
98
+ applyGainDecibelsInPlace(clonedRawAudio, gainDecibels);
99
+ return clonedRawAudio;
100
+ }
101
+ export function applyGainDecibelsInPlace(rawAudio, gainDecibels) {
102
+ applyGainFactorInPlace(rawAudio, decibelsToGainFactor(gainDecibels));
93
103
  }
94
- export function applyGainFactor(rawAudio, gainFactor) {
95
- const outputAudioChannels = [];
104
+ export function applyGainFactorInPlace(rawAudio, gainFactor) {
105
+ if (gainFactor === 1.0) {
106
+ return;
107
+ }
96
108
  for (const channelSamples of rawAudio.audioChannels) {
97
109
  const sampleCount = channelSamples.length;
98
- const outputChannelSamples = new Float32Array(sampleCount);
99
110
  for (let i = 0; i < sampleCount; i++) {
100
- outputChannelSamples[i] = channelSamples[i] * gainFactor;
111
+ channelSamples[i] *= gainFactor;
101
112
  }
102
- outputAudioChannels.push(outputChannelSamples);
103
113
  }
104
- return { audioChannels: outputAudioChannels, sampleRate: rawAudio.sampleRate };
105
114
  }
106
115
  export function downmixToMono(rawAudio) {
107
116
  const channelCount = rawAudio.audioChannels.length;
@@ -128,8 +137,12 @@ export function getSamplePeakDecibels(audioChannels) {
128
137
  export function getSamplePeakAmplitude(audioChannels) {
129
138
  let maxAmplitude = 0.00001;
130
139
  for (const channelSamples of audioChannels) {
131
- for (const sample of channelSamples) {
132
- maxAmplitude = Math.max(maxAmplitude, Math.abs(sample));
140
+ const sampleCount = channelSamples.length;
141
+ for (let i = 0; i < sampleCount; i++) {
142
+ const sampleAbsValue = Math.abs(channelSamples[i]);
143
+ if (sampleAbsValue > maxAmplitude) {
144
+ maxAmplitude = sampleAbsValue;
145
+ }
133
146
  }
134
147
  }
135
148
  return maxAmplitude;
@@ -181,7 +194,7 @@ export function sliceAudioChannels(audioChannels, startSampleIndex, endSampleInd
181
194
  return outAudioChannels;
182
195
  }
183
196
  export function concatAudioSegments(audioSegments) {
184
- if (audioSegments.length == 0) {
197
+ if (audioSegments.length === 0) {
185
198
  return [];
186
199
  }
187
200
  const channelCount = audioSegments[0].length;
@@ -224,7 +237,8 @@ export function fadeAudioInOut(rawAudio, fadeTime) {
224
237
  const gainReductionPerFrameFactor = decibelsToGainFactor(gainReductionPerFrameDecibels);
225
238
  const outAudioChannels = rawAudio.audioChannels.map(channel => channel.slice());
226
239
  for (const channel of outAudioChannels) {
227
- if (channel.length < fadeSampleCount * 2) {
240
+ const sampleCount = channel.length;
241
+ if (sampleCount < fadeSampleCount * 2) {
228
242
  continue;
229
243
  }
230
244
  let factor = 1.0;
@@ -233,7 +247,7 @@ export function fadeAudioInOut(rawAudio, fadeTime) {
233
247
  factor *= gainReductionPerFrameFactor;
234
248
  }
235
249
  factor = 1.0;
236
- for (let i = channel.length - fadeSampleCount; i < channel.length; i++) {
250
+ for (let i = sampleCount - fadeSampleCount; i < sampleCount; i++) {
237
251
  channel[i] *= factor;
238
252
  factor *= gainReductionPerFrameFactor;
239
253
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AudioUtilities.js","sourceRoot":"","sources":["../../src/audio/AudioUtilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AudioUtilities.js","sourceRoot":"","sources":["../../src/audio/AudioUtilities.ts"],"names":[],"mappings":"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"}
package/dist/dsp/FFT.d.ts CHANGED
@@ -8,5 +8,6 @@ export declare function fftFrameToPowerSpectrum(fftFrame: Float32Array): Float32
8
8
  export declare function binBufferToComplex(bins: Float32Array, extendAndMirror?: boolean): ComplexNumber[];
9
9
  export declare function complexToBinBuffer(complexBins: ComplexNumber[]): Float32Array;
10
10
  export declare function getWindowWeights(windowType: WindowType, windowSize: number): Float32Array;
11
- export declare function getKissFFTInstance(): Promise<any>;
11
+ export declare function isPffftSimdSupportedForFFTOrder(fftOrder: number): boolean;
12
+ export declare function getPFFFTInstance(enableSimd: boolean): Promise<any>;
12
13
  export type WindowType = 'hann' | 'hamming' | 'povey';
package/dist/dsp/FFT.js CHANGED
@@ -1,6 +1,5 @@
1
1
  import { concatFloat32Arrays } from '../utilities/Utilities.js';
2
2
  import { WasmMemoryManager } from '../utilities/WasmMemoryManager.js';
3
- let kissFFTInstance;
4
3
  // Compute short-term Fourier transform (real-valued)
5
4
  export async function stftr(samples, fftOrder, windowSize, hopSize, windowType) {
6
5
  const frames = [];
@@ -24,13 +23,16 @@ export async function* stftrGenerator(samples, fftOrder, windowSize, hopSize, wi
24
23
  const padding = new Float32Array(halfWindowSize);
25
24
  samples = concatFloat32Arrays([padding, samples, padding]);
26
25
  const windowWeights = getWindowWeights(windowType, windowSize);
27
- const m = await getKissFFTInstance();
28
- const wasmMemory = new WasmMemoryManager(m);
29
- const statePtr = m._kiss_fftr_alloc(fftOrder, 0, 0, 0);
30
- wasmMemory.wrapPointer(statePtr);
26
+ const m = await getPFFFTInstance(isPffftSimdSupportedForFFTOrder(fftOrder));
27
+ const wasmMemory = new WasmMemoryManager(m, {
28
+ wasmAlloc: m._pffft_aligned_malloc,
29
+ wasmFree: m._pffft_aligned_free
30
+ });
31
+ const statePtr = m._pffft_new_setup(fftOrder, 0);
31
32
  const sampleCount = samples.length;
32
33
  const frameBufferRef = wasmMemory.allocFloat32Array(fftOrder);
33
34
  const binsBufferRef = wasmMemory.allocFloat32Array(fftOrder * 2);
35
+ const workBufferRef = wasmMemory.allocFloat32Array(fftOrder * 2);
34
36
  for (let offset = 0; offset < sampleCount; offset += hopSize) {
35
37
  const windowSamples = samples.subarray(offset, offset + windowSize);
36
38
  frameBufferRef.clear();
@@ -39,10 +41,11 @@ export async function* stftrGenerator(samples, fftOrder, windowSize, hopSize, wi
39
41
  frameBufferView[i] = windowSamples[i] * windowWeights[i];
40
42
  }
41
43
  binsBufferRef.clear();
42
- m._kiss_fftr(statePtr, frameBufferRef.address, binsBufferRef.address);
44
+ m._pffft_transform_ordered(statePtr, frameBufferRef.address, binsBufferRef.address, workBufferRef.address, 0);
43
45
  const bins = binsBufferRef.view.slice(0, fftOrder + 2);
44
46
  yield bins;
45
47
  }
48
+ m._pffft_destroy_setup(statePtr);
46
49
  wasmMemory.freeAll();
47
50
  }
48
51
  // Compute short-term inverse Fourier transform (real-valued)
@@ -64,19 +67,22 @@ export async function stiftr(binsForFrames, fftOrder, windowSize, hopSize, windo
64
67
  expectedOutputLength = outSampleCount;
65
68
  }
66
69
  const outSamples = new Float32Array(outSampleCount);
67
- const m = await getKissFFTInstance();
68
- const wasmMemory = new WasmMemoryManager(m);
69
- const statePtr = m._kiss_fftr_alloc(fftOrder, 1, 0, 0);
70
- wasmMemory.wrapPointer(statePtr);
70
+ const m = await getPFFFTInstance(isPffftSimdSupportedForFFTOrder(fftOrder));
71
+ const wasmMemory = new WasmMemoryManager(m, {
72
+ wasmAlloc: m._pffft_aligned_malloc,
73
+ wasmFree: m._pffft_aligned_free
74
+ });
75
+ const statePtr = m._pffft_new_setup(fftOrder, 0);
71
76
  const frameBufferRef = wasmMemory.allocFloat32Array(fftOrder);
72
77
  const binsRef = wasmMemory.allocFloat32Array(fftOrder * 2);
78
+ const workBufferRef = wasmMemory.allocFloat32Array(fftOrder * 2);
73
79
  const sumOfSquaredWeightsForSample = new Float32Array(outSampleCount);
74
80
  for (let frameIndex = 0; frameIndex < frameCount; frameIndex++) {
75
81
  const binsForFrame = binsForFrames[frameIndex];
76
82
  binsRef.clear();
77
83
  binsRef.view.set(binsForFrame);
78
84
  frameBufferRef.clear();
79
- m._kiss_fftri(statePtr, binsRef.address, frameBufferRef.address);
85
+ m._pffft_transform_ordered(statePtr, binsRef.address, frameBufferRef.address, workBufferRef.address, 1);
80
86
  const frameSamples = frameBufferRef.view;
81
87
  const frameStartOffset = frameIndex * hopSize;
82
88
  for (let windowOffset = 0; windowOffset < windowSize; windowOffset++) {
@@ -87,6 +93,7 @@ export async function stiftr(binsForFrames, fftOrder, windowSize, hopSize, windo
87
93
  sumOfSquaredWeightsForSample[writePosition] += weight ** 2;
88
94
  }
89
95
  }
96
+ m._pffft_destroy_setup(statePtr);
90
97
  wasmMemory.freeAll();
91
98
  // Divide each output sample by the sum of squared weights
92
99
  for (let i = 0; i < outSamples.length; i++) {
@@ -178,12 +185,24 @@ export function getWindowWeights(windowType, windowSize) {
178
185
  }
179
186
  return weights;
180
187
  }
181
- // Get KISS FFT instance (initialize new if not exists)
182
- export async function getKissFFTInstance() {
183
- if (!kissFFTInstance) {
184
- const { default: initializer } = await import('@echogarden/kissfft-wasm');
185
- kissFFTInstance = await initializer();
186
- }
187
- return kissFFTInstance;
188
+ export function isPffftSimdSupportedForFFTOrder(fftOrder) {
189
+ return fftOrder % 32 === 0;
190
+ }
191
+ let pffftNonSimdInstance;
192
+ let pffftSimdInstance;
193
+ export async function getPFFFTInstance(enableSimd) {
194
+ return enableSimd ? getSimdPFFFTInstance() : getNonSimdPFFFTInstance();
195
+ }
196
+ // Get non-SIMD PFFFT instance (initialize new if not exists)
197
+ async function getNonSimdPFFFTInstance() {
198
+ const { default: initializer } = await import('@echogarden/pffft-wasm');
199
+ pffftNonSimdInstance = await initializer();
200
+ return pffftNonSimdInstance;
201
+ }
202
+ // Get SIMD PFFFT instance (initialize new if not exists)
203
+ async function getSimdPFFFTInstance() {
204
+ const { default: initializer } = await import('@echogarden/pffft-wasm/simd');
205
+ pffftSimdInstance = await initializer();
206
+ return pffftSimdInstance;
188
207
  }
189
208
  //# sourceMappingURL=FFT.js.map