MFCreateDeviceSource 函式 (mfidl.h)

建立硬體擷取裝置的媒體來源。

語法

HRESULT MFCreateDeviceSource(
  [in]  IMFAttributes  *pAttributes,
  [out] IMFMediaSource **ppSource
);

參數

[in] pAttributes

屬性存放區 之IMFAttributes 介面的指標,用來選取裝置。 請參閱<備註>。

[out] ppSource

接收媒體來源 之 IMFMediaSource 介面的指標。 呼叫端必須釋放 介面。

傳回值

如果此函式成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

重要不再需要擷取裝置時,您必須在呼叫 MFCreateDeviceSource 取得的 IMFMediaSource 物件上呼叫 Shutdown 來關閉裝置。 呼叫 Shutdown 可能會導致記憶體連結失敗,因為系統可能會在呼叫 Shutdown 之前保留對 IMFMediaSource 資源的參考。
 
pAttributes 參數會指定屬性存放區。 若要建立屬性存放區,請呼叫 MFCreateAttributes 函式 。 您必須設定 MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE 屬性,指定裝置 (音訊或視訊) 的類型。

針對音訊擷取裝置,選擇性地設定下列其中一個屬性:

屬性 Description
MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ENDPOINT_ID 指定音訊擷取裝置的音訊端點標識碼。
MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ROLE 指定裝置角色。 如果設定這個屬性,函式會使用該裝置角色的預設音訊擷取裝置。

請勿將此屬性與 MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ENDPOINT_ID 屬性合併。

 

如果未指定任何屬性,函式會選取 eCommunications 角色的預設音訊擷取裝置。

針對影片擷取裝置,您必須設定下列屬性:

屬性 Description
MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_SYMBOLIC_LINK 指定裝置的符號連結。

規格需求

需求
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限傳統型應用程式]
目標平台 Windows
標頭 mfidl.h
程式庫 Mf.lib
Dll Mf.dll

另請參閱

媒體基礎中的音訊/視訊擷取

擷取裝置屬性

MFCreateDeviceSourceActivate

媒體基礎函式