【问题标题】:Stopping AVPlayer on iOS在 iOS 上停止 AVPlayer
【发布时间】:2010-12-16 03:27:37
【问题描述】:

我正在使用 AVPlayer 播放来自 Internet 的实时流。 AVPlayer 可以暂停,但在恢复时它会从暂停的那一刻开始,就像 TiVO 一样。 AVPlayer 没有停止方法。

如何让它继续播放当前正在播放的内容(就像您关闭并重新打开汽车收音机一样)?

【问题讨论】:

  • 是否依赖流媒体服务器?

标签: iphone cocoa-touch ipad ios4 avplayer


【解决方案1】:

-(void)seekToTime:(CMTime)time

使用此方法到达文件开头

【讨论】:

    【解决方案2】:

    停止AVPlayer

    [player replaceCurrentItemWithPlayerItem:nil];
    

    这将释放它及其相关资产消耗的所有内存和处理器资源。就那么简单。

    【讨论】:

      【解决方案3】:

      SeekToTime 不会停止音频,所以一旦你到达终点,如果你只调用 seekToTime,它就会像循环一样重新开始播放。您可以使用带有回调的以下版本在搜索完成后立即暂停视频/音频,以便它同时重置和停止。

      [_player seekToTime:CMTimeMake(0, 1) completionHandler:^(BOOL finished) {
          [_player pause];
      }];
      

      【讨论】:

        【解决方案4】:
         [player pause];
        [item_ removeObserver:self forKeyPath:@"status" context:nil];
        [item_ removeObserver:self forKeyPath:@"playbackBufferEmpty" context:nil];
        [item_ removeObserver:self forKeyPath:@"playbackLikelyToKeepUp" context:nil];
        [item_ removeObserver:self forKeyPath:@"timedMetadata" context:nil];
         player=nil;
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-01-04
          • 1970-01-01
          • 2023-03-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多