AKAudioFile 导出异步路径错误

AKAudioFile exportAsynchronously path errors

我正在尝试使用 AKAudioFile.exportAsynchronously 将 wav 转换为 m4a(基于此处的示例代码:https://audiokit.io/playgrounds/Playback/Exporting%20Files/)。我已选择 .documents 作为我的 BaseDirectory,但我一直收到 directory <my_dir> isn't valid 错误 — 例如:

AKAudioFile+ProcessingAsynchronously.swift:exportAsynchronously(name:baseDir:exportFormat:fromSample:toSample:callback:):379:ERROR AKAudioFile export: directory "/var/mobile/Containers/Data/Application/20C913AD-B2F4-4F26-AAD2-0DFA0C65A886/Documents/All Of Me.mp4" isn't valid

URL 在我看来完全合理,怎么了?

好的,按照@jake 的提示,解决方案是在传递到 AKAudioFile 的 exportAsynchronously(name:baseDir:exportFormat:callback:) 之前显式处理空格。我刚做了:

var name = String(cafURL.lastPathComponent.split(separator: ".")[0])
name = name.replacingOccurrences(of: " ", with: "%20")
let exportFile = try AKAudioFile(readFileName: "\(name).wav", baseDir: .documents)
exportFile.exportAsynchronously(name: name, baseDir: .documents, exportFormat: .m4a, callback: self.callback)