בקודלאב הזה תלמדו איך לשפר את הביצועים על ידי החלפת קובץ GIF מונפש בסרטון.
קודם מדידה
קודם כול, בודקים את ביצועי האתר:
- כדי לראות תצוגה מקדימה של האתר, לוחצים על הצגת האפליקציה. לאחר מכן לוחצים על מסך מלא .
- מקישים על Control+Shift+J (או על Command+Option+J ב-Mac) כדי לפתוח את DevTools.
- לוחצים על הכרטיסייה Lighthouse.
- מוודאים שהתיבה ביצועים מסומנת ברשימה קטגוריות.
- לוחצים על הלחצן יצירת הדוח.
בסיום, ה-GIF אמור להיות מסומן ב-Lighthouse כבעיה בבדיקת 'שימוש בפורמטים של וידאו לתוכן מונפש'.
הורדת FFmpeg
יש כמה דרכים להמיר קובצי GIF לסרטונים. במדריך הזה נעשה שימוש ב-FFmpeg. הוא כבר מותקן במכונה הווירטואלית של Glitch, ואפשר גם לפעול לפי ההוראות האלה כדי להתקין אותו במחשב המקומי.
פתיחת מסוף Cloud
ודאו ש-FFmpeg מותקן ופועל:
- לוחצים על Remix to Edit כדי לאפשר עריכה של הפרויקט.
- לוחצים על Terminal (הערה: אם הלחצן Terminal לא מופיע, יכול להיות שתצטרכו להשתמש באפשרות 'מסך מלא').
- מריצים את הפקודה הבאה במסוף:
which ffmpeg
אמור להתקבל נתיב קובץ חזרה:
/usr/bin/ffmpeg
שינוי קובץ GIF לסרטון
- במסוף, מריצים את הפקודה
cd images
כדי להיכנס לספריית התמונות. - מריצים את הפקודה
ls
כדי לראות את התוכן.
התוצאה אמורה להיראות כך:
$ ls
cat-herd.gif
- במסוף, מריצים את:
ffmpeg -i cat-herd.gif -b:v 0 -crf 25 -f mp4 -vcodec libx264 -pix_fmt yuv420p cat-herd.mp4
הפקודה הזו מורה ל-FFmpeg לקחת את הקלט, שמסומן בדגל -i
, של הקובץ cat-herd.gif ולהמיר אותו לסרטון בשם cat-herd.mp4. הפעולה הזו אמורה להימשך שנייה. בסיום הפקודה, תוכלו להקליד ls
שוב ולהציג שני קבצים:
$ ls
cat-herd.gif cat-herd.mp4
יצירת סרטוני WebM
קובצי MP4 קיימים מאז 1999, אבל קובצי WebM הם חדשים יחסית, והם הושקו לראשונה בשנת 2010. סרטוני WebM יכולים להיות קטנים בהרבה מסרטוני MP4, לכן מומלץ ליצור את שניהם. למרבה המזל, הרכיב <video>
מאפשר להוסיף כמה מקורות, כך שאם דפדפן לא תומך ב-WebM, הוא יוכל לעבור ל-MP4.
- במסוף, מריצים את:
ffmpeg -i cat-herd.gif -c vp9 -b:v 0 -crf 41 cat-herd.webm
- כדי לבדוק את גודל הקבצים, אפשר:
ls -lh
צריך להעלות קובץ GIF אחד ושני סרטונים:
$ ls -lh
total 4.5M
-rw-r--r-- 1 app app 3.7M May 26 00:02 cat-herd.gif
-rw-r--r-- 1 app app 551K May 31 17:45 cat-herd.mp4
-rw-r--r-- 1 app app 341K May 31 17:44 cat-herd.webm
שימו לב שגודל קובץ ה-GIF המקורי הוא 3.7MB, בעוד שגודל קובץ ה-MP4 הוא 551KB וגודל קובץ ה-WebM הוא רק 341KB. זה חיסכון עצום!
עדכון ה-HTML כדי ליצור מחדש את אפקט ה-GIF
לקובצי GIF מונפשים יש שלושה מאפיינים עיקריים שסרטונים צריכים לחקות:
- הם מופעלים באופן אוטומטי.
- הם חוזרים על עצמם בלי הפסקה (בדרך כלל, אבל אפשר למנוע את החזרה על עצמם).
- הם שקטים.
למרבה המזל, אפשר ליצור מחדש את ההתנהגויות האלה באמצעות הרכיב <video>
.
- בקובץ
index.html
, מחליפים את השורה עם<img>
בערך:
<img src="/images/cat-herd.gif" alt="Cowboys herding cats.">
<video autoplay loop muted playsinline></video>
רכיב <video>
באמצעות המאפיינים האלה יופעל באופן אוטומטי, יופעל בלופ
ללא הגבלת זמן, לא יפעיל אודיו ויופעל באופן מוטבע (כלומר לא במסך מלא). כל ההתנהגות הצפויה מקובצי GIF מונפשים תתבצע. 🎉
ציון המקורות
כל מה שנותר לעשות הוא לציין את מקורות הווידאו. הרכיב <video>
מחייב רכיב צאצא אחד לפחות מסוג <source>
שמצביע על קובצי וידאו שונים שהדפדפן יכול לבחור מביניהם, בהתאם לתמיכה בפורמטים.
מעדכנים את <video>
ברכיבי <source>
שמקשרים לסרטונים שלכם על חתולים:
<video autoplay loop muted playsinline>
<source src="/images/cat-herd.webm" type="video/webm">
<source src="/images/cat-herd.mp4" type="video/mp4">
</video>
תצוגה מקדימה
- כדי לראות תצוגה מקדימה של האתר, לוחצים על View App (הצגת האפליקציה) ואז על Fullscreen (מסך מלא).
החוויה אמורה להיראות זהה. עד עכשיו טוב.
אימות באמצעות Lighthouse
כשהאתר הפעיל פתוח:
- מקישים על Control+Shift+J (או על Command+Option+J ב-Mac) כדי לפתוח את DevTools.
- לוחצים על הכרטיסייה Lighthouse.
- מוודאים שהתיבה ביצועים מסומנת ברשימה קטגוריות.
- לוחצים על הלחצן יצירת הדוח.
עכשיו הבדיקה 'שימוש בפורמטים של סרטונים לתוכן מונפש' אמורה לעבור. נהדר! 💪