Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML5 getUserMedia不适用于科学显微镜_Javascript_Browser_Camera_Html5 Video - Fatal编程技术网

Javascript HTML5 getUserMedia不适用于科学显微镜

Javascript HTML5 getUserMedia不适用于科学显微镜,javascript,browser,camera,html5-video,Javascript,Browser,Camera,Html5 Video,我使用的是显微镜摄像头Lumenera INFINITY1-2(),从摄像头描述可以看出,它可以使用TWAIN支持集成到第三方软件包中。我试图用HTML5从网页上捕获图像,但它给了我错误。 我也试着用Adobe Flash检查视频流,但相机流显示不正确,拍摄的图像很不完整(实际上是空的) 我检查了摄像机的驱动程序,它们都安装好了,可以正常工作。本机摄像头应用程序也可以很好地捕捉图像 问题,是否可以像这样在网络浏览器中从显微镜摄像头捕获图像?浏览器将其识别为设备,但视频流不工作 请参阅下面的脚本(

我使用的是显微镜摄像头Lumenera INFINITY1-2(),从摄像头描述可以看出,它可以使用TWAIN支持集成到第三方软件包中。我试图用HTML5从网页上捕获图像,但它给了我错误。 我也试着用Adobe Flash检查视频流,但相机流显示不正确,拍摄的图像很不完整(实际上是空的)

我检查了摄像机的驱动程序,它们都安装好了,可以正常工作。本机摄像头应用程序也可以很好地捕捉图像

问题,是否可以像这样在网络浏览器中从显微镜摄像头捕获图像?浏览器将其识别为设备,但视频流不工作

请参阅下面的脚本(代码从这里获取)

先谢谢你

        window.addEventListener("load", function () {
            // [1] GET ALL THE HTML ELEMENTS
            var video = document.getElementById("vid-show"),
                canvas = document.getElementById("vid-canvas"),
                take = document.getElementById("vid-take");
            navigator.mediaDevices.getUserMedia({ video: true })
                .then(function (stream) {
                    // [3] SHOW VIDEO STREAM ON VIDEO TAG
                    video.srcObject = stream;
                    video.play();
                    take.addEventListener("click", function () {
                        // Create snapshot from video
                        var draw = document.createElement("canvas");
                        draw.width = video.videoWidth;
                        draw.height = video.videoHeight;
                        var context2D = draw.getContext("2d");
                        context2D.drawImage(video, 0, 0, video.videoWidth, video.videoHeight);
                        // Output as file
                        var anchor = document.createElement("a");
                        anchor.href = draw.toDataURL("image/png");
                        anchor.download = "webcam.png";
                        anchor.innerHTML = "Click to download";
                        canvas.innerHTML = "";
                        canvas.appendChild(anchor);
                        var imageBase64 = draw.toDataURL("image/png").replace("data:image/png;base64,", "");
                        document.getElementById("hdn_ImageByte").setAttribute("value", imageBase64);
                    });
                })
                .catch(function (err) {
                    debugger;
                    console.log(err)
                    document.getElementById("vid-controls").innerHTML = "Please enable access and attach a camera";
                });
        });
    </script>```


window.addEventListener(“加载”,函数(){
//[1]获取所有HTML元素
var video=document.getElementById(“视频显示”),
canvas=document.getElementById(“vid canvas”),
take=document.getElementById(“vid take”);
navigator.mediaDevices.getUserMedia({video:true})
.then(函数(流){
//[3]在视频标签上显示视频流
video.srcObject=流;
video.play();
take.addEventListener(“单击”),函数(){
//从视频创建快照
var draw=document.createElement(“画布”);
draw.width=video.videoWidth;
draw.height=video.videoHeight;
var context2D=draw.getContext(“2d”);
context2D.drawImage(视频,0,0,video.videoWidth,video.videoHeight);
//输出为文件
var anchor=document.createElement(“a”);
anchor.href=draw.toDataURL(“image/png”);
anchor.download=“webcam.png”;
anchor.innerHTML=“单击下载”;
canvas.innerHTML=“”;
canvas.appendChild(锚定);
var imageBase64=draw.toDataURL(“image/png”).replace(“数据:image/png;base64,”,”);
document.getElementById(“hdn_ImageByte”).setAttribute(“value”,imageBase64);
});
})
.catch(函数(err){
调试器;
console.log(错误)
document.getElementById(“vid控件”).innerHTML=“请启用访问并连接摄像头”;
});
});
```