There is this interesting egui project featuring different neat waveform/spectrum renderings:
Better waveform rendering #31
I am actually kinda loving the three-band spectrogram style.
I don't think it needs to be three band and i think I would prefer a spectrogram like view over the traditional stacked waveform that all everyone else uses. (One could totally do this as a texel shader in egui, gotta-go-fast)
Yes i also like it. Wonder if it would be interesting to do it 4 band or fft with couple bins. What is a texel shader? But yes would like to do it in a shader or very shader supported so that it's fast and light. The idea for the egui transition for now is to simply copy the tui. No additional ui widgets, just a ~1:1 copy. Do you have experience working with rust/egui?
sting to do it 4 band or fft with couple bins.
I have a hunch that having the bands be equal-power per track would be a neat feature.
I don't think it need affect the parameters for the equalizer but rather as a visualisation. Afaik, denon has bands that are
20-500, 500-2k(?), 2k-20k or somesuch.
How would we achieve equal power here for different sized bands? Currently i'm doing some experimentally retrieved "gain staging" of the bands to somehow make them look good for my tracks. But it fails for certain tracks, and probably is just not the correct way to do it.
obsoleszenz/librecdj@e11ab4f7e9/crates/waveform/src/lib.rs (L92)
You'd probably want to look into what's called Welch's method, calculate the power for some set bands, and then bisect until it has converged enough. but that's not for normalizing the levels - as displayed - in the bands, i was thinking that would be for setting the upper and lower limits of the different bands.
Maybe for gain staging you could do something like Ebur128 on the lows, low-mids, high-mids, highs?
No due date set.
No dependencies set.
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?