美文网首页
AVPlayer播放缓存

AVPlayer播放缓存

作者: BernardChina | 来源:发表于2016-12-12 13:13 被阅读445次

首先推荐一款自己编写的一款简单播放器BCPlayer
它实现了几种播放模式,并且支持hls,m3u8格式视频。简单易用。
git地址:https://github.com/BernardChina/BCPlayer

BCPlayer

BCPlayer实现了几种播放模式。

  • 边播边缓存
  • 先缓存再播放
  • 播放不缓存

除了基本的mp4并且支持hls,m3u8格式资源。

安装

可以通过CocoaPods安装
在您的Podfile文件中添加

pod 'BCPlayer'

然后使用如下命令安装

pod install

或者

pod update

用法

BCPlayerDelegate监听播放的进度和播放完成或者错误的回调

/**
 播放完成调用此方法

 @param player 当前的player
 @param error 如果播放过程中有错误,回调返回error
 */
- (void)BCVideoPlayer:(BCVideoPlayer *)player didCompleteWithError:(NSError *)error;


/**
 返回播放进度

 @param player 当前的player
 @param progress 播放进度
 */
- (void)BCVideoPlayer:(BCVideoPlayer *)player withProgress:(double)progress currentTime:(double)current totalTime:(double)totalTime;

播放的类型

typedef NS_ENUM(NSInteger, NBPlayerCacheType) {
    NBPlayerCacheTypeNoCache,       // 不缓存,直接播放
    NBPlayerCacheTypePlayWithCache, // 边播放边缓存
    NBPlayerCacheTypePlayAfterCache, // 先缓存,再播放
    NBPlayerCacheTypePlayHLS    // 支持hls
};

使用方法很简单:

_play = [[BCVideoPlayer alloc]init];
    UIView *videoView = [[UIView alloc] init];
    [bgView addSubview:videoView];
    [videoView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.left.right.equalTo(self.view).offset(0);
        make.top.equalTo(self.view).offset(64);
        make.height.equalTo(@(250));
    }];
    
    _play.delegate = self;
    
    [_play playWithUrl:[NSURL URLWithString:self.videoUrlStr]
              showView:videoView
          andSuperView:self.view
             cacheType:NBPlayerCacheTypePlayWithCache];

TODO

未来也许会支持编解码。如果您有什么宝贵的意见或者问题,请您告诉我,感谢!一起做一款好的播放器

如果对您有帮助,请不要吝啬您的star,感谢!

相关文章

网友评论

      本文标题:AVPlayer播放缓存

      本文链接:https://www.haomeiwen.com/subject/guymmttx.html