jpark37 66259560e0 libobs: Add dormant SRGB format support
GS_RGBA, GS_BGRX, and GS_BGRA now use TYPELESS DXGI formats, so we can
alias them between UNORM and UNORM_SRGB as necessary. GS_RGBA_UNORM,
GS_BGRX_UNORM, and GS_BGRA_UNORM have been added to support straight
UNORM types, which Windows requires for sharing textures from D3D9 and
OpenGL. The D3D path aliases via views, and GL aliases via
GL_EXT_texture_sRGB_decode/GL_FRAMEBUFFER_SRGB.

A significant amount of code has changed in the D3D/GL backends, but the
concepts are simple. On the D3D side, we need separate SRVs and RTVs to
support nonlinear/linear reads and writes. On the GL side, we need to
set the proper GL parameters to emulate the same.

Add gs_enable_framebuffer_srgb/gs_framebuffer_srgb_enabled to set/get
the framebuffer as SRGB or not.

Add gs_linear_srgb_active/gs_set_linear_srgb to instruct sources that
they should render as SRGB. Legacy sources can ignore this setting
without regression.

Update obs_source_draw to use linear SRGB as needed.

Update render_filter_tex to use linear SRGB as needed.

Add gs_effect_set_texture_srgb next to gs_effect_set_texture to set
texture with SRGB view instead.

Add SRGB helpers for vec4 struct.

Create GDI-compatible textures without SRGB support. Doesn't seem to
work with SRGB formats.
2021-01-21 07:42:13 -08:00
2021-01-18 15:33:54 -08:00
2020-10-03 05:38:46 -07:00
2021-01-11 17:45:01 -08:00
2021-01-02 04:07:55 -08:00
…
…
2020-08-11 05:11:24 -05:00

OBS Studio <https://obsproject.com>
===================================

.. image:: https://dev.azure.com/obsjim/obsjim/_apis/build/status/obsproject.obs-studio?branchName=master
   :alt: OBS Studio Build Status - Azure Pipelines
   :target: https://dev.azure.com/obsjim/obsjim/_build/latest?definitionId=1&branchName=master

.. image:: https://d322cqt584bo4o.cloudfront.net/obs-studio/localized.svg
   :alt: OBS Studio Translation Project Progress
   :target: https://crowdin.com/project/obs-studio

.. image:: https://discordapp.com/api/guilds/348973006581923840/widget.png?style=shield
   :alt: OBS Studio Discord Server
   :target: https://obsproject.com/discord

What is OBS Studio?
-------------------

  OBS Studio is software designed for capturing, compositing, encoding,
  recording, and streaming video content, efficiently.

  It's distributed under the GNU General Public License v2 (or any later
  version) - see the accompanying COPYING file for more details.

Quick Links
-----------

 - Website: https://obsproject.com

 - Help/Documentation/Guides: https://github.com/obsproject/obs-studio/wiki

 - Forums: https://obsproject.com/forum/

 - Build Instructions: https://github.com/obsproject/obs-studio/wiki/Install-Instructions

 - Developer/API Documentation: https://obsproject.com/docs

 - Donating/backing/sponsoring: https://obsproject.com/contribute

 - Bug Tracker: https://github.com/obsproject/obs-studio/issues

Contributing
------------

 - If you would like to help fund or sponsor the project, you can do so
   via `Patreon <https://www.patreon.com/obsproject>`_, `OpenCollective
   <https://opencollective.com/obsproject>`_, or `PayPal
   <https://www.paypal.me/obsproject>`_.  See our `contribute page
   <https://obsproject.com/contribute>`_ for more information.

 - If you wish to contribute code to the project, please make sure to
   read the coding and commit guidelines:
   https://github.com/obsproject/obs-studio/blob/master/CONTRIBUTING.rst

 - Developer/API documentation can be found here:
   https://obsproject.com/docs

 - If you wish to contribute translations, do not submit pull requests.
   Instead, please use Crowdin.  For more information read this thread:
   https://obsproject.com/forum/threads/how-to-contribute-translations-for-obs.16327/

 - Other ways to contribute are by helping people out with support on
   our forums or in our community chat.  Please limit support to topics
   you fully understand -- bad advice is worse than no advice.  When it
   comes to something that you don't fully know or understand, please
   defer to the official help or official channels.
S
Description
OBS Studio - Free and open source software for live streaming and screen recording
Readme
350 MiB
Languages
C 52.6%
C++ 36%
CMake 3.4%
Swift 2.9%
Objective-C 2.7%
Other 2.2%