#最近下载了一批WAV格式的音乐。可是 WAV格式的体积太大,然后iPhone 也无法播放。
放在NAS上转码 转码也要等一会才能听。用格式工厂转码后的文件是噪音,音乐都没了,
最后发现用酷狗可以 ,但是坑爹的 酷狗转的音乐 标签全部都抹了。
专辑名字,歌词都没了。
然后自己查了一下 使用music-tag 先导出标签 然后 再用酷狗转成FLAC 然后再用music-tag根据导出的名字再写到flac里面。反正就听折腾的。后来自己就用python 写了点代码 来帮我操作
先是导出音乐标签 保存在再脚本所在的alltag目录
import music_tag,json,os,sys
def readTag(file):
f=music_tag.load_file(file)# dict access returns a Metadata
allTag=['tracktitle','artist','album','albumartist','composer','tracknumber','totaltracks','discnumber','totaldiscs','genre','year','lyrics','isrc','comment','compilation']
#artwork
info={}
for i in allTag:
info[i]=str(f[i])
#print(i,f[i])
print(f.filename)
#d=json.loads(j)
#print(f.filename.split("/")[-1:])
tName=os.getcwd()+'/alltag/'+f.filename.split("/")[-1:][0]+'.json'
tFile=open(tName,"w")
tFile.write(json.dumps(info));
tFile.flush()
tFile.close()
path=input("输入目录")
list=os.listdir(path)
for m in list:
readTag(path+"/"+m)
匹配转码过的歌曲
import music_tag,json,os,sys
def writeTag(file):
f=music_tag.load_file(file)# dict access returns a Metadata
tName=os.getcwd()+'\\alltag\\'+f.filename.split("/")[-1:][0]+'.json'
tName=tName.replace(".flac",".wav") #后缀记得替换否则找不到文件
tag=json.loads(open(tName).read())
allTag=['tracktitle','artist','album','albumartist','composer','tracknumber','totaltracks','discnumber','totaldiscs','genre','year','lyrics','isrc','comment','compilation']
#artwork
for i in allTag:
try:
f.remove_tag(i)
f.append_tag(i,tag[i])
except Exception as e:
pass
f.save()
path=input("输入目录")
list=os.listdir(path)
l=len(list)
for m in list:
print("剩余",l,"个",'正在处理',m)
writeTag(path+"/"+m)
l-=1
就这么多吧。。