react-lrcplayer

2.0.1 • Public • Published

带LRC歌词的简易播放器

1696321521157

功能

  • 标题副标题显示
  • 封面展示
  • 歌词动画
  • 定义歌词行数
  • 原生audio播放器
  • lrc歌词同步显示(需提前转换为json)

本项目基于React开发,仅在React测试通过。

体验:https://os.arsrna.cn/demo/nodejs/lrcplayer

用法

安装

npm i react-lrcplayer

引入

import { LRCPlayer,createLrcObj } from 'react-lrcplayer';

示例

在页面中:

<LRCPlayer
        src={require("./1/多多poi - 别让我担心.mp3")}
        cover={require("./1/cover.jpg")}
        title="多多poi - 别让我担心"
        subTitle="《原神》2023 周年庆单曲"
        lrc={require("./1/lrc.json")}
        offset={-0.3}
        placeholder="暂无歌词"
        animate={{
          type: "slide",
          duration: 8
        }}
        nextLrc={{
          display: true,
          number: 2
        }}
      />

API

参数 类型 内容 默认值 必填
src file / string 音频文件,可以使用 require/import引入或音频URL undefined
cover file / string 封面图片文件,可以使用 require/import引入或音频URL undefined
title string / React DOM 播放器标题 ""
subTitle string / React DOM 副标题 ""
lrc object lrc对象,内容见下文 undefined
offset number 偏移量,正数为延后,负数为提前 0
animate object 动画设置,内容见下文 { type: "fade", duration: 0.5 }
nextLrc object 下句歌词显示设置,内容见下文 { display:false, number:5 }

lrc

此参数表示歌词对象,本框架已内置lrc转为对象的功能,如下LRC:

可以直接调用 createLrcObj(lrc歌词原内容)来实现转换

[00:26.446]天气晴 风平浪静 沙滩上混乱的脚印
[00:32.499]钓鱼竿 两份孤单 会飞的落汤鸡
[00:37.725]是故事的开局

转换为对象即为

[{
    "t": 26.446,
    "c": "天气晴 风平浪静 沙滩上混乱的脚印"
  },{
    "t": 32.499,
    "c": "钓鱼竿 两份孤单 会飞的落汤鸡"
  },{
    "t": 37.725,
    "c": "是故事的开局"
}]
参数 类型 内容
t number 进入时间点
c string 对应歌词内容

animate

参数 类型 内容 默认值 必填
type string 动画类型(划入: slide,淡入: fade,无: none) fade
duration number 动画持续时间,单位秒 0.5

nextLrc

参数 类型 内容 默认值 必填
display boolean 是否显示 true
number number 显示句数 2

常见问题

React is not defined

dependency 默认会安装React,如果没有安装,请手动 npm i react,并 import React from 'react';

Package Sidebar

Install

npm i react-lrcplayer

Weekly Downloads

0

Version

2.0.1

License

GNU

Unpacked Size

67 kB

Total Files

9

Last publish

Collaborators

  • arsrna