不用看音乐软件脸色的日子到来了

网易云音乐你是个讨人厌的东西

不用看音乐软件脸色的日子到来了

紧急检修

虽然严格意义上来说不算坏了

惊讶地发现在线歌单里的一首歌突然变成vip了,whichmeans博客只能听三十秒。不好。

翻箱倒柜找了一小时都没找到非vip的平替,思来想去还是把在线歌单转为本地曲目。

MeetingJs在线歌单其实有很多优点。

1.想换歌的时候随便换

2.播放相对本地歌单而言流畅很多

唯一的缺点就是音源版权要看平台的脸色。其实歌单里的歌莫名其妙变成vip很多次了,只是之前我都能顺利的找到平替更换,这次是真找不到了。于是含泪搬去我当初没有选择的本地歌单。

好麻烦!!好麻烦!!!

绕开音乐版权加密

该死的网易云把音频加密成了.ncm格式,vip歌曲你加密我没话说,但恶心的就是一部分非vip歌曲也是.ncm格式。何意味啊。

https://ncm.worthsee.com/在线转换绕开加密即可。

放到哪里好呢

放到 Hugo 的 /static 目录:

1
2
3
/static/music/song1.mp3
/static/music/song2.mp3
/static/music/cover1.jpg

网页访问路径:

1
/music/song1.mp3

本来我是想把每首歌的专辑封面都放进去的,但是有点麻烦,是的,我就是这样一个连这么小的麻烦都会害怕的人,所以最后还是选用统一图片作为封面。事发突然也没闲心专门去约稿或者捏图,从手机里随便翻了个汉堡小猫做封面。DJ小猫汉堡加油。

IMG_8511.JPG

其实真要自定义的话想去约稿……但是具体该约啥样的我没想法。搁置之。

改代码吧(叹气

首先我找了半天我把原来的代码放哪了。之前设置的记忆已经消失在塞纳河边。

然后找到了,是放在这儿了:

1
layouts/_default/baseof.html

备份原文件,然后睡了一觉,然后开改。GPT大师——————

和gpt扯皮的过程太乱了不放了。放个改前和改后:

修改前:

1
2
3
4
5
6
7
8
        <meting-js
            server="netease" 
            type="playlist" 
            id="我的歌单编号" 
            fixed="true"
            autoplay="false">
        </meting-js>
        <script src="https://unpkg.com/open-heart-element" type="module"></script>   

修改后

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
<!-- APlayer 脚本 -->
<script src="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.js"></script>

<script>
document.addEventListener("DOMContentLoaded", function () {

    window.aplayer = new APlayer({
        container: document.getElementById('aplayer'),
        fixed: true,
        autoplay: false,
        preload: 'none',
        volume: 0.7,
        audio: [
            { name: "第一首", artist: "谁唱的", url: "/music/song1.mp3", cover: "/music/cover1.JPG" },
            { name: "第二首", artist: "谁唱的", url: "/music/song25.mp3", cover: "/music/cover1.JPG" }
        ]
    });
});
</script>

第一次push发现成功了但是网页端没显示播放器,问了gpt大师,大师给了这样的解决方案:

image.png

也就是

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
<main class="main full-width">
    {{- block "main" . }}{{- end }}
</main>

<!-- 👇 一定放这里 -->
<div id="aplayer"></div>

{{ partial "footer/include.html" . }}

<!-- APlayer 脚本 -->
<script src="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.js"></script>

以防万一又筛查了一下,发现我还忘了写一个挺根本的

image.png

毕竟之前用的是MeetingJs嘛……谁能想到我当初根本没引入aplayer呢……(白痴时刻)

改吧改吧

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
<head>
    {{- partial "head/head.html" . -}}
    {{- block "head" . -}}{{ end }}

    <!-- 👇 加在这里 -->
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.css">

    {{ $styles := resources.Get "scss/style.scss" | toCSS | minify | fingerprint }}
    <link rel="stylesheet" href="{{ $styles.Permalink }}">
</head>

然后大师给的初始方案里这句也导致了播放器不显示,所以把这个删掉:

1
if (window.aplayer) return;

删掉之后核对好歌曲文件名(mp3,jpg什么的大小写也要一致)。然后再次push。

歌曲播放器复活了但

但本地歌单其实坏处挺多的:

1.卡。真的卡,比在线的卡多了。何况我还有25首。祖坚正庆的7分钟神曲Fleeting moment非常好时长使我的博客卡顿。但这首太权威了,卡就卡吧我不想换。

2.换歌不方便。

但是不用再看vip曲库的脸色了。

好吧,其实本来还有很多首歌我想放但因为vip没放。现在,在可以绕开vip了这个前提下,我还是没有把那些个歌放进来,一个是因为25首已经很卡了,再加估计更卡。二一个是因为这25首歌现在的曲风过渡挺完美的(毕竟是我有意为之),我不想再去动它了。GPT说其实有一个本地 + 网易云混合方案:本地 mp3当主歌单,网易云作为 fallback(文件不存在就在线播放),可以稳定性和灵活性都兼顾。但我懒得再折腾了,心态belike:能用就行。

就这样吧!

❤️
记录希望的影像
Built with Hugo
主题 StackJimmy 设计