mirror of
https://github.com/openwrt/video.git
synced 2026-10-12 01:37:04 +04:00
master
The theme was laid out and drawn with a 1080p screen in mind, and on a
small panel with a device scale above one it falls short.
The backdrop holding the logo, links and nodes is now allocated in
device pixels and drawn through a canvas scaled by the device scale, so
the static scene is as sharp as what is drawn on top of it. At scale 1
the texture matrix is the identity and plutovg keeps its plain blit.
The pictograms get a floor of 12 logical pixels and shrink only as far
as needed for the row to fit the screen width. The row is reserved for
that size and the logo and graph are laid out in the height left above
it; where the floor does not apply, the layout is unchanged.
In boot-up mode the backlight that the DRM panel references through its
backlight phandle is taken to zero before the first frame and faded in
over 1.5 s to 80% of its maximum, as full brightness lifts the black
background to grey. A panel carrying the bootloader-initialized
property already shows the bootloader's picture and is left alone. On
a backlight whose scale is not perceptual the ramp follows the CIE 1931
lightness curve pwm_bl uses for its own tables.
Nothing reports how far a system upgrade has got, so the upgrade modes
keep the whole graph and turn a spinner around the router node instead
of dismantling the graph on a timer, which would read as progress.
The pictograms stand for services coming up, so only boot-up mode
shows them. A router shuts down within a few seconds, so shutdown and
reboot take the graph down one level every 250 ms, leaves first, and
only the logo is left after three steps.
paint() walked every packet and pulse once per damaged rectangle, and
every packet and pulse damaged a rectangle of its own, so the cost of a
frame grew with the square of the packet count and was spent in script
loops rather than in pixels. A splash connecting to a running bus
received one packet per existing ubus object, without the cap
flow_spawn() observes, and dropped far below its frame rate. Damage is
now collected into one box per frame, paint() draws each packet once
with colours built when the packet is created, pulse rings are filled
as annuli where a stroke cost considerably more, and FLOW_CAP, lowered
to 8 as a handful of packets conveys activity as well as two dozen,
applies to packets launched by ubus objects too.
Fixes: 6aca04f334 ("plymouth-theme-openwrt-demo: add a demo theme for the ucode engine")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Video packages feed
Description
This is an OpenWrt package feed containing video / graphics (as in 'higher than just curses') related libraries and applications which are not considered to be so called "core" packages.
Usage
To use these packages, add the following line to the feeds.conf in the OpenWrt buildroot:
src-git video https://github.com/openwrt/video.git
This feed should be included and enabled by default in the OpenWrt buildroot. To install all its package definitions, run:
./scripts/feeds update video
./scripts/feeds install -a -p video
The video packages should now appear in menuconfig in section 'Video'.
Languages
Makefile
52.9%
C
34.8%
UnrealScript
9.6%
Shell
2.7%