Share via


IMFPMediaPlayer::CreateMediaItemFromURL メソッド (mfplay.h)

大事な 廃止。 この API は、今後の Windows リリースから削除される可能性があります。 アプリケーションでは、再生に メディア セッション を使用する必要があります。
 

URL からメディア アイテムを作成します。

構文

HRESULT CreateMediaItemFromURL(
  [in]  LPCWSTR       pwszURL,
  [in]  BOOL          fSync,
  [in]  DWORD_PTR     dwUserData,
  [out] IMFPMediaItem **ppMediaItem
);

パラメーター

[in] pwszURL

メディア ファイルの URL を含む Null で終わる文字列。

[in] fSync

TRUE の場合、メソッドは完了するまでブロックします。 FALSE の場合、メソッドはブロックされず、非同期的に完了します。

[in] dwUserData

メディア項目に格納するアプリケーション定義の値。 メディア アイテムからこの値を取得するには、 IMFPMediaItem::GetUserData を呼び出します。

[out] ppMediaItem

IMFPMediaItem インターフェイスへのポインターを受け取ります。 呼び出し元はインターフェイスを解放する必要があります。 fSyncTRUE の場合、このパラメーターは有効なポインターである必要があります。 bSyncFALSE の場合、このパラメーターは NULL である必要があります。

戻り値

このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
メソッドが成功しました。
E_INVALIDARG
引数が無効です。
MF_E_INVALIDREQUEST
無効な要求です。 このエラーは、 fSyncFALSE で、アプリケーションがコールバック インターフェイスを提供しなかった場合に発生する可能性があります。 「解説」を参照してください。
MF_E_SHUTDOWN
オブジェクトの Shutdown メソッドが呼び出されました。
MF_E_UNSUPPORTED_SCHEME
サポートされていないプロトコル。

解説

このメソッドは、再生のためにメディア項目をキューに入れます。 再生のために項目をキューに登録するには、 IMFPMediaPlayer::SetMediaItem を呼び出します。

CreateMediaItemFromURL メソッドは、同期的または非同期的に呼び出すことができます。

  • fSyncTRUE の場合、メソッドは同期的に完了します。 IMFPMediaItem ポインターは、ppMediaItem パラメーターで返されます。
  • fSyncFALSE の場合、メソッドは非同期的に完了します。 操作が完了すると、アプリケーションの IMFPMediaPlayerCallback::OnMediaPlayerEvent コールバック メソッドが呼び出されます。 イベントの種類が MFP_EVENT_TYPE_MEDIAITEM_CREATED。 イベント データには、新しいメディア項目の IMFPMediaItem ポインターが含まれています。
コールバック インターフェイスは、MFPlay プレーヤー オブジェクトを作成するために 、最初に MFPCreateMediaPlayer を呼び出すときに設定されます。 コールバック インターフェイスを指定しない場合、 fSync パラメーターは TRUE である必要があります。 それ以外の場合、 CreateMediaItemFromURLMF_E_INVALIDREQUESTを返します。

CreateMediaItemFromURL に対して複数の非同期呼び出しを行う場合、同じ順序で完了することは保証されません。 dwUserData パラメーターを使用して、作成されたメディア項目と保留中の要求を照合します。

現在、このメソッドは、URL が rtsp*、mms*、または mcast のいずれかのプロトコルを指定している場合、 MF_E_UNSUPPORTED_SCHEME を返します。 MFPlay で Media Foundation ネットワーク ソースを使用する場合は、まず ソース リゾルバー を使用してソースを作成し、 IMFPMediaPlayer::CreateMediaItemFromObject を呼び出します。

ソースの構成

内部的には、このメソッドはメディア ソースを作成します。 メディア ソースを構成するには、次の操作を行います。
  1. IPropertyStore インターフェイスを取得するには、IMFPMediaPlayer ポインターで QueryInterface を呼び出します。
  2. IPropertyStore::SetValue を呼び出して、メディア ソースのプロパティを設定します。 構成プロパティの一覧については、「 メディア ソースの構成」を参照してください。 サード パーティのメディア ソースでは、カスタム プロパティを定義できます。
  3. CreateMediaItemFromURL メソッドを呼び出して、メディア アイテムを作成します。

要件

   
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー mfplay.h

関連項目

IMFPMediaPlayer

オーディオ/ビデオ再生に MFPlay を使用する