From: Greg Ercolano <erco@(email surpressed)>
Subject: Re: Using Rush in a slightly different way [for Framecycler]
   Date: Thu, 08 Sep 2005 11:14:51 -0700
Msg# 1027
View Complete Thread (2 articles) | All Threads
Last Next
Mark Smith wrote:
I'd like to use Rush in a way that it might not have been designed to and thought I'd ask if it was possible first.

	Actually, Rush is designed with customization in mind.
	You can shove just about anything command line oriented
	through it, including backup tape operations, filmout operations,
	it's even been used for MP3 generation.. what else are you going
	to do with all those CD drives on your render farm? ;)

We use Framecycler for playing back sequences. To allow real time playback of really long sequences Framecyler has its own proprietary file format called .ihss. Now you can make these ihss files in the Framecycler GUI or use Framecycler’s command line utility (no GUI at all) called Sequence Publisher that takes a sequence of frames and creates one .ihss file.

So I want to make these .ihss files on the farm and do it through Rush.

	Sure, should be no problem, me thinks.
	It's just like any other renderer or compositor..

So instead of doing an operation on lots of frames spread over a farm, I need to do one huge operation on a whole sequence just on one render node, and output one file.

Is this possible?

	Yes, you can submit it as a 'single frame' rush job.
	This is done when generating Quicktimes as well.

Sequence publisher has the following syntax:
publisher /path/to/frames.#.cin /path/to/outputfile.ihss –r 50% 50%

	You can submit it to Rush using 'submit-generic'.

	Or, you can make your own submit script using this tutorial as a guide:
	http://www.seriss.com/rush-current/rush/rush-tutorial.html

	..or, just hack up a copy of one of the simpler example scripts
	in the rush/examples directory.

	To submit it through submit-generic, you might specify:



       Shell: perl
   Job Title: FRAME_CYCLER
      Frames: 1
Batch Frames: 1
Log Directory: //path/to/some/empty/dir
     Commands: system('publisher /path/to/frames.#.cin /path/to/outputfile.ihss –r 50% 50%'); exit(0);
         Cpus: +any=1@50



	I would think that would do it.. just change the pathnames as needed.

        Set the "Cpus:" to whatever +hostgroup is appropriate for framecycler,
	ie. whichever group of machines has the publisher software installed.
	(I assume if you have a mix of Windows and Linux machines, you probably
	have +win and +linux hostgroups, so to submit only to windows, you'd
	set "Cpus: +win=1@50" or similar.)

	I didn't put in any error checks, because I don't know if publisher uses
	exit codes or not. So with the above, Rush will always say "Done", even
	if it failed.

	To add error checking, you might use for "Commands":

     Commands: my $err = system('publisher /path/to/frames.#.cin /path/to/outputfile.ihss –r 50% 50%') >> 8;
               if ( $err ) { print "--- FAILED: PUBLISHER RETURNED $err\n"; exit(1); }
               else        { print "--- SUCCEEDED\n";                       exit(0); }


	If there's a general desire for an 'official' GUI oriented rush submit
	script for this kind of thing, let me know and I'll post one.

--
Greg Ercolano, erco@(email surpressed)
Rush Render Queue, http://seriss.com/rush/
Tel: (Tel# suppressed)
Cel: (Tel# suppressed)
Fax: (Tel# suppressed)

Last Next