Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/haasn/libplacebo

Official mirror of libplacebo
https://github.com/haasn/libplacebo

shaders/deinterlacing: add missing PL_API macros

Simple oversight.

0fc6a1a678afca5c0caeec41d9c48d1ed5d2221b authored almost 2 years ago
vulkan/malloc: fix double-unlock of mutex

Oops..

02540124a1a40a57bf108276583ade0e52f6f415 authored almost 2 years ago
renderer: suppress dynamic HDR metadata in frame mixer

To avoid constant recompilations due to mixing between frames of
different source brightness (be...

7d2569a2b34d6854691bd65a869ecd3eb5c05439 authored almost 2 years ago
tone_mapping: don't use BT.2446a for HDR<->HDR conversions

This is designed for SDR<->HDR, so prevent using it for HDR<->HDR out of
the box.

4d26b3d6d4e4e063f5b89b2bfc8dd63b19845a80 authored almost 2 years ago
shaders/colorspace: move margin to peak detection shader

Instead of having to replicate this logic at every usage site, the
number of which is about to g...

373afb727c7c74dcfd0bebe93155baa29dd0fd33 authored almost 2 years ago
tone_mapping: don't pick ST2094 for inverse tone-mapping

This has no inverse curve, so don't default `auto` to it.

efcc1e50cf49186f3fd4784f5b72f6d2ded5a7a8 authored almost 2 years ago
shaders/colorspace: add tone mapping visualization

Infinitely useful during development, no need to constantly NIH this
patch or re-invent it ad-hoc.

258cf937bfdf56f188bf027f857866cf396d8f6b authored almost 2 years ago
tests/gpu_tests: add more tone-mapping tests

Especially for the pure BPC GLSL fallback path

b2c9bbb07af2d0f1288f8c8e944c1d783fccc1b8 authored almost 2 years ago
shaders/colorspace: use perceptually linear pure BPC

It's not that hard to convert to PQ and back in pure GLSL, so we might
as well do that for pure ...

d1bacd8912db4da9351c1fa27c33d60f33f802c3 authored almost 2 years ago
tests/tone_mapping: also test pure BPC generation

Tests the fallback path for inverse tone-mapping on functions without
inverse tone mapping curves.

b75a62e588b35b09bde67790bd3817985a0585b3 authored almost 2 years ago
tone_mapping: improve default BPC method

Always do BPC in PQ space instead of the function's native space,
because this produces signific...

88dce4511b191f0208ae9221e0003e8adfae44ca authored almost 2 years ago
tone_mapping: fix ST2094-40 for D != T

The D > T branch had a number of fatal issues. One, the `p / N`
calculation was accidentally rou...

49007970e9b4cd9aa078559dd33bd2b6f6d697a2 authored almost 2 years ago
gpu: require pl_buf_copy src != dst

I just realized this is probably horribly broken on at least the vulkan
backend, and isn't usefu...

36e453651e193100484d5290c0ce0ec51223296f authored almost 2 years ago
vulkan/buf: fix whitespace

5a7dacee02f64f236bf2b5939d3fe75aefe316af authored almost 2 years ago
vulkan/gpu: add vk_gpu_idle_callback

To safely attach a callback to the "GPU idle" state, replacing code
duplication of previous cons...

18f6d1859ad245f0ef6d1c2aa48ff2fd486db232 authored almost 2 years ago
vulkan/pass: fix thread unsafe static array

This array was never supposed to be static.

09e6ae38e99ffd904b3b0143bfa380487f563d26 authored almost 2 years ago
tests/gpu_tests: use MEMEQ for pl_planar_tests

Mostly just to dump the array on failure.

f2c4da9d6121bb330c9fff640aad40e98c081190 authored almost 2 years ago
tests: remove unneeded feq() function

Replaced by the almighty REQUIRE_FEQ().

11a0932c8b754e9ea796065dd94b780a126c4995 authored almost 2 years ago
tests/colorspace: switch to new REQUIRE macros

4eca348bf336696796bae1479003a0987738f4ac authored almost 2 years ago
tests/common: switch to new REQUIRE macros

And also fix some typos along the way...

ea53dda1952228836925b78f94efc8ef74e26e21 authored almost 2 years ago
tests/dav1d: switch to new REQUIRE macros

4124139f586587318c24d80ce5238138979cbfd8 authored almost 2 years ago
tests: add REQUIRE_FEQ() macro

This can be used to do floating point equality comparisons while also
logging error values verbo...

9613df022b85f6350ddf0779062d3676964469d9 authored almost 2 years ago
tests/tone_mapping: switch to new REQUIRE macros

6929d2e2ac0de25304d3bc9876652b5a7c9757ae authored almost 2 years ago
tests/vulkan: switch to new REQUIRE macros

25ce18b47c0019fa777a4dbba5feb12038ba2d37 authored almost 2 years ago
tests/utils: switch to new REQUIRE macros

30e21b0e29cd4b712c7cf24137e89fdce5f0d5b2 authored almost 2 years ago
tests/string: switch to new REQUIRE macros

80ad7f68250fd2b3842b71480f4e4866572f1eb9 authored almost 2 years ago
tests/opengl_surfaceless: switch to new REQUIRE macros

d92ec4152ff208c5cfe1aa250a5cc26ed50567b0 authored almost 2 years ago
tests/gpu_tests: switch to new REQUIRE macros

8325cede4fb8b5eae8a7dec6b64a6c13c852ec69 authored almost 2 years ago
tests/libav: switch to new REQUIRE macros

9023a5542b5f4c43db2cfff40dc73d52aea0b5f5 authored almost 2 years ago
tests/icc: switch to new REQUIRE macros

2be0716fbca7cedc518ba81676f887f03b630b47 authored almost 2 years ago
tests/filters: switch to new REQUIRE macros

151843298cd904106e2bdd9d4a5faa07467d70d2 authored almost 2 years ago
tests: add REQUIRE_MEMEQ() macro

Actually prints out the offending memory regions. Very useful for
debugging, to avoid having to ...

55c858555e96f9ad8dc929a769d6b3251441ead7 authored almost 2 years ago
tests/dummy: switch to new REQUIRE macro

06097120ff9d9c703160f54753d7580aa500aa4c authored almost 2 years ago
tests: add REQUIRE_CMP() macro

This can be used to make generic operator comparisons while logging
failure condiitons with expl...

14c11d0f3ba12ff768aed663b63292e70d5f08d8 authored almost 2 years ago
tests: refactor REQUIRE() into macro

Mostly for consistency with the other macros that I'm about to add.

a9c8741457bcadd272aca3ba16cb79b96939614e authored almost 2 years ago
tests/dummy: make less verbose

No need to print this garbage

11844e9ff0cb60f9f46a0d17c83f8db7d1532539 authored almost 2 years ago
tests/gpu_tests: fix missing semicolon

These commas should be semicolons...

6998fe0f39e73f2553536716db9f3e1b00a46848 authored almost 2 years ago
gitignore: ignore 3rdparty dir

77e101a7306819d7ad0173aeb1c2f96a64a5d808 authored almost 2 years ago
tone_mapping: avoid over-brightening in ST2094

Clamp the output average to sqrtf(1.2) * the input average. or about
10%%. This allows brighteni...

90ff00eb609c51032799036564714108ffbab861 authored almost 2 years ago
tone_mapping: add SMPTE ST2094-10 and ST2094-40 Annex B

The implementation for ST2094-10 is straightforward by just copying
equations from the correspon...

f8a5332c6d52f2b9275cc0c07c552e83609ef64b authored almost 2 years ago
colorspace: add HDR10+ metadata to `pl_hdr_metadata`

Based on SMPTE ST2094, and in particular A/341 ATSC 2094-40. We should
keep track of this so we ...

0994b6e4ec62a6159e13b5637cf589dcad7a2248 authored almost 2 years ago
common: add PL_MAX3

Based on FFMAX3

a8135f47cf6a1c4b0cf7238a03fb336295bdc8bd authored almost 2 years ago
tone_mapping: default to ST2094 when metadata present

This generally produces good results in such a case. ST2094-40 is better
than ST2094-10 even in ...

1f1d708e22c7db579b0190aa5292bbc45bd9dfaf authored almost 2 years ago
shaders/colorspace: implement ST2094-40 MaxSCL gain

In SMPTE ST2094-40, it recommends applying an extra gain parameter to
raise the brightness of ve...

94d8293164cfc1ea0af310a5974bec024d314559 authored almost 2 years ago
shaders/colorspace: mark tone-mapping LUT as dynamic

When HDR metadata is present, because this is expected to change
semi-frequently.

434bdddb2156ed4936174aad4014b8e7a3218b30 authored almost 2 years ago
tone_mapping: make HDR metadata available to tone-mappers

By just sticking it inside `pl_hdr_metadata`, happen what may.

We don't need access to the outp...

812586a54a13ea618097760fc4514abcb8f49e2c authored almost 2 years ago
tone_mapping: fix comment on spline implementation

85847a8a6bd2a5cf6ebab3e88453370821aeb2e3 authored almost 2 years ago
utils/libav: add `pl_map_hdr_metadata`

This not only exposes the previous logic to users, but also adds support
for AVDynamicHDRPlus. U...

c8f5211579d7d45bb8f2d3cae07c66357c446e7b authored almost 2 years ago
utils/libav: fix deprecated struct name

ae1e2398f5c9da2725f1a9158925f6dee1e0257d authored almost 2 years ago
utils/libav: don't pollute namespace

Prefix this #define

2b0931b7b8e15cccc0d9db62a7d4bb4b8757d84c authored almost 2 years ago
renderer: disable peak detection with per-scene metadata

Redundant in this case, since the per-scene values are both
authoritative and significantly more...

462ec51e2eee4ab99bf48ac38deda727e5563813 authored almost 2 years ago
colorspace: refactor HDR levels fields

So, I was growing increasingly dissatisfied with the need to override
the HDR mastering display ...

edad2c4109d04d3422492972f8248f7bb2899629 authored almost 2 years ago
utils/frame_queue: add missing ref count init

This fixes memory leak of frames which had ref count initialized to 0
and `pl_rc_deref` would ne...

c71b5321760eaf951f9810aef02333c8c5fa73fd authored almost 2 years ago
shaders/custom: properly release hook on error

624e0f5ff956858c404fa8a6f90a5f14f1ae15af authored almost 2 years ago
tests: fix memory leak in pl_ycbcr_tests

ce6f96229c22e1b397678dd6946e92c6f08c2391 authored almost 2 years ago
shaders/custom: zero init hook allocation

There is 4 bytes padding in `pl_hook` struct, which makes MSAN unhappy
when we do `pl_mem_hash` ...

e38753bfe22e79d3e45672c32b18dcccabf1d84a authored almost 2 years ago
opengl/context: disable SSBO on GLSL < 140

The layout of variables inside an SSBO is implementation-defined making
it not really safe to us...

6c30dde310a2562bf0fac7f569dc9a2ac42ca7b9 authored almost 2 years ago
tests/lut: destroy pl_gpu_dummy when we are done

To make leak detectors happy

56abbd26b6355222d91a3e98ed3ea527fce7f979 authored almost 2 years ago
tests: use double for RANDOM_U8

To fix warning implicit conversion from 'int' to 'float' changes value
from 2147483647 to 214748...

9317316e2ba31db921ee67ad887b75f9baaf21bf authored almost 2 years ago
gpu: remove const in pl_tex_blit_compute

This fixes error on 4.1:
error: initializer of const variable `pos' must be a constant expression

d0e3699b1f2c7c869ea25af25f5ea6b9073b62a1 authored almost 2 years ago
tests/opengl_surfaceless: test more versions

11398f0e8a906f92b55a14b8143964c54f7c019f authored almost 2 years ago
utils/upload: silence scan-build warning

This one is a false positive, so just add an assert to silence it.

855280962b3f5adb453e53d89ea20387e25a1a81 authored almost 2 years ago
renderer: fix scan-build warning

It doesn't like referencing values as part of the same struct
initialization.

29dd6e48ec0723544f8140a212b6ca3e9e4fc575 authored almost 2 years ago
opengl: also load ARB_program_interface_query

Needed to load gl->GetProgramResourceIndex on GL <4.3.

Fixes: https://code.videolan.org/videola...

135e8f9f129e1c195d9ba94d21660589c49f9710 authored almost 2 years ago
utils/upload: mask big-endian data from pl_recreate_plane

This is probably nonsensical, since the plane swapping only happens
inside `pl_upload_plane`.

72b2c020150880041d32b42071ea7d3e517d6873 authored almost 2 years ago
d3d11: do not leak IDXGIAdapter4

b76cc9fdccd90a4f21e97a395677cea35695e7da authored almost 2 years ago
tests/libav: test support for big endian format mapping

Test for both 3- and 4-component formats, which ought to cover the lot.

dc37ee797fcd761115ad6be9cecc70f7c53e506f authored almost 2 years ago
vulkan/buf: refactor memory selection logic

Make a number of changes to this logic in the hopes of picking stupid
combinations (like device-...

36ed28fc340983b4c4d4f2e0dea0d4619affd266 authored almost 2 years ago
tests/libav: test to make sure no avpixfmt crashes

723fd776db60cbc64914a523d94fc835af656fb8 authored almost 2 years ago
utils/libav: don't crash on rgb565be or x2rgb10be

These two formats currently result in an assertion failure due to being
encoded in a format that...

4272161591a06d44634fe0b180bddf43e2ee5dd8 authored almost 2 years ago
ci: update aarch64 image to jammy

34835565ccfaae830158768181bbbf423a7e41b1 authored about 2 years ago
tests/vulkan: fix bug when VK_KHR_surface is missing

We call vkDestroySurfaceKHR indiscriminately, even if VK_KHR_surface was
not even enabled. (Sinc...

da0c8b2b7ccc15349eb0654c8232e0947e37ecc3 authored about 2 years ago
d3d11/utils: move return unknown outside switch

All those values need to be handled and removing defualt case enables
compiler warning if someth...

a76281c890531b283edcdb3b8d117ecf21dee09f authored about 2 years ago
demos/sdlimage: add noreturn attr to uninit

Supresses warning about no return value from main()

3cec6d6f052e9f0c5d02d4ea33a09edceb807b81 authored about 2 years ago
demos: update nuklear dep to 4.10.5

Fixes some compilation warnings.

04b8ee2b05c401e0606cf3f7c9afeeca4be54b26 authored about 2 years ago
demos/plplay: print values only if they are available

Insteand if printing big negative duration just skip it. Add TBR and TBN
print.

06213bb4ad039612f05bf8d480b6709efe9b0520 authored about 2 years ago
ci: rollback llvmpipe image to last known good version

Works around an llvmpipe crash in the latest version of mesa.

See-Also: https://gitlab.freedesk...

20010a1d39c200f3e182d236ed2041ab1827dbae authored about 2 years ago
ci: update jammy image to include d3d11 deps

Now we can finally actually compile this code. Yayifications?

e2484ccd91a227c11ddd21ff3960b859eab36791 authored about 2 years ago
d3d11/utils: suppress enum warning

On my end, I get a -Wswitch warning about these values not being members
of the DXGI_COLOR_SPACE...

0698c063fdf27feef43977563d0a684b8064abc1 authored about 2 years ago
tests/d3d11: skip test if CreateDXGIFactory1 fails

This fails inside the headless build environment.

0d42e5c55ff535bd1936e77b10cdc19be8ff7f27 authored about 2 years ago
gpu: add endian swapping helper function

Useful for uploading endian-swapped buffers. Not exposed publicly
because using it correctly com...

e5b3d65e15ab77a123ff2d9e330b9952f3352da4 authored about 2 years ago
utils/upload: support uploading non-native endian data

In practice, this refers to big endian formats. This is done using the
new `pl_buf_copy_swap` he...

fc25e747fa2402d9c288f7ab51477ad00d44fbe1 authored about 2 years ago
utils/libav: support big-endian formats

By setting `pl_plane_data.swapped` to true. Also try and create storable
DR buffers when serving...

016058d2b681a4fdc50d8df7e749f1d03a117721 authored about 2 years ago
tests: add test for pl_buf_copy_swap

And also perform some stylistic fixes on the other functions in here.

22dc313f729009f4944f205bc1fa70a8104ecb88 authored about 2 years ago
d3d11: drop unneeded pl_dispatch object

d24fd0f4d124eef43774e8aef5592ffd305257cb authored about 2 years ago
vulkan: drop unneeded pl_dispatch object

6250bb0140080055360cd0fa049dc8f854d56298 authored about 2 years ago
gpu: use internal pl_dispatch for helper functions

Greatly simplifies the process of calling these.

5e0b7b0b5b5acb8a70b7b95a3f10fa635f690b1b authored about 2 years ago
gpu: add generic GPU-internal dispatch object

To avoid having to feed a `pl_dispatch` into all of the backend-agnostic
helpers. Motivated by a...

6b86a9078e0cb134c9ae31f6bab205b0eba38a55 authored about 2 years ago
common: switch to PL_DIV_UP helper

Reduce boilerplate.

864233aeba0b08d03f912a271824f5d144cf49ce authored about 2 years ago
common: add PL_DIV_UP helper

Logic equivalent to this is used in many places.

c417b58ce690f6a006f0736bc2f7231e99fc7bae authored about 2 years ago
dispatch: specify SSBO binding points more liberally

This is actually valid on all versions of GLSL (that support layout
qualifiers), because the SSB...

8fba3ed38aa4d51fa0c9a107df1ac1844c48cbd3 authored about 2 years ago
opengl: properly set uniform block locations

UBOs and SSBOs in OpenGL cannot be set using glGetUniformLocation, they
must instead be updated ...

05924875a7c201f2783bf54f43da6bf41e8e3aee authored about 2 years ago
common: add pl_require validation assist macro

Rather than copy-pasting this defininition around.

3a12baa39cac677c5a0f0891cb6dc9502688d407 authored about 2 years ago
gpu: outsource utility functions to gpu/utils.c

And leave "gpu.c" purely for the pl_gpu function wrappers and public
helpers from <libplacebo/gp...

49b62b98eef8a7e2df428a001c63a09a3f27e6a3 authored about 2 years ago
ci: update focal images to jammy

Excluding the aarch64 images for now as a result of being blocked by
https://code.videolan.org/v...

08b3f1d53de22edb89665d3b5fab886798e1638d authored about 2 years ago
colorspace: add missing XYZ whitepoint adjustment

Acording to SMPTE EG 432-1 Annex H, white point of DCDM X'Y'Z' is equal
energy, so adjust that t...

438a921bd6cfb5eb05981fafc8416353b945e54c authored about 2 years ago
utils: update dav1d and libav mappings

f05fb366993341c23608f2edb27f6aa2914f2d68 authored about 2 years ago
colorspace: clarify what format XYZ system is in API

This should make clearer how to use encode/decode color.
PL_COLOR_SYSTEM_XYZ is expected to be D...

17eb95de7d7837173a481e0d44b6d0814545f4c5 authored about 2 years ago
colorspace: add PL_COLOR_TRC_ST428 as defined in ST 428-1

fb898add4ffad7798883e150ccfc5b9f1d48009d authored about 2 years ago
shaders/colorspace: unconstify hi/lo variables

This fixes too frequent recompilation of pl_shader_dovi_reshape

9eb157c08819a09c212e07d41288373ed293212d authored about 2 years ago