PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME función de devolución de llamada (d3d10umddi.h)

Inicia una operación de descodificación de Aceleración de vídeo directX (DXVA) para descodificar un fotograma de vídeo.

Sintaxis

PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME Pfnd3dwddm24DdiVideodecoderbeginframe;

HRESULT Pfnd3dwddm24DdiVideodecoderbeginframe(
  D3D10DDI_HDEVICE hDevice,
  D3D11_1DDI_HDECODE hDecode,
  const D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME *pBeginFrame
)
{...}

Parámetros

hDevice

Identificador del dispositivo de visualización (contexto de gráficos).

hDecode

Identificador del objeto de descodificador de vídeo que se creó a través de una llamada a la función CreateVideoDecoder.

pBeginFrame

Puntero a una estructura de D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0. Para obtener más información, vea la sección Comentarios.

Valor devuelto

Devuelve uno de los siguientes valores HRESULT:

Código devuelto Descripción
S_OK La clave de sesión de la sesión criptográfica se negoció correctamente.
E_OUTOFMEMORY La memoria no estaba disponible para completar la operación.

Comentarios

Si esta función devuelve S_OK, el tiempo de ejecución de Microsoft Direct3D llama a la función VideoDecoderSubmitBuffers para realizar las operaciones de descodificación. Cuando se han ejecutado todas las operaciones de descodificación, el tiempo de ejecución llama a la función VideoDecoderEndFrame para detener la operación de descodificación en un fotograma de vídeo.

Nota

Cada llamada a VideoDecoderBeginFrame debe tener una llamada coincidente a VideoDecoderEndFrame y las llamadas a VideoDecoderBeginFrame no se pueden anidar.

La estructura D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0 contiene los datos siguientes:

  • Recurso que recibirá los datos descifrados y descodificados.
  • Clave de contenido que se usó para cifrar los datos de fotogramas de vídeo.

Si el miembro pContentKey de esta estructura no está establecido en NULL, el búfer al que hace referencia este miembro contiene una clave de contenido por fotograma. Esta clave se debe usar para descifrar los datos en lugar de usar la clave de sesión.

Nota

Si el miembro pContentKey no está establecido en NULL, el búfer al que hace referencia este miembro se cifra mediante la clave de sesión con el algoritmo AES-ECB.

Si el miembro pContentKey está establecido en NULL, los datos de fotogramas de vídeo se deben descifrar mediante la clave de sesión.

Requisitos

Requisito Valor
Header d3d10umddi.h

Consulte también

CreateVideoDecoderNegotiateCryptoSessionKeyeExchange