Problem
The hub can stream and screenshot a device's screen, but there's no way to capture a video of what happened during a session (e.g. to attach to a bug report, or keep as evidence for a manual test run). Right now the only workaround is screen-recording the browser tab locally.
Proposed feature
- A "Record" button in the live device view that starts/stops recording the device's screen stream (server-side, not a local browser capture) and produces a downloadable video file (mp4/webm) at the end.
- Reuse the existing per-platform stream pipeline:
- Android: MJPEG stream already available → encode frames server-side, or shell out to
adb shell screenrecord on the provider and pull the file.
- iOS: the ffmpeg pipeline already used for the experimental WebRTC stream → tee that into a video file.
- Store recordings alongside where screenshots currently go (or a dedicated
/recordings path), with a download link in the hub UI.
Implementation questions to discuss
- Encoding on the provider (closer to the device/stream) or on the hub (after the stream is proxied)? Provider seems right given the existing per-platform pipelines — wanted to confirm.
- Retention/cleanup policy — auto-delete recordings after N days?
- Size/duration cap to protect providers from runaway recordings?
I can pick this up — happy to open a PR once we've settled on the feature design and requirements
Problem
The hub can stream and screenshot a device's screen, but there's no way to capture a video of what happened during a session (e.g. to attach to a bug report, or keep as evidence for a manual test run). Right now the only workaround is screen-recording the browser tab locally.
Proposed feature
adb shell screenrecordon the provider and pull the file./recordingspath), with a download link in the hub UI.Implementation questions to discuss
I can pick this up — happy to open a PR once we've settled on the feature design and requirements