5
AVAudioConverterは、コードはiOSの9での作業となりましたAVAudioConverterは10
エラードメイン= NSOSStatusErrorDomainコード= -50 "(ヌル)"
が返されますどんなにたiOSの10で壊れているように見えるのiOSに壊れていますどのオーディオフォーマットが使用されますか。私は毎年、基本的なライブラリ機能が動作しなくなることを賞賛しています。
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)
}
Wow 9.3 SDKに基づいて作成されたアプリケーションは機能しますか? @リズムフィスターマン –
。私はXcode 7.3をインストールし、9.3 SDKに対して正確な同じコード(Swift 2.x構文で)を実行し、**エラーはありません**。 「面白い」ことは、iOS 9がリリースされた昨年、アップルのlib内のセグメンテーションフォールトのために、古い拡張オーディオファイルサービスの代わりにAVAudioConverterを使用してコードを更新したことです。たぶん彼らはそれを修正し、代わりに他の1つを壊しました... – borrel