HTML-to-screen compiler for Raspberry Pi and embedded Linux: scene markup -> drm_screen layer commands + RGBA bitmaps
Project description
drm_composer
Stateless scene-to-screen-command compiler. Parses a declarative HTML-like
scene, rasterizes elements to RGBA bitmaps, and emits commands for
drm_screen.
Python package: drm_composer.
drm_composer → drm_screen → drm-display
scene → cmds layers → frame →
+ RGBA bitmaps composited DRM/KMS
frame pixels
- Parses
screen/layer/box/text/img/raw-buffer - Resolves layout (x, y, w, h, z, visibility)
- Rasterizes to RGBA bitmaps
- Translates layers into
drm_screencommands
It holds no screen state, does not blend the final frame (that's
drm_screen's compositor), and does not know DRM/KMS (that's drm_display).
See outline.md for the design.
Install
pip install drm-composer # also pulls in drm-screen and drm-display
Installing drm-composer brings the whole rendering chain with it — one install
gets you HTML → screen.
Part of the drm_stack
Each package installs and runs on its own:
| Package | Role |
|---|---|
drm-composer |
screen-HTML → layer commands · this package |
drm-screen |
layers → composited frame |
drm-display |
frame → DRM/KMS pixels |
Full stack, bootstrap, and integration demo:
drm_stack.
License
GPL-3.0-or-later (see LICENSE). Use it freely under the GPL. For proprietary/closed use that cannot comply with the GPL, a separate commercial license is available — contact Carsten Bund carstenbund@gmail.com.
Dependencies are permissive (BSD/MIT) and installed separately; their notices are in THIRD_PARTY_LICENSES.md.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file drm_composer-0.1.0.tar.gz.
File metadata
- Download URL: drm_composer-0.1.0.tar.gz
- Upload date:
- Size: 19.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
849bfb6e381192398999ef540486cf1f77ce8ad8dad930ec50ca056474a6d00b
|
|
| MD5 |
9f9e766373b2469d773728bbc30414aa
|
|
| BLAKE2b-256 |
ec5eb5b80c94c290bb863821caf19448d02b358d47b364d76a65ba9cb3b6121c
|
File details
Details for the file drm_composer-0.1.0-py3-none-any.whl.
File metadata
- Download URL: drm_composer-0.1.0-py3-none-any.whl
- Upload date:
- Size: 20.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
452c4e57c21ac35138f1893ffe51c7be05e1d870312854d12137c3d6f4dd00fb
|
|
| MD5 |
64e729c9515cc07d995391b5d6ce2f5b
|
|
| BLAKE2b-256 |
c40bbaea23bea401f3887ae733beb85eaef12a92b94607ab8ae6b422e58443d4
|