- כדי לשפר את הביצועים, Chrome משבית עכשיו את רצועות הווידאו כשסרטון MSE מופעל ברקע.
- הסרטון יוצג במסך מלא כשמסובבים את המכשיר.
אופטימיזציות של טראק וידאו ברקע (MSE בלבד)
כדי לשפר את חיי הסוללה, Chrome משבית עכשיו את רצועות הווידאו כשהסרטון מופעל ברקע (למשל, בכרטיסייה לא גלויה) אם הסרטון משתמש בתוספים של Media Source (MSE).
כדי לבדוק את השינויים האלה, עוברים לדף chrome://media-internals
ומסננים לפי הנכס info. כשהכרטיסייה שמכילה סרטון שמופעל הופכת ללא פעילה, מוצגת הודעה כמו Selected video track: []
שמציינת שרצועת הווידאו הושבתה. כשכרטיסייה חוזרת להיות פעילה, רצועת הווידאו מופעלת מחדש באופן אוטומטי.
למי שרוצה להבין מה קורה, הנה קטע קוד JavaScript שמראה מה Chrome עושה בערך מאחורי הקלעים.
var video = document.querySelector('video');
var selectedVideoTrackIndex;
document.addEventListener('visibilitychange', function() {
if (document.hidden) {
// Disable video track when page is hidden.
selectedVideoTrackIndex = video.videoTracks.selectedIndex;
video.videoTracks[selectedVideoTrackIndex].selected = false;
} else {
// Re-enable video track when page is not hidden anymore.
video.videoTracks[selectedVideoTrackIndex].selected = true;
}
});
אם משביתים את רצועת הווידאו, כדאי להפחית את האיכות של הווידאו. אפשר להשתמש ב-Page Visibility API כמו בדוגמה שלמעלה כדי לזהות מתי דף מוסתר.
אלה כמה הגבלות:
- האופטימיזציה הזו חלה רק על סרטונים עם מרחק פריים מרכזי של פחות מ-5 שניות.
- אם הסרטון לא מכיל טראקים של אודיו, הסרטון יושהה אוטומטית כשהוא יופעל ברקע.
הצגת סרטונים במסך מלא באופן אוטומטי כשמסובבים את המכשיר
אם מסובבים מכשיר למצב לרוחב בזמן שסרטון מופעל באזור התצוגה, ההפעלה תעבור אוטומטית למצב מסך מלא. סיבוב המכשיר למצב לאורך מחזיר את הסרטון למצב חלון.
הערה: אפשר להטמיע את ההתנהגות הזו באופן ידני. (מידע נוסף זמין במאמר בנושא הפעלה של סרטונים בדפדפן בנייד).
ההתנהגות הקסומה הזו מתרחשת רק במקרים הבאים:
- המכשיר הוא טלפון Android (לא טאבלט)
- הגדרת כיוון המסך של המשתמש היא 'סיבוב אוטומטי'
- גודל הסרטון הוא לפחות 200x200px
- בסרטון נעשה שימוש באמצעי בקרה מקוריים
- הסרטון פועל כרגע
- לפחות 75% מהסרטון גלויים (במסך)
- הכיוון מסתובב ב-90 מעלות (ולא ב-180 מעלות)
- עדיין אין רכיב של מסך מלא
- המסך לא נעול באמצעות Screen Orientation API