From 341a085fa446b50134af3dbe63efc8b71ce3e534 Mon Sep 17 00:00:00 2001 From: Zebediah Figura Date: Wed, 13 Apr 2022 17:01:59 -0500 Subject: [PATCH] include: Add amva.h. Signed-off-by: Zebediah Figura Signed-off-by: Alexandre Julliard --- include/Makefile.in | 1 + include/amva.h | 74 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 include/amva.h diff --git a/include/Makefile.in b/include/Makefile.in index 047e7ff9146..c76e2ec7d0d 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -14,6 +14,7 @@ SOURCES = \ amaudio.h \ amsi.idl \ amstream.idl \ + amva.h \ amvideo.idl \ appcompatapi.h \ appmgmt.h \ diff --git a/include/amva.h b/include/amva.h new file mode 100644 index 00000000000..faf103270fc --- /dev/null +++ b/include/amva.h @@ -0,0 +1,74 @@ +/* + * Copyright (C) 2022 Zebediah Figura for CodeWeavers + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifndef __AMVA_INCLUDED__ +#define __AMVA_INCLUDED__ + +typedef struct _tag_AMVABeginFrameInfo +{ + DWORD dwDestSurfaceIndex; + void *pInputData; + DWORD dwSizeInputData; + void *pOutputData; + DWORD dwSizeOutputData; +} AMVABeginFrameInfo, *LPAMVABeginFrameInfo; + +typedef struct _tag_AMVABUFFERINFO +{ + DWORD dwTypeIndex; + DWORD dwBufferIndex; + DWORD dwDataOffset; + DWORD dwDataSize; +} AMVABUFFERINFO, *LPAMVABUFFERINFO; + +typedef struct _tag_AMVACompBufferInfo +{ + DWORD dwNumCompBuffers; + DWORD dwWidthToCreate; + DWORD dwHeightToCreate; + DWORD dwBytesToAllocate; + DDSCAPS2 ddCompCaps; + DDPIXELFORMAT ddPixelFormat; +} AMVACompBufferInfo, *LPAMVACompBufferInfo; + +typedef struct _tag_AMVAEndFrameInfo +{ + DWORD dwSizeMiscData; + void *pMiscData; +} AMVAEndFrameInfo, *LPAMVAEndFrameInfo; + +typedef struct _tag_AMVAInternalMemInfo +{ + DWORD dwScratchMemAlloc; +} AMVAInternalMemInfo, *LPAMVAInternalMemInfo; + +typedef struct _tag_AMVAUncompBufferInfo +{ + DWORD dwMinNumSurfaces; + DWORD dwMaxNumSurfaces; + DDPIXELFORMAT ddUncompPixelFormat; +} AMVAUncompBufferInfo, *LPAMVAUncompBufferInfo; + +typedef struct _tag_AMVAUncompDataInfo +{ + DWORD dwUncompWidth; + DWORD dwUncompHeight; + DDPIXELFORMAT ddUncompPixelFormat; +} AMVAUncompDataInfo, *LPAMVAUncompDataInfo; + +#endif