@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.
- package/CHANGELOG.md +37 -4
- package/README.md +30 -31
- package/dist/StreamingAudioPlayer-C-_1X8K-.js +398 -0
- package/dist/animation/AnimationWebSocketClient.d.ts +0 -20
- package/dist/animation/utils/eventEmitter.d.ts +0 -3
- package/dist/animation/utils/flameConverter.d.ts +3 -10
- package/dist/audio/AnimationPlayer.d.ts +0 -46
- package/dist/audio/StreamingAudioPlayer.d.ts +0 -81
- package/dist/avatar_core_wasm-i0Ocpx6q.js +2693 -0
- package/dist/config/app-config.d.ts +1 -5
- package/dist/config/constants.d.ts +2 -10
- package/dist/config/sdk-config-loader.d.ts +2 -8
- package/dist/core/Avatar.d.ts +0 -6
- package/dist/core/AvatarController.d.ts +0 -111
- package/dist/core/AvatarDownloader.d.ts +0 -75
- package/dist/core/AvatarManager.d.ts +6 -13
- package/dist/core/AvatarSDK.d.ts +21 -0
- package/dist/core/AvatarView.d.ts +4 -103
- package/dist/core/NetworkLayer.d.ts +0 -6
- package/dist/generated/driveningress/v1/driveningress.d.ts +1 -11
- package/dist/generated/driveningress/v2/driveningress.d.ts +0 -2
- package/dist/generated/google/protobuf/struct.d.ts +5 -38
- package/dist/generated/google/protobuf/timestamp.d.ts +1 -102
- package/dist/index-BpVIIm3g.js +7921 -0
- package/dist/index.d.ts +1 -4
- package/dist/index.js +17 -17
- package/dist/renderer/RenderSystem.d.ts +0 -8
- package/dist/renderer/covariance.d.ts +0 -11
- package/dist/renderer/sortSplats.d.ts +0 -10
- package/dist/renderer/webgl/reorderData.d.ts +0 -12
- package/dist/renderer/webgl/webglRenderer.d.ts +3 -39
- package/dist/renderer/webgpu/webgpuRenderer.d.ts +3 -27
- package/dist/types/character-settings.d.ts +0 -4
- package/dist/types/character.d.ts +3 -9
- package/dist/types/index.d.ts +14 -21
- package/dist/utils/animation-interpolation.d.ts +3 -12
- package/dist/utils/client-id.d.ts +0 -5
- package/dist/utils/cls-tracker.d.ts +5 -26
- package/dist/utils/conversationId.d.ts +0 -18
- package/dist/utils/error-utils.d.ts +1 -24
- package/dist/utils/heartbeat-manager.d.ts +0 -26
- package/dist/utils/id-manager.d.ts +0 -23
- package/dist/utils/logger.d.ts +1 -4
- package/dist/utils/usage-tracker.d.ts +2 -17
- package/dist/wasm/avatarCoreAdapter.d.ts +0 -134
- package/dist/wasm/avatarCoreMemory.d.ts +0 -52
- package/package.json +1 -1
- package/dist/StreamingAudioPlayer-C6v9Ed55.js +0 -352
- package/dist/avatar_core_wasm-BPIbbUx_.js +0 -1663
- package/dist/core/AvatarKit.d.ts +0 -48
- package/dist/index-s9KqPWVW.js +0 -6770
|
@@ -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
|
}
|