Commit 83f280e
feat(console): Add customizable splash screens, background, and input control
Enhances the local console display experience with dynamic visual feedback and operational control, making the Raspberry Ninja device feel more like a dedicated appliance.
- **Installer (`installers/nvidia_jetson/setup_autostart.sh`):**
- Adds a prompt to configure the initial splash background color for the playback TTY (supporting named colors or hex values).
- Integrates `setterm` and ANSI escape sequences to apply the chosen background color and palette via `ExecStartPre` in the systemd service.
- Introduces an option to hide the cursor and lock local keyboard input on the playback TTY, dedicating the console solely to video output.
- Ensures keyboard input and cursor visibility are restored on service stop (`ExecStopPost`).
- **Core Application (`publish.py`):**
- Introduces `--splashscreen-idle` and `--splashscreen-connecting` command-line arguments to specify image paths for custom splash screens.
- Implements a dynamic GStreamer display chain using `gst-video-mixer` and appropriate display sinks (e.g., `autovideosink`, `nvdrmvideosink`) to render either image splash screens or the active video stream.
- Automatically switches between the "connecting" splash screen, "idle" splash screen, and live video stream based on WebRTC peer connection states when in viewer mode (`--view`).
- Includes robust GStreamer element management and cleanup for the display chain.
[auto-enhanced]1 parent 91820b4 commit 83f280e
2 files changed
Lines changed: 718 additions & 230 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
35 | 45 | | |
36 | 46 | | |
37 | 47 | | |
| |||
64 | 74 | | |
65 | 75 | | |
66 | 76 | | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
67 | 103 | | |
68 | 104 | | |
69 | 105 | | |
| |||
206 | 242 | | |
207 | 243 | | |
208 | 244 | | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
209 | 259 | | |
210 | 260 | | |
211 | 261 | | |
| |||
218 | 268 | | |
219 | 269 | | |
220 | 270 | | |
221 | | - | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
222 | 284 | | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
223 | 288 | | |
224 | 289 | | |
225 | 290 | | |
| |||
242 | 307 | | |
243 | 308 | | |
244 | 309 | | |
245 | | - | |
246 | | - | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
247 | 323 | | |
248 | 324 | | |
249 | 325 | | |
| |||
294 | 370 | | |
295 | 371 | | |
296 | 372 | | |
| 373 | + | |
| 374 | + | |
297 | 375 | | |
298 | 376 | | |
299 | 377 | | |
| |||
0 commit comments