我已经阅读了几篇关于直播视频/音频的帖子.不幸的是,似乎没有任何“好”的解决方案.
对于为图像提供的SDWebImageView的视频,我想要相同的功能.
现在我正在使用以下代码:
NSURL *url=[[NSURL alloc] initWithString:@"http://www.ebookfrenzy.com/ios_book/movie/movie.mov"]; MPMoviePlayerController *moviePlayer=[[MPMoviePlayerController alloc] initWithContentURL:url]; moviePlayer.controlStyle=MPMovieControlStyleDefault; moviePlayer.shouldAutoplay=YES;
但是当我滚动表格视图时,所有视频都会一次又一次地下载.那么我该如何停止下载呢?
有没有更好的解决方案来播放视频到UITableView?相同的Facebook,Instagram和Vine Apps在做什么?
解决方法
不要使用MPMoviePlayerController,使用AVFoundation的AVPlayer.
此外,不要将资产的下载耦合到您的UITableViewCell子类.使用其他数据源来下载和管理视频资产.
有几种方法可以做到这一点.
>保留由URL初始化的AVPlayerItem对象的数据源数组.每次滚动到单元格时,不要加载资源,只需将AVPlayerItem加载到单元格的播放器中,并在滚动时移除.>如果您需要保留视频数据,请考虑将每个视频下载到Documents目录中的临时文件.文件完成下载后,使用其initWithURL:方法将该数据加载到AVAsset中,并将URL指向本地文件.准备好后,您可以使用initWithAsset将资源加载到AVPlayerItem中:播放视频.
原文地址:https://www.jb51.cc/iOS/329523.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。