原生lrc歌词同步之自由路径进度条播放器
完全自由定制的进度条+按钮的播放器插件。进度条样式采用svg任意路径,即 path 标签中的 d 属性值,例如:
<!-- svg path 路径代码 --> <path d="M 10 80 Q 52.5 10, 95 80 T 180 80" stroke="black" fill="transparent" /> <!-- 插件配置中我们只需要 d 属性的值:--> path: 'M 10 80 Q 52.5 10, 95 80 T 180 80',
关于路径的设计,请参考 路径Path标签详解,一次搞懂所有命令参数,也可以自行查找更多的资料。设计路径时,路径尺寸应与播放器的尺寸规范一直,路径不能越界,越界部分将会看不到。
一、引用与配置代码举例:
<script>
var geci = `
[00:00.107]歌词1
[00:06.00]歌词2
[00:10.00]歌词3
[00:25.163]……
[03:46.107]歌词N
`;
var sf = document.createElement('script');
sf.charset = 'utf-8';
sf.src = 'https://638183.freep.cn/638183/web/js2024/curve_yslrc.js';
document.body.appendChild(sf);
sf.onload = () => {
HCPlayer({
papa: '#mama',
geci: geci,
skip: 0,
average: 0,
path: 'M10 50 A90 45 0 1 1 190 50 A90 45 0 1 1 10 50',
img: { play: '', pause: '' },
btn: { left: 36, top: 32 },
track: { track: 'lightblue', prog: 'white' },
player_css: 'width: 200px; height: 100px; left: 50px; bottom: 10px;',
lrc_css: 'left: 50%; top: 20px; transform: translateX(-50%);',
fs_css: 'left: 50%; bottom: 20px; transform: translateX(-50%);',
});
};
</script>
二、配置说明:
sf.onload = () => {
HCPlayer({
papa: '#mama', /* 配置帖子容器 id选择器(或class选择器 '.mama')*/
geci: geci, /* 配置歌词,键值要与声明的歌词变量名一样 */
skip: 0, /* 歌词起唱偏移值 */
average: 0, /* 歌词演唱平均用时调整系数 */
/* path参数是一个svg路径d属性值,可以任意设置各种形状的路径 */
path: 'M10 50 A90 45 0 1 1 190 50 A90 45 0 1 1 10 50',
/* img参数是按钮播放与暂停两个图片,控制表示使用插件自带的按钮 */
img: { play: '', pause: '' },
/* btn参数用于设置按钮基于播放器的位置,纯数值 */
btn: { left: 36, top: 32 },
/* track参数用于设置进度条底色和覆盖色,颜色值 */
track: { track: 'lightblue', prog: 'white' },
/* 播放器CSS设置 :宽高与定位 */
player_css: 'width: 200px; height: 100px; left: 50px; bottom: 10px;',
/* lrc歌词CSS设置(请参考其他插件) */
lrc_css: 'left: 50%; top: 20px; transform: translateX(-50%);',
/* 全屏按钮CSS设置 :定位于前景、背景色 */
fs_css: 'left: 50%; bottom: 20px; transform: translateX(-50%);',
});
};
关于参数 average:该参数在原生lrc歌词同步插件都可能出现,参数值是一个数值型,用于调整平均数,此参数值越合适,歌词同步月趋于准确。例如,歌词演唱用时平均值偏大时,可以给一个 0.5 或相应的数值,偏小时给个 -0.5 或相应的数值,具体数值大小视情况而定。
三、简化配置举例:
//可缺省的参数去掉,CSS配置部分使用默认配置
sf.onload = () => {
HCPlayer({ papa: '#mama' });
};
四、应用实例:Princesses Don't Cry
前一篇: 原生lrc歌词同步之曲线进度条播放器
下一篇: mplayer插件配置及使用说明
发表评论:
评论列表 [1条]
#1 | 小希 于 2024-8-31 10:00 发布: path:这设置最最重要了。。得去找找之前收的网站
