内蔵音源をmidi変換するスレ

このエントリーをはてなブックマークに追加
1SOUND TEST :774
各種内蔵音源データからmidiデータに変換に関する情報交換をするスレです
2SOUND TEST :774:2008/11/15(土) 22:08:43 ID:pRFMBKMw
もうGMやめたい
3SOUND TEST :774:2008/11/15(土) 22:10:42 ID:5G1OtY6+
よん?
4SOUND TEST :774:2008/11/16(日) 03:57:11 ID:GqAbtvYL
最悪なスレ立て
5SOUND TEST :774:2008/11/16(日) 09:24:37 ID:Y5tHAWvU
寂しいスレ立てになったなぁ。
6SOUND TEST :774:2008/11/16(日) 09:42:04 ID:xYKYunlG
GMってゲームミュージックじゃなくMIDI再生のためのGMの事だと思ったのは俺だけか?
7SOUND TEST :774:2008/11/16(日) 09:45:15 ID:xYKYunlG
8SOUND TEST :774:2008/11/16(日) 16:49:43 ID:raM9dp+a
内蔵音源をMIDIに変換するには、まず、
 ・MIDIインターフェースの開発
 ・音源モジュールの仕様解析
 ・音源モジュール制御のソフトウェア開発
   ↑MIDI信号を受信して、信号通りに音源を制御するマイコン開発
が必要だな。

でも、言いたいことは、
ゲーム内独自フォーマット曲データを、SMF(Standerd MIDI File)に変換するスレだと思う。


前者だったら、俺、すごい興味ある。
MIDI信号でファミコンを操作とか、すっげぇ〜興味ある。
Z80時代の論理(ロジック)回路の設計なら、経験者なんで手伝えるぞ。
9SOUND TEST :774:2008/11/16(日) 21:42:43 ID:Y5tHAWvU
↑スゲェな。弟子入りすっかな・・・・
10SOUND TEST :774:2008/11/20(木) 02:00:12 ID:VJsPFPfS
LFOの計算式が、まだ微妙だ。
色々な計算式で試していたんだ。
FF7は良い感じのLFOになったんだけど、
FF9でビブラートかかりすぎたりするわ。

0xB4   音程LFO
 n1 … ディレイ
 n2 … ???
 n3 … 半周期の時間[Step]

0xB5
 n1 … 振幅量 128で半音位?(100cent)

0xDD 音程LFO
wTime … 有効時間[step](2byte)



0xB4のn2も振幅だと思ったんだけど、違うっぽい。
n2はいったい何だろう。
確かめるのに、色々なデータ聞かないと行けないから、
LFOの実装は、結構時間かかりそう。
11SOUND TEST :774:2008/11/20(木) 02:05:30 ID:VJsPFPfS
n2の値は、
 FF7  0x01が多い
 SagaF1 0x02が多い
 FF9  0x0Cとか、0xDCとか、0x44とか
ちょっと、このパラメータ何なのかわかんねぇ。
12SOUND TEST :774:2008/11/20(木) 22:47:45 ID:VJsPFPfS
ごめん、ドキュメントに16ch版AKAOとか書いていたけど、
FF7のエンディングとか、普通に24ch使ってた。
エンディング以外は、16chにしているっぽい。

ff7mmlも、一応、32ch吐ける仕様にはしてあるから、
define.mmlの 17〜32chの定義してるとこのコメントアウト消して。

;Port 2(17〜32ch)
;0E EExff,x21,1,1 C1
;1E EExff,x21,1,1 C2

この辺を
0E  〜
1E  〜
2E  〜
ってかんじで。
13SOUND TEST :774:2008/11/20(木) 22:49:56 ID:VJsPFPfS
ちなみに、エンディング曲は、CD−ROM3枚目の、
movieフォルダー内の、何かのファイルに入ってた。
14SOUND TEST :774:2008/11/20(木) 23:34:30 ID:VJsPFPfS
一部の曲で音痴だなぁ〜音痴だな〜思ってたら、

ゴメンナサイ!!!    多分、バグ

いま、何で音痴なんだろう思って、データみてたら、
半音記号の出力を忘れてるかもしれません。
ちょっと、ソース見直します。
15SOUND TEST :774:2008/11/21(金) 00:06:11 ID:6XqsTtcE
16SOUND TEST :774:2008/11/21(金) 00:07:39 ID:6XqsTtcE
しまった。。。
途中でエンター、しかも上げちった。ゴメンナサイ。

version 1.11 2008.11.20
・LFOの計算式を変更。多分これで、近くなった。
・リズムパートがあった場合に、暴走する可能性があったバグを修正
・0xA2コマンドで指定後の音符が、#若しくは♭が付く音階であった場合
 半音下がってしまうバグを修正。
・何処に何のルーチンあるか解らなくなったので、ファイルを分割した。
akao2mml.asm … 本体
a2m_main.asm … メインルーチン
a2m_sub.asm … サブルーチン郡(File & Memory操作関連)
a2m_uc.asm … 逆MMLコンパイル部
a2m_def.asm … コマンド毎の変換情報
17SOUND TEST :774:2008/11/21(金) 08:27:46 ID:KmrnPvRA
>>15-16


ただ先に前スレ埋めたらどうだい?
18SOUND TEST :774:2008/11/21(金) 13:45:40 ID:h0T7YTOC
そうそう。
980超えたから、早く埋めないと落ちちゃうよ?
19SOUND TEST :774:2008/11/21(金) 14:34:57 ID:prupvPMs
>>8
サターンにはMIDI楽器化するオプションがあった
20SOUND TEST :774:2008/11/21(金) 19:58:38 ID:ZAu+yqGo
ワンダーメガにはMIDI出力端子付いてたな
21SOUND TEST :774:2008/11/21(金) 20:48:46 ID:6XqsTtcE
>>18-19
出力端子が付いていても、入力がないと受信できないと思うんだ。

でも、よくよく考えると、わざわざMIDI化しなくても、
その音源に特化した音源ドライバー書いた方が、表現力は高いと思う。
MIDIだと、31.25kbpsという通信速度の制約もあるし。
正直、ff7mmlとff8mmlでも、MIDIの通信帯域大丈夫かな?と不安。
今のところは、大丈夫っぽい。

まぁ、サターンとか持ってこられても、俺が書けるのは、
Z80と8086のアセンブリ言語だけで、
60系のアセンブラやC言語は書けない。
22SOUND TEST :774:2008/11/21(金) 21:00:26 ID:6XqsTtcE
そうそう、ff7mmlは、define.mmlってのつけて、
曲データ内(元AKAOファイル)の各音色番号を、
MIDIの音色番号に変換できるようにしておいたんだけど、
サガフロとかは、原曲聞いたことがないので、自分は書けない。
解った範囲だけでも良いので、協力頼みます。
こんな感じで?

FF7 SC88-Pro用 define.mml設定
$0i $0z H0,3 @49 k127 y100,2 y101,0 y6,76 ;@60 Slow Strings?
$1i $0z H0,3 @50 k127 y100,2 y101,0 y6,64 ;@61 Synth Strings
23SOUND TEST :774:2008/11/22(土) 01:52:24 ID:xX+lx6/S
http://www1.axfc.net/uploader/He/so/161418.txt

寝る前に、頑張った。
FINAL FANTASY 7用を、SC88-Proで聞くための音色設定。
植松伸夫殿は、SC88-Pro使いらしいから、まぁ、似ると思う。
一部音色は、コルグ系の音色な気もするけど。

CD聞かないで、記憶だけで音色番号割り当てた。
でも、FF7の音色割り当てしてて思ったけど、
クラリネットって、普通ビブラートしないよな・・・。
自分はオーボエ吹きだから、ビブラートしまくるが。
24SOUND TEST :774:2008/11/22(土) 02:21:13 ID:xX+lx6/S
Microsoft GS Wavetable って、もしかしてGSのExclusive受信できないの?
ch10をメロディーにするExclusive message送ってるのに、パーカスのままだ。
とおもいきや、ch1〜9,11〜15をリズムにするExclusive messageはちゃんと受信してるっぽい。

やっぱ、Microsoft GS Wavetableじゃ、制約ありまくりか。

25SOUND TEST :774:2008/11/22(土) 05:47:38 ID:j5qczrnv
>>24
F0 41 10 42 12 40 00 7F 00 41 F7
F0 41 10 42 12 40 10 15 00 1B F7
これでなるけどなぁ。
26SOUND TEST :774:2008/11/22(土) 10:04:59 ID:xX+lx6/S
パーカスon/offの定義こうなってる。
$0z EX x41,x10,x42,x12,{x40,x10+R,x15,0},xF7 J0 ;パーカスoff
$1z EX x41,x10,x42,x12,{x40,x10+R,x15,1},xF7 H0,3 o2 $8z ;パーカスon 1
$2z EX x41,x10,x42,x12,{x40,x10+R,x15,2},xF7 H0,3 o2 $9z ;パーカスon 2

あってるよな・・。
まぁ、実機SC88Proでは、ちゃんとなってるからいいか。
27SOUND TEST :774:2008/11/24(月) 15:42:01 ID:nvEKtQ7z
>>15-16


88pro設定使ってみた。
MIDIへの変換物でも結構再現できるんだな。
音量バランスは悪いが。
28SOUND TEST :774:2008/11/24(月) 17:28:31 ID:8aTQv2dE
そろそろakaoネタも尽きてきた頃じゃね?  suzukiネタが出ねぇかな?
29SOUND TEST :774:2008/11/24(月) 17:33:41 ID:aMr8JZX2
まだdewprismが残ってるじゃあないか
30SOUND TEST :774:2008/11/24(月) 21:44:18 ID:jBfS/2kX
DEWPRISMは曲好きで耳コピ挑んだが何度も挫折したから是非やって欲しいな
31SOUND TEST :774:2008/11/24(月) 22:36:58 ID:a0HT2WA0
デュープリズムは■のPS1内蔵音源タイトルでは最重要と言っていいかもしれん
32SOUND TEST :774:2008/11/25(火) 01:00:22 ID:HY5Pd/Eo
ところで物凄い初歩の質問で申し訳ないんだけど
ゼノとかデュープリとかってエクスプローラじゃ表示されないよね?
STR、XAとかは吸い出すソフトが出回ってるけどSEQってどうやって抜いたらいいんだろうか?

月並みな言い訳で済まないがググっても具体的な方法が見つからないんだ
せめてキーワードだけでもヒントを貰えないだろうか?
33SOUND TEST :774:2008/11/25(火) 02:00:59 ID:yLmPVPv9
DEWPRISMのCD-ROM内のファイルをバイナリエディタでのぞいてみたが、AKAO文字列は無かったな。
圧縮されているか、AKAOではない別のフォーマットか。
34SOUND TEST :774:2008/11/25(火) 12:50:12 ID:ORsKt3VB
CDイメージ化→イメージファイルをサーチ
35SOUND TEST :774:2008/11/25(火) 14:37:43 ID:rxZmROag
ってか、DEWPRISMの曲データに肝心のヘッダーがないじゃん。
36SOUND TEST :774:2008/11/25(火) 15:55:13 ID:sUSCHjl6
一タイトルだけ違う独自ドライバを使うのは無駄だから
多分、AKAOなんだろうけど、データに圧縮かかってるのかもな

大昔にバイナリエディタで覗いたけど、随分変な感じのバイト並びだったような
37SOUND TEST :774:2008/11/25(火) 16:53:54 ID:rxZmROag
と、言う事は例のLZS圧縮? akao? suzuki? その辺のドライバなんだろな。
38SOUND TEST :774:2008/11/25(火) 17:11:20 ID:N9skaszh
PSFで中身を調べたけど…あまり圧縮っぽくなかった。
LZSを試したが無意味だった。切出しポイントがマズい為?
ってか、■はタイトル別の圧縮はどのPSFを見ても例がない。
39SOUND TEST :774:2008/11/25(火) 17:35:56 ID:rxZmROag
DEWPRISMのpsfをexeに戻して中身を確認したが圧縮展開のヘッダが無いぜ?
40SOUND TEST :774:2008/11/25(火) 21:17:33 ID:yLmPVPv9
とりあえず、DEWPRISMの曲データフォーマットがAKAOだったら、
ff7mmlか、ff8mmlでの対応頑張ってみるけど、
それ以前にCD-ROMから抜き出せないと対応しようが無いので、
わかる人いたら教えて。

自分でも、色々試してみる。
41SOUND TEST :774:2008/11/25(火) 23:54:36 ID:yLmPVPv9
PSFlibってので開いてみたが、AKAOっぽくないフォーマットだな。
音源ドライバーからの解析要じゃね?

98ゲームや、AKAOの解析の経験上だと、PSFファイルの状態で、
0x00140800〜が、曲データっぽい構造してる。
予測だけど、

Address Data
------------------------------
0x00140800 00000000
0x00140804 ?
0x00140808 00000000
0x0014080C 00000000

0x00140810 00000000
0x00140814 チャンネル数
0x00140818 ch1のアドレス
0x0014081C ch2のアドレス

0x00140820 ch3のアドレス
0x00140824 ch4のアドレス
0x00140828 ・・・
0x0014082C

ざっと見た感じ。
これ以上は、解らない。
42SOUND TEST :774:2008/11/26(水) 00:27:24 ID:ucy6c81i
  ↑
ごめん。PSFlabってソフトでEXEに解凍して、それをバイナリエディタ。
Z80と8086なら、音源ドライバを逆アセンブルして解析しちゃうんだけど、
そんな気力ないわ。

PSFとか、miniPSFって、aowin32.exeで再生できるんだね。
というか、PSFファイルってのを、今日初めてさわったぜ。
これ作ったのすごいな。
ff7mmlや、ff8mml要らないじゃん。

まぁ、楽譜に起こしたいって事なのか。
自分も、オーボエ譜面のパート譜作りたくて、ff8mml作ったようなもんだし。
43SOUND TEST :774:2008/11/26(水) 00:30:50 ID:Tjkit2hc
>>42
そうそう、そうなのよ
楽譜が欲しいからff8mmlとかakao2midとか大助かりなんです
44SOUND TEST :774:2008/11/26(水) 11:28:58 ID:pI4bW3qs
ヘッダーが判明しなければ無理に等しい。どっちかと言うとゼノとかファイファン
タクティクスの解析がありがたい。クレクレで本当に申し訳ないが。
45SOUND TEST :774:2008/11/26(水) 11:36:01 ID:pI4bW3qs
連投スマヌ。
>>42殿、乙です。いつもありがとうございます。
46SOUND TEST :774:2008/11/26(水) 13:04:02 ID:sli171ei
俺もデュープは諦めた。構造がいまいち判らん。SUZUKIの方がいくらか見やすそう。
47SOUND TEST :774:2008/11/26(水) 22:04:40 ID:ucy6c81i
昔だったら、音源ドライバーを逆アセンブラして、処理系を解析してデータ構造調べるんだけど…
それってまとまった時間が取れないと、厳しいんだよね。

ヘッダーはさ、ドライバー本体の解析無しでやるなら、勘でやるしかないよ。
音楽データの様なチャンネルが複数ある場合は、
その先頭アドレス(絶対or相対)か、
チャンネルのデータサイズが書いてある場所があるはずなので、
それっぽい所を探して、それが示す先が辻褄あってるかを確かめていくくらい。

音源ドライバーの設計や、解析の経験上だと、
『End Of Channel』というか、チャンネルの終了である事を示すコマンドを作るんで、
2ch以降の先頭アドレスがある直前付近に、同じようなコードがあるか確認する。

例えば、AKAO(FF8以降)だと、"0xA0"(無限ループ無し) か、 "0xFE 0x06 n1 n2"(無限ループ有り)

あとは、大抵、チャンネルの先頭には、音量とか、音色設定とかのコマンドがあるんで、
先頭に、同じようなデータがあったら、チャンネルのデータの実体であることが推測できるってかんじ。

解析最初は、根気で探していくしかないよ。
48SOUND TEST :774:2008/11/26(水) 22:24:51 ID:ucy6c81i
DEWPRISM面白そうだ。初めて取説見た。
昔、興味心で買ったんだが、押入に積んだままになってたぜ。
ファンがいるってことは、結構、面白い?

音源ドライバー新たに書くのって、結構工数必要なハズだから、
そんなにやらないと思うんだけどなぁ〜。
PSFLABでEXEにしてみた限りでは、圧縮されてないっぽい。
dword型(16bitなC言語でいうlong型)っぽいデータが並んで入ってたし。
49SOUND TEST :774:2008/11/26(水) 22:41:47 ID:Tjkit2hc
>>48
ジャンプの着地点が判りにくいので、ちょっとアクションで難儀する部分があるけど
キャラは立ってるし、話もgdgdさせずスッキリ終わらせてて良いよ

曲の良さは言うまでもなく
50SOUND TEST :774:2008/11/26(水) 23:08:09 ID:ucy6c81i
ジャンプと聞いて、アドレスのオフセット値の事と思った自分は、コード眺めすぎだな。
着地点がわかりにくいって事は、0x00とかで埋まってたりして判別しずらい?
とか考えてしまったが、ゲームの話と気付いたのは、1行読み終わった後だったぜ。

やばい、頭が犯されてる。

面白そうだから、やってみる!
51SOUND TEST :774:2008/11/27(木) 00:10:56 ID:9ZEvEO2F
>>50
お前頑張りすぎなんだよw

デュープリ息抜きにはオススメだぜ
単純明快さやライトな感覚と底が浅いとは別物っていい例だと思う
52SOUND TEST :774:2008/11/27(木) 00:27:29 ID:MODiBuIh
デュープリやってみた。

・・・データ閲覧を。
こんな感じがする。


0x00140800 00000000
0x00140804 音色定義のサイズ?
0x00140808 00000000
0x0014080C 00000000

0x00140810 00000000
0x00140814 音色数
0x00140818 音色定義1のアドレス
0x0014081C 音色定義2ののアドレス
・・・・   ・・・

で0x00140804 に書いてあるサイズが、B4 01 00 00だったら、サイズは0x000001B4
すなわち。0x00140800+0x000001B4=0x001409B4までが音色定義。それ以後が楽譜データ?
でもこの辺は何が書いてあるか解らない。
その番地から、0x004C移動した先が怪しい。
上の例だと、0x001409B4+0x004C = 0x00140A00 番地

Word型(16bitC言語でいうint型)としてデータを見ると、
小さい数値から順に並んでいる。
これが、各チャンネルの曲データのアドレスを示していそうな感じがする。

3曲確認した範囲では、0x00140804が示すアドレスの4Byte前に
48 4F 53 41 56 "HOSAV"
というデータがあるけど、これが何か意味がありそう。

曲知らないから、曲の実体までは推測できないけど、
長年の勘?では、データ構造はこんな感じな様な気がする。
53SOUND TEST :774:2008/11/27(木) 00:42:01 ID:MODiBuIh
ちがう。推定だが、
"HOSA" が、曲データのヘッダー。ここが、曲データの起点。
起点を 0x0000 番地とすると、

0x0050 チャンネル1のアドレス(絶対値)
0x0052 チャンネル2のアドレス(絶対値)
0x0054 チャンネル3のアドレス(絶対値)

で、それぞれが示すアドレスをのぞいてみると、0x86の出現率が高い。
で、その1Byte前を見ると、0x80がある。
ってことは、0x80が、"End Of Channel"っぽい。
0x86は、何か。
Expression か Volume か、Instrumentか、曲頭に宣言するようなコマンドだとおもう。

曲頭や、曲の終わりに 0x8n が来るって事は、多分だけど、
Bit7が Hiでコマンド。
Bit7がLowで、音符や、休符を示すんじゃないかな?
54SOUND TEST :774:2008/11/27(木) 00:46:05 ID:MODiBuIh
バイナリーからデータ解析出来る人、見てみて。
ある程度、解析が進んだら、逆MMLコンパイラでっち上げれると思うんで、
協力出来る人、宜しく。

ファイルサイズを示すところが解ったら、
誰か、一括で曲ファイル、"HOSA"データ?をぶっこぬくの作って欲しいかも。
曲単体にして、HOSAを0x0000番地にもってきた方が解析しやすい。
55SOUND TEST :774:2008/11/27(木) 00:49:25 ID:MODiBuIh
寝るぜ!
56SOUND TEST :774:2008/11/27(木) 01:18:19 ID:QOx/EabJ
>>55
乙。
>>53を参考に適当にいじったら、テンポ変えたり楽器変えたりできたよ。
いじって遊ぶのが俺の限界だけど。
57SOUND TEST :774:2008/11/27(木) 01:24:45 ID:MODiBuIh
あ、それどこをいじったら変わったか書いてもらえると、凄い助かる。

例えば、 0x86 の後ろの数値をいじったら□□□が変わった。
0x83の後ろをいじったら、△△△が変わった。

とか。それも、解析手法の一つ。

>>56 の実験で、"HOSA"が曲データって事が明らかになった!!
自分のは、曲しらなくて、データからの推測でしかなかったから。

とりあえず、ゲームプレイして、頭に曲たたき込むか!!!
ちょっと、オーボエ、ロングトーンとエチュードだけ、ピアニッシモでさらってた。
(こんなじかんに・・・)
おやすみなさい。
58SOUND TEST :774:2008/11/27(木) 12:34:32 ID:9ZEvEO2F
解析とか改造コードサーチ程度しかやったことないミジンコだけど何か手伝いたいと思って
ソフトから吸い出したイメージファイルをバイナリエディタで覗いてHOSAを検索してみたけど
なんかSFXPACKってのとBGMPACKってのがあって

SFXPACK(音色や効果音)
 ├HOSAWAH(ファイルサイズ)
 └HOSASFX(ボディ)

BGMPACK(スコア)
 ├HOSAWAH(ファイルサイズ)
 └HOSAV(ボディ)

だいたいこんな順番で入ってて()内にこんな感じじゃないかっての書いてみた
MIDI打ち込みや吸出し程度は嗜むが解析は本当に素人なので間違ってるかもしれない
そんなこともう判ってるよ!だったらゴメン
59SOUND TEST :774:2008/11/27(木) 14:10:59 ID:sm69zx+h
↑いや、君はエライと思う。
60SOUND TEST :774:2008/11/27(木) 20:23:20 ID:MODiBuIh
俺もやってみる。 ISOイメージで良いのかな。

とりあえず、解析結果が出次第、直ぐに逆MML作れるように、
ff8mmlのソースや、今まで作ったアプリからサブルーチン引っ張り出して、
逆MML本体以外のコード書いてる。
ff8mmlとか、ファイルとかメモリ操作の所って10年以上前に書いたソースだから、
今見ても、何やってるか忘れてるよ・・・。
MS-DOSの資料引っ張り出して、ファンクションコール一覧をにらめっこ中。
61SOUND TEST :774:2008/11/27(木) 20:56:53 ID:sm69zx+h
>>60
毎度ながら乙です。当方も及ばずながら協力します。m(_ _)m
ところで16bitのakaoを32bitにでっち上げる方法はありますか?
62SOUND TEST :774:2008/11/27(木) 21:47:44 ID:MODiBuIh
FF7時代のAKAOを、FF8以降のAKAOデータに変換ってこと?
FF7時代と、FF8時代以降で、0xE0〜xFFのコマンドの仕様が違うから難しいと思う。
後は、音色の構造体も違っていそう。
FF8時代以降だと、MIDI音源みたいに、音程毎に別の音色をアサインできる仕様になってる。
(個人的には、音量別にもやって欲しかったが…。普通、楽器の特性上、pやfで倍音成分変わるし。)


プログラム本体の事だったら、32bitアプリケーションの開発方法、いまさら勉強する気無いヨ。
C言語に移植とか、自由にしていいよ。
63SOUND TEST :774:2008/11/27(木) 21:54:04 ID:MODiBuIh
http://www1.axfc.net/uploader/He/so/163701.lzh

pass : hosav

解ってる範囲の所で、でっち上げた。
当然ながら、まだMML2MIDでコンパイルできる段階にはなってないです。
HOSAファイルを入力してみて使ってみて、出力を見れば、
どんなことやってるか解ると思います。
ほとんど、バイナリーをテキスト化してるだけで、
あとは、曲データのチャンネル毎に改行を入れているくらいです。

曲データのチャンネル数は、
((0x0050番地に書いてある内容)−0x0050)÷2

で計算しています。

今は、逆MMLへの変換テーブルが、 /*FF*/ とか、
16進数をコメントアウトで出してるだけです。

解ってきたコマンドから、変換テーブルをMMLに書き直していきます。
64SOUND TEST :774:2008/11/27(木) 21:55:40 ID:MODiBuIh
あ、使い方は、
HOSA2MML /?
で、出ます。

というか、ff8mmlと使い方いっしょです。
65SOUND TEST :774:2008/11/27(木) 22:05:41 ID:MODiBuIh
さて、DEWPRISMのISOイメージ作りながら、オーボエの練習でもしてくる。
66SOUND TEST :774:2008/11/27(木) 23:29:55 ID:MODiBuIh
こういう事が解った。

0xAA 前回の音符より 6半音下の音符
0xAB 前回の音符より 5半音下の音符
0xAC 前回の音符より 4半音下の音符
0xAD 前回の音符より 3半音下の音符
0xAE 前回の音符より 2半音下の音符
0xAF 前回の音符より 1半音下の音符
0xB0 前回の音符
0xB1 前回の音符より 1半音上の音符
0xB2 前回の音符より 2半音上の音符
0xB3 前回の音符より 3半音上の音符
0xB4 前回の音符より 4半音上の音符
0xB5 前回の音符より 5半音上の音符
0xB6 前回の音符より 6半音上の音符
※音長は、前回の音符の音長と同じ長さ。
 (前回の音符が無い場合は、note no.48が起点?)


でも、肝心の音符・休符が解らないときたもんだ。
音符が先か、音長が先か。それとも、音長は別のコマンドで指定するのか?

解ってる事は、
0x37… G
0x38… Gis
0x39… A
0x3A… B
0x3B… H
0x3C… C (オクターブ上)

多分、MIDIのnote no.
67SOUND TEST :774:2008/11/28(金) 00:24:08 ID:EFF6N6bZ
イメージファイルをバイナリで覗いたりファイルDLして眺めてみても
どこをどう見てどんな作業してるのかまるでわからない
まー何も勉強してないんだから当然っちゃ当然だが
こういうのってどういう勉強したらできるようになるのだ?

俺もなんか手伝いてーよ・゚・(ノД`;)・゚・
68SOUND TEST :774:2008/11/28(金) 00:58:44 ID:4UFlqGIW
まず、ヘッダーが大体わかった。

========================================
Address type 内容
+-------+-------+-------+-------+-------
0x0000〜0x0003 char[4] "HOSA"
4Byteの文字列。曲データである事を示す。
+-------+-------+-------+-------+-------
0x0005〜0x000F 不明
+-------+-------+-------+-------+-------
0x0010〜0x0011 word 0x00,0x20の音長
0x0012〜0x0013 word 0x01,0x21の音長
0x0014〜0x0015 word 0x02,0x22の音長
0x0016〜0x0017 word 0x03,0x23の音長
0x0018〜0x0019 word 0x04,0x24の音長
0x001A〜0x001B word 0x05,0x25の音長
0x001C〜0x001D word 0x06,0x26の音長
0x001E〜0x001F word 0x07,0x27の音長

0x0020〜0x0021 word 0x08,0x28の音長
0x0022〜0x0023 word 0x09,0x29の音長
0x0024〜0x0025 word 0x0A,0x2Aの音長
0x0026〜0x0027 word 0x0B,0x2Bの音長
0x0028〜0x0029 word 0x0C,0x2Cの音長
0x002A〜0x002B word 0x0D,0x2Dの音長
0x002C〜0x002D word 0x0E,0x2Eの音長
0x002E〜0x002F word 0x0F,0x2Fの音長

0x0030〜0x0031 word 0x10,0x30の音長
0x0032〜0x0033 word 0x11,0x31の音長
0x0034〜0x0035 word 0x12,0x32の音長
0x0036〜0x0037 word 0x13,0x33の音長
0x0038〜0x0039 word 0x14,0x34の音長
0x003A〜0x003B word 0x15,0x35の音長
0x003C〜0x003D word 0x16,0x36の音長
0x003E〜0x003F word 0x17,0x37の音長

0x0040〜0x0041 word 0x28,0x38の音長
0x0042〜0x0043 word 0x29,0x39の音長
0x0044〜0x0045 word 0x2A,0x3Aの音長
0x0046〜0x0047 word 0x2B,0x3Bの音長
0x0048〜0x0049 word 0x2C,0x3Cの音長
0x004A〜0x004B word 0x2D,0x3Dの音長
0x004C〜0x004D word 0x2E,0x3Eの音長
0x004E〜0x004F word 0x2F,0x3Fの音長

+-------+-------+-------+-------+-------
0x0050〜0x0051 word 曲データのある絶対アドレス ch1 …(2)参照
0x0052〜0x0053 word 曲データのある絶対アドレス ch2 …(2)参照
0x0054〜0x0055 word 曲データのある絶対アドレス ch3 …(2)参照
・・・
0x006E〜0x006F word 曲データのある絶対アドレス ch16…(2)参照
========================================
69SOUND TEST :774:2008/11/28(金) 01:02:48 ID:4UFlqGIW
0x00〜0x1F … 休符。 音長は、ヘッダーの0x0010〜0x004Fを参照。

0x20〜0x3F … 音符  音長は、ヘッダーの0x0010〜0x004Fを参照。
       引数は1Byte この引数が音程を示す。(note no)
       7bit目が立っていたら、もう一個引数あり。内容はわからん。
70SOUND TEST :774:2008/11/28(金) 02:03:04 ID:4UFlqGIW
>>69 は違いそう。

0x00〜0xFFの各バイナリーが意味をもっているんじゃなくて、
ビット毎に意味を持っていそう。
16進的な見方じゃなくて、2進数としてデータを見たほうが良いかも。

構造、結構複雑だわ。


========================================
Command param MML 機能
+-------+-------+-------+-------+-------
001x xxxx bNote 音符

+-------+-------+-------+-------+-------
1000 0000 End of Channel

+-------+-------+-------+-------+-------
101x xxxx 相対音符?  (前回の音符からの半音単位での相対値。)

+-------+-------+-------+-------+-------
1xx0 0011 音色?
00 bVoice  次音符?
10 bVoice  次コマンド?
11 bVoice  次休符?
71SOUND TEST :774:2008/11/28(金) 08:47:46 ID:Y17NU1Zu
こういうのって自力で覚えたの?
それともプログラミング関係の専門家さん?
72SOUND TEST :774:2008/11/28(金) 10:49:54 ID:kugxG4NX
↑↑↑君等すげぇな。神だね。スターオーシャン2もキボンヌ。
73SOUND TEST :774:2008/11/28(金) 13:08:09 ID:F4NEmz7L
まだほとんど解決してないのに次の話をするなよ
74SOUND TEST :774:2008/11/28(金) 22:14:31 ID:4UFlqGIW
>>71 専門家を目指して「た」。けど、親に反対されて今はしがない技術者。
自力といえば80%くらいは自力かな。20%は、高専生時代とかの後輩・同輩・先輩から。
音楽の方は一応プロの先生についてる。

基本的には、簡単な構成の曲を一曲見つけて採譜してから、
その楽譜を見ながらデータを眺めていくって感じ。
その時に、音源ドライバーの設計者が
「演奏プログラムの中ででどういう処理をやりたかったのか」を
想定しながら、自分の頭の中にも処理フローを思い浮かべて、
「自分だったら、こうするな」っていう勘から
その勘での想定結果を、PSFファイルのバイナリーを書き換えて、
想定通りに演奏が変わるか確かめる。って方法を今は使ってる。

音符データを探す段階になると、採譜した結果を、5線譜かMMLに書かないと、自分は出来ない。
75SOUND TEST :774:2008/11/28(金) 22:19:12 ID:4UFlqGIW
自分は、DEWPRISMまでにするよ。てか、それ位しかソフトもってないし。
Suzukiドライバー?使ってるソフトは、自分は全くもってない。
DEWPRISMの解析進めるから、ゆるちて。
まぁ、週末、休日出勤になっちまったから、週末は動けそうにないが…。
76SOUND TEST :774:2008/11/28(金) 23:35:23 ID:EFF6N6bZ
正直これやって欲しいなってのはまだあるけど
こればっかりはリアルが一番大事だから残念だが仕方ない
DEWPRISMもあんまし根詰めて無理しないようにな〜
77SOUND TEST :774:2008/11/29(土) 13:30:41 ID:xRlkGs4a
そうだよな。スクエニ系コンプリートなんて人の苦労を省ずに
期待していた考えが恥かしくてたまらないぜ。
これだけ尽くして貰ってるんだから感謝しきゃ!
78SOUND TEST :774:2008/12/01(月) 20:10:57 ID:9pMiL4Lu
キングコング2のmidiを作ってみた。
ttp://www.geocities.jp/tatsuya_hrc/MainTheme.mid
79SOUND TEST :774:2008/12/01(月) 20:35:16 ID:p926zrB1
>>78
MIDI(DTM)音源でファミコンの音を再現
http://pc11.2ch.net/test/read.cgi/dtm/1067596577/

それはここ向けじゃないか
80SOUND TEST :774:2008/12/01(月) 22:01:27 ID:DcgziioT
いや、そんな事はないぞ?
81SOUND TEST :774:2008/12/01(月) 23:59:16 ID:bMlBERw7
コンバートで得たSMFならここだし、採譜したならDTM板のスレじゃないかね
82SOUND TEST :774:2008/12/02(火) 01:24:40 ID:U0zX01jn
MSXやFCでデータレベルでのコンバートは見たことないな
8378:2008/12/02(火) 01:56:27 ID:BqvBKFPX
あらら、耳コピで作ったやつです。
どうも間違えたみたいですみませんでした
84SOUND TEST :774:2008/12/02(火) 02:40:09 ID:h7lpMbgv
帰宅するのがこの時間なのだが…
DEWPRISMの解析、まったく進捗せず。アハハハハ。
音符は上の大体解ったんで、ルーチン書きたいんだけど時間がねぇぇぇぇええ。

========================================
【コマンド概要】
7654 3210
----------------+-----------------------
taa? ????
t … 0:音符コマンド
1:制御コマンド
a … 00:通常?
01: t=0時 通常?
t=1時 相対音符
10:???
11:次は休符。休符の音長として、引数"bRest"追加。
? … パラメータ。種類により引数がある場合がある。

・ bRest 000l llll (休符)
 (※a=11の時に追加されるパラメータ)
x … 休符の音長(0x00〜0x1F)
85SOUND TEST :774:2008/12/02(火) 02:40:46 ID:h7lpMbgv
========================================
【コマンド詳細】
7654 3210 内容
+-------+-------+-------+-------+-------
0aal llll 音符
l … 音長(0x00〜0x1F)
a … 00:通常? スラーとかその辺?
01:通常?
10:?
11:次は休符。休符の音長として、引数"bRest"追加。

(1)bNote vnnn nnnn (音程)
v … 0:何も無し
1:引数"bVelo"(Velocity)有り
 ※a=11で休符が有る場合、その後ろに追加される。
n … Note no

(2)bVelo 0kkk kkkk (Velocity)
 (※v=1の時に追加されるパラメータ)
 (※付かされる場合は、bRestの後に追加される。)
k … Key-on velocity(0x00〜0x7F)



+-------+-------+-------+-------+-------
101n nnnn 音符(前音符からの相対値)
n … 00000(0xA0):前回より、−16半音の音程

10000(0xB0):前回より、±0 半音の音程

11111(0xBF):前回より、+15半音の音程
86SOUND TEST :774:2008/12/02(火) 02:47:08 ID:h7lpMbgv
TABで整形してるから、ずれまくるな…。
とりあえず、時間できたら、逆MMLするルーチン書いて、
その時に、書いた format.txt もアーカイブに含めるわ。
87SOUND TEST :774:2008/12/02(火) 02:49:43 ID:h7lpMbgv
あ、こっち忘れてた。
1aa? ???? の方のコマンド。
引数の数は、コマンドにより様々。

+-------+-------+-------+-------+-------
1aa0 0000(80) End of Channel
1aa0 0001(81) 全体に関わるような何か
1aa0 0010(82) 全体に関わるような何か
1aa0 0011(83) Set Instrument
1aa0 0100(84)
1aa0 0101(85)
1aa0 0110(86) ?
1aa0 0111(87)
1aa0 1000(88) ?
1aa0 1001(89) ?無限ループのマーカー?
1aa0 1010(8A)
1aa0 1011(8B)
1aa0 1100(8C)
1aa0 1101(8D) ?
1aa0 1110(8E)
1aa0 1111(8F)
1aa1 0000(90)
1aa1 0001(91)
1aa1 0010(92)
1aa1 0011(93)
1aa1 0100(94)
1aa1 0101(95)
1aa1 0110(96)
1aa1 0111(97)
1aa1 1000(98)
1aa1 1001(99)
1aa1 1010(9A)
1aa1 1011(9B)
1aa1 1100(9C)
1aa1 1101(9D)
1aa1 1110(9E)
1aa1 1111(9F)
88SOUND TEST :774:2008/12/02(火) 15:35:29 ID:RdHbp/eD
>>84
ベリー乙

デュープリズム発売から10年近く待ってるので
待つのにはすっかり慣れました

のんびりやってくださいw
89SOUND TEST :774:2008/12/02(火) 17:46:08 ID:RIYBMvHQ
それではあと10年待ってね
90SOUND TEST :774:2008/12/04(木) 11:10:42 ID:eEvUcyyr
ネタが尽きたか過疎ってきたなぁーーーー
91SOUND TEST :774:2008/12/04(木) 11:52:24 ID:X+PblLLp
まあまあ、1日空いただけじゃないか
92SOUND TEST :774:2008/12/04(木) 12:29:12 ID:BD2gZgyn
93SOUND TEST :774:2008/12/04(木) 12:45:21 ID:wiGJVc84
結局サガフロ1のProject AKAOの解析どーなったん?
前スレFF7の解析で止まったままだし。
94SOUND TEST :774:2008/12/04(木) 12:54:40 ID:eEvUcyyr
あれって結局、FF7mmlの作者さんが解析成功したよね。16bit akaoだって。
95SOUND TEST :774:2008/12/04(木) 22:16:05 ID:gZil7HD/
>>96
あっぷしてあるじゃないか。
まぁ、アップしてから、色々直してあったので、再うっぷ。

http://www1.axfc.net/uploader/He/so/166367.lzh

version 1.14 2008.12.1
・"init.mml"を新設(AKAO32)。これにより、以下をカスタマイズできるようにした。
(1) MIDI音源の初期設定
・以下のコマンドに対応
0xFE1C(AKAO32) 引数は1Byteだった。(今まで2Byteにしてた)

version 1.13 2008.11.26
・以下のコマンドに対応
0xFD(AKAO24) 拍子
0xFE(AKAO24) リハーサル番号
0xFE15(AKAO32) 拍子
0xFE16(AKAO32) リハーサル番号
何だろうとは思っていたけど、両方とも、再生には関係ないな。
まぁ、生な演奏者にとっては、大事なんだけど・・・。

version 1.12 2008.11.24
・音量・パンポットLFOの振幅が大きかったので、係数を低くした。
・以下のコマンドに対応
0xA4 ポルタメント(但し、ベンドレンジ8以内のみ)
中には、ベンドレンジ80必要な曲もあり、完璧な対応は無理。
0xFE1F(AKAO32)不明:引数は無しのようなので、それに対応。
↑ベイグランドストーリ対応(まだ、変換出来ない曲有り。)
96SOUND TEST :774:2008/12/04(木) 22:31:16 ID:mUcTN1AC
ベイグラ対応開始とな!
97SOUND TEST :774:2008/12/04(木) 22:37:22 ID:gZil7HD/
Dewprismの解析は、今週も休日出勤確定で、年内は動けないかもしれない。
正月にコーディングするつもりなんで、続きの解析しておいてくれれば、
そのぶんも含めて、正月にコーディングするぜ。

あとは、音色割り当てとか!!
ちゃんと編集すれば、けっこうそれっぽくなるし、
特にFF8〜9は、一部をのぞいて、ほとんどSC88Proの音色使ってるから、
音色のマクロ文を編集すれば、かなりそっくりになるデータが多いよ。


例)FF9のバトル1の音色設定
$0a k127 y100,2 y101,0 y6,52 H 3,3 @38
$1a k127 y100,2 y101,0 y6,64 H24,3 @30
$2a k127 y100,2 y101,0 y6,64 H 0,3 @30
$3a k127 y100,2 y101,0 y6,64 H 0,3 @18
$4a k127 y100,2 y101,0 y6,64 H24,3 @48
$5a k127 y100,2 y101,0 y6,64 H 8,3 @52
$6a k127 y100,2 y101,0 y6,64 H17,3 @84
$7a k127 y100,2 y101,0 y6,64 H 2,3 @89
$0b k127 y100,2 y101,0 y6,64 H 0,3 @56
$1b k127 y100,2 y101,0 y6,64 H 0,3 @15
98SOUND TEST :774:2008/12/04(木) 22:38:48 ID:gZil7HD/
>>96

ff7mml パラサイトイブでも、使えたらしいよ。
自分は持ってないから試せないけど。
99SOUND TEST :774:2008/12/04(木) 22:44:51 ID:gZil7HD/
ff9 ラスボスのコンパイルの仕方。

秀丸とかのテキストエディタで、

(1) 『/*L*/]3』を『/*L*/』に一括置換
(2) 『/*L*/r1』を『/*L*/』に一括置換
(3) 音色定義を自分の好きに編集

でいける。
ff8mmlで吐いたそのままのmmlだと、
元の曲データがかなり特殊なことやってる曲データなので、コンパイル出来ない。
100SOUND TEST :774:2008/12/05(金) 00:42:05 ID:vycEW82s
>>98
圧縮解いたPSFからAKAOヘッダ探して最初に引っかかった方のエリアを
別ファイルで保存してから読ませたらff7mmlまでは通った。
あとは未対応部分を削っていけば何とか鳴りそうだけど
修正箇所多すぎて積んだ
101SOUND TEST :774:2008/12/05(金) 06:45:15 ID:Ns4SosLo
>>99
その辺の編集はイントロ部無限ループ・イベントループ抜けに
値するFE-06の辺だよな。akao2midで変換かけたらエラー吐きするが、何処でエラーに
なるのかサーチしたらそこだった。akao2midの変換ルーチンを見ても、やはり同じ場所
みたい。コードが登録されてない。似たケースとしてハンターチャンスって曲もそうだった。
102SOUND TEST :774:2008/12/05(金) 08:47:47 ID:OT3I6+qT
正確には、0xFE 0x07 の条件ジャンプ命令があって、
次に、0xFE 0x06 の無限ループがある構造になってる。

でも、その前にループ開始、C言語でいう for(){ があるんだけど、
0xFE 0x06 の後に } で閉じているんだ。


無限ループ{

for(){

if(){break;};  ←条件ジャンプ

} ←無限ループのかっことじ

} ← for文のかっことじ。


こんなかんじになってるから、ff8mmlでもエラーでてる。
103SOUND TEST :774:2008/12/05(金) 08:53:45 ID:OT3I6+qT
ff8mmlは、0xFE 0x07が見つかったら、0xFE 0x06の無限ループを1回無視する設計にしているんで、
とりあえずは、その先までMMLは吐けるようになってる。

でも、最初の0xFE 0x06の無限ループと、0xFE 0x07がしめすジャンプ先の間にあるゴミデータも出力しちゃうんで、
その辺で不整合がでちゃう。
いまんとこ、その辺をうまく逆MMLコンパイルする方法が思い浮かばないから、
吐いたMMLを手動で編集するしかないようになってる。
104SOUND TEST :774:2008/12/05(金) 09:10:19 ID:OT3I6+qT
FF9のハンターズチャンス確認してみた。
チャンネル1で、0xFE,29(0x1D) と、0xFE,30(0x1E) と、0xFE,16(0x10)がコメントアウトされてる。
未解析コマンドなんだけど、引数の数はいま2Byteで設定されてて、
引数のサイズが違うんだと思う。

これは、引数の数変えて、確かめてみるだけで対応できるんで、コード直す時間とれたら直す。
akao2midは、作者じゃないから、直せない。
C言語そこまで詳しくないし。
105SOUND TEST :774:2008/12/06(土) 02:31:19 ID:5ete2+Ok
FF9ハンターズチャンスや、ラスボスの曲を、
ちゃんとコンパイル出来るMMLを吐くように対応した。
何やったかというと、以下の解明していないコマンドではあるんだけど、引数の数だけ解明させた。

http://www1.axfc.net/uploader/He/so/166877.lzh

version 1.15 2008.12.6
・以下のコマンドに対応
  0xDA 引数は1Byteだった。(今まで2Byteにしてた)
  0xFE07(AKAO32) 条件ジャンプ先にちゃんと飛ぶようにした。
              ↑FF9のラスボス対応。
  0xFE10(AKAO32) 引数は1Byteだった。(今まで2Byteにしてた)
  0xFE1D(AKAO32) 引数は無しだった。(今まで2Byteにしてた)
  0xFE1E(AKAO32) 引数は無しだった。(今まで2Byteにしてた)
               ↑FF9の色々な曲対応
106SOUND TEST :774:2008/12/06(土) 15:45:44 ID:JGmmNbcc
いつもお疲れ様です(-人-)
107SOUND TEST :774:2008/12/07(日) 15:02:47 ID:WvzR8gVD
FFシリーズのオケ編成の曲データって、ちゃんと総譜に書く順番に並んでいるんだな。
Fl,Ob,Cl,Fg,Hr・・・・ってかんじで、その他の楽器を使う場合はその後とか。
FF7は、16チャンネルの制約があるからか、そうとも言い切れないみたいだが。
でも2管編成ではなく、木管は1管だったり、それでいながら金管は3管だったり、おもしれぇ。
108SOUND TEST :774:2008/12/08(月) 08:06:58 ID:f6HkSOuj
スーファミ時代の植松氏の譜面は
ブラス1
ブラス2
ストリングス1
ストリングス2
ベース
シンバル
ハイハット
バス・スネアドラム
等の並びが多かったなぁ。
個人的に数曲譜面をいただいて学校のブラスバンド部で仲間と演奏してた。
109SOUND TEST :774:2008/12/08(月) 10:49:16 ID:qRvcQ01l
FF4は厨房のときに耳コピで楽譜起こしてブラバンで演奏したよww
スクウェアに電凸して楽譜くれと言ったのは良い思いでw
110SOUND TEST :774:2008/12/08(月) 11:08:50 ID:f6HkSOuj
みんなそれぞれ必死だったんだなぁ
111SOUND TEST :774:2008/12/09(火) 01:36:50 ID:vsjEeNZp
楽器吹きで、且つゲーム好きだと、マイ楽器で演奏したくなるんだよな。
DQとかはCDに譜面付いてきたけど、FFシリーズはついてこないしな。
他、Falcom物の逆MMLも作ったし、FF5のSPCをMMLに変換するのも作ったわ。
俺はオーボエとコーラングレ吹きだから、C管とF管用に書き直したり、
クラ吹きや、Tp吹きはB管用に書き直したり。
でも、吹奏には、弦っていないんだよな。
112SOUND TEST :774:2008/12/09(火) 01:53:26 ID:x1zJacn0
弦入れると管弦楽部になっちゃうからね

あと、小中高で弦はちと難しい
かなり覚悟完了してやらないとモノにならん
113SOUND TEST :774:2008/12/09(火) 02:42:07 ID:vsjEeNZp
まぁ、どんな楽器も、まじめにやるんなら覚悟しないとむりじゃね。
まぁ弦は確かに小さい頃からやってないと駄目な楽器だけど、
管は、大きくなってから始めてもプロになれるらしい。
逆に、呼吸器系を酷使するから、管はある程度成長してからじゃないと出来ない楽器らしい。

まぁ、オーボエ吹き・・・もといホラ吹きのいう事は、適当に聞いてくれ。
てか、このスレ、けっこう楽器吹きいそうだな。
まぁ、再生環境あるのにSMFに変換したいってことは、そう言う事なのか。
114SOUND TEST :774:2008/12/09(火) 02:43:28 ID:vsjEeNZp
「まぁ」大杉。
深夜残業で疲れてるな。お休み。

DEWPRISM手をつけてぇぇぇぇええええ。
ゲームもやりてぇぇえええ。
115SOUND TEST :774:2008/12/09(火) 02:47:58 ID:vsjEeNZp
なにより、オーボエの練習してぇぇぇぇええええ。
週末しかロングトーンしてないから、どんどん力が落ちていく・・・
116SOUND TEST :774:2008/12/09(火) 08:52:06 ID:8IuhFZuG
まぁマイペースで行こうじゃないか。俺も気まぐれでsuzukiドライバの解析
を始めたばかり。今、忙しい中で判った事はヘッダー部のサイズ格納場所・
及びch終了場所。ch始まりが解かんねぇから肝心のシーケンス部分の解析が
進まねぇ。誰かヒントくれない?
117SOUND TEST :774:2008/12/09(火) 09:37:43 ID:vsjEeNZp
chの始まりは、

(1) ヘッダーにch1〜順番に相対アドレスか、どこかを基準とした絶対アドレスで書いてある
(2) チャンネルのはじめに、各チャンネルのサイズが書いてある。(チャンネル毎にヘッダー)
(3) その他、他のケースもあるかも。

(1)のケースが多いよ。
118SOUND TEST :774:2008/12/09(火) 10:18:52 ID:8IuhFZuG
>>117
dクス 時間取れたら見てみる。
119SOUND TEST :774:2008/12/09(火) 17:48:34 ID:8IuhFZuG
やっぱり解かんねぇ。しらみつぶしに絶対・相対アドレスを割出すバイナリ
エディッタを使っているが。修行が足らんなこりゃ。
120SOUND TEST :774:2008/12/09(火) 18:00:52 ID:oLmsifpd
>>111
もしよければFF4 5 6 ロマサガ1 2 3のSPC→MML→MIDIのツール
作っていただけないだろうか?WIKIに解析資料があったので。
http://www3.atwiki.jp/romancing/
121SOUND TEST :774:2008/12/09(火) 18:15:20 ID:oLmsifpd
FF4 5 6の解析情報は
http://www9.atwiki.jp/ff6bin/pages/15.html
122SOUND TEST :774:2008/12/09(火) 18:20:13 ID:oLmsifpd
間違えました。
FF4 5 6の解析情報はこちらです。
http://www9.atwiki.jp/ffbin/pages/15.html
123SOUND TEST :774:2008/12/09(火) 18:35:51 ID:i84QFNix
SPCならSPC2MIDIで一応得られるから
まずはそっちを試してみては?

変換精度は悪くはないし、ピッチベンド使いまくりなデータでなければ
手修正もあんまり要らない

DVAされたら大人しく諦める
124SOUND TEST :774:2008/12/09(火) 20:00:09 ID:oLmsifpd
spc2midはベタ変換でノートタイミングがバラバラだから譜面にならない。
だからff7mmlのようなほぼ完璧な変換ソフトを作って欲しい。
125SOUND TEST :774:2008/12/09(火) 21:18:31 ID:x1zJacn0
得られたデータを修正して譜面を起こすぐらい、自力でやれよ…
全く手のつけようがないデータじゃないんだから
126SOUND TEST :774:2008/12/09(火) 22:05:46 ID:RIXfcTRq
>>119
そのバイナリエディタが気になる
127SOUND TEST :774:2008/12/09(火) 22:27:50 ID:oLmsifpd
ってか、手が付けられないに等しいぞ?tempoは合ってない、ノートは目茶苦茶。
デュープリズムを自力で解析しろ。って同じくらいの労力だな。
128SOUND TEST :774:2008/12/09(火) 22:39:50 ID:vsjEeNZp
MIDIにコンパイル出来なくて良いなら、FF5なら逆MML作ってあるぞ。
ただし、PC98のMS-DOSでしか使えないんで、
98エミュレーターや、98用のMS-DOSは別途入手して欲しい。
ukky氏のPPZ8と、86音源があれば、一応再生可能。・・・だと思うが

これって10年以上前に作った奴なんで、本当にコンパイルできるか不明。
もしかしたら、MML文字列を吐くだけで、手動で、
MMLコンパイラ用のMMLに編集しないといけないかもしれない。

こんなんで良いなら、ハンドル名とか、解析協力者の名前消して、
リアセンブルしてからうっぷできるが・・・。
129SOUND TEST :774:2008/12/09(火) 22:46:38 ID:vsjEeNZp
98エミュレータ立ち上げて確かめてみたら、
一応、PC98用のFM音源ドライバー+PPZ8用のMMLを吐いてた。
音色ファイルは、昔PMDBBSで某氏が公開していた物なのだが…
今は入手不可能かもしれない。
130SOUND TEST :774:2008/12/09(火) 23:44:08 ID:ofkMrqyS
>>124
spc2midなんて物があったら欲しいが
spc2midiは少なくとも変換してるわけじゃないからな
131SOUND TEST :774:2008/12/10(水) 01:22:48 ID:bsuEwzQB
確かにspc2midiは
変換とは違うけど、素晴らしいツールだよ。

spc2midiで対応できない例は、タクティクスオウガ。
おそらくチャンネルに動的に音を割り当てているので
楽器ごとに分離できない。
それで、自分なりに解析を試みたことがある。
たぶん、こんな感じ。

E0 xx 音色
02 〜7F 音長
音長指定の後(オプション) xy x:1〜7 ゲート y:0〜F ベロシティ
80 〜 C7 音符
C8 直前の音をのばす?
C9 休符?
132SOUND TEST :774:2008/12/10(水) 08:23:50 ID:pLksFCNW
色々と変換物のバイナリを整理してて思った事は akao2mml は akao2mid を
超えた(神Tool) だ。若干手間はかかるが変換精度はピカイチ。音色編集は
出来るし申し分ない。しかも対応タイトルも自分が確認しただけでも多く
ある。
これまでの此処の流れを見てたら spc_akao2mmlと題して是非とも自分も
spc版akao2mmlをビルドして欲しいな。と思ったのが素直な感想。
133SOUND TEST :774:2008/12/10(水) 08:35:08 ID:/yxK947p
そんな次から次へあれやれこれやれと言ってやるなよ
なんか年末リアルで忙しいらしいしクレクレも程々にしないと
嫌気が差してこういうとこ出てきてくれなくなる方が困るだろ?
134SOUND TEST :774:2008/12/10(水) 08:56:50 ID:pLksFCNW
>>133
120氏のように「やれ」と言ってはないぞ?
思っただけだ。おk?
前スレで職人潰しを目の当りにしたからな。ソフトに行こーぜ?
135SOUND TEST :774:2008/12/10(水) 09:05:33 ID:IYQRaVTT
>>127
MIDIやってるやつならそれくらいできるだろ
ただ面倒臭いだけで
136SOUND TEST :774:2008/12/10(水) 11:01:23 ID:r04s7q7e
>>131
タクティクスオウガはPS版からSEQ2MIDするという手もある
137SOUND TEST :774:2008/12/10(水) 12:16:57 ID:3AjH6N6/
>>133
そういうオマイさんらもクレクレだろがw
138SOUND TEST :774:2008/12/10(水) 19:20:56 ID:/yxK947p
開き直ったら人間終わりです
139SOUND TEST :774:2008/12/10(水) 23:42:37 ID:k/Tg/d6F
流れぶった義理ごめん
minipsfを展開したらbgmっていう拡張子が出てきたんですが、
これってストリームですか?
140SOUND TEST :774:2008/12/11(木) 06:45:03 ID:RvuC2FGG
だから何のminipsfだよ?
141SOUND TEST :774:2008/12/11(木) 19:02:49 ID:4zPylaK5
>140
放置されるかと思ってますた
FFXのシーモアバトルです。
142SOUND TEST :774:2008/12/11(木) 19:15:18 ID:RvuC2FGG
そりゃ、PS2版akaoだわ。ストリームじゃないね。
143SOUND TEST :774:2008/12/11(木) 19:37:33 ID:4zPylaK5
>142
という事は、bgm2midからの変換になるんですね
レスありがと
144SOUND TEST :774:2008/12/11(木) 19:59:26 ID:RvuC2FGG
bgm2mid持ってたらくれない?
145SOUND TEST :774:2008/12/12(金) 00:10:51 ID:NZoHjID5
>>132
ありがと。
でも、AKAOって、すごくMMLをコンパイルして作ったぽいデータフォーマットだから、
MIDよりMMLに逆コンパイルする方が、作り手としては楽なんだよ。
なんで、MML2MIDに該当する命令があれば、そのまま、該当する命令の文字列に変換しちゃうだけなんだよ。
なんで、C言語とMML文法をそれなりに解ってれば、AKAO→MMLなら簡単に作れちゃうと思う。
俺はどこか頭が飛んでるから、アセンブラでしか組めないけど。

だれか、チャレンジしてみれば?
switch()文と、printfのファイルに書き出す版の関数の組み合わせでいけると思う。

MMLには、『テキストエディタで編集できる』って利点があるんだぜ!
まぁ、MML使いにはうれしいかもしれないが、SMFで編集したい人には確かにめんどいかも。
146SOUND TEST :774:2008/12/12(金) 00:16:04 ID:NZoHjID5
同じ理由で、ff4〜ff6もさくって作れるけるだろうけど、自分は、作業できるとしたら来年。
今、年内納期の仕事が次から次に来てて、とてもじゃないけど、コーディングする時間とれないわ。

練るぜ
147SOUND TEST :774:2008/12/12(金) 12:28:12 ID:BfZxiooL
そーいえばWIN_ver.のSPCTOOLがでてたけど誰か試した?
148SOUND TEST :774:2008/12/12(金) 13:38:49 ID:IO5qz87H
>>147
どこー
149SOUND TEST :774:2008/12/12(金) 14:04:23 ID:lQDIsN2T
>>148
多分ここじゃね?
ttp://spcsets.caitsith2.net/spctool/
150SOUND TEST :774:2008/12/13(土) 01:18:54 ID:XVpfRU4a
http://www1.axfc.net/uploader/He/so/169246.lzh

ダウンロードするのは、解析に協力してくれる人な!!
hosav の逆MMLをでっち上げてみた。
ぱすわーどは、曲データのヘッダー文字列を小文字半角5文字で

曲の構成が簡単な、"trap Master"って曲で検証。
その他の曲は確かめてない。ぬきだしめんどいし、まだ曲知らないし。
誰か、CD-ROMドライブにCD-ROMいれて、ぶっこぬくのつくって!!

基本的に、まだ使い物にならないはず。

hosa2mml /d255 元ファイル名 >MMLファイル

って、/d255ってオプションつけると、バイナリーをコメントアウトするようにしてある。
解析は、だいぶしやすい形に吐けていると思うので、検証宜しく。

MMLは、さくら用。
ff8mmlを作った頃はMML2MID使いだったけど、今はさくら使いなので。
コンパイラは、 ttp://oto.chu.jp/ から、DLして。
151SOUND TEST :774:2008/12/13(土) 01:32:47 ID:XVpfRU4a
あぁ、ff8mml(akao2mml?)の様に、
"format.txt"入ってるんで、こっちも参考にして。
ただ、色々、解らないことが、まだ多い。

AKAO(赤尾氏作)や、MUCOM(古代祐三氏作)系のドライバーとは、
データの構造がけっこう違う。SMFとも違う。
どっちかというと、CPUのニモニックに近い作りになってる。

で、ビットで並べたときに、

caannnnn

とすると、
c=0 で音符コマンド c=1で制御コマンドを示すんだけど、

aaがやっかいで、

aa=00 ←多分、通常処理
aa=01 ← c=0(音符コマンド)の場合は通常処理。
     c=1(制御コマンド)の場合は、相対音符。
aa=10 ←これが、意味不明。次に来る数字の意味や、引数がわからん。
aa=11 ←次にバイトで、waitを示している。
     c=0(音符コマンド)の場合は、音長になるし、
     c=1(制御コマンド)の場合は、休符が挿入になる。


nnnnn は、タイプ。
     c=1(制御コマンド)だったら、nnnnnで制御の種類
       nnnnn=00000 : End of Channel
       nnnnn=00001 : テンポ(次の1Byte)
       nnnnn=00011 : 音色(次の1Byte)
     c=0(音符コマンド)だったら、nnnnnで音長になる。
       音長は、0x0010+(nnnnn×2)番地の内容。
       次の1Byteで、ノートナンバー。MIDI規格と同じ数値。
       但し、bit7がHiの場合は、後ろの1Byteで何かを示している。


まず、aa=10の時の挙動を調べたい。
あとは、c=1の時の、nnnnnのそれぞれの意味。
が、解析案件。
152SOUND TEST :774:2008/12/13(土) 17:46:53 ID:pjdXPME6
どなたかワイルドアームズ2のMIDI変換方法を教えてもらえないでしょうか?
153SOUND TEST :774:2008/12/13(土) 17:52:54 ID:BL4v8fn+
>>152
マルチしてるようじゃ質問以前の問題
154SOUND TEST :774:2008/12/14(日) 00:39:46 ID:KboT7GtV
FF7MML用の音色定義。

音源  :Roland SC88Pro用
タイトル:FINAL FANTASY 7
ぱすわど:ff8mmlといっしょ
http://www1.axfc.net/uploader/He/so/169634.lzh

音量バランスを、MML2MIDのFVコマンド(ソフトエンベロープ)を使って調整してみた。
特に、音が小さいホルンとか、音が大きすぎるオケヒとか。

この音色の方がいいんじゃないってのがあったら、書いてくれ。
SC88Proに、どんな音色があるかあまり詳しくないので。
155SOUND TEST :774:2008/12/14(日) 09:57:34 ID:NGX5a6Vg
乙です。
FF8mmlの対応作品
チョコボレーシング
チョコボダンジョン
チョコボダンジョン2
フロントミッション
クロノクロス
レジェンド オブ マナ
ファイルファンタジー2等の変換を確認しますた。
156SOUND TEST :774:2008/12/14(日) 13:25:53 ID:KboT7GtV
そんなに使えるんだ。
まぁ、ファルコムも、ソーサリアンからブランディッシュ3まで、ずっとMucom使ってたしそういうもんか。
しかも、当時、バイトの古代祐三氏がつくったドライバーをずっと・・・。

世界樹の迷宮も、あれ、MucomをDS用に書き直したんだろうなぁ。
DSでFM音源っぽい楽曲をつくってたし。


157SOUND TEST :774:2008/12/14(日) 14:38:06 ID:NGX5a6Vg
そうそう、この間から暇を見つけてはサガフロの音色定義をコツコツと始めて
いるのだが、面白い事が判った。XG[MU-128]とハチプロで音色を検証していたら、なかなか
シックリくる音がない。そんでもって色々調べたらコルグのシンセ[トリニティー&トリトン]の
音色だと判明した。
正月休みには何とか色々な音色定義をビルドして作者さんに渡したいものだ。
158SOUND TEST :774:2008/12/14(日) 18:17:33 ID:JR/LcCwN
>>157
あーあれコルグの音なのか
昔耳コピしたとき(YAMAHA+Roland)÷2みたいな音ばっかで
音色あわせ辛くてイライラした覚えがある
159SOUND TEST :774:2008/12/14(日) 18:24:02 ID:KboT7GtV
FF7も、コルグっぽい音。
コルグの音色は音が厚くて良いよ。
その分、曲の作り手側でのバランス取りは難しいけど。

SC88とかの音源は、初心者が使いやすいようにバランス重視だから、その分、音が薄っぺらいんだよね。
160SOUND TEST :774:2008/12/14(日) 18:46:04 ID:KboT7GtV
KORGの音源モジュールって、他のシリーズと音色配列に互換性あるのかな。
あれば、押入から03R/W引っ張り出して、
03R/W用の音色定義作ってみるかなぁ。
161SOUND TEST :774:2008/12/14(日) 19:13:15 ID:NGX5a6Vg
コルグは他の音源と互換性がないですよ。
パーカスをみても一目瞭然だとおもいます。古くはロマサガ1からですね。
162SOUND TEST :774:2008/12/14(日) 23:54:06 ID:KboT7GtV
んじゃいいか〜。
SC88Proなら、持ってる人それなりにいるだろうし、8プロで。
XG音源(Mu128)も持ってるには持ってるけど、元々、
視聴用とか、GS音源以外での聞こえ方のチェックのためだけに買ったものだから、
どんな機能あるのか知らなかったりするわけで。

YAMAHAのオーディオ機器は好きなんだけど、・・・楽器はRolamd使いでつ。
あ、でも楽器(ObとE.H.)は、フランスの老舗メーカーだ。
ヤマハ、イングリッシュホルン作ってないんだよな。
163SOUND TEST :774:2008/12/14(日) 23:59:30 ID:KboT7GtV
なんかゲーム音楽って、ピアノアレンジとか、ギターアレンジは出版するのに、
管弦楽アレンジとか、吹奏楽アレンジって少ないよね。店頭に。
ドラクエは、すぎやま工房がレンタルしてるのは、しってるけど。
ノンアレンジの楽譜とかも、見かけない世なぁ〜。

ピアノとギター優遇されすぎ!!!
まぁ、ピアノ譜のメロディーだけ読んで吹いたりはするけど。
やっぱ、原曲もやってみたいんだよなぁ〜。
164SOUND TEST :774:2008/12/15(月) 17:06:12 ID:gh8KruNG
コルグのNS5Rを持っているが、確かにサガフロで似た音使っていたなぁ。
ここのメーカーって音にクセが有り過ぎて苦手w
165SOUND TEST :774:2008/12/15(月) 18:11:50 ID:67DLGjA8
しかし曲者同士というか臭いもの同士というか(いや、悪い意味じゃないぞ?)
イトケン節には妙にあってる感じがする
166SOUND TEST :774:2008/12/15(月) 18:18:19 ID:lD1lIm9c
おそらくサンプリングレートの違いなんだろね。音が違うように聞こえるのは。
167SOUND TEST :774:2008/12/15(月) 23:36:59 ID:wkqixaPn
コルグは、確かに扱うのは難しいね。
逆に、SCシリーズの音源とかが、使いやすくする為にと音の厚みを削りすぎなんだよ。
他の音色とのバランス調整が腕の見せ所な訳で、デフォルトのままでつかう音色じゃないのが殆どなんだよね。

SC8850でも、コントラファゴットや、ソプラニーノサックスや、オーボエ・ダモーレとか、
そういうマイナー楽器(でもないんだけど…)の音色を作るために、色々パラメータいじった事あるけど、
やっぱ、この辺の音色を作るときは、音に厚みがあった方が作りやすいよ。

今は、Roland Fantom-XR使いだけど、やっぱり、そのままの音色じゃ扱うの難しくて、
自分が使う音色はバランスとって、ユーザーパッチに保存してある。

SC8850音色すくねぇぇぇぇよ!!!
コントラルトクラリネットとか、ソプラニーノクラリネットも無いし!
FFシリーズでも、この辺の楽器つかってないし。
やっぱ、マイナーなんだなぁ〜。

まぁ、自分の耳じゃ、コントラアルトクラと、コントラバスクラの音色聞き分けれないけど!
これ、聞き分ける人いるんだよなぁ〜。神の耳の持ち主が。
168SOUND TEST :774:2008/12/16(火) 01:35:36 ID:FXLFM6C0
それにしても、FF8とか、FF9とか、
シリーズ内で音色番号に統一性がありそうなんだけど、
一部の曲で、音色番号に割り当てられている番号と音色が違っちゃうんだよな。
どこかに、バンク切り替えコマンドみたいのが、あるのかなぁ・・・。

FF8とか、ストリングスは、0x20〜0x2B番の音色に、低音域〜高音域があるみたいなんだけどな…
ある曲では、チューバの音色番号だったはずなのに、ある曲では別の音色とかあって。
この辺が判明できれば、define.mmlつかえれるようにしたいのだけど、
バイナリーみても解らんわ。
169SOUND TEST :774:2008/12/16(火) 03:01:42 ID:ZPLlnh5O
純正のpQESでも、シンセで言うところのキースプリットして
低域にベース、高域にシンセみたいな詰め込み方した奴があるし
□独自ドライバでやってても不思議はないわなあ


ちなみに純正では初代ペルソナがそれを駆使ししてて非常に困る
170SOUND TEST :774:2008/12/16(火) 13:45:56 ID:Ge9F1x0m
桃伝の曲データはpQESなのにPgconvでは出来ない。seqripで切取ってseq2mid
で変換でるが再生出来ない。何でだろ?
171SOUND TEST :774:2008/12/16(火) 16:26:12 ID:oZyDc9cu
pQESもなかなか奥が深いんだな。
172SOUND TEST :774:2008/12/16(火) 16:41:21 ID:9df1i8AC
マイナーだがサウザンドアームズ(アトラス、レッドカンパニー)も多分純正pQESだと思うが
吸出しはできても正常に変換できない
最初と最後だけ通常再生されて中間が物凄く間延びした物が出来上がる
中見たらテンポじゃなくて音自体の長さが異様に長くなってたから
何か変換ミスしてるんだと思う、何かはわからんが
173SOUND TEST :774:2008/12/16(火) 17:47:39 ID:Ge9F1x0m
>>172
それは手順のことかい?「変換ミス」
何気にseqripから吐き出されたsqファイルをバイナリエディッタで確認したら
pQESのヘッダはあってもチャンネル終了の FF 2F 00 は見当たらず。
しかし、93 2F 73 00 とか 93 2F 00 とかあるので、その辺をガッツリ
FF 2F 00 と書換えてやれば尻切れトンボな曲にはなるが何とか seq2mid を
通って通常再生されるmidiにはなった。
ところで英雄伝説T&Uはseqrip出来るのかねぇ?ってか、PSFのミラーに
上がってない物は基本的にmidi変換出来ないと思ってよいのかな?
FF6も無理っぽそうだもんなぁ。
174SOUND TEST :774:2008/12/16(火) 17:59:13 ID:Ge9F1x0m
連投スマソ
Dragon QuestW・Z(PS)のmidi変換を成功された方っていらっしゃいます?
PSFとかも転がってないのでどなたか生dataを持っていたら頂けませんか?
midi変換したいと思うので。
175SOUND TEST :774:2008/12/16(火) 18:21:56 ID:9df1i8AC
生データも生データから作ったPSFもれっきとした著作物
個人利用ならまだしも不特定多数への配布は違法
データが欲しいならソフトを買え
176SOUND TEST :774:2008/12/16(火) 18:34:01 ID:Pmx4WqTu
>>170
桃伝はSEQなのにSEPのヘッダになってるのが原因
70 51 45 53 00 00 00 00
70 51 45 53 00 00 00 01
に書き換えれば変換できる
177SOUND TEST :774:2008/12/16(火) 18:44:08 ID:oZyDc9cu
アドバイスサンクス!
早速やってみる。DQ4は某ネットで拾ってきた。
178SOUND TEST :774:2008/12/16(火) 21:28:43 ID:oZyDc9cu
>>176
はじめから桃伝のヘッダーが 70 51 45 53 00 0000 01 だったのですが変換は無理でした。
179SOUND TEST :774:2008/12/16(火) 23:43:28 ID:FXLFM6C0
基本的には、akao2midやff8mmlで作った、mmlやmidファイルもNGだぜ。
ff8mmlとかのドキュメントには書いてないけど、宜しく!

DEWPRISMの解析進捗は、なんか解ってきそうな、わからないような・・・
180SOUND TEST :774:2008/12/17(水) 14:08:17 ID:TCswrrpH
そーいや、ドラスレ英雄伝説って変換できないよね?
181SOUND TEST :774:2008/12/17(水) 23:44:16 ID:3L9UBkmB
>>180
ソーサリアン〜ブランディッシュ3までは、ずっとMUCOMつかってる。
mucomの変換ツールは、vector行けば色々とある。
fmpのmml吐く奴とか、そのまま演奏する奴とか。

全部、PC98用だが。
182SOUND TEST :774:2008/12/18(木) 01:24:40 ID:93ml/+cD
http://www1.axfc.net/uploader/He/so/171171.lzh

DEWPRISMの逆MMLコンパイラ Version 0.02β
どこまで使えるかは解らない。
検証とか、解析できる人は手伝ってくれると嬉しい。

ソースは、アセンブラだけど、一応C言語ライクに作ってあるから、
ff8mmlのソースよりは読みやすくなってると思う。
でも、アセンブラはアセンブラだ。

.if〜.else〜.endif とか、 .while 疑似命令使ったり、
local疑似命令で、ローカル変数まがいの事したりしているから、
その辺はC言語ライクで読み・・・まぁ、アセンブラだし簡単には読めないか。

183SOUND TEST :774:2008/12/18(木) 01:47:35 ID:93ml/+cD
あとは、
0x40〜0x5F, 0xC0〜0xDF (2進数で、x10xxxxx)の挙動の解析。
この辺のコマンドがあると、まだ正常に逆コンパイルできない模様。

0x00〜0x1F 音符コマンド。  wait値は前回のwait値
0x20〜0x3F 音符コマンド。  wait値は音長といっしょ
0x40〜0x5F ???????
0x60〜0x7F 音符コマンド。  wait値は、次のバイナリーで指定

0x80〜0x9F 制御コマンド。  wait値は0
0xA0〜0xBF 相対音符。    wait値は前回のwait値
0xC0〜0xDF ??????
0xE0〜0xFF 制御コマンド。  wait値は、次のバイナリーで指定

wait値ってのは、次のコマンドまで、何ticks待つか。
バイナリー指定されるwaitは、0x0010〜0x0050番地の内容が適用。

例えば、0x60〜0x70だと、最初のバイナリーが音長(ノートの長さ)で、wait値は別に指定される。
なんで、ノートの長さが48で、waitが192だったら、
192÷48=4分音符と、 192-48チック、つまり付点2分休符ってこと。
184SOUND TEST :774:2008/12/18(木) 18:09:56 ID:E69jWfhG
おまいらスクエニ以外で変換したいゲームの曲ベスト3って何だ?
185SOUND TEST :774:2008/12/18(木) 19:15:10 ID:TlK8tX6G
ヴァルキリープロファイルとVIPER PHASE1
186SOUND TEST :774:2008/12/18(木) 19:21:03 ID:ixcKG0sO
スターオーシャンシリーズとサガフロンティアシリーズ
187SOUND TEST :774:2008/12/18(木) 21:02:24 ID:QS1zMMIX
おまいら…スクエニ以外と言ったべよ?
188SOUND TEST :774:2008/12/18(木) 21:14:36 ID:JbTxiwmH
ダブルキャストとPS2もいいならZ.O.EとANUBISだな
189SOUND TEST :774:2008/12/18(木) 22:23:50 ID:V0xTPvs8
最近のソフトだとソーマブリンガーかな
あれはsdatでなく独自シーケンスファイルかつ独自ドライバ
190SOUND TEST :774:2008/12/19(金) 00:21:17 ID:aRzYnwfO
VIPER PHASE1とでじこミュニケーション1,2だな
191SOUND TEST :774:2008/12/19(金) 02:05:37 ID:/KghqIgh
>>189
メンツがメンツだけにストリームかと思ってたのだが、違うのか
192SOUND TEST :774:2008/12/19(金) 02:47:48 ID:LHc8qVXU
>>191
それなんてジュエルサモナー
193SOUND TEST :774:2008/12/19(金) 07:40:07 ID:OMufv/0w
スクエニ以外のゲームした事のないヤツにとっては酷な質問だわな。
爆笑!!
194SOUND TEST :774:2008/12/19(金) 10:28:41 ID:98i9rcvq
>>182
お疲れ様です
メモの叫びに吹いた
195SOUND TEST :774:2008/12/19(金) 16:22:02 ID:1j/xLcOi
幻想水滸伝1・2あたり変換したいかな。
それっぽいファイルはあるけど、よく分からんw
196SOUND TEST :774:2008/12/19(金) 16:31:41 ID:aIFjgNNR
>>195
DSなら簡単に変換できるよ?ってか、曲自体psと同じか知らないけど・・・
197SOUND TEST :774:2008/12/19(金) 22:32:37 ID:dK5kM9KJ
最近ここに来たのだが、パスワードを公開してくれないので取れない。
198SOUND TEST :774:2008/12/19(金) 23:12:33 ID:PHUbf4MF
前スレ
http://wannabe.fam.cx/service/2ch_538/read.cgi?gamemusic/1186133804/

ヂュープリズムのは、このスレに書いてある。
199SOUND TEST :774:2008/12/20(土) 14:58:00 ID:KkWfu67b
ログも見れないカスにいちいち教えてやらなくていい
そういう奴はDLできたら次は「どうやって使うんですか^^;」でとくる
200SOUND TEST :774:2008/12/21(日) 21:00:11 ID:uDDi6q0m
全くだ。クレクレはともかく、教えて君は勘弁願いたいものだ。
201SOUND TEST :774:2008/12/22(月) 02:11:46 ID:rp5n56lO
クレクレは神。
クレクレ無くして発展は無し!
202SOUND TEST :774:2008/12/22(月) 02:53:06 ID:rO3tkAB6
さすが聞き専スレ6-485がきっかけで立ったスレだけのことはあるな
このスレにはクレクレとよく訓練されたクレクレがいる
203SOUND TEST :774:2008/12/22(月) 07:57:54 ID:KetNEFB6
>>202
だから何?
気にいらねーなら来るなよ!いちいち口出しすんじゃねぇよ!カス!
204SOUND TEST :774:2008/12/22(月) 18:49:24 ID:2w5zIqSS
いや、褒めてんだろ
205SOUND TEST :774:2008/12/23(火) 08:43:06 ID:ga0Jr1wf
そんなくだらねぇ話しないでデュープ解析の人に労をねぎらう言葉を掛けられないのかよ!
全く他力本願ないい加減な奴等だよ!
206SOUND TEST :774:2008/12/23(火) 11:22:49 ID:Aefe+SKq
>>199-205
こういう過剰反応がいらねえよ


解析の方、マジオツカリっす。
207SOUND TEST :774:2008/12/24(水) 06:35:15 ID:0rLwmmOe
sf2
208SOUND TEST :774:2008/12/24(水) 06:53:53 ID:2jk2wv8J
 ∩ .∩
 .い_cノ  / ̄>O
.c/・ ・っ (ニニニ)△△
.("●" ) (・ω・`)[‖]  ここも悪い子ばかりだな
O┳Oノ)=[ ̄てノ ̄ ̄]      よし!次行こ!
◎┻し◎ ◎――◎=3
/ラジャー\
209SOUND TEST :774:2008/12/25(木) 11:16:22 ID:g3SV3gzp
なかなか過疎ってるじゃないか。
210SOUND TEST :774:2008/12/25(木) 15:01:49 ID:IjZTvHwn
なんかおもしろいpsfこないの?
211SOUND TEST :774:2008/12/25(木) 17:03:20 ID:yWXMf3RQ
っていうか、MIDIに変換出来るPSFのリストが欲しいぞ?
212SOUND TEST :774:2008/12/25(木) 22:04:05 ID:C3/YOK/3
PSFは厳密には・・・実行ファイルかな?それともメモリイメージ?
213SOUND TEST :774:2008/12/26(金) 08:16:39 ID:dVidNOZv
loveemuが開発されたSPCの内部構造を正確にMIDI変換するツールが各メーカーごとに対応出来たら
どんなに嬉しいことか・・・・・
やはり、MIDI変換の原点はSPCだよな。
214SOUND TEST :774:2008/12/26(金) 09:33:04 ID:F5wRSDLg
んなこたーない
シーケンスデータへの変換はシーケンスデータからだ
1歩譲ってログからだ
215SOUND TEST :774:2008/12/26(金) 13:04:39 ID:a+pg78Hy
しかし手修正の時間を考えるとログはNGだな。
暇人には良い時間潰しだが忙しい人間にとってはspcにしろpsfにしろ、やはり
変換ツールが肝だわな。VGMTrans・akao2mid・akao2mml・Pgconv・GBA2mid
等の開発者の皆様には敬意を表します。
216SOUND TEST :774:2008/12/26(金) 22:49:24 ID:wBJDd7IA
>>213がいっているのはシーケンスデータの変換の話では?
loveemuさんが最近、任天堂とカプコンの多タイトルに対応した
spc変換ツールをリリースされた。
ちなみにloveemuさんはgba2midの作者さんでもある。
217SOUND TEST :774:2008/12/27(土) 00:07:35 ID:EkR6Fp/L
TNSは冬混み出ないの?
218SOUND TEST :774:2008/12/27(土) 00:14:06 ID:EkR6Fp/L
すまん誤爆した
219SOUND TEST :774:2008/12/27(土) 09:22:25 ID:vRuBwyZs
でも、解析も暇がないと出来ないんだぜ。
ff5とかff8とかmucomも、解析したの高専時代だしな。
授業中に、逆アセンブラしたソース眺めてたぜ。
俺の青春時代、これで良かったのか?

古代祐三氏のMUCOMって、東芝製Z80特有の未定義命令使ってるから、
そこで最初意味不明で悩んだ記憶があるぜ。
IXレジスタの上位8bitだけにロードする命令とか。
ザイログ製のZ80には無いんだけど、東芝製のZ80にはあるんだよ。

Z80の4MHzで、BGMとして音楽を鳴らすには、
処理をかなり最適化しないといけなかったのは解るけどさ、
だからって、CPUのデータシートにのってない命令を使うのはどうかと思うんだ。
220SOUND TEST :774:2008/12/27(土) 11:40:52 ID:EAzgqBzH
我々からすればアセンブラ等プログラム領域が読書き出来る人は
神と言う他はない。本っっっっ当に乙です。
221SOUND TEST :774:2008/12/27(土) 13:07:57 ID:8Be64PF2
735 :SOUND TEST :774:2008/06/24(火) 23:16:20 ID:bR6lM0SE
俺の知識の引き出しなんて
全部ひっくり返しても所詮こんなもんなんです。ごめんなさい

ttp://www1.axfc.net/uploader/He/so/112967.zip
pass:midilove
222SOUND TEST :774:2008/12/27(土) 17:13:46 ID:8cwDDZkA
あのさー、結局ワイルドアームズ2のMIDI変換の話が尻切れトンボになってんだけどマダー?
誰か教授きぼんぬ!
223SOUND TEST :774:2008/12/27(土) 21:35:07 ID:vRuBwyZs
>>220
でも、C言語できないんだけどな!
チーム開発は経験あるから、C言語から呼ばれるアセンブラは書けるけど…。
全然C書けないと言ったら嘘になるが。

近頃のナウなヤングなソフトウェア業界には、アセンブラ使いは要らない子なんです。(TT
ハードウェア業界じゃ、まだ現役といえば、現役だが。

ようやく、ZWEI2クリアしたから、次、DEWPRISMやるぜ!!
やっぱ、耳に楽曲覚えさせないと、逆MMLコンパイラ作れねぇわ。
224SOUND TEST :774:2008/12/27(土) 22:22:45 ID:8cwDDZkA
乙です。
アセンブラの良さは(処理能力の速さ)ってずっと思ってたけど間違いかな?
225SOUND TEST :774:2008/12/27(土) 23:07:46 ID:vRuBwyZs
>>224
一昔前のCPUならそうなんだけど、
最近のCPUはC言語に特化してるから、
下手にアセンブラで組むと遅くなるんだぜ。

それに、CやC++のコンパイラが凄い進化していて、
CPUのパイプラインとかも考慮して、
機械語レベルでの命令の順番も最適化してくれるから、
一概にアセンブラ=高速とは、もう今の時代は言えなかったりする。

ただ、ゲームボーイとか、ワンダースワンとかで使われていたCPUは、
その一昔前のCPUに該当するから、アセンブラで書く方が処理速度早くなると思う。
が、ゲームボーイ時代はそうでもないんだけど、
ワンダースワンは、ゲームメーカーにアセンブラを組めるデベロッパーや、
ドット絵を書けるクリエーターがいなくて、速攻廃れたらしい。
↑ 某ゲームメーカー勤務の友人曰く。
(おれ、PS2・PS3のような、ソフトの開発費が膨大に掛かる方がきついと思うのだが。)

アセンブリ言語が必要とされる分野は、知ってる限りだと、
家電のマイコン制御や、LSI内(DSP等)のファームウェアとかじゃない?
俺自身も、本職は、音関係の回路屋だし。
226SOUND TEST :774:2008/12/27(土) 23:13:40 ID:vRuBwyZs
ゲームボーイのCPUは、Z80のカスタム。ただ、完全なZ80ではないらしい。
ワンダースワンのCPUは、NECのV30MZだったんだけど、もう廃品種になった。
この2つのハードって、もうお亡くなりになったんだけど、設計者が同じなんだよ。
すごい洗練されているハードだった。
ただ、そのハードを使いこなせる技術者がいなくて、ワンダースワンは速攻廃れたのが残念。
227SOUND TEST :774:2008/12/28(日) 02:58:37 ID:9YvJJZhs
FF5のSPCを、ukky氏のPPZ8で鳴らす為のFF5MMLっての作ってあるんだ。
(ff8mml.comって、実はそれをFF8&mml2mid用に書き換えた奴。)
前に、ff5用のも作ってくれって要望があって、昔の資料引っ張り出してるん。
PC98立ち上げて、86音源で演奏させたり、ソース眺めてるんだ。

サイン波の音色でエンベロープ設定して、ピアノの音に重ねてたり、
サイン波でフルートのまねごとしてみたり、
ノコギリ波にエンベロープかけて、クラビ作ってみたりしてるんだな。
MIDIでやるにしても、エンベロープまでちゃんと再現させないと、本物みたいには鳴らなそう。
ただ、ハープの減衰や、シンバルの減衰も、音色自体には減衰はなくて、
エンベロープで減衰させてるから、エンベロープをどうするか。

>>121 の情報に追加。
FF5は、俺も遙か昔に解析済み。
--------------------------------------
0xEB bAR Attack
初期音量 =100(bAR/15) [%]
音量100%に達する時間 = 8(15-bAR) [ticks]
※1[tick]に、100(15-bAR)%変化する。

0xEC bDR Decay Rate
(程度は不明)

0xED bSL Sustain Level
(程度は不明)

0xEE bSR Sustain Rate
1[tick]の変化量 100(bSR/4096)%

0xEF ADSRエンベロープを初期値に再設定
228SOUND TEST :774:2008/12/28(日) 03:09:13 ID:9YvJJZhs
ピアノのお稽古とか、あのおもちゃっぽいピアノの音色、
グロッケンと、オルガンの音色にエンベロープかけたのをユニゾンさせて、作ってあるんだぜ。
オルガンは、ビックブリッヂの死闘で使われてるあのオルガンの音色と一緒。
229SOUND TEST :774:2008/12/28(日) 14:05:41 ID:aQb9Pp4b
>>226
正直8086の開発はこりごりと思う人が多かったと思う98世代
230SOUND TEST :774:2008/12/28(日) 15:24:26 ID:9YvJJZhs
セグメントの壁か。
俺は元々Z80な人だから、気にはならなかったんだけど、
ゲームとか大規模ソフトウェアを組もうとすると、やっぱ、やっかいだよな。
ワンダースワンも64kByteの壁があるから、32bit-CPUに慣れた人にはやりにくかったのかもな。
俺は、DSレジスタにカセット内RAMのセグメント入れて、
ESレジスタに本体のRAM(メモリマップI/O)のセグメント入れるのが好きだった。
久々に、1bitは血の1滴、1clockは血の1滴を味わったハードだった。
231SOUND TEST :774:2008/12/28(日) 17:16:11 ID:aQb9Pp4b
アセンブラでセグメントを意識して開発するぶんにはいいんだろうけど、
C言語だと中途半端に掩蔽されるうえに、それでなくてもややこしいポインタ
関係がNEARだのFARだのわけわからなくなる。
232SOUND TEST :774:2008/12/28(日) 17:18:23 ID:NqsvRqFz
何だか高次元な話で訳判んないけど乙です。
233SOUND TEST :774:2008/12/28(日) 18:12:31 ID:9YvJJZhs
あぁ、なるほど。
C言語は、スモールモデルでしか書いたこと無かったわ。
確かに、64kByteを超えるラージモデルを書くのは大変そうだ。

それに、ゲームとかになると、チーム開発なのと、ハードを使いこなす必要があから、
単純な構造にならなくて、より、プログラム全体の構造が解りにくくなるんだよね。
シナリオのスクリプトファイルに、機械語のコードをハンドアセンブルする奴もいるし。
今の車載とか、医療機器とかの信頼性が必要な職場じゃ、絶対あり得ないわ。
234SOUND TEST :774:2008/12/28(日) 18:15:49 ID:9YvJJZhs
一応音屋なんだけど、カーオーディオでも車に搭載される場合、エンジンやブレーキ制御用の素子並の信頼性が必要されるんだぜ。
この辺って、医療機器よりも、高信頼性が要る。
ゲームメーカーのソフトウェア、信頼性低すぎ。ちょー実感中。
俺の作るソフトウェアもバグありまくりだけどな!! ff8mmlとか。
235SOUND TEST :774:2008/12/28(日) 18:40:31 ID:M+sFZMNX
>>233
> シナリオのスクリプトファイルに、機械語のコードをハンドアセンブルする奴もいるし。

16bitCPUまではともかく、さすがに32bit以降ないでしょ。
あったとしてまあ、論理演算やbit操作、条件分岐くらいだろうが
今は普通にプリプロで処理されるし、単にスクリプタのコマンド実装の手抜きかw

Cが主戦力になって以来、そもそもアセンブラで書く意義がCPU命令による
ダイレクトなハードウェア制御に、ほぼ限定されてしまったからね。
サウンドのデータ構造も、音源の進化によるものではなく、ゲームの演出面の
肥大化や複雑化に影響されるものだと思うし。

だから、ゲームを遊んで音や演出を把握しながら解析を進めるのが一番の近道
だと自分も思いますよ、がんばって!
236SOUND TEST :774:2008/12/28(日) 19:55:40 ID:9YvJJZhs
> 16bitCPUまではともかく、さすがに32bit以降ないでしょ。
そうそう。8086時代の話。

ゲーム音楽も、最近はmp3とかoggとか、ストリームも使われ始めてきてない?
生演奏と、打ち込みじゃ、やっぱ違うしね。両方やってて思うけど、やっぱ打ち込み音楽は表現力に限界あると思う。
DSとか、携帯機器ではまだ生き残ると思うけど…。
PS2でさえ、シーケンスデーターでやろうとすると、メモリ不足とかで、表現を妥協しないといけないところがあるらしいし。
ギガサンプラー並の事をPS2でやったら、メインのゲームが入り込む余地無くなるとか。
237SOUND TEST :774:2008/12/28(日) 20:27:44 ID:BYIRHFjH
> ストリームも使われ始めてきてない?

いつの話をしてるんだ
今はストリームだけどインタラクティブに繋ぎ合わせて曲展開が変化するとか
ストリームだけど複数トラックでフレーズを抜き差しして半ばシーケンスみたいに鳴らすとか
そういうのもあるよ

ストリームだから生なんてことは全然ないし
シーケンスでもびっくりするような音のもある
238SOUND TEST :774:2008/12/28(日) 20:51:20 ID:9YvJJZhs
無限ループのタグいれるのは見たことあるけど、いま、そんなことまでやってるんだ。

>ストリームだから生なんてことは全然ないし
あー、そういやそうだ。
サンプラーとかでつくって、それをストリームにする人のが多いか。

俺、ちょー過去の生物だから。最近の流行は全然わかんね。
ゲーム業界変化激しすぎだわ。
自己啓発する暇があったら、オーボエの練習しながら、dewprism解析する。
239SOUND TEST :774:2008/12/29(月) 17:09:17 ID:gBqCpNFe
そーいえば、ワンダースワンのmidi変換ツールってないよね?
240SOUND TEST :774:2008/12/29(月) 20:24:15 ID:+7kF7F9h
作ればあると思うが…
WS版FF2のデーターフォーマットは知っているが、
俺はあれをSMFにしようとは思わない。

まぁ、FF2は、PSのAKAOに似た構造だった。
241SOUND TEST :774:2008/12/29(月) 20:25:23 ID:+7kF7F9h
てか、たった4和音なんだから、耳コピで出来るっしょ。
242SOUND TEST :774:2008/12/29(月) 22:19:33 ID:3J5QPxId
確かに・・・
nsf2midやspc2midよりはマシなものが出来ると期待していたのだが・・・
甘かったかな?
243SOUND TEST :774:2008/12/30(火) 13:08:11 ID:cT2besuo
logから作るんだったら、全然マシじゃ無いと思うんだ。
データ構造を解析して専用のを作るんだったらいけると思うが。
音源LSIの音程の精度も高温部はあまり良くないから、
LSIにかかれる音程から、ノート番号とPitchBendを算出するアルゴリズムにすると、
高温部は、ピッチベンドかかりまくりになると思う。

WonderSwanの音程は、

(3072000÷32) ÷ (2048 − LSIに書き込んだ値) [Hz]

あとは、平均率 A=440Hz として、ノート番号と、ピッチベンドを計算してあげる感じかな。
244SOUND TEST :774:2008/12/30(火) 13:14:31 ID:cT2besuo
マスタークロックの 3.072MHz を 32で割ってるのは、
音色の波形テーブルが、1波長32段階だから。
MSXのSCC音源みたいな感じだけど、量子化数は4bit。(MSXのSCCは8bit)
音量は、右4bit、左4bitで、合計8bit(1Byte)。
なんで、この右の音量と、左の音量から、パンポットと音量を計算することになると思う。

WS版のAKAOは、音源ドライバー内で、音量とパンポットから、右と左の音量を計算するようにしているっぽい。
曲データレベルでは、音量(Range=0〜15)と、パンポット(Range=0〜31)を指定するようになってた。
245SOUND TEST :774:2008/12/30(火) 18:25:34 ID:FqIt4mBw
少く限られた容量を有効にかつ凝った演出を作りあげるサウンド・エンジニア殿には
脱帽です。
246SOUND TEST :774:2008/12/31(水) 00:20:23 ID:OqhJ/ZCE
未公開VGMtransってもう手に入らないのかな?
247SOUND TEST :774:2008/12/31(水) 08:21:00 ID:QniN5Icq
ハッキリ言ってフツーでは手に入りません。Google先生に聞いて見ましょう。
海外のサイトにて有料であります。
248SOUND TEST :774:2009/01/01(木) 10:14:04 ID:VE3VJnsc
明けましておめでとうございます。
本年度も変換ツール・MIDIについて大いに盛り上がりましょう!
249SOUND TEST :774:2009/01/02(金) 22:44:27 ID:NG0lTcpc
>>243の事って、SSG音源が高音域で音程が怪しくなるのと同じなのかな?
PC-98の音源で打ち込んでいた時、音程が微妙だった記憶があるけど。
250SOUND TEST :774:2009/01/02(金) 23:23:12 ID:lpPVQaiE
音程精度は周波数レジスタが何ビットあるかに尽きると思う
OPMのKC(キーコード)みたいな方式なら話は違ってくるだろうけど
あれは内部にテーブルを持ってるってことになるのかな
251SOUND TEST :774:2009/01/03(土) 01:46:02 ID:bfvPu5dC
あけてました。おめでとうございました。

>>249-250
0〜2047 の11bit。
技としては、オクターブ1個上の音色を作って、
1オクターブ下で鳴らすって技がある。
矩形波とか、そういう簡単な音色限定だけど。
ワンダースワンは、chiptuneとかで使っても、面白い音源と思うよ。
252SOUND TEST :774:2009/01/03(土) 03:54:30 ID:hi3zPcB0
WSをライブで使ってる人いるんだよな。WTDなんだろうか。
253SOUND TEST :774:2009/01/03(土) 13:18:08 ID:CCvQfdsj
WonderWitch + SoundILかもしれないぞ!
となりで、弟がFF11やってるんだが、ロンフォーレってところの音楽いいな!
なんか、コード進行が、すごい植松進行だよな。

254SOUND TEST :774:2009/01/03(土) 15:22:54 ID:2C8Q8+Ad
でも植松節じゃないんだよな。
255SOUND TEST :774:2009/01/04(日) 00:00:08 ID:qEv03e8U
トニック→ドミナント→トニック が繰り返されるあたり、植松伸夫進行に感じるんだ。
256SOUND TEST :774:2009/01/05(月) 17:16:34 ID:2ybP0bWN
誰かXenogearsのformat見破った人はいないのーーーー?
激しくmidiにしてぇよぉ〜〜!!!
257SOUND TEST :774:2009/01/05(月) 19:54:47 ID:u43szB5x
デュープリズム、マダー?
258SOUND TEST :774:2009/01/05(月) 21:51:31 ID:qwhY3jgn
マダ by うぷぬし

てか、欲しいなら、解析協力すれ。
解った範囲を書き込みしてくれれば、それをソースに反映してアセンブルしてupる。

俺、ゲーム自体最近やり始めたばっかだ。
曲も知らないのに、ふつう、作れねぇyp

259SOUND TEST :774:2009/01/05(月) 22:53:07 ID:JjgZRTtj
うぷぬし
260SOUND TEST :774:2009/01/06(火) 14:13:13 ID:YxOU38Xz
最近、アークザラッドにハマっててdiscのIMGファイルから曲を抜出そうと
seqripで切出してseq2midでmidiに変換したが、ものの見事にmidiが再生
出来なかった。何でかのぉ? 同じ経験した人、居るかいなぁ?
261SOUND TEST :774:2009/01/06(火) 14:29:01 ID:mDgR8HtS
>>260
1なら何も考えなくても出来た覚えがあるんだが
262SOUND TEST :774:2009/01/06(火) 15:42:58 ID:YxOU38Xz
>>261
psfからは簡単だったがdiscからは変換されても再生不能。何故か解からんが
263SOUND TEST :774:2009/01/06(火) 16:59:57 ID:p+AQrpbu
俺も変換出来なくて諦めた記憶あるわwww
264SOUND TEST :774:2009/01/06(火) 21:13:08 ID:HNRmfDNP
圧縮されてるんじゃないの?
べたのSMFとか、無駄にサイズがでかいし。
SEQって、SMFと似たようなフォーマットなんでしょ?
265SOUND TEST :774:2009/01/06(火) 21:30:22 ID:p+AQrpbu
切出したseqの中身を覗いたが圧縮情報は無かったぜ?
266SOUND TEST :774:2009/01/07(水) 00:42:17 ID:8d1Floc9
FF8MMLで吐いたMMLの音色設定集作ってみた。

タイトル:FINAL FANTASY 9
対象音源:Roland SC88Pro
もの  :http://www1.axfc.net/uploader/He/so/179147.lzh
PASS  :FF9

ff8mml.com作った当時、音色割り当てしたのはここまでで、
続き、作る気力がある人、よろしく!
一部だけ割り当てて、書き込んでくれても良いし。
まとめ位なら、暇なときにでもやります。

ff7mml.comと違って、コピペしてからmml2midでコンパイルしないといけないからめんどいけど、
まぁ、抜き出し物はそう言う物だとあきらめて。
色々、データ眺めてたんだけど、やっぱり、
曲データ毎に音色番号に割り当てられてる楽器が違ってるから、
タイトル一括での定義ファイルは、実装無理だわ。
267SOUND TEST :774:2009/01/07(水) 00:53:39 ID:8d1Floc9
『Vamo'alla flamenco』

の「まだまだあまいぞ!」は、当然ながらSC88Proにはそんな音色ないから。
鳴らないけど、我慢してね♪
268SOUND TEST :774:2009/01/07(水) 01:20:41 ID:8d1Floc9
間が開いてるのが気持ち悪いから、これだけ定義してみた。



■CD1-19:ファンファーレ
《パーカス定義》
$8z @49 /*Instrument of percussion 1z*/
《音色定義》
$0a k127 y100,2 y101,0 y6,64 H0,3 @56 ;Trumpet
$1a k127 y100,2 y101,0 y6,64 H0,3 @57 ;Trombone
$2a k127 y100,2 y101,0 y6,64 H0,3 @74 ;Recorder
$3a k127 y100,2 y101,0 y6,64 H16,3 @72 ;Piccolo 2
$4a k127 y100,2 y101,0 y6,64 H0,3 @72 ;Piccolo 1



■CD1-20:あの日の記憶
《音色定義》
$0a k127 y100,2 y101,0 y6,64 H0,3 @0 ;G.Piano
$1a k127 y100,2 y101,0 y6,64 H0,3 @68 ;Oboe
$2a k127 y100,2 y101,0 y6,64 H9,3 @4 ;E.Piano
$3a k127 y100,2 y101,0 y6,64 H0,3 @71 ;Clarinet
$4a k127 y100,2 y101,0 y6,64 H0,3 @70 ;Faggote
269SOUND TEST :774:2009/01/07(水) 02:38:58 ID:svBaRA8z
pass間違ってるぞ
270SOUND TEST :774:2009/01/07(水) 07:55:03 ID:9d8M6HYV
アークザラッドは1〜3なら普通にゲームディスクのデータから変換して再生できるよ?
パソコンのドライブに問題があるんじゃないだろうか
271SOUND TEST :774:2009/01/07(水) 10:03:42 ID:35WZCZBC
>>262
psf作った人が標準seqに変換した可能性もある
272SOUND TEST :774:2009/01/07(水) 12:29:20 ID:Y7uYHRLI
seqripでseqデータ吐き出しは270曲程。seq2midで変換したら同じ曲ばかり数曲
再生可能。あとは全て再生不可能。違うPCで何度か実験したが結果は全て同じ。
ドライブ不具合でも無さそう。考えられるのはヘッダーpQESはダミーで実際には
別ドライバでデータが形成されていると言うことだろうか…。Pgconvで試しても同一曲
数曲とストリーム(DLS)の吐き出しのみ。
273SOUND TEST :774:2009/01/08(木) 02:30:13 ID:PGGFoe4T
>>269
ごめん。小文字だった。

>>272
方法が間違えているか、圧縮されているか、独自拡張があるのか、独自形式か。

疑問があるんだけど、CD-ROMのISOイメージファイルって、
CD-ROMのセクターにかかれているデータだけが入ってるの?
セクターの前に、セクタ番号とか、トラック番号とか、シリンダ番号とか、同期用のGAPとか入らないのかな?
フロッピーディスクの構造は知ってるんだけど、CD-ROMのディジタル的な構造は知らなくて。

昔、物理セクターの中じゃなくて、セクターとセクターの間にある、
同期用のGAPに、データ書き込んで、それをコピープロテクトにしてたゲームとかあって。
PSでも、そう言うこと、やってるのかなぁ〜と。
274SOUND TEST :774:2009/01/08(木) 02:33:07 ID:PGGFoe4T
とか、同じセクタ番号のセクタを2つ作って、それを検出する奴とか、
あえて、特定のセクタ番号のセクタを作らないとか、
特定のトラックは全部GAPにして、セクター数を0にするとか、
セクタを、通常はインデックスマークから、0,1,2,3の順番で並べるところを、
8,9,10,と並べて、それを検出するとか、
いろいろなコピープロテクトがあったんです。
275SOUND TEST :774:2009/01/08(木) 03:49:27 ID:ouB7xUlq
CDイメージはベタもあればGAPが挟まってるのもあるけど
PS1のゲームだったら大抵はマウントすればファイルシステムとして見えるので問題ない
XAはそれじゃ駄目なこともあるけどこのスレ的には対象外だし

でも、たまにファイル見えないのもあってイメージを見る必要があるんだよね
フォーマットは色々あるし全然知らないけど、圧縮みたいなことさえしてなければ
ゴミ部分はほとんど一目瞭然なんで適当に加工してベタな状態にしてるよ

困ったら何はともあれバイナリエディタでビットマップ表示を眺める
276SOUND TEST :774:2009/01/08(木) 15:18:51 ID:MJnK5mIX
88Pro聞いてみたいけど、
もうシリアル接続できる環境なくなっちまったからなぁ...。
Win98時代は勝手サイトの作りこまれたデータにずいぶん世話になったが。
277SOUND TEST :774:2009/01/08(木) 15:24:49 ID:N+7rERD5
誰かハチプロ安価で譲っておくれ。オイラの壊れちまった。
278SOUND TEST :774:2009/01/08(木) 23:18:34 ID:PGGFoe4T
あ、88proってそういえばUSB接続ないんだっけ。
279SOUND TEST :774:2009/01/08(木) 23:44:38 ID:8AWxAGBM
8850と8820はあった覚えがあるけどな
280SOUND TEST :774:2009/01/09(金) 01:21:53 ID:Rsxn1H3f
>>276
USB→RS-232C の変換装置とか売ってるぞ。
それか、USB接続できる >>279 を買うんだ!


Ch10以外もリズムトラックに設定できるGM規格のMIDI音源が2ポート分(32トラック)あれば、
define.mml や、 定義の所いじくれば、SC88Pro以外でも聴けるよ。

ff7mmlと、ff8mml は、リズム関連の命令は、マクロ($0z, $1z)で出力してるから、
・ff7mmlで吐いたmmlは、define.mml
・ff8mmlで吐いたmmlは、init.mml
の中の、

$0z EX x41,x10,x42,x12,{x40,x10+R,x15,0},xF7 J0 ;パーカスoff
$1z EX x41,x10,x42,x12,{x40,x10+R,x15,1},xF7 H0,3 $8z ;パーカスon 1
$2z EX x41,x10,x42,x12,{x40,x10+R,x15,2},xF7 H0,3 $9z ;パーカスon 2

を、その音源でのリズムチャンネルの設定方法に変えればok。
SC88Proは、エクスクルーシブで設定するから、付属のdefine.mmlは、
エクスクルーシブ(GSのやり方)になってる。

MML2MIDの命令は、

$ … マクロ定義

H … バンクセレクト(プログラム・パッチ・音色の) (引数はmsb,lsbの2個)
@ … プログラムチェンジ
y … コントロールチェンジ (引数は、レジスターとデータの2個)
Ex … エクスクルーシブ (引数は、xF7がくるまで)

MML2MIDの数字の書き方は、通常で10進数。
先頭にxがついたら、16進数。

これと、基礎的なMIDI規格が解ってれば、定義を自分で編集できると思う。
281SOUND TEST :774:2009/01/09(金) 01:30:00 ID:Rsxn1H3f
>>280 のエクスクルーシブの中に、

『x10+R』

って引数があるけど、"R"は定数で、Roland式のチャンネル番号が入ってる。
・取説より抜粋
> チャンネル10ならばRは0
> チャンネル1〜9ならばRは1〜9
> チャンネル11〜16ならばRは10〜15

そのほか、"C"って定数もあって、これは、チャンネル番号がそのまま入ってる。

で、EX命令中の "{ }" は、Roland 式のチェックサムをコンパイラに計算させる範囲。
GM2用のCRC計算はしてくれないんで、GM2の場合は、自分でチェックサム計算要。
282SOUND TEST :774:2009/01/09(金) 18:29:21 ID:/TP5LXtB
何かいいネタない?
283SOUND TEST :774:2009/01/10(土) 00:38:22 ID:Fq3MfAeN
最新版
----------------------
タイトル :PlayStation版 SQUARE SOFT 逆MMLコンパイラ(AKAO)
ファイル名:akao2mml116.lzh
URL  :http://www1.axfc.net/uploader/He/so/180477.lzh
PASS :akao
----------------------

----------------------
タイトル :PlayStation版 SQUARE SOFT 逆MMLコンパイラ(HOSA)
ファイル名:hosa2mml003.lzh
URL  :http://www1.axfc.net/uploader/He/so/180481.lzh
PASS :hosa
----------------------

改訂履歴はつづく

主に、サガフロと、FF8でコンパイルできないMMLがあったのを修正しますた。
284SOUND TEST :774:2009/01/10(土) 00:40:38 ID:Fq3MfAeN
akao2mml の変更点

version 1.16 2009. 1. 9
◆MASM9.0(Microsoft (R) Macro Assembler Version 9.00)
 でアセンブルできるように、ソースファイルを手直しした。
 MASM9.0は、以下のソフトウェアに含まれて居ます。
 ・"Microsoft (R) Visual Studio 2008" (有料)
 ・"Microsoft (R) Visual C++ 2008 Express Edition" (無料)
  →http://www.microsoft.com/japan/msdn/vstudio/express/default.aspx
 ※別途、16bit実行ファイルをアセンブルする為に、16bit版のリンカーが必要です。
  →ftp://ftp.microsoft.com/softlib/mslfiles/lnk563.exe
◆コマンド関連
・以下のコマンドに対応
  0xFC (AKAO24) 拡張音色に対応
    但し、こちらは曲データ毎に番号に統一性無いため、
    音色割り当ては、各MMLファイルを直接編集要です。
    (FF7では使われない。サガフロンティアで多用されている。)
・以下のコマンドを修正
  0xEE (AKAO24) 無限ループ命令によるジャンプに再対応(バグ修正)
  0xFE06(AKAO32) 無限ループ命令によるジャンプに再対応(バグ修正)
   ※version 1.01の時点で元々できていたのだが、
   0xFE07命令の対応時に、正常動作しなくなっていた。
   そのバグの修正。
   (FF8や、サガフロでSMFコンパイルできなかった曲の対応)
285SOUND TEST :774:2009/01/10(土) 00:42:06 ID:Fq3MfAeN
hosa2mml の変更点

version 0.03 2009. 1. 9
◆MASM9.0(Microsoft (R) Macro Assembler Version 9.00)
 でアセンブルできるように、ソースファイルを手直しした。
 MASM9.0は、以下のソフトウェアに含まれて居ます。
 ・"Microsoft (R) Visual Studio 2008" (有料)
 ・"Microsoft (R) Visual C++ 2008 Express Edition" (無料)
  →http://www.microsoft.com/japan/msdn/vstudio/express/default.aspx
 ※別途、16bit実行ファイルをアセンブルする為に、16bit版のリンカーが必要です。
  →ftp://ftp.microsoft.com/softlib/mslfiles/lnk563.exe


ごめん、これだけなんだ。
機能は0.02と何も変わってない。
期待させておいて、ゴメン
286SOUND TEST :774:2009/01/10(土) 00:43:29 ID:3Zd8H/Ix
おつ
287SOUND TEST :774:2009/01/10(土) 00:49:47 ID:Fq3MfAeN
一応、windowsがあれば、Microsoftが無償公開しているソフトでアセンブルできる状態にしたんで、
やる気があれば、誰でも*.asmのソースの編集して、アセンブルできるようにしておきますた。

ただ、8.00対応の為、6.11以前のmasmは使えなくなったんで、ヨロシク。
PC98時代に主流だった?、masm5.00とか。
nasmとか、そういうのは知りません。使ったこともナッシング。

masm 6.00以降の日本語の文献とかって、絶版だったり入手しにくいから
参考asmソースという使い方は、・・・ソースがきったないので出来ません。
スパゲティーです。
ほかの、もっとコーディングが綺麗な人のソースを見ましょう!
288SOUND TEST :774:2009/01/10(土) 06:17:16 ID:ZpePBjKJ
スパゲティーとか大学の講義依頼久々に聞いたw
289SOUND TEST :774:2009/01/10(土) 14:00:45 ID:MuXHoy02
ふと思ったんだがakaoとかの独自ドライバや標準ドライバなんかで作成された
sound dataはmidiで言うrcpやsngみたいなもので再生はゲームプログラム内に
その音楽を走らせる為の独自シーケンサがあると考えていいんだよね?
290SOUND TEST :774:2009/01/10(土) 14:19:06 ID:Fq3MfAeN
SMF(*.mid)も、一つの曲データフォーマットで、
akaoも、一つの曲データフォーマットにすぎない。
SMF(*.mid)は、AMEIとMMAが合議の元決めた国際的なフォーマットなだけ。

SMF(*.mid)も、akao等の独自フォーマットも、演奏の為のデバイスドライバは必要。
ただ、SEQ?ってのは、SONYがゲームメーカーに提供しているライブラリに、そのデバイスドライバが入ってるんだと思う。
AKAOとかHOSAは、当然SQUARE内でデバイスドライバを開発したとおもう。
AKAOに関しては、その開発者が赤尾さんって方だから、AKAOってヘッダーが付いてるっぽい。
ただ、音色ファイルにもAKAOってヘッダーがついてて、曲なのか、音色なのかは、データの中身を見てみないと解らないんだよな…
291SOUND TEST :774:2009/01/10(土) 14:42:52 ID:Fq3MfAeN
このスレで需要があるかどうかは解らないけど、
PC98時代のFalcom物。
mucomに関しては、vectorに腐るほどツールがあるので、データフォーマットだけ。
----------------------
タイトル :NEC PC98版 Falcom SOFT 資料
ファイル名:mucom_format.txt
URL  :http://www1.axfc.net/uploader/He/so/180671.txt
PASS :mucom
備考   :SORCERIAN 〜 Brandish 3 に該当
     :但し、後期ソフトはスライド辞書で圧縮されています。
----------------------

一応、逆MMLもできるけど、PC98用のFM音源用のMML。
しかも、近似値でやってるだけだから、正確な変換じゃない。
MIDI音源パートや、BEEP音源パートも、一応、逆MMLできる。
けど、MML2MIDや、Sakuraとは全然文法が違うので、書き直し要です。
無限ループ命令は、無視しています(無限ループ未対応)。
MMLを目で見て、手動で楽譜で手直しってのは、出来ると思う。
----------------------
タイトル :NEC PC98版 Falcom SOFT 逆MMLコンパイラ
ファイル名:fmd98mml.lzh
URL  :http://www1.axfc.net/uploader/He/so/180674.lzh
PASS :fmd98
備考   :英雄伝説4, Brandish VT に該当
     :但し、Brandish VTはスライド辞書で圧縮されているので解凍要です。
----------------------
292SOUND TEST :774:2009/01/10(土) 17:55:22 ID:G6Mf+7sN
乙。
いただいた。いつもスマソ。
293SOUND TEST :774:2009/01/11(日) 17:31:47 ID:fJm+FuiR
ちょっと気が付いたんだが、サガフロの音色定義の作成が大詰めなんだけど、吐き出された
mmlやmidiの中身を確認しながらの作業で始めから音色指定が無いパートがあるんだけど、
やっぱり手作業なんだよね。パーカッションなんかはトランスポーズで直せばバッチリ。
でも音源にない音色が多々あるから原曲には近くなるけどモノによっちゃまるっきり曲にならないデータ
もあるね。独自でサウンドフォントを作れば解消する話なんだろうけど…
機能上、仕方ない部分はあるけどakao2mmlはakao2midを超えた神ツールと断言してもいいと思う。
一使用者の立場から見て・・・・。
294SOUND TEST :774:2009/01/11(日) 19:19:46 ID:YZU00mPq
なんだか斧の調子悪いみたいだな・・・
楽しみにしてたがakao2mmlは取り逃してしまいそうだ。
295SOUND TEST :774:2009/01/11(日) 22:34:39 ID:S2Vzp5+p
>>293
俺も akao2mml のデバッグしてて思った。
サガフロは、音色指定のコマンドが3つあって、
そのうちの2つは define.mml で編集可能なんだけど、
もう1つ、 0xFC コマンド( >>284 で対応)があって、これも音色命令っぽい。
ただ、こっちは曲データ毎に番号の互換性がないみたいなんで、
0xFC命令で指定された音色は、曲データ毎に編集が必要になると思う。
296SOUND TEST :774:2009/01/11(日) 22:47:59 ID:S2Vzp5+p
書き忘れた。

>>293
お疲れ様です。楽しみにしてます。

俺も、デュープリズム、頑張ってプレイする。
スーパーマリオみたいなゲームをやるところまで行った!
思わず、Bダッシュとかしたくなってきた。

まぁ、昨日はオーボエレッスン他、今日はFF11のLSイベント &市民楽団の練習
明日は実家に行かないといけないんで、この連休は出来てないんだけど・・・。
297SOUND TEST :774:2009/01/12(月) 21:22:10 ID:m5yP/7GQ
火掻き棒はSDKが持たないと真の力を発揮できない
298SOUND TEST :774:2009/01/12(月) 21:58:18 ID:BNGHxkhd
はぁ?
意味わからん
299SOUND TEST :774:2009/01/12(月) 23:21:25 ID:hngbGH3A
>>283
ツール頂きました。
素晴らしいです。

サガフロのpsflibからff7mmlで変換しているんだが、曲順がサッパリ・・・
300SOUND TEST :774:2009/01/13(火) 06:43:29 ID:RMbGkr+B
データ・タグみれば?
301SOUND TEST :774:2009/01/14(水) 19:55:06 ID:0Zn6NDUZ
HESをMIDIやMMLのような形に変換するものってある?
302SOUND TEST :774:2009/01/14(水) 21:25:34 ID:EVUsULIV
ハッキリ言って、そんなモノない! 自分で作れば?
303SOUND TEST :774:2009/01/15(木) 05:03:20 ID:LbYAw0/2
ろむイメージを通信規格か音楽記述書式に変換か
難しいな
304SOUND TEST :774:2009/01/16(金) 18:29:35 ID:DnvbEqbr
色々と頑張った甲斐あって変換MIDIが70タイトル超えたwww
305SOUND TEST :774:2009/01/17(土) 12:06:55 ID:XnBhVjE4
過疎ってるな
306SOUND TEST :774:2009/01/17(土) 20:00:10 ID:u4hVgRWj
じゃ、閑話休題?で、オーボエじゃなくて、「遠吠え」へたれ演奏。
遠吠えじゃなかったら、「おおぼけ」

http://www1.axfc.net/uploader/He/so/183500
pass: saga

いつも、耳コピするときは、こんなかんじで吹いて、5線にしてる。
で、逆mmlコンパイラを、その書いた5線譜を元に解析して作る感じ。
307SOUND TEST :774:2009/01/18(日) 16:13:49 ID:Sjh8x7nC
っていうか、オーボエってかなりムズいしセンスが無いと吹けないよな。
俺は昔、サックス吹きだったけどシンセに変えたのよ。
308SOUND TEST :774:2009/01/18(日) 17:21:43 ID:XZD53Lzb
俺は、シンセの方が先だったよ。で、生楽器もやってみたくて、オーボエ始めた口。
楽団の人たちからは、「おまえ、いきなりオーボエとか、思い切ったことやるよな」とか言われてるゼ
他の人らは、中・高校時代から、吹奏楽やってるような人たちだから、やっぱみんな巧いわ。
俺も、巧くならないと。
309SOUND TEST :774:2009/01/18(日) 19:42:11 ID:Sjh8x7nC
そーいえば…楽器始めたのはファミコンのドラクエ3の曲に触発されてからだなぁ…
懐かしい!! 本格的に始めたのはFF4に影響された時かな…
310SOUND TEST :774:2009/01/18(日) 23:47:58 ID:XZD53Lzb
小中学生の時に、リコーダーでドラクエや、FFの曲をリコーダーで奏でるのは仕様だったよな。
アルトリコーダーでレクイエム演奏してみたり、リコーダーで祠とか、フィールド吹いてみたり。
・・・ゴメン。同学年内でそんなことやってたの俺だけだったわ。
国語授業で原爆の朗読をするときに、班で持ち回りで朗読するんだけど、
自分の場所以外でアルトリコーダーでDQ3のレクイエム吹いたりしてた。
超 ゴメンナサイ。


311SOUND TEST :774:2009/01/19(月) 13:40:51 ID:mTwrRwVr
あの頃はゲームミュージックって言葉もなければジャンルすら確立されてなかったもんなぁ。
人前で演奏する事自体恥かしい時代だった。
312SOUND TEST :774:2009/01/19(月) 22:17:18 ID:1MgncOcm
>>311
DQ3の頃って88年じゃん。ゲームミュージックブーム真っ盛りの時期だろ。
グラIIやA-JAXなど複数のレコード会社から出てたし、
アケ基板のサウンドプロテクトが普及してきたのもこの頃だし、
当のDQ3だって何故か鴻上尚史のボーカル盤なんてのが出てたりした。

人前でゲーム音楽を演奏するのが恥ずかしいのは個人的な問題で時代は関係ない。
小学生の頃は足踏みオルガンでグラ、ツイ、スペハリとか弾いてたよ。

最近はソレ系の芸人までいるらしいな。良いとも悪いとも評価し難いが・・・
313SOUND TEST :774:2009/01/19(月) 23:09:09 ID:Adb1Zjl7
Vの交響組曲が売れまくってたころを知らない世代かぁ
314SOUND TEST :774:2009/01/20(火) 00:29:49 ID:S+rjutI/
当時は売れまくっているかどうかを知る術もなかった気がする
315SOUND TEST :774:2009/01/20(火) 00:55:25 ID:VM/Llv39
売れてるとか売れてないとかいう見方はしてなかったけど
ゲームミュージックの品揃えが悪い店でも置いてあるとか
わけのわからんボーカル盤が出てるとか
N響を使ってるとか
そういう要素にはメジャーというかバブリーというか、そんな雰囲気を感じたよ。
316SOUND TEST :774:2009/01/20(火) 01:00:16 ID:BhdHHw05
人前で演奏とか、恥ずかしいとか思う暇ないぜ。
指間違えないかとか、音程正しいかとか、リズムあってるかとか、
そっちの方に意識がいって、演奏中は恥ずかしいとか思ってる暇無い。

今でも、そろそろドラクエ9の発売日だからって、
楽団の4月の演奏会に向けて、ドラクエの譜面さらってるしな!
普通に、カラオケボックスとかでも練習して、隣の人が覗きに来るけど、
そんなんで恥ずかしいとか思ってたら、楽器なんて出来ないぜ
317SOUND TEST :774:2009/01/20(火) 07:53:51 ID:oxNfTeod
その楽団でCD出してくれよw
318SOUND TEST :774:2009/01/20(火) 11:44:48 ID:VwaF6Cvu
PS2のYs3のディスクからsqファイルをブッコ抜いて変換してみたけどモノの見事に失敗した。
あれも騙しヘッダーの特殊ドライバみたい。天外魔境2 はストリームっぽい。
319SOUND TEST :774:2009/01/21(水) 21:04:10 ID:TVvJ6B5i
何だか寒いレスでスレが止ってらぁ〜〜
320SOUND TEST :774:2009/01/21(水) 23:39:47 ID:mDZXuyqM
>>317
まぁ、やるのは、昔出版されてもう絶版の楽譜だけどな。
コピー譜が出回りすぎて、絶版になったとか。。。
すぎやま工房で、同じ楽譜をレンタルはしてるみたいだけど、
弱小楽団にはレンタルなんてデキナイデス。

で、akao2midのデバッグとかしてるんだけど、ベイグラントストーリの
 music004.dat
 music016.dat
これ、やっぱ変換あきらめかも。
無限ループ解析のアルゴリズムを書き直してみたんだけど、やっぱ上2曲で暴走する。
バイナリエディタで眺めてたんだけど、条件ジャンプと、ジャンプ(普通は無限ループにつかうコマンド)が入り組んでてスパゲティーなシーケンスになってる。

MUSIC058.DAT〜MUSIC065.DAT位のところでも、mml2midでコンパイルできないけど、
曲を聴いたことが無いから、どこを直せば良いのか解らない状態。とりあえず放置。
/*FF*//*FF*//*FF*/って連続してるところが怪しいんだけど・・・。
これ何やってるんだろう。
321SOUND TEST :774:2009/01/21(水) 23:43:19 ID:mDZXuyqM
ごめん akao2mml
322SOUND TEST :774:2009/01/22(木) 00:19:38 ID:3PRYG/P1
N64対応のVGMTransを探しているけど見つからない。
良かったらで構わないのでうpして下さる方がいると助かります。
323SOUND TEST :774:2009/01/22(木) 07:52:20 ID:pfVH7oTG
わりい。未公開Ver.の公開は作者殿に止められているので
うpは出来ない。海外のサイトで、それ系のフォーラムで会員になるとVGMTrans full Ver.
と言う名で未公開Ver.が落せる。自力GETをお祈りしています。
324SOUND TEST :774:2009/01/22(木) 21:58:30 ID:H7a8priW
自ロワ

主人公@-@ ロワ会場で筋トレ中、もう一人の筋肉から技を盗もうとしてる
主人公@‐A 拡声器使って強マーダーが目の前、機械女が近くに
主人公@‐B 魔王のホレたヤツと一緒にバイクから幼女を救出、比較的平和。
主人公@-C ブロマイドを託し魔王に特攻して死亡 でも託した相手が主人公G
主人公A 即効で強マーダーにぶつかる、死亡 望みを託した相手はなんとかなりそう
主人公B 自分は勇者なのかどうか悩んでる。
主人公C いいように利用されそう、ステルスと行動。
主人公D 呪いから開放、今後どうなることやら
主人公E マーダーを一人間接的に撃墜、若干空気
主人公F 主人公Bと分離、@-@と合流しそう
主人公G とあることから自我を失いかけている、危険。

主人公かどうかは最近出たクロスオーバー新作で決めたり
複数いたりすっから困る
325SOUND TEST :774:2009/01/22(木) 21:59:02 ID:H7a8priW
誤爆申し訳ない
326SOUND TEST :774:2009/01/22(木) 23:00:32 ID:3lnRepkV
+-----------------------------------------------------------------------------
| タイトル | Super Famicon版 SQUARE SOFT 逆MMLコンパイラ
|ファイル名| AKAO2MML.LZH
| カテゴリ | MS-DOS用プログラム(※16bitアプリケーションです)
| 動作機種 | NEC社V30シリーズ、intel社i80186若しくは、その上位互換のCPU
|前提ソフト| MS-DOS version 3.30d以降 (但し、64bit versionのOSは不可)
| 圧縮方式 | lh5
|転載の可否| 不可
|URL  |http://www1.axfc.net/uploader/He/so/185662.lzh
|PASS |akao
+-----------------------------------------------------------------------------

version 1.00 2009. 1.22
とりあえず作った。
FINAL FANTASY 5 に対応
327SOUND TEST :774:2009/01/22(木) 23:05:42 ID:3lnRepkV
基本的には、ff8mml&ff7mmlのソースから引用して作っているんで、ちゃんと動くと思う。
実は、無限ループの戻り先を解析するルーチンにちょっと手間取ったけど…。
相対アドレスと思いこんでいたら、SPCって絶対アドレスで書かれているのな。orz

ff5は、spcデータもってるから作れるんだけど、
ff4, ff6は、spcデータもってないのよ。カセットも実家だし、
ROMイメージを作る機械も、知人にあげちゃったので。orz

ff5のspcは、PC98のハードディスクにはいってたんで、
それを持ってきてデバッグした。
10年くらい前にSPCに抜き出した奴なんで、いまのspcと同じなのかどうか…
328SOUND TEST :774:2009/01/22(木) 23:23:39 ID:3lnRepkV
ビックブリッジの死闘も、音色振ってみた。
-----
$0c $0z k127 v127 y100,2 y101,0 y6,64 @16 _+12 ;Organ
$1c $0z k127 v100 y100,2 y101,0 y6,64 @56 _0 ;Trumpet
$2c $0z k127 v100 y100,2 y101,0 y6,64 @34 _-36 ;Bass
$3c $0z k127 v100 y100,2 y101,0 y6,64 @29 _-12 ;Guiter
$4c $0z k127 v100 y100,2 y101,0 y6,64 @117 _-12 ;Tom
$5c $1z k127 v64 y100,2 y101,0 y6,64 J38 ;S.Drum
$6c $1z k127 v64 y100,2 y101,0 y6,64 J36 ;B.Drum
$7c $1z k127 v64 y100,2 y101,0 y6,64 J49 ;Cymbal
$0d $1z k127 v64 y100,2 y101,0 y6,64 J46 ;H.H.Open
$1d $1z k127 v64 y100,2 y101,0 y6,64 J42 ;H.H.Close
329SOUND TEST :774:2009/01/22(木) 23:24:14 ID:BbTFsqJy
>>320

ベイグラのpsfで確認出来るのでは、と思ったけど
内部のファイル名と本当の曲名との対応が聴いてみないことには判らんよな

イベントの進行に応じて次のループ部分へ進むみたいな
スクリプトからの動的な制御をあちこちでやってると思われる>ベイグラ
330SOUND TEST :774:2009/01/22(木) 23:30:58 ID:3lnRepkV
ff5mml リリースした後にミスに気付いた。
音色定義の出力。
音量を V100 って出力してるけど、mml2mid の音量命令は小文字の v だった。
>>328 のビックブリッジのように、Vを小文字に書き換えて。次のversionで直す。
シーケンスの中は、E (エクスプレッション)でやってるんで、音色定義の所だけ。


>>329
そういえば、CD-ROM内のファイル名がわかっても、それが何の曲か解らないか…。
331SOUND TEST :774:2009/01/22(木) 23:35:01 ID:3PRYG/P1
>>323
ありがとうございます。了解しました。
その後自分で何とかのファイル某フォーラムで探した
032307は未公開版ではなかったようだ。

さらに自力で何とかしてみることにしますよ。
332SOUND TEST :774:2009/01/23(金) 00:02:46 ID:TU30RCKA
エンドタイトルも、音色振ってみた。
これは、曲中で条件ジャンプ命令(いわゆる音楽の「2カッコ」)つかってるんだけど、
「1かっこ」と「2かっこ」の間に、実際には使われてない楽譜データが入ってて、
それで、スネアドラムだけ、最後の方で、ソロプレイしちゃってる。

ちょっと、対応方法考えるわ。


$0c $0z k127 v100 y100,2 y101,0 y6,64 @48 _0 ;Strings
$1c $0z k127 v100 y100,2 y101,0 y6,64 @56 _0 ;Trumpet
$2c $0z k127 v100 y100,2 y101,0 y6,64 @73 _+12 ;Flute
$3c $0z k127 v100 y100,2 y101,0 y6,64 @60 _0 ;Horn
$4c $1z k127 v64 y100,2 y101,0 y6,64 J49 ;Cymbal
$5c $1z k127 v100 y100,2 y101,0 y6,64 J40 ;S.Drum
$6c $0z k127 v100 y100,2 y101,0 y6,64 @46 _+12 ;Harp
$7c $0z k127 v100 y100,2 y101,0 y6,64 @47 _-12 ;Timpani

とりあえずは、検索で2回目にひっかかるこれを、コメントアウトして。
  ↓
[E75a4E50a12a12a12E75a4E50a12a12a12E75a4E50a12a12a12a12a12a12E75a4]8
333SOUND TEST :774:2009/01/23(金) 11:59:22 ID:pkBoPnOP
>>326
いつも乙です。早速、使わせていただきました。いや〜〜、すごいですね〜。
かなり感動してマス。はい。
FF4・5・6と同一エンジンかと思いきや違っていますた。
334SOUND TEST :774:2009/01/23(金) 14:48:12 ID:5Zd6MBg2
うぉっ!!
またもや神ツールの投下ありがとう!! ってか、この怒濤の勢いスゴ過ぎる〜。
ホントにいつも乙です。サガフロの音色定義、ずっと出張続きなので停滞気味です。
申し訳ナイ・・・
335SOUND TEST :774:2009/01/23(金) 17:24:33 ID:pkBoPnOP
>>333
いや、同一エンジンだと思いますよ? 楽譜データも一致しますし。相違点はシーケンス開始の
オフセット値と若干のメタイベント関連でしょうか。そこをクリアすればFF4 5 6、 ロマサガ1
2 3 の変換は可能だと思われます。spc data を穴が開く程見つめれば解かる筈です。
とりあえず検証のためにspc落とせるサイトのリンクはりますね。
ttp://snesmusic.org/v2/
336SOUND TEST :774:2009/01/24(土) 01:12:55 ID:awVdbW1v
ff4とff6は、そのうち着手します。
以前貼られたURL見てみると、若干、フォーマットが違うようなので、
別の実行ファイルになると思います。
(バイナリーが違うだけで、処理は、ほぼ同じっぽい。)

ソースファイル中で "ifdef" 〜 "endif" の条件コンパイル疑似命令つかって、
同じソースファイルで作れるようにはしておいてあるつもりなので、
先ずは ff5mml.com をある程度形にしちゃえば行けると思う。

で、自分で ff5mml.com で遊んでいたんだけど、音量バランスが悪いことに気付いた。
昔、ppz8 でつくったときは、対数テーブル入れていてバランス取っていたんだけど、
spc700 の音量を、 midi音源の音量に変換するのも、対数テーブルが必要かもしれない。
そのへんは、テーブル入れてみて、実験してみるつもりです。

あと、テンポ早くない?
いま、テンポ命令の値に、 1.1 をかけ算しているんだけど、
かける値 1.0 でいいのかな? (つまり、そのまま。)
337SOUND TEST :774:2009/01/24(土) 01:19:05 ID:awVdbW1v
ちょっと、音量バランスとか、その他おかしいところあったら、ソースいじくるつもりなんで、
ff5mml.com の音色割り振りしようと思ってる人がいたら、ちょっと、待って。
こればっかりは、色々な曲で検証しないと、完成度が上がらないので、
ちょっと、時間かかるかもです。
あと、LFO(ビブラート・トレモロ)も、現状は無視してます。
338SOUND TEST :774:2009/01/24(土) 01:24:54 ID:awVdbW1v
ってことで、気付いたことがあったら教えて欲しいので、宜しくデス。

→ ff5mml.com
339SOUND TEST :774:2009/01/24(土) 01:57:37 ID:6K8LkUvm
ff4〜6のシーケンス解析結果は既にありますよ。
ttp://www9.atwiki.jp/ffbin/

知っていたらゴメス。
340SOUND TEST :774:2009/01/24(土) 02:15:25 ID:awVdbW1v
上の方に、そのURL貼られてた。それも参考にした。
FF5に関しては、昔PC98の86音源でSPCをならそうとかやってたから、自分も解析してる。

でも、サイト上の情報には、引数についての細かいことが書いてないのよ。
例えば、音量の1は、何dB(デシベル)に相当するのかとか、何V(ボルト)なのかとか。
MIDIに関しては、

・Expression や、 Volume は、
Gain[dB] = 40 × log( Volume ÷ 127 ) [dB]

・パンポットは、
Gain(Left) [dB] = 20 × log( cos( π ÷ 2 × max( 0, Panpot − 1 ) ÷ 126 ) )
Gain(Right) [dB] = 20 × log( sin( π ÷ 2 × max( 0, Panpot − 1 ) ÷ 126 ) )

ってのが、標準って事になってるから、これに合うようにどう変換するか?


あと、ピッチとか、制御系がどうなっているのかって事まで把握しないと、
正確な変換ってできないのよ。
341SOUND TEST :774:2009/01/24(土) 13:22:58 ID:qprJ0IQL
やっぱりプロはスゲェよ。俺達、素人の出る幕はないな。
342SOUND TEST :774:2009/01/25(日) 02:59:19 ID:rApkao0A
ff5.mml
http://www1.axfc.net/uploader/He/so/186623.lzh

version 1.01 2009. 1.25
・音量を、対数テーブルによる演算をするようにした。
・各LFO(音程・音量・パンポット)に対応
・相対テンポに対応
・チャンネル終了を検知するアルゴリズムを修正
343SOUND TEST :774:2009/01/25(日) 03:04:44 ID:rApkao0A
これで、色々バランス整った。
それなりのMIDI音源で、ちゃんと音色ふれば、それっぽく聞こえるようになった。

自分で確認したのは、ファイル『FF5_SC88Pro_設定集.txt』に書いてある曲だけ。
ってことで、GS音源とか、XG音源とかもってるひと、音色ふって!
GSは、まぁ、自分も気が向いたら割り当てるけど。

多分、SPC700のメモリの限界なのか、
ff5は曲毎に音色番号に割り当てられる楽器が違うので、
ff5mml.com も、曲毎に割り当て必要になってます。

プログラムし出すと、集中しちゃうんだよな。
もうこんな時間。寝るじょ。
344SOUND TEST :774:2009/01/25(日) 12:00:22 ID:tPXq+hw1
PASSを・・・
345SOUND TEST :774:2009/01/25(日) 12:08:42 ID:2MVzrxv5
20レスぐらい読めば?
346SOUND TEST :774:2009/01/25(日) 12:35:20 ID:rApkao0A
誰か、ビオックブリッジの死闘のトランペットパート、吹いてみない?
ドラムもむちゅかちいな。
ハイハット。テンポ180の16分音譜でタッタタタッタタ・・・
ラベルのボレロのスネアドラムよりきびちいんじゃね?
347SOUND TEST :774:2009/01/25(日) 16:00:16 ID:Kgg1Vt8d
SPC2MIDIで出力したMIDIファイルって音符の位置が小節からズレてるんだよね、
そこでMIDIファイルのズレを修正するツール作ってみた。
http://zex0.web.fc2.com/tool/SmfExTime.zip
F-ZEROのBIG BLUEだと0.9倍でズレを修正できた。
348SOUND TEST :774:2009/01/25(日) 18:10:21 ID:O0AAff0L
ビックブリッジの曲ってリアルトランペットだと
高音域が足らなくないかな…
生楽器は詳しくないけどw
349SOUND TEST :774:2009/01/26(月) 01:03:20 ID:WJQcG0sg
FF5MML.COM 用の音色定義した。途中まで。
Roland SC88Proで、なるべく原曲に近づけてみた。

pass : ff5
url : http://www1.axfc.net/uploader/He/so/187033.lzh

多分、MS-GSでも聴けるけど(試してはいない)、
ハードMIDIだったら、SC88Pro or SC8820 or SC8850 必須。
350SOUND TEST :774:2009/01/26(月) 21:28:27 ID:VspJjkbt
>>347
なかなか補正値の割出しには骨が折れるな。って言うか、クロック(同期)が取れてないせいか
どうしてもノート位置がずれるけど、あるていど形になるから大したもんだぜっ!!
マジ、乙カレーっす!!
351SOUND TEST :774:2009/01/26(月) 21:59:11 ID:565ckay3
>>347
これnsf2midのものにも使えそうだね。
乙です。
352SOUND TEST :774:2009/01/27(火) 09:29:37 ID:DvypiMo0
>>347
いつもシーケンサーで手動で倍率調整してたから
これはなかなか便利だね
乙乙
353SOUND TEST :774:2009/01/27(火) 12:02:44 ID:ksD6mSEP
>>348
XIIのアレンジでも途中でオクターブ下がってたな
354SOUND TEST :774:2009/01/28(水) 15:32:44 ID:IrBhsJQm
ff5mmlのinit.mmlの編集ってどうやるの? だれか見本くれない?
355SOUND TEST :774:2009/01/28(水) 23:25:00 ID:c93C3t/H
init.mml は、SC88Pro用の初期化と、パーカッションon/offのマクロが書いてあるだけだよ。
XG音源な人とかの為に、初期化設定や、パーカッションon/offの定義を別にしてあるだけ。
パーカッションのon/offって、音源(GM2, GS, XG)でやり方が全然違うし。
XG音源は持ってるには持ってるんだけど、聞き専用だから、使い方知らないんだ。
SC8850 & Fantom-XR & リアルオーボエ使いだし。

音色番号の割り振りは、各曲mmlファイルの一番下に出力されてるマクロを編集する。
いま、ff6mml デバッグ中。近いうちに公開できると思う。

でゅーぷりずむは、ペンディング中。ごめん。
いま、ゲームそのものをプレイ中
356SOUND TEST :774:2009/01/29(木) 01:38:46 ID:b8xTtH3n
http://www1.axfc.net/uploader/He/so/188256.lzh
pass は、この前といっしょ。

■改訂履歴
version 1.02 2009. 1.29
一応、FF6に対応したけど、まだ逆コンパイルできない曲有り。原因不明。解析中。
・ディチューンコマンド→ピッチベンドへの変換式の係数を調整した。
 (音程が外れていれる曲があった。)

一応、ff6mml.com をリリースしました。
ただ、実際に逆コンパイル→mml2midでコンパイル後の、
音楽として正しいかは、あまり確認していません。

養成乱舞だけは、これが一番、やってることがややこしい曲だろうので確認しました。
一番、この曲が手間どるだろうなとおもいきや、こっちはすぐできちゃって、
別の問題の方が手間取りました。
未だに、エンディングは正常に逆コンパイル出来ないみたいで、原因究明中。

本当に、曲として正しいか、確かめていないので、
確かめてもらって、報告してもらえると、凄い、ありがたいです。

自分も、作業できるのが、会社帰宅後〜寝る間なので、
とりあえず、今日出来た分として、アップします。
357SOUND TEST :774:2009/01/29(木) 01:41:26 ID:b8xTtH3n
養成じゃねぇぇぇぇえ。
「妖精乱舞」だっけ? ラスボスの3段階のぼるあれ。

あれも、フラグによる曲のループ抜けやってるっぽいので、
FF9のラスボス対応時に作ったソースを使い回して対応しました。
こういうめんどいのは直ぐ出来たのに、エンディングがわけ解らんyp。

今日はもう寝ます。
358SOUND TEST :774:2009/01/29(木) 02:05:28 ID:b8xTtH3n
寝る前に、音量バランスだけ気になったんで、バトル2だっけ?
にSC88Proで音色割り当ててみた。
とりあえず、音量バランスとかは問題なさそう。

$0c $0z k127 v116 y100,2 y101,0 y6,64 H1,3 @48 _0 ;Strings
$1c $0z k127 v127 y100,2 y101,0 y6,64 H1,3 @17 _0 ;Organ
$2c $0z k127 v127 y100,2 y101,0 y6,64 H0,3 @34 _-36 ;Bass
$3c $1z k127 v127 y100,2 y101,0 y6,64 J36 ;B.Drum
$4c $1z k127 v127 y100,2 y101,0 y6,64 J38 ;S.Drum
$5c $0z k127 v116 y100,2 y101,0 y0,64 H1,3 @30 _-24 ;Dist.Guiter
$6c $1z k127 v127 y100,2 y101,0 y6,64 J49 ;Cymbal
$7c $1z k127 v127 y100,2 y101,0 y6,64 J42 ;H.H.Close
$0d $1z k127 v127 y100,2 y101,0 y6,64 J46 ;H.H.Open
359SOUND TEST :774:2009/01/29(木) 12:48:43 ID:8lCeQdzg
>>355
いつも乙です。
360SOUND TEST :774:2009/01/30(金) 00:30:17 ID:I+I4T0dM
http://www1.axfc.net/uploader/He/so/188617.lzh
 ↑
SPC版 akao2mml
version 1.03 2009. 1.30
・無限ループ命令を使ったジャンプのアドレス計算が正常に出来ていなかったバグを修正。
・リピート命令をシミュレートするモードを追加した。 … /d1 オプション
 MML2MIDの『 [ : ] 』命令で実現できないようなリピートを使っている曲は、
 このオプションを追加することにより、逆コンパイラ内部で、リピートを行います。
 FINAL FANTASY 6のエンディング(後半)は、このオプション要です。
・無限ループの解析ルーチンで、リピート命令もシミュレートするようにした。


やっと、ff6の全曲、逆mmlできた。
ただ、エンディングは、従来のアルゴリズムじゃ出来ないから、

ff6mml /d1 ファイル名.spc >ファイル名.mml

ってかんじで、 /d1 ってオプション付けて。
オプションの意味は、index.html 読んで。
361SOUND TEST :774:2009/01/30(金) 21:25:19 ID:W9bP8/g2
GJ!!
なんというネ申!!
362SOUND TEST :774:2009/01/31(土) 13:33:23 ID:Ks2McYm1
最近思う事だがakao2midにしろspc2midにしろ直接ゲームの音楽データを
midi変換するよりも一度mmlにしてからmidiに変換した方が再現率高いな。
確かに変換時における手間は多少なりともかかるがバッチファイル書いて
一括処理してしまえばいい事だし。
akao2mmlの人はマジ、スゲェよ。感謝、感謝デス。
363SOUND TEST :774:2009/01/31(土) 15:25:22 ID:emMynboZ
自分で耳コピして音色つけたほうが再現高くね?
364SOUND TEST :774:2009/01/31(土) 15:50:34 ID:zf+gbCab
>>363
音感もってれば、耳コピして自分で時間かけて打ち込む方が、再現度は高くなるよ。
akao2mml作る時も、作るには、最初何曲か耳コピしておいてから作ったし。
PSやSPCと、MIDIじゃ、パラメーターの仕様が違うから、
その変換式とかちゃんと音を聞いて、調整しないと行けないし。

それでも、やっぱり、耳コピして打ち込んだ方が再現度は高いね。
あくまでも、参考用のデータだとおもう。コンバーターで得たデータは。
365SOUND TEST :774:2009/01/31(土) 17:35:53 ID:cmopXlVb
確かにそうかも知れないな。だが、俺の思う所は耳コピは音感持つ人の技であって
原曲に近いMIDIを作れるかも知れないけど音感無い人はやっぱり変換データが必要で
そのデータに手を加えて曲に表情を付けていくのが精一杯。
なので変換ツールを作成された人は自分にとって神な訳です。
あと、自分の偏見かも判りませんが、耳コピはやはり原曲再現と言うよりもアレンジって
いう感覚に陥ってしまいます。ゴメンなさいね。
366SOUND TEST :774:2009/01/31(土) 19:17:52 ID:zf+gbCab
でも、音色ファイルもぶっこ抜いて、サンプラーとかでならすと、
まじで、そのまんまの曲になるよ。
むかし、PC98上で、FPDやPPZ8でならしてたけど、そっちの方は本当に再現度高い。

音色のフォーマットは解らない。
昔、SPC内の音色をFPVファイル(FPDの音色ファイル)で吐くコンバーター作ってた人いたけど、
今もどっかで公開されているのかな?
367SOUND TEST :774:2009/01/31(土) 21:29:45 ID:HrLgbbse
私の場合音感といっても殆ど相対音感だからなあ…
基本耳コピだけど、取り切れない所は変換ものに頼ってるかな。

>>365
>原曲再現と言うよりもアレンジ
そうかもしれない。原曲再現目指してるつもりでも、ついつい手癖で
やってしまう箇所が結構あるw
とはいえアレンジと言うのもおこがましいので原曲「重視」って事でひとつw
368SOUND TEST :774:2009/01/31(土) 21:40:08 ID:cmopXlVb
正確無比な耳コピなら歓迎なんだけど、それはなかなか難しいと思います。人間臭さって
面では十分過ぎる位に味があると思いますけど、それでは此処のスレの意味が無くなると
思うんですよね。あくまでも耳コピを押される方は耳コピのスレを立てていただければ
賛同される方が集まって大いに盛上がると思いますよ。耳コピについては否定はしません。
内蔵音源の解析への第一歩みたいなものですからね。
369SOUND TEST :774:2009/01/31(土) 22:15:22 ID:H15js+z4
>>368
そのとーり!!
370SOUND TEST :774:2009/02/01(日) 09:19:59 ID:zvBMkv6p
ってことで、次のネタお願いします。
371SOUND TEST :774:2009/02/01(日) 09:28:21 ID:NW4C2Ddu
>>366
SPCの音色フォーマットはbrrといってだね……
これをぶっこぬいてwav変換できるツールがどこかにあったはずだよ。
372SOUND TEST :774:2009/02/01(日) 10:47:36 ID:vQHOrK89
wavだと、波形のループポイント失われない?
サンプラー用の音色データーにループポイントを保持したまま変換しないと、
たぶん、そのままの音楽にならないよ。
自分は、pc98エミュレータの中に、spc2fpv.exe っての
草の根BBS時代にどっかからかダウンロードしたけど・・・
とおもって、spc2fpv でぐぐったら、出てきた。
373SOUND TEST :774:2009/02/01(日) 12:31:09 ID:QWO6fZAi
OpenSPCでspcをmod形式に変換できる。
mod形式から音色データだけ取り出せばサウンドフォントとかにも変換可能。
374SOUND TEST :774:2009/02/01(日) 17:36:31 ID:zvBMkv6p
話は変るがコナミ系ってSPCが謎だよな。特にマダラ2が特異なフォーマットだし。
375SOUND TEST :774:2009/02/02(月) 02:13:15 ID:59ZxKv53
まぁ、ネタは貰うもんではなく、自分で作るもんじゃ!
俺、そろそろ定演だから、まじめに練習しないとヤバイyp。

akao2mml ソース書き直したし、そんな難しくない構造だと思うから、
気力があれば、ソースみて、サガフロ用とかのも作れるはず。
自分的には、あと、サガフロ3とFF4は時間できたら着手予定だけど、
スーファミの■製ゲームはFFシリーズしかやった事無いから、サガフロ3は微調整は出来ない。

それに、音色割り当てるってネタもあるじょ。
ツールはアップしてるけど、音色割り当てとかその辺は、結構、助けて欲しかったり。

デュープリズムは、しばらく待って欲しい。
あれは、今まで解析したフォーマットの中で一番複雑怪奇な構造してるんで、けっこう時間掛かると思う。
いつも、設計者がどういうことを考えているのかを思い浮かべて、
こうしたいんだろうな〜っての予測するんだけど、デュープリズムは、全然想像できないヨ


376SOUND TEST :774:2009/02/02(月) 04:32:46 ID:sXc76U4o
>>373
それで出て来た音ってピッチが残念な感じになるんだけど俺だけかな?
377SOUND TEST :774:2009/02/02(月) 07:01:44 ID:kz/WUSjX
サガフロ3?
378SOUND TEST :774:2009/02/02(月) 09:41:32 ID:hgYfak4/
なーに人の揚げ足取ってんだよ。暗黙の了解でいいじゃないか。
379SOUND TEST :774:2009/02/02(月) 11:23:56 ID:yQYn2e8q
揚げ足とかじゃなくて、普通に疑問に思っただけじゃないのか
380SOUND TEST :774:2009/02/02(月) 11:35:26 ID:hgYfak4/
って言うか、主が何を言いたいか今までの流れを見て少し考えれば判るだろww
381SOUND TEST :774:2009/02/02(月) 22:56:30 ID:59ZxKv53
ごめん。
えっと・・・
ロマサガか!!
382SOUND TEST :774:2009/02/03(火) 17:21:26 ID:DgdzDzN0
VPとSO2を解析したけど、共通フォーマットとしか
分からなかった私が通りますよ。

アレって誰か解析できた?
383SOUND TEST :774:2009/02/03(火) 18:06:08 ID:D0JkmuOL
昔やってた人がいたけど、愛想尽かして去っていったよ
テスターとして個人的にプログラムもらった人もいたようだが、どうなったやらね


ま、1年かそこら前の話だし、もう戻ってくることもないだろう
384SOUND TEST :774:2009/02/03(火) 18:22:41 ID:D7IkNtux
あれってVGMTransの未公開Ver.みたいに海外のサイトに不法に流されてた。
しかもRARにパスかかってて外人からパス買うシステムになってたぞ?
385SOUND TEST :774:2009/02/03(火) 19:16:40 ID:/V2FeKuV
DL数制限掛ける馬鹿は逝ってよし。
って、それは別人だっけ?
386SOUND TEST :774:2009/02/03(火) 19:37:28 ID:D7IkNtux
うp時のコメントとか色々な面での仕草?からして別人だったと思う。
馬鹿1人の為に職人を失ったのは、かなり痛い。
387SOUND TEST :774:2009/02/03(火) 19:40:58 ID:D7IkNtux
連投スマヌ。
確かに過去の職人はモノホンだったよな! ベイグラとか変換が完璧だったからな。
388SOUND TEST :774:2009/02/03(火) 22:33:04 ID:TK0NzTGF
個人的には、akao2mmlも、
解析協力してくれたり、akao2mmlのネタ(補助ツールとか、音色定義とか)を投下してくれる人が、
DLして貰いたかったりするんだじょ。(でも、変換後mml,midをうぷるのは禁止な。)
ROM,DOMは、イヤン。

まぁ俺が出来るところまでは、時間見つけてこつこつ、ツール作っていくつもり。


spc版akao2mmlに入れた、ループ解析のテクニック
(リピート命令をakao2mml側で展開しちゃうの)を導入すれば、
ベイグラどうにかなるかなぁ〜・・・。akao2mmlで暴走しちゃう曲。
暴走しないで、ちゃんとmidiにコンパイルできてる曲って、どう?
389SOUND TEST :774:2009/02/03(火) 22:44:32 ID:uasPdBaJ
ROMやDOMが嫌ならサイト立ててお礼カキコ強制とかやればいいよ。
昔のROMサイトみたいにさw

2chでROMやDOMやめろってそりゃ無理ってもんだw
390SOUND TEST :774:2009/02/03(火) 23:40:09 ID:CXpoUYcO
>>388
そんな何曲も試した訳じゃないが、短めの曲は一見大丈夫そうだったりする

昔のakao2midだとカタコンベのデータが滅茶苦茶なんだよな
ここで改良されてる版では試したことなかったな
391SOUND TEST :774:2009/02/04(水) 14:07:23 ID:qIuq20Qo
協力したいのは山々だがなかなか…
音楽の知識もここじゃあまり役に立たないしなぁ。
88proでも持ってりゃ音色定義くらいはできるのかもしれないが、
定義の適用の仕方すらまだおぼつかない素人だったりするw
392SOUND TEST :774:2009/02/04(水) 18:02:44 ID:AOlszSvk
音色定義の仕方は俺も最初はチンプンカンプンだったがakao2mmlの人が投下
してくれたツールの中に入れてくれてる見本音色定義のファイルを穴が開く
迄ながめたら把握出来たぜ? 頑張って理解してakao2mmlの人を助けて応援
しようじゃないか。何事も貰いっぱなしは良くないでアリマス。
>375に書いてあったロマサガ3とFF4はかなり楽しみにしてたりするので
あまり大きな事は言えないけど自分もそれなりに時間が取れたらFF4・5・6
ロマサガ3の音色定義は作るつもりです!!!
393SOUND TEST :774:2009/02/04(水) 18:09:07 ID:NoOp0H12
もっと分かりやすく説明すれば、協力者が増えるに違いない。
それ以上にクレクレも増えるだろうけど。
394SOUND TEST :774:2009/02/04(水) 19:38:50 ID:PImKARVj
ここのスレは設立当初からギブアンドテイクだろww
395SOUND TEST :774:2009/02/04(水) 22:20:57 ID:cUdvVwnP
>>392
じゃ、ロマサガ3、これからコーディングして(.asmソース書いて)みる。
あれ、FF6とあんまかわんないみたいだし、たぶん、すぐ作れると思う。
想定外の事してなければ

396SOUND TEST :774:2009/02/04(水) 23:07:28 ID:cUdvVwnP
ロマサガ3 すぐ作れたには作れたんだけど、パーカッションくせ者だな。

ロマサガ3のリズムトラックって、
C, Cis, D, Dis ・・・ H(B) の12音にパーカッションが割り当てられて、
オクターブは関係ないってフォーマットだよね?
ユーザーがパーカスを編集できるMIDI楽器じゃないと鳴らすの難しいかも。
SC88Proってユーザードラムないから、GSだとSC8850必須とかになりそう。
XG音源は、ユーザードラムあるんだっけ?

曲によって、パーカッションチャンネルにしたり、
メロディーチャンネルに戻したりしてるから、
オクターブ情報保持しておかないと、メロディーチャンネルに戻った時にオクターブずれそ。
ざっと、確認したところ、曲データ側でオクターブ指定し直しているっぽいけど。
397SOUND TEST :774:2009/02/04(水) 23:14:55 ID:cUdvVwnP
ロマサガのパーカス。こんなかんじっぽい。

C : べードラ1
Cis: シンバル1
D : スネア
Dis: シンバル2
Fis: H.H.Close
Ais: H.H.Open
B : べードラ2

とりあえず、あと何曲か確かめて、
ちゃんと曲として成り立ってるようだったらうぷる。
398SOUND TEST :774:2009/02/04(水) 23:53:31 ID:cUdvVwnP
http://www1.axfc.net/uploader/He/so/191158

version 1.04 2009. 2. 4
Romancing Saga 3 に対応

ロマサガ3は、PS版のAKAOの様にリズムチャンネルがあります。
が、MIDIのようなのじゃなくて、上の書き込みの通り、
オクターブ関係なく、ド(C)〜シ(B)の12音にリズムが割り当てられる様です。

これを、MIDI音源で再現するには、
ユーザーパッチとかしようして、ユーザーがパーカッションを作る必要あり。

例えば、Roland SC8850だったら、次のようなエクスクルーシブを、
曲のはじめに127音階分送るとか。
送るべきエクスクルーシブ・メッセージは、各MIDI音源のマニュアルを参照。

0A EX x41,x10,x42,x12,{x21,x1C,48,41},xf7
0A EX x41,x10,x42,x12,{x21,x1C,49,43},xf7
0A EX x41,x10,x42,x12,{x21,x1C,50,45},xf7
0A EX x41,x10,x42,x12,{x21,x1C,51,47},xf7
0A EX x41,x10,x42,x12,{x21,x1C,52,48},xf7
0A EX x41,x10,x42,x12,{x21,x1C,53,50},xf7
0A EX x41,x10,x42,x12,{x21,x1C,55,44},xf7
0A EX x41,x10,x42,x12,{x21,x1C,56,42},xf7
0A EX x41,x10,x42,x12,{x21,x1C,57,46},xf7

で、mml2midのコマンド・文法については、mml2midの取説参照して。
399SOUND TEST :774:2009/02/05(木) 01:17:35 ID:/FmAHHHF
ロマサガ3,C〜Bのリズムをmml側で定義できる仕組みを考えた。
音符を出力する前に、マクロを挟んでみようと思う。
で、マクロ側で J命令とかで、パーカスのノート番号指定できるように。

SC8850必須とか敷居が高くなるし、また、時間出来たら対応してみる。
このままだと、パーカスチャンネルの音色編集がとてつもなくめんどくさい状況なんで。
400SOUND TEST :774:2009/02/05(木) 01:40:28 ID:Dq3Vp59O
88Proでも8850でも同じやり方でユーザードラム使ってたよ
401SOUND TEST :774:2009/02/05(木) 08:06:36 ID:GzaDLqrQ
>>398
おぉっ!! ありがとうございます! ローランド音源は持ってないけど色々試して
頑張って作ります!!
402SOUND TEST :774:2009/02/05(木) 22:25:27 ID:/FmAHHHF
http://www1.axfc.net/uploader/He/so/191488.lzh

version 1.05 2009. 2. 5
◆ろまさが3
・パーカッションon時、音符に応じて前にマクロ($0x〜$5y)を挿入するようにした。
 このマクロ中に、音色番号、ノート番号を定義する事で、パーカッションが容易に定義できます。
・これに応じて、mmlファイル中にパーカッション定義のマクロを出力するようにした。
◆FF5
・テンポの係数を変更した。(変更前:11/10→変更後:60000/55296)
 ※感(勘)で設定した係数から、SPC700のテンポ制御の仕様から算出した係数へ。
  つまり、 『 BPM = 60[sec]÷{48[ticks]×(256÷指定値)×0.0045[sec]} 』



パーカッションに関しては、ド(C)から順に、

C    ベードラ1
Cis   シンバル1
D    スネア1
Dis   シンバル2
E    スネア2
F   ?
Fis   クローズ ハイハット1
G    クローズ ハイハット2
Gis   ?
A   ?
Ais   オープン ハイハット
B   ベードラ2

って曲が多いっぽいんで、
rs3mml.com は、デフォルトでこの設定を出すようにしておいた。
デフォルトの出力を買えて欲しければ、提案? よろしく。

403SOUND TEST :774:2009/02/05(木) 22:36:53 ID:/FmAHHHF
そおいえば、FF5MML のテンポの係数って、
昔、ドレミ出版社のピアノ楽譜みて、それで決めたような気がする。
とおもって楽譜みてみようと思ったんだけど、FF5のピアノ楽譜が無いよ…。
FF1〜3,4,6はあるのに。

FF6と、サガフロのSPCデータは、
そのままBPMで記録されているっぽいから、特に計算しないで出力してます。
404SOUND TEST :774:2009/02/05(木) 23:03:52 ID:/FmAHHHF
いま、リズム、ほとんど音量127にしてるけど、
メロディーと音量バランスとれるように、100位にして置いた方が良いのかな?
まぁ、俺、ロマサガ3は、弟がやっていたのを横で聞いてただけだから、あまり調整できない。

言ってくれれば、直せるところはソース変えるんで、言ってもらえると嬉しいかも。
405SOUND TEST :774:2009/02/06(金) 10:53:48 ID:SzqQrXzW
RYTHEMも個別で編集出来るなんてスゴイです!
GMの音色リストも手に入れて気合いとヤル気120%で頑張ります!!
FF4は今からどんな仕様になるのか楽しみでゾクゾクしてます。
406SOUND TEST :774:2009/02/06(金) 11:18:00 ID:5x0nj9nL
>405と同感です。我々の想像を上回る事をやってくれる>402さんは天才と言うに
ふさわしい。痒い処に手が届くと言うか上膳据膳と言うか何と言って良いか判らない
けど至れり尽せりで本当に感謝してます。拙者はFF4のツールが出来たらFF4の音色
定義担当みたいな感じで頑張らせてもらいますよ。
407SOUND TEST :774:2009/02/06(金) 11:43:20 ID:gpATNoau
じゃあ、サガフロは俺に任せろ!
※ ロマサガではありません。
408SOUND TEST :774:2009/02/06(金) 18:49:19 ID:mLay9FoB
>>396
SC-88Proにユーザードラムセットありますよ。
409SOUND TEST :774:2009/02/06(金) 21:22:12 ID:SzqQrXzW
ちょっと気が付いた事。ロマサガとかのspcをspc700プレーヤーに読込ませ各チャンネル…つまり音色を確定したい
チャンネルだけ除いてマスクをかけ呼出されるwaveのナンバーをみる。そのナンバーを10進数
に置換えればakao2mmlにより吐き出されたデフォルト?音色番号と一致する。
チャンネルマスクをかけてない聞いた音色にGMの音色を書き替えれば少ない労力
にて音色定義が作れる。って算段。
410SOUND TEST :774:2009/02/06(金) 22:17:58 ID:VWvcnxEo
FFシリーズや、ロマサガシリーズって、
曲毎に、音色番号に割り当てられる楽器違わない?

0〜31番は、効果音でもつかうから、固定みたいだけど、
32番以降は、曲毎に違ってる感じ。
0〜31番は、ノコギリ波とか、正弦波とか、そういった感じの音色が多い。
3番はサイン波。これは、FF5、FF6、ロマサガ共に3一緒だった。

ロマサガ3は、SNESのROMイメージの特定の番地に、曲毎に、
SPCの音色番号と、ROM内の音色番号の対応テーブルがあるみたい。

SPC700で鳴らすときに、指定された音色番号の音色だけを、
SPC700に転送して、鳴らすって感じだと思う。
32番以降は、16種類の音色だけ定義かのうみたい。
なんで、音色番号は

0〜31 ・・・ どの曲でも同じ音色
32〜47 ・・・ 曲毎に違う。
411SOUND TEST :774:2009/02/06(金) 22:23:18 ID:VWvcnxEo
あ、プレイヤーで音色番号表示されるから、
チャンネルマスクすれば、すぐ音色が解るって事か。
俺、アーカイブの中にいれた、音色定義集、全部、記憶と勘でやってた。
SPC再生とかしてない。(マテ

最近のSPCプレイヤーは、そういうパラメータ、ちゃんと見れるんだ。
俺、winampしか使ったこと無かった・・・。
412SOUND TEST :774:2009/02/07(土) 02:43:03 ID:I4ZAmj5T
>>406
うい、作った。
本当は、昨日(金曜日)のうちにうっぷしようと思ったんだけど、
LFO(ビブラート)の仕様が、FF5,6,ロマサガ3と違っててバランス取りに手間取った。

http://www1.axfc.net/uploader/He/so/192051.lzh

version 1.06 2009. 2. 7
FINAL FANTASY 4 に対応

定義部の変更だけじゃ対応できなくて、本体側のソース(a2m_def.asm, a2m_uc.asm)も変えたので、
FF5,6、ロマサガ3に影響が出たかもしれない。どこか変になってたら教えて欲しい。
まぁ・・・毎 Version up で、いじってると言えばいじってるんだけど、
FF5,FF6,ロマサガ1曲ずつしか、比較チェックしてないので、
もしかしたらどっかに影響でているかも。

LFO関係のルーチンを、それなりにいじったので。
まぁ、ver 1.05 でも、ロマサガ3のリズム定義出すために、色々いじったと言えばいじったんだけど。


>>405
たいした仕様にできなくてごめん


>>いろいろ
ごめん。ロマサガか。
サガフロとロマサガが、頭の中でごっちゃになってるわ。
413SOUND TEST :774:2009/02/07(土) 06:45:35 ID:mjC11DPA
サガフロはPS。ロマサガはSFC。
414SOUND TEST :774:2009/02/07(土) 08:23:25 ID:dlszXYXp
音色定義作成時あれば楽。っていうspcプレーヤーを紹介しておきます。
皆さんご存知と思いますが、spcplay2132 です。
☆チャンネルマスクが出来る。
☆呼出されるwaveの音色番号が出る。
◎詳しい操作方法は各自DLして中のdocを見て下さいね♪
415SOUND TEST :774:2009/02/07(土) 13:26:07 ID:I4ZAmj5T
じゃぁ、コンパイル後のSMF(*.mid)は、
T-MIDIとかのパラメータが見れるMIDIプレイヤーで再生すると良いよ。


Microsoft GS Wavetableで音色定義しようとしてる人は、その資料。
   ↓
ttp://www.kaisentonya.or.tv/test_sound2/midi/mgs.htm

msdn(microsoft developers network)にはたいした情報なくて、
こっちの個人ページのほうが詳しい。
サクラベースの命令でかいてあるから、そのへんは無視して欲しい。
416SOUND TEST :774:2009/02/07(土) 20:40:36 ID:ki9g4oW1
>>415
そこ若干間違ってるよね。

× (対応してる)
 ・オールサウンドオフ (非対応)
 ・オールリセットコントローラ (非対応)
 ・ファインチューン (非対応)
 ・コースチューン (非対応)
 ・RPN Null (非対応)

× ピッチベンドで変化する最大値を設定(0〜12(半音))
○ ピッチベンドで変化する最大値を設定(0〜48(半音))
417SOUND TEST :774:2009/02/07(土) 22:23:29 ID:acaYGVow
ロマサガ1はバイナリ見た感じでは固定音色っぽい。とか言いつつ多分内部では色々と
やってそうだが。少い制約の中での曲構成だから当然と言っちゃぁ当然だわな。
ビブラートデプスとピッチベントが同じ扱いというのが、他タイトルと同じで少々
笑ってしまう場面もあったりする。そうそう、音色バンク?にもゲーム毎に入替えや
登録出来る領域があったのは実際、驚きだった。
418SOUND TEST :774:2009/02/08(日) 17:21:11 ID:H/rTfRPg
SPC700は、音程に関しては音色波形データをどのピッチで鳴らすか?ってだけなの。

  音程[倍] = 音源LSIに書かれた値 ÷ 0x1000

なんで、音程と、ピッチベンドと、ビブラートは、ハードウェア的には同じパラメータ。
これらをやりたかったら、ソフトウェアで実装しないといけないんで、
昔のコシューマーゲーム機とか、PCゲームのBGMは、
BGMの質は、サウンドプログラマーの腕にもかかっていたんですよ。

SPC700は、音量の時間的な変化(ピアノやシンバルの減衰等)はハードウェア側で対応しているけど、
昔のパソコンのPSGとか、ワンダースワンとかはそういう機能すらないから、
サウンドプログラマーが、ソフトウェアで実装しないと行けなかったんです。

419SOUND TEST :774:2009/02/08(日) 17:49:32 ID:UFbal6Mv
PSGのハードエンベロープは0-15の幅でしか使えないからあまり有り難いものじゃなかった。
FM音源はADSRついてるけど、後期にはそれだけでなくTLをリアルタイムで動かしてるのもあったね。
420SOUND TEST :774:2009/02/08(日) 18:28:05 ID:DlmbuGx8
>>418
って事は限られたパラメーターの組合せって言うか使い方によってはそれらしくなるんだな。
例えばエクスプレッションの上下連続でトレモロみたいな?
421SOUND TEST :774:2009/02/08(日) 18:49:24 ID:OgHvzi5R
プレイヤーによってビブラートだけ無効にしたりできるのは、ソフト側での制御ってことかな?
なんかLFO用の波形を出力できるとかいう噂もあったがw、やっぱ単に音程変化扱いだよな。
422SOUND TEST :774:2009/02/08(日) 20:27:22 ID:DlmbuGx8
これまでの流れを見るとそういう事になるな。
423SOUND TEST :774:2009/02/08(日) 23:05:55 ID:H/rTfRPg
>>419
Falcomの英雄伝説4とBrandish VTとか、そうだったね。
ハードウェアのADSRエンベロープ(FM音源の)使いながら、
SSG音源と共通のADSRエンベロープのサブルーチン使って、
FM音源(TL)も、MIDI音源(エクスプレッション)も、ソフトウェアでもエンベロープ実装してた。
なんで、PMDとかFMP移植しようと思うと、けっこう大変。

>>420
音量のLFOを深くかければ、トレモノになるね!
でも、サックス以外の管楽器のビブラートは普通、音量なんだけどな・・・。

>>421
SPC700は、もしかしたらハードウェアLFOあるかも。
でも、SQUAREのサウンドプログラマーの赤尾氏は、
音程・音量・パンポットの3系統のLFOをソフトウェアで実装しる。

プレイヤーにLFOのon/offスイッチがあるとしたら、
多分、ハードウェアのon/offじゃないかな?
ソフトウェアLFOの場合、SPCファイル中のプログラムに干渉しないと行けないから、
タイトル毎に違うプログラムのLFOをon/offするってのは、限りなく不可能に近いと思う。
424SOUND TEST :774:2009/02/08(日) 23:16:07 ID:H/rTfRPg
SPC700のLFO調べてみた。
これは・・・確かに、俺がサウンドプログラマーだったら、
使える様にはするけど、別にソフトウェアでLFO実装するわ。

チャンネル1つ使って、それをLFOの波形にして、別のチャンネルの音程を変調するらしい。
ch0で、ch1を変調できて、
ch1で、ch2を変調できて
・・・
ch6で、ch7を変調できる。
ch0は変調できない。

って仕様みたい。
425SOUND TEST :774:2009/02/08(日) 23:17:08 ID:H/rTfRPg
つまり、変調すると、変調用につかったchが使用できなくなるから、最大発音数が減ると。
426SOUND TEST :774:2009/02/09(月) 00:22:23 ID:1wE5l524
それわ直列FMできるってことになるのか!?
427SOUND TEST :774:2009/02/09(月) 01:01:50 ID:bndMdOAq
そう言われれば、変調用に使うチャンネルを高周波で発振させれば、FM音源と同じ原理だな。
低周波で発振させるからビブラートなだけであって・・・。
実は、FM音源みたいなことできるのかもな。
最大で2opのFM音源が4つあるのかも。
まぁ・・・PCMとして使う方が賢明だろうけど・・・


ロマサガ3やる人の為の、参考例 作ってみた。
SC88Pro用だけど。バトル曲っぽい曲だけ、音色割り当ててみた。
 ↓
http://www1.axfc.net/uploader/He/so/193021.txt
PASS : RS3  (小文字だったかもしれない)
428SOUND TEST :774:2009/02/09(月) 06:42:22 ID:2MNnGjin
>>424
なるほど、それはそれでそのままな感じの仕様ですねw

しかし、やはり対応のプレイヤーやプラグイン(SNESAPUベースの?)では、
タイトルやchに関わらず、ビブラート、ベンドは共通でON/OFFできるみたい。

まあ、自分は変換MIDI作る時は、ノート情報以外の膨大なCCやSysExは一括削除してしまうが。
429SOUND TEST :774:2009/02/09(月) 08:11:52 ID:zIYoHdQo
>>428
俺なんか持ってるシーケンサがショボイからCCやSysExは一括削除出来ないわ。
cherryやdominoじゃ仕方ないか・・・・・
そーいえば、spcにはFF7・8・9みたいに拍子情報が無いみたいだね。
430SOUND TEST :774:2009/02/09(月) 11:16:16 ID:pJp0Sa2m
どっちもフィルター付いてるはずだが・・・?
431SOUND TEST :774:2009/02/09(月) 11:56:04 ID:zIYoHdQo
>>430
フィルターって? 今まで手動削除してたから一曲あたりの編集に時間がかかる
432SOUND TEST :774:2009/02/09(月) 12:21:39 ID:zIYoHdQo
スマソ。自己解決
433SOUND TEST :774:2009/02/09(月) 20:37:03 ID:354DvUIK
前のカキコであったけど、ロマサガ3とロマサガ2、1も同じエンジンかい? いくらかRS3mmlで試したけど
変換出来ないんだけど?
434SOUND TEST :774:2009/02/09(月) 23:58:14 ID:bYKu0g6D
>>433
エンジン自体は若干の違いがある。
ただ、それは命令の位置が違ったりとかそんなとこ。
基本部分はサウンドプログラマが同一人物なので一緒。
同じように聖剣伝説やクロノトリガー等もプログラマが一緒なので似ている。
http://ja.wikipedia.org/wiki/%E8%B5%A4%E5%B0%BE%E5%AE%9F

RS3mmlで変換できないってRS3mml -> mml2midiかな?
それなら変換はできない。
RS3mmlの表記はそれ独自のものだったりしてmml2midiと互換性が無いからね。
435SOUND TEST :774:2009/02/10(火) 07:56:26 ID:lx63Du+Z
なるほど! 何か悪い事いったみたいでゴメン!
ロマサガシリーズは全て変換出来るものと誤解していた。
436SOUND TEST :774:2009/02/10(火) 18:19:29 ID:yj3HiJ+R
>>435
あ、ごめん、なんか勘違いしてた
後半の記述については忘れてくれ
437SOUND TEST :774:2009/02/10(火) 18:27:40 ID:lx63Du+Z
自分に能力があればロマサガ1・2の変換ツールが作りたいが無理だしなぁ。最近、mmlの読み方
がやっと理解してきたばかりだし。何年先になる事やら
438SOUND TEST :774:2009/02/10(火) 22:31:36 ID:nOKIjPtF
あっ、私もロマサガ1と2のツールが欲しいなぁ。
お願い出来ないかしら? ファイファンはゲームしたこと無いから分らない
けどロマサガなら超マニアよん
439SOUND TEST :774:2009/02/11(水) 09:33:55 ID:qiuSYhCw
お前ら、いい加減にしろ!!
440SOUND TEST :774:2009/02/11(水) 20:20:38 ID:+py4bu0c
>>407
まかるじょ? サガフロ
ff7mml.com でmml化できるから、define.mmlの編集ヨロ!
まぁ、このスレで編集してくれてる人いるけど。(同じ人だったらごめん)

個人的には、ドラクエの譜面の方が欲しいんだけど、解析すんのがめんどいわ。
DQ4のオケのスコア譜と、DQ1のロトのテーマの吹奏楽譜(スコア譜とパート譜)はもってるんだけど・・・。
441SOUND TEST :774:2009/02/11(水) 21:11:38 ID:+py4bu0c
俺が、akao2mml つくった理由。
   ↓
http://www1.axfc.net/uploader/He/so/194207.mp3
pass : ff5

下手だけど。
オーボエパートだけmml消して、そこだけ生演奏。
マイク買ってみたんで、記念に。
442SOUND TEST :774:2009/02/11(水) 21:13:54 ID:+py4bu0c
ちと、マイク置くため、楽譜みないで吹いたんで、指かなり間違えてるけど、勘弁。

443SOUND TEST :774:2009/02/12(木) 08:09:05 ID:trdB33CE
>>441
心意気が伝わってきますね〜

曲として見るとするなら、オーボエ小さくしてリバーブ掛けて、
伴奏は大きくしてパンも調整して、ベースはドライにしたいところだにゃ。
444SOUND TEST :774:2009/02/14(土) 13:18:49 ID:QUhIuRqw
さすがに貰うもん貰った後は過疎るもんだなぁ 大笑いだ
445SOUND TEST :774:2009/02/14(土) 13:25:53 ID:Q8h4Saj2
使い方教えてクレクレ〜
446SOUND TEST :774:2009/02/14(土) 15:42:53 ID:2NDmy2lX
>>443
一発取りなんだ。
スピーカーでバックだして、オーボエで演奏して、一回取り。
やっぱ、別々に録音して、ACIDとかでミキシングするべきかな?
てか、指間違えまくってるからはずかちい。
ちゃんと練習してから、録るんだった。

>>444
まぁ、そんなもんじゃない?
俺も、定期演奏会がもうあと2週間ちょいだから、ツールに手を加えてる時間あんまないし。
(リード削りに飽きてきた人。天気良いからリード削り日より!!)
FF11のLSイベントはサボったぜ!(マテ

定期演奏会と、慰問演奏会おわったら、デュープリズム再開!
447SOUND TEST :774:2009/02/14(土) 16:03:19 ID:Q8RkjoP2
>>444
と言いつつしっかり貰うもんだけ貰ってんだろ?w
448SOUND TEST :774:2009/02/15(日) 10:01:19 ID:nx4peF+c
話の流れを変えて恐縮だが、rs3mmlの音色定義でカサバやコンガ等のパーカス
定義って皆どうやってる?ベードラやスネアは素直に変換通るが特殊なヤツはmml2midを
通らないんだが……
449SOUND TEST :774:2009/02/17(火) 14:00:54 ID:7AMvk+BG
おまいら、どれくらい音色定義進んだ?
450SOUND TEST :774:2009/02/17(火) 19:26:03 ID:+O14JSzC
進むも何も使い方が分からないからサッパリでさぁ
451SOUND TEST :774:2009/02/18(水) 11:03:04 ID:Vg+p8+TT
使い方がサッパリ…って、うp主さんが親切に見本まで投下してくれてるのに…。
おないら馬鹿?
452SOUND TEST :774:2009/02/18(水) 22:07:40 ID:oGGWHecT
>>448
編集が間違えてるんじゃないか?
J命令の数値を変えるだけじゃ?
453SOUND TEST :774:2009/02/20(金) 13:11:20 ID:ABws/+N3
>>452
ヒントサンクス!!
打開でけた!
454SOUND TEST :774:2009/02/21(土) 23:35:03 ID:6BSruDcU
デュープリズム ミント編クリアしたぜ!
ルゥ編くりあしたら、また改めて、リフレッシュした頭で曲バイナリー眺めてみるかなぁ。
多分、作曲環境がMMLじゃないから、無理にMMLにしようとすると駄目なのかなぁ。
AKAOは、ちょーMMLチックなフォーマットだから、MMLにする方がやりやすいんだけど。
455SOUND TEST :774:2009/02/23(月) 10:15:31 ID:Oup+bTTD
ここのスレの住人はマナーの悪いヤツや約束守らないヤツばかりだから
デュープリの解析やツール作って配布するのは止めた方がいいぜ?
仮に、うpするも約束の音色定義とやらが全て出揃ってからにしたらどうだい?
君ばかりのうpもアホらしかろうに。
聞き専からの助言です。
456SOUND TEST :774:2009/02/23(月) 10:58:34 ID:/gtE/LPp
まあ、それを音色定義でも叩きつけながら言えればカコイかったし、
君がこのスレにいる意味も見えたよな。

でも確かに、主さんに愛想尽かされれば俺らは何も言えないな。

個人的には協力っていうとどうしても、
変換のプロセスではなくて最終的なMIDIの調整って方向になっちゃうんだよね。
逆に言うとツールとしては既に不満も無いというか…
457SOUND TEST :774:2009/02/23(月) 12:53:44 ID:Ry54URVm
>>454
乙ー

ミント編に比べるとルゥ編はシリアスだw
458SOUND TEST :774:2009/02/23(月) 16:50:46 ID:mEgOAegK
GBAの音源がmidi化出来ないのだが誰か助けてくれるようないい人いる?
459SOUND TEST :774:2009/02/23(月) 17:17:07 ID:qNHi1T+Y
>>458
Sappyというツールを使ってみるといいとおもう
460SOUND TEST :774:2009/02/23(月) 17:23:25 ID:mEgOAegK
>>459
sappyやってみたんだけど無理だった
パワポケ6をやりたいんだけどコナミ製だから搭載してるサウンドエンジン任天堂の純正じゃないんだろうなぁ
461SOUND TEST :774:2009/02/24(火) 11:16:48 ID:5a7ZNVFh
それじゃ、GBA2MIDでやってみては?
462SOUND TEST :774:2009/02/25(水) 09:57:55 ID:EBOPAjRQ
誰かKONAMIやハドソン(spc)のフォーマットや資料があるサイト知らない?
変換ツール作りたいんだが……
463SOUND TEST :774:2009/02/27(金) 14:25:11 ID:83Htwb4e
スーパーファミコン的リバーブを、SC88Proで作り込んでみた。
AKAO2MML用の、init.mmlの、GS-Resetのエクスクルーシブが書いてある下に、
この行追加すれば、スーファミっぽいリバーブになる。

A EX x41,x10,x42,x12,{x40,x01,x30,x06},xf7 ;Reverb Macro
A EX x41,x10,x42,x12,{x40,x01,x31,x06},xf7 ;Reverb Character
A EX x41,x10,x42,x12,{x40,x01,x32,x00},xf7 ;Reverb Pre LPF
A EX x41,x10,x42,x12,{x40,x01,x33,x08},xf7 ;Reverb Level
A EX x41,x10,x42,x12,{x40,x01,x34,x20},xf7 ;Reverb Time
A EX x41,x10,x42,x12,{x40,x01,x35,x40},xf7 ;Reverb Delay Feedback
A EX x41,x10,x42,x12,{x40,x01,x37,x7F},xf7 ;Reverb Delay Time

あたりまえだけど、XG音源や、MS-GSじゃ意味無いからな。
464SOUND TEST :774:2009/02/27(金) 15:21:09 ID:1gQkyBBB
スーファミはリバーブじゃなくて確かエコーだよな
465SOUND TEST :774:2009/02/27(金) 15:37:34 ID:EH4EKpz/
エコーというか、ショートディレイだな
466SOUND TEST :774:2009/02/27(金) 16:53:58 ID:hure3LLG
こんなようなパラメータよく打ってたよw
リバーブマクロをショートディレイにして変な音響作ってたwwww
467SOUND TEST :774:2009/02/28(土) 09:37:47 ID:6fCDhq0D
先日、ロマサガ3・FF4の音色定義を編集してみたのだが自分が持ってるXG音源対応で
GMやXGに無い音色を使用している楽曲が幾つかあり完全では無い為、色々悩んでる。
いいアイデアはないものか?
468SOUND TEST :774:2009/02/28(土) 13:28:14 ID:PiW2W8RR
それは、もう似た音色を探して、代用するしかないと思う。

Romancing wikiってサイトに書いてあった音色を参考に、
SC88Proだとこんな感じって表は作ってみた。

01 管楽器 H2,3 @73 _+12 ;Flute
02 ホルン系 H1,3 @60 _0 ;Horn
03 弦楽器 H1,3 @41 _+12 ;Violin
04 Harp H0,3 @46 _+12 ;Harp
05 ボイス系 H0,3 @52 _+12 ;Voice
06 Finger Bass H4,3 @35 _-24 ;Fretless Bass
07 Slap Bass H0,3 @36 _-36 ;Slap Bass
12 Trumpet H0,3 @56 _0 ;Trumpet
16 ギター系 H0,3 @24 _-12 ;Nylon
17 弦楽器 H1,3 @42 _0 ;Cello
19 ブラス系
1A ホルン系
1B MusicBox
1C Celesta
1D エレキギター系
22 Whistle
28 Synth Strings H1,3 @50 _+12 ;Synth Strings
29 Strings H1,3 @48 _+12 ;Bright Strings
2A エレキギター系
2B Clavi H1,3 @104 _-12 ;Sitar
2C ギター系 H0,3 @24 _0
2D ギター系
2E Xylophone
30 弦楽器
31 ボイス系
33 ボイス系
35 Pick Bass H3,3 @34 _-36 ;Pick Base
38 Acoustic Bass
39 Santur
3B ボイス系
3C 管楽器 H8,3 @68 _+12 ;Oboe
3E Ocarina
4B Organ?

H0,3 @22 _0 ;Harmonica
H0,3 @23 _0 ;Bandoneon
H0,3 @70 _-12 ;Faggote
469SOUND TEST :774:2009/02/28(土) 13:28:52 ID:PiW2W8RR
08 Bass Drum J36
09 Tom H1,3 @117 _-24 ;Tom tom
0A Cymbal J49
0B Hi-hat Open J42
0C Hi-hat Closed J46
0D Snare Drum J38
0E Snare Drum J40
0F Cymbal J51
10 Timpani H0,3 @47 _-12
11 Conga J63
13 Maracas J70
14 コンガのようなタム H11,3 @118 _0 ;Conga Tom
15 Brush?
18 銅鑼
1E Vibraslap H1,3 @11 _+12 ;vib
1F Agogo J68
20 Snare Soft @48 J38
21 Bell?
23 Bass Drum Soft @48 J36
24 Hi-hat Closed J42
25 Hi-hat Pedal J46
26 Electric Bass @16 J36
27 Electric Snare @16 J38
2F 金属的な音
32 金属的な音
34 効果音
36 効果音
37 効果音
3A 効果音
3D 効果音
3F 効果音
51 Jingle Bell

@57 J75 ;Spark
J60 ;Bongo
J61 ;Bongo
470SOUND TEST :774:2009/03/02(月) 11:27:25 ID:vm6k+8Nn
どなたかbgm2midを持っていませんか?
かなり困っているので分けて欲しいです。
471SOUND TEST :774:2009/03/03(火) 10:12:40 ID:7myG6leU
ほしけりゃ分けるけど条件付きだぜ?
472SOUND TEST :774:2009/03/03(火) 15:43:58 ID:7myG6leU
メガうpに、アンタのレスNo.でファイル名作ってうpしとく。その中に条件書いとく
から連絡よこしなよ?
473SOUND TEST :774:2009/03/03(火) 16:12:34 ID:rQ7okCv0
>>472
頂きました。有難うございました。
試用品でPS1・PS2各ドライバ対応・NINTENDO64などの変換ツール
もありました。こちらはシェアということなのでPASSの購入をします。
474SOUND TEST :774:2009/03/03(火) 16:39:14 ID:7myG6leU
受け取ったみたいだから消しとく。さらば
475SOUND TEST :774:2009/03/04(水) 07:38:00 ID:h9ANhoa6
あれ?
俺達にはないの?
476SOUND TEST :774:2009/03/04(水) 08:49:43 ID:IYU35+/g
GBAの良作ってsappyもgba2midiも使えないの多いなぁ
477SOUND TEST :774:2009/03/04(水) 09:42:09 ID:h9ANhoa6
確かにないなぁー。すぐにドライバやフォーマットが見破られてツール出ちゃうから
メーカーもそれに併せて対応してるんだろ。きっと。
478SOUND TEST :774:2009/03/04(水) 17:05:50 ID:brp8MC+b
っていうか、PSF系の変換って飽きてきたよな。音源に無い音色並べた曲なんか
つつこうとする気持ちにさえならん。サウンドフォント作れば怪傑ゾロリなん
だが此処のスレ住人同様、自分もうpやらないクレクレ野郎なものでやりましぇん。
うp主以外、俺も含めて全員こ汚ねぇ乞食だから。
479SOUND TEST :774:2009/03/04(水) 17:58:13 ID:pG/7A6jc
なら無駄に卑下せんと黙って指くわえとけ
それならクレクレにはならん
480SOUND TEST :774:2009/03/04(水) 21:16:21 ID:h9ANhoa6
お前に言われたかねぇよ。
481SOUND TEST :774:2009/03/05(木) 13:14:36 ID:hEokmut1
音色はそれらしいのを作って対応かな。
GS音源あたりでも加工は意外とできるし。
482SOUND TEST :774:2009/03/05(木) 15:48:36 ID:4/+OYj5d
tukinami.comとかVGMTrans見れないんだけど
もう遅いってことなん?
今更知って結構ショック…ミラーとかないかな
483SOUND TEST :774:2009/03/05(木) 15:57:43 ID:4/+OYj5d
あいや、psfとmidiにできると思ってたけど違うのかいな
もう少し調べます…すいません
484SOUND TEST :774:2009/03/05(木) 15:58:31 ID:4/+OYj5d
×psfとmidi
○psfをmidi
うぅ、逝ってきます
485SOUND TEST :774:2009/03/05(木) 16:26:13 ID:SKXY0msj
tp://web.archive.org/web/20071216040710/http://www.tukinami.com/
486SOUND TEST :774:2009/03/05(木) 16:39:05 ID:4/+OYj5d
優しい人…
ありがとう、使い方勉強してくる
487SOUND TEST :774:2009/03/05(木) 17:49:36 ID:4/+OYj5d
あと前スレ735氏にもお礼
sgconvだけは上のアーカイブに無かったから
それにしてもうp祭りに参加したかったです
488SOUND TEST :774:2009/03/06(金) 12:46:57 ID:FV3h062a
>>482
今更VGMTransは古いよ!
489SOUND TEST :774:2009/03/07(土) 20:39:56 ID:k1M+7ZFD
貴様っ!
言ってはならぬ事を……
490SOUND TEST :774:2009/03/08(日) 02:34:26 ID:krZdZuPs
ただMIDIにするより音削ってXMSNES通してSPCにするほうが楽しくなってきた
491SOUND TEST :774:2009/03/08(日) 02:41:46 ID:A0NREetx
音色定義してもらってロマサガ2きいてたが、
ゲームボーイのサガで使われた曲はいってるのか。
これ、ビブラートきかせたオーボエのソロ・プレイも入れて欲しかったなぁ
レクイエムだっけ?
やべぇ、吹きたくなってきた。あとで、五線紙に書くか。
492SOUND TEST :774:2009/03/08(日) 11:28:16 ID:hVGoi5uS
今迄リリースされたakao2mmlでロマサガ2 の変換が可能なんだ?
やってみる。
493SOUND TEST :774:2009/03/08(日) 19:17:17 ID:Z/gD2jaf
FFTをMIDI化したいんだけど上手くいかない
494SOUND TEST :774:2009/03/08(日) 19:59:41 ID:hVGoi5uS
そりゃ、上手くいく訳ないよ。何せ武蔵伝と同じスズキドライバだからな。
諦めなよ。
495SOUND TEST :774:2009/03/09(月) 08:05:52 ID:LcWGpGGv
その話題は出さずに置こうや。何人も解析挫折した難攻不落のドライバだからな。
いくら、うp主さんでも無理。ってモンだ。
496SOUND TEST :774:2009/03/09(月) 09:39:38 ID:9K57qvxm
ってむしろ君だけが遠回しに(ry
497SOUND TEST :774:2009/03/09(月) 12:01:28 ID:N4aKARH4
>>496
そりゃ、お前さんだろ?
遠回しに何期待してんだか
498SOUND TEST :774:2009/03/09(月) 12:11:00 ID:9K57qvxm
釘刺したつもりが、まさか俺の方に言われるとは思わなかった。
すまん、勘ぐってしまった。
499SOUND TEST :774:2009/03/09(月) 12:14:06 ID:9K57qvxm
いや、勘ぐるというか誤解されかねないのではないかと思ったんだ。
まあもういいっすorz
500SOUND TEST :774:2009/03/09(月) 13:38:57 ID:jlT/KZKg
うp主舐めんなカス
501SOUND TEST :774:2009/03/09(月) 21:31:14 ID:1y3jc+x/
って言うか、うp主さんを困らせるレスはスルーしようぜ!
出張終わってたまに来てみりゃ、この有様……
502SOUND TEST :774:2009/03/09(月) 21:48:31 ID:2UndyE1v
さすがうp主さんや!
503SOUND TEST :774:2009/03/09(月) 21:57:27 ID:swkpnCpK
意識しすぎでかえってキモイわ
ヘソ曲げられちゃ困るとかいかにも相手を利用してる自覚がある奴の言葉で感謝とは程遠いわな

だいたい大半はたまに見に来てうpされてたらDLって終わり、そのうちの何人かもお礼レスして終わり
物理的なお礼する奴なんていないしうp主だってそんなの期待してないだろ
ネットなんてそんなもんだし普通にありがとうって言えばそれ以上必要ないんだろ
誰かに普通に感謝するってことに慣れてないの?
504SOUND TEST :774:2009/03/10(火) 00:03:07 ID:/X7zdPn+
そうだそうだ!
505SOUND TEST :774:2009/03/10(火) 01:27:35 ID:kWpJ6qco
うpする側としては適度におだててもらえるといいね。過剰に持ち上げるのも宜しくない。
で、貰う方は気持ちよく貰うと。

そもそも2chにうpする以上DOMとか気にしない。そういうもんだし。
506SOUND TEST :774:2009/03/10(火) 02:44:43 ID:NRm8nJem
「適度に」って一番難しいだろ

世の中カンパ必須と考えてるキチガイも居れば
お礼してくれるだけで感激の極みですって謙虚すぎるのもいる
507SOUND TEST :774:2009/03/10(火) 06:26:49 ID:ZEMTilAY
まぁ、あれだ。その…上手くは言えんが、此処にいちいち書かなかったけど、
うp主さんに対してちゃんとお礼や協力をしてる人間が居る事を判ってほしいぞ?
508SOUND TEST :774:2009/03/10(火) 19:21:53 ID:IfkVDkrT
(・д・;=;・д・)オロオロ

>>494-495
FFTは難攻不落…そっかぁ
深く考えずに書き込んですんません
前スレ735氏の見たら持ってるgba2midiも古いverだったし
自分は化石のようです
でもpsf・psf2からmidiにできて幸せですた
509SOUND TEST :774:2009/03/10(火) 22:30:01 ID:RQfB3o4z
>>508
顔文字うざい
510SOUND TEST :774:2009/03/11(水) 18:22:07 ID:1B5vN6oj
まぁ、別の話題にうつりましょうや。
おまいらの変換したMIDIで一番満足したのはなんぞや?
511SOUND TEST :774:2009/03/11(水) 20:02:25 ID:tbl8aRJg
ツール集めた時点で満足して、変換してません(´・ω・`)
512SOUND TEST :774:2009/03/11(水) 20:06:45 ID:1B5vN6oj
ツール集めだけかいな?勿体ない…
513SOUND TEST :774:2009/03/12(木) 01:05:21 ID:RX+Ru2LH
使い方が分からないのだ。
ドラッグしても変な文字列がだーっと流れるだけでうまくいかん。
514SOUND TEST :774:2009/03/12(木) 01:30:20 ID:6u8cmLDu
やっぱ着メロに変換して携帯で鳴らすときかな
これ言うとだいたい不正着メロサイトやってる焼酎と同類な目で見られるのがキツイとこだな
着うた出てから完全に廃れてしまったが今でも自作着メロが好きなんだよね
ま、厳密には自作とは言わないんだけどな

あとは実際に楽器でひくときだよね
スクウェア物とかはドレミ出版からピアノ楽譜出たりするけど
難易度の問題でかなり萎えるアレンジされてたりするから
原譜が手に入るのがヘタレで完全耳コピできない身としてはうれしい
515SOUND TEST :774:2009/03/12(木) 08:01:59 ID:Jn8eTZSx
>>513
それってakaoの切出し方法が間違っているかPSFをそのまま読込ませているか…
その辺の初歩的ミスだと思うよ?
516SOUND TEST :774:2009/03/12(木) 08:18:42 ID:Tr07TtdV
今更だけど、akaoの切出し方法をうpしときます。
ttp://www1.axfc.net/uploader/File/so/19671

pass cut
517SOUND TEST :774:2009/03/12(木) 08:32:16 ID:5X7ly7lk
>>514
ドレミ楽譜は萎えるアレンジどころか明らかな採譜ミスも多いよ。
FF4とかマジ酷い。

サガフロはアレンジしてた人が弾くポイントに何故かゲームの感想
書いてるくらいw無駄に気合いが入ってたけどw
518SOUND TEST :774:2009/03/12(木) 08:38:00 ID:Tr07TtdV
>>513
間違ってもD&Dでは無理だからね?  ちゃんとakaoの切出しを終えてから
dosのコマンドラインからの立上げじゃないと。バッチファイル書けば
複数処理もおk。
ってか、コマンドラインの叩き方も解からないのなら諦めて初歩から勉強
しておいで。
519SOUND TEST :774:2009/03/12(木) 15:49:32 ID:vxiLijj2
DOSのプログラムでD&D出来るのと出来んのの違いって何なの?
そういう風に作ってあるかどうか?
D&Dでも場所とファイル名は無指定でオプション無しでとりあえず使えるものは、
確かにとっつきやすくはある。
520SOUND TEST :774:2009/03/12(木) 17:04:06 ID:Tr07TtdV
>>519
確かにそう言う疑問はあってもおかしくないわな。
アプリの開発言語やそのアプリを走らせる為の処理ルーチンなどが関係してる
と思う。意図せず作ったアプリが何とD&D出来ちゃった。といった事はよくある話だから。
基本的にWINDOWSアプリじゃないものはDOSから。って思ってた方が良い。
521SOUND TEST :774:2009/03/12(木) 23:47:53 ID:vHVE0K7h
>>516
すげぇ。結構詳しく書いてある!!。
ちなみに、ドラムキットも選択可能。
$8z   @0   /*Instrument of percussion 1z*/
$9z   @48   /*Instrument of percussion 2z*/
この行の@の後ろの数字に、ドラムキットの番号(-1)を入れる。
$8zは、$1zのドラムキットの番号で、$9zは、$2zのドラムキットの番号。
$1z, $2zは、init.mml で、Roland GS規格のドラムキットonのシステムエクスクルーシブメッセージが書いてあるので、
XG音源を使っていたら、XG音源用のに書き換えれば、XG音源でもパーカッションに切り替わるはず。

>>513-519近辺
ごめん、D&Dには対応してない。
もともと、MS-DOSをメインに使ってた頃に作ったソフトなんで、
Windowsの事は同時、全然考えてなかった。


個人的には、DewPrismの曲データを抜き出すソフト誰か作って欲しい。
自力で、CD-ROMもISOファイルにして、バイナリエディタで抜き出そうと考え中。
ヘッダーは、"HOSA"ってのは解ってるんだけど、サイズが解らないんだよな〜。
クリアしたし、ISOファイル眺めてみるかぁ〜。
522SOUND TEST :774:2009/03/12(木) 23:57:12 ID:vHVE0K7h
で、なんかアクションゲーム続けてやりたくなって、政権伝説4開封した。
タイトル画面?で放置しながらマニュアル読んでたんだけど、ビックリした!
BGM。途中から入るオーボエ。オーボエ吹きだからビックリしたのかもしれないが。

すごく生のオーボエっぽい音がするの。シンセっぽい音じゃなく。
中音域の音色は、哀愁漂うまさにオーボエって音色で、
驚いたのが低域の音色。ほとんどのシンセサイザが中音域の音色を使うのに、
ちゃんとオーボエの低域の音出してるの。
うまい熟練したプレイヤーが吹いてる感じで、あれ、打ち込みでやってるんだったら、
サウンドプログラマーも、打ち込んだ人もすげぇーな。

523SOUND TEST :774:2009/03/13(金) 00:06:38 ID:S7Rw1m4k
政権伝説となw

聖剣4が実際ストリームなのか打ち込みなのかは知らんが
最近打ち込みが難しいとされるギターとかでも音源によっては
打ち込むだけでビックリするほど生に近くなったりするからな〜

感動した裏側を後で知って幻滅とか結構あるぜ?w
524SOUND TEST :774:2009/03/13(金) 00:12:09 ID:lFZq/Bdx
D&Dなんて、専用のbatファイルつくればおkだぜ。
525SOUND TEST :774:2009/03/13(金) 00:19:52 ID:a7iWJavr
ごめん。漢字間違えた。
エレキギターとか難しいな。
一回打ち込んだことがあるけど、生っぽくならなくて、かなり試行錯誤した記憶があるよ。
同じように難しいのが、木管1本とか、弦1本のドsoloだと、個人的には思う。
526SOUND TEST :774:2009/03/13(金) 08:04:24 ID:S7Rw1m4k
確かに打ち込んだだけのバイオリンとか聞けたもんじゃねーな
凝り始めるとソロパートなのに厚み出そうと音重ねたりビブラートだのExp使いまくりになる
527SOUND TEST :774:2009/03/13(金) 17:11:52 ID:tSy7yy0v
ロマサガシリーズのバトル曲をリアルなストリングスにやっちゃうと何とも悲しい出来栄え
になってしまう
528SOUND TEST :774:2009/03/14(土) 01:39:35 ID:4b1wdkeR
FFも、サガシリーズも、個人的に、
SC88系なら、Bright Stringsが良い感じ?と思ってみている。
ペットはそのままで良いね。
FFシリーズのフルートとボエは、Expが付く音色が良い感じ?
529SOUND TEST :774:2009/03/14(土) 07:33:16 ID:RfL/9zgX
ペットはモジュレーション&エクスプレッションの多用でイイ感じ。
更にディストレーションかけるとソロでもカッコいい!
530SOUND TEST :774:2009/03/17(火) 08:01:53 ID:PC0MfmKK
デュープの曲サイズって大雑把にバイナリ眺めてみたら必ずしも各曲同じ場所にサイズ格納
って訳じゃないみたい。ヘッダーにある曲もあればそうじゃない曲も。構造体が掴めない。
531SOUND TEST :774:2009/03/18(水) 20:50:45 ID:x/59k9kL
ドラクエとかもmmlとかに変換出来たら嬉しいけど前スレで変換されたmidiが
出ていたから微妙だね。
532SOUND TEST :774:2009/03/19(木) 00:12:01 ID:uYZxgGMp
SPCからならコンバータ出てるでしょ
533SOUND TEST :774:2009/03/19(木) 01:20:13 ID:s/ERygEk
全く需要ないだろうがダメ元で聞いてみる
誰かPSソフトのサウザンドアームズのMIDIちゃんと吸い出せた方はいないだろうか?
(リューナイトの伊藤岳彦キャラデザで浜崎あゆみがOP歌った奴)

Pgconvやseq2midで吸い出すと一応MIDIとして吸い出せて再生もできるんだが
再生しはじめて10秒後あたりからテンポはそのままで音の持続時間が異常に長くなり
数分間フリーズしたようになる箇所が何箇所かあってどう見ても正常ではない
(約1分半の曲が間に発音しっぱなしで止まる区間が何箇所か入ることで10分弱のデータになる)
吸い出せないとか吸い出したMIDIが再生できないならまだわかるが
採譜は合ってるのに音長が異常という実に中途半端な吸出し状況でかなり悔しい

この作品以外でこんな変な症状になるソフト知らないんだが
原因や対策に何か心当たりがあったら当てずっぽうでもいいから是非ご教授願いたい
534SOUND TEST :774:2009/03/19(木) 09:06:48 ID:/BeFwwu4
>>553
変換してみた。
一応、上手く変換出来るようだが・・・こちらのデータを投下しておく。
どの曲がオカシクなるのか詳しく教えて欲しい。
ttp://www1.axfc.net/uploader/File/so/19992
ぱす  ta
535SOUND TEST :774:2009/03/19(木) 18:00:35 ID:/BeFwwu4
上、>>533の間違い。スマソ
536SOUND TEST :774:2009/03/20(金) 00:25:49 ID:0Uqpyw+k
>>534-535
あ、あれ?なんで正常に吸い出せてんだ???
と思ったらファイルネーム見るとminipsfから吸い出したのか

seq2midでディスクから吸い出すと全部の曲が伸びておかしくなるんよね
ってことはseq2midのバグなのかな?
PSF経由の吸出しは面倒で手を付けてなかったんだがちと勉強してみるよ

ありがとう、ずっと悩んでたからマジで助かった
ただその恩を仇で返すような形でホントに申し訳ないしDLした奴が言うのも筋が通らないが
やはり吸い出した現物をうpするのは控えた方がいいと思う
537SOUND TEST :774:2009/03/20(金) 08:50:24 ID:6ZXSHKB+
seq2midは正常でpsfを作る時に何らかの改ざん?を施してる。
538SOUND TEST :774:2009/03/20(金) 13:22:53 ID:EK4BeLkV
知らぬ間にJMさんとこのHP消えてたよ
539SOUND TEST :774:2009/03/20(金) 13:44:37 ID:IwIoM+dw
>>538
やはりつながらない方が他にもいたのか
540SOUND TEST :774:2009/03/20(金) 13:49:12 ID:IwIoM+dw
でもファイルだけは残っているみたいなんだよね
キャッシュからアクセスできるみたい
541SOUND TEST :774:2009/03/20(金) 14:48:08 ID:EK4BeLkV
なるほどね・・・。
542SOUND TEST :774:2009/03/20(金) 21:39:10 ID:Ko3NYFHg
SSSPSXはステートセーブからSEQ取り出せるからいいな
ディスクから吸えないタイプのでもどうにかなったり
xebraも似たようなこと出来るけどどうにも重すぎる
543SOUND TEST :774:2009/03/21(土) 11:59:46 ID:fv3c87im
>>542
どうやってやるんだい?
544SOUND TEST :774:2009/03/21(土) 12:06:28 ID:uE5EoxBw
>>542
こんな簡単な方法あるとは知らなかった
正に目からウロコだ

>>543
ステート(クイック)セーブデータにそのとき流れてるseqが一緒に格納されてる
吸出しはPSソフトのファイルから直接吸い出すのと同じ方法
545SOUND TEST :774:2009/03/21(土) 13:02:45 ID:r1MF5eap
誰かN64の変換ツールアップして下さい
546SOUND TEST :774:2009/03/21(土) 17:57:37 ID:vaCqoUzH
>>544
でも、スタオーやヴァルプロなど特殊なヤツは抜けないですよね?
547SOUND TEST :774:2009/03/21(土) 18:08:54 ID:vaCqoUzH
>>545
472氏に頼んでみては?
548SOUND TEST :774:2009/03/21(土) 19:01:11 ID:r1MF5eap
472氏お願いします、シェアで結構ですので
549SOUND TEST :774:2009/03/22(日) 10:17:05 ID:a9GA5c8z
確かにSO2ザコ戦抜きたいなぁ・・・
後ろのハープシコードがカオス過ぎて聴こえないよ
550SOUND TEST :774:2009/03/22(日) 14:26:44 ID:R/+VgWcC
64はいらねぇ。
他でやっておくれ。
551SOUND TEST :774:2009/03/23(月) 13:01:56 ID:kIp2YBQI
SSSPSXじゃ、スタオー抜けねぇ。標準フォーマットじゃないとダメってのが結果。
552SOUND TEST :774:2009/03/23(月) 13:23:47 ID:GEfzkzka
結局、slzとかakaoとか、まんまの情報がステートデータにのる。って事で
変換の役には立たない。って事だ。
特殊フォーマットがpQESに変換されるものかと勘違いいてた。大笑い!!
553SOUND TEST :774:2009/03/23(月) 14:41:34 ID:rzu52qRH
圧縮ものなら
554SOUND TEST :774:2009/03/23(月) 18:29:05 ID:kIp2YBQI
圧縮モノってワイルドアームズ位じゃん
555SOUND TEST :774:2009/03/23(月) 19:07:15 ID:tNqSVpmQ
N64欲しいけど、本当にあるのか?と思う
音源と3D描画の命令が一緒になっているしSFCほど簡単にはできない気が
556SOUND TEST :774:2009/03/23(月) 19:12:10 ID:YU5QY+Rp
>>552
もしその通りだったら何のための独自ドライバかわからんじゃないか
557SOUND TEST :774:2009/03/23(月) 19:49:22 ID:kIp2YBQI
確かにそうだ。まぁ、完全に解析されるのも時間の問題と見た。
558SOUND TEST :774:2009/03/24(火) 12:36:51 ID:8ED2xzpU
最近、うp主さん来ないね。 去ってしまわれたのか……?
559SOUND TEST :774:2009/03/24(火) 12:51:36 ID:Zovt7Gd+
>>555
一応64のデータ抜くツールだけは、うpしといてあげる。
ttp://www1.axfc.net/uploader/File/so/20246
キーワード:rip
560SOUND TEST :774:2009/03/24(火) 18:07:03 ID:1CEbHEcK
64はusfからmidiだけ抜き出すだけでも難しいんだっけ?
561SOUND TEST :774:2009/03/24(火) 18:31:10 ID:8ED2xzpU
うろ覚えだが、そう難しくなかったように記憶してる。
お粗末だが、なんちゃってツールもあったくらいだから。
562SOUND TEST :774:2009/03/25(水) 08:08:38 ID:fO7hjTJp
なんちゃってツールってアレだよな? たしか、WINANPとかのMIDI吐くプラグイン。
かなりの曲数吐き出させて遊んだ記憶があるな。
今となっちゃググッても絶対に見つからないが…運よく俺は持ってるがなwww
563SOUND TEST :774:2009/03/25(水) 08:41:49 ID:9k0//i3g
さっさと、うpしろカス!!
564SOUND TEST :774:2009/03/25(水) 16:08:14 ID:yxHi/vxx
うpお願いします!!
565SOUND TEST :774:2009/03/25(水) 18:14:47 ID:fO7hjTJp
>>563
人にものを頼む態度じゃねぇな。ムカつく。
566SOUND TEST :774:2009/03/25(水) 21:14:43 ID:lG5SA1al
>>563
お前、562氏に謝れよ!
567SOUND TEST :774:2009/03/25(水) 22:05:12 ID:HAicMBhk
うpしなくていいよ^^
無断二次配布で偉そうにする輩はたいてい持ってないから
568SOUND TEST :774:2009/03/26(木) 13:53:57 ID:TkwXbP5J
何だ、ダマシかよw
569SOUND TEST :774:2009/03/27(金) 01:32:43 ID:btkbBksK
マジ頼みます
570SOUND TEST :774:2009/03/27(金) 06:21:12 ID:TERyrPGa
懐かしいな。MIDI吐くプラグイン。SPC2MIDとそう変らない精度だったからガッカリしたなぁ。
あの頃。今更Google先生に聞いても判らないだろうな。
571SOUND TEST:2009/03/27(金) 10:28:45 ID:ta/pj825
FF8の.minipsfをもっているのだが
ここからどうやってMIDIにするんだ?
572SOUND TEST :774:2009/03/27(金) 13:34:59 ID:TERyrPGa
過去スレ見りゃ判るだろ。
いちいち教えねぇよ。
573SOUND TEST :774:2009/03/27(金) 19:43:11 ID:++WGiDNS
ゲームボーイのロム(またはgbs)からmidiを取り出す方法はありますか?
いちおうGBfanでmidi記録出来るのは知っているのですが、
それだとチートも使えないので酷く手間がかかったり効果音が被ったりしてしまいます
574SOUND TEST :774:2009/03/27(金) 20:31:18 ID:++WGiDNS
すみません。自己解決
GBS2GBとGBfanを使って効果音の入らないmidiを作れました
575SOUND TEST :774:2009/03/27(金) 22:54:51 ID:S5V3YpoS
アクセス規制終わったみたい!

>>558
akao2mmlのうぷぬしなら、上のとおり、最近、アクセス規制?
書き込み規制されてただけで、たまに、見てはいるデスよ。

サガフロの音色定義が難しいって話で、自分でもトライ中。
パーカッション、ロマサガ3と同じ仕様っぽい。
FF7は、GMや、GSのオケキットと同じ配列だったけど、
サガフロは、ロマサガ3の様に、C〜H(B)の12音階に、リズム割り振ってるっぽい。

まだ、色々検証中。
仕様を把握してからコーディングしないと、
後から、ソースを大幅に書き直す事になりかねないので。。。

ff7mml.comから、サガフロ専用のをでっち上げないと、
サガフロの音色定義は、出来ないかもしれない。
まだ、よう、わからないけど。
データフォーマットは、FF7と一緒なんだけどねぇ・・・。
576SOUND TEST :774:2009/03/27(金) 22:56:07 ID:S5V3YpoS
あげちった。
ごめん。
577SOUND TEST :774:2009/03/29(日) 11:17:02 ID:vXXLWt0i
わーい。うp主さん来た♪
578SOUND TEST :774:2009/03/31(火) 06:45:16 ID:jsfc/YB6
変換したMIDIをCherryで編集してんだけどよくバグッて強制終了になっちまって
上手く作業が進められない。
579SOUND TEST :774:2009/03/31(火) 08:01:57 ID:U8dUbfwk
他使えばいいだろww
ところで面白い事が判った。ヴァルプロ・スタオーのPSFの曲データFormat、
"slz"だがあれって圧縮なんだね。曲だけじゃなく他プログラム(ブロック)
にも多用されてる。まだ解析中で圧縮アルゴリズムは解明出来てないが解凍
されれば恐らくノーマルpQESが顔を出すことだろう。"slz"はあくまでも曲
Formatではなく圧縮ヘッダーって話。
580SOUND TEST :774:2009/03/31(火) 08:18:48 ID:JwdyFu2q
midiは絶対的にシェア使った方がいい
581SOUND TEST :774:2009/03/31(火) 10:15:56 ID:fZKPOSgJ
SLZが圧縮されたファイルだなんてのはとうの昔に知られていたし展開ソフトもいくつかあるが生のシーケンスファイルは出てこない
582SOUND TEST :774:2009/03/31(火) 10:37:09 ID:og94EHXz
今時cherryはねーよw
583SOUND TEST :774:2009/03/31(火) 20:47:17 ID:jsfc/YB6
スレ違いな話だけど使い易いシーケンスソフトってある?まぁ、個人差はあるとは
思うが……。おまいらの意見が聞きてぇな。
584SOUND TEST :774:2009/03/31(火) 22:03:51 ID:Ugtm1afZ
俺的には、MML最強な訳で。・・・コンパイラだが。
十数年MIDIいじくってると、今更GUIが使えない。
もう、MML見て、演奏できるレベルにもなったし。
最近、譜面がみにくいと、5線の下にMMLを書く俺が居る。
585SOUND TEST :774:2009/04/01(水) 00:42:31 ID:QWfwQ6ZA
この手のゲームから吸い出したSMFを弄るなら
未だにSTed2一択だ

そんな細かいtickとか必要ないしね
586SOUND TEST :774:2009/04/01(水) 00:51:21 ID:ILoOTopF
Dominoはどうよ
587SOUND TEST :774:2009/04/01(水) 01:37:40 ID:RdM7ITa6
588SOUND TEST :774:2009/04/01(水) 08:15:06 ID:0VeAblvI
Dominoを落として使ってみたけどイイねぇ〜〜!! 
かなりイイ!!
589SOUND TEST :774:2009/04/01(水) 11:54:10 ID:TiucF4p0
いやむしろ今は信者がウザイくらい定番じゃろ
590SOUND TEST :774:2009/04/01(水) 16:12:16 ID:+QsH6rbG
いやいや、レコンポこそが最強じゃよ。
591SOUND TEST :774:2009/04/01(水) 19:33:03 ID:aFP8BqvK
ってか、もうレコンポは終ってるぞ?
592SOUND TEST :774:2009/04/01(水) 22:01:20 ID:QWfwQ6ZA
それ言うなら、ST/GT/VELなフォーマットが終わってるようなものだから
すっかり世界はMBT一色よ…
593SOUND TEST :774:2009/04/02(木) 09:06:44 ID:Ah72AIBI
そんなもんかいな?
最近マターリしてるようだから話題の路線変えてみよっかなぁ〜
594SOUND TEST :774:2009/04/03(金) 01:09:02 ID:Ytmf54EW
akao2mmlで吐いたロマサガ3のデータに、音色定義しますた。
変更したmmlと、変更前のmmlを、MS-DOSのFCコマンドで比較した出力。
mmlの編集は、自力でやってくれ。
ここ、この音色の方がいいんじゃね?とか、あったら、レスヨロシク!

◆URL:http://www1.axfc.net/uploader/He/so/212229.txt
◆ぱす rs3
◆音源 Roland SC-88Pro

◆スペシャルサンクス   ここの住民
595SOUND TEST :774:2009/04/03(金) 10:01:11 ID:QJWdEm+D
いつも乙です!
596SOUND TEST :774:2009/04/04(土) 16:37:29 ID:97Xt1lqa
MIDIシーケンサーなんてフリーで事足りる
597SOUND TEST :774:2009/04/04(土) 17:55:27 ID:SOiSD5te
入力方式の問題があるが…
598SOUND TEST :774:2009/04/04(土) 20:59:37 ID:iPlvDz3d
入力方式については人により相性があるからねえ…
599SOUND TEST :774:2009/04/05(日) 08:45:42 ID:Jmvjxtdp
人それぞれ。って事でいいんじゃない?
600SOUND TEST :774:2009/04/05(日) 09:35:33 ID:Jmvjxtdp
長さん風に……

次行ってみよぉ〜〜!
601SOUND TEST :774:2009/04/07(火) 01:32:31 ID:YKBYAC1A
長さん・・・(´;ω;`)ウゥ・・・
602SOUND TEST :774:2009/04/07(火) 18:09:31 ID:77Vs8m9u
midiom2に期待age
midiom1はバグ放置のうんこだけど
603SOUND TEST :774:2009/04/07(火) 18:48:54 ID:Pm591jGk
>>602
たった今お前の地獄行きが決定しました
604SOUND TEST :774:2009/04/07(火) 19:53:15 ID:k/uGMj3q
midiom2は地獄か
605SOUND TEST :774:2009/04/07(火) 21:10:15 ID:vwq9NXXw
それって、なぁに?
606SOUND TEST :774:2009/04/08(水) 09:45:53 ID:W66P11jX
それくらいググればいいぢゃねーか。
607SOUND TEST :774:2009/04/08(水) 22:10:08 ID:W66P11jX
先日、とある方からN64用の変換ツールを頂いたのだが、keygenってソフトに
パスワードか何かを入れないとインスト出来ないみたいで全くもってkeygenの使い方が判らない
のでインスト出来ません。どなたかkeygenの使い方を教えてもらえませんか?
教えていただければ中身を確認出来次第、うpしますので・・・・
608SOUND TEST :774:2009/04/08(水) 23:09:29 ID:SZGNCDaH
それくらいググればいいぢゃねーか。
609SOUND TEST :774:2009/04/09(木) 00:20:06 ID:nelfjFTa
>>607
先にうpしてくれたら解除してうpるよ
610SOUND TEST :774:2009/04/09(木) 10:26:56 ID:N+dMjQvI
スマソ。自己解決。ありがとやんしたー。
611SOUND TEST :774:2009/04/10(金) 02:08:40 ID:slqcsfKO
さっさとうpしてくれ
612SOUND TEST :774:2009/04/12(日) 18:53:46 ID:xjhZRUE6
話ブッタ斬りで悪いがMIDIの編集でフィナーレ使ってる人いる?
613SOUND TEST :774:2009/04/13(月) 00:11:18 ID:o1U/vtvb
SMFの編集って意味では使わないな〜。
自作したakao2mmlで作ったmmlから、スコア譜とパート譜を作るときは、フィナーレ使っている。
所属している楽団は、普通の吹奏楽団だから、ゲーム音楽はあんまりやらないけど。
まぁ、趣味で吹くだけ。
614SOUND TEST :774:2009/04/13(月) 06:46:30 ID:Vx6QzVCd
レス、サンクス。吐き出されたAKAO2MMLのMIDIをフィナーレに読込ませて色々と編集を
しているけど16分3連符がタダの16分音符に化けて譜面的にオカシクなるんよ。
スレ違いだけどゴメンな。
615SOUND TEST :774:2009/04/13(月) 21:31:42 ID:o1U/vtvb
フィナーレで、SMF読み込むの難しいよな。
あきらめて、MML見ながら、自力で打ち込んでるよ。
616SOUND TEST :774:2009/04/16(木) 08:33:05 ID:DLtGubcB
保守
617SOUND TEST :774:2009/04/18(土) 21:35:40 ID:D1Lrub/9
あれ?
皆さんネタ切れでっか?
618akao2mmlのうぷぬし:2009/04/19(日) 03:09:53 ID:RWBGMrBQ
>>594のデータを、WSPの差分にしていおいた。
あと、FINAL FANTASY 6の音色定義が終わったんで、それも入れた。
WSPの使い方は、自分でドキュメント読んでくれ。
転載可扱いのフリーソフトなんで、同封してあります。
PC98 DOS時代のフリーソフトだから、拡張子が.docでも、テキストなんでヨロシク。

◆URL:http://www1.axfc.net/uploader/He/so/218466.lzh
◆ぱす akao
◆音源 Roland SC-88Pro

WSPを動かすときは、*.MMLファイルを、*.WUPと同じ名前にしないと動かないので、
MMLのファイル名は、頑張って変えてください。
619SOUND TEST :774:2009/04/19(日) 18:15:36 ID:V6d18UJ5
>>618
早速でゴメン。使い方がわからねえ。
620SOUND TEST :774:2009/04/20(月) 08:10:19 ID:iz2vC7j0
>>619
ドキュメントを穴が開く迄読み倒してとにかく自力で頑張れ!!
621SOUND TEST :774:2009/04/20(月) 18:58:24 ID:U0Sj6BfG
うp主さんへ
SPC用のAKAO2mmlには拍子とかの定義は無いんですよね?
全ての楽曲が4/4拍子で吐かれているのでどうしても気になり思い切って聞いてしまいました。
スレ汚しで申し訳ありません。
622SOUND TEST :774:2009/04/24(金) 03:39:01 ID:oTl2e8NZ
>>621
逆に、俺が聴きたいデス

ところで、618にうぷったの、ちゃんと使えたのが心配。
差分適用したMML、SMFにコンパイルできた?
自分のでは出来たけど、差分用に比較した元MMLって、
ソース結構いじくってるakao2mmlで吐いたMMLだから
多分、吐いてるMMLは同じだと思うけど…。

こんな感じで、XG版とか、GM版とか、
FF4とか5とか8とか9とか、作りたい人は作って!!
色々うっぷされたら、ロマサガ1と2対応版、うっぷしてみる。

PS用のと、SPC用ので、ソース分けたことを、絶賛後悔中 orz
623SOUND TEST :774:2009/04/27(月) 10:40:35 ID:2/ggGT/D
SMFから直にコンバートしてるような近年の内蔵音源データじゃないと
拍子って概念自体がデータ側に持たれてないんじゃないかと

かつてはVSYNCが最小音長だった時代もあるぐらいだし
拍子なんて音楽的な概念が残ってるのはPS1ぐらいからでは
624SOUND TEST :774:2009/04/27(月) 17:31:35 ID:Su7zyiBW
なるほどなぁ〜
ってことは・・・ピアノ譜を参考にしたり自分で割出しをしなきゃならない。って
事だよな。  曲やタイトル別に割出した拍子情報をうpるのって実際の話、
反則になるんかいなぁ??
ある意味、音色定義ならず拍子定義みたいな?  まぁ、手動編集になると
思うが・・・・(爆)
625SOUND TEST :774:2009/04/27(月) 20:31:52 ID:ldmau1+Y
拍子情報は別にいいんじゃね?
4小節目から3/4拍とか言ったって、曲は解らないし。
話し言葉でも、あの曲のC→Am→Dm→G7 の進行いいよね!とか言わない?
まぁ、1625はありふれた進行だけど。
626SOUND TEST :774:2009/04/28(火) 19:43:21 ID:WuMlQnb5
勝手に編集していいのか解らないけど、
ロマサガ1〜2にakao2mml対応させた時に、
コマンド一通り調べたんで、ここに書いておいた。
ロマサガ2と、ロマサガ3は、殆どフォーマット同じなんで、
ロマサガ3のページに追記しちゃった。
  ↓
http://www3.atwiki.jp/romancing/pages/46.html
http://www3.atwiki.jp/romancing/pages/108.html

PSの初期AKAO(プロジェクトAKAOっていうの?)も、
パーカッションの仕様が殆ど解った。

0xEC XXXX パーカッションon
XXXX パーカッション定義構造体への相対アドレス
構造体は、5[Byte]×12[音程]で、先頭の5Byteから、
C,Cis,D,Dis,E…の音色データを示す。
 +0 : パーカッション音色番号
 +1 : 発音する音程(ノート番号)
 +2 : 不明
 +3 : ボリューム(リニア値)
 +4 : パンポット

0xED パーカッションoff
627SOUND TEST :774:2009/04/28(火) 19:52:17 ID:WuMlQnb5
自分で、ツールとか作ってる方いたら、解析情報や、
akao2mmlのソース(80x86のアセンブリ言語だけど)とか渡すのは構わないので、
その際はメールアドレスなり、書いて。

うっぷは、他の方達も何かやってくれたら(音色定義とか周辺ツールとか?)
うっぷする予定。

デュープリズムも、ちょっとずつ解析中。
まぁ、その前に、初期AKAOのパーカッションの解析しちゃったんだけど…
628SOUND TEST :774:2009/04/29(水) 01:33:09 ID:naXDPiM3
>>579
SLZは前に解凍したことあるよ
SLPMと表示されている実行ファイルに解凍プログラムがある
LZのみの圧縮とLZ+ランレングスの二種類あったはず
629SOUND TEST :774:2009/04/29(水) 12:42:31 ID:+zKoQSqU
それはゲームディスク内のプログラムの話かいな?
630SOUND TEST :774:2009/05/01(金) 18:28:34 ID:s/Morojq
spcの手っ取り早い解析方法って何かね?
良き知恵求む!
631SOUND TEST :774:2009/05/06(水) 14:49:27 ID:SddTRi02
ほしゅ
632SOUND TEST :774:2009/05/07(木) 11:52:12 ID:zt/SEKWd
あのー、SLZの圧縮の溶き方とツールがあるとこ教えて下さいませんか?
633SOUND TEST :774:2009/05/09(土) 22:31:01 ID:XJD4sgO1
AKAOの解析資料、サガフロのページに勝手に書いておいた。
ttp://www41.atwiki.jp/sagafrontier/pages/43.html

HOSAは、大体、音符になるようになってきたけど、まだ変な曲有り。
すごい難しいわ。

SMDSは、ちょっとだけデータ見たけど、これ、多分Dewprismより簡単だとおもうじょ。

0x0000〜0x0003 char[4] "SMDS" 4Byteの文字列。曲データである事を示す?
0x0004〜0x0007 ?
0x0008〜0x0009 word ファイルサイズ? とおもったけど、違うっぽい
0x000A〜0x000F 不明
0x0010〜0x001D 不明
0x001E〜0x001F 曲名の先頭アドレス …(2)参照
0x0020〜0x0021 曲データのアドレス? …(3)参照
0x0022〜0x0023 word 曲データのアドレス ch1
0x0024〜0x0025 word 曲データのアドレス ch2
0x0026〜0x0027 word 曲データのアドレス ch3
・・・ word ・・・
0x004C〜0x004D word 曲データのアドレス ch22
0x004E〜0x004F word 曲データのアドレス ch23
0x0050〜0x0051 word 曲データのアドレス ch24
※終端は、0x0000(word)となる。

634SOUND TEST :774:2009/05/09(土) 22:34:25 ID:XJD4sgO1
■(2) 曲名データ情報   …(ヘッダーの0x001Eが示す先の内容)
━━━━━━━━━━━━━━━
ASCIIの文字列。終端は、0x00(Byte)





■(3) 曲データ情報
━━━━━━━━━━━━━━━
0x80 n1
休符 音長さは、n1[ticks]

0x90
チャンネルの終端?

0x94 n1
オクターブをn1に設定

0x95
オクターブアップ

0x96
オクターブダウン

0x97 n1 n2
拍子=n1/n2

0x98 n1
リピート開始点?  n1…リピート回数

0x99
リピート終点?

0xA0
多分テンポ n1×???[BPM]

0x00〜0x7F
が音符だと思うけど、この辺は、要検証
635SOUND TEST :774:2009/05/09(土) 22:38:41 ID:XJD4sgO1
解析に協力してくれれば、smds用も作れる。
してくれなかったら、作らないというか、作れない。
smds使ってるゲームは、やったことないしな。

書き忘れたけど、 timebase は 48 で作られていると思う。
AKAOも、HOSAもそうだから。

最初、0x00〜0x7Fは、そのままノートナンバーだと思ったけど、そうじゃないっぽい。
ちょっと曲知ってる人に耳コピしてもらって、楽譜みながらバイナリー見てたんだけど、
オクターブっぽいコードがある。
なんで、AKAOと同じように、音程と音長が複合化したコードなのかもしれない。
636SOUND TEST :774:2009/05/09(土) 22:42:50 ID:XJD4sgO1
自分は、どっちかというと、HOSAの解析に集中するんで、
smdsは、ヘッダー判明させておけば、だれかできるかな?
と言うことで、よろちく!
637SOUND TEST :774:2009/05/09(土) 22:52:23 ID:XJD4sgO1
>>630
気合いと根気以外に必要なもんは無いと思うんだ。
あと、耳。絶対音感までは要らないけど、
音を聞いて楽器使っても良いから、楽譜が書ける程度の耳コピ能力。
楽譜とか、耳コピの結果を紙媒体で残しておくスキルは要。

バイナリーを見る観点は、色々あるけど、
耳コピ結果、簡単な音形があったら、その部分探す。
例えば、

・半音進行している所があれば、バイナリーがインクリメントしているところがあるはず。
・同じ音が同じ音長で続いていれば、おなじバイナリーが連続している。
 ※リピートでやる場合もあるので、一概にはそういえない点も注意。
・チャンネルの終了のコードは、ch2〜ch24の先頭アドレスの
 1Byte前を見れば、同じコードが書かれているはず何で、
 それで、チャンネル終端のコードや、無限ループのコードは直ぐに解るはず。
・そもそも、ヘッダーは、WORD単位で、どんどん値が大きくなっていく所を探すだけ。
 多分、それが、トラックの先頭アドレスを示すポインタ。

自分が、設計するとしたら、どう設計するかって考えながら、バイナリー見る。
あとは、気合いと根性と根気と酒。
638SOUND TEST :774:2009/05/10(日) 00:50:14 ID:Tek7BGlI
やっぱ、酒ですか
639SOUND TEST :774:2009/05/10(日) 14:28:30 ID:b9mvPXAd
音楽するときゃ酒が必需品だべよ!
640SOUND TEST :774:2009/05/10(日) 15:13:03 ID:xwLIbJaS
楽器するときは飲めないけどな。
でも、吹いた後のビールは、格別だな。

解析中は、まぁ、ビールも必需品だな。
解析してて、行き詰まると、むかついてくるから、
そんなときは、ビールを一杯。
冬だったら、日本酒でもok
641SOUND TEST :774:2009/05/10(日) 15:15:46 ID:xwLIbJaS
解析は、やっぱ、一日に一気にしようと思わない方が良いな。
行き詰まったら、その日はあきらめるのも重要かもしれない。
ぐっすり寝て、翌日にまたバイナリー見てみると、
新しい事に気付くことが、稀に良くある。
642SOUND TEST :774:2009/05/10(日) 16:05:03 ID:ujJqgWMa
途中でakaoのバイナリ情報(頭の中にあるやつね。)とゴチャになり何度も
始めから見直したり整理した情報を破棄したり・・・中々進まないのも事実
です。(笑)あ、解析の話ね・・・↑
643SOUND TEST :774:2009/05/10(日) 16:21:51 ID:xwLIbJaS
解析結果を、テキストファイルに書くのも、結構限界があるんだよね。
バイナリの見方として、よく、テキストエディタにバイナリの16進数コピペして、
テキストでコメントふりながら検証したりする。
ちょっとsmdsのバイナリーみてたんだけど、トラックデータをこんな感じで

80 18   r8  (192÷0x18=8分音符)
AC 00   ???
98 04   [4  4回ループ
94 06   o6
80 90   r2.   (0x90=48*3 192÷48=4・・・4分音譜3つ分で、付点2分音符)
99     ]  リピート終点
BA     ????
E0 00    ????

なんか、パズルゲームみたいみたい。
コマンドの引数の数を勘違いすると、積むんだよな。
音楽データって、大抵が可変長のコマンドだから、1つ狂うと徹底的に狂う。
今日は、もう頭疲れてきたんで解析終了。
644SOUND TEST :774:2009/05/10(日) 16:38:46 ID:b9mvPXAd
うp主さんと1杯やりたいものだ〜(笑)
645SOUND TEST :774:2009/05/10(日) 16:52:40 ID:xwLIbJaS
そうそう、akaoとsmdsは、間違いなくMMLからコンパイルされているデータだと思う。
いきなりSMFにコンバートしようとすると、音源ドライバーを書くスキルが必要になるじぇ。
だから、今まで、解析断念の人が多かったんだと思う。

逆にHOSAは、SMFからコンバートしたっぽいデータになってる。
ただ音符は、、KeyOnイベントと、KeyOffイベントじゃなくて、
音符コマンドに音長がパラメータとして付く。但し、デルタタイムは別指定。
なんで、音長さを4分音符にして、デルタタイムを0にすれば、
同一トラック内で、和音ができる。
休符コマンドって概念はなくて、休符はデルタタイムで実現している感じ。
これは、SMFもいっしょかな。
646SOUND TEST :774:2009/05/10(日) 16:59:23 ID:xwLIbJaS
…まぁ実際には、音長コマンドに、音程がパラメータとして付くんだけど。
最初、これがなかなか解らなくて、ムキーーーーー〜〜ってなった。

smdsは、MMLにしようと思えば、SMFよりはコンバータ作るの楽だと思うから、
トライする人は、トライしてみると良いかもしれない。
といっても、まだ、音符のコマンドの構造が判明していないから何とも言えないが、
先ずは、それを判明させないと行けないけど。
647SOUND TEST :774:2009/05/10(日) 21:34:22 ID:b9mvPXAd
そーいえば、■系GBAのタイムベースも確か分解能48分の1 だったなぁ・・・・
って、関係ねぇ話でスマソ。
648SOUND TEST :774:2009/05/10(日) 23:50:54 ID:B6PFgTn4
smdsに期待。
俺の昔のメモによると
01〜13 ド
14〜26 ド#
27〜39 レ
...
D2〜E4 シ
で、値が小さいほど音長が長い。

あと
ACが楽器指定
E0 xx 音量(00-7F)
E8 xx パン(00-7F)
649SMDS解析班:2009/05/11(月) 00:35:49 ID:5g3Ntu9G
>>648
一つの推定を思いついた。
0x80以降のコードが、どうしても音符以外に使っているとしか思えない。

0x00〜0x7Fは音符を示していて、もしかしたらそのまま、ヴェロシティーになるのでは?
で、次の引数1[Byte]で、 >>648 に示す音程+音長を示すコードと。
この推定で、バイナリー眺めてみる。

まとめ (推定)
----------------
0x00-0x7F XX  音符 XXで音長&音程を示す。コマンドはヴェロシティ
0x80 XX 休符
0x81 XX タイ
0x90    チャンネル終端
0x94 XX  オクターブ
0x95    オクターブアップ
0x96    オクターブダウン
0x97 XX YY  拍子
0x98 XX  リピート開始点 XXは回数
0x99    リピート終端
0xAC XX   音色
0xE0 XX   音量
0xE8 XX  パンポット
650SMDS解析班:2009/05/11(月) 01:36:59 ID:5g3Ntu9G
>>648
ちょっと検証してみた。バイトコードを 19で割って、
商が音符になるのは>>648の通りで、
『余り』の意味を検証。

const char* strLength[19] ={"1","2.","2","4.","3","4","8.","6","8","16.","12","16","32.","24","32","64.","64.","64","%"};

これで行けた。
余りが18の場合の時に "%"って書いてあるけど、これは特別で、
『もう1Byte追加して、その1Byteが音長を示す。』

> 01〜13 ド
> 14〜26 ド#
> 27〜39 レ
> ...
> D2〜E4 シ

これで言うと、0x13, 0x26, 0x39, ・・・ , 0xE4は、3Byteのコマンド。
例えば、
 7F 13 0C
だったとしたら、ヴェロシティ 127で、ドを 0x0C=12[ticks]ならす。
って意味だと思う。

ってことで、今日は寝る。
651SMDS解析班:2009/05/11(月) 01:38:03 ID:5g3Ntu9G
ゴメン訂正。

const char* strLength[19] ={"1","2.","2","4.","3","4","8.","6","8","16.","12","16","32.","24","32","64.","48","64","%"};

652SMDS解析班補佐:2009/05/11(月) 09:13:31 ID:iEtNLDe2
こちらも色々と考えてみた。なるほど上記レスの説で間違いはないみたい。
耳コピしたデータと符合してるみたいな。他イベント系の命令?とかのコードはかなり難しそう。こりゃ、仕事どこじゃなさそーだわ。
653SMDS解析班:2009/05/11(月) 09:28:44 ID:5g3Ntu9G
イベント系のコードは、その意味がわかれば万々歳だけど、
次の段階としては、先ずは、各コマンドで、引数が何Byteあるのかの把握かな。
それさえ解っちゃえば、先ずは解らないコードは飛ばしちゃえば良いだけで。

次の手法は、バイナリーエディタを見て、テキストエディタにコピペして、
マニュアル・アンコンパイルの繰り返しが良いと思う。
地味な作業の繰り返しになるが・・・。
654SMDS解析班補佐:2009/05/11(月) 12:00:52 ID:ThulYmWf
ってか、総当りだな。ブルートフォースみたいな。そんでもって
変化が出たとこで賺さず範囲を想定……その繰返しの作業をやるしか
ないな。
655SMDS解析班:2009/05/11(月) 21:42:20 ID:5g3Ntu9G
まず、逆MMLコンパイラのプロトタイプ作ってみた。
ゼノギアスの曲を色々コンパイルして聴いてみたけど、

const char* strLength[19] ={"1","2.","2","4.","3","4","8.","6","8","16.","12","16","32.","24","32","64.","48","64","%"};

一部、ハズレっぽい。
音長がうまくいってなさそうな感じだけど、原曲知らないから、何とも言えない所。
作った本人は、ゲームや曲を知らないので、この位までしか出来なさそう。

とりあえず、解析において、本ソースコードの編集及びビルドは自由に行ってください。
但し、アップに関しては、『内蔵音源をMIDI変換するスレ』内においてのみ可。


1つのコマンド・バイナリーを、MML文字列に変換するルーチンは、
ソースファイル"unMML.cpp" の
関数"void unMMLcompiler::Decode1Command()"
でやってます。
やってることは、そんな難しくないので、後は、住人達のマンパワーに任せマス。

自分は、DewPrismの解析にもどるゼ

http://www1.axfc.net/uploader/Sc/so/932.lzh


656SMDS解析班:2009/05/11(月) 21:43:45 ID:5g3Ntu9G
あ、ごめん。
PASSは、ヘッダー4文字を小文字で。
657SOUND TEST :774:2009/05/12(火) 11:14:38 ID:Z/r5fGxO
MASMじゃないのが逆に新鮮
658SOUND TEST :774:2009/05/12(火) 17:24:59 ID:dwkBI8r1
プログラム領域が全くダメポな人は吐き出されたmmlを地道にmidi変換
出来る所まで手直しするしかない訳ですね? ようするに
659sound tester 774:2009/05/13(水) 01:43:24 ID:HrsSpe+V
http://www1.axfc.net/uploader/Sc/so/1167

ちょっといじった。
これで、曲を知らないで作れる範囲の限界だと思う。
>>655は、ちょっと、変換後の音長が変だったので、ちょっと修正書けた。

テンポの係数だとか、
音符以外のほとんどのバイナリーは、解析していないので、
その辺は、情報が上がってきたら、自分でコード書いても良いし、
勝手にコード書いて、ここにうぷして貰っても構わないです。

今、対応済みのは、
0x00-0x7F 音符
0x80 休符
0x81 タイ
0x90 End of Track
0x91 無限ループだけど、SMFにはそんな機能無い
0x94〜0x96 オクターブ関係
0x97 拍子
0x98〜0x99 リピート
0xA0 テンポ (但し、BPM変換はしてない)
0xAC 音色
0xE0 音量
0xE2 音量推移
0xE8 パン
0xEA パン推移

未解析のコマンドは、まだ沢山あります。
660sound tester 774:2009/05/13(水) 01:51:11 ID:HrsSpe+V
>>657
一応、VC++も書けなくはないんだけど、アセンブリ言語の方が得意なんデス。
でも、アセンブリ言語で作ると、ソースを編集できる人が限られて来ちゃうから、
フリーで入手できる、Microsoft Visual C++.net 2008 で書いた。

CLIは使ってないというか、・・・何それ?うまいのか?
.netフレームワークとか、全然しらないゼ。

>>658
意味がわかったバイナリがあったら、
ここに書けば、誰かソースを編集してくれるかもしれないぞ!!
自分がやっちゃいそうだけど、まぁ、デュープリズムの解析を優先する。

smdsは、誰かお願い。

661sound tester 774:2009/05/14(木) 00:53:51 ID:ZuKhxy65
◆Dew Prism
http://www1.axfc.net/uploader/Sc/so/1372.lzh

大体、演奏できるようになった。音符・休符は、これでいけているはず。
完全にはチェックしてないので、チェック&各曲の動作報告をお願い。
コマンド系は、
Tempo, Volume, Expression, Panpot, Velocity のみ対応。
他はまだ未解析。


◆すずき? smds?
http://www1.axfc.net/uploader/Sc/so/1374.lzh

>>648

> 01〜13 ド
> 14〜26 ド#
> 27〜39 レ
> ...
> D2〜E4 シ

これ、ちがかった。正しくは、

00〜12 ド
13〜25 ド#
26〜38 レ
...
D1〜E3 シ

なんで、一部の音符が、半音下がってしまったのを修正。


PASSは、それぞれヘッダー4文字を小文字で
662sound tester 774:2009/05/14(木) 01:02:58 ID:ZuKhxy65
それぞれ、"format.txt"を入れておいたので、解析の際は参考にして欲しい。
スレに書かれたのと、自分が調べた範囲のは大体まとめてある。

但し、DewPrismに関しては、"format.txt"を見ただけでは、データ構造は把握できないと思う。
自分も、最初、アセンブリ言語で組むつもりだったが、
データ構造が複雑すぎて、可読性の確保のためにC++で書き直した。
ツール関係を作る人は、C++ソースを呼んで、どういう風に処理しているのか見た方がいいと思う。
非常に解析のし応えがある、曲データフォーマットだった。

最近まで、不況のせいか、仕事は落ち着いていたんだけど、
重たい案件を抱えたので、しばらくは、解析対応できないので、よろしく。
なんで、出来る所までやったのを、うぷっておきます。
663SOUND TEST :774:2009/05/14(木) 04:56:15 ID:OO5EQj0U
usf抜き出すツールってあるの?全然見つからん
664SOUND TEST :774:2009/05/14(木) 10:45:59 ID:7gPSmLR0
あるよ。かなり前に俺がうpしたがなww
665SOUND TEST :774:2009/05/14(木) 13:08:43 ID:slynZunM
>>661
愛してる
ちょー乙です

PS-X.EXEの先頭ヘッダ切り落とさず食わせて、2GのMML吐かれてわらた
666sound tester 774:2009/05/14(木) 23:32:31 ID:ZuKhxy65
そう言えば、逆MMLコンパイラ作っておきながら、
それが何のタイトルに使われているのか知らないんだよな…・

◆初期AKAO (project AKAOって言うの?)
 FF7(*)
 サガフロ1(*)
 パラサイトイブ

◆後期AKAO
 FF2, 8(*), 9(*)
 ベイグラントストーリー
 チョコボの不思議なダンジョン
 聖剣伝説 Legent of まな

◆smds
 ゼノギアス(*)
 サガフロ2
 クロノクロス

◆hosa
 Dew Prism(*)

こんな感じ?
開発する上では、(*)印が付いてるゲームのデータで検証してます。


>>665
誰かやるだろうなぁ〜って思ってた。
似たようなフォーマットがあるだろうから、
エラーチェックとか、データチェックかけてないんだ。
なんで、変なデータ読ますと、最悪、暴走するんで宜しく。

本来の曲データでも、一部、暴走する曲データがあるのを確認しているけど、
(1) 未解析の機能をつかっていて、正常に動作しなかった
(2) シーケンスが、条件ジャンプコマンド、無限ループコマンドで
   入り交じって、スパゲティーな構造になっている。
場合に暴走します。

ソフト側でチェックかけてないんで、
 [1] ctrl+c か、
 [2] ctrl + alt +delete か、
 [3] 電源ボタン
で、停止して♪


667SOUND TEST :774:2009/05/15(金) 08:09:44 ID:1018dCFh
>>666
激しく乙です!
一部訂正させて下さい。
サガフロ2・クロノクロスは後期akao   smdsはゼノギアス・武蔵伝
となっています。   同じsmdsでも武蔵伝は正常変換は出来ないっす。
ちなみに・・・うp主さん以外の住人達へ。  デュープ&smdsのファイル
の抜取はヘッダーからゼロ・バディングする所まででおkです。全曲抜取
が出来たらbatファイル作って実行すればスンゲェ楽です。
668sound tester 774:2009/05/15(金) 22:59:26 ID:1lXFsgfq
smds、オクターブが変になる曲があるみたいで、
0x98命令の case()文の所を、こう変えれば、うまく行くかもしれないです。
曲知らないから自分は検証できないので、検証は宜しく。
あと、変えるのこれだけなんで、自分でソースいじって、ビルドして。
unMML.cpp の、void unMMLcompiler::Decode1Command()関数ね。

VC++.net 2008 Express Edition は無償だから、
持ってない人は、自分でダウンロードして、インストールするヨロシ

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
//------------
//Repeat [
case(0x98):
*MML << "[" << (int)SND->cRead() << " ";
cVelocity=-1; //Velocityの記憶をreset
*MML << "o" << (int)cOctave;
break;

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
669sound tester 774:2009/05/15(金) 23:06:13 ID:1lXFsgfq
■補足
この一文を追加するだけ。

*MML << "o" << (int)cOctave;

━━━━━━━━━━━━━━━━
おそらく、サウンドドライバーの動作として、


 リピート開始時(0x98コマンド)にオクターブを記憶させていて、
 リピート終了時(0x99コマンド)に戻った時に、
 リピート開始時に記憶したオクターブに、
 サウンドドライバー内部のオクターブ用の変数をセットし直す。


という事をやっているんだと思う。
なんで、リピート開始時に、オクターブを吐き出す処理を追加したという感じです。

変数"cOctave"は、オクターブ関係の命令があった時に、設定しています。
(以下参照)
//------------
//Octave
case(0x94):
cOctave = SND->cRead();
*MML << "o" << (int)cOctave;
break;
//------------
//Octave Up
case(0x95):
cOctave++;
MML->put('>');
break;
//------------
//Octave Down
case(0x96):
cOctave--;
MML->put('<');
break;

670sound tester 774:2009/05/15(金) 23:22:54 ID:1lXFsgfq
>>667
サンクス。
もしかしたら、smdsも、akaoみたいにversionがあるのかも。
まぁ、そんなに構造は変えないだろうので、バイナリー見る人は見てみると良いかも。

補足しておくと、AKAOは、00 が連続していてもデータの終わりではないので注意。
AKAOって、
(1) 各トラックの楽譜データ
(2) パーカッションの定義
(3) 音色の定義
があって、(2)と(3)の構造体中で、00が連続することが良くあります。
akao2mmlは、この辺も調べて、音色定義マクロの方に反映しているので、
そこでデータが足りてないと、音色定義マクロの出力に失敗します。
671sound tester 774:2009/05/15(金) 23:39:58 ID:1lXFsgfq
smdsは、何曲か見てみたけど、
smdsを起点(アドレス=0x0000)として、
0x0008〜0x0009番地に、リトルエンディアンの2Byteで、データサイズが書いてあります。
00 は連続しないけど、シーケンスデータはそこまでしか書いて無くて、
後に続くデータは、曲とか関係ないデータっぽいので、
切り出しソフトを作る場合は、ヘッダーを見て、そのサイズ通りに切り出してもokだと思います。

HOSAは、ヘッダーにファイルサイズが書いてなさそうなので、
00 が連続したら、切り出してくれれば、問題ないと思う。
672SOUND TEST :774:2009/05/16(土) 02:41:47 ID:dGoteLS3
>>666
超乙
参考までにFFTもsmdsみたいだ。
そのままではVoice関数に異常があってエラーが出るけど
データに小細工するとSMF化できるっぽい。
673SOUND TEST :774:2009/05/16(土) 03:38:38 ID:yEBvdxMh
ttp://www1.axfc.net/uploader/Sc/so/1845.mp3

hosa2mml実用例
イイヨイイヨーツカエルヨー
674SOUND TEST :774:2009/05/16(土) 16:02:24 ID:Tr6biDAc
>>672
確かにVoice関数が"2〜129"の範囲内に対し吐き出されたmml内の数値は
デカイな。"141〜255"が最大値。何かしらの計算式、÷2四捨五入みたい
な感じでソースを変えたら上手くいくかも。要は128Bank分の音色数しか
処理出来ないみたいだから。
範囲内数値でテケトーにやればバッチリmidi吐くよ。ゲロゲロゲロ〜って。
675sound tester 774:2009/05/16(土) 17:33:21 ID:8b0+STPR
>>672, 674

http://www1.axfc.net/uploader/Sc/so/1934.txt

ちょっと代替策。パスは無し。
Voice()命令が128を越えないように、ソースをいじった。
Instrument()ってスクリプトを、MML中に書いて、
MML文字列では、音色設定時は、Instrument()関数を呼ぶようにした。

この辺は、さくらは、MML中にスクリプトがかけるから便利なんだよな。
ダウンロード後は、”unMML.cpp”にファイル名を変えて、
元のunMML.cppをそれに書き換えてビルドして。

676sound tester 774:2009/05/16(土) 17:48:28 ID:8b0+STPR
ちょっとsmdsの出力MMLみて気付いた。

0xAE  パーカッション on
0xAF  パーカッション off

但し、GMのドラムキットとは、全然パーカションの配置がちがうっぽい。
677sound tester 774:2009/05/16(土) 17:49:32 ID:8b0+STPR
0xBA は、リバーブonかな? ほとんど、各トラックの最初に入っている気がする。

678SOUND TEST :774:2009/05/17(日) 01:25:58 ID:jmYySlvx
PSFをEXEにして、テンポコマンドのパラメータをいじってみた。

指定値 テンポ結果  何倍違うか  いくつ違うか(差)
68     79    1.161764706  11
114    134    1.175438596  20
120    141    1.175     21
180    210    1.166666667  30

一次関数にあるみたい。
バイナリのテンポの値に、1.175 をかければ、BPMになりそう。
679SOUND TEST :774:2009/05/18(月) 03:20:54 ID:3EJC4g4S
smds、LFOとか判明したらどうやって対応しようかなとか考えてたんだけど、
さくらじゃ無理な予感がしてきた。

エンベロープとかLFOは、mml2midの方が、高機能なんだよなぁ。
HOSAみたいに1トラックで和音やってたり、
SMFからそのままコンバートようなデータだったら、サクラの方が良いけど
smdsは、mml2midの文法を吐くように、作り直した方が良い予感。

今更だけど、作り直そうと思う。
hosaは、エンベロープとか、直接音量コマンドを書きまくってやってるんで、こっちはサクラで問題なし。
というかhosaは、サクラじゃないとうまく逆コンパイラ作れなかったと思う。

>>678のテンポも含めて、時間取れ次第、対応してみる。
今日は寝る。
680SOUND TEST :774:2009/05/19(火) 15:41:18 ID:mXZBit5O
>>679
うp主さん、今のツールだけでも満足ですから頑張り過ぎないで下さいね。
コソーリ押入れの隙間から応援してます。
681SOUND TEST :774:2009/05/19(火) 22:53:54 ID:oYnIzHEu
http://www1.axfc.net/uploader/Sc/so/2698.lzh

smds2mml version 0.04 (2009. 5.19)
◆以下の機能に対応した。
・ヘッダーのトラック数を参照するようにした。
・テンポ推移
・ポルタメント
・パーカッション on/off
・リバーブ on/off
・Instrument()関数をMML中に吐く様にし、
 音色設定をVoice()から、Instrument()に変えた。
◆以下の点を修正した。
・リピート時にオクターブが狂う。
・テンポが遅い
・コマンドの引数のByte数を修正(0xB8, 0xE1, 0xFC, etc..)
・音符とタイの間にコマンドを挟むと、
 KeyOffしてしまうサクラの仕様に対処した。
※!!!注意!!!
ポルタメント対応により、"smds2mml.h"を変更しています。



曲知らないで作ってる。原曲知らない。
変換後、再生変だったら、どこがどう違うのか教えて。

あと、続き解析してくれる人の為に、format.txtも更新しておきました。
まぁ、C++のソースも見てください。

mml2midにしようかなぁとか言ったけど、まださくらです。

あと、ゼノギアスで、暴走していた2曲が、暴走しないようになりました。
曲になっているかは、知らない。
682SOUND TEST :774:2009/05/20(水) 01:25:19 ID:3mnLiM+X
うお、なんかすごいスレ発見した
ソフトダウンロードして俺もやってみよう
683SOUND TEST :774:2009/05/21(木) 00:02:40 ID:IRacG82i
だれかさ、LFO関連(音程・音量・パンポット)の解析しない?

多分、
D7, D8, D9 が、音程関係のLFO
E3, E4, E5 が、音量関係のLFO
EB, EC, ED が、パンポット関係のLFO

だと思う。このコマンドに続く、引数の意味について。

原曲を持ってないから、こればっかりは、自分で調べきれない。
とにかく、原曲を聴いて、
・ビブラートの深さはどの位か?
・ビブラートの周期
・ノートonしてから、どのくらい経過したらビブラートが始まるか

を検証して、バイナリを見る感じ。
絶対音感というよりは、ソルフェージュできれば、解析できると思う。

多分だけど、楽器系に、ビブラート使ってると思う。
あと、稀にシンセ系の音。
684SOUND TEST :774:2009/05/21(木) 00:03:35 ID:Rbxs82t1
楽器系 ってなんだよ。 
管楽器ね。
685SOUND TEST :774:2009/05/21(木) 10:22:40 ID:3SaaZ62n
LFOなくっても完璧っす!  満足ぅ〜〜
逝ってしまいそ〜
686SOUND TEST :774:2009/05/21(木) 16:14:51 ID:xwPeDoKW
LFOってSPU仕様上波形固定なの?三角波だけ?矩形波とかは?
687SOUND TEST :774:2009/05/21(木) 18:52:51 ID:z7qywbk2
SPUには無い
688SOUND TEST :774:2009/05/21(木) 21:55:45 ID:Rbxs82t1
ハードウェアの機能じゃないよ。
akaoとかsmdsは、音源ドライバ(つまりソフトウェア)でやってる。
AKAOに関しては、音程、音量、パンポットの3系統あるのを確認してる。
恐らくsmdsも、この3系統を実装しているとおもう。

ソフトウェアでやるには、三角波状が比較的楽にプログラミングできるけど
中には正弦波のテーブルを持たせて、正弦波LFOをやってる音源ドライバーもある。
Falcomの、PC98版・英雄伝説4,PC98版・BrandishVTとかは、三角波モードと、正弦波モードがある。

別に、LFOはそんな難しいプログラミングじゃないよ。
自分の経験上では、LFOよりも、ADSRエンベロープをソフトウェアで実装する方が難しかったな。
SPUや、SPC-700に関しては、ADSRエンベロープはハードウェアで実装されているんで、
AKAOや、smdsは、ADSRエンベロープは、ハードウェアに頼っていると思う。

ちなみに、ADSRっていうのは、
 Atack  (音の立ち上がり)
 Decay  (立ち上がってから、1回目の減衰。 ピアノとかはこれが大きい)
 Sustaion (1回目の減衰がおわってからの、2回目の揺るやかな減衰)
 Release  (音を出し終わった後の、音が0になるまでの減衰)
のそれぞれ頭。
689SOUND TEST :774:2009/05/22(金) 08:34:10 ID:knQiuyN7
すげぇムズイ話してるな。高次元すぎてオイラにはサパーリ理解が出来ないww
それよりだな、デュープの音色定義をだな……うぅ……、ごめん。こっちも
サパーリ判らんのです。はい。 で、何か問題でも?
690SOUND TEST :774:2009/05/22(金) 16:44:08 ID:k9YU/w6L
今更なんだがゼノギアスってぇヤツはアレだな、その〜音色ウェーブがVBだったりするんだナ。
この仕組みが解れば音色定義も楽なんだが。上手くいかんモンだなぁ。
691SOUND TEST :774:2009/05/23(土) 00:16:04 ID:IfKSBKTh
>>690
ゼノギアスの吐いたMML眺めてたんだけど、
使ってる音色番号、連番じゃないね。とびとびで使ってる。
もしかして、初期AKAOの様に、
どの曲も、音色番号と楽器の対応、同じなんじゃない?

原曲解らないから自分は検証しようがないけど、
誰か、そう言う視点で見てみない?


>>689
難しいって言うか、単語はDTM(Desk Top Music)で一般的に使う単語や、普通の音楽用語じゃない?
C++は、解らなくてしょうがないと思うけど。

でも、個人的には、C++覚えるより、オーボエの奏法覚える方が、苦労してるじょ。

692SOUND TEST :774:2009/05/23(土) 00:25:16 ID:IfKSBKTh
LFO検証しようと思ったんだけど、やっぱ、原曲ないと無理だ。
吐いたMMLや、バイナリー見ただけじゃ、わかんないや。
(まぁ、当たり前と言えば、当たり前だが。)

CD買ってくるかなぁ。ゼノギアスのサントラとかあるの?
まぁ、ビブラートのソルフェージュはできるし、サントラで何とかなるだろう!
オーボエは、ビブラートが命だしな。
693SOUND TEST :774:2009/05/23(土) 00:27:49 ID:IfKSBKTh
酔っぱらいは、ねるデスよ。
LFO以外も、smds、何か解ったことがあったら、教えて欲しい。
smds2mmlの方に反映するんで。
694SOUND TEST :774:2009/05/23(土) 01:33:34 ID:NHdnm2Ox
内蔵音源をmidi変換するのに何で原曲無いと無理なんだ?とふと思った。
内蔵音源を聞けばいいじゃん。
695SOUND TEST :774:2009/05/23(土) 10:03:33 ID:alYdJSZG
まぁ、デュープも去ることながらゼノギアスも素晴らしい楽曲なのでMIDIに変換出来て
本当に満足している。是非、サントラなりPSFなりで聞いて欲しい。あと音色
関係だが、拡張音源の連発でPS純正はあまり使用されていない。その証拠に
音色バンクに統一性がない。何等かの命令で純正バンクIDと拡張音源バンクID
の入替えが行われていると思われる。自分で好きな曲をチョイスして音色リストを
作成したが同一バンクにバッティングする音色が多々あった。拡張1 拡張2
拡張3みたいな感じで。ただ、本来01〜255音色みたいなので単純に2で割っても
同一バンクに被る音色が2つあってもおかしくない勘定になるな。
696SOUND TEST :774:2009/05/23(土) 10:42:43 ID:alYdJSZG
0勘定で127×2=254=0〜254=255音色。1勘定て128×2=256=1〜256=255音色。
つまりPS側から見ると基本0か1の勘定でバンク127、 拡張バンク127。 って考えた方
が正解なのかも知れない。されどMIDIはパーカス除く127音色しかない訳だから半分
脳内変換に頼らざるおえないな。どう見ても1〜16Tr=127音色 17〜32Tr=127音色
×2で255音色って作りじゃなさそーだから。
697SOUND TEST :774:2009/05/23(土) 11:53:18 ID:IfKSBKTh
version 0.04から、Instrument()関数作って、
MML文字列中では、Instrument()命令吐いて、
その中の引数には、バイナリと同じ値を10進数で書いてる。
なにかの曲で、 Insturument(255) ってなってるのもあったよ。

Instument()関数中に、SWITCH()〜CASE()〜DEFAULT命令あって、
その中にVoice()命令あるんで、それいじくると、音色定義が早いと思う。
さくらのVoice()命令は、引数1つ or 引数3つ。

Voice(n1,n2,n3) ってあったときは、
 n1 ・・・ 音色番号 (0〜127)
 n2 ・・・ バンクLSB (0〜127)
 n3 ・・・ バンクMSB (0〜127)

n2やn3は、GM音源じゃいみないけど、GSとかXG使ってたら、使うと良いかも。

例)
    CASE(255){ Voice(80,1,3); TrackKey(+12);  }

ちなみに、TrackKey(+12); は、移調量。
+12だったら、+12半音。つまり1オクターブ上になる。

これだと、音色番号255が指定されたら、
 音色番号80 音色バンク1,3 移調量+12半音(+1オクターブ)
にセッティングすることになります。

詳しくは、さくら取説の SWITCH()文 や、 Voice()文の所を読んでもらえれば、
MML中のSWITCH()文の意図がわかると思う。
698SOUND TEST :774:2009/05/23(土) 11:57:41 ID:IfKSBKTh
で、いまMML2MID文法で吐くオプションを実装中。
こっちの文法で吐いた時は、AKAO2MMLと同じ様にしようと思ってる。
というか、おなじ仕様にした。

・・・というか、 >>695-696 の通り、
1つの曲の中でバンク切り替えて居るんだったら、
設計変えないと行けないな。

途中まで、MML2MIDモードつくっちったよorz
699SOUND TEST :774:2009/05/23(土) 12:00:17 ID:IfKSBKTh
http://www1.axfc.net/uploader/Sc/so/3508.lzh

まぁいいや。使ってみて。使い方は、

smds2mml /?

で。
700SOUND TEST :774:2009/05/23(土) 12:06:26 ID:IfKSBKTh
>>694
ちなみに、俺、PSFは持ってない。
検証用に、smdsに切り出したデータだけ持ってる。

流石に、曲聴かないと逆MML作れないから、1曲だけならPSFもってるけど…
再現性上げるための細かい微調整は、色々な曲聴かないと無理。

701SOUND TEST :774:2009/05/23(土) 12:11:49 ID:IfKSBKTh
さくら仕様のMMLで吐いたときは、
MMLで使っていた音色番号の一覧を、MMLの一番下に出力するようにしておいた。
MML2MID仕様で吐いたときは、akao2mml同様の、音色定義マクロを吐くようにしてあります。

音色の検証、し易くなったと思います。音色の検証はお願い!

自分は、LFOを研究する。ちょっと、時間はかかると思うけど。
702SOUND TEST :774:2009/05/24(日) 09:59:20 ID:e5xpgkaR
乙です。感謝してます

ところで0.04になってからゼノギアスのellieとmaria2の2曲が
暴走(?)っていうかmml変換終わらないんですが自分だけですかね
703SOUND TEST :774:2009/05/24(日) 11:47:27 ID:M6TFkVEr
切出し方法はあってるか? 俺のは変換出来るで?
704SOUND TEST :774:2009/05/24(日) 12:16:59 ID:e5xpgkaR
すいませんできました
9011だったら
Stirlingで0x1190 bytesではなく0x1191 bytesまでとらないといけないんですね
0.03では問題なかったみたいなので気がつきませんでした
ありがとうございました
705SOUND TEST :774:2009/05/24(日) 14:34:41 ID:M6TFkVEr
smdsのバージョン上がってもサクラの方側は音抜けする曲あるね。
mml2mid側はちゃんと発音してるけど。
706SOUND TEST :774:2009/05/24(日) 16:31:56 ID:mkMPlx2/
ゼノギアスの音色検証中だがやはりバンクがバッティングしているようだ。
一応、曲はmaria2(サントラ名:飛翔)
mml内バンク04(Brass Strings)バッティング
バンク06(Tinpani Harp)バッティング
みたいな感じ。  普通にリスト作っても最終的には(耳)しかなさそう。
俺はこんなふうにリストを作ってる

Bank Tone Ex_Bank1 Tone
02 St 02 St
03 Ho -- --
04 Br 04 St
05 Tr -- --
06 Ha 06 Ti

etc・・・・
707SOUND TEST :774:2009/05/26(火) 22:34:27 ID:kLcY1frb
>>706
吐き出したMML見てみたけど、良く解らないな。
0xFEコマンドで、音色セットの切り替えしているのかな?


実は、間違えて、"maria1"みてたんだけど、
多分、0xC?コマンドは、SPU(PlayStationの音源Chip)のADSRエンベロープのパラメータを指定しているっぽい。

0xC0  エンベロープ リセット
0xC2  Atack Rate   (PlayStation の 0x1F801xx8番地 の bit8〜15 )? 範囲:0〜127
0xC4  Sustain Rate  (PlayStation の 0x1F801xxA番地 )?       範囲:0〜127
0xC5  Release Rate  (PlayStation の 0x1F801xxA番地 )?       範囲:0〜31
0xC9  Decay Rate   (PlayStation の 0x1F801xx8番地 の bit4〜7 )?  範囲:0〜15
0xCA  Sustain Level  (PlayStation の 0x1F801xx8番地 の bit0〜3 )?  範囲:0〜15
708SOUND TEST :774:2009/05/26(火) 22:57:14 ID:kLcY1frb
"maria2"は、smdsの生データの、
0x0055〜0x0067番地も気になる。
ここも未解析で、なんのデータなのか意味がわかってない。

曲によって、maria2みたいに。
タイトル?データと、シーケンスデータの間に、
何かのデータがあるんだよね。
709SOUND TEST :774:2009/05/27(水) 20:17:12 ID:o2ZWjC+W
そもそも、ゼノギアスのPSFは純正音源(VB)、シーケンスデータ内格納音源、PSFデータ末尾
付近にある拡張音源と3タイプある模様。それぞれのIDを音別に呼出してるんだと
思われる。曲番号103の1か2Trのフルート(主旋律)部において同じプログラム
No.ではないが同一音色なのにバンクの使い分けが行われている。そう言う観点
から見ると幾つかの同一バンクNo.での違う音色切替が行われているものと推測される。
710SOUND TEST :774:2009/05/29(金) 16:10:39 ID:aGAL7EdY
ゼノとFFTの音合せムズカシイネー!
711SOUND TEST :774:2009/05/29(金) 19:40:19 ID:s4zzO9hy
"103.exe"と、"203.exe"のバイナリーを見ると、
0x00041140番地,0x00A00800番地,0x00170800番地に"wds "という文字列が見当たる。
このうち、0x00A00800番地,0x00170800番地がPlayStationの波形(音色)データのようなバイナリー。

ざっと見、0x00A00800番地の方は両者同じなので、効果音等でも使われる、常にロードされている音色(波形)?
0x00170800番地は、両者の.exeで異なっているデータなので、これが、曲毎にロードされる音色っぽい。
VB形式のヘッダーって、"wds "??

で、曲203を例に取ると、0xFEコマンドの引数で、38(0x26)と、42(0x2A)が指定されてる。
で、0x00A00800番地と,0x00170800番地近傍を見てみると、そこから0x20Byte進んだ地点に、見事に0x26と0x2Aが書いて有る。

音色セット番号0x26(38)は全曲共通部の音色で、それ以外が、曲毎に異なる音色!?
あ、なんか解ってきたかも。
712SOUND TEST :774:2009/05/29(金) 19:41:50 ID:s4zzO9hy
で、VBとか、VHとかあんまよく知らないから、調べてみたんだけど、こういう認識であってる?
SONYが、この辺、特許出してたんで、特許読んでみた。

VAB 音色バンクデータ
├VB : 波形情報部(wave実体) サウンドバッファにロードされる
└VH : 属性情報部(バンクヘッダ) メインメモリにロードされる
  | ※特許読むと、メイン・メモリの節約の為
  |  ヘッダと波形が別れてるそうで。
  |
  ├[1] VABヘッダ
  |├ ファイルがバンクVABであることを識別するためのVAB識別子
  |├ バージョン
  |├ 個々のバンクVABを識別するためのファイルID
  |├ バンクVABを構成するファイルのサイズを表わすファイルサイズ
  |├ バンクVABに含まれる上記プログラムの数を表わすプログラム数
  |├ バンクに含まれる全VAG属性セットの数を示すトーン数
  |├ バンクに含まれるVAGの数を示すVAG数
  |├ マスタボリュームの設定レベルを示すマスターボリューム(mvol)
  |├ マスタパンレベルの設定を示すマスタパンレベル(pan)
  |└ 等など
  |
  |

713SOUND TEST :774:2009/05/29(金) 19:43:38 ID:s4zzO9hy
  ├[2] プログラムヘッダ
  | ├ プログラム(0)
  | ├ プログラム(1)
  | | ・・・
  | └ プログラム(n) 128個まで(つまり最大127)
  |  ├ プログラムに含まれるVAG属性の数を示すトーン(tone)
  |  ├ プログラムのマスターボリューム(vol)
  |  ├ プログラムの優先度(prior)
  |  ├ 音源のモード(mode)
  |  ├ プログラムのマスタパンレベル(pan)
  |  ├ プログラムの属性(attribute)
  |  ├ アドレス(address1、2)
  |  |
  |  ├ 使用するトーン属性(VAG属性)のID (0)
  |  ├ 使用するトーン属性(VAG属性)のID (1)
  |  | ・・・
  |  └ 使用するトーン属性(VAG属性)のID (n) 16個まで(つまり最大15)
  |
  |    ※トーンにより、波形を切り替えれる。(1プログラムで、最大16波形)
  |     例えば、音域で波形を切り替える等に使う。
  |     PlayStation標準のSEQの再生では、音域による波形切り替えになる
  |
714SOUND TEST :774:2009/05/29(金) 19:44:50 ID:s4zzO9hy
  ├[3] トーン属性テーブル(VAG属性テーブル)
  |  ├ トーン属性(VAG属性) (0)
  |  ├ トーン属性(VAG属性) (1)
  |  | ・・・
  |  └ トーン属性(VAG属性) (n)
  |    ├ VAG属性の優先度(prior)
  |    ├ ボリューム(vol)と、パンポット(pan)
  |    ├ 発音の中心となる音程であるセンターノート(crsc)
  |    ├ ピッチ補正を行なうためのファインチューニング(fine)
  |    ├ 発音の最小値及び最大値(min、max) (※波形を適用する音域)
  |    ├ ビブラートの幅及び1周期の時間(vibW、vibT)
  |    ├ ポルタメントの幅及び持続時間(porW、porT)
  |    ├ ピッチベンドの最小値及び最大値(pbmin、pbmax)
  |    ├ エンベロープの設定値(adsr1、2)
  |    ├ 当該VAG属性が含まれるプログラムの表示(program)
  |    └ 当該VAG属性が使用する波形データ(VAG)の識別情報(vag)
  |
  |
  |
  └[4] VAGオフセットテーブル
    ├ VAGの位置を示すvag offset (0)
    ├ VAGの位置を示すvag offset (1)
    | ・・・
    └ VAGの位置を示すvag offset (n) (最大255? 254?)
715SOUND TEST :774:2009/05/29(金) 19:53:50 ID:s4zzO9hy
ちなみに、特許公開番号は、特開平8−160958
ぐぐれば出てくる。
図とかはないから、文面だけで仕様を把握するのが大変だったが・・・
なんで、特許は、ああ読みにくいんだろう。


とりあえず、1曲で、これでいうVAB?(音色セット)が2つ使えるっぽい。
サウンドドライバー(smds)で固定されてる音色セットは、VAB ID=38
後は、曲毎に違うVABを1つロードできる感じ?

って推定した。

で、smdsデータを眺めてみたら、
0x0016番地に、0xFEコマンドで指定される数値と同じ数値が書いてある。
もしかしたら、これが、曲毎に読み込まれるVABのIDっぽい。

こういう推定で、smds2mml書いてみようと思う。
解析しながら、ソースもいじってたから、近いうちにアップできると思う。
716SOUND TEST :774:2009/05/29(金) 20:19:54 ID:s4zzO9hy
http://www1.axfc.net/uploader/Sc/so/5046.lzh

あ、暴走無しで一発で行けた。・・・3曲しか試してないけど。
MML2MID文法で、全46曲コンパイルできるのは確認。
多分、動く。

自分、曲知らないから音色定義できないんで、
このVersionで、定義ができるかどうか、検証してみて欲しい。



version 0.07 2009. 5.29
◆以下の機能に対応した
・音色バンクの切り替え。
 MML2MID出力時は、音色バンク毎に定義マクロを出力します。
・パーカッション情報を、MML出力に反映させるようにした。

version 0.06 2009. 5.27
◆以下の機能を実装した。
・音程・音量・パンポットのLFO(Low Freqency Oscillator)に対応。
 ※MML2MID文法で出力時のみの対応。
 ※Sakura文法での出力時は、非対応。
  Sakruaは、先行指定が1系統しかない為、パラメータの時間推移に使用。

717SOUND TEST :774:2009/05/29(金) 20:22:04 ID:s4zzO9hy
あ、パーカッションも、MML2MID文法なら定義しやすくなってるはず。
パーカッション構造体の意味が何となくわかったんで、対応してみた。
AKAO2MML(ロマサガ3以外)と、ほぼ同じやり方。
718SOUND TEST :774:2009/05/29(金) 20:33:27 ID:s4zzO9hy
で、サガフロの音色定義が終わってしまったんだ。

http://www1.axfc.net/uploader/Sc/so/5048.lzh

PASS : サウンドプログラマーの性を、半角4文字
音源 : SC8850推奨(ごめん。SC88Proに無い音色があったからSC8850使った。)
    まぁ、できる限り、SC88Proにある音色で作ってます。

抜き出しは、自分でやってくれ。
スライド辞書の解凍は、どっかのホームページにアップされてた。
別手段として、PSFから抜き出すって技もあるようで。

でも、男なら、ちゃんと ゲームのCD-ROMから抜き出すんだ!!
719SOUND TEST :774:2009/05/29(金) 20:36:02 ID:aGAL7EdY
Akaoがその典型的パターン。VB,VHに依存しない代わりに音域による音色パッチの
割付が行われている。つまりこう。#C0〜#C3迄がフルート。#C4〜#C6迄がストリングス
みたいな感じで。Akao Sample Waveの中に登録されていてシーケンス部ヘッダーID
で呼出しが行われている。一つのSample tableに2種類のWaveが登録されているのは
あまり数がないので検証するにあたって、それなりの根気とツールを要する。
後期型Akaoがそれ。効果音チャンネル部にもシーケンスデータを詰込み32チャンネル
フルに使用してる結果である。どちらかと言うと(その為)だけのドライバーと言っても
過言ではない手の込んだ作りになっている。
720SOUND TEST :774:2009/05/29(金) 20:50:30 ID:s4zzO9hy
>>719
FINAL FANTASY 8の"Force Your Way"とかがそうだったかな。
ディストーションギターと、何かを同じ音色番号で鳴らしてた記憶がある。

でも、主な使い道は、ピアノや、ストリングス系の表現に使ってた感じ。
ストリングスだけで、8個くらい波形使ってたような記憶がある。
低域〜高域の音色をそれぞれわけて、弦がなるべく自然に聞こえるようにしてた。

FF8は、ストリングスが中心だったけど、
FF9だと、ほとんどの音色で、音域毎に波形変えてて、
より、音楽が自然に聞こえるようになってた。


・・・なってたんだけど・・・SC88Proの音なんだよなぁ〜。
721SOUND TEST :774:2009/05/29(金) 21:50:42 ID:aGAL7EdY
後期型Akaoで作成された曲って殆どそう言う作りになってるんだよね。
上手く音と音の隙間を埋めて自然に聞こえる、聴かせる為のテクニックなんだよね。
話が少しズレたけど、smdsは初期型Akaoと後期型Akaoのちょうど中間的なドライバみたいだね。
入院中で詳しい資料持ってきてないからあまり詳しい情報は書けないんだけど・・・
722SOUND TEST :774:2009/05/29(金) 22:32:53 ID:1OkVHyzR
>>718
本当にありがとう
723SOUND TEST :774:2009/05/30(土) 03:59:25 ID:nBSM0ecw
マルチサンプリングはMSGSや携帯でも使われているごく普通のテクだと思うんだがなあ
724SOUND TEST :774:2009/05/30(土) 10:03:07 ID:rCVJ8muR
マルチサンプリングのテク話じゃないよ。音と音の隙間を同じ音じゃなく似た音で
違和感なくシットリ濡れた感じのイイ旋律に仕上げるテク話だよ。FF9あたりが
結構、充実してたんじゃないかな。初期型Akaoの方が案外ベタだったがアレはアレで
良い味だしてたんだよな。
725SOUND TEST :774:2009/05/30(土) 13:41:39 ID:fKUcrWuJ
>>724
日本語でおk
726SOUND TEST :774:2009/05/30(土) 15:37:42 ID:pBNcG9XA
確かに、マルチサンプリングなんだけど、
サウンドメモリが512kByteしかない中でマルチサンプリングやるんなら、
音程じゃなくて、ベロシティーでやって欲しかったな。

p(ピアノ)とか、f(フォルテ)って、一般人には音の大きさってイメージしか無いだろうけど、
実際はそうじゃなくて、『音色を変えろ』って音楽記号なんだよね。
pだったら、やさしくとか、きれいにとか
fだったら、力強くとか、鋭くとか。

低域と、高域で音色わけるんなら、
ヴァイオリンと、ヴィオラと、チェロと、コンバスにわけて、録音すれば良いんだし!!
727SOUND TEST :774:2009/05/30(土) 15:44:01 ID:pBNcG9XA
PlayStationがそう言う仕様なのか、ドラゴンクエスト8は、
音の強さ別に音色用意してたな。

明るい感じのペットと、軽い感じのペットと、重厚感あるペットとか、
弦も、ヴァイオリン、ビオラ、チェロ+コンバスでわけてた。
弦に至っては奏法別にある感じで、弦だけで、何個も音色番号使ってたな。

なにかのインタビューで、PS2のサウンドメモリが足りないとか言ってたけど、
そこまでやってるんだと、納得行った。
生オケには及ばないけど、オケっぽい仕上がりになってて、ゲームやったらビックリしたぜ。

728SOUND TEST :774:2009/05/30(土) 20:08:25 ID:rCVJ8muR
ドラクエ8はゲームから音楽データを抜出したモノがあるのでバイナリみて構造を
チョビッと見てみる。確かスタオーみたいに圧縮かかっていたから容易には取出せ
無かった筈。たしか専用ツールがあったと思うのだが・・・。圧縮を解けば普通に
ツールを使用すればMIDIに変換でけた。フォーマットはプレステ2標準フォーマット。
なので仕様書があれば解析自体容易です。
729SOUND TEST :774:2009/05/31(日) 14:23:34 ID:Iqu1CJ0H
スクエニ系から脱出出来ない俺って・・・ぷぎゃぁぁぁぁ〜〜〜〜っ!!
うぅっ・・・・シクシク・・・
730SOUND TEST :774:2009/05/31(日) 17:47:39 ID:RpEPnM9A
スタオーの解凍するのは分かったがそこで積んでる。
Stab何とかというザコ戦の曲がイントロのピックベースが
F#連打だから並んでるデータを見てるけどわからん。

半年くらいやってるのだがw
731SOUND TEST :774:2009/05/31(日) 20:04:51 ID:Iqu1CJ0H
俺もスタオーの解凍を試みたが挫折。解凍の仕方なんて皆目見当つかねぇよ。
いい解析研究の材料なんだがな。
732SOUND TEST :774:2009/06/01(月) 00:23:44 ID:DrJ9OyQl
解析は、経験値もものを言うのかな。兎に角、推定と検証の繰り返しかな。

一番確実な解析は、音源ドライバーを逆アセンブルして、
どういう処理をしているのか全部確認する事なんだけど、
データ眺めるだけでも、解ると思う。

予備知識として、MIDI規格1.0や、SMFの仕様を読んでみるのも良いかもしれない。
PlayStationの音源(SPU)の仕様も知っておいた方が良い。
ハードウェアと、SONY純正ライブラリの仕様も。

昔のゲーム音楽だと、GUIのシーケンサーじゃなくて、MMLで書く人が多いから、
一回、MMLでの打ち込みをやってみるのもいいんじゃない?
Sakuraよりは、昔チックなMML2MIDの使い方を覚えるのも良いかも。
今までの解析経験上、独自フォーマットの場合、
MMLからコンパイルしたようなデータ構造が凄い多い。
特に、x68k, PC88, PC98のFM音源から流れてきている作曲家やプログラマーは、そうだと思う。

SPCやPS1時代のAKAO、smdsなんかは、すごいMMLちっくなフォーマット。
まぁ、smdsは、SMFで最初作って、MMLに逆コンパイルして、そこにまた命令追加して、smdsにコンパイルしたって感じのデータだが。
HOSAは、SMFからコンバートした感じ。
733SOUND TEST :774:2009/06/01(月) 02:19:34 ID:SpsspfKk
miniusfをSMFに変換するツールくれ
734SOUND TEST :774:2009/06/01(月) 05:57:06 ID:1PwoFpxz
悪いが、そんなツールは存在しない。USFにご執心な方からのアクションをじっと
待つしかないです。だいぶんマリオ系の解析が進んでるようですが。
PSF 同様、独自フォーマットが多いようですからかなり時間はかかると思いますよ。
何か自分で気に入ったタイトルがあれば解析してその情報を先駆者の方に送れば
変換ルーチン位、書いてくれるかも知れません。とにかく頑張って下さい!!
735SOUND TEST :774:2009/06/02(火) 21:12:02 ID:dhbYUtAQ
やっぱりスタオーの圧縮解く方法わかんねぇ。

投げた。一年間悩んで損した。
736SOUND TEST :774:2009/06/02(火) 21:33:06 ID:NH5qq8r3
スライド辞書なんじゃないの?
PlayStaion関係の仕事してる友人が、
処理能力的にそんな高度な圧縮とか暗号とか出来ないって言ってたから
多分、スライド辞書あたりだと思うぞ。

ハフマン符号も、まぁ難しくは無いけど、
CD-ROMから読み出して解凍は、プレイヤーのストレスがたまるだろうし、
CD-ROMから読み込みながらリアルタイムで解凍できるスライド辞書だと思う。
737SOUND TEST :774:2009/06/02(火) 22:15:53 ID:dhbYUtAQ
そう思って色々試したが無意味ですた。かなり特殊な事をやっているんだと思ふ。
738SOUND TEST :774:2009/06/03(水) 12:44:57 ID:UVmYehiG
解凍できれば何とかなりそうな気もするんだけどね。
SMFから変換してるような気がするから、データの並びとか見れば。
739SOUND TEST :774:2009/06/03(水) 14:17:43 ID:oyV4wUKU
俺からすれば解凍が一番のネックだな。
740SOUND TEST :774:2009/06/04(木) 15:45:25 ID:tq0aPAVB
スタオーは後にしてゼノの音色定義を皆で協力して完成させようじゃないか。
少し判った事をひとつ・・・
01: トロンボーン
02: トランペット
03: ホルン
04: ストリングス
05: ベース
06: ハープ ティンパニ
07: --拡張・純正バラバラ
08: --上に同じ
09: ティンパニ

みたいな。
741SOUND TEST :774:2009/06/04(木) 21:54:57 ID:GdUw/m5M
>>740
VAB?のID番号も気にした方が良いと思う。
MML2MID仕様で吐いたら、そのまま、コメントアウトでID番号書いてある。
Sakura仕様で吐いたときは、instrument()関数の引数で、
1つ目が音色番号
2つ目がVABのID。
つまり、

 Instrument(9,50);

だった場合、VABのID=50番の、音色番号9の音色を使うって意味。



といっても、まだ想定の段階だから、もしかしたら不都合が出てくるかもしれない。
なんで、SMFにコンパイルする前に、MML側に吐かれている数値を見た方が良いと思う。
SMFへコンパイルすると、VABのID番号の情報はSMFには行かないんで。
742SOUND TEST :774:2009/06/04(木) 22:00:47 ID:GdUw/m5M
とりあえず、LFOに対応しているMML2MIDの文法で吐く方がおすすめ。
MMLの一番下で、音色定義できるんで、検証しやすいと思う。

$0a $0z y100,2 y101,0 y6,64 H0,0 @3 _0 ; VAB_ID = 53
$1a $0z y100,2 y101,0 y6,64 H0,0 @7 _0 ; VAB_ID = 53
$2a $0z y100,2 y101,0 y6,64 H0,0 @1 _0 ; VAB_ID = 53
$3a $0z y100,2 y101,0 y6,64 H0,0 @8 _0 ; VAB_ID = 53
$4a $0z y100,2 y101,0 y6,64 H0,0 @1 _0 ; VAB_ID = 38
$5a $0z y100,2 y101,0 y6,64 H0,0 @2 _0 ; VAB_ID = 53
$6a $0z y100,2 y101,0 y6,64 H0,0 @3 _0 ; VAB_ID = 38
$7a $0z y100,2 y101,0 y6,64 H0,0 @4 _0 ; VAB_ID = 38
$8a $0z y100,2 y101,0 y6,64 H0,0 @5 _0 ; VAB_ID = 38
$9a $0z y100,2 y101,0 y6,64 H0,0 @2 _0 ; VAB_ID = 38
$0b $0z y100,2 y101,0 y6,64 H0,0 @9 _0 ; VAB_ID = 38
$1b $0z y100,2 y101,0 y6,64 H0,0 @5 _0 ; VAB_ID = 53
$2b $0z y100,2 y101,0 y6,64 H0,0 @6 _0 ; VAB_ID = 53
$3b $0z y100,2 y101,0 y6,64 H0,0 @6 _0 ; VAB_ID = 38
$4b $0z y100,2 y101,0 y6,64 H0,0 @10 _0 ; VAB_ID = 38

こんな感じで吐く。
@が音色番号で、これはsmdsで指定されている番号と同じ値を吐いてる。
で、一番最後に、コメントアウトしてVABのID番号を書いているんで、参考にして欲しい。
743SOUND TEST :774:2009/06/06(土) 15:14:00 ID:zHreugsX
http://www.mediafire.com/?je2ztnytdzz 糞ですが、どうぞ。 -作者より
744SOUND TEST :774:2009/06/06(土) 15:21:20 ID:zHreugsX
745SOUND TEST :774:2009/06/06(土) 18:59:45 ID:FJc7gnPg
↑ウイルスバスターが反応したけど何?
746SOUND TEST :774:2009/06/06(土) 19:18:44 ID:xtT3RXwG
>>744
いただきました
どうもありがとうございます

>>745
vg*tr**s
747SOUND TEST :774:2009/06/06(土) 19:39:23 ID:WOTNJB4u
俺がうっぷする時は、大抵改訂履歴書くだろうから、ウィルスだったら注意しる。
で、きっと、たぶん、おそらく、その後に、だらだら長文の書き込みが色々と・・・

748SOUND TEST :774:2009/06/06(土) 20:25:16 ID:WOTNJB4u
おぉ、VGMとらんすってやつか!!
akao2mml, smds2mml, hosa2mmlの作者です。
自分が作ったのは、VGMの開発とかで、自由に使ってください。
何か質問等あれば、自分まで。

I'm maker of "akao2mml" and "smds2mml".
We analysis akao and smds format, too.
I want to use it to the development of your application.
If you have any quenstion, plz contact me.



[1] AKAO2MML Version 2.01 (for MML2MID)
http://www1.axfc.net/uploader/Sc/so/7012.lzh
PASS:akao

[2] SMDS2MML (for Sakura & MML2MID)
>>716

[3] HOSA2MML (Dew Prism) (for Sakura)
>>661



-sakura ttp://oto.chu.jp/
-MML2MId ttp://www.vector.co.jp/soft/win95/art/se112068.html
749SOUND TEST :774:2009/06/06(土) 20:28:29 ID:WOTNJB4u
Sooooooooooooooooooooooooooooooooorrrrrrrrrrrrrrrrrrrrrrry

http://www1.axfc.net/uploader/Sc/so/7017.lzh

750SOUND TEST :774:2009/06/06(土) 20:48:24 ID:WOTNJB4u
あ、そうそう。頂きました。ありがとうございます。

I dowmload >>744.
Thank you very mush for yor up-load.
I will use it.
I very very wanted to it.
751SOUND TEST :774:2009/06/06(土) 21:37:28 ID:zHreugsX
どうぞ。Please use it. That's why I released the source.
I'm glad you find it useful =).
752SOUND TEST :774:2009/06/06(土) 21:43:09 ID:zHreugsX
>>748
Re: AKAO2MML etc. - ASM? You must be a masochist ;).
753SOUND TEST :774:2009/06/06(土) 22:18:43 ID:WOTNJB4u
マゾ!?
C/C++は最近勉強したばっかりで、実はあんまり使えない。
本職は論理回路屋なんで、アセンブラの方が得意。
でも、smdsとhosaは、C/C++で作ってありますよ。

m, masochist !?
I understand a little C/C++. I study C/C++ recently.
I am logic device engineer. therefore, always, I use assembler.
smds and hosa made C/C++. (win32)
754SOUND TEST :774:2009/06/06(土) 22:35:42 ID:zHreugsX
Just teasing you =) Assembler is much more difficult than C!
755SOUND TEST :774:2009/06/06(土) 22:52:21 ID:WOTNJB4u
Assember is defference sure.

I forgeted to write password about smds and hosa.
It is as follwos.

[2] SMDS2MML (for Sakura & MML2MID)
>>716
PASS : smds

[3] HOSA2MML (Dew Prism) (for Sakura)
>>661
PASS : hosa
756SOUND TEST :774:2009/06/06(土) 22:53:38 ID:WOTNJB4u
difference → difficult

My english is poor. sorry.
757SOUND TEST :774:2009/06/06(土) 23:01:46 ID:WOTNJB4u
英語って難しいな。
文法は解るから、解らない単語があったら辞書ひけば意味は解るんだけど…
758SOUND TEST :774:2009/06/06(土) 23:48:28 ID:WOTNJB4u
about unknown in "AkaoSeq.cpp"

A0   : End of Channel
A2 n1  : length of next note [ticks]
AD n1  :Hardware ADSR envlope - Atack Level
AE n1  :Hardware ADSR envlope - Decay Level
AF n1  :Hardware ADSR envlope - Sustain Level
B0 n1  :Hardware ADSR envlope -
B1 n1  :Hardware ADSR envlope -
B2 n1 :Hardware ADSR envlope -
B3    :Hardware ADSR envlope - return to default

---
B4-B7  LFO Pitch
B8-BB  LFO Expression
BC-BF  LFO Panpot

B4,B8 n1 n2 n3
BC n2 n3
 n1 delay from note-on to LFO start. [ticks]
 n2 unknown
 n3 length of LFO [ticks]

B5,B9,BD   :depth of LFO
B6,BA,BE   :stop of LFO
B7,BB,BC n1  :unknown

---
C0 n1   transepose
C1 n2   transepose add

C8   repeat start
C9 n1  repeat end (n1 = repeat times)
CA   repeat end (repeat time = 2[times])

CC   :slur on
CD   :slur off

DD n1-n2  :LFO time [ticks] (pitch)
DE n1-n2  :LFO time [ticks] (Expression)
DF n1-n2  :LFO time [ticks] (Panpot)

---
FE06 n1-n2   jump

FE07 n1 n2 n3  conditional jump
 n1 unknown (condition?)
  n2-n3 jump address

FE09 n1 n2 n3  conditional jump in repeat (C8 - C9, CA command)
 n1 condition (repeat times)
  n2-n3 jump address

FE15 n1 n2   beat (Rhythm)
  n1 / (192÷n2) beat.

FF16 n1 n2   measure (bar)
  n2 × 256 + n1 [measure]
759SOUND TEST :774:2009/06/07(日) 00:08:21 ID:drwF+K5I
ってAKAOばっかりだったけど、ファルコム音楽フリー宣言記念。
ファルコム様の英断に超感謝!!!

PC98おしいれから出して、イースとか録音しまくるか!?
760SOUND TEST :774:2009/06/07(日) 01:07:10 ID:fDbQw+6W
>>756 Your english is good. I understand you perfectly well, and I greatly appreciate it.
>>757 わかった. I wish I could say the same. I hardly understand Japanese.

>>758
Wow. A lot of information here. Thank you very much!

I was unaware of the LFO. What a pain.
I would ask you the details, but I don't think I'll be adding support for it at the moment.
In fact, I'm not really working VGMTrans right now. I may fix some simple things though.

I am confused about FF16 (measure). Can you explain?
761SOUND TEST :774:2009/06/07(日) 01:43:10 ID:drwF+K5I
> I am confused about FF16 (measure). Can you explain?

Sorry. FE 16.
ごめんなさい。FE 16 でした。

This is rehearsal number. (measure number)
In the music playing, it is unrelated.
これは小節番号(練習番号)で、演奏上は関係しないです。

It is the same meaning as the number written on the bar of the score.
楽譜の小節線の上に書かれる数字と同じ意味です。
762SOUND TEST :774:2009/06/07(日) 01:54:49 ID:drwF+K5I
まぁ、楽器演奏上は絶対必要なんだけど。
Well, in playing instrument though it is an absolute necessity.

指揮者 『じゃ、木管。354小節から』
Conductor > " Wood! from 354. "

俺   硬直 (どこだよ?)
I > play stop. ( I think " where? " )

指揮者ににらまれる。
Conductor : "......" lol

763SOUND TEST :774:2009/06/07(日) 02:13:48 ID:fDbQw+6W
面白い. I do not believe MIDI even supports such markup (I might be wrong),
so I am surprised it is part of the format. I know that Time Signature
is included in some formats (Square's PS2 format, for example), which also
has no bearing on playback. But Time Signature is at least present in MIDI.
764SOUND TEST :774:2009/06/07(日) 02:20:12 ID:fDbQw+6W
To be clear, I understand that FE 15 is Time Signature in this format. Thank you for providing that information.
765SOUND TEST :774:2009/06/07(日) 03:04:54 ID:drwF+K5I
no problem.
If you have any qestion about smds, hosa and first version's akao, I will give the answer, too.

First akao resemble late version's akao.
A difference is as follow.

(1) header
0x0000-0x0003 "AKAO" strings
0x0004-0x0005 serial ID number
0x0006-0x0007 file size
0x0008-0x0009 unknown
0x000A-0x000F time stamp
0x0010-0x0013 number of tracks (of true bits)
0x0014- pointer of music track

(2) 0xE0 〜 0xFF command
E8 n1-n2 : tempo
E9 n1 n2-n3 : tempo move
EA n1-n2 : Reverb depth
EB n1-n2 : Percussion On (n1-n2 is pointer to percussion struct)
EC n1 n2-n3 : Reverb depth move
ED : Percussion Off
EF n1 n2 n3 : unknown
F0 n1 n2-n3 : conditional jump in repeat. (in C8 - C9, CA command)
F1 n1 n2 n3 : unknown
F2 n1 : Instrument (Don't set Atack-Rate of ADSR envelop)
FC n1-n2 : Instrument (n1-n2 is pointer to Instrument struct)
FD n1 n2 : Time Signature
FE n1-n2 : rehearsal number. (measure number)

(3) Percussion struct
This is 5[Byte] * 12[note(C, Cis, D, ... , H)] = 60[Byte].
  [0] : Instrument number
[1] : Note number (60 is o5 C )
  [2] : unknown
  [3] : volume
  [4] : panpot
766SOUND TEST :774:2009/06/07(日) 03:07:00 ID:drwF+K5I
[Amendment]
EB n1 n2-n3 : Reverb depth move
EC n1-n2 : Percussion On (n1-n2 is pointer to percussion struct)
767SOUND TEST :774:2009/06/07(日) 03:22:21 ID:drwF+K5I
お休みなさい。
明日、オーボエれっすんだyp。
寝ないと。

Good night.
I go bed.
tomorrow, I take lesson in oboe...
768SOUND TEST :774:2009/06/08(月) 20:49:52 ID:8bnvaIb5
I look "FFT.cpp" of the VGM. (smds format)
Command that i known is as follows.

A2 n1 n2 :Tempo sweep (n1=sweep-time[ticks] / n2=tempo*256/218 [bpm])
AD n1    :unknown
AE      :Percussion On
AF      :Percussion Off
B0      :Slur On ?
B1      :Slur Off ?
B8 n1 n2 n3 :unknown
BA      :Reverb On ?    
BB      :Reverb Off ?
C0      :Envelop Reset to default of "VAB" instrument.
C2 n1    :Atack Rate?
C4 n1    :Sustain Rate?
C5 n1    :Release Rate?
C9 n1    :Decay Rate?
CA n1    :Sustain Level?

D2 n1    :detune?
D4 n1 n2   :portamento (n1=sweep-time[ticks] / n2 * 100 [cent])
D6 n1    :unknown
D7 n1    :LFO depth of pitchbend
D8 n1 n2 n3 :LFO length of pitchbend
D9 n1 n2 n3 :LFO ?

E0 n1    :Expression
E1 n1    :unknown
E2 n1 n2   :Expression sweep (n1=sweep-time[ticks] / n2=sweep value)
E3 n1    :LFO depth of Expression
E4 n1 n2 n3 :LFO length of Expression
E5 n1 n2 n3 :LFO ?

E8 n1    :Panpot
E9 n1    :unknown
EA n1 n2   :Panpotsweep (n1=sweep-time[ticks] / n2=sweep value)
EB n1    :LFO depth of Panpot
EC n1 n2 n3 :LFO length of Panpot
ED n1 n2 n3 :LFO ?

F8 n1 n2 n3 :unknown
F9 n1 n2   :unknown
FB n1    :unknown
FC n1 n2   :unknown
FD n1    :unknown
FE n1    :Select "VAB" instrument set. (n1 = ID of VAB)
769SOUND TEST :774:2009/06/08(月) 21:08:39 ID:8bnvaIb5
--------------
About the LFO
--------------
parameter of 0xD8, 0xE4, 0xEC commands.
n1 = length from "LFO start" to "LFO of vibration is max".
 n2 = cycle of LFO
 n3 = length from "Note-On" to "LFO start".


--------------
About the Percussion
--------------
About the address 0x0020 of "smds" format header,
it is 16bit-pointer of Percussion struct.

Percussion struct is 5[Byte] × n.
[0] Indicated note number in the track data. ( 60 is o5 C(Do) )
[1] Sounded instrument number.
[2] Sounded note number. ( 60 is o5 C(Do) )
[3] Sounded volume ?
[4] Sounded panpot ?

I think that the End of struct is start address of Track 1.
770SOUND TEST :774:2009/06/08(月) 21:17:26 ID:8bnvaIb5
日本語ではさんざんスレに書いてる内容なんで、特に書かないで良いよね。

VGMトランスの今後の発展に期待。
まぁ・・・最近はいじってないって書いてあったけど。

We hope become prosperous (development?) of your VGMtrans.
thank you.
771SOUND TEST :774:2009/06/08(月) 22:34:47 ID:rnGYp3Hy
Thank you for translating all of your information on these formats into English.
There is certainly a lot of info here!

Perhaps in my free time I will integrate your work into VGMTrans.
But I do not have much free time at the moment.
VGMTrans' dependency on DirectMusic is a problem, because it is a dead
library, and it has limitations (no dynamic ADSR changing, no Sustain Rate,
no vibrato, bank switching seems broken, etc)
Therefore, in the future, I might work on an alternative software
synthesizer to DirectMusic. Perhaps even an alternative format to DLS.
But I don't have time right now =(.

However, you are free to do whatever you want with the code. I apologize that is so messy.
772SOUND TEST :774:2009/06/08(月) 22:43:55 ID:rnGYp3Hy
Lack of dynamic ADSR changing kills playback of smds/dwds
and several other formats that depend on it.
Lack of program bank switching also kills smds/dwds and QSound playback.
It is quite frustrating to depend on DirectMusic. However, you seem
primarily interested in conversion to midi/mml, which this does not
impact.
773SOUND TEST :774:2009/06/08(月) 22:52:50 ID:8bnvaIb5
I see.


>>771の概役(Japanese translation)
これらの情報を空き時間にVGMtransに実装しようと思うけど、今、暇が無い。
VGMtransは、DirectMusicが死んでいるライブラリなのと、その制約から、DirectMusicとの依存性が問題になってる。
(ADSRや、ビブラートや、バンクセレクトができない。)
なんで、今後、DirectMusicの代替になるソフトウェアでやるかもしれない。
多分、DLSと同等の替わりのフォーマットで。
けど、時間がねぇ。
しかし、コード付けたんで、自由になんでもして欲しい。 (という意味だと思う。)
すごい乱雑なコードで済まないが。
774SOUND TEST :774:2009/06/08(月) 23:10:54 ID:8bnvaIb5
> However, you seem primarily interested in conversion to midi/mml, which this does not impact.

This BBS title is "Convert from Game-Music's original formar to SMF(Standard MIDI File)"  =)


775SOUND TEST :774:2009/06/08(月) 23:11:09 ID:rnGYp3Hy
概役はどうもありがとうございます. Sorry for the length.
776SOUND TEST :774:2009/06/08(月) 23:13:29 ID:rnGYp3Hy
> "Convert from Game-Music's original formar to SMF(Standard MIDI File)"
I thought so... I'm ranting to myself, it appears. ;)
777SOUND TEST :774:2009/06/09(火) 00:09:31 ID:aY8DTE9R
っ Timidity++ + SoundFont
778SOUND TEST :774:2009/06/09(火) 01:52:54 ID:tyCXj1ra
そういえばさ、akao2mmlとかで吐いた曲を、
DLSとかの抜き出した音色で聴いた時って、曲のバランスどうなの?

akao2mmlって、元々のを作ったのて9年くらい前だし
その頃、DLSとかSound fontっていうのを全然知らなくて、
(MMLをPC98のFPDに移植するのは考慮して、mml2mid採用してたけど)
VolumeとかExpressionの係数、Roland SC88Proで調整してるんよ。

smds2mmlとか、hosa2mmlも、全然dlsとか考慮に入れてない。
本当に、ハードウェアのMIDI音源で聞くことだけを想定して設計してるから…
というか、DLSっていうのを作って、それで聞く方法すら知らないデス。
今度、調べてみようかな。
サウンドボードとか必要?
779SOUND TEST :774:2009/06/09(火) 02:00:03 ID:tyCXj1ra
あーakao2mmlで吐いたのじゃ、抜き出した音色データ使えないかも。
後期AKAOだと、曲データ側でマルチサンプリングっぽい事してるけど、
その辺、吐くMMLに反映させてないわ。
吐くMML側で、音程で音色番号切り替えないと駄目か。

初期AKAOとsmdsのパーカッションの出力は、ちゃんとその処理入れたけど・・・

780SOUND TEST :774:2009/06/09(火) 03:19:33 ID:tyCXj1ra
おおおおお?DLSつくってみて遊んでたんだ。
後期AKAOにおけるVGMtransのある仕様を発見した。

後期AKAOは、3つの音色命令がある。
 (1) 0xFE-14 (Multi sampling instrument)
 (2) 0xA1  (Single sampling instrument)
 (3) 0xFE-04 Pearcussion

VGMtransは、それぞれの音色番号がかぶらないようになってる。
(1)は、指定された番号を、そのまま出力。
(2)は、(1)で使った音色番号の数だけ加算して出力
(3)は、音色番号127 (MIDIだと128)

で、DLSを吐いたときも、その通りの音色番号のDLSが作られるっぽい。


音色番号を、その仕様で吐くオプションスイッチでも作るか!!
akao2mmlの後期Versionで。
781SOUND TEST :774:2009/06/09(火) 07:17:45 ID:B8Cnh735
>>74>>753
ソフトよりハードに近いのかな??
よく分からないけど、素人から見たらプロフェッショナルに違いないっす。
782名無しさん@お腹いっぱい。:2009/06/09(火) 17:12:27 ID:frJybCUt
久しぶりに来たら何だか凄い事になってる!!!
長い沈黙を破ってVGMTransの登場とはww
しかも、ソースコード付き!!
これはマジ凄いww
ってか、中身をそっと覗くと色々なフォーマット♪♪
FFTってのがあったけど、あれってSMDSなんだよね。でも
変換出来なかったのが残念無念にゃのよんww
783SOUND TEST :774:2009/06/09(火) 22:50:08 ID:tyCXj1ra
多分FFTしか想定していないんだと思う。
Xenogears認識しなかった。

C++ソースせっかく付けてくれてるし、
自由にいじってくれって言ってるから
ちょっといじれば行けるんじゃないかな?
俺も、土日にでも、C++ソースいじってみようと思う。
いじってアップすると、作者様が喜ぶかも。

>>781
本職ハード屋。
784SOUND TEST :774:2009/06/09(火) 23:18:01 ID:tyCXj1ra
むきーーーー

Visual C++.net 2008 Express Editionじゃビルド出来ねぇ。 → VGMtrans
Visual Studio.net 2003もってるには持ってるんだけど・・・
Windows Vistaじゃ使えないんだよな。TT
vistaで急に使えなくなったから、Express Editionで我慢してたのに買わないと駄目か…
785SOUND TEST :774:2009/06/09(火) 23:18:21 ID:cSWUvk6m
> いじってアップすると、作者様が喜ぶかも。
はい, 大丈夫です。 But I would appreciate it if you make your changes open source.
786SOUND TEST :774:2009/06/09(火) 23:20:21 ID:cSWUvk6m
>>784
You need ATL to use WTL. Visual C++.net 2008 Express Edition does not come with ATL. =(
787SOUND TEST :774:2009/06/09(火) 23:37:47 ID:tyCXj1ra
ttp://ysmt.blog21.fc2.com/blog-entry-244.html

こういう事か!!
と、調べていたら。

>>786
ありがとう! Thank you

now download WDK.
Visual C++高いんだよなぁ。なんでvistaで2003使えなくなるかなぁ。
788SOUND TEST :774:2009/06/09(火) 23:46:36 ID:cSWUvk6m
>>787
Good luck! Remember that you need an old DirectX SDK version (like April 2007).
789SOUND TEST :774:2009/06/09(火) 23:50:27 ID:cSWUvk6m
790SOUND TEST :774:2009/06/10(水) 00:29:41 ID:xbF9Y+zz
ちょっとした国際交流になってて笑った
2chで外国人書き込むことって少ないからなww
791SOUND TEST :774:2009/06/10(水) 01:10:54 ID:GoXouuoM
VC++.net 2008 Express わかんね。
だめだ。
XPに、VS.net 2003インストールするか・・・。

アセンブリ言語使いには、C++の複雑な機能がよくわかんねー。
792SOUND TEST :774:2009/06/10(水) 01:23:42 ID:GoXouuoM
解る人いたら教えて!


インストールしたのはこれ。
・Platform SDK Windows 2003 server (ttp://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en)
・WTL81_9127.zip


こんなエラー吐く。

1>プロジェクト 'VGMTrans'、構成 'Debug|Win32' の中間出力ファイルを削除しています。
1>コンパイルしています...
1>stdafx.cpp
1>c:\program files\microsoft platform sdk\include\atl\atlbase.h(5555) : error C2259: 'ATL::CRegObject' : 抽象クラスをインスタンス化できません。
1> 次のメンバが原因です:
1> 'HRESULT IUnknown::QueryInterface(const IID &,void **)' : は抽象型です
1> c:\program files\microsoft platform sdk\include\unknwn.h(113) : 'IUnknown::QueryInterface' の宣言を確認してください。
1> 'ULONG IUnknown::AddRef(void)' : は抽象型です
1> c:\program files\microsoft platform sdk\include\unknwn.h(117) : 'IUnknown::AddRef' の宣言を確認してください。
1> 'ULONG IUnknown::Release(void)' : は抽象型です
1> c:\program files\microsoft platform sdk\include\unknwn.h(119) : 'IUnknown::Release' の宣言を確認してください。
1>c:\program files\microsoft platform sdk\include\atl\atlbase.h(5613) : error C2259: 'ATL::CRegObject' : 抽象クラスをインスタンス化できません。
1> 次のメンバが原因です:
1> 'HRESULT IUnknown::QueryInterface(const IID &,void **)' : は抽象型です
1> c:\program files\microsoft platform sdk\include\unknwn.h(113) : 'IUnknown::QueryInterface' の宣言を確認してください。
1> 'ULONG IUnknown::AddRef(void)' : は抽象型です
1> c:\program files\microsoft platform sdk\include\unknwn.h(117) : 'IUnknown::AddRef' の宣言を確認してください。
1> 'ULONG IUnknown::Release(void)' : は抽象型です
1> c:\program files\microsoft platform sdk\include\unknwn.h(119) : 'IUnknown::Release' の宣言を確認してください。
1>Still need OleCreateFontIndirect()
1>c:\program files\microsoft platform sdk\include\mmreg.h : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
1>f:\akao\_tool\vgm\src\windows\stdafx.h(196) : fatal error C1083: include ファイルを開けません。'dsound.h': No such file or directory
1>ブラウザ情報ファイルを作成しています...
1>Microsoft Browse Information Maintenance Utility Version 9.00.30729
1>Copyright (C) Microsoft Corporation. All rights reserved.
1>BSCMAKE: error BK1506 : ファイル '.\Debug\CollDialog.sbr' を開けません。: No such file or directory
1>ビルドログは "file://f:\akao\_tool\VGM\src\Debug\BuildLog.htm" に保存されました。
1>VGMTrans - エラー 4、警告 1
793SOUND TEST :774:2009/06/10(水) 02:15:27 ID:KYZw8lEL
ごめん。解決方法を知りません。
Visual Studio 2010 Betaがあります、でも英語でだけ。
ttp://www.microsoft.com/japan/msdn/vstudio/2010/
すみません、日本語を書くことが苦手です。
794SOUND TEST :774:2009/06/10(水) 08:23:28 ID:CUVcUqKA
あー、あのー、自分もVisual Studio 2008 プロフェッショナルを入れてる
んだけど、同じ現象なのね。
DXSDK 4/07
WTL80
必要なヘッダーファイルをVGMTransのincludeに投入。
かなりイイところまで行くけどコンパイルでけない。
795SOUND TEST :774:2009/06/10(水) 11:08:56 ID:dQd8QSK0
VS2008ProならプロジェクトのプロパティでATLを動的リンクするように指定するだけ
Expressだとさらにatlthunk.libをどうにかしたりいろいろ
796SOUND TEST :774:2009/06/10(水) 17:07:48 ID:lAqthA/M
そんな事ないぞ? 何か原因あっての事だろうけどBuildできまへん!!
797SOUND TEST :774:2009/06/10(水) 17:55:34 ID:dQd8QSK0
VC2008EE + dxsdk9b + WTL80 + WS2003SP1DDK(ATL30)
VS2008PE + dxsdk9b + WTL80
どちらでも問題なくビルドできる
1.インクルード・ライブラリディレクトリの設定
2.VGMTransプロジェクトの全般プロパティの「ATLの使用」を「ATL に動的にリンク」に変更する
3.EEの場合追加の依存ファイルにShLwApi.Libを追加
798SOUND TEST :774:2009/06/10(水) 20:53:08 ID:lAqthA/M
恥をしのんで聞くのだがインクルードライブラリフォルダの設定とはインクルードフォルダを作って必要な
ヘッダーファイルを突っ込め。って意味なんだろうか?
799SOUND TEST :774:2009/06/10(水) 21:49:28 ID:dIB4sZZI
こちらはVS2008EEなのだが(ShLwApi.Lib)をどの部分に追加をすればよいのか?
800SOUND TEST :774:2009/06/10(水) 23:14:12 ID:GoXouuoM
http://www1.axfc.net/uploader/Sc/so/8112.lzh

DL key = akao


-----------------
revision
-----------------
version 2.02 2009. 6.10
◆FF8MML.COM
・VGMtransが出力するDLSの音色番号に併せるオプションスイッチを追加。
 I added option switch to the "ff8mml.com".
 This will be outputting the instrument number the same as VGMtrans.
  0xA1 指定値に、0xFE-0x14で使用された音色数を加算して出力。
  0xFE-0x04 @127を出力
  0xFE-0x14 指定値を出力(最大16個)
-----------------

せっかくVGMtransがあっぷされたんで、
VGMtanceが吐くDLSに、akao2mmlを対応させてみた。

command prompt に type as follows.

ff8mml /d2 filename.snd >filename.mml



とりあえず、数曲は試したけど、自分がもってるff8のminiPSFじゃよくわからんかった。
DLSが上手く吐けてない?
FF9は、まぁ、何となく、それっぽく演奏できてたけど、2ポート使えないから良く解らない。

2portのMIDIが使えて、and 2portともにDLSが使えるMIDI playerって無いかな?
今は、TW-Musicで試したけど。
801SOUND TEST :774:2009/06/10(水) 23:20:43 ID:GoXouuoM
>>793, 797
Thank you.
試してみる。
WDKのDownload終わってたんで、これからiso-imageをDVDに焼く!
上手くできたら、akaoとsmds関連の*.cppいじってみようと思う。

>>all
akao2mml使ってみて。 please try akao2mml.

802SOUND TEST :774:2009/06/11(木) 00:50:13 ID:+mXIFTTs
>>800
サウンドフォントだったらTiMidity++でいけるんだけどなぁ・・・
DLSとSF2の相互変換ができるソフトでなにかフリーのやつがあればいいんだけど
803SOUND TEST :774:2009/06/11(木) 01:30:47 ID:iR9AYNsz
16Track (1port) なら、TW-Musicがいい感じなんだけどなぁ。音質的に。
32Track (2port) 使えて、それなりの音質のSMFプレイヤーが無いと、
せっかくのVGMtransと、akao2mmlがあんま意味無いな・・・。

とりあえず、TW-musicで、port1も、port2も、Microsoft Synthesizer (default)に設定して遊んでる。
トラックがポート1とポート2でかぶっちゃうから、若干演奏変だけど。
804SOUND TEST :774:2009/06/11(木) 01:44:40 ID:iR9AYNsz
まぁいいや。使い方、研究してみて。
そして、こうして欲しいっていうのがあったら、書き込んでくれくれ。

例えば、誰かが、AKAOの音色をSF2に変換するの作った人がいて、
そのSF2の音色番号に合うように出力して欲しいとか。
そんときは、音色番号をどう並べているかの資料も欲しいが…。

805SOUND TEST :774:2009/06/11(木) 01:51:44 ID:iR9AYNsz
まぁ、・・・もしこれからSF2にするのを作る人がいたら、
>>800 に併せて欲しいけど・・・
書き換えるのめんどくせーし。

なんか、いい感じの、DLSが使えて、2ポート使えるMIDIプレイやあったら、
マジデ教えて!


話変わって。
In the akao2mml、"FF7"と"Saga Frontia 1"の音色定義(Insturument define)、最新版入れておいた。
Roland SC88Pro用。
88Pro持ってる人、その"define.mml"使ってcompileして遊んで。
XGに移植したい人は、適当にいじってくれて構わないです。
806SOUND TEST :774:2009/06/11(木) 10:41:34 ID:hOsMQE3p
>>798
ツール->オプション->プロジェクトおよびソリューション->VC++ディレクトリ->ディレクトリを表示するプロジェクト
(プロジェクトの構成プロパティでも設定できる)

>>799
ソリューションエクスプローラ->VGMTrans->プロパティ->構成プロパティ->リンカ->入力->追加の依存ファイル

あとExpressEditionでATL30を使う場合
ソリューションエクスプローラ->VGMTrans->プロパティ->構成プロパティ->C/C++->言語->for ループスコープの強制準拠
をいいえにしたかも
807SOUND TEST :774:2009/06/11(木) 16:23:30 ID:8c9ru/wh
>>806
色々サンクス。試してみる。
俺、初心者に限りなく近いからこうやって親切に教えていただけると非常に
有難いし助かる。
このスレにはイイ人ばかりで涙が出るよ!!
本当にアリガトーーーーーーーーーーーーーーーーーーーーーーーーーー!!
808SOUND TEST :774:2009/06/11(木) 22:31:26 ID:iR9AYNsz
ちょっと話ぶった切って済まない。

ゼノギアスのPS-XのEXEバイナリーを見て、
どのアドレスに何があるのかを調べてみた。
I analyze Xenogears's music data.
The following URL is address table of Xenogears's 's PS-X.EXE.

http://www1.axfc.net/uploader/Sc/so/8322.txt
( Pass = non )


この中に、以下の3つの音色バンク(音色セット)がありそう。
I think there are 3 Instrument bank in PS-X as follows.

 (1) ID = 0xFE (May, Program(Instrument) No.255 of Music sequence data. )
 (2) ID = 0x26 
 (3) ID = ---- (This is indicated by Music sequence data.)

(1)番は、多分、曲中で、音色番号 255 になってるやつだと思う。
  バイナリを見たところ、1つの音色しかはいってないっぽい。
  データに連続性があるから、三角波とか、矩形波とか、そういう単純な音色。
(2)番は、全曲共通で使われる、ドライバー固定の音色。
(3)番は、曲データ毎に、PlayStationにLoadされる音色。



自分は、PlayStationのAD-PCMを、DLSにconvertする方法知らないけど、
I don't know haw to convert from Playstation's AD-PCM to DLS, SF2.

とりあえず、ここまで調べてみたんで、誰か、DLSかSF2にconvertするの作ってみない?
But I analysis above document.
Does anyone, please make the convert to DLS or SF2.

809SOUND TEST :774:2009/06/11(木) 22:35:42 ID:iR9AYNsz
>>760
About the LFO. (smds and akao)

please see figure.
http://www1.axfc.net/uploader/Sc/so/8329.xls
(pass = non) ※ 無しね。

LFO's delay1, delay2, and cycle depend on playing tempo.
Because, about the LFO of akao and smds, it was programed by software (BGM driver).

About the ADSR, it is function of playstation's hardware (SPU).
Therefore, it don't depend on playing tempo.



-----------------------
About the smds's LFO
-----------------------
0xD7 n1  :LFO Depth of Pitch bend (depth = n1 × 32 ÷ pitch-bend-range )
0xE3 n1  :LFO Depth of Expression (depth = n1 )
0xEB n1  :LFO Depth of Panpot   (depth = n1 )


0xD8, 0xE4, 0xEC n1 n2 n3
  delay1 = n3 [ticks]
  delay2 = n1 [ticks]
  cycle = n2 × 2 [ticks]



-----------------------
About the akao's LFO
-----------------------
0xB3 n1  :LFO Depth of Pitch bend (depth = n1 × 32 ÷ pitch-bend-range )
0xB7 n1  :LFO Depth of Expression (depth = n1 )
0xBB n1  :LFO Depth of Panpot   (depth = n1 )


0xB4 n1 n2 n3 :LFO Pitch bend
0xB8 n1 n2 n3 :LFO Expression
0xBC n2 n3   :LFO Panpot
  delay1 = n1 [ticks]
  delay2 = unknown. ( I think that it is n2 [ticks] )
  cycle = n3 × 2 [ticks]

810SOUND TEST :774:2009/06/11(木) 22:39:31 ID:iR9AYNsz
おまけ。
smdsデータの読み方。
How to analyze of smds music data.

http://www1.axfc.net/uploader/Sc/so/8331.xls
( PASS = "smds" )


解析の参考にして。
811SOUND TEST :774:2009/06/11(木) 22:47:58 ID:iR9AYNsz
>>806
俺もサンクス。まじ助かる。

812SOUND TEST :774:2009/06/12(金) 02:43:38 ID:sFxJzHj+
SLZで昔画像吸い出すとき使った解凍コードをどうぞ
ttp://www.geocities.jp/scorpiozodiac03e7/slz.html
断片を覚えてる範囲で整理しておきました
曲吸い出せたら知らせて
813SOUND TEST :774:2009/06/12(金) 06:35:18 ID:Cw5Uy+CO
> 自分は、PlayStationのAD-PCMを、DLSにconvertする方法知らないけど、
> I don't know haw to convert from Playstation's AD-PCM to DLS, SF2.

For PlaysationのAD-PCM to WAV, see PSXSPU.cpp.
DLS and SF2 use WAV.
814SOUND TEST :774:2009/06/12(金) 06:37:29 ID:Cw5Uy+CO
And by WAV, I mean standard 16bit PCM.
815SOUND TEST :774:2009/06/12(金) 13:04:56 ID:7MyN+HVr
やっぱりVGMTransコンパイルできねーー

ガーン!!
816SOUND TEST :774:2009/06/12(金) 21:33:54 ID:A7b6qwu1
いけた。とりあえず、報告しておく。

◆インストール
Visual C++.net 2008 Express Edition SP1   
DirectX Software Development Kit 2007 April ttp://www.microsoft.com/downloads/details.aspx?familyid=86cf7fa2-e953-475c-abde-f016e4f7b61a
Windows Server 2003 Driver Development Kit  ttp://www.microsoft.com/japan/whdc/devtools/ddk/default.mspx
WTL81_9127.zip                ttp://sourceforge.net/

※これなら、いろいろなHPに書いてある、atl関係のヘッダーの編集は必要なかった。



◆設定
(1) インストールしたSDKやDDKの include や lib があるフォルダを、VC++.netに登録する。
  「ツール」 → 「オプション」 → 「プロジェクトおよびソリューション」 → 「VC++ ディレクトリ」
  ※ライブラリとかは、ちゃんと \i386 とか \x86 まで指定しておく。

(2) VGMtrans.slnのプロパティーを編集する。
  構成プロパティ
   ├全般
   | └ATLの使用 :  動的にリンクする。
   ├C/C++
   | └言語
   |   └ for ループスコープの強制準拠 : いいえ
   └リンカ
     └ 入力
        └ 追加の依存ファイル    に"ShLwApi.Lib"を追加


----------------
詳細は、以下参照

>>789
>>797
>>806

Very thank you!!
817SOUND TEST :774:2009/06/12(金) 22:55:08 ID:A7b6qwu1
コンパイルできたんで、VGMtransのakao関連のcpp修正してみた。
あんまり試してないけど、多分、幾らかのAKAOの変換がより正確にできるようになってると思う。
とりあえず、VC++.net 2008 Express でコンパイルできるのは確認できたんで、バイナリーのはアップしない。
I remake "AkaoSeq.cpp" of VGMtrans.

http://www1.axfc.net/uploader/Sc/so/8583.txt
PASS = "VGM"



smdsもやってみようと思ったんだけど、ゼノギアスの *.snd 読まなくて断念。
I try to re-make smds format, but VGMtrans can not read Xenogears's smds file.

この辺、どうなっているんだろう?
誰か、ゼノギアスのsmds読むの成功したら、ソースの修正点、教えて。

818SOUND TEST :774:2009/06/12(金) 23:05:42 ID:A7b6qwu1
あ、ちなみに、機能自体は追加してない。
流石に設計者じゃないんで、機能の実装は無理。
I can't add the new function.

コマンド(Op-Code)に対して、引数(Parameter)の数を合わせただけ。
バイナリーエディタ側には、そのバイナリーがなんなのかコメントされるようにしたけど、
MIDI出力には反映されてないはず。
I remake the quantity of parameter by op-code.
In the binary editor, VGMtrans will screen out the comment what function.

でも、引数の数をあわせたんで、
引数の不整合で上手く変換できなかった曲があった場合は、
できるようになっていると思う。
ただし、FF9のラスボスとか、無限ループのbreakをやってるのは除く。
819SOUND TEST :774:2009/06/12(金) 23:16:44 ID:A7b6qwu1
で、次はsmdsについて。
This witten is about smds.

PS-Xのバイナリをまた見てみた。
I see PS-X EXE binary.

FFTはどうなっているのか解らないので、smds全般に言及できるかは解らないが、
少なくても、ゼノギアスは、独特な事をやっているみたいです。
Analysis result is as follows.
 ・"VB"はあるんだけど、"VH"は無い。
   There are VB in the PS-X, but There are not VH.
 ・変わりに、"WDS"というformatがあって、この中に、独自ヘッダーと、
VBが入っている。
   Xenogears's PS-X have "WDS" data.
   It contain original header and VB.


なので、
 ・ WDSのヘッダーを、VH形式にコンバートする。
 ・ VBをWDSから抜き出す。
というソフトを作れば、DLSへの変換は出来そう。

パーカッション以外のマルチサンプリングはしていないっぽい。
May, There are not multi sampling voice except the pearcussion.

パーカッションのマルチサンプリングは、smds2mmlの方でデコードさせているんで、
WDSの音色番号の通りにDLSを作れれば、良い感じに鳴るとおもう。
About the pearcussion, smds2mml can decode muiti sampling to MML.
Therfore, may, We get good sound if we can make DLS as WDS's instrument number.

WDSのヘッダーは、波形のループポイントとか、オフセットアドレスとか、
ADSRエンベロープのパラメータとか、マスター音量とかが書いて有りそうなかんじ。
I think that WDS's header has as follows.
・AD-PCM start address ÷ 8
・AD-PCM loop point
・ADSR
・Master Volume
・etc..
820SOUND TEST :774:2009/06/12(金) 23:19:48 ID:A7b6qwu1
>>808
の解析結果も参照。
Zenogearsは、1つの曲で3つの音色セット(VB)が使えるって事になるみたい。
821SOUND TEST :774:2009/06/13(土) 06:19:06 ID:r+it+UFz
ライブラリ登録の事をもっと詳しく書いてはくれまいか? 後生です
822SOUND TEST :774:2009/06/13(土) 11:29:27 ID:FesHiBEa
>>821
ttp://freepg.fc2web.com/cpp/topic_vce_002.html

古い資料(VC++.net 2005時代)だからこのままするんじゃないぞ。
インクルードとか、ライブラリーの設定法は、この時代と変わらないから、参照。
823SOUND TEST :774:2009/06/13(土) 11:32:16 ID:FesHiBEa
で、VC使わない人は解らないだろうけど、コンパイルするときは、
CTRL + SHIFT + F7 でこっちでコンパイルした方が良い。
そのままF7押しても無理。
824SOUND TEST :774:2009/06/14(日) 22:01:52 ID:n0oT8TgV
あのさー、上の方にコンパイルの事書いてあって書かれている条件満たしてるんだが zrib が何たらとかで
一向にVGMTransがコンパイル出来ない。今の状態はこう。
☆VisualStudio2008professionalEdition
☆WTL81インストール。
☆DirectX SDK(上に書いてあったやつ)インストール。
☆Tool→Option→インクルード&ライブラリの設定
何が悪いのかわからない。
Projectのプロパティーの設定も出来てるし。

何故だーーーーーー!!
825SOUND TEST :774:2009/06/16(火) 19:39:03 ID:XXAdYc19
えっと、君は変な事してないかい? VS2008PEなら割合に簡単にコンパイルできるよ?
DirectXとWTLとインクルードとライブラリ登録だけ。余分なモノを登録したらZlib
をどうとかって求められるから最低限の登録を。
826SOUND TEST :774:2009/06/17(水) 09:58:03 ID:JHzn1q/J
zlib一式はsrc/zlib以下に入っていてVGMtrans.vcproj内で指定済みなので特に設定はいらない
VGMtransソースの展開に失敗したかVS自体が壊れているかのどちらか
827SOUND TEST :774:2009/06/17(水) 11:57:23 ID:3t6kB1ZV
>>826
乙。的確な答えだと思う。ところでVGMTransのソースファイルには沢山のフォーマット
が存在するが実際に使えるものは "akao ps2akao ps2 org nds Q_sound"位かな?
構成が判ればspc FFT ps1 gba とか色々詰込みたいが思いばかりで技術が伴ってない
何年かかるか分かんない。FFT.ccpに至っては変換式が殆ど出来上がってない希ガス。
828SOUND TEST :774:2009/06/17(水) 18:06:54 ID:IITRNMAA
同感。
FFT.ccpのバイナリ見る限りでは変換に至るまでの情報がないと思われる。
829SOUND TEST :774:2009/06/17(水) 18:16:49 ID:IITRNMAA
失礼。
バイナリじゃなかった。スマソ。
830SOUND TEST :774:2009/06/17(水) 22:58:08 ID:KbcQBSoE
smdsの読み込みは成功しそう。うまくいったら、ソースうっぷする。

smds2mmlの作者。
831SOUND TEST :774:2009/06/18(木) 01:27:53 ID:OV1lrUBe
http://www1.axfc.net/uploader/Sc/so/9976.lzh

PASS = "VGM"

--------------------------------
変更点 (Change point)
--------------------------------


[1] AKAO
--------
I remaked "AkaoSeq.cpp".

・拍子(Time signature)に対応させた。
・未解析コマンドに対して、引数の数を併せた。



[2] smds
--------
I remaked "FFT.cpp", "FFT.h", "FFTFormat.h" and "root.cpp".

・smdsファイルを読み込むようにした。("root.cpp"に追記。)
 (読み込まない設定になっていたのを解除)
・未解析コマンドに対して、引数の数を併せた。
 というか、それ以前に、"FFT.cpp"をかなり、書き直した。



"Scanner.cpp"は、変えてないハズだけど、タイムスタンプが新しくなってたんで、一応入れておいた。
I think that I do not change "*Scanner.cpp", but there is no positive.
832SOUND TEST :774:2009/06/18(木) 01:32:40 ID:OV1lrUBe
おまけ

http://www1.axfc.net/uploader/Sc/so/9977.snd
PASS = "smds"


デバッグ用に作った、smds形式のデータ。
This is smds data for debug.

1トラックに、休符が書かれているだけ。
It written rest in 1 track.


解析する人とか居たら、まぁ、適当に活用して。
833SOUND TEST :774:2009/06/18(木) 01:38:30 ID:OV1lrUBe
で、>>831 のremakeしたVGMTransだけど、
数曲でしかcheckしてないので、後のcheckは宜しく!!
Xenogearsの曲でしかcheckしてない。
とりあえず、PSFのままでも読み込むのは確認したんで、PSF食わせても大丈夫だとおもう。

HOSAもやろうとしたんだけど、0から作る技術力が俺には無かった。
hosa2mmlで我慢しる。

まぁ、内部構造解析すれば出来るとは思うんだけど、
コードが膨大すぎて、そこまで読む気力が無かった。
とりあえず、smdsを完成させれる程度には、コード読んだが…

でも、アセンブリ言語使いだから、コード読むのに手間取ったぜ。。。

コードに思いっきり日本語コメント書いたけど・・・良いのかな…。

834SOUND TEST :774:2009/06/18(木) 08:35:36 ID:W7WghiMS
日本語コメントを入れるときは駄目文字に注意
駄目な例
// 変換表
/*変換表*/
835SOUND TEST :774:2009/06/18(木) 10:49:18 ID:8O9G9UXt
I'm very glad to see others working on the source code. Thank you. =)
A friendly reminder:
please include the original readme.txt and license.txt file in the
future if you distribute the source code or binary.
836SOUND TEST :774:2009/06/18(木) 21:56:06 ID:OV1lrUBe
>>835
Ok. All right


>>834
駄目文字?
ぐぐってみた。
ttp://www.wdic.org/w/WDIC/%E3%81%A0%E3%82%81%E6%96%87%E5%AD%97
そうなんか。

こんなの、気をつけられねぇ〜。
なるたけ、英語でcommentした方が良いのか。
837SOUND TEST :774:2009/06/19(金) 03:15:19 ID:8suj0ryl
http://www1.axfc.net/uploader/Sc/so/10248.lzh
PASS = "VGM"

HOSAも読み込むようにしてみた。

#何故か、良く稀に、失敗したMIDIファイルが吐かれる。
 原因不明。
 PSFファイルから読んだときは、一発でアウトっぽい。
 "HOSA"の文字列がファイルの0x0000番地にあるデータを食わせて。
 1つのファイルをMIDI出力する毎に再起動が必要になってる。
 ちょっと、何故か解らない。
 もう、あきらめたんで、そう言うもんだと思って。
 
 それか、直せる人、ソース直して!!!
838SOUND TEST :774:2009/06/19(金) 05:46:23 ID:iyZexmdj
乙。その現象はVGMTransに実装する変換及び登録ルーチンが多過ぎるとなるみたい。
839SOUND TEST :774:2009/06/19(金) 05:56:34 ID:NNkygj8c
newしたままdeleteしてねー
840SOUND TEST :774:2009/06/19(金) 14:31:55 ID:wqQiXY/A
>>837
Nice work!
Can you explain the problem in English? I might be able to help.
841SOUND TEST :774:2009/06/19(金) 14:34:57 ID:wqQiXY/A
Also, to be clear, it is perfectly ok with me if you add your own
readme file in addition to mine.
842SOUND TEST :774:2009/06/19(金) 18:03:29 ID:6VYjUUto
>>840を日本語へ

>>837
とても良い仕事!
英語でこの問題を説明してもらえますか?私が助けてあげられるかもしれません
843SOUND TEST :774:2009/06/19(金) 21:39:11 ID:iyZexmdj
確かに環境にもよるけどVGMTransのDS版の時も同じ現象おきた。
844SOUND TEST :774:2009/06/19(金) 23:02:47 ID:8suj0ryl
>>840
This is english of >>837

-------
I confirmed that the outputted SMF(*.mid) has abnormality occasionally.
It's cause is not clear.
If VGMTrans read the PSF included HOSA-format, this failure case will occur.

Therefore, please read simple HOSA-format file.
I think that you will get successful at the first time.
However, after the second time, maybe you will get the abnormal SMF.
This time, please re-start VGMTrans.
845SOUND TEST :774:2009/06/19(金) 23:48:35 ID:8suj0ryl
>>839
確認してみたんだけど(I confiem)、

int HOSASeq::GetTrackPointers(void)
{
  for(int i=0; i<nNumTracks; i++)
    aTracks.push_back(new HOSATrack(this, GetShort(dwOffset+0x50+(i*2)) + dwOffset));
    //delect object is in "VGMSeq::~VGMSeq()"
  return true;
}

この辺は、基底クラス(supper class)のdestructorで、deleteしてた。

もうちょっと、ソース見てみる。

846SOUND TEST :774:2009/06/19(金) 23:51:20 ID:8suj0ryl
ちょーーーーーーーーーーーーーーーーーーーーーーーーーごめん。(Sorry)
Bugだった。

HOSATrack::HOSATrack(HOSASeq* parentFile, long offset, long length):
SeqTrack(parentFile, offset, length),
iDeltaTimeCom(0), //Default delta time for Command
iDeltaTimeNote(0), //Default delta time for Note
iLengthTimeNote(0), //Default length for Note
cVelocity(127), //Default velocity
cNoteNum(60) //Default Note Number

ってConstructorが"HOSA.cpp"にあるんだけど、これに

iDeltaTimeCounter(0), //Delta time counter

を追加(Add)して。
思いっきり、DeltaTimeのカウンターの初期化忘れてた。
847SOUND TEST :774:2009/06/19(金) 23:56:52 ID:8suj0ryl
PSFからのreadingでもうまくいった。(successful)

変数の初期化忘れてたのが原因だ。
About the cause of this failure, I forgot to initialize "iDeltaTimeCounter".

アハハハハ。
ちょっと、もうちょっと数曲で確認してから、アーカイブ作る。

848SOUND TEST :774:2009/06/20(土) 01:06:13 ID:7sCJSh+j
http://www1.axfc.net/uploader/Sc/so/10475.lzh

直したVersion. また、ソースなんで、ビルドは自分でして♪

2009. 6.20 (Sat)
[1] バグの原因がわかったので、対処。
変数の初期化忘れてたのが原因だった。
About the cause of this failure, I forgot to initialize "iDeltaTimeCounter".

[2] HOSAを設計する際に作った、"class.xls"を添付した。
当該ファイルは、一部のクラスについて、以下の図が書かれています。
 ・派生/継承(is-a)関係
 ・UMLクラス図(has-aの関係図)
設計したり、改造したりしたい人がいたら、参照して下さい。
※自分が解るように書いた物なので、厳密なクラス図じゃないです。(メモ書き程度)
849SOUND TEST :774:2009/06/20(土) 03:20:47 ID:PtKkt2HF
Btw
unsigned int HOSATrack::DecodeVariable()
Does the same thing as:
ULONG SeqTrack::ReadVarLen(ULONG& offset)
except there's no counter in ReadVarLen()

Also,
I have not analyzed the HOSA format very much, but it appears to me
that it is using duration values for its notes, not separate NoteOn/NoteOff
events.
VGMTrans has functionality to simplify implementation of these formats.
Look at SeqTrack::AddNoteByDur(). Many formats are like this, including
NDS, MP2K, QSound, etc.
Perhaps you can remove the code in the section titled:
"// [ Process of "Delta time" and "Note off Event" ]"
850SOUND TEST :774:2009/06/20(土) 04:51:45 ID:PtKkt2HF
Here:
http://www.mediafire.com/file/2zmn53wzmjt/HOSA.cpp

Changes marked with "// NEW"
I commented out obsolete code, in case something is wrong with my changes.
I also removed the fNoteOutput variable (forgot to remove iMinLengthCounter).

You can probably remove most of the DeltaTime-related variables in
Hosa.h, or make them local variables in Hosa.cpp.
851SOUND TEST :774:2009/06/20(土) 05:01:40 ID:PtKkt2HF
oops. line 308:
if (fNoteOutput != 0) -> if (cNoteNum != 0)

Actually, you can probably delete that line.
852SOUND TEST :774:2009/06/20(土) 14:26:39 ID:8WnJWSLs
とりあえず俺は
akao
nds
hosa
fft
ps1
SonyPS2
SquarePS2
MP2k(gba)
を読めるようにした。
KonamiGX
QSoundは曲やゲームを知らないので登録してない。
spc系はFormat.hがないので登録出来ない。
853SOUND TEST :774:2009/06/20(土) 15:52:02 ID:7sCJSh+j
http://www1.axfc.net/uploader/Sc/so/10610.lzh

2009. 6.20 (Sat)
[1] HOSA.cppを書き直した。
 ・スレ(http://schiphol.2ch.net/test/read.cgi/gamemusic/1226754407/)の、
  >>849-851に書かれた作者様の助言(advice)を適用(apply)。
 ・と、1xx01111<2> コマンドの引数は、0Byteっぽかったので、直した。
  I think that 1xx01111<2> command(op-code) have no parameter.
  Therfore, I remake it.


Thank you vert much.
854SOUND TEST :774:2009/06/20(土) 15:57:33 ID:7sCJSh+j
あ、root.cpp いじってる人いたら、また書き直すか、待避しておいて。
オリジナルから、smdsと、hosa追加してあるだけなんで。
855SOUND TEST :774:2009/06/20(土) 16:27:26 ID:8WnJWSLs
うp主さん、Hosaのピッチベンドとかの引数は確か未解明なんですよね?
856SOUND TEST :774:2009/06/20(土) 16:38:41 ID:Q9FMqPil
色々とVGMTransをつついているがQsoundとKonamiGXをRoot.ccpに登録した途端にビルド
出来なくなるのは何故なんだ?
857SOUND TEST :774:2009/06/20(土) 16:55:57 ID:PtKkt2HF
>>856
Qsound and KonamiGX are already enabled. They don't use Scanners.
They work through MAMELoader.

Put mame_roms.xml in the same directory as the exe (technically,
it's assumed to be in the working directory).

Be warned, KonamiGX is VERY early code.
It's basically useless in its current state.
858SOUND TEST :774:2009/06/20(土) 16:59:04 ID:PtKkt2HF
>>853
Glad you figured it out and cleaned up my changes. =)
859SOUND TEST :774:2009/06/20(土) 17:37:30 ID:Q9FMqPil
>>857
了解しました。
860SOUND TEST :774:2009/06/20(土) 23:09:49 ID:7sCJSh+j
HOSAって、Pitch bend messageあるのかな?
なんか、音色側でやってる気もしなくはない。
制御用のcommandが少なすぎるんだよね。HOSA

アルペジオとかも、音色側に、もうそういう音色を持たせているっぽい。
音色の抜き出しまでは作る気力無いんで、まぁ、それは、やりたい人作って。
861SOUND TEST :774:2009/06/22(月) 01:28:45 ID:KrZzQ6lK
久々に覗いてみたら何やら進展してるらしいことは見て取れるが
相変わらず文章の内容がサパーリだ

自分の無学さを呪うぜホントに(´・ω・`)
862SOUND TEST :774:2009/06/22(月) 08:04:42 ID:NbJiil2d
>>861
流れとはそういうものさ!
863SOUND TEST :774:2009/06/24(水) 11:04:24 ID:4PbQ4qkR
我が家の押入れから発掘した魍魎戦記MDARA2ってゲームをプレイしてたら
流れる音楽にドップリとハマり込んでしもた。midi変換したいと思ってる
けどフォーマットとかに関する資料や記述があるとこ知ってたら教えて
下さいまんにょ。
864SOUND TEST :774:2009/06/24(水) 11:54:25 ID:ieu5Rngd
865SOUND TEST :774:2009/06/24(水) 14:07:13 ID:4PbQ4qkR
>>864
あー、そういうのじゃなくてね、ここのうp主さんが作成されたような
ツールって意味なの。spc2midは昔からあったのは知ってた。うん。
魍魎戦記MDARA2のフォーマット情報とか欲しいわけ。いくらググっても
見つからないし。
866SOUND TEST :774:2009/06/24(水) 14:52:28 ID:FXB1Xopw
ほとんどのソフトが専用ドライバである点は旧機種においては共通しているが
特にSPCは鳴らすだけなら解析する必要が無いため解析があまり盛んではない
867SOUND TEST :774:2009/06/24(水) 17:23:48 ID:4PbQ4qkR
>>866
鳴らすんじゃなくてmidi変換なんだなーーーー。これが。
868SOUND TEST :774:2009/06/24(水) 17:37:34 ID:Ydjaq31A
レス900越えたら次スレたてますので宜しく。
二代目 内蔵音源をmidi変換するスレ 管理マン
869SOUND TEST :774:2009/06/24(水) 17:50:55 ID:ieu5Rngd
>>867 だからspc2midiでmidiファイルに変換できるんだが?
870SOUND TEST :774:2009/06/24(水) 17:51:10 ID:hn9hrA6d
次スレは3スレ目になるのは知ってる?
最初からいる人ならわかってるだろうけど念のため
871SOUND TEST :774:2009/06/24(水) 18:22:27 ID:Ydjaq31A
当然知ってますよ。初代スレはMIDIうp職人潰しで最悪だったな。
872SOUND TEST :774:2009/06/24(水) 18:46:35 ID:hn9hrA6d
そうでしたかすいません
それじゃテンプレ整理とか色々あるだろうけどよろしく
873SOUND TEST :774:2009/06/24(水) 22:25:01 ID:F4/mfBKm
VGMTrans 修正差分 6/24 version

http://www1.axfc.net/uploader/Sc/so/11815.lzh

2009. 6.24 (Wed)
[1] "smds"で使われる音色Bank"wds "形式を認識するようにした。
  "*.wav"は、吐けるようになったけど、DLSへの変換は出来なかった。
  どこを直せば良いんだろう?

[1] VGMTrans can read instrument bank "wds " which "smds" use.
  VGMTrans can output "*.wav" files.
  However, I can not re-make to output DLS file.
  Where should I fix?



■備考
"root.cpp" 中の
// AddScanner("PS1");
のコメントアウトを外すことで "VH" と "VB" を認識できますが、
"wds "フォーマットの中に入っている"VB"は、
ここをコメントアウトしたままでも認識するようになってます。
コメントアウトを外すと、二重に認識するかも。
コメントアウトをハズしたときの挙動は未確認です。

I do not know function when comment "//" mark is deleted.
874SOUND TEST :774:2009/06/24(水) 22:29:25 ID:F4/mfBKm
ちなみに、前回から変えているのは、
The changed source is as follows.

 ・ FFTFormat.h
 ・ FFTScanner.h
 ・ FFTScanner.cpp

追加したソースは、
Added source is as follows.
 ・ FFTInstr.h
 ・ FFTInstr.cpp



だったと思う。
875SOUND TEST :774:2009/06/24(水) 22:35:18 ID:hc9yh05c
>>863
要するにMADARA2のmidiが聴きたいってこったろ?
どっかのmidi職人にでも頼み込んで作って貰えば?
876SOUND TEST :774:2009/06/24(水) 22:41:27 ID:F4/mfBKm
original の VGMTrans から変えたsourceは全部入れてあるんで、
sourceを編集した人いたら注意。


>>86x あたりの流れ
そのまま楽譜に起こせるSMFが欲しいって事だと思う。
録音系のSMFだと、小節線が凄まじいことになるからね。
あの楽譜みて、演奏できたもんじゃないデス。

まぁ、聴くだけだったら、このスレ見る意味あんま無いかも。
自分は、楽譜が欲しいのもあるけど、最近、知的興味も大きいのかも。
でも、解析ばっかして、最近練習さぼっててヤバイ。師匠に怒られる。(TT
877SOUND TEST :774:2009/06/25(木) 00:12:14 ID:Uwz8T3GD
878SOUND TEST :774:2009/06/25(木) 07:33:26 ID:rZn9mm5o
>>871
もちろんそうなんだが、職人の切れて自演もまたきっかけで…
というのはやっぱ禁句か
879SOUND TEST :774:2009/06/25(木) 07:57:50 ID:9h73dUAw
>>878
今更、真相がどうのこうのって話はしても意味ないんじゃないの?
880SOUND TEST :774:2009/06/25(木) 08:17:48 ID:Zptwrpmq
なるほどね。
神!神!言ってる信者化した住人とうpによって正常な会話ができなくなった連中の対立か。
ダウンロードにありつけなかった信者がアンチ化して余計ややこしくしてるな

内蔵音源をmidi変換するスレ
http://makimo.to:8000/cgi-bin/ffind/ffind2.cgi?schiphol_gamemusic/1186/1186133804.html
881SOUND TEST :774:2009/06/25(木) 19:18:19 ID:CS86oWIi
>>873
I think I understand the confusion you are having. Bear with me,
this is going to get very long and technical =-/.

First, some background. There are generally two types of formats:
* Some use 3 file types: Sequence, Instrument set(s),
and Sample collection(s) (SonyPS1 and SonyPS2, for example).
* Others have only 2 types of files because they group the
Instrument set and Sample collection into one file (SquarePS2 and FFT).

VGMInstrSet::sampColl is the key to distinguish these two format types in VGMTrans:
* For Sequence/InstrSet/SampColl formats, you create and load all
3 files (by calling VGMFile::LoadVGMFile() for each).
VGMInstrSet::sampColl is left NULL.
* For Sequence/InstrSet formats, you only call LoadVGMFile() on the
sequence and instrset.
Create a SampColl in VGMInstrSet::GetHeaderInfo() then
set VGMInstrSet::sampColl to this sample collection.
In VGMInstrSet::Load() are the lines:
> if (sampColl)
> sampColl->Load();
so the sampColl will be go through the load cycle, but will not
be added as a separate "Detected" file.
Look at WD.cpp for an example of how to do this.

(When DLS conversion occurs, the VGMColl class will check if there
are any SampColls in the collection. (In VGMColl::MainDLSCreation())
If there are no SampColls in the collection, then the samples from
VGMInstrSet::sampColl are loaded.)
BTW, line 125 of VGMColl.cpp should have "else return;" inserted.

Let me know if you need help with creating VGMColls.

BTW, Xenogears uses the "wds " sig, but FFT uses "dwds".
I do not know if the formats are identical aside from that difference.
I used to have dwds conversion code, but have misplaced it.
However, I am confident the region data contains
DWORD ADSR1 and ADSR2 values for the PSX SPU.
PSXConvADSR<>() in PSXSPU.h will do the the ADSR conversion for you.
882SOUND TEST :774:2009/06/25(木) 22:28:16 ID:iTt4AnI2
>>881
Thank you for your infortmation.
I will try to re-make FFTInst.cpp.


とりあえず、翻訳(translation to JPN)。
流石に、この量は対訳サービス駆使した。

--------------------
私は、あなたが持っている混乱を理解していると思います。
私の話を我慢して聞いてください、そして、これは非常に長く技術的になるでしょう。

最初に、幾らかの予備知識として。一般に、2つの形式があります。
 ※ 幾らかは、シーケンス、音色、波形の3つの形式がある。(PS1, PS2 等)
 ※ 他の場合は2つの形式のファイルしかありません。(音色と波形を1つのファイルにするので。)

"VGMInstrSet::sampColl" クラスは、VGMTransでこれらの2つの形式タイプを区別するキーとなります。
 ※ Sequence, InstrSet, SampColl形式のために、全ての3個のファイルを作成して、ロードしなければならない。
   (つまり、それぞれの"VGMFile::LoadVGMFile()"関数を呼ぶ。)

しかし、FFTInst.cppでは、"VGMInstrSet::sampColl"が"NULL"の状態のままです。
  ※ SequenceとInstrSet用に、"Sequence"と"instrset"のLoadVGMFile()だけを呼んでます。

"VGMInstrSet::GetHeaderInfo()"関数でSampCollを作成して、で、
"VGMInstrSet::sampColl"を、このサンプルコレクションにセットしてください。

VGMInstrSet::Load()には、この行があります:
> if (sampColl)
> sampColl->Load();

それで、sampCollはLoad()を通るだろうが、別々の「検出された」ファイルとしては認識されない。
この方法の例は、WD.cppを見てください。

(DLS変換が起こるとき、VGMCollのクラスは、collectionで何かSampCollsがあるかをチェックするでしょう。(VGMColl::MainDLSCreation()関数で))
(もし、collectionにSampCollsがなかった場合、VGMInstrSet::sampCollからサンプルがloadされる。)
ところで、VGMColl.cppの125行は「else return;」が挿入されているはずです。

VGMCollsを作成するのに助けなければならないなら、私にお知らせください。



ところで、Xenogearsは"wds"sigを使用しますが、FFTは"dwds"を使用します。
私は、その違いは別として、形式が同じかどうか解らない。
dwdsの変換コードを持っていたが、それを置き違えました。
しかしながら、PSX SPUにおいて、regionデータがDWORD ADSR1とADSR2値を含むと確信しています。
PSXSPU.hのPSXConvADSR<>()関数はADSR変換をするでしょう。

883SOUND TEST :774:2009/06/25(木) 23:02:34 ID:iTt4AnI2
I have questions.

■Question (1)
"WdsInstrSet::GetHeaderInfo()" function in "FFTInst.cpp" have the following code.
> sampColl = new VabSampColl(rawfile, dwOffset + hdr.szHeader0);
I create the VabSampColl object, and I set the "VGMInstrSet::sampColl" member.

I do not understand miss point.



■Question (2)
I confirmed difference of class "VGMSampColl" Constructor between "WDSampColl" and "VabSampColl" as follows.

// **********
// WDSampColl
// **********

WDSampColl::WDSampColl(WDInstrSet* instrset, ULONG offset, ULONG length)
: VGMSampColl(SquarePS2Format::name, instrset->rawfile, instrset, offset, length)
{
}

// ***********
// VabSampColl
// ***********

VabSampColl::VabSampColl(RawFile* rawfile, ULONG offset)
: VGMSampColl(PS1Format::name, rawfile, offset), numSamps(0)
{
}

Please teach it's reason to me.
884SOUND TEST :774:2009/06/25(木) 23:22:02 ID:iTt4AnI2
ごめん。よくよく英語原文読んだら 882の翻訳間違えてる。


■誤
-----
最初に、幾らかの予備知識として。一般に、2つの形式があります。
 ※ 幾らかは、シーケンス、音色、波形の3つの形式がある。(PS1, PS2 等)
 ※ 他の場合は2つの形式のファイルしかありません。(音色と波形を1つのファイルにするので。)

"VGMInstrSet::sampColl" クラスは、VGMTransでこれらの2つの形式タイプを区別するキーとなります。
 ※ Sequence, InstrSet, SampColl形式のために、全ての3個のファイルを作成して、ロードしなければならない。
   (つまり、それぞれの"VGMFile::LoadVGMFile()"関数を呼ぶ。)

しかし、FFTInst.cppでは、"VGMInstrSet::sampColl"が"NULL"の状態のままです。
  ※ SequenceとInstrSet用に、"Sequence"と"instrset"のLoadVGMFile()だけを呼んでます。


■正
-----
最初に、幾らかの予備知識として。一般的に、以下の2つの形式があります。
 (1) 幾らかのタイプは、シーケンス、音色、波形の3つファイル形式がある。(PS1, PS2 等)
 (2) 他のタイプは、2つの形式のファイルしかない。(音色と波形を1つのファイルにするので。)

"VGMInstrSet::sampColl" クラスは、VGMTransで上述の2つの形式タイプを区別するキーとなります。
 (1)の場合は、Sequence, InstrSet, SampCollと、3個全てのObjectを作成して、ロードする。
    #つまり、それぞれの"VGMFile::LoadVGMFile()"関数を呼ぶ。
    #"VGMInstrSet::sampColl"が"NULL"の状態のままとする。
 (2)の場合は、SequenceとInstrSetの、2個だけObjectを作成して、ロードする。
885SOUND TEST :774:2009/06/26(金) 10:43:03 ID:aOYMwu3h
>>883
My apologies. I seem to have misread your code.
It looks as if you are doing things correctly.

The reason the VGMSampColl is added as a separate file is that
you you are using the Filegroup matcher.
The SquarePS2 format uses a GetIDMatcher, which in turn calls
VGMSampColl::UseInstrSet to set VGMSampColl::parInstrSet.
(GetIDMatcher inherits from SimpleMatcher).
VGMSampColl::parInstrSet is checked in VGMSampColl::Load(), which causes
the sample collection to NOT be added as a separate "Detected" file at
line 61 of VGMSampColl.cpp. ( if (!parInstrSet) pRoot->AddVGMFile(this) )

Yes, this system is convoluted and should probably be changed.
I am not sure why I have UseInstrSet() in the matcher...
The Matcher system is confusing and underdeveloped.
Also FilegroupMatcher is a terrible hack right now and SHOULD NOT BE USED.
It does not even do what I say it does in the comments.

Instead, if the format permits, use the GetIdMatcher class. I see
there is an "Associated Sample Set ID" in the smds header which corresponds
to "Bank number" in the wds header. This is exactly what SimpleMatcher/GetIdMatcher
is for - it will match these two ID values to create a collection.
GetIdMatcher simply uses the VGMFile::GetId() functions of VGMSeq/VGMInstr/VGMSamplColl.
By default GetId() returns VGMFile::id.

So, the solution in brief:
* Use GetIdMatcher.
* Define VGMFile::id or GetID() in FFT.cpp and FFTInstr.cpp
886SOUND TEST :774:2009/06/26(金) 20:12:14 ID:aOYMwu3h
>>883 Re: Question 2
This is related to >>881.
SonyPS1 uses Seq/InstrSet/SampColl
SquarePs2 uses Seq/InstrSet (SampColl is part of InstrSet)
Therefore,
WDSampColl::WDSampColl() initializes parInstrSet
VabSampColl::VabSampColl() does not initialize parInstrSet

That is why WDSampColl takes a VGMInstrSet instead of a RawFile.
It sets parInstrSet to a VGMInstrSet. The RawFile is the same as
the VGMInstrSet's RawFile (instrset->rawfile).

(... Oops, I think VGMSampColl::UseInstrSet() may be redundant ... )
887SOUND TEST :774:2009/06/26(金) 23:43:24 ID:TvhbukwS
Thank you very much.
I will translate into JPN tomorrow because I have no vitality for orchestra training.
I will go bed.
Good night.

888SOUND TEST :774:2009/06/28(日) 15:47:56 ID:75oWYC0b
>>873
VGMTrans 修正差分 6/24 version だけど、"root.ccp"にあるPS1を登録すると
挙動としてwavがダブって吐かれるみたい。確認できてたらスマソ。
889SOUND TEST :774:2009/06/28(日) 16:05:15 ID:a0WdF6Uq
それはそうとゼノの音合わせ、いまいち良く分からないのだが。
890SOUND TEST :774:2009/06/28(日) 16:28:56 ID:a0WdF6Uq
連投スマヌ。
mmlで吐かれた音色番号とVGMTransで吐かれたwaveの音色番号とは一致するのか?
演奏が何となく変なのだが。あっ、ゼノの話ね。
VGMTransから吐かれるmidiはピッチベンド系の処理がナイみたいで変な曲があるから
編集しずらいyp
891SOUND TEST :774:2009/06/28(日) 17:58:11 ID:Hz914NiQ
音色は一致するらしい。一応、そう言う話は聞いた。
自分では確かめてないから解らないが。
ただし、smdsは、音色のバンク切り替えが出来る仕様なので、そこが注意点。

VGMTransで、

・最初にヒットしたバンクは、音色番号255で使われている音色と思われる。
・2番目にヒットしたバンクは、0xFEコマンドで切り替え『後』に適用されるバンク
・3番目にヒットしたバンクが、デフォルトのバンク。

0xFEコマンドの引数で、バンクNo.を指定している。
って、推測してる。

解らないのは、設計した関係者いがい解らないと思うんだ。
それを、誰かが、解析・検証しないと、SMF化できないわけで。
0〜10まで、全部やる気、俺はないぞ。
892SOUND TEST :774:2009/06/28(日) 18:06:09 ID:Hz914NiQ
>>888
確認はしてないけど、実は、ダブルだろうなぁ〜とは思ってた。
それは、VGMTransの構造上、仕方がないと思う。

一番の理由は、『VBファイルそのものにはヘッダーが無い』点。
VHっていう別のファイルにヘッダーをわけちゃっているから、
コード読んだら、結構無茶な認識方法を使ってた。

本当は、VAB (VH + VB)で、一つの音色セットなんだけど、
「ヘッダー」と「波形実体」にファイルを分けちゃってるから、認識がややこしいことになってる。
893SOUND TEST :774:2009/06/28(日) 18:14:57 ID:Hz914NiQ
あ、ちなみにバイナリーレベルでの数値なんで、
レンジは、『 0x00 (0) 〜 0x7F (127) 』ね。

普通のMIDIシーケンサーは、『 1 〜 128 』で指定するんで、そこは注意。
MML2MIDは、デフォルトは、『 0 〜 127 』の範囲だったと思う。
894SOUND TEST :774:2009/06/28(日) 18:17:20 ID:Hz914NiQ
>>885-886

sorry. I've no time.
I will try next week.
895SOUND TEST :774:2009/06/28(日) 20:54:00 ID:a0WdF6Uq
おお、0から数えるか1から数えるかの考え方の違いはあるものの音色番号は一致した。
スレ汚しスマヌ。
896SOUND TEST :774:2009/06/29(月) 00:20:30 ID:1DnVPVas
楽団の練習から帰宅。 in アルコール。

>>895
良かった。
897SOUND TEST :774:2009/06/29(月) 17:43:36 ID:/LXuAQw7
star Ocean2のslzの解凍方法やツール系を探す事が出来なかったから拙者は
諦めてゼノギアスに浮気するで候。
898SOUND TEST :774:2009/06/29(月) 17:56:17 ID:9qdlZFio
>>897
少し前にこのスレでソース公開した人いたような
899SOUND TEST :774:2009/06/29(月) 19:43:54 ID:LRTaQwOx
それは知ってるけど、あれだけじゃどうにもならないです。
900SOUND TEST :774:2009/06/30(火) 15:42:57 ID:EG1iODLR
激しく同感。どうやれば使い物になるかレクチャーきぼん
901SOUND TEST :774:2009/06/30(火) 16:32:50 ID:XtJ4OfIh
スタオー2耳コピ余裕でした
902SOUND TEST :774:2009/06/30(火) 17:15:26 ID:cHvydjVA
新スレ作りました。皆さん宜しく。
http://schiphol.2ch.net/test/read.cgi/gamemusic/1246349422/1-100
903SOUND TEST :774:2009/06/30(火) 20:53:00 ID:WsBugjsu
>>902
乙、でもちょっと早すぎるだろ
この流れなら別に950くらいで良かったんじゃないのか?
904SOUND TEST :774:2009/06/30(火) 23:39:36 ID:Gw0aLg6s
>>902


基本的に、俺が作ったのは、
このスレ(のシリーズ)内なら、改造してもいいし、アップしてもいいよ。
あとは、関連法令(著作権法等)に違反しない範囲で。

で、VGMTransで、smdsのDLS出力するの、やっぱ解らないわ。
詳しい事は、次以降。
905SOUND TEST :774:2009/06/30(火) 23:42:16 ID:Gw0aLg6s
>> 885 の翻訳文(translate into Japanese)

ごめん。
ソースを誤読してたっぽい。
問題なさそうだ。

オブジェクト"VGMSampColl"が別個のファイルとして追加される理由は、"Filegroup matcher"を使っているからです。
"SquarePS2"フォーマットは、"GetIDMatcher"を使っており、その結果、
"VGMSampColl::parInstrSet"変数をセットするために"VGMSampColl::UseInstrSet"を呼びます。
("GetIDMatcher"クラスは、"SimpleMatcher"から継承される。)
"VGMSampColl::parInstrSet"変数は、"VGMSampColl::Load()"関数でチェックされており、
"VGMSampColl.cpp"の61行目で、波形セット(コレクション)を別個の検出されたファイルとして追加させません。

うん、このシステムは、複雑で理解し難く、改良しないといけないだろう。
自分でも、なぜ"Matcher"クラスに"UseInstrSet()"関数を持っているか、良く解らない。
Matcherシステムは、充分に開発されていなく、紛らわしい。
さらに、FilegroupMatcherもひどく滅茶苦茶で、まだ使うべきではないのかも。
自分がコメントでする事すらしてないし。

変わりに、フォーマットが許すなら、クラス"GetIdMatcher"を使ってみてください。
smdsヘッダーに、wdsヘッダーのバンク番号に相当する"Associated Sample Set ID"があるのが解る。
これはまさに、SimpleMatcher/GetIdMatcherがいるという事で
波形セットを作成するために、これらの2つのID値に合うでしょう。
"GetIdMatcher"は、単にVGMSeq/VGMInstr/VGMSamplCollの"VGMFile::GetId()"関数を使用します。
この関数のデフォルトは、"VGMFile::id"を返します。

述べたように、解決策の概要は、
 (1) "GetIdMatcher"を使う。
 (2) "FFT.cpp"と"FFTInstr.cpp"に、"GetID()"関数か"VGMFile::id"を定義する。
906SOUND TEST :774:2009/06/30(火) 23:45:20 ID:Gw0aLg6s
>> 886 の翻訳文(translate into Japanese)

>>883 Re: Question 2
これは>>881に関連します。
SonyPS1はSeq/InstrSet/SampColl、
SquarePs2はSeq/InstrSet(SampCollはInstrSetの一部です)を使用している。
従って、
・WDSampColl::WDSampColl()関数は、"parInstrSet"変数を初期化している。
・VabSampColl::VabSampColl()関数は、"parInstrSet"変数を初期化しない。

それは、WDSampCollがRawFileの代わりにVGMInstrSetを取得する理由です。
これは、VGMInstrSetにparInstrSetを設定します。
RawFileはVGMInstrSetのRawFile(instrset->rawfile)と同じです。

(しまった。UseInstrSet()は余分かもしれない。)
907SOUND TEST :774:2009/06/30(火) 23:53:47 ID:Gw0aLg6s
This is my trying result.



変えてみたが、DLSを出力できなかった。
なんで、VC++.netのデバッグを使用してみた。

I tried to change the FFT.cpp and FFTInst.cpp, but DLS file could not be outputted.
So, I tried to use debug of VC++.net.



その結果、VGMInstrSet::SaveAsDLS()関数内の、assocColls変数が null のままであった。
が、その原因までは判らなかった。

As a result, "assocColls" vector variable is null in "VGMInstrSet::SaveAsDLS()" function.
However, I do not understand this cause.

http://www1.axfc.net/uploader/Sc/so/13544.lzh&key=VGM




> I see there is an "Associated Sample Set ID" in the smds header which corresponds to "Bank number" in the wds header.
> This is exactly what SimpleMatcher/GetIdMatcher is for - it will match these two ID values to create a collection.

> smdsヘッダーに、wdsヘッダーのバンク番号に相当する"Associated Sample Set ID"があるのが解る。
> これはまさに、SimpleMatcher/GetIdMatcherがいるという事で波形セットを作成するために、これらの2つのID値に合うでしょう。


In my analysis, smds header address 0x0016 is default sample set.
And, in smds's music sequence, It have select the sample set ID.
This command(op-code) is 0xFE.
This command have 1byte parameter which indicate sample set ID.

自分の解析では、smdsヘッダーの0x0016番地は、デフォルトの波形セットのIDで、
シーケンス・トラック部において、波形セットIDを切り替える命令があります。
そのコマンドは、0xFEです。
このコマンドは、波形セットIDを示す1Byteのパラメータがあります。



Xenogears's PSF have some sample set.
1st detected sample set : It used by insturment no. 255.
2nd detected sample set : It used after 0xFE command (op-code).
3rd detected sample set : Default sample set.

I think it is difficult to output DLS of smds.
908SOUND TEST :774:2009/07/01(水) 18:07:18 ID:6KbwxOWP
乙。
殆ど計画倒れになる話だが、VGMTransにスタオーのフォーマットを組み込む場合、
SLZ関連のプログラムを立てなきゃ無理だわな?
おっと、その前にSLZの圧縮を解く事が先決
だよな。
909SOUND TEST :774:2009/07/02(木) 01:05:38 ID:XTV8qxxE
ガンバレ!
PSFにかかってるスライド辞書なら、読み込ませたら勝手にEXEに解凍してくれるよ。
独自圧縮は知らないけど。

PSFをEXEに解凍した状態で、
中に入ってる曲ファイルに圧縮がかかっているんだと、難しいかも。
910SOUND TEST :774:2009/07/02(木) 08:07:24 ID:Qtnl9Ai/
>>909
zlibから圧縮をといてEXEにするまではしってる。が、その先が問題。と言うのも
slzって独自圧縮があるから始末に悪い。Wild Armsみたいにlzs形式圧縮で結構
出回ってるヤツなら何とでもなりそうだが。ここ1年位ずっとslzの事を探して
るのだが海外のサイトに記述は若干あるもののツール系は見当たらない。
911SOUND TEST :774:2009/07/02(木) 17:01:56 ID:XTVkkqFw
なかったら、作っちゃえば良いんだよ。

VGMTransに読み込ませるなら、解凍の他にも、色々なクラスを派生させて、そのコード書かないとダメだよ。
まぁ、その辺は、参考例にできるソースコードが色々あるから、そんなに難しくないとおもう。

が、やっぱDLS出力が解んないわ。
あれからも試したりしてるんだけど、なかなかうまくいかない。
VGMTrans全体を解析しないと駄目かなぁ。
912SOUND TEST :774:2009/07/02(木) 18:25:33 ID:FR5kVQkE
作る技術と知識がないから作っちゃえば良いんだよ。って簡単に言われた日には悲しくなっちゃう

と言うのがコソーリ様子を伺ってる僕ちゃんの感想。
>>908>>910の意欲やテンションが正直羨ましい。確かに圧縮解くソースを公開されても
どうやってコンパイルするかその手段さえ分からない情けない僕ちゃん。
913SOUND TEST :774:2009/07/03(金) 01:35:03 ID:2VeTcgoK
hootっていうの使ってみようと思って、色々HDD漁ってたら、こんなのが出てきた。
X1-turbo版SORCEIRANの逆MMLコンパイラ。

たしか、X1のHu-BAISCで作ったものだと思う。
PC98でも、ウィンドウズでもそのままじゃ動かない。
使うのであれば、何かしらの言語に移植要です。

http://www1.axfc.net/uploader/Sc/so/14101.txt&key=mucomx1

X1版は、PC88, PC88VA, PC98 のmucomとはフォーマットが違うので、
X1版ソーサリアンの抜き出し曲データにしか使えないです。



で、結局、hoot使うのはあきらめた。
曲データだけあっても、仕方が無いみたいで。
まぁ、PC98で演奏できるし、いいや。

914SOUND TEST :774:2009/07/04(土) 16:45:44 ID:3oig0oNi
クレクレで悪いんだがslzの圧縮解くツールか何かを上げて下さらんか?
真面目にスタオー2の解析したいから。
915SOUND TEST :774:2009/07/04(土) 18:01:15 ID:/+z5DgSc
誰ももってないと思うよ?
916SOUND TEST :774:2009/07/05(日) 02:55:05 ID:yErAWy0I
誰かが作らないと無いのかもしれない。
どっちみち、コンバーターを作るのであれば、
何かしらの言語は使えないと作れないんだし
既にソースがアップされているなら、そのソースを流用で良いと思う。

コンパイルの方法が解らなくても、
C言語とかの高級言語はそんな難しい文法じゃないから、解ると思う。
組むのは難しくても、何をやっているのかってのは、読めると思う。
俺も、昔は、他人の書いたCソース読めはしたけど、書くことは出来なかったし。

ポインターとか、わけわからんかったし。
アセンブラみたいに、[]でくくるだけじゃなくて、
"." とか "->" とか、の使い分けが、良く解らなかった。
今でも、『どっち使うんだろ?。アセンブラならこうなのに』って迷う。
917SOUND TEST :774:2009/07/05(日) 03:03:06 ID:yErAWy0I
でも、個人的には、ハフマン符号とか、そういう複雑な圧縮でなければ、
曲データの構造を解析するよりは、簡単だとおもう。

要は、スライド辞書は、同じデータ列があったら、メモリがもったいから
『ここのアドレスから、このバイト数だけ参照しろ。』
って情報書いて、ファイルサイズを小さくしているだけだから。

曲データも同じ事やってるんだよ。
リピート命令は、いわゆる、スライド辞書だとおもう。

どっちにしろ、スライド辞書の仕組みは理解しておかないと、
ほとんどの曲データは解析出来ないよ。
918SOUND TEST :774:2009/07/05(日) 03:21:59 ID:yErAWy0I
>> 730
今更のレスでスマン。
F#(Fis)連打とか、そう言うことしているんだと、
例えば、16分音符を16回繰り返しているとしたら、
MML的に書くと、『 [ f16 ]16 』って感じにしていると思う。
SMFみたいに、ベタで並べるのはメモリの無駄だし。

これは、akaoも、smdsも、こういう技使ってる。
hosaは、「前に同じ」って命令あって、それを15回並べるけど…。

なんで、こういう手法使っているとしたら、
同音連打は探しても、あんまり意味がない。(無くはないけど)

自分が解析するときは、各トラックのアドレス(ポインタ)が書いてある所から探すかな。
相対アドレスで書かれるときと、どこかを起点とした絶対アドレスで書かれるときがあるから、
それの見極めも必要。
919SOUND TEST :774:2009/07/05(日) 03:30:24 ID:yErAWy0I
とにかく、最初の解析対象の曲は、
 ・トラックが少なくて、
 ・小節数が少なくて、
 ・複雑なことしてなくて(直感で選ぶ)、
 ・耳コピが簡単な曲(これも直感?)
を選ぶと良いよ。

例えば、自分は、Dew Prism解析したときは、214を選んだ。
観点は、
 ・小節数が少ない。
 ・トラック数が少ない。
 ・アルペジオは、16分音符しか使ってない。構造が簡単そう(直感)
 ・同じパターンのアルペジオが続いている。
   リピート命令の構造が解るかな? (と思ったが、リピート命令無かった。
 ・低音部の休符が長いから、休符の事も何か解りそう。(直感)
 ・音量変化が無い。

っていう観点で選んだ。
920SOUND TEST :774:2009/07/05(日) 03:52:10 ID:yErAWy0I
slzって、"Simple-LZ"の略?
LZ77だけ使ってるんじゃない?

とりあえず、ゲームでよく使われるっぽい圧縮に関する技術情報っぽいサイト見つけた。
英語よめない奴は知らない。

◆圧縮にかんするトップページ
http://www.gamedev.net/reference/list.asp?categoryid=25#125

◆LZ法のアルゴリズム
http://www.gamedev.net/reference/articles/article296.asp

◆Simple-LZ
http://www.gamedev.net/reference/articles/article294.asp

スターオーシャンが、このSLZを使っているのかは、知らない。
検証出来る人は、まぁ、検証して。
自分は、ゲームディスク持ってない。
ヴァルキリーは、実家にあるけど・・・

921SOUND TEST :774:2009/07/05(日) 03:53:26 ID:yErAWy0I
ちなみに、技術英語を、翻訳サイトで自動翻訳するとわけ解らない日本語が出てくるんで、
ちゃんと、自力で読んだ方が良いと思う。
922SOUND TEST :774:2009/07/05(日) 08:38:09 ID:IwfspMDw
前に出たソースは未知の展開後の正確なサイズを指定しない限りうまく動かなかった気がする
923SOUND TEST :774:2009/07/05(日) 16:08:50 ID:1rdjxY3k
ウワッ!!!
激ムズ!!!!!  誰だよ!こんな圧縮考えたヤツは!  何かもう泣きが
入っちゃってるし!
924SOUND TEST :774:2009/07/05(日) 16:28:50 ID:AMKYW98L
馬鹿にするつもりはないが確かにプログラム系の嗜みのない人に技術系の話や説明をしたとこ
で何言ってるか理解できないだろうし時間の無駄だと思う。本当に困ってたりするならば
助け船を出せるが興味があるだけならスルーが無難かも
925SOUND TEST :774:2009/07/06(月) 12:49:00 ID:E3bKV/cb
スタオーのデータ圧縮から展開してみたがデュープ以上に面倒そう。
926SOUND TEST :774:2009/07/06(月) 17:52:11 ID:irtRjooz
>>920
スタオーとヴァルプロは同じ"SLZ"の圧縮で構成されてる。確認済。PSFから
圧縮を展開したものを見たが(1曲だけね。)結構読めそうで読めないバイナリ
になってる。解析すべきモノじゃない感じ。マジ、頭が禿になりそう。
927SOUND TEST :774:2009/07/07(火) 17:12:22 ID:Ltyw8hIF
>>926
ヅラは用意するから禿げるまで頑張ってくれw
自分は詳しくないけどVPやSOは相当面倒らしいね。
928SOUND TEST :774:2009/07/07(火) 19:01:46 ID:h3OASK+N
一番イイやつ頼むぜ?
929SOUND TEST :774:2009/07/08(水) 02:00:16 ID:NWZtRZY0
カツラ検索してみたけど、以外に高いんだな。
930SOUND TEST :774:2009/07/08(水) 08:48:38 ID:Zpl0jydk
ttp://www.kanshin.com/keyword/1362797

これで勘弁してくれねーか?w
931SOUND TEST :774:2009/07/08(水) 10:44:12 ID:zmm7zanq
>>930
お、落武者かよ・・・しかも矢付き・・・家から追出されるじゃんか・・・。
932SOUND TEST :774:2009/07/08(水) 17:50:45 ID:FDl8+WYW
ってか、マジどーやってみんなはSLZの解凍やってんのよ? 始めからスレ読んでると
解凍ソフトがいくつかあるみたいだし。何というソフトか教えてくれねーか?
それか、ソフトをうpしてくれねーだろうか? 切実にお願いです。
933SOUND TEST :774:2009/07/08(水) 21:09:37 ID:seNHqGQW
そういや、FF7やサガフロも、スライド辞書解凍しないとAKAOファイル出てこないけど、同じスライド辞書でも構造違うの?
一部は、ベタで拡張子.sndではいってたけど。
イベントファイルに埋め込まれてたり。
あれは、LZSだっけ。
934SOUND TEST :774:2009/07/09(木) 08:47:35 ID:ZL3lp9W7
>>933
そうですね。slzと構造は全く異なるようです。lzsはFF7他Wild Armsに使われて
いるようですね。圧縮形式自体けっこうポピュラーなものなのでググれば解凍
ソフトは手に入ります。
935SOUND TEST :774:2009/07/09(木) 19:04:49 ID:htLeqal2
バイナリデータを見た感じ、ラブ&デストロイというゲームもlzsだと思うんだが、
FiceLZSではデコード出来なかった。

だれかデコード出来た人います?
936SOUND TEST :774:2009/07/10(金) 08:15:55 ID:K9sP7+xx
>>935
間違いなくlzs?
psfとかデータがあれば試してみるのだが・・・
937SOUND TEST :774:2009/07/10(金) 09:04:39 ID:Vzcem1LN
>>936
間違いなくといわれると自信がないですが。。
あいにくpsfはありません。
原盤をエクスプローラーでアクセスして、INITFS.DAT に圧縮されたであろう
QESがあります。

該当箇所を見ると、↓のような構造になっていると(自分は)思っています。
4byte 圧縮前サイズ
1byte 用途不明
1byte 圧縮フラグ
8-16byte データ (サイズは立っているビットによる)
以降、圧縮フラグとデータの繰り返し

5byte目に1byte不明な値が入っている以外Wild Armsと同じっぽいのですが。。
938SOUND TEST :774:2009/07/10(金) 18:41:22 ID:wTgcFuzu
PSF(というかexe)に入ってるのは、すでに解凍済なんじゃないかな?AKAOはそうだった気がする。
CD ROMに入ってるのは、圧縮されてりされてなかったりだけど、exeの中には解凍済のデータが入ってたような。→akao

とりあえず、すぎやんの信者なんで、ドラクエやるわ。
暫くバージョンアップは無いかも。
だれか、ドラクエ9解析して。そしたら、作る。
939SOUND TEST :774:2009/07/10(金) 18:45:39 ID:PeiUqJgE
>>938
ふつうの2sf+strm
よって既存ツールで大丈夫。
940SOUND TEST :774:2009/07/10(金) 21:32:54 ID:oq8B0CW/
>>938
ドラクエ9ならVGMTransで楽に解析できると思うよ。独自ドライバじゃなくノーマルSseqなら
941SOUND TEST :774:2009/07/11(土) 00:55:29 ID:Ur++NMit

レッスン帰りに、秋葉原よってくるかな。
R4っていうのと、ドラクエ9買ってくるぜ。
(売り切れてたり・・・

942SOUND TEST :774:2009/07/11(土) 09:57:37 ID:lNgQ6NtX
早速にドラクエ9の変換midiをうp
http://www1.axfc.net/uploader/Sc/so/16439
Pass: dq9seq
943SOUND TEST :774:2009/07/11(土) 10:28:09 ID:5TUfnFSk
PSX-EXEから圧縮解いても独自圧縮があるのでさらに圧縮を解かなきゃいけない。
F,F7やWild ArmsはLZS,スタオーやバルプロはSLZ。まんま解凍できるものと切り出し作業
のあとの解凍など色々。あー、ラブ・デストロイはLZSに似てるけどチョイと圧縮形式が違う
みたい。
944SOUND TEST :774:2009/07/11(土) 13:50:51 ID:U1Rb6y6q
曲データそのもののアップはやめようぜ。
ドラクエとかは、Jasrac管理楽曲だからちょっとまずい。

基本的に、変換方法とかそっち方面で。
945SOUND TEST :774:2009/07/11(土) 17:11:29 ID:wK2mXb3a
>>943
やはりちがうのか。スライド辞書から理解しないと駄目みたいだなー。
946SOUND TEST :774:2009/07/11(土) 18:55:57 ID:2+3GvWCD
変換MIDIガンガンいこうぜ!
947SOUND TEST :774:2009/07/11(土) 19:22:55 ID:NSZeApoF
ちょさくけんをだいじに
948SOUND TEST :774:2009/07/11(土) 20:38:56 ID:Ur++NMit
うぷぬし(944も)だけど、曲データそのものがアップされるんだと、
コンバータもあっぷできなくなるんで、宜しく。
949SOUND TEST :774:2009/07/11(土) 20:41:51 ID:Ur++NMit
で、ドラクエ買おうと思ったんだけど、ヨドバシに寄るの忘れた…
なんか、店の人に勧められて、イングリッシュホルンのボーカルだけ買って、
それで満足して改札くぐってから『あ、ドラクエ・・・・』って思い出した。orz
950SOUND TEST :774:2009/07/11(土) 20:57:04 ID:5TUfnFSk
曲データうpはこれが最初で最後っす!
曲に興味があるだけでソフトは即売りますた。ワロタのは歴代ラスボスの曲がまんま
入ってた事かな。
951SOUND TEST :774:2009/07/11(土) 21:01:21 ID:7X7CpSww
DQのアレンジ曲やりたいので、助かりました〜。
952SOUND TEST :774:2009/07/11(土) 21:16:46 ID:Ur++NMit
俺も、ゲームそのものにはあんま興味ないんだよな。多分。
いつもクリアしないで途中で放置になっちゃう。(レベル上げだるい)
FF11も、あれだるい。レベル上げ。白魔導師と吟遊詩人だけレベル75(最大)にしたけど…。
(勿論、Ps2の発売日近くから6年くらい?頑張って。)
953SOUND TEST :774:2009/07/12(日) 15:50:45 ID:JZPFF38G
プレイステーションのマイナーゲーム「死者を呼ぶ館」のムービー、OP等のMIDIデータを取り出せたが
ストーリー上で使われるBGMがMIDI変換できないってどういうことだ…
マイナーゲームは簡単に変換できるということではないんだな
954SOUND TEST :774:2009/07/12(日) 16:33:36 ID:7MSMc7kt
別フォーマットかストリームって事だな。
バイナリエディッタではどうなってる? データの中身は。
955SOUND TEST :774:2009/07/12(日) 16:51:48 ID:JZPFF38G
>>954
面倒くさがりでまだバイナリエディタでは確認してない
BGMの入ってそうなそれらしいファイル名がDUMMY.BINとなっている…ダミーなのか
それとも別フォーマットなのかな…そうは思えないんだけどなぁ
音色もwavにできたのにくやしい
956SOUND TEST :774:2009/07/12(日) 20:20:32 ID:7MSMc7kt
VGMTransをPS1仕様にビルドしてデータを通してみたら?
957SOUND TEST :774:2009/07/12(日) 22:18:04 ID:JZPFF38G
>>956
いろいろありがとう
これ以上やってもはまっていい結果でなさそうなんであきらめて寝ることにする
まあ一番ほしかったOPがMIDIデータとして抽出できたんでよしとするよ
958SOUND TEST :774:2009/07/13(月) 01:40:16 ID:R5EmFS4f
>>744,857
I tried some GX titles and successfully converted salmndr2, gokuparo, daiskiss.
The other ones were NG, though I can't distinguish the format is similar but different, or my method is bad.
I also peeked some non-GX 054539 titles' data, but none of them are same as salmndr2.

The music data conversion of arcade game is no longer popular, so I hope VGMTrans will support more machines, especially namco.
I think the early MAME drivers of System22/NA-1 supported their music with simulation by analyzing music data manually, because the MCU has not yet been dumped at that time. Is it useful?
959SOUND TEST :774:2009/07/16(木) 08:57:20 ID:PCDhvYzF
進まないにも程があるな〜
次スレ保守カキコで10レスくらい消費しとるぞ
次スレ埋まることあれば次は>>970あたりの方がいいんじゃねーの?
960SOUND TEST :774:2009/07/16(木) 12:07:23 ID:ouwHdazf

 || ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄||
 || ★★2ちゃんねるの仕様★★
 ||                               Λ_Λ
 ||   980到達以降、                 \ (゚ー゚*) キホン。
 ||  前のレスから24時間放置でdat落ち       ⊂⊂ |
 ||___ ∧ ∧__∧ ∧__ ∧ ∧_      | ̄ ̄ ̄ ̄|
      (  ∧ ∧__ (   ∧ ∧__(   ∧ ∧     ̄ ̄ ̄
    〜(_(  ∧ ∧_ (  ∧ ∧_ (  ∧ ∧  は〜い、先生。
      〜(_(   ,,)〜(_(   ,,)〜(_(   ,,)
        〜(___ノ  〜(___ノ   〜(___ノ
961SOUND TEST :774:2009/07/16(木) 12:38:09 ID:2Ep0oniu
なー、なー、ドラクエ9の音楽って皆どう思うよ???
962SOUND TEST :774:2009/07/16(木) 15:25:28 ID:8LE8F5a7
興味御座いません
963SOUND TEST :774:2009/07/16(木) 16:13:59 ID:2Ep0oniu
何のタイトルにキョーミあるのよ?
964SOUND TEST :774:2009/07/16(木) 18:22:42 ID:h/elO+ib
ここは変換するスレだからな。
音楽そのものについて語りたいなら他所に行け。
965SOUND TEST :774:2009/07/17(金) 00:13:46 ID:bWlrER+k
>>960
にしたってこのペースで900で次スレはねーだろ
966SOUND TEST :774:2009/07/17(金) 10:24:13 ID:jQ+c4ST6
何でもいいじゃんwww
967SOUND TEST :774:2009/07/17(金) 11:40:16 ID:P8QwqhX+
何に対して笑ってるのか分からない
968SOUND TEST :774:2009/07/17(金) 14:29:13 ID:Yo5/c3zK
961
任天堂純正のサウンドドライバーだから、すぎやんの音楽がいかされてないな。
古代祐三みたいに、自分らでサウンドドライバーかけばいいのに。かける技術者がいないんだろうけど。
赤尾氏は、古代祐三氏のサウンドドライバーと比べるとあまり大したことないんだよな。
969SOUND TEST :774:2009/07/17(金) 14:39:28 ID:9IPo2uG8
>>938>>944>>968
すぎやんの話ならなおさらsageようぜ!
970SOUND TEST :774:2009/07/18(土) 01:04:13 ID:eF3RM6Rn
俺内DQ音楽順位
III≧II>>IV>I>>>>>>>IX>V=VI=VII>>>>>>>>>>>>>>>>VIII
971SOUND TEST :774:2009/07/18(土) 01:08:40 ID:tOD1eNFk
だから何?
972SOUND TEST :774:2009/07/18(土) 15:25:05 ID:sGRx6cf1
何でもいいじゃんwww
973SOUND TEST :774:2009/07/19(日) 08:12:46 ID:Fn4XFx6a
不等号ネタは荒れるから他所でやって
974SOUND TEST :774:2009/07/19(日) 09:02:35 ID:eIMiz6x4
そうなの?
初耳だわ
975SOUND TEST :774:2009/07/19(日) 09:08:50 ID:NH2YouH6
早速荒れてきました
976SOUND TEST :774:2009/07/19(日) 10:49:56 ID:1rXO93nG
俺の能力<その他の人たちの能力
977SOUND TEST :774:2009/07/19(日) 11:04:35 ID:rAIqtBUA
そのネ実っぽいの・・
おれもすぎやん好きだけど、スレは変換スレなんで、変換でいこうぜ。

ドラクエ買ってきて抜き出した。音色番号、やっぱり曲によって違ってた。
アーティキュレーション毎に音色番号があるかんじ。同じ楽器でも複数の音色番号がある。
ハチプロじゃ再現むつかしそ。8850でやるかなぁ。
978SOUND TEST :774:2009/07/19(日) 11:09:05 ID:rAIqtBUA
ごめん。さげわすれた。
てか、歴代の・・・
979SOUND TEST :774:2009/07/19(日) 17:34:06 ID:eIMiz6x4
歴代の・・・って?
980SOUND TEST :774:2009/07/21(火) 08:07:18 ID:6FG2Ymii
やっぱスタオー難しくて解析ムリそう。メモに書きとめながらの作業
だが命令がアチコチ飛びまくり〜
981SOUND TEST :774:2009/07/22(水) 21:19:44 ID:0NjA/Rqd
新参者ですが聖剣伝説2の逆MMLを作る事は難しい事なのでしょうか?
私は耳コピやツール作成などと言う高度な技術などないタダの糞です。
一番好きなタイトルだけにどなたか、お力をお貸し願えませんでしょうか?
982SOUND TEST :774:2009/07/22(水) 21:26:28 ID:+nwFH054
>>981
聖剣2はspc2midiで比較的楽に出来る
当然手直しは必要だが、ここであれこれ言ってるより自分で試した方が早い
983SOUND TEST :774:2009/07/23(木) 02:47:41 ID:M4Vu5Ngb
spc2midi使っても弄れないんじゃ高度な技術云々ってか
むしろ最低限の技術すらないからな
その程度できないなら諦めてくれというしかない
984SOUND TEST :774:2009/07/23(木) 05:44:47 ID:WItrmJa2
レスありがとう
頑張ってダメだったら諦めます
985SOUND TEST :774:2009/07/23(木) 10:30:48 ID:dYzoDmhy
着メロ欲しいだけなら音楽館とかで漁れば
986SOUND TEST :774:2009/07/23(木) 12:18:09 ID:WItrmJa2
いや、フツーに楽譜が欲しいだけです。
987SOUND TEST :774:2009/07/23(木) 12:54:41 ID:k9qoeppu
ならspcファイルをspc2midiで読み込んで保存するだけ
988SOUND TEST :774:2009/07/23(木) 17:35:45 ID:t5X/D+DJ
>>987
ありがと。  やってはみたものの、メチャクチャな楽譜というかデータ
だね。  気の遠くなる作業の予感。
989SOUND TEST :774:2009/07/23(木) 18:05:19 ID:k9qoeppu
音色なら変換設定で調整できるし、>>347使えばズレも直せる
990SOUND TEST :774:2009/07/23(木) 18:10:06 ID:DNwdOWdw
akaoの派生じゃないのかな?
だとしたら、解析さえしちゃえば、現行のakao2mmlをちょっと書き換えれば、いけると思う。

が、俺は、しばらくドラクエする。
991SOUND TEST :774:2009/07/24(金) 00:09:57 ID:z7pPNpni
SFCのファミコン探偵倶楽部の曲データがすごい
1音ずつトラックチェンジしてるw
992SOUND TEST :774:2009/07/24(金) 03:39:24 ID:iLyUJMyN
DVAといえばヴァルケンだな
993SOUND TEST :774:2009/07/24(金) 17:50:23 ID:fgzNDmRi
991
それ、普通のテクだよ。
残響を残しておきたいときの。

たまに生身の演奏者にやらせる作曲者いるけどな。
休符を演奏しないと、絶対ずれる。
994SOUND TEST :774:2009/07/24(金) 19:40:37 ID:z7pPNpni
>>993
あーそう言うテクかー 言われてみて納得した
リバーブとかじゃダメなんだろうなあ
ナムコのコンポーザーもリバーブがない音源で音を重ねてリバーブ代わりにしてたって話しを見たわ
995SOUND TEST :774:2009/07/24(金) 21:25:14 ID:BzxyBbWH
リバーブのほかにもディレイを再現するためにどんどん音量下げて重ねていくってのもある
極々初期からよくあるテクニックだと思う
996SOUND TEST :774:2009/07/24(金) 21:28:44 ID:Ae5u3wGN
1音ずつトラックチェンジって、例えば、ベースの最初の音がトラック1で鳴ってたけど
次の音はトラック2に行ってて、トラック1ではスネアが鳴ってるとかそういうんじゃないの

spc2midiで変換すると案外そういうデータが出てくることがあって
そういう場合、見なかったことにして諦めてる
997SOUND TEST :774:2009/07/24(金) 22:01:52 ID:fgzNDmRi
996も、目的は残響なんだけど、今度はデータじゃなくて、制御側で動的割り当てしてると、そうなることがある。
後期akaoがその方法。
あと、midi音源がgm規格をうたう場合は、そうしないといけない事になってる。
なにやってるかっていうと、優先順位が低い残響から消されて、新しい音が割り当てられる。
また、音をフルに使ってると、優先順位が低い音も消して新しい音に割り当てる。
998SOUND TEST :774:2009/07/25(土) 00:06:58 ID:vmqjsueG

   ∧_∧            うめ〜          
   ( ・ω・)             lヽ,,lヽ
   (っ―-つ|__,>;* ザッザッ   (    )
   /   )     ・;*;'∴    と.、  i
  ( / ̄∪       ハ,,ハ   しーJ
~~~~´゙`゙゙´´ ~~゙`゙´\('(゚∀゚∩/`゙゙´´ ~~゙゙
            ⌒⌒⌒

999SOUND TEST :774:2009/07/25(土) 00:40:18 ID:HzqLU302
一応、もう一回、新スレ。
http://schiphol.2ch.net/test/read.cgi/gamemusic/1246349422/1-100

多分999get
1000SOUND TEST :774:2009/07/25(土) 00:42:35 ID:CDuPn+T4
1000なら来年、VPのMIDI変換ツールが公開される
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。