Skip to content

Releases: ZZJ-jack/Just-Solo

v0.7.5

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 26 Jul 02:41

v0.7.5,重大架构升级:音频引擎从 Qt Multimedia 替换为 miniaudio(支持热插拔),新增手动拖拽排序功能,修复单曲循环及多项体验问题。

音频引擎替换:

  • 新增 AudioEngine 类,基于 miniaudio 实现音频播放功能
  • 移除 Qt Multimedia 相关代码,替换音乐管理模块的音频实现
  • 修复 Windows 平台 Qt Media 后端导致的 24-bit 重采样无声问题
  • 50ms 轮询定时器检测播放状态与位置,支持设备热插拔恢复
  • 支持热插拔音频设备,无需重启应用

手动拖拽排序:

  • 实现了全列表的歌曲拖拽排序功能
  • 支持音乐库、收藏、历史记录、自定义播放列表和当前播放列表的排序调整
  • 包含排序模式 UI、拖拽交互和状态同步逻辑
  • 历史页面和播放列表页禁用手动排序(曲目按时间顺序固定)

修复:

  • 修复单曲循环播放时进度条/时长未归零的问题(seek(0) 归零后再播放)
  • LyricServer 协议升级至 v1.0.1:修正 progress 推送间隔为 300ms 对齐协议规范
  • 完善收藏夹、历史、自定义歌单移动歌曲时的播放列表同步逻辑
  • MusicListView 新增不支持排序时的提示弹窗和菜单逻辑

v0.7.2

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 24 Jul 11:48

v0.7.2正式发布!

在经过了多次的修改以后,我们正式发布v0.7.2版本,配合NSD使用效果更佳!

  • 新增Just Solo LyricServer(v1.0.0)实现基于WebSocket的实时歌词推送功能,支持init/progress/playback三种推送接口,添加了测试网页,更新CMakeLists.txt和主程序以集成该服务
  • 修复了已知bug

v0.7.2-beta.3

v0.7.2-beta.3 Pre-release
Pre-release

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 24 Jul 08:22

Just Solo LyricServer协议v1.0.0发布

v0.7.2-beta.2

v0.7.2-beta.2 Pre-release
Pre-release

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 23 Jul 14:22

v0.7.2-beta.2

  1. 更新安装包和CMakeLists中的版本号到0.7.2-beta.2
  2. 修复歌词服务重启逻辑:客户端连接时恢复播放进度推送
  3. 优化歌词已播索引逻辑,处理seek/单曲循环回退场景

v0.7.2-beta.1

v0.7.2-beta.1 Pre-release
Pre-release

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 23 Jul 13:01

v0.7.2-beta.1开发者测试版

  • feat: 添加WebSocket实时歌词推送服务用于适配第三方软件
  • 新增LyricServer实现基于WebSocket的实时歌词推送功能,支持init/progress/playback三种推送接口,添加了测试网页,更新CMakeLists.txt和主程序以集成该服务

v0.7.1

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 23 Jul 11:03

v0.7.1,紧急修复:切换歌曲时歌词颜色状态错误的问题。

修复:

  • 切换歌曲时 _pastIdx 未重置,旧歌的已播索引污染新歌词状态

  • 导致新歌的未播放歌词被错误标记为已播(显示黄色),实际应为灰蓝色

  • 修复后:已播=黄、正在播=蓝、未播=灰蓝,三色区分正确

v0.7.0

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 23 Jul 10:40

V0.7.0更新:

从音乐库导入自定义列表、拖放添加音乐、播放与歌词体验优化。

  • 从音乐库导入自定义列表:
    • 自定义列表页头新增「从音乐库导入」按钮 + 侧栏右键菜单选项
    • 弹出选择对话框:全部音乐库歌曲可搜索过滤、checkbox 勾选多首
    • 已存在歌曲灰色「已添加」标记不可勾选,全选/取消全选,实���计数
    • 确认导入后按 path 去重追加到目标列表
  • 拖放添加音乐:
    • 从资源管理器拖拽文件/文件夹到窗口,自动识别音频格式并导入
    • 过滤非音频文件,文件夹递归导入
    • 拖入时半透明覆盖层提示「放开添加音乐」
  • 歌词与播放优化:
    • 设置 Qt Media Backend 为 Windows(Media Foundation),修复 24-bit FLAC 无声
    • 播放列表中歌曲使用 MediaStatus 实时反馈时长,非 MP3 格式支持更完善
    • 详情页歌词展示逻辑优化,已播行高光保持不消失
    • 翻译行与主歌词智能堆叠,消除同时间戳误合并
    • FLAC 嵌入歌词兼容性优化
  • UI/交互优化:
    • 新增歌曲排列表最前面(prepend)
    • 设置页 Loader 锚定修复,消除文字重叠
    • 列表缓存与页面加载性能优化
    • 导入动画期间搜索下拉框自动隐藏
    • 删除歌曲弹窗文字更新,提示可从音乐库重新导入
  • 修复:
    • 自建列表多场景弹窗逻辑一致性
    • QML Loader 未锚定父容器导致的布局异常
    • 非MP3格式duration获取不准确
    • 搜索结果定位滚动后下次切换页面重复定位

v0.6.0

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 22 Jul 13:30

v0.6.0:全新自建播放列表系统、通用歌曲列表组件重构、单实例运行保障。

侧边栏「创建新列表」按钮,深色弹窗命名,支持添加本地音乐 / 重命名 / 删除

列表名仅允许中英文、数字、-_,禁止重名,持久化到 custom_playlists.json

新增 MusicListView.qml 通用歌曲列表组件,所有页面改为此组件子类

统一 playingListIndex/pageListIndex 定位系统,匹配才自动滚动

单实例运行检测:基于 QLocalServer,隐藏到托盘后点快捷方式恢复窗口

修复 --develop 误删用户数据,改为 --clearUserData 显式清理

右键菜单「删除此歌曲」确认弹窗,同步清理历史/收藏/播放列表/自定义列表

收藏页点击不同来源歌曲弹出切换确认弹窗

next()/previous() 修复 playlistSource=0 时使用了自定义列表的歌曲列表

删除播放中的歌曲/自建列表时自动清空播放控制栏

v0.5.1

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 21 Jul 12:54

新增关闭最小化到系统托盘功能,设置页可自由开关。

  • 关闭窗口自动最小化到系统托盘,音乐继续后台播放
  • 右键托盘图标菜单:显示主窗口 / 退出
  • 左键/双击托盘图标恢复窗口
  • 设置 → 外观 新增开关,默认关闭,持久化重启保持
  • 引入 Qt::Widgets 模块(QSystemTrayIcon 依赖)

v0.5.0

Choose a tag to compare

@ZZJ-jack ZZJ-jack released this 21 Jul 07:46

v0.5.0(已发行) — 2026.7.21

优化软件整体体验,添加搜索功能、全局快捷键,并做了一下播放优化。

新增

搜索功能

  • 搜索框支持标题/歌手/专辑模糊匹配,输入实时过滤下拉结果
  • 搜索结果关键词青色加粗高亮,歌名超长 marquee 滚动
  • 点击结果自动切换到首页、播放歌曲并滚动列表定位
  • 全部页面均可搜索,不在首页时自动跳转

全局快捷键

  • 基于 Windows RegisterHotKey + QAbstractNativeEventFilter 原生实现
  • 全局播放/暂停 Ctrl+Alt+Space、上一首 Ctrl+Alt+←、下一首 Ctrl+Alt+→
  • 快捷键设置页:点击卡片进入捕获模式,按下组合键实时生效
  • 每项独立重置按钮,配置持久化到 hotkeys.json

设置页

  • 侧边栏新增 快捷键设置子页面(播放设置 → 快捷键设置 → 软件更新)
  • 顶层 Key 捕获绕过 Repeater 焦点域,解决按键无效问题
  • Column 布局替代 Repeater 嵌套,修复 UI 重叠

优化

播放体验

  • 音量 1.0 → 0.90,预留 10% 余量防数字削波爆音
  • 歌词索引 30ms debounce 防抖 + 预编译 LyricEntry 纯整数缓存,消除运行时 toMap 深拷贝
  • next() 顺序模式播完不再停止,改为循环到第一首

导入

  • BATCH_SIZE 8 → 10,每次批量处理更多文件

UI/交互优化

  • 首页/播放列表页切换时自动滚动列表到当前播放歌曲
  • 播放详情页入场动画加 80ms 延时等毛玻璃就绪,消除开启动画闪屏
  • 页面从 Loader 销毁重建改为预创建 + visible 切换,消除页面切换闪屏

修复

  • 全局快捷键 valid 默认 false 导致首次运行不注册
  • 全局快捷键构造时注册过早(消息循环未就绪),改为 QTimer::singleShot 延迟注册
  • 快捷键卡片 RepeaterColumnLayout 中布局重叠
  • 顺序模式最后一首点下一首直接停止