@mastra/voice-azure 0.10.5 → 0.10.6
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/.turbo/turbo-build.log +2 -21
- package/CHANGELOG.md +34 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +67 -1
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/voices.d.ts +3 -0
- package/dist/voices.d.ts.map +1 -0
- package/package.json +8 -7
- package/tsconfig.build.json +9 -0
- package/tsconfig.json +1 -1
- package/tsup.config.ts +17 -0
- package/dist/_tsup-dts-rollup.d.cts +0 -72
- package/dist/_tsup-dts-rollup.d.ts +0 -72
- package/dist/index.d.cts +0 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,23 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
> @mastra/voice-azure@0.10.
|
|
3
|
-
> tsup
|
|
2
|
+
> @mastra/voice-azure@0.10.6-alpha.0 build /home/runner/work/mastra/mastra/voice/azure
|
|
3
|
+
> tsup --silent --config tsup.config.ts
|
|
4
4
|
|
|
5
|
-
[34mCLI[39m Building entry: src/index.ts
|
|
6
|
-
[34mCLI[39m Using tsconfig: tsconfig.json
|
|
7
|
-
[34mCLI[39m tsup v8.5.0
|
|
8
|
-
[34mTSC[39m Build start
|
|
9
|
-
[32mTSC[39m ⚡️ Build success in 11296ms
|
|
10
|
-
[34mDTS[39m Build start
|
|
11
|
-
[34mCLI[39m Target: es2022
|
|
12
|
-
Analysis will use the bundled TypeScript version 5.8.3
|
|
13
|
-
[36mWriting package typings: /home/runner/work/mastra/mastra/voice/azure/dist/_tsup-dts-rollup.d.ts[39m
|
|
14
|
-
Analysis will use the bundled TypeScript version 5.8.3
|
|
15
|
-
[36mWriting package typings: /home/runner/work/mastra/mastra/voice/azure/dist/_tsup-dts-rollup.d.cts[39m
|
|
16
|
-
[32mDTS[39m ⚡️ Build success in 12337ms
|
|
17
|
-
[34mCLI[39m Cleaning output folder
|
|
18
|
-
[34mESM[39m Build start
|
|
19
|
-
[34mCJS[39m Build start
|
|
20
|
-
[32mESM[39m [1mdist/index.js [22m[32m12.33 KB[39m
|
|
21
|
-
[32mESM[39m ⚡️ Build success in 520ms
|
|
22
|
-
[32mCJS[39m [1mdist/index.cjs [22m[32m12.96 KB[39m
|
|
23
|
-
[32mCJS[39m ⚡️ Build success in 521ms
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# @mastra/voice-azure
|
|
2
2
|
|
|
3
|
+
## 0.10.6
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4a406ec: fixes TypeScript declaration file imports to ensure proper ESM compatibility
|
|
8
|
+
- Updated dependencies [cb36de0]
|
|
9
|
+
- Updated dependencies [d0496e6]
|
|
10
|
+
- Updated dependencies [a82b851]
|
|
11
|
+
- Updated dependencies [ea0c5f2]
|
|
12
|
+
- Updated dependencies [41a0a0e]
|
|
13
|
+
- Updated dependencies [2871020]
|
|
14
|
+
- Updated dependencies [94f4812]
|
|
15
|
+
- Updated dependencies [e202b82]
|
|
16
|
+
- Updated dependencies [e00f6a0]
|
|
17
|
+
- Updated dependencies [4a406ec]
|
|
18
|
+
- Updated dependencies [b0e43c1]
|
|
19
|
+
- Updated dependencies [5d377e5]
|
|
20
|
+
- Updated dependencies [1fb812e]
|
|
21
|
+
- Updated dependencies [35c5798]
|
|
22
|
+
- @mastra/core@0.13.0
|
|
23
|
+
|
|
24
|
+
## 0.10.6-alpha.0
|
|
25
|
+
|
|
26
|
+
### Patch Changes
|
|
27
|
+
|
|
28
|
+
- 4a406ec: fixes TypeScript declaration file imports to ensure proper ESM compatibility
|
|
29
|
+
- Updated dependencies [cb36de0]
|
|
30
|
+
- Updated dependencies [a82b851]
|
|
31
|
+
- Updated dependencies [41a0a0e]
|
|
32
|
+
- Updated dependencies [2871020]
|
|
33
|
+
- Updated dependencies [4a406ec]
|
|
34
|
+
- Updated dependencies [5d377e5]
|
|
35
|
+
- @mastra/core@0.13.0-alpha.2
|
|
36
|
+
|
|
3
37
|
## 0.10.5
|
|
4
38
|
|
|
5
39
|
### Patch Changes
|
package/dist/index.cjs
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/voices.ts","../src/index.ts"],"names":["MastraVoice","Azure","result","Readable"],"mappings":"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","file":"index.cjs","sourcesContent":["export const AZURE_VOICES = [\n 'af-ZA-AdriNeural',\n 'af-ZA-WillemNeural',\n 'am-ET-MekdesNeural',\n 'am-ET-AmehaNeural',\n 'ar-AE-FatimaNeural',\n 'ar-AE-HamdanNeural',\n 'ar-BH-LailaNeural',\n 'ar-BH-AliNeural',\n 'ar-DZ-AminaNeural',\n 'ar-DZ-IsmaelNeural',\n 'ar-EG-SalmaNeural',\n 'ar-EG-ShakirNeural',\n 'ar-IQ-RanaNeural',\n 'ar-IQ-BasselNeural',\n 'ar-JO-SanaNeural',\n 'ar-JO-TaimNeural',\n 'ar-KW-NouraNeural',\n 'ar-KW-FahedNeural',\n 'ar-LB-LaylaNeural',\n 'ar-LB-RamiNeural',\n 'ar-LY-ImanNeural',\n 'ar-LY-OmarNeural',\n 'ar-MA-MounaNeural',\n 'ar-MA-JamalNeural',\n 'ar-OM-AyshaNeural',\n 'ar-OM-AbdullahNeural',\n 'ar-QA-AmalNeural',\n 'ar-QA-MoazNeural',\n 'ar-SA-ZariyahNeural',\n 'ar-SA-HamedNeural',\n 'ar-SY-AmanyNeural',\n 'ar-SY-LaithNeural',\n 'ar-TN-ReemNeural',\n 'ar-TN-HediNeural',\n 'ar-YE-MaryamNeural',\n 'ar-YE-SalehNeural',\n 'as-IN-YashicaNeural',\n 'as-IN-PriyomNeural',\n 'az-AZ-BanuNeural',\n 'az-AZ-BabekNeural',\n 'bg-BG-KalinaNeural',\n 'bg-BG-BorislavNeural',\n 'bn-BD-NabanitaNeural',\n 'bn-BD-PradeepNeural',\n 'bn-IN-TanishaaNeural',\n 'bn-IN-BashkarNeural',\n 'bs-BA-VesnaNeural',\n 'bs-BA-GoranNeural',\n 'ca-ES-JoanaNeural',\n 'ca-ES-EnricNeural',\n 'ca-ES-AlbaNeural',\n 'cs-CZ-VlastaNeural',\n 'cs-CZ-AntoninNeural',\n 'cy-GB-NiaNeural',\n 'cy-GB-AledNeural',\n 'da-DK-ChristelNeural',\n 'da-DK-JeppeNeural',\n 'de-AT-IngridNeural',\n 'de-AT-JonasNeural',\n 'de-CH-LeniNeural',\n 'de-CH-JanNeural',\n 'de-DE-KatjaNeural',\n 'de-DE-ConradNeural',\n 'de-DE-SeraphinaMultilingualNeural',\n 'de-DE-FlorianMultilingualNeural',\n 'de-DE-AmalaNeural',\n 'de-DE-BerndNeural',\n 'de-DE-ChristophNeural',\n 'de-DE-ElkeNeural',\n 'de-DE-GiselaNeural',\n 'de-DE-KasperNeural',\n 'de-DE-KillianNeural',\n 'de-DE-KlarissaNeural',\n 'de-DE-KlausNeural',\n 'de-DE-LouisaNeural',\n 'de-DE-MajaNeural',\n 'de-DE-RalfNeural',\n 'de-DE-TanjaNeural',\n 'de-DE-Seraphina:DragonHDLatestNeural',\n 'el-GR-AthinaNeural',\n 'el-GR-NestorasNeural',\n 'en-AU-NatashaNeural',\n 'en-AU-WilliamNeural',\n 'en-AU-AnnetteNeural',\n 'en-AU-CarlyNeural',\n 'en-AU-DarrenNeural',\n 'en-AU-DuncanNeural',\n 'en-AU-ElsieNeural',\n 'en-AU-FreyaNeural',\n 'en-AU-JoanneNeural',\n 'en-AU-KenNeural',\n 'en-AU-KimNeural',\n 'en-AU-NeilNeural',\n 'en-AU-TimNeural',\n 'en-AU-TinaNeural',\n 'en-CA-ClaraNeural',\n 'en-CA-LiamNeural',\n 'en-GB-SoniaNeural',\n 'en-GB-RyanNeural',\n 'en-GB-LibbyNeural',\n 'en-GB-AdaMultilingualNeural',\n 'en-GB-OllieMultilingualNeural',\n 'en-GB-AbbiNeural',\n 'en-GB-AlfieNeural',\n 'en-GB-BellaNeural',\n 'en-GB-ElliotNeural',\n 'en-GB-EthanNeural',\n 'en-GB-HollieNeural',\n 'en-GB-MaisieNeural',\n 'en-GB-NoahNeural',\n 'en-GB-OliverNeural',\n 'en-GB-OliviaNeural',\n 'en-GB-ThomasNeural',\n 'en-GB-MiaNeural',\n 'en-HK-YanNeural',\n 'en-HK-SamNeural',\n 'en-IE-EmilyNeural',\n 'en-IE-ConnorNeural',\n 'en-IN-AaravNeural',\n 'en-IN-AashiNeural',\n 'en-IN-AnanyaNeural',\n 'en-IN-KavyaNeural',\n 'en-IN-KunalNeural',\n 'en-IN-NeerjaNeural',\n 'en-IN-PrabhatNeural',\n 'en-IN-RehaanNeural',\n 'en-IN-AartiNeural',\n 'en-IN-ArjunNeural',\n 'en-KE-AsiliaNeural',\n 'en-KE-ChilembaNeural',\n 'en-NG-EzinneNeural',\n 'en-NG-AbeoNeural',\n 'en-NZ-MollyNeural',\n 'en-NZ-MitchellNeural',\n 'en-PH-RosaNeural',\n 'en-PH-JamesNeural',\n 'en-SG-LunaNeural',\n 'en-SG-WayneNeural',\n 'en-TZ-ImaniNeural',\n 'en-TZ-ElimuNeural',\n 'en-US-AvaMultilingualNeural',\n 'en-US-AndrewMultilingualNeural',\n 'en-US-EmmaMultilingualNeural',\n 'en-US-BrianMultilingualNeural',\n 'en-US-AvaNeural',\n 'en-US-AndrewNeural',\n 'en-US-EmmaNeural',\n 'en-US-BrianNeural',\n 'en-US-JennyNeural',\n 'en-US-GuyNeural',\n 'en-US-AriaNeural',\n 'en-US-DavisNeural',\n 'en-US-JaneNeural',\n 'en-US-JasonNeural',\n 'en-US-KaiNeural',\n 'en-US-LunaNeural',\n 'en-US-SaraNeural',\n 'en-US-TonyNeural',\n 'en-US-NancyNeural',\n 'en-US-CoraMultilingualNeural',\n 'en-US-ChristopherMultilingualNeural',\n 'en-US-BrandonMultilingualNeural',\n 'en-US-AmberNeural',\n 'en-US-AnaNeural',\n 'en-US-AshleyNeural',\n 'en-US-BrandonNeural',\n 'en-US-ChristopherNeural',\n 'en-US-CoraNeural',\n 'en-US-ElizabethNeural',\n 'en-US-EricNeural',\n 'en-US-JacobNeural',\n 'en-US-JennyMultilingualNeural',\n 'en-US-MichelleNeural',\n 'en-US-MonicaNeural',\n 'en-US-RogerNeural',\n 'en-US-RyanMultilingualNeural',\n 'en-US-SteffanNeural',\n 'en-US-AdamMultilingualNeural',\n 'en-US-AIGenerate1Neural',\n 'en-US-AIGenerate2Neural',\n 'en-US-AlloyTurboMultilingualNeural',\n 'en-US-AmandaMultilingualNeural',\n 'en-US-BlueNeural',\n 'en-US-DavisMultilingualNeural',\n 'en-US-DerekMultilingualNeural',\n 'en-US-DustinMultilingualNeural',\n 'en-US-EchoTurboMultilingualNeural',\n 'en-US-EvelynMultilingualNeural',\n 'en-US-FableTurboMultilingualNeural',\n 'en-US-LewisMultilingualNeural',\n 'en-US-LolaMultilingualNeural',\n 'en-US-NancyMultilingualNeural',\n 'en-US-NovaTurboMultilingualNeural',\n 'en-US-OnyxTurboMultilingualNeural',\n 'en-US-PhoebeMultilingualNeural',\n 'en-US-SamuelMultilingualNeural',\n 'en-US-SerenaMultilingualNeural',\n 'en-US-ShimmerTurboMultilingualNeural',\n 'en-US-SteffanMultilingualNeural',\n 'en-US-Andrew:DragonHDLatestNeural',\n 'en-US-Andrew2:DragonHDLatestNeural',\n 'en-US-Aria:DragonHDLatestNeural',\n 'en-US-Ava:DragonHDLatestNeural',\n 'en-US-Brian:DragonHDLatestNeural',\n 'en-US-Davis:DragonHDLatestNeural',\n 'en-US-Emma:DragonHDLatestNeural',\n 'en-US-Emma2:DragonHDLatestNeural',\n 'en-US-Jenny:DragonHDLatestNeural',\n 'en-US-Steffan:DragonHDLatestNeural',\n 'en-ZA-LeahNeural',\n 'en-ZA-LukeNeural',\n] as const;\n\nexport type VoiceId = (typeof AZURE_VOICES)[number];\n","import { Readable } from 'stream';\nimport { MastraVoice } from '@mastra/core/voice';\nimport * as Azure from 'microsoft-cognitiveservices-speech-sdk';\nimport { AZURE_VOICES } from './voices';\nimport type { VoiceId } from './voices';\n\ninterface AzureVoiceConfig {\n apiKey?: string;\n region?: string;\n voiceName?: string;\n language?: string;\n}\n\nexport class AzureVoice extends MastraVoice {\n private speechConfig?: Azure.SpeechConfig;\n private listeningConfig?: Azure.SpeechConfig;\n private speechSynthesizer?: Azure.SpeechSynthesizer;\n private speechRecognizer?: Azure.SpeechRecognizer;\n\n /**\n * Creates a new instance of AzureVoice for text-to-speech and speech-to-text services.\n *\n * @param {Object} config - Configuration options\n * @param {AzureVoiceConfig} [config.speechModel] - Configuration for text-to-speech\n * @param {AzureVoiceConfig} [config.listeningModel] - Configuration for speech-to-text\n * @param {VoiceId} [config.speaker] - Default voice ID for speech synthesis\n */\n constructor({\n speechModel,\n listeningModel,\n speaker,\n }: {\n speechModel?: AzureVoiceConfig;\n listeningModel?: AzureVoiceConfig;\n speaker?: VoiceId;\n } = {}) {\n super({\n speechModel: {\n name: '',\n apiKey: speechModel?.apiKey ?? process.env.AZURE_API_KEY,\n },\n listeningModel: {\n name: '',\n apiKey: listeningModel?.apiKey ?? process.env.AZURE_API_KEY,\n },\n speaker,\n });\n\n const envApiKey = process.env.AZURE_API_KEY;\n const envRegion = process.env.AZURE_REGION;\n\n // Configure speech synthesis\n if (speechModel) {\n const apiKey = speechModel.apiKey ?? envApiKey;\n const region = speechModel.region ?? envRegion;\n\n if (!apiKey) throw new Error('No Azure API key provided for speech model');\n if (!region) throw new Error('No region provided for speech model');\n\n this.speechConfig = Azure.SpeechConfig.fromSubscription(apiKey, region);\n this.speechConfig.speechSynthesisVoiceName = speechModel.voiceName || speaker || 'en-US-AriaNeural';\n this.speechSynthesizer = new Azure.SpeechSynthesizer(this.speechConfig);\n }\n\n // Configure speech recognition\n if (listeningModel) {\n const apiKey = listeningModel.apiKey ?? envApiKey;\n const region = listeningModel.region ?? envRegion;\n\n if (!apiKey) throw new Error('No Azure API key provided for listening model');\n if (!region) throw new Error('No region provided for listening model');\n\n this.listeningConfig = Azure.SpeechConfig.fromSubscription(apiKey, region);\n if (listeningModel.language) {\n this.listeningConfig.speechRecognitionLanguage = listeningModel.language;\n }\n this.speechRecognizer = new Azure.SpeechRecognizer(this.listeningConfig);\n }\n }\n\n /**\n * Gets a list of available voices for speech synthesis.\n *\n * @returns {Promise<Array<{ voiceId: string; language: string; region: string; }>>} List of available voices\n */\n async getSpeakers() {\n return this.traced(async () => {\n return AZURE_VOICES.map(voice => ({\n voiceId: voice,\n language: voice.split('-')[0],\n region: voice.split('-')[1],\n }));\n }, 'voice.azure.voices')();\n }\n\n /**\n * Converts text to speech using Azure's Text-to-Speech service.\n *\n * @param {string | NodeJS.ReadableStream} input - Text to convert to speech\n * @param {Object} [options] - Optional parameters\n * @param {string} [options.speaker] - Voice ID to use for synthesis\n * @returns {Promise<NodeJS.ReadableStream>} Stream containing the synthesized audio\n * @throws {Error} If speech model is not configured or synthesis fails\n */\n async speak(\n input: string | NodeJS.ReadableStream,\n options?: {\n speaker?: string;\n [key: string]: any;\n },\n ): Promise<NodeJS.ReadableStream> {\n if (!this.speechConfig) {\n throw new Error('Speech model (Azure) not configured');\n }\n\n // Convert stream input to string if needed\n if (typeof input !== 'string') {\n const chunks: Buffer[] = [];\n try {\n for await (const chunk of input) {\n chunks.push(chunk as Buffer);\n }\n input = Buffer.concat(chunks).toString('utf-8');\n } catch (error) {\n throw new Error(`Failed to read input stream: ${error instanceof Error ? error.message : String(error)}`);\n }\n }\n\n if (!input?.trim()) {\n throw new Error('Input text is empty');\n }\n\n // Update voice if specified\n if (options?.speaker) {\n this.speechConfig.speechSynthesisVoiceName = options.speaker;\n }\n\n const synthesizer = new Azure.SpeechSynthesizer(this.speechConfig);\n\n try {\n const timeoutPromise = new Promise<never>((_, reject) => {\n setTimeout(() => reject(new Error('Speech synthesis timed out')), 5000);\n });\n\n const synthesisPromise = this.traced(\n () =>\n new Promise<Azure.SpeechSynthesisResult>((resolve, reject) => {\n synthesizer.speakTextAsync(\n input,\n result =>\n result.errorDetails\n ? reject(new Error(`Speech synthesis failed: ${result.errorDetails}`))\n : resolve(result),\n error => reject(new Error(`Speech synthesis error: ${String(error)}`)),\n );\n }),\n 'voice.azure.speak',\n )();\n\n const result = await Promise.race([synthesisPromise, timeoutPromise]);\n synthesizer.close();\n\n if (result.reason !== Azure.ResultReason.SynthesizingAudioCompleted) {\n throw new Error(`Speech synthesis failed: ${result.errorDetails || result.reason}`);\n }\n\n return Readable.from([Buffer.from(result.audioData)]);\n } catch (error) {\n synthesizer.close();\n throw error instanceof Error ? error : new Error(String(error));\n }\n }\n\n /**\n * Checks if listening capabilities are enabled.\n *\n * @returns {Promise<{ enabled: boolean }>}\n */\n async getListener() {\n return { enabled: true };\n }\n\n /**\n * Transcribes audio (STT) from a Node.js stream using Azure.\n *\n * @param {NodeJS.ReadableStream} audioStream - The audio to be transcribed, must be in .wav format.\n * @returns {Promise<string>} - The recognized text.\n */\n async listen(audioStream: NodeJS.ReadableStream): Promise<string> {\n if (!this.listeningConfig || !this.speechRecognizer) {\n throw new Error('Listening model (Azure) not configured');\n }\n\n const chunks: Buffer[] = [];\n for await (const chunk of audioStream) {\n chunks.push(chunk as Buffer);\n }\n const audioData = Buffer.concat(chunks);\n\n const pushStream = Azure.AudioInputStream.createPushStream();\n const audioConfig = Azure.AudioConfig.fromStreamInput(pushStream);\n const recognizer = new Azure.SpeechRecognizer(this.listeningConfig, audioConfig);\n\n try {\n const recognitionPromise = new Promise<string>((resolve, reject) => {\n recognizer.recognizeOnceAsync(\n result => {\n if (result.reason === Azure.ResultReason.RecognizedSpeech) {\n resolve(result.text);\n } else {\n const reason = Azure.ResultReason[result.reason] || result.reason;\n reject(new Error(`Speech recognition failed: ${reason} - ${result.errorDetails || ''}`));\n }\n },\n error => reject(new Error(`Speech recognition error: ${String(error)}`)),\n );\n });\n\n const chunkSize = 4096;\n for (let i = 0; i < audioData.length; i += chunkSize) {\n const chunk = audioData.slice(i, i + chunkSize);\n pushStream.write(chunk);\n }\n pushStream.close();\n\n const text = await this.traced(() => recognitionPromise, 'voice.azure.listen')();\n\n return text;\n } catch (error: unknown) {\n if (error instanceof Error) {\n throw error;\n }\n throw new Error(String(error));\n } finally {\n recognizer.close();\n }\n }\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1 +1,67 @@
|
|
|
1
|
-
|
|
1
|
+
import { MastraVoice } from '@mastra/core/voice';
|
|
2
|
+
import type { VoiceId } from './voices.js';
|
|
3
|
+
interface AzureVoiceConfig {
|
|
4
|
+
apiKey?: string;
|
|
5
|
+
region?: string;
|
|
6
|
+
voiceName?: string;
|
|
7
|
+
language?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare class AzureVoice extends MastraVoice {
|
|
10
|
+
private speechConfig?;
|
|
11
|
+
private listeningConfig?;
|
|
12
|
+
private speechSynthesizer?;
|
|
13
|
+
private speechRecognizer?;
|
|
14
|
+
/**
|
|
15
|
+
* Creates a new instance of AzureVoice for text-to-speech and speech-to-text services.
|
|
16
|
+
*
|
|
17
|
+
* @param {Object} config - Configuration options
|
|
18
|
+
* @param {AzureVoiceConfig} [config.speechModel] - Configuration for text-to-speech
|
|
19
|
+
* @param {AzureVoiceConfig} [config.listeningModel] - Configuration for speech-to-text
|
|
20
|
+
* @param {VoiceId} [config.speaker] - Default voice ID for speech synthesis
|
|
21
|
+
*/
|
|
22
|
+
constructor({ speechModel, listeningModel, speaker, }?: {
|
|
23
|
+
speechModel?: AzureVoiceConfig;
|
|
24
|
+
listeningModel?: AzureVoiceConfig;
|
|
25
|
+
speaker?: VoiceId;
|
|
26
|
+
});
|
|
27
|
+
/**
|
|
28
|
+
* Gets a list of available voices for speech synthesis.
|
|
29
|
+
*
|
|
30
|
+
* @returns {Promise<Array<{ voiceId: string; language: string; region: string; }>>} List of available voices
|
|
31
|
+
*/
|
|
32
|
+
getSpeakers(): Promise<{
|
|
33
|
+
voiceId: "af-ZA-AdriNeural" | "af-ZA-WillemNeural" | "am-ET-MekdesNeural" | "am-ET-AmehaNeural" | "ar-AE-FatimaNeural" | "ar-AE-HamdanNeural" | "ar-BH-LailaNeural" | "ar-BH-AliNeural" | "ar-DZ-AminaNeural" | "ar-DZ-IsmaelNeural" | "ar-EG-SalmaNeural" | "ar-EG-ShakirNeural" | "ar-IQ-RanaNeural" | "ar-IQ-BasselNeural" | "ar-JO-SanaNeural" | "ar-JO-TaimNeural" | "ar-KW-NouraNeural" | "ar-KW-FahedNeural" | "ar-LB-LaylaNeural" | "ar-LB-RamiNeural" | "ar-LY-ImanNeural" | "ar-LY-OmarNeural" | "ar-MA-MounaNeural" | "ar-MA-JamalNeural" | "ar-OM-AyshaNeural" | "ar-OM-AbdullahNeural" | "ar-QA-AmalNeural" | "ar-QA-MoazNeural" | "ar-SA-ZariyahNeural" | "ar-SA-HamedNeural" | "ar-SY-AmanyNeural" | "ar-SY-LaithNeural" | "ar-TN-ReemNeural" | "ar-TN-HediNeural" | "ar-YE-MaryamNeural" | "ar-YE-SalehNeural" | "as-IN-YashicaNeural" | "as-IN-PriyomNeural" | "az-AZ-BanuNeural" | "az-AZ-BabekNeural" | "bg-BG-KalinaNeural" | "bg-BG-BorislavNeural" | "bn-BD-NabanitaNeural" | "bn-BD-PradeepNeural" | "bn-IN-TanishaaNeural" | "bn-IN-BashkarNeural" | "bs-BA-VesnaNeural" | "bs-BA-GoranNeural" | "ca-ES-JoanaNeural" | "ca-ES-EnricNeural" | "ca-ES-AlbaNeural" | "cs-CZ-VlastaNeural" | "cs-CZ-AntoninNeural" | "cy-GB-NiaNeural" | "cy-GB-AledNeural" | "da-DK-ChristelNeural" | "da-DK-JeppeNeural" | "de-AT-IngridNeural" | "de-AT-JonasNeural" | "de-CH-LeniNeural" | "de-CH-JanNeural" | "de-DE-KatjaNeural" | "de-DE-ConradNeural" | "de-DE-SeraphinaMultilingualNeural" | "de-DE-FlorianMultilingualNeural" | "de-DE-AmalaNeural" | "de-DE-BerndNeural" | "de-DE-ChristophNeural" | "de-DE-ElkeNeural" | "de-DE-GiselaNeural" | "de-DE-KasperNeural" | "de-DE-KillianNeural" | "de-DE-KlarissaNeural" | "de-DE-KlausNeural" | "de-DE-LouisaNeural" | "de-DE-MajaNeural" | "de-DE-RalfNeural" | "de-DE-TanjaNeural" | "de-DE-Seraphina:DragonHDLatestNeural" | "el-GR-AthinaNeural" | "el-GR-NestorasNeural" | "en-AU-NatashaNeural" | "en-AU-WilliamNeural" | "en-AU-AnnetteNeural" | "en-AU-CarlyNeural" | "en-AU-DarrenNeural" | "en-AU-DuncanNeural" | "en-AU-ElsieNeural" | "en-AU-FreyaNeural" | "en-AU-JoanneNeural" | "en-AU-KenNeural" | "en-AU-KimNeural" | "en-AU-NeilNeural" | "en-AU-TimNeural" | "en-AU-TinaNeural" | "en-CA-ClaraNeural" | "en-CA-LiamNeural" | "en-GB-SoniaNeural" | "en-GB-RyanNeural" | "en-GB-LibbyNeural" | "en-GB-AdaMultilingualNeural" | "en-GB-OllieMultilingualNeural" | "en-GB-AbbiNeural" | "en-GB-AlfieNeural" | "en-GB-BellaNeural" | "en-GB-ElliotNeural" | "en-GB-EthanNeural" | "en-GB-HollieNeural" | "en-GB-MaisieNeural" | "en-GB-NoahNeural" | "en-GB-OliverNeural" | "en-GB-OliviaNeural" | "en-GB-ThomasNeural" | "en-GB-MiaNeural" | "en-HK-YanNeural" | "en-HK-SamNeural" | "en-IE-EmilyNeural" | "en-IE-ConnorNeural" | "en-IN-AaravNeural" | "en-IN-AashiNeural" | "en-IN-AnanyaNeural" | "en-IN-KavyaNeural" | "en-IN-KunalNeural" | "en-IN-NeerjaNeural" | "en-IN-PrabhatNeural" | "en-IN-RehaanNeural" | "en-IN-AartiNeural" | "en-IN-ArjunNeural" | "en-KE-AsiliaNeural" | "en-KE-ChilembaNeural" | "en-NG-EzinneNeural" | "en-NG-AbeoNeural" | "en-NZ-MollyNeural" | "en-NZ-MitchellNeural" | "en-PH-RosaNeural" | "en-PH-JamesNeural" | "en-SG-LunaNeural" | "en-SG-WayneNeural" | "en-TZ-ImaniNeural" | "en-TZ-ElimuNeural" | "en-US-AvaMultilingualNeural" | "en-US-AndrewMultilingualNeural" | "en-US-EmmaMultilingualNeural" | "en-US-BrianMultilingualNeural" | "en-US-AvaNeural" | "en-US-AndrewNeural" | "en-US-EmmaNeural" | "en-US-BrianNeural" | "en-US-JennyNeural" | "en-US-GuyNeural" | "en-US-AriaNeural" | "en-US-DavisNeural" | "en-US-JaneNeural" | "en-US-JasonNeural" | "en-US-KaiNeural" | "en-US-LunaNeural" | "en-US-SaraNeural" | "en-US-TonyNeural" | "en-US-NancyNeural" | "en-US-CoraMultilingualNeural" | "en-US-ChristopherMultilingualNeural" | "en-US-BrandonMultilingualNeural" | "en-US-AmberNeural" | "en-US-AnaNeural" | "en-US-AshleyNeural" | "en-US-BrandonNeural" | "en-US-ChristopherNeural" | "en-US-CoraNeural" | "en-US-ElizabethNeural" | "en-US-EricNeural" | "en-US-JacobNeural" | "en-US-JennyMultilingualNeural" | "en-US-MichelleNeural" | "en-US-MonicaNeural" | "en-US-RogerNeural" | "en-US-RyanMultilingualNeural" | "en-US-SteffanNeural" | "en-US-AdamMultilingualNeural" | "en-US-AIGenerate1Neural" | "en-US-AIGenerate2Neural" | "en-US-AlloyTurboMultilingualNeural" | "en-US-AmandaMultilingualNeural" | "en-US-BlueNeural" | "en-US-DavisMultilingualNeural" | "en-US-DerekMultilingualNeural" | "en-US-DustinMultilingualNeural" | "en-US-EchoTurboMultilingualNeural" | "en-US-EvelynMultilingualNeural" | "en-US-FableTurboMultilingualNeural" | "en-US-LewisMultilingualNeural" | "en-US-LolaMultilingualNeural" | "en-US-NancyMultilingualNeural" | "en-US-NovaTurboMultilingualNeural" | "en-US-OnyxTurboMultilingualNeural" | "en-US-PhoebeMultilingualNeural" | "en-US-SamuelMultilingualNeural" | "en-US-SerenaMultilingualNeural" | "en-US-ShimmerTurboMultilingualNeural" | "en-US-SteffanMultilingualNeural" | "en-US-Andrew:DragonHDLatestNeural" | "en-US-Andrew2:DragonHDLatestNeural" | "en-US-Aria:DragonHDLatestNeural" | "en-US-Ava:DragonHDLatestNeural" | "en-US-Brian:DragonHDLatestNeural" | "en-US-Davis:DragonHDLatestNeural" | "en-US-Emma:DragonHDLatestNeural" | "en-US-Emma2:DragonHDLatestNeural" | "en-US-Jenny:DragonHDLatestNeural" | "en-US-Steffan:DragonHDLatestNeural" | "en-ZA-LeahNeural" | "en-ZA-LukeNeural";
|
|
34
|
+
language: string | undefined;
|
|
35
|
+
region: string | undefined;
|
|
36
|
+
}[]>;
|
|
37
|
+
/**
|
|
38
|
+
* Converts text to speech using Azure's Text-to-Speech service.
|
|
39
|
+
*
|
|
40
|
+
* @param {string | NodeJS.ReadableStream} input - Text to convert to speech
|
|
41
|
+
* @param {Object} [options] - Optional parameters
|
|
42
|
+
* @param {string} [options.speaker] - Voice ID to use for synthesis
|
|
43
|
+
* @returns {Promise<NodeJS.ReadableStream>} Stream containing the synthesized audio
|
|
44
|
+
* @throws {Error} If speech model is not configured or synthesis fails
|
|
45
|
+
*/
|
|
46
|
+
speak(input: string | NodeJS.ReadableStream, options?: {
|
|
47
|
+
speaker?: string;
|
|
48
|
+
[key: string]: any;
|
|
49
|
+
}): Promise<NodeJS.ReadableStream>;
|
|
50
|
+
/**
|
|
51
|
+
* Checks if listening capabilities are enabled.
|
|
52
|
+
*
|
|
53
|
+
* @returns {Promise<{ enabled: boolean }>}
|
|
54
|
+
*/
|
|
55
|
+
getListener(): Promise<{
|
|
56
|
+
enabled: boolean;
|
|
57
|
+
}>;
|
|
58
|
+
/**
|
|
59
|
+
* Transcribes audio (STT) from a Node.js stream using Azure.
|
|
60
|
+
*
|
|
61
|
+
* @param {NodeJS.ReadableStream} audioStream - The audio to be transcribed, must be in .wav format.
|
|
62
|
+
* @returns {Promise<string>} - The recognized text.
|
|
63
|
+
*/
|
|
64
|
+
listen(audioStream: NodeJS.ReadableStream): Promise<string>;
|
|
65
|
+
}
|
|
66
|
+
export {};
|
|
67
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAExC,UAAU,gBAAgB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,UAAW,SAAQ,WAAW;IACzC,OAAO,CAAC,YAAY,CAAC,CAAqB;IAC1C,OAAO,CAAC,eAAe,CAAC,CAAqB;IAC7C,OAAO,CAAC,iBAAiB,CAAC,CAA0B;IACpD,OAAO,CAAC,gBAAgB,CAAC,CAAyB;IAElD;;;;;;;OAOG;gBACS,EACV,WAAW,EACX,cAAc,EACd,OAAO,GACR,GAAE;QACD,WAAW,CAAC,EAAE,gBAAgB,CAAC;QAC/B,cAAc,CAAC,EAAE,gBAAgB,CAAC;QAClC,OAAO,CAAC,EAAE,OAAO,CAAC;KACd;IA6CN;;;;OAIG;IACG,WAAW;;;;;IAUjB;;;;;;;;OAQG;IACG,KAAK,CACT,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,cAAc,EACrC,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,GACA,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;IA+DjC;;;;OAIG;IACG,WAAW;;;IAIjB;;;;;OAKG;IACG,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CAiDlE"}
|
package/dist/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/voices.ts","../src/index.ts"],"names":["result"],"mappings":";;;;;;;AAAO,IAAM,YAAA,GAAe;AAAA,EAC1B,kBAAA;AAAA,EACA,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,iBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,kBAAA;AAAA,EACA,kBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,sBAAA;AAAA,EACA,kBAAA;AAAA,EACA,kBAAA;AAAA,EACA,qBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,kBAAA;AAAA,EACA,kBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,qBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,sBAAA;AAAA,EACA,sBAAA;AAAA,EACA,qBAAA;AAAA,EACA,sBAAA;AAAA,EACA,qBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,kBAAA;AAAA,EACA,oBAAA;AAAA,EACA,qBAAA;AAAA,EACA,iBAAA;AAAA,EACA,kBAAA;AAAA,EACA,sBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,kBAAA;AAAA,EACA,iBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mCAAA;AAAA,EACA,iCAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,uBAAA;AAAA,EACA,kBAAA;AAAA,EACA,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,qBAAA;AAAA,EACA,sBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,sCAAA;AAAA,EACA,oBAAA;AAAA,EACA,sBAAA;AAAA,EACA,qBAAA;AAAA,EACA,qBAAA;AAAA,EACA,qBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,iBAAA;AAAA,EACA,iBAAA;AAAA,EACA,kBAAA;AAAA,EACA,iBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,6BAAA;AAAA,EACA,+BAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAA;AAAA,EACA,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,iBAAA;AAAA,EACA,iBAAA;AAAA,EACA,iBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,qBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,oBAAA;AAAA,EACA,sBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,sBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,6BAAA;AAAA,EACA,gCAAA;AAAA,EACA,8BAAA;AAAA,EACA,+BAAA;AAAA,EACA,iBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,iBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,iBAAA;AAAA,EACA,kBAAA;AAAA,EACA,kBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,8BAAA;AAAA,EACA,qCAAA;AAAA,EACA,iCAAA;AAAA,EACA,mBAAA;AAAA,EACA,iBAAA;AAAA,EACA,oBAAA;AAAA,EACA,qBAAA;AAAA,EACA,yBAAA;AAAA,EACA,kBAAA;AAAA,EACA,uBAAA;AAAA,EACA,kBAAA;AAAA,EACA,mBAAA;AAAA,EACA,+BAAA;AAAA,EACA,sBAAA;AAAA,EACA,oBAAA;AAAA,EACA,mBAAA;AAAA,EACA,8BAAA;AAAA,EACA,qBAAA;AAAA,EACA,8BAAA;AAAA,EACA,yBAAA;AAAA,EACA,yBAAA;AAAA,EACA,oCAAA;AAAA,EACA,gCAAA;AAAA,EACA,kBAAA;AAAA,EACA,+BAAA;AAAA,EACA,+BAAA;AAAA,EACA,gCAAA;AAAA,EACA,mCAAA;AAAA,EACA,gCAAA;AAAA,EACA,oCAAA;AAAA,EACA,+BAAA;AAAA,EACA,8BAAA;AAAA,EACA,+BAAA;AAAA,EACA,mCAAA;AAAA,EACA,mCAAA;AAAA,EACA,gCAAA;AAAA,EACA,gCAAA;AAAA,EACA,gCAAA;AAAA,EACA,sCAAA;AAAA,EACA,iCAAA;AAAA,EACA,mCAAA;AAAA,EACA,oCAAA;AAAA,EACA,iCAAA;AAAA,EACA,gCAAA;AAAA,EACA,kCAAA;AAAA,EACA,kCAAA;AAAA,EACA,iCAAA;AAAA,EACA,kCAAA;AAAA,EACA,kCAAA;AAAA,EACA,oCAAA;AAAA,EACA,kBAAA;AAAA,EACA;AACF,CAAA;;;ACvMO,IAAM,UAAA,GAAN,cAAyB,WAAA,CAAY;AAAA,EAClC,YAAA;AAAA,EACA,eAAA;AAAA,EACA,iBAAA;AAAA,EACA,gBAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUR,WAAA,CAAY;AAAA,IACV,WAAA;AAAA,IACA,cAAA;AAAA,IACA;AAAA,GACF,GAII,EAAC,EAAG;AACN,IAAA,KAAA,CAAM;AAAA,MACJ,WAAA,EAAa;AAAA,QACX,IAAA,EAAM,EAAA;AAAA,QACN,MAAA,EAAQ,WAAA,EAAa,MAAA,IAAU,OAAA,CAAQ,GAAA,CAAI;AAAA,OAC7C;AAAA,MACA,cAAA,EAAgB;AAAA,QACd,IAAA,EAAM,EAAA;AAAA,QACN,MAAA,EAAQ,cAAA,EAAgB,MAAA,IAAU,OAAA,CAAQ,GAAA,CAAI;AAAA,OAChD;AAAA,MACA;AAAA,KACD,CAAA;AAED,IAAA,MAAM,SAAA,GAAY,QAAQ,GAAA,CAAI,aAAA;AAC9B,IAAA,MAAM,SAAA,GAAY,QAAQ,GAAA,CAAI,YAAA;AAG9B,IAAA,IAAI,WAAA,EAAa;AACf,MAAA,MAAM,MAAA,GAAS,YAAY,MAAA,IAAU,SAAA;AACrC,MAAA,MAAM,MAAA,GAAS,YAAY,MAAA,IAAU,SAAA;AAErC,MAAA,IAAI,CAAC,MAAA,EAAQ,MAAM,IAAI,MAAM,4CAA4C,CAAA;AACzE,MAAA,IAAI,CAAC,MAAA,EAAQ,MAAM,IAAI,MAAM,qCAAqC,CAAA;AAElE,MAAA,IAAA,CAAK,YAAA,GAAqB,KAAA,CAAA,YAAA,CAAa,gBAAA,CAAiB,MAAA,EAAQ,MAAM,CAAA;AACtE,MAAA,IAAA,CAAK,YAAA,CAAa,wBAAA,GAA2B,WAAA,CAAY,SAAA,IAAa,OAAA,IAAW,kBAAA;AACjF,MAAA,IAAA,CAAK,iBAAA,GAAoB,IAAU,KAAA,CAAA,iBAAA,CAAkB,IAAA,CAAK,YAAY,CAAA;AAAA,IACxE;AAGA,IAAA,IAAI,cAAA,EAAgB;AAClB,MAAA,MAAM,MAAA,GAAS,eAAe,MAAA,IAAU,SAAA;AACxC,MAAA,MAAM,MAAA,GAAS,eAAe,MAAA,IAAU,SAAA;AAExC,MAAA,IAAI,CAAC,MAAA,EAAQ,MAAM,IAAI,MAAM,+CAA+C,CAAA;AAC5E,MAAA,IAAI,CAAC,MAAA,EAAQ,MAAM,IAAI,MAAM,wCAAwC,CAAA;AAErE,MAAA,IAAA,CAAK,eAAA,GAAwB,KAAA,CAAA,YAAA,CAAa,gBAAA,CAAiB,MAAA,EAAQ,MAAM,CAAA;AACzE,MAAA,IAAI,eAAe,QAAA,EAAU;AAC3B,QAAA,IAAA,CAAK,eAAA,CAAgB,4BAA4B,cAAA,CAAe,QAAA;AAAA,MAClE;AACA,MAAA,IAAA,CAAK,gBAAA,GAAmB,IAAU,KAAA,CAAA,gBAAA,CAAiB,IAAA,CAAK,eAAe,CAAA;AAAA,IACzE;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,WAAA,GAAc;AAClB,IAAA,OAAO,IAAA,CAAK,OAAO,YAAY;AAC7B,MAAA,OAAO,YAAA,CAAa,IAAI,CAAA,KAAA,MAAU;AAAA,QAChC,OAAA,EAAS,KAAA;AAAA,QACT,QAAA,EAAU,KAAA,CAAM,KAAA,CAAM,GAAG,EAAE,CAAC,CAAA;AAAA,QAC5B,MAAA,EAAQ,KAAA,CAAM,KAAA,CAAM,GAAG,EAAE,CAAC;AAAA,OAC5B,CAAE,CAAA;AAAA,IACJ,CAAA,EAAG,oBAAoB,CAAA,EAAE;AAAA,EAC3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAM,KAAA,CACJ,KAAA,EACA,OAAA,EAIgC;AAChC,IAAA,IAAI,CAAC,KAAK,YAAA,EAAc;AACtB,MAAA,MAAM,IAAI,MAAM,qCAAqC,CAAA;AAAA,IACvD;AAGA,IAAA,IAAI,OAAO,UAAU,QAAA,EAAU;AAC7B,MAAA,MAAM,SAAmB,EAAC;AAC1B,MAAA,IAAI;AACF,QAAA,WAAA,MAAiB,SAAS,KAAA,EAAO;AAC/B,UAAA,MAAA,CAAO,KAAK,KAAe,CAAA;AAAA,QAC7B;AACA,QAAA,KAAA,GAAQ,MAAA,CAAO,MAAA,CAAO,MAAM,CAAA,CAAE,SAAS,OAAO,CAAA;AAAA,MAChD,SAAS,KAAA,EAAO;AACd,QAAA,MAAM,IAAI,KAAA,CAAM,CAAA,6BAAA,EAAgC,KAAA,YAAiB,KAAA,GAAQ,MAAM,OAAA,GAAU,MAAA,CAAO,KAAK,CAAC,CAAA,CAAE,CAAA;AAAA,MAC1G;AAAA,IACF;AAEA,IAAA,IAAI,CAAC,KAAA,EAAO,IAAA,EAAK,EAAG;AAClB,MAAA,MAAM,IAAI,MAAM,qBAAqB,CAAA;AAAA,IACvC;AAGA,IAAA,IAAI,SAAS,OAAA,EAAS;AACpB,MAAA,IAAA,CAAK,YAAA,CAAa,2BAA2B,OAAA,CAAQ,OAAA;AAAA,IACvD;AAEA,IAAA,MAAM,WAAA,GAAc,IAAU,KAAA,CAAA,iBAAA,CAAkB,IAAA,CAAK,YAAY,CAAA;AAEjE,IAAA,IAAI;AACF,MAAA,MAAM,cAAA,GAAiB,IAAI,OAAA,CAAe,CAAC,GAAG,MAAA,KAAW;AACvD,QAAA,UAAA,CAAW,MAAM,MAAA,CAAO,IAAI,MAAM,4BAA4B,CAAC,GAAG,GAAI,CAAA;AAAA,MACxE,CAAC,CAAA;AAED,MAAA,MAAM,mBAAmB,IAAA,CAAK,MAAA;AAAA,QAC5B,MACE,IAAI,OAAA,CAAqC,CAAC,SAAS,MAAA,KAAW;AAC5D,UAAA,WAAA,CAAY,cAAA;AAAA,YACV,KAAA;AAAA,YACA,CAAAA,OAAAA,KACEA,OAAAA,CAAO,YAAA,GACH,OAAO,IAAI,KAAA,CAAM,CAAA,yBAAA,EAA4BA,OAAAA,CAAO,YAAY,CAAA,CAAE,CAAC,CAAA,GACnE,QAAQA,OAAM,CAAA;AAAA,YACpB,CAAA,KAAA,KAAS,OAAO,IAAI,KAAA,CAAM,2BAA2B,MAAA,CAAO,KAAK,CAAC,CAAA,CAAE,CAAC;AAAA,WACvE;AAAA,QACF,CAAC,CAAA;AAAA,QACH;AAAA,OACF,EAAE;AAEF,MAAA,MAAM,SAAS,MAAM,OAAA,CAAQ,KAAK,CAAC,gBAAA,EAAkB,cAAc,CAAC,CAAA;AACpE,MAAA,WAAA,CAAY,KAAA,EAAM;AAElB,MAAA,IAAI,MAAA,CAAO,MAAA,KAAiB,KAAA,CAAA,YAAA,CAAa,0BAAA,EAA4B;AACnE,QAAA,MAAM,IAAI,KAAA,CAAM,CAAA,yBAAA,EAA4B,OAAO,YAAA,IAAgB,MAAA,CAAO,MAAM,CAAA,CAAE,CAAA;AAAA,MACpF;AAEA,MAAA,OAAO,QAAA,CAAS,KAAK,CAAC,MAAA,CAAO,KAAK,MAAA,CAAO,SAAS,CAAC,CAAC,CAAA;AAAA,IACtD,SAAS,KAAA,EAAO;AACd,MAAA,WAAA,CAAY,KAAA,EAAM;AAClB,MAAA,MAAM,iBAAiB,KAAA,GAAQ,KAAA,GAAQ,IAAI,KAAA,CAAM,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,IAChE;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,WAAA,GAAc;AAClB,IAAA,OAAO,EAAE,SAAS,IAAA,EAAK;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,OAAO,WAAA,EAAqD;AAChE,IAAA,IAAI,CAAC,IAAA,CAAK,eAAA,IAAmB,CAAC,KAAK,gBAAA,EAAkB;AACnD,MAAA,MAAM,IAAI,MAAM,wCAAwC,CAAA;AAAA,IAC1D;AAEA,IAAA,MAAM,SAAmB,EAAC;AAC1B,IAAA,WAAA,MAAiB,SAAS,WAAA,EAAa;AACrC,MAAA,MAAA,CAAO,KAAK,KAAe,CAAA;AAAA,IAC7B;AACA,IAAA,MAAM,SAAA,GAAY,MAAA,CAAO,MAAA,CAAO,MAAM,CAAA;AAEtC,IAAA,MAAM,UAAA,GAAmB,uBAAiB,gBAAA,EAAiB;AAC3D,IAAA,MAAM,WAAA,GAAoB,KAAA,CAAA,WAAA,CAAY,eAAA,CAAgB,UAAU,CAAA;AAChE,IAAA,MAAM,UAAA,GAAa,IAAU,KAAA,CAAA,gBAAA,CAAiB,IAAA,CAAK,iBAAiB,WAAW,CAAA;AAE/E,IAAA,IAAI;AACF,MAAA,MAAM,kBAAA,GAAqB,IAAI,OAAA,CAAgB,CAAC,SAAS,MAAA,KAAW;AAClE,QAAA,UAAA,CAAW,kBAAA;AAAA,UACT,CAAA,MAAA,KAAU;AACR,YAAA,IAAI,MAAA,CAAO,MAAA,KAAiB,KAAA,CAAA,YAAA,CAAa,gBAAA,EAAkB;AACzD,cAAA,OAAA,CAAQ,OAAO,IAAI,CAAA;AAAA,YACrB,CAAA,MAAO;AACL,cAAA,MAAM,MAAA,GAAe,KAAA,CAAA,YAAA,CAAa,MAAA,CAAO,MAAM,KAAK,MAAA,CAAO,MAAA;AAC3D,cAAA,MAAA,CAAO,IAAI,MAAM,CAAA,2BAAA,EAA8B,MAAM,MAAM,MAAA,CAAO,YAAA,IAAgB,EAAE,CAAA,CAAE,CAAC,CAAA;AAAA,YACzF;AAAA,UACF,CAAA;AAAA,UACA,CAAA,KAAA,KAAS,OAAO,IAAI,KAAA,CAAM,6BAA6B,MAAA,CAAO,KAAK,CAAC,CAAA,CAAE,CAAC;AAAA,SACzE;AAAA,MACF,CAAC,CAAA;AAED,MAAA,MAAM,SAAA,GAAY,IAAA;AAClB,MAAA,KAAA,IAAS,IAAI,CAAA,EAAG,CAAA,GAAI,SAAA,CAAU,MAAA,EAAQ,KAAK,SAAA,EAAW;AACpD,QAAA,MAAM,KAAA,GAAQ,SAAA,CAAU,KAAA,CAAM,CAAA,EAAG,IAAI,SAAS,CAAA;AAC9C,QAAA,UAAA,CAAW,MAAM,KAAK,CAAA;AAAA,MACxB;AACA,MAAA,UAAA,CAAW,KAAA,EAAM;AAEjB,MAAA,MAAM,OAAO,MAAM,IAAA,CAAK,OAAO,MAAM,kBAAA,EAAoB,oBAAoB,CAAA,EAAE;AAE/E,MAAA,OAAO,IAAA;AAAA,IACT,SAAS,KAAA,EAAgB;AACvB,MAAA,IAAI,iBAAiB,KAAA,EAAO;AAC1B,QAAA,MAAM,KAAA;AAAA,MACR;AACA,MAAA,MAAM,IAAI,KAAA,CAAM,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,IAC/B,CAAA,SAAE;AACA,MAAA,UAAA,CAAW,KAAA,EAAM;AAAA,IACnB;AAAA,EACF;AACF","file":"index.js","sourcesContent":["export const AZURE_VOICES = [\n 'af-ZA-AdriNeural',\n 'af-ZA-WillemNeural',\n 'am-ET-MekdesNeural',\n 'am-ET-AmehaNeural',\n 'ar-AE-FatimaNeural',\n 'ar-AE-HamdanNeural',\n 'ar-BH-LailaNeural',\n 'ar-BH-AliNeural',\n 'ar-DZ-AminaNeural',\n 'ar-DZ-IsmaelNeural',\n 'ar-EG-SalmaNeural',\n 'ar-EG-ShakirNeural',\n 'ar-IQ-RanaNeural',\n 'ar-IQ-BasselNeural',\n 'ar-JO-SanaNeural',\n 'ar-JO-TaimNeural',\n 'ar-KW-NouraNeural',\n 'ar-KW-FahedNeural',\n 'ar-LB-LaylaNeural',\n 'ar-LB-RamiNeural',\n 'ar-LY-ImanNeural',\n 'ar-LY-OmarNeural',\n 'ar-MA-MounaNeural',\n 'ar-MA-JamalNeural',\n 'ar-OM-AyshaNeural',\n 'ar-OM-AbdullahNeural',\n 'ar-QA-AmalNeural',\n 'ar-QA-MoazNeural',\n 'ar-SA-ZariyahNeural',\n 'ar-SA-HamedNeural',\n 'ar-SY-AmanyNeural',\n 'ar-SY-LaithNeural',\n 'ar-TN-ReemNeural',\n 'ar-TN-HediNeural',\n 'ar-YE-MaryamNeural',\n 'ar-YE-SalehNeural',\n 'as-IN-YashicaNeural',\n 'as-IN-PriyomNeural',\n 'az-AZ-BanuNeural',\n 'az-AZ-BabekNeural',\n 'bg-BG-KalinaNeural',\n 'bg-BG-BorislavNeural',\n 'bn-BD-NabanitaNeural',\n 'bn-BD-PradeepNeural',\n 'bn-IN-TanishaaNeural',\n 'bn-IN-BashkarNeural',\n 'bs-BA-VesnaNeural',\n 'bs-BA-GoranNeural',\n 'ca-ES-JoanaNeural',\n 'ca-ES-EnricNeural',\n 'ca-ES-AlbaNeural',\n 'cs-CZ-VlastaNeural',\n 'cs-CZ-AntoninNeural',\n 'cy-GB-NiaNeural',\n 'cy-GB-AledNeural',\n 'da-DK-ChristelNeural',\n 'da-DK-JeppeNeural',\n 'de-AT-IngridNeural',\n 'de-AT-JonasNeural',\n 'de-CH-LeniNeural',\n 'de-CH-JanNeural',\n 'de-DE-KatjaNeural',\n 'de-DE-ConradNeural',\n 'de-DE-SeraphinaMultilingualNeural',\n 'de-DE-FlorianMultilingualNeural',\n 'de-DE-AmalaNeural',\n 'de-DE-BerndNeural',\n 'de-DE-ChristophNeural',\n 'de-DE-ElkeNeural',\n 'de-DE-GiselaNeural',\n 'de-DE-KasperNeural',\n 'de-DE-KillianNeural',\n 'de-DE-KlarissaNeural',\n 'de-DE-KlausNeural',\n 'de-DE-LouisaNeural',\n 'de-DE-MajaNeural',\n 'de-DE-RalfNeural',\n 'de-DE-TanjaNeural',\n 'de-DE-Seraphina:DragonHDLatestNeural',\n 'el-GR-AthinaNeural',\n 'el-GR-NestorasNeural',\n 'en-AU-NatashaNeural',\n 'en-AU-WilliamNeural',\n 'en-AU-AnnetteNeural',\n 'en-AU-CarlyNeural',\n 'en-AU-DarrenNeural',\n 'en-AU-DuncanNeural',\n 'en-AU-ElsieNeural',\n 'en-AU-FreyaNeural',\n 'en-AU-JoanneNeural',\n 'en-AU-KenNeural',\n 'en-AU-KimNeural',\n 'en-AU-NeilNeural',\n 'en-AU-TimNeural',\n 'en-AU-TinaNeural',\n 'en-CA-ClaraNeural',\n 'en-CA-LiamNeural',\n 'en-GB-SoniaNeural',\n 'en-GB-RyanNeural',\n 'en-GB-LibbyNeural',\n 'en-GB-AdaMultilingualNeural',\n 'en-GB-OllieMultilingualNeural',\n 'en-GB-AbbiNeural',\n 'en-GB-AlfieNeural',\n 'en-GB-BellaNeural',\n 'en-GB-ElliotNeural',\n 'en-GB-EthanNeural',\n 'en-GB-HollieNeural',\n 'en-GB-MaisieNeural',\n 'en-GB-NoahNeural',\n 'en-GB-OliverNeural',\n 'en-GB-OliviaNeural',\n 'en-GB-ThomasNeural',\n 'en-GB-MiaNeural',\n 'en-HK-YanNeural',\n 'en-HK-SamNeural',\n 'en-IE-EmilyNeural',\n 'en-IE-ConnorNeural',\n 'en-IN-AaravNeural',\n 'en-IN-AashiNeural',\n 'en-IN-AnanyaNeural',\n 'en-IN-KavyaNeural',\n 'en-IN-KunalNeural',\n 'en-IN-NeerjaNeural',\n 'en-IN-PrabhatNeural',\n 'en-IN-RehaanNeural',\n 'en-IN-AartiNeural',\n 'en-IN-ArjunNeural',\n 'en-KE-AsiliaNeural',\n 'en-KE-ChilembaNeural',\n 'en-NG-EzinneNeural',\n 'en-NG-AbeoNeural',\n 'en-NZ-MollyNeural',\n 'en-NZ-MitchellNeural',\n 'en-PH-RosaNeural',\n 'en-PH-JamesNeural',\n 'en-SG-LunaNeural',\n 'en-SG-WayneNeural',\n 'en-TZ-ImaniNeural',\n 'en-TZ-ElimuNeural',\n 'en-US-AvaMultilingualNeural',\n 'en-US-AndrewMultilingualNeural',\n 'en-US-EmmaMultilingualNeural',\n 'en-US-BrianMultilingualNeural',\n 'en-US-AvaNeural',\n 'en-US-AndrewNeural',\n 'en-US-EmmaNeural',\n 'en-US-BrianNeural',\n 'en-US-JennyNeural',\n 'en-US-GuyNeural',\n 'en-US-AriaNeural',\n 'en-US-DavisNeural',\n 'en-US-JaneNeural',\n 'en-US-JasonNeural',\n 'en-US-KaiNeural',\n 'en-US-LunaNeural',\n 'en-US-SaraNeural',\n 'en-US-TonyNeural',\n 'en-US-NancyNeural',\n 'en-US-CoraMultilingualNeural',\n 'en-US-ChristopherMultilingualNeural',\n 'en-US-BrandonMultilingualNeural',\n 'en-US-AmberNeural',\n 'en-US-AnaNeural',\n 'en-US-AshleyNeural',\n 'en-US-BrandonNeural',\n 'en-US-ChristopherNeural',\n 'en-US-CoraNeural',\n 'en-US-ElizabethNeural',\n 'en-US-EricNeural',\n 'en-US-JacobNeural',\n 'en-US-JennyMultilingualNeural',\n 'en-US-MichelleNeural',\n 'en-US-MonicaNeural',\n 'en-US-RogerNeural',\n 'en-US-RyanMultilingualNeural',\n 'en-US-SteffanNeural',\n 'en-US-AdamMultilingualNeural',\n 'en-US-AIGenerate1Neural',\n 'en-US-AIGenerate2Neural',\n 'en-US-AlloyTurboMultilingualNeural',\n 'en-US-AmandaMultilingualNeural',\n 'en-US-BlueNeural',\n 'en-US-DavisMultilingualNeural',\n 'en-US-DerekMultilingualNeural',\n 'en-US-DustinMultilingualNeural',\n 'en-US-EchoTurboMultilingualNeural',\n 'en-US-EvelynMultilingualNeural',\n 'en-US-FableTurboMultilingualNeural',\n 'en-US-LewisMultilingualNeural',\n 'en-US-LolaMultilingualNeural',\n 'en-US-NancyMultilingualNeural',\n 'en-US-NovaTurboMultilingualNeural',\n 'en-US-OnyxTurboMultilingualNeural',\n 'en-US-PhoebeMultilingualNeural',\n 'en-US-SamuelMultilingualNeural',\n 'en-US-SerenaMultilingualNeural',\n 'en-US-ShimmerTurboMultilingualNeural',\n 'en-US-SteffanMultilingualNeural',\n 'en-US-Andrew:DragonHDLatestNeural',\n 'en-US-Andrew2:DragonHDLatestNeural',\n 'en-US-Aria:DragonHDLatestNeural',\n 'en-US-Ava:DragonHDLatestNeural',\n 'en-US-Brian:DragonHDLatestNeural',\n 'en-US-Davis:DragonHDLatestNeural',\n 'en-US-Emma:DragonHDLatestNeural',\n 'en-US-Emma2:DragonHDLatestNeural',\n 'en-US-Jenny:DragonHDLatestNeural',\n 'en-US-Steffan:DragonHDLatestNeural',\n 'en-ZA-LeahNeural',\n 'en-ZA-LukeNeural',\n] as const;\n\nexport type VoiceId = (typeof AZURE_VOICES)[number];\n","import { Readable } from 'stream';\nimport { MastraVoice } from '@mastra/core/voice';\nimport * as Azure from 'microsoft-cognitiveservices-speech-sdk';\nimport { AZURE_VOICES } from './voices';\nimport type { VoiceId } from './voices';\n\ninterface AzureVoiceConfig {\n apiKey?: string;\n region?: string;\n voiceName?: string;\n language?: string;\n}\n\nexport class AzureVoice extends MastraVoice {\n private speechConfig?: Azure.SpeechConfig;\n private listeningConfig?: Azure.SpeechConfig;\n private speechSynthesizer?: Azure.SpeechSynthesizer;\n private speechRecognizer?: Azure.SpeechRecognizer;\n\n /**\n * Creates a new instance of AzureVoice for text-to-speech and speech-to-text services.\n *\n * @param {Object} config - Configuration options\n * @param {AzureVoiceConfig} [config.speechModel] - Configuration for text-to-speech\n * @param {AzureVoiceConfig} [config.listeningModel] - Configuration for speech-to-text\n * @param {VoiceId} [config.speaker] - Default voice ID for speech synthesis\n */\n constructor({\n speechModel,\n listeningModel,\n speaker,\n }: {\n speechModel?: AzureVoiceConfig;\n listeningModel?: AzureVoiceConfig;\n speaker?: VoiceId;\n } = {}) {\n super({\n speechModel: {\n name: '',\n apiKey: speechModel?.apiKey ?? process.env.AZURE_API_KEY,\n },\n listeningModel: {\n name: '',\n apiKey: listeningModel?.apiKey ?? process.env.AZURE_API_KEY,\n },\n speaker,\n });\n\n const envApiKey = process.env.AZURE_API_KEY;\n const envRegion = process.env.AZURE_REGION;\n\n // Configure speech synthesis\n if (speechModel) {\n const apiKey = speechModel.apiKey ?? envApiKey;\n const region = speechModel.region ?? envRegion;\n\n if (!apiKey) throw new Error('No Azure API key provided for speech model');\n if (!region) throw new Error('No region provided for speech model');\n\n this.speechConfig = Azure.SpeechConfig.fromSubscription(apiKey, region);\n this.speechConfig.speechSynthesisVoiceName = speechModel.voiceName || speaker || 'en-US-AriaNeural';\n this.speechSynthesizer = new Azure.SpeechSynthesizer(this.speechConfig);\n }\n\n // Configure speech recognition\n if (listeningModel) {\n const apiKey = listeningModel.apiKey ?? envApiKey;\n const region = listeningModel.region ?? envRegion;\n\n if (!apiKey) throw new Error('No Azure API key provided for listening model');\n if (!region) throw new Error('No region provided for listening model');\n\n this.listeningConfig = Azure.SpeechConfig.fromSubscription(apiKey, region);\n if (listeningModel.language) {\n this.listeningConfig.speechRecognitionLanguage = listeningModel.language;\n }\n this.speechRecognizer = new Azure.SpeechRecognizer(this.listeningConfig);\n }\n }\n\n /**\n * Gets a list of available voices for speech synthesis.\n *\n * @returns {Promise<Array<{ voiceId: string; language: string; region: string; }>>} List of available voices\n */\n async getSpeakers() {\n return this.traced(async () => {\n return AZURE_VOICES.map(voice => ({\n voiceId: voice,\n language: voice.split('-')[0],\n region: voice.split('-')[1],\n }));\n }, 'voice.azure.voices')();\n }\n\n /**\n * Converts text to speech using Azure's Text-to-Speech service.\n *\n * @param {string | NodeJS.ReadableStream} input - Text to convert to speech\n * @param {Object} [options] - Optional parameters\n * @param {string} [options.speaker] - Voice ID to use for synthesis\n * @returns {Promise<NodeJS.ReadableStream>} Stream containing the synthesized audio\n * @throws {Error} If speech model is not configured or synthesis fails\n */\n async speak(\n input: string | NodeJS.ReadableStream,\n options?: {\n speaker?: string;\n [key: string]: any;\n },\n ): Promise<NodeJS.ReadableStream> {\n if (!this.speechConfig) {\n throw new Error('Speech model (Azure) not configured');\n }\n\n // Convert stream input to string if needed\n if (typeof input !== 'string') {\n const chunks: Buffer[] = [];\n try {\n for await (const chunk of input) {\n chunks.push(chunk as Buffer);\n }\n input = Buffer.concat(chunks).toString('utf-8');\n } catch (error) {\n throw new Error(`Failed to read input stream: ${error instanceof Error ? error.message : String(error)}`);\n }\n }\n\n if (!input?.trim()) {\n throw new Error('Input text is empty');\n }\n\n // Update voice if specified\n if (options?.speaker) {\n this.speechConfig.speechSynthesisVoiceName = options.speaker;\n }\n\n const synthesizer = new Azure.SpeechSynthesizer(this.speechConfig);\n\n try {\n const timeoutPromise = new Promise<never>((_, reject) => {\n setTimeout(() => reject(new Error('Speech synthesis timed out')), 5000);\n });\n\n const synthesisPromise = this.traced(\n () =>\n new Promise<Azure.SpeechSynthesisResult>((resolve, reject) => {\n synthesizer.speakTextAsync(\n input,\n result =>\n result.errorDetails\n ? reject(new Error(`Speech synthesis failed: ${result.errorDetails}`))\n : resolve(result),\n error => reject(new Error(`Speech synthesis error: ${String(error)}`)),\n );\n }),\n 'voice.azure.speak',\n )();\n\n const result = await Promise.race([synthesisPromise, timeoutPromise]);\n synthesizer.close();\n\n if (result.reason !== Azure.ResultReason.SynthesizingAudioCompleted) {\n throw new Error(`Speech synthesis failed: ${result.errorDetails || result.reason}`);\n }\n\n return Readable.from([Buffer.from(result.audioData)]);\n } catch (error) {\n synthesizer.close();\n throw error instanceof Error ? error : new Error(String(error));\n }\n }\n\n /**\n * Checks if listening capabilities are enabled.\n *\n * @returns {Promise<{ enabled: boolean }>}\n */\n async getListener() {\n return { enabled: true };\n }\n\n /**\n * Transcribes audio (STT) from a Node.js stream using Azure.\n *\n * @param {NodeJS.ReadableStream} audioStream - The audio to be transcribed, must be in .wav format.\n * @returns {Promise<string>} - The recognized text.\n */\n async listen(audioStream: NodeJS.ReadableStream): Promise<string> {\n if (!this.listeningConfig || !this.speechRecognizer) {\n throw new Error('Listening model (Azure) not configured');\n }\n\n const chunks: Buffer[] = [];\n for await (const chunk of audioStream) {\n chunks.push(chunk as Buffer);\n }\n const audioData = Buffer.concat(chunks);\n\n const pushStream = Azure.AudioInputStream.createPushStream();\n const audioConfig = Azure.AudioConfig.fromStreamInput(pushStream);\n const recognizer = new Azure.SpeechRecognizer(this.listeningConfig, audioConfig);\n\n try {\n const recognitionPromise = new Promise<string>((resolve, reject) => {\n recognizer.recognizeOnceAsync(\n result => {\n if (result.reason === Azure.ResultReason.RecognizedSpeech) {\n resolve(result.text);\n } else {\n const reason = Azure.ResultReason[result.reason] || result.reason;\n reject(new Error(`Speech recognition failed: ${reason} - ${result.errorDetails || ''}`));\n }\n },\n error => reject(new Error(`Speech recognition error: ${String(error)}`)),\n );\n });\n\n const chunkSize = 4096;\n for (let i = 0; i < audioData.length; i += chunkSize) {\n const chunk = audioData.slice(i, i + chunkSize);\n pushStream.write(chunk);\n }\n pushStream.close();\n\n const text = await this.traced(() => recognitionPromise, 'voice.azure.listen')();\n\n return text;\n } catch (error: unknown) {\n if (error instanceof Error) {\n throw error;\n }\n throw new Error(String(error));\n } finally {\n recognizer.close();\n }\n }\n}\n"]}
|
package/dist/voices.d.ts
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const AZURE_VOICES: readonly ["af-ZA-AdriNeural", "af-ZA-WillemNeural", "am-ET-MekdesNeural", "am-ET-AmehaNeural", "ar-AE-FatimaNeural", "ar-AE-HamdanNeural", "ar-BH-LailaNeural", "ar-BH-AliNeural", "ar-DZ-AminaNeural", "ar-DZ-IsmaelNeural", "ar-EG-SalmaNeural", "ar-EG-ShakirNeural", "ar-IQ-RanaNeural", "ar-IQ-BasselNeural", "ar-JO-SanaNeural", "ar-JO-TaimNeural", "ar-KW-NouraNeural", "ar-KW-FahedNeural", "ar-LB-LaylaNeural", "ar-LB-RamiNeural", "ar-LY-ImanNeural", "ar-LY-OmarNeural", "ar-MA-MounaNeural", "ar-MA-JamalNeural", "ar-OM-AyshaNeural", "ar-OM-AbdullahNeural", "ar-QA-AmalNeural", "ar-QA-MoazNeural", "ar-SA-ZariyahNeural", "ar-SA-HamedNeural", "ar-SY-AmanyNeural", "ar-SY-LaithNeural", "ar-TN-ReemNeural", "ar-TN-HediNeural", "ar-YE-MaryamNeural", "ar-YE-SalehNeural", "as-IN-YashicaNeural", "as-IN-PriyomNeural", "az-AZ-BanuNeural", "az-AZ-BabekNeural", "bg-BG-KalinaNeural", "bg-BG-BorislavNeural", "bn-BD-NabanitaNeural", "bn-BD-PradeepNeural", "bn-IN-TanishaaNeural", "bn-IN-BashkarNeural", "bs-BA-VesnaNeural", "bs-BA-GoranNeural", "ca-ES-JoanaNeural", "ca-ES-EnricNeural", "ca-ES-AlbaNeural", "cs-CZ-VlastaNeural", "cs-CZ-AntoninNeural", "cy-GB-NiaNeural", "cy-GB-AledNeural", "da-DK-ChristelNeural", "da-DK-JeppeNeural", "de-AT-IngridNeural", "de-AT-JonasNeural", "de-CH-LeniNeural", "de-CH-JanNeural", "de-DE-KatjaNeural", "de-DE-ConradNeural", "de-DE-SeraphinaMultilingualNeural", "de-DE-FlorianMultilingualNeural", "de-DE-AmalaNeural", "de-DE-BerndNeural", "de-DE-ChristophNeural", "de-DE-ElkeNeural", "de-DE-GiselaNeural", "de-DE-KasperNeural", "de-DE-KillianNeural", "de-DE-KlarissaNeural", "de-DE-KlausNeural", "de-DE-LouisaNeural", "de-DE-MajaNeural", "de-DE-RalfNeural", "de-DE-TanjaNeural", "de-DE-Seraphina:DragonHDLatestNeural", "el-GR-AthinaNeural", "el-GR-NestorasNeural", "en-AU-NatashaNeural", "en-AU-WilliamNeural", "en-AU-AnnetteNeural", "en-AU-CarlyNeural", "en-AU-DarrenNeural", "en-AU-DuncanNeural", "en-AU-ElsieNeural", "en-AU-FreyaNeural", "en-AU-JoanneNeural", "en-AU-KenNeural", "en-AU-KimNeural", "en-AU-NeilNeural", "en-AU-TimNeural", "en-AU-TinaNeural", "en-CA-ClaraNeural", "en-CA-LiamNeural", "en-GB-SoniaNeural", "en-GB-RyanNeural", "en-GB-LibbyNeural", "en-GB-AdaMultilingualNeural", "en-GB-OllieMultilingualNeural", "en-GB-AbbiNeural", "en-GB-AlfieNeural", "en-GB-BellaNeural", "en-GB-ElliotNeural", "en-GB-EthanNeural", "en-GB-HollieNeural", "en-GB-MaisieNeural", "en-GB-NoahNeural", "en-GB-OliverNeural", "en-GB-OliviaNeural", "en-GB-ThomasNeural", "en-GB-MiaNeural", "en-HK-YanNeural", "en-HK-SamNeural", "en-IE-EmilyNeural", "en-IE-ConnorNeural", "en-IN-AaravNeural", "en-IN-AashiNeural", "en-IN-AnanyaNeural", "en-IN-KavyaNeural", "en-IN-KunalNeural", "en-IN-NeerjaNeural", "en-IN-PrabhatNeural", "en-IN-RehaanNeural", "en-IN-AartiNeural", "en-IN-ArjunNeural", "en-KE-AsiliaNeural", "en-KE-ChilembaNeural", "en-NG-EzinneNeural", "en-NG-AbeoNeural", "en-NZ-MollyNeural", "en-NZ-MitchellNeural", "en-PH-RosaNeural", "en-PH-JamesNeural", "en-SG-LunaNeural", "en-SG-WayneNeural", "en-TZ-ImaniNeural", "en-TZ-ElimuNeural", "en-US-AvaMultilingualNeural", "en-US-AndrewMultilingualNeural", "en-US-EmmaMultilingualNeural", "en-US-BrianMultilingualNeural", "en-US-AvaNeural", "en-US-AndrewNeural", "en-US-EmmaNeural", "en-US-BrianNeural", "en-US-JennyNeural", "en-US-GuyNeural", "en-US-AriaNeural", "en-US-DavisNeural", "en-US-JaneNeural", "en-US-JasonNeural", "en-US-KaiNeural", "en-US-LunaNeural", "en-US-SaraNeural", "en-US-TonyNeural", "en-US-NancyNeural", "en-US-CoraMultilingualNeural", "en-US-ChristopherMultilingualNeural", "en-US-BrandonMultilingualNeural", "en-US-AmberNeural", "en-US-AnaNeural", "en-US-AshleyNeural", "en-US-BrandonNeural", "en-US-ChristopherNeural", "en-US-CoraNeural", "en-US-ElizabethNeural", "en-US-EricNeural", "en-US-JacobNeural", "en-US-JennyMultilingualNeural", "en-US-MichelleNeural", "en-US-MonicaNeural", "en-US-RogerNeural", "en-US-RyanMultilingualNeural", "en-US-SteffanNeural", "en-US-AdamMultilingualNeural", "en-US-AIGenerate1Neural", "en-US-AIGenerate2Neural", "en-US-AlloyTurboMultilingualNeural", "en-US-AmandaMultilingualNeural", "en-US-BlueNeural", "en-US-DavisMultilingualNeural", "en-US-DerekMultilingualNeural", "en-US-DustinMultilingualNeural", "en-US-EchoTurboMultilingualNeural", "en-US-EvelynMultilingualNeural", "en-US-FableTurboMultilingualNeural", "en-US-LewisMultilingualNeural", "en-US-LolaMultilingualNeural", "en-US-NancyMultilingualNeural", "en-US-NovaTurboMultilingualNeural", "en-US-OnyxTurboMultilingualNeural", "en-US-PhoebeMultilingualNeural", "en-US-SamuelMultilingualNeural", "en-US-SerenaMultilingualNeural", "en-US-ShimmerTurboMultilingualNeural", "en-US-SteffanMultilingualNeural", "en-US-Andrew:DragonHDLatestNeural", "en-US-Andrew2:DragonHDLatestNeural", "en-US-Aria:DragonHDLatestNeural", "en-US-Ava:DragonHDLatestNeural", "en-US-Brian:DragonHDLatestNeural", "en-US-Davis:DragonHDLatestNeural", "en-US-Emma:DragonHDLatestNeural", "en-US-Emma2:DragonHDLatestNeural", "en-US-Jenny:DragonHDLatestNeural", "en-US-Steffan:DragonHDLatestNeural", "en-ZA-LeahNeural", "en-ZA-LukeNeural"];
|
|
2
|
+
export type VoiceId = (typeof AZURE_VOICES)[number];
|
|
3
|
+
//# sourceMappingURL=voices.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voices.d.ts","sourceRoot":"","sources":["../src/voices.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,k+JAoNf,CAAC;AAEX,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/voice-azure",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.6",
|
|
4
4
|
"description": "Mastra Azure speech integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"default": "./dist/index.js"
|
|
13
13
|
},
|
|
14
14
|
"require": {
|
|
15
|
-
"types": "./dist/index.d.
|
|
15
|
+
"types": "./dist/index.d.ts",
|
|
16
16
|
"default": "./dist/index.cjs"
|
|
17
17
|
}
|
|
18
18
|
},
|
|
@@ -29,15 +29,16 @@
|
|
|
29
29
|
"tsup": "^8.5.0",
|
|
30
30
|
"typescript": "^5.8.3",
|
|
31
31
|
"vitest": "^3.2.4",
|
|
32
|
-
"@internal/lint": "0.0.
|
|
33
|
-
"@mastra/core": "0.
|
|
32
|
+
"@internal/lint": "0.0.27",
|
|
33
|
+
"@mastra/core": "0.13.0",
|
|
34
|
+
"@internal/types-builder": "0.0.2"
|
|
34
35
|
},
|
|
35
36
|
"peerDependencies": {
|
|
36
|
-
"@mastra/core": ">=0.10.7-0 <0.
|
|
37
|
+
"@mastra/core": ">=0.10.7-0 <0.14.0-0"
|
|
37
38
|
},
|
|
38
39
|
"scripts": {
|
|
39
|
-
"build": "tsup
|
|
40
|
-
"build:watch": "
|
|
40
|
+
"build": "tsup --silent --config tsup.config.ts",
|
|
41
|
+
"build:watch": "tsup --watch --silent --config tsup.config.ts",
|
|
41
42
|
"test": "vitest run",
|
|
42
43
|
"lint": "eslint ."
|
|
43
44
|
}
|
package/tsconfig.json
CHANGED
package/tsup.config.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { generateTypes } from '@internal/types-builder';
|
|
2
|
+
import { defineConfig } from 'tsup';
|
|
3
|
+
|
|
4
|
+
export default defineConfig({
|
|
5
|
+
entry: ['src/index.ts'],
|
|
6
|
+
format: ['esm', 'cjs'],
|
|
7
|
+
clean: true,
|
|
8
|
+
dts: false,
|
|
9
|
+
splitting: true,
|
|
10
|
+
treeshake: {
|
|
11
|
+
preset: 'smallest',
|
|
12
|
+
},
|
|
13
|
+
sourcemap: true,
|
|
14
|
+
onSuccess: async () => {
|
|
15
|
+
await generateTypes(process.cwd());
|
|
16
|
+
},
|
|
17
|
+
});
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { MastraVoice } from '@mastra/core/voice';
|
|
2
|
-
|
|
3
|
-
export declare const AZURE_VOICES: readonly ["af-ZA-AdriNeural", "af-ZA-WillemNeural", "am-ET-MekdesNeural", "am-ET-AmehaNeural", "ar-AE-FatimaNeural", "ar-AE-HamdanNeural", "ar-BH-LailaNeural", "ar-BH-AliNeural", "ar-DZ-AminaNeural", "ar-DZ-IsmaelNeural", "ar-EG-SalmaNeural", "ar-EG-ShakirNeural", "ar-IQ-RanaNeural", "ar-IQ-BasselNeural", "ar-JO-SanaNeural", "ar-JO-TaimNeural", "ar-KW-NouraNeural", "ar-KW-FahedNeural", "ar-LB-LaylaNeural", "ar-LB-RamiNeural", "ar-LY-ImanNeural", "ar-LY-OmarNeural", "ar-MA-MounaNeural", "ar-MA-JamalNeural", "ar-OM-AyshaNeural", "ar-OM-AbdullahNeural", "ar-QA-AmalNeural", "ar-QA-MoazNeural", "ar-SA-ZariyahNeural", "ar-SA-HamedNeural", "ar-SY-AmanyNeural", "ar-SY-LaithNeural", "ar-TN-ReemNeural", "ar-TN-HediNeural", "ar-YE-MaryamNeural", "ar-YE-SalehNeural", "as-IN-YashicaNeural", "as-IN-PriyomNeural", "az-AZ-BanuNeural", "az-AZ-BabekNeural", "bg-BG-KalinaNeural", "bg-BG-BorislavNeural", "bn-BD-NabanitaNeural", "bn-BD-PradeepNeural", "bn-IN-TanishaaNeural", "bn-IN-BashkarNeural", "bs-BA-VesnaNeural", "bs-BA-GoranNeural", "ca-ES-JoanaNeural", "ca-ES-EnricNeural", "ca-ES-AlbaNeural", "cs-CZ-VlastaNeural", "cs-CZ-AntoninNeural", "cy-GB-NiaNeural", "cy-GB-AledNeural", "da-DK-ChristelNeural", "da-DK-JeppeNeural", "de-AT-IngridNeural", "de-AT-JonasNeural", "de-CH-LeniNeural", "de-CH-JanNeural", "de-DE-KatjaNeural", "de-DE-ConradNeural", "de-DE-SeraphinaMultilingualNeural", "de-DE-FlorianMultilingualNeural", "de-DE-AmalaNeural", "de-DE-BerndNeural", "de-DE-ChristophNeural", "de-DE-ElkeNeural", "de-DE-GiselaNeural", "de-DE-KasperNeural", "de-DE-KillianNeural", "de-DE-KlarissaNeural", "de-DE-KlausNeural", "de-DE-LouisaNeural", "de-DE-MajaNeural", "de-DE-RalfNeural", "de-DE-TanjaNeural", "de-DE-Seraphina:DragonHDLatestNeural", "el-GR-AthinaNeural", "el-GR-NestorasNeural", "en-AU-NatashaNeural", "en-AU-WilliamNeural", "en-AU-AnnetteNeural", "en-AU-CarlyNeural", "en-AU-DarrenNeural", "en-AU-DuncanNeural", "en-AU-ElsieNeural", "en-AU-FreyaNeural", "en-AU-JoanneNeural", "en-AU-KenNeural", "en-AU-KimNeural", "en-AU-NeilNeural", "en-AU-TimNeural", "en-AU-TinaNeural", "en-CA-ClaraNeural", "en-CA-LiamNeural", "en-GB-SoniaNeural", "en-GB-RyanNeural", "en-GB-LibbyNeural", "en-GB-AdaMultilingualNeural", "en-GB-OllieMultilingualNeural", "en-GB-AbbiNeural", "en-GB-AlfieNeural", "en-GB-BellaNeural", "en-GB-ElliotNeural", "en-GB-EthanNeural", "en-GB-HollieNeural", "en-GB-MaisieNeural", "en-GB-NoahNeural", "en-GB-OliverNeural", "en-GB-OliviaNeural", "en-GB-ThomasNeural", "en-GB-MiaNeural", "en-HK-YanNeural", "en-HK-SamNeural", "en-IE-EmilyNeural", "en-IE-ConnorNeural", "en-IN-AaravNeural", "en-IN-AashiNeural", "en-IN-AnanyaNeural", "en-IN-KavyaNeural", "en-IN-KunalNeural", "en-IN-NeerjaNeural", "en-IN-PrabhatNeural", "en-IN-RehaanNeural", "en-IN-AartiNeural", "en-IN-ArjunNeural", "en-KE-AsiliaNeural", "en-KE-ChilembaNeural", "en-NG-EzinneNeural", "en-NG-AbeoNeural", "en-NZ-MollyNeural", "en-NZ-MitchellNeural", "en-PH-RosaNeural", "en-PH-JamesNeural", "en-SG-LunaNeural", "en-SG-WayneNeural", "en-TZ-ImaniNeural", "en-TZ-ElimuNeural", "en-US-AvaMultilingualNeural", "en-US-AndrewMultilingualNeural", "en-US-EmmaMultilingualNeural", "en-US-BrianMultilingualNeural", "en-US-AvaNeural", "en-US-AndrewNeural", "en-US-EmmaNeural", "en-US-BrianNeural", "en-US-JennyNeural", "en-US-GuyNeural", "en-US-AriaNeural", "en-US-DavisNeural", "en-US-JaneNeural", "en-US-JasonNeural", "en-US-KaiNeural", "en-US-LunaNeural", "en-US-SaraNeural", "en-US-TonyNeural", "en-US-NancyNeural", "en-US-CoraMultilingualNeural", "en-US-ChristopherMultilingualNeural", "en-US-BrandonMultilingualNeural", "en-US-AmberNeural", "en-US-AnaNeural", "en-US-AshleyNeural", "en-US-BrandonNeural", "en-US-ChristopherNeural", "en-US-CoraNeural", "en-US-ElizabethNeural", "en-US-EricNeural", "en-US-JacobNeural", "en-US-JennyMultilingualNeural", "en-US-MichelleNeural", "en-US-MonicaNeural", "en-US-RogerNeural", "en-US-RyanMultilingualNeural", "en-US-SteffanNeural", "en-US-AdamMultilingualNeural", "en-US-AIGenerate1Neural", "en-US-AIGenerate2Neural", "en-US-AlloyTurboMultilingualNeural", "en-US-AmandaMultilingualNeural", "en-US-BlueNeural", "en-US-DavisMultilingualNeural", "en-US-DerekMultilingualNeural", "en-US-DustinMultilingualNeural", "en-US-EchoTurboMultilingualNeural", "en-US-EvelynMultilingualNeural", "en-US-FableTurboMultilingualNeural", "en-US-LewisMultilingualNeural", "en-US-LolaMultilingualNeural", "en-US-NancyMultilingualNeural", "en-US-NovaTurboMultilingualNeural", "en-US-OnyxTurboMultilingualNeural", "en-US-PhoebeMultilingualNeural", "en-US-SamuelMultilingualNeural", "en-US-SerenaMultilingualNeural", "en-US-ShimmerTurboMultilingualNeural", "en-US-SteffanMultilingualNeural", "en-US-Andrew:DragonHDLatestNeural", "en-US-Andrew2:DragonHDLatestNeural", "en-US-Aria:DragonHDLatestNeural", "en-US-Ava:DragonHDLatestNeural", "en-US-Brian:DragonHDLatestNeural", "en-US-Davis:DragonHDLatestNeural", "en-US-Emma:DragonHDLatestNeural", "en-US-Emma2:DragonHDLatestNeural", "en-US-Jenny:DragonHDLatestNeural", "en-US-Steffan:DragonHDLatestNeural", "en-ZA-LeahNeural", "en-ZA-LukeNeural"];
|
|
4
|
-
|
|
5
|
-
export declare class AzureVoice extends MastraVoice {
|
|
6
|
-
private speechConfig?;
|
|
7
|
-
private listeningConfig?;
|
|
8
|
-
private speechSynthesizer?;
|
|
9
|
-
private speechRecognizer?;
|
|
10
|
-
/**
|
|
11
|
-
* Creates a new instance of AzureVoice for text-to-speech and speech-to-text services.
|
|
12
|
-
*
|
|
13
|
-
* @param {Object} config - Configuration options
|
|
14
|
-
* @param {AzureVoiceConfig} [config.speechModel] - Configuration for text-to-speech
|
|
15
|
-
* @param {AzureVoiceConfig} [config.listeningModel] - Configuration for speech-to-text
|
|
16
|
-
* @param {VoiceId} [config.speaker] - Default voice ID for speech synthesis
|
|
17
|
-
*/
|
|
18
|
-
constructor({ speechModel, listeningModel, speaker, }?: {
|
|
19
|
-
speechModel?: AzureVoiceConfig;
|
|
20
|
-
listeningModel?: AzureVoiceConfig;
|
|
21
|
-
speaker?: VoiceId;
|
|
22
|
-
});
|
|
23
|
-
/**
|
|
24
|
-
* Gets a list of available voices for speech synthesis.
|
|
25
|
-
*
|
|
26
|
-
* @returns {Promise<Array<{ voiceId: string; language: string; region: string; }>>} List of available voices
|
|
27
|
-
*/
|
|
28
|
-
getSpeakers(): Promise<{
|
|
29
|
-
voiceId: "af-ZA-AdriNeural" | "af-ZA-WillemNeural" | "am-ET-MekdesNeural" | "am-ET-AmehaNeural" | "ar-AE-FatimaNeural" | "ar-AE-HamdanNeural" | "ar-BH-LailaNeural" | "ar-BH-AliNeural" | "ar-DZ-AminaNeural" | "ar-DZ-IsmaelNeural" | "ar-EG-SalmaNeural" | "ar-EG-ShakirNeural" | "ar-IQ-RanaNeural" | "ar-IQ-BasselNeural" | "ar-JO-SanaNeural" | "ar-JO-TaimNeural" | "ar-KW-NouraNeural" | "ar-KW-FahedNeural" | "ar-LB-LaylaNeural" | "ar-LB-RamiNeural" | "ar-LY-ImanNeural" | "ar-LY-OmarNeural" | "ar-MA-MounaNeural" | "ar-MA-JamalNeural" | "ar-OM-AyshaNeural" | "ar-OM-AbdullahNeural" | "ar-QA-AmalNeural" | "ar-QA-MoazNeural" | "ar-SA-ZariyahNeural" | "ar-SA-HamedNeural" | "ar-SY-AmanyNeural" | "ar-SY-LaithNeural" | "ar-TN-ReemNeural" | "ar-TN-HediNeural" | "ar-YE-MaryamNeural" | "ar-YE-SalehNeural" | "as-IN-YashicaNeural" | "as-IN-PriyomNeural" | "az-AZ-BanuNeural" | "az-AZ-BabekNeural" | "bg-BG-KalinaNeural" | "bg-BG-BorislavNeural" | "bn-BD-NabanitaNeural" | "bn-BD-PradeepNeural" | "bn-IN-TanishaaNeural" | "bn-IN-BashkarNeural" | "bs-BA-VesnaNeural" | "bs-BA-GoranNeural" | "ca-ES-JoanaNeural" | "ca-ES-EnricNeural" | "ca-ES-AlbaNeural" | "cs-CZ-VlastaNeural" | "cs-CZ-AntoninNeural" | "cy-GB-NiaNeural" | "cy-GB-AledNeural" | "da-DK-ChristelNeural" | "da-DK-JeppeNeural" | "de-AT-IngridNeural" | "de-AT-JonasNeural" | "de-CH-LeniNeural" | "de-CH-JanNeural" | "de-DE-KatjaNeural" | "de-DE-ConradNeural" | "de-DE-SeraphinaMultilingualNeural" | "de-DE-FlorianMultilingualNeural" | "de-DE-AmalaNeural" | "de-DE-BerndNeural" | "de-DE-ChristophNeural" | "de-DE-ElkeNeural" | "de-DE-GiselaNeural" | "de-DE-KasperNeural" | "de-DE-KillianNeural" | "de-DE-KlarissaNeural" | "de-DE-KlausNeural" | "de-DE-LouisaNeural" | "de-DE-MajaNeural" | "de-DE-RalfNeural" | "de-DE-TanjaNeural" | "de-DE-Seraphina:DragonHDLatestNeural" | "el-GR-AthinaNeural" | "el-GR-NestorasNeural" | "en-AU-NatashaNeural" | "en-AU-WilliamNeural" | "en-AU-AnnetteNeural" | "en-AU-CarlyNeural" | "en-AU-DarrenNeural" | "en-AU-DuncanNeural" | "en-AU-ElsieNeural" | "en-AU-FreyaNeural" | "en-AU-JoanneNeural" | "en-AU-KenNeural" | "en-AU-KimNeural" | "en-AU-NeilNeural" | "en-AU-TimNeural" | "en-AU-TinaNeural" | "en-CA-ClaraNeural" | "en-CA-LiamNeural" | "en-GB-SoniaNeural" | "en-GB-RyanNeural" | "en-GB-LibbyNeural" | "en-GB-AdaMultilingualNeural" | "en-GB-OllieMultilingualNeural" | "en-GB-AbbiNeural" | "en-GB-AlfieNeural" | "en-GB-BellaNeural" | "en-GB-ElliotNeural" | "en-GB-EthanNeural" | "en-GB-HollieNeural" | "en-GB-MaisieNeural" | "en-GB-NoahNeural" | "en-GB-OliverNeural" | "en-GB-OliviaNeural" | "en-GB-ThomasNeural" | "en-GB-MiaNeural" | "en-HK-YanNeural" | "en-HK-SamNeural" | "en-IE-EmilyNeural" | "en-IE-ConnorNeural" | "en-IN-AaravNeural" | "en-IN-AashiNeural" | "en-IN-AnanyaNeural" | "en-IN-KavyaNeural" | "en-IN-KunalNeural" | "en-IN-NeerjaNeural" | "en-IN-PrabhatNeural" | "en-IN-RehaanNeural" | "en-IN-AartiNeural" | "en-IN-ArjunNeural" | "en-KE-AsiliaNeural" | "en-KE-ChilembaNeural" | "en-NG-EzinneNeural" | "en-NG-AbeoNeural" | "en-NZ-MollyNeural" | "en-NZ-MitchellNeural" | "en-PH-RosaNeural" | "en-PH-JamesNeural" | "en-SG-LunaNeural" | "en-SG-WayneNeural" | "en-TZ-ImaniNeural" | "en-TZ-ElimuNeural" | "en-US-AvaMultilingualNeural" | "en-US-AndrewMultilingualNeural" | "en-US-EmmaMultilingualNeural" | "en-US-BrianMultilingualNeural" | "en-US-AvaNeural" | "en-US-AndrewNeural" | "en-US-EmmaNeural" | "en-US-BrianNeural" | "en-US-JennyNeural" | "en-US-GuyNeural" | "en-US-AriaNeural" | "en-US-DavisNeural" | "en-US-JaneNeural" | "en-US-JasonNeural" | "en-US-KaiNeural" | "en-US-LunaNeural" | "en-US-SaraNeural" | "en-US-TonyNeural" | "en-US-NancyNeural" | "en-US-CoraMultilingualNeural" | "en-US-ChristopherMultilingualNeural" | "en-US-BrandonMultilingualNeural" | "en-US-AmberNeural" | "en-US-AnaNeural" | "en-US-AshleyNeural" | "en-US-BrandonNeural" | "en-US-ChristopherNeural" | "en-US-CoraNeural" | "en-US-ElizabethNeural" | "en-US-EricNeural" | "en-US-JacobNeural" | "en-US-JennyMultilingualNeural" | "en-US-MichelleNeural" | "en-US-MonicaNeural" | "en-US-RogerNeural" | "en-US-RyanMultilingualNeural" | "en-US-SteffanNeural" | "en-US-AdamMultilingualNeural" | "en-US-AIGenerate1Neural" | "en-US-AIGenerate2Neural" | "en-US-AlloyTurboMultilingualNeural" | "en-US-AmandaMultilingualNeural" | "en-US-BlueNeural" | "en-US-DavisMultilingualNeural" | "en-US-DerekMultilingualNeural" | "en-US-DustinMultilingualNeural" | "en-US-EchoTurboMultilingualNeural" | "en-US-EvelynMultilingualNeural" | "en-US-FableTurboMultilingualNeural" | "en-US-LewisMultilingualNeural" | "en-US-LolaMultilingualNeural" | "en-US-NancyMultilingualNeural" | "en-US-NovaTurboMultilingualNeural" | "en-US-OnyxTurboMultilingualNeural" | "en-US-PhoebeMultilingualNeural" | "en-US-SamuelMultilingualNeural" | "en-US-SerenaMultilingualNeural" | "en-US-ShimmerTurboMultilingualNeural" | "en-US-SteffanMultilingualNeural" | "en-US-Andrew:DragonHDLatestNeural" | "en-US-Andrew2:DragonHDLatestNeural" | "en-US-Aria:DragonHDLatestNeural" | "en-US-Ava:DragonHDLatestNeural" | "en-US-Brian:DragonHDLatestNeural" | "en-US-Davis:DragonHDLatestNeural" | "en-US-Emma:DragonHDLatestNeural" | "en-US-Emma2:DragonHDLatestNeural" | "en-US-Jenny:DragonHDLatestNeural" | "en-US-Steffan:DragonHDLatestNeural" | "en-ZA-LeahNeural" | "en-ZA-LukeNeural";
|
|
30
|
-
language: string | undefined;
|
|
31
|
-
region: string | undefined;
|
|
32
|
-
}[]>;
|
|
33
|
-
/**
|
|
34
|
-
* Converts text to speech using Azure's Text-to-Speech service.
|
|
35
|
-
*
|
|
36
|
-
* @param {string | NodeJS.ReadableStream} input - Text to convert to speech
|
|
37
|
-
* @param {Object} [options] - Optional parameters
|
|
38
|
-
* @param {string} [options.speaker] - Voice ID to use for synthesis
|
|
39
|
-
* @returns {Promise<NodeJS.ReadableStream>} Stream containing the synthesized audio
|
|
40
|
-
* @throws {Error} If speech model is not configured or synthesis fails
|
|
41
|
-
*/
|
|
42
|
-
speak(input: string | NodeJS.ReadableStream, options?: {
|
|
43
|
-
speaker?: string;
|
|
44
|
-
[key: string]: any;
|
|
45
|
-
}): Promise<NodeJS.ReadableStream>;
|
|
46
|
-
/**
|
|
47
|
-
* Checks if listening capabilities are enabled.
|
|
48
|
-
*
|
|
49
|
-
* @returns {Promise<{ enabled: boolean }>}
|
|
50
|
-
*/
|
|
51
|
-
getListener(): Promise<{
|
|
52
|
-
enabled: boolean;
|
|
53
|
-
}>;
|
|
54
|
-
/**
|
|
55
|
-
* Transcribes audio (STT) from a Node.js stream using Azure.
|
|
56
|
-
*
|
|
57
|
-
* @param {NodeJS.ReadableStream} audioStream - The audio to be transcribed, must be in .wav format.
|
|
58
|
-
* @returns {Promise<string>} - The recognized text.
|
|
59
|
-
*/
|
|
60
|
-
listen(audioStream: NodeJS.ReadableStream): Promise<string>;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
declare interface AzureVoiceConfig {
|
|
64
|
-
apiKey?: string;
|
|
65
|
-
region?: string;
|
|
66
|
-
voiceName?: string;
|
|
67
|
-
language?: string;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
export declare type VoiceId = (typeof AZURE_VOICES)[number];
|
|
71
|
-
|
|
72
|
-
export { }
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { MastraVoice } from '@mastra/core/voice';
|
|
2
|
-
|
|
3
|
-
export declare const AZURE_VOICES: readonly ["af-ZA-AdriNeural", "af-ZA-WillemNeural", "am-ET-MekdesNeural", "am-ET-AmehaNeural", "ar-AE-FatimaNeural", "ar-AE-HamdanNeural", "ar-BH-LailaNeural", "ar-BH-AliNeural", "ar-DZ-AminaNeural", "ar-DZ-IsmaelNeural", "ar-EG-SalmaNeural", "ar-EG-ShakirNeural", "ar-IQ-RanaNeural", "ar-IQ-BasselNeural", "ar-JO-SanaNeural", "ar-JO-TaimNeural", "ar-KW-NouraNeural", "ar-KW-FahedNeural", "ar-LB-LaylaNeural", "ar-LB-RamiNeural", "ar-LY-ImanNeural", "ar-LY-OmarNeural", "ar-MA-MounaNeural", "ar-MA-JamalNeural", "ar-OM-AyshaNeural", "ar-OM-AbdullahNeural", "ar-QA-AmalNeural", "ar-QA-MoazNeural", "ar-SA-ZariyahNeural", "ar-SA-HamedNeural", "ar-SY-AmanyNeural", "ar-SY-LaithNeural", "ar-TN-ReemNeural", "ar-TN-HediNeural", "ar-YE-MaryamNeural", "ar-YE-SalehNeural", "as-IN-YashicaNeural", "as-IN-PriyomNeural", "az-AZ-BanuNeural", "az-AZ-BabekNeural", "bg-BG-KalinaNeural", "bg-BG-BorislavNeural", "bn-BD-NabanitaNeural", "bn-BD-PradeepNeural", "bn-IN-TanishaaNeural", "bn-IN-BashkarNeural", "bs-BA-VesnaNeural", "bs-BA-GoranNeural", "ca-ES-JoanaNeural", "ca-ES-EnricNeural", "ca-ES-AlbaNeural", "cs-CZ-VlastaNeural", "cs-CZ-AntoninNeural", "cy-GB-NiaNeural", "cy-GB-AledNeural", "da-DK-ChristelNeural", "da-DK-JeppeNeural", "de-AT-IngridNeural", "de-AT-JonasNeural", "de-CH-LeniNeural", "de-CH-JanNeural", "de-DE-KatjaNeural", "de-DE-ConradNeural", "de-DE-SeraphinaMultilingualNeural", "de-DE-FlorianMultilingualNeural", "de-DE-AmalaNeural", "de-DE-BerndNeural", "de-DE-ChristophNeural", "de-DE-ElkeNeural", "de-DE-GiselaNeural", "de-DE-KasperNeural", "de-DE-KillianNeural", "de-DE-KlarissaNeural", "de-DE-KlausNeural", "de-DE-LouisaNeural", "de-DE-MajaNeural", "de-DE-RalfNeural", "de-DE-TanjaNeural", "de-DE-Seraphina:DragonHDLatestNeural", "el-GR-AthinaNeural", "el-GR-NestorasNeural", "en-AU-NatashaNeural", "en-AU-WilliamNeural", "en-AU-AnnetteNeural", "en-AU-CarlyNeural", "en-AU-DarrenNeural", "en-AU-DuncanNeural", "en-AU-ElsieNeural", "en-AU-FreyaNeural", "en-AU-JoanneNeural", "en-AU-KenNeural", "en-AU-KimNeural", "en-AU-NeilNeural", "en-AU-TimNeural", "en-AU-TinaNeural", "en-CA-ClaraNeural", "en-CA-LiamNeural", "en-GB-SoniaNeural", "en-GB-RyanNeural", "en-GB-LibbyNeural", "en-GB-AdaMultilingualNeural", "en-GB-OllieMultilingualNeural", "en-GB-AbbiNeural", "en-GB-AlfieNeural", "en-GB-BellaNeural", "en-GB-ElliotNeural", "en-GB-EthanNeural", "en-GB-HollieNeural", "en-GB-MaisieNeural", "en-GB-NoahNeural", "en-GB-OliverNeural", "en-GB-OliviaNeural", "en-GB-ThomasNeural", "en-GB-MiaNeural", "en-HK-YanNeural", "en-HK-SamNeural", "en-IE-EmilyNeural", "en-IE-ConnorNeural", "en-IN-AaravNeural", "en-IN-AashiNeural", "en-IN-AnanyaNeural", "en-IN-KavyaNeural", "en-IN-KunalNeural", "en-IN-NeerjaNeural", "en-IN-PrabhatNeural", "en-IN-RehaanNeural", "en-IN-AartiNeural", "en-IN-ArjunNeural", "en-KE-AsiliaNeural", "en-KE-ChilembaNeural", "en-NG-EzinneNeural", "en-NG-AbeoNeural", "en-NZ-MollyNeural", "en-NZ-MitchellNeural", "en-PH-RosaNeural", "en-PH-JamesNeural", "en-SG-LunaNeural", "en-SG-WayneNeural", "en-TZ-ImaniNeural", "en-TZ-ElimuNeural", "en-US-AvaMultilingualNeural", "en-US-AndrewMultilingualNeural", "en-US-EmmaMultilingualNeural", "en-US-BrianMultilingualNeural", "en-US-AvaNeural", "en-US-AndrewNeural", "en-US-EmmaNeural", "en-US-BrianNeural", "en-US-JennyNeural", "en-US-GuyNeural", "en-US-AriaNeural", "en-US-DavisNeural", "en-US-JaneNeural", "en-US-JasonNeural", "en-US-KaiNeural", "en-US-LunaNeural", "en-US-SaraNeural", "en-US-TonyNeural", "en-US-NancyNeural", "en-US-CoraMultilingualNeural", "en-US-ChristopherMultilingualNeural", "en-US-BrandonMultilingualNeural", "en-US-AmberNeural", "en-US-AnaNeural", "en-US-AshleyNeural", "en-US-BrandonNeural", "en-US-ChristopherNeural", "en-US-CoraNeural", "en-US-ElizabethNeural", "en-US-EricNeural", "en-US-JacobNeural", "en-US-JennyMultilingualNeural", "en-US-MichelleNeural", "en-US-MonicaNeural", "en-US-RogerNeural", "en-US-RyanMultilingualNeural", "en-US-SteffanNeural", "en-US-AdamMultilingualNeural", "en-US-AIGenerate1Neural", "en-US-AIGenerate2Neural", "en-US-AlloyTurboMultilingualNeural", "en-US-AmandaMultilingualNeural", "en-US-BlueNeural", "en-US-DavisMultilingualNeural", "en-US-DerekMultilingualNeural", "en-US-DustinMultilingualNeural", "en-US-EchoTurboMultilingualNeural", "en-US-EvelynMultilingualNeural", "en-US-FableTurboMultilingualNeural", "en-US-LewisMultilingualNeural", "en-US-LolaMultilingualNeural", "en-US-NancyMultilingualNeural", "en-US-NovaTurboMultilingualNeural", "en-US-OnyxTurboMultilingualNeural", "en-US-PhoebeMultilingualNeural", "en-US-SamuelMultilingualNeural", "en-US-SerenaMultilingualNeural", "en-US-ShimmerTurboMultilingualNeural", "en-US-SteffanMultilingualNeural", "en-US-Andrew:DragonHDLatestNeural", "en-US-Andrew2:DragonHDLatestNeural", "en-US-Aria:DragonHDLatestNeural", "en-US-Ava:DragonHDLatestNeural", "en-US-Brian:DragonHDLatestNeural", "en-US-Davis:DragonHDLatestNeural", "en-US-Emma:DragonHDLatestNeural", "en-US-Emma2:DragonHDLatestNeural", "en-US-Jenny:DragonHDLatestNeural", "en-US-Steffan:DragonHDLatestNeural", "en-ZA-LeahNeural", "en-ZA-LukeNeural"];
|
|
4
|
-
|
|
5
|
-
export declare class AzureVoice extends MastraVoice {
|
|
6
|
-
private speechConfig?;
|
|
7
|
-
private listeningConfig?;
|
|
8
|
-
private speechSynthesizer?;
|
|
9
|
-
private speechRecognizer?;
|
|
10
|
-
/**
|
|
11
|
-
* Creates a new instance of AzureVoice for text-to-speech and speech-to-text services.
|
|
12
|
-
*
|
|
13
|
-
* @param {Object} config - Configuration options
|
|
14
|
-
* @param {AzureVoiceConfig} [config.speechModel] - Configuration for text-to-speech
|
|
15
|
-
* @param {AzureVoiceConfig} [config.listeningModel] - Configuration for speech-to-text
|
|
16
|
-
* @param {VoiceId} [config.speaker] - Default voice ID for speech synthesis
|
|
17
|
-
*/
|
|
18
|
-
constructor({ speechModel, listeningModel, speaker, }?: {
|
|
19
|
-
speechModel?: AzureVoiceConfig;
|
|
20
|
-
listeningModel?: AzureVoiceConfig;
|
|
21
|
-
speaker?: VoiceId;
|
|
22
|
-
});
|
|
23
|
-
/**
|
|
24
|
-
* Gets a list of available voices for speech synthesis.
|
|
25
|
-
*
|
|
26
|
-
* @returns {Promise<Array<{ voiceId: string; language: string; region: string; }>>} List of available voices
|
|
27
|
-
*/
|
|
28
|
-
getSpeakers(): Promise<{
|
|
29
|
-
voiceId: "af-ZA-AdriNeural" | "af-ZA-WillemNeural" | "am-ET-MekdesNeural" | "am-ET-AmehaNeural" | "ar-AE-FatimaNeural" | "ar-AE-HamdanNeural" | "ar-BH-LailaNeural" | "ar-BH-AliNeural" | "ar-DZ-AminaNeural" | "ar-DZ-IsmaelNeural" | "ar-EG-SalmaNeural" | "ar-EG-ShakirNeural" | "ar-IQ-RanaNeural" | "ar-IQ-BasselNeural" | "ar-JO-SanaNeural" | "ar-JO-TaimNeural" | "ar-KW-NouraNeural" | "ar-KW-FahedNeural" | "ar-LB-LaylaNeural" | "ar-LB-RamiNeural" | "ar-LY-ImanNeural" | "ar-LY-OmarNeural" | "ar-MA-MounaNeural" | "ar-MA-JamalNeural" | "ar-OM-AyshaNeural" | "ar-OM-AbdullahNeural" | "ar-QA-AmalNeural" | "ar-QA-MoazNeural" | "ar-SA-ZariyahNeural" | "ar-SA-HamedNeural" | "ar-SY-AmanyNeural" | "ar-SY-LaithNeural" | "ar-TN-ReemNeural" | "ar-TN-HediNeural" | "ar-YE-MaryamNeural" | "ar-YE-SalehNeural" | "as-IN-YashicaNeural" | "as-IN-PriyomNeural" | "az-AZ-BanuNeural" | "az-AZ-BabekNeural" | "bg-BG-KalinaNeural" | "bg-BG-BorislavNeural" | "bn-BD-NabanitaNeural" | "bn-BD-PradeepNeural" | "bn-IN-TanishaaNeural" | "bn-IN-BashkarNeural" | "bs-BA-VesnaNeural" | "bs-BA-GoranNeural" | "ca-ES-JoanaNeural" | "ca-ES-EnricNeural" | "ca-ES-AlbaNeural" | "cs-CZ-VlastaNeural" | "cs-CZ-AntoninNeural" | "cy-GB-NiaNeural" | "cy-GB-AledNeural" | "da-DK-ChristelNeural" | "da-DK-JeppeNeural" | "de-AT-IngridNeural" | "de-AT-JonasNeural" | "de-CH-LeniNeural" | "de-CH-JanNeural" | "de-DE-KatjaNeural" | "de-DE-ConradNeural" | "de-DE-SeraphinaMultilingualNeural" | "de-DE-FlorianMultilingualNeural" | "de-DE-AmalaNeural" | "de-DE-BerndNeural" | "de-DE-ChristophNeural" | "de-DE-ElkeNeural" | "de-DE-GiselaNeural" | "de-DE-KasperNeural" | "de-DE-KillianNeural" | "de-DE-KlarissaNeural" | "de-DE-KlausNeural" | "de-DE-LouisaNeural" | "de-DE-MajaNeural" | "de-DE-RalfNeural" | "de-DE-TanjaNeural" | "de-DE-Seraphina:DragonHDLatestNeural" | "el-GR-AthinaNeural" | "el-GR-NestorasNeural" | "en-AU-NatashaNeural" | "en-AU-WilliamNeural" | "en-AU-AnnetteNeural" | "en-AU-CarlyNeural" | "en-AU-DarrenNeural" | "en-AU-DuncanNeural" | "en-AU-ElsieNeural" | "en-AU-FreyaNeural" | "en-AU-JoanneNeural" | "en-AU-KenNeural" | "en-AU-KimNeural" | "en-AU-NeilNeural" | "en-AU-TimNeural" | "en-AU-TinaNeural" | "en-CA-ClaraNeural" | "en-CA-LiamNeural" | "en-GB-SoniaNeural" | "en-GB-RyanNeural" | "en-GB-LibbyNeural" | "en-GB-AdaMultilingualNeural" | "en-GB-OllieMultilingualNeural" | "en-GB-AbbiNeural" | "en-GB-AlfieNeural" | "en-GB-BellaNeural" | "en-GB-ElliotNeural" | "en-GB-EthanNeural" | "en-GB-HollieNeural" | "en-GB-MaisieNeural" | "en-GB-NoahNeural" | "en-GB-OliverNeural" | "en-GB-OliviaNeural" | "en-GB-ThomasNeural" | "en-GB-MiaNeural" | "en-HK-YanNeural" | "en-HK-SamNeural" | "en-IE-EmilyNeural" | "en-IE-ConnorNeural" | "en-IN-AaravNeural" | "en-IN-AashiNeural" | "en-IN-AnanyaNeural" | "en-IN-KavyaNeural" | "en-IN-KunalNeural" | "en-IN-NeerjaNeural" | "en-IN-PrabhatNeural" | "en-IN-RehaanNeural" | "en-IN-AartiNeural" | "en-IN-ArjunNeural" | "en-KE-AsiliaNeural" | "en-KE-ChilembaNeural" | "en-NG-EzinneNeural" | "en-NG-AbeoNeural" | "en-NZ-MollyNeural" | "en-NZ-MitchellNeural" | "en-PH-RosaNeural" | "en-PH-JamesNeural" | "en-SG-LunaNeural" | "en-SG-WayneNeural" | "en-TZ-ImaniNeural" | "en-TZ-ElimuNeural" | "en-US-AvaMultilingualNeural" | "en-US-AndrewMultilingualNeural" | "en-US-EmmaMultilingualNeural" | "en-US-BrianMultilingualNeural" | "en-US-AvaNeural" | "en-US-AndrewNeural" | "en-US-EmmaNeural" | "en-US-BrianNeural" | "en-US-JennyNeural" | "en-US-GuyNeural" | "en-US-AriaNeural" | "en-US-DavisNeural" | "en-US-JaneNeural" | "en-US-JasonNeural" | "en-US-KaiNeural" | "en-US-LunaNeural" | "en-US-SaraNeural" | "en-US-TonyNeural" | "en-US-NancyNeural" | "en-US-CoraMultilingualNeural" | "en-US-ChristopherMultilingualNeural" | "en-US-BrandonMultilingualNeural" | "en-US-AmberNeural" | "en-US-AnaNeural" | "en-US-AshleyNeural" | "en-US-BrandonNeural" | "en-US-ChristopherNeural" | "en-US-CoraNeural" | "en-US-ElizabethNeural" | "en-US-EricNeural" | "en-US-JacobNeural" | "en-US-JennyMultilingualNeural" | "en-US-MichelleNeural" | "en-US-MonicaNeural" | "en-US-RogerNeural" | "en-US-RyanMultilingualNeural" | "en-US-SteffanNeural" | "en-US-AdamMultilingualNeural" | "en-US-AIGenerate1Neural" | "en-US-AIGenerate2Neural" | "en-US-AlloyTurboMultilingualNeural" | "en-US-AmandaMultilingualNeural" | "en-US-BlueNeural" | "en-US-DavisMultilingualNeural" | "en-US-DerekMultilingualNeural" | "en-US-DustinMultilingualNeural" | "en-US-EchoTurboMultilingualNeural" | "en-US-EvelynMultilingualNeural" | "en-US-FableTurboMultilingualNeural" | "en-US-LewisMultilingualNeural" | "en-US-LolaMultilingualNeural" | "en-US-NancyMultilingualNeural" | "en-US-NovaTurboMultilingualNeural" | "en-US-OnyxTurboMultilingualNeural" | "en-US-PhoebeMultilingualNeural" | "en-US-SamuelMultilingualNeural" | "en-US-SerenaMultilingualNeural" | "en-US-ShimmerTurboMultilingualNeural" | "en-US-SteffanMultilingualNeural" | "en-US-Andrew:DragonHDLatestNeural" | "en-US-Andrew2:DragonHDLatestNeural" | "en-US-Aria:DragonHDLatestNeural" | "en-US-Ava:DragonHDLatestNeural" | "en-US-Brian:DragonHDLatestNeural" | "en-US-Davis:DragonHDLatestNeural" | "en-US-Emma:DragonHDLatestNeural" | "en-US-Emma2:DragonHDLatestNeural" | "en-US-Jenny:DragonHDLatestNeural" | "en-US-Steffan:DragonHDLatestNeural" | "en-ZA-LeahNeural" | "en-ZA-LukeNeural";
|
|
30
|
-
language: string | undefined;
|
|
31
|
-
region: string | undefined;
|
|
32
|
-
}[]>;
|
|
33
|
-
/**
|
|
34
|
-
* Converts text to speech using Azure's Text-to-Speech service.
|
|
35
|
-
*
|
|
36
|
-
* @param {string | NodeJS.ReadableStream} input - Text to convert to speech
|
|
37
|
-
* @param {Object} [options] - Optional parameters
|
|
38
|
-
* @param {string} [options.speaker] - Voice ID to use for synthesis
|
|
39
|
-
* @returns {Promise<NodeJS.ReadableStream>} Stream containing the synthesized audio
|
|
40
|
-
* @throws {Error} If speech model is not configured or synthesis fails
|
|
41
|
-
*/
|
|
42
|
-
speak(input: string | NodeJS.ReadableStream, options?: {
|
|
43
|
-
speaker?: string;
|
|
44
|
-
[key: string]: any;
|
|
45
|
-
}): Promise<NodeJS.ReadableStream>;
|
|
46
|
-
/**
|
|
47
|
-
* Checks if listening capabilities are enabled.
|
|
48
|
-
*
|
|
49
|
-
* @returns {Promise<{ enabled: boolean }>}
|
|
50
|
-
*/
|
|
51
|
-
getListener(): Promise<{
|
|
52
|
-
enabled: boolean;
|
|
53
|
-
}>;
|
|
54
|
-
/**
|
|
55
|
-
* Transcribes audio (STT) from a Node.js stream using Azure.
|
|
56
|
-
*
|
|
57
|
-
* @param {NodeJS.ReadableStream} audioStream - The audio to be transcribed, must be in .wav format.
|
|
58
|
-
* @returns {Promise<string>} - The recognized text.
|
|
59
|
-
*/
|
|
60
|
-
listen(audioStream: NodeJS.ReadableStream): Promise<string>;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
declare interface AzureVoiceConfig {
|
|
64
|
-
apiKey?: string;
|
|
65
|
-
region?: string;
|
|
66
|
-
voiceName?: string;
|
|
67
|
-
language?: string;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
export declare type VoiceId = (typeof AZURE_VOICES)[number];
|
|
71
|
-
|
|
72
|
-
export { }
|
package/dist/index.d.cts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { AzureVoice } from './_tsup-dts-rollup.cjs';
|