ACMSTREAMHEADER 構造体 (msacm.h)
ACMSTREAMHEADER 構造体は、変換ストリームの ACM 変換ソースと宛先バッファーのペアを識別するために使用されるヘッダーを定義します。
構文
typedef struct tACMSTREAMHEADER {
DWORD cbStruct;
DWORD fdwStatus;
DWORD_PTR dwUser;
LPBYTE pbSrc;
DWORD cbSrcLength;
DWORD cbSrcLengthUsed;
DWORD_PTR dwSrcUser;
LPBYTE pbDst;
DWORD cbDstLength;
DWORD cbDstLengthUsed;
DWORD_PTR dwDstUser;
DWORD dwReservedDriver[_DRVRESERVED];
} ACMSTREAMHEADER, *PACMSTREAMHEADER, *LPACMSTREAMHEADER;
メンバー
cbStruct
ACMSTREAMHEADER 構造体のサイズ (バイト単位)。 この構造体を使用してアプリケーションが ACM ストリーム関数を呼び出す前に、このメンバーを初期化する必要があります。 このメンバーで指定するサイズは、基本 ACMSTREAMHEADER 構造体を格納するのに十分な大きさである必要があります。
fdwStatus
変換バッファーに関する情報を提供するフラグ。 このメンバーは、アプリケーションが acmStreamPrepareHeader 関数を呼び出す前に 0 に初期化する必要があります。ストリーム ヘッダーの準備が整っている間は、アプリケーションで変更しないでください。
Name | 説明 |
---|---|
|
ACM またはドライバーによって設定され、変換が完了し、バッファーがアプリケーションに返されることを示します。 |
|
バッファーが変換のためにキューに登録されていることを示すために、ACM またはドライバーによって設定されます。 |
|
ACM によって設定され、バッファーが acmStreamPrepareHeader 関数を使用して準備されたことを示します。 |
dwUser
ユーザー データ。 これには、アプリケーションで指定された任意のインスタンス データを指定できます。
pbSrc
ソース バッファーへのポインター。 ストリーム ヘッダーの準備が維持されている間、このポインターは常に同じ場所を参照する必要があります。 アプリケーションでソースの場所を変更する必要がある場合は、ヘッダーの準備を解除し、別の場所で再表示する必要があります。
cbSrcLength
pbSrc が指すソース バッファーの長さ (バイト単位)。 ヘッダーが準備されている場合、このメンバーはソース バッファーで使用される最大サイズを指定する必要があります。 変換は、元の準備されたサイズ以下のソース長に対して実行できます。 ただし、アプリケーションがヘッダーの準備を解除する場合は、このメンバーを元のサイズにリセットする必要があります。
cbSrcLengthUsed
変換に使用されるデータの量 (バイト単位)。 変換が完了するまで、このメンバーは無効です。 この値は cbSrcLength 以下にすることができます。 アプリケーションは、変換ストリームの次のソース データに進むときに cbSrcLengthUsed メンバーを使用する必要があります。
dwSrcUser
ユーザー データ。 これには、アプリケーションで指定された任意のインスタンス データを指定できます。
pbDst
宛先バッファーへのポインター。 ストリーム ヘッダーの準備が維持されている間、このポインターは常に同じ場所を参照する必要があります。 アプリケーションで宛先の場所を変更する必要がある場合は、ヘッダーの準備を解除し、別の場所で再表示する必要があります。
cbDstLength
pbDst が指す宛先バッファーの長さ (バイト単位)。 ヘッダーが準備されたら、このメンバーは宛先バッファーで使用される最大サイズを指定する必要があります。
cbDstLengthUsed
変換によって返されるデータの量 (バイト単位)。 変換が完了するまで、このメンバーは無効です。 この値は cbDstLength 以下にすることができます。 アプリケーションは、変換ストリームの次の宛先の場所に進むときに 、cbDstLengthUsed メンバーを使用する必要があります。
dwDstUser
ユーザー データ。 これには、アプリケーションで指定された任意のインスタンス データを指定できます。
dwReservedDriver[_DRVRESERVED]
予約済みです。使わないでください。 このメンバーは、アプリケーションによる初期化を必要とせず、ヘッダーの準備中に変更しないでください。
解説
変換に ACMSTREAMHEADER 構造体を使用する前に、 acmStreamPrepareHeader 関数を使用して準備する必要があります。 ACMSTREAMHEADER 構造体を使用してアプリケーションが終了したら、ソース バッファーとコピー先バッファーを解放する前に、acmStreamUnprepareHeader 関数を呼び出す必要があります。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
Header | msacm.h |
関連項目
オーディオ圧縮マネージャー