Commit graph

2966 commits

Author SHA1 Message Date
Alexander Capehart
c6e83d1e18
musikr: introduce null covers
Will be used once covers are made configurable.
2024-12-28 09:51:46 -05:00
Alexander Capehart
d3f4ed5dd4
musikr: separate silo and covers 2024-12-27 15:51:14 -05:00
Alexander Capehart
d964df4616
musikr: fix broken cover cleanup 2024-12-27 15:49:26 -05:00
Alexander Capehart
b05d668b5e
musikr: close cover output streams 2024-12-27 15:39:31 -05:00
Alexander Capehart
292ea9d8a1
musikr: fix broken siloed covers
Caused by a missing param equality.
2024-12-27 15:38:49 -05:00
Alexander Capehart
ebcedb49eb
musikr: fix broken cache pruning 2024-12-27 15:38:23 -05:00
Alexander Capehart
8b3d7cae9c
musikr: handle missing covers on recaching
Now that we have effectively two caches (The main cache and the covers),
we have to handle the case where we have cached data, but the cover data
is missing. This is a real-world edge case once album covers are made
configurable as they were previously.
2024-12-27 15:11:09 -05:00
Alexander Capehart
32156f23b2
music: introduce siloed covers
Will allow me to dynamically configure cover quality by user settings.
2024-12-27 10:38:38 -05:00
Alexander Capehart
8b58f357cb
musikr: introduce cover cleanup
Helps reduce overall memory use.
2024-12-27 10:06:04 -05:00
Alexander Capehart
7b35ba840b
music: tweak revisioned cover api 2024-12-27 09:51:18 -05:00
Alexander Capehart
0dc72b67af
musikr: introduce cover params 2024-12-26 20:26:04 -05:00
Alexander Capehart
80c97cbea1
musikr: separate cover files/format 2024-12-26 19:54:31 -05:00
Alexander Capehart
b8178056f5
musikr: simplify cover storage boundaries 2024-12-26 19:23:48 -05:00
Alexander Capehart
dc8cbc74e8
all: fix formatting 2024-12-26 18:55:47 -05:00
Alexander Capehart
5e7d575efd
build: fix cpp formatting 2024-12-26 18:53:24 -05:00
Alexander Capehart
8d49893309
music: redesign music sources dialog
Now based around a more conventional design now that I no longer
need all the bells and whistles around include/exclude.
2024-12-26 18:22:28 -05:00
Alexander Capehart
75612dd1eb
all: cleanup 2024-12-26 14:04:15 -05:00
Alexander Capehart
61fd11fe04
musikr: refactor cache api
To make the pruning system more agnostic and "extendable"
2024-12-26 13:58:23 -05:00
Alexander Capehart
3f364dc5c6
musikr: add cache pruning
Helps remove dead entries, and additionally makes date added values more
accurate over time.s
2024-12-26 13:36:56 -05:00
Alexander Capehart
4f920e922d
musikr: add date added support w/cache
This allows me to replicate something resembling date added
support while reducing query load.
2024-12-26 10:33:50 -05:00
Alexander Capehart
da76a03298
Revert "musikr: add date added support"
This reverts commit ca6388b28d.
2024-12-26 09:04:18 -05:00
Alexander Capehart
ca6388b28d
musikr: add date added support
Through a new `Tracker` interface.

Tracker is kind of a generic name. It's set up in the case that I have
to wind up associating more post-extraction metadata with songs.
2024-12-24 15:24:29 -05:00
Alexander Capehart
c42ac644eb
musikr: compute uid on presong creation 2024-12-24 15:08:49 -05:00
Alexander Capehart
7768d98632
musikr.cover: refactor cover
Instead of using a weird sealed class, instead go for a
Cover/CoverCollection system instead that removes some implicit
design dependence in musikr.
2024-12-24 14:43:48 -05:00
Alexander Capehart
a24d102a00
app: reformat 2024-12-24 14:26:18 -05:00
Alexander Capehart
0cfd6ddb67
music: cleanup old cover revisions 2024-12-24 09:54:28 -05:00
Alexander Capehart
8409a93c4e
musikr: reformat 2024-12-23 20:53:01 -05:00
Alexander Capehart
9a7b970346
all: update todos 2024-12-23 17:13:55 -05:00
Alexander Capehart
258418578a
musikr.tag: parse artist sort name 2024-12-23 17:13:45 -05:00
Alexander Capehart
bdce83f047
musikr.tag: fix incorrect artist name placeholder 2024-12-23 17:04:12 -05:00
Alexander Capehart
75ca315b9b
musikr.tag: fix broken tag field 2024-12-23 17:01:07 -05:00
Alexander Capehart
518b80bdf2
musikr.metadata: add missing log header 2024-12-23 16:50:54 -05:00
Alexander Capehart
c379174ffe
musikr.metadata: wrap exceptions into log
Not ideal, but avoids a total catastrophic crash on failed metadata
extractions.
2024-12-23 16:48:32 -05:00
Alexander Capehart
b6bc065a4a
musikr.tag: parse mp4 fields 2024-12-23 16:46:56 -05:00
Alexander Capehart
6652e351cf
musikr.metadata: uppercase internal atoms 2024-12-23 16:46:35 -05:00
Alexander Capehart
6ccae5f0d2
musikr.metadata: fix mp4 parsing 2024-12-23 12:52:33 -05:00
Alexander Capehart
e56e290451
musikr: make nativeinputstream internal again 2024-12-23 11:27:34 -05:00
Alexander Capehart
77f97ef656
all: cleanup 2024-12-23 11:04:51 -05:00
Alexander Capehart
07118a5ff1
musikr: link correct taglib jni lib 2024-12-23 11:03:17 -05:00
Alexander Capehart
44696424a9
musikr: build taglib sequentially w/more threads
This is probably better since locality can be leveraged more.
2024-12-23 10:53:44 -05:00
Alexander Capehart
a888d09a2c
musikr: link private libraries
This is what the ffmpeg extension does, it probably does something
good.
2024-12-23 10:53:33 -05:00
Alexander Capehart
787a78f845
musikr: shrink end taglib jni size
Use some magic linker flags that @Tolriq found over in
https://github.com/taglib/taglib/issues/1212#issuecomment-2326456903
that somehow reduced linked so size by ~2mb.
2024-12-23 10:46:53 -05:00
Alexander Capehart
046a02de00
musikr: update readme 2024-12-23 10:05:48 -05:00
Alexander Capehart
b6cbf97df9
musikr: rename taglib jni cmake project 2024-12-23 10:05:33 -05:00
Alexander Capehart
6dd70af10c
musikr: fix more taglib jni mismatches 2024-12-23 10:04:41 -05:00
Alexander Capehart
6fd0bd411b
musikr: fix broken iostream jni integration 2024-12-23 09:59:23 -05:00
Alexander Capehart
6f8a960ee1
build: share desugaring version 2024-12-21 12:11:32 -05:00
Alexander Capehart
001db620e3
all: reformat 2024-12-21 11:52:28 -05:00
Alexander Capehart
9a38877c2e
musikr: hide cache database 2024-12-21 11:52:28 -05:00
Alexander Capehart
503a4854c3
musikr: hide playlist database 2024-12-21 11:52:28 -05:00