Web播放器快速集成
Web播放器快速集成
功能介绍
保利威直播提供快速集成的代码,帮助你实现直播播放器的快速调用
快速集成代码
js demo
<div id="player"></div>
<script src="//player.polyv.net/resp/live-h5-player/latest/liveplayer.min.js"></script>
<script>
var player = polyvLivePlayer({
wrap: '#player',
width: 800,
height: 533,
uid:'uid',
vid:'vid'
});
</script>
默认使用H5播放器,在ie及其他不支持的浏览器下自动切换flash
需要兼容ie10以下的播放器,可以使用下面代码
<script src='https://player.polyv.net/livescript/liveplayer.js'></script>
<div id='player'></div>
<script>
var player = polyvObject('#player').livePlayer({
width:'600',
height:'450',
uid :'uid',
vid : 'vid'
});
</script>
vue demo
<template>
<div id="player"></div>
</template>
<script>
export default {
data() {
return {
playerJs: 'https://player.polyv.net/resp/live-h5-player/latest/liveplayer.min.js',
uid:'uid',
vid:'vid'
};
},
mounted(){
this.loadPlayerScript(this.loadPlayer);
},
methods: {
loadPlayerScript(callback) {
if (!window.polyvLivePlayer) {
const myScript = document.createElement('script');
myScript.setAttribute('src', this.playerJs);
myScript.onload = callback;
document.body.appendChild(myScript);
} else {
callback();
}
},
loadPlayer() {
const polyvLivePlayer = window.polyvLivePlayer;
this.player = polyvLivePlayer({
wrap: '#player',
width: 800,
height: 533,
uid: this.uid ,
vid: this.vid ,
});
}
},
destroyed() {
if (this.player) {
this.player.destroy();
}
}
};
</script>
react demo
import React from 'react';
class Player extends React.Component {
constructor(props) {
super(props);
}
componentDidMount() {
if(!window.polyvLivePlayer){
this.loadScript('https://player.polyv.net/resp/live-h5-player/latest/liveplayer.min.js')
.then(() =>{
this.loadPlayer();
});
}
}
componentWillUnmount() {
if(this.player){
this.player.destroy();
}
}
loadPlayer() {
this.player = window.polyvLivePlayer({
wrap: '.player',
width: '100%',
height: '100%',
uid: 'uid',
vid: 'vid',
});
}
loadScript(src) {
const headElement = document.head || document.getElementsByTagName('head')[0];
const _importedScript = {};
return new Promise((resolve, reject) => {
if (src in _importedScript) {
resolve();
return;
}
const script = document.createElement('script');
script.type = 'text/javascript';
script.onerror = err => {
headElement.removeChild(script);
reject(new URIError(`The Script ${src} is no accessible.`));
}
script.onload = () => {
_importedScript[src] = true;
resolve();
}
headElement.appendChild(script);
script.src = src;
})
}
render() {
return (
<div className="wrap">
<div className="player"></div>
</div>
)
}
}
export default Player;
参数
参数 | 类型 | 默认值 | 说明 |
---|---|---|---|
wrap | string / HTMLElement | - | 页面上存在需要载入播放器的DOM元素或css选择器 |
width | number / string | 100% | 播放器的宽度 |
height | number/string | auto | 播放器的高度 |
uid | string | - | 用户id,即账号信息中的userId |
vid | string | - | 频道id,即频道号 |
Last updated