21 Commits

Author SHA1 Message Date
Tal
0b7638468c fix: don't crash on tracklists with empty headers 2025-08-05 21:49:55 +02:00
Tal
2c9a8229da chore: make track list error more explicit 2025-08-05 21:31:23 +02:00
Tal
f6bea9f048 feat: experimental support for other file types
chore: migrate to rodio v0.21.1
feat: add a currently nonfunctional source argument to the scrape
command

well, this is an important commit for anyone who has some interest in
the workings of lowfi, so strap in.

rodio finally updated cpal, so that ugly unsafe bit of code to implement
send is no longer necessary since cpal did it themselves (a year ago)
they also removed output stream handles and some other things which
nobody really used anyway.

next, the other file types is literally not even code, just adding a
feature flag which enables the default rodio feature flags. i do feel a
bit silly for thinking it'd be super difficult, so thanks rodio.

lastly, the source flag is for a possible switch to the chillhop
tracklist. anything embedded into lowfi should be generated with an open
source script, hence if lowfi does switch to chillhop, it'll need to be
selectable.
2025-08-05 21:24:04 +02:00
Tal
0b15ce8e1b chore: give better names to track structs 2025-07-02 19:46:17 +02:00
talwat
b6a81c9634 chore: refactor track error to use thiserror 2025-07-02 18:32:38 +02:00
talwat
1af976ad77 fix: begin work of improving error handling 2025-06-04 22:16:52 +02:00
talwat
d24c6b1a74 feat: implement basic bookmarking, still wip 2025-04-22 11:48:50 +02:00
talwat
adcb20f2d0 fix: reform errors for track fetching 2025-03-12 14:21:37 +01:00
talwat
ca746c0902 chore: format & bump version 2025-03-03 15:06:27 +01:00
talwat
768f976e89 fix: allow for empty headers 2025-03-02 16:18:35 +01:00
talwat
84f386e0eb feat: add experimental local file loading in track lists 2025-02-28 19:07:22 +01:00
talwat
ece88de1ae fix: tackle lots of clippy lints, along with removing outputstream from player struct 2025-02-21 21:44:32 +01:00
talwat
1e3c66679c fix: bug where text after ! in custom names wouldn't show up 2025-02-18 21:48:30 +02:00
Tal
923ac05cf8 add functionality for custom track names 2025-02-15 12:51:53 +01:00
Tal
b87a525c74 feat: introduce -n for no borders 2025-02-09 15:38:33 +01:00
Tal
56b03290d0 feat: make MPRIS bus suffixes unique 2024-10-27 14:17:30 +01:00
Tal
b12a7077a8 fix: tracklist shorthand not working 2024-10-27 13:20:38 +01:00
Tal
fe9429bfb3 chore: reintroduce clippy & fix a lot of errors 2024-10-18 23:37:45 +02:00
talwat
6f9dab6aa8 docs: again go into more depth in internal documentation 2024-10-15 23:46:10 +02:00
Tal
301b831737 docs: improve internal documentation 2024-10-15 15:06:52 +02:00
Tal
543aeee78c
feat: add custom sources (#21)
* feat: initial work on decoupling embedded list file & the rest of the app

* chore: rename tracks.txt to lofigirl.txt

* fix: make base optional

* feat: partially revert previous commit

* feat: fix loading tracks with explicit url

* fix: include list in main player struct

* chore: reduce timeout

* chore: remove unused import

* fix: rename InitialProperties to PersistentVolume

* feat: move persistent volume init to player init function

* feat: add micropop.txt as an example of a custom tracklist

* docs: add note about mp3

* docs: move format of lists to list struct docs

* docs: document custom track lists

* fix: fix silly spelling error

* docs: update formatting

* docs: fix sample formatting

* docs: add missing sample track

* fix: fix ui when track name has special characters

* fix: use proper char counting on subject, not word

* fix: use unicode-segmentation to finally fix handling special characters

* fix: precompute track len

* fix: switch to using the unicode-width crate

* style: split off list into it's own module

* fix: move logic to read a list from the fs into the list module
2024-10-15 14:15:51 +02:00