热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

navigator.mediaDevices.getUserMedia对移动端浏览器的兼容性

我写的语音识别用的在safari上可以弹出访问麦克风的权限框,但是在uc上,chrome上,和firefox上连框都不弹,是浏览器默认禁止了吗,我看api也是支持的,下面是代码

我写的语音识别用的在safari上可以弹出访问麦克风的权限框,但是在uc上,chrome上,和firefox上连框都不弹,是浏览器默认禁止了吗,我看api也是支持的,
下面是代码





1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
function gotStream(stream) {

    var audioCOntext= new AudioContext();

    inputPoint = audioContext.createGain();



    // Create an AudioNode from the stream.

    realAudioInput = audioContext.createMediaStreamSource(stream);

    audioInput = realAudioInput;

    audioInput.connect(inputPoint);



    analyserNode = audioContext.createAnalyser();

    analyserNode.fftSize = 2048;

    inputPoint.connect( analyserNode );



    audioRecorder = new Recorder( inputPoint );



    zeroGain = audioContext.createGain();

    zeroGain.gain.value = 0.0;

    inputPoint.connect( zeroGain );

    zeroGain.connect( audioContext.destination );

    updateAnalysers();

}

function getUserMedia(constrains,success,error){

    if(navigator.mediaDevices.getUserMedia){

        //最新标准API

        navigator.mediaDevices.getUserMedia(constrains).then(success).catch(error);

    } else if (navigator.webkitGetUserMedia){

        //webkit内核浏览器

        navigator.webkitGetUserMedia(constrains).then(success).catch(error);

    } else if (navigator.mozGetUserMedia){

        //Firefox浏览器

        navagator.mozGetUserMedia(constrains).then(success).catch(error);

    } else if (navigator.getUserMedia){

        //旧版API

        navigator.getUserMedia(constrains).then(success).catch(error);

    }

}



function initAudio() {

    if (navigator.mediaDevices.getUserMedia || navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia){

        //调用用户媒体设备,访问摄像头

            getUserMedia({

                audio:true

            },gotStream,error);

        } else {

            alert("你的浏览器不支持访问用户媒体设备");

        }

}

function error(error){

    console.log('访问媒体设备失败:',error.name,error.message)

}



window.addEventListener('load', initAudio );



   



推荐阅读
author-avatar
背着单反看世界
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有