Commit Graph

1399 Commits (ac2f792d507232d8ddbbdf08f61e974258ba2d8f)

Author SHA1 Message Date
Cephas Reis 1e17414e8f obs-filters.c: Fix color correction filter saturation
The Saturation option was unbalanced, giving more weight to the color
red and a TON more weight to the color blue.  This patch balances the
colors to provide a more even increase in saturation across the RGB
channels.

Closes jp9000/obs-studio#739
2017-01-16 03:41:57 -08:00
Cephas Reis 10d6d5f0ca obs-filters.c: Fix color correction filter OpenGL crash
When using this filter in/on OpenGL situations can cause crashes with an
"int to vec4" cast.  This fix should resolve that issue.

Closes jp9000/obs-studio#739
2017-01-16 03:41:50 -08:00
Jim 956349fdd3 Merge pull request #759 from derrod/ignore-opencl
obs-x264: ignore opencl param
2017-01-16 03:31:37 -08:00
Jim b45cf05db9 Merge pull request #753 from Xaymar/feature_amd-encoder
enc-amf: Update to 1.4.3.8
2017-01-16 03:30:29 -08:00
jp9000 f4d7f0cbba Revert "win-capture: Use FindWindowEx to traverse window list"
This reverts commit bd67c18c02.

Causes performance issues when the window isn't found.  The situation it
fixes is also very rare anyway.
2017-01-16 03:22:12 -08:00
jp9000 21d70fa207 win-capture: Don't use FindWindow for game capture keepalive
Using and creating a window can use issues in game capture if multiple
game captures are active, so revert back to using a mutex, and just
ignore the keepalive check failure if injected inside a UWP program
(only check to see if GetLastError reports that it's not found -- if it
returns access denied or any other error, assume it's in a UWP program,
and ignore the keepalive check).
2017-01-15 09:15:45 -08:00
Michael Fabian Dirks 6939bddf8f enc-amf: Update to 1.4.3.8 2017-01-12 19:47:57 +01:00
derrod dad1e3a01b obs-x264: ignore opencl param
Silently ignores opencl parameter for x264 to protect users
following bad youtube guides.
2017-01-12 07:27:23 +01:00
Jim 09d6022171 Merge pull request #755 from DDRBoxman/osx
CI: Update browser plugin ref and build scripts.
2017-01-09 18:13:23 -08:00
Colin Edwards 770a9b7e67 CI: Update browser plugin ref and build scripts.
Hopefully this will fix a crash from CEF on 10.9
2017-01-09 19:48:32 -06:00
Gol-D-Ace 6223ed6520 Update translations from Crowdin 2017-01-07 00:23:16 +01:00
Iblis Lin 7a15f670e1 obs-outputs: fix build error on freebsd
There is a build error on freebsd:
    error: invalid application of 'sizeof' to an incomplete type
    'struct sockaddr_in'

Include proper header file to solve this.

Ref:
https://www.freebsd.org/doc/en/books/developers-handbook/sockets-essential-functions.html
2017-01-04 16:31:50 +08:00
Gol-D-Ace 34f48aa3fc rtmp-services: Increase video bitrate limit for YouTube
YouTube now recommends a max video bitrate of 51.000 Kbps.
2016-12-30 15:35:35 +01:00
jp9000 afe37773bc obs-outputs: Free encoder packet data manually
These aren't referenced encoder packets, so they must be freed manually.
2016-12-24 03:01:52 -08:00
Gol-D-Ace 69f0bc244a Update translations from Crowdin 2016-12-23 20:46:47 +01:00
jp9000 21be33805d win-capture: Release backbuffers immediately upon init
There's no need to keep a reference to the backbuffers.  That and the
backbuffer references weren't being released anyway, so that fixes that
bug.
2016-12-23 08:07:26 -08:00
jp9000 74a5bdf993 win-capture: If backbuffer count is 1, disable dxgi 1.4 use
Executing the dxgi 1.4 code causes it to cycle through backbuffers,
backbuffers which may not exist if in discard mode.
2016-12-23 08:02:35 -08:00
jp9000 414ff5ba14 win-capture: Refactor DX12 backbuffer code
It was undesirable to pass arrays via function parameters, so a
structure should be used instead.

Also increases total allowable backbuffers to 8.
2016-12-23 08:02:30 -08:00
jp9000 a4143be052 win-capture: Fix possible access of array beyond size
If the backbuffer count is larger than 3, it could still try to assign
backbuffers to pointers beyond the variable's array size when calling
swap->GetBuffer.
2016-12-23 07:49:13 -08:00
Alexandre Biny b276b1633e obs-qsv11: Use d3d9 allocator on Win7
Use a d3d9 device and allocator to encode in QSV.

This fixes a random crash that could only happen on Windows 7. The QSV
Deviced returned a DEVICE_FAILURE after a random amount of time with the
old method.

This fix is totally based on Shinck's QSVHelper.exe patch for OBS
Classic (see
https://obsproject.com/forum/threads/0-633b-qsvhelper-exe-was-killed-encode-failed.19230/page-3#post-161984
for more information)

This is more like a proof of concept, but that fix is currently stable
and tested more than 50 hours, with a single session of +14 hours.

That commit doesn't respect all OBS Guidelines. It is currently
recommended to wait for a more "cleaner" implementation.
2016-12-23 07:49:12 -08:00
Cephas Reis 2278782c19 obs-filters: Fix comment messages
Split commit for jp9000/obs-studio#733
2016-12-23 02:40:00 -08:00
Cephas Reis d231f40588 obs-filters: Add "Color" option to color correction filter
Closes jp9000/obs-studio#733
2016-12-23 02:39:44 -08:00
jp9000 2da7f3cb0e win-capture: Add a few new blacklisted game capture exes 2016-12-23 02:17:14 -08:00
jp9000 ad72194090 win-capture: Do not add certain windows to window lists
Due to using FindWindowEx to search for certain windows, certain windows
will show up that aren't usable/capturable.  Prevent these windows from
showing up in the window lists.
2016-12-23 02:15:59 -08:00
jp9000 4fe2ca0f75 win-capture: Fix possible null pointer dereference 2016-12-23 02:04:26 -08:00
jp9000 bd67c18c02 win-capture: Use FindWindowEx to traverse window list
For some unknown reason, GetWindow will not traverse the entire window
tree.  It could be due to Microsoft purposely hiding certain UWP
windows, though the reason is unknown.  For some equally unknown reason
FindWindowEx does work in its place.

This fixes the issue of not being able to find/capture certain windows,
such as halo 5: forge.
2016-12-23 01:53:44 -08:00
jp9000 3b5a30ce97 win-capture: Capture all D3D12 backbuffers
D3D12 capture does not take in to account when multiple backbuffers are
in used.  With previous versions of Direct3D there was no need to do
this, but with D3D12 you must explicitly capture each specific
backbuffer currently in use.
2016-12-23 01:53:15 -08:00
jp9000 cef4cba576 obs-ffmpeg: Fix nvenc_h264 deprecated message
The encoder name was changed from "nvenc_h264" to "h264_nvenc", and will
throw a warning in the log file if you use the former, so try the latter
first, then the former.
2016-12-21 19:27:55 -08:00
jp9000 c4580ac6ba obs-text: Do not reset blend state
Similar to the parent commit, do not reset the blend state if the source
is not marked as a custom drawn source.  Filters applied won't have the
correct blend state and the alpha edges of the text will be partially
black.
2016-12-21 15:31:13 -08:00
jp9000 922e1d23f9 image-source: Do not change blend state
The blend state does not need to (and should not) be changed.  This
fixes an issue where if filters are applied to an image source, the
image source will paint incorrectly.
2016-12-21 15:26:33 -08:00
Cephas Reis d4cd14b05c obs-filters: Improve "Color Correction" filter
Replaces the "Color Correction" filter with a newer version that uses a
matrix, adds hue and saturation, and improves the contrast option.

Closes jp9000/obs-studio#708
2016-12-20 23:08:00 -08:00
Jim 94a1b0eaef Merge pull request #710 from Xaymar/feature_amd-encoder
enc-amf: Update to version 1.4.3.4 for AMD Driver 16.12.1
2016-12-20 22:46:28 -08:00
Michael Fabian Dirks 6bf1a033af enc-amf: Update to 1.4.3.4 for AMD Driver 16.12.1 2016-12-21 04:47:41 +01:00
shiina424 0d5a23d5f7 obs-ffmpeg: Don't allow 32kb/s with FFmpeg AAC encoder
FFmpeg's AAC encoder is unideal at very low bitrates.

Closes jp9000/obs-studio#722
2016-12-18 06:16:16 -08:00
jp9000 68a8a5bf2b win-capture: Do not fall back to other windows for UWP windows
If capturing a UWP window, do not fall back to matching windows with the
same window class if the exact window is not found, as this will get any
other UWP window on the system (due to the fact that they all have the
same window class name).
2016-12-16 14:06:05 -08:00
jp9000 4f4aea4562 win-capture: Add debug messages when hooking
These are helpful for debugging UWP capture issues.
2016-12-16 14:06:04 -08:00
jp9000 61773bcbf2 win-capture: Fix cursor not painting with UWP windows
Because the hook cannot get the window handle of UWP windows, fall back
to using the window handle stored in the game capture source itself if
it's unavailable from the hook.
2016-12-16 14:06:03 -08:00
jp9000 b3119e0a8d win-capture: Don't hard fail if thread ID not found
Under certain circumstances, the program may not be able to acquire the
window thread ID for a UWP process, but will be able to acquire the
process ID.  In this case, it should soft fail and retry, rather than
assume it's unacquirable and stop trying to reacquire.
2016-12-16 14:06:02 -08:00
jp9000 a5337605cd win-capture: Add ApplicationFrameHost to game capture blacklist
The ApplicationFrameHost process is a sandbox process, and should not be
hooked.
2016-12-16 14:06:01 -08:00
jp9000 480d0e986f win-capture: Fix "attempting to hook [executable]" message
The "attempting to hook [executable]" message would not display the
correct executable if it's fallen back to a different window with the
same window class.
2016-12-16 14:06:00 -08:00
jp9000 209bcda1f4 win-capture: Wait a few frames for hook to load
Now that the game capture hook creates and controls all the
synchronization objects, it's no longer possible to expect that the hook
is fully loaded by the time game capture tries to initialize it.  In
that case, allow game capture to retry the hook for a few frames before
assuming something failed.
2016-12-16 14:05:59 -08:00
jp9000 bddd9766ac win-capture: Don't hook suspended processes
Remote threads in suspended processes will also start up suspended, so
do not attempt to hook suspended processes.
2016-12-16 14:05:58 -08:00
jp9000 e29638ebf9 win-capture: Log plugin-side when capture successful/lost 2016-12-16 14:05:57 -08:00
jp9000 d4a99e062b win-capture: Output hook debug messages if addresses missing 2016-12-16 14:05:57 -08:00
jp9000 926b9c5f96 win-capture: Open UWP named objects with helper functions
This detects whether the target process is a UWP process, and then uses
the open_app_* functions for mutexes/events/mapping.  Also slightly
refactors named object open functions.
2016-12-16 14:05:56 -08:00
jp9000 aeb1d7ae1b win-capture: Add ability to open UWP named kernel objects
The only way to open named kernel objects within a UWP "app" is to get
the AppContainer SID, and then open the objects with their full
system namespace names via undocumented NT functions.
2016-12-16 14:05:55 -08:00
jp9000 b5f216ef88 win-capture: Use wide strings for named objects
Prevents from having to mix ansi/wide string usage for opening UWP
programs.
2016-12-16 02:21:10 -08:00
jp9000 c63bb17b08 win-capture: Remove redundant function
This function now already exists elsewhere -- open_event_plus_id.
2016-12-16 02:21:09 -08:00
jp9000 ec4c05f406 win-capture: Don't use "Local\" for game capture shared mem
The "Local\" prefix effectively does nothing.
2016-12-16 02:21:08 -08:00
jp9000 ab9bda52e0 win-capture: Create all named objects within hook
All named objects (including file mapped shared memory) need to be
created within the hook itself due to the fact that UWP programs cannot
access named objects outside of the UWP process.

Because shared memory needs to be created within the hook, the capture
loop cannot start until the shared memory has been filled with valid
data.  Creating an additional "initialize" event fixes this issue.

Additionally, changed the way that named kernel objects are
opened/created.  Before, there were functions that would first try to
open named objects and then implicitly create them if opening failed
(assuming that if the hook didn't create it first, game capture would),
now it's been changed so that you can only either explicitly open or
create.
2016-12-16 02:21:07 -08:00
jp9000 d19342442f win-capture: Use window for keepalive check
To check to make sure game capture is still active in the capture
program, it currently uses a named event, and then it checks to see if
that named event exists.  However with UWP programs, you can't open a
named event outside of the UWP process.  FindWindow on the other hand
does work, so instead of checking to see if a named kernel object
exists, create a window and check to see if that window exists.
2016-12-16 02:21:06 -08:00
jp9000 1e48b522fa win-capture: Fix getting proper UWP window handles
The "main" windows detected for UWP programs are basically to help
sandbox the programs -- they run in the ApplicationFrameHost process and
help reduce the possibility of other programs trying to access the
actual process window, which is a child window.

To bypass this, go through the list of child windows for the
ApplicationFrameHost window, and then find the one that's attached to
a different process; that different process will always be the target,
and will allows us to open the actual process of the UWP program.
2016-12-16 02:21:05 -08:00
jp9000 4ec1033741 win-capture: Do not require pipe/mutex within hook
Named pipes cannot be used within UWP programs, so make them optional.
2016-12-15 13:03:44 -08:00
jp9000 746061fb3a win-capture: Always use minimal access rights within hook
This prevents issues with opening handles to objects within UWP
programs, which have increased security limitations.
2016-12-15 13:03:42 -08:00
jp9000 e148087636 win-capture: Only duplicate to get cur thread handle
Instead of calling OpenThread, use DuplicateHandle with the minimal
access rights (SYNCHRONIZE) to be able to get the current thread handle
within a UWP program.
2016-12-12 08:10:06 -08:00
jp9000 f2e85b8352 obs-ffmpeg: Add replay buffer output
This output allows buffering the encoded data, and then muxing the
current buffer to a file on the spot via a hotkey the user sets.
2016-12-08 03:36:17 -08:00
jp9000 7d6e6eee79 libobs: Use reference counting for encoder packets
Prevents reallocation of encoded packet data.

Deprecates:
obs_duplicate_encoder_packet
obs_free_encoder_packet

Replaces those functions with:
obs_encoder_packet_ref
obs_encoder_packet_release
2016-12-08 03:27:39 -08:00
jp9000 ca607f8b35 cmake: Add _CRT_SECURE_NO_WARNINGS to all projects
This prevents issues with using standard C functions, where microsoft
would otherwise spit out pointless warnings to encourage using
microsoft-specific functions instead.
2016-12-08 03:27:36 -08:00
Richard Stanway 7df46d4a8e
obs-outputs: Fix librtmp IP bind / resolve behavior
Fixes a case where OBS would prefer trying to connect
to an IPv4 address even though you had bound it to an
IPv6 interface for example.
2016-11-30 22:11:17 +01:00
derrod bfc2987f02 rtmp-services: remove shut down services 2016-11-25 23:55:35 +01:00
Jim 22b1306eb1 Merge pull request #700 from Dead133/master
rtmp-services: Update ingests list for Restream.io
2016-11-25 13:39:50 -08:00
jp9000 e87031f4d6 Revert "obs-transitions: Avoid branching in slide_transition.effect"
This reverts commit 0edaebe192.

The commit was actually less optimal than it was before.  Shaders are
always fully unfolded and both sides of a branch are always executed.
Despite that fact, the "avoid branching" commit actually *added* two
extra unnecessary instructions with the same number of actual sample
instructions, making it arguably less optimal than before.

This was tested via the D3DDissamble function.
2016-11-25 12:20:42 -08:00
jp9000 2f305cb550 win-capture: Use static runtimes for hooks/helpers
(Note: This commit also modifies the ipc-util/seg-service modules)

When compiling the final project, always compile
ipc-util/get-graphics-offsets/graphics-hook/inject-helper/seg-service
with static MSVC runtimes to prevent the need of requiring the MSVC
runtimes for both architectures.
2016-11-23 06:03:00 -08:00
Jim b7b8ad476f Merge pull request #703 from Xaymar/feature_amd-encoder
enc-amf: Avoid using C++17 for VS2013 compatibility
2016-11-20 08:49:19 -08:00
Michael Fabian Dirks f792846c83 enc-amf: Avoid using C++17 for VS2013 compatibility 2016-11-20 17:46:13 +01:00
Gol-D-Ace 2d47dc4e2c Update translations from Crowdin 2016-11-20 12:22:26 +01:00
jp9000 4c4025a242 win-ivcam: Add Intel RealSense plugin 2016-11-19 03:15:21 -08:00
Andrew Surzhynskyi 072e24eb9e rtmp-services: Update ingest list for Restream.io 2016-11-18 17:40:21 +02:00
Jim 36b5527667 Merge pull request #698 from Xaymar/feature_amd-encoder
enc-amf: Update to 1.4.2.3
2016-11-17 05:57:59 -08:00
Michael Fabian Dirks 920d41220b enc-amf: Update to 1.4.2.3 2016-11-17 13:43:39 +01:00
Jim 80f1a19c62 Merge pull request #692 from RytoEX/youtube-recs
rtmp-services: Change YouTube keyint from 4 to 2
2016-11-16 20:51:30 -08:00
Michael Fabian Dirks 1e9ace42af enc-amf: Update to 1.4.2.2 2016-11-17 05:19:11 +01:00
Gol-D-Ace 90e805ad9b Update translations from CrowdIn 2016-11-16 00:32:47 +01:00
jp9000 edfc2bed05 obs-qsv11: Manually mark priority bits for QSV frames
QSV frame priority bits are not being marked correctly; their priorities
are always marked either low or disposable, whereas I-frames should be
marked as highest (3), P-frames should be marked as high (2), and other
frames should be marked as either low or disposable.  This helps ensure
that the correct frames are dropped when frames need to be dropped.
2016-11-14 17:34:46 -08:00
jp9000 53eb817d43 text-freetype2: Defer loading of plugin until source created
Helps significantly boost initialization time.
2016-11-14 17:34:45 -08:00
jp9000 eaa32c20be win-capture: Defer hook offset loading to separate thread
Boosts startup time significantly to defer this to a separate thread.
2016-11-14 17:34:44 -08:00
jp9000 35285a26b7 win-capture: Do not load 64bit hook offsets on 32bit systems 2016-11-14 17:34:32 -08:00
jp9000 67e9cafaba enc-amf: Update to temporary fix branch
Fixes the previous submodule commit, which is broken.  The temporary
branch used here ensures that users with multi-GPU laptops won't crash
on startup.
2016-11-14 17:34:31 -08:00
jp9000 b0054a16d0 enc-amf: Update to commit which prevents crash on startup
On certain switchable laptops with AMD graphics, due to a driver
bug/issue, the program will crash when querying capabilities.  The
commit this updates to fixes that by not querying capabilities on
startup.
2016-11-14 14:17:38 -08:00
jp9000 c5706d726b obs-outputs: Use correct variable for drop priority
There are two variables used for 'priority', the general marked frame
priority, and the drop priority.  They can sometimes be different
because some encoders don't always use the correct frame priority.
2016-11-13 16:29:23 -08:00
Ryan Foster 9f33ff0b99 rtmp-services: Change YouTube keyint from 4 to 2
YouTube recommends a keyframe interval of 2 seconds with a maximum
interval of 4 seconds.
2016-11-09 19:58:28 -05:00
Michael Fabian Dirks ffbf115ef3 enc-amf: Update to version 1.4.1.5 2016-11-09 21:49:16 +01:00
Ricardo Constantino 8c3b475812
obs-ffmpeg: Fix assumption about plane height with i444
Affected both FFmpeg and nvenc encoders.
Fixes issue 667.
2016-11-09 16:04:12 +00:00
Michael Fabian Dirks b25a38517f enc-amf: Fix VS2013 compiling issue
VS2013 doesn't include <memory> by default, this quick update fixes that problem.
2016-11-04 13:51:47 +01:00
Jim e72d59e2c7 Merge pull request #684 from Xaymar/plugin_enc-amf
enc-amf: Update to Version 1.4.1.0
2016-11-04 04:20:18 -07:00
Michael Fabian Dirks 25fa895796 enc-amf: Update to Version 1.4.1.0 2016-11-04 12:06:24 +01:00
jp9000 41a3a30655 win-mf: Deprecate AMD Media Foundation H.264 encoder 2016-11-03 14:24:53 -07:00
jp9000 ed85b22534 Update translations from CrowdIn 2016-11-03 13:32:52 -07:00
Jim f8f71541ad Merge pull request #680 from Xaymar/plugin_enc-amf
enc-amf: Update to version 1.4.0.0
2016-11-03 13:09:51 -07:00
Michael Fabian Dirks 8307ba1118 enc-amf: Update to release 1.4.0.0 2016-11-03 20:59:09 +01:00
jp9000 0b27b51294 win-capture: Add D3D12 capture support
Currently only supports shared texture capture, and doesn't support
rescaling.
2016-11-03 12:13:42 -07:00
jp9000 f49065b1e6 win-capture: Use IUnknown for getting swap backbuffers
Using IDXGIResource doesn't work with D3D12.  D3D12 textures are not a
subclass of that class.
2016-11-03 09:28:32 -07:00
jp9000 81ab13a2a4 win-capture: Cache cursor textures to prevent reallocation
Whenever a cursor is captured and the cursor icon changes, it creates a
new texture.  This isn't particularly optimal, so instead just store a
cache of cursor textures (based on size), and make the textures dynamic.
Doing this will prevent unnecessary texture reallocation.
2016-11-03 09:23:25 -07:00
Warren Turkal 40a5436549 obs-ffmpeg: Fix a couple printf compiler warnings. 2016-10-30 19:56:08 -07:00
Michael Fabian Dirks 0edaebe192 obs-transitions: Avoid branching in slide_transition.effect
Branching is not recommended in shaders and only recently gained
widespread support without causing massive branch misprediction issues. Also sampling inside a branch will cause cache misses and additional texture load instructions.
2016-10-29 13:09:11 +02:00
jp9000 405ae6bc7c rtmp-services: Add Picarto 2016-10-23 09:20:53 -07:00
jp9000 a7ef10f7ea obs-ffmpeg: Add b-frames to NVENC logging 2016-10-20 06:51:21 -07:00
Cephas Reis 94b6943f27 decklink: Update Blackmagic SDK to 10.8.0
Updated to help support the newest cards, features, and options.

Closes jp9000/obs-studio#627
2016-10-16 01:53:51 -07:00
Colin Edwards a41bdb3bf0 Update obs-browser submodule to a working version 2016-10-14 08:17:28 -05:00
Jim 43c1dce777 Merge pull request #634 from CoDEmanX/master
rtmp-services: Add Asian Livecoding.tv server and increase video bitrate
2016-10-09 18:49:34 -07:00
Michael Fabian Dirks ccbb542eb0 enc-amf: Update to 1.3.3.1 2016-10-07 00:47:06 +02:00
Michael Fabian Dirks 70fc27d34a enc-amf: Update to 1.3.2.3 2016-10-04 20:21:17 +02:00
Jim dbfb1f9796 Merge pull request #638 from Xaymar/plugin_enc-amf
enc-amf: Fix warnings caused by warnings( push/pop )
2016-09-29 12:20:49 -07:00
Michael Fabian Dirks 846db36d6e enc-amf: Fix warnings caused by warnings( push/pop ) 2016-09-29 21:20:01 +02:00
Michael Fabian Dirks 4bafe668ee obs-text: Add gradient feature
Closes jp9000/obs-studio#636
2016-09-29 12:15:17 -07:00
Michael Fabian Dirks 832c62e026 enc-amf: Update submodule to 1.3.1.0 2016-09-29 19:59:45 +02:00
Richard Stanway a8020b37be obs-ffmpeg: Fix possible NVENC crash
If the codec hasn't even been fully initialized, calling these functions
in the shutdown code could cause a crash.
2016-09-28 15:24:04 -07:00
CoDEmanX 78d09e6ac2 rtmp-services: Add Asian Livecoding.tv server and increase video bitrate 2016-09-28 21:29:03 +02:00
jp9000 32378124af obs-text: Change file update interval to 1 sec (from 2) 2016-09-28 02:01:30 -07:00
Gol-D-Ace aadc7263c0 Update translations from Crowdin 2016-09-28 01:17:24 +02:00
jp9000 a8f3351173 enc-amf: Remove unused locale files 2016-09-27 16:13:40 -07:00
Jim 60224b2480 Merge pull request #633 from Xaymar/plugin_enc-amf
enc-amf: Update submodule to 1.3.0.3
2016-09-27 16:07:12 -07:00
Michael Fabian Dirks 5bc7003d12 enc-amf: Update submodule to 1.3.0.3 2016-09-27 23:45:08 +02:00
jp9000 677ae3798d obs-browser: Add browser plugin as a submodule 2016-09-27 13:33:57 -07:00
Michael Fabian Dirks b4f9229cf7 enc-amf: Update submodule to 1.3.0.1 2016-09-27 19:48:52 +02:00
jp9000 66d0e25a86 enc-amf: Update submodule to 1.3.0 2016-09-26 18:53:23 -07:00
Richard Stanway 4d23e84837
librtmp: Remove reconnect on close behavior
For some reason librtmp treats a close message as a request to reconnect.
It does this syncronously, and uses the same event processing so that
another close request will continue the cycle until the stack is exhausted
and the application crashes.

Fixes https://obsproject.com/mantis/view.php?id=634
2016-09-27 00:37:59 +02:00
jp9000 7ee3dfe9e4 enc-amf: Update to 1.3.0rc6 2016-09-26 14:46:57 -07:00
jp9000 1e0d5e7b3e obs-ffmpeg: Add b-frame support to NVENC (default: 2)
It was unintentionally using intra-only before, impacting quality.
2016-09-26 14:46:56 -07:00
Richard Stanway 7ea59ff3b4
rtmp-services: Remove Twitch H264 profile requirement
Twitch no longer recommend Main profile on their "Broadcast requirements"
page. The number of devices that can't decode High profile is very small
and limited to old, legacy devices such as the 1st generation iPad (six
years old). Additionally, these devices have limited resolution / FPS
support, so streams are often encoded at levels beyond what they could
decode even disregarding the H264 profile requirement. It's not worth
degrading the quality of streams for modern devices just to support these
legacy decoders. Twitch still provides low-complexity transcodes for
devices which cannot handle Source quality streams.
2016-09-26 20:32:37 +02:00
Robin Hielscher e3a1ba0c77 rtmp-services: Update Facebook Live recommendations (#629)
* rtmp-services: Update Facebook Live recommendations

* Update package.json
2016-09-26 01:31:08 -07:00
jp9000 ff05574654 obs-text: Change default font size to 36 2016-09-22 20:57:43 -07:00
Jim e92f683ee0 Merge pull request #623 from hwdro/obs-text-bk
obs-text: Add bk color/opacity properties
2016-09-22 20:54:58 -07:00
Christoph Hohmann 43dd63aeaf pulse-input: Fix design flaw where source is not created
When a pulseaudio source is created from existing settings and the
device is not found, then the private data will return NULL, making it
impossible to change the source to use a different device.  NULL should
never be returned when possible, otherwise settings cannot be changed
and properties cannot be displayed.

Closes jp9000/obs-studio#604
2016-09-22 18:26:56 -07:00
Michael Hoang 7d6bf872e2 linux-alsa: Add ability to specify a custom PCM
Closes jp9000/obs-studio#599
2016-09-22 18:18:55 -07:00
jp9000 108a4aa40e obs-outputs: Add max shutdown timeout (30 seconds)
The maximum shutdown timeout value was added as a setting, but never
actually fully implemented.  This implements it properly, and sets its
default timeout value to 30 seconds.
2016-09-21 21:51:22 -07:00
Michael Fabian Dirks d4c4d7b674 enc-amf: Fix locale typo and add VBR_LAT 2016-09-21 08:17:01 -07:00
hwdro a4cde72698 obs-text: Add bk color/opacity properties 2016-09-21 00:09:53 +03:00
jp9000 69c4dbe4ed enc-amf: Remove superfluous locale text 2016-09-20 09:28:49 -07:00
Michael Fabian Dirks ed616ac593 enc-amf: Add AMD h.264 encoder
Closes jp9000/obs-studio#611
2016-09-20 09:08:21 -07:00
jp9000 84613cecff win-dshow: Disable plugin and warn if submodule not found 2016-09-20 05:07:30 -07:00
jp9000 6736aeebde rtmp-services: Remove forced zerolatency on service 2016-09-19 17:58:15 -07:00
jp9000 ba47bcafc8 Revert "rtmp-services: Add ability to specify tune param"
This reverts commit 4b0f22d05a.

Services should not force tunes.
2016-09-19 17:57:59 -07:00
Andrei Nistor 95f364dd29 rtmp-services: Add CAM4 streaming service
Closes jp9000/obs-studio#606
2016-09-19 07:33:44 -07:00
Andrei Nistor 4b0f22d05a rtmp-services: Add ability to specify tune param
Some services need to set up tune=zerolatency
for low-latency streaming
2016-09-19 07:04:41 -07:00
derrod 3b3933b42f obs-ffmpeg: Fix (put back in) "profile" NVENC setting
The profile setting may have been unintentionally removed in 0157d02564.

Closes jp9000/obs-studio#616
2016-09-16 19:55:18 -07:00
jp9000 b2a85a2820 obs-text: Reload whenever file timestamp has changed
Rather than reload when the timestamp is greater than the previous
timestamp, reload whenever the timestamp has changed.
2016-09-16 19:47:24 -07:00
Jim 1946ee6443 Merge pull request #617 from RytoEX/master
image-source: Reload file when timestamp has changed
2016-09-16 19:46:31 -07:00
jp9000 31f106c1b5 obs-text: Fix typo 2016-09-15 05:20:59 -07:00
jp9000 1bbe152a55 obs-text: Fix call type for GDIObj helper class
The call type for the deleter function used with the GDIObj helper class
is __stdcall.  Without it, it'll fail to build in 32bit properly.
2016-09-15 04:52:22 -07:00
jp9000 5af1a2b5bb text-freetype2: Deprecate on windows 2016-09-14 16:59:46 -07:00
jp9000 34eb4cd409 obs-text: Add GDI+ text source 2016-09-14 16:59:46 -07:00
Ryan Foster c8a81bba72 image-source: Reload file when timestamp has changed
This commit fixes the issue outlined in the following thread:
https://obsproject.com/forum/threads/50045/

When the image source file was replaced by an outside process, it would
only reload when the file's new timestamp was newer than the file's
previous timestamp.  This fixes that behavior.  Now an image source
will reload any time the file's new timestamp is different than its
previous timestamp.
2016-09-14 05:43:48 -04:00
jp9000 c5c1e34d09 obs-ffmpeg: Free remaining NVENC frames on exit
This clears out remaining NVENC frames to ensure that the encoder has
finished processing before shutting down.
2016-09-13 09:17:07 -07:00
jp9000 001f3c751b win-dshow: Add tooltip to "Use Buffering" option 2016-09-11 04:16:14 -07:00
jp9000 50d7cc8ae6 obs-outputs: Allow forced stop even when stopping 2016-09-09 17:39:20 -07:00
jp9000 9a58772a01 obs-ffmpeg: Allow ffmpeg_mux forced stop even when stopping 2016-09-09 17:39:19 -07:00
rpslack a8b59b70ea rtmp-services: Add AfreecaTV streaming service 2016-09-06 08:31:44 +02:00
jp9000 562b3c2990 rtmp-services: Add meridex service 2016-08-30 18:24:53 -07:00
Gol-D-Ace f8fd87bbf6 rtmp-services: Update Restream.io ingest servers 2016-08-22 16:25:40 +02:00