diff --git a/extensions/proposals/WEBGL_webcodecs_video_frame/extension.xml b/extensions/proposals/WEBGL_webcodecs_video_frame/extension.xml
index f8dc823fbb..23cbc02e62 100644
--- a/extensions/proposals/WEBGL_webcodecs_video_frame/extension.xml
+++ b/extensions/proposals/WEBGL_webcodecs_video_frame/extension.xml
@@ -37,10 +37,10 @@
importVideoFrame
imports a VideoFrame
from WebCodecs, and returns
- a WebGLWebCodecsVideoFrameHandle
. If the VideoFrame
is not backed
- by GPU, a TypeError exception will be raised. The VideoFrame
keeps being locked
- until releaseVideoFrame
is called. While being locked, WebCodecs must NOT
- manipulate the VideoFrame
anymore.
+ a WebGLWebCodecsVideoFrameHandle
. If the VideoFrame
can't be
+ imported, a TypeError exception will be raised. The VideoFrame
may keep being
+ locked until releaseVideoFrame
is called. While being locked, WebCodecs must
+ NOT manipulate the VideoFrame
anymore.
Next we can assemble the GLSL fragment shader to access the video frame textures.
- // Note: there could many textures for 1 VideoFrame. To be simple the sample here assumes only + // Note: there could be many textures for 1 VideoFrame. To be simple the sample here assumes only // 1 texture. let texInfo0 = videoFrameHandle.textureInfoArray[0]; let fSource = @@ -127,6 +127,7 @@ dictionary WebGLWebCodecsVideoFrameHandle { gl.clearColor(0.0, 0.0, 0.0, 0.0); gl.clear(gl.COLOR_BUFFER_BIT); gl.drawArrays(gl.TRIANGLES, 0, 6); + gl.bindTexture(texInfo0.target, null); ext.releaseVideoFrame(webcodecsVideoFrame);@@ -146,5 +147,9 @@ dictionary WebGLWebCodecsVideoFrameHandle {