PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME função de retorno de chamada (d3d10umddi.h)
Inicia uma operação de decodificação de DXVA (Aceleração de Vídeo) do DirectX para decodificar um quadro de vídeo.
Sintaxe
PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME Pfnd3dwddm24DdiVideodecoderbeginframe;
HRESULT Pfnd3dwddm24DdiVideodecoderbeginframe(
D3D10DDI_HDEVICE hDevice,
D3D11_1DDI_HDECODE hDecode,
const D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME *pBeginFrame
)
{...}
Parâmetros
hDevice
Um identificador para o dispositivo de exibição (contexto gráfico).
hDecode
Um identificador para o objeto de decodificador de vídeo que foi criado por meio de uma chamada para a função CreateVideoDecoder.
pBeginFrame
Um ponteiro para uma estrutura D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0. Para obter mais informações, consulte a seção Comentários.
Valor de retorno
Retorna um dos seguintes valores HRESULT:
Código de retorno | Descrição |
---|---|
S_OK | A chave de sessão da sessão criptográfica foi negociada com êxito. |
E_OUTOFMEMORY | A memória não estava disponível para concluir a operação. |
Observações
Se essa função retornar S_OK, o runtime do Microsoft Direct3D chamará a função VideoDecoderSubmitBuffers para executar as operações de decodificação. Quando todas as operações de decodificação foram executadas, o runtime chama a função VideoDecoderEndFrame para interromper a operação de decodificação em um quadro de vídeo.
Nota
Cada chamada para VideoDecoderBeginFrame deve ter uma chamada correspondente para VideoDecoderEndFrame e chamadas VideoDecoderBeginFrame não podem ser aninhadas.
A estrutura D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0 contém os seguintes dados:
- O recurso que receberá os dados descriptografados e decodificados.
- Uma chave de conteúdo usada para criptografar os dados do quadro de vídeo.
Se o pContentKey membro dessa estrutura não estiver definido como NULL, o buffer referenciado por esse membro conterá uma chave de conteúdo por quadro. Essa chave deve ser usada para descriptografar os dados em vez de usar a chave de sessão.
Nota
Se o membro pContentKey não estiver definido como NULL, o buffer referenciado por esse membro será criptografado usando a chave de sessão com o algoritmo AES-ECB.
Se o membro pContentKey estiver definido como NULL, os dados do quadro de vídeo deverão ser descriptografados usando a chave de sessão.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | d3d10umddi.h |