IMFMediaSession::Start 方法 (mfidl.h)

啟動媒體會話。

語法

HRESULT Start(
  [in] const GUID        *pguidTimeFormat,
  [in] const PROPVARIANT *pvarStartPosition
);

參數

[in] pguidTimeFormat

GUID 的指標,指定 pvarStartPosition 參數的時間格式。 此參數可以是 NullNULL 值相當於傳入GUID_NULL

定義下列時間格式 GUID:

意義
GUID_NULL
簡報時間。 pvarStartPosition 參數必須具有下列其中一個 PROPVARIANT 類型。
  • VT_I8pvarStartPosition 參數包含相對於簡報開頭的 100 奈秒單位開始位置。
  • VT_EMPTY:播放會從目前的位置開始。
所有媒體來源都支援這個時間格式。
MF_TIME_FORMAT_SEGMENT_OFFSET
區段位移。 Sequencer 來源支援這個時間格式。 開始時間是區段內的位移。

呼叫 MFCreateSequencerSegmentOffset 函式來建立 pvarStartPosition 參數的 PROPVARIANT 值。

MF_TIME_FORMAT_ENTRY_RELATIVE
注意 需要 Windows 7 或更新版本。
 
跳到播放清單專案。 pvarStartPosition 參數會指定播放清單專案的索引,相對於目前的專案。 例如,值 2 會略過兩個專案。 若要向後略過,請傳遞負值。 PROPVARIANT類型VT_I4。

如果媒體來源支援這個時間格式, IMFMediaSource::GetCharacteristics 方法會傳回下列其中一個或兩個旗標:

  • MFMEDIASOURCE_CAN_SKIPFORWARD
  • MFMEDIASOURCE_CAN_SKIPBACKWARD

[in] pvarStartPosition

PROPVARIANT 的指標,指定播放的起始位置。 此參數的意義和數據類型是由 pguidTimeFormat 參數表示。

傳回值

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

傳回碼 描述
S_OK
此方法已成功。
MF_E_INVALIDREQUEST
作業無法以媒體會話的目前狀態執行。
MF_E_SHUTDOWN
媒體會話已關閉。

備註

呼叫此方法時,媒體會話會啟動簡報時鐘,並開始處理媒體範例。

這個方法是非同步方法。 當方法完成時,媒體會話會傳送 MESessionStarted 事件。

規格需求

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

另請參閱

IMFMediaSession