今SMFプレイヤー開発に夢中です!

なぜ今更SMFかって?

ウィンドウズメディアプレイヤーには視覚エフェクトがついているのですが、
midiには対応していません。
そこで自分で作ってしまおうと思ったわけです!

元々はドラムの音だけど専用wavで鳴らすような
midiプレイヤーがあったらと思って、
開発しようとずっと前から考えていました。

それでやっと最近になってSMFとMIDIの勉強して、
なんとかMIDIを演奏できるようになりました。


実行画面がこんな感じです。

将来的には、音楽にあわせて
電車の背景が動く・・・みたいなエフェクトとか実装したいです。

めっちゃ面白そう!

でも、これだけで動作重いのに
HSPで周りの視覚的なプレーヤーGUIを作るの面倒そう。
重そう。

どうしようかなー。

周りは単純で、視覚エフェクトのみ頑張りましたって感じにしようかな。

関連記事

  • SMFプレイヤーをつくろう!リベンジ「ボリューム調節をつけよう」SMFプレイヤーをつくろう!リベンジ「ボリューム調節をつけよう」 ボリューム調節をつけました。 MIDIでボリュームをいじる時はどうすればいいでしょうか。 1、デバイスのMIDIボリュームをいじる。 2、チャンネル全部にVolume(コントロールチェンジの0x07番)を送信。 3、チャンネル全部にExpression(コントロールチェンジの0x0B番)を送信。 4、SysExメッセージでマスターボリュームを制御。 5、ノートオンのベロ […] Posted in ツール制作
  • 音の高さの表示ソフトdrawwaveの開発 part1 音の高さを調べるソフトといえば、「おんかいくん」などが上げられますが、 今日はJavaで製作された「drawwave」というソフトを紹介します。(*^U^*) 何をするソフトかというと、リアルタイム(実時間)で音声を目で見るソフトです。 音声の波形を描く ということで draw wave […] Posted in ツール制作
  • Javaで3Dの音声視覚エフェクトを作った part4Javaで3Dの音声視覚エフェクトを作った part4 いままで、SO2、SO2と言ってきましたが、 (SO2=1998年に発売したスターオーシャン2というテレビゲーム) 多分普通の人は知らないので、 しまってあったPS2を出してスクリーンショットを撮ってきました。 ボイスコレクション画面 […] Posted in ツール制作
  • SMFプレイヤーをつくろう!リベンジ「完成した」SMFプレイヤーをつくろう!リベンジ「完成した」 実は、昨日のうちにあっけなく完成。ワ――ヾ(o・ω・)ノ――イ SMFプレイヤーをつくろう!リベンジ「セットテンポと分解能」の問題もいつのまにか全部解決してました。 というわけで、デバイスの設定とかできるようにして、とりあえずうん。 こんな感じ。 白い欄には、曲名・著作権情報・再生時間/長さ・拍:拍子・BPM・歌詞が表示されます。 シンセサイザーの一番の上のは、「Mic […] Posted in ツール制作
  • SMFプレイヤーをつくろう!リベンジ「言語の設定とキーボードの表示」SMFプレイヤーをつくろう!リベンジ「言語の設定とキーボードの表示」 久しぶりにSMFプレイヤーの更新。 といっても前回の段階でSMFの再生の最低限の機能は実装されているので、 今回は表示関連を中心に。 まずは、言語の設定。 生まれて初めて、言語の設定を行えるような機能追加をしました。(=o・ω・o) ほら、これからは日本以外にも視野を広げる時代ですから。はい。 実装としましては、言語の設定は、辞書式にしました。 辞書ファイルはカレントディ […] Posted in ツール制作
  • 音の高さの表示ソフトdrawwaveの開発 part2 「音の高さの表示ソフト […] Posted in ツール制作
  • SMFプレイヤーをつくろう!リベンジ「出力ポート、MIDIと周波数の関係」SMFプレイヤーをつくろう!リベンジ「出力ポート、MIDIと周波数の関係」 追加した機能 ・Sequencerのインターフェースにメソッド名を似させる。 入れ替えとか、いつかクラスを公開時に役立ちそう。 ・Sequencerにあった、ティック単位の位置調節の追加 内部では、ms単位で処理しているので、ティックから時間に変更するようなメソッドを追加で。 ・メイタベント0x59の調情報取得 この調の情報。最初はノートオン時に反映させる […] Posted in ツール制作
  • SMFプレイヤーをつくろう!リベンジ「拍子とタイムベース」SMFプレイヤーをつくろう!リベンジ「拍子とタイムベース」 今回は、現在再生中のSMFが、何分の何拍子のときに、何泊目を演奏しているか。 そういう情報を表示させる時の計算方法のメモです。 これらを計算するためには次のような情報を知る必要があります。 ・d 分の n 拍子の1拍は、デルタタイムでいうといくつになるか。 ・d 分の n […] Posted in ツール制作
  • SMFプレイヤーをつくろう!リベンジ「セットテンポと分解能」SMFプレイヤーをつくろう!リベンジ「セットテンポと分解能」 以前(2007/4/30)、HSPでMCI(Media Control Interface)を利用せずに SMF(スタンダードMIDIファイル .mid)を再生するためのモジュールを作ってSMFプレーヤーを作りました。(ここ) しかし実はこれには色々と問題が山積みになっていたりする。 1. なんかメタイベント,SysExイベントが正常に送れていないっぽい? 2. […] Posted in ツール制作
  • のし紙の制作日記 part2(蝶結び編)のし紙の制作日記 part2(蝶結び編) 今日はのし紙の紐を作ってみた。 紅白のしと言うらしい。 作成にあたって、ひもの数が迷った。 ネット上では、蝶結びタイプは5本・7本・10本とまちまちです。 多分5本か7本が主流だと思うので、簡単な5本にしました。 でも、上の左右のひもの重ね方が最高に難しかった。 コツは上下にコピペを並べるのではなく、左右にコピペを並べる。 ただこうすると、糸の先がずれて […] Posted in ツール制作