IOCTL_VIDEO_SHARE_VIDEO_MEMORY IOCTL (ntddvdeo.h)
Este IOCTL lo llama un proceso que compartirá la memoria de vídeo en modo de usuario como un búfer de fotogramas lineal. Los controladores de miniporte controlan este IOCTL asignando el búfer de fotogramas al espacio de direcciones del autor de la llamada con VideoPortMapBankedMemory. De lo contrario, este IOCTL es el mismo que IOCTL_VIDEO_MAP_VIDEO_MEMORY.
Esta solicitud es modal y nomodal: el controlador de miniport debe devolver el tamaño de ubicación del búfer de fotogramas dentro de la memoria de vídeo, y el tamaño y la ubicación del búfer de fotogramas pueden variar de modo a modo (característica modal), pero una operación posterior en modo establecido (en el mismo modo) no debe hacer que la memoria de vídeo cambie la ubicación (característica nomodal).
Este IOCTL es solo DCI.
Código principal
Búfer de entrada
El VRP inputBuffer contiene una estructura de VIDEO_SHARE_MEMORY que especifica un identificador para el proceso que asigna el búfer de fotogramas y el tamaño de vista solicitado y se desplaza en la memoria compartida. El tamaño de vista más el desplazamiento no debe superar el tamaño de memoria del adaptador.
Búfer de salida
El controlador de miniport devuelve la estructura de VIDEO_SHARE_MEMORY_INFORMATION en el VRP OutputBuffer. Esta salida contiene la dirección virtual donde se asigna la memoria de vídeo, el tamaño de la vista en bytes de la memoria asignada y el desplazamiento en la vista.
Bloque de estado
Si el controlador de miniporte asigna correctamente la memoria, establece el miembro Information de la estructura de STATUS_BLOCK para tamaño de(VIDEO_SHARE_MEMORY_INFORMATION); de lo contrario, el controlador de miniporte establece este miembro en cero.
Requisitos
Requisito | Valor |
---|---|
encabezado de | ntddvdeo.h |