gpt4 book ai didi

javascript - Chrome 扩展程序捕获选项卡音频

转载 作者:太空狗 更新时间:2023-10-29 15:14:02 26 4
gpt4 key购买 nike

我正在尝试创建一个 Chrome 扩展程序,它可以从事件选项卡捕获音频并将其发送到另一台服务器或通过 URL 访问它。

我正在使用 chrome.tabCapture.capture API并且可以成功获取标签页音频的MediaStream,但我不知道之后该做什么。

Chrome 文档没有关于 MediaStreams 的内容,所以我查看了一些文档 here并使用 JS 调试器查看可用的方法,但找不到将 MediaStream 发送到某处的方法。

最佳答案

现在可以使用 MediaRecorder 在 JS 中本地录制流。有demo here w3c 规范是 here

demo中的方法startRecording需要将window.stream设置为MediaStream实例。

// The nested try blocks will be simplified when Chrome 47 moves to Stable
var mediaRecorder;
var recordedBlobs;
window.stream = myMediaStreamInstance;
function startRecording() {
var options = {mimeType: 'video/webm', bitsPerSecond: 100000};
recordedBlobs = [];
try {
mediaRecorder = new MediaRecorder(window.stream, options);
} catch (e0) {
console.log('Unable to create MediaRecorder with options Object: ', e0);
try {
options = {mimeType: 'video/webm,codecs=vp9', bitsPerSecond: 100000};
mediaRecorder = new MediaRecorder(window.stream, options);
} catch (e1) {
console.log('Unable to create MediaRecorder with options Object: ', e1);
try {
options = 'video/vp8'; // Chrome 47
mediaRecorder = new MediaRecorder(window.stream, options);
} catch (e2) {
alert('MediaRecorder is not supported by this browser.\n\n' +
'Try Firefox 29 or later, or Chrome 47 or later, with Enable experimental Web Platform features enabled from chrome://flags.');
console.error('Exception while creating MediaRecorder:', e2);
return;
}
}
}
console.log('Created MediaRecorder', mediaRecorder, 'with options', options);

// do UI cleanup here
mediaRecorder.onstop = function() {/** stop */};
mediaRecorder.ondataavailable = function() {/** data avail */};
mediaRecorder.start(10); // collect 10ms of data
console.log('MediaRecorder started', mediaRecorder);
}
  1. https://www.w3.org/TR/mediastream-recording/
  2. https://simpl.info/mediarecorder/

关于javascript - Chrome 扩展程序捕获选项卡音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23945755/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com