Add screenshot consent notice and improve video frame/audio handling
- add required dashboard screenshot consent/privacy notice to README - update copilot instructions to preserve consent notice in docs - document external VLC audio behavior (`--no-audio` for muted/0%, `--gain` otherwise) - capture real video frames for dashboard screenshots instead of black compositor output - make ffmpeg fallback frame capture playback-relative (loop-aware) to avoid repeated stale image
This commit is contained in:
13
README.md
13
README.md
@@ -220,6 +220,10 @@ Notes:
|
||||
- `volume` (float): 0.0–1.0 (mapped internally to VLC's 0–100 volume scale).
|
||||
- Effective playback volume is calculated as `event.video.volume * client_config.audio.video_volume_multiplier` and then mapped to VLC's 0–100 scale. Example: `volume: 0.8` with `audio.video_volume_multiplier: 0.5` results in 40% VLC volume.
|
||||
- If `python-vlc` is not installed, the Display Manager will fall back to launching the external `vlc` binary.
|
||||
- External VLC audio rendering behavior:
|
||||
- When `muted: true` (or effective volume resolves to 0), fallback starts VLC with `--no-audio`.
|
||||
- When not muted, fallback applies startup loudness with `--gain=<0.00-1.00>` derived from effective volume.
|
||||
- Runtime volume updates are best-effort in `python-vlc` mode; external VLC fallback is startup-parameter based.
|
||||
- HDMI-CEC remains the recommended mechanism for TV power control only. TV volume via CEC is not implemented because support is device-dependent and much less reliable than controlling VLC directly.
|
||||
- The client-wide multiplier is intended to be sent over the existing MQTT config topic `infoscreen/{client_id}/config` and is persisted locally in `src/config/client_settings.json` for the Display Manager.
|
||||
- Fullscreen behavior:
|
||||
@@ -720,6 +724,15 @@ CEC_POWER_OFF_WAIT=2
|
||||
|
||||
The system includes automatic screenshot capture for dashboard monitoring with support for both X11 and Wayland display servers.
|
||||
|
||||
### Consent Notice (Required)
|
||||
|
||||
By enabling dashboard screenshots, operators confirm they are authorized to capture and transmit the displayed content.
|
||||
|
||||
- Screenshots are sent over MQTT and can include personal data, sensitive documents, or classroom/office information shown on screen.
|
||||
- Obtain required user/owner consent before enabling screenshot monitoring in production.
|
||||
- Apply local policy and legal requirements (for example GDPR/DSGVO) for retention, access control, and disclosure.
|
||||
- This system captures image frames only; it does not record microphone audio.
|
||||
|
||||
### Architecture
|
||||
|
||||
**Two-process design:**
|
||||
|
||||
Reference in New Issue
Block a user