echogarden 2.0.3 → 2.0.4

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/dsp/FFT.d.ts CHANGED
@@ -13,6 +13,6 @@ export declare function complexToMagnitudeAndPhase(real: number, imaginary: numb
13
13
  };
14
14
  export declare function magnitudeAndPhaseToComplex(magnitude: number, phase: number): ComplexNumber;
15
15
  export declare function getWindowWeights(windowType: WindowType, windowSize: number): Float32Array;
16
- export declare function isPffftSimdSupportedForFFTOrder(fftOrder: number): boolean;
16
+ export declare function isPffftSimdSupportedForFFTOrder(fftOrder: number): Promise<boolean>;
17
17
  export declare function getPFFFTInstance(enableSimd: boolean): Promise<any>;
18
18
  export type WindowType = 'hann' | 'hann-sqrt' | 'hamming' | 'povey';
package/dist/dsp/FFT.js CHANGED
@@ -1,4 +1,4 @@
1
- import { concatFloat32Arrays } from '../utilities/Utilities.js';
1
+ import { concatFloat32Arrays, isWasmSimdSupported } from '../utilities/Utilities.js';
2
2
  import { WasmMemoryManager } from '../utilities/WasmMemoryManager.js';
3
3
  // Compute short-term Fourier transform (real-valued)
4
4
  export async function stftr(samples, fftOrder, windowSize, hopSize, windowType) {
@@ -23,7 +23,7 @@ export async function* stftrGenerator(samples, fftOrder, windowSize, hopSize, wi
23
23
  const padding = new Float32Array(halfWindowSize);
24
24
  samples = concatFloat32Arrays([padding, samples, padding]);
25
25
  const windowWeights = getWindowWeights(windowType, windowSize);
26
- const m = await getPFFFTInstance(isPffftSimdSupportedForFFTOrder(fftOrder));
26
+ const m = await getPFFFTInstance(await isPffftSimdSupportedForFFTOrder(fftOrder));
27
27
  const wasmMemory = new WasmMemoryManager(m, {
28
28
  wasmAlloc: m._pffft_aligned_malloc,
29
29
  wasmFree: m._pffft_aligned_free
@@ -67,7 +67,7 @@ export async function stiftr(binsForFrames, fftOrder, windowSize, hopSize, windo
67
67
  expectedOutputLength = outSampleCount;
68
68
  }
69
69
  const outSamples = new Float32Array(outSampleCount);
70
- const m = await getPFFFTInstance(isPffftSimdSupportedForFFTOrder(fftOrder));
70
+ const m = await getPFFFTInstance(await isPffftSimdSupportedForFFTOrder(fftOrder));
71
71
  const wasmMemory = new WasmMemoryManager(m, {
72
72
  wasmAlloc: m._pffft_aligned_malloc,
73
73
  wasmFree: m._pffft_aligned_free
@@ -202,7 +202,11 @@ export function getWindowWeights(windowType, windowSize) {
202
202
  }
203
203
  return weights;
204
204
  }
205
- export function isPffftSimdSupportedForFFTOrder(fftOrder) {
205
+ export async function isPffftSimdSupportedForFFTOrder(fftOrder) {
206
+ const simdSupported = await isWasmSimdSupported();
207
+ if (simdSupported === false) {
208
+ return false;
209
+ }
206
210
  return fftOrder % 32 === 0;
207
211
  }
208
212
  let pffftNonSimdInstance;
@@ -1 +1 @@
1
- {"version":3,"file":"FFT.js","sourceRoot":"","sources":["../../src/dsp/FFT.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FFT.js","sourceRoot":"","sources":["../../src/dsp/FFT.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { cloneRawAudio } from '../audio/AudioUtilities.js';
2
- import { concatFloat32Arrays } from '../utilities/Utilities.js';
2
+ import { concatFloat32Arrays, isWasmSimdSupported } from '../utilities/Utilities.js';
3
3
  import { WasmMemoryManager } from '../utilities/WasmMemoryManager.js';
4
4
  let speexResamplerInstance;
5
5
  export async function resampleAudioSpeex(rawAudio, outSampleRate, quality = 0) {
@@ -76,8 +76,14 @@ export async function resampleAudioSpeex(rawAudio, outSampleRate, quality = 0) {
76
76
  }
77
77
  export async function getSpeexResamplerInstance() {
78
78
  if (!speexResamplerInstance) {
79
- const { default: SpeexResamplerInitializer } = await import('@echogarden/speex-resampler-wasm');
80
- speexResamplerInstance = await SpeexResamplerInitializer();
79
+ if (await isWasmSimdSupported()) {
80
+ const { default: SpeexResamplerInitializer } = await import('@echogarden/speex-resampler-wasm/simd');
81
+ speexResamplerInstance = await SpeexResamplerInitializer();
82
+ }
83
+ else {
84
+ const { default: SpeexResamplerInitializer } = await import('@echogarden/speex-resampler-wasm');
85
+ speexResamplerInstance = await SpeexResamplerInitializer();
86
+ }
81
87
  }
82
88
  return speexResamplerInstance;
83
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SpeexResampler.js","sourceRoot":"","sources":["../../src/dsp/SpeexResampler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SpeexResampler.js","sourceRoot":"","sources":["../../src/dsp/SpeexResampler.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,7 @@
1
- import { readFileAsBinary } from '../utilities/FileSystem.js';
2
1
  import { logToStderr, setupProgramTerminationListeners } from '../utilities/Utilities.js';
3
2
  const log = logToStderr;
4
3
  setupProgramTerminationListeners();
5
4
  //process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'
6
5
  //process.env.http_proxy = 'http://localhost:8080'
7
- const test = await readFileAsBinary(`/C:/Rotem/Development/echogarden/echogarden/node_modules/@echogarden/espeak-ng-emscripten/espeak-ng.data`);
8
- //C:\Rotem\Development\echogarden\echogarden\node_modules\\@echogarden\\espeak-ng-emscripten
9
6
  process.exit(0);
10
7
  //# sourceMappingURL=Test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Test.js","sourceRoot":"","sources":["../../src/tests/Test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAA;AAEzF,MAAM,GAAG,GAAG,WAAW,CAAA;AAEvB,gCAAgC,EAAE,CAAA;AAElC,gDAAgD;AAChD,kDAAkD;AAElD,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,0GAA0G,CAAC,CAAA;AAC/I,4FAA4F;AAC5F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"Test.js","sourceRoot":"","sources":["../../src/tests/Test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAA;AAEzF,MAAM,GAAG,GAAG,WAAW,CAAA;AAEvB,gCAAgC,EAAE,CAAA;AAElC,gDAAgD;AAChD,kDAAkD;AAElD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA"}
@@ -59,3 +59,4 @@ export declare function runOperationWithRetries<R>(operationFunc: () => Promise<
59
59
  export declare function writeToStdinInChunks(process: ChildProcessWithoutNullStreams, buffer: Uint8Array, chunkSize: number): void;
60
60
  export declare function getIntegerRange(start: number, end: number): number[];
61
61
  export declare function isUint8Array(value: any): value is Uint8Array;
62
+ export declare function isWasmSimdSupported(): Promise<boolean>;
@@ -367,4 +367,8 @@ export function getIntegerRange(start, end) {
367
367
  export function isUint8Array(value) {
368
368
  return value instanceof Uint8Array;
369
369
  }
370
+ export async function isWasmSimdSupported() {
371
+ const wasmFeatureDetect = await import('wasm-feature-detect');
372
+ return wasmFeatureDetect.simd();
373
+ }
370
374
  //# sourceMappingURL=Utilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Utilities.js","sourceRoot":"","sources":["../../src/utilities/Utilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Utilities.js","sourceRoot":"","sources":["../../src/utilities/Utilities.ts"],"names":[],"mappings":"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"}
package/docs/CLI.md CHANGED
@@ -10,7 +10,7 @@ Each operation can accept one or more options, in the form `--[optionName]=[valu
10
10
 
11
11
  **Keyboard shortcuts**:
12
12
  * While the program is running, you can press `esc` to exit immediately
13
- * When audio is playing, you can press `enter` to skip it, `space` to pause, `right` to skip 1 second forward, and `left` to skip 1 second backwards
13
+ * When audio is playing, you can press `enter` to skip it, `space` to pause/resume, `right` to skip 1 second forward, and `left` to skip 1 second backwards
14
14
 
15
15
  ### Related pages
16
16
  * [Options reference](Options.md)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "echogarden",
3
- "version": "2.0.3",
3
+ "version": "2.0.4",
4
4
  "description": "An easy-to-use speech toolset. Includes tools for synthesis, recognition, alignment, speech translation, language detection, source separation and more.",
5
5
  "author": "Rotem Dan",
6
6
  "license": "GPL-3.0",
@@ -52,10 +52,10 @@
52
52
  "echogarden": "./dist/cli/CLILauncher.js"
53
53
  },
54
54
  "dependencies": {
55
- "@aws-sdk/client-polly": "^3.687.0",
56
- "@aws-sdk/client-transcribe-streaming": "^3.687.0",
55
+ "@aws-sdk/client-polly": "^3.696.0",
56
+ "@aws-sdk/client-transcribe-streaming": "^3.696.0",
57
57
  "@echogarden/audio-io": "^0.2.3",
58
- "@echogarden/espeak-ng-emscripten": "^0.3.2",
58
+ "@echogarden/espeak-ng-emscripten": "^0.3.3",
59
59
  "@echogarden/fasttext-wasm": "^0.1.0",
60
60
  "@echogarden/flite-wasi": "^0.1.1",
61
61
  "@echogarden/fvad-wasm": "^0.2.0",
@@ -63,7 +63,7 @@
63
63
  "@echogarden/rnnoise-wasm": "^0.2.0",
64
64
  "@echogarden/rubberband-wasm": "^0.2.0",
65
65
  "@echogarden/sonic-wasm": "^0.2.0",
66
- "@echogarden/speex-resampler-wasm": "^0.2.1",
66
+ "@echogarden/speex-resampler-wasm": "^0.3.0",
67
67
  "@echogarden/svoxpico-wasm": "^0.2.0",
68
68
  "@echogarden/transformers-nodejs-lite": "^2.17.1-lite.3",
69
69
  "@mozilla/readability": "^0.5.0",
@@ -90,6 +90,7 @@
90
90
  "tar": "^7.4.3",
91
91
  "tiktoken": "^1.0.17",
92
92
  "tinyld": "^1.3.4",
93
+ "wasm-feature-detect": "^1.8.0",
93
94
  "ws": "^8.18.0",
94
95
  "wtf_wikipedia": "^10.3.2"
95
96
  },
@@ -110,7 +111,7 @@
110
111
  "@types/graceful-fs": "^4.1.9",
111
112
  "@types/jsdom": "^21.1.7",
112
113
  "@types/msgpack-lite": "^0.1.11",
113
- "@types/node": "^22.9.0",
114
+ "@types/node": "^22.9.1",
114
115
  "@types/tar": "^6.1.13",
115
116
  "@types/ws": "^8.5.13",
116
117
  "ts-json-schema-generator": "^2.3.0",
package/src/dsp/FFT.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { ComplexNumber } from '../math/VectorMath.js'
2
- import { concatFloat32Arrays } from '../utilities/Utilities.js'
2
+ import { concatFloat32Arrays, isWasmSimdSupported } from '../utilities/Utilities.js'
3
3
  import { WasmMemoryManager } from '../utilities/WasmMemoryManager.js'
4
4
 
5
5
  // Compute short-term Fourier transform (real-valued)
@@ -34,7 +34,7 @@ export async function* stftrGenerator(samples: Float32Array, fftOrder: number, w
34
34
 
35
35
  const windowWeights = getWindowWeights(windowType, windowSize)
36
36
 
37
- const m = await getPFFFTInstance(isPffftSimdSupportedForFFTOrder(fftOrder))
37
+ const m = await getPFFFTInstance(await isPffftSimdSupportedForFFTOrder(fftOrder))
38
38
  const wasmMemory = new WasmMemoryManager(m, {
39
39
  wasmAlloc: m._pffft_aligned_malloc,
40
40
  wasmFree: m._pffft_aligned_free
@@ -99,7 +99,7 @@ export async function stiftr(binsForFrames: Float32Array[], fftOrder: number, wi
99
99
 
100
100
  const outSamples = new Float32Array(outSampleCount)
101
101
 
102
- const m = await getPFFFTInstance(isPffftSimdSupportedForFFTOrder(fftOrder))
102
+ const m = await getPFFFTInstance(await isPffftSimdSupportedForFFTOrder(fftOrder))
103
103
 
104
104
  const wasmMemory = new WasmMemoryManager(m, {
105
105
  wasmAlloc: m._pffft_aligned_malloc,
@@ -275,7 +275,13 @@ export function getWindowWeights(windowType: WindowType, windowSize: number) {
275
275
  return weights
276
276
  }
277
277
 
278
- export function isPffftSimdSupportedForFFTOrder(fftOrder: number) {
278
+ export async function isPffftSimdSupportedForFFTOrder(fftOrder: number) {
279
+ const simdSupported = await isWasmSimdSupported()
280
+
281
+ if (simdSupported === false) {
282
+ return false
283
+ }
284
+
279
285
  return fftOrder % 32 === 0
280
286
  }
281
287
 
@@ -1,5 +1,5 @@
1
1
  import { RawAudio, cloneRawAudio } from '../audio/AudioUtilities.js'
2
- import { concatFloat32Arrays } from '../utilities/Utilities.js'
2
+ import { concatFloat32Arrays, isWasmSimdSupported } from '../utilities/Utilities.js'
3
3
  import { WasmMemoryManager } from '../utilities/WasmMemoryManager.js'
4
4
 
5
5
  let speexResamplerInstance: any
@@ -109,9 +109,13 @@ export async function resampleAudioSpeex(rawAudio: RawAudio, outSampleRate: numb
109
109
 
110
110
  export async function getSpeexResamplerInstance() {
111
111
  if (!speexResamplerInstance) {
112
- const { default: SpeexResamplerInitializer } = await import('@echogarden/speex-resampler-wasm')
113
-
114
- speexResamplerInstance = await SpeexResamplerInitializer()
112
+ if (await isWasmSimdSupported()) {
113
+ const { default: SpeexResamplerInitializer } = await import('@echogarden/speex-resampler-wasm/simd')
114
+ speexResamplerInstance = await SpeexResamplerInitializer()
115
+ } else {
116
+ const { default: SpeexResamplerInitializer } = await import('@echogarden/speex-resampler-wasm')
117
+ speexResamplerInstance = await SpeexResamplerInitializer()
118
+ }
115
119
  }
116
120
 
117
121
  return speexResamplerInstance
package/src/tests/Test.ts CHANGED
@@ -1,4 +1,3 @@
1
- import { readFileAsBinary } from '../utilities/FileSystem.js'
2
1
  import { logToStderr, setupProgramTerminationListeners } from '../utilities/Utilities.js'
3
2
 
4
3
  const log = logToStderr
@@ -8,6 +7,4 @@ setupProgramTerminationListeners()
8
7
  //process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'
9
8
  //process.env.http_proxy = 'http://localhost:8080'
10
9
 
11
- const test = await readFileAsBinary(`/C:/Rotem/Development/echogarden/echogarden/node_modules/@echogarden/espeak-ng-emscripten/espeak-ng.data`)
12
- //C:\Rotem\Development\echogarden\echogarden\node_modules\\@echogarden\\espeak-ng-emscripten
13
10
  process.exit(0)
@@ -53,6 +53,7 @@ declare module '@echogarden/sonic-wasm'
53
53
  declare module '@echogarden/pffft-wasm'
54
54
  declare module '@echogarden/pffft-wasm/simd'
55
55
  declare module '@echogarden/speex-resampler-wasm'
56
+ declare module '@echogarden/speex-resampler-wasm/simd'
56
57
  declare module '@echogarden/vosk'
57
58
 
58
59
  declare module 'onnxruntime-node' {
@@ -489,3 +489,9 @@ export function getIntegerRange(start: number, end: number) {
489
489
  export function isUint8Array(value: any): value is Uint8Array {
490
490
  return value instanceof Uint8Array
491
491
  }
492
+
493
+ export async function isWasmSimdSupported() {
494
+ const wasmFeatureDetect = await import('wasm-feature-detect')
495
+
496
+ return wasmFeatureDetect.simd()
497
+ }