J'utilise l'API Windows Desktop Duplication pour créer mon propre protocole de mise en miroir. J'ai ce morceau de code:Comment accéder aux données de pixels à partir de ID3D11Texture2D?
// Get new frame
HRESULT hr = m_DeskDupl->AcquireNextFrame(500, &FrameInfo, &DesktopResource);
if (hr == DXGI_ERROR_WAIT_TIMEOUT)
{
*Timeout = true;
return DUPL_RETURN_SUCCESS;
}
Voici la structure FrameInfo
:
`typedef struct _FRAME_DATA {
ID3D11Texture2D* Frame;
DXGI_OUTDUPL_FRAME_INFO FrameInfo;
_Field_size_bytes_((MoveCount * sizeof(DXGI_OUTDUPL_MOVE_RECT)) + (DirtyCount * sizeof(RECT))) BYTE* MetaData;
UINT DirtyCount;
UINT MoveCount;
} FRAME_DATA;`
je voudrais extraire le tampon de pixel de ID3D11Texture2D* Frame;
Comment puis-je extraire sur un BYTE *
ou unsigned char *
et ont une séquence RGB? Merci!