Files
lockstep/TODO.md

56 lines
2.1 KiB
Markdown
Raw Normal View History

2026-03-04 01:31:35 +01:00
## TODO
2026-03-20 23:17:34 +01:00
* analyze the (secondly or so) noise beeps in the mp3 playback
- introduced with this commit
- is it librubberband, my failure to feed it properly (buffer exhaustion), or sth else?
2026-03-22 07:37:27 +01:00
- the sizes of my buffers?
2026-03-20 23:17:34 +01:00
* correct sampling rate of libmpg123 vs. 48000 Hz using librubberband
* record accelero and write recording to file
* set feedForDelay in musicFeedThread() in PlaybackEngine.cpp
- LOGI("feed %d silence samples", num_samples);
- set the sleep delay
- ideally, set the buf size
* check playback buf size, and reduce buffer sizes
- LOGI("onAudioReady() frames=%d", frames);
2026-03-07 23:15:41 +01:00
* reduce lib size, librubberband is 1.3 M (one .so file)
- maybe we are compiling too many source files
- # TODO: see Android.mk in librubberband and copy options from `LOCAL_CFLAGS`
2026-03-04 01:31:35 +01:00
O> 16 KB paging for NDK libs
* target SDK level 35
2026-03-06 00:55:09 +01:00
* record the accelero and check why repeated fast beats result in occasional detection outages
- guess: the threshold gets pushed so high that the later beats are not detected properly
- maybe we need the `*0.6` factor after all (but verify this!)
* minimum amplitude for accelero (avoid detecting e.g. when phone is lying flat and you hammer on the table)
2026-03-04 01:31:35 +01:00
* filter away bad SQI areas of the signal (do not detect steps if we have bad SQI)
## Nice-To
* myband PlaybackEngine.cpp has latency management and other audio performance related features.
Check if the app can be improved (audio wise) by using that code instead.
* Sampling rate for accelerometer - do we need to measure actual sensor FPS, or is it stable 50 Hz?
* re-calculate IIR filter coefficients. probably not critical for 50 Hz vs. 60 Hz.
* re-visit sampling rate and channel count.
MixingPlayer currently forces both to 48000 and 2 respectively,
regardless of what Android says would be optimal.
2026-03-07 23:17:06 +01:00
2026-03-20 23:17:34 +01:00
* nice-to nice-to: ramp up audio pipelines twice - once to collect params, another one to use those
## Technical Debt
* remove duplication of `mp3file_open()` in `mp3file_open_fd()`
* malloc() nullptr result handling
2026-03-07 23:17:06 +01:00
## Before release
* check librubberband license