AWS Chime videoTileDidUpdate在磁贴中循环太多次

问题描述

为什么videoTileDidUpdate遍历每个图块4次?

这是AWS Chime SDK js的基本演示连接。

const observer = {
    audioVideoDidStart () => {
        //Start our local user video
        var localTileId = meetingSession.audioVideo.startLocalVideoTile();
        meetingSession.audioVideo.bindVideoElement(localTileId,notaryVideoElement);
    },videoTileDidUpdate: tile =>{
        console.log("Tile",tile);
    }
}

现在尝试添加与会者或contentShare,它会在每个磁贴中循环4次:

tileId: 1,active: false,isContent: false,isLocal: true,boundAttendeeId: null

tileId: 1,active: true,boundAttendeeId: <guid>

tileId: 1,isLocal: true:
boundAttendeeId: null

tileId: 1,isLocal: true:
boundAttendeeId: null

tileId: 2,isLocal: false,boundAttendeeId: null

tileId: 2,isContent: true,boundAttendeeId: <guid>#content

tileId: 2,isConent: true,boundAttendeeId: <guid>

tileId: 2,boundAttendeeId: null

这令人发疯,因为我无法正确绑定我的内容共享。 将此视为我遵循的推荐方法AWS ContentShare

这是Chime的错误吗?

在这里未回答任何问题,所以我想再试一次:AWS Chime - assigning videos to tiles does not work as expected

解决方法

所以我终于想通了。 如果转到Chime SDK github,您会发现在每个观察者示例中,它们始终具有:

if (!tileState.boundAttendeeId) {
      return;
}

那是关键。每个可用的图块引用都应具有boundAttendeeId。然后它将整理出正确的图块参考,以用于组织用户界面。

我也已经与参加者进行了测试。