Method SetExternalMediaProjection
SetExternalMediaProjection
设置 SDK 外部的 MediaProjection
采集屏幕视频流。
C#
public abstract int SetExternalMediaProjection(IntPtr mediaProjection);
成功调用该方法后,你设置的外部 MediaProjection
会替换掉 SDK 申请的 MediaProjection
采集屏幕视频流。
当停止屏幕共享或销毁 IRtcEngine 时,SDK 会自动释放 MediaProjection。
适用场景
如果你具备自行申请
MediaProjection
的开发能力,可以直接使用该 MediaProjection
取代 SDK 申请的 MediaProjection
。以下列出两种使用场景:- 在定制系统的设备上,可避免系统弹窗(即需要用户授予屏幕采集权限),直接开始采集屏幕视频流。
- 一个屏幕共享进程中存在一个或多个子进程,避免在子进程中自行创建对象的过程出错而导致采集失败。
调用时机
该方法需要在 StartScreenCapture [1/2] 之前调用。
调用限制
在调用该方法前,必须先申请 MediaProjection
权限。
参数
- mediaProjection
- 一个 MediaProjection 对象,用于采集屏幕视频流。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。