WebGPU (Chrome 113) में नया क्या है

François Beaufort
François Beaufort

कई सालों के डेवलपमेंट के बाद, Chrome टीम ने यह एलान किया है कि WebGPU का पहला वर्शन अब ChromeOS, macOS, और Windows पर Chrome में डिफ़ॉल्ट रूप से उपलब्ध है. ज़्यादा जानने के लिए, Chrome ships WebGPU लेख पढ़ें.

हमने MDN पर WebGPU के लिए ज़्यादा जानकारी देने वाला दस्तावेज़ भी जोड़ना शुरू कर दिया है.

इसके अलावा, और भी कई सुविधाएं हैं.

importExternalTexture() में WebCodecs VideoFrame सोर्स का इस्तेमाल करना

WebGPU, HTMLVideoElement से importExternalTexture() तक ओपेक "बाहरी टेक्सचर" ऑब्जेक्ट बनाने के लिए, एक एपीआई उपलब्ध कराता है. इन ऑब्जेक्ट का इस्तेमाल करके, वीडियो फ़्रेम को कम समय में और बेहतर तरीके से सैंपल किया जा सकता है. साथ ही, सोर्स YUV डेटा से सीधे तौर पर कॉपी किए बिना भी सैंपल किया जा सकता है.

हालांकि, WebGPU के शुरुआती स्पेसिफ़िकेशन में, WebCodecs VideoFrame ऑब्जेक्ट से GPUExternalTexture ऑब्जेक्ट बनाने की अनुमति नहीं है. यह सुविधा, वीडियो प्रोसेसिंग के उन ऐप्लिकेशन के लिए ज़रूरी है जो पहले से ही WebCodecs का इस्तेमाल करते हैं. साथ ही, वीडियो प्रोसेसिंग पाइपलाइन में WebGPU को इंटिग्रेट करना चाहते हैं. फ़िलहाल, इस बारे में gpuweb/gpuweb#1380 समस्या में चर्चा चल रही है.

इस सुविधा को चालू करना

डिफ़ॉल्ट रूप से, Chrome में यह सुविधा चालू नहीं होती. हालांकि, Chrome 113 में इसे आज़माया जा सकता है. इसके लिए, आपको इस सुविधा को चालू करना होगा. इसे स्थानीय तौर पर चालू करने के लिए, chrome://flags/#enable-webgpu-developer-features पर "WebGPU डेवलपर सुविधाएं" फ़्लैग चालू करें.

इसे अपने ऐप्लिकेशन पर आने वाले सभी लोगों के लिए चालू करने के लिए, फ़िलहाल ऑरिजिन ट्रायल चल रहा है. यह Chrome 118 (8 दिसंबर, 2023) में खत्म हो जाएगा. इस ट्रायल में हिस्सा लेने के लिए, साइन अप करें. इसके बाद, एचटीएमएल या एचटीटीपी हेडर में से किसी एक में, ऑरिजिन ट्रायल टोकन वाला मेटा एलिमेंट शामिल करें. ज़्यादा जानकारी के लिए, ऑरिजिन ट्रायल शुरू करना पोस्ट पढ़ें.

नमूना कोड

// 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 140

Chrome 139

Chrome 138

Chrome 137

Chrome 136

Chrome 135

Chrome 134

Chrome 133

Chrome 132

Chrome 131

Chrome 130

Chrome 129

Chrome 128

Chrome 127

Chrome 126

Chrome 125

Chrome 124

Chrome 123

Chrome 122

Chrome 121

Chrome 120

Chrome 119

Chrome 118

Chrome 117

Chrome 116

Chrome 115

Chrome 114

Chrome 113