Javascript 如何替换URL.createObjectURL

Javascript 如何替换URL.createObjectURL,javascript,Javascript,我想在以下代码中替换URL.createObjectURL,因为它已被弃用。问题是我不知道用什么和如何替换它 这是我的密码: var canvas = document.getElementById('canvas'); var context = canvas.getContext('2d'); var video = document.getElementById('video'); var mediaConfig = { video: true };

我想在以下代码中替换URL.createObjectURL,因为它已被弃用。问题是我不知道用什么和如何替换它

这是我的密码:

    var canvas = document.getElementById('canvas');
    var context = canvas.getContext('2d');
    var video = document.getElementById('video');
    var mediaConfig =  { video: true };
    var errBack = function(e) {
        console.log('An error has occurred!', e)
    };
    if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
        navigator.mediaDevices.getUserMedia(mediaConfig).then(function(stream) {
            video.src = window.URL.createObjectURL(stream);
            video.play();
        });
    }

    else if(navigator.getUserMedia) {
        navigator.getUserMedia(mediaConfig, function(stream) {
            video.src = stream;
            video.play();
        }, errBack);
    } else if(navigator.webkitGetUserMedia) {
        navigator.webkitGetUserMedia(mediaConfig, function(stream){
            video.src = window.webkitURL.createObjectURL(stream);
            video.play();
        }, errBack);
    } else if(navigator.mozGetUserMedia) {
        navigator.mozGetUserMedia(mediaConfig, function(stream){
            video.src = window.URL.createObjectURL(stream);
            video.play();
        }, errBack);
    }

    document.getElementById('snap').addEventListener('click', function() {
        context.drawImage(video, 0, 0, width, height);
    });
检查:

注意:使用MediaStream对象(不要与MediaSource混淆)作为此方法的输入正在被弃用。目前正在讨论是否应该彻底删除它。因此,您应该尽量避免在MediaStreams中使用此方法,而应该使用HTMLMediaElement.srcObject


它明确告诉您要使用。

函数createObjectURL()已弃用

替换此项:

video.src = window.URL.createObjectURL(stream);
为此:

video.srcObject = stream;

由于大多数chrome和Firefox都不赞成使用某些URL调用,而不是使用window.URL.createObjectURL,
您应该使用HTMLMediaElement.srcObject

似乎很有启发性(将
srcObject
属性设置为流)请添加完整答案,而不是仅提供链接答案。