mpv

mpv-player活跃维护 有专家点评

轻量级命令行视频播放器,基于 FFmpeg 解码,支持硬件加速、字幕渲染和脚本扩展,适合在终端或嵌入其他应用中播放音视频。

🎥 Command line media player

v0.42.0发布于 2026-11-05 00:56 UTC38,056star +120 / 7 天3,649fork同步于 2026-11-11 05:19 UTC

专家点评

上手难度:进阶更新于 2026-11-11

命令行播放器兼可脚本化的播放引擎,顶替 mplayer/VLC 在自动化流水线和嵌入式播放场景里的位置

适用场景

  • 批量转码前的抽帧/校验播放:用 --no-video、--frames 之类参数无窗口跑一遍,确认文件能解、时长对得上,比拉 VLC 起 GUI 再关掉干净
  • 播放器嵌进自己的应用:libmpv 提供的是播放内核而不是完整 app,前端自己写,比 fork 一个 VLC 分支可控
  • 需要精确控制渲染的场合:shader 做缩放和色彩处理,配合 --hwdec 手动开硬解,适合对画面处理有要求的播放链路
  • 远程/无显示环境:纯 CLI 加 IPC socket,脚本能查询和改播放状态,适合做播放调度

踩坑

  • 从源码编译:完整功能要拉齐 FFmpeg、libplacebo、libass 等一堆开发库,缺哪个就静默少一块功能,第一次配 meson 容易在依赖探测上耗时间;不想折腾就用发行版包
  • 硬解默认关闭:不显式传 --hwdec 就是 CPU 解码,低功耗设备上会先怀疑播放器卡,实际是没开硬解;反过来开了硬解在部分 GPU 上又可能撕裂,README 建议的 --profile=fast 是给这类机器的
  • 平台版本门槛卡得紧:Linux 基本只跟发行版最新版走,老发行版或老 Windows/macOS 上会遇到构建或运行问题,issue 里 Vulkan 解码相关讨论量很大,说明这条路径的配置细节仍在变动

同类对比

要开箱即用的 GUI 播放器选 VLC;只要在浏览器/Electron 里嵌播放能力,用 libmpv 之外也可以看 GStreamer 管线,它的插件模型对非 C 项目更友好

怎么上手

由 README 提炼,执行前请确认
meson setup build
meson compile -C build
meson install -C build
硬件要求按 README 说明

需要不太老的 Linux(通常仅支持发行版最新版本)、Windows 10 1607 或更高、macOS 10.15 或更高;需要性能尚可的 CPU 和不太差的 GPU,硬件解码默认不开启,需用 --hwdec 显式启用;低功耗 GPU 可能出现撕裂、卡顿,建议用 --profile=fast。README 未给出具体显存要求。

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

命令行媒体播放器,支持多种格式、编解码器与字幕,适合脚本化播放

轻量级命令行视频播放器,基于 FFmpeg 解码,支持硬件加速、字幕渲染和脚本扩展,适合在终端或嵌入其他应用中播放音视频。

核心能力

  • 命令行播放各类媒体文件与音视频编解码器
  • 支持多种字幕类型,依赖 libass 渲染
  • 用 shader 做视频渲染与缩放,而非 GPU 固定功能硬件
  • 可用 --hwdec 显式开启硬件解码
  • 提供 OSC 伪图形界面与 youtube-dl 集成

容易踩的坑

编译完整功能需要大量外部开发库(FFmpeg、libplacebo、libass 等),缺库会缺功能;硬件解码默认关闭,不传 --hwdec 时仍由 CPU 解码;官方只提供半官方构建和第三方包,需到 mpv.io/installation 获取。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v0.42.0
  1. v0.42.0最新正式版2026-11-05 · 2026-11-05 00:56 UTC

    We are excited to announce the release of mpv 0.42.0.

    Key highlights:

    • libcurl based network backend with HTTP/2, HTTP/3 and connection reuse
    • DVD-Video, Blu-ray HDMV and BD-J menu navigation
    • DVD-Audio playback
    • Direct playback of .iso images of DVD-Video, DVD-Audio and Blu-ray discs
    • Dolby Vision Profile 7 enhancement layer support in gpu-next
    • MPEG-TS programs and HLS variants are exposed as editions
    • DSD-over-PCM (DoP) passthrough with --audio-spdif=dsd
    • Support for SRV3 (YouTube) subtitles via subrandr library
    • Context menu populated from the new menu.conf, bound to right click
    • floating OSC layout with Fluent icons (--script-opts=osc-layout=floating)
    • API that allows integration between the OSC and (third-party) thumbnailer scripts
    • Wayland session management
    • Wayland color management through the protocol instead of the Vulkan API
    • scRGB output with --target-trc=scrgb
    • Improved HDR colorspace signalling on DRM (Linux)
    • D3D11 render API backend for libmpv
    • Reworked terminal video outputs (sixel, kitty and tct)
    • AMD Frame Rate Conversion filter (--vf=amf_frc)
    • Rewritten display-sync audio drift compensation
    • --tls-verify is enabled by default

    This release requires FFmpeg 6.1 or newer and libplacebo 7.387.0 or newer.

    Note that the release binary assets are our CI builds. These builds are reasonably useful. The Windows full builds (*-w64-mingw32-full.zip) are bigger and aim to provide the complete experience.

    Features

    New

    • sub: add subrandr renderer support
    • video/filter/vf_amf: add AMD Frame Rate Conversion filter
    • mac/common: add support for transparent rendering
    • context_menu.lua: implement key hints
    • menu.conf: add this file
    • select.lua: populate the context menu
    • input.conf: add context menu bindings
    • vo_gpu_next: add scRGB support
    • video/out/opengl/context_wayland: export preferred colorspace
    • vo_dmabuf_wayland: add BT.2100 mapping
    • wayland_common: add scRGB support
    • mpv-osd-symbols: add some Fluent UI System Icons to mpv font
    • osc.lua: add floating layout
    • vo_gpu_next: add stereo osd support
    • demux_lavf: add support for programs
    • demux_timeline: add support for programs
    • vo_gpu: initial support for tunable parameters
    • vo_gpu: add support for DEFINE and ENUM parameters
    • osc: define and add support for "preview" api
    • demux/packet: add support for SMPTE 2094-50 metadata
    • vo_gpu: support parameters in RPN expressions
    • demux_playlist: add support for 'strm' playlist
    • wayland: implement session management
    • demux/packet: add support for LCEVC ITU-T35 payloads
    • demux_lavf: add support for stream groups
    • video: merge the tiles of grid heif and avif images
    • stream_curl: add libcurl-based stream backend
    • demux_lavf: route nested HTTP opens through the curl backend
    • stream_curl: use for ftp/ftps
    • video/out/x11_common: add --focus-on support in X11
    • hwdec_d3d11va: support 4:4:4 and high bit depth zero-copy formats
    • demux_mkv: support demuxing native VC-1 streams
    • stream_curl: add support for Icecast metadata
    • f_enhancement_pair: add filter to match frames of separate video tracks
    • vo_gpu_next: upload/map EL frame
    • demux_lavf: add support for splitting EL track from in-band
    • demux_mkv: add support for splitting EL track from in-band
    • stream_env: add new stream to read from environment variables
    • audio/filter: implement lavfi-tempo leveraging lavfi's atempo/ascale
    • sd_lavc: add support for DVD sub highlight
    • stream_dvdnav: implement DVD menu navigation
    • stream_bluray: implement HDMV menu navigation
    • demux_disc: add a synthetic "Disc Menu" edition
    • stream_bluray: add BD-J menu support
    • stream_dvdnav: add support for still frames
    • stream_bluray: add support for still frames
    • stream_dvda: add DVD-Audio playback support
    • stream_dvda: expose DVD-Audio still images as a cover-art video track
  2. git-releasempv development buildpre-release2026-06-04 · 2026-06-04 18:07 UTC
    查看更新说明

    Automated development build of the latest master branch.

    • Version: v0.42.0-38-gbcde6b93c
    • Commit: bcde6b93cca4d128d84e1a60d1a6db2cd81c889e
    • Built: 2026-11-10 18:41:41 UTC

    Windows

    Full builds are static mingw-w64 builds with every optional feature, such as DVD and Blu-ray playback. Clang builds are smaller made with the Windows SDK and come with debug symbols, but does not include all optional features.

    libmpv (Windows)

    libmpv-2.dll with import library and headers. GPL builds are GPLv3, mpv with all its GPL parts and FFmpeg with --enable-gpl --enable-version3. LGPL builds are LGPLv3, made with -Dgpl=false against the LGPL FFmpeg variant, for software that cannot link GPL.

    macOS

    [!WARNING] These are untested development builds of the very latest master. They are not official releases. For stable builds see the latest release.

  3. v0.41.02025-12-21 · 2025-12-21 19:17 UTC
    查看更新说明

    We are excited to announce the release of mpv 0.41.0.

    Key highlights:

    • The libplacebo based gpu-next is now the default, instead of gpu
    • Vulkan hardware decoding is preferred over other APIs
    • New context_menu.lua script for right-click context menus
    • AAudio backend for modern, JNI-free audio output on Android
    • Improved default color management for gpu-next, and handling on Wayland
    • Color representation protocol support for Wayland
    • Tablet input support for Wayland
    • Clipboard writing support for Wayland and a clipboard backend for X11
    • Ambient light support on Linux (using sysfs ALS)
    • Built-in helpers to register mpv as a media app on Windows

    This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer.

    Features

    New

    • clipboard-wayland: support clipboard writing
    • wayland: add support for wp-color-representation-v1
    • wayland: tablet input support
    • vo_gpu_next: add support for blend-subtitles=video
    • meson: add mpv-register and mpv-unregister helpers on Windows
    • context_menu.lua: add this script
    • select.lua: add edit-config-file and edit-input-conf
    • osc.lua: add indicator for buffering/loading
    • osdep/linux-als: support 'ambient-light' property on Linux
    • clipboard-x11: add x11 clipboard backend
    • ao/aaudio: implement native AAudio backend for Android

    Changed

    • vd_lavc: prefer Vulkan hwdec when available
    • vd_lavc: prefer non-copy hwdec before falling back to -copy variant
    • vo: move vo_mediacodec_embed to not be the default on Android
    • sub/osd_libass: don't rerender OSD if not changed
    • vo: prefer vo_gpu_next over vo_gpu by default
    • vo_gpu_next: respect ICC profile color space over any metadata
    • vo_gpu_next: linearize sRGB as a pure 2.2 power function
    • meson: warn if building with SDL2 due to known problems
    • osxbundle: make bundle category configurable and default to video
    • ao_pipewire: avoid setting any media.role by default

    Options and Commands

    Added

    • sub: add control for libass caching options (glyph-limit, bitmap-max-size)
    • vo: add options to control background tile appearance (transparency)
    • command: add default and forced flags to the track add commands
    • vo_gpu_next: add options to control subtitle peak for HDR output
    • video/out/d3d11: add d3d11 composition mode support
    • vd_lavc: add --hwdec-threads
    • stream_bluray: add --bluray-angle
    • vo_gpu_next: add options to control output colorspace metadata more precisely
    • sub: make --sub-fix-timing configurable
    • vo_gpu_next: add --hdr-reference-white
    • audio/out: add --audio-set-media-role

    Changed

    • options: revert --prefetch-playlist default back to 'no'
    • vo_gpu_next: change --target-colorspace-hint to 'auto' by default
    • options: handle runtime --wid change
    • options: reduce swapchain-depth to 2 by default
    • screenshot: add osd and scaled flags to screenshot commands

    Fixes and Minor Enhancements

    • vo_kitty: add auto-multiplexer-passthrough option
    • vd_lavc: enable FFv1 hwaccel by default
    • clipboard-wayland: prevent reading from hung up fd
    • demux_mkv: fix compilation after deprecated definitions removal
    • filters: handle flipping video if displaymatrix indicates so
    • player/scripting: fix race condition when destroying clients
    • {osd,msg}: use PU codepoints for escape codes instead of invalid UTF-8
    • vo_dmabuf_wayland: only load needed hardware decoding drivers
    • video/image_writer: tag accurate bit depth
    • demux_lavf: fix unconstrained cache size with wrapped AVFrame packets
    • libarchive: fix reading name of certain UTF-8 files
    • sub/sd_lavc: fix decoding with libaribb24
    • ao_avfoundation: fix memory leak
    • osc.lua: fix volume icon not updating while paused
    • context_wayland: implement target_csp for wayland
    • vo_gpu: fix target colorspace for redrawn frames
    • vo_dmabuf_wayland: don't set HDR metadata on SDR transfers
    • vo_gpu_next: don't do partial updates on hint luminance
    • sub/ass_mp: add missing paddi
  4. v0.40.02025-03-25 · 2025-03-25 17:35 UTC
    查看更新说明

    We are excited to announce the release of mpv 0.40.0.

    Key highlights:

    • Console: Enhanced autocompletion and visual styling
    • OSC: New selection menu accessible by right-clicking common buttons
    • HDR is now natively supported when using direct rendering (DRM), as well as dmabuf-wayland on Linux
    • Native clipboard access for scripts via new clipboard property
    • New command menu, with common actions easily accessible
    • Enhanced select.lua with new selection options for watch history, editions, DVD/Blu-Ray titles
    • New positioning.lua script script for cursor-centric zooming and drag to pan
    • Better stream support for Blu-ray, DVD and CDDA
    • Track selection improvements and better metadata display
    • Added osd-box / sub-box / box profiles to easily enable box styled OSD/OSC
    • Windows support in umpv helper script

    This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer.

    Features

    New

    • vf_d3d11vpp: add NVIDIA RTX Video HDR support
    • context_drm_gl: add support for HDR metadata
    • positioning.lua: add new script for video alignment and zooming
    • umpv: add Windows support
    • command: add clipboard property with native backends for Windows, macOS, and Wayland
    • select.lua: add watch history, edition, DVD/Blu-Ray titles and more selection options
    • input.conf: add cursor-centric zoom and drag-to-pan bindings
    • wayland: add support for wp-color-management-v1 protocol
    • console.lua: add persistent command history
    • stats.lua: add timecode display
    • options: add --playlist-exts and --archive-exts
    • wayland_common: support IME usage via text-input-v3
    • command: add multiple track metadata and properties
    • vo_gpu_next: add chroma location and HDR metadata to shader parameters
    • player/screenshot: support more formats for screenshot-raw command
    • demux_mkv: add --demuxer-mkv-crop-compat option
    • misc/language: parse hi/sdh/cc tags from external subtitle tracks
    • wayland: support xdg-activation
    • player: add mpv:// protocol

    Changed

    • meson: build libmpv by default
    • command: enhance track and playlist display information
    • input.conf: improve numpad key bindings
    • osc.lua: add custom buttons support and improved mouse bindings
    • console.lua: inherit OSD styles and colors
    • options: default to --prefetch-playlist=yes
    • osc.lua: add slimbottombar and slimtopbar layouts
    • command: improve frame-step to go through multiple frames
    • wayland: use wp-presentation v2 if available
    • various: reorganize options into more logical groups
    • vo_gpu_next: improve target colorspace handling
    • options: disable --input-ime by default (enabled on demand)

    Options and Commands

    Added

    • sd_ass: introduce sub-ass-prune-delay
    • player: add an optional mute flag when framestepping
    • command: add clipboard/text-primary property
    • command: add current-clipboard-backend property
    • command: add notify-property command
    • options: add --script-opt alias for --script-opts-append
    • options: add --osd-bar-marker-{size,style} options
    • options: add --input-ime for improved text input
    • options: add --video-recenter
    • options: add --clipboard-backends
    • options: add --wayland-internal-vsync
    • options: add --sub-scale-signs

    Changed

    • options: rename --load-osd-console to --load-console
    • player: improve track selection for multi-component languages
    • options: improve frame-step command to handle multiple frames
    • input.conf: make Alt+BS reset --video-align-{x,y}
    • command: print track metadata when changing track
    • command: print track-list with enhanced metadata

    Deprecated

    • options: deprecate --gamma-auto (use gamma-auto.lua script instead)
    • options: deprecate undocumented --cdda-span-{a,b} options

    Fixes and Minor Enhancements

    • f_hwtransfer: ensure that we convert to full range rgb with scale_vaapi
    • win32: fix window size restore after maximize state
    • build: fix dynamic generation of mpv.desktop file protocols
  5. v0.39.02024-09-23 · 2024-09-23 17:38 UTC
    查看更新说明

    We are excited to announce the release of mpv 0.39.0, with more than 5 months of development since the last version. This release brings numerous improvements and fixes across nearly all components.

    Key highlights:

    • A new select.lua script, allowing users to easily choose files from playlists, tracks, chapters, output devices, and more.
    • A native replacement for autoload.lua has been implemented. See --autocreate-playlist in the manual.
    • NVIDIA RTX and Intel VSR scaling are now supported via the d3d11va filter.
    • Media controls are now supported on Windows.
    • Track selection has been improved, especially for multi-component languages like fr-CA.
    • A new fifth page has been added to stats.lua, displaying track information.
    • Compatibility with dmabuf-wayland has been significantly enhanced.
    • Multi-touch support has been introduced.

    This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer.

    Features

    New

    • vf_d3d11vpp: add support for Intel VSR and NVIDIA RTX scaling modes
    • demux: add --autocreate-playlist
    • audio: add pitch-shifting feature
    • win32: add Media Control support
    • various: allow changing GPU API options at runtime
    • vo_gpu_next: support --gamma-factor
    • vf_vapoursynth: upgrade to VapourSynth API v4
    • select.lua: add this script
    • console.lua: implement a command parser to complete more things
    • demux_mkv: demux Block Additional Mappings
    • cocoa-cb: add support for macOS color space transformation (EDR/HDR)
    • powershell-completion: add PowerShell command line completion
    • input: implement VO dragging deadzone
    • win32: support multitouch
    • wayland_common: support multitouch
    • demux/packet: add support for ITU T.35 metadata in Matroska
    • demux: support VVC Matroska demux
    • terminal-win: support mouse input events
    • x11_common: detect wm support for _NET_WM_STATE_SKIP_TASKBAR

    Changed

    • loadfile: improve the format of terminal track information
    • options: add secondary-{sid,sub-delay} to watch_later_options
    • input: map Num 5 to distinct value when numlock is off
    • input.conf: make Alt+BS reset panscan
    • msg: don't use bold colors and instead use bright ones

    Options and Commands

    Added

    • sub: add ass-video-aspect-override option
    • input/keycodes: add KP_ADD/SUBTRACT/MULTIPLY/DIVIDE keycodes
    • demux_playlist: use --directory-filter-types for --autocreate-playlist
    • options: add --{video,audio,image}-exts
    • player: don't decrement --ab-loop-count=N and add remaining-ab-loops
    • player: don't decrement --loop-file=N and add remaining-file-loops
    • sub: add (sub/osd)-border-style; renaming sub options
    • input.conf: add zoom, pan, scale and rotate keybinds for numpad
    • wayland: add a --wayland-present option
    • mac/menu: add option to disable default shortcuts
    • stats.lua: display file tags
    • osc.lua: add option to use display fps for update interval
    • osc.lua: add option to make rendering smoother
    • opengl: add --egl-output-format, --egl-config-id
    • vf_vapoursynth: add parameter to pass arbitrary string to script
    • options: add --osd-playlist-entry
    • {osc,stats}.lua: add 'auto' value to vidscale option
    • input/cmd: add nonrepeatable prefix
    • player: add option-info/<name>/expects-file
    • command: add dolby-vision-profile and dolby-vision-level to track-list
    • scripting: add mp.input.select()
    • command: add normalize-path command
    • OSC: implemented user configurable colors
    • ao_wasapi: add --wasapi-exclusive-buffer option
    • stats.lua: add option to disable scale with video size
    • stats.lua: add option to control plot border width
    • player/command: add track-list/N/decoder
    • sd_ass: add sub-vsfilter-bidi-compat to enable vsfilter bidi compat
    • {x11,w32}_common: implement --show-in-taskbar option

    Changed

    • sub: merge vsfilter-aspect and vsfilter-blur-compat options
    • input.conf: swap the positions of values for ctrl+h binding
    • video/csputils: remove space from choice option for

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    mpv logo

    mpv

    External links

    Overview

    mpv is a free (as in freedom) media player for the command line. It supports a wide variety of media file formats, audio and video codecs, and subtitle types.

    There is a FAQ.

    Releases can be found on the release list.

    System requirements

    • A not too ancient Linux (usually, only the latest releases of distributions are actively supported), Windows 10 1607 or later, or macOS 10.15 or later.
    • A somewhat capable CPU. Hardware decoding might help if the CPU is too slow to decode video in realtime, but must be explicitly enabled with the --hwdec option.
    • A not too crappy GPU. mpv's focus is not on power-efficient playback on embedded or integrated GPUs (for example, hardware decoding is not even enabled by default). Low power GPUs may cause issues like tearing, stutter, etc. On such GPUs, it's recommended to use --profile=fast for smooth playback. The main video output uses shaders for video rendering and scaling, rather than GPU fixed function hardware. On Windows, you might want to make sure the graphics drivers are current. In some cases, ancient fallback video output methods can help (such as --vo=xv on Linux), but this use is not recommended or supported.

    mpv does not go out of its way to break on older hardware or old, unsupported operating systems, but development is not done with them in mind. Keeping compatibility with such setups is not guaranteed. If things work, consider it a happy accident.

    Downloads

    For semi-official builds and third-party packages please see mpv.io/installation.

    Changelog

    There is no complete changelog; however, changes to the player core interface are listed in the interface changelog.

    Changes to the C API are documented in the client API changelog.

    The release list has a summary of most of the important changes on every release.

    Changes to the default key bindings are indicated in restore-old-bindings.conf.

    Changes to the default OSC bindings are indicated in restore-osc-bindings.conf.

    Compilation

    Compiling with full features requires development files for several external libraries. Mpv requires meson to build. Meson can be obtained from your distro or PyPI.

    After creating your build directory (e.g. meson setup build), you can view a list of all the build options via meson configure build. You could also just simply look at the meson_options.txt file. Logs are stored in meson-logs within your build directory.

    Example:

    meson setup build
    meson compile -C build
    meson install -C build
    

    For libplacebo, meson can use a git check out as a subproject for a convenient way to compile mpv if a sufficient libplacebo version is not easily available in the build environment. It will be statically linked with mpv. Example:

    mkdir -p subprojects
    git clone https://code.videolan.org/videolan/libplacebo.git --depth=1 --recursive subprojects/libplacebo
    

    Essential dependencies (incomplete list):

    • gcc or clang
    • X development headers (xlib, xrandr, xext, xscrnsaver, xpresent, libvdpau, libGL, GLX, EGL, xv, ...)
    • Audio output development headers (libasound/ALSA, pulseaudio)
    • FFmpeg libraries (libavutil libavcodec libavformat libswscale libavfilter and either libswresample or libavresample)
    • libplacebo
    • zlib
    • iconv (normally provided by the system libc)
    • libass (OSD, OSC, text subtitles)
    • Lua (optional, required for the OSC pseudo-GUI and youtube-dl integration)
    • libjpeg (optional, used for screenshots only)
    • uchardet (optional, for subtitle charset detection)
    • nvdec and vaapi libraries for hardware decoding on Linux (optional)

    Libass dependencies (when building libass):

    • gcc or clang, nasm on x86 and x86_64
    • fribidi, freetype, fontconfig development headers (for libass)
    • harfbuzz (required for correct rendering of combining characters, particularly for correct rendering of non-English text on macOS, and Arabic/Indic scripts on any platform)

    FFmpeg dependencies (when building FFmpeg):

    • gcc or clang, nasm on x86 and x86_64
    • OpenSSL or GnuTLS (have to be explicitly enabled when compiling FFmpeg)
    • libx264/libmp3lame/libfdk-aac if you want to use encoding (have to be explicitly enabled when compiling FFmpeg)
    • For native DASH playback, FFmpeg needs to be built with --enable-libxml2 (although there are security implications, and DASH support has lots of bugs).
    • AV1 decoding support requires dav1d.
    • For good nvidia support on Linux, make sure nv-codec-headers is installed and can be found by configure.

    Most of the above libraries are available in suitable versions on normal Linux distributions. For ease of compiling the latest git master of everything, you may wish to use the separately available build wrapper (mpv-build) which first compiles FFmpeg libraries and libass, and then compiles the player statically linked against those.

    If you want to build a Windows binary, see Windows compilation.

    Release cycle

    Once or twice a year, a release is cut off from the current development state and is assigned a 0.X.0 version number. No further maintenance is done, except in the event of security issues.

    The goal of releases is to make Linux distributions happy. Linux distributions are also expected to apply their own patches in case of bugs.

    Releases other than the latest release are unsupported and unmaintained.

    See the release policy document for more information.

    Bug reports

    Please use the issue tracker provided by GitHub to send us bug reports or feature requests. Follow the template's instructions or the issue will likely be ignored or closed as invalid.

    Questions can be asked in the discussions or on IRC (see Contact below).

    Contributing

    Please read contribute.md.

    For small changes you can just send us pull requests through GitHub. For bigger changes come and talk to us on IRC before you start working on them. It will make code review easier for both parties later on.

    You can check the wiki or the issue tracker for ideas on what you could contribute with.

    License

    GPLv2 "or later" by default, LGPLv2.1 "or later" with -Dgpl=false. See details.

    History

    This software is based on the MPlayer project. Before mpv existed as a project, the code base was briefly developed under the mplayer2 project. For details, see the FAQ.

    Contact

    Most activity happens on the IRC channel and the GitHub issue tracker.

    • GitHub issue tracker: issue tracker (report bugs here)
    • Discussions: discussions
    • User IRC Channel: #mpv on irc.libera.chat
    • Developer IRC Channel: #mpv-devel on irc.libera.chat