将您保存在网易云音乐、QQ音乐等在线音乐平台的歌单数据,转换成本项目支持的本地音乐播放器(如Salt Player、APlayer、Poweramp等)可识别的歌单格式,完成歌单的导入操作,方便您快速从在线音乐平台迁移歌单到本地音乐播放器。Quickly migrate your playlists from online music platforms to local music players.
(统计开始于2024.2.9)
⚠️注意⚠️
本项目只提供歌单的迁移与转换功能,不具有音乐下载、传输、播放的能力,您需要自行使用其他方式来获取非加密格式(flac、mp3、wav等)的音乐文件。
现在,已经有大量用户将主力使用的音乐软件从在线音乐平台转为了本地音乐播放器,虽然歌曲可以很顺利且快速地进行迁移操作,但是无法将自己创建的歌单、或者其他用户的优秀歌单一并进行快速迁移操作,这个项目就是为了解决这个问题而诞生的。
本项目能够将用户保存在网易云音乐、QQ音乐、酷狗音乐、酷我音乐、汽水音乐、Spotify,共6个在线音乐平台的歌单数据,以及从TuneMyMusic生成的CSV歌单文件,转换成支持的本地音乐播放器 (目前支持:Salt Player、APlayer、Poweramp) 可识别的歌单格式,完成歌单的导入操作,方便用户快速从在线音乐平台迁移歌单到本地音乐播放器。同时也支持了Salt Player、APlayer、Poweramp的歌单格式的相互转换,能快速方便地在本地播放器之间迁移歌单数据。
android.permission.INTERNET
):用于请求音乐平台服务器,在线获取歌单数据、检查更新、获取应用的更新日志、获取应用的更新信息。android.permission.VIBRATE
):用于在某些操作时进行震动反馈。<queries>...</queries>
):用于在选择歌单来源时,显示歌单来源App的图标、名称等信息。android.permission.MANAGE_EXTERNAL_STORAGE
):从外置存储(/storage/emulated/0
)及其子目录中读取音乐文件,写入结果文件android.permission.READ_EXTERNAL_STORAGE
):从外置存储(/storage/emulated/0
)及其子目录中读取音乐文件android.permission.WRITE_EXTERNAL_STORAGE
):向下载目录(/storage/emulated/0/Download
)中写入结果文件🛠️ 施工中……
本项目需要配合以下软件一起使用:
文件提供者
,在没有Root权限的情况下,也能访问应用私有data目录中的文件;或者也可以下载安装已修补的应用)
在线
的方式获取歌曲数量的限制(即可完整获取歌单中的歌曲信息)。若歌单中歌曲数量较多,则推荐使用此方法。☢️警告☢️
本步骤会覆盖您本地音乐的标签信息,请谨慎操作!
若您之前已经自行匹配(或修改)过歌曲的标签信息,可跳过本步骤。
若后续匹配结果不理想,再进行此步骤,并重新进行扫描即可。
打开歌单无界应用程序。
点击底部导航栏的扫描按钮(应用打开默认处于本页面)支持的音乐格式。
若您需要将扫描结果导出,请启用导出结果开关(仅当您需要在其他设备上进行歌单转换操作时,才需要打开本开关),并选择文件格式:
点击开始按钮,并授予请求的权限(如果未授予的话)。
选择您设备中存放音乐文件的目录,方法如下表格所示:
注意图片中第一行显示的当前父目录
音乐文件存放类型 | 在同一个目录中 |
---|---|
目录树示例 | ![]() |
操作方法 | 直接选择到父目录Music 即可 |
音乐文件存放类型 | 在同一目录的子目录中 |
---|---|
目录树示例 | ![]() |
操作方法 | 直接选择到父目录Music 即可 |
音乐文件存放类型 | 在不同目录中 |
---|---|
目录树示例 | ![]() |
操作方法 | 需要进行多次选择操作,每次选择一个存放音乐的目录(如图中的中文歌曲 、temp ),并在接下来的冲突对话框中选择追加 |
等待应用扫描完成(完成后会有Toast与震动提示)。
ℹ️提示ℹ️
若您使用在线获取歌单数据功能,请跳转查看第4.3节 开始歌单转换的操作。
打开文件管理器,授予Root权限,进入在线音乐平台客户端的数据目录,找到databases文件夹,找到指定的数据库文件。
若觉得各个软件的数据目录比较难找,可以使用MT管理器快速定位:点击左上角菜单-点击安装包提取-选择需要的音乐APP-点击数据目录1
,即可快速跳转到数据目录。
/data/user/0/com.netease.cloudmusic/databases
网易云音乐/data/databases
cloudmusic.db
/data/user/0/com.tencent.qqmusic/databases
QQ音乐/data/databases
QQMusic
/data/user/0/com.kugou.android/databases
酷狗音乐/data/databases
kugou_music_phone_v7.db
/data/user/0/cn.kuwo.player/databases
酷我音乐/data/databases
kwplayer.db
/data/user/0/com.luna.music/cache/NetCacheLoader/[非0目录]
汽水音乐/data/cache/NetCacheLoader/[非0目录]
将数据库文件复制到外部存储空间的任意目录中(如Download、Document等)。
在线获取:在点击下一步按钮后,弹出的对话框中选择登录方式:
提供的Cookie包含必需信息即可,填写格式为:key1=value1; key2=value2; key3=value3
,不需要填写path
、domain
等信息。
如:MUSIC_U=XXYYZZ998877; __csrf=aabbcc112233; uid=13811012138
数据库获取:选择歌单来源App的数据库文件或目录。
文件提供者
左上角的菜单按钮,选择对应的音乐平台,在database或cache目录中,选择对应的文件或目录。文件提供者
左上角的菜单按钮,选择当前设备的名称,选择对应的文件或目录。🌟 Salt Player(或糖醋音乐)
🌟 APlayer
🌟 Poweramp
已支持以下标签的编辑
已支持以下标签的自动补全(长按列表中的任意音乐项,可以进入多选状态,此时将只对选中的歌曲进行补全操作;进入多选状态后,再次长按任意音乐项,将该音乐项作为区间选择的开头,再次长按任意音乐项,将该音乐项作为区间选择的结束)
专辑艺术家
该功能依赖于本地歌曲的「专辑」与「艺术家」标签信息。
获取每个歌曲文件的「专辑」标签,在本地歌曲中查找是否有其他歌曲属于同一张专辑,将同一张专辑所有歌曲的「艺术家」标签汇总,并按照艺术家1/艺术家2/艺术家3
的格式,写入「专辑艺术家」标签中。
离别时刻 爱情公寓5电视剧原声带
,故将这4首歌曲的「艺术家」汇总为娄艺潇/爱情公寓全体/李金铭/韦正
,并写入这4首歌的「专辑艺术家」标签中。来自星星的你 OST - Part.7
,故将这2首歌曲的「艺术家」汇总为成始璄
,并写入这2首歌的「专辑艺术家」标签中。拥抱你
,故将该歌曲的「艺术家」汇总为刘思涵
,并写入该歌曲的「专辑艺术家」标签中。旋风少女 电视剧原声带
,故将该歌曲的「艺术家」汇总为印子月
,并写入该歌曲的「专辑艺术家」标签中。作词、作曲、编曲
该功能依赖于本地歌曲的「歌词」标签信息。
获取每个歌曲文件的「歌词」标签,识别出歌词中保存的作词、作曲、编曲信息,并按照人名1/人名2/人名3
的格式,分别写入「作词」、「作曲」、「编曲」标签中。
若您发现作词、作曲、编曲的识别有遗漏或错误,请联系开发者。
程序认为两个字符串相同的相似度大小,详情:
若当前阈值为0.8:
相同
字符串1:想いの眠るゆりかご (回忆长眠的摇篮)
字符串2:想いの眠るゆりかご (回忆长眠的摇篮)
相似度:1.0
相同
字符串1:伤感 II
字符串2:伤感 I
相似度:0.8
不相同
字符串1:I'M OK
字符串2:I AM OK
相似度:0.7142857142857143
不相同
字符串1:BANG BANG BANG (뱅뱅뱅)
字符串2:BANG BANG BANG
相似度:0.7
不相同
字符串1:이 사랑 (这份爱) (Inst.)
字符串2:이 사랑 (这份爱)
相似度:0.5555555555555556
不相同
字符串1:aaabbbccc
字符串2:abcabcabc
相似度:0.33333333333333337
大部分音乐平台对外语歌曲信息的命名方式一般为: 外文 (中文翻译)
或外文 (歌曲来源、歌曲版本等)
。
如City Of Stars (From "La La Land" Soundtrack)
、CALL ME BABY (叫我) (Chinese Ver.)
、桜色舞うころ (樱花纷飞时)
。
启用此功能可以将字符串中的括号部分删去,只保留外文名,即:外文
。如:City Of Stars
、CALL ME BABY
、桜色舞うころ
,以此提高自动匹配成功率。
但需要注意,部分歌曲会在歌名后用括号注明歌曲版本:歌名 (歌曲版本)
。如曾经我也想过一了百了 (Live)
、TruE (Ed Ver.)
,在这种情况下,若启用了本功能,会将其变成:曾经我也想过一了百了
、TruE
,继而可能会出现匹配错误。
请您根据您的实际情况,决定是否使用本功能。
例如:
歌单中歌曲的信息如下:
歌名:小幸运
歌手:田馥甄
专辑:我的少女时代 电影原声带
本地歌曲的信息如下:
歌名:小幸运
歌手:田馥甄
专辑:我的少女时代 电影原声大碟
将歌曲的[歌名] [歌手] [专辑]拼接成一个字符串,进行匹配,找到相似度最大的歌曲。表格中将显示整体匹配的相似度。
本匹配方法将使用:
小幸运田馥甄我的少女时代 电影原声带
与
小幸运田馥甄我的少女时代 电影原声大碟
进行匹配,相似度结果为:89.47%。
将歌曲的[歌名] [歌手] [专辑]分别进行匹配, 找到相似度最大的歌曲。 表格中将显示每个匹配项的相似度。
本匹配方法将分别使用:
小幸运
与小幸运
田馥甄
与田馥甄
我的少女时代 电影原声带
与我的少女时代 电影原声大碟
进行匹配,相似度结果分别为:
这三个平台的歌曲信息正确率较高,且较为完整,可以保证自动匹配的成功率。
该平台歌曲信息不太符合规范,合唱歌曲的艺术家名使用、
分隔,且括号、斜杠的使用比较混乱,且非【我喜欢】歌单中歌曲的专辑信息不会保存到数据库中,导致匹配精确度下降,不太建议使用。
该平台歌曲信息不太符合规范,合唱歌曲的艺术家名使用&
分隔,且括号、斜杠的使用比较混乱,且有很多用户自行上传的歌曲,这些歌曲的标签信息大部分都不完整且不合规范,可能导致匹配精确度下降,不太建议使用。
似乎该平台音乐的标题大多使用英语、繁体中文或音乐的原语言,故匹配准确率可能有所降低。
移动端App:
电脑端(或移动端浏览器使用电脑UA)网页版:
/home?id=xxxxx
,xxxxx即为您的UID。移动端APP:
设置和隐私
,点击账号
。用户名
处显示的字符串即为您的Spotify用户ID。网页端:
账号总览
,编辑个人资料
。用户名
处显示的字符串即为您的Spotify用户ID。各个Patch应用的修补方法大致相同,此处以ONPatch为例:
开发人员工具
的浏览器,并启用桌面版网站
。开发人员工具
。(Kiwi Browser在右上角的菜单中;电脑端浏览器按F12
,或在网页任意处右键,选择检查
)应用(程序)
选项卡,在左侧找到Cookie
,并展开,选择出现的网址。key1=value1; key2=value2; key3=value3
的格式填入软件,不需要填写path
、domain
等信息。