Nothing gets rewritten
Tags, folder structure, and embedded art are read, never modified. The index lives in a separate SQLite file you can delete.
Open beta · v0.9.4
Sequshii is a small streaming server for people who keep their own audio files. It reads the folders you already have, leaves your tags alone, and plays everything in the browser.
docker run -p 4533:4533 -v /music:/data sequshii/server
Runs on anything with 512 MB of RAM. No account, no upload step, no rewriting of your files.
What it does
Most players want you to import, convert, or upload first. Sequshii scans what's on disk and serves it.
Tags, folder structure, and embedded art are read, never modified. The index lives in a separate SQLite file you can delete.
Lossless goes out untouched when the browser can take it. Everything else transcodes on the fly to a per-device profile.
Pre-buffers the next track and matches the encoder delay, so live albums and DJ mixes play through without the click.
Apps that already speak Subsonic can point at Sequshii and work. Useful if you want something native on a phone.
Each account gets its own queue, position, and history. Share the server with the household without sharing a listening record.
Optional, per user, off by default. Queued locally when the upstream is unreachable and flushed when it comes back.
Getting started
Point the volume at wherever your audio lives. The first scan runs at roughly 2,000 tracks a minute on a small VPS; after that it watches for changes.
Full setup, reverse proxy examples, and the configuration reference are in the documentation.
# docker-compose.yml
services:
sequshii:
image: sequshii/server:0.9.4
ports:
- "127.0.0.1:4533:4533"
volumes:
- ./data:/var/lib/sequshii
- /srv/music:/data:ro
environment:
SEQ_SCAN_INTERVAL: 15m
SEQ_TRANSCODE: auto
restart: unless-stopped
Specifications
| Sample rates | 44.1 – 192 kHz, 16/24/32-bit, passed through unchanged where the client supports it |
|---|---|
| Transcoding | Opus, AAC, MP3 via ffmpeg; per-device bitrate ceiling; segments cached on disk |
| Index | SQLite with FTS5. Around 90 MB per 100,000 tracks including cached artwork. |
| Memory | Idle 48 MB. Under eight concurrent streams, about 210 MB. |
| Storage backends | Local disk, NFS, SMB. S3 is read-only and still rough. |
| Browsers | Firefox 115+, Chrome 110+, Safari 16.4+. iOS Safari works, background playback is limited. |
| Licence | Free during beta. Source release once the storage layer settles. |