function oldVideoTimeupdate() {
              var currentTime = _this2.kernel.currentTime;
              if (bias <= 0 && currentTime >= idealTime || bias > 0 && (Math.abs(idealTime - currentTime) <= bias && newVideoReady || currentTime - idealTime > bias)) {
                chimeeHelper.removeEvent(_this2.dom.videoElement, 'timeupdate', oldVideoTimeupdate);
                chimeeHelper.removeEvent(video, 'error', _videoError, true);
                if (!newVideoReady) {
                  chimeeHelper.removeEvent(video, 'canplay', videoCanplay, true);
                  chimeeHelper.removeEvent(video, 'loadedmetadata', videoLoadedmetadata, true);
                  kernel.destroy();
                  return resolve();
                }
                return reject({
                  error: false,
                  video: video,
                  kernel: kernel
                });
              }
            }
function oldVideoTimeupdate() {
              var currentTime = _this2.kernel.currentTime;
              if (bias <= 0 && currentTime >= idealTime || bias > 0 && (Math.abs(idealTime - currentTime) <= bias && newVideoReady || currentTime - idealTime > bias)) {
                chimeeHelper.removeEvent(_this2.dom.videoElement, 'timeupdate', oldVideoTimeupdate);
                chimeeHelper.removeEvent(video, 'error', _videoError, true);
                if (!newVideoReady) {
                  chimeeHelper.removeEvent(video, 'canplay', videoCanplay, true);
                  chimeeHelper.removeEvent(video, 'loadedmetadata', videoLoadedmetadata, true);
                  kernel.destroy();
                  return resolve();
                }
                return reject({
                  error: false,
                  video: video,
                  kernel: kernel
                });
              }
            }
function oldVideoTimeupdate ( ) { var currentTime = _this2 . kernel . currentTime ; if ( bias <= 0 && currentTime >= idealTime || bias > 0 && ( Math . abs ( idealTime - currentTime ) <= bias && newVideoReady || currentTime - idealTime > bias ) ) { chimeeHelper . removeEvent ( _this2 . dom . videoElement , 'timeupdate' , oldVideoTimeupdate ) ; chimeeHelper . removeEvent ( video , 'error' , _videoError , true ) ; if ( ! newVideoReady ) { chimeeHelper . removeEvent ( video , 'canplay' , videoCanplay , true ) ; chimeeHelper . removeEvent ( video , 'loadedmetadata' , videoLoadedmetadata , true ) ; kernel . destroy ( ) ; return resolve ( ) ; } return reject ( { error : false , video : video , kernel : kernel } ) ; } }
bind time update on old video when we bump into the switch point and ready we switch
bind time update on old video when we bump into the switch point and ready we switch