音乐模式:把网页播放器变成音乐 App
用视频播放器放歌,观众看到的是一帧静止的画面加一条进度条——体验停在「能响」。ZWPlayer 的音乐模式(
mode: 'music')把界面整体切换为音乐播放器形态:旋转黑胶、滚动歌词、跳动频谱,一个配置项完成从「能响」到「好听好看」的跃迁。
图 1:音乐模式——旋转黑胶、滚动 LRC 歌词与频谱可视化
一个配置项的切换
new ZWPlayer({
playerElm: 'player',
url: 'song.mp3',
mode: 'music',
music: {
theme: 'vintage', // 主题(vintage 复古 / classic 经典 / auto 跟随)
vinyl: true, // 黑胶唱片旋转
panel: 'full', // 面板布局(full / bar)
visualizer: 'classic', // 频谱形态
},
lyrics: LRC, // LRC 文本数组或 URL
});
mode: 'auto' 则由播放器按媒体类型自动决定——音频文件进音乐模式,视频回标准模式,混合站点不用逐条配置。
LRC 歌词:逐行与逐字
lyrics 接受 LRC URL 或文本数组。渲染支持两种粒度:
- 逐行:整行歌词按行时间戳滚动高亮——绝大多数 LRC 文件的形态;
- 逐字:带字级时间戳(
<mm:ss.xx>内嵌标记)的 LRC 逐字点亮——卡拉 OK 式跟唱体验。
当前行自动居中、已唱/未唱颜色区分,点击任意行跳播到那句——「歌词即进度条」。
图 2:频谱随音乐起伏,歌词持续滚动
频谱可视化
音乐模式内置多种频谱形态(classic 柱状、mountain 山脉、circular 环形等),由 Web Audio 驱动实时起伏。给纯听感的音频内容补上「视觉层」,对音乐站、播客、白噪音工具都是体验升级。
谁该用它
- 播客/电台站:节目页从「视频壳子放音频」变成正经电台界面;
- 音乐教学:乐句循环(配合AB 循环)+ 逐字歌词/谱面展示;
- 白噪音/冥想 App:可视化即氛围;
- 音乐人作品页:黑胶 + 歌词 + 频谱,比嵌第三方平台更有「作品感」。
音频格式支持范围(mp3/m4a/flac/opus/wav 等)的兼容性细节见《浏览器音频格式支持史》。
实用细节
- 队列:多曲场景配
music.tracks播放队列,上一首/下一首/循环模式齐备; - 画中画:音乐模式支持 PiP,边听边逛别的页面;
- 降级:不配置
music参数也有合理默认——黑胶缺省封面、基础频谱开箱即用; - 视频也能进:音乐模式播放视频文件时自动截帧做封面、隐藏画面区——「MV 当歌听」。