Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Linux X11/Xvfb: auto-sample cursor telemetry when ScreenCast METADATA is unavailable

Offen
#1,415 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

@Jasonsu22 arbeitet bereits daran.

Seit 28.10.2026.

  • #1 von @Jasonsu22 — offen
  • #1416 von @Jasonsu22 — offen

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
electron, linux, typescript

Rechercherichtung

Start by reading the existing openscreen record --cursor editable-overlay and openscreen export --auto-zoom paths, then inspect the fork implementation linked in the issue. Determine how X11 pointer samples can produce the v2 sidecar when ScreenCast METADATA is unavailable, and confirm the schema with maintainers; done means automatic sampling and sidecar output work on the described X11 setup.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Summary

On some Linux cloud-agent desktops (X11 + Xvfb), the xdg-desktop-portal ScreenCast interface reports empty source/cursor modes (AvailableSourceTypes=0 / no METADATA cursor mode). OpenScreen’s live editable-cursor capture therefore cannot write a .cursor.json sidecar even though the screen can still be recorded and the pointer can be sampled separately.

Agents can still:

  1. Record with ffmpeg x11grab (draw_mouse off) or OpenScreen’s non-METADATA path
  2. Sample pointer positions + clicks (Electron screen.getCursorScreenPoint(), xdotool / xev / xinput / libinput)
  3. Drive openscreen export --auto-zoom from a v2 <video>.mp4.cursor.json sidecar

We implemented an automatic fallback on our fork and would like to contribute it upstream.

Environment (repro host)
Item Value
Host Grok Bot cloud Linux box (grok-bot-vm-316768464)
Kernel Linux 6.12.94+ x86_64
OS Debian GNU/Linux 13 (trixie)
CPU / RAM 8 vCPU / ~15 GiB
Session X11 on DISPLAY=:2 (Xvfb 1920x1200x24 + Mutter/GNOME pieces)
Wayland No
Portal xdg-desktop-portal (+ gnome/gtk) present; ScreenCast reports no usable METADATA cursor mode (AvailableSourceTypes=0 / empty cursor modes in practice; CreateSession / editable capture fails)
GPU Mesa llvmpipe (software Vulkan/GL); OpenScreen export falls back to CPU
OpenScreen Linux AppImage 2.1.2
PipeWire Present (pipewire + wireplumber)
Pointer tools xdotool, xev available
Proposed behavior

When ScreenCast METADATA cursor capture is unavailable on X11:

  • Automatically sample the pointer during record
  • Write <recording>.mp4.cursor.json (v2: timeMs, normalized cx/cy, move|click|mouseup) next to the video
  • So openscreen export --auto-zoom needs no manual import

Optional CLI for external ffmpeg tracks: openscreen cursor import --csv … --clicks … --video …

Env knobs: OPENSCREEN_DISABLE_X11_CURSOR=1, OPENSCREEN_FORCE_X11_CURSOR=1

Workaround today (without the PR)

ffmpeg x11grab + CSV/clicks → converter → sidecar → openscreen export --auto-zoom

Ask
  1. Accept auto X11 sampling when METADATA is missing (primary path for agent hosts)
  2. Document the sidecar / optional CLI import path
  3. Confirm preferred schema fields beyond { version: 2, samples: [...] }

Happy to adjust the PR to maintainer preference.

Related
Vorherrschende Sprache
TypeScript
Sterne
3.7k
Forks
231
Ø Merge
16 Std. 38 Min.
Gemergte PRs (30 T.)
327

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus getopenscreen/openscreen

Alle Issues in getopenscreen/openscreen

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.