ICaptureGraphBuilder::SetOutputFileName 方法 (strmif.h)
[與此頁面相關的功能 DirectShow 是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對 Windows 10 和 Windows 11 進行優化。 Microsoft 強烈建議新程式代碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式代碼盡可能重寫為使用新的 API。
語法
HRESULT SetOutputFileName(
[in] const GUID *pType,
[in] LPCOLESTR lpstrFile,
[out] IBaseFilter **ppf,
[out] IFileSinkFilter **ppSink
);
參數
[in] pType
表示媒體子類型的 GUID 指標。 必須是 &MEDIASUBTYPE_Avi
。
[in] lpstrFile
包含輸出檔名的寬字元字串指標。
[out] ppf
代表多任務 篩選器之IBaseFilter 介面之指標的位址。 這個方法會遞增 IBaseFilter 介面上的參考計數,因此在使用篩選完成時,您必須使用此參數上的 Release 方法遞減參考計數。
[out] ppSink
代表檔案寫入 器之 IFileSinkFilter 介面的指標位址。 這個方法會遞增 IFileSinkFilter 介面上的參考計數,因此在使用篩選完成時,您必須使用 Release 遞減參考計數。
傳回值
傳回 HRESULT 值。 可能的值如下。
傳回碼 | Description |
---|---|
|
失敗。 |
|
無效引數。 Audio-Video 交錯 (AVI) 是唯一支援的輸出格式。 |
|
記憶體不足。 |
|
NULL 指標自變數。 |
|
發生未預期的錯誤。 |
|
成功。 |
|
已成功建立 AVI 多任務器篩選條件的實例。 |
備註
這個方法會將多任務器和檔案寫入器插入篩選圖形,並呼叫 IFileSinkFilter::SetFileName 來設定輸出檔名。
您可以使用這個方法所傳回的 ppf 參數作為對 RenderStream 的呼叫中的 pfRenderer 參數。
您可以在對 SetFileName 的呼叫中使用 pSink 參數,以變更 所ICaptureGraphBuilder::SetOutputFileName
設定的檔名。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Reference:_Dshowh |
目標平台 | Windows |
標頭 | strmif.h |
Dll | Quartz.dll |