#navi(../)
 
-最新版は、http://mabiassist.logue.be/PSGConverterを見てください。
+最新版は、http://mabiassist.logue.be/PSGConverterと、http://logue.github.com/PSGConverter/index.ja.htmlを見てください。
 
 *PSGConverter.php [#gbe0e379]
 PSGConverter.phpは、たまねぎ氏制作のオンラインゲーム「マビノギ」の作曲スキルで使用するMMLをWeb上でMIDIに変換するスクリプトです。
 
 %%当サイトでは若干の改造と仕様を追加し、%%[[MML投稿サイトLolerei>http://mabinogi.logue.be/]]のスピンアウトとして配布しております。(多言語対応)%%
 
 *使用方法 [#ae8b75af]
 :基本:|
  PSGConverter.php?i=(楽器番号)&s=(URLエンコードしたMMLデーター)
 
 :拡張オプション:|
  p=(パンポット0~127)
  c=(チャンネル デフォルトは1。ドラムパートを使用する場合は10にすること)
  e=(エフェクトの量0~40)
  r=(GMリセット trueかfalse)
  d=0(ドラムパートで、単音だけ鳴らしたい場合はそのノートを入れる。例:シンバル=57)
 
 Query Stringsに楽器の定義とMMLデーターを入れる。ただし、タイ記号を示す&や、#や♭を示す#などはURLにすると化けてしまうため、そのまま打ち込んでも正常に再生できないので注意。URLで渡す前に、encodeURIComponent()で変換すること。
 
 ドラムパートの楽器が実装されたため、出力されるMIDIファイルのチャンネルを変更するオプションを加えました。QueryStringにch=10を追加すると、ドラムパートとして処理されます。応用としてパートごとに出力されるチャンネルを分ければQuickTimeでなくても合奏できるかも。
 
 *オリジナル版との変更点 [#y2d2aeb9]
 -出力されるMIDIファイルのトラックごとにチャンネルが異なっていたのを修正
 -チャンネルを自由に指定することが可能(応用例:ドラムパートとして使用するなど)
 -GMリセットをいれるオプション
 -エフェクトを指定
 -パンポッドに対応
 
 *デモ [#nac8cd55]
 準備中
 
 *配布/更新履歴 [#s671b7d3]
 :v2.1(2009/08/08)|
 --[[Loreleiリビジョン29>http://code.google.com/p/lorelei/source/browse/trunk/views/mmls/midi.ctp]]とマージ
 --QuickTimeで演奏できないバグを修正
 --midi Classのバージョンを1.7.5に更新
 :v2.0(2008/04/21)|
 --ソースコードを最適化。大幅に正規表現の回数を減らしたため、若干負荷やメモリリークが減っていると思います。
 --ドラムの場合、ノートを決め打ちできるように
 --MIDI企画の慣例に従い、初期設定のトラックを使用
 --PSGConverter本体をサブルーチン化(Lolerei用のコードを流用)
 --2008/04/17のパッチに対応。これにより、3連譜の入力でC11C12C12のように入力していたMMLをL12CCCでも正常に演奏できるようになった。逆にこれまでのそういったMMLは音がずれる可能性大
 --デフォルトでGMリセットを入れるようにした。(Lolereiのスピンアウトとして作ったため)
 --これに伴い、QuickTimeでの演奏が不可能に。
 :v0.5 (2008/03/08)|
 --トラックごとにチャンネルを分けないようにした。(将来的に合奏に対応させるため)
 --チャンネルを自由に指定することが可能に。(クエリにc=チャンネル)(将来的に合奏に対応させるためと、ドラムパートの為)
 --GMリセットをいれるオプション(クエリにr=true)一般的なMIDI音源用。先頭が1小節分だけ空になる。ノイズ対策にも有効かと。
 --エフェクトを指定(クエリにe=0~128。デフォルトは40)
 --パンポッドに対応(クエリにp=0~128。デフォルトは64)まきまびしーくの規格に準ずる。
 --T50という命令が存在すると、出力されるデーターが化けるバグを修正。
 --URLをデコードする命令を入れた。これにより、encodeURIComponentの1行でPSGConverter.phpに渡すだけで住むようにした。
 --MMLが入力されていないときにエラーを表示。
 :v0.3 (2008/02/19)|
 --PHP MIDI CLASS 1.7.2とマージ
 :v0.2 (2007/12/27)|
 --PHP MIDI CLASS 1.7とマージ
 *TODO/確認されている不具合 [#d664972a]
 -旧仕様(128tick)で作られたMMLが正常に再生できない場合がある。(計算方法に問題あり?)
 -そもそも、正規表現ががいるのは、コマンドを分割するときだけなのでは?せめて、命令が何なのかを解析する部分(ABCDEFNLOV<>の部分)は、substr命令で十分な気がする。
 
 *コメント [#q1c0f84d]
 #pcomment
 
 #keyword(マビノギ,mabinogi,psgconverter,MIDI,MML,変換)
 
// IP:"220.216.49.217" TIME:"2012-11-29(<abbr class="week_day" title="木曜日">木</abbr>)12:59:02" REFERER:"http://logue.be/?cmd=edit&amp;page=Web%E7%B4%A0%E6%9D%90%2FPSGConverter" USER_AGENT:"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.91 Safari/537.11