(July 2010) (0) After a decade, incremented version to 1.0. (1) Implemented "Peak Hold" functionality in meters and reimplemented meters for increased efficiency and lower X resource usage. (2) All volumes are represented as decibels, including the 0 to -48dB range of the hardware peak-meters, the 0 -to- -144dB attenuation for all inputs to the digital mixer, the 0 -to- -63dB attenuation of the analog DAC, and the +18 -to- -63dB attenuation/amplification of the analog ADC. (3) All gtk "scale" widgets have dB legends; the "PageUp" "PageDown" keys allow rapid movement between the marked levels. (4) Got rid of myriad compiler warnings and other minor fixes across codebase. -------------------- The "Monitor Inputs" and "Monitor PCMs" tabs contain multiple scale widgets grouped into L/R pairs and an associated peak-level meter. Each scale widget represents the 24 bit attenuation value of each input to the ice1712-based soundcard's digital mixer. This mixer is typically used for zero-latency monitoring of "live" inputs, alongside backing sounds and effects coming from the eight channels of PCM feeding the digital mixer. When many inputs are "hot" simultaneously these scale-widgets attenuate the inputs going into the digital mixer to prevent the output from clipping. For details see http://nielsmayer.com/envy24control/envy24mixer-architecture.png (from http://alsa.cybermirror.org/manuals/icensemble/envy24.pdf ) This is what the above manual says about the Envy24's digital mixer: > 4.5.5 Multi-Track Digital Monitoring > > The Envy24 integrates a 36-bit resolution digital hardware mixer. The > width of the data path is strictly to ensure that during processing of > all the channels, under any condition, no resolution is lost. The > dynamic range of the end user system will be limited by the range of the > physical output devices used. In order to maintain identical gain to the > input stream (i.e. 0dB), the resulting 24-bit is not msb-aligned to the > 36-bit. The overflow bits correspond to the analog distortion due to > saturation. The user would need to reduce the overall attenuation of the > inputs to avoid clipping. Insertion of the digital mixer adds only a > single sample cycle delay with respect to the original data. This > extremely low latency all digital mixer provides monitoring > functionality and can replace a traditional external analog input > mixer. There are 20 independent audio data streams to mix and control > the volume. And here's what it says about the Envy24's hardware peak metering: > Peak data derived from the absolute value of 9 msb. 00h min - FFh max > volume. Reading the register resets the meter to 00h.