2913 Commits

Author SHA1 Message Date
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
ffe4c8552b Revert "obs-ffmpeg: Add error detection to ffmpeg-mux"
This reverts commit 4f87337646f4db0d50a4ebb257faf0640a729805.

Reverting the line in 4f87337646f4d 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
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
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
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
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
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
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
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
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
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
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 c2a2bc5e4027f9e4cba75989f0591200eef8c768 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