Commit Graph

8978 Commits (979054cc8c8f3d080618c99f20b807c7cf4233e6)

Author SHA1 Message Date
jp9000 9f6e49d12c cmake: Add Qt5Network to copied windows libs 2020-11-22 14:32:35 -08:00
PatTheMav fb27900e94 CI: Remove explicit LANGUAGE flags for cmake 3.19+ 2020-11-21 12:00:52 -08:00
Richard Stanway 17b3873578 obs-ffmpeg: Treat non-network errors as fatal too
4f873376 as part of PR #3460 changed ffmpeg_mux_packet to
fail = !ffmpeg_mux_packet. ffe4c855 only reverted that one line
instead of the entire previous commit. When the change was
reintroduced in 6071098a as part of PR #3740, it became
fail = ffmpeg_mux_packet without the negation.

This commit reverts db1e6aa and fixes the logic check.
2020-11-19 01:55:26 +01:00
jp9000 db1e6aa192 Revert "obs-ffmpeg: Treat errors as fatal for non-network streams in ffmpeg-mux"
This reverts commit 6071098abc.
2020-11-18 14:28:06 -08:00
gxalpha 33dc4108fe mac-virtualcam: Remove old test card
Removes the animated test card that was generated from code but is no longer in use
2020-11-18 03:57:23 -08:00
Ed Maste a0f64a6017 UI: fix build on older FreeBSD versions
Include pthread_np.h header and use pthread_set_name_np to fix build
on FreeBSD 12.1.  The Linux-compatible pthread_setname_np alias was
added later.
2020-11-16 19:01:56 -08:00
jp9000 6d181d97ca win-capture: Update hook version 2020-11-16 14:39:04 -08:00
Eric Lindvall 6071098abc obs-ffmpeg: Treat errors as fatal for non-network streams in ffmpeg-mux 2020-11-16 07:31:44 -08:00
Eric Lindvall 315fbd6f33 obs-ffmpeg: Treat EINVAL as non-fatal in ffmpeg-mux 2020-11-16 07:31:44 -08:00
jpark37 484084abb5 win-capture: Clean up remaining /W4 warnings 2020-11-15 06:03:18 -08:00
Eric Lindvall 1fa99dd075 obs-ffmpeg: Treat AVERROR_INVALIDDATA as non-fatal 2020-11-15 06:02:30 -08:00
Eric Lindvall 41258f8976 obs-ffmpeg: Add error detection to ffmpeg-mux network streams
ffmpeg-mux does not notice if ffmpeg returns an error from
av_interleaved_write_frame() which means that OBS never knows if there
is a problem in ffmpeg.

This is the biggest issue for cases like srt:// or tcp:// streams that
can regularly fail. Without this change OBS never knows that something
went wrong.

Only network streams are checked to prevent impacting potential
transient errors in recordings.
2020-11-15 06:02:30 -08:00
jp9000 f8cc3bfe01 deps/media-playback: Fix audio segment duration calc
With certain audio encoders, gaps can be introduced into the audio
packets, causing the audio duration to be miscalculated because it
calculated audio duration based upon the PTS of the current packet to
the last packet. However, this audio encoder also did not store
timestamps for most of its audio packets, causing PTS values to be
calculated based upon duration values. So those two things combined
caused audio timestamps to go all out of whack when playing back certain
videos with the media source. This is particularly prevalent with WMV
files using Microsoft codecs.

So to fix it, when the duration needs to be calculated, just calculate
the duration based upon the sample count of the audio packet. This fixes
the issue with the video in question that caused problems, and likely
fixes issues in a lot of videos that may have been floating out there
for some time. Basically this is a fix for a potential long-standing
issue.

Closes obsproject/obs-studio#3683
2020-11-15 04:57:41 -08:00
gxalpha bf5f65e19c autotools: Remove config module
Removes the config module, which is a directory with only an empty gitignore file.
It seems to serve no purpse anymore.
2020-11-14 14:48:54 -08:00
jp9000 ffe4c8552b Revert "obs-ffmpeg: Add error detection to ffmpeg-mux"
This reverts commit 4f87337646.

Reverting the line in 4f87337646 causing issues until it can be
properly investigated.
2020-11-14 13:08:35 -08:00
gxalpha 5f07f815f5 mac-virtualcam: Update locales
The plugin only uses one of the locales defined, the other ones can be removed.
This also makes the plugin actually use the one remaining string
2020-11-14 12:22:09 -08:00
Ka Ho Ng f8aa02897f UI: Detect other instances of obs on FreeBSD
Detect other instances of the obs by creating an extra dummy thread,
named "OBS runonce". The process of threads enumeration of current user
is guarded by an O_EXLOCK file advisory lock when opening the lock file.
Such file lock would be dropped once the thread name is changed.

This should be usable on FreeBSD and possibly compile on DragonFly BSD.

fixes: #3053
2020-11-14 12:04:31 -08:00
jpark37 013dd5a7a3 win-capture: Fix our own Vulkan spec violation
Pass valid instance when looking up VkCreateDevice.
2020-11-14 12:03:36 -08:00
Vadim Zhukov 12719816fc
Add sndio support (#3715)
Add sndio support
2020-11-14 11:58:55 -08:00
Vadim Zhukov 0d222b6b56 Add OpenBSD support 2020-11-14 11:55:22 -08:00
jp9000 fc6d53763a UI: Add Twitch VOD track to simple output mode
Allows the ability to use the separated Twitch VOD track with simple
output mode in addition to advanced output mode.
2020-11-14 08:05:52 -08:00
jp9000 cac2ff31f4 cmake: Put decklink-captions in source folders 2020-11-14 04:40:47 -08:00
jp9000 18a73c9a45 win-dshow: Add support for YUY2 in virtualcam 2020-11-14 04:25:39 -08:00
jp9000 8b30204946 UI: Move "changed" when recreating output res widget 2020-11-14 02:45:19 -08:00
jp9000 3805a11955 UI: Show service max resolution/framerate values to user
If a service has a maximum resolution and/or maximum framerate, shows
that to the user in the stream section of settings where the maximum
video/audio bitrate are shown.
2020-11-13 18:24:00 -08:00
jp9000 592cdfb039 UI: Add service res/fps limitation support to settings
Allows services to limit and enforce resolution and framerate values the
user can select in the UI if "ignore service recommendations" is not
checked. If the "ignore service recommendations" option is not checked,
the user will not be able to select or use a resolution and/or framerate
in the user interface that the service does not support. If "ignore
service recommendations" is checked, it will work as it normally would,
allowing any value to be used as per normal.

Fortunately, and hopefully for the foreseeable future, there is only one
service that enforces resolutions and framerates.
2020-11-13 18:23:24 -08:00
jp9000 ebbe8d1bf9 libobs: Change service max res. to res. list
(This commit also modifies rtmp-services and UI)

Changes the maximum resolution size to a resolution list, and splits the
maximum FPS to its own function.

(Note: ABI has not been modified because the last changes still haven't
been released yet, so it's safe to modify this as long as the changes
haven't been officially released)
2020-11-13 18:22:53 -08:00
jp9000 4f74ffe993 UI: Allow blocking all signals if resetting downscales
Allows the ability to block all the signals if resetting downscale
values, which will prevent values from triggering a widget update
unintentionally, forcing the user to have to save settings.
2020-11-13 18:09:14 -08:00
jp9000 97491ee91a UI: Add SetComboItemEnabled
Replaces SetComboItemDisabled in context-bar-controls.cpp with a global
function in qt-wrappers called SetComboItemEnabled, which allows both
enabling and disabling items in a combo box.
2020-11-13 18:07:20 -08:00
jpark37 a164a75ed6 win-capture: Warning fixes
Add explicit casts to convert data pointers to function pointers.

Add references for unused parameters.

Replace accidental BOOL* return values with BOOL.
2020-11-13 13:21:10 -08:00
jpark37 b3405d1f28 libobs-winrt: Fix misnamed function 2020-11-13 13:21:10 -08:00
Jim 70001be8ae
Merge pull request #3724 from PatTheMav/macos-bigsur-visuals
UI: Fix tray behaviour and app icon update for macOS
2020-11-13 08:42:25 -08:00
PatTheMav 9ac92f61be
UI: Use macOS app icon for Qt app on macOS 2020-11-13 17:17:45 +01:00
PatTheMav 8110b8bd65
UI: Fix tray icon menu handling on macOS 2020-11-13 17:17:45 +01:00
PatTheMav 84b2558995
UI: Update macOS app icon 2020-11-13 17:00:05 +01:00
PatTheMav 35e6f5e17a
UI: Update tray icons to use masks on macOS 2020-11-12 23:39:32 +01:00
Richard Stanway 3e7e99e0f3
Merge pull request #3711 from Gol-D-Ace/twitch-audio-bitrate
rtmp-services: Increase twitch audio bitrate
2020-11-11 21:41:24 +01:00
Richard Stanway 7394e10dd0
Merge pull request #3720 from jpark37/win-capture-unused
win-capture: Fix unused variables
2020-11-11 21:40:00 +01:00
jpark37 526c54fbba win-capture: Fix unused variables 2020-11-11 12:02:03 -08:00
jp9000 ade054eeaa UI: Fix compiler-specific error
Return value between ternary options are ambiguous on GCC/clang
2020-11-11 10:19:06 -08:00
jp9000 546dcc7a14 UI: Move "enforce" setting to "ignore" stream section
Moves the "Enforce streaming service bitrate" option from simple output
mode to the stream section, renames it to "Ignore streaming service
setting recommendations" (inverting it). When trying to check it, it
will now also display a message box warning the user that it's generally
a not-so-good idea.

Also displays recommended settings for the service.
2020-11-11 09:48:39 -08:00
jp9000 005863a346 UI: Refactor to make it easier to get service object
Refactors a bit of code to make it easier to get the current stream
service object in the settings
2020-11-11 09:48:10 -08:00
jp9000 fb7747c56e libobs: Implement obs_service func to get max bitrates
(This commit also modifies rtmp-services)

Implements obs_service_get_max_bitrate, which allows retrieving the
maximum audio/video bitrates directly rather than being forced to use
the apply method. Makes it a bit easier to get the bitrate values.
2020-11-11 09:42:26 -08:00
Gol-D-Ace 93ff11a4fc rtmp-services: Increase twitch audio bitrate 2020-11-09 10:44:58 +01:00
Colin Edwards 5f6793676d
Merge pull request #3701 from kkartaltepe/decklink-linux-fix
decklink: Fix compiling on linux
2020-11-05 11:23:34 -06:00
Kurt Kartaltepe 17f9414ada decklink: Fix compiling on linux
Typo left headers as source files so required functions were never
compiled in.

fixes #3699
2020-11-05 09:14:42 -08:00
jpark37 3564e446ff rnnoise: Explicit double to float conversions 2020-11-04 04:45:07 -08:00
jpark37 0cf7af35fe rtmp-services: Add missing int cast 2020-11-04 04:45:07 -08:00
jpark37 af8cb162c2 obs-ffmpeg: Add missing int cast 2020-11-04 04:45:07 -08:00
jpark37 c40b98948e libobs-winrt: Fix BOOL/bool mismatch warning 2020-11-04 04:45:07 -08:00