YellowMusicPlayerについて
YellowMusicPlayerとは、Tonyu1用のMidi,Oggプレイヤーです。
Tonyu1付属のMidiPlayerよりも、高速で多機能です。
Tonyu1でMidiとOgg Vorgisの音楽を鳴らすことができます。
特徴
- MidiとOgg Vorbisが鳴らせます。
- MP3の音声データを鳴らしたい場合は、お手数ですがOgg Vorbis形式に変換してください。
MP3は特許問題を懸念して、あえて対応させていません。
- YellowMusicPlayerはTonyu1の開発環境版・ランタイム版どちらでも導入できます。
- Tonyu開発環境版でOggを鳴らす場合は、Midiを鳴らした後にOggを鳴らすと鳴ります。
(Midiを鳴らすとプロジェクトの場所(パス)を取得できるため)
- Tonyuが終了したときは、YellowMusicPlayerは自動的に終了できます。
- Tonyuが終了してもプロセスが残らないようにしっかり対策しています。
- Windows98以降で動作します。
NT系のOS(2000,XP,Vista,7など)では、DirectMusicを使います。
9x系のOS(98,Me)では、Windowsで設定されたMidiデバイスを使います。
- ver 2.34からは、Vista以降はDirectMusicを使い、XP以前ではWindowsで設定されたデバイスを使います。
※ 上記はデフォルトの設定時の動作で、設定を変えることもできます。
- Midiはデフォルトの設定では、DirectMusicを使って再生します。(設定を変えるとDirectMusicをOFFにできます)
- Oggは、DirectSoundを使って再生します。
- MidiとOggを同時に鳴らせます。(MidiとOggで1曲ずつなら可能です。Midiを2曲やOggを2曲という組み合わせは不可能です)
長所
- 標準Midiデバイスよりも、音がきれいです(DirectMusicがONの場合)
- 反応が速いです
- BGMの切り換えがスムーズに行われます(BGM切換時に無音になる時間が少ない)
- Windows Vista以降では標準Midiデバイスを使っている場合、リズムパートがならない不具合が解消されます。
- どの環境でも同じ音源で鳴らせます。(XP以前のOSはデフォルト設定ではDirectMusicを使わないため例外)
- 標準のMidiプレイヤーや他のMidi,Ogg プレイヤーよりも多彩な表現が可能になります。
短所
- DirectMusicがONの場合、Windows Vista以降では、YellowMusicPlayerの起動に時間がかかるPCがあります。
(設定でDirectMusicをOFFにすると、起動が速くなります)
(win7では、Tonyuが起動して大体1~3秒後にBGMが鳴らせるようになるPCもあれば、すぐにBGMを鳴らせるPCもありました)
- DirectMusicを設定でOFFにした時に、MidiデバイスにTimidity++を使用している場合は、たまにMidiの音色が全てピアノになる場合があります。
機能
Midiで使える機能
- Midiの再生・停止に加え、一時停止・一時停止から再開ができます。
- Midiの再生・停止に関しては、以下の操作・エフェクトの設定ができます。
- 再生中に変更可能
- 音量調節
- テンポ調節
- ピッチ調節(音の高低を調節)
- 再生前に設定
- ループ再生
- フェードイン再生
- キーシフト(移調)
- 再生開始位置を指定
- 冒頭の空白スキップのON/OFF
- 末尾の空白スキップのON/OFF
- マスターピッチ機能のON/OFF(ONにするとピッチ調節が可能になる)
- ノーマライズ機能のON/OFF
- エクスクルーシブ送信のON/OFF
- 停止前に設定
- 音量調節・テンポ調節・フェードアウト停止・一時停止・一時停止からの再開は、TonyuMidiLitestと互換性があります。
- 現在の演奏時間の取得・Midiファイルの情報取得などもできます。
- CC#111のループに対応しています。
- 起動中にDirectMusicのON/OFFを切り替えることができます。
- DirectMusicで使われるDLSファイルを使うことができます。(DirectMusicがONの時)
Oggで使える機能
- Oggの再生・停止・一時停止・一時停止から再開ができます。
- Oggの再生・停止に関しては、以下の操作・エフェクトの設定ができます。
- 再生中に変更可能
- 音量調節
- テンポ調節
- パン調節(スピーカーの左右の音量のバランスを調節できる)
- 再生前に設定
- ループ再生
- フェードイン再生
- 再生開始位置を指定
- ループ始端の位置を指定 (MidiでいうCC#111のループのようなもの)
- ループ終端の位置を指定
- Oggループ使用のON/OFF
- 停止前に設定
- 現在の再生時間の取得・Oggファイルの情報取得などもできます。
- Oggループ(ループタグによるループ)に対応しています。
その他の機能
- コンピュータ内の日付・時刻を取得できる。
- ディスプレイの解像度を取得できる。
- Windowsのバージョンを取得できる。
- ジョイスティックが接続されているか取得できる。
- YellowMusicPlayerが準備中(起動中)かTonyuで検知することができる。
- 他のMidi, Ogg プレイヤー の動作を再現できます
- 対応しているプレイヤーは、「Tonyu Midi Litest」「MidiOggPlayer」「TonyuでOgg Vorbisを鳴らすサンプル」の3つです。
起動時に設定できる機能
以下の詳細はここのページを参照してください。
Player.exeのファイル名を変えても、Tonyu強制終了にYellowMusicPlayerが自動終了できるようにします。
※ ver2.10より設定を省略しても自動終了できるようになりました
- DirectMusicを使用するかしないか設定できます。
- 他のMidi, Ogg プレイヤー の動作を再現できます。
- ファイルの読み込み頻度を調節できます。
読み込んだMidiファイルをメモリに保持するかしないか設定できます。
※ ver2.20よりこの機能は廃止
以下の詳細はここのページを参照してください。
- DirectMusicで使われるDLSファイルを読み込ませることができます。
動作環境
- Windows 11 / 10 / 8.1 / 8 / 7 / Vista / XP / 2000 / Me / 98SE / 98 / 95 / NT 等で動くと思う(下記、動作確認を参照)
DirectX 8 以降
※ ver2.37よりDirectX 1 以降で動作します(DirectMusicを使う場合はDirectX 8 以降が必要)
- Tonyu System ver1.17 以降 (ランタイム版・開発環境版どちらでも動作可能)
開発環境版の場合、Tonyu 1.22以前ではプロセスが残ってしまうので非推奨です。
※ ver2.33よりTonyu 1.22以前の開発環境版でもほぼ正常に動作します
- YellowMusicPlayer単体(Ymplayer.tonyu無し(Midiの再生のみ))だと、Tonyu 1.15以降でも動作します。
- (推奨)PC内部のHDDまたはSSDからの起動(リアルタイム性の高い記憶媒体)
- (非推奨)USBメモリ、外付けHDDからの起動(リアルタイム性の低い記憶媒体)
動作確認
- Windows 11
- Windows 10
- Windows 8.1
- Windows 7
- Windows XP
- Windows 2000
- Windows 98 Second Edition
- 確認した中で最も古い環境:Windows 98 Second Edition (DirectX6.1a)
Tonyu System 1 が動作する環境であればYellowMusicPlayerも動作します。
Tonyu System 1 の動作環境:
Tonyu System 1 はWindows 98 Second Edition以降ならOSインストール直後から使えます。
Windows 98ではDirectX6をインストールしてくださいとエラーダイアログが出て、起動できなかった記憶があります。
開発環境
- コンパイラ:Borland C++ Compiler 5.5.1
- 統合環境:BCC Developer (br 三浦 淳さん)
Visual Windows for BC++ (by 安江正樹さん)
- 言語:C
- 使用したライブラリ等:GuruGuruSMF ver.4.0.6 (by 卯如さん)
:libogg, libvorbis (by Xiph.org Foundation) 著作権表示
ライセンス
MIT License
Copyright (c) 2012-2021 makkii_bcr
- このソフト・ソースコードの再配布は自由にできます。
- 改造も構いません。
- 商用利用も構いません。
- 無保証です。不具合などでいかなる事故が起きても責任はとれません。
補足
ゲームやプロジェクト等に、実行ファイルを組み込む場合、
実行ファイル(「Midiplayer2.exe」や「MidiPlay.exe」)のプロパティからCopyrightが表示されれば、
追加で著作権表示は必要ありません。
ファイル名「Midiplayer2.exe」は変更しても構いません。
Tonyu System 以外で使用しても構いません。
付属サンプル
「2.サンプル」フォルダには、YellowMusicPlayerを使ったサンプルプログラムがあります。
「テスト」
YellowMusicPlayerの機能を実際にランタイム上で使えるようにしてあるサンプルです。
YellowMusicPlayerが実際どんなことができるかが、手っ取り早くわかると思います。
ちなみに、「テスト」では好きなMidiをプロジェクトで登録するだけで鳴らせます。
やり方は、まずあらかじめ、「テスト」フォルダ内の「Usr」フォルダに、鳴らしたいmidiファイルを置いておきます。
Tonyu開発環境版で「index.cmml」を開き、「ツール」→「BGM・効果音」→「自動追加」でmidiファイルを登録します。
「実行」→「実行」またはF9キーで実行したらTonyuを閉じ、ランタイム版で起動すると登録したmidiファイルを鳴らせます。
好きなOggを鳴らしたい場合は、「Usr」フォルダにOggファイルを置き、
「files」フォルダの「OggFileList.txt」に鳴らしたいOggのファイル名を記述してください。
「ちょっと音ゲー」
YellowMusicPlayerの再生時間取得の機能を使って、音とゲームの誤差を少なくした音ゲーです。
タイミングを優先させるために、最初の設定では効果音なしの状態になっています。
効果音を鳴らしたい場合は、Shiftキーを1回押して「効果音のタイミングをBGMに合わせる」にしてください。
ただし、Tonyuでは効果音が鳴るまでのラグがあるので、キーを押すタイミングは実際より0.05秒程早くなります。
違和感を感じた場合は、「タイミングをBGMに合わせる(効果音なし)」に戻してください。
※ これらのサンプルはファイルの読み書きを頻繁に行う場合があり、外付けHDD・USBメモリなどからソフトを起動すると、激しく処理落ちします。
PC内蔵のHDD,SSDなどで起動してください
戻る