有沒有辦法在AVPlayer
上設置觀察者/回調以在幀改變時得到通知?改變幀的AVPlayer回調(觀察者)
我知道這兩個addBoundaryTimeObserver
和addPeriodicTimeObserver
但是這些都是需要我估計幀速率近似等
還有一個需要注意的是:
國家總的意見:你可以使用鍵值觀察(KVO)觀察許多玩家動態屬性的狀態變化,例如其當前項或其回放速率。您應該在主線程上註冊並取消註冊KVO更改通知。這樣可以避免在另一個線程正在進行更改時收到部分通知的可能性。 AV Foundation調用主線程上的observeValue(forKeyPath:of:change:context :),即使更改操作是在另一個線程上進行的。
然而currentTime
上AVPlayerItem
是一種方法,而不是一個性質,所以我不能用志願爲。
嘗試繪製與給定框架對應的屏幕上方的覆蓋物頂部。由於覆蓋圖對應於給定的幀(與給定的時間戳相對應,比如洗刷程序),所以我想在幀更改時更新覆蓋圖。 –