มีอะไรใหม่ใน WebGPU (Chrome 113)

François Beaufort
François Beaufort

หลังจากพัฒนามาหลายปี ทีม Chrome ได้ประกาศว่าตอนนี้ WebGPU รุ่นแรกพร้อมให้ใช้งานแล้วโดยค่าเริ่มต้นใน Chrome บน ChromeOS, macOS และ Windows ดูข้อมูลเพิ่มเติมได้ที่การส่ง WebGPU ของ Chrome

นอกจากนี้ ยังได้เริ่มเพิ่มเอกสารที่ครอบคลุมสำหรับ WebGPU ใน MDN

และยังมีอื่นๆ อีกมากมาย

ใช้แหล่งที่มาของ WebCodecs VideoFrame ใน importExternalTexture()

WebGPU แสดง API เพื่อสร้างออบเจ็กต์ "พื้นผิวภายนอก" ที่ทึบแสงจาก HTMLVideoElement ถึง importExternalTexture() คุณใช้ออบเจ็กต์เหล่านี้เพื่อสุ่มตัวอย่างเฟรมวิดีโอได้อย่างมีประสิทธิภาพ โดยอาจอยู่ในรูปแบบ 0 สำเนาโดยตรงจากข้อมูล YUV ของแหล่งที่มา

แต่ข้อกำหนดเริ่มต้นของ WebGPU ไม่อนุญาตให้สร้างออบเจ็กต์ GPUExternalTexture จากออบเจ็กต์ WebCodecs VideoFrame ความสามารถนี้สำคัญต่อแอปประมวลผลวิดีโอขั้นสูงที่ใช้ WebCodecs อยู่แล้วและต้องการผสานรวม WebGPU ในไปป์ไลน์การประมวลผลวิดีโอ กำลังสนทนาในปัญหา gpuweb/gpuweb#1380

เปิดใช้ฟีเจอร์

โดยค่าเริ่มต้น ฟีเจอร์นี้จะไม่เปิดใช้ใน Chrome แต่สามารถทดสอบใน Chrome 113 ได้โดยเปิดใช้ฟังก์ชันการทำงานอย่างชัดเจน คุณสามารถเปิดใช้งานในเครื่องได้โดยการเปิดใช้แฟล็ก "ฟีเจอร์สำหรับนักพัฒนาซอฟต์แวร์ WebGPU" ที่ chrome://flags/#enable-webgpu-developer-features

หากต้องการเปิดใช้กับผู้เข้าชมแอปทุกคน ขณะนี้ช่วงทดลองใช้จากต้นทางอยู่ระหว่างดำเนินการและตั้งค่าให้สิ้นสุดใน Chrome 118 (8 ธันวาคม 2023) หากต้องการเข้าร่วมช่วงทดลองใช้ ให้ลงชื่อสมัครใช้และรวมองค์ประกอบเมตาพร้อมกับโทเค็นช่วงทดลองใช้จากต้นทางในส่วนหัว HTML หรือ HTTP โปรดดูข้อมูลเพิ่มเติมในโพสต์เริ่มต้นใช้งานช่วงทดลองใช้จากต้นทาง

รหัสตัวอย่าง

// Access the GPU device.
const adapter = await navigator.gpu.requestAdapter();
const device = await adapter.requestDevice();

// Create VideoFrame from HTMLVideoElement.
const video = document.querySelector("video");
const videoFrame = new VideoFrame(video);

const texture = device.importExternalTexture({ source: videoFrame });
// TODO: Use texture in bind group creation.

ดูตัวอย่างการทดลองการอัปโหลดวิดีโอด้วย WebCodecs เพื่อทดลองเล่น

มีอะไรใหม่ใน WebGPU

รายการของทุกอย่างที่มีการพูดถึงในซีรีส์มีอะไรใหม่ใน WebGPU

Chrome 124

Chrome 123

Chrome 122

Chrome 121

Chrome 120

Chrome 119

Chrome 118

Chrome 117

Chrome 116

Chrome 115

Chrome 114

Chrome 113