如何解决是否可以禁用使用getDisplayMedia记录光标
我正在使用MediaStream和MediaRecorder记录我的浏览器窗口。
但是需要禁用鼠标光标的录制,因此在创建视频轨道时,我使用以下代码:
stream['input'] = await navigator.mediaDevices.getDisplayMedia({
audio: true,video: {
cursor: 'never',frameRate: 40,}
});
console.log( stream['input'].getVideoTracks()[0].getSettings() );
但是Chrome,Opera和Edge控制台会显示:
aspectRatio: 1.7777777777777777
cursor: "motion"
deviceId: "window:200730:1"
displaySurface: "window"
frameRate: 40
height: 1080
logicalSurface: true
resizeMode: "crop-and-scale"
width: 1920
但是似乎忽略了该设置,因此正在记录光标。
我可以看到在控制台中设置了frameRate约束,但是我似乎一生都无法禁用光标。
但是,firefox不会记录光标并将其显示在控制台中
frameRate: 40
height: 924
width: 1263
有没有人能成功使用Chrome,Edge和Opera完全禁用光标?
我什至尝试使用
stream['input'].getVideoTracks()[0].applyConstraints( {
video: { cursor: 'never',frameRate: 30 }
} );
不起作用的地方:-(
更新: 我可以从下面的图表中看到: https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints
仅应在Opera上支持游标约束。但是,毕竟不支持游标的getSupportedConstraints()输出。
谢谢
解决方法
在此页面底部,您将找到一个表格,该表格显示浏览器对各种“ MediaTrackConstraints”属性的支持。
https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSupportedConstraints
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>NovaNote</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="father">
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="function.js" charset="utf-8"></script>
</body>
</html>
未得到广泛支持,伤心的说
您可以使用cursor
来了解运行代码的浏览器所支持的功能。
在devtools控制台中尝试此操作,以查看浏览器可以做什么,或者更有可能,不能做什么。
getSupportedConstraints()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。