IDirect3DVideoDevice9::CreateSurface 方法

为 DirectX 视频加速 (DXVA) 解码创建压缩图面。

若要获取表面要求,请调用 IDirect3DVideoDevice9::GetDXVACompressedBufferInfo 并检查返回的 DXVACompBufferInfo 结构。

语法

HRESULT CreateSurface(
   UINT              Width,
   UINT              Height,
   UINT              BackBuffers,
   D3DFORMAT         Format,
   D3DPOOL           Pool,
   DWORD             Usage,
   IDirect3DSurface9 **ppSurface,
   HANDLE            *pSharedHandle
);

参数

Width

图面的宽度(以像素为单位)。 将此参数设置为 DXVACompBufferInfo.WidthToCreate

Height

图面的高度(以像素为单位)。 将此参数设置为 DXVACompBufferInfo.HeightToCreate

BackBuffers

后台缓冲区的数目。 此参数可以为零。

格式

像素格式,指定为 D3DFORMAT 值。 将此参数设置为 DXVACompBufferInfo.Format

要在其中创建图面的内存池,指定为 D3DPOOL 值。 将此参数设置为 DXVACompBufferInfo.Pool

使用情况

一个或多个 D3DUSAGE 常量的按位 OR。 将此参数设置为 DXVACompBufferInfo.Usage

ppSurface

接收指向 IDirect3DSurface9 接口的指针。 调用方必须释放接口。

pSharedHandle

保留。 设置为 NULL

返回值

如果此方法成功,则返回 S_OK。 否则,它将返回 HRESULT 错误代码。

要求

要求
最低受支持的客户端
Windows Vista [仅限桌面应用]
最低受支持的服务器
Windows Server 2008 [仅限桌面应用]
标头
Dxva.h

另请参阅

IDirect3DVideoDevice9