-
Notifications
You must be signed in to change notification settings - Fork 0
FAQ
NeXroll is a preroll manager for Plex, Jellyfin, and Emby that lets you organize, schedule, and automatically rotate preroll videos before your movies and shows.
Yes, NeXroll is completely free and open source.
Yes! Jellyfin requires the NeXroll Intros plugin (included with NeXroll). See the Jellyfin Setup guide for installation.
Yes! Emby requires the NeXroll Intros plugin and Cinema Mode enabled (Emby Premiere subscription required). See the Emby Setup guide for installation.
Docker is recommended for most users:
docker run -d --name nexroll \
-p 9393:9393 \
-e TZ=America/New_York \
-v ./nexroll-data:/data \
-v /path/to/prerolls:/data/prerolls \
jbrns/nexroll:latestSee the Installation Guide for all options.
Default port is 9393. Access at http://localhost:9393 or http://your-server-ip:9393.
- Open Plex Web and sign in
- Play any media item
- Click the "..." menu → "Get Info" → "View XML"
- Look for
X-Plex-Token=in the URL
Or use the Plex Token Finder.
- Open Jellyfin Dashboard
- Go to API Keys
- Click the + button and name it "NeXroll"
- Copy the generated key
- Open Emby Dashboard
- Go to Settings → API Keys
- Click New API Key and name it "NeXroll"
- Copy the generated key
No, authentication is optional. If you're running NeXroll on a private network, you can skip it. Enable it if NeXroll is accessible from the internet or you want user accounts.
-
API Keys are for programmatic/external access to the
/external/*API endpoints - User Accounts add a login page to the web interface with username/password
If you can't log in, you can reset authentication by deleting the auth-related tables from the database or using the admin account to reset passwords.
After 5 failed login attempts, accounts are locked for 15 minutes. Wait and try again, or use another admin account to unlock.
Supported formats: MP4, MKV, AVI, MOV, WMV, FLV, WebM, M4V, TS, MPG, MPEG. MP4 with H.264 is recommended for best compatibility.
- Recommended: 10-30 seconds
- Maximum practical: 1-2 minutes total
- Too long = viewers get frustrated waiting for their movie
Store them where both NeXroll and your media server (Plex/Jellyfin/Emby) can access them:
- Docker: Mount a shared volume
- Windows: Use a shared folder or local path both can reach
Yes! Prerolls can be assigned to multiple categories.
Yes! Go to Dashboard → Add Prerolls and use the Import Folder feature to register existing files without moving them.
Schedules automatically change your prerolls based on dates. For example:
- Christmas category active Dec 1-25
- Halloween category active Oct 1-31
- Default category via Filler for the rest of the year
| Mode | Behavior |
|---|---|
| Exclusive | Only this schedule's prerolls play (overrides everything) |
| Blend | Combines prerolls with other active schedules |
- Fallback Category: Per-schedule — activates when that specific schedule ends
- Filler Category: Global — activates when NO schedules are active at all
Check these common issues:
- Timezone: Is your timezone set correctly in Settings?
- Date range: Is today within the start/end dates?
- Enabled: Is the schedule toggled on?
- Path mappings: Can Plex access the preroll files?
Yes! Use Priority (1-10) to control which schedule wins, or enable Blend to combine them.
A sequence is a custom preroll playlist built from blocks:
- Random blocks: Pick X random prerolls from a category
- Fixed blocks: Specific prerolls in a specific order
- Go to Schedules → Sequence Builder
- Add blocks (random or fixed)
- Arrange the order
- Save with a name
See Sequences for details.
Yes! Export sequences as .nexseq files and share them. Others can import and use them.
NeX-Up is NeXroll's trailer integration feature. It connects to Radarr and Sonarr to discover upcoming movies/shows and automatically downloads their trailers from YouTube.
Yes, at least one of them. NeX-Up fetches upcoming release information from these services.
YouTube has aggressive bot detection. Try:
- Upload YouTube cookies — Export from an incognito browser session
- Try a different VPN IP — YouTube may have blocked your current IP
- Wait between downloads — Don't bulk-download too many at once
- See NeX-Up Troubleshooting for more details
It generates video prerolls that showcase your upcoming movies and TV shows with a visual poster grid or text list. It uses data from Radarr/Sonarr and generates the video using FFmpeg.
Enable Auto-regeneration in the Generator settings. When NeX-Up syncs with Radarr/Sonarr, the Coming Soon List automatically regenerates with updated content.
Path mappings translate file paths between NeXroll and Plex when they see files at different locations.
Example:
- NeXroll sees:
/data/prerolls/christmas.mp4 - Plex sees:
/mnt/media/prerolls/christmas.mp4 - Mapping:
/data/prerolls→/mnt/media/prerolls
You need them when:
- NeXroll runs in Docker and Plex runs on the host (or vice versa)
- NeXroll and Plex are on different machines
- Using NAS storage with different mount points
- Go to Settings → Path Mappings
- Enter a local path in the test area
- Click Run Test
- Verify the translated path matches what Plex expects
See Path Mappings for detailed examples.
- Check path mappings: Most common issue — verify paths translate correctly
- Apply to Plex: Did you click "Apply to Plex" after making changes?
- File access: Can Plex access the preroll files?
- Plex settings: Check Settings → Server → Extras in Plex
- Plugin installed?: Verify the NeXroll Intros plugin is in Dashboard → Plugins
- Plugin configured?: Check that the NeXroll URL is set in the plugin settings
- Active prerolls?: Ensure you have an active category, filler, or schedule
- See Jellyfin Setup — Troubleshooting for more
- Cinema Mode enabled?: Must be turned ON in Emby Settings → Cinema Mode
- "Include trailers from my movies in my library": This must be checked
- Refresh Custom Intros: Run this task from Scheduled Tasks → Library
- See Emby Setup — Troubleshooting for more
- Check which schedule is currently active
- Verify the category has the prerolls you expect
- Check if another schedule is overriding (Exclusive mode)
- Plex: Caches preroll settings — restart Plex or wait a few minutes. Click "Apply to Plex" to push changes immediately
- Jellyfin/Emby: The plugin fetches fresh preroll lists at each playback. For Emby, run "Refresh Custom Intros" after adding new prerolls
- Verify Plex URL is correct (include port, e.g.,
http://192.168.1.100:32400) - Check your Plex token is valid
- Ensure network connectivity between NeXroll and Plex
- If using HTTPS with self-signed cert, there may be SSL issues
- Check port 9393 isn't already in use
- Verify volume mount paths exist
- Check logs:
docker logs nexroll
See Troubleshooting for more solutions.
Currently, NeXroll connects to one server per media platform (one Plex, one Jellyfin, one Emby). You can have all three connected simultaneously.
Yes! You can connect all three at once. Plex prerolls are applied directly via the API. Jellyfin and Emby prerolls are served through the NeXroll Intros plugin installed on each server.
No dedicated app, but the web interface works on mobile browsers.
No. NeXroll only tells Plex/Jellyfin/Emby which preroll files to play. It never modifies your movies or preroll videos (except when using the Video Scaling feature to transcode prerolls you specifically select).
Yes! NeXroll has a full REST API with optional API key authentication. Generate keys in Settings → API Keys and use the /external/* endpoints. See API Documentation.
Docker:
docker pull jbrns/nexroll:latest
docker compose up -d --force-recreateWindows: Download and run the latest installer.
NeXroll can also check for updates automatically — configure in Settings.
- GitHub Issues — Bug reports and feature requests
- GitHub Discussions — Questions and community help
- Discord — Community chat
- Star the project on GitHub
- Support on Ko-fi
- Report bugs and suggest features
- Help improve documentation