是的,AVPlayer可以从API端点正确地流式传输视频文件。以下是一个简单的代码示例,演示如何使用AVPlayer从网络URL中流式传输视频文件:
import AVFoundation
import AVKit
// 创建一个URL指向视频文件的API端点
let videoURL = URL(string: "https://example.com/api/video.mp4")!
// 创建一个AVPlayerItem,使用URL初始化
let playerItem = AVPlayerItem(url: videoURL)
// 初始化AVPlayer,并将AVPlayerItem分配给它
let player = AVPlayer(playerItem: playerItem)
// 创建一个AVPlayerViewController用于播放视频
let playerViewController = AVPlayerViewController()
playerViewController.player = player
// 播放视频
player.play()
// 将AVPlayerViewController添加到当前视图控制器中
present(playerViewController, animated: true, completion: nil)
在上述示例中,我们首先创建了一个指向视频文件的API端点的URL。然后,我们使用该URL创建一个AVPlayerItem,并将其分配给AVPlayer。接下来,我们创建一个AVPlayerViewController,并将AVPlayer分配给它。最后,我们调用play()
方法开始播放视频,并将AVPlayerViewController添加到当前视图控制器中。
请注意,这只是一个简单的示例,你可能还需要处理错误、监听播放状态等。根据你的需求,你可能还需要根据音频或视频文件的格式进行其他配置。