Commit graph

9131 commits

Author SHA1 Message Date
Georges Basile Stavracas Neto 83ae6f6f43 libobs-opengl: Rename gl-x11.c to gl-x11-glx.c
This is in preparation for the future abstraction layer (gl-x11-*)
and also to match the actual name of the windowing system. When
running under X11, we can glue OpenGL through GLX or EGL, so the
new file name matches that now.
2021-02-01 19:03:14 -03:00
Georges Basile Stavracas Neto 7801b3301a deps-glad: Add EGL
The code is generated by https://glad.dav1d.de/
2021-02-01 19:03:14 -03:00
Lordmau5 5b899788da UI: Add launch parameter to disable high-DPI scaling 2021-02-01 05:44:37 -08:00
Thulinma 244b6c92e6 obs-outputs: Fix RTMP restart not always working
Bug is caused by the internal connection variables not being reset on
reconnect, leading OBS to both be unable to parse valid packets from and
send valid packets to the remote end.  This commit splits RTMP_Init off
into a new RTMP_Reset function, which resets these internal variables
without re-initing the rest of the library.  The original RTMP_Init
calls the new function, perfectly preserving the old behaviour while
adding a new reset function to address the issue with.

Fixes obsproject/obs-studio#2865
2021-01-31 18:44:11 -08:00
Jim 2eca4d80b6
Merge pull request #2233 from VodBox/missing-files-dialog
libobs + UI: Add Missing Files API & Dialog
2021-01-31 08:02:16 -08:00
Jim 1c99cad33d
Merge pull request #4140 from jpark37/wgc-monitor
Add display capture via Windows Graphics Capture
2021-01-31 07:10:57 -08:00
Jim 9eb32eed18
Merge pull request #4162 from jpark37/warnings-20210129
Another warning clean-up pass
2021-01-30 11:37:43 -08:00
jpark37 3d4e8c377c UI: Fix unused parameter 2021-01-30 00:25:25 -08:00
jpark37 48ba511bda UI: Avoid asprintf warning 2021-01-30 00:25:25 -08:00
jpark37 2c1610017d linux-v4l2: Fix ignored return value 2021-01-30 00:25:25 -08:00
jpark37 54047ef9ca libobs: Avoid strncpy warning 2021-01-30 00:24:16 -08:00
jpark37 5753c25cba libcaption: Fix static keyword placement 2021-01-29 23:59:23 -08:00
jpark37 033a29ef9a rtmp-services: Fix unused parameter 2021-01-29 21:50:51 -08:00
jpark37 0e803c4443 obs-filters: Fix unused parameters 2021-01-29 21:50:32 -08:00
jpark37 dd62bd05fb libobs-opengl: Fix unused parameters 2021-01-29 21:50:19 -08:00
jpark37 98d1f340da libobs: Fix unused parameter 2021-01-29 21:50:06 -08:00
jpark37 bd14c926eb libobs: Fix truncation warning on 32-bit Windows 2021-01-29 21:47:34 -08:00
Frank Löffler 8f3d4b6758 linux-v4l2: added range check for try_connect()
While the current code only ever calls try_connect() with the input
argument 'device' in the range of 0 and MAX_DEVICES, this adds a check
to ensure that future code does not break the following sprintf.

In addition, use snprintf instead of sprintf to ensure that if anything
breaks, the sprintf does not lead to memory corruption. Again, the new
check should already make sure of that, but the additional effort of
using snprintf instead of sprintf is so low that it is worth to have a
little more security in the future.
2021-01-29 09:24:42 -08:00
Kurt Kartaltepe 5efb10a5e2 libobs: Fix leaking obs-internal.h
Removes prior attempt to expose libcaption headers which really shouldnt
have public. This instead moves the obs-internal include out of the
public obs-scene.h and into it's implementation.
2021-01-28 23:59:02 -08:00
Georges Basile Stavracas Neto f12dbc87b8 UI: Don't define QT_NO_GLIB
The same reasoning of the previous patch means we can also stop
force-disabling Qt/GLib integration.
2021-01-28 23:58:13 -08:00
Georges Basile Stavracas Neto 58497e59d9 UI: Reinstate native dialogs on Linux with browser enabled
After the recent CEF update, the GMainLoop-in-a-thread conflict seems to be
gone, which allows us to being back native dialogs.
2021-01-28 23:58:13 -08:00
Kurt Kartaltepe c12ccd4e15 linux-capture: Ensure locks are initialized
In case no-one else initializes X11 locks do this as part of loading the
module.

Fixes #3479
2021-01-28 13:11:16 -08:00
Jeff Ward 4479ca0b7b rtmp-services: Add PolyStreamer service
Add PolyStreamer.com to services.json, and increment the version in
accompanying package.json
2021-01-28 13:06:28 -08:00
Kurt Kartaltepe bde5d11100 libcaption: Fix header missing in install
libobs directly depends on libcaption headers. So ensure they are
installed with obs' headers.

fixes #3925
2021-01-28 12:55:11 -08:00
PatTheMav d2ca8b5d90 CI: Re-enable Python scripting support on CI for macOS
Closes obsproject/obs-studio#3689
2021-01-27 11:33:53 -08:00
PatTheMav ecdc81ba0f obs-scripting: Add Py 3.8+ C-API changes
Closes obsproject/obs-studio#3689
2021-01-27 11:33:34 -08:00
Exeldro 44ace7618f libobs: Duplicate source name for private sources
Allows for identification of sources in studio mode
2021-01-27 00:24:33 -08:00
jpark37 80b4a65cd2 win-capture: Add WGC desktop capture
Copy patterns from WGC window capture, and BitBlt monitor capture.
2021-01-26 17:11:12 -08:00
jpark37 2b652cc763 libobs: gs_duplicator_get_monitor_index
Helper function to find DXGI output index of HMONITOR.
2021-01-26 17:11:04 -08:00
Matt Gajownik 475172cffa CI: Enable service integration on Linux
This also simplifies environment variable definitions
2021-01-27 11:39:09 +11:00
jpark37 db35a022cd libobs-winrt,win-capture: Support desktop capture
Add display capture support via winrt_capture_init_monitor. Almost all
of the existing window capture code is reused.

Rename winrt_capture_init to winrt_capture_init_window for symmetry.
2021-01-26 15:57:20 -08:00
Matt Gajownik 84771b143c obs-browser: Fix panel build error on Windows and Linux 2021-01-27 10:31:20 +11:00
Matt Gajownik a5c482dd19 CI: Use CEF 4280 on GH Actions builds 2021-01-27 10:11:41 +11:00
Matt Gajownik 482a8adaf3 obs-browser: Fix panel build error on macOS 2021-01-27 10:07:19 +11:00
Matt Gajownik ba546ee79c obs-browser: Add Linux browser panel support 2021-01-27 09:40:33 +11:00
Georges Basile Stavracas Neto 913821ee8e UI: Make BrowserDock native
After cleaning up the native flags in various places, and disabling
making sibling of native widgets native, BrowserDock was left in an
inconsistent state, since it requires being native for CEF to work
properly.

Make BrowserDock native.
2021-01-26 09:43:16 -08:00
Georges Basile Stavracas Neto 9ee7547e19 UI: Cleanup native widgets
Some widgets are marked as native unnecessarily. Native widgets are
a bit more involving than regular ones, so remove this flag.

Original patch by David Edmundson <kde@davidedmundson.co.uk>
2021-01-26 09:43:16 -08:00
David Edmundson 4a32d1cec5 UI: Don't create native widget siblings
Native windows really only make sense for previews. They can be a new
xcb_window or a wayland subsurface.

For historical reasons setting a widget to native will also affect
ancestors. Qt will still draw them as part of the parent as they are
never mapped, but a window is nonetheless created.

This is especially problematic on wayland as then the subsurface is
parented to an unmapped window.

This default behaviour can be turned off. Now only the native widgets
(the video previews) are actually native.
2021-01-26 09:43:16 -08:00
Bilal Elmoussaoui 892bd62bfe CI: use a KDE image for Flatpak
The KDE images comes with the SDK needed pre-installed and should avoid re-downloading/installing it everytime. This should hopefully reduce the build time by a few minutes 

Details at https://github.com/bilelmoussaoui/flatpak-github-actions#docker-image
2021-01-26 03:57:15 -08:00
Kurt Kartaltepe 0dce235fdb linux-capture: Fix lock ordering
xcompcap was taking locks in the wrong order resulting in deadlocks on
close. If you had an xcompcap properties window open on close it was
nearly 100% deadlock. This ensures locks are taken in the same order as
libobs takes when shutting down.
2021-01-26 03:33:05 -08:00
Clayton Groeneveld 99d10c2607 libobs: Add function to get module lib
This adds a function find module library.

Co-authored-by: Stéphane Lepin <stephane.lepin@gmail.com>
2021-01-26 03:31:31 -08:00
SCG82 16a5ce89aa rtmp-services: Update MyFreeCams 2021-01-26 03:18:59 -08:00
Mark Sergienko c38cbb10a4 rtmp-services: Add EventLive
Add EventLive endpoint and recommended settings to list of RTMP
services. Bump rtmp-services/data/package.json version
2021-01-25 07:28:15 -08:00
jp9000 560c1bea30 rtmp-services: Fix trailing whitespace in services.json 2021-01-25 06:50:40 -08:00
Exeldro bacf83dbc9 UI: Close context menu on destroy of VolControl 2021-01-25 04:17:14 -08:00
Kurt Kartaltepe 77e4416c9f UI: Fix crash when systray is not enabled 2021-01-25 04:14:29 -08:00
Kurt Kartaltepe d8a25ef943 linux-v4l2: Improve module detection
Expand PATH for Debian-like systems.
Improve detection when the module is already loaded.
2021-01-25 04:14:29 -08:00
Kurt Kartaltepe d8a253c42f libobs, linux-v4l2: Set thread names
Sets thread names for the hotkey and v4l2 capture threads.
2021-01-25 04:13:24 -08:00
jpark37 b460f025ed obs-filters: Fix pow arguments
GLSL does not auto-promote float to vector where HLSL does.
2021-01-23 01:53:11 -08:00
jpark37 ccf16ddb65 libobs: Fix dstr leak 2021-01-22 22:16:17 -08:00