0
私はpromiseとしてnavigator.getUserMedia()を実装したいと思います。Navigator.getUserMedia()を約束として使用します。
約束が解決されたら、私はいくつかの成功コールバックを行い、拒否したら失敗コールバックを実行します。
私はpromiseとしてnavigator.getUserMedia()を実装したいと思います。Navigator.getUserMedia()を約束として使用します。
約束が解決されたら、私はいくつかの成功コールバックを行い、拒否したら失敗コールバックを実行します。
は、この方法を試してください。
function getUserMedia() {
var constraints = {
video: true,
audio: true
};
var deferred = jQuery.Deferred();
if (location.protocol !== "https:") {
alert('WARNING: Add https:// before the current url to capture video through WebCam');
deferred.reject(false);
return deferred.promise();
} else {
navigator.getUserMedia = navigator.getUserMedia ||
navigator.webkitGetUserMedia ||
navigator.mozGetUserMedia;
if (navigator.getUserMedia) {
navigator.getUserMedia(constraints, function(stream) {
stream.stop = function() {
this.getVideoTracks().forEach(function (track) {
track.stop();
track.enabled = !track.enabled;
});
this.getAudioTracks().forEach(function (track) {
track.stop();
track.enabled = !track.enabled;
});
};
deferred.resolve(stream);
}, function(err) {
deferred.reject(err);
});
return deferred.promise();
} else {
console.log("getUserMedia not supported");
}
}