set 命令

注意

無偏差通訊 Microsoft 支援多元且包容性的環境。 在本檔中,有 'slave' 一詞的參考。 Microsoft Bias-Free通訊的樣式指南 會將這視為排除字組。 此字組是目前在命令中使用的字組。 為了一致性,本檔包含此字。 當此命令中改變此字時,我們會更正這份檔以對齊方式。

set 命令會建立裝置的控制設定。 CD 音訊、數位視訊、MIDI 排序器、VCR、videodisc、video-overlay 和電壓音訊裝置可辨識此命令。

若要傳送此命令,請使用lpszCommand參數集呼叫mciSendString函式,如下所示。

_stprintf_s(
  lpszCommand,
  TEXT("set %s %s %s"),
  lpszDeviceID,
  lpszSetting,
  lpszFlags
);
      

參數

lpszDeviceID

MCI 裝置的識別碼。 當裝置開啟時,會指派此識別碼或別名。

lpszSetting

用來建立控制項設定的旗標。 下表列出可辨識每個類型所使用 之 set 命令和旗標的裝置類型。

裝置類型 命令旗標
cdaudio
  • 音訊全部關閉
  • 音訊全部開啟
  • 音訊關閉
  • 左邊的音訊
  • 音訊右關閉
  • 音訊右方
  • 門關閉
  • 門開啟
  • 時間格式毫秒
  • 時間格式 msf
  • time 格式 tmsf
digitalvideo
  • 音訊全部關閉
  • 音訊全部開啟
  • 音訊關閉
  • 左邊的音訊
  • 音訊右關閉
  • 音訊右方
  • 門關閉
  • 門開啟
  • 檔案格式 格式
  • 完全搜尋
  • 完全關閉搜尋
  • 速度 因素
  • 仍然 檔案格式
  • 時間格式框架
  • 時間格式毫秒
  • 視訊關閉
  • 視訊開啟
overlay
  • 音訊全部關閉
  • 音訊全部開啟
  • 音訊關閉
  • 左邊的音訊
  • 音訊右關閉
  • 音訊右方
  • 門關閉
  • 門開啟
  • 視訊關閉
  • 視訊開啟
排序器
  • 音訊全部關閉
  • 音訊全部開啟
  • 音訊關閉
  • 左邊的音訊
  • 音訊右關閉
  • 音訊右方
  • 門關閉
  • 門開啟
  • master MIDI
  • master none
  • master SMPTE
  • 位移 時間
  • 埠對應程式
  • 埠無
  • port_number
  • 從屬檔案
  • 從屬 MIDI
  • 從屬無
  • 從屬 SMPTE
  • tempo tempo_value
  • 時間格式毫秒
  • 時間格式 SMPTE fps
  • 時間格式 SMPTE 30 drop
  • 時間格式歌曲指標
錄影機
  • 在 上組合記錄
  • 元件記錄關閉
  • 音訊全部關閉
  • 音訊全部開啟
  • 音訊關閉
  • 左邊的音訊
  • 音訊右關閉
  • 音訊右方
  • 時鐘 時間
  • 計數器格式
  • 計數器
  • 門關閉
  • 門開啟
  • 索引計數器
  • 索引日期
  • 索引時間
  • 索引時間
  • codelength 持續時間
  • 暫停 逾時
  • 後置註冊持續時間 -
  • duration
  • 電源開啟
  • 電源關閉
  • 預先 註冊持續時間
  • 記錄格式 SP
  • 記錄格式 LP
  • 記錄格式 EP
  • 速度 因素
  • 時間格式框架
  • 時間格式 hms
  • 時間格式毫秒
  • 時間格式 msf
  • 時間格式 SMPTE fps
  • 時間格式 SMPTE 30 drop
  • time 格式 tmsf
  • 時間模式計數器
  • 時間模式偵測
  • 時間模式時間代碼
  • 追蹤加號
  • 追蹤減號
  • 追蹤重設
videodisc
  • 音訊全部關閉
  • 音訊全部開啟
  • 音訊關閉
  • 左邊的音訊
  • 音訊右關閉
  • 音訊右方
  • 門關閉
  • 門開啟
  • 時間格式框架
  • 時間格式 hms
  • 時間格式毫秒
  • 時間格式追蹤
  • 視訊關閉
  • 視訊開啟
waveaudio
  • 對齊 整數
  • 任何輸入
  • 任何輸出
  • 音訊全部關閉
  • 音訊全部開啟
  • 音訊關閉
  • 左邊的音訊
  • 音訊右關閉
  • 音訊右方
  • bitspersample bit_count
  • bytespersec byte_rate
  • 通道 channel_count
  • 門關閉
  • 門開啟
  • 格式標記 pcm
  • 格式 標籤標籤
  • 輸入 整數
  • 輸出 整數
  • samplespersec 整數
  • 時間格式位元組
  • 時間格式毫秒
  • 時間格式範例

下表列出可以在 lpszSetting 參數及其意義中指定的旗標。

意義
對齊 整數 設定資料區塊的對齊方式,相對於傳遞至電壓音訊裝置的資料開始。 檔案會以這個格式儲存。
任何輸入 在錄製時,使用支援目前格式的任何輸入。 這是預設值。
任何輸出 播放時,請使用支援目前格式的任何輸出。 此為預設值。
在 上組合記錄
元件記錄關閉
在元件模式中,所有曲目都會記錄為裝置所定義。 根據預設,大部分的 VCR 都處於元件模式。
音訊全部關閉
音訊全部開啟
停用或啟用音訊輸出。 視訊重迭裝置、MCISEQ 排序器和 MCIWAVE 波波音訊裝置不支援此旗標。
音訊關閉
左邊的音訊
音訊右關閉
音訊右方
停用或啟用左側或右音訊通道的輸出。 視訊重迭裝置、MCISEQ 排序器和 MCIWAVE 波波音訊裝置不支援此旗標。
bitspersample bit_count 設定每個 PCM 的位數, (Pulse Code 設定已播放或錄製的樣本) 。 檔案會以這個格式儲存。
bytespersec byte_rate 設定每秒播放或錄製的平均位元組數目。 檔案會以這個格式儲存。
通道 channel_count 設定播放和錄製的頻道。 檔案會以這個格式儲存。
時鐘 時間 將外部時鐘上的時間設定為 time。 格式指定為長不帶正負號的整數。
計數器格式 設定計數器的時間格式,如 狀態 「counter」 所傳回。 如需適用類型的相關資訊,請參閱 設定 「時間格式」命令。
計數器 將 VCR 計數器設定為指定的值。 值必須以目前的計數器格式指定。 如需詳細資訊,請參閱 set 「counter format」 命令。
門關閉 如果可能的話,請撤銷匣並關閉門。 針對 VCR,會自動載入磁帶。
門開啟 盡可能開啟門並退出匣或磁帶。
檔案格式 格式 指定用於 儲存擷取 命令的檔案格式。 如果省略,這可能預設為裝置驅動程式定義的格式。 如果指定的檔案格式與目前選取的演算法和品質衝突,則會變更為檔案格式的預設值。 已定義下列檔案格式:
  • avi:指定 AVI 格式。
  • avss:指定 AVSS 格式。
  • dib:指定 DIB 格式。
  • jfif:指定 JFIF 格式。
  • jpeg:指定 JPEG 格式。
  • mpeg:指定 MPEG 格式。
  • rdib:指定 RLE DIB 格式。
  • rjpeg:指定 RJPEG 格式。
格式標記 pcm 將格式類型設定為 PCM 以進行播放和錄製。 檔案會以這個格式儲存。
格式 標籤標籤 設定播放和錄製的格式類型。 檔案會以這個格式儲存。
index timecode
索引計數器
索引日期
索引時間
在 VCR 上設定目前的顯示畫面。
輸入 整數 設定做為輸入的音訊通道。
長度 持續時間 設定 VCR 中磁帶的使用者指定長度。 這個長度是由 狀態 「length」 命令所傳回,並提供此長度,以便與需要此命令傳回有效長度的應用程式相容。
master midi 將 MIDI 排序器設定為同步處理來源。 同步處理資料會以 MIDI 格式傳送。 MCISEQ 排序器不支援此旗標。
master none 禁止 MIDI 排序器傳送同步處理資料。 MCISEQ 排序器不支援此旗標。
master smpte 將 MIDI 排序器設定為同步處理來源。 同步處理資料會以 SMPTE (電影與電視工程師社會) 格式傳送。 MCISEQ 排序器不支援此旗標。
位移 時間 設定 SMPTE 位移 時間。 位移是以 SMPTE 為基礎的序列開始時間。 時間會以hhmmssff表示,其中hh為小時、mm為分鐘、ss為秒,而 ff為框架。
輸出 整數 設定做為輸出的音訊通道。
暫停 逾時 設定 暫停 命令的最大持續時間,以毫秒為單位。 0 的 逾時 值表示不會發生逾時。
後置 註冊持續時間 設定發出停止或暫停命令時,需要以目前時間格式設定 VCR 傳輸所需的長度。
埠對應程式 將 MIDI 對應程式設定為接收 MIDI 訊息的埠。 如果另一個應用程式正在使用 MIDI 對應程式或所需的埠,此命令就會失敗。
埠無 停用 MIDI 訊息的傳送。 此命令也會關閉 MIDI 埠。
port_number 設定接收 MIDI 訊息的 MIDI 埠。 如果您嘗試開啟的埠正由另一個應用程式使用,此命令就會失敗。
電源開啟
電源關閉
將裝置電源設定為開啟或關閉。
預先 註冊持續時間 設定穩定 VCR 輸出所需的目前時間格式長度。
記錄格式 SP
記錄格式 LP
記錄格式 EP
將 VCR 的錄製模式設定為 SP 以進行標準播放、適用于延伸播放的 EP,或長時間播放的 LP。 這些值並非 VHS 特定值。 它們會對應至具有其他磁帶格式的任何三種適當模式。 例如,SP 會對應到最快的高品質錄製。
samplespersec 整數 設定播放和錄製的取樣率。 檔案會以這個格式儲存。
完全搜尋
完全關閉搜尋
選取兩種搜尋模式之一。 在 「完全開啟搜尋」時,搜尋一律會移至指定的框架。 使用「完全關閉搜尋」,搜尋將會移至最接近的主要畫面格,再移至指定的畫面格。
從屬檔案 將 MIDI 排序器設定為使用檔案資料做為同步處理來源。 這是預設值。
從屬 midi 將 MIDI 排序器設定為使用同步處理來源的傳入 MIDI 資料。 排序器會使用 MIDI 格式辨識同步處理資料。 MCISEQ 排序器不支援此旗標。
從屬無 將 MIDI 排序器設定為忽略同步處理
從屬 smpte 將 MIDI 排序器設定為使用同步處理來源的傳入 MIDI 資料。 排序器會使用 SMPTE 格式辨識同步處理資料。 MCISEQ 排序器不支援此旗標。
速度因數 從工作區設定視訊和音訊播放的相對速度。 Factor 是標準畫面播放速率與所需畫面播放速率之間的比率,其中所指的畫面播放速率會指定為 1000。 (500 的速率是半正常速度,2000 是一般速度兩倍,依此類) 將速度設定為零會儘快播放視訊,而不需要卸載畫面格和沒有音訊。
仍然檔案格式 格式 指定用於擷取命令的檔案格式。
tempo tempo_value 根據目前的時間格式,設定序列的暫存。 若為以 PPQN 為基礎的檔案,tempo_value會解譯為每分鐘的節節。 如果是以 SMPTE 為基礎的檔案,tempo_value會解譯為每秒的畫面格。
時間格式位元組 在 PCM 檔案格式中,將時間格式設定為位元組。 所有位置資訊都會在此命令之後指定為位元組。
時間格式框架 將時間格式設定為框架。 所有使用位置值的命令都會假設畫面。 當裝置開啟時,畫面格是預設模式。 使用 CAV 格式的視訊磁片支援。
時間格式 hms 將時間格式設定為小時、分鐘和秒。 所有使用位置值的命令都會假設 HMS。 HMS 是 CLV 視訊磁片的預設格式。 將 HMS 值指定為 hh:mm:ss,其中 hh 為小時、mm 為分鐘,而 ss 為秒。 如果欄位和下列所有欄位都是零,您可以省略欄位。 例如,3、3:0 和 3:0:0 都是表達 3 小時的有效方式。
時間格式毫秒 將時間格式設定為毫秒。 所有使用位置值的命令都會假設毫秒。 您可以將毫秒縮寫為 「ms」。 針對 Sequencer 裝置,順序檔案會將預設格式設定為 PPQN 或 SMPTE。 視訊重迭裝置不支援此旗標。
時間格式 msf 將時間格式設定為分鐘、秒和畫面格。 所有使用位置值的命令都會假設 MSF (CD 音訊的預設格式) 。 將 MSF 值指定為 mm:ss:ff,其中 mm 是分鐘、ss 是秒,而 ff 是框架。 如果欄位和下列所有欄位都是零,您可以省略欄位。 例如,3、3:0 和 3:0:0 是表達 3 分鐘的有效方式。
MSF 欄位具有下列最大值:
  • 分鐘 99
  • 秒 59
  • 畫面格 74
時間格式範例 將時間格式設定為範例。 所有位置資訊都會在此命令之後指定為範例。
時間格式 smpte 24
時間格式 smpte 25
時間格式 smpte 30
將時間格式設定為 SMPTE 畫面播放速率。 針對 VCR,將時間格式設定為 hh:mm:ss:ff,其中法律值是 00:00:00:00 到 23:59:59:xx,而 xx 是秒數 24、25 或 30,如旗標中所指定。 在輸入時,需要冒號 (:) 來分隔元件。 如果最小有效單位為 00,則可以省略它們;例如,02:00 與 02:00:00:00 相同。 所有使用位置值的命令都會採用 SMPTE 格式。
順序檔案會將預設格式設定為 PPQN 或 SMPTE。
time format smpte 30 drop 將時間格式設定為 SMPTE 30 置放畫面播放速率。 對於 VCR,與 SMPTE 30 相同,不同之處在于,某些時間碼位置會從格式卸載,讓每個畫面 (的錄製時間碼位置 (NTSC 畫面播放速率為 29.97 fps) 對應至 30 fps) 的即時 (。 捨棄的 Timecode 位置如下:每分鐘兩分鐘,在分鐘,每 10 分鐘錄製內容的前 9 分鐘。 例如,在 01:04:59:29 時,下一個 timecode 位置會是 01:05:00:02,而不是 01:05:00:00。 所有使用位置值的命令都會採用 SMPTE 格式。
順序檔案會將預設格式設定為 PPQN 或 SMPTE。
時間格式歌曲指標 將時間格式設定為 (第十六個備忘稿) 的歌曲指標。 所有使用位置值的命令都會假設歌曲指標單位。 此旗標僅適用于分割類型 PPQN 序列。
time format tmsf 將時間格式設定為追蹤、分鐘、秒和畫面格。 所有使用位置值的命令都會假設 TMSF。 將 TMSF 值指定為 tt:mm:ss:ff,其中 tt 是追蹤,mm 是分鐘,ss 是秒,而 ff 是框架。 如果欄位和下列所有欄位都是零,您可以省略欄位。 例如,3、3:0、3:0:0 和 3:0:0:0 都是表達追蹤 3 的有效方式。
TMSF 欄位具有下列最大值:
  • 曲目 99
  • 分鐘 90
  • 秒 59
  • 畫面格 74
時間格式追蹤 設定要追蹤的位置格式。 所有使用位置值的命令都會假設追蹤。
時間模式計數器 將位置資訊模式設定為使用 VCR 計數器。
時間模式偵測 根據偵測磁帶上的 timecode 資訊,設定位置資訊模式。 如果偵測到 timecode 資訊,時間類型會設定為 「timecode」;否則,時間類型會設定為 「counter」。 「偵測」是特殊模式。 每當開啟驅動程式時,就會插入新的磁帶,或發出「時間模式」命令,驅動程式會檢查磁帶上可用的目前時間模式,並將 「時間類型」設定為 「timecode」 或 「counter」。 設定「時間類型」之後,驅動程式不會變更它,直到上述其中一個條件再次發生為止。
時間模式 timecode 將位置資訊模式設定為在磁帶上使用「timecode」 資訊。
追蹤加號
追蹤減號
追蹤重設
以細微遞增方式調整視訊tape 傳輸的速度。 從 VCR 取得雜訊圖片時,請使用「追蹤」旗標。 「追蹤加號」會增加傳送速率。 「追蹤減號」會降低傳送速率。 「追蹤重設」會將追蹤調整傳回為零。
視訊關閉 停用視訊輸出。
視訊開啟 啟用視訊輸出。

lpszFlags

可以是 「wait」、「notify」 或兩者。 對於數位視訊和 VCR 裝置,也可以指定「測試」。 如需這些旗標的詳細資訊,請參閱 Wait、Notify 和 Test Flags

傳回值

如果成功或發生錯誤,則傳回零。

備註

建立儲存資料的檔案時,會定義數個波音訊資料的屬性。 這些屬性描述資料在檔案中結構的方式,而且在錄製開始之後便無法變更。 下列清單會識別這些屬性:

  • 對齊
  • bitspersample
  • bytespersec
  • 通道
  • 格式標記
  • samplespersec

範例

下列命令會將時間格式設定為毫秒,並將電壓音訊格式設定為 8 位、mono、11 kHz。

set mysound time format ms bitspersample 8 channels 1 samplespersec 11025

規格需求

需求
最低支援的用戶端
Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限傳統型應用程式]

另請參閱

Mci

MCI 命令字串

捕獲

pause

儲存

停止