March 14Mar 14 A real-time media stream monitor and statistics tracker. View active streams from your Plex, Jellyfin and Emby servers directly from the dashboard, and track watch history through a dedicated statistics page.FeaturesDashboard Widget:Monitor active streams in real-time from the Unraid dashboardMulti-server support for up to 10 Plex, Jellyfin and Emby servers simultaneouslyStream details including user, device, IP address, playback progress, quality and codec infoCustom SVG media type icons for movies, series, music and photosCollapsible Synopsis section with thumbnail, description and dominant color tinting from cover artCollapsible technical details row per stream (codec, audio channels, container, subtitles, HW acceleration, transcode reasons)Transcode monitoring with visual indicators for Direct Play, Direct Stream and Transcode sessionsTranscode speed badge on active transcodesDocker CPU and RAM micro-bars per media server container with color thresholdsKill Session button to terminate active streams directly from the widgetBadge Color Theme picker with 12 color options for server name badgesConfigurable auto-refresh with adjustable polling intervalMobile responsive layoutPerformance friendly with micro-cache, backoff on errors and lightweight pollingDashboard Widget Screenshots:Statistics Tool Page (Beta):Dashboard tab with active streams overview, most watched titles, top users and recent historyLibraries tab with server overview, collapsible sections and recently added itemsUsers tab with per-user play counts, watch time, content breakdown and play type distributionHistory tab with full watch history, filters, search, pagination and CSV exportGraphs tab with daily streams, watch time distribution and play type breakdown chartsAlerts tab (placeholder for future alert rules)SQLite database with automatic schema migration systemConfigurable data retention and IP anonymizationStatistics Tool Screenshots:Supported Servers:Plex: Sessions, Kill Session, OAuth SetupJellyfin: Sessions, Kill SessionEmby: Sessions, Kill SessionInstallation:Via Community ApplicationsSearch for Stream Viewer and click Install.Configuration:After installation, go to Settings > Stream Viewer. The settings page is organized into three sections.Widget Settings:Auto Refresh: Enable or disable automatic stream refreshRefresh Interval: How often to poll for new stream data (5 to 300 seconds)Max Streams: Limit the number of streams shown (5, 10, 20, 50 or Unlimited)Show Device: Show or hide the client device nameShow IP: Show or hide the viewer IP addressBadge Color Theme: 12 color options for server name badges (Default, Blue, Lime, Green, Purple, Unraid, Red, Cyan, Pink, Gold, Teal, Mono)Show Progress: Show or hide the playback progress barShow Quality: Show or hide the stream quality badgeShow Transcode: Show or hide the transcode/direct play badgeShow Technical Details: Show or hide the collapsible details rowTechnical Details Default: Start expanded or collapsedShow Media Summary: Show or hide the Synopsis section with thumbnail and descriptionMedia Summary Default: Start expanded or collapsedShow Docker Stats: Show or hide CPU/RAM usage per containerAllow Kill Session: Enable the ability to terminate active streamsStatistics Settings:Statistics: Enable or disable the statistics tool pageDatabase Path: Directory where the SQLite database is stored (must be under /mnt/user/)Data Retention: How many days of watch history to keep (7 to 365 days)Anonymize IP: Mask the last octet of IP addresses before storingLibrary Sections: Default state (expanded or collapsed) for library server sectionsConnections Servers Setting:TLS Verification: Enable or disable SSL certificate checkingServers Cards:Server Type: Plex, Jellyfin or EmbyServer Name: Custom display name for each serverServer URL: The URL of the media serverAPI Token: Server access token (Plex uses OAuth, Jellyfin/Emby use API key)Enable/Disable: Toggle individual servers on or offPlex: Sign in with Plex via OAuth, no password stored. Auto-discovery finds your servers after sign-in. Add discovered servers with one click.Jellyfin: Enter server URL and API key. Test Connection to verify before adding.Emby: Enter server URL and API key. Test Connection to verify before adding.Settings Screenshots:Security:CSRF token (nonce) protection on all API requests with sliding expirationRate limiting (120 requests per minute per IP)Origin validation blocks cross-origin requestsInput validation and sanitization on all parametersPrepared statements for all SQLite queries (no string concatenation)LIKE wildcard escaping with explicit ESCAPE clauseDocker container ID hex-only validation before API useSecurity headers on all API responses (X-Frame-Options, X-Content-Type-Options, CSP, X-XSS-Protection, Referrer-Policy)Image proxy with URL allowlist, only proxies thumbnails from configured serversMIME type validation on proxied images with 5 MB size capPlex account token never stored, only per-server access tokens are savedDatabase file permissions restricted to owner only (0600)Cache directory created with restricted permissions (0700)Cache-Control: no-cache, must-revalidate headerAJAX-only enforcement (X-Requested-With check)HTTP method restriction (GET/POST only)URL validation on outbound HTTP requestsMD5 package integrity verification on installPHP 7 compatible (no PHP 8 only functions)File and Directory Permissions:Plugin directory: 755PHP files: 644Page files: 755Static assets (JS, CSS, PNG): 644Config directory: 755Cache directory: 700Nonce and database files: 600Requirements:Unraid 7.2.0 or laterGitHub Repository: https://github.com/Lazaros-Chalkidis/unraid-streamviewerGitHub Profile: https://github.com/Lazaros-ChalkidisTo suggest features, report bugs or share feedback, post here or open an issue on GitHub. Edited March 29Mar 29 by Lazaros Chalkidis Update Content and Photos for v.2026.03.30
March 14Mar 14 Hello @Lazaros Chalkidis ,thank's for this plugin. Working fine and easy to configure.Just a detail, I'm french and I noticed that a character (quote) is not shown correctly:
March 14Mar 14 Author Hi @Nonoss ,thanks for the kind words and for catching this!It's a double encoding bug apostrophes in titles and descriptions from Plex get HTML encoded twice, which is why you see ' instead of '. I've already identified the root cause and a fix is on the way.I'll push an update shortly.Thanks again for reporting it! Edited March 14Mar 14 by Lazaros Chalkidis
March 16Mar 16 Hello,I can`t get plugin configured. i try everything always i get this message.Thank you
March 16Mar 16 3 hours ago, Liviu said:Hello,I can`t get plugin configured. i try everything always i get this message.Thank youSame for me also.
March 17Mar 17 Author Hello @Liviu and @Xceed, thanks for the reports.I've identified the root cause.The Jellyfin "Add Server" and "Test Connection" functions were referencing a form element that doesn't exist in the UI, so the server type was always coming back empty hence the "Please select a server type" error regardless of what you entered.Emby wasn't affected because it handles the type differently.I have the fix ready and will push an update today. Stay tuned, sorry for the inconvenience!
March 17Mar 17 Author Stream Viewer v2026.03.17 is out!This update fixes the Jellyfin issues several of you reported adding/testing a Jellyfin server no longer fails with "Please select a server type", and quality info (1080p etc.) now shows correctly in the widget. Emby Test Connection freezing is also fixed.Other highlights:Parallel fetching: if you have multiple servers, sessions are now fetched simultaneously instead of one by one. Much faster.SSL toggle: new option under Settings → Dashboard Widget → Connection to verify TLS certificates. Off by default (self-signed certs are fine), connections to plex.tv always verify.Network hints: if your media server runs on a custom Docker network (ipvlan / macvlan) and the connection fails, the plugin now tells you exactly what to enable.Reset/Clear Form: the Reset button now works on all tabs.Full changelog in the first post. Update via Community Applications as usual.Thanks to everyone who reported the Jellyfin issue much appreciated!
March 17Mar 17 Author Hi, @Vaichi, thanks for reporting this, you're right, there's a bug in the Add Server function for Emby. I've identified it and the fix will be ready in the next update.Quick question since I don't have an Emby server to test with, does Test Connection work fine for you (shows Connected or an error), and it's only the Add Server button that does nothing? That would help me confirm the exact behavior!
March 17Mar 17 38 minutes ago, Lazaros Chalkidis said:Hi, @Vaichi,thanks for reporting this, you're right, there's a bug in the Add Server function for Emby.I've identified it and the fix will be ready in the next update.Quick question since I don't have an Emby server to test with, does Test Connection work fine for you (shows Connected or an error), and it's only the Add Server button that does nothing?That would help me confirm the exact behavior!Just tested and yes test does work, but not add.
March 17Mar 17 Author @ricostuart thanks for confirming! That matches exactly what I found. Fix is ready, expecting to push an update later today.
March 17Mar 17 Author Thanx @darkdiablo for the report and the video showing the issue in Emby. Other users have also pointed this out above. Within the next few hours, I will upload a new update that fixes the problem.
March 17Mar 17 9 hours ago, ricostuart said:Just tested and yes test does work, but not add.Just FYI - test only confirms conneection (looking for a 200 OK i guess?) but it dosent validate with API key :-)
March 18Mar 18 Author Stream Viewer v2026.03.18Big update for Emby and Jellyfin users:Emby Add Server: fixed, was silently failing. Thanks to the user who reported this!Emby Kill Session: fixed, was returning HTTP errors due to incorrect request formatAPI key validation: Test Connection now actually validates your API key for both Jellyfin and Emby, not just server reachabilityPlay type detection: Jellyfin/Emby now correctly shows Direct Play, Direct Stream, and Transcode. Was stuck on Direct Stream due to a wrong API field nameNew feature:Technical Details row. Each stream now has a collapsible "Details" section showing:Video/audio codecs and channels (e.g. H264, EAC3 5.1)Audio spatial format (Dolby Atmos)Container format (MKV, MP4)Active subtitlesHW acceleration type (NVENC, VAAPI, or SW)Transcode reasons and buffer %Also, transcode speed (e.g. 8.2x) is now visible inside the TRANSCODE badge for Plex streams, with live updates.All toggleable from Settings → Dashboard Widget → Display.Full changelog in the first post. Update via Community Applications as usual.
March 18Mar 18 Author Coming soon: Stream Viewer Statistics pageI'm working on a new Tool page for Stream Viewer that will track and display viewing statistics across all your Plex, Jellyfin, and Emby servers. Think Tautulli, but built natively into Unraid and supporting all three platforms.Here's an early look at the design:Planned features:Total plays, watch hours, unique users, peak concurrent streamsDaily/weekly/monthly stream charts per serverDirect Play vs Direct Stream vs Transcode ratioMost watched media and top usersFull watch history with search, filters, and paginationConfigurable data retentionCSV exportAll data is stored locally on your server (SQLite in appdata), nothing leaves your network.Expecting to ship this by end of March. Stay tuned!
March 18Mar 18 @Lazaros Chalkidis I know everyone loves dark themes these days (I do as well) but I can't read anything if i'm using the default 'White' theme (i'm seeing this more and more lately with plugins). Can we have it dynamically change with whatever the system theme is set too? Thanks in advance and great work on this
March 18Mar 18 Author Hello @Cino, thanks for pointing this out. Right now the plugin uses its own dark styled framework, so it does not automatically inherit the Unraid system theme.What I can do, however, is add proper light theme support in the CSS so it remains fully readable when the default White theme is used.Making my plugins compatible with the White GUI as well is already in my immediate plans, so this is something I’ll be working on soon.Thanks again for the feedback and for bringing it up.
March 18Mar 18 @Lazaros Chalkidis Anytime :) I did notice the same thing with your other plugin. Sounds good and glad its already on the roadmap (: Normally I enable dark themes on everything but with unRaid, the contrast isn't the greatest with the lighting I'm custom to.
March 18Mar 18 Hello @Lazaros Chalkidis ,I'm connecting to Plex and the options I have are the following: relay (plex.tv) remote (IP) remote (URL) localI have it set up to local and it works great, but after a server restart (or perhaps after plex container restart, due to backups running) it is defaulting to the remote URL option and loses connection.
March 19Mar 19 Author Hi @Bren8, thanks for reporting this.I found the bug. The auto rediscover logic that kicks in after a connection failure was sorting connections with remote URLs first instead of local. So after a container restart, it would overwrite your local URL with the remote one.Fix is ready and will be in the next update.
March 19Mar 19 Author v2026.03.19a is out!For those of you using the White - Gray - Azure Unraid theme, the widget and settings page now fully adapt to your theme. No more invisible text or washed out buttons. Also in this update:Smart rediscover: the plugin now retries 3 times before triggering URL rediscovery, and respects your URL type (local stays local, remote stays remote). No more switching from local to remote after a server restart.Jellyfin / Emby Docker auto discovery: if your local container changes IP, the plugin can now detect the new IP automatically via Docker Engine API.Thanks to the users who reported this!
March 21Mar 21 hi sir, cant see second of my stream, am I doing something wrong or?btw, thx for this plugin, its like dream come true, lovely, maybe more customization pls :) likeicon for plex? change colour of name of server? details opened without must click on it Edited March 21Mar 21 by Pepeb007xx
March 21Mar 21 Author Hello @Pepeb007xx,thanks for the kind words!Regarding the second stream not showing: I've tested with 2-3 simultaneous streams and it works fine with default settings.A few things to check:Make sure both streams are actually active at the same time in your Plex dashboardCheck Settings → Dashboard Widget → Display → "Max streams" is set to 10 (default)If the second stream is on a different Plex server, make sure that server is also added and enabled in SettingsIf it still doesn't work, can you open your Plex dashboard and confirm both streams show as active there at the same time?A screenshot would help.Regarding your feature requests:unfortunately I can't use the Plex, Jellyfin, or Emby logos as they are registered trademarks.That's why the plugin uses colored text badges instead. Changing the server name color and other settings is something I can consider for a future update. Edited March 21Mar 21 by Lazaros Chalkidis
March 21Mar 21 I mean seconds in time in dasboard of stream u can see 33:13/2:59:and cant see seconds like I need it push it more to left 😅
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.