סנכרון מדוייק של כתוביות בהתחשב ב-FPS של התוכן - המדריך המלא

מחשבים, חומרה, KODI, NUC, Raspberry pi

מנהלים: מנהלי וידאו, מנהלי HTPC ועיבוד תמונה

hagi
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1213
הצטרף: דצמבר 2005
נתן תודות: 0
קיבל תודות: 1 פעם

סנכרון מדוייק של כתוביות בהתחשב ב-FPS של התוכן - המדריך המלא

לינק להודעה #1 

חברים ,

לפני כיומיים התחלתי לחקור למה כשמשתמשים בתוכנת Subtitle Creator להמרת כתוביות מ-SRT ל-SUB/IDX התרגומים בדרך כלל לא מסנכרנים .
במצבים מסויימים ניתן לסנכרן את הכתוביות ב-STREAMERS השונים באמצעות כמה לחיצות . לפעמים הבעיה כל כך קשה שמוציאים את עצמינו מסנכרנים את הכתוביות לכל אורך הסרט .
בהתחלה חשבתי שאקבל מושג איפה הבעיה על ידי מציאת תשובה לשאלה שפרסמתי כאן - http://www.hometheater.co.il/modules.ph ... ic&t=29584
אבל לא קיבלתי לגבי זה תשובה חד משמעית .

מבלי להאריך יותר מדיי – הבעיה קשורה ישירות בדרך שאנחנו מבצעים את ההמרה . קובץ כתוביות SRT לא מכיל בכלל מידע על מהו ה-FRAME RATE של הסרט , דבר שהוא החשוב ביותר בסנכרון כתוביות .
אז בכל זאת – לאיזה קצב פריימים תוכנת SUBTITLECREATOR ממירה את קובץ הכתוביות SRT כשהופכים אותו ל-SUB/IDX באמצעות התוכנה ? לאחד מן השניים : 25 פריימים או 29.97 פריימים , בהתאם למה שמסומן בתפריט FORMAT/VIDEO FORMAT . במקרה של PAL נקבל SUB/IDX בעל 25 פריימים לשניה ובמקרה שה-NTSC מסומן נקבל 29.97 פריימים לשניה .

הסרטים השונים שמורידים מאינטרנט , במיוחד סרטי ה-HD , יכולים להיות בעלי קצב פריימים שונה מזה של PAL ו-NTSC . קצבי הפריימים הנפוצים ביותר הם : 23.976 , 24 , 25 , 29.97 ו-30 FPS . אז לא פלא שמבלים עם השלט של ה-STREAMER ביד במשך כל הסרט אם הכתוביות שלנו הן מותאמות ל-25FPS כשהסרט הוא בעל 23.976FPS !!!!

אז מה הפתרון ?!?!?!
נקודת ההתחלה שלנו לא נכונה . פורמט ה-SRT הוא הכי נפוץ מבין פורמטים של הכתוביות אבל הוא לא בנוי בצורה כזו שתאפשר שינוי נתון קצב הפריימים בהתאם לדרישות שנו \ של המדיה .
זו הסיבה שהמציאו את פורמט הכתוביות "SUB" שבניגוד ל-"SRT" , האינדקס מתבצע לא לפי זמנים מוחלטים אלא לפי מס.פריימים . הפורמט SUB ו-SUB\IDX הם שני דברים שונים לגמרה .
קיימת תוכנה קטנה בשם SRT2SUB שעושה בדיוק מה שאנחנו מחפשים , כלומר , לוקחת את הכתובית SRT , מלבישה עליה חותמת של הקצב פריימים רצוי ( ולא רק PAL או NTSC כמו במקרה של SUBTITLECREATOR ) . לא ארחיב יותר מדיי על התוכנה הזו כי היא סופר ידידותית חוץ מזה שניתן להוריד אותה כאן : http://www.digital-digest.com/software/ ... id=0&did=1

אז לאחר השימוש בתוכנה יהיה בידינו קובץ SUB בעל אותו קצב פריימים לשניה כמו המדיה שבידינו . את הקובץ SUB הזה נפתח באמצעות תוכנת SUBTITLECREATOR ומשם נבצע את התהליך כרגיל ( מדריכים שלי ושל זיו ניתנים למצוא באמצעות חיפוש ) לקבלת כתובית בפורמט SUB/IDX .
הכתובית הזו תהיה תואמת במדוייק את מספר הפריימים לפניה של המדיה , כך שתהיה התאמה של 100% לאורך כל הסרט .
הערה : כשתטענו את הקובץ SUB באמצעות SUBTITLECREATOR , תתבקשו שוב לציין את מספר הפריימים לשניה של התוכן שעבורו מכינים את הכתובית . לאחר שתציינו את הנתון הזה , תמשיכו בהמרה ל-SUB/IDX כרגיל .

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

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

זה הכל !


תקציר - תהליך מתוקן להפיכת קבצי SRT ל-SUB/IDX מסונכרנים ( עבור אלו שלא מעוניינים בהסבר המפורט המופיע מעלה ) :
******************************************

1.הורד תוכנת SRT2SUB גרסה 1.1 מכאן : http://www.digital-digest.com/software/ ... id=0&did=1 והפעל אותה
2.פתח קובץ SRT , קבע FPS רצוי בהתאם לתוכן שברשותך , בצע CONVERT ושמור קובץ כפורמט SUB .
3.פתח SUBTITLECREATOR וקבע את ה-FPS הרצוי בהתאם למדיה .
4.בצע באמצעות התוכנה SAVE VOBSUB
5.התוצאה תהיה כתובית SUB/IDX מסונכרנת במדוייק ל-FPS של הסרט .
6.העתקת קבצי SUB ו-IDX הנוצרים לספרית התוכן , באותו שם כמו שם התוכן !

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

תהנו ,
HAGI

guy_k
סמל אישי של משתמש
חבר פעיל במיוחד
חבר פעיל במיוחד
הודעות: 899
הצטרף: נובמבר 2005
נתן תודות: 15 פעמים
קיבל תודות: 14 פעמים

לינק להודעה #2 

כל הכבוד על ההשקעה ועל המדריך המפורט,

אני אנסה היום בבית.

גיא
גיא, אני ואתה ודי!

moshik008
סמל אישי של משתמש
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 304
הצטרף: אוגוסט 2006
נתן תודות: 0
קיבל תודות: 10 פעמים

לינק להודעה #3 

מבורך. אני אנסה את זה עוד מעט.

alon24
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1831
הצטרף: מאי 2005
נתן תודות: 102 פעמים
קיבל תודות: 95 פעמים

לינק להודעה #4 

רק שאלה קטנה,

איך אתה יודע מה היה המקור של הSRT כלומר למה הוא מתאים? 25, 23.96, 29.97 ??
בלי זה אי אפשר לעבוד

hagi
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1213
הצטרף: דצמבר 2005
נתן תודות: 0
קיבל תודות: 1 פעם

לינק להודעה #5 

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

<תוכן קובץ ה SRT\SUB נערך על ידי ziv_r: תוכן לא חוקי>

קובץ SRT נראה כך :
***********************
1401:38:35,484 --> 01:38:38,683
AAAAA

01:38:39,083 --> 01:38:40,383
BBBBBB

1476
01:38:40,383 --> 01:38:43,683
CCCCCC

1477
01:38:43,683 --> 01:38:46,682
DDDDDD

1478
01:38:46,683 --> 01:38:49,283
EEEEEE

1479
01:38:49,283 --> 01:38:51,883
FFFFFF

כשהחלק התואם שלו בקובץ SUB לאחר המרה לפי 25FPS נראה כך :
******************************************************************
{147887}{147967} AAAAAA
{147977}{148009} BBBBBB
{148009}{148092} CCCCCC
{148092}{148167} DDDDDD
{148167}{148232} EEEEEE
{148232}{148297} FFFFFF


המספרים שמופיעים בקובץ ה-SRT הם זמנים מוחלטים כשבקובץ SUB המספריים מייצגים פריימים שהותאמו במקרה הזה עבור סרט עם 25 פריימים לשניה .

אין שום אפשרות לסנכרן סרט באמצעות כתוביות מסוג SUB/IDX מבלי לתאם במדוייק את הכתוביות ל-FRAME RATE של הסרט ומכאן שתמיד חייבים להשתמש כ-INPUT בפורמט של כתובית שמציינת במדוייק במבנה שלו את ה-FRAME RATE שלו הכתובית נועדה . את המידע הזה רק הפורמט SUB יכול לתת .
alon24 כתב:רק שאלה קטנה,

איך אתה יודע מה היה המקור של הSRT כלומר למה הוא מתאים? 25, 23.96, 29.97 ??
בלי זה אי אפשר לעבוד
...

ziv_r
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
הודעות: 39610
הצטרף: ינואר 2005
נתן תודות: 1670 פעמים
קיבל תודות: 3797 פעמים

לינק להודעה #6 

לא יותר פשוט להשתמש בגרסת תרגום אחרת עם FPS מתאים?

alon24
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1831
הצטרף: מאי 2005
נתן תודות: 102 פעמים
קיבל תודות: 95 פעמים

לינק להודעה #7 

אז מה הפתרון ?!?!?!
נקודת ההתחלה שלנו לא נכונה . פורמט ה-SRT הוא הכי נפוץ מבין פורמטים של הכתוביות אבל הוא לא בנוי בצורה כזו שתאפשר שינוי נתון קצב הפריימים בהתאם לדרישות שנו \ של המדיה .
זו הסיבה שהמציאו את פורמט הכתוביות "SUB" שבניגוד ל-"SRT" , האינדקס מתבצע לא לפי זמנים מוחלטים אלא לפי מס.פריימים . הפורמט SUB ו-SUB\IDX הם שני דברים שונים לגמרה .
קיימת תוכנה קטנה בשם SRT2SUB שעושה בדיוק מה שאנחנו מחפשים , כלומר , לוקחת את הכתובית SRT , מלבישה עליה חותמת של הקצב פריימים רצוי ( ולא רק PAL או NTSC כמו במקרה של SUBTITLECREATOR ) . לא ארחיב יותר מדיי על התוכנה הזו כי היא סופר ידידותית חוץ מזה שניתן להוריד אותה כאן : http://www.digital-digest.com/software/ ... &did=1
...

בדיוק השאלה שלי היא איך אתה יודע מה הקצב המקורי בSRT כדי להלביש עליו את הקצב הרצוי.
בלי זה לא יהיה לך מקור טוב

olie
סמל אישי של משתמש
חבר פעיל במיוחד
חבר פעיל במיוחד
הודעות: 622
הצטרף: דצמבר 2006
נתן תודות: 0
קיבל תודות: 0

לינק להודעה #8 

אם גרסת הסרט של ה SRT היא בעלת אותו RUNTIME של הגרסה שיש לך, זה לא משנה מה היה ה FPS של המקור, כי ה SRT מבוסס זמן, אז צריך רק לדעת את קצב הסרט שיש בידך.
אם גרסת המקור היא בעלת RUNTIME שונה (כלומר שניהם בעלות אותו כמות פריימים, אחד ב X FPS ואחד ב Y FPS) אז צריך לבצע המרה בהתבסס על ה FPS של המקור. את זה אפשר לנחש או לחשב (בשרשור הקודם מישהו הסביר איך לחשב את זה).

hagi
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1213
הצטרף: דצמבר 2005
נתן תודות: 0
קיבל תודות: 1 פעם

לינק להודעה #9 

olie - כל מה שרשמת מדוייק מאוד אבל אין צורך לנחש כלום כי בגדול כל גרסה של תרגום SRT תתאים למדיה שבידך ( כשמדובר כמובן באותה המדיה ) כל עוד אתה לא עוסק בגרסאות מיוחדות כגון DVD DIRECTOR'S CUT VERSION או כדומה .

הרי סרט של 90 דקות הוא עדיין יהיה 90 דקות גם אם הוא DVD או שהוא על פורמט DIVX או או DVDSCR או HD או X264 . אורך הסרט נשאר קבוע וקובץ ה-SRT תמיד יהיה תותאם לאורך הסרט . כל מה שצריך לעשות כדי להבטיח סנכרון מושלם זה פשוט להמיר את קובץ ה-SRT לפורמט שמציין את ה-FRAME RATE ואת זה עושים באמצעות SRT2SUB ולאחר מכן , את התהליך הרגיל באמצעות SUBTITLE CREATOR .

olie
סמל אישי של משתמש
חבר פעיל במיוחד
חבר פעיל במיוחד
הודעות: 622
הצטרף: דצמבר 2006
נתן תודות: 0
קיבל תודות: 0

לינק להודעה #10 

לרוב אתה צודק, אבל אני נתקל בסרטים שזה לא המקרה. לדוגמה, הורדתי סרט X264 בעל 25 FPS. הורדתי SRT של גרסת ה DIVX שהוא 23.976 FPS.
על מנת לסנכרן הייתי חייב לבצע CONVERT FPS מ 23.976 ל 25.
במקרה הזה, אם גרסת הX264 הוא 1:30 שעות, אז גרסת ה DIVX בהכרח 1:33 שעות.
במקרים האלה כן צריך לדעת את קצב מקור ה DIVX.

ziv_r
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
הודעות: 39610
הצטרף: ינואר 2005
נתן תודות: 1670 פעמים
קיבל תודות: 3797 פעמים

לינק להודעה #11 

גרסת PAL של סרט תמיד תהיה מהירה יותר ב 4%

hagi
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1213
הצטרף: דצמבר 2005
נתן תודות: 0
קיבל תודות: 1 פעם

לינק להודעה #12 

מבחינת קובץ SRT גם גרסת PAL וגם גרסת NTSC יהיו שוות בזמן .
בקובץ ה-SUB אתה תראה מספר פריימים רב יותר ב-NTSC בגלל שהוא יהיה מותאם לקצב FPS של 29.97 בהשואה ל-PAL שהוא יהיה מותאם ל-25FPS .
ziv_r כתב:גרסת PAL של סרט תמיד תהיה מהירה יותר ב 4%
...

hagi
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1213
הצטרף: דצמבר 2005
נתן תודות: 0
קיבל תודות: 1 פעם

לינק להודעה #13 

אני לא הזכרתי בכלל את האופציה CONVERT FPS של SUBTITLE CREATOR בכוונה . מה שאתה עשית זה לקחת קובץ SRT , ומדגיש שוב - SRT - שהוא נטול מידה על FPS ומנסה להמיר אותו ל-FRAME RATE אחר .
כשהתוכנה מגלה שאתה מעלה כ-INPUT קובץ SRT היא תמיד תתן לך את הערך 23.97בשדה "FROM" . תבדוק מה קורה כשאתה מוריד קובץ SRT שמישהו שלא מבין כלום בנושא כתב שהוא מותאם לגרסה 25FPS . עדיין תראה בשדה של "FROM" ב-CONVERT FRAME RATE את הערך 23.97 ולא -25 .
בקיצור , תוכנת SUBTITLE CREATOR לא יכולה להמיר FRAME RATES של קובץ SRT . לא היא ולא שום תוכנה אחרת .ככל שתבינו את זה מוקדם יותר , תהנו מוקדם יותר מסרטים מסונכרנים טיפ טופ !!!

olie כתב:לרוב אתה צודק, אבל אני נתקל בסרטים שזה לא המקרה. לדוגמה, הורדתי סרט X264 בעל 25 FPS. הורדתי SRT של גרסת ה DIVX שהוא 23.976 FPS.
על מנת לסנכרן הייתי חייב לבצע CONVERT FPS מ 23.976 ל 25.
במקרה הזה, אם גרסת הX264 הוא 1:30 שעות, אז גרסת ה DIVX בהכרח 1:33 שעות.
במקרים האלה כן צריך לדעת את קצב מקור ה DIVX.
...
נערך לאחרונה על ידי hagi ב 23/04/2007 12:39, נערך 2 פעמים בסך הכל.

ziv_r
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
הודעות: 39610
הצטרף: ינואר 2005
נתן תודות: 1670 פעמים
קיבל תודות: 3797 פעמים

לינק להודעה #14 

תיקח קובץ SRT גרסת PAL
תיקח קובץ SRT גרסת NTSC
האורכים שלהם יהיו שונים.

hagi,
תערוך מייד את הצעקות.

hagi
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1213
הצטרף: דצמבר 2005
נתן תודות: 0
קיבל תודות: 1 פעם

לינק להודעה #15 

איפה יש צעקות ?
אם תראה מכות , תקרא לי !

שלח תגובה

חזור אל “חומרה PC + סטרימרים”