5 |
5 |
|
6 |
6 |
LUA_COMPAT=( lua5-1 luajit )
|
7 |
7 |
PYTHON_COMPAT=( python3_{10..12} )
|
8 |
|
inherit edo flag-o-matic lua-single meson optfeature pax-utils python-single-r1 xdg
|
|
8 |
inherit flag-o-matic lua-single meson optfeature pax-utils python-single-r1 xdg
|
9 |
9 |
|
10 |
10 |
if [[ ${PV} == 9999 ]]; then
|
11 |
11 |
inherit git-r3
|
... | ... | |
25 |
25 |
dvd +egl gamepad +iconv jack javascript jpeg lcms libcaca +libmpv
|
26 |
26 |
+libplacebo +lua mmal nvenc openal opengl pipewire pulseaudio
|
27 |
27 |
raspberry-pi rubberband sdl selinux sixel sndio test tools +uchardet
|
28 |
|
vaapi vdpau vulkan wayland +xv zimg zlib"
|
|
28 |
vaapi vdpau vulkan wayland xv zimg zlib"
|
29 |
29 |
REQUIRED_USE="
|
30 |
30 |
${PYTHON_REQUIRED_USE}
|
31 |
31 |
|| ( cli libmpv )
|
... | ... | |
49 |
49 |
# raspberry-pi: default to -bin given non-bin is known broken (bug #893422)
|
50 |
50 |
COMMON_DEPEND="
|
51 |
51 |
media-libs/libass:=[fontconfig]
|
52 |
|
media-video/ffmpeg:=[encode,threads,vaapi?,vdpau?]
|
|
52 |
>=media-video/ffmpeg-4.4:=[encode,threads,vaapi?,vdpau?]
|
53 |
53 |
X? (
|
54 |
54 |
x11-libs/libX11
|
55 |
55 |
x11-libs/libXScrnSaver
|
... | ... | |
86 |
86 |
lcms? ( media-libs/lcms:2 )
|
87 |
87 |
libcaca? ( media-libs/libcaca )
|
88 |
88 |
libplacebo? (
|
89 |
|
>=media-libs/libplacebo-4.202:=[opengl?,vulkan?]
|
90 |
|
<media-libs/libplacebo-6
|
|
89 |
>=media-libs/libplacebo-4.157:=[opengl?,vulkan?]
|
91 |
90 |
egl? ( media-libs/libplacebo[opengl] )
|
92 |
91 |
)
|
93 |
92 |
lua? ( ${LUA_DEPS} )
|
... | ... | |
135 |
134 |
wayland? ( dev-util/wayland-scanner )"
|
136 |
135 |
|
137 |
136 |
PATCHES=(
|
138 |
|
"${FILESDIR}"/${P}-yt-dlp-edl-fragments.patch
|
139 |
|
"${FILESDIR}"/${P}-pipewire-0.3.75.patch
|
|
137 |
"${FILESDIR}"/${PN}-0.36.0-tests-odr.patch
|
|
138 |
"${FILESDIR}"/${PN}-0.36.0-sub-match-audio.patch
|
140 |
139 |
)
|
141 |
140 |
|
142 |
141 |
pkg_setup() {
|
... | ... | |
244 |
243 |
$(mpv_feature_multi vdpau opengl vdpau-gl-x11)
|
245 |
244 |
|
246 |
245 |
$(mpv_feature_multi aqua opengl videotoolbox-gl)
|
|
246 |
|
|
247 |
# notable options left to automagic
|
|
248 |
#dmabuf-wayland: USE="drm wayland" + plus memfd_create support
|
|
249 |
#libplacebo-next: USE="libplacebo" + >=libplacebo-5.264
|
|
250 |
#vulkan-interop: USE="libplacebo vulkan" + ffmpeg-9999 currently
|
|
251 |
# TODO?: perhaps few more similar compound options should be left auto
|
247 |
252 |
)
|
248 |
253 |
|
249 |
|
meson_src_configure
|
250 |
|
}
|
|
254 |
has_version '>=media-libs/libplacebo-5.264' ||
|
|
255 |
ewarn "${PN}'s gpu-next video output requires ${_} to be used"
|
251 |
256 |
|
252 |
|
src_test() {
|
253 |
|
# https://github.com/mpv-player/mpv/blob/master/DOCS/man/options.rst#debugging
|
254 |
|
local tests=($("${BUILD_DIR}"/mpv --no-config --unittest=help | tail -n +2; assert))
|
255 |
|
(( ${#tests[@]} )) || die "failed to gather any tests"
|
256 |
|
|
257 |
|
local skip=(
|
258 |
|
all-simple
|
259 |
|
|
260 |
|
# fails on non-issue minor inconsistencies (bug #888639)
|
261 |
|
img_format
|
262 |
|
repack_sws
|
263 |
|
)
|
264 |
|
|
265 |
|
local test
|
266 |
|
for test in "${tests[@]}"; do
|
267 |
|
[[ ${test} == @($(IFS='|'; echo "${skip[*]}")) ]] ||
|
268 |
|
edo "${BUILD_DIR}"/mpv -v --no-config --unittest="${test}"
|
269 |
|
done
|
|
257 |
meson_src_configure
|
270 |
258 |
}
|
271 |
259 |
|
272 |
260 |
src_install() {
|