Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome extension Chrome扩展:Can';t使chrome.desktopCapture.chooseDesktopMedia捕获窗口音频_Google Chrome Extension_Web Audio Api - Fatal编程技术网

Google chrome extension Chrome扩展:Can';t使chrome.desktopCapture.chooseDesktopMedia捕获窗口音频

Google chrome extension Chrome扩展:Can';t使chrome.desktopCapture.chooseDesktopMedia捕获窗口音频,google-chrome-extension,web-audio-api,Google Chrome Extension,Web Audio Api,我正在尝试使用chrome.desktopCapture.chooseDesktopMediaAPI从扩展窗口捕获音频 我正在从popup.js页面发送捕获请求 舱单: { "background": { "scripts": [ "background.js" ] }, "browser_action": { "default_icon": "style/icons/icon16.png", "default_title": "__MSG_name__" }, "def

我正在尝试使用
chrome.desktopCapture.chooseDesktopMedia
API从扩展窗口捕获音频

我正在从popup.js页面发送捕获请求

舱单:

{
"background": {
    "scripts": [ "background.js" ]
},
"browser_action": {
    "default_icon": "style/icons/icon16.png",
    "default_title": "__MSG_name__"
},
"default_locale": "en",
"description": "__MSG_description__",
"icons": {
    "128": "style/icons/icon128.png"
},
"manifest_version": 2,
"name": "__MSG_extName__",
"permissions": ["activeTab","desktopCapture"],
"offline_enabled": true,
"short_name": "__MSG_short__",
"version": "1.0.9"
}

功能:

chrome.desktopCapture.chooseDesktopMedia(["window"], function (streamId) {
        var audioStream = navigator.mediaDevices.getUserMedia({
            audio: true,
            chromeMediaSource: 'desktop',
            chromeMediaSourceId: streamId
        });
        audioStream.then(function (mediaStream) {...}
我尝试使用不同的参数,但每当我忽略:
audio:true
,我就会得到:

未能在“MediaDevices”上执行“getUserMedia”:至少有一个 必须请求音频和视频(…)

下面的代码没有出现在API中,但我在这里读过并尝试过,前面的错误也适用于它:

audio: {
  mandatory: {
       chromeMediaSource: 'desktop',
       chromeMediaSourceId: streamId
       }
     }
当我使用
audio:true
时,它会录制麦克风,即使我获得了“源窗口选择”对话框


我做错了什么

在对代码进行了一点实验之后,在我看来,捕获系统音频的唯一方法是通过视频参数。我无法使用音频参数捕获非麦克风音频。应用程序也在做同样的事情-系统音频通过视频录制。

看起来不支持录制窗口音频,只支持选项卡和屏幕。您还需要在捕获类型数组中传递“音频”。@DanielHerr谢谢,在我添加“音频”参数后,“屏幕”参数会记录系统输出吗?另外,强制参数是否正确?请检查此示例的来源:@DanielHerr我会的,再次感谢!查看该源代码,
[“窗口”]
是唯一不允许音频捕获的选择器。选项卡和屏幕都可以。好奇。现在似乎只有音频捕获存在问题: