Partilhar via


Método IMFDXGIDeviceManager::ResetDevice (mfobjects.h)

Define o dispositivo Microsoft Direct3D ou notifica o gerenciador de dispositivos de que o dispositivo Direct3D foi redefinido.

Sintaxe

HRESULT ResetDevice(
  [in] IUnknown *pUnkDevice,
  [in] UINT     resetToken
);

Parâmetros

[in] pUnkDevice

Um ponteiro para a interface IUnknown do dispositivo DXGI.

[in] resetToken

O token que foi recebido no parâmetro pResetToken da função MFCreateDXGIDeviceManager .

Retornar valor

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Ao criar pela primeira vez o Gerenciador de Dispositivos DXGI, chame esse método com um ponteiro para o dispositivo Direct3D. (O gerenciador de dispositivos não cria o dispositivo; o chamador deve fornecer o ponteiro do dispositivo inicialmente.) Chame também esse método se o dispositivo Direct3D for perdido e você precisar redefinir o dispositivo ou criar um novo dispositivo.

O parâmetro resetToken garante que apenas o componente que criou originalmente o gerenciador de dispositivos possa invalidar o dispositivo atual.

Se esse método for bem-sucedido, todos os identificadores de dispositivo abertos se tornarão inválidos.

Para criar um dispositivo Microsoft Direct3D 11, chame D3D11CreateDevice.

O dispositivo deve ser criado com o sinalizador de criação do dispositivo D3D11_CREATE_DEVICE_VIDEO_SUPPORT definido na enumeração D3D11_CREATE_DEVICE_FLAG .

É recomendável que você use a proteção de vários threads no contexto do dispositivo para evitar problemas de deadlock que às vezes podem acontecer quando você chama ID3D11VideoContext::GetDecoderBuffer ou ID3D11VideoContext::ReleaseDecoderBuffer. Para definir a proteção de vários threads, primeiro chame QueryInterface em ID3D11Device para obter um ponteiro ID3D10Multithread . Em seguida, chame ID3D10Multithread::SetMultithreadProtected, passando true para bMTProtect.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho mfobjects.h (inclua Mfidl.h)

Confira também

IMFDXGIDeviceManager