Chorister
[](https://travis-ci.org/Ryo/Chorister)
Chorister可以通过流媒体播放曲调,将其存储在缓存中,并在可能的情况下重复使用。
该库是为Denkinovel应用创建的,该应用可以在这里找到。
用法
以下是一个使用Chorister的示例。
import UIKit
import Chorister
class ViewController: UIViewController {
var audioContainer = StreamingAudioCacheContainer(repeats: true)
@IBAction func ButtonAPushed(sender: UIButton) {
audioContainer.changeAudio(NSURL(string: "https://s3.amazonaws.com/cc0-tunes/nichecom/a_new_beginning.mp3")!)
}
@IBAction func ButtonBPushed(sender: UIButton) {
audioContainer.changeAudio(NSURL(string: "https://s3.amazonaws.com/cc0-tunes/nichecom/lets_dance.mp3")!)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
audioContainer.reset()
}
您只需要处理StreamingAudioCacheContainer
。当调用changeAudio(url: NSURL)
时,StreamingAudioCacheContainer
播放音乐。它从互联网上下载曲调并播放流媒体音乐。同时,StreamingAudioCacheContainer
将音乐数据存储在缓存中。
当URL再次出现,此前曾在changeAudio(url: NSURL)
中使用过,StreamingAudioCacheContainer
不会从互联网上下载它,而是从缓存中本地加载,并立即播放曲调。
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
audioContainer.reset()
}
如果您想清除所有缓存,调用reset()
到StreamingAudioCacheContainer
。它会完全清除缓存。
示例项目
要运行示例项目,请克隆仓库,并首先从示例目录中运行pod install
。
要求
- Swift 2.0+
安装
Chorister 通过 CocoaPods 提供。要安装,请将以下行添加到您的 Podfile 中
pod "Chorister"
作者
Ryo Kato,http://katryo.com
授权许可
Chorister 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。
Chorister 使用了由 Alexander Schuch(http://schuch.me)创建的出色的 AwesomeCache(https://github.com/aschuch/AwesomeCache)的修改版,因此您可以在 LICENSE 文件中找到他的名字。
曲目
我使用了来自该网站的 CC0 曲目:http://www.nichecom.com/songs/