URI:
       try to fix safari flip and autoplay - webgbcam - [fork] gameboy webcam
  HTML git clone git://src.adamsgaard.dk/webgbcam
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 6a9f7cec7deb3137748e6c4f6b90f978cbb3a57f
   DIR parent 19b8afc57f939a18972ed02fd247d77f559ce4bd
  HTML Author: Erin Pinheiro <hello@mynameiser.in>
       Date:   Mon, 24 Jan 2022 22:16:44 -0300
       
       try to fix safari flip and autoplay
       
       Diffstat:
         M app.js                              |      21 ++++++++++++++-------
       
       1 file changed, 14 insertions(+), 7 deletions(-)
       ---
   DIR diff --git a/app.js b/app.js
       @@ -748,24 +748,31 @@ function initCameraDrawing() {
                        cameraVars.xOffset = 0;
                        cameraVars.yOffset = Math.floor((cameraStream.videoHeight - cameraVars.yScale) / 2);
                }
       -        console.log(cameraVars);
       -
       +        
                // canvas starts flipped for user facing camera
       -        if(settings.facingMode != 'environment') {
       +        let isSafari = navigator.vendor && navigator.vendor.indexOf('Apple') > -1 &&
       +               navigator.userAgent &&
       +               navigator.userAgent.indexOf('CriOS') == -1 &&
       +               navigator.userAgent.indexOf('FxiOS') == -1;
       +
       +        if(settings.facingMode != 'environment' && !isSafari) {
                        //cameraView.getContext('2d').setTransform(-1, 0, 0, 1, 0, 0);
                        cameraVars.flipped = true;
       -        //        cameraView.getContext('2d').scale(-1,1);
       -        //        cameraVars.xOffset *= -1;
       -        //        cameraVars.xScale *= -1;
       +                //        cameraView.getContext('2d').scale(-1,1);
       +                //        cameraVars.xOffset *= -1;
       +                //        cameraVars.xScale *= -1;
                } else {
                        cameraVars.flipped = false;
                }
       -
       +        console.log(cameraVars);
       +        
                cameraOutput.width = cameraVars.width * outputScale;
                cameraOutput.height = cameraVars.height * outputScale;
                let ctx = cameraOutput.getContext("2d");
                ctx.imageSmoothingEnabled = false;
        
       +        cameraStream.play();
       +        
                clearInterval(frameDrawing)
                frameDrawing = setInterval(drawFrame, 100);
        }