Eyeon:Manual/Network Rendering/Console Slave

From VFXPedia

< Eyeon:Manual | Network Rendering
Revision as of 03:24, 13 December 2006 by Daniel (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Fusion 5.1 introduces the ConsoleSlave, a new command line style renderer that greatly simplifies integration with these third party render managers.

Both the RenderSlave and the Console Slave are installed at the same time, and the executables are found in the same folder on the system, which is usually C:\Program Files\Fusion Render Slave.

Contents

RenderSlave vs. ConsoleSlave

RenderSlave.exe is a render-only license of Fusion designed for use with Fusion's native render manager. It is designed to be used only with the render manager that ships with Fusion. Generally the RenderSlave is run at system startup, and should remain open until the system is shut down.

ConsoleSlave.exe is a command line style version of the RenderSlave that was designed specifically to help Fusion integrate with third party render managers such as Rush, Deadline, Qube, or other custom in-house solutions. Typically the ConsoleSlave is run with command line arguments that describe the composition to be rendered and the frame range which will be rendered. It outputs render messages to the system's standard output (STDOUT), and exits automatically after the render is completed.

RenderTool Script

The Render Tool script used to integrate RenderSlave with third party Render Managers in previous versions of Fusion is no longer recommended. eyeon Software strongly suggests use of the ConsoleSlave in facilities where RenderTool.eyeonscript or a variation were in use.

Common Usage

The most common use of ConsoleSlave would be to render a subset of a composition's render range under the direction of a third party render manager. For example, to render frames 10-15 of x:\test.comp, you would run the command:

consoleslave x:\test.comp /start 10 /end 15

This would start the ConsoleSlave, load test.comp, render frames 10-15, then close the composition and exit the renderslave. Any errors or problems would be logged to STDOUT, and can be piped to a file for later analysis.

Commandline Arguments

  • Note : The ConsoleSlave shares the same commandline arguments used by the RenderSlave, however, it will ignore some arguments, or some arguments are default on ConsoleSlave when they must be explicitly specified on the RenderSlave.
  • Note : Hyphens may be used instead of slashes if you prefer, e.g. consoleslave -version
  • Running ConsoleSlave with no arguments, or with /? or /help, will display the help message:

ConsoleSlave.exe [<filename.comp> | <filename.dfq>] [/config] [/manager] [/quiet] [/clean] [/about] [/render [/frames <frameset>] [/start <frame>] [/end <frame>] [/step <step>] [/quit]] [/status] [/listen] [/join <host>] [/log <filename>] [/cleanlog] [/verbose] [/quietlicense] [/version] [/pri high|above|normal|below|idle]

[ filename.comp | filename.dfq ]

The first argument for the console slave is usually the full path to the file which is to be rendered. While this will typically be the path to a composition, it can also be a queue (.dfq) saved from the Fusion Render Manager. Path maps are allowed, as specified in the console slave's preferences, and environment variables (in $(var) format) will be expanded as well.

[/config]

RenderSlave only. When the /config argument is specified, the slave will open the Preferences dialog after starting.

[/manager]

RenderSlave only. When the /manager argument is specified, the slave will open the Render Manager dialog after starting.

[/quiet]

RenderSlave.exe uses this argument to suppress all warning and error popup dialogs that require user interaction, and might prevent the slave from starting up or shutting down. The /quiet argument is enabled by default on the ConsoleSlave, and has no effect if specified on the commandline.

[/clean]

RenderSlave only. This will prevent the RenderSlave from displaying a splash screen on startup. This option is enabled by default on the ConsoleSlave, and has no effect if specified on the commandline.

[/about]

RenderSlave only. When the /about argument is specified, the slave will open an About dialog after starting.

[/render [/frames <frameset>] [/start <frame>] [/end <frame>] [/step <step>]

The /render argument tells the slave to render the composition or queue provided as the first argument. The /start and /end arguments can be used to override the render range stored in the composition. If the /render argument is not accompanied with a /start and /end frame then the ConsoleSlave will render the render range stored in the composition. Note that, for ConsoleSlave, the /render, /start and /end arguments are optional, if a comp filename is specified. For example, the following lines are equivalent:

consoleslave x:\test.comp /render /start 10 /end 15
consoleslave x:\test.comp 10 15

[/frames <frameset>]

The /frames argument can be used in place of the /start and /end arguments to specify a non-contiguous frame range. The frameset should be specified using the same system employed to specify framesets in Fusions render settings dialog. Specifically, sequential ranges should be described using two periods (..), and individual frames should be separated by commas. No spaces are allowed between For example, the following is a valid frameset.

consoleslave example.comp /render /frames 1..10,15,25,30..50

[/step <increment>]

The step argument can be used in addition to a frame range to instruct the renderer to render every 'increment' number of frames. For example, to render only every 3rd frame of a composition's render range:

consoleslave example.comp /render /step 3

[/quit]

The /quit argument informs the slave to exit after rendering the specified composition. This is the default behavior for the ConsoleSlave, when a composition filename has been provided.

[/status]

Render Slave only. When the /status argument is specified, the slave will open the Render Status dialog after starting.

[/listen]

ConsoleSlave only. Use the /listen argument to launch the ConsoleSlave in Listen mode, and prevent it from exiting. No composition needs to be specified when this argument is used. This can be useful to communicate with it with a script, or for user interaction via the system tray icon (e.g. to change preferences).

[/join <host>]

Render Slave only. Use the /join argument to override the Fusion render manager specified by the slaves preferences. The slave will startup and send a signal to the specified host manager to indicate that it is now available for rendering.

[/log filename]

Use the /log argument to specify an alternate filename for the log file, rather than the default Render.log.

[/cleanlog]

Use the /cleanlog argument to clear the current Render.log file, rather than appending to it.

[/verbose]

This argument is used to produce a Verbose log with extra troubleshooting data, such as listing all plug-ins as they are all loaded.

[/quietlicense]

RenderSlave only. The /quietlicense argument suppresses the display of any dialogs when the slave fails to obtain a license, allowing it to fail quietly and report an error code. This option is enabled by default on the ConsoleSlave, to prevent user interaction.

[/version]

This will display the version, build number and build date of the executable, then exit.

[/pri high|above|normal|below|idle]

The /pri option can be used to specify the priority of the slave process on the workstation. A priority of 'high' provides more system resources to the process at the expense of other processes running on the system. A priority of 'idle' will only allocate system resources to the slave when no other processes require them.

Exit Codes

The ConsoleSlave produces a numeric exit code when it completes, which can be checked in a batch file or by a third-party render manager. The following exit codes are common:

  • 0 means that the render or other operation completed successfully, and ConsoleSlave exited normally.
  • 10 means there was a problem with rendering the comp (see the render log for details), or that the process was interrupted by a CTRL-C signal.
  • 20 means there was some problem with the startup - DLLs may be missing, or a problem with a plugin was encountered, or there was a problem obtaining a licence. Check the console slave's output, or re-run it with the /verbose switch for more information.