Commit Graph

2772 Commits

Author SHA1 Message Date
Matt Gajownik
f233222412 mac-virtualcam: Make DAL plugin filename case consistent
This caused issues on case sensitive filesystems
2021-01-18 08:57:26 +11:00
Matt Gajownik
bb6b1e53f8 obs-browser: Update to 2.11.0
- macOS Browser Docks
- Virtualcam Frontend Function/Events
- Manually set default font size
- Expose reload function for browser panels
2021-01-17 20:22:44 +11:00
Matt Gajownik
84fb6fc744 rtmp-services: Use official Twitch endpoint to fetch ingests 2021-01-14 09:28:21 +11:00
Hernán
92a7c12909 rtmp-services: update Piczel.tv recommended 2021-01-13 09:47:18 -08:00
Hayden McAfee
96ef45cef5 UI: Support FTL URLs for custom streaming service
Custom streaming service URLs beginning with `ftl` are handled by the
`ftl_output` plugin.
2021-01-13 09:44:52 -08:00
Meng Li
96c7790d80 obs-ffmpeg: Always fully restart remote media sources
When a media source is set to use a URL, always fully shut down the
media when stopped. This ensures that the media will do a full
reconnect after having been stopped.
2021-01-12 19:47:44 -08:00
Roman Sivriver
7029304b32 ftl-stream: Fix reconnect loop on FTL ingest disconnect
When connection to FTL ingest is lost, ftl_event() calls
obs_output_signal_stop() to trigger a reconnect. However, during the
reconnect delay, send_thread is still waiting on send_sem semaphore.
After the delay, ftl_stream_start() is called, which in turn resets
the semaphore and creates a new send_thread. Old send_thread now exits
the loop and triggers another reconnect and the whole process repeats
again. The fix resets the semaphore in ftl_event() so the old
send_thread exits immediately.
2021-01-12 18:28:41 -08:00
clone1018
64164a1523 rtmp-services: Add Glimesh service 2021-01-12 16:43:41 -08:00
Piotr Esden-Tempski
bb264b2b33 linux-v4l2: Improve error and debug logging
The capture loop errors are now logged as such.
Increased the amount of information logged in debug mode, including
state of all buffers on timeout.
Add device name to all capture loop debug output, especially useful when
debugging issues with multiple v4l2 video streams.
2021-01-12 09:33:11 -08:00
jp9000
c390bb950d cmake: Make mac vcam optional (enabled by default) 2021-01-11 16:16:25 -08:00
jpark37
535f6b0adc win-capture: Typeless game capture textures
Modify game capture shared textures to be typeless if they could
potentially need SRGB and non-SRGB views in the future.

These capture APIs have been updated: D3D 10/11/12, Vulkan.

D3D8 capture does not use shared textures.

D3D9 and GL interop do not support typeless textures.

The new game capture DLL should be compatible with old versions of OBS.

Also removed a lot of dead code around pointless SRV/RTV support.
2021-01-11 14:18:12 -08:00
jpark37
2de056e32c obs-filters: Fix color overlay in color correction
Use color picker with alpha to restore color overlay functionality.
2021-01-11 11:52:50 -08:00
Lin
f4a76f9daa obs-qsv11: Fix bframe=0 not working
Fixes obsproject/obs-studio#3979.
2021-01-11 11:52:07 -08:00
Colin Edwards
3056977737 CI: Update macOS to CEF 4183 2021-01-08 10:26:15 -08:00
Colin Edwards
0a614cbf84 obs-browser: Update to 2.10.9
macOS hardware acceleration
multiprocess on macOS
2021-01-07 23:02:45 -06:00
Adrián Pardini
e4835daac2 rtmp-services: Add CamSoda service 2021-01-07 08:46:17 -08:00
SCG82
6a9e59108b rtmp-services: Add MyFreeCams 2021-01-07 07:05:56 -08:00
jp9000
dffa822112 win-dshow: Fix dshowcapture not linking audio of certain devices 2021-01-04 07:02:53 -08:00
Hector Martin
9616b79026 linux-jack: fix deadlock when closing the client
This lock causes a deadlock when freeing the JACK client while a
process callback is pending:

deactivate_jack -> locks mutex
   JACK thread -> calls jack_process_callback
   jack_process_callback -> blocks on mutex
jack_client_close -> joins JACK thread
(deadlock as the process callback never returns)

Instead, just don't lock the mutex. This is only mutexing on
creation/destruction of the JACK client. This is not necessary: the
process callback will only run after jack_activate (which is right
before the mutex is released in jack_init()), and will stop running
by the time jack_client_close returns. We don't actually need to
unregister any ports, so just call jack_client_close first thing in
deactivate_jack, which will guarantee the process callback has
completed before returning.

In fact, jack_process_callback isn't allowed to lock any mutexes or
allocate any memory at all, so this plug-in is still broken in this way
as obs_source_output_audio does that. This can cause audio xruns, as
realtime guarantees are violated. This is something that should be
fixed in the future, but at least it's not a deadlock.
2021-01-03 11:08:58 -08:00
Hector Martin
5d6bca0fd2 linux-jack: mark ports as JackPortIsTerminal
Ports which do not feed audio back into JACK should be marked as terminal.
This allows latency compensation to work properly.
2021-01-03 11:08:58 -08:00
Hector Martin
df6446c573 linux-jack: fix timestamp calculation
The previous calculation was completely broken, returning offset
timestamps in the best case, and complete insanity in the worst case
(e.g. if an xrun occurs or JACK otherwise has a glitch).
2021-01-03 11:08:58 -08:00
jp9000
c38daa1934 obs-browser: Initialize CEF early to fix macOS crash
Initialize CEF during obs_module_load() to prevent a crash in Chrome's
memory allocation handler.

Reference: obsproject/obs-browser#256
2021-01-03 08:36:24 -08:00
Avital Yachin
cfd8b2daf1 rtmp-services: Add Loola.tv service
Closes obsproject/obs-studio#3932
2021-01-02 12:31:23 -08:00
jp9000
979054cc8c rtmp-services: Fix json formatting 2021-01-02 12:29:13 -08:00
Clayton Groeneveld
51050f7181 image-source: Fix slideshow transition bug when randomized
This fixes a bug where the transition wouldn't work when playback
is randomized and restart on activate is used.
2021-01-02 04:35:24 -08:00
Biswapriyo Nath
e6ff2b6729 coreaudio-encoder: Fix cmake for mingw
This prevents windres to catch up '-Wno-multichar' as an option which is
unknown to it.  This flag was added in commit
aa0e64b7c9
2020-12-29 13:17:29 -08:00
gxalpha
ac8eaad483 mac-virtualcam: Remove unnecessary logging
Removes logging from the DAL plugin that is not really necessary but spams Console.app
2020-12-29 05:48:10 -08:00
gxalpha
20c41dba8a mac-virtualcam: Mark parameters as unused
Marks function parameters as unused, removing compiler warnings
2020-12-29 05:45:54 -08:00
Justin Bull
627aaeddb4 image-source: Add .webp to "All formats" option 2020-12-29 00:39:22 -08:00
Justin Bull
940a07e62f image-source: Add webp to file filter 2020-12-29 00:39:22 -08:00
Richard Stanway
e5c6839904 libobs, obs-ffmpeg: Use correct value for EINVAL error check
FFmpeg functions such as av_interleaved_write_frame return negative
on error, so all errno values are negated.
2020-12-21 18:37:49 +01:00
Rodney
60fed63d68 Merge pull request #3877 from derrod/purge-services
UI/rtmp-services: Remove Smashcast
2020-12-21 09:46:53 +01:00
Colin Edwards
8285141ba5 decklink: Fix automatic pixel format detection 2020-12-20 14:44:14 -08:00
SCG82
c7b89fa36b mac-virtualcam: Fix file mode 2020-12-18 00:11:00 -08:00
derrod
47ba751e24 rtmp-services: Remove Smashcast 2020-12-14 04:45:54 +01:00
Gol-D-Ace
7368a2c7cc Update translations from Crowdin 2020-12-14 00:29:44 +01:00
Gol-D-Ace
81b5f3ee8d Merge pull request #3855 from Linnun/update-steam-rtmp
rtmp-services: Update Steam
2020-12-13 19:17:52 +01:00
jp9000
00f0d5eb4e Revert #3856
It's a bit too close to release, so revert #3856 for now until there's
an open PR window instead.
2020-12-12 12:28:02 -08:00
Hector Martin
a602fa8797 linux-jack: fix timestamp calculation
The previous calculation was completely broken, returning offset
timestamps in the best case, and complete insanity in the worst case
(e.g. if an xrun occurs or JACK otherwise has a glitch).
2020-12-12 12:05:28 -08:00
Hector Martin
b7567f23fb linux-jack: fix deadlock when closing the client
This lock causes a deadlock when freeing the JACK client while a
process callback is pending:

deactivate_jack -> locks mutex
   JACK thread -> calls jack_process_callback
   jack_process_callback -> blocks on mutex
jack_client_close -> joins JACK thread
(deadlock as the process callback never returns)

Instead, just don't lock the mutex. This is only mutexing on
creation/destruction of the JACK client. This is not necessary: the
process callback will only run after jack_activate (which is right
before the mutex is released in jack_init()), and will stop running
by the time jack_client_close returns. We don't actually need to
unregister any ports, so just call jack_client_close first thing in
deactivate_jack, which will guarantee the process callback has
completed before returning.

In fact, jack_process_callback isn't allowed to lock any mutexes or
allocate any memory at all, so this plug-in is still broken in this way
as obs_source_output_audio does that. This can cause audio xruns, as
realtime guarantees are violated. This is something that should be
fixed in the future, but at least it's not a deadlock.
2020-12-12 12:05:28 -08:00
Hector Martin
a5439d29d0 linux-jack: mark ports as JackPortIsTerminal
Ports which do not feed audio back into JACK should be marked as terminal.
This allows latency compensation to work properly.
2020-12-12 12:05:28 -08:00
jp9000
f17ea5d1bc obs-browser: Add obsExit event 2020-12-11 18:49:00 -08:00
Linnun
cc15ada06e rtmp-services: Update Steam
Steam now automatically selects the closest available server
2020-12-09 21:43:13 +01:00
Kurt Kartaltepe
f80421a76d sndio: remove strerror_l
Replace it with the typical strerror for platforms that dont have full
posix support (freebsd/clang).

fixes #3835
2020-12-08 14:21:20 +11:00
stump
eac6604a83 linux-v4l2: Fix bashism in v4l2loopback module detection
When /bin/sh isn't bash, the previous line always appears to succeed,
and modinfo's output is not redirected, because it actually runs
modinfo in the background (which always succeeds) then opens and closes
/dev/null without doing anything to it. This causes us to always think
that the v4l2loopback module is installed, even when it isn't.
2020-12-08 13:51:40 +11:00
John Boiles
55da44d7ee mac-virtualcam: Build a universal x86_64+arm64 binary for M1 Macs 2020-12-03 19:13:44 -08:00
Alex
08ebc25e42 vlc-video: Free media struct 2020-12-03 14:28:26 -08:00
gxalpha
fd34f0b2ab mac-virtualcam: Fix remaining global namespaces
Gives the MachServer a unique name which was forgotten in a previous commit
2020-12-03 14:28:01 -08:00
Matt Gajownik
0c0be0befd obs-browser: Update to 2.9.0
- Log CEF version
- Add internal support for CEF 4183
- Add support for CMake 3.19.0
- Add support for fractional scaling in browser panels
2020-11-30 13:43:56 +11:00
jp9000
8d58578f6d enc-amf: Fix inability to set bitrate in latest AMD driver 2020-11-26 09:41:00 -08:00