原生lrc歌词同步之meter频谱播放器
一、引用与配置代码举例:
<script>
var sf = document.createElement('script');
sf.charset = 'utf-8';
sf.src = 'https://638183.freep.cn/638183/web/js2024/meter_pinpu_yslrc.js';
document.body.appendChild(sf);
var text = `[00:00.00]歌词一\n[00:00.947]歌词二\n[00:05:321]……\n[00:04.239]歌词N`;
sf.onload = () => {
HCPlayer({
papa: '#papa',
geci: text,
skip: 0,
average: 0,
pinpu: { num: 40, width: 3, height: 120, color: 'linear-gradient(white 1px, transparent 10px, transparent 70%, white 70% 0)' },
player_css: 'right: 100px; bottom: 20px; color: silver;',
lrc_css: 'left: 30px; bottom: 20px; --bg: linear-gradient(#eeffee, #eeffeef0, #eeffee80); color: #666;',
fs_css: 'left: 20px; top: 20px; --bg: transparent; --color: darkred;',
});
};
</script>
二、配置说明:
sf.onload = () => {
HCPlayer({
papa: '#papa', /* 指定帖子选择器名称,必须 */
geci: text, /* 指定歌词变量,text是前面声明和赋值的变量 */
skip: 0, /* 歌词起唱偏移量,可缺省 */
average: 0, /* 歌词平均用时调整系数,可缺省 */
/* 频谱设置 */
pinpu: {
num: 40, /* 条数 */
width: 3, /* 单条宽度 */
height: 120, /* 最高高度 */
/* 以下 color 支持颜色、渐变和图片背景,若缺省插件使用随机颜色 */
color: 'linear-gradient(white 1px, transparent 10px, transparent 70%, white 70% 0)',
},
/* 播放器界面设置 */
player_css: `
right: 100px; /* 也可使用 left */
bottom: 20px; /* 也可使用 top */
color: silver; /* 时间信息文本颜色 */
`,
/* lrc歌词设置 */
lrc_css: `
left: 30px; /* 也可使用 right */
bottom: 20px; /* 也可使用 top */
color: #666; /* 歌词底色 */
--bg: linear-gradient(#eeffee, #eeffeef0, #eeffee80); /* 歌词同步色 */
`,
/* 全屏按钮设置 */
fs_css: `
left: 20px; /* 也可使用 right */
top: 20px; /* 也可使用 bottom */
--bg: transparent; /* 背景色 */
--color: darkred; /* 前景色 */
`,
});
};
关于参数 average:该参数在原生lrc歌词同步插件都可能出现,参数值是一个数值型,用于调整平均数,此参数值越合适,歌词同步月趋于准确。例如,歌词演唱用时平均值偏大时,可以给一个 0.5 或相应的数值,偏小时给个 -0.5 或相应的数值,具体数值大小视情况而定。
三、简化配置举例:
//可缺省的参数去掉,CSS配置部分使用默认配置
sf.onload = () => {
HCPlayer({
papa: '#mydiv',
geci: text,
});
};
四、应用实例:千秋岁
前一篇: 原生lrc歌词同步之圆环斜频谱播放器
下一篇: 原生lrc歌词同步之普通频谱播放器
发表评论:
评论列表 [3条]
#3 | 知名不具 于 2024-8-17 21:44 发布: 只用简化配置也不错,代码那么少。
#2 | 知名不具 于 2024-8-17 21:33 发布: 这个讲解真清晰。
#1 | 悄然 于 2024-8-17 09:17 发布: 以下 color 支持颜色、渐变和图片背景,频谱支持图片?这到是没尝试过
