Keystroke binding to effect parameters

"SoX NG" <[email protected]> Mon, 15 Dec 2025 16:35:23 +0100
Newsgroups gmane.comp.audio.sox
Message-ID <[email protected]>
--===============1002093062720556137==
Content-Type: multipart/alternative;
 boundary=d3339338d4484a27ab0489fd8517d763

--d3339338d4484a27ab0489fd8517d763
Content-Type: text/plain
Content-Transfer-Encoding: 7bit

This one's a doozey. You can now make arbitrary keystrokes
adjust some of the effects' parameters in --interactive mode.

What asked for it was dolbyb.gain to set 1.0 to correspond to 220nWb
magnetic tape density:

    play -V --keymap D:dolbyb.gain+2 --keymap d:dolbyb.gain-2 foo.mp3

there's also * and / to do exponential adjustment and = to set it to a value.

The current bindings are:

centercut.gain for the -a parameter
chorus.(gain-in|gain-out)
contrast.amount
dolbyb.gain
echo.(gain-in|gain-out)
echos.(gain-in|gain-out)
overdrive.(gain|color)
phaser.(gain-in|gain-out|regen)
saturation.(blend|offset|drive|color|threshold)
softvol.(volume|double-time|headroom)
vad.(trigger-level|trigger-time|gap)
vol.gain adjusted by the gain type you specified

i.e. all the ones where the parameter value is used unadorned
in the sample loop, or a derivative of it that's easy to convert.

For things where tables need to be recalculated or
memory sizes changed, I am open to suggestions
of which parameters of which effects it would be
most useful to be able to twiddle, and evaluate
their relative difficulties to implement.
https://codeberg.org/sox_ng/sox_ng/releases

Thanks to many for the input

  M
--d3339338d4484a27ab0489fd8517d763
Content-Type: text/html
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE html><html><head><title></title></head><body><div>This one's a=
 doozey. You can now make arbitrary keystrokes</div><div>adjust some of =
the effects' parameters in --interactive mode.</div><div><br></div><div>=
What asked for it was dolbyb.gain to set 1.0 to correspond to 220nWb</di=
v><div>magnetic tape density:</div><div><br></div><div>&nbsp;&nbsp;&nbsp=
; play -V --keymap D:dolbyb.gain+2 --keymap d:dolbyb.gain-2 foo.mp3</div=
><div><br></div><div>there's also * and / to do exponential adjustment a=
nd =3D to set it to a value.</div><div><br></div><div>The current bindin=
gs are:</div><div><br></div><div>centercut.gain for the -a parameter</di=
v><div>chorus.(gain-in|gain-out)</div><div>contrast.amount</div><div>dol=
byb.gain</div><div>echo.(gain-in|gain-out)</div><div>echos.(gain-in|gain=
-out)</div><div>overdrive.(gain|color)</div><div>phaser.(gain-in|gain-ou=
t|regen)</div><div>saturation.(blend|offset|drive|color|threshold)</div>=
<div>softvol.(volume|double-time|headroom)</div><div>vad.(trigger-level|=
trigger-time|gap)</div><div>vol.gain adjusted by the gain type you speci=
fied</div><div><br></div><div>i.e. all the ones where the parameter valu=
e is used unadorned</div><div>in the sample loop, or a derivative of it =
that's easy to convert.</div><div><br></div><div>For things where tables=
 need to be recalculated or</div><div>memory sizes changed, I am open to=
 suggestions</div><div>of which parameters of which effects it would be<=
/div><div>most useful to be able to twiddle, and evaluate</div><div>thei=
r relative difficulties to implement.</div><div><a href=3D"https://codeb=
erg.org/sox_ng/sox_ng/releases">https://codeberg.org/sox_ng/sox_ng/relea=
ses</a></div><div><br></div><div>Thanks to many for the input<br></div><=
div><br></div><div>&nbsp; M<br></div></body></html>
--d3339338d4484a27ab0489fd8517d763--


--===============1002093062720556137==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============1002093062720556137==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Sox-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sox-users

--===============1002093062720556137==--