Programmer Guide/SPU Reference/PPM: Difference between revisions
From STX Wiki
Jump to navigationJump to search
No edit summary |
No edit summary |
||
Line 33: | Line 33: | ||
|- | |- | ||
|<code>0</code> or <code>HOLD</code> | |<code>0</code> or <code>HOLD</code> | ||
| | |<math>v_t = max(|x_t|, |x_{t-1}|, .., |x_{t-T+1}</math> | ||
|- | |- | ||
|<code>1</code> or <code>EXPONENTIAL</code> | |<code>1</code> or <code>EXPONENTIAL</code> |
Revision as of 09:39, 9 May 2011
Level meter (PPM). This atom is used for the level display in the recorder application.
[SPU PPM X TYPE T UNIT REF SIZE OUT Y M P]
input | description | data type | value type | default value |
---|---|---|---|---|
X | input signal | number, vector | variable | |
TYPE | measurement method ( HOLD, EXPONENTIAL, RMS ) |
number (int.), string | constant | 0 (= HOLD )
|
T | measurement time constant in samples | number | constant | 100
|
UNIT | output value and unit ( VALUE, SQUARE, RATIO, DB ) |
number (int.), string | constant | 0 (=VALUE )
|
REF | reference value, used for UNIT values RATIO and DB |
number | constant | 0
|
SIZE | length of bar (graph) used for ppm display | number | constant | 100
|
output | description | data type | value type | comment |
Y | ppm value | number | variable | |
M | maximum Y | number | variable | |
P | ppm bar position, always computed for the ppm value in dB (independent of UNIT) | number | variable |
- Description
The level meter value vt (t = sample index) is computed for each value xt of the input signal X. The last vt of an evaluation cycle is used to update the outputs Y and P.
TYPE computation of vt 0
orHOLD
1
orEXPONENTIAL
2
orRMS
The last value vt of an evaluation cycle is converted to the selected UNIT and stored in the output Y.
UNIT Y 0
orVALUE
v 1
orSQUARE
v2 2
orRATIO
v / REF 3
orDB
20 * log10(v / REF)
The output M is the maximum of all computed v values converted to the selected output unit.
The output P is set to a value in range 0 to SIZE and can be used to display a level bar.
The levels -140dB to 0dB are mapped to the values 0 to SIZE using a non-linear mapping function.
- See also
<SP-atoms>