Initial import: clean snapshot from /home/olafn/infoscreen-dev (2025-10-25)
This commit is contained in:
40
TODO.md
Normal file
40
TODO.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# Project TODOs
|
||||
|
||||
This file tracks higher-level todos and design notes for the infoscreen client.
|
||||
|
||||
## Video playback (Raspberry Pi)
|
||||
|
||||
- Remove taskbar / window decorations in VLC window
|
||||
- Goal: show video truly fullscreen without window title bar or OS panel/taskbar overlapping.
|
||||
- Ideas / approaches:
|
||||
- Use libVLC options from python-vlc: `--no-video-deco`, `--no-video-title-show`, `--video-on-top`, and call `player.set_fullscreen(True)` after playback starts.
|
||||
- Run the Display Manager in a dedicated kiosk X session (no panel/desktop environment) or minimal window manager (openbox/matchbox) to avoid taskbar.
|
||||
- Use `wmctrl` as a fallback to force fullscreen/above: `wmctrl -r <title> -b add,fullscreen,above`.
|
||||
- Add an env var toggle, e.g. `VLC_KIOSK=1`, to enable these options from runtime.
|
||||
- Acceptance criteria:
|
||||
- Video occupies the full display area with no visible window controls or panels on top.
|
||||
- Behaviour toggleable via env var.
|
||||
|
||||
- Add possibility to adjust sound level by HDMI-CEC using Python
|
||||
- Goal: allow remote/automatic volume control over HDMI using CEC-capable hardware.
|
||||
- Ideas / approaches:
|
||||
- Use `libcec` bindings (e.g. `pycec` / `cec` packages) or call `cec-client` from shell to send volume commands to the TV/AVR.
|
||||
- Map event volume (0.0-1.0) to CEC volume commands (some devices support absolute volume or key presses like `VOLUME_UP`/`VOLUME_DOWN`).
|
||||
- Provide a small adapter module `src/hdmi_cec.py` that exposes `set_volume(level: float)` and `volume_step(up: bool)` used by `display_manager.py` when starting/stopping videos or on explicit volume events.
|
||||
- Acceptance criteria:
|
||||
- `set_volume()` issues appropriate CEC commands and returns success/failure.
|
||||
- Document any platform limitations (some TVs don't support absolute volume via CEC).
|
||||
|
||||
## Next-high-level items
|
||||
|
||||
- Add environment-controlled libVLC hw-accel toggle (`VLC_HW_ACCEL=1|0`) to `display_manager.py` so software decode can be forced when necessary.
|
||||
- Add automated tests for video start/stop lifecycle (mock python-vlc) to ensure resources are released on event end.
|
||||
|
||||
|
||||
## Notes
|
||||
|
||||
- Keep all changes backward-compatible: external `vlc` binary fallback should still work.
|
||||
- Document any new env vars in `README.md` and `.github/copilot-instructions.md` if added.
|
||||
|
||||
---
|
||||
Generated: 2025-10-25
|
||||
Reference in New Issue
Block a user