@polyv/vod-player-electron-sdk
是保利威云点播PC端Electron版SDK,为客户提供保利威云点播一系列功能,包括下载、播放、防录制功能,能让客户快速接入自有业务。
node: >= 16.17.1 | 18.20.3
Electron: 16.x.x
Windows: >= win7 sp1
Mac: >= 10.15.0+
Demo构建示例:
//定义C++依赖下载路径,SDK将根据环境变量下载SDK实现,具体路径请咨询客服
export DEV_NODE_DOWNLOAD_URL="https://xxxx/PCPlayerSDK-Win-x64.7z" // win64
export DEV_NODE_DOWNLOAD_URL="https://xxxx/PCPlayerSDK-Win-x86.7z" // win32
export DEV_NODE_DOWNLOAD_URL="https://xxxx/PCPlayerSDK-Mac-x64.zip" // mac
//构建demo,默认情况下,npm会根据系统类型架构选择对应的二进制架构类型
npm ci / npm install
//特殊情况下,需要指定构建的二进制架构类型(比如:在M1的MAC上构建intel-x64的二进制)
npm ci --arch=ia32 // win32
npm ci --arch=x64 // win64
npm ci --arch=x64 // mac-intel-64
//运行demo
npm run start
const plvPlayerCore = createPlvPlayerCore()
console.log('sdk version:', plvPlayerCore.getSdkVersion())
// 设置SDK日志路径(utf-8)与级别
plvPlayerCore.setSdkLogLevel(PLVLogLevel.Info)
plvPlayerCore.setSdkLogFile('appData/xxx.log')
// 设置 viewer 信息,用于定位播放质量问题,在线播放下可以通过后台来查看,建议调用此接口设置信息
// 最新 vrm12/vrm13 下必须设置,否则播放会报错
const viewerInfo = {
viewerId: '业务id', // 唯一值
viewerName: '业务name',
}
plvPlayerCore.setSdkViewerInfo(viewerInfo)
// 初始化SDK
const accountInfo = {
userId: 'xxx',
appId: 'xxx',
subAccount: false
}
plvPlayerCore.init(accountInfo)
// 释放SDK,释放后对象不再可用.建议关闭程序时释放
plvPlayerCore.release()
// 事件观察
const fn = (evt) => {
console.log(evt)
}
plvPlayerCore.on(PLVEventType.PlayerPlay, fn)
plvPlayerCore.off(PLVEventType.PlayerPlay, fn)
// 以下为全局相关设置,也可以在初始化前设置,详见文档
plvPlayerCore.setSdkHwdecEnable(false)
plvPlayerCore.setSdkKeepLastFrame(true)
plvPlayerCore.setSdkLocalRememberPlay(true)
plvPlayerCore.setSdkRetryAttempts(-1, 500, 25000)
// 创建播放器实例
const player = plvPlayerCore.createPlayer()
// 摧毁播放器-对象将不再可用
player.destroy()
// 设置播放器配置,在播放前可以不断更新使用
player.setConfig()
// 绑定视图HTML-DIV
player.bind()
// 播放
player.play()
// 停止
player.stop()
// 获取播放器相关回调
plvPlayerCore.on(PLVEventType.PlayerPlay, (evt) => {
console.log(evt)
})
// 创建下载器实例
const downloader = plvPlayerCore.createDownloader()
// 摧毁下载器-对象将不再可用
downloader.destroy()
// 设置下载器配置
downloader.setConfig()
// 开始
downloader.start()
// 停止
downloader.stop()
// 获取下载器相关回调
plvPlayerCore.on(PLVEventType.DownloaderProgress, (evt) => {
console.log(evt)
})
Generated using TypeDoc