Music library and metadata database.
https://radio.animebits.moe/player/hash/3f90704a30f9
database | ||
dbschema | ||
handler | ||
metadata | ||
store | ||
utilities | ||
.gitattributes | ||
.gitignore | ||
edgedb.toml | ||
go.mod | ||
go.sum | ||
LICENSE | ||
METANOIA.go | ||
README.md | ||
schema.sql |
METANOIA
Music library and metadata database.
Dependencies
Go >= 1.18
Hibiki dependencies
Hibiki is an implementation of Panako in Go, and other audio utilities.
Check its native dependencies that must be installed before usage.
Postgres 14+
Test setup
# Create ephemeral postgres database
docker run --rm -p 5432:5432 --name metanoia-postgres \
-e POSTGRES_PASSWORD=metanoia -e POSTGRES_DB=metanoia -e POSTGRES_USER=metanoia -d \
postgres:14
# Insert schema
docker exec -i --env PGPASSWORD=metanoia metanoia-postgres psql --username metanoia metanoia < schema.sql
# Add tracks to database and fingerprint them
CGO_CFLAGS="-march=native -Ofast" go run . \
-connstr "user=metanoia password=metanoia dbname=metanoia sslmode=disable host=127.0.0.1" -printdb ./data/prints \
-cmd add -path /path/to/add
# Query tracks/segments from database
CGO_CFLAGS="-march=native -Ofast" go run . \
-connstr "user=metanoia password=metanoia dbname=metanoia sslmode=disable host=127.0.0.1" -printdb ./data/prints \
-cmd query -path /file/to/query.flac