[FFmpeg-devel] [PATCH] lavf/vsrc_ddagrab: WinAPI functions must be called as stdcall in x86_32

2024-04-07 Thread Vadim Guchenko
Henrik Gramner via ffmpeg-devel wrote on 07.04.2024 at 17:32:

> I believe most existing code uses WINAPI instead of __stdcall.

Thanks for correction. Here is a new patch:

diff --git a/libavfilter/vsrc_ddagrab.c b/libavfilter/vsrc_ddagrab.c
--- a/libavfilter/vsrc_ddagrab.c
+++ b/libavfilter/vsrc_ddagrab.c
@@ -178,7 +178,7 @@ static av_cold int init_dxgi_dda(AVFilterContext *avctx)
 #if HAVE_IDXGIOUTPUT5 && HAVE_DPI_AWARENESS_CONTEXT
 IDXGIOutput5 *dxgi_output5 = NULL;
 
-typedef DPI_AWARENESS_CONTEXT (*set_thread_dpi_t)(DPI_AWARENESS_CONTEXT);
+typedef DPI_AWARENESS_CONTEXT (WINAPI 
*set_thread_dpi_t)(DPI_AWARENESS_CONTEXT);
 set_thread_dpi_t set_thread_dpi;
 HMODULE user32_module;
 #endif

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH] lavf/vsrc_ddagrab: WinAPI functions must be called as stdcall in x86_32

2024-04-07 Thread Henrik Gramner via ffmpeg-devel
On Sun, Apr 7, 2024 at 2:59 AM Vadim Guchenko  wrote:
> +typedef DPI_AWARENESS_CONTEXT (__stdcall 
> *set_thread_dpi_t)(DPI_AWARENESS_CONTEXT);

I believe most existing code uses WINAPI instead of __stdcall.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


[FFmpeg-devel] [PATCH] lavf/vsrc_ddagrab: WinAPI functions must be called as stdcall in x86_32

2024-04-06 Thread Vadim Guchenko
Now I get Access Violation when using ddagrab filter in ffmpeg compiled for 
x86_32 architecture.

More information here: https://trac.ffmpeg.org/ticket/10914

diff --git a/libavfilter/vsrc_ddagrab.c b/libavfilter/vsrc_ddagrab.c
--- a/libavfilter/vsrc_ddagrab.c
+++ b/libavfilter/vsrc_ddagrab.c
@@ -178,7 +178,7 @@ static av_cold int init_dxgi_dda(AVFilterContext *avctx)
 #if HAVE_IDXGIOUTPUT5 && HAVE_DPI_AWARENESS_CONTEXT
 IDXGIOutput5 *dxgi_output5 = NULL;
 
-typedef DPI_AWARENESS_CONTEXT (*set_thread_dpi_t)(DPI_AWARENESS_CONTEXT);
+typedef DPI_AWARENESS_CONTEXT (__stdcall 
*set_thread_dpi_t)(DPI_AWARENESS_CONTEXT);
 set_thread_dpi_t set_thread_dpi;
 HMODULE user32_module;
 #endif

-- 
Best regards,
 Vadim

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".