捕获桌面资源
通过[
navigator.webkitGetUserMedia
] API 捕获 audio 或 video等媒体资源
进程: 渲染进程
从 Electron
桌面应用中捕获硬盘:
当使用这个方法的时候,不必指定 chromeMediaSourceId
.
当调用 navigator.webkitGetUserMedia
创建一个约束对象后.
如果你想使用 desktopCapturer
的资源,您必须设置 chromeMediaSource
为 desktop
, audio
为 false
.
如果你想捕获整个桌面的 audio 和 video,您必须设置 chromeMediaSource
为 screen
, audio
为 true
.
方法
desktopCapturer.getSources(options, callback)
desktopCapturer.getSources(options, callback)
用途:获取可用的桌面媒体源的信息并调用callback
options
Objecttypes
String[] - 列出可捕获的桌面资源类型的String 数组, 可用类型为screen
和window
.thumbnailSize
Object (可选) - 等比缩放的缩图尺寸, 默认为{width: 150, height: 150}
.
callback
Functionerror
Errorsources
DesktopCapturerSource[]
sources
是个DesktopCapturerSource
对象数组, 每个DesktopCapturerSource
表示一个捕获的屏幕或窗口并有如下属性 :id
String - 在navigator.webkitGetUserMedia
中使用的捕获窗口或屏幕的 id . 格式为window:XX
或者screen:XX
,XX
是一个随机数.name
String - 捕获窗口或屏幕的描述名 . 如果资源为屏幕,名字为Entire Screen
或Screen <index>
; 如果资源为窗口, 名字为窗口的标题.thumbnail
NativeImage - 缩略图.
注意: 不能保证 source.thumbnail
的 尺寸 和 options
中的 thumnbailSize
总是一致. 因为它取决于屏幕或窗口的缩放比例.
[navigator.webkitGetUserMedia
]: https://developer.mozilla.org/en/docs/Web/API/Navigator/getUserMedia
Last updated