読者です 読者をやめる 読者になる 読者になる

S.F. Page

Programming,Music,etc...

MIDI

デバイス選択画面を作り始める。

昨日今日とMIDIインターフェースの選択画面を作っていた。まずはResEditで(VS2012 Expressはリソースエディタが使えないのだ。)MIDI出力選択用・MIDI入力選択用のコンボボックスを縦に並べ、列挙したMIDIデバイスを追加してみたのが下の画面。 ここでよく…

MIDIメッセージ処理を作りはじめる。

ぼちぼちとであるが、MIDIメッセージ処理部分を作り始めている。まずはデバイス指定ダイアログを作り、指定したデバイスを初期化する部分を作ろうとしている。それからシーケンスデータをMIDI出力に変換したり、MIDI入力をシーケンスデータに変換していく部…

MIDIプログラミングの初歩からやり直す

やっぱりSTED2をいきなり換骨奪胎するなんていうのは私には手に余るものであった。MIDIプログラミングについてきちんと初歩からやり直そうと思う。 まずは以前書きかけで放置していたMIDI IN/OUTのコードをベースにSMFファイルを再生することから始めようと…

MIDI再生部分を考える。

MIDI IN/OUTができるようになったところで、次にしようと思っているのはMIDIデータの読み込みと演奏である。 演奏部分はXS-1+サウンドフォントを使って再生できるようにしたいとか考えている。 大まかな仕組み スタンダードMIDI・RCP形式のファイルを読み込…

midiInOpenのdwFlagsパラメータ

midiInOpenのdwFlagsのCALLBACK_THREADって何?と思って調べてみた。 http://ho3264.blog72.fc2.com/blog-entry-157.html 上記はwaveInXXXXの例だけどおそらくMIDIでも同じだろう。スレッド関数の中でメッセージループを回してMIDIメッセージをGetMessage()…

システム・エクスクルーシブの処理

昨日は帰りに楽器屋に寄って、テスト用に手頃な中古MIDI音源がないかなーと思ってチェックした。SC88Proが19,800円、TX81Zが4000円だった。TX81Zがまだ売っているが驚きだが。TX81Zは手頃な価格なのだが図体がでかい(ラックマウント)ので諦めた。どこかにS…

仮想MIDIケーブルとか

Windows上でMIDI Outデバイスに見えるタイプのソフトシンセは廃れてしまったのだけれど、DominoとかCherryとかの純粋なMIDIシーケンサから仮想MIDIケーブルを経由してVSTホストアプリに繋げて音を鳴らすことはできるようである。 この仮想MIDIケーブルってど…

MIDI Outputの実装

続いてMIDI Outputも実装してみた。とりあえずはデバイスの列挙・オープン・クローズのみである MIDI Outにソフトシンセ(Microsoft GS Wavetable SW Synth)を選んで、昨日作ったMIDI Inputクラスと::midiConnectしてみた。MIDIキーボードを押すと発音はした…

MIDI Input 部分の実装

MIDI Input部分の実装を進めている。かなり前に作ったコードをベースに行っているところ。いらない部分を削ぎ落とし整理した。とりあえず動いている様子。 http://git.sourceforge.jp/view?p=winaudioj/win7x64Audio.git;a=log;h=refs/heads/MidiCodeTest C+…

MIDIまわりの実装を考える。

まずはMIDIに関連するクラス作りから始めている。Sound TrackerやVST Hostを作りかけては挫折しているので、MIDI周りのコードはざっくりとは理解しているが細かなところはすっかり忘れている。 年齢を追うごとに記憶力は減退していくな。やっぱり。僕も若い…