news 2026/8/19 15:01:12

整座音乐库一次配齐滚动歌词:LRCGET 批量下载实战笔记

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
整座音乐库一次配齐滚动歌词:LRCGET 批量下载实战笔记

整座音乐库一次配齐滚动歌词:LRCGET 批量下载实战笔记

【免费下载链接】lrcgetUtility for mass-downloading LRC synced lyrics for your offline music library.项目地址: https://gitcode.com/gh_mirrors/lr/lrcget

上个月搬家,我把存了十年的音乐整整齐齐倒进新硬盘——按"歌手/专辑"分好目录、统一改好文件名,满心欢喜地打开播放器,结果每一首歌都挂着一个"无歌词"的标签。逐首上网搜?搜到第二十首我就放弃了。后来我试了 LRCGET,一款专门为批量下载滚动歌词而生的桌面小工具:它扫描你指定的文件夹,从 LRCLIB 数据库自动匹配并下载同名.lrc歌词,让整库音乐一次性配齐。这篇文章就是我完整使用后的经验笔记。


一、动手之前,把这两件事弄明白

歌词到底是怎么"变"出来的

先别急着点按钮,理解一下它的工作方式,后面遇到问题才不慌。整个过程其实只有三步:

  1. 扫描:遍历你指定的文件夹(包括所有子目录),找出里面的音频文件;
  2. 匹配:拿着每首歌的标题、歌手、专辑信息去 LRCLIB 数据库里查询;
  3. 落地:把查到的歌词写成与歌曲同名的.lrc文件,放进同一个目录。

这里有一个贯穿全文的核心理念,请先记牢:歌词文件与音乐文件同目录、同名,只换扩展名song.mp3的歌词就是song.lrc,你不需要为歌词单独建任何目录,它也不动你的音频文件本身。哪天不想要了,删掉那个.lrc就恢复原样,随时能再下回来。

安装包怎么挑,一张表搞定

LRCGET 基于 Tauri 构建,安装包小、启动快。装之前先对照自己的系统选对包:

你的设备装哪个备注
WindowsEXE 安装程序需要 WebView2 组件支持
Ubuntu 24.04+ / Linux Mint 22+deb 或 Flatpak官方推荐 Flatpak
其他 Linux 发行版Flatpak 或 AppImage几乎都能跑
macOS Intel 老款dmg(x64 版)别下错架构
macOS Apple Silicon(M 系列)dmg(aarch64 版)M1/M2/M3 都选这个

💡小贴士:拿不准 Mac 是哪种芯片?点左上角苹果标志 → 关于本机,看到 "Apple M..." 字样就选 aarch64 版本。

⚠️注意:Windows 上如果遇到"打不开",多半是系统精简工具把 WebView2 卸载了;Linux 上播放没声音则大概率缺音频兼容层。这两件事的解法我放在第六节的避坑清单里,遇到再来看。


二、第一次见面:三分钟完成首次扫描

选对文件夹,就成功了一半

启动后第一件事是选择音乐文件夹。两个要点提前说:

  • LRCGET支持嵌套目录,你的"歌手/专辑"两层甚至三层目录都可以放心扔给它,它会递归扫到底;
  • 第一次上手,建议先选一个小目录试跑,确认整个流程顺畅后,再把完整音乐库加进来,免得首次扫描等太久。

之后想增删扫描目录,随时点右上角的菜单,里面藏着几个常用入口:Manage directories(管理目录)、Refresh library(增量刷新)、Reset library and perform full scan(清空库并全量重扫)。

学会看列表里的"信号灯"

扫描完成后,主界面就是你的指挥台:顶部依次是Tracks(曲目)/ Albums(专辑)/ Artists(艺术家)三个浏览维度,右侧还有一个独立的LRCLIB标签页,用来管理你发布过的歌词和与数据库的交互。

每首歌行内都带一个状态标签,三种颜色各代表一种情况:

  • 🟢Synced:已有同步歌词,播放时会跟着旋律滚动高亮;
  • 🔵Plain:只有纯文本歌词,没有时间轴;
  • Instrumental:判定为纯音乐,不需要歌词。

一眼扫过去,哪些歌还缺歌词、哪些已经配齐,清清楚楚。


三、重头戏:把批量下载这件事交给后台

完整操作只要四步

场景是这样的:你的音乐库里躺着几百上千首没有歌词的歌,逐首处理显然不现实——这时候就该把重活扔给后台。

  1. 点击右上角粉色的Download all lyrics按钮;
  2. 按钮会先显示 "Preparing"(构建队列),随后自动弹出下载进度窗;
  3. 进度窗顶部实时统计FOUND(已找到)/ NOT FOUND(未找到)/ TOTAL(总数)三个数字,下方是逐首歌的结果列表;
  4. 想中途收手,点灰色的STOP按钮即可,已下载的部分不会丢失。

绿字代表下载成功,红字表示该曲目在数据库里没有歌词记录,还有一部分会被自动标记为纯音乐(Instrumental)。

整个下载过程是后台排队执行的,你可以继续浏览列表、切换专辑甚至播放音乐,界面完全不会卡住。

⚠️注意:批量下载默认跳过已有歌词的歌曲,不会覆盖你手动编辑过的文件。想要强制全部重下,得去设置里切换策略(见下方)。

三种下载策略,按需选择

打开Settings,第一项 "Download lyrics for" 提供三种策略,理解之后按需选择:

策略含义适用场景
All tracks (overwrite existing lyrics)全部重下并覆盖想彻底推倒重来
Only tracks without synced lyrics只补没有同步歌词的日常推荐,补缺不打扰
Only tracks without any lyrics只补完全没有歌词的只想把"光秃秃"的歌填上

💡小贴士:上千首的库建议分块处理,比如按艺术家分批添加目录、每次跑几百首,既方便盯着结果,也不会让单次请求量太大。


四、自动匹配失效时,手动搜索是救生圈

批量下载再聪明,也会遇到"对不上号"的情况:比如某首歌的文件名是song123.mp3,标签信息又残缺,自动匹配自然落空。这时候别急着下结论说"数据库没有",试试手动搜索这招。

操作路径:

  1. 从歌曲行进入搜索入口(也可以在主界面顶部搜索框旁找到);
  2. 在弹窗里修改Title(标题)/ Album(专辑)/ Artist(歌手)三个字段,尽量补全信息;
  3. 点击Search发起查询,结果里每条都会标明是同步歌词还是纯文本歌词
  4. 点开预览确认内容,再决定下载哪一个版本。

这一招专治元数据不完整导致的匹配失败,等于给自动流程加了一道人工保险。

避坑:搜索前尽量把歌手和专辑写准确,乱填关键词反而会搜出一堆同名异曲的干扰项。


五、听歌、导出、精修:让歌词踩着拍子

播放时歌词自动高亮

歌词下载完,总要验收一下。在列表里双击歌曲(或点击行内播放按钮)即可开始播放,底部歌词面板会随进度自动滚动并高亮当前行。配合Export按钮,你还能把歌词导出给其他播放器使用。

导出菜单支持纯文本(.txt)、同步 LRC(.lrc)与嵌入音轨三种方式;底部歌词面板播放时高亮当前行。

关于导出有两个细节值得留意:

  • Embed into track(嵌入音轨)是实验功能,需要先在设置里勾选 "Enable embed lyrics option" 才会出现,而且它可能损坏音频文件,开启前务必备份整个音乐库;
  • 普通的.txt.lrc导出非常安全,纯文本适合阅读场景,LRC 适合支持滚动歌词的播放器。

时间轴不对?进编辑器"对表"

下载的歌词偶尔会出现整体偏移,或者数据库里根本没有这首歌、需要自己补一份。从歌曲行进入编辑界面,你会看到一个专业的时间轴编辑器

  • 每行歌词左侧显示毫秒级时间戳,用+/-按钮逐行微调;
  • SYNC WORD按钮可对单词做精细拆分,适合歌词和旋律节奏不齐的场合;
  • PLAY支持边播边改,RESET一键撤销全部改动;
  • 完成后点Save(快捷键Ctrl+S)保存到本地。

编辑器顶部切换 PLAIN / SYNCED 两种模式,中间的歌词行列表支持逐行增删与时间戳精修。

如果你愿意把成果分享出去,Save 的下拉菜单里还有Save and Publish(保存并发布),可以把你整理好的歌词提交回 LRCLIB 数据库,让其他听众少踩一次坑。之后到主界面的LRCLIB标签页,就能看到自己贡献过的内容,也支持后续预览、修正或标记问题。


六、避坑指南:六个高频翻车现场

用了一个多月,我把自己和身边朋友踩过的坑整理成一份清单,按出现频率排序:

1. 点了下载,为什么有的歌直接被跳过?不是 bug,多半是下载策略在起作用。默认策略会跳过已有歌词的歌曲,去设置里把策略切到 "All tracks (overwrite existing lyrics)" 就能强制重下。

2. 某首歌永远显示 NOT FOUND数据库里确实没有它的歌词记录,或者歌曲信息与数据库差异过大。先用第四节的手动搜索核对一遍;仍无结果,就说明这首歌真的缺词,可以自己编辑一份再保存,顺手还能发布出去造福别人。

3. 歌词整体比音乐快/慢半拍常见于现场版、重制版等不同版本,或上传者本身的时间轴就有偏差。进编辑器,先修正首句时间戳,再逐句对齐;也可以换其他用户上传的版本试试。

4. 批量下载跑到一半失败了一堆多为网络波动或瞬时超时,不是永久失败。查看进度窗里的失败原因,稍后再点一次Download all lyrics,应用只会补下载缺歌词的曲目,不会重复劳动。

5. Linux 下播放没有声音Ubuntu / Debian 系多半缺 PulseAudio 兼容层,装一下就好:

# 解决 Linux 下音频无法播放的问题 sudo apt install pipewire-alsa

6. Windows 上应用打不开LRCGET 依赖 WebView2 组件,精简版系统或"清理"脚本可能把它卸载了。重新安装或恢复 Microsoft Edge(自带 WebView2)后重启应用即可。


七、给喜欢折腾的人:源码里还能挖到什么

最后一段写给想自己动手改代码的朋友。LRCGET 的技术栈很清爽:前端 Vue 3src目录)+后端 Rustsrc-tauri目录),中间用 Tauri 桥接,数据落在 SQLite 里。整包代码克隆下来就能研究:

# 克隆源码 git clone https://gitcode.com/gh_mirrors/lr/lrcget # 安装前端依赖 npm install # 启动带热更新的开发窗口 npm run tauri dev

几个值得关注的细节:

  • Rust 侧按职责拆成了scanner(扫描与指纹)、parser(LRC 解析)、lrclib(与歌词服务的网络交互)、library(查询与持久化)等模块,各管一摊,读起来不费劲;
  • 数据库用了一整套迁移脚本逐步演进,甚至内置了FTS5 全文搜索,歌词库大了之后查询依然飞快;
  • lyricsfiles表作为歌词的唯一存储源,与专注音轨元数据的tracks表分离——这让"孤儿歌词重新关联""避免重复下载"成为可能,是数据设计上很聪明的一笔;
  • 源码里的ARCHITECTURE.mdLYRICSFILE_CONCEPT.md分别讲清了模块划分和自研歌词文件格式,想深入理解的人建议先读这两篇。

需要出正式安装包时,运行npm run tauri build,产物会输出到src-tauri/target/release/目录。


到这里,从装好、扫库、批量下载到精修发布,一整条路都走完了。我的建议很简单:先拿一个小文件夹试跑,养成"批量下载 → 抽查同步 → 个别精修"的习惯,你的本地音乐库很快就能全部配上滚动歌词。接下来要做的就是:倒一杯茶,点下那个粉色按钮,然后看着歌单里的"无歌词"三个字一个个消失。愿你的每一首歌,都能跟着旋律亮起来。

【免费下载链接】lrcgetUtility for mass-downloading LRC synced lyrics for your offline music library.项目地址: https://gitcode.com/gh_mirrors/lr/lrcget

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/19 14:59:48

ZIP密码破解实操指南:三步用 bkcrack 找回遗忘的密码

ZIP密码破解实操指南:三步用 bkcrack 找回遗忘的密码 【免费下载链接】bkcrack Crack legacy zip encryption with Biham and Kochers known plaintext attack. 项目地址: https://gitcode.com/gh_mirrors/bk/bkcrack 你是否也有过这样的瞬间——翻出一个尘封…

作者头像 李华
网站建设 2026/8/19 14:49:51

AI Agent协作界面设计:从黑盒到透明可控的终端式交互

1. 从“黑盒子”到“透明伙伴”:为什么我们需要重新思考人机协作界面 最近几年,AI Agent(智能体)的概念火得一塌糊涂,从能帮你写代码的GitHub Copilot,到能自主完成复杂任务的AutoGPT,再到各种宣…

作者头像 李华
网站建设 2026/8/19 14:49:00

FreeRTOS信号量原理深度解析:从队列实现到实战应用

1. 从“抢厕所”到“信号灯”:信号量在FreeRTOS中的本质 如果你刚开始接触FreeRTOS,学完了任务创建、调度和队列,感觉一切尽在掌握,那么“信号量”这个概念可能会让你第一次感受到一丝抽象和困惑。它不像队列那样直观地传递数据&a…

作者头像 李华