自己实现一个简单的网络音乐mp3播放器

大繁至简,把思路搞清楚才是最重要的,如何去做依托于使用什么来实现这项功能

列出我使用的基本类

NSURLSessionDataTask 数据获取类

NSFileHandle 数据缓存和数据读取类

AudioFileStream 音频文件解析类

AudioQueue  音频播放类

 

我的实现过程

1.触发播放功能

2.创建数据管理模块:主管数据下载(网络歌曲)和数据提供管理

3.音频原数据回调,异步提供给音频数据池

4.解析音频数据(同步操作)

5.播放解析完成的数据(同步操作)

正是由于解析和播放属于耗时长的同步操作,所以将下载数据异步提供给数据池进行操作,避免数据管理模块回调耗时太长的问题

posted @ 2018-07-06 15:17  雨筱逸悠  阅读(300)  评论(0编辑  收藏  举报