> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# अपना ट्रांसक्रिप्ट इस्तेमाल करें

> **Note**
>
> **कैसे करें गाइड** · मानता है कि आप डबिंग प्रोजेक्ट बनाने से परिचित हैं, जैसा कि
> [डबिंग क्विकस्टार्ट](/docs/hi/eleven-api/guides/cookbooks/dubbing) में दिखाया गया है।

> **Warning**
>
> अपना ट्रांसक्रिप्ट और अनुवाद देना केवल एंटरप्राइज़ वर्कस्पेस के लिए उपलब्ध है। एक्सेस के लिए
> [सेल्स](https://elevenlabs.io/contact-sales) से संपर्क करें।

डिफ़ॉल्ट रूप से, डबिंग API आपके सोर्स मीडिया को ट्रांसक्राइब करता है और ट्रांसक्रिप्ट का हर टारगेट भाषा में मशीन अनुवाद करता है। अगर आपके पास पहले से सटीक ट्रांसक्रिप्ट है—सबटाइटल, स्क्रिप्ट या पेशेवर रूप से अनुवादित टेक्स्ट—तो आप उसे दे सकते हैं। इस गाइड में ट्रांसक्रिप्ट फ़ाइल फ़ॉर्मैट, ट्रांसक्रिप्ट से प्रोजेक्ट बनाने का तरीका और भाषा जोड़ते समय अपने अनुवाद देने का तरीका बताया गया है।

## ट्रांसक्रिप्ट फ़ाइल फ़ॉर्मैट

ट्रांसक्रिप्ट एक JSON फ़ाइल होती है, जिसमें एक ही टॉप-लेवल `segments` ऐरे होता है। हर सेगमेंट एक कथन है: बोला गया टेक्स्ट, उसका शुरू और खत्म होने का समय और वैकल्पिक रूप से बोलने वाला व्यक्ति।

**`transcript.json`**

```json title="transcript.json"
{
  "segments": [
    {
      "external_id": "line_0",
      "speaker_id": "speaker_0",
      "start_s": 0.0,
      "end_s": 14.5,
      "text": "With my soft and whispery American accent, I'm the ideal choice for creating ASMR content, meditation guides, or adding an intimate feel to your narrative projects."
    }
  ]
}
```

| फ़ील्ड        | ज़रूरी | विवरण                                                                                                                                                                                  |
| ------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `text`        | हां    | सेगमेंट के दौरान बोला गया टेक्स्ट।                                                                                                                                                     |
| `start_s`     | हां    | सेगमेंट का शुरू होने का समय, सेकंड में।                                                                                                                                                |
| `end_s`       | हां    | सेगमेंट का खत्म होने का समय, सेकंड में।                                                                                                                                                |
| `speaker_id`  | नहीं   | एक ही स्पीकर द्वारा बोले गए सेगमेंट को समूहित करने वाला आइडेंटिफ़ायर, ताकि हर स्पीकर को एक जैसी वॉइस में डब किया जाए। जिन सेगमेंट में यह नहीं है, वे एक डिफ़ॉल्ट स्पीकर शेयर करते हैं। |
| `external_id` | नहीं   | सेगमेंट के लिए आपका अपना आइडेंटिफ़ायर, अधिकतम 128 कैरेक्टर का और ट्रांसक्रिप्ट में यूनिक। अनुवादों की कुंजी के रूप में इस्तेमाल होता है और हर ट्रांसक्रिप्ट रीड पर वापस मिलता है।      |
| `translation` | नहीं   | सेगमेंट का अनुवादित टेक्स्ट, जिसका उपयोग `target_language` के ज़रिए बनी भाषा टारगेट को सीड करने के लिए होता है। अगर किसी एक सेगमेंट में यह है, तो सभी में होना चाहिए।                  |

### सेगमेंट नियम

प्रोजेक्ट बनाते समय ट्रांसक्रिप्ट को वैलिडेट किया जाता है:

* सेगमेंट `start_s` के क्रम में होने चाहिए।
* एक सेगमेंट की अवधि 0.1 से 25 सेकंड के बीच होनी चाहिए और `end_s`, `start_s` से बड़ा होना चाहिए।
* एक ही `speaker_id` वाले सेगमेंट ओवरलैप नहीं होने चाहिए, हालांकि वे एंडपॉइंट पर मिल सकते हैं। अलग-अलग स्पीकर के सेगमेंट एक साथ होने वाली स्पीच दिखाने के लिए ओवरलैप हो सकते हैं।
* ट्रांसक्रिप्ट में अधिकतम 20,000 सेगमेंट हो सकते हैं और फ़ाइल अधिकतम 4 MiB की हो सकती है।

लंबे सेगमेंट के बजाय छोटे सेगमेंट चुनें: जहां एक सेकंड या उससे लंबा विराम हो, वहां वाक्य को तोड़ें। सेगमेंट सीमाएं तय करती हैं कि डब किया गया ऑडियो सोर्स के साथ कैसे टाइम किया जाएगा, इसलिए सटीक और प्राकृतिक ब्रेक वाला ट्रांसक्रिप्ट बेहतर सिंक्रनाइज़्ड डब बनाता है।

## अपने ट्रांसक्रिप्ट से प्रोजेक्ट बनाएं

प्रोजेक्ट बनाते समय ट्रांसक्रिप्ट फ़ाइल पास करें। ट्रांसक्रिप्ट देने पर `source_language` ज़रूरी है, क्योंकि सोर्स मीडिया अपने-आप ट्रांसक्राइब नहीं होता। भाषाएं BCP-47 टैग के रूप में दी जाती हैं, उदाहरण के लिए `es` या `fr-CA`। स्वीकार किए गए सभी मानों के लिए [समर्थित भाषाएं और बोलियां](/docs/hi/overview/capabilities/dubbing#supported-languages) देखें।

```python
import os
from dotenv import load_dotenv
from elevenlabs.client import ElevenLabs

load_dotenv()

elevenlabs = ElevenLabs(api_key=os.getenv("ELEVENLABS_API_KEY"))

with open("transcript.json", "rb") as transcript:
    project = elevenlabs.dubbing.project.create(
        source_url="https://storage.googleapis.com/eleven-public-cdn/audio/marketing/nicole.mp3",
        source_language="en",
        transcript=transcript,
    )

print(project.project_id)
```

```typescript
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
import "dotenv/config";
import { createReadStream } from "fs";

const elevenlabs = new ElevenLabsClient();

const project = await elevenlabs.dubbing.project.create({
  sourceUrl: "https://storage.googleapis.com/eleven-public-cdn/audio/marketing/nicole.mp3",
  sourceLanguage: "en",
  transcript: createReadStream("transcript.json"),
});

console.log(project.projectId);
```

प्रोजेक्ट को डब किए जाने से पहले भी सोर्स मीडिया इन्जेस्ट करना होता है, इसलिए [क्विकस्टार्ट](/docs/hi/eleven-api/guides/cookbooks/dubbing) में दिखाए अनुसार, उसका स्टेटस `ready` होने तक पोल करें। आपके सेगमेंट जैसे हैं वैसे ही इस्तेमाल होते हैं; कोई ऑटोमैटिक ट्रांसक्रिप्शन नहीं चलता।

## अपने अनुवाद दें

भाषा टारगेट जोड़ते समय, मशीन अनुवाद के बजाय अपने अनुवाद इस्तेमाल करने के लिए `translations` मैप पास करें। मैप में हर सोर्स सेगमेंट के `external_id` को कुंजी बनाया जाता है, या अगर आपने वह नहीं दिया है तो उसके इंटरनल सेगमेंट `id` को। इसमें हर सोर्स सेगमेंट ठीक एक बार शामिल होना चाहिए।

```python
project_id = "proj_1601kwkyxp0hfzvtmyxwqxx6mcy3"

language = elevenlabs.dubbing.project.language.create(
    project_id,
    target_language="fr",
    translations={
        "line_0": "Avec mon accent américain doux et murmuré, je suis le choix idéal pour créer du contenu ASMR, des guides de méditation, ou pour apporter une touche d'intimité à vos projets narratifs.",
    },
)
```

```typescript
const projectId = "proj_1601kwkyxp0hfzvtmyxwqxx6mcy3";

const language = await elevenlabs.dubbing.project.language.create(projectId, {
  targetLanguage: "fr",
  translations: {
    line_0:
      "Avec mon accent américain doux et murmuré, je suis le choix idéal pour créer du contenu ASMR, des guides de méditation, ou pour apporter une touche d'intimité à vos projets narratifs.",
  },
});
```

हर भाषा टारगेट के लिए एक create कॉल होता है, इसलिए जिस भी भाषा में आप डब करना चाहते हैं, उसके लिए यह रिक्वेस्ट दोहराएं। `translations` मैप में अधिकतम 20,000 एंट्री हो सकती हैं और टेक्स्ट का कुल आकार अधिकतम 4 MiB हो सकता है।

अगर आपके सेगमेंट में `external_id` नहीं है, तो हर सेगमेंट का इंटरनल `id` पाने के लिए सोर्स ट्रांसक्रिप्ट पढ़ें और उन्हें कुंजी के रूप में इस्तेमाल करें:

```python
transcript = elevenlabs.dubbing.project.transcript.get(project_id)
for segment in transcript.segments:
    print(segment.id, segment.text)
```

```typescript
const transcript = await elevenlabs.dubbing.project.transcript.get(projectId);
for (const segment of transcript.segments) {
  console.log(segment.id, segment.text);
}
```

### प्रोजेक्ट बनाते समय अनुवाद सीड करें

एक टारगेट भाषा के लिए, आप अलग `translations` मैप देने के बजाय ट्रांसक्रिप्ट फ़ाइल में हर सेगमेंट पर `translation` शामिल कर सकते हैं और प्रोजेक्ट बनाते समय `target_language` पास कर सकते हैं। भाषा टारगेट आपके अनुवादों के साथ क्यू में बनाया जाता है और प्रोजेक्ट तैयार होने पर जनरेट होना शुरू करता है।

**`transcript.json`**

```json title="transcript.json"
{
  "segments": [
    {
      "external_id": "line_0",
      "speaker_id": "speaker_0",
      "start_s": 0.0,
      "end_s": 14.5,
      "text": "With my soft and whispery American accent, I'm the ideal choice for creating ASMR content, meditation guides, or adding an intimate feel to your narrative projects.",
      "translation": "Avec mon accent américain doux et murmuré, je suis le choix idéal pour créer du contenu ASMR, des guides de méditation, ou pour apporter une touche d'intimité à vos projets narratifs."
    }
  ]
}
```

## क्वालिटी से जुड़ी बातें

डब की क्वालिटी उतनी ही अच्छी होती है, जितने अच्छे ट्रांसक्रिप्ट और अनुवाद से वह बना हो। सेगमेंट की टाइमिंग और टेक्स्ट का इस्तेमाल डब की गई परफ़ॉर्मेंस को टाइम करने और वॉइस देने के लिए सीधे होता है, इसलिए गलत टाइमिंग या टेक्स्ट आउटपुट को खराब कर देते हैं। अनुवादों को उनके सेगमेंट की समय-सीमा में फिट करने के लिए रेंडर किया जाता है: मूल से बहुत लंबा या छोटा अनुवाद डब की गई स्पीच की गति को प्रभावित करता है, इसलिए बोले जाने पर लगभग बराबर लंबाई के अनुवाद चुनें।

## अगले चरण

#### [डब को सुधारें और फिर से जनरेट करें](/docs/hi/eleven-api/guides/how-to/dubbing/refine-and-regenerate)

सोर्स ट्रांसक्रिप्ट और अनुवाद संपादित करें, फिर डब को फिर से जनरेट करें

#### [कई भाषाओं में डब करें](/docs/hi/eleven-api/guides/how-to/dubbing/multiple-languages)

एक प्रोजेक्ट में कई टारगेट भाषाएं जोड़ें

#### [API रेफरेंस](/docs/hi/api-reference/dubbing/create-project)

डबिंग API के सभी पैरामीटर और रिस्पॉन्स फ़ॉर्मैट देखें