libplacebo: update 7.349.0 -> 7.351.0

This release mainly introduces a variety of miscellaneous bug fixes, alongside two minor / maintenance changes.

Additions:

    add pl_{opengl,vulkan,d3d11}_params.no_compute to suppress the use of
    compute shaders
    add pl_cache_{set,get}_file()

Changes:

    libav vulkan interop now requires lavu 58.11.100+ and vulkan 1.2.175+
    "sinc" filter preset radius dropped from 3 to 2

Fixes and performance enhancements:

    fix compilation of fuzzer test
    fix shader variable renaming loop
    fix error when the same gpu descriptor is used twice in one shader
    don't expose unsupported d3d11 formats
    fix rendering with flipped planes and user shaders
    fix rendering of textures with unusual channel order
    don't apply sigmoidization to alpha channel
    attach correctly normalized extension list to vulkan device creation
    fix orthogonal scaling fast path leaking garbage pixels
    some GLES 2.0 fixes
    fix DCDM XYZ decoding into DCI-P3
    fix build with glslang 15
    fix compilation without nuklear
    fix backwards compatibility with pl_render_params.skip_target_clearing
    correctly output requested alpha mode
    preserve alpha channel when blending subsampled formats
    multiply plane scale even when not scaling
    propagate correct plane format after plane merging
    fix build with instrumentation enabled
    fix bug where layout transitions happened too early in some cases
    fix handling of promoted extension and function names
    don't scale alpha when blending low bit depth YUV planes
    fix build error with recent libavformat
    fix plane channel order when merging planes
    invalidate shader cache when GL version strings change
    fix compute shader promotion for flipped outputs
    fix upload of YUVA formats with reduced bit depths

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Markus Volk 2025-06-07 17:49:15 +02:00 committed by Khem Raj
parent 58827344ab
commit 3f77bb395c
No known key found for this signature in database
GPG Key ID: BB053355919D3314
3 changed files with 2 additions and 78 deletions

View File

@ -1,40 +0,0 @@
From ad0bbc5099d99bbb0c914b39cb5ab4920fd6eeda Mon Sep 17 00:00:00 2001
From: Gyorgy Sarvari <skandigraun@gmail.com>
Date: Sun, 16 Feb 2025 14:23:40 +0100
Subject: [PATCH] Fix compiling demos without nuklear
Demos can't be compiled if nuklear headers are not present, because
the implementation of parse_args function is guarded by HAVE_NUKLEAR macro.
To allow compiling demos without the Nuklear headers, move the implementation
outside of this ifdef.
Upstream-Status: Submitted [https://github.com/haasn/libplacebo/pull/315]
---
demos/settings.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/demos/settings.c b/demos/settings.c
index 197e8b7e..73f0e5b9 100644
--- a/demos/settings.c
+++ b/demos/settings.c
@@ -14,9 +14,6 @@
#define PL_BASENAME basename
#endif
-#ifdef HAVE_NUKLEAR
-#include "ui.h"
-
bool parse_args(struct plplay_args *args, int argc, char *argv[])
{
static struct option long_options[] = {
@@ -89,6 +86,9 @@ error:
return false;
}
+#ifdef HAVE_NUKLEAR
+#include "ui.h"
+
static void add_hook(struct plplay *p, const struct pl_hook *hook, const char *path)
{
if (!hook)

View File

@ -1,34 +0,0 @@
From d18a23cc275576bcefbdcc179d08ae643eeb3f3e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Mon, 2 Dec 2024 17:10:00 +0100
Subject: [PATCH] meson: add glslang lib for 15.0.0 linking
Glslang 15.0.0 moved some code around, add also linking to glslang,
while this is not needed for older versions, it will still work.
Unfortunately CMake config embedded in distributions is not usable
without installing additional package like glslang-tools, because at
least Ubuntu splits it. On Arch it would work, but generally the CMake
config require cmake binary to work also, so let's keep it as-is for
now.
Upstream-Status: Backport [https://github.com/haasn/libplacebo/commit/056b852018db04aa2ebc0982e27713afcea8106b]
---
src/glsl/meson.build | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/glsl/meson.build b/src/glsl/meson.build
index 5a881960..8fb5e699 100644
--- a/src/glsl/meson.build
+++ b/src/glsl/meson.build
@@ -39,6 +39,10 @@ elif not glslang_req.disabled()
glslang_deps += spirv
+ # Glslang 15.0.0 moved some code around, add also linking to glslang, while
+ # this is not needed for older versions, it will still work.
+ glslang_deps += cxx.find_library('glslang', required: required, static: static)
+
if static
glslang_deps += [
# Always required for static linking

View File

@ -4,10 +4,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=435ed639f84d4585d93824e7da3d85da"
DEPENDS += "fastfloat glad-native python3-mako-native python3-jinja2-native vulkan-headers"
SRC_URI = "git://code.videolan.org/videolan/libplacebo.git;protocol=https;branch=v7.349 \
file://0001-meson-add-glslang-lib-for-15.0.0-linking.patch \
file://0001-Fix-compiling-demos-without-nuklear.patch"
SRCREV = "1fd3c7bde7b943fe8985c893310b5269a09b46c5"
SRC_URI = "git://code.videolan.org/videolan/libplacebo.git;protocol=https;branch=v7.351"
SRCREV = "3188549fba13bbdf3a5a98de2a38c2e71f04e21e"
inherit meson pkgconfig