如何解决MediaDevice applyConstraints 不起作用?
我正在尝试对视频轨道应用新的约束,但它不起作用:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<Meta charset="utf-8" />
<title></title>
</head>
<body onload="onLoad();">
<p id="res1"></p>
<p id="res2"></p>
<script>
async function onLoad() {
var opts1 = {audio: true,video: {advanced: [{ width: 1280,height: 960 },]}};
var stream = await navigator.mediaDevices.getUserMedia(opts1);
var cstr1 = stream.getVideoTracks()[0].getSettings();
document.getElementById("res1").innerHTML = cstr1.width + "," + cstr1.height;
var opts2 = {audio: true,video: {advanced: [{ width: 640,height: 480 },]}};
await stream.getVideoTracks()[0].applyConstraints(opts2);
cstr2 = stream.getVideoTracks()[0].getSettings();
document.getElementById("res2").innerHTML = cstr2.width + "," + cstr2.height;
}
</script>
</body>
</html>
在应用约束之前,我希望答案是“1280,960”,之后是“640,480”。但我看到的是“1280,960”。 为什么?如何正确应用它?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)