Plex (software)

From Wikipedia, the free encyclopedia - View original article

Plexapp Logo.png
Developer(s)Plex, Inc.
Preview release0.9.5.4 / (server) / July 31, 2012; 51 days ago (2012-07-31)
Written inC++ based front end and proprietary back end/server (with Python Scripts as plugins)
Operating systemMac OS X v10.6 and above, Microsoft Windows XP, Vista, Windows 7, and Linux (media server only), iOS, Android, Windows Phone
Available inInternational (multiple languages)
TypeMedia player
LicenseGNU GPL and Closed Source (Proprietary Software)
  (Redirected from Plexapp)
Jump to: navigation, search
Plexapp Logo.png
Developer(s)Plex, Inc.
Preview release0.9.5.4 / (server) / July 31, 2012; 51 days ago (2012-07-31)
Written inC++ based front end and proprietary back end/server (with Python Scripts as plugins)
Operating systemMac OS X v10.6 and above, Microsoft Windows XP, Vista, Windows 7, and Linux (media server only), iOS, Android, Windows Phone
Available inInternational (multiple languages)
TypeMedia player
LicenseGNU GPL and Closed Source (Proprietary Software)

Plex (also known as "Plexapp", "Plex Media Center", or "PMC") is a partially open-source freeware media player software with a 10-foot user interface, with a matching closed source media server ("Plex Media Server") software, which is available for Intel-based Macintosh computers and computers running Microsoft Windows.[1] Its media player source code was initially forked from XBMC Media Center on May 21, 2008; this fork is used today as a front end media player for Plex's back end server component.[2][3][4]

Plex's front end media player, Plex Media Center, allows the user to manage and playback video, photos, music, and podcasts from a local or remote computer running Plex Media Server. In addition, the integrated Plex Online service provides the user with a growing list of community-driven plugins for online content including Hulu, Netflix, and CNN video.[4]

Plex began as a freeware hobby project but since 2010 has evolved into a commercial software business that is owned and developed by a single for-profit startup company, (Plex, Inc.). It is a high tech company based in the United States that is responsible for the development of the Plex front-end and back-ends, its client–server model, and all accompanying software under the "Plex" trademark, as well as the exclusive copyright of the closed source proprietary software parts, both when distributed on its own or when it comes as third-party software component in products by other manufacturers via a strategic partnership.[5][6][7]


Plex Media Center

Plex Media Center is the front-end media player component of Plex. Forked from XBMC in 2008, Plex Media Center allows users to browse and play local media, as well us utilize plugins and content which are hosted by a Plex Media Server.

Plex supports a wide range of multimedia formats and includes features such as playlists, audio visualizations, slideshows, weather forecasts reporting, and an expanding array of third-party plugins. As a media center, Plex can play most audio and video file formats, as well as display images from many sources, including CD/DVD-ROM drive, USB flash drives, the Internet, and local area network shares. DVD playback is not yet fully integrated and requires the use of helper applications like Apple's DVD Player.[8]

Plex is able to decode high-definition video up to 1080p.[4][9] With the appropriate hardware, Plex supports hardware decoding of H.264 video.[10]

Plex Media Center can be controlled remotely using an Apple or Harmony remote control, or via mobile apps.[8]

Plex Media Center is distributed under the GNU General Public License, with source code on GitHub. The founder of Plex, Elan Feingold, was part of the official XBMC development team for a short while, but tensions over direction and philosophy led him to leave the project and create the Plex fork.[2][3][4]

Audio and video playback

Plex can play files from CD and DVD media using the systems' DVD-ROM drive, from a local hard disk drive, or streaming over SMB/SAMBA/CIFS shares (Windows File-Sharing), ReplayTV DVRs, or UPnP (Universal Plug and Play) and DLNA shares and media servers. Plex is designed to take advantage of an Internet connection if available, using the IMDb to obtain thumbnails and reviews of movies, TheTVDB for TV show thumbnails and metadata, CDDB (via FreeDB) for audio CD track listings, and AMG for album cover images. Plex also includes the option to submit music usage statistics to It also has music and video playlists, slideshows, a karaoke function, and many audio visualizers and screensavers.

Like other XBMC-derived media players, Plex uses FFmpeg and other open source libraries to handle all common multimedia formats. It can decode these in software, using hardware video decoding where available and optionally passing-through AC3/DTS audio directly to an external audio-amplifier/receiver via S/PDIF.

Video playback in detail

An example of the TV Episode interface on Plex. Includes fan-art background

The Video Library, one of the Plex metadata databases, is a key feature of Plex. It allows for the automatic organization of your video content by information associated with the video files (movies and recorded TV Shows) themselves. The Library Mode view in Plex allows you to browse your video content by categories such as Genre, Title, Year, Actors and Directors.

Plex video-playback uses a video-player "core" which was originally developed in-house by the XBMC developers as a DVD-player for DVD-Video movies, including the support of DVD-menus. This video-player "core" supports all the FFmpeg codecs, and in addition the MPEG-2 video codec, and the audio codecs DTS and AC3.

Audio playback in detail

The Music Library, one of the Plex metadata databases, is another key feature of Plex. It allows for the automatic organization of your music collection by information stored in your music file ID meta tags, like title, artist, album, genre and popularity.

For audio playback, Plex includes the audio-player called PAPlayer (Psycho-Acoustic Audio Player) which was originally developed in-house by the XBMC developers. Some of this audio-player core's most notable features are on-the-fly audio frequency resampling, gapless playback, crossfading, ReplayGain, cue sheet and Ogg Chapter support. PAPlayer handles a very large variety of audio file-formats.

Digital picture/image display in detail

Plex handles all common digital picture/image formats with the options of panning/zooming and slideshow with "Ken Burns Effect", with the use of CxImage open source library code.

Plex Media Server

Plex Media Server is the back-end media server component of Plex, which is closed source as proprietary software. Introduced in 2009, Plex Media Server is used to host the content and plugins that are then streamed to Plex Media Center and Plex mobile app clients, either on the same machine, the same local area network, or over the Internet. In addition to the platforms supported by the front end, the server is also available for Linux. Plex Media Server can be configured to index content in any directory on the machine it's run on, as well as automatically acquiring iTunes, iPhoto, and Aperture content. Content may be transcoded by the server before it's streamed in order to reduce bandwidth requirements, or for compatibility with the device being streamed to.

Plex Media Server allows extensibility through the addition of plug-ins. Many of these plug-ins are available through the built-in Plex Online digital distribution service. This service can be used directly within Plex Media Center's GUI.[4][11][12]

Mobile software

Plex mobile apps exist for Windows Phone, iOS and Android. Compatible with devices running a minimum of Windows Phone 7.5, iOS 4.1 or Android 1.6, the apps allow remote controlling the Plex media center on a computer. They also feature browsing and streaming content directly to the device from a Plex server, using transcoding when necessary, as well as from various online content "channels". Both support MyPlex for remote access (over the Internet) to Plex servers. Unlike the desktop versions of Plex, these apps are not freeware.[13][14][15] These official apps for iOS, Android, and Windows Phone are all $4.99.

Third-party applications are also available on all three platforms for remote controlling Plex.

Programming and developing

Plex Media Center is primarily programmed in C++, and makes use of the SDL (Simple DirectMedia Layer) framework with an OpenGL renderer. Some of the third-party libraries that Plex depends on are written in the C, but are used with a C++ wrapper and loaded as shared libraries when used inside Plex.

Plugins for Plex Media Server

While Plex Media Server is close source, developers can make plugins for its proprietary plugin architecture using Python and XML. They can then submit these plugins to Plex Online.[11][12]

Many plug-ins for Plex Media Server leverage WebKit to display video from online sources using the same Flash and Silverlight players that the sources provide for web browsers.[4]

Skins, skinning, and the skinning-engine

Since Plex Media Center is based on XBMC Media Center it shares its flexible GUI toolkit and robust framework. With themes based on a standard XML base, theme-skinning and personal customization are very accessible. Users can create their own skin (or simply modify an existing skin) and share it with others via third-party public websites for XBMC skin trading.

Plex currently uses a modified version of the "MediaStream" skin as its default skin, a skin that was originally designed by Team Razorfish for XBMC.[16]



Plex media center software is licensed under the GNU General Public License (GPL) by the developers, meaning they allow anybody to redistribute the Plex media player source code under the conditions of that GPL license. Plex Media Server, the proprietary back-end server that all plugins for Plex are dependent on, is however closed source.


For most popular video and audio codecs, Plex includes native support through free and open source software libraries, such as LAME, faad, faac, libmpeg2, and libavcodec (from the FFmpeg project). Since these source code libraries are released under free and open source licenses they are legally redistributable. However, some of these compression methods algorithms, such as the popular MP3 format, are in many countries protected by software patents. Absent a license, this could possibly make it illegal in certain countries to distribute compiled versions of Plex which includes support for these formats.

Web Scraping

Plex can automatically fetch meta data information and artwork from sites including IMDb, TheMovieDB, TheTVDB, freedb and Allmusic using built-in web scraping functionality.


Plex also includes libdvdcss in order to support playback of DVD-Video movies encrypted using the CSS (Content Scramble System) encryption scheme. The distribution of executable versions of Plex containing this code could possibly fall afoul of the Digital Millennium Copyright Act in the U.S. and the EU Copyright Directive in European Union member countries which have incorporated it into national law, this has however, not been proven to be lawful in any court for an open source project before.

See also


  1. ^ Janko Roettgers (2011-10-31). "Plex gets Windows client, cloud service, media sharing". Gigaom. 
  2. ^ a b "XBMC for Mac forked for a separate project called PLEX (formarly known as "OSXBMC")". XBMC Community Forum. 2008-05-23. Retrieved 2009-03-15. 
  3. ^ a b Kevin Anderson (2009-10-07). "Thinking inside the box". Guardian. 
  4. ^ a b c d e f Nicholas Deleon (2010-01-15). "CrunchGear Interview: We talk to the lead developer of Plex Media Center for Mac OS X: It was doing Boxee-like stuff before Boxee was cool". CrunchGear. 
  5. ^ "Plex and the Future of Television". Plex Inc.. 2010-09-02. Retrieved 2010-10-21. 
  6. ^ "Plex to Enable Next Generation of Netcast Connected TV's". Plex Inc.. 2010-09-03. Retrieved 2010-10-21. 
  7. ^ Stevens, Tim (2010-09-03). "Plex announces partnership with LG, pledges to beat Boxee Box and Apple TV for free". Engadget. Retrieved 2010-10-21. 
  8. ^ a b Vähäkainu, Matti (2008-10-12). "Plex media player hands-on". Retrieved 2009-10-31. 
  9. ^ "Plex Review". 2009. Retrieved 2009-10-31. 
  10. ^ "Hardware Accelerated H.264 Decoding on Plex". Plex Blog. 2010-04-27. Retrieved 2010-04-27. 
  11. ^ a b Arya, Aayush (2009-06-29). "Plex media center software competes with Front Row". Macworld. Retrieved 2009-10-31. 
  12. ^ a b Weintraub, Seth (2009-02-23). "Plex Media Center blows us away with App Store". Retrieved 2009-11-19. [dead link]
  13. ^ Deleon, Nicholas (2010-08-30). "Exclusive Hands-On With Plex/Nine For Mac OS X & Plex App For iOS Devices". CrunchGear. Retrieved 2010-10-31. 
  14. ^ "Plex on iPad impressive, but not perfect". 2010-09-02. Retrieved 2010-10-31. 
  15. ^ "Plex for Android – Apps on Android Market". 
  16. ^ Team Razorfish. "MediaStream Skin by Team Razorfish". Team Razorfish. 

External links