From b19f88d769958af067c86f6b98b7d579a10acc29 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Thu, 21 Mar 2024 15:11:13 +0100 Subject: Fix missing color range set in color conversion for nvidia window capture --- src/capture/capture.c | 4 ---- src/capture/kms_cuda.c | 5 ----- src/capture/xcomposite_cuda.c | 5 ----- 3 files changed, 14 deletions(-) (limited to 'src/capture') diff --git a/src/capture/capture.c b/src/capture/capture.c index a1d2913..cec0b0d 100644 --- a/src/capture/capture.c +++ b/src/capture/capture.c @@ -204,14 +204,11 @@ static unsigned int gl_create_texture(gsr_egl *egl, int width, int height, int i static bool cuda_register_opengl_texture(gsr_cuda *cuda, CUgraphicsResource *cuda_graphics_resource, CUarray *mapped_array, unsigned int texture_id) { CUresult res; - CUcontext old_ctx; - res = cuda->cuCtxPushCurrent_v2(cuda->cu_ctx); res = cuda->cuGraphicsGLRegisterImage(cuda_graphics_resource, texture_id, GL_TEXTURE_2D, CU_GRAPHICS_REGISTER_FLAGS_NONE); if (res != CUDA_SUCCESS) { const char *err_str = "unknown"; cuda->cuGetErrorString(res, &err_str); fprintf(stderr, "gsr error: cuda_register_opengl_texture: cuGraphicsGLRegisterImage failed, error: %s, texture " "id: %u\n", err_str, texture_id); - res = cuda->cuCtxPopCurrent_v2(&old_ctx); return false; } @@ -219,7 +216,6 @@ static bool cuda_register_opengl_texture(gsr_cuda *cuda, CUgraphicsResource *cud res = cuda->cuGraphicsMapResources(1, cuda_graphics_resource, 0); res = cuda->cuGraphicsSubResourceGetMappedArray(mapped_array, *cuda_graphics_resource, 0, 0); - res = cuda->cuCtxPopCurrent_v2(&old_ctx); return true; } diff --git a/src/capture/kms_cuda.c b/src/capture/kms_cuda.c index 0349228..a9f1f8e 100644 --- a/src/capture/kms_cuda.c +++ b/src/capture/kms_cuda.c @@ -72,9 +72,6 @@ static bool gsr_capture_kms_cuda_should_stop(gsr_capture *cap, bool *err) { static void gsr_capture_kms_unload_cuda_graphics(gsr_capture_kms_cuda *cap_kms) { if(cap_kms->cuda.cu_ctx) { - CUcontext old_ctx; - cap_kms->cuda.cuCtxPushCurrent_v2(cap_kms->cuda.cu_ctx); - for(int i = 0; i < 2; ++i) { if(cap_kms->cuda_graphics_resources[i]) { cap_kms->cuda.cuGraphicsUnmapResources(1, &cap_kms->cuda_graphics_resources[i], 0); @@ -82,8 +79,6 @@ static void gsr_capture_kms_unload_cuda_graphics(gsr_capture_kms_cuda *cap_kms) cap_kms->cuda_graphics_resources[i] = 0; } } - - cap_kms->cuda.cuCtxPopCurrent_v2(&old_ctx); } } diff --git a/src/capture/xcomposite_cuda.c b/src/capture/xcomposite_cuda.c index e8beb4e..6e13d2a 100644 --- a/src/capture/xcomposite_cuda.c +++ b/src/capture/xcomposite_cuda.c @@ -53,9 +53,6 @@ static int gsr_capture_xcomposite_cuda_start(gsr_capture *cap, AVCodecContext *v static void gsr_capture_xcomposite_unload_cuda_graphics(gsr_capture_xcomposite_cuda *cap_xcomp) { if(cap_xcomp->cuda.cu_ctx) { - CUcontext old_ctx; - cap_xcomp->cuda.cuCtxPushCurrent_v2(cap_xcomp->cuda.cu_ctx); - for(int i = 0; i < 2; ++i) { if(cap_xcomp->cuda_graphics_resources[i]) { cap_xcomp->cuda.cuGraphicsUnmapResources(1, &cap_xcomp->cuda_graphics_resources[i], 0); @@ -63,8 +60,6 @@ static void gsr_capture_xcomposite_unload_cuda_graphics(gsr_capture_xcomposite_c cap_xcomp->cuda_graphics_resources[i] = 0; } } - - cap_xcomp->cuda.cuCtxPopCurrent_v2(&old_ctx); } } -- cgit v1.2.3