使用 URL (swift) 从 mp3 文件中获取元数据

Get metadata from mp3 file with URL (swift)

我是 swift 的新手,我想从位于服务器上的 mp3 文件中获取数据(我使用了 URL,例如:http://myserver.eu/file.mp3)。

我使用了一些 tuto,比如 http://geekyviney.blogspot.com/2015/02/extracting-data-like-thumbnail-images.html(它正在处理本地文件,我正在尝试让它处理来自 url 的文件) 我有一个例外: 线程 1:EXC_BAD_INSTRUCTION(代码=EXC_I1386_INVOP,子代码=0x0

致命错误:在展开可选值 (lldb) 时意外发现 nil

我想 pathForResource 只能用于本地文件?感谢您的帮助

var filePath = NSBundle.mainBundle().pathForResource("http://servername.eu/filename", ofType: "mp3")
        var fileUrl = NSURL(fileURLWithPath: filePath!)
        var asset = AVAsset.assetWithURL(fileUrl) as AVAsset

没错,pathForResource 用于在应用程序包中访问本地文件。

要从具有 http 方案的 URL 加载数据,请使用此语法

let urlString = "http://servername/filename"
let serverURL = NSURL(string: urlString)!
if let asset = AVAsset.assetWithURL(serverURL) as? AVAsset {
  // do something with the asset
}

Swift 3 版本:

let urlString = "http://servername/filename"
if let serverURL = URL(string: urlString) {
    let asset = AVAsset(url: serverURL)
    // do something with the asset
}

哦,别忘了添加正确的导入

import AVFoundation