Is it time to quit oF?

@s_e_p just to add to this, and in combination with some of your other posts. It is great to get consumer gear working on OF (video grabber issues). I want to make one comment, forgive me if it feels rude. It seems you are looking for professional grade results accross your projects which is of course a shared goal for many. I would definately take a look at professional grade systems and projects and look at some of the resources that are utilised to achieve these results.

Since a long time ago, when I need reliable video capture I use a capture card and camera, this is infinetly more flexible than a webcam and offers distance from the machine (use SDI capture and cameras), hardware fixed camera settings and reliable frame grabbers and is used on any mid to high level project. Take a look at the blackmagic hardware - I havve been using it for years its cheap and reliable. These systems are also less resource hungry and better quality as they dont need to compress the signal on board before sednding (which requires decompression).

This is just the tip of the iceberg - when performing the kind of video delay/instant replay system you seem to be developing professional setup use hardware to do this. Computer hardware is another level too, I have used Disguse a lot for large scale mission critical projects and the computers with a software license are overspeced and upwards of $100k. When I build my own machines I also go overboard - threadrippers with large GPU’s to reliably eat through projects and stay cool. OF lets you do amazing things fast and easily and any issue you solve is transferable knowledge you can use later. Definately take a look at what other projects are using resource wise (human and tech) and compare the results you expect with your project.

Making something that works OK on TD can also end up needing huge resources once you plug in your projectors and soundcards and get things to scale, and I have seen big projects using comino hardware to run TD projects because computation is computation and its not cheap.

I understand the friction you are experience in using OF, but it is definately worth thinking about projects as a whole and all the resources they need and flexibilty they require when you evaluate this stuff.

4 Likes

To add to the great replies, i’d like to add 2 things:

  1. I feel like you are also missing an other point of OF:
    you can use it on a lot of platforms: Raspberry Pis (3/4/0), and on the jetson family, as well as on mobiles. you don’t have this interoperabilty with Unity or TD.
    This makes it immensly more powerful to use on medium size installations where technical requirements/budget/physical space are tight.
    It also enables you to check a certain behaviour on a desktop, compile the code for an other platform and have it run there.

  2. you seem to not grasp how complex it is to use FFmpeg correctly: ofxFFmpegRecorder is great, but only scratches the surface of what you can do with the command line in FFmpeg, and this is a vaste subject-just look at the github repo for FFmpeg, or the quantity of blog post about transcoding, streaming etc…-.
    Using tools this complex within OF is a amazing, and having people to write open source code for you is great, but you can’t take them accountable for miss use of the library.
    Also you shouldn’t underestimate how much more you can do if you put your mind to it, as the whole community is letterally here to help you, and genrally super helpful when a specific question is asked :).

4 Likes

Is it time to quit oF?

absolutely not :slight_smile:

Reading the posts before, i don’t think there is more need for arguments. I just want to express my love and gratitude for oF.

I understand your frustration, but most things of value are frustrating and possibly scary on the first try.
oF opened up the world for me, it played a crucial role in understanding more about how computers work. Yes, sometimes learning is hard. Watch how a baby learns walking. It’s pretty tough, but also definitely worth it and can be extremely fun. Learning programming and how things are set up on a computer system is maybe not as essential as learning how to walk, fair enough. But i really enjoy it and the oF community was an incredible support when i would otherwise slam with my face on the floor.

One sidenote to touchdesigner. It is a different animal than oF. It’s maybe easier to get into, but way more restrictive both from the things you can create or where your creations can run. Good luck exporting your TD project to run on a low cost device like a raspberry pi efficiently, or deciding to do sth else that TD was not designed for. It’s closed source nature means that how stuff works under the hood is intentionally inaccessible to you. Furthermore you need to pay for features with money. Personally, I rather and happily pay with time learning something instead. It doesn’t only give me the product, I also end up with knowledge, independence and flexibility. Through the skills i developed with oF i am able to find my way through all kind of libraries and stuff i need for my professional practice. C++ is a very useful language to know, and the oF community is one of the most helpful bunch of people i have encountered.

My goal with this post is not so much to convince you to not quit oF. Maybe oF is not the right toolset for you at this moment, that’s fine. But i do not think it’s time to quit oF.

3 Likes

I thank you for bringing up this subject, I’m loving the answers here.
It is important to choose what you are not going to use. not going to dedicate time to learn. (I won’t be spending time on TD for ex. but it is just personal)
I’ll be experimenting with Nannou as an alternative to OF, now just quick experiments.

2 Likes

Nice, what do you like about Nannou, @dimitre ?

Thanks, @fresla . This is the first time doing something like this, but if I end up using a lot of live video in the future I’ll keep your advice in mind. I prefer a laptop for performances because of the ease of transport; not sure if there are capture-cards for laptops…

Thanks to everyone for the great points about oF. I’d like to point out that I made this post because I like working with oF more than TD and was just frustrated that things I’d thought of as basic functionality were seemingly out of reach. I see now that the greater difficulties in some areas of oF are a trade-off for other advantages: a pure, code-based model, modular cross-platform capabilities, and a thriving, helpful community. I haven’t made a post like this on the TD forum because I don’t even really want anyone to convince me to use TD, so it would’ve been silly.

As soon as @theo bailed me out yesterday, I removed my company’s TD license from my computer and sent oF a donation. Expect to keep seeing me around here!

2 Likes

Hey @dimitre, do you know if Nannou is using webGPU for its pipeline? It think it is after looking but I can’t tell for sure. I still worry about the day when apple finally removes openGL support.

Also thanks to everyone who has posted in this thread so far, and I hope others will continue to add their thoughts to it! I hope this becomes a very long thread as time goes by. I have enjoyed reading all of the comments so far.

Basically the same I like in OF. opensource / multiplatform / educational / love driven.

It’s true, that some addons are not working, but I personally find OF absolutely amazing as a framework for creating high-performance art installations. I also find it’s structure and architecture quite friendly and in most cases very logical. But then again, I used to be a professional C++ programmer, so maybe that’s why it seems for me relatively simple and straight forward (even though I’m really scared of linking errors…hate to deal with them, especially on windows). I also must say that support and community for OF is quite good and very responsive. So I’m definitely not leaving!

2 Likes

@SFR75 Do you usually use oF on Mac or Linux? Is linking much easier there? I’ve heard a lot of people say Windows is the buggiest of the three and it’s all I’ve ever known. Mac seems (as a platform in general) limited in other ways while Linux seems difficult to set up for the uninitiated, but if it’s that much of a difference, maybe worth looking into…

Basically the same I like in OF. opensource / multiplatform / educational / love driven.

@dimitre What is it your prefer about Nannou? Rust over c++?

Actually for last two project I use windows.
Before I used RaspberryPI (linux).
I’ve started a project on Mac, but ran into some issues and went back to Windows.

I don’t see any particular bugs on Windows to be honest.

ah, OK. You said you hated dealing with linking errors, ‘especially windows’

It was a general statement. I do have linking errors sometimes working with external libraries and I hate them, but it’s not a constant problem. In 99% of time there are no linking issues. And yes in Visual Studio it’s difficult to understand - way too many windows and options. I prefer unix makefile system…

@s_e_p all the platforms have thier difficulties, pick one and learn. Windows has long support so old addons may work for a longer time (until some dramatic changes in the OF codebase). OSX makes things obselete more often, but I think the logic of linking can be simpler, but I put the time in to learn to build libs (and that is all changing as they want to use frameworks instead). Linux and makefiles is also great and has a complete other logic for solving linker errors. Once you do it a few times you will get used to it and can use that knowldege again and again and outside of OF as well.

1 Like

Just clarifying, it is no prefer at all. I like it is a modern project using modern technologies so that can be inspiring, even give ideas to be applied in OF when possible.
in other hand OF is around and survived a lot of time with active development which is great for an open source project. I can see OF alive an kicking 10 years from now.

it seems to use this https://wgpu.rs

1 Like

If I were to name one most frustrating thing about OF it would be the quality of addons. I would say 10% of them compile and run “out of the box”. The rest is just a lottery… some are for one platform only (iOS), some are calling non-existing functions, some are initializing abstract classes…etc, etc… It’s quite exciting in the beginning to see all these addons available, but in reality only a small fraction of them are working…

2 Likes

Most people make addons for their own work and make them available, most of the time you have newer addons that do the same things of others that are broken. have you use this page too look for them https://addons.braitsch.io/ ? i find most of the commonly used addons are up to date or just need quick fixes

5 Likes

Super useful to look into how old are, common fixes, newer forks / network / branches commits too.

1 Like

yes I agree. And then I looked a bit closer and found the same feature on official addons site :slight_smile:

https://ofxaddons.com/categories

Sorry to revive this thread just wanted to add these unique points for oF

  • Works with non-consumer and non-arty hardware.
    If you integrate anything other than consumer electronics or integrate hardware not already intended for arty folks (such as industrial cameras, sensors or motors) chances are the manufacturer provides either a c/cpp lib or maybe python lib. For c/cpp you might have to choose oF.

  • Less worry about lag from framework
    Any time you are dealing with live data chances are you are going to blame the highest abstraction layer for any lag. Knowing abstraction is minimum in oF could give peace of mind and also save time by allowing you to skip performance testing.

  • Abstractions leak but this one you can actually inspect.
    You can debug at the bare-metal layer which you cannot in other arty frameworks. I can throw things into valgrind and debug issues in internal libs when porting to new platforms, something I’d not even think of trying in Touchdesigner,Max,PD,P5,VDMX,Isodora. Having watched pro’s in those other frameworks, the number of times they’ve literally ran to an apple store to purchase the latest macbook 'cause they couldn’t figure out ‘the problem’ a few days before show opening is really enough for me to be suspect of systems you can’t debug to bare-metal.

  • Less ecological waste
    I use a 10y laptop still for most projects. From live video to AI. This is only possible with full open-source stacks. This may be niche, but in some cases I’m willing to spend more time working in a open framework to reduce such material waste.

I have no doubt oF will be around for a very very long time. Having worked with it off and on for a decade or so what surprises me most is that the space hasn’t had some large tech or hardware firms integrate with it. Maybe it will happen later as hardware platforms scale

1 Like