老婆说把车里U盘上的歌更新一下,上次传歌还是2年前……于是就在网易云音乐PC端下载收藏的歌单,我去,居然是ncm格式。
百度了一下,ncm是云音乐搞的加密格式,太蛋疼了,怎么不叫cnm格式!
找了一圈,都没有转换到mp3格式的合适方案。要么不能用,比如格式工厂,要么不能批量,比如BesLyric……后来在github上找到一个好工具,ncmdump
编译&安装
yum install openssl openssl-devel gcc-c++ git taglib taglib-devel -y
git clone /anonymous5l/ncmdump.git
cd ncmdump/
make
#编译后会在ncmdump目录生成执行文件ncmdump,先给予权限
chmod 755 ncmdump
执行就一行命令的事,执行速度也很快,基本是秒转,最重要的原歌曲的封面图、码率不会丢。
ncmdump 文件路径
批量
ncmdump简单实用,但是也有个问题,就是无法批量转换某个文件夹下的所有ncm,那就用shell遍历一遍。
因为我是通过虚拟机的CentOS转的,而虚拟机的系统已经做了samba,所以直接就把ncm文件直接复制到虚拟机的文件夹里,遍历执行。
shell脚本:
#!/bin/bash
#根据路径自行修改遍历目录路径和ncmdump执行文件路径
for file in /root/samba/*
do
if [ -f "$file" ];then
/root/ncmdump/ncmdump "$file"
fi
done
转换完后会在ncmdump上级目录生成mp3文件
问题
绝大多数的ncm格式都能转换为mp3,但是有少部分会提示:
TagLib: MPEG::Header::parse() — Invalid sample rate.
但是转出来的mp3照样能用,不晓得问题原因,只能去作者的git提交issue了。
如果觉得《centos转换linux格式 CentOS 下转换网易云音乐ncm格式为mp3》对你有帮助,请点赞、收藏,并留下你的观点哦!