* VRFS-2987 - remote participants can see opened JamTracks

This commit is contained in:
Seth Call 2015-03-28 10:10:18 -05:00
parent 23fdf51110
commit 260a80ee37
1 changed files with 48 additions and 17 deletions

View File

@ -962,8 +962,11 @@
var recordedBackingTracks = sessionModel.recordedBackingTracks();
var backingTracks = sessionModel.backingTracks();
var recordedJamTracks = sessionModel.recordedJamTracks();
var jamTracks = sessionModel.jamTracks();
logger.debug("localMediaMixers", localMediaMixers)
//logger.debug("localMediaMixers", localMediaMixers)
//logger.debug("peerMediaMixers", peerLocalMediaMixers)
// with mixer info, we use these to decide what kind of tracks are open in the backend
@ -998,29 +1001,57 @@
// additional check; if we can match an id in backing tracks or recorded backing track,
// we need to remove it from the recorded track set, but move it to the backing track set
var isBackingTrack = false
if(recordedBackingTracks) {
context._.each(recordedBackingTracks, function (recordedBackingTrack) {
if (mixer.id == 'L' + recordedBackingTrack.client_track_id) {
isBackingTrack = true;
return false; // break
}
})
}
if(backingTracks) {
context._.each(backingTracks, function (backingTrack) {
if (mixer.id == 'L' + backingTrack.client_track_id) {
isBackingTrack = true;
var isJamTrack = false;
if(jamTracks) {
// check if the ID matches that of an open jam track
context._.each(jamTracks, function (jamTrack) {
if (mixer.id == jamTrack.id) {
isJamTrack = true;
return false; // break
}
})
}
if(isBackingTrack) {
backingTrackMixers.push(mixer)
if(!isJamTrack && recordedJamTracks) {
// then check if the ID matches that of a open, recorded jam track
context._.each(recordedJamTracks, function (recordedJamTrack) {
if (mixer.id == recordedJamTrack.id) {
isJamTrack = true;
return false; // break
}
})
}
if(isJamTrack) {
jamTrackMixers.push(mixer)
}
else {
recordingTrackMixers.push(mixer);
var isBackingTrack = false
if (recordedBackingTracks) {
context._.each(recordedBackingTracks, function (recordedBackingTrack) {
if (mixer.id == 'L' + recordedBackingTrack.client_track_id) {
isBackingTrack = true;
return false; // break
}
})
}
if (backingTracks) {
context._.each(backingTracks, function (backingTrack) {
if (mixer.id == 'L' + backingTrack.client_track_id) {
isBackingTrack = true;
return false; // break
}
})
}
if (isBackingTrack) {
backingTrackMixers.push(mixer)
}
else {
// couldn't resolve this as a JamTrack or Backing track, must be a normal recorded file
recordingTrackMixers.push(mixer);
}
}
} else if(mediaType == 'PeerMediaTrack' || mediaType == 'BackingTrack') {
// BackingTrack