jacqueline
|
499d5a942f
|
Add a wrapper codec source that does readahead
|
1 year ago |
jacqueline
|
d36fe9be6b
|
Use atomics for new file notification instead of a semaphore
|
1 year ago |
jacqueline
|
912f9c0757
|
Free the i2s dma channel when it's not in use
It turns out this is why bluetooth playback keeps running out of memory
/facepalm
|
2 years ago |
jacqueline
|
7523772886
|
Decouple play/pause from output on/off
I think this was the cause of toggling play/pause making audio go away.
Or at least I can't repro that bug anymore, anyway.
|
2 years ago |
jacqueline
|
5c04e2ad8d
|
Neaten up the various kinds of inputs, and move volumes to The New Way
|
2 years ago |
jacqueline
|
8608f9367f
|
Tune buffer sizes and locations for I2S
|
2 years ago |
jacqueline
|
4d99d22e10
|
std::string -> std::pmr::string in psram
|
2 years ago |
jacqueline
|
b192975cb1
|
make bluetooth pairing ui functional
|
2 years ago |
jacqueline
|
0032896251
|
Move UI task to priority 0 during playback
Also other misc task cleanup
|
2 years ago |
jacqueline
|
d5d6e3993c
|
Support changing max volume, persisted to nvs
|
2 years ago |
jacqueline
|
320fdeb9d8
|
Use a service locator instead of passing around subsets of drivers between FSMs
|
2 years ago |
jacqueline
|
a1327763ab
|
Support play/pause toggling
|
2 years ago |
jacqueline
|
8ff93f5467
|
Make idle state more robust + check playback state
|
2 years ago |
jacqueline
|
f3c5eec025
|
Rename the main audio tasks to be more sensible
|
2 years ago |
jacqueline
|
c635d5011c
|
Put more audio pipeline wiring in control of the audio fsm
|
2 years ago |
jacqueline
|
4e27de21e4
|
clean up a bunch of obselete audio code
|
2 years ago |
jacqueline
|
d6b83fcf4a
|
Flesh out basic bluetooth support
No ui yet, and performance isn't great. It kinda works though!!
|
2 years ago |
jacqueline
|
9ddaca4fcb
|
remove unused dithering stuff
|
2 years ago |
jacqueline
|
a4ba7350a7
|
Fix docs nits, avoid recalculating frame length
|
2 years ago |
jacqueline
|
06283e0714
|
Fix issues with timing stereo streams
|
2 years ago |
jacqueline
|
c37ccb9851
|
Reintroduce track timer, now relying more on codecs
|
2 years ago |
jacqueline
|
958160aa54
|
Use the libspeexdsp resampler
AFAICT it runs a little slower? but it's fixed point, and has much
better understood audio characteristics.
|
2 years ago |
jacqueline
|
d8fc77101d
|
Give codecs complete control of their input files
|
2 years ago |
jacqueline
|
c38754401b
|
Downscaling working!
|
2 years ago |
jacqueline
|
a66c342806
|
Resampling *basically* working? Just cleanup and buffering issues
|
2 years ago |
jacqueline
|
4118d880c3
|
Fix dangle build issues, do some tweaks to investigate performance
|
2 years ago |
jacqueline
|
60f7677132
|
Do our own resampling
|
2 years ago |
jacqueline
|
31f6123b7b
|
Tweak buffer size and placement
|
2 years ago |
jacqueline
|
3511852f39
|
Add very limited resampling (it's slow as shit)
|
2 years ago |
jacqueline
|
cdaa2ac97a
|
Add duration for flacs
|
2 years ago |
jacqueline
|
485eed2890
|
use libtag duration where available
|
2 years ago |
jacqueline
|
3670859d16
|
Volume control! Reasonable default volume! Hooray!
|
2 years ago |
jacqueline
|
b05db70c14
|
Fix premature end of track
|
2 years ago |
jacqueline
|
9b1b401dcb
|
big cleanup of new encoder + stream buffer types
|
2 years ago |
jacqueline
|
d8194135bb
|
Do time tracking without floats
|
2 years ago |
jacqueline
|
80d7df9109
|
fuck off
|
2 years ago |
jacqueline
|
7197da21f6
|
Basic playlists for upcoming
Beware under-testing and bugs. Just getting something barebones in so
that I can do rN+1 bringup
|
2 years ago |
jacqueline
|
39f7545cd5
|
wire up the playing screen with some real data
Includes implementing song duration calculation for CBR MP3 files
|
2 years ago |
jacqueline
|
ec28b36a44
|
gpio expander pin change -> event!
|
2 years ago |
jacqueline
|
371f0a20ca
|
Clean up gpios interface
|
2 years ago |
jacqueline
|
0347555d5b
|
Start on converting gpio expander interupts to fsm events
|
2 years ago |
jacqueline
|
b58b072d2d
|
Add current playback timestamps
|
2 years ago |
jacqueline
|
acccd822f0
|
back to back flac playback is working :)
|
2 years ago |
jacqueline
|
6ff8b5886e
|
Support playing tracks by track id
|
2 years ago |
jacqueline
|
c6bb42cdd2
|
song -> track
|
2 years ago |
jacqueline
|
a2c1dfbabd
|
Add vorbis and flac decoders, flesh out codec interface
vorbis doesn't quite work yet, not sure why. will pick it up again
later.
|
2 years ago |
jacqueline
|
e12ac1d963
|
Do some prep cleanup for multiple filetypes
|
2 years ago |
jacqueline
|
1f903accd9
|
Flesh out audio state machine for playback
Also fix mono playback
|
2 years ago |
jacqueline
|
610991455d
|
R4 pre-emptive bringup
Includes stripping out the IC-specific I2S stuff, and doing more manual
volume control using pots
|
2 years ago |
jacqueline
|
8a2a2d2265
|
Get basic audio playback going again
|
2 years ago |