这个项目能做什么

Kalinka可将Raspberry Pi或任何Linux机器转变为自托管音乐播放器,通过手机、桌面应用或浏览器控制。服务器存储音乐库,而独立的渲染器通过直接ALSA访问进行播放,因此它可以运行在同一台机器上,或放在每台功放旁边的Pi上。文件保持本地存储:无需账户,无遥测,语义搜索在设备上运行。存在两个可选网络功能——元数据查询(MusicBrainz、Wikidata、Deezer、Cover Art Archive)和每小时发布检查。 安装选项包括为Raspberry Pi刷写现成镜像、为Debian 13、Raspberry Pi OS(64位)或Ubuntu 24.04提供的一键安装脚本,以及虚拟机使用。应用或浏览器中的设置向导会询问音乐存放位置和声音输出设备,无需编辑配置文件。 主要功能: - 音乐库索引,支持目录监视和元数据修复,包括提供密钥时的AcoustID指纹识别,以及封面提取、缓存和生成。 - 智能搜索:自然语言查询,如“梦幻氛围吉他”,通过CLAP模型分析音频进行匹配;Jamendo匹配预建索引。每个插件可选启用。 - 通过C++渲染器直接ALSA访问实现位完美播放,支持FLAC和MP3最高192 kHz / 24-bit,同格式曲目间无缝播放,除非启用软件音量,否则样本不被修改。 - 任何网络盒子上的渲染器都作为输出出现,通过mDNS发现服务器,并可自动升级。 - 浏览器播放器使任何浏览器既可作为遥控器也可作为输出。 - 插件是运行时发现的普通Python包;My Library和Jamendo内置,MusicCast处理Yamaha音量和电源。 - 设置中的实时配置,提供简单常用字段层级和类似about:config的搜索。 - 自动更新:服务器每小时检查发布版本,并可在播放停止的安静时段自动升级;服务器、插件、浏览器播放器和渲染器一起更新,渲染器优先。 要求:64位操作系统(arm64或amd64)。播放和音乐库需要Raspberry Pi 3 / Zero 2 W或任何arm64/amd64盒子,512 MB RAM(1 GB更舒适)。智能搜索需要Raspberry Pi 4B(2 GB RAM)或任何arm64/amd64盒子(2 GB以上),额外约1 GB磁盘;可按安装切换。 位完美行为取决于渲染器。默认C++渲染器直接与声卡通信,除非指示否则不改变音频;软件音量是例外。应用指示路由是否为1:1:hw: 原样传输样本,plughw: 重采样和重新格式化,default或声音服务器混合。浏览器内播放通过浏览器音频栈,因此不保证无缝或位完美。 文档涵盖安装、首次运行设置、应用手册、架构、开发、渲染器设计、设备镜像和发布。项目邀请测试反馈到其讨论帖。源代码采用GPL-3.0-or-later;视觉资源使用单独许可证,需作者许可。第三方条款列于THIRD-PARTY-NOTICES.md中。