Jump to content
IGNORED

Live-Coding Environment for Video?


Recommended Posts

Hey, y'all, I can't believe this isn't a topic already (...or IS IT??)

Anyway, just like it says, I'm looking for something like SC/PD/Max but for video. I think I already have a Jitter license actually but I only have one shitty old Mac and I'd prefer something lightweight and FOSS that runs on Linux. I started trying to learn Processing and I got those smelly old legacy vibes. It seems like PD can do some of this stuff but it'd be cool if it was something more code-oriented.

More specifically what I'd like to do is get some rando video footage and do some weird masking and color grading and stuff on it, make little goofy circles and overlay things. Just fuck around without any particular aim, see if I can come up with anything cool. Honestly vvvv is probably most like what I'm looking for, but like Jitter it's more visual-programming. Maybe I should just stick with Jitter?

Link to comment
Share on other sites

6 hours ago, Nil said:

Hydra can process cam RT input (~ 18 minutes in), so maybe it can work with video clips ? https://chat.toplap.org/channel/visualists might be a nice place to visit too ?

Oh yeah I played with this a bit a while back (probably a year ago) in the browser. It seems really cool and it's probably come a long way from when I last used it. For some reason I get a strong feeling it can't use pre-recorded video (seems very oriented toward sort of ephemeral web-based collab) but that's worth looking into.

Yeah I was hanging out on toplap for a while but I found the chat really awkward to use. I should probably give it another go.

3 hours ago, thawkins said:

This might be helpful for setting up an OBS steam as a virtual webcam. https://streamshark.io/blog/using-obs-as-a-virtual-webcam-on-windows-and-macos/

This is good to know. I'm not trying to stream anything quite yet, though, just farting around for my own amusement. I guess if the stream could be exported to video that might be cool? Or if you could script it to use pre-recorded video instead of streams, kind of like what Nil suggested about Hydra? How much tweaking of the video can you do with OBS? To me it seems designed to display a kind of static arrangement of video streams and maybe some images or something. Maybe it's deeper than that?

3 hours ago, mcbpete said:

I was gonna say vvvv but if you're more into the live-'coding' side of things gl/pixel shaders would probably be more your thing: 

https://www.shadertoy.com/

https://webglfundamentals.org/webgl/lessons/webgl-shadertoy.html

https://github.com/Gargaj/Bonzomatic

 

This looks really cool too but it seems like it's more about creating demo-type graphics from scratch by making shaders than about processing video. Could be fun for sure.

 

I played with Gem in PD a bit yesterday. The video was a bit janky to control but it seemed promising. I was kind of surprised how much picking PD back up was like riding a bike - I wired up jumping to specific frames with a counter in no time.

I guess there's also something called openFrameworks that's C++ based but it looks cool too, and can also be used with PD. https://openframeworks.cc/ofBook/chapters/image_processing_computer_vision.html

Blender seems good too. I always thought of it as not so real-time oriented, but apparently it can send and receive OSC messages, and I've heard a lot of good about its video editing capabilities so maybe it's decent for real-time video processing as well? I mean there's a freaking 3D engine built into it. And maybe what I want doesn't necessarily need to be real-time, I just like that synth-like workflow where you can fart around and tweak a bit here and there, as it runs.

Edited by sweepstakes
Link to comment
Share on other sites

I was going to say VVVV and Processing, too.

You might look at Pixilang, not sure how useful it would be for processing live video but it's definitely worth a look.

https://warmplace.ru/soft/pixilang/

 

EDIT: it definitely can process live video because some of the live video apps the dev has made were coded in Pixilang, but as far as using it directly for live coding I don't know.

Edited by TubularCorporation
Link to comment
Share on other sites

18 minutes ago, sweepstakes said:

This is good to know. I'm not trying to stream anything quite yet, though, just farting around for my own amusement. I guess if the stream could be exported to video that might be cool? Or if you could script it to use pre-recorded video instead of streams, kind of like what Nil suggested about Hydra? How much tweaking of the video can you do with OBS? To me it seems designed to display a kind of static arrangement of video streams and maybe some images or something. Maybe it's deeper than that?

What I mean is that if you have got Hydra which can process webcam, and you have OBS where you can set up a virtual webcam that shows some other window where your pre-recorded video is playing, then if you set your OBS virtual webcam as the input in Hydra, viola you can now mess around with that video in there. Does this make sensei? ?

Link to comment
Share on other sites

17 minutes ago, TubularCorporation said:

I was going to say VVVV and Processing, too.

You might look at Pixilang, not sure how useful it would be for processing live video but it's definitely worth a look.

https://warmplace.ru/soft/pixilang/

Yeah, vvvv seems great, if I had a Windows machine kicking around. Oh interesting, is this made by the same guy who does Sunvox?

17 minutes ago, thawkins said:

What I mean is that if you have got Hydra which can process webcam, and you have OBS where you can set up a virtual webcam that shows some other window where your pre-recorded video is playing, then if you set your OBS virtual webcam as the input in Hydra, viola you can now mess around with that video in there. Does this make sensei? ?

Oh gotcha. Good point. It would be cool to be able to control playback of the video though, as in play from a certain index, etc. I do seem to remember a demo where ojack was doing something just like that - like she recorded some footage of herself and then was manipulating the time playback or something. Could get messy trying to treat a pre-recorded video that way but it's definitely a possibility.

WebGL seems like just what I'm looking for, especially since I already know JavaScript... Hydra might be a really nice abstraction on top of it too. I think I'm going to go through the Web GL tutorials mcbpete posted. Hopefully I won't run into some stupid gotcha, but it seems very mature at this point.

Link to comment
Share on other sites

I just found this:

 

https://github.com/fand/veda

https://medium.com/@amagitakayosi/vj-live-coding-on-atom-glsl-livecoder-329eec5462df

 

Quote
  • Fragment shaders runtime like GLSL Sandbox
  • Vertex shader runtime like vertexshaderart.com
  • Loading images / videos
  • Additional uniform variables useful for live coding
    • Audio input
    • MIDI input
    • OSC input
    • Webcam input
    • Keyboard input
    • Gamepad input

 

EDIT: yeah, Pixilang is the Sunvox guy.  About half of his things were coded in it, actually (not Sunvox though). 

Edited by TubularCorporation
Link to comment
Share on other sites

Also, it's not quite a live conding environment and it's extremely old but I always like to plug Visual Jockey Gold.  It's getting harder to find these days, the official website seems to be down now (it was actiave a couple months ago) and most of the mirrors are dead, but you can still get the site on archive.org and this official mirror is still up:

http://www.ackagi.com/visualjockey/VJO-SP1-V1.msi

 

https://web.archive.org/web/20190412100716/http://www.visualjockey.com/index.html

 

It's Windows only but it also hasn't had a major update since 2006 and hasn't had any development at all since 2008 so there's no way it wouldn't run in Bootcamp on a Mac. It's dated but still useful and I think you cna do some limited reatime coding in there soemplace.

 

Also, the list of software that supports FreeFrame plugins has some old but still decent stuff that would be worth checking out if you're doing video:

http://freeframe.sourceforge.net/

Stuff like Gephex won't even run on x64 systems (EDIT: I take that back, Gephex is running fine on my laptop; could have sworn it didn't work on the previous one) but the flip side is you can run it pretty well on any old $20 Dell from eBay.

 

Anyway, this is all way off track fro what you're after, jsut spreading awareness of some goofy old freeware VJ programs I like.

Edited by TubularCorporation
  • Like 1
Link to comment
Share on other sites

Yeah, Veda looks like a good option for you, the others I was just throwing in there because I think they're interesting.

 

Atom and GLSL are both very active and well maintained (GLSL is part of the OpenGL standard if I'm not mistaken). Veda's just  a library for livecoding GLSL in Atom, so it benefits from their community support.

 

Anyway, I discovered Whorld while I was looking for stuff to suggest, installed it on a 15 year old Windows XP netbook and it runs fine, so I'm going to use that with a VGA to composite converter to get some MIDI synced generative patterns as extra source material for the analog video feedback stuff.

Edited by TubularCorporation
  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...
  • 3 years later...

Touchdesigner 

“TouchDesigner is a visual development platform that equips you with the tools you need to create stunning realtime projects and rich user experiences. Whether you're creating interactive media systems, architectural projections, live music visuals, or simply rapid-prototyping your latest creative impulse, TouchDesigner is the platform that can do it all.”

Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.