JavaScript SDK
Scribe: JavaScript में रीयल-टाइम स्पीच-टू-टेक्स्ट ट्रांसक्रिप्शन
Scribe और इसकी क्षमताओं के ओवरव्यू के लिए, स्पीच टू टेक्स्ट ओवरव्यू देखें। चरण-दर-चरण उपयोग गाइड के लिए, क्लाइंट-साइड स्ट्रीमिंग देखें।
इंस्टॉलेशन
अपने AI कोडिंग असिस्टेंट से ऑडियो ट्रांसक्राइब करने के लिए ElevenLabs स्पीच-टू-टेक्स्ट स्किल का इस्तेमाल करें:
इस लाइब्रेरी का इस्तेमाल किसी भी JavaScript-आधारित प्रोजेक्ट में किया जा सकता है। अगर आप React इस्तेमाल कर रहे हैं, तो
useScribe हुक पर विचार करें, जो
बिल्ट-इन स्टेट मैनेजमेंट और लाइफसाइकल हैंडलिंग देता है।
उपयोग
यहां एक न्यूनतम काम करने वाला उदाहरण है, जो Scribe से कनेक्ट होता है और ट्रांसक्रिप्शन नतीजे लॉग करता है:
टोकन पाना
Scribe को ऑथेंटिकेशन के लिए सिंगल-यूज़ टोकन चाहिए। अपने सर्वर पर एक API एंडपॉइंट बनाएं:
आपकी ElevenLabs API कुंजी संवेदनशील है। इसे कभी क्लाइंट को न दिखाएं। टोकन हमेशा सर्वर पर जनरेट करें।
कनेक्शन विकल्प
Scribe.connect() माइक्रोफ़ोन विकल्प या मैन्युअल ऑडियो विकल्प स्वीकार करता है। दोनों में बेस विकल्पों का एक सामान्य सेट होता है।
बेस विकल्प
माइक्रोफ़ोन विकल्प
यूज़र के माइक्रोफ़ोन से सीधे ऑडियो स्ट्रीम करने के लिए microphone ऑब्जेक्ट पास करें। कनेक्शन getUserMedia और ऑडियो एन्कोडिंग को अपने-आप हैंडल करता है।
मैन्युअल ऑडियो विकल्प
connection.send() के ज़रिए मैन्युअली ऑडियो डेटा भेजने के लिए audioFormat और sampleRate पास करें।
AudioFormat enum
माइक्रोफ़ोन मोड
यूज़र के माइक्रोफ़ोन से सीधे ऑडियो स्ट्रीम करें:
मैन्युअल ऑडियो मोड (फ़ाइल ट्रांसक्रिप्शन)
ऑडियो डेटा मैन्युअली भेजकर पहले से रिकॉर्ड की गई ऑडियो फ़ाइलों को ट्रांसक्राइब करें:
RealtimeConnection
Scribe.connect() निम्नलिखित मेथड वाला RealtimeConnection इंस्टेंस लौटाता है।
on(event, listener)
इवेंट लिस्नर रजिस्टर करें। उपलब्ध इवेंट टाइप के लिए इवेंट्स देखें।
off(event, listener)
पहले से रजिस्टर किया गया इवेंट लिस्नर हटाएं।
send(data)
Scribe को ऑडियो डेटा भेजें (सिर्फ़ मैन्युअल ऑडियो मोड में)।
previousText फ़ील्ड सिर्फ़ सेशन के पहले ऑडियो चंक में भेजा जा सकता है। इसे
बाद के चंक्स में भेजने पर एरर आता है।
commit()
मौजूदा ट्रांसक्रिप्शन को मैन्युअली कमिट करें। इसकी ज़रूरत सिर्फ़ CommitStrategy.MANUAL इस्तेमाल करते समय होती है।
close()
WebSocket कनेक्शन बंद करें और रिसोर्स (माइक्रोफ़ोन स्ट्रीम, ऑडियो कॉन्टेक्स्ट) साफ़ करें।
इवेंट्स
connection.on(event, listener) का इस्तेमाल करके इवेंट लिस्नर रजिस्टर करें। सभी इवेंट RealtimeEvents enum पर कॉन्स्टेंट के रूप में उपलब्ध हैं।
ट्रांसक्रिप्शन इवेंट्स
WordsItem टाइप में शब्द-स्तर की टाइमिंग जानकारी होती है:
कनेक्शन इवेंट्स
एरर इवेंट्स
सभी एरर इवेंट्स को { error: string } मिलता है।
कमिट रणनीतियां
ट्रांसक्रिप्शन कब कमिट हों, इसे नियंत्रित करें:
ज़्यादा जानकारी के लिए, ट्रांसक्रिप्ट और कमिट रणनीतियां देखें।
पूरा उदाहरण
यहां VAD-आधारित कमिट रणनीति के साथ माइक्रोफ़ोन ऑडियो ट्रांसक्राइब करने का पूरा उदाहरण है: