37#define D3DFMT_NV12 MAKEFOURCC('N','V','1','2')
85 size_t new_capacity, max_capacity;
88 if (
count <= *capacity)
92 if (
count > max_capacity)
95 new_capacity =
max(4, *capacity);
96 while (new_capacity <
count && new_capacity <= max_capacity / 2)
98 if (new_capacity <
count)
99 new_capacity = max_capacity;
101 if (!(new_elements =
realloc(*elements, new_capacity *
size)))
104 *elements = new_elements;
105 *capacity = new_capacity;
152 IDirectXVideoProcessor_AddRef(iface);
180 IDirectXVideoProcessorService_Release(processor->
service);
195 IDirectXVideoProcessorService_AddRef(*
service);
227 TRACE(
"%p, %p.\n", iface, caps);
283 y = (ayuv->
Y >> 8) - 16;
284 cb = (ayuv->
Cb >> 8) - 128;
285 cr = (ayuv->
Cr >> 8) - 128;
287 y = 255.0f *
y / 219.0f;
288 cb = 255.0f *
cb / 224.0f;
289 cr = 255.0f * cr / 224.0f;
292 g =
y - 0.344 *
cb - 0.714 * cr;
307 TRACE(
"%p, %p, %p, %p, %u, %p.\n", iface, rt,
params,
samples, sample_count, complete_handle);
309 if (
params->BackgroundColor.Alpha != 0xffff)
311 WARN(
"Unexpected background alpha %#x.\n",
params->BackgroundColor.Alpha);
317 WARN(
"Failed to get surface device, hr %#lx.\n",
hr);
323 for (
i = 0;
i < sample_count; ++
i)
325 dst_rect =
params->TargetRect;
333 WARN(
"Failed to copy sample %u, hr %#lx.\n",
i,
hr);
401 TRACE(
"%p, %u, %u, %u, %u, %u, %lu, %lu, %p, %p.\n", iface,
width,
height, backbuffers,
format,
pool,
usage, dxvaType,
409 for (
i = 0;
i < backbuffers + 1; ++
i)
418 for (
j = 0;
j <
i; ++
j)
434 FIXME(
"%p, %p.\n", iface, callbacks);
509 if (
IsEqualGUID(deviceguid, &DXVA2_VideoProcSoftwareDevice))
513 WARN(
"Unsupported content format %#x.\n", video_desc->
Format);
526 else if (
IsEqualGUID(deviceguid, &DXVA2_VideoProcProgressiveDevice))
530 WARN(
"Unsupported content format %#x.\n", video_desc->
Format);
553 FIXME(
"%p, %s, %p, %u, %p, %p.\n", iface,
debugstr_guid(deviceguid), video_desc, rt_format,
count,
formats);
585 FIXME(
"%p, %s, %p, %u, %u, %p.\n", iface,
debugstr_guid(deviceguid), video_desc, rt_format, ProcAmpCap,
range);
594 FIXME(
"%p, %s, %p, %d, %d, %p.\n", iface,
debugstr_guid(deviceguid), video_desc, rt_format, filter_setting,
range);
605 FIXME(
"%p, %s, %p, %d, %u, %p.\n", iface,
debugstr_guid(
device),
video_desc,
rt_format,
max_substreams,
616 if (!(
object =
calloc(1,
sizeof(*
object))))
620 object->refcount = 1;
621 object->service = iface;
622 IDirectXVideoProcessorService_AddRef(
object->service);
628 *processor = &
object->IDirectXVideoProcessor_iface;
657 IDirectXVideoDecoderService_AddRef(iface);
682 FIXME(
"%p, %u, %u, %u, %#x, %d, %ld, %ld, %p, %p.\n", iface,
width,
height, backbuffers,
format,
pool,
usage,
707 FIXME(
"%p, %s, %p, %p, %p, %p.\n", iface,
debugstr_guid(
guid), video_desc,
reserved,
count, configs);
716 FIXME(
"%p, %s, %p, %p, %p, %u, %p.\n", iface,
debugstr_guid(
guid), video_desc,
config, rts, num_surfaces,
742 IDirect3DDeviceManager9_AddRef(iface);
774 for (
i = 0;
i < manager->
count; ++
i)
776 if (manager->
handles[
i].state_block)
800 for (
i = 0;
i < manager->
count; ++
i)
802 if (manager->
handles[
i].state_block)
825 TRACE(
"%p, %p.\n", iface, hdevice);
831 hr = DXVA2_E_NOT_INITIALIZED;
834 for (
i = 0;
i < manager->
count; ++
i)
874 TRACE(
"%p, %p.\n", iface, hdevice);
906 TRACE(
"%p, %p.\n", iface, hdevice);
914 hr = DXVA2_E_NEW_VIDEO_DEVICE;
934 hr = DXVA2_E_NOT_INITIALIZED;
938 hr = DXVA2_E_VIDEO_DEVICE_LOCKED;
949 hr = DXVA2_E_NEW_VIDEO_DEVICE;
955 WARN(
"Failed to apply state.\n");
977 TRACE(
"%p, %p, %d.\n", iface, hdevice, savestate);
1012 hr = DXVA2_E_NEW_VIDEO_DEVICE;
1054 if (!(
object =
calloc(1,
sizeof(*
object))))
1060 object->refcount = 1;
1065 *
token =
object->token;
1066 *manager = &
object->IDirect3DDeviceManager9_iface;
1086 if (
FAILED(
hr = IDirect3DDeviceManager9_OpenDeviceHandle(manager, &
handle)))
1089 hr = IDirect3DDeviceManager9_GetVideoService(manager,
handle,
riid,
obj);
1090 IDirect3DDeviceManager9_CloseDeviceHandle(manager,
handle);
1093 IDirect3DDeviceManager9_Release(manager);
1100 FIXME(
"(%p): stub\n", monitor);
1108 FIXME(
"(%p): stub\n", monitor);
1132 FIXME(
"(%p, %p, %p, %p): stub\n", monitor, minimum,
current, maximum);
1140 FIXME(
"(%p, %p, %p): stub\n", monitor, capabilities, temperatures);
1149 FIXME(
"(%p, %p): stub\n", monitor, temperature);
1157 FIXME(
"(%p, %p, %p, %p): stub\n", monitor, minimum,
current, maximum);
1166 FIXME(
"(%p, 0x%x, %p, %p, %p): stub\n", monitor,
type, minimum,
current, maximum);
1175 FIXME(
"(%p, 0x%x, %p, %p, %p): stub\n", monitor,
type, minimum,
current, maximum);
1184 FIXME(
"(%p, 0x%x, %p, %p, %p): stub\n", monitor,
type, minimum,
current, maximum);
1193 FIXME(
"(%p, 0x%x, %p, %p, %p): stub\n", monitor,
type, minimum,
current, maximum);
1201 FIXME(
"(%p, %p): stub\n", monitor,
type);
1224 FIXME(
"%p, %lu, %p: stub.\n", monitor, arraySize,
array);
1239 FIXME(
"(%p, %p): stub\n", monitor, timingReport);
1248 FIXME(
"(%p, 0x%02x, %p, %p, %p): stub\n", monitor, vcpCode, pvct,
current, maximum);
1255 ULONG *numVideoOutputs,
void ***videoOutputs )
1257 FIXME(
"(%p, 0x%x, %p, %p): stub\n", monitor, vos, numVideoOutputs, videoOutputs);
1263 ULONG *numVideoOutputs,
void ***videoOutputs )
1265 FIXME(
"(%p, 0x%x, %p, %p): stub\n",
device, vos, numVideoOutputs, videoOutputs);
1272 FIXME(
"(%p): stub\n", monitor);
1280 FIXME(
"(%p): stub\n", monitor);
1288 FIXME(
"(%p): stub\n", monitor);
1296 FIXME(
"(%p): stub\n", monitor);
1304 FIXME(
"%p, %#lx: stub.\n", monitor, brightness);
1312 FIXME(
"(%p, 0x%x): stub\n", monitor, temperature);
1320 FIXME(
"%p, %#lx: stub.\n", monitor, contrast);
1328 FIXME(
"%p, 0x%x, %#lx: stub.\n", monitor,
type, position);
1352 FIXME(
"%p, 0x%x, %#lx: stub.\n", monitor,
type, gain);
1360 FIXME(
"%p, 0x%02x, %#lx: stub.\n", monitor, vcpCode,
value);
1370 FIXME(
"d3d9_device %p, desc %p, usage %u, plugin %p, device %p, stub!\n",
d3d9_device,
desc,
usage, plugin,
device);
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
enum _D3DFORMAT D3DFORMAT
#define D3DCOLOR_XRGB(r, g, b)
#define IDirect3DSurface9_GetDevice(p, a)
#define IDirect3DDevice9_ColorFill(p, a, b, c)
#define IDirect3DStateBlock9_Release(p)
#define IDirect3DDevice9_StretchRect(p, a, b, c, d, e)
#define IDirect3DDevice9_Release(p)
#define IDirect3DStateBlock9_Apply(p)
#define IDirect3DDevice9_CreateStateBlock(p, a, b)
#define IDirect3DSurface9_Release(p)
#define IDirect3DDevice9_AddRef(p)
#define IDirect3DDevice9_CreateOffscreenPlainSurface(p, a, b, c, d, e, f)
static const struct pixel_format_desc formats[]
HRESULT WINAPI GetNumberOfPhysicalMonitorsFromIDirect3DDevice9(IDirect3DDevice9 *device, LPDWORD number)
static HRESULT WINAPI video_processor_GetProcAmpRange(IDirectXVideoProcessor *iface, UINT cap, DXVA2_ValueRange *range)
BOOL WINAPI RestoreMonitorFactoryDefaults(HMONITOR monitor)
BOOL WINAPI RestoreMonitorFactoryColorDefaults(HMONITOR monitor)
BOOL WINAPI SetMonitorRedGreenOrBlueGain(HMONITOR monitor, MC_GAIN_TYPE type, DWORD gain)
BOOL WINAPI GetTimingReport(HMONITOR monitor, LPMC_TIMING_REPORT timingReport)
static HRESULT WINAPI device_manager_processor_service_QueryInterface(IDirectXVideoProcessorService *iface, REFIID riid, void **obj)
BOOL WINAPI GetNumberOfPhysicalMonitorsFromHMONITOR(HMONITOR monitor, LPDWORD number)
static HRESULT WINAPI device_manager_processor_service_GetVideoProcessorSubStreamFormats(IDirectXVideoProcessorService *iface, REFGUID deviceguid, const DXVA2_VideoDesc *video_desc, D3DFORMAT rt_format, UINT *count, D3DFORMAT **formats)
static struct video_processor * impl_from_IDirectXVideoProcessor(IDirectXVideoProcessor *iface)
BOOL WINAPI DegaussMonitor(HMONITOR monitor)
static ULONG WINAPI video_processor_AddRef(IDirectXVideoProcessor *iface)
BOOL WINAPI GetPhysicalMonitorsFromHMONITOR(HMONITOR monitor, DWORD arraySize, LPPHYSICAL_MONITOR array)
static const IDirect3DDeviceManager9Vtbl device_manager_vtbl
static ULONG WINAPI device_manager_processor_service_AddRef(IDirectXVideoProcessorService *iface)
static ULONG WINAPI video_processor_Release(IDirectXVideoProcessor *iface)
static const D3DFORMAT progressive_processor_input_formats[]
HRESULT WINAPI DXVA2CreateDirect3DDeviceManager9(UINT *token, IDirect3DDeviceManager9 **manager)
static HRESULT WINAPI video_processor_GetVideoProcessorCaps(IDirectXVideoProcessor *iface, DXVA2_VideoProcessorCaps *caps)
BOOL WINAPI SetMonitorDisplayAreaPosition(HMONITOR monitor, MC_POSITION_TYPE type, DWORD position)
BOOL WINAPI GetVCPFeatureAndVCPFeatureReply(HMONITOR monitor, BYTE vcpCode, LPMC_VCP_CODE_TYPE pvct, LPDWORD current, LPDWORD maximum)
BOOL WINAPI CapabilitiesRequestAndCapabilitiesReply(HMONITOR monitor, LPSTR buffer, DWORD length)
static HRESULT WINAPI device_manager_processor_service_GetProcAmpRange(IDirectXVideoProcessorService *iface, REFGUID deviceguid, const DXVA2_VideoDesc *video_desc, D3DFORMAT rt_format, UINT ProcAmpCap, DXVA2_ValueRange *range)
HRESULT WINAPI DXVA2CreateVideoService(IDirect3DDevice9 *device, REFIID riid, void **obj)
static HRESULT WINAPI video_processor_GetVideoProcessorService(IDirectXVideoProcessor *iface, IDirectXVideoProcessorService **service)
BOOL WINAPI GetMonitorContrast(HMONITOR monitor, LPDWORD minimum, LPDWORD current, LPDWORD maximum)
static HRESULT WINAPI device_manager_processor_service_RegisterVideoProcessorSoftwareDevice(IDirectXVideoProcessorService *iface, void *callbacks)
static ULONG WINAPI device_manager_processor_service_Release(IDirectXVideoProcessorService *iface)
BOOL WINAPI GetMonitorTechnologyType(HMONITOR monitor, LPMC_DISPLAY_TECHNOLOGY_TYPE type)
BOOL WINAPI DestroyPhysicalMonitor(HMONITOR monitor)
HRESULT WINAPI OPMGetVideoOutputsFromIDirect3DDevice9Object(IDirect3DDevice9 *device, int vos, ULONG *numVideoOutputs, void ***videoOutputs)
static HRESULT WINAPI device_manager_decoder_service_QueryInterface(IDirectXVideoDecoderService *iface, REFIID riid, void **obj)
BOOL WINAPI DestroyPhysicalMonitors(DWORD arraySize, LPPHYSICAL_MONITOR array)
BOOL WINAPI SetMonitorRedGreenOrBlueDrive(HMONITOR monitor, MC_DRIVE_TYPE type, DWORD drive)
HRESULT WINAPI GetPhysicalMonitorsFromIDirect3DDevice9(IDirect3DDevice9 *device, DWORD arraySize, LPPHYSICAL_MONITOR array)
static const DXVA2_VideoProcessorCaps software_processor_caps
BOOL WINAPI GetMonitorRedGreenOrBlueGain(HMONITOR monitor, MC_GAIN_TYPE type, LPDWORD minimum, LPDWORD current, LPDWORD maximum)
static HRESULT WINAPI video_processor_GetFilterPropertyRange(IDirectXVideoProcessor *iface, UINT setting, DXVA2_ValueRange *range)
BOOL WINAPI SaveCurrentMonitorSettings(HMONITOR monitor)
static HRESULT WINAPI device_manager_QueryInterface(IDirect3DDeviceManager9 *iface, REFIID riid, void **obj)
BOOL WINAPI SetMonitorDisplayAreaSize(HMONITOR monitor, MC_SIZE_TYPE type, DWORD size)
BOOL WINAPI SetMonitorBrightness(HMONITOR monitor, DWORD brightness)
BOOL WINAPI SetMonitorColorTemperature(HMONITOR monitor, MC_COLOR_TEMPERATURE temperature)
static HRESULT WINAPI device_manager_OpenDeviceHandle(IDirect3DDeviceManager9 *iface, HANDLE *hdevice)
static const IDirectXVideoProcessorServiceVtbl device_manager_processor_service_vtbl
static struct device_manager * impl_from_IDirectXVideoDecoderService(IDirectXVideoDecoderService *iface)
static BOOL intersect_rect(RECT *dest, const RECT *src1, const RECT *src2)
static HRESULT WINAPI device_manager_processor_service_GetVideoProcessorDeviceGuids(IDirectXVideoProcessorService *iface, const DXVA2_VideoDesc *video_desc, UINT *count, GUID **guids)
static HRESULT WINAPI device_manager_decoder_service_GetDecoderDeviceGuids(IDirectXVideoDecoderService *iface, UINT *count, GUID **guids)
static BOOL dxva_array_reserve(void **elements, size_t *capacity, size_t count, size_t size)
static HRESULT WINAPI device_manager_GetVideoService(IDirect3DDeviceManager9 *iface, HANDLE hdevice, REFIID riid, void **obj)
BOOL WINAPI GetMonitorCapabilities(HMONITOR monitor, LPDWORD capabilities, LPDWORD temperatures)
static HRESULT WINAPI device_manager_processor_service_GetVideoProcessorRenderTargets(IDirectXVideoProcessorService *iface, REFGUID deviceguid, const DXVA2_VideoDesc *video_desc, UINT *count, D3DFORMAT **formats)
static HRESULT WINAPI device_manager_LockDevice(IDirect3DDeviceManager9 *iface, HANDLE hdevice, IDirect3DDevice9 **device, BOOL block)
BOOL WINAPI GetCapabilitiesStringLength(HMONITOR monitor, LPDWORD length)
static const struct dxva_processor_device_desc processor_devices[]
static HRESULT WINAPI device_manager_decoder_service_CreateSurface(IDirectXVideoDecoderService *iface, UINT width, UINT height, UINT backbuffers, D3DFORMAT format, D3DPOOL pool, DWORD usage, DWORD dxvaType, IDirect3DSurface9 **surfaces, HANDLE *shared_handle)
static HRESULT WINAPI device_manager_processor_service_CreateSurface(IDirectXVideoProcessorService *iface, UINT width, UINT height, UINT backbuffers, D3DFORMAT format, D3DPOOL pool, DWORD usage, DWORD dxvaType, IDirect3DSurface9 **surfaces, HANDLE *shared_handle)
BOOL WINAPI GetMonitorBrightness(HMONITOR monitor, LPDWORD minimum, LPDWORD current, LPDWORD maximum)
BOOL WINAPI GetMonitorDisplayAreaSize(HMONITOR monitor, MC_SIZE_TYPE type, LPDWORD minimum, LPDWORD current, LPDWORD maximum)
static HRESULT WINAPI device_manager_decoder_service_GetDecoderRenderTargets(IDirectXVideoDecoderService *iface, REFGUID guid, UINT *count, D3DFORMAT **formats)
static HRESULT WINAPI device_manager_ResetDevice(IDirect3DDeviceManager9 *iface, IDirect3DDevice9 *device, UINT token)
static struct device_manager * impl_from_IDirectXVideoProcessorService(IDirectXVideoProcessorService *iface)
static const D3DFORMAT software_processor_input_formats[]
static HRESULT WINAPI device_manager_processor_service_GetFilterPropertyRange(IDirectXVideoProcessorService *iface, REFGUID deviceguid, const DXVA2_VideoDesc *video_desc, D3DFORMAT rt_format, UINT filter_setting, DXVA2_ValueRange *range)
static HRESULT WINAPI video_processor_VideoProcessBlt(IDirectXVideoProcessor *iface, IDirect3DSurface9 *rt, const DXVA2_VideoProcessBltParams *params, const DXVA2_VideoSample *samples, UINT sample_count, HANDLE *complete_handle)
static HRESULT WINAPI device_manager_decoder_service_GetDecoderConfigurations(IDirectXVideoDecoderService *iface, REFGUID guid, const DXVA2_VideoDesc *video_desc, void *reserved, UINT *count, DXVA2_ConfigPictureDecode **configs)
static ULONG WINAPI device_manager_AddRef(IDirect3DDeviceManager9 *iface)
BOOL WINAPI GetMonitorColorTemperature(HMONITOR monitor, LPMC_COLOR_TEMPERATURE temperature)
static HRESULT WINAPI device_manager_processor_service_CreateVideoProcessor(IDirectXVideoProcessorService *iface, REFGUID device, const DXVA2_VideoDesc *video_desc, D3DFORMAT rt_format, UINT max_substreams, IDirectXVideoProcessor **processor)
static D3DCOLOR video_processor_get_background_color(const DXVA2_AYUVSample16 *ayuv)
static HRESULT WINAPI device_manager_TestDevice(IDirect3DDeviceManager9 *iface, HANDLE hdevice)
static struct device_manager * impl_from_IDirect3DDeviceManager9(IDirect3DDeviceManager9 *iface)
HRESULT WINAPI OPMGetVideoOutputsFromHMONITOR(HMONITOR monitor, int vos, ULONG *numVideoOutputs, void ***videoOutputs)
BOOL WINAPI SetVCPFeature(HMONITOR monitor, BYTE vcpCode, DWORD value)
static ULONG WINAPI device_manager_decoder_service_AddRef(IDirectXVideoDecoderService *iface)
static HRESULT WINAPI device_manager_UnlockDevice(IDirect3DDeviceManager9 *iface, HANDLE hdevice, BOOL savestate)
HRESULT WINAPI DXVAHD_CreateDevice(IDirect3DDevice9Ex *d3d9_device, const DXVAHD_CONTENT_DESC *desc, DXVAHD_DEVICE_USAGE usage, PDXVAHDSW_Plugin plugin, IDXVAHD_Device **device)
BOOL WINAPI SetMonitorContrast(HMONITOR monitor, DWORD contrast)
BOOL WINAPI GetMonitorRedGreenOrBlueDrive(HMONITOR monitor, MC_DRIVE_TYPE type, LPDWORD minimum, LPDWORD current, LPDWORD maximum)
static HRESULT WINAPI video_processor_GetCreationParameters(IDirectXVideoProcessor *iface, GUID *device, DXVA2_VideoDesc *video_desc, D3DFORMAT *rt_format, UINT *max_substreams)
BOOL WINAPI GetMonitorDisplayAreaPosition(HMONITOR monitor, MC_POSITION_TYPE type, LPDWORD minimum, LPDWORD current, LPDWORD maximum)
static const IDirectXVideoDecoderServiceVtbl device_manager_decoder_service_vtbl
static HRESULT WINAPI device_manager_CloseDeviceHandle(IDirect3DDeviceManager9 *iface, HANDLE hdevice)
static const DXVA2_VideoProcessorCaps progressive_processor_caps
static HRESULT WINAPI device_manager_processor_service_GetVideoProcessorCaps(IDirectXVideoProcessorService *iface, REFGUID device, const DXVA2_VideoDesc *video_desc, D3DFORMAT rt_format, DXVA2_VideoProcessorCaps *caps)
static ULONG WINAPI device_manager_decoder_service_Release(IDirectXVideoDecoderService *iface)
static const IDirectXVideoProcessorVtbl video_processor_vtbl
static ULONG WINAPI device_manager_Release(IDirect3DDeviceManager9 *iface)
static HRESULT WINAPI device_manager_decoder_service_CreateVideoDecoder(IDirectXVideoDecoderService *iface, REFGUID guid, const DXVA2_VideoDesc *video_desc, const DXVA2_ConfigPictureDecode *config, IDirect3DSurface9 **rts, UINT num_surfaces, IDirectXVideoDecoder **decoder)
static HRESULT WINAPI video_processor_QueryInterface(IDirectXVideoProcessor *iface, REFIID riid, void **obj)
static HRESULT device_manager_get_handle_index(struct device_manager *manager, HANDLE hdevice, size_t *idx)
BOOL WINAPI SaveCurrentSettings(HMONITOR monitor)
static BOOL dxva_is_supported_stream_format(const DXVA2_VideoDesc *video_desc, const D3DFORMAT *formats)
void *WINAPI CoTaskMemAlloc(SIZE_T size)
void WINAPI CoTaskMemFree(void *ptr)
#define ERROR_CALL_NOT_IMPLEMENTED
BOOL WINAPI SleepConditionVariableCS(PCONDITION_VARIABLE ConditionVariable, PCRITICAL_SECTION CriticalSection, DWORD Timeout)
VOID WINAPI WakeAllConditionVariable(PCONDITION_VARIABLE ConditionVariable)
VOID WINAPI InitializeConditionVariable(PCONDITION_VARIABLE ConditionVariable)
const struct sortguid * guids
ULONG WINAPI DECLSPEC_HOTPATCH GetTickCount(void)
@ DXVA2_VPDev_HardwareDevice
@ DXVA2_VPDev_SoftwareDevice
@ DXVA2_VideoProcess_StretchX
@ DXVA2_VideoProcess_YUV2RGBExtended
@ DXVA2_VideoProcess_SubStreamsExtended
@ DXVA2_VideoProcess_StretchY
@ DXVA2_VideoProcess_SubRects
@ DXVA2_VideoProcess_SubStreams
@ DXVA2_VideoProcess_PlanarAlpha
@ DXVA2_VideoProcess_YUV2RGB
HRESULT(__stdcall * PDXVAHDSW_Plugin)(UINT size, void *callbacks)
enum _DXVAHD_DEVICE_USAGE DXVAHD_DEVICE_USAGE
GLuint GLuint GLsizei count
GLint GLint GLsizei GLsizei height
GLuint GLuint GLsizei GLenum type
GLint GLint GLint GLint GLint GLint y
GLdouble GLdouble GLdouble r
GLint GLint GLsizei width
GLboolean GLboolean GLboolean b
GLenum const GLfloat * params
const GLvdpauSurfaceNV * surfaces
GLuint GLsizei GLsizei * length
GLsizeiptr const GLvoid GLenum usage
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat token
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
enum _MC_GAIN_TYPE MC_GAIN_TYPE
enum _MC_SIZE_TYPE MC_SIZE_TYPE
enum _MC_DISPLAY_TECHNOLOGY_TYPE * LPMC_DISPLAY_TECHNOLOGY_TYPE
enum _MC_COLOR_TEMPERATURE * LPMC_COLOR_TEMPERATURE
enum _MC_DRIVE_TYPE MC_DRIVE_TYPE
enum _MC_COLOR_TEMPERATURE MC_COLOR_TEMPERATURE
enum _MC_POSITION_TYPE MC_POSITION_TYPE
enum _MC_VCP_CODE_TYPE * LPMC_VCP_CODE_TYPE
struct task_struct * current
D3D11_SHADER_VARIABLE_DESC desc
static unsigned int number
#define IsEqualGUID(rguid1, rguid2)
#define IsEqualIID(riid1, riid2)
BOOL WINAPI IsRectEmpty(_In_ LPCRECT)
BOOL WINAPI SetRectEmpty(_Out_ LPRECT)
IDirect3DStateBlock9 * state_block
IDirectXVideoProcessorService IDirectXVideoProcessorService_iface
IDirectXVideoDecoderService IDirectXVideoDecoderService_iface
IDirect3DDevice9 * device
struct device_handle * handles
IDirect3DDeviceManager9 IDirect3DDeviceManager9_iface
const D3DFORMAT * input_formats
unsigned int max_substreams
IDirectXVideoProcessorService * service
DXVA2_VideoDesc video_desc
IDirectXVideoProcessor IDirectXVideoProcessor_iface
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
#define CONTAINING_RECORD(address, type, field)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
static unsigned int block