Releases: Kifranei/Halcyon
Releases · Kifranei/Halcyon
Release list
1.2.1
From tag 1.2.0 to 1.2.1.
中文更新日志
- 重写播放进度交互,修复部分歌曲无法拖到末尾、MV 切歌后状态残留等问题,并完善动态封面与横屏播放体验。
- 播放页默认改为非沉浸圆角封面布局;非 1:1 封面按图片实际边界裁圆角,迷你歌词固定占位,避免 TTML 背景歌词挤压控制区。
- 完善歌词字体设置、罗马音/翻译显示和 TTML 解析;状态栏歌词长文本改为带间隔的连续循环滚动,合并副歌词时使用单空格。
- 新增西文字体、默认字体与中日韩默认字体的独立配置,并修复歌词非当前行字重、换行和分享文字显示问题。
- 优化艺术家页:艺术家封面按“自定义 → 独占专辑艺术家 → 独占歌曲艺术家 → 合作专辑艺术家 → 合作歌曲艺术家”选择。
- 完善文件夹层次结构:子文件夹长按支持完整操作菜单与置顶,桌面快捷方式使用专用层次结构图标。
- 切换歌曲、专辑、艺术家、文件夹、歌单及分类排序时立即更新列表,减少排序菜单点击后的卡顿感。
- 优化专辑发行方展示、歌单多选/拖拽、媒体通知歌词、远程音乐源与下载音质地址等细节,并修复多项播放器和设置页问题。
- 支持显示歌曲MV,请将”歌曲文件名-MV.mp4”或“歌曲文件名_MV.mp4”放到与歌曲同目录,播放到有MV的歌曲时候会显示MV按钮。
English Changelog
- Reworked playback seeking and fixed cases where some songs could not seek to the end, stale MV state after track changes, and several dynamic-cover and landscape-player issues.
- Made the non-immersive rounded-cover player layout the default. Non-square covers now round the actual artwork bounds, while mini lyrics keep a fixed viewport so TTML background lines do not push transport controls down.
- Improved lyric font settings, romanization/translation display, and TTML parsing. Long status-bar lyrics now loop continuously with a gap, and merged secondary lyrics use a single space.
- Added separate Western, default, and CJK default font settings, and fixed non-current lyric weight, wrapping, and lyric-share text rendering.
- Improved artist artwork selection with this priority: custom asset → sole album artist → sole song artist → collaborative album artist → collaborative song artist.
- Improved folder hierarchy actions: child folders now expose the full long-press menu and pinning, and hierarchy shortcuts use a dedicated icon.
- Made song, album, artist, folder, playlist, and category sorting update immediately after selection to reduce perceived UI stalls.
- Refined album publisher display, playlist multi-select/reordering, media-notification lyrics, remote music sources, download-quality URLs, and numerous player and settings details.
- Supports displaying the song's music video (MV). Please place "SongFileName-MV.mp4" or "SongFileName_MV.mp4" in the same directory as the song. When playing a song that has an MV, the MV button will be displayed.
1.2.0
中文更新日志
- 新增自定义艺术家封面文件夹,支持按艺术家名称匹配封面资源。
- 新增音乐库来源切换器,支持本地 / Navidrome / Emby,并扩展为多地址远程音乐源管理。
- 新增 WebDAV 接入音乐库来源,支持递归索引 WebDAV 音频并纳入歌曲、专辑、艺术家等库视图。
- 修复 Navidrome / Emby 大曲库只能加载部分歌曲的问题,远程曲库改为分页与完整加载策略。
- 支持远程 HTTP 音频读取内嵌歌词 / 标签头部缓存,改善 Navidrome / Emby 等远程歌曲内嵌歌词识别。
- 新增 Apple Music 风格动态流光背景,并加入低功耗可见性门控。
- 歌词更多菜单增加罗马音 / 注音显示位置设置,并优化菜单结构。
- 修复媒体通知歌词元数据补丁导致的歌词重载闪烁,并进一步平滑歌词换行与重排动效。
- 优化歌词插件搜索,并行化检索流程并增加超时控制。
- 新增软件均衡器能力,扩展参数 Q、音色、压缩器、立体声宽度、混响等 DSP 效果。
- 优化文件夹歌单分类页和详情页,支持多选、排序记忆、菜单跳转与封面。
- 新增全标签搜索开关,优化专辑艺术家 / 艺术家显示与搜索去重。
- 修复扫描 toast 重复弹出、隐藏播放页拦截返回键、163 key 解密结果显示等问题。
- 优化远程歌曲列表分页加载、歌词对唱显示、播放页和横屏页面细节。
- 打包字体去重,减小 APK 体积,并在 release APK 文件名中嵌入 git 短哈希便于溯源。
- 补全 RawS Music 开源引用与第三方许可信息。
English changelog
- Added custom artist-cover folders with artist-name based cover matching.
- Added a library-source switcher for Local / Navidrome / Emby, then expanded it into multi-server remote source management.
- Added WebDAV as a music library source, including recursive WebDAV audio indexing for songs, albums, artists, and related library views.
- Fixed Navidrome / Emby large libraries only loading a partial song set by improving remote pagination and full-library loading.
- Added embedded lyric / tag-header caching for remote HTTP audio, improving embedded lyric detection for Navidrome / Emby and other remote songs.
- Added an Apple Music style flowing dynamic background with low-power visibility gating.
- Added romanization / pronunciation placement controls to the lyric menu and cleaned up the menu structure.
- Fixed lyric reload flicker caused by media-notification metadata patches and further smoothed lyric line wrapping / relayout animations.
- Optimized lyric plugin search with parallel lookup and timeout control.
- Expanded software equalizer support with parameter Q, tone, compressor, stereo width, reverb, and related DSP effects.
- Improved folder playlist category/detail pages with multi-select, sort persistence, menu navigation, and covers.
- Added a full-tag search toggle and improved album-artist / artist display and search deduplication.
- Fixed repeated scan toasts, hidden player pages intercepting back navigation, and missing 163 key decrypt result display.
- Improved remote song-list pagination, duet lyric display, player page details, and landscape playback details.
- Reduced APK size by deduplicating bundled fonts and embedded the git short hash in release APK filenames for traceability.
- Added RawS Music credits and third-party license references.
Halcyon V1.1.97
中文更新日志
- 新增软件 10 段参数均衡器,将 RawS-Music 的 BiQuad/ParametricEQ 算法用 Kotlin 重写并接入 ExoPlayer 音频链路,彻底脱离系统
Equalizer依赖。 - 为系统均衡器跳转增加厂商兼容性兜底处理。
- 修复排序不记忆、乱跳以及听歌历史 OOM 导致设置恢复默认的问题。
- 修复多人对唱/合唱 TTML 歌词因嵌套时间重叠而出现的闪烁问题。
- 修复 ColorOS 导航栏和 x-bg 歌词字间距等显示问题。
- 播放列表详情页新增多选功能;增强文件夹播放列表和分类页面的排序能力。
- 元数据分类详情页新增搜索功能和选择模式。
- 优化音乐库搜索控件、选择遮罩和扫描体验,修复队列排序回归问题。
- 增强动态封面功能、歌词透视效果和 Beautiful Lyrics 显示优化。
- 新增播放器标题位置设置、播放手势设置和歌词过滤设置。
- 修复 Hi-Res 标识、歌词制作信息行、视频编码、专辑艺术家位置、歌词日文/中文互换和 24/48 检测等问题。
- 新增歌词视频分享和 3D 透视歌词效果。
- 修复 OPlus 歌词初始发布、 lyricInfo 在元数据刷新后丢失以及重新应用时机等问题。
- 修复 FFmpeg 解码中 swr_convert 采样计数传递和切歌音量峰值问题。
- 深度扫描时刷新音频标签元数据,并将歌词解析统一接入 accompanist 歌词核心库。
- 保留专辑分类页面状态,修复卡住的库扫描进度指示器,恢复即时队列拖拽排序。
- 跳过冗余媒体通知元数据刷新,减少通知歌词元数据抖动。
- 支持小米设备的 MiPlay 输出面板,并通过 MediaMetadata 向 ColorOS 锁屏提供岛歌词。
- 拆分 OPlus 原生和模块歌词投递模式,优化横屏播放器布局。
- 延迟桌面歌词窗口到设置加载完成后,延迟随机播放队列重排至下一曲。
- FFmpeg 解码器复用 packet 和 frame,降低内存分配。
- 将 MusicRepository 拆分为多个专业 Manager,统一歌曲列表排序逻辑。
- 移除
ella://深链 scheme,统一使用halcyon://。 - 防止重复播放列表名称,并优化创建/重命名流程。
- 新增文件夹播放列表、磁贴颜色自定义、设置搜索与深链高亮、启动图标 monochrome 标签。
- 新增二级歌词字体缩放,重构导航 Dock 和快捷方式 URI,并简化均衡器效果。
- 修复从纯文本歌词中去除 OPlus 内联 LRC 时间戳。
- 修复评分刷新、自定义文件夹扫描、过期听歌历史条目和零时间戳闪烁等问题。
- 优化搜索过滤、播放器细节、首页卡片可读性和自定义壁纸下的显示效果。
English Changelog
- Added a software-based 10-band parametric equalizer, porting the BiQuad/ParametricEQ algorithm from RawS-Music to Kotlin and integrating it into the ExoPlayer audio pipeline, eliminating the dependency on the system
Equalizer. - Added vendor-specific fallback handling for system equalizer intents.
- Fixed sorting not being remembered or jumping unexpectedly, and fixed listening-history OOM that reset settings to defaults.
- Fixed flickering in multi-singer/chorus TTML lyrics caused by overlapping nested timestamps.
- Fixed multiple GitHub issues including #145, #172, #194, #202, #210, #126, #133, #234, #236, #237, #238, #240.
- Fixed ColorOS navbar and x-bg lyric word spacing issues.
- Added multi-selection support to the playlist detail screen; enhanced sorting for folder playlists and category pages.
- Added search functionality and selection mode to metadata category detail screens.
- Refined library search controls, selection overlays, and scanning experience; fixed queue ordering regressions.
- Enhanced dynamic cover functionality, lyric perspective effects, and Beautiful Lyrics display optimizations.
- Added player title position setting, playback gesture settings, and lyric filter settings.
- Fixed Hi-Res logo, lyric credit line, video encoding, album artist placement, lyrics JP/CN swap, and 24/48 detection issues.
- Added lyric video sharing and 3D perspective lyrics effects.
- Fixed OPlus lyric initial publishing, lyricInfo loss after metadata refreshes, and reapply timing.
- Fixed FFmpeg
swr_convertsample count passing and volume spikes during song switching. - Refresh audio tag metadata during deep scans and route lyric parsing through the accompanist lyrics core.
- Preserve album category page state, fix stuck library scan progress indicator, and restore immediate queue drag sorting.
- Skip redundant media notification metadata refreshes and reduce lyric metadata churn.
- Added MiPlay output panel support on Xiaomi devices and delivered ColorOS lock-screen island lyrics via MediaMetadata.
- Split OPlus native and module lyric delivery modes and polished landscape player layout.
- Deferred desktop lyric window until settings are loaded and deferred shuffle queue reorder until next track.
- Reused packet and frame in the FFmpeg decoder to reduce allocations.
- Split
MusicRepositoryinto specialized managers and unified song list sorting logic. - Removed the
ella://deeplink scheme, keeping onlyhalcyon://. - Prevented duplicate playlist names and improved playlist create/rename flow.
- Added folder playlists, tile color customization, settings search with deeplink highlighting, and launcher icon monochrome tag.
- Added secondary lyric font scaling, reworked navigation dock and shortcut URIs, and simplified equalizer effects.
- Stripped OPlus inline LRC timestamps from plain-text lyrics.
- Fixed ratings refresh, custom folder scans, stale listening history entries, and zero-timestamp flash.
- Improved search filtering, player details, home card readability, and display under custom wallpapers.
Halcyon V1.1.96
中文更新日志
- 支持 Lyrico 插件合集 ZIP 导入,新增插件配置项,并支持 TTML 写入标签选择。
- 改进在线歌词匹配流程,支持预览匹配歌词,并清理 LRC ID 标签。
- 增强 TTML/AMLL 兼容,支持基于 agent 类型识别对唱歌词方位。
- 音频标签读取同步 Lyrico 的多值标签逻辑,并增强元数据编辑器的歌词、封面和 TTML 编辑能力。
- 新增 Navidrome、Emby 远程音乐源,并拆分为独立入口;改进 WebDAV/远程目录浏览体验。
- 新增播放器自定义背景、壁纸遮罩、动态背景和 Beautiful Lyrics 相关显示优化。
- 优化平板横屏播放器布局,支持封面墙滑动切歌、封面点击播放/暂停和更好的大屏显示。
- 新增播放页/歌词页歌词对齐设置,平板/桌面歌词相关显示逻辑进一步优化。
- 播放页音频信息现在会显示当前输出设备,包括扬声器、耳机、USB 音频和蓝牙设备。
- 播放队列顶部新增播放模式切换按钮,并修复随机播放队列顺序不一致的问题。
- 修复单曲循环下通知栏切歌、应用内状态锁死、歌词不同步等播放状态问题。
- 修复 E-AC-3/AC-3 接近结尾拖动会误跳下一首的问题。
- 优化超大曲库播放稳定性,改善 6 万首级别曲库下的播放和页面切换问题。
- 扩展音乐库搜索范围,支持更多实体类型搜索、批量选择和范围选择。
- 新增长按扫描触发完整读取标签的重扫逻辑。
- 听歌历史取消 200 条限制,听歌热力图支持点击日期查看当天时长。
- 优化首页卡片、每日推荐、分类卡片和自定义壁纸下的可读性。
- 修复跟随系统主题、浅色主题歌词/背景、Mini Lyric、超级岛进度条等显示问题。
- 桌面歌词和状态栏歌词增加更多显示控制项,包括颜色、位置、对齐和滚动表现优化。
- 改进均衡器页面,按设备能力显示低音增强和虚拟化选项。
- 移除实验性的自定义 App 图标切换逻辑,避免启动异常。
- 补充 README、第三方许可和多语言字符串。
English changelog
- Added support for importing Lyrico plugin bundle ZIPs, plugin configuration, and choosing whether TTML lyrics are written to TTMLLYRIC or regular lyrics tags.
- Improved online lyrics matching with scrollable preview and cleaner exported LRC content.
- Improved TTML/AMLL compatibility, including duet side detection from agent type.
- Synced multi-value audio tag reading with Lyrico and enhanced metadata editing for lyrics, cover art, and TTML lyrics.
- Added standalone Navidrome and Emby remote music sources, with improved WebDAV/remote directory browsing.
- Added player background customization, wallpaper overlays, dynamic backgrounds, and Beautiful Lyrics display improvements.
- Improved tablet landscape player layout with cover-wall swipe navigation, tap-to-play/pause on covers, and better large-screen presentation.
- Added lyric alignment settings for player and lyrics pages, with improved tablet and desktop lyric behavior.
- Player audio info now shows the current output device, including speaker, headphones, USB audio, and Bluetooth devices.
- Added a playback mode toggle to the queue header and fixed shuffled queue order mismatch.
- Fixed repeat-one playback issues where notification skips, in-app state, and lyrics could get stuck or out of sync.
- Fixed E-AC-3/AC-3 seeking near the end incorrectly skipping to the next track.
- Improved playback stability for very large music libraries, including 60k+ song libraries.
- Expanded library search across more entity types with multi-select and range selection support.
- Added long-press full tag rescan support.
- Removed the 200-item listening history limit and added tappable listening heatmap day details.
- Improved home cards, daily mix, category cards, and readability with custom wallpapers.
- Fixed follow-system theme behavior and multiple light-theme lyric/background rendering issues.
- Added more desktop lyric and status lyric controls, including color, position, alignment, and scrolling behavior improvements.
- Improved equalizer capability detection for bass boost and virtualizer controls.
- Removed the experimental custom app icon switcher to avoid launch issues.
- Updated README files, third-party licenses, and localized strings.
Halcyon V1.1.95
中文更新日志
❗ 安装前请先备份数据,备份后卸载重新安装!!
新功能
- 新增应用内均衡器:5 段 EQ + 低音增强 + 环绕声
- 新增 Monet 动态取色:可从系统壁纸或当前歌曲封面生成全局强调色
- 新增本地歌曲「在线匹配歌词」:播放页「更多」菜单 → 在线匹配歌词,基于 Lyrico 兼容插件,支持导入 /
删除歌词源插件,匹配结果可写入内嵌标签或 .lrc - 横屏封面墙改版:歌名 / 歌手移至顶部,原位置改为实时滚动歌词
- 字体设置迁移到「外观」并新增系统字体选择器;分享卡片自定义字体开关并入字体设置
- 作词家 / 作曲家页面新增侧边 A-Z 索引条
- 库内列表新增长按菜单(置顶、分享、删除),置顶项显示置顶标记
- 排序按钮改为下拉菜单
性能优化(重点照顾 1k–1 万+ 大曲库)
- 大幅降低冷启动卡顿:内置 Baseline Profile 预编译启动路径、库缓存流式解析、A-Z 排序键持久化到磁盘
- 修复进入音乐库 / 迷你歌词时的卡顿(消除标签读取产生的海量日志与重复内存分配)
- 大库优化:去除整库封面 URI 构建、批量搜索、单遍聚合、id→index 定位表等,进库与滚动更顺
- A-Z 索引字母不再每次重组重建
修复
- 修复快速滚动时 专辑 / 作曲家 / 作词家 卡片封面闪烁
- 修复横屏长按分享歌词时的弹窗布局错乱
- 修复通知栏播放模式与播放页不同步
- 修复从备份恢复后新功能设置(均衡器 / Monet 等)丢失
- 补齐多语言翻译
- 缩略图清晰度、A-Z 条与列表间距、年份卡片排版等细节优化
English changelog
❗ Please back up your data before installation. After backing up, uninstall the app and reinstall it!!
New
- In-app equalizer: 5-band EQ with bass boost and virtualizer
- Monet dynamic color: derive the app accent from the system wallpaper or the current song cover
- Online lyric matching for local songs: Player → More → Match lyrics online, powered by Lyrico-compatible plugins;
import/delete lyric source plugins; write results to embedded tags or a .lrc file - Reworked landscape cover wall: title/artist moved on top, with a live scrolling lyric where they used to be
- Font settings moved to Appearance with a system-font picker; the share-card custom-font toggle now lives there too
- Side A-Z index bar added to the composer / lyricist pages
- Long-press menus (pin to top, share, delete) across library lists, plus a pin indicator on pinned items
- Sort buttons replaced with dropdown menus
Performance (tuned for large 1k–10k+ libraries)
- Much smoother cold start: bundled baseline profile, streamed library-cache parsing, and an on-disk A-Z sort-key
cache - Fixed jank when entering the library / mini-lyrics (removed a tag-reader log storm and repeated allocations)
- Large-library work: dropped whole-library cover-URI maps, batched search, single-pass aggregation, id→index lookups
— faster entry and scrolling - A-Z index letters are no longer rebuilt on every recomposition
Fixes
- Album / composer / lyricist card covers no longer flicker on fast scroll
- Fixed the landscape share-lyrics dialog layout
- Fixed media-notification playback mode getting out of sync with the player
- Newly added settings (equalizer / Monet, etc.) are now restored from backup
- Synced missing localizations
- Polish: thumbnail sharpness, A-Z bar spacing, year-card layout
Halcyon V1.1.94
中文更新日志
- 文件夹分类详情页新增 A-Z 滑动定位条和快速拖动条
- 修复文件夹分类详情页顶部显示完整路径的问题,现在显示文件夹名称
- 修复应用语言切回“跟随系统”后仍停留在上一个手动语言的问题
- 新增多语言支持:德语、法语、韩语、俄语、土耳其语、印尼语、越南语、泰语
- 新增底栏入口自定义,最多可显示 4 个入口
- 新增系统均衡器入口
- 新增当前歌曲歌词偏移调整
- 增强 SPL/LRC 歌词兼容,支持 offset 标签并可忽略 SPL 头部标签
- 优化播放页更多菜单布局与常用操作位置
- 优化 ReplayGain、音频格式显示、TTML 演唱者显示和本地封面读取
- 修复真随机模式冷启动可能自动播放的问题
- 优化日志导出、设置页分组、Miuix 风格弹窗和输入体验
English Changelog
- Added A-Z fast index and draggable fast scroller to folder category detail pages
- Fixed folder category detail titles showing full paths instead of folder names
- Fixed app language fallback when switching back to “Follow system”
- Added more languages: German, French, Korean, Russian, Turkish, Indonesian, Vietnamese, and Thai
- Added customizable bottom dock entries, up to 4 items
- Added a system equalizer entry
- Added per-song lyric offset adjustment
- Improved SPL/LRC lyric compatibility, including offset support and optional SPL header filtering
- Refined the player action menu layout and common action placement
- Improved ReplayGain handling, audio format labels, TTML singer display, and local artwork loading
- Fixed true-random mode unexpectedly starting playback on cold launch
- Improved log export, settings organization, Miuix-style dialogs, and input components
Halcyon V1.1.93
中文更新日志
- 应用品牌继续迁移为 Halcyon,并保留 Ella 旧 deeplink / 快捷方式兼容。
- 新增 AI 对话与曲库推荐能力,支持根据本地曲库推荐歌曲、加入队列或创建歌单。
- 新增 MCP Server 支持,可让外部 AI 工具读取播放状态、搜索曲库并控制播放。
- 优化歌词页与流畅歌词体验,修复外部调起播放后歌词错用原播放列表当前曲的问题。
- 优化歌词分享卡片取色、字体跟随与分享配置。
- 增强 WebDAV、备份恢复、歌单导入导出与 m3u / m3u8 兼容。
- 修复 WAV 元数据读取、Unknown 语义污染、专辑/艺术家/分类聚合等曲库数据问题。
- 优化音乐库、专辑、艺术家、流派、年份、文件夹等页面滚动状态与快速索引性能。
- 改进多选工具栏,加入全选、区间选择、删除、添加到歌单等批量操作。
- 改进播放页更多菜单、队列拖拽、播放控制、音质标签、动态封面与不规则封面显示。
- 更新日语、繁中、英文与简中字符串,补齐新增设置与功能文案。
- 拆分播放器页面代码,新增
PlayerActionMenu、PlayerControls、PlayerCover、PlayerVisualizer等模块,降低后续维护压力。
English changelog
- Continued the brand migration to Halcyon while keeping legacy Ella deeplinks and shortcuts compatible.
- Added AI chat and local-library recommendation features, including queue and playlist actions.
- Added MCP Server support so external AI tools can read playback state, search the library, and control playback.
- Improved lyric and smooth lyric behavior, including correct lyrics after external playback handoff.
- Improved lyric share card colors, font following, and share options.
- Enhanced WebDAV backup/restore plus playlist import/export compatibility for m3u and m3u8.
- Fixed WAV metadata reading, Unknown metadata normalization, and album/artist/category aggregation issues.
- Improved scrolling state and fast-index performance across library, album, artist, genre, year, and folder pages.
- Improved multi-select actions with select all, range select, delete, and add-to-playlist controls.
- Refined player menus, queue reordering, playback controls, quality labels, dynamic covers, and non-square cover rendering.
- Updated Simplified Chinese, Traditional Chinese, Japanese, and English strings.
- Split large player screen code into dedicated action menu, controls, cover, and visualizer modules for better maintainability.
Halcyon V1.1.92
Halcyon (formerly Ella Music) 1.1.92
中文更新日志
- 修复分类页、音乐库、专辑、艺术家等页面拖动侧边快速索引时可能卡死、封面整片发白的问题。
- 优化快速索引滚动策略,改为“合并请求 + 串行滚动”,减少高频滚动对主线程和封面加载的影响。
- 修复流畅歌词播放时手动上下拖动后会被立刻拉回当前句的问题。
- 流畅歌词现在支持手动拖动后停留 3 秒,再自动回到当前播放句。
- 修复流畅歌词部分情况下拖动后不会自动回到当前句的问题,手动滚动期间也会保持回位计时。
- 播放器歌词页统一切换到新的 SmoothLyricView,不再使用旧的 WordLyricView。
- 调整迷你歌词预览区域布局,收紧当前句和后续歌词之间过大的空隙。
- 优化平板横屏下的流畅歌词字号和显示效果。
- 修复当前播放列表拖动排序时歌曲行可能重叠、文字压到其他歌曲上的问题。
- 当前播放列表拖拽项改为稳定 key,并为拖拽中的行增加固定高度和抬层效果。
- 优化播放模式切换逻辑,减少切换随机播放、单曲循环等模式时的卡顿、跳歌和进度恢复异常。
- 随机播放列表重排时优先使用原地移动,避免频繁重新装载整段播放列表。
- 评分标签写入改为标准 20 / 40 / 60 / 80 / 100,读取时自动归一回 1–5 星。
- 音乐库右上角搜索按钮移除,搜索入口调整为底栏右下角独立按钮。
- 搜索页改为和首页、设置同级的顶层导航,修复搜索页被底栏状态误判为音乐库页的问题。
- 修复冷启动后从首页进入搜索,再切换首页或设置时可能出现底栏状态混乱的问题。
- 正常态底栏调整为:首页 / 音乐库 / 设置 + 独立搜索。
- 紧凑态底栏调整为:首页 / 播放条 / 搜索。
- 收紧紧凑态底栏布局,左右圆形按钮缩小到 60dp,中间播放条不再显示歌词,避免播放条被挤压。
- 底栏 tab 和两侧圆形按钮增加按压时的玻璃鼓起反馈,按住时会有轻微放大和高亮效果。
- 增加 halcyon:// deeplink 支持,同时继续兼容旧的 ella:// deeplink。
- 新增 halcyon_shortcut_route / halcyon_shortcut_action,并保留旧的 ella_shortcut_route / ella_shortcut_action 兼容。
- 支持 halcyon 显式 Intent 风格快捷方式调用。
- 清理远端仓库地址、README、Star History、访客统计和 LX User-Agent 中的旧品牌残留。
- miuix 从 0.9.1 升级到 0.9.2,并适配相关 API 变化。
- 加固设置备份和听歌历史导出逻辑,降低导出 JSON 文件变成 0B 的概率。
- 设置备份和听歌历史导出 / 导入任务改为使用 activity.lifecycleScope,避免 Compose 组合被移除时任务被取消。
English changelog
- Fixed possible freezes when dragging the fast index bar in category, library, album, and artist pages.
- Improved fast index scrolling with merged requests and serialized scrolling to reduce main-thread pressure and cover loading glitches.
- Fixed an issue where Smooth Lyrics could immediately snap back to the current line after manual scrolling.
- Smooth Lyrics now waits 3 seconds after manual scrolling before returning to the current playing line.
- Fixed cases where Smooth Lyrics might not return to the current line if frame updates were not running continuously.
- The player lyrics page now uses the new SmoothLyricView directly instead of the old WordLyricView.
- Adjusted the mini lyrics preview layout and reduced excessive spacing between the current line and following lines.
- Improved Smooth Lyrics font size and readability in tablet landscape mode.
- Fixed overlapping rows when dragging items in the current playlist.
- Playlist drag items now use stable keys, fixed row height, and elevated drag layers to prevent text overlap.
- Improved playback mode switching to reduce stutter, unexpected track changes, and progress restoration issues.
- Shuffle playlist reordering now prefers in-place media item movement instead of reloading the entire playlist.
- Rating tags are now written as standard 20 / 40 / 60 / 80 / 100 values, while being normalized back to 1–5 stars when read.
- Removed the search button from the top-right of the music library and moved search to an independent bottom-bar button.
- Search is now handled as a top-level destination alongside Home and Settings, instead of being treated as part of Library.
- Fixed bottom-bar state issues when opening Search from Home after a cold start and then switching to Home or Settings.
- Normal bottom bar layout is now: Home / Library / Settings + independent Search.
- Compact bottom bar layout is now: Home / Player Bar / Search.
- Tightened the compact bottom bar layout: side buttons are now 60dp, and lyrics are disabled in the compact player bar to avoid squeezing the player area.
- Added glass-like press feedback to bottom bar tabs and circular buttons, including subtle scaling and highlight effects.
- Added support for halcyon:// deeplinks while keeping compatibility with legacy ella:// links.
- Added halcyon_shortcut_route / halcyon_shortcut_action while keeping legacy ella_shortcut_route / ella_shortcut_action compatibility.
- Added support for halcyon explicit Intent-style shortcut calls.
- Updated remote repository links, README clone commands, Star History, visitor counter, and LX User-Agent branding to Halcyon.
- Updated miuix from 0.9.1 to 0.9.2 and adapted related API changes.
- Hardened settings backup and listening history export to reduce the chance of generating 0B JSON files.
- Settings backup and listening history import/export tasks now use activity.lifecycleScope to avoid cancellation when the Compose scope is removed.
1.1.9
中文
- 新增桌面 Shortcut,默认提供音乐库、搜索、播放、随机全部四个入口。
- 新增
ella://searchURL Scheme,支持直接打开搜索页,并可携带搜索类型和关键词参数。 - 歌单列表与歌单详情现已支持歌单封面显示,收藏歌单和五星歌单也可展示封面。
- 歌单多选模式右上角新增“加入其他歌单”入口,可直接把所选歌曲追加到其他歌单或新建歌单。
- 音乐库顶部标题布局已优化,避免因左右操作按钮过多而被截断成“音...”。
- 修复专辑分类页进入专辑详情后返回会回到顶部的问题,现在会正确记住滚动位置。
- 修复“文件夹层次结构”在非歌曲名称排序下进入文件夹时首屏位置异常的问题,不再停在列表中间或残留旧排序锚点。
- 优化播放进度条交互,取消点击即跳转,改为拖动触发,降低误触概率。
- 优化流畅歌词与逐字歌词表现,修复 V2 对唱行高亮与边界处理问题。
- 默认禁用英文歌词长音发光效果,缓解英文逐字歌词场景下的重影问题。
- 修复播放页更多菜单中部分入口失效与行为不一致的问题,并统一当前歌曲相关操作逻辑。
- 继续完善播放页、歌单页、搜索页与设置页的细节交互和 MIUIX 风格一致性。
English
- Added new launcher shortcuts with four default entries: Library, Search, Play, and Shuffle All.
- Added the
ella://searchURL Scheme to open the search page directly with optional type and keyword parameters. - Playlist artwork is now shown in both playlist lists and playlist detail pages, including Favorites and the Five-Star playlist.
- Added a new “Add to other playlist” action in playlist multi-select mode for quickly appending selected songs to another playlist or a newly created one.
- Optimized the music library top bar layout to prevent the title from being truncated when too many side actions are visible.
- Fixed the issue where the album category page lost its scroll position after entering and leaving an album detail page.
- Fixed the folder hierarchy page opening at the wrong visible position when the sort mode was not Title, including stale anchor behavior from previous ordering.
- Improved seek bar interaction by removing tap-to-seek and requiring drag-based seeking to reduce accidental jumps.
- Improved smooth lyric and karaoke lyric rendering, including duet-line highlighting and boundary handling for V2 lines.
- Disabled English sustained-note glow by default to reduce ghosting in word-by-word lyric scenes.
- Fixed broken or inconsistent items in the player “more” menu and unified current-song action behavior.
- Continued polishing player, playlist, search, and settings interactions for better consistency with the MIUIX-style UI.
1.1.8
中文
- 新增开屏海报、自定义全局壁纸和 Hi-Res 封面标识设置;图片选择使用持久 URI 授权,重启后仍可读取。
- 非沉浸播放页现在会在 Hi-Res / MQ 音质歌曲封面右下角显示 Hi-Res 标识,支持自定义标识图片;默认标识尺寸和显示方式也已优化,避免蓝色默认封面底座露出。
- 新增独立音乐库搜索页,支持歌曲、专辑、歌手、歌词、重复歌曲和全标签搜索;搜索历史支持保存、删除单条和清空。
- 音乐库搜索现在支持标题、歌手、专辑、专辑艺人、年份、流派、作曲、作词、版权、注释、自定义标签、评分、文件名等字段。
- 音乐库首页新增星级筛选,可按全部星级或 1~5 星精确筛选歌曲。
- 歌词搜索结果会在歌曲项下方显示命中的歌词片段,并使用强调色突出关键词。
- 播放页更多菜单新增“添加到歌单”;歌曲更多菜单新增“添加到播放队列”和“歌词打轴”入口。
- 多选和单曲“添加到歌单”弹窗已统一,多个页面中的添加到歌单弹窗现在支持滚动。
- 歌单详情支持长按拖拽自定义排序,并会持久化保存顺序。
- 当前播放队列弹层新增小封面,并统一复用播放页队列菜单。
- 队列重排改为一次性提交新顺序,保留当前歌曲、播放进度和播放状态,避免大队列逐个移动导致卡死。
- 随机播放逻辑优化:进入随机前保存原播放顺序,退出随机后恢复原顺序;通知栏播放模式按钮同步应用内四态。
- 修复从单曲循环切换到随机播放时可能卡顿或队列状态异常的问题。
- 平板 / 横屏播放页补回收藏按钮。
- 横屏歌词页右上角新增入口,可切换到横屏封面展示页。
- 横屏封面页改为多封面层叠布局,中间显示当前歌曲封面,两侧显示队列前后歌曲封面,并支持左右滑动切歌。
- 横屏方向锁定逻辑调整,歌词页和封面页切换时不再重复触发旋转。
- 非沉浸播放页背景改为和沉浸式歌词页一致的渐变背景。
- 新增“播放页按钮轮廓”开关,控制非沉浸播放页部分按钮的半透明圆形轮廓。
- 播放按钮、播放模式按钮等图标样式调整,减少不协调的半透明背景。
- 歌词页改为更接近桌面歌词风格的发光和逐字效果。
- 英文等非 CJK 歌词逐词高亮不再逐字符点亮,CJK 歌词仍保留逐字效果。
- 修复外部歌词文件读取问题,现在会搜索同名
.lrc、.ttml、.elrc文件。 - Lyricon / SuperLyric / 媒体通知歌词的“传递翻译 / 注音”合并为“副行传递内容”下拉项。
- 迷你播放条副行支持“无 / 翻译 / 注音”。
- 蓝牙车载歌词文案调整为“媒体通知歌词”,并同步中英文文案。
- Flyme 状态栏歌词固定隐藏额外歌词通知;浮动通知歌词保留给非 Flyme 设备。
- 设置中新增“迷你播放条右侧按钮”选项,可选择显示下一曲按钮或播放队列按钮。
- 听歌日历新增日历热力图和时间线样式,并优化顶部布局、封面尺寸和歌手 / 专辑跳转。
- 听歌统计页历史记录和排行条目新增小封面,底部垫高调整为 160dp。
- 年份页封面卡片改小,降低首次进入时的卡顿。
- 平板分类网格支持 5~8 列,手机仍保持 1~4 列。
- 专辑详情页改为浅色信息头布局,支持完整日期显示、歌曲数、时长、年份统计和 DISC 分组。
- 文件夹详情页现在先显示子文件夹,再显示当前层歌曲,并修复当前歌曲定位和右侧索引偏移问题。
- 设置里的首页模块顺序改为长按拖拽排序,不再需要手动输入顺序数字。
- 新增统一 Miuix 风格组件层,统一 BottomSheet、Dialog、TextField、搜索框、危险确认弹窗和输入型 Sheet 样式。
- 关于页改为更接近 Miuix OS 3 demo 的样式,并优化暗色模式下的卡片、顶栏、标题和版本信息。
- 歌曲信息弹窗条目支持长按复制。
- 评分或元数据写入成功后会刷新标签缓存、内存音乐库和本地缓存,五星歌单和歌曲星级状态可即时更新。
- 内置元数据写入会在需要时请求系统写权限。
- Album 年份字段由整数改为字符串,支持显示完整日期;排序和年份分类继续通过兼容字段处理。
- “我喜欢的音乐”更名为“我喜欢的歌曲”。
- 移除 Jaudiotagger,不再作为标签读取主路径或 fallback 使用。
- 移除旧 Kyant TagLib Android fallback,避免 APK 中重复携带额外
libtaglib.so。 - 本地音频标签读取统一保留
lyrico-audiotag主路径;liblyrico_taglib.so仍作为 lyrico-audiotag 的 native 标签读写能力保留。 - 更新 FFmpeg 构建脚本,并新增预编译 FFmpeg 下载脚本,减少普通构建对本地 native 编译的依赖。
- 本版本未包含 WebDAV 播放崩溃的完整修复,WebDAV 相关问题会在后续版本单独处理。
English
- Added launch poster, global custom wallpaper, and Hi-Res cover badge settings. Selected images now use persistent URI permissions and remain available after restart.
- Non-immersive player covers now show a Hi-Res badge for Hi-Res / MQ tracks. Custom badge images are supported, and the default badge display has been refined to avoid the blue placeholder background.
- Added a dedicated library search page with support for songs, albums, artists, lyrics, duplicate songs, and full-tag search. Search history can be saved, removed individually, or cleared.
- Library search now covers title, artist, album, album artist, year, genre, composer, lyricist, copyright, visible comments, custom tags, rating, file name, and more.
- Added star-rating filters on the library page, supporting all ratings and exact 1–5 star filtering.
- Lyric search matches now show a lyric snippet below the song item, with matched text highlighted using the accent color.
- Added “Add to playlist” to the player menu, and added “Add to queue” and “Lyric timing” entries to song menus.
- Unified single-song and multi-select “Add to playlist” sheets. Add-to-playlist sheets in multiple pages now support scrolling.
- Playlist details now support long-press drag sorting, and custom order is persisted.
- The current queue sheet now shows small covers and reuses the same queue menu as the full player.
- Queue reordering now submits the new order in one batch while preserving the current song, playback position, and playback state, avoiding freezes caused by large queues.
- Improved shuffle logic: the original queue order is saved before entering shuffle and restored when shuffle is disabled. Notification playback-mode buttons now sync with the app’s four playback states.
- Fixed possible lag or queue-state issues when switching from repeat-one to shuffle.
- Restored the favorite button on tablet / landscape player layouts.
- Added a top-right entry in the landscape lyric page to switch to the landscape cover page.
- The landscape cover page now uses a stacked multi-cover layout, with the current cover in the center and nearby queue covers on both sides. Swipe gestures can switch to previous / next tracks.
- Adjusted landscape orientation locking so switching between lyric and cover pages no longer triggers repeated rotation.
- The non-immersive player background now uses the same gradient background style as immersive lyrics.
- Added a “Player button outline” setting to control translucent circular outlines for selected non-immersive player buttons.
- Refined play and playback-mode button icons by removing unnecessary translucent backgrounds.
- The lyric page now uses a desktop-lyric-like glow and word-highlight style.
- Non-CJK lyrics such as English are no longer highlighted character by character, while CJK lyrics keep character-level highlighting.
- Fixed external lyric file detection. Matching
.lrc,.ttml, and.elrcfiles are now searched. - Merged Lyricon / SuperLyric / media notification lyric translation and phonetic toggles into a single “secondary line content” dropdown.
- Mini player secondary lines now support none / translation / phonetic.
- Renamed Bluetooth / car lyric wording to “media notification lyrics” and updated Chinese / English strings.
- Flyme status-bar lyrics now always hide the extra lyric notification. Floating lyric notifications remain available for non-Flyme devices.
- Added a “mini player right button” setting, allowing the right-side button to be either next track or queue.
- Added a listening calendar with heatmap and timeline views, and improved the header layout, cover size, and artist / album navigation.
- Listening statistics history and ranking items now show small covers, and bottom padding has been adjusted to 160dp.
- Reduced cover size on the year page to improve first-entry performance.
- Tablet category grids now support 5–8 columns, while phones remain at 1–4 columns.
- Album details now use a light information header with full-date display, song count, duration, year stats, and DISC grouping.
- Folder details now show subfolders before songs in the current folder, and current-song positioning plus side-index offsets have been fixed.
- Home module ordering in settings now uses long-press drag sorting instead of manually entering order numbers.
- Added a shared Miuix-style surface layer to unify BottomSheet, Dialog, TextField, search bar, danger confirmation dialog, and input sheet styling.
- Redesigned the About page closer to the Miuix OS 3 demo style, with improved dark-mode cards, top bar behavior, title, and version display.
- Song information dialog entries now support long-press copy.
- After rating or metadata writes, tag cache, in-memory library data, and local cache are refreshed so five-star playlists and song rating states update immediately.
- Built-in metadata writing now requests system write permission when required.
- Album year changed from an integer to a string to support full-date display, while sorting and year categories remain compatible through a computed year field.
- Renamed “My Favorite Music” to “My Favorite Songs”.
- Removed Jaudiotagger. It is no longer used as either the primary metadata reader or a fallback.
- Removed the old Kyant TagLib Android fallback to avoid shipping an extra duplicate
libtaglib.so. - Local audio tag reading now keeps
lyrico-audiotagas the primary path.liblyrico_taglib.soremains as the native tag read/write capability used by lyrico-audiotag. - Updated FFmpeg build scripts and added a prebuilt FFmpeg download script to reduce reliance on local native compilation during normal builds.
- This release does not include a complete fix for WebDAV playback crashes. WebDAV issues will be handled separately in a future release.