我希望通过根据用户选择(即麦克风选择)更改曲目来操纵正在运行的MediaStream。
在这里https://developer.mozilla.org/en-US/docs/Web/API/MediaStream/addTrack提到我们可以添加一个新轨道,但是在MediaStreamTrack api https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack中没有构造函数值,并且大多数属性都是“只读”。通过查看之前在StackOverflow上的较早的帖子,我了解到不支持添加新曲目,并且我还了解到在访问getUserMedia()
并启动流时会创建曲目。
我昨晚确实读过您可以添加多个视频/音频流(但没有示例),但是我不确定如何设置以及如何循环代码的布局,即< / p>
navigator.mediaDevices.getUserMedia
({
audio: true,
video:
{
width: { min: 1280, ideal: 1920 },
height: { min: 720, ideal: 1080 }
}
})
我如何遍历像这样的格式(或者除此以外如何设置格式)以正确设置设备?仅仅保留多个视频/音频轨道是否有意义?
我也在考虑重做每个流,但这似乎浪费资源,并且如果我可以通过其他方式工作的话,这是不必要的。
所以我的问题是
在运行MediaStream期间,有哪些方法/最佳方式来更改MediaStreamTracks?
是否可以自己添加/删除曲目?看起来添加轨道是内部代码,但是对于我们可以使用这些方法感到遗憾,但是似乎我们无法使用它们。似乎removeTracks可以在MediaStream中的轨道上运行,似乎添加就是问题。
如果我们无法添加曲目,我是否可以加载所有曲目并按自己的意愿进行更改,然后删除最后不需要的所有曲目?
谢谢