echogarden 2.1.1 → 2.2.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 (57) hide show
  1. package/README.md +18 -15
  2. package/data/lexicons/heteronyms.en.json +327 -122
  3. package/data/lexicons/words.en.json +260 -0
  4. package/data/schemas/options.json +20 -4
  5. package/dist/api/Recognition.d.ts +3 -1
  6. package/dist/api/Recognition.js +17 -0
  7. package/dist/api/Recognition.js.map +1 -1
  8. package/dist/api/Synthesis.d.ts +2 -2
  9. package/dist/api/Synthesis.js +3 -3
  10. package/dist/api/Synthesis.js.map +1 -1
  11. package/dist/codecs/FFMpegTranscoder.js +2 -0
  12. package/dist/codecs/FFMpegTranscoder.js.map +1 -1
  13. package/dist/nlp/EspeakPhonemizer.d.ts +2 -2
  14. package/dist/nlp/EspeakPhonemizer.js +36 -36
  15. package/dist/nlp/Lexicon.d.ts +2 -0
  16. package/dist/nlp/Lexicon.js +19 -19
  17. package/dist/nlp/Lexicon.js.map +1 -1
  18. package/dist/nlp/PhoneConversion.d.ts +1 -0
  19. package/dist/nlp/PhoneConversion.js +151 -222
  20. package/dist/nlp/PhoneConversion.js.map +1 -1
  21. package/dist/recognition/DeepgramSTT.d.ts +11 -0
  22. package/dist/recognition/DeepgramSTT.js +64 -0
  23. package/dist/recognition/DeepgramSTT.js.map +1 -0
  24. package/dist/recognition/GoogleCloudSTT.js.map +1 -1
  25. package/dist/synthesis/{ElevenlabsTTS.d.ts → ElevenLabsTTS.d.ts} +3 -3
  26. package/dist/synthesis/{ElevenlabsTTS.js → ElevenLabsTTS.js} +3 -3
  27. package/dist/synthesis/{ElevenlabsTTS.js.map → ElevenLabsTTS.js.map} +1 -1
  28. package/dist/synthesis/EspeakTTS.d.ts +1 -1
  29. package/dist/synthesis/EspeakTTS.js +9 -8
  30. package/dist/synthesis/EspeakTTS.js.map +1 -1
  31. package/dist/synthesis/KokoroTTS.js +14 -14
  32. package/dist/synthesis/VitsTTS.js +9 -9
  33. package/dist/utilities/Utilities.d.ts +1 -0
  34. package/dist/utilities/Utilities.js +5 -0
  35. package/dist/utilities/Utilities.js.map +1 -1
  36. package/dist/utilities/WasmMemoryManager.d.ts +1 -1
  37. package/docs/CLI.md +1 -1
  38. package/docs/CUDA.md +17 -0
  39. package/docs/Development.md +10 -2
  40. package/docs/Engines.md +2 -1
  41. package/docs/Options.md +19 -14
  42. package/docs/Tasklist.md +0 -1
  43. package/docs/Technical.md +18 -11
  44. package/package.json +6 -6
  45. package/src/api/Recognition.ts +29 -1
  46. package/src/api/Synthesis.ts +7 -7
  47. package/src/codecs/FFMpegTranscoder.ts +2 -0
  48. package/src/nlp/EspeakPhonemizer.ts +36 -36
  49. package/src/nlp/Lexicon.ts +24 -21
  50. package/src/nlp/PhoneConversion.ts +176 -225
  51. package/src/recognition/DeepgramSTT.ts +136 -0
  52. package/src/recognition/GoogleCloudSTT.ts +0 -1
  53. package/src/synthesis/{ElevenlabsTTS.ts → ElevenLabsTTS.ts} +4 -4
  54. package/src/synthesis/EspeakTTS.ts +9 -8
  55. package/src/synthesis/KokoroTTS.ts +15 -15
  56. package/src/synthesis/VitsTTS.ts +9 -9
  57. package/src/utilities/Utilities.ts +6 -0
@@ -120,9 +120,8 @@ export async function synthesizeFragments(fragments, espeakOptions) {
120
120
  for (let i = 0; i < fragments.length; i++) {
121
121
  let fragment = fragments[i];
122
122
  fragment = simplifyPunctuationCharacters(fragment);
123
- fragment = fragment
124
- .replaceAll('<', '&lt;')
125
- .replaceAll('>', '&gt;');
123
+ //fragment = encodeHTMLAngleBrackets(fragment)
124
+ fragment = fragment.replaceAll('<', '_').replaceAll('>', '_').replaceAll(':', ',');
126
125
  if (espeakOptions.insertSeparators && canInsertSeparators) {
127
126
  const separator = ` | `;
128
127
  textWithMarkers += `<mark name="s-${i}"/>${separator}${fragment}${separator}<mark name="e-${i}"/>`;
@@ -247,7 +246,7 @@ export async function synthesizeFragments(fragments, espeakOptions) {
247
246
  if (!tokenTimeline || tokenTimeline.length === 0) {
248
247
  throw new Error('Unexpected: token timeline should exist and have at least one token');
249
248
  }
250
- if (tokenTimeline.length !== 1 && tokenTimeline[0].text != '') {
249
+ if (tokenTimeline.length !== 1 || tokenTimeline[0].text !== '') {
251
250
  continue;
252
251
  }
253
252
  const wordReferencePhonemes = (await textToPhonemes(wordEntry.text, espeakOptions.voice, true)).split('_');
@@ -421,14 +420,16 @@ export const defaultEspeakOptions = {
421
420
  useKlatt: false,
422
421
  insertSeparators: false
423
422
  };
424
- export async function testKirshenbaumPhonemization(text) {
425
- const ipaPhonemizedSentence = (await phonemizeSentence(text, 'en-us')).flatMap(clause => clause);
426
- const kirshenbaumPhonemizedSentence = (await phonemizeSentence(text, 'en-us', undefined, false)).flatMap(clause => clause);
423
+ export async function testKirshenbaumPhonemization(text, language = 'en-us') {
424
+ const ipaPhonemizedSentence = (await phonemizeSentence(text, language)).flatMap(clause => clause);
425
+ const kirshenbaumPhonemizedSentence = (await phonemizeSentence(text, language, undefined, false)).flatMap(clause => clause);
427
426
  const ipaFragments = ipaPhonemizedSentence.map(word => word.join(''));
428
427
  const kirshenbaumFragments = kirshenbaumPhonemizedSentence.map(word => word.join(''));
429
428
  const fragments = ipaPhonemizedSentence.map(word => word.map(phoneme => ipaPhoneToKirshenbaum(phoneme)).join(''));
430
429
  for (let i = 0; i < fragments.length; i++) {
431
- log(`IPA: ${ipaFragments[i]} | converted: ${fragments[i]} | ground truth: ${kirshenbaumFragments[i]}`);
430
+ if (fragments[i] !== kirshenbaumFragments[i]) {
431
+ log(`IPA: ${ipaFragments[i]} | converted: ${fragments[i]} | ground truth: ${kirshenbaumFragments[i]}`);
432
+ }
432
433
  }
433
434
  }
434
435
  //# sourceMappingURL=EspeakTTS.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EspeakTTS.js","sourceRoot":"","sources":["../../src/synthesis/EspeakTTS.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EspeakTTS.js","sourceRoot":"","sources":["../../src/synthesis/EspeakTTS.ts"],"names":[],"mappings":"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"}
@@ -70,7 +70,7 @@ export class KokoroTTS {
70
70
  //await logger.startAsync('Phonemize text')
71
71
  const { referenceSynthesizedAudio, referenceTimeline, fragments, phonemizedFragmentsSubstitutions, phonemizedSentence } = await Espeak.preprocessAndSynthesize(sentenceText, voiceLanguage, espeakOptions, lexicons);
72
72
  logger.end();
73
- const clauseBreakTokenId = charToTokenIDLookup[','];
73
+ const phraseBreakTokenId = charToTokenIDLookup[','];
74
74
  const wordBreakTokenId = charToTokenIDLookup[' '];
75
75
  let sentenceEndChar;
76
76
  if (simplifiedSentenceText.endsWith('?') || simplifiedSentenceText.endsWith(`?"`) || simplifiedSentenceText.endsWith(`?)`)) {
@@ -84,10 +84,10 @@ export class KokoroTTS {
84
84
  }
85
85
  const sentenceEndTokenId = charToTokenIDLookup[sentenceEndChar];
86
86
  const allTokenIds = [];
87
- for (let clauseIndex = 0; clauseIndex < phonemizedSentence.length; clauseIndex++) {
88
- const clause = phonemizedSentence[clauseIndex];
89
- for (let wordIndex = 0; wordIndex < clause.length; wordIndex++) {
90
- const word = clause[wordIndex];
87
+ for (let phraseIndex = 0; phraseIndex < phonemizedSentence.length; phraseIndex++) {
88
+ const phrase = phonemizedSentence[phraseIndex];
89
+ for (let wordIndex = 0; wordIndex < phrase.length; wordIndex++) {
90
+ const word = phrase[wordIndex];
91
91
  for (const phoneme of word) {
92
92
  let processedPhoneme = phoneme;
93
93
  if (getShortLanguageCode(voice.languages[0]) === 'en') {
@@ -104,12 +104,12 @@ export class KokoroTTS {
104
104
  }
105
105
  }
106
106
  }
107
- if (wordIndex < clause.length - 1) {
107
+ if (wordIndex < phrase.length - 1) {
108
108
  allTokenIds.push(wordBreakTokenId);
109
109
  }
110
110
  else {
111
- if (clauseIndex < phonemizedSentence.length - 1) {
112
- allTokenIds.push(clauseBreakTokenId);
111
+ if (phraseIndex < phonemizedSentence.length - 1) {
112
+ allTokenIds.push(phraseBreakTokenId);
113
113
  allTokenIds.push(wordBreakTokenId);
114
114
  }
115
115
  }
@@ -127,9 +127,9 @@ export class KokoroTTS {
127
127
  endIndex = allTokenIds.length;
128
128
  }
129
129
  else {
130
- const indexOfLastClauseBreak = indexOfLastMatchingNumberInRange(allTokenIds, clauseBreakTokenId, startIndex, endIndex);
131
- if (indexOfLastClauseBreak !== -1) {
132
- endIndex = indexOfLastClauseBreak + 1;
130
+ const indexOfLastPhraseBreak = indexOfLastMatchingNumberInRange(allTokenIds, phraseBreakTokenId, startIndex, endIndex);
131
+ if (indexOfLastPhraseBreak !== -1) {
132
+ endIndex = indexOfLastPhraseBreak + 1;
133
133
  }
134
134
  else {
135
135
  const indexOfLastWordBreak = indexOfLastMatchingNumberInRange(allTokenIds, wordBreakTokenId, startIndex, endIndex);
@@ -139,10 +139,10 @@ export class KokoroTTS {
139
139
  }
140
140
  }
141
141
  const partTokenIds = allTokenIds.slice(startIndex, endIndex);
142
- if (partTokenIds[partTokenIds.length - 1] === clauseBreakTokenId) {
142
+ if (partTokenIds[partTokenIds.length - 1] === phraseBreakTokenId) {
143
143
  partTokenIds.pop();
144
144
  }
145
- if (partTokenIds.find(tokenId => ![wordBreakTokenId, clauseBreakTokenId, sentenceEndTokenId].includes(tokenId))) {
145
+ if (partTokenIds.find(tokenId => ![wordBreakTokenId, phraseBreakTokenId, sentenceEndTokenId].includes(tokenId))) {
146
146
  parts.push([0, ...partTokenIds, 0]);
147
147
  }
148
148
  startIndex = endIndex;
@@ -175,7 +175,7 @@ export class KokoroTTS {
175
175
  const synthesizedAudio = { audioChannels: concatenatedAudioParts, sampleRate };
176
176
  await logger.startAsync('Align with reference synthesized audio');
177
177
  const { alignUsingDtw } = await import('../alignment/SpeechAlignment.js');
178
- const referenceWordTimeline = referenceTimeline.flatMap(clause => clause.timeline);
178
+ const referenceWordTimeline = referenceTimeline.flatMap(phrase => phrase.timeline);
179
179
  const dtwWindowDuration = Math.max(5, Math.ceil(0.2 * getRawAudioDuration(synthesizedAudio)));
180
180
  const mappedTimeline = await alignUsingDtw(synthesizedAudio, referenceSynthesizedAudio, referenceWordTimeline, ['high'], [dtwWindowDuration]);
181
181
  logger.end();
@@ -62,7 +62,7 @@ export class VitsTTS {
62
62
  };
63
63
  }
64
64
  await logger.startAsync('Encode phonemes to identifiers');
65
- const clauseEndBreaker = ',';
65
+ const phraseEndBreaker = ',';
66
66
  let sentenceEndBreaker = '.';
67
67
  if (sentence.endsWith('?') || sentence.endsWith(`?"`)) {
68
68
  sentenceEndBreaker = '?';
@@ -74,12 +74,12 @@ export class VitsTTS {
74
74
  const wordSeparatorId = phonemeMap.get(' ');
75
75
  const startId = phonemeMap.get('^');
76
76
  const endId = phonemeMap.get('$');
77
- const clauseEndBreakerId = phonemeMap.get(clauseEndBreaker);
77
+ const phraseEndBreakerId = phonemeMap.get(phraseEndBreaker);
78
78
  const sentenceEndBreakerId = phonemeMap.get(sentenceEndBreaker);
79
79
  const ids = [...startId, ...phonemeCharacterSeparatorId];
80
- for (let clauseIndex = 0; clauseIndex < phonemizedSentence.length; clauseIndex++) {
81
- const clause = phonemizedSentence[clauseIndex];
82
- for (const word of clause) {
80
+ for (let phraseIndex = 0; phraseIndex < phonemizedSentence.length; phraseIndex++) {
81
+ const phrase = phonemizedSentence[phraseIndex];
82
+ for (const word of phrase) {
83
83
  for (const phoneme of word) {
84
84
  for (const phonemeCharacter of phoneme) {
85
85
  const id = phonemeMap.get(phonemeCharacter);
@@ -90,12 +90,12 @@ export class VitsTTS {
90
90
  ids.push(...id, ...phonemeCharacterSeparatorId);
91
91
  }
92
92
  }
93
- if (clauseIndex < phonemizedSentence.length - 1) {
93
+ if (phraseIndex < phonemizedSentence.length - 1) {
94
94
  ids.push(...wordSeparatorId, ...phonemeCharacterSeparatorId);
95
95
  }
96
96
  }
97
- if (clauseIndex < phonemizedSentence.length - 1) {
98
- ids.push(...clauseEndBreakerId, ...phonemeCharacterSeparatorId);
97
+ if (phraseIndex < phonemizedSentence.length - 1) {
98
+ ids.push(...phraseEndBreakerId, ...phonemeCharacterSeparatorId);
99
99
  }
100
100
  }
101
101
  ids.push(...sentenceEndBreakerId, ...phonemeCharacterSeparatorId, ...endId);
@@ -120,7 +120,7 @@ export class VitsTTS {
120
120
  const synthesizedAudio = { audioChannels: [modelOutputAudioSamples], sampleRate: outputSampleRate };
121
121
  await logger.startAsync('Align with reference synthesized audio');
122
122
  const { alignUsingDtw } = await import('../alignment/SpeechAlignment.js');
123
- const referenceWordTimeline = referenceTimeline.flatMap(clause => clause.timeline);
123
+ const referenceWordTimeline = referenceTimeline.flatMap(phrase => phrase.timeline);
124
124
  const dtwWindowDuration = Math.max(5, Math.ceil(0.2 * getRawAudioDuration(synthesizedAudio)));
125
125
  const mappedTimeline = await alignUsingDtw(synthesizedAudio, referenceSynthesizedAudio, referenceWordTimeline, ['high'], [dtwWindowDuration]);
126
126
  logger.end();
@@ -61,3 +61,4 @@ export declare function getIntegerRange(start: number, end: number): number[];
61
61
  export declare function isUint8Array(value: any): value is Uint8Array;
62
62
  export declare function isWasmSimdSupported(): Promise<boolean>;
63
63
  export declare function indexOfLastMatchingNumberInRange(values: number[], targetValue: number, startIndex: number, endIndex: number): number;
64
+ export declare function encodeHTMLAngleBrackets(text: string): string;
@@ -379,4 +379,9 @@ export function indexOfLastMatchingNumberInRange(values, targetValue, startIndex
379
379
  }
380
380
  return -1;
381
381
  }
382
+ export function encodeHTMLAngleBrackets(text) {
383
+ return text.replaceAll('<', '&lt;')
384
+ .replaceAll('>', '&gt;')
385
+ .replaceAll('&', '&amp;');
386
+ }
382
387
  //# 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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"}
@@ -109,7 +109,7 @@ declare abstract class TypedArrayRef<T extends TypedArray> {
109
109
  constructor(ptr: number, length: number, manager: WasmMemoryManager);
110
110
  get view(): T;
111
111
  protected abstract getView(): T;
112
- slice(start?: number, end?: number): Uint8Array<ArrayBuffer> | Int32Array<ArrayBuffer> | Float32Array<ArrayBuffer> | Float64Array<ArrayBuffer> | Int8Array<ArrayBuffer> | Int16Array<ArrayBuffer> | Uint8ClampedArray<ArrayBuffer> | Uint16Array<ArrayBuffer> | Uint32Array<ArrayBuffer>;
112
+ slice(start?: number, end?: number): Int8Array<ArrayBuffer> | Float32Array<ArrayBuffer> | Uint8Array<ArrayBuffer> | Uint8ClampedArray<ArrayBuffer> | Int16Array<ArrayBuffer> | Uint16Array<ArrayBuffer> | Int32Array<ArrayBuffer> | Uint32Array<ArrayBuffer> | Float64Array<ArrayBuffer>;
113
113
  get address(): number;
114
114
  clear(): this;
115
115
  free(): void;
package/docs/CLI.md CHANGED
@@ -47,7 +47,7 @@ You can specify an engine using the `--engine` option (a full list of engines ca
47
47
 
48
48
  The CLI supports multiple output files. This would synthesize a text file, and save the resulting audio in both `result.mp3` and `result.wav`, as well as subtitles in `result.srt`:
49
49
  ```bash
50
- echogarden speak-file text.txt result.mp3 result.wav result.srt --engine=vits --speed=1.1
50
+ echogarden speak-file text.txt result.mp3 result.wav result.srt --engine=kokoro --speed=1.1
51
51
  ```
52
52
 
53
53
  Synthesize a web page (it will try to extract its main article parts and omit the rest):
package/docs/CUDA.md ADDED
@@ -0,0 +1,17 @@
1
+ # How to enable the `cuda` ONNX execution provider
2
+
3
+ On Linux, or the Windows Subsystem for Linux (WSL), you can enable CUDA-based GPU acceleration for a number of engines, by selecting the `cuda` ONNX execution provider, usually thorough an option like `[engine].provider=cuda`.
4
+
5
+ Engines where CUDA is supported include:
6
+ * `whisper` (speech recognition)
7
+ * `kokoro` (speech synthesis)
8
+ * `vits` (speech synthesis)
9
+ * `silero` (speech recognition)
10
+ * `mdx-net` (source separation)
11
+
12
+ ## Steps
13
+ * Download and globally install [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) based on the instructions in the linked download page
14
+ * Download and globally install [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) based on the instructions in the linked download page
15
+ * Reinstall Echogarden
16
+
17
+ Reinstallation is needed because the `onnxruntime-node` dependency package runs a post-install script that attempts to detect the global installation of CUDA, and then conditionally downloads additional files required for it to work.
@@ -13,7 +13,7 @@ Here's a quick guide on how to set up a development environment for making and t
13
13
  * Ensure you have [Node.js](https://nodejs.org/en/download) installed
14
14
  * Ensure you have TypeScript installed (`npm install typescript -g`)
15
15
  * Run `npm install` at the project base directory
16
- * Compile using `tsc .` at the project base directory
16
+ * Compile using `tsc -p .` at the project base directory
17
17
 
18
18
  ## Auto-compiling in Visual Studio Code
19
19
 
@@ -94,6 +94,14 @@ Press F5 to start debugging.
94
94
 
95
95
  You can change `"args": ["speak", "Hello World!", "--debug"]` to any command line arguments you want to test. Adding the `--debug` CLI option ensures that errors are shown with full stack traces.
96
96
 
97
+ ## Setting up a default configuration file
98
+
99
+ You can use a default configuration file to make it easier to test various CLI options.
100
+
101
+ Create a new file called `echogarden.config` at the base directory of the project.
102
+
103
+ The reference for how this file is structured is included in the [CLI guide](./CLI.md).
104
+
97
105
  ## Updating the options schema
98
106
 
99
107
  If you add, modify or remove options from the API, that are exposed to the CLI, you should run:
@@ -102,4 +110,4 @@ If you add, modify or remove options from the API, that are exposed to the CLI,
102
110
  npm run generate-options-schema
103
111
  ```
104
112
 
105
- To update the JSON schema used when parsing command line options in the CLI. Otherwise, the CLI may not recognize the modified option names or types.
113
+ at the base directory, to update the JSON schema used when parsing command line options in the CLI. Otherwise, the CLI may not recognize the modified option names or types.
package/docs/Engines.md CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- # Supported engines
2
+ # Available engines
3
3
 
4
4
  ## Text-to-speech
5
5
 
@@ -61,6 +61,7 @@ These are commercial services that require a subscription and an API key to use:
61
61
  * [Azure Cognitive Services](https://azure.microsoft.com/en-us/products/ai-services/speech-to-text/) (`microsoft-azure`)
62
62
  * [Amazon Transcribe](https://aws.amazon.com/transcribe/) (`amazon-transcribe`)
63
63
  * [OpenAI Cloud Platform](https://platform.openai.com/) (`openai-cloud`): runs the `large-v2` Whisper model on the cloud. Allows setting a custom provider, like [Groq](https://console.groq.com/docs/api-reference#audio), to request from any OpenAI-compatible provider
64
+ * [Deepgram](https://deepgram.com/) (`deepgram`): a high-accuracy cloud speech recognition service with support for multiple languages and models, including Whisper
64
65
 
65
66
  ## Speech-to-transcript alignment
66
67
 
package/docs/Options.md CHANGED
@@ -47,11 +47,11 @@ Applies to CLI operations: `speak`, `speak-file`, `speak-url`, `speak-wikipedia`
47
47
 
48
48
  **Kokoro**:
49
49
  * `kokoro.model`: model variant to use. Can be `82m-v1.0-fp32` or `82m-v1.0-quantized`. **Note**: the quantized model, while having lower memory usage, is significantly slower than the non-quantized (FP32) one. Defaults to `v1.0-fp32`
50
- * `kokoro.provider`: ONNX execution provider to use. Can be `cpu`, `dml` ([DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration - Windows only), or `cuda` (Linux only - requires [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) and [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) to be installed). **Note**: `dml` provider (DirectML) seems to currently fail on inference. The cause for this error is [still under investigation](https://github.com/hexgrad/kokoro/issues/79). Defaults to `cpu`
50
+ * `kokoro.provider`: ONNX execution provider to use. Can be `cpu`, `dml` (Windows only, uses [DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration), or `cuda` (Linux only, requires system-wide installation of CUDA and cuDNN SDKs, see [this guide](./CUDA.md) for more detailed information). **Note**: `dml` provider (DirectML) seems to currently fail on inference. The cause for this error is [still under investigation](https://github.com/echogarden-project/echogarden/issues/94). Defaults to `cpu`
51
51
 
52
52
  **VITS**:
53
53
  * `vits.speakerId`: speaker ID, for VITS models that support multiple speakers. Defaults to `0`
54
- * `vits.provider`: ONNX execution provider to use. Can be `cpu`, `dml` ([DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration - Windows only), or `cuda` (Linux only - requires [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) and [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) to be installed). Using GPU acceleration for VITS may or may not be faster than CPU, depending on your hardware. Defaults to `cpu`
54
+ * `vits.provider`: ONNX execution provider to use. Can be `cpu`, `dml` (Windows only, uses [DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration), or `cuda` (Linux only, requires system-wide installation of CUDA and cuDNN SDKs, see [this guide](./CUDA.md) for more detailed information). Using GPU acceleration for VITS may or may not be faster than CPU, depending on your hardware. Defaults to `cpu`
55
55
 
56
56
  **eSpeak**:
57
57
  * `espeak.rate`: speech rate, in eSpeak units. Overrides `speed` when set
@@ -118,9 +118,9 @@ Applies to CLI operations: `speak`, `speak-file`, `speak-url`, `speak-wikipedia`
118
118
  Applies to CLI operation: `list-voices`, API method: `requestVoiceList`
119
119
 
120
120
  **General**:
121
- * `language`: language code to filter by (optional)
122
- * `voice`: name or name pattern to filter by (optional)
123
- * `voiceGender`: gender to filter by (optional)
121
+ * `language`: language code to filter by. Optional
122
+ * `voice`: name or name pattern to filter by. Optional
123
+ * `voiceGender`: gender to filter by. Optional
124
124
 
125
125
  Also accepted are the following engine-specific options that may be required in order to retrieve the voice list:
126
126
  * `googleCloud.apiKey`
@@ -134,7 +134,7 @@ Also accepted are the following engine-specific options that may be required in
134
134
  Applies to CLI operation: `transcribe`, API method: `recognize`
135
135
 
136
136
  **General**:
137
- * `engine`: identifier of the recognition engine to use, such as `whisper` or `vosk` (see [the full engine list](Engines.md))
137
+ * `engine`: identifier of the recognition engine to use, can be `whisper`, `whisper.cpp`, `vosk` or `silero` (see [the full engine list](Engines.md) for more detailed information)
138
138
  * `language`: language code ([ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)) for the audio, like `en`, `fr`, `de`. Auto-detected if not set
139
139
  * `crop`: crop to active parts using voice activity detection before starting recognition. Defaults to `true`
140
140
  * `isolate`: apply source separation to isolate voice before starting recognition. Defaults to `false`
@@ -156,8 +156,8 @@ Applies to CLI operation: `transcribe`, API method: `recognize`
156
156
  * `whisper.repetitionThreshold`: minimal repetition / compressibility score to cause a part not to be auto-prompted to the next part. Defaults to `2.4`
157
157
  * `whisper.decodeTimestampTokens`: enable/disable decoding of timestamp tokens. Setting to `false` can reduce the occurrence of hallucinations and token repetition loops, possibly due to the overall reduction in the number of tokens decoded. This has no impact on the accuracy of timestamps, since they are derived independently using cross-attention weights. However, there are cases where this can cause the model to end a part prematurely, especially in singing and less speech-like voice segments, or when there are multiple speakers. Defaults to `true`
158
158
  * `whisper.timestampAccuracy`: timestamp accuracy. can be `medium` or `high`. `medium` uses a reduced subset of attention heads for alignment, `high` uses all attention heads and is thus more accurate at the word level, but slower for larger models. Defaults to `high` for the `tiny` and `base` models, and `medium` for the larger models
159
- * `whisper.encoderProvider`: identifier for the ONNX execution provider to use with the encoder model. Can be `cpu`, `dml` ([DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration - Windows only), or `cuda` (Linux only - requires [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) and [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) to be installed). In general, GPU-based encoding should be significantly faster. Defaults to `cpu`, or `dml` if available
160
- * `whisper.decoderProvider`: identifier for the ONNX execution provider to use with the decoder model. Can be `cpu`, `dml` ([DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration - Windows only), or `cuda` (Linux only - requires [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) and [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) to be installed). Using GPU acceleration for the decoder may be faster than CPU, especially for larger models, but that depends on your particular combination of CPU and GPU. Defaults to `cpu`, and on Windows, `dml` if available for larger models (`small`, `medium`, `large`)
159
+ * `whisper.encoderProvider`: identifier for the ONNX execution provider to use with the encoder model. Can be `cpu`, `dml` (Windows only, uses [DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration), or `cuda` (Linux only, requires system-wide installation of CUDA and cuDNN SDKs, see [this guide](./CUDA.md) for more detailed information). In general, GPU-based encoding should be significantly faster. Defaults to `cpu`, or `dml` if available
160
+ * `whisper.decoderProvider`: identifier for the ONNX execution provider to use with the decoder model. Can be `cpu`, `dml` (Windows only, uses [DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration), or `cuda` (Linux only, requires system-wide installation of CUDA and cuDNN SDKs, see [this guide](./CUDA.md) for more detailed information).. Using GPU acceleration for the decoder may be faster than CPU, especially for larger models, but that depends on your particular combination of CPU and GPU. Defaults to `cpu`, and on Windows, `dml` if available, for larger models (`small`, `medium`, `large`)
161
161
  * `whisper.seed`: provide a custom random seed for token selection when temperature is greater than 0. Uses a constant seed by default to ensure reproducibility
162
162
 
163
163
  **Whisper.cpp**:
@@ -182,7 +182,7 @@ Applies to CLI operation: `transcribe`, API method: `recognize`
182
182
 
183
183
  **Silero**:
184
184
  * `silero.modelPath`: path to a Silero model. Note that latest `en`, `de`, `fr` and `uk` models are automatically installed when needed based on the selected language. This should only be used to manually specify a different model, otherwise specify `language` instead
185
- * `silero.provider`: ONNX execution provider to use. Can be `cpu`, `dml` ([DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration - Windows only), or `cuda` (Linux only - requires [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) and [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) to be installed). Defaults to `cpu`, or `dml` if available
185
+ * `silero.provider`: ONNX execution provider to use. Can be `cpu`, `dml` (Windows only, uses [DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration), or `cuda` (Linux only, requires system-wide installation of CUDA and cuDNN SDKs, see [this guide](./CUDA.md) for more detailed information). Defaults to `cpu`, or `dml` if available
186
186
 
187
187
  **Google Cloud**:
188
188
  * `googleCloud.apiKey`: Google Cloud API key (required)
@@ -211,6 +211,11 @@ Applies to CLI operation: `transcribe`, API method: `recognize`
211
211
  * `openAICloud.maxRetries`: maximum retries on failure. Defaults to 10
212
212
  * `openAICloud.requestWordTimestamps`: request word timestamps from the server. Defaults to `true` for the default OpenAI endpoint, and `false` if a custom one is set using `baseURL`
213
213
 
214
+ **Deepgram**:
215
+ * `deepgram.apiKey`: API key (required)
216
+ * `deepgram.model`: model to use, defaults to `whisper-large`. All the models can be found here: https://developers.deepgram.com/docs/model
217
+ * `language`: specify language code (global option). If not provided, Deepgram will auto-detect the language
218
+
214
219
  ## Speech-to-transcript alignment
215
220
 
216
221
  Applies to CLI operation: `align`, API method: `align`
@@ -244,7 +249,7 @@ Applies to the `whisper` engine only. To provide Whisper options for `dtw-ra`, u
244
249
  * `whisper.model`: Whisper model to use. Defaults to `tiny` or `tiny.en`
245
250
  * `whisper.endTokenThreshold`: minimal probability to accept an end token for a recognized part. The probability is measured via the softmax between the end token's logit and the second highest logit. You can try to adjust this threshold in cases the model is ending a part with too few, or many tokens decoded. Defaults to `0.9`. On the last audio part, it is always effectively set to `Infinity`, to ensure the remaining transcript tokens are decoded in full
246
251
  * `whisper.maxTokensPerPart`: maximum number of tokens to decode per part. Should help avoid edge cases where the model never reaches an end token for the part, which otherwise may cause the model to decode too many tokens and eventually crash. Defaults to 250
247
- * `whisper.timestampAccuracy`: timestamp accuracy. can be `medium` or `high`. `medium` uses a reduced subset of attention heads for alignment, `high` uses all attention heads and is thus more accurate at the word level, but slower for larger models. Defaults to `high` for the `tiny` and `base` models, and `medium` for the larger models. Note: setting `high` for model `large-v3-turbo` reverts to `medium`.
252
+ * `whisper.timestampAccuracy`: timestamp accuracy. can be `medium` or `high`. `medium` uses a reduced subset of attention heads for alignment, `high` uses all attention heads and is thus more accurate at the word level, but slower for larger models. Defaults to `high` for the `tiny` and `base` models, and `medium` for the larger models. Note: setting `high` for model `large-v3-turbo` reverts to `medium`, due to poor results with the `high` setting for that model (possibly related to the 16-bit quantization).
248
253
  * `whisper.encoderProvider`: encoder ONNX provider. See details in recognition section above
249
254
  * `whisper.decoderProvider`: decoder ONNX provider. See details in recognition section above
250
255
 
@@ -360,7 +365,7 @@ Applies to CLI operation: `detect-speech-langauge`, API method: `detectSpeechLan
360
365
  * `whisper.decoderProvider`: decoder ONNX execution provider. See details in recognition section above
361
366
 
362
367
  **Silero**:
363
- * `silero.provider`: ONNX execution provider to use. Can be `cpu`, `dml` ([DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration - Windows only), or `cuda` (Linux only - requires [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) and [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) to be installed). Using GPU may be faster, but the initialization overhead is larger. **Note**: `dml` provider seems to be unstable at the moment for this model. Defaults to `cpu`
368
+ * `silero.provider`: ONNX execution provider to use. Can be `cpu`, `dml` (Windows only, uses [DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration), or `cuda` (Linux only, requires system-wide installation of CUDA and cuDNN SDKs, see [this guide](./CUDA.md) for more detailed information). Using GPU may be faster, but the initialization overhead is larger. **Note**: `dml` provider seems to be unstable at the moment for this model. Defaults to `cpu`
364
369
 
365
370
  ### Text language detection
366
371
 
@@ -385,7 +390,7 @@ Applies to CLI operation: `detect-voice-activity`, API method: `detectVoiceActiv
385
390
 
386
391
  **Silero**:
387
392
  * `silero.frameDuration`: Silero frame duration (ms). Can be `30`, `60` or `90`. Defaults to `90`
388
- * `silero.provider`: ONNX provider to use. Can be `cpu`, `dml` ([DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration - Windows only), or `cuda` (Linux only - requires [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) and [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) to be installed). Using GPU is likely to be slower than CPU due to inference being independently executed on each audio frame. Defaults to `cpu` (recommended)
393
+ * `silero.provider`: ONNX provider to use. Can be `cpu`, `dml` (Windows only, uses [DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration), or `cuda` (Linux only, requires system-wide installation of CUDA and cuDNN SDKs, see [this guide](./CUDA.md) for more detailed information). Using GPU is likely to be slower than CPU due to inference being independently executed on each audio frame. Defaults to `cpu` (recommended)
389
394
 
390
395
  ## Speech denoising
391
396
 
@@ -402,7 +407,7 @@ Applies to CLI operation: `denoise`, API method: `denoise`
402
407
 
403
408
  **NSNet2**:
404
409
  * `nsnet2.model`: can be `baseline-16khz` or `baseline-48khz`. Defaults to `baseline-48khz`
405
- * `nsnet2.provider`: ONNX execution provider (**Note**: `dml` provider seems to fail with these models). Defaults to `cpu`
410
+ * `nsnet2.provider`: ONNX execution provider. Can be `cpu`, `dml` or `cuda` (**Note**: `dml` provider seems to fail with these models). Defaults to `cpu`
406
411
  * `maxAttenuation`: maximum amount of attenuation, in decibels, applied to an FFT bin when filtering the audio frames. Defaults to `30`
407
412
 
408
413
  ## Source separation
@@ -416,7 +421,7 @@ Applies to CLI operation: `isolate`, API method: `isolate`
416
421
  **MDX-NET**:
417
422
 
418
423
  * `mdxNet.model`: model to use. Currently available models are `UVR_MDXNET_1_9703`, `UVR_MDXNET_2_9682`, `UVR_MDXNET_3_9662`, `UVR_MDXNET_KARA`, and higher quality models `UVR_MDXNET_Main` and `Kim_Vocal_2`. Defaults to `UVR_MDXNET_1_9703`
419
- * `mdxNet.provider`: ONNX execution provider to use. Can be `cpu`, `dml` ([DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration - Windows only), or `cuda` (Linux only - requires [CUDA Toolkit 12.x](https://developer.nvidia.com/cuda-downloads) and [cuDNN 9.x](https://developer.nvidia.com/cudnn-downloads) to be installed). Defaults to `dml` if available (Windows) or `cpu` (other platforms)
424
+ * `mdxNet.provider`: ONNX execution provider to use. Can be `cpu`, `dml` (Windows only, uses [DirectML](https://microsoft.github.io/DirectML/)-based GPU acceleration), or `cuda` (Linux only, requires system-wide installation of CUDA and cuDNN SDKs, see [this guide](./CUDA.md) for more detailed information). Defaults to `dml` if available (Windows) or `cpu` (other platforms)
420
425
 
421
426
  # Common options
422
427
 
package/docs/Tasklist.md CHANGED
@@ -118,7 +118,6 @@
118
118
  * When `splitToSentences` is set to `false`, the timeline doesn't include proper sentences. Find a way to pass larger sections to the TTS, but still have proper sentences in the timeline
119
119
 
120
120
  ### Synthesis / preprocessing
121
- * Extend the heteronyms JSON document with additional words like "conducts", "survey", "protest", "transport", "abuse", "combat", "combats", "affect", "contest", "detail", "marked", "contrast", "construct", "constructs", "console", "recall", "permit", "permits", "prospect", "prospects", "proceed", "proceeds", "invite", "reject", "deserts", "transcript", "transcripts", "compact", "impact", "impacts", "estimate"
122
121
  * Full date normalization (e.g. `21 August 2023`, `21 Aug 2023`, `August 21, 2023`)
123
122
  * Add support for capitalized-only rules, and possibly also all uppercase / all lowercase rules
124
123
  * Add support for multiple words in `precededBy` and `succeededBy`