Nuke and OpenClip

Looks like you’re right. I just did a quick test to see if a versioned up sequence would be recognized by the orig open clip and it doesn’t work. Pattern browsing worked on it, though.

Sorry for the confusion! I know that Autodesk has an open clip creator app with documentation. Maybe that can help you out.

Yes we can have Nuke update our openClips and yes we use NiM.

Not what you asked I know. But it isn’t even Nuke’s NiM connector doing this. It needs to be rendered through Deadline so it is a little harder for me to really know what is happening under the hood but my best guess is it needs to add a tiny line to the openClip script with the latest render name and location.

Pattern browsing is your best, none scripted option and it is an excellent feature.

Implement once at the start when you import the first render and ensure that strict naming conventions and timecode is maintained. Any change to frame length or file name quickly messes it up for you.

Initially the pattern required to look inside a folder and stack all of the render versions can be a little confusing and it depends on your workflow but there have been plenty of threads on Pattern Browsing so have a search through some of those if you find yourself stuck :+1:

1 Like

Thanks Andy, I will check the clip creator app and see what it can do :slight_smile:

I see… the last company I worked for they used NiM to do that, which worked perfect. But I guess they programmed it that way…

Maybe we will try to script something, so that there will be an entry added to the OpenClip, but I need to check if my colleagues can do that, because I can’t :sweat_smile:

Thanks for your input :slight_smile:

I could look into this. Im interested in doing something similar. So basically you want to add versions to an openclip created from flames sequence publish?

Hey Milanesa,

That would be awesome :slight_smile:
yes that is correct, Nuke needs to add versions to that existing OpenClip.

Cheers,
Max

Here:
nuke_update_openclip.zip (2.9 KB)

No promises is going to work for you… works here.
I am using a modified variant of the createClip.py script from some years ago. Honestly I think it can be better, but dont have much time for this now. I’ll write something more robust eventually.
You need to use the included custom Nuke write node. I have set it up with some flexibility to adapt, but taking into account a folder structure similar to what Flame spits out from the Sequence Publisher.

image

The rendered image will default to this path
<render dir>/<version>/<shot>_<name>.<version>.<padding>.<extension>
The createClip.py will look in this folder by default:
<render dir>/<version>
The openclip path will default to:
<render dir>/<version>/<shot>.clip
Unless specified in the write node

One of the things the createClip will do is to keep adding version to the openclip, even if its the same version and path. This is one of the things it should be fixed eventually. So I have included an option to enable the update.

Hope at least it give you some ideas.

BTW the createClip.py it works as a standalone tool… just pass the --help flag for instructions.

A

7 Likes

@Josh_Laurence

This is great stuff @milanesa

Thanks. Will take a look :+1:

Updated zip file with a couple of fixes in the write node.
Also, forgot to mention that the update happens right after the Write node finish rendering.

1 Like

Wow, this is amazing.

Wow @milanesa Thank you! I will check that on Monday, sounds promising :slight_smile:

open_clip_render

I’m picking this back up and it’s working. I demoed these in my Logik Live, but I don’t spend much time in Nuke these days, so I have a couple of questions:

  1. Is it ok to bury the entire python script in Python → After Render?

  2. What’s the best way to distribute it? From what I’ve gathered, it’s a gizmo so then you can get it to pop up in the toolbar.

You can find this gizmo below or in the Logik Portal under Add Version to Open Clip which includes these scripts:

open_clip_write_node.gizmo.zip (3.2 KB)

I don’t see why not. May be a bit odd for editing with Nuke native tools, but you can always use something like KnobScripter for it.

For distribution I would change the Class to a Group instead of a Gizmo. That way it doesn’t need be ingested as a plugin on Nuke startup. Other wise it will fail if the .gizmo is not found in the NUKE_PATH locations.

1 Like

Thanks @milanesa! It was definitely odd editing the script with Nuke native tools, but KnobScripter looks likes a handy tool.

Is this what you’re talking about for creating a group? Grouping Nodes.
Then would I distribute a .nk file?

KnobScripter is awesome… it makes editing Python knobs WAY easier.

Changing a gizmo to a group is as easy as opening the .gizmo file in a text editor and editing the Gizmo Class to a Group Class… just one word.

If you want to load it in a Nuke menu, you can keep it as .gizmo and do the usual to make it show up in the UI. You can also rename it to a .nk file and pass the path so it can be imported from the file menu.

1 Like

Amazing, thanks again!

image

hey @john-geehreng just trying this out on windows but I cant get it to update the openClip.

I think its due to dependencies on flame stuff like

getMediaScript = "/opt/Autodesk/mio/current/dl_get_media_info"

going to try to dive deeper into this, i think for me just having a write to openclip from a read node would actually be preffered.

with @milanesa script i am also not getting a updated openclip on windows at least but no error.


The following foldpython3 O:/p1p3/dr1p_nuke/dotnuke/gizmos/createClip.py --clip=P:/XXX_development/pipetest/metadata/100.clip --folders=P:\XXX_development\pipetest\100\comp\out\pipetest_100_comp_v002\pipetest_100_comp_v002v03
The get media info script is not installed: file /opt/Autodesk/mio/current/dl_get_media_info missing

so right now this doesnt work on windows machines or linux machines as it requires flame to be isntalled? ill try to grab that d_get_media_info script off a flame machine…

ok obviously dl_get_media_info is a executable and not a python script. darn it, so no updating openclips on the good old wandoze then

Bummer. This can definitely be done in a more portable way. Im sure someone has done already.

This may be even easier. But wasnt the idea to update a .clip coming out of the Sequence Publish Export?

Im not in Flame much these days, but I can take a look if someone supplies examples of a sequence exported .clip and the desired result.

2 Likes

will do!

Yea i feel like the update a openclip is like publishing, so write first, then read back (and qc) then update openclip with this render from my readnode type thing…

at least for me :joy:

1 Like