エクスポート (0) 印刷
すべて展開
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

Windows Phone 8 でサポートされる Microsoft Media Foundation API

2013/12/05

以降のセクションに、Windows Phone 8 によってサポートされる Microsoft Media Foundation (MF) インターフェイスとメソッドの一覧を示します。MF を使用した Windows Phone アプリの開発については、「チュートリアル: Windows Phone 8 用の Microsoft Media Foundation の使用」を参照してください。

このトピックは、次のセクションで構成されています。

IMFMediaEngineClassFactory::CreateInstance を呼び出すことによって、IMFMediaEngine インターフェイスのインスタンスを作成します。

電話とデスクトップでは、IMFMediaEngineClassFactory::CreateInstance の実装に 2 つの違いがあります。

  • 電話の場合、IMFMediaEngine でサポートされるのはフレームサーバー モードだけです。このインターフェイスをレンダリング モードまたはオーディオ モードのどちらかで初期化しようとすると、失敗します。

  • デスクトップでは、MF_MEDIA_ENGINE_DXGI_MANAGER 初期化属性を使用して、ハードウェア アクセラレータをビデオのデコードおよびビデオ処理に対して使用すべきであることが指定されます。電話では、可能であれば常にハードウェア アクセラレータが使用されます。

サポートされるメソッド

このインターフェイスのメソッドで次の一覧にないものは、Windows Phone 8 アプリで使用できません。

メソッド

説明

GetCurrentSource

現在のメディア リソースの URL を取得します。メディア リソースが存在しない場合は空ストリングです。

GetCurrentTime

現在の再生位置を取得します。

GetDuration

メディア リソースの長さを取得します。

GetError

最新のエラーの状態を取得します。

GetLoop

メディア エンジンが再生をループするかどうかを照会します。

GetMuted

オーディオがミュートされているかどうかを照会します。

GetNativeVideoSize

縦横比で調整されたビデオ フレームのサイズを取得します。

GetReadyState

現在のメディア リソースをレンダリングできるかどうかを示す、準備完了の状態を取得します。

メモメモ:
Windows Phone 8 では、このメソッドは MF_MEDIA_ENGINE_READY_HAVE_NOTHING または MF_MEDIA_ENGINE_READY_HAVE_ENOUGH_DATA のみを返します。

GetVideoAspectRatio

ビデオ ストリームのピクチャの縦横比を取得します。

GetVolume

オーディオ ボリューム レベルを取得します。

HasAudio

現在のメディア リソースにオーディオ ストリームが含まれているかどうかを照会します。

HasVideo

現在のメディア リソースにビデオ ストリームが含まれているかどうかを照会します。

IsEnded

再生が終了しているかどうかを照会します。

IsPaused

再生が現在、一時停止しているかどうかを照会します。

IsSeeking

メディア エンジンが現在、新しい再生位置をシークしているかどうかを照会します。

OnVideoStreamTick

メディア エンジンで、新しいビデオ フレームが準備完了かどうかを照会します。

Pause

再生を一時停止します。

Play

再生を開始します。

SetCurrentTime

新しい再生位置をシークします。

SetLoop

メディア エンジンで再生をループするかどうかを指定します。

SetMuted

オーディオのミュートをオンまたはオフにします。

SetSource

メディア リソースの URL を設定します。

SetVolume

オーディオ ボリューム レベルを設定します。

Shutdown

メディア エンジンをシャットダウンして、使用しているリソースを解放します。

TransferVideoFrame

現在のビデオ フレームを DXGI サーフェイスまたは WIC ビットマップにコピーします。

メモメモ:
Windows Imaging Component (WIC) は Windows Phone 8 ではサポートされていないので、フレームは DXGI サーフェイスにコピーする必要があります。また、ビデオ ストリームのシーク中 (SetCurrentTime を使用) またはビデオ ストリームの変更中は、TransferVideoFrame により E_FAIL が返されることがあります。アプリでは、このエラーを単純に無視してかまいません。次のフレームが使用可能になった時点でメソッドを再度呼び出してください。

サポートされるメソッド

このインターフェイスのメソッドで次の一覧にないものは、Windows Phone 8 アプリで使用できません。

メソッド

説明

GetBalance

オーディオ バランスを取得します。

SetBalance

オーディオ バランスを設定します。

SetSourceFromByteStream

バイト ストリームからメディア リソースを開きます。

このインターフェイスを使用する前に、CoInitializeEx を呼び出してください。このインターフェイスへのポインターを取得するには、CLSID_MFMediaEngineClassFactory のクラス ID を使用して CoCreateInstanceFromApp を呼び出します。

サポートされるメソッド

このインターフェイスのメソッドで次の一覧にないものは、Windows Phone 8 アプリで使用できません。

メソッド

説明

CreateInstance

メディア エンジンの新しいインスタンスを作成します。

IMFMediaEngine::GetError を呼び出して、このインターフェイスへのポインターを取得します。

サポートされるメソッド

このインターフェイスのメソッドで次の一覧にないものは、Windows Phone 8 アプリで使用できません。

メソッド

説明

GetErrorCode

エラー コードを取得します。

GetExtendedErrorCode

拡張エラー コードを取得します。

表示:
© 2015 Microsoft