Skip to content

Instantly share code, notes, and snippets.

@atulkhatri
Created July 12, 2021 17:48
Show Gist options
  • Save atulkhatri/135770326e57404ce91eb496c84e3670 to your computer and use it in GitHub Desktop.
Save atulkhatri/135770326e57404ce91eb496c84e3670 to your computer and use it in GitHub Desktop.
tvOS Bootcamp Player 2
private func startAssetPlayback() {
switch asset?.type {
case .movie:
if let url = asset?.url.toUrl {
let playerItem = createPlayerItem(url: url)
player = AVPlayer(playerItem: playerItem)
}
case .series:
var playerItems: [AVPlayerItem] = []
if let rail = rail?.list {
for item in rail {
if let url = item.url.toUrl {
let playerItem = createPlayerItem(url: url)
if item.id == asset?.id {
playerItems.insert(playerItem, at: 0)
} else {
playerItems.append(playerItem)
}
}
}
}
player = AVQueuePlayer(items: playerItems)
case .none: break
}
player?.play()
}
private func createPlayerItem(url: URL) -> AVPlayerItem {
let playerItem = AVPlayerItem(url: url)
return playerItem
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment