การอัปเดตสื่อใน Chrome 61

François Beaufort
François Beaufort

การเพิ่มประสิทธิภาพแทร็กวิดีโอพื้นหลัง (MSE เท่านั้น)

ตอนนี้ Chrome จะปิดใช้แทร็กวิดีโอเมื่อเล่นวิดีโอในเบื้องหลัง (เช่น ในแท็บที่มองไม่เห็น) หากวิดีโอใช้ส่วนขยายแหล่งที่มาของสื่อ (MSE) เพื่อยืดอายุการใช้งานแบตเตอรี่

คุณตรวจสอบการเปลี่ยนแปลงเหล่านี้ได้โดยไปที่หน้า chrome://media-internals แล้วกรองหาพร็อพเพอร์ตี้ "ข้อมูล" เมื่อแท็บที่มีวิดีโอที่เล่นอยู่ไม่ได้ใช้งาน คุณจะเห็นข้อความอย่าง Selected video track: [] ที่ระบุว่ามีการปิดใช้แทร็กวิดีโอ เมื่อแท็บกลับมาทำงานอีกครั้ง แทร็กวิดีโอจะเปิดใช้อีกครั้งโดยอัตโนมัติ

แผงบันทึกในหน้า chrome://media-internals
แผงบันทึกในหน้า chrome://media-internals

สำหรับผู้ที่ต้องการทำความเข้าใจสิ่งที่เกิดขึ้น ต่อไปนี้คือตัวอย่างโค้ด 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 วินาทีเท่านั้น
  • หากวิดีโอไม่มีแทร็กเสียง วิดีโอจะหยุดชั่วคราวโดยอัตโนมัติเมื่อเล่นขณะล็อกหน้าจอหรือขณะใช้แอปอื่น

ข้อบกพร่องของ Chromium

วิดีโอแบบเต็มหน้าจออัตโนมัติเมื่อหมุนอุปกรณ์

หากคุณหมุนอุปกรณ์เป็นแนวนอนขณะที่วิดีโอเล่นอยู่ในวิวพอร์ต ระบบจะเปลี่ยนการเล่นเป็นโหมดเต็มหน้าจอโดยอัตโนมัติ การหันอุปกรณ์เป็นแนวตั้งจะทำให้วิดีโอกลับไปอยู่ในโหมดหน้าต่าง

โปรดทราบว่าคุณใช้ลักษณะการทำงานนี้ด้วยตนเองได้ (ดูบทความการเล่นวิดีโอบนเว็บบนอุปกรณ์เคลื่อนที่)

วิดีโอแบบเต็มหน้าจออัตโนมัติเมื่อหมุนอุปกรณ์

การทำงานพิเศษนี้จะเกิดขึ้นเฉพาะในกรณีต่อไปนี้

  • อุปกรณ์เป็นโทรศัพท์ Android (ไม่ใช่แท็บเล็ต)
  • การวางแนวหน้าจอของผู้ใช้ได้รับการตั้งค่าเป็น "หมุนอัตโนมัติ"
  • ขนาดวิดีโออย่างน้อย 200x200 พิกเซล
  • วิดีโอใช้การควบคุมแบบเนทีฟ
  • วิดีโอกำลังเล่นอยู่
  • วิดีโออย่างน้อย 75% แสดงอยู่ (บนหน้าจอ)
  • การวางแนวหมุน 90 องศา (ไม่ใช่ 180 องศา)
  • ยังไม่มีองค์ประกอบแบบเต็มหน้าจอ
  • หน้าจอไม่ได้ล็อกโดยใช้ Screen Orientation API

ข้อบกพร่องของ Chromium