Main features
- DLNA and UPnP serving with renderer profiles for many TVs and consoles
- Transcoding and remuxing with FFmpeg, MEncoder, tsMuxeR, VLC and AviSynth
- Web interface with a browser player for devices without DLNA
- Subtitle handling, including automatic subtitle download
- Metadata and artwork from TMDB, Discogs and MusicBrainz
- YouTube channels, internet radio, podcasts and RSS feeds
- Playback of DVDs, disc images and ZIP or RAR archives
- Browsing available before the library scan has finished
- User accounts and groups with permissions for the web interface
- Bandwidth limits and automatic bitrate adjustment
What Universal Media Server does
Universal Media Server (UMS) shares video, music and images from a computer with other devices on the same network. It speaks DLNA and UPnP, the discovery and streaming protocols built into most smart TVs, game consoles, AV receivers and many phone apps, and it also serves media over HTTP or HTTPS to a web browser. The project began as a fork of PS3 Media Server, and its focus is still the same: getting a file to play on a device that may not support its format, with as little setup as possible.
That focus shows in how it handles formats. When a renderer can play a file as it is, UMS passes it through untouched. When it cannot, UMS remuxes or transcodes it on the fly with FFmpeg, MEncoder, tsMuxeR, VLC or AviSynth, adjusting subtitles, audio language and bitrate to the device and the network. Renderer profiles describe what each family of TVs and consoles can handle, so most devices work without manual tuning.
Device support and the web interface
The renderer profiles are the main reason to choose UMS over a general-purpose server. They cover a wide range of televisions, consoles and audio devices, and the project keeps refining them. Subtitles get particular attention: UMS can burn them into the video for devices that cannot display them, and it can download missing subtitles automatically.
For devices without DLNA, the web interface lists every media file with its metadata and plays it in the browser, or sends it to a connected renderer. Metadata and cover art come from TMDB, Discogs and MusicBrainz, and you can filter videos by actor, director, genre or year and music by artist, genre or year. UMS can also add YouTube channels, internet radio, podcasts and RSS feeds to the library, and it plays DVDs, disc images and files inside ZIP or RAR archives. Media can be browsed before the first scan finishes. The web interface has user accounts and groups with permissions. The official site says the program does not track what you do in it.
Self-hosting Universal Media Server
UMS is a desktop and server application written in Java. There are installers for Windows and macOS and tarballs for Linux, and the official site also lists Chocolatey, Homebrew, AppImage and Docker. Releases bundle a Java runtime, except the ARM builds, which need JRE 17 installed separately. On Linux the install notes ask for MediaInfo, VLC, MPlayer and MEncoder from the distribution’s packages, with dcraw optional for raw photos, and warn against running UMS as root. Settings live in the user’s configuration folder.
Builds go to Patreon supporters first, according to the download box on the official site; an older public build can always be downloaded, and the source and releases are on GitHub.
Hosted version
There is no hosted service. UMS runs on your own computer or server.
Limitations
UMS is built for the home network. It does not offer a relay or dedicated mobile and TV apps for watching away from home, so it does not replace the remote streaming of Plex; a full media server such as Jellyfin is the better fit for that. The quality of playback also depends on each renderer’s DLNA implementation, which varies between manufacturers. On Linux, the Java runtime on ARM and several external tools have to be installed by hand, and the newest builds reach the public after Patreon supporters.
Who it suits
UMS suits households that want to play files from a PC or NAS on a smart TV, console or receiver without installing an app on each device, and who have formats or subtitles those devices cannot handle natively. It also runs comfortably on Windows and macOS desktops, which makes it a practical choice when the media lives on a regular computer. For a lighter, Linux-first UPnP server without transcoding by default, see Gerbera. More options are in our media server guide.
License details
GPL-2.0. GPL version 2 only, as stated in the source file headers. New builds are released to Patreon supporters first; an older public build is always downloadable.
Technical details
Self-hosting needs
- Java 17 (bundled except on ARM)
- MediaInfo
- VLC
- MPlayer and MEncoder (Linux)
Built with
- Java
- React
GitHub topics
- angular
- dlna
- dlna-upnp
- ffmpeg
- java
- media-server
- react
- upnp
- video
Reviewed by the OpenSourcePicks editors from the project's repository and documentation. Something out of date? Tell us.