Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

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

オープン
#1,415 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@Jasonsu22 がすでに取り組んでいます。

2026年10月28日 から。

  • #1 @Jasonsu22 による — オープン
  • #1416 @Jasonsu22 による — オープン

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
electron, linux, typescript

調査の方向性

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.

索引モデルが issue の本文から書いたものです。

説明

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
主要言語
TypeScript
スター
3.7k
フォーク
231
平均マージ
16時間 38分
マージ済み PR(30日)
327

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

getopenscreen/openscreen のほかの issue

getopenscreen/openscreen の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。