@xmov/avatar 2.4.0 → 2.5.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +34 -6
  2. package/package-dist/agent/avatar.cjs +1 -0
  3. package/package-dist/agent/avatar.modern.js +1 -0
  4. package/package-dist/agent/avatar.module.js +1 -0
  5. package/package-dist/agent/avatar.umd.js +1 -0
  6. package/package-dist/agent/index.d.ts +42 -0
  7. package/{dist/agent/types.d.ts → package-dist/agent/public-types.d.ts} +115 -116
  8. package/package-dist/index.cjs +3 -0
  9. package/package-dist/index.d.ts +34 -0
  10. package/package-dist/index.modern.js +1 -0
  11. package/package-dist/index.module.js +1 -0
  12. package/package-dist/index.umd.js +14 -0
  13. package/package-dist/public-types.d.ts +205 -0
  14. package/package.json +41 -33
  15. package/dist/agent/avatar.cjs +0 -1
  16. package/dist/agent/avatar.modern.js +0 -1
  17. package/dist/agent/avatar.module.js +0 -1
  18. package/dist/agent/avatar.umd.js +0 -1
  19. package/dist/agent/index.d.ts +0 -137
  20. package/dist/baseRender/AudioRenderer.d.ts +0 -46
  21. package/dist/baseRender/AudioWorklet.d.ts +0 -78
  22. package/dist/baseRender/AvatarRenderer.d.ts +0 -225
  23. package/dist/baseRender/MSEAudioPlayer.d.ts +0 -51
  24. package/dist/baseRender/UIRenderer.d.ts +0 -39
  25. package/dist/baseRender/pcm-audio-processor.d.ts +0 -63
  26. package/dist/control/APIForwarder.d.ts +0 -23
  27. package/dist/control/DataCacheQueue.d.ts +0 -69
  28. package/dist/control/EventDispatcher.d.ts +0 -35
  29. package/dist/control/RenderScheduler.d.ts +0 -171
  30. package/dist/control/SaveAndDownload.d.ts +0 -14
  31. package/dist/control/StreamingClient.d.ts +0 -33
  32. package/dist/control/VideoPlayer.d.ts +0 -47
  33. package/dist/control/ttsa.d.ts +0 -125
  34. package/dist/encoding/media-recorder-encoder.d.ts +0 -33
  35. package/dist/encoding/pcm-webm-encoder.d.ts +0 -13
  36. package/dist/encoding/webcodec-opus-encoder.d.ts +0 -41
  37. package/dist/encoding/webm-muxer.d.ts +0 -90
  38. package/dist/index.cjs +0 -2
  39. package/dist/index.cjs.map +0 -1
  40. package/dist/index.d.ts +0 -251
  41. package/dist/index.modern.js +0 -2
  42. package/dist/index.modern.js.map +0 -1
  43. package/dist/index.module.js +0 -2
  44. package/dist/index.module.js.map +0 -1
  45. package/dist/index.umd.js +0 -2
  46. package/dist/index.umd.js.map +0 -1
  47. package/dist/modules/Composition.d.ts +0 -28
  48. package/dist/modules/ResourceManager.d.ts +0 -299
  49. package/dist/modules/TrackRenderer/base-track.d.ts +0 -4
  50. package/dist/modules/TrackRenderer/index.d.ts +0 -12
  51. package/dist/modules/TrackRenderer/render-implements.d.ts +0 -19
  52. package/dist/modules/TrackRenderer/track-pic.d.ts +0 -8
  53. package/dist/modules/TrackRenderer/track-subtitle.d.ts +0 -8
  54. package/dist/modules/cache-manager.d.ts +0 -5
  55. package/dist/modules/decoder.d.ts +0 -84
  56. package/dist/modules/error-handle.d.ts +0 -17
  57. package/dist/modules/network.d.ts +0 -21
  58. package/dist/modules/sentry-reporter.d.ts +0 -58
  59. package/dist/proto/face_data_pb.d.ts +0 -0
  60. package/dist/types/capability.d.ts +0 -15
  61. package/dist/types/error.d.ts +0 -70
  62. package/dist/types/event.d.ts +0 -25
  63. package/dist/types/frame-data.d.ts +0 -107
  64. package/dist/types/index.d.ts +0 -196
  65. package/dist/types/render.d.ts +0 -18
  66. package/dist/utils/DataInterface.d.ts +0 -113
  67. package/dist/utils/GLDevice.d.ts +0 -46
  68. package/dist/utils/GLPipeline.d.ts +0 -84
  69. package/dist/utils/GLPipelineDebugTools.d.ts +0 -5
  70. package/dist/utils/Math.d.ts +0 -21
  71. package/dist/utils/__tests__/capability-checker.test.d.ts +0 -1
  72. package/dist/utils/audio-session.d.ts +0 -11
  73. package/dist/utils/audio.d.ts +0 -1
  74. package/dist/utils/capability-checker.d.ts +0 -28
  75. package/dist/utils/encodeToken.d.ts +0 -14
  76. package/dist/utils/face.d.ts +0 -1
  77. package/dist/utils/float32-decoder.d.ts +0 -26
  78. package/dist/utils/fpsTracker.d.ts +0 -27
  79. package/dist/utils/index.d.ts +0 -22
  80. package/dist/utils/logger.d.ts +0 -9
  81. package/dist/utils/media-recorder-timestamp.d.ts +0 -15
  82. package/dist/utils/pcmAnalyzer.d.ts +0 -40
  83. package/dist/utils/perfermance.d.ts +0 -15
  84. package/dist/utils/request.d.ts +0 -20
  85. package/dist/utils/requestAnimateFrames.d.ts +0 -31
  86. package/dist/utils/time.d.ts +0 -9
  87. package/dist/utils/video-probe-asset.d.ts +0 -28
  88. package/dist/view/DebugOverlay.d.ts +0 -54
  89. package/dist/worker/streaming-video.d.ts +0 -1
  90. package/src/baseRender/AudioRenderer.ts +0 -328
  91. package/src/baseRender/AudioWorklet.ts +0 -776
  92. package/src/baseRender/AvatarRenderer.ts +0 -1550
  93. package/src/baseRender/MSEAudioPlayer.ts +0 -254
  94. package/src/baseRender/UIRenderer.ts +0 -195
  95. package/src/baseRender/pcm-audio-processor.js +0 -267
  96. package/src/control/APIForwarder.ts +0 -67
  97. package/src/control/DataCacheQueue.ts +0 -372
  98. package/src/control/EventDispatcher.ts +0 -106
  99. package/src/control/RenderScheduler.ts +0 -1000
  100. package/src/control/SaveAndDownload.js +0 -77
  101. package/src/control/StreamingClient.ts +0 -138
  102. package/src/control/VideoPlayer.ts +0 -306
  103. package/src/control/ttsa.ts +0 -754
  104. package/src/encoding/media-recorder-encoder.ts +0 -175
  105. package/src/encoding/pcm-webm-encoder.ts +0 -72
  106. package/src/encoding/webcodec-opus-encoder.ts +0 -258
  107. package/src/encoding/webm-muxer.ts +0 -337
  108. package/src/global.d.ts +0 -112
  109. package/src/index.ts +0 -2053
  110. package/src/modules/Composition.ts +0 -79
  111. package/src/modules/ResourceManager.ts +0 -926
  112. package/src/modules/TrackRenderer/base-track.ts +0 -7
  113. package/src/modules/TrackRenderer/index.ts +0 -40
  114. package/src/modules/TrackRenderer/render-implements.ts +0 -269
  115. package/src/modules/TrackRenderer/track-pic.ts +0 -19
  116. package/src/modules/TrackRenderer/track-subtitle.ts +0 -16
  117. package/src/modules/cache-manager.ts +0 -10
  118. package/src/modules/decoder.ts +0 -548
  119. package/src/modules/error-handle.ts +0 -20
  120. package/src/modules/network.ts +0 -71
  121. package/src/modules/sentry-reporter.ts +0 -171
  122. package/src/proto/face_data.proto +0 -45
  123. package/src/proto/face_data_pb.js +0 -1297
  124. package/src/proto/protobuf.min.js +0 -8
  125. package/src/types/capability.ts +0 -24
  126. package/src/types/error.ts +0 -211
  127. package/src/types/event.ts +0 -38
  128. package/src/types/frame-data.ts +0 -121
  129. package/src/types/index.ts +0 -220
  130. package/src/types/render.ts +0 -18
  131. package/src/utils/DataInterface.ts +0 -746
  132. package/src/utils/GLDevice.ts +0 -286
  133. package/src/utils/GLPipeline.ts +0 -1293
  134. package/src/utils/GLPipelineDebugTools.ts +0 -174
  135. package/src/utils/Math.ts +0 -266
  136. package/src/utils/__tests__/capability-checker.test.ts +0 -159
  137. package/src/utils/audio-session.ts +0 -144
  138. package/src/utils/audio.ts +0 -44
  139. package/src/utils/blueimp-md5.d.ts +0 -3
  140. package/src/utils/capability-checker.ts +0 -762
  141. package/src/utils/encodeToken.ts +0 -115
  142. package/src/utils/face.ts +0 -29
  143. package/src/utils/float32-decoder.js +0 -130
  144. package/src/utils/fpsTracker.ts +0 -100
  145. package/src/utils/index.ts +0 -182
  146. package/src/utils/logger.js +0 -36
  147. package/src/utils/media-recorder-timestamp.ts +0 -79
  148. package/src/utils/pcmAnalyzer.ts +0 -154
  149. package/src/utils/perfermance.ts +0 -141
  150. package/src/utils/request.ts +0 -107
  151. package/src/utils/requestAnimateFrames.ts +0 -195
  152. package/src/utils/time.ts +0 -32
  153. package/src/utils/video-probe-asset.ts +0 -99
  154. package/src/view/DebugOverlay.ts +0 -409
  155. package/src/worker/streaming-video.ts +0 -4647
  156. /package/{dist → package-dist}/agent/index.cjs +0 -0
  157. /package/{dist → package-dist}/agent/index.umd.js +0 -0
@@ -1,220 +0,0 @@
1
- import type XmovAvatar from "../index"
2
- import type { IRawWidgetData } from "./frame-data"
3
- import type { SDKError } from "./error"
4
- import type { TDownloadProgress } from "../modules/ResourceManager"
5
- import { FPSStats } from "../utils/fpsTracker";
6
-
7
- export { ERROR_CODE_MAP, ERROR_NAME_MAP } from './error';
8
-
9
- export type {
10
- CapabilitySeverity,
11
- CapabilityName,
12
- ICapabilityCheckItem,
13
- ICapabilityCheckReport,
14
- } from './capability';
15
-
16
- export enum AvatarStatus {
17
- // initialized = 0,
18
- online = 0, // 在线可见状态(合并了原来的 playing)
19
- offline = 1,
20
- network_on = 2, // 已废弃
21
- network_off = 3, // 已废弃
22
- close = 4,
23
- visible = 5, // 可见状态
24
- invisible = 6, // 隐身状态(原来的 paused)
25
- stopped = 7, // 已废弃
26
- }
27
-
28
-
29
- /**
30
- * 渲染状态枚举
31
- * 用于表示渲染器的状态,与数字人状态(AvatarStatus)分离
32
- */
33
- export enum RenderState {
34
- init = 'init', // 开始渲染(初始状态,准备开始)
35
- rendering = 'rendering', // 渲染中(正在渲染)
36
- pausing = 'pausing', // 暂停渲染中(正在暂停渲染)
37
- paused = 'paused', // 暂停渲染(暂停但保留数据)
38
- resumed = 'resumed', // 恢复渲染(从暂停恢复)
39
- stopped = 'stopped', // 渲染停止(完全停止)
40
- }
41
-
42
-
43
- /**
44
- * 网络情况
45
- * @params downlink 下载速率(Mbps)
46
- * @params rtt 延迟(毫秒)
47
- */
48
- export interface INetworkInfo {
49
- downlink: number
50
- rtt: number
51
- networkStatus: boolean
52
- }
53
-
54
- export enum InitModel {
55
- normal = 'normal',
56
- invisible = 'invisible',
57
- }
58
-
59
- export interface IInitParams {
60
- scaleDownBy?: any
61
- useAlphaMask?: any
62
- initModel?: InitModel
63
- onDownloadProgress: TDownloadProgress;
64
- }
65
- export interface IAvatarOptions {
66
- sdkInstance?: XmovAvatar
67
- containerId: string
68
- container?: HTMLElement
69
- appId: string
70
- appSecret: string
71
- gatewayServer: string // back
72
- tag?: string // 标签 指定特定房间
73
- gateway_type?: string // gateway类型,默认为default
74
- asr_id?: number // Agent ASR 配置 ID
75
- llm_id?: number // Agent LLM 配置 ID
76
- session_speak_req_id?: 0 | 1 // Agent 会话播报序号起始值:0 无开场白,1 有开场白
77
- headers?: Record<string, string> // 自定义请求头
78
- cacheServer?: string
79
- env?: string
80
- config?: any
81
- hardwareAcceleration?: string
82
- enableClientInterrupt?: boolean
83
- enableLogger?: boolean // 是否启用日志
84
- enableDebugger?: boolean // 是否启用调试模式
85
- audioOnlyMode?: boolean // 音频+事件模式(无渲染模式):仅保留音频播放和UI事件,不执行数字人渲染
86
- renderMode?: 'client' | 'server' // 渲染模式:client=薄客户端(video播放),server/undefined=完整渲染
87
- streamingServer?: string // 薄客户端模式下,Streaming Server 的 WebSocket 地址
88
- useAlphaMask?: boolean // 是否启用 alpha mask 透明背景(双路流方案)
89
- scaleDownBy?: number
90
- onMessage: (error: SDKError) => void
91
- onStartSessionWarning?: (message: Object) => void
92
- onAAFrameHandle?: (data: any) => void
93
- onNetworkInfo?(networkInfo: INetworkInfo): void
94
- onWidgetEvent?(data: IRawWidgetData): void
95
- proxyWidget?: {
96
- [key: string]: (data: any) => void
97
- }
98
- onStateChange?(state: string): void;
99
- onStateRenderChange?(state: string, duration: number): void;
100
- onSpeakStateChange?(state: string, client_speak_id: string | number): void;
101
- onRenderChange?(state: RenderState): void;
102
- onVoiceStateChange?(state: string, duration?: number, client_speak_id?: string | number): void;
103
- onStatusChange?(status: AvatarStatus): void;
104
- onWalkStateChange?(state: string): void;
105
- onFPSUpdate?(stats: FPSStats): void;
106
- /**
107
- * 数字人音频实时播放数据回调
108
- * - MSE/WebM 模式(raw_audio=false):通过 AudioWorklet + WebCodecs 捕获和编码
109
- * - PCM 模式(raw_audio=true):通过 capture worklet + WebCodecs/MediaRecorder 编码
110
- * 两种模式输出格式完全一致(WebM/Opus),业务侧无需区分
111
- */
112
- onAudioPlaybackData?(data: IAudioPlaybackData): void;
113
- /**
114
- * Sentry 错误监控配置
115
- * 仅在公有云构建(ENABLE_SENTRY=true)时生效,私有化构建会忽略此配置
116
- * 设为 { enabled: false } 可禁用 Sentry 上报
117
- */
118
- sentry?: {
119
- enabled?: boolean
120
- /**
121
- * 性能 Traces 采样率(0-1),默认 1.0(100% 全量)
122
- * 容量受限时可下调,如 0.1(10%)
123
- */
124
- tracesSampleRate?: number
125
- }
126
- /*
127
- * 每帧数据回调
128
- * 返回当前帧的 face + body 原始数据(帧号、body_id 等)
129
- */
130
- onFrameDataUpdate?(data: IFrameDataUpdate): void;
131
- }
132
-
133
- /**
134
- * 音频播放数据回调参数(farend 格式)
135
- * 用于 ASR 回声消除(AEC),由 Agent 封装为 AU v1 farend Binary 帧
136
- */
137
- export interface IAudioPlaybackData {
138
- data: ArrayBuffer; // opus 音频原始数据(WebM 容器)
139
- codec: string; // 编码格式,固定 "opus"
140
- isFirstChunk: boolean; // 是否为该 speak 段的首段数据(包含 WebM 容器头)
141
- sampleRate: number; // 采样率
142
- samples: number; // 等效采样点数(100ms 对应的采样数)
143
- timestamp: number; // 当前 100ms 音频块起点的 epoch 毫秒时间戳
144
- speech_id: number; // 当前轮次id
145
- }
146
-
147
- /**
148
- * 帧数据回调参数
149
- * 用于返回每一帧的 face + body 原始数据(不包含渲染数据)
150
- */
151
- export interface IFrameDataUpdate {
152
- /** 客户端帧号 */
153
- frameIndex: number;
154
- /** body 数据 */
155
- body: {
156
- /** body_id */
157
- body_id: number;
158
- /** 视频名称 */
159
- name: string;
160
- /** 视频内帧号(相对于视频起始的帧偏移) */
161
- video_frame: number;
162
- /** 起始帧号 */
163
- sf: number;
164
- /** 当前状态 */
165
- state: string;
166
- } | null;
167
- /** face 数据(不包含骨骼渲染数据) */
168
- face: {
169
- /** body_id */
170
- body_id: number;
171
- /** 起始帧号 */
172
- sf: number;
173
- /** 结束帧号 */
174
- ef: number;
175
- /** 状态 */
176
- state: string;
177
- /** face 帧类型:0=原始数据,1=实时数据 */
178
- face_frame_type: number;
179
- } | null;
180
- }
181
-
182
- export interface DeviceInfo {
183
- device_id: string
184
- device_brand: string
185
- device_model: string
186
- os_version: string
187
- browser: string
188
- browser_version: string
189
- browser_ua: string
190
- sdk_version: string
191
- resolution: {
192
- width: number
193
- height: number
194
- }
195
- download_speed: number
196
- decode_speed: number
197
- render_speed: number
198
- }
199
-
200
- export interface Layout {
201
- container: {
202
- size: number[]
203
- },
204
- avatar: {
205
- v_align: string //'left' | 'center' | 'right'
206
- h_align: string //'top' | 'center' | 'bottom'
207
- scale: number | string
208
- offset_x: number
209
- offset_y: number
210
- }
211
- }
212
-
213
- export interface WalkConfig {
214
- min_x_offset: number
215
- max_x_offset: number
216
- walk_points: {
217
- [key: string]: number
218
- }
219
- init_point?: number
220
- }
@@ -1,18 +0,0 @@
1
- export interface IBackgroundRender {
2
- render(): HTMLElement
3
- }
4
- export interface IImgRender {
5
- render(): HTMLElement
6
- }
7
- export interface ITextRender {
8
- render(): HTMLElement
9
- }
10
- export interface IVideoRender {
11
- render(): HTMLElement
12
- }
13
- export interface I3DRender {
14
- render(): HTMLCanvasElement
15
- }
16
- export interface ISubtitleRender {
17
- render(): HTMLElement
18
- }