0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 21:13:04 +02:00
obs-studio/libobs
VodBox a8c30373d6 libobs: Add AutoRelease OBSRef wrappers for OBS types
These AutoRelease versions of the C++ OBSRef types do not add a ref on
construction, which is useful when accepting the result of a function
that turns a raw C pointer type that has had a reference added.

Not having these types has resulted in multiple awkward anti-patterns.
Such as immediately releasing after construction to account for the
extra addref, or avoiding using the C++ type entirely and manually
releasing it later.

Example:
```
OBSSource source = obs_get_source_by_name(name.c_str());
obs_source_release(source);
```

The whole point of these types is to avoid the need for manual releases,
and rely on the RAII mechanisms inside of C++. Additionally, the
immediate release isn't commented anywhere, resulting in confusion for
other developers looking at the code as to why things are being
immediately released.

The AutoRelease types and names are taken from obs-websocket.
2021-11-26 22:35:03 +13:00
..
audio-monitoring libobs: Add obs_audio_monitoring_supported() 2021-11-20 20:00:59 -08:00
callback libobs/callback: Make proc_handler_t threadsafe 2021-10-14 04:28:04 -07:00
data libobs: Remove DrawSrgbDecompressPremultiplied 2021-10-02 05:53:27 -07:00
graphics libobs, libobs-d3d11: Add support for NT Handle shared textures 2021-11-20 16:34:28 +13:00
media-io clang-format: Commit file changes for clang-format 12 2021-10-13 20:00:04 +11:00
util simde: Update README.libobs 2021-10-24 02:26:17 -07:00
CMakeLists.txt libobs: Add obs_audio_monitoring_supported() 2021-11-20 20:00:59 -08:00
libobs.pc.in libobs: add ppc64(le) specific flags to libobs.pc 2020-04-27 00:07:18 +02:00
LibObsConfig.cmake.in cmake: Export plugin data destination 2014-09-27 09:41:32 -07:00
LibObsConfigVersion.cmake.in Export libobs cmake target, so external plugins can be built without ugly hacks 2014-05-08 14:43:16 +02:00
obs-audio-controls.c UI, libobs, obs-plugins: Fix compiler warnings 2021-11-04 06:25:52 -07:00
obs-audio-controls.h libobs: Mark unused audio functions as deprecated 2021-10-24 02:00:16 -07:00
obs-audio.c libobs: Fix warnings 2021-07-06 14:08:28 -07:00
obs-avc.c clang-format: Apply formatting 2019-06-23 23:49:10 -07:00
obs-avc.h clang-format: Commit file changes for clang-format 11 2021-10-13 20:00:04 +11:00
obs-cocoa.m libobs: Cleanup uses of objc_msgSend in Objective-C code 2021-01-12 10:10:37 -08:00
obs-config.h libobs: Update version to 27.1.2 2021-10-04 10:38:39 -07:00
obs-data.c libobs: Add obs_data_get_last_json() 2021-04-23 12:38:50 -07:00
obs-data.h libobs: Add obs_data_get_last_json() 2021-04-23 12:38:50 -07:00
obs-defs.h clang-format: Apply formatting 2019-06-23 23:49:10 -07:00
obs-display.c clang-format: Apply formatting 2019-06-23 23:49:10 -07:00
obs-encoder.c libobs: Add profiler section for send_packet 2021-09-11 15:33:02 -07:00
obs-encoder.h UI: Hide encoder if marked internal 2020-02-18 21:37:41 -08:00
obs-ffmpeg-compat.h clang-format: Apply formatting 2019-06-23 23:49:10 -07:00
obs-hotkey-name-map.c libobs: Remove WIN32_LEAN_AND_MEAN 2021-10-10 19:12:45 -07:00
obs-hotkey.c libobs, linux-v4l2: Set thread names 2021-01-25 04:13:24 -08:00
obs-hotkey.h clang-format: Apply formatting 2019-06-23 23:49:10 -07:00
obs-hotkeys.h libobs: Remove _WIN32 ifdef from enum 2019-11-17 20:30:42 -08:00
obs-interaction.h clang-format: Apply formatting 2019-06-23 23:49:10 -07:00
obs-internal.h libobs: Add obs_weak_source_expired() 2021-10-15 22:10:33 -07:00
obs-missing-files.c libobs: Add missing file API to sources 2021-01-17 10:31:58 +13:00
obs-missing-files.h libobs: Add missing file API to sources 2021-01-17 10:31:58 +13:00
obs-module.c libobs: Fix memory overrun if libobs version mismatches 2021-07-04 08:49:42 -07:00
obs-module.h libobs: Add functions to get locale text from modules 2020-08-10 12:24:01 -07:00
obs-nix-platform.c libobs: Introduce the concept of a Unix platform 2021-02-01 19:05:10 -03:00
obs-nix-platform.h libobs: Add a Wayland platform 2021-02-09 09:39:04 -03:00
obs-nix-wayland.c libobs: Add a Wayland platform 2021-02-09 09:39:04 -03:00
obs-nix-wayland.h libobs: Add a Wayland platform 2021-02-09 09:39:04 -03:00
obs-nix-x11.c libobs: Fix crash when no context 2021-03-10 20:14:01 -08:00
obs-nix-x11.h libobs/nix: Move X11-specific code to obs-nix-x11.c 2021-02-01 19:03:43 -03:00
obs-nix.c libobs/nix: List Flatpak search paths 2021-07-08 10:53:15 -07:00
obs-nix.h libobs/nix: Move X11-specific code to obs-nix-x11.c 2021-02-01 19:03:43 -03:00
obs-output-delay.c libobs: Minor fixes / code cleanups 2021-03-04 19:29:33 +01:00
obs-output.c libobs: Allow last encoder error for last output error 2021-10-25 12:24:16 -07:00
obs-output.h libobs: Implement pausing of outputs 2019-07-07 16:38:22 -07:00
obs-properties.c libobs, UI: Add support for button properties as links 2021-07-09 17:32:09 +12:00
obs-properties.h libobs, UI: Add support for button properties as links 2021-07-09 17:32:09 +12:00
obs-scene.c libobs: Add obs_scene_prune_sources 2021-11-23 22:00:47 -08:00
obs-scene.h UI: Add visibility transitions 2021-03-16 22:15:16 -07:00
obs-service.c libobs: Change service max res. to res. list 2020-11-13 18:22:53 -08:00
obs-service.h libobs: Change service max res. to res. list 2020-11-13 18:22:53 -08:00
obs-source-deinterlace.c libobs: Deinterlace as linear SRGB when needed 2021-01-21 07:42:57 -08:00
obs-source-transition.c libobs: transition: ignore sources with ts=0 2021-02-02 13:28:54 -08:00
obs-source.c libobs: Free async cache when sources output NULL frames 2021-11-23 23:04:46 -08:00
obs-source.h libobs, obs-filters: SRGB backwards compatibility 2021-05-03 01:19:56 -07:00
obs-ui.h docs/sphinx: Fix various typos 2019-10-14 17:19:38 -07:00
obs-video-gpu-encode.c libobs: Defer reconfiguring encoders to the encode threads 2021-08-23 18:26:37 -07:00
obs-video.c libobs: Final downsample with SRGB formats 2021-01-21 07:42:57 -08:00
obs-view.c clang-format: Apply formatting 2019-06-23 23:49:10 -07:00
obs-win-crash-handler.c libobs: Include thread names in thread traces 2021-02-03 13:08:57 -08:00
obs-windows.c libobs: Log Windows 10 Hardware GPU Scheduler 2020-08-26 22:57:52 +02:00
obs.c libobs: Add raw audio callback function 2021-11-24 01:32:31 -08:00
obs.h libobs: Add raw audio callback function 2021-11-24 01:32:31 -08:00
obs.hpp libobs: Add AutoRelease OBSRef wrappers for OBS types 2021-11-26 22:35:03 +13:00
obsconfig.h.in libobs: Add a Wayland platform 2021-02-09 09:39:04 -03:00