自律小栈博客使用了Meting插件来为博客增加音乐播放功能,但是Meting解析QQ音乐的接口已经坏掉,现在只能使用网易云音乐的API调用歌曲。
但网易云真是一个扶不起的阿斗,稍微流行一点的歌曲就没有版权,你会神奇地发现原先听得好好的歌曲,突然就变灰了,突然就“因合作方要求,该资源暂时下架”。
哀其不幸,怒其不争,靠别人不如靠自己。
今天鼓捣了一下Aplayer的本地播放功能,还是很香的,经过多次测试,现在已经完美支持本地播放了。
这里记录一下,用作备忘。
网站的封面通过MP3 tag来获取,进入官网下载最新版本,然后添加国内的源来解析添加对应的MP3信息。
点此下载解析源,通过扫描对应目录可以载入歌曲,选择相应的名称与艺人名获取对应封面,直接拖拽保存即可。
歌词方面,网易云支持的歌曲,可以通过这个小软件获取对应的歌词,没有版权的话,则的通过QQ音乐进行下载。
首先在设置里勾选下载歌词,如果遇到版权弹窗需要绿钻的情况,就将该歌曲和免费歌曲新建成一个歌单,然后点击下载即可,这样可以将歌词下载下来。
打开文本编辑软件,删除歌词前面的版权部分,因为这部分Aplayer不解析,保留开始歌词的那部分时间轴,记得保存为UTF-8格式,否则乱码。
这样歌曲文件、封面图、歌词都有了,就可以完美复现播放效果了。
如果使用其他子域名来调用歌曲,可能会遇到跨域权限问题Access-Control-Allow-Origin
,Nginx服务器可以添加如下代码解决:
location / {
add_header Access-Control-Allow-Origin https://you domain;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
if ($request_method = 'OPTIONS') {
return 204;
}
}
到此完美解决本地播放音乐的问题,以后可以将版权受限的音乐也放在博客里,有条件的可以利用OSS进行加速播放。
因为博客定位的原因,在工作驿站中不添加歌曲功能,你可以在自律小栈查看效果,点此前往。