导出 (0) 打印
全部展开
信息
您所需的主题如下所示。但此主题未包含在此库中。

Windows Phone 8 支持的 Microsoft 媒体基础 API

2013/12/5

以下几节列出了在 Windows Phone 8 上受支持的 Microsoft 媒体基础 (MF) 接口和方法。有关使用 MF 开发 Windows Phone 应用的信息,请参见演练:使用 Windows Phone 8 的 Microsoft 媒体基础

本主题包含以下各节。

通过调用 IMFMediaEngineClassFactory::CreateInstance 创建 IMFMediaEngine 界面的实例。

手机和桌面对 IMFMediaEngineClassFactory::CreateInstance 的实现有两点差异。

  • 在手机上,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

设置音频音量级别。

关闭

关闭媒体引擎,释放它正在使用的资源。

TransferVideoFrame

将当前视频帧复制至 DXGI 图面或 WIC 位图。

说明注意:
Windows Phone 8 不支持 Windows 映像处理组件 (WIC),因此必须将帧复制至 DXGI 图面。而且在手机上,当您在视频流中进行查找(使用 SetCurrentTime)或更改视频流时,TransferVideoFrame 有时可能返回 E_FAIL。应用只需忽略此错误,并在下一个帧可用时,再次调用该方法。

受支持的方法

对于没有包含在以下列表中的该界面的方法,无法在 Windows Phone 8 应用中使用。

方法

说明

GetBalance

获取音频均衡。

SetBalance

设置音频均衡。

SetSourceFromByteStream

打开字节流中的媒体资源。

在使用该界面之前,调用 CoInitializeEx。若要获取该界面的指针,则使用类标识符 CLSID_MFMediaEngineClassFactory 调用 CoCreateInstanceFromApp

受支持的方法

对于没有包含在以下列表中的该界面的方法,无法在 Windows Phone 8 应用中使用。

方法

说明

CreateInstance

创建媒体引擎的新实例。

通过调用 IMFMediaEngine::GetError 获取该界面的指针。

受支持的方法

对于没有包含在以下列表中的该界面的方法,无法在 Windows Phone 8 应用中使用。

方法

说明

GetErrorCode

获取错误代码。

GetExtendedErrorCode

获取扩展错误代码。

显示:
© 2014 Microsoft