English
SOUND Manualトーンエディタユーザーズマニュアル/
戻る進む
トーンエディタユーザーズマニュアル

付 録 2


 プロジェクトファイル(バンクファイル)のフォーマットについて プロジェクトファイルのフォーマットとバンクファイルのフォーマットはヘッダー 部分をのぞきほぼ同じフォーマットになっています。
フォーマットは大きく分けて2つのブロックに分けられます。
前半のシンセサイザーパラメータ部分と後半の波形部分から構成されています。

●シンセサイザーパラメータ部分

この部分には簡易的なデータ圧縮がかかっています。
0x00をまとめるようにアルゴリズムが組まれています。

「0x01,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,0x01」の場合

「0x01,0x00,0x03,0xFF,0xFF,0x00,0x04,0x01」に変換されます。

●プロトコル

圧縮されていないデータ部分のフォーマットは以下の通りです。

------- start file --------

項 目:ファイルヘッダー
サイズ:100バイト(プロジェクトファイルの場合)
プロジェクトファイルの位置ウインドウの水平ポジションウインドウの垂直ポジションバンクの総数ウインドウの先頭に表示されるバンクファイルのバージョン
サイズ
引 数
説 明
88
StandardFileReply
reply;
2
short
posH;
2
short
posV;
2
short
bankNo;
2
short
top;
4
long
version;

サイズ:8バイト(バンクファイルの場合)
'Bank'(バンクの認識コード)ファイルのバージョン
サイズ
引 数
説 明
4
long
fileCode
4
long
version;

---------------------------

項 目:バンクデータ
サイズ:84バイト*バンクの数
サイズ
引 数
説 明
64
Str63
name;
バンクの名前
4
Handle
voice;
ボイス&レイヤー情報へのハンドル
4
long
voiceNo;
ボイスの数
2
short
sendBank;
何番のバンクに送信するのか
2
short
selVoice;
現在選択されているボイスの位置
2
short
top;
ウインドウの先頭に表示されるボイス
2
short
windowPv;
ボイスのウインドウV位置
2
short
windowPh;
ボイスのウインドウH位置
2
short
windowSize;
ボイスウインドウのサイズ

---------------------------

項 目:ボイスデータ
サイズ:60バイト*ボイスの総数
サイズ
引 数
説 明
34
Str31
voiceName;
ボイスの名前
2
short
bendrange;
ベンドレンジ(0 -13)
2
short
portament;
ポルタメント(0 -127)
2
short
volBias;
ボリュームバイアス(0 -127
1
char
checkFM;
このボイスはFMボイスかどうかのフラグ
4
Handle
layer;
レイヤー情報のハンドル
4
long
layerNo;
レイヤーの総数
2
short
selLayer;
現在選択されているレイヤー
2
short
top;
ウインドウの先頭に表示されるレイヤー
2
short
windowPv;
最後に開かれたレイヤーウインドウのV位置
2
short
windowPh;
最後に開かれたレイヤーウインドウのH位置
2
short
windowSize;
最後に開かれていたウインドウのサイズ
1
char
upDate;
再計算用のフラグ

---------------------------

項 目:レイヤーデータ
サイズ:86バイト*レイヤーの総数
サイズ
引 数
説 明
32
Str31
layerName;
レイヤーの名前
1
short
waveNo;
レイヤーに登録された波形番号
1
unsigned char
start;
キースプリットの始まり(0-127)
1
unsigned char
end;
キースプリットの終わり(0-127)
1
char
roopMode;
ループモード(0-4)
1
char
decayR1;
EG Decay Rate1設定(0-31)
1
char
decayR2;
EG Decay Rate2設定(0-31)
1
char
egHold;
EG Hold(0,1)
1
char
attack;
EG Attack設定(0-31)
1
char
loopSL;
使用されていません。
1
char
keyRS;
EG キーレートスケーリング設定(0-15)
1
char
decayL;
 EG Decay Level設定(0-31)
1
char
release;
EG Release Rate設定(0-31)
1
char
stwinh;
使用されていません
1
char
soundD;
使用されていません
1
char
totalL;
トータルレベル(0ー127)
1
char
mdl;
FMモジュレーション(0 -15)
1
char
lfoRes;
LFOリセット(0 -1)
1
char
lfof;
LFO周波数(0 -31)
1
char
mdxsl;
FM結線用1(0 -127)
1
char
mdysl;
FM結線用2(0 -127)
1
Boolean
pLFO;
PLFOスイッチ(0 -1)
1
Boolean
pLFOM;
PLFOモジュレーション(0 -1)
1
char
pLFOWS;
PLFO波形選択(0 -3)
1
char
pLFOS;
PLFO深度(0 -7)
1
char
aLFOWS;
ALFO波形選択(0 -3)
1
char
aLFOS;
ALFO深度(0 -7)
1
unsigned char
inSelect;
EffectSelect(0 -15)
1
char
inMixLev;
EffectSend(0 -7)
1
char
dilectL;
DirectLevel(0 -7)
1
char
dilectP;
DirectPAN(0 -31) 
1
unsigned char
baseNote;
ベースノート(0 -127)
1
char
fineTune;
ファインチューン(-63 - 63)
1
unsigned char
vlNo;
ベロシティー番号(0 -255)
1
unsigned char
pegNo;
PEG番号(0 -255)
1
unsigned char
plfoNo;
PLFO番号(0 -255)
1
Boolean
pEG;
PEGスイッチ(0 -1)
1
Boolean
pEGM;
PEGモジュレーション(0 -1)
1
Boolean
lfoM;
LFOモジュレーション(0 -1)
1
Boolean
totalLM;
トータルレベルモジュレーション(0,1)
4
long
size;
このレイヤーの現在のサイズ
2
short
winH;
レイヤーウインドウのH位置
2
short
winV;
レイヤーウインドウのV位置
2
short
fmH;
FMレイヤーウインドウのH位置
2
short
fmV;
FMレイヤーウインドウのV位置
1
Boolean
upDate;
サイズアップデートのチェック

注意
DirectPANは以下のような「パラメータ/バランス」の対応になります。
パラメータ
0 
1 
2 
3 
4 
5 
...
15 
16
17
18
19
...
31 
バランス
C 
R1
R2
R3
R4
R5
...
R15
C 
L1
L2
L3
...
L15

---------------------------

データの区切り用
"0xFFFF"

---------------------------

項 目:Mixer、Velocity、PEG、PLFOを統括するデータ
サイズ:48バイト
サイズ
引 数
説 明
2
short
mixerNo;
ミキサーの総数
2
short
veloNo;
ベロシティーの総数
2
short
pegNo;
PEGの総数
2
short
plfoNo;
PLFOの総数
2
short
selMixer;
現在選択されているミキサー
2
short
selVelocity;
現在選択されているベロシティー
2
short
selPEG;
現在選択されているPEG
2
short
selPLFO;
現在選択されているPLFO
4
Point
posMixer;
ミキサーウインドウの位置
4
Point
posVelocity;
ベロシティーウインドウの位置
4
Point
posPEG;
PEGウインドウの位置
4
Point
posPLFO;
PLFOウインドウの位置
4
Handle
mixer;
ミキサーデータハンドル
4
Handle
velocity;
ベロシティーデータハンドル
4
Handle
peg;
PEGデータハンドル
4
Handle
plfo;
PLFOデータハンドル

---------------------------

項 目:Mixerデータ
サイズ:68バイト*Mixerの総数
サイズ
引 数(注1)
説 明
32
Str31
name;
	ミキサーの名前です。
18
unsigned char
pan[18];
	ミキサーのPAN(0 -31)(注2)
18
unsigned char
sendRet[18];
ミキサーのEffectLevel(0 -7)

注意1
配列の各引数はそのミキサーのチャンネルを表しています。

注意2
PANは以下のような「パラメータ/バランス」の対応になります。
パラメータ
0 
1 
2 
3 
4 
5 
...
15 
16
17
18
19
...
31 
バランス
C 
R1
R2
R3
R4
R5
...
R15
C 
L1
L2
L3
...
L15

---------------------------

項 目:Velocityデータ
サイズ:46バイト*Velocityの総数
サイズ
引 数
説 明
32
Str31
name;
ベロシティーの名前
2
short
point0;
ベロシティーポイント0の位置(0 -127)
2
short
level0;
ベロシティーポイント0のレベル(0 -127)
2
short
point1;
ベロシティーポイント1の位置(0 -127)
2
short
level1;
ベロシティーポイント1のレベル(0 -127)
2
short
point2;
ベロシティーポイント2の位置(0 -127)
2
short
level2;
ベロシティーポイント2のレベル(0 -127)
2
short
level3;
ベロシティーポイント3のレベル(0 -127)

---------------------------

項 目:PEGデータ
サイズ:60バイト*PEGの総数
サイズ
引 数
説 明
32
Str31
name;
	PEGの名前
2
short
dly;
	Delayタイム(0 -127)
2
short
ol;
Offsetレベル(-127 - 127)
2
short
al;
Attackレベル(-127 - 127)
4
long
at;
Attackタイム(0 -2048)
2
short
dl;
Decayレベル(-127 - 127)
4
long
dt;
Decayタイム(0 -2048)
2
short
sl;
Sustainレベル(-127 - 127)
4
long
st;
Sustaunタイム(0 -2048)
2
short
rl;
Releaseレベル(-127 - 127)
4
long
rt;
Releaseタイム(0 -8192)

---------------------------

項 目:PLFOデータ
サイズ:40バイト*PLFOの総数
サイズ
引 数
説 明
32
Str31
name;
PLFOの名前
2
short
dly;
Delayタイム
2
short
freq;
PLFO周波数
2
short
amp;
アンプ
2
short
fdTime;
フェードタイム

---------------------------

波形データ
後半部に当たる波形データには圧縮は全くかかっていません。
バンクファイルの保存の場合は使用された波形を判別し保存するようになっています。

---------------------------

データの区切り用
"0xFFFF"

---------------------------

項 目:波形の保存
サイズ:92バイト+波形のサイズ
サイズ
引 数
説 明
32
Str63
name;
波形ファイルの名前
4
long
dataSize;
データサイズ(含ヘッダー)
4
long
numChannels;
チャンネル数
4
long
numSampleFrames;
サンプルフレーム数
1
char
sampleSize;
サンプルサイズ
4
long
sampleRate;
サンプルレート
4
long
start;
ループスタート
4
long
end;
ループエンド
x
char
waveData[];
実際の波形データ

注 意
YAMAHA製トーンエディターからデータをコンバートしてきた場合、サンプルレー トが検出できません。しかし再生レートはレイヤーが持つベースノートとファイ ンチューンで行いますのでサンプルレートは0でもかまいません。

-------End of file---------

戻る進む
SOUND Manualトーンエディタユーザーズマニュアル/
Copyright SEGA ENTERPRISES, LTD., 1997