MCI_SETVIDEO命令
MCI_SETVIDEO命令會設定與視訊播放相關聯的值。 數位視訊和 VCR 裝置可辨識此命令。
若要傳送此命令,請使用下列參數呼叫 mciSendCommand 函式。
MCIERROR mciSendCommand(
MCIDEVICEID wDeviceID,
MCI_SETVIDEO,
DWORD dwFlags,
(DWORD) (LPMCI_GENERIC_PARMS) lpSetVideo
);
參數
-
wDeviceID
-
要接收命令訊息之 MCI 裝置的裝置識別碼。
-
dwFlags
-
MCI_NOTIFY、 MCI_WAIT或 MCI_TEST。 如需這些旗標的相關資訊,請參閱 Wait、Notify 和 Test Flags。
-
lpSetVideo
-
MCI_GENERIC_PARMS結構的指標。 (具有擴充命令集的裝置,可能會以裝置特定的結構取代此結構。)
傳回值
如果成功或發生錯誤,則傳回零。
備註
下列其他旗標會搭配 「digitalvideo」 裝置類型使用:
-
MCI_DGV_SETVIDEO_ALG
-
lpSetVideo所識別結構的lpstrAlgorithm成員包含緩衝區的位址,其中包含影片壓縮演算法的名稱。 後續 MCI_RESERVE 或 MCI_RECORD 命令會使用壓縮演算法。 可用的演算法相依于裝置。
如果指定的演算法與目前的檔案格式不相容,則檔案格式會變更為演算法的預設格式。
-
MCI_DGV_SETVIDEO_CLOCKTIME
-
搭配 MCI_DGV_SETVIDEO_OVER使用時,會以毫秒為單位指定時間,而且是絕對時間。 (這次並未逐步播放 workspace.)
-
MCI_DGV_SETVIDEO_INPUT
-
修改 MCI_DGV_SETVIDEO_BRIGHTNESS、 MCI_DGV_SETVIDEO_COLOR、 MCI_DGV_SETVIDEO_CONTRAST、 MCI_DGV_SETVIDEO_GAMMA、 MCI_DGV_SETVIDEO_SHARPNESS或 MCI_DGV_SETVIDEO_TINT ,使其會影響輸入訊號,並修改記錄的內容。 可能的話,這是監視輸入時的預設值。
-
MCI_DGV_SETVIDEO_ITEM
-
影片常數是在lpSetVideo所識別結構的dwItem成員中指定。 常數會識別正在設定的值。 您可以使用這個旗標來指定下列常數:
-
MCI_AVI_SETVIDEO_DRAW_PROCEDURE
-
新的繪圖程式位址是在lpSetVideo所識別結構的dwValue成員中指定。 只有在裝置閒置時,才可以指定新的繪圖程式。 此旗標只能由 MCIAVI 數位視訊驅動程式辨識。 字串命令介面中沒有相當於這個旗標。
-
MCI_AVI_SETVIDEO_PALETTE_COLOR
-
新的調色盤色彩是在lpSetVideo所識別結構的dwOver和dwValue成員中指定。 dwOver成員會指定要變更之色彩的調色盤索引,而dwValue成員會將新色彩指定為 RGB 值。 當您使用此常數時,也必須指定具有MCI_DGV_SETVIDEO_ITEM MCI_DGV_SETVIDEO_OVER和MCI_DGV_SETVIDEO_VALUE旗標。 此旗標只能由 MCIAVI 數位視訊驅動程式辨識。
-
MCI_AVI_SETVIDEO_PALETTE_HALFTONE
-
表示應該使用半色調調色盤,而不是預設調色盤。 此旗標只能由 MCIAVI 數位視訊驅動程式辨識。
-
MCI_DGV_SETVIDEO_BITSPERPEL
-
每個圖元的位數是在lpSetVideo所識別結構的dwValue成員中指定。 每個圖元的位數用於儲存擷取或記錄的資料
-
MCI_DGV_SETVIDEO_BRIGHTNESS
-
視訊亮度等級會指定為lpSetVideo所識別結構的dwValue成員的因數。
-
MCI_DGV_SETVIDEO_COLOR
-
視訊色彩飽和度等級會指定為lpSetVideo所識別結構的dwValue成員的因數。
-
MCI_DGV_SETVIDEO_CONTRAST
-
視訊對比層級會指定為lpSetVideo所識別結構的dwValue成員的因數。
-
MCI_DGV_SETVIDEO_FRAME_RATE
-
畫面播放速率是在lpSetVideo所識別結構的dwValue成員中指定。 速率會以每秒 1000 次的畫面單位來指定。 例如,每秒 29.97 個畫面格會指定為 29970。
-
MCI_DGV_SETVIDEO_GAMMA
-
gamma 修正指數值是在lpSetVideo所識別結構的dwValue成員中指定。 Gamma 校正會調整呈現來源編碼的濃度與顯示亮度之間的對應。 值為指數乘以 1000。 例如,2200 表示指數為 2.2。 值為 1000 表示 1 的指數,其不會套用任何 gamma 校正。
-
MCI_DGV_SETVIDEO_KEY_COLOR
-
索引鍵色彩是在lpSetVideo所識別結構的dwValue成員中指定。 索引鍵色彩是 RGB 值。
-
MCI_DGV_SETVIDEO_KEY_INDEX
-
索引鍵索引值是在lpSetVideo所識別結構的dwValue成員中指定。 索引參數是實體調色盤索引。
-
MCI_DGV_SETVIDEO_PALHANDLE
-
調色盤控制碼是在lpSetVideo所識別結構的dwValue成員中指定。 調色盤控制碼包含在低序字中。 數位視訊裝置不應該釋放使用此命令傳遞的調色盤。 應用程式在關閉裝置之後應該釋出它。 只有使用調色盤的裝置才支援此旗標。 如果這個指定的調色盤控制碼是零,則會使用預設調色盤。
-
MCI_DGV_SETVIDEO_SHARPNESS
-
視訊尖角值會指定為lpSetVideo所識別結構的dwValue成員的因數。
-
MCI_DGV_SETVIDEO_SOURCE
-
指定視訊輸入來源的常數,是在lpSetVideo所識別結構的dwValue成員中指定。 定義下列常數:
- MCI_DGV_SETVIDEO_SRC_NTSC:NTSC 電視。
- MCI_DGV_SETVIDEO_SRC_PAL:PAL 電視。
- MCI_DGV_SETVIDEO_SRC_RGB:RGB 影片。
- MCI_DGV_SETVIDEO_SRC_SECAM:SECAM 電視。
- MCI_DGV_SETVIDEO_SRC_SVIDEO:S-Video。
-
MCI_DGV_SETVIDEO_STREAM
-
影片資料流程是在lpSetVideo所識別結構的dwValue成員中指定。 整數值會指定從工作區播放的視訊串流。 如果未指定資料流程,而且檔案格式未定義預設資料流程,則會播放第一個實際交錯的視訊資料流程。
-
MCI_DGV_SETVIDEO_TINT
-
影片色調值會指定為lpSetVideo所識別結構的dwValue成員的因數。 一般而言,這項調整會以許多色彩電視集的色調控制項為模型,其中 250 定義為綠色、750 定義為紅色,以及 0 (或 1000) 定義為藍色。 標準值一律為 500。
-
MCI_DGV_SETVIDEO_OUTPUT
-
會修改MCI_DGV_SETVIDEO_BRIGHTNESS、MCI_DGV_SETVIDEO_COLOR、MCI_DGV_SETVIDEO_CONTRAST、MCI_DGV_SETVIDEO_GAMMA、MCI_DGV_SETVIDEO_SHARPNESS或MCI_DGV_SETVIDEO_TINT旗標,使其只會影響顯示的訊號,而不是記錄的內容。 可能的話,這是監視檔案時的預設值。
-
MCI_DGV_SETVIDEO_OVER
-
轉換長度參數包含在lpSetVideo所識別結構的dwOver成員中。 轉換長度會指定目前時間格式 () 進行變更所需的時間。 如果未使用此旗標,就會立即進行變更。
-
MCI_DGV_SETVIDEO_QUALITY
-
lpSetVideo所識別結構的lpstrQuality成員包含描述視訊品質的緩衝區位址。 緩衝區中的文字字串會指定視訊壓縮演算法的特性。
MCI_DGV_SETVIDEO_ALG旗標可用來選取指定演算法的品質描述元。 如果省略此旗標,則會使用目前的演算法。
可用的演算法和描述元名稱取決於裝置。 每個裝置都會提供可用演算法的檔,以及適用描述項名稱的描述。 MCI_QUALITY命令可以定義其他描述元名稱。 所有裝置都支援描述項「低」、「中」和「高」。 預設值為驅動程式專屬。
-
MCI_DGV_SETVIDEO_RECORD
-
指定錄製是否包含或排除視訊資料。 與 MCI_SET_ON結合時,會錄製視訊資料。 結合 MCI_SET_OFF時,會排除視訊資料。 預設值包含視訊資料。
-
MCI_DGV_SETVIDEO_SRC_NUMBER
-
影片來源的數位是在lpSetVideo所識別結構的dwSourceNumber成員中指定。 如果 MCI_DGV_SETVIDEO_VALUE指定的類型有多個輸入,則值會選取輸入。 此旗標必須一律與 MCI_DGV_SETVIDEO_SOURCE搭配使用。 不過,如果省略 MCI_DGV_SETVIDEO_VALUE ,則指定的來源編號會指出 MCI_LIST命令中所 指定的絕對來源。
-
MCI_DGV_SETVIDEO_STILL
-
指定的演算法名稱或品質值適用于仍然影像。
每個裝置驅動程式都必須支援「無」的演算法,這表示沒有壓縮。 此為預設值。 在此情況下,數位視訊裝置會將影像儲存為 RGB 裝置獨立點陣圖, (DIB) 。
-
MCI_DGV_SETVIDEO_VALUE
-
值包含在lpSetVideo所識別結構的dwValue成員中。 值的意義是由 MCI_DGV_SETVIDEO_ITEM 旗標所指定。
-
MCI_SET_OFF
-
停用視訊輸出。 對於數位視訊裝置,停用視訊會將 MCI_PUT 命令所定義的目的地矩形像素設定為純色 (或其預設值,目前視窗的用戶端區域) 為純色,但不會影響畫面緩衝區。 如有需要 ,您可以使用 MCI_WINDOW 命令隱藏視窗。 視訊的來源,無論是工作區或外部輸入,都可能會繼續將新影像儲存在畫面緩衝區中,但直到啟用視訊為止才會顯示這些影像。 雖然應用程式應該使用 MCI_SETVIDEO 命令來控制此函式,但數位視訊裝置仍必須支援此旗標。 開啟之後的預設值為開啟。
-
MCI_SET_ON
-
啟用視訊輸出。
若為數字視訊裝置, lpSetVideo 參數會指向 MCI_DGV_SETVIDEO_PARMS 結構。
下列其他旗標會搭配 「vcr」 裝置類型使用:
-
MCI_VCR_SETVIDEO_RECORD
-
將影片錄製設定為開啟或關閉。 與下列其中一個旗標搭配使用:
- MCI_SET_ON。 視訊錄製開啟。
- MCI_SET_OFF。 視訊錄製關閉。 可能需要先使用 MCI_SET 命令關閉元件錄製 (,並將 MCI_VCR_SET_ASSEMBLE_RECORD 旗標設定為關閉) ,才能關閉視訊錄製。
-
MCI_TRACK
-
lpSetVideo所識別結構的dwTrack成員會指定哪些追蹤受到命令影響。
-
MCI_VCR_SETVIDEO_SOURCE
-
設定視訊來源,且必須與 MCI_VCR_SETVIDEO_TO 旗標搭配使用。
-
MCI_VCR_SETVIDEO_MONITOR
-
設定視訊來源監視器,且必須與 MCI_VCR_SETVIDEO_TO 旗標搭配使用。
-
MCI_VCR_SETVIDEO_TO
-
lpSetVideo所識別結構的dwTo成員包含下列其中一個常數:
- **MCI\_VCR\_SRC\_TYPE\_TUNER**
- **MCI\_VCR\_SRC\_TYPE\_LINE**
- **MCI\_VCR\_SRC\_TYPE\_AUX**
- **MCI\_VCR\_SRC\_TYPE\_GENERIC**
- **MCI\_VCR\_SRC\_TYPE\_MUTE**
- **MCI\_VCR\_SRC\_TYPE\_OUTPUT**
- **MCI\_VCR\_SRC\_TYPE\_RGB**
- **MCI\_VCR\_SETVIDEO\_NUMBER**
lpSetVideo所識別結構的dwNumber成員包含要使用之 dwTo成員中指定的類型) (視訊輸入。
若為 VCR 裝置, lpSetVideo 參數會指向 MCI_VCR_SETVIDEO_PARMS 結構。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows 2000 Server [僅限傳統型應用程式] |
標頭 |
|