LoginSignup
22
16

More than 5 years have passed since last update.

AVPlayerItem(AVPlayerItemPlayability)

Posted at

AVPlayerItem(AVPlayerItemPlayability)についてまとめました。

loadedTimeRanges

すでに再生可能になっている時間を取得、CMTimeRangeの配列。
CMTimeRangeについては「CMTimeについて」参照

AVPlayerItem.m
@property (nonatomic, readonly) NSArray<NSValue *> *loadedTimeRanges;

playbackLikelyToKeepUp

  • 再生がstallに陥らないで可能であるならばYESがかえる。
  • この判断はI/O のスループットやメデイアのデコードのパフォーマンスを考慮して決まっている。
  • playbackBufferFullがYESであってもisPlaybackLikelyToKeepUpがNOの可能性がある。 これはバッファは容量に達しているが再生が追いつかないという統計的データが得られないときにおきる。
  • アプリプログラマには再生を続けるかどうかの判断を任される。
AVPlayerItem.m
@property (nonatomic, readonly, getter=isPlaybackLikelyToKeepUp) BOOL playbackLikelyToKeepUp;

playbackBufferFull

バッファが容量に達し、さらなるI/Oが停止されている場合、YESがかえる。
この値がYESでもplaybackLikelyToKeepUpがNOである場合がある。(playbackLikelyToKeepUp参照)

AVPlayerItem.m
@property (nonatomic, readonly, getter=isPlaybackBufferFull) BOOL playbackBufferFull;

playbackBufferEmpty

再生がすべてのバッファを食いつぶし、近くにstallか終了することを示す。

AVPlayerItem.m
@property (nonatomic, readonly, getter=isPlaybackBufferEmpty) BOOL playbackBufferEmpty;

canUseNetworkResourcesForLiveStreamingWhilePaused

  • 一時停止中の間に、プレイヤーアイテムが再生状態を維持するためにネットワークを使用できるかを示す。
  • ライブストーリーミングコンテンツではプレイヤーアイテムは一時停止中に再生状態を保つに余分にネットワークを使用し電力を消費する必要がある場合がある。
  • 例えばこの値をYESにすると、seekableTimeRangesが周期的に現在のライブストリームを反映して周期的に更新される。
  • デフォルトはNO。
  • 電力消費を抑えるため、一時停止中の再生状態の維持が必要でないのならこの値をYESにするのは避けること。
AVPlayerItem.m
@property (nonatomic, assign) BOOL canUseNetworkResourcesForLiveStreamingWhilePaused NS_AVAILABLE(10_11, 9_0);
22
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
16