Tại sao YouTube trên Chrome (và Firefox) lại ngốn pin Laptop?

Vấn đề cốt lõi ở đây là Hardware Acceleration

Tất cả các thiết bị hiện đại hỗ trợ phần cứng H.264 hardware-accelerated. Bao gồm tất cả các dòng điện thoại thông minh, máy tính bảng, máy tính cá nhân, Mac, và thậm chí là cả Chromebook. Khi một trình duyệt web, thậm chí Chrome – phát video H.264 trên YouTube, nó sẽ chuyển tới GPU. Ngay cả Adobe Flash hỗ trợ hardware acceleration (tăng tốc phần cứng) video H.264.

YouTube

1. HTML5, H.264 và VP9

Hiện tại YouTube dump phần lớn Flash video để phát lại video plug-in HTML5.

Tuy nhiên trình phát video HTML5 không được chuẩn hóa. Trình duyệt có thể chọn codec video mà người dùng muốn sử dụng, và không có một bộ giải mã đơn cho tất cả các trình duyệt.

Khi YouTube sử dụng Flash, nó sử dụng codec H.264 để phát lại video. Những video sử dụng codec này thường có phần đuôi mở rộng là file .mp4, và thường được gọi là video MP4.

Trên tất cả các trình duyệt Safari, Internet Explorer, Microsoft Edge, Chrome và Firefox đều hỗ trợ phát video H.264-encoded.

Trong khi Apple và Microsoft chỉ hỗ trợ phát lại video H.264 trên trình duyệt của họ, Google cũng đã phát triển codecs của riêng mình. Google mua lại các codec VP8 và tích hợpnó vào trình duyệt Chrome và Firefox.

Google cũng đang đẩy mạnh các thế hệ tiếp theo là codec VP9, hiện tại cũng được tích hợp vào Chrome và Firefox. Các file sử dụng codec này thường có phần mở rộng là .webm, và thường thì nó được gọi là file WebM.

HTML5, H.264 và VP9

2. Tại sao Google lại tạo VP8 và VP9?

Trong khi H.264 là một chuẩn thực tế (de facto industry), tuy nhiên nó cũng có một số vấn đề quan trọng. Các công nghệ cơ bản được bao phủ bởi một loạt các bằng sáng chế. Để sử dụng các công nghệ này – nếu bạn đã tích hợp công nghệ vào sản phẩm, chẳng hạn như bạn cần phải trả một khoản phí cho các danh mục đầu tư bằng sáng chế H.264.

Đó là lý do tại sao Mozilla đã giới thiệu H.264 trong một thời gian dài. Họ muốn trang web của mình dựa trên nền tảng tiêu chuẩn mở (open standard) không yêu cầu bất cứ một khoản phí nào. Google phát hành VP8 và VP9 cho phép người dùng có thể làm bất cứ điều gì mà họ muốn, không thu hổi bằng sáng chế.  

Cisco đang phải trả lệ phí cấp phép và cung cấp plug-in miễn phí cho người dùng Firefox. Firefox sẽ tự động tải plug-in này và sử dụng nó để kích hoạt hỗ trợ H.264.

3. VP8 vẫn chưa phổ biến

Điều đáng nói là Google không thành công với VP8. Vào đầu năm 2011, Google thông báo rằng sẽ loại bỏ hỗ trợ H.264 trên Chrome để hỗ trợ việc mở codec như Vp8 và Theora. Tuy nhiên cho đến giờ Google vẫn chưa làm được điều này.

Mozilla đã tích hợp thêm hỗ trợ H.264. Hiện tại H.264 là chuẩn codec de facto (chuẩn thực tế).

Đó cũng là lựa chọn duy nhất cho các trình duyệt di động. Nhiều trang web đã bổ sung video HTML5 chỉ với sự hỗ trợ H.264 và trình duyệt Chrome và Firefox sẽ phải đóng cửa nếu họ không hỗ trợ H.264.

VP8

4. Vấn đề cốt lõi: Hardware Acceleration

Vấn đề cốt lõi ở đây khi phát H.264 chính là hardware-accelerated. Điều này có nghĩa là khi phát một file video H.264 bằng bộ xử lý đồ họa (GPU) hiệu quả hơn nhiều.

Nếu hardware decoding không có sẵn, CPU sẽ phải làm tất mọi việc, do đó sẽ kém hiệu quả. Điều này có nghĩa là nếu hardware decoding có sẵn, việc phát lại video tốn ít thời gian CPU hơn, hay có thể hiểu là ít ngốn năng lượng pin hơn và nhiệt được tạo ra ít hơn.

Tất cả các thiết bị hiện đại hỗ trợ phần cứng H.264 hardware-accelerated. Bao gồm tất cả các dòng điện thoại thông minh, máy tính bảng, máy tính cá nhân, Mac, và thậm chí là cả Chromebook. Khi một trình duyệt web, thậm chí Chrome – phát video H.264, nó sẽ chuyển tới GPU. Ngay cả Adobe Flash hỗ trợ hardware acceleration (tăng tốc phần cứng) video H.264.

Tuy nhiên không có phần cứng nào để tăng tốc video VP8 và VP9.

Hardware Acceleration

5. Làm thế nào để phát video YouTube hiệu quả hơn?

Cũng giống như câu chuyện con gà và quả trứng, các nhà sản xuất sẽ không thể thực hiện hardware-accelerated (tăng tốc phần cứng) VP9.

Google giải quyết vấn đề này bằng cách thêm VP8 và VP9 vào Chrome và thông báo cho YouTube hỗ trợ video VP9 và VP8 trên trình duyệt Chrome. Ngoài ra YouTube cũng có thể hỗ trợ videoVP8 và VP9 trên trình duyệt Firefox.

Điều này có thể giúp người dùng tiết kiệm thời gian tải về, nhưng nó cũng đồng nghĩa với việc YouTube sẽ ngốn nhiều năng lượng pin và các chu kỳ CPU trên trình duyệt Chrome. Trên các thiết bị có CPU chậm, khi phát video có thể bị gián đoạn.

Để phát lại video hiệu quả hơn, bạn có thể chuyển sang sử dụng trình duyệt Safari, Microsoft, Edge hoặc Internet Explorer. Tuy nhiên bạn có thể cài đặt tiện ích mở rộng h264ify trên trình duyệt Chrome, tiện ích mở rộng này sẽ buộc Chrome yêu cầu phát video H.264 trên YouTube.

Tải tiện ích mở rộng h264ify cho trình duyệt Chrome, tải tiện ích mở rộng h264ify cho trình duyệt  Firefox.

YouTube

6. Làm thế nào để kiểm tra xem YouTube sử dụng H.264, VP8, hoặc VP9?

Để kiểm tra codec YouTube sử dụng trên trình duyệt của bạn, kích chuột phải vào video YouTube trong quá trình phtas video, chọn “Stats for needs”. Ở bên phải mục “Mime Type” bạn sẽ nhìn thấy "video/mp4" và codec "avc" video H.264/Mp4.

YouTube

Với video VP8 và VP9, bạn sẽ nhìn thấy “video/webm” và hoặc là “vp9” hoặc “vp8”.

YouTube

Tham khảo thêm một số bài viết dưới đây:

Chúc các bạn thành công!

Thứ Tư, 27/07/2016 09:56
31 👨 484