I’m writing a postjobscript to have all the maya renderoutputs convert automatically to exrs, and I want to do it with calling nuke from shell and execute a py file that makes this simple conversion. The problem is that if I call nuke with ShellExecute, it’s not working using commandline flags. So with ShellExecute(’/usr/local/Nuke6.0v6/Nuke6.0’) it does work (starts nuke), with ShellExecute(’/usr/local/Nuke6.0v6/Nuke6.0 -x -F 1-10 …’) it doesn’t. Not even with double quotes. What would be the correct syntax? Otherwise, what is the “verb”, that could be second argument to shellExecute?
HI,
Just curious, does your nuke file already know where the files are and where they should go,(as in you made the nuke file by hand) or do you do set up this information from the deadline job info. (Like you wrote up a nuke file on the fly in the script)
If you get this script to work, I’d love to see you share it up here.
Thanks,
Fred
When I wrote an in-house script to convert our EXR files, I dynamically created a Nuke script and then submitted it back to Deadline as a Nuke job so that I had all the control of Deadline when it came to running the job, handling licence restrictions, multi machine processing for speed, etc. A post-job script was too restrictive for a large frame sequence conversion, especially on a low-spec deadline slave machine. It also, meant, I could build a GUI to allow additional settings to be applied to the conversion jobs such as down-rez proxy write nodes, etc for dailies.
Mike
Here is how I did the postjob script, to convert the rendered sequence to exrs with autocrop enabled with nuke:
There is a python file in the attachment: “JobNuke2exr.py” the path of this should be placed in deadline monitor/job properties/postjobscript. This is the main file, this gets the render parameters (seq name, framerange) from deadline and launches nuke for the conversion. I had to make a workaround for this, so it calls an “nuke_cmd.sh” and THAT fires nuke, with arguments for framerange, and an argument of a 2. python file ( “glt_deadlinepostjob.py”), that generates a read and a write node in nuke on the fly, for the conversion. The paths in the files should be edited for your settings (nuke path in nuke_cmd.sh, path to “glt_deadlinepostjob.py” in the "JobNuke2exr.py file)
If you need here posted a bit longer explanation
Any comments or suggestions are welcome, especially about how to fire a command line nuke with spawnprocess properly, with a -t flag.
Cheers,
Gabor JobNuke2exr.zip (1.76 KB)