engine/audio: configurable spectrum grid for Audio Triggers - #2036
engine/audio: configurable spectrum grid for Audio Triggers#2036Ximerixx wants to merge 1 commit into
Conversation
Add spectrumgrid with uniform log and 1-2-5 semi-log band partitioning, extend AudioCapture registration by grid mode and low-band emphasis (up to 64 bands), and partition FFT bins exclusively to avoid duplicate bar levels. Expose grid mode and emphasis in VC Audio Triggers (widgets and QML), variable bar widths from Hz edges, and spectrumgrid unit tests. translate.sh: locate lrelease/lupdate on Debian Qt paths. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Please don't throw 1000 lines of AI code at me. |
Well, here's the story I wanted to use the effects in-place with the beat of the music, but it was... Honestly ass Semilog mode changes the formula on how to divide and distribute of frequencies, so that more of frequencies under 1Khz and 5kHz will be assigned to more bars Also, beat detection was changed quite a bit, now it's more sensitive, although this need usually clear audio to work properly, I was using monitoring out from the XAir mixer, instead of built in iny notebook microphone array. I know, ai code looks like slap in the face, but I tested it in real environment, works... pretty good. Only some issues with bpm and beat detection when DJs mixes songs, lol |
Summary
spectrumgridutility with LogUniform (legacy ln f bands) and SemiLogPreferred (1-2-5 decade grid with merge/split to N bands).engine/test/spectrumgrid/.translate.sh: findlrelease/lupdateunder/usr/lib/qt6/binon Debian/Ubuntu.Test plan
engine/test/spectrumgrid/spectrumgrid_test(7 tests)make check/./unittest.sh ui(Linux)qlcplus-qml, same properties in VCAudioTriggersNotes
SPECTRUM_MAX_FREQUENCYexceeds 10 kHz (still 5 kHz today).Made with Cursor