nikp123 / xava

X11 Audio Visualizer for ALSA
http://nikp123.github.io/xava
Other
129 stars 14 forks source link

[Feature Request] Glow bars... #14

Open make-42 opened 4 years ago

make-42 commented 4 years ago

Basically like the shadow effect but with colors and gradients...

nikp123 commented 3 years ago

managed to get the depth texture to work as well :)

nikp123 commented 3 years ago

image x3 faster frag shader implementation via depth buffer

nikp123 commented 3 years ago

image funky vertex shaders hehe

nikp123 commented 3 years ago

oi @xE0F9, I've made it work on all three OS-es

nikp123 commented 3 years ago

Now to just add desktop OpenGL back into X11, since I know that EGL doesn't work on all platforms unfortunately (which includes NVIDIA's proprietary driver :cry: )

Anyway, it doesn't matter since EGL and OpenGL now use the same code :partying_face:

nikp123 commented 3 years ago

opengl-vbo is no more, I like this approach way more

nikp123 commented 3 years ago

@xE0F9 try now, it should work ;) (the mode is x11-gl)

make-42 commented 3 years ago

I'm back from vacation and ready to test!

make-42 commented 3 years ago

[ERROR] validate_config at src/config.c:90 - Output method 'x11-gl' could not load. Reason: /usr/local/lib/xava/out_x11-gl.so: cannot open shared object file: No such file or directory

nikp123 commented 3 years ago

x11_gl

ps why cant i get even my explanations right

make-42 commented 3 years ago

[WARN] xavaFindAndCheckFile at src/shared.c:182 - The current system does not support XDG_CONFIG_HOME. There is a high likelyhood that something may be broken [ERROR] validate_config at src/config.c:90 - Output method 'x11_gl' could not load. Reason: /usr/local/lib/xava/out_x11_gl.so: cannot open shared object file: No such file or directory

make-42 commented 3 years ago

I'm running on the unstable branch, is that right?

make-42 commented 3 years ago

image

make-42 commented 3 years ago

Other than that, x11_stars works well! image

nikp123 commented 3 years ago

make install it

make-42 commented 3 years ago

same issue

make-42 commented 3 years ago

out_x11-gl.so is not generated on build though

nikp123 commented 3 years ago

Try the new update, it should be more verbose.

Also while testing like this, PLEASE use the DEBUG build. Release builds are ONLY meant for situations where the binary is actually is installed in the system (aka. /usr/bin/xava)

nikp123 commented 3 years ago

also on second thought, don't.... i need to make the config system less of a absolute mess that ONLY compiles on Arch it seems

nikp123 commented 3 years ago

Try now. All the bugs I've encountered were iniparser related...UGH

make-42 commented 3 years ago

Compiling!

make-42 commented 3 years ago
❯ xava                                                                                                                                    (base) 
[WARN] xavaFindAndCheckFile at src/shared/io.c:193 - The current system does not support XDG_CONFIG_HOME.
There is a high likelyhood that something may be broken
at /usr/local/lib/libxava-shared.so(xavaFindAndCheckFile+0xe8) [0x7f4b98499bba]
at xava(load_config+0x53) [0x55cf76b05030]
at xava(main+0x225) [0x55cf76b05d0b]
at /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xd5) [0x7f4b98162565]
at xava(_start+0x2e) [0x55cf76b045ae]
[INFO] load_module at src/shared/module/unix.c:57 - Module loaded '/usr/local/lib/xava/in_pulseaudio.so' loaded at 0x55cf78a829e0
[INFO] load_module at src/shared/module/unix.c:57 - Module loaded '/usr/local/lib/xava/out_x11_gl.so' loaded at (nil)
[ERROR] validate_config at src/config.c:79 - Output method ' %s' could not load.
Reason
at xava(validate_config+0x136) [0x55cf76b04a7c]
at xava(load_config+0x88f) [0x55cf76b0586c]
at xava(main+0x225) [0x55cf76b05d0b]
at /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xd5) [0x7f4b98162565]
at xava(_start+0x2e) [0x55cf76b045ae]
make-42 commented 3 years ago

Also when building for release I get this:

/usr/bin/ld: CMakeFiles/xava.dir/src/xava.c.o: in function `cleanup':
xava.c:(.text+0xe7): undefined reference to `destroy_module'
/usr/bin/ld: xava.c:(.text+0xf3): undefined reference to `destroy_module'
/usr/bin/ld: xava.c:(.text+0xff): undefined reference to `destroy_module'
/usr/bin/ld: CMakeFiles/xava.dir/src/xava.c.o: in function `main':
xava.c:(.text.startup+0x1bd): undefined reference to `get_symbol_address'
/usr/bin/ld: xava.c:(.text.startup+0x1d7): undefined reference to `get_symbol_address'
/usr/bin/ld: xava.c:(.text.startup+0x1f1): undefined reference to `get_symbol_address'
/usr/bin/ld: xava.c:(.text.startup+0x20b): undefined reference to `get_symbol_address'
/usr/bin/ld: xava.c:(.text.startup+0x225): undefined reference to `get_symbol_address'
/usr/bin/ld: CMakeFiles/xava.dir/src/xava.c.o:xava.c:(.text.startup+0x23f): more undefined references to `get_symbol_address' follow
/usr/bin/ld: CMakeFiles/xava.dir/src/config.c.o: in function `validate_config':
config.c:(.text+0x39b): undefined reference to `load_input_module'
/usr/bin/ld: config.c:(.text+0x3aa): undefined reference to `is_module_valid'
/usr/bin/ld: config.c:(.text+0x3be): undefined reference to `load_output_module'
/usr/bin/ld: config.c:(.text+0x3cd): undefined reference to `is_module_valid'
/usr/bin/ld: config.c:(.text+0x3e1): undefined reference to `load_filter_module'
/usr/bin/ld: config.c:(.text+0x3f0): undefined reference to `is_module_valid'
/usr/bin/ld: config.c:(.text+0xb08): undefined reference to `get_module_error'
/usr/bin/ld: config.c:(.text+0xb58): undefined reference to `get_module_error'
/usr/bin/ld: config.c:(.text+0xba8): undefined reference to `get_module_error'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/xava.dir/build.make:119: xava] Error 1
make[1]: *** [CMakeFiles/Makefile2:229: CMakeFiles/xava.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make-42 commented 3 years ago

And out_x11_gl.so is still not generated: image

nikp123 commented 3 years ago

please check if its a dependency issue

run cmake again to figure that out

make-42 commented 3 years ago

cmake runs with no errors

nikp123 commented 3 years ago

cmake runs with no errors

still, show logs. i have no idea why it doesnt build

nikp123 commented 3 years ago

besides i hopefully fixed that linking issue with the modules functions

nikp123 commented 3 years ago

also " GLEW library not found" MAKES IT NOT BUILD

nikp123 commented 3 years ago

try again... i hope something changes

make-42 commented 3 years ago
CMake Warning at src/output/graphical_sdl2/build.cmake:35 (message):
  GLEW library not found, "sdl2_gl" won't build
Call Stack (most recent call first):
  CMakeLists.txt:100 (include)

CMake Warning at src/output/graphical_x11/build.cmake:66 (message):
  GLEW, OpenGL and or Xrender library not found; "x11_gl" won't build
Call Stack (most recent call first):
  CMakeLists.txt:100 (include)

-- Not a Windows platform, can use POSIX now!
CMake Warning at src/input/pipewire/build.cmake:17 (message):
  PipeWire library not found, PipeWire won't build
Call Stack (most recent call first):
  CMakeLists.txt:107 (include)

CMake Warning at src/input/portaudio/build.cmake:16 (message):
  PortAudio library not found, PortAudio won't build
Call Stack (most recent call first):
  CMakeLists.txt:107 (include)
make-42 commented 3 years ago

well that explains it

make-42 commented 3 years ago

Rebuilt and it's fixed

make-42 commented 3 years ago

image

make-42 commented 3 years ago

How do I enable the radial shader?

nikp123 commented 3 years ago

throw in the shader file in the config directory

~/.config/xava/gl/shaders

Tho I'd much rather have shader packs... So that's next on the list to implement

nikp123 commented 3 years ago

It should be pretty simple to add any shader packs. Contributions are welcome.

Your call @xE0F9, you are better at shaders than me lol

make-42 commented 3 years ago

Started development this morning on some of the shaders, is there any way you could share what code you use to map the xava render to polar coordinates?

make-42 commented 3 years ago

I'm getting there... Screenshot_20210728_112052 I think.

make-42 commented 3 years ago

I couldn't do it

make-42 commented 3 years ago

I need your help lol

make-42 commented 3 years ago

Is there any way to have some sort of anti aliasing ?

make-42 commented 3 years ago

Like MSAA

make-42 commented 3 years ago

Also, finally!!!! image

make-42 commented 3 years ago

Also a time variable would be nice for more advanced shaders

make-42 commented 3 years ago

Also a version of the xava transform that doesn't make it bars but instead a smooth continuous line

make-42 commented 3 years ago

Otherwise, performance is great on the RTX 3090.

nikp123 commented 3 years ago

Is there any way to have some sort of anti aliasing ?

i could, i mean, nothings stopping me

nikp123 commented 3 years ago

Is there any way to have some sort of anti aliasing ?

i could, i mean, nothings stopping me

oh, naive, nik, have you thought about for a second about dumb differing standards and methods of achieving MSAA and how it (sometimes) is entirely broken on some systems.

nikp123 commented 3 years ago

you can have fun with time now