Commit Graph

1163 Commits

Author SHA1 Message Date
Troy
dfab0ca402 Accepting more Softhack007 suggestings 2024-04-14 15:21:07 -04:00
Troy
af028b5890 Accepting some Softhack007 suggestions 2024-04-14 14:39:15 -04:00
Frank
6e24850073 ar_energy: improved energy reconstruction
fftResult[] is indended to look good on GEQ, and has a very "twisted" representation of FFT results only. This change improves reconstruction of signal energy, by on-doing some of the "GEQ enhancements" in fftResults[].
2024-04-10 18:56:23 +02:00
Frank
70bfbd5a43 ar_energy: fix a math error
fixing mis-optimized math when calculating energy.
energy = sum(amplitude^2). this is not the same as sum(amplitude)^2.

Example:
1+5+7 = 13; 13 * 13 = 169
1*1 + 5*5 + 7*7 = 75
2024-04-10 13:42:21 +02:00
Frank
03cbc52c65 ar_energy small improvements
* use named constant instead of "100"
* make change_threshold_change more robust against negatives
* unloadPlaylist() before activating a new playlist
2024-04-09 19:23:28 +02:00
Frank
2a4810f437 autoplaylist filter improvements
* initialize slow and fast filters with current values (first call only) - reduces time for filter stabilization

* use slightly optimized variant of "rolling average" filter (result is exactly the same)
  --> replaced `xX = xX * (1-a) + newX * a;`  by  `xX = xX + a * (newX - Xx);`

* use constants for filter parameters (for tinkering and improved readability)
2024-04-07 21:31:53 +02:00
Frank
5186c0fdb6 autoplaylist bugfix for playlists with only one preset
* prevent infinite loop in case that there is only one preset in a playlist
* fixing two typos
2024-04-07 21:23:01 +02:00
Frank
1ca7faf142 Merge branch 'mdev' into pr/124 2024-04-06 21:15:24 +02:00
Troy
02b464f283 Smoothing sound detection 2024-04-05 15:45:21 -04:00
Troy
f9eb6d2300 functionality_enabled logic 2024-04-05 12:04:39 -04:00
Troy
abc811484d Added new internal functionality enabled tracking 2024-04-05 11:31:08 -04:00
Frank
bf6932ecb7 ar_energy: reduced zeroCrossingCount magnitude by 1/3
zero crossing counter is often larger than in the prototype by @troyhacks - due to calculation after filtering (catches more crossings), and due to the fixed condition for detecting zero crossings (doubles the number of crossings).

This patch reduces the final value to 2/3, so it typically stays below 256.
2024-04-05 14:57:55 +02:00
Troy
39f7a2e187 Removed button, bettr Info pane, debug flag. 2024-04-04 21:32:26 -04:00
Frank
b72e402a2d bugfixing
* make filters work (requires float instead of integer)
* avoid "expression propagation to double" by using float constants
* use unsigned long for all variables that depend on millis()
2024-04-05 00:31:14 +02:00
Frank
c9c9f409f4 Merge branch 'pr/125' into pr/124 2024-04-04 23:53:59 +02:00
Frank
f6fa2232e5 Merge branch 'mdev' into pr/124 2024-04-04 23:53:34 +02:00
Frank
33b46b820f optimizations and bugfixing
* calculate zero crossings after filtering out DC offsets
* update effect variable only once
* fix a logic error when detecting zero crossings
* fix array bounds violation when creating umdata entries
2024-04-04 23:52:31 +02:00
Frank
4efdb2457e Merge branch 'mdev' into pr/125 2024-04-04 23:01:34 +02:00
Troy
c3bf851613 Higher possible change threshold 2024-03-30 15:09:59 -04:00
Troy
1f659aa1bf "Enabled" mostly working 2024-03-30 12:54:28 -04:00
Troy
c36adbdad0 Button added to Info panel. Logic needs work. 2024-03-30 12:30:32 -04:00
Troy
04a8681f71 WM8978 fix for IDF below 4.2.0 2024-03-30 11:09:14 -04:00
Will Tatam
ebab56ada5 Update logger 2024-03-29 13:39:09 +00:00
Will Tatam
1e934d3426 Prevent crash trying to load playlist -1 2024-03-29 12:47:51 +00:00
Will Tatam
d9dceb64ed Attempt at adding zeroCrossingCount to audio-sync 2024-03-28 20:06:47 +00:00
Will Tatam
cce7d4c79e Cleanup 2024-03-28 19:57:42 +00:00
Will Tatam
9eabbf3789 Sync audio_rective changes from auto-playlist branch 2024-03-28 19:40:59 +00:00
Will Tatam
494646a21e Tweak status 2024-03-28 19:22:54 +00:00
Troy
cd8884dbf7 Skip change logic for distance freefall 2024-03-28 08:55:18 -04:00
Troy
9b8f0ba873 Bug fix with um_data length 2024-03-27 16:12:38 -04:00
Troy
58184a5a74 Moved calcs into usermod except zero crossings 2024-03-27 15:45:32 -04:00
Troy
022b3100f1 Comments and debug faff. 2024-03-27 15:15:03 -04:00
Troy
d922374e92 Better change window tracking. 2024-03-27 10:48:55 -04:00
Troy
13bfe6018d Faster change_threshold catch-up 2024-03-26 08:13:56 -04:00
Troy
3279134a4b Tidy 2024-03-25 18:52:33 -04:00
Troy
793b1089ac Better debug 2024-03-25 14:42:12 -04:00
Troy
cc01e38cad Comments added. 2024-03-25 12:15:31 -04:00
Troy
977002f30c better debug messages 2024-03-25 08:58:34 -04:00
Troy
b52773c1d3 comments and some temp removal of other debug 2024-03-25 08:27:12 -04:00
Troy
5ff44755d8 calculations based on normalized FFT results 2024-03-25 08:19:05 -04:00
Troy
901e4fa83e Better automatic change_intervals 2024-03-23 22:19:10 -04:00
Troy
9e9b014959 change_threshold pushback when window missing. 2024-03-23 18:22:44 -04:00
Troy
2fe86bde5d Feature complete... and better! 2024-03-23 17:41:34 -04:00
Troy
8d687b3a86 Debugging 2024-03-23 10:10:09 -04:00
Troy
734ba39399 Fixes. Auto is too animated. 2024-03-23 09:29:32 -04:00
Will Tatam
fd714e3e0f Remove buttton 2024-03-22 00:07:36 +00:00
Will Tatam
cfafa0d358 Auto disengage 2024-03-21 23:32:44 +00:00
Will Tatam
2fdd438d34 Disable AutoPlaylist if user makes manual change 2024-03-21 20:06:29 +00:00
Will Tatam
c4cb5af78c Disable auto-playlist if manual selection is made 2024-03-18 14:57:41 +00:00
Will Tatam
3ed5b89efc Skip if turned off 2024-03-14 20:16:23 +00:00