4966 Commits

Author SHA1 Message Date
jp9000
4a5ac39749 libobs: Fix starting video packet offset in outputs
(This commit also modifies the obs-outputs module)

The first video packet video offset (the value used to set the starting
point of video data) would be set to the DTS value of the first video
packet.  However, when b-frames are used, the first DTS value will be
negative.  This was originally done because FLV muxing requires that the
first packet's DTS start from 0.  Unfortunately, this would also
effectively cause the first packet's PTS/DTS value to be shifted forward
by the negative amount, which would cause video sync to be off by a
video frame or two.

This fixes it to start at the PTS value instead and preserve any
negative offsets.  Additionally, the FLV muxing code has been fixed to
ensure that it adjusts the starting video DTS to 0, and now correctly
adjusts the first audio packet's timestamp according to that DTS as well
(which it didn't do before).
2017-10-02 07:36:02 -07:00
jp9000
2f04010a4a libobs: Fix paired audio encoder discarding one segment
On audio encoder startup, audio encoders paired with a video encoder
would unintentionally discard a single audio data segment, causing it to
be 1024 audio frames out of sync.
2017-10-02 07:36:02 -07:00
Richard Stanway
05fb67717e
UI/updater: Use TLS 1.2 with WinHTTP
On Windows 7, WinHTTP defaults to using only SSL3 and TLS 1.0. The
obsproject.com server was updated to remove TLS 1.0 support and
this has caused updates to stop working on Windows 7.
2017-10-02 15:33:34 +02:00
Richard Stanway
27d16f961b
libobs: Restore Windows Vista compatibility
Certain PSAPI functions moved to KERNEL32 after Vista, setting
PSAPI_VERSION 1 uses the old PSAPI exports for compatibility. Vista
support was unintentionally broken by a6318ff.
2017-09-28 13:28:46 +02:00
jp9000
c9182a9878 obs-ffmpeg: Fix potential seek issues with media source
(This commit also modifies deps/media-playback)

Before, the media-playback library would detect whether something was
seekable by checking the filename for "://", which is unideal because
there are other cases where targets may not be seekable.  So instead, an
explicit "seekable" property (off by default) is now in place in the
media source when not in "local file" mode.  Seeking will only be
enabled if local file mode is on, or if "seekable" is explicitly checked
by the user.

Closes jp9000/obs-studio#1022
2017-09-17 05:55:56 -07:00
jp9000
8f43934be6 UI: Lock graphics context when adding new sources
Prevents a potential cross-lock deadlock.  The UI thread would lock the
scene's mutex in obs_scene_atomic_update, then the item would lock the
graphics context to create a texture.  Meanwhile in the video thread, it
could lock the graphics context in the render loop, then lock the
scene's mutex when rendering.  When doing anything graphics-related, the
graphics context is always supposed to be locked before the scene's
mutex is supposed to be locked (it's designed that way), and the
obs_scene_atomic_update would just bypass that.
2017-09-17 02:47:54 -07:00
jp9000
2386bd6556 obs-transitions: Fix integer conversion warning 2017-09-16 13:59:53 -07:00
Makeenon
006fc35a2d obs-transition: Add crossfade option to stinger
Add option in properties that let you choose how audio is mixed during
transition:
- Fade Out/Fade In (existing behavior, default)
- Crossfade

Closes jp9000/obs-studio#1028
2017-09-16 13:59:49 -07:00
Michel
dab278e1b6 obs-transitions: Add audio monitoring to stinger
Closes jp9000/obs-studio#1001
2017-09-16 12:35:17 -07:00
Benjamin Schubert
9cba5660e4 UI: Enable Replay Buffer in Advanced Mode
Replay buffer is currently only supported in simple mode.  This change
adds support to advanced mode and is, for the most part, a mirror of the
addition of replay buffer to simple mode.

Mantis-bug: https://obsproject.com/mantis/view.php?id=792

Closes jp9000/obs-studio#1019
2017-09-16 05:55:18 -07:00
Jim
48cc90d5bb Merge pull request #996 from twitchalerts/audio-subsystem-crash-fix
libobs: Fix a potential divide by zero crash
2017-09-15 13:12:41 -07:00
Jim
1e1808dbd9 Merge pull request #1005 from SuslikV/patch-1
UI: Fix parent window geometry loading
2017-09-15 10:30:39 -07:00
Jim
34b0f29dc5 Merge pull request #1003 from Fenrirthviti/theme-updates
UI: Allow volume peak to be customized via .qss
2017-09-15 09:33:52 -07:00
Jimi Huotari
73c4ebc289 libobs: Adjust grammar of an error message
Change 'but both were not found' to 'but neither were found.'

Closes jp9000/obs-studio#1018
2017-09-15 08:23:58 -07:00
Jimi Huotari
068874bc3e libobs: Stop configure if ImageMagick is preferred, but not found
With certain combinations of CMake (<3.9) and ImageMagick (>=7),
configure will silently fail setting up support for ImageMagick,
even if the user requested for it, and the build will move on
(as long as FFMPEG_AVCODEC is found).  This commit adds a check
that will stop configure in such cases.

Closes jp9000/obs-studio#1018
2017-09-15 08:23:54 -07:00
Jimi Huotari
fef71c4b7c libobs: Fix ImageMagick header path
Since ImageMagick 7, the header path has been changed.  This commit
implements a check for the version being used, and includes the
header as is appropriate.

Special thanks to Hu.

Mantis-Bug: https://obsproject.com/mantis/view.php?id=966

Gentoo-Bug: https://bugs.gentoo.org/627520

Closes jp9000/obs-studio#1018
2017-09-15 08:23:32 -07:00
chinasarft
1ef4de7ce3 obs-ffmpeg: Don't mark to destroy media unless valid
Closes jp9000/obs-studio#1021
2017-09-15 05:51:52 -07:00
Jim
dcd3e627c2 Merge pull request #1027 from SuslikV/patch-2
UI: Add missing option to context menu
2017-09-15 04:13:28 -07:00
Christoph Hohmann
27a8f69eea UI: Use Qt standard buttons in source properties
Use the Qt standard buttons in the source properties dialog to make the
UI consistent.  Also remove the right alignment of the button box to
allow Qt to align standard buttons on the left side of the dialog.

Closes jp9000/obs-studio#1013
2017-09-15 04:05:32 -07:00
SuslikV
2b175d6da9 UI: Add missing option to context menu
Add 'Advanced Audio Properties' option to context menu over empty area
of the Mixer's pane.
2017-09-14 15:01:15 +02:00
cg2121
76b6266689 UI: Allow hiding/unhiding sources in the mixer
Allows the ability to hide/unhide sources in the mixer that the user
doesn't care about or doesn't necessarily want to see (such as video
sources that have audio but don't have any audio playing).  If all
sources are hidden, the user can right-click the mixer's empty area and
choose "unhide all" via a context menu.

Closes jp9000/obs-studio#1002
2017-09-13 21:17:44 -07:00
jp9000
7bde1eb6af UI: Allow right-clicking mixer sources to bring up menu
Allows bringing up properties/filters/etc via right-clicking mixer items
in addition instead of only being able to click the gear icon.  Minor
QoL improvement.
2017-09-13 21:17:44 -07:00
jp9000
2ef00ecec4 libobs: Add private settings to scene items/sources
Allows setting and sharing of user data for sources and scene items.
2017-09-13 21:17:44 -07:00
Palana
db1da73647 libobs: Fix I420 shader for (width/2)%4 == 2 resolutions
For those resolutions the last two chroma samples of every other
line would be overwritten by the last chroma samples of the previous
line (depending on sampler used), producing artifacts on the left
edge of the resulting image (e.g. any color present on the right
edge of the image would "bleed" to every other line on
the left edge)
2017-09-13 16:39:36 +02:00
Palana
9ce9c35b0d libobs: Fix texture_ready feedback for CPU conversion path 2017-09-13 16:39:27 +02:00
Jim
dde03af95e Merge pull request #987 from seirl/master
Add fix to watch for VisibilityNotify events.
2017-09-12 05:30:36 -07:00
Jim
ee5b371576 Merge pull request #988 from ishitatsuyuki/xcb-segfault
Fix XCB keyboard mapping size calculation
2017-09-12 05:23:15 -07:00
Christoph Hohmann
5813a4bfbf linux-pulseaudio: Use actual sink device names
Uses the sink device names rather than the "Monitor of" names.

Closes jp9000/obs-studio#990
2017-09-12 04:01:06 -07:00
Shaolin
1bae6f3c18 UI: Enable audio monitoring on linux if pulse available
Closes jp9000/obs-studio#940
2017-09-12 03:37:58 -07:00
Shaolin
b6042d91ea libobs: Add Pulseaudio audio monitoring support
Checks if the system has Pulseaudio and enables support via the
HAVE_PULSEAUDIO flag.

Closes jp9000/obs-studio#940
2017-09-12 03:37:54 -07:00
Jim
b1f2b72628 Merge pull request #929 from RytoEX/nix-sysinfo
Make *nix system info logging more like Windows/Mac
2017-09-12 01:58:49 -07:00
mntone
9ffdaff984 UI: Add memory usage to Stats window on linux/mac
Closes jp9000/obs-studio#953
2017-09-12 01:56:40 -07:00
mntone
a6318ffdca libobs/util: Add memory usage functions
Closes jp9000/obs-studio#953
2017-09-12 01:49:11 -07:00
Jim
c049dfdf1d Merge pull request #1008 from pkuznets/add_looch_tv_platfom
rtmp-services: Add looch.tv streaming platform
2017-09-11 16:19:17 -07:00
pkuznetsov
03659d8706 rtmp-services: Add looch.tv streaming platform 2017-09-11 16:43:39 +03:00
Jim
67d2292bbc Merge pull request #1026 from Dead133/master
rtmp-services: Update ingest list for Restream.io
2017-09-11 03:33:46 -07:00
Andrew Surzhynskyi
c830f919d7 rtmp-services: Update ingest list for Restream.io 2017-09-11 13:29:26 +03:00
Jim
e8f66d6c18 Merge pull request #998 from ErunamoJAZZ/master
rtmp-services: Fix misspelled country name
2017-09-11 02:47:52 -07:00
cg2121
be77b13e58 vlc-source: Add media control hotkeys
This adds play/pause, restart, stop, next, and previous hotkeys to the
VLC source.

Closes jp9000/obs-studio#972
2017-09-11 01:13:59 -07:00
C. Daniel Sanchez R
06bbd2667f rtmp-services: Fixing misspell in a country name
That had a misspell in a Twitch ingest server:
Col_u_mbia instead Col**o**mbia.
Incremented version.
2017-09-09 13:06:41 -05:00
Richard Stanway
41a1b09988
obs-outputs: Improve new netcode if encoder reports 0 bitrate
Some encoders such as the AMD AMF encoder don't set their bitrate
property, so it gets returned as 0. This causes the new network code to
allocate a tiny buffer, resulting in output starvation and throttling
to the point of uselessness if low latency mode is also enabled.
2017-08-30 00:09:05 +02:00
Jim
4c58dcf65c Merge pull request #1016 from derrod/update-ingests
rtmp-services: Add new twitch ingest servers
2017-08-25 07:17:09 -07:00
derrod
48fc0fc120 rtmp-services: Add new twitch ingest servers 2017-08-25 16:11:18 +02:00
Quinn Damerell
1151c6cede obs-outputs: Fix invalid stream key error
Fixes an issue where it would show the wrong error when the user entered
an invalid stream key, and logs it

Closes jp9000/obs-studio#1015
2017-08-25 02:03:13 -07:00
Quinn Damerell
8111f99854 obs-outputs: Enable FTL logging and reduce verbosity
Closes jp9000/obs-studio#1015
2017-08-25 02:02:50 -07:00
Jim
b2055f0566 Merge pull request #1009 from Dead133/master
rtmp-services: Update ingest list for Restream.io
2017-08-24 14:41:23 -07:00
Andrew Surzhynskyi
354f337e42 rtmp-services: Update ingest list for Restream.io 2017-08-24 12:39:13 +03:00
Jim
8fe0d508fd Merge pull request #1012 from DDRBoxman/cef
obs-browser: version 1.30.1
2017-08-18 20:42:21 -07:00
Colin Edwards
86cea3f48f obs-browser: version 1.30.1 2017-08-18 22:26:47 -05:00
Jim
684db36996 Merge pull request #1011 from DDRBoxman/cef
Build with CEF 3112 on OSX
2017-08-18 20:02:43 -07:00