Network Rendering with MetaFuze


Avid MetaFuze is a tool from Avid Technology that converts various video formats (most notably DPX and RED RAW) into native DNxHD media that can be used with Avid’s editing products. The product ships with two interfaces – a GUI for direct transcoding, and a command-line version more suitable for scripting.

A small number of modestly powered computers can be put to work transcoding media from a large pool in a shorter time. However this isn’t something that MetaFuze will handle natively and must be managed.

Networking
The most important part of distributing the transcoding over a number of network computers is making sure all the client computers have access to the source files.

To achieve this, the easiest thing is to create a network share on the ‘Master’ computer which contains all the source files for transcoding. Once the share is created, you can then map this to the same drive letter on all computers, which will ensure that file paths are consistent on all client computers.

In this case, we’ll assume that your local desktop PC (called ‘WORKER’) contains all the source files in E:\Video\REDMedia – create a network share for the E:\Video folder, which will then be accessible as \\WORKER\Video on the local network. On all computers (including your own desktop) you can then map that network location to the drive letter Z:

Job Setup
MetaFuze doesn’t natively provide any method for distributing job instructions to multiple machines. All transcode jobs are stored in a single file. To address this I’ve created a tool called BatchFuze Extactor which will take the XML project file from MetaFuze and split it into single files for each source file.

To create these job files simply follow the standard procedure for creating a transcode batch in MetaFuze, save the project, then open that project XML in BatchFuze Extractor and choose where to save the output files.

For the purposes of networking it is important that all file paths be accessible to all client computers, so even if the source files reside on a local drive on the computer that is running MetaFuze it is important that the source files be accessed with a network path. Following the basic sharing method above this would mean it’s important to location the files through the Z: drive.

If the files are to be rendered back to a network drive, it’s equally imporant that the target location for transcoded files also be available on all client computers. If you’re planning to render to the local client machines then the path must be valid on all client computers (create E:\Video\Transcoded on all rendering computers, for example).

Whatever file locations are shown in MetaFuze when you create the Transcode batch are the ones that will be referred to by the client computer when transcoding.

Distributing The Work
Once you have a collection of individual XML batch files you could simply roughly divide them on to the client computers, and get MetaFuze to process each batch in turn. This will require a simple batch file.

Alternatively I am currently developing an application to manage this process across a network. One computer operates a server, distributing the batch jobs, and the remaining computers run a client which communicates with the server, receives jobs and passes those jobs on to MetaFuze for processing.

This application is currently at a Beta stage, if you’re interested in testing it, please get in touch with me by email: batchfuze -AT- dylanreeve.com

  1. No comments yet.
(will not be published)