2302 Commits

Author SHA1 Message Date
Martell Malone
f079bc9f7f win-dshow: Reorder CapsMatch for gcc 2015-02-14 19:14:27 +00:00
Jim
8ecbe91d9a Merge pull request #367 from fryshorts/adv-audio-crash
UI: Small fixes to advanced audio settings
2015-02-14 10:02:00 -08:00
jp9000
104415d5c3 win-capture: Fix hook bug that could cause crashes
I had this issue where IDXGISwapChain::ResizeBuffers would fail in the
hooks, causing games to crash when they resized their backbuffers
because ResizeBuffers would return an 'invalid call' HRESULT value.  In
the ResizeBuffers documentation it says that it will only happen if a
backbuffer currently has any outstanding references, but there's no way
this would happen unless ResizeBuffers internally calls Present or vise
versa.

After ResizeBuffers has been called, the very first call to Present will
somehow seemingly invalidate and/or destroy the current backbuffer.
It's very strange, but that seems to be what's going on, at least for
the game I was testing.  So if you are performing a post-overlay
capture, then you must ignore the capture on the very first call to
Present.

It's Microsoft's code so you can't really know what's going on, you just
have to work around these strange issues seemingly in the dark.
2015-02-14 09:12:24 -08:00
jp9000
8b59b606c5 win-capture: Use right call type for hook funcs
Although STDMETHODCALLTYPE is technically WINAPI (__stdcall), it's best
not to make any assumptions.
2015-02-14 07:48:36 -08:00
jp9000
5d9cac1f80 win-dshow: Rename the avermedia encoders again
Slight clarification (I guess)
2015-02-14 07:48:35 -08:00
jp9000
ae931b32cf win-capture: Fix debug function strings
These had an older name of what the function used to be named
2015-02-14 07:48:35 -08:00
Jim
2c5a5b82c4 Merge pull request #369 from Bl00drav3n/master
Fixed a bug in color conversion code for 16bit textures.
2015-02-13 16:24:23 -08:00
Bl00drav3n
1f9f50c800 Fixed a bug in color conversion code for 16bit textures. 2015-02-14 01:08:38 +01:00
fryshorts
90ccae6f4c UI: Ensure only one advanced audio settings window
Add a check to prevent that the advanced audio settings dialog is only
once. When the dialog is already present raise it to the top instead.
2015-02-13 13:11:15 +01:00
fryshorts
c45e74039f UI: Fix crash in advanced audio settings
Delete source controls when the settings window is deleted.
2015-02-13 13:11:15 +01:00
Jim
6099c65ff7 Merge pull request #363 from dodgepong/latest-crowdin-translations
Add latest translations from crowdin
2015-02-11 16:18:39 -08:00
dodgepong
2b01030607 Add latest translations from crowdin 2015-02-11 19:15:08 -05:00
jp9000
04925993b0 win-dshow: Fix names of AVerMedia encoders 2015-02-11 15:29:31 -08:00
Jim
9b4ebc2205 Merge pull request #361 from dodgepong/latest-crowdin-translations
Add latest translations from crowdin
2015-02-11 13:28:55 -08:00
dodgepong
187f5181c7 Add latest translations from crowdin 2015-02-11 16:27:24 -05:00
jp9000
20d1c2c410 UI: Add 'Advanced' settings section
Currently, this allows the setting of values such as:
- Audio buffering time
- Color format (still somewhat unsupported)
- YUV color space (if a YUV format)
= YUV color range (if a YUV format)

More color formats will be added in the future, such as RGB and YUV
4:2:2 formats.
2015-02-11 13:10:57 -08:00
jp9000
bd2110947a UI: Disable unused export/import menu options 2015-02-11 13:10:56 -08:00
jp9000
c90e55739f win-dshow: Allow overriding of color space/range
Certain devices may have a different color space or color range than
they may report, so allow the user to set it manually themselves if they
so wish.
2015-02-11 13:10:55 -08:00
jp9000
7e0a86e583 win-dshow: Fix stack overflow bug
Martell changed this function without realizing that this was calling a
function below it, not recursively calling itself.  The reason why he
got the warning was because there was no forward declaration of the
function that was being called; I think he's used to C where only one
function definition can exist with the same name.  In this case, it was
another function with the same name but with different parameters,
something that's permitted in C++.  I wish I had realized this sooner.

This fixes the crashes people have been having with devices.
2015-02-11 13:10:54 -08:00
jp9000
ba3cac938a libobs: Update to version 0.8.2 2015-02-11 13:10:53 -08:00
Palana
24d2737b9d Merge branch 'librtmp-fixes' 2015-02-11 17:53:47 +01:00
Palana
8a3dd2ef8a librtmp: Try to parse IPv6 addresses
This should (hopefully) allow URLs of the form rtmp://[abcd::1]/app
2015-02-11 17:52:56 +01:00
Palana
ce25cf86b6 librtmp: Remember addrlen from getaddrinfo
OS X doesn't like sizeof(struct sockaddr_storage) as last parameter
for connect
2015-02-11 17:52:56 +01:00
Palana
b7375fd1be Revert "Revert "obs-outputs: Update to latest librtmp version""
This reverts commit ac72e0392db0697e859e104862f8a0a40e52cc5f.
2015-02-11 17:40:14 +01:00
jp9000
bda7cfc3ed UI: Remove unused variable 2015-02-11 08:06:37 -08:00
jp9000
dce0afa84f UI: Use grid layout for advanced audio properties
This fixes the issue where the labels wouldn't have enough space for
localization text in certain circumstances, and also fixes some issues
with alignment
2015-02-11 08:02:56 -08:00
jp9000
1fc132dc77 UI: Add 'Save' and 'Discard' to localization text 2015-02-11 05:47:05 -08:00
jp9000
9b850c7be1 mac-syphon: Name plugin "Game Capture (Syphon)"
People were getting a bit confused over what the "Syphon" source was,
and often wouldn't use it because they didn't know what it was for.
2015-02-10 22:28:56 -08:00
jp9000
ffc7b3c666 libobs: Fix multi. video encoder sync issues
When using multiple video encoders together with a single audio encoder,
the audio wouldn't be in sync.

The reason why this occurred is because the dts_usec variable of the
encoder packet (which is based on system time) would always be reset to
a value based upon the dts (which is not guaranteed to be based on
system time) in the apply_interleaved_packet_offset function.  This
would then in turn cause it to miscalculate the starting audio/video
offsets, which are required to calculate sync.

So instead of calling that function unnecessarily, separate the check
for whether audio/video has been received in to a new function, and only
start applying the interleaved offsets after audio and video have
actually started up and the starting offsets have been calculated.
2015-02-10 22:10:41 -08:00
jp9000
c2832b8b1c UI: Add "enforce streaming service settings"
Add a checkbox named "Enforce streaming service encoder settings"
checkbox to advanced output.  Disabling this checkbox allows the user to
optionally disable the enforcement of streaming service encoder
settings.  I had a user complain that they didn't want to always have
the service's preferred encoder settings forced on them.
2015-02-10 22:10:40 -08:00
jp9000
fc574a0d7b UI: Fix custom encoder settings not applying
Somehow the code to hook this particular widget was deleted, so add it
back in.
2015-02-10 22:10:39 -08:00
jp9000
943f89b873 UI: Apply service encoder settings (simple output)
Ensures that the current service's encoder settings are applied to the
encoders used with the simple output.  This is always on for simple
output so users don't have to mess with it themselves.
2015-02-10 22:10:39 -08:00
jp9000
3ca57fbb3e UI: Set simple mode reconnect signal to toggled()
clicked() is the wrong signal to use, it only activates on actual user
click, not when the value is changed.  toggle() activates whenever the
value itself is changed.
2015-02-10 22:10:38 -08:00
jp9000
368f04727c UI: Set simple output mode bufsize minimum to 0 2015-02-10 22:10:07 -08:00
jp9000
2149817af7 obs-x264: Set lower buffer size limit to 0
0 is a common value used for recording.
2015-02-10 19:32:35 -08:00
jp9000
a05ed355f5 libobs: Fix 64bit -> 32bit conversion warnings 2015-02-10 19:31:25 -08:00
jp9000
5a4a9befd2 rtmp-services: Add encoder settings callback
Swaps out the old initialize callback code that applied encoder settings
to the new apply_encoder_settings callback
2015-02-10 19:27:37 -08:00
jp9000
4eacb5f3e9 libobs: Add API to apply service encoder settings
Instead of having services automatically apply encoder settings on
initialization (whether the output wants to or not), instead make it
something that must be explicitly called by the developer.  There are
cases where the developer may not wish to apply the service-specific
settings, or may wish to override them for whatever reason.
2015-02-10 19:23:36 -08:00
jp9000
fe849ec482 libobs: Update to 0.8.1 2015-02-09 19:32:40 -08:00
jp9000
ac72e0392d Revert "obs-outputs: Update to latest librtmp version"
This reverts commit 36666c6712040fa6e259eaaafea25e3093724da0.
2015-02-09 19:30:11 -08:00
Jim
778dd44258 Merge pull request #359 from dodgepong/latest-crowdin-translations
Update Ubuntu ffmpeg PPA in INSTALL file
2015-02-09 19:08:43 -08:00
dodgepong
8265c2eadd Update Ubuntu ffmpeg PPA in INSTALL file 2015-02-09 22:04:53 -05:00
Jim
1819de0431 Merge pull request #358 from dodgepong/latest-crowdin-translations
Add latest translations from CrowdIn
2015-02-09 17:03:20 -08:00
dodgepong
eb918d01b4 Add latest translations from CrowdIn 2015-02-09 19:26:17 -05:00
jp9000
268f8daf2e libobs: Update version to 0.8.0 2015-02-09 16:25:59 -08:00
Jimmy Berry
6158a7418e Allow OBS_VERSION_OVERRIDE to assist in packaging.
If OBS_VERSION_OVERRIDE is set, it will set the main OBS_VERSION
variable to its value.

(modified by Jim)
2015-02-09 08:32:01 -08:00
Bl00drav3n
74042fff96 win-capture: Implement D3D8 game capture support 2015-02-09 05:02:48 -08:00
jp9000
bc57e5b2c2 win-dshow: Update libdshowcapture to 0.4.3 2015-02-09 03:56:14 -08:00
jp9000
fb414e8988 win/test: Fix string format specifier
bnum_allocs returns a long (%ld), not an unsigned long long (%llu).
2015-02-09 03:56:14 -08:00
jp9000
4ba293a6d9 text-freetype2: Fix wrong parameter type
These functions expect char*, where as the string is stored as a
unsigned char* (FT_Byte*).
2015-02-09 03:56:13 -08:00