@pico-brief/speech-services 1.0.1 → 1.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.
- package/README.md +2 -1
- package/dist/fetch-voices.d.ts.map +1 -1
- package/dist/fetch-voices.js +5 -0
- package/dist/fetch-voices.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/providers/azure/recommended-voices.d.ts +3 -0
- package/dist/providers/azure/recommended-voices.d.ts.map +1 -0
- package/dist/providers/azure/recommended-voices.js +22 -0
- package/dist/providers/azure/recommended-voices.js.map +1 -0
- package/dist/providers/inworld/fetch-voices.d.ts +3 -0
- package/dist/providers/inworld/fetch-voices.d.ts.map +1 -0
- package/dist/providers/inworld/fetch-voices.js +26 -0
- package/dist/providers/inworld/fetch-voices.js.map +1 -0
- package/dist/providers/inworld/index.d.ts +4 -0
- package/dist/providers/inworld/index.d.ts.map +1 -0
- package/dist/providers/inworld/index.js +4 -0
- package/dist/providers/inworld/index.js.map +1 -0
- package/dist/providers/inworld/synthesize.d.ts +3 -0
- package/dist/providers/inworld/synthesize.d.ts.map +1 -0
- package/dist/providers/inworld/synthesize.js +40 -0
- package/dist/providers/inworld/synthesize.js.map +1 -0
- package/dist/providers/inworld/transcribe.d.ts +3 -0
- package/dist/providers/inworld/transcribe.d.ts.map +1 -0
- package/dist/providers/inworld/transcribe.js +60 -0
- package/dist/providers/inworld/transcribe.js.map +1 -0
- package/dist/providers/inworld/types.d.ts +44 -0
- package/dist/providers/inworld/types.d.ts.map +1 -0
- package/dist/providers/inworld/types.js +2 -0
- package/dist/providers/inworld/types.js.map +1 -0
- package/dist/synthesize.d.ts.map +1 -1
- package/dist/synthesize.js +14 -4
- package/dist/synthesize.js.map +1 -1
- package/dist/transcribe.d.ts.map +1 -1
- package/dist/transcribe.js +5 -0
- package/dist/transcribe.js.map +1 -1
- package/dist/types.d.ts +43 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/voice-resolver.d.ts +7 -1
- package/dist/voice-resolver.d.ts.map +1 -1
- package/dist/voice-resolver.js +51 -3
- package/dist/voice-resolver.js.map +1 -1
- package/package.json +5 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @pico-brief/speech-services
|
|
2
2
|
|
|
3
|
-
Unified speech-to-text and text-to-speech library wrapping
|
|
3
|
+
Unified speech-to-text and text-to-speech library wrapping 11 provider APIs behind consistent interfaces. Zero external dependencies — Node.js 18+ built-ins only.
|
|
4
4
|
|
|
5
5
|
## Providers
|
|
6
6
|
|
|
@@ -12,6 +12,7 @@ Unified speech-to-text and text-to-speech library wrapping 10 provider APIs behi
|
|
|
12
12
|
| Deepgram | Yes | Yes | Yes |
|
|
13
13
|
| ElevenLabs | Yes | Yes | Yes |
|
|
14
14
|
| Google | Yes | Yes | - |
|
|
15
|
+
| Inworld | Yes | Yes | - |
|
|
15
16
|
| OpenAI | Yes | Yes | Yes |
|
|
16
17
|
| PlayHT | - | Yes | - |
|
|
17
18
|
| Rev.ai | Yes | - | - |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-voices.d.ts","sourceRoot":"","sources":["../src/fetch-voices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch-voices.d.ts","sourceRoot":"","sources":["../src/fetch-voices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAW/E,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAwC3G"}
|
package/dist/fetch-voices.js
CHANGED
|
@@ -4,6 +4,7 @@ import * as cartesia from "./providers/cartesia/index.js";
|
|
|
4
4
|
import * as deepgram from "./providers/deepgram/index.js";
|
|
5
5
|
import * as elevenlabs from "./providers/elevenlabs/index.js";
|
|
6
6
|
import * as google from "./providers/google/index.js";
|
|
7
|
+
import * as inworld from "./providers/inworld/index.js";
|
|
7
8
|
import * as openai from "./providers/openai/index.js";
|
|
8
9
|
import * as playht from "./providers/playht/index.js";
|
|
9
10
|
export async function fetchVoices(config, provider) {
|
|
@@ -28,6 +29,10 @@ export async function fetchVoices(config, provider) {
|
|
|
28
29
|
const cfg = requireConfig(config, "google", "Google");
|
|
29
30
|
return google.fetchVoices(cfg);
|
|
30
31
|
}
|
|
32
|
+
case "inworld": {
|
|
33
|
+
const cfg = requireConfig(config, "inworld", "Inworld");
|
|
34
|
+
return inworld.fetchVoices(cfg);
|
|
35
|
+
}
|
|
31
36
|
case "openai": {
|
|
32
37
|
const cfg = requireConfig(config, "openai", "OpenAI");
|
|
33
38
|
return openai.fetchVoices(cfg);
|
package/dist/fetch-voices.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-voices.js","sourceRoot":"","sources":["../src/fetch-voices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AACpD,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAC1D,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAC1D,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAoB,EAAE,QAA6B;IACjF,QAAQ,QAAQ,EAAE,CAAC;QACf,KAAK,OAAO,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YAC1D,OAAO,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YAC1D,OAAO,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAChB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC9D,OAAO,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACvC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD;YACI,MAAM,IAAI,kBAAkB,CACxB,yBAAyB,QAAkB,EAAE,EAC7C,kBAAkB,CACrB,CAAC;IACV,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAClB,MAAoB,EACpB,QAAW,EACX,WAAmB;IAEnB,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,kBAAkB,CACxB,GAAG,WAAW,4BAA4B,QAAQ,mBAAmB,EACrE,gBAAgB,EAChB,QAAQ,CACX,CAAC;IACN,CAAC;IACD,OAAO,cAA8C,CAAC;AAC1D,CAAC"}
|
|
1
|
+
{"version":3,"file":"fetch-voices.js","sourceRoot":"","sources":["../src/fetch-voices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AACpD,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAC1D,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAC1D,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,OAAO,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAoB,EAAE,QAA6B;IACjF,QAAQ,QAAQ,EAAE,CAAC;QACf,KAAK,OAAO,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YAC1D,OAAO,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YAC1D,OAAO,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAChB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC9D,OAAO,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACvC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACb,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YACxD,OAAO,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD;YACI,MAAM,IAAI,kBAAkB,CACxB,yBAAyB,QAAkB,EAAE,EAC7C,kBAAkB,CACrB,CAAC;IACV,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAClB,MAAoB,EACpB,QAAW,EACX,WAAmB;IAEnB,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,kBAAkB,CACxB,GAAG,WAAW,4BAA4B,QAAQ,mBAAmB,EACrE,gBAAgB,EAChB,QAAQ,CACX,CAAC;IACN,CAAC;IACD,OAAO,cAA8C,CAAC;AAC1D,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ export { SpeechServiceError } from "./errors.js";
|
|
|
7
7
|
export { VoiceCache } from "./voice-cache.js";
|
|
8
8
|
export { resolveVoice } from "./voice-resolver.js";
|
|
9
9
|
export { groupWordsToSnippets } from "./utils.js";
|
|
10
|
-
export type { ClientConfig, SpeechClient, AssemblyAIConfig, AzureConfig, CartesiaConfig, DeepgramConfig, ElevenLabsConfig, GoogleConfig, OpenAIConfig, PlayHTConfig, RevAIConfig, SpeechmaticsConfig, TranscriptSnippet, GroupWordsOptions, TranscribeParams, TranscribeResult, TranscribedWord, TranscribeProvider, AssemblyAITranscribeOptions, AzureTranscribeOptions, DeepgramTranscribeOptions, ElevenLabsTranscribeOptions, GoogleTranscribeOptions, OpenAITranscribeOptions, RevAITranscribeOptions, SpeechmaticsTranscribeOptions, SynthesizeParams, SynthesizeResult, SynthesizeProvider, VoiceInfo, AzureSynthesizeOptions, CartesiaSynthesizeOptions, DeepgramSynthesizeOptions, ElevenLabsSynthesizeOptions, GoogleSynthesizeOptions, OpenAISynthesizeOptions, PlayHTSynthesizeOptions, DetectLocalesParams, DetectLocalesProvider, FetchVoicesProvider, } from "./types.js";
|
|
10
|
+
export type { ClientConfig, SpeechClient, AssemblyAIConfig, AzureConfig, CartesiaConfig, DeepgramConfig, ElevenLabsConfig, GoogleConfig, InworldConfig, OpenAIConfig, PlayHTConfig, RevAIConfig, SpeechmaticsConfig, TranscriptSnippet, GroupWordsOptions, TranscribeParams, TranscribeResult, TranscribedWord, TranscribeProvider, AssemblyAITranscribeOptions, AzureTranscribeOptions, DeepgramTranscribeOptions, ElevenLabsTranscribeOptions, GoogleTranscribeOptions, InworldTranscribeOptions, OpenAITranscribeOptions, RevAITranscribeOptions, SpeechmaticsTranscribeOptions, SynthesizeParams, SynthesizeResult, SynthesizeProvider, VoiceInfo, AzureSynthesizeOptions, CartesiaSynthesizeOptions, DeepgramSynthesizeOptions, ElevenLabsSynthesizeOptions, GoogleSynthesizeOptions, InworldSynthesizeOptions, OpenAISynthesizeOptions, PlayHTSynthesizeOptions, DetectLocalesParams, DetectLocalesProvider, FetchVoicesProvider, } from "./types.js";
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGlD,YAAY,EAER,YAAY,EACZ,YAAY,EAEZ,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,kBAAkB,EAElB,iBAAiB,EACjB,iBAAiB,EAEjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,2BAA2B,EAC3B,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,6BAA6B,EAE7B,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,EACT,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EAEvB,mBAAmB,EACnB,qBAAqB,EAErB,mBAAmB,GACtB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGlD,YAAY,EAER,YAAY,EACZ,YAAY,EAEZ,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,kBAAkB,EAElB,iBAAiB,EACjB,iBAAiB,EAEjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,2BAA2B,EAC3B,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,EAC3B,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,6BAA6B,EAE7B,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,EACT,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EAEvB,mBAAmB,EACnB,qBAAqB,EAErB,mBAAmB,GACtB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recommended-voices.d.ts","sourceRoot":"","sources":["../../../src/providers/azure/recommended-voices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,eAAO,MAAM,wBAAwB,EAAE,gBAAgB,EAuBtD,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export const AZURE_RECOMMENDED_VOICES = [
|
|
2
|
+
{ name: "en-US-AvaMultilingualNeural", gender: "female" },
|
|
3
|
+
{ name: "en-US-EmmaNeural", gender: "female" },
|
|
4
|
+
{ name: "en-US-JennyMultilingualNeural", gender: "female" },
|
|
5
|
+
{ name: "en-US-AmandaMultilingualNeural", gender: "female" },
|
|
6
|
+
{ name: "en-US-NovaTurboMultilingualNeural", gender: "female" },
|
|
7
|
+
{ name: "en-US-AndrewMultilingualNeural", gender: "male" },
|
|
8
|
+
{ name: "en-US-KaiNeural", gender: "male" },
|
|
9
|
+
{ name: "en-US-BrandonMultilingualNeural", gender: "male" },
|
|
10
|
+
{ name: "en-US-ChristopherNeural", gender: "male" },
|
|
11
|
+
{ name: "en-US-AdamMultilingualNeural", gender: "male" },
|
|
12
|
+
{ name: "en-US-DavisMultilingualNeural", gender: "male" },
|
|
13
|
+
{ name: "en-US-LewisMultilingualNeural", gender: "male" },
|
|
14
|
+
{ name: "en-US-SamuelMultilingualNeural", gender: "male" },
|
|
15
|
+
{ name: "zh-CN-XiaoxiaoNeural", gender: "female" },
|
|
16
|
+
{ name: "zh-CN-XiaochenNeural", gender: "female" },
|
|
17
|
+
{ name: "zh-CN-XiaoyanNeural", gender: "female" },
|
|
18
|
+
{ name: "zh-CN-XiaoyuMultilingualNeural", gender: "female" },
|
|
19
|
+
{ name: "zh-CN-YunxiNeural", gender: "male" },
|
|
20
|
+
{ name: "zh-CN-YunyangNeural", gender: "male" },
|
|
21
|
+
];
|
|
22
|
+
//# sourceMappingURL=recommended-voices.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recommended-voices.js","sourceRoot":"","sources":["../../../src/providers/azure/recommended-voices.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,wBAAwB,GAAuB;IACxD,EAAE,IAAI,EAAE,6BAA6B,EAAE,MAAM,EAAE,QAAQ,EAAE;IACzD,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE;IAC9C,EAAE,IAAI,EAAE,+BAA+B,EAAE,MAAM,EAAE,QAAQ,EAAE;IAC3D,EAAE,IAAI,EAAE,gCAAgC,EAAE,MAAM,EAAE,QAAQ,EAAE;IAC5D,EAAE,IAAI,EAAE,mCAAmC,EAAE,MAAM,EAAE,QAAQ,EAAE;IAE/D,EAAE,IAAI,EAAE,gCAAgC,EAAE,MAAM,EAAE,MAAM,EAAE;IAC1D,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE;IAC3C,EAAE,IAAI,EAAE,iCAAiC,EAAE,MAAM,EAAE,MAAM,EAAE;IAC3D,EAAE,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,MAAM,EAAE;IACnD,EAAE,IAAI,EAAE,8BAA8B,EAAE,MAAM,EAAE,MAAM,EAAE;IACxD,EAAE,IAAI,EAAE,+BAA+B,EAAE,MAAM,EAAE,MAAM,EAAE;IACzD,EAAE,IAAI,EAAE,+BAA+B,EAAE,MAAM,EAAE,MAAM,EAAE;IACzD,EAAE,IAAI,EAAE,gCAAgC,EAAE,MAAM,EAAE,MAAM,EAAE;IAE1D,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE;IAClD,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE;IAClD,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,QAAQ,EAAE;IACjD,EAAE,IAAI,EAAE,gCAAgC,EAAE,MAAM,EAAE,QAAQ,EAAE;IAE5D,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE;IAC7C,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,EAAE;CAClD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-voices.d.ts","sourceRoot":"","sources":["../../../src/providers/inworld/fetch-voices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAM/D,wBAAsB,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CA8B7E"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { SpeechServiceError } from "../../errors.js";
|
|
2
|
+
import { normalizeLanguageCode } from "../../utils.js";
|
|
3
|
+
import { BASE_URL } from "./types.js";
|
|
4
|
+
export async function fetchVoices(config) {
|
|
5
|
+
const response = await fetch(`${BASE_URL}/tts/v1/voices`, {
|
|
6
|
+
headers: { "Authorization": `Basic ${config.apiKey}` },
|
|
7
|
+
});
|
|
8
|
+
if (!response.ok) {
|
|
9
|
+
const errorText = await response.text();
|
|
10
|
+
throw new SpeechServiceError(`Inworld voice listing failed: ${errorText}`, "API_ERROR", "inworld", response.status);
|
|
11
|
+
}
|
|
12
|
+
const result = (await response.json());
|
|
13
|
+
return (result.voices ?? []).map((v) => {
|
|
14
|
+
const gender = v.tags?.includes("male") ? "male"
|
|
15
|
+
: v.tags?.includes("female") ? "female"
|
|
16
|
+
: undefined;
|
|
17
|
+
return {
|
|
18
|
+
id: v.voiceId,
|
|
19
|
+
name: v.displayName,
|
|
20
|
+
gender,
|
|
21
|
+
locale: normalizeLanguageCode(v.languages?.[0] ?? ""),
|
|
22
|
+
provider: "inworld",
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=fetch-voices.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-voices.js","sourceRoot":"","sources":["../../../src/providers/inworld/fetch-voices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAqB;IACnD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,gBAAgB,EAAE;QACtD,OAAO,EAAE,EAAE,eAAe,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,EAAE;KACzD,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,kBAAkB,CACxB,iCAAiC,SAAS,EAAE,EAC5C,WAAW,EACX,SAAS,EACT,QAAQ,CAAC,MAAM,CAClB,CAAC;IACN,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAoC,CAAC;IAE1E,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAe;YACrD,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAiB;gBAChD,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO;YACH,EAAE,EAAE,CAAC,CAAC,OAAO;YACb,IAAI,EAAE,CAAC,CAAC,WAAW;YACnB,MAAM;YACN,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,QAAQ,EAAE,SAAkB;SAC/B,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/inworld/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/inworld/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { InworldConfig, InworldSynthesizeOptions, SynthesizeResult } from "../../types.js";
|
|
2
|
+
export declare function synthesize(config: InworldConfig, text: string, voice: string, language: string | undefined, options?: InworldSynthesizeOptions): Promise<SynthesizeResult>;
|
|
3
|
+
//# sourceMappingURL=synthesize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../../src/providers/inworld/synthesize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAMhG,wBAAsB,UAAU,CAC5B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,GAAE,wBAA6B,GACvC,OAAO,CAAC,gBAAgB,CAAC,CAkD3B"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { SpeechServiceError } from "../../errors.js";
|
|
2
|
+
import { detectFormatFromString } from "../../utils.js";
|
|
3
|
+
import { BASE_URL } from "./types.js";
|
|
4
|
+
export async function synthesize(config, text, voice, language, options = {}) {
|
|
5
|
+
const { modelId = "inworld-tts-1.5-max", audioEncoding = "MP3", sampleRateHertz, bitRate, speakingRate, temperature, } = options;
|
|
6
|
+
const audioConfig = { audioEncoding };
|
|
7
|
+
if (sampleRateHertz !== undefined)
|
|
8
|
+
audioConfig.sampleRateHertz = sampleRateHertz;
|
|
9
|
+
if (bitRate !== undefined)
|
|
10
|
+
audioConfig.bitRate = bitRate;
|
|
11
|
+
if (speakingRate !== undefined)
|
|
12
|
+
audioConfig.speakingRate = speakingRate;
|
|
13
|
+
const body = {
|
|
14
|
+
text,
|
|
15
|
+
voiceId: voice,
|
|
16
|
+
modelId,
|
|
17
|
+
audioConfig,
|
|
18
|
+
};
|
|
19
|
+
if (temperature !== undefined)
|
|
20
|
+
body.temperature = temperature;
|
|
21
|
+
const response = await fetch(`${BASE_URL}/tts/v1/voice`, {
|
|
22
|
+
method: "POST",
|
|
23
|
+
headers: {
|
|
24
|
+
"Authorization": `Basic ${config.apiKey}`,
|
|
25
|
+
"Content-Type": "application/json",
|
|
26
|
+
},
|
|
27
|
+
body: JSON.stringify(body),
|
|
28
|
+
});
|
|
29
|
+
if (!response.ok) {
|
|
30
|
+
const errorText = await response.text();
|
|
31
|
+
throw new SpeechServiceError(`Inworld TTS failed: ${errorText}`, "API_ERROR", "inworld", response.status);
|
|
32
|
+
}
|
|
33
|
+
const result = (await response.json());
|
|
34
|
+
return {
|
|
35
|
+
audio: Buffer.from(result.audioContent, "base64"),
|
|
36
|
+
format: detectFormatFromString(audioEncoding),
|
|
37
|
+
voice,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=synthesize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"synthesize.js","sourceRoot":"","sources":["../../../src/providers/inworld/synthesize.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,MAAM,CAAC,KAAK,UAAU,UAAU,CAC5B,MAAqB,EACrB,IAAY,EACZ,KAAa,EACb,QAA4B,EAC5B,UAAoC,EAAE;IAEtC,MAAM,EACF,OAAO,GAAG,qBAAqB,EAC/B,aAAa,GAAG,KAAK,EACrB,eAAe,EACf,OAAO,EACP,YAAY,EACZ,WAAW,GACd,GAAG,OAAO,CAAC;IAEZ,MAAM,WAAW,GAA4B,EAAE,aAAa,EAAE,CAAC;IAC/D,IAAI,eAAe,KAAK,SAAS;QAAE,WAAW,CAAC,eAAe,GAAG,eAAe,CAAC;IACjF,IAAI,OAAO,KAAK,SAAS;QAAE,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;IACzD,IAAI,YAAY,KAAK,SAAS;QAAE,WAAW,CAAC,YAAY,GAAG,YAAY,CAAC;IAExE,MAAM,IAAI,GAA4B;QAClC,IAAI;QACJ,OAAO,EAAE,KAAK;QACd,OAAO;QACP,WAAW;KACd,CAAC;IAEF,IAAI,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAE9D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,eAAe,EAAE;QACrD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACL,eAAe,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE;YACzC,cAAc,EAAE,kBAAkB;SACrC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC7B,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,kBAAkB,CACxB,uBAAuB,SAAS,EAAE,EAClC,WAAW,EACX,SAAS,EACT,QAAQ,CAAC,MAAM,CAClB,CAAC;IACN,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAC;IAE7D,OAAO;QACH,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC;QACjD,MAAM,EAAE,sBAAsB,CAAC,aAAa,CAAC;QAC7C,KAAK;KACR,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { InworldConfig, InworldTranscribeOptions, TranscribeResult } from "../../types.js";
|
|
2
|
+
export declare function transcribe(config: InworldConfig, audio: Buffer | string, languages: string[] | undefined, options?: InworldTranscribeOptions): Promise<TranscribeResult>;
|
|
3
|
+
//# sourceMappingURL=transcribe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transcribe.d.ts","sourceRoot":"","sources":["../../../src/providers/inworld/transcribe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,wBAAwB,EACxB,gBAAgB,EAEnB,MAAM,gBAAgB,CAAC;AAMxB,wBAAsB,UAAU,CAC5B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAC/B,OAAO,GAAE,wBAA6B,GACvC,OAAO,CAAC,gBAAgB,CAAC,CAkF3B"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { SpeechServiceError } from "../../errors.js";
|
|
2
|
+
import { isUrl, normalizeLanguageCode } from "../../utils.js";
|
|
3
|
+
import { BASE_URL } from "./types.js";
|
|
4
|
+
export async function transcribe(config, audio, languages, options = {}) {
|
|
5
|
+
const { modelId = "groq/whisper-large-v3", audioEncoding = "AUTO_DETECT", sampleRateHertz = 16000, includeWordTimestamps = true, } = options;
|
|
6
|
+
let audioBase64;
|
|
7
|
+
if (Buffer.isBuffer(audio)) {
|
|
8
|
+
audioBase64 = audio.toString("base64");
|
|
9
|
+
}
|
|
10
|
+
else if (typeof audio === "string" && isUrl(audio)) {
|
|
11
|
+
const audioResponse = await fetch(audio);
|
|
12
|
+
if (!audioResponse.ok) {
|
|
13
|
+
throw new SpeechServiceError(`Failed to fetch audio from URL: ${audioResponse.status}`, "INVALID_INPUT", "inworld");
|
|
14
|
+
}
|
|
15
|
+
const arrayBuffer = await audioResponse.arrayBuffer();
|
|
16
|
+
audioBase64 = Buffer.from(arrayBuffer).toString("base64");
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
throw new SpeechServiceError("audio must be a Buffer or a URL string", "INVALID_INPUT", "inworld");
|
|
20
|
+
}
|
|
21
|
+
const transcribeConfig = {
|
|
22
|
+
modelId,
|
|
23
|
+
audioEncoding,
|
|
24
|
+
sampleRateHertz,
|
|
25
|
+
includeWordTimestamps,
|
|
26
|
+
};
|
|
27
|
+
if (languages?.[0]) {
|
|
28
|
+
transcribeConfig.language = languages[0];
|
|
29
|
+
}
|
|
30
|
+
const body = {
|
|
31
|
+
transcribeConfig,
|
|
32
|
+
audioData: { content: audioBase64 },
|
|
33
|
+
};
|
|
34
|
+
const response = await fetch(`${BASE_URL}/stt/v1/transcribe`, {
|
|
35
|
+
method: "POST",
|
|
36
|
+
headers: {
|
|
37
|
+
"Authorization": `Basic ${config.apiKey}`,
|
|
38
|
+
"Content-Type": "application/json",
|
|
39
|
+
},
|
|
40
|
+
body: JSON.stringify(body),
|
|
41
|
+
});
|
|
42
|
+
if (!response.ok) {
|
|
43
|
+
const errorText = await response.text();
|
|
44
|
+
throw new SpeechServiceError(`Inworld transcription failed: ${errorText}`, "API_ERROR", "inworld", response.status);
|
|
45
|
+
}
|
|
46
|
+
const result = (await response.json());
|
|
47
|
+
const words = (result.transcription.wordTimestamps ?? []).map((w) => ({
|
|
48
|
+
text: w.word,
|
|
49
|
+
startTime: w.startOffsetMs / 1000,
|
|
50
|
+
endTime: w.endOffsetMs / 1000,
|
|
51
|
+
}));
|
|
52
|
+
const duration = words.length > 0 ? words[words.length - 1].endTime : 0;
|
|
53
|
+
return {
|
|
54
|
+
text: result.transcription.transcript,
|
|
55
|
+
words,
|
|
56
|
+
language: normalizeLanguageCode(languages?.[0] ?? ""),
|
|
57
|
+
duration,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=transcribe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transcribe.js","sourceRoot":"","sources":["../../../src/providers/inworld/transcribe.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export declare const BASE_URL = "https://api.inworld.ai";
|
|
2
|
+
export interface InworldTTSResponse {
|
|
3
|
+
audioContent: string;
|
|
4
|
+
usage?: {
|
|
5
|
+
processedCharactersCount?: number;
|
|
6
|
+
modelId?: string;
|
|
7
|
+
};
|
|
8
|
+
timestampInfo?: {
|
|
9
|
+
wordAlignment?: {
|
|
10
|
+
words: string[];
|
|
11
|
+
wordStartTimeSeconds: number[];
|
|
12
|
+
wordEndTimeSeconds: number[];
|
|
13
|
+
};
|
|
14
|
+
characterAlignment?: {
|
|
15
|
+
characters: string[];
|
|
16
|
+
characterStartTimeSeconds: number[];
|
|
17
|
+
characterEndTimeSeconds: number[];
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export interface InworldSTTResponse {
|
|
22
|
+
transcription: {
|
|
23
|
+
transcript: string;
|
|
24
|
+
isFinal: boolean;
|
|
25
|
+
wordTimestamps?: Array<{
|
|
26
|
+
word: string;
|
|
27
|
+
startOffsetMs: number;
|
|
28
|
+
endOffsetMs: number;
|
|
29
|
+
}>;
|
|
30
|
+
};
|
|
31
|
+
usage?: {
|
|
32
|
+
transcribedAudioMs?: number;
|
|
33
|
+
modelId?: string;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export interface InworldVoiceEntry {
|
|
37
|
+
voiceId: string;
|
|
38
|
+
displayName: string;
|
|
39
|
+
languages: string[];
|
|
40
|
+
description?: string;
|
|
41
|
+
tags?: string[];
|
|
42
|
+
isCustom?: boolean;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/inworld/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,2BAA2B,CAAC;AAEjD,MAAM,WAAW,kBAAkB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE;QACJ,wBAAwB,CAAC,EAAE,MAAM,CAAC;QAClC,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,aAAa,CAAC,EAAE;QACZ,aAAa,CAAC,EAAE;YACZ,KAAK,EAAE,MAAM,EAAE,CAAC;YAChB,oBAAoB,EAAE,MAAM,EAAE,CAAC;YAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;SAChC,CAAC;QACF,kBAAkB,CAAC,EAAE;YACjB,UAAU,EAAE,MAAM,EAAE,CAAC;YACrB,yBAAyB,EAAE,MAAM,EAAE,CAAC;YACpC,uBAAuB,EAAE,MAAM,EAAE,CAAC;SACrC,CAAC;KACL,CAAC;CACL;AAED,MAAM,WAAW,kBAAkB;IAC/B,aAAa,EAAE;QACX,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,cAAc,CAAC,EAAE,KAAK,CAAC;YACnB,IAAI,EAAE,MAAM,CAAC;YACb,aAAa,EAAE,MAAM,CAAC;YACtB,WAAW,EAAE,MAAM,CAAC;SACvB,CAAC,CAAC;KACN,CAAC;IACF,KAAK,CAAC,EAAE;QACJ,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACL;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/providers/inworld/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG,wBAAwB,CAAC"}
|
package/dist/synthesize.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../src/synthesize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAa,MAAM,YAAY,CAAC;AAE9F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../src/synthesize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAa,MAAM,YAAY,CAAC;AAE9F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAY9C,wBAAsB,UAAU,CAC5B,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,gBAAgB,EACxB,UAAU,CAAC,EAAE,UAAU,GACxB,OAAO,CAAC,gBAAgB,CAAC,CAmE3B"}
|
package/dist/synthesize.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { SpeechServiceError } from "./errors.js";
|
|
2
2
|
import { VoiceCache } from "./voice-cache.js";
|
|
3
|
-
import { resolveVoice } from "./voice-resolver.js";
|
|
3
|
+
import { resolveVoice, validateRecommendedVoices } from "./voice-resolver.js";
|
|
4
|
+
import { AZURE_RECOMMENDED_VOICES } from "./providers/azure/recommended-voices.js";
|
|
4
5
|
import * as azure from "./providers/azure/index.js";
|
|
5
6
|
import * as cartesia from "./providers/cartesia/index.js";
|
|
6
7
|
import * as deepgram from "./providers/deepgram/index.js";
|
|
7
8
|
import * as elevenlabs from "./providers/elevenlabs/index.js";
|
|
8
9
|
import * as google from "./providers/google/index.js";
|
|
10
|
+
import * as inworld from "./providers/inworld/index.js";
|
|
9
11
|
import * as openai from "./providers/openai/index.js";
|
|
10
12
|
import * as playht from "./providers/playht/index.js";
|
|
11
13
|
export async function synthesize(config, params, voiceCache) {
|
|
@@ -13,7 +15,7 @@ export async function synthesize(config, params, voiceCache) {
|
|
|
13
15
|
switch (params.provider) {
|
|
14
16
|
case "azure": {
|
|
15
17
|
const cfg = requireConfig(config, "azure", "Azure");
|
|
16
|
-
const resolvedVoice = await resolveVoiceForProvider(cache, () => azure.fetchVoices(cfg), `azure:${cfg.region}`, params);
|
|
18
|
+
const resolvedVoice = await resolveVoiceForProvider(cache, () => azure.fetchVoices(cfg), `azure:${cfg.region}`, params, AZURE_RECOMMENDED_VOICES);
|
|
17
19
|
return azure.synthesize(cfg, params.text, resolvedVoice, params.languages?.[0], params.providerOptions);
|
|
18
20
|
}
|
|
19
21
|
case "cartesia": {
|
|
@@ -36,6 +38,11 @@ export async function synthesize(config, params, voiceCache) {
|
|
|
36
38
|
const resolvedVoice = await resolveVoiceForProvider(cache, () => google.fetchVoices(cfg), "google", params);
|
|
37
39
|
return google.synthesize(cfg, params.text, resolvedVoice, params.languages?.[0], params.providerOptions);
|
|
38
40
|
}
|
|
41
|
+
case "inworld": {
|
|
42
|
+
const cfg = requireConfig(config, "inworld", "Inworld");
|
|
43
|
+
const resolvedVoice = await resolveVoiceForProvider(cache, () => inworld.fetchVoices(cfg), "inworld", params);
|
|
44
|
+
return inworld.synthesize(cfg, params.text, resolvedVoice, params.languages?.[0], params.providerOptions);
|
|
45
|
+
}
|
|
39
46
|
case "openai": {
|
|
40
47
|
const cfg = requireConfig(config, "openai", "OpenAI");
|
|
41
48
|
const resolvedVoice = await resolveVoiceForProvider(cache, () => openai.fetchVoices(cfg), "openai", params);
|
|
@@ -57,17 +64,20 @@ function requireConfig(config, provider, displayName) {
|
|
|
57
64
|
}
|
|
58
65
|
return providerConfig;
|
|
59
66
|
}
|
|
60
|
-
async function resolveVoiceForProvider(cache, fetchFn, cacheKey, params) {
|
|
67
|
+
async function resolveVoiceForProvider(cache, fetchFn, cacheKey, params, recommendedVoices) {
|
|
61
68
|
let voices = cache.get(cacheKey);
|
|
62
69
|
if (!voices) {
|
|
63
70
|
voices = await fetchFn();
|
|
64
71
|
cache.set(cacheKey, voices);
|
|
72
|
+
if (recommendedVoices) {
|
|
73
|
+
validateRecommendedVoices(voices, recommendedVoices);
|
|
74
|
+
}
|
|
65
75
|
}
|
|
66
76
|
const resolved = resolveVoice(voices, {
|
|
67
77
|
voice: params.voice,
|
|
68
78
|
language: params.languages?.[0],
|
|
69
79
|
gender: params.gender,
|
|
70
|
-
});
|
|
80
|
+
}, recommendedVoices);
|
|
71
81
|
return resolved.id;
|
|
72
82
|
}
|
|
73
83
|
//# sourceMappingURL=synthesize.js.map
|
package/dist/synthesize.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthesize.js","sourceRoot":"","sources":["../src/synthesize.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"synthesize.js","sourceRoot":"","sources":["../src/synthesize.ts"],"names":[],"mappings":"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"}
|
package/dist/transcribe.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcribe.d.ts","sourceRoot":"","sources":["../src/transcribe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"transcribe.d.ts","sourceRoot":"","sources":["../src/transcribe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAYnF,wBAAsB,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA4C1G"}
|
package/dist/transcribe.js
CHANGED
|
@@ -4,6 +4,7 @@ import * as azure from "./providers/azure/index.js";
|
|
|
4
4
|
import * as deepgram from "./providers/deepgram/index.js";
|
|
5
5
|
import * as elevenlabs from "./providers/elevenlabs/index.js";
|
|
6
6
|
import * as google from "./providers/google/index.js";
|
|
7
|
+
import * as inworld from "./providers/inworld/index.js";
|
|
7
8
|
import * as openai from "./providers/openai/index.js";
|
|
8
9
|
import * as revai from "./providers/revai/index.js";
|
|
9
10
|
import * as speechmatics from "./providers/speechmatics/index.js";
|
|
@@ -29,6 +30,10 @@ export async function transcribe(config, params) {
|
|
|
29
30
|
const cfg = requireConfig(config, "google", "Google");
|
|
30
31
|
return google.transcribe(cfg, params.audio, params.languages, params.providerOptions);
|
|
31
32
|
}
|
|
33
|
+
case "inworld": {
|
|
34
|
+
const cfg = requireConfig(config, "inworld", "Inworld");
|
|
35
|
+
return inworld.transcribe(cfg, params.audio, params.languages, params.providerOptions);
|
|
36
|
+
}
|
|
32
37
|
case "openai": {
|
|
33
38
|
const cfg = requireConfig(config, "openai", "OpenAI");
|
|
34
39
|
return openai.transcribe(cfg, params.audio, params.languages, params.providerOptions);
|
package/dist/transcribe.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcribe.js","sourceRoot":"","sources":["../src/transcribe.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AACpD,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAC1D,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AACpD,OAAO,KAAK,YAAY,MAAM,mCAAmC,CAAC;AAElE,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAoB,EAAE,MAAwB;IAC3E,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtB,KAAK,YAAY,CAAC,CAAC,CAAC;YAChB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC9D,OAAO,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QAC9F,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YAC1D,OAAO,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QAC5F,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAChB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC9D,OAAO,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QAC9F,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QAC1F,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QAC1F,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,cAAc,CAAC,CAAC,CAAC;YAClB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;YAClE,OAAO,YAAY,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QAChG,CAAC;QACD;YACI,MAAM,IAAI,kBAAkB,CACxB,mCAAoC,MAA2B,CAAC,QAAQ,EAAE,EAC1E,kBAAkB,CACrB,CAAC;IACV,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAClB,MAAoB,EACpB,QAAW,EACX,WAAmB;IAEnB,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,kBAAkB,CACxB,GAAG,WAAW,4BAA4B,QAAQ,mBAAmB,EACrE,gBAAgB,EAChB,QAAQ,CACX,CAAC;IACN,CAAC;IACD,OAAO,cAA8C,CAAC;AAC1D,CAAC"}
|
|
1
|
+
{"version":3,"file":"transcribe.js","sourceRoot":"","sources":["../src/transcribe.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -17,6 +17,9 @@ export interface ElevenLabsConfig {
|
|
|
17
17
|
export interface GoogleConfig {
|
|
18
18
|
apiKey: string;
|
|
19
19
|
}
|
|
20
|
+
export interface InworldConfig {
|
|
21
|
+
apiKey: string;
|
|
22
|
+
}
|
|
20
23
|
export interface OpenAIConfig {
|
|
21
24
|
apiKey: string;
|
|
22
25
|
}
|
|
@@ -39,6 +42,7 @@ export interface ClientConfig {
|
|
|
39
42
|
deepgram?: DeepgramConfig;
|
|
40
43
|
elevenlabs?: ElevenLabsConfig;
|
|
41
44
|
google?: GoogleConfig;
|
|
45
|
+
inworld?: InworldConfig;
|
|
42
46
|
openai?: OpenAIConfig;
|
|
43
47
|
playht?: PlayHTConfig;
|
|
44
48
|
revai?: RevAIConfig;
|
|
@@ -82,6 +86,16 @@ export interface GoogleTranscribeOptions {
|
|
|
82
86
|
/** Sample rate in Hz (only needed for raw audio without headers). */
|
|
83
87
|
sampleRateHertz?: number;
|
|
84
88
|
}
|
|
89
|
+
export interface InworldTranscribeOptions {
|
|
90
|
+
/** STT model in provider/model format. Default: "groq/whisper-large-v3". Options: "inworld/inworld-stt-1" (WebSocket only), "assemblyai/*" */
|
|
91
|
+
modelId?: string;
|
|
92
|
+
/** Audio encoding. Default: "AUTO_DETECT". Options: "LINEAR16", "MP3", "OGG_OPUS", "FLAC" */
|
|
93
|
+
audioEncoding?: string;
|
|
94
|
+
/** Sample rate in Hz. Default: 16000 */
|
|
95
|
+
sampleRateHertz?: number;
|
|
96
|
+
/** Include word-level timestamps. Default: true */
|
|
97
|
+
includeWordTimestamps?: boolean;
|
|
98
|
+
}
|
|
85
99
|
export interface OpenAITranscribeOptions {
|
|
86
100
|
/** STT model. Default: "whisper-1". Options: "whisper-1", "gpt-4o-transcribe", "gpt-4o-mini-transcribe" */
|
|
87
101
|
model?: string;
|
|
@@ -112,7 +126,7 @@ export interface SpeechmaticsTranscribeOptions {
|
|
|
112
126
|
/** Max time to wait for transcription (ms). Default: 300000 (5 min) */
|
|
113
127
|
timeout?: number;
|
|
114
128
|
}
|
|
115
|
-
export type TranscribeProvider = "assemblyai" | "azure" | "deepgram" | "elevenlabs" | "google" | "openai" | "revai" | "speechmatics";
|
|
129
|
+
export type TranscribeProvider = "assemblyai" | "azure" | "deepgram" | "elevenlabs" | "google" | "inworld" | "openai" | "revai" | "speechmatics";
|
|
116
130
|
export type TranscribeParams = ({
|
|
117
131
|
provider: "assemblyai";
|
|
118
132
|
audio: Buffer | string;
|
|
@@ -143,6 +157,12 @@ export type TranscribeParams = ({
|
|
|
143
157
|
/** BCP-47 language codes. First is primary, rest are alternatives (up to 3 extra). Required by Google — defaults to ["en-US"]. */
|
|
144
158
|
languages?: string[];
|
|
145
159
|
providerOptions?: GoogleTranscribeOptions;
|
|
160
|
+
}) | ({
|
|
161
|
+
provider: "inworld";
|
|
162
|
+
audio: Buffer | string;
|
|
163
|
+
/** BCP-47 language code. Only the first element is used. Omit for auto-detection. */
|
|
164
|
+
languages?: string[];
|
|
165
|
+
providerOptions?: InworldTranscribeOptions;
|
|
146
166
|
}) | ({
|
|
147
167
|
provider: "openai";
|
|
148
168
|
audio: Buffer | string;
|
|
@@ -209,7 +229,7 @@ export interface VoiceInfo {
|
|
|
209
229
|
/** Which TTS provider this voice belongs to */
|
|
210
230
|
provider: SynthesizeProvider;
|
|
211
231
|
}
|
|
212
|
-
export type SynthesizeProvider = "azure" | "cartesia" | "deepgram" | "elevenlabs" | "google" | "openai" | "playht";
|
|
232
|
+
export type SynthesizeProvider = "azure" | "cartesia" | "deepgram" | "elevenlabs" | "google" | "inworld" | "openai" | "playht";
|
|
213
233
|
export interface AzureSynthesizeOptions {
|
|
214
234
|
/** Azure output format string. Default: "audio-24khz-160kbitrate-mono-mp3" */
|
|
215
235
|
outputFormat?: string;
|
|
@@ -264,6 +284,20 @@ export interface GoogleSynthesizeOptions {
|
|
|
264
284
|
/** Pitch in semitones (-20 to 20). Default: 0 */
|
|
265
285
|
pitch?: number;
|
|
266
286
|
}
|
|
287
|
+
export interface InworldSynthesizeOptions {
|
|
288
|
+
/** TTS model. Default: "inworld-tts-1.5-max". Options: "inworld-tts-1.5-max", "inworld-tts-1.5-mini" */
|
|
289
|
+
modelId?: string;
|
|
290
|
+
/** Audio encoding. Default: "MP3". Options: "MP3", "LINEAR16", "OGG_OPUS", "ALAW", "MULAW", "FLAC", "PCM", "WAV" */
|
|
291
|
+
audioEncoding?: string;
|
|
292
|
+
/** Sample rate in Hz (8000 to 48000). */
|
|
293
|
+
sampleRateHertz?: number;
|
|
294
|
+
/** Bit rate in bps for compressed formats. */
|
|
295
|
+
bitRate?: number;
|
|
296
|
+
/** Speaking rate (0.5 to 1.5). Default: 1.0 */
|
|
297
|
+
speakingRate?: number;
|
|
298
|
+
/** Temperature for variation (0 to 2). Default: 1.0 */
|
|
299
|
+
temperature?: number;
|
|
300
|
+
}
|
|
267
301
|
export interface OpenAISynthesizeOptions {
|
|
268
302
|
/** TTS model. Default: "tts-1". Options: "tts-1", "tts-1-hd", "gpt-4o-mini-tts" */
|
|
269
303
|
model?: string;
|
|
@@ -321,6 +355,13 @@ export type SynthesizeParams = ({
|
|
|
321
355
|
gender?: "male" | "female";
|
|
322
356
|
languages?: string[];
|
|
323
357
|
providerOptions?: GoogleSynthesizeOptions;
|
|
358
|
+
}) | ({
|
|
359
|
+
provider: "inworld";
|
|
360
|
+
text: string;
|
|
361
|
+
voice?: string;
|
|
362
|
+
gender?: "male" | "female";
|
|
363
|
+
languages?: string[];
|
|
364
|
+
providerOptions?: InworldSynthesizeOptions;
|
|
324
365
|
}) | ({
|
|
325
366
|
provider: "openai";
|
|
326
367
|
text: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/voice-resolver.d.ts
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import type { VoiceInfo } from "./types.js";
|
|
2
|
+
export interface RecommendedVoice {
|
|
3
|
+
name: string;
|
|
4
|
+
gender: "male" | "female";
|
|
5
|
+
}
|
|
2
6
|
export declare function resolveVoice(voices: VoiceInfo[], params: {
|
|
3
7
|
voice?: string;
|
|
4
8
|
language?: string;
|
|
5
9
|
gender?: "male" | "female";
|
|
6
|
-
}): VoiceInfo;
|
|
10
|
+
}, recommendedVoices?: RecommendedVoice[]): VoiceInfo;
|
|
11
|
+
/** Validate that all recommended voices exist in the available voice list. Warns for any missing. */
|
|
12
|
+
export declare function validateRecommendedVoices(voices: VoiceInfo[], recommended: RecommendedVoice[]): void;
|
|
7
13
|
//# sourceMappingURL=voice-resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voice-resolver.d.ts","sourceRoot":"","sources":["../src/voice-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,wBAAgB,YAAY,CACxB,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"voice-resolver.d.ts","sourceRoot":"","sources":["../src/voice-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;CAC7B;AAED,wBAAgB,YAAY,CACxB,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;CAAE,EACzE,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,GACvC,SAAS,CAKX;AAED,qGAAqG;AACrG,wBAAgB,yBAAyB,CACrC,MAAM,EAAE,SAAS,EAAE,EACnB,WAAW,EAAE,gBAAgB,EAAE,GAChC,IAAI,CAON"}
|
package/dist/voice-resolver.js
CHANGED
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import { SpeechServiceError } from "./errors.js";
|
|
2
|
-
export function resolveVoice(voices, params) {
|
|
2
|
+
export function resolveVoice(voices, params, recommendedVoices) {
|
|
3
3
|
if (params.voice) {
|
|
4
4
|
return resolveByVoice(voices, params.voice, params.gender);
|
|
5
5
|
}
|
|
6
|
-
return resolveByLanguage(voices, params.language, params.gender);
|
|
6
|
+
return resolveByLanguage(voices, params.language, params.gender, recommendedVoices);
|
|
7
|
+
}
|
|
8
|
+
/** Validate that all recommended voices exist in the available voice list. Warns for any missing. */
|
|
9
|
+
export function validateRecommendedVoices(voices, recommended) {
|
|
10
|
+
for (const rec of recommended) {
|
|
11
|
+
const found = voices.some((v) => v.id.toLowerCase() === rec.name.toLowerCase());
|
|
12
|
+
if (!found) {
|
|
13
|
+
console.warn(`Recommended voice "${rec.name}" is not available in the voice list`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
7
16
|
}
|
|
8
17
|
function resolveByVoice(voices, voice, gender) {
|
|
9
18
|
const voiceLower = voice.toLowerCase();
|
|
@@ -31,10 +40,16 @@ function resolveByVoice(voices, voice, gender) {
|
|
|
31
40
|
}
|
|
32
41
|
throw new SpeechServiceError(`Voice "${voice}" not found and no similar voice available`, "VOICE_NOT_FOUND");
|
|
33
42
|
}
|
|
34
|
-
function resolveByLanguage(voices, language, gender) {
|
|
43
|
+
function resolveByLanguage(voices, language, gender, recommendedVoices) {
|
|
35
44
|
if (!language) {
|
|
36
45
|
throw new SpeechServiceError("Either voice or languages must be provided for speech synthesis", "INVALID_INPUT");
|
|
37
46
|
}
|
|
47
|
+
// 0. Try recommended voices first
|
|
48
|
+
if (recommendedVoices?.length) {
|
|
49
|
+
const recommended = pickRecommended(voices, recommendedVoices, language, gender);
|
|
50
|
+
if (recommended)
|
|
51
|
+
return recommended;
|
|
52
|
+
}
|
|
38
53
|
// 1. Exact locale match
|
|
39
54
|
const match = pickByLocale(voices, language, gender);
|
|
40
55
|
if (match)
|
|
@@ -46,6 +61,39 @@ function resolveByLanguage(voices, language, gender) {
|
|
|
46
61
|
return baseMatch;
|
|
47
62
|
throw new SpeechServiceError(`No voice found for language "${language}"`, "VOICE_NOT_FOUND");
|
|
48
63
|
}
|
|
64
|
+
/** Pick the best voice from the recommended list that matches locale/language and gender, and is available. */
|
|
65
|
+
function pickRecommended(voices, recommended, language, gender) {
|
|
66
|
+
const langLower = language.toLowerCase();
|
|
67
|
+
// 1. Filter by exact locale (e.g. "en-US")
|
|
68
|
+
let candidates = recommended.filter((r) => {
|
|
69
|
+
const locale = extractLocale(r.name);
|
|
70
|
+
return locale?.toLowerCase() === langLower;
|
|
71
|
+
});
|
|
72
|
+
// 2. If no locale match, try base language (e.g. "en")
|
|
73
|
+
if (candidates.length === 0) {
|
|
74
|
+
const baseLang = language.split("-")[0].toLowerCase();
|
|
75
|
+
candidates = recommended.filter((r) => {
|
|
76
|
+
const locale = extractLocale(r.name);
|
|
77
|
+
return locale?.split("-")[0].toLowerCase() === baseLang;
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
if (candidates.length === 0)
|
|
81
|
+
return undefined;
|
|
82
|
+
// 3. Filter by gender if specified
|
|
83
|
+
if (gender) {
|
|
84
|
+
const genderFiltered = candidates.filter((r) => r.gender === gender);
|
|
85
|
+
if (genderFiltered.length > 0) {
|
|
86
|
+
candidates = genderFiltered;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
// 4. Return the first candidate that exists in the available voices
|
|
90
|
+
for (const candidate of candidates) {
|
|
91
|
+
const voice = voices.find((v) => v.id.toLowerCase() === candidate.name.toLowerCase());
|
|
92
|
+
if (voice)
|
|
93
|
+
return voice;
|
|
94
|
+
}
|
|
95
|
+
return undefined;
|
|
96
|
+
}
|
|
49
97
|
/** Try to extract a BCP-47 locale from a voice name (e.g. "en-US-JennyNeural" → "en-US") */
|
|
50
98
|
function extractLocale(voice) {
|
|
51
99
|
const match = voice.match(/^([a-z]{2,3}-[A-Z]{2})/i);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voice-resolver.js","sourceRoot":"","sources":["../src/voice-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"voice-resolver.js","sourceRoot":"","sources":["../src/voice-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAOjD,MAAM,UAAU,YAAY,CACxB,MAAmB,EACnB,MAAyE,EACzE,iBAAsC;IAEtC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AACxF,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,yBAAyB,CACrC,MAAmB,EACnB,WAA+B;IAE/B,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,sBAAsB,GAAG,CAAC,IAAI,sCAAsC,CAAC,CAAC;QACvF,CAAC;IACL,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CACnB,MAAmB,EACnB,KAAa,EACb,MAAqC;IAErC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEvC,uBAAuB;IACvB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,CAAC;IACnE,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAEtB,yBAAyB;IACzB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,CAAC;IACvE,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,mFAAmF;IACnF,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACnD,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC5B,CAAC;IAED,yCAAyC;IACzC,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC3D,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC5B,CAAC;IAED,MAAM,IAAI,kBAAkB,CACxB,UAAU,KAAK,4CAA4C,EAC3D,iBAAiB,CACpB,CAAC;AACN,CAAC;AAED,SAAS,iBAAiB,CACtB,MAAmB,EACnB,QAA4B,EAC5B,MAAqC,EACrC,iBAAsC;IAEtC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,kBAAkB,CACxB,iEAAiE,EACjE,eAAe,CAClB,CAAC;IACN,CAAC;IAED,kCAAkC;IAClC,IAAI,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjF,IAAI,WAAW;YAAE,OAAO,WAAW,CAAC;IACxC,CAAC;IAED,wBAAwB;IACxB,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IAExB,yBAAyB;IACzB,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC/D,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,IAAI,kBAAkB,CACxB,gCAAgC,QAAQ,GAAG,EAC3C,iBAAiB,CACpB,CAAC;AACN,CAAC;AAED,+GAA+G;AAC/G,SAAS,eAAe,CACpB,MAAmB,EACnB,WAA+B,EAC/B,QAAgB,EAChB,MAAqC;IAErC,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAEzC,2CAA2C;IAC3C,IAAI,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACtC,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,MAAM,EAAE,WAAW,EAAE,KAAK,SAAS,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,uDAAuD;IACvD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACtD,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAClC,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACrC,OAAO,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC;QAC5D,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAE9C,mCAAmC;IACnC,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACrE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,UAAU,GAAG,cAAc,CAAC;QAChC,CAAC;IACL,CAAC;IAED,oEAAoE;IACpE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACtF,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC5B,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,4FAA4F;AAC5F,SAAS,aAAa,CAAC,KAAa;IAChC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACrD,IAAI,KAAK,EAAE,CAAC;QACR,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;IACjE,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,kGAAkG;AAClG,SAAS,YAAY,CACjB,MAAmB,EACnB,MAAc,EACd,MAAqC;IAErC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,CAAC;IAC7E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,OAAO,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,wFAAwF;AACxF,SAAS,kBAAkB,CACvB,MAAmB,EACnB,QAAgB,EAChB,MAAqC;IAErC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CACzB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,CAC3D,CAAC;IACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,OAAO,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,4GAA4G;AAC5G,SAAS,YAAY,CACjB,MAAmB,EACnB,MAAqC;IAErC,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QAC5D,IAAI,WAAW;YAAE,OAAO,WAAW,CAAC;IACxC,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pico-brief/speech-services",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Unified speech-to-text and text-to-speech library wrapping AssemblyAI, Azure, Cartesia, Deepgram, ElevenLabs, Google, OpenAI, PlayHT, Rev.ai, and Speechmatics",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -34,6 +34,10 @@
|
|
|
34
34
|
"types": "./dist/providers/google/index.d.ts",
|
|
35
35
|
"import": "./dist/providers/google/index.js"
|
|
36
36
|
},
|
|
37
|
+
"./providers/inworld": {
|
|
38
|
+
"types": "./dist/providers/inworld/index.d.ts",
|
|
39
|
+
"import": "./dist/providers/inworld/index.js"
|
|
40
|
+
},
|
|
37
41
|
"./providers/openai": {
|
|
38
42
|
"types": "./dist/providers/openai/index.d.ts",
|
|
39
43
|
"import": "./dist/providers/openai/index.js"
|