PerPlex

Creating a media center in a home with just one TV is simple: All you need is one setup of something like OpenELEC for Raspberry Pi and you are done. However, if you have multiple TVs, a Rasp Pi would have to be prepared and configured for each one. If the individual media centers also have the same data pool, then you would need to set up a MySQL server [1] and configure some complex settings in Kodi.

As you can see, watching a film in one room and then finishing it in another would be difficult to do with a conventional media center like Kodi. Plex [2], on the other hand, administers media data for a central server, and Plex clients let you access the data, creating a seamless viewing experience throughout your house. The Plex media center comprises a server component and various clients, including smartphones and tablets, which means the server is set up just one time, and the clients then get all of their data via the network.

Overview

The Plex Media Server is a commercial media server for Linux, FreeBSD, Mac OS X, and Windows. It catalogs and prepares a home media collection that can consist of videos, music, podcasts, and photos. With the help of clients, the server also sends the media to devices like smart TVs, streaming boxes, and mobile devices. Plex makes clients available for numerous devices, play consoles, and platforms, including Android, iOS, Fire TV, and Windows Phone, as well as Xbox and PlayStation. Additionally, the Plex Home Theater offers Kodi-based media software [3] that runs on Linux, Mac OS X, and Windows. RasPlex [4] is based on OpenELEC and brings the Plex standard client to the Raspberry Pi, although conceptually, RasPlex operates very differently (Table 1).

Table 1

Comparing Plex and Kodi

Feature

Kodi

Plex Media Server

Database

Client (or with MySQL)

Server

Administration

Each client individually

Via the server web interface

Transcoding

On the Client

On the Server

Supported hardware

Numerous platforms

Even more platforms than Kodi

Add-ons

Almost incomprehensible

Limited

Add-on updates

From the community

Made available by Plex

Themes

Numerous

Restricted

Cost

Free software

Freemium (Plex Pass starting at $5/month)

Streaming

Complex

Possible

Plex operates according to the freemium model, which means that the baseline version of the product is free of charge, whereas the version of the product that includes proprietary features and extensions is not. (We'll talk more about pricing later in the article.) The standard Plex Home Theater client is different, in that it is released under the GPLv2, which is to be expected given that the software is mostly based on source code from XBMC – or Kodi as it is now known. Plex, together with the Plex server, transforms the media center into a well-rounded multimedia system [5].

With the help of extensions, the media center integrates content from such sources as YouTube, Vimeo, Hulu, Netflix, TED Talks, and CNN. Moreover, Plex Cloud Sync supports services like Dropbox, Box, Google Drive, Copy, and Bitcasa. Plex can also transcode media during run time to save bandwidth and adapt the media to the playback device in use. This means that Plex offers server-side media conversion during streaming. Thus, it is possible to stream videos over a thin connection and conserve bandwidth when streaming via a cellular network.

Plex

You will need a Plex Media Server as part of your network if you want to use RasPlex. Initial tests can be performed by installing the server components on a PC or notebook that has stored media files. A Debian notebook was used for purposes of writing this article. The official Plex website offers packages for Ubuntu, Fedora, and CentOS. The manufacturer also maintains packages for various network-attached storage systems from Synology and YNAB. Debian has no official packages or package sources, but the Debian community has stepped in to fill this gap [6].

In the Plex forum, you will find information about a suitable package source for Debian 7 or "Wheezy" that can be set up and the server program installed as shown in Listing 1. If you are already using Debian 8, than you should choose the DEB package that is intended for use with Ubuntu. It also works with the current version of Debian. However, here you will need to update manually.

After installing the Plex server, the server web front end should be started using the Plex Media Manager entry from the application menu or via the URL http://localhost:32400/web. Next, you should register the server in Plex web front end (Figure 1). In the next step, you should configure the service and set up the media library by opening the overview with a click on the house icon and selecting the plus icon found to the upper left of the side bar next to the cog icon. In the window that now opens (Figure 2), you should specify the type of media and select the source directory. As a rule, you can ignore the expanded settings. The documentation for this process is very detailed and helpful.

Figure 1: Once installed, you should configure the Plex media manager and the Plex server components in the web front end.

Figure 2: From the overview, you can add new sources by clicking the small plus icon next to the servers associated with your Plex account.

When scanning is complete, the Plex manager will display the indexed media in the overview. The web front end assumes the task of distinguishing between the Plex servers associated with your account.

If you select one of the titles listed, then information about the release year and actors appears, as is the case for cover images and other graphics related to the films that have been loaded from the Internet (Figure 3). The film can then be played directly in a browser like Chrome, Chromium, or Opera (Figure 4), because the process works over the network.

Figure 3: The content can be viewed and administered via the web front end. Any modifications apply to all connected clients.

Figure 4: A suitable browser like Chrome or Chromium makes it possible to stream films and other media directly to a computer without using a Plex client.