DeskDot Open in browser GitHub
Media Server running on a 32×32 LED panel
32×32 · Livereal render
MediaLive

Media Server

Latest Plex or Jellyfin additions as posters, plus who's streaming now.

At a glance

OutputLiveRendered by the engine and streamed over Bluetooth as its data changes (about 5–9 frames a second).
Settings8every one editable live in the studio, or by an agent with update_app_settings
Sourcemediaserver.pysrc/deskdot/apps/mediaserver.py

Settings

Settings
SettingTypeDefaultOptions / range
Connection
ServerserverchoicePlex
PlexJellyfin
Hosthoste.g. 192.168.1.20 (blank = not set up)textemptyup to 120 characters
Portport0 = default (Plex 32400, Jellyfin 8096)whole number00 – 65535
Token / API keytokenPlex: X-Plex-Token. Jellyfin: Dashboard → API Keys. Sent as a header, never logged.textemptyup to 200 characters
Jellyfin useruserBlank = the first usertextemptyup to 60 characters
Display
LayoutlayoutchoicePoster
PosterShelfNow streaming
Seconds per itemrotatewhole number83 – 60
Show now-streaming countsessionsPolls sessions every minuteon/offOnon / off

Try it

render a frame to PNG (no panel needed)
$ uv run deskdot preview mediaserver --settings '{"server":"jellyfin"}' --out mediaserver.png
show it on your panel (engine running)
$ curl -X POST http://127.0.0.1:8765/api/apps/mediaserver/activate

Or ask your agent: “Show Media Server on my panel”. It calls show_app with "mediaserver". New here? Set up DeskDot first.

More media apps