commit 4eba8ade0d69cfea0fd0bf9d6762c32326c0c3f0
Author: Leigh Scott <leigh123linux(a)googlemail.com>
Date: Fri Jun 7 23:01:25 2019 +0100
Enable libplacebo
libplacebo_patch_1.patch | 89 ++++++++++++++++++++++++++++++++++++++++++++++++
vlc.spec | 10 ++++--
2 files changed, 96 insertions(+), 3 deletions(-)
---
diff --git a/libplacebo_patch_1.patch b/libplacebo_patch_1.patch
new file mode 100644
index 0000000..9052c63
--- /dev/null
+++ b/libplacebo_patch_1.patch
@@ -0,0 +1,89 @@
+From 943b3096d213731a92f3932cfba1c593fe48d7d0 Mon Sep 17 00:00:00 2001
+From: Leigh Scott <leigh123linux(a)gmail.com>
+Date: Fri, 7 Jun 2019 22:24:42 +0100
+Subject: Adapt patch from videolan mailing list
+
https://mailman.videolan.org/pipermail/vlc-devel/2019-May/124293.html
+
+---
+ .../video_output/opengl/fragment_shaders.c | 6 ++++
+ modules/video_output/opengl/vout_helper.h | 30 +++++++++++++++++--
+ 2 files changed, 34 insertions(+), 2 deletions(-)
+
+diff --git a/modules/video_output/opengl/fragment_shaders.c
b/modules/video_output/opengl/fragment_shaders.c
+index 8c1f67ee7a..f6fb2be6c5 100644
+--- a/modules/video_output/opengl/fragment_shaders.c
++++ b/modules/video_output/opengl/fragment_shaders.c
+@@ -616,7 +616,13 @@ opengl_fragment_shader_init_impl(opengl_tex_converter_t *tc, GLenum
tex_target,
+ color_params.intent = var_InheritInteger(tc->gl,
"rendering-intent");
+ color_params.tone_mapping_algo = var_InheritInteger(tc->gl,
"tone-mapping");
+ color_params.tone_mapping_param = var_InheritFloat(tc->gl,
"tone-mapping-param");
++# if PL_API_VER >= 10
++ color_params.desaturation_strength = var_InheritFloat(tc->gl,
"desat-strength");
++ color_params.desaturation_exponent = var_InheritFloat(tc->gl,
"desat-exponent");
++ color_params.desaturation_base = var_InheritFloat(tc->gl,
"desat-base");
++# else
+ color_params.tone_mapping_desaturate = var_InheritFloat(tc->gl,
"tone-mapping-desat");
++# endif
+ color_params.gamut_warning = var_InheritBool(tc->gl,
"tone-mapping-warn");
+
+ struct pl_color_space dst_space = pl_color_space_unknown;
+diff --git a/modules/video_output/opengl/vout_helper.h
b/modules/video_output/opengl/vout_helper.h
+index 978669f89c..49a823abb7 100644
+--- a/modules/video_output/opengl/vout_helper.h
++++ b/modules/video_output/opengl/vout_helper.h
+@@ -148,6 +148,18 @@ static const char * const tone_text[] = {
+ #define TONEMAP_DESAT_TEXT "Tone-mapping desaturation coefficient"
+ #define TONEMAP_DESAT_LONGTEXT "How strongly to desaturate overbright colors
towards white. 0.0 disables this behavior."
+
++#define DESAT_STRENGTH_TEXT "Desaturation strength"
++#define DESAT_STRENGTH_LONGTEXT "How strongly to desaturate bright spectral colors
towards white. 0.0 disables this behavior, 1.0 enables full desaturation
(hollywood-style)"
++
++#define DESAT_EXPONENT_TEXT "Desaturation exponent"
++#define DESAT_EXPONENT_LONGTEXT "Controls the steepness of the desaturation curve.
If you set this to 0.0, the curve will be flat, i.e. desaturation always enabled
(hollywood-style)."
++
++#define DESAT_BASE_TEXT "Desaturation base"
++#define DESAT_BASE_LONGTEXT "Controls the starting offset of the desaturation
curve. Brightness values below this base will always be colorimetrically tone mapped
(never desaturated)."
++
++#define MAX_BOOST_TEXT "Maximum brightness boost"
++#define MAX_BOOST_LONGTEXT "Maximum allowed brightness boost to compensate for dark
scenes. A value of 1.0 means no brightness boost is allowed."
++
+ #define TONEMAP_WARN_TEXT "Highlight clipped pixels"
+ #define TONEMAP_WARN_LONGTEXT "Debugging tool to indicate which pixels were clipped
as part of the tone mapping process."
+
+@@ -171,6 +183,21 @@ static const char * const dither_text[] = {
+ #define DEPTH_TEXT "Dither depth override (0 = framebuffer depth)"
+ #define DEPTH_LONGTEXT "Overrides the detected framebuffer depth. Useful to dither
to lower bit depths than otherwise required."
+
++
++#if PL_API_VER >= 10
++#define add_desat_params() \
++ add_float("desat-strength",
pl_color_map_default_params.desaturation_strength, \
++ DESAT_STRENGTH_TEXT, DESAT_STRENGTH_LONGTEXT, false) \
++ add_float("desat-exponent",
pl_color_map_default_params.desaturation_exponent, \
++ DESAT_EXPONENT_TEXT, DESAT_EXPONENT_LONGTEXT, false) \
++ add_float("desat-base", pl_color_map_default_params.desaturation_base, \
++ DESAT_BASE_TEXT, DESAT_BASE_LONGTEXT, false)
++#else
++#define add_desat_params() \
++ add_float("tone-mapping-desat",
pl_color_map_default_params.tone_mapping_desaturate, \
++ TONEMAP_DESAT_TEXT, TONEMAP_DESAT_LONGTEXT, false)
++#endif
++
+ #define add_glopts_placebo() \
+ set_section("Colorspace conversion", NULL) \
+ add_integer("rendering-intent", pl_color_map_default_params.intent, \
+@@ -184,10 +211,9 @@ static const char * const dither_text[] = {
+ add_integer("tone-mapping", PL_TONE_MAPPING_HABLE, \
+ TONEMAPPING_TEXT, TONEMAPPING_LONGTEXT, false) \
+ change_integer_list(tone_values, tone_text) \
++ add_desat_params() \
+ add_float("tone-mapping-param",
pl_color_map_default_params.tone_mapping_param, \
+ TONEMAP_PARAM_TEXT, TONEMAP_PARAM_LONGTEXT, true) \
+- add_float("tone-mapping-desat",
pl_color_map_default_params.tone_mapping_desaturate, \
+- TONEMAP_DESAT_TEXT, TONEMAP_DESAT_LONGTEXT, false) \
+ add_bool("tone-mapping-warn", false, TONEMAP_WARN_TEXT,
TONEMAP_WARN_LONGTEXT, false) \
+ set_section("Dithering", NULL) \
+ add_integer("dither-algo", -1, DITHER_TEXT, DITHER_LONGTEXT, false) \
+--
+2.21.0
+
diff --git a/vlc.spec b/vlc.spec
index d5d552d..c09065c 100644
--- a/vlc.spec
+++ b/vlc.spec
@@ -43,12 +43,12 @@ Summary: The cross-platform open-source multimedia framework, player
and server
Epoch: 1
Name: vlc
Version: 3.0.7
-Release: 1%{?dist}
+Release: 2%{?dist}
License: GPLv2+
URL:
https://www.videolan.org
Source0: %{vlc_url}/%{?!vlc_tag:%{version}/}vlc-%{version}%{?vlc_tag}.tar.xz
Patch0:
https://github.com/RPi-Distro/vlc/raw/stretch-rpt/debian/patches/mmal_8.p...
-
+Patch1: libplacebo_patch_1.patch
BuildRequires: desktop-file-utils
BuildRequires: libappstream-glib
BuildRequires: fontpackages-devel
@@ -126,7 +126,7 @@ BuildRequires: libtiger-devel
BuildRequires: libtiff-devel
BuildRequires: pkgconfig(libidn)
BuildRequires: pkgconfig(libjpeg)
-#BuildRequires: pkgconfig(libplacebo)
+BuildRequires: pkgconfig(libplacebo)
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(libvncclient)
BuildRequires: libupnp-devel
@@ -284,6 +284,7 @@ VLC media player extras modules.
%{?_with_rpi:
%patch0 -p1
}
+%patch1 -p1
%if 0%{?rhel} == 7
. /opt/rh/devtoolset-7/enable
@@ -541,6 +542,9 @@ fi || :
%changelog
+* Fri Jun 07 2019 Leigh Scott <leigh123linux(a)googlemail.com> - 1:3.0.7-2
+- Enable libplacebo
+
* Fri Jun 07 2019 Leigh Scott <leigh123linux(a)googlemail.com> - 1:3.0.7-1
- Update to 3.0.7