You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 3e01210
Browse filesBrowse the repository at this point in the historyBrowse files
feat(browser-actions): add high-fidelity video capture (#2563)
* fix: cook wp-codebox
* fix(browser-actions): encode high-quality video with Playwright's bundled ffmpeg
The CI runner has no system ffmpeg, so video-quality=high failed with spawn ffmpeg ENOENT.
Resolve FFMPEG_PATH, then Playwright's bundled ffmpeg, then PATH (checked for executability).
Pipe JPEG frames as MJPEG over pipe:0 and encode VP8, the formats the minimal bundled build supports.
---------
Co-authored-by: homeboy-ci[bot] <266378653+homeboy-ci[bot]@users.noreply.github.com>
{name: "step-timeout",kind: "duration",code: "invalid-duration",message: "wordpress.browser-actions step-timeout must look like 500ms or 2s."},
168
168
{name: "timeout",kind: "duration",code: "invalid-duration",message: "wordpress.browser-actions timeout must look like 500ms or 2s."},
169
169
{name: "capture",kind: "comma-list-enum",values: browserActionCaptureValues,code: "invalid-capture",message: "wordpress.browser-actions capture does not support"},
170
+
{name: "video-quality",kind: "enum",values: ["default","high"],code: "invalid-video-quality",message: "wordpress.browser-actions video-quality must be default or high."},
170
171
{name: "viewport",kind: "viewport",code: "invalid-viewport",message: "wordpress.browser-actions viewport must use <width>x<height>, for example 390x844."},
171
172
{name: "device-scale-factor",kind: "number",minimum: 0.01,maximum: 100,code: "invalid-device-scale-factor",message: "wordpress.browser-actions device-scale-factor must be a finite positive number."},
172
173
{name: "is-mobile",kind: "boolean",code: "invalid-is-mobile",message: "wordpress.browser-actions is-mobile must be true or false."},
{name: "storage-state",description: "Optional Playwright storageState JSON, or @<path> to JSON, imported into a fresh browser context. Summaries redact cookie/localStorage values and report only schema/kind, counts, hosts, and diagnostics.",format: "JSON object or @path"},
1245
1246
{name: "transport-faults-json",description: "Optional canonical wp-codebox/transport-fault-model/v1 schedule applied only to HTTP(S) requests emitted by this isolated browser context. Server-side WordPress HTTP API requests are not intercepted.",format: "JSON object or @path"},
1246
1247
{name: "capture",description: "Comma-separated artifacts to capture after interactions.",format: "steps,console,errors,html,network,screenshot,dom-snapshot"},
1248
+
{name: "video-quality",description: "Video encoding mode when capture includes video. high captures device-pixel PNG frames and encodes them once at the end.",format: "default|high"},
1247
1249
{name: "max-dom-snapshot-elements",description: "Maximum visible elements captured in each screenshot sidecar DOM/style snapshot; defaults to 160.",format: "positive integer"},
thrownewError("video-quality=high requires ffmpeg: install Playwright's ffmpeg (npx playwright install ffmpeg), put ffmpeg on PATH, or set FFMPEG_PATH")
0 commit comments