使用 aubio 读取文件时,在 Swift 的 ExtAudioFileOpenURL 中获取错误代码('wht?')
Posted
技术标签:
【中文标题】使用 aubio 读取文件时,在 Swift 的 ExtAudioFileOpenURL 中获取错误代码(\'wht?\')【英文标题】:Getting error code ('wht?') in ExtAudioFileOpenURL in Swift when using aubio to read file使用 aubio 读取文件时,在 Swift 的 ExtAudioFileOpenURL 中获取错误代码('wht?') 【发布时间】:2016-08-10 09:18:19 【问题描述】:我正在使用 aubio 来分析音频文件,但是当我尝试像这样使用函数 new_aubio_source 时:
let source = new_aubio_source(StringToUnsafeMutablePointerChar_t(url.absoluteString), 0, 512)
我总是遇到这些错误。
AUBIO ERROR: source_apple_audio: Failed opening file:///var/mobile/Containers/Data/Application/C11B42E5-02B5-4373-8302-0728B2CB2296/Documents/music.m4a, error in ExtAudioFileOpenURL ('wht?')
AUBIO ERROR: source_wavread: Failed opening file:///var/mobile/Containers/Data/Application/C11B42E5-02B5-4373-8302-0728B2CB2296/Documents/music.m4a (System error: No such file or directory)
AUBIO ERROR: source: failed creating aubio source with file:///var/mobile/Containers/Data/Application/C11B42E5-02B5-4373-8302-0728B2CB2296/Documents/music.m4a at samplerate 0 with hop_size 512
我 100% 确定路径是正确的,但我就是不知道为什么会出现这些错误。我认为问题出在第一条错误消息(source_apple_audio)中。
source_apple_audio 在这里定义:
source_apple_audio
其中使用了这个函数:ExtAudioFileOpenURL,得到了错误码('wht?')
非常感谢您的帮助!
【问题讨论】:
虽然这个问题很老了,但文件系统url的路径是url.path
而不是url.absoluteString
。
【参考方案1】:
你在删除前导file://
时是否也有这个问题?
请open a new issue。
【讨论】:
是的,这就是解决方案! 对我来说,这是通过将let fileURL = URL(fileURLWithPath: filePath)
替换为 let fileURL = URL(string: filePath)
来完成的以上是关于使用 aubio 读取文件时,在 Swift 的 ExtAudioFileOpenURL 中获取错误代码('wht?')的主要内容,如果未能解决你的问题,请参考以下文章
如何在不使用 Aubio 的情况下获得 .wav 文件的平均音高?