Chromium Player
xiboplayer-chromium
Lightweight kiosk player that uses the existing system Chromium browser.
Arquitectura
┌─────────────────────────────────────────┐
│ Chromium (kiosk mode) │
│ http://localhost:8766/player/pwa/ │
└───────────────┬─────────────────────────┘
│
┌───────────────▼─────────────────────────┐
│ Node.js Server (localhost:8766) │
│ ├─ /player/pwa/* → bundled PWA files │
│ ├─ /xmds-proxy → CMS SOAP API │
│ ├─ /rest-proxy → CMS REST API │
│ └─ /file-proxy → CMS media files │
└───────────────┬─────────────────────────┘
│
┌──────▼──────┐
│ Xibo │
└─────────────┘
Instal·lació
Fedora / RHEL
# Fedora 44
sudo dnf install \
https://dl.xiboplayer.org/rpm/fedora/43/noarch/xiboplayer-release-43-7.fc43.noarch.rpm
# Fedora 43
sudo dnf install \
https://dl.xiboplayer.org/rpm/fedora/43/noarch/xiboplayer-release-43-7.fc43.noarch.rpm
sudo dnf install xiboplayer-chromium
Ubuntu / Debian
curl -fsSLO https://dl.xiboplayer.org/deb/ubuntu/24.04/all/xiboplayer-release_1.0.2_all.deb
sudo apt install ./xiboplayer-release_1.0.2_all.deb
sudo apt update && sudo apt install xiboplayer-chromium
Configuració
A la primera execució, Chromium obre la pàgina de configuració de la PWA on introduïu l'URL del CMS, la clau i el nom de la pantalla. No cal editar la configuració manualment.
Configuració opcional a ~/.config/xiboplayer/chromium/config.json:
{
"kioskMode": true,
"fullscreen": true,
"hideMouseCursor": true,
"preventSleep": true,
"transport": "rest",
"browser": "chromium",
"extraBrowserFlags": "",
"controls": {
"keyboard": {
"debugOverlays": false,
"setupKey": false,
"playbackControl": false,
"videoControls": false
},
"mouse": {
"statusBarOnHover": false
}
}
}
Tots els controls estan desactivats per defecte. Establiu cada grup de control a true per activar-lo. Opcions exclusives de Chromium: browser, extraBrowserFlags.
| Clau | Descripció |
|---|---|
kioskMode | Executa en mode quiosc (per defecte: true) |
fullscreen | Inicia a pantalla completa (per defecte: true) |
hideMouseCursor | Amaga el cursor del ratolí (per defecte: true) |
preventSleep | Evita la suspensió de la pantalla (per defecte: true) |
transport | Transport del CMS: rest o soap |
browser | Binari del navegador: chromium (per defecte) o google-chrome-stable |
extraBrowserFlags | Flags addicionals de Chromium (separats per espais) |
controls | Grups de control — cada un s'ha d'establir explícitament a true |
Ús
# First run — opens setup page
xiboplayer
# Enable auto-start on login
systemctl --user enable --now xiboplayer-kiosk.service
# Check status / logs
systemctl --user status xiboplayer-kiosk.service
journalctl --user -u xiboplayer-kiosk.service -f
Dreceres de teclat
Totes les dreceres de teclat del reproductor i el hover del ratolí estan desactivats per defecte. Activeu-los a la secció controls de config.json.
| Tecla | Requereix | Acció |
|---|---|---|
T | controls.keyboard.debugOverlays: true | Commuta la superposició de la línia de temps |
D | controls.keyboard.debugOverlays: true | Commuta la superposició de descàrregues |
V | controls.keyboard.videoControls: true | Commuta els controls de vídeo |
→ / PageDown | controls.keyboard.playbackControl: true | Disseny següent |
← / PageUp | controls.keyboard.playbackControl: true | Disseny anterior |
Space | controls.keyboard.playbackControl: true | Pausa / reprèn |
R | controls.keyboard.playbackControl: true | Torna a la programació |
Feu clic a qualsevol disseny a la superposició de la línia de temps per saltar-hi directament (requereix controls.keyboard.debugOverlays: true).
Quan triar Chromium o Electron
| Chromium | Electron | |
|---|---|---|
| Navegador | Utilitza el Chromium del sistema | Inclou el seu propi |
| Mida del paquet | ~5 MB (noarch) | ~80 MB (x86_64) |
| Actualitzacions | Navegador actualitzat pel SO | Navegador lligat a la versió d'Electron |
| Dependències | Requereix Chromium instal·lat | Autònom |
| Ideal per a | Quioscs, dispositius encastats | Desplegaments generals |
Monitoratge de rendiment
Activa el Chrome DevTools Protocol per monitorar FPS, memoria i rendiment del renderitzador. No esta activat per defecte.
# Activar (port 9222)
systemctl --user set-environment XIBOPLAYER_DEBUG_PORT=9222
systemctl --user restart xiboplayer-chromium
# Consultar objectius
curl -s http://localhost:9222/json
# Desactivar
systemctl --user unset-environment XIBOPLAYER_DEBUG_PORT
systemctl --user restart xiboplayer-chromium
El port nomes escolta a 127.0.0.1. Utilitza Performance.getMetrics via la URL WebSocket per llegir FPS, mida del heap JS, nombre de nodes DOM i comptadors de layout.
