일레븐랩스
Mastra의 ElevenLabs 음성 구현은 ElevenLabs API를 사용하여 고품질 TTS(텍스트 음성 변환) 및 STT(음성 텍스트 변환) 기능을 제공합니다.
사용예사용예에 대한 직접 링크
import { ElevenLabsVoice } from '@mastra/voice-elevenlabs'
// Initialize with default configuration (uses ELEVENLABS_API_KEY environment variable)
const voice = new ElevenLabsVoice()
// Initialize with custom configuration
const voice = new ElevenLabsVoice({
speechModel: {
name: 'eleven_multilingual_v2',
apiKey: 'your-api-key',
},
speaker: 'custom-speaker-id',
})
// Text-to-Speech
const audioStream = await voice.speak('Hello, world!')
// Get available speakers
const speakers = await voice.getSpeakers()
생성자 매개변수생성자 매개변수에 대한 직접 링크
speechModel?:
ElevenLabsVoiceConfig
= { name: 'eleven_multilingual_v2' }
Configuration for text-to-speech functionality.
ElevenLabsVoiceConfig
name?:
ElevenLabsModel
The ElevenLabs model to use
apiKey?:
string
ElevenLabs API key. Falls back to ELEVENLABS_API_KEY environment variable
speaker?:
string
= '9BWtsMINqrJLrRacOk9x' (Aria voice)
ID of the speaker to use for text-to-speech
행동 양식행동 양식에 대한 직접 링크
speak()speak에 대한 직접 링크
구성된 음성 Model 및 음성을 사용하여 텍스트를 음성으로 변환합니다.
input:
string | NodeJS.ReadableStream
Text to convert to speech. If a stream is provided, it will be converted to text first.
options?:
object
Additional options for speech synthesis
object
speaker?:
string
Override the default speaker ID for this request
보고:Promise<NodeJS.ReadableStream>
getSpeakers()getspeakers에 대한 직접 링크
각 노드에 다음이 포함된 사용 가능한 음성 옵션의 배열을 반환합니다.
voiceId:
string
Unique identifier for the voice
name:
string
Display name of the voice
language:
string
Language code for the voice
gender:
string
Gender of the voice
listen()listen에 대한 직접 링크
ElevenLabs Speech-to-Text API를 사용하여 오디오 입력을 텍스트로 변환합니다.
input:
NodeJS.ReadableStream
A readable stream containing the audio data to transcribe
options?:
object
Configuration options for the transcription
옵션 개체는 다음 속성을 지원합니다.
language_code?:
string
ISO language code (e.g., 'en', 'fr', 'es')
tag_audio_events?:
boolean
Whether to tag audio events like [MUSIC], [LAUGHTER], etc.
num_speakers?:
number
Number of speakers to detect in the audio
filetype?:
string
Audio file format (e.g., 'mp3', 'wav', 'ogg')
timeoutInSeconds?:
number
Request timeout in seconds
maxRetries?:
number
Maximum number of retry attempts
abortSignal?:
AbortSignal
Signal to abort the request
보고:Promise<string> - 변환된 텍스트로 이행되는 Promise
중요 사항중요 사항에 대한 직접 링크
- ElevenLabs API 키가 필요합니다. 다음을 통해 설정하세요.
ELEVENLABS_API_KEY환경 변수를 설정하거나 생성자에 전달합니다. - 기본 스피커는 Aria(ID: '9BWtsMINqrJLrRacOk9x')로 설정되어 있습니다.
- ElevenLabs에서는 음성-텍스트 기능을 지원하지 않습니다.
- 사용 가능한 스피커는 다음을 사용하여 검색할 수 있습니다.
getSpeakers()메서드는 언어와 성별을 포함하여 각 음성에 대한 상세 정보를 반환합니다.