mpv (media player)

mpv
Original author(s) MPlayer and mplayer2 developers
Developer(s) mpv developers
Stable release 0.16.0 (February 29, 2016 (2016-02-29)) [±]
Development status Active
Written in C, Objective-C, and Lua[1]
Operating system BSD, Linux, Mac OS and Microsoft Windows
Platform Cross-platform
Type Media player
License GPLv2+, parts under LGPLv2.1+, some optional components under GPLv3.[2]
Website mpv.io

mpv is a free and open-source media player based on MPlayer/mplayer2.

History

mpv was forked in 2012 from mplayer2 (which itself forked from MPlayer in 2010).[3] The motivation for the fork was to encourage developer activity by removing unmaintainable code and dropping support for very old systems. As a result, the project has seen a large influx of contributions.[4]

Since June 2015, the project's source code is in the process of being relicensed from GPLv2 to LGPLv2 to allow using mpv as a library in more applications.[5]

Notable changes from MPlayer

Support for video websites

Through youtube-dl, mpv natively supports playback of HD content on YouTube and over 300 other supported sites.[6] This allows mpv to be used as a replacement for site-specific video players based on Adobe Flash or HTML5.

High quality video output

mpv includes a customizable video output driver based on OpenGL which supports over 100 options for affecting playback quality, including the use of advanced upscaling filters, color management and customizable pixel shaders.[7]

Improved client API

In addition to functioning as a stand-alone media player, mpv is designed to be used directly by other applications through a library interface called libmpv. As a necessity, all of the code in mpv was made thread safe. An example of an application which uses libmpv is Plex.[8] This form of player control, along with a JSON IPC mechanism, replaces MPlayer's "slave mode".

Encoding subsystem

mpv includes a new encoding mode that can be used to save files being played under a different format. This essentially allows mpv to operate as a transcoder supporting a large number of video formats.[9] This feature serves as a direct replacement for the MEncoder component of MPlayer (which was a separate program rather than being built into the player).

Lua scripting

mpv's behavior and functionality is customizable through the use of small programs written in Lua, which can be used for tasks like cropping video, providing a GUI or automatically adjusting the display's refresh rate.[10]

See also

References

  1. "Github - mpv". Retrieved 2015-01-28.
  2. "mpv-player/mpv - Copyright". Retrieved 2015-3-21. Check date values in: |access-date= (help)
  3. "MPV, A New Fork Of MPlayer/MPlayer2". Retrieved 2015-01-28.
  4. "Contributors to mpv-player/mpv". Retrieved 2016-03-21.
  5. "Possible LGPL relicensing (#2033)". GPL-incompatible dependencies such as OpenSSL are a big issue for library users, even if the library user is ok with the GPL.
  6. "youtube-dl: Supported sites". Retrieved 2016-03-21.
  7. "mpv manual (opengl video output driver section)". Retrieved 2016-03-21.
  8. "Introducing the Plex Media Player". Retrieved 2015-03-21.
  9. "mpv manual (encoding section)". Retrieved 2016-03-21.
  10. "User Scripts - mpv-player/mpv Wiki". Retrieved 2016-03-21.

External links

This article is issued from Wikipedia - version of the Monday, April 25, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.