1. 04 Jun, 2021 17 commits
    • Hugo Beauzée-Luyssen's avatar
      48e6a427
    • Niklas Haas's avatar
      libplacebo: add support for custom shaders · db6f8b7c
      Niklas Haas authored
      It's finally time to use RAVU/FSRCNN(X)/NNEDI3/Anime4K in VLC.
      
      Currently limited to only one shader, which isn't a huge limitation
      seeing as you can just `cat` together as many shaders as you want to use
      into one big file. But patches welcome(tm).
      db6f8b7c
    • Niklas Haas's avatar
      libplacebo: add support for custom LUTs · 7de45dac
      Niklas Haas authored
      Unfortunately the UI for loading these is a bit clunky as they're hidden
      behind so many layers of menu and advanced options, plus the fact that
      the new LUTs still only get applied on vout reinit.
      
      But it's still a feature that a lot of users have requested heavily, so
      supporting them at all is a good thing. The implementation is rather
      straightforward even though the amount of #ifdef's are really getting on
      my nerves.
      
      Can somebody just time travel me into a future universe in which I can
      make libplacebo v4 the minimum dependency?
      7de45dac
    • Niklas Haas's avatar
      libplacebo: remove trailing \ · 71a72062
      Niklas Haas authored
      Cosmetic. Side note: I really, *really* hope this commit title breaks
      something, somewhere.
      71a72062
    • Niklas Haas's avatar
      opengl: drop redundant code path · fb4e794c
      Niklas Haas authored
      This is redundant with the minimum version requirement being 1.7.
      
      I sure can't wait until the next bump up to 1.29.0. All these ifdefs
      keep reminding me of my failure to design a good API on my first try.
      fb4e794c
    • Niklas Haas's avatar
      libplacebo: fix use-after-free on uninit · e4a584e3
      Niklas Haas authored
      `pl->ops->close` destroys the GPU instance, after which the swapchain is
      undefined. Fix it by moving the swapchain destruction to `ops->close`
      itself, where it can be done in the correct order.
      
      (This also fixes a bug where, technically, the opengl instance attempted
      destroying the swapchain while the context was not current on the
      thread)
      e4a584e3
    • Niklas Haas's avatar
      libplacebo: rewrite picture placement logic · fe6ec4ce
      Niklas Haas authored
      Recent versions of libplacebo use `pl_frame.crop` instead of
      `pl_render_target.dst_rect`, for which the latter is now merely a
      fallback.
      
      Unfortunately, `pl_render_target_from_swapchain` ends up setting the
      former field to values based on the swapchain dimensions, so the values
      we set in `dst_rect` accidentally ended up ignored. In retrospect, this
      was caused by the upstream decision to make the new field override the
      old field if both are present, and having that logic the other way
      around would also have avoided this bug. Bite the bullet and make it
      conditional on the PL_API_VER.
      
      All that said - merely fixing this bug, however, exposed serious
      shortcomings in the video placement logic, in particular the lack of
      proper flipping support for OpenGL. Fix it by rewriting the video
      placement logic completely, based on the observation that
      `vout_display_PlacePicture` is a relatively cheap function to call.
      There's no need to awkwardly cache it inside `sys`.
      fe6ec4ce
    • Niklas Haas's avatar
      libplacebo: remove unneeded counter field · 231ea4de
      Niklas Haas authored
      This field was left-over from an early API design, and never used for
      anything in libplacebo. Recent versions have since deprecated it.
      231ea4de
    • Niklas Haas's avatar
      libplacebo: add colorimetric gamut clipping option · 31351641
      Niklas Haas authored
      New upstream feature. Simply needs to be exposed in the UI.
      31351641
    • Niklas Haas's avatar
      libplacebo: add support for BT.2390 EETF · ca206a51
      Niklas Haas authored
      This has already been the default in most libplacebo versions, in that
      `pl_color_map_default_params.tone_mapping_algo` was equal to this value.
      Despite this, it was never exposed in the UI, meaning users could not
      actually manually select it.
      
      Update the string to make it clear that this is the intended/recommended
      default.
      ca206a51
    • Niklas Haas's avatar
      libplacebo: add new color primaries enum members · ccad653c
      Niklas Haas authored
      Not really that important or useful, but they're supported upstream so
      there's also no real reason not to expose them.
      ccad653c
    • huangjieNT's avatar
      qml:previous button related fixes · 851d7f33
      huangjieNT authored
      fixes #25780
      851d7f33
    • Yaron Shahrabani's avatar
      ftp: Fix typo: connexion => connection · 215f04e9
      Yaron Shahrabani authored
      215f04e9
    • Prince Gupta's avatar
      qml: reset to last subcategory of the views · 9181dc49
      Prince Gupta authored
      closes #25581
      9181dc49
    • Fatih Uzunoğlu's avatar
      qml: fix segmentation fault on component destruction · f3e0752f
      Fatih Uzunoğlu authored
      intends to be a temporary solution for #25599, #25776.
      f3e0752f
    • François Cartegnie's avatar
      a8f165a0
    • Marvin Scholz's avatar
      configure: remove redundant PIE flags for sanitizers · 8d47e5a8
      Marvin Scholz authored
      As per the Clang documentation, some sanitizers
      only work with position independent executables,
      so it is implied already by the sanitizer flag:
      
      > Non-position-independent executables are not supported.
      > Therefore, the fsanitize=thread flag will cause Clang
      > to act as though the -fPIE flag had been supplied if
      > compiling without -fPIC, and as though the -pie flag
      > had been supplied if linking an executable.
      
      https://clang.llvm.org/docs/ThreadSanitizer.html#limitations
      8d47e5a8
  2. 03 Jun, 2021 3 commits
  3. 02 Jun, 2021 6 commits
  4. 01 Jun, 2021 7 commits
  5. 31 May, 2021 2 commits
  6. 30 May, 2021 1 commit
  7. 29 May, 2021 4 commits