|
|
@@ -382,10 +382,19 @@ TraceablePeerConnection.prototype._remoteTrackRemoved
|
|
382
|
382
|
}
|
|
383
|
383
|
|
|
384
|
384
|
if (!this.rtc._removeRemoteTrack(streamId, trackId)) {
|
|
385
|
|
- GlobalOnErrorHandler.callErrorHandler(
|
|
386
|
|
- new Error(
|
|
387
|
|
- "Removed track not found for msid: " + streamId
|
|
388
|
|
- + "track id: " + trackId));
|
|
|
385
|
+ // NOTE this warning is always printed when user leaves the room,
|
|
|
386
|
+ // because we remove remote tracks manually on MUC member left event,
|
|
|
387
|
+ // before the SSRCs are removed by Jicofo. In most cases it is fine to
|
|
|
388
|
+ // ignore this warning, but still it's better to keep it printed for
|
|
|
389
|
+ // debugging purposes.
|
|
|
390
|
+ //
|
|
|
391
|
+ // We could change the behaviour to emit track removed only from here,
|
|
|
392
|
+ // but the order of the events will change and consuming apps could
|
|
|
393
|
+ // behave unexpectedly (the "user left" event would come before "track
|
|
|
394
|
+ // removed" events).
|
|
|
395
|
+ logger.warn(
|
|
|
396
|
+ `Removed track not found for msid: ${streamId},
|
|
|
397
|
+ track id: ${trackId}`);
|
|
389
|
398
|
}
|
|
390
|
399
|
};
|
|
391
|
400
|
|