Active Voice / Noise Level Monitor
The Active Voice Level Monitor computes the Active Voice Level of a signal according to the ITU-T P.56 specification, Method B.
Analyze the source signal in real-time from T1/E1 timeslots, or process the captured signal data files offline. This application is
available via the Monitor Menu under T1/E1 analyzer software.
Theory of Operation
For complete information on the calculation of Active Voice Level, see ITU-T Recommendation P.56 - Objective Measurement of
Active Speech Level. What follows in this section is a paraphrase of that document, as well as some details regarding this
implementation of that recommendation.
The Active Voice Level, and associated measures such as Activity Factor, are computed through the following processes, which
operate in parallel:
- The sample count, sum, and sum squared signal value are tracked. At any given time, the values so tracked are available to
- An amplitude "envelope" is computed. The envelope is essentially a smoothed average of absolute sample values, with recent
samples given greater weight than those in the more distant past.
- Fifteen fixed amplitude thresholds are established, the highest of which is half the full-scale amplitude. Each successive threshold
is half of the previous one. For each amplitude threshold, data are kept concerning the number of samples for which the amplitude
envelope (computed by process 2) exceeds the threshold, a quantity called the "activity count". A 200 ms "hangover time" is also
applied at each threshold to bridge momentary pauses in speech. The signal is considered "active" with respect to that level if either
the envelope value is above the threshold or the hangover time has not expired.
At any given time, the active voice level is found as follows: For each successive threshold from lowest (smallest) to highest, an
RMS power value is calculated by dividing the sum square signal value by the sample count for that threshold. Note that the power
so calculated may not differ substantially from the RMS power of the entire signal for the lowest threshold (because the activity count
there may be substantially the same as the sample count unless there are long periods of silence). The computed power value
becomes greater and greater for higher thresholds, due to the activity counts being lower.
The first threshold for which the power value so calculated exceeds the power level associated with the threshold itself by the
"margin" -- specified by ITU-T P.51 as 15.9 dB -- is taken as the upper bound threshold for the purposes of computing the active
voice level. The next lower level is taken as the lower bound. The actual active voice level is then computed by interpolation of the
levels at the upper and lower thresholds. The gory details are omitted here, but the idea is to do a binary search of the space
between the lower and upper thresholds until the difference between the intermediate active voice level and intermediate threshold
is within a specified tolerance of 15.9 dB. The tolerance used in this implementation is 0.5 dB.
The values of 200 ms. for hangover time, 15.9 dB for the margin, and 0.5 dB for the tolerance were determined heuristically.
Fifteen thresholds are used as suggested by the common use of 16-bit signed data, for which there are 15 numeric bits and one
Once the Active Voice Level has been computed, an "Activity Factor" can also be computed. This is the percentage of time that the
signal is judged to be active. Because of the nature of the algorithm described in above, this is the same as the ratio of the average
power level to the active voice level, expressed as a percentage.
The "Line In Data" panel provides controls by which you can control real-time Active Voice Level measurements. You activate this
panel by pressing the "Select" button.
The controls are:
Select Button - Press this button to activate the Line-In Data control panel. Pressing this button deactivates the File
GL Card Selection List - Select a T1 or E1 trunk from this list. You can present the full list of cards by pressing the
down arrow at the right side of the current selection.
Timeslots Panel - This panel contains push-and-latch selector buttons for each timeslot. When the button is latched
down, the timeslot is selected and will be processed the next time the "Run" button is pressed. The panel also contains two other
buttons, one of which lets you select all timeslots with a single button push, and another which lets you clear all timeslots.
All of these buttons are disabled when a run is in progress.
The "File Data" panel provides controls by which you can control offline Active Voice Level measurements. You activate this panel
by pressing the "Select" button.
The controls are:
Select Button - This is used to activate / deactivate the File Data control panel.
File Name Entry Box - Enter the file name in this box. If the file is not in the working directory, enter the file's path name,
either as a relative path name or a full path name. Use 'Browse' button to select the file to be processed. The selected file name appears
in the field.
Number Of Channels Entry Box - Use this box to specify the number of channels (range 1 - 24) to display the data from the
file selected for processing.
Data Format - Select the format of the data in the file to be processed from this list. The data formats available are: 8-bit
A-Law Compressed 8-KHz, 8-bit Mu-Law Compressed 8-KHz, 16-bit Intel PCM -8 KHz, and 16-bit Intel PCM -16 KHz.
Progress Bar - This bar indicates the progress during offline processing.
Active Voice Level statistics involving power are always reported in dB or dBm. Waveform amplitude statistics may be presented as
FS Sine and Square Waves, as a percentage of the Full-Scale value, or in equivalent millivolts, depending on the Amplitude Units selected.
Equivalent millivolts are only available for A-Law or mu-Law data.
The fields are:
Ts (Timeslot) - If Line In data is being used, this is the T1 or E1 timeslot on which the data arrives. If File data is being
used, timeslot zero receives statistics computed for the first channel in the file, timeslot 1 receives statistics from the second channel,
and so on, up to the number of channels specified in the "Number of channels" box.
AVL (Active Voice Level) - Active Voice Level, as defined in ITU-T P.56. Units are dBm for A-Law/mu-law data, and dB relative
to full-scale for 16-bit PCM data (such as from .wav files).
Act% - (Activity Factor) - This is the percentage of time that the signal is considered to be "active".
Noise - Represents the noise detected on the selected timeslots while calculating active voice level in real time or
Max - (Maximum positive waveform value) - Units are linear, % Full-scale, or equivalent millivolts. Equivalent millivolts is
only available for A-Law or mu-law data.
Min - (Maximum negative waveform value) - Units are linear, % Full-scale, or equivalent millivolts. Equivalent millivolts is
only available for A-Law or mu-law data.
AMax - (Absolute maximum waveform value) - Units are linear, % Full-scale, or equivalent millivolts. Equivalent millivolts is
only available for A-Law or mu-law data.
DC - (DC Offset) - Units are linear, % Full-scale, or equivalent millivolts. Equivalent millivolts is only available for A-Law or
RMS - is Root Mean Square value of a signal present on selected timeslots.
Amplitude-based values include Max, Min, AMax, and DC. These buttons control the display as follows:
% Full-Scale Button - Amplitude-based value is displayed as a percentage of the full-scale amplitude value. For T1/mu-Law
data, the full-scale value is 8192 counts. For E1/A-Law data, the full-scale value is 4096 counts. For 16-bit data, the full-scale value is
Counts (Linear): Amplitude-based values are displayed in linear form (that is, as ADC "counts").
Millivolts - Amplitude-based values are displayed in equivalent millivolts. Equivalent millivolts is calculated
assuming a 600 O line impedance. This button is only active for For T1/µ-Law and E1/A-Law data.
0 Db Reference
This indicates the zero point on the power measurement scale in decibels. There are
many ways that the zero point can be established. "dBov", for example, is one very commonly used 0 dB reference. The following terms
clarify some aspects of the zero dB reference.
- FS Sine Wave (Full-scale sine wave)
In an A-Law based system, this would be a sine wave that
swings between -4095 and +4095 counts. In Mu-Law, the sine wave swings between -8192 and +8192 counts. In 16-bit PCM
systems, the sine wave has minima and maxima at -32767 and +32767. Zero dB is defined as the power of the sine wave that
has minima and maxima at the extreme or "Full-Scale" (FS) values.
- FS Square Wave (Full-scale Square wave)
This works exactly the same as a full-scale sine wave,
except that a square wave is used instead. The minima and maxima are ±4095, ± 8192, and ±32767 for A-Law, Mu-Law, and
16-bit PCM, respectively. Note that the power of a full-scale sine wave is about 3.01 dB lower than a full-scale square wave. Therefore,
it makes a difference whether your power scale is based on a full-scale square wave or a full-scale sine wave. If your zero point is
defined by a full-scale square wave, then a full-scale sine wave has a power level of -3.01 dB(ov) (Note: dBov == "dB relative to
overload"). If your zero point is defined by a full-scale sine wave, then the power level of a full-scale square wave is +3.01
Applications concerned with voice and/or music signals often (but not always) use a full-scale sine wave as the 0
dB reference because of the intrinsically sinusoidal nature of sound. This can be a little confusing because computing the RMS power
of a signal leads most naturally to a power value relative to a full-scale square wave. Add 3.01 dB to convert the value to a scale
whose zero point is defined by a full-scale sine wave. The SSP library supports either choice of zero point. The default is the full-scale
dBm is a power measurement commonly used in telephony. A-Law and Mu-Law systems each
have their own calculation, but both are loosely based on a full-scale square wave approximately defining the zero point. Each
calculation also has an additional term intended to offset the effects of companding.
Two other buttons also affect the Results Display.
Reset Button - Press this button whenever you want to restart the Active Voice Level calculation. Note that the Active
Voice Level calculation is a continuous retrospective process that will continue indefinitely until the process is stopped or until the
accumulated values are discarded and the data tracking structures are reset to initial values. You can press this button to restart the
calculation beginning at the point at which the button was pressed. The data structures are always reinitialized when a new run is
Save Button - Press this button to save the contents of the results display to a file. The application responds by
presenting the Windows® File Save Dialog. Use this dialog to navigate to the appropriate folder in the Windows® file system and
specify the name for the file. The data is stored in ASCII text form.
Run Button and Run LED
Once you have specified all the parameters for an Active Voice Level measurement, press the Run button to start the analysis.
If you are analyzing T1/E1 data in real time (Line In Data), the incoming data will be processed indefinitely until you release the Run
button. For offline processing (File Data), the process terminates automatically when the end of the file is reached.
In either case, when a run is in progress, most other controls are deactivated ("greyed out"), and the Run LED next to the Run
button flashes green.
The Run button is deactivated if you have not specified the required information for a run.
To log the analysis to a specified .txt file, which can be used for data analysis, enable the 'Log File' option. For cumulative results
Statistics and independent AVL results enable the respective radio buttons which will be logged for the selected time duration
(seconds). Un-checking this 'Log every' option will put data only once. To clear the log file and to start logging afresh with every run
Clear log at beginning of each run check box is selected.
Please Note: The XX in the Item No. refers to the hardware platform, listed at the bottom of the Buyer's Guide, which
the software will be running on. Therefore, XX can either be ETA or EEA (Octal/Quad Boards), PTA or PEA (tProbe Units),
UTA or UEA (USB Units), HUT or HUE (Universal Cards), and HDT or HDE (HD cards) depending upon the hardware.
Back to List of T1E1 Basic and Optional Applications Index Page