IAMTimelineSrc::SetMediaTimes 方法

[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。

注意

[已被取代。 此 API 可能會從未來的 Windows 版本中移除。]

 

方法 SetMediaTimes 會設定媒體停止和開始時間。

語法

HRESULT SetMediaTimes(
   REFERENCE_TIME Start,
   REFERENCE_TIME Stop
);

參數

啟動

媒體開始時間,以 100 奈秒為單位。

停止

媒體停止時間,以 100 奈秒為單位。

傳回值

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

備註

媒體時間是相對於原始媒體檔案的停止和開始時間。 當您將視訊或音訊來源新增至時程表時,請一律設定媒體時間。 否則,可能會發生轉譯問題。 停止時間必須大於開始時間。

若要使用來自視訊來源的仍然畫面,請將停止時間設定為超過開始時間的小數點,例如 100 奈秒。 將它們設定為相同的值會導致轉譯錯誤。

如果時間軸持續時間不符合媒體持續時間,則來源會據以延展或縮小。 這會導致剪輯播放速度比撰寫速率慢或更快。 (音調移會在音訊來源中發生。) 如需詳細資訊,請參閱 DirectShow 編輯服務中的時間

您可以呼叫 SetMediaLength 方法來指定來源檔案的持續時間。 如果您設定超過持續時間的媒體停止時間,DES 會截斷停止時間。

注意

標頭檔 Qedit.h 與 7 版之後的 Direct3D 標頭不相容。

 

注意

若要取得 Qedit.h,請下載Windows Vista Microsoft Windows SDK Update 和 .NET Framework 3.0。 Qedit.h 不適用於 Windows 7 和 .NET Framework 3.5 Service Pack 1 的 Microsoft Windows SDK。

 

規格需求

需求
標頭
Qedit.h
程式庫
Strmiids.lib

另請參閱

IAMTimelineSrc 介面

錯誤和成功碼