rqplayer-multi-live
v1.1.0
Published
rqplayer multi-live player (mpegts.js built-in)
Maintainers
Readme
rqplayer-multi-live
多路直播播放器。内置 mpegts.js,播放 HTTP-FLV / MPEG-TS。
点播请使用兄弟包 rqplayer-multi-vod。
安装与构建
npm install
npm run build
npm run dev # fixtures/rqplayer
npm testUMD 产物:dist/index.min.js(CSS 已内联),全局名 LivePlayer。
最小用法
import Player from 'rqplayer-multi-live'
const player = new Player({
id: 'player',
url: 'https://example.com/live.flv',
autoplay: true, // 默认静音起播
width: 960,
height: 540,
themeType: 1 // 1橙 | 2红 | 3蓝
})UMD:
<script src="./dist/index.min.js"></script>
<script>
var player = new LivePlayer({ id: 'player', url: '…flv', autoplay: true })
</script>多路直播
const streams = [
[
{
name: '三路高清',
url: ['…/a.flv', '…/b.flv', '…/c.flv']
},
{
name: '两路高清',
url: ['…/a.flv', '…/b.flv']
}
]
]
const player = new Player({
id: 'player',
url: streams[0][0],
autoplay: true
})
player.emit('resourceReady', streams)- 布局模式 0–9(5 路上2下3 / 6 路上3下3);按真实比例装箱;拖拽换位、双击放大
- 默认
autoplay: true+ 静音,用户手势 / UI / 音量后开声 - 卡顿检测与自动重连;可选长时间运行重建
常用直播能力(opt-in)
| 配置 | 说明 |
|------|------|
| isH323: true | 最后一路为辅流;player.showFuliu(0\|1) |
| noSignal | 默认 true:无信号占位(也可写在 multichannel);同伴等待见 noSignalTimeoutMs。设 false 关闭 |
| noSignalTimeoutMs | 默认 3000:同伴等待毫秒数,超时后失败路出占位并播放已成功路 |
| liveSubtitle: true \| {} | 推送字幕;player.sendLiveSub(text) |
| texttrack | 多轨 VTT(opt-in) |
| danmu / watermark / caption | 弹幕 / 水印 / 台标 |
| themeType: 1\|2\|3 | 主题色 |
| multichannel: { stallTimeout, reconnect, … } | 健康度 / 同步参数 |
目录
| 路径 | 说明 |
|------|------|
| src/ | 核心源码 |
| src/plugins/ | 内置插件(multiChannel、mpegts、liveSubtitle 等) |
| fixtures/rqplayer/ | 本地演示 |
| scripts/ | 构建 CLI(libd) |
与点播的差异(摘要)
| | 直播 | 点播 |
|--|------|------|
| 传输 | mpegts.js FLV/TS | native MP4 |
| 流结构 | { name, url: string[] } | { channel:[{ ID, type, files[] }] } |
| 字幕 | liveSubtitle + sendLiveSub | SRT subtitle |
| 会议 | isH323 + showFuliu | endtime 垫片 |
| 健康度 | stall / reconnect | 等齐闸门 |
