Batch File Generator

(c)2005 Jon Marshall Smith
http://www.jms-audioware.com


Overview

The Batch File Generator (henceforth BFG) is a plug-in for SawStudio which allows a selection of files to be generated from an EDL in a number of useful formats. Independent control of each file can be exercised, including it's start and end times, file type, bit depth, and number of channels. Each file may be independently named and pathed. Generated files may overlap in any way desired; i.e. the list of files need not be linear. To facilitate the export of large numbers of files, the view of files may be sorted based upon any criteria.

Currently supported filetypes include 8, 16, and 24 bit Wave and AIFF files, mono and stereo. BWF (Broadcast Wave) files can also be generated, with relevant timestamp information intact. When generating wave files, SAW Wave Peak Data (.wpd) files can optionally be built, as well. The BFG can also send files to LACE, which can export to MP3 (using LAME or Blade Encoders) and Ogg Vorbis formats.

Generally, the BFG will be patched on the main output track -- however, it can be patched anywhere. If you wish to use SawStudio's dithering options, patching on the main output FinalRes patchpoint would be preferable.

Files are generated when SawStudio's 'Build To Fx' function is invoked. Only files within the currently selected area will be built; alternately, the files you wish to build (or rebuild) can be manually selected from the list. If no area or files are selected, it is assumed that you wish to build all files. A pop-up dialog confirms which files are to be built.


Origin

The BFG owes it's existence to the Cue Sheet Generator. Over the years since CSG's release, I have fielded many inquiries into expanding it's operation, and I myself have attempted many times to use CSG for things it was clearly not designed to do. After a brief attempt to expand CSG's capabilities, it became clear that an entirely new program was needed to avoid muddling CSG beyond recognition... thus BFG was born.


Uses

The BFG is particularly useful for automatically generating sample libraries in a situation where the mix may need to be altered downstream. I've personally found it be a huge timesaver in generating drum kit samples from full multi-track drum recordings. I do most of my sequencing in Propellerheads' Reason using sounds generated from SawStudio; if I decide I need more or less room mics later in production, I simply re-open the drum recording in SawStudio, adjust the mix, and rebuild the kit. Upon relaunching Reason, the new sounds are intact. This technique would work equally well with any of the VSTi Sampler modules available in conjunction with SawStudio's Midi Workshop.

BFG has also proved very useful in mastering for DVD applications; all audio for a DVD project is loaded into SawStudio, processed to taste, and then the individual files are re-rendered in DVD-standard 24 bit/48kHz. Again, the BFG eases downstream adjustments of the audio settings without worry of sync being lost.

[ return to top ]


Building Files

BFG builds files when SawStudio's "Build Mix to Fx Modules" function is invoked. If BFG's main window is open and a subset of entries is selected, only selected files will be built. Likewise, if the multitrack's Beginning and End markers are set, only entries fully contained within the selected area will be built. A popup dialog confirms which files are to be built.

[ return to top ]


Demo Limitations

The demo is fully functional with the following exception; only one file may be generated per pass. You may manually select any file to be generated. In this way, the demo effectively enhances SawStudio's export capabilities by adding previously unsupported formats.

[ return to top ]


Interaction with LACE

You will notice one of the available filetypes is 'Send to LACE.' LACE is a free MP3/Ogg Vorbis encoder for SawStudio, available here.

When the option is used, LACE must also be patched. BFG will use LACE to create files based on LACE's current settings. Note that LACE files cannot overlap, as the LACE encoder is fed linearly during the build pass, and can only encode one file at a time.

[ return to top ]


The Main View

The main view lists all current files. Files can be selected in any combination, using standard Windows conventions; i.e., Shift+Click for multiple entries, or Ctrl+Click to select multiple non-consecutive entries. Ctrl-A works as expected, selecting all entries. The list may be sorted using any criteria by clicking on the column you wish to sort by.

Clicking on a filename will open a browse dialog which allows you to rename and/or repath the file.

Right-Clicking on an entry opens a pop-up menu. In addition to duplicating the Toolbar functions, there is also a 'Snap to New Start Time' function that allows you to slide a file or files to the new Multitrack position. Note when sliding multiple files, their relative positions will be kept intact. The file you are hovering over when invoking the popup menu will be the 'Key' entry, to which all other moves will be relative.

[ return to top ]


Add

Pressing the 'Add' button creates a new file using the current Multitrack Begin and End Markers. The file type defaults to the most recently used file type. The filename and path are determined by the settings on the Setup page.

[ return to top ]


Delete

Deletes the currently selected entry or entries.

[ return to top ]


Move

After a confirmation dialog, the currently selected entries' beginning and end times are reset to the current Multitack Begin and End settings. If multiple files are selected, all files will be set to same settings.

If you wish to slide entries while maintaining their relative placements, use the 'Snap to New Start Time' option on the popup menu, obtained by right-clicking an entry. This is explained in more detail under 'The Main View.'

Note the move function is also available in the popup menu; when activated from the popup menu, the confirmation dialog is skipped and the change is immediate.

[ return to top ]


Type

The 'Type' button (and the 'Type' popup menu option) opens a dialog that allows you to change the currently selected file or files' format. Currently supported are Wave files and AIFF files, 8, 16, and 24 bits, mono and stereo.

If multiple files are selected, all types will be changed accordingly.

Wave files may include the Broadcast Extension (BWF) which timestamps the file according to it's Multitrack posiiton. This option is enabled universally for all Wave files on the Setup page. Also, wave files can have SAW Wave Peak Data (.wpd) files generated automatically. This is also enabled universally on the Setup page.

[ return to top ]


Path

The 'Path' button (and the 'Path' popup menu option) opens a standard Windows re-path dialog, allowing you to alter the path of one or more files.

[ return to top ]


Load

Allows the loading of settings from the main page from a preset file.

[ return to top ]


Save

Saves the main page settings to a preset file.

[ return to top ]


Setup

The setup page contains BFG's settings. These preferences are persistent -- they are automatically saved when shutting down SawStudio, and automatically reloaded when SawStudio is restarted.

Generate WPD -- SAW Wave Peak Data files, or WPD files, can be automatically generated when a Wave file is created.

Wave files are BWF -- wave files can include extended Broadcast, or BWF, data. This includes a timestamp that corresponds to the file's placement on the Multitrack timeline. This can be useful for importing into other programs, or even re-importing into SawStudio using Rail Jon Rogut's BWF Helper. Note that BWF files are recognized by SawStudio, although the timestamp information is ignored.

'Multitrack selection follows entry selection' -- when this option is selected, any entry selected in BFG's main view will cause a corresponding change in the Multitrack's currently marked Beginning and End positions.

The 'Base Filename' field is the basic filename of a new entry, with a unique number appended automatically to ensure it's uniqueness.

Similarly, the 'Default Path' field denotes where a new entry resides within your file hierarchy. Alternate, 'Use EDL Path' can be selected to use the EDL's current path for generated files.

The 'Register' button is also on this page; it will be greyed out if the plugin has been successfully registered. For information about registration, please see the JMS-Audioware website.

[ return to top ]