Audio chrome';s旗

Audio chrome';s旗,audio,Audio,我正在做一个关于语音识别的项目,但我的html文件找不到麦克风。我的意思是,当我单击“开始识别”按钮时,它会弹出一个允许或拒绝访问麦克风的栏,但事实并非如此。我想我应该从中启用web音频输入chrome://flags,但是在chrome://flags 没有用于web音频输入的选项。 我该怎么办 请帮帮我 <!DOCTYPE html> <!-- To change this license header, choose License Headers in Project

我正在做一个关于语音识别的项目,但我的html文件找不到麦克风。我的意思是,当我单击“开始识别”按钮时,它会弹出一个允许或拒绝访问麦克风的栏,但事实并非如此。我想我应该从中启用web音频输入chrome://flags,但是在chrome://flags 没有用于web音频输入的选项。 我该怎么办

请帮帮我

<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
    <head>
        <title>Web Speech API</title>

        <style type="text/css">

            #controls {
                text-align: center;
            }
            #start_button {
                font-size: 16pt;
            }
            #transcript {
                color: darkred;
                font-size: 16pt;
                border: 1px solid #ccc;
                padding: 5px;
                text-align: center;
            }
            #instructions {
                color: darkblue;
                font-size: 14pt;
                text-align: center;
            }

        </style>

        <script src="http://code.jquery.com/jquery-latest.min.js"></script>

    </head>


    <body>
        <div id="transcript">&nbsp;</div>
        <br>
        <div id="instructions">&nbsp;</div>
        <div id="controls">
            <button id="start_button">Click to Start</button>
        </div>

        <script type="text/javascript">
            var finalTranscript = '';
            var recognizing = false;

            $(document).ready(function() {

                // check that your browser supports the API
                if (!('webkitSpeechRecognition' in window)) {
                    alert("Sorry, your Browser does not support the Speech API");

                } else {
                    // Create the recognition object and define the event handlers

                    var recognition = new webkitSpeechRecognition();
                    recognition.continuous = true;         // keep processing input until stopped
                    recognition.interimResults = true;     // show interim results
                    recognition.lang = 'en-GB';           // specify the language

                    recognition.onstart = function() {
                        recognizing = true;
                        $('#instructions').html('Speak slowly and clearly');
                        $('#start_button').html('Click to Stop');
                    };

                    recognition.onerror = function(event) {
                        console.log("There was a recognition error...");
                    };

                    recognition.onend = function() {
                        recognizing = false;
                        $('#instructions').html('&nbsp;');
                    };

                    recognition.onresult = function(event) {
                        var interimTranscript = '';
                        // Assemble the transcript from the array of results
                        for (var i = event.resultIndex; i < event.results.length; ++i) {
                            if (event.results[i].isFinal) {
                                finalTranscript += event.results[i][0].transcript;
                                //me sunarthsh js na to kopseis kai na pareis tis lekseis kai na allazeis auta pou thes
                            } else {
                                //console.log("event.results[i][0].transcript: " + event.results[i][0].transcript);
                                //if (event.results[i][0].transcript == "equals") {
                                    //... = "=";
                                //}
                                //else if (... == "by") {
                                    //... = "*";
                                //}
                                //else if (... == "divide") {
                                    //... = "/";
                            //}
                                //else if (... == "square") {
                                    //... = "^2";
                                //}
                                interimTranscript += event.results[i][0].transcript;
                            }
                        }
                        console.log("interim:  " + interimTranscript);
                        console.log("final:    " + finalTranscript);

                        // update the page
                        if(finalTranscript.length > 0) {
                            $('#transcript').html(finalTranscript);
                            recognition.stop();
                            $('#start_button').html('Click to Start Again');
                            recognizing = false;
                        }
                    };

                    $("#start_button").click(function(e) {
                        e.preventDefault();

                        if (recognizing) {
                            recognition.stop();
                            $('#start_button').html('Click to Start Again');
                            recognizing = false;
                        } else {
                            finalTranscript = '';
                            // Request access to the User's microphone and Start recognizing voice input
                            recognition.start();
                            $('#instructions').html('Allow the browser to use your Microphone');
                            $('#start_button').html('waiting');
                            $('#transcript').html('&nbsp;');
                        }
                    });
                }
            });
        </script>


    </body>
</html>

Web语音API
#控制{
文本对齐:居中;
}
#启动按钮{
字号:16pt;
}
#成绩单{
颜色:深色;
字号:16pt;
边框:1px实心#ccc;
填充物:5px;
文本对齐:居中;
}
#指示{
颜色:深蓝色;
字号:14pt;
文本对齐:居中;
}

点击开始 var finalTranscript=''; var=false; $(文档).ready(函数(){ //检查您的浏览器是否支持API 如果(!(窗口中的“webkitSpeechRecognition”){ 警报(“对不起,您的浏览器不支持语音API”); }否则{ //创建识别对象并定义事件处理程序 var recognition=new-webkitSpeechRecognition(); recognition.continuous=true;//继续处理输入直到停止 recognition.interimResults=true;//显示临时结果 recognition.lang='en GB';//指定语言 recognition.onstart=函数(){ 识别=正确; $(“#说明”).html(‘说得慢而清楚’); $(“#开始按钮”).html('单击以停止'); }; recognition.onerror=功能(事件){ log(“出现识别错误…”); }; recognition.onend=函数(){ 识别=错误; $(“#说明”).html(“”); }; recognition.onresult=函数(事件){ var interimTranscript=''; //从结果数组中汇编成绩单 对于(var i=event.resultIndex;i0){ $('#transcript').html(finalTranscript); 识别。停止(); $(“#开始按钮”).html('单击以重新开始'); 识别=错误; } }; $(“#开始按钮”)。单击(功能(e){ e、 预防默认值(); 如果(识别){ 识别。停止(); $(“#开始按钮”).html('单击以重新开始'); 识别=错误; }否则{ finalTranscript=''; //请求访问用户的麦克风并开始识别语音输入 识别。开始(); $(“#说明”).html('允许浏览器使用您的麦克风'); $(“#开始按钮”).html('waiting'); $('#转录本').html(''); } }); } });
您需要Web服务器为该页面提供服务,但听起来您只是想用浏览器打开HTML文件。Chrome将阻止对摄像头/麦克风的访问,除非该页面是从Web服务器提供的。您可以使用html文件所在文件夹中的命令
python-msimplehttpserver
在您的计算机上创建一个本地服务器,为页面提供服务。(假设您在MacOS/linux系统上)

有关更多信息,请参阅此答案

您应该向我们展示您正在使用的代码,并检查浏览器的JavaScript控制台是否有错误。您是指语音识别代码吗?当您的用户点击“开始记录”时运行的任何代码