{"_id":"@caleblawson/voice-azure","name":"@caleblawson/voice-azure","dist-tags":{"latest":"0.10.3"},"versions":{"0.10.3":{"name":"@caleblawson/voice-azure","version":"0.10.3","description":"Mastra Azure speech integration","type":"module","main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"license":"Elastic-2.0","dependencies":{"microsoft-cognitiveservices-speech-sdk":"^1.44.1"},"devDependencies":{"@microsoft/api-extractor":"^7.52.8","@types/node":"^20.19.0","eslint":"^9.28.0","tsup":"^8.5.0","typescript":"^5.8.3","vitest":"^2.1.9","@internal/lint":"0.0.13","@mastra/core":"npm:@caleblawson/core@0.10.7-alpha.0"},"peerDependencies":{"@mastra/core":"^0.10.0-alpha.0"},"scripts":{"build":"tsup src/index.ts --format esm,cjs --experimental-dts --clean --treeshake=smallest --splitting","build:watch":"pnpm build --watch","test":"vitest run","lint":"eslint ."},"gitHead":"c31e90130a5c9765c23f688ecea70adc6164543d","_id":"@caleblawson/voice-azure@0.10.3","_integrity":"sha512-Qy+j8CXpOLnkDma0hkjHZ0h6peH1BeH491mn3gcJkSSFT9HwcgHyvTobUm7Q/bDPldZKbQpcuk/iP4a3JiUnCw==","_resolved":"C:\\Users\\caleb\\AppData\\Local\\Temp\\b982f21f617080f5e0ea635b897b4bd4\\caleblawson-voice-azure-0.10.3.tgz","_from":"file:caleblawson-voice-azure-0.10.3.tgz","_nodeVersion":"21.2.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-Qy+j8CXpOLnkDma0hkjHZ0h6peH1BeH491mn3gcJkSSFT9HwcgHyvTobUm7Q/bDPldZKbQpcuk/iP4a3JiUnCw==","shasum":"b17793352e3bd6458764e88d485f87dbd17ae02b","tarball":"https://registry.npmjs.org/@caleblawson/voice-azure/-/voice-azure-0.10.3.tgz","fileCount":17,"unpackedSize":99013,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD1VukdxqS1TdI8HDmCEvbHgi4kr1RKbGwyeJb2fSG+HAIgLej1o5XNwP0XLUXuDEM7m3Ikhtnkkj90pAjNNGbUj0Q="}]},"_npmUser":{"name":"caleblawson","email":"caleb.lawson@dynapt.com","actor":{"name":"caleblawson","email":"caleb.lawson@dynapt.com","type":"user"}},"directories":{},"maintainers":[{"name":"caleblawson","email":"caleb.lawson@dynapt.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/voice-azure_0.10.3_1750619845956_0.9593678604434619"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-22T19:17:25.873Z","0.10.3":"2025-06-22T19:17:26.142Z","modified":"2025-06-22T19:17:26.446Z"},"maintainers":[{"name":"caleblawson","email":"caleb.lawson@dynapt.com"}],"description":"Mastra Azure speech integration","license":"Elastic-2.0","readme":"# @mastra/voice-azure\r\n\r\nAzure Voice integration for Mastra, providing both Text-to-Speech (TTS) and Speech-to-Text (STT) capabilities using Azure's Cognitive Services Speech SDK.\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @mastra/voice-azure\r\n```\r\n\r\n## Configuration\r\n\r\nThe module requires Azure Speech Services credentials that can be provided through environment variables or directly in the configuration:\r\n\r\n```bash\r\nAZURE_API_KEY=your_speech_service_key\r\nAZURE_REGION=your_azure_region\r\n```\r\n\r\n## Usage\r\n\r\n```typescript\r\nimport { AzureVoice } from '@mastra/voice-azure';\r\n\r\n// Create voice with both speech and listening capabilities\r\nconst voice = new AzureVoice({\r\n  speechModel: {\r\n    apiKey: 'your-api-key', // Optional, can use AZURE_API_KEY env var\r\n    region: 'your-region', // Optional, can use AZURE_REGION env var\r\n    voiceName: 'en-US-AriaNeural', // Optional, default voice\r\n  },\r\n  listeningModel: {\r\n    apiKey: 'your-api-key', // Optional, can use AZURE_API_KEY env var\r\n    region: 'your-region', // Optional, can use AZURE_REGION env var\r\n    language: 'en-US', // Optional, recognition language\r\n  },\r\n});\r\n\r\n// List available voices\r\nconst voices = await voice.getSpeakers();\r\n\r\n// Generate speech\r\nconst audioStream = await voice.speak('Hello from Mastra!', {\r\n  speaker: 'en-US-JennyNeural', // Optional: override default voice\r\n});\r\n\r\n// Convert speech to text\r\nconst text = await voice.listen(audioStream);\r\n```\r\n\r\n## Features\r\n\r\n- High-quality neural Text-to-Speech synthesis\r\n- Accurate Speech-to-Text recognition\r\n- 200+ neural voices across multiple languages\r\n- SSML support\r\n- Real-time audio streaming\r\n- Multiple audio format support\r\n\r\n## Voice Options\r\n\r\nAzure provides numerous neural voices across different languages. Here are some popular English voices:\r\n\r\n- en-US-JennyNeural (Female)\r\n- en-US-GuyNeural (Male)\r\n- en-US-AriaNeural (Female)\r\n- en-US-DavisNeural (Male)\r\n- en-GB-SoniaNeural (Female)\r\n- en-GB-RyanNeural (Male)\r\n- en-AU-NatashaNeural (Female)\r\n- en-AU-WilliamNeural (Male)\r\n\r\nEach voice ID follows the format: `{language}-{region}-{name}Neural`\r\n\r\nFor a complete list of supported voices, you can:\r\n\r\n1. Call the `getSpeakers()` method\r\n2. View the [Azure Neural TTS documentation](https://learn.microsoft.com/en-us/azure/cognitive-services/speech-service/language-support?tabs=tts)\r\n","readmeFilename":"README.md","_rev":"1-3083ca5ac71189444b393d5d934bab05"}