avfoundation – AVAudioConverter在iOS 10中被打破

avfoundation – AVAudioConverter在iOS 10中被打破,第1张

概述AVAudioConverter似乎在iOS 10中被破坏了.该代码现在在iOS 9中运行 错误域= NSOSStatusErrorDomain代码= -50“(null)” 无论使用何种音频格式,都会返回.每年都让我感到惊讶,基本的库功能停止工作. func audioConverterFailureIOS10() { // Describe the audio format l AVAudioConverter似乎在iOS 10中被破坏了.该代码现在在iOS 9中运行

错误域= NSOsstatusErrorDomain代码= -50“(null)”

无论使用何种音频格式,都会返回.每年都让我感到惊讶,基本的库功能停止工作.

func audioConverterFailureIOS10() {    // Describe the audio format    let informat = AVAudioFormat(standardFormatWithSampleRate: 44100,channels: 2)    let outFormat = AVAudioFormat(standardFormatWithSampleRate: 22050,channels: 2)    // Allocate buffers    let outBuffer = AVAudioPCMBuffer(pcmFormat: outFormat,frameCapacity: 1024)    // Create an input block that is called when the converter needs input    let inputBlock : AVAudioConverterinputBlock = { (inNumPackets,outStatus) -> AVAudioBuffer? in        // Fails before entering here        return nil    }    // Create the audio converter    let converter = AVAudioConverter(from: informat,to: outFormat)    var error : NSError?    _ = converter.convert(to: outBuffer,error: &error,withinputFrom: inputBlock)    // Error Domain=NSOsstatusErrorDomain Code=-50 "(null)"    print(error)}
解决方法 因此,事实证明outBuffer frameLength必须设置为frameCapacity.默认情况下,长度为0,在iOS 10上显然有不同的处理方式 总结

以上是内存溢出为你收集整理的avfoundation – AVAudioConverter在iOS 10中被打破全部内容,希望文章能够帮你解决avfoundation – AVAudioConverter在iOS 10中被打破所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1067691.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存