mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-11-14 03:57:15 +00:00
mpv: upgrade 0.41.0 -> 0.42.0
Drop both patches, included in this release. Needs libplacebo >= 7.387.0. AI-Generated: Uses Claude Code Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
3 files changed
+1
-62
No files matched your search
-35
@@ -1,35 +0,0 @@
|
||||
From f74adc4243bd9e1a8ee96d187c939e6232510650 Mon Sep 17 00:00:00 2001
|
||||
From: Dudemanguy <random342@airmail.cc>
|
||||
Date: Thu, 22 Jan 2026 11:12:22 -0600
|
||||
Subject: [PATCH] opengl/context: require swap_buffers param for FenceSync
|
||||
|
||||
Commits 8854c742711705be1fcfcc6a5875960a3e2593dc and
|
||||
5ae0e0ff9a6974453c1aba41ddc8442d12ac9264 eliminated the external
|
||||
swapchain API that the render backend (vo_libmpv) was previously using.
|
||||
However, it was missed that this was being used to skip the
|
||||
gl->FenceSync calls and that logic change was not properly accounted
|
||||
for. This meant that vo_libmpv would leak fences since
|
||||
ra_gl_ctx_swap_buffers is never called to clean them up.
|
||||
|
||||
Fix this by making sure the ra_ctx_params have swap_buffers defined
|
||||
before calling gl->FenceSync. All platforms are required to implement
|
||||
this anyway with the exception of vo_libmpv since it's a funny special
|
||||
case. Fixes #17217.
|
||||
Upstream-Status: Backport [https://github.com/mpv-player/mpv/commit/f74adc4243bd9e1a8ee96d187c939e6232510650]
|
||||
---
|
||||
video/out/opengl/context.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/video/out/opengl/context.c b/video/out/opengl/context.c
|
||||
index 86e8d5daac8b4..86e5c797d670a 100644
|
||||
--- a/video/out/opengl/context.c
|
||||
+++ b/video/out/opengl/context.c
|
||||
@@ -232,7 +232,7 @@ bool ra_gl_ctx_submit_frame(struct ra_swapchain *sw, const struct vo_frame *fram
|
||||
if (p->opts->use_glfinish)
|
||||
gl->Finish();
|
||||
|
||||
- if (gl->FenceSync) {
|
||||
+ if (gl->FenceSync && p->params.swap_buffers) {
|
||||
GLsync fence = gl->FenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0);
|
||||
if (fence)
|
||||
MP_TARRAY_APPEND(p, p->vsync_fences, p->num_vsync_fences, fence);
|
||||
-24
@@ -1,24 +0,0 @@
|
||||
From: Markus Volk <f_l_k@t-online.de>
|
||||
Subject: [PATCH] hwdec_drmprime_overlay: make the framebuffer the whole frame
|
||||
|
||||
The framebuffer for the DRM plane was made the size of the source rect,
|
||||
while SRC_X and SRC_Y place that rect inside the frame. As soon as the
|
||||
rect does not start at the top left, with panscan or a video crop, it
|
||||
reaches past the framebuffer and the atomic commit fails with ENOSPC; the
|
||||
plane stays dark. Make the framebuffer the size of the frame and let the
|
||||
SRC_* properties pick the part that is shown.
|
||||
|
||||
Upstream-Status: Pending
|
||||
---
|
||||
--- a/video/out/hwdec/hwdec_drmprime_overlay.c
|
||||
+++ b/video/out/hwdec/hwdec_drmprime_overlay.c
|
||||
@@ -187,7 +187,8 @@
|
||||
int dstw = MP_ALIGN_UP(p->dst.x1 - p->dst.x0, 2);
|
||||
int dsth = MP_ALIGN_UP(p->dst.y1 - p->dst.y0, 2);
|
||||
|
||||
- if (drm_prime_create_framebuffer(p->log, p->ctx->fd, desc, srcw, srch, &next_frame.fb, &p->handle_refs)) {
|
||||
+ // The framebuffer is the whole frame, SRC_* pick the part shown
|
||||
+ if (drm_prime_create_framebuffer(p->log, p->ctx->fd, desc, hw_image->w, hw_image->h, &next_frame.fb, &p->handle_refs)) {
|
||||
ret = -1;
|
||||
goto fail;
|
||||
}
|
||||
+1
-3
@@ -22,11 +22,9 @@ LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=570a9b3749dd0463a1778803b12a6dce"
|
||||
# unbuildable "Nothing PROVIDES 'ffmpeg'" dependency.
|
||||
LICENSE_FLAGS = "commercial"
|
||||
|
||||
SRCREV = "41f6a645068483470267271e1d09966ca3b9f413"
|
||||
SRCREV = "b0841e8c4d156b8403dc1876c4cbd9011eb583f3"
|
||||
SRC_URI = " \
|
||||
git://github.com/mpv-player/mpv;name=mpv;branch=release/${@oe.utils.trim_version('${PV}', 2)};protocol=https;tag=v${PV} \
|
||||
file://0001-opengl-context-require-swap_buffers-param-for-FenceS.patch \
|
||||
file://0002-hwdec_drmprime_overlay-make-the-framebuffer-the-whole-frame.patch \
|
||||
"
|
||||
|
||||
inherit meson pkgconfig mime-xdg
|
||||
Reference in new issue
Block a user