【问题标题】:AVPlayer addObserver never being calledAVPlayer addObserver 永远不会被调用
【发布时间】:2017-01-27 01:43:05
【问题描述】:

我正在尝试获取 AVPlayer timedMetadata 但从未调用过观察者

self.metaItem!.addObserver(self, forKeyPath: "metaData", options: NSKeyValueObservingOptions(), context: nil)
        metPlayer=AVPlayer(playerItem: metaItem)
        metPlayer.play()
...

override func observeValue(forKeyPath keyPath: String?, of object: Any?, change:
        [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
        if keyPath != "metaData" { return }
        print("...")
    }

但 MPMoviePlayerController 工作正常

谢谢。

【问题讨论】:

    标签: swift avplayer


    【解决方案1】:

    metaItemAVPlayerItem 应该观察关键路径 timedMetadata,而不是 "metaData"

    self.metaItem!.addObserver(self, forKeyPath: "timedMetadata", options: NSKeyValueObservingOptions(), context: nil)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-27
      • 2013-10-12
      • 2012-03-27
      • 2013-08-29
      • 2013-11-03
      • 1970-01-01
      • 1970-01-01
      • 2015-05-06
      相关资源
      最近更新 更多