问题描述
我正在尝试为 Mac 制作一个屏幕保护程序,从后端服务器流式传输简单的 mp4 视频。我不习惯为 Mac 或 Objective-c 编码,所以我很迷茫。到目前为止,我已经弄清楚如何在本地加载视频,但是当我尝试将文件 URL 切换为 HTTPS URL 时,它似乎不起作用。这就是我现在加载本地 mp4 文件的方式:
NSURL *url = [[NSBundle bundleForClass:MainScript.class] URLForResource: @"video" withExtension: @"mp4"];
AVAsset *asset = [AVAsset assetWithURL: url];
NSArray *assetKeys = @[@"playable",@"hasProtectedContent"];
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithAsset: asset automaticallyLoadedAssetKeys:assetKeys];
NSkeyvalueObservingOptions options = NSkeyvalueObservingOptionOld | NSkeyvalueObservingOptionNew;
VideoPlayer *player = [VideoPlayer playerWithPlayerItem: playerItem];
[playerItem addobserver: player forKeyPath: @"status" options: options context: PlayerItemContext];
player.volume = 0;
正如我之前所说,我不习惯在 Objective-c 中编码,所以我不能 100% 确定这是创建本地视频流的代码,但我很确定它是。
从这里开始,我想要做的是将文件 URL:@"video"
替换为这样的 HTTPS URL:@"https://example.com/video"
。一切都在后端服务器上运行,所以我的问题只是如何在 Mac 屏幕保护程序上加载视频。
据我所知,我现在正在使用 AVPlayerItem
加载视频。我不知道是否有更好的方法,但如果有,请告诉我 :)
解决方法
尝试使用 VLCKit,我很确定它可以立即使用 HTTPS。