2021-08-27に投稿

AVAudioUnitSamplerで指定したチャンネルの音をすべて止める方法

AVAudioUnitSamplerにはチャンネル上でMIDIの音をならすためのstartNoteと、停止させるためのstopNoteメソッドがある。でも、例えば自動で演奏させていて、停止ボタンを押した時に全ての音を消したい、と思った時、全ての音を止めるためのメソッドがどうもないっぽい。

ではどうするのか。

AVAudioUnitSamplerにはsendMIDIEventという、MIDIイベントを直接送るできることのできる機能がある。それを利用することでチャンネルの音を全て停止することができた。

具体的には下記のやり方でできた。

ツイッターでシェア
みんなに共有、忘れないようにメモ

だら@Crieit開発者

Crieitの開発者です。 Webエンジニアです(在宅)。大体10年ちょい。 記事でわかりにくいところがあればDMで質問していただくか、案件発注してください。 業務依頼、同業種の方からのコンタクトなどお気軽にご連絡ください。 業務経験有:PHP, MySQL, Laravel, React, Flutter, Vue.js, Node, RoR 趣味:Elixir, Phoenix, Nuxt, Express, GCP, AWS等色々 PHPフレームワークちいたんの作者

コメント