EARHORNMUSIC UPnP · Android TV · Phones · Android Auto · GNU/Linux
Release 0.5.0

MetadataField.kt

Each line, with the release that last changed it.

0.5.01package dev.stave.domain.model
2
3/**
4 * Every piece of metadata we know how to render. The Settings screen lets the user pick which
5 * show up on Album Detail and Now Playing; defaults lean classical-friendly.
6 */
7enum class MetadataField(val key: String, val label: String, val defaultOn: Boolean) {
8 TITLE("title", "Title", true),
9 ARTIST("artist", "Artist", true),
10 ALBUM_ARTIST("albumArtist", "Album artist", true),
11 ALBUM("album", "Album", true),
12 COMPOSER("composer", "Composer", true),
13 CONDUCTOR("conductor", "Conductor", true),
14 PERFORMER("performer", "Performer", true),
15 ORCHESTRA("orchestra", "Orchestra", true),
16 ENSEMBLE("ensemble", "Ensemble", true),
17 CHOIR("choir", "Choir", false),
18 SOLOIST("soloist", "Soloist", false),
19 GENRE("genre", "Genre", true),
20 DATE("date", "Date", true),
21 ORIGINAL_DATE("originalDate", "Original release", false),
22 WORK("work", "Work", true),
23 GROUP("group", "Group", false),
24 DISC_SUBTITLE("discSubtitle", "Disc subtitle", false),
25 LABEL("label", "Label", false),
26 CATALOG("catalog", "Catalog", false),
27 TRACK_NUMBER("trackNumber", "Track number", true),
28 DISC_NUMBER("discNumber", "Disc number", true),
29 DURATION("duration", "Duration", true),
30 FORMAT("format", "Format", true),
31 SAMPLE_RATE("sampleRate", "Sample rate", true),
32 BIT_DEPTH("bitDepth", "Bit depth", true),
33 BITRATE("bitrate", "Bitrate", false),
34 CHANNELS("channels", "Channels", false),
35 FILE_SIZE("fileSize", "File size", false);
36
37 companion object {
38 fun fromKey(key: String): MetadataField? = entries.firstOrNull { it.key == key }
39 val defaults: Set<MetadataField> = entries.filter { it.defaultOn }.toSet()
40 }
41}