domino/要望/122

Last-modified: 2012-12-12 (水) 06:09:30

定義ファイルについて

  • ページ: domino/要望
  • 投稿者: imo?
  • 優先順位: 低
  • 状態: -
  • 投稿日: 2012-12-10 (月) 13:44:20

メッセージ

定義ファイルを募集中、に載っているのでFantom XRのを作成しているのですが、いくつか要望があります。

①CCMLinkタグの仕様変更
現状、定義済みのCCMタグをそのまま使うしか出来ませんが、これをNameやDefault、OffsetなどすべてのパラメータをCCMLinkのほうでも設定できるようにできないでしょうか?
というのも、Fantom-XRにはエフェクトのパラメータが最大で32、種類が78もあるので、全部まともに記載するとID数が全然足りませんし同じDataをいくつも定義するので無駄が多いと感じます。

(例)

	<Folder Name="MFX">
		<CCM ID="200" Name="MFX Parameter 1">
			<Gate Min="1" Max="129" Offset="255" TableID="11" />
			<Value Min="-20000" Max="20000" Offset="32768" />
			<Memo>MFXパラメータ 1</Memo>
			<Data>@SYSEX F0h 41h 10h 00h 6Bh 12h [ #GH #GL 02h 11h #VF4 #VF3 #VF2 #VF1 ] F7h</Data>
		</CCM>
	</Folder>
	<Folder Name="01: Stereo EQ">
		<CCMLink ID="200" Name="01: Low Freq.">
			<Value Max="1">
				<Entry Label="200 Hz" Value="0" />
				<Entry Label="400 Hz" Value="1" />
			</Value>
			<Memo>EQをかける周波数(低域)を設定</Memo>
		</CCMLink>
	</Folder>
	<Folder Name="02: OVERDRIVE">
		<CCMLink ID="200" Name="02: OVERDRIVE">
			<Value />
			<Memo>ドライブ値</Memo>
		</CCMLink>
	</Folder>

このようにCCMタグではDataタグと基準値の設定を記述して、CCMLinkタグでその都度NameやDefault、Min/Maxなどを設定できるようにできればCCMタグが32個で済みます。
すべての設定はCCMLinkのものを用い、CCMLink中で指定がないものはCCMの設定を反映していただければと思います。
(でもこれだとイベントリスト表示はすべて MFX Parameter 1 になりそうですね…。CCMLinkにID番号はありませんし)

②Includeタグの実装
インストゥルメント(パッチ・パフォーマンス)やリズムのデータが膨大で全部記述すると編集が大変なのでこれらのデータは別ファイルにしておいて、

(例)

	<InstrumentList>
		<Include Filename="Fantom-XR_Patch_GM2.txt" />
		<Include Filename="Fantom-XR_Patch_Preset.txt" />
		<Include Filename="Fantom-XR_Patch_USER.txt" />
		<Include Filename="Fantom-XR_Perform_Preset.txt" />
		<Include Filename="Fantom-XR_Perform_USER.txt" />
	</InstrumentList>

こんな感じでできればすっきりしますので、ご一考いただけましたら幸いです。


  • すぐにどうこうできるわけではないですが、SC-8850のEFXもCCMLinkでなんとか出来た記憶がありますので、参考にしてみてください(多少諦めている部分もあるかもですが)。 -- たかぼー? 2012-12-11 (火) 19:07:19
  • ご返信ありがとうございます。SC-8850の定義ファイルと音源の説明書を見てみましたが、これもぎりぎり1300で収まるかどうか? くらいにパラメータ多いですね…。 投稿したあとでもうひとつ案が浮かんだのですが、 <Folder Name="MFX"> <CCM ID="200" Name="MFX 01: STEREO-EQ"> <Value Min="1" Max="129" Offset="255" TableID="11" /> <Parameter Number="1" Name="01: Low Freq."> <Value Max="1"> <Entry Label="200 Hz" Value="0" /> <Entry Label="400 Hz" Value="1" /> </Value> </Parameter> <Parameter Number="2" Name="02: Low Gain"> <Value Min="-15" Max="15" Offset="15" TableID="100" /> </Parameter> <Memo>MFXパラメータ 1</Memo> <Data>@SYSEX F0h 41h 10h 00h 6Bh 12h [ #VH #VL 02h 11h #PR1VF4 #PR1VF3 #PR1VF2 #PR1VF1 #PR2VF4 #PR2VF3 #PR2VF2 #PR2VF1 ... ] F7h</Data> </CCM> </Folder> このように Parameterタグ(仮称)みたいなのを新設して多数の値をまとめてひとつのCCMで設定できれば解決しそうな気がします。 イベントリストでの表示イメージとしましては、 EVENT Gate Vel/Value ---------------------------------- MFX 01: STEREO EQ Part 1 >01: Low Freq. 400 Hz >02: Low Gain +0 dB 1行1イベントの法則(?)は崩れてしまいますが、パッチ名やスケールチューン設定など複数バイトのイベントも手軽に設定できるようになる…と思います。 要するに、ひとつのCCMで多量の値を一度に設定できれば良いわけなんですよねぇ。 勝手な提案ばかりで申し訳ありませんが、とりあえず今は切り詰めて作れるところまで作ってみようと思います。 (Fantom-XRはパラメータ数がMFX最大32、Reverb/Chorus最大各20あるから現仕様だとどう考えても全部記述は無理…) -- imo? 2012-12-12 (水) 06:06:09
  • 表示が悲惨なことに… (OO;  2度目の投稿では改行とかできないんですね…。 -- imo? 2012-12-12 (水) 06:09:29