डबिंग प्रोजेक्ट मैनेज करें

डबिंग प्रोजेक्ट और उनके भाषा टारगेट की सूची देखें, उन्हें प्राप्त करें और हटाएं।

कैसे करें गाइड · इसमें माना गया है कि आप डबिंग प्रोजेक्ट बनाना जानते हैं, जैसा कि डबिंग क्विकस्टार्ट में दिखाया गया है।

इस गाइड में मौजूदा प्रोजेक्ट्स को मैनेज करने के लिए ज़रूरी काम शामिल हैं: पेजिनेशन के साथ उनकी सूची देखना, किसी एक प्रोजेक्ट या भाषा को पाना, एक्सपायर हो चुका डाउनलोड URL रीफ़्रेश करना, और जिन प्रोजेक्ट्स व भाषाओं की अब ज़रूरत नहीं है उन्हें हटाना।

प्रोजेक्ट्स की सूची देखें

लिस्ट एंडपॉइंट cursor-पेजिनेटेड है। page_size (अधिकतम 100) और वैकल्पिक status फ़िल्टर पास करें, फिर अगला पेज पाने के लिए रिस्पॉन्स के next_cursor को cursor के रूप में वापस पास करें। next_cursor का null होना बताता है कि आप आखिर तक पहुंच गए हैं।

import os
from dotenv import load_dotenv
from elevenlabs.client import ElevenLabs
load_dotenv()
elevenlabs = ElevenLabs(api_key=os.getenv("ELEVENLABS_API_KEY"))
# Fetch every ready project, one page at a time
cursor = None
while True:
page = elevenlabs.dubbing.project.list(
page_size=50,
status="ready",
cursor=cursor,
)
for project in page.projects:
print(project.project_id, project.reference)
if page.next_cursor is None:
break
cursor = page.next_cursor

प्रोजेक्ट या भाषा पाएं

किसी एक प्रोजेक्ट का स्टेटस और मीडिया मेटाडेटा पढ़ने के लिए उसे पाएं, या किसी एक भाषा का स्टेटस और आउटपुट पढ़ने के लिए उसे पाएं।

project_id = "proj_1601kwkyxp0hfzvtmyxwqxx6mcy3"
language_id = "lang_1001kwkyxp0je6ktn4knsfrasx5s"
project = elevenlabs.dubbing.project.get(project_id)
print(project.status, project.language_ids)
language = elevenlabs.dubbing.project.language.get(project_id, language_id)
print(language.status, language.target_language)

एक्सपायर हो चुका डाउनलोड URL रीफ़्रेश करें

outputs.lossless_audio में मौजूद साइन किया हुआ URL करीब एक घंटे तक मान्य रहता है। यह स्थायी लिंक नहीं है, इसलिए URL के बजाय डाउनलोड की गई फ़ाइल स्टोर करें। बाद में पूरा हो चुका डब फिर से डाउनलोड करने के लिए, नया URL पाने हेतु भाषा को पाएं।

import requests
language = elevenlabs.dubbing.project.language.get(project_id, language_id)
audio = requests.get(language.outputs.lossless_audio)
with open("dubbed.wav", "wb") as f:
f.write(audio.content)

प्रोजेक्ट्स और भाषाएं हटाएं

प्रोजेक्ट बनाए रखते हुए एक डब हटाने के लिए किसी एक लक्ष्य भाषा को हटाएं, या प्रोजेक्ट और उसकी सभी भाषाएं हटाने के लिए प्रोजेक्ट हटाएं। हटाना स्थायी है।

# Remove a single language target
elevenlabs.dubbing.project.language.delete(project_id, language_id)
# Remove the project and all of its languages
elevenlabs.dubbing.project.delete(project_id)