IMFStreamSink::P rocessSample 方法 (mfidl.h)

將範例傳遞至資料流程。 媒體接收會處理範例。

語法

HRESULT ProcessSample(
  [in] IMFSample *pSample
);

參數

[in] pSample

包含資料流程有效資料的樣本 之 IMFSample 介面的指標。

傳回值

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

傳回碼 描述
S_OK
此方法已成功。
MF_E_INVALID_STATE_TRANSITION
媒體接收處於錯誤狀態,無法接收範例。 例如,預先註冊已完成,但簡報時鐘尚未啟動。
MF_E_INVALID_TIMESTAMP
此範例具有不正確時間戳記。 請參閱<備註>。
MF_E_INVALIDREQUEST
媒體接收已暫停或停止,而且無法處理範例。
MF_E_NO_CLOCK
未設定簡報時鐘。 呼叫 IMFMediaSink::SetPresentationClock
MF_E_NO_SAMPLE_TIMESTAMP
此範例沒有時間戳記。
MF_E_NOT_INITIALIZED
資料流程接收尚未初始化。
MF_E_SHUTDOWN
已呼叫媒體接收的 Shutdown 方法。
MF_E_STREAMSINK_REMOVED
此資料流程已從媒體接收中移除,且不再有效。

備註

當資料流程接收傳送 MEStreamSinkRequestSample 事件時,呼叫這個方法。

根據媒體接收的實作而定,這個方法可能會基於各種原因傳回MF_E_INVALID_TIMESTAMP:

  • 負時間戳記。
  • 在相同資料流程) 內回溯 (的時間戳記。
  • 例如,一個資料流程的時間戳記與相同媒體接收內另一個資料流程上的時間戳記太遠 (,例如,封存接收會將資料流程多工) 。
並非所有媒體接收都會在這些情況下傳回錯誤碼。

需求

   
最低支援的用戶端 Windows Vista [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 mfidl.h
程式庫 Mfuuid.lib

另請參閱

IMFStreamSink

媒體接收