8816 Commits

Author SHA1 Message Date
Kurt Kartaltepe
dc7d829751 linux-v4l2: Hide modinfo from terminal
Using modinfo dumps all the output into the terminal instead redirect
all output to dev/null.
2020-10-31 21:00:51 -07:00
Richard Stanway
9a64adb4d1 UI: Don't update source context bar when hidden 2020-10-31 20:59:12 -07:00
Matt Gajownik
737481c09e vlc-video: Use case insensitive compare for valid extension check
It's possible for files to have some/all characters uppercase.

Fixes #3562
2020-10-31 20:45:31 -07:00
Joel Bethke
5662ec6991
Merge pull request #3674 from RytoEX/update-contributing-doc
CONTRIBUTING.rst: Update CONTRIBUTING doc
2020-10-31 18:39:37 -05:00
Ryan Foster
4a890e1da9 CONTRIBUTING.rst: Update CONTRIBUTING doc
Update link to compiling and building instructions to point to the
GitHub repo at the "obsproject" org URL. Replace link to Mantis with
link to GitHub Issues for our bug tracker to mirror the contents in
README.rst.
2020-10-31 19:30:01 -04:00
Ryan Foster
7f4e375e12 UI: Disable stream encoder setting in simple output with active output
We disable the stream encoder setting in Advanced Output Mode when an
output is active, so let's also disable the stream encoder setting in
Simple Output Mode when an output is active.
2020-10-31 02:52:24 -07:00
John Boiles
2700db9ff9 Add virtualcam plugin to OBS codebase
Co-authored-by: lvsti <lvsti@users.noreply.github.com>
Co-authored-by: Sebastian Beckmann <beckmann.sebastian@outlook.de>
Co-authored-by: Stefan Huber <sh@signalwerk.ch>
Co-authored-by: Ryohei Ikegami <iofg2100@gmail.com>
Co-authored-by: Colin Dean <colin.dean@target.com>
Co-authored-by: Wolfgang Ladermann <extern.ladermann_wolfgang@allianz.de>
Co-authored-by: Simon Eves <simon.eves@omnisci.com>
Co-authored-by: Colin Nelson <colnnelson@google.com>
Co-authored-by: Yoshimasa Niwa <niw@niw.at>
Co-authored-by: Michael Karliner <mike@modern-industry.com>
Co-authored-by: Jason Grout <jgrout6@bloomberg.net>
Co-authored-by: Alfredo Inostroza <jadenguy@gmail.com>
Co-authored-by: Daniel Kennett <daniel@cascable.se>
Co-authored-by: Gary Ewan Park <gep13@gep13.co.uk>
Co-authored-by: José Carlos Cieni Júnior <cienijr@outlook.com>
2020-10-30 23:36:57 -07:00
Jim
b32abbe33f
Merge pull request #3083 from pkviet/srtfix4
UI: Enable sps/pps (video headers) repetition (for srt/mpegts)
2020-10-30 23:25:24 -07:00
Christian Lockley
ad528bef17 UI: Detect other instances of obs on Linux
fixes: obsproject#3053
2020-10-30 11:50:47 -07:00
Richard Stanway
57bed7923e UI/installer: Use random temp directory for security
Using a fixed path would allow malware on a compromised system to
perform a DLL planting attack. Reported by Erik Wynter.
2020-10-30 17:10:34 +01:00
Florian Zwoch
0c39fd08c7 libobs: Add desktop session type to Linux log
Add the content of the XDG_SESSION_TYPE environment variable to
the output log if it is set. This is usually set on modern Linux
distributions and typically carry either "x11" or "wayland" when
run from a desktop environment.

This is independent from the QT_QPA_PLATFORM environment variable
which would allow OBS Studio to run inside a wayland session. The
session type it runs on does have an implication on the behavior of
some plugins like screen and window capture. So having this
information exposed here is extremely helpful for diagnosing
issues.
2020-10-30 02:19:21 -07:00
Maya Venkatraman
1920571fdf rtmp-services: Add YouTube RTMPS beta service
Add YouTube RTMPS service to services.json as a beta.
2020-10-30 02:18:43 -07:00
Joan Miquel Fuster
0f1be8705c rmtp-services: Add Viloud service
Viloud is an online video platform for creating and streaming live,
linear and on-demand TV channels.
2020-10-30 02:18:10 -07:00
Clayton Groeneveld
6af8726c74 linux-v4l2: Add virtual camera output 2020-10-30 02:00:14 -07:00
jp9000
4b3639972b win-dshow: Fix virtualcam crash and reference bug
Fixes a null pointer dereference in the output filter, and fixes a bug
where the output filter would incorrectly hold a reference to the filter
graph.
2020-10-30 01:55:55 -07:00
jp9000
6af26d3290 UI: Add max cx/cy/fps clamp (if service specifies) 2020-10-30 00:28:44 -07:00
jp9000
45ba3b0db3 rtmp-services: Add max recommended cx/cy/fps for Facebook 2020-10-30 00:28:44 -07:00
jp9000
000806fe81 rtmp-services: Add specifiable max cx/cy/fps in json 2020-10-30 00:28:44 -07:00
jp9000
e4c6b59852 libobs: Add ability to get max cx/cy/fps from service
This obs_service_t object callback was implemented specifically for
services which may have a maximum recommended width, height, and
framerate that needs to be enforced.
2020-10-30 00:28:44 -07:00
Joel Bethke
2b8ea4b5f3 obs-ffmpeg: Add MX350 to blacklist 2020-10-29 21:04:06 -07:00
Johann Garces
ade4c4cf49 UI: Run Autoconfig Wizard on New Profile Creation
New profile state is similar to first start: settings are wiped, encoders
not setup. It may make sense to show the auto configuration wizard when
a new profile is made as well.

There is a checkbox option to show the wizard. If a profile is created
with the checkbox off, the checkbox will remain defaulted to off next
prompt.
2020-10-29 14:15:57 -07:00
PatTheMav
c16517ca83 CI: Update macOS build script to support alternative build configs
Also adds a tweak to the brew update which _might_ fix Azure CI.
2020-10-23 23:36:07 -07:00
Matt Gajownik
4a53958c87 obs-transitions: Expose hardware decoding for Stingers
This also enables hardware decoding by default for stingers.

Note: per c2a2bc5e4027f9e4cba75989f0591200eef8c768 this will not affect
webm files with alpha.
2020-10-23 22:34:24 -07:00
Matt Gajownik
a86d4c073d libobs: Return default obj and array rather than current
Fixes #3357
2020-10-23 22:32:20 -07:00
Matt Gajownik
bc7afb0fae UI: Report detailed output errors for Replay Buffer
Same changes as 0c0ffb341cfb521473479cdcd391c3507b05cf46
2020-10-21 18:10:05 -07:00
PatTheMav
f190a9f7fb CI: Fix Windows artifact issues and housekeeping 2020-10-18 20:12:56 -07:00
hgonomeg
4390eb5591 UI: Fix replay buffer saved event in advanced mode
AdvancedOutput::AdvancedOutput(OBSBasic *main_) lacked
a proper event handler connection
2020-10-18 12:17:31 -07:00
Ryan Foster
9ab0d8c524 docs: Fix GitHub Actions doc check warnings 2020-10-16 16:27:38 -07:00
Kurt Kartaltepe
c6a3b71a28 linux-alsa: Support more device formats
OBS already handles a couple of different audio formats, this expands
alsa input to try these additional formats for devices with weird format
support.

fixes #3547
2020-10-16 05:50:57 -07:00
Mikhail Kochegarov
117d35433f UI: Detect other instances of obs on macOS
Detect other instances of the obs by inspecting running applications
with same bundle ID.

fixes: #3053
2020-10-16 05:48:37 -07:00
Exeldro
64869bac46 UI: Add duplicate filter 2020-10-16 05:38:10 -07:00
Florian Zwoch
bac24c2ca6 obs-filter: Fix potential symbol clashing on Linux
RNNoise symbols may collide with external ones provided by
libcodec2.so which FFMPEG may pull in automatically. Changing
the visibility of these symbols will guarantee the use of the
internal ones and not pick some (potential incompatible) from
outside.

fixes #3561
2020-10-16 05:26:25 -07:00
craftwar
7331a43aee UI: Update Twitch Get Stream Key link 2020-10-16 05:12:16 -07:00
jpark37
dbf318a388 UI: Apply minimum width to Stats fields
Helps prevent Stats dock from resizing OBS when long text is set.
2020-10-16 05:11:53 -07:00
Clayton Groeneveld
2b50263d5c UI, libobs: Add ability to copy/paste single filter 2020-10-15 10:14:22 -07:00
Clayton Groeneveld
8a674137d7 UI: Keep showing time when paused 2020-10-15 10:12:46 -07:00
jp9000
0b24b3ae14 obs-ffmpeg/ffmpeg-mux: Fix issue with HLS
For some reason, currently unknown, FFmpeg logging has to be set to
something in order for HLS to not fail on Windows, even if it's just an
empty function.

(Author comment: I don't feel comfortable not knowing why, my theory is
that FFmpeg has an issue with this internally with HLS on Windows
related to logging or how it's trying to log, I have absolutely no idea
what's going on and if someone can enlighten me or debug FFmpeg itself
it'd be real nice to know why.)
2020-10-14 19:39:12 -07:00
jp9000
18486853a5 obs-ffmpeg: Add ability to debug ffmpeg-mux subprocess
Adds a cmake variable (DEBUG_FFMPEG_MUX) which enables FFmpeg debug
output in the ffmpeg-mux subprocess, and if on Windows, shows the
console window of the ffmpeg-mux subprocess so the current output can be
seen.
2020-10-14 18:42:22 -07:00
TobiasGSmollett
af28c940f8 UI: Fix text clipping on non-English locales in certain locations
Fix #3514 on MacOS and Ubuntu.
2020-10-14 06:42:38 -07:00
jpark37
dad861b036 win-capture: Fix D3D leaks on swap chain release
For game capture, hook DXGI release function to release D3D objects if
the related swap chain is also being destroyed.

An added bonus is that the game capture hook will handle swap chain
recreation for applications that don't use ResizeBuffers.
2020-10-13 18:47:35 -07:00
Jim
19cb3b9463
Merge pull request #3114 from ushadow/add-youtube-hls-streaming
Add HLS streaming output
2020-10-13 14:52:30 -07:00
Maya Venkatraman
22d060e3cc rtmp-services: Add YouTube HLS service selection 2020-10-13 13:54:42 -07:00
Maya Venkatraman
49d351b537 obs-ffmpeg: Add HLS output
Add and register an obs_output_info struct called
ffmpeg_hls_muxer. It uses ffmpeg's HLS muxer to stream output.

Add threading and buffer to reduce skipped frames.
Also add frame drop logic when there are too many packets in the
buffer for congestion control.
2020-10-13 13:54:42 -07:00
Maya Venkatraman
c4e71794d9 obs-ffmpeg: Allow using stream keys with muxer
(Jim) Allows the ability to use stream keys with ffmpeg-mux -- this will
enable the ability to use it with certain services (such as YouTube)
which allow different protocols (such as HLS)
2020-10-13 13:54:42 -07:00
Maya Venkatraman
d7e673d23d obs-ffmpeg: Allow specifying mux settings directly
(Jim) Allows the ability to specify mux settings directly on the
output's structure itself rather than just via settings. This is useful
for network-based muxer outputs (such as HLS).
2020-10-13 13:54:08 -07:00
Maya Venkatraman
966b48a0f7 obs-ffmpeg/ffmpeg-mux: Use separate printable URL target
(Jim) printable_file allows the ability to keep a separate string for
logging which will not contain things like stream keys when used with
outputs such as HLS.
2020-10-13 13:54:01 -07:00
Maya Venkatraman
04596ec097 obs-ffmpeg/ffmpeg-mux: Set codec->time_base if avformat < 59 2020-10-13 13:29:17 -07:00
Maya Venkatraman
f7a468dd30 obs-ffmpeg/ffmpeg-mux: Add ability to get FFmpeg logging 2020-10-13 13:29:17 -07:00
Maya Venkatraman
336c1994ad UI: Find YouTube via starting string, not full match
Allows the ability to get the stream key for YouTube regardless of
whether using the normal RTMP or HLS versions of YouTube.
2020-10-13 13:29:17 -07:00
Maya Venkatraman
41f4a0b0b9 UI: Add support for "More Info" link from service
(Jim) Allows the ability to get a link from the service's settings about
a specific service selection the user chooses and display it as a "More
Info" button that the user can click to find out more information about
that particular service.
2020-10-13 13:29:17 -07:00