1.0.0 • Published 9 months ago

@panxife/digital-human-runtime-render-sdk v1.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
9 months ago

磐曦数字人运行时 SDK - 渲染 SDK

简介

数字人运行时渲染 SDK,包含以下能力:

  • 渲染数字人画面
  • 实时扣除数字人绿幕,更换背景

在使用 SDK 前,请确保已完成以下操作:

  • 1、通过磐曦智创控制台/OpenAPI 创建了一个实时数字人项目并发布
  • 2、调用 startAvatarSession 接口启动实时渲染

安装

npm install @panxife/digital-human-runtime-render-sdk --save

接入项目

1、依赖

SDK 目前通过 React 开发,如果非 React,需要在上下文中安装或引入 React,React-dom CDN 文件

https://g.alicdn.com/code/lib/react/18.0.0/umd/react.production.min.js
https://g.alicdn.com/code/lib/react-dom/18.0.0/umd/react-dom.production.min.js

2、引入

import DigitalHumanSDK from '@panxife/digital-human-runtime-render-sdk';
import '@panxife/digital-human-runtime-render-sdk/dist/style.css';

interface SDKOptions {
  // 项目数据
  project: {
    // 在websocket建联后,接收到channel ready事件时返回的数据
    frames: Array<PageSchema>;
  };
  // 调用startAvatarSession接口,收到的数据中的channelToken字段(JSON对象)
  channelInfo: ChannelInfo;
  // 需要渲染到的容器节点
  container: HTMLElement;
  // 画布宽高
  canvasSize: Record<string, any>;
  // 渲染类型,可不传,默认2d
  type: '2d' | 'hyperrealism' | 'subrealism' | 'cartoon';
  // 是否静音播放
  mute?: boolean;
  // 渲染层的层级,默认不传
  zIndex?: number;
  // 加入频道成功后的回调
  onJoinChannel?: ({ success }) => void;
  // 出错时的回调
  onError?: (error: Error) => void;
  // 启动成功后的回调
  onStart?: () => void;
  // 结束后的回调
  onEnd?: () => void;
}

const params: SDKOptions = {
  project: { frames: project },
  channelInfo,
  container: containerRef.current,
  canvasSize
};

// 实例化一个渲染对象
const newSdkInstance = new DigitalHumanSDK(params);

// 销毁渲染对象
newSdkInstance.destroy();

参数说明

参数名描述类型是否必填默认值
project包含图层信息的项目数据;对象-
project.frames图层信息 数据来源:在 websocket 建联后,接收到 channel ready 事件时返回数组对象-
channelInfo调用 startAvatarSession 接口,收到的数据中的 channelToken 字段对象-
container需要渲染到的容器节点 divHTMLElement-
canvasSize画布宽高对象-
canvasSize.width画布宽number-
canvasSize.height画布高number-
type数字人渲染类型,'2d' | 'hyperrealism' | 'subrealism' | 'cartoon'string2d
zIndex渲染层的层级number50
onJoinChannel加入频道成功后的回调({ success }) => void;-
onError出错时的回调(error: Error) => void;-
onStart启动成功后的回调() => void-
onEnd结束后的回调() => void-

Changelog

查看更新日志

1.0.0

9 months ago