簡體   English   中英

解析來自iOS Swift 2的流音頻

[英]streaming audio from parse for ios swift 2

編譯完一切似乎還不錯之后,我有一個代碼可以在ios上快速解析來自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()
        }
})

}

是的,它正在工作,只有您需要檢查可選性,如下所示:

    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()
        }
    })
}

我尚未對此進行測試(我目前沒有任何解析中的音頻文件),但是,為什么不訪問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()
            }
        })
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM