Skip to content

This bugfix release fixes a number of minor issues that have come up
since v5.229.1:

Fixes and performance enhancements:
- allow `plplay` to support hardware decoding with EGL
- fix an issue where custom shaders with `//!SAVE MAIN` did not save
- fix a number of minor memory leaks
- fix an issue where custom shaders that tried binding conditionally
  excluded textures generated superfluous errors
- fix an issue where the libav helpers ran into undefined behavior when
  operating on the 128-bit image formats in recent versions of ffmpeg
- fix a build issue on BSD platforms without libdl
- fix an issue where freeing `pl_shader_obj` too early could lead to
  use-after-free errors if shaders still referenced these objects
- fix an issue where applying film grain after debanding could trigger
  an assertion due to a change in bit depth
- fix an issue where film grain generation was unnecessarily verbose due
  to LUT updates
- fix an issue where tone mapping desaturation was not working as
  intended, resulting in strongly oversaturated colors
- fix an issue where the red channel sometimes got unintentionally
  deleted from RGB input images
- fix an issue where AV1 film grain synthesis did not work on pictures
  above 12 bit depth, such as could be the output of a previous filter
- remove an unnecessary assertion that caused build issues on some
  versions of clang
- fix an issue where we unintentionally used linear downscaling on HDR
- fix an issue with false negatives in the PL_GAMUT_WARN algorithm, and
  also change the algorithm to make it more visually obvious
- fix an issue where OpenGL on WSL2 was unintentionally rejected as a
  software rasterizer