[alsa-devel] FIxed alsa-tools' envy24control missing peak level meters and "Reset Peaks"

Alan Horstmann gineera at aspect135.co.uk
Tue Jul 13 11:47:01 CEST 2010

Hi Neils,

On Monday 12 July 2010 23:41, Niels Mayer wrote:
> I've been long annoyed by alsa-tools' envy24control (*) lack of
> peak-level indication in it's metering, and the non-implementation of
> its "Reset Peaks" button:
> https://bugzilla.redhat.com/show_bug.cgi?id=602903
> I've fixed that annoyance. Now, a small white line appears above the
> highest level on each meter, and can be reset via "Reset Peaks"
> button.
> Original source:
> http://git.alsa-project.org/?p=alsa-tools.git;a=blob_plain;f=envy24control/
>levelmeters.c;hb=HEAD Patch:
> http://nielsmayer.com/npm/602903.patch

I wish I had been aware of your interest in this - in 2006-08 I coded rising 
peak and clip indicators for envy24 control, and have my versions patched.  
Unfortunately, I never got to a final re-work to submit; it has been on that 
'todo' list.  I was responsible for patches that introduced the present 
layout of envy24control, incl 'tall_eq_mixer_heights' etc.

Right now I am in the middle of other things, but I have quickly attached my 
existing patch, as you might like to try it.  I suspect many of the cc's on 
this mail will bounce (not-subscribed) so perhaps you could re-post it there.  
No guarantees though with current ALSA - I haven't updated since 1.0.18, and 
most boxes here use 1.0.12.  But I feel sure you will be able to get the 
patch to apply.  Come back with any issues.


> Next steps:
> (1) Think about building-in meter ballistics from Fons Adriaensen's
> jkmeter (
> http://www.kokkinizita.net/linuxaudio/downloads/jkmeter-0.4.0.tar.bz2 ).
> Which helps implent Bob Katz' "K System" (
> http://www.digido.com/level-practices-part-2-includes-the-k-system.html
> ). Although it probably most makes sense to implement such metering on
> the main "digital mixer" meter of envy24control, if it's not too
> inefficient, I'd want it available on all meters, despite the warning
> from Fons ( http://old.nabble.com/First-release-of-jkmeter-td18798950.html
> ).
> > This is the type of meter you want for live recording,
> > mixing and mastering. It probably makes no sense to
> > use it on all tracks of a DAW, where keeping digital
> > level within limits is the main purpose of metering.

With the attached patch, all channels have rising peaks that reset at regular 
intervals, or hold (have a play with values in 'Extras').  The marker is 
half-width only.  No meter ballistics, though!

> (2) Fix https://bugzilla.redhat.com/show_bug.cgi?id=602900 which
> causes 'envy24control' to crash when given "-D" argument.
> and behave incorrectly when given a correct non-numeric name for an
> audio device: e.g.
> >> envy24control  --card M66
> >> invalid card type (driver is USB-Audio)
> >> envy24control --card M66 --device M66
> >> Segmentation fault (core dumped)
> (3) Apply more reasonable defaults and automatically size to correct
> dimensions. I use, for example:
> >> envy24control --card 2 --outputs 4 --input 4 --pcm_output 8
> >> --view_spdif_playback --midichannel 1 --midienhanced --window_width 1275
> >> --tall_eq_mixer_heights 1 &

Bear in mind that different hardware uses this, with different graphic 
environments; what seems the obvious ideal to you may not be so for others.  
Ultimately that is the job of command line arguments, as you do now.

I use this with DMX6fire and Hoontech DSP2000.

> (4) Add midi output, in addition to midi input, which would monitor
> the hardware peak metering from the ice1712
> ("amixer -c M66 cget iface=PCM,name='Multi Track Peak',numid=45")
> and output a MIDI note-on on the corresponding MIDI channel whenever a
> specified threshold value was exceeded. This could be used to
> implement "automatic gain control" in association with the
> midi-controllable ADC gain provided by envy24control.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: e24c-AHrisingpeakclip-v1.patch
Type: text/x-diff
Size: 14791 bytes
Desc: not available
Url : http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20100713/8201892d/attachment-0001.bin 

More information about the Alsa-devel mailing list