speechflow 2.0.0 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +4 -4
  3. package/package.json +4 -4
  4. package/speechflow-cli/dst/speechflow-main-api.js.map +1 -1
  5. package/speechflow-cli/dst/speechflow-main-cli.js +1 -0
  6. package/speechflow-cli/dst/speechflow-main-cli.js.map +1 -1
  7. package/speechflow-cli/dst/speechflow-main-graph.js +2 -4
  8. package/speechflow-cli/dst/speechflow-main-graph.js.map +1 -1
  9. package/speechflow-cli/dst/speechflow-main-nodes.js +1 -0
  10. package/speechflow-cli/dst/speechflow-main-nodes.js.map +1 -1
  11. package/speechflow-cli/dst/speechflow-node-a2a-compressor-wt.js +1 -0
  12. package/speechflow-cli/dst/speechflow-node-a2a-compressor-wt.js.map +1 -1
  13. package/speechflow-cli/dst/speechflow-node-a2a-compressor.js +7 -9
  14. package/speechflow-cli/dst/speechflow-node-a2a-compressor.js.map +1 -1
  15. package/speechflow-cli/dst/speechflow-node-a2a-expander-wt.js +1 -0
  16. package/speechflow-cli/dst/speechflow-node-a2a-expander-wt.js.map +1 -1
  17. package/speechflow-cli/dst/speechflow-node-a2a-expander.js +8 -9
  18. package/speechflow-cli/dst/speechflow-node-a2a-expander.js.map +1 -1
  19. package/speechflow-cli/dst/speechflow-node-a2a-filler.js +2 -0
  20. package/speechflow-cli/dst/speechflow-node-a2a-filler.js.map +1 -1
  21. package/speechflow-cli/dst/speechflow-node-a2a-gender.js +1 -1
  22. package/speechflow-cli/dst/speechflow-node-a2a-gender.js.map +1 -1
  23. package/speechflow-cli/dst/speechflow-node-a2a-meter.js +1 -1
  24. package/speechflow-cli/dst/speechflow-node-a2a-pitch.js +11 -9
  25. package/speechflow-cli/dst/speechflow-node-a2a-pitch.js.map +1 -1
  26. package/speechflow-cli/dst/speechflow-node-a2a-rnnoise-wt.js +1 -0
  27. package/speechflow-cli/dst/speechflow-node-a2a-rnnoise-wt.js.map +1 -1
  28. package/speechflow-cli/dst/speechflow-node-a2a-rnnoise.js.map +1 -1
  29. package/speechflow-cli/dst/speechflow-node-a2a-speex.js +4 -2
  30. package/speechflow-cli/dst/speechflow-node-a2a-speex.js.map +1 -1
  31. package/speechflow-cli/dst/speechflow-node-a2a-vad.js +19 -22
  32. package/speechflow-cli/dst/speechflow-node-a2a-vad.js.map +1 -1
  33. package/speechflow-cli/dst/speechflow-node-a2a-wav.js +7 -0
  34. package/speechflow-cli/dst/speechflow-node-a2a-wav.js.map +1 -1
  35. package/speechflow-cli/dst/speechflow-node-a2t-amazon.d.ts +0 -1
  36. package/speechflow-cli/dst/speechflow-node-a2t-amazon.js +2 -11
  37. package/speechflow-cli/dst/speechflow-node-a2t-amazon.js.map +1 -1
  38. package/speechflow-cli/dst/speechflow-node-a2t-google.d.ts +0 -1
  39. package/speechflow-cli/dst/speechflow-node-a2t-google.js +0 -6
  40. package/speechflow-cli/dst/speechflow-node-a2t-google.js.map +1 -1
  41. package/speechflow-cli/dst/speechflow-node-a2t-openai.js +6 -1
  42. package/speechflow-cli/dst/speechflow-node-a2t-openai.js.map +1 -1
  43. package/speechflow-cli/dst/speechflow-node-t2a-amazon.d.ts +1 -1
  44. package/speechflow-cli/dst/speechflow-node-t2a-amazon.js +27 -7
  45. package/speechflow-cli/dst/speechflow-node-t2a-amazon.js.map +1 -1
  46. package/speechflow-cli/dst/speechflow-node-t2a-elevenlabs.d.ts +1 -1
  47. package/speechflow-cli/dst/speechflow-node-t2a-elevenlabs.js +5 -3
  48. package/speechflow-cli/dst/speechflow-node-t2a-elevenlabs.js.map +1 -1
  49. package/speechflow-cli/dst/speechflow-node-t2a-google.js +1 -4
  50. package/speechflow-cli/dst/speechflow-node-t2a-google.js.map +1 -1
  51. package/speechflow-cli/dst/speechflow-node-t2a-kokoro.d.ts +1 -1
  52. package/speechflow-cli/dst/speechflow-node-t2a-kokoro.js +27 -6
  53. package/speechflow-cli/dst/speechflow-node-t2a-kokoro.js.map +1 -1
  54. package/speechflow-cli/dst/speechflow-node-t2a-openai.js +1 -4
  55. package/speechflow-cli/dst/speechflow-node-t2a-openai.js.map +1 -1
  56. package/speechflow-cli/dst/speechflow-node-t2a-supertonic.d.ts +2 -3
  57. package/speechflow-cli/dst/speechflow-node-t2a-supertonic.js +97 -459
  58. package/speechflow-cli/dst/speechflow-node-t2a-supertonic.js.map +1 -1
  59. package/speechflow-cli/dst/speechflow-node-t2t-amazon.js +0 -2
  60. package/speechflow-cli/dst/speechflow-node-t2t-amazon.js.map +1 -1
  61. package/speechflow-cli/dst/speechflow-node-t2t-deepl.js.map +1 -1
  62. package/speechflow-cli/dst/speechflow-node-t2t-google.js.map +1 -1
  63. package/speechflow-cli/dst/speechflow-node-t2t-opus.js +18 -16
  64. package/speechflow-cli/dst/speechflow-node-t2t-opus.js.map +1 -1
  65. package/speechflow-cli/dst/speechflow-node-t2t-punctuation.js +2 -3
  66. package/speechflow-cli/dst/speechflow-node-t2t-punctuation.js.map +1 -1
  67. package/speechflow-cli/dst/speechflow-node-t2t-spellcheck.js +2 -3
  68. package/speechflow-cli/dst/speechflow-node-t2t-spellcheck.js.map +1 -1
  69. package/speechflow-cli/dst/speechflow-node-t2t-subtitle.js +5 -2
  70. package/speechflow-cli/dst/speechflow-node-t2t-subtitle.js.map +1 -1
  71. package/speechflow-cli/dst/speechflow-node-t2t-summary.js +2 -3
  72. package/speechflow-cli/dst/speechflow-node-t2t-summary.js.map +1 -1
  73. package/speechflow-cli/dst/speechflow-node-t2t-translate.js +1 -2
  74. package/speechflow-cli/dst/speechflow-node-t2t-translate.js.map +1 -1
  75. package/speechflow-cli/dst/speechflow-node-x2x-filter.js +2 -0
  76. package/speechflow-cli/dst/speechflow-node-x2x-filter.js.map +1 -1
  77. package/speechflow-cli/dst/speechflow-node-xio-exec.js +1 -0
  78. package/speechflow-cli/dst/speechflow-node-xio-exec.js.map +1 -1
  79. package/speechflow-cli/dst/speechflow-node-xio-file.js +3 -5
  80. package/speechflow-cli/dst/speechflow-node-xio-file.js.map +1 -1
  81. package/speechflow-cli/dst/speechflow-node-xio-mqtt.js.map +1 -1
  82. package/speechflow-cli/dst/speechflow-node-xio-vban.js.map +1 -1
  83. package/speechflow-cli/dst/speechflow-node-xio-webrtc.js +2 -0
  84. package/speechflow-cli/dst/speechflow-node-xio-webrtc.js.map +1 -1
  85. package/speechflow-cli/dst/speechflow-node-xio-websocket.js +9 -9
  86. package/speechflow-cli/dst/speechflow-node-xio-websocket.js.map +1 -1
  87. package/speechflow-cli/dst/speechflow-util-audio.js +4 -0
  88. package/speechflow-cli/dst/speechflow-util-audio.js.map +1 -1
  89. package/speechflow-cli/dst/speechflow-util-llm.d.ts +0 -1
  90. package/speechflow-cli/dst/speechflow-util-llm.js +4 -8
  91. package/speechflow-cli/dst/speechflow-util-llm.js.map +1 -1
  92. package/speechflow-cli/dst/speechflow-util-queue.js +2 -1
  93. package/speechflow-cli/dst/speechflow-util-queue.js.map +1 -1
  94. package/speechflow-cli/dst/speechflow-util.js +1 -0
  95. package/speechflow-cli/dst/speechflow-util.js.map +1 -1
  96. package/speechflow-cli/dst/test.d.ts +1 -0
  97. package/speechflow-cli/dst/test.js +18 -0
  98. package/speechflow-cli/dst/test.js.map +1 -0
  99. package/speechflow-cli/etc/oxlint.jsonc +3 -1
  100. package/speechflow-cli/package.json +16 -16
  101. package/speechflow-cli/src/speechflow-main-api.ts +16 -16
  102. package/speechflow-cli/src/speechflow-main-cli.ts +1 -0
  103. package/speechflow-cli/src/speechflow-main-graph.ts +7 -9
  104. package/speechflow-cli/src/speechflow-main-nodes.ts +1 -0
  105. package/speechflow-cli/src/speechflow-node-a2a-compressor-wt.ts +1 -0
  106. package/speechflow-cli/src/speechflow-node-a2a-compressor.ts +8 -10
  107. package/speechflow-cli/src/speechflow-node-a2a-expander-wt.ts +1 -0
  108. package/speechflow-cli/src/speechflow-node-a2a-expander.ts +9 -10
  109. package/speechflow-cli/src/speechflow-node-a2a-filler.ts +2 -0
  110. package/speechflow-cli/src/speechflow-node-a2a-gender.ts +3 -3
  111. package/speechflow-cli/src/speechflow-node-a2a-meter.ts +2 -2
  112. package/speechflow-cli/src/speechflow-node-a2a-pitch.ts +11 -9
  113. package/speechflow-cli/src/speechflow-node-a2a-rnnoise-wt.ts +1 -0
  114. package/speechflow-cli/src/speechflow-node-a2a-rnnoise.ts +1 -1
  115. package/speechflow-cli/src/speechflow-node-a2a-speex.ts +5 -3
  116. package/speechflow-cli/src/speechflow-node-a2a-vad.ts +20 -23
  117. package/speechflow-cli/src/speechflow-node-a2a-wav.ts +7 -0
  118. package/speechflow-cli/src/speechflow-node-a2t-amazon.ts +6 -18
  119. package/speechflow-cli/src/speechflow-node-a2t-google.ts +4 -11
  120. package/speechflow-cli/src/speechflow-node-a2t-openai.ts +12 -7
  121. package/speechflow-cli/src/speechflow-node-t2a-amazon.ts +32 -10
  122. package/speechflow-cli/src/speechflow-node-t2a-elevenlabs.ts +6 -4
  123. package/speechflow-cli/src/speechflow-node-t2a-google.ts +1 -4
  124. package/speechflow-cli/src/speechflow-node-t2a-kokoro.ts +33 -10
  125. package/speechflow-cli/src/speechflow-node-t2a-openai.ts +1 -4
  126. package/speechflow-cli/src/speechflow-node-t2a-supertonic.ts +106 -571
  127. package/speechflow-cli/src/speechflow-node-t2t-amazon.ts +1 -3
  128. package/speechflow-cli/src/speechflow-node-t2t-deepl.ts +2 -2
  129. package/speechflow-cli/src/speechflow-node-t2t-google.ts +1 -1
  130. package/speechflow-cli/src/speechflow-node-t2t-opus.ts +19 -18
  131. package/speechflow-cli/src/speechflow-node-t2t-punctuation.ts +2 -3
  132. package/speechflow-cli/src/speechflow-node-t2t-spellcheck.ts +2 -3
  133. package/speechflow-cli/src/speechflow-node-t2t-subtitle.ts +5 -2
  134. package/speechflow-cli/src/speechflow-node-t2t-summary.ts +2 -3
  135. package/speechflow-cli/src/speechflow-node-t2t-translate.ts +1 -2
  136. package/speechflow-cli/src/speechflow-node-x2x-filter.ts +2 -0
  137. package/speechflow-cli/src/speechflow-node-xio-exec.ts +1 -0
  138. package/speechflow-cli/src/speechflow-node-xio-file.ts +3 -5
  139. package/speechflow-cli/src/speechflow-node-xio-mqtt.ts +2 -2
  140. package/speechflow-cli/src/speechflow-node-xio-vban.ts +5 -5
  141. package/speechflow-cli/src/speechflow-node-xio-webrtc.ts +2 -0
  142. package/speechflow-cli/src/speechflow-node-xio-websocket.ts +9 -9
  143. package/speechflow-cli/src/speechflow-util-audio.ts +5 -0
  144. package/speechflow-cli/src/speechflow-util-llm.ts +4 -9
  145. package/speechflow-cli/src/speechflow-util-queue.ts +4 -4
  146. package/speechflow-cli/src/speechflow-util.ts +1 -0
  147. package/speechflow-ui-db/dst/index.js +14 -14
  148. package/speechflow-ui-db/package.json +6 -6
  149. package/speechflow-ui-st/dst/index.js +32 -32
  150. package/speechflow-ui-st/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"speechflow-util-queue.js","sourceRoot":"","sources":["../src/speechflow-util-queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"speechflow-util-queue.js","sourceRoot":"","sources":["../src/speechflow-util-queue.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
19
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
+ /* re-export utility modules */
22
23
  __exportStar(require("./speechflow-util-audio"), exports);
23
24
  __exportStar(require("./speechflow-util-error"), exports);
24
25
  __exportStar(require("./speechflow-util-stream"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"speechflow-util.js","sourceRoot":"","sources":["../src/speechflow-util.ts"],"names":[],"mappings":";AAAA;;;;EAIE;;;;;;;;;;;;;;;;AAEF,0DAAuC;AACvC,0DAAuC;AACvC,2DAAwC;AACxC,0DAAuC;AACvC,yDAAsC;AACtC,wDAAqC"}
1
+ {"version":3,"file":"speechflow-util.js","sourceRoot":"","sources":["../src/speechflow-util.ts"],"names":[],"mappings":";AAAA;;;;EAIE;;;;;;;;;;;;;;;;AAEF,iCAAiC;AACjC,0DAAuC;AACvC,0DAAuC;AACvC,2DAAwC;AACxC,0DAAuC;AACvC,yDAAsC;AACtC,wDAAqC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const speechflow_util_llm_ts_1 = require("./speechflow-util-llm.ts");
4
+ (async () => {
5
+ const llm = new speechflow_util_llm_ts_1.LLM({
6
+ provider: "anthropic",
7
+ key: ""
8
+ });
9
+ await llm.open();
10
+ const response = await llm.complete({
11
+ prompt: "What is 2+3?"
12
+ });
13
+ console.log(response);
14
+ await llm.close();
15
+ })().catch((err) => {
16
+ console.log("ERROR", err);
17
+ });
18
+ //# sourceMappingURL=test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":";;AACA,qEAEC;AAAA,CAAC,KAAK,IAAI,EAAE;IACT,MAAM,GAAG,GAAG,IAAI,4BAAG,CAAC;QAChB,QAAQ,EAAE,WAAW;QACrB,GAAG,EAAE,EAAE;KACV,CAAC,CAAA;IACF,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;IAChB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC;QAChC,MAAM,EAAE,cAAc;KACzB,CAAC,CAAA;IACF,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACrB,MAAM,GAAG,CAAC,KAAK,EAAE,CAAA;AACrB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACf,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;AAC7B,CAAC,CAAC,CAAA"}
@@ -127,7 +127,9 @@
127
127
  "prefer-top-level-await": "off",
128
128
  "no-process-env": "off",
129
129
  "no-warning-comments": "off",
130
- "no-array-callback-reference": "off"
130
+ "no-array-callback-reference": "off",
131
+ "capitalized-comments": "off",
132
+ "no-inline-comments": "off"
131
133
  }
132
134
  }
133
135
 
@@ -22,17 +22,17 @@
22
22
  "@gpeng/naudiodon": "2.4.1",
23
23
  "execa": "9.6.1",
24
24
  "shell-parser": "1.0.0",
25
- "@deepgram/sdk": "4.11.2",
25
+ "@deepgram/sdk": "4.11.3",
26
26
  "deepl-node": "1.24.0",
27
- "@elevenlabs/elevenlabs-js": "2.27.0",
27
+ "@elevenlabs/elevenlabs-js": "2.28.0",
28
28
  "get-stream": "9.0.1",
29
29
  "@dotenvx/dotenvx": "1.51.2",
30
30
  "speex-resampler": "3.0.1",
31
31
  "@sapphi-red/speex-preprocess-wasm": "0.4.0",
32
32
  "@shiguredo/rnnoise-wasm": "2025.1.5",
33
- "@aws-sdk/client-transcribe-streaming": "3.948.0",
34
- "@aws-sdk/client-translate": "3.948.0",
35
- "@aws-sdk/client-polly": "3.948.0",
33
+ "@aws-sdk/client-transcribe-streaming": "3.956.0",
34
+ "@aws-sdk/client-translate": "3.956.0",
35
+ "@aws-sdk/client-polly": "3.956.0",
36
36
  "@google-cloud/translate": "9.3.0",
37
37
  "@google-cloud/speech": "7.2.1",
38
38
  "@google-cloud/text-to-speech": "6.4.0",
@@ -40,8 +40,8 @@
40
40
  "object-path": "0.11.8",
41
41
  "glob": "13.0.0",
42
42
  "ws": "8.18.3",
43
- "bufferutil": "4.0.9",
44
- "utf-8-validate": "6.0.5",
43
+ "bufferutil": "4.1.0",
44
+ "utf-8-validate": "6.0.6",
45
45
  "@hapi/hapi": "21.4.4",
46
46
  "@hapi/boom": "10.0.1",
47
47
  "@hapi/inert": "7.1.0",
@@ -49,9 +49,9 @@
49
49
  "hapi-plugin-websocket": "2.4.11",
50
50
  "@opensumi/reconnecting-websocket": "4.4.0",
51
51
  "ollama": "0.6.3",
52
- "openai": "6.10.0",
52
+ "openai": "6.15.0",
53
53
  "@anthropic-ai/sdk": "0.71.2",
54
- "@google/genai": "1.33.0",
54
+ "@google/genai": "1.34.0",
55
55
  "@rse/ffmpeg": "1.4.2",
56
56
  "ffmpeg-stream": "1.0.1",
57
57
  "installed-packages": "1.0.13",
@@ -79,7 +79,7 @@
79
79
  "@soundtouchjs/audio-worklet": "0.2.1",
80
80
  "werift": "0.22.2",
81
81
  "@discordjs/opus": "0.10.0",
82
- "@rse/stx": "1.1.2"
82
+ "@rse/stx": "1.1.3"
83
83
  },
84
84
  "devDependencies": {
85
85
  "eslint": "9.39.2",
@@ -88,11 +88,11 @@
88
88
  "eslint-plugin-promise": "7.2.1",
89
89
  "eslint-plugin-import": "2.32.0",
90
90
  "eslint-plugin-node": "11.1.0",
91
- "typescript-eslint": "8.49.0",
92
- "@typescript-eslint/eslint-plugin": "8.49.0",
93
- "@typescript-eslint/parser": "8.49.0",
94
- "oxlint": "1.32.0",
95
- "eslint-plugin-oxlint": "1.32.0",
91
+ "typescript-eslint": "8.50.0",
92
+ "@typescript-eslint/eslint-plugin": "8.50.0",
93
+ "@typescript-eslint/parser": "8.50.0",
94
+ "oxlint": "1.34.0",
95
+ "eslint-plugin-oxlint": "1.34.0",
96
96
  "@biomejs/biome": "2.0.6",
97
97
  "eslint-config-biome": "2.1.3",
98
98
 
@@ -117,7 +117,7 @@
117
117
  "cross-env": "10.1.0"
118
118
  },
119
119
  "overrides": {
120
- "@huggingface/transformers": { "onnxruntime-node": "1.23.2" }
120
+ "@huggingface/transformers": { "onnxruntime-node": "1.22.0" }
121
121
  },
122
122
  "upd": [
123
123
  "!@biomejs/biome",
@@ -5,24 +5,24 @@
5
5
  */
6
6
 
7
7
  /* standard dependencies */
8
- import path from "node:path"
9
- import http from "node:http"
8
+ import path from "node:path"
9
+ import http from "node:http"
10
10
 
11
11
  /* external dependencies */
12
- import * as HAPI from "@hapi/hapi"
13
- import Inert from "@hapi/inert"
14
- import WebSocket from "ws"
15
- import HAPIWebSocket from "hapi-plugin-websocket"
16
- import HAPIHeader from "hapi-plugin-header"
17
- import OSC from "osc-js"
18
- import * as arktype from "arktype"
19
- import CLIio from "cli-io"
12
+ import * as HAPI from "@hapi/hapi"
13
+ import Inert from "@hapi/inert"
14
+ import WebSocket from "ws"
15
+ import HAPIWebSocket from "hapi-plugin-websocket"
16
+ import HAPIHeader from "hapi-plugin-header"
17
+ import OSC from "osc-js"
18
+ import * as arktype from "arktype"
19
+ import CLIio from "cli-io"
20
20
 
21
21
  /* internal dependencies */
22
- import * as util from "./speechflow-util"
23
- import { CLIOptions } from "./speechflow-main-cli"
24
- import { NodeGraph } from "./speechflow-main-graph"
25
- import pkg from "../../package.json"
22
+ import * as util from "./speechflow-util"
23
+ import { CLIOptions } from "./speechflow-main-cli"
24
+ import { NodeGraph } from "./speechflow-main-graph"
25
+ import pkg from "../../package.json"
26
26
 
27
27
  /* internal helper type definitions */
28
28
  type WSPeerInfo = {
@@ -34,8 +34,8 @@ type WSPeerInfo = {
34
34
  /* Application Programming Interface (API) server management class */
35
35
  export class APIServer {
36
36
  /* internal state */
37
- private wsPeers = new Map<string, WSPeerInfo>()
38
- private hapi: HAPI.Server | null = null
37
+ private wsPeers = new Map<string, WSPeerInfo>()
38
+ private hapi: HAPI.Server | null = null
39
39
  private sendOSC: ((url: string, ...args: any[]) => void) | null = null
40
40
 
41
41
  /* creation */
@@ -36,6 +36,7 @@ export interface CLIOptions {
36
36
  _: (string | number)[]
37
37
  }
38
38
 
39
+ /* CLI context class */
39
40
  export class CLIContext {
40
41
  public cli: CLIio | null = null
41
42
  public args: CLIOptions | null = null
@@ -24,15 +24,15 @@ import * as util from "./speechflow-util"
24
24
  /* the SpeechFlow node graph management */
25
25
  export class NodeGraph {
26
26
  /* internal state */
27
- private graphNodes = new Set<SpeechFlowNode>()
28
- private activeNodes = new Set<SpeechFlowNode>()
29
- private finishEvents = new EventEmitter()
27
+ private graphNodes = new Set<SpeechFlowNode>()
28
+ private activeNodes = new Set<SpeechFlowNode>()
29
+ private finishEvents = new EventEmitter()
30
30
  private timeZero: DateTime | null = null
31
- private shuttingDown = false
31
+ private shuttingDown = false
32
32
 
33
33
  /* simple construction */
34
34
  constructor (
35
- private cli: CLIio,
35
+ private cli: CLIio,
36
36
  private debug = false
37
37
  ) {}
38
38
 
@@ -59,6 +59,7 @@ export class NodeGraph {
59
59
  err instanceof Error && err.name === "FlowLinkError"
60
60
  ? err.toString() : (err instanceof Error ? err.message : "internal error")
61
61
 
62
+ /* instantiate FlowLink parser */
62
63
  const flowlink = new FlowLink<SpeechFlowNode>({
63
64
  trace: (msg: string) => {
64
65
  this.cli.log("debug", msg)
@@ -97,10 +98,7 @@ export class NodeGraph {
97
98
  }
98
99
  catch (err) {
99
100
  /* fatal error */
100
- if (err instanceof Error)
101
- this.cli.log("error", `creation of node <${id}> failed: ${err.message}`)
102
- else
103
- this.cli.log("error", `creation of node <${id}> failed: ${err}`)
101
+ this.cli.log("error", `creation of node <${id}> failed: ${util.ensureError(err).message}`)
104
102
  process.exit(1)
105
103
  }
106
104
  const params = Object.keys(node.params).map((key) => {
@@ -16,6 +16,7 @@ import SpeechFlowNode from "./speechflow-node"
16
16
  export class NodeRegistry {
17
17
  public nodes: { [ id: string ]: typeof SpeechFlowNode } = {}
18
18
 
19
+ /* simple constructor */
19
20
  constructor (
20
21
  private cli: CLIio
21
22
  ) {}
@@ -4,6 +4,7 @@
4
4
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
5
5
  */
6
6
 
7
+ /* internal dependencies */
7
8
  import * as util from "./speechflow-util"
8
9
 
9
10
  /* downward compressor with soft knee */
@@ -36,7 +36,7 @@ class AudioCompressor extends util.WebAudio {
36
36
  private gainNode: GainNode | null = null
37
37
 
38
38
  /* construct object */
39
- constructor(
39
+ constructor (
40
40
  sampleRate: number,
41
41
  channels: number,
42
42
  type: "standalone" | "sidechain" = "standalone",
@@ -106,8 +106,7 @@ class AudioCompressor extends util.WebAudio {
106
106
  /* configure compressor worklet node */
107
107
  const currentTime = this.audioContext.currentTime
108
108
  if (needsCompressor) {
109
- const node = this.compressorNode!
110
- const params = node.parameters as Map<string, AudioParam>
109
+ const params = this.compressorNode!.parameters as Map<string, AudioParam>
111
110
  params.get("threshold")!.setValueAtTime(this.config.thresholdDb, currentTime)
112
111
  params.get("ratio")!.setValueAtTime(this.config.ratio, currentTime)
113
112
  params.get("attack")!.setValueAtTime(this.config.attackMs / 1000, currentTime)
@@ -241,10 +240,12 @@ export default class SpeechFlowNodeA2ACompressor extends SpeechFlowNode {
241
240
  }
242
241
  if (!Buffer.isBuffer(chunk.payload))
243
242
  callback(new Error("invalid chunk payload type"))
243
+ else if (self.compressor === null)
244
+ callback(new Error("compressor not initialized"))
244
245
  else {
245
246
  /* compress chunk */
246
247
  const payload = util.convertBufToI16(chunk.payload)
247
- self.compressor?.process(payload).then((result) => {
248
+ self.compressor.process(payload).then((result) => {
248
249
  if (self.closing) {
249
250
  callback(new Error("stream already destroyed"))
250
251
  return
@@ -258,17 +259,14 @@ export default class SpeechFlowNodeA2ACompressor extends SpeechFlowNode {
258
259
  this.push(chunk)
259
260
  callback()
260
261
  }).catch((error: unknown) => {
261
- if (!self.closing)
262
+ if (self.closing)
263
+ callback()
264
+ else
262
265
  callback(util.ensureError(error, "compression failed"))
263
266
  })
264
267
  }
265
268
  },
266
269
  final (callback) {
267
- if (self.closing) {
268
- callback()
269
- return
270
- }
271
- this.push(null)
272
270
  callback()
273
271
  }
274
272
  })
@@ -4,6 +4,7 @@
4
4
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
5
5
  */
6
6
 
7
+ /* internal dependencies */
7
8
  import * as util from "./speechflow-util"
8
9
 
9
10
  /* downward expander with soft knee */
@@ -33,7 +33,7 @@ class AudioExpander extends util.WebAudio {
33
33
  private expanderNode: AudioWorkletNode | null = null
34
34
 
35
35
  /* construct object */
36
- constructor(
36
+ constructor (
37
37
  sampleRate: number,
38
38
  channels: number,
39
39
  config: AudioExpanderConfig = {}
@@ -71,8 +71,7 @@ class AudioExpander extends util.WebAudio {
71
71
 
72
72
  /* configure expander node */
73
73
  const currentTime = this.audioContext.currentTime
74
- const node = this.expanderNode!
75
- const params = node.parameters as Map<string, AudioParam>
74
+ const params = this.expanderNode.parameters as Map<string, AudioParam>
76
75
  params.get("threshold")!.setValueAtTime(this.config.thresholdDb, currentTime)
77
76
  params.get("floor")!.setValueAtTime(this.config.floorDb, currentTime)
78
77
  params.get("ratio")!.setValueAtTime(this.config.ratio, currentTime)
@@ -86,6 +85,7 @@ class AudioExpander extends util.WebAudio {
86
85
  this.expanderNode.connect(this.captureNode!)
87
86
  }
88
87
 
88
+ /* destroy object */
89
89
  public async destroy (): Promise<void> {
90
90
  /* destroy expander node */
91
91
  if (this.expanderNode !== null) {
@@ -164,10 +164,12 @@ export default class SpeechFlowNodeA2AExpander extends SpeechFlowNode {
164
164
  }
165
165
  if (!Buffer.isBuffer(chunk.payload))
166
166
  callback(new Error("invalid chunk payload type"))
167
+ else if (self.expander === null)
168
+ callback(new Error("expander not initialized"))
167
169
  else {
168
170
  /* expand chunk */
169
171
  const payload = util.convertBufToI16(chunk.payload)
170
- self.expander?.process(payload).then((result) => {
172
+ self.expander.process(payload).then((result) => {
171
173
  if (self.closing) {
172
174
  callback(new Error("stream already destroyed"))
173
175
  return
@@ -179,17 +181,14 @@ export default class SpeechFlowNodeA2AExpander extends SpeechFlowNode {
179
181
  this.push(chunk)
180
182
  callback()
181
183
  }).catch((error: unknown) => {
182
- if (!self.closing)
184
+ if (self.closing)
185
+ callback()
186
+ else
183
187
  callback(util.ensureError(error, "expansion failed"))
184
188
  })
185
189
  }
186
190
  },
187
191
  final (callback) {
188
- if (self.closing) {
189
- callback()
190
- return
191
- }
192
- this.push(null)
193
192
  callback()
194
193
  }
195
194
  })
@@ -13,6 +13,7 @@ import { Duration } from "luxon"
13
13
  import SpeechFlowNode, { SpeechFlowChunk } from "./speechflow-node"
14
14
  import * as util from "./speechflow-util"
15
15
 
16
+ /* audio gap filler class */
16
17
  class AudioFiller extends EventEmitter {
17
18
  private emittedEndSamples = 0 /* stream position in samples already emitted */
18
19
  private maxInputEndSamples = 0
@@ -21,6 +22,7 @@ class AudioFiller extends EventEmitter {
21
22
  private readonly bytesPerFrame: number
22
23
  private readonly sampleTolerance = 0.5 /* tolerance for floating-point sample comparisons */
23
24
 
25
+ /* construct object */
24
26
  constructor (private sampleRate = 48000, private channels = 1) {
25
27
  super()
26
28
  this.bytesPerFrame = this.channels * this.bytesPerSample
@@ -134,7 +134,7 @@ export default class SpeechFlowNodeA2AGender extends SpeechFlowNode {
134
134
  throw new Error("classifier destroyed during operation")
135
135
 
136
136
  /* check volume level and return "unknown" if too low
137
- in order to avoid a wrong classificaton */
137
+ in order to avoid a wrong classification */
138
138
  const audioData = {
139
139
  sampleRate: sampleRateTarget,
140
140
  numberOfChannels: 1,
@@ -154,8 +154,8 @@ export default class SpeechFlowNodeA2AGender extends SpeechFlowNode {
154
154
  const classified = Array.isArray(result) ?
155
155
  result as Transformers.AudioClassificationOutput :
156
156
  [ result ]
157
- const c1 = classified.find((c) => c.label === "male")
158
- const c2 = classified.find((c) => c.label === "female")
157
+ const c1 = classified.find((c) => c.label === "male")
158
+ const c2 = classified.find((c) => c.label === "female")
159
159
  const male = c1 ? c1.score : 0.0
160
160
  const female = c2 ? c2.score : 0.0
161
161
  const threshold = this.params.threshold
@@ -83,7 +83,7 @@ export default class SpeechFlowNodeA2AMeter extends SpeechFlowNode {
83
83
  const chunkData = this.chunkBuffer
84
84
  this.chunkBuffer = new Float32Array(0)
85
85
 
86
- /* update internal audio sample sliding window for LUFS-S */
86
+ /* update internal audio sample sliding window for LUFS-M */
87
87
  if (chunkData.length > sampleWindow.length)
88
88
  sampleWindow.set(chunkData.subarray(chunkData.length - sampleWindow.length), 0)
89
89
  else {
@@ -218,4 +218,4 @@ export default class SpeechFlowNodeA2AMeter extends SpeechFlowNode {
218
218
  this.stream = null
219
219
  }
220
220
  }
221
- }
221
+ }
@@ -172,12 +172,16 @@ export default class SpeechFlowNodeA2APitch extends SpeechFlowNode {
172
172
  }
173
173
  if (!Buffer.isBuffer(chunk.payload))
174
174
  callback(new Error("invalid chunk payload type"))
175
+ else if (self.pitchShifter === null)
176
+ callback(new Error("pitch shifter not initialized"))
175
177
  else {
176
178
  /* shift pitch of audio chunk */
177
179
  const payload = util.convertBufToI16(chunk.payload, self.config.audioLittleEndian)
178
- self.pitchShifter?.process(payload).then((result) => {
179
- if (self.closing)
180
- throw new Error("stream already destroyed")
180
+ self.pitchShifter.process(payload).then((result) => {
181
+ if (self.closing) {
182
+ callback(new Error("stream already destroyed"))
183
+ return
184
+ }
181
185
 
182
186
  /* take over pitch-shifted data */
183
187
  const payload = util.convertI16ToBuf(result, self.config.audioLittleEndian)
@@ -185,16 +189,14 @@ export default class SpeechFlowNodeA2APitch extends SpeechFlowNode {
185
189
  this.push(chunk)
186
190
  callback()
187
191
  }).catch((error: unknown) => {
188
- callback(util.ensureError(error, "pitch shifting failed"))
192
+ if (self.closing)
193
+ callback()
194
+ else
195
+ callback(util.ensureError(error, "pitch shifting failed"))
189
196
  })
190
197
  }
191
198
  },
192
199
  final (callback) {
193
- if (self.closing) {
194
- callback()
195
- return
196
- }
197
- this.push(null)
198
200
  callback()
199
201
  }
200
202
  })
@@ -48,6 +48,7 @@ parentPort!.on("message", (msg) => {
48
48
  for (let i = 0; i < data.length; i++)
49
49
  i16[i] = Math.round(f32a[i])
50
50
 
51
+ /* send processed frame back to parent */
51
52
  parentPort!.postMessage({ type: "process-done", id, data: i16 }, [ i16.buffer ])
52
53
  }
53
54
  else if (msg.type === "close") {
@@ -93,7 +93,7 @@ export default class SpeechFlowNodeA2ARNNoise extends SpeechFlowNode {
93
93
  return segment
94
94
  const id = `${seq++}`
95
95
  return new Promise<Int16Array<ArrayBuffer>>((resolve) => {
96
- pending.set(id, (segment: Int16Array<ArrayBuffer>) => { resolve(segment) })
96
+ pending.set(id, (segment) => { resolve(segment) })
97
97
  this.worker!.postMessage({ type: "process", id, data: segment }, [ segment.buffer ])
98
98
  })
99
99
  }
@@ -32,7 +32,7 @@ export default class SpeechFlowNodeA2ASpeex extends SpeechFlowNode {
32
32
 
33
33
  /* declare node configuration parameters */
34
34
  this.configure({
35
- attenuate: { type: "number", val: -18, pos: 0, match: (n: number) => n >= -60 && n <= 0 },
35
+ attenuate: { type: "number", val: -18, pos: 0, match: (n: number) => n >= -60 && n <= 0 }
36
36
  })
37
37
 
38
38
  /* declare node input/output format */
@@ -53,7 +53,7 @@ export default class SpeechFlowNodeA2ASpeex extends SpeechFlowNode {
53
53
  const wasmBinary = await fs.promises.readFile(
54
54
  path.join(__dirname, "../node_modules/@sapphi-red/speex-preprocess-wasm/dist/speex.wasm"))
55
55
  const speexModule = await loadSpeexModule({
56
- wasmBinary: wasmBinary.buffer as ArrayBuffer
56
+ wasmBinary: wasmBinary.buffer
57
57
  })
58
58
  this.speexProcessor = new SpeexPreprocessor(
59
59
  speexModule, this.sampleSize, this.config.audioSampleRate)
@@ -85,7 +85,9 @@ export default class SpeechFlowNodeA2ASpeex extends SpeechFlowNode {
85
85
  util.processInt16ArrayInSegments(payload, self.sampleSize, (segment) => {
86
86
  if (self.closing)
87
87
  throw new Error("stream already destroyed")
88
- self.speexProcessor?.processInt16(segment)
88
+ if (self.speexProcessor === null)
89
+ throw new Error("speex processor not initialized")
90
+ self.speexProcessor.processInt16(segment)
89
91
  return Promise.resolve(segment)
90
92
  }).then((payload: Int16Array<ArrayBuffer>) => {
91
93
  if (self.closing)