GithubHelp home page GithubHelp logo

d3cod3 / mosaic Goto Github PK

View Code? Open in Web Editor NEW
405.0 17.0 23.0 214.5 MB

Mosaic, an openFrameworks based Visual Patching Creative-Coding Platform

Home Page: https://mosaic.d3cod3.org

License: Other

Makefile 1.82% QML 1.58% C++ 90.44% C 1.12% Lua 1.92% GLSL 1.51% Shell 1.60%
osx linux creative-coding video audio graphics live-coding visual-programming windows transmedia

mosaic's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mosaic's Issues

Symlink support

This project looks perfect for my current project, thanks for making this.
I couldn't get the flatpack to work on Ubuntu 18.04 but I installed using the linux installer script, everything worked great and I was able to start Mosiac, but ran into an issue that I'm hoping is easy to fix.

Tried to import some videos and files and discovered that the file dialog doesn't see symlinks (and all my documents are symlinked to my home directory). I tried dragging and dropping and that also only worked for files not in symlinked directories. Is there an easy way to add support for symlinks?

Thanks!

Error in linux mint

when i execute install_mosaic_ubuntu i have this error

/opt/openFrameworks/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:352: fallo en las instrucciones para el objetivo '/opt/openFrameworks/addons/obj/linux64/Release/ofxPoco/src/ofxXmlPoco.o'
make[1]: *** [/opt/openFrameworks/addons/obj/linux64/Release/ofxPoco/src/ofxXmlPoco.o] Error 1
make[1]: *** Se espera a que terminen otras tareas....
make[1]: *** wait: No hay ningún proceso hijo. Alto.
/opt/openFrameworks/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:124: fallo en las instrucciones para el objetivo 'Release'
make: *** [Release] Error 2
"make -j$NUMPU Release" command failed with exit code 2.

this is my lsb_relase -a
Distributor ID: LinuxMint
Description: Linux Mint 18.3 Sylvia
Release: 18.3
Codename: sylvia

thanks!
Alba

Surfaces link and new set of objects

  • Add surface link cable
  • Add basic surface objects (circle, vertex points, rectangle), try different approaches
  • Add advanced surface controlled objects, like particles controller, collision detection, etc..
  • Add surface to texture object

About this project

What application scenarios and functions are used in this project? Is there a detailed introduction?

Consider sending any useful changes upstream

I figure creating a single issue here is faster.

Howdy, nice project.

I see you needed to fork some of my addons: ofxGLEditor, ofxLua, ofxMidi. If you have the time, please consider porting required changes upstream via PRs etc and we can work towards having the project build without needing forks.

v0.1.1 Linux compile

Compiling in Linux with qtcreator 4.6.1 is perfectly fine, BUT, due to OF issue #3487, a gtk2 gtk3 incompatibilty crashes app when try to open/save file dialog.
The fastest way to solve the issue is to edit this file:

of_vx.x.x.os_release/libs/openframeworksCompiled/project/qtcreator/modules/of/of.qbs

go to line 96 approx. and you'll see

if(platform === "linux"  || platform === "linux64"){
                var pkgs = [
                    "cairo",
                    "gstreamer-1.0",
                    "zlib",
                    "gstreamer-app-1.0",
                    "gstreamer-video-1.0",
                    "gstreamer-base-1.0",
                    "libudev",
                    "freetype2",
                    "fontconfig",
                    "sndfile",
                    "openal",
                    "libpulse-simple",
                    "alsa",
                    "gl",
                    "glu",
                    "glew",
                    "gtk+-3.0",
                    "libmpg123",
                    "glfw3",
                    "liburiparser",
                    "libcurl",
                ].concat(pkgConfigs);


                if(Helpers.pkgExists("rtaudio")){
                    pkgs.push("rtaudio");
                }
                if(Helpers.pkgExists("libmpg123")){
                    pkgs.push("libmpg123");
                }
                if(Helpers.pkgExists("gtk+-3.0")){
                    pkgs.push("gtk+-3.0")
                }

Then change it to this:

if(platform === "linux"  || platform === "linux64"){
                var pkgs = [
                    "cairo",
                    "gstreamer-1.0",
                    "zlib",
                    "gstreamer-app-1.0",
                    "gstreamer-video-1.0",
                    "gstreamer-base-1.0",
                    "libudev",
                    "freetype2",
                    "fontconfig",
                    "sndfile",
                    "openal",
                    "libpulse-simple",
                    "alsa",
                    "gl",
                    "glu",
                    "glew",
                    "gtk+-2.0",
                    //"gtk+-3.0",
                    "libmpg123",
                    "glfw3",
                    "liburiparser",
                    "libcurl",
                ].concat(pkgConfigs);


                if(Helpers.pkgExists("rtaudio")){
                    pkgs.push("rtaudio");
                }
                if(Helpers.pkgExists("libmpg123")){
                    pkgs.push("libmpg123");
                }
                if(Helpers.pkgExists("gtk+-3.0")){
                    //pkgs.push("gtk+-3.0")
                }

This will force the compilation of the openframeworks library to use gtk2.0 and not gtk3.0

So go back to qtcreator and rebuild all

SOLVED

Retina screen GUI display errors

Anyone experimenting GUI graphical errors on mac retina screens?

Please report the issue here with a screenshot, we'll fix it for the next Mosaic release!

Mosaic crashes on Mac with example files

Hi!

I was going through the examples to explore the capabilities of your software. I tried the example projects one by one, and found the software crashing each time I tried to open an example after having opened one already. Moreover, the example haarTracking crashes immediately when loading even if there is no other example already open.

Mosaic 0.5.0
macOS 11.5.2
MacBook Pro 16" 2019

Btw, this is great initiative! I hope you keep developing Mosaic, it shows great promise!

VP_LINK_FBO : A render pass for each object ?

Hey,
I just noticed, there's a way to send textures (VP_LINK_TEXTURE) from object to object, but nothing for rendering on an FBO... (or did I miss something?).

Implementing some new objects (face tracker, countdown timer effect, flash effect, points renderer, etc.), I need to render several "rendered effects" on a final display output.
Currently, I guess that you have to put them in individual textures to be mixed/rendered together later, which doesn't make sense to me (regarding performance and GL logic).
Now each "render object" needs to allocate an FBO (in order to render), then extract that to pixels in a newly allocated texture (for output), which is then drawn in the fbo of the next object. Letting them render on the same FBO would be so much faster and lighter in memory usage. Also I guess there's a hardware limit on how much FBOs you allocate, different on each device, which would theoretically limit the creation of numerous render objects in Mosaic.

Would there be another way of "accumulating effects" in Mosaic ?
Is there some reason for VP_LINK_FBO links not to be already present ?

Maybe something like this ?
[ fbo_object ]----fbo---[particle_effect]---fbo---[other_effect]---fbo---[window_output]
In karmaMapper I used this class as extended ofFbo : karmaFboLayer.h
This link-logic could also be of use to my surfaces proposal in #24

Maybe then there could also be something like a FboToTexture glue object.

Segmentation faul core dumped in virtual box running linux mint.

Hi i did a fresh install of linux mint in virtual box, and the install script seemed to work perfectly fine. It compiled mosaic inside the bin folder. However when i try to run the program, I get segmentation fault (core dumped), while also running as root

this is the output of ldd Mosaic
linux-vdso.so.1 (0x00007ffef38ad000)
libcrypto.so.1.1 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 (0x00007f80c3784000)
libssl.so.1.1 => /usr/lib/x86_64-linux-gnu/libssl.so.1.1 (0x00007f80c351a000)
libpython2.7.so.1.0 => /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0 (0x00007f80c2f9d000)
libgstapp-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 (0x00007f80c2d8e000)
libgstvideo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 (0x00007f80c2af6000)
libgstbase-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 (0x00007f80c2881000)
libgstreamer-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 (0x00007f80c2546000)
libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f80c2328000)
libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007f80c20e3000)
libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f80c1e2f000)
libsndfile.so.1 => /usr/lib/x86_64-linux-gnu/libsndfile.so.1 (0x00007f80c1bb6000)
libopenal.so.1 => /usr/lib/x86_64-linux-gnu/libopenal.so.1 (0x00007f80c1917000)
libcurl.so.4 => /usr/lib/x86_64-linux-gnu/libcurl.so.4 (0x00007f80c1698000)
libglfw.so.3 => /usr/lib/x86_64-linux-gnu/libglfw.so.3 (0x00007f80c147b000)
librtaudio.so.6 => /usr/lib/x86_64-linux-gnu/librtaudio.so.6 (0x00007f80c125f000)
libGLEW.so.2.0 => /usr/lib/x86_64-linux-gnu/libGLEW.so.2.0 (0x00007f80c0fca000)
libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007f80c0d3e000)
libgtk-3.so.0 => /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007f80c0436000)
libcairo.so.2 => /usr/lib/x86_64-linux-gnu/libcairo.so.2 (0x00007f80c0119000)
libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f80bfec5000)
libglib-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f80bfbae000)
libmpg123.so.0 => /usr/lib/x86_64-linux-gnu/libmpg123.so.0 (0x00007f80bf94f000)
libassimp.so.4 => /usr/lib/x86_64-linux-gnu/libassimp.so.4 (0x00007f80bef84000)
libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 (0x00007f80bed6c000)
libopencv_video.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_video.so.3.2 (0x00007f80beb09000)
libopencv_calib3d.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.3.2 (0x00007f80be7b9000)
libopencv_objdetect.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.3.2 (0x00007f80be563000)
libopencv_imgproc.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.3.2 (0x00007f80be012000)
libopencv_core.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_core.so.3.2 (0x00007f80bdbd7000)
libasound.so.2 => /usr/lib/x86_64-linux-gnu/libasound.so.2 (0x00007f80bd8d0000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f80bd598000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f80bd394000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f80bd175000)
libfreeimage.so.3 => /usr/lib/x86_64-linux-gnu/libfreeimage.so.3 (0x00007f80bcec5000)
libboost_filesystem.so.1.65.1 => /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.65.1 (0x00007f80bccab000)
libboost_system.so.1.65.1 => /usr/lib/x86_64-linux-gnu/libboost_system.so.1.65.1 (0x00007f80bcaa6000)
libpugixml.so.1 => /usr/lib/x86_64-linux-gnu/libpugixml.so.1 (0x00007f80bc86f000)
liburiparser.so.1 => /usr/lib/x86_64-linux-gnu/liburiparser.so.1 (0x00007f80bc654000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f80bc2cb000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f80bbf2d000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f80bbd15000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f80bb924000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f80bb707000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f80bb504000)
liborc-0.4.so.0 => /usr/lib/x86_64-linux-gnu/liborc-0.4.so.0 (0x00007f80bb288000)
libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007f80bb084000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f80bae7c000)
/lib64/ld-linux-x86-64.so.2 (0x00007f80c5e05000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f80bac4a000)
libpng16.so.16 => /usr/lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f80baa18000)
libFLAC.so.8 => /usr/lib/x86_64-linux-gnu/libFLAC.so.8 (0x00007f80ba7a1000)
libogg.so.0 => /usr/lib/x86_64-linux-gnu/libogg.so.0 (0x00007f80ba598000)
libvorbis.so.0 => /usr/lib/x86_64-linux-gnu/libvorbis.so.0 (0x00007f80ba36d000)
libvorbisenc.so.2 => /usr/lib/x86_64-linux-gnu/libvorbisenc.so.2 (0x00007f80ba0c4000)
libsndio.so.6.1 => /usr/lib/x86_64-linux-gnu/libsndio.so.6.1 (0x00007f80b9eb4000)
libnghttp2.so.14 => /usr/lib/x86_64-linux-gnu/libnghttp2.so.14 (0x00007f80b9c8f000)
libidn2.so.0 => /usr/lib/x86_64-linux-gnu/libidn2.so.0 (0x00007f80b9a72000)
librtmp.so.1 => /usr/lib/x86_64-linux-gnu/librtmp.so.1 (0x00007f80b9856000)
libpsl.so.5 => /usr/lib/x86_64-linux-gnu/libpsl.so.5 (0x00007f80b9648000)
libgssapi_krb5.so.2 => /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007f80b93fd000)
libldap_r-2.4.so.2 => /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2 (0x00007f80b91ab000)
liblber-2.4.so.2 => /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2 (0x00007f80b8f9d000)
libXrandr.so.2 => /usr/lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007f80b8d92000)
libXinerama.so.1 => /usr/lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007f80b8b8f000)
libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f80b8989000)
libXcursor.so.1 => /usr/lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007f80b877f000)
libpulse-simple.so.0 => /usr/lib/x86_64-linux-gnu/libpulse-simple.so.0 (0x00007f80b857a000)
libjack.so.0 => /usr/lib/x86_64-linux-gnu/libjack.so.0 (0x00007f80b8333000)
libGLX.so.0 => /usr/lib/x86_64-linux-gnu/libGLX.so.0 (0x00007f80b8102000)
libGLdispatch.so.0 => /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x00007f80b7e4c000)
libgdk-3.so.0 => /usr/lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007f80b7b56000)
libpangocairo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007f80b7949000)
libXi.so.6 => /usr/lib/x86_64-linux-gnu/libXi.so.6 (0x00007f80b7739000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f80b7533000)
libcairo-gobject.so.2 => /usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x00007f80b732a000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007f80b7106000)
libatk-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007f80b6ee0000)
libatk-bridge-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 (0x00007f80b6caf000)
libepoxy.so.0 => /usr/lib/x86_64-linux-gnu/libepoxy.so.0 (0x00007f80b69ae000)
libpangoft2-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007f80b6798000)
libpango-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007f80b654b000)
libgio-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007f80b61ac000)
libpixman-1.so.0 => /usr/lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007f80b5f07000)
libxcb-shm.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007f80b5d04000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f80b5adc000)
libxcb-render.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007f80b58cf000)
libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f80b56c5000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f80b54b3000)
libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007f80b52ab000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f80b5039000)
libminizip.so.1 => /usr/lib/x86_64-linux-gnu/libminizip.so.1 (0x00007f80b4e2e000)
libopencv_flann.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_flann.so.3.2 (0x00007f80b4bde000)
libtbb.so.2 => /usr/lib/x86_64-linux-gnu/libtbb.so.2 (0x00007f80b49a2000)
libjxrglue.so.0 => /usr/lib/x86_64-linux-gnu/libjxrglue.so.0 (0x00007f80b4782000)
libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007f80b451a000)
libopenjp2.so.7 => /usr/lib/x86_64-linux-gnu/libopenjp2.so.7 (0x00007f80b42c4000)
libraw.so.16 => /usr/lib/x86_64-linux-gnu/libraw.so.16 (0x00007f80b3ff1000)
libtiff.so.5 => /usr/lib/x86_64-linux-gnu/libtiff.so.5 (0x00007f80b3d7a000)
libwebpmux.so.3 => /usr/lib/x86_64-linux-gnu/libwebpmux.so.3 (0x00007f80b3b70000)
libwebp.so.6 => /usr/lib/x86_64-linux-gnu/libwebp.so.6 (0x00007f80b3907000)
libIlmImf-2_2.so.22 => /usr/lib/x86_64-linux-gnu/libIlmImf-2_2.so.22 (0x00007f80b3444000)
libHalf.so.12 => /usr/lib/x86_64-linux-gnu/libHalf.so.12 (0x00007f80b3201000)
libIex-2_2.so.12 => /usr/lib/x86_64-linux-gnu/libIex-2_2.so.12 (0x00007f80b2fe3000)
libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f80b2dce000)
libunistring.so.2 => /usr/lib/x86_64-linux-gnu/libunistring.so.2 (0x00007f80b2a50000)
libgnutls.so.30 => /usr/lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007f80b26eb000)
libhogweed.so.4 => /usr/lib/x86_64-linux-gnu/libhogweed.so.4 (0x00007f80b24b7000)
libnettle.so.6 => /usr/lib/x86_64-linux-gnu/libnettle.so.6 (0x00007f80b2281000)
libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f80b2000000)
libkrb5.so.3 => /usr/lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007f80b1d2a000)
libk5crypto.so.3 => /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007f80b1af8000)
libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007f80b18f4000)
libkrb5support.so.0 => /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007f80b16e9000)
libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f80b14ce000)
libsasl2.so.2 => /usr/lib/x86_64-linux-gnu/libsasl2.so.2 (0x00007f80b12b3000)
libgssapi.so.3 => /usr/lib/x86_64-linux-gnu/libgssapi.so.3 (0x00007f80b1072000)
libpulse.so.0 => /usr/lib/x86_64-linux-gnu/libpulse.so.0 (0x00007f80b0e22000)
libpulsecommon-11.1.so => /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-11.1.so (0x00007f80b0ba4000)
libXcomposite.so.1 => /usr/lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007f80b09a1000)
libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f80b079e000)
libxkbcommon.so.0 => /usr/lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007f80b055f000)
libwayland-cursor.so.0 => /usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x00007f80b0357000)
libwayland-egl.so.1 => /usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x00007f80b0155000)
libwayland-client.so.0 => /usr/lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007f80aff46000)
libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f80afcf9000)
libatspi.so.0 => /usr/lib/x86_64-linux-gnu/libatspi.so.0 (0x00007f80afac9000)
libharfbuzz.so.0 => /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007f80af82b000)
libthai.so.0 => /usr/lib/x86_64-linux-gnu/libthai.so.0 (0x00007f80af622000)
libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f80af3fa000)
libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007f80af1a6000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f80aefa2000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f80aed9c000)
libjpegxr.so.0 => /usr/lib/x86_64-linux-gnu/libjpegxr.so.0 (0x00007f80aeb68000)
liblcms2.so.2 => /usr/lib/x86_64-linux-gnu/liblcms2.so.2 (0x00007f80ae910000)
libgomp.so.1 => /usr/lib/x86_64-linux-gnu/libgomp.so.1 (0x00007f80ae6e1000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f80ae4bb000)
libjbig.so.0 => /usr/lib/x86_64-linux-gnu/libjbig.so.0 (0x00007f80ae2ad000)
libIlmThread-2_2.so.12 => /usr/lib/x86_64-linux-gnu/libIlmThread-2_2.so.12 (0x00007f80ae0a6000)
libp11-kit.so.0 => /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007f80add77000)
libtasn1.so.6 => /usr/lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007f80adb64000)
libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007f80ad960000)
libheimntlm.so.0 => /usr/lib/x86_64-linux-gnu/libheimntlm.so.0 (0x00007f80ad757000)
libkrb5.so.26 => /usr/lib/x86_64-linux-gnu/libkrb5.so.26 (0x00007f80ad4ca000)
libasn1.so.8 => /usr/lib/x86_64-linux-gnu/libasn1.so.8 (0x00007f80ad228000)
libhcrypto.so.4 => /usr/lib/x86_64-linux-gnu/libhcrypto.so.4 (0x00007f80acff2000)
libroken.so.18 => /usr/lib/x86_64-linux-gnu/libroken.so.18 (0x00007f80acddc000)
libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007f80acb58000)
libwrap.so.0 => /lib/x86_64-linux-gnu/libwrap.so.0 (0x00007f80ac94e000)
libasyncns.so.0 => /usr/lib/x86_64-linux-gnu/libasyncns.so.0 (0x00007f80ac748000)
libgraphite2.so.3 => /usr/lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007f80ac51b000)
libdatrie.so.1 => /usr/lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007f80ac314000)
libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007f80ac0c7000)
libwind.so.0 => /usr/lib/x86_64-linux-gnu/libwind.so.0 (0x00007f80abe9e000)
libheimbase.so.1 => /usr/lib/x86_64-linux-gnu/libheimbase.so.1 (0x00007f80abc8f000)
libhx509.so.5 => /usr/lib/x86_64-linux-gnu/libhx509.so.5 (0x00007f80aba45000)
libsqlite3.so.0 => /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007f80ab73c000)
libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007f80ab504000)
liblz4.so.1 => /usr/lib/x86_64-linux-gnu/liblz4.so.1 (0x00007f80ab2e8000)
libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f80aafcd000)
libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007f80aadb3000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f80aabac000)
libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f80aa997000)

ImGui full integration

  • Menus
  • Windows
  • Canvas nodes
  • Duplicate/Delete object selection
  • Add objects selection group displacement
  • Add sub-patch navigation tree with current patch view switch

Error when updating

I could not update Mosaic I had installed on Ubuntu 18.04 with update_mosaic.sh
I've got this error:
/opt/openFrameworks/addons/ofxWarp/src/ofxWarp/WarpBase.cpp:465:10: warning: ‘index’ may be used uninitialized in this function [-Wmaybe-uninitialized] return index; ^~~~~ make[1]: se sale del directorio '/opt/openFrameworks/apps/d3cod3/Mosaic' /opt/openFrameworks/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:124: recipe for target 'Release' failed make: *** [Release] Error 2 "make -j$NUMPU Release" command failed with exit code 2.

I wanted to try the new projection mapping object.

Regex conflict while compiling

Hello Emanuele / World,
I'm giving trying to compile Mosaic but I'm stuck on a compilation conflict and would like some insight.

  • Mosaic/src/TextEditor.h includes <regex> which loads /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/regex.
  • ofxPython includes /usr/include/python2.7/pyport.h which sets a macro: #define tolower(c)... that overrules the regex's tolower function-like macro.
  • Compilation throws an error : too many arguments provided to function-like macro invocation __ct_->tolower(&__s[0], &__s[0] + __s.size());.

I guess this is some kind of conflict between python 2.7 and libc++::regex.
Before digging further, I'm wondering how you don't get this error (if so). Might this be related to Apple's libc++ implementation ?

Do you have any clue about this ?

My configuration : Mosaic master (0.3.2) + OF 0.11.0 (release) + QT Creator 4.6.1 + Osx 12.12
My Qt Desktop kit is configured to compile with Apple Clang++ (within XCode); using /usr/bin/clang++ throws lots of errors anyways, nor does it compile OF.
I'm able to compile other OF projects using this same configuration.

Edit: I'm using Xcode 8.1 which holds libc++ ; I'll try to update that and report back.

unable to load saved patch

Got error while open saved patch on linux ubuntu Studio 20.04 :

[pdsp] engine: closing...
[pdsp] engine: audio streams closed and resources released
Instance is already registered with name = time
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check: __n (which is 3) >= this->size() (which is 3)
Aborted (core dumped)

Best Regards
spezi

Addon dependency tool

#34 integrates a beta version for a dependency checker.
Only tested on osx 10.12 so far. Feedback is appreciated.

I'd like to extend it at least with the following functionality.

  • Test multi-platform
  • Parse addon dependencies (parsing addons/ofxXyzAddon/addons.make)
  • Add option to install (clone)
  • Add option to update repos and their submodules (clone)
  • Add option to sync addons.txt with addons.make for easier dependency maintenance.

What about creating a Mosaic/utilities/addonTool/check_addons.sh folder to host this script ?
I could also create a new repo for it (useful for other OF projects) and make it a Mosaic submodule.

Any other ideas ?

Cant find compiled binary on arch linux.

Hello,
this project looks superbly attractive, i successfully compiled the .qbs with qtcreator however I dont see the mosaic binary to open, the only one available in bin folder when i run it i get this error on my arch system

./Mosaic.desktop: line 1: [Desktop: command not found
./Mosaic.desktop: line 9: Programming: command not found
./Mosaic.desktop: line 10: openFrameworks: command not found

Pardon me if its a silly question

Can't add any objects

I was pointed to this project on ARS Electronica. I know this project is still in alpha but is there any way I can try some stuff already. I've compiled Mosaic on Debian and it is running. I can open examples (like videocrop) but I can't add any objects. Any pointers would be appreciated!

Timed vs Transformer objects

Right now every object is a "timed object" synced with internal (not OF) fps, the idea is to add an alternative model that update instantly (next available cycle) only when data content change, a "transformer object"

Slack Community Invite Link

Hello and good evening!

This is one of the best projects I've seen in the last couple of years for AV live performance. I want to be part of the community and if possible contribute, but can't manage to get an invite link to the slack workspace. The one on the README is the right one?

Thanks in advance

Ubuntu compile issues

I ran into tonnes of issues while making/running myApps/Mosaic. My fixes are below. It got me to a running binary. No idea how stable it is.

OFx: of_v0.11.2_linux64gcc6_release
Ubuntu: 20.04

Issue
When linking you get the error: execvp: /bin/sh: Argument list too long
Description
Posix sh command length at compile time is too short for make. Literally the paths in the command are too long. Keep them as short as possible
Immediate hack
mv very long path to/of_v0.11.2_linux64gcc6_release ~/of
rerun the OFx compile script
Solution
Use distributed make files for each addon instead of adding EVERYTHING to the final link.

Issue
ofxHapPlayer can't find dispatch.h
Solution (should be documented on main README.md)
sudo apt-get install libsnappy-dev libswresample-dev libavcodec-dev libavformat-dev libdispatch-dev

Issue
ofxAudioAnalyzer does not include linux fftw lib.
Hack
mkdir fftw
cd fftw
wget https://www.fftw.org/fftw-3.3.10.tar.gz
tar -xf ff*
cd fftw-3.3.10/
./configure --prefix /tmp/FFT/ --enable-float
make
mkdir ~/of/addons/ofxAudioAnalyzer/libs/fftw3f/lib/linux64
cp .libs/libfftw3f.a ~/of/addons/ofxAudioAnalyzer/libs/fftw3f/lib/linux64
Solution
Linux libs should be included

Issue
make run returns
./Mosaic: error while loading shared libraries: libndi.so.3: cannot open shared object file: No such file or directory
Hack
Before running from command line:
export LD_LIBRARY_PATH=~/of/addons/ofxNDI/libs/libndi/lib/x86_64-linux-gnu
then:
make run
Solution
Fix makefile

Hope it helps!

Mosaic Windows release crashing on open.

The Mosaic windows application crashes immediately after opening. I am running an MSI GL65 Leopard with an Intel i7-10750H 5-core CPU and a Windows 10 version 1909 build number 18363.1198.

Refactor pins

Is refactoring pins a good idea ?
Create a Pin class that binds to data, either manually or automatically (trough ofxVPParameter #22 ).
The current pins code is redundant and could break easily :
numInlets = ...; &_inletParams[...] = ...; initInletsState(); this->addInlet(TYPE,"Label");

It could provide :

  • Pin.Direction (in/out)
  • Pin.Position (GUI only)
  • Pin.Label
  • Pin.Data->type()
  • Pin.Data->visualise() , for visualising data on wire hover, on pin drag.
  • Pin.isConnected
  • Pin.ConnectedPins (outlets) Pin.ConnectedPin (inlets)
  • Pin.Value (needed ? if so, pass raw data or ofxVpBaseParam* ? )
  • Pin.accepts(TYPE)
  • Pin.ID
  • Pin.objectID
  • etc.

This would also lead to a PinContainer class. Ex: Object->leftPinsContainer[0].getLabel()

Right now, connections point to direct, raw data, once connected.
It would be better to point them to Pin data, so objects can use if(myPins[0]->isConnected() && myPins[0]->changed()) updatePinData(). ?

Nodes design

  • pins positions/labels
  • menus/tabs
  • texts crops
  • colors

compilation of 0.1.9 failing

Hi there,
I am trying to compile Mosaic on a Fedora 30 Linux.
I don't know a lot about the c++ build toolchain, so I'm quite lost here. Hopefully someone here knows where to look for the root cuase of this error.
The build script exits with:

Compiling Mosaic for Release
make[1]: Entering directory '/opt/openFrameworks/apps/d3cod3/Mosaic'
make[1]: *** No rule to make target '/opt/openFrameworks/addons/obj/linux64/Release/ofxFaceTracker/./src/SplashScreen.o', needed by 'bin/Mosaic'.  Stop.
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/opt/openFrameworks/apps/d3cod3/Mosaic'
make: *** [/opt/openFrameworks/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:129: Release] Error 2
++ last_command='make -j$NUMPU Release'
++ current_command='make -j$NUMPU Release'
+ echo '"make -j$NUMPU Release" command failed with exit code 2.'
"make -j$NUMPU Release" command failed with exit code 2.

Let me know if I should provide any logs or other info and where to find them.

Tracy Profiler Integration

Opening a new issue for the Tracy integration, continuing the off-topic discussion from #22 .

So the idea is to integrate Tracy to facilitate debugging, with a focus on :

  • Data flow and order-of execution (plotting values, monitor execution times, mutex locks, etc,) frame by frame.
  • Memory usage (allocations, memory map, garbage collector, etc.)
  • GPU profiling on Linux + Windows.

Here's a screenshot from the 0.7.2 manual showing platform-specific features :
image


  • 0. Define where and how how to integrate it.
    I think it's important to keep Tracy as an optional build config : not everybody will need it, and as is seems to need recent system software to be able to inspect. What about a 3rd build option : Debug, DebugTracy, Release ?
    Later on, (special) release builds could also include it with a menu option to enable it, allowing remote debugging.

  • 1. Integrate the Tracy client into Mosaic/ofxVP. Easy : add submodule, include 1 file and set compile flag to enable.
    I have tested this with the Mosaic-Engine-Tester on a local branch. There seem to be some compile flags to set for better results (name stripping...). Also, they recommend not to run a client with a "debug config" regarding the associated compilation optimization flags.
    This makes Tracy send real-time Mosaic debug info over a network socket. (local by default)

  • 2. Compile the Tracy Profiler which allows to view & inspect the data.
    This seems as the easiest way to get started, there are more possibilities such as recording data for non-real-time debugging, and on-demand remote debugging.
    To build, you need to have a recent C++17 compiler. OSX 10.12.6 seems not possible. Maybe 10.13 with a more recent toolchain. I tried on a relatively old Linux Mint 16, with GCC 6.1, which should support C++17 but not with the needed extra features that Tracy uses. (Didn't try available workarounds yet.) So it looks like the Profiler needs a recent OS to be plug-and-play, compared to general OF/Mosaic capable setups.

  • 3. Fine-tune Tracy to our specific needs. Playing around with it will tell us. Probably some macros to add to get the best results, plus the optional-recommended macros to implement.

  • 4. Document usage.

Instant crash on launch

macOS Monterey 12.3.1 Macbook Air m1

Did as the suggested install. Crashes instantly on launch Got this crash report:

It mentions missing the python2.7 libs, are they not included?


Translated Report (Full Report Below)

Process: Mosaic [14046]
Path: /Applications/Mosaic.app/Contents/MacOS/Mosaic
Identifier: org.example.Mosaic
Version: 1.0 (1.0.0)
Code Type: X86-64 (Translated)
Parent Process: launchd [1]
User ID: 501

Date/Time: 2022-04-09 17:27:50.9539 +0200
OS Version: macOS 12.3.1 (21E258)
Report Version: 12
Anonymous UUID: 499C54A1-8402-64EB-15B2-98B227B0892B

Sleep/Wake UUID: D72FA654-D6C3-4397-98CD-0FD34EE055F4

Time Awake Since Boot: 130000 seconds
Time Since Wake: 5051 seconds

System Integrity Protection: enabled

Crashed Thread: 0

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: Namespace DYLD, Code 1 Library missing
Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.7/Python
Referenced from: /Applications/Mosaic.app/Contents/MacOS/Mosaic
Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file), '/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file)
(terminated at launch; ignore backtrace)

Application Specific Information:
Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.7/Python
Referenced from: /Applications/Mosaic.app/Contents/MacOS/Mosaic
Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file), '/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file)

Kernel Triage:
VM - pmap_enter failed with resource shortage
VM - pmap_enter failed with resource shortage
VM - pmap_enter failed with resource shortage

Thread 0 Crashed:
0 Rosetta Runtime Routines 0x107332940 ???
1 0x10738718c ???
2 dyld 0x203d7c212 abort_with_payload_wrapper_internal + 80
3 dyld 0x203d7c244 abort_with_payload + 9
4 dyld 0x203d2a76f dyld4::halt(char const*) + 375
5 dyld 0x203d265a5 dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 3995
6 dyld 0x203d254d4 start + 388

Thread 1:: com.apple.rosetta.exceptionserver
0 runtime 0x7ff7ffdde9a4 0x7ff7ffdda000 + 18852
1 runtime 0x7ff7ffdec738 0x7ff7ffdda000 + 75576
2 runtime 0x7ff7ffdeded0 0x7ff7ffdda000 + 81616

Thread 0 crashed with ARM Thread State (64-bit):
x0: 0x0000000000000006 x1: 0x0000000000000001 x2: 0x00000003081f4a90 x3: 0x0000000000000083
x4: 0x00000003081f4690 x5: 0x0000000000000000 x6: 0x2a0501082a041508 x7: 0x0000002052baa309
x8: 0x00000003081f4690 x9: 0x0000000000000000 x10: 0x0000000000000083 x11: 0x00000003081f4690
x12: 0x0000000000000083 x13: 0x00000003081f4a90 x14: 0x0000000000000001 x15: 0x0000000000000006
x16: 0x0000000000000209 x17: 0x0000000000000000 x18: 0x800000010f39bb70 x19: 0x0000000107328000
x20: 0x00000000000007ff x21: 0x000000010f3a0fa0 x22: 0xffffffffffffffff x23: 0x0000000107332914
x24: 0x0000000203d7c212 x25: 0x00000001073321f4 x26: 0x00000001073859b0 x27: 0x0000000000000000
x28: 0x0000000203d660de fp: 0x000000002c000000 lr: 0x000000010738718c
sp: 0x000000010f39bb70 pc: 0x0000000107332940 cpsr: 0x80001000
far: 0x0000000107387000 esr: 0x56000080 Address size fault

Binary Images:
0x0 - 0xffffffffffffffff ??? () <00000000-0000-0000-0000-000000000000> ???
0x203d20000 - 0x203d8bfff dyld (
) /usr/lib/dyld
0x7ff7ffdda000 - 0x7ff7ffe09fff runtime (*) <24497be3-a1b4-360a-b90e-cde9ce78a93b> /usr/libexec/rosetta/runtime

External Modification Summary:
Calls made by other processes targeting this process:
task_for_pid: 0
thread_create: 0
thread_set_state: 0
Calls made by this process:
task_for_pid: 0
thread_create: 0
thread_set_state: 0
Calls made by all processes on this machine:
task_for_pid: 0
thread_create: 0
thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=57.3M resident=0K(0%) swapped_out_or_unallocated=57.3M(100%)
Writable regions: Total=160.7M written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=160.7M(100%)

                            VIRTUAL   REGION 

REGION TYPE SIZE COUNT (non-coalesced)
=========== ======= =======
Rosetta Arena 4096K 2
Rosetta Generic 784K 193
Rosetta IndirectBranch 32K 1
Rosetta JIT 128.0M 1
Rosetta Return Stack 20K 2
Rosetta Thread Context 20K 2
Stack 8176K 1
Stack Guard 56.0M 1
VM_ALLOCATE 13.3M 5
VM_ALLOCATE (reserved) 124K 9 reserved VM address space (unallocated)
__DATA 8504K 19
__DATA_CONST 80K 1
__LINKEDIT 11.5M 15
__TEXT 45.9M 12
dyld private memory 1024K 1
mapped file 6.1G 52
=========== ======= =======
TOTAL 6.4G 317
TOTAL, minus reserved VM space 6.4G 317


Full Report

{"app_name":"Mosaic","timestamp":"2022-04-09 17:27:51.00 +0200","app_version":"1.0","slice_uuid":"e793eaef-9778-3b27-97cd-c7b330fb61cf","build_version":"1.0.0","platform":1,"bundleID":"org.example.Mosaic","share_with_app_devs":0,"is_first_party":0,"bug_type":"309","os_version":"macOS 12.3.1 (21E258)","incident_id":"884A0748-522C-4BF6-9088-8D7E007B5215","name":"Mosaic"}
{
"uptime" : 130000,
"procLaunch" : "2022-04-09 17:27:50.7102 +0200",
"procRole" : "Default",
"version" : 2,
"userID" : 501,
"deployVersion" : 210,
"modelCode" : "MacBookAir10,1",
"procStartAbsTime" : 3337026549396,
"coalitionID" : 25944,
"osVersion" : {
"train" : "macOS 12.3.1",
"build" : "21E258",
"releaseType" : "User"
},
"captureTime" : "2022-04-09 17:27:50.9539 +0200",
"incident" : "884A0748-522C-4BF6-9088-8D7E007B5215",
"bug_type" : "309",
"pid" : 14046,
"procExitAbsTime" : 3337028007065,
"translated" : true,
"cpuType" : "X86-64",
"procName" : "Mosaic",
"procPath" : "/Applications/Mosaic.app/Contents/MacOS/Mosaic",
"bundleInfo" : {"CFBundleShortVersionString":"1.0","CFBundleVersion":"1.0.0","CFBundleIdentifier":"org.example.Mosaic"},
"storeInfo" : {"deviceIdentifierForVendor":"94EBC253-CAD5-53F9-BD03-1C9D4572DC19","thirdParty":true},
"parentProc" : "launchd",
"parentPid" : 1,
"coalitionName" : "org.example.Mosaic",
"crashReporterKey" : "499C54A1-8402-64EB-15B2-98B227B0892B",
"wakeTime" : 5051,
"sleepWakeUUID" : "D72FA654-D6C3-4397-98CD-0FD34EE055F4",
"sip" : "enabled",
"isCorpse" : 1,
"exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGABRT"},
"termination" : {"code":1,"flags":518,"namespace":"DYLD","indicator":"Library missing","details":["(terminated at launch; ignore backtrace)"],"reasons":["Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.7/Python","Referenced from: /Applications/Mosaic.app/Contents/MacOS/Mosaic","Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file), '/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file)"]},
"ktriageinfo" : "VM - pmap_enter failed with resource shortage\nVM - pmap_enter failed with resource shortage\nVM - pmap_enter failed with resource shortage\n",
"asi" : {"dyld":["Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.7/Python","Referenced from: /Applications/Mosaic.app/Contents/MacOS/Mosaic","Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file), '/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file)"]},
"extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
"faultingThread" : 0,
"threads" : [{"triggered":true,"id":1722072,"threadState":{"x":[{"value":6},{"value":1},{"value":13021170320},{"value":131},{"value":13021169296},{"value":0},{"value":3027827459052803336},{"value":138826916617},{"value":13021169296},{"value":0},{"value":131},{"value":13021169296},{"value":131},{"value":13021170320},{"value":1},{"value":6},{"value":521},{"value":0},{"value":9223372041405184880},{"value":4415717376},{"value":2047},{"value":4550430624},{"value":18446744073709551615},{"value":4415760660},{"value":8654406162,"symbolLocation":80,"symbol":"abort_with_payload_wrapper_internal"},{"value":4415758836},{"value":4416100784},{"value":0},{"value":8654315742,"symbolLocation":10,"symbol":"__abort_with_payload"}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4416106892},"cpsr":{"value":2147487744},"fp":{"value":738197504},"sp":{"value":4550409072},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":4415760704,"matchesCrashFrame":1},"far":{"value":4416106496}},"frames":[{"imageOffset":4415760704,"region":"Rosetta Runtime Routines","symbolLocation":10560,"imageIndex":0},{"imageOffset":4416106892,"region":"","imageIndex":0},{"imageOffset":377362,"symbol":"abort_with_payload_wrapper_internal","symbolLocation":80,"imageIndex":1},{"imageOffset":377412,"symbol":"abort_with_payload","symbolLocation":9,"imageIndex":1},{"imageOffset":42863,"symbol":"dyld4::halt(char const*)","symbolLocation":375,"imageIndex":1},{"imageOffset":26021,"symbol":"dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*)","symbolLocation":3995,"imageIndex":1},{"imageOffset":21716,"symbol":"start","symbolLocation":388,"imageIndex":1}]},{"id":1722092,"name":"com.apple.rosetta.exceptionserver","frames":[{"imageOffset":18852,"imageIndex":2},{"imageOffset":75576,"imageIndex":2},{"imageOffset":81616,"imageIndex":2}]}],
"usedImages" : [
{
"size" : 0,
"source" : "A",
"base" : 0,
"uuid" : "00000000-0000-0000-0000-000000000000"
},
{
"source" : "P",
"arch" : "x86_64",
"base" : 8654028800,
"size" : 442368,
"uuid" : "dd9e80de-fb3b-349b-96a4-46874ad34d11",
"path" : "/usr/lib/dyld",
"name" : "dyld"
},
{
"source" : "P",
"arch" : "arm64",
"base" : 140703126364160,
"size" : 196608,
"uuid" : "24497be3-a1b4-360a-b90e-cde9ce78a93b",
"path" : "/usr/libexec/rosetta/runtime",
"name" : "runtime"
}
],
"sharedCache" : {
"base" : 140703454347264,
"size" : 15226814464,
"uuid" : "a1c5d735-ceb0-350d-9729-bb0e9be86d75"
},
"vmSummary" : "ReadOnly portion of Libraries: Total=57.3M resident=0K(0%) swapped_out_or_unallocated=57.3M(100%)\nWritable regions: Total=160.7M written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=160.7M(100%)\n\n VIRTUAL REGION \nREGION TYPE SIZE COUNT (non-coalesced) \n=========== ======= ======= \nRosetta Arena 4096K 2 \nRosetta Generic 784K 193 \nRosetta IndirectBranch 32K 1 \nRosetta JIT 128.0M 1 \nRosetta Return Stack 20K 2 \nRosetta Thread Context 20K 2 \nStack 8176K 1 \nStack Guard 56.0M 1 \nVM_ALLOCATE 13.3M 5 \nVM_ALLOCATE (reserved) 124K 9 reserved VM address space (unallocated)\n__DATA 8504K 19 \n__DATA_CONST 80K 1 \n__LINKEDIT 11.5M 15 \n__TEXT 45.9M 12 \ndyld private memory 1024K 1 \nmapped file 6.1G 52 \n=========== ======= ======= \nTOTAL 6.4G 317 \nTOTAL, minus reserved VM space 6.4G 317 \n",
"legacyInfo" : {
"threadTriggered" : {

}
},
"trialInfo" : {
"rollouts" : [
{
"rolloutId" : "60356660bbe37970735c5624",
"factorPackIds" : {

  },
  "deploymentId" : 240000027
},
{
  "rolloutId" : "5ffde50ce2aacd000d47a95f",
  "factorPackIds" : {

  },
  "deploymentId" : 240000132
}

],
"experiments" : [

]
}
}

Model: MacBookAir10,1, BootROM 7459.101.3, proc 8:4:4 processors, 8 GB, SMC
Graphics: Apple M1, Apple M1, Built-In
Display: Color LCD, 2560 x 1600 Retina, Main, MirrorOff, Online
Display: Acer T272HUL, 2560 x 1440 (QHD/WQHD - Wide Quad High Definition), MirrorOff, Online
Memory Module: LPDDR4
AirPort: Wi-Fi, wl0: Feb 8 2022 01:44:45 version 18.60.21.0.7.8.126 FWID 01-1cdae627
Bluetooth: Version (null), 0 services, 0 devices, 0 incoming serial ports
Network Service: USB 10/100/1000 LAN, Ethernet, en5
Network Service: Wi-Fi, AirPort, en0
USB Device: USB31Bus
USB Device: USB31Bus
USB Device: USB3.0 Hub
USB Device: USB2.0 Hub
USB Device: USB 2.0 BILLBOARD
Thunderbolt Bus: MacBook Air, Apple Inc.
Thunderbolt Bus: MacBook Air, Apple Inc.
`

Older GPUs and OpenGL 4.1

Hey,
I use an old IntelHD3000 on my old Linux computer; which supports up to OpenGL 3.3
Mosaic is set to use 4.1 now, which is not natively supported on my GPU.

settings.setGLVersion(4,1);

It could be nice to support OpenGL3 for older mobos, no ?
Is this a question of changing the version number above, or are there other related changes to expect (shaders...) ?

I get this runtime error:

make RunDebug
[ error ] ofAppGLFWWindow: 65543: GLX: Failed to create context: GLXBadFBConfig
[ error ] ofAppGLFWWindow: couldn't create GLFW window

I tried launching Mosaic with software GPU emulation using mesa : (fails compiling the shaders, but launches)

cd ./bin
MESA_GL_VERSION_OVERRIDE=4.1 MESA_GLSL_VERSION_OVERRIDE=150 ./Mosaic 

Inspector

It would be nice to have an inspector that shows information about the selected node(s), or the patch -file info when you select the background.

Creating the issue to start thinking about this.

Data folder path wrong on osx 10.12 ?

After updating Mosaic from master, ofApp::initDataFolderFromBundle() tries to replace the data folder (~/Documents/Mosaic/data) with a brand new corresponding to the release folder.
On my setup, the automatic copy command fails.
Manually copying MosaicRepo/bin/data to ~/Documents/Mosaic/data works, but I'd like the automatic alternative to work.

Here's my diagnostic :

  • dataDir.copyTo(mosaicPath,true,true);

    Here, dataDir = MosaicRepo/bin/Mosaic_debug.app/Contents/Resources/ and mosaicPath = ~/Documents/Mosaic/data.
    dataDir doesn't exist which causes the copy command to do nothing.
  • if(relFile.exists()){

    Later, this condition keeps being false, as the relFile (~/Documents/Mosaic/data/release.txt) doesn't exist (the data folder is empty); causing the data folder never to be created.
  • Mosaic crashes later as the data folder is empty but required.

Shouldn't dataDir hold something like MosaicRepo/bin/Mosaic_debug.app/Contents/Resources/../../../data ?
Or should the Resources folder exist ?

I'd also like to implement a datafolder-available-check to prevent Mosaic from running (=crashing later) within initDataFolderFromBundle(). Good idea ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.