מרעיון למוצרמאמרים

מהמעבדה

הכדור המוזיקלי: שוט VFX שנבנה במקום, עם AI

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

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

השוט הגמור. שש וחצי שניות, 1080 על 1920, עם סאונד.

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

שום דבר פה לא בא מספרייה של פריסטים. הוא נבנה במקום, בשביל הקליפ הזה.

רעיון בן כמעט מאה שנה

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

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

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

איך המוזיקה מציירת את הכדור?

הכדור הוא קו תלת־ממדי שנדגם בקצב של אודיו, 1,600 נקודות בכל פריים. הערוץ השמאלי של הסטם שלו הוא הציר האופקי, והימני הוא הגובה. אם מחברים את הסטם לאוסצילוסקופ, הוא מצייר את הכדור כמו שהמצלמה רואה אותו.

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

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

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

איך טלפון אחד הופך לאולפן motion capture?

פעם זה דרש חליפה עם חיישנים ואולפן. היום זו קטגוריה של מוצרים. Rokoko Vision עושה את זה בחינם ממצלמה אחת מאז 2023, ו־Autodesk קנתה ב־2024 את Wonder Dynamics, שהמוצר שלה נקרא היום Autodesk Flow Studio.

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

Depth Anything V2 נותן מפת עומק לכל פריים. העומק שלו יחסי, אז הוא מכויל בשתי נקודות: הפנים בערך 1.6 מטר מהמצלמה והקיר בערך 2.4. בלי הכיול הזה האור על הקיר מהבהב. ובסוף יש מצלמה וירטואלית עם אותו שדה ראייה של האייפון, כדי שכל נקודה תשב במקום הנכון בתלת־ממד.

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

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

מאיפה הגיע הקולנוע?

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

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

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

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

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

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

למה קוד ליד Blender, ולא תוכנה אחת?

קוד הוא כבר מזמן הדבק של עולם ה־VFX. ה־VFX Reference Platform, התקן שאולפנים ויצרני תוכנה מתיישרים אליו, קובע כל שנה גם את גרסת הפייתון. ול־Blender יש מפרש פייתון מובנה שיכול לשנות כל דבר בסצנה. יש כבר פרויקטים כמו BlenderMCP שמחברים את Claude ישר ל־Blender, כדי שיבנה סצנות מתוך שיחה.

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

הקוד הוא גם מה שמחבר בין הכלים. הוא מעביר את הטראקינג לתוך Blender, את הפרטיטורה לתוך הקומפוזיטינג, ואת אותם נתונים ל־After Effects. זה פותח שילובים שלא קיימים כשעובדים בתוכנה אחת. בפרויקט הבא, החלק הכי חשוב אולי לא ייעשה בכלי מוכר בכלל, אלא בקוד ובמודל כמו MediaPipe.

מה מקבלים בסוף?

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

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

צילום מסך מתוך Blender: החדר שנבנה ממפת העומק, מואר מהכדור, בתצוגת Cycles
מתוך Blender. החדר שנבנה מהעומק, כשהכדור הוא מקור האור היחיד. פריים 84.

שני דברים עוד לא מוכחים. סקריפט ה־After Effects רץ עד עכשיו רק ב־EffectCraft, מימוש בקוד פתוח של After Effects, ועוד לא ב־After Effects עצמו. והעומק ממצלמה אחת הוא הערכה, לא מדידה.

מה ההבדל בין זה לבין פריסט?

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