Jump to content

All Activity

This stream auto-updates

  1. Past hour
  2. @ginjaninja - Can you retry with the latest web app (app.emby.media)? If it still fails, please restart Emby Server, reproduce again and post the server log. Thanks
  3. GrimReaper

    New Badge Overlay plugin

    I'd assume because "The Last House" has Release Date within 60 days (default) window. Edit: @Amanade3Could you pls add "Top Center" and "Bottom Center" positions for Badge (rounded pill) style selected, so it doesn't clash with/overlays with other treatments? Thanks.
  4. TV Show Status Release Notes Version 2.5.12.0 Changes 2.5.12.0 Web badge now survives Emby updates — no longer wiped from Emby's web files (requires Trakt Air Dates listener) Web badge no longer needs a root chown on Docker installs Badge script now deployed to plugins/webinject/ as well as dashboard-ui Removed diagnostic logging that wrote a log line for every image request Plugin version now reported correctly in the plugin list and server log Fixed unreachable-code warning in the image enhancer Notes Running without Trakt Air Dates is unchanged — dashboard-ui is still used, and may need re-applying after an Emby update "Prepend status to show description" edits real library metadata, and remains off by default EmbyTVShowStatus.dll
  5. Now I have downgraded to 4.8.10, which is equivalent to re-sweeping the library and modifying the metadata. See the attachment for the previous log. By the way, how to migrate the existing library and metadata when replacing the docker embyserver version? embyserver-63921649964.txt embyserver-63921800847.txt embyserver-63921695587.txt embyserver-63921694662.txt embyserver-63921669393.txt embyserver-63921669318.txt embyserver-63921665676.txt
  6. crusher11

    Sync logins between devices

    If the only way to log in to the Shield is to be physically present, and the only way to log in to the UGOOS is to be physically present, and they're in the same room, there's no change in security if I get the logins synced.
  7. Hi, I've been using Emby on a Apple TV 4K (2nd generation) for several months. Sporadically, I experience crashes when starting a stream whether it be from stored content or Live TV content. I cannot determine any pattern to when the app crash will happen - only that it happens at the start of the streaming session. The Emby app completely closes and then I can go in and start the same movie or live TV channel again and it will work fine. I'm currently running the latest Apple TV client and the latest server beta, but it also occurs on the latest stable server release. I'm happy to help get to the bottom of this. Below is the server log for a live TV stream as the client crashed. My guess is that it isn't very helpful other than indicating that the server lost communication with the client. Very much appreciate any help. 2026-08-09 11:05:24.638 Info PlaystateService-0HNNLNV55GBC2:00000006: http/1.1 POST http://host1:8096/emby/Sessions/Playing?X-Emby-Client=Emby for Apple TV&X-Emby-Device-Name=Apple TV&X-Emby-Device-Id=0B2265F9-14D4-4C09-ACD4-7E56068C0F71&X-Emby-Client-Version=2.0.7 (1)&X-Emby-Token=x_secret8_x&reqformat=json. Source Ip: host5, UserAgent: Emby/1 CFNetwork/3860.700.1 Darwin/25.6.0 2026-08-09 11:05:24.640 Info SessionManager: Playback start reported by app Emby for Apple TV 2.0.7 (1) on Apple TV playing ESPNU. Position: 0 ms. PlaySessionId: df77545def4943ef9a4926a21c7eb2d0. IsPaused: False 2026-08-09 11:05:24.641 Info PlaystateService-0HNNLNV55GBC2:00000006: http/1.1 Response 204 to host5. Time: 3ms. POST http://host1:8096/emby/Sessions/Playing?X-Emby-Client=Emby for Apple TV&X-Emby-Device-Name=Apple TV&X-Emby-Device-Id=0B2265F9-14D4-4C09-ACD4-7E56068C0F71&X-Emby-Client-Version=2.0.7 (1)&X-Emby-Token=x_secret8_x&reqformat=json. 2026-08-09 11:05:24.645 Info PlaystateService-0HNNLNV55GBCB:00000001: http/1.1 POST http://host1:8096/emby/Sessions/Playing/Progress?X-Emby-Client=Emby for Apple TV&X-Emby-Device-Name=Apple TV&X-Emby-Device-Id=0B2265F9-14D4-4C09-ACD4-7E56068C0F71&X-Emby-Client-Version=2.0.7 (1)&X-Emby-Token=x_secret8_x&reqformat=json. Source Ip: host5, UserAgent: Emby/1 CFNetwork/3860.700.1 Darwin/25.6.0 2026-08-09 11:05:24.646 Info PlaystateService-0HNNLNV55GBCB:00000001: http/1.1 Response 204 to host5. Time: 2ms. POST http://host1:8096/emby/Sessions/Playing/Progress?X-Emby-Client=Emby for Apple TV&X-Emby-Device-Name=Apple TV&X-Emby-Device-Id=0B2265F9-14D4-4C09-ACD4-7E56068C0F71&X-Emby-Client-Version=2.0.7 (1)&X-Emby-Token=x_secret8_x&reqformat=json. 2026-08-09 11:05:24.729 Info VideoService-0HNNLNV55GBC9:00000001: http/1.1 Response completed after client disconnected to host5. Time: 2887ms. GET http://host1:8096/emby/videos/80653399/original.mpegts?DeviceId=0B2265F9-14D4-4C09-ACD4-7E56068C0F71&MediaSourceId=xtream_live_1826_2c8d8ff1d88548899d8d2a234471098f&PlaySessionId=df77545def4943ef9a4926a21c7eb2d0&api_key=x_secret8_x&LiveStreamId=06044cf0e6f93cdae5f285c9ecfaaeb4_01413a525b3a9622ce6fdf19f7dde354_xtream_live_1826_2c8d8ff1d88548899d8d2a234471098f. Headers: Connection=close, Content-Type=video/mp2t, Date=Sun, 09 Aug 2026 15:05:23 GMT, Server=UPnP/1.0 DLNADOC/1.50, Transfer-Encoding=chunked, Cross-Origin-Resource-Policy=cross-origin, Private-Network-Access-Name=K Media, Private-Network-Access-Id=ae879ea1032e468a8c897afa1c2d5ae6 2026-08-09 11:06:24.645 Info SessionManager: PlaySession df77545def4943ef9a4926a21c7eb2d0 has gone idle while playing 2026-08-09 11:06:24.645 Info SessionManager: Playback stopped reported by app Emby for Apple TV 2.0.7 (1) on Apple TV playing ESPNU. Position: 58999 ms. PlaySessionId: df77545def4943ef9a4926a21c7eb2d0. IsPaused: False 2026-08-09 11:06:24.646 Info MediaSourceManager: Closing live stream 06044cf0e6f93cdae5f285c9ecfaaeb4_01413a525b3a9622ce6fdf19f7dde354_xtream_live_1826_2c8d8ff1d88548899d8d2a234471098f 2026-08-09 11:06:24.646 Info MediaSourceManager: Live stream 06044cf0e6f93cdae5f285c9ecfaaeb4_01413a525b3a9622ce6fdf19f7dde354_xtream_live_1826_2c8d8ff1d88548899d8d2a234471098f closed successfully 2026-08-09 11:06:24.646 Info SessionManager: Removed playSession df77545def4943ef9a4926a21c7eb2d0 from session f5a2397d7f582e0d2b96d2d4f96fcfc9
  8. Yes - when GenericUI was created there didn't even exist any possibility for a plugin to provide "per-user settings pages". Everything is designed in a way to make operations and UI single-instance, so that long-running operations - like a TV tuner channel scan - do not get lost when you accidentally close the dialog - or the browser tab. Or when another admin would log in, they are supposed to see those operations, so they won't get to perform any conflicting operations. To serve user settings, a number of changes are required. The AI suggestion is not suitable - each user's view needs to be backed by a separate server-side instance.
  9. Today
  10. @EncryptedCitymaking sure you saw this because it is very important. You clearly copied Yocker's plugin to start with but I'm not really sure why you took such offense when that was asked about because he said from the get-go that was fine. I don't think anyone was intending to target you. Carry on...
  11. visproduction

    The left bar on the dashboard page has been blank

    Also happens sometimes on latest beta.
  12. The left bar on the dashboard page has been blank for sometimes. emby 2.2.56 ipados 26.6
  13. I noticed separate users were seeing the same page instance on my user facing plugin even without using UIViewInfoChanged. Does any one have an example repository with good patterns for user pages with generic ui please? Hopefully not ai slop but claudes suggestion was below, basically suggested the need of "abandoning the GenericEdit/generic-UI-page framework for those [userfacing] pages" Summary: GenericUI command routing limitation (Emby 4.10.0.22) Component: Emby.Web.GenericUI (server-side C#) + modules/genericui/genericui.js (dashboard client) The limitation: Two separate but compounding issues make it impossible for a plugin using IPluginUIView/IPluginPageView (the GenericEdit-driven page framework) to reliably identify the calling user on a per-command basis. Server-side: no per-command user identity reaches the view. IPluginUIView.RunCommand(string itemId, string commandId, string data) — the interface every plugin page implements — has no user parameter at all. The host class that dispatches to it, PageControllerHostBase.RunCommand(requestItemId, requestCommandId, requestData, UserDto user), does receive the real authenticated caller from the API layer, but never assigns it to the view's User property before invoking RunCommand. IPluginUIView.User is only ever refreshed on GetUIView (initial page load / tab switch) — never on a postback. So inside RunCommand, a plugin has no reliable way to know who actually issued the command. Client-side: no way to route around it. genericui.js's runUiCommand() hardcodes every command from every plugin's generic UI page to a single fixed endpoint, POST UI/Command, regardless of which button or command fired. There is no per-button/per-command hook, override, or extension point for a plugin to direct specific actions to its own authenticated API endpoint instead. The command dispatch is entirely generic and not plugin-customizable at the transport level. Combined effect: Because UI/Command is a single shared endpoint whose server-side handler (PageControllerHostBase) also has one controller instance shared across all users of the server (keyed only by pageId, not by user/session — UIPagesManager.controllers is ConcurrentDictionary<string, PageControllerHostBase>), a plugin author has no supported way to build a multi-user-facing page (as opposed to a single shared admin config page) where each command execution can be confidently attributed to the correct calling user. The only available workaround is having the view privately track identity through data it stamps and asks the client to echo back on the next request — which works for legitimate use, but isn't something the SDK provides or guarantees, and could be spoofed by a malicious client since it isn't real authentication. Suggested fix for the SDK maintainers: either (a) have PageControllerHostBase.RunCommand assign CurrentUIView.User = user before calling RunCommand, using the already-available authenticated caller, or (b) add a UserDto parameter to IPluginUIView.RunCommand itself so plugin authors don't have to reconstruct identity by hand. https://github.com/ginjaninja1/recommendme Claude suggested a hot fix which seems to work outlined below applied to recommendme ## Emby generic UI pages are singleton, server-wide, per pageId — not per-user/session `UIPagesManager.controllers` is `ConcurrentDictionary<string, PageControllerHostBase>`, keyed ONLY by pageId. One instance of your `IPluginUIView` serves every user on the server. Anything stored directly on that view's `ContentData`/fields (search results, form state, etc.) is visible/overwritten by every other user — confirmed root cause of "user sees another user's search results" bugs. Worse: `IPluginUIView.User` (and `IUIView.User`) is ONLY refreshed by the framework on `GetUIView` (page load / tab switch) — `PageControllerHostBase.RunCommand` receives the real authenticated `UserDto` from Emby's API layer but never assigns it to `CurrentUIView.User` before invoking `RunCommand`. So `this.User` inside a page's `RunCommand` is not "who clicked this" — it's "whoever most recently loaded this page anywhere on the server." Do not use `this.User` for identity/authorization inside `RunCommand`. **Working fix pattern** (no adversarial/security requirement — trusted single-tenant use only): - Add an `OwnerUserId` field to the ContentData/view-model class, `[Browsable(false)]`. - Stamp it with `value.Id` in the view's `User` property setter (this only fires on `GetUIView`, which is trustworthy). - Because `PageControllerHostBase.RunCommand` deserializes the client's posted `data` string fresh on every call (this string is per-request, not shared), and the client always round-trips the full ContentData object back on postback, `OwnerUserId` survives the trip. - In `RunCommand`, deserialize `data` FIRST, pull `OwnerUserId` from it, and resolve the calling user (`IUserManager.GetUserById`) from that — never from `this.User`. - Keep per-user state in a `ConcurrentDictionary<string, TViewModel>` keyed by that same id, looked up in both the `User` setter and `RunCommand`. - `UserDto.Id` is a `string` (not Guid/long) — matches the `GetUserById(string)` overload. - No eviction is built into this pattern — the dictionary grows for the process lifetime. Fine for low user counts; needs `ISessionManager.SessionEnded`-driven cleanup at scale. My other plugin doesnt have the suggested fix, i mention it in case an example of a default case is needed. (to help explain what i might be dsoing wrong please) I asked the ai to consume the sdk and use the patterns in sdk demo to build the pages. Maybe there is a proper approach to user pages my ai isnt seeing? https://github.com/ginjaninja1/ManageComingSoon
  14. ebr

    Lost scroll position - EVERY CLIENT

    Hi. I cannot reproduce this in the Android TV app. Used a mixed content library with 109 top level items and folder view. Came right back to where I was. Also unable to reproduce in the web app so may need more specifics like an app log from when this happens.
  15. ebr

    Search Each Library Individually

    Hi. Not sure what new function you are looking for but the Android TV app has always scoped the search to the library you are in.
  16. sjsadowski

    External subtitles ignore preferences

    OK
  17. Geordie

    iOS 26.5 broke safari web playback

    Bit odd that Emby is allowing mp4+eac3 (& it plays correctly) but forces audio transcode with mkv+eac3! Let me know if you need any further logs or testing. I would be very happy to help get this fixed. I’m attaching a screenshot of what the iPhone is reporting as supported via Dolby’s test site. iOS is correctly reporting E-AC-3 support via the HTML canPlayType() API Thanks again
  18. Small update (v2.9.6.7) Added ability to use locally installed Tesseract instead of being Docker only. Tesseract can be found at: https://github.com/tesseract-ocr/tesseract
  19. WDPR4100

    CoverArt: Show us your custom Overlay Templates

    Log 4.10.0.23 embyserver.txt
  20. WDPR4100

    New Badge Overlay plugin

    Hello, I have installed the latest version of the plugin on Emby 4.10.0.23. However, after adding two movies, I noticed that one appears under “Recently Added”, while the other appears under “New Movies”. Could you please explain why the two movies are displayed in different categories even though they were added at the same time? Thank you in advance for your help.
  21. TecEmbryo

    Plugin: TheIntroDB – Emby Plugin

    Thanks for reply! Okay... and I just wanted to know if the problem is on my end. It also seems that the plugin only finds the files where the chapters are integrated. With files where Emby itself inserts the chapters – for example, every 5 minutes – it doesn't find any intros, etc.
  22. EmbyVision Credits – GPU Edition Resource Usage I wanted to post a quick look at what the GPU edition of EmbyVision Credits looks like while it is actually running. The video shows the Docker container logs while PaddleOCR is processing the video using CUDA. You can see the OCR service running and processing the frames instead of having to guess what it is doing in the background. For this test I was using an RTX 4060 8GB for the OCR container. The GPU usage was pretty reasonable. The OCR container was using roughly 400–600 MB of VRAM during the run, with GPU utilization going up and down depending on what it was processing. GPU temperature was around the low-to-mid 50°C range. The important part for me is that the OCR service isn't sitting there eating several GB of VRAM just to run. It leaves plenty of the GPU available for other things. The setup was: RTX 4060 8GB Ryzen 9 5950X 64GB RAM PaddleOCR CUDA GPU acceleration EmbyVision OCR running in Docker Emby running separately The OCR container is also separate from the Emby plugin itself. EmbyVision Credits sends the video/frame processing work to the OCR service, and the GPU container handles the actual OCR processing. This is the GPU edition I'm currently working on. I'm also working on making the GPU handling better for people who only have one NVIDIA GPU, since that's going to be a much more common setup than having a dedicated GPU sitting around just for OCR. I've included the video so you can see the actual logs and resource usage rather than just taking my word for it. Under the hood, EmbyVision uses several powerful detection engines working together rather than relying on a single detection method. Each engine has its own job, allowing the plugin to combine the results and make much more accurate credit detection decisions. GPU Edition users should have Emby Premiere if they want to use Emby's hardware-accelerated video processing. The EmbyVision OCR engine itself runs separately through the CUDA-enabled OCR service. EmbyVision Credits – OCR Edition EncryptedCity GitHub: https://github.com/encryptedcity/EmbyVision-Credits Latest released version 1.0.0.1 Video - GPU - logs.mp4 Video - EmbyVision OCR Credits V1.0.0.1.mp4
  23. MediaIntelNUC

    Wrexham FC on IPTV

    Howdy folks! I have become a Wrexham FC fan, much from the docuseries and I have been trying to find out where/wich channel in Europe/Sweden its available on IPTV, i have been mailing their HQ in Britain but no answers from them at all and im not that knowledgable when it comes to IP-TV in general and sportachannels in perticular. Sky Sports i read somewhere but havent been able to confirm. Any help would be much appreciated. N/
  24. Teredactle

    Search Each Library Individually

    Thanks, found it, but found nothing about changes in the search feature; did I miss something?
  25. edin92

    Philips smart tv - TitanOS - Emby app?

    Well, emby app just stoped working on my philips titan os tv. When i click on emby icon only emby logo is shown and nothing happens... and there is no cleare chace or uninstall option on app menu..
  26. 0.0.0.6 Bad bug fix, Emby changes ListItemEntryIds for every member when 1 member is added to the playlist. Plugin now handles.
  27. vincen

    Export/Import Music Playlist ?

    /data/userplaylists and then I created a directory same name as the playlist and then the m3u modified in it:
  1. Load more activity
×
×
  • Create New...