如何确定 MediaStream 轨道是“屏幕”轨道而不是常规网络摄像头视频轨道? MedaStreamTrack 类型是两者的“视频”
答案 0 :(得分:2)
假设您从 getUserMedia()
或 getDisplayMedia()
获取这些流,最好的方法可能是将您从何处获取它们的位置存储在单独的地图中。每个轨道都有一个 id
字段,因此您可以将其用作地图中的键。
如果您是通过 webRTC 连接获得的,最好通过数据通道从原始对等方请求该信息。
还有一点相关的是 MediaStreamTrack.label
包含它显示的设备的名称,其中可能包含用于屏幕共享的“屏幕”,至少在 Chrome 中是这样。但我不建议依赖它,因为它高度依赖于特定的浏览器版本、主机操作系统,可能还有用户的语言环境。