実は、昨日のうちにあっけなく完成。ワ――ヾ(o・ω・)ノ――イ
SMFプレイヤーをつくろう!リベンジ「セットテンポと分解能」の問題もいつのまにか全部解決してました。

というわけで、デバイスの設定とかできるようにして、とりあえずうん。

こんな感じ。
白い欄には、曲名・著作権情報・再生時間/長さ・拍:拍子・BPM・歌詞が表示されます。
シンセサイザーの一番の上のは、「Microsoft MIDI マッパー」マッパーがどうしても文字化けします。
「Java Sound Synthesizer」はJDK1.6使うと音聞こえるのに、JRE1.6の方使うと音でない。謎。
好みというか「Java Sound Synthesizer」は
「Microsoft GS Wavetable SW Synth」と違ってちゃんとリバーブ反映されてるようで音楽が綺麗。
対応していないの→調の設定・2ポート以上使用するSMF

下の●を動かせば、途中から再生とかも出来ます。

もう少しいろいろやってみたら、不評なJavaアプレットとかにしてみよう。[´・ω・`]

ところでJavaのレイアウトはSpringLayoutが最強ですね。
めっちゃ使いやすい。あれっなんか前もこんなこと書いたような…。デジャブ?

あと、Javaには、Receiverというのがあって、これを使えばMIDI音源とか作れるみたい。
いつか作ってみたいなあ。でも面倒そうだなあ。

以前のブログへ SMFプレイヤーをつくろう!リベンジ「拍子とタイムベース」
続く… SMFプレイヤーをつくろう!リベンジ「ボリューム調節をつけよう」

完成したJava製のSMFプレイヤーのダウンロード

関連記事

  • 音の高さの表示ソフトdrawwaveの開発 part1音の高さの表示ソフトdrawwaveの開発 part1 音の高さを調べるソフトといえば、「おんかいくん」などが上げられますが、 今日はJavaで製作された「drawwave」というソフトを紹介します。(*^U^*) 何をするソフトかというと、リアルタイム(実時間)で音声を目で見るソフトです。 音声の波形を描く ということで draw wave […] Posted in ツール制作
  • Javaで3Dの音声視覚エフェクトを作った part4Javaで3Dの音声視覚エフェクトを作った part4 いままで、SO2、SO2と言ってきましたが、 (SO2=1998年に発売したスターオーシャン2というテレビゲーム) 多分普通の人は知らないので、 しまってあったPS2を出してスクリーンショットを撮ってきました。 ボイスコレクション画面 […] Posted in ツール制作
  • SMFプレイヤーをつくろう!リベンジ「言語の設定とキーボードの表示」SMFプレイヤーをつくろう!リベンジ「言語の設定とキーボードの表示」 久しぶりにSMFプレイヤーの更新。 といっても前回の段階でSMFの再生の最低限の機能は実装されているので、 今回は表示関連を中心に。 まずは、言語の設定。 生まれて初めて、言語の設定を行えるような機能追加をしました。(=o・ω・o) ほら、これからは日本以外にも視野を広げる時代ですから。はい。 実装としましては、言語の設定は、辞書式にしました。 辞書ファイルはカレントディ […] Posted in ツール制作
  • 音の高さの表示ソフトdrawwaveの開発 part2音の高さの表示ソフトdrawwaveの開発 part2 「音の高さの表示ソフト […] Posted in ツール制作
  • SMFプレイヤーをつくろう!リベンジ「出力ポート、MIDIと周波数の関係」SMFプレイヤーをつくろう!リベンジ「出力ポート、MIDIと周波数の関係」 追加した機能 ・Sequencerのインターフェースにメソッド名を似させる。 入れ替えとか、いつかクラスを公開時に役立ちそう。 ・Sequencerにあった、ティック単位の位置調節の追加 内部では、ms単位で処理しているので、ティックから時間に変更するようなメソッドを追加で。 ・メイタベント0x59の調情報取得 この調の情報。最初はノートオン時に反映させると思ってた […] Posted in ツール制作
  • SMFプレイヤーをつくろう!リベンジ「拍子とタイムベース」SMFプレイヤーをつくろう!リベンジ「拍子とタイムベース」 今回は、現在再生中のSMFが、何分の何拍子のときに、何泊目を演奏しているか。 そういう情報を表示させる時の計算方法のメモです。 これらを計算するためには次のような情報を知る必要があります。 ・d 分の n 拍子の1拍は、デルタタイムでいうといくつになるか。 ・d 分の n […] Posted in ツール制作