Electron Player
xiboplayer-electron
Self-contained desktop player for Linux with built-in Chromium browser and kiosk mode.
Característiques principals
- Mode quiosc a pantalla completa — sense decoració de finestra, cursor auto-ocult, sempre al davant
- Servidor HTTP integrat — serveix els fitxers PWA a localhost:8765
- Múltiples instàncies — executa diverses pantalles des d'una sola màquina amb
--instance=NOM - Reenviament de registres de la consola — els registres del renderitzador es reenvien a la sortida estàndard del proxy per facilitar la depuració
- Gestió de CORS — elimina i reinjecta les capçaleres CORS automàticament
- Integració amb systemd — inici automàtic a l'arrencada mitjançant servei d'usuari
- API REST primer — utilitza l'API REST del CMS com a protocol principal, amb SOAP com a alternativa
- Acceleració GPU — descodificació de vídeo VAAPI per a Intel, AMD i NVIDIA
Instal·lació
Fedora / RHEL
# Add the repository (one-time)
# 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
# Install
sudo dnf install xiboplayer-electron
Ubuntu / Debian
# Add the repository (one-time)
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
# Install
sudo apt update && sudo apt install xiboplayer-electron
Configuració
Fitxer de configuració: ~/.config/xiboplayer/electron/config.json
{
"cmsUrl": "https://your-cms.example.com",
"hardwareKey": "your-hardware-key",
"serverPort": 8765,
"kioskMode": true,
"fullscreen": true,
"hideMouseCursor": true,
"preventSleep": true,
"autoLaunch": false,
"transport": "rest",
"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. Opció exclusiva d'Electron: autoLaunch.
Arguments de línia d'ordres
xiboplayer-electron --dev # Development mode (DevTools enabled)
xiboplayer-electron --no-kiosk # Disable kiosk mode
xiboplayer-electron --port=8080 # Custom server port
xiboplayer-electron --cms-url=URL # Override CMS URL
xiboplayer-electron --cms-key=KEY # Override CMS key
xiboplayer-electron --display-name=NAME # Override display name
Inici automàtic a l'arrencada
# Enable
systemctl --user enable --now xiboplayer-electron.service
# Check status
systemctl --user status xiboplayer-electron.service
# View logs
journalctl --user -u xiboplayer-electron.service -f
Dreceres de teclat
Dreceres d'Electron (sempre disponibles):
| Tecla | Acció |
|---|---|
Ctrl+Shift+F12 | Mostra el menú de la safata del sistema |
Ctrl+Shift+R | Recarrega el reproductor |
Ctrl+Shift+I | Commuta DevTools (només en mode dev) |
Dreceres del reproductor (desactivades per defecte — activeu-les via controls a 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 | Salta al disseny següent |
← / PageUp | controls.keyboard.playbackControl: true | Torna al disseny anterior |
Space | controls.keyboard.playbackControl: true | Pausa / reprèn la reproducció |
R | controls.keyboard.playbackControl: true | Torna al disseny programat |
El hover del ratolí a la barra d'estat també requereix controls.mouse.statusBarOnHover: true.
Nivells de registre
Per defecte: WARNING (segur per a producció). Utilitzeu --dev per a registre DEBUG.
| Nivell | Cas d'ús |
|---|---|
DEBUG | Desplegament inicial — verificar connectivitat amb el CMS |
INFO | Operació normal |
WARNING | Per defecte en producció |
ERROR | Producció — només errors |
Els nivells de registre només afecten la verbositat dels registres. Les superposicions de depuració (línia de temps, descàrregues) es controlen exclusivament amb controls.keyboard.debugOverlays a config.json, no amb el nivell de registre.
Acceleració de maquinari GPU
Instal·leu el controlador VAAPI adequat per a la vostra GPU:
| GPU | Paquet (Fedora) |
|---|---|
| Intel | libva-intel-media-driver |
| AMD | mesa-va-drivers |
| NVIDIA | libva-nvidia-driver (RPM Fusion) |
Verifiqueu amb vainfo.
Resolució de problemes
El reproductor no s'inicia
# Check if port is available
ss -tlnp | grep 8765
# Try different port
xiboplayer-electron --port=8080
# Check logs
journalctl --user -u xiboplayer-electron.service -n 50
No es pot sortir del mode quiosc
Premeu Ctrl+Shift+F12 per mostrar el menú de la safata del sistema, després seleccioneu "Exit Player". O des del terminal: pkill -f xiboplayer-electron.
Monitoratge de rendiment
Activa el Chrome DevTools Protocol per monitorar FPS, memoria i rendiment del renderitzador. No esta activat per defecte.
# Activar (port 9223)
systemctl --user set-environment XIBOPLAYER_DEBUG_PORT=9223
systemctl --user restart xiboplayer-electron
# Consultar objectius
curl -s http://localhost:9223/json
# Desactivar
systemctl --user unset-environment XIBOPLAYER_DEBUG_PORT
systemctl --user restart xiboplayer-electron
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.
