原生lrc歌词同步之圆环正频谱播放器
一、引用与配置代码举例:
<script>
var geci = `[00:00.107]歌词一\n[00:06.00]歌词二\n[00:10.00]歌词三\n[00:25.163]……\n[03:46.107]歌词N`;
var sf = document.createElement('script');
sf.charset = 'utf-8';
sf.src = 'https://638183.freep.cn/638183/web/js2024/pinpuz_yslrc.js';
document.body.appendChild(sf);
sf.onload = () => {
HCPlayer({
papa: '#mama',
geci: geci,
skip: 0,
average: 0,
pinpu: { num: 40, color: 'linear-gradient(to right, transparent, teal, tan)' },
player_css: 'right: 80px; top: 80px; color: silver; --len: 3px;',
lrc_css: 'left: 50%; transform: translateX(-50%); top: 20px; --bg: linear-gradient( #eee, #eeeeee80); color: #666;',
fs_css: 'left: 20px; top: 20px; --bg: transparent; --color: #eee;',
});
};
</script>
二、配置说明:
sf.onload = () => {
HCPlayer({
papa: '#mama', /* 指定帖子容器选择器,必须,支持class选择器 */
geci: geci, /* 指定歌词变量,需要事先声明 */
skip: 0, /* 起唱偏移量,可缺省 */
average: 0, /* 各句平均演唱用时调节系数,可缺省 */
/* 频谱对象设置 */
pinpu: {
num: 40, /* 频谱条数 */
/* color用于设置频谱颜色,若缺省使用随机色,支持颜色、渐变与图片背景 */
color: 'linear-gradient(to right, transparent, teal, tan)'
},
/* 播放器CSS设置 */
player_css: `
right: 80px; /* 支持left属性 */
top: 80px; /* 支持bottom属性 */
color: silver; /* 时间信息文本颜色 + 频谱根部颜色 */
--len: 3px; /* 频谱宽度 */
`,
/* 歌词界面CSS设置 */
lrc_css: `
left: 50%; /* 支持right属性 */
transform: translateX(-50%); /* 配套上句令歌词居中 */
top: 20px; /* 支持bottom属性 */
color: #666; /* 歌词底色 */
--bg: linear-gradient( #eee, #eeeeee80); /* 歌词进度色,支持颜色、渐变与图片背景 */
`,
/* 全屏按钮CSS设置 */
fs_css: 'left: 20px; top: 20px; --bg: transparent; --color: #eee;',
});
};
关于参数 average:该参数在原生lrc歌词同步插件都可能出现,参数值是一个数值型,用于调整平均数,此参数值越合适,歌词同步月趋于准确。例如,歌词演唱用时平均值偏大时,可以给一个 0.5 或相应的数值,偏小时给个 -0.5 或相应的数值,具体数值大小视情况而定。
三、简化配置举例:
//可缺省的参数去掉,CSS配置部分使用默认配置
sf.onload = () => {
HCPlayer({
papa: '#mama',
geci: `[00:00.00]帖子标题\n[00:10:00]`,
});
};
四、应用实例:激越东川
前一篇: 原生lrc歌词同步之细线进度条播放器
下一篇: 原生lrc歌词同步之圆环斜频谱播放器
发表评论:
评论列表 [2条]
#2 | 小希 于 2024-8-19 08:10 发布: 最近频谱都用渐变,更好看了。。频谱颜色支持图片背景,昨天试了一下没出来。
#1 | 悄然 于 2024-8-19 08:07 发布: transform: translateX(-50%); /* 配套上句令歌词居中 */哈哈,果然有说明。。这个当用双排任意位置居中时最最好用。。既然可以X,那应该也可以Y。。。用的时候再研究一下
