iOS简易的音视屏播放框架XYQPlayer

一、前缀

一直都想好好学学音视频这方面的知识,抽了几个周末参考一些资料,尝试着写了一个简易的音视频播放框架,支持音视频播放、视频截图、音乐缓存,其实吧,也就是尽可能的封装罢了,方便以后自己使用。目前只是开始,可能有些不足,后续会继续优化。可以在github上下载,地址是https://github.com/xiayuanquan/XYQPlayer,当然也请多多关注本博主夏远全。概念参考我的这篇博文:http://www.cnblogs.com/XYQ-208910/p/5662655.html

我的博文都在博客园,欢迎浏览:http://www.cnblogs.com/XYQ-208910/

二、框架

1、截图

2、文件

framework.png

XYQAllHeader.h:所有的头文件

XYQAudioTool.h/m:音频播放工具类,播放包括短音频和音乐

XYQAudioToolView.h/m:音频播放界面类,显示播放音乐的界面,播放、暂停、光盘旋转

XYQAudioToolLoader.h/m:音频下载类,缓存音乐到本地

XYQMovieTool.h/m:视频播放工具类,直接显示播放界面、还有截屏功能

XYQCachesManager.h/.m:缓存管理类,计算缓存大小、清除缓存

XYQHUDView.h/m:弹框提示,包括文本提示、下载进度提示

XYQTimeProgress.h/m:音乐播放时间进度条

UIImage+XYQCornerRadius.h/m:对图片进行处理的类

Source.bundle:资源包,存放图片icon

3、依赖

Library.png

三、音乐播放和缓存逻辑


music.png

四、视频播放方式

moive.png

五、音频播放test

 //测试创建音乐播放器(播放沙盒本地音乐包括从网络音乐下载缓存)

- (void)testPlay_Local_URL_Music:(NSArray *)musicFileLinkArray{

      self.audioPlayerView = [XYQAudioToolView openAudioPlayerView:musicFileLinkArray  audioPlayerViewController:self];

      self.audioPlayerView.diskIsHide = YES;

}

//测试创建音乐播放器(播放bundle根目录下的音乐)

- (void)testPlay_Bundle_Music:(NSArray *)musicNameArray{

      self.audioPlayerView = [XYQAudioToolView openAudioPlayerView:musicNameArray  audioPlayerViewController:self];

     self.audioPlayerView.diskIsHide = YES;

}

//关闭播放器

-(void)viewWillDisappear:(BOOL)animated{

      [super viewWillDisappear:animated];

      [self.audioPlayerView dismissAudioPlayerView];

}

六、视频播放test

-(void)viewDidLoad{

        [super viewDidLoad];

         //1、push视频    [XYQMovieTool pushPlayMovieWithNetURL:@"http://120.25.226.186:32812/resources/videos/minion_02.mp4" viewController:self];}

-(void)touchesBegan:(NSSet*)touches withEvent:(UIEvent *)event{

          //2、present视频

          //[XYQMovieTool presentPlayMovieWithNetURL:@"http://120.25.226.186:32812/resources/videos/minion_02.mp4" viewController:self];

}

//关闭播放器

-(void)viewWillDisappear:(BOOL)animated{

      [super viewWillDisappear:animated];

     [XYQMovieTool cancelPlay];

}

七、cocoaPods支持

pod  search  'XYQPlayer'


pod.png

八、演示截图

音乐:

play1.png
loading.png
play2.png
caches.png

视频:

push:

push.png

present:

present.png

九、声明

本博文为原创,如转载请注明出处,希望对大家有所帮助~~~~

简书地址:http://www.jianshu.com/p/1f8f434cfcba

cnblogs地址:http://www.cnblogs.com/XYQ-208910/p/6685412.html

github地址:https://github.com/xiayuanquan/XYQPlayer

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容