我正在测试一个标签捕获API来记录包含文本到语音flash对象的网页的音频。录制网页时,播放音频消失,但在录制的文件中听起来正常。
我使用下面的MediaStream约束来录制视频和音频。
var MediaStreamConstraint = {
audio: true,
video: true,
videoConstraints: {
mandatory: {
chromeMediaSource: 'tab',
minWidth: 640,
maxWidth: 640,
minHeight: 420,
maxHeight: 420
}
}
};我是不是在流约束中遗漏了什么,或者有一些其他的解决方案?
发布于 2016-02-20 05:26:25
正如其他人所说,在回调中播放捕获的MediaStream的音频是可行的:
chrome.tabCapture.capture(MediaStreamConstraint, gotStream);
function gotStream(stream) {
window.audio = document.createElement("audio");
window.audio.src = window.URL.createObjectURL(stream);
window.audio.play()
}发布于 2015-01-29 08:30:12
请记住在清单文件中授予权限
"permissions": [
"tabCapture",
"activeTab",
...
], background.js应该是这样的:
var recorder = new MRecordRTC();
function handleCapture(stream) {
recorder.addStream(stream);
recorder.mediaType = { video: true, audio: true };
recorder.startRecording();
}
var MediaStreamConstraint = {
audio: true,
video: true,
videoConstraints: {
mandatory: {
chromeMediaSource: 'tab',
minWidth: 640,
maxWidth: 640,
minHeight: 420,
maxHeight: 420
}
}
};
function captureCurrentTab() {
chrome.tabCapture.capture(MediaStreamConstraint, handleCapture);
}
function stopCapturing() {
// stops the recording and save audio and video
}如果这些都不是这样,你可以附加更多的相关代码,因为你附加的代码看起来与我很好。
发布于 2015-07-26 14:46:25
在后台脚本的handleCapture函数中,尝试执行以下操作以继续播放:
var audio = new Audio(window.URL.createObjectURL(stream));
audio.play();
https://stackoverflow.com/questions/28186671
复制相似问题