linux-pipewire: Fix 10- and 16-bit captures
Description
Tonemap textures from non-linear sRGB to linear sRGB when in 10-bit or higher color format and update texture format accordingly
Motivation and Context
Fix white-tint when using a pipewire capture in a 10-bit or 16-bit color format regardless of monitor source bitdepth
How Has This Been Tested?
Before/After in NV12, P010 and P416 color formats on both 10-bit and 8-bit monitors. Confirmed to work both in Preview (no white tint observed) and custom FFmpeg render (10-bit gradient is captured)
Types of changes
- Bug fix (non-breaking change which fixes an issue)
Checklist:
- [x] My code has been run through clang-format.
- [x] I have read the contributing document.
- [x] My code is not on the master branch.
- [x] The code has been tested.
- [x] All commit messages are properly formatted and commits squashed where appropriate.
- [x] I have included updates to all appropriate documentation.
not entirely sure how that 'g' just disappeared.. will fix this tomorrow
Cleaned up the merge conflicts, also appears I made a typo when setting the cursor texture, that is fixed now. I'm gonna figure out how to run clang-format in a second.. hold on