การอัปเดตเสียง/วิดีโอใน Chrome 61

François Beaufort
François Beaufort

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

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

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

แผงบันทึกในหน้า chrome://media-internals
รูปที่ 1 แผงบันทึกในหน้า 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;
      }
    });

คุณอาจต้องลดคุณภาพของสตรีมวิดีโอเมื่อปิดใช้แทร็กวิดีโอ ซึ่งทำได้ง่ายๆ เพียงใช้ API สำหรับระดับการเข้าถึงหน้าเว็บตามที่แสดง ด้านบนเพื่อตรวจหาเมื่อมีการซ่อนหน้าเว็บ

และมีข้อจำกัดดังนี้

  • การเพิ่มประสิทธิภาพนี้จะมีผลกับวิดีโอที่มีระยะห่างคีย์เฟรมน้อยกว่า 5 วินาทีเท่านั้น
  • หากวิดีโอไม่มีแทร็กเสียง ระบบจะ หยุดวิดีโอชั่วคราวโดยอัตโนมัติเมื่อเล่นในเบื้องหลัง

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

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

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

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

วิดีโอจะแสดงแบบเต็มหน้าจอโดยอัตโนมัติเมื่อหมุนอุปกรณ์
รูปที่ 2 วิดีโอจะแสดงแบบเต็มหน้าจอโดยอัตโนมัติเมื่อหมุนอุปกรณ์

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

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

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