Babatom 28 Posted July 5 Posted July 5 (edited) I wanted to share a little side project I've been working on — a lightweight Docker container that turns your Radarr/Sonarr release calendar into a "Coming Soon" library right inside Emby. What it does: Syncs upcoming releases from Radarr & Sonarr automatically Generates a folder structure that you can add as a mixed-content library in Emby — complete with poster art (with badges), backdrop, .nfo metadata (release date, description, genres, rating, cast for movies), and a placeholder .mp4 Adds visual badges on posters: UPCOMING, a countdown ("5 Days"), and episode badge for shows (e.g. S03E07) Cleans up entries that are no longer upcoming Runs on a schedule (default every 6h) via Docker Built for Unraid, but works on any Docker host. Testet with Emby Beta v4.10.0.17 It's vibe coded — built with AI — so review the code before using it in production. Use at your own risk! GitHub: https://github.com/mrt187/release-poster-sync Edited July 5 by Babatom 3
ebr 16484 Posted Monday at 01:59 PM Posted Monday at 01:59 PM On 7/5/2026 at 6:14 AM, Babatom said: Syncs upcoming releases from Radarr & Sonarr automatically Hi. Why not get this info from the metadata providers instead?
Babatom 28 Posted Monday at 02:54 PM Author Posted Monday at 02:54 PM 52 minutes ago, ebr said: Why not get this info from the metadata providers instead? If I'm not mistaken, Emby's metadata providers only work with content that's already in your library. With Radarr/Sonarr, I can track titles I'm interested in — including things I don't own yet. This container simply reads that calendar and displays it as a "Coming Soon" shelf, so I know what's dropping soon without having to check Radarr/Sonarr separately.
Babatom 28 Posted Tuesday at 11:22 AM Author Posted Tuesday at 11:22 AM 21 hours ago, ebr said: Why not get this info from the metadata providers instead? — you were right, and I misunderstood at first. v2.0.0 now includes tmdbid/imdbid in the .nfo so Emby fetches cast, trailers, and descriptions itself via TheMovieDb. Thanks for the nudge! ## v2.0.0 - Emby now fetches cast, trailers, and descriptions automatically via TheMovieDb — no TMDB API key required - Removed yt-dlp trailer download and manual cast fetching - Added tmdbid/imdbid to .nfo for automatic Emby metadata matching - Daily sync schedule (00:01) instead of every 6 hours - XML injection protection for .nfo files - Cleanup now skipped if Radarr/Sonarr API call fails (prevents accidental wipe) GitHub: https://github.com/mrt187/release-poster-sync
sh0rty 760 Posted yesterday at 06:23 PM Posted yesterday at 06:23 PM This is a really nice addition, currently on Emby stable, I guess it gets real interesting in combination with Home Screen Companion when beta becomes stable. Thanks for this! 1
sh0rty 760 Posted yesterday at 06:50 PM Posted yesterday at 06:50 PM (edited) @Babatom How comes that Plugin finds more radarr/sonarr items than it sets up in posters directory? Edit: Enabled DEBUG, now I see, it's because some releases are in calendar but no digital release date is present atm. 2026-07-10T18:40:27.793804153Z [release-poster-sync] Führe initialen Sync aus... 2026-07-10T18:40:27.868121994Z [release-poster-sync] 2026-07-10 20:40:27,867 [INFO] Starte Sync (Zeitraum: heute + 1000 Tage, Ziel: /posters) 2026-07-10T18:40:27.890424108Z [release-poster-sync] 2026-07-10 20:40:27,890 [INFO] Radarr: 25 anstehende Filme gefunden. 2026-07-10T18:40:28.113922910Z [release-poster-sync] 2026-07-10 20:40:28,113 [INFO] Eintrag aktualisiert: Scary Movie (2026) 2026-07-10T18:40:28.294110496Z [release-poster-sync] 2026-07-10 20:40:28,293 [INFO] Eintrag aktualisiert: The Death of Robin Hood (2026) 2026-07-10T18:40:28.317387687Z [release-poster-sync] 2026-07-10 20:40:28,317 [INFO] Sonarr: 40 anstehende Episoden gefunden. 2026-07-10T18:40:28.357901591Z [release-poster-sync] 2026-07-10 20:40:28,357 [INFO] Eintrag aktualisiert: House of the Dragon (2022) 2026-07-10T18:40:28.412035904Z [release-poster-sync] 2026-07-10 20:40:28,411 [INFO] Eintrag aktualisiert: Criminal Minds (2005) 2026-07-10T18:40:28.460470072Z [release-poster-sync] 2026-07-10 20:40:28,460 [INFO] Eintrag aktualisiert: Stuart Fails to Save the Universe (2026) 2026-07-10T18:40:28.515429750Z [release-poster-sync] 2026-07-10 20:40:28,515 [INFO] Eintrag aktualisiert: MobLand (2025) 2026-07-10T18:40:28.588055477Z [release-poster-sync] 2026-07-10 20:40:28,587 [INFO] Eintrag aktualisiert: Law & Order Special Victims Unit (1999) 2026-07-10T18:40:28.644210710Z [release-poster-sync] 2026-07-10 20:40:28,644 [INFO] Eintrag aktualisiert: VisionQuest (2026) 2026-07-10T18:40:28.704611767Z [release-poster-sync] 2026-07-10 20:40:28,704 [INFO] Eintrag aktualisiert: Lupin (2021) 2026-07-10T18:40:28.772221131Z [release-poster-sync] 2026-07-10 20:40:28,771 [INFO] Eintrag aktualisiert: The Lord of the Rings The Rings of Power (2022) 2026-07-10T18:40:28.844725678Z [release-poster-sync] 2026-07-10 20:40:28,844 [INFO] Eintrag aktualisiert: The Rookie (2018) 2026-07-10T18:40:28.850359724Z [release-poster-sync] 2026-07-10 20:40:28,850 [INFO] Cleanup abgeschlossen, 0 Eintrag/Einträge entfernt. 2026-07-10T18:40:28.850375452Z [release-poster-sync] 2026-07-10 20:40:28,850 [INFO] Sync abgeschlossen. 2026-07-10T18:40:28.861881264Z [release-poster-sync] Starte Cron-Zeitplan: 1 0 * * * 2026-07-10T18:40:28.866003166Z [release-poster-sync] time="2026-07-10T20:40:28+02:00" level=info msg="read crontab: /app/crontab.rendered" Edited yesterday at 07:12 PM by sh0rty 1
sh0rty 760 Posted yesterday at 07:55 PM Posted yesterday at 07:55 PM (edited) Keep up the good work. Edited yesterday at 08:04 PM by sh0rty 1
Babatom 28 Posted 11 hours ago Author Posted 11 hours ago Different approach – native plugin! - A Docker container is no longer required. Each configured row becomes a real Emby library, created and kept in sync automatically under the plugin's data folder. For every upcoming movie and TV episode the plugin writes a proper library entry — a poster with the release date badged in, a backdrop for the hero image, overview and cast, and the actual trailer downloaded locally and surfaced through Emby's native Trailer button (so it plays inside Emby instead of kicking Apple TV/tvOS users out to YouTube). Because these are ordinary library items, they behave like any other media in EmbyHighlights Multiple configurable rows, each its own home-screen library (e.g. a "Digital", a "Physical" and an "In Cinemas" row) with its own release-date type and an "IN CINEMAS" badge where it applies. English & German for badges, dates, overview text and the settings page itself. No manual dependencies: yt-dlp is auto-downloaded on any Docker image, ffmpeg is optional. Runs on a daily schedule; a built-in log viewer means no SSH needed to see what happened. Requires Sonarr and/or Radarr. A free TMDB API key is optional (only needed for local trailer downloads). Beta – feel free to test it and report bugs or suggest improvements. *It's vibe coded — built with AI — so review the code before using it in production. Use at your own risk! ComingSoonPlugin.dll 2
sh0rty 760 Posted 4 hours ago Posted 4 hours ago (edited) 7 hours ago, Babatom said: Different approach – native plugin! - A Docker container is no longer required. Each configured row becomes a real Emby library, created and kept in sync automatically under the plugin's data folder. For every upcoming movie and TV episode the plugin writes a proper library entry — a poster with the release date badged in, a backdrop for the hero image, overview and cast, and the actual trailer downloaded locally and surfaced through Emby's native Trailer button (so it plays inside Emby instead of kicking Apple TV/tvOS users out to YouTube). Because these are ordinary library items, they behave like any other media in EmbyHighlights Multiple configurable rows, each its own home-screen library (e.g. a "Digital", a "Physical" and an "In Cinemas" row) with its own release-date type and an "IN CINEMAS" badge where it applies. English & German for badges, dates, overview text and the settings page itself. No manual dependencies: yt-dlp is auto-downloaded on any Docker image, ffmpeg is optional. Runs on a daily schedule; a built-in log viewer means no SSH needed to see what happened. Requires Sonarr and/or Radarr. A free TMDB API key is optional (only needed for local trailer downloads). Beta – feel free to test it and report bugs or suggest improvements. *It's vibe coded — built with AI — so review the code before using it in production. Use at your own risk! ComingSoonPlugin.dll 3.66 MB · 0 downloads DLL is build against Beta. Not usable with 4.9.5.0, if that was your intention. 2026-07-11 19:46:54.934 Error App: Error loading types from assembly *** Error Report *** Version: 4.9.5.0 Command line: C:\Users\blingbling\AppData\Roaming\Emby-Server\system\EmbyServer.dll -service Operating system: Microsoft Windows 10.0.26200 OS/Process: x64/x64 Framework: .NET 8.0.27 Runtime: C:/Users/blingbling/AppData/Roaming/Emby-Server/system/System.Private.CoreLib.dll Processor count: 4 Data path: C:\Users\blingbling\AppData\Roaming\Emby-Server\programdata Application path: C:\Users\blingbling\AppData\Roaming\Emby-Server\system System.Reflection.ReflectionTypeLoadException: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Could not load file or assembly 'MediaBrowser.Common, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module) at System.Reflection.RuntimeModule.GetTypes() at Emby.Server.Implementations.ApplicationHost.GetTypes(Tuple`2 assemblyInfo) System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Common, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Common, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' System.IO.FileNotFoundException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. File name: 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null' Source: System.Private.CoreLib TargetSite: System.RuntimeType[] GetTypes(System.Reflection.RuntimeModule) 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Common, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. 2026-07-11 19:46:54.934 Error App: LoaderException: Could not load file or assembly 'MediaBrowser.Model, Version=4.10.0.17, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden. Edited 4 hours ago by sh0rty
Babatom 28 Posted 4 hours ago Author Posted 4 hours ago (edited) 42 minutes ago, sh0rty said: DLL is build against Beta. Not usable with 4.9.5.0, if that was your intention No, that was a mistake; I’ve updated it if you’d like to test it Works with v4.9.5.0 Tested with v4.10.0.18 beta ComingSoonPlugin.dll Edited 3 hours ago by Babatom 1
sh0rty 760 Posted 42 minutes ago Posted 42 minutes ago (edited) 3 hours ago, Babatom said: No, that was a mistake; I’ve updated it if you’d like to test it ComingSoonPlugin.dll 3.66 MB · 0 downloads Runs nice . Few suggestions: - On my 1080p Screen, the badges are barely redable, could you make them a little bit larger like in the Docker version? - Can the forecast be extended to more than 120 days? Edited 42 minutes ago by sh0rty
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now