ios swift 2 解析中的流式音频
Posted
技术标签:
【中文标题】ios swift 2 解析中的流式音频【英文标题】:streaming audio from parse for ios swift 2 【发布时间】:2015-12-11 21:52:27 【问题描述】:编译后,我有一个代码可以在 ios 构建中快速流式传输音频,并且音频文件同步准确,但是当我选择它们时,扬声器没有音频。在 swift 2 上它不再编译它所说的 url 的模糊使用,这是用 swift 编写的 func,我希望我们可以将它转换为 swift 2,谢谢:
func grabSong()
let SongQuery = PFQuery(className: "songs")
SongQuery.getObjectInBackgroundWithId(iDArray[SelectedSongNumber], block:
(object: PFObject?, error:NSError?)-> Void in
if let AudioFileURLTemp = object?.objectForKey("songFile")?.url
AudioPlayer = AVPlayer(URL: NSURL(string: AudioFileURLTemp! ))
AudioPlayer.play()
)
【问题讨论】:
【参考方案1】:是的,它正在工作, 只需要检查可选性,如下所示:
func grabSong()
let SonQuery = PFQuery(className: "Songs")
SonQuery.getObjectInBackgroundWithId(idArray[SelectedSongNumber], block:
(object: PFObject?, error:NSError?) -> Void in
if let audioFIleTemp: PFFile = object?.valueForKey("SongFile") as? PFFile
AudioPlayer = AVPlayer(URL: NSURL(string: audioFIleTemp.url!)!)
AudioPlayer.play()
)
【讨论】:
【参考方案2】:我还没有对此进行测试(我目前没有任何音频文件可以解析),但是,为什么不直接访问 pffile 然后转换为 url 呢?它看起来像这样:
func grabSong()
let SongQuery = PFQuery(className: "songs")
SongQuery.getObjectInBackgroundWithId(iDArray[SelectedSongNumber], block:
(object: PFObject?, error:NSError?)-> Void in
if let songFile: PFFile = object?.valueForKey("songFile") as? PFFile
AudioPlayer = AVPlayer(URL: songFile.url)
AudioPlayer.play()
)
【讨论】:
您好,我尝试了您的代码,但它没有构建我收到错误。无法将“字符串”类型的值转换为预期的参数类型“NSURL”任何线索?以上是关于ios swift 2 解析中的流式音频的主要内容,如果未能解决你的问题,请参考以下文章
在 ios swift 中的 NotificationService 中播放流式 URL