2

我决定在 Swift Playground 中玩 AVAudioPlayer。以下代码在普通 Swift 项目中运行良好,但在 Playground(在助手编辑器中)运行时返回以下错误:

2015-05-12 00:08:04.374 AVAudioFile[2481:141158] 00:08:04.374 错误:AVAudioFile.mm:266:AVAudioFileImpl:错误-54

这是代码:

import Cocoa
import AVFoundation

var audioFileURL = NSURL(fileURLWithPath: "/Users/scooby/Desktop/song.wav")
var error: NSError?
var audioFile = AVAudioFile(forReading: audioFileURL, error: &error)

打印错误附带:

错误域=com.apple.coreaudio.avfaudio 代码=-54“操作无法完成。(com.apple.coreaudio.avfaudio 错误-54。)”UserInfo=0x7fa8c0736f70 {failed call=ExtAudioFileOpenURL((CFURLRef)fileURL , &_extAudioFile)}

只是无法弄清楚为什么它只是游乐场中的一个错误。有什么想法吗?

谢谢!

4

1 回答 1

3

代码 6

  1. 在 Finder 中打开 Playground (“显示包内容”)
  2. 在里面创建一个“资源”文件夹
  3. 在文件夹中添加您的文件
  4. 退出并重新启动 Playground

要使用该文件:

let audioFileURL = NSBundle.mainBundle().URLForResource("myFile", withExtension: "wav")
var error: NSError?
let audioFile = AVAudioFile(forReading: audioFileURL, error: &error)

Xcode 7

不再需要解决方法。

打开 Playground 的项目导航器 ( CMD+1),然后将文件拖放到现有的“资源”文件夹中。

要使用该文件:

do {
    if let audioFileURL = NSBundle.mainBundle().URLForResource("myFile", withExtension: "wav") {
        let audioFile = try AVAudioFile(forReading: audioFileURL)
        // use audioFile here
    }
} catch let error as NSError {
    print(error.localizedDescription)
}
于 2015-05-12T09:54:19.127 回答