Technical limitations

What Kalinka doesn't do yet

Kalinka is young and built by a small team. This is the honest list of its edges, so you know before you flash a card. It matches server 5.8.0, renderer 0.8.0 and app 0.18.0, from October 2026.

Audio formats

The renderer plays FLAC, MP3, Ogg Vorbis and DSD. Everything else is refused with a message rather than converted. DSD in particular is strict: it goes to the DAC as it is or not at all.

Not supported
ALAC, Opus and WAV. Ogg files that hold Opus or FLAC are skipped.
DSD files
DSF and uncompressed DFF, mono or stereo, DSD64 to DSD512. DST-compressed DFF, SACD ISO images and multichannel DSD are not supported.
DSD output
Off by default. Needs an ALSA device marked (direct) — a hw: device, not plughw: or a sound server — and Volume control set to fixed output. Changing the output device turns DSD output off again.
DSD as DoP
Choose DoP only if your DAC says it supports it; accepting high PCM rates alone does not prove it. DoP needs a PCM carrier at a sixteenth of the DSD rate: 176.4 kHz for DSD64, 352.8 kHz for DSD128, 705.6 kHz for DSD256 and 1411.2 kHz for DSD512.
Unsupported DSD rates
If the DAC cannot take a file's rate in the chosen mode, playback stops with a message. Nothing is converted to PCM or to another DSD rate.
Ogg Vorbis
Decoded to 16-bit, mono or stereo. A chained file, such as a radio recording, must keep one sample rate and channel count throughout.

Playback

The design goal is a clean path from file to DAC. Several things that other players do with the signal are left out on purpose.

No DSP
No equaliser, room correction or resampling. Software volume is the one thing that alters the samples, and it is optional.
One zone at a time
Several renderers can exist and you switch between them, but one server drives one output. There is no synchronised whole-house playback.
Browser player
Plays through the browser's own audio stack, so it is neither gapless nor bit-perfect. It is a convenience, not the hi-fi path.
Bit-perfect check
The 1:1 badge sees the ALSA device the renderer opens. It cannot see a resampler configured elsewhere in your ALSA setup.
Queue
Up to 1000 tracks. An add that would go past that is refused as a whole.

Platforms

Server
64-bit Linux only: arm64 or amd64. Debian 13, Ubuntu 24.04, Raspberry Pi OS 64-bit, Fedora or the Kalinka image. The Pi 1, Pi 2 and the original Pi Zero are 32-bit and not supported.
Raspberry Pi Zero 2 W
Kalinka takes about 250 MB of the Zero 2 W's 512 MB, so it runs, but without Smart Search and with little memory to spare. Keep the system headless. As a renderer for a second room it has plenty.
Fedora
The server and the renderer come as .rpm packages, but the one-line install command is for Debian-based systems only. Fedora has no browser player, and the app's upgrade button does not work there: install newer packages by hand.
Renderer elsewhere
Debian 13, Ubuntu 24.04 and Fedora packages. A box of its own needs no server, only a network.
Apple
No macOS or iPhone app. On a Mac or an iPhone, use the browser: it works as both a remote and a player.
Kiosk on the box's own screen
arm64 only, so a Raspberry Pi. The Pi must boot to the console (no desktop) with the default KMS graphics driver. The package pulls in Mesa and GStreamer, so it is not installed unless asked.

Sources

Streaming services
Jamendo's Creative Commons catalogue is built in. Qobuz and Spotify come as separate plugins and work as Connect outputs: you choose the music in their own apps. Spotify needs a Premium account and streams at 320 kbps. No Tidal, Deezer or Apple Music.
Roon
Experimental. The Roon plugin hands the audio engine to Roon Bridge; it is early and may change.
UPnP controllers
Kalinka is a UPnP renderer, not a UPnP server: other devices cannot browse its library over UPnP. DSD is offered to controllers only while the renderer's DSD output is on.
Bluetooth and AirPlay audio
Not supported. Bluetooth is used for Wi-Fi setup only.

Library and search

Indexing time
A full index of a large collection, with metadata lookups, can take several hours on a Pi. You can listen while it runs.
Smart Search memory
The model holds about 300 MB resident and the first pass peaks near 1.5 GB, so it needs a 2 GB board; 4 GB is what has been tested. It is off until you turn it on.
DSD in Smart Search
DSD files are found by title, artist and album, but their sound is not analysed and they are not fingerprinted.
Fingerprinting
Identifying tracks by their sound needs an AcoustID key of your own. Without it, Kalinka matches by tags and file names.

Bluetooth setup

Set up a box puts a box with no network onto your Wi-Fi. It does that one thing.

Hardware
The box needs Bluetooth Low Energy and a Wi-Fi adapter, built in or as USB adapters. The images enable the Raspberry Pi's own radios.
Networks
WPA2-Personal, including WPA2/WPA3 mixed networks. Open, WPA3-only and enterprise networks are not supported. Passwords are 8 to 63 printable ASCII characters.
Where it works
The Kalinka app 0.17.0 or later on a phone or computer with Bluetooth. The browser web UI cannot do it.
Pairing
Being nearby is what authorises the setup; there is no proof of ownership. The box only offers setup while it has no network, and for a few minutes after joining one.

Network and security

Kalinka is made for a trusted home network.

No passwords
The server, its settings and the box's control page have no login. Anyone on your local network can use them.
Plain HTTP
The server speaks HTTP on port 8000. For HTTPS, put it behind a reverse proxy; the app and the browser player can connect to an https:// address.
Not for the open internet
Do not expose the server or the control page beyond your network. Use a VPN if you need to reach it from outside.