PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME função de retorno de chamada (d3d10umddi.h)
Inicia uma operação de decodificação de Aceleração de Vídeo (DXVA) 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 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.
Retornar valor
Retorna um dos seguintes valores HRESULT:
Código de retorno | Descrição |
---|---|
S_OK | A chave de sessão para a sessão criptográfica foi negociada com êxito. |
E_OUTOFMEMORY | A memória não estava disponível para concluir a operação. |
Comentários
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 tiverem sido executadas, o runtime chamará a função VideoDecoderEndFrame para interromper a operação de decodificação em um quadro de vídeo.
Observação
Cada chamada para VideoDecoderBeginFrame deve ter uma chamada correspondente para VideoDecoderEndFrame e as 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 que foi usada para criptografar os dados de quadro de vídeo.
Se o membro pContentKey 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.
Observação
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 |