DMUS_REGION
DMUS_REGION 構造体は、DLS ダウンロードのリージョンを定義する。1 つまたは複数のリージョンを 1 つの音色バッファに埋め込み、音色ヘッダー チャンク DMUS_INSTRUMENT によって参照できる。
typedef struct {
RGNRANGE RangeKey;
RGNRANGE RangeVelocity;
USHORT fusOptions;
USHORT usKeyGroup;
ULONG ulRegionArtIdx;
ULONG ulNextRegionIdx;
ULONG ulFirstExtCkIdx;
WAVELINK WaveLink;
WSMPL WSMP;
WLOOP WLOOP[1];
} DMUS_REGION;
- RangeKey
- このリージョンのキー範囲。
- RangeVelocity
- このリージョンのベロシティ範囲。
- fusOptions
- このリージョンの合成オプション。次のフラグが定義されている。
- F_RGN_OPTION_SELFNONEXCLUSIVE
- 合成エンジンが同じ音符の 2 回目のノートオンを受け取ると、2 番目の音符は最初の音符と同様に演奏される。デフォルトではこのオプションはオフになっているので、合成エンジンは最初の音符にノートオフを強制的に適用する。
- usKeyGroup
- ドラム楽器のキーグループ。キーグループの値により、同じグループに所属する 1 つのドラム楽器内で複数のリージョンを利用できる。あるキー グループを指定してある音符を演奏しているときに、同じキー グループを指定して他の音符を演奏するよう合成エンジンが指示を受けた場合、合成エンジンは同じキー グループの値を持つ他のすべての音符をできるだけ早くオフにすべきである。現在、キー グループ 1 〜 15 が有効であり、0 はキー グループが存在しないことを意味する。
- ulRegionArtIdx
- DMUS_OFFSETTABLE 構造体内にある、リージョンのグローバル アーティキュレーション チャンクのインデックス。この値が 0 の場合、リージョンはアーティキュレーションを保持せず、楽器のグローバル アーティキュレーションに依存する。
- ulNextRegionIdx
- DMUS_OFFSETTABLE 構造体内にある、リージョン リスト内の次のリージョンのインデックス。この値が 0 の場合、それ以上リージョンはない。
- ulFirstExtCkIdx
- DMUS_OFFSETTABLE 構造体内にある、サードパーティ拡張チャンクのインデックス。この値が 0 の場合、リージョンには拡張チャンクが関連付けられていない。
- WaveLink
- リージョンからウェーブへのリンクを管理する、標準的な DLS 構造体 (Dls1.h ヘッダー ファイル内で宣言されている)。WAVELINK 構造体の ulTableIndex メンバは、関連付けられたウェーブ バッファのダウンロード識別子を提供する (詳細については、「DMUS_DOWNLOADINFO」と「下位レベル DLS」を参照すること)。
- WSMP
- ウェーブの再生を管理する、標準的な DLS 構造体 (Dls1.h 内で宣言されている )。cSampleLoops メンバが 1 の場合、続く WLOOP 構造体はループの開始ポイントと終了ポイントを保持する。
- WLOOP[ ]
- ループを記述する、標準的な DLS 構造体 (Dls1.h 内で宣言されている )。
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dmdls.h で宣言。