On 05/02/25 20:38, Dr. Thomas Tensi via Sox-users wrote: > > I'm thinking of removing it as useless and distracting > > baggage. > > I think this is too extreme to just throw it out. > We had some discussion in issue 276 > (https://codeberg.org/sox_ng/sox_ng/issues/276) what a good > sequential delay could be. > > So my preference would be to set up some sequential > delay where not all stages are fed with the same input > signal, but instead with some sum of previous stages... As long as it does something that you can't do with any of the current effects, and is generic enough to be able to construct any of the kinds of delay we see in the literature: multi-tap (which can probably already be done with "echo" already, if with some effort) and feedback for example. > > There are other reasons to start thinking of a major > > release 15.0.0; nothing startling but a few > > non-backward-compatible changes are beckoning like making > > `silence` trim from the silence point instead of 0.02 > > seconds after it, > > Which is wrong by any reasonable considerations ... > > > not something we can put in 14.X because at least one > > artist has already used this discrepancy to achieve the > > result they wanted. > > Hmm, I cannot see the use case for that behaviour. Maybe > some playing around with the thresholds and the durations > could take care of that? I think "silence" is so broken that we can't hold off from changing it. It now doesn't regurgutate random fragments of the input after the proper output but has other problems still. Once we remove the random garply, the gate is open for other fixes, but we should release them all at once (in the next minor release in May probably, unless I remain a fanatic about keeping any functional changes for a major release, but that's increasingly seeming an untenable position for "echos" and "silence"). > > it is not a chorus, which is the addition of delayed > > and detuned version of the same signal; it is a simple > > flanger, > > Now you've lost me. When you are modulating a delay line, > you will get a vibrato on the original signal with some > slight delay. A real chorus takes one instrument sound and makes it sound like there are several of them playing not entirely synchronously and at very slightly different pitches. See http://csounds.com/toots/#toot4 - Chorusing In SoX that would be sox -n out.au synth 10 saw 100 synth saw mix 101 for a chorus of a 100Hz tone with a wahwah frequency of one second and a very different set of additional harmonics, with strong ones at 25, 26, 50, 51, 75, 76, 125, 126 and so on and weaker ones at every multiple of 1Hz (that's from looking at it on a spectrogram. I don't understand why 25 should be special when the inputs only have components of 100Hz, 101Hz and their multiples). The SoX "chorus" effect does phase modulation which does play with detuning but with a sawtooth modulator you get a slightly higher and slightly lower version alternately, and of a frequency difference that depends on the slope of the modulator wave, not on it frequency. With sine wave modulation, the frequency of the phantom second instrument is the first one with a kind of vibrato that makes its frequency wobble round the original, and not even by an easily predictable amount, since it depends on the slope of the delay modulation wave, not on its frequency, and probably a few other parameters as well. To mix with a constantly different frequency by that technique, the modulation wave would need to be an ever-rising delay time, which would make the original and choral voices get progressively further out of sync with each other. Yes, there are a lot of things called "chorus" out there which are just modulated delay simply because it's cheaper and easier to implement. A real chorus would need to detune the signal, probably FFT-ing it, shifting the frequency components up or down a bit and resynthesizing, and then mix. > The current fixed chorus does exactly that > with as many parallel stages as you like - at least 7. Good. Getting rid of fixed size limits is also on the list and the number of "echo" stages is now unlimited. Its maximum of 7 stages was a pointless fiction based on two misconceptions by its author: that it worked internally in integers (it doesn't, it works in floats) and that the maximum number of 24-bit signals you can add together into a 32-bit word is 7 (it isn't, it's 255 or maybe 256). "echos" has always has an unlimited number of stages AFAIK. "chorus"' current limit of 7 stages may also be bogus or at worst should be 255; I haven't looked hard at it yet. > What we were talking about in another thread is the > similarity of phaser and flanger. > The phaser effect is similar to a flanger, > but the comb-filtering is somewhat different. > > So as already mentioned we should leave the chorus, but > replace the phaser (or leave it for compatibility reasons as > is and add a "fazer" effect as you had proposed). and to avoid confusion, let "the SoX chorus effect" mean the time-modulated delay thing, "khorus" mean the mixing of detuned signals and plain "chorus" a vague term that has been applied to many different effects (and not just these two - every guitar pedal is different!) > https://en.wikipedia.org/wiki/Chorus_(audio_effect) > > The effect is achieved by taking an audio signal and > mixing it with one or more delayed copies of itself. The > pitch of the added voices is typically modulated by an > LFO, which is implemented similarly to a flanger, except > with longer delays and without feedback. Yeah. Whoever wrote that only knew about the modulated delay lines that are so commonly used to make an affordable effect. For a real chorus you have to hire several dozen singers instead of paying one and putting them through a guitar pedal! > In my opinion the current chorus is a "real chorus", but I'm > happy to be corrected. It's my pleasure :) M Just joking. I don't have the truth in my pocket either. _______________________________________________ Sox-users mailing list Sox-users@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/sox-users