github jxlarrea/kiosk-satellite 2026.9.49

3 hours ago

What's new in Kiosk Satellite 2026.9.49

Screensaver widgets get their own scale and font controls, the Immich photo details get a text scaling slider, the hardware volume buttons can drive the followed media player and a new Screen orientation setting locks the panel the way it is mounted. On the fixes side, a false watchdog restart, a Go2RTC candidate that sank every WebRTC stream, silent MSE decode failures and a missing fleet banner are all sorted out.

New Features

  • Per-Widget Scale Slider: Every screensaver widget now has its own Scale slider from -50% to +50% in its editor, on the device and in the remote admin. The group's slider, now named Global widget scaling, still scales all widgets together for the screen and keeps their relative sizes.

  • Widget Font Family and Weight: The Widgets group has new Global font family and Global font weight rows with the Clock screensaver's choices, and every widget's editor has its own Font family and Font weight pickers. Default follows the global rows, so one widget can wear the clock's face while the rest stay in Rubik. Changes apply live to a running screensaver.

  • Immich Photo Details Text Scaling: The details panel drew its lines at fixed pixel sizes, so what read right on a tablet was too small on a wall display. A Text scaling slider under Metadata on the Immich Media screensaver page scales the text, icons and spacing from 50% to 200%, previews live and stays out of fleet sync by default like the other scale settings.

  • Volume Buttons Control the Followed Player: A kiosk that follows a Music Assistant, Home Assistant or Sonos player used to change its own volume when its buttons were pressed. The new Volume buttons control the player setting under Media Player routes the buttons to the followed player in 5% steps, either only while the Now Playing view is on screen or whenever the player is playing. The mute button mutes the player, a held button keeps stepping and the Now Playing view shows its volume slider for a moment on every press.

  • Screen Orientation: A new Screen orientation row under Screen & Audio forces the screen into Landscape, Portrait or either of them reversed, applied the moment it changes and from the first frame after a restart. Automatic leaves the choice to the system as before. The setting stays out of fleet sync by default, and the app now opts out of the Android 16 rule that ignored orientation requests on tablets.

Changes & Enhancements

  • Go2RTC H.265 Documentation: The camera guide no longer claims Go2RTC transcodes H.265 by itself. A Go2RTC with ffmpeg answers codecs not matched for an H.265 source when the app asks for H.264, and the Stream Codecs section now explains the ffmpeg: source with #video=h264 that does the job.

Bug Fixes

  • Frame Watchdog Restarting Too Early: The watchdog restarts the app after six probes find it in front with no WebView, twenty seconds after it asked for a rebuild. On a Lenovo tablet a stalled platform thread answered all six probes in two seconds and the app restarted right after the rebuild it had just requested. Strikes are now paced by the clock and one probe runs at a time, so a rebuild gets its full window.

  • Go2RTC Candidates With a Query String: Go2RTC copies the addresses under candidates: into the WebRTC answer without checking them, so an entry written like a TURN URL produced a candidate with an invalid port, the WebView refused the whole answer and every camera on that server fell back to MSE after three failed signaling attempts. The app now drops candidates the parser would refuse and writes a warning naming the line and the Go2RTC setting to fix.

  • MSE Streams the Device Cannot Decode: An H.265 stream reaching a device with Allow H.265 streams on and no H.265 decoder either stayed black with nothing in the log or looped between "playing" and "Reconnecting..." every two seconds. MSE now runs the same ten second decode watch as WebRTC, treats a media decode error as the codec's fault rather than the network's and only says "playing" once a frame has decoded. The warning names the codec and, when Allow H.265 streams let it through, says to turn it off.

  • Fleet Banner on Gestures and Cameras: A follower's remote admin lost the "leads these settings" banner on the Gestures and Cameras pages, which redraw themselves from scratch on every change. Both pages now put the banner back each time they redraw.

Don't miss a new kiosk-satellite release

NewReleases is sending notifications on new releases.