You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取用户实际选择的屏幕共享类型?

获取用户实际选择的屏幕共享类型

当然可以,你可以通过视频轨道的getSettings()方法获取用户实际选择的共享类型。当成功获取到显示流后,取出视频轨道并调用该方法,返回的配置对象中displaySurface字段会明确标识用户的选择:

  • monitor:用户选择了整个屏幕
  • window:用户选择了某个应用窗口
  • browser:用户选择了浏览器标签页

具体代码示例如下:

const stream = await navigator.mediaDevices.getDisplayMedia({
  video: { displaySurface: "monitor" },
});

// 获取第一个视频轨道(屏幕共享流通常只有一个视频轨道)
const videoTrack = stream.getVideoTracks()[0];
// 获取轨道的实际配置信息
const trackSettings = videoTrack.getSettings();

// 输出用户实际选择的共享类型
console.log(trackSettings.displaySurface);

需要注意的是,只有在用户完成授权并成功获取媒体流后,才能调用getSettings()拿到准确的displaySurface值,该属性在主流浏览器(Chrome、Edge、Firefox等)中均已支持。

内容的提问来源于stack exchange,提问作者kaan_atakan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 09:05:01