Platform SDK: DirectX

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 で宣言。