#include <windows.h>
-// Include thread.h before redefining _WIN32_WINNT, to get
-// the right implementation for AVOnce
-#include "thread.h"
-
-#if !defined(_WIN32_WINNT) || _WIN32_WINNT < 0x0600
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x0600
-#endif
#define COBJMACROS
#include <initguid.h>
#include "imgutils.h"
#include "pixdesc.h"
#include "pixfmt.h"
+#include "thread.h"
+#include "compat/w32dlfcn.h"
typedef HRESULT(WINAPI *PFN_CREATE_DXGI_FACTORY)(REFIID riid, void **ppFactory);
// from too many LoadLibrary calls.
HANDLE d3dlib, dxgilib;
- d3dlib = LoadLibrary("d3d11.dll");
- dxgilib = LoadLibrary("dxgi.dll");
+ d3dlib = dlopen("d3d11.dll", 0);
+ dxgilib = dlopen("dxgi.dll", 0);
if (!d3dlib || !dxgilib)
return;
fill_texture_ptrs(map_data, map_linesize, ctx, &desc, &map);
- av_image_copy(dst->data, dst->linesize, map_data, map_linesize,
+ av_image_copy(dst->data, dst->linesize, (const uint8_t **)map_data, map_linesize,
ctx->sw_format, w, h);
ID3D11DeviceContext_Unmap(device_hwctx->device_context, staging, 0);
fill_texture_ptrs(map_data, map_linesize, ctx, &desc, &map);
- av_image_copy(map_data, map_linesize, src->data, src->linesize,
+ av_image_copy(map_data, map_linesize, (const uint8_t **)src->data, src->linesize,
ctx->sw_format, w, h);
ID3D11DeviceContext_Unmap(device_hwctx->device_context, staging, 0);
}
if (pAdapter) {
- DXGI_ADAPTER_DESC2 desc;
+ DXGI_ADAPTER_DESC desc;
hr = IDXGIAdapter2_GetDesc(pAdapter, &desc);
if (!FAILED(hr)) {
av_log(ctx, AV_LOG_INFO, "Using device %04x:%04x (%ls).\n",