Continuous screen-share session (start/stop) for Live voice assistance.
While active, periodically captures the screen and updates a text summary
via the local vision model. Never streams video off-device by default.
Classes
ScreenShareSession
Process-wide screen share controller (one session at a time).
Source code in src/diapason/desktop/screen_share.py
| def __init__(self) -> None:
self._lock = threading.RLock()
self._stop = threading.Event()
self._thread: Optional[threading.Thread] = None
self._state = ScreenShareState()
self._describe: Optional[DescribeFn] = None
|