TOOL (GPU xfade videoplayer)
Hi all,
I would like to share a nice little tool with y'all.
It's a brand new Max7 poly~ videosampler with xfade capabilities.
Do to the fact that we can now name textures directly in [jit.movie] ,
making a poly~ jitter videoplayer was possible :-).
Each poly voice and texture name are automatically created and preloaded when you drop the folder :-)
I did this one quite a few months ago and thought it was time to share with you.
I find it practical for many types of projects
It even works well with 4k HD videos @60fps etc...
Runs well in Max 64 bit mode.
It's presently set for you to simply drop a folder filled with mp4 & .mov types files.
Hope you envoy.
Let me know if anything goes wrong
phiol
phiol, this is really beautiful. you probably know what i'm going to say... submit it to the Toolbox!
Thanks so much Rob! Will do.
I do have one question before I do so. If you tried it with the default c74 media folder,
you'll notice even though all the jit.movie have @vol 0, for some weird reason , we can hear the
on initial load. Then all is okay. Can't figure out why ?
thanks for the nice comment
phiol
Hi Phiol,
That is super slick. Plus super sick. Nice work !
thanks a lot Andro .
Did this one back in April, should uploaded it sooner :-)
thanks for sharing this mon ami, it works really smoothly. I can confirm the bug with the c74 media folder, same behaviour you mentioned. Works perfecto with other media folders I have anyway.
i can confirm the audio problems. i'll see if anything's to be done.
oooh very nice! I didn't you could do that ! :-)
I didn't know you could simply add a [prepend jit_gl_texture] with the texture name.
So if I get this correctly, your [jit.gl.pix @gen xfade] will act like a jit.gl.videoplane and know what to draw ,
simply by sending it a jit_gl_texture texname_bla
very good to know
thanks pry :-)
phiol
Also, another good tweak will be to make it , param-tweakable-friendly.
-stuff like play / stop / pos $1 / and a little bit more work but , sound sync'ed drivin by groove~ to pos $1.
Enable surround sound and panning capabilities etc... etc..
something like this patch below I recently did to help someone out in this thread
https://cycling74.com/forums/video-and-audio/
I recently implemented the GPU xfade videoplayer into an audiovisual installation that played at a number of conferences in Australia. It worked great for the most part. I have a folder of 40 high definition videos, each a gig or more in size, randomly triggered every 60 seconds. I did try playing with randomizing the length of fade as well as the length of time before each video was triggered. The patch got quite cranky with these alterations so I settled on fix trigger times as well as a fix fade time. I would, however, like to press forward and see if these elements could be implemented. Also would like to configure the patch so it remembers the folder instead of having to drop it in everytime.
Thanks Phiol - this looks brilliant.
@tconnors :
replacing the dropfolder should be very , very easy, just replace that part with a thispatcher and path message on startup :-)
maybe you'll need a [combine path contentfoldername ] combine will output this with no spaces and as a symbol.
In this setup , just make sure you contentfoldername is @ the same level as you patch in the path.
As for the random xfade time
phiol
I’d be interested as well to configure a series of these players into one patch.
Has anyone given that a go?
I'm not sure what you mean by this.
Isn't this a single patch ?
phiol
so it works correct ?
if you have 9 physical screens , make sure to create a single context that you stretch through out your nine screens .
check out my reply here
Unfortunatly, it does not work—yet!
There is embedded coding that crosses over commands from one poly to another. For example if I change the video in the first poly, videos in the second poly stop. They are not operating independently of one another.
Thanks for the other link. I will have a look
Best,
Teresa
I should clarify that all nine jit.gl.videoplanes are rendered on a single jit.world—and using one projector.
here is V2 with multiple xfader players.
In the attachment, I included the new polys and put everything you have to change when doing a new instance
of the xfade player module. If I ever have time (I have a nine month old baby) ,
I'll quickly turn it into an abstraction or bpatcher like you requested, but in the mean time everything is there for you to make
9 instances.
I tested it with 2 and 4k videos and I get a solid 60fps. If you have tons of videos, I would suggest you stay @ 1080p maximum or even 720p.
Also, make sure you 're running in 64 bit mode of you'll only get 2 gigs of ram space for your videos.
anyways hope this helps.
Thanks for that Phiol! I greatly appreciate it! Just comparing the patches to see what you adjusted. Yes I see. That would have taken me awile to work out. So thanks again! Have fun with the nine month old!
thanks a lot , he said his first word today , which was Batman ! ha !
But on the topic, will try to get to it (make a packaged abstraction type version ) , because I think it's a good idea.
I will also add the thispatcher path
I hope sooner than later.
Batman. That's cute!
And yes, your patch solves a lot of issues with multi-video installation works. I've been negotiating this topic for awhile in my creative practice and found Pry and your patch to have the most potential. I second Rob's comment above—it's beautiful coding! Best Teresa
It's almost working. I have nine screens going and for the most part all good. There is a weird thing happening, however, inside two
poly~ polyjitter. It seems there is a misfire for sending the texture_name to the jit.movie. In the poly~polyjitter that are working the texture_name attribute indicates so with the corresponding name. In the two that are not working reads as you can see in the photo.
If you are interested to see what is happening I could email the folder as it's too big for this site.
The texture_name should read texH11.
Hi looks great. Please let me check it. Mail to dror.feiler@gmail.com
Thanks
Dror
Hi Tconnors, I would not have time in the next few days, but maybe try with a deferlow before the sprintf.
Or after. This is just a guess though.
phiol
@ Phiol — derferlow worked before sprintf.
Thanks
Teresa
educated guess ;-)
phiol
Hi! My first post here :)
Great patch, just wondering if there is an easy way to make the videos start from the beginning each time?
Added a frame message to the jit.movie but that made the video start over both before and after the fade.
Best,
Olle
Thanks for the comment.
Try [pos $1] , but that will still start the video @ the same time as the xfade, meaning by the time you see the video you will not be @ the beginning of your video. which is normal , otherwise you would see your video as a still image as you xfade.
maybe this is obvious and I am misunderstanding your question
phiol
Great!
Had a go with the [pos $1] witch works fine for resetting but didn't know where to put it to get the reset automatically.
Your solution works perfect with both pos $1 and time 0. And now I understand the patch a bit better as well :)
Thanks both of you!