-
Notifications
You must be signed in to change notification settings - Fork 1
Jellyfin Clients
ZASENJC edited this page May 23, 2026
·
1 revision
English | 简体中文
MediaTree implements 36 Jellyfin-compatible API endpoints, allowing you to use your favorite media clients directly.
| Client | Platform | Status |
|---|---|---|
| VidHub | iOS, macOS, Apple TV | ✓ Tested |
| Infuse | iOS, macOS, Apple TV | ✓ Tested |
| Kodi | All platforms | ✓ via Jellyfin plugin |
| VLC | All platforms | ✓ via UPnP/network |
| IINA | macOS | ✓ via M3U playlist |
| mpv | All platforms | ✓ via M3U playlist |
- Open the app → Add Server
- Choose "Jellyfin" as server type
- Server URL:
http://your-server-ip:27580 - Username: Your
AUTH_USERfrom.env - Password: Your
AUTH_PASSfrom.env
- Install the Jellyfin for Kodi addon
- Server host:
your-server-ip - Port:
27580 - Use HTTP (not HTTPS unless you've configured a reverse proxy)
Use the "External Player" button in MediaTree's web player, or access M3U playlists directly:
# With subtitles
http://your-server:27580/api/external-play/{movie_id}.m3u
-
System:
/System/Info,/System/Info/Public -
Auth:
/Users/AuthenticateByName -
Browsing:
/Items,/Items/{id},/Shows/{id}/Seasons -
Streaming:
/Videos/{id}/stream(DirectPlay) -
Sessions:
/Sessions/Playing,/Sessions/Playing/Progress
-
MediaBrowser Token— Standard Jellyfin token auth -
X-Emby-Token— Emby compatibility header -
Authorization: Bearer— OAuth-style bearer token -
api_keyquery parameter
All /emby/* paths are automatically rewritten to Jellyfin equivalents via EmbyPathRewriteMiddleware. No additional configuration needed.
MediaTree maps your folder structure to the Jellyfin Series → Season → Episode hierarchy:
/media/shows/
├── My Show/ ← Series
│ ├── S01/ ← Season 1
│ │ ├── E01.mkv ← Episode 1
│ │ └── E02.mkv ← Episode 2
│ └── S02/ ← Season 2
│ └── E01.mkv ← Episode 1
└── Movie Collection/ ← Movie collection
└── Movie.mkv ← Individual movie
- Transcoding: MediaTree serves DirectPlay by default. Clients must support the video codec natively.
- LiveTV: Not supported
- Collections: Folder-based only, no Jellyfin Collection support
- Users: Single user only (the admin account)
- Mount media volumes as
:ro(read-only) for best Docker performance - Use modern clients that support HEVC/AV1 codecs natively (avoids transcoding)
- For large libraries, consider increasing
SCRAPE_CONCURRENCY_PER_LIBRARYin.env