gpt4 book ai didi

swift - Swift Playground 中的 AVAudioFile 结果为 "error -54"

转载 作者:可可西里 更新时间:2023-11-01 01:05:58 26 4
gpt4 key购买 nike

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

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

代码如下:

import Cocoa
import AVFoundation

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

打印出错误:

Error Domain=com.apple.coreaudio.avfaudio Code=-54 "The operation couldn’t be completed. (com.apple.coreaudio.avfaudio error -54.)" UserInfo=0x7fa8c0736f70 {failed call=ExtAudioFileOpenURL((CFURLRef)fileURL, &_extAudioFile)}

只是想不通为什么它只是 Playground 中的一个错误。有什么想法吗?

谢谢!

最佳答案

Xcode 6

  1. 在 Finder 中打开 Playground(“显示包内容”)
  2. 在里面创建一个“Resources”文件夹
  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)
}

关于swift - Swift Playground 中的 AVAudioFile 结果为 "error -54",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30179125/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com