בימים האחרונים מתחוללת לה “מהומה” זעירה, לאחר שקבוצות המשחררות טורנטים של סדרות וסרטים (פיראטיים כמובן) החליטה לעבור פורמט. רבים לא כל כך מבינים על מה המהומה ופוסט זה ינסה לעשות קצת סדר, מבלי להיכנס לעומק הפורמטים, לטובת הקוראים שאינם בקיאים בתחום.
קצת היסטוריה: כל וידאו קליפ שאתם צופים בו ברשת או בבית מקודד עם 2 מפענחים (codecs). האחד לאודיו והשני לוידאו. קובץ AVI טיפוסי שאתם מורידים הוא בעצם קובץ שבנוי בסטנדרט שנקרא RIFF והקובץ מסודר בשיטה כזו שהוא אומר לנגן: הוידאו שבקובץ זה מקודד עם מפענח וידאו מסוג X, ומפענח אודיו מסוג Y. הסטנדרט גם אומר לנגן הוידאו דברים כמו רזולוציית הוידאו, כמה ביט צבע יש לוידאו, כמה ביט אודיו יש ועוד פרמטרים.
XVID הוא בעצם גירסת קוד פתוח ל-DIVX ו-DIVX הומצא לראשונה לאחר שמישהו לקח מפענח של מיקרוסופט (שנקרא DIV3) והעביר אותו מספר שינויים להיות יותר תואם לדברים אחרים. בסופו של דבר קמה חברה בשם DivX Network שהפכה את המפענח למשהו מסחרי עם כלים פשוטים (וחלקם חינמיים) למשתמשים הביתיים, אבל עם רשיון לא פתוח. XVID הוא בעצם בניה של אותו מפענח – בגירסת קוד פתוח.
הפופולריות של XVID צמחה מכיוון שזה היה המפענח הראשון שנתן תוצאות טובות של דחיסת וידאו בצפיה Offline (המפענח אינו תומך בזרימה רגילה באינטרנט ומה שסטרימרים עושים זה בניית פתרון עקיף תוך שימוש באנקפסולציה של פרוטוקולי רשת שונים [Samba, HTTP וכו’]). ככל שהפופולריות של המפענח גדלה, החלו לצאת גם פתרונות חומרה, במיוחד כשיצאו צ’יפים טיוואניים מאוד זולים (חצי דולר, בכמות של 1000) שיודעים לפענח את XVID.
כך הכל עבד, אבל במקביל העולם השתנה. יותר ויותר חברות אימצו את תקן H.264 שהוא תקן הרבה יותר מאסיבי לקידוד וידאו. בתקן זה ישנם פתרונות שיודעים לתמוך החל בטלפון הכי פשוט ועד רזולוציות של 5K ומעלה של וידאו עם דחיסה משתנה מרמה של 2G בטלפון סלולרי ועד שידורי אולפן מקצועיים בעשרות מגהביט לשניה.
כמובן שתקן משוכלל כזה אינו מגיע בחינם. התקן הורכב ע”י נציגים של חברות טכנולוגיה שונות (אפל, מיקרוסופט, סוני, פיליפס ועוד) ואותן חברות הקימו את MPEG-LA הגוף שדורש תמלוגים על כל פיפס שתקודד/תייצר עם H.264 מה שגרם כמובן להתמרמרות אצל המשתמשים ואצל חברות כאחד.
וכרגיל, מי בא להושיע? קוד פתוח כמובן. בחור בשם Laurent Aimar ואחרים בקבוצת x264 team השיגו בדרכים שונות את המפרט (בדרך רשמית יש לשלשל ל-MPEG-LA סכום “סימלי” של 30,000 דולר עבור הניירת!) והקבוצה מימשה בקוד את המיפרט ומשם הדרך היתה קצרה מאוד לשילוב הפרוייקט בפרוייקטים כמו FFMPEG ו-VLC, שהם 2 הכלים הכי פופולריים בתחום ניגון וידאו.
נחזור למציאות בת זמננו: כל טלפון חכם וטאבלט תומך ב-H.264 אך רובם אינם תומכים ב-XVID. יהיו כמובן אלו שיאמרו “אבל אצלי ב-IPAD קבצי XVID מתנגנים חלק” וזה נכון, אבל התמיכה נעשית ברמת תוכנה, כלומר כשאתה מנגן סרט שמקודד ב-XVID אז הוא מפוענח על ידי המעבד עצמו כלומר ברמת תוכנה, מה שכמובן מרוקן מהר משאבי סוללה ומחמם את המכשיר וזאת בניגוד לקידוד H.264 שמפוענח ישירות ע”י הצ’יפ הגרפי במכשיר. בנוסף, XVID בהשוואה ל-H.264 מאוד גרוע בחסכון של מקום. כמה גרוע? עם פרופיל בסיס של H.264 ניתן להגיע לחסכון של 20-30 אחוז באותו וידאו קליפ עם אותה רזולוציה.
אז על מה המהומה? אותם קבוצות שמכירות את פורמט H.264 החליטו לאמץ אותו לחיקם, ובכך לאפשר למכשירים מודרניים לנגן וידאו שמורידים בטורנט – בקלות על כל מכשיר ללא צורך בתוכנות נוספות. מכשירי טלפון חכמים כמו טאבלטים, קונסולות משחקים ועוד יודעות להתמודד עם קבצי H.264 בצורה יפה מאוד, אבל אלו שנמצאים עם נגני DVD שיודעים רק לתמוך בפורמטים כמו DIVX/XVID ו-MPEG-1/2 אינם יכולים להתמודד טוב עם קבצי H.264, אז הם מתלוננים (פיראטים מתלוננים.. איזה עולם)
אבל יש עוד סיבה שהיא יותר Side Effect שאפילו ראשי הקבוצות לא כל כך חשבו עליה: בראם כהן ישחרר במסגרת החברה שלו כקוד פתוח את BT-Live, מוצר הסטרימינג שמבוסס ביטורנט (ולא, לא מדובר על הטריק שיש ב-uTorrent של ניגון וידאו שבסך הכל מתעדף חלקים בצורה שונה מהורדה רגילה), מה שיאפשר לך (המשתמש הפיראטי, נו נו נו, אותך לחברות המדיה… ) לגלוש לאתר הטורנטים האהוב עליך, ללחוץ על הפרק בסידרה האהובה עליך ולצפות בו תוך שניות ספורות. פורמט H.264 מתאים מאוד לשידור בזרימה (וזה יהיה גם הכאב ראש הבא של האולפנים, אבל זה נושא לפוסט אחר).
לסיכום: לפעמים צריך לדעת לוותר על מפענחים ישנים לטובת מפענחים מודרניים יותר משוכללים ויותר חסכוניים ואסור להקשיב לקבוצה שרוצה להתבכיין למה הנגן DVD ב-200 שקל שלהם לא מנגן את הוידאו. הוא לא מנגן? חבר כבל HDMI לטלפון שלך או למחשב שלך ותנגן. הקידמה כבר כאן.
אגב, "פרסומת" קטנה: מעתה "חץ ביז" מוכרים שרתי VPS באירופה במחיר מצחיק – החל מ-90 שקלים לחודש!