Skip to content

Commit 0ceb0df

Browse files
authored
fix load of nvidia video fx (#624)
1 parent c1cb23e commit 0ceb0df

File tree

3 files changed

+2
-41
lines changed

3 files changed

+2
-41
lines changed

plugins/obs-filters/nvidia-greenscreen-filter.c

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -984,14 +984,6 @@ bool load_nvvfx(void)
984984
LOAD_SYM(NvCVImage_FromD3DColorSpace);
985985
#undef LOAD_SYM
986986

987-
#define LOAD_SYM(sym) LOAD_SYM_FROM_LIB(sym, nv_cudart, "cudart64_110.dll")
988-
LOAD_SYM(cudaMalloc);
989-
LOAD_SYM(cudaStreamSynchronize);
990-
LOAD_SYM(cudaFree);
991-
LOAD_SYM(cudaMemcpy);
992-
LOAD_SYM(cudaMemsetAsync);
993-
#undef LOAD_SYM
994-
995987
#define LOAD_SYM(sym) LOAD_SYM_FROM_LIB2(sym, nv_videofx, "NVVideoEffects.dll")
996988
LOAD_SYM(NvVFX_SetStateObjectHandleArray);
997989
LOAD_SYM(NvVFX_AllocateState);

plugins/obs-filters/nvvfx-load.h

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ extern "C" {
4242
#define MIN_VFX_SDK_VERSION (0 << 24 | 7 << 16 | 2 << 8 | 0 << 0)
4343
static HMODULE nv_videofx = NULL;
4444
static HMODULE nv_cvimage = NULL;
45-
static HMODULE nv_cudart = NULL;
4645
static HMODULE nv_cuda = NULL;
4746

4847
//! Status codes returned from APIs.
@@ -633,16 +632,6 @@ typedef enum cudaMemcpyKind {
633632

634633
typedef enum cudaError cudaError_t;
635634

636-
typedef cudaError_t CUDARTAPI (*cudaMalloc_t)(void **devPtr, size_t size);
637-
typedef cudaError_t CUDARTAPI (*cudaStreamSynchronize_t)(CUstream stream);
638-
typedef cudaError_t CUDARTAPI (*cudaFree_t)(void *devPtr);
639-
typedef cudaError_t CUDARTAPI (*cudaMemsetAsync_t)(void *devPtr, int value,
640-
size_t count,
641-
CUstream stream);
642-
typedef cudaError_t CUDARTAPI (*cudaMemcpy_t)(void *dst, const void *src,
643-
size_t count,
644-
enum cudaMemcpyKind kind);
645-
646635
/* nvvfx */
647636
static NvVFX_GetVersion_t NvVFX_GetVersion = NULL;
648637
static NvVFX_CreateEffect_t NvVFX_CreateEffect = NULL;
@@ -705,13 +694,6 @@ static NvCVImage_InitFromD3D11Texture_t NvCVImage_InitFromD3D11Texture = NULL;
705694
/* error codes */
706695
static NvCV_GetErrorStringFromCode_t NvCV_GetErrorStringFromCode = NULL;
707696

708-
/* cuda runtime */
709-
static cudaMalloc_t cudaMalloc = NULL;
710-
static cudaStreamSynchronize_t cudaStreamSynchronize = NULL;
711-
static cudaFree_t cudaFree = NULL;
712-
static cudaMemcpy_t cudaMemcpy = NULL;
713-
static cudaMemsetAsync_t cudaMemsetAsync = NULL;
714-
715697
static inline void release_nv_vfx()
716698
{
717699
NvVFX_CreateEffect = NULL;
@@ -776,15 +758,6 @@ static inline void release_nv_vfx()
776758
FreeLibrary(nv_cvimage);
777759
nv_cvimage = NULL;
778760
}
779-
cudaMalloc = NULL;
780-
cudaStreamSynchronize = NULL;
781-
cudaFree = NULL;
782-
cudaMemcpy = NULL;
783-
cudaMemsetAsync = NULL;
784-
if (nv_cudart) {
785-
FreeLibrary(nv_cudart);
786-
nv_cudart = NULL;
787-
}
788761
}
789762

790763
static inline void nvvfx_get_sdk_path(char *buffer, const size_t len)
@@ -810,9 +783,8 @@ static inline bool load_nv_vfx_libs()
810783

811784
nv_videofx = LoadLibrary(L"NVVideoEffects.dll");
812785
nv_cvimage = LoadLibrary(L"NVCVImage.dll");
813-
nv_cudart = LoadLibrary(L"cudart64_110.dll");
814786
SetDllDirectoryA(NULL);
815-
return !!nv_videofx && !!nv_cvimage && !!nv_cudart;
787+
return !!nv_videofx && !!nv_cvimage;
816788
}
817789

818790
static unsigned int get_lib_version(void)

plugins/obs-filters/obs-filters.c

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,10 +84,7 @@ bool obs_module_load(void)
8484
obs_register_source(&luma_key_filter);
8585
obs_register_source(&luma_key_filter_v2);
8686
#ifdef LIBNVVFX_ENABLED
87-
obs_enter_graphics();
88-
const bool direct3d = gs_get_device_type() == GS_DEVICE_DIRECT3D_11;
89-
obs_leave_graphics();
90-
if (direct3d && load_nvvfx())
87+
if (load_nvvfx())
9188
obs_register_source(&nvidia_greenscreen_filter_info);
9289
#endif
9390
return true;

0 commit comments

Comments
 (0)