summaryrefslogtreecommitdiffstats
path: root/tools/lg
Commit message (Collapse)AuthorAge
* tools/lg: v2 demo-video composition scripts (split-screen + card builder)Arthur Hanson Rasmusson16 hours
| | | | | | | | | | | split_screen.sh composes two guest frame streams (KVMFR PPMs from frame_reader.py) into one hstacked mp4 with last-frame padding for unequal lengths; build_video.sh wraps a title card, the main segment and an end card (drawtext, detected font) into the deliverable mp4. Both verified end-to-end with synthetic PPM sequences (ffprobe: 1280x720 h264, padding pixel-exact). These are the capture-side pieces for the 1.0.0 video; the guest-side publishers are tools/guest-diag/xshm_pub.c (X screen) and the existing frame_producer; the host reader is tools/lg/frame_reader.py.
* r441 zero the guest-visible release words on the FIRST attempt too (not only ↵Arthur Hanson Rasmusson6 days
| | | | outcome retries): the r439 evidence shows a first attempt breaking its poll on a stale value (qmd_rel=0x5 from the previous launch's engine write, want=6) while the engine never fetched the deposit (sentinel intact) - the host then shipped a completion for a launch that did not run; zeroing forces the poll to wait for this launch's own engine write, so the timeout ladder and the software-authored completion are the honest path and the wedge classification can no longer be satisfied by a stale value
* tools: frame_reader picks the largest kvmfr shm (a stray empty 'kvmfr-*' ↵Arthur Hanson Rasmusson6 days
| | | | file existed); wedge_ab same-program vs second-launch discriminator
* tools/lg + docs: guest frame producer path (CUDA -> ivshmem -> host) and the ↵Arthur Hanson Rasmusson6 days
Looking Glass status - tools/cuda-ab/frame_producer.cu: renders an animated Julia frame on the guest GPU and publishes it into the ivshmem BAR (the kvmfr 128 MiB window) with a small header + RGBA payload. - tools/lg/frame_reader.py: host-side reader of /dev/shm/kvmfr-<uuid> that saves each published frame as a PPM (the transport half of the frame path). - tools/guest-diag/egl_frame.c: EGL probe (device/surfaceless/default platforms) - live result: eglQueryDevicesEXT sees the NVIDIA device and eglInitialize succeeds, but eglMakeCurrent fails EGL_BAD_ALLOC (0x3003), the same VASpace-allocation wall as Xorg's 'Failed to allocate VASpace object'. - docs/05-operations/06: the state, the blockers and the exact remaining pieces (guest GL VASpace allocation; LGMP session producer).