@kongyo2/kongyoroid 1.0.0 → 2.1.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 (206) hide show
  1. package/README.md +239 -0
  2. package/dist/cache.d.ts +32 -7
  3. package/dist/cache.d.ts.map +1 -1
  4. package/dist/cache.js +139 -9
  5. package/dist/cache.js.map +1 -1
  6. package/dist/cli/flags.d.ts +270 -0
  7. package/dist/cli/flags.d.ts.map +1 -0
  8. package/dist/cli/flags.js +240 -0
  9. package/dist/cli/flags.js.map +1 -0
  10. package/dist/cli/help.d.ts +11 -0
  11. package/dist/cli/help.d.ts.map +1 -0
  12. package/dist/cli/help.js +346 -0
  13. package/dist/cli/help.js.map +1 -0
  14. package/dist/cli.js +729 -243
  15. package/dist/cli.js.map +1 -1
  16. package/dist/errors.d.ts +43 -3
  17. package/dist/errors.d.ts.map +1 -1
  18. package/dist/errors.js +56 -3
  19. package/dist/errors.js.map +1 -1
  20. package/dist/index.d.ts +59 -22
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +32 -14
  23. package/dist/index.js.map +1 -1
  24. package/dist/io.d.ts +12 -0
  25. package/dist/io.d.ts.map +1 -1
  26. package/dist/io.js +161 -6
  27. package/dist/io.js.map +1 -1
  28. package/dist/kongyoroid.d.ts +237 -10
  29. package/dist/kongyoroid.d.ts.map +1 -1
  30. package/dist/kongyoroid.js +787 -87
  31. package/dist/kongyoroid.js.map +1 -1
  32. package/dist/limits.d.ts +5 -0
  33. package/dist/limits.d.ts.map +1 -1
  34. package/dist/limits.js +6 -1
  35. package/dist/limits.js.map +1 -1
  36. package/dist/player.d.ts.map +1 -1
  37. package/dist/player.js +18 -22
  38. package/dist/player.js.map +1 -1
  39. package/dist/request.d.ts +1 -0
  40. package/dist/request.d.ts.map +1 -1
  41. package/dist/request.js +102 -15
  42. package/dist/request.js.map +1 -1
  43. package/dist/schema.d.ts +3 -0
  44. package/dist/schema.d.ts.map +1 -1
  45. package/dist/schema.js +271 -68
  46. package/dist/schema.js.map +1 -1
  47. package/dist/song/mml.d.ts +15 -0
  48. package/dist/song/mml.d.ts.map +1 -0
  49. package/dist/song/mml.js +184 -0
  50. package/dist/song/mml.js.map +1 -0
  51. package/dist/song/pitch.d.ts.map +1 -0
  52. package/dist/{pitch.js → song/pitch.js} +1 -1
  53. package/dist/song/pitch.js.map +1 -0
  54. package/dist/song/score.d.ts +92 -0
  55. package/dist/song/score.d.ts.map +1 -0
  56. package/dist/song/score.js +454 -0
  57. package/dist/song/score.js.map +1 -0
  58. package/dist/synth/acoustics.d.ts +27 -0
  59. package/dist/synth/acoustics.d.ts.map +1 -0
  60. package/dist/synth/acoustics.js +608 -0
  61. package/dist/synth/acoustics.js.map +1 -0
  62. package/dist/synth/analysis.d.ts +22 -0
  63. package/dist/synth/analysis.d.ts.map +1 -0
  64. package/dist/synth/analysis.js +170 -0
  65. package/dist/synth/analysis.js.map +1 -0
  66. package/dist/synth/engine.d.ts +115 -0
  67. package/dist/synth/engine.d.ts.map +1 -0
  68. package/dist/synth/engine.js +223 -0
  69. package/dist/synth/engine.js.map +1 -0
  70. package/dist/synth/filters.d.ts +60 -0
  71. package/dist/synth/filters.d.ts.map +1 -0
  72. package/dist/synth/filters.js +166 -0
  73. package/dist/synth/filters.js.map +1 -0
  74. package/dist/synth/glottal.d.ts +20 -0
  75. package/dist/synth/glottal.d.ts.map +1 -0
  76. package/dist/synth/glottal.js +76 -0
  77. package/dist/synth/glottal.js.map +1 -0
  78. package/dist/synth/phonemes.d.ts +42 -0
  79. package/dist/synth/phonemes.d.ts.map +1 -0
  80. package/dist/synth/phonemes.js +311 -0
  81. package/dist/synth/phonemes.js.map +1 -0
  82. package/dist/synth/plan.d.ts +127 -0
  83. package/dist/synth/plan.d.ts.map +1 -0
  84. package/dist/synth/plan.js +81 -0
  85. package/dist/synth/plan.js.map +1 -0
  86. package/dist/synth/prosody.d.ts +38 -0
  87. package/dist/synth/prosody.d.ts.map +1 -0
  88. package/dist/synth/prosody.js +120 -0
  89. package/dist/synth/prosody.js.map +1 -0
  90. package/dist/synth/random.d.ts +15 -0
  91. package/dist/synth/random.d.ts.map +1 -0
  92. package/dist/synth/random.js +59 -0
  93. package/dist/synth/random.js.map +1 -0
  94. package/dist/synth/renderer.d.ts +77 -0
  95. package/dist/synth/renderer.d.ts.map +1 -0
  96. package/dist/synth/renderer.js +343 -0
  97. package/dist/synth/renderer.js.map +1 -0
  98. package/dist/synth/song.d.ts +30 -0
  99. package/dist/synth/song.d.ts.map +1 -0
  100. package/dist/synth/song.js +453 -0
  101. package/dist/synth/song.js.map +1 -0
  102. package/dist/synth/speech.d.ts +49 -0
  103. package/dist/synth/speech.d.ts.map +1 -0
  104. package/dist/synth/speech.js +358 -0
  105. package/dist/synth/speech.js.map +1 -0
  106. package/dist/synth/stream.d.ts +26 -0
  107. package/dist/synth/stream.d.ts.map +1 -0
  108. package/dist/synth/stream.js +67 -0
  109. package/dist/synth/stream.js.map +1 -0
  110. package/dist/synth/textstream.d.ts +35 -0
  111. package/dist/synth/textstream.d.ts.map +1 -0
  112. package/dist/synth/textstream.js +209 -0
  113. package/dist/synth/textstream.js.map +1 -0
  114. package/dist/synth/voice.d.ts +64 -0
  115. package/dist/synth/voice.d.ts.map +1 -0
  116. package/dist/synth/voice.js +208 -0
  117. package/dist/synth/voice.js.map +1 -0
  118. package/dist/text/dictionary.d.ts +50 -0
  119. package/dist/text/dictionary.d.ts.map +1 -0
  120. package/dist/text/dictionary.js +0 -0
  121. package/dist/text/dictionary.js.map +1 -0
  122. package/dist/text/frontend.d.ts +35 -0
  123. package/dist/text/frontend.d.ts.map +1 -0
  124. package/dist/text/frontend.js +559 -0
  125. package/dist/text/frontend.js.map +1 -0
  126. package/dist/text/lexicon.d.ts +10 -0
  127. package/dist/text/lexicon.d.ts.map +1 -0
  128. package/dist/text/lexicon.js +763 -0
  129. package/dist/text/lexicon.js.map +1 -0
  130. package/dist/{mora.d.ts → text/mora.d.ts} +15 -3
  131. package/dist/text/mora.d.ts.map +1 -0
  132. package/dist/{mora.js → text/mora.js} +87 -9
  133. package/dist/text/mora.js.map +1 -0
  134. package/dist/text/normalize.d.ts +34 -0
  135. package/dist/text/normalize.d.ts.map +1 -0
  136. package/dist/text/normalize.js +504 -0
  137. package/dist/text/normalize.js.map +1 -0
  138. package/dist/text/notation.d.ts +32 -0
  139. package/dist/text/notation.d.ts.map +1 -0
  140. package/dist/text/notation.js +182 -0
  141. package/dist/text/notation.js.map +1 -0
  142. package/dist/text/reading.d.ts +52 -0
  143. package/dist/text/reading.d.ts.map +1 -0
  144. package/dist/text/reading.js +32 -0
  145. package/dist/text/reading.js.map +1 -0
  146. package/dist/text/sentences.d.ts +11 -0
  147. package/dist/text/sentences.d.ts.map +1 -0
  148. package/dist/text/sentences.js +91 -0
  149. package/dist/text/sentences.js.map +1 -0
  150. package/dist/{text.d.ts → text/split.d.ts} +2 -2
  151. package/dist/text/split.d.ts.map +1 -0
  152. package/dist/{text.js → text/split.js} +2 -2
  153. package/dist/text/split.js.map +1 -0
  154. package/dist/types.d.ts +58 -3
  155. package/dist/types.d.ts.map +1 -1
  156. package/dist/version.d.ts +4 -0
  157. package/dist/version.d.ts.map +1 -1
  158. package/dist/version.js +5 -1
  159. package/dist/version.js.map +1 -1
  160. package/dist/voicevox/client.d.ts +1 -1
  161. package/dist/voicevox/client.d.ts.map +1 -1
  162. package/dist/voicevox/dictionary.js +1 -1
  163. package/dist/voicevox/dictionary.js.map +1 -1
  164. package/dist/voicevox/song.js +1 -1
  165. package/dist/voicevox/song.js.map +1 -1
  166. package/dist/voicevox/speech.d.ts +1 -0
  167. package/dist/voicevox/speech.d.ts.map +1 -1
  168. package/dist/voicevox/speech.js +8 -2
  169. package/dist/voicevox/speech.js.map +1 -1
  170. package/dist/wav.d.ts +1 -0
  171. package/dist/wav.d.ts.map +1 -1
  172. package/dist/wav.js +8 -6
  173. package/dist/wav.js.map +1 -1
  174. package/docs/cli.md +261 -0
  175. package/examples/batch.jsonl +4 -3
  176. package/examples/builtin/dictionary.json +7 -0
  177. package/examples/builtin/song-compact.json +13 -0
  178. package/examples/builtin/song-mml.json +9 -0
  179. package/examples/builtin/song-notes.json +25 -0
  180. package/examples/builtin/speech-dictionary.json +9 -0
  181. package/examples/builtin/speech-kana.json +7 -0
  182. package/examples/builtin/speech.json +7 -0
  183. package/package.json +10 -4
  184. package/dist/formant.d.ts +0 -34
  185. package/dist/formant.d.ts.map +0 -1
  186. package/dist/formant.js +0 -622
  187. package/dist/formant.js.map +0 -1
  188. package/dist/mora.d.ts.map +0 -1
  189. package/dist/mora.js.map +0 -1
  190. package/dist/notation.d.ts +0 -15
  191. package/dist/notation.d.ts.map +0 -1
  192. package/dist/notation.js +0 -114
  193. package/dist/notation.js.map +0 -1
  194. package/dist/pitch.d.ts.map +0 -1
  195. package/dist/pitch.js.map +0 -1
  196. package/dist/score.d.ts +0 -37
  197. package/dist/score.d.ts.map +0 -1
  198. package/dist/score.js +0 -166
  199. package/dist/score.js.map +0 -1
  200. package/dist/text.d.ts.map +0 -1
  201. package/dist/text.js.map +0 -1
  202. package/examples/song-notes.json +0 -24
  203. /package/dist/{pitch.d.ts → song/pitch.d.ts} +0 -0
  204. /package/examples/{song.json → voicevox/song.json} +0 -0
  205. /package/examples/{speech-kana.json → voicevox/speech-kana.json} +0 -0
  206. /package/examples/{speech.json → voicevox/speech.json} +0 -0
package/dist/io.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAY,QAAQ,EAAE,MAAM,aAAa,CAAC;AAItD,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAOzF;AAYD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,KAAK,GAAE,MAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAyBrH;AAED,wBAAuB,SAAS,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,EACpB,KAAK,GAAE,MAA0B,GAChC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAiCpC;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,EACjB,KAAK,GAAE,OAAe,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,CAyCjB"}
1
+ {"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAY,QAAQ,EAAE,MAAM,aAAa,CAAC;AAItD,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAQzF;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,QAAQ,EAChB,OAAO,EAAE,MAAM,GAAG,UAAU,EAC5B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAoCf;AAYD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,KAAK,GAAE,MAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAyBrH;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQpE;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAA6B,GAAG,OAAO,CAAC,UAAU,CAAC,CAQvG;AAED,wBAAuB,SAAS,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,EACpB,KAAK,GAAE,MAA0B,GAChC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAiCpC;AAED,wBAAuB,UAAU,CAC/B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,EACpB,KAAK,GAAE,MAA0B,GAChC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CA2BpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAOlF;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,EACjB,KAAK,GAAE,OAAe,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,CAEjB;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,EACjB,KAAK,GAAE,OAAe,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,gBAAgB,CAAC,CA8D3B;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA0BvG"}
package/dist/io.js CHANGED
@@ -1,18 +1,57 @@
1
- import { randomUUID } from "node:crypto";
2
- import { createReadStream } from "node:fs";
3
- import { link, mkdir, open, rename, unlink } from "node:fs/promises";
1
+ import { createHash, randomUUID } from "node:crypto";
2
+ import { constants, createReadStream } from "node:fs";
3
+ import { access, link, mkdir, open, readFile, rename, stat, unlink } from "node:fs/promises";
4
4
  import { dirname, resolve } from "node:path";
5
5
  import { stdin } from "node:process";
6
6
  import { KongyoroidError, aborted, checkAbort, invalid } from "./errors.js";
7
7
  import { LIMITS } from "./limits.js";
8
8
  export function writeStream(stream, content) {
9
9
  return new Promise((done, reject) => {
10
- stream.write(content, (error) => {
10
+ const ok = stream.write(content, (error) => {
11
11
  if (error)
12
12
  reject(error);
13
13
  else
14
14
  done();
15
15
  });
16
+ void ok;
17
+ });
18
+ }
19
+ export function writeWithBackpressure(stream, content, signal) {
20
+ return new Promise((done, reject) => {
21
+ if (signal?.aborted) {
22
+ reject(aborted("Output cancelled."));
23
+ return;
24
+ }
25
+ const proceed = stream.write(content, (error) => {
26
+ if (error)
27
+ reject(error);
28
+ });
29
+ if (proceed) {
30
+ done();
31
+ return;
32
+ }
33
+ const onDrain = () => {
34
+ cleanup();
35
+ done();
36
+ };
37
+ const onError = (error) => {
38
+ cleanup();
39
+ reject(error);
40
+ };
41
+ const onAbort = () => {
42
+ cleanup();
43
+ reject(aborted("Output cancelled."));
44
+ };
45
+ const cleanup = () => {
46
+ stream.removeListener("drain", onDrain);
47
+ stream.removeListener("error", onError);
48
+ stream.removeListener("close", onDrain);
49
+ signal?.removeEventListener("abort", onAbort);
50
+ };
51
+ stream.once("drain", onDrain);
52
+ stream.once("error", onError);
53
+ stream.once("close", onDrain);
54
+ signal?.addEventListener("abort", onAbort, { once: true });
16
55
  });
17
56
  }
18
57
  function source(path) {
@@ -55,6 +94,28 @@ export async function readText(path, signal, limit = LIMITS.inputBytes) {
55
94
  stream.destroy();
56
95
  }
57
96
  }
97
+ export async function ensureReadableFile(path) {
98
+ try {
99
+ const info = await stat(path);
100
+ if (!info.isFile())
101
+ throw new Error("not a regular file");
102
+ await access(path, constants.R_OK);
103
+ }
104
+ catch (error) {
105
+ throw ioError(`Could not read ${path}`, error);
106
+ }
107
+ }
108
+ export async function readBytes(path, limit = LIMITS.responseBytes) {
109
+ try {
110
+ const bytes = await readFile(path);
111
+ if (bytes.byteLength > limit)
112
+ invalid("$.input", `File exceeds ${limit} bytes.`);
113
+ return new Uint8Array(bytes.buffer, bytes.byteOffset, bytes.byteLength);
114
+ }
115
+ catch (error) {
116
+ throw ioError(`Could not read ${path}`, error);
117
+ }
118
+ }
58
119
  export async function* readLines(path, signal, limit = LIMITS.inputBytes) {
59
120
  const stream = source(path);
60
121
  const decoder = new TextDecoder("utf-8", { fatal: true });
@@ -97,12 +158,74 @@ export async function* readLines(path, signal, limit = LIMITS.inputBytes) {
97
158
  stream.destroy();
98
159
  }
99
160
  }
161
+ export async function* readChunks(path, signal, limit = LIMITS.inputBytes) {
162
+ const stream = source(path);
163
+ const decoder = new TextDecoder("utf-8", { fatal: true });
164
+ let total = 0;
165
+ const abort = () => {
166
+ stream.destroy(aborted("Input cancelled."));
167
+ };
168
+ signal?.addEventListener("abort", abort, { once: true });
169
+ try {
170
+ checkAbort(signal);
171
+ for await (const raw of stream) {
172
+ const chunk = raw;
173
+ if (!Buffer.isBuffer(chunk))
174
+ invalid("$.input", "Expected byte input.");
175
+ total += chunk.length;
176
+ if (total > limit)
177
+ invalid("$.input", `Input exceeds ${limit} bytes.`);
178
+ const text = decoder.decode(chunk, { stream: true });
179
+ if (text.length > 0)
180
+ yield text;
181
+ checkAbort(signal);
182
+ }
183
+ const tail = decoder.decode();
184
+ if (tail.length > 0)
185
+ yield tail;
186
+ }
187
+ catch (error) {
188
+ throw ioError(`Could not read ${path === "-" ? "standard input" : path}`, error);
189
+ }
190
+ finally {
191
+ signal?.removeEventListener("abort", abort);
192
+ if (path !== "-")
193
+ stream.destroy();
194
+ }
195
+ }
196
+ export async function existingFileSha256(path) {
197
+ try {
198
+ const bytes = await readFile(path);
199
+ return createHash("sha256").update(bytes).digest("hex");
200
+ }
201
+ catch {
202
+ return undefined;
203
+ }
204
+ }
100
205
  export async function writeAudio(path, bytes, force = false, signal) {
206
+ return (await writeAudioIdempotent(path, bytes, force, signal)).path;
207
+ }
208
+ export async function writeAudioIdempotent(path, bytes, force = false, signal) {
101
209
  const target = resolve(path);
102
210
  const temp = `${target}.${randomUUID()}.tmp`;
103
211
  let created = false;
104
212
  try {
105
213
  checkAbort(signal);
214
+ if (!force) {
215
+ const existing = await existingFileSha256(target);
216
+ if (existing !== undefined) {
217
+ const incoming = createHash("sha256").update(bytes).digest("hex");
218
+ if (existing === incoming)
219
+ return { path: target, written: false, unchanged: true };
220
+ throw new KongyoroidError({
221
+ code: "IO_ERROR",
222
+ message: `Refusing to overwrite ${target}: it exists with different content.`,
223
+ retryable: false,
224
+ hint: "Pass --force (CLI) or force: true (library) to replace it, or choose another --output path.",
225
+ repairOptions: [{ action: "use-force", description: "Overwrite the existing file with --force." }],
226
+ });
227
+ }
228
+ }
106
229
  await mkdir(dirname(target), { recursive: true });
107
230
  const file = await open(temp, "wx", 0o644);
108
231
  created = true;
@@ -121,7 +244,7 @@ export async function writeAudio(path, bytes, force = false, signal) {
121
244
  else {
122
245
  await link(temp, target);
123
246
  }
124
- return target;
247
+ return { path: target, written: true, unchanged: false };
125
248
  }
126
249
  catch (error) {
127
250
  if (error instanceof KongyoroidError)
@@ -133,7 +256,14 @@ export async function writeAudio(path, bytes, force = false, signal) {
133
256
  ? `Refusing to overwrite ${target}.`
134
257
  : `Could not write ${target}: ${error instanceof Error ? error.message : String(error)}`,
135
258
  retryable: false,
136
- ...(code === "EEXIST" ? { hint: "Pass --force (CLI) or force: true (library) to replace it." } : {}),
259
+ ...(code === "EEXIST"
260
+ ? {
261
+ hint: "Pass --force (CLI) or force: true (library) to replace it.",
262
+ repairOptions: [
263
+ { action: "use-force", description: "Overwrite the existing file with --force." },
264
+ ],
265
+ }
266
+ : {}),
137
267
  }, error);
138
268
  }
139
269
  finally {
@@ -141,4 +271,29 @@ export async function writeAudio(path, bytes, force = false, signal) {
141
271
  await unlink(temp).catch(() => undefined);
142
272
  }
143
273
  }
274
+ export async function writeTextFile(path, text, force = false) {
275
+ const target = resolve(path);
276
+ await mkdir(dirname(target), { recursive: true });
277
+ try {
278
+ const file = await open(target, force ? "w" : "wx", 0o644);
279
+ try {
280
+ await file.writeFile(text);
281
+ }
282
+ finally {
283
+ await file.close();
284
+ }
285
+ return target;
286
+ }
287
+ catch (error) {
288
+ const code = error instanceof Error && "code" in error ? String(error.code) : "";
289
+ throw new KongyoroidError({
290
+ code: "IO_ERROR",
291
+ message: code === "EEXIST"
292
+ ? `Refusing to overwrite ${target}.`
293
+ : `Could not write ${target}: ${error instanceof Error ? error.message : String(error)}`,
294
+ retryable: false,
295
+ ...(code === "EEXIST" ? { hint: "Pass --force to replace it." } : {}),
296
+ }, error);
297
+ }
298
+ }
144
299
  //# sourceMappingURL=io.js.map
package/dist/io.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"io.js","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"io.js","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,49 @@
1
- import type { ErrorData } from "./errors.ts";
2
- import type { EngineId, EngineSelector, OperationOptions, RenderResult, RenderStyles, ResolvedRequest, SongRequest, SpeechRequest, StyleRef, StyleSelection, VoiceStyle } from "./types.ts";
1
+ import type { CacheStats } from "./cache.ts";
2
+ import type { Diagnostic, ErrorData } from "./errors.ts";
3
+ import type { CompiledPlan, PlanDetail, PlanSummary } from "./synth/engine.ts";
4
+ import type { SynthesisPlan } from "./synth/plan.ts";
5
+ import type { RenderStats } from "./synth/renderer.ts";
6
+ import type { PcmBlock, StreamOptions } from "./synth/stream.ts";
7
+ import type { TextStreamEvent, TextStreamOptions } from "./synth/textstream.ts";
8
+ import type { VoiceProfile } from "./synth/voice.ts";
9
+ import type { DictionaryEntryInput } from "./text/dictionary.ts";
10
+ import { LocalDictionary } from "./text/dictionary.ts";
11
+ import { frontendState } from "./text/frontend.ts";
12
+ import type { ReadingPlan } from "./text/reading.ts";
13
+ import type { AudioInfo, EngineId, EngineSelector, OperationOptions, RenderResult, RenderStyles, ResolvedRequest, SongRequest, SpeechRequest, StyleRef, StyleSelection } from "./types.ts";
3
14
  import type { EngineManifest, SupportedDevices } from "./voicevox/api.ts";
4
15
  import type { VoicevoxClientOptions } from "./voicevox/client.ts";
5
16
  import { VoicevoxClient } from "./voicevox/client.ts";
6
17
  import { Dictionary } from "./voicevox/dictionary.ts";
7
18
  import { StyleCatalog } from "./voicevox/styles.ts";
19
+ export interface CacheOptions {
20
+ readonly directory?: string;
21
+ readonly memoryBytes?: number;
22
+ readonly maxBytes?: number;
23
+ readonly maxEntries?: number;
24
+ readonly strict?: boolean;
25
+ readonly enabled?: boolean;
26
+ }
27
+ export interface VoicevoxOptions extends VoicevoxClientOptions {
28
+ readonly speaker?: StyleRef;
29
+ readonly singer?: StyleRef;
30
+ readonly teacher?: StyleRef;
31
+ readonly probeTimeoutMs?: number;
32
+ }
8
33
  export interface KongyoroidOptions extends VoicevoxClientOptions {
9
34
  readonly engine?: EngineSelector;
35
+ readonly voice?: string;
36
+ readonly dictionary?: LocalDictionary | readonly DictionaryEntryInput[];
37
+ readonly strictReading?: boolean;
10
38
  readonly speaker?: StyleRef;
11
39
  readonly singer?: StyleRef;
12
40
  readonly teacher?: StyleRef;
13
41
  readonly concurrency?: number;
14
42
  readonly cacheBytes?: number;
15
43
  readonly cacheDir?: string;
44
+ readonly cache?: CacheOptions;
16
45
  readonly probeTimeoutMs?: number;
46
+ readonly voicevox?: VoicevoxOptions;
17
47
  }
18
48
  export type SpeakInput = Omit<SpeechRequest, "kind">;
19
49
  export type SingInput = Omit<SongRequest, "kind">;
@@ -28,20 +58,47 @@ export interface ReadingMora {
28
58
  export interface ReadingPhrase {
29
59
  readonly text: string;
30
60
  readonly accent: number;
61
+ readonly accentSource: string;
62
+ readonly boundary: string;
31
63
  readonly pause: boolean;
32
64
  readonly interrogative: boolean;
33
65
  readonly moras: readonly ReadingMora[];
34
66
  }
35
67
  export interface Reading {
68
+ readonly engine: EngineId;
69
+ readonly frontend: string;
36
70
  readonly kana: string;
37
71
  readonly phrases: readonly ReadingPhrase[];
38
- readonly speaker: StyleSelection;
72
+ readonly speaker: StyleSelection | null;
73
+ readonly warnings: readonly Diagnostic[];
74
+ readonly dictionaryHits: readonly {
75
+ readonly surface: string;
76
+ readonly reading: string;
77
+ readonly accent: number | null;
78
+ readonly source: "dictionary" | "lexicon";
79
+ readonly applied: boolean;
80
+ }[];
81
+ readonly sentences: readonly {
82
+ readonly text: string;
83
+ readonly kana: string;
84
+ readonly start: number;
85
+ readonly end: number;
86
+ }[];
39
87
  }
40
88
  export interface ReadingOptions extends OperationOptions {
41
89
  readonly speaker?: StyleRef;
42
90
  readonly kana?: string;
91
+ readonly engine?: EngineSelector;
92
+ readonly dictionary?: LocalDictionary;
93
+ readonly strict?: boolean;
43
94
  }
44
- export interface Diagnosis {
95
+ export interface FrontendDiagnosis {
96
+ readonly available: boolean;
97
+ readonly version: string;
98
+ readonly loadMs: number | null;
99
+ readonly error: ErrorData | null;
100
+ }
101
+ export interface VoicevoxDiagnosis {
45
102
  readonly ok: boolean;
46
103
  readonly endpoint: string;
47
104
  readonly version: string | null;
@@ -55,28 +112,198 @@ export interface Diagnosis {
55
112
  } | null;
56
113
  readonly error: ErrorData | null;
57
114
  }
115
+ export interface Diagnosis {
116
+ readonly ok: boolean;
117
+ readonly name: string;
118
+ readonly version: string;
119
+ readonly engineVersion: string;
120
+ readonly node: string;
121
+ readonly defaultEngine: EngineSelector;
122
+ readonly formant: {
123
+ readonly ok: boolean;
124
+ readonly voices: readonly string[];
125
+ readonly frontend: FrontendDiagnosis;
126
+ readonly synthesis: {
127
+ readonly ok: boolean;
128
+ readonly ms: number;
129
+ readonly frames: number;
130
+ readonly error: ErrorData | null;
131
+ };
132
+ };
133
+ readonly cache: {
134
+ readonly directory: string | null;
135
+ readonly stats: CacheStats | null;
136
+ readonly error: ErrorData | null;
137
+ };
138
+ readonly dictionary: {
139
+ readonly entries: number;
140
+ readonly digest: string;
141
+ } | null;
142
+ readonly voicevox: VoicevoxDiagnosis | null;
143
+ readonly error: ErrorData | null;
144
+ }
145
+ export interface DoctorOptions extends OperationOptions {
146
+ readonly engine?: EngineSelector | "all";
147
+ readonly frontend?: boolean;
148
+ }
58
149
  export type VoiceKind = "speech" | "song" | "all";
150
+ export interface VoiceDescriptor {
151
+ readonly id: string;
152
+ readonly engine: EngineId;
153
+ readonly name: string;
154
+ readonly character: string | null;
155
+ readonly description: string | null;
156
+ readonly kinds: readonly ("speech" | "song")[];
157
+ readonly styleId: number | null;
158
+ readonly type: string | null;
159
+ readonly baseF0: number | null;
160
+ readonly f0Range: {
161
+ readonly min: number;
162
+ readonly max: number;
163
+ } | null;
164
+ readonly hash: string | null;
165
+ }
166
+ export interface VoicesOptions extends OperationOptions {
167
+ readonly engine?: EngineSelector | "all";
168
+ readonly kind?: VoiceKind;
169
+ }
170
+ export interface VoicesResult {
171
+ readonly voices: readonly VoiceDescriptor[];
172
+ readonly voicevox: {
173
+ readonly queried: boolean;
174
+ readonly available: boolean;
175
+ readonly error: ErrorData | null;
176
+ };
177
+ }
178
+ export interface ValidationResult {
179
+ readonly ok: true;
180
+ readonly operation: "validate";
181
+ readonly engine: EngineId | "auto";
182
+ readonly kind: "speech" | "song";
183
+ readonly renderable: boolean | "unknown";
184
+ readonly estimate: {
185
+ readonly durationSeconds: number;
186
+ readonly frames: number;
187
+ readonly wavBytes: number;
188
+ readonly sampleRate: number;
189
+ } | null;
190
+ readonly voice: string | undefined;
191
+ readonly reading: {
192
+ readonly kana: string;
193
+ readonly frontend: string;
194
+ readonly moraCount: number;
195
+ } | null;
196
+ readonly notes: number | null;
197
+ readonly warnings: readonly Diagnostic[];
198
+ readonly adjustments: readonly {
199
+ readonly code: string;
200
+ readonly message: string;
201
+ }[];
202
+ readonly requestHash: string;
203
+ readonly planHash: string | null;
204
+ readonly request: ResolvedRequest;
205
+ }
206
+ export interface PlanResult {
207
+ readonly ok: true;
208
+ readonly operation: "plan";
209
+ readonly engine: EngineId;
210
+ readonly requestHash: string;
211
+ readonly plan: PlanSummary;
212
+ readonly request: ResolvedRequest;
213
+ }
214
+ export interface CompileResult extends CompiledPlan {
215
+ readonly request: ResolvedRequest;
216
+ readonly requestHash: string;
217
+ readonly engine: "formant";
218
+ }
219
+ export interface InspectResult {
220
+ readonly info: AudioInfo;
221
+ readonly bytes: number;
222
+ readonly sha256: string;
223
+ readonly peak: number;
224
+ readonly rms: number;
225
+ readonly dc: number;
226
+ readonly clipped: number;
227
+ readonly finite: boolean;
228
+ readonly pitch: {
229
+ readonly medianHz: number | null;
230
+ readonly minHz: number | null;
231
+ readonly maxHz: number | null;
232
+ readonly voicedRatio: number;
233
+ readonly track?: readonly {
234
+ readonly seconds: number;
235
+ readonly hz: number;
236
+ readonly clarity: number;
237
+ }[];
238
+ };
239
+ }
240
+ export interface InspectOptions {
241
+ readonly pitchTrack?: boolean;
242
+ readonly windowMs?: number;
243
+ }
244
+ export interface RenderPlanOptions extends StreamOptions {
245
+ readonly requestHash?: string;
246
+ readonly readMs?: number;
247
+ readonly planMs?: number;
248
+ }
59
249
  export declare class Kongyoroid {
60
- readonly client: VoicevoxClient;
61
- readonly styles: StyleCatalog;
62
- readonly dictionary: Dictionary;
250
+ readonly dictionary: LocalDictionary;
251
+ private clientInstance;
252
+ private stylesInstance;
253
+ private voicevoxDictionaryInstance;
254
+ private readonly voicevoxOptions;
63
255
  private readonly defaults;
64
256
  private readonly semaphore;
65
257
  private readonly cache;
258
+ private readonly cacheStrict;
259
+ private readonly diskCache;
66
260
  private readonly concurrency;
67
261
  private readonly probeTimeoutMs;
262
+ private readonly inFlight;
68
263
  private probe;
69
264
  constructor(options?: KongyoroidOptions);
70
- clearCache(): Promise<void>;
265
+ get client(): VoicevoxClient;
266
+ get styles(): StyleCatalog;
267
+ get voicevoxDictionary(): Dictionary;
268
+ get defaultEngine(): EngineSelector;
269
+ get voices$(): readonly VoiceProfile[];
270
+ clearCache(): Promise<number>;
271
+ cacheStats(): Promise<CacheStats | null>;
272
+ pruneCache(maxBytes?: number, maxEntries?: number): Promise<number>;
71
273
  withDefaults(request: unknown): unknown;
274
+ parse(request: unknown): {
275
+ readonly request: ResolvedRequest;
276
+ readonly requestHash: string;
277
+ };
72
278
  resolveEngine(selector: EngineSelector, options?: OperationOptions): Promise<EngineId>;
73
279
  dictionaryDigest(options?: OperationOptions): Promise<string | undefined>;
74
280
  resolveStyles(request: ResolvedRequest, options?: OperationOptions): Promise<RenderStyles>;
281
+ private compileOptions;
282
+ compile(request: unknown, options?: OperationOptions): Promise<CompileResult>;
283
+ validate(request: unknown, options?: OperationOptions): Promise<ValidationResult>;
284
+ plan(request: unknown, options?: PlanDetail | (OperationOptions & {
285
+ readonly detail?: PlanDetail;
286
+ })): Promise<PlanResult>;
287
+ renderPlan(plan: SynthesisPlan, options?: RenderPlanOptions): Promise<RenderResult>;
288
+ private formantResult;
289
+ private cacheGet;
290
+ private cacheSet;
75
291
  render(request: unknown, options?: OperationOptions): Promise<RenderResult>;
76
292
  speak(input: string | SpeakInput, options?: OperationOptions): Promise<RenderResult>;
77
293
  sing(input: SingInput, options?: OperationOptions): Promise<RenderResult>;
294
+ renderStream(request: unknown, options?: StreamOptions): AsyncGenerator<PcmBlock, {
295
+ readonly plan: SynthesisPlan;
296
+ readonly stats: RenderStats;
297
+ }, void>;
298
+ speakStream(chunks: AsyncIterable<string>, input?: Omit<SpeakInput, "text"> | Readonly<Record<string, unknown>>, options?: Omit<TextStreamOptions, "dictionary">): AsyncGenerator<TextStreamEvent, void, void>;
78
299
  reading(text: string, options?: ReadingOptions): Promise<Reading>;
79
- voices(kind?: VoiceKind, options?: OperationOptions): Promise<readonly VoiceStyle[]>;
80
- doctor(options?: OperationOptions): Promise<Diagnosis>;
300
+ voices(options?: VoicesOptions): Promise<VoicesResult>;
301
+ doctor(options?: DoctorOptions): Promise<Diagnosis>;
302
+ voicevoxDoctor(options?: OperationOptions): Promise<VoicevoxDiagnosis>;
303
+ inspect(audio: Uint8Array, options?: InspectOptions): InspectResult;
304
+ frontendStatus(): ReturnType<typeof frontendState>;
305
+ voiceProfile(id?: string): VoiceProfile;
306
+ voiceHash(id?: string): string;
81
307
  }
308
+ export declare function readingFromPlan(plan: ReadingPlan): Reading;
82
309
  //# sourceMappingURL=kongyoroid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kongyoroid.d.ts","sourceRoot":"","sources":["../src/kongyoroid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kongyoroid.d.ts","sourceRoot":"","sources":["../src/kongyoroid.ts"],"names":[],"mappings":"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"}