775 Commits

Author SHA1 Message Date
jp9000
8bc2288dfe mac-capture: Separate audio shudown code
This allows the code to be used elsewhere as needed.
2015-02-20 21:49:51 -08:00
jp9000
c69b70b847 obs-outputs: Fix bug (RTMP only working once)
This was caused to do the new RTMP code that added support for multiple
streams; the stream index needs to be reset on RTMP_Close otherwise it
will keep using the wrong stream information.
2015-02-17 20:38:23 -08:00
jp9000
d3c8f81cc2 obs-outputs: Fix potential RTMP auth issue 2015-02-17 17:23:32 -08:00
jp9000
8e9924d6a1 win-dshow: Do not update encoders if active
Do not update the avermedia encoders if they are already active, they
weren't designed to be updated in real time, so it will cause encoding
to break.
2015-02-14 15:04:11 -08:00
Martell Malone
f079bc9f7f win-dshow: Reorder CapsMatch for gcc 2015-02-14 19:14:27 +00: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
Bl00drav3n
1f9f50c800 Fixed a bug in color conversion code for 16bit textures. 2015-02-14 01:08:38 +01: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
dodgepong
187f5181c7 Add latest translations from crowdin 2015-02-11 16:27:24 -05: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
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
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
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
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
ac72e0392d Revert "obs-outputs: Update to latest librtmp version"
This reverts commit 36666c6712040fa6e259eaaafea25e3093724da0.
2015-02-09 19:30:11 -08:00
dodgepong
eb918d01b4 Add latest translations from CrowdIn 2015-02-09 19:26:17 -05: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
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
jp9000
8943ccc1d6 win-dshow: Use member initialization
Instead of using initializer list to set variables to null/false, use
C++11 member initialization
2015-02-09 03:56:07 -08:00
jp9000
02065f10af win-dshow: Remove deprecated FFmpeg functions 2015-02-09 03:56:07 -08:00
jp9000
731930af50 win-capture: Fix parameter type warning
Parameter expects uint8_t*, was using char*, so just cast to fix it.
2015-02-09 03:56:06 -08:00
jp9000
883d93e84c win-dshow: Remove unnecessarily inline define
This is already defined when including libobs headers
2015-02-09 03:55:31 -08:00
jp9000
372a23de68 win-capture: Use inline define with VC only
mingw already supports the regular inline keyword in C; VC does not.
2015-02-09 03:55:17 -08:00
jp9000
12a000cae5 win-capture: Refactor inline functions
Apparently someone dumb (aka me) neglected to properly handle the inline
graphics hook API functions.  You're not supposed to 'extern' inline
functions, they need to be defined for each file when ever they're used.
2015-02-09 03:51:08 -08:00
jp9000
91b33908d9 win-capture: Remove unused static variables 2015-02-09 03:50:50 -08:00
jp9000
fce3cf6bdb win-capture: static keyword comes before const 2015-02-09 03:49:48 -08:00
jp9000
f8c7df2616 win-capture: Fix bug initializing via d3d9 swap
Apparently neglected to use the reference operator.  I think this may
partially be one of the reasons why many developers still choose to use
pointers instead of references, but fortunately an actual GOOD compiler
warns about this (aka anything but vc)
2015-02-09 03:49:47 -08:00
jp9000
fbf881ecdd win-capture: Fix enum switch warnings
The enum switch warning is used to signify when you are missing
enum values.
2015-02-09 03:49:46 -08:00
jp9000
253989bd72 win-capture: Mark unused parameters 2015-02-09 03:49:45 -08:00
jp9000
04c54162b2 win-capture: Fix ptr -> int cast warnings (mingw) 2015-02-09 03:49:44 -08:00
jp9000
2301a6f578 win-capture: Clarify if statement via inline func
Clears up a warning (to prevent && and || confusion), and clarifies what
specifically the if statement is trying to accomplish (check to see if
the capture is valid)
2015-02-09 03:49:43 -08:00
jp9000
e2ee8adf77 win-capture: Fix potentially uninitialized vars 2015-02-09 03:49:20 -08:00
jp9000
aa3bdd9845 win-capture: Fix incorrect parameter type warning
Was using const char** when the parameter expects const uint8_t**
2015-02-09 03:49:19 -08:00
jp9000
6b38fa35b0 Use _MSC_VER for MSVC-specific pragmas
These aren't used on mingw so they need to be surrounded by #ifdef
_MSC_VER
2015-02-09 03:49:18 -08:00
jp9000
73d3be9311 obs-outputs: Use INVALID_SOCKET instead of -1
On windows, for whatever reason sockets use the SOCKET type which is not
a signed integer.  Still, even though it's not a signed integer, -1 is
used to indicate an invalid socket, but the way you use it is via
microsoft's fabulously dumb little INVALID_SOCKET define, so we have to
make librtmp use that instead.
2015-02-09 03:49:17 -08:00
jp9000
5dfecab15c Fix windows printf format warnings (from mingw) 2015-02-09 03:49:14 -08:00
jp9000
0c1d121ff2 Remove various unused variables
Unused variables detected by mingw
2015-02-09 03:49:13 -08:00
martell
a83e74dc1c Disable SEH for mingw-w64
The SEH implementation is not quite working properly in mingw-w64, so
disable it for the time being.
2015-02-09 03:47:27 -08:00
martell
97cc9b610a win-capture: on mingw-w64 support try and catch 2015-02-09 03:41:56 -08:00
martell
c5478f52d9 win-capture: explicitly cast function pointers
This solves invalid conversions when building with gcc
2015-02-09 03:41:55 -08:00
martell
1e056fd7ec win-capture: deal with a 32bit handle cast errors
The HWND type is a void pointer, but HWND values are global and always
32bit despite, so casting to 32bit can cause cast warnings on actual
good compilers like gcc via mingw.  This change correctly handles the
casting to 32bits without producing unwanted warnings or errors on
mingw.
2015-02-09 03:41:54 -08:00
martell
c5fa22ae93 win-capture: avoid multiple definitions of data
At link time unless they are defined static they will conflict
2015-02-09 03:41:54 -08:00