}
//drop it
drop = true;
} else {
if (isVideo) {
VideoData video = (VideoData) message;
if (video.getFrameType() == FrameType.KEYFRAME) {
//if its a key frame the inter and disposible checks can be skipped
log.trace("Resuming stream with key frame; message: {}", message);
mapping.setKeyFrameNeeded(false);
} else if (tardiness >= baseTolerance && tardiness < midTolerance) {
//drop disposable frames
if (video.getFrameType() == FrameType.DISPOSABLE_INTERFRAME) {
log.trace("Dropping disposible frame; message: {}", message);
drop = true;
}
} else if (tardiness >= midTolerance && tardiness <= highestTolerance) {
//drop inter-frames and disposable frames