@speech-sdk/core 0.7.0 → 0.8.0-alpha

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 (200) hide show
  1. package/README.md +165 -108
  2. package/dist/__tests__/e2e/_save-audio.d.ts +0 -42
  3. package/dist/__tests__/e2e/_save-audio.d.ts.map +1 -1
  4. package/dist/__tests__/e2e/_save-audio.js +0 -59
  5. package/dist/__tests__/e2e/_save-audio.js.map +1 -1
  6. package/dist/audio-duration.d.ts +0 -5
  7. package/dist/audio-duration.d.ts.map +1 -1
  8. package/dist/audio-duration.js +3 -10
  9. package/dist/audio-duration.js.map +1 -1
  10. package/dist/audio-utils.d.ts +0 -10
  11. package/dist/audio-utils.d.ts.map +1 -1
  12. package/dist/audio-utils.js +2 -14
  13. package/dist/audio-utils.js.map +1 -1
  14. package/dist/captions.d.ts +0 -108
  15. package/dist/captions.d.ts.map +1 -1
  16. package/dist/captions.js +8 -98
  17. package/dist/captions.js.map +1 -1
  18. package/dist/conversation/attribute-timestamps.d.ts +26 -0
  19. package/dist/conversation/attribute-timestamps.d.ts.map +1 -0
  20. package/dist/conversation/attribute-timestamps.js +276 -0
  21. package/dist/conversation/attribute-timestamps.js.map +1 -0
  22. package/dist/conversation/dispatch.d.ts +5 -5
  23. package/dist/conversation/dispatch.d.ts.map +1 -1
  24. package/dist/conversation/dispatch.js +18 -8
  25. package/dist/conversation/dispatch.js.map +1 -1
  26. package/dist/conversation/errors.d.ts +3 -0
  27. package/dist/conversation/errors.d.ts.map +1 -1
  28. package/dist/conversation/errors.js +6 -0
  29. package/dist/conversation/errors.js.map +1 -1
  30. package/dist/conversation/pcm-concat.d.ts +0 -23
  31. package/dist/conversation/pcm-concat.d.ts.map +1 -1
  32. package/dist/conversation/pcm-concat.js +5 -43
  33. package/dist/conversation/pcm-concat.js.map +1 -1
  34. package/dist/conversation/proportional-fill.d.ts +10 -0
  35. package/dist/conversation/proportional-fill.d.ts.map +1 -0
  36. package/dist/conversation/proportional-fill.js +64 -0
  37. package/dist/conversation/proportional-fill.js.map +1 -0
  38. package/dist/conversation/silence-detection.d.ts +14 -0
  39. package/dist/conversation/silence-detection.d.ts.map +1 -0
  40. package/dist/conversation/silence-detection.js +52 -0
  41. package/dist/conversation/silence-detection.js.map +1 -0
  42. package/dist/conversation/stitch.d.ts +3 -6
  43. package/dist/conversation/stitch.d.ts.map +1 -1
  44. package/dist/conversation/stitch.js +40 -36
  45. package/dist/conversation/stitch.js.map +1 -1
  46. package/dist/conversation/types.d.ts +1 -35
  47. package/dist/conversation/types.d.ts.map +1 -1
  48. package/dist/conversation/validate.d.ts +1 -16
  49. package/dist/conversation/validate.d.ts.map +1 -1
  50. package/dist/conversation/validate.js +29 -29
  51. package/dist/conversation/validate.js.map +1 -1
  52. package/dist/default-stt-fallback.d.ts +3 -0
  53. package/dist/default-stt-fallback.d.ts.map +1 -0
  54. package/dist/default-stt-fallback.js +11 -0
  55. package/dist/default-stt-fallback.js.map +1 -0
  56. package/dist/derive-timestamps.d.ts +1 -5
  57. package/dist/derive-timestamps.d.ts.map +1 -1
  58. package/dist/derive-timestamps.js +1 -15
  59. package/dist/derive-timestamps.js.map +1 -1
  60. package/dist/errors.d.ts +5 -12
  61. package/dist/errors.d.ts.map +1 -1
  62. package/dist/errors.js +12 -14
  63. package/dist/errors.js.map +1 -1
  64. package/dist/generate-conversation.d.ts +4 -3
  65. package/dist/generate-conversation.d.ts.map +1 -1
  66. package/dist/generate-conversation.js +161 -67
  67. package/dist/generate-conversation.js.map +1 -1
  68. package/dist/generate-speech.d.ts +1 -26
  69. package/dist/generate-speech.d.ts.map +1 -1
  70. package/dist/generate-speech.js +85 -64
  71. package/dist/generate-speech.js.map +1 -1
  72. package/dist/index.d.ts +4 -11
  73. package/dist/index.d.ts.map +1 -1
  74. package/dist/index.js +5 -4
  75. package/dist/index.js.map +1 -1
  76. package/dist/logger.d.ts.map +1 -1
  77. package/dist/logger.js +2 -13
  78. package/dist/logger.js.map +1 -1
  79. package/dist/metadata.d.ts +0 -22
  80. package/dist/metadata.d.ts.map +1 -1
  81. package/dist/provider-utils.d.ts +3 -9
  82. package/dist/provider-utils.d.ts.map +1 -1
  83. package/dist/provider-utils.js +34 -51
  84. package/dist/provider-utils.js.map +1 -1
  85. package/dist/providers/cartesia/alignment.d.ts +0 -16
  86. package/dist/providers/cartesia/alignment.d.ts.map +1 -1
  87. package/dist/providers/cartesia/alignment.js +1 -6
  88. package/dist/providers/cartesia/alignment.js.map +1 -1
  89. package/dist/providers/cartesia/index.d.ts +7 -19
  90. package/dist/providers/cartesia/index.d.ts.map +1 -1
  91. package/dist/providers/cartesia/index.js +68 -80
  92. package/dist/providers/cartesia/index.js.map +1 -1
  93. package/dist/providers/deepgram/index.d.ts +7 -8
  94. package/dist/providers/deepgram/index.d.ts.map +1 -1
  95. package/dist/providers/deepgram/index.js +17 -18
  96. package/dist/providers/deepgram/index.js.map +1 -1
  97. package/dist/providers/elevenlabs/alignment.d.ts +7 -21
  98. package/dist/providers/elevenlabs/alignment.d.ts.map +1 -1
  99. package/dist/providers/elevenlabs/alignment.js +8 -9
  100. package/dist/providers/elevenlabs/alignment.js.map +1 -1
  101. package/dist/providers/elevenlabs/index.d.ts +7 -38
  102. package/dist/providers/elevenlabs/index.d.ts.map +1 -1
  103. package/dist/providers/elevenlabs/index.js +161 -169
  104. package/dist/providers/elevenlabs/index.js.map +1 -1
  105. package/dist/providers/fal/index.d.ts +7 -18
  106. package/dist/providers/fal/index.d.ts.map +1 -1
  107. package/dist/providers/fal/index.js +37 -31
  108. package/dist/providers/fal/index.js.map +1 -1
  109. package/dist/providers/fish-audio/index.d.ts +7 -8
  110. package/dist/providers/fish-audio/index.d.ts.map +1 -1
  111. package/dist/providers/fish-audio/index.js +23 -19
  112. package/dist/providers/fish-audio/index.js.map +1 -1
  113. package/dist/providers/gateway/index.d.ts +68 -0
  114. package/dist/providers/gateway/index.d.ts.map +1 -0
  115. package/dist/providers/gateway/index.js +236 -0
  116. package/dist/providers/gateway/index.js.map +1 -0
  117. package/dist/providers/google/index.d.ts +7 -20
  118. package/dist/providers/google/index.d.ts.map +1 -1
  119. package/dist/providers/google/index.js +161 -151
  120. package/dist/providers/google/index.js.map +1 -1
  121. package/dist/providers/hume/alignment.d.ts +30 -35
  122. package/dist/providers/hume/alignment.d.ts.map +1 -1
  123. package/dist/providers/hume/alignment.js +14 -8
  124. package/dist/providers/hume/alignment.js.map +1 -1
  125. package/dist/providers/hume/index.d.ts +7 -16
  126. package/dist/providers/hume/index.d.ts.map +1 -1
  127. package/dist/providers/hume/index.js +55 -65
  128. package/dist/providers/hume/index.js.map +1 -1
  129. package/dist/providers/inworld/alignment.d.ts +8 -22
  130. package/dist/providers/inworld/alignment.d.ts.map +1 -1
  131. package/dist/providers/inworld/alignment.js +9 -8
  132. package/dist/providers/inworld/alignment.js.map +1 -1
  133. package/dist/providers/inworld/index.d.ts +7 -20
  134. package/dist/providers/inworld/index.d.ts.map +1 -1
  135. package/dist/providers/inworld/index.js +47 -39
  136. package/dist/providers/inworld/index.js.map +1 -1
  137. package/dist/providers/mistral/index.d.ts +7 -8
  138. package/dist/providers/mistral/index.d.ts.map +1 -1
  139. package/dist/providers/mistral/index.js +39 -38
  140. package/dist/providers/mistral/index.js.map +1 -1
  141. package/dist/providers/murf/alignment.d.ts +10 -19
  142. package/dist/providers/murf/alignment.d.ts.map +1 -1
  143. package/dist/providers/murf/alignment.js +10 -5
  144. package/dist/providers/murf/alignment.js.map +1 -1
  145. package/dist/providers/murf/index.d.ts +7 -16
  146. package/dist/providers/murf/index.d.ts.map +1 -1
  147. package/dist/providers/murf/index.js +65 -57
  148. package/dist/providers/murf/index.js.map +1 -1
  149. package/dist/providers/openai/index.d.ts +36 -29
  150. package/dist/providers/openai/index.d.ts.map +1 -1
  151. package/dist/providers/openai/index.js +270 -106
  152. package/dist/providers/openai/index.js.map +1 -1
  153. package/dist/providers/resemble/alignment.d.ts +8 -29
  154. package/dist/providers/resemble/alignment.d.ts.map +1 -1
  155. package/dist/providers/resemble/alignment.js +9 -12
  156. package/dist/providers/resemble/alignment.js.map +1 -1
  157. package/dist/providers/resemble/index.d.ts +7 -11
  158. package/dist/providers/resemble/index.d.ts.map +1 -1
  159. package/dist/providers/resemble/index.js +54 -48
  160. package/dist/providers/resemble/index.js.map +1 -1
  161. package/dist/providers/xai/index.d.ts +7 -9
  162. package/dist/providers/xai/index.d.ts.map +1 -1
  163. package/dist/providers/xai/index.js +37 -40
  164. package/dist/providers/xai/index.js.map +1 -1
  165. package/dist/providers.d.ts +29 -0
  166. package/dist/providers.d.ts.map +1 -0
  167. package/dist/providers.js +15 -0
  168. package/dist/providers.js.map +1 -0
  169. package/dist/resolve-provider.d.ts.map +1 -1
  170. package/dist/resolve-provider.js +8 -51
  171. package/dist/resolve-provider.js.map +1 -1
  172. package/dist/speech-provider.d.ts +13 -53
  173. package/dist/speech-provider.d.ts.map +1 -1
  174. package/dist/speech-provider.js +5 -26
  175. package/dist/speech-provider.js.map +1 -1
  176. package/dist/speech-result.d.ts +4 -9
  177. package/dist/speech-result.d.ts.map +1 -1
  178. package/dist/speech-result.js.map +1 -1
  179. package/dist/speech-to-text-provider.d.ts +0 -12
  180. package/dist/speech-to-text-provider.d.ts.map +1 -1
  181. package/dist/stream-speech.d.ts.map +1 -1
  182. package/dist/stream-speech.js +2 -3
  183. package/dist/stream-speech.js.map +1 -1
  184. package/dist/timestamps.d.ts +3 -17
  185. package/dist/timestamps.d.ts.map +1 -1
  186. package/dist/turns.d.ts +9 -0
  187. package/dist/turns.d.ts.map +1 -0
  188. package/dist/turns.js +21 -0
  189. package/dist/turns.js.map +1 -0
  190. package/dist/types.d.ts +25 -0
  191. package/dist/types.d.ts.map +1 -1
  192. package/dist/volume-adjust.d.ts +0 -6
  193. package/dist/volume-adjust.d.ts.map +1 -1
  194. package/dist/volume-adjust.js +0 -6
  195. package/dist/volume-adjust.js.map +1 -1
  196. package/package.json +11 -66
  197. package/dist/stt-providers/openai/index.d.ts +0 -42
  198. package/dist/stt-providers/openai/index.d.ts.map +0 -1
  199. package/dist/stt-providers/openai/index.js +0 -184
  200. package/dist/stt-providers/openai/index.js.map +0 -1
@@ -1,155 +1,159 @@
1
+ import { z } from "zod";
1
2
  import { stripAudioTags } from "../../audio-tags.js";
2
3
  import { base64ToUint8Array } from "../../audio-utils.js";
3
4
  import { SpeechSDKError } from "../../errors.js";
4
5
  import { handleErrorResponse, resolveApiKey, SDK_USER_AGENT, } from "../../provider-utils.js";
5
6
  import { hasFeature, } from "../../speech-provider.js";
6
- import { alignmentToWordTimestamps, } from "./alignment.js";
7
+ import { alignmentToWordTimestamps, elevenLabsAlignmentSchema, } from "./alignment.js";
8
+ const withTimestampsResponseSchema = z.object({
9
+ audio_base64: z.string().optional(),
10
+ alignment: elevenLabsAlignmentSchema.optional(),
11
+ normalized_alignment: elevenLabsAlignmentSchema.optional(),
12
+ });
13
+ export const ELEVENLABS_PROVIDER_ID = "elevenlabs";
14
+ const ELEVENLABS_V2_LANGUAGES = [
15
+ "ar",
16
+ "bg",
17
+ "cs",
18
+ "da",
19
+ "de",
20
+ "el",
21
+ "en",
22
+ "es",
23
+ "fi",
24
+ "fil",
25
+ "fr",
26
+ "he",
27
+ "hi",
28
+ "hr",
29
+ "id",
30
+ "it",
31
+ "ja",
32
+ "ko",
33
+ "ms",
34
+ "nl",
35
+ "pl",
36
+ "pt",
37
+ "ro",
38
+ "ru",
39
+ "sk",
40
+ "sv",
41
+ "ta",
42
+ "uk",
43
+ "zh",
44
+ ];
45
+ const ELEVENLABS_FLASH_V2_5_LANGUAGES = [
46
+ ...ELEVENLABS_V2_LANGUAGES,
47
+ "hu",
48
+ "no",
49
+ "vi",
50
+ ];
51
+ const ELEVENLABS_V3_LANGUAGES = [
52
+ "af",
53
+ "ar",
54
+ "hy",
55
+ "as",
56
+ "az",
57
+ "be",
58
+ "bn",
59
+ "bs",
60
+ "bg",
61
+ "ca",
62
+ "ceb",
63
+ "ny",
64
+ "hr",
65
+ "cs",
66
+ "da",
67
+ "nl",
68
+ "en",
69
+ "et",
70
+ "fil",
71
+ "fi",
72
+ "fr",
73
+ "gl",
74
+ "ka",
75
+ "de",
76
+ "el",
77
+ "gu",
78
+ "ha",
79
+ "he",
80
+ "hi",
81
+ "hu",
82
+ "is",
83
+ "id",
84
+ "ga",
85
+ "it",
86
+ "ja",
87
+ "jv",
88
+ "kn",
89
+ "kk",
90
+ "ky",
91
+ "ko",
92
+ "lv",
93
+ "ln",
94
+ "lt",
95
+ "lb",
96
+ "mk",
97
+ "ms",
98
+ "ml",
99
+ "zh",
100
+ "mr",
101
+ "ne",
102
+ "no",
103
+ "ps",
104
+ "fa",
105
+ "pl",
106
+ "pt",
107
+ "pa",
108
+ "ro",
109
+ "ru",
110
+ "sr",
111
+ "sd",
112
+ "sk",
113
+ "sl",
114
+ "so",
115
+ "es",
116
+ "sw",
117
+ "sv",
118
+ "ta",
119
+ "te",
120
+ "th",
121
+ "tr",
122
+ "uk",
123
+ "ur",
124
+ "vi",
125
+ "cy",
126
+ ];
127
+ export const ELEVENLABS_MODELS = [
128
+ {
129
+ id: "eleven_v3",
130
+ releaseDate: "2025-06-08",
131
+ languages: ELEVENLABS_V3_LANGUAGES,
132
+ features: ["streaming", "audio-tags", "timestamps"],
133
+ },
134
+ {
135
+ id: "eleven_multilingual_v2",
136
+ releaseDate: "2023-08-22",
137
+ languages: ELEVENLABS_V2_LANGUAGES,
138
+ features: ["streaming", "timestamps"],
139
+ },
140
+ {
141
+ id: "eleven_flash_v2_5",
142
+ releaseDate: "2024-12-01",
143
+ languages: ELEVENLABS_FLASH_V2_5_LANGUAGES,
144
+ features: ["streaming", "timestamps"],
145
+ },
146
+ {
147
+ id: "eleven_flash_v2",
148
+ releaseDate: "2024-12-01",
149
+ languages: ["en"],
150
+ features: ["streaming", "timestamps"],
151
+ },
152
+ ];
7
153
  export class ElevenLabsSpeechProvider {
8
- id = "elevenlabs";
154
+ id = ELEVENLABS_PROVIDER_ID;
9
155
  defaultModel = "eleven_multilingual_v2";
10
- static V2_LANGUAGES = [
11
- "ar",
12
- "bg",
13
- "cs",
14
- "da",
15
- "de",
16
- "el",
17
- "en",
18
- "es",
19
- "fi",
20
- "fil",
21
- "fr",
22
- "he",
23
- "hi",
24
- "hr",
25
- "id",
26
- "it",
27
- "ja",
28
- "ko",
29
- "ms",
30
- "nl",
31
- "pl",
32
- "pt",
33
- "ro",
34
- "ru",
35
- "sk",
36
- "sv",
37
- "ta",
38
- "uk",
39
- "zh",
40
- ];
41
- static FLASH_V2_5_LANGUAGES = [
42
- ...ElevenLabsSpeechProvider.V2_LANGUAGES,
43
- "hu",
44
- "no",
45
- "vi",
46
- ];
47
- static V3_LANGUAGES = [
48
- "af",
49
- "ar",
50
- "hy",
51
- "as",
52
- "az",
53
- "be",
54
- "bn",
55
- "bs",
56
- "bg",
57
- "ca",
58
- "ceb",
59
- "ny",
60
- "hr",
61
- "cs",
62
- "da",
63
- "nl",
64
- "en",
65
- "et",
66
- "fil",
67
- "fi",
68
- "fr",
69
- "gl",
70
- "ka",
71
- "de",
72
- "el",
73
- "gu",
74
- "ha",
75
- "he",
76
- "hi",
77
- "hu",
78
- "is",
79
- "id",
80
- "ga",
81
- "it",
82
- "ja",
83
- "jv",
84
- "kn",
85
- "kk",
86
- "ky",
87
- "ko",
88
- "lv",
89
- "ln",
90
- "lt",
91
- "lb",
92
- "mk",
93
- "ms",
94
- "ml",
95
- "zh",
96
- "mr",
97
- "ne",
98
- "no",
99
- "ps",
100
- "fa",
101
- "pl",
102
- "pt",
103
- "pa",
104
- "ro",
105
- "ru",
106
- "sr",
107
- "sd",
108
- "sk",
109
- "sl",
110
- "so",
111
- "es",
112
- "sw",
113
- "sv",
114
- "ta",
115
- "te",
116
- "th",
117
- "tr",
118
- "uk",
119
- "ur",
120
- "vi",
121
- "cy",
122
- ];
123
- models = [
124
- {
125
- id: "eleven_v3",
126
- releaseDate: "2025-06-08",
127
- languages: ElevenLabsSpeechProvider.V3_LANGUAGES,
128
- features: [
129
- "streaming",
130
- "audio-tags",
131
- { id: "timestamps", mode: "native" },
132
- ],
133
- },
134
- {
135
- id: "eleven_multilingual_v2",
136
- releaseDate: "2023-08-22",
137
- languages: ElevenLabsSpeechProvider.V2_LANGUAGES,
138
- features: ["streaming", { id: "timestamps", mode: "native" }],
139
- },
140
- {
141
- id: "eleven_flash_v2_5",
142
- releaseDate: "2024-12-01",
143
- languages: ElevenLabsSpeechProvider.FLASH_V2_5_LANGUAGES,
144
- features: ["streaming", { id: "timestamps", mode: "native" }],
145
- },
146
- {
147
- id: "eleven_flash_v2",
148
- releaseDate: "2024-12-01",
149
- languages: ["en"],
150
- features: ["streaming", { id: "timestamps", mode: "native" }],
151
- },
152
- ];
156
+ models = ELEVENLABS_MODELS;
153
157
  apiKey;
154
158
  baseURL;
155
159
  fetchFn;
@@ -190,10 +194,7 @@ export class ElevenLabsSpeechProvider {
190
194
  throw new SpeechSDKError("ElevenLabs requires a voice ID. Pass it via the voice option.");
191
195
  }
192
196
  const { body, queryString, outputFormat } = this.buildRequest(options.text, options.modelId, options.providerOptions);
193
- // When timestamps are requested, ElevenLabs exposes a dedicated endpoint
194
- // that returns base64 audio + character-level alignment in a JSON body
195
- // (rather than raw audio bytes). We post the same body/query, then
196
- // aggregate characters → words before returning.
197
+ // /with-timestamps returns base64 audio + character-level alignment in JSON; we aggregate characters → words before returning.
197
198
  const path = options.includeTimestamps
198
199
  ? `/v1/text-to-speech/${options.voice}/with-timestamps`
199
200
  : `/v1/text-to-speech/${options.voice}`;
@@ -212,7 +213,7 @@ export class ElevenLabsSpeechProvider {
212
213
  body: JSON.stringify(body),
213
214
  signal: options.abortSignal,
214
215
  });
215
- await handleErrorResponse(response, `elevenlabs/${options.modelId}`);
216
+ await handleErrorResponse(response);
216
217
  const requestId = response.headers.get("request-id");
217
218
  const durationHeader = response.headers.get("audio-duration-seconds");
218
219
  const parsedDuration = durationHeader == null ? Number.NaN : Number.parseFloat(durationHeader);
@@ -220,14 +221,12 @@ export class ElevenLabsSpeechProvider {
220
221
  ? Math.round(parsedDuration * 1000)
221
222
  : undefined;
222
223
  if (options.includeTimestamps) {
223
- const payload = (await response.json());
224
+ const payload = withTimestampsResponseSchema.parse(await response.json());
224
225
  if (!payload.audio_base64) {
225
226
  throw new SpeechSDKError(`elevenlabs/${options.modelId}: /with-timestamps response missing audio_base64`);
226
227
  }
227
228
  const audio = base64ToUint8Array(payload.audio_base64);
228
- // `normalized_alignment` matches what was actually spoken (e.g.,
229
- // expanded numbers/abbreviations), so it's the right source for
230
- // user-facing word timings.
229
+ // normalized_alignment matches what was actually spoken (expanded numbers/abbreviations).
231
230
  const alignment = payload.normalized_alignment ?? payload.alignment ?? null;
232
231
  const timestamps = alignment
233
232
  ? alignmentToWordTimestamps(alignment)
@@ -235,9 +234,7 @@ export class ElevenLabsSpeechProvider {
235
234
  return {
236
235
  audio,
237
236
  audioDurationMs: headerDurationMs,
238
- // /with-timestamps returns the audio as base64 inside a JSON body,
239
- // so there's no Content-Type hint for the audio bytes themselves —
240
- // we derive it from the requested output_format.
237
+ // No Content-Type for base64-in-JSON audio bytes; derive from output_format.
241
238
  mediaType: elevenLabsFormatToMediaType(outputFormat),
242
239
  providerMetadata: requestId ? { requestId } : undefined,
243
240
  timestamps,
@@ -272,7 +269,7 @@ export class ElevenLabsSpeechProvider {
272
269
  body: JSON.stringify(body),
273
270
  signal: options.abortSignal,
274
271
  });
275
- await handleErrorResponse(response, `elevenlabs/${options.modelId}`);
272
+ await handleErrorResponse(response);
276
273
  if (!response.body) {
277
274
  throw new Error(`elevenlabs/${options.modelId}: response has no body`);
278
275
  }
@@ -296,13 +293,13 @@ export class ElevenLabsSpeechProvider {
296
293
  mediaType: "audio/pcm;rate=24000",
297
294
  };
298
295
  }
299
- return undefined;
296
+ return;
300
297
  }
301
298
  dialogueCapabilities(modelId) {
302
299
  if (modelId === "eleven_v3") {
303
300
  return { minVoices: 1, maxVoices: 10, maxTotalChars: 2000 };
304
301
  }
305
- return undefined;
302
+ return;
306
303
  }
307
304
  async generateDialogue(options) {
308
305
  if (options.modelId !== "eleven_v3") {
@@ -332,7 +329,7 @@ export class ElevenLabsSpeechProvider {
332
329
  body: JSON.stringify(body),
333
330
  signal: options.abortSignal,
334
331
  });
335
- await handleErrorResponse(response, `elevenlabs/${options.modelId}`);
332
+ await handleErrorResponse(response);
336
333
  const arrayBuffer = await response.arrayBuffer();
337
334
  const mediaType = response.headers.get("content-type") ?? "audio/mpeg";
338
335
  const requestId = response.headers.get("request-id");
@@ -345,21 +342,16 @@ export class ElevenLabsSpeechProvider {
345
342
  }
346
343
  export function createElevenLabs(config = {}) {
347
344
  const provider = new ElevenLabsSpeechProvider(config);
345
+ const fallbackSTT = config.fallbackSTT;
348
346
  return function elevenlabs(modelId) {
349
347
  return {
350
348
  provider,
351
349
  modelId: modelId ?? provider.defaultModel,
350
+ ...(fallbackSTT && { fallbackSTT }),
352
351
  };
353
352
  };
354
353
  }
355
- /**
356
- * Map an ElevenLabs `output_format` identifier (e.g. `"pcm_24000"`,
357
- * `"mp3_44100_128"`, `"ulaw_8000"`, `"opus_48000_32"`) to a standard media
358
- * type. Used when decoding base64 audio from `/with-timestamps`, which
359
- * delivers the bytes inside a JSON body with no Content-Type hint for the
360
- * audio itself. Unknown or missing formats fall back to the endpoint's
361
- * default, which is mp3.
362
- */
354
+ // Unknown formats fall back to mp3 (the endpoint's default).
363
355
  function elevenLabsFormatToMediaType(format) {
364
356
  if (!format) {
365
357
  return "audio/mpeg";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/elevenlabs/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/elevenlabs/index.ts"],"names":[],"mappings":"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"}
@@ -1,30 +1,19 @@
1
- import type { ResolvedModel, SpeechProvider } from "../../speech-provider.js";
1
+ import type { ModelInfo, ResolvedModel, SpeechProvider } from "../../speech-provider.js";
2
+ import type { ResolvedSTTModel } from "../../speech-to-text-provider.js";
2
3
  export interface FalSpeechProviderConfig {
3
4
  apiKey?: string;
4
5
  baseURL?: string;
6
+ fallbackSTT?: ResolvedSTTModel;
5
7
  fetch?: typeof globalThis.fetch;
6
8
  }
9
+ export declare const FAL_PROVIDER_ID: "fal-ai";
10
+ export declare const FAL_MODELS: readonly ModelInfo[];
7
11
  export declare class FalSpeechProvider implements SpeechProvider<string, string | {
8
12
  url: string;
9
13
  }> {
10
- readonly id = "fal-ai";
14
+ readonly id: "fal-ai";
11
15
  readonly defaultModel = "";
12
- readonly models: readonly [{
13
- readonly id: "f5-tts";
14
- readonly releaseDate: "2024-10-08";
15
- readonly languages: readonly ["en", "zh", "fr", "it", "hi", "ja", "ru", "es", "fi"];
16
- readonly features: readonly ["open-source", "inline-voice-cloning"];
17
- }, {
18
- readonly id: "kokoro";
19
- readonly releaseDate: "2025-01-27";
20
- readonly languages: readonly ["en", "fr", "ko", "ja", "zh"];
21
- readonly features: readonly ["open-source"];
22
- }, {
23
- readonly id: "orpheus-tts";
24
- readonly releaseDate: "2025-03-18";
25
- readonly languages: readonly ["en", "es", "fr", "de", "it", "pt", "zh"];
26
- readonly features: readonly ["open-source"];
27
- }];
16
+ readonly models: readonly ModelInfo[];
28
17
  private readonly apiKey;
29
18
  private readonly baseURL;
30
19
  private readonly fetchFn;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/fal/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE9E,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC;AAED,qBAAa,iBACX,YAAW,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;IAE3D,QAAQ,CAAC,EAAE,YAAY;IACvB,QAAQ,CAAC,YAAY,MAAM;IAE3B,QAAQ,CAAC,MAAM;;;;;;;;;;;;;;;OAmBJ;IAEX,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;gBAEtC,MAAM,EAAE,uBAAuB;IAMrC,QAAQ,CAAC,OAAO,EAAE;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,GAAG;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;QACjC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1C,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,GAAG,OAAO,CAAC;QACV,KAAK,EAAE,UAAU,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC5C,CAAC;YA0CY,UAAU;IA4BxB,MAAM,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC;IAMpD,gBAAgB,CAAC,OAAO,EAAE,MAAM;;;;CAYjC;AAED,wBAAgB,SAAS,CAAC,MAAM,GAAE,uBAA4B,IAI1D,UAAU,MAAM,KACf,aAAa,CAAC,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAM3C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/fal/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,SAAS,EACT,aAAa,EACb,cAAc,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AASzE,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC;AAED,eAAO,MAAM,eAAe,EAAG,QAAiB,CAAC;AAEjD,eAAO,MAAM,UAAU,EAAE,SAAS,SAAS,EAmBjC,CAAC;AAEX,qBAAa,iBACX,YAAW,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;IAE3D,QAAQ,CAAC,EAAE,WAAmB;IAC9B,QAAQ,CAAC,YAAY,MAAM;IAE3B,QAAQ,CAAC,MAAM,uBAAc;IAE7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;gBAEtC,MAAM,EAAE,uBAAuB;IAMrC,QAAQ,CAAC,OAAO,EAAE;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,GAAG;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;QACjC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1C,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,GAAG,OAAO,CAAC;QACV,KAAK,EAAE,UAAU,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC5C,CAAC;YAwCY,UAAU;IAyBxB,MAAM,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC;IAMpD,gBAAgB,CAAC,OAAO,EAAE,MAAM;;;;CAUjC;AAED,wBAAgB,SAAS,CAAC,MAAM,GAAE,uBAA4B,IAK1D,UAAU,MAAM,KACf,aAAa,CAAC,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAO3C"}
@@ -1,28 +1,37 @@
1
+ import { z } from "zod";
1
2
  import { ApiError, StreamingNotSupportedError } from "../../errors.js";
2
3
  import { handleErrorResponse, resolveApiKey, SDK_USER_AGENT, } from "../../provider-utils.js";
4
+ const falJobResponseSchema = z.object({
5
+ audio: z.object({
6
+ url: z.string(),
7
+ content_type: z.string().optional(),
8
+ }),
9
+ });
10
+ export const FAL_PROVIDER_ID = "fal-ai";
11
+ export const FAL_MODELS = [
12
+ {
13
+ id: "f5-tts",
14
+ releaseDate: "2024-10-08",
15
+ languages: ["en", "zh", "fr", "it", "hi", "ja", "ru", "es", "fi"],
16
+ features: ["open-source", "inline-voice-cloning"],
17
+ },
18
+ {
19
+ id: "kokoro",
20
+ releaseDate: "2025-01-27",
21
+ languages: ["en", "fr", "ko", "ja", "zh"],
22
+ features: ["open-source"],
23
+ },
24
+ {
25
+ id: "orpheus-tts",
26
+ releaseDate: "2025-03-18",
27
+ languages: ["en", "es", "fr", "de", "it", "pt", "zh"],
28
+ features: ["open-source"],
29
+ },
30
+ ];
3
31
  export class FalSpeechProvider {
4
- id = "fal-ai";
32
+ id = FAL_PROVIDER_ID;
5
33
  defaultModel = "";
6
- models = [
7
- {
8
- id: "f5-tts",
9
- releaseDate: "2024-10-08",
10
- languages: ["en", "zh", "fr", "it", "hi", "ja", "ru", "es", "fi"],
11
- features: ["open-source", "inline-voice-cloning"],
12
- },
13
- {
14
- id: "kokoro",
15
- releaseDate: "2025-01-27",
16
- languages: ["en", "fr", "ko", "ja", "zh"],
17
- features: ["open-source"],
18
- },
19
- {
20
- id: "orpheus-tts",
21
- releaseDate: "2025-03-18",
22
- languages: ["en", "es", "fr", "de", "it", "pt", "zh"],
23
- features: ["open-source"],
24
- },
25
- ];
34
+ models = FAL_MODELS;
26
35
  apiKey;
27
36
  baseURL;
28
37
  fetchFn;
@@ -59,8 +68,8 @@ export class FalSpeechProvider {
59
68
  body: JSON.stringify(body),
60
69
  signal: options.abortSignal,
61
70
  });
62
- await handleErrorResponse(response, `fal-ai/${options.modelId}`);
63
- const json = (await response.json());
71
+ await handleErrorResponse(response);
72
+ const json = falJobResponseSchema.parse(await response.json());
64
73
  return await this.fetchAudio(json, options);
65
74
  }
66
75
  async fetchAudio(json, options) {
@@ -70,14 +79,11 @@ export class FalSpeechProvider {
70
79
  if (!audioResponse.ok) {
71
80
  throw new ApiError(`API error: ${audioResponse.status}`, {
72
81
  statusCode: audioResponse.status,
73
- model: `fal-ai/${options.modelId}`,
74
82
  responseBody: await audioResponse.text().catch(() => undefined),
75
83
  });
76
84
  }
77
85
  const arrayBuffer = await audioResponse.arrayBuffer();
78
- // fal includes the authoritative content_type in its JSON response.
79
- // Fall back to the CDN response header, then to audio/wav (the format
80
- // every currently-listed model emits).
86
+ // Authoritative content_type lives in fal's JSON; CDN header and audio/wav are fallbacks.
81
87
  const mediaType = json.audio.content_type ??
82
88
  audioResponse.headers.get("content-type") ??
83
89
  "audio/wav";
@@ -87,24 +93,24 @@ export class FalSpeechProvider {
87
93
  return Promise.reject(new StreamingNotSupportedError(`fal-ai/${options.modelId}`));
88
94
  }
89
95
  getStitchOptions(modelId) {
90
- // All currently-listed fal models (orpheus-tts, f5-tts, kokoro) return
91
- // WAV (16-bit mono PCM in a RIFF container) at fal's CDN URL. Pass
92
- // through providerOptions empty — fal exposes no format selector.
96
+ // fal exposes no format selector listed models all return WAV.
93
97
  if (this.models.some((m) => m.id === modelId)) {
94
98
  return {
95
99
  providerOptions: {},
96
100
  mediaType: "audio/wav",
97
101
  };
98
102
  }
99
- return undefined;
103
+ return;
100
104
  }
101
105
  }
102
106
  export function createFal(config = {}) {
103
107
  const provider = new FalSpeechProvider(config);
108
+ const fallbackSTT = config.fallbackSTT;
104
109
  return function fal(modelId) {
105
110
  return {
106
111
  provider,
107
112
  modelId: modelId ?? provider.defaultModel,
113
+ ...(fallbackSTT && { fallbackSTT }),
108
114
  };
109
115
  };
110
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/fal/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/fal/index.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,17 @@
1
- import { type ResolvedModel, type SpeechProvider } from "../../speech-provider.js";
1
+ import { type ModelInfo, type ResolvedModel, type SpeechProvider } from "../../speech-provider.js";
2
+ import type { ResolvedSTTModel } from "../../speech-to-text-provider.js";
2
3
  export interface FishAudioSpeechProviderConfig {
3
4
  apiKey?: string;
4
5
  baseURL?: string;
6
+ fallbackSTT?: ResolvedSTTModel;
5
7
  fetch?: typeof globalThis.fetch;
6
8
  }
9
+ export declare const FISH_AUDIO_PROVIDER_ID: "fish-audio";
10
+ export declare const FISH_AUDIO_MODELS: readonly ModelInfo[];
7
11
  export declare class FishAudioSpeechProvider implements SpeechProvider<string, string> {
8
- readonly id = "fish-audio";
12
+ readonly id: "fish-audio";
9
13
  readonly defaultModel = "s2-pro";
10
- readonly models: readonly [{
11
- readonly id: "s2-pro";
12
- readonly releaseDate: "2026-03-09";
13
- readonly languages: readonly ["ja", "en", "zh", "ko", "es", "pt", "ar", "ru", "fr", "de"];
14
- readonly features: readonly ["streaming", "audio-tags", "open-source", "inline-voice-cloning"];
15
- }];
14
+ readonly models: readonly ModelInfo[];
16
15
  private readonly apiKey;
17
16
  private readonly baseURL;
18
17
  private readonly fetchFn;