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
9d7a49df81d92586f366db630db004a46582a99e authored almost 7 years ago by Niklas Haas <[email protected]>
In addition, also use the bits structure's sample depth as authoritative
instead of the FBO form...
1. Fix typo in the alpha premultiplication step
2. Don't blow up on division by zero
This is a functional counterpart to pl_shader_decode_color, used in the
output path where requir...
0038806daa9693291f1ae09b5150a6bb6e1bbdd4 authored almost 7 years ago by Niklas Haas <[email protected]>
This is done by adjusting the output coordinate before writing to the
framebuffer. We also need ...
Using the pointer to the local variable here meant that we didn't
correctly NULL it with pl_disp...
This avoids spamming the stderr with error messages
1f1254d3d9f62111accfa7cc8f4ce578a9bf0155 authored almost 7 years ago by Niklas Haas <[email protected]>
This also includes logic to prefer flipping in the dst_rect rather than
the src_rect, because th...
Flipping the source like that really screws with the compute shader
rendering. We can work aroun...
Not actually sure if it helps or not, but might as well set it because
we can.
The illustration for matrix memory representation was off
92550ffb174c58923f54d60f563d9c0e7c48c78e authored almost 7 years ago by Niklas Haas <[email protected]>This caused the src_rect to be incorrect when x0 != y0
91788da1dfabd9904f5fcde3d56a0e2c62f71edf authored almost 7 years ago by Niklas Haas <[email protected]>44589895c480e47496e441dc575ff1d1410554de authored almost 7 years ago by Niklas Haas <[email protected]>
Not sure if it wouldn't be better to expose an entire
pl_sample_filter_params for each sampler. ...
Just infer this from the pl_render_default_params and override what we
care about.
The logic for this is pretty similar to mpv's, although we also allow
linearization (but not sig...
Taken from mpv, with some slight GLSL version compatibility changes as
well as a minor optimizat...
454212ef39a1864f7e00c6877d5b716aecade4a5 authored almost 7 years ago by Niklas Haas <[email protected]>
This requires keeping track of potentially 8 different FBOs, depending
on which combination of u...
Now that it's supported
8b03ecb1e45d7afc48bc6a0771427c2c9189fda8 authored almost 7 years ago by Niklas Haas <[email protected]>
This requires the use of multiple passes. Not yet supported by the
renderer, but the underlying ...
This is needed for the 2D separated scaling LUTs.
c29d1d35f0ace2c5d7c1183a93c83a12703ee085 authored almost 7 years ago by Niklas Haas <[email protected]>
This has to be radius 1 to work properly for orthogonal scaling, since
the code can't handle odd...
This adds support for using the GPU-native scalers where equivalent, and
also slightly restructu...
Since I'll reuse this for separated sampling. Also slightly refactor
filter_compat to also check...
1. disable vsync
2. add a timer
3. use a heavier upscaler (just for fun)
This gets annoying while testing. Yes, I realize that's bad, but there's
nothing else I can do r...
This bug meant we didn't fully initialize the input array for
non-square upscaling ratios (heigh...
- remove (now) redundant imports
- make the renderer parameters customizable
Most of these are needed to properly use/configure the renderer anyway.
Just do our importers a ...
Makes more sense there, I don't know why I ever moved it to begin with.
acb508abbea94574aef885b623c7667901c67af7 authored almost 7 years ago by Niklas Haas <[email protected]>
In some cases, the destination colorspace is known but the source is
not. In these cases, the `n...
afd23dd727ede6b5ae671d20a9eda42de2f12021 authored almost 7 years ago by Niklas Haas <[email protected]>
This only got set during pass creation, so the dispatch would get
(erroneously) cut off during w...
3c548bd49dd4f04dc5781cfaaf157152965eb2e6 authored almost 7 years ago by Niklas Haas <[email protected]>
Turns out these structs are more or less identical anyway, so just
provide a helper converting t...
d7973d5d9f60227672592a385de6e4c03faddf63 authored almost 7 years ago by Niklas Haas <[email protected]>
Mostly for my own testing purposes. Now I can actually test out the
renderer without having to j...
As an aside, don't leak a shader when erroring.
d68a4010e01c6cddec1fd76a6fb8d7d7066aa32c authored almost 7 years ago by Niklas Haas <[email protected]>
This makes it a bit clearer that these functions are designed to consume
the sh, by overwriting ...
This makes sure we avoid leaking them if pl_shader gets implicitly freed
without dereferencing t...
Slightly useless otherwise when the path is included.
384e83251cc15118c83b723752c22da6bbf615d2 authored almost 7 years ago by Niklas Haas <[email protected]>
Turns out this was using `i` instead of `c` (and in one case, no index
at all - leading to a wro...
This was completely wrong
d3a5e99cae967156ca177e463d6b8b27ce48c9dd authored almost 7 years ago by Niklas Haas <[email protected]>9f7c649af7b4f7ff679f50b53977258eccb70dd5 authored almost 7 years ago by Niklas Haas <[email protected]>
287d194f379bc0b66bbbf8eaa9ed0478a6dd2915 authored almost 7 years ago by Niklas Haas <[email protected]>
Instead of trying to include them relatively. This probably avoids
headaches down the line.
- make it accept the filename on the command line
- make it use the new format conversion helper...
These were weird, and also wrong. Fix them. Incidentally, I should
probably change all of the he...
Makes sure they're actually used in the test framework.
19b5c3cc2a3cd88cd1c71f4ef8a3d9f563422f0b authored almost 7 years ago by Niklas Haas <[email protected]>
This family of helpers will hopefully make it much easier for users to
pick suitable image forma...
clang warns due to the unnecessary int->float conversion. As an aside,
I accidentally wrote targ...
Pretty much the most stupid/naive thing I could come up with in order to
get a picture onto the ...
These were invalid for 1D/2D textures. Also add another check to make
sure we aren't blitting fr...
Instead of doing both as part of the same pl_vulkan_create call, split
off instance creation to ...
output_h was accidentally set to output_w, which caused some shaders to
fail for non-square fram...
Mostly ported from mpv, but some parts were slightly rewritten. Notably,
the way window resizing...
It's not so unstable anymore, since this design seems to be working so
far.
Largely inspired by mpv's, with some changes (mostly relating to
metadata - which we attach to e...
Note: One of the new comments references pl_vulkan_create_swapchain,
which technically doesn't e...
80e0d5b9e3b01f8c0844717cb97961903dc30c52 authored almost 7 years ago by Niklas Haas <[email protected]>
- one typo fix
- update an outdated section
Make sure buffering doesn't eat crash logs, bump up the test duration,
and add a baseline test.
Instead of using a single gradient, use something slightly more
"complicated" (neatly arranged c...
Polar sampling, HDR tone mapping, more debanding
77b725ddc8af218e04fa3829cb325cb201568033 authored almost 7 years ago by Niklas Haas <[email protected]>
As pointed out by @tdaede, we can just re-use the RB' from before
linearization instead of havin...
This just measures raw throughput by rendering to off-screen FBOs as
fast as possible and seeing...
This was fixed and subsequent releases of SPIRV-Tools have been made.
There's no reason for this...
This allows us to remove some work-arounds for old loader versions. I'm
not entirely sure what m...
`run_command` on an unknown/missing command always terminates the entire
build. Since there's se...
Signed-off-by: Sebastian Ramacher <[email protected]>
393bf0cc6c760e0f1d44b9de0ee9660825ce409e authored almost 7 years ago by Sebastian Ramacher <[email protected]>617a79af53918e39fd092d0555d09beb3e5c7a63 authored almost 7 years ago by Niklas Haas <[email protected]>
cosmetic (whitespace), and assert -> pl_assert
3a3ed5d8d8df0627f01d4fe96f5f9827db0a0323 authored almost 7 years ago by Niklas Haas <[email protected]>e79a8a4a6dad9cfddf2632c1ce91e80036d72721 authored almost 7 years ago by Niklas Haas <[email protected]>
3b5fd083f8064a84ef1fe081f1bb9b2aa71b7e38 authored almost 7 years ago by Niklas Haas <[email protected]>
64a57a4279728aad5d51c403cbe40f71d9a68c24 authored almost 7 years ago by Niklas Haas <[email protected]>
Redesign vk_poll_commands to only wait for the completion of some
commands, rather than repeated...
`ra` can't always be dereferenced.
ab2201ccecbdc61051b519b2d50fcdc7162aeae2 authored almost 7 years ago by Niklas Haas <[email protected]>round() is only available in GLSL 130+
397a4ed096e9b146190df23e91677ec094896dae authored almost 7 years ago by Niklas Haas <[email protected]>
The algorithm is ported from mpv; with some minor modifications (AVLFG
-> rand()). Blue noise is...
I forgot to actually set obj->ra after initializing the shader object
2dfb70666f0c0409d5246b464036d5f12b7f74c0 authored almost 7 years ago by Niklas Haas <[email protected]>
1. Drop the use of UBOs and SSBOs; since not only are there unaddressed
packing concerns, but...
Apparently 3.5 is unavailable now
59eab2cdc0a6b1a818c0343738aa2234996aacea authored about 7 years ago by Niklas Haas <[email protected]>
This refactors the way we store data like scaler LUTs, with the intent
of generalizing it for ot...
Still needs adjusting for the compute shader path, but the fragment
shaders work for now. Also w...
Instead of the src_rect. This is needed if the src_rect is not an
integer crop. In theory, we co...
While on Linux it works fine to not specify one, as Linux will fill all
not given ones from the ...
two-step scaling, FBO caching, etc.
For some reason this still produces garbage output when usi...
204a3f2d77677704cda4e0adc65dd82c9eab67f6 authored about 7 years ago by Niklas Haas <[email protected]>8484aea81fff4f7edb8c24efa11889aac7a6d5bc authored about 7 years ago by Niklas Haas <[email protected]>
This accidentally specified the pipeline stage twice, once as the access
mask.
Not entirely sure if this logic is correct yet, but the change certainly
goes in the right direc...
29b0e581bea2c823cba88e341f77692b484548b7 authored about 7 years ago by Niklas Haas <[email protected]>
Adds some of the preliminary logic like FBO selection, LUT caching, and
so forth. Still no suppo...
Might as well point this out. Hopefully this will change soon.
75d14556c5c11b79c2623b6edc6b081b27279d62 authored about 7 years ago by Niklas Haas <[email protected]>
Several things were outdated, or left over from an earlier version of
libplacebo during which th...
To prevent anybody from getting any funny ideas
3692c2600ca9490317325451350ec53878dd40ad authored about 7 years ago by Niklas Haas <[email protected]>
This is mostly there to give us an idea of what the API will look like,
and also adds some skele...
This blows up otherwise on 32-bit frame buffers. Honestly, we could
probably just disable dither...
Better names to avoid clashing with other vertex attribs, more
descriptive failures