我正在创建一个 MediaStream 对象并使用 captureStream() 函数从画布向其添加视频轨道。这工作正常。
但是,我正在尝试将音频添加为与视频元素分开的轨道。我似乎找不到从 html 视频元素中获取 AudioTrack 对象的方法。
目前 Chrome 不支持 HTMLMediaElement.audioTracks。根据 mozilla 开发者网站,我应该能够使用 HTMLMediaElement.captureStream() 返回一个 MediaStream 对象,我应该能够从中检索单独的曲目,但我只是得到“captureStream 不是函数”错误。
也许我遗漏了一些非常明显的东西,但我将不胜感激任何帮助。
以下是我当前的代码:
var stream = new MediaStream();
//Works fine for adding video source
var videotracks = myCanvas.captureStream().getTracks();
var videostream = videotracks[0];
stream.addTrack(videostream);
//Currently not supported in Chrome
var audiotracks = myVid.audioTracks;
var audiostream = audiotracks[0];
stream.addTrack(audiostream);