gpt4 book ai didi

javascript - 如何阻止 chrome 捕获标签?

转载 作者:行者123 更新时间:2023-11-29 10:41:37 25 4
gpt4 key购买 nike

我正在尝试构建一个类似于 chromecast 的 chrome 扩展。我正在使用 chrome.tabCapture成功启动音频/视频流。如何停止屏幕捕获?我想要一个停止按钮,但我不确定要调用什么来停止它。我可以停止 LocalMediaStream,但选项卡仍在捕获并且不允许我在不关闭选项卡的情况下开始新的捕获。有什么建议或者我可能错过的 api 页面吗?

最佳答案

尝试 stream.getVideoTracks()[0].stop(); 停止屏幕捕获。要记录使用 chrome.tabCapture API 捕获的流,您可以使用 RecordRTC.js

var video_constraints = {
mandatory: {
chromeMediaSource: 'tab'
}
};
var constraints = {
audio: false,
video: true,
videoConstraints: video_constraints
};

chrome.tabCapture.capture(constraints, function(stream) {
console.log(stream)
var options = {
type: 'video',
mimeType : 'video/webm',
// minimum time between pushing frames to Whammy (in milliseconds)
frameInterval: 20,
video: {
width: 1280,
height: 720
},
canvas: {
width: 1280,
height: 720
}
};
var recordRTC = new RecordRTC(stream, options);
recordRTC.startRecording();

setTimeout(function(){
recordRTC.stopRecording(function(videoURL) {
stream.getVideoTracks()[0].stop();
recordRTC.save();
});
},10*1000);
});

希望上面的代码片段对你有所帮助:)

编辑 1:更正了 RecordRTC 初始化。

关于javascript - 如何阻止 chrome 捕获标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27957726/

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