fix(webrtc): correctly subscribe to remote camera tracks

This commit is contained in:
2026-07-06 12:40:26 +00:00
parent 5d8f420882
commit 83c05731ed
+10 -6
View File
@@ -30,16 +30,20 @@ function VideoTile({ participant, isLocal, room }: { participant: Participant; i
attachTrack();
// Listen for track publications changing on this participant via room events
const handlePublished = (pub: TrackPublication) => {
pub.track?.attach(el);
el.play().catch(() => {});
// Listen for track subscriptions
const handleSubscribed = (track: Track, publication: TrackPublication, trackParticipant: Participant) => {
if (trackParticipant.identity === participant.identity && publication.source === Track.Source.Camera) {
track.attach(el);
el.muted = isLocal;
el.play().catch(() => {});
}
};
room.on('trackPublished' as any, handlePublished);
room.on('trackSubscribed' as any, handleSubscribed);
return () => {
detachTrack();
room.off('trackPublished' as any, handlePublished);
room.off('trackSubscribed' as any, handleSubscribed);
};
}, [participant, isLocal, room]);