Basic Workflows within Engine (Recap)
Engine workflows can be one of three distinct types. The simple ones carry out one function, such as loudness. More complex sequences can be configured, and these will do a pre-programmed sequence of operation, such as Loudness, followed up Upmix, followed by Dolby E encoding.
Conditional Workflows within Engine
In addition to the basic workflow type shown above, Engine can be configured with conditional workflows. With a conditional workflow, Engine tests the file against condition 1. If it meets it, then it is processed against sequence 1. If not, it is tested against condition 2. If it meets that it is processed with sequence 2, and so on. Ultimately if the file does not meet any of the conditions, it is rejected, with an appropriate error status message explaining why the file was rejected.
Conditional workflows are created once the individual processing sequences have been defined. As a very simple example, you might expect all your files to have either two or eight channels of audio. You could create a loudness sequences for a file with two channels, and a separate sequence for files with eight channels. These two sequence profiles can of course use different loudness settings.
Finally you create a conditional workflow, tying in the two sequence profiles with testing for the number of channels of audio.
Here is a very short video that shows a conditional workflow being created. We are testing the number of audio channels in the file. If there are two channels present, we run a workflow for two channel files. If four channels are present, we run a different workflow for for four channel files. We can continue and add workflows to be used if the source has eight channels, ten channels, and so on.
In the above example, a single test is being done in each case, looking at the number of audio channels in the media file. Other tests are available, such as the following example that is configured around 8 channel files.
In this example, we first look for the presense of Dolby E encoding in channels 1 & 2, and if found run the first processing sequence. If channels 1 & 2 are PCM, we then test for Dolby E encoding in channels 3 & 4, and if found run the second processing sequence, and so on. This could be used in a workflow that needs some Dolby E channels, but some source files have Dolby and some don’t. You can configure so that the files that already have Dolby E are not changed, and those files without Dolby E have this added by encoding the PCM data in the file.
Channel Layout Detection and Silent Channel Detection
Taking things a step further, Engine can automatically determine the channel layout of most media files, reporting which channels make a stereo pair, which make up a SMPTE ordered 5.1 track, and which channels are silent. This information is reported in PDF and XML format. Using third party tools, you can parse the XML, and use this as the basis of automatically starting different workflows based upon the actual audio content in files.