MCI_SETAUDIO命令

MCI_SETAUDIO命令會設定與音訊播放和擷取相關聯的值。 數位視訊和 VCR 裝置可辨識此命令。

若要傳送此命令,請使用下列參數呼叫 mciSendCommand 函式。

MCIERROR mciSendCommand(
  MCIDEVICEID wDeviceID, 
  MCI_SETAUDIO, 
  DWORD dwFlags, 
  (DWORD) (LPMCI_GENERIC_PARMS) lpSetAudio
);

參數

wDeviceID

要接收命令訊息之 MCI 裝置的裝置識別碼。

dwFlags

MCI_NOTIFY、MCI_WAIT或MCI_TEST。 如需這些旗標的相關資訊,請參閱 Wait、Notify 和 Test Flags

lpSetAudio

MCI_GENERIC_PARMS結構的指標。 (具有擴充命令集的裝置,可能會以裝置特定的結構取代此結構。)

傳回值

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

備註

下列旗標適用于 digitalvideo 裝置類型:

MCI_DGV_SETAUDIO_ALG

lpSetAudio所識別結構的lpstrAlgorithm成員包含包含音訊壓縮演算法名稱的緩衝區位址。 後續 MCI_RESERVEMCI_RECORD 命令會使用壓縮演算法。 可用的演算法相依于裝置。 如果演算法與目前的檔案格式不相容,則檔案格式會變更為演算法的預設格式。

MCI_DGV_SETAUDIO_CLOCKTIME

指定的時間是以毫秒為單位,且與MCI_DGV_SETAUDIO_OVER搭配使用時為絕對時間。 (這次並未逐步播放 workspace.)

MCI_DGV_SETAUDIO_INPUT

修改 Bass、treble 或 volume 旗標,使其會影響輸入訊號,並修改所錄製的內容。 可能的話,這是監視輸入時的預設值。

MCI_DGV_SETAUDIO_ITEM

音訊常數是在lpSetAudio所識別結構的dwItem成員中指定。 常數會識別正在設定的值。 定義下列常數:

MCI_DGV_SETAUDIO_AVGBYTESPERSEC

lpSetAudio所識別結構的dwValue成員中會指定平均位元組數目。 這個值會設定 PCM (Pulse Code Adaptive) 和 ADPCM (調適型差異脈衝編碼) 格式播放或錄製的每秒位元組數。 檔案會以這個格式儲存。

MCI_DGV_SETAUDIO_BASS

音訊低頻率層級會指定為lpSetAudio所識別結構的dwValue成員的因數。

MCI_DGV_SETAUDIO_BITSPERSAMPLE

每個樣本的位數目是在lpSetAudio所識別結構的dwValue成員中指定。 此值會設定 PCM 格式所播放或錄製每個樣本的位數。 檔案會以這個格式儲存。

MCI_DGV_SETAUDIO_BLOCKALIGN

資料區塊對齊是在lpSetAudio所識別結構的dwValue成員中指定。 這個值會設定相對於輸入波資料開頭的資料區塊對齊方式。

MCI_DGV_SETAUDIO_SAMPLESPERSEC

取樣率是在lpSetAudio所識別結構的dwValue成員中指定。 此值會設定使用 PCM 和 ADPCM 演算法播放和錄製的取樣率。 檔案會以這個格式儲存。

MCI_DGV_SETAUDIO_SOURCE

指定音訊輸入來源的常數會包含在lpSetAudio所識別結構的dwValue成員中。 下列常數是針對音訊輸入來源所定義的:

MCI_DGV_SETAUDIO_SOURCE_AVERAGE

左右音訊通道的平均值。

MCI_DGV_SETAUDIO_SOURCE_LEFT

左側音訊通道。

MCI_DGV_SETAUDIO_SOURCE_RIGHT

右聲道。

MCI_DGV_SETAUDIO_SOURCE_STEREO

立體。

MCI_DGV_SETAUDIO_STREAM

音訊資料流程是在lpSetAudio所識別結構的dwValue成員中指定。 整數值會指定從工作區播放的音訊資料流程。 如果未指定資料流程,則會播放第一個實際交錯的音訊資料流程。

MCI_DGV_SETAUDIO_TREBLE

音訊高頻率層級會指定為lpSetAudio所識別結構的dwValue成員的因數。

MCI_DGV_SETAUDIO_VOLUME

一或兩個音訊通道的音訊層級會指定為lpSetAudio所識別結構的dwValue成員因素。 如果左右磁片區已設定為不同的值,則左右磁片區的比例大約保持不變。

MCI_DGV_SETAUDIO_LEFT

當與 MCI_SET_ON 搭配使用時,啟用左側音訊通道。 與MCI_SET_OFF搭配使用時,停用左側音訊通道。 當這個旗標搭配MCI_DGV_SETAUDIO_VALUE和MCI_DGV_SETAUDIO_VOLUME的組合使用時,它會設定左側音訊通道的音量。 當這個旗標與MCI_DGV_SETAUDIO_SOURCE搭配使用時,它會指定左側音訊通道做為音訊輸入數位板的來源。

MCI_DGV_SETAUDIO_OVER

轉換長度參數包含在lpSetAudio所識別結構的dwOver成員中。 長度值會指定目前時間格式單位 (多久,) 使用因數的變更。 如果未使用此旗標,就會立即發生變更。

MCI_DGV_SETAUDIO_QUALITY

lpSetAudio所識別結構的lpstrQuality成員包含定義音訊品質的緩衝區位址。 緩衝區內的文字字串會指定音訊壓縮演算法的特性。

MCI_DGV_SETAUDIO_ALG旗標可用來選取指定演算法的品質描述元。 如果省略此旗標,則會使用目前的演算法。

可用的演算法和描述元名稱取決於裝置。 每個裝置都會提供可用演算法的檔,以及適用描述項名稱的描述。 MCI_QUALITY命令可以定義其他描述元名稱。

MCI_DGV_SETAUDIO_RECORD

指定錄製是否包含或排除音訊資料。 與MCI_SET_ON結合時,會錄製音訊資料。 與MCI_SET_OFF結合時,會排除音訊資料。 預設值包含音訊資料。

MCI_DGV_SETAUDIO_RIGHT

搭配 MCI_SET_ON 使用時,啟用正確的音訊通道。 與 MCI_SET_OFF 搭配使用時,停用正確的音訊通道。 當這個旗標搭配MCI_DGV_SETAUDIO_VALUE和MCI_DGV_SETAUDIO_VOLUME的組合使用時,它會設定正確的音訊通道音量。

MCI_DGV_SETAUDIO_VALUE

值是在lpSetAudio所識別結構的dwValue成員中指定。 值的意義是由為 MCI_DGV_SETAUDIO_ITEM 旗標定義的常數所指定。

MCI_SET_OFF

停用指定的音訊通道。

MCI_SET_ON

啟用指定的音訊通道。

MCI_SETAUDIO_OUTPUT

修改 Bass、treble 或 volume 旗標,使其只修改播放的訊號,而不是錄製的內容。 可能的話,這是監視輸入時的預設值。

對於數位視訊裝置, lpSetAudio 參數會指向 MCI_DGV_SETAUDIO_PARMS 結構。

下列其他旗標會搭配 vcr 裝置類型使用:

MCI_VCR_SETAUDIO_RECORD

將音訊錄製設定為開啟或關閉,其會與下列其中一個旗標搭配使用:

MCI_SET_ON

音訊錄製開啟。

MCI_SET_OFF

音訊錄製關閉。 您可能需要先使用 MCI_SET 命令關閉元件錄製 (,並將MCI_VCR_SET_ASSEMBLE_RECORD旗標設定為關閉) ,才能關閉音訊錄製。

MCI_TRACK

lpSetAudio所識別結構的dwTrack成員會指定哪些追蹤受到命令影響。

MCI_VCR_SETAUDIO_SOURCE

設定音訊來源。 此旗標必須與 MCI_VCR_SETAUDIO_TO 旗標搭配使用。

MCI_VCR_SETAUDIO_MONITOR

設定音訊來源監視器。 此旗標必須與 MCI_VCR_SETAUDIO_TO 旗標搭配使用。

MCI_VCR_SETAUDIO_TO

lpSetAudio所識別結構的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_SETAUDIO_SOURCE 旗標搭配使用。

MCI_VCR_SRC_TYPE_OUTPUT

類型為輸出。

MCI_VCR_SETAUDIO_NUMBER

lpSetAudio 所識別結構的 dwNumber 成員包含 dwTo 成員中所指定類型的音訊輸入 (,) 要使用的類型。

若為 VCR 裝置, lpSetAudio 參數會指向 MCI_VCR_SETAUDIO_PARMS 結構。

規格需求

需求
最低支援的用戶端
Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限傳統型應用程式]
標頭
Mmsystem.h (包含 Windows.h)

另請參閱

Mci

MCI 命令