@spatialwalk/avatarkit 1.0.0-beta.27 → 1.0.0-beta.29

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 (51) hide show
  1. package/CHANGELOG.md +37 -4
  2. package/README.md +30 -31
  3. package/dist/StreamingAudioPlayer-C-_1X8K-.js +398 -0
  4. package/dist/animation/AnimationWebSocketClient.d.ts +0 -20
  5. package/dist/animation/utils/eventEmitter.d.ts +0 -3
  6. package/dist/animation/utils/flameConverter.d.ts +3 -10
  7. package/dist/audio/AnimationPlayer.d.ts +0 -46
  8. package/dist/audio/StreamingAudioPlayer.d.ts +0 -81
  9. package/dist/avatar_core_wasm-i0Ocpx6q.js +2693 -0
  10. package/dist/config/app-config.d.ts +1 -5
  11. package/dist/config/constants.d.ts +2 -10
  12. package/dist/config/sdk-config-loader.d.ts +2 -8
  13. package/dist/core/Avatar.d.ts +0 -6
  14. package/dist/core/AvatarController.d.ts +0 -111
  15. package/dist/core/AvatarDownloader.d.ts +0 -75
  16. package/dist/core/AvatarManager.d.ts +6 -13
  17. package/dist/core/AvatarSDK.d.ts +21 -0
  18. package/dist/core/AvatarView.d.ts +4 -103
  19. package/dist/core/NetworkLayer.d.ts +0 -6
  20. package/dist/generated/driveningress/v1/driveningress.d.ts +1 -11
  21. package/dist/generated/driveningress/v2/driveningress.d.ts +0 -2
  22. package/dist/generated/google/protobuf/struct.d.ts +5 -38
  23. package/dist/generated/google/protobuf/timestamp.d.ts +1 -102
  24. package/dist/index-BpVIIm3g.js +7921 -0
  25. package/dist/index.d.ts +1 -4
  26. package/dist/index.js +17 -17
  27. package/dist/renderer/RenderSystem.d.ts +0 -8
  28. package/dist/renderer/covariance.d.ts +0 -11
  29. package/dist/renderer/sortSplats.d.ts +0 -10
  30. package/dist/renderer/webgl/reorderData.d.ts +0 -12
  31. package/dist/renderer/webgl/webglRenderer.d.ts +3 -39
  32. package/dist/renderer/webgpu/webgpuRenderer.d.ts +3 -27
  33. package/dist/types/character-settings.d.ts +0 -4
  34. package/dist/types/character.d.ts +3 -9
  35. package/dist/types/index.d.ts +14 -21
  36. package/dist/utils/animation-interpolation.d.ts +3 -12
  37. package/dist/utils/client-id.d.ts +0 -5
  38. package/dist/utils/cls-tracker.d.ts +5 -26
  39. package/dist/utils/conversationId.d.ts +0 -18
  40. package/dist/utils/error-utils.d.ts +1 -24
  41. package/dist/utils/heartbeat-manager.d.ts +0 -26
  42. package/dist/utils/id-manager.d.ts +0 -23
  43. package/dist/utils/logger.d.ts +1 -4
  44. package/dist/utils/usage-tracker.d.ts +2 -17
  45. package/dist/wasm/avatarCoreAdapter.d.ts +0 -134
  46. package/dist/wasm/avatarCoreMemory.d.ts +0 -52
  47. package/package.json +1 -1
  48. package/dist/StreamingAudioPlayer-C6v9Ed55.js +0 -352
  49. package/dist/avatar_core_wasm-BPIbbUx_.js +0 -1663
  50. package/dist/core/AvatarKit.d.ts +0 -48
  51. package/dist/index-s9KqPWVW.js +0 -6770
@@ -1,6 +1,3 @@
1
- /**
2
- * Simple Event Emitter
3
- */
4
1
  type EventHandler = (...args: any[]) => void;
5
2
  export declare class EventEmitter {
6
3
  private events;
@@ -10,16 +10,9 @@ export interface FlameParams {
10
10
  eyelid?: number[];
11
11
  has_eyelid?: boolean;
12
12
  }
13
- /**
14
- * Convert proto Flame to WASM FlameParams format
15
- */
13
+
16
14
  export declare function convertProtoFlameToWasmParams(protoFlame: Flame): FlameParams;
17
- /**
18
- * Convert WASM FlameParams to proto Flame format
19
- * Used for transition animation from idle to speaking
20
- */
15
+
21
16
  export declare function convertWasmParamsToProtoFlame(wasmParams: FlameParams): Flame;
22
- /**
23
- * Create a neutral proto Flame (zero pose)
24
- */
17
+
25
18
  export declare function createNeutralFlameProto(): Flame;
@@ -7,69 +7,23 @@ export declare class AnimationPlayer {
7
7
  private onEndedCallback?;
8
8
  private static audioUnlocked;
9
9
  private useStreaming;
10
- /**
11
- * 解锁音频上下文(Safari 自动播放策略)
12
- * 必须在用户交互事件(如 click)中调用
13
- */
14
10
  static unlockAudioContext(): Promise<void>;
15
- /**
16
- * Initialize with HTMLAudioElement (traditional way)
17
- */
18
11
  initialize(audioUrl: string, onEnded?: () => void): Promise<void>;
19
- /**
20
- * Initialize with StreamingAudioPlayer (streaming way)
21
- * @deprecated 使用 prepareStreamingPlayer() 代替
22
- */
23
12
  initializeStreaming(streamingPlayer: StreamingAudioPlayer, onEnded?: () => void): Promise<void>;
24
- /**
25
- * 检查流式播放器是否已准备好
26
- */
27
13
  isStreamingReady(): boolean;
28
- /**
29
- * 获取流式播放器实例
30
- */
31
14
  getStreamingPlayer(): StreamingAudioPlayer | null;
32
- /**
33
- * 创建并初始化流式播放器
34
- * 在服务连接建立时调用
35
- */
36
15
  createAndInitializeStreamingPlayer(): Promise<void>;
37
- /**
38
- * 准备流式播放器(如果未创建则创建并初始化)
39
- * 停止之前的播放并更新结束回调
40
- */
41
16
  prepareStreamingPlayer(onEnded?: () => void): Promise<void>;
42
17
  private setupEventListeners;
43
18
  play(): Promise<void>;
44
19
  stop(): void;
45
20
  isPlaying(): boolean;
46
21
  getCurrentFrameIndex(): number;
47
- /**
48
- * Get current playback time
49
- */
50
22
  getCurrentTime(): number;
51
- /**
52
- * 添加音频块(仅用于流式播放)
53
- */
54
23
  addAudioChunk(audio: Uint8Array, isLast?: boolean): void;
55
- /**
56
- * 暂停播放
57
- */
58
24
  pause(): void;
59
- /**
60
- * 继续播放
61
- */
62
25
  resume(): Promise<void>;
63
- /**
64
- * 设置音量 (0.0 - 1.0)
65
- * 注意:这仅控制数字人音频播放器的音量,不影响系统音量
66
- * @param volume 音量值,范围 0.0 到 1.0(0.0 为静音,1.0 为最大音量)
67
- */
68
26
  setVolume(volume: number): void;
69
- /**
70
- * 获取当前音量
71
- * @returns 当前音量值 (0.0 - 1.0)
72
- */
73
27
  getVolume(): number;
74
28
  dispose(): void;
75
29
  }
@@ -1,8 +1,3 @@
1
- /**
2
- * Streaming Audio Player
3
- * Implements real-time audio playback using Web Audio API
4
- * Supports dynamic PCM chunk addition without Workers
5
- */
6
1
  export interface StreamingAudioPlayerOptions {
7
2
  sampleRate?: number;
8
3
  channelCount?: number;
@@ -29,108 +24,32 @@ export declare class StreamingAudioPlayer {
29
24
  private volume;
30
25
  private onEndedCallback?;
31
26
  constructor(options?: StreamingAudioPlayerOptions);
32
- /**
33
- * Initialize audio context (create and ensure it's ready)
34
- */
35
27
  initialize(): Promise<void>;
36
- /**
37
- * Add audio chunk (16-bit PCM)
38
- */
39
28
  addChunk(pcmData: Uint8Array, isLast?: boolean): void;
40
- /**
41
- * Start new session (stop current and start fresh)
42
- */
43
29
  startNewSession(audioChunks: Array<{
44
30
  data: Uint8Array;
45
31
  isLast: boolean;
46
32
  }>): Promise<void>;
47
- /**
48
- * Start playback
49
- */
50
33
  private startPlayback;
51
- /**
52
- * Schedule all pending chunks
53
- */
54
34
  private scheduleAllChunks;
55
- /**
56
- * Schedule next audio chunk
57
- */
58
35
  private scheduleNextChunk;
59
- /**
60
- * Convert PCM data to AudioBuffer
61
- * Input: 16-bit PCM (int16), Output: AudioBuffer (float32 [-1, 1])
62
- */
63
36
  private pcmToAudioBuffer;
64
- /**
65
- * Get current playback time (seconds)
66
- */
67
37
  getCurrentTime(): number;
68
- /**
69
- * Pause playback
70
- */
71
38
  pause(): void;
72
- /**
73
- * Resume playback
74
- */
75
39
  resume(): Promise<void>;
76
- /**
77
- * Stop playback
78
- */
79
40
  stop(): void;
80
- /**
81
- * Enable or disable auto-start (for delayed start scenarios)
82
- */
83
41
  setAutoStart(enabled: boolean): void;
84
- /**
85
- * Start playback manually (for delayed start scenarios)
86
- * This allows starting playback after transition animation completes
87
- */
88
42
  play(): void;
89
- /**
90
- * Mark playback as ended
91
- */
92
43
  markEnded(): void;
93
- /**
94
- * Set ended callback
95
- */
96
44
  onEnded(callback: () => void): void;
97
- /**
98
- * Check if playing
99
- */
100
45
  isPlayingNow(): boolean;
101
- /**
102
- * Get total duration of buffered audio
103
- */
104
46
  getBufferedDuration(): number;
105
- /**
106
- * Get remaining duration (buffered - played) in seconds
107
- */
108
47
  getRemainingDuration(): number;
109
- /**
110
- * Dispose and cleanup
111
- */
112
48
  dispose(): void;
113
- /**
114
- * Flush buffered audio
115
- * - hard: stops all playing sources and clears all chunks
116
- * - soft (default): clears UNSCHEDULED chunks only
117
- */
118
49
  flush(options?: {
119
50
  hard?: boolean;
120
51
  }): void;
121
- /**
122
- * 设置音量 (0.0 - 1.0)
123
- * 注意:这仅控制数字人音频播放器的音量,不影响系统音量
124
- * @param volume 音量值,范围 0.0 到 1.0(0.0 为静音,1.0 为最大音量)
125
- */
126
52
  setVolume(volume: number): void;
127
- /**
128
- * 获取当前音量
129
- * @returns 当前音量值 (0.0 - 1.0)
130
- */
131
53
  getVolume(): number;
132
- /**
133
- * Debug logging
134
- */
135
54
  private log;
136
55
  }