jacqueline
ef72b25660
use prototype inheritance for lua screens, rather than functions
...
this gives us a way to give each screen nice little hooks, like
'onShown' and 'onHidden'. later we can use these hooks to disable
bindings for screens that aren't in-use.
1 year ago
jacqueline
1455288190
Restore the previous track position when booting
1 year ago
ailurux
6586819171
WIP Commit- Lua setters for volume, bluetooth todo
1 year ago
jacqueline
b2f0e6d3a4
Clear the drain buffer also when seeking
1 year ago
jacqueline
173b09b015
Clear the drain buffer when skipping between tracks
1 year ago
jacqueline
e7e6c70fb3
Remove unused 'SeekTo' method on codecs
1 year ago
jacqueline
d41f9f7033
Use drflac instead of miniflac
...
This one is fast as hell! Does seeking really good too. Thank u Doctor
Flac.
1 year ago
jacqueline
77145e56f4
basic working flac and mp3 seeking
...
flac impl is fairly slow as it doesn't use the seek tables; for some
reason miniflac seems to get *really* upset if you seek the stream.
1 year ago
ailurux
5141c9f0bd
Add time.ticks to lua bridge
1 year ago
ailurux
f54347794f
WIP: Flac not working-- coming back to this later
1 year ago
jacqueline
f9aec8b690
split the lua thread registry into its own files
1 year ago
jacqueline
4b2003c78a
Make property bindings shared amongst all lua threads
1 year ago
jacqueline
28651fa7e1
Wait for the sink buffer to drain before stopping playback
1 year ago
jacqueline
29a246a733
Make the drain buffer very large, and move it into PSRAM
...
the i2s handler and streambuffer metadata are both still in iram for
good performance. otherwise, this seems to be enough to make gapless
playback work.
1 year ago
jacqueline
c035ed2b4d
Don't mark the current track as changed when falling off the end of the queue
1 year ago
ailurux
912060de1b
Vorbis seeking impl
1 year ago
ailurux
0baad11b18
WIP: Vorbis seeking
1 year ago
ailurux
aece1c6b58
Opus seeking impl
1 year ago
ailurux
c60bb9ee42
Fix issue with seeking whilst paused
1 year ago
jacqueline
5866513c53
Move the list of unexplored files into spiram
1 year ago
ailurux
665679b885
WIP: seeking in lua example
1 year ago
ailurux
a49d754da6
Seeking working with hardcoded event, wav only
1 year ago
ailurux
62f6179abe
Added offset for track seeking, wav impl. only rn
1 year ago
jacqueline
c5917658e6
Cram one of the flac samples buffers into internal ram
...
Can't quite fit the second... yet. Just one is a pretty reasonable
speedup, though! Probably bc we're not hammering the spiram cache so
hard.
1 year ago
jacqueline
4bc77f901b
Tweak opus build flags and allocs
...
This gets us to ~40% of one core cpu usage during playback. Good enough
for a while I reckon!
Paid for the internal ram usage by reclaiming some stack size headroom.
1 year ago
jacqueline
7ec0ff2589
Switch to the lowmem tremor branch
...
in addition to using slightly less memory, this branch also doesn't seem
to have the same issues with `-O2` builds that the main branch has.
1 year ago
jacqueline
b31bc07555
fix (improve?) libtremor strangeness
...
something fucky
1 year ago
jacqueline
786546653a
include repeat, replay, and shuffle in persisted queue info
1 year ago
ailurux
ffa0894e38
Fixed clamp and write on scroll sensitivity
1 year ago
ailurux
bbbe3a3d55
Updated sensitivity nvs store
1 year ago
ailurux
26ae027d67
Sensitivity value now between 0 and 255
1 year ago
jacqueline
cb379f4bc3
Cache pending nvs writes in memory
...
Includes refactoring nvs settings to be a bit less duplicated
1 year ago
ailurux
0426d245c8
Scroll sensitivity configurable, but inverted
1 year ago
jacqueline
c5cef16c95
Remove some logging whoopsies
1 year ago
jacqueline
a37b517356
Improve handing of tracks with missing titles
1 year ago
jacqueline
cb0c42060b
more i2s/bt drain buffer size tweaks
1 year ago
jacqueline
26df5c4a7f
Remember per-device bluetooth volume
1 year ago
ailurux
527374c72e
Don't hold lock on notifyChanged
1 year ago
ailurux
9512bd97bb
Add buttons for shuffle + repeat track
1 year ago
Robin Howard
7d66572b0f
Adds base dropdown-list styles.
...
Fixes dropdown contents being painted directly on top of anything
sitting below them.
1 year ago
Hailey Somerville
aa2402ab56
include memory_resource in tasks.hpp
1 year ago
jacqueline
a7ac34eaa9
hack around deadlock during bt disable
1 year ago
jacqueline
c1b03c151e
put opus' allocations into internal ram
...
it's a pretty chonky codec, but this seems like the best way to tame its
performance.
1 year ago
jacqueline
18345a1c2c
Silence chatty touchwheel log
1 year ago
jacqueline
c0be3f863f
Deliver AVRC events on a background thread
...
We don't currently do anything with them, so need to wait for the lock
on the bt thread
1 year ago
jacqueline
1b7821a474
improve the locking strategy of the bluetooth fsm
1 year ago
jacqueline
d23435fab7
Retry bt device connections
...
i hate this janky-ass protocol
1 year ago
jacqueline
aff28342d9
let the bluetooth stack handle its own discovery state
1 year ago
jacqueline
0bb12912bc
Implement basic volume control for bt outputs
1 year ago
jacqueline
99c56641e9
fix various of bluetooth issues
...
connecting and disconnecting is a bit more consistent now!
1 year ago