OBS Studio - Free and open source software for live streaming and screen recording
Go to file
tt2468 645e31fa15 libobs: Add sanity checks to some obs_output_t functions
Since OBS outputs can have any combination of flags for encoded,
video, audio, and service, there are a number of cases where it would
be a good idea to validate that we're not allowing output changes that
risk undefined behavior given the supported flags.

This also does a mild amount of code cleanup, adding inline functions
for checking the flags mentioned above.
2023-05-13 18:26:52 -07:00
.github build-aux,CI: Add format to Flatpak manifest 2023-05-13 18:26:17 -07:00
additional_install_files Improve additional_install_files for debug/release 2014-07-18 22:41:11 -07:00
build-aux build-aux: Replace app-id by id in the Flatpak manifest 2023-05-13 18:26:17 -07:00
CI build-aux,CI: Split Flatpak manifest in multiple files 2023-05-13 18:26:17 -07:00
cmake obs-ffmpeg,cmake: Replace external folder by obs-deps headers 2023-05-13 17:06:39 -07:00
deps obs-scripting: Replace macro with plain C code 2023-05-13 17:00:30 -07:00
docs/sphinx docs: Add missing elements in Services API 2023-05-06 16:24:52 -07:00
libobs libobs: Add sanity checks to some obs_output_t functions 2023-05-13 18:26:52 -07:00
libobs-d3d11 cmake: Add changes for CMake build framework 3.0 2023-03-26 18:20:38 -04:00
libobs-opengl cmake: Add changes for CMake build framework 3.0 2023-03-26 18:20:38 -04:00
libobs-winrt cmake: Add changes for CMake build framework 3.0 2023-03-26 18:20:38 -04:00
plugins obs-ffmpeg,cmake: Replace external folder by obs-deps headers 2023-05-13 17:06:39 -07:00
test test: Cover all array_output_serializer functions 2023-05-13 16:04:16 -07:00
UI build-aux,CI: Split Flatpak manifest in multiple files 2023-05-13 18:26:17 -07:00
.cirrus.yml CI: Add PipeWire package to FreeBSD config for CirrusCI 2023-02-15 14:44:36 -05:00
.clang-format clang-format: add HASH_ITER to ForEachMacros 2023-03-18 10:46:28 +01:00
.cmake-format.json cmake: Add changes for CMake build framework 3.0 2023-03-26 18:20:38 -04:00
.editorconfig build-aux,CI: Add format to Flatpak manifest 2023-05-13 18:26:17 -07:00
.git-blame-ignore-revs .git-blame-ignore-revs: Add file to handle mass reformatting 2019-06-27 01:09:31 +09:00
.gitattributes CI: Add Crowdin Synchronization 2021-11-25 20:59:11 +11:00
.gitignore build-aux,CI: Split Flatpak manifest in multiple files 2023-05-13 18:26:17 -07:00
.gitmodules plugins: Add obs-websocket submodule 2022-07-28 12:36:17 -07:00
.mailmap .mailmap: Disambiguate many more authors 2021-01-11 17:45:01 -08:00
.swift-format cmake: Add Xcode component to CMake build framework 3.0 2023-03-26 18:20:38 -04:00
AUTHORS Update translations from Crowdin 2023-05-01 23:11:13 +00:00
buildspec.json CI: Update deps to 2023-04-12 release 2023-04-12 21:33:06 +00:00
CMakeLists.txt cmake: Add changes for CMake build framework 3.0 2023-03-26 18:20:38 -04:00
CMakePresets.json CI: Update macOS build scripts to use new CMake presets 2023-03-26 18:20:38 -04:00
COC.rst Revert "docs: Rename Code of Conduct to fix GitHub detection" 2021-08-07 20:40:29 +10:00
COMMITMENT Add GPL Cooperation Commitment to base directory 2019-01-24 02:02:49 -05:00
CONTRIBUTING.rst CONTRIBUTING: Add language and PR/Issue template notes 2023-02-21 00:44:36 +01:00
COPYING COPYING: Use license file from gnu.org 2021-10-24 00:35:27 -07:00
INSTALL Update INSTALL 2018-07-14 08:21:00 +01:00
README.rst README.rst: Update url of translation guide 2022-08-13 16:28:36 -07:00

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

.. image:: https://github.com/obsproject/obs-studio/actions/workflows/main.yml/badge.svg?branch=master&event=push
   :alt: OBS Studio Build Status - GitHub Actions
   :target: https://github.com/obsproject/obs-studio/actions/workflows/main.yml?query=event%3Apush+branch%3Amaster

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

.. image:: https://img.shields.io/discord/348973006581923840.svg?label=&logo=discord&logoColor=ffffff&color=7389D8&labelColor=6A7EC2
   :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 page:
  https://obsproject.com/wiki/How-To-Contribute-Translations-For-OBS

- 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.