原生lrc歌词同步之示波状频谱播放器

位置: 首页 > JS插件
[发布: 2024.8.28  作者: 马黑  阅读: 355]

模拟示波状的频谱播放器,进度可控。

一、引用与配置代码举例:

<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/oscpp_yslrc.js';
document.body.appendChild(sf);

sf.onload = () => {
	HCPlayer({
		papa: '#mama',
		geci: geci,
		skip: 0,
		average: 0,
		pinpu: {num: 100, size: 1, gap: 1, color1: 'red', color2: 'plum'},
		player_css: `
			left: 50%;
			transform: translateX(-50%);
			bottom: 20px;
			color: white;
			--hh: 100px;
			--discBg: url('https://638183.freep.cn/638183/web/svg/4yecc.svg') center/cover;
		`,
		lrc_css: 'left: 50%; transform: translateX(-50%); top: 20px; --bg: linear-gradient(lightblue, plum); color: #ccc;',
		fs_css: 'right: 20px; top: 20px; --bg: transparent; --color: snow;',
	});
};
</script>

二、配置说明:

sf.onload = () => {
	HCPlayer({
		papa: '#mama', /* 指定帖子容器选择器 */
		geci: geci, /* 指定已经声明过的歌词变量 */
		skip: 0, /* 歌词起唱偏移量 */
		average: 0, /* 歌词平均演唱用时调节系数 */
		/*	频谱对象设置 
			num: 频谱数;size: 频谱厚度; gap: 频谱间隔值;color1和color2:频谱颜色
		*/
		pinpu: {num: 100, size: 1, gap: 1, color1: 'red', color2: 'plum'},
		/* 播放器CSS设置 */
		player_css: `
			left: 50%; /* 支持right定位 */
			transform: translateX(-50%); /* 配合上句水平居中 */
			bottom: 20px; /* 支持top定位 */
			color: white; /* 前景色 */
			--hh: 100px; /* 容器高度 */
			/* 下面变量设置按钮背景,支持渐变、图片背景 */
			--discBg: url('https://638183.freep.cn/638183/web/svg/4yecc.svg') center/cover;
		`,
		/* 歌词CSS设置 */
		lrc_css: `
			left: 50%; /* 支持right定位 */
			transform: translateX(-50%); /* 配合上句水平居中 */
			top: 20px; /* 支持bottom定位 */
			color: #ccc; /* 歌词底色 */
			--bg: linear-gradient(lightblue, plum); /* 歌词同步颜色,支持颜色、渐变和图片背景 */
		`,
		/* 全屏按钮CSS设置 :定位+前景色+背景色 */
		fs_css: 'right: 20px; top: 20px; --bg: transparent; --color: snow;',
	});
};

关于参数 average:该参数在原生lrc歌词同步插件都可能出现,参数值是一个数值型,用于调整平均数,此参数值越合适,歌词同步月趋于准确。例如,歌词演唱用时平均值偏大时,可以给一个 0.5 或相应的数值,偏小时给个 -0.5 或相应的数值,具体数值大小视情况而定。

三、简化配置举例:

//可缺省的参数去掉,CSS配置部分使用默认配置
sf.onload = () => {
	HCPlayer({ papa: '#mama' });
};

四、应用实例:孤夜舞

前一篇: 原生lrc歌词同步之老唱机播放器
下一篇: 原生lrc歌词同步之脚链播放器

发表评论:

  
 

评论列表 [2条]

#2 | 悄然 于 2024-8-28 18:29 发布: 这个SVG动态小按纽着实漂亮,这个动态的是看一回稀罕一回,哈哈~~教程还躺在哪呢。。

#1 | 知名不具 于 2024-8-28 10:48 发布: 这个播放器漂亮。各类元素布置合理,上下频谱也好美。

Copyright © 2023 All Right Reserved 马黑PHP文章管理整站系统v1.8
联系我们: gxblk@163.com