MFCreateTranscodeTopology 函式 (mfidl.h)
建立部分轉碼拓撲。
基礎拓撲產生器會藉由連接必要的管線物件來建立部分拓撲:來源、編碼器和接收。 編碼器和接收會根據轉碼配置檔中呼叫端所指定的設定來設定。
若要建立轉碼配置檔物件,請呼叫 MFCreateTranscodeProfile 函式,並呼叫適當的 IMFTranscodeProfile 方法來設定必要的屬性。
設定的轉碼配置檔會傳遞至 MFCreateTranscodeTopology 函式,此函式會使用適當的設定來建立轉碼拓撲。 接著,呼叫端可以在媒體會話上設定此拓撲,並啟動會話以開始編碼程式。 媒體會話結束時,會產生轉碼的檔案。
語法
HRESULT MFCreateTranscodeTopology(
[in] IMFMediaSource *pSrc,
[in] LPCWSTR pwszOutputFilePath,
[in] IMFTranscodeProfile *pProfile,
[out] IMFTopology **ppTranscodeTopo
);
參數
[in] pSrc
媒體來源的指標,封裝要轉碼的來源檔案。 媒體來源物件會公開 IMFMediaSource 介面,而且可以使用來源解析程式來建立。 如需詳細資訊,請參閱 使用來源解析程式。
[in] pwszOutputFilePath
Null 終止字串的指標,其中包含要產生之輸出檔的名稱和路徑。
[in] pProfile
轉碼配置檔的指標,其中包含音訊串流的組態設定、視訊數據流,以及寫入檔案的容器。 轉碼配置檔物件會公開 IMFTranscodeProfile 介面,而且必須藉由呼叫 MFCreateTranscodeProfile 函式來建立。 建立對象之後,呼叫端必須藉由呼叫適當的 IMFTranscodeProfile 方法來提供組態設定。
[out] ppTranscodeTopo
接收轉碼拓撲物件的 IMFTopology 介面指標。 呼叫端必須釋放 介面。
傳回值
函式會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。
傳回碼 | 描述 |
---|---|
|
函式呼叫成功, ppTranscodeTopo 會收到轉碼拓撲的指標。 |
|
pwszOutputFilePath 包含無效字元。 |
|
媒體來源中未選取任何數據流。 |
|
配置檔不包含 MF_TRANSCODE_CONTAINERTYPE 屬性。 |
|
針對一或多個數據流,找不到可接受配置檔中指定之媒體類型的編碼器。 |
|
配置檔不會為媒體來源上任何選取的數據流指定媒體類型。 |
備註
如需使用此函式的範例程式代碼,請參閱下列主題:
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | mfidl.h |
程式庫 | Mf.lib |
Dll | Mf.dll |