Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Binaries don't seem to work in MacOS #5

Closed
gpvillamil opened this issue Dec 2, 2019 · 39 comments
Closed

Binaries don't seem to work in MacOS #5

gpvillamil opened this issue Dec 2, 2019 · 39 comments

Comments

@gpvillamil
Copy link

I've pointed my new install of Resolume 7 to the same folder of FFGL plugins that I used for Resolume 6, and the plugins don't appear.

This is MacOS Mojave 10.14.6 and Resolume 7.05

Perhaps needs to be updated to latest version of FFGL?

@DanielArnett
Copy link
Owner

@jorisdejong what did you do to update the Windows binaries other than change to VS2019? Is there a new version of FFGL we need to update to?

@jorisdejong
Copy link
Contributor

jorisdejong commented Dec 2, 2019 via email

@DanielArnett
Copy link
Owner

TL;DR someone just needs to pull my latest commit and rebuild the OSX binaries.

It looks like Resolume updated to FFGL2.1 and any version of Resolume 7.0.3 or greater will need FFGL2.1. I updated the FFGL submodule, so now we just need to
pull my latest commmit and build it. Unfortunately I can't at the moment (need to ssh into a remote machine that's turned off), so if anyone else gets to it before I can then send me a message.

@jamesBenja
Copy link

Hey @DanielArnett !
I'm having the same issue listed above with resolume 7 and the plugins not appearing in the effects folder.
Has this issue been sorted out? Is there an alternate download I can use that will work?
Thanks!

@giittyy
Copy link

giittyy commented Oct 14, 2020

Same issue. How would I build it?

@DanielArnett
Copy link
Owner

Unfortunately I don't have access to a Mac anymore, which is why these don't work.

The first step would be to get the AddSubtract example building from Resolume
https://github.com/resolume/ffgl

Then slowly move my code into that project, first by changing the inputs and then eventually by copying the shader itself.

@onemoabyte
Copy link

onemoabyte commented Mar 25, 2021

are you able to install the macOS on your PC as a hackintosh? I'd love to get these working on Mac again. I'm not a programmer by trade, but I know enough to maybe get it working if I am guided. I do have an apple developer account and xcode.

@xinaesthete
Copy link
Contributor

I'm thinking of having a go at getting this working. Actually I'm making a start now, but I should really stop distracting myself and get back to more urgent things soon...

If I manage to make some progress, I'll try to remember to post here.

@xinaesthete
Copy link
Contributor

Small update: had some initial trouble getting example ffgl plugin to work, but have now managed resolume/ffgl#89

@xinaesthete
Copy link
Contributor

xinaesthete commented Jan 31, 2023

@onemoabyte
More significant update: I have built a working (on my machine™️) version of EquiRotation. 🎉

I might arrange things a bit differently if I continue to work on this, but for now I've added a bundle of that to an ffgl fork: https://github.com/xinaesthete/ffgl-360/releases/tag/0.1

I don't work all that much with C++, did need a couple of minor alterations to get EquiRotation working - I changed sprintf_s to sprintf, CFreeFrameGLPlugin to CFFGLPlugin (as per ffgl 2.2). I think that was about it. I haven't really looked at the resulting visuals much - it did some plausibly wacky distortion on the non-equirectangular clip I tested it on, so I assume it's doing the right thing.

@xinaesthete
Copy link
Contributor

I built the rest of the plugins https://github.com/xinaesthete/ffgl-360/releases/tag/0.2

Not tested at all yet. Entirely possible I made some mistake somewhere down the line and ended up with two copies of one with a different name or something, but hopefully should all be ok. LMK.

@DanielArnett
Copy link
Owner

Fantastic, thanks! I'll try them out sometime and get back to you.

@xinaesthete
Copy link
Contributor

Great, nice to have a response.

I was thinking that there was an issue with the EquiRotation and seams along the edge of the image, but it seems that the problem was me not having the right 'maximise video' setting.

While I'm here, it seems there's no "360 To Flat" projection (possible via 360 To Fisheye -> Fisheye To Flat, so not a particular problem), is that right?

@DanielArnett
Copy link
Owner

I can get that working if you want. I wrote the math to go between all of the common projections (equirectangular, rectilinear, fisheye, cubemap, EquiAngularCubemap) to any other projection. If we had dropdown boxes we could just put all of this functionality into one plugin. This page of mine shows it working.

@xinaesthete
Copy link
Contributor

p.s. I notice the built-in Resolume PolarKaleido effect in the equirectangular domain can do tiny-planet and some other related stuff I'd been vaguely meaning to play with a while ago.

@xinaesthete
Copy link
Contributor

xinaesthete commented Jan 31, 2023

I can get that working if you want. I wrote the math to go between all of the common projections (equirectangular, rectilinear, fisheye, cubemap, EquiAngularCubemap) to any other projection. If we had dropdown boxes we could just put all of this functionality into one plugin. This page of mine shows it working.

Interesting, I'll be having a bit of a read through the source of that as well. It seems like it'd make sense to do it that way, not essential. It's fun having the separate stages for playing with stuff like PolarKaleido, but it wouldn't take away the ability to do any of that doing what you describe.

I'll definitely be having more of a read through your source for that site, interesting as a bit of a reference.

@xinaesthete
Copy link
Contributor

I should probably try to merge my changes back into your repo and make a PR?

@xinaesthete
Copy link
Contributor

Actually, it seem like depending on the composition resolution, there can be issues with loss of resolution as it goes through reprojection, and there'll be some overhead in having multiple instances (especially at higher resolutions) so there could be good reasons for being able to do as much of the maths in one pass as possible.

@DanielArnett
Copy link
Owner

DanielArnett commented Jan 31, 2023 via email

@xinaesthete
Copy link
Contributor

Slight problem when I try to clone with submodules

Submodule 'ffgl' (https://github.com/resolume/ffgl.git) registered for path 'ffgl/ffgl'
Submodule 'ffgl/ffgl1.5' (https://github.com/resolume/ffgl.git) registered for path 'ffgl/ffgl1.5'
Cloning into '/Users/petertodd/code/360-VJ/ffgl/ffgl'...
fatal: /Users/petertodd/code/360-VJ/.git/modules/ffgl already exists

To get the build working before, I ignored that and did as you suggested above: worked against a fork of ffgl, copied your code into there and did the various bits of xcode configuration and minor code edits needed.

I imagine the way it should be is something like a build/mac folder with .xcodeproj &co, with relative paths to ../../../ffgl equivalent to the VS config.

Once that is working, if we want to still be able to build against older versions of ffgl, I don't know if the change CFreeFrameGLPlugin -> CFFGLPlugin will cause any issues? For ref, this commit in resolume/ffgl. I assume it'd mean that you'd need to make that change on Windows as well.

In fact, what I might do next is try cloning the project on a Windows machine. If I don't have trouble with submodules, I can verify that the build breaks because of CFreeFrameGLPlugin not existing, and make a first PR just with that change to CFFGLPlugin.

I suppose if necessary we could have a #define for that depending on the ffgl version to build against, but I'm not strongly motivated to configure that and wouldn't have a way of testing it I don't think. I suppose anyone using older versions of Resolume or whatever would still be able to make do with the existing releases anyway.

@xinaesthete xinaesthete mentioned this issue Feb 1, 2023
@philipkrueger
Copy link

Thank you so much!! Equi rotation isn't seamless yet but all in all great work!!

@DanielArnett
Copy link
Owner

What do you mean not seamless? I've seen edges in how it wraps and removed them before. Can you post a screenshot?

@philipkrueger
Copy link

Bildschirm­foto 2023-02-08 um 19 50 53

@DanielArnett
Copy link
Owner

DanielArnett commented Feb 8, 2023 via email

@philipkrueger
Copy link

I found other minor bugs:
Flat to 360: It seems that pixel colors from the border of the input image tint the surrounding of the output. I could solve it by adding a tiny vignette on the input but I think it should be just transparent in general.
Bildschirm­foto 2023-02-08 um 20 00 24
360 to Fisheye: The output is stretched, not centred and some pixels on the top are cut
Bildschirm­foto 2023-02-08 um 20 03 15
I'm on Arena 7.13.1, M1 Max 64, macOS 13.0

@DanielArnett
Copy link
Owner

DanielArnett commented Feb 9, 2023 via email

@xinaesthete
Copy link
Contributor

Bildschirm­foto 2023-02-08 um 19 50 53

I really don't know Resolume at all well, but in my experience pressing the 'maximise video' button a few times seems to cycle through a few different modes, and in my case I didn't encounter a situation where I couldn't get a seamless result.

image

@DanielArnett
Copy link
Owner

DanielArnett commented Feb 11, 2023 via email

@xinaesthete
Copy link
Contributor

My double-negative probably obscured the clarity of my last message - I'd noticed this earlier and was going to mention it, but I found that the problem seems to go away after clicking that button a couple of times (such that it is stretching to the extents of the frame before being fed to the equi-rotation, I think).

@DanielArnett
Copy link
Owner

Good to know.

Update from me: I got the plugins building again. I'm just basing this as tightly off of the ffgl example as possible, because Resolume is just going to keep breaking my plugins like they have a few times in the last 5 years.

I added some dropdown boxes so I can change input/output projections. This new effect will be able to convert between any pair of projections in the list [ Equirectangular, fisheye, flat (rectilinear), cubemap ]. I can add others pretty easily if anyone can point me to the math.

I'll keep chipping away at this and we should be able to get those other bugs fixed up as well.
image
image

@DanielArnett
Copy link
Owner

Okay everyone, this new version is looking smooth and bug free. The math is laid out much better and the shader is packed into its own file. I have the updates on main if you want to check them out. To keep the diffs small everything is packed into the AddSubtract example project from Resolume, so next time they break my code the diff will be relatively small and easy to spot.

If someone can build this version for Mac we can close this ticket and enjoy a clean new effect. Thanks for your interest in this project.

@xinaesthete
Copy link
Contributor

@DanielArnett
Copy link
Owner

@philipkrueger could you please try the new Reprojection shader and let us know how it works for you?
Reprojection.zip

Thank you again for all your help @xinaesthete !

@xinaesthete
Copy link
Contributor

My pleasure @DanielArnett.

One last thing I might do before I forget is update the readme; it's still a bit non-obvious the steps currently needed to do the archive and get the bundle file out.

@philipkrueger
Copy link

Great work! It's much better to have it all as one plugin. Reminds me to the Projection Top in Touchdesigner :)
I had to rename the file in Reprojection.bundle/MacOS from AddSubstract to Reprojection to get it listed in Arena and the seam on the backside still exists. The composition is in the same size as the test footage so it's not caused by wrong scaling.

@philipkrueger
Copy link

Here is the renamed file:
Reprojection.bundle.zip
And the seam on the backside:
Bildschirm­foto 2023-02-16 um 09 56 28

@philipkrueger
Copy link

...and if I convert to Fisheye the tip is cut off:
Bildschirm­foto 2023-02-16 um 09 58 44

@philipkrueger
Copy link

...and if I convert to Flat the view is slightly rotated by default:
Bildschirm­foto 2023-02-16 um 10 11 37

@DanielArnett
Copy link
Owner

Awesome, thanks. Separating this into it's own issue so folks don't get spammed.
#10

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants