Javascript 使用屏幕Chrome扩展捕获音频
在chrome extension中,我使用了下面的行来捕获屏幕Javascript 使用屏幕Chrome扩展捕获音频,javascript,google-chrome-extension,screen,html5-audio,Javascript,Google Chrome Extension,Screen,Html5 Audio,在chrome extension中,我使用了下面的行来捕获屏幕 chrome.desktopCapture.chooseDesktopMedia 通过这个屏幕(桌面)流工作正常,但是当我尝试使用 constraints = { audio: { mandatory: { chromeMediaSource: 'system', chromeMediaSourceId: audioSource, } }, video: {
chrome.desktopCapture.chooseDesktopMedia
通过这个屏幕(桌面)流工作正常,但是当我尝试使用
constraints = {
audio: {
mandatory: {
chromeMediaSource: 'system',
chromeMediaSourceId: audioSource,
}
},
video: {
mandatory: {
chromeMediaSource: 'desktop',
chromeMediaSourceId: event.data.sourceId,
maxWidth: window.screen.width,
maxHeight: window.screen.height,
maxFrameRate: 3
},
optional: [
{ googLeakyBucket: true },
{ googTemporalLayeredScreencast: true }
]
}
};
注意:已经测试了事件.data.sourceId
以代替音频块中的音频源
音频不工作,我可以从流中看到(在控制台中)音频媒体曲目
您所指的扩展使用平台特定代码(ffmpeg)作为位于_platform_specific/x86-64/video_encoder_main-x86-64.nexe而非WebRTC/HTML5中的二进制文件
[编辑]以上是在Linux 64位上的我通过在
数据源
数组中添加音频
修复了这个问题,该数组传递到chrome.desktopCapture.chooseDesktopMedia
i、 e.
chrome.desktopCapture.chooseDesktopMedia(['screen','audio'],function(id){…})代码>我很确定这不是真的。您提到的二进制文件是一个(高效的)编码器-但是,看到沙盒有多重,我怀疑它是否能够访问屏幕/音频捕获。消息来源确实提到了WebRTC。伙计们,你们找到这个问题的答案了吗?无法使音频工作。