Commit Graph
2690 Commits
Author SHA1 Message Date
Colin Edwards 5b8f89d86e decklink: Clean up warnings introduced by caption code 2020-11-03 17:00:14 -08:00
Colin Edwards 82abfa42ce Merge pull request #3681 from vixns/decklink-detectfix
decklink: Fix format detection loop
2020-11-03 16:02:43 -06:00
Colin Edwards 613624532d Merge pull request #3676 from vixns/decklink116
decklink: Upgrade sdk to version 11.6
2020-11-03 15:58:32 -06:00
Stéphane Cottin de8cc46795 decklink: Upgrade sdk to version 11.6 2020-11-03 15:56:09 -06:00
Stéphane Cottin 65daf2c86d decklink: Fix format detection loop
Ignore color space change in format detection to fix endless loop.
Fix #3511
Fix #3277
2020-11-02 22:18:52 +01:00
Colin Edwards 923f06bfa6 decklink: Add ability to ingest/embed cea 708 captions
(This commit also modifies libobs, UI)
2020-11-01 22:28:49 -08:00
Ed Maste b9a1516254 linux-v4l2: avoid OOB write
v4l2_outputparm includes unused fields, defined as
	__u32		reserved[4]

Accesses to reserved[4] was out of bounds.  Fix this and simplify by
just zeroing the entire struct v4l2_streamparm instead.
2020-11-01 20:47:35 -08:00
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
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
+6 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
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 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
Joel Bethke 2b8ea4b5f3 obs-ffmpeg: Add MX350 to blacklist 2020-10-29 21:04:06 -07:00
Matt Gajownik 4a53958c87 obs-transitions: Expose hardware decoding for Stingers
This also enables hardware decoding by default for stingers.

Note: per c2a2bc5e40 this will not affect
webm files with alpha.
2020-10-23 22:34:24 -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
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
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
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
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 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
Maya Venkatraman c574b65488 obs-ffmpeg/ffmpeg-mux: Fix variable case 2020-10-13 13:29:17 -07:00
Maya Venkatraman 87a64e6565 obs-ffmpeg: Move muxer structure/funcs to header
(Jim) Allows the ability to use it for more output types.
2020-10-13 13:29:15 -07:00
jp9000 3d51602690 UI: Fix replay buffer frontend event not triggering
The frontend API event OBS_FRONTEND_EVENT_REPLAY_BUFFER_SAVED was not
being triggered when hotkeys were used because it was only set to
trigger when the replay buffer button was clicked, not when a hotkey was
used. This fixes it so that the frontend event sends a signal to the
frontend so that hotkeys will actually work.
2020-10-12 16:59:26 -07:00
jp9000 e1a0c60735 coreaudio-encoder: Actually fix coreaudio loading
Apparently using LoadLibrary on a full path doesn't work -- you need to
use SetDllDirectory before loading a library.
2020-10-06 07:50:38 -07:00
pkv 11602bc933 coreaudio-encoder: Fix path on windows
The path of coreaudio dll has changed in current versions of iTunes on
windows.  The patch fixes the issue while keeping compatibility with
previous path.

Fixes obsproject/obs-studio#3503
2020-10-05 03:39:33 -07:00
jp9000 1b5a331c56 coreaudio-encoder: Refactor windows import
Refactors the windows import library section so that it uses a list, and
remove a slightly unnecessary macro in release_lib
2020-10-05 03:39:33 -07:00
karenkim-AfreecaTV 3c058e1c0e rtmp-services: Update AfreecaTV 2020-10-04 23:44:01 -07:00
jp9000 c66fa09b46 win-capture: Update hook version 2020-10-04 11:41:19 -07:00
jp9000 7a2d64d00a win-dshow: Fix decoupled audio with EVGA/magewell
EVGA/magewell devices seem to use the default system drivers rather than
custom drivers, which causes their audio to become decoupled and treated
as completely separate devices rather than as an audio pin on the video
device. Basically, this would cause those devices to not have audio by
default, and force the user to have to manually select the audio, which
is bad user experience.

We already had a workaround for this with elgato devices, so expand that
code to become a whitelist of devices, and include EVGA/magewell
devices.
2020-10-04 10:07:12 -07:00
jpark37 9ba768837b win-capture: Violate Vulkan spec for compatibility
Rivatuner Statistics Server calls vkGetInstanceProcAddr for
vkCreateDevice with a NULL instance. According to spec, this should
return NULL, but RTSS will dereference this and crash.

This change returns function pointers for every intercepted function
regardless of instance, which is enough to keep RTSS alive.
2020-10-03 22:41:11 -07:00
Eric Lindvall 4f87337646 obs-ffmpeg: Add error detection to ffmpeg-mux
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.
2020-10-03 22:26:52 -07:00
Eric Lindvall 3d1c13210a obs-ffmpeg: Signal a remote disconnect for network streams from ffmpeg-mux
If using ffmpeg-mux to send a network stream, signal a disconnect error code
on error to allow reconnections to take place.
2020-10-03 22:17:02 -07:00
Jim 149550392b Revert "mac-capture: show actual windows in Window Capture sources" 2020-10-03 14:23:54 -07:00
windwakr 884c43f8c0 win-capture: Fix mask handling on some color cursors 2020-10-03 05:55:30 -07:00
Ben Bowler 0f14d2217d rtmp-services: Remove weabook.live
It seems like weabook.live is no longer a live streaming provider.
2020-10-02 06:27:39 -07:00
SCG82 0481873ef9 rtmp-services: Set actual integer value of bframes in services 2020-10-02 04:31:26 -07:00
Gol-D-Ace c66ebde080 Update translations from Crowdin 2020-09-27 23:07:27 +02:00
Kurt Kartaltepe be7dcb8bf6 v4l2-linux: Fix fourcc order
v4l2 pixfmt fourcc's are always stored little-endian.
ref: https://www.kernel.org/doc/html/latest/userspace-api/media/v4l/vidioc-enum-fmt.html?highlight=vidioc_enum_fmt
2020-09-27 00:08:48 -07:00