@spatialwalk/avatarkit 1.0.0-beta.7 → 1.0.0-beta.71

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 (101) hide show
  1. package/CHANGELOG.md +602 -10
  2. package/README.md +475 -312
  3. package/dist/StreamingAudioPlayer-D8Q8WiEg.js +638 -0
  4. package/dist/animation/AnimationWebSocketClient.d.ts +6 -50
  5. package/dist/animation/utils/eventEmitter.d.ts +1 -9
  6. package/dist/animation/utils/flameConverter.d.ts +3 -24
  7. package/dist/audio/AnimationPlayer.d.ts +6 -57
  8. package/dist/audio/StreamingAudioPlayer.d.ts +2 -118
  9. package/dist/avatar_core_wasm-Dv943JJl.js +2696 -0
  10. package/dist/{avatar_core_wasm.wasm → avatar_core_wasm-e68766db.wasm} +0 -0
  11. package/dist/config/app-config.d.ts +3 -4
  12. package/dist/config/constants.d.ts +10 -18
  13. package/dist/config/sdk-config-loader.d.ts +4 -10
  14. package/dist/core/Avatar.d.ts +2 -14
  15. package/dist/core/AvatarController.d.ts +95 -85
  16. package/dist/core/AvatarDownloader.d.ts +7 -92
  17. package/dist/core/AvatarManager.d.ts +22 -12
  18. package/dist/core/AvatarSDK.d.ts +35 -0
  19. package/dist/core/AvatarView.d.ts +55 -140
  20. package/dist/core/NetworkLayer.d.ts +7 -59
  21. package/dist/generated/common/v1/models.d.ts +36 -0
  22. package/dist/generated/driveningress/v1/driveningress.d.ts +0 -1
  23. package/dist/generated/driveningress/v2/driveningress.d.ts +82 -1
  24. package/dist/generated/google/protobuf/struct.d.ts +0 -1
  25. package/dist/generated/google/protobuf/timestamp.d.ts +0 -1
  26. package/dist/index-U8QcNdma.js +16477 -0
  27. package/dist/index.d.ts +2 -4
  28. package/dist/index.js +17 -18
  29. package/dist/renderer/RenderSystem.d.ts +9 -79
  30. package/dist/renderer/covariance.d.ts +3 -11
  31. package/dist/renderer/renderer.d.ts +6 -2
  32. package/dist/renderer/sortSplats.d.ts +3 -10
  33. package/dist/renderer/webgl/reorderData.d.ts +4 -11
  34. package/dist/renderer/webgl/webglRenderer.d.ts +34 -4
  35. package/dist/renderer/webgpu/webgpuRenderer.d.ts +30 -5
  36. package/dist/types/character-settings.d.ts +1 -1
  37. package/dist/types/character.d.ts +3 -15
  38. package/dist/types/index.d.ts +123 -43
  39. package/dist/utils/animation-interpolation.d.ts +4 -15
  40. package/dist/utils/client-id.d.ts +6 -0
  41. package/dist/utils/conversationId.d.ts +10 -0
  42. package/dist/utils/error-utils.d.ts +0 -1
  43. package/dist/utils/id-manager.d.ts +34 -0
  44. package/dist/utils/logger.d.ts +2 -11
  45. package/dist/utils/posthog-tracker.d.ts +8 -0
  46. package/dist/utils/pwa-cache-manager.d.ts +17 -0
  47. package/dist/utils/usage-tracker.d.ts +6 -0
  48. package/dist/vanilla/vite.config.d.ts +2 -0
  49. package/dist/vite.d.ts +19 -0
  50. package/dist/wasm/avatarCoreAdapter.d.ts +15 -126
  51. package/dist/wasm/avatarCoreMemory.d.ts +5 -2
  52. package/package.json +19 -8
  53. package/vite.d.ts +20 -0
  54. package/vite.js +126 -0
  55. package/dist/StreamingAudioPlayer-D7s8q5h0.js +0 -319
  56. package/dist/StreamingAudioPlayer-D7s8q5h0.js.map +0 -1
  57. package/dist/animation/AnimationWebSocketClient.d.ts.map +0 -1
  58. package/dist/animation/utils/eventEmitter.d.ts.map +0 -1
  59. package/dist/animation/utils/flameConverter.d.ts.map +0 -1
  60. package/dist/audio/AnimationPlayer.d.ts.map +0 -1
  61. package/dist/audio/StreamingAudioPlayer.d.ts.map +0 -1
  62. package/dist/avatar_core_wasm-D4eEi7Eh.js +0 -1666
  63. package/dist/avatar_core_wasm-D4eEi7Eh.js.map +0 -1
  64. package/dist/config/app-config.d.ts.map +0 -1
  65. package/dist/config/constants.d.ts.map +0 -1
  66. package/dist/config/sdk-config-loader.d.ts.map +0 -1
  67. package/dist/core/Avatar.d.ts.map +0 -1
  68. package/dist/core/AvatarController.d.ts.map +0 -1
  69. package/dist/core/AvatarDownloader.d.ts.map +0 -1
  70. package/dist/core/AvatarKit.d.ts +0 -66
  71. package/dist/core/AvatarKit.d.ts.map +0 -1
  72. package/dist/core/AvatarManager.d.ts.map +0 -1
  73. package/dist/core/AvatarView.d.ts.map +0 -1
  74. package/dist/core/NetworkLayer.d.ts.map +0 -1
  75. package/dist/generated/driveningress/v1/driveningress.d.ts.map +0 -1
  76. package/dist/generated/driveningress/v2/driveningress.d.ts.map +0 -1
  77. package/dist/generated/google/protobuf/struct.d.ts.map +0 -1
  78. package/dist/generated/google/protobuf/timestamp.d.ts.map +0 -1
  79. package/dist/index-CpSvWi6A.js +0 -6026
  80. package/dist/index-CpSvWi6A.js.map +0 -1
  81. package/dist/index.d.ts.map +0 -1
  82. package/dist/index.js.map +0 -1
  83. package/dist/renderer/RenderSystem.d.ts.map +0 -1
  84. package/dist/renderer/covariance.d.ts.map +0 -1
  85. package/dist/renderer/renderer.d.ts.map +0 -1
  86. package/dist/renderer/sortSplats.d.ts.map +0 -1
  87. package/dist/renderer/webgl/reorderData.d.ts.map +0 -1
  88. package/dist/renderer/webgl/webglRenderer.d.ts.map +0 -1
  89. package/dist/renderer/webgpu/webgpuRenderer.d.ts.map +0 -1
  90. package/dist/types/character-settings.d.ts.map +0 -1
  91. package/dist/types/character.d.ts.map +0 -1
  92. package/dist/types/index.d.ts.map +0 -1
  93. package/dist/utils/animation-interpolation.d.ts.map +0 -1
  94. package/dist/utils/cls-tracker.d.ts +0 -17
  95. package/dist/utils/cls-tracker.d.ts.map +0 -1
  96. package/dist/utils/error-utils.d.ts.map +0 -1
  97. package/dist/utils/logger.d.ts.map +0 -1
  98. package/dist/utils/reqId.d.ts +0 -20
  99. package/dist/utils/reqId.d.ts.map +0 -1
  100. package/dist/wasm/avatarCoreAdapter.d.ts.map +0 -1
  101. package/dist/wasm/avatarCoreMemory.d.ts.map +0 -1
@@ -1,26 +1,5 @@
1
- import { Flame } from '../../generated/driveningress/v1/driveningress';
2
- export interface FlameParams {
3
- shape_params?: number[];
4
- expr_params?: number[];
5
- rotation?: number[];
6
- translation?: number[];
7
- neck_pose?: number[];
8
- jaw_pose?: number[];
9
- eyes_pose?: number[];
10
- eyelid?: number[];
11
- has_eyelid?: boolean;
12
- }
13
1
  /**
14
- * Convert proto Flame to WASM FlameParams format
2
+ * Convert proto Flame to WASM FlameParams
3
+ * @internal
15
4
  */
16
- 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
- */
21
- export declare function convertWasmParamsToProtoFlame(wasmParams: FlameParams): Flame;
22
- /**
23
- * Create a neutral proto Flame (zero pose)
24
- */
25
- export declare function createNeutralFlameProto(): Flame;
26
- //# sourceMappingURL=flameConverter.d.ts.map
5
+ export {};
@@ -1,57 +1,6 @@
1
- import { StreamingAudioPlayer } from './StreamingAudioPlayer';
2
- export declare class AnimationPlayer {
3
- private audio;
4
- private streamingPlayer;
5
- private _isPlaying;
6
- private fps;
7
- private onEndedCallback?;
8
- private static audioUnlocked;
9
- private useStreaming;
10
- /**
11
- * 解锁音频上下文(Safari 自动播放策略)
12
- * 必须在用户交互事件(如 click)中调用
13
- */
14
- static unlockAudioContext(): Promise<void>;
15
- /**
16
- * Initialize with HTMLAudioElement (traditional way)
17
- */
18
- initialize(audioUrl: string, onEnded?: () => void): Promise<void>;
19
- /**
20
- * Initialize with StreamingAudioPlayer (streaming way)
21
- * @deprecated 使用 prepareStreamingPlayer() 代替
22
- */
23
- initializeStreaming(streamingPlayer: StreamingAudioPlayer, onEnded?: () => void): Promise<void>;
24
- /**
25
- * 检查流式播放器是否已准备好
26
- */
27
- isStreamingReady(): boolean;
28
- /**
29
- * 获取流式播放器实例
30
- */
31
- getStreamingPlayer(): StreamingAudioPlayer | null;
32
- /**
33
- * 创建并初始化流式播放器
34
- * 在服务连接建立时调用
35
- */
36
- createAndInitializeStreamingPlayer(): Promise<void>;
37
- /**
38
- * 准备流式播放器(如果未创建则创建并初始化)
39
- * 停止之前的播放并更新结束回调
40
- */
41
- prepareStreamingPlayer(onEnded?: () => void): Promise<void>;
42
- private setupEventListeners;
43
- play(): Promise<void>;
44
- stop(): void;
45
- isPlaying(): boolean;
46
- getCurrentFrameIndex(): number;
47
- /**
48
- * Get current playback time
49
- */
50
- getCurrentTime(): number;
51
- /**
52
- * 添加音频块(仅用于流式播放)
53
- */
54
- addAudioChunk(audio: Uint8Array, isLast?: boolean): void;
55
- dispose(): void;
56
- }
57
- //# sourceMappingURL=AnimationPlayer.d.ts.map
1
+ /**
2
+ * Audio-animation synchronized player
3
+ * Supports HTMLAudioElement (traditional) and StreamingAudioPlayer (streaming)
4
+ * @internal
5
+ */
6
+ export {};
@@ -2,122 +2,6 @@
2
2
  * Streaming Audio Player
3
3
  * Implements real-time audio playback using Web Audio API
4
4
  * Supports dynamic PCM chunk addition without Workers
5
+ * @internal
5
6
  */
6
- export interface StreamingAudioPlayerOptions {
7
- sampleRate?: number;
8
- channelCount?: number;
9
- debug?: boolean;
10
- }
11
- export declare class StreamingAudioPlayer {
12
- private audioContext;
13
- private sampleRate;
14
- private channelCount;
15
- private debug;
16
- private sessionId;
17
- private sessionStartTime;
18
- private pausedTimeOffset;
19
- private pausedAt;
20
- private scheduledTime;
21
- private isPlaying;
22
- private isPaused;
23
- private autoStartEnabled;
24
- private audioChunks;
25
- private scheduledChunks;
26
- private activeSources;
27
- private onEndedCallback?;
28
- constructor(options?: StreamingAudioPlayerOptions);
29
- /**
30
- * Initialize audio context (create and ensure it's ready)
31
- */
32
- initialize(): Promise<void>;
33
- /**
34
- * Add audio chunk (16-bit PCM)
35
- */
36
- addChunk(pcmData: Uint8Array, isLast?: boolean): void;
37
- /**
38
- * Start new session (stop current and start fresh)
39
- */
40
- startNewSession(audioChunks: Array<{
41
- data: Uint8Array;
42
- isLast: boolean;
43
- }>): Promise<void>;
44
- /**
45
- * Start playback
46
- */
47
- private startPlayback;
48
- /**
49
- * Schedule all pending chunks
50
- */
51
- private scheduleAllChunks;
52
- /**
53
- * Schedule next audio chunk
54
- */
55
- private scheduleNextChunk;
56
- /**
57
- * Convert PCM data to AudioBuffer
58
- * Input: 16-bit PCM (int16), Output: AudioBuffer (float32 [-1, 1])
59
- */
60
- private pcmToAudioBuffer;
61
- /**
62
- * Get current playback time (seconds)
63
- */
64
- getCurrentTime(): number;
65
- /**
66
- * Pause playback
67
- */
68
- pause(): void;
69
- /**
70
- * Resume playback
71
- */
72
- resume(): Promise<void>;
73
- /**
74
- * Stop playback
75
- */
76
- stop(): void;
77
- /**
78
- * Enable or disable auto-start (for delayed start scenarios)
79
- */
80
- setAutoStart(enabled: boolean): void;
81
- /**
82
- * Start playback manually (for delayed start scenarios)
83
- * This allows starting playback after transition animation completes
84
- */
85
- play(): void;
86
- /**
87
- * Mark playback as ended
88
- */
89
- markEnded(): void;
90
- /**
91
- * Set ended callback
92
- */
93
- onEnded(callback: () => void): void;
94
- /**
95
- * Check if playing
96
- */
97
- isPlayingNow(): boolean;
98
- /**
99
- * Get total duration of buffered audio
100
- */
101
- getBufferedDuration(): number;
102
- /**
103
- * Get remaining duration (buffered - played) in seconds
104
- */
105
- getRemainingDuration(): number;
106
- /**
107
- * Dispose and cleanup
108
- */
109
- dispose(): void;
110
- /**
111
- * Flush buffered audio
112
- * - hard: stops all playing sources and clears all chunks
113
- * - soft (default): clears UNSCHEDULED chunks only
114
- */
115
- flush(options?: {
116
- hard?: boolean;
117
- }): void;
118
- /**
119
- * Debug logging
120
- */
121
- private log;
122
- }
123
- //# sourceMappingURL=StreamingAudioPlayer.d.ts.map
7
+ export {};