@coeiro-operator/audio 1.0.3 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/README.md +48 -0
  2. package/dist/audio-player.d.ts +32 -11
  3. package/dist/audio-player.d.ts.map +1 -1
  4. package/dist/audio-player.js +236 -210
  5. package/dist/audio-player.js.map +1 -1
  6. package/dist/audio-stream-controller.d.ts +27 -7
  7. package/dist/audio-stream-controller.d.ts.map +1 -1
  8. package/dist/audio-stream-controller.js +143 -40
  9. package/dist/audio-stream-controller.js.map +1 -1
  10. package/dist/audio-synthesizer.d.ts +5 -4
  11. package/dist/audio-synthesizer.d.ts.map +1 -1
  12. package/dist/audio-synthesizer.js +36 -23
  13. package/dist/audio-synthesizer.js.map +1 -1
  14. package/dist/chunk-generation-manager.d.ts +34 -2
  15. package/dist/chunk-generation-manager.d.ts.map +1 -1
  16. package/dist/chunk-generation-manager.js +237 -15
  17. package/dist/chunk-generation-manager.js.map +1 -1
  18. package/dist/debug-error-test.d.ts +5 -0
  19. package/dist/debug-error-test.d.ts.map +1 -0
  20. package/dist/debug-error-test.js +91 -0
  21. package/dist/debug-error-test.js.map +1 -0
  22. package/dist/index.d.ts +18 -6
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +30 -4
  25. package/dist/index.js.map +1 -1
  26. package/dist/open-promise.d.ts +18 -0
  27. package/dist/open-promise.d.ts.map +1 -0
  28. package/dist/open-promise.js +42 -0
  29. package/dist/open-promise.js.map +1 -0
  30. package/dist/queue/speech-queue.d.ts +34 -0
  31. package/dist/queue/speech-queue.d.ts.map +1 -0
  32. package/dist/queue/speech-queue.js +36 -0
  33. package/dist/queue/speech-queue.js.map +1 -0
  34. package/dist/queue/task-queue.d.ts +52 -0
  35. package/dist/queue/task-queue.d.ts.map +1 -0
  36. package/dist/queue/task-queue.js +259 -0
  37. package/dist/queue/task-queue.js.map +1 -0
  38. package/dist/queue/types.d.ts +42 -0
  39. package/dist/queue/types.d.ts.map +1 -0
  40. package/dist/queue/types.js +5 -0
  41. package/dist/queue/types.js.map +1 -0
  42. package/dist/speech-queue.d.ts +4 -49
  43. package/dist/speech-queue.d.ts.map +1 -1
  44. package/dist/speech-queue.js +3 -140
  45. package/dist/speech-queue.js.map +1 -1
  46. package/dist/speed-utils.d.ts +25 -0
  47. package/dist/speed-utils.d.ts.map +1 -0
  48. package/dist/speed-utils.js +77 -0
  49. package/dist/speed-utils.js.map +1 -0
  50. package/dist/synthesis-processor.d.ts.map +1 -1
  51. package/dist/synthesis-processor.js +34 -10
  52. package/dist/synthesis-processor.js.map +1 -1
  53. package/dist/test-helpers.d.ts +0 -9
  54. package/dist/test-helpers.d.ts.map +1 -1
  55. package/dist/test-helpers.js +1 -80
  56. package/dist/test-helpers.js.map +1 -1
  57. package/dist/types.d.ts +41 -10
  58. package/dist/types.d.ts.map +1 -1
  59. package/dist/voice-resolver.d.ts.map +1 -1
  60. package/dist/voice-resolver.js +33 -3
  61. package/dist/voice-resolver.js.map +1 -1
  62. package/package.json +4 -6
package/dist/types.d.ts CHANGED
@@ -32,20 +32,50 @@ import type { Speaker } from '@coeiro-operator/core';
32
32
  export interface VoiceConfig {
33
33
  speaker: Speaker;
34
34
  selectedStyleId: number;
35
+ speakerId?: string;
36
+ styleMorasPerSecond?: Record<number, number>;
35
37
  }
36
- export type SpeechTaskType = 'speech';
37
- export interface SpeechTask {
38
- id: number;
39
- type: SpeechTaskType;
40
- text: string;
41
- options: SynthesizeOptions;
42
- timestamp: number;
43
- resolve?: () => void;
44
- reject?: (error: Error) => void;
38
+ /**
39
+ * PunctuationPauseSettings: 句読点ポーズ設定
40
+ * 日本語発話に特化したモーラベースのポーズ制御
41
+ */
42
+ export interface PunctuationPauseSettings {
43
+ enabled: boolean;
44
+ pauseMoras?: {
45
+ period?: number;
46
+ exclamation?: number;
47
+ question?: number;
48
+ comma?: number;
49
+ };
45
50
  }
51
+ /**
52
+ * SpeakSettings: 音声合成タスク全体の設定
53
+ * VoiceConfig + speed + 将来的な拡張パラメータを統合
54
+ */
55
+ export interface SpeakSettings {
56
+ speaker: Speaker;
57
+ styleId: number;
58
+ speed: number;
59
+ volume?: number;
60
+ pitch?: number;
61
+ intonation?: number;
62
+ }
63
+ /**
64
+ * GenerationResult: チャンク生成結果(成功 or 失敗)
65
+ */
66
+ export type GenerationResult = {
67
+ success: true;
68
+ data: AudioResult;
69
+ } | {
70
+ success: false;
71
+ error: Error;
72
+ chunkIndex: number;
73
+ };
74
+ export type { SpeechTask } from './queue/speech-queue.js';
46
75
  export interface SynthesizeOptions {
47
76
  voice?: string | VoiceConfig | null;
48
- rate?: number;
77
+ rate?: number | string;
78
+ factor?: number;
49
79
  outputFile?: string | null;
50
80
  style?: string;
51
81
  chunkMode?: 'none' | 'small' | 'medium' | 'large' | 'punctuation';
@@ -55,6 +85,7 @@ export interface SynthesizeOptions {
55
85
  export interface SynthesizeResult {
56
86
  success: boolean;
57
87
  taskId?: number;
88
+ promise?: Promise<void>;
58
89
  queueLength?: number;
59
90
  outputFile?: string;
60
91
  latency?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGlF,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC;AAGhC,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC;AAE9C,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,OAAO,KAAK,EAAa,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC;AAEtC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,iBAAiB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,aAAa,CAAC;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"voice-resolver.d.ts","sourceRoot":"","sources":["../src/voice-resolver.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,qBAAa,aAAa;IAEtB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,gBAAgB;gBAFhB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB;IAG5C;;OAEG;IACG,qBAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAgDnF;;OAEG;IACG,wBAAwB,CAC5B,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,WAAW,CAAC;IAuCvB;;OAEG;IACG,kBAAkB,CACtB,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS,EAC9C,KAAK,CAAC,EAAE,MAAM,EACd,aAAa,GAAE,OAAc,GAC5B,OAAO,CAAC,WAAW,CAAC;CA6CxB"}
1
+ {"version":3,"file":"voice-resolver.d.ts","sourceRoot":"","sources":["../src/voice-resolver.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,qBAAa,aAAa;IAEtB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,gBAAgB;gBAFhB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB;IAG5C;;OAEG;IACG,qBAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IA0DnF;;OAEG;IACG,wBAAwB,CAC5B,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,WAAW,CAAC;IAiEvB;;OAEG;IACG,kBAAkB,CACtB,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS,EAC9C,KAAK,CAAC,EAAE,MAAM,EACd,aAAa,GAAE,OAAc,GAC5B,OAAO,CAAC,WAAW,CAAC;CA6CxB"}
@@ -45,9 +45,18 @@ export class VoiceResolver {
45
45
  // セッション情報がない場合はデフォルトスタイルを使用
46
46
  selectedStyle = this.operatorManager.selectStyle(character, null);
47
47
  }
48
+ // 新しいstyles構造からstyleMorasPerSecondを生成
49
+ const styleMorasPerSecond = {};
50
+ if (character.styles) {
51
+ Object.entries(character.styles).forEach(([styleId, config]) => {
52
+ styleMorasPerSecond[Number(styleId)] = config.morasPerSecond;
53
+ });
54
+ }
48
55
  return {
49
56
  speaker: character.speaker,
50
57
  selectedStyleId: selectedStyle.styleId,
58
+ speakerId: character.speaker.speakerId,
59
+ styleMorasPerSecond,
51
60
  };
52
61
  }
53
62
  return null;
@@ -73,10 +82,22 @@ export class VoiceResolver {
73
82
  if (!speaker) {
74
83
  throw new Error(`Speaker '${characterConfig.speakerId}' not found for character '${characterId}'`);
75
84
  }
76
- // スタイル選択(styleNameが指定されていればそれを使用、そうでなければdefaultStyle)
77
- let selectedStyle = speaker.styles.find(s => s.styleName === (styleName || characterConfig.defaultStyle));
85
+ // スタイル選択
86
+ let selectedStyle;
87
+ if (styleName) {
88
+ // スタイル名が指定された場合、characterConfig.stylesから対応するstyleIdを探す
89
+ const styleEntry = Object.entries(characterConfig.styles).find(([_, config]) => config.styleName === styleName);
90
+ if (styleEntry) {
91
+ const styleId = Number(styleEntry[0]);
92
+ selectedStyle = speaker.styles.find(s => s.styleId === styleId);
93
+ }
94
+ }
95
+ // デフォルトスタイルを使用
96
+ if (!selectedStyle) {
97
+ selectedStyle = speaker.styles.find(s => s.styleId === characterConfig.defaultStyleId);
98
+ }
99
+ // それでも見つからない場合は最初のスタイルを使用
78
100
  if (!selectedStyle) {
79
- // デフォルトスタイルが見つからない場合は最初のスタイルを使用
80
101
  selectedStyle = speaker.styles[0];
81
102
  }
82
103
  // speaker-provider.Speakerからoperator.Speakerへ変換
@@ -85,9 +106,18 @@ export class VoiceResolver {
85
106
  speakerName: speaker.speakerName,
86
107
  styles: speaker.styles,
87
108
  };
109
+ // 新しいstyles構造からstyleMorasPerSecondを生成
110
+ const styleMorasPerSecond = {};
111
+ if (characterConfig.styles) {
112
+ Object.entries(characterConfig.styles).forEach(([styleId, config]) => {
113
+ styleMorasPerSecond[Number(styleId)] = config.morasPerSecond;
114
+ });
115
+ }
88
116
  return {
89
117
  speaker: operatorSpeaker,
90
118
  selectedStyleId: selectedStyle.styleId,
119
+ speakerId: characterConfig.speakerId,
120
+ styleMorasPerSecond,
91
121
  };
92
122
  }
93
123
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"voice-resolver.js","sourceRoot":"","sources":["../src/voice-resolver.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAGjD,MAAM,OAAO,aAAa;IAEd;IACA;IACA;IAHV,YACU,aAA4B,EAC5B,eAAgC,EAChC,gBAAkC;QAFlC,kBAAa,GAAb,aAAa,CAAe;QAC5B,oBAAe,GAAf,eAAe,CAAiB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAkB;IACzC,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,qBAAqB,CAAC,SAAyB;QACnD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,EAAE,CAAC;YAEvE,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAEzF,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClE,wBAAwB;gBACxB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,yBAAyB,EAAE,CAAC;gBACvE,IAAI,aAAkB,CAAC;gBAEvB,IAAI,SAAS,EAAE,CAAC;oBACd,yBAAyB;oBACzB,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBACzE,CAAC;qBAAM,IAAI,OAAO,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1C,+BAA+B;oBAC/B,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;oBACrF,IAAI,UAAU,EAAE,CAAC;wBACf,aAAa,GAAG,UAAU,CAAC;wBAC3B,MAAM,CAAC,KAAK,CACV,iBAAiB,UAAU,CAAC,SAAS,QAAQ,UAAU,CAAC,OAAO,GAAG,CACnE,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,8BAA8B;wBAC9B,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACpE,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,4BAA4B;oBAC5B,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACpE,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,SAAS,CAAC,OAAO;oBAC1B,eAAe,EAAE,aAAa,CAAC,OAAO;iBACvC,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,iBAAkB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,wBAAwB,CAC5B,WAAmB,EACnB,SAAyB;QAEzB,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YACjF,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,wBAAwB,WAAW,EAAE,CAAC,CAAC;YACzD,CAAC;YAED,2CAA2C;YAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,eAAe,CAAC,SAAS,CAAC,CAAC;YAChF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,YAAY,eAAe,CAAC,SAAS,8BAA8B,WAAW,GAAG,CAAC,CAAC;YACrG,CAAC;YAED,sDAAsD;YACtD,IAAI,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;YAC1G,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,gCAAgC;gBAChC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;YAED,gDAAgD;YAChD,MAAM,eAAe,GAAY;gBAC/B,SAAS,EAAE,OAAO,CAAC,WAAW;gBAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,eAAe;gBACxB,eAAe,EAAE,aAAc,CAAC,OAAO;aACxC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mBAAoB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,gCAAgC,WAAW,MAAO,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,KAA8C,EAC9C,KAAc,EACd,gBAAyB,IAAI;QAE7B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,0BAA0B;YAC1B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAC9D,IAAI,aAAa,EAAE,CAAC;gBAClB,oBAAoB;gBACpB,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CACrD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,aAAa,CAAC,eAAe,CACjD,CAAC;gBACF,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,IAAI,MAAM,aAAa,CAAC,eAAe,EAAE,CAAC;gBACpF,MAAM,CAAC,IAAI,CACT,eAAe,aAAa,CAAC,OAAO,CAAC,WAAW,WAAW,SAAS,GAAG,CACxE,CAAC;gBACF,OAAO,aAAa,CAAC;YACvB,CAAC;iBAAM,IAAI,aAAa,EAAE,CAAC;gBACzB,iCAAiC;gBACjC,MAAM,kBAAkB,GAAG,WAAW,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,mBAAmB,kBAAkB,EAAE,CAAC,CAAC;gBACrD,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACN,gBAAgB;gBAChB,MAAM,IAAI,KAAK,CACb,iDAAiD,CAClD,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,8BAA8B;YAC9B,MAAM,CAAC,IAAI,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC;YAClC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACtE,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CACnD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,eAAe,CAC/C,CAAC;YACF,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,IAAI,MAAM,WAAW,CAAC,eAAe,EAAE,CAAC;YAClF,MAAM,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,WAAW,WAAW,SAAS,GAAG,CAAC,CAAC;YAC3E,OAAO,WAAW,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,4BAA4B;YAC5B,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAC7C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,eAAe,CACzC,CAAC;YACF,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,IAAI,MAAM,KAAK,CAAC,eAAe,EAAE,CAAC;YAC5E,MAAM,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,OAAO,CAAC,WAAW,WAAW,SAAS,GAAG,CAAC,CAAC;YAChF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"voice-resolver.js","sourceRoot":"","sources":["../src/voice-resolver.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAGjD,MAAM,OAAO,aAAa;IAEd;IACA;IACA;IAHV,YACU,aAA4B,EAC5B,eAAgC,EAChC,gBAAkC;QAFlC,kBAAa,GAAb,aAAa,CAAe;QAC5B,oBAAe,GAAf,eAAe,CAAiB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAkB;IACzC,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,qBAAqB,CAAC,SAAyB;QACnD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,EAAE,CAAC;YAEvE,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAEzF,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClE,wBAAwB;gBACxB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,yBAAyB,EAAE,CAAC;gBACvE,IAAI,aAAkB,CAAC;gBAEvB,IAAI,SAAS,EAAE,CAAC;oBACd,yBAAyB;oBACzB,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBACzE,CAAC;qBAAM,IAAI,OAAO,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1C,+BAA+B;oBAC/B,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;oBACrF,IAAI,UAAU,EAAE,CAAC;wBACf,aAAa,GAAG,UAAU,CAAC;wBAC3B,MAAM,CAAC,KAAK,CACV,iBAAiB,UAAU,CAAC,SAAS,QAAQ,UAAU,CAAC,OAAO,GAAG,CACnE,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,8BAA8B;wBAC9B,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACpE,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,4BAA4B;oBAC5B,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACpE,CAAC;gBAED,sCAAsC;gBACtC,MAAM,mBAAmB,GAA2B,EAAE,CAAC;gBACvD,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;oBACrB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE;wBAC7D,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC;oBAC/D,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,SAAS,CAAC,OAAO;oBAC1B,eAAe,EAAE,aAAa,CAAC,OAAO;oBACtC,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,SAAS;oBACtC,mBAAmB;iBACpB,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,iBAAkB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,wBAAwB,CAC5B,WAAmB,EACnB,SAAyB;QAEzB,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YACjF,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,wBAAwB,WAAW,EAAE,CAAC,CAAC;YACzD,CAAC;YAED,2CAA2C;YAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,eAAe,CAAC,SAAS,CAAC,CAAC;YAChF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,YAAY,eAAe,CAAC,SAAS,8BAA8B,WAAW,GAAG,CAAC,CAAC;YACrG,CAAC;YAED,SAAS;YACT,IAAI,aAAa,CAAC;YAClB,IAAI,SAAS,EAAE,CAAC;gBACd,uDAAuD;gBACvD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAC5D,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAChD,CAAC;gBACF,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;YAED,eAAe;YACf,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,eAAe,CAAC,cAAc,CAAC,CAAC;YACzF,CAAC;YAED,0BAA0B;YAC1B,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;YAED,gDAAgD;YAChD,MAAM,eAAe,GAAY;gBAC/B,SAAS,EAAE,OAAO,CAAC,WAAW;gBAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;YAEF,sCAAsC;YACtC,MAAM,mBAAmB,GAA2B,EAAE,CAAC;YACvD,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;gBAC3B,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE;oBACnE,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,eAAe;gBACxB,eAAe,EAAE,aAAc,CAAC,OAAO;gBACvC,SAAS,EAAE,eAAe,CAAC,SAAS;gBACpC,mBAAmB;aACpB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mBAAoB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,gCAAgC,WAAW,MAAO,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,KAA8C,EAC9C,KAAc,EACd,gBAAyB,IAAI;QAE7B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,0BAA0B;YAC1B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAC9D,IAAI,aAAa,EAAE,CAAC;gBAClB,oBAAoB;gBACpB,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CACrD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,aAAa,CAAC,eAAe,CACjD,CAAC;gBACF,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,IAAI,MAAM,aAAa,CAAC,eAAe,EAAE,CAAC;gBACpF,MAAM,CAAC,IAAI,CACT,eAAe,aAAa,CAAC,OAAO,CAAC,WAAW,WAAW,SAAS,GAAG,CACxE,CAAC;gBACF,OAAO,aAAa,CAAC;YACvB,CAAC;iBAAM,IAAI,aAAa,EAAE,CAAC;gBACzB,iCAAiC;gBACjC,MAAM,kBAAkB,GAAG,WAAW,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,mBAAmB,kBAAkB,EAAE,CAAC,CAAC;gBACrD,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACN,gBAAgB;gBAChB,MAAM,IAAI,KAAK,CACb,iDAAiD,CAClD,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,8BAA8B;YAC9B,MAAM,CAAC,IAAI,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC;YAClC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACtE,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CACnD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,eAAe,CAC/C,CAAC;YACF,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,IAAI,MAAM,WAAW,CAAC,eAAe,EAAE,CAAC;YAClF,MAAM,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,WAAW,WAAW,SAAS,GAAG,CAAC,CAAC;YAC3E,OAAO,WAAW,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,4BAA4B;YAC5B,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAC7C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,eAAe,CACzC,CAAC;YACF,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,IAAI,MAAM,KAAK,CAAC,eAAe,EAAE,CAAC;YAC5E,MAAM,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,OAAO,CAAC,WAAW,WAAW,SAAS,GAAG,CAAC,CAAC;YAChF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coeiro-operator/audio",
3
- "version": "1.0.3",
3
+ "version": "1.2.0",
4
4
  "description": "Audio synthesis and playback module for COEIRO Operator",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -19,15 +19,13 @@
19
19
  "ia32"
20
20
  ],
21
21
  "dependencies": {
22
+ "@echogarden/audio-io": "^0.4.2",
22
23
  "dsp.js": "^1.0.1",
23
24
  "echogarden": "^2.10.1",
24
25
  "node-fetch": "^3.3.2",
25
26
  "wav": "^1.0.2",
26
27
  "@coeiro-operator/common": "1.0.2",
27
- "@coeiro-operator/core": "1.1.0"
28
- },
29
- "optionalDependencies": {
30
- "speaker": "^0.5.5"
28
+ "@coeiro-operator/core": "1.2.0"
31
29
  },
32
30
  "devDependencies": {
33
31
  "@types/node": "^22.18.3",
@@ -56,7 +54,7 @@
56
54
  },
57
55
  "scripts": {
58
56
  "build": "tsc --build",
59
- "test": "vitest",
57
+ "test": "vitest --silent",
60
58
  "test:watch": "vitest --watch",
61
59
  "type-check": "tsc --noEmit",
62
60
  "lint": "eslint src --ext .ts,.js",