כמה מילים על "קופסאות שידור"

"מים רבים עברו מתחת לנהר" – אני יכול לאמר כך על תקופה של יותר מעשור שעברה מאז כותב שורות אלו היה עסוק בהרמת שרות Streaming ללקוחות שונים. בניגוד להיום, דברים היו מורכבים וסופר יקרים: שרותי ה-CDN בארץ היו קיימים אך יקרים בטירוף, היה צורך בלרכוש לא מעט שרתי אפליקציות כמו Wowza, לשכור Load Balancers ולהגדיר דברים רבים – בכדי ששידור יזרום, ויזרום גם בעומס (עד שמגיע הרגע שאתה מגלה שספק האינטרנט שהבטיח לך 10 ג'יגהביט בחווה – חיבר אותך "בטעות" למתג של 1 ג'יגהביט).

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

הדברים מתחילים להיות יותר ויותר מורכבים ככל שהסיטואציה יותר מורכבת. כן, שידור וידאו ממצלמת הטלפון הסלולרי קל מאוד לבצע, אבל מה אם אני רוצה לשדר דרך מצלמת DSLR מהמחשב? פה אני כבר צריך לחבר כבל HDMI למצלמה ולהשתמש באחת מהתוכנות הפופולריות כמו OBS Studio, Xsplit, או vMix או אחת מהתוכנות האחרות – כדי להתחבר לאחד משרותי השידור הפופולריים (יוטיוב, Twitch, Facebook, (ובצורה לא רשמית – גם אינסטגרם, כל עוד אתה יודע "לשחק" עם ה-RTMP, ואגב – זה בתשלום אחרי 3 השידורים הראשונים). התוכנות הללו גם נותנות לך להשתמש בפילטרים, תוספים, יצירת "סצינות" עם מצלמות שונות (USB, RTMP, HDMI וכו') ואפשר להגיע איתן לתוצאות יפות ומרשימות. היתרון הענק בתוכנות הללו כיום – הוא הפשטות בחיבור לשרותי זרימה עצמם. כך זה נראה ב-OBS Studio, לא נראה לי שלמישהו יהיה קשה עם הממשק הזה להגדיר:

לאחרונה החלו לצוץ כל מיני "קופסאות שידור" (YoloLiv Yolobix יצא לפני מספר חודשים, לפחות עוד שלושה מוצרים חדשים אמורים לצאת בשנה הבאה [אין באפשרותי למסור פרטים עקב NDA]), גם חברת Black Magic יצאה עם שורת מוצרי Atem Mini ויש עוד מספר מוצרים – כולם מכוונים לנקודה מרכזית: לפשט את תהליך השידור תוך כדי קונסולידציה של אמצעי הזרימה למכשיר אחד ושידור מאותה קופסא, מבלי שהמשתמש יצטרך להיות מומחה למחשבים או מבין טוב בענייני זרימת וידאו, H.264, הקלטות, Bit Rate ושלל מושגים אחרים, והם מייעדים את עצמם הן לחובבי שידורי הזרימה (וולוגרים) והן למקצוענים שמצלמים כנסים, אירועים מרובי משתתפים ועוד.

מכשיר ה-YoloLiv לדוגמא, מציג גישה מעניינת. מדובר במכשיר אנדרואיד שכולל בעצם כל מה שצריך כדי לשדר ולהזרים מידע בין ב-WIFI, בסלולר ובחיבור רשת. אפשר לחבר 2 מצמות ב-HDMI ומצלמה בחיבור USB (כל עוד המצלמה משדרת בסטנדרט UVC, כמו המצלמות של לוג'יטק), אפשר להכניס כרטיס SIM, כרטיס SD על מנת להקליט (ולשדר קבצים שקיימים בכרטיס), אפשר לשדר לשרותי ה-Streaming הפופולריים (לפחות בסקירות וידאו שראיתי, יש עדיין כל מיני "קפיצות" שצריך לעשות כדי להגדיר חיבור ליוטיוב לדוגמא) – ובקיצור, למי שצריך להקליט מ-2 מצלמות ובמקביל לשדר את התוכן מאחת המצלמות, (השידור הוא על ערוץ יחיד. אין תמיכה ל-Multi Cam של יוטיוב) – הפתרון הזה הוא פתרון טוב…

… אם לא מסתכלים על הצעות המתחרים ועל המחיר..

המחיר עולה 4800 שקלים (וזה לא בגלל היבואן בארץ. המחיר בחו"ל הוא 1100 דולר), ובמחירים כאלו הדבר הראשון שהייתי ממליץ לעשות, גם לאלו שאין להם שום בעיה להוציא את הסכום – להסתכל על הצעות מתחרות.

בואו ניקח לדוגמא את ה-Atem Mini Pro של Black Magic. בניגוד ל-Yololiv, יש תמיכה בציוד של:

  • 4 מצלמות במקום 2
  • תמיכת שידור פלט וידאו דרך USB לחיבור למחשב, ובכך כשמחברים למחשב אפשר לשדר ישירות לאפליקציות כמו סקייפ, ZOOM, גוגל Meet, שרות Webex ואחרים.
  • הקלטה של הפלט ישירות לדיסק קשיח חיצוני
  • הגדרות הרבה יותר קלות לשידור לפלטפורמות ה-Streaming למיניהן
  • אין צורך (זולת הגדרות ראשוניות) במחשב. קח את המכשיר לאירוע והתחל להשתמש.

המחיר? 2800 שקל ביוגנד.

ישנו דגם יותר משוכלל (ה-Atem Mini Pro ISO) שמאפשר:

  • הקלטת כל ערוץ וידאו בנפרד באיכות גבוהה ב-H.264
  • לחיצה על כפתור אחד יוצרת קובץ פרויקט ל-Davinci Resolve כולל את הוידאו, מעברים בין הערוצים (כלומר כל לחיצה על כפתור למעבר מוקלטת לפרויקט)
  • ועוד פונקציות רבות שברובן כלל לא קיימות אצל המתחרים.

המחיר בארץ – 3990 שקל ביוגנד – כלומר זול ב-800 שקל מה-YoloLiv ונותן הרבה יותר פונקציות.

אחד הדברים החשובים בשידור – הוא שידור דרך תשתית הסלולר (אם אין חיבור DSL/הוט/סיבים לשדר דרכו באותו מקום). שידור דרך סלולר הוא בעייתי מאוד הואיל וברגע אחד ישנה מהירות העלאה של 50 מגהביט וברגע אחר – 2 מגהביט בקושי, למרות שלא זזת מילימטר מהמקום, ועם זה המקודד בתוך הקופסא צריך להתמודד, צריך ליצור בזמנים נכונים את ה-I Frame, וכמה שיותר "למשוך" אם אפשר את ה-B ו-P ולקודד באיכות הכי טובה שאפשרית באותו רוחב פס והתמודדות עם "קפיצות" של רוחב הפס, ולכן צריך מעבד רציני שיודע לקודד ולהתמודד עם סיטואציות אלו. לבלאק מג'יק, "במקרה" יש נסיון ביצור מצלמות וציוד שידור כבר 20 שנה (מ-2001). אני מאמין שהציוד שלהם מקצועי….

נקודה חשובה נוספת לגבי שידור סלולרי – אל "תיבנו" על מודם סלולרי פנימי. במקרים רבים תכנון והטמעת האנטנות הסלולריות במכשירים רבים (כולל מחשבים ניידים, במיוחד של חברה אמריקאית מסויימת שלא אציין את שמה) הוא גרוע והקליטה היא בינונית ומטה. אפשרויות מומלצות:

  1. רכישה ושימוש במכשירי MIFI למיניהם (ודאו כי ה-4G שלהם פועל בארץ. אל תרכשו מ-eBay את ה-MIFI של Huawei. מכשיר גרוע שלא עובר כלל ל-4G בארץ עם אבטחה מאוד גרועה)
  2. אם יש לכם טלפון סלולרי ישן פנוי – חברו אותו ל-Power Bank והפכו אותו (זה בהגדרות) ל-Hot spot.
  3. השתמשו בנתב סלולרי עם אנטנות חיצוניות. קחו את זה לדוגמא – 170 שקל וזה שלכם (ובזמן שאני כותב את הפוסט הזה, הזמנתי את זה לעצמי) ועם חיבור RJ45 לקופסא. אם אתם משדרים כל כמה ימים דרך הסלולר, קנו 2 מכשירים כאלו וציידו אותם ב-SIM של ספק אחר בכל אחד, כך שאם יש בעיות קליטה עם ספק אחד, תוכלו להחליף במהירות מודם מבלי לטרוח להוציא SIM/לסנכרן מול אנטנות וכו'.

לסיכום: לפני שרוכשים פתרון כלשהו הקשור להזרמת מדיה לשידורי מצלמות – חשוב לבדוק מחיר ותמורה מול הצעות מתחרות. במקרה הזה השוויתי שתי הצעות -YoloLiv מול Atem Mini Pro ולעניות דעתי – ההצעה של בלאק מג'יק זולה משמעותית ונותנת יותר. יש כמובן עוד הצעות ועוד מוצרים, ולכן אני ממליץ בזמן הפנוי (ואם מחפשים לרכוש פתרון) להציץ יותר ולשאול אחרים.

שיטת שידור חדשה מיוטיוב

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

בד"כ כשאני שולח הצעת מחיר להקים פרויקט כזה (מה לעשות, מיקסרים וציוד נוסף עולים לא מעט) – לא ממש חוזרים אליי או שחוזרים עם טענות שהמחיר יקר.

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

אז מה עושה מישהו שרוצה לשדר וידאו עכשיו ואין לו תקציב? ובכן, יוטיוב הוציאה פונקציה חדשה שנקראת Go Live והיא זמינה מעתה לכולם. עם הפונקציה הזו כל מה שצריך זה מחשב נייד עם מצלמת Webcam טובה (כמו Logitech C920 ומעלה), מיקרופון עם חיבור USB שישב מול מגיש השידור .. וזהו.

מעתה כל מה שצריך לעשות זה להיכנס ליוטיוב, לוודא שאתם מחוברים בשם המשתמש שלכם, ללחוץ על הפתור הוידאו עם ה-+ ולבחור Go Live (הדפדפן כרגע צריך להיות כרום). בחרו את המצלמה, המיקרופון, תנו כותרת, צלמו את עצמכם או העלו תמונת Preview ו.. אתם בשידור, בלי להפעיל שום תוכנה צד ג' ואפשר לעשות זאת מכל מחשב, וגם לשדר מהשטח (כל עוד יש לכם חיבור סלולרי טוב עם חבילת DATA רצינית).

לאלו שרוצים לשדר עם מצלמות יותר רציניות, אז אפשר להשתמש בציוד USB של Elgato או אם מדובר במחשב דסקטופ, אז כרטיס Black Magic יעזור. כל מה שצריך לעשות זה לחבר את המצלמה המקצועית דרך חיבור ה-HDMI שלה אל הכרטיס, ולבחור את ה-Elgato או ה-Black Magic כמקור וידאו ואת המיקרופון המקצועי כמקור אודיו – ולשדר.

לסיכום: רוצים לשדר וידאו? דאגו ל-Web Cam טוב. רוצים לשדר וידאו באיכות מעולה? דאגו לכרטיס לכידה טוב, מיקרופון מקצועי עם חיבור USB (כמו YETI לדוגמא) – כנסו לאתר של יוטיוב ותתחילו לשדר.

שידור וידאו: על קידוד וצרות של רוחב פס ומחיר (חלק 1)

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

בחו"ל בחלק מהמקרים זה גם כך אולם כשזה מגיע לעננים ציבוריים, המצב הפוך: יש לך רוחב פס נאה לשרת (עד 220 מגהביט במקרה של אמזון אלא אם תיקח Instance עם High Network ששם תקבל הרבה יותר), אך אתה משלם עבור כל ביט שיוצא החוצה.

בעבר אתרי אינטרנט רבים העבירו שידור וידאו או קליפים בקידוד WMV של מיקרוסופט או VC, או VCM בחלק הקטן מהמקרים, אולם כיום כולם (למעט אתרים שלא עודכנו שנים ועדיין חושבים שהעולם הוא עדיין ברובו משתמש במיקרוסופט) עברו לשדר בקידוד של MPEG-4 עם פרופיל Base או Main והאודיו מגיע או כ-AAC או כ-MP3. היתרונות של מקודדים (Codecs) אלו הוא בכך שכל מערכת הפעלה, טלפונים סלולריים וטאבלטים – תומכים בכך וכל מי שמשדר מעוניין להגיע לכמה שיותר קהל מבלי שהגולשים יצטרכו להתקין אפליקציות/תוספים מיוחדים, מה שגורם במקרים רבים לתקלות ולאנשים שאין להם תמיכה והם נוטשים וממשיכים הלאה.

אז כיצד בעצם אפשר לדחוס יותר משתמשים על אותו רוחב פס?

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

אבל יש פתרון אחר, שכולו קוד פתוח ונתמך בפלטפורמות כמו Wowza ואחרים (כן, גם במערכות בלוגים כמו WordPress) שנקרא Opus שמגיע מ-קרן Xiph ומהנדסים רבים בעולם עובדים בהתנדבות בזמנם הפנוי על פיתוחו. גירסה 1.2 (ו-1.2.1) שוחררה לא מזמן. אתם יכולים להיכנס לדף הזה, לגלול לאמצע ולבחור בקידוד וב-Bit Rate. אני ממליץ לבחור שם Opus 1.2 עם 32 קילוביט לשניה ולנגן ותתרשמו בעצמכם מהאיכות.

בהמשך הדף אתם תגיע לדף דוגמיות דיבור, שם אתם מוזמנים לבחור שוב את Opus 1.2 ולבחור ב-12 קילוביט לשניה, הכי נמוך, ואז לשמוע את הדברים בניבים שונים באנגלית (מה שמהווה אתגר לא קטן לקידוד, דיבור ב-Welsh וכו'). לעניות דעתי – האיכות פנטסטית.

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

אז מה עושים? לשמחתנו ב-HTML5 יש אפשרות לקבוע Fallback כך שאם הציוד של הלקוח אינו תומך ב-Opus, הוא יועבר לגירסה ב-MP3 או AAC.

לסיכום: חסכון של 75% ברוחב הפס פר משתמש אינו רע והוא שומר על איכות דגימה של 48 קילוהרץ, ואתה לא משלם אגורה שחוקה כתמלוגים על שימוש בקידוד זה.

מה רע? 🙂

בפוסט הבא נדבר על ה"חבר" של Opus – קידוד וידאו VP9.

שידורי אודיו/וידאו – איך לחשב וממה להיזהר

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

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

שידור מורכב מ-2 אפשרויות (יש עוד כמובן, אך לא ניכנס לכך בפוסט זה): או שידור אודיו (צליל בלבד), או שידור וידאו (צליל ותמונה). כל אחת מהאפשרויות צורכת רוחב פס מסויים.

נתחיל באודיו: על מנת לשדר הרצאות לדוגמא, יש לקודד את האודיו בפרמטרים שיתנו איכות שמע טובה, אך יחד עם זאת, בכמה שפחות קילוביטים. אם לדוגמא נשדר בפורמט MP3, אפשר להסתפק ב-64 קילוביט לשניה. אם בסטריאו, אפשר לקודד ב-96 קילוביט לשניה או 128 קילוביט על מנת לקבל איכות גבוהה. פורמט אחת פופולרי הוא AAC שיכול להוציא איכות אודיו טובה גם ב-96 קילוביט (שימו לב קילוביט ולא קילובייט! קילובייט אחד הוא 8 קילוביט בערך).

אחרי שאנו יודעים כמה קילוביט יהיה ערוץ שידור, נכפיל זאת בכמות המאזינים הסימולטנית שאנו חושבים שיכנסו. נניח 100 גולשים, אז החישוב הוא 128 קילוביט (איכות אודיו גבוהה) כפול 100 איש, יוצא לנו 12800 קילוביט או 12.8 מגהביט (שוב, מגהביט ולא מגהבייט, רוחב הפס מחושב כך), כלומר כלקוח תצטרך לפחות 12.8 מגהביט (עדיף יותר, משהו כמו 15 מגהביט כי ישנן כל מיני "תוספות" בדרך) לשדר ל-100 איש. אם תרצה ל-1000 גולשים סימולטנית, אז תצטרך רוחב פס של 128 מגהביט (שוב, עדיף להוסיף בערך 10% תוספת לכל מיני דברים שמתווספים חוץ מהאודיו עצמו נטו).

בוידאו הדברים הם בערך כמו אודיו, רק שרוחב הפס גדול בהרבה. אם לדוגמא מעוניינים באיכות וידאו טובה לשידור הופעה, יש צורך ב-500-800 קילוביט פר צופה (אפשר פחות או מדובר בהרצאה כאשר המרצה יושב מול מיקרופון, הואיל ואין הרבה תנועה). המספר לעיל כולל איכות אודיו די טובה ואם רוצים איכות יותר גבוהה, כמות הקילוביטים גודלת. אם רוצים לשדר ב-720P (ב-HD) באיכות שידור גבוהה, רוחב הפס שנצטרך הוא בערך 1.2-2.0 מגהביט פר צופה.

אחרי שיודעים כמה רוחב פס צריך פר צופה ואיזה איכות הולכים לשדר (שוב, יש שיקולים נוספים כמו הקידוד, פרוטוקולים, Pseudo Streaming, RTMP ועוד), יש צורך לחשב כמות צופים סימולטנית. אם נרצה לשדר ל-100 צופים באיכות של 750 קילוביט לדוגמא, אז נצטרך רוחב פס של 75 מגהביט + 10% תוספת. 1000 צופים? 750 מגהביט + תוספת.

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

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

מחירי הרוחב פס כיום לשימוש בתוך ישראל בלבד נעים בין 10 ל-20 שקלים פר מגהביט. אם ניקח את הדוגמאות הקודמות, 15 מגהביט (לשידור אודיו בלבד עבור 100 איש) יעלו לך בין 1500 ל-3000 שקל לחודש. המחיר חודשי ואינו כולל מע"מ, ומומלץ לוודא כי הספק מגדיר לך בלבד את אותו רוחב פס.

אחרי שיהיה לך מחירים של הרוחב פס, תוכל לעבור לשלב בחירת הספק שיתן לך פתרון של שרת וידאו. כאן חשוב למצוא ספק שנותן פתרון שמתאים לכל המכשירים (כך לדוגמא הפתרונות שמבוססים על Windows Media Services הישנים לא ירוצו על מכשירי אנדרואיד או אייפון/אייפד) ומומלץ שתדרוש גם פאנל שמאפשר לך לראות בכל רגע כמה מאזינים, כמה האזינו בחתך יומי,שבועי, חודשי וכו', כך שתדע מתי אתה צריך להגדיל את החבילה.

נקודה חשובה: קיימים מספר ספקים בארץ שמציעים שרות CDN ישראלי. ברוב מוחלט של המקרים מדובר על בזבוז כספים. אנחנו מדינה קטנה ו-2 שרתים שמוגדרים טוב יכולים לתת פתרון גם לשידורים המוניים.

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

Exit mobile version