音乐app的分析(例:QQ音乐)

<一>QQ⾳乐最核心的功能就是歌曲的播放

播放音频,首先想到可以用AVFoundation框架,来完成播放音乐的主要功能。但是AVFoundation只能播放本地的音乐,不能在线播放。虽然可以先从网络下载资源到本地再播放,但是必须要整首歌都下载完成后才能播放,这样效果并不好。

!

如果想在线播放,可以选择AudioToolbox框架中的音频队列服务Audio Queue Services。音频队列服务可以完成音频的录制和播放。 


一个⾳频服务队列Audio Queue有三部分组成:

三个缓冲器Buffers:每个缓冲器都是一个存储音频数据的临时仓库。

一个缓冲队列Buffer Queue:一个包含音频缓冲器的有序队列。

一个回调Callback:一个自定义的队列回调函数。


音频播放的流程:

将音频读取到缓冲器中,一旦一个缓冲器填充满之后就放到缓冲队
列中,然后继续填充其他缓冲器;当开始播放时,则从第一个缓冲
器中读取音频进行播放;一旦播放完之后就会触发回调函数,开始
播放下一个缓冲器中的音频,同时填充第一个缓冲器放;填充满之
后再次放回到缓冲队列。


流媒体

好的⾳乐播放器要保证播放的流畅性,一定是边加载边播
放,如果做得再好一些,可以用流媒体来做。

详细内容。。。

<二>获取歌单,显⽰在界⾯

这部分主要通过AFN来从网络获取歌曲信息,然后展示在界面上。对于界面展示这部分比较熟悉,做起来难度不大。继续补充


<三>歌曲下载到本地存储

歌曲离线下载管理这部分,也很重要。歌曲名称、作者等
相关信息可以存储到数据库中,歌曲的源文件以及歌词文
件,下载之后存到沙盒中指定的文件夹中。


<四>其他其他的设置等功能和其他软件大同小异。

可以比照QQ播放器,挑自己熟悉的地方详细的解释说明一下,是如何实现的。 


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值