विषय-सूची
वाक् संश्लेषण (TTS) मार्गदर्शिका
वाक् संश्लेषण (TTS) मार्गदर्शिका
POST /v1/audio/speech OpenAI-compatible है: JSON भेजें और ऑडियो फ़ाइल बाइनरी रूप में पाएँ। ElevenLabs परिवार में elevenlabs/eleven-v4, eleven-v4-turbo, eleven-v3, eleven-v3-conversational, eleven-multilingual-v2, eleven-flash-v2.5, eleven-flash-v2, eleven-turbo-v2.5, eleven-turbo-v2 शामिल हैं। ताज़ा सूची GET /v1/models?output_modalities=speech पर देखें। GET /v1/models डिफ़ॉल्ट रूप से केवल टेक्स्ट मॉडल लौटाता है, इसलिए सूची देखने के लिए ?output_modalities=speech (या all) जोड़ें।
/v1/audio/speechपैरामीटर
| पैरामीटर | प्रकार | आवश्यक | विवरण |
|---|---|---|---|
| model | string | हाँ | वाक् मॉडल ID, जैसे elevenlabs/eleven-flash-v2.5। |
| input | string | हाँ | संश्लेषण के लिए पाठ: प्रति अनुरोध अधिकतम 4,096 वर्ण (elevenlabs/eleven-v4 और eleven-v4-turbo के लिए 10,000)। लंबे पाठ को कई अनुरोधों में बाँटें। |
| voice | string | हाँ | इस्तेमाल की जाने वाली आवाज़; उसका प्रारूप मॉडल पर निर्भर है। नीचे आवाज़ नियम देखें। |
| response_format | string | नहीं | mp3 (डिफ़ॉल्ट) या pcm। opus, aac, flac और wav को API स्वीकार करता है, पर ElevenLabs मॉडल अभी इन्हें 400 से अस्वीकार करते हैं। |
| speed | number | नहीं | बोलने की गति 0.25 से 4.0 तक। हर मॉडल इसे लागू नहीं करता। |
| instructions | string | नहीं | आवाज़ की शैली के निर्देश। हर मॉडल इन्हें लागू नहीं करता। |
| stability | number | नहीं | आवाज़ की स्थिरता, 0–1 (डिफ़ॉल्ट 0.5)। कम मान अधिक भावपूर्ण, अधिक मान अधिक समतल। यह तब लागू होता है जब elevenlabs/* मॉडल का अनुरोध हमारे सीधे वॉइस रूट से पूरा हो; प्रतिक्रिया हेडर X-Voice-Settings applied या ignored बताता है। |
| similarity_boost | number | नहीं | मूल आवाज़ से समानता, 0–1 (डिफ़ॉल्ट 0.75)। Eleven v3 में उपयोग नहीं होता। |
| style | number | नहीं | शैली पर ज़ोर, 0–1 (डिफ़ॉल्ट 0)। 0 से ऊपर होने पर विलंब बढ़ता है। Eleven v4 में उपयोग नहीं होता। |
| use_speaker_boost | boolean | नहीं | मूल वक्ता से समानता बढ़ाता है (डिफ़ॉल्ट true); थोड़ा विलंब बढ़ता है। |
| clone_strength | number | नहीं | क्लोन की तीव्रता, 0–1 (अधिकांश आवाज़ों के लिए 0 अनुशंसित)। केवल Eleven v4 के लिए प्रशिक्षित आपकी अपनी प्रोफ़ेशनल क्लोन आवाज़ों (voice_…) के लिए। |
| language_code | string | नहीं | बोली जाने वाली भाषा तय करने के लिए दो अक्षरों का छोटे अक्षरों वाला भाषा कोड (ISO 639-1), जैसे ar, ja, en। multilingual-v2 मॉडल में उपयोग नहीं होता। |
| audio_effects | object | नहीं | वैकल्पिक ऑडियो-इफ़ेक्ट ऑब्जेक्ट: filter_preset_id (जैसे phone, old_radio), environment_id (रीवर्ब स्थान, जैसे small_room, hall), background_noise_id (जैसे cafe), distance (0–1), send_level (रीवर्ब मात्रा, 0–1) और pan (−1…1)। ID में छोटे अक्षर, अंक और अंडरस्कोर होते हैं; कोई अतिरिक्त शुल्क नहीं। रीवर्ब या शून्य से भिन्न pan स्टीरियो आउटपुट देता है और pcm आउटपुट के साथ नहीं चलता। |
ऊपर की सातों आवाज़ सेटिंग वैकल्पिक हैं; न भेजने पर कुछ नहीं बदलता। सीमा से बाहर का मान 400 लौटाता है और न भेजा जाता है, न उसका शुल्क लगता है। प्रतिक्रिया हेडर X-Voice-Settings बताता है कि आपकी सेटिंग उपयोग हुई या नहीं: applied = उपयोग हुई; ignored = बैकअप रूट ने उत्तर दिया, इसलिए सेटिंग उपयोग नहीं हुई (ऑडियो फिर भी बनता है); हेडर नहीं = आपने कोई आवाज़ सेटिंग नहीं भेजी। उदाहरण: stability 0 अधिक भावपूर्ण पढ़ता है, 1 अधिक समतल।
आवाज़ के नियम
ElevenLabs मॉडल (elevenlabs/…) इन आवाज़ नामों में से एक लेते हैं (अक्षर-भेद नहीं): george, sarah, adam, alice, bella, bill, brian, callum, charlie, chris, daniel, eric, harry, jessica, laura, liam, lily, matilda, river, roger, will। ElevenLabs मॉडल के लिए voice छोड़ा जा सकता है (डिफ़ॉल्ट george)। अन्य मान पर 400 invalid_voice मिलता है। आपकी अपनी कस्टम आवाज़ (voice_…) का वर्णन नीचे «कस्टम आवाज़ें» अनुभाग में है।
alloy, echo या nova जैसे OpenAI-style आवाज़ नाम केवल उन मॉडलों पर काम करते हैं जो उन्हें सूचीबद्ध करते हैं। मॉडल पृष्ठ देखें।
कस्टम आवाज़ें (क्लोनिंग) चरणबद्ध रूप से खोली जा रही हैं: नीचे «कस्टम आवाज़ें» अनुभाग (POST /v1/voices) देखें। आपके खाते में चालू होने तक ऊपर के 21 प्रीसेट नामों या किसी सार्वजनिक voice ID का उपयोग करें।
अंतर्निहित आवाज़ें
voice में नीचे दिए गए नामों में से एक (छोटे अक्षरों में) दें। हर आवाज़ का हमारा अपना छोटा पूर्वावलोकन क्लिप है, और GET /api/v1/audio/voices पूरी सूची (लिंग, आयु वर्ग, उच्चारण, शैली और पूर्वावलोकन URL) देता है।
?lang= (en, zh-TW, zh-CN; डिफ़ॉल्ट Accept-Language) केवल description की भाषा तय करता है। पूर्वावलोकन URL नहीं बदलते: preview_urls.en (preview_url के समान) अंग्रेज़ी क्लिप है और preview_urls.zh (preview_url_zh के समान) चीनी क्लिप।
| आवाज़ | विवरण | पूर्वावलोकन |
|---|---|---|
| george | Male, middle-aged, British accent. Mature and steady, suited to narration and storytelling. | |
| sarah | Female, young adult, American accent. Professional and clear, suited to broadcast-style reading. | |
| adam | Male, middle-aged, American accent. Everyday and approachable, suited to short social videos. | |
| alice | Female, middle-aged, British accent. Professional and informative, suited to explainers and teaching. | |
| bella | Female, middle-aged, American accent. Professional and informative, suited to explainers and teaching. | |
| bill | Male, senior, American accent. Crisp and direct, suited to advertising voice-overs. | |
| brian | Male, middle-aged, American accent. Polished and refined, suited to social and brand content. | |
| callum | Male, middle-aged, American accent. Expressive, suited to characters and animation. | |
| charlie | Male, young adult, Australian accent. Energetic and lively, suited to conversation. | |
| chris | Male, middle-aged, American accent. Relaxed and casual, suited to conversation. | |
| daniel | Male, middle-aged, British accent. Formal and measured, suited to news-style and educational reading. | |
| eric | Male, middle-aged, American accent. Polished and warm, suited to conversation. | |
| harry | Male, young adult, American accent. Rough and gritty, suited to character voices. | |
| jessica | Female, young adult, American accent. Bright and cute, suited to conversation. | |
| laura | Female, young adult, American accent. Playful with attitude, suited to social content. | |
| liam | Male, young adult, American accent. Confident and upbeat, suited to social content. | |
| lily | Female, middle-aged, British accent. Confident and clear, suited to explainers and teaching. | |
| matilda | Female, middle-aged, American accent. Upbeat and friendly, suited to explainers and teaching. | |
| river | Neutral voice, middle-aged, American accent. Calm and even, suited to conversation. | |
| roger | Male, middle-aged, American accent. Polished and confident, suited to conversation. | |
| will | Male, young adult, American accent. Laid-back and easygoing, suited to conversation. |
भावना और क्रिया टैग (audio tags)
टैग को input के अंदर सीधे चौकोर कोष्ठक में लिखें, जैसे [laughs], [whispers], [excited], [sighs], [crying], [curious] या [softly]। टैग जैसे लिखे हैं वैसे ही मॉडल को भेजे जाते हैं और आगे के शब्दों को बोलने का ढंग तय करते हैं। पाठ किसी भी भाषा में हो, टैग अंग्रेज़ी में ही रखें।
curl https://api.bazaarlink.ai/v1/audio/speech \
-H "Authorization: Bearer $BAZAARLINK_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"elevenlabs/eleven-v3","input":"[laughs] That was actually funny. [whispers] Do not tell anyone.","voice":"george","response_format":"mp3"}' \
--output audio-tags.mp3elevenlabs/eleven-v3 और elevenlabs/eleven-v4 परिवार इन्हें समर्थन देते हैं। अन्य स्पीच मॉडल टैग नहीं समझते और कोष्ठक के भीतर का पाठ पढ़ सकते हैं, इसलिए पहले एक छोटा वाक्य आज़माएँ।
टैग भी input के अक्षरों में गिने जाते हैं और बाकी पाठ की तरह ही बिल होते हैं।
आउटपुट प्रारूप
response_format छोड़ने पर डिफ़ॉल्ट mp3 (Content-Type audio/mpeg) है; pcm (audio/pcm, कच्चा 16-bit PCM) भी काम करता है। API opus, aac, flac और wav स्वीकार करता है, पर ElevenLabs मॉडल अभी इन्हें 400 से अस्वीकार करते हैं। फ़ाइल को प्रतिक्रिया के Content-Type हेडर के अनुसार सहेजें।
मूल्य निर्धारण
वाक् संश्लेषण का शुल्क इनपुट वर्णों के आधार पर लगता है। प्रति वर्ण दर /models के मॉडल पृष्ठ और GET /v1/models में pricing.character पर मिलती है। मॉडल पृष्ठ इसे दस लाख वर्णों के आधार पर दिखाता है।
उदाहरण
curl https://api.bazaarlink.ai/v1/audio/speech \
-H "Authorization: Bearer $BAZAARLINK_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"elevenlabs/eleven-flash-v2.5","input":"Hello from BazaarLink.","voice":"george","response_format":"mp3"}' \
--output speech.mp3सामान्य त्रुटियाँ
| स्थिति | कारण और समाधान |
|---|---|
| 400 | अमान्य अनुरोध: model, input या voice नहीं है; input 4,096 वर्णों से अधिक; speed 0.25–4.0 से बाहर; असमर्थित response_format; Unknown voice; unknown_model (/models पर ID जाँचें)। |
| 401 | API कुंजी नहीं है या अमान्य है। अपनी BazaarLink कुंजी Authorization: Bearer के साथ भेजें। |
| 402 | शेष राशि पर्याप्त नहीं है। रिचार्ज करके फिर प्रयास करें। |
| 403 | प्रबंधन कुंजी मॉडल नहीं चला सकती या खाता निलंबित है। सामान्य API कुंजी उपयोग करें। |
| 429 | दर सीमा पूरी हो गई है। Retry-After के अनुसार प्रतीक्षा करके फिर प्रयास करें। |
| 502 | मॉडल सेवा अस्थायी रूप से अनुपलब्ध है या ऑडियो स्थानांतरण बाधित हुआ। फिर प्रयास करें; विफल अनुरोध का शुल्क नहीं लगता। |
वाक् संश्लेषण
/v1/models?output_modalities=speech की मॉडल आईडी से पाठ को ऑडियो में बदलें। मॉडल पृष्ठ पर दी गई प्रति दस लाख अक्षर की दर से बिल बनता है। पूरा ऑडियो बफ़र होने के बाद बाइनरी डेटा लौटाया जाता है; चरणबद्ध स्ट्रीमिंग समर्थित नहीं है। provider, transforms, route, service_tier और preset जैसे रूटिंग नियंत्रण फ़ील्ड अनदेखे किए जाते हैं।
/v1/audio/speech/v1/chat/completions/v1/chat/completions में audio या input_audio और ऑडियो समर्थित मॉडल चुनें। कॉन्फ़िगर की गई इनपुट और आउटपुट टोकन दरें रिपोर्ट किए गए सभी पाठ तथा ऑडियो टोकन पर समान रूप से लागू होती हैं।
curl https://api.bazaarlink.ai/v1/chat/completions \
-H "$BAZAARLINK_AUTH_HEADER" \
-H "Content-Type: application/json" \
-d '{"model":"<audio-chat-model-id>","messages":[{"role":"user","content":"Say hi."}],"stream":true,"modalities":["text","audio"],"audio":{"voice":"alloy","format":"pcm16"},"max_tokens":32}'