相关疑难解决方法(0)

尝试从屏幕+麦克风录制流时收到“DOMException:由于关闭而失败”

我正在构建一个扩展程序,它也可以记录我的屏幕和麦克风音频。

\n

概述:

\n

我有 content.js,它尝试navigator.mediaDevices.getUserMedia({...连续访问我发送消息到background.js,它再次尝试访问navigator.mediaDevices.getUserMedia({...我正在录制的音频流。除此之外,我还有 popup.html,它有一个开始按钮,单击我正在录制屏幕的按钮即可。但在整个过程中我收到了错误DOMException: Failed due to shutdown

\n

另外,我知道对上述错误存在疑问(著名的Chrome 扩展 - getUserMedia 抛出“NotAllowedError:因关闭而失败”),但 \xe2\x80\x99 对我没有多大帮助。

\n

内容.js

\n
navigator.mediaDevices.getUserMedia({\n   audio: { echoCancellation: true }\n   })\n    .then((e) => { chrome.runtime.sendMessage({ from: \'success\' })})\n    .catch((e) => {console.log(e);});\n
Run Code Online (Sandbox Code Playgroud)\n

背景.js

\n
var recorder = null;\nchrome.runtime.onMessage.addListener(gotMessage);\n\nfunction gotMessage(message) {\n   if(message.from === \'success\') {\n      navigator.mediaDevices.getUserMedia({\n        audio: { echoCancellation: true }\n      })\n      .then((e) => { \n                var chunks = [];\n                var options = {\n                    mimeType: …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome google-chrome-extension getusermedia

4
推荐指数
1
解决办法
1345
查看次数

Chrome扩展麦克风捕获

我有一个browser_action扩展,用户可以按下startstop为了捕捉到一些音频输入.记录文件后,我想将其url转储到控制台中.问题是我无法访问麦克风.这是我到目前为止所尝试的:

navigator.webkitGetUserMedia- 不起作用,navigator.webkitGetUserMedia({ audio: true },...);使用MediaDeviceFailedDueToShutdown调用错误回调.我试着调查那个错误,但我发现没有什么有用的.这个错误无处可寻.

你能指导我走正确的道路吗?谢谢.

javascript audio google-chrome google-chrome-extension

1
推荐指数
1
解决办法
1803
查看次数

Chrome 扩展 - 如何定期访问网络摄像头和音频?

我正在使用一个 chrome 扩展程序,我想与我的网络摄像头集成来执行一些时髦的计算机视觉和音频 ML 操作。

通常我会做这样的事情

对于音频,

<audio id="player" controls></audio>
<script>
  const player = document.getElementById('player');

  const handleSuccess = function(stream) {
    if (window.URL) {
      player.srcObject = stream;
    } else {
      player.src = stream;
    }
  };

  navigator.mediaDevices.getUserMedia({ audio: true, video: false })
      .then(handleSuccess);
</script>
Run Code Online (Sandbox Code Playgroud)

用于网络摄像头

<video autoplay></video>

<script>
const constraints = {
  video: true
};

const video = document.querySelector('video');

navigator.mediaDevices.getUserMedia(constraints).
  then((stream) => {video.srcObject = stream});
</script>
Run Code Online (Sandbox Code Playgroud)

对于 Chrome 扩展,最好的途径是使用 background.js 文件 - 我正在努力寻找任何有关如何使用它的文档或信息。

提前致谢!

javascript webcam google-chrome-extension

1
推荐指数
1
解决办法
3034
查看次数