https://developer.apple.com/videos/play/fall2017/503/
tvOS 11.2, Apple tv 4K で可能となったビデオモードの自動切替についての解説。
□自動切替
・SDR/HDRなど、フレームレートやダイナミックレンジは視聴するビデオに応じて自動変更される。
・ただし、Apple TVの設定でオフにできる。
60Hz/Dolby Vision→24Hz/SDR
□HLS Playlist Authoring
FRAME-RATE
VIDEO-RANGE (optional)
□実装
avPlayerViewController.appliesPreferredDisplayCriteriaAUtomatically = true/false
で切り替える。falseで自動スイッチ停止
AVPlayerViewControllerを使えば全画面表示になる。
AVDisplayManagerを使いNon-fullsceen playback
スイッチするためにディスプレイ設定を表示するビデオから取得する。
let displayCriteria = avAsset.preferredDisplayCriteria
let displayManager = self.view.window.avDisplayManager
displayManager.preferredDisplayCriteria = displayCriteria
デフォルトに戻す。
displayManager.preferredDisplayCriteria = nil
□助言
モード切替は必要最小限にする。
モード切替はフルスクリーン再生時に使う。
主UIではシステムフレームレートを使う。
次のような場合、切替は行わない。
短いクリップ
複数のビデオの同時再生
頻繁な切替