Share via


IMFSourceReader::SetCurrentPosition 方法 (mfreadwrite.h)

搜尋媒體來源中的新位置。

語法

HRESULT SetCurrentPosition(
  [in] REFGUID        guidTimeFormat,
  [in] REFPROPVARIANT varPosition
);

參數

[in] guidTimeFormat

指定 時間格式的 GUID。 時間格式會定義 varPosition 參數的單位。 下列值會針對所有媒體來源定義:

意義
GUID_NULL
100 奈秒單位。
 

某些媒體來源可能支援其他值。

[in] varPosition

開始播放的位置。 單位是由 guidTimeFormat 參數所指定。 如果 guidTimeFormat 參數 GUID_NULL,請將 variant 類型設定為 VT_I8

傳回值

方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。

傳回碼 Description
S_OK
此方法已成功。
MF_E_INVALIDREQUEST
一或多個範例要求仍在擱置中。

備註

SetCurrentPosition 方法不保證確實搜尋。 搜尋的精確度取決於媒體內容。 如果媒體內容包含視訊數據流, SetCurrentPosition 方法通常會在所需位置之前搜尋最接近的主要畫面格。 主要畫面格之間的距離取決於數個因素,包括編碼器實作、視訊內容,以及用來編碼內容的特定編碼設定。 主要畫面格之間的距離在單一視訊檔案內可能會有所不同 (,例如視場景複雜度) 而定。

搜尋之後,應用程式應該呼叫 IMFSourceReader::ReadSample 並前進到所需的位置。

如果已安裝適用於 Windows Vista 的平臺更新補充,則此介面可在 Windows Vista 上使用。

規格需求

需求
最低支援的用戶端 適用於 Windows Vista 的 Windows 7、Windows Vista 和平臺更新補充 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 mfreadwrite.h

另請參閱

IMFSourceReader

來源讀取器