Commit Graph
1665 Commits
Author SHA1 Message Date
Jim 6a0b9517db Merge pull request #1596 from computerquip/const-correct-cmdline2
libobs: Allow const argument in obs_set_cmdline_args
2019-01-05 06:51:25 -08:00
Jim 194f344727 Merge pull request #1590 from OsirisNL/game_mode_fix
libobs: Fix Windows Game Mode detection on newer Windows 10 versions
2019-01-05 06:49:23 -08:00
Jim 3d401b7068 Merge pull request #1582 from justinlynn/port-to-ppc64
Build on PPC64LE using x86 Intrinsic Compat Shims
2019-01-04 16:19:01 -08:00
Colin Edwards 2e4bcf5dc0 Merge pull request #1576 from DDRBoxman/rebasedkeyer
Decklink: Keyer Support
2019-01-04 17:34:50 -06:00
Colin Edwards 19bc92d267 Decklink: Keyer support 2019-01-04 17:34:00 -06:00
Jim 1e6bfa2eb1 Merge pull request #1572 from craftwar/utf8-fix
libobs: Fix utf-8 bom is not properly skipped
2019-01-04 14:55:57 -08:00
Michael Fabian 'Xaymar' Dirks 93549ea17c libobs: Add get_defaults2 and get_properties2 for encoders
Adds optional alternate functions to allow passing the encoder type_data
to reduce code duplication.

Closes obsproject/obs-studio#1541
2019-01-04 12:23:46 -08:00
Jim 62935bfef9 Merge pull request #1521 from Andersama/patch-31
libobs: Fix crash when pixel or vertex shader are missing
2019-01-04 06:37:53 -08:00
Zachary Lund fe3f7539a3 libobs: Allow const argument in obs_set_cmdline_args
obs_set_cmdline_args copies the arguments passed to it. This means that
the array passed will never require it to be modified.
2018-12-30 00:02:00 -06:00
Exeldro a0a0ca73c1 libobs: Fix circlebuf_pop_back returning front 2018-12-27 09:28:49 +01:00
Michel Snippe 7fd8743633 libobs: Fix Windows Game Mode detection on newer Windows 10 versions 2018-12-26 23:13:37 +01:00
J Lynn 36a6629e6b Add support for building on PPC64LE using x86 Intrinsic Compat Shim 2018-12-17 05:33:16 +11:00
craftwar 0a6dc398b7 libobs: Fix utf-8 bom is not properly skipped 2018-12-10 07:57:32 +08:00
Jim 875e13baf9 Merge pull request #1545 from pkviet/syncfix
libobs: Fix audio offset not reset for all tracks
2018-12-05 18:04:29 -08:00
Alex Anderson fc97512f71 libobs: Fix crash when pixel or vertex shader are missing
Checks that the token is not null while looping. Logs errors when pixel
or vertex shader are missing.
2018-12-03 15:02:20 -08:00
pkviet 1002f9b695 libobs: Log audio source when buffering is added
Closes obsproject/obs-studio#1521
2018-12-03 09:23:38 -08:00
jp9000 4fa30c619c libobs: Fix starting timestamp for preloaded frames
If audio monitoring is enabled and set to output only, the
obs_source_show_preloaded_video function would still incorrectly set the
current source audio output timestamp to the current system time, which
would cause audio to use an incorrect starting point from long ago for
the first starting audio segment if audio monitoring is then turned off
some time after having started the source.

Instead, the starting timestamp should be set to 0 if audio monitoring
is enabled with no output to stream, so that if/when audio monitoring is
disabled, it recalculates the starting timestamp of the first audio
packet on the spot again.

Closes obsproject/obs-studio#1522
2018-12-03 08:44:55 -08:00
jp9000 8cb80e1394 libobs/util: Make default val INVALID_HANDLE_VALUE
Certain windows functions may allow 0 as a valid handle value, therefore
INVALID_HANDLE_VALUE is a more appropriate initialization value.

Closes obsproject/obs-studio#1519
2018-12-03 04:32:20 -08:00
jp9000 03cca9d95a libobs: Background color of 0 should not be gray
When calling obs_display_set_background_color, the value set in the
'color' parameter should always be used as-is.  0 should not indicate a
color other than black.  To do anything otherwise is silly and confusing
for users of the API.

Closes obsproject/obs-studio#1516
2018-12-03 04:09:30 -08:00
Abelardo E. Mendoza e345b00120 libobs: memset() the correct buff size 2018-11-25 22:45:11 -06:00
jp9000 0951039322 libobs: Do not process panning if panning centered
Fixes a bug where audio panning would always be processed even if
panning was centered (and thus inactive).
2018-11-23 03:24:11 -08:00
pkviet 9b252b1268 libobs: Fix audio offset not reset for all tracks
Track 1 offset is reset but not the offset for other tracks.
This caused sync issues in between tracks (with track 1 and others).
(bug found by EposVox)
2018-11-16 03:56:49 +01:00
jp9000 b8a3ae1b10 libobs: Add multi-track support to non-encoded outputs 2018-10-04 20:32:35 -07:00
Michael Fabian 'Xaymar' Dirks e55579e63d libobs: Add obs_enum_scenes for enumerating scenes
Closes obsproject/obs-studio#1507
2018-10-01 10:24:42 -07:00
Steve Wills 2f51abf994 libobs: Add pkgconfig support
Based on:

http://dailycommit.blogspot.com/2016/10/how-to-generate-pkg-config-file-with.html
https://people.freedesktop.org/~dbn/pkg-config-guide.html

Should allow third party plugins to find and use libobs more easily.

Closes obsproject/obs-studio#1467
2018-09-24 14:25:41 -07:00
Luke Yelavich 5fe5027630 libobs: Truncate thread names on Linux
The pthread_setname_np manpage states:

The thread name is a meaningful C language string, whose length is
restricted to 16 characters, including the terminating null byte ('\0').
2018-09-21 08:44:30 +10:00
Jim 31561b3231 Merge pull request #1428 from pantherrui/master
fix heap corruption when video capture thread release the frame before it push into source->async_frames.
2018-09-17 05:19:58 -07:00
wangrui05 26d3f42b89 libobs: Fix heap corruption in obs_source_output_video 2018-09-17 18:46:47 +08:00
Marvin Scholz 649fa7651b libobs/audio-monitoring: Use libobs CFString utils 2018-09-16 22:41:01 +02:00
Marvin Scholz 31f143e449 libobs: Add CFString utils 2018-09-16 22:41:01 +02:00
jp9000 f1aa71bef1 libobs: Don't call width/height funcs if context invalid
Don't allow calling a source's custom get_width or get_height callbacks
unless the context is valid.  Fixes a bug where a null pointer could be
passed to those functions.
2018-09-13 06:54:58 -07:00
Jim 118dbf9e67 Merge pull request #1481 from Andersama/patch-26
libobs: Export image-file to c
2018-09-12 02:05:26 -07:00
Jim e615dffce5 Merge pull request #1323 from Andersama/effect-annotation-parsing
libobs: Add HLSL annotation parsing
2018-09-12 01:16:21 -07:00
Alex Anderson b30c843622 libobs: Export image-file to c
Wraps image-file.h in extern "C" like rest of libobs api.

Prevents unresolved external errors when using in c++.
2018-09-11 13:31:45 -07:00
cg2121 0ae8a7c0ac UI: Add ability to style preview background color 2018-09-10 04:55:15 -05:00
Alex Anderson e0cd45be9b libobs: Add additional gs_effect_get_ functions
Adds api functions to extract gs_eparam_t values, including
gs_effect_get_val(), gs_effect_get_val_size(),
gs_effect_get_default_val() and gs_effect_get_default_val_size()
2018-09-08 05:22:12 -07:00
Alex Anderson af67086912 libobs: Add HLSL annotation parsing
Gives the ability to retrieve param annotations. Blocks wrapped in <>
following a parameter.

For example:
float slider < float max_value = 10.0; float min_value = 0.0; >;

These blocks are not for shading purposes but to help describe the
shader's gui as in the example above.

Adds graphics api functions for retrieving annotations:
size_t gs_param_get_num_annotations(const gs_eparam_t *param);

gs_eparam_t *gs_param_get_annotation_by_idx(const gs_eparam_t *param,
		size_t annotation);

gs_eparam_t *gs_param_get_annotation_by_name(const gs_eparam_t *param,
		const char *name);
2018-09-08 05:22:12 -07:00
Jim 78d940e0f4 Merge pull request #1346 from dtcooper/master
libobs/UI: Allow Access To argc/argv
2018-09-08 01:29:43 -07:00
Jim 413e8e6a7b Merge pull request #1442 from cg2121/stereo-audio-balancing
UI: Implement stereo balancing
2018-09-07 21:28:56 -07:00
jp9000 e8eec22d15 libobs/util: Fix undefined behavior and optimize util_mul64_64
Shifting an integer larger than its bit width can have undefined
behavior.  This not only fixes that issue, but also optimizes the
shift functions.
2018-09-07 17:28:15 -07:00
cg2121 a4a7deeed6 UI: Implement stereo balancing 2018-09-07 09:27:14 -05:00
Shaolin 226d4cadf5 libobs: Remove VLA in pulse monitoring backend 2018-09-03 17:39:49 -03:00
jp9000 928ccab231 libobs: Update version to 22.0.3 2018-09-02 15:35:29 -07:00
jp9000 bfa568b750 libobs: Update version to 22.0.2 2018-08-29 09:49:34 -07:00
jp9000 deba492a2d libobs: Blacklist old obs-browser version on macOS
On macOS, the older version of the browser plugin used to reside in a
different directory.  This would cause two versions of obs-browser to
load if you installed the new version of OBS over the old version of
OBS.  This fixes that bug with an slightly unsightly hack by
blacklisting that older module if it tries to load an obs-module that
resides in that specific older directory.
2018-08-27 19:36:39 -07:00
jp9000 df75feb74a libobs: Update version to 22.0.1 2018-08-20 09:06:34 -07:00
jp9000 d180f19a5f libobs: Update to version 22.0.0 2018-08-19 19:52:48 -07:00
jp9000 2647da568f libobs: Revert version update to 22.0.0 (instead, do RC2)
This reverts commit 3d4b277a60.

Reverting temporarily for the sake of completeness and confirming
testing results.
2018-08-18 04:56:42 -07:00
Ryan Foster 044aaee2e7 libobs: Fix typo in function names
Correct "regsiter" to "register" in a couple function names. These
functions are currently unused. Let's correct these names before they
start getting used.
2018-08-17 23:57:13 -04:00
jp9000 3d4b277a60 libobs: Update version to 22.0.0 2018-08-17 16:12:45 -07:00