screenci 0.0.9 → 0.0.11
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/README.md +44 -58
- package/dist/Dockerfile +48 -0
- package/dist/cli.d.ts +21 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +1346 -384
- package/dist/cli.js.map +1 -1
- package/dist/e2e/instrument.e2e.js +12 -0
- package/dist/e2e/instrument.e2e.js.map +1 -1
- package/dist/index.d.ts +9 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/playwright.config.d.ts +1 -1
- package/dist/src/asset.d.ts +27 -67
- package/dist/src/asset.d.ts.map +1 -1
- package/dist/src/asset.js +44 -45
- package/dist/src/asset.js.map +1 -1
- package/dist/src/caption.d.ts +164 -54
- package/dist/src/caption.d.ts.map +1 -1
- package/dist/src/caption.js +304 -131
- package/dist/src/caption.js.map +1 -1
- package/dist/src/events.d.ts +69 -27
- package/dist/src/events.d.ts.map +1 -1
- package/dist/src/events.js +64 -40
- package/dist/src/events.js.map +1 -1
- package/dist/src/instrument.d.ts.map +1 -1
- package/dist/src/instrument.js +142 -35
- package/dist/src/instrument.js.map +1 -1
- package/dist/src/logger.d.ts.map +1 -1
- package/dist/src/logger.js +2 -1
- package/dist/src/logger.js.map +1 -1
- package/dist/src/recording.d.ts +4 -0
- package/dist/src/recording.d.ts.map +1 -0
- package/dist/src/recording.js +2 -0
- package/dist/src/recording.js.map +1 -0
- package/dist/src/recordingData.d.ts +145 -0
- package/dist/src/recordingData.d.ts.map +1 -0
- package/dist/src/recordingData.js +2 -0
- package/dist/src/recordingData.js.map +1 -0
- package/dist/src/types.d.ts +201 -71
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js +31 -1
- package/dist/src/types.js.map +1 -1
- package/dist/src/video.d.ts.map +1 -1
- package/dist/src/video.js +29 -24
- package/dist/src/video.js.map +1 -1
- package/dist/src/voices.d.ts +344 -41
- package/dist/src/voices.d.ts.map +1 -1
- package/dist/src/voices.js +261 -30
- package/dist/src/voices.js.map +1 -1
- package/dist/test-fixtures/screenci.config.d.ts +5 -0
- package/dist/test-fixtures/screenci.config.d.ts.map +1 -0
- package/dist/test-fixtures/screenci.config.js +4 -0
- package/dist/test-fixtures/screenci.config.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +39 -3
- package/skills/playwright-cli/SKILL.md +348 -0
- package/skills/screenci/SKILL.md +55 -0
- package/skills/screenci/references/init.md +47 -0
- package/skills/screenci/references/record.md +41 -0
- package/dist/reporter.d.ts +0 -9
- package/dist/reporter.d.ts.map +0 -1
- package/dist/reporter.js +0 -49
- package/dist/reporter.js.map +0 -1
- package/dist/src/caption.test-d.d.ts +0 -2
- package/dist/src/caption.test-d.d.ts.map +0 -1
- package/dist/src/caption.test-d.js +0 -50
- package/dist/src/caption.test-d.js.map +0 -1
package/dist/src/events.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AutoZoomOptions, CaptionConfig, Easing, RecordOptions, RenderOptions } from './types.js';
|
|
1
|
+
import type { AutoZoomOptions, CaptionConfig, Easing, RecordOptions, RenderOptions, ResolvedRenderOptions } from './types.js';
|
|
2
2
|
import type { VoiceKey } from './voices.js';
|
|
3
3
|
export type VideoStartEvent = {
|
|
4
4
|
type: 'videoStart';
|
|
@@ -14,6 +14,7 @@ export type MouseMoveEvent = {
|
|
|
14
14
|
type: 'mouseMove';
|
|
15
15
|
startMs: number;
|
|
16
16
|
endMs: number;
|
|
17
|
+
duration: number;
|
|
17
18
|
x: number;
|
|
18
19
|
y: number;
|
|
19
20
|
easing?: Easing;
|
|
@@ -61,9 +62,24 @@ export type InputEvent = {
|
|
|
61
62
|
elementRect?: ElementRect;
|
|
62
63
|
events: Array<MouseMoveEvent | MouseDownEvent | MouseUpEvent | MouseShowEvent | MouseHideEvent | MouseWaitEvent>;
|
|
63
64
|
};
|
|
65
|
+
export type RecordingCustomVoiceRef = {
|
|
66
|
+
assetHash: string;
|
|
67
|
+
/** Present only in recording phase (for CLI upload); stripped from submitted data. */
|
|
68
|
+
assetPath?: string;
|
|
69
|
+
};
|
|
64
70
|
export type CaptionTranslation = {
|
|
65
71
|
text: string;
|
|
66
|
-
voice: VoiceKey;
|
|
72
|
+
voice: VoiceKey | RecordingCustomVoiceRef;
|
|
73
|
+
/** BCP-47 region code, e.g. 'en-US'. Overrides the base language for TTS synthesis. */
|
|
74
|
+
region?: string;
|
|
75
|
+
/** TTS model type — 'expressive' (Gemini) or 'consistent' (Chirp 3 HD). Defaults to 'consistent'. */
|
|
76
|
+
modelType?: string;
|
|
77
|
+
/** Speaking style prompt for Gemini TTS (only used with 'expressive' model). */
|
|
78
|
+
style?: string;
|
|
79
|
+
/** Accent description for Gemini TTS (only used with 'expressive' model). Omitted from the prompt when not set. */
|
|
80
|
+
accent?: string;
|
|
81
|
+
/** Pacing description for Gemini TTS (only used with 'expressive' model). */
|
|
82
|
+
pacing?: string;
|
|
67
83
|
};
|
|
68
84
|
export type CaptionStartEvent = {
|
|
69
85
|
type: 'captionStart';
|
|
@@ -75,35 +91,46 @@ export type CaptionStartEvent = {
|
|
|
75
91
|
/** Multi-language API — all language translations keyed by language code */
|
|
76
92
|
translations?: Record<string, CaptionTranslation>;
|
|
77
93
|
};
|
|
78
|
-
export type CaptionUntilEvent = {
|
|
79
|
-
type: 'captionUntil';
|
|
80
|
-
timeMs: number;
|
|
81
|
-
percentage: number;
|
|
82
|
-
};
|
|
83
94
|
export type CaptionEndEvent = {
|
|
84
95
|
type: 'captionEnd';
|
|
85
96
|
timeMs: number;
|
|
97
|
+
reason?: 'auto' | 'waitEnd';
|
|
86
98
|
};
|
|
87
|
-
/** File-based video caption translation
|
|
99
|
+
/** File-based video caption translation. assetPath is present only in the local
|
|
100
|
+
* recording phase (for CLI upload) and is stripped before submitting to the backend. */
|
|
88
101
|
export type VideoCaptionTranslationFile = {
|
|
89
|
-
|
|
102
|
+
assetHash: string;
|
|
103
|
+
/** Local file path — present only during recording; stripped from submitted data. */
|
|
104
|
+
assetPath?: string;
|
|
90
105
|
subtitle?: string;
|
|
91
106
|
};
|
|
92
107
|
/** TTS-based video caption translation — generates audio via text-to-speech. */
|
|
93
108
|
export type VideoCaptionTranslationTTS = {
|
|
94
109
|
text: string;
|
|
95
|
-
voice: VoiceKey;
|
|
110
|
+
voice: VoiceKey | RecordingCustomVoiceRef;
|
|
111
|
+
/** BCP-47 region code, e.g. 'en-US'. Overrides the base language for TTS synthesis. */
|
|
112
|
+
region?: string;
|
|
113
|
+
/** TTS model type — 'expressive' (Gemini) or 'consistent' (Chirp 3 HD). Defaults to 'consistent'. */
|
|
114
|
+
modelType?: string;
|
|
115
|
+
/** Speaking style prompt for Gemini TTS (only used with 'expressive' model). */
|
|
116
|
+
style?: string;
|
|
117
|
+
/** Accent description for Gemini TTS (only used with 'expressive' model). Omitted from the prompt when not set. */
|
|
118
|
+
accent?: string;
|
|
119
|
+
/** Pacing description for Gemini TTS (only used with 'expressive' model). */
|
|
120
|
+
pacing?: string;
|
|
96
121
|
};
|
|
97
122
|
export type VideoCaptionTranslation = VideoCaptionTranslationFile | VideoCaptionTranslationTTS;
|
|
98
123
|
export type VideoCaptionStartEvent = {
|
|
99
124
|
type: 'videoCaptionStart';
|
|
100
125
|
timeMs: number;
|
|
101
126
|
name: string;
|
|
102
|
-
/** Single-language API:
|
|
127
|
+
/** Single-language API: SHA-256 hash of the pre-recorded asset. */
|
|
128
|
+
assetHash?: string;
|
|
129
|
+
/** Single-language API: local file path — present only during recording; stripped from submitted data. */
|
|
103
130
|
assetPath?: string;
|
|
104
131
|
/** Optional subtitle text. Words are spread with equal timing at render time. */
|
|
105
132
|
subtitle?: string;
|
|
106
|
-
/** Multi-language API — per-language
|
|
133
|
+
/** Multi-language API — per-language translations keyed by language code. */
|
|
107
134
|
translations?: Record<string, VideoCaptionTranslation>;
|
|
108
135
|
};
|
|
109
136
|
export type AssetStartEvent = {
|
|
@@ -111,14 +138,10 @@ export type AssetStartEvent = {
|
|
|
111
138
|
timeMs: number;
|
|
112
139
|
name: string;
|
|
113
140
|
path: string;
|
|
141
|
+
fileHash?: string;
|
|
114
142
|
audio: number;
|
|
115
143
|
fullScreen: boolean;
|
|
116
144
|
};
|
|
117
|
-
export type AssetEndEvent = {
|
|
118
|
-
type: 'assetEnd';
|
|
119
|
-
timeMs: number;
|
|
120
|
-
name: string;
|
|
121
|
-
};
|
|
122
145
|
export type HideStartEvent = {
|
|
123
146
|
type: 'hideStart';
|
|
124
147
|
timeMs: number;
|
|
@@ -146,7 +169,22 @@ export type AutoZoomEndEvent = {
|
|
|
146
169
|
easing: string;
|
|
147
170
|
duration: number;
|
|
148
171
|
};
|
|
149
|
-
export type RecordingEvent = VideoStartEvent | InputEvent | CaptionStartEvent |
|
|
172
|
+
export type RecordingEvent = VideoStartEvent | InputEvent | CaptionStartEvent | CaptionEndEvent | VideoCaptionStartEvent | AssetStartEvent | HideStartEvent | HideEndEvent | AutoZoomStartEvent | AutoZoomEndEvent;
|
|
173
|
+
export type VoiceLanguageMeta = {
|
|
174
|
+
/** Voice key string: a built-in voice name, `elevenlabs:{voiceId}`, or `custom:{path}`. */
|
|
175
|
+
name: string;
|
|
176
|
+
seed?: number;
|
|
177
|
+
/** BCP-47 region code, e.g. 'en-US'. Overrides the base language for TTS synthesis. */
|
|
178
|
+
region?: string;
|
|
179
|
+
/** TTS model type — 'expressive' (Gemini) or 'consistent' (Chirp 3 HD). Defaults to 'consistent'. */
|
|
180
|
+
modelType?: string;
|
|
181
|
+
/** Speaking style prompt for Gemini TTS (only used with 'expressive' model). */
|
|
182
|
+
style?: string;
|
|
183
|
+
/** Accent description for Gemini TTS (only used with 'expressive' model). Omitted from the prompt when not set. */
|
|
184
|
+
accent?: string;
|
|
185
|
+
/** Pacing description for Gemini TTS (only used with 'expressive' model). */
|
|
186
|
+
pacing?: string;
|
|
187
|
+
};
|
|
150
188
|
export type RecordingMetadata = {
|
|
151
189
|
videoName: string;
|
|
152
190
|
/** Language codes present in multi-language captions, e.g. `['en', 'de']`. Omitted when no multi-language captions are used. */
|
|
@@ -154,7 +192,7 @@ export type RecordingMetadata = {
|
|
|
154
192
|
};
|
|
155
193
|
export type RecordingData = {
|
|
156
194
|
events: RecordingEvent[];
|
|
157
|
-
renderOptions
|
|
195
|
+
renderOptions: ResolvedRenderOptions;
|
|
158
196
|
recordOptions?: RecordOptions;
|
|
159
197
|
metadata?: RecordingMetadata;
|
|
160
198
|
};
|
|
@@ -167,15 +205,18 @@ export interface IEventRecorder {
|
|
|
167
205
|
*/
|
|
168
206
|
addInput(subType: InputEvent['subType'], elementRect: ElementRect | undefined, events: InputEvent['events']): void;
|
|
169
207
|
addCaptionStart(text: string, name: string, captionConfig?: CaptionConfig, translations?: Record<string, CaptionTranslation>): void;
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
addVideoCaptionStart(name: string, assetPath: string | undefined, subtitle?: string, translations?: Record<string, VideoCaptionTranslation>): void;
|
|
208
|
+
addCaptionEnd(reason?: 'auto' | 'waitEnd'): void;
|
|
209
|
+
addVideoCaptionStart(name: string, assetPath: string | undefined, assetHash: string | undefined, subtitle?: string, translations?: Record<string, VideoCaptionTranslation>): void;
|
|
173
210
|
addAssetStart(name: string, path: string, audio: number, fullScreen: boolean): void;
|
|
174
|
-
addAssetEnd(name: string): void;
|
|
175
211
|
addHideStart(): void;
|
|
176
212
|
addHideEnd(): void;
|
|
177
213
|
addAutoZoomStart(options?: AutoZoomOptions): void;
|
|
178
214
|
addAutoZoomEnd(options?: AutoZoomOptions): void;
|
|
215
|
+
/**
|
|
216
|
+
* Registers voice metadata seen during recording.
|
|
217
|
+
* Kept for API compatibility; voice settings are stored per caption event.
|
|
218
|
+
*/
|
|
219
|
+
registerVoiceForLang(lang: string, meta: VoiceLanguageMeta): void;
|
|
179
220
|
getEvents(): RecordingEvent[];
|
|
180
221
|
writeToFile(dir: string, videoName: string): Promise<void>;
|
|
181
222
|
}
|
|
@@ -185,14 +226,15 @@ export declare class EventRecorder implements IEventRecorder {
|
|
|
185
226
|
private readonly recordOptions;
|
|
186
227
|
private readonly renderOptions;
|
|
187
228
|
constructor(renderOptions?: RenderOptions, recordOptions?: RecordOptions);
|
|
229
|
+
registerVoiceForLang(_lang: string, _meta: VoiceLanguageMeta): void;
|
|
230
|
+
private clampUnitInterval;
|
|
231
|
+
private normalizeCentering;
|
|
188
232
|
start(): void;
|
|
189
233
|
addInput(subType: InputEvent['subType'], elementRect: ElementRect | undefined, events: InputEvent['events']): void;
|
|
190
234
|
addCaptionStart(text: string, name: string, captionConfig?: CaptionConfig, translations?: Record<string, CaptionTranslation>): void;
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
addVideoCaptionStart(name: string, assetPath: string | undefined, subtitle?: string, translations?: Record<string, VideoCaptionTranslation>): void;
|
|
235
|
+
addCaptionEnd(reason?: 'auto' | 'waitEnd'): void;
|
|
236
|
+
addVideoCaptionStart(name: string, assetPath: string | undefined, assetHash: string | undefined, subtitle?: string, translations?: Record<string, VideoCaptionTranslation>): void;
|
|
194
237
|
addAssetStart(name: string, path: string, audio: number, fullScreen: boolean): void;
|
|
195
|
-
addAssetEnd(name: string): void;
|
|
196
238
|
addHideStart(): void;
|
|
197
239
|
addHideEnd(): void;
|
|
198
240
|
addAutoZoomStart(options?: AutoZoomOptions): void;
|
package/dist/src/events.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,MAAM,EACN,aAAa,EACb,aAAa,
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"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"}
|
package/dist/src/events.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { writeFile } from 'fs/promises';
|
|
2
2
|
import { join } from 'path';
|
|
3
|
+
import { RENDER_OPTIONS_DEFAULTS } from './types.js';
|
|
3
4
|
import { DEFAULT_ZOOM_AMOUNT, DEFAULT_ZOOM_DURATION, DEFAULT_ZOOM_EASING, } from './defaults.js';
|
|
4
|
-
import { getDimensions } from './dimensions.js';
|
|
5
5
|
export class EventRecorder {
|
|
6
6
|
events = [];
|
|
7
7
|
startTime = null;
|
|
@@ -11,6 +11,25 @@ export class EventRecorder {
|
|
|
11
11
|
this.recordOptions = recordOptions;
|
|
12
12
|
this.renderOptions = renderOptions;
|
|
13
13
|
}
|
|
14
|
+
registerVoiceForLang(_lang, _meta) { }
|
|
15
|
+
clampUnitInterval(value) {
|
|
16
|
+
return Math.max(0, Math.min(1, value));
|
|
17
|
+
}
|
|
18
|
+
normalizeCentering(options) {
|
|
19
|
+
if (options?.centering === undefined)
|
|
20
|
+
return undefined;
|
|
21
|
+
const centering = {};
|
|
22
|
+
if (options.centering.cursor !== undefined) {
|
|
23
|
+
centering.cursor = this.clampUnitInterval(options.centering.cursor);
|
|
24
|
+
}
|
|
25
|
+
if (options.centering.input !== undefined) {
|
|
26
|
+
centering.input = this.clampUnitInterval(options.centering.input);
|
|
27
|
+
}
|
|
28
|
+
if (options.centering.click !== undefined) {
|
|
29
|
+
centering.click = this.clampUnitInterval(options.centering.click);
|
|
30
|
+
}
|
|
31
|
+
return centering;
|
|
32
|
+
}
|
|
14
33
|
start() {
|
|
15
34
|
this.startTime = Date.now();
|
|
16
35
|
this.events.push({ type: 'videoStart', timeMs: 0 });
|
|
@@ -63,19 +82,17 @@ export class EventRecorder {
|
|
|
63
82
|
...(translations !== undefined && { translations }),
|
|
64
83
|
});
|
|
65
84
|
}
|
|
66
|
-
|
|
85
|
+
addCaptionEnd(reason) {
|
|
67
86
|
if (this.startTime === null)
|
|
68
87
|
return;
|
|
69
88
|
const timeMs = Date.now() - this.startTime;
|
|
70
|
-
this.events.push({
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
const timeMs = Date.now() - this.startTime;
|
|
76
|
-
this.events.push({ type: 'captionEnd', timeMs });
|
|
89
|
+
this.events.push({
|
|
90
|
+
type: 'captionEnd',
|
|
91
|
+
timeMs,
|
|
92
|
+
...(reason !== undefined && { reason }),
|
|
93
|
+
});
|
|
77
94
|
}
|
|
78
|
-
addVideoCaptionStart(name, assetPath, subtitle, translations) {
|
|
95
|
+
addVideoCaptionStart(name, assetPath, assetHash, subtitle, translations) {
|
|
79
96
|
if (this.startTime === null)
|
|
80
97
|
return;
|
|
81
98
|
const timeMs = Date.now() - this.startTime;
|
|
@@ -83,6 +100,7 @@ export class EventRecorder {
|
|
|
83
100
|
type: 'videoCaptionStart',
|
|
84
101
|
timeMs,
|
|
85
102
|
name,
|
|
103
|
+
...(assetHash !== undefined && { assetHash }),
|
|
86
104
|
...(assetPath !== undefined && { assetPath }),
|
|
87
105
|
...(subtitle !== undefined && { subtitle }),
|
|
88
106
|
...(translations !== undefined && { translations }),
|
|
@@ -101,12 +119,6 @@ export class EventRecorder {
|
|
|
101
119
|
fullScreen,
|
|
102
120
|
});
|
|
103
121
|
}
|
|
104
|
-
addAssetEnd(name) {
|
|
105
|
-
if (this.startTime === null)
|
|
106
|
-
return;
|
|
107
|
-
const timeMs = Date.now() - this.startTime;
|
|
108
|
-
this.events.push({ type: 'assetEnd', timeMs, name });
|
|
109
|
-
}
|
|
110
122
|
addHideStart() {
|
|
111
123
|
if (this.startTime === null)
|
|
112
124
|
return;
|
|
@@ -123,6 +135,7 @@ export class EventRecorder {
|
|
|
123
135
|
if (this.startTime === null)
|
|
124
136
|
return;
|
|
125
137
|
const timeMs = Date.now() - this.startTime;
|
|
138
|
+
const centering = this.normalizeCentering(options);
|
|
126
139
|
for (const existing of this.events) {
|
|
127
140
|
if (existing.type !== 'input')
|
|
128
141
|
continue;
|
|
@@ -138,8 +151,8 @@ export class EventRecorder {
|
|
|
138
151
|
easing: options?.easing ?? DEFAULT_ZOOM_EASING,
|
|
139
152
|
duration: options?.duration ?? DEFAULT_ZOOM_DURATION,
|
|
140
153
|
amount: options?.amount ?? DEFAULT_ZOOM_AMOUNT,
|
|
141
|
-
...(
|
|
142
|
-
centering
|
|
154
|
+
...(centering !== undefined && {
|
|
155
|
+
centering,
|
|
143
156
|
}),
|
|
144
157
|
...(options?.allowZoomingOut !== undefined && {
|
|
145
158
|
allowZoomingOut: options.allowZoomingOut,
|
|
@@ -171,29 +184,37 @@ export class EventRecorder {
|
|
|
171
184
|
}
|
|
172
185
|
async writeToFile(dir, videoName) {
|
|
173
186
|
const filePath = join(dir, 'data.json');
|
|
174
|
-
//
|
|
175
|
-
|
|
176
|
-
|
|
187
|
+
// Resolve all defaults so data.json always contains a complete set of
|
|
188
|
+
// render options.
|
|
189
|
+
const ro = this.renderOptions;
|
|
190
|
+
const resolved = {
|
|
191
|
+
recording: {
|
|
192
|
+
size: ro?.recording?.size ?? RENDER_OPTIONS_DEFAULTS.recording.size,
|
|
193
|
+
roundness: ro?.recording?.roundness ??
|
|
194
|
+
RENDER_OPTIONS_DEFAULTS.recording.roundness,
|
|
195
|
+
shape: ro?.recording?.shape ?? RENDER_OPTIONS_DEFAULTS.recording.shape,
|
|
196
|
+
dropShadow: ro?.recording?.dropShadow ??
|
|
197
|
+
RENDER_OPTIONS_DEFAULTS.recording.dropShadow,
|
|
198
|
+
},
|
|
199
|
+
voiceOvers: {
|
|
200
|
+
size: ro?.voiceOvers?.size ?? RENDER_OPTIONS_DEFAULTS.voiceOvers.size,
|
|
201
|
+
roundness: ro?.voiceOvers?.roundness ??
|
|
202
|
+
RENDER_OPTIONS_DEFAULTS.voiceOvers.roundness,
|
|
203
|
+
shape: ro?.voiceOvers?.shape ?? RENDER_OPTIONS_DEFAULTS.voiceOvers.shape,
|
|
204
|
+
corner: ro?.voiceOvers?.corner ?? RENDER_OPTIONS_DEFAULTS.voiceOvers.corner,
|
|
205
|
+
padding: ro?.voiceOvers?.padding ?? RENDER_OPTIONS_DEFAULTS.voiceOvers.padding,
|
|
206
|
+
dropShadow: ro?.voiceOvers?.dropShadow ??
|
|
207
|
+
RENDER_OPTIONS_DEFAULTS.voiceOvers.dropShadow,
|
|
208
|
+
},
|
|
209
|
+
cursor: {
|
|
210
|
+
size: ro?.cursor?.size ?? RENDER_OPTIONS_DEFAULTS.cursor.size,
|
|
211
|
+
},
|
|
177
212
|
output: {
|
|
178
|
-
|
|
179
|
-
|
|
213
|
+
aspectRatio: ro?.output?.aspectRatio ?? RENDER_OPTIONS_DEFAULTS.output.aspectRatio,
|
|
214
|
+
quality: ro?.output?.quality ?? RENDER_OPTIONS_DEFAULTS.output.quality,
|
|
215
|
+
background: ro?.output?.background ?? RENDER_OPTIONS_DEFAULTS.output.background,
|
|
180
216
|
},
|
|
181
217
|
};
|
|
182
|
-
let serializedRenderOptions = renderOptionsWithDefaults;
|
|
183
|
-
// outputOpts is always defined because renderOptionsWithDefaults.output is always set above
|
|
184
|
-
const outputOpts = renderOptionsWithDefaults.output;
|
|
185
|
-
if (outputOpts.aspectRatio !== undefined &&
|
|
186
|
-
outputOpts.quality !== undefined) {
|
|
187
|
-
const { width, height } = getDimensions(outputOpts.aspectRatio, outputOpts.quality);
|
|
188
|
-
const { aspectRatio: _aspectRatio, quality: _quality, ...restOutput } = outputOpts;
|
|
189
|
-
serializedRenderOptions = {
|
|
190
|
-
...renderOptionsWithDefaults,
|
|
191
|
-
output: {
|
|
192
|
-
...restOutput,
|
|
193
|
-
resolution: `${width}x${height}`,
|
|
194
|
-
},
|
|
195
|
-
};
|
|
196
|
-
}
|
|
197
218
|
const languageSet = new Set();
|
|
198
219
|
for (const event of this.events) {
|
|
199
220
|
if (event.type === 'captionStart') {
|
|
@@ -203,7 +224,10 @@ export class EventRecorder {
|
|
|
203
224
|
}
|
|
204
225
|
}
|
|
205
226
|
else if (event.captionConfig?.voice !== undefined) {
|
|
206
|
-
const lang = event.captionConfig.voice.
|
|
227
|
+
const lang = event.captionConfig.voice.includes('.') &&
|
|
228
|
+
!event.captionConfig.voice.startsWith('elevenlabs:')
|
|
229
|
+
? event.captionConfig.voice.split('.')[0]
|
|
230
|
+
: undefined;
|
|
207
231
|
if (lang)
|
|
208
232
|
languageSet.add(lang);
|
|
209
233
|
}
|
|
@@ -212,7 +236,7 @@ export class EventRecorder {
|
|
|
212
236
|
const languages = languageSet.size > 0 ? [...languageSet].sort() : undefined;
|
|
213
237
|
const data = {
|
|
214
238
|
events: this.events,
|
|
215
|
-
renderOptions:
|
|
239
|
+
renderOptions: resolved,
|
|
216
240
|
...(this.recordOptions !== undefined && {
|
|
217
241
|
recordOptions: this.recordOptions,
|
|
218
242
|
}),
|
package/dist/src/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAS3B,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instrument.d.ts","sourceRoot":"","sources":["../../src/instrument.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,cAAc,EACd,OAAO,EACP,OAAO,EACP,YAAY,EACb,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EACV,cAAc,EAQf,MAAM,aAAa,CAAA;AAkBpB,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI,CAE5E;
|
|
1
|
+
{"version":3,"file":"instrument.d.ts","sourceRoot":"","sources":["../../src/instrument.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,cAAc,EACd,OAAO,EACP,OAAO,EACP,YAAY,EACb,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EACV,cAAc,EAQf,MAAM,aAAa,CAAA;AAkBpB,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI,CAE5E;AA2KD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;IACP,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,KAAK,CAAC,EAAE,qBAAqB,CAAA;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CACtB,GACL,OAAO,CAAC,IAAI,CAAC,CAoDf;AAghBD,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,YAAY,GACzB,YAAY,CAuBd;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CA4pB3D;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CA8K9D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAUzE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAe3D"}
|