कई सालों तक डेवलपमेंट के बाद, Chrome टीम ने एलान किया कि WebGPU की पहली रिलीज़ अब डिफ़ॉल्ट रूप से ChromeOS, macOS, और Windows पर Chrome में उपलब्ध है. ज़्यादा जानने के लिए, Chrome WebGPU भेजता है देखें.
हमने एमडीएन पर WebGPU के लिए ज़्यादा जानकारी वाले दस्तावेज़ जोड़ना भी शुरू कर दिया है.
और भी बहुत कुछ है.
importExternalTexture()
में WebCodecs VideoFrame
सोर्स का इस्तेमाल करें
WebGPU, HTMLVideoElement
से importExternalTexture()
के ज़रिए ओपेक "बाहरी टेक्सचर" ऑब्जेक्ट बनाने के लिए, एपीआई दिखाता है. इन ऑब्जेक्ट का इस्तेमाल करके, वीडियो फ़्रेम को बेहतर तरीके से सैंपल के तौर पर लिया जा सकता है. ऐसा, सोर्स YUV डेटा से सीधे तौर पर 0-कॉपी का इस्तेमाल करके किया जा सकता है.
हालांकि, शुरुआती 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 125
Chrome 124
- रीड-ओनली और रीड-राइट स्टोरेज टेक्सचर
- सर्विस वर्कर और कर्मचारियों से जुड़ी सहायता
- अडैप्टर की जानकारी से जुड़े नए एट्रिब्यूट
- गड़बड़ियां ठीक करना
- Dawn के बारे में अपडेट
Chrome 123
- DP4a में पहले से मौजूद फ़ंक्शन, WGSL में काम करते हैं
- WGSL में बिना पाबंदी वाले पॉइंटर पैरामीटर
- WGSL में डिफ़रेंसिंग कंपोज़िट के लिए सिंटैक्स शुगर
- स्टेंसिल और गहराई के पहलुओं के लिए अलग-अलग रीड-ओनली मोड
- Dawn के बारे में अपडेट
Chrome 122
- कपैसिटी मोड की मदद से पहुंच बढ़ाना (यह सुविधा अभी डेवलप की जा रही है)
- maxVertexAttributes की सीमा बढ़ाएं
- Dawn के बारे में अपडेट
Chrome 121
- Android पर WebGPU की मदद करना
- Windows पर शेडर कंपाइलेशन के लिए, FXC के बजाय DXC का इस्तेमाल करना
- कंप्यूट और रेंडर पास में टाइमस्टैंप क्वेरी
- शेडर मॉड्यूल के लिए डिफ़ॉल्ट एंट्री पॉइंट
- Display-p3 को जीपीयूएक्सटर्नल टेक्सचर कलर स्पेस के तौर पर इस्तेमाल करें
- मेमोरी के हीप की जानकारी
- Dawn के बारे में अपडेट
Chrome 120
- WGSL में 16-बिट फ़्लोटिंग-पॉइंट वैल्यू के साथ काम करता है
- सीमाएं पूरी करें
- डेप्थ-स्टेंसिल के स्टेटस में बदलाव
- अडैप्टर की जानकारी से जुड़े अपडेट
- टाइमस्टैंप क्वेरी को कैलकुलेट करना
- वसंत की सफ़ाई से जुड़ी सुविधाएं
Chrome 119
- फ़िल्टर की जा सकने वाली 32-बिट फ़्लोट टेक्सचर
- unorm10-10-10-2 वर्टेक्स फ़ॉर्मैट
- debug10a2uint टेक्सचर फ़ॉर्मैट
- Dawn के बारे में अपडेट
Chrome 118
copyExternalImageToTexture()
में HTMLImageElement और ImageData से जुड़ी सहायता- रीड-राइट और रीड-ओनली स्टोरेज टेक्सचर के लिए एक्सपेरिमेंट के तौर पर काम करने की सुविधा
- Dawn के बारे में अपडेट
Chrome 117
- वर्टेक्स बफ़र को अनसेट करें
- बाइंड ग्रुप को अनसेट करें
- डिवाइस खो जाने पर, एक साथ काम नहीं करने वाली पाइपलाइन बनने से जुड़ी गड़बड़ियों की आवाज़ बंद करना
- SPIR-V शेडर मॉड्यूल बनाने के बारे में अपडेट
- डेवलपर के अनुभव को बेहतर बनाना
- अपने-आप जनरेट हुए लेआउट की मदद से पाइपलाइन को कैश मेमोरी में सेव करना
- Dawn के बारे में अपडेट
Chrome 116
- WebCodecs इंटिग्रेशन
- जीपीयू अडैप्टर
requestDevice()
से मिला खोया हुआ डिवाइस - अगर
importExternalTexture()
कॉल किया जा रहा है, तो वीडियो बिना किसी रुकावट के चलाएं - खास जानकारी का पालन
- डेवलपर के अनुभव को बेहतर बनाना
- Dawn के बारे में अपडेट
Chrome 115
- इसके साथ काम करने वाले WGSL भाषा एक्सटेंशन
- Direct3D 11 के लिए एक्सपेरिमेंटल सहायता
- एसी पावर पर डिफ़ॉल्ट रूप से डिस्क्रीट जीपीयू पाएं
- डेवलपर के अनुभव को बेहतर बनाना
- Dawn के बारे में अपडेट
Chrome 114
- JavaScript को ऑप्टिमाइज़ करना
- कॉन्फ़िगर नहीं किए गए कैनवस पर getCurrentTexture(), अमान्य राज्य गड़बड़ी देता है
- WGSL से जुड़े अपडेट
- Dawn के बारे में अपडेट