网易云音乐缓存解码器 NeteaseMusicCacheDecoder
简介
将网易云音乐的缓存文件,转换为可以播放的MP3音乐。可以根据缓存音乐名(音乐ID)按照一定规则为音乐自动重命名。并且更新音乐的元数据,例如歌手与专辑信息、专辑封面。添加云音乐识别码(163 key),可以被云音乐识别,以查看歌词和评论。
项目基于Nodejs+Electron构建,除了Windows系统,MacOS和Linux也支持了。MacOS版本可以自动定位缓存目录,极大简化了操作。
项目仅用于技术交流,希望大家多支持正版音乐!
最新版本
v3.4.1 修复版本,更新于北京时间2020年8月2日
安装说明
Windows版本
解压下载的压缩包到任何位置(不建议在系统目录下),双击NeteaseMusicCacheDecoder.exe
即可开始使用。
macOS版本
解压下载的压缩包,将里面的两个文件(NeteaseMusicCacheDecoder
和settings.json
)复制到其他目录下,只要不是解压产生的目录就可以。双击NeteaseMusicCacheDecoder
,会弹出信任警告,提示程序从Github中下载。此时,点击“打开”即可正常使用。
使用说明
基本说明&注意事项
- 网易云音乐的缓存后缀名是uc(Windows)或uc!(macOS)。只有这两个后缀名的文件才会被转换。
- 自动命名依赖于缓存文件文件名中的ID部分,如果ID有误,获取的信息一定不正确。
- 如果缓存文件不是按照音乐ID命名或者无法获取到音乐信息,将按照缓存原始文件名命名。
- 自动命名的默认方式是
歌手名 - 歌曲名
.mp3,点击规则右侧的重置
按钮可以重置为默认方式。 - 自动命名时会自动填写歌曲元数据。
- 自动命名以及歌曲元数据自动填写都需要联网。
- 已经失效的音乐,很大可能无法获得音乐信息。
- 转换过程不会校验音乐数据是否完整:部分缓存的音乐转换完也可能无法播放。
- macOS版本中,在选择缓存目录时可能会弹出窗口询问“是否允许访问日历”,选择允许或不允许均可。程序并不需要访问日历相关内容。
如果只要转换一个文件...
- 使用“单文件处理”选项卡
- 选择待转换的缓存文件,后缀名是uc(Windows)或uc!(macOS)。macOS如果勾选下方的
在网易云音乐默认缓存路径下检索
,选择缓存文件时,会优先在云音乐默认的缓存目录下选择 - 选择音乐准备写入的目录
- 决定音乐的文件名(手动输入/自动获取)
- 点击“开始转换”
如果需要转换很多文件...
- 使用“批量处理”选项卡
- 选择待转换的缓存文件所在的目录。macOS如果勾选下方的
在网易云音乐默认缓存路径下检索
,选择缓存目录时,会先跳转到缓存目录 - 选择音乐准备写入的目录
- 决定音乐的文件名(按照缓存文件名/自动获取)
- 点击“开始转换”
如果只想转换缓存目录下,几首我想要的音乐...
- 使用“批量处理”选项卡
- 选择待转换的缓存文件所在的目录。macOS如果勾选下方的
在网易云音乐默认缓存路径下检索
,选择缓存目录时,会先跳转到缓存目录 - 选择音乐准备写入的目录
- 决定音乐的文件名(按照缓存文件名/自动获取)
- 点击“扫描缓存文件”
- 在下方显示的缓存文件列表中,根据歌曲的信息,找到需要转换的一首音乐,点击该行右侧的“转换此文件”即可完成转换
更新
- 当有新版本时,“关于”选项卡右侧将会有叹号图标显示。在“关于”选项卡中可以浏览新版本信息,并选择更新。
- 更新包会根据系统下载对应版本的压缩包,下载后按照前述的安装方法做一次就可以(相当于使用新的App)。
- 如果需要保留先前的设置,将上一版本的
settings.json
替换到新的目录中(非建议操作,settings.json可能会发生变化)。 - 没有新版本时,不会有任何提示。
自动获取
自动获取提供8种可以使用的歌曲属性:歌手名、歌曲名、专辑名、歌曲ID、附加名、发行公司、曲目ID、唱片ID。指定的规则需要避免多首音乐对应同一个名称的情况,否则后转换的音乐会覆盖掉之前转换的音乐。自动命名的默认方式是歌手名 - 歌曲名
.mp3,一般情况下不会发生重复。可能会发生重复的情况可能是,一首音乐具有多个版本。请注意此种情况下音乐的区别。
举例:《名侦探柯南》的主题旋律
属性 | 版本1 | 版本2 |
---|---|---|
音乐ID | 28188343 | 28188284 |
歌曲名 | 「名探偵コナン」メイン・テーマ | 「名探偵コナン」メイン・テーマ |
歌手名 | 大野克夫 | 大野克夫 |
专辑名 | 「名探偵コナン」オリジナルサウンドトラック2 | 「名探偵コナン」オリジナルサウンドトラック1 |
附加名 | ||
发行公司 | ポリドール | ポリドール |
曲目ID | 36 | 1 |
唱片ID | 1 | 1 |
两个版本名称完全相同,但是隶属于不同专辑,风格不同。这种情况需要添加其他属性(如专辑)进行区分。 名称中含有音乐ID可以保证不重复。含有专辑名、歌手名和歌曲名,重复概率非常低。
附加名
附加名就是音乐的别名,反映在云音乐中是歌曲后面跟随的灰色小字,例如:仓木麻衣的PUZZLE,给出的附加名是:映画「名探偵コナン 漆黒の追跡者(チェイサー)」EDテーマ
(电影《名侦探柯南 漆黑的追踪者》片尾曲)。附加名如果存在,会用小括号括起来。上面的例子会命名为:倉木麻衣 - PUZZLE(映画「名探偵コナン 漆黒の追跡者(チェイサー)」EDテーマ).mp3
。
附加名通常是对音乐的辅助说明,比如它的出处、使用场景,通常会使文件名很长。另外,有一类“XXX最热XX”也是附加名,使用时要慎重。
歌曲元数据
歌曲元数据是用于描述歌曲属性的数据,比如歌曲的艺术家、隶属的专辑、封面的图片等等。
支持的元数据信息:
- 歌手/艺术家artist
- 专辑album
- 歌曲名/标题title
- 轨道号trackNumber
- 版权信息copyright
- 歌曲封面cover
- 备注comment,用于云音乐识别为下载音乐
开发计划
多语言支持(英语&繁体中文)√- 优化提示信息(现在部分提示信息来自于Nodejs,这些信息对于非IT工作者并不易于理解)
歌曲元数据更新(如封面图片)√转换的歌曲可以被云音乐识别√歌曲数据查看√- 检测音乐完整性
- 自动检测缓存目录(对于Windows)
- 简易播放器(可以试听解码音乐,功能很基本,并不是设计用来播放音乐的)
- 自动命名冲突解决
何时能上线嘛...社畜的加班生活你们都懂得
更新历史
v3.4.1
- 修复:批量转换的扫描模式下,目标路径使用的不是批量页面上的路径。
v3.4.0 选择性转换需要的音乐
- 当缓存文件特别多的时候,可以通过扫描路径下的缓存,通过获取到的音乐信息,只转换需要的音乐
v3.3.0 更新音乐元数据
- 自动获取音乐名称的时候同步更新音乐元数据
- 通过自动获取名称的音乐可以被网易云音乐识别为已下载音乐
- 解决音乐名称中包含特殊字符的情况
v3.2.0 增加简体中文和英文的多语言支持
- 增加简体中文和英文的多语言支持
- 增加手动检查更新的功能
- 检查更新的URL更新,解决部分网络情况下无法访问更新URL的问题
v3.1.0 使用Electron全新构建的App
- 解决V2版本下获取音乐名称有误的问题
- Mac上也可以使用了
- 界面重新设计,更现代
- 可以自定义音乐命名规则
- 自动检查更新,不错过新功能
声明
本程序为免费程序,分享请注明出处,尊重开发者劳动。本程序传播过程中造成的任何形式的后果与开发者无关。
云音乐识别码(163 key)的构造方法参考了nondanee的163marker项目(https://github.com/nondanee/163marker)
项目地址
Github:https://github.com/lchloride/NeteaseMusicCacheDecoder
如有问题请在issue中留言。