Commit Graph

4523 Commits (1d69e359ec5f5a39d8883f6d9f9c31f191a49093)

Author SHA1 Message Date
jp9000 a47ef76bd5 obs-ffmpeg: Do not use HW accel by default on mac
Due to crashes being caused by hardware acceleration in the media source
on mac, disable hardware acceleration of the media source being on by
default for the time being.
2017-02-06 15:10:02 -08:00
jp9000 52784c3e79 UI: Add 24 NTSC as a common FPS value 2017-02-06 14:55:14 -08:00
jp9000 e1e21c01d5 obs-transitions: Convert premultiplied alpha to straight
In transitions, because the 'to' and 'from' are always rendered to
textures, the end result will always have premultiplied alpha.  This
would cause alpha to have blackish edges during transition, and cause
semi-transparent images to appear darker than they were supposed to.

To replicate, simply set the transparency of a source to 50%, then
transition between that scene and another scene.  The source will appear
to "pop" in and out unnaturally due to the premultiplied alpha effect of
the render targets.

To fix this, the solution is to simply convert premultiplied alpha to
straight alpha in the transition pixel shaders.
2017-02-06 13:22:51 -08:00
jp9000 27a3b97f48 UI: Prevent thread stalls with fader/volume widgets
When the OBS signal is triggered for these widgets, the invokeMethod
could cause the thread to stall, which could make it wait much longer
than necessary to output audio data.  When that happens, it causes audio
monitoring to get backed up and get unnecessarily delayed, as well as
cause general audio buffering in libobs to increase unnecessarily.

A simple fix both in terms of preventing that stall and improving UI
performance is to not call invokeMethod to update the widget each time,
and then instead have those widgets update themselves via a timer at a
specific interval.
2017-02-06 11:44:05 -08:00
jp9000 7639b277ce UI: Add audio monitoring to settings/adv audio props.
Adds audio monitoring selection to advanced audio properties, and adds
the ability to select the device in advanced settings.
2017-02-06 11:44:04 -08:00
jp9000 39d76cc76f win-wasapi: Mark audio outputs as unmonitorable
(Note: This commit also modifies mac-capture and linux-pulseaudio)

This prevents outputs from being monitored, preventing a potential
feedback loop.
2017-02-06 11:44:03 -08:00
jp9000 d2934eca7e libobs: Implement audio monitoring
Adds functions to turn on audio monitoring to allow the user to hear
playback of an audio source over the user's speaker.  It can be set to
turn off monitoring and only output to stream, or it can be set to
output only to monitoring, or it can be set to both.

On windows, audio monitoring uses WASAPI.  Windows also is capable of
syncing the audio to the video according to when the video frame itself
was played.

On mac, it uses AudioQueue.

On linux, it's not currently implemented and won't do anything (to be
implemented).
2017-02-06 11:44:02 -08:00
jp9000 74f9c389cb libobs: Use original audio structure for audio signal
Ensures audio has the source-local timestamp when used with audio
monitoring.
2017-02-06 11:44:01 -08:00
jp9000 f728f5b9ec libobs: Mark parameter as constant if not modifying 2017-02-06 11:44:00 -08:00
jp9000 d60d222d71 libobs: Mark last video ts even when buffering off
Ensures that the system always has a record of when the last video frame
was played.
2017-02-06 11:43:59 -08:00
jp9000 96f6fa9473 UI: Make advanced settings pane a bit more compact
Packs related controls together and makes a bit more room for more
advanced settings.
2017-02-06 11:43:58 -08:00
Gol-D-Ace e181db7845 UI: Fix locale text alignment 2017-02-06 01:39:44 +01:00
David Cooper 7a5ac075d0 CI: Fix OSX post-install script
Closes jp9000/obs-studio#789
2017-02-04 20:39:18 -08:00
Jim a18ac427ff Merge pull request #785 from derrod/update-ingests
rtmp-services: Update twitch/hitbox ingest and youtube recommendations
2017-02-02 13:05:22 -08:00
derrod fc264e8297 rtmp-services: Update twitch/hitbox ingest and youtube recommendations
Twitch added the following ingests:
- South America: Lima, Peru
- EU: Lisbon, Portugal
- South America: Medellin, Columbia
- EU: Milan, Italy
- NA: Mexico City

The following ingest server is no longer listed in hitbox'  API:
- US-East: Washington

YouTube does not list a requirement that states that only the main profile can be used.
2017-02-02 21:56:42 +01:00
Jim 43e0ecdf20 Merge pull request #783 from DDRBoxman/patch-2
CI: Unzip VLC quietly
2017-02-01 16:17:47 -08:00
Colin Edwards 9af749389e CI: Unzip VLC quietly 2017-02-01 18:11:49 -06:00
Jim 8561f7c3c7 Merge pull request #782 from juvester/master
CI: Fix VLC download
2017-02-01 15:14:21 -08:00
juvester 6c5a364e88 CI: Fix VLC download 2017-02-01 23:50:24 +02:00
jp9000 001f2a4772 obs-filters: Change "LUT Filter" to "Apply LUT"
At request of c3r1c3 to be a bit more specific.
2017-01-30 19:02:53 -08:00
jp9000 a58c93eb9d obs-filters: Rename "Color Grade" filter to "LUT Filter" 2017-01-30 18:43:25 -08:00
jp9000 be7389ed2e UI: Clarify "Always minimize to tray" option
Makes it a bit more clear that this always minimizes to system tray.
2017-01-30 18:39:53 -08:00
Jim 41dad9dfcd Merge pull request #777 from cg2121/separate-timers
UI: Add separate timers to status bar
2017-01-30 18:07:53 -08:00
jp9000 0fcd661e13 UI: Remove unused variables
Closes jp9000/obs-studio#778
2017-01-30 16:55:29 -08:00
Alexandre Vicenzi b6bbdee049 obs-filters: Fix compiler warnings
static should come before const.

Closes jp9000/obs-studio#778
2017-01-30 16:54:14 -08:00
Colin Edwards 94d4698c7f Add VST Plugin
Closes jp9000/obs-studio#750
2017-01-30 16:05:25 -08:00
Aydin Akan ab40281e2f rtmp-services: Add Web.TV streaming service
Closes jp9000/obs-studio#779
2017-01-30 16:02:58 -08:00
Jim 0904a690a9 Merge pull request #781 from DDRBoxman/cefperm
CI: Add post install script to OBS installer to fix CEF permissions
2017-01-30 15:38:39 -08:00
Colin Edwards 42467c58e8 CI: Add post install script to OBS installer to fix CEF permissions 2017-01-30 10:41:24 -06:00
Gol-D-Ace f92601f253 rtmp-services: Add new beam.pro ingests
EU: Oslo
South Korea: Seoul
India: Chennai
2017-01-30 16:36:11 +01:00
mape 7d9a68c18d obs-filters: Add "Color Grading" filter
This allows for color grading based on a color look-up table. Commonly
used to color correct and/or grade video that has been shot in Log.

Closes jp9000/obs-studio#747
2017-01-30 06:41:20 -08:00
Jim 6510ba7f74 Merge pull request #780 from ryansully/master
rtmp-services: Add Restream.io Los Angeles server
2017-01-30 06:11:59 -08:00
Take Vos 9007de70cc obs-filters: Add option to undistort ultrawide -> wide
Adds an option to the aspect/scale filter to undistort the center of the
image when scaling from ultrawide to wide.

Closes jp9000/obs-studio#762
2017-01-30 06:01:28 -08:00
Take Vos ab3531caa9 libobs: Add optional ultrawide -> wide scaling techniques
This algorithm reduces scaling distortion on the center of the image
when scaling from ultrawide to wide.

(Jim: edited effect files to prevent an impact in performance for
standard scaling.  Now effectively generates an extra pixel shader, and
the extra code is only applied to the DrawUndistort technique, while the
original Draw technique is unaffected due to the compiler automatically
removing unused code branches via the hard-coded boolean value)

From jp9000/obs-studio#762
2017-01-30 05:59:17 -08:00
Ryan Sullivan 8eb742b2cd rtmp-services: Add Restream.io Los Angeles server 2017-01-30 02:52:31 -08:00
Alexandre Vicenzi 722443b228 UI: Fix linux display/resize bug with preview widget
On linux, the main window isn't immediately set to a native widget, so
the call:

connect(windowHandle(), &QWindow::screenChanged, displayResize);

on line 189 will fail, causing the preview widget to not properly resize
when the main window is resized.

Closes jp9000/obs-studio#776
2017-01-29 19:51:42 -08:00
Jim ce46ffa82e Merge pull request #758 from cg2121/command-line-args
UI: Add more command line options
2017-01-29 19:42:37 -08:00
EpicCoder 73a1bf9236 UI: Fix scaling in viewport when source flipped
Fixes bug 617 on mantis.  Scaling the source manually in the viewport
wouldn't work properly when the source is flipped horizontally or
vertically.

Closes jp9000/obs-studio#751
2017-01-29 19:21:11 -08:00
dennis 21584fa2c0 UI: Add auto-start replay buf. opt. when stream starts
Closes jp9000/obs-studio#748
2017-01-29 19:09:23 -08:00
cg2121 29f22e72a8 UI: Add option to save projectors
This adds an option to the general settings to save the opened
projectors on exit.

(Note: Fixed conflicts -Jim)

Closes jp9000/obs-studio#743
2017-01-29 06:02:15 -08:00
SuslikV 7eee8de331 UI: Do not quit program when last windows are projectors
Prevents the program from unintentionally quitting if the program is
minimized to the task tray and the user closes all projectors

Closes jp9000/obs-studio#737
2017-01-25 20:23:03 -08:00
SuslikV d473b2da96 UI: Hide/show dialogs when minimizing to tray
Hides dialogs when minimizing to tray, and shows again when restoring
from tray.

Closes jp9000/obs-studio#737
2017-01-25 20:22:55 -08:00
SuslikV abe4bfd96e UI: Add option to always minimize to tray
Closes jp9000/obs-studio#737
2017-01-25 20:22:45 -08:00
cg2121 9fe127ec04 UI: Add separate timers to status bar
This adds separate timers for streaming and recording to the status bar.
2017-01-25 00:15:59 -06:00
cg2121 cdf8a40bf1 UI: Add connection status square to status bar
Closes jp9000/obs-studio#720
2017-01-24 15:54:59 -08:00
jp9000 d1b78edbf3 obs-outputs: Increase default drop threshold
500ms is a bit unnecessarily low.
2017-01-24 15:54:25 -08:00
jp9000 5c27ab8d87 obs-output: Add ability to get congestion to rtmp output 2017-01-24 15:52:22 -08:00
jp9000 d8500b47ea libobs: Add ability to get output congestion
From 0.0 (not congested) to 1.0 (completely congested/dropping).
2017-01-24 15:31:44 -08:00
jp9000 85c43cd666 UI: Protect debug text static string var with mutex 2017-01-24 12:49:47 -08:00
Lionheart Zhang 9050febf06 UI: Convert to wide before outputting debug text (win)
Fixes an issue where non-english debug text wouldn't display correctly
in the debugger output on windows.  Also, only output debug text when
actually debugging.

Closes jp9000/obs-studio#734
2017-01-24 12:32:23 -08:00