前提・実現したいこと
SwiftでiOS用のAudioUnitV3を利用可能なシーケンサーソフトを作っています。
AudioUnitV3でテンポ情報を共有するために、AUHostMusicalContextBlockを利用したいと思うのですが、うまくいきません。以下のようなコードを書きましたが、エラーが発生します。
アドバイス頂けますと幸いです。
発生している問題・エラーメッセージ
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
該当のソースコード
var n:Double = 200.0 let bpm = UnsafeMutablePointer<Double>(&n) let num : Optional<UnsafeMutablePointer<Double>> = nil let den : Optional<UnsafeMutablePointer<Int>> = nil let pos : Optional<UnsafeMutablePointer<Double>> = nil let nxt : Optional<UnsafeMutablePointer<Int>> = nil let dwn : Optional<UnsafeMutablePointer<Double>> = nil var aublock:AUHostMusicalContextBlock! let auhb = aublock!(bpm,num,den,pos,nxt,dwn)
試したこと
AUHostMusicalContextBlock の書き方自体が間違っているのかもしれません。Appleの以下のドキュメントを参照していろいろ試していますが、うまくいきません。
https://developer.apple.com/documentation/audiotoolbox/auhostmusicalcontextblock
Type Alias AUHostMusicalContextBlock
A block through which hosts provide musical tempo, time signature, and beat position.
typealias AUHostMusicalContextBlock = (UnsafeMutablePointer<Double>?, UnsafeMutablePointer<Double>?, UnsafeMutablePointer<Int>?, UnsafeMutablePointer<Double>?, UnsafeMutablePointer<Int>?, UnsafeMutablePointer<Double>?) -> Bool
補足情報(FW/ツールのバージョンなど)
Xcode9.2
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/14 04:25