Content Library
The Content Library is where br\u016bhi discovers and organises your audio files. All files are indexed in a database with their metadata, making them searchable and filterable.
Adding Files
Section titled “Adding Files”Desktop — Folder Scan
Section titled “Desktop — Folder Scan”Click Scan Folder and choose a directory. br\u016bhi recursively walks all subdirectories and indexes every supported audio file it finds.
- Scanning runs in a background thread. A progress bar shows the scan status (files found / files indexed).
- You can continue using the app while scanning.
- Re-scanning an already-indexed folder updates metadata for changed files and adds new ones. Existing entries are not duplicated.
Cloud — File Upload & S3
Section titled “Cloud — File Upload & S3”Supported Formats
Section titled “Supported Formats”MP3, FLAC, WAV, OGG, AAC (M4A), AIFF, Opus.
Track Metadata
Section titled “Track Metadata”brūhi extracts metadata from file tags:
| Field | Tag type / Source | Notes |
|---|---|---|
| Title | ID3v2, Vorbis comment, MP4 atom, AIFF chunk | |
| Artist | Same | |
| Album | Same | |
| Genres | Same | Stored as a list; a track may have several |
| Year | Same | |
| Duration | Calculated from file | |
| BPM | ID3v2 TBPM tag | |
| Musical Key | ID3v2 TKEY tag or analysis | Camelot Wheel notation (e.g. 8B) or standard key names |
| Energy | Audio analysis (0–1) | Spectral energy level |
| Loudness (LUFS) | Audio analysis | Integrated loudness per EBU R 128 |
| Mood Tags | User-defined or analysis | e.g. upbeat, melancholy, tense |
| Explicit | ID3v2 ITUNESADVISORY / user flag | Boolean — used in Smart Playlist rules |
| Custom Tags | User-defined | Free-form labels you apply yourself |
If a file has no tags, brūhi uses the filename as the title.
Searching
Section titled “Searching”The search bar performs a full-text search across title, artist, album, and genre simultaneously. Results update as you type.
Search syntax:
jazz # Matches any field containing "jazz"genre:Jazz # Matches genre exactlyartist:"Miles Davis" # Exact phrase matchFiltering
Section titled “Filtering”Genre Sidebar
Section titled “Genre Sidebar”The genre panel lists all genres found in your library. Click a genre to filter the track table to that genre only. Click All Genres to reset.
Genres are populated dynamically from the indexed tags — no manual genre setup required.
Advanced Filters (Desktop)
Section titled “Advanced Filters (Desktop)”Additional filter options in the Desktop app:
| Filter | Options |
|---|---|
| Duration | Greater than / less than N minutes |
| Year | Range (e.g., 1960–1979) |
| Date added | Last 7 days, last 30 days, custom range |
Track Table
Section titled “Track Table”The track table shows one row per track with sortable columns:
| Column | Sortable |
|---|---|
| Title | Yes |
| Artist | Yes |
| Album | Yes |
| Genre | No |
| Year | Yes |
| Duration | Yes |
| Date added | Yes |
Click any column header to sort. Click again to reverse sort order.
Adding Tracks to the Queue
Section titled “Adding Tracks to the Queue”- Single track — Hover over the row and click the Add to Queue button, or drag the row onto a deck.
- Multiple tracks — Check the checkboxes on multiple rows, then click Add to Queue in the toolbar to batch-add them to the active deck’s queue.
Library Statistics
Section titled “Library Statistics”The library stats panel (Desktop) shows:
- Total tracks indexed
- Total playtime (hours and minutes)
- Number of unique artists
Bulk Operations (Desktop)
Section titled “Bulk Operations (Desktop)”Select multiple tracks using checkboxes:
- Add to Queue — Adds all selected tracks to the current deck’s queue.
- Delete from library — Removes the selected tracks from the database (does not delete the files from disk). A confirmation dialog is shown before deletion.