speechflow 2.2.1 → 2.3.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 (235) hide show
  1. package/{etc/claude.md → AGENTS.md} +8 -3
  2. package/CHANGELOG.md +70 -1
  3. package/README.md +28 -4
  4. package/etc/speechflow.yaml +3 -1
  5. package/etc/stx.conf +1 -1
  6. package/package.json +6 -6
  7. package/speechflow-cli/dst/speechflow-main-api.d.ts +2 -1
  8. package/speechflow-cli/dst/speechflow-main-api.js +57 -16
  9. package/speechflow-cli/dst/speechflow-main-api.js.map +1 -1
  10. package/speechflow-cli/dst/speechflow-main-cli.js +2 -2
  11. package/speechflow-cli/dst/speechflow-main-config.js +1 -1
  12. package/speechflow-cli/dst/speechflow-main-graph.js +55 -21
  13. package/speechflow-cli/dst/speechflow-main-graph.js.map +1 -1
  14. package/speechflow-cli/dst/speechflow-main-nodes.js +1 -1
  15. package/speechflow-cli/dst/speechflow-main-status.js +6 -3
  16. package/speechflow-cli/dst/speechflow-main-status.js.map +1 -1
  17. package/speechflow-cli/dst/speechflow-main.js +1 -1
  18. package/speechflow-cli/dst/speechflow-node-a2a-compressor-wt.js +7 -10
  19. package/speechflow-cli/dst/speechflow-node-a2a-compressor-wt.js.map +1 -1
  20. package/speechflow-cli/dst/speechflow-node-a2a-compressor.js +8 -6
  21. package/speechflow-cli/dst/speechflow-node-a2a-compressor.js.map +1 -1
  22. package/speechflow-cli/dst/speechflow-node-a2a-expander-wt.js +9 -5
  23. package/speechflow-cli/dst/speechflow-node-a2a-expander-wt.js.map +1 -1
  24. package/speechflow-cli/dst/speechflow-node-a2a-expander.js +6 -5
  25. package/speechflow-cli/dst/speechflow-node-a2a-expander.js.map +1 -1
  26. package/speechflow-cli/dst/speechflow-node-a2a-ffmpeg.js +2 -2
  27. package/speechflow-cli/dst/speechflow-node-a2a-ffmpeg.js.map +1 -1
  28. package/speechflow-cli/dst/speechflow-node-a2a-filler.js +2 -4
  29. package/speechflow-cli/dst/speechflow-node-a2a-filler.js.map +1 -1
  30. package/speechflow-cli/dst/speechflow-node-a2a-gain.js +1 -1
  31. package/speechflow-cli/dst/speechflow-node-a2a-gender.js +20 -12
  32. package/speechflow-cli/dst/speechflow-node-a2a-gender.js.map +1 -1
  33. package/speechflow-cli/dst/speechflow-node-a2a-gtcrn-wt.js +1 -1
  34. package/speechflow-cli/dst/speechflow-node-a2a-gtcrn.js +33 -11
  35. package/speechflow-cli/dst/speechflow-node-a2a-gtcrn.js.map +1 -1
  36. package/speechflow-cli/dst/speechflow-node-a2a-meter.js +1 -1
  37. package/speechflow-cli/dst/speechflow-node-a2a-mute.js +1 -1
  38. package/speechflow-cli/dst/speechflow-node-a2a-pitch.js +4 -3
  39. package/speechflow-cli/dst/speechflow-node-a2a-pitch.js.map +1 -1
  40. package/speechflow-cli/dst/speechflow-node-a2a-rnnoise-wt.js +2 -2
  41. package/speechflow-cli/dst/speechflow-node-a2a-rnnoise-wt.js.map +1 -1
  42. package/speechflow-cli/dst/speechflow-node-a2a-rnnoise.js +19 -11
  43. package/speechflow-cli/dst/speechflow-node-a2a-rnnoise.js.map +1 -1
  44. package/speechflow-cli/dst/speechflow-node-a2a-speex.js +8 -8
  45. package/speechflow-cli/dst/speechflow-node-a2a-speex.js.map +1 -1
  46. package/speechflow-cli/dst/speechflow-node-a2a-vad.js +33 -29
  47. package/speechflow-cli/dst/speechflow-node-a2a-vad.js.map +1 -1
  48. package/speechflow-cli/dst/speechflow-node-a2a-wav.js +6 -5
  49. package/speechflow-cli/dst/speechflow-node-a2a-wav.js.map +1 -1
  50. package/speechflow-cli/dst/speechflow-node-a2t-amazon.d.ts +2 -1
  51. package/speechflow-cli/dst/speechflow-node-a2t-amazon.js +34 -20
  52. package/speechflow-cli/dst/speechflow-node-a2t-amazon.js.map +1 -1
  53. package/speechflow-cli/dst/speechflow-node-a2t-deepgram.js +13 -5
  54. package/speechflow-cli/dst/speechflow-node-a2t-deepgram.js.map +1 -1
  55. package/speechflow-cli/dst/speechflow-node-a2t-google.js +3 -2
  56. package/speechflow-cli/dst/speechflow-node-a2t-google.js.map +1 -1
  57. package/speechflow-cli/dst/speechflow-node-a2t-openai.js +33 -27
  58. package/speechflow-cli/dst/speechflow-node-a2t-openai.js.map +1 -1
  59. package/speechflow-cli/dst/speechflow-node-t2a-amazon.js +16 -5
  60. package/speechflow-cli/dst/speechflow-node-t2a-amazon.js.map +1 -1
  61. package/speechflow-cli/dst/speechflow-node-t2a-elevenlabs.js +17 -5
  62. package/speechflow-cli/dst/speechflow-node-t2a-elevenlabs.js.map +1 -1
  63. package/speechflow-cli/dst/speechflow-node-t2a-google.js +17 -5
  64. package/speechflow-cli/dst/speechflow-node-t2a-google.js.map +1 -1
  65. package/speechflow-cli/dst/speechflow-node-t2a-kitten.d.ts +15 -0
  66. package/speechflow-cli/dst/speechflow-node-t2a-kitten.js +194 -0
  67. package/speechflow-cli/dst/speechflow-node-t2a-kitten.js.map +1 -0
  68. package/speechflow-cli/dst/speechflow-node-t2a-kokoro.js +21 -9
  69. package/speechflow-cli/dst/speechflow-node-t2a-kokoro.js.map +1 -1
  70. package/speechflow-cli/dst/speechflow-node-t2a-openai.js +17 -5
  71. package/speechflow-cli/dst/speechflow-node-t2a-openai.js.map +1 -1
  72. package/speechflow-cli/dst/speechflow-node-t2a-supertonic.js +21 -7
  73. package/speechflow-cli/dst/speechflow-node-t2a-supertonic.js.map +1 -1
  74. package/speechflow-cli/dst/speechflow-node-t2t-amazon.js +1 -1
  75. package/speechflow-cli/dst/speechflow-node-t2t-deepl.js +1 -1
  76. package/speechflow-cli/dst/speechflow-node-t2t-format.js +1 -1
  77. package/speechflow-cli/dst/speechflow-node-t2t-google.js +4 -2
  78. package/speechflow-cli/dst/speechflow-node-t2t-google.js.map +1 -1
  79. package/speechflow-cli/dst/speechflow-node-t2t-modify.js +1 -1
  80. package/speechflow-cli/dst/speechflow-node-t2t-opus.js +1 -1
  81. package/speechflow-cli/dst/speechflow-node-t2t-profanity.js +1 -1
  82. package/speechflow-cli/dst/speechflow-node-t2t-punctuation.js +1 -1
  83. package/speechflow-cli/dst/speechflow-node-t2t-sentence.js +1 -1
  84. package/speechflow-cli/dst/speechflow-node-t2t-spellcheck.js +1 -1
  85. package/speechflow-cli/dst/speechflow-node-t2t-subtitle.js +34 -14
  86. package/speechflow-cli/dst/speechflow-node-t2t-subtitle.js.map +1 -1
  87. package/speechflow-cli/dst/speechflow-node-t2t-summary.js +3 -3
  88. package/speechflow-cli/dst/speechflow-node-t2t-summary.js.map +1 -1
  89. package/speechflow-cli/dst/speechflow-node-t2t-translate.js +1 -1
  90. package/speechflow-cli/dst/speechflow-node-x2x-filter.js +3 -2
  91. package/speechflow-cli/dst/speechflow-node-x2x-filter.js.map +1 -1
  92. package/speechflow-cli/dst/speechflow-node-x2x-trace.js +1 -1
  93. package/speechflow-cli/dst/speechflow-node-xio-device.js +18 -7
  94. package/speechflow-cli/dst/speechflow-node-xio-device.js.map +1 -1
  95. package/speechflow-cli/dst/speechflow-node-xio-exec.js +23 -11
  96. package/speechflow-cli/dst/speechflow-node-xio-exec.js.map +1 -1
  97. package/speechflow-cli/dst/speechflow-node-xio-file.js +13 -7
  98. package/speechflow-cli/dst/speechflow-node-xio-file.js.map +1 -1
  99. package/speechflow-cli/dst/speechflow-node-xio-mqtt.js +25 -12
  100. package/speechflow-cli/dst/speechflow-node-xio-mqtt.js.map +1 -1
  101. package/speechflow-cli/dst/speechflow-node-xio-vban.js +32 -20
  102. package/speechflow-cli/dst/speechflow-node-xio-vban.js.map +1 -1
  103. package/speechflow-cli/dst/speechflow-node-xio-webrtc.js +78 -62
  104. package/speechflow-cli/dst/speechflow-node-xio-webrtc.js.map +1 -1
  105. package/speechflow-cli/dst/speechflow-node-xio-websocket.d.ts +1 -0
  106. package/speechflow-cli/dst/speechflow-node-xio-websocket.js +63 -18
  107. package/speechflow-cli/dst/speechflow-node-xio-websocket.js.map +1 -1
  108. package/speechflow-cli/dst/speechflow-node.js +5 -7
  109. package/speechflow-cli/dst/speechflow-node.js.map +1 -1
  110. package/speechflow-cli/dst/speechflow-util-audio-wt.js +31 -5
  111. package/speechflow-cli/dst/speechflow-util-audio-wt.js.map +1 -1
  112. package/speechflow-cli/dst/speechflow-util-audio.d.ts +1 -1
  113. package/speechflow-cli/dst/speechflow-util-audio.js +25 -14
  114. package/speechflow-cli/dst/speechflow-util-audio.js.map +1 -1
  115. package/speechflow-cli/dst/speechflow-util-error.d.ts +1 -1
  116. package/speechflow-cli/dst/speechflow-util-error.js +2 -2
  117. package/speechflow-cli/dst/speechflow-util-error.js.map +1 -1
  118. package/speechflow-cli/dst/speechflow-util-llm.js +1 -1
  119. package/speechflow-cli/dst/speechflow-util-misc.d.ts +3 -2
  120. package/speechflow-cli/dst/speechflow-util-misc.js +63 -6
  121. package/speechflow-cli/dst/speechflow-util-misc.js.map +1 -1
  122. package/speechflow-cli/dst/speechflow-util-queue.d.ts +5 -17
  123. package/speechflow-cli/dst/speechflow-util-queue.js +57 -78
  124. package/speechflow-cli/dst/speechflow-util-queue.js.map +1 -1
  125. package/speechflow-cli/dst/speechflow-util-stream.d.ts +1 -1
  126. package/speechflow-cli/dst/speechflow-util-stream.js +35 -8
  127. package/speechflow-cli/dst/speechflow-util-stream.js.map +1 -1
  128. package/speechflow-cli/dst/speechflow-util.js +1 -1
  129. package/speechflow-cli/dst/speechflow.d.ts +1 -1
  130. package/speechflow-cli/dst/speechflow.js +1 -1
  131. package/speechflow-cli/etc/eslint.mjs +1 -1
  132. package/speechflow-cli/etc/oxlint.jsonc +2 -1
  133. package/speechflow-cli/etc/stx.conf +8 -2
  134. package/speechflow-cli/package.d/@ericedouard+vad-node-realtime+0.2.0.patch +2 -1
  135. package/speechflow-cli/package.d/@typescript-eslint+typescript-estree+8.57.2.patch +12 -0
  136. package/speechflow-cli/package.d/kitten-tts-js+0.1.2.patch +24 -0
  137. package/speechflow-cli/package.d/speex-resampler+3.0.1.patch +56 -0
  138. package/speechflow-cli/package.json +40 -30
  139. package/speechflow-cli/src/lib.d.ts +19 -1
  140. package/speechflow-cli/src/speechflow-main-api.ts +64 -19
  141. package/speechflow-cli/src/speechflow-main-cli.ts +2 -2
  142. package/speechflow-cli/src/speechflow-main-config.ts +1 -1
  143. package/speechflow-cli/src/speechflow-main-graph.ts +56 -22
  144. package/speechflow-cli/src/speechflow-main-nodes.ts +1 -1
  145. package/speechflow-cli/src/speechflow-main-status.ts +6 -3
  146. package/speechflow-cli/src/speechflow-main.ts +1 -1
  147. package/speechflow-cli/src/speechflow-node-a2a-compressor-wt.ts +7 -11
  148. package/speechflow-cli/src/speechflow-node-a2a-compressor.ts +8 -6
  149. package/speechflow-cli/src/speechflow-node-a2a-expander-wt.ts +10 -5
  150. package/speechflow-cli/src/speechflow-node-a2a-expander.ts +6 -5
  151. package/speechflow-cli/src/speechflow-node-a2a-ffmpeg.ts +3 -2
  152. package/speechflow-cli/src/speechflow-node-a2a-filler.ts +2 -4
  153. package/speechflow-cli/src/speechflow-node-a2a-gain.ts +1 -1
  154. package/speechflow-cli/src/speechflow-node-a2a-gender.ts +20 -13
  155. package/speechflow-cli/src/speechflow-node-a2a-gtcrn-wt.ts +1 -1
  156. package/speechflow-cli/src/speechflow-node-a2a-gtcrn.ts +43 -16
  157. package/speechflow-cli/src/speechflow-node-a2a-meter.ts +1 -1
  158. package/speechflow-cli/src/speechflow-node-a2a-mute.ts +1 -1
  159. package/speechflow-cli/src/speechflow-node-a2a-pitch.ts +4 -3
  160. package/speechflow-cli/src/speechflow-node-a2a-rnnoise-wt.ts +2 -2
  161. package/speechflow-cli/src/speechflow-node-a2a-rnnoise.ts +24 -12
  162. package/speechflow-cli/src/speechflow-node-a2a-speex.ts +10 -9
  163. package/speechflow-cli/src/speechflow-node-a2a-vad.ts +38 -31
  164. package/speechflow-cli/src/speechflow-node-a2a-wav.ts +6 -5
  165. package/speechflow-cli/src/speechflow-node-a2t-amazon.ts +35 -22
  166. package/speechflow-cli/src/speechflow-node-a2t-deepgram.ts +17 -6
  167. package/speechflow-cli/src/speechflow-node-a2t-google.ts +5 -4
  168. package/speechflow-cli/src/speechflow-node-a2t-openai.ts +39 -31
  169. package/speechflow-cli/src/speechflow-node-t2a-amazon.ts +16 -5
  170. package/speechflow-cli/src/speechflow-node-t2a-elevenlabs.ts +17 -5
  171. package/speechflow-cli/src/speechflow-node-t2a-google.ts +17 -5
  172. package/speechflow-cli/src/speechflow-node-t2a-kitten.ts +178 -0
  173. package/speechflow-cli/src/speechflow-node-t2a-kokoro.ts +21 -9
  174. package/speechflow-cli/src/speechflow-node-t2a-openai.ts +17 -5
  175. package/speechflow-cli/src/speechflow-node-t2a-supertonic.ts +21 -7
  176. package/speechflow-cli/src/speechflow-node-t2t-amazon.ts +1 -1
  177. package/speechflow-cli/src/speechflow-node-t2t-deepl.ts +1 -1
  178. package/speechflow-cli/src/speechflow-node-t2t-format.ts +1 -1
  179. package/speechflow-cli/src/speechflow-node-t2t-google.ts +4 -2
  180. package/speechflow-cli/src/speechflow-node-t2t-modify.ts +1 -1
  181. package/speechflow-cli/src/speechflow-node-t2t-opus.ts +1 -1
  182. package/speechflow-cli/src/speechflow-node-t2t-profanity.ts +1 -1
  183. package/speechflow-cli/src/speechflow-node-t2t-punctuation.ts +1 -1
  184. package/speechflow-cli/src/speechflow-node-t2t-sentence.ts +1 -1
  185. package/speechflow-cli/src/speechflow-node-t2t-spellcheck.ts +1 -1
  186. package/speechflow-cli/src/speechflow-node-t2t-subtitle.ts +39 -15
  187. package/speechflow-cli/src/speechflow-node-t2t-summary.ts +3 -3
  188. package/speechflow-cli/src/speechflow-node-t2t-translate.ts +1 -1
  189. package/speechflow-cli/src/speechflow-node-x2x-filter.ts +4 -3
  190. package/speechflow-cli/src/speechflow-node-x2x-trace.ts +1 -1
  191. package/speechflow-cli/src/speechflow-node-xio-device.ts +21 -7
  192. package/speechflow-cli/src/speechflow-node-xio-exec.ts +25 -11
  193. package/speechflow-cli/src/speechflow-node-xio-file.ts +15 -7
  194. package/speechflow-cli/src/speechflow-node-xio-mqtt.ts +28 -15
  195. package/speechflow-cli/src/speechflow-node-xio-vban.ts +35 -22
  196. package/speechflow-cli/src/speechflow-node-xio-webrtc.ts +85 -69
  197. package/speechflow-cli/src/speechflow-node-xio-websocket.ts +67 -20
  198. package/speechflow-cli/src/speechflow-node.ts +7 -8
  199. package/speechflow-cli/src/speechflow-util-audio-wt.ts +46 -7
  200. package/speechflow-cli/src/speechflow-util-audio.ts +27 -15
  201. package/speechflow-cli/src/speechflow-util-error.ts +3 -3
  202. package/speechflow-cli/src/speechflow-util-llm.ts +1 -1
  203. package/speechflow-cli/src/speechflow-util-misc.ts +63 -6
  204. package/speechflow-cli/src/speechflow-util-queue.ts +60 -81
  205. package/speechflow-cli/src/speechflow-util-stream.ts +40 -8
  206. package/speechflow-cli/src/speechflow-util.ts +1 -1
  207. package/speechflow-cli/src/speechflow.ts +1 -1
  208. package/speechflow-ui-db/dst/index.html +1 -1
  209. package/speechflow-ui-db/dst/index.js +15 -15
  210. package/speechflow-ui-db/etc/eslint.mjs +1 -1
  211. package/speechflow-ui-db/etc/oxlint.jsonc +1 -1
  212. package/speechflow-ui-db/etc/stx.conf +1 -1
  213. package/speechflow-ui-db/etc/stylelint.js +1 -1
  214. package/speechflow-ui-db/etc/stylelint.yaml +1 -1
  215. package/speechflow-ui-db/etc/vite-client.mts +1 -1
  216. package/speechflow-ui-db/package.d/@typescript-eslint+typescript-estree+8.57.2.patch +12 -0
  217. package/speechflow-ui-db/package.json +22 -16
  218. package/speechflow-ui-db/src/app.styl +1 -1
  219. package/speechflow-ui-db/src/app.vue +1 -1
  220. package/speechflow-ui-db/src/index.html +1 -1
  221. package/speechflow-ui-db/src/index.ts +1 -1
  222. package/speechflow-ui-st/dst/index.html +1 -1
  223. package/speechflow-ui-st/dst/index.js +31 -31
  224. package/speechflow-ui-st/etc/eslint.mjs +1 -1
  225. package/speechflow-ui-st/etc/oxlint.jsonc +1 -1
  226. package/speechflow-ui-st/etc/stx.conf +1 -1
  227. package/speechflow-ui-st/etc/stylelint.js +1 -1
  228. package/speechflow-ui-st/etc/stylelint.yaml +1 -1
  229. package/speechflow-ui-st/etc/vite-client.mts +1 -1
  230. package/speechflow-ui-st/package.d/@typescript-eslint+typescript-estree+8.57.2.patch +12 -0
  231. package/speechflow-ui-st/package.json +23 -17
  232. package/speechflow-ui-st/src/app.styl +1 -1
  233. package/speechflow-ui-st/src/app.vue +1 -1
  234. package/speechflow-ui-st/src/index.html +1 -1
  235. package/speechflow-ui-st/src/index.ts +1 -1
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+ /*
3
+ ** SpeechFlow - Speech Processing Flow Graph
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
+ ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ var __importDefault = (this && this.__importDefault) || function (mod) {
41
+ return (mod && mod.__esModule) ? mod : { "default": mod };
42
+ };
43
+ Object.defineProperty(exports, "__esModule", { value: true });
44
+ /* standard dependencies */
45
+ const node_stream_1 = __importDefault(require("node:stream"));
46
+ /* external dependencies */
47
+ const kitten_tts_js_1 = require("kitten-tts-js");
48
+ const luxon_1 = require("luxon");
49
+ const speex_resampler_1 = __importDefault(require("speex-resampler"));
50
+ /* internal dependencies */
51
+ const speechflow_node_1 = __importDefault(require("./speechflow-node"));
52
+ const util = __importStar(require("./speechflow-util"));
53
+ /* SpeechFlow node for Kitten text-to-speech conversion */
54
+ class SpeechFlowNodeT2AKitten extends speechflow_node_1.default {
55
+ /* declare official node name */
56
+ static name = "t2a-kitten";
57
+ /* internal state */
58
+ kitten = null;
59
+ resampler = null;
60
+ closing = false;
61
+ /* construct node */
62
+ constructor(id, cfg, opts, args) {
63
+ super(id, cfg, opts, args);
64
+ /* declare node configuration parameters */
65
+ this.configure({
66
+ model: { type: "string", val: "KittenML/kitten-tts-nano-0.8", pos: 0, match: /^.+$/ },
67
+ voice: { type: "string", val: "Bruno", pos: 1, match: /^(?:Bella|Jasper|Luna|Bruno|Rosie|Hugo|Kiki|Leo)$/ },
68
+ speed: { type: "number", val: 1.25, pos: 2, match: (n) => n >= 0.5 && n <= 2.0 }
69
+ });
70
+ /* declare node input/output format */
71
+ this.input = "text";
72
+ this.output = "audio";
73
+ }
74
+ /* one-time status of node */
75
+ async status() {
76
+ return {};
77
+ }
78
+ /* open node */
79
+ async open() {
80
+ /* clear destruction flag */
81
+ this.closing = false;
82
+ /* establish Kitten TTS */
83
+ this.kitten = await kitten_tts_js_1.KittenTTS.from_pretrained(this.params.model);
84
+ if (this.kitten === null)
85
+ throw new Error("failed to instantiate Kitten TTS");
86
+ /* establish resampler from Kitten's 24Khz
87
+ output to our standard audio sample rate (48KHz) */
88
+ this.resampler = new speex_resampler_1.default(1, 24000, this.config.audioSampleRate, 7);
89
+ /* perform text-to-speech operation with Kitten TTS API */
90
+ const text2speech = async (text) => {
91
+ this.log("info", `Kitten TTS: input: "${text}"`);
92
+ const audio = await this.kitten.generate(text, {
93
+ voice: this.params.voice,
94
+ speed: this.params.speed
95
+ });
96
+ if (audio.sampling_rate !== 24000)
97
+ throw new Error("expected 24KHz sampling rate in Kitten TTS output");
98
+ /* convert audio samples from PCM/F32/24Khz to PCM/I16/24KHz */
99
+ const samples = audio.data;
100
+ const buffer1 = Buffer.alloc(samples.length * 2);
101
+ for (let i = 0; i < samples.length; i++) {
102
+ const sample = Math.max(-1, Math.min(1, samples[i]));
103
+ buffer1.writeInt16LE(sample * 0x7FFF, i * 2);
104
+ }
105
+ /* resample audio samples from PCM/I16/24Khz to PCM/I16/48KHz */
106
+ if (this.resampler === null)
107
+ throw new Error("resampler already destroyed");
108
+ return this.resampler.processChunk(buffer1);
109
+ };
110
+ /* create transform stream and connect it to the Kitten TTS API */
111
+ const self = this;
112
+ this.stream = new node_stream_1.default.Transform({
113
+ writableObjectMode: true,
114
+ readableObjectMode: true,
115
+ decodeStrings: false,
116
+ highWaterMark: 1,
117
+ transform(chunk, encoding, callback) {
118
+ if (self.closing)
119
+ callback(new Error("stream already destroyed"));
120
+ else if (Buffer.isBuffer(chunk.payload))
121
+ callback(new Error("invalid chunk payload type"));
122
+ else if (chunk.payload === "")
123
+ callback();
124
+ else {
125
+ let callbackCalled = false;
126
+ let processTimeout = setTimeout(() => {
127
+ processTimeout = null;
128
+ if (!callbackCalled) {
129
+ callbackCalled = true;
130
+ callback(new Error("Kitten TTS timeout"));
131
+ }
132
+ }, 60 * 1000);
133
+ const clearProcessTimeout = () => {
134
+ if (processTimeout !== null) {
135
+ clearTimeout(processTimeout);
136
+ processTimeout = null;
137
+ }
138
+ };
139
+ text2speech(chunk.payload).then((buffer) => {
140
+ clearProcessTimeout();
141
+ if (callbackCalled)
142
+ return;
143
+ callbackCalled = true;
144
+ if (self.closing) {
145
+ callback(new Error("stream destroyed during processing"));
146
+ return;
147
+ }
148
+ self.log("info", `Kitten TTS: received audio (buffer length: ${buffer.byteLength})`);
149
+ /* calculate actual audio duration from PCM buffer size */
150
+ const durationMs = util.audioBufferDuration(buffer, self.config.audioSampleRate, self.config.audioBitDepth) * 1000;
151
+ /* create new chunk with recalculated timestamps */
152
+ const chunkNew = chunk.clone();
153
+ chunkNew.type = "audio";
154
+ chunkNew.payload = buffer;
155
+ chunkNew.timestampEnd = luxon_1.Duration.fromMillis(chunkNew.timestampStart.toMillis() + durationMs);
156
+ this.push(chunkNew);
157
+ callback();
158
+ }).catch((error) => {
159
+ clearProcessTimeout();
160
+ if (callbackCalled)
161
+ return;
162
+ callbackCalled = true;
163
+ callback(util.ensureError(error, "Kitten TTS processing failed"));
164
+ });
165
+ }
166
+ },
167
+ final(callback) {
168
+ callback();
169
+ }
170
+ });
171
+ }
172
+ /* close node */
173
+ async close() {
174
+ /* indicate closing */
175
+ this.closing = true;
176
+ /* shutdown stream */
177
+ if (this.stream !== null) {
178
+ await util.destroyStream(this.stream);
179
+ this.stream = null;
180
+ }
181
+ /* destroy resampler */
182
+ if (this.resampler !== null) {
183
+ this.resampler.destroy();
184
+ this.resampler = null;
185
+ }
186
+ /* destroy Kitten TTS API */
187
+ if (this.kitten !== null) {
188
+ await this.kitten.release();
189
+ this.kitten = null;
190
+ }
191
+ }
192
+ }
193
+ exports.default = SpeechFlowNodeT2AKitten;
194
+ //# sourceMappingURL=speechflow-node-t2a-kitten.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"speechflow-node-t2a-kitten.js","sourceRoot":"","sources":["../src/speechflow-node-t2a-kitten.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -108,11 +108,12 @@ class SpeechFlowNodeT2AKokoro extends speechflow_node_1.default {
108
108
  this.kokoro = await kokoro_js_1.KokoroTTS.from_pretrained(model, {
109
109
  dtype: "q4f16",
110
110
  progress_callback: progressCallback
111
+ }).finally(() => {
112
+ if (interval !== null) {
113
+ clearInterval(interval);
114
+ interval = null;
115
+ }
111
116
  });
112
- if (interval !== null) {
113
- clearInterval(interval);
114
- interval = null;
115
- }
116
117
  if (this.kokoro === null)
117
118
  throw new Error("failed to instantiate Kokoro");
118
119
  /* establish resampler from Kokoro's maximum 24Khz
@@ -162,9 +163,13 @@ class SpeechFlowNodeT2AKokoro extends speechflow_node_1.default {
162
163
  else if (chunk.payload === "")
163
164
  callback();
164
165
  else {
166
+ let callbackCalled = false;
165
167
  let processTimeout = setTimeout(() => {
166
168
  processTimeout = null;
167
- callback(new Error("Kokoro TTS timeout"));
169
+ if (!callbackCalled) {
170
+ callbackCalled = true;
171
+ callback(new Error("Kokoro TTS timeout"));
172
+ }
168
173
  }, 60 * 1000);
169
174
  const clearProcessTimeout = () => {
170
175
  if (processTimeout !== null) {
@@ -173,8 +178,11 @@ class SpeechFlowNodeT2AKokoro extends speechflow_node_1.default {
173
178
  }
174
179
  };
175
180
  text2speech(chunk.payload).then((buffer) => {
181
+ clearProcessTimeout();
182
+ if (callbackCalled)
183
+ return;
184
+ callbackCalled = true;
176
185
  if (self.closing) {
177
- clearProcessTimeout();
178
186
  callback(new Error("stream destroyed during processing"));
179
187
  return;
180
188
  }
@@ -186,11 +194,13 @@ class SpeechFlowNodeT2AKokoro extends speechflow_node_1.default {
186
194
  chunkNew.type = "audio";
187
195
  chunkNew.payload = buffer;
188
196
  chunkNew.timestampEnd = luxon_1.Duration.fromMillis(chunkNew.timestampStart.toMillis() + durationMs);
189
- clearProcessTimeout();
190
197
  this.push(chunkNew);
191
198
  callback();
192
199
  }).catch((error) => {
193
200
  clearProcessTimeout();
201
+ if (callbackCalled)
202
+ return;
203
+ callbackCalled = true;
194
204
  callback(util.ensureError(error, "Kokoro processing failed"));
195
205
  });
196
206
  }
@@ -210,8 +220,10 @@ class SpeechFlowNodeT2AKokoro extends speechflow_node_1.default {
210
220
  this.stream = null;
211
221
  }
212
222
  /* destroy resampler */
213
- if (this.resampler !== null)
223
+ if (this.resampler !== null) {
224
+ this.resampler.destroy();
214
225
  this.resampler = null;
226
+ }
215
227
  /* destroy Kokoro API */
216
228
  if (this.kokoro !== null)
217
229
  this.kokoro = null;
@@ -1 +1 @@
1
- {"version":3,"file":"speechflow-node-t2a-kokoro.js","sourceRoot":"","sources":["../src/speechflow-node-t2a-kokoro.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"speechflow-node-t2a-kokoro.js","sourceRoot":"","sources":["../src/speechflow-node-t2a-kokoro.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -127,9 +127,13 @@ class SpeechFlowNodeT2AOpenAI extends speechflow_node_1.default {
127
127
  else if (chunk.payload === "")
128
128
  callback();
129
129
  else {
130
+ let callbackCalled = false;
130
131
  let processTimeout = setTimeout(() => {
131
132
  processTimeout = null;
132
- callback(new Error("OpenAI TTS API timeout"));
133
+ if (!callbackCalled) {
134
+ callbackCalled = true;
135
+ callback(new Error("OpenAI TTS API timeout"));
136
+ }
133
137
  }, 60 * 1000);
134
138
  const clearProcessTimeout = () => {
135
139
  if (processTimeout !== null) {
@@ -140,12 +144,16 @@ class SpeechFlowNodeT2AOpenAI extends speechflow_node_1.default {
140
144
  try {
141
145
  if (self.closing) {
142
146
  clearProcessTimeout();
147
+ callbackCalled = true;
143
148
  callback(new Error("stream destroyed during processing"));
144
149
  return;
145
150
  }
146
151
  const buffer = await textToSpeech(chunk.payload);
152
+ clearProcessTimeout();
153
+ if (callbackCalled)
154
+ return;
155
+ callbackCalled = true;
147
156
  if (self.closing) {
148
- clearProcessTimeout();
149
157
  callback(new Error("stream destroyed during processing"));
150
158
  return;
151
159
  }
@@ -156,12 +164,14 @@ class SpeechFlowNodeT2AOpenAI extends speechflow_node_1.default {
156
164
  chunkNew.type = "audio";
157
165
  chunkNew.payload = buffer;
158
166
  chunkNew.timestampEnd = luxon_1.Duration.fromMillis(chunkNew.timestampStart.toMillis() + durationMs);
159
- clearProcessTimeout();
160
167
  this.push(chunkNew);
161
168
  callback();
162
169
  }
163
170
  catch (error) {
164
171
  clearProcessTimeout();
172
+ if (callbackCalled)
173
+ return;
174
+ callbackCalled = true;
165
175
  callback(util.ensureError(error, "OpenAI TTS processing failed"));
166
176
  }
167
177
  }
@@ -181,8 +191,10 @@ class SpeechFlowNodeT2AOpenAI extends speechflow_node_1.default {
181
191
  this.stream = null;
182
192
  }
183
193
  /* destroy resampler */
184
- if (this.resampler !== null)
194
+ if (this.resampler !== null) {
195
+ this.resampler.destroy();
185
196
  this.resampler = null;
197
+ }
186
198
  /* destroy OpenAI API */
187
199
  if (this.openai !== null)
188
200
  this.openai = null;
@@ -1 +1 @@
1
- {"version":3,"file":"speechflow-node-t2a-openai.js","sourceRoot":"","sources":["../src/speechflow-node-t2a-openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"speechflow-node-t2a-openai.js","sourceRoot":"","sources":["../src/speechflow-node-t2a-openai.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -157,8 +157,11 @@ class SpeechFlowNodeT2ASupertonic extends speechflow_node_1.default {
157
157
  throw new Error("unexpected Supertonic result: sampling_rate is not a number");
158
158
  const samples = result.audio;
159
159
  const outputSampleRate = result.sampling_rate;
160
- if (outputSampleRate !== this.sampleRate)
161
- this.log("warning", `unexpected sample rate ${outputSampleRate}Hz (expected ${this.sampleRate}Hz)`);
160
+ if (outputSampleRate !== this.sampleRate) {
161
+ this.log("warning", `unexpected sample rate change ${this.sampleRate}Hz -> ${outputSampleRate}Hz (recreating resampler)`);
162
+ this.sampleRate = outputSampleRate;
163
+ this.resampler = new speex_resampler_1.default(1, this.sampleRate, this.config.audioSampleRate, 7);
164
+ }
162
165
  /* calculate duration */
163
166
  const duration = samples.length / outputSampleRate;
164
167
  this.log("info", `Supertonic: synthesized ${duration.toFixed(2)}s of audio`);
@@ -184,9 +187,13 @@ class SpeechFlowNodeT2ASupertonic extends speechflow_node_1.default {
184
187
  else if (chunk.payload === "")
185
188
  callback();
186
189
  else {
190
+ let callbackCalled = false;
187
191
  let processTimeout = setTimeout(() => {
188
192
  processTimeout = null;
189
- callback(new Error("Supertonic TTS timeout"));
193
+ if (!callbackCalled) {
194
+ callbackCalled = true;
195
+ callback(new Error("Supertonic TTS timeout"));
196
+ }
190
197
  }, 120 * 1000);
191
198
  const clearProcessTimeout = () => {
192
199
  if (processTimeout !== null) {
@@ -195,8 +202,11 @@ class SpeechFlowNodeT2ASupertonic extends speechflow_node_1.default {
195
202
  }
196
203
  };
197
204
  text2speech(chunk.payload).then((buffer) => {
205
+ clearProcessTimeout();
206
+ if (callbackCalled)
207
+ return;
208
+ callbackCalled = true;
198
209
  if (self.closing) {
199
- clearProcessTimeout();
200
210
  callback(new Error("stream destroyed during processing"));
201
211
  return;
202
212
  }
@@ -208,11 +218,13 @@ class SpeechFlowNodeT2ASupertonic extends speechflow_node_1.default {
208
218
  chunkNew.type = "audio";
209
219
  chunkNew.payload = buffer;
210
220
  chunkNew.timestampEnd = luxon_1.Duration.fromMillis(chunkNew.timestampStart.toMillis() + durationMs);
211
- clearProcessTimeout();
212
221
  this.push(chunkNew);
213
222
  callback();
214
223
  }).catch((error) => {
215
224
  clearProcessTimeout();
225
+ if (callbackCalled)
226
+ return;
227
+ callbackCalled = true;
216
228
  callback(util.ensureError(error, "Supertonic processing failed"));
217
229
  });
218
230
  }
@@ -232,8 +244,10 @@ class SpeechFlowNodeT2ASupertonic extends speechflow_node_1.default {
232
244
  this.stream = null;
233
245
  }
234
246
  /* destroy resampler */
235
- if (this.resampler !== null)
247
+ if (this.resampler !== null) {
248
+ this.resampler.destroy();
236
249
  this.resampler = null;
250
+ }
237
251
  /* destroy TTS pipeline */
238
252
  if (this.tts !== null) {
239
253
  /* dispose of the pipeline if possible */
@@ -1 +1 @@
1
- {"version":3,"file":"speechflow-node-t2a-supertonic.js","sourceRoot":"","sources":["../src/speechflow-node-t2a-supertonic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"speechflow-node-t2a-supertonic.js","sourceRoot":"","sources":["../src/speechflow-node-t2a-supertonic.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -143,7 +143,9 @@ class SpeechFlowNodeT2TGoogle extends speechflow_node_1.default {
143
143
  }
144
144
  /* shutdown Google Translate client */
145
145
  if (this.client !== null) {
146
- this.client.close();
146
+ await this.client.close().catch((error) => {
147
+ this.log("warning", `error closing Google Translate client: ${error}`);
148
+ });
147
149
  this.client = null;
148
150
  }
149
151
  }
@@ -1 +1 @@
1
- {"version":3,"file":"speechflow-node-t2t-google.js","sourceRoot":"","sources":["../src/speechflow-node-t2t-google.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"speechflow-node-t2t-google.js","sourceRoot":"","sources":["../src/speechflow-node-t2t-google.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /*
3
3
  ** SpeechFlow - Speech Processing Flow Graph
4
- ** Copyright (c) 2024-2025 Dr. Ralf S. Engelschall <rse@engelschall.com>
4
+ ** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
5
5
  ** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
6
6
  */
7
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {