             } else if keyPath == PlayerEmptyBufferKey {
                 // PlayerEmptyBufferKey
                 
-                if let item = self.playerItem {
+                if let item = self._playerItem {
                     if item.isPlaybackBufferEmpty {
                         self.bufferingState = .delayed
                     }

            return
        }

        self.avplayer.pause()
        self.playbackState = .stopped
        self.delegate?.playerPlaybackDidEnd?(self)
    }
    
    public func seekToTime(_ time: CMTime) {
        if let playerItem = self.playerItem {
            return playerItem.seek(to: time)
        }
    }

            } else if keyPath == PlayerLoadedTimeRangesKey {
                // PlayerLoadedTimeRangesKey
                
                if let item = self._playerItem {
                    self.bufferingState = .ready
                    
                    let timeRanges = item.loadedTimeRanges
