0

我正在使用 agora-rtc-sdk 3.3.0。当我单击“共享屏幕”并授予权限时(问题不在于 getDisplayMedia)野生动物园重新加载页面。导致它的行是 client.publish(stream),如果注释此行流创建成功(根据控制台),与客户端相同,但我无法发布我的“屏幕共享”流。此错误仅出现在 safari 13 中,其他浏览器工作正常。添加这部分代码。

const beginShare = async() => {
    agoraShareStream = AgoraRTC.createStream({
      streamID: SHARE_ID,
      audio: false,
      video: false,
      screen: true
    });

await agoraShareStream.init(() => {
  console.log('init local stream success')
});

setShareStream(agoraShareStream);

enqueueSnackbar("Started screen sharing", { variant: "info" });

}

const createShareClient = async() => {
    const agoraShareClient = AgoraRTC.createClient({
      mode: "rtc",
      codec: "vp8"
    });

await agoraShareClient.init(appId);

await agoraShareClient.join(getAgoraToken({ uid: SHARE_ID, channel }), channel, SHARE_ID);

agoraShareClient.publish(agoraShareStream);

setShareClient(agoraShareClient);

}

4

1 回答 1

0

不幸的是,Agora 不支持 Safari 上的屏幕共享,如以下文档所述:https ://docs.agora.io/en/Video/screensharing_web?platform=Web#introduction

Agora RTC Web SDK 支持以下桌面浏览器的屏幕共享:

  • Chrome 58 或更高版本
  • 火狐 56 或更高版本
  • Windows 10+ 上的 Edge 80 或更高版本
于 2021-01-11T17:33:49.483 回答