JSFiddle - React, Tailwind, and code Playground
by prankol57
HTML
<button>Get Random Data!</button>
<video autoplay></video>
CSS
video {
display: none;
}
canvas {
border: 1px solid gold;
}
JavaScript
var m = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia);
var constraints = {
video: {
mandatory: {
maxWidth: 350,
maxHeight: 350
}
},
audio: false
};
var video = document.querySelector("video"), canvas = document.createElement("canvas");
document.body.appendChild(canvas);
canvas.width = 350;
canvas.height = 350;
function start() {
m.call(navigator, constraints, function (stream) {
video.src = window.URL.createObjectURL(stream);
}, function() {
alert("An error occured. Did you deny permission?");
});
}
if (m) {
start();
} else {
alert('getUserMedia() is not supported in your browser');
}
function getRandomData() {
var ctx = canvas.getContext("2d");
ctx.drawImage(video, 0, 0);
var data = ctx.getImageData(0, 0, 350, 350).data;
var total = 0;
for (var i = 0; i < data.length; ++i) {
total += data[i];
total %= 2;
}
alert("The random number is " + total);
}
document.querySelector("button").onclick = getRandomData;