     
     /// 移除播放进度通知
     private func removeprogressObser(){
-        player.removeTimeObserver(self)
+        //MARK: 注意这里的释放方法，一定要释放。不然那个方法会走很多次
+        player.removeTimeObserver(timerReturn)
     }
     
     /// 计算缓冲时长

    private func progressObser(){
        if let playItem = player.currentItem{
            let time = CMTime(value: CMTimeValue(1.0), timescale: CMTimeScale(1.0))
            player.addPeriodicTimeObserver(forInterval: time, queue: DispatchQueue.main, using: { (t) in
                let current = CMTimeGetSeconds(t)
                let total = CMTimeGetSeconds(playItem.duration)
                print("当前\(current) 总时长\(total)")

    
    /// 移除所有通知
    private func removeAllObser(){
        removeprogressObser()
        if let item = player.currentItem{
            removeObserToitem(playItem: item)
