Network render tutorials? (I get all black)

johnmeyer wrote on 4/26/2004, 11:55 PM
[Edit] See my fourth post below.

I have spent the past several hours trying to get network rendering to work. I am not a network guru, but on the other hand, I have set up several dozen networks for people over the past few years, so I have some experience.

I have one remote computer with a renderer running. On my host (stitch) computer, I open up the Sundance Rendertest.veg, and then Render As a DV AVI file, with the "Render Using Networked Computers" checked.

In the Render Service dialog on the stitch host, I have entered the network name of my remote renderer, and its status is Ready. In file mappings, I have mapped e:\ to \\polywell\video which is the network name that gets to the root of my e: drive. The e: drive is shared for full read-write access. The Rendertest.veg resides in the root of the e: drive, and there is no other media pointed to by this VEG.

However, when I start the render, there is no evidence, either on the host or on the remote rendering computer of anything being sent to the remote. One time, I don't know how, the remote machine did report that it had rendered one of five segments (although that was on a test with a different VEG file).

Is there a tutorial somewhere on how to set up and use this feature? I have read the help file and the manual (which are basically identical) and they are inadequate. The new features PDF makes no mention whatsoever of this feature.

Comments

RexA wrote on 4/27/2004, 12:07 AM
I don't have Ver 5 yet, but could it be that the render test isn't suitable for network rendering? That test is all generated media, isn't it? I'm thinking maybe it can't really be split into subtasks to be parsed out to other machines.

Just a guess here.
johnmeyer wrote on 4/27/2004, 12:19 AM
I started thinking the same thing after I posted, and am now trying a more traditional project with standard DV AVI files with some fX applied to make sure the computer has to do some heavy-duty rendering. I have now gotten the remote computer to sometimes do rendering, but it doesn't do it every time.

One minor bug is that the first letter of the rendered file seems to get deleted when you do a network render. Another, slightly more critical bug, is that all network renders so far are nothing but black. At least they render faster ...

I have tried both distributed and non-distributed rendering.

I assume this can be made to work, so I'll keep on trying ...
SonyPJM wrote on 4/27/2004, 6:08 AM
The reason the Sundance render test project does not work with
distributed renders is because it is only 5 seconds long which happens
to be the default length of a single segment. When the length of the
render job is less than or equal to the default segment length, the
network render service does a non-distributed render (saving you the
stitching phase).

However, you can reduce the default segment length in the options tab
of the Network Render Service app (VegSrv). This will allow the render
to be distributed.

Sorry this detail is not in the docs.
johnmeyer wrote on 4/27/2004, 7:59 AM
I used a longer clip last night, as I indicated in my second post. I did get the remote renderr to work, but only sometimes. I kept getting AVI files that were all black. The render times made no sense. It took 1:40 to do the render normally; 1:38 to distribute the rendering, and 1:10 to do the entire render remotely. The reason the last time made no sense is that the remote computer is 1.5 GHz simple computer with 128 Mbytes of RAM, whereas the local computer is a stripped-clean 2.8 GHz P4 with 512 MBytes of RAM.

I'm going to try working on this for a little more time today.

Is anyone using Network Rendering successfully?
johnmeyer wrote on 4/27/2004, 8:53 AM
OK, I've been at this for several hours. I am really beginning to think the problem is Vegas, not me. The remote renderer insists on dropping the first letter of the render file name (i.e., "test.avi" becomes "est.avi"). In addition, if I do non-distributed rendering, the resulting AVI file is nothing but black.

Here is a quick summary of my latest test:

1. Took a 20 second NTSC DV AVI, and put a pan/crop 360 rotate at the 20 second mark so the video rotates exactly once during its 20 second duration. The source for this video is the "Basketball" directory of my D: drive.

2. Clicked on Render As and specified "MyTest.AVI" as the render file name. The location for this file is the root directory of my E: drive. Clicked on "Render using networked computers."

3. The network dialog appears. There are two items in the "Render Host" directory, my local computer, and the one remote computer which already has the render service running. Both show port 53704.

4. I select the remote computer as the host, and leave the "Distribute Rendering" box unchecked.

5. Before I start, I look at the "Render Service" dialog box. The "Renderers" tab show my remote computer name ("Dell"), and the Status is "Ready". File mappings map the root of both drives to their network names as follows:
e:\            \\polywell\video
d:\ \\polywell\documents
In other words, my local computer is called "polywell" and the e: drive is shared, at the root, with full read/write privilege through all subdirectories, and is shared under the name "video". Same idea for d:

6. The remote computer is logged on and can see these shares (i.e., if, on the remote computer, I click on Start -> Run and type \\polywell\video, I get a listing of all the files and folders on the root of my e: drive).

7. The local Render Service dialog, under the Progress tab, shows the previous jobs. The one I just started initially shows "Queued" and then shows "Rendering." I go down the hall to the remote computer that is doing the rendering, and its Render Service dialog show progress reports on each segment of the render.

The render takes exactly the amount of time I would expect (about 35% longer than on my local machine, because the remote is a slower computer).

I return to my local machine and watch the render progress until it finishes. The output file name that displays is missing the first letter of the file name, and when I look in Windows Explorer, indeed the beginning of the file name has been truncated by one letter.

When the render status is complete, I play the file. It is exactly the correct length, and it is exactly the correct size, but it is completely black.
ChipGallo wrote on 4/27/2004, 9:19 AM
On the remote machine, is Vegas running minimized? That is what happened when I successfully did a network render. Only thing for me was that it was much slower than a local render.
johnmeyer wrote on 4/27/2004, 9:36 AM
On the remote machine, is Vegas running minimized? That is what happened when I successfully did a network render. Only thing for me was that it was much slower than a local render.

On the remote computer, I only installed the Vegas network service, not the full install of Vegas (I only purchased one copy of Vegas). It was not minimized, and I can't imaging, given how Windows works, that minimizing would make any difference, but I'll give it a try.
SonyPJM wrote on 4/27/2004, 10:04 AM
The problem of the output file's first letter being dropped is due to
a bug in how paths get remapped. I'll make sure it gets fixed
for 5.0b but a work-around for now is to share a folder rather than
the entire drive.

So your file mappings might be:

e:\video \\polywell\videod:\documents \\polywell\documents
I realize this work-around may not be desirable and I apologize for
any inconvenience.


We are still trying to reproduce the all-black video problem you've
reported. It may be related to the file remapping problem.
johnmeyer wrote on 4/27/2004, 10:51 AM
OK. I put all the media files and the VEG file in the E:\TEST directory rather than in the E:\ directory. That got rid of the dropped first letter problem, and also the black render problem -- the two are related. Thus, the problem is fixed.

Thank you! ... But ...

The reason I put the files in the root to begin with was that they were originally in a directory that was several levels deep. Not only was it a pain to type the full path, but if you type a long path into the File Mapping edit boxes in the Render Services dialog, they appear to be truncated when you go back and edit them. Now that I have worked with this for awhile, I actually don't think they are truncated, but if you are going to continue to force us to enter mapping info, you need to make this dialog much more robust.

Of course, if the engineers are going to do any work at all, they should simply take the extra step and eliminate the need for this altogether. I mean, after all, if, in XP, you click on Control Panel -> Administrative Tools -> Computer Management -> Shared Folders -> Shares, all the information is right there. One Windows call and you've got the information that you are forcing users to enter by hand.

[Edit] I forgot to post my render time results:

Render on local computer (2.8 GHz P4): 1:36
Render on remote computer (1.5 GHz P4): 2:56
Render on both computers: 1:21

SonyPJM wrote on 4/27/2004, 12:16 PM
Unfortunately the .net API (upon which network rendering is built)
does not provide access to the file sharing information that you can
see in the control panel. Also, going forward, I can see cases where
the manual specification of file mappings will still be desired (for
file replication or drive letter mappings).

Still, your point is well taken and it would be nice to provide a
function that "auto-fills" the file mappings using native API calls
and a COM interop library... also an earlier suggestion to provide a
browse button is good too.

Your 15% improvement is on par with some of our informal tests
using a similar mix of machines... but rest assured, if you put
together 2 or 3 equally powerful machines, you'll see more significant
improvements. Still, you can't expect to cut the render time exactly
in half with 1 equally powered renderer because there's overhead for
segmentation (start and stop each render), stitching, and basic job
management. Also you can cut out the time it takes to launch Vegas
(after the first job) by selecting the option the leave it running
when idle... that easily can take over 10 seconds which, for the short
render test you've done, probably would equate to several percentage
points.