LMP34 多媒体播放器 · 快速上手指南

LMP34 多媒体播放器 · 快速上手指南

一、致敬与感谢 CMP4

在正式介绍 LMP34 之前,必须先向经典的 CMP4(CenFun Music Player 4) 致以最诚挚的敬意与感谢。

CMP4 以其 极致精简的体积、强大的皮肤自定义能力、开放的插件架构、高度兼容的 XML 列表格式,成为一代网页播放器的标杆作品,影响了无数后来者。

LMP34 的设计思路大量参考并继承了 CMP4 的核心理念:

LMP34 多媒体播放器 · 快速上手指南
  • 配置驱动:一切行为由嵌入参数控制,不修改源码即可定制播放器
  • 皮肤与逻辑分离:皮肤由 skin.xml 描述布局、skin.css 描述样式、skin.js 描述交互,三者解耦
  • 统一列表格式:完整兼容 CMP4 的<list><m>列表结构,老用户无缝迁移
  • 钩子扩展机制:借鉴 WordPress 的 Action / Filter 思想,让皮肤与插件在不修改内核的前提下扩展功能
  • 插件即插即用:插件只需注册自身即可接入播放生命周期,热插拔、零侵入

可以说,LMP34 是站在 CMP4 这位巨人肩膀上,用现代 Web 技术(HTML5 Audio/Video、Web Audio API、Canvas、ES Module)重新实现的「精神续作」。


二、引入脚本

在页面中引入lmp34-embed.js,即可使用播放器:

<script src="https://lmp34.cnlog.cc/lmp34-embed.js"></script>
复制

三、最简配置方式

方式一:data-* 属性(最简单,推荐)

在容器上用data-属性写配置,脚本自动读取:

<div id="lmp34-player"
     data-name="LMP34播放器"
     data-skins="skins/yh_vinyl"
     data-skin_id="8"
     data-lists="list.xml"
     data-auto_play="1"
     data-play_mode="1">
</div>
<script src="https://lmp34.cnlog.cc/lmp34-embed.js"></script>
复制

方式二:LMP34.init() 脚本调用

更灵活的控制方式:

<div id="lmp34-player" style="width:100%;height:600px;"></div>
<script src="https://lmp34.cnlog.cc/lmp34-embed.js"></script>
<script>
LMP34.init({
    container:   'lmp34-player',
    name:        'LMP34播放器',
    skins:       'skins/yh_vinyl',
    skin_id:     '8',
    lists:       'list.xml',
    auto_play:   1,
    play_mode:   1,
    spectrum_id: 12,
    plugins:     'plugins/marquee,plugins/waveform',
    ktv:         1
});
</script>
复制

方式三:URL GET 参数(优先级最高)

URL 参数会覆盖上面两种方式,方便临时调试:

https://lmp34.cnlog.cc/player.html?skin_id=3&play_mode=2&ktv=1
复制

四、播放列表 XML 格式

完全兼容 CMP4 的<list><m>结构:

<list>
  <m label="华语流行">
    <m label="周杰伦 - 晴天" src="music/qingtian.mp3"
       lrc="lrc/qingtian.lrc" image="cover/qingtian.jpg" />
    <m label="邓紫棋 - 光年之外" src="music/gn.mp3" />
  </m>
  <m label="欧美金曲">
    <m label="Justin Bieber - Sorry" src="music/sorry.mp3" />
  </m>
  <m label="子分类" list_src="list/2.xml" opened="1" />
</list>
复制

列表关键属性

属性 说明
label 显示标题,格式 "序号,标题"(序号可省略)
src 媒体地址,有 src 的节点是可播放项
lrc 歌词文件路径(可选)
image 封面图片路径(可选)
list_src 子分类指向的列表 XML 文件(懒加载)
opened 分类是否默认展开,值为 "1" 展开
type 媒体类型(1=图片, 2=flash, 3=视频)

五、常用配置参数表

参数 说明 示例
name 播放器名称 "我的播放器"
skins 皮肤目录 "skins/yh_vinyl"
skin_id 默认皮肤序号(从1开始) 8
lists 播放列表文件 "list.xml"
auto_play 自动播放 1/0 1
play_mode 播放模式 0顺序 1随机 2列表循环 3单曲循环 1
plugins 插件列表,逗号分隔 "plugins/waveform,plugins/ktv"
spectrum_id 频谱样式序号 1-18 12
ktv KTV 逐字高亮开关 1
marquee 跑马灯开关 1
bg_image 全局背景图 "bg.jpg"

六、皮肤开发手册

完整的皮肤开发规范、元素定义、钩子说明等:

📖 LMP34 皮肤设计完整手册(新窗口打开)


LMP34 多媒体播放器 · 作者 Cnlog · QQ:7419838 · QQ群:91530683