- 15 10月, 2017 1 次提交
-
-
由 jp9000 提交于
Fixes an issue where the log could have "Could not find service" with an empty service name when opening properties.
-
- 13 10月, 2017 2 次提交
-
-
由 Jim 提交于
file-updater: fix crash due to network timeout
-
由 jp9000 提交于
The new code in 3032535f would signal that the output has stopped to the back-end and front-end, but the event used in the outputs themselves to shut down the send thread would still be signaled, causing the next connection to immediately stop as soon as it had started. This fixes it so that the event does not get signaled unless the thread is active.
-
- 12 10月, 2017 3 次提交
-
-
由 Richard Stanway 提交于
-
由 Richard Stanway 提交于
This will help resolve incidents where users accidentally started or stopped their stream without knowing what triggered it (usually from hotkeys that were forgotten about).
-
由 jp9000 提交于
Fixes a bug with reconnecting where the reconnecting would get stuck in the "stopping" state.
-
- 10 10月, 2017 3 次提交
-
-
由 jp9000 提交于
Use unbuffered async mode by default, and when in unbuffered mode, decouple audio/video so that audio plays as soon as it's received. This is a workaround for decklink device drivers having unreliable video/audio timestamps (audio/video sync drifting over time). From testing, it seems that the handling of video and audio is completely separate in the driver; along with the timestamp calculations. For example, when the thread of the decklink audio callback is stalled, it would cause the timestamps of the audio alone to go out of sync, which indicates timestamps are calculated more or less on the spot independent of what video is doing (which is how we replicated the issue fixed by b63e4b05). Because decklink drivers treats the audio and video as essentially decoupled, we must also treat it as decoupled. This is what was causing video/audio to drift out of sync over time.
-
由 jp9000 提交于
Decoupling the audio from the video causes the audio to be played right when it's received rather than attempt to sync up to the video frames. This is useful with certain async sources/devices when the audio/video timestamps are not reliable. Naturally because it plays audio right when it's received, this should only be used when the async source is operating in unbuffered mode, otherwise the video frame timing will be out of sync by the amount of buffering the video currently has.
-
由 jp9000 提交于
(This commit also modifies UI) Instead of pinging Twitch every time the program starts up, only pings for new servers when the ingests are actually being used, and when the UI uses the auto-configuration dialog. If ingests have not been cached when using the "Auto" server, it will wait for 3 seconds max to query the Twitch ingest API. If it takes longer than 3 seconds or fails, it will defer to SF. If ingests were already cached, then it will use the existing cache immediately.
-
- 07 10月, 2017 1 次提交
-
-
由 jp9000 提交于
Allows setting a specific graphics adapter index to use for Direct3D 11. This is currently meant to be sort of "undocumented" in implementing it this way due to the fact that users will be guaranteed to break their configurations if this is implemented in the UI (even if in advanced settings).
-
- 06 10月, 2017 3 次提交
-
-
由 jp9000 提交于
Sets the swap interval to 0 to prevent v-sync from affecting any of the preview panes on mac.
-
由 jp9000 提交于
The cmake script code used to find and depend on pulseaudio for audio monitoring on linux was unintentionally being triggered on mac. This patch makes it so that the pulseaudio cmake code is ignored on mac.
-
由 jp9000 提交于
These code paths had no logging on failure, resulting in a log file that would confuse people attempting to perform support for users.
-
- 05 10月, 2017 2 次提交
-
-
由 Thomas De Schampheleire 提交于
If there is no network connection, OBS crashes after 5 minutes idling with following crash: *** longjmp causes uninitialized stack frame ***: obs terminated ======= Backtrace: ========= /lib64/libc.so.6(+0x6f1e3)[0x7f8f95f901e3] /lib64/libc.so.6(__fortify_fail+0x37)[0x7f8f96018ba7] /lib64/libc.so.6(+0xf7add)[0x7f8f96018add] /lib64/libc.so.6(__longjmp_chk+0x29)[0x7f8f96018a39] /usr/lib64/libcurl.so.4(+0xa5d5)[0x7f8f979b75d5] /lib64/libpthread.so.0(+0x10e30)[0x7f8f962cae30] /lib64/libc.so.6(__poll+0x2d)[0x7f8f95fff46d] /usr/lib64/libglib-2.0.so.0(+0x4a64c)[0x7f8f91b5564c] /usr/lib64/libglib-2.0.so.0(g_main_context_iteration+0x2c)[0x7f8f91b5575c] /usr/lib64/libQt5Core.so.5(_ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0x5f)[0x7f8f9706c1ff] /usr/lib64/libQt5Core.so.5(_ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xfa)[0x7f8f9701defa] /usr/lib64/libQt5Core.so.5(_ZN16QCoreApplication4execEv+0x9c)[0x7f8f970258fc] obs(main+0x5ac)[0x4773dc] /lib64/libc.so.6(__libc_start_main+0xf0)[0x7f8f95f41700] obs(_start+0x29)[0x478389] Internet search [1] revealed that this is a libcurl bug that can be worked around by asking curl not to install signal handlers. [1] https://stackoverflow.com/a/10755612
-
由 jp9000 提交于
Video playback doesn't work if the default format is MJPEG and there are other formats to use; this is because the useDefaultConfig variable is still set to true, which overrides the format value that would normally tell it to convert to RGB.
-
- 04 10月, 2017 2 次提交
- 03 10月, 2017 1 次提交
-
-
由 jp9000 提交于
"Life is Feudal: Your Own" will use Direct3D to render the game, then OpenGL to render its in-game menus, which causes a conflict with itself. This specifically blacklists the game from capturing OpenGL to prevent that from happening.
-
- 02 10月, 2017 13 次提交
-
-
由 jp9000 提交于
Makes it so that the settings do not update every time the user touches a property of the source, but instead update when the user is finished.
-
由 jp9000 提交于
This function had a number of bugs and just wasn't working properly at all. This function is currently not used in public builds because GPU is used for color conversion instead (hence why it had probably not really been tested), but a need came up where CPU conversion was useful for the sake of testing something else in the back-end, and it needed to be fixed before CPU conversion could be used.
-
由 jp9000 提交于
The async source sync test verifies that async sources are playing back in sync properly, and the "sync pair (video)" and "sync pair (audio)" sources test the back-end syncing down to the exact sample via inserting audio data directly in to the back-end with system timestamps. For these sources, when the video is white, a C sinewave should be playing, and when the video is black audio is mute.
-
由 jp9000 提交于
It would appear that the timestamp values returned by devices are not perfectly accurate, and in some cases may be calculated on the spot -- to combat that, it's best to subtract the audio segment's duration from the current audio segment's timestamp to ensure the timing is as accurate as possible.
-
由 jp9000 提交于
Removes the unnecessary buffering from window capture to prevent window capture from being one frame out of sync
-
由 jp9000 提交于
When an async video frame comes in and it sets the timing_adjust value (used to sync audio to video based upon their timestamps), it would use os_gettime_ns as a base. Instead, it should use OBS' current video frame time so that the audio and video playback is as accurate as possible relative to the actual exact timestamp of the video frame. (Results are almost insignificant, but it's nice to be as precise as possible)
-
由 jp9000 提交于
Fixes up the FLV output to ensure it functions properly.
-
由 jp9000 提交于
During packet interleaving (for outputs), ensure that if two packets coincide with the same timestamp, that the video packet always comes first instead of the audio packet. This fix is required to make FLV demux properly with certain demuxers; some FLV demuxers expect the video packet before the audio packet when two packets coincide with the same timestamps.
-
由 jp9000 提交于
The end of an FLV tag would contain the size of the tag, but the code was erroneously including the end size value in addition, which it's not supposed to do normally.
-
由 jp9000 提交于
Modifying this value would cause the entire project to recompile when it's only used in one file in the first place.
-
由 jp9000 提交于
(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).
-
由 jp9000 提交于
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.
-
由 Richard Stanway 提交于
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.
-
- 28 9月, 2017 1 次提交
-
-
由 Richard Stanway 提交于
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 a6318ffd.
-
- 17 9月, 2017 5 次提交
-
-
由 jp9000 提交于
(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
-
由 jp9000 提交于
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.
-
由 jp9000 提交于
-
由 Makeenon 提交于
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
-
由 Michel 提交于
Closes jp9000/obs-studio#1001
-
- 16 9月, 2017 3 次提交
-
-
由 Benjamin Schubert 提交于
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
-
由 Jim 提交于
libobs: Fix a potential divide by zero crash
-
由 Jim 提交于
UI: Fix parent window geometry loading
-