מדריך בנייה · מפתחי אפליקציות

איך לבנות צינור כתוביות רב-לשוני לסרטוני YouTube

רוב הצופים בסרטון פופולרי לא מדברים את השפה המקורית שלו. צינור כתוביות שמתרגם תמלולים ומייצא קובצי כתוביות מתוזמנים עוזר ליוצרים ולפלטפורמות קורסים להגיע אליהם, בלי לשכור מתרגמים לכל העלאה.

למי זה מתאים
כלי לוקליזציה, יוצרים בינלאומיים, פלטפורמות למידה מקוונת
זמן פיתוח
סוף שבוע
נקודות קצה של ה-API
/transcripts/{video_id}/languages/transcripts/{video_id}/translate

הבעיה שזה פותר

תרגום כתוביות מקצועי הוא איטי ומתומחר לפי דקה, ולכן רוב היוצרים מפרסמים בשפה אחת בלבד. התרגום האוטומטי של YouTube לא עקבי, ואי אפשר לייצא או לערוך אותו. צוותים צריכים קובצי כתוביות מתוזמנים וניתנים לעריכה בכמה שפות, שהם יכולים לבדוק ולהעלות בעצמם.

מה לכלול בגרסה הראשונה

  • זיהוי שפות כתוביות שכבר קיימות
  • תרגום להרבה שפות יעד בבת אחת
  • ייצוא SRT ו-VTT עם שמירה על התזמונים המקוריים
  • עורך זה לצד זה לבדיקת התרגומים
  • מילון מונחים לשמות מותגים ולמונחים טכניים

איך לבנות את זה, שלב אחר שלב

  1. 01

    בדקו שפות קיימות

    קראו ל-/transcripts/{video_id}/languages כדי לראות אילו רצועות כתוביות כבר קיימות, כך שלא תשלמו על תרגום של מה שכבר זמין.

  2. 02

    שלפו את תמלול המקור

    קראו ל-/transcribe עם format.timestamp כדי לקבל מקטעים עם זמני התחלה וסיום.

  3. 03

    תרגמו

    קראו ל-/transcripts/{video_id}/translate לכל שפת יעד. תזמוני המקטעים נשארים מיושרים עם המקור.

  4. 04

    ייצאו קובצי כתוביות

    כתבו כל מקטע כבלוק SRT ממוספר או כרמז VTT לפי זמני ההתחלה והסיום שלו, ואז אפשרו למשתמשים להוריד אותם או להעלות אותם ל-YouTube.

קוד התחלתי

הרעיון הזה מבוסס על התבנית "מתכון 1: סרטון אחד נכנס, פלט מובנה יוצא". החליפו בערוצים, בפרומפטים ובאחסון שלכם.

import requests

API = "https://www.youtubetranscript.dev/api/v2"
HEADERS = {"Authorization": "Bearer yt_sk_live_YOUR_KEY"}

res = requests.post(f"{API}/transcribe", headers=HEADERS, json={
    "video": "https://www.youtube.com/watch?v=VIDEO_ID",
    "format": {"timestamp": True, "paragraphs": True},
}).json()

transcript = res["data"]["transcript"]
print(transcript["text"][:500])        # plain text for your LLM prompt
for seg in transcript["segments"][:3]:  # timestamps for deep links
    print(seg["start"], seg["text"])

למה כדאי לבנות את זה

תמחרו לפי דקת וידאו לכל שפה, או במסלולי מנוי חודשיים. פלטפורמות למידה מקוונת וסוכנויות שעושות לוקליזציה בהיקפים גדולים הן הלקוחות הטובים ביותר, כי הערך גדל עם כל שפה שמתווספת.

טעויות שכדאי להימנע מהן

  • תרגום שורה אחר שורה בלי הקשר, מה ששובר משפטים שמתפרסים על כמה כתוביות.
  • התעלמות ממהירות הקריאה: טקסט מתורגם יכול להיות ארוך מהמקור, אז בדקו כמה תווים לשנייה.
  • תשלום על תרגום לשפות שכבר יש להן כתוביות שנוצרו על ידי בני אדם.

שאלות על הרעיון הזה

אפשר להוריד כתוביות YouTube מתורגמות כקובץ SRT?

כן. תרגמו את התמלול דרך ה-API, ואז כתבו כל מקטע מתוזמן בפורמט SRT או VTT.

כמה עולה תרגום תמלול?

תרגום עולה בערך קרדיט אחד לכל 2,500 תווים של טקסט התמלול. שליפת כתוביות מקוריות עולה קרדיט אחד לסרטון.

אפשר להשתמש בזה לדיבוב?

כן. התסריט המתורגם והמתוזמן הוא בדיוק הקלט שרוב כלי הקול והדיבוב מבוססי ה-AI צריכים.

התחילו לבנות עוד היום

10 קרדיטים בחינם בכל חודש. לא צריך כרטיס אשראי.

איך לבנות מתרגם כתוביות ל-YouTube (SRT ו-VTT) | YouTubeTranscript.dev