Media server

A media server is a computer appliance or an application software that stores digital media (video, audio or images) and makes it available over a network.

Media servers range from servers that provide video on demand to smaller personal computers or NAS (Network Attached Storage) for the home.

Purpose
By definition, a media server is a device that simply stores and shares media. This definition is vague, and can allow several different devices to be called media servers. It may be a NAS drive, a home theater PC running Windows XP Media Center Edition, MediaPortal or MythTV, or a commercial web server that hosts media for a large web site. In a home setting, a media server acts as an aggregator of information: video, audio, photos, books, etc. These different types of media (whether they originated on DVD, CD, digital camera, or in physical form) are stored on the media server's hard drive. Access to these is then available from a central location. It may also be used to run special applications that allow the user(s) to access the media from a remote location via the internet.

Hardware
The only requirement for a media server is a method of storing media and a network connection with enough bandwidth to allow access to that media. Depending on the uses and applications that it runs, a media server may require large amounts of RAM, or a powerful multicore CPU. A RAID array may be used to create a large amount of storage, though it is generally not necessary in a home media server to use a RAID array that gives a performance increase because current home network transfer speeds are slower than that of most current hard drives. However, a RAID configuration may be used to prevent loss of the media files due to disk failure as well.

Many media servers also have the ability to capture media. This is done with specialized hardware such as TV tuner cards. Analog TV tuner cards can capture video from analog broadcast TV and output from cable/satellite set top boxes. This analog video then needs to be encoded in digital format to be stored on the media server. This encoding can be done with software running on the Media server computer or by hardware on the TV tuner card. Digital TV tuner cards take input from broadcast digital TV. In North America and in South Korea, the ATSC standard is used. In most of the rest of the world, DVB-T is the accepted standard. Since these transmissions are already digital, they do not need to be encoded.

Home theater PC packages with server capabilities
A variety of packages are available to run a home theater or media center.
 * GB-PVR
 * Jellyfin
 * Kodi Entertainment Center (formerly XBMC)
 * LinuxMCE
 * MediaPortal
 * MythTV
 * Orb
 * Plex
 * TVersity Media Server

Media servers in performance environments
The growing use of motion graphics in environments such as theatre, dance, corporate events and concerts has led to the development of media servers designed specifically for live events. These machines are often high-spec PC computers with high-speed hard drive technologies such as RAID arrays or solid-state drives, multiple GPUs and optionally a video capture board to allow mixing live video with recorded content and real-time effects. The supplied software is usually a suite of tools starting with the main VJ environment where the user defines a number of set layers, each switchable between live, stored media or real-time generated, and layering modes between them. All of these introduce parameters of which manipulation of values in these parameters over time become the performance. High-end media server systems include support for DMX512-A, MIDI, Art-Net or similar control protocols to allow multiple remote sources like sliders, buttons and knobs on a control console to drive these parameters, as well as sending commands from the media server to for instance control RGB or moving lighting and other stage effects.

A major feature of high-end media servers is projection mapping, where multiple video projectors can project images onto irregularly shaped and positioned set pieces and even track their motion. This is usually done beforehand by the designer mapping their full set out in 3D in a pre-visualization tool.

Media servers in telephony
In the world of telephony, a media server is the computing component that processes the audio or video streams associated with telephone calls or connections. Conference services are a particular example of how media servers can be used, as a special 'engine' is needed to mix audio streams together so that conference participants can hear all of the other participants. Conferencing servers may also need other specialized functions like "loudest talker" detection, or transcoding of audio streams, and also interpreting DTMF tones used to navigate menus. For video processing, it may be needed to change video streams, for example transcode from one video codec to another or rescale a picture from one size to another. These media processing functions are the core responsibility of a media server.

With telephony networks moving towards VoIP technology, and using Session Initiation Protocol (SIP), the idea of media servers has started to gain some traction. Typically, an application (the 'application server') has the controlling logic, and controls a remote media server (or multiple servers) over an IP connection, possibly using SIP. Protocols such as Netann, MSCML and MSML have been created for this way of working, and a new protocol, MediaCTRL, is under development at the IETF.

The IP Multimedia Subsystem (IMS), the blueprint for next generation networks, defines a component called the MRF (Media Resource Function), which is a kind of media server. In the case of IMS, the 'controlling logic' is provided by the MRFC (MRF controller), which, along with layers above, constitutes an 'application server'. Although the MRF has been associated largely with the legacy telecom H.248 protocol (see Gateway Control Protocol), it is claimed that SIP-based protocols like MediaCTRL will ultimately prevail.

Media servers in cinema
Media servers in cinema allow users to download and watch high quality content by utilizing a movie player and plugging into a display or AV system. Kaleidescape offers a movie server to store and cache content that enhances player performance.