【发布时间】:2018-09-20 15:16:44
【问题描述】:
到目前为止,我一直在使用AKPlayers 进行多音频播放项目,由AKSequencer 触发,以获得完美的同步、循环和高级信号处理。进展顺利,但现在我需要一些洞察力才能进入下一个级别。
我正在尝试使用远程 mp3 文件播放完全相同的功能 - 从远程 URL 地址流式传输 mp3 文件数组。但是,AKPlayer 目前似乎还不支持流式传输功能。
不过,我在这个网站上发现的一种可能性是 Ryan Francesconi 在线程 "How can I get AudioKit to stream an audio file from a remote URL?” 上的回答。以下是他的建议:
guard let remote = URL(string: "https://www.sample-videos.com/audio/mp3/crowd-cheering.mp3"),
let data = NSData(contentsOf: remote) else {
AKLog("Remote failed to load.")
return
}
let cachedFile = FileManager.default.homeDirectoryForCurrentUser.appendingPathComponent(remote.lastPathComponent)
try? data.write(to: cachedFile)
let player = AKPlayer(url: cachedFile)
那么,在我开始试验之前,是否有人(最好是 Francesconi 先生)告诉我如何在 iOS 上实现此代码?使用这种缓存和加载的想法开发多音频文件播放项目是否安全(在无缝同步和循环方面)?如果我能更多地了解这一点,那将非常有帮助。非常感激。
【问题讨论】:
-
我认为只要你的应用程序有权将文件保存到临时位置,这应该是相同的想法。
标签: swift audio-streaming audiokit