mpv for Debian ============== This is the Debian package produced by the mpv-build scripts. It contains a statically linked libass and ffmpeg (vs. libav contained in Debian) from upstream. It is not an official part of the Debian distribution. Instructions for building this package can be found in the README.rst file in the mpv-build directory, or equivalently at [1]. [1] https://github.com/mpv-player/mpv. Differences with the official Debian package ============================================ Debian testing/unstable already has a separate official package for mpv, which closely tracks the current upstream releases. Ubuntu trusty also has an outdated version of mpv (0.3.4). The biggest difference between this package and the official Debian/Ubuntu ones is that it statically links against the latest upstream version of ffmpeg and libass. Debian and therefore also Ubuntu use the libav fork of ffmpeg, and therefore that's what the official packages link against. However, as described at [2], ffmpeg is preferred for building mpv. The version of libass in Debian unstable also has a slight lag behind the current upstream release used to build this package. The version in trusty is locked at 0.10.1. [2] https://github.com/mpv-player/mpv/wiki/FFmpeg-versus-Libav Furthermore, the official packages will only work in the release they're contained in. This package on the other hand, builds and installs on both Debian Wheezy (stable), and Jessie (testing/unstable) as well as Ubuntu Precise (12.04) and Trusty (14.04). For the older distributions, this package is probably the best alternative. In order to maintain this interoperability between distributions, this package must necessarily disable some features by default which are not universally supported. These include encoding/decoding with libopus, Wayland support, harfbuzz support for RTL scripts and sdl2 audio/video output (you may nevertheless trivially enable these provided sufficiently recent libraries - see below). On the other hand, this packge enables caca (for silly ascii art output) which is not present in the official Debian package. The official Ubuntu package is additionally missing video4Linux, and native samba support (to play smb:// URLs). Due to a packaging bug, it is also missing lua support (therefore no on-screen controller). There are several other features that are disabled in both this package as well as the official Debian package because they are not widely needed or used. These include openal output, portaudio output, rsound/libroar/sndio input/output, sdl1, joystick, videoio.h/libpt. If you find any of these useful, please open an issue at [3] explaining why you think the feature in question should be enabled, and we can try and include it in this package. [3] https://github.com/mpv-player/mpv-build/issues Finally, in addition to the default of building the latest released version of mpv, this package can also trivially be built from the latest git master of mpv (as well as ffmpeg and libass). As described in README.rst [1], this is achieved by calling ./update --master prior to building this Debian package. Additional ffmpeg features ========================== All relevant and free ffmpeg features/codecs should be enabled. If something is missing, it is a bug, and should be reported at [3]. Features for which distribution packages are not universally available are the exception. Unfortunately, libopus falls into this category as there is no package for it in Ubuntu Precise (12.04). To enable it elsewhere, install the relevant development package apt-get install libopus-dev and add the relevant options to the mpv-build/ffmpeg_options file echo --enable-libopus >> ffmpeg_options This must be done prior to building the package. Similarly, to enable the non-free Fraunhofer FDK AAC codec: apt-get install libfdk-aac-dev echo --enable-nonfree --enable-libfdk-aac >> ffmpeg_options Wayland support =============== According to wayland.freedesktop.org, "Wayland is intended as a simpler replacement for X, easier to develop and maintain". It is very much a work in progress, so adequate functionality requires recent version of the relevant libraries. At present, this is only possible on Debian Jessie or Ubuntu Trusty (not Wheezy or Ubuntu Precise). To maintain interoperability, this package therefore does not build with Wayland support by default. If you want Wayland support, you will need to manually install the necessary packages before building: apt-get install libwayland-dev libxkbcommon-dev The mpv build will then automatically detect and link to them. Harfbuz support =============== To enable RTL (Right To Left) support in libass requires only installing the relevant development package: apt-get install libharfbuzz-dev The libass configure will then automatically find it. This is necessary as the package is not available in Ubunutu Precise. SDL2 Support ============ mpv has support for sdl2 video and audio output, but it is disabled by default because opengl/alsa are preferred. The required packages are also not available in Ubuntu Precise. If however, you wish to try the sdl2 modules install the sdl2 development package: apt-get install libsdl2-dev and add the option to the mpv_options file echo --enable-sdl2 >> mpv_options