事件发生后是否还有其他方法可以运行代码

时间:2019-06-16 09:53:39

标签: javascript performance memory-leaks dom-events webcam.js

我正在使用以下代码(如下所示)。该代码生成图像的 BASE64 编码数据,可帮助我在HTML5的 IMG标签 上显示此数据。

Webcam.on ”是一个EventListener,它将在视频直播时触发。

我使用“ 功能循环() ”,以便生成连续流的 BASE64 编码数据,以便将其发送到服务器。

我正面临一个问题,该循环持续消耗客户端RAM,并且JavaScript引擎端没有垃圾回收。

我想知道在不消耗大量RAM的情况下连续生成 BASE64 编码数据的其他方法。

var Draw_img = document.getElementById('IMG_TAG');

Webcam.set({
            width: 320,
            height: 240,
            image_format: 'jpeg',
            jpeg_quality: 90
        });
        Webcam.attach('#my_camera');


        Webcam.on('live', function() {
            (function loop() {
                Webcam.snap(function(data_uri) {
                    Draw_img.src = data_uri;
                    document.getElementById('results').innerHTML =
                        '<img src="' + data_uri + '" />';
                });
                setTimeout(loop, 1000 / FPS);
            })();
        }

0 个答案:

没有答案
相关问题