Javascript Twilio视频:如何判断曲目是否是屏幕共享?

Javascript Twilio视频:如何判断曲目是否是屏幕共享?,javascript,twilio,twilio-api,Javascript,Twilio,Twilio Api,现在在“room.on('trackAdded')”中,我无法判断添加的曲目是否是屏幕共享。有什么办法可以告诉你吗?这里是Twilio开发者的福音传道者 据我所知,每首曲目要么是视频曲目,要么是音频曲目。屏幕共享将是一个录像带,但除此之外,没有任何东西可以将其与来自摄像机源的另一个录像带区分开来 编辑 经过进一步研究,我发现了以下几点: 您可以设置显示在远程端的。例如,如果您在屏幕上创建了一个新的MediaStreamTrack,并将其发送给本地参与者,则可以为其设置名称 localPartic

现在在“room.on('trackAdded')”中,我无法判断添加的曲目是否是屏幕共享。有什么办法可以告诉你吗?

这里是Twilio开发者的福音传道者

据我所知,每首曲目要么是视频曲目,要么是音频曲目。屏幕共享将是一个录像带,但除此之外,没有任何东西可以将其与来自摄像机源的另一个录像带区分开来

编辑

经过进一步研究,我发现了以下几点:

您可以设置显示在远程端的。例如,如果您在屏幕上创建了一个新的
MediaStreamTrack
,并将其发送给本地参与者,则可以为其设置名称

localParticipant.publishTrack(screenVideoTrack, { name: 'screen' })
然后,当您收到
trackAdded
事件时,您可以检查曲目的name属性:

room.on('trackAdded', (track, participant) => {
  console.log(track.name);
});
谢谢,我在使用建议的行为

但在Twilio 2.x中,它似乎被打破了。根据需要,在本地轨迹创建过程中指定选项(添加名称):

const newScreenLocalTrack=new Twilio.Video.LocalVideoTrack(newScreenTrack,{name:'screen'})
然后只发布创建的轨迹,不带任何选项:

localParticipant.publishTrack(newScreenLocalTrack)

这根本没有帮助。我需要把用户的相机饲料在一个位置和屏幕饲料在不同的一个。应该有办法分辨哪个是哪个,谁的相机和屏幕是哪个。@Nishant你让我问我自己,谢谢。事实证明,您可以通过设置轨迹的名称来判断。看到我的答案的编辑了。哈哈,我明白了,来这里补充答案。很高兴看到你做得更好。谢谢+1。谢谢@Liana!你的回答真的很有帮助!谢谢你,莉安娜!这比philnash的答案要好得多,因为这设置了预先发布曲目的名称。允许在发布前将轨迹存储在不同的位置,并以其他方式对其进行操作。