@streamoji/aitwin 0.3.0 → 0.3.3
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/dist/aitwin.cjs +3 -3
- package/dist/aitwin.js +1549 -1406
- package/dist/index.d.ts +51 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -79,6 +79,8 @@ export declare type AiTwinProps = {
|
|
|
79
79
|
onBotOutput?: (text: string) => void;
|
|
80
80
|
/** Voice lipsync debug (viseme segments, clock, queue). */
|
|
81
81
|
onRealtimeLipsyncDebug?: (snapshot: RealtimeLipsyncDebugSnapshot) => void;
|
|
82
|
+
/** Canvas render skip stats (RIFE transitions, draw coalescing, visemes). */
|
|
83
|
+
onFrameRenderStats?: (stats: FrameRenderStatsSnapshot) => void;
|
|
82
84
|
};
|
|
83
85
|
|
|
84
86
|
export declare type AiTwinRecord = {
|
|
@@ -148,6 +150,55 @@ export declare function fetchAiTwin(id: string, baseUrl?: string): Promise<AiTwi
|
|
|
148
150
|
/** Bearer token for /avatar_ttsWithPoses and /api/session-value. */
|
|
149
151
|
export declare function fetchDevAuthToken(): Promise<string>;
|
|
150
152
|
|
|
153
|
+
export declare type FrameRenderDrawContext = {
|
|
154
|
+
label: string;
|
|
155
|
+
elapsedMs: number;
|
|
156
|
+
mouthPath: string | null;
|
|
157
|
+
transitionMeta?: FrameRenderTransitionMeta;
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
export declare type FrameRenderStatsSnapshot = {
|
|
161
|
+
rafTicksSpeaking: number;
|
|
162
|
+
/** Same draw key as previous RAF sample (healthy coalescing). */
|
|
163
|
+
rafTicksDeduped: number;
|
|
164
|
+
drawsRequested: number;
|
|
165
|
+
drawsDisplayed: number;
|
|
166
|
+
queueSuperseded: number;
|
|
167
|
+
workerStale: number;
|
|
168
|
+
/** Real drops: queue + worker stale + undisplayed requests. */
|
|
169
|
+
renderLoss: number;
|
|
170
|
+
visemeSlotsTotal: number;
|
|
171
|
+
visemeSlotsCovered: number;
|
|
172
|
+
visemeCoveragePct: number;
|
|
173
|
+
transitionFramesUniqueSampled: number;
|
|
174
|
+
transitionFramesUniquePainted: number;
|
|
175
|
+
transitionFramesMissed: number;
|
|
176
|
+
rifeFramesOmittedByGap: number;
|
|
177
|
+
transitionFramesSampled: number;
|
|
178
|
+
transitionFramesDisplayed: number;
|
|
179
|
+
/** @deprecated Use `rafTicksDeduped`. */
|
|
180
|
+
drawsDeduped: number;
|
|
181
|
+
/** @deprecated Use `renderLoss`. */
|
|
182
|
+
renderSkips: number;
|
|
183
|
+
/** @deprecated Use `visemeSlotsCovered`. */
|
|
184
|
+
visemesShown: number;
|
|
185
|
+
/** @deprecated Use `visemeSlotsTotal - visemeSlotsCovered`. */
|
|
186
|
+
visemesSkipped: number;
|
|
187
|
+
/** @deprecated Use `transitionFramesMissed`. */
|
|
188
|
+
rifeTransitionFramesSkipped: number;
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
declare type FrameRenderTransitionMeta = {
|
|
192
|
+
from: string;
|
|
193
|
+
to: string;
|
|
194
|
+
fromVtime: number;
|
|
195
|
+
toVtime: number;
|
|
196
|
+
frameIdx: number;
|
|
197
|
+
frameCount: number;
|
|
198
|
+
fullFrameCount: number;
|
|
199
|
+
omittedByGap: number;
|
|
200
|
+
};
|
|
201
|
+
|
|
151
202
|
/** Public CDN original portrait for custom-faces/{faceId}/ (same id as pipeline avatarId). */
|
|
152
203
|
export declare function getAiTwinSourceUrl(faceId: string, cdnBase?: string, extension?: string): string;
|
|
153
204
|
|