Skip to content

Repository files navigation

Still logo

Still 🎵

静听 · 此刻有声

一个专注于本地音乐库、沉浸式歌词和桌面体验的跨平台本地音乐播放器。

VersionPlatformRuntime

📝 查看 v1.0.1-beta.1 更新日志

✨ 项目简介

Still 是一款跨平台本地音乐播放器。它不依赖在线音乐服务,音乐文件、歌词、封面和播放状态都由本地管理,适合希望拥有简洁界面、沉浸式歌词和高效音乐库体验的用户。

v1.0.1-beta.1 开始,Still 使用 Tauri + Rust 作为桌面运行时和原生能力层,在保留 React 界面的同时,接入了更完整的 Windows 窗口、托盘、任务栏和文件处理能力。

🚀 功能亮点

🎶 本地音乐库

  • 📂 递归导入音乐文件夹,也支持文件拖拽导入
  • 🔎 按歌曲、艺术家、专辑、文件夹和歌单浏览
  • ↕️ 支持搜索、多字段排序和快速字母索引
  • 📋 支持播放队列、插播、队列排序和歌单管理
  • ⏳ 导入时显示扫描进度,支持并行读取大量音频文件
  • 🩺 自动识别不可读或已丢失的音乐文件,方便重新定位和清理

🏷️ 元数据与封面

  • 📝 读取标题、艺术家、专辑、年份、曲目编号和时长
  • 🎚️ 显示格式、编码、码率、采样率、位深、声道和无损信息
  • 🖼️ 支持内嵌封面和常见文件夹封面,例如 cover.jpgfolder.pngfront.jpg
  • ⚡ 使用元数据缓存和封面缓存,减少重复扫描和重复解析
  • 🧩 对不完整或损坏的元数据提供更稳健的回退处理

🎼 歌词体验

  • 📄 支持内嵌歌词、本地 .lrc.tlrc.txtlyrics.lrc
  • 🌏 自动识别翻译歌词,并支持原文/翻译显示偏好
  • ✨ 支持增强 LRC 逐词时间和逐字高亮动画
  • ⏱️ 支持歌词时间偏移、自动滚动、当前行定位和点击跳转
  • 🖥️ 全屏歌词支持歌词、封面、横向混合和竖向混合布局
  • 🎨 支持模糊、淡出、远景、字体、位置、颜色和字号调整

🪟 桌面歌词

  • 📌 独立透明、置顶的桌面歌词窗口
  • 🔒 支持锁定窗口、拖动调整和位置/尺寸记忆
  • 🌓 支持双行歌词、翻译、逐词高亮和切换动画
  • 🎛️ 支持自定义字体、字重、颜色、描边和第二行比例

🖥️ Windows 系统体验

  • 🔔 系统托盘菜单支持显示窗口、播放/暂停、上一首、下一首和桌面歌词
  • 🧰 任务栏缩略图按钮支持播放控制、播放模式和桌面歌词切换
  • 📈 任务栏进度与窗口标题同步当前歌曲和播放进度
  • 🪟 支持自定义窗口控制、最大化、全屏和窗口状态恢复
  • 🎧 使用本地媒体服务提供带 Range 请求的音频访问,提升 Tauri 播放兼容性

🎨 界面与个性化

  • 🌗 支持浅色、深色和跟随系统主题
  • 🟢 支持手动强调色和根据专辑封面自动取色
  • 🏷️ 长标题和长文本支持悬停滚动显示
  • ⚡ 大型音乐库场景下优化滚动、歌词渲染和状态更新

📦 发布平台

当前版本:v1.0.1-beta.1 🎉

平台下载说明
🪟 Windows x64Still_v1.0.1-beta.1.exeNSIS 安装包
🐧 Linux x64.deb · .rpmDebian/Ubuntu 或 Fedora/Red Hat 系
🍎 macOS IntelDMGIntel Mac
🍎 macOS Apple SiliconDMGApple Silicon Mac

📦 macOS Intel App Bundle · macOS Apple Silicon App Bundle

🧾 Source code ZIP · Source code TAR.GZ

⚠️ 当前版本仍处于 beta 阶段。macOS 构建暂未配置 Apple Developer 公证,首次打开时可能需要在“系统设置 → 隐私与安全性”中手动允许。

🛠️ 开发与构建

环境要求

  • Node.js 和 npm
  • Rust stable toolchain
  • Windows MSVC 编译工具链(Windows 构建)
  • Ubuntu 22.04 或兼容的 WebKitGTK 4.1 环境(Linux 构建)
  • macOS + Xcode Command Line Tools(macOS 构建)

安装依赖

npm install

启动开发环境

npm run tauri:dev

仅启动前端 Vite 开发服务器:

npm run dev

构建与打包

构建前端资源并执行 TypeScript 检查:

npm run build

构建 Windows Tauri 应用和 NSIS 安装包:

npm run tauri:build

构建 Linux Debian 和 RPM 安装包:

npm run tauri:build:linux

在 macOS 上构建 App Bundle 和 DMG:

npm run tauri:build:macos

Linux 和 macOS 的正式发布由 GitHub Actions 工作流负责。向版本标签(例如 v1.0.1-beta.1)推送代码后,工作流会构建并上传 Linux deb/rpm 和 macOS Intel/Apple Silicon 安装包到对应 Release。

Linux 构建建议使用 Ubuntu 22.04 作为基线,以兼容 Tauri 2 所需的 WebKitGTK 4.1。macOS 未配置 Apple Developer 证书时使用临时签名,正式分发前仍建议配置签名和公证凭据。

安装包通常输出到:

target/release/bundle/nsis/Still_<version>_x64-setup.exe

Linux 和 macOS 构建产物分别位于:

target/release/bundle/deb/
target/release/bundle/rpm/
target/<target>/release/bundle/dmg/

🗂️ 项目结构

src/ React 前端与播放器界面
src/host/ Tauri / Web 宿主能力桥接层
src-tauri/src/ Rust 原生能力、媒体服务和 Windows 集成
src-tauri/capabilities/ Tauri 权限配置
public/ 桌面歌词页面等静态资源
docs/screenshots/ README 与发布说明使用的截图
logo/ 应用图标和 Logo 资源

🧰 技术栈

  • React + TypeScript
  • Vite
  • Tauri 2 + Rust
  • Material Web
  • Framer Motion
  • Tailwind CSS
  • Lofty、music-metadata-browser
  • Rayon(并行扫描)

🖼️ 界面预览

播放列表界面全屏歌词界面

桌面歌词控制界面全屏歌词设置界面

📋 版本记录

🤝 反馈与贡献

Still 仍处于 beta 阶段,功能和界面会持续迭代。欢迎通过 Issues 反馈问题、提交建议或分享使用体验。

About

静听>>此刻有声:一款优雅、功能强大的本地音乐播放器

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages