Read and store flac metadata

This commit is contained in:
Alexander
2026-06-26 23:27:33 +02:00
parent 4f52549e46
commit 9737e26bc9
5 changed files with 487 additions and 27 deletions
+25 -6
View File
@@ -8,13 +8,32 @@ CREATE TABLE items (
);
CREATE TABLE music_metadata (
inode BIGINT PRIMARY KEY REFERENCES items(inode) ON DELETE CASCADE,
track_title TEXT NOT NULL,
album TEXT NOT NULL,
track_number INTEGER NOT NULL
inode BIGINT PRIMARY KEY REFERENCES items(inode) ON DELETE CASCADE,
track_title TEXT NOT NULL,
album TEXT NOT NULL,
track_number INTEGER NOT NULL,
header BYTEA NOT NULL,
real_audio_start BIGINT NOT NULL
);
CREATE TABLE music_metadata_artists (
inode BIGINT NOT NULL REFERENCES music_metadata(inode) ON DELETE CASCADE,
artist TEXT NOT NULL
inode BIGINT NOT NULL REFERENCES music_metadata(inode) ON DELETE CASCADE,
artist TEXT NOT NULL,
PRIMARY KEY (inode, artist)
);
CREATE TABLE music_metadata_other_tags (
inode BIGINT NOT NULL REFERENCES music_metadata(inode) ON DELETE CASCADE,
position INTEGER NOT NULL,
tag TEXT NOT NULL,
PRIMARY KEY (inode, position)
);
CREATE TABLE music_metadata_pictures (
inode BIGINT NOT NULL REFERENCES music_metadata(inode) ON DELETE CASCADE,
position INTEGER NOT NULL,
block_header BYTEA NOT NULL,
data_offset BIGINT NOT NULL,
data_length BIGINT NOT NULL,
PRIMARY KEY (inode, position)
);