11077 Commits

Author SHA1 Message Date
jpark37
df96e68ca6 cmake: Disable LNK4099 warning
We are very unlikely to ship PDBs for deps.
2022-07-11 22:07:10 -07:00
jpark37
8bb03a1136 obs-ffmpeg: Fix warning about useless llabs call 2022-07-11 22:07:10 -07:00
jpark37
1c58d4402d aja: Fix warnings about type usage 2022-07-11 22:07:10 -07:00
jpark37
92d1ca41cc libobs: Fix warnings about type usage 2022-07-11 22:07:10 -07:00
jpark37
5e3c824801 obs-scripting: Suppress long volatile warning 2022-07-11 22:07:10 -07:00
cg2121
a32793dd04 UI: Use more descriptive tooltips
This makes the scene/source tooltips easier to
understand.

Add -> Add Scene, Add Source
Remove -> Remove Selected Scene, Remove Selected Source(s)
MoveUp -> Move Scene Up, Move Source(s) Up
MoveDown -> Move Scene Down, Move Sources(s) Down
Properties -> Open Source Properties
Filters -> Open Source Filters
2022-07-11 18:17:04 -04:00
gxalpha
29ae00e4af UI: Add Apple H.264 hardware encoder to simple mode
Adds the Apple Silicon hardware encoder as a simple mode option. For
recordings this only requires being on Apple Silicon (since we use the
Constant Quality setting), while for streaming it requires the user to
be on macOS 13 or newer (since we're using CBR).
2022-07-11 23:45:43 +02:00
PatTheMav
566ce79b0f mac-videotoolbox: Enable CBR and CRF on hardware encoders only
Both rate control methods only work on hardware encoders and will error
out when selected for software encoders, so we shouldn't show them there

Co-Authored-By: Sebastian Beckmann <beckmann.sebastian@outlook.de>
2022-07-11 23:45:43 +02:00
AuroraWright
84c7d87a7f mac-videotoolbox: Add CRF support on Apple silicon
Co-Authored-By: Sebastian Beckmann <beckmann.sebastian@outlook.de>
2022-07-11 23:45:43 +02:00
Developer-Ecosystem-Engineering
9e0d7b3123 mac-videotoolbox: Add CBR support on Apple silicon / macOS 13
Implementation adjusted by the OBS Project.

Co-Authored-By: Sebastian Beckmann <beckmann.sebastian@outlook.de>
2022-07-11 23:45:43 +02:00
gxalpha
8c987a86ac mac-videotoolbox: Use type_data as it was intended 2022-07-11 23:45:43 +02:00
gxalpha
fffb320225 mac-videotoolbox: Remove redundant bitrate check
The session_set_bitrate method already returns an OSStatus to confirm
that everything has been successful. As such, a second check to make
sure that the bitrate has indeed changed is redundant and only adds
unnecessary code.
2022-07-11 23:45:43 +02:00
gxalpha
182906d412 mac-videotoolbox: Rename functions to remove "h264" 2022-07-11 23:45:43 +02:00
gxalpha
a129c953e8 cmake: Rename mac-vth264 plugin to mac-videotoolbox 2022-07-11 23:45:43 +02:00
gxalpha
737f0ab08a mac-videotoolbox: Rename mac-vth264 plugin to mac-videotoolbox 2022-07-11 23:45:43 +02:00
Tommy Vercetti
cabc3c8aec UI: Implement Taskbar Overlay for Qt6 2022-07-10 14:06:15 +10:00
Clayton Groeneveld
b307d38ef6 UI: Fix typo with SetSourceName function
The SetSoureName in the adv-audio-control.hpp had newName
misspelled as newNamw.
2022-07-10 14:00:35 +10:00
Clayton Groeneveld
1cf93a4b29 UI: Fix compiling error on nix platforms
On nix platforms, the compile would complain about
using non-const values for the function parameters.
2022-07-10 14:00:35 +10:00
Clayton Groeneveld
22dbf316df UI: Truncate push-to-* labels
The labels for the push-to-mute / push-to-talk hotkeys
were never truncated.
2022-07-10 14:00:35 +10:00
Clayton Groeneveld
e40a6be031 UI: Use new truncate function with hotkeys
This updates the hotkeys to use the new truncate label
function in qt-wrappers.cpp
2022-07-10 14:00:35 +10:00
Colin Edwards
50372164d0 UI: Move multiview render into a new class
Co-authored-by: tt2468 <tt2468@irltoolkit.com>
2022-07-10 13:45:43 +10:00
Clayton Groeneveld
873ee8e7ba UI: Fix reset ui warning showing on first start
If a plugin adds a dock and the program is run for the
first time, the reset ui warning would show up.
2022-07-10 12:26:42 +10:00
Kurt Kartaltepe
4163940137 libobs-opengl: Change log level for texture_from_pixmap
This function is expected to fail fairly often as it is the tool for
checking if windows are mapped and have a valid pixmap in the linux
capture plugin. So reduce this error to a debug message to avoid
spamming release builds.
2022-07-10 11:24:40 +10:00
Kurt Kartaltepe
c6cb0838fd linux-capture: Silence log spam on xcomposite capture
It is expected that capture might fail, like when a window is minimized.
In these cases we dont want the log to be spammed by X11 errors so
install a noop error handler while we try to import.
2022-07-10 11:24:40 +10:00
Kurt Kartaltepe
e9076da901 linux-capture: Retry capture if texture not created
This prevented OBS from re-aquiring capture when windows were minimized
or fullscreened.
2022-07-10 11:24:40 +10:00
PatTheMav
c61d523d58 mac-avcapture: Fix deprecation warning for AVCaptureDevice list
Direct access to `[AVCaptureDevice devices]` is deprecated since macOS
10.15. An `AVCaptureDeviceDiscoverySession` is to be used instead, which
this PR implements.

When running on older macOS versions or compiling against older platform
SDKs, the deprecated method is used.

PS: The formatting is not proper ObjC style, but that's clang-format's
doing with our current settings.
2022-07-10 10:09:58 +10:00
tt2468
97756861b4 obs-outputs: Rework RTMP context init/deinit
This commit fixes what is arguably a long-winded series of previous
commits that have possibly caused just as many problems as they have
fixed. I'll spare the details, but basically, there's no reason that
any of the RTMP object should ever be used across socket sessions.

This provides a slight enhancement by removing the `RTMP_Init` call
in `rtmp_stream_create()`, since it effectively just initializes TLS
just for `try_connect` to deinitialize it before it is even used.

This also fixes the current `SO_RCVTIMEO` timeout functionality by
making sure that `RTMP_Reset` is called last.
2022-07-09 17:04:37 -07:00
Norihiro Kamae
c1d1526b24 aja: Split audio part in CaptureThread to function
To improve readability of the capture thread function
`AJASource::CaptureThread`, audio part is split into two functions.
Behavior is not changed.
Also fixed one of warnings.
2022-07-10 10:01:58 +10:00
Norihiro Kamae
08a071d7a5 aja: Fix memory overrun on aja-source
When too many audio frames are captured and at the same time the ring
buffer on the card is wrapped, memory overrun was not captured before
DMA transfer, which resulted in corruption of memory contents. This
commit moves the overrun check before the DMA transfer.
2022-07-10 10:01:58 +10:00
PatTheMav
62c6a6d223 obs_ffmpeg: Explicitly mark variables as unused 2022-07-10 09:59:55 +10:00
PatTheMav
fa7047c418 images-source: Explicitly mark variables as unused 2022-07-10 09:59:55 +10:00
PatTheMav
ed9cc5c0dd aja: Explicitly mark variables as unused 2022-07-10 09:59:55 +10:00
PatTheMav
ff7f756886 libobs: Explicitly mark variables as unused 2022-07-10 09:59:55 +10:00
PatTheMav
fad83b040a aja-output-ui: Explicitly mark variables as unused 2022-07-10 09:59:55 +10:00
PatTheMav
62ca01e181 libcaption: Disable compiler warnings about non-exhaustive switch cases 2022-07-10 09:59:55 +10:00
PatTheMav
91c915e4e9 libobs: Disable compiler warnings about non-exhaustive switch cases 2022-07-10 09:59:55 +10:00
PatTheMav
3f2aad12cd obs-ffmpeg: Disable compiler warnings about non-exhaustive switch cases 2022-07-10 09:59:55 +10:00
PatTheMav
7bb2f33417 obs-filters: Disable compiler warnings about non-exhaustive switch cases 2022-07-10 09:59:55 +10:00
PatTheMav
deeaccb3d1 obs-x264: Disable compiler warnings about non-exhaustive switch cases 2022-07-10 09:59:55 +10:00
pkv
b9237aed29 obs-ffmpeg: Fix srt/rist not working
This fixes a bug where the new circular buffer code is hit by protocols
such as rist or srt although the buffer was meant for files.

Signed-off-by: pkv <pkv@obsproject.com>
2022-07-09 16:29:04 -07:00
Paul Hindt
e390252540 aja: Fix audio capture sometimes offset by a channel 2022-07-09 16:20:23 -07:00
jpark37
8614697c59 obs-qsv11: Use same adapter as OBS
A mismatch will lead to failure.
2022-07-09 16:08:47 -07:00
Warchamp7
2941c48dbe UI: Yami font adjustments
Removes font-family definition for now, and changes
other font sizes to pt units instead of px

Also adds a margin to the SceneTree/SourceTree line
edits to fix qss padding weirdness
2022-07-09 16:04:46 -07:00
MagicBear
f54f8ee714 obs-ffmpeg: Add NVIDIA Tesla NVENC support 2022-07-09 15:49:26 -07:00
mvji
16f5fe5ee2 obs-ffmpeg: Add m4v extension to open file dialog 2022-07-09 13:45:29 -04:00
PatTheMav
c887459f3c CI: Switch to universal Qt builds for CI
Due to changes on obs-deps, per-arch Qt builds do not contain universal
binaries anymore. To allow CI to cross-compile on x86_64 runners,
the universal release is used, which will run on both architectures.
2022-07-07 16:20:30 -04:00
PatTheMav
64efcd155d obs-scripting: Fix swig runtime header generation for macOS
Due to swig using a hardcoded swig library path in self-compiled
variants, we need to pass our custom swig library path with every
invocation of swig on macOS.

CMake's `add_custom_command` function does _not_ inherit the environment
variables used during configuration, hence why it needs to be passed
explicitly on invocation.

Usage of CMake's "-E env" command module should allow for cross-platform
compatible invocation.
2022-07-07 14:19:23 -04:00
gxalpha
5898df70fa docs: Fix encoder .get_defaults2 arguments 2022-07-06 17:48:15 -07:00
gxalpha
2dd1a3fc6f UI: Fix compilation with browser disabled 2022-07-06 19:48:27 +02:00
PatTheMav
d940f21457 cmake: Fix build architectures and deployment target not set to defaults
CMake seems to set either `CMAKE_OSX_ARCHITECTURES` and
`CMAKE_OSX_DEPLOYMENT_TARGET` implicitly to empty cache variables when
not defined explicitly on the commandline or via a GUI.

Setting a default thus requires the `FORCE` flag to overwrite these
empty defaults with our desired results. The branches ensure that user-
provided non-empty values are not overwritten as well.
2022-07-06 19:19:43 +02:00