mirror of
https://github.com/mpv-player/mpv
synced 2024-12-12 18:06:18 +00:00
343a5fd345
vo_rpi and its related code has pretty much historically been a disaster in mpv. The build regularly gets broken and since nobody uses it, it takes months for anyone to notice. There was also that time where fullscreen was broken for about a year and a half. Also building in waf was entirely broken for about a couple of years or so due to mysterious reasons no one ever figured out (meson magically fixed it). Anyways, once again the build is broken due to rpi being forgotten about again, but instead of pretending to support this crap. Just drop it all. Nowadays, mmal hwdec is a relic since these devices are better off using the v4l2m2m ffmpeg fork instead which actually uses KMS properly. RPI 1 and 2 probably can't do this and will remain broken but oh well blame Broadcom for being special snowflakes and not using standard APIs (my rockpro worked out of the box; just saying). RPI 2 is nearly 10 years old anyways, so I think you can afford a new SBC by now. If we were nicer, there would be a deprecation period, but this is broken in the last major release anyway so too late. Closes #13402.
117 lines
8.7 KiB
Meson
117 lines
8.7 KiB
Meson
# booleans
|
|
option('gpl', type: 'boolean', value: true, description: 'GPL (version 2 or later) build')
|
|
option('cplayer', type: 'boolean', value: true, description: 'mpv CLI player')
|
|
option('libmpv', type: 'boolean', value: false, description: 'libmpv library')
|
|
option('build-date', type: 'boolean', value: true, description: 'whether to include binary compile time')
|
|
option('tests', type: 'boolean', value: false, description: 'meson unit tests')
|
|
# Reminder: normally always built, but enabled by MPV_LEAK_REPORT.
|
|
# Building it can be disabled only by defining NDEBUG through CFLAGS.
|
|
option('ta-leak-report', type: 'boolean', value: false, description: 'enable ta leak report by default (development only)')
|
|
|
|
# misc features
|
|
option('cdda', type: 'feature', value: 'disabled', description: 'cdda support (libcdio)')
|
|
option('cplugins', type: 'feature', value: 'auto', description: 'C plugins')
|
|
option('dvbin', type: 'feature', value: 'auto', description: 'DVB input module')
|
|
option('dvdnav', type: 'feature', value: 'disabled', description: 'dvdnav support')
|
|
option('iconv', type: 'feature', value: 'auto', description: 'iconv')
|
|
option('javascript', type: 'feature', value: 'auto', description: 'Javascript (MuJS backend)')
|
|
option('lcms2', type: 'feature', value: 'auto', description: 'LCMS2 support')
|
|
option('libarchive', type: 'feature', value: 'auto', description: 'libarchive wrapper for reading zip files and more')
|
|
option('libavdevice', type: 'feature', value: 'auto', description: 'libavdevice')
|
|
option('libbluray', type: 'feature', value: 'auto', description: 'Bluray support')
|
|
option('lua',
|
|
type: 'combo',
|
|
choices: ['lua', 'lua52', 'lua5.2', 'lua-5.2', 'luajit', 'lua51',
|
|
'lua5.1', 'lua-5.1', 'auto', 'enabled', 'disabled'],
|
|
value: 'auto',
|
|
description: 'Lua'
|
|
)
|
|
option('pthread-debug', type: 'feature', value: 'disabled', description: 'pthread runtime debugging wrappers')
|
|
option('rubberband', type: 'feature', value: 'auto', description: 'librubberband support')
|
|
option('sdl2', type: 'feature', value: 'disabled', description: 'SDL2')
|
|
option('sdl2-gamepad', type: 'feature', value: 'auto', description: 'SDL2 gamepad input')
|
|
option('uchardet', type: 'feature', value: 'auto', description: 'uchardet support')
|
|
option('uwp', type: 'feature', value: 'disabled', description: 'Universal Windows Platform')
|
|
option('vapoursynth', type: 'feature', value: 'auto', description: 'VapourSynth filter bridge')
|
|
option('vector', type: 'feature', value: 'auto', description: 'GCC vector instructions')
|
|
option('win32-threads', type: 'feature', value: 'auto', description: 'win32 threads')
|
|
option('zimg', type: 'feature', value: 'auto', description: 'libzimg support (high quality software scaler)')
|
|
option('zlib', type: 'feature', value: 'auto', description: 'zlib')
|
|
|
|
# audio output features
|
|
option('alsa', type: 'feature', value: 'auto', description: 'ALSA audio output')
|
|
option('audiounit', type: 'feature', value: 'auto', description: 'AudioUnit output for iOS')
|
|
option('coreaudio', type: 'feature', value: 'auto', description: 'CoreAudio audio output')
|
|
option('jack', type: 'feature', value: 'auto', description: 'JACK audio output')
|
|
option('openal', type: 'feature', value: 'disabled', description: 'OpenAL audio output')
|
|
option('opensles', type: 'feature', value: 'auto', description: 'OpenSL ES audio output')
|
|
option('oss-audio', type: 'feature', value: 'auto', description: 'OSSv4 audio output')
|
|
option('pipewire', type: 'feature', value: 'auto', description: 'PipeWire audio output')
|
|
option('pulse', type: 'feature', value: 'auto', description: 'PulseAudio audio output')
|
|
option('sdl2-audio', type: 'feature', value: 'auto', description: 'SDL2 audio output')
|
|
option('sndio', type: 'feature', value: 'auto', description: 'sndio audio output')
|
|
option('wasapi', type: 'feature', value: 'auto', description: 'WASAPI audio output')
|
|
|
|
# video output features
|
|
option('caca', type: 'feature', value: 'auto', description: 'CACA')
|
|
option('cocoa', type: 'feature', value: 'auto', description: 'Cocoa')
|
|
option('d3d11', type: 'feature', value: 'auto', description: 'Direct3D 11 video output')
|
|
option('direct3d', type: 'feature', value: 'auto', description: 'Direct3D support')
|
|
option('dmabuf-wayland', type: 'feature', value: 'auto', description: 'dmabuf-wayland video output')
|
|
option('drm', type: 'feature', value: 'auto', description: 'DRM')
|
|
option('egl', type: 'feature', value: 'auto', description: 'EGL 1.4')
|
|
option('egl-android', type: 'feature', value: 'auto', description: 'Android EGL support')
|
|
option('egl-angle', type: 'feature', value: 'auto', description: 'OpenGL ANGLE headers')
|
|
option('egl-angle-lib', type: 'feature', value: 'auto', description: 'OpenGL Win32 ANGLE library')
|
|
option('egl-angle-win32', type: 'feature', value: 'auto', description: 'OpenGL Win32 ANGLE Backend')
|
|
option('egl-drm', type: 'feature', value: 'auto', description: 'OpenGL DRM EGL Backend')
|
|
option('egl-wayland', type: 'feature', value: 'auto', description: 'OpenGL Wayland Backend')
|
|
option('egl-x11', type: 'feature', value: 'auto', description: 'OpenGL X11 EGL Backend')
|
|
option('gbm', type: 'feature', value: 'auto', description: 'GBM')
|
|
option('gl', type: 'feature', value: 'enabled', description: 'OpenGL context support')
|
|
option('gl-cocoa', type: 'feature', value: 'auto', description: 'gl-cocoa')
|
|
option('gl-dxinterop', type: 'feature', value: 'auto', description: 'OpenGL/DirectX Interop Backend')
|
|
option('gl-win32', type: 'feature', value: 'auto', description: 'OpenGL Win32 Backend')
|
|
option('gl-x11', type: 'feature', value: 'disabled', description: 'OpenGL X11/GLX (deprecated/legacy)')
|
|
option('jpeg', type: 'feature', value: 'auto', description: 'JPEG support')
|
|
option('sdl2-video', type: 'feature', value: 'auto', description: 'SDL2 video output')
|
|
option('shaderc', type: 'feature', value: 'auto', description: 'libshaderc SPIR-V compiler')
|
|
option('sixel', type: 'feature', value:'auto', description: 'Sixel')
|
|
option('spirv-cross', type: 'feature', value: 'auto', description: 'SPIRV-Cross SPIR-V shader converter')
|
|
option('plain-gl', type: 'feature', value: 'auto', description: 'OpenGL without platform-specific code (e.g. for libmpv)')
|
|
option('vdpau', type: 'feature', value: 'auto', description: 'VDPAU acceleration')
|
|
option('vdpau-gl-x11', type: 'feature', value: 'auto', description: 'VDPAU with OpenGL/X11')
|
|
option('vaapi', type: 'feature', value: 'auto', description: 'VAAPI acceleration')
|
|
option('vaapi-drm', type: 'feature', value: 'auto', description: 'VAAPI (DRM support)')
|
|
option('vaapi-wayland', type: 'feature', value: 'auto', description: 'VAAPI (Wayland support)')
|
|
option('vaapi-win32', type: 'feature', value: 'auto', description: 'VAAPI (Windows support)')
|
|
option('vaapi-x11', type: 'feature', value: 'auto', description: 'VAAPI (X11 support)')
|
|
option('vulkan', type: 'feature', value: 'auto', description: 'Vulkan context support')
|
|
option('wayland', type: 'feature', value: 'auto', description: 'Wayland')
|
|
option('x11', type: 'feature', value: 'auto', description: 'X11')
|
|
option('xv', type: 'feature', value: 'auto', description: 'Xv video output')
|
|
|
|
# hwaccel features
|
|
option('android-media-ndk', type: 'feature', value: 'auto', description: 'Android Media APIs')
|
|
option('cuda-hwaccel', type: 'feature', value: 'auto', description: 'CUDA acceleration')
|
|
option('cuda-interop', type: 'feature', value: 'auto', description: 'CUDA with graphics interop')
|
|
option('d3d-hwaccel', type: 'feature', value: 'auto', description: 'D3D11VA hwaccel')
|
|
option('d3d9-hwaccel', type: 'feature', value: 'auto', description: 'DXVA2 hwaccel')
|
|
option('gl-dxinterop-d3d9', type: 'feature', value: 'auto', description: 'OpenGL/DirectX Interop Backend DXVA2 interop')
|
|
option('ios-gl', type: 'feature', value: 'auto', description: 'iOS OpenGL ES hardware decoding interop support')
|
|
option('videotoolbox-gl', type: 'feature', value: 'auto', description: 'Videotoolbox with OpenGL')
|
|
option('videotoolbox-pl', type: 'feature', value: 'auto', description: 'Videotoolbox with libplacebo')
|
|
option('vulkan-interop', type: 'feature', value: 'auto', description: 'Vulkan graphics interop')
|
|
|
|
# macOS features
|
|
option('macos-cocoa-cb', type: 'feature', value: 'auto', description: 'macOS libmpv backend')
|
|
option('macos-media-player', type: 'feature', value: 'auto', description: 'macOS Media Player support')
|
|
option('macos-touchbar', type: 'feature', value: 'auto', description: 'macOS Touch Bar support')
|
|
option('swift-build', type: 'feature', value: 'auto', description: 'macOS Swift build tools')
|
|
option('swift-flags', type: 'string', description: 'Optional Swift compiler flags')
|
|
|
|
# manpages
|
|
option('html-build', type: 'feature', value: 'disabled', description: 'html manual generation')
|
|
option('manpage-build', type: 'feature', value: 'auto', description: 'manpage generation')
|
|
option('pdf-build', type: 'feature', value: 'disabled', description: 'pdf manual generation')
|