(vfw.h) 的 AVICOMPRESSOPTIONS 結構
AVICOMPRESSOPTIONS 結構包含數據流的相關信息,以及其壓縮和儲存方式。 此結構會將數據傳遞至 AVIMakeCompressedStream 函式 (或 AVISave 函式,該函式會使用 AVIMakeCompressedStream) 。
語法
typedef struct {
DWORD fccType;
DWORD fccHandler;
DWORD dwKeyFrameEvery;
DWORD dwQuality;
DWORD dwBytesPerSecond;
DWORD dwFlags;
LPVOID lpFormat;
DWORD cbFormat;
LPVOID lpParms;
DWORD cbParms;
DWORD dwInterleaveEvery;
} AVICOMPRESSOPTIONS, *LPAVICOMPRESSOPTIONS;
成員
fccType
指出數據流類型的四個字元程式代碼。 已針對在 AVI 數據流中常見的數據定義下列常數:
常數 | 描述 |
---|---|
|
表示音訊數據流。 |
|
表示 MIDI 數據流。 |
|
表示文字數據流。 |
|
表示視訊串流。 |
fccHandler
儲存 (時壓縮此視訊串流的四個字元程序代碼,例如 mmioFOURCC ('M','S','V','C') ) 。 這個成員不會用於音訊數據流。
dwKeyFrameEvery
視訊主要畫面格之間的期間上限。 只有在設定AVICOMPRESSF_KEYFRAMES旗標時,才會使用此成員;否則,每個視訊畫面都是主要畫面格。
dwQuality
傳遞至視訊設備的質量價值。 這個成員不會用於音訊設備。
dwBytesPerSecond
視訊壓縮數據速率。 只有在設定AVICOMPRESSF_DATARATE旗標時,才會使用此成員。
dwFlags
用於壓縮的旗標。 已定義下列值:
名稱 | 描述 |
---|---|
|
使用 dwBytesPerSecond 中指定的數據速率壓縮此視訊數據流。 |
|
將每個 dwInterleaveEvery 畫面與第一個數據流相互交錯。 |
|
儲存此視訊數據流,並至少包含每個 dwKeyFrameEvery 畫面的主要畫面格。 根據預設,每個畫面都會是主要畫面格。 |
|
使用此結構中的數據來設定 AVISaveOptions 的預設壓縮值。 如果傳遞空結構且未設定此旗標,則會選擇一些預設值。 |
lpFormat
定義數據格式之結構的指標。 如果是音訊串流,這是 LPWAVEFORMAT 結構。
cbFormat
lpFormat 所參考數據的大小,以位元組為單位。
lpParms
視訊設備特定數據;在內部使用。
cbParms
lpParms 所參考數據的大小,以位元組為單位
dwInterleaveEvery
Interleave Factor for intersperspersing stream data with data from the first stream. 只有在設定AVICOMPRESSF_INTERLEAVE旗標時才使用。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
標頭 | vfw.h |
另請參閱
AVIFile 函式和宏