patriciogonzalezvivo/glslViewer

macOS 12.6 video + audio issues

stephanschulz opened this issue · 6 comments

I am very excited about the glslViewer and am looking forward to the online class on October 25.
Thanks for offering it.

Here are some issues I ran in to.

I cloned the repo via GitHub desktop app on a M1 MacBook Pro with macOS 12.6.
I followed these install steps https://github.com/patriciogonzalezvivo/glslViewer/wiki/Compile-on-MacOS

When running brew install pkg-config cmake ncurses
It gives this warning

Emacs Lisp files have been installed to:
  /opt/homebrew/share/emacs/site-lisp/cmake
==> ncurses
ncurses is keg-only, which means it was not symlinked into /opt/homebrew,
because macOS already provides this software and installing another version in
parallel can cause all kinds of trouble.

If you need to have ncurses first in your PATH, run:
  echo 'export PATH="/opt/homebrew/opt/ncurses/bin:$PATH"' >> ~/.zshrc

For compilers to find ncurses you may need to set:
  export LDFLAGS="-L/opt/homebrew/opt/ncurses/lib"

I also installed ffmpeg.

I am able to run the 2D examples. The 3d examples produce blank windows; either white or black.

I tired to test video and camera access as mentioned here https://github.com/patriciogonzalezvivo/glslViewer/wiki/Audio-and-Video-Textures
Running glslViewer shader.frag --video 0 connects to my build in camera but only shows one frozen webcam image.
Running glslViewer shader.frag /Users/stephanschulz/Desktop/fingers.mov works fine.
Running glslViewer shader_audio.frag --audio 0 opens a window similar to glslViewer 00_tests/test.frag

Hi Thanks for bringing this up. It's my fault for the pour documentation. To test the Audio/Video capabilities of glslViewer go to the examples/2D/00_test folder and there:

glslViewer test.frag --video 0
glslViewer test_audio.frag --audio
glslViewer test_video.frag in.mp4 -w 960 -h 540

I recommend you to use the make command to run the routines on the Makefile in each example folder. You probably running the 3D examples without the .vert or the geometry assigned (OBJ|PLY|GLTF files).

For the audio example... if shader_audio.frag doesn't exist, it will create a file with that name which don't utilize the audio.

I'm going to create an issue for the camera issues... I can replicate the same behavior on my M1. Thank you

Camera issue opened here #302

Creating another issue for improving the AV documentation that leads to actual examples #303

Indeed

glslViewer test_audio.frag --audio
glslViewer test_video.frag in.mp4 -w 960 -h 540

work after `cd examples/2D/00_test``

On the subject of the 3D examples

stephanschulz@Stephans-Komputer 3D % cd 01_lighting 
stephanschulz@Stephans-Komputer 01_lighting % make

work well but 02_materials and 03_models do not have a make file

make needs to be followed by one of the make routines in the Makefile in the same folder