AWS Thinkbox Discussion Forums

nuke batchmode = quictime renders become single frame

It seems that in batch mode, you cant render quicktimes… It just saves the very last frame into the quicktime (even though it goes through each).

The problem seems to be that you guys are feeding per frame render commands to nuke, instead of per chunk…

This is the code from nuke.py:

scriptContents = ""
for frame in range(self.GetStartFrame(), self.GetEndFrame()+1):
     frameCount = frameCount + 1
     scriptContents = scriptContents + ("nuke.execute(nuke.Root(), %d, %d, 1, continueOnError=%s);print(\"Frame %d (%d of %d)\")\n" % (frame, frame, continueOnError, frame, frameCount, totalFrames))
# Now execute the full script.
self.WritePython(scriptContents)

Instead, it should be:

scriptContents = ""
frame = 0
scriptContents = scriptContents + ("nuke.execute(nuke.Root(), %d, %d, 1, continueOnError=%s);print(\"Frame %d (%d of %d)\")\n" % (self.GetStartFrame(), self.GetEndFrame()+1, continueOnError, frame, frameCount, totalFrames))
                        
# Now execute the full script.
self.WritePython(scriptContents)

This will be fixed in beta 9. We’ve added a new BatchModeIsMovie plugin info property, and when True, we’ll perform the render as a single chunk. The integrated Nuke submitter will set this property automatically, and the Monitor submitter will have a checkbox for it. If you guys are using a custom submitter, just add this to your plugin info file:

BatchModeIsMovie=True

The reason why we split it up in the first place was to add proper progress reporting. Amazing that this bug never came up until now.

Cheers,

  • Ryan

Cool, thanks! Re: progress, yeah it would be nice to hook into some time change callback somehow… ill check internally with our nuke TD if that might be possible

There is no DeadlineUtils (like in max) for nuke, right? But we might still be able to use stdout prints for progress report?

cheers,
laszlo

Yeah, there is no DeadlineUtils, but if you can print out something that matches what we print out, the Nuke plugin should capture it:

Privacy | Site terms | Cookie preferences