chrome麥克風權限_如何在Chrome擴展程序中處理麥克風輸入權限和語音識別

chrome麥克風權限

by Palash Taneja

由Palash Taneja

如何在Chrome擴展程序中處理麥克風輸入權限和語音識別 (How to handle mic input permissions and speech recognition in Chrome extensions)

This tutorial assumes that you have a basic understanding of Chrome extensions and the associated configuration files. If not, then you can refer to this article which sets up the files for this tutorial.

本教程假定您對Chrome擴展程序和相關的配置文件有基本的了解。 如果不是,那么您可以參考本文 , 該文章為本教程設置了文件。

Setting up microphone recording permissions in a Chrome extension is a gray area. There is no officially documented way to do it, and developers are forced to use a “hack” to get mic permissions for their Chrome extension.

在Chrome擴展程序中設置麥克風錄制權限為灰色區域。 目前尚無正式記錄的方法,開發人員被迫使用“ hack”來獲取其Chrome擴展程序的麥克風權限。

In this short article, we use the options.html page to get microphone permissions and use the popular annyang.js library for detecting speech from the user.

在這篇簡短的文章中,我們使用options.html頁面獲取麥克風權限,并使用流行的annyang.js 庫檢測用戶的語音。

1.創建權限觸發腳本和頁面 (1. Creating a permissions trigger script and page)

To get around Chrome’s restrictions, we use a web page from our extension like options.html andpopup.html to get mic permissions for the entire extension.

為了解決Chrome的限制,我們使用擴展程序中的網頁(如options.htmlpopup.html來獲取整個擴展程序的麥克風權限。

First, we need to create a JavaScript file to get mic permissions on a web page. I created a minimal file that requests permission to use the mic from chrome.

首先,我們需要創建一個JavaScript文件來獲取網頁上的麥克風權限。 我創建了一個最小文件,該文件請求允許使用Chrome中的麥克風。

If you’re not a fan of using JQuery, then you can embed this JS code at the end of the HTML page file that you intend to use as a permission trigger.

如果您不喜歡使用JQuery,則可以將此JS代碼嵌入打算用作權限觸發器HTML頁面文件的末尾。

For our extension, TalkToMe, we used options.html as our permission trigger page.

對于我們的擴展程序TalkToMe,我們使用options.html作為權限觸發頁面。

2.自動打開觸發頁面 (2. Opening the trigger page automagically)

The mic permission popup will only be opened if the trigger page was opened in the current browser session. Having the user manually open it everytime is bad UX. We created a background script to get around this.

僅當在當前瀏覽器會話中打開了觸發頁面時,才會打開“麥克風”權限彈出窗口。 用戶每次手動打開它都是糟糕的UX。 我們創建了一個后臺腳本來解決這個問題。

It tries to access the mic every 100 ms, and opens the permission-trigger page if the request is denied by Chrome.

它會嘗試每100毫秒訪問一次麥克風,如果Chrome拒絕了該請求,則會打開權限觸發頁面。

For the script to work, you need to add it to your manifest.json with other background scripts.

為了使腳本正常工作,您需要將其與其他后臺腳本一起添加到manifest.json

3.連接安陽進行語音識別 (3. Hooking up Annyang for speech recognition)

Annyang provides a versatile library for speech recognition, and it is 100% free to use.

安陽提供了用于語音識別的多功能庫,并且100%免費使用。

It works on a command-based structure, in that it calls functions based on the user’s speech. This feature made it a perfect fit for TalkToMe.

它在基于命令的結構上工作,它基于用戶的語音來調用函數。 此功能使其非常適合TalkToMe。

You can add the annyang.js code to a background script and start using it. Here I am showing you the Hello World example from the docs.

您可以將annyang.js代碼添加到后臺腳本中并開始使用它。 在這里,我向您展示文檔中的Hello World示例。

And ta-da, just like that you have replicated our hours of searching StackOverflow for adding mic permissions to your chrome extension.

和ta-da一樣,就像您已經復制了我們在搜索StackOverflow上花費了數小時來為chrome擴展程序添加麥克風權限一樣。

If this tutorial helped you, we’d really ?? if you could give your thoughts on our extension TalkToMe, even if you may not be a visually impaired user.

如果本教程對您有幫助,即使您可能不是視力障礙的用戶,也可以對我們的擴展TalkToMe提出您的想法,我們真的會??。

翻譯自: https://www.freecodecamp.org/news/handling-mic-input-permissions-and-speech-recognition-in-chrome-extensions-ff7e3ca84cb0/

chrome麥克風權限

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/393663.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/393663.shtml
英文地址,請注明出處:http://en.pswp.cn/news/393663.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

云計算機房架構圖,云計算架構技術與實踐

云計算架構技術與實踐從將云計算技術引入傳統數據中心所帶來的獨特商業價值角度看,重點可以從開源與節流兩個方面來衡量云計算的核心競爭力。1節流(Cost Saving)方面在業務系統搭建過程中,云計算和虛擬化使得企業及運營商的煙囪式軟件應用可以突破應用邊…

C#使用CLR/C++的DLL間接調用Native C++的DLL

C#使用CLR/C的DLL間接調用Native C的DLL 開發環境:win 7 VS2010 簡介:C#的exe使用CLR/C間接調用Native C的DLL. 第一步:創建一個C#的Console Application工程-->命名“ConsoleApplication1”。 第二步:創建一個CLR/C的工程&am…

列表輸出循環左移_python 列表推導式(經典代碼)(21)

文章首發微信公眾號,微信搜索:猿說python截止到目前為止,python基礎內容已經學習了50%左右,在學習編程過程中,我們不僅要學習python語法,同時也需要學習如何把自己代碼寫的更美觀,效率更高。一.…

leetcode100. 相同的樹(dfs)

給定兩個二叉樹,編寫一個函數來檢驗它們是否相同。如果兩個樹在結構上相同,并且節點具有相同的值,則認為它們是相同的。示例 1:輸入: 1 1/ \ / \2 3 2 3[1,2,3], [1,2,3]輸出: true### 代碼java /*** Definiti…

k8s 分發證書文件 啟動文件

接著上面的博客繼續寫 準備三臺主機 192.168.1.71 192.168.1.72 192.168.1.73 現在k8s壓縮包 我使用時1.12版本 不能下載請FQ 百度網盤提供1.12版本 https://pan.baidu.com/s/1Ty6DRaRtL-0HiTCwy5ubPA n6cy 192.168.1.71 執行 pwd -> /tmp tar -zxf kubernetes-server-lin…

如何確保您的Progressive Web App保持其Lighthouse審核分數

by Ondrej Chrastina通過Ondrej Chrastina 如何確保您的Progressive Web App保持其Lighthouse審核分數 (How to make sure your Progressive Web App keeps its Lighthouse audit score) I bet most of you have implemented a web application before. Some of you may even …

計算機字節換算在線,計算機字節換算(計算機字節換算器)

8bit(位)1Byte(字節)1024Byte(字節)1KB1024KB1MB1024MB1GB 換算率約等于1000(1024),從大到小順序為T、GB、MB(兆Zhao)、KB、B再小就是位了。.字節(Byte 發音:/‘bait/):字節是通過網絡傳輸信息(或在硬盤或內存中存儲信息)的單位。 在ASCII碼中…

Robot Framework自動化測試(一)--- 安裝

所需環境: 1、python 2、robotframework  https://pypi.python.org/pypi/robotframework/2.8.5#downloads 3、wxPython ——>是python的一個GUI庫,下面要安裝的RIDE是基于這個庫開發的,所以要安裝 地址:https://wxpython.org…

leetcode1296. 劃分數組為連續數字的集合(貪心算法)

給你一個整數數組 nums 和一個正整數 k,請你判斷是否可以把這個數組劃分成一些由 k 個連續數字組成的集合。 如果可以,請返回 True;否則,返回 False。 示例 1: 輸入:nums [1,2,3,3,4,4,5,6], k 4 輸出&…

linux_svn命令操作

轉至元數據起始 linux下svn命令大全 1、將文件checkout到本地目錄 svn checkout path(path是服務器上的目錄)例如:svn checkout svn://192.168.1.1/pro/domain簡寫:svn co 2、往版本庫中添加新的文件 svn add file例如&#xff1a…

用python玩轉數據慕課答案第四周_大學慕課用Python玩轉數據章節測試答案

大學慕課用Python玩轉數據章節測試答案更多相關問題滲透泵型片劑控釋的基本原理是A.減小溶出B.減慢擴散C.片劑膜外滲透壓大于片劑膜內,將片內藥物從語義學批評是什么?As usual, _____ man was given his individual as…

html怎么讓五張照片并排顯示,最考驗右腦5張照片,30s內能發現問題都是牛人,PS做不出來...

我們的大腦認定這種空間不可能存在,然而卻要忍受眼睛親眼所見其存在的苦惱。“眼見為實”已經成為錯誤的判斷標準,于是你會感到很過癮,顛覆的快感。事實上,通過色彩,不僅可以考量人們的視力,更能判斷大腦水…

aws v2.2.exe_如何使用Python 3.6在AWS EC2上創建運行uWSGI,NGINX和PostgreSQLDjango服務器...

aws v2.2.exeby Sumeet Kumar通過Sumeet Kumar 如何使用Python 3.6在AWS EC2上創建運行uWSGI,NGINX和PostgreSQLDjango服務器 (How to create a Django server running uWSGI, NGINX and PostgreSQL on AWS EC2 with Python 3.6) Getting a server up and running …

Cloud in Action: Install OpenStack Ocata from scratch

Cloud in Action: Install OpenStack Ocata from scratch薛國鋒 xueguofeng2011gmail.comOpenStack can control and manage large pools of compute, storage, and networking resources throughout a datacenter, througha dashboard or via the OpenStack API, and work…

jQUery中closest和parents的主要區別是

①,前者從當前元素開始匹配尋找,后者從父元素開始匹配尋找;②,前者逐級向上查找,直到發現匹配的元素后就停止了,后者一直向上查找直到根元素,然后把這些元素放進一個臨時集合中,再用…

leetcode1276. 不浪費原料的漢堡制作方案(貪心)

圣誕活動預熱開始啦,漢堡店推出了全新的漢堡套餐。為了避免浪費原料,請你幫他們制定合適的制作計劃。 給你兩個整數 tomatoSlices 和 cheeseSlices,分別表示番茄片和奶酪片的數目。不同漢堡的原料搭配如下: 巨無霸漢堡&#xff…

CentOS7配置ip

CentOS7配置ip 安裝完centos7,重啟就可以與linux第一次接觸了。我是最小化安裝,所以沒有圖形界面。登錄介面顯示發型版本和內核版本: CentOS Linux 7(Core) Kernel 3.10.0-862.e17.x86_64 on an x86_64 下面就是登錄提示localhost login。在后面輸入roo…

react開發模式_通過開發帶有精靈動畫的游戲來學習高級React模式

react開發模式by Pavel Vlasov通過帕維爾弗拉索夫(Pavel Vlasov) 通過開發帶有精靈動畫的游戲來學習高級React模式 (Learn advanced React patterns by developing a game with sprite animation) Have you ever wanted to learn some advanced React patterns? Or build you…

js腳本鎖計算機軟件,JS使用插件cryptojs進行加密解密數據實例

本文實例講述了JS使用插件cryptojs進行加密解密數據。分享給大家供大家參考,具體如下:Testing websocketsvar key BOTWAVEE;//CBC模式加密function encryptByDESModeCBC(message) {var keyHex CryptoJS.enc.Utf8.parse(key);var ivHex CryptoJS.enc.U…

nginx、Apache、IIS服務器解決 413 Request Entity Too Large問題方法匯總

一、nginx服務器 nginx出現這個問題的原因是請求實體太長了。一般出現種情況是Post請求時Body內容Post的數據太大了,如上傳大文件過大、POST數據比較多。處理方法 在nginx.conf增加 client_max_body_size的相關設置, 這個值默認是1m,可以增加到8m以增加提…