MPMoviePlayerController 成功预加载后将视频缓存到磁盘
Posted
技术标签:
【中文标题】MPMoviePlayerController 成功预加载后将视频缓存到磁盘【英文标题】:Caching videos to disk after successful preload by MPMoviePlayerController 【发布时间】:2009-06-01 10:42:12 【问题描述】:使用 MPMoviePlayerController 的initWithContentURL:
启动视频后,是否可以缓存下载的视频,以便下次播放视频时可以通过本地 file:// URI 加载?我知道可以自己下载并然后启动电影播放器,但是我想利用播放器在完成预加载之前启动的能力。
【问题讨论】:
你有没有找到解决这个问题的好方法? 有没有其他支持缓存的视频播放器? 【参考方案1】:一个技巧是开始下载到磁盘 - (使用 atomic : YES),等待 10 秒,然后将电影播放器指向本地磁盘路径。它会在播放不完整的文件时“下载”。
下一次,先检查文件是否存在。
我在 WIFI 连接上运行得很好,但在 3G 上却有各种崩溃。
更糟糕的是,本地文件不完整存在问题。让我知道是否值得。
【讨论】:
嗯...我试过了,但发现它太容易出错了。根据我的最新答案,您是否尝试过使用自定义的仅磁盘缓存实现覆盖[NSURLCache sharedURLCache]
?【参考方案2】:
我尚未对此进行测试,但可以使用自定义的仅磁盘缓存实现覆盖 [NSURLCache sharedURLCache]
。如果MPMoviePlayerController
使用NSURLRequest
,它可以工作。
【讨论】:
有人测试过这个吗? 我已经测试过了。 MPMoviePlayerController 根本不使用 NSURLCache。以上是关于MPMoviePlayerController 成功预加载后将视频缓存到磁盘的主要内容,如果未能解决你的问题,请参考以下文章
如何显示 MPMoviePlayerController 控件?
MPMoviePlayerController 隐藏 AirPlay 按钮
MPMoviePlayerController 上的专辑封面
MPMoviePlayerController 已弃用,现在怎么办?