06 July 2023

Audio Stream Tune

Added audio tuning parameters for <audio_stream /> section

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>[Action]</action> <!-- required-->
    <source>[SourceFile]</source> <!-- required -->
    <format>
        <output>[OutputFormat]</output> <!-- required -->
        <audio_stream>
            <audio_tune>
                <low_pass_filter>[FilterFrequency]</low_pass_filter>
                <high_pass_filter>[FilterFrequency]</high_pass_filter>
                <compand_points>[CompandFilter]</compand_points>
                <channel>
                    <id>[ChannelID]</id>
                    <low_pass_filter>[FilterFrequency]</low_pass_filter>
                    <high_pass_filter>[FilterFrequency]</high_pass_filter>
                    <compand_points>[CompandFilter]</compand_points>
                    <gain>[ChannelGainLevel]</gain>
                    <max_peak>[MaxPeakLevel]</max_peak>
                </channel>
                <channel>
                    <!-- audio tune channel params -->
                </channel>
            </audio_tune>
            <!-- audio_stream params -->
        </audio_stream>
        <!-- multiple audio_streams -->
        <audio_stream>
            <!-- audio_stream params -->
        </audio_stream>
        <!-- format params -->
    </format>
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "[Action]", // required
        "source": "[SourceFile]", // required
        "format": {
            "output": "[OutputFormat]", // required
            "audio_stream": [
                {
                    "audio_tune": {
                        "low_pass_filter": "[FilterFrequency]",
                        "high_pass_filter": "[FilterFrequency]",
                        "compand_points": "[CompandFilter]",
                        "channel": [
                            {
                                "id": "[ChannelID]",
                                "low_pass_filter": "[FilterFrequency]",
                                "high_pass_filter": "[FilterFrequency]",
                                "compand_points": "[CompandFilter]",
                                "gain": "[ChannelGainLevel]",
                                "max_peak": "[MaxPeakLevel]"
                            },
                            {
                                // audio tune channel params
                            }
                        ]
                    }
                    // audio_stream params
                },
                {
                    // audio_stream params
                }
            ]
            // format params
        }
    }
}
ParameterDescriptionAllowed ValuesDefault Value
Audio Tune Parameters
low_pass_filterLow Pass filter frequencyNon-negative integer numberNon-negative integer numbernone
high_pass_filterHigh Pass filter frequencyNon-negative integer numberNon-negative integer numbernone
compand_pointsCompand filter points separated by pipe symbolValid compand filter stringnone
Audio Tune Channel Parameters
idChannel ID starting from 0Non-negative integer numbernone
low_pass_filterLow Pass filter frequencyNon-negative integer numbernone
high_pass_filterHigh Pass filter frequencyNon-negative integer numbernone
compand_pointsCompand filter points separated by pipe symbolValid compand filter stringnone
gainChannel gain levelFloat number between -100 and 100 exclusivenone
max_peakMaximum true peak level. Channel volume will be decreased to hit the specified value if the channel peak value overshoot the limitNegative float number greater than -100none

Large DEE Audio Stream Normalization

Added audio normalization parameters large (over 4GB) <audio_stream /> with DEE processing

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>[Action]</action> <!-- required-->
    <source>[SourceFile]</source> <!-- required -->
    <format>
        <output>[OutputFormat]</output> <!-- required -->
            <adjust_lra>[LRALevel]</adjust_lra>
            <accepted_loudness_interval>[LoudnessInterval]</accepted_loudness_interval>
            <!-- audio_stream params -->
        </audio_stream>
        <!-- multiple audio_streams -->
        <audio_stream>
            <!-- audio_stream params -->
        </audio_stream>
        <!-- format params -->
    </format>
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "[Action]", // required
        "source": "[SourceFile]", // required
        "format": {
            "output": "[OutputFormat]", // required
            "audio_stream": [
                {
                    "adjust_lra": "[LRALevel]",
                    "accepted_loudness_interval": "[LoudnessInterval]"
                    // audio_stream params
                },
                {
                    // audio_stream params
                }
            ]
            // format params
        }
    }
}
ParameterDescriptionAllowed ValuesDefault Value
adjust_lraLRA value audio normalization that would be applied for large audio streamsPositive float number between 1 and 20 inclusivenone
accepted_loudness_intervalLoudness interval of iterative loudness normalization for large audio streamsPositive float number between 0.1 and 1 inclusive1

🚧

For adjust_lra and accepted_loudness_interval

The <adjust_lra /> and <accepted_loudness_interval /> parameters only applied for DEE processing for large audio streams with size over 4GB

🚧

For accepted_loudness_interval

We discovered, that sometimes loudness normalization performed by our default audio encoder doesn't work well, especially on complex audio with a high loudness range. Therefore an iterative loudness correction procedure may be applied. The accepted_loudness_interval parameter tunes the exit criteria for this procedure by setting an acceptable loudness interval. Corresponding to the EBU recommendation we use default value equals to 1.