Commit Graph
100 Commits
Author SHA1 Message Date
jacqueline 93ccf11fc5 Investigate and improve core pinning for resampler 2023-08-08 13:47:08 +10:00
jacqueline 6c99f9f2fe Fix resampler issue, do a little performance tuning 2023-08-08 11:36:10 +10:00
jacqueline 49f82d2f3d Use a timer to keep framerate consistent 2023-08-07 20:47:59 +10:00
jacqueline d71682d26e Add a console command for task-level performance checks 2023-08-07 20:47:42 +10:00
jacqueline 40475b15e8 Remove unused pcmconv impls 2023-08-07 19:15:53 +10:00
jacqueline c38754401b Downscaling working! 2023-08-07 18:22:15 +10:00
jacqueline a66c342806 Resampling *basically* working? Just cleanup and buffering issues 2023-08-07 15:20:12 +10:00
jacqueline 4118d880c3 Fix dangle build issues, do some tweaks to investigate performance 2023-08-07 09:47:44 +10:00
jacqueline 60f7677132 Do our own resampling 2023-08-04 20:07:44 +10:00
jacqueline 3b240d1cd5 remove stb_vorbis
it doesnt work very well
2023-08-03 16:16:46 +10:00
jacqueline 31f6123b7b Tweak buffer size and placement 2023-08-03 16:04:27 +10:00
jacqueline 3511852f39 Add very limited resampling (it's slow as shit) 2023-08-03 15:32:28 +10:00
jacqueline fbebc52511 Add libsamplerate for resampling decoder output 2023-08-01 14:00:31 +10:00
jacqueline 55429fa623 Ignore helix config 2023-08-01 12:14:26 +10:00
jacqueline 955a8ce303 Basic nvs init + bluetooth in the build 2023-08-01 12:13:48 +10:00
jacqueline d41de537a0 fix libtags m4a issue 2023-07-31 12:19:04 +10:00
jacqueline 34a4207fb9 Log specifics of hash collisions 2023-07-31 11:33:58 +10:00
jacqueline 8f0b942cdd Return zeroes when the touchwheel isn't connected 2023-07-31 11:09:31 +10:00
jacqueline cdaa2ac97a Add duration for flacs 2023-07-31 11:06:27 +10:00
jacqueline 0a8d2fd12e fix flac playback. now it plays nice and smooth :) 2023-07-31 10:14:03 +10:00
jacqueline a5022ac6cb fix bsd-ish callback behaviour 2023-07-31 09:52:00 +10:00
jacqueline 485eed2890 use libtag duration where available 2023-07-31 09:41:49 +10:00
jacqueline 97bd3be892 clang-format 2023-07-28 15:25:44 +10:00
jacqueline 9d33c33c8d Lock button does that same thing always 2023-07-28 15:25:31 +10:00
jacqueline 10120f9a92 ux fixes 2023-07-28 15:21:18 +10:00
jacqueline 3670859d16 Volume control! Reasonable default volume! Hooray! 2023-07-28 13:01:18 +10:00
jacqueline 72fe82ebc4 apll go brr 2023-07-26 21:21:13 +10:00
jacqueline b05db70c14 Fix premature end of track 2023-07-26 17:36:10 +10:00
jacqueline 9b1b401dcb big cleanup of new encoder + stream buffer types 2023-07-26 17:11:23 +10:00
jacqueline f94be3db2f make event queue go faster 2023-07-26 11:23:36 +10:00
jacqueline d8194135bb Do time tracking without floats 2023-07-25 21:17:38 +10:00
jacqueline 80d7df9109 fuck off 2023-07-25 17:43:12 +10:00
jacqueline 7b72e5479e fork the esp-idf fatfs for f_forward and exfat support 2023-07-25 17:42:00 +10:00
jacqueline 9287c4eb8c 5.1 fixes 2023-07-20 22:12:17 +10:00
jacqueline 4c1f150cbf bump to v5.1 for i2s fixes 2023-07-20 22:02:55 +10:00
jacqueline 230af8e105 Initial r5 bringup 2023-07-20 21:57:55 +10:00
jacqueline 7197da21f6 Basic playlists for upcoming
Beware under-testing and bugs. Just getting something barebones in so
that I can do rN+1 bringup
2023-07-17 16:54:35 +10:00
jacqueline b6bc6b9e47 Ui polish and fleshing out 2023-07-13 10:58:06 +10:00
jacqueline 2dc700b12f Fix browser navigation crashes 2023-07-13 09:37:32 +10:00
jacqueline 8eabeedbb9 Make title bar a common component, some ui nits 2023-07-12 22:34:19 +10:00
jacqueline 50bb261f67 Make now playing screen interacting, including nice scrolling 2023-07-12 17:11:24 +10:00
jacqueline 9fb34e10d9 add logging to catch future index weirdness 2023-07-12 14:19:28 +10:00
jacqueline 23227d0986 clang format 2023-07-12 10:36:29 +10:00
jacqueline df22bed072 Include title in indexes to avoid a per-record disk read
GOTTA GO FAST
2023-07-12 10:36:06 +10:00
jacqueline 67ab8bf515 Bundle our own complete ui font + symbol font 2023-07-12 09:59:54 +10:00
jacqueline ae076936ae Fix browser view jank 2023-07-11 17:28:56 +10:00
jacqueline 6d29b9f007 Hide unhelpful scrollbar 2023-07-11 15:46:55 +10:00
jacqueline ec71647d4d Merge branch 'main' of git.sr.ht:~jacqueline/tangara-fw 2023-07-11 15:43:38 +10:00
jacqueline 031cd99ea1 add note on toc field 2023-07-07 21:16:40 +10:00
jacqueline 804aa38bff clarify mp3 seek weirdness 2023-07-07 19:13:43 +10:00
jacqueline 8f8bc1f088 vbr-compatible mp3 duration :) 2023-07-07 18:26:10 +10:00
jacqueline 739f495fe2 Merge branch 'main' of git.sr.ht:~jacqueline/tangara-fw 2023-07-07 15:30:49 +10:00
jacqueline b6e0e0dd4a Merge branch 'functional-playing' 2023-07-07 15:30:19 +10:00
jacqueline 39f7545cd5 wire up the playing screen with some real data
Includes implementing song duration calculation for CBR MP3 files
2023-07-07 15:29:47 +10:00
jacqueline a48516221f final(?) splash image 2023-07-06 13:40:40 +10:00
jacqueline 5af0ff2972 smaller, gayer. 2023-07-06 08:55:49 +10:00
jacqueline 161815a268 Merge branch 'splash' 2023-07-05 20:28:59 +10:00
jacqueline 06ce512ce9 Fix background color 2023-07-05 20:28:51 +10:00
jacqueline 2f16d23002 Start on wiring up playback screen to real data 2023-07-05 20:09:03 +10:00
jacqueline 8c02ed47b5 add gay splash screen 2023-07-05 19:33:53 +10:00
jacqueline 7eec2cc5b6 Comment out leveldb logging
It sometimes produces a weird format string that breaks everything
2023-07-05 17:13:19 +10:00
jacqueline 75955fc47c Reset styles, flesh out playback and browser screens 2023-07-05 17:06:34 +10:00
jacqueline 191441ebe2 Add missing files >.< 2023-07-04 14:39:22 +10:00
jacqueline 80170642ea Add basic browsing and playing ui 2023-07-04 13:06:33 +10:00
jacqueline ec28b36a44 gpio expander pin change -> event! 2023-06-30 21:01:25 +10:00
jacqueline 371f0a20ca Clean up gpios interface 2023-06-30 20:48:40 +10:00
jacqueline 0347555d5b Start on converting gpio expander interupts to fsm events 2023-06-30 17:05:11 +10:00
jacqueline 9763cc955c Improve encoder driver
It actually works and clicks now!

Still a bit rough though. Need to dive into lvgl internals to work out
what it's doing with enc_diff
2023-06-26 12:55:46 +10:00
jacqueline c124c8f94d support both files and ids in play 2023-06-26 10:39:20 +10:00
jacqueline 072c2c23e5 Parse and zero-pad track numbers 2023-06-23 21:33:14 +10:00
jacqueline 245d9ff4b9 add indexing to the database
idk man i wrote most of this in a fugue state whilst high on the couch
with my cat
2023-06-23 15:32:11 +10:00
jacqueline aee0474191 Add a shared string library 2023-06-23 15:31:45 +10:00
jacqueline cde8002df4 Fix (i think?) mysterious overly large reads in libmad 2023-06-22 09:40:46 +10:00
jacqueline b58b072d2d Add current playback timestamps 2023-06-21 15:33:51 +10:00
jacqueline 23ecff1011 Fix spurious stream starts 2023-06-21 13:37:50 +10:00
jacqueline 8fed966c96 Merge branch 'main' of git.sr.ht:~jacqueline/tangara-fw 2023-06-19 15:47:04 +10:00
jacqueline acccd822f0 back to back flac playback is working :) 2023-06-19 15:36:43 +10:00
jacqueline 0c81c3e1f6 paths with spaces? wow!! 2023-06-19 09:15:19 +10:00
jacqueline 6ff8b5886e Support playing tracks by track id 2023-06-19 08:51:34 +10:00
jacqueline 4e5dba1583 Fix leveldb's alignment assumptions (we have 4 byte alignment) 2023-06-19 08:49:48 +10:00
jacqueline 5b7b88420b Fix issues with importing my entire library 2023-06-16 13:14:45 +10:00
jacqueline c6bb42cdd2 song -> track 2023-06-15 10:42:28 +10:00
jacqueline 0024bb1dbe Remove chatty loggin 2023-06-15 10:34:41 +10:00
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.
2023-06-15 10:33:46 +10:00
jacqueline 1238437717 Add flac and ogg decoder deps 2023-06-08 08:02:37 +10:00
jacqueline e12ac1d963 Do some prep cleanup for multiple filetypes 2023-06-07 15:39:28 +10:00
jacqueline 7e96482087 fix shared peripheral interrupts causing hangs 2023-06-07 13:45:27 +10:00
jacqueline 1f903accd9 Flesh out audio state machine for playback
Also fix mono playback
2023-06-07 13:19:45 +10:00
jacqueline 2a568846bd Cute brightness fade to avoid ugly startup :) 2023-06-07 10:30:33 +10:00
jacqueline 610991455d R4 pre-emptive bringup
Includes stripping out the IC-specific I2S stuff, and doing more manual
volume control using pots
2023-06-07 09:50:25 +10:00
jacqueline d2e5d2ab3c Fix up screen brightness and transitions 2023-06-06 11:49:41 +10:00
jacqueline 8a2a2d2265 Get basic audio playback going again 2023-06-06 10:20:46 +10:00
jacqueline ee5f662f9b Fix missing service impl 2023-06-01 15:52:07 +10:00
jacqueline 56c1b5f93b Fix include weirdness for lvgl 2023-06-01 15:42:39 +10:00
jacqueline dd27c35304 convert lvgl from submodule to a plain old directory 2023-06-01 15:41:47 +10:00
jacqueline 6fd588e970 Add touchwheel -> encoder adapter 2023-06-01 15:28:54 +10:00
jacqueline db2e29a72d Start on audio FSM playback. needs more thought. 2023-06-01 15:28:10 +10:00
jacqueline 4b93bb22db fish :) 2023-05-25 14:53:17 +10:00
jacqueline 65833649f4 Add some placeholder splash and menu screens
Includes a bunch of misc display fixes. Most significantly, our lvgl
tickers was busted.
2023-05-24 13:30:05 +10:00
jacqueline 3b371cfc54 reuse annotate new files 2023-05-24 07:42:03 +10:00