使用 agora sdk 在 safari 13 中共享屏幕

时间:2021-01-07 11:01:01

标签: safari agora.io agora-web-sdk-ng

我使用的是 agora-rtc-sdk 3.3.0。当我单击“共享屏幕”并授予许可(问题不在于 getDisplayMedia)时,Safari 重新加载页面。导致它的行是 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);

}

1 个答案:

答案 0 :(得分:0)

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

<块引用>

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

  • Chrome 58 或更高版本
  • Firefox 56 或更高版本
  • Windows 10+ 上的 Edge 80 或更高版本