Comments (4)
Hi
can you post here the result of https://jeeliz.com/demos/WebGLCoreLogger/index.html so that I can inspect what is going wrong?
The issue does not depend only on Chrome version, but also GPU drivers, OS, camera drivers… many stuffs can go wrong…
from jeelizfacefilter.
Here is the logs:
WebGLCoreLogger version 2.0.0
INFO in MediaStreamAPIHelper() - get(): constraints = {"video":{"facingMode":{"ideal":"user"},"width":{"min":480,"max":1280,"ideal":800},"height":{"min":480,"max":1280,"ideal":600}},"audio":false}
INFO in MediaStreamAPIHelper - get_raw(): videoStream got
INFO in MediaStreamAPIHelper - get_raw(): video.onloadedmetadata dispatched
INFO in MediaStreamAPIHelper - get_raw(): playPromise accepted
INFO in MediaStreamAPIHelper - get_raw(): callbackSuccess called with constraints=
{"video":{"facingMode":{"ideal":"user"},"width":{"min":480,"max":1280,"ideal":800},"height":{"min":480,"max":1280,"ideal":600}},"audio":false}
INFO in WebGLCoreLogger: VIDEO GOT! Start PlayerFF
============ INIT ContextFF ============
INFO in ContextFF: webglOptions = {"antialias":true,"alpha":true,"preserveDrawingBuffer":true,"premultipliedAlpha":true,"stencil":false,"depth":true}
INFO in ContextFF: test if WebGL2 implementation is valid...
============ BEGIN SharedContext determine_floatRTTCapability() ============
INFO in SharedContext.test_RTT(): test RTT with glInternalPixelFormat = gl.RGBA32F, glPixelType = gl.FLOAT
INFO in ShadersFF.js: compile s42
INFO in ShadersFF.js: compile s41
RTT success!
INFO in SharedContext.test_RTT(): test RTT with glInternalPixelFormat = gl.RGBA16F, glPixelType = gl.HALF_FLOAT
INFO in ShadersFF.js: compile s42
INFO in ShadersFF.js: compile s41
RTT success!
============ END SharedContext determine_floatRTTCapability() ============
============= BEGIN TextureFilteringTester init() ============
INFO in ShadersFF.js: compile s41
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA16F dataType = Uint16Array pixelType = gl.HALF_FLOAT isMipmap = true
INFO in TextureFilteringTester.test_mipmapping(): fail - read color is: {"0":255,"1":255,"2":255,"3":255,"4":255,"5":255,"6":255,"7":255,"8":255,"9":255,"10":255,"11":255,"12":255,"13":255,"14":255,"15":255}
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA16F dataType = Float32Array pixelType = gl.FLOAT isMipmap = true
INFO in TextureFilteringTester.test_mipmapping(): fail - read color is: {"0":255,"1":255,"2":255,"3":255,"4":255,"5":255,"6":255,"7":255,"8":255,"9":255,"10":255,"11":255,"12":255,"13":255,"14":255,"15":255}
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA16F dataType = Null pixelType = null isMipmap = true
INFO in TextureFilteringTester.test_mipmapping(): fail - read color is: {"0":0,"1":0,"2":0,"3":255,"4":0,"5":0,"6":0,"7":255,"8":0,"9":0,"10":0,"11":255,"12":0,"13":0,"14":0,"15":255}
WARNING in TextureFilteringTester: cannot use RGBAFloat16 at all with isMipmap= true
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA32F dataType = Float32Array pixelType = gl.FLOAT isMipmap = true
INFO in TextureFilteringTester.test_mipmapping(): fail - read color is: {"0":255,"1":255,"2":255,"3":255,"4":255,"5":255,"6":255,"7":255,"8":255,"9":255,"10":255,"11":255,"12":255,"13":255,"14":255,"15":255}
WARNING in TextureFilteringTester: cannot use RGBAFloat32 level with isMipmap= true
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA16F dataType = Uint16Array pixelType = gl.HALF_FLOAT isMipmap = false
INFO in TextureFilteringTester.test_mipmapping(): success!
INFO in TextureFilteringTester: level = RGBAFloat16 - case 2 . isMipmap = false
============= END TextureFilteringTester init() ============
INFO in ContextFF: isValidWebGL2 = true
INFO in ContextFF - init: We try to create a WebGL2 context
INFO in ContextFF - init: WebGL2 context has been initialized
INFO in SharedContext: enable_floatExtensions()
INFO in SharedContext: enable_halfFloatExtensions()
WARNING in SharedContext.enable_halfFloatExtensions(): OES_texture_half_float not found
WARNING in SharedContext.enable_halfFloatExtensions(): OES_texture_half_float_linear not found
INFO in SharedTexture: init()
============ BEGIN SharedContext determine_floatRTTCapability() ============
INFO in SharedContext.test_RTT(): test RTT with glInternalPixelFormat = gl.RGBA32F, glPixelType = gl.FLOAT
INFO in ShadersFF.js: compile s42
INFO in ShadersFF.js: compile s41
RTT success!
INFO in SharedContext.test_RTT(): test RTT with glInternalPixelFormat = gl.RGBA16F, glPixelType = gl.HALF_FLOAT
INFO in ShadersFF.js: compile s42
INFO in ShadersFF.js: compile s41
RTT success!
============ END SharedContext determine_floatRTTCapability() ============
INFO in SharedVBO : init()
INFO in SharedTexture: build random texture
INFO in ShadersFeedForward - determine_highPrecisionLevel(): precisions mantissa for lowp, mediump = 10 10
INFO in ShadersFF.js: compile s0
INFO in ShadersFF.js: compile s1
INFO in ShadersFF.js: compile s2
INFO in ShadersFF.js: compile s4
INFO in ShadersFF.js: compile s5
INFO in ShadersFF.js: compile s6
INFO in ShadersFF.js: compile s7
INFO in ShadersFF.js: compile s8
INFO in ShadersFF.js: compile s9
INFO in ShadersFF.js: compile s10
INFO in ShadersFF.js: compile s11
INFO in ShadersFF.js: compile s12
INFO in ShadersFF.js: compile s13
INFO in ShadersFF.js: compile s15
INFO in ShadersFF.js: compile s16
INFO in ShadersFF.js: compile s17
INFO in ShadersFF.js: compile s19
INFO in ShadersFF.js: compile s22
INFO in ShadersFF.js: compile s24
INFO in ShadersFF.js: compile s26
INFO in ShadersFF.js: compile s28
INFO in ShadersFF.js: compile s29
INFO in ShadersFF.js: compile s30
INFO in ShadersFF.js: compile s31
INFO in ShadersFF.js: compile s34
============= BEGIN TextureFilteringTester init() ============
INFO in ShadersFF.js: compile s41
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA16F dataType = Uint16Array pixelType = gl.HALF_FLOAT isMipmap = true
INFO in TextureFilteringTester.test_mipmapping(): fail - read color is: {"0":255,"1":255,"2":255,"3":255,"4":255,"5":255,"6":255,"7":255,"8":255,"9":255,"10":255,"11":255,"12":255,"13":255,"14":255,"15":255}
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA16F dataType = Float32Array pixelType = gl.FLOAT isMipmap = true
INFO in TextureFilteringTester.test_mipmapping(): fail - read color is: {"0":255,"1":255,"2":255,"3":255,"4":255,"5":255,"6":255,"7":255,"8":255,"9":255,"10":255,"11":255,"12":255,"13":255,"14":255,"15":255}
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA16F dataType = Null pixelType = null isMipmap = true
INFO in TextureFilteringTester.test_mipmapping(): fail - read color is: {"0":0,"1":0,"2":0,"3":255,"4":0,"5":0,"6":0,"7":255,"8":0,"9":0,"10":0,"11":255,"12":0,"13":0,"14":0,"15":255}
WARNING in TextureFilteringTester: cannot use RGBAFloat16 at all with isMipmap= true
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA32F dataType = Float32Array pixelType = gl.FLOAT isMipmap = true
INFO in TextureFilteringTester.test_mipmapping(): fail - read color is: {"0":255,"1":255,"2":255,"3":255,"4":255,"5":255,"6":255,"7":255,"8":255,"9":255,"10":255,"11":255,"12":255,"13":255,"14":255,"15":255}
WARNING in TextureFilteringTester: cannot use RGBAFloat32 level with isMipmap= true
INFO in TextureFilteringTester.test_mipmapping(): internalPixelFormat = gl.RGBA16F dataType = Uint16Array pixelType = gl.HALF_FLOAT isMipmap = false
INFO in TextureFilteringTester.test_mipmapping(): success!
INFO in TextureFilteringTester: level = RGBAFloat16 - case 2 . isMipmap = false
============= END TextureFilteringTester init() ============
Environment:
Date = Sun Mar 05 2023 09:40:48 GMT+0800 (**标准时间)
navigator.userAgent = Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36
navigator.platform = MacIntel
GPU = ANGLE (Google, Vulkan 1.3.0 (SwiftShader Device (Subzero) (0x0000C0DE)), SwiftShader driver)
INFO in WebGLCoreLogger: It should WORK YEAH!!!
============= TEST0 =============
INFO in ShadersFF.js: compile s50
INFO in ShadersFF.js: compile s51
INFO in ShadersFF.js: compile s52
INFO in NeuronLayerFeedForward - instance: spec =
INFO in NeuronLayerFeedForward - instance: spec =
INFO in NeuronLayerFeedForward - instance: spec =
INFO in ShadersFF.js: compile s4832_16_14_1_elu01
INFO in NeuronLayerFeedForward - instance: spec =
INFO in ShadersFF.js: compile s4816_16_5_3_elu01
INFO in NeuronLayerFeedForward - instance: spec =
INFO in ShadersFF.js: compile s4816_16_5_1_elu01
INFO in NeuronLayerFeedForward - instance: spec =
INFO in NeuronLayerFeedForward - instance: spec =
INFO in NeuronLayerFeedForward - instance: spec =
INFO in NeuronLayerFeedForward - create_output(): outputsCount = 16
Neural network output =
RED channel:
-0.151 -0.059 -1.217 -0.177
0.134 -0.633 1.039 -1.039
1.149 1.181 0.000 0.000
0.000 0.000 0.000 0.000
GREEN channel:
0.274 0.378 -0.334 -0.047
0.495 -0.740 1.000 -1.000
0.810 0.747 0.000 0.000
0.000 0.000 0.000 0.000
BLUE channel:
-0.077 0.011 -0.015 -0.184
-0.032 0.055 1.023 -1.023
0.682 0.439 0.000 0.000
0.000 0.000 0.000 0.000
ALPHA channel:
-0.059 -0.143 -14.373 -0.095
13.594 -14.072 1.023 -1.023
0.738 -3.662 0.000 0.000
0.000 0.000 0.000 0.000
from jeelizfacefilter.
WebGL works with Chrome, but it is not GPU-accelerated.
It is relying on Google Swiftshaders to run: GPU = ANGLE (Google, Vulkan 1.3.0 (SwiftShader Device (Subzero) (0x0000C0DE)), SwiftShader driver)
Google Swiftshaders runs on the CPU, so it is really slow.
Jeeliz FaceFilter is too demanding for Google Swiftshader, so it is very likely that Chrome will kill the WebGL context and it will then return a GL_INCOMPATIBLE
error.
Chrome fallback to swiftshaders maybe because your GPU is blacklisted, maybe drivers are deprecated or have security issues.
You can have more information about your GPU Chrome implementation by opening chrome://gpu
in the Chrome URL bar. Both WebGL1 and 2 should be hardware accelerated.
from jeelizfacefilter.
Hi @xielong any news on this issue?
from jeelizfacefilter.
Related Issues (20)
- toggle_pause can't clear last face detection data HOT 3
- Refactor the dependency HOT 10
- With the latest version of threeJS library , camera video is not rendering HOT 2
- when adding NN_DEFAULT I am getting TypeError: c.toUpperCase is not a function error HOT 1
- FaceFilter face model transparency issue HOT 3
- can i use navigator.mediaDevices.getUserMedia instead of the camera HOT 1
- how to have a delay before filter is removed HOT 2
- Not working with NextJS HOT 6
- Too much jittering when using fact filter HOT 3
- [feature request] Camera feed on an HTMLVideoElement HOT 3
- Stretched face on Android Chrome HOT 11
- Custom Image not working in facereplacement HOT 1
- README not updated for Three.js JSON HOT 1
- How could I apply face detection to still images? HOT 1
- small license question- sorry :(
- The camera can't recognize the face at a little distance HOT 2
- I have a few questions about this library HOT 16
- toggle_pause doesn't work with a specific sequence HOT 1
- Changing the neural net throws error at runtime HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jeelizfacefilter.