FiniteSingularity / obs-composite-blur

A comprehensive blur plugin for OBS that provides several different blur algorithms, and proper compositing.
GNU General Public License v2.0
382 stars 31 forks source link

[BUG] - Attempting to apply filter causes the source to blank out #47

Closed LividJava closed 1 year ago

LividJava commented 1 year ago

Describe the bug When applying the Filter, the targeted source will go black and produce an error in OBS log.

To Reproduce Steps to reproduce the behavior:

  1. Attempt to apply the Gaussian Filter
  2. Encounter an error where the source blanks out.

Expected behavior The filter would be applied as normal.

Environment

GPU

Additional context Other Blur effects appear as normal

Relevant Error 02:42:20.891: User added filter 'Composite Blur' (obs_composite_blur) to source 'Waveform Visualizer' 02:42:20.908: Error compiling shader: 02:42:20.908: ERROR: 0:40: 'expression' : left of '[' is not of type array, matrix, or vector 02:42:20.908: ERROR: 0:40: '' : compilation terminated 02:42:20.908: ERROR: 2 compilation errors. No code generated. 02:42:20.908: 02:42:20.908: 02:42:20.908: 02:42:20.908: device_pixelshader_create (GL) failed 02:42:20.908: Pass (0) <> missing pixel shader! 02:42:20.908: [obs-composite-blur] Unable to load .effect file. Errors: 02:42:20.908: (None)
FiniteSingularity commented 1 year ago

Hi @LividJava-

Thank you for opening the issue, and for providing the error log. That error occurs looks like you're using an OpenGL renderer rather than Direct3D, but you are on a Windows system. There is a special set of Gaussian shader effect files for operating systems that use OpenGL as their renderer (Linux and MacOS), but Windows uses Direct3D (and so the Windows build does not use the shader effect files with the OpenGL fix).

Do you happen to know if you're forcing OpenGL on Windows (by adding --allow-opengl to your OBS launch)? Alternatively, can you please let me know what you see in Settings --> Advanced --> Video --> Renderer? e.g.-

image

FiniteSingularity commented 1 year ago

@LividJava-

I think I've got a fix ready to go, and would really appreciate if you could give it a test and see if it fixes the problem for you. If you're able to give it a try- go to the PRs action run page ( https://github.com/FiniteSingularity/obs-composite-blur/actions/runs/6137256282 ) and scroll down to the bottom. You'll see a section called "Artifacts". Download one of the two Windows zip files (either installer or the normal zip). Make sure your OBS has been quit, and install the new version of the plugin, run OBS, and let me know if it resolves the issue.

FiniteSingularity commented 1 year ago

The merged PR should have fixed this issue. It'll be included in release 1.0.2, which I'm going to release in an hour or two. Please re-open if v1.0.2 doesn't resolve your issue @LividJava.

FiniteSingularity commented 1 year ago

@all-contributors please add @LividJava for bug

allcontributors[bot] commented 1 year ago

@FiniteSingularity

I've put up a pull request to add @LividJava! :tada:

LividJava commented 1 year ago

hopefully this comment doesn't reopen the issue. I imported a config file over from linux to windows, it also apparently carried over the opengl setting. on 1.0.1 switching over to the Direct3D renderer does fix the issue. and on 1.0.2 using OpenGL the issue is fixed as well. Apologies for the late response, i've just been really busy

FiniteSingularity commented 1 year ago

No worries on the delay. I’m glad it fixed the issue!