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.
 
loudness upmix
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.
conditional1
 
Here is a very short video that shows the above conditional workflow being created. We are testing the number of audio channels in the file. If there are two channels present, we run a sequence for Loudness Compliance in two channel files. If eight channels are present, we run a sequence for Loudness Compliance in eight channel files. If a four or sixteen channel file was used with this workflow, it would be rejected as having an incorrect number of channels.
 

 
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.
conditional2
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.
 
Auto eXAMINE
In the these examples, files are rejected if they do not meet any of the test criteria. Sometimes it might be helpful to instead produce a report of these files, giving much more detail on the contents, and this is done using the eXAMINE option.
conditional3
Here we have a configuration where we expect Dolby E to be present on channels 1 & 2, and if it is, we process according to our specified sequence. However if Dolby is not present, then we run an eXAMINE process, and produce a PDF or XML report on the contents of the file.
 
Coming soon
 
Additional test choices will be added soon, including a test for silent channels. This could be used to trigger the creation of an upmix for files where this is missing, without needing operator assistance.