如何在 swift4 上从服务器播放 mp3 声音?

Posted

技术标签:

【中文标题】如何在 swift4 上从服务器播放 mp3 声音?【英文标题】:how to play mp3 sound from server on swift4? 【发布时间】:2018-04-06 16:06:53 【问题描述】:

我已经测试过这个函数,错误如下:

playSound(soundUrl: "httpwebxxxxxxxx/sound2.mp3")

func playSound(soundUrl: String) 
        let sound = URL(fileURLWithPath: soundUrl)
        do 
            let audioPlayer = try AVAudioPlayer(contentsOf: sound)
            audioPlayer.prepareToPlay()
            audioPlayer.play()
        catch let error 
            print(soundUrl)
            print("Error: \(error.localizedDescription)")
            //Error: The operation couldn’t be completed. (OSStatus error 2003334207.)
        
    

我已经在真正的设备 iphone 5 ios 10.3 和模拟器上测试过

【问题讨论】:

【参考方案1】:

URL的初始化器fileURLWithPath只适用于本地文件系统中的URL,对于远程URL你必须使用API​​

let sound = URL(string: soundUrl)

基本上不会从远程 URL 同步加载数据。 Use URLSession / URLSessionDataTask.

【讨论】:

以上是关于如何在 swift4 上从服务器播放 mp3 声音?的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有关联应用程序的情况下直接播放声音文件(mp3、wav 等)?

如何在 ActionScript 3 中从缓冲区 (ByteArray/Stream) 播放 MP3 声音?

如何在 Python 中播放声音?

在 iOS 应用中播放多种声音(mp3、wav 等)

iPhone播放声音时如何操作?

在 Linux 上播放 mp3 声音缓冲区