Repository navigation
Libre Panel v0.7.1
A transition for every occasion and twelve new ones; community themes shared in two clicks and
found for your panel; an update with one click; drivers for Thermalright, BeadaPanel, NZXT,
Thermaltake and Waveshare's own kind of display; a third less memory; sharper video that costs
the processor less, with black as black on the 12.3"; the round report with its lows and
temperatures; Japanese, Russian and Italian; and nothing loaded with administrator rights that
others can change.
Security
- With administrator rights, nothing that other programs can change is loaded or
started. Started with the highest rights (Start with Windows → With administrator
rights, or "Run as administrator"), Libre Panel used to load the plugin folders in your
profile and start the ffmpeg named in config.toml with those rights, and any program you
run may change both. Now it loads no plugin folders from there and starts ffmpeg,
PresentMon and the AI agents' programs only from Program Files, Windows or its own
folder (as root on Linux: folders that belong to root). Avideo.ffmpegelsewhere is
passed over for the program that came with Libre Panel, so smooth motion goes on;
Settings → Overview says what was held back. The sensor service reads the locked sensors
without these rights, so they are seldom needed. Thanks to an outside review for pointing
at it.
New
- Transitions for every occasion, and twelve more of them. Music, the PC at rest, the
screens in turn and the rest switched with a faint fade; now Settings → Panel →
Transitions gives each occasion its own (a game, music, rest, screens in turn, the
autopilot, the round report, a theme chosen), a default, a pace (fast, normal, leisurely)
and Random. Music starts with the entrance showing its cover and track and ends with
"Music ended"; the screens in turn follow a line of light. New: wipe, zoom, iris, blinds,
dissolve and slides to every side, and the elaborate line of light, glitch, tiles and
shatter. ▶ plays one on the panels, out to a card with its name and back. - Themes travel as files, and a community gallery. Export… on a theme's card (Start →
Themes) saves it as a .zip with the pictures and fonts it names and nothing of your folders;
Import… (or the file dropped on the gallery) adds a shared one to yours under a free name,
checked before anything is in place (size, kinds of files, paths, a theme.json that parses).
Share with everyone… (the globe on your theme's card) asks what it is called and shows,
saves the theme and opens GitHub's form, filled in: drag the file in and send. A workflow
checks it where it can write nothing, draws its picture with the demo readings and opens the
pull request. Community themes, a closed section of the gallery, lists the themes others
shared, those made for the panel chosen in the header first, marked Fits; one made for
another size asks before it installs, an installed one goes on the panel with one click, and
a download whose hash or size does not fit its entry is not installed. Nothing is asked of
the network until the section is opened. - Update with one click: where a newer version is out, Start's card and Settings → About
offer "Update to …". The download comes only from this repository's releases over HTTPS and
is checked against the published size and the release'sSHA256SUMS(every release from
now on carries that file). A second click installs it: the Windows setup runs silently after
the app has quit and the app starts again, a portable zip is unpacked beside the running
folder with the settings copied, an AppImage replaces itself in place; a Linux tarball only
lands in Downloads. A pre-release is offered pre-releases of its own line, a release only
releases. - More makers' screens, unverified: drivers for Thermalright's Trofeo Vision (the 6.86"
and the 9.16" and 11.3" bars), every BeadaPanel model (on the Panel-Link stream they all
take), the NZXT Krakens with an LCD (Z53/Z63/Z73, Kraken 2023, Elite RGB 2024, Plus 2024:
still pictures through the cooler's picture memory, never its pump or fans) and
Thermaltake's 6" LCD, each written from the published sources (credited in NOTICE.md) and
none yet seen on real hardware:autofinds them, Settings lists them, HARDWARE.md says
what each cannot do.autonow looks on past a maker's screen it does not drive. - Waveshare USB monitors (experimental). These displays draw their own themes from their
card and take only the values from the PC: the new service Waveshare USB monitor
(Settings → Game mode and more) sends them Libre Panel's readings, under the keys their
themes use, and sets the brightness (on the display's own scale, so as bright as with
Waveshare's program) and turns the picture where you ask. Nothing is written on the card, and
a port another program has open (wsmonitor's service) is left to it, with a word on the card.
On Linux, Set up sensors and panel access now also hands units with the ids1234:5678from
the touchscreen driver to the serial one. The protocol is the one Derik-for-real24 documented
in the wsmonitor project (#21), with thanks; the same frames from its client were seen
working on a display. - JONSBO ZC-360: each screen a panel of its own. One click in Settings → Panels makes the
three fan screens three panels of 640×180 and back: each shows a theme of its own, the
header's panel switch picks the one Live shows and Design edits, and the three keep one
brightness. Seven versions of Lumen for one screen; the three start with CPU, GPU and
memory, each a lit ring beside its history. (Asked for in #13; not yet seen on the
hardware.) - Japanese, Russian and Italian: the app, the panel texts and the tray in ten languages
now (Settings → Start and system → Language); the three new ones have not had a native
speaker's review yet, so corrections are welcome. - What Libre Panel costs your PC: a card Load on this PC in Live → Diagnose shows Libre
Panel's processor share and its private memory as the Task Manager counts them (the working
set beside it), per process (the app, each panel's process, each ffmpeg, PresentMon, the
window, the sensor service), the threads of the app by name, and how long
LibreHardwareMonitor's rounds take with their slowest parts. Copy as text for an issue; the
panel report carries it too. Nothing is measured while the card is not on screen. - Check the colours, in the app: Settings → Panel → Check the colours encodes a test
picture with every encoder that works on this PC, the colours made on the graphics card and
by the processor, decodes both and compares them patch by patch: identical, a level
shift (black and white) or a matrix shift (the colours). It says who converts and why,
with the day it was checked and Check again; Show it on the panel switches the test
picture between both ways with A and B in a corner, and Is black too light on the panel?
Compare shows any panel both ranges, A looks right or B looks right writing the one
that does. - An experiment for the video mode, for those who want to try what the panels take beyond
what was measured on the 9.2": a card Video experiment under Settings → Panel with the bit
rate's cap, the quality, x264's speed, the profile, the encoder (the graphics card's: at
little cost to the processor), the keyframe spacing and 60 frames a second, each written at
once, with Live's tiles and the log's lines about the video underneath, and a way back to the
measured settings. Run every step by itself tries them all in turn, judges each step and
shows a table to copy into an issue (Video). - Stills as JPEG on TURZX USB panels:
[device] still = "auto" | "png" | "jpeg"says how a
panel takes its pictures without smooth motion. JPEG goes to the layer under the PNG one and
is decoded in hardware; "auto" is JPEG on the 5.2", which shows nothing of a PNG, and PNG on
the others, where it is proven. Settings → Panel → Advanced has the switch (Stills). - A service can say what it is doing (
Service.summary()), shown on its card in the app.
Changes
- Sharper video that costs less: the quality is crf 20 (was 25), the profile is high on the
9.2" and the 12.3", and the encoder is the graphics card's where it was measured to show
(AMD'sh264_amf; x264 takes over where one fails). The bit rate's cap grows with the pixels
and the frame rate and then follows the panel, between 1 and 32 Mbit/s, so the 12.3" is no
longer held to the 9.2"'s 2 Mbit/s; a step of the cap starts the new stream beside the old
one without a gap, and the rate a panel got to is kept for the next run. The frames go into
ffmpeg as four bytes a pixel, about 8 ms less processor time per frame with a card's encoder
and 4 ms with x264 on the 12.3". - The graphics card converts the colours only where it is proven right: with
video.pixels = "auto"the processor converts until a colour check has compared the card's
conversion with it; the first time the video mode starts a card's encoder with a new ffmpeg
or graphics driver, that check runs by itself in the background (a few frames, a few seconds,
never on the panel). Where the colours come out identical the card takes over, else the
processor stays. Every stream says it is BT.601, in the range it has, whichever encoder made
it, so a player on the PC shows it as the panel does. - 30 frames a second by default: the video mode runs at 30 instead of 50. On the panels it
still looks smooth, and it asks far less of the PC: measured with two panels, 7.5 % of a
16-thread processor (1.2 cores) at 30 against 12.4 % (2.0 cores) at 50. Settings → Panel →
Frames per second says what 50 costs, for whoever wants it. A panel set to 50 by hand keeps
it. - A third less memory in many places. The renderer's caches are held by their size in
bytes instead of a count (the frames stay the same to the pixel), the app's pictures (the
themes' previews, the community's) go a minute after its window closes, and the window's
WebView2 runs with one renderer and no disk caches. Measured in the video mode: a panel's
own process 110 → 74 MB, Lumen on the 12.3" 139 → 110 MB, the main process after Start
showed every theme 246 → 164 MB and a minute after the window closed 151 MB. - The renderer keeps more between frames: the lit rings redraw only their tip, the
background is laid once for the whole panel, the fans of a list turn over the list, and list
patterns are matched only when the readings' keys change. The same pixels, 13 to 19 % less
processor time per frame on the game screen. - The round report tells more: the round's 1 % and 0.1 % lows, its average and longest
frame time (every frame of the round counted), the course of the CPU and GPU temperatures
over the round, and the PC's peak power where the power service runs, on all five report
screens;game.fps_avg,game.fps_1low,game.fps_01low,game.frametime_avgand
game.frametime_maxare readings for any screen. Live → History keeps a round's report as a
picture. - The screens use their room: the card of what plays sets the title, the artist and the
player a size larger; Almanac's clock is a tenth larger on the 9.2" and 12.3"; a clock
module with room to spare runs the seconds along a line under the date; the processes card
shows four rows; the ring instrument can show the course of the load under its rows (Arena
beside a companion on the 12.3"); Agents say for how long each one has been working, waiting
or idle; names no longer end in dots where a shorter word fits. - Panels: the TURZX 9.2", 8.8" and 12.3" are listed as verified on the hardware (#19,
#20). - The GitHub page and the website, shorter and quicker to grasp: a grid of the features
under the download buttons, "Several panels at once" as a section of its own, a compact tour
with the rest of each part folded away; the long theme descriptions live in THEMES.md.
Fixes
- Black looked grey on the 12.3" in video mode: its decoder shows the video as full range,
so the video of limited range looked washed out while the stills were right. It now gets full
range by itself ([device] video_range, each panel its own). - "Automatic" chose x264 where the graphics card's encoder works: the test of an encoder
fed it 64×64 pictures, which a card's encoder may refuse although it encodes the panel's
pictures fine. The test now runs the video mode's own command as the video mode feeds it. - A theme opens at once from the gallery: Edit opens Design in a fifth of a second instead
of waiting for every preview. - Japanese on the panel in Japanese glyphs on Linux: the panel's fallback fonts follow the
app's language. - The app's server reads every request to the end before it answers: on Windows an
answer could be thrown away (the renewal of the notify key).
Which file? Windows: …-setup.exe, Linux: ….AppImage; see Install.
